@syncfusion/ej2-dropdowns 24.2.8 → 24.2.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +8 -0
- package/dist/ej2-dropdowns.min.js +2 -2
- package/dist/ej2-dropdowns.umd.min.js +2 -2
- package/dist/ej2-dropdowns.umd.min.js.map +1 -1
- package/dist/es6/ej2-dropdowns.es2015.js +66 -28
- package/dist/es6/ej2-dropdowns.es2015.js.map +1 -1
- package/dist/es6/ej2-dropdowns.es5.js +67 -28
- package/dist/es6/ej2-dropdowns.es5.js.map +1 -1
- package/dist/global/ej2-dropdowns.min.js +2 -2
- package/dist/global/ej2-dropdowns.min.js.map +1 -1
- package/dist/global/index.d.ts +1 -1
- package/package.json +7 -7
- package/src/combo-box/combo-box-model.d.ts +1 -1
- package/src/combo-box/combo-box.js +29 -2
- package/src/drop-down-base/drop-down-base.d.ts +1 -0
- package/src/drop-down-base/drop-down-base.js +1 -1
- package/src/drop-down-list/drop-down-list.d.ts +0 -1
- package/src/drop-down-list/drop-down-list.js +33 -24
- package/src/mention/mention.js +5 -1
- package/styles/bootstrap-dark.css +1 -1
- package/styles/bootstrap.css +1 -1
- package/styles/bootstrap4.css +1 -1
- package/styles/bootstrap5-dark.css +1 -1
- package/styles/bootstrap5.css +1 -1
- package/styles/drop-down-list/_layout.scss +1 -1
- package/styles/drop-down-list/bootstrap-dark.css +1 -1
- package/styles/drop-down-list/bootstrap.css +1 -1
- package/styles/drop-down-list/bootstrap4.css +1 -1
- package/styles/drop-down-list/bootstrap5-dark.css +1 -1
- package/styles/drop-down-list/bootstrap5.css +1 -1
- package/styles/drop-down-list/fabric-dark.css +1 -1
- package/styles/drop-down-list/fabric.css +1 -1
- package/styles/drop-down-list/fluent-dark.css +1 -1
- package/styles/drop-down-list/fluent.css +1 -1
- package/styles/drop-down-list/highcontrast-light.css +1 -1
- package/styles/drop-down-list/highcontrast.css +1 -1
- package/styles/drop-down-list/material-dark.css +1 -1
- package/styles/drop-down-list/material.css +1 -1
- package/styles/drop-down-list/material3-dark.css +1 -1
- package/styles/drop-down-list/material3.css +1 -1
- package/styles/drop-down-list/tailwind-dark.css +1 -1
- package/styles/drop-down-list/tailwind.css +1 -1
- package/styles/fabric-dark.css +1 -1
- package/styles/fabric.css +1 -1
- package/styles/fluent-dark.css +1 -1
- package/styles/fluent.css +1 -1
- package/styles/highcontrast-light.css +1 -1
- package/styles/highcontrast.css +1 -1
- package/styles/material-dark.css +1 -1
- package/styles/material.css +1 -1
- package/styles/material3-dark.css +1 -1
- package/styles/material3.css +1 -1
- package/styles/tailwind-dark.css +1 -1
- package/styles/tailwind.css +1 -1
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* filename: ej2-dropdowns.min.js
|
|
3
|
-
* version : 24.2.
|
|
3
|
+
* version : 24.2.9
|
|
4
4
|
* Copyright Syncfusion Inc. 2001 - 2023. All rights reserved.
|
|
5
5
|
* Use of this code is subject to the terms of our license.
|
|
6
6
|
* A copy of the current license can be obtained at any time by e-mailing
|
|
7
7
|
* licensing@syncfusion.com. Any infringement will be prosecuted under
|
|
8
8
|
* applicable laws.
|
|
9
9
|
*/
|
|
10
|
-
this.ej=this.ej||{},this.ej.dropdowns=function(e,t,i,s,l,n,o,r,a){"use strict";function h(e,t,i,s,l,n,o,r,a){n&&""!==x?x==I&&(w=String.fromCharCode(e)):""!=w?(x=w+String.fromCharCode(e),w=""):x+=String.fromCharCode(e),r?(setTimeout(function(){w=""},700),setTimeout(function(){x=""},3e3)):setTimeout(function(){x=""},1e3);var h;if(x=s?x.toLowerCase():x,k!==l||I!==x||a){var p=t,u=x.length,d=void 0,c=i=i?i+1:0;O=[];do{c===p.length&&(c=-1),d=p[h=-1===c?0:c],(s?d.innerText.toLowerCase():d.innerText).substr(0,u)===x&&O.push(p[h]),c++}while(c!==i);if(I=x,k=l,r){for(var m=!1,f=0;f<O.length;f++)if(o&&O[f].textContent.toLowerCase()===o.toLowerCase()){h=f,m=!0;break}return o&&m&&(h+=1),O[h]?O[h]:O[0]}return O[0]}for(c=0;c<O.length;c++){if(O[c].classList.contains(A)){h=c;break}if(o&&O[c].textContent.toLowerCase()===o.toLowerCase()){h=c;break}}return h+=1,r?O[h]&&O.length-1!=h?O[h]:O[O.length]:O[h]?O[h]:O[0]}function p(e,t,i,s,l,n,o){var r=t;s=void 0===s||null===s||s;var a={item:null,index:null};if(e&&e.length){var h=e.length,p=s?e.toLocaleLowerCase():e;p=u(p);for(var d=0,c=r;d<c.length;d++){var m=function(e,r){var u,d=r[e],c=void 0;if(t&&l){var m=d,f=n.text.split(".");l.filter(function(e){Array.prototype.slice.call(f).forEach(function(t){("object"===o&&!e.isHeader&&-1!==m.textContent.toString().indexOf(e[t])&&m.getAttribute("data-value")===e[n.value].toString()||"string"===o&&-1!==m.textContent.toString().indexOf(e))&&(u="object"===o?e[t]:e)})})}if(c=l&&u?(s?u.toString().toLocaleLowerCase():u).replace(/^\s+|\s+$/g,""):(s?d.textContent.toLocaleLowerCase():d.textContent).replace(/^\s+|\s+$/g,""),"Equal"===i&&c===p||"StartsWith"===i&&c.substr(0,h)===p||"EndsWith"===i&&c.substr(c.length-p.length)===p||"Contains"===i&&new RegExp(p,"g").test(c))return a.item=d,a.index=e,{value:{item:d,index:e}}}(d,c);if("object"==typeof m)return m.value}return a}return a}function u(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function d(e){k===e&&(k="",I="",x="",O=[])}function c(e,t,i,s){if(""!==t){var l=i?"gim":"gm";t=/^[a-zA-Z0-9- ]*$/.test(t)?t:t.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&");var n="StartsWith"===s?"^("+t+")":"EndsWith"===s?"("+t+")$":"("+t+")";m(e,new RegExp(n,l))}}function m(e,t){for(var i=0;e.childNodes&&i<e.childNodes.length;i++){if(3===e.childNodes[i].nodeType&&""!==e.childNodes[i].textContent.trim()){var s=e.childNodes[i].nodeValue.trim().replace(t,'<span class="e-highlight">$1</span>');e.childNodes[i].nodeValue="",e.innerHTML=e.innerHTML.trim()+s;break}m(e.childNodes[i],t)}}function f(e){for(var t=e.querySelectorAll(".e-highlight"),i=t.length-1;i>=0;i--){var s=t[i].parentNode,l=document.createTextNode(t[i].textContent);s.replaceChild(l,t[i])}}function v(e,i,s,l,n,o,r){var a=t.createElement("span",{className:he}),h=t.createElement("label",{className:pe}),p=s.getAttribute("id")?s.getAttribute("id"):t.getUniqueID("ej2_multiselect");s.id=p,t.isNullOrUndefined(s.id)||""===s.id||(h.id="label_"+s.id.replace(/ /g,"_"),t.attributes(l,{"aria-labelledby":h.id})),t.isNullOrUndefined(l.placeholder)||""===l.placeholder||(h.innerText=S(l.placeholder),l.removeAttribute("placeholder")),h.innerText=S(r),i.appendChild(a),i.appendChild(h),e.classList.add("e-float-input"),g(n,h),"Always"===o&&(h.classList.contains(de)&&t.removeClass([h],de),t.addClass([h],ue))}function g(e,i){e&&e.length>0?(t.addClass([i],ue),t.removeClass([i],de)):(t.removeClass([i],ue),t.addClass([i],de))}function y(e,i,s,l,n,o,r){var a,h=i.querySelector("."+pe),p=i.querySelector("."+he);t.isNullOrUndefined(h)?C(n,l,a=null!==r?r:""):(a=h.innerText,t.detach(s.querySelector("."+pe)),C(n,l,a),t.isNullOrUndefined(p)||t.detach(s.querySelector("."+he))),e.classList.remove("e-float-input")}function C(e,t,i){e&&e.length?t.placeholder="":t.placeholder=i}function b(e,i){e.classList.add("e-input-focus");var s=i.querySelector("."+pe);t.isNullOrUndefined(s)||(t.addClass([s],ue),s.classList.contains(de)&&t.removeClass([s],de))}function E(e,i,s,l,n){e.classList.remove("e-input-focus");var o=i.querySelector("."+pe);s&&s.length<=0&&"Auto"===l&&!t.isNullOrUndefined(o)&&(o.classList.contains(ue)&&t.removeClass([o],ue),t.addClass([o],de))}function S(e){var i="";if(!t.isNullOrUndefined(e)&&""!==e){var s=document.createElement("span");s.innerHTML='<input placeholder="'+e+'"/>',i=s.children[0].placeholder}return i}var x="",I="",w="",O=[],A="e-active",k="",D=function(){return(D=Object.assign||function(e){for(var t,i=1,s=arguments.length;i<s;i++){t=arguments[i];for(var l in t)Object.prototype.hasOwnProperty.call(t,l)&&(e[l]=t[l])}return e}).apply(this,arguments)},N=function(e,t,i,s){return new(i||(i=Promise))(function(l,n){function o(e){try{a(s.next(e))}catch(e){n(e)}}function r(e){try{a(s.throw(e))}catch(e){n(e)}}function a(e){e.done?l(e.value):new i(function(t){t(e.value)}).then(o,r)}a((s=s.apply(e,t||[])).next())})},L=function(e,t){function i(e){return function(t){return s([e,t])}}function s(i){if(l)throw new TypeError("Generator is already executing.");for(;a;)try{if(l=1,n&&(o=2&i[0]?n.return:i[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,i[1])).done)return o;switch(n=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,n=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(o=a.trys,!(o=o.length>0&&o[o.length-1])&&(6===i[0]||2===i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(6===i[0]&&a.label<o[1]){a.label=o[1],o=i;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(i);break}o[2]&&a.ops.pop(),a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e],n=0}finally{l=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}var l,n,o,r,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r},T=function(){function e(e){var t=this;this.sentinelInfo={up:{check:function(e,i){var s=e.top-t.containerElementRect.top;return i.entered=s>=0,s+t.parent.listItemHeight*t.parent.virtualItemCount/2>=0},axis:"Y"},down:{check:function(e,i){t.parent.popupContentElement.clientHeight;var s=e.bottom;return i.entered=e.bottom<=t.containerElementRect.bottom,s-t.parent.listItemHeight*t.parent.virtualItemCount/2<=t.parent.listItemHeight*t.parent.virtualItemCount/2},axis:"Y"}},this.parent=e,this.removeEventListener(),this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.isDestroyed||(this.parent.on("observe",this.observe,this),this.parent.on("setGeneratedData",this.setGeneratedData,this),this.parent.on("dataProcessAsync",this.dataProcessAsync,this),this.parent.on("setCurrentViewDataAsync",this.setCurrentViewDataAsync,this),this.parent.on("bindScrollEvent",this.bindScrollEvent,this))},e.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off("observe",this.observe),this.parent.off("setGeneratedData",this.setGeneratedData),this.parent.off("dataProcessAsync",this.dataProcessAsync),this.parent.off("setCurrentViewDataAsync",this.setCurrentViewDataAsync),this.parent.off("bindScrollEvent",this.bindScrollEvent))},e.prototype.bindScrollEvent=function(e){var t=this;this.component=e.component,this.observe(function(e){return t.scrollListener(e)})},e.prototype.observe=function(e){this.containerElementRect=this.parent.popupContentElement.getBoundingClientRect(),t.EventHandler.add(this.parent.popupContentElement,"wheel mousedown",this.popupScrollHandler,this),this.touchModule=new t.Touch(this.parent.popupContentElement,{scroll:this.popupScrollHandler.bind(this)}),t.EventHandler.add(this.parent.popupContentElement,"scroll",this.virtualScrollHandler(e),this)},e.prototype.getModuleName=function(){return"VirtualScroll"},e.prototype.popupScrollHandler=function(e){this.parent.isMouseScrollAction=!0,this.parent.isPreventScrollAction=!1},e.prototype.getPageQuery=function(e,t,i){return 0===i||this.parent.allowFiltering||"autocomplete"===this.component||(e=e.skip(t)),e},e.prototype.setGeneratedData=function(e,t){for(var i=0,s=this.parent.listData.length+this.parent.virtualItemStartIndex,l=this.parent.virtualItemStartIndex;l<s;l++){if(!this.parent.generatedDataObject[l]&&null!==t&&this.parent.listData.slice(i,i+1).length>0){var n=this.parent.listData.slice(i,i+1);n.length>0&&(this.parent.generatedDataObject[l]=n)}i++}},e.prototype.generateAndExecuteQueryAsync=function(e,s,l,n){void 0===s&&(s=0),void 0===l&&(l=0),void 0===n&&(n=!1);var o=this.parent.dataSource;if(!n)if(t.isNullOrUndefined(this.parent.query))e=this.getPageQuery(e,s,l);else{var r=this.removeSkipAndTakeEvents(this.parent.query.clone());e=this.getPageQuery(r,s,l)}var a=this.parent.isCustomFilter;if("combobox"===this.component){var h=0;this.parent.dataSource instanceof i.DataManager?h=this.parent.dataSource.dataSource.json.length:this.parent.dataSource&&this.parent.dataSource.length>0&&(h=this.parent.dataSource.length),h>0&&(this.parent.isCustomFilter=h==this.parent.totalItemCount&&this.parent.queryString!=this.parent.typedString||this.parent.isCustomFilter)}this.parent.resetList(o,this.parent.fields,e),this.parent.isCustomFilter=a},e.prototype.removeSkipAndTakeEvents=function(e){return e.queries=e.queries.filter(function(e){return"onSkip"!==e.fn&&"onTake"!==e.fn}),e},e.prototype.setCurrentViewDataAsync=function(){for(var e=[],t=this.parent.viewPortInfo.startIndex;t<this.parent.viewPortInfo.endIndex;t++){var i=this.parent.generatedDataObject[t];i&&e.push(i[0])}this.parent.renderItems(e,this.parent.fields);var s=this.parent.list.getElementsByClassName("e-virtual-ddl")[0];s&&(s.style=this.parent.GetVirtualTrackHeight()),this.parent.UpdateSkeleton(),this.parent.liCollections=this.parent.list.querySelectorAll(".e-list-item");var l=this.parent.list.getElementsByClassName("e-virtual-ddl-content")[0];l&&(l.style=this.parent.getTransformValues()),this.parent.fields.groupBy&&this.parent.scrollStop()},e.prototype.generateQueryAndSetQueryIndexAsync=function(e,t){var i=!1,s=0,l=0,n=this.parent&&0!==this.parent.viewPortInfo.endIndex?this.parent.viewPortInfo.endIndex:0+this.parent.getItems().length;if(!t&&0!==n)for(var o=this.parent.viewPortInfo.startIndex;o<=n;o++)o in this.parent.generatedDataObject||(i?l=o===n?o:o+1:(i=!0,s=l=o));!i||this.parent.totalItemCount==s&&this.parent.totalItemCount==l||(this.parent.virtualItemStartIndex=s,this.parent.virtualItemEndIndex=l,this.generateAndExecuteQueryAsync(e,s,l)),this.setCurrentViewDataAsync()},e.prototype.dataProcessAsync=function(e){this.parent.selectedValueInfo=null,this.parent.virtualItemStartIndex=this.parent.viewPortInfo.startIndex,this.parent.virtualItemEndIndex=this.parent.viewPortInfo.endIndex,this.generateQueryAndSetQueryIndexAsync(new i.Query,e)},e.prototype.virtualScrollRefreshAsync=function(){return N(this,void 0,void 0,function(){return L(this,function(e){switch(e.label){case 0:return this.parent.isCustomFilter=!(this.parent.isTyped||"combobox"===this.component&&this.parent.allowFiltering&&this.parent.queryString!=this.parent.typedString||!t.isNullOrUndefined(this.parent.filterInput)&&!t.isNullOrUndefined(this.parent.filterInput.value)&&""!==this.parent.filterInput.value&&"combobox"!==this.component)&&!("autocomplete"===this.component&&null!=this.parent.value)||this.parent.isCustomFilter,(this.parent.allowFiltering||"autocomplete"===this.component)&&(t.isNullOrUndefined(this.parent.typedString)||"combobox"===this.component&&!t.isNullOrUndefined(this.parent.typedString)&&this.parent.allowFiltering?(this.parent.getSkeletonCount(!0),"combobox"===this.component&&(this.parent.skeletonCount=0!=this.parent.totalItemCount&&this.parent.totalItemCount<2*this.parent.itemCount?0:this.parent.skeletonCount)):(this.parent.viewPortInfo.endIndex>=this.parent.dataCount&&(this.parent.viewPortInfo.endIndex=this.parent.dataCount),this.parent.viewPortInfo.startIndex>=this.parent.dataCount&&(this.parent.viewPortInfo.startIndex=this.parent.dataCount-this.parent.itemCount))),[4,this.dataProcessAsync()];case 1:return e.sent(),null!=this.parent.keyboardEvent&&this.parent.handleVirtualKeyboardActions(this.parent.keyboardEvent,this.parent.pageCount),this.parent.isCustomFilter=!1,[2]}})})},e.prototype.scrollListener=function(e){var i=this;if(!this.parent.isPreventScrollAction){var s=e.sentinel,l=this.parent.previousStartIndex;if(this.parent.viewPortInfo=this.getInfoFromView(e.direction,s,e.offset,!1),this.parent.isUpwardScrolling=!1,this.parent.previousStartIndex===l||this.parent.isKeyBoardAction){if(this.parent.isScrollActionTriggered){this.parent.isPreventKeyAction=!1,this.parent.isScrollActionTriggered=!1;var n=this.parent.list.querySelectorAll(".e-virtual-list").length,o=this.parent.list.querySelector(".e-list-item"),r=e.offset.top-o.offsetHeight*n;this.parent.list.getElementsByClassName("e-virtual-ddl-content")[0].style.transform="translate(0px,"+r+"px)"}}else this.parent.isScrollActionTriggered=!1,this.parent.currentPageNumber=this.parent.viewPortInfo.currentPageNumber,this.parent.virtualListInfo=D({},this.parent.viewPortInfo),this.parent.isPreventKeyAction=!0,this.parent.isVirtualScrolling=!0,setTimeout(function(){i.parent.pageCount=i.parent.getPageCount(),i.virtualScrollRefreshAsync().then(function(){i.parent.popupObj&&(i.parent.list=i.parent.popupObj.element.querySelector(".e-content")||t.select(".e-content"),i.parent.updateSelectionList(),i.parent.liCollections=i.parent.getItems()),i.parent.isKeyBoardAction=!1,i.parent.isVirtualScrolling=!1,i.parent.isPreventKeyAction=!1})},5);this.parent.previousInfo=this.parent.viewPortInfo}},e.prototype.getPageCount=function(e,t){void 0===t&&(t=!1);var i=e&&e.querySelector(".e-content");if(i){var s=i.classList.contains("e-nodata")?null:getComputedStyle(i.querySelectorAll(".e-list-item")[0],null).getPropertyValue("height"),l=i.getBoundingClientRect().height/parseInt(s,10);return t?l:Math.round(l)}return 0},e.prototype.getRowHeight=function(){return t.isNullOrUndefined(this.parent.liCollections)||0==this.parent.liCollections.length?0:Math.ceil(this.parent.liCollections[0].getBoundingClientRect().height)},e.prototype.getInfoFromView=function(e,i,s,l){var n={direction:e,sentinelInfo:i,offsets:s,startIndex:this.parent.previousStartIndex,endIndex:this.parent.previousEndIndex},o=this.parent.popupContentElement.getBoundingClientRect().height,r=this.parent.listItemHeight,a=s.top/r,h=o/r,p=a+h,u=this.parent.virtualItemCount/4,d=this.parent.totalItemCount;if("down"===n.direction){f=Math.round(p)-Math.round(u);if(t.isNullOrUndefined(n.startIndex)||p>n.startIndex+Math.round(this.parent.virtualItemCount/2+u)&&n.endIndex!==d){n.startIndex=f>=0?Math.round(f):0,n.startIndex=n.startIndex>a?Math.floor(a):n.startIndex;m=n.startIndex+this.parent.virtualItemCount;n.startIndex=m<p?Math.ceil(p)-this.parent.virtualItemCount:n.startIndex,n.endIndex=m<d?m:d,n.startIndex=m>=d?n.endIndex-this.parent.virtualItemCount>0?n.endIndex-this.parent.virtualItemCount:0:n.startIndex,n.currentPageNumber=Math.ceil(n.endIndex/this.parent.virtualItemCount)}}else if("up"===n.direction&&n.startIndex&&n.endIndex&&a<Math.round((n.startIndex*r+u*r)/r)){var c=u>h?u:h+h/4,m=Math.round(a+c);n.endIndex=m<d?m:d;var f=n.endIndex-this.parent.virtualItemCount;n.startIndex=f>0?f:0,n.endIndex=f<0?this.parent.virtualItemCount:n.endIndex,n.currentPageNumber=Math.ceil(n.startIndex/this.parent.virtualItemCount)}return l?this.parent.scrollPreStartIndex=n.startIndex:(this.parent.previousStartIndex=n.startIndex,this.parent.startIndex=n.startIndex,this.parent.previousEndIndex=n.endIndex),n},e.prototype.virtualScrollHandler=function(e){var i=this,s="chrome"===t.Browser.info.name?200:100,l=0,n=t.debounce(e,s),o=t.debounce(e,50);return function(e){var t=e.target.scrollTop,s=e.target.scrollLeft,r=l<t&&!i.parent.isUpwardScrolling?"down":"up";l=t;var a=i.sentinelInfo[r],h=i.parent.scrollPreStartIndex,p={top:t,left:s};if(i.parent.list.querySelectorAll(".e-virtual-list").length>0){i.getInfoFromView(r,a,p,!0);i.parent.scrollPreStartIndex==h||i.parent.isPreventScrollAction||(i.parent.isScrollActionTriggered=!0,i.parent.list.querySelector(".e-virtual-ddl-content").style.transform="translate(0px,"+t+"px)")}var u=n;"X"===a.axis&&(u=o),u({direction:r,sentinel:a,offset:{top:t,left:s},focusElement:document.activeElement})}},e.prototype.destroy=function(){this.removeEventListener()},e}(),B=function(){var e=function(t,i){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)t.hasOwnProperty(i)&&(e[i]=t[i])})(t,i)};return function(t,i){function s(){this.constructor=t}e(t,i),t.prototype=null===i?Object.create(i):(s.prototype=i.prototype,new s)}}(),P=function(e,t,i,s){var l,n=arguments.length,o=n<3?t:null===s?s=Object.getOwnPropertyDescriptor(t,i):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(e,t,i,s);else for(var r=e.length-1;r>=0;r--)(l=e[r])&&(o=(n<3?l(o):n>3?l(t,i,o):l(t,i))||o);return n>3&&o&&Object.defineProperty(t,i,o),o},V=function(e){function i(){return null!==e&&e.apply(this,arguments)||this}return B(i,e),P([t.Property()],i.prototype,"text",void 0),P([t.Property()],i.prototype,"value",void 0),P([t.Property()],i.prototype,"iconCss",void 0),P([t.Property()],i.prototype,"groupBy",void 0),P([t.Property()],i.prototype,"htmlAttributes",void 0),i}(t.ChildProperty),U={root:"e-dropdownbase",rtl:"e-rtl",content:"e-content",selected:"e-active",hover:"e-hover",noData:"e-nodata",fixedHead:"e-fixed-head",focus:"e-item-focus",li:"e-list-item",group:"e-list-group-item",disabled:"e-disabled",grouping:"e-dd-group"},F=function(e){function l(t,i){var s=e.call(this,t,i)||this;return s.preventChange=!1,s.isAngular=!1,s.isPreventChange=!1,s.isDynamicDataChange=!1,s.addedNewItem=!1,s.isAddNewItemTemplate=!1,s.isRequesting=!1,s.isVirtualizationEnabled=!1,s.isAllowFiltering=!1,s.virtualizedItemsCount=0,s.totalItemCount=0,s.dataCount=0,s.isRemoteDataUpdated=!1,s.isIncrementalRequest=!1,s.itemCount=10,s}return B(l,e),l.prototype.getPropObject=function(e,t,i){var s=new Object,l=new Object,n=function(e){return e};s[n(e)]=t[n(e)],l[n(e)]=i[n(e)];var o=new Object;return o.newProperty=s,o.oldProperty=l,o},l.prototype.getValueByText=function(e,i,s){var l=null;return t.isNullOrUndefined(this.listData)||(l=i?this.checkValueCase(e,!0,s):this.checkValueCase(e,!1,s)),l},l.prototype.checkValueCase=function(e,i,s,l){var n=this,o=null;l&&(o=e);var r=this.listData,a=this.fields,h=this.typeOfData(r).typeof;if("string"===h||"number"===h||"boolean"===h)for(var p=0,u=r;p<u.length;p++){var d=u[p];t.isNullOrUndefined(d)||(s?o=this.checkingAccent(String(d),e,i):i?this.checkIgnoreCase(String(d),e)&&(o=this.getItemValue(String(d),e,i)):this.checkNonIgnoreCase(String(d),e)&&(o=this.getItemValue(String(d),e,i,l)))}else if(i)r.filter(function(i){var s=t.getValue(a.value,i);!t.isNullOrUndefined(s)&&n.checkIgnoreCase(t.getValue(a.text,i).toString(),e)&&(o=t.getValue(a.value,i))});else if(l){var c=null;c=o,r.filter(function(e){var i=t.getValue(a.value,e);t.isNullOrUndefined(i)||t.isNullOrUndefined(o)||i.toString()!==c.toString()||(o=t.getValue(a.text,e))})}else r.filter(function(i){n.checkNonIgnoreCase(t.getValue(a.text,i),e)&&(o=t.getValue(a.value,i))});return o},l.prototype.checkingAccent=function(e,t,s){var l=i.DataUtil.ignoreDiacritics(String(e)),n=i.DataUtil.ignoreDiacritics(t.toString()),o=null;return s?this.checkIgnoreCase(l,n)&&(o=this.getItemValue(String(e),t,s)):this.checkNonIgnoreCase(String(e),t)&&(o=this.getItemValue(String(e),t,s)),o},l.prototype.checkIgnoreCase=function(e,t){return String(e).toLowerCase()===t.toString().toLowerCase()},l.prototype.checkNonIgnoreCase=function(e,t){return String(e)===t.toString()},l.prototype.getItemValue=function(e,t,i,s){var l=this.listData,n=this.typeOfData(l).typeof;return s?e.toString():i?"string"===n?String(e):this.getFormattedValue(String(e)):"string"===n?t:this.getFormattedValue(t)},l.prototype.templateCompiler=function(e){var i=!1;if("function"!=typeof e&&e)try{i=!!t.selectAll(e,document).length}catch(e){i=!1}return i},l.prototype.l10nUpdate=function(e){var i="listbox"===this.getModuleName()?this.ulElement:this.list;if("No records found"!==this.noRecordsTemplate||"Request failed"!==this.actionFailureTemplate){var s=e?this.actionFailureTemplate:this.noRecordsTemplate,l=void 0,n=e?this.actionFailureTemplateId:this.noRecordsTemplateId;i.innerHTML="";var o=this.templateCompiler(s);l="function"!=typeof s&&o?t.compile(t.select(s,document).innerHTML.trim()):t.compile(s);var r=e?"actionFailureTemplate":"noRecordsTemplate",a=void 0;if((a=this.isReact&&"function"==typeof s?l({},this,r,n,this.isStringTemplate,null):l({},this,r,n,this.isStringTemplate,null,i))&&a.length>0)for(var h=0;h<a.length;h++)"listbox"===this.getModuleName()&&"noRecordsTemplate"===r?"#text"===a[h].nodeName?((c=this.createElement("li")).textContent=a[h].textContent,c.classList.add("e-list-nrt"),c.setAttribute("role","option"),i.appendChild(c)):(a[h].classList.add("e-list-nr-template"),i.appendChild(a[h])):(a[h]instanceof HTMLElement||a[h]instanceof Text)&&i.appendChild(a[h]);this.renderReactTemplates()}else{var p={noRecordsTemplate:"No records found",actionFailureTemplate:"Request failed"},u=new t.L10n(this.getLocaleName(),{},this.locale);""!==u.getConstant("actionFailureTemplate")||""!==u.getConstant("noRecordsTemplate")?this.l10n=u:this.l10n=new t.L10n("listbox"===this.getModuleName()?"listbox":"mention"===this.getModuleName()?"mention":"dropdowns",p,this.locale);var d=e?this.l10n.getConstant("actionFailureTemplate"):this.l10n.getConstant("noRecordsTemplate");if("listbox"===this.getModuleName()){var c=this.createElement("li");c.textContent=d,i.appendChild(c),c.classList.add("e-list-nrt"),c.setAttribute("role","option")}else t.isNullOrUndefined(i)||(i.innerHTML=d)}},l.prototype.getLocaleName=function(){return"drop-down-base"},l.prototype.getTextByValue=function(e){return this.checkValueCase(e,!1,!1,!0)},l.prototype.getFormattedValue=function(e){if(this.listData&&this.listData.length){var i=void 0;if(i=this.properties.allowCustomValue&&this.properties.value&&this.properties.value instanceof Array&&this.properties.value.length>0?this.typeOfData(this.properties.value):this.typeOfData(this.listData),"number"==typeof t.getValue(this.fields.value?this.fields.value:"value",i.item)||"number"===i.typeof)return parseFloat(e);if("boolean"==typeof t.getValue(this.fields.value?this.fields.value:"value",i.item)||"boolean"===i.typeof)return"true"===e||""+e=="true"}return e},l.prototype.setEnableRtl=function(){t.isNullOrUndefined(this.enableRtlElements)||(this.list&&this.enableRtlElements.push(this.list),this.enableRtl?t.addClass(this.enableRtlElements,U.rtl):t.removeClass(this.enableRtlElements,U.rtl))},l.prototype.initialize=function(e){if(this.bindEvent=!0,this.actionFailureTemplateId=this.element.id+"ActionFailureTemplate","UL"===this.element.tagName){var i=s.ListBase.createJsonFromElement(this.element);this.setProperties({fields:{text:"text",value:"text"}},!0),this.resetList(i,this.fields)}else"SELECT"===this.element.tagName?(this.dataSource instanceof Array?this.dataSource.length>0:!t.isNullOrUndefined(this.dataSource))?this.isDynamicDataChange&&this.setListData(this.dataSource,this.fields,this.query):this.renderItemsBySelect():this.setListData(this.dataSource,this.fields,this.query,e)},l.prototype.getPersistData=function(){return this.addOnPersist([])},l.prototype.updateDataAttribute=function(e){for(var i=["class","style","id","type","aria-expanded","aria-autocomplete","aria-readonly"],s={},l=0;l<this.element.attributes.length;l++)-1!==i.indexOf(this.element.attributes[l].name)||"dropdownlist"===this.getModuleName()&&"readonly"===this.element.attributes[l].name||(s[this.element.attributes[l].name]=this.element.getAttribute(this.element.attributes[l].name));t.extend(s,e,s),this.setProperties({htmlAttributes:s},!0)},l.prototype.renderItemsBySelect=function(){var e=this.element,t={value:"value",text:"text"},i=[],s=e.querySelectorAll("select>optgroup"),l=e.querySelectorAll("select>option");if(this.getJSONfromOption(i,l,t),s.length){for(var n=0;n<s.length;n++){var o=s[n],r={};r[t.text]=o.label,r.isHeader=!0;var a=o.querySelectorAll("option");i.push(r),this.getJSONfromOption(i,a,t)}e.querySelectorAll("select>option")}this.updateFields(t.text,t.value,this.fields.groupBy,this.fields.htmlAttributes,this.fields.iconCss),this.resetList(i,t)},l.prototype.updateFields=function(e,i,s,l,n){var o={fields:{text:e,value:i,groupBy:t.isNullOrUndefined(s)?this.fields&&this.fields.groupBy:s,htmlAttributes:t.isNullOrUndefined(l)?this.fields&&this.fields.htmlAttributes:l,iconCss:t.isNullOrUndefined(n)?this.fields&&this.fields.iconCss:n}};this.setProperties(o,!0)},l.prototype.getJSONfromOption=function(e,i,s){for(var l=0,n=i;l<n.length;l++){var o=n[l],r={};r[s.text]=o.innerText,r[s.value]=t.isNullOrUndefined(o.getAttribute(s.value))?o.innerText:o.getAttribute(s.value),e.push(r)}},l.prototype.preRender=function(){this.scrollTimer=-1,this.enableRtlElements=[],this.isRequested=!1,this.isDataFetched=!1,this.itemTemplateId=this.element.id+"ItemTemplate",this.displayTemplateId=this.element.id+"DisplayTemplate",this.spinnerTemplateId=this.element.id+"SpinnerTemplate",this.valueTemplateId=this.element.id+"ValueTemplate",this.groupTemplateId=this.element.id+"GroupTemplate",this.headerTemplateId=this.element.id+"HeaderTemplate",this.footerTemplateId=this.element.id+"FooterTemplate",this.noRecordsTemplateId=this.element.id+"NoRecordsTemplate"},l.prototype.setListData=function(e,t,s,l){var n=this;t=t||this.fields;var o;this.isActive=!0;var r={cancel:!1,data:e,query:s};this.isPreventChange=!(!this.isAngular||!this.preventChange)||this.isPreventChange,this.isRequesting||this.trigger("actionBegin",r,function(r){if(!r.cancel)if(n.isRequesting=!0,n.showSpinner(),e instanceof i.DataManager&&!n.virtualGroupDataSource){if(n.isRequested=!0,n.isDataFetched)return void n.emptyDataRequest(t);r.data.executeQuery(n.getQuery(r.query)).then(function(e){n.isPreventChange=!(!n.isAngular||!n.preventChange)||n.isPreventChange,n.trigger("actionComplete",e,function(e){if(!n.virtualGroupDataSource&&n.isVirtualizationEnabled){if(n.isRemoteDataUpdated=!0,"combobox"===n.getModuleName()&&n.isAllowFiltering&&n.isVirtualizationEnabled&&e.result&&(e.result=e.result.result),e.result.length>0){var r=e.result;if(!n.isVirtualizationEnabled||!n.fields.groupBy)return n.virtualGroupDataSource=r,n.hideSpinner(),n.isRequested=!1,n.isRequesting=!1,void n.setListData(r,t,s,l);var a=new i.DataManager(r).executeLocal((new i.Query).group(n.fields.groupBy));n.virtualGroupDataSource=a.records}return n.hideSpinner(),n.isRequested=!1,n.isRequesting=!1,void n.updatePopupState()}if(!e.cancel){n.isRequesting=!1;var h=e.result;if(n.isIncrementalRequest)return void(o=n.renderItems(h,t));0===h.length&&(n.isDataFetched=!0),n.dataCount=e.count,n.totalItemCount=e.count,o=n.renderItems(h,t),n.onActionComplete(o,h,e),n.groupTemplate&&n.renderGroupTemplate(o),n.isRequested=!1,n.bindChildItems(h,o,t,e)}})}).catch(function(e){n.isRequested=!1,n.isRequesting=!1,n.onActionFailure(e),n.hideSpinner()})}else{n.isRequesting=!1;var a=void 0;if(n.isVirtualizationEnabled&&!n.virtualGroupDataSource&&n.fields.groupBy){var h=new i.DataManager(n.dataSource).executeLocal((new i.Query).group(n.fields.groupBy));n.virtualGroupDataSource=h.records}var p=n.isVirtualizationEnabled&&n.virtualGroupDataSource?new i.DataManager(n.virtualGroupDataSource):new i.DataManager(r.data);if(a=n.getQuery(r.query).executeLocal(p),n.isVirtualizationEnabled&&"autocomplete"===n.getModuleName()&&0!=a.count&&a.count<2*n.itemCount){var u=n.getQuery(r.query);if(u)for(var d=0;d<u.queries.length;d++)if("onTake"===u.queries[d].fn){u.queries[d].e.nos=a.count,a=u.executeLocal(p);break}}n.dataCount=a.count,n.totalItemCount=a.count;var c={cancel:!1,result:a=n.isVirtualizationEnabled?a.result:a};n.isPreventChange=!(!n.isAngular||!n.preventChange)||n.isPreventChange,n.trigger("actionComplete",c,function(e){if(n.isIncrementalRequest)return void(o=n.renderItems(e.result,t));e.cancel||(o=n.renderItems(e.result,t),n.onActionComplete(o,e.result,l),n.groupTemplate&&n.renderGroupTemplate(o),n.bindChildItems(e.result,o,t),setTimeout(function(){"multiselect"===n.getModuleName()&&null!=n.itemTemplate&&o.childElementCount>0&&(o.children[0].childElementCount>0||n.fields.groupBy&&o.children[1]&&o.children[1].childElementCount>0)&&n.updateDataList()}))})}})},l.prototype.updatePopupState=function(){},l.prototype.updateRemoteData=function(){this.setListData(this.dataSource,this.fields,this.query)},l.prototype.bindChildItems=function(e,i,s,l){var n=this;e.length>=100&&"autocomplete"===this.getModuleName()?setTimeout(function(){var o=n.remainingItems(n.sortedData,s);t.append(o,i),n.liCollections=n.list.querySelectorAll("."+U.li),n.updateListValues(),n.raiseDataBound(e,l)},0):this.raiseDataBound(e,l)},l.prototype.updateListValues=function(){},l.prototype.findListElement=function(e,t,i,s){var l=null;if(e)for(var n=[].slice.call(e.querySelectorAll(t)),o=0;o<n.length;o++)if(n[o].getAttribute(i)===s+""){l=n[o];break}return l},l.prototype.raiseDataBound=function(e,t){this.hideSpinner();var i={items:e,e:t};this.trigger("dataBound",i)},l.prototype.remainingItems=function(e,t){var l=new i.DataManager(e).executeLocal((new i.Query).skip(100));if(this.itemTemplate){var n=this.templateListItem(l,t);return[].slice.call(n.childNodes)}var o=this.typeOfData(l).typeof;return"string"===o||"number"===o||"boolean"===o?s.ListBase.createListItemFromArray(this.createElement,l,!0,this.listOption(l,t),this):s.ListBase.createListItemFromJson(this.createElement,l,this.listOption(l,t),1,!0,this)},l.prototype.emptyDataRequest=function(e){var t=[];this.onActionComplete(this.renderItems(t,e),t),this.isRequested=!1,this.hideSpinner()},l.prototype.showSpinner=function(){},l.prototype.hideSpinner=function(){},l.prototype.onActionFailure=function(e){this.liCollections=[],this.trigger("actionFailure",e),this.l10nUpdate(!0),t.isNullOrUndefined(this.list)||t.addClass([this.list],U.noData)},l.prototype.onActionComplete=function(e,i,s){if(this.listData=i,this.isVirtualizationEnabled&&this.notify("setGeneratedData",{module:"VirtualScroll"}),"listbox"!==this.getModuleName()&&e.setAttribute("tabindex","0"),this.isReact&&this.clearTemplate(["itemTemplate","groupTemplate","actionFailureTemplate","noRecordsTemplate"]),this.isVirtualizationEnabled||(this.fixedHeaderElement=t.isNullOrUndefined(this.fixedHeaderElement)?this.fixedHeaderElement:null),"multiselect"===this.getModuleName()&&this.properties.allowCustomValue&&this.fields.groupBy)for(var l=0;l<e.childElementCount;l++)e.children[l].classList.contains("e-list-group-item")&&(t.isNullOrUndefined(e.children[l].innerHTML)||""==e.children[l].innerHTML)&&t.addClass([e.children[l]],"e-hide-group-header");t.isNullOrUndefined(this.list)||this.isVirtualizationEnabled||(this.list.innerHTML="",this.list.appendChild(e),this.liCollections=this.list.querySelectorAll("."+U.li),this.ulElement=this.list.querySelector("ul"),this.postRender(this.list,i,this.bindEvent))},l.prototype.postRender=function(e,i,s){var l=e.querySelector("."+U.li),n=e.querySelector("."+U.selected);l&&!n&&l.classList.add(U.focus),i.length<=0?(this.l10nUpdate(),t.addClass([e],U.noData)):e.classList.remove(U.noData)},l.prototype.getQuery=function(e){return e||(this.query?this.query:new i.Query)},l.prototype.updateVirtualizationProperties=function(e,t){this.isVirtualizationEnabled=!0,this.virtualizedItemsCount=e,this.isAllowFiltering=t},l.prototype.renderGroupTemplate=function(e){if(null!==this.fields.groupBy&&this.dataSource||this.element.querySelector("."+U.group)){var i=this.dataSource,l={groupTemplateID:this.groupTemplateId,isStringTemplate:this.isStringTemplate},n=e.querySelectorAll("."+U.group),o=this.templateCompiler(this.groupTemplate);if("function"!=typeof this.groupTemplate&&o){var r=t.select(this.groupTemplate,document).innerHTML.trim(),a=s.ListBase.renderGroupTemplate(r,i,this.fields.properties,n,l,this);if(this.isGroupChecking)for(h=0;h<a.length;h++)this.notify("addItem",{module:"CheckBoxSelection",item:a[h]})}else{a=s.ListBase.renderGroupTemplate(this.groupTemplate,i,this.fields.properties,n,l,this);if(this.isGroupChecking)for(var h=0;h<a.length;h++)this.notify("addItem",{module:"CheckBoxSelection",item:a[h]})}this.renderReactTemplates()}},l.prototype.createListItems=function(e,l){if(e){l.groupBy||this.element.querySelector("optgroup")?(l.groupBy&&("None"!==this.sortOrder&&(e=this.getSortedDataSource(e)),e=s.ListBase.groupDataSource(e,l.properties,this.sortOrder)),t.addClass([this.list],U.grouping)):e=this.getSortedDataSource(e);var n=this.listOption(e,l),o=e.length>100?new i.DataManager(e).executeLocal((new i.Query).take(100)):e;return this.sortedData=e,s.ListBase.createList(this.createElement,"autocomplete"===this.getModuleName()?o:e,n,!0,this)}return null},l.prototype.listOption=function(e,i){var s=!t.isNullOrUndefined(i.iconCss),l=t.isNullOrUndefined(i.properties)?i:i.properties,n=null!==i.text||null!==i.value?{fields:l,showIcon:s,ariaAttributes:{groupItemRole:"presentation"}}:{fields:{value:"text"}};return t.extend({},n,i,!0)},l.prototype.setFloatingHeader=function(e){t.isNullOrUndefined(this.list)||this.list.classList.contains(U.noData)||(t.isNullOrUndefined(this.fixedHeaderElement)&&(this.fixedHeaderElement=this.createElement("div",{className:U.fixedHead}),t.isNullOrUndefined(this.list)||this.list.querySelector("li").classList.contains(U.group)||(this.fixedHeaderElement.style.display="none"),t.isNullOrUndefined(this.fixedHeaderElement)||t.isNullOrUndefined(this.list)||t.prepend([this.fixedHeaderElement],this.list),this.setFixedHeader()),t.isNullOrUndefined(this.fixedHeaderElement)||"0"!==this.fixedHeaderElement.style.zIndex||this.setFixedHeader(),this.scrollStop(e))},l.prototype.scrollStop=function(e,i){for(var s=t.isNullOrUndefined(e)?this.list:e.target,l=parseInt(getComputedStyle(this.getValidLi(),null).getPropertyValue("height"),10),n=Math.round(s.scrollTop/l),o=this.list.querySelectorAll("li:not(.e-hide-listitem)"),r=this.list.querySelectorAll(".e-virtual-list").length,a=0,h=!1,p=n;p>-1;p--){var u=this.isVirtualizationEnabled?p+r:p;if(this.isVirtualizationEnabled){var d=this.list.querySelectorAll(".e-list-group-item").length,c=0;if(h&&a++,this.updateGroupHeader(u,o,s)){if(c++,a>=this.getPageCount())break;if(d<=c)break}i&&(!t.isNullOrUndefined(o[u])&&o[u].classList.contains(U.selected)&&"autocomplete"!==this.getModuleName()||!t.isNullOrUndefined(o[u])&&o[u].classList.contains(U.focus)&&"autocomplete"===this.getModuleName())&&(a++,h=!0)}else if(this.updateGroupHeader(u,o,s))break}},l.prototype.getPageCount=function(e){var t=this.list.classList.contains(U.noData)?null:getComputedStyle(this.getItems()[0],null).getPropertyValue("height"),i=Math.round(this.list.getBoundingClientRect().height/parseInt(t,10));return e?i:Math.round(i)},l.prototype.updateGroupHeader=function(e,i,s){return!t.isNullOrUndefined(i[e])&&i[e].classList.contains(U.group)?(this.updateGroupFixedHeader(i[e],s),!0):(this.fixedHeaderElement.style.display="none",this.fixedHeaderElement.style.top="none",!1)},l.prototype.updateGroupFixedHeader=function(e,t){this.fixedHeaderElement.innerHTML=e.innerHTML,this.fixedHeaderElement.style.position="fixed",this.fixedHeaderElement.style.top=this.list.parentElement.offsetTop+this.list.offsetTop+"px",this.fixedHeaderElement.style.display="block"},l.prototype.getValidLi=function(){return this.liCollections[0]},l.prototype.renderItems=function(e,t){var l;if(this.itemTemplate&&e){var n=e;n&&t.groupBy?("None"!==this.sortOrder&&(n=this.getSortedDataSource(n)),n=s.ListBase.groupDataSource(n,t.properties,this.sortOrder)):n=this.getSortedDataSource(n),this.sortedData=n;var o=n.length>100?new i.DataManager(n).executeLocal((new i.Query).take(100)):n;if(l=this.templateListItem("autocomplete"===this.getModuleName()?o:n,t),this.isVirtualizationEnabled){var r=this.list.querySelector(".e-list-parent"),a=this.list.querySelector(".e-virtual-ddl-content");e.length>=this.virtualizedItemsCount&&r&&a||r&&a&&this.isAllowFiltering||r&&a&&"autocomplete"===this.getModuleName()?(a.replaceChild(l,r),this.updateListElements(e)):a||(this.list.innerHTML="",this.createVirtualContent(),this.list.querySelector(".e-virtual-ddl-content").appendChild(l),this.updateListElements(e))}}else{if(l=this.createListItems(e,t),this.isIncrementalRequest)return this.incrementalLiCollections=l.querySelectorAll("."+U.li),this.incrementalUlElement=l,this.incrementalListData=e,l;if(this.isVirtualizationEnabled){var r=this.list.querySelector(".e-list-parent"),a=this.list.querySelector(".e-virtual-ddl-content");e.length>=this.virtualizedItemsCount&&r&&a||r&&a&&this.isAllowFiltering||r&&a&&"autocomplete"===this.getModuleName()?(a.replaceChild(l,r),this.updateListElements(e)):a||(this.list.innerHTML="",this.createVirtualContent(),this.list.querySelector(".e-virtual-ddl-content").appendChild(l),this.updateListElements(e))}}return l},l.prototype.createVirtualContent=function(){this.list.querySelector(".e-virtual-ddl-content")||this.list.appendChild(this.createElement("div",{className:"e-virtual-ddl-content"}))},l.prototype.updateListElements=function(e){this.liCollections=this.list.querySelectorAll("."+U.li),this.ulElement=this.list.querySelector("ul"),this.listData=e,this.postRender(this.list,e,this.bindEvent)},l.prototype.templateListItem=function(e,i){var l=this.listOption(e,i);l.templateID=this.itemTemplateId,l.isStringTemplate=this.isStringTemplate;var n=this.templateCompiler(this.itemTemplate);if("function"!=typeof this.itemTemplate&&n){var o=t.select(this.itemTemplate,document).innerHTML.trim();return s.ListBase.renderContentTemplate(this.createElement,o,e,i.properties,l,this)}return s.ListBase.renderContentTemplate(this.createElement,this.itemTemplate,e,i.properties,l,this)},l.prototype.typeOfData=function(e){for(var i={typeof:null,item:null},s=0;!t.isNullOrUndefined(e)&&s<e.length;s++)if(!t.isNullOrUndefined(e[s])&&!("string"==typeof e[s]||"number"==typeof e[s]||"boolean"==typeof e[s]?t.isNullOrUndefined(e[s]):t.isNullOrUndefined(t.getValue(this.fields.value?this.fields.value:"value",e[s]))))return i={typeof:typeof e[s],item:e[s]};return i},l.prototype.setFixedHeader=function(){t.isNullOrUndefined(this.list)||(this.list.parentElement.style.display="block");var e=0;if(this.list&&this.list.parentElement&&(e=parseInt(document.defaultView.getComputedStyle(this.list.parentElement,null).getPropertyValue("border-width"),10),isNaN(e)&&(e=parseInt(document.defaultView.getComputedStyle(this.list.parentElement,null).getPropertyValue("border-top-width"),10)+parseInt(document.defaultView.getComputedStyle(this.list.parentElement,null).getPropertyValue("border-bottom-width"),10)+parseInt(document.defaultView.getComputedStyle(this.list.parentElement,null).getPropertyValue("border-left-width"),10)+parseInt(document.defaultView.getComputedStyle(this.list.parentElement,null).getPropertyValue("border-right-width"),10))),!t.isNullOrUndefined(this.liCollections)){var i=this.getValidLi().offsetWidth-e;this.fixedHeaderElement.style.width=i.toString()+"px"}t.setStyleAttribute(this.fixedHeaderElement,{zIndex:10});var s=this.ulElement.querySelector("."+U.group+":not(.e-hide-listitem)");this.fixedHeaderElement.innerHTML=s.innerHTML},l.prototype.getSortedDataSource=function(e){if(e&&"None"!==this.sortOrder){var t=this.fields.text?this.fields.text:"text";"string"!==this.typeOfData(e).typeof&&"number"!==this.typeOfData(e).typeof&&"boolean"!==this.typeOfData(e).typeof||(t=""),e=s.ListBase.getDataSource(e,s.ListBase.addSorting(this.sortOrder,t))}return e},l.prototype.getIndexByValue=function(e){for(var i,s=this.getItems(),l=0;l<s.length;l++)if(!t.isNullOrUndefined(e)&&s[l].getAttribute("data-value")===e.toString()){i=l;break}return i},l.prototype.getIndexByValueFilter=function(e){var i,s=this.renderItems(this.selectData,this.fields);if(s&&s.children)for(var l=0;l<s.children.length;l++)if(!t.isNullOrUndefined(e)&&s.children[l].getAttribute("data-value")===e.toString()){i=l;break}return i},l.prototype.dispatchEvent=function(e,t){var i=document.createEvent("HTMLEvents");i.initEvent(t,!1,!0),e&&e.dispatchEvent(i)},l.prototype.setFields=function(){this.fields.value&&!this.fields.text?this.updateFields(this.fields.value,this.fields.value):!this.fields.value&&this.fields.text?this.updateFields(this.fields.text,this.fields.text):this.fields.value||this.fields.text||this.updateFields("text","text")},l.prototype.resetList=function(e,i,s,l){this.list&&(("SELECT"===this.element.tagName&&this.element.options.length>0||"UL"===this.element.tagName&&this.element.childNodes.length>0)&&!(e instanceof Array?e.length>0:!t.isNullOrUndefined(e))&&this.selectData&&this.selectData.length>0&&(e=this.selectData),e="combobox"===this.getModuleName()&&this.selectData&&e instanceof Array&&e.length<this.selectData.length&&this.addedNewItem?this.selectData:e,this.addedNewItem=!1,this.setListData(e,i,s,l))},l.prototype.updateSelectElementData=function(e){(e||this.isVirtualizationEnabled)&&t.isNullOrUndefined(this.selectData)&&this.listData&&this.listData.length>0&&(this.selectData=this.listData)},l.prototype.updateSelection=function(){},l.prototype.renderList=function(){this.render()},l.prototype.updateDataSource=function(e){this.resetList(this.dataSource),this.totalItemCount=this.dataSource instanceof i.DataManager?this.dataSource.dataSource.json.length:0},l.prototype.setUpdateInitial=function(e,t){this.isDataFetched=!1;for(var i={},s=0;e.length>s;s++)t[e[s]]&&"fields"===e[s]?(this.setFields(),i[e[s]]=t[e[s]]):t[e[s]]&&(i[e[s]]=t[e[s]]);Object.keys(i).length>0&&(-1===Object.keys(i).indexOf("dataSource")&&(i.dataSource=this.dataSource),this.updateDataSource(i))},l.prototype.onPropertyChanged=function(e,i){"dropdownbase"===this.getModuleName()&&this.setUpdateInitial(["fields","query","dataSource"],e),this.setUpdateInitial(["sortOrder","itemTemplate"],e);for(var s=0,l=Object.keys(e);s<l.length;s++)switch(l[s]){case"query":case"sortOrder":case"dataSource":case"itemTemplate":break;case"enableRtl":this.setEnableRtl();break;case"groupTemplate":if(this.renderGroupTemplate(this.list),this.ulElement&&this.fixedHeaderElement){var n=this.ulElement.querySelector("."+U.group);this.fixedHeaderElement.innerHTML=n.innerHTML}break;case"locale":this.list&&!t.isNullOrUndefined(this.liCollections)&&0===this.liCollections.length&&this.l10nUpdate();break;case"zIndex":this.setProperties({zIndex:e.zIndex},!0),this.setZIndex()}},l.prototype.render=function(e,i){"listbox"===this.getModuleName()?this.list=this.createElement("div",{className:U.content,attrs:{tabindex:"0"}}):this.list=this.createElement("div",{className:U.content}),this.list.classList.add(U.root),this.setFields();var s={duration:300,selector:"."+U.li};this.rippleFun=t.rippleEffect(this.list,s);var l=this.element.querySelector("select>optgroup");if(!this.fields.groupBy&&t.isNullOrUndefined(l)||this.isGroupChecking||t.EventHandler.add(this.list,"scroll",this.setFloatingHeader,this),"dropdownbase"===this.getModuleName()){this.element.getAttribute("tabindex")&&this.list.setAttribute("tabindex",this.element.getAttribute("tabindex")),t.removeClass([this.element],U.root),this.element.style.display="none";var n=this.createElement("div");this.element.parentElement.insertBefore(n,this.element),n.appendChild(this.element),n.appendChild(this.list)}this.setEnableRtl(),i||this.initialize(e)},l.prototype.removeScrollEvent=function(){this.list&&t.EventHandler.remove(this.list,"scroll",this.setFloatingHeader)},l.prototype.getModuleName=function(){return"dropdownbase"},l.prototype.getItems=function(){return this.ulElement.querySelectorAll("."+U.li)},l.prototype.addItem=function(e,i){if((!this.list||this.list.textContent===this.noRecordsTemplate&&"listbox"!==this.getModuleName())&&this.renderList(),"None"!==this.sortOrder&&t.isNullOrUndefined(i)){var l=[].slice.call(this.listData);l.push(e),l=this.getSortedDataSource(l),i=this.fields.groupBy?(l=s.ListBase.groupDataSource(l,this.fields.properties,this.sortOrder)).indexOf(e):l.indexOf(e)}var n=this.getItems().length,o=this.list.querySelector("."+U.selected);e=e instanceof Array?e:[e];var r;r=t.isNullOrUndefined(i)||i<0||i>n-1?n:i;var a=this.fields;e&&a.groupBy&&(e=s.ListBase.groupDataSource(e,a.properties));for(var h=[],p=0;p<e.length;p++){var u=e[p],d=u.isHeader,c=this.createElement("li",{className:d?U.group:U.li,id:"option-add-"+p}),m=u instanceof Object?t.getValue(a.text,u):u;if(d&&(c.innerText=m),this.itemTemplate&&!d){var f=this.templateCompiler(this.itemTemplate),v=("function"!=typeof this.itemTemplate&&f?t.compile(t.select(this.itemTemplate,document).innerHTML.trim()):t.compile(this.itemTemplate))(u,this,"itemTemplate",this.itemTemplateId,this.isStringTemplate,null,c);v&&t.append(v,c)}else d||c.appendChild(document.createTextNode(m));c.setAttribute("data-value",u instanceof Object?t.getValue(a.value,u):u),c.setAttribute("role","option"),this.notify("addItem",{module:"CheckBoxSelection",item:c}),h.push(c),this.listData.push(u),"None"===this.sortOrder&&t.isNullOrUndefined(i)&&0===r&&(r=null),this.updateActionCompleteData(c,u,r),this.trigger("beforeItemRender",{element:c,item:u})}if(0===n&&t.isNullOrUndefined(this.list.querySelector("ul")))t.isNullOrUndefined(this.list)||(this.list.innerHTML="",this.list.classList.remove(U.noData),this.isAddNewItemTemplate=!0,t.isNullOrUndefined(this.ulElement)||this.list.appendChild(this.ulElement)),this.liCollections=h,t.isNullOrUndefined(h)||t.isNullOrUndefined(this.ulElement)||t.append(h,this.ulElement),this.updateAddItemList(this.list,n);else{"listbox"===this.getModuleName()&&0===n&&(this.ulElement.innerHTML="");for(var g=[],p=0;p<e.length;p++){for(var y=this.ulElement.querySelectorAll(".e-list-group-item"),C=0;C<y.length;C++)g[C]=y[C].innerText;if(g.indexOf(h[p].innerText)>-1&&a.groupBy){for(C=0;C<y.length;C++)if(g[C]===h[p].innerText){"None"===this.sortOrder?this.ulElement.insertBefore(h[p+1],y[C+1]):this.ulElement.insertBefore(h[p+1],this.ulElement.childNodes[i]),p+=1;break}}else this.liCollections[r]?this.liCollections[r].parentNode.insertBefore(h[p],this.liCollections[r]):this.ulElement.appendChild(h[p]);var b=[].slice.call(this.liCollections);b.splice(r,0,h[p]),this.liCollections=b,r+=1,"multiselect"===this.getModuleName()&&this.updateDataList()}}"listbox"===this.getModuleName()&&this.isReact&&this.renderReactTemplates(),(o||0===i)&&this.updateSelection(),this.addedNewItem=!0},l.prototype.validationAttribute=function(e,t){var i=e.getAttribute("name")?e.getAttribute("name"):e.getAttribute("id");t.setAttribute("name",i),e.removeAttribute("name");for(var s=["required","aria-required","form"],l=0;l<s.length;l++)if(e.getAttribute(s[l])){var n=e.getAttribute(s[l]);t.setAttribute(s[l],n),e.removeAttribute(s[l])}},l.prototype.setZIndex=function(){},l.prototype.updateActionCompleteData=function(e,t,i){},l.prototype.updateAddItemList=function(e,t){},l.prototype.updateDataList=function(){},l.prototype.getDataByValue=function(e){if(!t.isNullOrUndefined(this.listData)){var i=this.typeOfData(this.listData).typeof;if("string"===i||"number"===i||"boolean"===i)for(var s=0,l=this.listData;s<l.length;s++){r=l[s];if(!t.isNullOrUndefined(r)&&r===e)return r}else for(var n=0,o=this.listData;n<o.length;n++){var r=o[n];if(!t.isNullOrUndefined(r)&&t.getValue(this.fields.value?this.fields.value:"value",r)===e)return r}}return null},l.prototype.destroy=function(){document.body.contains(this.list)&&(t.EventHandler.remove(this.list,"scroll",this.setFloatingHeader),t.isNullOrUndefined(this.rippleFun)||this.rippleFun(),t.detach(this.list)),this.liCollections=null,this.ulElement=null,this.list=null,this.enableRtlElements=null,this.rippleFun=null,e.prototype.destroy.call(this)},P([t.Complex({text:null,value:null,iconCss:null,groupBy:null},V)],l.prototype,"fields",void 0),P([t.Property(null)],l.prototype,"itemTemplate",void 0),P([t.Property(null)],l.prototype,"groupTemplate",void 0),P([t.Property("No records found")],l.prototype,"noRecordsTemplate",void 0),P([t.Property("Request failed")],l.prototype,"actionFailureTemplate",void 0),P([t.Property("None")],l.prototype,"sortOrder",void 0),P([t.Property([])],l.prototype,"dataSource",void 0),P([t.Property(null)],l.prototype,"query",void 0),P([t.Property("StartsWith")],l.prototype,"filterType",void 0),P([t.Property(!0)],l.prototype,"ignoreCase",void 0),P([t.Property(1e3)],l.prototype,"zIndex",void 0),P([t.Property(!1)],l.prototype,"ignoreAccent",void 0),P([t.Property()],l.prototype,"locale",void 0),P([t.Event()],l.prototype,"actionBegin",void 0),P([t.Event()],l.prototype,"actionComplete",void 0),P([t.Event()],l.prototype,"actionFailure",void 0),P([t.Event()],l.prototype,"select",void 0),P([t.Event()],l.prototype,"dataBound",void 0),P([t.Event()],l.prototype,"created",void 0),P([t.Event()],l.prototype,"destroyed",void 0),l=P([t.NotifyPropertyChanges],l)}(t.Component),W=function(){var e=function(t,i){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)t.hasOwnProperty(i)&&(e[i]=t[i])})(t,i)};return function(t,i){function s(){this.constructor=t}e(t,i),t.prototype=null===i?Object.create(i):(s.prototype=i.prototype,new s)}}(),H=function(e,t,i,s){var l,n=arguments.length,o=n<3?t:null===s?s=Object.getOwnPropertyDescriptor(t,i):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(e,t,i,s);else for(var r=e.length-1;r>=0;r--)(l=e[r])&&(o=(n<3?l(o):n>3?l(t,i,o):l(t,i))||o);return n>3&&o&&Object.defineProperty(t,i,o),o},M={root:"e-dropdownlist",hover:U.hover,selected:U.selected,rtl:U.rtl,li:U.li,disable:U.disabled,base:U.root,focus:U.focus,content:U.content,input:"e-input-group",inputFocus:"e-input-focus",icon:"e-input-group-icon e-ddl-icon",iconAnimation:"e-icon-anim",value:"e-input-value",device:"e-ddl-device",backIcon:"e-input-group-icon e-back-icon e-icons",filterBarClearIcon:"e-input-group-icon e-clear-icon e-icons",filterInput:"e-input-filter",filterParent:"e-filter-parent",mobileFilter:"e-ddl-device-filter",footer:"e-ddl-footer",header:"e-ddl-header",clearIcon:"e-clear-icon",clearIconHide:"e-clear-icon-hide",popupFullScreen:"e-popup-full-page",disableIcon:"e-ddl-disable-icon",hiddenElement:"e-ddl-hidden",virtualList:"e-list-item e-virtual-list"},j={container:null,buttons:[]},q=function(e){function s(t,i){var s=e.call(this,t,i)||this;return s.skeletonCount=32,s.isListSearched=!1,s.preventChange=!1,s.isAngular=!1,s.virtualListHeight=0,s.isVirtualScrolling=!1,s.isPreventScrollAction=!1,s.scrollPreStartIndex=0,s.isScrollActionTriggered=!1,s.previousStartIndex=0,s.isMouseScrollAction=!1,s.isKeyBoardAction=!1,s.isUpwardScrolling=!1,s.startIndex=0,s.currentPageNumber=0,s.pageCount=0,s.isPreventKeyAction=!1,s.generatedDataObject={},s.incrementalQueryString="",s.incrementalEndIndex=0,s.incrementalStartIndex=0,s.incrementalPreQueryString="",s.isTouched=!1,s.virtualListInfo={currentPageNumber:null,direction:null,sentinelInfo:{},offsets:{},startIndex:0,endIndex:0},s.viewPortInfo={currentPageNumber:null,direction:null,sentinelInfo:{},offsets:{},startIndex:0,endIndex:0},s.selectedValueInfo={currentPageNumber:null,direction:null,sentinelInfo:{},offsets:{},startIndex:0,endIndex:0},s.IsScrollerAtEnd=function(){return this.list&&this.list.scrollTop+this.list.clientHeight>=this.list.scrollHeight},s}return W(s,e),s.prototype.preRender=function(){this.valueTempElement=null,this.element.style.opacity="0",this.initializeData(),e.prototype.preRender.call(this),this.activeIndex=this.index,this.queryString=""},s.prototype.initializeData=function(){this.isPopupOpen=!1,this.isDocumentClick=!1,this.isInteracted=!1,this.isFilterFocus=!1,this.beforePopupOpen=!1,this.initial=!0,this.initRemoteRender=!1,this.isNotSearchList=!1,this.isTyped=!1,this.isSelected=!1,this.preventFocus=!1,this.preventAutoFill=!1,this.isValidKey=!1,this.typedString="",this.isEscapeKey=!1,this.isPreventBlur=!1,this.isTabKey=!1,this.actionCompleteData={isUpdated:!1},this.actionData={isUpdated:!1},this.prevSelectPoints={},this.isSelectCustom=!1,this.isDropDownClick=!1,this.preventAltUp=!1,this.isCustomFilter=!1,this.isSecondClick=!1,this.previousValue=null,this.keyConfigure={tab:"tab",enter:"13",escape:"27",end:"35",home:"36",down:"40",up:"38",pageUp:"33",pageDown:"34",open:"alt+40",close:"shift+tab",hide:"alt+38",space:"32"},this.viewPortInfo={currentPageNumber:null,direction:null,sentinelInfo:{},offsets:{},startIndex:0,endIndex:this.itemCount}},s.prototype.setZIndex=function(){this.popupObj&&this.popupObj.setProperties({zIndex:this.zIndex})},s.prototype.requiredModules=function(){var e=[];return this.enableVirtualization&&e.push({args:[this],member:"VirtualScroll"}),e},s.prototype.renderList=function(t,s){e.prototype.render.call(this,t,s),this.dataSource instanceof i.DataManager||(this.totalItemCount=this.dataSource&&this.dataSource.length?this.dataSource.length:0),this.unWireListEvents(),this.wireListEvents()},s.prototype.floatLabelChange=function(){if("dropdownlist"===this.getModuleName()&&"Auto"===this.floatLabelType){var e=this.inputWrapper.container.querySelector(".e-float-text");""!==this.inputElement.value||this.isInteracted?t.classList(e,["e-label-top"],["e-label-bottom"]):t.classList(e,["e-label-bottom"],["e-label-top"])}},s.prototype.resetHandler=function(e){e.preventDefault(),this.clearAll(e),this.enableVirtualization&&(this.list.scrollTop=0,this.virtualListInfo=null,this.previousStartIndex=0,this.previousEndIndex=0)},s.prototype.resetFocusElement=function(){if(this.removeHover(),this.removeSelection(),this.removeFocus(),this.list.scrollTop=0,"autocomplete"!==this.getModuleName()&&!t.isNullOrUndefined(this.ulElement)){var e=this.ulElement.querySelector("."+M.li);this.enableVirtualization&&(e=this.liCollections[this.skeletonCount]),e&&e.classList.add(M.focus)}},s.prototype.clearAll=function(e,s){this.previousItemData=t.isNullOrUndefined(this.itemData)?null:this.itemData,!t.isNullOrUndefined(s)&&(t.isNullOrUndefined(s)||!t.isNullOrUndefined(s.dataSource)&&(s.dataSource instanceof i.DataManager||0!==s.dataSource.length))||(this.isActive=!0,this.resetSelection(s));var l=this.getItemData();this.previousValue!==l.value&&(this.onChangeEvent(e),this.checkAndResetCache(),this.enableVirtualization&&this.updateInitialData())},s.prototype.resetSelection=function(e){this.list&&(t.isNullOrUndefined(e)||!t.isNullOrUndefined(e.dataSource)&&(e.dataSource instanceof i.DataManager||0!==e.dataSource.length)?(this.allowFiltering&&"autocomplete"!==this.getModuleName()&&!t.isNullOrUndefined(this.actionCompleteData.ulElement)&&!t.isNullOrUndefined(this.actionCompleteData.list)&&this.actionCompleteData.list.length>0&&this.onActionComplete(this.actionCompleteData.ulElement.cloneNode(!0),this.actionCompleteData.list),this.resetFocusElement()):(this.selectedLI=null,this.actionCompleteData.isUpdated=!1,this.actionCompleteData.ulElement=null,this.actionCompleteData.list=null,this.resetList(e.dataSource))),t.isNullOrUndefined(this.hiddenElement)||(this.hiddenElement.innerHTML=""),t.isNullOrUndefined(this.inputElement)||(this.inputElement.value=""),this.value=null,this.itemData=null,this.text=null,this.index=null,this.activeIndex=null,this.item=null,this.queryString="",this.valueTempElement&&(t.detach(this.valueTempElement),this.inputElement.style.display="block",this.valueTempElement=null),this.setSelection(null,null),this.isSelectCustom=!1,this.updateIconState(),this.cloneElements()},s.prototype.setHTMLAttributes=function(){if(Object.keys(this.htmlAttributes).length)for(var e=0,i=Object.keys(this.htmlAttributes);e<i.length;e++){var s=i[e];if("class"===s){var l=this.htmlAttributes[""+s].replace(/\s+/g," ").trim();""!==l&&t.addClass([this.inputWrapper.container],l.split(" "))}else if("disabled"===s&&"disabled"===this.htmlAttributes[""+s])this.enabled=!1,this.setEnable();else if("readonly"!==s||t.isNullOrUndefined(this.htmlAttributes[""+s]))if("style"===s)this.inputWrapper.container.setAttribute("style",this.htmlAttributes[""+s]);else if("aria-label"===s)"autocomplete"!==this.getModuleName()&&"combobox"!==this.getModuleName()||this.readonly?"dropdownlist"===this.getModuleName()&&this.inputWrapper.container.setAttribute("aria-label",this.htmlAttributes[""+s]):this.inputElement.setAttribute("aria-label",this.htmlAttributes[""+s]);else{var o=["title","id","placeholder","role","autocomplete","autocapitalize","spellcheck","minlength","maxlength"],r=["name","required"];"autocomplete"!==this.getModuleName()&&"combobox"!==this.getModuleName()||o.push("tabindex"),r.indexOf(s)>-1||0===s.indexOf("data")?this.hiddenElement.setAttribute(s,this.htmlAttributes[""+s]):o.indexOf(s)>-1?"placeholder"===s?n.Input.setPlaceholder(this.htmlAttributes[""+s],this.inputElement):this.inputElement.setAttribute(s,this.htmlAttributes[""+s]):this.inputWrapper.container.setAttribute(s,this.htmlAttributes[""+s])}else this.readonly=!0,this.dataBind()}"autocomplete"!==this.getModuleName()&&"combobox"!==this.getModuleName()||this.inputWrapper.container.removeAttribute("tabindex")},s.prototype.getAriaAttributes=function(){return{"aria-disabled":"false",role:"combobox","aria-expanded":"false","aria-live":"polite","aria-labelledby":this.hiddenElement.id}},s.prototype.setEnableRtl=function(){n.Input.setEnableRtl(this.enableRtl,[this.inputElement.parentElement]),this.popupObj&&(this.popupObj.enableRtl=this.enableRtl,this.popupObj.dataBind())},s.prototype.setEnable=function(){n.Input.setEnabled(this.enabled,this.inputElement),this.enabled?(t.removeClass([this.inputWrapper.container],M.disable),this.inputElement.setAttribute("aria-disabled","false"),this.targetElement().setAttribute("tabindex",this.tabIndex)):(this.hidePopup(),t.addClass([this.inputWrapper.container],M.disable),this.inputElement.setAttribute("aria-disabled","true"),this.targetElement().tabIndex=-1)},s.prototype.getPersistData=function(){return this.addOnPersist(["value"])},s.prototype.getLocaleName=function(){return"drop-down-list"},s.prototype.preventTabIndex=function(e){"dropdownlist"===this.getModuleName()&&(e.tabIndex=-1)},s.prototype.targetElement=function(){return t.isNullOrUndefined(this.inputWrapper)?null:this.inputWrapper.container},s.prototype.getNgDirective=function(){return"EJS-DROPDOWNLIST"},s.prototype.getElementByText=function(e){return this.getElementByValue(this.getValueByText(e))},s.prototype.getElementByValue=function(e){for(var t,i=0,s=this.getItems();i<s.length;i++){var l=s[i];if(this.getFormattedValue(l.getAttribute("data-value"))===e){t=l;break}}return t},s.prototype.initValue=function(){this.viewPortInfo.startIndex=this.virtualItemStartIndex=0,this.viewPortInfo.endIndex=this.virtualItemEndIndex=this.itemCount,this.renderList(),this.dataSource instanceof i.DataManager?this.initRemoteRender=!0:this.updateValues()},s.prototype.updateValues=function(){if(this.selectedValueInfo=this.viewPortInfo,t.isNullOrUndefined(this.value))if(this.text&&t.isNullOrUndefined(this.value)){var e=this.getElementByText(this.text);if(t.isNullOrUndefined(e))return void this.setProperties({text:null});this.setSelection(e,null)}else this.setSelection(this.liCollections[this.activeIndex],null);else this.setSelection(this.getElementByValue(this.value),null);this.setHiddenValue(),n.Input.setValue(this.text,this.inputElement,this.floatLabelType,this.showClearButton)},s.prototype.onBlurHandler=function(e){if(this.enabled){var i=e.relatedTarget,s=e.target,l=this.isPreventBlur;if(this.isPreventBlur=!1,l&&!this.isDocumentClick&&this.isPopupOpen&&(!t.isNullOrUndefined(s)||!this.isFilterLayout()&&t.isNullOrUndefined(i)))return void("dropdownlist"===this.getModuleName()&&this.allowFiltering&&this.isPopupOpen?this.filterInput.focus():this.targetElement().focus());if(this.isDocumentClick||!t.isNullOrUndefined(this.popupObj)&&document.body.contains(this.popupObj.element)&&this.popupObj.element.classList.contains(M.mobileFilter))return void(this.beforePopupOpen||(this.isDocumentClick=!1));("dropdownlist"===this.getModuleName()&&!this.isFilterFocus&&i!==this.inputElement&&(document.activeElement!==i||document.activeElement===i&&s.classList.contains(M.inputFocus))||t.isNullOrUndefined(i)&&"dropdownlist"===this.getModuleName()&&this.allowFiltering&&s!==this.inputWrapper.container||"dropdownlist"!==this.getModuleName()&&!this.inputWrapper.container.contains(i)||this.isTabKey)&&(this.isDocumentClick=!!this.isPopupOpen,this.focusOutAction(e),this.isTabKey=!1),!this.isRequested||this.isPopupOpen||this.isPreventBlur||(this.isActive=!1,this.beforePopupOpen=!1)}},s.prototype.focusOutAction=function(e){this.isInteracted=!1,this.focusOut(e),this.onFocusOut(e)},s.prototype.onFocusOut=function(e){this.enabled&&(this.isSelected&&(this.isSelectCustom=!1,this.onChangeEvent(e)),this.floatLabelChange(),this.dispatchEvent(this.hiddenElement,"change"),"dropdownlist"===this.getModuleName()&&"INPUT"!==this.element.tagName&&this.dispatchEvent(this.inputElement,"blur"),this.inputWrapper.clearButton&&t.addClass([this.inputWrapper.clearButton],M.clearIconHide),this.trigger("blur"))},s.prototype.onFocus=function(e){if(!this.isInteracted){this.isInteracted=!0;var t={isInteracted:!!e,event:e};this.trigger("focus",t)}this.updateIconState()},s.prototype.resetValueHandler=function(e){var i=t.closest(this.inputElement,"form");if(i&&e.target===i){var s=this.element.tagName===this.getNgDirective()?null:this.inputElement.getAttribute("value");this.text=s}},s.prototype.wireEvent=function(){t.EventHandler.add(this.inputWrapper.container,"mousedown",this.dropDownClick,this),t.EventHandler.add(this.inputWrapper.container,"focus",this.focusIn,this),t.EventHandler.add(this.inputWrapper.container,"keypress",this.onSearch,this),t.EventHandler.add(window,"resize",this.windowResize,this),this.bindCommonEvent()},s.prototype.bindCommonEvent=function(){t.EventHandler.add(this.targetElement(),"blur",this.onBlurHandler,this);var e=t.closest(this.inputElement,"form");e&&t.EventHandler.add(e,"reset",this.resetValueHandler,this),t.Browser.isDevice?this.keyboardModule=new t.KeyboardEvents(this.targetElement(),{keyAction:this.mobileKeyActionHandler.bind(this),keyConfigs:this.keyConfigure,eventName:"keydown"}):this.keyboardModule=new t.KeyboardEvents(this.targetElement(),{keyAction:this.keyActionHandler.bind(this),keyConfigs:this.keyConfigure,eventName:"keydown"}),this.bindClearEvent()},s.prototype.windowResize=function(){this.isPopupOpen&&this.popupObj.refreshPosition(this.inputWrapper.container)},s.prototype.bindClearEvent=function(){this.showClearButton&&t.EventHandler.add(this.inputWrapper.clearButton,"mousedown",this.resetHandler,this)},s.prototype.unBindCommonEvent=function(){!t.isNullOrUndefined(this.inputWrapper)&&this.targetElement()&&t.EventHandler.remove(this.targetElement(),"blur",this.onBlurHandler);var e=this.inputElement&&t.closest(this.inputElement,"form");e&&t.EventHandler.remove(e,"reset",this.resetValueHandler),t.Browser.isDevice||this.keyboardModule.destroy(),this.showClearButton&&t.EventHandler.remove(this.inputWrapper.clearButton,"mousedown",this.resetHandler)},s.prototype.updateIconState=function(){this.showClearButton&&(""===this.inputElement.value||this.readonly?t.addClass([this.inputWrapper.clearButton],M.clearIconHide):t.removeClass([this.inputWrapper.clearButton],M.clearIconHide))},s.prototype.wireListEvents=function(){t.isNullOrUndefined(this.list)||(t.EventHandler.add(this.list,"click",this.onMouseClick,this),t.EventHandler.add(this.list,"mouseover",this.onMouseOver,this),t.EventHandler.add(this.list,"mouseout",this.onMouseLeave,this))},s.prototype.onSearch=function(e){32!==e.charCode&&13!==e.charCode&&(void 0===this.list&&this.renderList(),this.searchKeyEvent=e,this.onServerIncrementalSearch(e))},s.prototype.onServerIncrementalSearch=function(e){this.isRequested||t.isNullOrUndefined(this.list)||t.isNullOrUndefined(this.list.querySelector("li"))||!this.enabled||this.readonly||this.incrementalSearch(e)},s.prototype.onMouseClick=function(e){var i=e.target;this.keyboardEvent=null;var s=t.closest(i,"."+U.li);if(this.isValidLI(s))if(this.setSelection(s,e),t.Browser.isDevice&&this.isFilterLayout())history.back();else{this.closePopup(100,e)}},s.prototype.onMouseOver=function(e){var i=t.closest(e.target,"."+U.li);this.setHover(i)},s.prototype.setHover=function(e){this.enabled&&this.isValidLI(e)&&!e.classList.contains(U.hover)&&(this.removeHover(),t.addClass([e],U.hover))},s.prototype.onMouseLeave=function(){this.removeHover()},s.prototype.removeHover=function(){if(this.list){var e=this.list.querySelectorAll("."+U.hover);e&&e.length&&t.removeClass(e,U.hover)}},s.prototype.isValidLI=function(e){return e&&e.hasAttribute("role")&&"option"===e.getAttribute("role")},s.prototype.updateIncrementalInfo=function(e,t){this.viewPortInfo.startIndex=e,this.viewPortInfo.endIndex=t,this.updateVirtualItemIndex(),this.isIncrementalRequest=!0,this.resetList(this.dataSource,this.fields,this.query),this.isIncrementalRequest=!1},s.prototype.updateIncrementalView=function(e,t){this.viewPortInfo.startIndex=e,this.viewPortInfo.endIndex=t,this.updateVirtualItemIndex(),this.resetList(this.dataSource,this.fields,this.query),this.UpdateSkeleton(),this.liCollections=this.list.querySelectorAll("."+U.li),this.ulElement=this.list.querySelector("ul")},s.prototype.updateIncrementalItemIndex=function(e,t){this.incrementalStartIndex=e,this.incrementalEndIndex=t},s.prototype.incrementalSearch=function(e){if(this.liCollections.length>0)if(this.enableVirtualization){var i=!1,s=!1,l=this.ulElement.getElementsByClassName("e-active")[0],n=l?l.textContent:null;""==this.incrementalQueryString?(this.incrementalQueryString=String.fromCharCode(e.charCode),this.incrementalPreQueryString=this.incrementalQueryString):String.fromCharCode(e.charCode).toLocaleLowerCase()==this.incrementalPreQueryString.toLocaleLowerCase()?s=!0:this.incrementalQueryString=String.fromCharCode(e.charCode),(this.viewPortInfo.endIndex>=this.incrementalEndIndex&&this.incrementalEndIndex<=this.totalItemCount||0==this.incrementalEndIndex)&&(i=!0,this.incrementalStartIndex=this.incrementalEndIndex,0==this.incrementalEndIndex?this.incrementalEndIndex=100>this.totalItemCount?this.totalItemCount:100:this.incrementalEndIndex=this.incrementalEndIndex+100>this.totalItemCount?this.totalItemCount:this.incrementalEndIndex+100,this.updateIncrementalInfo(this.incrementalStartIndex,this.incrementalEndIndex),i=!0),(0!==this.viewPortInfo.startIndex||i)&&this.updateIncrementalView(0,this.itemCount);for(d=h(e.charCode,this.incrementalLiCollections,this.activeIndex,!0,this.element.id,s,n,!0);t.isNullOrUndefined(d)&&this.incrementalEndIndex<this.totalItemCount&&(this.updateIncrementalItemIndex(this.incrementalEndIndex,this.incrementalEndIndex+100>this.totalItemCount?this.totalItemCount:this.incrementalEndIndex+100),this.updateIncrementalInfo(this.incrementalStartIndex,this.incrementalEndIndex),i=!0,(0!==this.viewPortInfo.startIndex||i)&&this.updateIncrementalView(0,this.itemCount),d=h(e.charCode,this.incrementalLiCollections,0,!0,this.element.id,s,n,!0,!0),t.isNullOrUndefined(d));)if(t.isNullOrUndefined(d)&&this.incrementalEndIndex>=this.totalItemCount){this.updateIncrementalItemIndex(0,100>this.totalItemCount?this.totalItemCount:100);break}t.isNullOrUndefined(d)&&this.incrementalEndIndex>=this.totalItemCount&&(this.updateIncrementalItemIndex(0,100>this.totalItemCount?this.totalItemCount:100),this.updateIncrementalInfo(this.incrementalStartIndex,this.incrementalEndIndex),i=!0,(0!==this.viewPortInfo.startIndex||i)&&this.updateIncrementalView(0,this.itemCount),d=h(e.charCode,this.incrementalLiCollections,0,!0,this.element.id,s,n,!0,!0));var o=d&&this.getIndexByValue(d.getAttribute("data-value"));if(o)o-=this.skeletonCount;else for(var r=0;r<this.incrementalLiCollections.length;r++)if(!t.isNullOrUndefined(d)&&!t.isNullOrUndefined(d.getAttribute("data-value"))&&this.incrementalLiCollections[r].getAttribute("data-value")===d.getAttribute("data-value").toString()){o=r,o=this.incrementalStartIndex+o;break}if(o&&!(this.viewPortInfo.startIndex>=o&&o>=this.viewPortInfo.endIndex)){var a=o-(this.itemCount/2-2)>0?o-(this.itemCount/2-2):0,p=this.viewPortInfo.startIndex+this.itemCount>this.totalItemCount?this.totalItemCount:this.viewPortInfo.startIndex+this.itemCount;this.updateIncrementalView(a,p)}if(t.isNullOrUndefined(d))this.updateIncrementalView(0,this.itemCount),this.list.getElementsByClassName("e-virtual-ddl-content")[0].style=this.getTransformValues(),this.list.scrollTop=0;else{if(this.getIndexByValue(d.getAttribute("data-value"))-this.skeletonCount>this.itemCount/2){var a=this.viewPortInfo.startIndex+(this.itemCount/2-2)<this.totalItemCount?this.viewPortInfo.startIndex+(this.itemCount/2-2):this.totalItemCount,p=this.viewPortInfo.startIndex+this.itemCount>this.totalItemCount?this.totalItemCount:this.viewPortInfo.startIndex+this.itemCount;this.updateIncrementalView(a,p)}if(d=this.getElementByValue(d.getAttribute("data-value")),this.setSelection(d,e),this.setScrollPosition(),this.list.getElementsByClassName("e-virtual-ddl-content")[0].style=this.getTransformValues(),this.enableVirtualization&&!this.fields.groupBy){var u=this.virtualListInfo&&this.virtualListInfo.startIndex?this.selectedLI.offsetTop+this.virtualListInfo.startIndex*this.selectedLI.offsetHeight:this.selectedLI.offsetTop;this.list.scrollTop=u-this.list.querySelectorAll(".e-virtual-list").length*this.selectedLI.offsetHeight}this.incrementalPreQueryString=this.incrementalQueryString}}else{var d=h(e.charCode,this.liCollections,this.activeIndex,!0,this.element.id);t.isNullOrUndefined(d)||(this.setSelection(d,e),this.setScrollPosition())}},s.prototype.hideSpinner=function(){t.isNullOrUndefined(this.spinnerElement)||(l.hideSpinner(this.spinnerElement),t.removeClass([this.spinnerElement],M.disableIcon),this.spinnerElement.innerHTML="",this.spinnerElement=null)},s.prototype.showSpinner=function(){t.isNullOrUndefined(this.spinnerElement)&&(this.spinnerElement=t.Browser.isDevice&&!t.isNullOrUndefined(this.filterInputObj)&&this.filterInputObj.buttons[1]||!t.isNullOrUndefined(this.filterInputObj)&&this.filterInputObj.buttons[0]||this.inputWrapper.buttons[0],t.addClass([this.spinnerElement],M.disableIcon),l.createSpinner({target:this.spinnerElement,width:t.Browser.isDevice?"16px":"14px"},this.createElement),l.showSpinner(this.spinnerElement))},s.prototype.keyActionHandler=function(e){if(this.enabled){this.keyboardEvent=e,this.isPreventKeyAction&&this.enableVirtualization&&e.preventDefault();var i="pageUp"===e.action||"pageDown"===e.action,s="dropdownlist"!==this.getModuleName()&&("home"===e.action||"end"===e.action);this.isEscapeKey="escape"===e.action,this.isTabKey=!this.isPopupOpen&&"tab"===e.action;var l="down"===e.action||"up"===e.action||"pageUp"===e.action||"pageDown"===e.action||"home"===e.action||"end"===e.action;if((!(this.isEditTextBox()||i||s)||this.isPopupOpen)&&!this.readonly){var n="tab"===e.action||"close"===e.action;if(!t.isNullOrUndefined(this.list)||this.isRequested||n||"escape"===e.action||(this.searchKeyEvent=e,this.renderList(e),this.UpdateSkeleton(),this.liCollections=this.list.querySelectorAll("."+U.li),this.ulElement=this.list.querySelector("ul")),t.isNullOrUndefined(this.list)||!t.isNullOrUndefined(this.liCollections)&&l&&0===this.liCollections.length||this.isRequested)return;switch((n&&"autocomplete"!==this.getModuleName()&&this.isPopupOpen||"escape"===e.action)&&e.preventDefault(),this.isSelected="escape"!==e.action&&this.isSelected,this.isTyped=!l&&"escape"!==e.action&&this.isTyped,e.action){case"down":case"up":this.updateUpDownAction(e);break;case"pageUp":this.pageUpSelection(this.activeIndex-this.getPageCount(),e),e.preventDefault();break;case"pageDown":this.pageDownSelection(this.activeIndex+this.getPageCount(),e),e.preventDefault();break;case"home":case"end":this.isMouseScrollAction=!0,this.updateHomeEndAction(e);break;case"space":"dropdownlist"===this.getModuleName()&&(this.beforePopupOpen||(this.showPopup(),e.preventDefault()));break;case"open":this.showPopup(e);break;case"hide":this.preventAltUp=this.isPopupOpen,this.hidePopup(e),this.focusDropDown(e);break;case"enter":this.selectCurrentItem(e);break;case"tab":this.selectCurrentValueOnTab(e);break;case"escape":case"close":this.isPopupOpen&&(this.hidePopup(e),this.focusDropDown(e))}}}},s.prototype.updateUpDownAction=function(e,i){if(this.allowFiltering&&!this.enableVirtualization&&"autocomplete"!==this.getModuleName()){var s=this.getItemData().value;t.isNullOrUndefined(s)&&(s="null");f=this.getIndexByValue(s);t.isNullOrUndefined(f)||(this.activeIndex=f)}var l=this.list.querySelector("."+M.focus);if(this.isSelectFocusItem(l)&&!i){if(this.setSelection(l,e),this.enableVirtualization&&!this.fields.groupBy&&"combobox"!==this.getModuleName()){var n=this.virtualListInfo&&this.virtualListInfo.startIndex?this.selectedLI.offsetTop+this.virtualListInfo.startIndex*this.selectedLI.offsetHeight:this.selectedLI.offsetTop;this.list.scrollTop=n-this.list.querySelectorAll(".e-virtual-list").length*this.selectedLI.offsetHeight}}else if(!t.isNullOrUndefined(this.liCollections)){var o=this.activeIndex,r="down"===e.action?this.activeIndex+1:this.activeIndex-1;r=i?o:r;var a=0;"autocomplete"===this.getModuleName()&&(a="down"===e.action&&t.isNullOrUndefined(this.activeIndex)?0:this.liCollections.length-1,r=r<0?this.liCollections.length-1:r===this.liCollections.length?0:r);var h=void 0;if("autocomplete"!==this.getModuleName()||"autocomplete"===this.getModuleName()&&this.isPopupOpen)if(this.enableVirtualization)if(i)if("autocomplete"===this.getModuleName()){var p=this.getFormattedValue(this.selectedLI.getAttribute("data-value"));h=this.getElementByValue(p)}else h=this.getElementByValue(this.getItemData().value);else h=t.isNullOrUndefined(this.activeIndex)?this.liCollections[this.skeletonCount]:this.liCollections[r],h=t.isNullOrUndefined(h)||h.classList.contains("e-virtual-list")?null:h;else h=t.isNullOrUndefined(this.activeIndex)?this.liCollections[a]:this.liCollections[r];if(t.isNullOrUndefined(h)){if(this.enableVirtualization&&!this.isPopupOpen&&"autocomplete"!==this.getModuleName()&&(this.viewPortInfo.endIndex!==this.totalItemCount&&"down"===e.action||0!==this.viewPortInfo.startIndex&&"up"===e.action)){if("down"===e.action){this.viewPortInfo.startIndex=this.viewPortInfo.startIndex+this.itemCount<this.totalItemCount-this.itemCount?this.viewPortInfo.startIndex+this.itemCount:this.totalItemCount-this.itemCount,this.viewPortInfo.endIndex=this.viewPortInfo.startIndex+this.itemCount,this.updateVirtualItemIndex(),this.isCustomFilter="combobox"===this.getModuleName()||this.isCustomFilter,this.resetList(this.dataSource,this.fields,this.query),this.isCustomFilter="combobox"!==this.getModuleName()&&this.isCustomFilter;var u="null"!==this.liCollections[0].getAttribute("data-value")?this.getFormattedValue(this.liCollections[0].getAttribute("data-value")):null;(c=this.getDataByValue(u))&&(this.itemData=c)}else if("up"===e.action){this.viewPortInfo.startIndex=this.viewPortInfo.startIndex-this.itemCount>0?this.viewPortInfo.startIndex-this.itemCount:0,this.viewPortInfo.endIndex=this.viewPortInfo.startIndex+this.itemCount,this.updateVirtualItemIndex(),this.isCustomFilter="combobox"===this.getModuleName()||this.isCustomFilter,this.resetList(this.dataSource,this.fields,this.query),this.isCustomFilter="combobox"!==this.getModuleName()&&this.isCustomFilter;var d="null"!==this.liCollections[this.liCollections.length-1].getAttribute("data-value")?this.getFormattedValue(this.liCollections[this.liCollections.length-1].getAttribute("data-value")):null,c=this.getDataByValue(d);c&&(this.itemData=c)}this.UpdateSkeleton(),this.liCollections=this.list.querySelectorAll("."+U.li),this.ulElement=this.list.querySelector("ul"),this.handleVirtualKeyboardActions(e,this.pageCount)}}else this.setSelection(h,e)}if(this.allowFiltering&&!this.enableVirtualization&&"autocomplete"!==this.getModuleName()){var m=this.getItemData().value,f=this.getIndexByValueFilter(m);t.isNullOrUndefined(f)||(this.activeIndex=f)}this.allowFiltering&&"dropdownlist"===this.getModuleName()&&(t.isNullOrUndefined(this.ulElement)||t.isNullOrUndefined(this.ulElement.getElementsByClassName("e-item-focus")[0])?t.isNullOrUndefined(this.ulElement)||t.isNullOrUndefined(this.ulElement.getElementsByClassName("e-active")[0])||t.attributes(this.filterInput,{"aria-activedescendant":this.ulElement.getElementsByClassName("e-active")[0].id}):t.attributes(this.filterInput,{"aria-activedescendant":this.ulElement.getElementsByClassName("e-item-focus")[0].id})),e.preventDefault()},s.prototype.updateVirtualItemIndex=function(){this.virtualItemStartIndex=this.viewPortInfo.startIndex,this.virtualItemEndIndex=this.viewPortInfo.endIndex,this.virtualListInfo=this.viewPortInfo},s.prototype.updateHomeEndAction=function(e,t){if("dropdownlist"===this.getModuleName()){var i=0;if("home"===e.action?(i=0,this.enableVirtualization&&this.isPopupOpen?i=this.skeletonCount:this.enableVirtualization&&!this.isPopupOpen&&0!==this.viewPortInfo.startIndex&&(this.viewPortInfo.startIndex=0,this.viewPortInfo.endIndex=this.itemCount,this.updateVirtualItemIndex(),this.resetList(this.dataSource,this.fields,this.query))):(this.enableVirtualization&&!this.isPopupOpen&&this.viewPortInfo.endIndex!==this.totalItemCount&&(this.viewPortInfo.startIndex=this.totalItemCount-this.itemCount,this.viewPortInfo.endIndex=this.totalItemCount,this.updateVirtualItemIndex(),this.resetList(this.dataSource,this.fields,this.query)),i=this.getItems().length-1),e.preventDefault(),this.activeIndex===i)return void(t&&this.setSelection(this.liCollections[i],e));this.setSelection(this.liCollections[i],e)}},s.prototype.selectCurrentValueOnTab=function(e){"autocomplete"===this.getModuleName()?this.selectCurrentItem(e):this.isPopupOpen&&(this.hidePopup(e),this.focusDropDown(e))},s.prototype.mobileKeyActionHandler=function(e){if(this.enabled&&(!this.isEditTextBox()||this.isPopupOpen)&&!this.readonly){if(void 0!==this.list||this.isRequested||(this.searchKeyEvent=e,this.renderList()),t.isNullOrUndefined(this.list)||!t.isNullOrUndefined(this.liCollections)&&0===this.liCollections.length||this.isRequested)return;"enter"===e.action&&this.selectCurrentItem(e)}},s.prototype.handleVirtualKeyboardActions=function(e,t){switch(e.action){case"down":case"up":null==this.itemData&&"autocomplete"!==this.getModuleName()||this.updateUpDownAction(e,!0);break;case"pageUp":var i=2*t-4;this.activeIndex=Math.round(i),this.pageUpSelection(this.activeIndex-this.getPageCount(),e,!0),e.preventDefault();break;case"pageDown":this.activeIndex=1,this.pageDownSelection(this.activeIndex+this.getPageCount(),e,!0),e.preventDefault();break;case"home":case"end":this.isMouseScrollAction=!0,this.updateHomeEndAction(e,!0)}this.keyboardEvent=null},s.prototype.selectCurrentItem=function(e){if(this.isPopupOpen){var t=this.list.querySelector("."+M.focus);t&&(this.setSelection(t,e),this.isTyped=!1),this.isSelected&&(this.isSelectCustom=!1,this.onChangeEvent(e)),this.hidePopup(e),this.focusDropDown(e)}else this.showPopup()},s.prototype.isSelectFocusItem=function(e){return!t.isNullOrUndefined(e)},s.prototype.pageUpSelection=function(e,i,s){var l=e>=0?this.liCollections[e+1]:this.liCollections[0];(this.enableVirtualization&&null==this.activeIndex||s)&&(l=e>=0?this.liCollections[e+this.skeletonCount+1]:this.liCollections[0]),!t.isNullOrUndefined(l)&&l.classList.contains("e-virtual-list")&&(l=this.liCollections[this.skeletonCount]),this.PageUpDownSelection(l,i),this.allowFiltering&&"dropdownlist"===this.getModuleName()&&(t.isNullOrUndefined(this.ulElement)||t.isNullOrUndefined(this.ulElement.getElementsByClassName("e-item-focus")[0])?t.isNullOrUndefined(this.ulElement)||t.isNullOrUndefined(this.ulElement.getElementsByClassName("e-active")[0])||t.attributes(this.filterInput,{"aria-activedescendant":this.ulElement.getElementsByClassName("e-active")[0].id}):t.attributes(this.filterInput,{"aria-activedescendant":this.ulElement.getElementsByClassName("e-item-focus")[0].id}))},s.prototype.PageUpDownSelection=function(e,i){this.enableVirtualization?t.isNullOrUndefined(e)||("autocomplete"===this.getModuleName()||e.classList.contains("e-active"))&&("autocomplete"!==this.getModuleName()||e.classList.contains("e-item-focus"))||this.setSelection(e,i):this.setSelection(e,i)},s.prototype.pageDownSelection=function(e,i,s){var l=this.getItems(),n=e<=l.length?this.liCollections[e-1]:this.liCollections[l.length-1];(this.enableVirtualization&&null==this.activeIndex||s)&&(n=e<=l.length?this.liCollections[e+this.skeletonCount-1]:this.liCollections[l.length-1]),this.PageUpDownSelection(n,i),this.allowFiltering&&"dropdownlist"===this.getModuleName()&&(t.isNullOrUndefined(this.ulElement)||t.isNullOrUndefined(this.ulElement.getElementsByClassName("e-item-focus")[0])?t.isNullOrUndefined(this.ulElement)||t.isNullOrUndefined(this.ulElement.getElementsByClassName("e-active")[0])||t.attributes(this.filterInput,{"aria-activedescendant":this.ulElement.getElementsByClassName("e-active")[0].id}):t.attributes(this.filterInput,{"aria-activedescendant":this.ulElement.getElementsByClassName("e-item-focus")[0].id}))},s.prototype.unWireEvent=function(){t.isNullOrUndefined(this.inputWrapper)||(t.EventHandler.remove(this.inputWrapper.container,"mousedown",this.dropDownClick),t.EventHandler.remove(this.inputWrapper.container,"keypress",this.onSearch),t.EventHandler.remove(this.inputWrapper.container,"focus",this.focusIn),t.EventHandler.remove(window,"resize",this.windowResize)),this.unBindCommonEvent()},s.prototype.unWireListEvents=function(){this.list&&(t.EventHandler.remove(this.list,"click",this.onMouseClick),t.EventHandler.remove(this.list,"mouseover",this.onMouseOver),t.EventHandler.remove(this.list,"mouseout",this.onMouseLeave))},s.prototype.checkSelector=function(e){return'[id="'+e.replace(/(:|\.|\[|\]|,|=|@|\\|\/|#)/g,"\\$1")+'"]'},s.prototype.onDocumentClick=function(e){var i=e.target;if(!t.isNullOrUndefined(this.popupObj)&&t.closest(i,this.checkSelector(this.popupObj.element.id))||t.isNullOrUndefined(this.inputWrapper)||this.inputWrapper.container.contains(e.target))i===this.inputElement||this.allowFiltering&&i===this.filterInput||"combobox"===this.getModuleName()&&!this.allowFiltering&&t.Browser.isDevice&&i===this.inputWrapper.buttons[0]||(this.isPreventBlur=(t.Browser.isIE||"edge"===t.Browser.info.name)&&(document.activeElement===this.targetElement()||document.activeElement===this.filterInput),e.preventDefault());else if(this.inputWrapper.container.classList.contains(M.inputFocus)||this.isPopupOpen){this.isDocumentClick=!0;var s=this.isRequested;"combobox"===this.getModuleName()&&this.isTyped&&(this.isInteracted=!1),this.hidePopup(e),this.isInteracted=!1,s||(this.onFocusOut(e),this.inputWrapper.container.classList.remove(M.inputFocus))}},s.prototype.activeStateChange=function(){this.isDocumentClick&&(this.hidePopup(),this.onFocusOut(),this.inputWrapper.container.classList.remove(M.inputFocus))},s.prototype.focusDropDown=function(e){!this.initial&&this.isFilterLayout()&&this.focusIn(e)},s.prototype.dropDownClick=function(e){if(3!==e.which&&2!==e.button&&(this.keyboardEvent=null,!this.targetElement().classList.contains(M.disable)&&this.inputWrapper.clearButton!==e.target)){var t=e.target;if(t===this.inputElement||this.allowFiltering&&t===this.filterInput||"combobox"===this.getModuleName()||e.preventDefault(),this.readonly)this.focusIn(e);else{this.isPopupOpen?(this.hidePopup(e),this.isFilterLayout()&&this.focusDropDown(e)):(this.focusIn(e),this.floatLabelChange(),this.queryString=""===this.inputElement.value.trim()?null:this.inputElement.value,this.isDropDownClick=!0,this.showPopup(e));var i=this,s=this.element.tagName===this.getNgDirective()&&this.itemTemplate?500:100;this.isSecondClick||setTimeout(function(){i.cloneElements(),i.isSecondClick=!0},s)}}},s.prototype.cloneElements=function(){if(this.list){var e=this.list.querySelector("ul");e&&(e=e.cloneNode?e.cloneNode(!0):e,this.actionCompleteData.ulElement=e)}},s.prototype.updateSelectedItem=function(e,i,s,l){var n=this;this.removeSelection(),e.classList.add(U.selected),this.removeHover();var o="null"!==e.getAttribute("data-value")?this.getFormattedValue(e.getAttribute("data-value")):null,r=this.getDataByValue(o);if(this.initial||s||t.isNullOrUndefined(i))this.selectEventCallback(e,i,s,r,o),l&&this.setSelectOptions(e,i);else{var a=this.detachChanges(r);this.isSelected=!0;var h={e:i,item:e,itemData:a,isInteracted:!!i,cancel:!1};this.trigger("select",h,function(t){t.cancel?e.classList.remove(U.selected):(n.selectEventCallback(e,i,s,r,o),l&&n.setSelectOptions(e,i))})}},s.prototype.selectEventCallback=function(e,i,s,l,n){this.previousItemData=t.isNullOrUndefined(this.itemData)?null:this.itemData,this.itemData!=l&&(this.previousValue=t.isNullOrUndefined(this.itemData)?null:"object"==typeof this.itemData?this.checkFieldValue(this.itemData,this.fields.value.split(".")):this.itemData),this.item=e,this.itemData=l;var o=this.list.querySelector("."+U.focus);if(o&&t.removeClass([o],U.focus),e.setAttribute("aria-selected","true"),t.isNullOrUndefined(n)&&(n="null"),this.allowFiltering&&!this.enableVirtualization&&"autocomplete"!==this.getModuleName()){var r=this.getIndexByValueFilter(n);t.isNullOrUndefined(r)?this.activeIndex=this.getIndexByValue(n):this.activeIndex=r}else this.activeIndex=this.getIndexByValue(n)},s.prototype.activeItem=function(e){this.isValidLI(e)&&!e.classList.contains(U.selected)&&(this.removeSelection(),e.classList.add(U.selected),this.removeHover(),e.setAttribute("aria-selected","true"))},s.prototype.setValue=function(e){var i=this.getItemData();null===i.value?n.Input.setValue(null,this.inputElement,this.floatLabelType,this.showClearButton):n.Input.setValue(i.text,this.inputElement,this.floatLabelType,this.showClearButton),this.valueTemplate&&null!==this.itemData?this.setValueTemplate():t.isNullOrUndefined(this.valueTempElement)||this.inputElement.previousSibling!==this.valueTempElement||(t.detach(this.valueTempElement),this.inputElement.style.display="block"),t.isNullOrUndefined(i.value)||this.enableVirtualization||!this.allowFiltering||(this.activeIndex=this.getIndexByValueFilter(i.value));var s=M.clearIcon,l=this.isFiltering()&&this.filterInput&&"combobox"===this.getModuleName()&&this.filterInput.parentElement.querySelector("."+s);return this.isFiltering()&&l&&l.style.removeProperty("visibility"),this.previousValue===i.value?(this.isSelected=!1,!0):(this.isSelected=!this.initial,this.isSelectCustom=!1,"dropdownlist"===this.getModuleName()&&this.updateIconState(),!1)},s.prototype.setSelection=function(e,t){var s=this;if(this.isValidLI(e)&&(!e.classList.contains(U.selected)||this.isPopupOpen&&this.isSelected&&e.classList.contains(U.selected)))this.updateSelectedItem(e,t,!1,!0);else if(this.setSelectOptions(e,t),this.enableVirtualization){var l=this.fields.value?this.fields.value:"";if(this.dataSource instanceof i.DataManager)this.dataSource.executeQuery((new i.Query).where(new i.Predicate(l,"equal",this.value))).then(function(e){if(e.result.length>0){s.itemData=e.result[0];var t=s.getItemData();(s.value===t.value&&s.text!==t.text||s.value!==t.value&&s.text===t.text)&&s.setProperties({text:t.text,value:t.value})}});else{var n=new i.DataManager(this.dataSource).executeLocal((new i.Query).where(new i.Predicate(l,"equal",this.value)));if(n&&n.length>0){this.itemData=n[0];var o=this.getItemData();(this.value===o.value&&this.text!==o.text||this.value!==o.value&&this.text===o.text)&&this.setProperties({text:o.text,value:o.value})}}}},s.prototype.setSelectOptions=function(e,i){this.list&&this.removeHover(),this.previousSelectedLI=t.isNullOrUndefined(this.selectedLI)?null:this.selectedLI,this.selectedLI=e,this.setValue(i)||((!this.isPopupOpen&&!t.isNullOrUndefined(e)||this.isPopupOpen&&!t.isNullOrUndefined(i)&&("keydown"!==i.type||"keydown"===i.type&&"enter"===i.action))&&(this.isSelectCustom=!1,this.onChangeEvent(i)),!this.isPopupOpen||t.isNullOrUndefined(this.selectedLI)||null===this.itemData||i&&"click"===i.type||this.setScrollPosition(i),"mozilla"!==t.Browser.info.name&&this.targetElement()&&(t.attributes(this.targetElement(),{"aria-describedby":""!==this.inputElement.id?this.inputElement.id:this.element.id}),this.targetElement().removeAttribute("aria-live")),!this.isPopupOpen||t.isNullOrUndefined(this.ulElement)||t.isNullOrUndefined(this.ulElement.getElementsByClassName("e-item-focus")[0])?!this.isPopupOpen||t.isNullOrUndefined(this.ulElement)||t.isNullOrUndefined(this.ulElement.getElementsByClassName("e-active")[0])||t.attributes(this.targetElement(),{"aria-activedescendant":this.ulElement.getElementsByClassName("e-active")[0].id}):t.attributes(this.targetElement(),{"aria-activedescendant":this.ulElement.getElementsByClassName("e-item-focus")[0].id}))},s.prototype.dropdownCompiler=function(e){var t=!1;if("function"!=typeof e&&e)try{t=!!document.querySelectorAll(e).length}catch(e){t=!1}return t},s.prototype.setValueTemplate=function(){var e;this.isReact&&(this.clearTemplate(["valueTemplate"]),this.valueTempElement&&(t.detach(this.valueTempElement),this.inputElement.style.display="block",this.valueTempElement=null)),this.valueTempElement||(this.valueTempElement=this.createElement("span",{className:M.value}),this.inputElement.parentElement.insertBefore(this.valueTempElement,this.inputElement),this.inputElement.style.display="none"),this.isReact||(this.valueTempElement.innerHTML="");var i=this.dropdownCompiler(this.valueTemplate),s=(e="function"!=typeof this.valueTemplate&&i?t.compile(document.querySelector(this.valueTemplate).innerHTML.trim()):t.compile(this.valueTemplate))(this.itemData,this,"valueTemplate",this.valueTemplateId,this.isStringTemplate,null,this.valueTempElement);s&&s.length>0&&t.append(s,this.valueTempElement),this.renderReactTemplates()},s.prototype.removeSelection=function(){if(this.list){var e=this.list.querySelectorAll("."+U.selected);e.length&&(t.removeClass(e,U.selected),e[0].removeAttribute("aria-selected"))}},s.prototype.getItemData=function(){var e=this.fields,i=null;i=this.itemData;var s,l;return t.isNullOrUndefined(i)||(s=t.getValue(e.value,i),l=t.getValue(e.text,i)),{value:t.isNullOrUndefined(i)||t.isUndefined(s)?i:s,text:t.isNullOrUndefined(i)||t.isUndefined(s)?i:l}},s.prototype.onChangeEvent=function(e){var t=this.getItemData(),i=this.isSelectCustom?null:this.activeIndex;this.setProperties({index:i,text:t.text,value:t.value},!0),this.detachChangeEvent(e)},s.prototype.detachChanges=function(e){return"string"==typeof e||"boolean"==typeof e||"number"==typeof e?Object.defineProperties({},{value:{value:e,enumerable:!0},text:{value:e,enumerable:!0}}):e},s.prototype.detachChangeEvent=function(e){if(this.isSelected=!1,this.previousValue=this.value,this.activeIndex=this.index,this.typedString=t.isNullOrUndefined(this.text)?"":this.text,!this.initial){var i=this.detachChanges(this.itemData),s=void 0;s="string"==typeof this.previousItemData||"boolean"==typeof this.previousItemData||"number"==typeof this.previousItemData?Object.defineProperties({},{value:{value:this.previousItemData,enumerable:!0},text:{value:this.previousItemData,enumerable:!0}}):this.previousItemData,this.setHiddenValue();var l={e:e,item:this.item,itemData:i,previousItem:this.previousSelectedLI,previousItemData:s,isInteracted:!!e,value:this.value,element:this.element,event:e};this.isAngular&&this.preventChange?this.preventChange=!1:this.trigger("change",l)}!t.isNullOrUndefined(this.value)&&""!==this.value||"Always"===this.floatLabelType||t.removeClass([this.inputWrapper.container],"e-valid-input")},s.prototype.setHiddenValue=function(){if(t.isNullOrUndefined(this.value))this.hiddenElement.innerHTML="";else if(this.hiddenElement.querySelector("option"))(e=this.hiddenElement.querySelector("option")).textContent=this.text,e.setAttribute("value",this.value.toString());else if(!t.isNullOrUndefined(this.hiddenElement)){this.hiddenElement.innerHTML="<option selected>"+this.text+"</option>";var e=this.hiddenElement.querySelector("option");e.setAttribute("value",this.value.toString())}},s.prototype.onFilterUp=function(e){if(e.ctrlKey&&86===e.keyCode||!this.isValidKey&&40!==e.keyCode&&38!==e.keyCode)this.isValidKey=!1;else switch(this.isValidKey=!1,e.keyCode){case 38:case 40:"autocomplete"!==this.getModuleName()||this.isPopupOpen||this.preventAltUp||this.isRequested?this.preventAutoFill=!1:(this.preventAutoFill=!0,this.searchLists(e)),this.preventAltUp=!1,"autocomplete"!==this.getModuleName()||t.isNullOrUndefined(this.ulElement)||t.isNullOrUndefined(this.ulElement.getElementsByClassName("e-item-focus")[0])||t.attributes(this.targetElement(),{"aria-activedescendant":this.ulElement.getElementsByClassName("e-item-focus")[0].id}),e.preventDefault();break;case 46:case 8:this.typedString=this.filterInput.value,!this.isPopupOpen&&""!==this.typedString||this.isPopupOpen&&this.queryString.length>0?(this.preventAutoFill=!0,this.searchLists(e)):""===this.typedString&&""===this.queryString&&"autocomplete"!==this.getModuleName()?(this.preventAutoFill=!0,this.searchLists(e)):""===this.typedString&&(this.list&&this.resetFocusElement(),this.activeIndex=null,"dropdownlist"!==this.getModuleName()&&(this.preventAutoFill=!0,this.searchLists(e),"autocomplete"===this.getModuleName()&&this.hidePopup())),e.preventDefault();break;default:this.typedString=this.filterInput.value,this.preventAutoFill=!1,this.searchLists(e),(this.enableVirtualization&&"autocomplete"!==this.getModuleName()||"autocomplete"===this.getModuleName()&&!(this.dataSource instanceof i.DataManager)||"autocomplete"===this.getModuleName()&&this.dataSource instanceof i.DataManager&&0!=this.totalItemCount)&&this.getFilteringSkeletonCount()}},s.prototype.getFilteringSkeletonCount=function(){var e=this.dataCount-this.viewPortInfo.endIndex,t=this.skeletonCount;this.getSkeletonCount(!0),this.skeletonCount=this.dataCount>2*this.itemCount?this.skeletonCount:e>this.skeletonCount?this.skeletonCount:e>0?e:0;var i=!0;if("autocomplete"===this.getModuleName()&&0!=this.totalItemCount&&this.totalItemCount<2*this.itemCount&&(this.skeletonCount=0,i=!1),!this.list.classList.contains(U.noData)){this.skeletonCount;t!==this.skeletonCount&&i?this.UpdateSkeleton(!0,Math.abs(t-this.skeletonCount)):this.UpdateSkeleton(),this.liCollections=this.list.querySelectorAll(".e-list-item"),this.list.getElementsByClassName("e-virtual-ddl").length>0&&(this.list.getElementsByClassName("e-virtual-ddl")[0].style=this.GetVirtualTrackHeight()),this.list.getElementsByClassName("e-virtual-ddl-content").length>0&&(this.list.getElementsByClassName("e-virtual-ddl-content")[0].style=this.getTransformValues())}},s.prototype.getSkeletonCount=function(e){this.virtualListHeight=null!=this.listHeight?parseInt(this.listHeight,10):this.virtualListHeight;var t=this.virtualListHeight>0?Math.floor(this.virtualListHeight/this.listItemHeight):0;this.skeletonCount=2*t<this.itemCount?this.itemCount:2*t,this.itemCount=e?this.itemCount:this.skeletonCount,this.skeletonCount=Math.floor(this.skeletonCount/2)+2},s.prototype.onFilterDown=function(e){switch(e.keyCode){case 13:break;case 40:case 38:this.queryString=this.filterInput.value,e.preventDefault();break;case 9:this.isPopupOpen&&"autocomplete"!==this.getModuleName()&&e.preventDefault();break;default:this.prevSelectPoints=this.getSelectionPoints(),this.queryString=this.filterInput.value}},s.prototype.removeFillSelection=function(){if(this.isInteracted){var e=this.getSelectionPoints();this.inputElement.setSelectionRange(e.end,e.end)}},s.prototype.getQuery=function(e){var t;if(!this.isCustomFilter&&this.allowFiltering&&this.filterInput){t=e?e.clone():this.query?this.query.clone():new i.Query;var s=""===this.typedString?"contains":this.filterType,l=this.typeOfData(this.dataSource).typeof;if((this.dataSource instanceof i.DataManager||"string"!==l)&&"number"!==l){var n=this.fields.text?this.fields.text:"";t.where(n,s,this.typedString,this.ignoreCase,this.ignoreAccent)}else t.where("",s,this.typedString,this.ignoreCase,this.ignoreAccent)}else t=e?e.clone():this.query?this.query.clone():new i.Query;if(this.enableVirtualization&&0!=this.viewPortInfo.endIndex&&(!(this.dataSource instanceof i.DataManager)||this.dataSource instanceof i.DataManager&&this.virtualGroupDataSource)){var o=this.getTakeValue(),r=!1;if(t)for(var a=0;a<t.queries.length;a++)if("onSkip"===t.queries[a].fn){r=!0;break}!this.allowFiltering&&this.isPopupOpen&&r||t.skip(this.virtualItemStartIndex),this.isIncrementalRequest?t.take(this.incrementalEndIndex):t.take(o),t.requiresCount()}return t},s.prototype.getSelectionPoints=function(){var e=this.inputElement;return{start:Math.abs(e.selectionStart),end:Math.abs(e.selectionEnd)}},s.prototype.searchLists=function(e){var t=this;if(this.isTyped=!0,this.activeIndex=null,this.isListSearched=!0,this.filterInput.parentElement.querySelector("."+M.clearIcon)&&(this.filterInput.parentElement.querySelector("."+M.clearIcon).style.visibility=""===this.filterInput.value?"hidden":"visible"),this.isDataFetched=!1,this.isFiltering()){this.checkAndResetCache();var i={preventDefaultAction:!1,text:this.filterInput.value,updateData:function(e,s,l){i.cancel||(t.isCustomFilter=!0,t.filteringAction(e,s,l))},baseEventArgs:e,cancel:!1};this.trigger("filtering",i,function(e){e.cancel||t.isCustomFilter||e.preventDefaultAction||t.filteringAction(t.dataSource,null,t.fields)})}},s.prototype.filter=function(e,t,i){this.isCustomFilter=!0,this.filteringAction(e,t,i)},s.prototype.filteringAction=function(e,i,s){if(!t.isNullOrUndefined(this.filterInput)){this.beforePopupOpen=!(!this.isPopupOpen&&"combobox"===this.getModuleName()&&""===this.filterInput.value);var l=this.list.classList.contains(U.noData);if(""!==this.filterInput.value.trim()||this.itemTemplate){if(this.isNotSearchList=!1,i=""===this.filterInput.value.trim()?null:i,this.enableVirtualization&&this.isFiltering()&&this.isTyped&&(this.isPreventScrollAction=!0,this.list.scrollTop=0,this.previousStartIndex=0,this.virtualListInfo=null),this.resetList(e,s,i),"dropdownlist"===this.getModuleName()&&this.list.classList.contains(U.noData)&&(this.popupContentElement.setAttribute("role","status"),this.popupContentElement.setAttribute("id","no-record"),t.attributes(this.filterInputObj.container,{"aria-activedescendant":"no-record"})),this.enableVirtualization&&l&&!this.list.classList.contains(U.noData)&&(this.list.querySelector(".e-virtual-ddl-content")||this.list.appendChild(this.createElement("div",{className:"e-virtual-ddl-content",styles:this.getTransformValues()})).appendChild(this.list.querySelector(".e-list-parent")),!this.list.querySelector(".e-virtual-ddl"))){n=this.createElement("div",{id:this.element.id+"_popup",className:"e-virtual-ddl",styles:this.GetVirtualTrackHeight()});document.getElementsByClassName("e-popup")[0].querySelector(".e-dropdownbase").appendChild(n)}}else{if(this.actionCompleteData.isUpdated=!1,this.isTyped=!1,!t.isNullOrUndefined(this.actionCompleteData.ulElement)&&!t.isNullOrUndefined(this.actionCompleteData.list)){if(this.enableVirtualization&&(this.totalItemCount=this.dataSource&&this.dataSource.length?this.dataSource.length:0,this.resetList(e,s,i),l&&!this.list.classList.contains(U.noData)&&(this.list.querySelector(".e-virtual-ddl-content")||this.list.appendChild(this.createElement("div",{className:"e-virtual-ddl-content",styles:this.getTransformValues()})).appendChild(this.list.querySelector(".e-list-parent")),!this.list.querySelector(".e-virtual-ddl")))){var n=this.createElement("div",{id:this.element.id+"_popup",className:"e-virtual-ddl",styles:this.GetVirtualTrackHeight()});document.getElementsByClassName("e-popup")[0].querySelector(".e-dropdownbase").appendChild(n)}this.onActionComplete(this.actionCompleteData.ulElement,this.actionCompleteData.list)}this.isTyped=!0,t.isNullOrUndefined(this.itemData)||"dropdownlist"!==this.getModuleName()||(this.focusIndexItem(),this.setScrollPosition()),this.isNotSearchList=!0}this.enableVirtualization&&this.getFilteringSkeletonCount(),this.renderReactTemplates()}},s.prototype.setSearchBox=function(e){if(this.isFiltering()){var i=e.querySelector("."+M.filterParent)?e.querySelector("."+M.filterParent):this.createElement("span",{className:M.filterParent});this.filterInput=this.createElement("input",{attrs:{type:"text"},className:M.filterInput}),this.element.parentNode.insertBefore(this.filterInput,this.element);var s=!1;return t.Browser.isDevice&&(s=!0),this.filterInputObj=n.Input.createInput({element:this.filterInput,buttons:s?[M.backIcon,M.filterBarClearIcon]:[M.filterBarClearIcon],properties:{placeholder:this.filterBarPlaceholder}},this.createElement),t.isNullOrUndefined(this.cssClass)||(-1!==this.cssClass.split(" ").indexOf("e-outline")?t.addClass([this.filterInputObj.container],"e-outline"):-1!==this.cssClass.split(" ").indexOf("e-filled")&&t.addClass([this.filterInputObj.container],"e-filled")),t.append([this.filterInputObj.container],i),t.prepend([i],e),t.attributes(this.filterInput,{"aria-disabled":"false",role:"combobox",autocomplete:"off",autocapitalize:"off",spellcheck:"false"}),this.clearIconElement=this.filterInput.parentElement.querySelector("."+M.clearIcon),!t.Browser.isDevice&&this.clearIconElement&&(t.EventHandler.add(this.clearIconElement,"click",this.clearText,this),this.clearIconElement.style.visibility="hidden"),t.Browser.isDevice?this.searchKeyModule=new t.KeyboardEvents(this.filterInput,{keyAction:this.mobileKeyActionHandler.bind(this),keyConfigs:this.keyConfigure,eventName:"keydown"}):this.searchKeyModule=new t.KeyboardEvents(this.filterInput,{keyAction:this.keyActionHandler.bind(this),keyConfigs:this.keyConfigure,eventName:"keydown"}),t.EventHandler.add(this.filterInput,"input",this.onInput,this),t.EventHandler.add(this.filterInput,"keyup",this.onFilterUp,this),t.EventHandler.add(this.filterInput,"keydown",this.onFilterDown,this),t.EventHandler.add(this.filterInput,"blur",this.onBlurHandler,this),t.EventHandler.add(this.filterInput,"paste",this.pasteHandler,this),this.filterInputObj}return j},s.prototype.onInput=function(e){this.isValidKey=!0,"combobox"===this.getModuleName()&&this.updateIconState(),t.Browser.isDevice&&"mozilla"===t.Browser.info.name&&(this.typedString=this.filterInput.value,this.preventAutoFill=!0,this.searchLists(e))},s.prototype.pasteHandler=function(e){var t=this;setTimeout(function(){t.typedString=t.filterInput.value,t.searchLists(e)})},s.prototype.onActionFailure=function(t){e.prototype.onActionFailure.call(this,t),this.beforePopupOpen&&this.renderPopup()},s.prototype.UpdateSkeleton=function(e,t){var i=this.list.querySelector(".e-virtual-ddl-content"),s=this.list.querySelector(".e-virtual-list");if(i&&(!s||e)&&this.enableVirtualization)for(var l=e?t:this.skeletonCount,n=0;n<l;n++){var r=this.createElement("li",{className:M.virtualList,styles:"overflow: inherit"});this.enableVirtualization&&this.itemTemplate&&(r.style.height=this.listItemHeight+"px");var a=new o.Skeleton({shape:"Text",height:"10px",width:"95%",cssClass:"e-skeleton-text"});a.appendTo(this.createElement("div")),r.appendChild(a.element),i.firstChild.insertBefore(r,i.firstChild.children[0])}},s.prototype.getTakeValue=function(){return this.allowFiltering&&"dropdownlist"===this.getModuleName()&&t.Browser.isDevice?Math.round(window.outerHeight/this.listItemHeight):this.itemCount},s.prototype.onActionComplete=function(s,l,n,o){var r=this;if(this.dataSource instanceof i.DataManager&&!t.isNullOrUndefined(n)&&!this.virtualGroupDataSource&&(this.totalItemCount=n.count),this.isNotSearchList&&!this.enableVirtualization)return void(this.isNotSearchList=!1);var a=this.itemCount;if(this.isActive||!t.isNullOrUndefined(s)){var h=this.selectedLI?this.selectedLI.cloneNode(!0):null;if(e.prototype.onActionComplete.call(this,s,l,n),this.skeletonCount=0!=this.totalItemCount&&this.totalItemCount<2*this.itemCount?0:this.skeletonCount,this.updateSelectElementData(this.allowFiltering),this.isRequested&&!t.isNullOrUndefined(this.searchKeyEvent)&&"keydown"===this.searchKeyEvent.type&&(this.isRequested=!1,this.keyActionHandler(this.searchKeyEvent),this.searchKeyEvent=null),this.isRequested&&!t.isNullOrUndefined(this.searchKeyEvent)&&(this.incrementalSearch(this.searchKeyEvent),this.searchKeyEvent=null),this.enableVirtualization||(this.list.scrollTop=0),t.isNullOrUndefined(s)||t.attributes(s,{id:this.element.id+"_options",role:"listbox","aria-hidden":"false","aria-label":"listbox"}),this.initRemoteRender){if(this.initial=!0,this.activeIndex=this.index,this.initRemoteRender=!1,this.value&&this.dataSource instanceof i.DataManager){var p=t.isNullOrUndefined(this.fields.value)?this.fields.text:this.fields.value,u=this.fields.value.split(".");l.some(function(e){return t.isNullOrUndefined(e[p])&&u.length>1?r.checkFieldValue(e,u)===r.value:e[p]===r.value})?this.updateValues():this.dataSource.executeQuery(this.getQuery(this.query).where(new i.Predicate(p,"equal",this.value))).then(function(e){e.result.length>0?(r.addItem(e.result,l.length),r.updateValues()):r.updateValues()})}else this.updateValues();this.initial=!1}else"autocomplete"===this.getModuleName()&&this.value&&this.setInputValue();if("autocomplete"!==this.getModuleName()&&this.isFiltering()&&!this.isTyped)(!this.actionCompleteData.isUpdated||!this.isCustomFilter&&!this.isFilterFocus||t.isNullOrUndefined(this.itemData)&&this.allowFiltering&&(this.dataSource instanceof i.DataManager||!t.isNullOrUndefined(this.dataSource)&&!t.isNullOrUndefined(this.dataSource.length)&&0!==this.dataSource.length))&&(this.itemTemplate&&"EJS-COMBOBOX"===this.element.tagName&&this.allowFiltering?setTimeout(function(){r.updateActionCompleteDataValues(s,l)},0):this.updateActionCompleteDataValues(s,l)),(this.allowCustom||this.allowFiltering&&!this.isValueInList(l,this.value)&&this.dataSource instanceof i.DataManager)&&!this.enableVirtualization?this.addNewItem(l,h):(this.allowCustom||this.allowFiltering&&this.isValueInList(l,this.value))&&!this.enableVirtualization&&this.addNewItem(l,h),(!t.isNullOrUndefined(this.itemData)||t.isNullOrUndefined(this.itemData)&&this.enableVirtualization)&&this.focusIndexItem(),this.enableVirtualization&&this.updateActionCompleteDataValues(s,l);else if(this.enableVirtualization&&"autocomplete"!==this.getModuleName()&&!this.isFiltering()){var d=this.getItemData().value;this.activeIndex=this.getIndexByValue(d);var c=this.findListElement(this.list,"li","data-value",d);this.selectedLI=c}else this.enableVirtualization&&"autocomplete"===this.getModuleName()&&(this.activeIndex=this.skeletonCount);this.beforePopupOpen&&(this.renderPopup(n),this.enableVirtualization&&(this.list.querySelector(".e-virtual-list")||(this.UpdateSkeleton(),this.liCollections=this.list.querySelectorAll(".e-list-item"))),this.enableVirtualization&&a!=this.itemCount&&this.resetList(this.dataSource,this.fields))}},s.prototype.isValueInList=function(e,t){if(Array.isArray(e)){for(var i=0;i<e.length;i++)if(e[i]===t)return!0}else if("object"==typeof e&&null!==e)for(var s in e)if(Object.prototype.hasOwnProperty.call(e,s)&&e[s]===t)return!0;return!1},s.prototype.checkFieldValue=function(e,t){var i=e;return t.forEach(function(e){i=i[e]}),i},s.prototype.updateActionCompleteDataValues=function(e,t){this.actionCompleteData={ulElement:e.cloneNode(!0),list:t,isUpdated:!0},this.actionData.list!==this.actionCompleteData.list&&this.actionCompleteData.ulElement&&this.actionCompleteData.list&&(this.actionData=this.actionCompleteData)},s.prototype.addNewItem=function(e,i){var s=this;if(!t.isNullOrUndefined(this.itemData)&&!t.isNullOrUndefined(i)){var l=this.getItemData().value;e.some(function(e){return("string"==typeof e||"number"==typeof e)&&e===l||t.getValue(s.fields.value,e)===l})||this.addItem(this.itemData)}},s.prototype.updateActionCompleteData=function(e,t,i){var s=this;"autocomplete"!==this.getModuleName()&&this.actionCompleteData.ulElement&&(this.itemTemplate&&"EJS-COMBOBOX"===this.element.tagName&&this.allowFiltering?setTimeout(function(){s.actionCompleteDataUpdate(e,t,i)},0):this.actionCompleteDataUpdate(e,t,i))},s.prototype.actionCompleteDataUpdate=function(e,t,i){null!==i?this.actionCompleteData.ulElement.insertBefore(e.cloneNode(!0),this.actionCompleteData.ulElement.childNodes[i]):this.actionCompleteData.ulElement.appendChild(e.cloneNode(!0)),this.isFiltering()&&this.actionCompleteData.list.indexOf(t)<0&&this.actionCompleteData.list.push(t)},s.prototype.focusIndexItem=function(){var e=this.getItemData().value;this.activeIndex=this.getIndexByValue(e);var i=this.findListElement(this.list,"li","data-value",e);this.selectedLI=i,this.activeItem(i),this.enableVirtualization&&t.isNullOrUndefined(i)||this.removeFocus()},s.prototype.updateSelection=function(){var e=this.list.querySelector("."+U.selected);e?(this.setProperties({index:this.getIndexByValue(e.getAttribute("data-value"))}),this.activeIndex=this.index):(this.removeFocus(),this.list.querySelector("."+U.li).classList.add(M.focus))},s.prototype.updateSelectionList=function(){if(!(this.list&&this.list.querySelector(".e-active"))&&!t.isNullOrUndefined(this.value)){var e=this.findListElement(this.list,"li","data-value",this.value);e&&e.classList.add("e-active")}},s.prototype.checkAndResetCache=function(){this.enableVirtualization&&(this.generatedDataObject={},this.virtualItemStartIndex=this.virtualItemEndIndex=0,this.viewPortInfo={currentPageNumber:null,direction:null,sentinelInfo:{},offsets:{},startIndex:0,endIndex:this.itemCount},this.selectedValueInfo=null)},s.prototype.removeFocus=function(){var e=this.list.querySelectorAll("."+M.focus);e&&e.length&&t.removeClass(e,M.focus)},s.prototype.getTransformValues=function(){var e=this.viewPortInfo.startIndex*this.listItemHeight;return e-=this.skeletonCount*this.listItemHeight,"transform: translate(0px, "+(e=0===this.viewPortInfo.startIndex&&this.listData&&0===this.listData.length?0:e)+"px);"},s.prototype.GetVirtualTrackHeight=function(){var e="height: "+((this.totalItemCount===this.viewPortInfo.endIndex?this.totalItemCount*this.listItemHeight-this.itemCount*this.listItemHeight:this.totalItemCount*this.listItemHeight)-this.itemCount*this.listItemHeight)+"px;";return"autocomplete"===this.getModuleName()&&0===this.skeletonCount?"height: 0px;":e},s.prototype.renderPopup=function(e){var i=this;if(this.popupObj&&document.body.contains(this.popupObj.element))return void this.refreshPopup();var s={cancel:!1};this.trigger("beforeOpen",s,function(s){if(s.cancel)i.beforePopupOpen=!1;else{var l=i.createElement("div",{id:i.element.id+"_popup",className:"e-ddl e-popup "+(null!==i.cssClass?i.cssClass:"")});l.setAttribute("aria-label",i.element.id),l.setAttribute("role","dialog");var n=i.setSearchBox(l);if(i.listHeight=t.formatUnit(i.popupHeight),i.headerTemplate&&i.setHeaderTemplate(l),t.append([i.list],l),i.footerTemplate&&i.setFooterTemplate(l),document.body.appendChild(l),l.style.top="0px",i.enableVirtualization&&i.itemTemplate){var o=l.querySelectorAll("li.e-list-item:not(.e-virtual-list)");i.listItemHeight=o.length>0?Math.ceil(o[0].getBoundingClientRect().height):0}if(i.enableVirtualization&&!i.list.classList.contains(U.noData))if(i.list.querySelector(".e-virtual-ddl-content")?i.list.getElementsByClassName("e-virtual-ddl-content")[0].style=i.getTransformValues():i.list.appendChild(i.createElement("div",{className:"e-virtual-ddl-content",styles:i.getTransformValues()})).appendChild(i.list.querySelector(".e-list-parent")),i.UpdateSkeleton(),i.liCollections=i.list.querySelectorAll("."+U.li),i.virtualItemCount=i.itemCount,i.list.querySelector(".e-virtual-ddl"))i.list.getElementsByClassName("e-virtual-ddl")[0].style=i.GetVirtualTrackHeight();else{var r=i.createElement("div",{id:i.element.id+"_popup",className:"e-virtual-ddl",styles:i.GetVirtualTrackHeight()});l.querySelector(".e-dropdownbase").appendChild(r)}if(l.style.visibility="hidden","auto"!==i.popupHeight){if(i.searchBoxHeight=0,t.isNullOrUndefined(n.container)||"combobox"===i.getModuleName()||"autocomplete"===i.getModuleName()||(i.searchBoxHeight=n.container.parentElement.getBoundingClientRect().height,i.listHeight=(parseInt(i.listHeight,10)-i.searchBoxHeight).toString()+"px"),i.headerTemplate){i.header=i.header?i.header:l.querySelector(".e-ddl-header");a=Math.round(i.header.getBoundingClientRect().height);i.listHeight=(parseInt(i.listHeight,10)-(a+i.searchBoxHeight)).toString()+"px"}if(i.footerTemplate){i.footer=i.footer?i.footer:l.querySelector(".e-ddl-footer");var a=Math.round(i.footer.getBoundingClientRect().height);i.listHeight=(parseInt(i.listHeight,10)-(a+i.searchBoxHeight)).toString()+"px"}i.list.style.maxHeight=(parseInt(i.listHeight,10)-2).toString()+"px",l.style.maxHeight=t.formatUnit(i.popupHeight)}else l.style.height="auto";var h=0,p=void 0;if(i.isPreventScrollAction=!0,!t.isNullOrUndefined(i.selectedLI)&&!t.isNullOrUndefined(i.activeIndex)&&i.activeIndex>=0?i.setScrollPosition():i.enableVirtualization?i.setScrollPosition():i.list.scrollTop=0,t.Browser.isDevice&&!i.allowFiltering&&("dropdownlist"===i.getModuleName()||i.isDropDownClick&&"combobox"===i.getModuleName())){h=i.getOffsetValue(l);var u=i.isEmptyList()?i.list:i.liCollections[0];t.isNullOrUndefined(i.inputElement)||(p=-(parseInt(getComputedStyle(u).textIndent,10)-parseInt(getComputedStyle(i.inputElement).paddingLeft,10)+parseInt(getComputedStyle(i.inputElement.parentElement).borderLeftWidth,10)))}i.createPopup(l,h,p),i.popupContentElement=i.popupObj.element.querySelector(".e-content"),i.getFocusElement(),i.checkCollision(l),t.Browser.isDevice&&(i.popupObj.element.classList.add(M.device),("dropdownlist"===i.getModuleName()||"combobox"===i.getModuleName()&&!i.allowFiltering&&i.isDropDownClick)&&(i.popupObj.collision={X:"fit",Y:"fit"}),i.isFilterLayout()&&(i.popupObj.element.classList.add(M.mobileFilter),i.popupObj.position={X:0,Y:0},i.popupObj.dataBind(),t.attributes(i.popupObj.element,{style:"left:0px;right:0px;top:0px;bottom:0px;"}),t.addClass([document.body,i.popupObj.element],M.popupFullScreen),i.setSearchBoxPosition(),i.backIconElement=n.container.querySelector(".e-back-icon"),i.clearIconElement=n.container.querySelector("."+M.clearIcon),t.EventHandler.add(i.backIconElement,"click",i.clickOnBackIcon,i),t.EventHandler.add(i.clearIconElement,"click",i.clearText,i))),l.style.visibility="visible",t.addClass([l],"e-popup-close");for(var d=0,c=i.popupObj.getScrollableParent(i.inputWrapper.container);d<c.length;d++){var m=c[d];t.EventHandler.add(m,"scroll",i.scrollHandler,i)}t.isNullOrUndefined(i.list)||(i.unWireListEvents(),i.wireListEvents()),i.selectedElementID=i.selectedLI?i.selectedLI.id:null,i.enableVirtualization&&(i.notify("bindScrollEvent",{module:"VirtualScroll",component:i.getModuleName(),enable:i.enableVirtualization}),setTimeout(function(){(i.value||i.list.querySelector(".e-active"))&&(i.updateSelectionList(),i.selectedValueInfo&&i.viewPortInfo&&i.viewPortInfo.offsets.top?i.list.scrollTop=i.viewPortInfo.offsets.top:i.scrollBottom(!0,!0))},5)),t.attributes(i.targetElement(),{"aria-expanded":"true","aria-owns":i.element.id+"_popup","aria-controls":i.element.id}),"dropdownlist"!==i.getModuleName()&&i.list.classList.contains("e-nodata")&&(t.attributes(i.targetElement(),{"aria-activedescendant":"no-record"}),i.popupContentElement.setAttribute("role","status"),i.popupContentElement.setAttribute("id","no-record")),i.inputElement.setAttribute("aria-expanded","true"),i.inputElement.setAttribute("aria-controls",i.element.id);var f=i.isFiltering()?i.filterInput.parentElement:i.inputWrapper.container;t.addClass([f],[M.inputFocus]);var v={name:"FadeIn",duration:100};i.beforePopupOpen=!0;var g={popup:i.popupObj,event:e,cancel:!1,animation:v};i.trigger("open",g,function(e){e.cancel?(i.beforePopupOpen=!1,i.destroyPopup()):(t.isNullOrUndefined(i.inputWrapper)||t.addClass([i.inputWrapper.container],[M.iconAnimation]),i.renderReactTemplates(),t.isNullOrUndefined(i.popupObj)||i.popupObj.show(new t.Animation(e.animation),1e3===i.zIndex?i.element:null))})}})},s.prototype.checkCollision=function(e){(!t.Browser.isDevice||t.Browser.isDevice&&"dropdownlist"!==this.getModuleName()&&!this.isDropDownClick)&&(l.isCollide(e).length>0&&(e.style.marginTop=-parseInt(getComputedStyle(e).marginTop,10)+"px"),this.popupObj.resolveCollision())},s.prototype.getOffsetValue=function(e){var t=getComputedStyle(e),i=parseInt(t.borderTopWidth,10),s=parseInt(t.borderBottomWidth,10);return this.setPopupPosition(i+s)},s.prototype.createPopup=function(e,i,s){var n=this;this.popupObj=new l.Popup(e,{width:this.setWidth(),targetType:"relative",relateTo:this.inputWrapper.container,collision:this.enableRtl?{X:"fit",Y:"flip"}:{X:"flip",Y:"flip"},offsetY:i,enableRtl:this.enableRtl,offsetX:s,position:this.enableRtl?{X:"right",Y:"bottom"}:{X:"left",Y:"bottom"},zIndex:this.zIndex,close:function(){n.isDocumentClick||n.focusDropDown(),n.isReact&&n.clearTemplate(["headerTemplate","footerTemplate"]),n.isNotSearchList=!1,n.isDocumentClick=!1,n.destroyPopup(),n.isFiltering()&&n.actionCompleteData.list&&n.actionCompleteData.list[0]&&(n.isActive=!0,n.enableVirtualization?n.onActionComplete(n.ulElement,n.listData,null,!0):n.onActionComplete(n.actionCompleteData.ulElement,n.actionCompleteData.list,null,!0))},open:function(){t.EventHandler.add(document,"mousedown",n.onDocumentClick,n),n.isPopupOpen=!0;var e=n.actionCompleteData&&n.actionCompleteData.ulElement&&n.actionCompleteData.ulElement.querySelector("li"),i=n.list.querySelector("ul li");t.isNullOrUndefined(n.ulElement)||t.isNullOrUndefined(n.ulElement.getElementsByClassName("e-item-focus")[0])?t.isNullOrUndefined(n.ulElement)||t.isNullOrUndefined(n.ulElement.getElementsByClassName("e-active")[0])||t.attributes(n.targetElement(),{"aria-activedescendant":n.ulElement.getElementsByClassName("e-active")[0].id}):t.attributes(n.targetElement(),{"aria-activedescendant":n.ulElement.getElementsByClassName("e-item-focus")[0].id}),n.isFiltering()&&n.itemTemplate&&n.element.tagName===n.getNgDirective()&&e&&i&&e.textContent!==i.textContent&&"EJS-COMBOBOX"!==n.element.tagName&&n.cloneElements(),n.isFilterLayout()&&(t.removeClass([n.inputWrapper.container],[M.inputFocus]),n.isFilterFocus=!0,n.filterInput.focus(),n.inputWrapper.clearButton&&t.addClass([n.inputWrapper.clearButton],M.clearIconHide)),n.activeStateChange()},targetExitViewport:function(){t.Browser.isDevice||n.hidePopup()}})},s.prototype.isEmptyList=function(){return!t.isNullOrUndefined(this.liCollections)&&0===this.liCollections.length},s.prototype.getFocusElement=function(){},s.prototype.isFilterLayout=function(){return"dropdownlist"===this.getModuleName()&&this.allowFiltering},s.prototype.scrollHandler=function(){t.Browser.isDevice&&("dropdownlist"===this.getModuleName()&&!this.isFilterLayout()||"combobox"===this.getModuleName()&&!this.allowFiltering&&this.isDropDownClick)&&this.element&&!this.isElementInViewport(this.element)&&this.hidePopup()},s.prototype.isElementInViewport=function(e){var t=e.getBoundingClientRect();return t.top>=0&&t.left>=0&&t.bottom<=window.innerHeight&&t.right<=window.innerWidth},s.prototype.setSearchBoxPosition=function(){var e=this.filterInput.parentElement.getBoundingClientRect().height;this.popupObj.element.style.maxHeight="100%",this.popupObj.element.style.width="100%",this.list.style.maxHeight=window.innerHeight-e+"px",this.list.style.height=window.innerHeight-e+"px";var i=this.filterInput.parentElement.querySelector("."+M.clearIcon);t.detach(this.filterInput),i.parentElement.insertBefore(this.filterInput,i)},s.prototype.setPopupPosition=function(e){var i,s=e,l=this.list.querySelector("."+M.focus)||this.selectedLI,n=this.isEmptyList()?this.list:this.liCollections[0],o=this.isEmptyList()?this.list:this.liCollections[this.getItems().length-1],r=n.getBoundingClientRect().height;this.listItemHeight=r;var a=this.list.offsetHeight/2,h=t.isNullOrUndefined(l)?n.offsetTop:l.offsetTop;if(o.offsetTop-a<h&&!t.isNullOrUndefined(this.liCollections)&&this.liCollections.length>0&&!t.isNullOrUndefined(l)){var p=this.list.offsetHeight/r,u=parseInt(getComputedStyle(this.list).paddingBottom,10);i=(p-(this.liCollections.length-this.activeIndex))*r-s+u,this.list.scrollTop=l.offsetTop}else h>a&&!this.enableVirtualization?(i=a-r/2,this.list.scrollTop=h-a+r/2):i=h;return-(i=i+r+s-(r-this.inputWrapper.container.offsetHeight)/2)},s.prototype.setWidth=function(){var e=t.formatUnit(this.popupWidth);if(e.indexOf("%")>-1&&(e=(this.inputWrapper.container.offsetWidth*parseFloat(e)/100).toString()+"px"),t.Browser.isDevice&&!this.allowFiltering&&("dropdownlist"===this.getModuleName()||this.isDropDownClick&&"combobox"===this.getModuleName())){var i=this.isEmptyList()?this.list:this.liCollections[0];e=parseInt(e,10)+2*(parseInt(getComputedStyle(i).textIndent,10)-parseInt(getComputedStyle(this.inputElement).paddingLeft,10)+parseInt(getComputedStyle(this.inputElement.parentElement).borderLeftWidth,10))+"px"}return e},s.prototype.scrollBottom=function(e,i,s){var l=this;if(void 0===i&&(i=!1),void 0===s&&(s=null),t.isNullOrUndefined(this.selectedLI)&&this.enableVirtualization&&(this.selectedLI=this.list.querySelector("."+U.li),!t.isNullOrUndefined(this.selectedLI)&&this.selectedLI.classList.contains("e-virtual-list")&&(this.selectedLI=this.liCollections[this.skeletonCount])),!t.isNullOrUndefined(this.selectedLI)){this.isUpwardScrolling=!1;var n=this.list.querySelectorAll(".e-virtual-list").length,o=this.list.querySelector("li:last-of-type")?this.list.querySelector("li:last-of-type").getAttribute("data-value"):null,r=this.virtualListInfo&&this.virtualListInfo.startIndex?this.selectedLI.offsetTop+this.virtualListInfo.startIndex*this.selectedLI.offsetHeight:this.selectedLI.offsetTop,a=this.list.offsetHeight,h=r-n*this.selectedLI.offsetHeight+this.selectedLI.offsetHeight-this.list.scrollTop,p=this.list.scrollTop+h-a,u=!1;p=e?p+2*parseInt(getComputedStyle(this.list).paddingTop,10):p+parseInt(getComputedStyle(this.list).paddingTop,10);var d=r-n*this.selectedLI.offsetHeight+this.selectedLI.offsetHeight-this.list.scrollTop;if(d=this.fields.groupBy&&!t.isNullOrUndefined(this.fixedHeaderElement)?d-this.fixedHeaderElement.offsetHeight:d,0!==this.activeIndex||this.enableVirtualization){if(h>a||!(d>0&&this.list.offsetHeight>d)){var c=this.selectedLI?this.selectedLI.getAttribute("data-value"):null,m="pageDown"==s?this.getPageCount()-2:1;!this.enableVirtualization||this.isKeyBoardAction||i?this.isKeyBoardAction&&this.enableVirtualization&&o&&c===o&&"end"!=s&&!this.isVirtualScrolling?(this.isPreventKeyAction=!0,this.enableVirtualization&&this.itemTemplate?this.list.scrollTop+=p:this.list.scrollTop+=this.selectedLI.offsetHeight*m,this.isPreventKeyAction=!this.IsScrollerAtEnd()&&this.isPreventKeyAction,this.isKeyBoardAction=!1,this.isPreventScrollAction=!1):this.enableVirtualization&&"end"==s?(this.isPreventKeyAction=!1,this.isKeyBoardAction=!1,this.isPreventScrollAction=!1,this.list.scrollTop=this.list.scrollHeight):("pageDown"==s&&this.enableVirtualization&&!this.isVirtualScrolling&&(this.isPreventKeyAction=!1,this.isKeyBoardAction=!1,this.isPreventScrollAction=!1,p+=this.selectedLI.offsetHeight*m),this.list.scrollTop=p):this.list.scrollTop=this.virtualListInfo&&this.virtualListInfo.startIndex?this.virtualListInfo.startIndex*this.listItemHeight:0,u=this.isKeyBoardAction}}else this.list.scrollTop=0,u=this.isKeyBoardAction;this.isKeyBoardAction=u,this.enableVirtualization&&this.fields.groupBy&&this.fixedHeaderElement&&"down"==s&&setTimeout(function(){l.scrollStop(null,!0)},100)}},s.prototype.scrollTop=function(e){if(void 0===e&&(e=null),!t.isNullOrUndefined(this.selectedLI)){var i=this.list.querySelectorAll(".e-virtual-list").length,s=this.virtualListInfo&&this.virtualListInfo.startIndex?this.selectedLI.offsetTop+this.virtualListInfo.startIndex*this.selectedLI.offsetHeight:this.selectedLI.offsetTop,l=s-i*this.selectedLI.offsetHeight-this.list.scrollTop,n=this.list.querySelector("li.e-list-item:not(.e-virtual-list)")?this.list.querySelector("li.e-list-item:not(.e-virtual-list)").getAttribute("data-value"):null;l=this.fields.groupBy&&!t.isNullOrUndefined(this.fixedHeaderElement)?l-this.fixedHeaderElement.offsetHeight:l;var o=s-i*this.selectedLI.offsetHeight+this.selectedLI.offsetHeight-this.list.scrollTop,r=this.enableVirtualization&&"autocomplete"===this.getModuleName()&&l<=0;if(0!==this.activeIndex||this.enableVirtualization)if(l<0||r){var a=this.selectedLI?this.selectedLI.getAttribute("data-value"):null,h="pageUp"==e?this.getPageCount()-2:1;this.enableVirtualization&&this.isKeyBoardAction&&n&&a===n&&"home"!=e&&!this.isVirtualScrolling?(this.isUpwardScrolling=!0,this.isPreventKeyAction=!0,this.list.scrollTop-=this.selectedLI.offsetHeight*h,this.isPreventKeyAction=0!=this.list.scrollTop&&this.isPreventKeyAction,this.isKeyBoardAction=!1,this.isPreventScrollAction=!1):this.enableVirtualization&&"home"==e?(this.isPreventScrollAction=!1,this.isPreventKeyAction=!0,this.isKeyBoardAction=!1,this.list.scrollTo(0,0)):("pageUp"==e&&this.enableVirtualization&&!this.isVirtualScrolling&&(this.isPreventKeyAction=!1,this.isKeyBoardAction=!1,this.isPreventScrollAction=!1,l-=this.selectedLI.offsetHeight*h),this.list.scrollTop=this.list.scrollTop+l)}else o>0&&this.list.offsetHeight>o||(this.list.scrollTop=this.selectedLI.offsetTop-(this.fields.groupBy&&!t.isNullOrUndefined(this.fixedHeaderElement)?this.fixedHeaderElement.offsetHeight:0));else this.list.scrollTop=0}},s.prototype.isEditTextBox=function(){return!1},s.prototype.isFiltering=function(){return this.allowFiltering},s.prototype.isPopupButton=function(){return!0},s.prototype.setScrollPosition=function(e){if(this.isPreventScrollAction=!0,t.isNullOrUndefined(e))this.scrollBottom(!0);else switch(e.action){case"pageDown":case"down":case"end":this.isKeyBoardAction=!0,this.scrollBottom(!1,!1,e.action);break;default:this.isKeyBoardAction="up"==e.action||"pageUp"==e.action||"open"==e.action,this.scrollTop(e.action)}this.isKeyBoardAction=!1},s.prototype.clearText=function(){this.filterInput.value=this.typedString="",this.searchLists(null),this.enableVirtualization&&(this.list.scrollTop=0,this.totalItemCount=this.dataCount=this.dataSource&&this.dataSource.length?this.dataSource.length:0,this.list.getElementsByClassName("e-virtual-ddl")[0]&&(this.list.getElementsByClassName("e-virtual-ddl")[0].style=this.GetVirtualTrackHeight()),this.getSkeletonCount(),this.UpdateSkeleton(),this.liCollections=this.list.querySelectorAll(".e-list-item"),this.list.getElementsByClassName("e-virtual-ddl-content")[0]&&(this.list.getElementsByClassName("e-virtual-ddl-content")[0].style=this.getTransformValues()))},s.prototype.setEleWidth=function(e){t.isNullOrUndefined(e)||("number"==typeof e?this.inputWrapper.container.style.width=t.formatUnit(e):"string"==typeof e&&(this.inputWrapper.container.style.width=e.match(/px|%|em/)?e:t.formatUnit(e)))},s.prototype.closePopup=function(e,s){var l=this,n=!t.isNullOrUndefined(this.filterInput)&&!t.isNullOrUndefined(this.filterInput.value)&&""!==this.filterInput.value;"combobox"===this.getModuleName()&&this.typedString;if(this.isTyped=!1,this.popupObj&&document.body.contains(this.popupObj.element)&&this.beforePopupOpen){this.keyboardEvent=null,t.EventHandler.remove(document,"mousedown",this.onDocumentClick),this.isActive=!1,this.filterInputObj=null,this.isDropDownClick=!1,this.preventAutoFill=!1;for(var o=0,r=this.popupObj.getScrollableParent(this.inputWrapper.container);o<r.length;o++){var a=r[o];t.EventHandler.remove(a,"scroll",this.scrollHandler)}t.Browser.isDevice&&this.isFilterLayout()&&t.removeClass([document.body,this.popupObj.element],M.popupFullScreen),this.isFilterLayout()&&(t.Browser.isDevice||(this.searchKeyModule.destroy(),this.clearIconElement&&t.EventHandler.remove(this.clearIconElement,"click",this.clearText)),this.backIconElement&&(t.EventHandler.remove(this.backIconElement,"click",this.clickOnBackIcon),t.EventHandler.remove(this.clearIconElement,"click",this.clearText)),t.isNullOrUndefined(this.filterInput)||(t.EventHandler.remove(this.filterInput,"input",this.onInput),t.EventHandler.remove(this.filterInput,"keyup",this.onFilterUp),t.EventHandler.remove(this.filterInput,"keydown",this.onFilterDown),t.EventHandler.remove(this.filterInput,"blur",this.onBlurHandler),t.EventHandler.remove(this.filterInput,"paste",this.pasteHandler)),this.allowFiltering&&"dropdownlist"===this.getModuleName()&&this.filterInput.removeAttribute("aria-activedescendant"),this.filterInput=null),t.attributes(this.targetElement(),{"aria-expanded":"false"}),this.inputElement.setAttribute("aria-expanded","false"),this.targetElement().removeAttribute("aria-owns"),this.targetElement().removeAttribute("aria-activedescendant"),this.inputWrapper.container.classList.remove(M.iconAnimation),this.isFiltering()&&(this.actionCompleteData.isUpdated=!1),this.enableVirtualization&&(null==this.value||this.isTyped?(this.viewPortInfo.endIndex=this.viewPortInfo&&this.viewPortInfo.endIndex>0?this.viewPortInfo.endIndex:this.itemCount,("autocomplete"===this.getModuleName()||"dropdownlist"===this.getModuleName()&&!t.isNullOrUndefined(this.typedString)&&""!=this.typedString||"combobox"===this.getModuleName()&&this.allowFiltering&&!t.isNullOrUndefined(this.typedString)&&""!=this.typedString)&&this.checkAndResetCache()):"autocomplete"===this.getModuleName()&&this.checkAndResetCache(),"dropdownlist"!==this.getModuleName()&&"combobox"!==this.getModuleName()||0==this.skeletonCount||this.getSkeletonCount(!0)),this.beforePopupOpen=!1;var h={name:"FadeOut",duration:100,delay:e||0},p={popup:this.popupObj,cancel:!1,animation:h,event:s||null};this.trigger("close",p,function(e){if(!t.isNullOrUndefined(l.popupObj)&&!t.isNullOrUndefined(l.popupObj.element.querySelector(".e-fixed-head"))){var i=l.popupObj.element.querySelector(".e-fixed-head");i.parentNode.removeChild(i),l.fixedHeaderElement=null}e.cancel||("autocomplete"===l.getModuleName()&&l.rippleFun(),l.isPopupOpen?l.popupObj.hide(new t.Animation(e.animation)):l.destroyPopup())}),this.isReact&&this.isFiltering()&&null!=this.itemTemplate&&(this.actionCompleteData.ulElement=this.ulElement.cloneNode(!0));var u;u=this.dataSource instanceof i.DataManager?this.virtualGroupDataSource&&this.virtualGroupDataSource.length?this.virtualGroupDataSource.length:0:this.dataSource&&this.dataSource.length?this.dataSource.length:0,this.enableVirtualization&&this.isFiltering()&&null!=this.value&&n&&this.totalItemCount!==u&&(this.updateInitialData(),this.checkAndResetCache())}},s.prototype.updateInitialData=function(){var e=this.selectData,t=this.renderItems(e,this.fields);this.list.scrollTop=0,this.virtualListInfo={currentPageNumber:null,direction:null,sentinelInfo:{},offsets:{},startIndex:0,endIndex:0},"combobox"===this.getModuleName()&&(this.typedString=""),this.previousStartIndex=0,this.previousEndIndex=0,this.dataSource instanceof i.DataManager?this.totalItemCount=this.dataCount=this.virtualGroupDataSource&&this.virtualGroupDataSource.length?this.virtualGroupDataSource.length:0:this.totalItemCount=this.dataCount=this.dataSource&&this.dataSource.length?this.dataSource.length:0,this.list.getElementsByClassName("e-virtual-ddl")[0]&&(this.list.getElementsByClassName("e-virtual-ddl")[0].style=this.GetVirtualTrackHeight()),"autocomplete"!==this.getModuleName()&&0!=this.totalItemCount&&this.totalItemCount>2*this.itemCount&&this.getSkeletonCount(),this.UpdateSkeleton(),this.listData=e,this.updateActionCompleteDataValues(t,e),this.liCollections=this.list.querySelectorAll(".e-list-item"),this.list.getElementsByClassName("e-virtual-ddl-content")[0]&&(this.list.getElementsByClassName("e-virtual-ddl-content")[0].style=this.getTransformValues())},s.prototype.destroyPopup=function(){this.isPopupOpen=!1,this.isFilterFocus=!1,this.popupObj&&(this.popupObj.destroy(),t.detach(this.popupObj.element))},s.prototype.clickOnBackIcon=function(){this.hidePopup(),this.focusIn()},s.prototype.render=function(){this.preselectedIndex=t.isNullOrUndefined(this.index)?null:this.index,"INPUT"===this.element.tagName?(this.inputElement=this.element,t.isNullOrUndefined(this.inputElement.getAttribute("role"))&&this.inputElement.setAttribute("role","combobox"),t.isNullOrUndefined(this.inputElement.getAttribute("type"))&&this.inputElement.setAttribute("type","text"),this.inputElement.setAttribute("aria-expanded","false")):(this.inputElement=this.createElement("input",{attrs:{role:"combobox",type:"text"}}),this.element.tagName!==this.getNgDirective()&&(this.element.style.display="none"),this.element.parentElement.insertBefore(this.inputElement,this.element),this.preventTabIndex(this.inputElement));var e=this.cssClass;t.isNullOrUndefined(this.cssClass)||""===this.cssClass||(e=this.cssClass.replace(/\s+/g," ").trim()),!t.isNullOrUndefined(t.closest(this.element,"fieldset"))&&t.closest(this.element,"fieldset").disabled&&(this.enabled=!1),this.inputWrapper=n.Input.createInput({element:this.inputElement,buttons:this.isPopupButton()?[M.icon]:null,floatLabelType:this.floatLabelType,properties:{readonly:"dropdownlist"===this.getModuleName()||this.readonly,placeholder:this.placeholder,cssClass:e,enabled:this.enabled,enableRtl:this.enableRtl,showClearButton:this.showClearButton}},this.createElement),this.element.tagName===this.getNgDirective()?this.element.appendChild(this.inputWrapper.container):this.inputElement.parentElement.insertBefore(this.element,this.inputElement),this.hiddenElement=this.createElement("select",{attrs:{"aria-hidden":"true","aria-label":this.getModuleName(),tabindex:"-1",class:M.hiddenElement}}),t.prepend([this.hiddenElement],this.inputWrapper.container),this.validationAttribute(this.element,this.hiddenElement),this.setReadOnly(),this.setFields(),this.inputWrapper.container.style.width=t.formatUnit(this.width),this.inputWrapper.container.classList.add("e-ddl"),"Auto"===this.floatLabelType&&n.Input.calculateWidth(this.inputElement,this.inputWrapper.container),!t.isNullOrUndefined(this.inputWrapper.buttons[0])&&this.inputWrapper.container.getElementsByClassName("e-float-text-content")[0]&&"Never"!==this.floatLabelType&&this.inputWrapper.container.getElementsByClassName("e-float-text-content")[0].classList.add("e-icon"),this.wireEvent(),this.tabIndex=this.element.hasAttribute("tabindex")?this.element.getAttribute("tabindex"):"0",this.element.removeAttribute("tabindex");var i=this.element.getAttribute("id")?this.element.getAttribute("id"):t.getUniqueID("ej2_dropdownlist");if(this.element.id=i,this.hiddenElement.id=i+"_hidden",this.targetElement().setAttribute("tabindex",this.tabIndex),"autocomplete"!==this.getModuleName()&&"combobox"!==this.getModuleName()||this.readonly?"dropdownlist"===this.getModuleName()&&(t.attributes(this.targetElement(),{"aria-label":this.getModuleName()}),this.inputElement.setAttribute("aria-label",this.getModuleName()),this.inputElement.setAttribute("aria-expanded","false"),this.inputElement.setAttribute("aria-controls",this.element.id+"_popups")):this.inputElement.setAttribute("aria-label",this.getModuleName()),t.attributes(this.targetElement(),this.getAriaAttributes()),this.updateDataAttribute(this.htmlAttributes),this.setHTMLAttributes(),this.targetElement()===this.inputElement&&this.inputElement.removeAttribute("aria-labelledby"),null!==this.value||null!==this.activeIndex||null!==this.text)this.enableVirtualization&&(this.listItemHeight=this.getListHeight(),this.getSkeletonCount(),this.updateVirtualizationProperties(this.itemCount,this.allowFiltering)),this.initValue(),this.selectedValueInfo=this.viewPortInfo,this.enableVirtualization&&(this.activeIndex=this.activeIndex+this.skeletonCount);else if("SELECT"===this.element.tagName&&this.element.options[0]){var s=this.element;this.value=s.options[s.selectedIndex].value,this.text=t.isNullOrUndefined(this.value)?null:s.options[s.selectedIndex].textContent,this.initValue()}this.setEnabled(),this.preventTabIndex(this.element),this.enabled||(this.targetElement().tabIndex=-1),this.initial=!1,this.element.style.opacity="",this.inputElement.onselect=function(e){e.stopImmediatePropagation()},this.inputElement.onchange=function(e){e.stopImmediatePropagation()},this.element.hasAttribute("autofocus")&&this.focusIn(),t.isNullOrUndefined(this.text)||this.inputElement.setAttribute("value",this.text),this.element.hasAttribute("data-val")&&this.element.setAttribute("data-val","false");var l=this.inputWrapper.container.getElementsByClassName("e-float-text")[0];t.isNullOrUndefined(this.element.id)||""===this.element.id||t.isNullOrUndefined(l)||(l.id="label_"+this.element.id.replace(/ /g,"_"),t.attributes(this.inputElement,{"aria-labelledby":l.id})),this.renderComplete(),this.listItemHeight=this.getListHeight(),this.getSkeletonCount(),this.enableVirtualization&&this.updateVirtualizationProperties(this.itemCount,this.allowFiltering),this.viewPortInfo.startIndex=this.virtualItemStartIndex=0,this.viewPortInfo.endIndex=this.virtualItemEndIndex=this.viewPortInfo.startIndex>0?this.viewPortInfo.endIndex:this.itemCount},s.prototype.getListHeight=function(){var e=this.createElement("div",{className:"e-dropdownbase"}),i=this.createElement("li",{className:"e-list-item"}),s=t.formatUnit(this.popupHeight);e.style.height=parseInt(s,10).toString()+"px",e.appendChild(i),document.body.appendChild(e),this.virtualListHeight=e.getBoundingClientRect().height;var l=Math.ceil(i.getBoundingClientRect().height);return e.remove(),l},s.prototype.setFooterTemplate=function(e){var i;this.footer?this.isReact&&"function"==typeof this.footerTemplate?this.clearTemplate(["footerTemplate"]):this.footer.innerHTML="":(this.footer=this.createElement("div"),t.addClass([this.footer],M.footer));var s=this.dropdownCompiler(this.footerTemplate),l=(i="function"!=typeof this.footerTemplate&&s?t.compile(t.select(this.footerTemplate,document).innerHTML.trim()):t.compile(this.footerTemplate))({},this,"footerTemplate",this.footerTemplateId,this.isStringTemplate,null,this.footer);l&&l.length>0&&t.append(l,this.footer),t.append([this.footer],e)},s.prototype.setHeaderTemplate=function(e){var i;this.header?this.header.innerHTML="":(this.header=this.createElement("div"),t.addClass([this.header],M.header));var s=this.dropdownCompiler(this.headerTemplate),l=(i="function"!=typeof this.headerTemplate&&s?t.compile(t.select(this.headerTemplate,document).innerHTML.trim()):t.compile(this.headerTemplate))({},this,"headerTemplate",this.headerTemplateId,this.isStringTemplate,null,this.header);l&&l.length&&t.append(l,this.header);var n=e.querySelector("div.e-content");e.insertBefore(this.header,n)},s.prototype.setEnabled=function(){this.element.setAttribute("aria-disabled",this.enabled?"false":"true")},s.prototype.setOldText=function(e){this.text=e},s.prototype.setOldValue=function(e){this.value=e},s.prototype.refreshPopup=function(){t.isNullOrUndefined(this.popupObj)||!document.body.contains(this.popupObj.element)||(!this.allowFiltering||t.Browser.isDevice&&this.isFilterLayout())&&"autocomplete"!==this.getModuleName()||(t.removeClass([this.popupObj.element],"e-popup-close"),this.popupObj.refreshPosition(this.inputWrapper.container),this.popupObj.resolveCollision())},s.prototype.checkData=function(e){!e.dataSource||t.isNullOrUndefined(Object.keys(e.dataSource))||!this.itemTemplate||!this.allowFiltering||this.isListSearched&&e.dataSource instanceof i.DataManager||(this.list=null,this.actionCompleteData={ulElement:null,list:null,isUpdated:!1}),this.isListSearched=!1;var s=-1!==Object.keys(e).indexOf("value")&&t.isNullOrUndefined(e.value),l=-1!==Object.keys(e).indexOf("text")&&t.isNullOrUndefined(e.text);"autocomplete"!==this.getModuleName()&&this.allowFiltering&&(s||l)&&(this.itemData=null),this.allowFiltering&&e.dataSource&&!t.isNullOrUndefined(Object.keys(e.dataSource))?(this.actionCompleteData={ulElement:null,list:null,isUpdated:!1},this.actionData=this.actionCompleteData):this.allowFiltering&&e.query&&!t.isNullOrUndefined(Object.keys(e.query))&&(this.actionCompleteData="combobox"===this.getModuleName()?{ulElement:null,list:null,isUpdated:!1}:this.actionCompleteData,this.actionData=this.actionCompleteData)},s.prototype.updateDataSource=function(e){""===this.inputElement.value&&(t.isNullOrUndefined(e)||!t.isNullOrUndefined(e.dataSource)&&(e.dataSource instanceof i.DataManager||0!==e.dataSource.length))||this.clearAll(null,e),this.fields.groupBy&&e.fields&&!this.isGroupChecking&&this.list&&(t.EventHandler.remove(this.list,"scroll",this.setFloatingHeader),t.EventHandler.add(this.list,"scroll",this.setFloatingHeader,this)),(t.isNullOrUndefined(e)||!t.isNullOrUndefined(e.dataSource)&&(e.dataSource instanceof i.DataManager||0!==e.dataSource.length)||!Array.isArray(e.dataSource)||0!==e.dataSource.length)&&(this.typedString="",this.resetList(this.dataSource)),this.isCustomFilter||this.isFilterFocus||document.activeElement===this.filterInput||this.checkCustomValue()},s.prototype.checkCustomValue=function(){this.itemData=this.getDataByValue(this.value);var e=this.getItemData();this.setProperties({text:e.text,value:e.value})},s.prototype.updateInputFields=function(){"dropdownlist"===this.getModuleName()&&n.Input.setValue(this.text,this.inputElement,this.floatLabelType,this.showClearButton)},s.prototype.onPropertyChanged=function(s,l){var o=this;t.isNullOrUndefined(s.dataSource)||this.isTouched||!t.isNullOrUndefined(s.value)||!t.isNullOrUndefined(s.index)||t.isNullOrUndefined(this.preselectedIndex)||(s.index=this.preselectedIndex),t.isNullOrUndefined(s.value)&&t.isNullOrUndefined(s.index)||(this.isTouched=!0),"dropdownlist"===this.getModuleName()&&(this.checkData(s),this.setUpdateInitial(["fields","query","dataSource"],s));for(var r=this,a=0,h=Object.keys(s);a<h.length;a++)!function(a){switch(a){case"query":case"dataSource":r.getSkeletonCount(),r.checkAndResetCache();break;case"htmlAttributes":r.setHTMLAttributes();break;case"width":r.setEleWidth(s.width),n.Input.calculateWidth(r.inputElement,r.inputWrapper.container);break;case"placeholder":n.Input.setPlaceholder(s.placeholder,r.inputElement);break;case"filterBarPlaceholder":r.filterInput&&n.Input.setPlaceholder(s.filterBarPlaceholder,r.filterInput);break;case"readonly":"dropdownlist"!==r.getModuleName()&&n.Input.setReadonly(s.readonly,r.inputElement),r.setReadOnly();break;case"cssClass":r.setCssClass(s.cssClass,l.cssClass),n.Input.calculateWidth(r.inputElement,r.inputWrapper.container);break;case"enableRtl":r.setEnableRtl();break;case"enabled":r.setEnable();break;case"text":if(null===s.text){r.clearAll();break}if(r.enableVirtualization){r.updateValues(),r.updateInputFields(),r.notify("setCurrentViewDataAsync",{module:"VirtualScroll"});break}if(r.list||(r.dataSource instanceof i.DataManager&&(r.initRemoteRender=!0),r.renderList()),!r.initRemoteRender){var h=r.getElementByText(s.text);if(!r.checkValidLi(h))if(r.liCollections&&100===r.liCollections.length&&"autocomplete"===r.getModuleName()&&r.listData.length>100)r.setSelectionData(s.text,l.text,"text");else if(s.text&&r.dataSource instanceof i.DataManager){var p=r.getItems().length,u=t.isNullOrUndefined(r.fields.text)?r.fields.value:r.fields.text;r.typedString="",r.dataSource.executeQuery(r.getQuery(r.query).where(new i.Predicate(u,"equal",s.text))).then(function(e){e.result.length>0?(o.addItem(e.result,p),o.updateValues()):o.setOldText(l.text)})}else"autocomplete"===r.getModuleName()?r.setInputValue(s,l):r.setOldText(l.text);r.updateInputFields()}break;case"value":if(null===s.value){r.clearAll();break}if(r.enableVirtualization){r.updateValues(),r.updateInputFields(),r.notify("setCurrentViewDataAsync",{module:"VirtualScroll"}),r.preventChange=r.isAngular&&r.preventChange?!r.preventChange:r.preventChange;break}if(r.notify("beforeValueChange",{newProp:s}),r.list||(r.dataSource instanceof i.DataManager&&(r.initRemoteRender=!0),r.renderList()),!r.initRemoteRender){var d=r.getElementByValue(s.value);if(!r.checkValidLi(d))if(r.liCollections&&100===r.liCollections.length&&"autocomplete"===r.getModuleName()&&r.listData.length>100)r.setSelectionData(s.value,l.value,"value");else if(s.value&&r.dataSource instanceof i.DataManager){var c=r.getItems().length,u=t.isNullOrUndefined(r.fields.value)?r.fields.text:r.fields.value;r.typedString="",r.dataSource.executeQuery(r.getQuery(r.query).where(new i.Predicate(u,"equal",s.value))).then(function(e){e.result.length>0?(o.addItem(e.result,c),o.updateValues()):o.setOldValue(l.value)})}else"autocomplete"===r.getModuleName()?r.setInputValue(s,l):r.setOldValue(l.value);r.updateInputFields(),r.preventChange=r.isAngular&&r.preventChange?!r.preventChange:r.preventChange}break;case"index":if(null===s.index){r.clearAll();break}if(r.list||(r.dataSource instanceof i.DataManager&&(r.initRemoteRender=!0),r.renderList()),!r.initRemoteRender&&r.liCollections){var m=r.liCollections[s.index];r.checkValidLi(m)||(r.liCollections&&100===r.liCollections.length&&"autocomplete"===r.getModuleName()&&r.listData.length>100?r.setSelectionData(s.index,l.index,"index"):r.index=l.index),r.updateInputFields()}break;case"footerTemplate":r.popupObj&&r.setFooterTemplate(r.popupObj.element);break;case"headerTemplate":r.popupObj&&r.setHeaderTemplate(r.popupObj.element);break;case"valueTemplate":t.isNullOrUndefined(r.itemData)||null===r.valueTemplate||r.setValueTemplate();break;case"allowFiltering":r.allowFiltering&&(r.actionCompleteData={ulElement:r.ulElement,list:r.listData,isUpdated:!0},r.actionData=r.actionCompleteData,r.updateSelectElementData(r.allowFiltering));break;case"floatLabelType":n.Input.removeFloating(r.inputWrapper),n.Input.addFloating(r.inputElement,s.floatLabelType,r.placeholder,r.createElement),!t.isNullOrUndefined(r.inputWrapper.buttons[0])&&r.inputWrapper.container.getElementsByClassName("e-float-text-overflow")[0]&&"Never"!==r.floatLabelType&&r.inputWrapper.container.getElementsByClassName("e-float-text-overflow")[0].classList.add("e-icon");break;case"showClearButton":r.inputWrapper.clearButton||(n.Input.setClearButton(s.showClearButton,r.inputElement,r.inputWrapper,null,r.createElement),r.bindClearEvent());break;default:var f=r.getPropObject(a,s,l);e.prototype.onPropertyChanged.call(r,f.newProperty,f.oldProperty)}}(h[a])},s.prototype.checkValidLi=function(e){return!!this.isValidLI(e)&&(this.setSelection(e,null),!0)},s.prototype.setSelectionData=function(e,t,i){var s,l=this;this.updateListValues=function(){"text"===i?(s=l.getElementByText(e),l.checkValidLi(s)||l.setOldText(t)):"value"===i?(s=l.getElementByValue(e),l.checkValidLi(s)||l.setOldValue(t)):"index"===i&&(s=l.liCollections[e],l.checkValidLi(s)||(l.index=t))}},s.prototype.updatePopupState=function(){this.beforePopupOpen&&(this.beforePopupOpen=!1,this.showPopup())},s.prototype.setReadOnly=function(){this.readonly?t.addClass([this.inputWrapper.container],["e-readonly"]):t.removeClass([this.inputWrapper.container],["e-readonly"])},s.prototype.setInputValue=function(e,t){},s.prototype.setCssClass=function(e,i){t.isNullOrUndefined(i)||(i=i.replace(/\s+/g," ").trim()),t.isNullOrUndefined(e)||(e=e.replace(/\s+/g," ").trim()),n.Input.setCssClass(e,[this.inputWrapper.container],i),this.popupObj&&n.Input.setCssClass(e,[this.popupObj.element],i)},s.prototype.getModuleName=function(){return"dropdownlist"},s.prototype.showPopup=function(e){if(this.enabled){if(this.isReact&&"combobox"===this.getModuleName()&&this.itemTemplate&&this.isCustomFilter&&this.isAddNewItemTemplate&&(this.renderList(),this.isAddNewItemTemplate=!1),this.isFiltering()&&this.dataSource instanceof i.DataManager&&this.actionData.list!==this.actionCompleteData.list&&this.actionData.list&&this.actionData.ulElement&&(this.actionCompleteData=this.actionData,this.onActionComplete(this.actionCompleteData.ulElement,this.actionCompleteData.list,null,!0)),this.beforePopupOpen)return void this.refreshPopup();this.beforePopupOpen=!0,this.isFiltering()&&!this.isActive&&this.actionCompleteData.list&&this.actionCompleteData.list[0]?(this.isActive=!0,this.onActionComplete(this.actionCompleteData.ulElement,this.actionCompleteData.list,null,!0)):(t.isNullOrUndefined(this.list)||!t.isUndefined(this.list)&&(this.list.classList.contains(U.noData)||this.list.querySelectorAll("."+U.li).length<=0))&&this.renderList(e),this.enableVirtualization&&this.listData&&this.listData.length&&(t.isNullOrUndefined(this.value)||"dropdownlist"!==this.getModuleName()&&"combobox"!==this.getModuleName()||this.removeHover(),this.beforePopupOpen||this.notify("setCurrentViewDataAsync",{module:"VirtualScroll"})),this.beforePopupOpen&&this.invokeRenderPopup(e),this.enableVirtualization&&!this.allowFiltering&&null!=this.selectedValueInfo&&this.selectedValueInfo.startIndex>0&&null!=this.value&&this.notify("dataProcessAsync",{module:"VirtualScroll",isOpen:!0})}},s.prototype.invokeRenderPopup=function(e){if(t.Browser.isDevice&&this.isFilterLayout()){var i=this;window.onpopstate=function(){i.hidePopup()},history.pushState({},"")}t.isNullOrUndefined(this.list)||t.isNullOrUndefined(this.list.children[0])&&!this.list.classList.contains(U.noData)||this.renderPopup(e)},s.prototype.renderHightSearch=function(){},s.prototype.hidePopup=function(e){if(this.isEscapeKey&&"dropdownlist"===this.getModuleName())if(t.isNullOrUndefined(this.inputElement)||n.Input.setValue(this.text,this.inputElement,this.floatLabelType,this.showClearButton),this.isEscapeKey=!1,t.isNullOrUndefined(this.index))this.resetSelection();else{var i=this.findListElement(this.ulElement,"li","data-value",this.value);this.selectedLI=this.liCollections[this.index]||i,this.selectedLI&&(this.updateSelectedItem(this.selectedLI,null,!0),this.valueTemplate&&null!==this.itemData&&this.setValueTemplate())}this.closePopup(0,e);var s=this.getItemData(),l=!t.isNullOrUndefined(this.selectedLI);l&&this.enableVirtualization&&this.selectedLI.classList&&(l=this.selectedLI.classList.contains("e-active")),this.inputElement&&""===this.inputElement.value.trim()&&!this.isInteracted&&(this.isSelectCustom||l&&this.inputElement.value!==s.text)&&(this.isSelectCustom=!1,this.clearAll(e))},s.prototype.focusIn=function(e){if(this.enabled&&!this.targetElement().classList.contains(M.disable)){var i=!1;this.preventFocus&&t.Browser.isDevice&&(this.inputWrapper.container.tabIndex=1,this.inputWrapper.container.focus(),this.preventFocus=!1,i=!0),i||this.targetElement().focus(),t.addClass([this.inputWrapper.container],[M.inputFocus]),this.onFocus(e),"Auto"===this.floatLabelType&&n.Input.calculateWidth(this.inputElement,this.inputWrapper.container)}},s.prototype.focusOut=function(e){this.enabled&&(this.enableVirtualization||"combobox"!==this.getModuleName()&&"autocomplete"!==this.getModuleName()||(this.isTyped=!0),this.hidePopup(e),this.targetElement()&&this.targetElement().blur(),t.removeClass([this.inputWrapper.container],[M.inputFocus]),"Auto"===this.floatLabelType&&""===this.inputElement.value&&n.Input.calculateWidth(this.inputElement,this.inputWrapper.container))},s.prototype.destroy=function(){if(this.isActive=!1,d(this.element.id),this.isReact&&this.clearTemplate(),this.hidePopup(),this.popupObj&&this.popupObj.hide(),this.unWireEvent(),this.list&&this.unWireListEvents(),!this.element||this.element.classList.contains("e-"+this.getModuleName())){if(this.inputElement){for(var i=["readonly","aria-disabled","placeholder","aria-labelledby","aria-expanded","autocomplete","aria-readonly","autocapitalize","spellcheck","aria-autocomplete","aria-live","aria-describedby","aria-label"],s=0;s<i.length;s++)this.inputElement.removeAttribute(i[s]);this.inputElement.setAttribute("tabindex",this.tabIndex),this.inputElement.classList.remove("e-input"),n.Input.setValue("",this.inputElement,this.floatLabelType,this.showClearButton)}this.element.style.display="block",this.inputWrapper.container.parentElement.tagName===this.getNgDirective()?t.detach(this.inputWrapper.container):(this.inputWrapper.container.parentElement.insertBefore(this.element,this.inputWrapper.container),t.detach(this.inputWrapper.container)),this.hiddenElement=null,this.inputWrapper=null,this.keyboardModule=null,this.ulElement=null,this.list=null,this.popupObj=null,this.popupContentElement=null,this.rippleFun=null,this.selectedLI=null,this.liCollections=null,this.item=null,this.inputWrapper=null,this.footer=null,this.header=null,this.previousSelectedLI=null,this.valueTempElement=null,this.actionData.ulElement=null,this.inputElement&&!t.isNullOrUndefined(this.inputElement.onchange)&&(this.inputElement.onchange=null),this.isAngular&&(this.inputElement=null),e.prototype.destroy.call(this)}},s.prototype.getItems=function(){return this.list||(this.dataSource instanceof i.DataManager&&(this.initRemoteRender=!0),this.renderList()),this.ulElement?e.prototype.getItems.call(this):[]},s.prototype.getDataByValue=function(t){return e.prototype.getDataByValue.call(this,t)},s.prototype.clear=function(){this.value=null},H([t.Property(null)],s.prototype,"cssClass",void 0),H([t.Property("100%")],s.prototype,"width",void 0),H([t.Property(!0)],s.prototype,"enabled",void 0),H([t.Property(!1)],s.prototype,"enablePersistence",void 0),H([t.Property("300px")],s.prototype,"popupHeight",void 0),H([t.Property("100%")],s.prototype,"popupWidth",void 0),H([t.Property(null)],s.prototype,"placeholder",void 0),H([t.Property(null)],s.prototype,"filterBarPlaceholder",void 0),H([t.Property({})],s.prototype,"htmlAttributes",void 0),H([t.Property(null)],s.prototype,"query",void 0),H([t.Property(null)],s.prototype,"valueTemplate",void 0),H([t.Property(null)],s.prototype,"headerTemplate",void 0),H([t.Property(null)],s.prototype,"footerTemplate",void 0),H([t.Property(!1)],s.prototype,"allowFiltering",void 0),H([t.Property(!1)],s.prototype,"readonly",void 0),H([t.Property(!1)],s.prototype,"enableVirtualization",void 0),H([t.Property(null)],s.prototype,"text",void 0),H([t.Property(null)],s.prototype,"value",void 0),H([t.Property(null)],s.prototype,"index",void 0),H([t.Property("Never")],s.prototype,"floatLabelType",void 0),H([t.Property(!1)],s.prototype,"showClearButton",void 0),H([t.Event()],s.prototype,"filtering",void 0),H([t.Event()],s.prototype,"change",void 0),H([t.Event()],s.prototype,"beforeOpen",void 0),H([t.Event()],s.prototype,"open",void 0),H([t.Event()],s.prototype,"close",void 0),H([t.Event()],s.prototype,"blur",void 0),H([t.Event()],s.prototype,"focus",void 0),s=H([t.NotifyPropertyChanges],s)}(F),R=function(){var e=function(t,i){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)t.hasOwnProperty(i)&&(e[i]=t[i])})(t,i)};return function(t,i){function s(){this.constructor=t}e(t,i),t.prototype=null===i?Object.create(i):(s.prototype=i.prototype,new s)}}(),z=function(e,t,i,s){var l,n=arguments.length,o=n<3?t:null===s?s=Object.getOwnPropertyDescriptor(t,i):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(e,t,i,s);else for(var r=e.length-1;r>=0;r--)(l=e[r])&&(o=(n<3?l(o):n>3?l(t,i,o):l(t,i))||o);return n>3&&o&&Object.defineProperty(t,i,o),o},K="e-input-group-icon e-ddt-icon e-icons",_="e-show-chip",G="e-show-clear",Q="e-chip-input",X="e-input-focus",J="e-icon-hide",Y="e-check",$="e-no-data",Z=function(e){function i(){return null!==e&&e.apply(this,arguments)||this}return R(i,e),z([t.Property("child")],i.prototype,"child",void 0),z([t.Property([])],i.prototype,"dataSource",void 0),z([t.Property("expanded")],i.prototype,"expanded",void 0),z([t.Property("hasChildren")],i.prototype,"hasChildren",void 0),z([t.Property("htmlAttributes")],i.prototype,"htmlAttributes",void 0),z([t.Property("iconCss")],i.prototype,"iconCss",void 0),z([t.Property("imageUrl")],i.prototype,"imageUrl",void 0),z([t.Property("parentValue")],i.prototype,"parentValue",void 0),z([t.Property(null)],i.prototype,"query",void 0),z([t.Property("selectable")],i.prototype,"selectable",void 0),z([t.Property("selected")],i.prototype,"selected",void 0),z([t.Property(null)],i.prototype,"tableName",void 0),z([t.Property("text")],i.prototype,"text",void 0),z([t.Property("tooltip")],i.prototype,"tooltip",void 0),z([t.Property("value")],i.prototype,"value",void 0),i}(t.ChildProperty),ee=function(e){function i(){return null!==e&&e.apply(this,arguments)||this}return R(i,e),z([t.Property(!1)],i.prototype,"autoCheck",void 0),z([t.Property("Auto")],i.prototype,"expandOn",void 0),z([t.Property(!1)],i.prototype,"loadOnDemand",void 0),i}(t.ChildProperty),te=function(e){function s(t,i){var s=e.call(this,t,i)||this;return s.filterTimer=null,s.isFilteredData=!1,s.isFilterRestore=!1,s.selectedData=[],s.filterDelayTime=300,s.isClicked=!1,s.isCheckAllCalled=!1,s.isFromFilterChange=!1,s}return R(s,e),s.prototype.getPersistData=function(){var e=["value"];return this.addOnPersist(e)},s.prototype.getLocaleName=function(){return"drop-down-tree"},s.prototype.preRender=function(){this.inputFocus=!1,this.isPopupOpen=!1,this.isFirstRender=!0,this.isInitialized=!1,this.currentText=null,this.currentValue=null,this.oldValue=null,this.removeValue=!1,this.selectedText=[],this.treeItems=[],this.dataValue=null,this.isNodeSelected=!1,this.isDynamicChange=!1,this.clearIconWidth=0,this.headerTemplateId=this.element.id+"HeaderTemplate",this.footerTemplateId=this.element.id+"FooterTemplate",this.actionFailureTemplateId=this.element.id+"ActionFailureTemplate",this.noRecordsTemplateId=this.element.id+"NoRecordsTemplate",this.customTemplateId=this.element.id+"CustomTemplate",this.keyConfigs={escape:"escape",altUp:"alt+uparrow",altDown:"alt+downarrow",tab:"tab",shiftTab:"shift+tab",end:"end",enter:"enter",home:"home",moveDown:"downarrow",moveLeft:"leftarrow",moveRight:"rightarrow",moveUp:"uparrow",ctrlDown:"ctrl+downarrow",ctrlUp:"ctrl+uparrow",ctrlEnter:"ctrl+enter",ctrlHome:"ctrl+home",ctrlEnd:"ctrl+end",shiftDown:"shift+downarrow",shiftUp:"shift+uparrow",shiftEnter:"shift+enter",shiftHome:"shift+home",shiftEnd:"shift+end",csDown:"ctrl+shift+downarrow",csUp:"ctrl+shift+uparrow",csEnter:"ctrl+shift+enter",csHome:"ctrl+shift+home",csEnd:"ctrl+shift+end",space:"space",ctrlA:"ctrl+A"}},s.prototype.render=function(){var e=t.select("#"+this.element.id+"_tree",document);if(e){var s=t.select("#"+this.element.id+"_options",document);t.detach(s||e.parentElement)}"INPUT"===this.element.tagName?(this.inputEle=this.element,t.isNullOrUndefined(this.inputEle.getAttribute("role"))&&(this.inputEle.setAttribute("aria-expanded","false"),this.inputEle.setAttribute("role","combobox"),this.inputEle.setAttribute("aria-haspopup","tree"),this.inputEle.setAttribute("aria-controls",this.element.id+"_options")),t.isNullOrUndefined(this.inputEle.getAttribute("type"))&&this.inputEle.setAttribute("type","text")):(this.inputEle=this.createElement("input",{attrs:{role:"textbox",type:"text"}}),this.element.parentElement.insertBefore(this.inputEle,this.element)),this.inputObj=n.Input.createInput({element:this.inputEle,floatLabelType:this.floatLabelType,buttons:this.showDropDownIcon?[K]:null,properties:{readonly:!0,placeholder:this.placeholder,enabled:this.enabled,cssClass:this.cssClass,enableRtl:this.enableRtl}},this.createElement),this.inputWrapper=this.inputObj.container,this.inputWrapper.classList.contains("e-input-group")||this.inputWrapper.classList.add("e-input-group"),this.showDropDownIcon&&this.inputWrapper.classList.add("e-show-dd-icon"),this.element.tagName===this.getDirective()&&this.element.appendChild(this.inputWrapper),this.createHiddenElement(),this.createClearIcon(),this.inputWrapper.classList.add("e-ddt"),this.setElementWidth(this.width),this.updateDataAttribute(),this.setHTMLAttributes(),this.setAttributes(),this.popupDiv=this.createElement("div",{className:"e-popup-content"}),this.popupDiv.classList.add("e-dropdown"),this.tree=this.createElement("div",{id:this.element.id+"_tree"}),this.popupDiv.appendChild(this.tree),document.body.appendChild(this.popupDiv),this.wireTreeEvents(),t.addClass([this.popupDiv],"e-ddt-icon-hide"),this.renderTree(),this.isRemoteData=this.fields.dataSource instanceof i.DataManager,(this.allowMultiSelection||this.showCheckBox)&&("Delimiter"!==this.mode&&this.createChip(),this.wrapText||"Custom"===this.mode||(this.overFlowWrapper=this.createElement("span",{className:"e-overflow "+J}),this.inputWrapper.insertBefore(this.overFlowWrapper,this.hiddenElement),"Box"!==this.mode&&t.addClass([this.overFlowWrapper],"e-show-text"))),this.isRemoteData||(this.setTreeValue(),this.setTreeText(),this.updateHiddenValue(),this.setSelectedValue(),this.wrapText||this.updateView()),this.wireEvents();var l=t.select(".e-list-parent",this.treeObj.element);l&&l.getAttribute("aria-multiselectable")&&l.removeAttribute("aria-multiselectable"),this.oldValue=this.value,this.isInitialized=!0,this.hasTemplate=this.itemTemplate||this.headerTemplate||this.footerTemplate||this.actionFailureTemplate||this.noRecordsTemplate||this.customTemplate,this.renderComplete()},s.prototype.hideCheckAll=function(e){var i=t.isNullOrUndefined(this.popupEle)?null:this.popupEle.querySelector(".e-selectall-parent");t.isNullOrUndefined(i)||(e&&!i.classList.contains("e-hide-selectall")?t.addClass([i],"e-hide-selectall"):!e&&i.classList.contains("e-hide-selectall")&&t.removeClass([i],"e-hide-selectall"))},s.prototype.renderFilter=function(){this.filterContainer=this.createElement("div",{id:this.element.id+"_filter_wrap",className:"e-filter-wrap"});var e=this.createElement("input",{id:this.element.id+"_filter",attrs:{autocomplete:"off","aria-label":this.filterBarPlaceholder}});this.filterContainer.appendChild(e),t.prepend([this.filterContainer],this.popupEle),this.filterObj=new n.TextBox({value:"",showClearButton:!0,placeholder:this.filterBarPlaceholder,input:this.filterChangeHandler.bind(this)}),this.filterObj.appendTo("#"+this.element.id+"_filter")},s.prototype.filterChangeHandler=function(e){var i=this;t.isNullOrUndefined(e.value)||(window.clearTimeout(this.filterTimer),this.filterTimer=window.setTimeout(function(){i.filterHandler(e.value,e.event)},this.filterDelayTime))},s.prototype.isChildObject=function(){return"object"==typeof this.treeObj.fields.child},s.prototype.filterHandler=function(e,t){var s=this;this.isFromFilterChange=!0,this.isFilteredData||(this.isRemoteData&&(this.treeObj.expandedNodes=[]),this.treeData=this.treeObj.getTreeData());var l=this.cloneFields(this.fields),n={cancel:!1,preventDefaultAction:!1,event:t,text:e,fields:l};this.trigger("filtering",n,function(t){if(!t.cancel){var l=!1,n=void 0;if(s.isFilteredData=!0,""===e?(s.isFilteredData=!1,s.isFilterRestore=!0,n=s.cloneFields(s.fields)):t.preventDefaultAction?n=t.fields:1===s.treeDataType?n=s.selfReferencefilter(e,t.fields):s.fields.dataSource instanceof i.DataManager?((n=s.remoteDataFilter(e,t.fields)).child=s.fields.child,s.treeObj.fields=s.getTreeFields(t.fields),s.treeObj.dataBind(),l=!0):n=s.nestedFilter(e,t.fields),s.hideCheckAll(s.isFilteredData),l)return;if(s.isRemoteData&&(s.isChildObject()?n.child=s.fields.child:n=t.fields),s.treeObj.fields=s.getTreeFields(n),s.treeObj.dataBind(),s.hasTemplate&&s.portals&&s.treeObj.portals){for(var o=0;o<s.treeObj.portals.length;o++)-1==s.portals.indexOf(s.treeObj.portals[o])&&s.portals.push(s.treeObj.portals[o]);s.isReact&&s.renderReactTemplates()}}})},s.prototype.remoteDataFilter=function(e,i){var s=this;return i.dataSource=this.treeData.map(function(t){return s.remoteChildFilter(e,t)}).filter(function(e){return!t.isNullOrUndefined(e)}),i},s.prototype.remoteChildFilter=function(e,i,s,l){var n=this.isChildObject()?i.child:i[this.fields.child];if(t.isNullOrUndefined(n))return this.isMatchedNode(e,i,s,l)?i:null;for(var o=[],r=0;r<n.length;r++){var a=this.remoteChildFilter(e,n[r],!0,!0);t.isNullOrUndefined(a)||o.push(a)}var h=Object.assign({},i);return l=!1,0!==o.length?h.child=o:(h.child=null,h=this.isMatchedNode(e,h)?h:null),h},s.prototype.nestedFilter=function(e,i){for(var s=[],l=0;l<this.treeData.length;l++){var n=this.nestedChildFilter(e,this.treeData[l]);t.isNullOrUndefined(n)||s.push(n)}return i.dataSource=s,i},s.prototype.nestedChildFilter=function(e,i){var s=i[this.fields.child];if(t.isNullOrUndefined(s))return this.isMatchedNode(e,i)?i:null;for(var l=[],n=0;n<s.length;n++){var o=this.nestedChildFilter(e,s[n]);t.isNullOrUndefined(o)||l.push(o)}var r=Object.assign({},i);return 0!==l.length?(r[this.fields.child]=l,r):(r[this.fields.child]=null,this.isMatchedNode(e,r)?r:null)},s.prototype.selfReferencefilter=function(e,i){for(var s=[],l=[],n=0;n<this.treeData.length;n++)this.isMatchedNode(e,this.treeData[n])&&s.push(this.treeData[n]);for(n=0;n<s.length;n++)if(-1===l.indexOf(s[n])){l.push(s[n]);for(var o=s[n][this.fields.parentValue];!t.isNullOrUndefined(o);){for(var r=null,a=0;a<this.treeData.length;a++){var h=this.treeData[a][this.fields.value];if(!t.isNullOrUndefined(h)&&h===o){r=this.treeData[a];break}}if(t.isNullOrUndefined(r)||-1!==l.indexOf(r))break;l.push(r),o=r[this.fields.parentValue]}}return i.dataSource=l,i},s.prototype.isMatchedNode=function(e,t,s,l){var n;if(!(n=s&&l&&this.isChildObject()?t[this.fields.child.text]:t[this.fields.text])){for(var o=this.fields.child;!t[o.text];)o=o.child;n=t[o.text]}return this.ignoreCase&&(n=n.toLowerCase(),e=e.toLowerCase()),this.ignoreAccent&&(n=i.DataUtil.ignoreDiacritics(n),e=i.DataUtil.ignoreDiacritics(e)),"StartsWith"===this.filterType?n.slice(0,e.length)===e:"EndsWith"===this.filterType?n.slice(-e.length)===e:-1!==n.indexOf(e)},s.prototype.wireEvents=function(){t.EventHandler.add(this.inputWrapper,"mouseup",this.dropDownClick,this),t.EventHandler.add(this.inputWrapper,"focus",this.focusIn,this),t.EventHandler.add(this.inputWrapper,"blur",this.focusOut,this),t.EventHandler.add(this.inputWrapper,"mousemove",this.mouseIn,this),t.EventHandler.add(this.inputWrapper,"mouseout",this.onMouseLeave,this),t.EventHandler.add(this.overAllClear,"mousedown",this.clearAll,this),t.EventHandler.add(window,"resize",this.windowResize,this);var e=t.closest(this.inputWrapper,"form");e&&t.EventHandler.add(e,"reset",this.resetValueHandler,this),this.keyboardModule=new t.KeyboardEvents(this.inputWrapper,{keyAction:this.keyActionHandler.bind(this),keyConfigs:this.keyConfigs,eventName:"keydown"})},s.prototype.wireTreeEvents=function(){this.keyboardModule=new t.KeyboardEvents(this.tree,{keyAction:this.treeAction.bind(this),keyConfigs:this.keyConfigs,eventName:"keydown"})},s.prototype.wireCheckAllWrapperEvents=function(){this.keyboardModule=new t.KeyboardEvents(this.checkAllParent,{keyAction:this.checkAllAction.bind(this),keyConfigs:this.keyConfigs,eventName:"keydown"})},s.prototype.unWireEvents=function(){t.EventHandler.remove(this.inputWrapper,"mouseup",this.dropDownClick),t.EventHandler.remove(this.inputWrapper,"focus",this.focusIn),t.EventHandler.remove(this.inputWrapper,"blur",this.focusOut),t.EventHandler.remove(this.inputWrapper,"mousemove",this.mouseIn),t.EventHandler.remove(this.inputWrapper,"mouseout",this.onMouseLeave),t.EventHandler.remove(this.overAllClear,"mousedown",this.clearAll),t.EventHandler.remove(window,"resize",this.windowResize);var e=t.closest(this.inputWrapper,"form");e&&t.EventHandler.remove(e,"reset",this.resetValueHandler)},s.prototype.dropDownClick=function(e){if(this.enabled&&!this.readonly){if(this.isClearButtonClick)return void(this.isClearButtonClick=!1);this.isPopupOpen?this.hidePopup():(this.focusIn(e),this.renderPopup()),this.showOverAllClear()}},s.prototype.mouseIn=function(){!this.enabled&&this.readonly||this.showOverAllClear()},s.prototype.onMouseLeave=function(){this.inputFocus||(t.addClass([this.overAllClear],J),t.removeClass([this.inputWrapper],G))},s.prototype.getDirective=function(){return"EJS-DROPDOWNTREE"},s.prototype.focusOut=function(e){if(this.enabled&&!this.readonly&&this.inputFocus&&(!t.Browser.isIE&&"edge"!==t.Browser.info.name||e.target!==this.inputWrapper)){var i=e.relatedTarget;i===this.inputEle||!t.isNullOrUndefined(i)||e.target===this.inputWrapper&&this.isPopupOpen||this.onFocusOut(e)}},s.prototype.onFocusOut=function(e){if(this.inputFocus=!1,this.isPopupOpen&&this.hidePopup(),this.isClearButtonClick&&(this.isClearButtonClick=!1),this.showClearButton&&(this.clearIconWidth=t.select(".e-clear-icon",this.inputWrapper).offsetWidth,t.addClass([this.overAllClear],J),t.removeClass([this.inputWrapper],G)),t.removeClass([this.inputWrapper],[X]),this.allowMultiSelection||this.showCheckBox){var i=!!this.value&&!!this.value.length;"Delimiter"!==this.mode&&"Custom"!==this.mode&&this.chipWrapper&&"Default"===this.mode&&(t.addClass([this.chipWrapper],J),t.removeClass([this.inputWrapper],_),t.removeClass([this.inputEle],Q)),!this.wrapText&&i&&this.updateView()}this.changeOnBlur&&this.triggerChangeEvent(e),this.removeValue=!1,this.oldValue=this.value,this.trigger("blur")},s.prototype.updateView=function(){!this.showCheckBox&&!this.allowMultiSelection||"Custom"===this.mode||this.inputFocus||("Box"!==this.mode?t.addClass([this.inputWrapper,this.overFlowWrapper],"e-show-text"):t.addClass([this.inputWrapper],_),this.value&&0!==this.value.length&&(this.inputWrapper.contains(this.chipWrapper)&&t.addClass([this.chipWrapper],J),t.addClass([this.inputEle],Q),this.updateOverFlowView(),this.ensurePlaceHolder()))},s.prototype.triggerChangeEvent=function(e){if((!this.ddtCompareValues(this.oldValue,this.value)||this.isChipDelete)&&!this.removeValue){var t={e:e,oldValue:this.oldValue,value:this.value,isInteracted:!!e,element:this.element};this.trigger("change",t),this.oldValue=this.value}},s.prototype.ddtCompareValues=function(e,t){if(null===e||null===t)return null===e?t===e:0===e.length&&t===e;if(e.length!==t.length)return!1;for(var i=0;i<e.length;i++)if(e[i]!==t[i])return!1;return!0},s.prototype.focusIn=function(e){if(this.enabled&&!this.readonly&&!this.inputFocus){this.showOverAllClear(),this.inputFocus=!0,t.addClass([this.inputWrapper],[X]),(this.allowMultiSelection||this.showCheckBox)&&("Delimiter"!==this.mode&&this.inputFocus&&(this.chipWrapper&&this.value&&0!==this.value.length&&(t.removeClass([this.chipWrapper],J),t.addClass([this.inputEle],Q)),t.addClass([this.inputWrapper],_),this.popupObj&&this.popupObj.refreshPosition()),this.wrapText||"Custom"===this.mode||(this.inputWrapper.contains(this.overFlowWrapper)&&t.addClass([this.overFlowWrapper],J),"Delimiter"===this.mode?(t.removeClass([this.inputWrapper],_),t.removeClass([this.inputEle],Q)):t.addClass([this.inputWrapper],_),t.removeClass([this.inputWrapper],"e-show-text"),this.ensurePlaceHolder()));var i={isInteracted:!!e,event:e};this.trigger("focus",i)}},s.prototype.treeAction=function(e){var t=this,i={cancel:!1,event:e};this.trigger("keyPress",i,function(i){if(i.cancel)e.stopImmediatePropagation();else switch(e.action){case"escape":case"altUp":t.inputWrapper.focus(),e.preventDefault(),t.isPopupOpen&&t.hidePopup();break;case"tab":case"shiftTab":t.isPopupOpen&&t.hidePopup();break;case"enter":case"ctrlEnter":case"shiftEnter":case"csEnter":t.showCheckBox||(t.isValueChange=!0,t.keyEventArgs=e);break;case"space":t.isValueChange=!0,t.keyEventArgs=e;break;case"ctrlA":t.allowMultiSelection&&t.selectAll(!0)}})},s.prototype.keyActionHandler=function(e){var t=this,i={cancel:!1,event:e};this.trigger("keyPress",i,function(i){if(!i.cancel)switch(e.action){case"escape":case"altUp":t.isPopupOpen&&t.hidePopup();break;case"shiftTab":case"tab":t.isPopupOpen&&t.hidePopup(),t.inputFocus&&t.onFocusOut();break;case"altDown":t.isPopupOpen||(t.showPopup(),e.preventDefault());break;case"moveDown":t.showSelectAll&&t.showCheckBox&&t.checkAllParent.focus()}})},s.prototype.checkAllAction=function(e){var i=this,s={cancel:!1,event:e};this.trigger("keyPress",s,function(s){if(!s.cancel)switch(e.action){case"space":i.clickHandler(e);break;case"moveDown":var l=i.treeObj.element.querySelector("li");l.focus(),t.addClass([l],["e-node-focus"])}})},s.prototype.windowResize=function(){this.popupObj&&(this.popupObj.setProperties({width:this.setWidth()}),this.popupObj.refreshPosition())},s.prototype.resetValueHandler=function(e){var i=t.closest(this.inputWrapper,"form");i&&e.target===i&&(this.isDynamicChange=!0,this.setProperties({value:null},!0),this.resetValue(!0),this.isDynamicChange=!1)},s.prototype.getAriaAttributes=function(){return{}},s.prototype.updateOverFlowView=function(){if(this.overFlowWrapper.classList.remove("e-total-count"),t.removeClass([this.overFlowWrapper],J),this.value&&this.value.length){var e="",i=void 0,s=void 0,l=void 0,n=1,o=void 0,r=void 0,a=0;this.overFlowWrapper.innerHTML="";var h={overflowCountTemplate:"+${count} more..",totalCountTemplate:"${count} selected"};this.l10n=new t.L10n(this.getLocaleName(),h,this.locale);var p=this.l10n.getConstant("overflowCountTemplate"),u=this.l10n.getConstant("totalCountTemplate"),d=this.createElement("span",{className:"e-remain"});this.overFlowWrapper.appendChild(d),d.innerText=p.replace("${count}",this.value.length.toString());var c=d.offsetWidth;if(t.remove(d),this.showDropDownIcon&&(a=t.select(".e-ddt-icon",this.inputWrapper).offsetWidth),!t.isNullOrUndefined(this.value))if("Box"!==this.mode)for(var m=0;!t.isNullOrUndefined(this.value[m]);m++){if(e+=0===m?"":this.delimiterChar+" ",s=this.getOverflowVal(m),e+=s,s=this.overFlowWrapper.innerHTML,this.enableHtmlSanitizer?this.overFlowWrapper.innerText=t.SanitizeHtmlHelper.sanitize(e):this.overFlowWrapper.innerHTML=e,o=this.overFlowWrapper.offsetWidth,i=this.inputWrapper.offsetWidth,o+a+this.clearIconWidth>i){for(void 0!==l&&""!==l&&(s=l,m=n+1),this.overFlowWrapper.innerHTML=s,r=this.value.length-m,o=this.overFlowWrapper.offsetWidth;o+c+a+this.clearIconWidth>=i&&0!==o&&""!==this.overFlowWrapper.innerHTML;){var f=this.overFlowWrapper.innerHTML.split(this.delimiterChar);f.pop(),this.overFlowWrapper.innerHTML=f.join(this.delimiterChar),r++,o=this.overFlowWrapper.offsetWidth}break}o+c+a+this.clearIconWidth<=i?(l=e,n=m):0===m&&(l="",n=-1)}else{t.addClass([this.chipWrapper],J);for(var v=this.chipWrapper.cloneNode(!0),g=t.selectAll(".e-chips",v),y=0;y<g.length;y++){if(s=this.overFlowWrapper.innerHTML,this.overFlowWrapper.appendChild(g[y]),e=this.overFlowWrapper.innerHTML,o=this.overFlowWrapper.offsetWidth,i=this.inputWrapper.offsetWidth,o+a+this.clearIconWidth>i){for(void 0!==l&&""!==l&&(s=l,y=n+1),this.overFlowWrapper.innerHTML=s,r=this.value.length-y,o=this.overFlowWrapper.offsetWidth;o+c+a+this.clearIconWidth>=i&&0!==o&&""!==this.overFlowWrapper.innerHTML;)this.overFlowWrapper.removeChild(this.overFlowWrapper.lastChild),r++,o=this.overFlowWrapper.offsetWidth;break}o+c+a+this.clearIconWidth<=i?(l=e,n=y):0===y&&(l="",n=-1)}}r>0&&this.overFlowWrapper.appendChild(this.updateRemainTemplate(d,r,p,u)),"Box"!==this.mode||this.overFlowWrapper.classList.contains("e-total-count")||t.addClass([d],"e-wrap-count")}else this.overFlowWrapper.innerHTML="",t.addClass([this.overFlowWrapper],J);this.updateDelimMode()},s.prototype.updateRemainTemplate=function(e,i,s,l){return this.overFlowWrapper.firstChild&&3===this.overFlowWrapper.firstChild.nodeType&&""===this.overFlowWrapper.firstChild.nodeValue&&this.overFlowWrapper.removeChild(this.overFlowWrapper.firstChild),e.innerHTML="",e.innerText=!this.overFlowWrapper.firstChild||3!==this.overFlowWrapper.firstChild.nodeType&&"Box"!==this.mode?l.replace("${count}",i.toString()):s.replace("${count}",i.toString()),!this.overFlowWrapper.firstChild||3!==this.overFlowWrapper.firstChild.nodeType&&"Box"!==this.mode?(t.addClass([this.overFlowWrapper],"e-total-count"),t.removeClass([this.overFlowWrapper],"e-wrap-count")):t.removeClass([this.overFlowWrapper],"e-total-count"),e},s.prototype.getOverflowVal=function(e){var i=this.getSelectedData(this.value[e]);return t.getValue(this.treeSettings.loadOnDemand?this.fields.text:"text",i)},s.prototype.updateDelimMode=function(){"Box"!==this.mode?t.select(".e-remain",this.overFlowWrapper)&&!this.overFlowWrapper.classList.contains("e-total-count")?(t.addClass([this.overFlowWrapper],"e-wrap-count"),t.addClass([this.overFlowWrapper],"e-show-text")):(this.overFlowWrapper.classList.remove("e-wrap-count"),t.removeClass([this.overFlowWrapper],"e-wrap-count")):t.select(".e-remain",this.overFlowWrapper)&&this.overFlowWrapper.classList.remove("e-wrap-count")},s.prototype.createHiddenElement=function(){this.allowMultiSelection||this.showCheckBox?this.hiddenElement=this.createElement("select",{attrs:{"aria-hidden":"true",class:"e-ddt-hidden",tabindex:"-1",multiple:""}}):this.hiddenElement=this.createElement("select",{attrs:{"aria-hidden":"true",tabindex:"-1",class:"e-ddt-hidden"}}),t.prepend([this.hiddenElement],this.inputWrapper),this.validationAttribute()},s.prototype.createClearIcon=function(){this.overAllClear=this.createElement("span",{className:"e-clear-icon e-icons"}),t.addClass([this.overAllClear],J),t.removeClass([this.inputWrapper],G),this.showClearButton&&this.inputWrapper.insertBefore(this.overAllClear,this.inputObj.buttons[0])},s.prototype.validationAttribute=function(){var e=this.inputEle.getAttribute("name")?this.inputEle.getAttribute("name"):this.inputEle.getAttribute("id");this.hiddenElement.setAttribute("name",e),this.inputEle.removeAttribute("name");for(var t=["required","aria-required","form"],i=0;i<t.length;i++){var s=this.inputEle.getAttribute(t[i]);s&&(this.hiddenElement.setAttribute(t[i],s),this.inputEle.removeAttribute(t[i]))}},s.prototype.createChip=function(){this.inputWrapper.contains(this.chipWrapper)||(this.chipWrapper=this.createElement("span",{className:"e-chips-wrapper"}),this.chipCollection=this.createElement("span",{className:"e-chips-collection"}),this.chipWrapper.appendChild(this.chipCollection),this.inputWrapper.insertBefore(this.chipWrapper,this.hiddenElement),t.addClass([this.inputWrapper],_),this.getValidMode()&&null!==this.value&&this.value&&0!==this.value.length?t.addClass([this.inputEle],Q):(null===this.value||this.value&&0===this.value.length||this.checkWrapper)&&t.addClass([this.chipWrapper],J))},s.prototype.getValidMode=function(){return!(!this.allowMultiSelection&&!this.showCheckBox)&&("Box"===this.mode||!("Default"!==this.mode||!this.inputFocus))},s.prototype.createSelectAllWrapper=function(){this.checkAllParent=this.createElement("div",{className:"e-selectall-parent",attrs:{tabindex:"0"}}),this.selectAllSpan=this.createElement("span",{className:"e-all-text"}),this.selectAllSpan.textContent="";var e=t.closest(this.element,".e-bigger"),i=t.isNullOrUndefined(e)?"":"e-small";this.checkBoxElement=r.createCheckBox(this.createElement,!0,{cssClass:i}),this.checkBoxElement.setAttribute("role","checkbox"),this.checkAllParent.appendChild(this.checkBoxElement),this.checkAllParent.appendChild(this.selectAllSpan),this.setLocale(),t.EventHandler.add(this.checkAllParent,"mouseup",this.clickHandler,this),this.wireCheckAllWrapperEvents()},s.prototype.clickHandler=function(e){var i;if(i=e.currentTarget&&e.currentTarget.classList.contains("e-selectall-parent")?e.currentTarget.firstElementChild.lastElementChild:e.target,this.checkWrapper=t.closest(i,".e-checkbox-wrapper"),!t.isNullOrUndefined(this.checkWrapper)){this.isClicked=!0;var s=t.select(".e-frame",this.checkWrapper);this.changeState(this.checkWrapper,s.classList.contains(Y)?"uncheck":"check",e),this.isClicked=!1}e.preventDefault()},s.prototype.changeState=function(e,i,s){var l,n=e.getElementsByClassName("e-frame")[0];"check"!==i||n.classList.contains(Y)?"uncheck"===i&&n.classList.contains(Y)&&(n.classList.remove(Y),l="false",this.isReverseUpdate||(this.treeObj.uncheckAll(),this.changeOnBlur||this.triggerChangeEvent(s)),this.setLocale(!1)):(n.classList.add(Y),l="true",this.isReverseUpdate||(this.isCheckAllCalled=!0,this.treeObj.checkAll(),this.changeOnBlur||this.triggerChangeEvent(s)),this.setLocale(!0)),this.setMultiSelect(),this.ensurePlaceHolder(),l="check"===i?"true":"false",t.isNullOrUndefined(l)||e.parentElement.setAttribute("aria-checked",l)},s.prototype.setLocale=function(e){if(this.selectAllSpan)if("Select All"!==this.selectAllText||"Unselect All"!==this.unSelectAllText){var i=e?this.unSelectAllText:this.selectAllText;this.selectAllSpan.textContent="";for(var s=0,l=t.compile(i)({},this,e?"unSelectAllText":"selectAllText",null,!this.isStringTemplate);s<l.length;s++){var n=l[s];this.selectAllSpan.textContent=n.textContent}}else this.selectAllSpan.textContent=e?this.unSelectAllText:this.selectAllText},s.prototype.setAttributes=function(){this.inputEle.setAttribute("tabindex","-1");var e=this.element.getAttribute("id");this.hiddenElement.id=e+"_hidden",this.inputWrapper.setAttribute("tabindex","0"),t.attributes(this.inputWrapper,this.getAriaAttributes())},s.prototype.setHTMLAttributes=function(){if(Object.keys(this.htmlAttributes).length)for(var e=0,i=Object.keys(this.htmlAttributes);e<i.length;e++){var s=i[e];if("class"===s)this.inputWrapper.classList.add(this.htmlAttributes[""+s]);else if("disabled"===s&&"disabled"===this.htmlAttributes[""+s])this.setProperties({enabled:!1},!0),this.setEnable();else if("readonly"!==s||t.isNullOrUndefined(this.htmlAttributes[""+s]))if("style"===s)this.inputWrapper.setAttribute("style",this.htmlAttributes[""+s]);else{var l=["title","id","placeholder","aria-placeholder","role","autocorrect","autocomplete","autocapitalize","spellcheck","minlength","maxlength"],o=["name","required"];0===s.indexOf("data")||o.indexOf(s)>-1?this.hiddenElement.setAttribute(s,this.htmlAttributes[""+s]):l.indexOf(s)>-1&&"placeholder"===s?n.Input.setPlaceholder(this.htmlAttributes[""+s],this.inputEle):this.inputEle.setAttribute(s,this.htmlAttributes[""+s])}else this.setProperties({readonly:!0},!0),this.dataBind()}},s.prototype.updateDataAttribute=function(){for(var e=this.htmlAttributes,i=["class","style","id","type"],s={},l=0;l<this.element.attributes.length;l++)-1===i.indexOf(this.element.attributes[l].name)&&"readonly"!==this.element.attributes[l].name&&(s[this.element.attributes[l].name]=this.element.getAttribute(this.element.attributes[l].name));t.extend(s,e,s),this.setProperties({htmlAttributes:s},!0)},s.prototype.showOverAllClear=function(){this.enabled&&!this.readonly&&this.overAllClear&&(!!this.value&&!!this.value.length&&this.showClearButton?(t.removeClass([this.overAllClear],J),t.addClass([this.inputWrapper],G)):(t.addClass([this.overAllClear],J),t.removeClass([this.inputWrapper],G)))},s.prototype.setTreeValue=function(){if(null!==this.value&&0!==this.value.length){var e=void 0;if(this.showCheckBox||this.allowMultiSelection){for(var i=0;i<this.value.length;i++)e=this.treeObj.getTreeData(this.value[i])[0],t.isNullOrUndefined(e)&&this.value.splice(this.value.indexOf(this.value[i]),1);0!==this.value.length&&this.setValidValue()}else e=this.treeObj.getTreeData(this.value[0])[0],t.isNullOrUndefined(e)?this.setProperties({value:this.currentValue},!0):(this.setProperties({text:e[this.fields.text]},!0),this.setValidValue())}},s.prototype.setTreeText=function(){if((null===this.value||this.isInitialized)&&null!==this.text){var e=void 0,i=[];if(this.showCheckBox||this.allowMultiSelection){for(var s=this.text.split(this.delimiterChar),l=0;l<s.length;l++)e=this.getItems(s[l]),t.isNullOrUndefined(e)||i.push(e[this.fields.value].toString());0!==i.length?(this.oldValue=this.value,this.setProperties({value:i},!0),this.setValidValue()):this.setProperties({text:this.currentText},!0)}else e=this.getItems(this.text),t.isNullOrUndefined(e)?this.setProperties({text:this.currentText},!0):(this.oldValue=this.value,this.setProperties({value:[e[this.fields.value].toString()]},!0),this.setValidValue())}},s.prototype.setSelectedValue=function(){null==this.value&&(this.isInitialized||(this.oldValue=this.value,this.treeObj.selectedNodes.length>0&&!this.showCheckBox?(this.setProperties({value:this.treeObj.selectedNodes},!0),this.allowMultiSelection&&this.updateMode()):this.showCheckBox&&this.treeObj.checkedNodes&&this.treeObj.checkedNodes.length>0&&(this.setProperties({value:this.treeObj.checkedNodes},!0),t.setValue("selectedNodes",[],this.treeObj),this.treeObj.dataBind(),this.updateMode()),this.updateSelectedValues(),this.currentText=this.text,this.currentValue=this.value))},s.prototype.setValidValue=function(){var e=this;if(this.showCheckBox||this.allowMultiSelection)this.showCheckBox?(this.value.filter(function(t){return-1===e.treeObj.checkedNodes.indexOf(t)}).length>0||this.treeSettings.autoCheck)&&(this.treeObj.checkedNodes=this.value.slice(),this.treeObj.dataBind(),this.setMultiSelect()):(this.treeObj.selectedNodes=this.value.slice(),this.selectedText=[],this.updateSelectedValues()),this.treeObj.dataBind();else{n.Input.setValue(this.text,this.inputEle,this.floatLabelType);var i=this.value[0].toString();this.treeObj.selectedNodes[0]!==i&&t.setValue("selectedNodes",[i],this.treeObj)}this.currentText=this.text,this.currentValue=this.value,this.isInitialized&&this.triggerChangeEvent()},s.prototype.getItems=function(e){var i;if(1===this.treeDataType)for(var s=0;s<this.treeItems.length;s++){var l=t.getValue(this.fields.text,this.treeItems[s]);if(!t.isNullOrUndefined(this.treeItems[s])&&!t.isNullOrUndefined(l)&&l===e){i=this.treeItems[s];break}}else i=this.getNestedItems(this.treeItems,this.fields,e);return i},s.prototype.getNestedItems=function(e,s,l){for(var n,o=0,r=e.length;o<r;o++){var a=t.getValue(this.fields.text,e[o]);if(e[o]&&a&&a.toString()===l)return e[o];if("string"!=typeof s.child||t.isNullOrUndefined(t.getValue(s.child,e[o]))){if(this.fields.dataSource instanceof i.DataManager&&!t.isNullOrUndefined(t.getValue("child",e[o]))){if(void 0!==(n=this.getNestedItems(t.getValue("child",e[o]),this.getChildType(s),l)))break}}else{var h=t.getValue(s.child,e[o]);if(void 0!==(n=this.getNestedItems(h,this.getChildType(s),l)))break}}return n},s.prototype.getChildType=function(e){return"string"==typeof e.child||t.isNullOrUndefined(e.child)?e:e.child},s.prototype.renderTree=function(){this.treeObj=new a.TreeView({fields:this.getTreeFields(this.fields),enableRtl:this.enableRtl,nodeSelected:this.onNodeSelected.bind(this),nodeChecked:this.onNodeChecked.bind(this),nodeChecking:this.beforeCheck.bind(this),nodeExpanded:this.onNodeExpanded.bind(this),actionFailure:this.onActionFailure.bind(this),nodeClicked:this.onNodeClicked.bind(this),dataBound:this.OnDataBound.bind(this),allowMultiSelection:this.allowMultiSelection,enableHtmlSanitizer:this.enableHtmlSanitizer,showCheckBox:this.showCheckBox,autoCheck:this.treeSettings.autoCheck,sortOrder:this.sortOrder,expandOn:this.treeSettings.expandOn,loadOnDemand:this.treeSettings.loadOnDemand,nodeSelecting:this.onBeforeSelect.bind(this),nodeTemplate:this.itemTemplate}),this.treeObj.root=this.root?this.root:this,this.treeObj.appendTo("#"+this.tree.id)},s.prototype.renderPopup=function(){var e=this;this.isFilteredData&&(this.filterObj.value="",this.treeObj.fields=this.getTreeFields(this.fields),this.isFilterRestore=!0,this.isFilteredData=!1,this.hideCheckAll(!1));var i=!1,s={cancel:!1};this.trigger("beforeOpen",s,function(s){if(s.cancel?i=!0:(t.addClass([e.inputWrapper],["e-icon-anim"]),e.isFirstRender?(e.popupEle=e.createElement("div",{id:e.element.id+"_options",className:"e-ddt e-popup "+(null!=e.cssClass?e.cssClass:"")}),e.popupEle.setAttribute("role","region"),e.popupEle.setAttribute("aria-label",e.element.id),document.body.appendChild(e.popupEle),e.createPopup(e.popupEle)):(e.popupEle=e.popupObj.element,e.isReact&&e.isFilterRestore&&(e.treeObj.refresh(),e.isFilteredData=!0,e.popupEle.removeChild(e.filterContainer)))),(e.isFirstRender&&!i||e.isFilteredData)&&(e.isFilteredData=!1,t.prepend([e.popupDiv],e.popupEle),t.removeClass([e.popupDiv],"e-ddt-icon-hide"),e.allowFiltering&&e.renderFilter(),e.showCheckBox&&e.showSelectAll&&!e.popupDiv.classList.contains($)&&(e.createSelectAllWrapper(),e.popupEle.insertBefore(e.checkAllParent,e.popupDiv)),e.headerTemplate&&e.setHeaderTemplate(),e.footerTemplate&&e.setFooterTemplate(),e.isFirstRender=!1,e.hasTemplate&&e.portals&&(e.portals=e.portals.concat(e.treeObj.portals),e.renderReactTemplates())),!i){if(t.attributes(e.inputEle,{"aria-expanded":"true"}),e.popupObj.show(null,1e3===e.zIndex?e.inputEle:null),t.removeClass([e.popupEle],"e-ddt-icon-hide"),e.updatePopupHeight(),e.popupObj.refreshPosition(),(!e.showCheckBox||!e.showSelectAll)&&!e.popupDiv.classList.contains($)&&e.treeItems.length>0){var l=e.treeObj.element.querySelector("li");l.focus(),t.addClass([l],["e-node-focus"])}if(e.checkSelectAll&&e.checkBoxElement){var n=t.closest(e.checkBoxElement,".e-checkbox-wrapper");e.changeState(n,"check"),e.checkSelectAll=!1}e.allowFiltering&&(t.removeClass([e.inputWrapper],[X]),e.filterObj.element.focus());var o={popup:e.popupObj};e.trigger("open",o)}})},s.prototype.updatePopupHeight=function(){if(!this.isFirstRender){var e=this.getHeight();if(this.popupEle.style.maxHeight=e,this.allowFiltering){i=Math.round(this.filterContainer.getBoundingClientRect().height);e=t.formatUnit(parseInt(e,10)-i+"px")}if(this.headerTemplate){i=Math.round(this.header.getBoundingClientRect().height);e=t.formatUnit(parseInt(e,10)-i+"px")}if(this.showCheckBox&&this.showSelectAll&&!this.popupDiv.classList.contains($)){i=Math.round(this.checkAllParent.getBoundingClientRect().height);e=t.formatUnit(parseInt(e,10)-i+"px")}if(this.footerTemplate){var i=Math.round(this.footer.getBoundingClientRect().height);e=t.formatUnit(parseInt(e,10)-i+"px")}var s=parseInt(window.getComputedStyle(this.popupEle).borderTopWidth,10);s+=parseInt(window.getComputedStyle(this.popupEle).borderBottomWidth,10),e=t.formatUnit(parseInt(e,10)-s+"px"),this.popupDiv.style.maxHeight=e}},s.prototype.createPopup=function(e){var i=this;this.isFirstRender&&(this.popupObj=new l.Popup(e,{width:this.setWidth(),targetType:"relative",collision:{X:"flip",Y:"flip"},relateTo:this.inputWrapper,zIndex:this.zIndex,enableRtl:this.enableRtl,position:{X:"left",Y:"bottom"},close:function(){i.isPopupOpen=!1},open:function(){t.EventHandler.add(document,"mousedown",i.onDocumentClick,i),i.isPopupOpen=!0},targetExitViewport:function(){t.Browser.isDevice||i.hidePopup()}}))},s.prototype.setElementWidth=function(e){var i=this.inputWrapper;t.isNullOrUndefined(e)||("number"==typeof e?i.style.width=t.formatUnit(e):"string"==typeof e&&(i.style.width=e.match(/px|%|em/)?e:t.formatUnit(e)))},s.prototype.setWidth=function(){var e=t.formatUnit(this.popupWidth);return e.indexOf("%")>-1?e=(this.inputWrapper.offsetWidth*parseFloat(e)/100).toString()+"px":"string"==typeof this.popupWidth&&(e=this.popupWidth.match(/px|em/)?this.popupWidth:e),e},s.prototype.getHeight=function(){var e=t.formatUnit(this.popupHeight);return e.indexOf("%")>-1?e=(document.documentElement.clientHeight*parseFloat(e)/100).toString()+"px":"string"==typeof this.popupHeight&&(e=this.popupHeight.match(/px|em/)?this.popupHeight:e),e},s.prototype.onDocumentClick=function(e){var i=e.target,s=t.closest(i,".e-list-parent"),l=t.closest(i,".e-filter-wrap"),n=t.closest(i,".e-ddt-header"),o=t.closest(i,".e-ddt-footer"),r=!!i.classList.contains("e-dropdown")||(t.matches(i,".e-ddt .e-popup")||t.matches(i,".e-ddt .e-treeview"));this.isPopupOpen&&(!t.isNullOrUndefined(this.inputWrapper)&&this.inputWrapper.contains(i)||s||r||n||o)||(this.allowMultiSelection||this.showCheckBox)&&(this.isPopupOpen&&i.classList.contains("e-chips-close")||this.isPopupOpen&&(i.classList.contains("e-selectall-parent")||i.classList.contains("e-all-text")||i.classList.contains("e-frame")))?(this.isDocumentClick=!1,e.preventDefault()):t.isNullOrUndefined(this.inputWrapper)||this.inputWrapper.contains(i)||!this.inputFocus||l||this.focusOut(e)},s.prototype.onActionFailure=function(e){this.trigger("actionFailure",e),this.l10nUpdate(!0),t.addClass([this.popupDiv],$)},s.prototype.OnDataBound=function(e){this.treeItems=e.data,this.treeItems.length<=0?(this.l10nUpdate(),t.addClass([this.popupDiv],$),this.hideCheckAll(!0)):this.popupDiv.classList.contains($)&&this.treeItems.length>=1&&(t.removeClass([this.popupDiv],$),this.hideCheckAll(!1)),this.treeDataType=this.getTreeDataType(this.treeItems,this.fields),this.isFirstRender&&this.isRemoteData&&(this.setTreeValue(),this.setTreeText(),this.updateHiddenValue(),this.setSelectedValue(),this.wrapText||this.updateView(),this.treeObj.element.focus());var i={data:e.data};this.trigger("dataBound",i),null===this.filterObj&&(this.isFilteredData=!1),this.isFilteredData&&this.treeObj.expandAll(),this.isFilterRestore&&(this.restoreFilterSelection(),this.isFilterRestore=!1)},s.prototype.restoreFilterSelection=function(){this.showCheckBox?this.treeObj.checkedNodes=this.value?this.value:[]:this.treeObj.selectedNodes=this.value?this.value:[]},s.prototype.setCssClass=function(e,i){var s=this.popupObj?[this.inputWrapper,this.popupObj.element]:[this.inputWrapper];t.isNullOrUndefined(i)||""===i||t.removeClass(s,i.split(" ")),t.isNullOrUndefined(e)||""===e||t.addClass(s,e.split(" "))},s.prototype.setEnableRTL=function(e){e?this.inputWrapper.classList.add("e-rtl"):this.inputWrapper.classList.remove("e-rtl"),this.popupObj&&(this.popupObj.enableRtl=e,this.popupObj.dataBind()),this.treeObj&&(this.treeObj.enableRtl=e,this.treeObj.dataBind())},s.prototype.setEnable=function(){n.Input.setEnabled(this.enabled,this.inputEle),this.enabled?(t.removeClass([this.inputWrapper],"e-disabled"),this.inputEle.setAttribute("aria-disabled","false"),this.inputWrapper.setAttribute("aria-disabled","false")):(this.isPopupOpen&&this.hidePopup(),t.addClass([this.inputWrapper],"e-disabled"),this.inputWrapper&&this.inputWrapper.classList.contains(X)&&t.removeClass([this.inputWrapper],[X]),this.inputEle.setAttribute("aria-disabled","true"),this.inputWrapper.setAttribute("aria-disabled","true"))},s.prototype.cloneFields=function(e){return{dataSource:e.dataSource,value:e.value,text:e.text,parentValue:e.parentValue,child:this.cloneChildField(e.child),hasChildren:e.hasChildren,expanded:e.expanded,iconCss:e.iconCss,imageUrl:e.imageUrl,htmlAttributes:e.htmlAttributes,query:e.query,selected:e.selected,selectable:e.selectable,tableName:e.tableName,tooltip:e.tooltip}},s.prototype.cloneChildField=function(e){return"string"==typeof e?e:{dataSource:e.dataSource,value:e.value,text:e.text,parentValue:e.parentValue,child:e.child?this.cloneChildField(e.child):null,hasChildren:e.hasChildren,expanded:e.expanded,iconCss:e.iconCss,imageUrl:e.imageUrl,htmlAttributes:e.htmlAttributes,query:e.query,selected:e.selected,selectable:e.selectable,tableName:e.tableName,tooltip:e.tooltip}},s.prototype.getTreeFields=function(e){return{dataSource:e.dataSource,id:e.value,text:e.text,parentID:e.parentValue,child:this.getTreeChildren(e.child),hasChildren:e.hasChildren,expanded:e.expanded,iconCss:e.iconCss,imageUrl:e.imageUrl,isChecked:e.selected,htmlAttributes:e.htmlAttributes,query:e.query,selectable:e.selectable,selected:e.selected,tableName:e.tableName,tooltip:e.tooltip}},s.prototype.getTreeChildren=function(e){if("string"==typeof e)return e;if(!t.isNullOrUndefined(e)){var i=e=this.getActualProperties(e);return e.value&&(i.id=e.value),e.parentValue&&(i.parentID=e.parentValue),e.child&&(i.child=this.getTreeChildren(e.child)),e.selected&&this.showCheckBox&&(i.isChecked=e.selected),i}return null},s.prototype.getTreeDataType=function(e,s){if(this.fields.dataSource instanceof i.DataManager){for(l=0;l<e.length;l++)if("string"==typeof s.child&&t.isNullOrUndefined(t.getValue(s.child,e[l])))return 1;return 2}t.isNullOrUndefined(this.fields.dataSource)&&(this.fields.dataSource=[]);for(var l=0,n=this.fields.dataSource.length;l<n;l++){if("string"==typeof s.child&&!t.isNullOrUndefined(t.getValue(s.child,this.fields.dataSource[l])))return 2;if(!t.isNullOrUndefined(t.getValue(s.parentValue,this.fields.dataSource[l]))||!t.isNullOrUndefined(t.getValue(s.hasChildren,this.fields.dataSource[l])))return 1}return 1},s.prototype.setFields=function(){this.resetValue(),this.hasTemplate&&this.updateTemplate(),this.treeObj.fields=this.getTreeFields(this.fields),this.treeObj.dataBind()},s.prototype.getEventArgs=function(e){var t,i=e.data,s=e.nodeData;return this.showCheckBox&&("check"===e.action?t="select":"uncheck"===e.action&&(t="un-select")),{action:this.showCheckBox?t:e.action,isInteracted:!!this.isClicked||e.isInteracted,item:e.node,itemData:this.showCheckBox?i[0]:s}},s.prototype.onBeforeSelect=function(e){e.isInteracted&&(this.oldValue=this.value?this.value.slice():this.value,null===this.value&&this.setProperties({value:[]},!0))},s.prototype.updateHiddenValue=function(){this.allowMultiSelection||this.showCheckBox||(this.value&&this.value.length?this.hiddenElement.innerHTML='<option selected value ="'+this.value[0]+'">'+this.text+"</option>":this.hiddenElement.innerHTML="")},s.prototype.onNodeSelected=function(e){if(!this.showCheckBox){var i;if(e.isInteracted){var s=t.getValue("id",e.nodeData).toString();this.allowMultiSelection?this.allowMultiSelection&&this.setMultiSelect():(this.hiddenElement.innerHTML="",this.setProperties({value:[s]},!0),i=this.itemTemplate?t.getValue("text",this.treeObj.getNode(s)):t.getValue("text",e.nodeData).toString(),n.Input.setValue(i,this.inputEle,this.floatLabelType),this.setProperties({text:i},!0),this.currentText=this.text,this.currentValue=this.value,t.attributes(this.inputWrapper,{"aria-describedby":this.element.id}),t.attributes(this.inputWrapper,{"aria-activedescendant":s.toString()}),this.updateHiddenValue(),this.showOverAllClear(),this.hidePopup(),this.isNodeSelected=!0)}var l=this.getEventArgs(e);this.trigger("select",l),this.isValueChange&&!this.changeOnBlur&&(this.triggerChangeEvent(this.keyEventArgs),this.isValueChange=!1)}},s.prototype.onNodeClicked=function(e){!this.changeOnBlur&&this.isNodeSelected&&(this.triggerChangeEvent(e.event),this.isNodeSelected=!1);var t=e.event.target;(t.classList.contains("e-fullrow")||t.classList.contains("e-list-text"))&&this.showCheckBox&&(this.isClicked=!0,"true"===this.treeObj.getNode(e.node).isChecked?this.treeObj.uncheckAll([e.node]):this.treeObj.checkAll([e.node]),this.isClicked=!1,this.setMultiSelect(),this.ensurePlaceHolder()),this.changeOnBlur||!this.allowMultiSelection&&!this.showCheckBox||this.triggerChangeEvent(e.event)},s.prototype.onNodeChecked=function(e){var i=this.getEventArgs(e);if(this.trigger("select",i),this.isFilteredData&&"uncheck"===e.action){var s=t.getValue("id",e.data[0]).toString();this.removeSelectedData(s,!0)}if(!this.isChipDelete&&e.isInteracted&&(this.setMultiSelect(),this.ensurePlaceHolder()),this.showSelectAll&&this.checkBoxElement){var l=this.treeObj.element.querySelectorAll("li"),n=this.treeObj.element.querySelectorAll("li[aria-checked=true]"),o=t.closest(this.checkBoxElement,".e-checkbox-wrapper");o&&"uncheck"===e.action&&(e.isInteracted||0===n.length||!t.isNullOrUndefined(e.data[0])&&"false"===e.data[0].isChecked)?(this.isReverseUpdate=!0,this.changeState(o,"uncheck"),this.isReverseUpdate=!1):o&&"check"===e.action&&n.length===l.length&&(e.isInteracted||this.isCheckAllCalled||!t.isNullOrUndefined(e.data[0])&&"true"===e.data[0].isChecked)&&(this.isReverseUpdate=!0,this.isCheckAllCalled=!1,this.changeState(o,"check"),this.isReverseUpdate=!1)}},s.prototype.beforeCheck=function(e){e.isInteracted&&(this.oldValue=this.value?this.value.slice():this.value)},s.prototype.onNodeExpanded=function(e){if(this.hasTemplate&&this.portals&&this.treeObj.portals){for(var t=0;t<this.treeObj.portals.length;t++)-1==this.portals.indexOf(this.treeObj.portals[t])&&this.portals.push(this.treeObj.portals[t]);this.renderReactTemplates()}},s.prototype.updateClearButton=function(e){if(e?this.inputWrapper.contains(this.overAllClear)?(t.removeClass([this.overAllClear],J),t.addClass([this.inputWrapper],G)):this.inputEle.parentElement.insertBefore(this.overAllClear,this.inputEle.nextSibling):(t.addClass([this.overAllClear],J),t.removeClass([this.inputWrapper],G)),(this.allowMultiSelection||this.showCheckBox)&&this.chipWrapper)for(var i=t.selectAll(".e-chips-close",this.chipWrapper),s=0;s<i.length;s++)e?t.removeClass([i[s]],J):t.addClass([i[s]],J)},s.prototype.updateDropDownIconState=function(e){var i=t.select(".e-ddt-icon",this.inputWrapper);e?(i?t.removeClass([i],J):n.Input.appendSpan(K,this.inputWrapper,this.createElement),t.addClass([this.inputWrapper],"e-show-dd-icon")):(t.addClass([i],J),t.removeClass([this.inputWrapper],"e-show-dd-icon"))},s.prototype.updateMode=function(){if("Custom"!==this.mode)if("Delimiter"!==this.mode){this.inputWrapper.contains(this.chipWrapper)||this.createChip();var e=this.getValidMode();this.chipWrapper.classList.contains(J)&&e?(t.removeClass([this.chipWrapper],J),t.addClass([this.inputWrapper],_)):e||(t.addClass([this.chipWrapper],J),t.removeClass([this.inputWrapper],_));var i=null!==this.value&&0!==this.value.length;e&&i?t.addClass([this.inputEle],Q):t.removeClass([this.inputEle],Q)}else this.inputEle.classList.contains(Q)&&(t.removeClass([this.inputEle],Q),this.chipWrapper&&(t.addClass([this.chipWrapper],J),t.removeClass([this.inputWrapper],_)))},s.prototype.ensurePlaceHolder=function(){(t.isNullOrUndefined(this.value)||this.value&&0===this.value.length)&&(t.removeClass([this.inputEle],Q),this.chipWrapper&&t.addClass([this.chipWrapper],J))},s.prototype.ensureClearIconPosition=function(e){"Never"!==e&&this.inputWrapper.insertBefore(this.overAllClear,this.inputObj.buttons[0])},s.prototype.setMultiSelectValue=function(e){if(this.isFilteredData){for(var i=t.isNullOrUndefined(this.value)?[]:this.value,s=0;s<e.length;s++)(t.isNullOrUndefined(this.value)||-1===this.value.indexOf(e[s]))&&i.push(e[s]);this.setProperties({value:i},!0)}else this.setProperties({value:this.isFromFilterChange&&e&&0==e.length?this.value:e},!0),this.isFromFilterChange=!1,e&&0!==e.length&&!this.showCheckBox&&(this.treeObj.selectedNodes=this.value.slice(),this.treeObj.dataBind())},s.prototype.setMultiSelect=function(){if(this.showCheckBox&&!this.isDynamicChange)this.setMultiSelectValue(this.treeObj.checkedNodes.slice());else{var e=this.allowMultiSelection?this.showCheckBox?this.treeObj.checkedNodes:this.treeObj.selectedNodes:this.value?this.showCheckBox?this.value:[this.value[0]]:null;this.setMultiSelectValue(e),this.showCheckBox&&null!==this.value&&(this.treeObj.checkedNodes=this.value,this.treeObj.dataBind())}this.selectedText=[];var i=!!this.allowMultiSelection||!!this.showCheckBox;this.inputWrapper.contains(this.chipWrapper)&&!i&&(t.removeClass([this.inputEle],Q),t.detach(this.chipWrapper)),this.getValidMode()&&null!==this.value&&(t.addClass([this.inputEle],Q),this.chipWrapper&&t.removeClass([this.chipWrapper],J));var s=!!this.value&&!!this.value.length;this.chipWrapper&&"Box"===this.mode&&!s&&(t.addClass([this.chipWrapper],J),t.removeClass([this.inputEle],Q)),this.updateSelectedValues()},s.prototype.getSelectedData=function(e){var i=null;if(this.isFilteredData)for(var s=0;s<this.selectedData.length;s++)if(t.getValue(this.treeSettings.loadOnDemand?this.fields.value:"id",this.selectedData[s]).toString()===e){i=this.selectedData[s];break}return t.isNullOrUndefined(i)&&(i=this.treeSettings.loadOnDemand?this.getNodeData(e):this.treeObj.getNode(e),t.isNullOrUndefined(i)||this.selectedData.push(i)),i},s.prototype.getNodeData=function(e){if(!t.isNullOrUndefined(e)){if(1!==this.treeDataType)return this.getChildNodeData(this.treeItems,this.fields,e);for(var i=0,s=this.treeItems.length;i<s;i++){var l=t.getValue(this.fields.value,this.treeItems[i]);if(!t.isNullOrUndefined(this.treeItems[i])&&!t.isNullOrUndefined(l)&&l.toString()===e)return this.treeItems[i]}}},s.prototype.getChildNodeData=function(e,s,l){var n;if(t.isNullOrUndefined(e))return n;for(var o=0,r=e.length;o<r;o++){var a=t.getValue(s.value,e[o]);if(e[o]&&a&&a.toString()===l)return e[o];if("string"!=typeof s.child||t.isNullOrUndefined(t.getValue(s.child,e[o]))){if(this.fields.dataSource instanceof i.DataManager&&!t.isNullOrUndefined(t.getValue("child",e[o]))){if(void 0!==(n=this.getChildNodeData(t.getValue("child",e[o]),this.getChildMapperFields(s),l)))break}}else{var h=t.getValue(s.child,e[o]);if(void 0!==(n=this.getChildNodeData(h,this.getChildMapperFields(s),l)))break}}return n},s.prototype.getChildMapperFields=function(e){return"string"==typeof e.child||t.isNullOrUndefined(e.child)?e:e.child},s.prototype.removeSelectedData=function(e,i){var s=t.isNullOrUndefined(this.value)?[]:this.value.slice();s.splice(s.indexOf(e),1),this.setProperties({value:s},i);for(var l=0;l<this.selectedData.length;l++)if(t.getValue(this.treeSettings.loadOnDemand?this.fields.value:"id",this.selectedData[l]).toString()===e){this.selectedData.splice(l,1);break}},s.prototype.updateSelectedValues=function(){this.dataValue="";var e,i,s,l="";this.hiddenElement.innerHTML="";var o="";if(this.isChipDelete&&!this.treeSettings.autoCheck||!this.inputWrapper.contains(this.chipWrapper)||(this.chipCollection.innerHTML=""),this.isFilteredData||(this.selectedData=[]),!t.isNullOrUndefined(this.value)){for(var r=0,a=this.value.length;r<a;r++)s=this.getSelectedData(this.value[r]),i=t.getValue(this.treeSettings.loadOnDemand?this.fields.text:"text",s),this.selectedText.push(i),e=this.selectedText[this.selectedText.length-1],this.selectedText.length>1?(this.dataValue+=this.delimiterChar+" "+e,l+=","+e):(this.dataValue+=e,l+=e),"Custom"===this.mode||"Delimiter"===this.mode||this.isChipDelete&&!this.treeSettings.autoCheck||!this.allowMultiSelection&&!this.showCheckBox||this.setChipValues(e,this.value[r]),o+='<option selected value ="'+this.value[r]+'">'+this.selectedText[this.selectedText.length-1]+"</option>";this.selectedText.length>=1&&this.setProperties({text:l},!0),this.hiddenElement.innerHTML=o,"Custom"===this.mode&&(this.allowMultiSelection||this.showCheckBox)&&this.setTagValues()}var h=this.getValidMode();"Custom"===this.mode||"Box"===this.mode||!this.allowMultiSelection&&!this.showCheckBox||h||this.chipWrapper&&(t.addClass([this.chipWrapper],J),t.removeClass([this.inputWrapper],_)),n.Input.setValue(this.dataValue,this.inputEle,this.floatLabelType),""===l?this.setProperties({text:null},!0):this.setProperties({text:l},!0),this.showClearButton&&this.inputFocus&&this.showOverAllClear(),(this.allowMultiSelection||this.showCheckBox)&&this.popupObj&&this.popupObj.refreshPosition(),this.currentText=this.text,this.currentValue=this.value},s.prototype.setChipValues=function(e,i){this.inputWrapper.contains(this.chipWrapper)||this.createChip();var s=this.createElement("span",{className:"e-chips",attrs:{"data-value":i}}),l=this.createElement("span",{className:"e-chipcontent"}),n=this.createElement("span",{className:"e-chips-close e-icons"});this.enableHtmlSanitizer?l.innerText=t.SanitizeHtmlHelper.sanitize(e):l.innerHTML=e,s.appendChild(l),this.chipCollection.appendChild(s),this.showClearButton&&(s.appendChild(n),t.EventHandler.add(n,"mousedown",this.removeChip,this))},s.prototype.setTagValues=function(){if(null!==this.value&&null!=this.text){this.inputWrapper.contains(this.chipWrapper)||this.createChip(),this.inputWrapper.classList.contains(_)||t.addClass([this.inputWrapper],_);var e=this.createElement("span",{className:"e-chips"});this.inputEle.classList.contains(Q)||t.addClass([this.inputEle],Q),this.chipWrapper.classList.contains(J)&&t.removeClass([this.chipWrapper],J);var i=this.createElement("span",{className:"e-chipcontent"}),s=this.customTemplate,l=this.customTemplateId,n=this.templateComplier(s)({value:this.value,text:this.text},this,"customTemplate",l,this.isStringTemplate,void 0,i);n&&(n=Array.prototype.slice.call(n),t.append(n,i)),e.appendChild(i),this.chipCollection.appendChild(e)}},s.prototype.setSelectAllWrapper=function(e){this.isFirstRender||(e&&!this.popupEle.contains(this.checkAllParent)&&this.showCheckBox?(this.createSelectAllWrapper(),this.popupEle.insertBefore(this.checkAllParent,this.popupDiv)):this.popupEle.contains(this.checkAllParent)&&(t.detach(this.checkAllParent),this.checkAllParent=null))},s.prototype.setHeaderTemplate=function(){this.header?this.header.innerHTML="":(this.header=this.createElement("div"),t.addClass([this.header],"e-ddt-header"));var e=this.templateComplier(this.headerTemplate)({},this,"headerTemplate",this.headerTemplateId,this.isStringTemplate,void 0,this.header);e&&(e=Array.prototype.slice.call(e),t.append(e,this.header)),this.popupEle.insertBefore(this.header,this.checkAllParent?this.checkAllParent:this.popupDiv)},s.prototype.templateComplier=function(e){if(e)try{return"function"!=typeof e&&document.querySelectorAll(e).length?t.compile(document.querySelector(e).innerHTML.trim()):t.compile(e)}catch(i){return t.compile(e)}return t.compile(e)},s.prototype.setFooterTemplate=function(){this.footer?this.footer.innerHTML="":(this.footer=this.createElement("div"),t.addClass([this.footer],"e-ddt-footer"));var e=this.templateComplier(this.footerTemplate)({},this,"footerTemplate",this.footerTemplateId,this.isStringTemplate,void 0,this.footer);e&&(e=Array.prototype.slice.call(e),t.append(e,this.footer)),t.append([this.footer],this.popupEle)},s.prototype.clearAll=function(e){this.enabled&&!this.readonly&&(this.resetValue(),this.showOverAllClear(),(this.allowMultiSelection||this.showCheckBox)&&(this.popupObj&&this.popupObj.refreshPosition(),this.wrapText||this.updateOverflowWrapper(!0)),e&&(this.isClearButtonClick=!0),this.changeOnBlur||this.triggerChangeEvent(e))},s.prototype.removeChip=function(e){if(this.enabled&&!this.readonly){var i=e.target.parentElement,s=i.getAttribute("data-value");this.chipCollection&&i&&t.remove(i),this.isChipDelete=!0,this.isClearButtonClick=!0,this.removeSelectedData(s,!0),this.selectedText=[],this.allowMultiSelection&&(this.treeObj.selectedNodes=this.value.slice(),this.updateSelectedValues()),this.showCheckBox&&(this.treeObj.uncheckAll([s]),this.clearCheckAll(),this.setMultiSelect()),this.triggerChangeEvent(e),this.isChipDelete=!1,this.ensurePlaceHolder()}},s.prototype.resetValue=function(e){this.value==[]&&null==this.text||(n.Input.setValue(null,this.inputEle,this.floatLabelType),e||(this.oldValue=this.value,this.setProperties({value:[]},!0)),this.dataValue=null,this.setProperties({text:null},!0),this.selectedData=[],t.setValue("selectedNodes",[],this.treeObj),this.hiddenElement.innerHTML="",this.showCheckBox&&(this.treeObj.uncheckAll(),this.setMultiSelect(),this.clearCheckAll()),null!==this.oldValue||e?e&&this.triggerChangeEvent():this.removeValue=!0,(this.allowMultiSelection||this.showCheckBox)&&this.chipWrapper&&(this.chipCollection.innerHTML="",this.wrapText||this.updateOverflowWrapper(!0),this.ensurePlaceHolder()))},s.prototype.clearCheckAll=function(){this.showSelectAll&&this.value&&0===this.value.length&&this.setLocale(!1)},s.prototype.selectAllItems=function(e){if(this.showCheckBox)e?(this.isCheckAllCalled=!0,this.treeObj.checkAll()):this.treeObj.uncheckAll(),this.checkSelectAll=e;else if(this.allowMultiSelection)if(e){for(var i=t.selectAll("li",this.treeObj.element),s=void 0,l=[],n=0;n<i.length;n++)s=i[n].getAttribute("data-uid").toString(),l.push(s);this.treeObj.selectedNodes=l}else this.treeObj.selectedNodes=[];this.updateMode(),this.setMultiSelect(),this.wrapText||(e?this.updateView():this.updateOverflowWrapper(!0))},s.prototype.updateTreeSettings=function(e){var t=Object.keys(e.treeSettings)[0];if("autoCheck"===t)this.treeObj.autoCheck=this.treeSettings.autoCheck;else if("loadOnDemand"===t)this.treeObj.loadOnDemand=this.treeSettings.loadOnDemand;else if("expandOn"===t)return this.treeObj.expandOn=this.treeSettings.expandOn,void this.treeObj.dataBind();this.treeObj.dataBind(),this.setMultiSelect(),this.updateValue(this.value)},s.prototype.updateCheckBoxState=function(e){this.hasTemplate&&this.updateTemplate(),this.wrapText||this.updateOverflowWrapper(!1),this.treeObj.showCheckBox=e,this.treeObj.dataBind(),this.isDynamicChange=!0,this.setSelectAllWrapper(this.showSelectAll),this.showSelectAll&&this.setLocale(),this.showCheckBox&&this.updateMode(),this.setMultiSelect(),this.isDynamicChange=!1},s.prototype.updateTemplate=function(){this.popupObj&&(this.clearTemplate(),this.portals=[],this.popupObj.destroy(),this.isPopupOpen?(this.hidePopup(),this.isFirstRender=!0,this.renderPopup()):this.isFirstRender=!0)},s.prototype.l10nUpdate=function(e){if(this.noRecord?this.noRecord.innerHTML="":this.noRecord=this.createElement("div"),"No Records Found"!==this.noRecordsTemplate||"The Request Failed"!==this.actionFailureTemplate){var i=e?this.actionFailureTemplate:this.noRecordsTemplate,s=e?this.actionFailureTemplateId:this.noRecordsTemplateId,l=e?"actionFailureTemplate":"noRecordsTemplate",n=this.templateComplier(i)({},this,l,s,this.isStringTemplate,void 0,this.noRecord);n&&(n=Array.prototype.slice.call(n),t.append(n,this.noRecord))}else{var o={noRecordsTemplate:"No Records Found",actionFailureTemplate:"The Request Failed"};this.l10n=new t.L10n(this.getLocaleName(),o,this.locale),this.noRecord.innerHTML=e?this.l10n.getConstant("actionFailureTemplate"):this.l10n.getConstant("noRecordsTemplate")}t.addClass([this.noRecord],"e-ddt-nodata"),t.prepend([this.noRecord],this.popupDiv)},s.prototype.updateRecordTemplate=function(e){this.treeItems&&this.treeItems.length<=0&&(this.l10nUpdate(e),this.hasTemplate&&this.updateTemplate())},s.prototype.updateOverflowWrapper=function(e){e?this.inputWrapper.contains(this.overFlowWrapper)&&e&&(this.overFlowWrapper.innerHTML=""):this.inputWrapper.contains(this.overFlowWrapper)||(this.overFlowWrapper=this.createElement("span",{className:"e-overflow "+J}),this.inputWrapper.insertBefore(this.overFlowWrapper,this.hiddenElement))},s.prototype.updateMultiSelection=function(e){this.wrapText||this.updateOverflowWrapper(!1),this.treeObj.allowMultiSelection=e,this.treeObj.dataBind(),this.updateOption(),this.allowMultiSelection&&this.updateMode(),this.setMultiSelect()},s.prototype.updateAllowFiltering=function(e){this.isFirstRender||(e?this.renderFilter():this.destroyFilter())},s.prototype.updateFilterPlaceHolder=function(){this.filterObj&&(this.filterObj.placeholder=this.filterBarPlaceholder,this.filterObj.element.setAttribute("aria-label",this.filterBarPlaceholder))},s.prototype.updateValue=function(e){this.isDynamicChange=!0,t.isNullOrUndefined(e)||0===e.length?this.resetValue(!0):(this.setTreeValue(),!this.allowMultiSelection&&!this.showCheckBox||this.wrapText||(this.updateOverflowWrapper(!1),this.updateView())),this.updateHiddenValue(),this.isDynamicChange=!1},s.prototype.updateText=function(e){t.isNullOrUndefined(e)?this.resetValue():(this.setTreeText(),!this.allowMultiSelection&&!this.showCheckBox||this.wrapText||(this.updateOverflowWrapper(!1),this.updateView())),this.updateHiddenValue()},s.prototype.updateModelMode=function(){if(!!this.allowMultiSelection||!!this.showCheckBox){if(!this.wrapText){var e=t.select(".e-overflow",this.inputWrapper);e&&(e.innerHTML="")}this.updateMode(),this.setMultiSelect(),!this.wrapText&&this.value&&0!==this.value.length&&(this.updateOverFlowView(),t.addClass([this.inputEle],Q),"Box"===this.mode?t.removeClass([this.overFlowWrapper,this.inputWrapper],"e-show-text"):t.addClass([this.overFlowWrapper,this.inputWrapper],"e-show-text"))}},s.prototype.updateOption=function(){this.hiddenElement.hasAttribute("multiple")||!this.allowMultiSelection&&!this.showCheckBox?!this.hiddenElement.hasAttribute("multiple")||this.allowMultiSelection||this.showCheckBox||this.hiddenElement.removeAttribute("multiple"):this.hiddenElement.setAttribute("multiple","")},s.prototype.onPropertyChanged=function(e,i){for(var s=0,l=Object.keys(e);s<l.length;s++)switch(l[s]){case"width":this.setElementWidth(e.width),this.popupObj&&(this.popupObj.element.style.width=this.setWidth());break;case"placeholder":n.Input.setPlaceholder(e.placeholder,this.inputEle);break;case"cssClass":this.setCssClass(e.cssClass,i.cssClass);break;case"enableRtl":this.setEnableRTL(this.enableRtl);break;case"fields":this.setFields();break;case"readonly":n.Input.setReadonly(e.readonly,this.inputEle);break;case"enabled":this.setEnable();break;case"floatLabelType":n.Input.removeFloating(this.inputObj),n.Input.addFloating(this.inputEle,e.floatLabelType,this.placeholder,this.createElement),this.ensureClearIconPosition(e.floatLabelType);break;case"showClearButton":this.updateClearButton(e.showClearButton);break;case"allowFiltering":this.updateAllowFiltering(e.allowFiltering);break;case"filterBarPlaceholder":this.updateFilterPlaceHolder();break;case"value":this.oldValue=i.value,this.updateValue(e.value);break;case"text":this.updateText(e.text);break;case"allowMultiSelection":this.updateMultiSelection(e.allowMultiSelection);break;case"mode":if(!this.showCheckBox&&!this.allowMultiSelection)return;"Custom"===this.mode?(this.overFlowWrapper&&t.detach(this.overFlowWrapper),this.chipWrapper&&t.detach(this.chipWrapper),this.setTagValues()):("Custom"===i.mode&&this.updateOverflowWrapper(this.wrapText),this.updateModelMode());break;case"delimiterChar":if("Box"===this.mode)return;(this.showCheckBox||this.allowMultiSelection)&&this.setMultiSelect();break;case"selectAllText":this.showCheckBox&&this.showSelectAll&&this.setLocale();break;case"unSelectAllText":this.showCheckBox&&this.showSelectAll&&this.setLocale(!1);break;case"showSelectAll":this.showCheckBox&&(this.setSelectAllWrapper(e.showSelectAll),this.updatePopupHeight());break;case"showCheckBox":this.updateCheckBoxState(e.showCheckBox),this.wrapText||this.updateOverflowWrapper(!0),this.updatePopupHeight(),this.updateOption();break;case"treeSettings":this.updateTreeSettings(e);break;case"customTemplate":if("Custom"!==this.mode)return;this.chipCollection.innerHTML="",this.setTagValues();break;case"sortOrder":this.hasTemplate&&this.updateTemplate(),this.treeObj.sortOrder=e.sortOrder,this.treeObj.dataBind(),this.updateValue(this.value);break;case"showDropDownIcon":this.updateDropDownIconState(e.showDropDownIcon);break;case"popupWidth":this.popupObj&&(this.popupObj.element.style.width=this.setWidth());break;case"popupHeight":this.popupObj&&this.updatePopupHeight();break;case"zIndex":this.popupObj&&(this.popupObj.zIndex=e.zIndex,this.popupObj.dataBind());break;case"headerTemplate":case"footerTemplate":this.updateTemplate();break;case"itemTemplate":this.updateTemplate(),this.treeObj.nodeTemplate=e.itemTemplate,this.treeObj.dataBind();break;case"noRecordsTemplate":this.updateRecordTemplate();break;case"actionFailureTemplate":this.updateRecordTemplate(!0);break;case"htmlAttributes":this.setHTMLAttributes();break;case"wrapText":this.updateOverflowWrapper(this.wrapText),!this.allowMultiSelection&&!this.showCheckBox||this.wrapText?(t.addClass([this.overFlowWrapper],J),this.chipWrapper&&"Box"===this.mode?t.removeClass([this.chipWrapper],J):(t.removeClass([this.inputWrapper],_),t.removeClass([this.inputEle],Q)),this.ensurePlaceHolder()):this.updateView()}},s.prototype.clear=function(){this.clearAll(),this.inputFocus?this.onFocusOut():(this.changeOnBlur&&this.triggerChangeEvent(),this.removeValue=!1)},s.prototype.destroy=function(){for(this.clearTemplate(),this.unWireEvents(),this.setCssClass(null,this.cssClass),this.setProperties({text:null},!0),this.treeObj.destroy(),this.destroyFilter(),this.popupObj&&(this.popupObj.destroy(),t.detach(this.popupObj.element)),this.element.tagName!==this.getDirective()&&this.inputWrapper.parentElement.insertBefore(this.element,this.inputWrapper),n.Input.setValue(null,this.inputEle,this.floatLabelType),t.detach(this.inputWrapper),t.detach(this.popupDiv),t.detach(this.hiddenElement),this.element.classList.remove("e-input"),(this.showCheckBox||this.allowMultiSelection)&&this.element.classList.remove(Q),this.inputObj=null;this.hiddenElement.options.length>0;)this.hiddenElement.remove(0);this.hiddenElement.innerHTML="",this.hiddenElement=null,this.inputWrapper=null,this.popupDiv=null,this.tree=null,this.popupObj=null,this.treeObj=null,this.overAllClear=null,this.chipWrapper=null,this.chipCollection=null,this.checkAllParent=null,this.selectAllSpan=null,this.checkBoxElement=null,this.checkWrapper=null,this.popupEle=null,this.header=null,this.footer=null,this.overFlowWrapper=null,this.keyboardModule=null,e.prototype.destroy.call(this),this.setProperties({value:[]},!0)},s.prototype.destroyFilter=function(){this.filterObj&&(this.filterObj.destroy(),t.detach(this.filterObj.element),t.detach(this.filterContainer),this.filterObj=null)},s.prototype.ensureVisible=function(e){this.treeObj.ensureVisible(e)},s.prototype.getData=function(e){return this.treeObj.getTreeData(e)},s.prototype.hidePopup=function(){var e={popup:this.popupObj};this.inputWrapper.classList.remove("e-icon-anim"),this.popupEle&&t.addClass([this.popupEle],"e-ddt-icon-hide"),t.attributes(this.inputEle,{"aria-expanded":"false"}),this.popupObj&&this.isPopupOpen&&(this.popupObj.hide(),this.inputFocus&&(this.inputWrapper.focus(),this.allowFiltering&&t.addClass([this.inputWrapper],[X])),this.trigger("close",e))},s.prototype.selectAll=function(e){this.selectAllItems(e)},s.prototype.showPopup=function(){!this.enabled||this.readonly||this.isPopupOpen||(this.renderPopup(),this.focusIn())},s.prototype.getModuleName=function(){return"dropdowntree"},z([t.Property("The Request Failed")],s.prototype,"actionFailureTemplate",void 0),z([t.Property(!1)],s.prototype,"allowFiltering",void 0),z([t.Property(!1)],s.prototype,"allowMultiSelection",void 0),z([t.Property(!0)],s.prototype,"changeOnBlur",void 0),z([t.Property("")],s.prototype,"cssClass",void 0),z([t.Property("${value.length} item(s) selected")],s.prototype,"customTemplate",void 0),z([t.Property(",")],s.prototype,"delimiterChar",void 0),z([t.Property(!0)],s.prototype,"enabled",void 0),z([t.Complex({},Z)],s.prototype,"fields",void 0),z([t.Property(null)],s.prototype,"filterBarPlaceholder",void 0),z([t.Property("StartsWith")],s.prototype,"filterType",void 0),z([t.Property("Never")],s.prototype,"floatLabelType",void 0),z([t.Property(null)],s.prototype,"footerTemplate",void 0),z([t.Property(!1)],s.prototype,"ignoreAccent",void 0),z([t.Property(!0)],s.prototype,"ignoreCase",void 0),z([t.Property(null)],s.prototype,"headerTemplate",void 0),z([t.Property({})],s.prototype,"htmlAttributes",void 0),z([t.Property(null)],s.prototype,"itemTemplate",void 0),z([t.Property("Default")],s.prototype,"mode",void 0),z([t.Property("No Records Found")],s.prototype,"noRecordsTemplate",void 0),z([t.Property(null)],s.prototype,"placeholder",void 0),z([t.Property("300px")],s.prototype,"popupHeight",void 0),z([t.Property("100%")],s.prototype,"popupWidth",void 0),z([t.Property(!1)],s.prototype,"readonly",void 0),z([t.Property(!1)],s.prototype,"showSelectAll",void 0),z([t.Property("Select All")],s.prototype,"selectAllText",void 0),z([t.Property(!1)],s.prototype,"showCheckBox",void 0),z([t.Property(!1)],s.prototype,"enableHtmlSanitizer",void 0),z([t.Property(!0)],s.prototype,"showClearButton",void 0),z([t.Property(!0)],s.prototype,"showDropDownIcon",void 0),z([t.Property("None")],s.prototype,"sortOrder",void 0),z([t.Property(null)],s.prototype,"text",void 0),z([t.Complex({},ee)],s.prototype,"treeSettings",void 0),z([t.Property("Unselect All")],s.prototype,"unSelectAllText",void 0),z([t.Property(null)],s.prototype,"value",void 0),z([t.Property("100%")],s.prototype,"width",void 0),z([t.Property(1e3)],s.prototype,"zIndex",void 0),z([t.Property(!1)],s.prototype,"wrapText",void 0),z([t.Event()],s.prototype,"actionFailure",void 0),z([t.Event()],s.prototype,"beforeOpen",void 0),z([t.Event()],s.prototype,"change",void 0),z([t.Event()],s.prototype,"close",void 0),z([t.Event()],s.prototype,"blur",void 0),z([t.Event()],s.prototype,"created",void 0),z([t.Event()],s.prototype,"dataBound",void 0),z([t.Event()],s.prototype,"destroyed",void 0),z([t.Event()],s.prototype,"filtering",void 0),z([t.Event()],s.prototype,"focus",void 0),z([t.Event()],s.prototype,"keyPress",void 0),z([t.Event()],s.prototype,"open",void 0),z([t.Event()],s.prototype,"select",void 0),s=z([t.NotifyPropertyChanges],s)}(t.Component),ie=function(){var e=function(t,i){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)t.hasOwnProperty(i)&&(e[i]=t[i])})(t,i)};return function(t,i){function s(){this.constructor=t}e(t,i),t.prototype=null===i?Object.create(i):(s.prototype=i.prototype,new s)}}(),se=function(e,t,i,s){var l,n=arguments.length,o=n<3?t:null===s?s=Object.getOwnPropertyDescriptor(t,i):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(e,t,i,s);else for(var r=e.length-1;r>=0;r--)(l=e[r])&&(o=(n<3?l(o):n>3?l(t,i,o):l(t,i))||o);return n>3&&o&&Object.defineProperty(t,i,o),o};M.root="e-combobox";var le={container:null,buttons:[]},ne=function(e){function i(t,i){return e.call(this,t,i)||this}return ie(i,e),i.prototype.preRender=function(){e.prototype.preRender.call(this)},i.prototype.getLocaleName=function(){return"combo-box"},i.prototype.wireEvent=function(){"combobox"===this.getModuleName()&&(t.EventHandler.add(this.inputWrapper.buttons[0],"mousedown",this.preventBlur,this),t.EventHandler.add(this.inputWrapper.container,"blur",this.onBlurHandler,this)),t.isNullOrUndefined(this.inputWrapper.buttons[0])||t.EventHandler.add(this.inputWrapper.buttons[0],"mousedown",this.dropDownClick,this),t.EventHandler.add(this.inputElement,"focus",this.targetFocus,this),this.readonly||(t.EventHandler.add(this.inputElement,"input",this.onInput,this),t.EventHandler.add(this.inputElement,"keyup",this.onFilterUp,this),t.EventHandler.add(this.inputElement,"keydown",this.onFilterDown,this),t.EventHandler.add(this.inputElement,"paste",this.pasteHandler,this),t.EventHandler.add(window,"resize",this.windowResize,this)),this.bindCommonEvent()},i.prototype.preventBlur=function(e){(this.allowFiltering||document.activeElement===this.inputElement||document.activeElement.classList.contains(M.input)||!t.Browser.isDevice)&&t.Browser.isDevice||e.preventDefault()},i.prototype.onBlurHandler=function(i){var s=this.inputElement&&""===this.inputElement.value?null:this.inputElement&&this.inputElement.value;t.isNullOrUndefined(this.listData)||t.isNullOrUndefined(s)||s===this.text||this.customValue(i),e.prototype.onBlurHandler.call(this,i)},i.prototype.targetElement=function(){return this.inputElement},i.prototype.setOldText=function(e){n.Input.setValue(this.text,this.inputElement,this.floatLabelType,this.showClearButton),this.customValue(),this.removeSelection()},i.prototype.setOldValue=function(e){this.allowCustom?this.valueMuteChange(this.value):this.valueMuteChange(null),this.removeSelection(),this.setHiddenValue()},i.prototype.valueMuteChange=function(e){var i=t.isNullOrUndefined(e)?null:e.toString();n.Input.setValue(i,this.inputElement,this.floatLabelType,this.showClearButton),this.setProperties({value:e,text:e,index:null},!0),this.activeIndex=this.index;var s=this.fields,l={};l[s.text]=t.isNullOrUndefined(e)?null:e.toString(),l[s.value]=t.isNullOrUndefined(e)?null:e.toString(),this.itemData=l,this.item=null,this.previousValue!==this.value&&this.detachChangeEvent(null)},i.prototype.updateValues=function(){if(t.isNullOrUndefined(this.value))if(this.text&&t.isNullOrUndefined(this.value)){var e=this.getElementByText(this.text);e?this.setSelection(e,null):(n.Input.setValue(this.text,this.inputElement,this.floatLabelType,this.showClearButton),this.customValue())}else this.setSelection(this.liCollections[this.activeIndex],null);else(e=this.getElementByValue(this.value))?this.setSelection(e,null):this.allowCustom?this.valueMuteChange(this.value):this.valueMuteChange(null);this.setHiddenValue(),n.Input.setValue(this.text,this.inputElement,this.floatLabelType,this.showClearButton)},i.prototype.updateIconState=function(){this.showClearButton&&(this.inputElement&&""!==this.inputElement.value&&!this.readonly?t.removeClass([this.inputWrapper.clearButton],M.clearIconHide):t.addClass([this.inputWrapper.clearButton],M.clearIconHide))},i.prototype.getAriaAttributes=function(){return{role:"combobox","aria-autocomplete":"both","aria-labelledby":this.hiddenElement.id,"aria-expanded":"false","aria-readonly":this.readonly.toString(),autocomplete:"off",autocapitalize:"off",spellcheck:"false"}},i.prototype.searchLists=function(t){this.isTyped=!0,this.isFiltering()?(e.prototype.searchLists.call(this,t),this.ulElement&&""===this.filterInput.value.trim()&&this.setHoverList(this.ulElement.querySelector("."+M.li))):(this.ulElement&&""===this.inputElement.value&&this.preventAutoFill&&this.setHoverList(this.ulElement.querySelector("."+M.li)),this.incrementalSearch(t))},i.prototype.getNgDirective=function(){return"EJS-COMBOBOX"},i.prototype.setSearchBox=function(){return this.filterInput=this.inputElement,this.isFiltering()||this.isReact&&"combobox"===this.getModuleName()?this.inputWrapper:le},i.prototype.onActionComplete=function(t,i,s,l){var n=this;e.prototype.onActionComplete.call(this,t,i,s),this.isSelectCustom&&this.removeSelection(),this.preventAutoFill||"combobox"!==this.getModuleName()||!this.isTyped||this.enableVirtualization||setTimeout(function(){n.inlineSearch()})},i.prototype.getFocusElement=function(){var e=this.isSelectCustom?{text:""}:this.getItemData(),i=t.isNullOrUndefined(this.list)?this.list:this.list.querySelector("."+M.selected);if(e.text&&e.text.toString()===this.inputElement.value&&!t.isNullOrUndefined(i))return i;if((t.Browser.isDevice&&!this.isDropDownClick||!t.Browser.isDevice)&&!t.isNullOrUndefined(this.liCollections)&&this.liCollections.length>0){var s=this.inputElement.value,l=this.sortedData,n=this.typeOfData(l).typeof,o=p(s,this.liCollections,this.filterType,!0,l,this.fields,n);if(this.enableVirtualization&&""!==s&&"autocomplete"!==this.getModuleName()&&this.isTyped&&!this.allowFiltering){var r=!1;for((this.viewPortInfo.endIndex>=this.incrementalEndIndex&&this.incrementalEndIndex<=this.totalItemCount||0==this.incrementalEndIndex)&&(r=!0,this.incrementalStartIndex=this.incrementalEndIndex,0==this.incrementalEndIndex?this.incrementalEndIndex=100>this.totalItemCount?this.totalItemCount:100:this.incrementalEndIndex=this.incrementalEndIndex+100>this.totalItemCount?this.totalItemCount:this.incrementalEndIndex+100,this.updateIncrementalInfo(this.incrementalStartIndex,this.incrementalEndIndex),r=!0),(0!==this.viewPortInfo.startIndex||r)&&this.updateIncrementalView(0,this.itemCount),o=p(s,this.incrementalLiCollections,this.filterType,!0,l,this.fields,n);t.isNullOrUndefined(o)&&this.incrementalEndIndex<this.totalItemCount&&(this.incrementalStartIndex=this.incrementalEndIndex,this.incrementalEndIndex=this.incrementalEndIndex+100>this.totalItemCount?this.totalItemCount:this.incrementalEndIndex+100,this.updateIncrementalInfo(this.incrementalStartIndex,this.incrementalEndIndex),r=!0,(0!==this.viewPortInfo.startIndex||r)&&this.updateIncrementalView(0,this.itemCount),o=p(s,this.incrementalLiCollections,this.filterType,!0,l,this.fields,n),t.isNullOrUndefined(o));)if(t.isNullOrUndefined(o)&&this.incrementalEndIndex>=this.totalItemCount){this.incrementalStartIndex=0,this.incrementalEndIndex=100>this.totalItemCount?this.totalItemCount:100;break}if(o.index&&!(this.viewPortInfo.startIndex>=o.index&&o.index>=this.viewPortInfo.endIndex)){var a=o.index-(this.itemCount/2-2)>0?o.index-(this.itemCount/2-2):0,h=this.viewPortInfo.startIndex+this.itemCount>this.totalItemCount?this.totalItemCount:this.viewPortInfo.startIndex+this.itemCount;a!=this.viewPortInfo.startIndex&&this.updateIncrementalView(a,h)}if(t.isNullOrUndefined(o.item))this.updateIncrementalView(0,this.itemCount),this.list.getElementsByClassName("e-virtual-ddl-content")[0].style=this.getTransformValues(),this.list.scrollTop=0;else{if(this.getIndexByValue(o.item.getAttribute("data-value"))-this.skeletonCount>this.itemCount/2){var a=this.viewPortInfo.startIndex+(this.itemCount/2-2)<this.totalItemCount?this.viewPortInfo.startIndex+(this.itemCount/2-2):this.totalItemCount,h=this.viewPortInfo.startIndex+this.itemCount>this.totalItemCount?this.totalItemCount:this.viewPortInfo.startIndex+this.itemCount;this.updateIncrementalView(a,h)}o.item=this.getElementByValue(o.item.getAttribute("data-value"))}o&&o.item&&(o.item=this.getElementByValue(o.item.getAttribute("data-value")))}var u=o.item;if(t.isNullOrUndefined(u))this.isSelectCustom&&""!==this.inputElement.value.trim()&&(this.removeFocus(),this.enableVirtualization||(this.list.scrollTop=0));else{var d=this.getIndexByValue(u.getAttribute("data-value"))-1,c=parseInt(getComputedStyle(this.liCollections[0],null).getPropertyValue("height"),10);if(!isNaN(c)&&"autocomplete"!==this.getModuleName()){this.removeFocus();var m=this.fields.groupBy?this.liCollections[0].offsetHeight:0;if(this.enableVirtualization){if(this.list.getElementsByClassName("e-virtual-ddl-content")[0].style=this.getTransformValues(),this.enableVirtualization&&!this.fields.groupBy){var f=this.virtualListInfo&&this.virtualListInfo.startIndex?u.offsetTop+this.virtualListInfo.startIndex*u.offsetHeight:u.offsetTop;this.list.scrollTop=f-this.list.querySelectorAll(".e-virtual-list").length*u.offsetHeight}}else this.list.scrollTop=d*c+m;t.addClass([u],M.focus)}}return u}return null},i.prototype.setValue=function(t){return t&&"keydown"===t.type&&"enter"===t.action&&this.removeFillSelection(),this.autofill&&"combobox"===this.getModuleName()&&t&&"keydown"===t.type&&"enter"!==t.action?(this.preventAutoFill=!1,this.inlineSearch(t),!1):e.prototype.setValue.call(this,t)},i.prototype.checkCustomValue=function(){this.itemData=this.getDataByValue(this.value);var e=this.getItemData();this.allowCustom&&t.isNullOrUndefined(e.value)&&t.isNullOrUndefined(e.text)||this.setProperties({value:e.value},!this.allowCustom)},i.prototype.showSpinner=function(){t.isNullOrUndefined(this.spinnerElement)&&(this.spinnerElement="autocomplete"===this.getModuleName()?this.inputWrapper.buttons[0]||this.inputWrapper.clearButton||n.Input.appendSpan("e-input-group-icon e-atc-spinner-icon",this.inputWrapper.container,this.createElement):this.inputWrapper.buttons[0]||this.inputWrapper.clearButton,t.addClass([this.spinnerElement],M.disableIcon),l.createSpinner({target:this.spinnerElement,width:t.Browser.isDevice?"16px":"14px"},this.createElement),l.showSpinner(this.spinnerElement))},i.prototype.hideSpinner=function(){t.isNullOrUndefined(this.spinnerElement)||(l.hideSpinner(this.spinnerElement),t.removeClass([this.spinnerElement],M.disableIcon),this.spinnerElement.classList.contains("e-atc-spinner-icon")?t.detach(this.spinnerElement):this.spinnerElement.innerHTML="",this.spinnerElement=null)},i.prototype.setAutoFill=function(e,t){if(t||this.setHoverList(e),this.autofill&&!this.preventAutoFill){var i=this.getTextByValue(e.getAttribute("data-value")).toString(),s=this.getFormattedValue(e.getAttribute("data-value"));"combobox"===this.getModuleName()&&(this.isSelected||this.previousValue===s?this.updateSelectedItem(e,null,!0):(this.updateSelectedItem(e,null),this.isSelected=!0,this.previousValue=this.getFormattedValue(e.getAttribute("data-value")))),this.isAndroidAutoFill(i)||this.setAutoFillSelection(i,t)}},i.prototype.isAndroidAutoFill=function(e){if(t.Browser.isAndroid){var i=this.getSelectionPoints(),s=this.prevSelectPoints.end,l=i.end,n=this.prevSelectPoints.start,o=i.start;return 0!==s&&(s===e.length&&n===e.length||n>o&&s>l||s===l&&n===o)}return!1},i.prototype.clearAll=function(i,s){(t.isNullOrUndefined(s)||!t.isNullOrUndefined(s)&&t.isNullOrUndefined(s.dataSource))&&e.prototype.clearAll.call(this,i),this.isFiltering()&&!t.isNullOrUndefined(i)&&i.target===this.inputWrapper.clearButton&&this.searchLists(i)},i.prototype.isSelectFocusItem=function(e){return!t.isNullOrUndefined(e)},i.prototype.inlineSearch=function(e){var i=e&&("down"===e.action||"up"===e.action||"home"===e.action||"end"===e.action||"pageUp"===e.action||"pageDown"===e.action),s=i?this.liCollections[this.activeIndex]:this.getFocusElement();if(t.isNullOrUndefined(s))if(""===this.inputElement.value){if(this.activeIndex=null,!t.isNullOrUndefined(this.list)){this.enableVirtualization||(this.list.scrollTop=0);var l=this.list.querySelector("."+M.li);this.setHoverList(l)}}else this.activeIndex=null,this.removeSelection(),this.liCollections&&this.liCollections.length>0&&!this.isCustomFilter&&this.removeFocus();else{if(!i){var n=this.getFormattedValue(s.getAttribute("data-value"));this.activeIndex=this.getIndexByValue(n),this.activeIndex=t.isNullOrUndefined(this.activeIndex)?null:this.activeIndex}this.preventAutoFill=""!==this.inputElement.value&&this.preventAutoFill,this.setAutoFill(s,i)}},i.prototype.incrementalSearch=function(e){this.showPopup(e),t.isNullOrUndefined(this.listData)||(this.inlineSearch(e),e.preventDefault())},i.prototype.setAutoFillSelection=function(e,t){void 0===t&&(t=!1);var i=this.getSelectionPoints(),s=this.inputElement.value.substr(0,i.start);if(s&&s.toLowerCase()===e.substr(0,i.start).toLowerCase()){var l=s+e.substr(s.length,e.length);n.Input.setValue(l,this.inputElement,this.floatLabelType,this.showClearButton),this.inputElement.setSelectionRange(i.start,this.inputElement.value.length)}else t&&(n.Input.setValue(e,this.inputElement,this.floatLabelType,this.showClearButton),this.inputElement.setSelectionRange(0,this.inputElement.value.length))},i.prototype.getValueByText=function(t){return e.prototype.getValueByText.call(this,t,!0,this.ignoreAccent)},i.prototype.unWireEvent=function(){"combobox"===this.getModuleName()&&(t.EventHandler.remove(this.inputWrapper.buttons[0],"mousedown",this.preventBlur),t.EventHandler.remove(this.inputWrapper.container,"blur",this.onBlurHandler)),t.isNullOrUndefined(this.inputWrapper.buttons[0])||t.EventHandler.remove(this.inputWrapper.buttons[0],"mousedown",this.dropDownClick),this.inputElement&&(t.EventHandler.remove(this.inputElement,"focus",this.targetFocus),this.readonly||(t.EventHandler.remove(this.inputElement,"input",this.onInput),t.EventHandler.remove(this.inputElement,"keyup",this.onFilterUp),t.EventHandler.remove(this.inputElement,"keydown",this.onFilterDown),t.EventHandler.remove(this.inputElement,"paste",this.pasteHandler),t.EventHandler.remove(window,"resize",this.windowResize))),this.unBindCommonEvent()},i.prototype.setSelection=function(i,s){e.prototype.setSelection.call(this,i,s),t.isNullOrUndefined(i)||this.autofill||this.isDropDownClick||this.removeFocus()},i.prototype.selectCurrentItem=function(e){var i;this.isPopupOpen&&((i=this.isSelected?this.list.querySelector("."+M.selected):this.list.querySelector("."+M.focus))&&(this.setSelection(i,e),this.isTyped=!1),this.isSelected&&(this.isSelectCustom=!1,this.onChangeEvent(e))),"enter"===e.action&&""===this.inputElement.value.trim()?this.clearAll(e):this.isTyped&&!this.isSelected&&t.isNullOrUndefined(i)&&this.customValue(e),this.hidePopup(e)},i.prototype.setHoverList=function(e){this.removeSelection(),this.isValidLI(e)&&!e.classList.contains(M.selected)&&(this.removeFocus(),e.classList.add(M.focus))},i.prototype.targetFocus=function(e){t.Browser.isDevice&&!this.allowFiltering&&(this.preventFocus=!1),this.onFocus(e),n.Input.calculateWidth(this.inputElement,this.inputWrapper.container)},i.prototype.dropDownClick=function(i){i.preventDefault(),t.Browser.isDevice&&!this.isFiltering()&&(this.preventFocus=!0),e.prototype.dropDownClick.call(this,i)},i.prototype.customValue=function(e){var i=this,s=this.getValueByText(this.inputElement.value);if(this.allowCustom||""===this.inputElement.value)if(""!==this.inputElement.value.trim()){var l=this.value;if(t.isNullOrUndefined(s)){var o=""===this.inputElement.value?null:this.inputElement.value,r={text:o,item:{}};this.initial?this.updateCustomValueCallback(o,r,l):this.trigger("customValueSpecifier",r,function(t){i.updateCustomValueCallback(o,t,l,e)})}else this.isSelectCustom=!1,this.setProperties({value:s}),l!==this.value&&this.onChangeEvent(e)}else this.allowCustom&&(this.isSelectCustom=!0);else{var a=this.previousValue,h=this.value;this.setProperties({value:s}),t.isNullOrUndefined(this.value)&&n.Input.setValue("",this.inputElement,this.floatLabelType,this.showClearButton),this.autofill&&a===this.value&&h!==this.value&&this.onChangeEvent(null)}},i.prototype.updateCustomValueCallback=function(e,i,s,l){var n=this.fields,o=i.item,r={};o&&t.getValue(n.text,o)&&t.getValue(n.value,o)?r=o:(t.setValue(n.text,e,r),t.setValue(n.value,e,r)),this.itemData=r;var a={text:t.getValue(n.text,this.itemData),value:t.getValue(n.value,this.itemData),index:null};this.setProperties(a,!0),this.setSelection(null,null),this.isSelectCustom=!0,s!==this.value&&this.onChangeEvent(l)},i.prototype.onPropertyChanged=function(i,s){"combobox"===this.getModuleName()&&(this.checkData(i),this.setUpdateInitial(["fields","query","dataSource"],i));for(var l=0,o=Object.keys(i);l<o.length;l++){var r=o[l];switch(r){case"readonly":n.Input.setReadonly(this.readonly,this.inputElement),this.readonly?(t.EventHandler.remove(this.inputElement,"input",this.onInput),t.EventHandler.remove(this.inputElement,"keyup",this.onFilterUp),t.EventHandler.remove(this.inputElement,"keydown",this.onFilterDown)):(t.EventHandler.add(this.inputElement,"input",this.onInput,this),t.EventHandler.add(this.inputElement,"keyup",this.onFilterUp,this),t.EventHandler.add(this.inputElement,"keydown",this.onFilterDown,this)),this.setReadOnly();break;case"allowFiltering":this.setSearchBox(),this.isFiltering()&&"combobox"===this.getModuleName()&&t.isNullOrUndefined(this.list)&&e.prototype.renderList.call(this);break;case"allowCustom":break;default:var a=this.getPropObject(r,i,s);e.prototype.onPropertyChanged.call(this,a.newProperty,a.oldProperty),this.isFiltering()&&"dataSource"===r&&t.isNullOrUndefined(this.list)&&this.itemTemplate&&"combobox"===this.getModuleName()&&e.prototype.renderList.call(this)}}},i.prototype.render=function(){e.prototype.render.call(this),this.setSearchBox(),this.isFiltering()&&"combobox"===this.getModuleName()&&t.isNullOrUndefined(this.list)&&e.prototype.renderList.call(this),this.renderComplete()},i.prototype.getModuleName=function(){return"combobox"},i.prototype.addItem=function(t,i){e.prototype.addItem.call(this,t,i)},i.prototype.filter=function(t,i,s){e.prototype.filter.call(this,t,i,s)},i.prototype.showPopup=function(t){e.prototype.showPopup.call(this,t)},i.prototype.hidePopup=function(i){var s=this.inputElement&&""===this.inputElement.value?null:this.inputElement&&this.inputElement.value;if(!t.isNullOrUndefined(this.listData)){var l=this.isEscapeKey;this.isEscapeKey&&(n.Input.setValue(this.typedString,this.inputElement,this.floatLabelType,this.showClearButton),this.isEscapeKey=!1),this.autofill&&this.removeFillSelection();var o=this.isSelectCustom?{text:""}:this.getItemData(),r=t.isNullOrUndefined(this.list)?null:this.list.querySelector("."+M.selected);if(this.inputElement&&o.text===this.inputElement.value&&!t.isNullOrUndefined(r))return this.isSelected&&(this.onChangeEvent(i),this.isSelectCustom=!1),void e.prototype.hidePopup.call(this,i);if("combobox"===this.getModuleName()&&""!==this.inputElement.value.trim()){var a=this.sortedData,h=this.typeOfData(a).typeof,u=p(this.inputElement.value,this.liCollections,"Equal",!0,a,this.fields,h);this.selectedLI=u.item,t.isNullOrUndefined(u.index)&&(u.index=p(this.inputElement.value,this.liCollections,"StartsWith",!0,a,this.fields,h).index),this.activeIndex=u.index,t.isNullOrUndefined(this.selectedLI)?l&&(this.isSelectCustom=!0,this.removeSelection()):this.updateSelectedItem(this.selectedLI,null,!0)}this.isEscapeKey||!this.isTyped||this.isInteracted||this.customValue(i)}t.isNullOrUndefined(this.listData)&&this.allowCustom&&!t.isNullOrUndefined(s)&&s!==this.value&&this.customValue(),e.prototype.hidePopup.call(this,i)},i.prototype.focusIn=function(){this.enabled&&(t.Browser.isDevice&&!this.isFiltering()&&(this.preventFocus=!0),e.prototype.focusIn.call(this))},i.prototype.clear=function(){this.value=null},i.prototype.focusOut=function(t){e.prototype.focusOut.call(this,t)},i.prototype.getItems=function(){return e.prototype.getItems.call(this)},i.prototype.getDataByValue=function(t){return e.prototype.getDataByValue.call(this,t)},i.prototype.renderHightSearch=function(){},se([t.Property(!1)],i.prototype,"autofill",void 0),se([t.Property(!0)],i.prototype,"allowCustom",void 0),se([t.Property({})],i.prototype,"htmlAttributes",void 0),se([t.Property(!1)],i.prototype,"allowFiltering",void 0),se([t.Property(null)],i.prototype,"query",void 0),se([t.Property(null)],i.prototype,"index",void 0),se([t.Property(!0)],i.prototype,"showClearButton",void 0),se([t.Property(!1)],i.prototype,"enableRtl",void 0),se([t.Event()],i.prototype,"customValueSpecifier",void 0),se([t.Event()],i.prototype,"filtering",void 0),se([t.Property(null)],i.prototype,"valueTemplate",void 0),se([t.Property("Never")],i.prototype,"floatLabelType",void 0),se([t.Property(null)],i.prototype,"filterBarPlaceholder",void 0),se([t.Property(null)],i.prototype,"cssClass",void 0),se([t.Property(null)],i.prototype,"headerTemplate",void 0),se([t.Property(null)],i.prototype,"footerTemplate",void 0),se([t.Property(null)],i.prototype,"placeholder",void 0),se([t.Property("100%")],i.prototype,"width",void 0),se([t.Property("300px")],i.prototype,"popupHeight",void 0),se([t.Property("100%")],i.prototype,"popupWidth",void 0),se([t.Property(!1)],i.prototype,"readonly",void 0),se([t.Property(null)],i.prototype,"text",void 0),se([t.Property(null)],i.prototype,"value",void 0),i=se([t.NotifyPropertyChanges],i)}(q),oe=function(){var e=function(t,i){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)t.hasOwnProperty(i)&&(e[i]=t[i])})(t,i)};return function(t,i){function s(){this.constructor=t}e(t,i),t.prototype=null===i?Object.create(i):(s.prototype=i.prototype,new s)}}(),re=function(e,t,i,s){var l,n=arguments.length,o=n<3?t:null===s?s=Object.getOwnPropertyDescriptor(t,i):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(e,t,i,s);else for(var r=e.length-1;r>=0;r--)(l=e[r])&&(o=(n<3?l(o):n>3?l(t,i,o):l(t,i))||o);return n>3&&o&&Object.defineProperty(t,i,o),o};M.root="e-autocomplete",M.icon="e-input-group-icon e-ddl-icon e-search-icon";var ae=function(e){function s(t,i){var s=e.call(this,t,i)||this;return s.isFiltered=!1,s.searchList=!1,s}return oe(s,e),s.prototype.preRender=function(){e.prototype.preRender.call(this)},s.prototype.getLocaleName=function(){return"auto-complete"},s.prototype.getNgDirective=function(){return"EJS-AUTOCOMPLETE"},s.prototype.getQuery=function(e){var s=e?e.clone():this.query?this.query.clone():new i.Query,l=""!==this.queryString||t.isNullOrUndefined(this.value)?this.filterType:"equal",n=""!==this.queryString||t.isNullOrUndefined(this.value)?this.queryString:this.value;if(this.isFiltered)return s;if(null!==this.queryString&&""!==this.queryString){var o=this.typeOfData(this.dataSource).typeof;if((this.dataSource instanceof i.DataManager||"string"!==o)&&"number"!==o){if(!this.enableVirtualization||this.enableVirtualization&&(!(this.dataSource instanceof i.DataManager)||this.dataSource instanceof i.DataManager&&this.virtualGroupDataSource)){var r=t.isNullOrUndefined(this.fields.value)?"":this.fields.value;s.where(r,l,n,this.ignoreCase,this.ignoreAccent)}}else s.where("",l,n,this.ignoreCase,this.ignoreAccent)}if(!t.isNullOrUndefined(this.suggestionCount)&&!this.enableVirtualization){if(20!==this.suggestionCount)for(var a=0;a<s.queries.length;a++)"onTake"===s.queries[a].fn&&s.queries.splice(a,1);s.take(this.suggestionCount)}if(this.enableVirtualization&&(!(this.dataSource instanceof i.DataManager)||this.dataSource instanceof i.DataManager&&this.virtualGroupDataSource)){var h=this.getTakeValue();s.skip(this.virtualItemStartIndex),s.take(h),s.requiresCount()}return s},s.prototype.searchLists=function(i){var s=this;if(this.isTyped=!0,this.isDataFetched=this.isSelectCustom=!1,this.checkAndResetCache(),t.isNullOrUndefined(this.list)&&e.prototype.renderList.call(this,i,!0),this.queryString=this.filterInput.value,"mousedown"!==i.type&&(40===i.keyCode||38===i.keyCode))return this.queryString=""===this.queryString?null:this.queryString,this.beforePopupOpen=!0,void this.resetList(this.dataSource,this.fields,null,i);this.isSelected=!1,this.activeIndex=null;var l={preventDefaultAction:!1,text:this.filterInput.value,updateData:function(e,t,i){l.cancel||(s.isFiltered=!0,s.filterAction(e,t,i))},cancel:!1};this.trigger("filtering",l,function(e){e.cancel||s.isFiltered||e.preventDefaultAction||(s.searchList=!0,s.filterAction(s.dataSource,null,s.fields,i))})},s.prototype.filter=function(e,t,i){this.isFiltered=!0,this.filterAction(e,t,i)},s.prototype.filterAction=function(e,t,s,l){this.beforePopupOpen=!0;var n=this.list.classList.contains("e-nodata");if(""!==this.queryString&&this.queryString.length>=this.minLength){if(this.enableVirtualization&&this.isFiltering()&&this.isTyped&&(this.isPreventScrollAction=!0,this.list.scrollTop=0,this.previousStartIndex=0,this.virtualListInfo=null),this.resetList(e,s,t,l),this.enableVirtualization&&n&&!this.list.classList.contains("e-nodata")&&(this.list.querySelector(".e-virtual-ddl-content")||this.list.appendChild(this.createElement("div",{className:"e-virtual-ddl-content",styles:this.getTransformValues()})).appendChild(this.list.querySelector(".e-list-parent")),!this.list.querySelector(".e-virtual-ddl"))){var o=this.createElement("div",{id:this.element.id+"_popup",className:"e-virtual-ddl",styles:this.GetVirtualTrackHeight()});document.getElementsByClassName("e-popup")[0].querySelector(".e-dropdownbase").appendChild(o)}("autocomplete"===this.getModuleName()&&!(this.dataSource instanceof i.DataManager)||"autocomplete"===this.getModuleName()&&this.dataSource instanceof i.DataManager&&0!=this.totalItemCount)&&this.getFilteringSkeletonCount()}else this.hidePopup(l),this.beforePopupOpen=!1;this.renderReactTemplates()},s.prototype.clearAll=function(i,s){(t.isNullOrUndefined(s)||!t.isNullOrUndefined(s)&&t.isNullOrUndefined(s.dataSource))&&(e.prototype.clearAll.call(this,i),this.checkAndResetCache()),this.beforePopupOpen&&this.hidePopup()},s.prototype.onActionComplete=function(s,l,n,o){this.enableVirtualization||(this.fixedHeaderElement=null),("autocomplete"===this.getModuleName()&&!(this.dataSource instanceof i.DataManager)||"autocomplete"===this.getModuleName()&&this.dataSource instanceof i.DataManager&&0!=this.totalItemCount)&&this.getFilteringSkeletonCount(),e.prototype.onActionComplete.call(this,s,l,n);var r=this.list.querySelector("."+M.li);t.isNullOrUndefined(r)||t.removeClass([r],M.focus),this.postBackAction()},s.prototype.postBackAction=function(){if(this.autofill&&!t.isNullOrUndefined(this.liCollections[0])&&this.searchList){var i=[this.liCollections[0]],s=this.listData,l=this.typeOfData(s).typeof,n=p(this.inputElement.value,i,"StartsWith",this.ignoreCase,s,this.fields,l);this.searchList=!1,t.isNullOrUndefined(n.item)||e.prototype.setAutoFill.call(this,this.liCollections[0],!0)}},s.prototype.setSelection=function(i,s){if(!this.isValidLI(i))return void(this.selectedLI=i);if(!t.isNullOrUndefined(s)&&"keydown"===s.type&&"enter"!==s.action&&"tab"!==s.action&&this.isValidLI(i)){var l=this.getFormattedValue(i.getAttribute("data-value"));if(this.activeIndex=this.getIndexByValue(l),this.setHoverList(i),this.selectedLI=i,this.setScrollPosition(s),this.autofill&&this.isPopupOpen){this.preventAutoFill=!1;var n=s&&"down"===s.action||"up"===s.action||"home"===s.action||"end"===s.action||"pageUp"===s.action||"pageDown"===s.action;e.prototype.setAutoFill.call(this,i,n)}}else e.prototype.setSelection.call(this,i,s)},s.prototype.listOption=function(i,s){var l=this,n=e.prototype.listOption.call(this,i,s);if(t.isNullOrUndefined(n.itemCreated))n.itemCreated=function(e){l.highlight&&(l.element.tagName===l.getNgDirective()&&l.itemTemplate?setTimeout(function(){c(e.item,l.queryString,l.ignoreCase,l.filterType)},0):(/<[^>]*>/g.test(e.item.innerText)&&(e.item.innerText=e.item.innerText.replace(/[\u00A0-\u9999<>&]/g,function(e){return"&#"+e.charCodeAt(0)+";"})),c(e.item,l.queryString,l.ignoreCase,l.filterType)))};else{var o=n.itemCreated;n.itemCreated=function(e){l.highlight&&c(e.item,l.queryString,l.ignoreCase,l.filterType),o.apply(l,[e])}}return n},s.prototype.isFiltering=function(){return!0},s.prototype.renderPopup=function(t){this.enableVirtualization||(this.list.scrollTop=0),e.prototype.renderPopup.call(this,t)},s.prototype.isEditTextBox=function(){return!1},s.prototype.isPopupButton=function(){return this.showPopupButton},s.prototype.isSelectFocusItem=function(e){return!1},s.prototype.setInputValue=function(e,t){var s=t&&t.text?t.text:t?t.value:t,l=e&&e.text?e.text:e&&e.value?e.value:this.value;if(!l||""!==this.typedString||this.allowCustom||this.dataSource instanceof i.DataManager)e&&(e.text?this.setOldText(s):this.setOldValue(s));else{var n="string"===this.typeOfData(this.dataSource).typeof?"":this.fields.value,o=this.getItems().length,r=new i.Query,a=this;new i.DataManager(this.dataSource).executeQuery(r.where(new i.Predicate(n,"equal",l))).then(function(t){t.result.length>0?(a.value=""!==n?t.result[0][a.fields.value].toString():t.result[0].toString(),a.addItem(t.result,o),a.updateValues()):e&&e.text?a.setOldText(s):e&&e.value?a.setOldValue(s):a.updateValues()})}},s.prototype.showPopup=function(e){if(this.enabled){if(this.beforePopupOpen)return void this.refreshPopup();this.beforePopupOpen=!0,this.preventAutoFill=!0,t.isNullOrUndefined(this.list)?this.renderList(e):this.resetList(this.dataSource,this.fields,null,e)}},s.prototype.hidePopup=function(t){e.prototype.hidePopup.call(this,t),this.activeIndex=null,this.virtualListInfo=this.viewPortInfo,this.previousStartIndex=this.viewPortInfo.startIndex,this.startIndex=this.viewPortInfo.startIndex,this.previousEndIndex=this.viewPortInfo.endIndex},s.prototype.onPropertyChanged=function(i,s){"autocomplete"===this.getModuleName()&&this.setUpdateInitial(["fields","query","dataSource"],i);for(var l=0,o=Object.keys(i);l<o.length;l++){var r=o[l];switch(r){case"showPopupButton":if(this.showPopupButton){var a=n.Input.appendSpan(M.icon,this.inputWrapper.container,this.createElement);this.inputWrapper.buttons[0]=a,n.Input.calculateWidth(this.inputElement,this.inputWrapper.container),t.isNullOrUndefined(this.inputWrapper.buttons[0])||t.isNullOrUndefined(this.inputWrapper.container.getElementsByClassName("e-float-text-overflow")[0])||"Never"===this.floatLabelType||this.inputWrapper.container.getElementsByClassName("e-float-text-overflow")[0].classList.add("e-icon"),this.inputWrapper&&this.inputWrapper.buttons&&this.inputWrapper.buttons[0]&&t.EventHandler.add(this.inputWrapper.buttons[0],"click",this.dropDownClick,this)}else t.detach(this.inputWrapper.buttons[0]),this.inputWrapper.buttons[0]=null;break;default:var h=this.getPropObject(r,i,s);e.prototype.onPropertyChanged.call(this,h.newProperty,h.oldProperty)}}},s.prototype.renderHightSearch=function(){if(this.highlight)for(var e=0;e<this.liCollections.length;e++)this.ulElement.querySelector(".e-active")||(f(this.liCollections[e]),c(this.liCollections[e],this.queryString,this.ignoreCase,this.filterType))},s.prototype.getModuleName=function(){return"autocomplete"},s.prototype.render=function(){e.prototype.render.call(this)},re([t.Complex({value:null,iconCss:null,groupBy:null},V)],s.prototype,"fields",void 0),re([t.Property(!0)],s.prototype,"ignoreCase",void 0),re([t.Property(!1)],s.prototype,"showPopupButton",void 0),re([t.Property(!1)],s.prototype,"highlight",void 0),re([t.Property(20)],s.prototype,"suggestionCount",void 0),re([t.Property({})],s.prototype,"htmlAttributes",void 0),re([t.Property(null)],s.prototype,"query",void 0),re([t.Property(1)],s.prototype,"minLength",void 0),re([t.Property("Contains")],s.prototype,"filterType",void 0),re([t.Event()],s.prototype,"filtering",void 0),re([t.Property(null)],s.prototype,"index",void 0),re([t.Property("Never")],s.prototype,"floatLabelType",void 0),re([t.Property(null)],s.prototype,"valueTemplate",void 0),re([t.Property(null)],s.prototype,"filterBarPlaceholder",void 0),re([t.Property(!1)],s.prototype,"allowFiltering",void 0),re([t.Property(null)],s.prototype,"text",void 0),s=re([t.NotifyPropertyChanges],s)}(ne),he="e-float-line",pe="e-float-text",ue="e-label-top",de="e-label-bottom",ce=function(){var e=function(t,i){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)t.hasOwnProperty(i)&&(e[i]=t[i])})(t,i)};return function(t,i){function s(){this.constructor=t}e(t,i),t.prototype=null===i?Object.create(i):(s.prototype=i.prototype,new s)}}(),me=function(e,t,i,s){var l,n=arguments.length,o=n<3?t:null===s?s=Object.getOwnPropertyDescriptor(t,i):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(e,t,i,s);else for(var r=e.length-1;r>=0;r--)(l=e[r])&&(o=(n<3?l(o):n>3?l(t,i,o):l(t,i))||o);return n>3&&o&&Object.defineProperty(t,i,o),o},fe="e-input-focus",ve="e-hide-listitem",ge="e-chips",ye=function(e){function s(t,i){var s=e.call(this,t,i)||this;return s.clearIconWidth=0,s.previousFilterText="",s.isValidKey=!1,s.selectAllEventData=[],s.selectAllEventEle=[],s.resetMainList=null,s.resetFilteredData=!1,s.scrollFocusStatus=!1,s.keyDownStatus=!1,s}return ce(s,e),s.prototype.enableRTL=function(e){e?this.overAllWrapper.classList.add("e-rtl"):this.overAllWrapper.classList.remove("e-rtl"),this.popupObj&&(this.popupObj.enableRtl=e,this.popupObj.dataBind())},s.prototype.requiredModules=function(){var e=[];if("CheckBox"===this.mode){if(this.isGroupChecking=this.enableGroupCheckBox,this.enableGroupCheckBox){var t=this.isProtectedOnChange;this.isProtectedOnChange=!0,this.enableSelectionOrder=!1,this.isProtectedOnChange=t}this.allowCustomValue=!1,this.hideSelectedItem=!1,this.closePopupOnSelect=!1,e.push({member:"CheckBoxSelection",args:[this]})}return e},s.prototype.updateHTMLAttribute=function(){if(Object.keys(this.htmlAttributes).length)for(var e=0,i=Object.keys(this.htmlAttributes);e<i.length;e++){var s=i[e];switch(s){case"class":var l=this.htmlAttributes[""+s].replace(/\s+/g," ").trim();""!==l&&(t.addClass([this.overAllWrapper],l.split(" ")),t.addClass([this.popupWrapper],l.split(" ")));break;case"disabled":this.enable(!1);break;case"placeholder":this.placeholder||(this.inputElement.setAttribute(s,this.htmlAttributes[""+s]),this.setProperties({placeholder:this.inputElement.placeholder},!0),this.refreshPlaceHolder());break;default:var n=["name","required","aria-required","form"],o=["title","role","style","class"];["id"].indexOf(s)>-1?this.element.setAttribute(s,this.htmlAttributes[""+s]):0===s.indexOf("data")||n.indexOf(s)>-1?this.hiddenElement.setAttribute(s,this.htmlAttributes[""+s]):o.indexOf(s)>-1?this.overAllWrapper.setAttribute(s,this.htmlAttributes[""+s]):"size"===s||t.isNullOrUndefined(this.inputElement)||this.inputElement.setAttribute(s,this.htmlAttributes[""+s])}}},s.prototype.updateReadonly=function(e){t.isNullOrUndefined(this.inputElement)||(e||"CheckBox"===this.mode?this.inputElement.setAttribute("readonly","true"):this.inputElement.removeAttribute("readonly"))},s.prototype.updateClearButton=function(e){e?(this.overAllClear.parentNode?this.overAllClear.style.display="":this.componentWrapper.appendChild(this.overAllClear),this.componentWrapper.classList.remove("e-close-icon-hide")):(this.overAllClear.style.display="none",this.componentWrapper.classList.add("e-close-icon-hide"))},s.prototype.updateCssClass=function(){if(!t.isNullOrUndefined(this.cssClass)&&""!==this.cssClass){var e=this.cssClass;""!==(e=this.cssClass.replace(/\s+/g," ").trim())&&(t.addClass([this.overAllWrapper],e.split(" ")),t.addClass([this.popupWrapper],e.split(" ")))}},s.prototype.updateOldPropCssClass=function(e){t.isNullOrUndefined(e)||""===e||""!==(e=e.replace(/\s+/g," ").trim())&&(t.removeClass([this.overAllWrapper],e.split(" ")),t.removeClass([this.popupWrapper],e.split(" ")))},s.prototype.onPopupShown=function(e){var i=this;if(t.Browser.isDevice&&"CheckBox"===this.mode&&this.allowFiltering){var s=this;window.onpopstate=function(){s.hidePopup(),s.inputElement.focus()},history.pushState({},"")}var l={name:"FadeIn",duration:100},n={popup:this.popupObj,event:e,cancel:!1,animation:l};this.trigger("open",n,function(e){e.cancel||(i.focusAtFirstListItem(),i.popupObj&&document.body.appendChild(i.popupObj.element),"CheckBox"===i.mode&&i.enableGroupCheckBox&&!t.isNullOrUndefined(i.fields.groupBy)&&i.updateListItems(i.list.querySelectorAll("li.e-list-item"),i.mainList.querySelectorAll("li.e-list-item")),("CheckBox"===i.mode||i.showDropDownIcon)&&t.addClass([i.overAllWrapper],["e-icon-anim"]),i.refreshPopup(),i.renderReactTemplates(),i.popupObj&&i.popupObj.show(e.animation,1e3===i.zIndex?i.element:null),t.attributes(i.inputElement,{"aria-expanded":"true","aria-owns":i.element.id+"_popup","aria-controls":i.element.id}),i.updateAriaActiveDescendant(),i.isFirstClick&&i.loadTemplate(),"CheckBox"===i.mode&&i.showSelectAll&&t.EventHandler.add(i.popupObj.element,"click",i.clickHandler,i))})},s.prototype.updateListItems=function(e,t){for(var i=0;i<e.length;i++)this.findGroupStart(e[i]),this.findGroupStart(t[i]);this.deselectHeader()},s.prototype.loadTemplate=function(){this.refreshListItems(null),"CheckBox"===this.mode&&this.removeFocus(),this.notify("reOrder",{module:"CheckBoxSelection",enable:"CheckBox"===this.mode,e:this})},s.prototype.setScrollPosition=function(){if((!this.hideSelectedItem&&"CheckBox"!==this.mode||"CheckBox"===this.mode&&!this.enableSelectionOrder)&&!t.isNullOrUndefined(this.value)&&this.value.length>0){var e=this.findListElement(this.hideSelectedItem?this.ulElement:this.list,"li","data-value",this.value[this.value.length-1]);t.isNullOrUndefined(e)||this.scrollBottom(e)}},s.prototype.focusAtFirstListItem=function(){if(this.ulElement&&this.ulElement.querySelector("li."+U.li)){var e=void 0;if("CheckBox"===this.mode)return void this.removeFocus();null!==(e=this.ulElement.querySelector("li."+U.li+":not(."+ve+")"))&&(this.removeFocus(),this.addListFocus(e))}},s.prototype.focusAtLastListItem=function(e){var t;e?t=p(e,this.liCollections,"StartsWith",this.ignoreCase):this.value&&this.value.length?p(this.value[this.value.length-1],this.liCollections,"StartsWith",this.ignoreCase):t=null,t&&null!==t.item&&(this.addListFocus(t.item),((this.allowCustomValue||this.allowFiltering)&&this.isPopupOpen()&&this.closePopupOnSelect||this.closePopupOnSelect)&&this.scrollBottom(t.item,t.index))},s.prototype.getAriaAttributes=function(){return{"aria-disabled":"false",role:"combobox","aria-expanded":"false"}},s.prototype.updateListARIA=function(){t.isNullOrUndefined(this.ulElement)||t.attributes(this.ulElement,{id:this.element.id+"_options",role:"listbox","aria-hidden":"false","aria-label":"list"});var e=!(t.isNullOrUndefined(this.inputElement)||!this.inputElement.disabled);this.isPopupOpen()||t.isNullOrUndefined(this.inputElement)||t.attributes(this.inputElement,this.getAriaAttributes()),e&&t.attributes(this.inputElement,{"aria-disabled":"true"}),this.ensureAriaDisabled(e?"true":"false")},s.prototype.ensureAriaDisabled=function(e){if(this.htmlAttributes&&this.htmlAttributes["aria-disabled"]){var i=this.htmlAttributes;t.extend(i,{"aria-disabled":e},i),this.setProperties({htmlAttributes:i},!0)}},s.prototype.removelastSelection=function(e){if(null!==this.chipCollectionWrapper.querySelector("span.e-chip-selected"))return void this.removeSelectedChip(e);var i=this.chipCollectionWrapper.querySelectorAll("span.e-chips"),s=i[i.length-1].getAttribute("data-value");t.isNullOrUndefined(this.value)||(this.tempValues=this.value.slice());var l=this.getFormattedValue(s);this.allowCustomValue&&("false"!==s&&!1===l||!t.isNullOrUndefined(l)&&"NaN"===l.toString())&&(l=s),this.removeValue(l,e),this.removeChipSelection(),this.updateDelimeter(this.delimiterChar,e),this.makeTextBoxEmpty(),this.mainList&&this.listData&&this.refreshSelection(),this.checkPlaceholderSize()},s.prototype.onActionFailure=function(t){e.prototype.onActionFailure.call(this,t),this.renderPopup(),this.onPopupShown()},s.prototype.targetElement=function(){return this.targetInputElement=this.inputElement,"CheckBox"===this.mode&&this.allowFiltering&&this.notify("targetElement",{module:"CheckBoxSelection",enable:"CheckBox"===this.mode}),this.targetInputElement.value},s.prototype.getForQuery=function(e){for(var s,l=t.isNullOrUndefined(this.fields.value)?this.fields.text:this.fields.value,n=0;n<e.length;n++)s=0===n?new i.Predicate(l,"equal",e[n]):s.or(l,"equal",e[n]);return this.dataSource instanceof i.DataManager&&this.dataSource.adaptor instanceof i.JsonAdaptor?(new i.Query).where(s):this.getQuery(this.query).clone().where(s)},s.prototype.onActionComplete=function(s,l,n,o){e.prototype.onActionComplete.call(this,s,l,n),this.updateSelectElementData(this.allowFiltering);var r=this;if(!t.isNullOrUndefined(this.value)&&!this.allowCustomValue)for(var a=0;a<this.value.length;a++)this.findListElement(this.allowFiltering&&!t.isNullOrUndefined(this.mainList)?this.mainList:s,"li","data-value",r.value[a])||this.dataSource instanceof i.DataManager||(this.value.splice(a,1),a-=1);var h=[];if(t.isNullOrUndefined(this.value)||(h=this.presentItemValue(this.ulElement)),h.length>0&&this.dataSource instanceof i.DataManager&&!t.isNullOrUndefined(this.value)&&null!=this.listData?this.addNonPresentItems(h,this.ulElement,this.listData):this.updateActionList(s,l,n),this.dataSource instanceof i.DataManager&&this.allowCustomValue&&!this.isCustomRendered&&this.inputElement.value&&""!==this.inputElement.value){var p=new i.Query;p=this.allowFiltering?p.where(this.fields.text,"startswith",this.inputElement.value,this.ignoreCase,this.ignoreAccent):p,this.checkForCustomValue(p,this.fields),this.isCustomRendered=!0}this.dataSource instanceof i.DataManager&&"CheckBox"===this.mode&&this.allowFiltering&&this.removeFocus()},s.prototype.updateActionList=function(e,s,l,n){"CheckBox"===this.mode&&this.showSelectAll&&this.notify("selectAll",{module:"CheckBoxSelection",enable:"CheckBox"===this.mode}),this.mainList||this.mainData?(t.isNullOrUndefined(this.mainData)||0===this.mainData.length)&&(this.mainData=s):(this.mainList=e.cloneNode?e.cloneNode(!0):e,this.mainData=s,this.mainListCollection=this.liCollections),(this.remoteCustomValue||s.length<=0)&&this.allowCustomValue&&this.inputFocus&&this.allowFiltering&&this.inputElement.value&&""!==this.inputElement.value&&(this.checkForCustomValue(this.tempQuery,this.fields),this.isCustomRendered)||(this.value&&this.value.length&&("CheckBox"!==this.mode&&!t.isNullOrUndefined(this.inputElement)&&""!==this.inputElement.value.trim()||"CheckBox"===this.mode||(8===this.keyCode||46===this.keyCode)&&this.allowFiltering&&this.allowCustomValue&&this.dataSource instanceof i.DataManager&&""===this.inputElement.value)&&this.refreshSelection(),this.updateListARIA(),this.unwireListEvents(),this.wireListEvents(),t.isNullOrUndefined(this.setInitialValue)||this.setInitialValue(),t.isNullOrUndefined(this.selectAllAction)||this.selectAllAction(),this.setDynValue&&(t.isNullOrUndefined(this.text)||!t.isNullOrUndefined(this.value)&&0!==this.value.length||this.initialTextUpdate(),this.initialValueUpdate(),this.initialUpdate(),this.refreshPlaceHolder(),"CheckBox"!==this.mode&&this.changeOnBlur&&this.updateValueState(null,this.value,null)),this.renderPopup(),this.beforePopupOpen&&(this.beforePopupOpen=!1,this.onPopupShown(l)))},s.prototype.refreshSelection=function(){var e,i,s=this.hideSelectedItem?ve:U.selected;if(!t.isNullOrUndefined(this.value))for(var l=0;!t.isNullOrUndefined(this.value[l]);l++)if(e=this.value[l],i=this.findListElement(this.list,"li","data-value",e)){if(t.addClass([i],s),this.hideSelectedItem&&i.previousSibling&&i.previousElementSibling.classList.contains(U.group)&&(!i.nextElementSibling||i.nextElementSibling.classList.contains(U.group))&&t.addClass([i.previousElementSibling],s),this.hideSelectedItem&&this.fields.groupBy&&!i.previousElementSibling.classList.contains(ve)&&this.hideGroupItem(e),this.hideSelectedItem&&i.classList.contains(U.focus)){t.removeClass([i],U.focus);var n=i.parentElement.querySelectorAll("."+U.li+":not(."+ve+")");n.length>0?(t.addClass([n[0]],U.focus),this.updateAriaActiveDescendant()):this.list&&this.list.querySelectorAll("."+U.li).length>0||(this.l10nUpdate(),t.addClass([this.list],U.noData))}if(i.setAttribute("aria-selected","true"),"CheckBox"===this.mode&&i.classList.contains("e-active")&&0===i.getElementsByClassName("e-check").length){var o={module:"CheckBoxSelection",enable:"CheckBox"===this.mode,li:i,e:null};this.notify("updatelist",o)}}this.checkSelectAll(),this.checkMaxSelection()},s.prototype.hideGroupItem=function(e){var i,s,l=this.hideSelectedItem?ve:U.selected;s=i=this.findListElement(this.ulElement,"li","data-value",e);var n=0,o=0,r=!0,a=!0;do{i&&i.previousElementSibling&&!i.previousElementSibling.classList.contains(ve)&&i.previousElementSibling.classList.contains(U.li)&&(r=!1),!r||!i||i.previousElementSibling&&i.previousElementSibling.classList.contains(U.group)?n=10:i=i.previousElementSibling,s&&s.nextElementSibling&&!s.nextElementSibling.classList.contains(ve)&&s.nextElementSibling.classList.contains(U.li)&&(a=!1),!a||!s||s.nextElementSibling&&s.nextElementSibling.classList.contains(U.group)?o=10:s=s.nextElementSibling}while(n<10||o<10);r&&a&&!i.previousElementSibling.classList.contains(ve)?t.addClass([i.previousElementSibling],l):r&&a&&i.previousElementSibling.classList.contains(ve)&&t.removeClass([i.previousElementSibling],l)},s.prototype.getValidLi=function(){var e=this.ulElement.querySelector("li."+U.li+":not(."+ve+")");return t.isNullOrUndefined(e)?this.liCollections[0]:e},s.prototype.checkSelectAll=function(){var e=this.list.querySelectorAll("li.e-list-group-item.e-active").length,i=this.list.querySelectorAll("li.e-list-item"),s=this.list.querySelectorAll("li."+U.li).length,l=this.list.querySelectorAll("li."+U.selected).length;if(this.enableGroupCheckBox&&!t.isNullOrUndefined(this.fields.groupBy)&&(l-=e),s!==l&&l!==this.maximumSelectionLength||"CheckBox"!==this.mode||!this.showSelectAll?s!==l&&"CheckBox"===this.mode&&this.showSelectAll&&this.notify("checkSelectAll",{module:"CheckBoxSelection",enable:"CheckBox"===this.mode,value:"uncheck"}):this.notify("checkSelectAll",{module:"CheckBoxSelection",enable:"CheckBox"===this.mode,value:"check"}),this.enableGroupCheckBox&&this.fields.groupBy&&!this.enableSelectionOrder){for(var n=0;n<i.length;n++)this.findGroupStart(i[n]);this.deselectHeader()}},s.prototype.openClick=function(e){this.openOnClick||"CheckBox"===this.mode||this.isPopupOpen()?this.openOnClick||"CheckBox"!==this.mode||this.isPopupOpen()||this.showPopup():""!==this.targetElement()?this.showPopup():this.hidePopup(e)},s.prototype.keyUp=function(e){if("CheckBox"===this.mode&&!this.openOnClick){var i=String.fromCharCode(e.keyCode).match(/\w/);t.isNullOrUndefined(i)||(this.isValidKey=!0)}this.isValidKey=this.isPopupOpen()&&8===e.keyCode||this.isValidKey,this.isValidKey=(!e.ctrlKey||86!==e.keyCode)&&this.isValidKey,this.isValidKey&&(this.isValidKey=!1,this.expandTextbox(),this.showOverAllClear(),e.keyCode,this.search(e))},s.prototype.filter=function(e,t,i){this.isFiltered=!0,this.remoteFilterAction=!0,this.dataUpdater(e,t,i)},s.prototype.getQuery=function(e){var s=e?e.clone():this.query?this.query.clone():new i.Query;if(this.isFiltered)return s;if(this.filterAction){if(null!==this.targetElement()){var l=this.typeOfData(this.dataSource).typeof;if((this.dataSource instanceof i.DataManager||"string"!==l)&&"number"!==l){var n=this.fields;s.where(t.isNullOrUndefined(n.text)?"":n.text,this.filterType,this.targetElement(),this.ignoreCase,this.ignoreAccent)}else s.where("",this.filterType,this.targetElement(),this.ignoreCase,this.ignoreAccent)}return s}return e||(this.query?this.query:new i.Query)},s.prototype.dataUpdater=function(e,t,s){if(this.isDataFetched=!1,""===this.targetElement().trim()){var l=this.mainList.cloneNode?this.mainList.cloneNode(!0):this.mainList;this.backCommand&&(this.remoteCustomValue=!1,this.allowCustomValue&&0==l.querySelectorAll("li").length&&this.mainData.length>0&&(this.mainData=[]),this.onActionComplete(l,this.mainData),this.value&&this.value.length&&this.refreshSelection(),8!==this.keyCode&&this.focusAtFirstListItem(),this.notify("reOrder",{module:"CheckBoxSelection",enable:"CheckBox"===this.mode,e:this}))}else this.resetList(e,s,t),this.allowCustomValue&&(e instanceof i.DataManager?(this.remoteCustomValue=!0,this.tempQuery=t):this.checkForCustomValue(t,s));this.refreshPopup(),"CheckBox"===this.mode&&this.removeFocus()},s.prototype.checkForCustomValue=function(e,i){var s=!this.getValueByText(this.inputElement.value,this.ignoreCase),l=i||this.fields;if(this.allowCustomValue&&s){var n=this.inputElement.value,o=!t.isNullOrUndefined(this.mainData)&&this.mainData.length>0?this.mainData[0]:this.mainData;if(o&&"string"!=typeof o&&"number"!=typeof o&&"boolean"!=typeof o){var r={};t.setValue(l.text,n,r),"number"==typeof t.getValue(this.fields.value?this.fields.value:"value",o)?t.setValue(l.value,Math.random(),r):t.setValue(l.value,n,r),(a=JSON.parse(JSON.stringify(this.listData))).splice(0,0,r),this.resetList(a,l,e)}else if(this.listData){var a=JSON.parse(JSON.stringify(this.listData));a.splice(0,0,this.inputElement.value),a[0]="number"!=typeof o||isNaN(parseFloat(a[0]))?a[0]:parseFloat(a[0]),a[0]="boolean"==typeof o?"true"===a[0]||"false"!==a[0]&&a[0]:a[0],this.resetList(a,l)}}else if(this.listData&&this.mainData&&!s&&this.allowCustomValue)if(this.allowFiltering&&this.isRemoteSelection&&this.remoteCustomValue)this.isRemoteSelection=!1,this.resetList(this.listData,l,e);else if(!this.allowFiltering&&this.list){var h=this.list.querySelectorAll("li."+U.li+":not(.e-hide-listitem)"),u=p(this.targetElement(),h,"StartsWith",this.ignoreCase);u&&null!==u.item&&this.addListFocus(u.item)}this.value&&this.value.length&&this.refreshSelection()},s.prototype.getNgDirective=function(){return"EJS-MULTISELECT"},s.prototype.wrapperClick=function(e){if(this.setDynValue=!1,this.enabled){if(e.target===this.overAllClear)return void e.preventDefault();if(this.inputFocus||this.inputElement.focus(),!this.readonly){if(e.target&&-1!==e.target.classList.toString().indexOf("e-chips-close"))return void(this.isPopupOpen()&&this.refreshPopup());!this.isPopupOpen()&&(this.openOnClick||this.showDropDownIcon&&e.target&&"e-input-group-icon e-ddl-icon"===e.target.className)?this.showPopup(e):(this.hidePopup(e),"CheckBox"===this.mode&&(this.showOverAllClear(),this.inputFocus=!0,this.overAllWrapper.classList.contains(fe)||this.overAllWrapper.classList.add(fe)))}this.targetElement()&&""!==this.targetElement()||e.preventDefault()}},s.prototype.enable=function(e){e?(this.overAllWrapper.classList.remove("e-disabled"),this.inputElement.removeAttribute("disabled"),t.attributes(this.inputElement,{"aria-disabled":"false"}),this.ensureAriaDisabled("false")):(this.overAllWrapper.classList.add("e-disabled"),this.inputElement.setAttribute("disabled","true"),t.attributes(this.inputElement,{"aria-disabled":"true"}),this.ensureAriaDisabled("true")),this.enabled!==e&&(this.enabled=e),this.hidePopup()},s.prototype.onBlurHandler=function(e,i){var s;if(t.isNullOrUndefined(e)||(s=e.relatedTarget),this.popupObj&&document.body.contains(this.popupObj.element)&&this.popupObj.element.contains(s))return void("CheckBox"!==this.mode?this.inputElement.focus():"Auto"===this.floatLabelType&&(this.overAllWrapper.classList.contains("e-outline")||this.overAllWrapper.classList.contains("e-filled"))&&t.addClass([this.overAllWrapper],"e-valid-input"));if("Auto"===this.floatLabelType&&this.overAllWrapper.classList.contains("e-outline")&&"CheckBox"===this.mode&&(t.isNullOrUndefined(this.value)||0===this.value.length)&&t.removeClass([this.overAllWrapper],"e-valid-input"),"CheckBox"===this.mode&&t.Browser.isIE&&!t.isNullOrUndefined(e)&&!i)return this.inputFocus=!1,void this.overAllWrapper.classList.remove(fe);if(this.scrollFocusStatus)return t.isNullOrUndefined(e)||e.preventDefault(),this.inputElement.focus(),void(this.scrollFocusStatus=!1);if(this.inputFocus=!1,this.overAllWrapper.classList.remove(fe),this.addTagOnBlur){var l=this.getValueByText(this.inputElement.value,this.ignoreCase,this.ignoreAccent),o=this.findListElement(this.list,"li","data-value",l),r=this.hideSelectedItem?ve:U.selected;!(!o||o.classList.contains(r))&&(this.updateListSelection(o,e),"Delimiter"===this.mode&&this.updateDelimeter(this.delimiterChar))}this.updateDataList(),this.resetMainList&&(this.mainList=this.resetMainList,this.resetMainList=null),this.refreshListItems(null),"Box"!==this.mode&&"CheckBox"!==this.mode&&this.updateDelimView(),this.changeOnBlur&&(this.updateValueState(e,this.value,this.tempValues),this.dispatchEvent(this.hiddenElement,"change")),this.overAllClear.style.display="none",this.isPopupOpen()&&this.hidePopup(e),this.makeTextBoxEmpty(),this.trigger("blur"),this.focused=!0,t.Browser.isDevice&&"Delimiter"!==this.mode&&"CheckBox"!==this.mode&&this.removeChipFocus(),this.removeChipSelection(),this.refreshInputHight(),E(this.overAllWrapper,this.componentWrapper,this.value,this.floatLabelType,this.placeholder),this.refreshPlaceHolder(),(this.allowFiltering||!0===this.enableSelectionOrder&&"CheckBox"===this.mode)&&!t.isNullOrUndefined(this.mainList)&&(this.ulElement=this.mainList),this.checkPlaceholderSize(),n.Input.createSpanElement(this.overAllWrapper,this.createElement),this.calculateWidth(),t.isNullOrUndefined(this.overAllWrapper)||t.isNullOrUndefined(this.overAllWrapper.getElementsByClassName("e-ddl-icon")[0]&&this.overAllWrapper.getElementsByClassName("e-float-text-content")[0]&&"Never"!==this.floatLabelType)||this.overAllWrapper.getElementsByClassName("e-float-text-content")[0].classList.add("e-icon")},s.prototype.calculateWidth=function(){var e;if(this.overAllWrapper){if(!this.showDropDownIcon||this.overAllWrapper.querySelector(".e-label-top"))e=this.overAllWrapper.clientWidth-2*parseInt(getComputedStyle(this.inputElement).paddingRight);else{var t=this.dropIcon.offsetWidth+parseInt(getComputedStyle(this.dropIcon).marginRight);e=this.overAllWrapper.clientWidth-(t+2*parseInt(getComputedStyle(this.inputElement).paddingRight))}"Auto"===this.floatLabelType&&n.Input.calculateWidth(e,this.overAllWrapper,this.getModuleName())}},s.prototype.checkPlaceholderSize=function(){if(this.showDropDownIcon){var e=this.dropIcon.offsetWidth+parseInt(window.getComputedStyle(this.dropIcon).marginRight,10);this.setPlaceholderSize(e)}else t.isNullOrUndefined(this.dropIcon)||this.setPlaceholderSize(this.showDropDownIcon?this.dropIcon.offsetWidth:0)},s.prototype.setPlaceholderSize=function(e){t.isNullOrUndefined(this.value)||0===this.value.length?0!==this.dropIcon.offsetWidth?this.searchWrapper.style.width="calc(100% - "+(e+10)+"px":t.addClass([this.searchWrapper],"e-search-custom-width"):t.isNullOrUndefined(this.value)||(this.searchWrapper.removeAttribute("style"),t.removeClass([this.searchWrapper],"e-search-custom-width"))},s.prototype.refreshInputHight=function(){t.isNullOrUndefined(this.searchWrapper)||(this.value&&this.value.length||!t.isNullOrUndefined(this.text)&&""!==this.text?this.searchWrapper.classList.add("e-zero-size"):this.searchWrapper.classList.remove("e-zero-size"))},s.prototype.validateValues=function(e,t){return JSON.stringify(e.slice().sort())!==JSON.stringify(t.slice().sort())},s.prototype.updateValueState=function(e,t,i){var s=t||[],l=i||[];if(this.initStatus&&this.validateValues(s,l)){var n={e:e,oldValue:i,value:t,isInteracted:!!e,element:this.element,event:e};this.isAngular&&this.preventChange?this.preventChange=!1:this.trigger("change",n),this.updateTempValue(),this.changeOnBlur||this.dispatchEvent(this.hiddenElement,"change")}},s.prototype.updateTempValue=function(){this.value?this.tempValues=this.value.slice():this.tempValues=this.value},s.prototype.updateAriaActiveDescendant=function(){t.isNullOrUndefined(this.ulElement)||t.isNullOrUndefined(this.ulElement.getElementsByClassName("e-item-focus")[0])||t.attributes(this.inputElement,{"aria-activedescendant":this.ulElement.getElementsByClassName("e-item-focus")[0].id})},s.prototype.getPagingCount=function(){var e=this.list.classList.contains(U.noData)?null:getComputedStyle(this.getItems()[0],null).getPropertyValue("height");return Math.round(this.list.offsetHeight/parseInt(e,10))},s.prototype.pageUpSelection=function(e){var t=this.list.querySelectorAll("li."+U.li+":not(."+ve+"):not(.e-reorder-hide)"),i=e>=0?t[e+1]:t[0];this.addListFocus(i),this.scrollBottom(i,this.getIndexByValue(i.getAttribute("data-value")))},s.prototype.pageDownSelection=function(e){this.getItems();var t=this.list.querySelectorAll("li."+U.li+":not(."+ve+"):not(.e-reorder-hide)"),i=e<=t.length?t[e-1]:t[t.length-1];this.addListFocus(i),this.scrollBottom(i,this.getIndexByValue(i.getAttribute("data-value")))},s.prototype.getItems=function(){return this.list||e.prototype.render.call(this),this.ulElement&&this.ulElement.querySelectorAll("."+U.li).length>0?this.ulElement.querySelectorAll("."+U.li+":not(."+ve+")"):[]},s.prototype.focusInHandler=function(e){var t=this;if(this.enabled){if(this.showOverAllClear(),this.inputFocus=!0,this.value&&this.value.length&&("Delimiter"!==this.mode&&"CheckBox"!==this.mode?this.chipCollectionWrapper.style.display="":this.showDelimWrapper(),"CheckBox"!==this.mode&&(this.viewWrapper.style.display="none")),"CheckBox"!==this.mode&&this.searchWrapper.classList.remove("e-zero-size"),this.checkPlaceholderSize(),this.focused){var i={isInteracted:!!e,event:e};this.trigger("focus",i),this.focused=!1}return this.overAllWrapper.classList.contains(fe)||this.overAllWrapper.classList.add(fe),b(this.overAllWrapper,this.componentWrapper),this.isPopupOpen()&&this.refreshPopup(),setTimeout(function(){t.calculateWidth()},150),!0}return!1},s.prototype.showDelimWrapper=function(){"CheckBox"===this.mode?this.viewWrapper.style.display="":this.delimiterWrapper.style.display="",this.componentWrapper.classList.add("e-delimiter")},s.prototype.hideDelimWrapper=function(){this.delimiterWrapper.style.display="none",this.componentWrapper.classList.remove("e-delimiter")},s.prototype.expandTextbox=function(){var e=5;this.placeholder&&(e=e>this.inputElement.placeholder.length?e:this.inputElement.placeholder.length),this.inputElement.value.length>e?this.inputElement.size=this.inputElement.value.length:this.inputElement.size=e},s.prototype.isPopupOpen=function(){return null!==this.popupWrapper&&null!==this.popupWrapper.parentElement},s.prototype.refreshPopup=function(){this.popupObj&&this.mobFilter&&(this.popupObj.setProperties({width:this.calcPopupWidth()}),this.popupObj.refreshPosition(this.overAllWrapper),this.popupObj.resolveCollision())},s.prototype.checkTextLength=function(){return this.targetElement().length<1},s.prototype.popupKeyActions=function(e){switch(e.keyCode){case 38:this.hidePopup(e),"CheckBox"===this.mode&&this.inputElement.focus(),e.preventDefault();break;case 40:this.isPopupOpen()||(this.showPopup(e),e.preventDefault())}},s.prototype.updateAriaAttribute=function(){var e=this.list.querySelector("."+U.focus);if(!t.isNullOrUndefined(e))if(this.inputElement.setAttribute("aria-activedescendant",e.id),this.allowFiltering){var i=this.popupWrapper.querySelector(".e-input-filter");i&&i.setAttribute("aria-activedescendant",e.id)}else"CheckBox"==this.mode&&this.overAllWrapper.setAttribute("aria-activedescendant",e.id)},s.prototype.homeNavigation=function(e){this.removeFocus();var t=this.ulElement.querySelectorAll("li."+U.li+":not(."+ve+"):not(.e-reorder-hide)");if(t.length>0){var i=t[e?0:t.length-1];i.classList.add(U.focus),this.scrollBottom(i),this.updateAriaActiveDescendant()}},s.prototype.onKeyDown=function(e){if(!this.readonly&&(this.enabled||"CheckBox"===this.mode)&&(this.keyCode=e.keyCode,this.keyDownStatus=!0,!(e.keyCode>111&&e.keyCode<124))){if(e.altKey)return void this.popupKeyActions(e);if(this.isPopupOpen()){var t=this.list.querySelector("."+U.focus);switch(e.keyCode){case 36:case 35:this.homeNavigation(36===e.keyCode);break;case 33:return e.preventDefault(),void(t&&(this.getIndexByValue(t.getAttribute("data-value")),this.pageUpSelection(void 0-this.getPagingCount()),this.updateAriaAttribute()));case 34:return e.preventDefault(),void(t&&(this.getIndexByValue(t.getAttribute("data-value")),this.pageDownSelection(void 0+this.getPagingCount()),this.updateAriaAttribute()));case 38:this.arrowUp(e);break;case 40:this.arrowDown(e);break;case 27:return e.preventDefault(),this.hidePopup(e),void("CheckBox"===this.mode&&this.inputElement.focus());case 13:return e.preventDefault(),"CheckBox"!==this.mode&&this.selectByKey(e),void this.checkPlaceholderSize();case 32:return void this.spaceKeySelection(e);case 9:e.preventDefault(),this.hidePopup(e),this.inputElement.focus(),this.overAllWrapper.classList.add(fe)}}else switch(e.keyCode){case 13:case 9:case 16:case 17:case 20:return;case 40:this.openOnClick&&this.showPopup();break;case 27:return e.preventDefault(),void this.escapeAction()}this.checkTextLength()&&this.keyNavigation(e),"CheckBox"===this.mode&&this.enableSelectionOrder&&(this.allowFiltering&&(this.previousFilterText=this.targetElement()),this.checkBackCommand(e)),this.expandTextbox(),"CheckBox"===this.mode&&this.showSelectAll||this.refreshPopup()}},s.prototype.arrowDown=function(e){e.preventDefault(),this.moveByList(1),this.keyAction=!0,(document.activeElement.classList.contains("e-input-filter")||"CheckBox"===this.mode&&!this.allowFiltering&&document.activeElement!==this.list)&&t.EventHandler.add(this.list,"keydown",this.onKeyDown,this),this.updateAriaAttribute()},s.prototype.arrowUp=function(e){e.preventDefault(),this.keyAction=!0;var i=this.list.querySelectorAll("li."+U.li+":not(."+ve+"):not(.e-reorder-hide)");this.enableGroupCheckBox&&"CheckBox"===this.mode&&!t.isNullOrUndefined(this.fields.groupBy)&&(i=this.list.querySelectorAll("li."+U.li+",li."+U.group+":not(."+ve+"):not(.e-reorder-hide)"));var s=this.list.querySelector("li."+U.focus);this.focusFirstListItem=!t.isNullOrUndefined(this.liCollections[0])&&this.liCollections[0].classList.contains("e-item-focus"),Array.prototype.slice.call(i).indexOf(s)<=0&&"CheckBox"===this.mode&&this.allowFiltering&&(this.keyAction=!1,this.notify("inputFocus",{module:"CheckBoxSelection",enable:"CheckBox"===this.mode,value:"focus"})),this.moveByList(-1),this.updateAriaAttribute()},s.prototype.spaceKeySelection=function(e){if("CheckBox"===this.mode){var i=this.list.querySelector("li."+U.focus),s=document.getElementsByClassName("e-selectall-parent")[0];if((!t.isNullOrUndefined(i)||s&&s.classList.contains("e-item-focus"))&&(e.preventDefault(),this.keyAction=!0),this.selectByKey(e),this.keyAction){var l=this.list.querySelector("li."+U.focus);!t.isNullOrUndefined(l)&&s&&s.classList.contains("e-item-focus")&&l.classList.remove("e-item-focus")}}this.checkPlaceholderSize()},s.prototype.checkBackCommand=function(e){(8===e.keyCode&&this.allowFiltering?this.targetElement()!==this.previousFilterText:""===this.targetElement())?this.backCommand=!1:this.backCommand=!0},s.prototype.keyNavigation=function(e){if("Delimiter"!==this.mode&&"CheckBox"!==this.mode&&this.value&&this.value.length)switch(e.keyCode){case 37:e.preventDefault(),this.moveBy(-1,e);break;case 39:e.preventDefault(),this.moveBy(1,e);break;case 8:this.removelastSelection(e);break;case 46:this.removeSelectedChip(e)}else if(8===e.keyCode&&"Delimiter"===this.mode&&this.value&&this.value.length){e.preventDefault();var t=this.value[this.value.length-1];this.removeValue(t,e),this.updateDelimeter(this.delimiterChar,e),this.focusAtLastListItem(t)}},s.prototype.selectByKey=function(e){this.removeChipSelection(),this.selectListByKey(e),this.hideSelectedItem&&this.focusAtFirstListItem()},s.prototype.escapeAction=function(){var e=this.tempValues?this.tempValues.slice():[];this.value&&this.validateValues(this.value,e)&&("CheckBox"!==this.mode&&(this.value=e,this.initialValueUpdate()),"Delimiter"!==this.mode&&"CheckBox"!==this.mode?this.chipCollectionWrapper.style.display="":this.showDelimWrapper(),this.refreshPlaceHolder(),this.value.length?this.showOverAllClear():this.hideOverAllClear()),this.makeTextBoxEmpty()},s.prototype.scrollBottom=function(e,i){var s=this.list.offsetHeight,l=e.offsetTop+e.offsetHeight-this.list.scrollTop,n=this.list.scrollTop+l-s,o=e.offsetTop+e.offsetHeight-this.list.scrollTop;o=this.fields.groupBy&&!t.isNullOrUndefined(this.fixedHeaderElement)?o-this.fixedHeaderElement.offsetHeight:o,0===i?this.list.scrollTop=0:l>s?this.list.scrollTop=n:o>0&&this.list.offsetHeight>o||(this.list.scrollTop=n)},s.prototype.scrollTop=function(e,i){var s=e.offsetTop-this.list.scrollTop;s=this.fields.groupBy&&!t.isUndefined(this.fixedHeaderElement)?s-this.fixedHeaderElement.offsetHeight:s;var l=e.offsetTop+e.offsetHeight-this.list.scrollTop;0===i?this.list.scrollTop=0:s<0?this.list.scrollTop=this.list.scrollTop+s:l>0&&this.list.offsetHeight>l||(this.list.scrollTop=e.offsetTop-(this.fields.groupBy&&!t.isUndefined(this.fixedHeaderElement)?this.fixedHeaderElement.offsetHeight:0))},s.prototype.selectListByKey=function(e){var i,s=this.list.querySelector("li."+U.focus),l=this.value&&this.value.length?this.value.length:0;null!==s&&(e.preventDefault(),s.classList.contains("e-active")&&(l-=1),this.isValidLI(s)&&l<this.maximumSelectionLength?(this.updateListSelection(s,e),this.addListFocus(s),"CheckBox"===this.mode?(this.updateDelimView(),this.updateDelimeter(this.delimiterChar,e),this.refreshInputHight(),this.checkPlaceholderSize(),this.enableGroupCheckBox&&!t.isNullOrUndefined(this.fields.groupBy)&&(i=s.firstElementChild.lastElementChild,this.findGroupStart(i),this.deselectHeader())):this.updateDelimeter(this.delimiterChar,e),this.makeTextBoxEmpty(),"CheckBox"!==this.mode&&this.refreshListItems(s.textContent),this.changeOnBlur||this.updateValueState(e,this.value,this.tempValues),this.refreshPopup()):!this.isValidLI(s)&&l<this.maximumSelectionLength&&((i=s.firstElementChild.lastElementChild).classList.contains("e-check")?this.selectAllItem(!1,e,s):this.selectAllItem(!0,e,s)),this.refreshSelection(),this.closePopupOnSelect&&this.hidePopup(e));var n=document.getElementsByClassName("e-selectall-parent")[0];if(n&&n.classList.contains("e-item-focus")){var o=n.childNodes[0];if(o.classList.contains("e-check")){o.classList.remove("e-check");r={module:"CheckBoxSelection",enable:"CheckBox"===this.mode,value:"check",name:"checkSelectAll"};this.notify("checkSelectAll",r),this.selectAllItem(!1,e,s)}else{o.classList.add("e-check");var r={module:"CheckBoxSelection",enable:"CheckBox"===this.mode,value:"check",name:"checkSelectAll"};this.notify("checkSelectAll",r),this.selectAllItem(!0,e,s)}}this.refreshPlaceHolder()},s.prototype.refreshListItems=function(e){if((this.allowFiltering||"CheckBox"===this.mode&&!0===this.enableSelectionOrder||this.allowCustomValue)&&this.mainList&&this.listData){var i=this.mainList.cloneNode?this.mainList.cloneNode(!0):this.mainList;this.onActionComplete(i,this.mainData),this.focusAtLastListItem(e),this.value&&this.value.length&&this.refreshSelection()}else!t.isNullOrUndefined(this.fields.groupBy)&&this.value&&this.value.length&&this.refreshSelection()},s.prototype.removeSelectedChip=function(e){var i,s=this.chipCollectionWrapper.querySelector("span.e-chip-selected");null!==s&&(t.isNullOrUndefined(this.value)||(this.tempValues=this.value.slice()),null!==(i=s.nextElementSibling)&&(this.removeChipSelection(),this.addChipSelection(i,e)),this.removeValue(s.getAttribute("data-value"),e),this.makeTextBoxEmpty()),this.closePopupOnSelect&&this.hidePopup(e),this.checkPlaceholderSize()},s.prototype.moveByTop=function(e){var t,i=this.list.querySelectorAll("li."+U.li);i.length>1&&(this.removeFocus(),t=e?0:i.length-1,this.addListFocus(i[t]),this.scrollBottom(i[t],t)),this.updateAriaAttribute()},s.prototype.clickHandler=function(e){var t=e.target.className,i=document.getElementsByClassName("e-selectall-parent")[0];"e-input-filter e-input"!==t&&"e-input-group e-control-wrapper e-input-focus"!==t||!i.classList.contains("e-item-focus")||i.classList.remove("e-item-focus")},s.prototype.moveByList=function(e){if(this.list){var i=this.list.querySelectorAll("li."+U.li+":not(."+ve+"):not(.e-reorder-hide)");"CheckBox"===this.mode&&this.enableGroupCheckBox&&!t.isNullOrUndefined(this.fields.groupBy)&&(i=this.list.querySelectorAll("li."+U.li+",li."+U.group+":not(."+ve+"):not(.e-reorder-hide)"));var s=this.list.querySelector("li."+U.focus),l=-1,n=document.getElementsByClassName("e-selectall-parent")[0];if("CheckBox"===this.mode&&this.showSelectAll&&1==e&&!t.isNullOrUndefined(n)&&!n.classList.contains("e-item-focus")&&0==this.list.getElementsByClassName("e-item-focus").length&&this.liCollections.length>1)!this.focusFirstListItem&&n.classList.contains("e-item-focus")?n.classList.remove("e-item-focus"):n.classList.contains("e-item-focus")||n.classList.add("e-item-focus");else if(i.length){"CheckBox"===this.mode&&this.showSelectAll&&!t.isNullOrUndefined(n&&-1==e)&&(!this.focusFirstListItem&&n.classList.contains("e-item-focus")?n.classList.remove("e-item-focus"):this.focusFirstListItem&&!n.classList.contains("e-item-focus")&&n.classList.add("e-item-focus"));for(var o=0;o<i.length;o++)if(i[o]===s){l=o;break}e>0?l<i.length-1&&(this.removeFocus(),this.addListFocus(i[++l]),this.updateCheck(i[l]),this.scrollBottom(i[l],l)):l>0&&(this.removeFocus(),this.addListFocus(i[--l]),this.updateCheck(i[l]),this.scrollTop(i[l],l))}}},s.prototype.updateCheck=function(e){"CheckBox"===this.mode&&this.enableGroupCheckBox&&!t.isNullOrUndefined(this.fields.groupBy)&&(e.firstElementChild.lastElementChild.classList.contains("e-check")?e.classList.add("e-active"):e.classList.remove("e-active"))},s.prototype.moveBy=function(e,t){var i,s=this.chipCollectionWrapper.querySelectorAll("span.e-chips"),l=this.chipCollectionWrapper.querySelector("span.e-chip-selected");null===l?e<0&&this.addChipSelection(s[s.length-1],t):e<0?null!==(i=l.previousElementSibling)&&(this.removeChipSelection(),this.addChipSelection(i,t)):(i=l.nextElementSibling,this.removeChipSelection(),null!==i&&this.addChipSelection(i,t))},s.prototype.chipClick=function(e){if(this.enabled){var i=t.closest(e.target,".e-chips");this.removeChipSelection(),this.addChipSelection(i,e)}},s.prototype.removeChipSelection=function(){this.chipCollectionWrapper&&this.removeChipFocus()},s.prototype.addChipSelection=function(e,i){t.addClass([e],"e-chip-selected"),this.trigger("chipSelection",i)},s.prototype.onChipRemove=function(e){if(3!==e.which&&2!==e.button&&this.enabled&&!this.readonly){var i=e.target.parentElement.getAttribute("data-value"),s=this.getFormattedValue(i);if(this.allowCustomValue&&("false"!==i&&!1===s||!t.isNullOrUndefined(s)&&"NaN"===s.toString())&&(s=i),this.isPopupOpen()&&"CheckBox"!==this.mode&&this.hidePopup(e),this.inputFocus||this.inputElement.focus(),this.removeValue(s,e),t.isNullOrUndefined(this.findListElement(this.list,"li","data-value",s))&&this.mainList&&this.listData){var l=this.mainList.cloneNode?this.mainList.cloneNode(!0):this.mainList;this.onActionComplete(l,this.mainData)}this.updateDelimeter(this.delimiterChar,e),this.placeholder&&"Never"===this.floatLabelType?(this.makeTextBoxEmpty(),this.checkPlaceholderSize()):this.inputElement.value="",e.preventDefault()}},s.prototype.makeTextBoxEmpty=function(){this.inputElement.value="",this.refreshPlaceHolder()},s.prototype.refreshPlaceHolder=function(){this.placeholder&&"Never"===this.floatLabelType?this.value&&this.value.length||!t.isNullOrUndefined(this.text)&&""!==this.text?this.inputElement.placeholder="":this.inputElement.placeholder=S(this.placeholder):this.setFloatLabelType(),this.expandTextbox()},s.prototype.removeAllItems=function(e,i,s,l,n){var o=this.value.indexOf(e),r=this.value.slice(0);r.splice(o,1),this.setProperties({value:[].concat([],r)},!0),l.setAttribute("aria-selected","false");var a=this.hideSelectedItem?ve:U.selected;t.removeClass([l],a),this.notify("activeList",{module:"CheckBoxSelection",enable:"CheckBox"===this.mode,li:l,e:this,index:o}),this.invokeCheckboxSelection(l,i,s),this.updateMainList(!0,e,n),this.updateChipStatus()},s.prototype.invokeCheckboxSelection=function(e,t,i){this.notify("updatelist",{module:"CheckBoxSelection",enable:"CheckBox"===this.mode,li:e,e:t}),this.updateAriaActiveDescendant(),this.value&&this.value.length!==this.mainData.length&&"CheckBox"===this.mode&&this.showSelectAll&&!this.isSelectAll&&!i&&this.notify("checkSelectAll",{module:"CheckBoxSelection",enable:"CheckBox"===this.mode,value:"uncheck"})},s.prototype.removeValue=function(i,s,l,n){var o=this,r=this.value.indexOf(this.getFormattedValue(i));-1===r&&this.allowCustomValue&&!t.isNullOrUndefined(i)&&(r=this.value.indexOf(i.toString()));var a=s&&s.target;n=!!(n||a&&a.classList.contains("e-close-hooker"))||null;var h=this.hideSelectedItem?ve:U.selected;if(-1!==r){var p=this.findListElement(this.list,"li","data-value",i),u=this.getDataByValue(i),d={e:s,item:p,itemData:u,isInteracted:!!s,cancel:!1};this.trigger("removing",d,function(a){if(a.cancel)o.removeIndex++;else{var d=o.value.slice(0);if(d.splice(r,1),o.setProperties({value:[].concat([],d)},!0),null!==p){var c=o.findListElement(o.mainList,"li","data-value",i);p.setAttribute("aria-selected","false"),t.removeClass([p],h),c&&(c.setAttribute("aria-selected","false"),t.removeClass([p,c],h)),o.notify("activeList",{module:"CheckBoxSelection",enable:"CheckBox"===o.mode,li:p,e:o,index:r}),o.invokeCheckboxSelection(p,s,n)}if(o.hideSelectedItem&&o.fields.groupBy&&p&&o.hideGroupItem(i),o.hideSelectedItem&&o.fixedHeaderElement&&o.fields.groupBy&&"CheckBox"!==o.mode&&o.isPopupOpen()&&e.prototype.scrollStop.call(o),o.updateMainList(!0,i),o.removeChip(i),o.updateChipStatus(),(o.value&&o.value.length?o.value.length:0)<o.maximumSelectionLength){var m=o.list.querySelectorAll("li."+U.li+":not(.e-active)");t.removeClass(m,"e-disable")}o.trigger("removed",a);var f=s&&s.currentTarget,v=!(!f||!f.classList.contains("e-selectall-parent"))||null;if(!o.changeOnBlur&&!n&&s&&l&&!v&&o.isSelectAllTarget&&o.updateValueState(s,o.value,o.tempValues),l&&(o.selectAllEventData.push(u),o.selectAllEventEle.push(p)),1===l){o.changeOnBlur||o.updateValueState(s,o.value,o.tempValues);var g={event:s,items:o.selectAllEventEle,itemData:o.selectAllEventData,isInteracted:!!s,isChecked:!1};o.trigger("selectedAll",g),o.selectAllEventData=[],o.selectAllEventEle=[]}!n||1!==l&&null!==l||o.clearAllCallback(s,n)}})}},s.prototype.updateMainList=function(e,i,s){if(this.allowFiltering||"CheckBox"===this.mode){var l=s||this.findListElement(this.mainList,"li","data-value",i);l&&(e?(l.setAttribute("aria-selected","false"),t.removeClass([l],this.hideSelectedItem?ve:U.selected),"CheckBox"===this.mode&&t.removeClass([l.firstElementChild.lastElementChild],"e-check")):(l.setAttribute("aria-selected","true"),t.addClass([l],this.hideSelectedItem?ve:U.selected),"CheckBox"===this.mode&&t.addClass([l.firstElementChild.lastElementChild],"e-check")))}},s.prototype.removeChip=function(e){if(this.chipCollectionWrapper){var i=this.findListElement(this.chipCollectionWrapper,"span","data-value",e);i&&t.remove(i)}},s.prototype.setWidth=function(e){t.isNullOrUndefined(e)||("number"==typeof e?this.overAllWrapper.style.width=t.formatUnit(e):"string"==typeof e&&(this.overAllWrapper.style.width=e.match(/px|%|em/)?e:t.formatUnit(e)))},s.prototype.updateChipStatus=function(){this.value&&this.value.length?(t.isNullOrUndefined(this.chipCollectionWrapper)||(this.chipCollectionWrapper.style.display=""),"Delimiter"!==this.mode&&"CheckBox"!==this.mode||this.showDelimWrapper(),this.showOverAllClear()):(t.isNullOrUndefined(this.chipCollectionWrapper)||(this.chipCollectionWrapper.style.display="none"),t.isNullOrUndefined(this.delimiterWrapper)||(this.delimiterWrapper.style.display="none"),this.hideOverAllClear())},s.prototype.addValue=function(e,t,i){this.value||(this.value=[]),this.value.indexOf(e)<0&&this.setProperties({value:[].concat([],this.value,[e])},!0);var s=this.findListElement(this.list,"li","data-value",e);this.removeFocus(),s&&(this.addListFocus(s),this.addListSelection(s)),"Delimiter"!==this.mode&&"CheckBox"!==this.mode&&this.addChip(t,e,i),this.hideSelectedItem&&this.fields.groupBy&&this.hideGroupItem(e),this.updateChipStatus(),this.checkMaxSelection()},s.prototype.checkMaxSelection=function(){if((this.value&&this.value.length?this.value.length:0)===this.maximumSelectionLength){var e=this.list.querySelectorAll("li."+U.li+":not(.e-active)");t.addClass(e,"e-disable")}},s.prototype.dispatchSelect=function(t,i,s,l,n){var o=this,r=this.listData;if(this.initStatus&&!l){var a=this.getDataByValue(t),h={e:i,item:s,itemData:a,isInteracted:!!i,cancel:!1};this.trigger("select",h,function(l){if(!l.cancel){if(n&&(o.selectAllEventData.push(a),o.selectAllEventEle.push(s)),1===n){var h={event:i,items:o.selectAllEventEle,itemData:o.selectAllEventData,isInteracted:!!i,isChecked:!0};o.trigger("selectedAll",h),o.selectAllEventData=[]}o.allowCustomValue&&o.isServerRendered&&o.listData!==r&&(o.listData=r),o.updateListSelectEventCallback(t,s,i),o.hideSelectedItem&&o.fixedHeaderElement&&o.fields.groupBy&&"CheckBox"!==o.mode&&e.prototype.scrollStop.call(o)}})}},s.prototype.addChip=function(e,t,i){this.chipCollectionWrapper&&this.getChip(e,t,i)},s.prototype.removeChipFocus=function(){var e=this.chipCollectionWrapper.querySelectorAll("span.e-chips.e-chip-selected");if(t.removeClass(e,"e-chip-selected"),t.Browser.isDevice)for(var i=this.chipCollectionWrapper.querySelectorAll("span."+"e-chips-close".split(" ")[0]),s=0;s<i.length;s++)i[s].style.display="none"},s.prototype.onMobileChipInteraction=function(e){var i=t.closest(e.target,".e-chips"),s=i.querySelector("span."+"e-chips-close".split(" ")[0]);this.enabled&&!this.readonly&&(i.classList.contains("e-chip-selected")||(this.removeChipFocus(),s.style.display="",i.classList.add("e-chip-selected")),this.refreshPopup(),e.preventDefault())},s.prototype.multiCompiler=function(e){var i=!1;if("function"!=typeof e&&e)try{i=!!t.selectAll(e,document).length}catch(e){i=!1}return i},s.prototype.encodeHtmlEntities=function(e){return e.replace(/[\u00A0-\u9999<>&]/g,function(e){return"&#"+e.charCodeAt(0)+";"})},s.prototype.getChip=function(e,i,s){var l,n=this,o={text:i,value:i},r=this.createElement("span",{className:ge,attrs:{"data-value":i,title:e}}),a=this.createElement("span",{className:"e-chipcontent"}),h=this.createElement("span",{className:"e-chips-close"});if(this.mainData&&(o=this.getDataByValue(i)),this.valueTemplate&&!t.isNullOrUndefined(o)){var p=this.multiCompiler(this.valueTemplate),u=(l="function"!=typeof this.valueTemplate&&p?t.compile(t.select(this.valueTemplate,document).innerHTML.trim()):t.compile(this.valueTemplate))(o,this,"valueTemplate",this.valueTemplateId,this.isStringTemplate,null,a);u&&u.length>0&&t.append(u,a),this.renderReactTemplates()}else this.enableHtmlSanitizer?a.innerText=e:a.innerHTML=this.encodeHtmlEntities(e);r.appendChild(a);var d={isInteracted:!!s,itemData:o,e:s,setClass:function(e){t.addClass([r],e)},cancel:!1};this.isPreventChange=this.isAngular&&this.preventChange,this.trigger("tagging",d,function(e){e.cancel||(t.Browser.isDevice?(r.classList.add("e-mob-chip"),t.append([h],r),h.style.display="none",t.EventHandler.add(r,"click",n.onMobileChipInteraction,n)):(t.EventHandler.add(r,"mousedown",n.chipClick,n),n.showClearButton&&r.appendChild(h)),t.EventHandler.add(h,"mousedown",n.onChipRemove,n),n.chipCollectionWrapper.appendChild(r),!n.changeOnBlur&&s&&n.updateValueState(s,n.value,n.tempValues))})},s.prototype.calcPopupWidth=function(){var e=t.formatUnit(this.popupWidth);return e.indexOf("%")>-1&&(e=(this.componentWrapper.offsetWidth*parseFloat(e)/100).toString()+"px"),e},s.prototype.mouseIn=function(){this.enabled&&!this.readonly&&this.showOverAllClear()},s.prototype.mouseOut=function(){this.inputFocus||(this.overAllClear.style.display="none")},s.prototype.listOption=function(e,i){var s=!t.isNullOrUndefined(i.iconCss),l=t.isNullOrUndefined(i.properties)?i:i.properties;return this.listCurrentOptions=null!==i.text||null!==i.value?{fields:l,showIcon:s,ariaAttributes:{groupItemRole:"presentation"}}:{fields:{value:"text"}},t.extend(this.listCurrentOptions,this.listCurrentOptions,i,!0),"CheckBox"===this.mode&&this.notify("listoption",{module:"CheckBoxSelection",enable:"CheckBox"===this.mode,dataSource:e,fieldProperty:l}),this.listCurrentOptions},s.prototype.renderPopup=function(){var i=this;if(this.list||e.prototype.render.call(this),!this.popupObj&&!t.isNullOrUndefined(this.popupWrapper)){document.body.appendChild(this.popupWrapper);var s=this.popupWrapper.querySelector(".e-filter-parent");"CheckBox"===this.mode&&!this.allowFiltering&&s&&this.filterParent&&(s.remove(),this.filterParent=null);var n=parseInt(this.popupHeight,10);if(this.popupWrapper.style.visibility="hidden",this.headerTemplate&&(this.setHeaderTemplate(),n-=this.header.offsetHeight),t.append([this.list],this.popupWrapper),this.footerTemplate&&(this.setFooterTemplate(),n-=this.footer.offsetHeight),"CheckBox"===this.mode&&this.showSelectAll?(this.notify("selectAll",{module:"CheckBoxSelection",enable:"CheckBox"===this.mode}),n-=this.selectAllHeight):"CheckBox"!==this.mode||this.showSelectAll||this.headerTemplate||this.footerTemplate?"CheckBox"!==this.mode||this.showSelectAll||(this.notify("selectAll",{module:"CheckBoxSelection",enable:"CheckBox"===this.mode}),n=parseInt(this.popupHeight,10),this.headerTemplate&&this.header&&(n-=this.header.offsetHeight),this.footerTemplate&&this.footer&&(n-=this.footer.offsetHeight)):(this.notify("selectAll",{module:"CheckBoxSelection",enable:"CheckBox"===this.mode}),n=parseInt(this.popupHeight,10)),"CheckBox"===this.mode){var o={module:"CheckBoxSelection",enable:"CheckBox"===this.mode,popupElement:this.popupWrapper};this.allowFiltering&&(this.notify("searchBox",o),n-=this.searchBoxHeight),t.addClass([this.popupWrapper],"e-checkbox")}"auto"!==this.popupHeight?(this.list.style.maxHeight=t.formatUnit(n),this.popupWrapper.style.maxHeight=t.formatUnit(this.popupHeight)):this.list.style.maxHeight=t.formatUnit(this.popupHeight),this.popupObj=new l.Popup(this.popupWrapper,{width:this.calcPopupWidth(),targetType:"relative",position:this.enableRtl?{X:"right",Y:"bottom"}:{X:"left",Y:"bottom"},relateTo:this.overAllWrapper,collision:this.enableRtl?{X:"fit",Y:"flip"}:{X:"flip",Y:"flip"},offsetY:1,enableRtl:this.enableRtl,zIndex:this.zIndex,close:function(){if(i.popupObj.element.parentElement){i.popupObj.unwireScrollEvents();var e=i.popupWrapper.querySelector(".e-input-filter");"CheckBox"===i.mode&&e&&document.activeElement===e&&e.blur(),t.detach(i.popupObj.element)}},open:function(){if(i.popupObj.resolveCollision(),!i.isFirstClick){var e=i.list.querySelector("ul");e&&("CheckBox"!==i.mode&&(i.allowFiltering||i.allowCustomValue)&&""!==i.targetElement().trim()||(i.mainList=e.cloneNode?e.cloneNode(!0):e)),i.isFirstClick=!0}i.popupObj.wireScrollEvents(),"CheckBox"!==i.mode&&(i.allowFiltering||i.allowCustomValue)&&""!==i.targetElement().trim()||i.loadTemplate(),i.setScrollPosition(),i.allowFiltering&&i.notify("inputFocus",{module:"CheckBoxSelection",enable:"CheckBox"===i.mode,value:"focus"})},targetExitViewport:function(){t.Browser.isDevice||i.hidePopup()}}),"CheckBox"===this.mode&&t.Browser.isDevice&&this.allowFiltering&&this.notify("deviceSearchBox",{module:"CheckBoxSelection",enable:"CheckBox"===this.mode}),this.popupObj.close(),this.popupWrapper.style.visibility=""}},s.prototype.setHeaderTemplate=function(){var e;this.header&&this.header.remove(),this.header=this.createElement("div"),t.addClass([this.header],"e-ddl-header");var i=this.multiCompiler(this.headerTemplate),s=(e="function"!=typeof this.headerTemplate&&i?t.compile(t.select(this.headerTemplate,document).innerHTML.trim()):t.compile(this.headerTemplate))({},this,"headerTemplate",this.headerTemplateId,this.isStringTemplate,null,this.header);s&&s.length>0&&t.append(s,this.header),"CheckBox"===this.mode&&this.showSelectAll?t.prepend([this.header],this.popupWrapper):t.append([this.header],this.popupWrapper),t.EventHandler.add(this.header,"mousedown",this.onListMouseDown,this)},s.prototype.setFooterTemplate=function(){var e;this.footer&&this.footer.remove(),this.footer=this.createElement("div"),t.addClass([this.footer],"e-ddl-footer");var i=this.multiCompiler(this.footerTemplate),s=(e="function"!=typeof this.footerTemplate&&i?t.compile(t.select(this.footerTemplate,document).innerHTML.trim()):t.compile(this.footerTemplate))({},this,"footerTemplate",this.footerTemplateId,this.isStringTemplate,null,this.footer);s&&s.length>0&&t.append(s,this.footer),t.append([this.footer],this.popupWrapper),t.EventHandler.add(this.footer,"mousedown",this.onListMouseDown,this)},s.prototype.clearAll=function(e){if(this.enabled&&!this.readonly){var t=void 0;if(this.value&&this.value.length>0){var i=this.list&&this.list.querySelectorAll("li.e-list-item");if(i&&i.length>0)this.selectAllItems(!1,e);else for(this.removeIndex=0,t=this.value[this.removeIndex];this.removeIndex<this.value.length;t=this.value[this.removeIndex])this.removeValue(t,e,null,!0);this.selectedElementID=null,this.inputElement.removeAttribute("aria-activedescendant")}else this.clearAllCallback(e)}},s.prototype.clearAllCallback=function(e,i){var s=this.value?this.value.slice():[];if(this.mainList&&this.listData&&(this.allowFiltering&&"CheckBox"!==this.mode||this.allowCustomValue)){var l=this.mainList.cloneNode?this.mainList.cloneNode(!0):this.mainList;this.onActionComplete(l,this.mainData)}this.focusAtFirstListItem(),this.updateDelimeter(this.delimiterChar,e),"Box"===this.mode||this.inputFocus&&"CheckBox"!==this.mode||this.updateDelimView(),""!==this.inputElement.value&&(this.makeTextBoxEmpty(),this.search(null)),this.checkPlaceholderSize(),this.isPopupOpen()&&this.refreshPopup(),this.inputFocus||(this.changeOnBlur&&this.updateValueState(e,this.value,s),"CheckBox"!==this.mode&&this.inputElement.focus()),"CheckBox"===this.mode&&(this.refreshPlaceHolder(),this.refreshInputHight(),this.changeOnBlur&&i&&(t.isNullOrUndefined(this.value)||0===this.value.length)&&this.updateValueState(e,this.value,this.tempValues)),this.changeOnBlur||!i||!t.isNullOrUndefined(this.value)&&0!==this.value.length||this.updateValueState(e,this.value,this.tempValues),"CheckBox"===this.mode&&this.enableGroupCheckBox&&!t.isNullOrUndefined(this.fields.groupBy)&&this.updateListItems(this.list.querySelectorAll("li.e-list-item"),this.mainList.querySelectorAll("li.e-list-item")),e.preventDefault()},s.prototype.windowResize=function(){this.refreshPopup(),this.inputFocus&&"CheckBox"!==this.mode||!this.viewWrapper||!this.viewWrapper.parentElement||this.updateDelimView()},s.prototype.resetValueHandler=function(e){var i=t.closest(this.inputElement,"form");if(i&&e.target===i){var s=this.element.tagName===this.getNgDirective()?null:this.element.getAttribute("data-initial-value");this.text=s}},s.prototype.wireEvent=function(){t.EventHandler.add(this.componentWrapper,"mousedown",this.wrapperClick,this),t.EventHandler.add(window,"resize",this.windowResize,this),t.EventHandler.add(this.inputElement,"focus",this.focusInHandler,this),t.EventHandler.add(this.inputElement,"keydown",this.onKeyDown,this),t.EventHandler.add(this.inputElement,"keyup",this.keyUp,this),"CheckBox"!==this.mode&&t.EventHandler.add(this.inputElement,"input",this.onInput,this),t.EventHandler.add(this.inputElement,"blur",this.onBlurHandler,this),t.EventHandler.add(this.componentWrapper,"mouseover",this.mouseIn,this);var e=t.closest(this.inputElement,"form");e&&t.EventHandler.add(e,"reset",this.resetValueHandler,this),t.EventHandler.add(this.componentWrapper,"mouseout",this.mouseOut,this),t.EventHandler.add(this.overAllClear,"mouseup",this.clearAll,this),t.EventHandler.add(this.inputElement,"paste",this.pasteHandler,this)},s.prototype.onInput=function(e){this.keyDownStatus?this.isValidKey=!0:this.isValidKey=!1,this.keyDownStatus=!1,t.Browser.isDevice&&"mozilla"===t.Browser.info.name&&this.search(e)},s.prototype.pasteHandler=function(e){var t=this;setTimeout(function(){t.expandTextbox(),t.search(e)})},s.prototype.search=function(e){var s=this;if(this.resetFilteredData=!0,t.isNullOrUndefined(e)||(this.keyCode=e.keyCode),!this.isPopupOpen()&&this.openOnClick&&this.showPopup(e),this.openClick(e),!this.checkTextLength()||this.allowFiltering||t.isNullOrUndefined(e)||8===e.keyCode){var l=this.targetElement();if(this.allowFiltering){this.allowCustomValue&&(this.isRemoteSelection=!0);var n={preventDefaultAction:!1,text:this.targetElement(),updateData:function(e,t,i){n.cancel||(s.isFiltered=!0,s.remoteFilterAction=!0,s.dataUpdater(e,t,i))},event:e,cancel:!1};this.trigger("filtering",n,function(e){e.cancel||s.isFiltered||e.preventDefaultAction||(s.filterAction=!0,s.dataUpdater(s.dataSource,null,s.fields))})}else if(this.allowCustomValue){var o=new i.Query;o=this.allowFiltering&&""!==l?o.where(this.fields.text,"startswith",l,this.ignoreCase,this.ignoreAccent):o,this.dataUpdater(this.mainData,o,this.fields)}else{var r=this.list.querySelectorAll("li."+U.li+":not(.e-hide-listitem)"),a=p(this.targetElement(),r,"StartsWith",this.ignoreCase);a&&null!==a.item?(this.addListFocus(a.item),this.list.scrollTop=a.item.offsetHeight*a.index):""!==this.targetElement()?this.removeFocus():this.focusAtFirstListItem()}}else this.focusAtFirstListItem()},s.prototype.preRender=function(){null===this.allowFiltering&&(this.allowFiltering="CheckBox"===this.mode),this.initializeData(),this.updateDataAttribute(this.htmlAttributes),e.prototype.preRender.call(this)},s.prototype.getLocaleName=function(){return"multi-select"},s.prototype.initializeData=function(){this.mainListCollection=[],this.beforePopupOpen=!1,this.filterAction=!1,this.remoteFilterAction=!1,this.isFirstClick=!1,this.mobFilter=!0,this.isFiltered=!1,this.focused=!0,this.initial=!0,this.backCommand=!0,this.isCustomRendered=!1,this.isRemoteSelection=!1,this.isSelectAllTarget=!0},s.prototype.updateData=function(e,i){var s,l="",n="Delimiter"===this.mode||"CheckBox"===this.mode,o=[],r=this.listData;if(this.listData=this.mainData,t.isNullOrUndefined(this.hiddenElement)||(this.hiddenElement.innerHTML=""),!t.isNullOrUndefined(this.value)){for(var a=this.value.length,h="",p=0;p<a;p++){var u=this.value[p],d=this.findListElement(t.isNullOrUndefined(this.mainList)?this.ulElement:this.mainList,"li","data-value",u);t.isNullOrUndefined(d)&&!this.allowCustomValue?(this.value.splice(p,1),p-=1,a-=1):(l+=(s=this.listData?this.getTextByValue(u):u)+e+" ",o.push(s)),h+='<option selected value="'+u+'">'+p+"</option>"}t.isNullOrUndefined(this.hiddenElement)||(this.hiddenElement.innerHTML=h)}this.setProperties({text:o.toString()},!0),n&&(this.updateWrapperText(this.delimiterWrapper,l),this.delimiterWrapper.setAttribute("id",t.getUniqueID("delim_val")),this.inputElement.setAttribute("aria-describedby",this.delimiterWrapper.id));var c=i&&i.target,m=!(!c||!c.classList.contains("e-close-hooker"))||null;(!this.changeOnBlur&&i&&!m||this.isSelectAll)&&(this.isSelectAll=!1,this.updateValueState(i,this.value,this.tempValues)),this.listData=r,this.addValidInputClass()},s.prototype.initialTextUpdate=function(){if(t.isNullOrUndefined(this.text))this.setProperties({value:null},!0);else{for(var e=this.text.split(this.delimiterChar),i=[],s=0;e.length>s;s++){var l=this.getValueByText(e[s]);t.isNullOrUndefined(l)?this.allowCustomValue&&i.push(e[s]):i.push(l)}i&&i.length&&this.setProperties({value:i},!0)}},s.prototype.renderList=function(t){!t&&this.allowCustomValue&&this.list&&(this.list.textContent===this.noRecordsTemplate||this.list.querySelector(".e-ul")&&0===this.list.querySelector(".e-ul").childElementCount)&&(t=!0),e.prototype.render.call(this,null,t),this.unwireListEvents(),this.wireListEvents()},s.prototype.initialValueUpdate=function(){if(this.list){var e=void 0,i=void 0,s=void 0;if(this.chipCollectionWrapper&&(this.chipCollectionWrapper.innerHTML=""),this.removeListSelection(),!t.isNullOrUndefined(this.value))for(var l=0;!t.isNullOrUndefined(this.value[l]);l++)if(s=this.value[l],i=this.findListElement(this.hideSelectedItem?this.ulElement:this.list,"li","data-value",s),e=this.getTextByValue(s),i&&"true"!==i.getAttribute("aria-selected")||i&&"true"===i.getAttribute("aria-selected")&&this.hideSelectedItem&&("Box"===this.mode||"Default"===this.mode))this.addChip(e,s),this.addListSelection(i);else if(s&&this.allowCustomValue){var n=this.listData.length,o={};t.setValue(this.fields.text,s,o),t.setValue(this.fields.value,s,o);var r=this.popupWrapper.querySelector("."+U.noData);this.addItem(o,n),i=i||this.findListElement(this.hideSelectedItem?this.ulElement:this.list,"li","data-value",s),this.popupWrapper.contains(r)&&(this.list.setAttribute("style",r.getAttribute("style")),this.popupWrapper.replaceChild(this.list,r),this.wireListEvents()),this.addChip(e,s),this.addListSelection(i)}"CheckBox"===this.mode?(this.updateDelimView(),this.changeOnBlur&&this.updateValueState(null,this.value,this.tempValues),this.updateDelimeter(this.delimiterChar),this.refreshInputHight()):this.updateDelimeter(this.delimiterChar),"CheckBox"!==this.mode||!this.showSelectAll||!t.isNullOrUndefined(this.value)&&this.value.length||this.notify("checkSelectAll",{module:"CheckBoxSelection",enable:"CheckBox"===this.mode,value:"uncheck"}),"Box"===this.mode||"Default"===this.mode&&this.inputFocus?this.chipCollectionWrapper.style.display="":"Delimiter"!==this.mode&&"CheckBox"!==this.mode||this.showDelimWrapper()}},s.prototype.updateActionCompleteData=function(e,i){this.value&&this.value.indexOf(e.getAttribute("data-value"))>-1&&(this.mainList=this.ulElement,this.hideSelectedItem&&t.addClass([e],ve))},s.prototype.updateAddItemList=function(e,i){this.popupObj&&this.popupObj.element&&this.popupObj.element.querySelector("."+U.noData)&&e?(this.list=e,this.mainList=this.ulElement=e.querySelector("ul"),t.remove(this.popupWrapper.querySelector(".e-content")),this.popupObj=null,this.renderPopup()):this.allowCustomValue&&(this.list=e,this.mainList=this.ulElement=e.querySelector("ul"))},s.prototype.updateDataList=function(){if(this.mainList&&this.ulElement&&!(this.isFiltered||this.filterAction||this.targetElement().trim())){var e=this.mainList.childElementCount<this.ulElement.childElementCount,t=this.ulElement.childElementCount>0&&this.ulElement.children[0].childElementCount>0&&this.mainList.children[0]&&this.mainList.children[0].childElementCount<this.ulElement.children[0].childElementCount,i=this.itemTemplate&&this.ulElement.childElementCount>0&&!(this.ulElement.childElementCount<this.mainList.childElementCount)&&(this.ulElement.children[0].childElementCount>0||this.fields.groupBy&&this.ulElement.children[1]&&this.ulElement.children[1].childElementCount>0);(e||t||i)&&(this.mainList=this.ulElement)}},s.prototype.isValidLI=function(e){return e&&!e.classList.contains(U.disabled)&&!e.classList.contains(U.group)&&e.classList.contains(U.li)},s.prototype.updateListSelection=function(e,i,s){var l=e.getAttribute("data-value"),n=this.getFormattedValue(l);this.allowCustomValue&&("false"!==l&&!1===n||!t.isNullOrUndefined(n)&&"NaN"===n.toString())&&(n=l),this.removeHover(),this.value&&-1!==this.value.indexOf(n)?this.removeValue(n,i,s):this.dispatchSelect(n,i,e,"true"===e.getAttribute("aria-selected"),s)},s.prototype.updateListSelectEventCallback=function(e,i,s){var l=this,n=this.getTextByValue(e);if(!this.allowCustomValue&&!this.allowFiltering||this.findListElement(this.mainList,"li","data-value",e))this.remoteCustomValue=!1,this.addValue(e,n,s);else{var o=i.cloneNode(!0),r=this.fields.value?this.fields.value:"value";this.allowCustomValue&&this.mainData.length&&"number"==typeof t.getValue(r,this.mainData[0])&&(e=isNaN(parseFloat(e.toString()))?e:parseFloat(e.toString()));var a=this.getDataByValue(e),h={newData:a,cancel:!1};this.trigger("customValueSelection",h,function(i){i.cancel||(t.append([o],l.mainList),l.mainData.push(a),l.remoteCustomValue=!1,l.addValue(e,n,s))})}},s.prototype.removeListSelection=function(){var e=this.hideSelectedItem?ve:U.selected,i=this.list.querySelectorAll("."+e),s=i.length;if(i&&i.length)for(t.removeClass(i,e);s>0;)i[s-1].setAttribute("aria-selected","false"),s--;if(!t.isNullOrUndefined(this.mainList)){var l=this.mainList.querySelectorAll("."+e),n=l.length;if(l&&l.length)for(t.removeClass(l,e);n>0;)l[n-1].setAttribute("aria-selected","false"),"CheckBox"===this.mode&&(i&&i.length>n-1&&t.removeClass([i[n-1].firstElementChild.lastElementChild],"e-check"),t.removeClass([l[n-1].firstElementChild.lastElementChild],"e-check")),n--}},s.prototype.removeHover=function(){var e=this.list.querySelectorAll("."+U.hover);e&&e.length&&t.removeClass(e,U.hover)},s.prototype.removeFocus=function(){if(this.list&&this.mainList){var e=this.list.querySelectorAll("."+U.focus),i=this.mainList.querySelectorAll("."+U.focus);e&&e.length&&(t.removeClass(e,U.focus),t.removeClass(i,U.focus))}},s.prototype.addListHover=function(e){this.enabled&&this.isValidLI(e)?(this.removeHover(),t.addClass([e],U.hover)):null!==e&&e.classList.contains("e-list-group-item")&&this.enableGroupCheckBox&&"CheckBox"===this.mode&&!t.isNullOrUndefined(this.fields.groupBy)&&(this.removeHover(),t.addClass([e],U.hover))},s.prototype.addListFocus=function(e){this.enabled&&this.isValidLI(e)?(this.removeFocus(),t.addClass([e],U.focus),this.updateAriaActiveDescendant()):this.enableGroupCheckBox&&"CheckBox"===this.mode&&!t.isNullOrUndefined(this.fields.groupBy)&&(t.addClass([e],U.focus),this.updateAriaActiveDescendant())},s.prototype.addListSelection=function(e,i){var s=this.hideSelectedItem?ve:U.selected;this.isValidLI(e)&&!e.classList.contains(U.hover)&&(t.addClass([e],s),this.updateMainList(!1,e.getAttribute("data-value"),i),e.setAttribute("aria-selected","true"),"CheckBox"===this.mode&&e.classList.contains("e-active")&&0===e.getElementsByClassName("e-check").length&&this.notify("updatelist",{module:"CheckBoxSelection",enable:"CheckBox"===this.mode,li:e,e:this}),this.notify("activeList",{module:"CheckBoxSelection",enable:"CheckBox"===this.mode,li:e,e:this}),this.chipCollectionWrapper&&this.removeChipSelection(),this.selectedElementID=e.id)},s.prototype.updateDelimeter=function(e,t){this.updateData(e,t)},s.prototype.onMouseClick=function(e){var i=this;this.keyCode=null,this.scrollFocusStatus=!1;var s=e.target,l=t.closest(s,"."+U.li);if(t.closest(s,"."+U.group)&&this.enableGroupCheckBox&&"CheckBox"===this.mode&&this.fields.groupBy)(s=s.classList.contains("e-list-group-item")?s.firstElementChild.lastElementChild:e.target).classList.contains("e-check")?(this.selectAllItem(!1,e),s.classList.remove("e-check"),s.classList.remove("e-stop"),t.closest(s,".e-list-group-item").classList.remove("e-active"),s.setAttribute("aria-selected","false")):(this.selectAllItem(!0,e),s.classList.remove("e-stop"),s.classList.add("e-check"),t.closest(s,".e-list-group-item").classList.add("e-active"),s.setAttribute("aria-selected","true")),this.refreshSelection(),this.checkSelectAll();else{if(this.isValidLI(l)){var n=this.value&&this.value.length?this.value.length:0;l.classList.contains("e-active")&&(n-=1),n<this.maximumSelectionLength&&(this.updateListSelection(l,e),this.checkPlaceholderSize(),this.addListFocus(l),(this.allowCustomValue||this.allowFiltering)&&this.mainList&&this.listData?"CheckBox"!==this.mode&&(this.focusAtLastListItem(l.getAttribute("data-value")),this.refreshSelection()):this.makeTextBoxEmpty()),"CheckBox"===this.mode?(this.updateDelimView(),this.value&&this.value.length>50?setTimeout(function(){i.updateDelimeter(i.delimiterChar,e)},0):this.updateDelimeter(this.delimiterChar,e),this.refreshInputHight()):this.updateDelimeter(this.delimiterChar,e),this.checkSelectAll(),this.refreshPopup(),this.hideSelectedItem&&this.focusAtFirstListItem(),this.closePopupOnSelect?this.hidePopup(e):e.preventDefault(),this.makeTextBoxEmpty(),this.findGroupStart(s),"CheckBox"!==this.mode&&this.refreshListItems(t.isNullOrUndefined(l)?null:l.textContent)}else e.preventDefault();this.refreshPlaceHolder(),this.deselectHeader()}},s.prototype.findGroupStart=function(e){if(this.enableGroupCheckBox&&"CheckBox"===this.mode&&!t.isNullOrUndefined(this.fields.groupBy)){var i=void 0;if(this.itemTemplate&&!e.getElementsByClassName("e-frame").length)for(;!e.getElementsByClassName("e-frame").length;)e=e.parentElement;for(e.classList.contains("e-frame")&&(e=e.parentElement.parentElement),i=this.findGroupAttrtibutes(e,0,0,0,0),i=this.findGroupAttrtibutes(e,i[0],i[1],i[2],1);!e.classList.contains("e-list-group-item")&&(e.classList.contains("e-list-icon")&&(e=e.parentElement),null!=(e=e.previousElementSibling)););this.updateCheckBox(e,i[0],i[1],i[2])}},s.prototype.findGroupAttrtibutes=function(e,t,i,s,l){for(;!e.classList.contains("e-list-group-item")&&(e.classList.contains("e-list-icon")&&(e=e.parentElement),e.getElementsByClassName("e-frame")[0].classList.contains("e-check")&&e.classList.contains("e-list-item")?t++:e.classList.contains("e-list-item")&&i++,s++,null!=(e=l?e.nextElementSibling:e.previousElementSibling)););return[t,i,s]},s.prototype.updateCheckBox=function(e,i,s,l){if(null!==e){var n=e.getElementsByClassName("e-frame")[0];l===i?(n.classList.remove("e-stop"),n.classList.add("e-check"),t.closest(n,".e-list-group-item").classList.add("e-active"),e.setAttribute("aria-selected","true")):l===s?(n.classList.remove("e-check"),n.classList.remove("e-stop"),t.closest(n,".e-list-group-item").classList.remove("e-active"),e.setAttribute("aria-selected","false")):this.maximumSelectionLength===i-1?(n.classList.remove("e-stop"),e.setAttribute("aria-selected","true"),t.closest(n,".e-list-group-item").classList.add("e-active"),n.classList.add("e-check")):(n.classList.remove("e-check"),n.classList.add("e-stop"),t.closest(n,".e-list-group-item").classList.add("e-active"),e.setAttribute("aria-selected","false"))}},s.prototype.deselectHeader=function(){var e=this.value&&this.value.length?this.value.length:0,i=this.list.querySelectorAll("li.e-list-group-item:not(.e-active)");e<this.maximumSelectionLength&&t.removeClass(i,"e-disable"),e===this.maximumSelectionLength&&t.addClass(i,"e-disable")},s.prototype.onMouseOver=function(e){var i=t.closest(e.target,"."+U.li);null===i&&"CheckBox"===this.mode&&!t.isNullOrUndefined(this.fields.groupBy)&&this.enableGroupCheckBox&&(i=t.closest(e.target,"."+U.group)),this.addListHover(i)},s.prototype.onMouseLeave=function(){this.removeHover()},s.prototype.onListMouseDown=function(e){e.preventDefault(),this.scrollFocusStatus=!0},s.prototype.onDocumentClick=function(e){if("CheckBox"!==this.mode){var i=e.target;!t.isNullOrUndefined(this.popupObj)&&t.closest(i,'[id="'+this.popupObj.element.id+'"]')||this.overAllWrapper.contains(e.target)?this.scrollFocusStatus=(t.Browser.isIE||"edge"===t.Browser.info.name)&&document.activeElement===this.inputElement:this.scrollFocusStatus=!1}},s.prototype.wireListEvents=function(){t.isNullOrUndefined(this.list)||(t.EventHandler.add(document,"mousedown",this.onDocumentClick,this),t.EventHandler.add(this.list,"mousedown",this.onListMouseDown,this),t.EventHandler.add(this.list,"mouseup",this.onMouseClick,this),t.EventHandler.add(this.list,"mouseover",this.onMouseOver,this),t.EventHandler.add(this.list,"mouseout",this.onMouseLeave,this))},s.prototype.unwireListEvents=function(){t.EventHandler.remove(document,"mousedown",this.onDocumentClick),this.list&&(t.EventHandler.remove(this.list,"mousedown",this.onListMouseDown),t.EventHandler.remove(this.list,"mouseup",this.onMouseClick),t.EventHandler.remove(this.list,"mouseover",this.onMouseOver),t.EventHandler.remove(this.list,"mouseout",this.onMouseLeave))},s.prototype.hideOverAllClear=function(){this.value&&this.value.length&&""!==this.inputElement.value||(this.overAllClear.style.display="none")},s.prototype.showOverAllClear=function(){(this.value&&this.value.length||""!==this.inputElement.value)&&this.showClearButton&&!0!==this.readonly?this.overAllClear.style.display="":this.overAllClear.style.display="none"},s.prototype.focusIn=function(){document.activeElement!==this.inputElement&&this.enabled&&this.inputElement.focus()},s.prototype.focusOut=function(){document.activeElement===this.inputElement&&this.enabled&&this.inputElement.blur()},s.prototype.showSpinner=function(){if(t.isNullOrUndefined(this.spinnerElement)){var e=this.filterParent&&this.filterParent.querySelector(".e-clear-icon.e-icons");"none"!==this.overAllClear.style.display||e?this.spinnerElement=e||this.overAllClear:(this.spinnerElement=this.createElement("span",{className:"e-chips-close e-close-hooker e-ms-spinner-icon"}),this.componentWrapper.appendChild(this.spinnerElement)),l.createSpinner({target:this.spinnerElement,width:t.Browser.isDevice?"16px":"14px"},this.createElement),t.addClass([this.spinnerElement],"e-ddl-disable-icon"),l.showSpinner(this.spinnerElement)}},s.prototype.hideSpinner=function(){t.isNullOrUndefined(this.spinnerElement)||(l.hideSpinner(this.spinnerElement),t.removeClass([this.spinnerElement],"e-ddl-disable-icon"),this.spinnerElement.classList.contains("e-ms-spinner-icon")?t.detach(this.spinnerElement):this.spinnerElement.innerHTML="",this.spinnerElement=null)},s.prototype.updateWrapperText=function(e,t){this.valueTemplate||!this.enableHtmlSanitizer?e.innerHTML=this.encodeHtmlEntities(t):e.innerText=t},s.prototype.updateDelimView=function(){if(this.delimiterWrapper&&this.hideDelimWrapper(),this.chipCollectionWrapper&&(this.chipCollectionWrapper.style.display="none"),t.isNullOrUndefined(this.viewWrapper)||(this.viewWrapper.style.display="",this.viewWrapper.style.width="",this.viewWrapper.classList.remove("e-delim-total")),this.value&&this.value.length){var e="",i=void 0,s=void 0,l=1,n=void 0,o=void 0,r=0,a=void 0;this.updateWrapperText(this.viewWrapper,e);var h={noRecordsTemplate:"No records found",actionFailureTemplate:"Request failed",overflowCountTemplate:"+${count} more..",totalCountTemplate:"${count} selected"},p=new t.L10n(this.getLocaleName(),h,this.locale);""===p.getConstant("actionFailureTemplate")&&(p=new t.L10n("dropdowns",h,this.locale)),""===p.getConstant("noRecordsTemplate")&&(p=new t.L10n("dropdowns",h,this.locale));var u=p.getConstant("overflowCountTemplate"),d=p.getConstant("totalCountTemplate"),c=this.createElement("span",{className:"e-remain"}),m=u.replace("${count}",this.value.length.toString());c.innerText=m,this.viewWrapper.appendChild(c),this.renderReactTemplates();var f=c.offsetWidth;if(t.remove(c),this.showDropDownIcon&&(r=this.dropIcon.offsetWidth+parseInt(window.getComputedStyle(this.dropIcon).marginRight,10)),this.checkClearIconWidth(),!t.isNullOrUndefined(this.value))for(var v=0;!t.isNullOrUndefined(this.value[v]);v++){if(e+=0===v?"":this.delimiterChar+" ",i=this.getOverflowVal(v),e+=i,i=this.viewWrapper.innerHTML,this.updateWrapperText(this.viewWrapper,e),n=this.viewWrapper.offsetWidth+parseInt(window.getComputedStyle(this.viewWrapper).paddingRight,10),a=this.componentWrapper.offsetWidth-parseInt(window.getComputedStyle(this.componentWrapper).paddingLeft,10)-parseInt(window.getComputedStyle(this.componentWrapper).paddingRight,10),n+r+this.clearIconWidth>a){for(void 0!==s&&""!==s&&(i=s,v=l+1),this.updateWrapperText(this.viewWrapper,i),o=this.value.length-v,n=this.viewWrapper.offsetWidth+parseInt(window.getComputedStyle(this.viewWrapper).paddingRight,10);n+f+r+this.clearIconWidth>a&&0!==n&&""!==this.viewWrapper.innerHTML;){var g=[];this.viewWrapper.innerHTML=g.join(this.delimiterChar),o=this.value.length,n=this.viewWrapper.offsetWidth+parseInt(window.getComputedStyle(this.viewWrapper).paddingRight,10)}break}n+f+r+this.clearIconWidth<=a?(s=e,l=v):0===v&&(s="",l=-1)}if(o>0){var y=a-r-this.clearIconWidth;this.viewWrapper.appendChild(this.updateRemainTemplate(c,this.viewWrapper,o,u,d,y)),this.updateRemainWidth(this.viewWrapper,y),this.updateRemainingText(c,r,o,u,d)}}else t.isNullOrUndefined(this.viewWrapper)||(this.viewWrapper.innerHTML="",this.viewWrapper.style.display="none")},s.prototype.checkClearIconWidth=function(){this.showClearButton&&(this.clearIconWidth=this.overAllClear.offsetWidth)},s.prototype.updateRemainWidth=function(e,t){e.classList.contains("e-delim-total")&&t<e.offsetWidth+parseInt(window.getComputedStyle(e).paddingLeft,10)+parseInt(window.getComputedStyle(e).paddingLeft,10)&&(e.style.width=t+"px")},s.prototype.updateRemainTemplate=function(e,t,i,s,l,n){t.firstChild&&3===t.firstChild.nodeType&&""===t.firstChild.nodeValue&&t.removeChild(t.firstChild),e.innerHTML="";var o=s.replace("${count}",i.toString()),r=l.replace("${count}",i.toString());return e.innerText=t.firstChild&&3===t.firstChild.nodeType?o:r,t.firstChild&&3===t.firstChild.nodeType?t.classList.remove("e-delim-total"):(t.classList.add("e-delim-total"),this.updateRemainWidth(t,n)),e},s.prototype.updateRemainingText=function(e,t,i,s,l){var n=this.componentWrapper.offsetWidth-parseInt(window.getComputedStyle(this.componentWrapper).paddingLeft,10)-parseInt(window.getComputedStyle(this.componentWrapper).paddingRight,10),o=this.viewWrapper.offsetWidth+parseInt(window.getComputedStyle(this.viewWrapper).paddingRight,10);if(o+t>=n&&0!==o&&this.viewWrapper.firstChild&&3===this.viewWrapper.firstChild.nodeType){for(;o+t>n&&0!==o&&this.viewWrapper.firstChild&&3===this.viewWrapper.firstChild.nodeType;){var r=this.viewWrapper.firstChild.nodeValue.split(this.delimiterChar);r.pop(),this.viewWrapper.firstChild.nodeValue=r.join(this.delimiterChar),""===this.viewWrapper.firstChild.nodeValue&&this.viewWrapper.removeChild(this.viewWrapper.firstChild),i++,o=this.viewWrapper.offsetWidth}var a=n-t;this.updateRemainTemplate(e,this.viewWrapper,i,s,l,a)}},s.prototype.getOverflowVal=function(e){var t;if(this.mainData&&this.mainData.length)if("CheckBox"===this.mode){var i=this.listData;this.listData=this.mainData,t=this.getTextByValue(this.value[e]),this.listData=i}else t=this.getTextByValue(this.value[e]);else t=this.value[e];return t},s.prototype.unWireEvent=function(){if(t.isNullOrUndefined(this.componentWrapper)||t.EventHandler.remove(this.componentWrapper,"mousedown",this.wrapperClick),t.EventHandler.remove(window,"resize",this.windowResize),!t.isNullOrUndefined(this.inputElement)){t.EventHandler.remove(this.inputElement,"focus",this.focusInHandler),t.EventHandler.remove(this.inputElement,"keydown",this.onKeyDown),"CheckBox"!==this.mode&&t.EventHandler.remove(this.inputElement,"input",this.onInput),t.EventHandler.remove(this.inputElement,"keyup",this.keyUp);var e=t.closest(this.inputElement,"form");e&&t.EventHandler.remove(e,"reset",this.resetValueHandler),t.EventHandler.remove(this.inputElement,"blur",this.onBlurHandler)}t.isNullOrUndefined(this.componentWrapper)||(t.EventHandler.remove(this.componentWrapper,"mouseover",this.mouseIn),t.EventHandler.remove(this.componentWrapper,"mouseout",this.mouseOut)),t.isNullOrUndefined(this.overAllClear)||t.EventHandler.remove(this.overAllClear,"mousedown",this.clearAll),t.isNullOrUndefined(this.inputElement)||t.EventHandler.remove(this.inputElement,"paste",this.pasteHandler)},s.prototype.selectAllItem=function(e,i,s){var l;if(t.isNullOrUndefined(this.list)||(l=this.list.querySelectorAll(e?'li.e-list-item:not([aria-selected="true"]):not(.e-reorder-hide)':'li.e-list-item[aria-selected="true"]:not(.e-reorder-hide)')),this.value&&this.value.length&&i&&i.target&&t.closest(i.target,".e-close-hooker")&&this.allowFiltering&&(l=this.mainList.querySelectorAll(e?'li.e-list-item:not([aria-selected="true"]):not(.e-reorder-hide)':'li.e-list-item[aria-selected="true"]:not(.e-reorder-hide)')),this.enableGroupCheckBox&&"CheckBox"===this.mode&&!t.isNullOrUndefined(this.fields.groupBy)){var n=i?this.groupTemplate?t.closest(i.target,".e-list-group-item"):i.target:null;if(n=i&&32===i.keyCode?s:n,(n=n&&n.classList.contains("e-frame")?n.parentElement.parentElement:n)&&n.classList.contains("e-list-group-item")){var o=n.nextElementSibling;if(t.isNullOrUndefined(o))return;for(;o.classList.contains("e-list-item");){if(e){if(!o.firstElementChild.lastElementChild.classList.contains("e-check")){var r=this.value&&this.value.length?this.value.length:0;o.classList.contains("e-active")&&(r-=1),r<this.maximumSelectionLength&&this.updateListSelection(o,i)}}else o.firstElementChild.lastElementChild.classList.contains("e-check")&&this.updateListSelection(o,i);if(null==(o=o.nextElementSibling))break}if(n.classList.contains("e-list-group-item")){var a=this.list.getElementsByClassName("e-item-focus")[0];a&&a.classList.remove("e-item-focus"),e?n.classList.add("e-active"):n.classList.remove("e-active"),n.classList.add("e-item-focus"),this.updateAriaActiveDescendant()}this.textboxValueUpdate(),this.checkPlaceholderSize(),!this.changeOnBlur&&i&&this.updateValueState(i,this.value,this.tempValues)}else this.updateValue(i,l,e)}else this.updateValue(i,l,e);this.addValidInputClass()},s.prototype.updateValue=function(e,i,s){var l=this,n=i.length,o={event:e,items:s?i:[],itemData:s?this.listData:[],isInteracted:!!e,isChecked:s,preventSelectEvent:!1};if(this.trigger("beforeSelectAll",o),i&&i.length){var r=0,a=0;if(a=this.enableGroupCheckBox?s?this.maximumSelectionLength-(this.value?this.value.length:0):i.length:s?this.maximumSelectionLength-(this.value?this.value.length:0):this.maximumSelectionLength,o.preventSelectEvent){for(var h=0;h<i.length&&h<a;h++){this.removeHover();var p=i[h].getAttribute("data-value"),u=this.getFormattedValue(p),d=this.mainList?this.mainList.querySelectorAll(s?'li.e-list-item:not([aria-selected="true"]):not(.e-reorder-hide)':'li.e-list-item[aria-selected="true"]:not(.e-reorder-hide)')[h]:null;s?(this.value=this.value?this.value:[],this.value.indexOf(u)<0&&this.setProperties({value:[].concat([],this.value,[u])},!0),this.removeFocus(),this.addListSelection(i[h],d),this.updateChipStatus(),this.checkMaxSelection()):this.removeAllItems(u,e,!1,i[h],d),this.enableGroupCheckBox&&this.findGroupStart(i[h])}if(!s&&(this.value&&this.value.length?this.value.length:0)<this.maximumSelectionLength){var c=this.list.querySelectorAll("li."+U.li+":not(.e-active)");t.removeClass(c,"e-disable")}var m={event:e,items:s?i:[],itemData:s?this.listData:[],isInteracted:!!e,isChecked:s};this.trigger("selectedAll",m)}else{for(this.isSelectAllTarget=n===r+1;r<n&&r<=50&&r<a;)this.updateListSelection(i[r],e,n-r),this.enableGroupCheckBox&&this.findGroupStart(i[r]),r++;n>50&&setTimeout(function(){for(;r<n&&r<a;)l.isSelectAllTarget=n===r+1,l.updateListSelection(i[r],e,n-r),l.enableGroupCheckBox&&l.findGroupStart(i[r]),r++;if(l.updatedataValueItems(e),l.changeOnBlur||(l.updateValueState(e,l.value,l.tempValues),l.isSelectAll=l.isSelectAll?!l.isSelectAll:l.isSelectAll),l.updateHiddenElement(),l.popupWrapper&&i[r-1].classList.contains("e-item-focus")){var t=document.getElementsByClassName("e-selectall-parent")[0];t&&t.classList.contains("e-item-focus")&&i[r-1].classList.remove("e-item-focus")}},0)}}this.updatedataValueItems(e),this.checkPlaceholderSize(),n<=50&&!o.preventSelectEvent&&(this.changeOnBlur||(this.updateValueState(e,this.value,this.tempValues),this.isSelectAll=this.isSelectAll?!this.isSelectAll:this.isSelectAll),this.updateHiddenElement())},s.prototype.updateHiddenElement=function(){var e=this,i="",s="",l="",n=[];"CheckBox"===this.mode&&(this.value.map(function(t,o){i+='<option selected value ="'+t+'">'+o+"</option>",l=e.listData?e.getTextByValue(t):t,s+=l+e.delimiterChar+" ",n.push(l)}),this.hiddenElement.innerHTML=i,this.updateWrapperText(this.delimiterWrapper,s),this.delimiterWrapper.setAttribute("id",t.getUniqueID("delim_val")),this.inputElement.setAttribute("aria-describedby",this.delimiterWrapper.id),this.setProperties({text:n.toString()},!0),this.refreshInputHight(),this.refreshPlaceHolder())},s.prototype.updatedataValueItems=function(e){this.deselectHeader(),this.textboxValueUpdate(e)},s.prototype.textboxValueUpdate=function(e){var i=e&&e.target&&(t.closest(e.target,".e-selectall-parent")||t.closest(e.target,".e-close-hooker"));"Box"===this.mode||this.isPopupOpen()||"CheckBox"===this.mode&&(this.isSelectAll||i)?this.searchWrapper.classList.remove("e-zero-size"):this.updateDelimView(),"CheckBox"===this.mode?(this.updateDelimView(),i||this.isSelectAll||!this.isSelectAllTarget||this.updateDelimeter(this.delimiterChar,e),this.refreshInputHight()):this.updateDelimeter(this.delimiterChar,e),this.refreshPlaceHolder()},s.prototype.setZIndex=function(){this.popupObj&&this.popupObj.setProperties({zIndex:this.zIndex})},s.prototype.updateDataSource=function(e){t.isNullOrUndefined(this.list)?this.renderPopup():this.resetList(this.dataSource),this.value&&this.value.length&&(this.setProperties({value:this.value}),this.refreshSelection())},s.prototype.onLoadSelect=function(){this.setDynValue=!0,this.renderPopup()},s.prototype.selectAllItems=function(i,s){var l=this;if(t.isNullOrUndefined(this.list))this.selectAllAction=function(){if("CheckBox"===l.mode&&l.showSelectAll){var e={module:"CheckBoxSelection",enable:"CheckBox"===l.mode,value:i?"check":"uncheck"};l.notify("checkSelectAll",e)}l.selectAllItem(i,s),l.selectAllAction=null},e.prototype.render.call(this);else{if(this.selectAllAction=null,"CheckBox"===this.mode&&this.showSelectAll){var n={value:i?"check":"uncheck",enable:"CheckBox"===this.mode,module:"CheckBoxSelection"};this.notify("checkSelectAll",n)}this.selectAllItem(i,s)}},s.prototype.getPersistData=function(){return this.addOnPersist(["value"])},s.prototype.onPropertyChanged=function(i,s){(i.dataSource&&!t.isNullOrUndefined(Object.keys(i.dataSource))||i.query&&!t.isNullOrUndefined(Object.keys(i.query)))&&(this.resetFilteredData&&(this.resetMainList=this.resetMainList?this.resetMainList:this.mainList,this.resetFilteredData=!1),this.mainList=null,this.mainData=null,this.isFirstClick=!1,this.isDynamicDataChange=!0),"multiselect"===this.getModuleName()&&(this.filterAction=!1,this.setUpdateInitial(["fields","query","dataSource"],i));for(var l=0,o=Object.keys(i);l<o.length;l++){var r=o[l];switch(r){case"query":case"dataSource":"CheckBox"===this.mode&&this.showSelectAll&&(t.isNullOrUndefined(this.popupObj)||(this.popupObj.destroy(),this.popupObj=null),this.renderPopup());break;case"htmlAttributes":this.updateHTMLAttribute();break;case"showClearButton":this.updateClearButton(i.showClearButton);break;case"text":this.updateVal(this.value,this.value,"text");break;case"value":this.updateVal(this.value,s.value,"value"),this.addValidInputClass(),!this.closePopupOnSelect&&this.isPopupOpen()&&this.refreshPopup(),this.preventChange=this.isAngular&&this.preventChange?!this.preventChange:this.preventChange;break;case"width":this.setWidth(i.width),this.popupObj.setProperties({width:this.calcPopupWidth()});break;case"placeholder":this.refreshPlaceHolder();break;case"filterBarPlaceholder":this.allowFiltering&&this.notify("filterBarPlaceholder",{filterBarPlaceholder:i.filterBarPlaceholder});break;case"delimiterChar":"Box"!==this.mode&&this.updateDelimView(),this.updateData(i.delimiterChar);break;case"cssClass":this.updateOldPropCssClass(s.cssClass),this.updateCssClass(),this.calculateWidth();break;case"enableRtl":this.enableRTL(i.enableRtl),e.prototype.onPropertyChanged.call(this,i,s);break;case"readonly":this.updateReadonly(i.readonly),this.hidePopup();break;case"enabled":this.hidePopup(),this.enable(i.enabled);break;case"showSelectAll":this.popupObj&&(this.popupObj.destroy(),this.popupObj=null),this.renderPopup();break;case"showDropDownIcon":this.dropDownIcon();break;case"floatLabelType":this.setFloatLabelType(),this.addValidInputClass(),n.Input.createSpanElement(this.overAllWrapper,this.createElement),this.calculateWidth(),t.isNullOrUndefined(this.overAllWrapper)||t.isNullOrUndefined(this.overAllWrapper.getElementsByClassName("e-ddl-icon")[0]&&this.overAllWrapper.getElementsByClassName("e-float-text-content")[0]&&"Never"!==this.floatLabelType)||this.overAllWrapper.getElementsByClassName("e-float-text-content")[0].classList.add("e-icon");break;case"enableSelectionOrder":break;case"selectAllText":this.notify("selectAllText",!1);break;case"popupHeight":if(this.popupObj){var a=parseInt(this.popupHeight,10);"auto"!==this.popupHeight?(this.list.style.maxHeight=t.formatUnit(a),this.popupWrapper.style.maxHeight=t.formatUnit(this.popupHeight)):this.list.style.maxHeight=t.formatUnit(this.popupHeight)}break;case"headerTemplate":case"footerTemplate":this.reInitializePoup();break;case"allowFiltering":"CheckBox"===this.mode&&this.popupObj&&this.reInitializePoup(),this.updateSelectElementData(this.allowFiltering);break;case"fields":t.isNullOrUndefined(this.fields.groupBy)&&this.removeScrollEvent();break;default:var h=this.getPropObject(r,i,s);e.prototype.onPropertyChanged.call(this,h.newProperty,h.oldProperty)}}},s.prototype.reInitializePoup=function(){this.popupObj&&(this.popupObj.destroy(),this.popupObj=null),this.renderPopup()},s.prototype.presentItemValue=function(e){for(var i=[],s=0;s<this.value.length;s++)this.findListElement(this.allowFiltering&&!t.isNullOrUndefined(this.mainList)?this.mainList:e,"li","data-value",this.value[s])||i.push(this.value[s]);return i},s.prototype.addNonPresentItems=function(e,t,i,s){var l=this;this.dataSource.executeQuery(this.getForQuery(e)).then(function(e){e.result.length>0&&l.addItem(e.result,i.length),l.updateActionList(t,i,s)})},s.prototype.updateVal=function(e,s,l){if(this.list)if(!(this.dataSource instanceof i.DataManager)||this.listData&&this.mainList&&this.mainData){var n=[];if(t.isNullOrUndefined(this.value)||this.allowCustomValue||(n=this.presentItemValue(this.ulElement)),"value"==l&&n.length>0&&this.dataSource instanceof i.DataManager&&!t.isNullOrUndefined(this.value)&&null!=this.listData)this.mainData=null,this.setDynValue=!0,this.addNonPresentItems(n,this.ulElement,this.listData);else{if("text"===l&&(this.initialTextUpdate(),e=this.value),(t.isNullOrUndefined(this.value)||0===this.value.length)&&(this.tempValues=s),this.allowCustomValue&&("Default"===this.mode||"Box"===this.mode)&&this.isReact&&this.inputFocus&&this.isPopupOpen()&&this.mainData!==this.listData){var o=this.mainList.cloneNode?this.mainList.cloneNode(!0):this.mainList;this.onActionComplete(o,this.mainData)}this.initialValueUpdate(),"Box"===this.mode||this.inputFocus||this.updateDelimView(),this.inputFocus||this.refreshInputHight(),this.refreshPlaceHolder(),"CheckBox"!==this.mode&&this.changeOnBlur&&this.updateValueState(null,e,s),this.checkPlaceholderSize()}}else this.onLoadSelect();else this.onLoadSelect();this.changeOnBlur||this.updateValueState(null,e,s)},s.prototype.addItem=function(t,i){e.prototype.addItem.call(this,t,i)},s.prototype.hidePopup=function(e){var i=this;if(this.isPopupOpen()){var s={name:"FadeOut",duration:100,delay:100},l={popup:this.popupObj,cancel:!1,animation:s,event:e||null};this.trigger("close",l,function(e){e.cancel||(i.fields.groupBy&&"CheckBox"!==i.mode&&i.fixedHeaderElement&&(t.remove(i.fixedHeaderElement),i.fixedHeaderElement=null),i.beforePopupOpen=!1,i.overAllWrapper.classList.remove("e-icon-anim"),i.popupObj.hide(new t.Animation(e.animation)),t.attributes(i.inputElement,{"aria-expanded":"false"}),i.inputElement.removeAttribute("aria-owns"),i.inputElement.removeAttribute("aria-activedescendant"),i.allowFiltering&&i.notify("inputFocus",{module:"CheckBoxSelection",enable:"CheckBox"===i.mode,value:"clear"}),i.popupObj.hide(),t.removeClass([document.body,i.popupObj.element],"e-popup-full-page"),t.EventHandler.remove(i.list,"keydown",i.onKeyDown),"CheckBox"===i.mode&&i.showSelectAll&&t.EventHandler.remove(i.popupObj.element,"click",i.clickHandler))})}},s.prototype.showPopup=function(i){var s=this;if(this.enabled){var l={cancel:!1};this.trigger("beforeOpen",l,function(l){if(!l.cancel){if(!s.ulElement)return s.beforePopupOpen=!0,"CheckBox"===s.mode&&t.Browser.isDevice&&s.allowFiltering&&s.notify("popupFullScreen",{module:"CheckBoxSelection",enable:"CheckBox"===s.mode}),void e.prototype.render.call(s,i);"CheckBox"===s.mode&&t.Browser.isDevice&&s.allowFiltering&&s.notify("popupFullScreen",{module:"CheckBoxSelection",enable:"CheckBox"===s.mode});var n=s.ulElement.querySelectorAll("li.e-list-item").length,o=s.ulElement.querySelectorAll("li."+U.li+"."+ve).length;if(n>0&&n===o&&o===s.mainData.length&&(""===s.targetElement()||!s.allowCustomValue))return void(s.beforePopupOpen=!1);s.onPopupShown(i)}})}},s.prototype.selectAll=function(e){this.isSelectAll=!0,this.selectAllItems(e)},s.prototype.getModuleName=function(){return"multiselect"},s.prototype.clear=function(){var e=this;this.selectAll(!1),this.value&&this.value.length?setTimeout(function(){e.setProperties({value:null},!0)},0):this.setProperties({value:null},!0)},s.prototype.render=function(){t.isNullOrUndefined(this.value)||(this.value=this.value.slice()),this.setDynValue=this.initStatus=!1,this.isSelectAll=!1,this.selectAllEventEle=[],this.searchWrapper=this.createElement("span",{className:"e-searcher "+("Box"===this.mode?"e-multiselect-box":"")}),this.viewWrapper=this.createElement("span",{className:"e-delim-view e-delim-values",styles:"display:none;"}),this.overAllClear=this.createElement("span",{className:"e-chips-close e-close-hooker",styles:"display:none;"}),this.componentWrapper=this.createElement("div",{className:"e-multi-select-wrapper"}),this.overAllWrapper=this.createElement("div",{className:"e-multiselect e-input-group e-control-wrapper"}),"CheckBox"===this.mode&&t.addClass([this.overAllWrapper],"e-checkbox"),t.Browser.isDevice&&this.componentWrapper.classList.add("e-mob-wrapper"),this.setWidth(this.width),this.overAllWrapper.appendChild(this.componentWrapper),this.popupWrapper=this.createElement("div",{id:this.element.id+"_popup",className:"e-ddl e-popup e-multi-select-list-wrapper"}),this.popupWrapper.setAttribute("aria-label",this.element.id),this.popupWrapper.setAttribute("role","dialog"),"Delimiter"===this.mode||"CheckBox"===this.mode?(this.delimiterWrapper=this.createElement("span",{className:"e-delim-values",styles:"display:none"}),this.componentWrapper.appendChild(this.delimiterWrapper)):(this.chipCollectionWrapper=this.createElement("span",{className:"e-chips-collection",styles:"display:none"}),"Default"===this.mode?this.chipCollectionWrapper.setAttribute("id",t.getUniqueID("chip_default")):"Box"===this.mode&&this.chipCollectionWrapper.setAttribute("id",t.getUniqueID("chip_box")),this.componentWrapper.appendChild(this.chipCollectionWrapper)),"Box"!==this.mode&&this.componentWrapper.appendChild(this.viewWrapper),this.componentWrapper.appendChild(this.searchWrapper),this.showClearButton&&!t.Browser.isDevice?this.componentWrapper.appendChild(this.overAllClear):this.componentWrapper.classList.add("e-close-icon-hide"),this.dropDownIcon(),this.inputElement=this.createElement("input",{className:"e-dropdownbase",attrs:{spellcheck:"false",type:"text",autocomplete:"off",tabindex:"0",role:"combobox"}}),"Default"!==this.mode&&"Box"!==this.mode||this.inputElement.setAttribute("aria-describedby",this.chipCollectionWrapper.id),this.element.tagName!==this.getNgDirective()&&(this.element.style.display="none"),this.element.tagName===this.getNgDirective()?(this.element.appendChild(this.overAllWrapper),this.searchWrapper.appendChild(this.inputElement)):(this.element.parentElement.insertBefore(this.overAllWrapper,this.element),this.searchWrapper.appendChild(this.inputElement),this.searchWrapper.appendChild(this.element),this.element.removeAttribute("tabindex")),"Never"!==this.floatLabelType?v(this.overAllWrapper,this.searchWrapper,this.element,this.inputElement,this.value,this.floatLabelType,this.placeholder):"Never"===this.floatLabelType&&this.refreshPlaceHolder(),this.addValidInputClass(),this.element.style.opacity="";var e=this.element.getAttribute("id")?this.element.getAttribute("id"):t.getUniqueID("ej2_dropdownlist");this.element.id=e,this.hiddenElement=this.createElement("select",{attrs:{"aria-hidden":"true",class:"e-multi-hidden",tabindex:"-1",multiple:""}}),this.componentWrapper.appendChild(this.hiddenElement),this.validationAttribute(this.element,this.hiddenElement),"CheckBox"!==this.mode&&this.hideOverAllClear(),!t.isNullOrUndefined(t.closest(this.element,"fieldset"))&&t.closest(this.element,"fieldset").disabled&&(this.enabled=!1),this.wireEvent(),this.enable(this.enabled),this.enableRTL(this.enableRtl),this.checkInitialValue(),this.element.hasAttribute("data-val")&&this.element.setAttribute("data-val","false"),n.Input.createSpanElement(this.overAllWrapper,this.createElement),this.calculateWidth(),t.isNullOrUndefined(this.overAllWrapper)||t.isNullOrUndefined(this.overAllWrapper.getElementsByClassName("e-ddl-icon")[0]&&this.overAllWrapper.getElementsByClassName("e-float-text-content")[0]&&"Never"!==this.floatLabelType)||this.overAllWrapper.getElementsByClassName("e-float-text-content")[0].classList.add("e-icon"),this.renderComplete()},s.prototype.checkInitialValue=function(){var s=this,l=this.dataSource instanceof Array?this.dataSource.length>0:!t.isNullOrUndefined(this.dataSource);if((!this.value||!this.value.length)&&t.isNullOrUndefined(this.text)&&!l&&"SELECT"===this.element.tagName&&this.element.options.length>0){for(var n=this.element.options,o=[],r="",a=0,h=n.length;a<h;a++){var p=n[a];t.isNullOrUndefined(p.getAttribute("selected"))||(p.getAttribute("value")?o.push(p.getAttribute("value")):r+=p.text+this.delimiterChar)}o.length>0?this.setProperties({value:o},!0):""!==r&&this.setProperties({text:r},!0),(o.length>0||""!==r)&&(this.refreshInputHight(),this.refreshPlaceHolder())}(this.value&&this.value.length||!t.isNullOrUndefined(this.text))&&(this.list||e.prototype.render.call(this)),t.isNullOrUndefined(this.text)||!t.isNullOrUndefined(this.value)&&0!==this.value.length||this.initialTextUpdate(),this.value&&this.value.length?(this.dataSource instanceof i.DataManager?this.setInitialValue=function(){s.initStatus=!1,s.initialValueUpdate(),s.initialUpdate(),s.setInitialValue=null,s.initStatus=!0}:(this.initialValueUpdate(),this.initialUpdate()),this.updateTempValue()):this.initialUpdate(),this.initStatus=!0,this.checkAutoFocus(),t.isNullOrUndefined(this.text)||this.element.setAttribute("data-initial-value",this.text)},s.prototype.checkAutoFocus=function(){this.element.hasAttribute("autofocus")&&this.inputElement.focus()},s.prototype.setFloatLabelType=function(){y(this.overAllWrapper,this.componentWrapper,this.searchWrapper,this.inputElement,this.value,this.floatLabelType,this.placeholder),"Never"!==this.floatLabelType&&v(this.overAllWrapper,this.searchWrapper,this.element,this.inputElement,this.value,this.floatLabelType,this.placeholder)},s.prototype.addValidInputClass=function(){t.isNullOrUndefined(this.overAllWrapper)||(!t.isNullOrUndefined(this.value)&&this.value.length||"Always"===this.floatLabelType?t.addClass([this.overAllWrapper],"e-valid-input"):t.removeClass([this.overAllWrapper],"e-valid-input"))},s.prototype.dropDownIcon=function(){this.showDropDownIcon?(this.dropIcon=this.createElement("span",{className:"e-input-group-icon e-ddl-icon"}),this.componentWrapper.appendChild(this.dropIcon),t.addClass([this.componentWrapper],["e-down-icon"])):t.isNullOrUndefined(this.dropIcon)||(this.dropIcon.parentElement.removeChild(this.dropIcon),t.removeClass([this.componentWrapper],["e-down-icon"]))},s.prototype.initialUpdate=function(){"Box"===this.mode||this.setDynValue&&"Default"===this.mode&&this.inputFocus||this.updateDelimView(),this.updateCssClass(),this.updateHTMLAttribute(),this.updateReadonly(this.readonly),this.refreshInputHight(),this.checkPlaceholderSize()},s.prototype.destroy=function(){this.isReact&&this.clearTemplate(),this.popupObj&&this.popupObj.hide(),this.notify("destroy",{}),this.unwireListEvents(),this.unWireEvent(),this.list=null,this.popupObj=null,this.mainList=null,this.mainData=null,this.filterParent=null,this.ulElement=null,this.mainListCollection=null,e.prototype.destroy.call(this);var i=["readonly","aria-disabled","placeholder"],s=i.length;if(!t.isNullOrUndefined(this.inputElement))for(;s>0;)this.inputElement.removeAttribute(i[s-1]),s--;t.isNullOrUndefined(this.element)||(this.element.removeAttribute("data-initial-value"),this.element.style.display="block"),this.overAllWrapper&&this.overAllWrapper.parentElement&&(this.overAllWrapper.parentElement.tagName===this.getNgDirective()?t.remove(this.overAllWrapper):(this.overAllWrapper.parentElement.insertBefore(this.element,this.overAllWrapper),t.remove(this.overAllWrapper))),this.componentWrapper=null,this.overAllClear=null,this.overAllWrapper=null,this.hiddenElement=null,this.searchWrapper=null,this.viewWrapper=null,this.chipCollectionWrapper=null,this.targetInputElement=null,this.popupWrapper=null,this.inputElement=null,this.delimiterWrapper=null,this.popupObj=null,this.popupWrapper=null,this.liCollections=null,this.header=null,this.mainList=null,this.mainListCollection=null,this.footer=null,this.selectAllEventEle=null},me([t.Complex({text:null,value:null,iconCss:null,groupBy:null},V)],s.prototype,"fields",void 0),me([t.Property(!1)],s.prototype,"enablePersistence",void 0),me([t.Property(null)],s.prototype,"groupTemplate",void 0),me([t.Property("No records found")],s.prototype,"noRecordsTemplate",void 0),me([t.Property("Request failed")],s.prototype,"actionFailureTemplate",void 0),me([t.Property("None")],s.prototype,"sortOrder",void 0),me([t.Property(!0)],s.prototype,"enabled",void 0),me([t.Property(!0)],s.prototype,"enableHtmlSanitizer",void 0),me([t.Property([])],s.prototype,"dataSource",void 0),me([t.Property(null)],s.prototype,"query",void 0),me([t.Property("StartsWith")],s.prototype,"filterType",void 0),me([t.Property(1e3)],s.prototype,"zIndex",void 0),me([t.Property(!1)],s.prototype,"ignoreAccent",void 0),me([t.Property()],s.prototype,"locale",void 0),me([t.Property(!1)],s.prototype,"enableGroupCheckBox",void 0),me([t.Property(null)],s.prototype,"cssClass",void 0),me([t.Property("100%")],s.prototype,"width",void 0),me([t.Property("300px")],s.prototype,"popupHeight",void 0),me([t.Property("100%")],s.prototype,"popupWidth",void 0),me([t.Property(null)],s.prototype,"placeholder",void 0),me([t.Property(null)],s.prototype,"filterBarPlaceholder",void 0),me([t.Property({})],s.prototype,"htmlAttributes",void 0),me([t.Property(null)],s.prototype,"valueTemplate",void 0),me([t.Property(null)],s.prototype,"headerTemplate",void 0),me([t.Property(null)],s.prototype,"footerTemplate",void 0),me([t.Property(null)],s.prototype,"itemTemplate",void 0),me([t.Property(null)],s.prototype,"allowFiltering",void 0),me([t.Property(!0)],s.prototype,"changeOnBlur",void 0),me([t.Property(!1)],s.prototype,"allowCustomValue",void 0),me([t.Property(!0)],s.prototype,"showClearButton",void 0),me([t.Property(1e3)],s.prototype,"maximumSelectionLength",void 0),me([t.Property(!1)],s.prototype,"readonly",void 0),me([t.Property(null)],s.prototype,"text",void 0),me([t.Property(null)],s.prototype,"value",void 0),me([t.Property(!0)],s.prototype,"hideSelectedItem",void 0),me([t.Property(!0)],s.prototype,"closePopupOnSelect",void 0),me([t.Property("Default")],s.prototype,"mode",void 0),me([t.Property(",")],s.prototype,"delimiterChar",void 0),me([t.Property(!0)],s.prototype,"ignoreCase",void 0),me([t.Property(!1)],s.prototype,"showDropDownIcon",void 0),me([t.Property("Never")],s.prototype,"floatLabelType",void 0),me([t.Property(!1)],s.prototype,"showSelectAll",void 0),me([t.Property("Select All")],s.prototype,"selectAllText",void 0),me([t.Property("Unselect All")],s.prototype,"unSelectAllText",void 0),me([t.Property(!0)],s.prototype,"enableSelectionOrder",void 0),me([t.Property(!0)],s.prototype,"openOnClick",void 0),me([t.Property(!1)],s.prototype,"addTagOnBlur",void 0),me([t.Event()],s.prototype,"change",void 0),me([t.Event()],s.prototype,"removing",void 0),me([t.Event()],s.prototype,"removed",void 0),me([t.Event()],s.prototype,"beforeSelectAll",void 0),me([t.Event()],s.prototype,"selectedAll",void 0),me([t.Event()],s.prototype,"beforeOpen",void 0),me([t.Event()],s.prototype,"open",void 0),me([t.Event()],s.prototype,"close",void 0),me([t.Event()],s.prototype,"blur",void 0),me([t.Event()],s.prototype,"focus",void 0),me([t.Event()],s.prototype,"chipSelection",void 0),me([t.Event()],s.prototype,"filtering",void 0),me([t.Event()],s.prototype,"tagging",void 0),me([t.Event()],s.prototype,"customValueSelection",void 0),s=me([t.NotifyPropertyChanges],s)}(F),Ce=function(){function e(e){this.activeLi=[],this.activeEle=[],this.parent=e,this.removeEventListener(),this.addEventListener()}return e.prototype.getModuleName=function(){return"CheckBoxSelection"},e.prototype.addEventListener=function(){this.parent.isDestroyed||(this.parent.on("updatelist",this.listSelection,this),this.parent.on("listoption",this.listOption,this),this.parent.on("selectAll",this.setSelectAll,this),this.parent.on("checkSelectAll",this.checkSelectAll,this),this.parent.on("searchBox",this.setSearchBox,this),this.parent.on("blur",this.onBlurHandler,this),this.parent.on("targetElement",this.targetElement,this),this.parent.on("deviceSearchBox",this.setDeviceSearchBox,this),this.parent.on("inputFocus",this.getFocus,this),this.parent.on("reOrder",this.setReorder,this),this.parent.on("activeList",this.getActiveList,this),this.parent.on("selectAllText",this.setLocale,this),this.parent.on("filterBarPlaceholder",this.setPlaceholder,this),t.EventHandler.add(document,"mousedown",this.onDocumentClick,this),this.parent.on("addItem",this.checboxCreate,this),this.parent.on("popupFullScreen",this.setPopupFullScreen,this))},e.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off("updatelist",this.listSelection),this.parent.off("listoption",this.listOption),this.parent.off("selectAll",this.setSelectAll),this.parent.off("checkSelectAll",this.checkSelectAll),this.parent.off("searchBox",this.setSearchBox),this.parent.off("blur",this.onBlurHandler),this.parent.off("targetElement",this.targetElement),this.parent.off("deviceSearchBox",this.setDeviceSearchBox),this.parent.off("inputFocus",this.getFocus),this.parent.off("reOrder",this.setReorder),this.parent.off("activeList",this.getActiveList),this.parent.off("selectAllText",this.setLocale),this.parent.off("filterBarPlaceholder",this.setPlaceholder),this.parent.off("addItem",this.checboxCreate),this.parent.off("popupFullScreen",this.setPopupFullScreen))},e.prototype.listOption=function(e){var i=this;if(t.isNullOrUndefined(this.parent.listCurrentOptions.itemCreated))this.parent.listCurrentOptions.itemCreated=function(e){i.checboxCreate(e)};else{var s=this.parent.listCurrentOptions.itemCreated;this.parent.listCurrentOptions.itemCreated=function(e){i.checboxCreate(e),s.apply(i,[e])}}},e.prototype.setPlaceholder=function(e){n.Input.setPlaceholder(e.filterBarPlaceholder,this.filterInput)},e.prototype.checboxCreate=function(e){var i;if(i=t.isNullOrUndefined(e.item)?e:e.item,this.parent.enableGroupCheckBox||"e-list-group-item "!==i.className&&"e-list-group-item"!==i.className){var s=r.createCheckBox(this.parent.createElement,!0),l=t.select("div.e-icons",i);return i.insertBefore(s,i.childNodes[t.isNullOrUndefined(l)?0:1]),t.select(".e-frame",s),this.parent.enableGroupCheckBox&&this.parent.popupWrapper.classList.add("e-multiselect-group"),i}return i},e.prototype.setSelectAll=function(){this.parent.showSelectAll?(t.isNullOrUndefined(this.checkAllParent)&&(this.checkAllParent=this.parent.createElement("div",{className:"e-selectall-parent"}),this.selectAllSpan=this.parent.createElement("span",{className:"e-all-text"}),this.selectAllSpan.textContent="",this.checkAllParent.appendChild(this.selectAllSpan),this.setLocale(),this.checboxCreate(this.checkAllParent),this.parent.headerTemplate&&(t.isNullOrUndefined(this.parent.filterParent)?t.append([this.checkAllParent],this.parent.popupWrapper):t.append([this.checkAllParent],this.parent.filterParent)),this.parent.headerTemplate||(t.isNullOrUndefined(this.parent.filterParent)?t.prepend([this.checkAllParent],this.parent.popupWrapper):this.parent.filterParent.parentNode.insertBefore(this.checkAllParent,this.parent.filterParent.nextSibling)),t.EventHandler.add(this.checkAllParent,"mousedown",this.clickHandler,this)),this.parent.list.classList.contains("e-nodata")||this.parent.listData&&this.parent.listData.length<=1&&!this.parent.isDynamicDataChange||this.parent.isDynamicDataChange&&this.parent.listData&&this.parent.listData.length<=1?this.checkAllParent.style.display="none":this.checkAllParent.style.display="block",this.parent.selectAllHeight=this.checkAllParent.getBoundingClientRect().height):t.isNullOrUndefined(this.checkAllParent)||(this.checkAllParent.parentElement.removeChild(this.checkAllParent),this.checkAllParent=null)},e.prototype.destroy=function(){this.removeEventListener(),t.EventHandler.remove(document,"mousedown",this.onDocumentClick),this.checkAllParent=null,this.clearIconElement=null,this.filterInput=null,this.filterInputObj=null,this.checkWrapper=null,this.selectAllSpan=null},e.prototype.listSelection=function(e){var i;if(t.isNullOrUndefined(e.e)){var s=e.li.querySelector(".e-checkbox-wrapper");i=s?s.childNodes[1]:e.li.lastElementChild.childNodes[1]}else{e.li.querySelector(".e-checkbox-wrapper .e-frame");i=t.isNullOrUndefined(e.e.target)?e.li.querySelector(".e-checkbox-wrapper").childNodes[1]:e.e.target.classList.contains("e-frame")&&(!this.parent.showSelectAll||this.checkAllParent&&!this.checkAllParent.contains(e.e.target))?e.e.target:e.li.querySelector(".e-checkbox-wrapper").childNodes[1]}if((this.parent.itemTemplate||this.parent.enableGroupCheckBox)&&(i=e.li.firstElementChild.childNodes[1]),t.isNullOrUndefined(i)||(this.checkWrapper=t.closest(i,".e-checkbox-wrapper")),!t.isNullOrUndefined(this.checkWrapper)){var l=t.select(".e-frame",this.checkWrapper);this.validateCheckNode(this.checkWrapper,l.classList.contains("e-check"),e.li,e.e,!1)}},e.prototype.validateCheckNode=function(e,t,i,s,l){this.changeState(e,t?"uncheck":"check",s,!0,l)},e.prototype.clickHandler=function(e){var i;i=e.currentTarget.classList.contains(this.checkAllParent.className)||e.currentTarget.classList.value===this.checkAllParent.className?e.currentTarget.firstElementChild.lastElementChild:e.currentTarget,this.checkWrapper=t.closest(i,".e-checkbox-wrapper");if(!t.isNullOrUndefined(this.checkWrapper)){var s=t.select(".e-frame",this.checkWrapper);this.validateCheckNode(this.checkWrapper,s.classList.contains("e-check"),null,e,!0)}e.preventDefault()},e.prototype.changeState=function(e,i,s,l,n){var o=e.getElementsByClassName("e-frame")[0];"check"!==i||o.classList.contains("e-check")?"uncheck"===i&&(o.classList.contains("e-check")||o.classList.contains("e-stop"))?(t.removeClass([o],["e-check","e-stop"]),n&&(this.parent.selectAllItems(!1,s),this.setLocale())):"indeterminate"!==i||o.classList.contains("e-stop")||(t.removeClass([o],["e-check"]),o.classList.add("e-stop"),n&&(this.parent.selectAllItems(!1,s),this.setLocale())):(o.classList.remove("e-stop"),o.classList.add("e-check"),n&&(this.parent.selectAllItems(!0,s),this.setLocale(!0)))},e.prototype.setSearchBox=function(e){if(t.isNullOrUndefined(this.parent.filterParent)){this.parent.filterParent=this.parent.createElement("span",{className:"e-filter-parent"}),this.filterInput=this.parent.createElement("input",{attrs:{type:"text"},className:"e-input-filter"}),this.parent.element.parentNode.insertBefore(this.filterInput,this.parent.element);var i=!1;return t.Browser.isDevice&&(i=!0,this.parent.mobFilter=!1),this.filterInputObj=n.Input.createInput({element:this.filterInput,buttons:i?["e-input-group-icon e-back-icon e-icons","e-input-group-icon e-clear-icon e-icons"]:["e-input-group-icon e-clear-icon e-icons"],properties:{placeholder:this.parent.filterBarPlaceholder}},this.parent.createElement),t.isNullOrUndefined(this.parent.cssClass)||(-1!==this.parent.cssClass.split(" ").indexOf("e-outline")?t.addClass([this.filterInputObj.container],"e-outline"):-1!==this.parent.cssClass.split(" ").indexOf("e-filled")&&t.addClass([this.filterInputObj.container],"e-filled")),t.append([this.filterInputObj.container],this.parent.filterParent),t.prepend([this.parent.filterParent],e.popupElement),t.attributes(this.filterInput,{"aria-disabled":"false",role:"combobox",autocomplete:"off",autocapitalize:"off",spellcheck:"false","aria-label":"multiselect","aria-expanded":"true","aria-controls":e.popupElement.id}),this.clearIconElement=this.filterInput.parentElement.querySelector(".e-clear-icon"),!t.Browser.isDevice&&this.clearIconElement&&(t.EventHandler.add(this.clearIconElement,"mousedown",this.clearText,this),this.clearIconElement.style.visibility="hidden"),t.EventHandler.add(this.filterInput,"input",this.parent.onInput,this.parent),t.EventHandler.add(this.filterInput,"keyup",this.parent.keyUp,this.parent),t.EventHandler.add(this.filterInput,"keydown",this.parent.onKeyDown,this.parent),t.EventHandler.add(this.filterInput,"blur",this.onBlurHandler,this),t.EventHandler.add(this.filterInput,"paste",this.parent.pasteHandler,this.parent),this.parent.searchBoxHeight=this.filterInputObj.container.parentElement.getBoundingClientRect().height,this.filterInputObj}},e.prototype.clickOnBackIcon=function(e){this.parent.hidePopup(),t.removeClass([document.body,this.parent.popupObj.element],"e-popup-full-page"),this.parent.inputElement.focus()},e.prototype.clearText=function(e){this.parent.targetInputElement.value="",this.parent.allowFiltering&&""===this.parent.targetInputElement.value&&this.parent.search(null),this.parent.refreshPopup(),this.parent.refreshListItems(null),this.clearIconElement.style.visibility="hidden",this.filterInput.focus(),this.setReorder(e),e.preventDefault()},e.prototype.setDeviceSearchBox=function(){this.parent.popupObj.element.classList.add("e-ddl-device"),this.parent.popupObj.element.classList.add("e-ddl-device-filter"),this.parent.popupObj.position={X:0,Y:0},this.parent.popupObj.dataBind(),this.setSearchBoxPosition(),this.backIconElement=this.filterInputObj.container.querySelector(".e-back-icon"),this.clearIconElement=this.filterInputObj.container.querySelector(".e-clear-icon"),this.clearIconElement.style.visibility="hidden",t.EventHandler.add(this.backIconElement,"click",this.clickOnBackIcon,this),t.EventHandler.add(this.clearIconElement,"click",this.clearText,this)},e.prototype.setSearchBoxPosition=function(){var e=this.filterInput.parentElement.getBoundingClientRect().height,i=0;this.checkAllParent&&(i=this.checkAllParent.getBoundingClientRect().height),this.parent.popupObj.element.style.maxHeight="100%",this.parent.popupObj.element.style.width="100%",this.parent.list.style.maxHeight=window.innerHeight-e-i+"px",this.parent.list.style.height=window.innerHeight-e-i+"px";var s=this.filterInput.parentElement.querySelector(".e-clear-icon");t.detach(this.filterInput),s.parentElement.insertBefore(this.filterInput,s)},e.prototype.setPopupFullScreen=function(){this.parent&&this.parent.popupObj&&(t.attributes(this.parent.popupObj.element,{style:"left:0px;right:0px;top:0px;bottom:0px;"}),t.addClass([document.body,this.parent.popupObj.element],"e-popup-full-page"),this.parent.popupObj.element.style.maxHeight="100%",this.parent.popupObj.element.style.width="100%")},e.prototype.targetElement=function(){return t.isNullOrUndefined(this.clearIconElement)||(this.parent.targetInputElement=this.filterInput,this.clearIconElement.style.visibility=""===this.parent.targetInputElement.value?"hidden":"visible"),this.parent.targetInputElement.value},e.prototype.onBlurHandler=function(e){if(!this.parent.element.classList.contains("e-listbox")){var i=void 0;if(this.parent.keyAction)return;if(t.Browser.isIE&&(i=!t.isNullOrUndefined(e)&&e.target),t.Browser.isIE||(i=!t.isNullOrUndefined(e)&&e.relatedTarget),this.parent.popupObj&&document.body.contains(this.parent.popupObj.element)&&this.parent.popupObj.element.contains(i)&&!t.Browser.isIE&&this.filterInput)return void this.filterInput.focus();if(this.parent.scrollFocusStatus&&this.filterInput)return e.preventDefault(),this.filterInput.focus(),void(this.parent.scrollFocusStatus=!1);this.parent.popupObj&&document.body.contains(this.parent.popupObj.element)&&!this.parent.popupObj.element.classList.contains("e-popup-close")&&(this.parent.inputFocus=!1,this.parent.updateValueState(e,this.parent.value,this.parent.tempValues),this.parent.dispatchEvent(this.parent.hiddenElement,"change")),this.parent.popupObj&&document.body.contains(this.parent.popupObj.element)&&!this.parent.popupObj.element.classList.contains("e-popup-close")&&(this.parent.inputFocus=!1,this.parent.overAllWrapper.classList.remove("e-input-focus"),this.parent.trigger("blur"),this.parent.focused=!0),this.parent.popupObj&&document.body.contains(this.parent.popupObj.element)&&!this.parent.popupObj.element.classList.contains("e-popup-close")&&!t.Browser.isDevice&&this.parent.hidePopup()}},e.prototype.onDocumentClick=function(e){if("listbox"!==this.parent.getLocaleName()){var i=e.target;!t.isNullOrUndefined(this.parent.popupObj)&&t.closest(i,'[id="'+this.parent.popupObj.element.id+'"]')&&(this.filterInput&&""!==this.filterInput.value||e.preventDefault()),!t.isNullOrUndefined(this.parent.popupObj)&&t.closest(i,'[id="'+this.parent.popupObj.element.id+'"]')||t.isNullOrUndefined(this.parent.overAllWrapper)||this.parent.overAllWrapper.contains(e.target)?this.parent.scrollFocusStatus=(t.Browser.isIE||"edge"===t.Browser.info.name)&&document.activeElement===this.filterInput:(this.parent.overAllWrapper.classList.contains(U.focus)||this.parent.isPopupOpen())&&(this.parent.inputFocus=!1,this.parent.scrollFocusStatus=!1,this.parent.hidePopup(),this.parent.onBlurHandler(e,!0),this.parent.focused=!0),t.isNullOrUndefined(this.parent.overAllWrapper)||this.parent.overAllWrapper.contains(e.target)||!this.parent.overAllWrapper.classList.contains("e-input-focus")||this.parent.isPopupOpen()||(t.Browser.isIE?this.parent.onBlurHandler():this.parent.onBlurHandler(e)),this.filterInput===i&&this.filterInput.focus()}},e.prototype.getFocus=function(e){if(this.parent.overAllWrapper.classList.remove("e-input-focus"),this.parent.keyAction&&"clear"!==e.value&&"focus"!==e.value)return void(this.parent.keyAction=!1);"focus"===e.value&&(this.filterInput.focus(),this.parent.removeFocus(),t.EventHandler.remove(this.parent.list,"keydown",this.parent.onKeyDown)),"clear"===e.value&&(this.filterInput.value="",this.clearIconElement.style.visibility="hidden")},e.prototype.checkSelectAll=function(e){"check"===e.value&&(this.changeState(this.checkAllParent,e.value,null,null,!1),this.setLocale(!0)),"uncheck"===e.value&&(this.changeState(this.checkAllParent,e.value,null,null,!1),this.setLocale()),"indeterminate"===e.value&&(this.changeState(this.checkAllParent,e.value,null,null,!1),this.setLocale())},e.prototype.setLocale=function(e){if("Select All"!==this.parent.selectAllText||"Unselect All"!==this.parent.unSelectAllText){var i=e?this.parent.unSelectAllText:this.parent.selectAllText;this.selectAllSpan.textContent="";for(var s=t.compile(i),l=e?"unSelectAllText":"selectAllText",n=0,o=s({},this.parent,l,null,!this.parent.isStringTemplate);n<o.length;n++){var r=o[n];this.selectAllSpan.textContent=r.textContent}}else{var a={selectAllText:"Select All",unSelectAllText:"Unselect All"},h=new t.L10n(this.parent.getLocaleName(),{},this.parent.locale);""===h.getConstant("selectAllText")&&(h=new t.L10n("dropdowns",a,this.parent.locale)),this.selectAllSpan.textContent=e?h.getConstant("unSelectAllText"):h.getConstant("selectAllText")}},e.prototype.getActiveList=function(e){e.li.classList.contains("e-active")?this.activeLi.push(e.li.cloneNode(!0)):this.activeLi.splice(e.index,1)},e.prototype.setReorder=function(e){if(this.parent.enableSelectionOrder&&!t.isNullOrUndefined(this.parent.value)){var i=this.parent.ulElement.querySelectorAll("li.e-active").length,s=void 0,l=this.parent.createElement("ul",{className:"e-list-parent e-ul e-reorder"});i>0&&(this.parent.ulElement.querySelectorAll("li.e-active").forEach(function(e){l.appendChild(e)}),s=this.parent.ulElement.querySelectorAll("li.e-active"),t.addClass(s,"e-reorder-hide"),t.prepend([l],this.parent.list)),this.parent.focusAtFirstListItem()}},e}(),be=function(){var e=function(t,i){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)t.hasOwnProperty(i)&&(e[i]=t[i])})(t,i)};return function(t,i){function s(){this.constructor=t}e(t,i),t.prototype=null===i?Object.create(i):(s.prototype=i.prototype,new s)}}(),Ee=function(e,t,i,s){var l,n=arguments.length,o=n<3?t:null===s?s=Object.getOwnPropertyDescriptor(t,i):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(e,t,i,s);else for(var r=e.length-1;r>=0;r--)(l=e[r])&&(o=(n<3?l(o):n>3?l(t,i,o):l(t,i))||o);return n>3&&o&&Object.defineProperty(t,i,o),o},Se=function(e){function i(){return null!==e&&e.apply(this,arguments)||this}return be(i,e),Ee([t.Property("Multiple")],i.prototype,"mode",void 0),Ee([t.Property(!1)],i.prototype,"showCheckbox",void 0),Ee([t.Property(!1)],i.prototype,"showSelectAll",void 0),Ee([t.Property("Left")],i.prototype,"checkboxPosition",void 0),i}(t.ChildProperty),xe=function(e){function i(){return null!==e&&e.apply(this,arguments)||this}return be(i,e),Ee([t.Property([])],i.prototype,"items",void 0),Ee([t.Property("Right")],i.prototype,"position",void 0),i}(t.ChildProperty),Ie=function(e){function o(t,i){var s=e.call(this,t,i)||this;return s.isValidKey=!1,s.isDataSourceUpdate=!1,s.keyDownStatus=!1,s}be(o,e),a=o,o.prototype.addItem=function(t,i){e.prototype.addItem.call(this,t,i)},o.prototype.render=function(){if(this.isAngular&&this.allowFiltering){var i=this.element,s=i.cloneNode(!0);i.parentNode.replaceChild(s,i),this.element=s,t.setValue("ej2_instances",[this],this.element)}this.inputString="",this.initLoad=!0,this.isCustomFiltering=!1,this.initialSelectedOptions=this.value,this.inputFormName=this.element.getAttribute("name"),e.prototype.render.call(this),this.setEnabled(),this.renderComplete()},o.prototype.initWrapper=function(){var e=this.createElement("select",{className:"e-hidden-select",attrs:{multiple:""}});e.style.visibility="hidden",this.list.classList.add("e-listbox-wrapper"),this.list.querySelector(".e-list-parent").setAttribute("role","presentation");for(var i=this.list.querySelectorAll(".e-list-group-item"),s=0;s<i.length;s++)i[s].removeAttribute("tabindex"),i[s].setAttribute("role","option");this.itemTemplate&&this.list.classList.add("e-list-template"),this.list.classList.add("e-wrapper"),this.list.classList.add("e-lib"),"EJS-LISTBOX"===this.element.tagName?(this.element.setAttribute("tabindex","0"),this.initLoad&&this.element.appendChild(this.list)):(this.initLoad&&this.element.parentElement.insertBefore(this.list,this.element),this.list.insertBefore(this.element,this.list.firstChild),this.element.style.display="none"),this.list.insertBefore(e,this.list.firstChild),this.list.getElementsByClassName("e-list-item")[0]&&this.list.getElementsByClassName("e-list-item")[0].classList.remove(U.focus),this.itemTemplate&&this.renderReactTemplates(),t.removeClass([this.list],[U.content,U.root]),this.validationAttribute(this.element,e),this.list.setAttribute("role","listbox"),t.attributes(this.list,{role:"listbox","aria-label":"listbox","aria-multiselectable":"Multiple"===this.selectionSettings.mode?"true":"false"}),this.updateSelectionSettings()},o.prototype.updateSelectionSettings=function(){if(this.selectionSettings.showCheckbox&&this.selectionSettings.showSelectAll&&this.liCollections.length){var e=new t.L10n(this.getModuleName(),{selectAllText:"Select All",unSelectAllText:"Unselect All"},this.locale);this.showSelectAll=!0,this.selectAllText=e.getConstant("selectAllText"),this.unSelectAllText=e.getConstant("unSelectAllText"),this.popupWrapper=this.list,this.checkBoxSelectionModule.checkAllParent=null,this.notify("selectAll",{})}},o.prototype.initDraggable=function(){var e=this;this.ulElement&&(this.ulElement.id=this.element.id+"_parent"),this.allowDragAndDrop&&new s.Sortable(this.ulElement,{scope:this.scope,itemClass:"e-list-item",dragStart:this.triggerDragStart.bind(this),drag:this.triggerDrag.bind(this),beforeDrop:this.beforeDragEnd.bind(this),drop:this.dragEnd.bind(this),placeHolder:function(){return e.createElement("span",{className:"e-placeholder"})},helper:function(t){var i=e.list.cloneNode(),s=t.sender.cloneNode(!0);i.appendChild(s);var n=e.getItems()[0];return i.style.width=n.offsetWidth+"px",i.style.height=n.offsetHeight+"px",(e.value&&e.value.length)>1&&e.isSelected(s)&&s.appendChild(e.createElement("span",{className:"e-list-badge",innerHTML:e.value.length+""})),i.style.zIndex=l.getZindexPartial(e.element)+"",i}})},o.prototype.updateActionCompleteData=function(e,t,i){this.jsonData.splice(i,0,t)},o.prototype.initToolbar=function(){var e=this.toolbarSettings.position,i=this.element.getAttribute("data-value");if(this.toolbarSettings.items.length){var s=this.createElement("div",{className:"e-listbox-tool",attrs:{role:"toolbar"}}),l=this.createElement("div",{className:"e-listboxtool-wrapper e-lib e-"+e.toLowerCase()});this.list.parentElement.insertBefore(l,this.list),l.appendChild("Right"===e?this.list:s),l.appendChild("Right"===e?s:this.list),this.createButtons(s),this.element.id||(this.element.id=t.getUniqueID("e-"+this.getModuleName())),this.scope?document.querySelector(this.scope).setAttribute("data-value",this.element.id):this.updateToolBarState()}var n=this.element.getAttribute("data-value");i&&n&&i!==n?(this.tBListBox=t.getComponent(document.getElementById(i),this.getModuleName()),this.tBListBox.updateToolBarState()):n&&(this.tBListBox=t.getComponent(document.getElementById(n),this.getModuleName()),this.tBListBox.updateToolBarState())},o.prototype.createButtons=function(e){var i,s,l,n=this,o=new t.L10n(this.getModuleName(),{moveUp:"Move Up",moveDown:"Move Down",moveTo:"Move To",moveFrom:"Move From",moveAllTo:"Move All To",moveAllFrom:"Move All From"},this.locale);this.toolbarSettings.items.forEach(function(t){l=o.getConstant(t),s=n.createElement("button",{attrs:{type:"button","data-value":t,title:l,"aria-label":l}}),e.appendChild(s),(i=new r.Button({iconCss:"e-icons e-"+t.toLowerCase()},s)).createElement=n.createElement})},o.prototype.validationAttribute=function(t,i){this.inputFormName&&t.setAttribute("name",this.inputFormName),e.prototype.validationAttribute.call(this,t,i),i.required=t.required,t.required=!1},o.prototype.setHeight=function(){(this.toolbarSettings.items.length?this.list.parentElement:this.list).style.height=t.formatUnit(this.height),this.allowFiltering&&this.height.toString().indexOf("%")<0?t.addClass([this.list],"e-filter-list"):t.removeClass([this.list],"e-filter-list")},o.prototype.setCssClass=function(){var e=this.toolbarSettings.items.length?this.list.parentElement:this.list;this.cssClass&&t.addClass([e],this.cssClass.replace(/\s+/g," ").trim().split(" ")),this.enableRtl&&t.addClass([this.list],"e-rtl")},o.prototype.setEnable=function(){var e=this.toolbarSettings.items.length?this.list.parentElement:this.list;this.enabled?t.removeClass([e],s.cssClass.disabled):t.addClass([e],s.cssClass.disabled)},o.prototype.showSpinner=function(){this.spinner||(this.spinner=this.createElement("div",{className:"e-listbox-wrapper"})),this.spinner.style.height=t.formatUnit(this.height),this.element.parentElement.insertBefore(this.spinner,this.element.nextSibling),l.createSpinner({target:this.spinner},this.createElement),l.showSpinner(this.spinner)},o.prototype.hideSpinner=function(){this.spinner.querySelector(".e-spinner-pane")&&l.hideSpinner(this.spinner),this.spinner.parentElement&&t.detach(this.spinner)},o.prototype.onInput=function(){this.isDataSourceUpdate=!1,this.keyDownStatus?this.isValidKey=!0:this.isValidKey=!1,this.keyDownStatus=!1,this.refreshClearIcon()},o.prototype.clearText=function(){this.filterInput.value="",this.refreshClearIcon();var e=document.createEvent("KeyboardEvent");this.isValidKey=!0,this.KeyUp(e)},o.prototype.refreshClearIcon=function(){this.filterInput.parentElement.querySelector("."+we.clearIcon)&&(this.filterInput.parentElement.querySelector("."+we.clearIcon).style.visibility=""===this.filterInput.value?"hidden":"visible")},o.prototype.onActionComplete=function(i,s,l){var n,o,r;if(this.allowFiltering&&this.list.getElementsByClassName("e-filter-parent")[0]&&(n=this.list.getElementsByClassName("e-filter-parent")[0].cloneNode(!0)),0===s.length){var a=i.childNodes[0];a&&i.removeChild(a)}if(this.allowFiltering&&(o=this.list.getElementsByClassName("e-input-filter")[0])&&(r=o.selectionStart),e.prototype.onActionComplete.call(this,i,s,l),this.allowFiltering&&!t.isNullOrUndefined(n)){this.list.insertBefore(n,this.list.firstElementChild),this.filterParent=this.list.getElementsByClassName("e-filter-parent")[0],this.filterWireEvents(n);var h=n.querySelector(".e-input-filter");h&&(h.addEventListener("focus",function(){n.childNodes[0].classList.contains("e-input-focus")||n.childNodes[0].classList.add("e-input-focus")}),h.addEventListener("blur",function(){n.childNodes[0].classList.contains("e-input-focus")&&n.childNodes[0].classList.remove("e-input-focus")}))}if(this.initWrapper(),this.setSelection(),this.initDraggable(),this.mainList=this.ulElement,this.initLoad?(this.jsonData=[],t.extend(this.jsonData,s,[]),this.initToolbarAndStyles(),this.wireEvents(),this.showCheckbox&&this.setCheckboxPosition(),this.allowFiltering&&this.setFiltering()):(this.isDataSourceUpdate&&(this.jsonData=[],t.extend(this.jsonData,s,[]),this.isDataSourceUpdate=!1),this.allowFiltering&&((o=this.list.getElementsByClassName("e-input-filter")[0]).selectionStart=r,o.selectionEnd=r,o.focus())),this.toolbarSettings.items.length&&this.scope&&this.scope.indexOf("#")>-1&&!t.isNullOrUndefined(l)){var p=this.scope.replace("#","");t.getComponent(document.getElementById(p),this.getModuleName()).initToolbar()}this.initLoad=!1},o.prototype.initToolbarAndStyles=function(){this.initToolbar(),this.setCssClass(),this.setEnable(),this.setHeight()},o.prototype.triggerDragStart=function(e){var i,s=this;e=t.extend(this.getDragArgs(e),{dragSelected:!0}),t.Browser.isIos&&(this.list.style.overflow="hidden"),this.trigger("dragStart",e,function(e){s.allowDragAll=e.dragSelected,s.allowDragAll||(i=s.ulElement.getElementsByClassName("e-list-badge")[0])&&t.detach(i)})},o.prototype.triggerDrag=function(e){var t,i,s=this,l=10;if(this.itemTemplate&&e.target)if(e.target&&e.target.closest(".e-list-item"))l=e.target.closest(".e-list-item").scrollHeight;else{var n=e.element.querySelector(".e-list-item");n&&(l=n.scrollHeight)}var o,r=e.event;this.stopTimer(),e.target&&(e.target.classList.contains("e-listbox-wrapper")||e.target.classList.contains("e-list-item")||e.target.classList.contains("e-filter-parent")||e.target.classList.contains("e-input-group")||e.target.closest(".e-list-item"))&&(o=e.target.classList.contains("e-list-item")||e.target.classList.contains("e-filter-parent")||e.target.classList.contains("e-input-group")||e.target.closest(".e-list-item")?e.target.closest(".e-listbox-wrapper"):e.target,(i=(t=this.allowFiltering?o.querySelector(".e-list-parent"):o).getBoundingClientRect()).y+t.offsetHeight-(r.clientY+36)<1?this.timer=window.setInterval(function(){s.setScrollDown(t,l,!0)},70):r.clientY-36-i.y<1&&(this.timer=window.setInterval(function(){s.setScrollDown(t,l,!1)},70))),null!==e.target&&this.trigger("drag",this.getDragArgs(e))},o.prototype.setScrollDown=function(e,t,i){e.scrollTop=i?e.scrollTop+t:e.scrollTop-t},o.prototype.stopTimer=function(){window.clearInterval(this.timer)},o.prototype.beforeDragEnd=function(e){this.stopTimer();var i=[];this.dragValue=this.getFormattedValue(e.droppedElement.getAttribute("data-value")),this.value.indexOf(this.dragValue)>-1?e.items=this.getDataByValues(this.value):e.items=this.getDataByValues([this.dragValue]),t.extend(i,e.items),this.trigger("beforeDrop",e),e.items!==i&&(this.customDraggedItem=e.items)},o.prototype.dragEnd=function(e){var i,s,l,n,o,r,a=this,h=this.getFormattedValue(e.droppedElement.getAttribute("data-value")),p=this.getComponent(e.droppedElement),u=this.getDragArgs({target:e.droppedElement},!0),d={previousData:this.dataSource},c={previousData:p.dataSource},m=t.extend({},u,{target:e.target,source:{previousData:this.dataSource},previousIndex:e.previousIndex,currentIndex:e.currentIndex});if(p!==this){L=t.extend(d,{currentData:this.listData});m=t.extend(m,{source:L,destination:c})}t.Browser.isIos&&(this.list.style.overflow="");var f=this.getComponent(e.target);if(f&&0===f.listData.length){var v=f.ulElement.childNodes[0];v&&f.ulElement.removeChild(v)}if(p===this){var g=this.ulElement;i=[].slice.call(this.listData),s=[].slice.call(this.liCollections),l=[].slice.call(this.jsonData),r=[].slice.call(this.sortedData);var y=e.currentIndex,C=e.currentIndex=this.getCurIdx(this,e.currentIndex),b=i.indexOf(this.getDataByValue(h)),E=l.indexOf(this.getDataByValue(h)),S=r.indexOf(this.getDataByValue(h));i.splice(C,0,i.splice(b,1)[0]),r.splice(y,0,r.splice(S,1)[0]),l.splice(C,0,l.splice(E,1)[0]),s.splice(C,0,s.splice(b,1)[0]),this.allowDragAll&&(o=this.value&&Array.prototype.indexOf.call(this.value,h)>-1?this.value:[h],t.isNullOrUndefined(this.customDraggedItem)||(o=[],this.customDraggedItem.forEach(function(e){o.push(t.getValue(a.fields.value,e))})),o.forEach(function(e){if(e!==h){var t=i.indexOf(a.getDataByValue(e)),n=l.indexOf(a.getDataByValue(e)),o=r.indexOf(a.getDataByValue(e));t>C&&C++,l.splice(C,0,l.splice(n,1)[0]),i.splice(C,0,i.splice(t,1)[0]),r.splice(y,0,r.splice(o,1)[0]),s.splice(C,0,s.splice(t,1)[0]),g.insertBefore(a.getItems()[a.getIndexByValue(e)],g.getElementsByClassName("e-placeholder")[0])}})),this.listData=i,this.jsonData=l,this.sortedData=r,this.liCollections=s}else{var x,I=[].slice.call(this.liCollections),w=e.currentIndex=this.getCurIdx(p,e.currentIndex),O=p.ulElement;i=[].slice.call(p.listData),s=[].slice.call(p.liCollections),l=[].slice.call(p.jsonData),r=[].slice.call(p.sortedData),o=this.value&&Array.prototype.indexOf.call(this.value,h)>-1&&this.allowDragAll?this.value:[h],t.isNullOrUndefined(this.customDraggedItem)||(o=[],this.customDraggedItem.forEach(function(e){o.push(t.getValue(a.fields.value,e))}));var A=[].slice.call(this.listData),k=[].slice.call(this.sortedData);if(o.forEach(function(t,o){n=a.getDataByValue(t);var p=a.listData.indexOf(n),u=a.jsonData.indexOf(n),d=a.sortedData.indexOf(n);A.splice(p,1),a.jsonData.splice(u,1),k.splice(d,1),a.listData=A,a.sortedData=k;var c=t===h?e.currentIndex:w;if(i.splice(c,0,n),l.splice(c,0,n),r.splice(c,0,n),s.splice(c,0,I.splice(p,1)[0]),t)x=a.getItems()[a.getIndexByValue(t)];else for(var m=a.getItems(),f=0;f<m.length;f++)if(null===m[f].getAttribute("data-value")&&m[f].classList.contains("e-list-item")){x=m[f];break}x||(x=e.helper),a.removeSelected(a,t===h?[e.droppedElement]:[x]),O.insertBefore(x,O.getElementsByClassName("e-placeholder")[0]),w++}),this.fields.groupBy){N=this.renderItems(this.listData,this.fields);this.updateListItems(N,this.ulElement),this.setSelection()}if("None"!==p.sortOrder||this.selectionSettings.showCheckbox!==p.selectionSettings.showCheckbox||p.fields.groupBy||p.itemTemplate||this.itemTemplate){var D=t.getComponent(O,"sortable"),N=p.renderItems(i,p.fields);p.updateListItems(N,O),this.setSelection(),D.placeHolderElement&&O.appendChild(D.placeHolderElement),O.appendChild(e.helper),p.setSelection()}this.liCollections=I,p.liCollections=s,p.jsonData=t.extend([],[],l,!1),p.listData=t.extend([],[],i,!1),p.sortedData=t.extend([],[],r,!1),0===this.listData.length&&this.l10nUpdate()}if(this===p){var L=t.extend(d,{currentData:i});m=t.extend(m,{source:L})}else{var T=t.extend(c,{currentData:i});m=t.extend(m,{destination:T})}t.isNullOrUndefined(this.customDraggedItem)||(m.items=this.customDraggedItem),this.trigger("drop",m);var B=m.elements;if(B.length)for(var P=0;P<B.length;P++)B[P].classList.remove("e-grabbed")},o.prototype.updateListItems=function(e,t){for(t.innerHTML="";0<e.childNodes.length;)t.appendChild(e.childNodes[0])},o.prototype.removeSelected=function(e,i){e.selectionSettings.showCheckbox?i.forEach(function(e){e.getElementsByClassName("e-frame")[0].classList.remove("e-check")}):t.removeClass(i,s.cssClass.selected)},o.prototype.getCurIdx=function(e,t){return e.fields.groupBy&&(t-=[].slice.call(e.ulElement.children).slice(0,t).filter(function(e){return e.classList.contains(s.cssClass.group)}).length),t},o.prototype.getComponent=function(e){var i,s="EJS-LISTBOX"===this.element.tagName?t.closest(e,".e-listbox"):t.closest(e,".e-listbox-wrapper")&&t.closest(e,".e-listbox-wrapper").querySelector(".e-listbox");return s&&(i=t.getComponent(s,this.getModuleName())),i},o.prototype.setEnabled=function(){this.element.setAttribute("aria-disabled",this.enabled?"false":"true")},o.prototype.listOption=function(i,s){return this.listCurrentOptions=e.prototype.listOption.call(this,i,s),this.listCurrentOptions=t.extend({},this.listCurrentOptions,{itemCreated:this.triggerBeforeItemRender.bind(this)},!0),this.notify("listoption",{module:"CheckBoxSelection"}),this.listCurrentOptions},o.prototype.triggerBeforeItemRender=function(e){e.item.setAttribute("tabindex","-1"),this.trigger("beforeItemRender",{element:e.item,item:e.curData})},o.prototype.requiredModules=function(){var e=[];return this.selectionSettings.showCheckbox&&e.push({member:"CheckBoxSelection",args:[this]}),e},o.prototype.enableItems=function(e,i,l){var n=this;void 0===i&&(i=!0);var o;e.forEach(function(e){var r=e;(o=n.findListElement(n.list,"li","data-value",l?r:n.getValueByText(r)))&&(i?(t.removeClass([o],s.cssClass.disabled),o.removeAttribute("aria-disabled")):(t.addClass([o],s.cssClass.disabled),o.setAttribute("aria-disabled","true")))})},o.prototype.selectItems=function(e,i,l){void 0===i&&(i=!0),i&&!this.selectionSettings.showCheckbox&&"Single"===this.selectionSettings.mode&&this.getSelectedItems().forEach(function(e){e.classList.remove("e-active"),e.removeAttribute("aria-selected"),t.removeClass([e],s.cssClass.selected)}),this.setSelection(e,i,!l),this.updateSelectedOptions();for(var n=[],o=0;o<e.length;o++)for(var r=this.list.querySelectorAll('[aria-selected="true"]'),a=0;a<r.length;a++)e[o]===this.getFormattedValue(r[a].getAttribute("data-value"))&&n.push(r[a]);this.triggerChange(n,null)},o.prototype.selectAll=function(e){void 0===e&&(e=!0),this.selectAllItems(e)},o.prototype.addItems=function(t,i){e.prototype.addItem.call(this,t,i)},o.prototype.removeItems=function(e,t){this.removeItem(e,t)},o.prototype.removeItem=function(e,i){var s=[],l=this.list.querySelectorAll("."+U.li);if(e){e=e instanceof Array?e:[e];var n=this.fields,o=void 0,r=[],a=void 0;t.extend(r,[],this.jsonData);for(var h=[],p=[],u=0;u<e.length;u++){o=e[u]instanceof Object?t.getValue(n.value,e[u]):e[u].toString();for(var d=0,c=r.length;d<c;d++)if((r[d]instanceof Object?t.getValue(n.value,r[d]):r[d].toString())===o){var m=(a=this.getIndexByValue(o))===d?a:d;s.push(l[m]),h.push(m),p.push(m)}}for(f=h.length-1;f>=0;f--)this.listData.splice(h[f],1);for(f=h.length-1;f>=0;f--)this.jsonData.splice(h[f],1);for(var f=p.length-1;f>=0;f--)this.updateLiCollection(p[f])}else i=i||0,s.push(l[i]),this.listData.splice(i,1),this.jsonData.splice(i,1),this.updateLiCollection(i);for(d=0;d<s.length;d++)this.ulElement.removeChild(s[d]);0===this.listData.length&&this.l10nUpdate(),this.value=[],this.updateToolBarState()},o.prototype.getDataByValues=function(e){for(var t=[],i=0;i<e.length;i++)t.push(this.getDataByValue(e[i]));return t},o.prototype.moveUp=function(e){var t=e?this.getElemByValue(e):this.getSelectedItems();this.moveUpDown(!0,!1,t)},o.prototype.moveDown=function(e){var t=e?this.getElemByValue(e):this.getSelectedItems();this.moveUpDown(!1,!1,t)},o.prototype.moveTop=function(e){var t=e?this.getElemByValue(e):this.getSelectedItems();this.moveUpDown(null,!1,t,!0)},o.prototype.moveBottom=function(e){var t=e?this.getElemByValue(e):this.getSelectedItems();this.moveUpDown(!0,!1,t,!1,!0)},o.prototype.moveTo=function(e,i,s){var l=e?this.getElemByValue(e):this.getSelectedItems(),n=s?t.getComponent(s,a):this.getScopedListBox();this.moveData(this,n,!1,l,i)},o.prototype.moveAllTo=function(e,i){if(this.listData.length>0){var s=e?t.getComponent(e,a):this.getScopedListBox();this.moveAllData(this,s,!1,i)}},o.prototype.getDataList=function(){return this.jsonData},o.prototype.getSortedList=function(){var e,t;if(e=t=this.sortedData,this.fields.groupBy){e=[];for(var i=0;i<t.length;i++)t[i].isHeader||e.push(t[i])}return e},o.prototype.getElemByValue=function(e){for(var t=[],i=0;i<e.length;i++)t.push(this.ulElement.querySelector('[data-value ="'+e[i]+'"]'));return t},o.prototype.updateLiCollection=function(e){var t=[].slice.call(this.liCollections);t.splice(e,1),this.liCollections=t},o.prototype.selectAllItems=function(e,t){var i=this;if([].slice.call(this.getItems()).forEach(function(t){if(!t.classList.contains(s.cssClass.disabled))if(i.selectionSettings.showCheckbox){var l=t.getElementsByClassName("e-check")[0];(!l&&e||l&&!e)&&(i.notify("updatelist",{li:t,module:"listbox"}),i.maximumSelectionLength>=i.list.querySelectorAll(".e-list-item span.e-check").length&&i.checkMaxSelection())}else e?t.classList.add(s.cssClass.selected):t.classList.remove(s.cssClass.selected)}),this.updateSelectedOptions(),this.allowFiltering&&this.selectionSettings.showCheckbox){var l=this.list.getElementsByTagName("li"),n=0;if(e){var o=this;for(n=0;n<l.length;n++)!function(){var e=o.getFormattedValue(l[n].getAttribute("data-value"));o.value.some(function(t){return t===e})||o.value.push(o.getFormattedValue(l[n].getAttribute("data-value")))}()}else{var r=this;for(n=0;n<l.length;n++)!function(){var e=r.getFormattedValue(l[n].getAttribute("data-value"));r.value=r.value.filter(function(t){return t!==e})}()}document.querySelectorAll("ul").length<2&&this.updateMainList()}this.triggerChange(this.getSelectedItems(),t)},o.prototype.updateMainList=function(){var e=this.mainList.querySelectorAll(".e-list-item"),t=this.ulElement.querySelectorAll(".e-list-item"),i=e.length,s=t.length;if(this.selectionSettings.showCheckbox||document.querySelectorAll("ul").length>1||i!==s){var l=0,n=0,o=0;for(l;l<i;){if(this.value)for(n;n<this.value.length;n++)e[l].getAttribute("data-value")===this.value[n]&&o++;!o&&this.selectionSettings.showCheckbox&&e[l].getElementsByClassName("e-frame")[0].classList.remove("e-check"),document.querySelectorAll("ul").length>1&&o&&i!==s?(this.mainList.removeChild(this.mainList.getElementsByTagName("li")[l]),l=0):l++,o=0,n=0}}},o.prototype.wireEvents=function(){var e=t.closest(this.element,"form"),i="EJS-LISTBOX"===this.element.tagName?this.element:this.list;t.EventHandler.add(this.list,"click",this.clickHandler,this),t.EventHandler.add(i,"keydown",this.keyDownHandler,this),t.EventHandler.add(i,"focusout",this.focusOutHandler,this),this.wireToolbarEvent(),this.selectionSettings.showCheckbox&&t.EventHandler.remove(document,"mousedown",this.checkBoxSelectionModule.onDocumentClick),(this.fields.groupBy||this.element.querySelector("select>optgroup"))&&t.EventHandler.remove(this.list,"scroll",this.setFloatingHeader),e&&t.EventHandler.add(e,"reset",this.formResetHandler,this)},o.prototype.wireToolbarEvent=function(){this.toolbarSettings.items.length&&t.EventHandler.add(this.getToolElem(),"click",this.toolbarClickHandler,this)},o.prototype.unwireEvents=function(){var e=t.closest(this.element,"form"),i="EJS-LISTBOX"===this.element.tagName?this.element:this.list;t.EventHandler.remove(this.list,"click",this.clickHandler),t.EventHandler.remove(i,"keydown",this.keyDownHandler),t.EventHandler.remove(i,"focusout",this.focusOutHandler),this.allowFiltering&&this.clearFilterIconElem&&t.EventHandler.remove(this.clearFilterIconElem,"click",this.clearText),this.toolbarSettings.items.length&&t.EventHandler.remove(this.getToolElem(),"click",this.toolbarClickHandler),e&&t.EventHandler.remove(e,"reset",this.formResetHandler)},o.prototype.clickHandler=function(e){this.selectHandler(e)},o.prototype.checkSelectAll=function(){for(var e=0,t=this.list.querySelectorAll("li."+U.li),i=0;i<t.length;i++)t[i].classList.contains("e-disabled")||e++;var s=this.getSelectedItems().length;this.showSelectAll&&e&&this.notify("checkSelectAll",{module:"CheckBoxSelection",value:e===s?"check":0===s?"uncheck":"indeterminate"})},o.prototype.getQuery=function(e){var t=e?e.clone():this.query?this.query.clone():new i.Query;if(this.allowFiltering){var s=""===this.inputString?"contains":this.filterType,l=this.typeOfData(this.dataSource).typeof;if(null===l&&(l=this.typeOfData(this.jsonData).typeof),(this.dataSource instanceof i.DataManager||"string"!==l)&&"number"!==l){var n=this.fields.text?this.fields.text:"";t.where(n,s,this.inputString,this.ignoreCase,this.ignoreAccent)}else t.where("",s,this.inputString,this.ignoreCase,this.ignoreAccent)}else t=e||(this.query?this.query:new i.Query);return t},o.prototype.setFiltering=function(){var e;if(this.initLoad||t.isNullOrUndefined(this.filterParent))return this.filterParent=this.createElement("span",{className:we.filterParent}),this.filterInput=this.createElement("input",{attrs:{type:"text"},className:we.filterInput}),this.element.parentNode.insertBefore(this.filterInput,this.element),e=n.Input.createInput({element:this.filterInput,buttons:[we.filterBarClearIcon],properties:{placeholder:this.filterBarPlaceholder}},this.createElement),t.append([e.container],this.filterParent),t.prepend([this.filterParent],this.list),t.attributes(this.filterInput,{"aria-disabled":"false","aria-label":"search list item",autocomplete:"off",autocorrect:"off",autocapitalize:"off",spellcheck:"false",role:"textbox"}),this.height.toString().indexOf("%")<0&&t.addClass([this.list],"e-filter-list"),this.inputString=this.filterInput.value,this.filterWireEvents(),e},o.prototype.filterWireEvents=function(e){e&&(this.filterInput=e.querySelector(".e-input-filter")),this.clearFilterIconElem=this.filterInput.parentElement.querySelector("."+we.clearIcon),this.clearFilterIconElem&&(t.EventHandler.add(this.clearFilterIconElem,"click",this.clearText,this),e||(this.clearFilterIconElem.style.visibility="hidden")),t.EventHandler.add(this.filterInput,"input",this.onInput,this),t.EventHandler.add(this.filterInput,"keyup",this.KeyUp,this),t.EventHandler.add(this.filterInput,"keydown",this.onKeyDown,this)},o.prototype.selectHandler=function(e,i){var l,n=!0,o=t.closest(e.target,".e-list-item"),r=[o];if(o&&o.parentElement){if(l=[].slice.call(o.parentElement.children).indexOf(o),this.selectionSettings.showCheckbox?n=!o.getElementsByClassName("e-frame")[0].classList.contains("e-check"):(e.ctrlKey||e.metaKey||t.Browser.isDevice)&&this.isSelected(o)?(o.classList.remove(s.cssClass.selected),o.removeAttribute("aria-selected"),n=!1):"Multiple"===this.selectionSettings.mode&&(e.ctrlKey||e.metaKey||t.Browser.isDevice)||(this.getSelectedItems().forEach(function(e){e.removeAttribute("aria-selected")}),t.removeClass(this.getSelectedItems(),s.cssClass.selected)),e.shiftKey&&!this.selectionSettings.showCheckbox&&"Single"!==this.selectionSettings.mode?r=[].slice.call(o.parentElement.children).slice(Math.min(l,this.prevSelIdx),Math.max(l,this.prevSelIdx)+1).filter(function(e){return e.classList.contains("e-list-item")}):this.prevSelIdx=[].slice.call(o.parentElement.children).indexOf(o),n?(this.selectionSettings.showCheckbox||t.addClass(r,s.cssClass.selected),r.forEach(function(e){e.setAttribute("aria-selected","true")}),this.list.setAttribute("aria-activedescendant",o.id)):r.forEach(function(e){e.setAttribute("aria-selected","false")}),i||!(this.maximumSelectionLength>(this.value&&this.value.length))&&n||!(this.maximumSelectionLength>=(this.value&&this.value.length))&&n||this.maximumSelectionLength<(this.value&&this.value.length)||this.notify("updatelist",{li:o,e:e,module:"listbox"}),this.allowFiltering&&!i){var a=this.getFormattedValue(o.getAttribute("data-value"));if(n){var h=[];t.extend(h,this.value),h.push(a),this.value=h}else this.value=this.value.filter(function(e){return e!==a});document.querySelectorAll("ul").length<2&&this.updateMainList()}this.updateSelectedOptions(),this.triggerChange(this.getSelectedItems(),e),this.list&&this.checkMaxSelection()}},o.prototype.triggerChange=function(e,t){this.trigger("change",{elements:e,items:this.getDataByElements(e),value:this.value,event:t})},o.prototype.getDataByElems=function(e){for(var t=[],i=0,s=e.length;i<s;i++)t.push(this.getDataByValue(this.getFormattedValue(e[i].getAttribute("data-value"))));return t},o.prototype.getDataByElements=function(e){var i,s=[],l=0;if(!t.isNullOrUndefined(this.listData)){var n=this.typeOfData(this.listData).typeof;if("string"===n||"number"===n||"boolean"===n)for(var o=0,r=this.listData;o<r.length;o++){for(var a=r[o],h=l,p=e.length;h<p;h++)if(i=this.getFormattedValue(e[h].getAttribute("data-value")),!t.isNullOrUndefined(a)&&a===i){l=h,s.push(a);break}if(e.length===s.length)break}else for(var u=0,d=this.listData;u<d.length;u++){for(var a=d[u],h=l,p=e.length;h<p;h++)if(i=this.getFormattedValue(e[h].getAttribute("data-value")),!t.isNullOrUndefined(a)&&t.getValue(this.fields.value?this.fields.value:"value",a)===i){l=h,s.push(a);break}if(e.length===s.length)break}return s}return null},o.prototype.checkMaxSelection=function(){var e=this.list.querySelectorAll(".e-list-item span.e-check").length;if(this.selectionSettings.showCheckbox){var t=0,i=this.list.getElementsByClassName("e-list-item");for(t;t<i.length;t++)i[t].querySelector(".e-frame.e-check")||(e===this.maximumSelectionLength?i[t].classList.add("e-disable"):i[t].classList.contains("e-disable")&&i[t].classList.remove("e-disable"))}},o.prototype.toolbarClickHandler=function(e){var i=t.closest(e.target,"button");if(i){if(this.toolbarAction=i.getAttribute("data-value"),i.disabled)return;switch(this.toolbarAction){case"moveUp":this.moveUpDown(!0);break;case"moveDown":this.moveUpDown();break;case"moveTo":this.moveItemTo();break;case"moveFrom":this.moveItemFrom();break;case"moveAllTo":this.moveAllItemTo();break;case"moveAllFrom":this.moveAllItemFrom();break;default:this.trigger("actionBegin",{cancel:!1,items:this.getDataByElems(this.getSelectedItems()),eventName:this.toolbarAction})}}},o.prototype.moveUpDown=function(e,t,i,l,n){var o=this,r=this.getSelectedItems();if(i&&(r=i),!(e&&this.isSelected(this.ulElement.firstElementChild)||!e&&this.isSelected(this.ulElement.lastElementChild))||i){var a=this.getDataByElems(r),h={cancel:!1,items:a,eventName:this.toolbarAction};this.trigger("actionBegin",h),h.cancel||((e?r:r.reverse()).forEach(function(t){var i=Array.prototype.indexOf.call(o.ulElement.querySelectorAll(".e-list-item"),t),r=Array.prototype.indexOf.call(o.ulElement.children,t);l?(s.moveTo(o.ulElement,o.ulElement,[r],0),o.changeData(r,0,i,t)):n?(s.moveTo(o.ulElement,o.ulElement,[r],o.ulElement.querySelectorAll(".e-list-item").length),o.changeData(r,o.ulElement.querySelectorAll(".e-list-item").length,i,t)):(s.moveTo(o.ulElement,o.ulElement,[r],e?r-1:r+2),o.changeData(r,e?r-1:r+1,e?i-1:i+1,t))}),this.trigger("actionComplete",{items:a,eventName:this.toolbarAction}),r[0].focus(),!t&&this.toolbarSettings.items.length&&this.getToolElem().querySelector("[data-value="+(e?"moveUp":"moveDown")+"]").focus(),this.updateToolBarState())}},o.prototype.moveItemTo=function(){this.moveData(this,this.getScopedListBox())},o.prototype.moveItemFrom=function(){this.moveData(this.getScopedListBox(),this)},o.prototype.moveData=function(e,i,l,n,o){var r=[],a=[],h=[],p=[],u=[].slice.call(e.listData),d=[].slice.call(i.listData),c=[].slice.call(e.sortedData),m=[].slice.call(i.sortedData),f=[].slice.call(e.liCollections),v=[],g=[].slice.call(i.liCollections),y=[],C=[],b=e.getSelectedItems();n&&(b=n);var E="None"!==i.sortOrder||i.selectionSettings.showCheckbox!==e.selectionSettings.showCheckbox||i.fields.groupBy||i.itemTemplate||e.itemTemplate;if(e.value=[],b.length){this.removeSelected(e,b),b.forEach(function(t){r.push(Array.prototype.indexOf.call(e.ulElement.children,t)),v.push(Array.prototype.indexOf.call(e.ulElement.querySelectorAll(".e-list-item"),t)),a.push(Array.prototype.indexOf.call(e.listData,e.getDataByElems([t])[0])),p.push(Array.prototype.indexOf.call(e.sortedData,e.getDataByElems([t])[0])),h.push(Array.prototype.indexOf.call(e.jsonData,e.getDataByElems([t])[0]))}),"None"!==this.sortOrder?p.forEach(function(t){y.push(e.sortedData[t])}):h.forEach(function(t){y.push(e.jsonData[t])});var S={cancel:!1,items:y,eventName:this.toolbarAction};if(e.trigger("actionBegin",S),S.cancel)return;var x=[];if(v.sort(function(e,t){return e-t}).reverse().forEach(function(e){x.push(f.splice(e,1)[0])}),e.liCollections=f,o){var I=g.splice(0,o);i.liCollections=I.concat(x.reverse()).concat(g)}else i.liCollections=g.concat(x.reverse());if(0===i.listData.length){var w=i.ulElement.childNodes[0];w&&i.ulElement.removeChild(w)}if(a.sort(function(e,t){return t-e}).forEach(function(e){u.splice(e,1)[0]}),p.sort(function(e,t){return t-e}).forEach(function(e){c.splice(e,1)[0]}),h.slice().reverse().forEach(function(t){C.push(e.jsonData.splice(t,1)[0])}),E)if(e.fields.groupBy){k=e.renderItems(u,e.fields);e.updateListItems(k,e.ulElement)}else b.forEach(function(e){t.detach(e)});else s.moveTo(e.ulElement,i.ulElement,r,o),e.trigger("actionComplete",{items:y,eventName:this.toolbarAction});i.mainList.childElementCount!==i.jsonData.length&&(i.mainList=i.ulElement);var O=[].slice.call(i.jsonData);m=[].slice.call(i.sortedData),this.selectNextList(b,v,a,e),l&&this.list.focus(),e.listData=u,e.sortedData=c,o=o||d.length;for(var A=y.length-1;A>=0;A--)d.splice(o,0,y[A]),O.splice(o,0,y[A]),m.splice(o,0,y[A]);if(i.listData=d,i.jsonData=O,i.sortedData=m,E){var k=i.renderItems(d,i.fields);i.updateListItems(k,i.ulElement),i.setSelection(),e.trigger("actionComplete",{items:y,eventName:this.toolbarAction})}e.updateSelectedOptions(),0===e.listData.length&&e.l10nUpdate()}1===e.value.length&&e.getSelectedItems().length&&(e.value[0]=e.getFormattedValue(e.getSelectedItems()[0].getAttribute("data-value")))},o.prototype.selectNextList=function(e,t,i,l){var n,o,r=l.ulElement.querySelectorAll(".e-list-item").length,a=-1;1===e.length&&r&&!l.selectionSettings.showCheckbox&&(o=r<=t[0]?r-1:t[0],n=l.ulElement.querySelectorAll(".e-list-item")[o],(a=l.getValidIndex(n,o,r===i[0]?38:40))>-1&&l.ulElement.querySelectorAll(".e-list-item")[a].classList.add(s.cssClass.selected))},o.prototype.moveAllItemTo=function(){this.moveAllData(this,this.getScopedListBox())},o.prototype.moveAllItemFrom=function(){this.moveAllData(this.getScopedListBox(),this)},o.prototype.moveAllData=function(e,t,i,l){var n=[].slice.call(t.listData),o=[].slice.call(t.jsonData),r="None"!==t.sortOrder||t.selectionSettings.showCheckbox!==e.selectionSettings.showCheckbox||t.fields.groupBy||t.itemTemplate||e.itemTemplate;this.removeSelected(e,e.getSelectedItems());var a=[].slice.call(e.listData),h={cancel:!1,items:a,eventName:this.toolbarAction};if(e.trigger("actionBegin",h),!h.cancel){if(0===t.listData.length&&(p=t.ulElement.childNodes[0])&&t.ulElement.removeChild(p),r){var p=e.ulElement.childNodes[0];p&&e.ulElement.removeChild(p)}s.moveTo(e.ulElement,t.ulElement,Array.apply(null,{length:e.ulElement.childElementCount}).map(Number.call,Number),l),this.trigger("actionComplete",{items:a,eventName:this.toolbarAction}),i&&this.list.focus(),l=l||n.length;for(f=0;f<e.listData.length;f++)n.splice(l+f,0,e.listData[f]);for(f=0;f<e.jsonData.length;f++)o.splice(l+f,0,e.jsonData[f]);var u=[].slice.call(e.liCollections),d=[].slice.call(t.liCollections);if(e.liCollections=[],l){var c=d.splice(0,l);t.liCollections=c.concat(u).concat(d)}else t.liCollections=d.concat(u);e.value=[];for(var m=(n=n.filter(function(e){return!0!==e.isHeader})).filter(function(e){return-1===t.jsonData.indexOf(e)}),f=0;f<m.length;f++)t.jsonData.splice(l+f,0,m[f]);if(t.listData=n,e.listData.length===e.jsonData.length)e.listData=e.sortedData=e.jsonData=[];else if(e.allowFiltering){for(f=0;f<e.listData.length;f++)for(var v=0;v<e.jsonData.length;v++)e.listData[f]===e.jsonData[v]&&e.jsonData.splice(v,1);e.listData=e.sortedData=[]}if(r){var g=t.renderItems(n,t.fields);t.updateListItems(g,t.ulElement),this.trigger("actionComplete",{items:a,eventName:this.toolbarAction})}else t.sortedData=n;e.updateSelectedOptions(),0===e.listData.length&&e.l10nUpdate()}},o.prototype.changeData=function(e,t,i,s){var l=[].slice.call(this.listData),n=[].slice.call(this.jsonData),o=[].slice.call(this.sortedData),r=Array.prototype.indexOf.call(this.jsonData,this.getDataByElems([s])[0]),a=Array.prototype.indexOf.call(this.sortedData,this.getDataByElems([s])[0]),h=[].slice.call(this.liCollections);l.splice(t,0,l.splice(e,1)[0]),n.splice(i,0,n.splice(r,1)[0]),o.splice(t,0,o.splice(a,1)[0]),h.splice(t,0,h.splice(e,1)[0]),this.listData=l,this.jsonData=n,this.liCollections=h,this.sortedData=o},o.prototype.getSelectedItems=function(){var e=[];return this.selectionSettings.showCheckbox?[].slice.call(this.ulElement.getElementsByClassName("e-check")).forEach(function(i){e.push(t.closest(i,".e-list-item"))}):e=[].slice.call(this.ulElement.getElementsByClassName(s.cssClass.selected)),e},o.prototype.getScopedListBox=function(){var e,i=this;return this.scope&&[].slice.call(document.querySelectorAll(this.scope)).forEach(function(s){t.getComponent(s,i.getModuleName())&&(e=t.getComponent(s,i.getModuleName()))}),e},o.prototype.getGrabbedItems=function(e){for(var t=!1,i=0;i<this.value.length;i++)if(this.value[i]===this.getFormattedValue(e.target.getAttribute("data-value"))){t=!0;break}if(t)for(i=0;i<this.value.length;i++)for(var s=this.list.querySelectorAll('[aria-selected="true"]'),l=0;l<s.length;l++)this.value[i]===this.getFormattedValue(s[l].getAttribute("data-value"))&&s[l].classList.add("e-grabbed");return this.isAngular?Array.prototype.slice.call(this.element.getElementsByClassName("e-list-parent")[0].querySelectorAll(".e-grabbed")):Array.prototype.slice.call(this.element.nextElementSibling.querySelectorAll(".e-grabbed"))},o.prototype.getDragArgs=function(e,t){var i=this.getGrabbedItems(e);return i.length?t&&i.push(e.target):i=[e.target],{elements:i,items:this.getDataByElems(i)}},o.prototype.onKeyDown=function(e){this.keyDownHandler(e),e.stopPropagation()},o.prototype.keyDownHandler=function(e){if([32,35,36,37,38,39,40,65].indexOf(e.keyCode)>-1&&(!this.allowFiltering||this.allowFiltering&&e.target!==this.filterInput)){if(e.target&&e.target.className.indexOf("e-edit-template")>-1)return;if(e.preventDefault(),32===e.keyCode&&this.ulElement.children.length)this.selectHandler({target:this.ulElement.getElementsByClassName("e-focused")[0],ctrlKey:e.ctrlKey,shiftKey:e.shiftKey});else if(65===e.keyCode&&e.ctrlKey)this.selectAll();else if((38===e.keyCode||40===e.keyCode)&&e.ctrlKey&&e.shiftKey)this.moveUpDown(38===e.keyCode,!0);else if(!this.toolbarSettings.items.length&&!this.tBListBox||39!==e.keyCode&&37!==e.keyCode||!e.ctrlKey)37!==e.keyCode&&39!==e.keyCode&&"KeyA"!==e.code&&this.upDownKeyHandler(e);else{var t=this.tBListBox||this.getScopedListBox();39===e.keyCode?e.shiftKey?this.moveAllData(this,t,!0):this.moveData(this,t,!0):e.shiftKey?this.moveAllData(t,this,!0):this.moveData(t,this,!0)}}else this.allowFiltering&&(40!==e.keyCode&&38!==e.keyCode||this.upDownKeyHandler(e))},o.prototype.upDownKeyHandler=function(e){var i=this.ulElement,l=40===e.keyCode||36===e.keyCode?0:i.childElementCount-1,n=i.getElementsByClassName("e-focused")[0]||i.getElementsByClassName(s.cssClass.selected)[0];if(n){if(35!==e.keyCode&&36!==e.keyCode&&(l=Array.prototype.indexOf.call(i.children,n),40===e.keyCode?l++:l--,l<0||l>i.childElementCount-1))return;t.removeClass([n],"e-focused")}var o=i.children[l];if(o){if(-1===(l=this.getValidIndex(o,l,e.keyCode)))return void t.addClass([n],"e-focused");if(i.children[l].focus(),i.children[l].classList.add("e-focused"),e.ctrlKey&&(this.selectionSettings.showCheckbox||!e.shiftKey||36!==e.keyCode&&35!==e.keyCode)||this.selectHandler({target:i.children[l],ctrlKey:e.ctrlKey,shiftKey:e.shiftKey},!0),this.selectionSettings.showCheckbox&&e.ctrlKey&&e.shiftKey&&(36===e.keyCode||35===e.keyCode))for(var r=Array.prototype.indexOf.call(i.children,n),a="Home"===e.code?0:r,h="Home"===e.code?r:i.children.length-1,p=a;p<=h;p++){var u=i.children[p];this.notify("updatelist",{li:u,e:{target:this.ulElement.getElementsByClassName("e-focused")[0],ctrlKey:e.ctrlKey,shiftKey:e.shiftKey},module:"listbox"})}}},o.prototype.KeyUp=function(e){var s=this;if(this.allowFiltering&&e.ctrlKey&&65===e.keyCode)return void e.preventDefault();var l=String.fromCharCode(e.keyCode).match(/\w/);if(t.isNullOrUndefined(l)||(this.isValidKey=!0),this.isValidKey=8===e.keyCode||46===e.keyCode||this.isValidKey,this.isValidKey&&(this.isValidKey=!1,e.keyCode,this.allowFiltering)){var n={preventDefaultAction:!1,text:this.targetElement(),updateData:function(e,t,i){n.cancel||(s.isFiltered=!0,s.remoteFilterAction=!0,s.dataUpdater(e,t,i))},event:e,cancel:!1};this.trigger("filtering",n,function(e){s.isDataFetched=!1,e.cancel||""!==s.filterInput.value&&s.isFiltered||(e.cancel||s.isCustomFiltering||e.preventDefaultAction||(s.inputString=s.filterInput.value,s.filteringAction(s.jsonData,new i.Query,s.fields)),s.isFiltered||s.isCustomFiltering||e.preventDefaultAction||s.dataUpdater(s.jsonData,new i.Query,s.fields))})}},o.prototype.filter=function(e,t,i){this.isCustomFiltering=!0,this.filteringAction(e,t,i)},o.prototype.filteringAction=function(e,t,i){this.resetList(e,i,t)},o.prototype.targetElement=function(){return this.targetInputElement=this.list.getElementsByClassName("e-input-filter")[0],this.targetInputElement.value},o.prototype.dataUpdater=function(e,t,i){this.isDataFetched=!1;if(""===this.targetElement().trim()){var s=this.mainList.cloneNode?this.mainList.cloneNode(!0):this.mainList;this.remoteCustomValue=!1,this.isAngular&&this.itemTemplate&&(s=this.renderItems(this.listData,i)),this.onActionComplete(s,this.jsonData),this.notify("reOrder",{module:"CheckBoxSelection",enable:this.selectionSettings.showCheckbox,e:this})}else this.resetList(e,i,t)},o.prototype.focusOutHandler=function(){var e=this.list.getElementsByClassName("e-focused")[0];e&&e.classList.remove("e-focused"),this.allowFiltering&&this.refreshClearIcon()},o.prototype.getValidIndex=function(e,t,i){var l=this.ulElement;return(e.classList.contains("e-disabled")||e.classList.contains(s.cssClass.group))&&(40===i||36===i?t++:t--),t<0||t===l.childElementCount?-1:(((e=l.childNodes[t]).classList.contains("e-disabled")||e.classList.contains(s.cssClass.group))&&(t=this.getValidIndex(e,t,i)),t)},o.prototype.updateSelectedOptions=function(){var e=this,i=[],s=[];if(t.extend(s,this.value),this.getSelectedItems().forEach(function(t){t.classList.contains("e-grabbed")||i.push(e.getFormattedValue(t.getAttribute("data-value")))}),this.mainList.childElementCount===this.ulElement.childElementCount)if(this.allowFiltering&&this.selectionSettings.showCheckbox){for(var l=0;l<i.length;l++)s.indexOf(i[l])>-1||s.push(i[l]);this.setProperties({value:s},!0)}else this.setProperties({value:i},!0);this.updateSelectTag(),this.updateToolBarState(),this.tBListBox&&this.tBListBox.updateToolBarState()},o.prototype.clearSelection=function(e){var t=this;if(void 0===e&&(e=this.value),this.selectionSettings.showCheckbox){var i;this.getSelectedItems().forEach(function(s){i=t.getFormattedValue(s.getAttribute("data-value")),e.indexOf(i)<0&&(s.getElementsByClassName("e-check")[0].classList.remove("e-check"),s.removeAttribute("aria-selected"))})}},o.prototype.setSelection=function(e,t,i){var l=this;void 0===e&&(e=this.value),void 0===t&&(t=!0),void 0===i&&(i=!1);var n,o;e&&e.forEach(function(e){var r;"string"==typeof(r=i?l.getValueByText(e):e)?(r=r.split("\\").join("\\\\"),n=l.list.querySelector('[data-value="'+r.replace(/"/g,'\\"')+'"]')):n=l.list.querySelector('[data-value="'+r+'"]'),n&&(o=l.selectionSettings.showCheckbox?n.getElementsByClassName("e-frame")[0].classList.contains("e-check"):n.classList.contains("e-selected"),(!t&&o||t&&!o&&n)&&(l.selectionSettings.showCheckbox?(l.notify("updatelist",{li:n,module:"listbox"}),n.focus()):t?(n.classList.add(s.cssClass.selected),n.setAttribute("aria-selected","true"),n.focus()):(n.classList.remove(s.cssClass.selected),n.removeAttribute("aria-selected"))))}),this.updateSelectTag()},o.prototype.updateSelectTag=function(){var e=this.getSelectTag(),t="";if(e.innerHTML="",this.value){for(var i=0,s=this.value.length;i<s;i++)t+="<option selected>"+this.value[i]+"</option>";e.innerHTML+=t;for(var i=0,s=e.childNodes.length;i<s;i++)e.childNodes[i].setAttribute("value",this.value[i].toString())}this.checkSelectAll()},o.prototype.checkDisabledState=function(e){return 0===e.ulElement.querySelectorAll("."+s.cssClass.li).length},o.prototype.updateToolBarState=function(){var e=this;if(this.toolbarSettings.items.length){var t=this.getScopedListBox(),i=this.list.parentElement.getElementsByClassName("e-listbox-tool")[0];this.toolbarSettings.items.forEach(function(s){var l=i.querySelector('[data-value="'+s+'"]');switch(s){case"moveAllTo":l.disabled=e.checkDisabledState(e);break;case"moveAllFrom":l.disabled=e.checkDisabledState(t);break;case"moveFrom":l.disabled=!t.value||!t.value.length;break;case"moveUp":l.disabled=!(e.value&&e.value.length&&!e.isSelected(e.ulElement.children[0]));break;case"moveDown":l.disabled=!(e.value&&e.value.length&&!e.isSelected(e.ulElement.children[e.ulElement.childElementCount-1]));break;default:l.disabled=!e.value||!e.value.length}})}},o.prototype.setCheckboxPosition=function(){var e=this.list;this.initLoad||"Left"!==this.selectionSettings.checkboxPosition||e.classList.remove("e-right"),"Right"===this.selectionSettings.checkboxPosition&&e.classList.add("e-right")},o.prototype.showCheckbox=function(e){var i=0,s=this.list.lastElementChild.querySelectorAll("li"),l=this.list.lastElementChild.getElementsByClassName("e-list-item").length;if(e){if(this.ulElement=this.renderItems(this.listData,this.fields),this.mainList=this.ulElement,this.list.removeChild(this.list.getElementsByTagName("ul")[0]),this.list.appendChild(this.ulElement),this.selectionSettings.showSelectAll&&!this.list.getElementsByClassName("e-selectall-parent")[0]){var n=new t.L10n(this.getModuleName(),{selectAllText:"Select All",unSelectAllText:"Unselect All"},this.locale);this.showSelectAll=!0,this.selectAllText=n.getConstant("selectAllText"),this.unSelectAllText=n.getConstant("unSelectAllText"),this.popupWrapper=this.list,this.checkBoxSelectionModule.checkAllParent=null,this.notify("selectAll",{}),this.checkSelectAll()}}else{for(this.list.getElementsByClassName("e-selectall-parent")[0]&&this.list.removeChild(this.list.getElementsByClassName("e-selectall-parent")[0]),i;i<l;i++)s[i].classList.contains("e-list-item")&&s[i].removeChild(s[i].getElementsByClassName("e-checkbox-wrapper")[0]),s[i].hasAttribute("aria-selected")&&s[i].removeAttribute("aria-selected");this.mainList=this.ulElement}this.value=[]},o.prototype.isSelected=function(e){return!t.isNullOrUndefined(e)&&(e.classList.contains(s.cssClass.selected)||null!==e.querySelector(".e-check"))},o.prototype.getSelectTag=function(){return this.list.getElementsByClassName("e-hidden-select")[0]},o.prototype.getToolElem=function(){return this.list.parentElement.getElementsByClassName("e-listbox-tool")[0]},o.prototype.formResetHandler=function(){this.value=this.initialSelectedOptions},o.prototype.getModuleName=function(){return"listbox"},o.prototype.getPersistData=function(){return this.addOnPersist(["value"])},o.prototype.getLocaleName=function(){return"listbox"},o.prototype.destroy=function(){this.unwireEvents(),"EJS-LISTBOX"===this.element.tagName?this.element.innerHTML="":(this.element.style.display="inline-block",this.toolbarSettings.items.length&&(this.list.parentElement.parentElement.insertBefore(this.list,this.list.parentElement),t.detach(this.list.nextElementSibling)),this.list.parentElement.insertBefore(this.element,this.list)),e.prototype.destroy.call(this),this.enableRtlElements=[],this.liCollections=null,this.list=null,this.ulElement=null,this.mainList=null,this.spinner=null,this.rippleFun=null,this.itemTemplate&&this.clearTemplate()},o.prototype.onPropertyChanged=function(i,l){var o=this.toolbarSettings.items.length?this.list.parentElement:this.list;e.prototype.onPropertyChanged.call(this,i,l),this.setUpdateInitial(["fields","query","dataSource"],i);for(var r=0,a=Object.keys(i);r<a.length;r++)switch(a[r]){case"cssClass":l.cssClass&&t.removeClass([o],l.cssClass.split(" ")),i.cssClass&&t.addClass([o],i.cssClass.replace(/\s+/g," ").trim().split(" "));break;case"enableRtl":i.enableRtl?this.list.classList.add("e-rtl"):this.list.classList.remove("e-rtl");break;case"value":t.removeClass(this.list.querySelectorAll("."+s.cssClass.selected),s.cssClass.selected),this.clearSelection(this.value),this.setSelection();break;case"height":this.setHeight();break;case"enabled":this.setEnable();break;case"allowDragAndDrop":i.allowDragAndDrop?this.initDraggable():t.getComponent(this.ulElement,"sortable").destroy();break;case"allowFiltering":this.allowFiltering?this.setFiltering():(this.list.removeChild(this.list.getElementsByClassName("e-filter-parent")[0]),this.filterParent=null,t.removeClass([this.list],"e-filter-list"));break;case"filterBarPlaceholder":this.allowFiltering&&this.filterInput&&n.Input.setPlaceholder(i.filterBarPlaceholder,this.filterInput);break;case"scope":this.allowDragAndDrop&&(t.getComponent(this.ulElement,"sortable").scope=i.scope),this.toolbarSettings.items.length&&(l.scope&&(t.getComponent(document.querySelector(l.scope),this.getModuleName()).tBListBox=null),i.scope&&(t.getComponent(document.querySelector(i.scope),this.getModuleName()).tBListBox=this));break;case"toolbarSettings":var h=void 0,p=i.toolbarSettings.position,u=this.getToolElem();p&&(t.removeClass([o],["e-right","e-left"]),o.classList.add("e-"+p.toLowerCase()),"Left"===p?o.insertBefore(u,this.list):o.appendChild(u)),i.toolbarSettings.items&&(l.toolbarSettings&&l.toolbarSettings.items.length&&((h=this.list.parentElement).parentElement.insertBefore(this.list,h),t.detach(h)),this.initToolbarAndStyles(),this.wireToolbarEvent());break;case"selectionSettings":var d=i.selectionSettings.showSelectAll,c=i.selectionSettings.showCheckbox;if(!t.isNullOrUndefined(d)){if(this.showSelectAll=d,this.showSelectAll){var m=new t.L10n(this.getModuleName(),{selectAllText:"Select All",unSelectAllText:"Unselect All"},this.locale);this.checkBoxSelectionModule.checkAllParent=null,this.showSelectAll=!0,this.selectAllText=m.getConstant("selectAllText"),this.unSelectAllText=m.getConstant("selectAllText"),this.popupWrapper=this.list}this.notify("selectAll",{}),this.checkSelectAll()}t.isNullOrUndefined(c)||this.showCheckbox(c),this.selectionSettings.showCheckbox&&this.setCheckboxPosition();break;case"dataSource":this.isDataSourceUpdate=!0,this.jsonData=[].slice.call(this.dataSource)}};var a;return Ee([t.Property("")],o.prototype,"cssClass",void 0),Ee([t.Property([])],o.prototype,"value",void 0),Ee([t.Property("")],o.prototype,"height",void 0),Ee([t.Property(!0)],o.prototype,"enabled",void 0),Ee([t.Property(!1)],o.prototype,"enablePersistence",void 0),Ee([t.Property(!1)],o.prototype,"allowDragAndDrop",void 0),Ee([t.Property(1e3)],o.prototype,"maximumSelectionLength",void 0),Ee([t.Property(!1)],o.prototype,"allowFiltering",void 0),Ee([t.Property("")],o.prototype,"scope",void 0),Ee([t.Property(!0)],o.prototype,"ignoreCase",void 0),Ee([t.Property(null)],o.prototype,"filterBarPlaceholder",void 0),Ee([t.Event()],o.prototype,"beforeItemRender",void 0),Ee([t.Event()],o.prototype,"filtering",void 0),Ee([t.Event()],o.prototype,"select",void 0),Ee([t.Event()],o.prototype,"change",void 0),Ee([t.Event()],o.prototype,"beforeDrop",void 0),Ee([t.Event()],o.prototype,"dragStart",void 0),Ee([t.Event()],o.prototype,"drag",void 0),Ee([t.Event()],o.prototype,"drop",void 0),Ee([t.Event()],o.prototype,"dataBound",void 0),Ee([t.Property(null)],o.prototype,"groupTemplate",void 0),Ee([t.Property("Request failed")],o.prototype,"actionFailureTemplate",void 0),Ee([t.Property(1e3)],o.prototype,"zIndex",void 0),Ee([t.Property(!1)],o.prototype,"ignoreAccent",void 0),Ee([t.Complex({},xe)],o.prototype,"toolbarSettings",void 0),Ee([t.Complex({},Se)],o.prototype,"selectionSettings",void 0),o=a=Ee([t.NotifyPropertyChanges],o)}(F),we={backIcon:"e-input-group-icon e-back-icon e-icons",filterBarClearIcon:"e-input-group-icon e-clear-icon e-icons",filterInput:"e-input-filter",filterParent:"e-filter-parent",clearIcon:"e-clear-icon"},Oe=function(){var e=function(t,i){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)t.hasOwnProperty(i)&&(e[i]=t[i])})(t,i)};return function(t,i){function s(){this.constructor=t}e(t,i),t.prototype=null===i?Object.create(i):(s.prototype=i.prototype,new s)}}(),Ae=function(e,t,i,s){var l,n=arguments.length,o=n<3?t:null===s?s=Object.getOwnPropertyDescriptor(t,i):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(e,t,i,s);else for(var r=e.length-1;r>=0;r--)(l=e[r])&&(o=(n<3?l(o):n>3?l(t,i,o):l(t,i))||o);return n>3&&o&&Object.defineProperty(t,i,o),o},ke=function(e){function s(t,i){return e.call(this,t,i)||this}return Oe(s,e),s.prototype.onPropertyChanged=function(e,t){for(var i=0,s=Object.keys(e);i<s.length;i++)switch(s[i]){case"minLength":this.minLength=e.minLength;break;case"suffixText":this.suffixText=e.suffixText;break;case"allowSpaces":this.allowSpaces=e.allowSpaces;break;case"mentionChar":this.mentionChar=e.mentionChar;break;case"showMentionChar":this.showMentionChar=e.showMentionChar;break;case"cssClass":this.updateCssClass(e.cssClass,t.cssClass)}},s.prototype.updateCssClass=function(e,i){t.isNullOrUndefined(i)||(i=i.replace(/\s+/g," ").trim()),t.isNullOrUndefined(e)||(e=e.replace(/\s+/g," ").trim()),this.setCssClass(e,[this.inputElement],i),this.popupObj&&this.setCssClass(e,[this.popupObj.element],i)},s.prototype.setCssClass=function(e,i,s){t.isNullOrUndefined(s)||""===s||t.removeClass(i,s.split(" ")),t.isNullOrUndefined(e)||""===e||t.addClass(i,e.split(" "))},s.prototype.initializeData=function(){this.isSelected=!1,this.isFiltered=!1,this.beforePopupOpen=!1,this.initRemoteRender=!1,this.isListResetted=!1,this.isPopupOpen=!1,this.isCollided=!1,this.lineBreak=!1},s.prototype.preRender=function(){this.initializeData(),e.prototype.preRender.call(this)},s.prototype.render=function(){var e="string"==typeof this.target;this.inputElement=t.isNullOrUndefined(this.target)?this.element:this.checkAndUpdateInternalComponent(e?document.querySelector(this.target):this.target),this.isContentEditable(this.inputElement)&&(this.inputElement.setAttribute("contenteditable","true"),t.addClass([this.inputElement],["e-mention"]),t.isNullOrUndefined(this.target)&&t.addClass([this.inputElement],["e-editable-element"])),this.inputElement.setAttribute("role","textbox"),this.inputElement.setAttribute("aria-label","mention"),this.queryString=this.elementValue(),this.wireEvent()},s.prototype.wireEvent=function(){t.EventHandler.add(this.inputElement,"keyup",this.onKeyUp,this),this.bindCommonEvent()},s.prototype.unWireEvent=function(){t.EventHandler.remove(this.inputElement,"keyup",this.onKeyUp),this.unBindCommonEvent()},s.prototype.bindCommonEvent=function(){t.Browser.isDevice||this.inputElement.addEventListener("keydown",this.keyDownHandler.bind(this),!0)},s.prototype.hideSpinner=function(){this.hideWaitingSpinner()},s.prototype.hideWaitingSpinner=function(){t.isNullOrUndefined(this.spinnerElement)||l.hideSpinner(this.spinnerElement),t.isNullOrUndefined(this.spinnerTemplate)||t.isNullOrUndefined(this.spinnerTemplateElement)||t.detach(this.spinnerTemplateElement)},s.prototype.checkAndUpdateInternalComponent=function(e){if(!this.isVue&&e.classList.contains("e-richtexteditor"))return e.querySelector(".e-content");if(this.isVue&&"TEXTAREA"===e.nodeName&&e.classList.contains("e-rte-hidden")){var t=e.parentElement;if(t&&t.classList.contains("e-richtexteditor"))return t.querySelector(".e-content")}return e},s.prototype.showWaitingSpinner=function(){t.isNullOrUndefined(this.popupObj)||(t.isNullOrUndefined(this.spinnerTemplate)&&t.isNullOrUndefined(this.spinnerElement)&&(this.spinnerElement=this.popupObj.element,l.createSpinner({target:this.spinnerElement,width:t.Browser.isDevice?"16px":"14px"},this.createElement),l.showSpinner(this.spinnerElement)),t.isNullOrUndefined(this.spinnerTemplate)||this.setSpinnerTemplate())},s.prototype.keyDownHandler=function(e){var t=!0;switch(e.keyCode){case 38:e.action=e.altKey?"hide":"up";break;case 40:e.action=e.altKey?"open":"down";break;case 33:e.action="pageUp";break;case 34:e.action="pageDown";break;case 36:e.action="home";break;case 35:e.action="end";break;case 9:e.action=e.shiftKey?"close":"tab";break;case 27:e.action="escape";break;case 32:e.action="space";break;case 13:e.action="enter";break;default:t=!1}t&&this.keyActionHandler(e)},s.prototype.keyActionHandler=function(e){var i="down"===e.action||"up"===e.action||"pageUp"===e.action||"pageDown"===e.action||"home"===e.action||"end"===e.action,s="tab"===e.action||"close"===e.action;if(void 0!==this.list||this.isRequested||s||"escape"===e.action||"space"===e.action||this.renderList(),!(t.isNullOrUndefined(this.list)||!t.isNullOrUndefined(this.liCollections)&&i&&0===this.liCollections.length||this.isRequested))switch("escape"===e.action&&e.preventDefault(),this.isSelected="escape"!==e.action&&this.isSelected,e.action){case"down":case"up":this.isUpDownKey=!0,this.updateUpDownAction(e);break;case"tab":if(this.isPopupOpen){e.preventDefault();var l=this.list.querySelector("."+U.selected);l&&this.setSelection(l,e),this.isPopupOpen&&this.hidePopup(e)}break;case"enter":this.isPopupOpen&&(e.preventDefault(),this.popupObj&&this.popupObj.element.contains(this.selectedLI)&&this.updateSelectedItem(this.selectedLI,e,!1,!0));break;case"escape":this.isPopupOpen&&this.hidePopup(e)}},s.prototype.updateUpDownAction=function(e){var i=this.list.querySelector("."+U.focus);if(this.isSelectFocusItem(i))this.setSelection(i,e);else if(!t.isNullOrUndefined(this.liCollections)){var s=this.list.querySelector("."+U.selected);if(!t.isNullOrUndefined(s)){var l=this.getFormattedValue(s.getAttribute("data-value"));this.activeIndex=this.getIndexByValue(l)}var n="down"===e.action?this.activeIndex+1:this.activeIndex-1,o=0;o="down"===e.action&&t.isNullOrUndefined(this.activeIndex)?0:this.liCollections.length-1,n=n<0?this.liCollections.length-1:n===this.liCollections.length?0:n;var r=t.isNullOrUndefined(this.activeIndex)?this.liCollections[o]:this.liCollections[n];t.isNullOrUndefined(r)||this.setSelection(r,e)}this.isPopupOpen&&e.preventDefault()},s.prototype.isSelectFocusItem=function(e){return!t.isNullOrUndefined(e)},s.prototype.unBindCommonEvent=function(){t.Browser.isDevice||this.inputElement.removeEventListener("keydown",this.keyDownHandler.bind(this),!0)},s.prototype.onKeyUp=function(e){var i;if(this.isUpDownKey&&this.isPopupOpen&&229===e.keyCode)return void(this.isUpDownKey=!1);this.isTyped="Enter"!==e.code&&"Space"!==e.code&&"ArrowDown"!==e.code&&"ArrowUp"!==e.code;var s=!(!document.activeElement.parentElement||!document.activeElement.parentElement.querySelector(".e-rte-image"));document.activeElement==this.inputElement||s||this.inputElement.focus(),this.isContentEditable(this.inputElement)&&(this.range=this.getCurrentRange(),i=this.range.startContainer.textContent.split(""));var l=this.getTextRange(),n=this.getLastLetter(l),o=this.mentionChar.toString()+this.mentionChar.toString(),r=new RegExp(this.mentionChar.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&"),"g"),a=new RegExp("[a-zA-Z]","g");if("Shift"!==e.key&&37!==e.keyCode&&39!==e.keyCode){if(this.beforePopupOpen&&this.isPopupOpen&&n==o)return void this.hidePopup();if(!l||!n||"Enter"===e.code||27===e.keyCode||n.match(r)&&n.match(r).length>1||this.isContentEditable(this.inputElement)&&this.range.startContainer&&this.range.startContainer.previousElementSibling&&"BR"!==this.range.startContainer.previousElementSibling.tagName&&this.range.startContainer.textContent.split("").length>0&&(1===i.length||-1===i[i.length-2].indexOf("")||1===this.range.startContainer.nodeType))return void(this.allowSpaces&&l&&""!==l.trim()&&a.test(l)&&-1!==l.indexOf(this.mentionChar)&&!this.isMatchedText()&&l.length>1&&" "!==l.replace(/\u00A0/g," ").charAt(l.length-2)&&this.list&&this.list.querySelectorAll("ul").length>0?(this.queryString=l.substring(l.lastIndexOf(this.mentionChar)+1).replace(" "," "),this.searchLists(e)):!this.isPopupOpen||this.allowSpaces&&n||"ArrowDown"===e.code||"ArrowUp"===e.code||(this.hidePopup(),this.lineBreak=!0));n.includes(this.mentionChar)&&(this.queryString=n.replace(this.mentionChar,"")),this.mentionChar.charCodeAt(0)!==n.charCodeAt(0)||""===this.queryString||38===e.keyCode||40===e.keyCode||this.lineBreak?0===n.indexOf(this.mentionChar)&&!this.isPopupOpen&&8!==e.keyCode&&(!this.popupObj||t.isNullOrUndefined(this.target)&&!document.body.contains(this.popupObj.element)||!t.isNullOrUndefined(this.target)&&document.body.contains(this.popupObj.element))?(this.initRemoteRender&&this.list&&this.list.classList.contains("e-nodata")&&this.searchLists(e),this.resetList(this.dataSource,this.fields),t.isNullOrUndefined(this.list)&&this.initValue(),!this.isPopupOpen&&38!==e.keyCode&&40!==e.keyCode&&this.queryString.length>=this.minLength&&(this.didPopupOpenByTypingInitialChar=!0,this.showPopup(),this.initRemoteRender&&0===this.list.querySelectorAll("li").length&&this.showWaitingSpinner(),this.lineBreak=!1)):this.allowSpaces&&""!==this.queryString&&l&&""!==l.trim()&&l.replace(" "," ").lastIndexOf(" ")<l.length-1&&38!==e.keyCode&&40!==e.keyCode&&8!==e.keyCode&&this.mentionChar.charCodeAt(0)===n.charCodeAt(0)?(this.queryString=l.substring(l.lastIndexOf(this.mentionChar)+1).replace(" "," "),this.searchLists(e)):""===this.queryString&&this.isPopupOpen&&38!==e.keyCode&&40!==e.keyCode&&this.mentionChar.charCodeAt(0)===n.charCodeAt(0)&&(this.searchLists(e),this.isListResetted||this.resetList(this.dataSource,this.fields)):(this.searchLists(e),!this.isPopupOpen&&this.queryString.length>=this.minLength&&(this.isContentEditable(this.inputElement)?this.isContentEditable(this.inputElement)&&this.range&&this.range.startContainer!==this.inputElement&&9!==e.keyCode&&this.showPopup():this.showPopup())),this.isListResetted=!1}},s.prototype.isMatchedText=function(){for(var e=!1,t=0;t<(this.liCollections&&this.liCollections.length);t++)this.getTextRange()&&this.getTextRange().substring(this.getTextRange().lastIndexOf(this.mentionChar)+1).replace(" "," ").trim()===this.liCollections[t].getAttribute("data-value").toLowerCase()&&(e=!0);return e},s.prototype.getCurrentRange=function(){return this.range=this.inputElement.ownerDocument.getSelection().getRangeAt(0),this.range},s.prototype.searchLists=function(i){var s=this;if(this.isDataFetched=!1,t.isNullOrUndefined(this.list)&&(e.prototype.render.call(this),this.unWireListEvents(),this.wireListEvents()),"mousedown"!==i.type&&(40===i.keyCode||38===i.keyCode))return this.queryString=""===this.queryString?null:this.queryString,this.beforePopupOpen=!0,void this.resetList(this.dataSource,this.fields);this.isSelected=!1,this.activeIndex=null;var l={preventDefaultAction:!1,text:this.queryString,updateData:function(e,t,i){l.cancel||(s.isFiltered=!0,s.filterAction(e,t,i))},cancel:!1};this.trigger("filtering",l,function(e){e.cancel||s.isFiltered||e.preventDefaultAction||s.filterAction(s.dataSource,null,s.fields)})},s.prototype.filterAction=function(e,t,i){this.beforePopupOpen=!0,this.queryString.length>=this.minLength?(this.resetList(e,i,t),this.isListResetted=!0):(this.isPopupOpen&&this.hidePopup(),this.beforePopupOpen=!1),this.setDataIndex(),this.renderReactTemplates()},s.prototype.onActionComplete=function(i,s,l,n){if(e.prototype.onActionComplete.call(this,i,s,l),this.isActive){t.isNullOrUndefined(i)||t.attributes(i,{id:this.inputElement.id+"_options",role:"listbox","aria-hidden":"false"});var o=i.querySelector("."+U.li);if(o){o.classList.add(U.selected),this.selectedLI=o;var r=this.getFormattedValue(o.getAttribute("data-value"));this.selectEventCallback(o,this.getDataByValue(r),r,!0)}this.beforePopupOpen&&this.isPopupOpen&&(t.isNullOrUndefined(this.popupObj.element)||this.popupObj.element.remove(),this.renderPopup())}},s.prototype.setDataIndex=function(){for(var e=0;this.liCollections&&e<this.liCollections.length;e++)this.liCollections[e].setAttribute("data-index",e.toString())},s.prototype.listOption=function(i,s){var l=this,n=e.prototype.listOption.call(this,i,s);if(t.isNullOrUndefined(n.itemCreated))n.itemCreated=function(e){l.highlight&&(l.inputElement.tagName===l.getNgDirective()&&l.itemTemplate?setTimeout(function(){c(e.item,l.queryString,l.ignoreCase,l.filterType)},0):c(e.item,l.queryString,l.ignoreCase,l.filterType))};else{var o=n.itemCreated;n.itemCreated=function(e){l.highlight&&c(e.item,l.queryString,l.ignoreCase,l.filterType),o.apply(l,[e])}}return n},s.prototype.elementValue=function(){return this.isContentEditable(this.inputElement)?this.inputElement.textContent.replace(this.mentionChar,""):this.inputElement.value.replace(this.mentionChar,"")},s.prototype.getQuery=function(e){var s=e?e.clone():this.query?this.query.clone():new i.Query,l=""!==this.queryString||t.isNullOrUndefined(this.elementValue())?this.filterType:"equal",n=""!==this.queryString||t.isNullOrUndefined(this.elementValue())?this.queryString:this.elementValue();if(this.isFiltered)return s;if(null!==this.queryString&&""!==this.queryString){var o=this.typeOfData(this.dataSource).typeof;if((this.dataSource instanceof i.DataManager||"string"!==o)&&"number"!==o){var r=t.isNullOrUndefined(this.fields.text)?"":this.fields.text;s.where(r,l,n,this.ignoreCase,this.ignoreAccent)}else s.where("",l,n,this.ignoreCase,this.ignoreAccent)}if(!t.isNullOrUndefined(this.suggestionCount)){if(25!==this.suggestionCount)for(var a=0;a<s.queries.length;a++)"onTake"===s.queries[a].fn&&s.queries.splice(a,1);s.take(this.suggestionCount)}return s},s.prototype.renderHightSearch=function(){if(this.highlight)for(var e=0;e<this.liCollections.length;e++)this.ulElement.querySelector(".e-active")||(f(this.liCollections[e]),c(this.liCollections[e],this.queryString,this.ignoreCase,this.filterType))},s.prototype.getTextRange=function(){var e;if(this.isContentEditable(this.inputElement)){if(this.range){var i=this.range.startContainer;if(!t.isNullOrUndefined(i)){var s=i.textContent,l=this.range.startOffset;s&&l>=0&&(e=s.substring(0,l))}}}else{var n=this.inputElement;if(!t.isNullOrUndefined(n)){var o=n.selectionStart;n.value&&o>=0&&(e=n.value.substring(0,o))}}return e},s.prototype.getLastLetter=function(e){if(t.isNullOrUndefined(e))return"";var i=e.replace(/\u00A0/g," ").split(/\s+/);return i[i.length-1].trim()},s.prototype.isContentEditable=function(e){return e&&"INPUT"!==e.nodeName&&"TEXTAREA"!==e.nodeName},s.prototype.showPopup=function(){this.beforePopupOpen=!0,document.activeElement!=this.inputElement&&this.inputElement.focus(),this.queryString=this.didPopupOpenByTypingInitialChar?this.queryString:"",this.didPopupOpenByTypingInitialChar=!1,this.isContentEditable(this.inputElement)&&(this.range=this.getCurrentRange()),this.isTyped||this.resetList(this.dataSource,this.fields),t.isNullOrUndefined(this.list)&&this.initValue(),this.renderPopup(),t.attributes(this.inputElement,{"aria-activedescendant":this.selectedElementID}),null==this.selectedElementID&&this.inputElement.removeAttribute("aria-activedescendant")},s.prototype.hidePopup=function(e){this.removeSelection(),this.closePopup(0,e)},s.prototype.closePopup=function(e,i){var s=this;if(this.popupObj&&document.body.contains(this.popupObj.element)&&this.beforePopupOpen){t.EventHandler.remove(document,"mousedown",this.onDocumentClick),this.inputElement.removeAttribute("aria-owns"),this.inputElement.removeAttribute("aria-activedescendant"),this.beforePopupOpen=!1;var l={name:"FadeOut",duration:100,delay:e||0},n={popup:this.popupObj,cancel:!1,animation:l,event:i||null};this.trigger("closed",n,function(e){!e.cancel&&s.popupObj&&(s.isPopupOpen?s.popupObj.hide(new t.Animation(e.animation)):s.destroyPopup())})}},s.prototype.renderPopup=function(){var e=this,i={cancel:!1};this.trigger("beforeOpen",i,function(i){if(i.cancel)e.beforePopupOpen=!1;else{var s;if(t.isNullOrUndefined(e.target)?s=e.createElement("div",{id:e.inputElement.id+"_popup",className:"e-mention e-popup "+(null!=e.cssClass?e.cssClass:"")}):(s=e.element,null!=e.cssClass&&t.addClass([s],e.cssClass.split(" "))),t.isNullOrUndefined(e.target)||(s.id=e.inputElement.id+"_popup"),e.listHeight=t.formatUnit(e.popupHeight),!t.isNullOrUndefined(e.list.querySelector("li"))&&!e.initRemoteRender){var n=e.list.querySelector("."+U.focus);if(!t.isNullOrUndefined(n)){e.selectedLI=n;var o=e.getFormattedValue(n.getAttribute("data-value"));e.selectEventCallback(n,e.getDataByValue(o),o,!0)}}t.append([e.list],s),e.inputElement.parentElement&&e.inputElement.parentElement.parentElement&&e.inputElement.parentElement.parentElement.classList.contains("e-richtexteditor")&&s.firstElementChild&&s.firstElementChild.childElementCount>0&&(s.firstElementChild.setAttribute("aria-owns",e.inputElement.parentElement.parentElement.id),t.addClass([s],"e-rte-elements")),e.popupObj&&document.body.contains(e.popupObj.element)&&(document.contains(s)||!t.isNullOrUndefined(e.target))||document.body.appendChild(s);var r;s.style.visibility="hidden",e.setHeight(s);e.initializePopup(s,0,0),e.checkCollision(s),s.style.visibility="visible";var a=s.parentElement.offsetWidth-s.offsetWidth,h=s.offsetHeight;t.addClass([s],["e-mention","e-popup","e-popup-close"]),t.isNullOrUndefined(e.list)||(e.unWireListEvents(),e.wireListEvents()),e.selectedElementID=e.selectedLI?e.selectedLI.id:null,t.attributes(e.inputElement,{"aria-owns":e.inputElement.id+"_options","aria-activedescendant":e.selectedElementID}),null==e.selectedElementID&&e.inputElement.removeAttribute("aria-activedescendant");var p={name:"FadeIn",duration:100};e.beforePopupOpen=!0;var u={popup:e.popupObj,cancel:!1,animation:p};e.trigger("opened",u,function(i){if(i.cancel)e.beforePopupOpen=!1,e.destroyPopup();else{if(e.renderReactTemplates(),e.popupObj&&e.popupObj.show(new t.Animation(i.animation),1e3===e.zIndex?e.inputElement:null),t.isNullOrUndefined(e.getTriggerCharPosition()))return;r=e.getCoordinates(e.inputElement,e.getTriggerCharPosition()),e.isCollided?(e.collision.length>0&&e.collision.indexOf("right")>-1&&-1===e.collision.indexOf("bottom")?s.style.cssText="top: ".concat(r.top.toString(),"px;\n left: ").concat(a.toString(),"px;\nposition: absolute;\n display: block;"):e.collision&&e.collision.length>0&&e.collision.indexOf("bottom")>-1&&-1===e.collision.indexOf("right")?(s.style.left=t.formatUnit(r.left),s.style.top=t.formatUnit(r.top-parseInt(h.toString()))):e.collision&&e.collision.length>0&&e.collision.indexOf("bottom")>-1&&e.collision.indexOf("right")>-1?(s.style.left=t.formatUnit(a),s.style.top=t.formatUnit(r.top-parseInt(h.toString()))):(s.style.left=t.formatUnit(r.left),s.style.top=t.formatUnit(r.top-parseInt(e.popupHeight.toString()))),e.isCollided=!1,e.collision=[]):s.style.cssText="top: ".concat(r.top.toString(),"px;\n left: ").concat(r.left.toString(),"px;\nposition: absolute;\n display: block;"),s.style.width="100%"===e.popupWidth||t.isNullOrUndefined(e.popupWidth)?"auto":t.formatUnit(e.popupWidth),e.setHeight(s),s.style.zIndex=1e3===e.zIndex?l.getZindexPartial(s).toString():e.zIndex.toString()}})}})},s.prototype.setHeight=function(e){"auto"!==this.popupHeight&&this.list?(this.list.style.maxHeight=(parseInt(this.listHeight,10)-2).toString()+"px",e.style.maxHeight=t.formatUnit(this.popupHeight)):e.style.height="auto"},s.prototype.checkCollision=function(e){if(!t.Browser.isDevice||t.Browser.isDevice&&"mention"!==this.getModuleName()){var i=this.getCoordinates(this.inputElement,this.getTriggerCharPosition());this.collision=l.isCollide(e,null,i.left,i.top),this.collision.length>0&&(e.style.marginTop=-parseInt(getComputedStyle(e).marginTop,10)+"px",this.isCollided=!0),this.popupObj.resolveCollision()}},s.prototype.getTriggerCharPosition=function(){var e,t=this.getTextRange();if(void 0!==t&&null!==t){e=0;var i=t.lastIndexOf(this.mentionChar);i>=e&&(e=i)}return e||0},s.prototype.initializePopup=function(e,i,s){var n=this;this.popupObj=new l.Popup(e,{width:this.setWidth(),targetType:"relative",relateTo:this.inputElement,collision:{X:"flip",Y:"flip"},offsetY:i,enableRtl:this.enableRtl,offsetX:s,position:{X:"left",Y:"bottom"},actionOnScroll:"hide",zIndex:this.zIndex,close:function(){n.destroyPopup()},open:function(){t.EventHandler.add(document,"mousedown",n.onDocumentClick,n),n.isPopupOpen=!0,n.setDataIndex()}})},s.prototype.setWidth=function(){var e=t.formatUnit(this.popupWidth);return e.indexOf("%")>-1&&(e=(this.inputElement.offsetWidth*parseFloat(e)/100).toString()+"px"),e},s.prototype.destroyPopup=function(){this.isPopupOpen=!1,this.popupObj.destroy(),t.isNullOrUndefined(this.target)?t.detach(this.popupObj.element):(this.popupObj.element.innerHTML="",this.popupObj.element.removeAttribute("style"),this.popupObj.element.removeAttribute("aria-disabled"))},s.prototype.onDocumentClick=function(e){var i=e.target;!t.isNullOrUndefined(this.popupObj)&&t.closest(i,"#"+this.popupObj.element.id)||this.hidePopup(e)},s.prototype.getCoordinates=function(e,i){var s,l,n,o,r,a,h,p=["direction","boxSizing","width","height","overflowX","overflowY","borderTopWidth","borderRightWidth","borderBottomWidth","borderLeftWidth","paddingTop","paddingRight","paddingBottom","paddingLeft","fontStyle","fontVariant","fontWeight","fontStretch","fontSize","fontSizeAdjust","lineHeight","fontFamily","textAlign","textTransform","textIndent","textDecoration","letterSpacing","wordSpacing"];if(this.isContentEditable(this.inputElement)){var u=this.getTriggerCharPosition();o=this.range,n=document.createRange(),this.getTextRange()&&-1!==this.getTextRange().lastIndexOf(this.mentionChar)?(n.setStart(o.startContainer,u),n.setEnd(o.startContainer,u)):(n.setStart(o.startContainer,o.startOffset),n.setEnd(o.startContainer,o.endOffset)),this.isTyped=!1,n.collapse(!1),h=0===n.getBoundingClientRect().top?n.startContainer.getClientRects()[0]:n.getBoundingClientRect()}else s=this.createElement("div",{className:"e-form-mirror-div"}),document.body.appendChild(s),a=getComputedStyle(e),s.style.position="absolute",s.style.visibility="hidden",p.forEach(function(e){s.style[e]=a[e]}),s.textContent=e.value.substring(0,i),"INPUT"===this.inputElement.nodeName&&(s.textContent=s.textContent.replace(/\s/g," ")),(l=this.createElement("span")).textContent=e.value.substring(i)||".",s.appendChild(l),h=e.getBoundingClientRect();var d=h.top,c=h.left,m=document.querySelectorAll("iframe");if(m.length>0)for(E=0;E<m.length;E++){var f=m[E];if(f.contentDocument&&f.contentDocument.contains(e)){var v=f.getBoundingClientRect();d+=v.top,c+=v.left}}var g=document.documentElement,y=(window.pageXOffset||g.scrollLeft)-(g.clientLeft||0),C=(window.pageYOffset||g.scrollTop)-(g.clientTop||0),b=0;if(!t.isNullOrUndefined(n)&&0===n.getBoundingClientRect().top)for(var E=0;E<this.range.startContainer.childNodes.length;E++)if(this.range.startContainer.childNodes[E].nodeType!==Node.TEXT_NODE&&""!==this.range.startContainer.childNodes[E].textContent.trim())b+=this.range.startContainer.childNodes[E].getClientRects()[0].width;else if(""!==this.range.startContainer.childNodes[E].textContent){var S=document.createElement("span");S.innerHTML=this.range.startContainer.childNodes[E].nodeValue,document.body.appendChild(S);var x=S.offsetWidth;document.body.removeChild(S),b+=x}return this.isContentEditable(this.inputElement)?r=this.collision&&this.collision.length>0&&this.collision.indexOf("right")>-1&&-1===this.collision.indexOf("bottom")?{top:d+C+parseInt(getComputedStyle(this.inputElement).fontSize,10),left:c+y+b}:{top:d+C+parseInt(getComputedStyle(this.inputElement).fontSize,10)-(this.isCollided?10:0),left:c+y+b}:(r={top:d+C+l.offsetTop+parseInt(a.borderTopWidth,10)+parseInt(a.fontSize,10)+3-e.scrollTop-(this.isCollided?10:0),left:c+y+l.offsetLeft+parseInt(a.borderLeftWidth,10)},document.body.removeChild(s)),r},s.prototype.initValue=function(){this.renderList(),this.dataSource instanceof i.DataManager?this.initRemoteRender=!0:this.updateValues()},s.prototype.updateValues=function(){var e=this.list.querySelector("."+U.focus);t.isNullOrUndefined(e)||this.setSelection(e,null)},s.prototype.renderList=function(){e.prototype.render.call(this),this.unWireListEvents(),this.wireListEvents()},s.prototype.wireListEvents=function(){t.EventHandler.add(this.list,"mousedown",this.onMouseClick,this),t.EventHandler.add(this.list,"mouseover",this.onMouseOver,this),t.EventHandler.add(this.list,"mouseout",this.onMouseLeave,this)},s.prototype.unWireListEvents=function(){t.EventHandler.remove(this.list,"mousedown",this.onMouseClick),t.EventHandler.remove(this.list,"mouseover",this.onMouseOver),t.EventHandler.remove(this.list,"mouseout",this.onMouseLeave)},s.prototype.onMouseClick=function(e){var i=e.target,s=t.closest(i,"."+U.li);if(this.isValidLI(s)){this.isSelected=!0,this.setSelection(s,e);this.closePopup(100,e),this.inputElement.focus(),e.preventDefault()}},s.prototype.updateSelectedItem=function(e,i,s,l){var n=this;this.removeSelection(),e.classList.add(U.selected),this.removeHover();var o=this.getFormattedValue(e.getAttribute("data-value")),r=this.getDataByValue(o);if(s||t.isNullOrUndefined(i)||"down"===i.action||"up"===i.action)this.selectEventCallback(e,r,o),l&&this.setSelectOptions(e,i);else{var a=this.detachChanges(r);this.isSelected=!0;var h={e:i,item:e,itemData:a,isInteracted:!!i,cancel:!1};this.trigger("select",h,function(t){t.cancel?(e.classList.remove(U.selected),n.isSelected=!1,n.isSelectCancel=!0):(n.selectEventCallback(e,r,o),l&&n.setSelectOptions(e,i))})}},s.prototype.setSelection=function(e,t){this.isValidLI(e)&&(!e.classList.contains(U.selected)||this.isPopupOpen&&this.isSelected&&e.classList.contains(U.selected))?this.updateSelectedItem(e,t,!1,!0):this.setSelectOptions(e,t)},s.prototype.setSelectOptions=function(e,i){this.list&&this.removeHover(),this.previousSelectedLI=t.isNullOrUndefined(this.selectedLI)?null:this.selectedLI,this.selectedLI=e,this.isPopupOpen&&!t.isNullOrUndefined(this.selectedLI)&&this.setScrollPosition(i),(!i||38!==i.keyCode&&40!==i.keyCode)&&(t.isNullOrUndefined(i)||this.setValue(i))},s.prototype.setScrollPosition=function(e){if(t.isNullOrUndefined(e))this.scrollBottom(!0);else switch(e.action){case"pageDown":case"down":case"end":this.scrollBottom();break;default:this.scrollTop()}},s.prototype.scrollBottom=function(e){if(!t.isNullOrUndefined(this.selectedLI)){var i=this.list.offsetHeight,s=this.selectedLI.offsetTop+this.selectedLI.offsetHeight-this.list.scrollTop,l=this.list.scrollTop+s-i;l=e?l+2*parseInt(getComputedStyle(this.list).paddingTop,10):l;var n=this.selectedLI.offsetTop+this.selectedLI.offsetHeight-this.list.scrollTop;0===this.activeIndex?this.list.scrollTop=0:(s>i||!(n>0&&this.list.offsetHeight>n))&&(this.list.scrollTop=l)}},s.prototype.scrollTop=function(){if(!t.isNullOrUndefined(this.selectedLI)){var e=this.selectedLI.offsetTop-this.list.scrollTop;e=this.fields.groupBy&&e;var i=this.selectedLI.offsetTop+this.selectedLI.offsetHeight-this.list.scrollTop;0===this.activeIndex?this.list.scrollTop=0:e<0?this.list.scrollTop=this.list.scrollTop+e:i>0&&this.list.offsetHeight>i||(this.list.scrollTop=this.selectedLI.offsetTop)}},s.prototype.selectEventCallback=function(e,i,s,l){this.previousItemData=t.isNullOrUndefined(this.itemData)?null:this.itemData,this.item=e,this.itemData=i;var n=this.list.querySelector("."+U.focus);n&&t.removeClass([n],U.focus),l&&t.addClass([e],U.selected),e.setAttribute("aria-selected","true"),this.activeIndex=this.getIndexByValue(s)},s.prototype.detachChanges=function(e){return"string"==typeof e||"boolean"==typeof e||"number"==typeof e?Object.defineProperties({},{value:{value:e,enumerable:!0},text:{value:e,enumerable:!0}}):e},s.prototype.setValue=function(e){return this.isReact?(t.isNullOrUndefined(this.displayTemplate)?this.updateMentionValue(e):this.setDisplayTemplate(e),!0):(t.isNullOrUndefined(this.displayTemplate)||this.setDisplayTemplate(),this.updateMentionValue(e),!0)},s.prototype.updateMentionValue=function(e){var i,s,l,n,o,r=this.getItemData(),a=this.inputElement.ownerDocument.getSelection(),h=this.getTriggerCharPosition();if(i="string"==typeof this.suffixText?this.suffixText:"",this.isSelectCancel)return void(this.isSelectCancel=!1);if(null!==r.text&&(s=this.mentionVal(r.text)),this.isContentEditable(this.inputElement)){l=this.getTriggerCharPosition()+this.mentionChar.length,this.range&&this.range.startContainer.textContent.trim()!==this.mentionChar&&(l=this.range.endOffset),o=this.range,n=document.createRange(),this.getTextRange()&&-1!==this.getTextRange().lastIndexOf(this.mentionChar)||this.getTextRange()&&this.getTextRange().trim()===this.mentionChar?(n.setStart(o.startContainer,h),n.setEnd(o.startContainer,l)):""!==o.commonAncestorContainer.textContent.trim()&&!t.isNullOrUndefined(o.commonAncestorContainer.textContent.trim())&&this.getTextRange()&&-1!==this.getTextRange().lastIndexOf(this.mentionChar)?(n.setStart(o.startContainer,o.startOffset-1),n.setEnd(o.startContainer,o.endOffset-1)):(n.setStart(o.startContainer,o.startOffset),n.setEnd(o.startContainer,o.endOffset)),this.isTyped=!1,n.deleteContents();var p=this.createElement("div");p.innerHTML=s;for(var u=document.createDocumentFragment(),d=void 0,c=void 0;d=p.firstChild;)c=u.appendChild(d);if(n.insertNode(u),c&&((n=n.cloneRange()).setStartAfter(c),n.collapse(!0),a.removeAllRanges(),a.addRange(n)),this.isPopupOpen&&this.hidePopup(),!t.isNullOrUndefined(e.pointerType)&&"mouse"===e.pointerType){var m=new CustomEvent("content-changed",{detail:{click:!0}});this.inputElement.dispatchEvent(m)}this.onChangeEvent(e)}else{var f=this.inputElement,v=this.getTextRange().substring(h+this.mentionChar.length,this.getTextRange().length);s+=i,l=h+this.mentionChar.length,l+=v.length,f.value=f.value.substring(0,h)+s+f.value.substring(l,f.value.length),f.selectionStart=h+s.length,f.selectionEnd=h+s.length,this.isPopupOpen&&this.hidePopup(),this.onChangeEvent(e)}},s.prototype.mentionVal=function(e){var i=this.showMentionChar?this.mentionChar:"";return t.isNullOrUndefined(this.displayTemplate)||t.isNullOrUndefined(this.displayTempElement)||(e=this.displayTempElement.innerHTML),this.isContentEditable(this.inputElement)?t.Browser.isAndroid?'<span contenteditable="true" class="e-mention-chip">'+i+e+"</span>".concat("string"==typeof this.suffixText?this.suffixText:" "):'<span contenteditable="false" class="e-mention-chip">'+i+e+"</span>".concat("string"==typeof this.suffixText?this.suffixText:" "):i+e},s.prototype.setDisplayTemplate=function(e){var i,s=this;this.isReact&&(this.clearTemplate(["displayTemplate"]),this.displayTempElement&&(t.detach(this.displayTempElement),this.displayTempElement=null)),this.displayTempElement||(this.displayTempElement=this.createElement("div")),this.isReact||(this.displayTempElement.innerHTML="");var l=(i=t.compile(this.displayTemplate))(this.itemData,this,"displayTemplate",this.displayTemplateId,this.isStringTemplate,null,this.displayTempElement);l&&l.length>0&&t.append(l,this.displayTempElement),this.isReact?this.renderTemplates(function(){s.updateMentionValue(e)}):this.renderTemplates()},s.prototype.renderTemplates=function(e){this.renderReactTemplates(e)},s.prototype.setSpinnerTemplate=function(){var e,i=this;this.isReact&&(this.clearTemplate(["spinnerTemplate"]),this.spinnerTemplateElement&&(t.detach(this.spinnerTemplateElement),this.spinnerTemplateElement=null)),this.spinnerTemplateElement||(this.spinnerTemplateElement=this.createElement("div")),this.isReact||(this.spinnerTemplateElement.innerHTML="");var s=(e=t.compile(this.spinnerTemplate))(null,this,"spinnerTemplate",this.spinnerTemplateId,this.isStringTemplate,null,this.spinnerTemplateElement);if(s&&s.length>0)for(var l=0;l<s.length;l++)this.spinnerTemplateElement.appendChild(s[l]);this.isReact?this.renderTemplates(function(){i.popupObj.element.appendChild(i.spinnerTemplateElement)}):(this.renderTemplates(),this.popupObj.element.appendChild(this.spinnerTemplateElement))},s.prototype.onChangeEvent=function(e){this.isSelected=!1;var t,i=this.detachMentionChanges(this.itemData);t="string"==typeof this.previousItemData||"boolean"==typeof this.previousItemData||"number"==typeof this.previousItemData?Object.defineProperties({},{value:{value:this.previousItemData,enumerable:!0},text:{value:this.previousItemData,enumerable:!0}}):this.previousItemData;var s={e:e,item:this.item,itemData:i,previousItem:this.previousSelectedLI,previousItemData:t,isInteracted:!!e,value:this.item.innerHTML,element:this.inputElement};this.trigger("change",s)},s.prototype.detachMentionChanges=function(e){return"string"==typeof e||"boolean"==typeof e||"number"==typeof e?Object.defineProperties({},{value:{value:e,enumerable:!0},text:{value:e,enumerable:!0}}):e},s.prototype.getItemData=function(){var e=this.fields,i=null;i=this.itemData;var s,l;return t.isNullOrUndefined(i)||(s=t.getValue(e.value,i),l=t.getValue(e.text,i)),{value:t.isNullOrUndefined(i)||t.isUndefined(s)?i:s,text:t.isNullOrUndefined(i)||t.isUndefined(s)?i:l}},s.prototype.removeSelection=function(){if(this.list){var e=this.list.querySelectorAll("."+U.selected);e.length&&(t.removeClass(e,U.selected),e[0].removeAttribute("aria-selected"))}},s.prototype.onMouseOver=function(e){var i=t.closest(e.target,"."+U.li);this.setHover(i)},s.prototype.setHover=function(e){this.isValidLI(e)&&!e.classList.contains(U.hover)&&(this.removeHover(),t.addClass([e],U.hover))},s.prototype.removeHover=function(){if(this.list){var e=this.list.querySelectorAll("."+U.hover);e&&e.length&&t.removeClass(e,U.hover)}},s.prototype.isValidLI=function(e){return e&&e.hasAttribute("role")&&"option"===e.getAttribute("role")},s.prototype.onMouseLeave=function(){this.removeHover()},s.prototype.search=function(e,i,s){this.isContentEditable(this.inputElement)&&(this.range=this.getCurrentRange());var l=this.getTextRange(),n=this.getLastLetter(l);if((!this.ignoreCase||e!==n&&e!==n.toLowerCase())&&(this.ignoreCase||e!==n))return void(this.isPopupOpen&&this.hidePopup());this.resetList(this.dataSource,this.fields),t.isNullOrUndefined(this.list)?(this.renderList(),this.renderPopup()):this.showPopup(),this.popupObj.element.style.left=t.formatUnit(i),this.popupObj.element.style.top=t.formatUnit(s)},s.prototype.destroy=function(){this.hidePopup(),this.unWireEvent(),this.list&&this.unWireListEvents(),this.inputElement&&!this.inputElement.classList.contains("e-"+this.getModuleName())||(this.previousSelectedLI=null,this.item=null,this.selectedLI=null,this.popupObj=null,e.prototype.destroy.call(this))},s.prototype.getLocaleName=function(){return"mention"},s.prototype.getNgDirective=function(){return"EJS-MENTION"},s.prototype.getModuleName=function(){return"mention"},Ae([t.Property(null)],s.prototype,"cssClass",void 0),Ae([t.Property("@")],s.prototype,"mentionChar",void 0),Ae([t.Property(!1)],s.prototype,"showMentionChar",void 0),Ae([t.Property(!1)],s.prototype,"allowSpaces",void 0),Ae([t.Property(null)],s.prototype,"suffixText",void 0),Ae([t.Property(25)],s.prototype,"suggestionCount",void 0),Ae([t.Property(0)],s.prototype,"minLength",void 0),Ae([t.Property("None")],s.prototype,"sortOrder",void 0),Ae([t.Property(!0)],s.prototype,"ignoreCase",void 0),Ae([t.Property(!1)],s.prototype,"highlight",void 0),Ae([t.Property()],s.prototype,"locale",void 0),Ae([t.Property("auto")],s.prototype,"popupWidth",void 0),Ae([t.Property("300px")],s.prototype,"popupHeight",void 0),Ae([t.Property(null)],s.prototype,"displayTemplate",void 0),Ae([t.Property(null)],s.prototype,"itemTemplate",void 0),Ae([t.Property("No records found")],s.prototype,"noRecordsTemplate",void 0),Ae([t.Property(null)],s.prototype,"spinnerTemplate",void 0),Ae([t.Property()],s.prototype,"target",void 0),Ae([t.Property([])],s.prototype,"dataSource",void 0),Ae([t.Property(null)],s.prototype,"query",void 0),Ae([t.Property("Contains")],s.prototype,"filterType",void 0),Ae([t.Complex({text:null,value:null,iconCss:null,groupBy:null},V)],s.prototype,"fields",void 0),Ae([t.Event()],s.prototype,"actionBegin",void 0),Ae([t.Event()],s.prototype,"actionComplete",void 0),Ae([t.Event()],s.prototype,"actionFailure",void 0),Ae([t.Event()],s.prototype,"change",void 0),Ae([t.Event()],s.prototype,"beforeOpen",void 0),Ae([t.Event()],s.prototype,"opened",void 0),Ae([t.Event()],s.prototype,"closed",void 0),Ae([t.Event()],s.prototype,"select",void 0),Ae([t.Event()],s.prototype,"filtering",void 0),Ae([t.Event()],s.prototype,"created",void 0),Ae([t.Event()],s.prototype,"destroyed",void 0),s=Ae([t.NotifyPropertyChanges],s)}(F);return q.Inject(T),ne.Inject(T),ae.Inject(T),ye.Inject(Ce),Ie.Inject(Ce),e.incrementalSearch=h,e.Search=p,e.escapeCharRegExp=u,e.resetIncrementalSearchValues=d,e.highlightSearch=c,e.revertHighlightSearch=f,e.VirtualScroll=T,e.FieldSettings=V,e.dropDownBaseClasses=U,e.DropDownBase=F,e.dropDownListClasses=M,e.DropDownList=q,e.Fields=Z,e.TreeSettings=ee,e.DropDownTree=te,e.ComboBox=ne,e.AutoComplete=ae,e.MultiSelect=ye,e.CheckBoxSelection=Ce,e.createFloatLabel=v,e.updateFloatLabelState=g,e.removeFloating=y,e.setPlaceHolder=C,e.floatLabelFocus=b,e.floatLabelBlur=E,e.encodePlaceholder=S,e.SelectionSettings=Se,e.ToolbarSettings=xe,e.ListBox=Ie,e.Mention=ke,e}({},ej.base,ej.data,ej.lists,ej.popups,ej.inputs,ej.notifications,ej.buttons,ej.navigations),this.ejs=ej;
|
|
10
|
+
this.ej=this.ej||{},this.ej.dropdowns=function(e,t,i,s,l,n,o,r,a){"use strict";function h(e,t,i,s,l,n,o,r,a){n&&""!==x?x==I&&(w=String.fromCharCode(e)):""!=w?(x=w+String.fromCharCode(e),w=""):x+=String.fromCharCode(e),r?(setTimeout(function(){w=""},700),setTimeout(function(){x=""},3e3)):setTimeout(function(){x=""},1e3);var h;if(x=s?x.toLowerCase():x,k!==l||I!==x||a){var p=t,u=x.length,d=void 0,c=i=i?i+1:0;O=[];do{c===p.length&&(c=-1),d=p[h=-1===c?0:c],(s?d.innerText.toLowerCase():d.innerText).substr(0,u)===x&&O.push(p[h]),c++}while(c!==i);if(I=x,k=l,r){for(var m=!1,f=0;f<O.length;f++)if(o&&O[f].textContent.toLowerCase()===o.toLowerCase()){h=f,m=!0;break}return o&&m&&(h+=1),O[h]?O[h]:O[0]}return O[0]}for(c=0;c<O.length;c++){if(O[c].classList.contains(A)){h=c;break}if(o&&O[c].textContent.toLowerCase()===o.toLowerCase()){h=c;break}}return h+=1,r?O[h]&&O.length-1!=h?O[h]:O[O.length]:O[h]?O[h]:O[0]}function p(e,t,i,s,l,n,o){var r=t;s=void 0===s||null===s||s;var a={item:null,index:null};if(e&&e.length){var h=e.length,p=s?e.toLocaleLowerCase():e;p=u(p);for(var d=0,c=r;d<c.length;d++){var m=function(e,r){var u,d=r[e],c=void 0;if(t&&l){var m=d,f=n.text.split(".");l.filter(function(e){Array.prototype.slice.call(f).forEach(function(t){("object"===o&&!e.isHeader&&-1!==m.textContent.toString().indexOf(e[t])&&m.getAttribute("data-value")===e[n.value].toString()||"string"===o&&-1!==m.textContent.toString().indexOf(e))&&(u="object"===o?e[t]:e)})})}if(c=l&&u?(s?u.toString().toLocaleLowerCase():u).replace(/^\s+|\s+$/g,""):(s?d.textContent.toLocaleLowerCase():d.textContent).replace(/^\s+|\s+$/g,""),"Equal"===i&&c===p||"StartsWith"===i&&c.substr(0,h)===p||"EndsWith"===i&&c.substr(c.length-p.length)===p||"Contains"===i&&new RegExp(p,"g").test(c))return a.item=d,a.index=e,{value:{item:d,index:e}}}(d,c);if("object"==typeof m)return m.value}return a}return a}function u(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function d(e){k===e&&(k="",I="",x="",O=[])}function c(e,t,i,s){if(""!==t){var l=i?"gim":"gm";t=/^[a-zA-Z0-9- ]*$/.test(t)?t:t.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&");var n="StartsWith"===s?"^("+t+")":"EndsWith"===s?"("+t+")$":"("+t+")";m(e,new RegExp(n,l))}}function m(e,t){for(var i=0;e.childNodes&&i<e.childNodes.length;i++){if(3===e.childNodes[i].nodeType&&""!==e.childNodes[i].textContent.trim()){var s=e.childNodes[i].nodeValue.trim().replace(t,'<span class="e-highlight">$1</span>');e.childNodes[i].nodeValue="",e.innerHTML=e.innerHTML.trim()+s;break}m(e.childNodes[i],t)}}function f(e){for(var t=e.querySelectorAll(".e-highlight"),i=t.length-1;i>=0;i--){var s=t[i].parentNode,l=document.createTextNode(t[i].textContent);s.replaceChild(l,t[i])}}function v(e,i,s,l,n,o,r){var a=t.createElement("span",{className:he}),h=t.createElement("label",{className:pe}),p=s.getAttribute("id")?s.getAttribute("id"):t.getUniqueID("ej2_multiselect");s.id=p,t.isNullOrUndefined(s.id)||""===s.id||(h.id="label_"+s.id.replace(/ /g,"_"),t.attributes(l,{"aria-labelledby":h.id})),t.isNullOrUndefined(l.placeholder)||""===l.placeholder||(h.innerText=S(l.placeholder),l.removeAttribute("placeholder")),h.innerText=S(r),i.appendChild(a),i.appendChild(h),e.classList.add("e-float-input"),g(n,h),"Always"===o&&(h.classList.contains(de)&&t.removeClass([h],de),t.addClass([h],ue))}function g(e,i){e&&e.length>0?(t.addClass([i],ue),t.removeClass([i],de)):(t.removeClass([i],ue),t.addClass([i],de))}function y(e,i,s,l,n,o,r){var a,h=i.querySelector("."+pe),p=i.querySelector("."+he);t.isNullOrUndefined(h)?C(n,l,a=null!==r?r:""):(a=h.innerText,t.detach(s.querySelector("."+pe)),C(n,l,a),t.isNullOrUndefined(p)||t.detach(s.querySelector("."+he))),e.classList.remove("e-float-input")}function C(e,t,i){e&&e.length?t.placeholder="":t.placeholder=i}function b(e,i){e.classList.add("e-input-focus");var s=i.querySelector("."+pe);t.isNullOrUndefined(s)||(t.addClass([s],ue),s.classList.contains(de)&&t.removeClass([s],de))}function E(e,i,s,l,n){e.classList.remove("e-input-focus");var o=i.querySelector("."+pe);s&&s.length<=0&&"Auto"===l&&!t.isNullOrUndefined(o)&&(o.classList.contains(ue)&&t.removeClass([o],ue),t.addClass([o],de))}function S(e){var i="";if(!t.isNullOrUndefined(e)&&""!==e){var s=document.createElement("span");s.innerHTML='<input placeholder="'+e+'"/>',i=s.children[0].placeholder}return i}var x="",I="",w="",O=[],A="e-active",k="",D=function(){return(D=Object.assign||function(e){for(var t,i=1,s=arguments.length;i<s;i++){t=arguments[i];for(var l in t)Object.prototype.hasOwnProperty.call(t,l)&&(e[l]=t[l])}return e}).apply(this,arguments)},N=function(e,t,i,s){return new(i||(i=Promise))(function(l,n){function o(e){try{a(s.next(e))}catch(e){n(e)}}function r(e){try{a(s.throw(e))}catch(e){n(e)}}function a(e){e.done?l(e.value):new i(function(t){t(e.value)}).then(o,r)}a((s=s.apply(e,t||[])).next())})},L=function(e,t){function i(e){return function(t){return s([e,t])}}function s(i){if(l)throw new TypeError("Generator is already executing.");for(;a;)try{if(l=1,n&&(o=2&i[0]?n.return:i[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,i[1])).done)return o;switch(n=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,n=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(o=a.trys,!(o=o.length>0&&o[o.length-1])&&(6===i[0]||2===i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(6===i[0]&&a.label<o[1]){a.label=o[1],o=i;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(i);break}o[2]&&a.ops.pop(),a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e],n=0}finally{l=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}var l,n,o,r,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r},T=function(){function e(e){var t=this;this.sentinelInfo={up:{check:function(e,i){var s=e.top-t.containerElementRect.top;return i.entered=s>=0,s+t.parent.listItemHeight*t.parent.virtualItemCount/2>=0},axis:"Y"},down:{check:function(e,i){t.parent.popupContentElement.clientHeight;var s=e.bottom;return i.entered=e.bottom<=t.containerElementRect.bottom,s-t.parent.listItemHeight*t.parent.virtualItemCount/2<=t.parent.listItemHeight*t.parent.virtualItemCount/2},axis:"Y"}},this.parent=e,this.removeEventListener(),this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.isDestroyed||(this.parent.on("observe",this.observe,this),this.parent.on("setGeneratedData",this.setGeneratedData,this),this.parent.on("dataProcessAsync",this.dataProcessAsync,this),this.parent.on("setCurrentViewDataAsync",this.setCurrentViewDataAsync,this),this.parent.on("bindScrollEvent",this.bindScrollEvent,this))},e.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off("observe",this.observe),this.parent.off("setGeneratedData",this.setGeneratedData),this.parent.off("dataProcessAsync",this.dataProcessAsync),this.parent.off("setCurrentViewDataAsync",this.setCurrentViewDataAsync),this.parent.off("bindScrollEvent",this.bindScrollEvent))},e.prototype.bindScrollEvent=function(e){var t=this;this.component=e.component,this.observe(function(e){return t.scrollListener(e)})},e.prototype.observe=function(e){this.containerElementRect=this.parent.popupContentElement.getBoundingClientRect(),t.EventHandler.add(this.parent.popupContentElement,"wheel mousedown",this.popupScrollHandler,this),this.touchModule=new t.Touch(this.parent.popupContentElement,{scroll:this.popupScrollHandler.bind(this)}),t.EventHandler.add(this.parent.popupContentElement,"scroll",this.virtualScrollHandler(e),this)},e.prototype.getModuleName=function(){return"VirtualScroll"},e.prototype.popupScrollHandler=function(e){this.parent.isMouseScrollAction=!0,this.parent.isPreventScrollAction=!1},e.prototype.getPageQuery=function(e,t,i){return 0===i||this.parent.allowFiltering||"autocomplete"===this.component||(e=e.skip(t)),e},e.prototype.setGeneratedData=function(e,t){for(var i=0,s=this.parent.listData.length+this.parent.virtualItemStartIndex,l=this.parent.virtualItemStartIndex;l<s;l++){if(!this.parent.generatedDataObject[l]&&null!==t&&this.parent.listData.slice(i,i+1).length>0){var n=this.parent.listData.slice(i,i+1);n.length>0&&(this.parent.generatedDataObject[l]=n)}i++}},e.prototype.generateAndExecuteQueryAsync=function(e,s,l,n){void 0===s&&(s=0),void 0===l&&(l=0),void 0===n&&(n=!1);var o=this.parent.dataSource;if(!n)if(t.isNullOrUndefined(this.parent.query))e=this.getPageQuery(e,s,l);else{var r=this.removeSkipAndTakeEvents(this.parent.query.clone());e=this.getPageQuery(r,s,l)}var a=this.parent.isCustomFilter;if("combobox"===this.component){var h=0;this.parent.dataSource instanceof i.DataManager?h=this.parent.dataSource.dataSource.json.length:this.parent.dataSource&&this.parent.dataSource.length>0&&(h=this.parent.dataSource.length),h>0&&(this.parent.isCustomFilter=h==this.parent.totalItemCount&&this.parent.queryString!=this.parent.typedString||this.parent.isCustomFilter)}this.parent.resetList(o,this.parent.fields,e),this.parent.isCustomFilter=a},e.prototype.removeSkipAndTakeEvents=function(e){return e.queries=e.queries.filter(function(e){return"onSkip"!==e.fn&&"onTake"!==e.fn}),e},e.prototype.setCurrentViewDataAsync=function(){for(var e=[],t=this.parent.viewPortInfo.startIndex;t<this.parent.viewPortInfo.endIndex;t++){var i=this.parent.generatedDataObject[t];i&&e.push(i[0])}this.parent.renderItems(e,this.parent.fields);var s=this.parent.list.getElementsByClassName("e-virtual-ddl")[0];s&&(s.style=this.parent.GetVirtualTrackHeight()),this.parent.UpdateSkeleton(),this.parent.liCollections=this.parent.list.querySelectorAll(".e-list-item");var l=this.parent.list.getElementsByClassName("e-virtual-ddl-content")[0];l&&(l.style=this.parent.getTransformValues()),this.parent.fields.groupBy&&this.parent.scrollStop()},e.prototype.generateQueryAndSetQueryIndexAsync=function(e,t){var i=!1,s=0,l=0,n=this.parent&&0!==this.parent.viewPortInfo.endIndex?this.parent.viewPortInfo.endIndex:0+this.parent.getItems().length;if(!t&&0!==n)for(var o=this.parent.viewPortInfo.startIndex;o<=n;o++)o in this.parent.generatedDataObject||(i?l=o===n?o:o+1:(i=!0,s=l=o));!i||this.parent.totalItemCount==s&&this.parent.totalItemCount==l||(this.parent.virtualItemStartIndex=s,this.parent.virtualItemEndIndex=l,this.generateAndExecuteQueryAsync(e,s,l)),this.setCurrentViewDataAsync()},e.prototype.dataProcessAsync=function(e){this.parent.selectedValueInfo=null,this.parent.virtualItemStartIndex=this.parent.viewPortInfo.startIndex,this.parent.virtualItemEndIndex=this.parent.viewPortInfo.endIndex,this.generateQueryAndSetQueryIndexAsync(new i.Query,e)},e.prototype.virtualScrollRefreshAsync=function(){return N(this,void 0,void 0,function(){return L(this,function(e){switch(e.label){case 0:return this.parent.isCustomFilter=!(this.parent.isTyped||"combobox"===this.component&&this.parent.allowFiltering&&this.parent.queryString!=this.parent.typedString||!t.isNullOrUndefined(this.parent.filterInput)&&!t.isNullOrUndefined(this.parent.filterInput.value)&&""!==this.parent.filterInput.value&&"combobox"!==this.component)&&!("autocomplete"===this.component&&null!=this.parent.value)||this.parent.isCustomFilter,(this.parent.allowFiltering||"autocomplete"===this.component)&&(t.isNullOrUndefined(this.parent.typedString)||"combobox"===this.component&&!t.isNullOrUndefined(this.parent.typedString)&&this.parent.allowFiltering?(this.parent.getSkeletonCount(!0),"combobox"===this.component&&(this.parent.skeletonCount=0!=this.parent.totalItemCount&&this.parent.totalItemCount<2*this.parent.itemCount?0:this.parent.skeletonCount)):(this.parent.viewPortInfo.endIndex>=this.parent.dataCount&&(this.parent.viewPortInfo.endIndex=this.parent.dataCount),this.parent.viewPortInfo.startIndex>=this.parent.dataCount&&(this.parent.viewPortInfo.startIndex=this.parent.dataCount-this.parent.itemCount))),[4,this.dataProcessAsync()];case 1:return e.sent(),null!=this.parent.keyboardEvent&&this.parent.handleVirtualKeyboardActions(this.parent.keyboardEvent,this.parent.pageCount),this.parent.isCustomFilter=!1,[2]}})})},e.prototype.scrollListener=function(e){var i=this;if(!this.parent.isPreventScrollAction){var s=e.sentinel,l=this.parent.previousStartIndex;if(this.parent.viewPortInfo=this.getInfoFromView(e.direction,s,e.offset,!1),this.parent.isUpwardScrolling=!1,this.parent.previousStartIndex===l||this.parent.isKeyBoardAction){if(this.parent.isScrollActionTriggered){this.parent.isPreventKeyAction=!1,this.parent.isScrollActionTriggered=!1;var n=this.parent.list.querySelectorAll(".e-virtual-list").length,o=this.parent.list.querySelector(".e-list-item"),r=e.offset.top-o.offsetHeight*n;this.parent.list.getElementsByClassName("e-virtual-ddl-content")[0].style.transform="translate(0px,"+r+"px)"}}else this.parent.isScrollActionTriggered=!1,this.parent.currentPageNumber=this.parent.viewPortInfo.currentPageNumber,this.parent.virtualListInfo=D({},this.parent.viewPortInfo),this.parent.isPreventKeyAction=!0,this.parent.isVirtualScrolling=!0,setTimeout(function(){i.parent.pageCount=i.parent.getPageCount(),i.virtualScrollRefreshAsync().then(function(){i.parent.popupObj&&(i.parent.list=i.parent.popupObj.element.querySelector(".e-content")||t.select(".e-content"),i.parent.updateSelectionList(),i.parent.liCollections=i.parent.getItems()),i.parent.isKeyBoardAction=!1,i.parent.isVirtualScrolling=!1,i.parent.isPreventKeyAction=!1})},5);this.parent.previousInfo=this.parent.viewPortInfo}},e.prototype.getPageCount=function(e,t){void 0===t&&(t=!1);var i=e&&e.querySelector(".e-content");if(i){var s=i.classList.contains("e-nodata")?null:getComputedStyle(i.querySelectorAll(".e-list-item")[0],null).getPropertyValue("height"),l=i.getBoundingClientRect().height/parseInt(s,10);return t?l:Math.round(l)}return 0},e.prototype.getRowHeight=function(){return t.isNullOrUndefined(this.parent.liCollections)||0==this.parent.liCollections.length?0:Math.ceil(this.parent.liCollections[0].getBoundingClientRect().height)},e.prototype.getInfoFromView=function(e,i,s,l){var n={direction:e,sentinelInfo:i,offsets:s,startIndex:this.parent.previousStartIndex,endIndex:this.parent.previousEndIndex},o=this.parent.popupContentElement.getBoundingClientRect().height,r=this.parent.listItemHeight,a=s.top/r,h=o/r,p=a+h,u=this.parent.virtualItemCount/4,d=this.parent.totalItemCount;if("down"===n.direction){f=Math.round(p)-Math.round(u);if(t.isNullOrUndefined(n.startIndex)||p>n.startIndex+Math.round(this.parent.virtualItemCount/2+u)&&n.endIndex!==d){n.startIndex=f>=0?Math.round(f):0,n.startIndex=n.startIndex>a?Math.floor(a):n.startIndex;m=n.startIndex+this.parent.virtualItemCount;n.startIndex=m<p?Math.ceil(p)-this.parent.virtualItemCount:n.startIndex,n.endIndex=m<d?m:d,n.startIndex=m>=d?n.endIndex-this.parent.virtualItemCount>0?n.endIndex-this.parent.virtualItemCount:0:n.startIndex,n.currentPageNumber=Math.ceil(n.endIndex/this.parent.virtualItemCount)}}else if("up"===n.direction&&n.startIndex&&n.endIndex&&a<Math.round((n.startIndex*r+u*r)/r)){var c=u>h?u:h+h/4,m=Math.round(a+c);n.endIndex=m<d?m:d;var f=n.endIndex-this.parent.virtualItemCount;n.startIndex=f>0?f:0,n.endIndex=f<0?this.parent.virtualItemCount:n.endIndex,n.currentPageNumber=Math.ceil(n.startIndex/this.parent.virtualItemCount)}return l?this.parent.scrollPreStartIndex=n.startIndex:(this.parent.previousStartIndex=n.startIndex,this.parent.startIndex=n.startIndex,this.parent.previousEndIndex=n.endIndex),n},e.prototype.virtualScrollHandler=function(e){var i=this,s="chrome"===t.Browser.info.name?200:100,l=0,n=t.debounce(e,s),o=t.debounce(e,50);return function(e){var t=e.target.scrollTop,s=e.target.scrollLeft,r=l<t&&!i.parent.isUpwardScrolling?"down":"up";l=t;var a=i.sentinelInfo[r],h=i.parent.scrollPreStartIndex,p={top:t,left:s};if(i.parent.list.querySelectorAll(".e-virtual-list").length>0){i.getInfoFromView(r,a,p,!0);i.parent.scrollPreStartIndex==h||i.parent.isPreventScrollAction||(i.parent.isScrollActionTriggered=!0,i.parent.list.querySelector(".e-virtual-ddl-content").style.transform="translate(0px,"+t+"px)")}var u=n;"X"===a.axis&&(u=o),u({direction:r,sentinel:a,offset:{top:t,left:s},focusElement:document.activeElement})}},e.prototype.destroy=function(){this.removeEventListener()},e}(),B=function(){var e=function(t,i){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)t.hasOwnProperty(i)&&(e[i]=t[i])})(t,i)};return function(t,i){function s(){this.constructor=t}e(t,i),t.prototype=null===i?Object.create(i):(s.prototype=i.prototype,new s)}}(),P=function(e,t,i,s){var l,n=arguments.length,o=n<3?t:null===s?s=Object.getOwnPropertyDescriptor(t,i):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(e,t,i,s);else for(var r=e.length-1;r>=0;r--)(l=e[r])&&(o=(n<3?l(o):n>3?l(t,i,o):l(t,i))||o);return n>3&&o&&Object.defineProperty(t,i,o),o},V=function(e){function i(){return null!==e&&e.apply(this,arguments)||this}return B(i,e),P([t.Property()],i.prototype,"text",void 0),P([t.Property()],i.prototype,"value",void 0),P([t.Property()],i.prototype,"iconCss",void 0),P([t.Property()],i.prototype,"groupBy",void 0),P([t.Property()],i.prototype,"htmlAttributes",void 0),i}(t.ChildProperty),U={root:"e-dropdownbase",rtl:"e-rtl",content:"e-content",selected:"e-active",hover:"e-hover",noData:"e-nodata",fixedHead:"e-fixed-head",focus:"e-item-focus",li:"e-list-item",group:"e-list-group-item",disabled:"e-disabled",grouping:"e-dd-group"},F=function(e){function l(t,i){var s=e.call(this,t,i)||this;return s.preventChange=!1,s.isAngular=!1,s.isPreventChange=!1,s.isDynamicDataChange=!1,s.addedNewItem=!1,s.isAddNewItemTemplate=!1,s.isRequesting=!1,s.isVirtualizationEnabled=!1,s.isAllowFiltering=!1,s.virtualizedItemsCount=0,s.totalItemCount=0,s.dataCount=0,s.isRemoteDataUpdated=!1,s.isIncrementalRequest=!1,s.itemCount=10,s}return B(l,e),l.prototype.getPropObject=function(e,t,i){var s=new Object,l=new Object,n=function(e){return e};s[n(e)]=t[n(e)],l[n(e)]=i[n(e)];var o=new Object;return o.newProperty=s,o.oldProperty=l,o},l.prototype.getValueByText=function(e,i,s){var l=null;return t.isNullOrUndefined(this.listData)||(l=i?this.checkValueCase(e,!0,s):this.checkValueCase(e,!1,s)),l},l.prototype.checkValueCase=function(e,i,s,l){var n=this,o=null;l&&(o=e);var r=this.listData,a=this.fields,h=this.typeOfData(r).typeof;if("string"===h||"number"===h||"boolean"===h)for(var p=0,u=r;p<u.length;p++){var d=u[p];t.isNullOrUndefined(d)||(s?o=this.checkingAccent(String(d),e,i):i?this.checkIgnoreCase(String(d),e)&&(o=this.getItemValue(String(d),e,i)):this.checkNonIgnoreCase(String(d),e)&&(o=this.getItemValue(String(d),e,i,l)))}else if(i)r.filter(function(i){var s=t.getValue(a.value,i);!t.isNullOrUndefined(s)&&n.checkIgnoreCase(t.getValue(a.text,i).toString(),e)&&(o=t.getValue(a.value,i))});else if(l){var c=null;c=o,r.filter(function(e){var i=t.getValue(a.value,e);t.isNullOrUndefined(i)||t.isNullOrUndefined(o)||i.toString()!==c.toString()||(o=t.getValue(a.text,e))})}else r.filter(function(i){n.checkNonIgnoreCase(t.getValue(a.text,i),e)&&(o=t.getValue(a.value,i))});return o},l.prototype.checkingAccent=function(e,t,s){var l=i.DataUtil.ignoreDiacritics(String(e)),n=i.DataUtil.ignoreDiacritics(t.toString()),o=null;return s?this.checkIgnoreCase(l,n)&&(o=this.getItemValue(String(e),t,s)):this.checkNonIgnoreCase(String(e),t)&&(o=this.getItemValue(String(e),t,s)),o},l.prototype.checkIgnoreCase=function(e,t){return String(e).toLowerCase()===t.toString().toLowerCase()},l.prototype.checkNonIgnoreCase=function(e,t){return String(e)===t.toString()},l.prototype.getItemValue=function(e,t,i,s){var l=this.listData,n=this.typeOfData(l).typeof;return s?e.toString():i?"string"===n?String(e):this.getFormattedValue(String(e)):"string"===n?t:this.getFormattedValue(t)},l.prototype.templateCompiler=function(e){var i=!1;if("function"!=typeof e&&e)try{i=!!t.selectAll(e,document).length}catch(e){i=!1}return i},l.prototype.l10nUpdate=function(e){var i="listbox"===this.getModuleName()?this.ulElement:this.list;if("No records found"!==this.noRecordsTemplate||"Request failed"!==this.actionFailureTemplate){var s=e?this.actionFailureTemplate:this.noRecordsTemplate,l=void 0,n=e?this.actionFailureTemplateId:this.noRecordsTemplateId;i.innerHTML="";var o=this.templateCompiler(s);l="function"!=typeof s&&o?t.compile(t.select(s,document).innerHTML.trim()):t.compile(s);var r=e?"actionFailureTemplate":"noRecordsTemplate",a=void 0;if((a=this.isReact&&"function"==typeof s?l({},this,r,n,this.isStringTemplate,null):l({},this,r,n,this.isStringTemplate,null,i))&&a.length>0)for(var h=0;h<a.length;h++)"listbox"===this.getModuleName()&&"noRecordsTemplate"===r?"#text"===a[h].nodeName?((c=this.createElement("li")).textContent=a[h].textContent,c.classList.add("e-list-nrt"),c.setAttribute("role","option"),i.appendChild(c)):(a[h].classList.add("e-list-nr-template"),i.appendChild(a[h])):(a[h]instanceof HTMLElement||a[h]instanceof Text)&&i.appendChild(a[h]);this.renderReactTemplates()}else{var p={noRecordsTemplate:"No records found",actionFailureTemplate:"Request failed"},u=new t.L10n(this.getLocaleName(),{},this.locale);""!==u.getConstant("actionFailureTemplate")||""!==u.getConstant("noRecordsTemplate")?this.l10n=u:this.l10n=new t.L10n("listbox"===this.getModuleName()?"listbox":"mention"===this.getModuleName()?"mention":"dropdowns",p,this.locale);var d=e?this.l10n.getConstant("actionFailureTemplate"):this.l10n.getConstant("noRecordsTemplate");if("listbox"===this.getModuleName()){var c=this.createElement("li");c.textContent=d,i.appendChild(c),c.classList.add("e-list-nrt"),c.setAttribute("role","option")}else t.isNullOrUndefined(i)||(i.innerHTML=d)}},l.prototype.getLocaleName=function(){return"drop-down-base"},l.prototype.getTextByValue=function(e){return this.checkValueCase(e,!1,!1,!0)},l.prototype.getFormattedValue=function(e){if(this.listData&&this.listData.length){var i=void 0;if(i=this.properties.allowCustomValue&&this.properties.value&&this.properties.value instanceof Array&&this.properties.value.length>0?this.typeOfData(this.properties.value):this.typeOfData(this.listData),"number"==typeof t.getValue(this.fields.value?this.fields.value:"value",i.item)||"number"===i.typeof)return parseFloat(e);if("boolean"==typeof t.getValue(this.fields.value?this.fields.value:"value",i.item)||"boolean"===i.typeof)return"true"===e||""+e=="true"}return e},l.prototype.setEnableRtl=function(){t.isNullOrUndefined(this.enableRtlElements)||(this.list&&this.enableRtlElements.push(this.list),this.enableRtl?t.addClass(this.enableRtlElements,U.rtl):t.removeClass(this.enableRtlElements,U.rtl))},l.prototype.initialize=function(e){if(this.bindEvent=!0,this.actionFailureTemplateId=this.element.id+"ActionFailureTemplate","UL"===this.element.tagName){var i=s.ListBase.createJsonFromElement(this.element);this.setProperties({fields:{text:"text",value:"text"}},!0),this.resetList(i,this.fields)}else"SELECT"===this.element.tagName?(this.dataSource instanceof Array?this.dataSource.length>0:!t.isNullOrUndefined(this.dataSource))?this.isDynamicDataChange&&this.setListData(this.dataSource,this.fields,this.query):this.renderItemsBySelect():this.setListData(this.dataSource,this.fields,this.query,e)},l.prototype.getPersistData=function(){return this.addOnPersist([])},l.prototype.updateDataAttribute=function(e){for(var i=["class","style","id","type","aria-expanded","aria-autocomplete","aria-readonly"],s={},l=0;l<this.element.attributes.length;l++)-1!==i.indexOf(this.element.attributes[l].name)||"dropdownlist"===this.getModuleName()&&"readonly"===this.element.attributes[l].name||(s[this.element.attributes[l].name]=this.element.getAttribute(this.element.attributes[l].name));t.extend(s,e,s),this.setProperties({htmlAttributes:s},!0)},l.prototype.renderItemsBySelect=function(){var e=this.element,t={value:"value",text:"text"},i=[],s=e.querySelectorAll("select>optgroup"),l=e.querySelectorAll("select>option");if(this.getJSONfromOption(i,l,t),s.length){for(var n=0;n<s.length;n++){var o=s[n],r={};r[t.text]=o.label,r.isHeader=!0;var a=o.querySelectorAll("option");i.push(r),this.getJSONfromOption(i,a,t)}e.querySelectorAll("select>option")}this.updateFields(t.text,t.value,this.fields.groupBy,this.fields.htmlAttributes,this.fields.iconCss),this.resetList(i,t)},l.prototype.updateFields=function(e,i,s,l,n){var o={fields:{text:e,value:i,groupBy:t.isNullOrUndefined(s)?this.fields&&this.fields.groupBy:s,htmlAttributes:t.isNullOrUndefined(l)?this.fields&&this.fields.htmlAttributes:l,iconCss:t.isNullOrUndefined(n)?this.fields&&this.fields.iconCss:n}};this.setProperties(o,!0)},l.prototype.getJSONfromOption=function(e,i,s){for(var l=0,n=i;l<n.length;l++){var o=n[l],r={};r[s.text]=o.innerText,r[s.value]=t.isNullOrUndefined(o.getAttribute(s.value))?o.innerText:o.getAttribute(s.value),e.push(r)}},l.prototype.preRender=function(){this.scrollTimer=-1,this.enableRtlElements=[],this.isRequested=!1,this.isDataFetched=!1,this.itemTemplateId=this.element.id+"ItemTemplate",this.displayTemplateId=this.element.id+"DisplayTemplate",this.spinnerTemplateId=this.element.id+"SpinnerTemplate",this.valueTemplateId=this.element.id+"ValueTemplate",this.groupTemplateId=this.element.id+"GroupTemplate",this.headerTemplateId=this.element.id+"HeaderTemplate",this.footerTemplateId=this.element.id+"FooterTemplate",this.noRecordsTemplateId=this.element.id+"NoRecordsTemplate"},l.prototype.setListData=function(e,t,s,l){var n=this;t=t||this.fields;var o;this.isActive=!0;var r={cancel:!1,data:e,query:s};this.isPreventChange=!(!this.isAngular||!this.preventChange)||this.isPreventChange,this.isRequesting||this.trigger("actionBegin",r,function(r){if(!r.cancel)if(n.isRequesting=!0,n.showSpinner(),e instanceof i.DataManager&&!n.virtualGroupDataSource){if(n.isRequested=!0,n.isDataFetched)return void n.emptyDataRequest(t);r.data.executeQuery(n.getQuery(r.query)).then(function(e){n.isPreventChange=!(!n.isAngular||!n.preventChange)||n.isPreventChange,n.trigger("actionComplete",e,function(e){if(!n.virtualGroupDataSource&&n.isVirtualizationEnabled){if(n.isRemoteDataUpdated=!0,"combobox"===n.getModuleName()&&!n.initialRemoteRender&&n.isAllowFiltering&&n.isVirtualizationEnabled&&e.result&&(e.result=e.result.result),e.result.length>0){var r=e.result;if(!n.isVirtualizationEnabled||!n.fields.groupBy)return n.virtualGroupDataSource=r,n.hideSpinner(),n.isRequested=!1,n.isRequesting=!1,void n.setListData(r,t,s,l);var a=new i.DataManager(r).executeLocal((new i.Query).group(n.fields.groupBy));n.virtualGroupDataSource=a.records}return n.hideSpinner(),n.isRequested=!1,n.isRequesting=!1,void n.updatePopupState()}if(!e.cancel){n.isRequesting=!1;var h=e.result;if(n.isIncrementalRequest)return void(o=n.renderItems(h,t));0===h.length&&(n.isDataFetched=!0),n.dataCount=e.count,n.totalItemCount=e.count,o=n.renderItems(h,t),n.onActionComplete(o,h,e),n.groupTemplate&&n.renderGroupTemplate(o),n.isRequested=!1,n.bindChildItems(h,o,t,e)}})}).catch(function(e){n.isRequested=!1,n.isRequesting=!1,n.onActionFailure(e),n.hideSpinner()})}else{n.isRequesting=!1;var a=void 0;if(n.isVirtualizationEnabled&&!n.virtualGroupDataSource&&n.fields.groupBy){var h=new i.DataManager(n.dataSource).executeLocal((new i.Query).group(n.fields.groupBy));n.virtualGroupDataSource=h.records}var p=n.isVirtualizationEnabled&&n.virtualGroupDataSource?new i.DataManager(n.virtualGroupDataSource):new i.DataManager(r.data);if(a=n.getQuery(r.query).executeLocal(p),n.isVirtualizationEnabled&&"autocomplete"===n.getModuleName()&&0!=a.count&&a.count<2*n.itemCount){var u=n.getQuery(r.query);if(u)for(var d=0;d<u.queries.length;d++)if("onTake"===u.queries[d].fn){u.queries[d].e.nos=a.count,a=u.executeLocal(p);break}}n.dataCount=a.count,n.totalItemCount=a.count;var c={cancel:!1,result:a=n.isVirtualizationEnabled?a.result:a};n.isPreventChange=!(!n.isAngular||!n.preventChange)||n.isPreventChange,n.trigger("actionComplete",c,function(e){if(n.isIncrementalRequest)return void(o=n.renderItems(e.result,t));e.cancel||(o=n.renderItems(e.result,t),n.onActionComplete(o,e.result,l),n.groupTemplate&&n.renderGroupTemplate(o),n.bindChildItems(e.result,o,t),setTimeout(function(){"multiselect"===n.getModuleName()&&null!=n.itemTemplate&&o.childElementCount>0&&(o.children[0].childElementCount>0||n.fields.groupBy&&o.children[1]&&o.children[1].childElementCount>0)&&n.updateDataList()}))})}})},l.prototype.updatePopupState=function(){},l.prototype.updateRemoteData=function(){this.setListData(this.dataSource,this.fields,this.query)},l.prototype.bindChildItems=function(e,i,s,l){var n=this;e.length>=100&&"autocomplete"===this.getModuleName()?setTimeout(function(){var o=n.remainingItems(n.sortedData,s);t.append(o,i),n.liCollections=n.list.querySelectorAll("."+U.li),n.updateListValues(),n.raiseDataBound(e,l)},0):this.raiseDataBound(e,l)},l.prototype.updateListValues=function(){},l.prototype.findListElement=function(e,t,i,s){var l=null;if(e)for(var n=[].slice.call(e.querySelectorAll(t)),o=0;o<n.length;o++)if(n[o].getAttribute(i)===s+""){l=n[o];break}return l},l.prototype.raiseDataBound=function(e,t){this.hideSpinner();var i={items:e,e:t};this.trigger("dataBound",i)},l.prototype.remainingItems=function(e,t){var l=new i.DataManager(e).executeLocal((new i.Query).skip(100));if(this.itemTemplate){var n=this.templateListItem(l,t);return[].slice.call(n.childNodes)}var o=this.typeOfData(l).typeof;return"string"===o||"number"===o||"boolean"===o?s.ListBase.createListItemFromArray(this.createElement,l,!0,this.listOption(l,t),this):s.ListBase.createListItemFromJson(this.createElement,l,this.listOption(l,t),1,!0,this)},l.prototype.emptyDataRequest=function(e){var t=[];this.onActionComplete(this.renderItems(t,e),t),this.isRequested=!1,this.hideSpinner()},l.prototype.showSpinner=function(){},l.prototype.hideSpinner=function(){},l.prototype.onActionFailure=function(e){this.liCollections=[],this.trigger("actionFailure",e),this.l10nUpdate(!0),t.isNullOrUndefined(this.list)||t.addClass([this.list],U.noData)},l.prototype.onActionComplete=function(e,i,s){if(this.listData=i,this.isVirtualizationEnabled&&this.notify("setGeneratedData",{module:"VirtualScroll"}),"listbox"!==this.getModuleName()&&e.setAttribute("tabindex","0"),this.isReact&&this.clearTemplate(["itemTemplate","groupTemplate","actionFailureTemplate","noRecordsTemplate"]),this.isVirtualizationEnabled||(this.fixedHeaderElement=t.isNullOrUndefined(this.fixedHeaderElement)?this.fixedHeaderElement:null),"multiselect"===this.getModuleName()&&this.properties.allowCustomValue&&this.fields.groupBy)for(var l=0;l<e.childElementCount;l++)e.children[l].classList.contains("e-list-group-item")&&(t.isNullOrUndefined(e.children[l].innerHTML)||""==e.children[l].innerHTML)&&t.addClass([e.children[l]],"e-hide-group-header");t.isNullOrUndefined(this.list)||this.isVirtualizationEnabled||(this.list.innerHTML="",this.list.appendChild(e),this.liCollections=this.list.querySelectorAll("."+U.li),this.ulElement=this.list.querySelector("ul"),this.postRender(this.list,i,this.bindEvent))},l.prototype.postRender=function(e,i,s){var l=e.querySelector("."+U.li),n=e.querySelector("."+U.selected);l&&!n&&l.classList.add(U.focus),i.length<=0?(this.l10nUpdate(),t.addClass([e],U.noData)):e.classList.remove(U.noData)},l.prototype.getQuery=function(e){return e||(this.query?this.query:new i.Query)},l.prototype.updateVirtualizationProperties=function(e,t){this.isVirtualizationEnabled=!0,this.virtualizedItemsCount=e,this.isAllowFiltering=t},l.prototype.renderGroupTemplate=function(e){if(null!==this.fields.groupBy&&this.dataSource||this.element.querySelector("."+U.group)){var i=this.dataSource,l={groupTemplateID:this.groupTemplateId,isStringTemplate:this.isStringTemplate},n=e.querySelectorAll("."+U.group),o=this.templateCompiler(this.groupTemplate);if("function"!=typeof this.groupTemplate&&o){var r=t.select(this.groupTemplate,document).innerHTML.trim(),a=s.ListBase.renderGroupTemplate(r,i,this.fields.properties,n,l,this);if(this.isGroupChecking)for(h=0;h<a.length;h++)this.notify("addItem",{module:"CheckBoxSelection",item:a[h]})}else{a=s.ListBase.renderGroupTemplate(this.groupTemplate,i,this.fields.properties,n,l,this);if(this.isGroupChecking)for(var h=0;h<a.length;h++)this.notify("addItem",{module:"CheckBoxSelection",item:a[h]})}this.renderReactTemplates()}},l.prototype.createListItems=function(e,l){if(e){l.groupBy||this.element.querySelector("optgroup")?(l.groupBy&&("None"!==this.sortOrder&&(e=this.getSortedDataSource(e)),e=s.ListBase.groupDataSource(e,l.properties,this.sortOrder)),t.addClass([this.list],U.grouping)):e=this.getSortedDataSource(e);var n=this.listOption(e,l),o=e.length>100?new i.DataManager(e).executeLocal((new i.Query).take(100)):e;return this.sortedData=e,s.ListBase.createList(this.createElement,"autocomplete"===this.getModuleName()?o:e,n,!0,this)}return null},l.prototype.listOption=function(e,i){var s=!t.isNullOrUndefined(i.iconCss),l=t.isNullOrUndefined(i.properties)?i:i.properties,n=null!==i.text||null!==i.value?{fields:l,showIcon:s,ariaAttributes:{groupItemRole:"presentation"}}:{fields:{value:"text"}};return t.extend({},n,i,!0)},l.prototype.setFloatingHeader=function(e){t.isNullOrUndefined(this.list)||this.list.classList.contains(U.noData)||(t.isNullOrUndefined(this.fixedHeaderElement)&&(this.fixedHeaderElement=this.createElement("div",{className:U.fixedHead}),t.isNullOrUndefined(this.list)||this.list.querySelector("li").classList.contains(U.group)||(this.fixedHeaderElement.style.display="none"),t.isNullOrUndefined(this.fixedHeaderElement)||t.isNullOrUndefined(this.list)||t.prepend([this.fixedHeaderElement],this.list),this.setFixedHeader()),t.isNullOrUndefined(this.fixedHeaderElement)||"0"!==this.fixedHeaderElement.style.zIndex||this.setFixedHeader(),this.scrollStop(e))},l.prototype.scrollStop=function(e,i){for(var s=t.isNullOrUndefined(e)?this.list:e.target,l=parseInt(getComputedStyle(this.getValidLi(),null).getPropertyValue("height"),10),n=Math.round(s.scrollTop/l),o=this.list.querySelectorAll("li:not(.e-hide-listitem)"),r=this.list.querySelectorAll(".e-virtual-list").length,a=0,h=!1,p=n;p>-1;p--){var u=this.isVirtualizationEnabled?p+r:p;if(this.isVirtualizationEnabled){var d=this.list.querySelectorAll(".e-list-group-item").length,c=0;if(h&&a++,this.updateGroupHeader(u,o,s)){if(c++,a>=this.getPageCount())break;if(d<=c)break}i&&(!t.isNullOrUndefined(o[u])&&o[u].classList.contains(U.selected)&&"autocomplete"!==this.getModuleName()||!t.isNullOrUndefined(o[u])&&o[u].classList.contains(U.focus)&&"autocomplete"===this.getModuleName())&&(a++,h=!0)}else if(this.updateGroupHeader(u,o,s))break}},l.prototype.getPageCount=function(e){var t=this.list.classList.contains(U.noData)?null:getComputedStyle(this.getItems()[0],null).getPropertyValue("height"),i=Math.round(this.list.getBoundingClientRect().height/parseInt(t,10));return e?i:Math.round(i)},l.prototype.updateGroupHeader=function(e,i,s){return!t.isNullOrUndefined(i[e])&&i[e].classList.contains(U.group)?(this.updateGroupFixedHeader(i[e],s),!0):(this.fixedHeaderElement.style.display="none",this.fixedHeaderElement.style.top="none",!1)},l.prototype.updateGroupFixedHeader=function(e,t){this.fixedHeaderElement.innerHTML=e.innerHTML,this.fixedHeaderElement.style.position="fixed",this.fixedHeaderElement.style.top=this.list.parentElement.offsetTop+this.list.offsetTop+"px",this.fixedHeaderElement.style.display="block"},l.prototype.getValidLi=function(){return this.liCollections[0]},l.prototype.renderItems=function(e,t){var l;if(this.itemTemplate&&e){var n=e;n&&t.groupBy?("None"!==this.sortOrder&&(n=this.getSortedDataSource(n)),n=s.ListBase.groupDataSource(n,t.properties,this.sortOrder)):n=this.getSortedDataSource(n),this.sortedData=n;var o=n.length>100?new i.DataManager(n).executeLocal((new i.Query).take(100)):n;if(l=this.templateListItem("autocomplete"===this.getModuleName()?o:n,t),this.isVirtualizationEnabled){var r=this.list.querySelector(".e-list-parent"),a=this.list.querySelector(".e-virtual-ddl-content");e.length>=this.virtualizedItemsCount&&r&&a||r&&a&&this.isAllowFiltering||r&&a&&"autocomplete"===this.getModuleName()?(a.replaceChild(l,r),this.updateListElements(e)):a||(this.list.innerHTML="",this.createVirtualContent(),this.list.querySelector(".e-virtual-ddl-content").appendChild(l),this.updateListElements(e))}}else{if(l=this.createListItems(e,t),this.isIncrementalRequest)return this.incrementalLiCollections=l.querySelectorAll("."+U.li),this.incrementalUlElement=l,this.incrementalListData=e,l;if(this.isVirtualizationEnabled){var r=this.list.querySelector(".e-list-parent"),a=this.list.querySelector(".e-virtual-ddl-content");e.length>=this.virtualizedItemsCount&&r&&a||r&&a&&this.isAllowFiltering||r&&a&&"autocomplete"===this.getModuleName()?(a.replaceChild(l,r),this.updateListElements(e)):a||(this.list.innerHTML="",this.createVirtualContent(),this.list.querySelector(".e-virtual-ddl-content").appendChild(l),this.updateListElements(e))}}return l},l.prototype.createVirtualContent=function(){this.list.querySelector(".e-virtual-ddl-content")||this.list.appendChild(this.createElement("div",{className:"e-virtual-ddl-content"}))},l.prototype.updateListElements=function(e){this.liCollections=this.list.querySelectorAll("."+U.li),this.ulElement=this.list.querySelector("ul"),this.listData=e,this.postRender(this.list,e,this.bindEvent)},l.prototype.templateListItem=function(e,i){var l=this.listOption(e,i);l.templateID=this.itemTemplateId,l.isStringTemplate=this.isStringTemplate;var n=this.templateCompiler(this.itemTemplate);if("function"!=typeof this.itemTemplate&&n){var o=t.select(this.itemTemplate,document).innerHTML.trim();return s.ListBase.renderContentTemplate(this.createElement,o,e,i.properties,l,this)}return s.ListBase.renderContentTemplate(this.createElement,this.itemTemplate,e,i.properties,l,this)},l.prototype.typeOfData=function(e){for(var i={typeof:null,item:null},s=0;!t.isNullOrUndefined(e)&&s<e.length;s++)if(!t.isNullOrUndefined(e[s])&&!("string"==typeof e[s]||"number"==typeof e[s]||"boolean"==typeof e[s]?t.isNullOrUndefined(e[s]):t.isNullOrUndefined(t.getValue(this.fields.value?this.fields.value:"value",e[s]))))return i={typeof:typeof e[s],item:e[s]};return i},l.prototype.setFixedHeader=function(){t.isNullOrUndefined(this.list)||(this.list.parentElement.style.display="block");var e=0;if(this.list&&this.list.parentElement&&(e=parseInt(document.defaultView.getComputedStyle(this.list.parentElement,null).getPropertyValue("border-width"),10),isNaN(e)&&(e=parseInt(document.defaultView.getComputedStyle(this.list.parentElement,null).getPropertyValue("border-top-width"),10)+parseInt(document.defaultView.getComputedStyle(this.list.parentElement,null).getPropertyValue("border-bottom-width"),10)+parseInt(document.defaultView.getComputedStyle(this.list.parentElement,null).getPropertyValue("border-left-width"),10)+parseInt(document.defaultView.getComputedStyle(this.list.parentElement,null).getPropertyValue("border-right-width"),10))),!t.isNullOrUndefined(this.liCollections)){var i=this.getValidLi().offsetWidth-e;this.fixedHeaderElement.style.width=i.toString()+"px"}t.setStyleAttribute(this.fixedHeaderElement,{zIndex:10});var s=this.ulElement.querySelector("."+U.group+":not(.e-hide-listitem)");this.fixedHeaderElement.innerHTML=s.innerHTML},l.prototype.getSortedDataSource=function(e){if(e&&"None"!==this.sortOrder){var t=this.fields.text?this.fields.text:"text";"string"!==this.typeOfData(e).typeof&&"number"!==this.typeOfData(e).typeof&&"boolean"!==this.typeOfData(e).typeof||(t=""),e=s.ListBase.getDataSource(e,s.ListBase.addSorting(this.sortOrder,t))}return e},l.prototype.getIndexByValue=function(e){for(var i,s=this.getItems(),l=0;l<s.length;l++)if(!t.isNullOrUndefined(e)&&s[l].getAttribute("data-value")===e.toString()){i=l;break}return i},l.prototype.getIndexByValueFilter=function(e){var i,s=this.renderItems(this.selectData,this.fields);if(s&&s.children)for(var l=0;l<s.children.length;l++)if(!t.isNullOrUndefined(e)&&s.children[l].getAttribute("data-value")===e.toString()){i=l;break}return i},l.prototype.dispatchEvent=function(e,t){var i=document.createEvent("HTMLEvents");i.initEvent(t,!1,!0),e&&e.dispatchEvent(i)},l.prototype.setFields=function(){this.fields.value&&!this.fields.text?this.updateFields(this.fields.value,this.fields.value):!this.fields.value&&this.fields.text?this.updateFields(this.fields.text,this.fields.text):this.fields.value||this.fields.text||this.updateFields("text","text")},l.prototype.resetList=function(e,i,s,l){this.list&&(("SELECT"===this.element.tagName&&this.element.options.length>0||"UL"===this.element.tagName&&this.element.childNodes.length>0)&&!(e instanceof Array?e.length>0:!t.isNullOrUndefined(e))&&this.selectData&&this.selectData.length>0&&(e=this.selectData),e="combobox"===this.getModuleName()&&this.selectData&&e instanceof Array&&e.length<this.selectData.length&&this.addedNewItem?this.selectData:e,this.addedNewItem=!1,this.setListData(e,i,s,l))},l.prototype.updateSelectElementData=function(e){(e||this.isVirtualizationEnabled)&&t.isNullOrUndefined(this.selectData)&&this.listData&&this.listData.length>0&&(this.selectData=this.listData)},l.prototype.updateSelection=function(){},l.prototype.renderList=function(){this.render()},l.prototype.updateDataSource=function(e){this.resetList(this.dataSource),this.totalItemCount=this.dataSource instanceof i.DataManager?this.dataSource.dataSource.json.length:0},l.prototype.setUpdateInitial=function(e,t){this.isDataFetched=!1;for(var i={},s=0;e.length>s;s++)t[e[s]]&&"fields"===e[s]?(this.setFields(),i[e[s]]=t[e[s]]):t[e[s]]&&(i[e[s]]=t[e[s]]);Object.keys(i).length>0&&(-1===Object.keys(i).indexOf("dataSource")&&(i.dataSource=this.dataSource),this.updateDataSource(i))},l.prototype.onPropertyChanged=function(e,i){"dropdownbase"===this.getModuleName()&&this.setUpdateInitial(["fields","query","dataSource"],e),this.setUpdateInitial(["sortOrder","itemTemplate"],e);for(var s=0,l=Object.keys(e);s<l.length;s++)switch(l[s]){case"query":case"sortOrder":case"dataSource":case"itemTemplate":break;case"enableRtl":this.setEnableRtl();break;case"groupTemplate":if(this.renderGroupTemplate(this.list),this.ulElement&&this.fixedHeaderElement){var n=this.ulElement.querySelector("."+U.group);this.fixedHeaderElement.innerHTML=n.innerHTML}break;case"locale":this.list&&!t.isNullOrUndefined(this.liCollections)&&0===this.liCollections.length&&this.l10nUpdate();break;case"zIndex":this.setProperties({zIndex:e.zIndex},!0),this.setZIndex()}},l.prototype.render=function(e,i){"listbox"===this.getModuleName()?this.list=this.createElement("div",{className:U.content,attrs:{tabindex:"0"}}):this.list=this.createElement("div",{className:U.content}),this.list.classList.add(U.root),this.setFields();var s={duration:300,selector:"."+U.li};this.rippleFun=t.rippleEffect(this.list,s);var l=this.element.querySelector("select>optgroup");if(!this.fields.groupBy&&t.isNullOrUndefined(l)||this.isGroupChecking||t.EventHandler.add(this.list,"scroll",this.setFloatingHeader,this),"dropdownbase"===this.getModuleName()){this.element.getAttribute("tabindex")&&this.list.setAttribute("tabindex",this.element.getAttribute("tabindex")),t.removeClass([this.element],U.root),this.element.style.display="none";var n=this.createElement("div");this.element.parentElement.insertBefore(n,this.element),n.appendChild(this.element),n.appendChild(this.list)}this.setEnableRtl(),i||this.initialize(e)},l.prototype.removeScrollEvent=function(){this.list&&t.EventHandler.remove(this.list,"scroll",this.setFloatingHeader)},l.prototype.getModuleName=function(){return"dropdownbase"},l.prototype.getItems=function(){return this.ulElement.querySelectorAll("."+U.li)},l.prototype.addItem=function(e,i){if((!this.list||this.list.textContent===this.noRecordsTemplate&&"listbox"!==this.getModuleName())&&this.renderList(),"None"!==this.sortOrder&&t.isNullOrUndefined(i)){var l=[].slice.call(this.listData);l.push(e),l=this.getSortedDataSource(l),i=this.fields.groupBy?(l=s.ListBase.groupDataSource(l,this.fields.properties,this.sortOrder)).indexOf(e):l.indexOf(e)}var n=this.getItems().length,o=this.list.querySelector("."+U.selected);e=e instanceof Array?e:[e];var r;r=t.isNullOrUndefined(i)||i<0||i>n-1?n:i;var a=this.fields;e&&a.groupBy&&(e=s.ListBase.groupDataSource(e,a.properties));for(var h=[],p=0;p<e.length;p++){var u=e[p],d=u.isHeader,c=this.createElement("li",{className:d?U.group:U.li,id:"option-add-"+p}),m=u instanceof Object?t.getValue(a.text,u):u;if(d&&(c.innerText=m),this.itemTemplate&&!d){var f=this.templateCompiler(this.itemTemplate),v=("function"!=typeof this.itemTemplate&&f?t.compile(t.select(this.itemTemplate,document).innerHTML.trim()):t.compile(this.itemTemplate))(u,this,"itemTemplate",this.itemTemplateId,this.isStringTemplate,null,c);v&&t.append(v,c)}else d||c.appendChild(document.createTextNode(m));c.setAttribute("data-value",u instanceof Object?t.getValue(a.value,u):u),c.setAttribute("role","option"),this.notify("addItem",{module:"CheckBoxSelection",item:c}),h.push(c),this.listData.push(u),"None"===this.sortOrder&&t.isNullOrUndefined(i)&&0===r&&(r=null),this.updateActionCompleteData(c,u,r),this.trigger("beforeItemRender",{element:c,item:u})}if(0===n&&t.isNullOrUndefined(this.list.querySelector("ul")))t.isNullOrUndefined(this.list)||(this.list.innerHTML="",this.list.classList.remove(U.noData),this.isAddNewItemTemplate=!0,t.isNullOrUndefined(this.ulElement)||this.list.appendChild(this.ulElement)),this.liCollections=h,t.isNullOrUndefined(h)||t.isNullOrUndefined(this.ulElement)||t.append(h,this.ulElement),this.updateAddItemList(this.list,n);else{"listbox"===this.getModuleName()&&0===n&&(this.ulElement.innerHTML="");for(var g=[],p=0;p<e.length;p++){for(var y=this.ulElement.querySelectorAll(".e-list-group-item"),C=0;C<y.length;C++)g[C]=y[C].innerText;if(g.indexOf(h[p].innerText)>-1&&a.groupBy){for(C=0;C<y.length;C++)if(g[C]===h[p].innerText){"None"===this.sortOrder?this.ulElement.insertBefore(h[p+1],y[C+1]):this.ulElement.insertBefore(h[p+1],this.ulElement.childNodes[i]),p+=1;break}}else this.liCollections[r]?this.liCollections[r].parentNode.insertBefore(h[p],this.liCollections[r]):this.ulElement.appendChild(h[p]);var b=[].slice.call(this.liCollections);b.splice(r,0,h[p]),this.liCollections=b,r+=1,"multiselect"===this.getModuleName()&&this.updateDataList()}}"listbox"===this.getModuleName()&&this.isReact&&this.renderReactTemplates(),(o||0===i)&&this.updateSelection(),this.addedNewItem=!0},l.prototype.validationAttribute=function(e,t){var i=e.getAttribute("name")?e.getAttribute("name"):e.getAttribute("id");t.setAttribute("name",i),e.removeAttribute("name");for(var s=["required","aria-required","form"],l=0;l<s.length;l++)if(e.getAttribute(s[l])){var n=e.getAttribute(s[l]);t.setAttribute(s[l],n),e.removeAttribute(s[l])}},l.prototype.setZIndex=function(){},l.prototype.updateActionCompleteData=function(e,t,i){},l.prototype.updateAddItemList=function(e,t){},l.prototype.updateDataList=function(){},l.prototype.getDataByValue=function(e){if(!t.isNullOrUndefined(this.listData)){var i=this.typeOfData(this.listData).typeof;if("string"===i||"number"===i||"boolean"===i)for(var s=0,l=this.listData;s<l.length;s++){r=l[s];if(!t.isNullOrUndefined(r)&&r===e)return r}else for(var n=0,o=this.listData;n<o.length;n++){var r=o[n];if(!t.isNullOrUndefined(r)&&t.getValue(this.fields.value?this.fields.value:"value",r)===e)return r}}return null},l.prototype.destroy=function(){document.body.contains(this.list)&&(t.EventHandler.remove(this.list,"scroll",this.setFloatingHeader),t.isNullOrUndefined(this.rippleFun)||this.rippleFun(),t.detach(this.list)),this.liCollections=null,this.ulElement=null,this.list=null,this.enableRtlElements=null,this.rippleFun=null,e.prototype.destroy.call(this)},P([t.Complex({text:null,value:null,iconCss:null,groupBy:null},V)],l.prototype,"fields",void 0),P([t.Property(null)],l.prototype,"itemTemplate",void 0),P([t.Property(null)],l.prototype,"groupTemplate",void 0),P([t.Property("No records found")],l.prototype,"noRecordsTemplate",void 0),P([t.Property("Request failed")],l.prototype,"actionFailureTemplate",void 0),P([t.Property("None")],l.prototype,"sortOrder",void 0),P([t.Property([])],l.prototype,"dataSource",void 0),P([t.Property(null)],l.prototype,"query",void 0),P([t.Property("StartsWith")],l.prototype,"filterType",void 0),P([t.Property(!0)],l.prototype,"ignoreCase",void 0),P([t.Property(1e3)],l.prototype,"zIndex",void 0),P([t.Property(!1)],l.prototype,"ignoreAccent",void 0),P([t.Property()],l.prototype,"locale",void 0),P([t.Event()],l.prototype,"actionBegin",void 0),P([t.Event()],l.prototype,"actionComplete",void 0),P([t.Event()],l.prototype,"actionFailure",void 0),P([t.Event()],l.prototype,"select",void 0),P([t.Event()],l.prototype,"dataBound",void 0),P([t.Event()],l.prototype,"created",void 0),P([t.Event()],l.prototype,"destroyed",void 0),l=P([t.NotifyPropertyChanges],l)}(t.Component),W=function(){var e=function(t,i){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)t.hasOwnProperty(i)&&(e[i]=t[i])})(t,i)};return function(t,i){function s(){this.constructor=t}e(t,i),t.prototype=null===i?Object.create(i):(s.prototype=i.prototype,new s)}}(),H=function(e,t,i,s){var l,n=arguments.length,o=n<3?t:null===s?s=Object.getOwnPropertyDescriptor(t,i):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(e,t,i,s);else for(var r=e.length-1;r>=0;r--)(l=e[r])&&(o=(n<3?l(o):n>3?l(t,i,o):l(t,i))||o);return n>3&&o&&Object.defineProperty(t,i,o),o},M={root:"e-dropdownlist",hover:U.hover,selected:U.selected,rtl:U.rtl,li:U.li,disable:U.disabled,base:U.root,focus:U.focus,content:U.content,input:"e-input-group",inputFocus:"e-input-focus",icon:"e-input-group-icon e-ddl-icon",iconAnimation:"e-icon-anim",value:"e-input-value",device:"e-ddl-device",backIcon:"e-input-group-icon e-back-icon e-icons",filterBarClearIcon:"e-input-group-icon e-clear-icon e-icons",filterInput:"e-input-filter",filterParent:"e-filter-parent",mobileFilter:"e-ddl-device-filter",footer:"e-ddl-footer",header:"e-ddl-header",clearIcon:"e-clear-icon",clearIconHide:"e-clear-icon-hide",popupFullScreen:"e-popup-full-page",disableIcon:"e-ddl-disable-icon",hiddenElement:"e-ddl-hidden",virtualList:"e-list-item e-virtual-list"},j={container:null,buttons:[]},q=function(e){function s(t,i){var s=e.call(this,t,i)||this;return s.skeletonCount=32,s.isListSearched=!1,s.preventChange=!1,s.isAngular=!1,s.virtualListHeight=0,s.isVirtualScrolling=!1,s.isPreventScrollAction=!1,s.scrollPreStartIndex=0,s.isScrollActionTriggered=!1,s.previousStartIndex=0,s.isMouseScrollAction=!1,s.isKeyBoardAction=!1,s.isUpwardScrolling=!1,s.startIndex=0,s.currentPageNumber=0,s.pageCount=0,s.isPreventKeyAction=!1,s.generatedDataObject={},s.incrementalQueryString="",s.incrementalEndIndex=0,s.incrementalStartIndex=0,s.incrementalPreQueryString="",s.isTouched=!1,s.virtualListInfo={currentPageNumber:null,direction:null,sentinelInfo:{},offsets:{},startIndex:0,endIndex:0},s.viewPortInfo={currentPageNumber:null,direction:null,sentinelInfo:{},offsets:{},startIndex:0,endIndex:0},s.selectedValueInfo={currentPageNumber:null,direction:null,sentinelInfo:{},offsets:{},startIndex:0,endIndex:0},s.IsScrollerAtEnd=function(){return this.list&&this.list.scrollTop+this.list.clientHeight>=this.list.scrollHeight},s}return W(s,e),s.prototype.preRender=function(){this.valueTempElement=null,this.element.style.opacity="0",this.initializeData(),e.prototype.preRender.call(this),this.activeIndex=this.index,this.queryString=""},s.prototype.initializeData=function(){this.isPopupOpen=!1,this.isDocumentClick=!1,this.isInteracted=!1,this.isFilterFocus=!1,this.beforePopupOpen=!1,this.initial=!0,this.initialRemoteRender=!1,this.isNotSearchList=!1,this.isTyped=!1,this.isSelected=!1,this.preventFocus=!1,this.preventAutoFill=!1,this.isValidKey=!1,this.typedString="",this.isEscapeKey=!1,this.isPreventBlur=!1,this.isTabKey=!1,this.actionCompleteData={isUpdated:!1},this.actionData={isUpdated:!1},this.prevSelectPoints={},this.isSelectCustom=!1,this.isDropDownClick=!1,this.preventAltUp=!1,this.isCustomFilter=!1,this.isSecondClick=!1,this.previousValue=null,this.keyConfigure={tab:"tab",enter:"13",escape:"27",end:"35",home:"36",down:"40",up:"38",pageUp:"33",pageDown:"34",open:"alt+40",close:"shift+tab",hide:"alt+38",space:"32"},this.viewPortInfo={currentPageNumber:null,direction:null,sentinelInfo:{},offsets:{},startIndex:0,endIndex:this.itemCount}},s.prototype.setZIndex=function(){this.popupObj&&this.popupObj.setProperties({zIndex:this.zIndex})},s.prototype.requiredModules=function(){var e=[];return this.enableVirtualization&&e.push({args:[this],member:"VirtualScroll"}),e},s.prototype.renderList=function(t,s){e.prototype.render.call(this,t,s),this.dataSource instanceof i.DataManager||(this.totalItemCount=this.dataSource&&this.dataSource.length?this.dataSource.length:0),this.unWireListEvents(),this.wireListEvents()},s.prototype.floatLabelChange=function(){if("dropdownlist"===this.getModuleName()&&"Auto"===this.floatLabelType){var e=this.inputWrapper.container.querySelector(".e-float-text");""!==this.inputElement.value||this.isInteracted?t.classList(e,["e-label-top"],["e-label-bottom"]):t.classList(e,["e-label-bottom"],["e-label-top"])}},s.prototype.resetHandler=function(e){e.preventDefault(),this.clearAll(e),this.enableVirtualization&&(this.list.scrollTop=0,this.virtualListInfo=null,this.previousStartIndex=0,this.previousEndIndex=0)},s.prototype.resetFocusElement=function(){if(this.removeHover(),this.removeSelection(),this.removeFocus(),this.list.scrollTop=0,"autocomplete"!==this.getModuleName()&&!t.isNullOrUndefined(this.ulElement)){var e=this.ulElement.querySelector("."+M.li);this.enableVirtualization&&(e=this.liCollections[this.skeletonCount]),e&&e.classList.add(M.focus)}},s.prototype.clearAll=function(e,s){this.previousItemData=t.isNullOrUndefined(this.itemData)?null:this.itemData,!t.isNullOrUndefined(s)&&(t.isNullOrUndefined(s)||!t.isNullOrUndefined(s.dataSource)&&(s.dataSource instanceof i.DataManager||0!==s.dataSource.length))||(this.isActive=!0,this.resetSelection(s));var l=this.getItemData();this.previousValue!==l.value&&(this.onChangeEvent(e),this.checkAndResetCache(),this.enableVirtualization&&this.updateInitialData())},s.prototype.resetSelection=function(e){this.list&&(t.isNullOrUndefined(e)||!t.isNullOrUndefined(e.dataSource)&&(e.dataSource instanceof i.DataManager||0!==e.dataSource.length)?(this.allowFiltering&&"autocomplete"!==this.getModuleName()&&!t.isNullOrUndefined(this.actionCompleteData.ulElement)&&!t.isNullOrUndefined(this.actionCompleteData.list)&&this.actionCompleteData.list.length>0&&this.onActionComplete(this.actionCompleteData.ulElement.cloneNode(!0),this.actionCompleteData.list),this.resetFocusElement()):(this.selectedLI=null,this.actionCompleteData.isUpdated=!1,this.actionCompleteData.ulElement=null,this.actionCompleteData.list=null,this.resetList(e.dataSource))),t.isNullOrUndefined(this.hiddenElement)||(this.hiddenElement.innerHTML=""),t.isNullOrUndefined(this.inputElement)||(this.inputElement.value=""),this.value=null,this.itemData=null,this.text=null,this.index=null,this.activeIndex=null,this.item=null,this.queryString="",this.valueTempElement&&(t.detach(this.valueTempElement),this.inputElement.style.display="block",this.valueTempElement=null),this.setSelection(null,null),this.isSelectCustom=!1,this.updateIconState(),this.cloneElements()},s.prototype.setHTMLAttributes=function(){if(Object.keys(this.htmlAttributes).length)for(var e=0,i=Object.keys(this.htmlAttributes);e<i.length;e++){var s=i[e];if("class"===s){var l=this.htmlAttributes[""+s].replace(/\s+/g," ").trim();""!==l&&t.addClass([this.inputWrapper.container],l.split(" "))}else if("disabled"===s&&"disabled"===this.htmlAttributes[""+s])this.enabled=!1,this.setEnable();else if("readonly"!==s||t.isNullOrUndefined(this.htmlAttributes[""+s]))if("style"===s)this.inputWrapper.container.setAttribute("style",this.htmlAttributes[""+s]);else if("aria-label"===s)"autocomplete"!==this.getModuleName()&&"combobox"!==this.getModuleName()||this.readonly?"dropdownlist"===this.getModuleName()&&this.inputWrapper.container.setAttribute("aria-label",this.htmlAttributes[""+s]):this.inputElement.setAttribute("aria-label",this.htmlAttributes[""+s]);else{var o=["title","id","placeholder","role","autocomplete","autocapitalize","spellcheck","minlength","maxlength"],r=["name","required"];"autocomplete"!==this.getModuleName()&&"combobox"!==this.getModuleName()||o.push("tabindex"),r.indexOf(s)>-1||0===s.indexOf("data")?this.hiddenElement.setAttribute(s,this.htmlAttributes[""+s]):o.indexOf(s)>-1?"placeholder"===s?n.Input.setPlaceholder(this.htmlAttributes[""+s],this.inputElement):this.inputElement.setAttribute(s,this.htmlAttributes[""+s]):this.inputWrapper.container.setAttribute(s,this.htmlAttributes[""+s])}else this.readonly=!0,this.dataBind()}"autocomplete"!==this.getModuleName()&&"combobox"!==this.getModuleName()||this.inputWrapper.container.removeAttribute("tabindex")},s.prototype.getAriaAttributes=function(){return{"aria-disabled":"false",role:"combobox","aria-expanded":"false","aria-live":"polite","aria-labelledby":this.hiddenElement.id}},s.prototype.setEnableRtl=function(){n.Input.setEnableRtl(this.enableRtl,[this.inputElement.parentElement]),this.popupObj&&(this.popupObj.enableRtl=this.enableRtl,this.popupObj.dataBind())},s.prototype.setEnable=function(){n.Input.setEnabled(this.enabled,this.inputElement),this.enabled?(t.removeClass([this.inputWrapper.container],M.disable),this.inputElement.setAttribute("aria-disabled","false"),this.targetElement().setAttribute("tabindex",this.tabIndex)):(this.hidePopup(),t.addClass([this.inputWrapper.container],M.disable),this.inputElement.setAttribute("aria-disabled","true"),this.targetElement().tabIndex=-1)},s.prototype.getPersistData=function(){return this.addOnPersist(["value"])},s.prototype.getLocaleName=function(){return"drop-down-list"},s.prototype.preventTabIndex=function(e){"dropdownlist"===this.getModuleName()&&(e.tabIndex=-1)},s.prototype.targetElement=function(){return t.isNullOrUndefined(this.inputWrapper)?null:this.inputWrapper.container},s.prototype.getNgDirective=function(){return"EJS-DROPDOWNLIST"},s.prototype.getElementByText=function(e){return this.getElementByValue(this.getValueByText(e))},s.prototype.getElementByValue=function(e){for(var t,i=0,s=this.getItems();i<s.length;i++){var l=s[i];if(this.getFormattedValue(l.getAttribute("data-value"))===e){t=l;break}}return t},s.prototype.initValue=function(){this.viewPortInfo.startIndex=this.virtualItemStartIndex=0,this.viewPortInfo.endIndex=this.virtualItemEndIndex=this.itemCount,this.renderList(),this.dataSource instanceof i.DataManager?this.initialRemoteRender=!0:this.updateValues()},s.prototype.updateValues=function(){if(this.selectedValueInfo=this.viewPortInfo,t.isNullOrUndefined(this.value))if(this.text&&t.isNullOrUndefined(this.value)){var e=this.getElementByText(this.text);if(t.isNullOrUndefined(e))return void this.setProperties({text:null});this.setSelection(e,null)}else this.setSelection(this.liCollections[this.activeIndex],null);else this.setSelection(this.getElementByValue(this.value),null);this.setHiddenValue(),n.Input.setValue(this.text,this.inputElement,this.floatLabelType,this.showClearButton)},s.prototype.onBlurHandler=function(e){if(this.enabled){var i=e.relatedTarget,s=e.target,l=this.isPreventBlur;if(this.isPreventBlur=!1,l&&!this.isDocumentClick&&this.isPopupOpen&&(!t.isNullOrUndefined(s)||!this.isFilterLayout()&&t.isNullOrUndefined(i)))return void("dropdownlist"===this.getModuleName()&&this.allowFiltering&&this.isPopupOpen?this.filterInput.focus():this.targetElement().focus());if(this.isDocumentClick||!t.isNullOrUndefined(this.popupObj)&&document.body.contains(this.popupObj.element)&&this.popupObj.element.classList.contains(M.mobileFilter))return void(this.beforePopupOpen||(this.isDocumentClick=!1));("dropdownlist"===this.getModuleName()&&!this.isFilterFocus&&i!==this.inputElement&&(document.activeElement!==i||document.activeElement===i&&s.classList.contains(M.inputFocus))||t.isNullOrUndefined(i)&&"dropdownlist"===this.getModuleName()&&this.allowFiltering&&s!==this.inputWrapper.container||"dropdownlist"!==this.getModuleName()&&!this.inputWrapper.container.contains(i)||this.isTabKey)&&(this.isDocumentClick=!!this.isPopupOpen,this.focusOutAction(e),this.isTabKey=!1),!this.isRequested||this.isPopupOpen||this.isPreventBlur||(this.isActive=!1,this.beforePopupOpen=!1)}},s.prototype.focusOutAction=function(e){this.isInteracted=!1,this.focusOut(e),this.onFocusOut(e)},s.prototype.onFocusOut=function(e){this.enabled&&(this.isSelected&&(this.isSelectCustom=!1,this.onChangeEvent(e)),this.floatLabelChange(),this.dispatchEvent(this.hiddenElement,"change"),"dropdownlist"===this.getModuleName()&&"INPUT"!==this.element.tagName&&this.dispatchEvent(this.inputElement,"blur"),this.inputWrapper.clearButton&&t.addClass([this.inputWrapper.clearButton],M.clearIconHide),this.trigger("blur"))},s.prototype.onFocus=function(e){if(!this.isInteracted){this.isInteracted=!0;var t={isInteracted:!!e,event:e};this.trigger("focus",t)}this.updateIconState()},s.prototype.resetValueHandler=function(e){var i=t.closest(this.inputElement,"form");if(i&&e.target===i){var s=this.element.tagName===this.getNgDirective()?null:this.inputElement.getAttribute("value");this.text=s}},s.prototype.wireEvent=function(){t.EventHandler.add(this.inputWrapper.container,"mousedown",this.dropDownClick,this),t.EventHandler.add(this.inputWrapper.container,"focus",this.focusIn,this),t.EventHandler.add(this.inputWrapper.container,"keypress",this.onSearch,this),t.EventHandler.add(window,"resize",this.windowResize,this),this.bindCommonEvent()},s.prototype.bindCommonEvent=function(){t.EventHandler.add(this.targetElement(),"blur",this.onBlurHandler,this);var e=t.closest(this.inputElement,"form");e&&t.EventHandler.add(e,"reset",this.resetValueHandler,this),t.Browser.isDevice?this.keyboardModule=new t.KeyboardEvents(this.targetElement(),{keyAction:this.mobileKeyActionHandler.bind(this),keyConfigs:this.keyConfigure,eventName:"keydown"}):this.keyboardModule=new t.KeyboardEvents(this.targetElement(),{keyAction:this.keyActionHandler.bind(this),keyConfigs:this.keyConfigure,eventName:"keydown"}),this.bindClearEvent()},s.prototype.windowResize=function(){this.isPopupOpen&&this.popupObj.refreshPosition(this.inputWrapper.container)},s.prototype.bindClearEvent=function(){this.showClearButton&&t.EventHandler.add(this.inputWrapper.clearButton,"mousedown",this.resetHandler,this)},s.prototype.unBindCommonEvent=function(){!t.isNullOrUndefined(this.inputWrapper)&&this.targetElement()&&t.EventHandler.remove(this.targetElement(),"blur",this.onBlurHandler);var e=this.inputElement&&t.closest(this.inputElement,"form");e&&t.EventHandler.remove(e,"reset",this.resetValueHandler),t.Browser.isDevice||this.keyboardModule.destroy(),this.showClearButton&&t.EventHandler.remove(this.inputWrapper.clearButton,"mousedown",this.resetHandler)},s.prototype.updateIconState=function(){this.showClearButton&&(""===this.inputElement.value||this.readonly?t.addClass([this.inputWrapper.clearButton],M.clearIconHide):t.removeClass([this.inputWrapper.clearButton],M.clearIconHide))},s.prototype.wireListEvents=function(){t.isNullOrUndefined(this.list)||(t.EventHandler.add(this.list,"click",this.onMouseClick,this),t.EventHandler.add(this.list,"mouseover",this.onMouseOver,this),t.EventHandler.add(this.list,"mouseout",this.onMouseLeave,this))},s.prototype.onSearch=function(e){32!==e.charCode&&13!==e.charCode&&(void 0===this.list&&this.renderList(),this.searchKeyEvent=e,this.onServerIncrementalSearch(e))},s.prototype.onServerIncrementalSearch=function(e){this.isRequested||t.isNullOrUndefined(this.list)||t.isNullOrUndefined(this.list.querySelector("li"))||!this.enabled||this.readonly||this.incrementalSearch(e)},s.prototype.onMouseClick=function(e){var i=e.target;this.keyboardEvent=null;var s=t.closest(i,"."+U.li);if(this.isValidLI(s))if(this.setSelection(s,e),t.Browser.isDevice&&this.isFilterLayout())history.back();else{this.closePopup(100,e)}},s.prototype.onMouseOver=function(e){var i=t.closest(e.target,"."+U.li);this.setHover(i)},s.prototype.setHover=function(e){this.enabled&&this.isValidLI(e)&&!e.classList.contains(U.hover)&&(this.removeHover(),t.addClass([e],U.hover))},s.prototype.onMouseLeave=function(){this.removeHover()},s.prototype.removeHover=function(){if(this.list){var e=this.list.querySelectorAll("."+U.hover);e&&e.length&&t.removeClass(e,U.hover)}},s.prototype.isValidLI=function(e){return e&&e.hasAttribute("role")&&"option"===e.getAttribute("role")},s.prototype.updateIncrementalInfo=function(e,t){this.viewPortInfo.startIndex=e,this.viewPortInfo.endIndex=t,this.updateVirtualItemIndex(),this.isIncrementalRequest=!0,this.resetList(this.dataSource,this.fields,this.query),this.isIncrementalRequest=!1},s.prototype.updateIncrementalView=function(e,t){this.viewPortInfo.startIndex=e,this.viewPortInfo.endIndex=t,this.updateVirtualItemIndex(),this.resetList(this.dataSource,this.fields,this.query),this.UpdateSkeleton(),this.liCollections=this.list.querySelectorAll("."+U.li),this.ulElement=this.list.querySelector("ul")},s.prototype.updateIncrementalItemIndex=function(e,t){this.incrementalStartIndex=e,this.incrementalEndIndex=t},s.prototype.incrementalSearch=function(e){if(this.liCollections.length>0)if(this.enableVirtualization){var i=!1,s=!1,l=this.ulElement.getElementsByClassName("e-active")[0],n=l?l.textContent:null;""==this.incrementalQueryString?(this.incrementalQueryString=String.fromCharCode(e.charCode),this.incrementalPreQueryString=this.incrementalQueryString):String.fromCharCode(e.charCode).toLocaleLowerCase()==this.incrementalPreQueryString.toLocaleLowerCase()?s=!0:this.incrementalQueryString=String.fromCharCode(e.charCode),(this.viewPortInfo.endIndex>=this.incrementalEndIndex&&this.incrementalEndIndex<=this.totalItemCount||0==this.incrementalEndIndex)&&(i=!0,this.incrementalStartIndex=this.incrementalEndIndex,0==this.incrementalEndIndex?this.incrementalEndIndex=100>this.totalItemCount?this.totalItemCount:100:this.incrementalEndIndex=this.incrementalEndIndex+100>this.totalItemCount?this.totalItemCount:this.incrementalEndIndex+100,this.updateIncrementalInfo(this.incrementalStartIndex,this.incrementalEndIndex),i=!0),(0!==this.viewPortInfo.startIndex||i)&&this.updateIncrementalView(0,this.itemCount);for(d=h(e.charCode,this.incrementalLiCollections,this.activeIndex,!0,this.element.id,s,n,!0);t.isNullOrUndefined(d)&&this.incrementalEndIndex<this.totalItemCount&&(this.updateIncrementalItemIndex(this.incrementalEndIndex,this.incrementalEndIndex+100>this.totalItemCount?this.totalItemCount:this.incrementalEndIndex+100),this.updateIncrementalInfo(this.incrementalStartIndex,this.incrementalEndIndex),i=!0,(0!==this.viewPortInfo.startIndex||i)&&this.updateIncrementalView(0,this.itemCount),d=h(e.charCode,this.incrementalLiCollections,0,!0,this.element.id,s,n,!0,!0),t.isNullOrUndefined(d));)if(t.isNullOrUndefined(d)&&this.incrementalEndIndex>=this.totalItemCount){this.updateIncrementalItemIndex(0,100>this.totalItemCount?this.totalItemCount:100);break}t.isNullOrUndefined(d)&&this.incrementalEndIndex>=this.totalItemCount&&(this.updateIncrementalItemIndex(0,100>this.totalItemCount?this.totalItemCount:100),this.updateIncrementalInfo(this.incrementalStartIndex,this.incrementalEndIndex),i=!0,(0!==this.viewPortInfo.startIndex||i)&&this.updateIncrementalView(0,this.itemCount),d=h(e.charCode,this.incrementalLiCollections,0,!0,this.element.id,s,n,!0,!0));var o=d&&this.getIndexByValue(d.getAttribute("data-value"));if(o)o-=this.skeletonCount;else for(var r=0;r<this.incrementalLiCollections.length;r++)if(!t.isNullOrUndefined(d)&&!t.isNullOrUndefined(d.getAttribute("data-value"))&&this.incrementalLiCollections[r].getAttribute("data-value")===d.getAttribute("data-value").toString()){o=r,o=this.incrementalStartIndex+o;break}if(o&&!(this.viewPortInfo.startIndex>=o&&o>=this.viewPortInfo.endIndex)){var a=o-(this.itemCount/2-2)>0?o-(this.itemCount/2-2):0,p=this.viewPortInfo.startIndex+this.itemCount>this.totalItemCount?this.totalItemCount:this.viewPortInfo.startIndex+this.itemCount;this.updateIncrementalView(a,p)}if(t.isNullOrUndefined(d))this.updateIncrementalView(0,this.itemCount),this.list.getElementsByClassName("e-virtual-ddl-content")[0].style=this.getTransformValues(),this.list.scrollTop=0;else{if(this.getIndexByValue(d.getAttribute("data-value"))-this.skeletonCount>this.itemCount/2){var a=this.viewPortInfo.startIndex+(this.itemCount/2-2)<this.totalItemCount?this.viewPortInfo.startIndex+(this.itemCount/2-2):this.totalItemCount,p=this.viewPortInfo.startIndex+this.itemCount>this.totalItemCount?this.totalItemCount:this.viewPortInfo.startIndex+this.itemCount;this.updateIncrementalView(a,p)}if(d=this.getElementByValue(d.getAttribute("data-value")),this.setSelection(d,e),this.setScrollPosition(),this.list.getElementsByClassName("e-virtual-ddl-content")[0].style=this.getTransformValues(),this.enableVirtualization&&!this.fields.groupBy){var u=this.virtualListInfo&&this.virtualListInfo.startIndex?this.selectedLI.offsetTop+this.virtualListInfo.startIndex*this.selectedLI.offsetHeight:this.selectedLI.offsetTop;this.list.scrollTop=u-this.list.querySelectorAll(".e-virtual-list").length*this.selectedLI.offsetHeight}this.incrementalPreQueryString=this.incrementalQueryString}}else{var d=h(e.charCode,this.liCollections,this.activeIndex,!0,this.element.id);t.isNullOrUndefined(d)||(this.setSelection(d,e),this.setScrollPosition())}},s.prototype.hideSpinner=function(){t.isNullOrUndefined(this.spinnerElement)||(l.hideSpinner(this.spinnerElement),t.removeClass([this.spinnerElement],M.disableIcon),this.spinnerElement.innerHTML="",this.spinnerElement=null)},s.prototype.showSpinner=function(){t.isNullOrUndefined(this.spinnerElement)&&(this.spinnerElement=t.Browser.isDevice&&!t.isNullOrUndefined(this.filterInputObj)&&this.filterInputObj.buttons[1]||!t.isNullOrUndefined(this.filterInputObj)&&this.filterInputObj.buttons[0]||this.inputWrapper.buttons[0],t.addClass([this.spinnerElement],M.disableIcon),l.createSpinner({target:this.spinnerElement,width:t.Browser.isDevice?"16px":"14px"},this.createElement),l.showSpinner(this.spinnerElement))},s.prototype.keyActionHandler=function(e){if(this.enabled){this.keyboardEvent=e,this.isPreventKeyAction&&this.enableVirtualization&&e.preventDefault();var i="pageUp"===e.action||"pageDown"===e.action,s="dropdownlist"!==this.getModuleName()&&("home"===e.action||"end"===e.action);this.isEscapeKey="escape"===e.action,this.isTabKey=!this.isPopupOpen&&"tab"===e.action;var l="down"===e.action||"up"===e.action||"pageUp"===e.action||"pageDown"===e.action||"home"===e.action||"end"===e.action;if((!(this.isEditTextBox()||i||s)||this.isPopupOpen)&&!this.readonly){var n="tab"===e.action||"close"===e.action;if(!t.isNullOrUndefined(this.list)||this.isRequested||n||"escape"===e.action||(this.searchKeyEvent=e,this.renderList(e),this.UpdateSkeleton(),this.liCollections=this.list.querySelectorAll("."+U.li),this.ulElement=this.list.querySelector("ul")),t.isNullOrUndefined(this.list)||!t.isNullOrUndefined(this.liCollections)&&l&&0===this.liCollections.length||this.isRequested)return;switch((n&&"autocomplete"!==this.getModuleName()&&this.isPopupOpen||"escape"===e.action)&&e.preventDefault(),this.isSelected="escape"!==e.action&&this.isSelected,this.isTyped=!l&&"escape"!==e.action&&this.isTyped,e.action){case"down":case"up":this.updateUpDownAction(e);break;case"pageUp":this.pageUpSelection(this.activeIndex-this.getPageCount(),e),e.preventDefault();break;case"pageDown":this.pageDownSelection(this.activeIndex+this.getPageCount(),e),e.preventDefault();break;case"home":case"end":this.isMouseScrollAction=!0,this.updateHomeEndAction(e);break;case"space":"dropdownlist"===this.getModuleName()&&(this.beforePopupOpen||(this.showPopup(),e.preventDefault()));break;case"open":this.showPopup(e);break;case"hide":this.preventAltUp=this.isPopupOpen,this.hidePopup(e),this.focusDropDown(e);break;case"enter":this.selectCurrentItem(e);break;case"tab":this.selectCurrentValueOnTab(e);break;case"escape":case"close":this.isPopupOpen&&(this.hidePopup(e),this.focusDropDown(e))}}}},s.prototype.updateUpDownAction=function(e,i){if(this.allowFiltering&&!this.enableVirtualization&&"autocomplete"!==this.getModuleName()){var s=this.getItemData().value;t.isNullOrUndefined(s)&&(s="null");f=this.getIndexByValue(s);t.isNullOrUndefined(f)||(this.activeIndex=f)}var l=this.list.querySelector("."+M.focus);if(this.isSelectFocusItem(l)&&!i){if(this.setSelection(l,e),this.enableVirtualization&&!this.fields.groupBy&&"combobox"!==this.getModuleName()){var n=this.virtualListInfo&&this.virtualListInfo.startIndex?this.selectedLI.offsetTop+this.virtualListInfo.startIndex*this.selectedLI.offsetHeight:this.selectedLI.offsetTop;this.list.scrollTop=n-this.list.querySelectorAll(".e-virtual-list").length*this.selectedLI.offsetHeight}}else if(!t.isNullOrUndefined(this.liCollections)){var o=this.activeIndex,r="down"===e.action?this.activeIndex+1:this.activeIndex-1;r=i?o:r;var a=0;"autocomplete"===this.getModuleName()&&(a="down"===e.action&&t.isNullOrUndefined(this.activeIndex)?0:this.liCollections.length-1,r=r<0?this.liCollections.length-1:r===this.liCollections.length?0:r);var h=void 0;if("autocomplete"!==this.getModuleName()||"autocomplete"===this.getModuleName()&&this.isPopupOpen)if(this.enableVirtualization)if(i)if("autocomplete"===this.getModuleName()){var p=this.getFormattedValue(this.selectedLI.getAttribute("data-value"));h=this.getElementByValue(p)}else h=this.getElementByValue(this.getItemData().value);else h=t.isNullOrUndefined(this.activeIndex)?this.liCollections[this.skeletonCount]:this.liCollections[r],h=t.isNullOrUndefined(h)||h.classList.contains("e-virtual-list")?null:h;else h=t.isNullOrUndefined(this.activeIndex)?this.liCollections[a]:this.liCollections[r];if(t.isNullOrUndefined(h)){if(this.enableVirtualization&&!this.isPopupOpen&&"autocomplete"!==this.getModuleName()&&(this.viewPortInfo.endIndex!==this.totalItemCount&&"down"===e.action||0!==this.viewPortInfo.startIndex&&"up"===e.action)){if("down"===e.action){this.viewPortInfo.startIndex=this.viewPortInfo.startIndex+this.itemCount<this.totalItemCount-this.itemCount?this.viewPortInfo.startIndex+this.itemCount:this.totalItemCount-this.itemCount,this.viewPortInfo.endIndex=this.viewPortInfo.startIndex+this.itemCount,this.updateVirtualItemIndex(),this.isCustomFilter="combobox"===this.getModuleName()||this.isCustomFilter,this.resetList(this.dataSource,this.fields,this.query),this.isCustomFilter="combobox"!==this.getModuleName()&&this.isCustomFilter;var u="null"!==this.liCollections[0].getAttribute("data-value")?this.getFormattedValue(this.liCollections[0].getAttribute("data-value")):null;(c=this.getDataByValue(u))&&(this.itemData=c)}else if("up"===e.action){this.viewPortInfo.startIndex=this.viewPortInfo.startIndex-this.itemCount>0?this.viewPortInfo.startIndex-this.itemCount:0,this.viewPortInfo.endIndex=this.viewPortInfo.startIndex+this.itemCount,this.updateVirtualItemIndex(),this.isCustomFilter="combobox"===this.getModuleName()||this.isCustomFilter,this.resetList(this.dataSource,this.fields,this.query),this.isCustomFilter="combobox"!==this.getModuleName()&&this.isCustomFilter;var d="null"!==this.liCollections[this.liCollections.length-1].getAttribute("data-value")?this.getFormattedValue(this.liCollections[this.liCollections.length-1].getAttribute("data-value")):null,c=this.getDataByValue(d);c&&(this.itemData=c)}this.UpdateSkeleton(),this.liCollections=this.list.querySelectorAll("."+U.li),this.ulElement=this.list.querySelector("ul"),this.handleVirtualKeyboardActions(e,this.pageCount)}}else this.setSelection(h,e)}if(this.allowFiltering&&!this.enableVirtualization&&"autocomplete"!==this.getModuleName()){var m=this.getItemData().value,f=this.getIndexByValueFilter(m);t.isNullOrUndefined(f)||(this.activeIndex=f)}this.allowFiltering&&"dropdownlist"===this.getModuleName()&&(t.isNullOrUndefined(this.ulElement)||t.isNullOrUndefined(this.ulElement.getElementsByClassName("e-item-focus")[0])?t.isNullOrUndefined(this.ulElement)||t.isNullOrUndefined(this.ulElement.getElementsByClassName("e-active")[0])||t.attributes(this.filterInput,{"aria-activedescendant":this.ulElement.getElementsByClassName("e-active")[0].id}):t.attributes(this.filterInput,{"aria-activedescendant":this.ulElement.getElementsByClassName("e-item-focus")[0].id})),e.preventDefault()},s.prototype.updateVirtualItemIndex=function(){this.virtualItemStartIndex=this.viewPortInfo.startIndex,this.virtualItemEndIndex=this.viewPortInfo.endIndex,this.virtualListInfo=this.viewPortInfo},s.prototype.updateHomeEndAction=function(e,t){if("dropdownlist"===this.getModuleName()){var i=0;if("home"===e.action?(i=0,this.enableVirtualization&&this.isPopupOpen?i=this.skeletonCount:this.enableVirtualization&&!this.isPopupOpen&&0!==this.viewPortInfo.startIndex&&(this.viewPortInfo.startIndex=0,this.viewPortInfo.endIndex=this.itemCount,this.updateVirtualItemIndex(),this.resetList(this.dataSource,this.fields,this.query))):(this.enableVirtualization&&!this.isPopupOpen&&this.viewPortInfo.endIndex!==this.totalItemCount&&(this.viewPortInfo.startIndex=this.totalItemCount-this.itemCount,this.viewPortInfo.endIndex=this.totalItemCount,this.updateVirtualItemIndex(),this.resetList(this.dataSource,this.fields,this.query)),i=this.getItems().length-1),e.preventDefault(),this.activeIndex===i)return void(t&&this.setSelection(this.liCollections[i],e));this.setSelection(this.liCollections[i],e)}},s.prototype.selectCurrentValueOnTab=function(e){"autocomplete"===this.getModuleName()?this.selectCurrentItem(e):this.isPopupOpen&&(this.hidePopup(e),this.focusDropDown(e))},s.prototype.mobileKeyActionHandler=function(e){if(this.enabled&&(!this.isEditTextBox()||this.isPopupOpen)&&!this.readonly){if(void 0!==this.list||this.isRequested||(this.searchKeyEvent=e,this.renderList()),t.isNullOrUndefined(this.list)||!t.isNullOrUndefined(this.liCollections)&&0===this.liCollections.length||this.isRequested)return;"enter"===e.action&&this.selectCurrentItem(e)}},s.prototype.handleVirtualKeyboardActions=function(e,t){switch(e.action){case"down":case"up":null==this.itemData&&"autocomplete"!==this.getModuleName()||this.updateUpDownAction(e,!0);break;case"pageUp":var i=2*t-4;this.activeIndex=Math.round(i),this.pageUpSelection(this.activeIndex-this.getPageCount(),e,!0),e.preventDefault();break;case"pageDown":this.activeIndex=1,this.pageDownSelection(this.activeIndex+this.getPageCount(),e,!0),e.preventDefault();break;case"home":case"end":this.isMouseScrollAction=!0,this.updateHomeEndAction(e,!0)}this.keyboardEvent=null},s.prototype.selectCurrentItem=function(e){if(this.isPopupOpen){var t=this.list.querySelector("."+M.focus);t&&(this.setSelection(t,e),this.isTyped=!1),this.isSelected&&(this.isSelectCustom=!1,this.onChangeEvent(e)),this.hidePopup(e),this.focusDropDown(e)}else this.showPopup()},s.prototype.isSelectFocusItem=function(e){return!t.isNullOrUndefined(e)},s.prototype.pageUpSelection=function(e,i,s){var l=e>=0?this.liCollections[e+1]:this.liCollections[0];(this.enableVirtualization&&null==this.activeIndex||s)&&(l=e>=0?this.liCollections[e+this.skeletonCount+1]:this.liCollections[0]),!t.isNullOrUndefined(l)&&l.classList.contains("e-virtual-list")&&(l=this.liCollections[this.skeletonCount]),this.PageUpDownSelection(l,i),this.allowFiltering&&"dropdownlist"===this.getModuleName()&&(t.isNullOrUndefined(this.ulElement)||t.isNullOrUndefined(this.ulElement.getElementsByClassName("e-item-focus")[0])?t.isNullOrUndefined(this.ulElement)||t.isNullOrUndefined(this.ulElement.getElementsByClassName("e-active")[0])||t.attributes(this.filterInput,{"aria-activedescendant":this.ulElement.getElementsByClassName("e-active")[0].id}):t.attributes(this.filterInput,{"aria-activedescendant":this.ulElement.getElementsByClassName("e-item-focus")[0].id}))},s.prototype.PageUpDownSelection=function(e,i){this.enableVirtualization?t.isNullOrUndefined(e)||("autocomplete"===this.getModuleName()||e.classList.contains("e-active"))&&("autocomplete"!==this.getModuleName()||e.classList.contains("e-item-focus"))||this.setSelection(e,i):this.setSelection(e,i)},s.prototype.pageDownSelection=function(e,i,s){var l=this.getItems(),n=e<=l.length?this.liCollections[e-1]:this.liCollections[l.length-1];(this.enableVirtualization&&null==this.activeIndex||s)&&(n=e<=l.length?this.liCollections[e+this.skeletonCount-1]:this.liCollections[l.length-1]),this.PageUpDownSelection(n,i),this.allowFiltering&&"dropdownlist"===this.getModuleName()&&(t.isNullOrUndefined(this.ulElement)||t.isNullOrUndefined(this.ulElement.getElementsByClassName("e-item-focus")[0])?t.isNullOrUndefined(this.ulElement)||t.isNullOrUndefined(this.ulElement.getElementsByClassName("e-active")[0])||t.attributes(this.filterInput,{"aria-activedescendant":this.ulElement.getElementsByClassName("e-active")[0].id}):t.attributes(this.filterInput,{"aria-activedescendant":this.ulElement.getElementsByClassName("e-item-focus")[0].id}))},s.prototype.unWireEvent=function(){t.isNullOrUndefined(this.inputWrapper)||(t.EventHandler.remove(this.inputWrapper.container,"mousedown",this.dropDownClick),t.EventHandler.remove(this.inputWrapper.container,"keypress",this.onSearch),t.EventHandler.remove(this.inputWrapper.container,"focus",this.focusIn),t.EventHandler.remove(window,"resize",this.windowResize)),this.unBindCommonEvent()},s.prototype.unWireListEvents=function(){this.list&&(t.EventHandler.remove(this.list,"click",this.onMouseClick),t.EventHandler.remove(this.list,"mouseover",this.onMouseOver),t.EventHandler.remove(this.list,"mouseout",this.onMouseLeave))},s.prototype.checkSelector=function(e){return'[id="'+e.replace(/(:|\.|\[|\]|,|=|@|\\|\/|#)/g,"\\$1")+'"]'},s.prototype.onDocumentClick=function(e){var i=e.target;if(!t.isNullOrUndefined(this.popupObj)&&t.closest(i,this.checkSelector(this.popupObj.element.id))||t.isNullOrUndefined(this.inputWrapper)||this.inputWrapper.container.contains(e.target))i===this.inputElement||this.allowFiltering&&i===this.filterInput||"combobox"===this.getModuleName()&&!this.allowFiltering&&t.Browser.isDevice&&i===this.inputWrapper.buttons[0]||(this.isPreventBlur=(t.Browser.isIE||"edge"===t.Browser.info.name)&&(document.activeElement===this.targetElement()||document.activeElement===this.filterInput),e.preventDefault());else if(this.inputWrapper.container.classList.contains(M.inputFocus)||this.isPopupOpen){this.isDocumentClick=!0;var s=this.isRequested;"combobox"===this.getModuleName()&&this.isTyped&&(this.isInteracted=!1),this.hidePopup(e),this.isInteracted=!1,s||(this.onFocusOut(e),this.inputWrapper.container.classList.remove(M.inputFocus))}},s.prototype.activeStateChange=function(){this.isDocumentClick&&(this.hidePopup(),this.onFocusOut(),this.inputWrapper.container.classList.remove(M.inputFocus))},s.prototype.focusDropDown=function(e){!this.initial&&this.isFilterLayout()&&this.focusIn(e)},s.prototype.dropDownClick=function(e){if(3!==e.which&&2!==e.button&&(this.keyboardEvent=null,!this.targetElement().classList.contains(M.disable)&&this.inputWrapper.clearButton!==e.target)){var t=e.target;if(t===this.inputElement||this.allowFiltering&&t===this.filterInput||"combobox"===this.getModuleName()||e.preventDefault(),this.readonly)this.focusIn(e);else{this.isPopupOpen?(this.hidePopup(e),this.isFilterLayout()&&this.focusDropDown(e)):(this.focusIn(e),this.floatLabelChange(),this.queryString=""===this.inputElement.value.trim()?null:this.inputElement.value,this.isDropDownClick=!0,this.showPopup(e));var i=this,s=this.element.tagName===this.getNgDirective()&&this.itemTemplate?500:100;this.isSecondClick||setTimeout(function(){i.cloneElements(),i.isSecondClick=!0},s)}}},s.prototype.cloneElements=function(){if(this.list){var e=this.list.querySelector("ul");e&&(e=e.cloneNode?e.cloneNode(!0):e,this.actionCompleteData.ulElement=e)}},s.prototype.updateSelectedItem=function(e,i,s,l){var n=this;this.removeSelection(),e.classList.add(U.selected),this.removeHover();var o="null"!==e.getAttribute("data-value")?this.getFormattedValue(e.getAttribute("data-value")):null,r=this.getDataByValue(o);if(this.initial||s||t.isNullOrUndefined(i))this.selectEventCallback(e,i,s,r,o),l&&this.setSelectOptions(e,i);else{var a=this.detachChanges(r);this.isSelected=!0;var h={e:i,item:e,itemData:a,isInteracted:!!i,cancel:!1};this.trigger("select",h,function(t){t.cancel?e.classList.remove(U.selected):(n.selectEventCallback(e,i,s,r,o),l&&n.setSelectOptions(e,i))})}},s.prototype.selectEventCallback=function(e,i,s,l,n){this.previousItemData=t.isNullOrUndefined(this.itemData)?null:this.itemData,this.itemData!=l&&(this.previousValue=t.isNullOrUndefined(this.itemData)?null:"object"==typeof this.itemData?this.checkFieldValue(this.itemData,this.fields.value.split(".")):this.itemData),this.item=e,this.itemData=l;var o=this.list.querySelector("."+U.focus);if(o&&t.removeClass([o],U.focus),e.setAttribute("aria-selected","true"),t.isNullOrUndefined(n)&&(n="null"),this.allowFiltering&&!this.enableVirtualization&&"autocomplete"!==this.getModuleName()){var r=this.getIndexByValueFilter(n);t.isNullOrUndefined(r)?this.activeIndex=this.getIndexByValue(n):this.activeIndex=r}else this.activeIndex=this.getIndexByValue(n)},s.prototype.activeItem=function(e){this.isValidLI(e)&&!e.classList.contains(U.selected)&&(this.removeSelection(),e.classList.add(U.selected),this.removeHover(),e.setAttribute("aria-selected","true"))},s.prototype.setValue=function(e){var i=this.getItemData();null===i.value?n.Input.setValue(null,this.inputElement,this.floatLabelType,this.showClearButton):n.Input.setValue(i.text,this.inputElement,this.floatLabelType,this.showClearButton),this.valueTemplate&&null!==this.itemData?this.setValueTemplate():t.isNullOrUndefined(this.valueTempElement)||this.inputElement.previousSibling!==this.valueTempElement||(t.detach(this.valueTempElement),this.inputElement.style.display="block"),t.isNullOrUndefined(i.value)||this.enableVirtualization||!this.allowFiltering||(this.activeIndex=this.getIndexByValueFilter(i.value));var s=M.clearIcon,l=this.isFiltering()&&this.filterInput&&"combobox"===this.getModuleName()&&this.filterInput.parentElement.querySelector("."+s);return this.isFiltering()&&l&&l.style.removeProperty("visibility"),this.previousValue===i.value?(this.isSelected=!1,!0):(this.isSelected=!this.initial,this.isSelectCustom=!1,"dropdownlist"===this.getModuleName()&&this.updateIconState(),!1)},s.prototype.setSelection=function(e,t){if(this.isValidLI(e)&&(!e.classList.contains(U.selected)||this.isPopupOpen&&this.isSelected&&e.classList.contains(U.selected)))this.updateSelectedItem(e,t,!1,!0);else if(this.setSelectOptions(e,t),this.enableVirtualization){var s=this.fields.value?this.fields.value:"";if(this.dataSource instanceof i.DataManager&&this.virtualGroupDataSource){if((l=new i.DataManager(this.virtualGroupDataSource).executeLocal((new i.Query).where(new i.Predicate(s,"equal",this.value))))&&l.length>0){this.itemData=l[0];n=this.getItemData();(this.value===n.value&&this.text!==n.text||this.value!==n.value&&this.text===n.text)&&this.setProperties({text:n.text,value:n.value})}}else{var l=new i.DataManager(this.dataSource).executeLocal((new i.Query).where(new i.Predicate(s,"equal",this.value)));if(l&&l.length>0){this.itemData=l[0];var n=this.getItemData();(this.value===n.value&&this.text!==n.text||this.value!==n.value&&this.text===n.text)&&this.setProperties({text:n.text,value:n.value})}}}},s.prototype.setSelectOptions=function(e,i){this.list&&this.removeHover(),this.previousSelectedLI=t.isNullOrUndefined(this.selectedLI)?null:this.selectedLI,this.selectedLI=e,this.setValue(i)||((!this.isPopupOpen&&!t.isNullOrUndefined(e)||this.isPopupOpen&&!t.isNullOrUndefined(i)&&("keydown"!==i.type||"keydown"===i.type&&"enter"===i.action))&&(this.isSelectCustom=!1,this.onChangeEvent(i)),!this.isPopupOpen||t.isNullOrUndefined(this.selectedLI)||null===this.itemData||i&&"click"===i.type||this.setScrollPosition(i),"mozilla"!==t.Browser.info.name&&this.targetElement()&&(t.attributes(this.targetElement(),{"aria-describedby":""!==this.inputElement.id?this.inputElement.id:this.element.id}),this.targetElement().removeAttribute("aria-live")),!this.isPopupOpen||t.isNullOrUndefined(this.ulElement)||t.isNullOrUndefined(this.ulElement.getElementsByClassName("e-item-focus")[0])?!this.isPopupOpen||t.isNullOrUndefined(this.ulElement)||t.isNullOrUndefined(this.ulElement.getElementsByClassName("e-active")[0])||t.attributes(this.targetElement(),{"aria-activedescendant":this.ulElement.getElementsByClassName("e-active")[0].id}):t.attributes(this.targetElement(),{"aria-activedescendant":this.ulElement.getElementsByClassName("e-item-focus")[0].id}))},s.prototype.dropdownCompiler=function(e){var t=!1;if("function"!=typeof e&&e)try{t=!!document.querySelectorAll(e).length}catch(e){t=!1}return t},s.prototype.setValueTemplate=function(){var e;this.isReact&&(this.clearTemplate(["valueTemplate"]),this.valueTempElement&&(t.detach(this.valueTempElement),this.inputElement.style.display="block",this.valueTempElement=null)),this.valueTempElement||(this.valueTempElement=this.createElement("span",{className:M.value}),this.inputElement.parentElement.insertBefore(this.valueTempElement,this.inputElement),this.inputElement.style.display="none"),this.isReact||(this.valueTempElement.innerHTML="");var i=this.dropdownCompiler(this.valueTemplate),s=(e="function"!=typeof this.valueTemplate&&i?t.compile(document.querySelector(this.valueTemplate).innerHTML.trim()):t.compile(this.valueTemplate))(this.itemData,this,"valueTemplate",this.valueTemplateId,this.isStringTemplate,null,this.valueTempElement);s&&s.length>0&&t.append(s,this.valueTempElement),this.renderReactTemplates()},s.prototype.removeSelection=function(){if(this.list){var e=this.list.querySelectorAll("."+U.selected);e.length&&(t.removeClass(e,U.selected),e[0].removeAttribute("aria-selected"))}},s.prototype.getItemData=function(){var e=this.fields,i=null;i=this.itemData;var s,l;return t.isNullOrUndefined(i)||(s=t.getValue(e.value,i),l=t.getValue(e.text,i)),{value:t.isNullOrUndefined(i)||t.isUndefined(s)?i:s,text:t.isNullOrUndefined(i)||t.isUndefined(s)?i:l}},s.prototype.onChangeEvent=function(e){var t=this.getItemData(),i=this.isSelectCustom?null:this.activeIndex;this.setProperties({index:i,text:t.text,value:t.value},!0),this.detachChangeEvent(e)},s.prototype.detachChanges=function(e){return"string"==typeof e||"boolean"==typeof e||"number"==typeof e?Object.defineProperties({},{value:{value:e,enumerable:!0},text:{value:e,enumerable:!0}}):e},s.prototype.detachChangeEvent=function(e){if(this.isSelected=!1,this.previousValue=this.value,this.activeIndex=this.index,this.typedString=t.isNullOrUndefined(this.text)?"":this.text,!this.initial){var i=this.detachChanges(this.itemData),s=void 0;s="string"==typeof this.previousItemData||"boolean"==typeof this.previousItemData||"number"==typeof this.previousItemData?Object.defineProperties({},{value:{value:this.previousItemData,enumerable:!0},text:{value:this.previousItemData,enumerable:!0}}):this.previousItemData,this.setHiddenValue();var l={e:e,item:this.item,itemData:i,previousItem:this.previousSelectedLI,previousItemData:s,isInteracted:!!e,value:this.value,element:this.element,event:e};this.isAngular&&this.preventChange?this.preventChange=!1:this.trigger("change",l)}!t.isNullOrUndefined(this.value)&&""!==this.value||"Always"===this.floatLabelType||t.removeClass([this.inputWrapper.container],"e-valid-input")},s.prototype.setHiddenValue=function(){if(t.isNullOrUndefined(this.value))this.hiddenElement.innerHTML="";else if(this.hiddenElement.querySelector("option"))(e=this.hiddenElement.querySelector("option")).textContent=this.text,e.setAttribute("value",this.value.toString());else if(!t.isNullOrUndefined(this.hiddenElement)){this.hiddenElement.innerHTML="<option selected>"+this.text+"</option>";var e=this.hiddenElement.querySelector("option");e.setAttribute("value",this.value.toString())}},s.prototype.onFilterUp=function(e){if(e.ctrlKey&&86===e.keyCode||!this.isValidKey&&40!==e.keyCode&&38!==e.keyCode)this.isValidKey=!1;else switch(this.isValidKey=!1,e.keyCode){case 38:case 40:"autocomplete"!==this.getModuleName()||this.isPopupOpen||this.preventAltUp||this.isRequested?this.preventAutoFill=!1:(this.preventAutoFill=!0,this.searchLists(e)),this.preventAltUp=!1,"autocomplete"!==this.getModuleName()||t.isNullOrUndefined(this.ulElement)||t.isNullOrUndefined(this.ulElement.getElementsByClassName("e-item-focus")[0])||t.attributes(this.targetElement(),{"aria-activedescendant":this.ulElement.getElementsByClassName("e-item-focus")[0].id}),e.preventDefault();break;case 46:case 8:this.typedString=this.filterInput.value,!this.isPopupOpen&&""!==this.typedString||this.isPopupOpen&&this.queryString.length>0?(this.preventAutoFill=!0,this.searchLists(e)):""===this.typedString&&""===this.queryString&&"autocomplete"!==this.getModuleName()?(this.preventAutoFill=!0,this.searchLists(e)):""===this.typedString&&(this.list&&this.resetFocusElement(),this.activeIndex=null,"dropdownlist"!==this.getModuleName()&&(this.preventAutoFill=!0,this.searchLists(e),"autocomplete"===this.getModuleName()&&this.hidePopup())),e.preventDefault();break;default:this.typedString=this.filterInput.value,this.preventAutoFill=!1,this.searchLists(e),(this.enableVirtualization&&"autocomplete"!==this.getModuleName()||"autocomplete"===this.getModuleName()&&!(this.dataSource instanceof i.DataManager)||"autocomplete"===this.getModuleName()&&this.dataSource instanceof i.DataManager&&0!=this.totalItemCount)&&this.getFilteringSkeletonCount()}},s.prototype.getFilteringSkeletonCount=function(){var e=this.dataCount-this.viewPortInfo.endIndex,t=this.skeletonCount;this.getSkeletonCount(!0),this.skeletonCount=this.dataCount>2*this.itemCount?this.skeletonCount:e>this.skeletonCount?this.skeletonCount:e>0?e:0;var i=!0;if("autocomplete"===this.getModuleName()&&0!=this.totalItemCount&&this.totalItemCount<2*this.itemCount&&(this.skeletonCount=0,i=!1),!this.list.classList.contains(U.noData)){this.skeletonCount;t!==this.skeletonCount&&i?this.UpdateSkeleton(!0,Math.abs(t-this.skeletonCount)):this.UpdateSkeleton(),this.liCollections=this.list.querySelectorAll(".e-list-item"),this.list.getElementsByClassName("e-virtual-ddl").length>0&&(this.list.getElementsByClassName("e-virtual-ddl")[0].style=this.GetVirtualTrackHeight()),this.list.getElementsByClassName("e-virtual-ddl-content").length>0&&(this.list.getElementsByClassName("e-virtual-ddl-content")[0].style=this.getTransformValues())}},s.prototype.getSkeletonCount=function(e){this.virtualListHeight=null!=this.listHeight?parseInt(this.listHeight,10):this.virtualListHeight;var t=this.virtualListHeight>0?Math.floor(this.virtualListHeight/this.listItemHeight):0;this.skeletonCount=2*t<this.itemCount?this.itemCount:2*t,this.itemCount=e?this.itemCount:this.skeletonCount,this.skeletonCount=Math.floor(this.skeletonCount/2)+2},s.prototype.onFilterDown=function(e){switch(e.keyCode){case 13:break;case 40:case 38:this.queryString=this.filterInput.value,e.preventDefault();break;case 9:this.isPopupOpen&&"autocomplete"!==this.getModuleName()&&e.preventDefault();break;default:this.prevSelectPoints=this.getSelectionPoints(),this.queryString=this.filterInput.value}},s.prototype.removeFillSelection=function(){if(this.isInteracted){var e=this.getSelectionPoints();this.inputElement.setSelectionRange(e.end,e.end)}},s.prototype.getQuery=function(e){var t;if(!this.isCustomFilter&&this.allowFiltering&&this.filterInput){t=e?e.clone():this.query?this.query.clone():new i.Query;var s=""===this.typedString?"contains":this.filterType,l=this.typeOfData(this.dataSource).typeof;if((this.dataSource instanceof i.DataManager||"string"!==l)&&"number"!==l){var n=this.fields.text?this.fields.text:"";t.where(n,s,this.typedString,this.ignoreCase,this.ignoreAccent)}else t.where("",s,this.typedString,this.ignoreCase,this.ignoreAccent)}else t=e?e.clone():this.query?this.query.clone():new i.Query;if(this.enableVirtualization&&0!=this.viewPortInfo.endIndex&&(!(this.dataSource instanceof i.DataManager)||this.dataSource instanceof i.DataManager&&this.virtualGroupDataSource)){var o=this.getTakeValue(),r=!1;if(t)for(var a=0;a<t.queries.length;a++)if("onSkip"===t.queries[a].fn){r=!0;break}!this.allowFiltering&&this.isPopupOpen&&r||t.skip(this.virtualItemStartIndex),this.isIncrementalRequest?t.take(this.incrementalEndIndex):t.take(o),t.requiresCount()}return t},s.prototype.getSelectionPoints=function(){var e=this.inputElement;return{start:Math.abs(e.selectionStart),end:Math.abs(e.selectionEnd)}},s.prototype.searchLists=function(e){var t=this;if(this.isTyped=!0,this.activeIndex=null,this.isListSearched=!0,this.filterInput.parentElement.querySelector("."+M.clearIcon)&&(this.filterInput.parentElement.querySelector("."+M.clearIcon).style.visibility=""===this.filterInput.value?"hidden":"visible"),this.isDataFetched=!1,this.isFiltering()){this.checkAndResetCache();var i={preventDefaultAction:!1,text:this.filterInput.value,updateData:function(e,s,l){i.cancel||(t.isCustomFilter=!0,t.filteringAction(e,s,l))},baseEventArgs:e,cancel:!1};this.trigger("filtering",i,function(e){e.cancel||t.isCustomFilter||e.preventDefaultAction||t.filteringAction(t.dataSource,null,t.fields)})}},s.prototype.filter=function(e,t,i){this.isCustomFilter=!0,this.filteringAction(e,t,i)},s.prototype.filteringAction=function(e,i,s){if(!t.isNullOrUndefined(this.filterInput)){this.beforePopupOpen=!(!this.isPopupOpen&&"combobox"===this.getModuleName()&&""===this.filterInput.value);var l=this.list.classList.contains(U.noData);if(""!==this.filterInput.value.trim()||this.itemTemplate){if(this.isNotSearchList=!1,i=""===this.filterInput.value.trim()?null:i,this.enableVirtualization&&this.isFiltering()&&this.isTyped&&(this.isPreventScrollAction=!0,this.list.scrollTop=0,this.previousStartIndex=0,this.virtualListInfo=null),this.resetList(e,s,i),"dropdownlist"===this.getModuleName()&&this.list.classList.contains(U.noData)&&(this.popupContentElement.setAttribute("role","status"),this.popupContentElement.setAttribute("id","no-record"),t.attributes(this.filterInputObj.container,{"aria-activedescendant":"no-record"})),this.enableVirtualization&&l&&!this.list.classList.contains(U.noData)&&(this.list.querySelector(".e-virtual-ddl-content")||this.list.appendChild(this.createElement("div",{className:"e-virtual-ddl-content",styles:this.getTransformValues()})).appendChild(this.list.querySelector(".e-list-parent")),!this.list.querySelector(".e-virtual-ddl"))){n=this.createElement("div",{id:this.element.id+"_popup",className:"e-virtual-ddl",styles:this.GetVirtualTrackHeight()});document.getElementsByClassName("e-popup")[0].querySelector(".e-dropdownbase").appendChild(n)}}else{if(this.actionCompleteData.isUpdated=!1,this.isTyped=!1,!t.isNullOrUndefined(this.actionCompleteData.ulElement)&&!t.isNullOrUndefined(this.actionCompleteData.list)){if(this.enableVirtualization&&(this.totalItemCount=this.dataSource&&this.dataSource.length?this.dataSource.length:0,this.resetList(e,s,i),l&&!this.list.classList.contains(U.noData)&&(this.list.querySelector(".e-virtual-ddl-content")||this.list.appendChild(this.createElement("div",{className:"e-virtual-ddl-content",styles:this.getTransformValues()})).appendChild(this.list.querySelector(".e-list-parent")),!this.list.querySelector(".e-virtual-ddl")))){var n=this.createElement("div",{id:this.element.id+"_popup",className:"e-virtual-ddl",styles:this.GetVirtualTrackHeight()});document.getElementsByClassName("e-popup")[0].querySelector(".e-dropdownbase").appendChild(n)}this.onActionComplete(this.actionCompleteData.ulElement,this.actionCompleteData.list)}this.isTyped=!0,t.isNullOrUndefined(this.itemData)||"dropdownlist"!==this.getModuleName()||(this.focusIndexItem(),this.setScrollPosition()),this.isNotSearchList=!0}this.enableVirtualization&&this.getFilteringSkeletonCount(),this.renderReactTemplates()}},s.prototype.setSearchBox=function(e){if(this.isFiltering()){var i=e.querySelector("."+M.filterParent)?e.querySelector("."+M.filterParent):this.createElement("span",{className:M.filterParent});this.filterInput=this.createElement("input",{attrs:{type:"text"},className:M.filterInput}),this.element.parentNode.insertBefore(this.filterInput,this.element);var s=!1;return t.Browser.isDevice&&(s=!0),this.filterInputObj=n.Input.createInput({element:this.filterInput,buttons:s?[M.backIcon,M.filterBarClearIcon]:[M.filterBarClearIcon],properties:{placeholder:this.filterBarPlaceholder}},this.createElement),t.isNullOrUndefined(this.cssClass)||(-1!==this.cssClass.split(" ").indexOf("e-outline")?t.addClass([this.filterInputObj.container],"e-outline"):-1!==this.cssClass.split(" ").indexOf("e-filled")&&t.addClass([this.filterInputObj.container],"e-filled")),t.append([this.filterInputObj.container],i),t.prepend([i],e),t.attributes(this.filterInput,{"aria-disabled":"false",role:"combobox",autocomplete:"off",autocapitalize:"off",spellcheck:"false"}),this.clearIconElement=this.filterInput.parentElement.querySelector("."+M.clearIcon),!t.Browser.isDevice&&this.clearIconElement&&(t.EventHandler.add(this.clearIconElement,"click",this.clearText,this),this.clearIconElement.style.visibility="hidden"),t.Browser.isDevice?this.searchKeyModule=new t.KeyboardEvents(this.filterInput,{keyAction:this.mobileKeyActionHandler.bind(this),keyConfigs:this.keyConfigure,eventName:"keydown"}):this.searchKeyModule=new t.KeyboardEvents(this.filterInput,{keyAction:this.keyActionHandler.bind(this),keyConfigs:this.keyConfigure,eventName:"keydown"}),t.EventHandler.add(this.filterInput,"input",this.onInput,this),t.EventHandler.add(this.filterInput,"keyup",this.onFilterUp,this),t.EventHandler.add(this.filterInput,"keydown",this.onFilterDown,this),t.EventHandler.add(this.filterInput,"blur",this.onBlurHandler,this),t.EventHandler.add(this.filterInput,"paste",this.pasteHandler,this),this.filterInputObj}return j},s.prototype.onInput=function(e){this.isValidKey=!0,"combobox"===this.getModuleName()&&this.updateIconState(),t.Browser.isDevice&&"mozilla"===t.Browser.info.name&&(this.typedString=this.filterInput.value,this.preventAutoFill=!0,this.searchLists(e))},s.prototype.pasteHandler=function(e){var t=this;setTimeout(function(){t.typedString=t.filterInput.value,t.searchLists(e)})},s.prototype.onActionFailure=function(t){e.prototype.onActionFailure.call(this,t),this.beforePopupOpen&&this.renderPopup()},s.prototype.UpdateSkeleton=function(e,t){var i=this.list.querySelector(".e-virtual-ddl-content"),s=this.list.querySelector(".e-virtual-list");if(i&&(!s||e)&&this.enableVirtualization)for(var l=e?t:this.skeletonCount,n=0;n<l;n++){var r=this.createElement("li",{className:M.virtualList,styles:"overflow: inherit"});this.enableVirtualization&&this.itemTemplate&&(r.style.height=this.listItemHeight+"px");var a=new o.Skeleton({shape:"Text",height:"10px",width:"95%",cssClass:"e-skeleton-text"});a.appendTo(this.createElement("div")),r.appendChild(a.element),i.firstChild.insertBefore(r,i.firstChild.children[0])}},s.prototype.getTakeValue=function(){return this.allowFiltering&&"dropdownlist"===this.getModuleName()&&t.Browser.isDevice?Math.round(window.outerHeight/this.listItemHeight):this.itemCount},s.prototype.onActionComplete=function(s,l,n,o){var r=this;if(this.dataSource instanceof i.DataManager&&!t.isNullOrUndefined(n)&&!this.virtualGroupDataSource&&(this.totalItemCount=n.count),this.isNotSearchList&&!this.enableVirtualization)return void(this.isNotSearchList=!1);var a=this.itemCount;if(this.isActive||!t.isNullOrUndefined(s)){var h=this.selectedLI?this.selectedLI.cloneNode(!0):null;if(e.prototype.onActionComplete.call(this,s,l,n),this.skeletonCount=0!=this.totalItemCount&&this.totalItemCount<2*this.itemCount?0:this.skeletonCount,this.updateSelectElementData(this.allowFiltering),this.isRequested&&!t.isNullOrUndefined(this.searchKeyEvent)&&"keydown"===this.searchKeyEvent.type&&(this.isRequested=!1,this.keyActionHandler(this.searchKeyEvent),this.searchKeyEvent=null),this.isRequested&&!t.isNullOrUndefined(this.searchKeyEvent)&&(this.incrementalSearch(this.searchKeyEvent),this.searchKeyEvent=null),this.enableVirtualization||(this.list.scrollTop=0),t.isNullOrUndefined(s)||t.attributes(s,{id:this.element.id+"_options",role:"listbox","aria-hidden":"false","aria-label":"listbox"}),this.initialRemoteRender){if(this.initial=!0,this.activeIndex=this.index,this.initialRemoteRender=!1,this.value&&this.dataSource instanceof i.DataManager){var p=t.isNullOrUndefined(this.fields.value)?this.fields.text:this.fields.value,u=this.fields.value.split("."),d=l.some(function(e){return t.isNullOrUndefined(e[p])&&u.length>1?r.checkFieldValue(e,u)===r.value:e[p]===r.value});this.enableVirtualization&&this.virtualGroupDataSource&&(d=this.virtualGroupDataSource.some(function(e){return t.isNullOrUndefined(e[p])&&u.length>1?r.checkFieldValue(e,u)===r.value:e[p]===r.value})),d?this.updateValues():this.dataSource.executeQuery(this.getQuery(this.query).where(new i.Predicate(p,"equal",this.value))).then(function(e){e.result.length>0?(r.addItem(e.result,l.length),r.updateValues()):r.updateValues()})}else this.updateValues();this.initial=!1}else"autocomplete"===this.getModuleName()&&this.value&&this.setInputValue();if("autocomplete"!==this.getModuleName()&&this.isFiltering()&&!this.isTyped)(!this.actionCompleteData.isUpdated||!this.isCustomFilter&&!this.isFilterFocus||t.isNullOrUndefined(this.itemData)&&this.allowFiltering&&(this.dataSource instanceof i.DataManager||!t.isNullOrUndefined(this.dataSource)&&!t.isNullOrUndefined(this.dataSource.length)&&0!==this.dataSource.length))&&(this.itemTemplate&&"EJS-COMBOBOX"===this.element.tagName&&this.allowFiltering?setTimeout(function(){r.updateActionCompleteDataValues(s,l)},0):this.updateActionCompleteDataValues(s,l)),(this.allowCustom||this.allowFiltering&&!this.isValueInList(l,this.value)&&this.dataSource instanceof i.DataManager)&&!this.enableVirtualization?this.addNewItem(l,h):(this.allowCustom||this.allowFiltering&&this.isValueInList(l,this.value))&&!this.enableVirtualization&&this.addNewItem(l,h),(!t.isNullOrUndefined(this.itemData)||t.isNullOrUndefined(this.itemData)&&this.enableVirtualization)&&this.focusIndexItem(),this.enableVirtualization&&this.updateActionCompleteDataValues(s,l);else if(this.enableVirtualization&&"autocomplete"!==this.getModuleName()&&!this.isFiltering()){var c=this.getItemData().value;this.activeIndex=this.getIndexByValue(c);var m=this.findListElement(this.list,"li","data-value",c);this.selectedLI=m}else this.enableVirtualization&&"autocomplete"===this.getModuleName()&&(this.activeIndex=this.skeletonCount);this.beforePopupOpen&&(this.renderPopup(n),this.enableVirtualization&&(this.list.querySelector(".e-virtual-list")||(this.UpdateSkeleton(),this.liCollections=this.list.querySelectorAll(".e-list-item"))),this.enableVirtualization&&a!=this.itemCount&&this.resetList(this.dataSource,this.fields))}},s.prototype.isValueInList=function(e,t){if(Array.isArray(e)){for(var i=0;i<e.length;i++)if(e[i]===t)return!0}else if("object"==typeof e&&null!==e)for(var s in e)if(Object.prototype.hasOwnProperty.call(e,s)&&e[s]===t)return!0;return!1},s.prototype.checkFieldValue=function(e,t){var i=e;return t.forEach(function(e){i=i[e]}),i},s.prototype.updateActionCompleteDataValues=function(e,t){this.actionCompleteData={ulElement:e.cloneNode(!0),list:t,isUpdated:!0},this.actionData.list!==this.actionCompleteData.list&&this.actionCompleteData.ulElement&&this.actionCompleteData.list&&(this.actionData=this.actionCompleteData)},s.prototype.addNewItem=function(e,i){var s=this;if(!t.isNullOrUndefined(this.itemData)&&!t.isNullOrUndefined(i)){var l=this.getItemData().value;e.some(function(e){return("string"==typeof e||"number"==typeof e)&&e===l||t.getValue(s.fields.value,e)===l})||this.addItem(this.itemData)}},s.prototype.updateActionCompleteData=function(e,t,i){var s=this;"autocomplete"!==this.getModuleName()&&this.actionCompleteData.ulElement&&(this.itemTemplate&&"EJS-COMBOBOX"===this.element.tagName&&this.allowFiltering?setTimeout(function(){s.actionCompleteDataUpdate(e,t,i)},0):this.actionCompleteDataUpdate(e,t,i))},s.prototype.actionCompleteDataUpdate=function(e,t,i){null!==i?this.actionCompleteData.ulElement.insertBefore(e.cloneNode(!0),this.actionCompleteData.ulElement.childNodes[i]):this.actionCompleteData.ulElement.appendChild(e.cloneNode(!0)),this.isFiltering()&&this.actionCompleteData.list.indexOf(t)<0&&this.actionCompleteData.list.push(t)},s.prototype.focusIndexItem=function(){var e=this.getItemData().value;this.activeIndex=this.getIndexByValue(e);var i=this.findListElement(this.list,"li","data-value",e);this.selectedLI=i,this.activeItem(i),this.enableVirtualization&&t.isNullOrUndefined(i)||this.removeFocus()},s.prototype.updateSelection=function(){var e=this.list.querySelector("."+U.selected);e?(this.setProperties({index:this.getIndexByValue(e.getAttribute("data-value"))}),this.activeIndex=this.index):(this.removeFocus(),this.list.querySelector("."+U.li).classList.add(M.focus))},s.prototype.updateSelectionList=function(){if(!(this.list&&this.list.querySelector(".e-active"))&&!t.isNullOrUndefined(this.value)){var e=this.findListElement(this.list,"li","data-value",this.value);e&&e.classList.add("e-active")}},s.prototype.checkAndResetCache=function(){this.enableVirtualization&&(this.generatedDataObject={},this.virtualItemStartIndex=this.virtualItemEndIndex=0,this.viewPortInfo={currentPageNumber:null,direction:null,sentinelInfo:{},offsets:{},startIndex:0,endIndex:this.itemCount},this.selectedValueInfo=null)},s.prototype.removeFocus=function(){var e=this.list.querySelectorAll("."+M.focus);e&&e.length&&t.removeClass(e,M.focus)},s.prototype.getTransformValues=function(){var e=this.viewPortInfo.startIndex*this.listItemHeight;return e-=this.skeletonCount*this.listItemHeight,"transform: translate(0px, "+(e=0===this.viewPortInfo.startIndex&&this.listData&&0===this.listData.length?0:e)+"px);"},s.prototype.GetVirtualTrackHeight=function(){var e="height: "+((this.totalItemCount===this.viewPortInfo.endIndex?this.totalItemCount*this.listItemHeight-this.itemCount*this.listItemHeight:this.totalItemCount*this.listItemHeight)-this.itemCount*this.listItemHeight)+"px;";return"autocomplete"===this.getModuleName()&&0===this.skeletonCount?"height: 0px;":e},s.prototype.renderPopup=function(e){var i=this;if(this.popupObj&&document.body.contains(this.popupObj.element))return void this.refreshPopup();var s={cancel:!1};this.trigger("beforeOpen",s,function(s){if(s.cancel)i.beforePopupOpen=!1;else{var l=i.createElement("div",{id:i.element.id+"_popup",className:"e-ddl e-popup "+(null!==i.cssClass?i.cssClass:"")});l.setAttribute("aria-label",i.element.id),l.setAttribute("role","dialog");var n=i.setSearchBox(l);if(i.listHeight=t.formatUnit(i.popupHeight),i.headerTemplate&&i.setHeaderTemplate(l),t.append([i.list],l),i.footerTemplate&&i.setFooterTemplate(l),document.body.appendChild(l),l.style.top="0px",i.enableVirtualization&&i.itemTemplate){var o=l.querySelectorAll("li.e-list-item:not(.e-virtual-list)");i.listItemHeight=o.length>0?Math.ceil(o[0].getBoundingClientRect().height):0}if(i.enableVirtualization&&!i.list.classList.contains(U.noData))if(i.list.querySelector(".e-virtual-ddl-content")?i.list.getElementsByClassName("e-virtual-ddl-content")[0].style=i.getTransformValues():i.list.appendChild(i.createElement("div",{className:"e-virtual-ddl-content",styles:i.getTransformValues()})).appendChild(i.list.querySelector(".e-list-parent")),i.UpdateSkeleton(),i.liCollections=i.list.querySelectorAll("."+U.li),i.virtualItemCount=i.itemCount,i.list.querySelector(".e-virtual-ddl"))i.list.getElementsByClassName("e-virtual-ddl")[0].style=i.GetVirtualTrackHeight();else{var r=i.createElement("div",{id:i.element.id+"_popup",className:"e-virtual-ddl",styles:i.GetVirtualTrackHeight()});l.querySelector(".e-dropdownbase").appendChild(r)}if(l.style.visibility="hidden","auto"!==i.popupHeight){if(i.searchBoxHeight=0,t.isNullOrUndefined(n.container)||"combobox"===i.getModuleName()||"autocomplete"===i.getModuleName()||(i.searchBoxHeight=n.container.parentElement.getBoundingClientRect().height,i.listHeight=(parseInt(i.listHeight,10)-i.searchBoxHeight).toString()+"px"),i.headerTemplate){i.header=i.header?i.header:l.querySelector(".e-ddl-header");a=Math.round(i.header.getBoundingClientRect().height);i.listHeight=(parseInt(i.listHeight,10)-(a+i.searchBoxHeight)).toString()+"px"}if(i.footerTemplate){i.footer=i.footer?i.footer:l.querySelector(".e-ddl-footer");var a=Math.round(i.footer.getBoundingClientRect().height);i.listHeight=(parseInt(i.listHeight,10)-(a+i.searchBoxHeight)).toString()+"px"}i.list.style.maxHeight=(parseInt(i.listHeight,10)-2).toString()+"px",l.style.maxHeight=t.formatUnit(i.popupHeight)}else l.style.height="auto";var h=0,p=void 0;if(i.isPreventScrollAction=!0,!t.isNullOrUndefined(i.selectedLI)&&!t.isNullOrUndefined(i.activeIndex)&&i.activeIndex>=0?i.setScrollPosition():i.enableVirtualization?i.setScrollPosition():i.list.scrollTop=0,t.Browser.isDevice&&!i.allowFiltering&&("dropdownlist"===i.getModuleName()||i.isDropDownClick&&"combobox"===i.getModuleName())){h=i.getOffsetValue(l);var u=i.isEmptyList()?i.list:i.liCollections[0];t.isNullOrUndefined(i.inputElement)||(p=-(parseInt(getComputedStyle(u).textIndent,10)-parseInt(getComputedStyle(i.inputElement).paddingLeft,10)+parseInt(getComputedStyle(i.inputElement.parentElement).borderLeftWidth,10)))}i.createPopup(l,h,p),i.popupContentElement=i.popupObj.element.querySelector(".e-content"),i.getFocusElement(),i.checkCollision(l),t.Browser.isDevice&&(parseInt(i.popupWidth.toString(),10)>window.outerWidth&&("dropdownlist"!==i.getModuleName()||!i.allowFiltering)&&i.popupObj.element.classList.add("e-wide-popup"),i.popupObj.element.classList.add(M.device),("dropdownlist"===i.getModuleName()||"combobox"===i.getModuleName()&&!i.allowFiltering&&i.isDropDownClick)&&(i.popupObj.collision={X:"fit",Y:"fit"}),i.isFilterLayout()&&(i.popupObj.element.classList.add(M.mobileFilter),i.popupObj.position={X:0,Y:0},i.popupObj.dataBind(),t.attributes(i.popupObj.element,{style:"left:0px;right:0px;top:0px;bottom:0px;"}),t.addClass([document.body,i.popupObj.element],M.popupFullScreen),i.setSearchBoxPosition(),i.backIconElement=n.container.querySelector(".e-back-icon"),i.clearIconElement=n.container.querySelector("."+M.clearIcon),t.EventHandler.add(i.backIconElement,"click",i.clickOnBackIcon,i),t.EventHandler.add(i.clearIconElement,"click",i.clearText,i))),l.style.visibility="visible",t.addClass([l],"e-popup-close");for(var d=0,c=i.popupObj.getScrollableParent(i.inputWrapper.container);d<c.length;d++){var m=c[d];t.EventHandler.add(m,"scroll",i.scrollHandler,i)}t.isNullOrUndefined(i.list)||(i.unWireListEvents(),i.wireListEvents()),i.selectedElementID=i.selectedLI?i.selectedLI.id:null,i.enableVirtualization&&(i.notify("bindScrollEvent",{module:"VirtualScroll",component:i.getModuleName(),enable:i.enableVirtualization}),setTimeout(function(){(i.value||i.list.querySelector(".e-active"))&&(i.updateSelectionList(),i.selectedValueInfo&&i.viewPortInfo&&i.viewPortInfo.offsets.top?i.list.scrollTop=i.viewPortInfo.offsets.top:i.scrollBottom(!0,!0))},5)),t.attributes(i.targetElement(),{"aria-expanded":"true","aria-owns":i.element.id+"_popup","aria-controls":i.element.id}),"dropdownlist"!==i.getModuleName()&&i.list.classList.contains("e-nodata")&&(t.attributes(i.targetElement(),{"aria-activedescendant":"no-record"}),i.popupContentElement.setAttribute("role","status"),i.popupContentElement.setAttribute("id","no-record")),i.inputElement.setAttribute("aria-expanded","true"),i.inputElement.setAttribute("aria-controls",i.element.id);var f=i.isFiltering()?i.filterInput.parentElement:i.inputWrapper.container;t.addClass([f],[M.inputFocus]);var v={name:"FadeIn",duration:100};i.beforePopupOpen=!0;var g={popup:i.popupObj,event:e,cancel:!1,animation:v};i.trigger("open",g,function(e){e.cancel?(i.beforePopupOpen=!1,i.destroyPopup()):(t.isNullOrUndefined(i.inputWrapper)||t.addClass([i.inputWrapper.container],[M.iconAnimation]),i.renderReactTemplates(),t.isNullOrUndefined(i.popupObj)||i.popupObj.show(new t.Animation(e.animation),1e3===i.zIndex?i.element:null))})}})},s.prototype.checkCollision=function(e){(!t.Browser.isDevice||t.Browser.isDevice&&"dropdownlist"!==this.getModuleName()&&!this.isDropDownClick)&&(l.isCollide(e).length>0&&(e.style.marginTop=-parseInt(getComputedStyle(e).marginTop,10)+"px"),this.popupObj.resolveCollision())},s.prototype.getOffsetValue=function(e){var t=getComputedStyle(e),i=parseInt(t.borderTopWidth,10),s=parseInt(t.borderBottomWidth,10);return this.setPopupPosition(i+s)},s.prototype.createPopup=function(e,i,s){var n=this;this.popupObj=new l.Popup(e,{width:this.setWidth(),targetType:"relative",relateTo:this.inputWrapper.container,collision:this.enableRtl?{X:"fit",Y:"flip"}:{X:"flip",Y:"flip"},offsetY:i,enableRtl:this.enableRtl,offsetX:s,position:this.enableRtl?{X:"right",Y:"bottom"}:{X:"left",Y:"bottom"},zIndex:this.zIndex,close:function(){n.isDocumentClick||n.focusDropDown(),n.isReact&&n.clearTemplate(["headerTemplate","footerTemplate"]),n.isNotSearchList=!1,n.isDocumentClick=!1,n.destroyPopup(),n.isFiltering()&&n.actionCompleteData.list&&n.actionCompleteData.list[0]&&(n.isActive=!0,n.enableVirtualization?n.onActionComplete(n.ulElement,n.listData,null,!0):n.onActionComplete(n.actionCompleteData.ulElement,n.actionCompleteData.list,null,!0))},open:function(){t.EventHandler.add(document,"mousedown",n.onDocumentClick,n),n.isPopupOpen=!0;var e=n.actionCompleteData&&n.actionCompleteData.ulElement&&n.actionCompleteData.ulElement.querySelector("li"),i=n.list.querySelector("ul li");t.isNullOrUndefined(n.ulElement)||t.isNullOrUndefined(n.ulElement.getElementsByClassName("e-item-focus")[0])?t.isNullOrUndefined(n.ulElement)||t.isNullOrUndefined(n.ulElement.getElementsByClassName("e-active")[0])||t.attributes(n.targetElement(),{"aria-activedescendant":n.ulElement.getElementsByClassName("e-active")[0].id}):t.attributes(n.targetElement(),{"aria-activedescendant":n.ulElement.getElementsByClassName("e-item-focus")[0].id}),n.isFiltering()&&n.itemTemplate&&n.element.tagName===n.getNgDirective()&&e&&i&&e.textContent!==i.textContent&&"EJS-COMBOBOX"!==n.element.tagName&&n.cloneElements(),n.isFilterLayout()&&(t.removeClass([n.inputWrapper.container],[M.inputFocus]),n.isFilterFocus=!0,n.filterInput.focus(),n.inputWrapper.clearButton&&t.addClass([n.inputWrapper.clearButton],M.clearIconHide)),n.activeStateChange()},targetExitViewport:function(){t.Browser.isDevice||n.hidePopup()}})},s.prototype.isEmptyList=function(){return!t.isNullOrUndefined(this.liCollections)&&0===this.liCollections.length},s.prototype.getFocusElement=function(){},s.prototype.isFilterLayout=function(){return"dropdownlist"===this.getModuleName()&&this.allowFiltering},s.prototype.scrollHandler=function(){t.Browser.isDevice&&("dropdownlist"===this.getModuleName()&&!this.isFilterLayout()||"combobox"===this.getModuleName()&&!this.allowFiltering&&this.isDropDownClick)&&this.element&&!this.isElementInViewport(this.element)&&this.hidePopup()},s.prototype.isElementInViewport=function(e){var t=e.getBoundingClientRect();return t.top>=0&&t.left>=0&&t.bottom<=window.innerHeight&&t.right<=window.innerWidth},s.prototype.setSearchBoxPosition=function(){var e=this.filterInput.parentElement.getBoundingClientRect().height;this.popupObj.element.style.maxHeight="100%",this.popupObj.element.style.width="100%",this.list.style.maxHeight=window.innerHeight-e+"px",this.list.style.height=window.innerHeight-e+"px";var i=this.filterInput.parentElement.querySelector("."+M.clearIcon);t.detach(this.filterInput),i.parentElement.insertBefore(this.filterInput,i)},s.prototype.setPopupPosition=function(e){var i,s=e,l=this.list.querySelector("."+M.focus)||this.selectedLI,n=this.isEmptyList()?this.list:this.liCollections[0],o=this.isEmptyList()?this.list:this.liCollections[this.getItems().length-1],r=n.getBoundingClientRect().height;this.listItemHeight=r;var a=this.list.offsetHeight/2,h=t.isNullOrUndefined(l)?n.offsetTop:l.offsetTop;if(o.offsetTop-a<h&&!t.isNullOrUndefined(this.liCollections)&&this.liCollections.length>0&&!t.isNullOrUndefined(l)){var p=this.list.offsetHeight/r,u=parseInt(getComputedStyle(this.list).paddingBottom,10);i=(p-(this.liCollections.length-this.activeIndex))*r-s+u,this.list.scrollTop=l.offsetTop}else h>a&&!this.enableVirtualization?(i=a-r/2,this.list.scrollTop=h-a+r/2):i=h;return-(i=i+r+s-(r-this.inputWrapper.container.offsetHeight)/2)},s.prototype.setWidth=function(){var e=t.formatUnit(this.popupWidth);if(e.indexOf("%")>-1&&(e=(this.inputWrapper.container.offsetWidth*parseFloat(e)/100).toString()+"px"),t.Browser.isDevice&&!this.allowFiltering&&("dropdownlist"===this.getModuleName()||this.isDropDownClick&&"combobox"===this.getModuleName())){var i=this.isEmptyList()?this.list:this.liCollections[0];e=parseInt(e,10)+2*(parseInt(getComputedStyle(i).textIndent,10)-parseInt(getComputedStyle(this.inputElement).paddingLeft,10)+parseInt(getComputedStyle(this.inputElement.parentElement).borderLeftWidth,10))+"px"}return e},s.prototype.scrollBottom=function(e,i,s){var l=this;if(void 0===i&&(i=!1),void 0===s&&(s=null),t.isNullOrUndefined(this.selectedLI)&&this.enableVirtualization&&(this.selectedLI=this.list.querySelector("."+U.li),!t.isNullOrUndefined(this.selectedLI)&&this.selectedLI.classList.contains("e-virtual-list")&&(this.selectedLI=this.liCollections[this.skeletonCount])),!t.isNullOrUndefined(this.selectedLI)){this.isUpwardScrolling=!1;var n=this.list.querySelectorAll(".e-virtual-list").length,o=this.list.querySelector("li:last-of-type")?this.list.querySelector("li:last-of-type").getAttribute("data-value"):null,r=this.virtualListInfo&&this.virtualListInfo.startIndex?this.selectedLI.offsetTop+this.virtualListInfo.startIndex*this.selectedLI.offsetHeight:this.selectedLI.offsetTop,a=this.list.offsetHeight,h=r-n*this.selectedLI.offsetHeight+this.selectedLI.offsetHeight-this.list.scrollTop,p=this.list.scrollTop+h-a,u=!1;p=e?p+2*parseInt(getComputedStyle(this.list).paddingTop,10):p+parseInt(getComputedStyle(this.list).paddingTop,10);var d=r-n*this.selectedLI.offsetHeight+this.selectedLI.offsetHeight-this.list.scrollTop;if(d=this.fields.groupBy&&!t.isNullOrUndefined(this.fixedHeaderElement)?d-this.fixedHeaderElement.offsetHeight:d,0!==this.activeIndex||this.enableVirtualization){if(h>a||!(d>0&&this.list.offsetHeight>d)){var c=this.selectedLI?this.selectedLI.getAttribute("data-value"):null,m="pageDown"==s?this.getPageCount()-2:1;!this.enableVirtualization||this.isKeyBoardAction||i?this.isKeyBoardAction&&this.enableVirtualization&&o&&c===o&&"end"!=s&&!this.isVirtualScrolling?(this.isPreventKeyAction=!0,this.enableVirtualization&&this.itemTemplate?this.list.scrollTop+=p:this.list.scrollTop+=this.selectedLI.offsetHeight*m,this.isPreventKeyAction=!this.IsScrollerAtEnd()&&this.isPreventKeyAction,this.isKeyBoardAction=!1,this.isPreventScrollAction=!1):this.enableVirtualization&&"end"==s?(this.isPreventKeyAction=!1,this.isKeyBoardAction=!1,this.isPreventScrollAction=!1,this.list.scrollTop=this.list.scrollHeight):("pageDown"==s&&this.enableVirtualization&&!this.isVirtualScrolling&&(this.isPreventKeyAction=!1,this.isKeyBoardAction=!1,this.isPreventScrollAction=!1,p+=this.selectedLI.offsetHeight*m),this.list.scrollTop=p):this.list.scrollTop=this.virtualListInfo&&this.virtualListInfo.startIndex?this.virtualListInfo.startIndex*this.listItemHeight:0,u=this.isKeyBoardAction}}else this.list.scrollTop=0,u=this.isKeyBoardAction;this.isKeyBoardAction=u,this.enableVirtualization&&this.fields.groupBy&&this.fixedHeaderElement&&"down"==s&&setTimeout(function(){l.scrollStop(null,!0)},100)}},s.prototype.scrollTop=function(e){if(void 0===e&&(e=null),!t.isNullOrUndefined(this.selectedLI)){var i=this.list.querySelectorAll(".e-virtual-list").length,s=this.virtualListInfo&&this.virtualListInfo.startIndex?this.selectedLI.offsetTop+this.virtualListInfo.startIndex*this.selectedLI.offsetHeight:this.selectedLI.offsetTop,l=s-i*this.selectedLI.offsetHeight-this.list.scrollTop,n=this.list.querySelector("li.e-list-item:not(.e-virtual-list)")?this.list.querySelector("li.e-list-item:not(.e-virtual-list)").getAttribute("data-value"):null;l=this.fields.groupBy&&!t.isNullOrUndefined(this.fixedHeaderElement)?l-this.fixedHeaderElement.offsetHeight:l;var o=s-i*this.selectedLI.offsetHeight+this.selectedLI.offsetHeight-this.list.scrollTop,r=this.enableVirtualization&&"autocomplete"===this.getModuleName()&&l<=0;if(0!==this.activeIndex||this.enableVirtualization)if(l<0||r){var a=this.selectedLI?this.selectedLI.getAttribute("data-value"):null,h="pageUp"==e?this.getPageCount()-2:1;this.enableVirtualization&&this.isKeyBoardAction&&n&&a===n&&"home"!=e&&!this.isVirtualScrolling?(this.isUpwardScrolling=!0,this.isPreventKeyAction=!0,this.list.scrollTop-=this.selectedLI.offsetHeight*h,this.isPreventKeyAction=0!=this.list.scrollTop&&this.isPreventKeyAction,this.isKeyBoardAction=!1,this.isPreventScrollAction=!1):this.enableVirtualization&&"home"==e?(this.isPreventScrollAction=!1,this.isPreventKeyAction=!0,this.isKeyBoardAction=!1,this.list.scrollTo(0,0)):("pageUp"==e&&this.enableVirtualization&&!this.isVirtualScrolling&&(this.isPreventKeyAction=!1,this.isKeyBoardAction=!1,this.isPreventScrollAction=!1,l-=this.selectedLI.offsetHeight*h),this.list.scrollTop=this.list.scrollTop+l)}else o>0&&this.list.offsetHeight>o||(this.list.scrollTop=this.selectedLI.offsetTop-(this.fields.groupBy&&!t.isNullOrUndefined(this.fixedHeaderElement)?this.fixedHeaderElement.offsetHeight:0));else this.list.scrollTop=0}},s.prototype.isEditTextBox=function(){return!1},s.prototype.isFiltering=function(){return this.allowFiltering},s.prototype.isPopupButton=function(){return!0},s.prototype.setScrollPosition=function(e){if(this.isPreventScrollAction=!0,t.isNullOrUndefined(e))this.scrollBottom(!0);else switch(e.action){case"pageDown":case"down":case"end":this.isKeyBoardAction=!0,this.scrollBottom(!1,!1,e.action);break;default:this.isKeyBoardAction="up"==e.action||"pageUp"==e.action||"open"==e.action,this.scrollTop(e.action)}this.isKeyBoardAction=!1},s.prototype.clearText=function(){this.filterInput.value=this.typedString="",this.searchLists(null),this.enableVirtualization&&(this.list.scrollTop=0,this.totalItemCount=this.dataCount=this.dataSource&&this.dataSource.length?this.dataSource.length:0,this.list.getElementsByClassName("e-virtual-ddl")[0]&&(this.list.getElementsByClassName("e-virtual-ddl")[0].style=this.GetVirtualTrackHeight()),this.getSkeletonCount(),this.UpdateSkeleton(),this.liCollections=this.list.querySelectorAll(".e-list-item"),this.list.getElementsByClassName("e-virtual-ddl-content")[0]&&(this.list.getElementsByClassName("e-virtual-ddl-content")[0].style=this.getTransformValues()))},s.prototype.setEleWidth=function(e){t.isNullOrUndefined(e)||("number"==typeof e?this.inputWrapper.container.style.width=t.formatUnit(e):"string"==typeof e&&(this.inputWrapper.container.style.width=e.match(/px|%|em/)?e:t.formatUnit(e)))},s.prototype.closePopup=function(e,s){var l=this,n=!t.isNullOrUndefined(this.filterInput)&&!t.isNullOrUndefined(this.filterInput.value)&&""!==this.filterInput.value;"combobox"===this.getModuleName()&&this.typedString;if(this.isTyped=!1,this.popupObj&&document.body.contains(this.popupObj.element)&&this.beforePopupOpen){this.keyboardEvent=null,t.EventHandler.remove(document,"mousedown",this.onDocumentClick),this.isActive=!1,this.filterInputObj=null,this.isDropDownClick=!1,this.preventAutoFill=!1;for(var o=0,r=this.popupObj.getScrollableParent(this.inputWrapper.container);o<r.length;o++){var a=r[o];t.EventHandler.remove(a,"scroll",this.scrollHandler)}t.Browser.isDevice&&this.isFilterLayout()&&t.removeClass([document.body,this.popupObj.element],M.popupFullScreen),this.isFilterLayout()&&(t.Browser.isDevice||(this.searchKeyModule.destroy(),this.clearIconElement&&t.EventHandler.remove(this.clearIconElement,"click",this.clearText)),this.backIconElement&&(t.EventHandler.remove(this.backIconElement,"click",this.clickOnBackIcon),t.EventHandler.remove(this.clearIconElement,"click",this.clearText)),t.isNullOrUndefined(this.filterInput)||(t.EventHandler.remove(this.filterInput,"input",this.onInput),t.EventHandler.remove(this.filterInput,"keyup",this.onFilterUp),t.EventHandler.remove(this.filterInput,"keydown",this.onFilterDown),t.EventHandler.remove(this.filterInput,"blur",this.onBlurHandler),t.EventHandler.remove(this.filterInput,"paste",this.pasteHandler)),this.allowFiltering&&"dropdownlist"===this.getModuleName()&&this.filterInput.removeAttribute("aria-activedescendant"),this.filterInput=null),t.attributes(this.targetElement(),{"aria-expanded":"false"}),this.inputElement.setAttribute("aria-expanded","false"),this.targetElement().removeAttribute("aria-owns"),this.targetElement().removeAttribute("aria-activedescendant"),this.inputWrapper.container.classList.remove(M.iconAnimation),this.isFiltering()&&(this.actionCompleteData.isUpdated=!1),this.enableVirtualization&&(null==this.value||this.isTyped?(this.viewPortInfo.endIndex=this.viewPortInfo&&this.viewPortInfo.endIndex>0?this.viewPortInfo.endIndex:this.itemCount,("autocomplete"===this.getModuleName()||"dropdownlist"===this.getModuleName()&&!t.isNullOrUndefined(this.typedString)&&""!=this.typedString||"combobox"===this.getModuleName()&&this.allowFiltering&&!t.isNullOrUndefined(this.typedString)&&""!=this.typedString)&&this.checkAndResetCache()):"autocomplete"===this.getModuleName()&&this.checkAndResetCache(),"dropdownlist"!==this.getModuleName()&&"combobox"!==this.getModuleName()||0==this.skeletonCount||this.getSkeletonCount(!0)),this.beforePopupOpen=!1;var h={name:"FadeOut",duration:100,delay:e||0},p={popup:this.popupObj,cancel:!1,animation:h,event:s||null};this.trigger("close",p,function(e){if(!t.isNullOrUndefined(l.popupObj)&&!t.isNullOrUndefined(l.popupObj.element.querySelector(".e-fixed-head"))){var i=l.popupObj.element.querySelector(".e-fixed-head");i.parentNode.removeChild(i),l.fixedHeaderElement=null}e.cancel||("autocomplete"===l.getModuleName()&&l.rippleFun(),l.isPopupOpen?l.popupObj.hide(new t.Animation(e.animation)):l.destroyPopup())}),t.Browser.isDevice&&!p.cancel&&this.popupObj.element.classList.contains("e-wide-popup")&&this.popupObj.element.classList.remove("e-wide-popup");var u;u=this.dataSource instanceof i.DataManager?this.virtualGroupDataSource&&this.virtualGroupDataSource.length?this.virtualGroupDataSource.length:0:this.dataSource&&this.dataSource.length?this.dataSource.length:0,this.enableVirtualization&&this.isFiltering()&&null!=this.value&&n&&this.totalItemCount!==u&&(this.updateInitialData(),this.checkAndResetCache())}},s.prototype.updateInitialData=function(){var e=this.selectData,t=this.renderItems(e,this.fields);this.list.scrollTop=0,this.virtualListInfo={currentPageNumber:null,direction:null,sentinelInfo:{},offsets:{},startIndex:0,endIndex:0},"combobox"===this.getModuleName()&&(this.typedString=""),this.previousStartIndex=0,this.previousEndIndex=0,this.dataSource instanceof i.DataManager?this.totalItemCount=this.dataCount=this.virtualGroupDataSource&&this.virtualGroupDataSource.length?this.virtualGroupDataSource.length:0:this.totalItemCount=this.dataCount=this.dataSource&&this.dataSource.length?this.dataSource.length:0,this.list.getElementsByClassName("e-virtual-ddl")[0]&&(this.list.getElementsByClassName("e-virtual-ddl")[0].style=this.GetVirtualTrackHeight()),"autocomplete"!==this.getModuleName()&&0!=this.totalItemCount&&this.totalItemCount>2*this.itemCount&&this.getSkeletonCount(),this.UpdateSkeleton(),this.listData=e,this.updateActionCompleteDataValues(t,e),this.liCollections=this.list.querySelectorAll(".e-list-item"),this.list.getElementsByClassName("e-virtual-ddl-content")[0]&&(this.list.getElementsByClassName("e-virtual-ddl-content")[0].style=this.getTransformValues())},s.prototype.destroyPopup=function(){this.isPopupOpen=!1,this.isFilterFocus=!1,this.popupObj&&(this.popupObj.destroy(),t.detach(this.popupObj.element))},s.prototype.clickOnBackIcon=function(){this.hidePopup(),this.focusIn()},s.prototype.render=function(){this.preselectedIndex=t.isNullOrUndefined(this.index)?null:this.index,"INPUT"===this.element.tagName?(this.inputElement=this.element,t.isNullOrUndefined(this.inputElement.getAttribute("role"))&&this.inputElement.setAttribute("role","combobox"),t.isNullOrUndefined(this.inputElement.getAttribute("type"))&&this.inputElement.setAttribute("type","text"),this.inputElement.setAttribute("aria-expanded","false")):(this.inputElement=this.createElement("input",{attrs:{role:"combobox",type:"text"}}),this.element.tagName!==this.getNgDirective()&&(this.element.style.display="none"),this.element.parentElement.insertBefore(this.inputElement,this.element),this.preventTabIndex(this.inputElement));var e=this.cssClass;t.isNullOrUndefined(this.cssClass)||""===this.cssClass||(e=this.cssClass.replace(/\s+/g," ").trim()),!t.isNullOrUndefined(t.closest(this.element,"fieldset"))&&t.closest(this.element,"fieldset").disabled&&(this.enabled=!1),this.inputWrapper=n.Input.createInput({element:this.inputElement,buttons:this.isPopupButton()?[M.icon]:null,floatLabelType:this.floatLabelType,properties:{readonly:"dropdownlist"===this.getModuleName()||this.readonly,placeholder:this.placeholder,cssClass:e,enabled:this.enabled,enableRtl:this.enableRtl,showClearButton:this.showClearButton}},this.createElement),this.element.tagName===this.getNgDirective()?this.element.appendChild(this.inputWrapper.container):this.inputElement.parentElement.insertBefore(this.element,this.inputElement),this.hiddenElement=this.createElement("select",{attrs:{"aria-hidden":"true","aria-label":this.getModuleName(),tabindex:"-1",class:M.hiddenElement}}),t.prepend([this.hiddenElement],this.inputWrapper.container),this.validationAttribute(this.element,this.hiddenElement),this.setReadOnly(),this.setFields(),this.inputWrapper.container.style.width=t.formatUnit(this.width),this.inputWrapper.container.classList.add("e-ddl"),"Auto"===this.floatLabelType&&n.Input.calculateWidth(this.inputElement,this.inputWrapper.container),!t.isNullOrUndefined(this.inputWrapper.buttons[0])&&this.inputWrapper.container.getElementsByClassName("e-float-text-content")[0]&&"Never"!==this.floatLabelType&&this.inputWrapper.container.getElementsByClassName("e-float-text-content")[0].classList.add("e-icon"),this.wireEvent(),this.tabIndex=this.element.hasAttribute("tabindex")?this.element.getAttribute("tabindex"):"0",this.element.removeAttribute("tabindex");var i=this.element.getAttribute("id")?this.element.getAttribute("id"):t.getUniqueID("ej2_dropdownlist");if(this.element.id=i,this.hiddenElement.id=i+"_hidden",this.targetElement().setAttribute("tabindex",this.tabIndex),"autocomplete"!==this.getModuleName()&&"combobox"!==this.getModuleName()||this.readonly?"dropdownlist"===this.getModuleName()&&(t.attributes(this.targetElement(),{"aria-label":this.getModuleName()}),this.inputElement.setAttribute("aria-label",this.getModuleName()),this.inputElement.setAttribute("aria-expanded","false"),this.inputElement.setAttribute("aria-controls",this.element.id+"_popups")):this.inputElement.setAttribute("aria-label",this.getModuleName()),t.attributes(this.targetElement(),this.getAriaAttributes()),this.updateDataAttribute(this.htmlAttributes),this.setHTMLAttributes(),this.targetElement()===this.inputElement&&this.inputElement.removeAttribute("aria-labelledby"),null!==this.value||null!==this.activeIndex||null!==this.text)this.enableVirtualization&&(this.listItemHeight=this.getListHeight(),this.getSkeletonCount(),this.updateVirtualizationProperties(this.itemCount,this.allowFiltering)),this.initValue(),this.selectedValueInfo=this.viewPortInfo,this.enableVirtualization&&(this.activeIndex=this.activeIndex+this.skeletonCount);else if("SELECT"===this.element.tagName&&this.element.options[0]){var s=this.element;this.value=s.options[s.selectedIndex].value,this.text=t.isNullOrUndefined(this.value)?null:s.options[s.selectedIndex].textContent,this.initValue()}this.setEnabled(),this.preventTabIndex(this.element),this.enabled||(this.targetElement().tabIndex=-1),this.initial=!1,this.element.style.opacity="",this.inputElement.onselect=function(e){e.stopImmediatePropagation()},this.inputElement.onchange=function(e){e.stopImmediatePropagation()},this.element.hasAttribute("autofocus")&&this.focusIn(),t.isNullOrUndefined(this.text)||this.inputElement.setAttribute("value",this.text),this.element.hasAttribute("data-val")&&this.element.setAttribute("data-val","false");var l=this.inputWrapper.container.getElementsByClassName("e-float-text")[0];t.isNullOrUndefined(this.element.id)||""===this.element.id||t.isNullOrUndefined(l)||(l.id="label_"+this.element.id.replace(/ /g,"_"),t.attributes(this.inputElement,{"aria-labelledby":l.id})),this.renderComplete(),this.listItemHeight=this.getListHeight(),this.getSkeletonCount(),this.enableVirtualization&&this.updateVirtualizationProperties(this.itemCount,this.allowFiltering),this.viewPortInfo.startIndex=this.virtualItemStartIndex=0,this.viewPortInfo.endIndex=this.virtualItemEndIndex=this.viewPortInfo.startIndex>0?this.viewPortInfo.endIndex:this.itemCount},s.prototype.getListHeight=function(){var e=this.createElement("div",{className:"e-dropdownbase"}),i=this.createElement("li",{className:"e-list-item"}),s=t.formatUnit(this.popupHeight);e.style.height=parseInt(s,10).toString()+"px",e.appendChild(i),document.body.appendChild(e),this.virtualListHeight=e.getBoundingClientRect().height;var l=Math.ceil(i.getBoundingClientRect().height);return e.remove(),l},s.prototype.setFooterTemplate=function(e){var i;this.footer?this.isReact&&"function"==typeof this.footerTemplate?this.clearTemplate(["footerTemplate"]):this.footer.innerHTML="":(this.footer=this.createElement("div"),t.addClass([this.footer],M.footer));var s=this.dropdownCompiler(this.footerTemplate),l=(i="function"!=typeof this.footerTemplate&&s?t.compile(t.select(this.footerTemplate,document).innerHTML.trim()):t.compile(this.footerTemplate))({},this,"footerTemplate",this.footerTemplateId,this.isStringTemplate,null,this.footer);l&&l.length>0&&t.append(l,this.footer),t.append([this.footer],e)},s.prototype.setHeaderTemplate=function(e){var i;this.header?this.header.innerHTML="":(this.header=this.createElement("div"),t.addClass([this.header],M.header));var s=this.dropdownCompiler(this.headerTemplate),l=(i="function"!=typeof this.headerTemplate&&s?t.compile(t.select(this.headerTemplate,document).innerHTML.trim()):t.compile(this.headerTemplate))({},this,"headerTemplate",this.headerTemplateId,this.isStringTemplate,null,this.header);l&&l.length&&t.append(l,this.header);var n=e.querySelector("div.e-content");e.insertBefore(this.header,n)},s.prototype.setEnabled=function(){this.element.setAttribute("aria-disabled",this.enabled?"false":"true")},s.prototype.setOldText=function(e){this.text=e},s.prototype.setOldValue=function(e){this.value=e},s.prototype.refreshPopup=function(){t.isNullOrUndefined(this.popupObj)||!document.body.contains(this.popupObj.element)||(!this.allowFiltering||t.Browser.isDevice&&this.isFilterLayout())&&"autocomplete"!==this.getModuleName()||(t.removeClass([this.popupObj.element],"e-popup-close"),this.popupObj.refreshPosition(this.inputWrapper.container),this.popupObj.resolveCollision())},s.prototype.checkData=function(e){!e.dataSource||t.isNullOrUndefined(Object.keys(e.dataSource))||!this.itemTemplate||!this.allowFiltering||this.isListSearched&&e.dataSource instanceof i.DataManager||(this.list=null,this.actionCompleteData={ulElement:null,list:null,isUpdated:!1}),this.isListSearched=!1;var s=-1!==Object.keys(e).indexOf("value")&&t.isNullOrUndefined(e.value),l=-1!==Object.keys(e).indexOf("text")&&t.isNullOrUndefined(e.text);"autocomplete"!==this.getModuleName()&&this.allowFiltering&&(s||l)&&(this.itemData=null),this.allowFiltering&&e.dataSource&&!t.isNullOrUndefined(Object.keys(e.dataSource))?(this.actionCompleteData={ulElement:null,list:null,isUpdated:!1},this.actionData=this.actionCompleteData):this.allowFiltering&&e.query&&!t.isNullOrUndefined(Object.keys(e.query))&&(this.actionCompleteData="combobox"===this.getModuleName()?{ulElement:null,list:null,isUpdated:!1}:this.actionCompleteData,this.actionData=this.actionCompleteData)},s.prototype.updateDataSource=function(e){""===this.inputElement.value&&(t.isNullOrUndefined(e)||!t.isNullOrUndefined(e.dataSource)&&(e.dataSource instanceof i.DataManager||0!==e.dataSource.length))||this.clearAll(null,e),this.fields.groupBy&&e.fields&&!this.isGroupChecking&&this.list&&(t.EventHandler.remove(this.list,"scroll",this.setFloatingHeader),t.EventHandler.add(this.list,"scroll",this.setFloatingHeader,this)),(t.isNullOrUndefined(e)||!t.isNullOrUndefined(e.dataSource)&&(e.dataSource instanceof i.DataManager||0!==e.dataSource.length)||!Array.isArray(e.dataSource)||0!==e.dataSource.length)&&(this.typedString="",this.resetList(this.dataSource)),this.isCustomFilter||this.isFilterFocus||document.activeElement===this.filterInput||this.checkCustomValue()},s.prototype.checkCustomValue=function(){this.itemData=this.getDataByValue(this.value);var e=this.getItemData();this.setProperties({text:e.text,value:e.value})},s.prototype.updateInputFields=function(){"dropdownlist"===this.getModuleName()&&n.Input.setValue(this.text,this.inputElement,this.floatLabelType,this.showClearButton)},s.prototype.onPropertyChanged=function(s,l){var o=this;t.isNullOrUndefined(s.dataSource)||this.isTouched||!t.isNullOrUndefined(s.value)||!t.isNullOrUndefined(s.index)||t.isNullOrUndefined(this.preselectedIndex)||(s.index=this.preselectedIndex),t.isNullOrUndefined(s.value)&&t.isNullOrUndefined(s.index)||(this.isTouched=!0),"dropdownlist"===this.getModuleName()&&(this.checkData(s),this.setUpdateInitial(["fields","query","dataSource"],s));for(var r=this,a=0,h=Object.keys(s);a<h.length;a++)!function(a){switch(a){case"query":case"dataSource":r.getSkeletonCount(),r.checkAndResetCache();break;case"htmlAttributes":r.setHTMLAttributes();break;case"width":r.setEleWidth(s.width),n.Input.calculateWidth(r.inputElement,r.inputWrapper.container);break;case"placeholder":n.Input.setPlaceholder(s.placeholder,r.inputElement);break;case"filterBarPlaceholder":r.filterInput&&n.Input.setPlaceholder(s.filterBarPlaceholder,r.filterInput);break;case"readonly":"dropdownlist"!==r.getModuleName()&&n.Input.setReadonly(s.readonly,r.inputElement),r.setReadOnly();break;case"cssClass":r.setCssClass(s.cssClass,l.cssClass),n.Input.calculateWidth(r.inputElement,r.inputWrapper.container);break;case"enableRtl":r.setEnableRtl();break;case"enabled":r.setEnable();break;case"text":if(null===s.text){r.clearAll();break}if(r.enableVirtualization){r.updateValues(),r.updateInputFields(),r.notify("setCurrentViewDataAsync",{module:"VirtualScroll"});break}if(r.list||(r.dataSource instanceof i.DataManager&&(r.initialRemoteRender=!0),r.renderList()),!r.initialRemoteRender){var h=r.getElementByText(s.text);if(!r.checkValidLi(h))if(r.liCollections&&100===r.liCollections.length&&"autocomplete"===r.getModuleName()&&r.listData.length>100)r.setSelectionData(s.text,l.text,"text");else if(s.text&&r.dataSource instanceof i.DataManager){var p=r.getItems().length,u=t.isNullOrUndefined(r.fields.text)?r.fields.value:r.fields.text;r.typedString="",r.dataSource.executeQuery(r.getQuery(r.query).where(new i.Predicate(u,"equal",s.text))).then(function(e){e.result.length>0?(o.addItem(e.result,p),o.updateValues()):o.setOldText(l.text)})}else"autocomplete"===r.getModuleName()?r.setInputValue(s,l):r.setOldText(l.text);r.updateInputFields()}break;case"value":if(null===s.value){r.clearAll();break}if(r.enableVirtualization){r.updateValues(),r.updateInputFields(),r.notify("setCurrentViewDataAsync",{module:"VirtualScroll"}),r.preventChange=r.isAngular&&r.preventChange?!r.preventChange:r.preventChange;break}if(r.notify("beforeValueChange",{newProp:s}),r.list||(r.dataSource instanceof i.DataManager&&(r.initialRemoteRender=!0),r.renderList()),!r.initialRemoteRender){var d=r.getElementByValue(s.value);if(!r.checkValidLi(d))if(r.liCollections&&100===r.liCollections.length&&"autocomplete"===r.getModuleName()&&r.listData.length>100)r.setSelectionData(s.value,l.value,"value");else if(s.value&&r.dataSource instanceof i.DataManager){var c=r.getItems().length,u=t.isNullOrUndefined(r.fields.value)?r.fields.text:r.fields.value;r.typedString="",r.dataSource.executeQuery(r.getQuery(r.query).where(new i.Predicate(u,"equal",s.value))).then(function(e){e.result.length>0?(o.addItem(e.result,c),o.updateValues()):o.setOldValue(l.value)})}else"autocomplete"===r.getModuleName()?r.setInputValue(s,l):r.setOldValue(l.value);r.updateInputFields(),r.preventChange=r.isAngular&&r.preventChange?!r.preventChange:r.preventChange}break;case"index":if(null===s.index){r.clearAll();break}if(r.list||(r.dataSource instanceof i.DataManager&&(r.initialRemoteRender=!0),r.renderList()),!r.initialRemoteRender&&r.liCollections){var m=r.liCollections[s.index];r.checkValidLi(m)||(r.liCollections&&100===r.liCollections.length&&"autocomplete"===r.getModuleName()&&r.listData.length>100?r.setSelectionData(s.index,l.index,"index"):r.index=l.index),r.updateInputFields()}break;case"footerTemplate":r.popupObj&&r.setFooterTemplate(r.popupObj.element);break;case"headerTemplate":r.popupObj&&r.setHeaderTemplate(r.popupObj.element);break;case"valueTemplate":t.isNullOrUndefined(r.itemData)||null===r.valueTemplate||r.setValueTemplate();break;case"allowFiltering":r.allowFiltering&&(r.actionCompleteData={ulElement:r.ulElement,list:r.listData,isUpdated:!0},r.actionData=r.actionCompleteData,r.updateSelectElementData(r.allowFiltering));break;case"floatLabelType":n.Input.removeFloating(r.inputWrapper),n.Input.addFloating(r.inputElement,s.floatLabelType,r.placeholder,r.createElement),!t.isNullOrUndefined(r.inputWrapper.buttons[0])&&r.inputWrapper.container.getElementsByClassName("e-float-text-overflow")[0]&&"Never"!==r.floatLabelType&&r.inputWrapper.container.getElementsByClassName("e-float-text-overflow")[0].classList.add("e-icon");break;case"showClearButton":r.inputWrapper.clearButton||(n.Input.setClearButton(s.showClearButton,r.inputElement,r.inputWrapper,null,r.createElement),r.bindClearEvent());break;default:var f=r.getPropObject(a,s,l);e.prototype.onPropertyChanged.call(r,f.newProperty,f.oldProperty)}}(h[a])},s.prototype.checkValidLi=function(e){return!!this.isValidLI(e)&&(this.setSelection(e,null),!0)},s.prototype.setSelectionData=function(e,t,i){var s,l=this;this.updateListValues=function(){"text"===i?(s=l.getElementByText(e),l.checkValidLi(s)||l.setOldText(t)):"value"===i?(s=l.getElementByValue(e),l.checkValidLi(s)||l.setOldValue(t)):"index"===i&&(s=l.liCollections[e],l.checkValidLi(s)||(l.index=t))}},s.prototype.updatePopupState=function(){this.beforePopupOpen&&(this.beforePopupOpen=!1,this.showPopup())},s.prototype.setReadOnly=function(){this.readonly?t.addClass([this.inputWrapper.container],["e-readonly"]):t.removeClass([this.inputWrapper.container],["e-readonly"])},s.prototype.setInputValue=function(e,t){},s.prototype.setCssClass=function(e,i){t.isNullOrUndefined(i)||(i=i.replace(/\s+/g," ").trim()),t.isNullOrUndefined(e)||(e=e.replace(/\s+/g," ").trim()),n.Input.setCssClass(e,[this.inputWrapper.container],i),this.popupObj&&n.Input.setCssClass(e,[this.popupObj.element],i)},s.prototype.getModuleName=function(){return"dropdownlist"},s.prototype.showPopup=function(e){if(this.enabled){if(this.isReact&&"combobox"===this.getModuleName()&&this.itemTemplate&&this.isCustomFilter&&this.isAddNewItemTemplate&&(this.renderList(),this.isAddNewItemTemplate=!1),this.isFiltering()&&this.dataSource instanceof i.DataManager&&this.actionData.list!==this.actionCompleteData.list&&this.actionData.list&&this.actionData.ulElement&&(this.actionCompleteData=this.actionData,this.onActionComplete(this.actionCompleteData.ulElement,this.actionCompleteData.list,null,!0)),this.beforePopupOpen)return void this.refreshPopup();this.beforePopupOpen=!0,this.isFiltering()&&!this.isActive&&this.actionCompleteData.list&&this.actionCompleteData.list[0]?(this.isActive=!0,this.onActionComplete(this.actionCompleteData.ulElement,this.actionCompleteData.list,null,!0)):(t.isNullOrUndefined(this.list)||!t.isUndefined(this.list)&&(this.list.classList.contains(U.noData)||this.list.querySelectorAll("."+U.li).length<=0))&&(this.isReact&&this.isFiltering()&&null!=this.itemTemplate&&(this.isSecondClick=!1),this.renderList(e)),this.enableVirtualization&&this.listData&&this.listData.length&&(t.isNullOrUndefined(this.value)||"dropdownlist"!==this.getModuleName()&&"combobox"!==this.getModuleName()||this.removeHover(),this.beforePopupOpen||this.notify("setCurrentViewDataAsync",{module:"VirtualScroll"})),this.beforePopupOpen&&this.invokeRenderPopup(e),this.enableVirtualization&&!this.allowFiltering&&null!=this.selectedValueInfo&&this.selectedValueInfo.startIndex>0&&null!=this.value&&this.notify("dataProcessAsync",{module:"VirtualScroll",isOpen:!0})}},s.prototype.invokeRenderPopup=function(e){if(t.Browser.isDevice&&this.isFilterLayout()){var i=this;window.onpopstate=function(){i.hidePopup()},history.pushState({},"")}t.isNullOrUndefined(this.list)||t.isNullOrUndefined(this.list.children[0])&&!this.list.classList.contains(U.noData)||this.renderPopup(e)},s.prototype.renderHightSearch=function(){},s.prototype.hidePopup=function(e){if(this.isEscapeKey&&"dropdownlist"===this.getModuleName())if(t.isNullOrUndefined(this.inputElement)||n.Input.setValue(this.text,this.inputElement,this.floatLabelType,this.showClearButton),this.isEscapeKey=!1,t.isNullOrUndefined(this.index))this.resetSelection();else{var i=this.findListElement(this.ulElement,"li","data-value",this.value);this.selectedLI=this.liCollections[this.index]||i,this.selectedLI&&(this.updateSelectedItem(this.selectedLI,null,!0),this.valueTemplate&&null!==this.itemData&&this.setValueTemplate())}this.closePopup(0,e);var s=this.getItemData(),l=!t.isNullOrUndefined(this.selectedLI);l&&this.enableVirtualization&&this.selectedLI.classList&&(l=this.selectedLI.classList.contains("e-active")),this.inputElement&&""===this.inputElement.value.trim()&&!this.isInteracted&&(this.isSelectCustom||l&&this.inputElement.value!==s.text)&&(this.isSelectCustom=!1,this.clearAll(e))},s.prototype.focusIn=function(e){if(this.enabled&&!this.targetElement().classList.contains(M.disable)){var i=!1;this.preventFocus&&t.Browser.isDevice&&(this.inputWrapper.container.tabIndex=1,this.inputWrapper.container.focus(),this.preventFocus=!1,i=!0),i||this.targetElement().focus(),t.addClass([this.inputWrapper.container],[M.inputFocus]),this.onFocus(e),"Auto"===this.floatLabelType&&n.Input.calculateWidth(this.inputElement,this.inputWrapper.container)}},s.prototype.focusOut=function(e){this.enabled&&(this.enableVirtualization||"combobox"!==this.getModuleName()&&"autocomplete"!==this.getModuleName()||(this.isTyped=!0),this.hidePopup(e),this.targetElement()&&this.targetElement().blur(),t.removeClass([this.inputWrapper.container],[M.inputFocus]),"Auto"===this.floatLabelType&&""===this.inputElement.value&&n.Input.calculateWidth(this.inputElement,this.inputWrapper.container))},s.prototype.destroy=function(){if(this.isActive=!1,d(this.element.id),this.isReact&&this.clearTemplate(),this.hidePopup(),this.popupObj&&this.popupObj.hide(),this.unWireEvent(),this.list&&this.unWireListEvents(),!this.element||this.element.classList.contains("e-"+this.getModuleName())){if(this.inputElement){for(var i=["readonly","aria-disabled","placeholder","aria-labelledby","aria-expanded","autocomplete","aria-readonly","autocapitalize","spellcheck","aria-autocomplete","aria-live","aria-describedby","aria-label"],s=0;s<i.length;s++)this.inputElement.removeAttribute(i[s]);this.inputElement.setAttribute("tabindex",this.tabIndex),this.inputElement.classList.remove("e-input"),n.Input.setValue("",this.inputElement,this.floatLabelType,this.showClearButton)}this.element.style.display="block",this.inputWrapper.container.parentElement.tagName===this.getNgDirective()?t.detach(this.inputWrapper.container):(this.inputWrapper.container.parentElement.insertBefore(this.element,this.inputWrapper.container),t.detach(this.inputWrapper.container)),this.hiddenElement=null,this.inputWrapper=null,this.keyboardModule=null,this.ulElement=null,this.list=null,this.popupObj=null,this.popupContentElement=null,this.rippleFun=null,this.selectedLI=null,this.liCollections=null,this.item=null,this.inputWrapper=null,this.footer=null,this.header=null,this.previousSelectedLI=null,this.valueTempElement=null,this.actionData.ulElement=null,this.inputElement&&!t.isNullOrUndefined(this.inputElement.onchange)&&(this.inputElement.onchange=null),this.isAngular&&(this.inputElement=null),e.prototype.destroy.call(this)}},s.prototype.getItems=function(){return this.list||(this.dataSource instanceof i.DataManager&&(this.initialRemoteRender=!0),this.renderList()),this.ulElement?e.prototype.getItems.call(this):[]},s.prototype.getDataByValue=function(t){return e.prototype.getDataByValue.call(this,t)},s.prototype.clear=function(){this.value=null},H([t.Property(null)],s.prototype,"cssClass",void 0),H([t.Property("100%")],s.prototype,"width",void 0),H([t.Property(!0)],s.prototype,"enabled",void 0),H([t.Property(!1)],s.prototype,"enablePersistence",void 0),H([t.Property("300px")],s.prototype,"popupHeight",void 0),H([t.Property("100%")],s.prototype,"popupWidth",void 0),H([t.Property(null)],s.prototype,"placeholder",void 0),H([t.Property(null)],s.prototype,"filterBarPlaceholder",void 0),H([t.Property({})],s.prototype,"htmlAttributes",void 0),H([t.Property(null)],s.prototype,"query",void 0),H([t.Property(null)],s.prototype,"valueTemplate",void 0),H([t.Property(null)],s.prototype,"headerTemplate",void 0),H([t.Property(null)],s.prototype,"footerTemplate",void 0),H([t.Property(!1)],s.prototype,"allowFiltering",void 0),H([t.Property(!1)],s.prototype,"readonly",void 0),H([t.Property(!1)],s.prototype,"enableVirtualization",void 0),H([t.Property(null)],s.prototype,"text",void 0),H([t.Property(null)],s.prototype,"value",void 0),H([t.Property(null)],s.prototype,"index",void 0),H([t.Property("Never")],s.prototype,"floatLabelType",void 0),H([t.Property(!1)],s.prototype,"showClearButton",void 0),H([t.Event()],s.prototype,"filtering",void 0),H([t.Event()],s.prototype,"change",void 0),H([t.Event()],s.prototype,"beforeOpen",void 0),H([t.Event()],s.prototype,"open",void 0),H([t.Event()],s.prototype,"close",void 0),H([t.Event()],s.prototype,"blur",void 0),H([t.Event()],s.prototype,"focus",void 0),s=H([t.NotifyPropertyChanges],s)}(F),R=function(){var e=function(t,i){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)t.hasOwnProperty(i)&&(e[i]=t[i])})(t,i)};return function(t,i){function s(){this.constructor=t}e(t,i),t.prototype=null===i?Object.create(i):(s.prototype=i.prototype,new s)}}(),z=function(e,t,i,s){var l,n=arguments.length,o=n<3?t:null===s?s=Object.getOwnPropertyDescriptor(t,i):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(e,t,i,s);else for(var r=e.length-1;r>=0;r--)(l=e[r])&&(o=(n<3?l(o):n>3?l(t,i,o):l(t,i))||o);return n>3&&o&&Object.defineProperty(t,i,o),o},K="e-input-group-icon e-ddt-icon e-icons",_="e-show-chip",G="e-show-clear",Q="e-chip-input",X="e-input-focus",J="e-icon-hide",Y="e-check",$="e-no-data",Z=function(e){function i(){return null!==e&&e.apply(this,arguments)||this}return R(i,e),z([t.Property("child")],i.prototype,"child",void 0),z([t.Property([])],i.prototype,"dataSource",void 0),z([t.Property("expanded")],i.prototype,"expanded",void 0),z([t.Property("hasChildren")],i.prototype,"hasChildren",void 0),z([t.Property("htmlAttributes")],i.prototype,"htmlAttributes",void 0),z([t.Property("iconCss")],i.prototype,"iconCss",void 0),z([t.Property("imageUrl")],i.prototype,"imageUrl",void 0),z([t.Property("parentValue")],i.prototype,"parentValue",void 0),z([t.Property(null)],i.prototype,"query",void 0),z([t.Property("selectable")],i.prototype,"selectable",void 0),z([t.Property("selected")],i.prototype,"selected",void 0),z([t.Property(null)],i.prototype,"tableName",void 0),z([t.Property("text")],i.prototype,"text",void 0),z([t.Property("tooltip")],i.prototype,"tooltip",void 0),z([t.Property("value")],i.prototype,"value",void 0),i}(t.ChildProperty),ee=function(e){function i(){return null!==e&&e.apply(this,arguments)||this}return R(i,e),z([t.Property(!1)],i.prototype,"autoCheck",void 0),z([t.Property("Auto")],i.prototype,"expandOn",void 0),z([t.Property(!1)],i.prototype,"loadOnDemand",void 0),i}(t.ChildProperty),te=function(e){function s(t,i){var s=e.call(this,t,i)||this;return s.filterTimer=null,s.isFilteredData=!1,s.isFilterRestore=!1,s.selectedData=[],s.filterDelayTime=300,s.isClicked=!1,s.isCheckAllCalled=!1,s.isFromFilterChange=!1,s}return R(s,e),s.prototype.getPersistData=function(){var e=["value"];return this.addOnPersist(e)},s.prototype.getLocaleName=function(){return"drop-down-tree"},s.prototype.preRender=function(){this.inputFocus=!1,this.isPopupOpen=!1,this.isFirstRender=!0,this.isInitialized=!1,this.currentText=null,this.currentValue=null,this.oldValue=null,this.removeValue=!1,this.selectedText=[],this.treeItems=[],this.dataValue=null,this.isNodeSelected=!1,this.isDynamicChange=!1,this.clearIconWidth=0,this.headerTemplateId=this.element.id+"HeaderTemplate",this.footerTemplateId=this.element.id+"FooterTemplate",this.actionFailureTemplateId=this.element.id+"ActionFailureTemplate",this.noRecordsTemplateId=this.element.id+"NoRecordsTemplate",this.customTemplateId=this.element.id+"CustomTemplate",this.keyConfigs={escape:"escape",altUp:"alt+uparrow",altDown:"alt+downarrow",tab:"tab",shiftTab:"shift+tab",end:"end",enter:"enter",home:"home",moveDown:"downarrow",moveLeft:"leftarrow",moveRight:"rightarrow",moveUp:"uparrow",ctrlDown:"ctrl+downarrow",ctrlUp:"ctrl+uparrow",ctrlEnter:"ctrl+enter",ctrlHome:"ctrl+home",ctrlEnd:"ctrl+end",shiftDown:"shift+downarrow",shiftUp:"shift+uparrow",shiftEnter:"shift+enter",shiftHome:"shift+home",shiftEnd:"shift+end",csDown:"ctrl+shift+downarrow",csUp:"ctrl+shift+uparrow",csEnter:"ctrl+shift+enter",csHome:"ctrl+shift+home",csEnd:"ctrl+shift+end",space:"space",ctrlA:"ctrl+A"}},s.prototype.render=function(){var e=t.select("#"+this.element.id+"_tree",document);if(e){var s=t.select("#"+this.element.id+"_options",document);t.detach(s||e.parentElement)}"INPUT"===this.element.tagName?(this.inputEle=this.element,t.isNullOrUndefined(this.inputEle.getAttribute("role"))&&(this.inputEle.setAttribute("aria-expanded","false"),this.inputEle.setAttribute("role","combobox"),this.inputEle.setAttribute("aria-haspopup","tree"),this.inputEle.setAttribute("aria-controls",this.element.id+"_options")),t.isNullOrUndefined(this.inputEle.getAttribute("type"))&&this.inputEle.setAttribute("type","text")):(this.inputEle=this.createElement("input",{attrs:{role:"textbox",type:"text"}}),this.element.parentElement.insertBefore(this.inputEle,this.element)),this.inputObj=n.Input.createInput({element:this.inputEle,floatLabelType:this.floatLabelType,buttons:this.showDropDownIcon?[K]:null,properties:{readonly:!0,placeholder:this.placeholder,enabled:this.enabled,cssClass:this.cssClass,enableRtl:this.enableRtl}},this.createElement),this.inputWrapper=this.inputObj.container,this.inputWrapper.classList.contains("e-input-group")||this.inputWrapper.classList.add("e-input-group"),this.showDropDownIcon&&this.inputWrapper.classList.add("e-show-dd-icon"),this.element.tagName===this.getDirective()&&this.element.appendChild(this.inputWrapper),this.createHiddenElement(),this.createClearIcon(),this.inputWrapper.classList.add("e-ddt"),this.setElementWidth(this.width),this.updateDataAttribute(),this.setHTMLAttributes(),this.setAttributes(),this.popupDiv=this.createElement("div",{className:"e-popup-content"}),this.popupDiv.classList.add("e-dropdown"),this.tree=this.createElement("div",{id:this.element.id+"_tree"}),this.popupDiv.appendChild(this.tree),document.body.appendChild(this.popupDiv),this.wireTreeEvents(),t.addClass([this.popupDiv],"e-ddt-icon-hide"),this.renderTree(),this.isRemoteData=this.fields.dataSource instanceof i.DataManager,(this.allowMultiSelection||this.showCheckBox)&&("Delimiter"!==this.mode&&this.createChip(),this.wrapText||"Custom"===this.mode||(this.overFlowWrapper=this.createElement("span",{className:"e-overflow "+J}),this.inputWrapper.insertBefore(this.overFlowWrapper,this.hiddenElement),"Box"!==this.mode&&t.addClass([this.overFlowWrapper],"e-show-text"))),this.isRemoteData||(this.setTreeValue(),this.setTreeText(),this.updateHiddenValue(),this.setSelectedValue(),this.wrapText||this.updateView()),this.wireEvents();var l=t.select(".e-list-parent",this.treeObj.element);l&&l.getAttribute("aria-multiselectable")&&l.removeAttribute("aria-multiselectable"),this.oldValue=this.value,this.isInitialized=!0,this.hasTemplate=this.itemTemplate||this.headerTemplate||this.footerTemplate||this.actionFailureTemplate||this.noRecordsTemplate||this.customTemplate,this.renderComplete()},s.prototype.hideCheckAll=function(e){var i=t.isNullOrUndefined(this.popupEle)?null:this.popupEle.querySelector(".e-selectall-parent");t.isNullOrUndefined(i)||(e&&!i.classList.contains("e-hide-selectall")?t.addClass([i],"e-hide-selectall"):!e&&i.classList.contains("e-hide-selectall")&&t.removeClass([i],"e-hide-selectall"))},s.prototype.renderFilter=function(){this.filterContainer=this.createElement("div",{id:this.element.id+"_filter_wrap",className:"e-filter-wrap"});var e=this.createElement("input",{id:this.element.id+"_filter",attrs:{autocomplete:"off","aria-label":this.filterBarPlaceholder}});this.filterContainer.appendChild(e),t.prepend([this.filterContainer],this.popupEle),this.filterObj=new n.TextBox({value:"",showClearButton:!0,placeholder:this.filterBarPlaceholder,input:this.filterChangeHandler.bind(this)}),this.filterObj.appendTo("#"+this.element.id+"_filter")},s.prototype.filterChangeHandler=function(e){var i=this;t.isNullOrUndefined(e.value)||(window.clearTimeout(this.filterTimer),this.filterTimer=window.setTimeout(function(){i.filterHandler(e.value,e.event)},this.filterDelayTime))},s.prototype.isChildObject=function(){return"object"==typeof this.treeObj.fields.child},s.prototype.filterHandler=function(e,t){var s=this;this.isFromFilterChange=!0,this.isFilteredData||(this.isRemoteData&&(this.treeObj.expandedNodes=[]),this.treeData=this.treeObj.getTreeData());var l=this.cloneFields(this.fields),n={cancel:!1,preventDefaultAction:!1,event:t,text:e,fields:l};this.trigger("filtering",n,function(t){if(!t.cancel){var l=!1,n=void 0;if(s.isFilteredData=!0,""===e?(s.isFilteredData=!1,s.isFilterRestore=!0,n=s.cloneFields(s.fields)):t.preventDefaultAction?n=t.fields:1===s.treeDataType?n=s.selfReferencefilter(e,t.fields):s.fields.dataSource instanceof i.DataManager?((n=s.remoteDataFilter(e,t.fields)).child=s.fields.child,s.treeObj.fields=s.getTreeFields(t.fields),s.treeObj.dataBind(),l=!0):n=s.nestedFilter(e,t.fields),s.hideCheckAll(s.isFilteredData),l)return;if(s.isRemoteData&&(s.isChildObject()?n.child=s.fields.child:n=t.fields),s.treeObj.fields=s.getTreeFields(n),s.treeObj.dataBind(),s.hasTemplate&&s.portals&&s.treeObj.portals){for(var o=0;o<s.treeObj.portals.length;o++)-1==s.portals.indexOf(s.treeObj.portals[o])&&s.portals.push(s.treeObj.portals[o]);s.isReact&&s.renderReactTemplates()}}})},s.prototype.remoteDataFilter=function(e,i){var s=this;return i.dataSource=this.treeData.map(function(t){return s.remoteChildFilter(e,t)}).filter(function(e){return!t.isNullOrUndefined(e)}),i},s.prototype.remoteChildFilter=function(e,i,s,l){var n=this.isChildObject()?i.child:i[this.fields.child];if(t.isNullOrUndefined(n))return this.isMatchedNode(e,i,s,l)?i:null;for(var o=[],r=0;r<n.length;r++){var a=this.remoteChildFilter(e,n[r],!0,!0);t.isNullOrUndefined(a)||o.push(a)}var h=Object.assign({},i);return l=!1,0!==o.length?h.child=o:(h.child=null,h=this.isMatchedNode(e,h)?h:null),h},s.prototype.nestedFilter=function(e,i){for(var s=[],l=0;l<this.treeData.length;l++){var n=this.nestedChildFilter(e,this.treeData[l]);t.isNullOrUndefined(n)||s.push(n)}return i.dataSource=s,i},s.prototype.nestedChildFilter=function(e,i){var s=i[this.fields.child];if(t.isNullOrUndefined(s))return this.isMatchedNode(e,i)?i:null;for(var l=[],n=0;n<s.length;n++){var o=this.nestedChildFilter(e,s[n]);t.isNullOrUndefined(o)||l.push(o)}var r=Object.assign({},i);return 0!==l.length?(r[this.fields.child]=l,r):(r[this.fields.child]=null,this.isMatchedNode(e,r)?r:null)},s.prototype.selfReferencefilter=function(e,i){for(var s=[],l=[],n=0;n<this.treeData.length;n++)this.isMatchedNode(e,this.treeData[n])&&s.push(this.treeData[n]);for(n=0;n<s.length;n++)if(-1===l.indexOf(s[n])){l.push(s[n]);for(var o=s[n][this.fields.parentValue];!t.isNullOrUndefined(o);){for(var r=null,a=0;a<this.treeData.length;a++){var h=this.treeData[a][this.fields.value];if(!t.isNullOrUndefined(h)&&h===o){r=this.treeData[a];break}}if(t.isNullOrUndefined(r)||-1!==l.indexOf(r))break;l.push(r),o=r[this.fields.parentValue]}}return i.dataSource=l,i},s.prototype.isMatchedNode=function(e,t,s,l){var n;if(!(n=s&&l&&this.isChildObject()?t[this.fields.child.text]:t[this.fields.text])){for(var o=this.fields.child;!t[o.text];)o=o.child;n=t[o.text]}return this.ignoreCase&&(n=n.toLowerCase(),e=e.toLowerCase()),this.ignoreAccent&&(n=i.DataUtil.ignoreDiacritics(n),e=i.DataUtil.ignoreDiacritics(e)),"StartsWith"===this.filterType?n.slice(0,e.length)===e:"EndsWith"===this.filterType?n.slice(-e.length)===e:-1!==n.indexOf(e)},s.prototype.wireEvents=function(){t.EventHandler.add(this.inputWrapper,"mouseup",this.dropDownClick,this),t.EventHandler.add(this.inputWrapper,"focus",this.focusIn,this),t.EventHandler.add(this.inputWrapper,"blur",this.focusOut,this),t.EventHandler.add(this.inputWrapper,"mousemove",this.mouseIn,this),t.EventHandler.add(this.inputWrapper,"mouseout",this.onMouseLeave,this),t.EventHandler.add(this.overAllClear,"mousedown",this.clearAll,this),t.EventHandler.add(window,"resize",this.windowResize,this);var e=t.closest(this.inputWrapper,"form");e&&t.EventHandler.add(e,"reset",this.resetValueHandler,this),this.keyboardModule=new t.KeyboardEvents(this.inputWrapper,{keyAction:this.keyActionHandler.bind(this),keyConfigs:this.keyConfigs,eventName:"keydown"})},s.prototype.wireTreeEvents=function(){this.keyboardModule=new t.KeyboardEvents(this.tree,{keyAction:this.treeAction.bind(this),keyConfigs:this.keyConfigs,eventName:"keydown"})},s.prototype.wireCheckAllWrapperEvents=function(){this.keyboardModule=new t.KeyboardEvents(this.checkAllParent,{keyAction:this.checkAllAction.bind(this),keyConfigs:this.keyConfigs,eventName:"keydown"})},s.prototype.unWireEvents=function(){t.EventHandler.remove(this.inputWrapper,"mouseup",this.dropDownClick),t.EventHandler.remove(this.inputWrapper,"focus",this.focusIn),t.EventHandler.remove(this.inputWrapper,"blur",this.focusOut),t.EventHandler.remove(this.inputWrapper,"mousemove",this.mouseIn),t.EventHandler.remove(this.inputWrapper,"mouseout",this.onMouseLeave),t.EventHandler.remove(this.overAllClear,"mousedown",this.clearAll),t.EventHandler.remove(window,"resize",this.windowResize);var e=t.closest(this.inputWrapper,"form");e&&t.EventHandler.remove(e,"reset",this.resetValueHandler)},s.prototype.dropDownClick=function(e){if(this.enabled&&!this.readonly){if(this.isClearButtonClick)return void(this.isClearButtonClick=!1);this.isPopupOpen?this.hidePopup():(this.focusIn(e),this.renderPopup()),this.showOverAllClear()}},s.prototype.mouseIn=function(){!this.enabled&&this.readonly||this.showOverAllClear()},s.prototype.onMouseLeave=function(){this.inputFocus||(t.addClass([this.overAllClear],J),t.removeClass([this.inputWrapper],G))},s.prototype.getDirective=function(){return"EJS-DROPDOWNTREE"},s.prototype.focusOut=function(e){if(this.enabled&&!this.readonly&&this.inputFocus&&(!t.Browser.isIE&&"edge"!==t.Browser.info.name||e.target!==this.inputWrapper)){var i=e.relatedTarget;i===this.inputEle||!t.isNullOrUndefined(i)||e.target===this.inputWrapper&&this.isPopupOpen||this.onFocusOut(e)}},s.prototype.onFocusOut=function(e){if(this.inputFocus=!1,this.isPopupOpen&&this.hidePopup(),this.isClearButtonClick&&(this.isClearButtonClick=!1),this.showClearButton&&(this.clearIconWidth=t.select(".e-clear-icon",this.inputWrapper).offsetWidth,t.addClass([this.overAllClear],J),t.removeClass([this.inputWrapper],G)),t.removeClass([this.inputWrapper],[X]),this.allowMultiSelection||this.showCheckBox){var i=!!this.value&&!!this.value.length;"Delimiter"!==this.mode&&"Custom"!==this.mode&&this.chipWrapper&&"Default"===this.mode&&(t.addClass([this.chipWrapper],J),t.removeClass([this.inputWrapper],_),t.removeClass([this.inputEle],Q)),!this.wrapText&&i&&this.updateView()}this.changeOnBlur&&this.triggerChangeEvent(e),this.removeValue=!1,this.oldValue=this.value,this.trigger("blur")},s.prototype.updateView=function(){!this.showCheckBox&&!this.allowMultiSelection||"Custom"===this.mode||this.inputFocus||("Box"!==this.mode?t.addClass([this.inputWrapper,this.overFlowWrapper],"e-show-text"):t.addClass([this.inputWrapper],_),this.value&&0!==this.value.length&&(this.inputWrapper.contains(this.chipWrapper)&&t.addClass([this.chipWrapper],J),t.addClass([this.inputEle],Q),this.updateOverFlowView(),this.ensurePlaceHolder()))},s.prototype.triggerChangeEvent=function(e){if((!this.ddtCompareValues(this.oldValue,this.value)||this.isChipDelete)&&!this.removeValue){var t={e:e,oldValue:this.oldValue,value:this.value,isInteracted:!!e,element:this.element};this.trigger("change",t),this.oldValue=this.value}},s.prototype.ddtCompareValues=function(e,t){if(null===e||null===t)return null===e?t===e:0===e.length&&t===e;if(e.length!==t.length)return!1;for(var i=0;i<e.length;i++)if(e[i]!==t[i])return!1;return!0},s.prototype.focusIn=function(e){if(this.enabled&&!this.readonly&&!this.inputFocus){this.showOverAllClear(),this.inputFocus=!0,t.addClass([this.inputWrapper],[X]),(this.allowMultiSelection||this.showCheckBox)&&("Delimiter"!==this.mode&&this.inputFocus&&(this.chipWrapper&&this.value&&0!==this.value.length&&(t.removeClass([this.chipWrapper],J),t.addClass([this.inputEle],Q)),t.addClass([this.inputWrapper],_),this.popupObj&&this.popupObj.refreshPosition()),this.wrapText||"Custom"===this.mode||(this.inputWrapper.contains(this.overFlowWrapper)&&t.addClass([this.overFlowWrapper],J),"Delimiter"===this.mode?(t.removeClass([this.inputWrapper],_),t.removeClass([this.inputEle],Q)):t.addClass([this.inputWrapper],_),t.removeClass([this.inputWrapper],"e-show-text"),this.ensurePlaceHolder()));var i={isInteracted:!!e,event:e};this.trigger("focus",i)}},s.prototype.treeAction=function(e){var t=this,i={cancel:!1,event:e};this.trigger("keyPress",i,function(i){if(i.cancel)e.stopImmediatePropagation();else switch(e.action){case"escape":case"altUp":t.inputWrapper.focus(),e.preventDefault(),t.isPopupOpen&&t.hidePopup();break;case"tab":case"shiftTab":t.isPopupOpen&&t.hidePopup();break;case"enter":case"ctrlEnter":case"shiftEnter":case"csEnter":t.showCheckBox||(t.isValueChange=!0,t.keyEventArgs=e);break;case"space":t.isValueChange=!0,t.keyEventArgs=e;break;case"ctrlA":t.allowMultiSelection&&t.selectAll(!0)}})},s.prototype.keyActionHandler=function(e){var t=this,i={cancel:!1,event:e};this.trigger("keyPress",i,function(i){if(!i.cancel)switch(e.action){case"escape":case"altUp":t.isPopupOpen&&t.hidePopup();break;case"shiftTab":case"tab":t.isPopupOpen&&t.hidePopup(),t.inputFocus&&t.onFocusOut();break;case"altDown":t.isPopupOpen||(t.showPopup(),e.preventDefault());break;case"moveDown":t.showSelectAll&&t.showCheckBox&&t.checkAllParent.focus()}})},s.prototype.checkAllAction=function(e){var i=this,s={cancel:!1,event:e};this.trigger("keyPress",s,function(s){if(!s.cancel)switch(e.action){case"space":i.clickHandler(e);break;case"moveDown":var l=i.treeObj.element.querySelector("li");l.focus(),t.addClass([l],["e-node-focus"])}})},s.prototype.windowResize=function(){this.popupObj&&(this.popupObj.setProperties({width:this.setWidth()}),this.popupObj.refreshPosition())},s.prototype.resetValueHandler=function(e){var i=t.closest(this.inputWrapper,"form");i&&e.target===i&&(this.isDynamicChange=!0,this.setProperties({value:null},!0),this.resetValue(!0),this.isDynamicChange=!1)},s.prototype.getAriaAttributes=function(){return{}},s.prototype.updateOverFlowView=function(){if(this.overFlowWrapper.classList.remove("e-total-count"),t.removeClass([this.overFlowWrapper],J),this.value&&this.value.length){var e="",i=void 0,s=void 0,l=void 0,n=1,o=void 0,r=void 0,a=0;this.overFlowWrapper.innerHTML="";var h={overflowCountTemplate:"+${count} more..",totalCountTemplate:"${count} selected"};this.l10n=new t.L10n(this.getLocaleName(),h,this.locale);var p=this.l10n.getConstant("overflowCountTemplate"),u=this.l10n.getConstant("totalCountTemplate"),d=this.createElement("span",{className:"e-remain"});this.overFlowWrapper.appendChild(d),d.innerText=p.replace("${count}",this.value.length.toString());var c=d.offsetWidth;if(t.remove(d),this.showDropDownIcon&&(a=t.select(".e-ddt-icon",this.inputWrapper).offsetWidth),!t.isNullOrUndefined(this.value))if("Box"!==this.mode)for(var m=0;!t.isNullOrUndefined(this.value[m]);m++){if(e+=0===m?"":this.delimiterChar+" ",s=this.getOverflowVal(m),e+=s,s=this.overFlowWrapper.innerHTML,this.enableHtmlSanitizer?this.overFlowWrapper.innerText=t.SanitizeHtmlHelper.sanitize(e):this.overFlowWrapper.innerHTML=e,o=this.overFlowWrapper.offsetWidth,i=this.inputWrapper.offsetWidth,o+a+this.clearIconWidth>i){for(void 0!==l&&""!==l&&(s=l,m=n+1),this.overFlowWrapper.innerHTML=s,r=this.value.length-m,o=this.overFlowWrapper.offsetWidth;o+c+a+this.clearIconWidth>=i&&0!==o&&""!==this.overFlowWrapper.innerHTML;){var f=this.overFlowWrapper.innerHTML.split(this.delimiterChar);f.pop(),this.overFlowWrapper.innerHTML=f.join(this.delimiterChar),r++,o=this.overFlowWrapper.offsetWidth}break}o+c+a+this.clearIconWidth<=i?(l=e,n=m):0===m&&(l="",n=-1)}else{t.addClass([this.chipWrapper],J);for(var v=this.chipWrapper.cloneNode(!0),g=t.selectAll(".e-chips",v),y=0;y<g.length;y++){if(s=this.overFlowWrapper.innerHTML,this.overFlowWrapper.appendChild(g[y]),e=this.overFlowWrapper.innerHTML,o=this.overFlowWrapper.offsetWidth,i=this.inputWrapper.offsetWidth,o+a+this.clearIconWidth>i){for(void 0!==l&&""!==l&&(s=l,y=n+1),this.overFlowWrapper.innerHTML=s,r=this.value.length-y,o=this.overFlowWrapper.offsetWidth;o+c+a+this.clearIconWidth>=i&&0!==o&&""!==this.overFlowWrapper.innerHTML;)this.overFlowWrapper.removeChild(this.overFlowWrapper.lastChild),r++,o=this.overFlowWrapper.offsetWidth;break}o+c+a+this.clearIconWidth<=i?(l=e,n=y):0===y&&(l="",n=-1)}}r>0&&this.overFlowWrapper.appendChild(this.updateRemainTemplate(d,r,p,u)),"Box"!==this.mode||this.overFlowWrapper.classList.contains("e-total-count")||t.addClass([d],"e-wrap-count")}else this.overFlowWrapper.innerHTML="",t.addClass([this.overFlowWrapper],J);this.updateDelimMode()},s.prototype.updateRemainTemplate=function(e,i,s,l){return this.overFlowWrapper.firstChild&&3===this.overFlowWrapper.firstChild.nodeType&&""===this.overFlowWrapper.firstChild.nodeValue&&this.overFlowWrapper.removeChild(this.overFlowWrapper.firstChild),e.innerHTML="",e.innerText=!this.overFlowWrapper.firstChild||3!==this.overFlowWrapper.firstChild.nodeType&&"Box"!==this.mode?l.replace("${count}",i.toString()):s.replace("${count}",i.toString()),!this.overFlowWrapper.firstChild||3!==this.overFlowWrapper.firstChild.nodeType&&"Box"!==this.mode?(t.addClass([this.overFlowWrapper],"e-total-count"),t.removeClass([this.overFlowWrapper],"e-wrap-count")):t.removeClass([this.overFlowWrapper],"e-total-count"),e},s.prototype.getOverflowVal=function(e){var i=this.getSelectedData(this.value[e]);return t.getValue(this.treeSettings.loadOnDemand?this.fields.text:"text",i)},s.prototype.updateDelimMode=function(){"Box"!==this.mode?t.select(".e-remain",this.overFlowWrapper)&&!this.overFlowWrapper.classList.contains("e-total-count")?(t.addClass([this.overFlowWrapper],"e-wrap-count"),t.addClass([this.overFlowWrapper],"e-show-text")):(this.overFlowWrapper.classList.remove("e-wrap-count"),t.removeClass([this.overFlowWrapper],"e-wrap-count")):t.select(".e-remain",this.overFlowWrapper)&&this.overFlowWrapper.classList.remove("e-wrap-count")},s.prototype.createHiddenElement=function(){this.allowMultiSelection||this.showCheckBox?this.hiddenElement=this.createElement("select",{attrs:{"aria-hidden":"true",class:"e-ddt-hidden",tabindex:"-1",multiple:""}}):this.hiddenElement=this.createElement("select",{attrs:{"aria-hidden":"true",tabindex:"-1",class:"e-ddt-hidden"}}),t.prepend([this.hiddenElement],this.inputWrapper),this.validationAttribute()},s.prototype.createClearIcon=function(){this.overAllClear=this.createElement("span",{className:"e-clear-icon e-icons"}),t.addClass([this.overAllClear],J),t.removeClass([this.inputWrapper],G),this.showClearButton&&this.inputWrapper.insertBefore(this.overAllClear,this.inputObj.buttons[0])},s.prototype.validationAttribute=function(){var e=this.inputEle.getAttribute("name")?this.inputEle.getAttribute("name"):this.inputEle.getAttribute("id");this.hiddenElement.setAttribute("name",e),this.inputEle.removeAttribute("name");for(var t=["required","aria-required","form"],i=0;i<t.length;i++){var s=this.inputEle.getAttribute(t[i]);s&&(this.hiddenElement.setAttribute(t[i],s),this.inputEle.removeAttribute(t[i]))}},s.prototype.createChip=function(){this.inputWrapper.contains(this.chipWrapper)||(this.chipWrapper=this.createElement("span",{className:"e-chips-wrapper"}),this.chipCollection=this.createElement("span",{className:"e-chips-collection"}),this.chipWrapper.appendChild(this.chipCollection),this.inputWrapper.insertBefore(this.chipWrapper,this.hiddenElement),t.addClass([this.inputWrapper],_),this.getValidMode()&&null!==this.value&&this.value&&0!==this.value.length?t.addClass([this.inputEle],Q):(null===this.value||this.value&&0===this.value.length||this.checkWrapper)&&t.addClass([this.chipWrapper],J))},s.prototype.getValidMode=function(){return!(!this.allowMultiSelection&&!this.showCheckBox)&&("Box"===this.mode||!("Default"!==this.mode||!this.inputFocus))},s.prototype.createSelectAllWrapper=function(){this.checkAllParent=this.createElement("div",{className:"e-selectall-parent",attrs:{tabindex:"0"}}),this.selectAllSpan=this.createElement("span",{className:"e-all-text"}),this.selectAllSpan.textContent="";var e=t.closest(this.element,".e-bigger"),i=t.isNullOrUndefined(e)?"":"e-small";this.checkBoxElement=r.createCheckBox(this.createElement,!0,{cssClass:i}),this.checkBoxElement.setAttribute("role","checkbox"),this.checkAllParent.appendChild(this.checkBoxElement),this.checkAllParent.appendChild(this.selectAllSpan),this.setLocale(),t.EventHandler.add(this.checkAllParent,"mouseup",this.clickHandler,this),this.wireCheckAllWrapperEvents()},s.prototype.clickHandler=function(e){var i;if(i=e.currentTarget&&e.currentTarget.classList.contains("e-selectall-parent")?e.currentTarget.firstElementChild.lastElementChild:e.target,this.checkWrapper=t.closest(i,".e-checkbox-wrapper"),!t.isNullOrUndefined(this.checkWrapper)){this.isClicked=!0;var s=t.select(".e-frame",this.checkWrapper);this.changeState(this.checkWrapper,s.classList.contains(Y)?"uncheck":"check",e),this.isClicked=!1}e.preventDefault()},s.prototype.changeState=function(e,i,s){var l,n=e.getElementsByClassName("e-frame")[0];"check"!==i||n.classList.contains(Y)?"uncheck"===i&&n.classList.contains(Y)&&(n.classList.remove(Y),l="false",this.isReverseUpdate||(this.treeObj.uncheckAll(),this.changeOnBlur||this.triggerChangeEvent(s)),this.setLocale(!1)):(n.classList.add(Y),l="true",this.isReverseUpdate||(this.isCheckAllCalled=!0,this.treeObj.checkAll(),this.changeOnBlur||this.triggerChangeEvent(s)),this.setLocale(!0)),this.setMultiSelect(),this.ensurePlaceHolder(),l="check"===i?"true":"false",t.isNullOrUndefined(l)||e.parentElement.setAttribute("aria-checked",l)},s.prototype.setLocale=function(e){if(this.selectAllSpan)if("Select All"!==this.selectAllText||"Unselect All"!==this.unSelectAllText){var i=e?this.unSelectAllText:this.selectAllText;this.selectAllSpan.textContent="";for(var s=0,l=t.compile(i)({},this,e?"unSelectAllText":"selectAllText",null,!this.isStringTemplate);s<l.length;s++){var n=l[s];this.selectAllSpan.textContent=n.textContent}}else this.selectAllSpan.textContent=e?this.unSelectAllText:this.selectAllText},s.prototype.setAttributes=function(){this.inputEle.setAttribute("tabindex","-1");var e=this.element.getAttribute("id");this.hiddenElement.id=e+"_hidden",this.inputWrapper.setAttribute("tabindex","0"),t.attributes(this.inputWrapper,this.getAriaAttributes())},s.prototype.setHTMLAttributes=function(){if(Object.keys(this.htmlAttributes).length)for(var e=0,i=Object.keys(this.htmlAttributes);e<i.length;e++){var s=i[e];if("class"===s)this.inputWrapper.classList.add(this.htmlAttributes[""+s]);else if("disabled"===s&&"disabled"===this.htmlAttributes[""+s])this.setProperties({enabled:!1},!0),this.setEnable();else if("readonly"!==s||t.isNullOrUndefined(this.htmlAttributes[""+s]))if("style"===s)this.inputWrapper.setAttribute("style",this.htmlAttributes[""+s]);else{var l=["title","id","placeholder","aria-placeholder","role","autocorrect","autocomplete","autocapitalize","spellcheck","minlength","maxlength"],o=["name","required"];0===s.indexOf("data")||o.indexOf(s)>-1?this.hiddenElement.setAttribute(s,this.htmlAttributes[""+s]):l.indexOf(s)>-1&&"placeholder"===s?n.Input.setPlaceholder(this.htmlAttributes[""+s],this.inputEle):this.inputEle.setAttribute(s,this.htmlAttributes[""+s])}else this.setProperties({readonly:!0},!0),this.dataBind()}},s.prototype.updateDataAttribute=function(){for(var e=this.htmlAttributes,i=["class","style","id","type"],s={},l=0;l<this.element.attributes.length;l++)-1===i.indexOf(this.element.attributes[l].name)&&"readonly"!==this.element.attributes[l].name&&(s[this.element.attributes[l].name]=this.element.getAttribute(this.element.attributes[l].name));t.extend(s,e,s),this.setProperties({htmlAttributes:s},!0)},s.prototype.showOverAllClear=function(){this.enabled&&!this.readonly&&this.overAllClear&&(!!this.value&&!!this.value.length&&this.showClearButton?(t.removeClass([this.overAllClear],J),t.addClass([this.inputWrapper],G)):(t.addClass([this.overAllClear],J),t.removeClass([this.inputWrapper],G)))},s.prototype.setTreeValue=function(){if(null!==this.value&&0!==this.value.length){var e=void 0;if(this.showCheckBox||this.allowMultiSelection){for(var i=0;i<this.value.length;i++)e=this.treeObj.getTreeData(this.value[i])[0],t.isNullOrUndefined(e)&&this.value.splice(this.value.indexOf(this.value[i]),1);0!==this.value.length&&this.setValidValue()}else e=this.treeObj.getTreeData(this.value[0])[0],t.isNullOrUndefined(e)?this.setProperties({value:this.currentValue},!0):(this.setProperties({text:e[this.fields.text]},!0),this.setValidValue())}},s.prototype.setTreeText=function(){if((null===this.value||this.isInitialized)&&null!==this.text){var e=void 0,i=[];if(this.showCheckBox||this.allowMultiSelection){for(var s=this.text.split(this.delimiterChar),l=0;l<s.length;l++)e=this.getItems(s[l]),t.isNullOrUndefined(e)||i.push(e[this.fields.value].toString());0!==i.length?(this.oldValue=this.value,this.setProperties({value:i},!0),this.setValidValue()):this.setProperties({text:this.currentText},!0)}else e=this.getItems(this.text),t.isNullOrUndefined(e)?this.setProperties({text:this.currentText},!0):(this.oldValue=this.value,this.setProperties({value:[e[this.fields.value].toString()]},!0),this.setValidValue())}},s.prototype.setSelectedValue=function(){null==this.value&&(this.isInitialized||(this.oldValue=this.value,this.treeObj.selectedNodes.length>0&&!this.showCheckBox?(this.setProperties({value:this.treeObj.selectedNodes},!0),this.allowMultiSelection&&this.updateMode()):this.showCheckBox&&this.treeObj.checkedNodes&&this.treeObj.checkedNodes.length>0&&(this.setProperties({value:this.treeObj.checkedNodes},!0),t.setValue("selectedNodes",[],this.treeObj),this.treeObj.dataBind(),this.updateMode()),this.updateSelectedValues(),this.currentText=this.text,this.currentValue=this.value))},s.prototype.setValidValue=function(){var e=this;if(this.showCheckBox||this.allowMultiSelection)this.showCheckBox?(this.value.filter(function(t){return-1===e.treeObj.checkedNodes.indexOf(t)}).length>0||this.treeSettings.autoCheck)&&(this.treeObj.checkedNodes=this.value.slice(),this.treeObj.dataBind(),this.setMultiSelect()):(this.treeObj.selectedNodes=this.value.slice(),this.selectedText=[],this.updateSelectedValues()),this.treeObj.dataBind();else{n.Input.setValue(this.text,this.inputEle,this.floatLabelType);var i=this.value[0].toString();this.treeObj.selectedNodes[0]!==i&&t.setValue("selectedNodes",[i],this.treeObj)}this.currentText=this.text,this.currentValue=this.value,this.isInitialized&&this.triggerChangeEvent()},s.prototype.getItems=function(e){var i;if(1===this.treeDataType)for(var s=0;s<this.treeItems.length;s++){var l=t.getValue(this.fields.text,this.treeItems[s]);if(!t.isNullOrUndefined(this.treeItems[s])&&!t.isNullOrUndefined(l)&&l===e){i=this.treeItems[s];break}}else i=this.getNestedItems(this.treeItems,this.fields,e);return i},s.prototype.getNestedItems=function(e,s,l){for(var n,o=0,r=e.length;o<r;o++){var a=t.getValue(this.fields.text,e[o]);if(e[o]&&a&&a.toString()===l)return e[o];if("string"!=typeof s.child||t.isNullOrUndefined(t.getValue(s.child,e[o]))){if(this.fields.dataSource instanceof i.DataManager&&!t.isNullOrUndefined(t.getValue("child",e[o]))){if(void 0!==(n=this.getNestedItems(t.getValue("child",e[o]),this.getChildType(s),l)))break}}else{var h=t.getValue(s.child,e[o]);if(void 0!==(n=this.getNestedItems(h,this.getChildType(s),l)))break}}return n},s.prototype.getChildType=function(e){return"string"==typeof e.child||t.isNullOrUndefined(e.child)?e:e.child},s.prototype.renderTree=function(){this.treeObj=new a.TreeView({fields:this.getTreeFields(this.fields),enableRtl:this.enableRtl,nodeSelected:this.onNodeSelected.bind(this),nodeChecked:this.onNodeChecked.bind(this),nodeChecking:this.beforeCheck.bind(this),nodeExpanded:this.onNodeExpanded.bind(this),actionFailure:this.onActionFailure.bind(this),nodeClicked:this.onNodeClicked.bind(this),dataBound:this.OnDataBound.bind(this),allowMultiSelection:this.allowMultiSelection,enableHtmlSanitizer:this.enableHtmlSanitizer,showCheckBox:this.showCheckBox,autoCheck:this.treeSettings.autoCheck,sortOrder:this.sortOrder,expandOn:this.treeSettings.expandOn,loadOnDemand:this.treeSettings.loadOnDemand,nodeSelecting:this.onBeforeSelect.bind(this),nodeTemplate:this.itemTemplate}),this.treeObj.root=this.root?this.root:this,this.treeObj.appendTo("#"+this.tree.id)},s.prototype.renderPopup=function(){var e=this;this.isFilteredData&&(this.filterObj.value="",this.treeObj.fields=this.getTreeFields(this.fields),this.isFilterRestore=!0,this.isFilteredData=!1,this.hideCheckAll(!1));var i=!1,s={cancel:!1};this.trigger("beforeOpen",s,function(s){if(s.cancel?i=!0:(t.addClass([e.inputWrapper],["e-icon-anim"]),e.isFirstRender?(e.popupEle=e.createElement("div",{id:e.element.id+"_options",className:"e-ddt e-popup "+(null!=e.cssClass?e.cssClass:"")}),e.popupEle.setAttribute("role","region"),e.popupEle.setAttribute("aria-label",e.element.id),document.body.appendChild(e.popupEle),e.createPopup(e.popupEle)):(e.popupEle=e.popupObj.element,e.isReact&&e.isFilterRestore&&(e.treeObj.refresh(),e.isFilteredData=!0,e.popupEle.removeChild(e.filterContainer)))),(e.isFirstRender&&!i||e.isFilteredData)&&(e.isFilteredData=!1,t.prepend([e.popupDiv],e.popupEle),t.removeClass([e.popupDiv],"e-ddt-icon-hide"),e.allowFiltering&&e.renderFilter(),e.showCheckBox&&e.showSelectAll&&!e.popupDiv.classList.contains($)&&(e.createSelectAllWrapper(),e.popupEle.insertBefore(e.checkAllParent,e.popupDiv)),e.headerTemplate&&e.setHeaderTemplate(),e.footerTemplate&&e.setFooterTemplate(),e.isFirstRender=!1,e.hasTemplate&&e.portals&&(e.portals=e.portals.concat(e.treeObj.portals),e.renderReactTemplates())),!i){if(t.attributes(e.inputEle,{"aria-expanded":"true"}),e.popupObj.show(null,1e3===e.zIndex?e.inputEle:null),t.removeClass([e.popupEle],"e-ddt-icon-hide"),e.updatePopupHeight(),e.popupObj.refreshPosition(),(!e.showCheckBox||!e.showSelectAll)&&!e.popupDiv.classList.contains($)&&e.treeItems.length>0){var l=e.treeObj.element.querySelector("li");l.focus(),t.addClass([l],["e-node-focus"])}if(e.checkSelectAll&&e.checkBoxElement){var n=t.closest(e.checkBoxElement,".e-checkbox-wrapper");e.changeState(n,"check"),e.checkSelectAll=!1}e.allowFiltering&&(t.removeClass([e.inputWrapper],[X]),e.filterObj.element.focus());var o={popup:e.popupObj};e.trigger("open",o)}})},s.prototype.updatePopupHeight=function(){if(!this.isFirstRender){var e=this.getHeight();if(this.popupEle.style.maxHeight=e,this.allowFiltering){i=Math.round(this.filterContainer.getBoundingClientRect().height);e=t.formatUnit(parseInt(e,10)-i+"px")}if(this.headerTemplate){i=Math.round(this.header.getBoundingClientRect().height);e=t.formatUnit(parseInt(e,10)-i+"px")}if(this.showCheckBox&&this.showSelectAll&&!this.popupDiv.classList.contains($)){i=Math.round(this.checkAllParent.getBoundingClientRect().height);e=t.formatUnit(parseInt(e,10)-i+"px")}if(this.footerTemplate){var i=Math.round(this.footer.getBoundingClientRect().height);e=t.formatUnit(parseInt(e,10)-i+"px")}var s=parseInt(window.getComputedStyle(this.popupEle).borderTopWidth,10);s+=parseInt(window.getComputedStyle(this.popupEle).borderBottomWidth,10),e=t.formatUnit(parseInt(e,10)-s+"px"),this.popupDiv.style.maxHeight=e}},s.prototype.createPopup=function(e){var i=this;this.isFirstRender&&(this.popupObj=new l.Popup(e,{width:this.setWidth(),targetType:"relative",collision:{X:"flip",Y:"flip"},relateTo:this.inputWrapper,zIndex:this.zIndex,enableRtl:this.enableRtl,position:{X:"left",Y:"bottom"},close:function(){i.isPopupOpen=!1},open:function(){t.EventHandler.add(document,"mousedown",i.onDocumentClick,i),i.isPopupOpen=!0},targetExitViewport:function(){t.Browser.isDevice||i.hidePopup()}}))},s.prototype.setElementWidth=function(e){var i=this.inputWrapper;t.isNullOrUndefined(e)||("number"==typeof e?i.style.width=t.formatUnit(e):"string"==typeof e&&(i.style.width=e.match(/px|%|em/)?e:t.formatUnit(e)))},s.prototype.setWidth=function(){var e=t.formatUnit(this.popupWidth);return e.indexOf("%")>-1?e=(this.inputWrapper.offsetWidth*parseFloat(e)/100).toString()+"px":"string"==typeof this.popupWidth&&(e=this.popupWidth.match(/px|em/)?this.popupWidth:e),e},s.prototype.getHeight=function(){var e=t.formatUnit(this.popupHeight);return e.indexOf("%")>-1?e=(document.documentElement.clientHeight*parseFloat(e)/100).toString()+"px":"string"==typeof this.popupHeight&&(e=this.popupHeight.match(/px|em/)?this.popupHeight:e),e},s.prototype.onDocumentClick=function(e){var i=e.target,s=t.closest(i,".e-list-parent"),l=t.closest(i,".e-filter-wrap"),n=t.closest(i,".e-ddt-header"),o=t.closest(i,".e-ddt-footer"),r=!!i.classList.contains("e-dropdown")||(t.matches(i,".e-ddt .e-popup")||t.matches(i,".e-ddt .e-treeview"));this.isPopupOpen&&(!t.isNullOrUndefined(this.inputWrapper)&&this.inputWrapper.contains(i)||s||r||n||o)||(this.allowMultiSelection||this.showCheckBox)&&(this.isPopupOpen&&i.classList.contains("e-chips-close")||this.isPopupOpen&&(i.classList.contains("e-selectall-parent")||i.classList.contains("e-all-text")||i.classList.contains("e-frame")))?(this.isDocumentClick=!1,e.preventDefault()):t.isNullOrUndefined(this.inputWrapper)||this.inputWrapper.contains(i)||!this.inputFocus||l||this.focusOut(e)},s.prototype.onActionFailure=function(e){this.trigger("actionFailure",e),this.l10nUpdate(!0),t.addClass([this.popupDiv],$)},s.prototype.OnDataBound=function(e){this.treeItems=e.data,this.treeItems.length<=0?(this.l10nUpdate(),t.addClass([this.popupDiv],$),this.hideCheckAll(!0)):this.popupDiv.classList.contains($)&&this.treeItems.length>=1&&(t.removeClass([this.popupDiv],$),this.hideCheckAll(!1)),this.treeDataType=this.getTreeDataType(this.treeItems,this.fields),this.isFirstRender&&this.isRemoteData&&(this.setTreeValue(),this.setTreeText(),this.updateHiddenValue(),this.setSelectedValue(),this.wrapText||this.updateView(),this.treeObj.element.focus());var i={data:e.data};this.trigger("dataBound",i),null===this.filterObj&&(this.isFilteredData=!1),this.isFilteredData&&this.treeObj.expandAll(),this.isFilterRestore&&(this.restoreFilterSelection(),this.isFilterRestore=!1)},s.prototype.restoreFilterSelection=function(){this.showCheckBox?this.treeObj.checkedNodes=this.value?this.value:[]:this.treeObj.selectedNodes=this.value?this.value:[]},s.prototype.setCssClass=function(e,i){var s=this.popupObj?[this.inputWrapper,this.popupObj.element]:[this.inputWrapper];t.isNullOrUndefined(i)||""===i||t.removeClass(s,i.split(" ")),t.isNullOrUndefined(e)||""===e||t.addClass(s,e.split(" "))},s.prototype.setEnableRTL=function(e){e?this.inputWrapper.classList.add("e-rtl"):this.inputWrapper.classList.remove("e-rtl"),this.popupObj&&(this.popupObj.enableRtl=e,this.popupObj.dataBind()),this.treeObj&&(this.treeObj.enableRtl=e,this.treeObj.dataBind())},s.prototype.setEnable=function(){n.Input.setEnabled(this.enabled,this.inputEle),this.enabled?(t.removeClass([this.inputWrapper],"e-disabled"),this.inputEle.setAttribute("aria-disabled","false"),this.inputWrapper.setAttribute("aria-disabled","false")):(this.isPopupOpen&&this.hidePopup(),t.addClass([this.inputWrapper],"e-disabled"),this.inputWrapper&&this.inputWrapper.classList.contains(X)&&t.removeClass([this.inputWrapper],[X]),this.inputEle.setAttribute("aria-disabled","true"),this.inputWrapper.setAttribute("aria-disabled","true"))},s.prototype.cloneFields=function(e){return{dataSource:e.dataSource,value:e.value,text:e.text,parentValue:e.parentValue,child:this.cloneChildField(e.child),hasChildren:e.hasChildren,expanded:e.expanded,iconCss:e.iconCss,imageUrl:e.imageUrl,htmlAttributes:e.htmlAttributes,query:e.query,selected:e.selected,selectable:e.selectable,tableName:e.tableName,tooltip:e.tooltip}},s.prototype.cloneChildField=function(e){return"string"==typeof e?e:{dataSource:e.dataSource,value:e.value,text:e.text,parentValue:e.parentValue,child:e.child?this.cloneChildField(e.child):null,hasChildren:e.hasChildren,expanded:e.expanded,iconCss:e.iconCss,imageUrl:e.imageUrl,htmlAttributes:e.htmlAttributes,query:e.query,selected:e.selected,selectable:e.selectable,tableName:e.tableName,tooltip:e.tooltip}},s.prototype.getTreeFields=function(e){return{dataSource:e.dataSource,id:e.value,text:e.text,parentID:e.parentValue,child:this.getTreeChildren(e.child),hasChildren:e.hasChildren,expanded:e.expanded,iconCss:e.iconCss,imageUrl:e.imageUrl,isChecked:e.selected,htmlAttributes:e.htmlAttributes,query:e.query,selectable:e.selectable,selected:e.selected,tableName:e.tableName,tooltip:e.tooltip}},s.prototype.getTreeChildren=function(e){if("string"==typeof e)return e;if(!t.isNullOrUndefined(e)){var i=e=this.getActualProperties(e);return e.value&&(i.id=e.value),e.parentValue&&(i.parentID=e.parentValue),e.child&&(i.child=this.getTreeChildren(e.child)),e.selected&&this.showCheckBox&&(i.isChecked=e.selected),i}return null},s.prototype.getTreeDataType=function(e,s){if(this.fields.dataSource instanceof i.DataManager){for(l=0;l<e.length;l++)if("string"==typeof s.child&&t.isNullOrUndefined(t.getValue(s.child,e[l])))return 1;return 2}t.isNullOrUndefined(this.fields.dataSource)&&(this.fields.dataSource=[]);for(var l=0,n=this.fields.dataSource.length;l<n;l++){if("string"==typeof s.child&&!t.isNullOrUndefined(t.getValue(s.child,this.fields.dataSource[l])))return 2;if(!t.isNullOrUndefined(t.getValue(s.parentValue,this.fields.dataSource[l]))||!t.isNullOrUndefined(t.getValue(s.hasChildren,this.fields.dataSource[l])))return 1}return 1},s.prototype.setFields=function(){this.resetValue(),this.hasTemplate&&this.updateTemplate(),this.treeObj.fields=this.getTreeFields(this.fields),this.treeObj.dataBind()},s.prototype.getEventArgs=function(e){var t,i=e.data,s=e.nodeData;return this.showCheckBox&&("check"===e.action?t="select":"uncheck"===e.action&&(t="un-select")),{action:this.showCheckBox?t:e.action,isInteracted:!!this.isClicked||e.isInteracted,item:e.node,itemData:this.showCheckBox?i[0]:s}},s.prototype.onBeforeSelect=function(e){e.isInteracted&&(this.oldValue=this.value?this.value.slice():this.value,null===this.value&&this.setProperties({value:[]},!0))},s.prototype.updateHiddenValue=function(){this.allowMultiSelection||this.showCheckBox||(this.value&&this.value.length?this.hiddenElement.innerHTML='<option selected value ="'+this.value[0]+'">'+this.text+"</option>":this.hiddenElement.innerHTML="")},s.prototype.onNodeSelected=function(e){if(!this.showCheckBox){var i;if(e.isInteracted){var s=t.getValue("id",e.nodeData).toString();this.allowMultiSelection?this.allowMultiSelection&&this.setMultiSelect():(this.hiddenElement.innerHTML="",this.setProperties({value:[s]},!0),i=this.itemTemplate?t.getValue("text",this.treeObj.getNode(s)):t.getValue("text",e.nodeData).toString(),n.Input.setValue(i,this.inputEle,this.floatLabelType),this.setProperties({text:i},!0),this.currentText=this.text,this.currentValue=this.value,t.attributes(this.inputWrapper,{"aria-describedby":this.element.id}),t.attributes(this.inputWrapper,{"aria-activedescendant":s.toString()}),this.updateHiddenValue(),this.showOverAllClear(),this.hidePopup(),this.isNodeSelected=!0)}var l=this.getEventArgs(e);this.trigger("select",l),this.isValueChange&&!this.changeOnBlur&&(this.triggerChangeEvent(this.keyEventArgs),this.isValueChange=!1)}},s.prototype.onNodeClicked=function(e){!this.changeOnBlur&&this.isNodeSelected&&(this.triggerChangeEvent(e.event),this.isNodeSelected=!1);var t=e.event.target;(t.classList.contains("e-fullrow")||t.classList.contains("e-list-text"))&&this.showCheckBox&&(this.isClicked=!0,"true"===this.treeObj.getNode(e.node).isChecked?this.treeObj.uncheckAll([e.node]):this.treeObj.checkAll([e.node]),this.isClicked=!1,this.setMultiSelect(),this.ensurePlaceHolder()),this.changeOnBlur||!this.allowMultiSelection&&!this.showCheckBox||this.triggerChangeEvent(e.event)},s.prototype.onNodeChecked=function(e){var i=this.getEventArgs(e);if(this.trigger("select",i),this.isFilteredData&&"uncheck"===e.action){var s=t.getValue("id",e.data[0]).toString();this.removeSelectedData(s,!0)}if(!this.isChipDelete&&e.isInteracted&&(this.setMultiSelect(),this.ensurePlaceHolder()),this.showSelectAll&&this.checkBoxElement){var l=this.treeObj.element.querySelectorAll("li"),n=this.treeObj.element.querySelectorAll("li[aria-checked=true]"),o=t.closest(this.checkBoxElement,".e-checkbox-wrapper");o&&"uncheck"===e.action&&(e.isInteracted||0===n.length||!t.isNullOrUndefined(e.data[0])&&"false"===e.data[0].isChecked)?(this.isReverseUpdate=!0,this.changeState(o,"uncheck"),this.isReverseUpdate=!1):o&&"check"===e.action&&n.length===l.length&&(e.isInteracted||this.isCheckAllCalled||!t.isNullOrUndefined(e.data[0])&&"true"===e.data[0].isChecked)&&(this.isReverseUpdate=!0,this.isCheckAllCalled=!1,this.changeState(o,"check"),this.isReverseUpdate=!1)}},s.prototype.beforeCheck=function(e){e.isInteracted&&(this.oldValue=this.value?this.value.slice():this.value)},s.prototype.onNodeExpanded=function(e){if(this.hasTemplate&&this.portals&&this.treeObj.portals){for(var t=0;t<this.treeObj.portals.length;t++)-1==this.portals.indexOf(this.treeObj.portals[t])&&this.portals.push(this.treeObj.portals[t]);this.renderReactTemplates()}},s.prototype.updateClearButton=function(e){if(e?this.inputWrapper.contains(this.overAllClear)?(t.removeClass([this.overAllClear],J),t.addClass([this.inputWrapper],G)):this.inputEle.parentElement.insertBefore(this.overAllClear,this.inputEle.nextSibling):(t.addClass([this.overAllClear],J),t.removeClass([this.inputWrapper],G)),(this.allowMultiSelection||this.showCheckBox)&&this.chipWrapper)for(var i=t.selectAll(".e-chips-close",this.chipWrapper),s=0;s<i.length;s++)e?t.removeClass([i[s]],J):t.addClass([i[s]],J)},s.prototype.updateDropDownIconState=function(e){var i=t.select(".e-ddt-icon",this.inputWrapper);e?(i?t.removeClass([i],J):n.Input.appendSpan(K,this.inputWrapper,this.createElement),t.addClass([this.inputWrapper],"e-show-dd-icon")):(t.addClass([i],J),t.removeClass([this.inputWrapper],"e-show-dd-icon"))},s.prototype.updateMode=function(){if("Custom"!==this.mode)if("Delimiter"!==this.mode){this.inputWrapper.contains(this.chipWrapper)||this.createChip();var e=this.getValidMode();this.chipWrapper.classList.contains(J)&&e?(t.removeClass([this.chipWrapper],J),t.addClass([this.inputWrapper],_)):e||(t.addClass([this.chipWrapper],J),t.removeClass([this.inputWrapper],_));var i=null!==this.value&&0!==this.value.length;e&&i?t.addClass([this.inputEle],Q):t.removeClass([this.inputEle],Q)}else this.inputEle.classList.contains(Q)&&(t.removeClass([this.inputEle],Q),this.chipWrapper&&(t.addClass([this.chipWrapper],J),t.removeClass([this.inputWrapper],_)))},s.prototype.ensurePlaceHolder=function(){(t.isNullOrUndefined(this.value)||this.value&&0===this.value.length)&&(t.removeClass([this.inputEle],Q),this.chipWrapper&&t.addClass([this.chipWrapper],J))},s.prototype.ensureClearIconPosition=function(e){"Never"!==e&&this.inputWrapper.insertBefore(this.overAllClear,this.inputObj.buttons[0])},s.prototype.setMultiSelectValue=function(e){if(this.isFilteredData){for(var i=t.isNullOrUndefined(this.value)?[]:this.value,s=0;s<e.length;s++)(t.isNullOrUndefined(this.value)||-1===this.value.indexOf(e[s]))&&i.push(e[s]);this.setProperties({value:i},!0)}else this.setProperties({value:this.isFromFilterChange&&e&&0==e.length?this.value:e},!0),this.isFromFilterChange=!1,e&&0!==e.length&&!this.showCheckBox&&(this.treeObj.selectedNodes=this.value.slice(),this.treeObj.dataBind())},s.prototype.setMultiSelect=function(){if(this.showCheckBox&&!this.isDynamicChange)this.setMultiSelectValue(this.treeObj.checkedNodes.slice());else{var e=this.allowMultiSelection?this.showCheckBox?this.treeObj.checkedNodes:this.treeObj.selectedNodes:this.value?this.showCheckBox?this.value:[this.value[0]]:null;this.setMultiSelectValue(e),this.showCheckBox&&null!==this.value&&(this.treeObj.checkedNodes=this.value,this.treeObj.dataBind())}this.selectedText=[];var i=!!this.allowMultiSelection||!!this.showCheckBox;this.inputWrapper.contains(this.chipWrapper)&&!i&&(t.removeClass([this.inputEle],Q),t.detach(this.chipWrapper)),this.getValidMode()&&null!==this.value&&(t.addClass([this.inputEle],Q),this.chipWrapper&&t.removeClass([this.chipWrapper],J));var s=!!this.value&&!!this.value.length;this.chipWrapper&&"Box"===this.mode&&!s&&(t.addClass([this.chipWrapper],J),t.removeClass([this.inputEle],Q)),this.updateSelectedValues()},s.prototype.getSelectedData=function(e){var i=null;if(this.isFilteredData)for(var s=0;s<this.selectedData.length;s++)if(t.getValue(this.treeSettings.loadOnDemand?this.fields.value:"id",this.selectedData[s]).toString()===e){i=this.selectedData[s];break}return t.isNullOrUndefined(i)&&(i=this.treeSettings.loadOnDemand?this.getNodeData(e):this.treeObj.getNode(e),t.isNullOrUndefined(i)||this.selectedData.push(i)),i},s.prototype.getNodeData=function(e){if(!t.isNullOrUndefined(e)){if(1!==this.treeDataType)return this.getChildNodeData(this.treeItems,this.fields,e);for(var i=0,s=this.treeItems.length;i<s;i++){var l=t.getValue(this.fields.value,this.treeItems[i]);if(!t.isNullOrUndefined(this.treeItems[i])&&!t.isNullOrUndefined(l)&&l.toString()===e)return this.treeItems[i]}}},s.prototype.getChildNodeData=function(e,s,l){var n;if(t.isNullOrUndefined(e))return n;for(var o=0,r=e.length;o<r;o++){var a=t.getValue(s.value,e[o]);if(e[o]&&a&&a.toString()===l)return e[o];if("string"!=typeof s.child||t.isNullOrUndefined(t.getValue(s.child,e[o]))){if(this.fields.dataSource instanceof i.DataManager&&!t.isNullOrUndefined(t.getValue("child",e[o]))){if(void 0!==(n=this.getChildNodeData(t.getValue("child",e[o]),this.getChildMapperFields(s),l)))break}}else{var h=t.getValue(s.child,e[o]);if(void 0!==(n=this.getChildNodeData(h,this.getChildMapperFields(s),l)))break}}return n},s.prototype.getChildMapperFields=function(e){return"string"==typeof e.child||t.isNullOrUndefined(e.child)?e:e.child},s.prototype.removeSelectedData=function(e,i){var s=t.isNullOrUndefined(this.value)?[]:this.value.slice();s.splice(s.indexOf(e),1),this.setProperties({value:s},i);for(var l=0;l<this.selectedData.length;l++)if(t.getValue(this.treeSettings.loadOnDemand?this.fields.value:"id",this.selectedData[l]).toString()===e){this.selectedData.splice(l,1);break}},s.prototype.updateSelectedValues=function(){this.dataValue="";var e,i,s,l="";this.hiddenElement.innerHTML="";var o="";if(this.isChipDelete&&!this.treeSettings.autoCheck||!this.inputWrapper.contains(this.chipWrapper)||(this.chipCollection.innerHTML=""),this.isFilteredData||(this.selectedData=[]),!t.isNullOrUndefined(this.value)){for(var r=0,a=this.value.length;r<a;r++)s=this.getSelectedData(this.value[r]),i=t.getValue(this.treeSettings.loadOnDemand?this.fields.text:"text",s),this.selectedText.push(i),e=this.selectedText[this.selectedText.length-1],this.selectedText.length>1?(this.dataValue+=this.delimiterChar+" "+e,l+=","+e):(this.dataValue+=e,l+=e),"Custom"===this.mode||"Delimiter"===this.mode||this.isChipDelete&&!this.treeSettings.autoCheck||!this.allowMultiSelection&&!this.showCheckBox||this.setChipValues(e,this.value[r]),o+='<option selected value ="'+this.value[r]+'">'+this.selectedText[this.selectedText.length-1]+"</option>";this.selectedText.length>=1&&this.setProperties({text:l},!0),this.hiddenElement.innerHTML=o,"Custom"===this.mode&&(this.allowMultiSelection||this.showCheckBox)&&this.setTagValues()}var h=this.getValidMode();"Custom"===this.mode||"Box"===this.mode||!this.allowMultiSelection&&!this.showCheckBox||h||this.chipWrapper&&(t.addClass([this.chipWrapper],J),t.removeClass([this.inputWrapper],_)),n.Input.setValue(this.dataValue,this.inputEle,this.floatLabelType),""===l?this.setProperties({text:null},!0):this.setProperties({text:l},!0),this.showClearButton&&this.inputFocus&&this.showOverAllClear(),(this.allowMultiSelection||this.showCheckBox)&&this.popupObj&&this.popupObj.refreshPosition(),this.currentText=this.text,this.currentValue=this.value},s.prototype.setChipValues=function(e,i){this.inputWrapper.contains(this.chipWrapper)||this.createChip();var s=this.createElement("span",{className:"e-chips",attrs:{"data-value":i}}),l=this.createElement("span",{className:"e-chipcontent"}),n=this.createElement("span",{className:"e-chips-close e-icons"});this.enableHtmlSanitizer?l.innerText=t.SanitizeHtmlHelper.sanitize(e):l.innerHTML=e,s.appendChild(l),this.chipCollection.appendChild(s),this.showClearButton&&(s.appendChild(n),t.EventHandler.add(n,"mousedown",this.removeChip,this))},s.prototype.setTagValues=function(){if(null!==this.value&&null!=this.text){this.inputWrapper.contains(this.chipWrapper)||this.createChip(),this.inputWrapper.classList.contains(_)||t.addClass([this.inputWrapper],_);var e=this.createElement("span",{className:"e-chips"});this.inputEle.classList.contains(Q)||t.addClass([this.inputEle],Q),this.chipWrapper.classList.contains(J)&&t.removeClass([this.chipWrapper],J);var i=this.createElement("span",{className:"e-chipcontent"}),s=this.customTemplate,l=this.customTemplateId,n=this.templateComplier(s)({value:this.value,text:this.text},this,"customTemplate",l,this.isStringTemplate,void 0,i);n&&(n=Array.prototype.slice.call(n),t.append(n,i)),e.appendChild(i),this.chipCollection.appendChild(e)}},s.prototype.setSelectAllWrapper=function(e){this.isFirstRender||(e&&!this.popupEle.contains(this.checkAllParent)&&this.showCheckBox?(this.createSelectAllWrapper(),this.popupEle.insertBefore(this.checkAllParent,this.popupDiv)):this.popupEle.contains(this.checkAllParent)&&(t.detach(this.checkAllParent),this.checkAllParent=null))},s.prototype.setHeaderTemplate=function(){this.header?this.header.innerHTML="":(this.header=this.createElement("div"),t.addClass([this.header],"e-ddt-header"));var e=this.templateComplier(this.headerTemplate)({},this,"headerTemplate",this.headerTemplateId,this.isStringTemplate,void 0,this.header);e&&(e=Array.prototype.slice.call(e),t.append(e,this.header)),this.popupEle.insertBefore(this.header,this.checkAllParent?this.checkAllParent:this.popupDiv)},s.prototype.templateComplier=function(e){if(e)try{return"function"!=typeof e&&document.querySelectorAll(e).length?t.compile(document.querySelector(e).innerHTML.trim()):t.compile(e)}catch(i){return t.compile(e)}return t.compile(e)},s.prototype.setFooterTemplate=function(){this.footer?this.footer.innerHTML="":(this.footer=this.createElement("div"),t.addClass([this.footer],"e-ddt-footer"));var e=this.templateComplier(this.footerTemplate)({},this,"footerTemplate",this.footerTemplateId,this.isStringTemplate,void 0,this.footer);e&&(e=Array.prototype.slice.call(e),t.append(e,this.footer)),t.append([this.footer],this.popupEle)},s.prototype.clearAll=function(e){this.enabled&&!this.readonly&&(this.resetValue(),this.showOverAllClear(),(this.allowMultiSelection||this.showCheckBox)&&(this.popupObj&&this.popupObj.refreshPosition(),this.wrapText||this.updateOverflowWrapper(!0)),e&&(this.isClearButtonClick=!0),this.changeOnBlur||this.triggerChangeEvent(e))},s.prototype.removeChip=function(e){if(this.enabled&&!this.readonly){var i=e.target.parentElement,s=i.getAttribute("data-value");this.chipCollection&&i&&t.remove(i),this.isChipDelete=!0,this.isClearButtonClick=!0,this.removeSelectedData(s,!0),this.selectedText=[],this.allowMultiSelection&&(this.treeObj.selectedNodes=this.value.slice(),this.updateSelectedValues()),this.showCheckBox&&(this.treeObj.uncheckAll([s]),this.clearCheckAll(),this.setMultiSelect()),this.triggerChangeEvent(e),this.isChipDelete=!1,this.ensurePlaceHolder()}},s.prototype.resetValue=function(e){this.value==[]&&null==this.text||(n.Input.setValue(null,this.inputEle,this.floatLabelType),e||(this.oldValue=this.value,this.setProperties({value:[]},!0)),this.dataValue=null,this.setProperties({text:null},!0),this.selectedData=[],t.setValue("selectedNodes",[],this.treeObj),this.hiddenElement.innerHTML="",this.showCheckBox&&(this.treeObj.uncheckAll(),this.setMultiSelect(),this.clearCheckAll()),null!==this.oldValue||e?e&&this.triggerChangeEvent():this.removeValue=!0,(this.allowMultiSelection||this.showCheckBox)&&this.chipWrapper&&(this.chipCollection.innerHTML="",this.wrapText||this.updateOverflowWrapper(!0),this.ensurePlaceHolder()))},s.prototype.clearCheckAll=function(){this.showSelectAll&&this.value&&0===this.value.length&&this.setLocale(!1)},s.prototype.selectAllItems=function(e){if(this.showCheckBox)e?(this.isCheckAllCalled=!0,this.treeObj.checkAll()):this.treeObj.uncheckAll(),this.checkSelectAll=e;else if(this.allowMultiSelection)if(e){for(var i=t.selectAll("li",this.treeObj.element),s=void 0,l=[],n=0;n<i.length;n++)s=i[n].getAttribute("data-uid").toString(),l.push(s);this.treeObj.selectedNodes=l}else this.treeObj.selectedNodes=[];this.updateMode(),this.setMultiSelect(),this.wrapText||(e?this.updateView():this.updateOverflowWrapper(!0))},s.prototype.updateTreeSettings=function(e){var t=Object.keys(e.treeSettings)[0];if("autoCheck"===t)this.treeObj.autoCheck=this.treeSettings.autoCheck;else if("loadOnDemand"===t)this.treeObj.loadOnDemand=this.treeSettings.loadOnDemand;else if("expandOn"===t)return this.treeObj.expandOn=this.treeSettings.expandOn,void this.treeObj.dataBind();this.treeObj.dataBind(),this.setMultiSelect(),this.updateValue(this.value)},s.prototype.updateCheckBoxState=function(e){this.hasTemplate&&this.updateTemplate(),this.wrapText||this.updateOverflowWrapper(!1),this.treeObj.showCheckBox=e,this.treeObj.dataBind(),this.isDynamicChange=!0,this.setSelectAllWrapper(this.showSelectAll),this.showSelectAll&&this.setLocale(),this.showCheckBox&&this.updateMode(),this.setMultiSelect(),this.isDynamicChange=!1},s.prototype.updateTemplate=function(){this.popupObj&&(this.clearTemplate(),this.portals=[],this.popupObj.destroy(),this.isPopupOpen?(this.hidePopup(),this.isFirstRender=!0,this.renderPopup()):this.isFirstRender=!0)},s.prototype.l10nUpdate=function(e){if(this.noRecord?this.noRecord.innerHTML="":this.noRecord=this.createElement("div"),"No Records Found"!==this.noRecordsTemplate||"The Request Failed"!==this.actionFailureTemplate){var i=e?this.actionFailureTemplate:this.noRecordsTemplate,s=e?this.actionFailureTemplateId:this.noRecordsTemplateId,l=e?"actionFailureTemplate":"noRecordsTemplate",n=this.templateComplier(i)({},this,l,s,this.isStringTemplate,void 0,this.noRecord);n&&(n=Array.prototype.slice.call(n),t.append(n,this.noRecord))}else{var o={noRecordsTemplate:"No Records Found",actionFailureTemplate:"The Request Failed"};this.l10n=new t.L10n(this.getLocaleName(),o,this.locale),this.noRecord.innerHTML=e?this.l10n.getConstant("actionFailureTemplate"):this.l10n.getConstant("noRecordsTemplate")}t.addClass([this.noRecord],"e-ddt-nodata"),t.prepend([this.noRecord],this.popupDiv)},s.prototype.updateRecordTemplate=function(e){this.treeItems&&this.treeItems.length<=0&&(this.l10nUpdate(e),this.hasTemplate&&this.updateTemplate())},s.prototype.updateOverflowWrapper=function(e){e?this.inputWrapper.contains(this.overFlowWrapper)&&e&&(this.overFlowWrapper.innerHTML=""):this.inputWrapper.contains(this.overFlowWrapper)||(this.overFlowWrapper=this.createElement("span",{className:"e-overflow "+J}),this.inputWrapper.insertBefore(this.overFlowWrapper,this.hiddenElement))},s.prototype.updateMultiSelection=function(e){this.wrapText||this.updateOverflowWrapper(!1),this.treeObj.allowMultiSelection=e,this.treeObj.dataBind(),this.updateOption(),this.allowMultiSelection&&this.updateMode(),this.setMultiSelect()},s.prototype.updateAllowFiltering=function(e){this.isFirstRender||(e?this.renderFilter():this.destroyFilter())},s.prototype.updateFilterPlaceHolder=function(){this.filterObj&&(this.filterObj.placeholder=this.filterBarPlaceholder,this.filterObj.element.setAttribute("aria-label",this.filterBarPlaceholder))},s.prototype.updateValue=function(e){this.isDynamicChange=!0,t.isNullOrUndefined(e)||0===e.length?this.resetValue(!0):(this.setTreeValue(),!this.allowMultiSelection&&!this.showCheckBox||this.wrapText||(this.updateOverflowWrapper(!1),this.updateView())),this.updateHiddenValue(),this.isDynamicChange=!1},s.prototype.updateText=function(e){t.isNullOrUndefined(e)?this.resetValue():(this.setTreeText(),!this.allowMultiSelection&&!this.showCheckBox||this.wrapText||(this.updateOverflowWrapper(!1),this.updateView())),this.updateHiddenValue()},s.prototype.updateModelMode=function(){if(!!this.allowMultiSelection||!!this.showCheckBox){if(!this.wrapText){var e=t.select(".e-overflow",this.inputWrapper);e&&(e.innerHTML="")}this.updateMode(),this.setMultiSelect(),!this.wrapText&&this.value&&0!==this.value.length&&(this.updateOverFlowView(),t.addClass([this.inputEle],Q),"Box"===this.mode?t.removeClass([this.overFlowWrapper,this.inputWrapper],"e-show-text"):t.addClass([this.overFlowWrapper,this.inputWrapper],"e-show-text"))}},s.prototype.updateOption=function(){this.hiddenElement.hasAttribute("multiple")||!this.allowMultiSelection&&!this.showCheckBox?!this.hiddenElement.hasAttribute("multiple")||this.allowMultiSelection||this.showCheckBox||this.hiddenElement.removeAttribute("multiple"):this.hiddenElement.setAttribute("multiple","")},s.prototype.onPropertyChanged=function(e,i){for(var s=0,l=Object.keys(e);s<l.length;s++)switch(l[s]){case"width":this.setElementWidth(e.width),this.popupObj&&(this.popupObj.element.style.width=this.setWidth());break;case"placeholder":n.Input.setPlaceholder(e.placeholder,this.inputEle);break;case"cssClass":this.setCssClass(e.cssClass,i.cssClass);break;case"enableRtl":this.setEnableRTL(this.enableRtl);break;case"fields":this.setFields();break;case"readonly":n.Input.setReadonly(e.readonly,this.inputEle);break;case"enabled":this.setEnable();break;case"floatLabelType":n.Input.removeFloating(this.inputObj),n.Input.addFloating(this.inputEle,e.floatLabelType,this.placeholder,this.createElement),this.ensureClearIconPosition(e.floatLabelType);break;case"showClearButton":this.updateClearButton(e.showClearButton);break;case"allowFiltering":this.updateAllowFiltering(e.allowFiltering);break;case"filterBarPlaceholder":this.updateFilterPlaceHolder();break;case"value":this.oldValue=i.value,this.updateValue(e.value);break;case"text":this.updateText(e.text);break;case"allowMultiSelection":this.updateMultiSelection(e.allowMultiSelection);break;case"mode":if(!this.showCheckBox&&!this.allowMultiSelection)return;"Custom"===this.mode?(this.overFlowWrapper&&t.detach(this.overFlowWrapper),this.chipWrapper&&t.detach(this.chipWrapper),this.setTagValues()):("Custom"===i.mode&&this.updateOverflowWrapper(this.wrapText),this.updateModelMode());break;case"delimiterChar":if("Box"===this.mode)return;(this.showCheckBox||this.allowMultiSelection)&&this.setMultiSelect();break;case"selectAllText":this.showCheckBox&&this.showSelectAll&&this.setLocale();break;case"unSelectAllText":this.showCheckBox&&this.showSelectAll&&this.setLocale(!1);break;case"showSelectAll":this.showCheckBox&&(this.setSelectAllWrapper(e.showSelectAll),this.updatePopupHeight());break;case"showCheckBox":this.updateCheckBoxState(e.showCheckBox),this.wrapText||this.updateOverflowWrapper(!0),this.updatePopupHeight(),this.updateOption();break;case"treeSettings":this.updateTreeSettings(e);break;case"customTemplate":if("Custom"!==this.mode)return;this.chipCollection.innerHTML="",this.setTagValues();break;case"sortOrder":this.hasTemplate&&this.updateTemplate(),this.treeObj.sortOrder=e.sortOrder,this.treeObj.dataBind(),this.updateValue(this.value);break;case"showDropDownIcon":this.updateDropDownIconState(e.showDropDownIcon);break;case"popupWidth":this.popupObj&&(this.popupObj.element.style.width=this.setWidth());break;case"popupHeight":this.popupObj&&this.updatePopupHeight();break;case"zIndex":this.popupObj&&(this.popupObj.zIndex=e.zIndex,this.popupObj.dataBind());break;case"headerTemplate":case"footerTemplate":this.updateTemplate();break;case"itemTemplate":this.updateTemplate(),this.treeObj.nodeTemplate=e.itemTemplate,this.treeObj.dataBind();break;case"noRecordsTemplate":this.updateRecordTemplate();break;case"actionFailureTemplate":this.updateRecordTemplate(!0);break;case"htmlAttributes":this.setHTMLAttributes();break;case"wrapText":this.updateOverflowWrapper(this.wrapText),!this.allowMultiSelection&&!this.showCheckBox||this.wrapText?(t.addClass([this.overFlowWrapper],J),this.chipWrapper&&"Box"===this.mode?t.removeClass([this.chipWrapper],J):(t.removeClass([this.inputWrapper],_),t.removeClass([this.inputEle],Q)),this.ensurePlaceHolder()):this.updateView()}},s.prototype.clear=function(){this.clearAll(),this.inputFocus?this.onFocusOut():(this.changeOnBlur&&this.triggerChangeEvent(),this.removeValue=!1)},s.prototype.destroy=function(){for(this.clearTemplate(),this.unWireEvents(),this.setCssClass(null,this.cssClass),this.setProperties({text:null},!0),this.treeObj.destroy(),this.destroyFilter(),this.popupObj&&(this.popupObj.destroy(),t.detach(this.popupObj.element)),this.element.tagName!==this.getDirective()&&this.inputWrapper.parentElement.insertBefore(this.element,this.inputWrapper),n.Input.setValue(null,this.inputEle,this.floatLabelType),t.detach(this.inputWrapper),t.detach(this.popupDiv),t.detach(this.hiddenElement),this.element.classList.remove("e-input"),(this.showCheckBox||this.allowMultiSelection)&&this.element.classList.remove(Q),this.inputObj=null;this.hiddenElement.options.length>0;)this.hiddenElement.remove(0);this.hiddenElement.innerHTML="",this.hiddenElement=null,this.inputWrapper=null,this.popupDiv=null,this.tree=null,this.popupObj=null,this.treeObj=null,this.overAllClear=null,this.chipWrapper=null,this.chipCollection=null,this.checkAllParent=null,this.selectAllSpan=null,this.checkBoxElement=null,this.checkWrapper=null,this.popupEle=null,this.header=null,this.footer=null,this.overFlowWrapper=null,this.keyboardModule=null,e.prototype.destroy.call(this),this.setProperties({value:[]},!0)},s.prototype.destroyFilter=function(){this.filterObj&&(this.filterObj.destroy(),t.detach(this.filterObj.element),t.detach(this.filterContainer),this.filterObj=null)},s.prototype.ensureVisible=function(e){this.treeObj.ensureVisible(e)},s.prototype.getData=function(e){return this.treeObj.getTreeData(e)},s.prototype.hidePopup=function(){var e={popup:this.popupObj};this.inputWrapper.classList.remove("e-icon-anim"),this.popupEle&&t.addClass([this.popupEle],"e-ddt-icon-hide"),t.attributes(this.inputEle,{"aria-expanded":"false"}),this.popupObj&&this.isPopupOpen&&(this.popupObj.hide(),this.inputFocus&&(this.inputWrapper.focus(),this.allowFiltering&&t.addClass([this.inputWrapper],[X])),this.trigger("close",e))},s.prototype.selectAll=function(e){this.selectAllItems(e)},s.prototype.showPopup=function(){!this.enabled||this.readonly||this.isPopupOpen||(this.renderPopup(),this.focusIn())},s.prototype.getModuleName=function(){return"dropdowntree"},z([t.Property("The Request Failed")],s.prototype,"actionFailureTemplate",void 0),z([t.Property(!1)],s.prototype,"allowFiltering",void 0),z([t.Property(!1)],s.prototype,"allowMultiSelection",void 0),z([t.Property(!0)],s.prototype,"changeOnBlur",void 0),z([t.Property("")],s.prototype,"cssClass",void 0),z([t.Property("${value.length} item(s) selected")],s.prototype,"customTemplate",void 0),z([t.Property(",")],s.prototype,"delimiterChar",void 0),z([t.Property(!0)],s.prototype,"enabled",void 0),z([t.Complex({},Z)],s.prototype,"fields",void 0),z([t.Property(null)],s.prototype,"filterBarPlaceholder",void 0),z([t.Property("StartsWith")],s.prototype,"filterType",void 0),z([t.Property("Never")],s.prototype,"floatLabelType",void 0),z([t.Property(null)],s.prototype,"footerTemplate",void 0),z([t.Property(!1)],s.prototype,"ignoreAccent",void 0),z([t.Property(!0)],s.prototype,"ignoreCase",void 0),z([t.Property(null)],s.prototype,"headerTemplate",void 0),z([t.Property({})],s.prototype,"htmlAttributes",void 0),z([t.Property(null)],s.prototype,"itemTemplate",void 0),z([t.Property("Default")],s.prototype,"mode",void 0),z([t.Property("No Records Found")],s.prototype,"noRecordsTemplate",void 0),z([t.Property(null)],s.prototype,"placeholder",void 0),z([t.Property("300px")],s.prototype,"popupHeight",void 0),z([t.Property("100%")],s.prototype,"popupWidth",void 0),z([t.Property(!1)],s.prototype,"readonly",void 0),z([t.Property(!1)],s.prototype,"showSelectAll",void 0),z([t.Property("Select All")],s.prototype,"selectAllText",void 0),z([t.Property(!1)],s.prototype,"showCheckBox",void 0),z([t.Property(!1)],s.prototype,"enableHtmlSanitizer",void 0),z([t.Property(!0)],s.prototype,"showClearButton",void 0),z([t.Property(!0)],s.prototype,"showDropDownIcon",void 0),z([t.Property("None")],s.prototype,"sortOrder",void 0),z([t.Property(null)],s.prototype,"text",void 0),z([t.Complex({},ee)],s.prototype,"treeSettings",void 0),z([t.Property("Unselect All")],s.prototype,"unSelectAllText",void 0),z([t.Property(null)],s.prototype,"value",void 0),z([t.Property("100%")],s.prototype,"width",void 0),z([t.Property(1e3)],s.prototype,"zIndex",void 0),z([t.Property(!1)],s.prototype,"wrapText",void 0),z([t.Event()],s.prototype,"actionFailure",void 0),z([t.Event()],s.prototype,"beforeOpen",void 0),z([t.Event()],s.prototype,"change",void 0),z([t.Event()],s.prototype,"close",void 0),z([t.Event()],s.prototype,"blur",void 0),z([t.Event()],s.prototype,"created",void 0),z([t.Event()],s.prototype,"dataBound",void 0),z([t.Event()],s.prototype,"destroyed",void 0),z([t.Event()],s.prototype,"filtering",void 0),z([t.Event()],s.prototype,"focus",void 0),z([t.Event()],s.prototype,"keyPress",void 0),z([t.Event()],s.prototype,"open",void 0),z([t.Event()],s.prototype,"select",void 0),s=z([t.NotifyPropertyChanges],s)}(t.Component),ie=function(){var e=function(t,i){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)t.hasOwnProperty(i)&&(e[i]=t[i])})(t,i)};return function(t,i){function s(){this.constructor=t}e(t,i),t.prototype=null===i?Object.create(i):(s.prototype=i.prototype,new s)}}(),se=function(e,t,i,s){var l,n=arguments.length,o=n<3?t:null===s?s=Object.getOwnPropertyDescriptor(t,i):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(e,t,i,s);else for(var r=e.length-1;r>=0;r--)(l=e[r])&&(o=(n<3?l(o):n>3?l(t,i,o):l(t,i))||o);return n>3&&o&&Object.defineProperty(t,i,o),o};M.root="e-combobox";var le={container:null,buttons:[]},ne=function(e){function s(t,i){return e.call(this,t,i)||this}return ie(s,e),s.prototype.preRender=function(){e.prototype.preRender.call(this)},s.prototype.getLocaleName=function(){return"combo-box"},s.prototype.wireEvent=function(){"combobox"===this.getModuleName()&&(t.EventHandler.add(this.inputWrapper.buttons[0],"mousedown",this.preventBlur,this),t.EventHandler.add(this.inputWrapper.container,"blur",this.onBlurHandler,this)),t.isNullOrUndefined(this.inputWrapper.buttons[0])||t.EventHandler.add(this.inputWrapper.buttons[0],"mousedown",this.dropDownClick,this),t.EventHandler.add(this.inputElement,"focus",this.targetFocus,this),this.readonly||(t.EventHandler.add(this.inputElement,"input",this.onInput,this),t.EventHandler.add(this.inputElement,"keyup",this.onFilterUp,this),t.EventHandler.add(this.inputElement,"keydown",this.onFilterDown,this),t.EventHandler.add(this.inputElement,"paste",this.pasteHandler,this),t.EventHandler.add(window,"resize",this.windowResize,this)),this.bindCommonEvent()},s.prototype.preventBlur=function(e){(this.allowFiltering||document.activeElement===this.inputElement||document.activeElement.classList.contains(M.input)||!t.Browser.isDevice)&&t.Browser.isDevice||e.preventDefault()},s.prototype.onBlurHandler=function(i){var s=this.inputElement&&""===this.inputElement.value?null:this.inputElement&&this.inputElement.value;t.isNullOrUndefined(this.listData)||t.isNullOrUndefined(s)||s===this.text||this.customValue(i),e.prototype.onBlurHandler.call(this,i)},s.prototype.targetElement=function(){return this.inputElement},s.prototype.setOldText=function(e){n.Input.setValue(this.text,this.inputElement,this.floatLabelType,this.showClearButton),this.customValue(),this.removeSelection()},s.prototype.setOldValue=function(e){this.allowCustom?this.valueMuteChange(this.value):this.valueMuteChange(null),this.removeSelection(),this.setHiddenValue()},s.prototype.valueMuteChange=function(e){var i=t.isNullOrUndefined(e)?null:e.toString();n.Input.setValue(i,this.inputElement,this.floatLabelType,this.showClearButton),this.setProperties({value:e,text:e,index:null},!0),this.activeIndex=this.index;var s=this.fields,l={};l[s.text]=t.isNullOrUndefined(e)?null:e.toString(),l[s.value]=t.isNullOrUndefined(e)?null:e.toString(),this.itemData=l,this.item=null,this.previousValue!==this.value&&this.detachChangeEvent(null)},s.prototype.updateValues=function(){if(t.isNullOrUndefined(this.value))this.text&&t.isNullOrUndefined(this.value)?(e=this.getElementByText(this.text))?this.setSelection(e,null):(n.Input.setValue(this.text,this.inputElement,this.floatLabelType,this.showClearButton),this.customValue()):this.setSelection(this.liCollections[this.activeIndex],null);else{var e=this.getElementByValue(this.value),s=!t.isNullOrUndefined(e);if(this.enableVirtualization&&this.value){var l=this.fields.value?this.fields.value:"";if(this.dataSource instanceof i.DataManager&&this.virtualGroupDataSource){if((o=new i.DataManager(this.virtualGroupDataSource).executeLocal((new i.Query).where(new i.Predicate(l,"equal",this.value))))&&o.length>0){this.itemData=o[0],s=!0;r=this.getItemData();(this.value===r.value&&this.text!==r.text||this.value!==r.value&&this.text===r.text)&&this.setProperties({text:r.text,value:r.value})}}else{var o=new i.DataManager(this.dataSource).executeLocal((new i.Query).where(new i.Predicate(l,"equal",this.value)));if(o&&o.length>0){this.itemData=o[0],s=!0;var r=this.getItemData();(this.value===r.value&&this.text!==r.text||this.value!==r.value&&this.text===r.text)&&this.setProperties({text:r.text,value:r.value})}}}e?this.setSelection(e,null):!this.enableVirtualization&&this.allowCustom||this.allowCustom&&this.enableVirtualization&&!s?this.valueMuteChange(this.value):(!this.enableVirtualization||this.enableVirtualization&&!s)&&this.valueMuteChange(null)}this.setHiddenValue(),n.Input.setValue(this.text,this.inputElement,this.floatLabelType,this.showClearButton)},s.prototype.updateIconState=function(){this.showClearButton&&(this.inputElement&&""!==this.inputElement.value&&!this.readonly?t.removeClass([this.inputWrapper.clearButton],M.clearIconHide):t.addClass([this.inputWrapper.clearButton],M.clearIconHide))},s.prototype.getAriaAttributes=function(){return{role:"combobox","aria-autocomplete":"both","aria-labelledby":this.hiddenElement.id,"aria-expanded":"false","aria-readonly":this.readonly.toString(),autocomplete:"off",autocapitalize:"off",spellcheck:"false"}},s.prototype.searchLists=function(t){this.isTyped=!0,this.isFiltering()?(e.prototype.searchLists.call(this,t),this.ulElement&&""===this.filterInput.value.trim()&&this.setHoverList(this.ulElement.querySelector("."+M.li))):(this.ulElement&&""===this.inputElement.value&&this.preventAutoFill&&this.setHoverList(this.ulElement.querySelector("."+M.li)),this.incrementalSearch(t))},s.prototype.getNgDirective=function(){return"EJS-COMBOBOX"},s.prototype.setSearchBox=function(){return this.filterInput=this.inputElement,this.isFiltering()||this.isReact&&"combobox"===this.getModuleName()?this.inputWrapper:le},s.prototype.onActionComplete=function(t,i,s,l){var n=this;e.prototype.onActionComplete.call(this,t,i,s),this.isSelectCustom&&this.removeSelection(),this.preventAutoFill||"combobox"!==this.getModuleName()||!this.isTyped||this.enableVirtualization||setTimeout(function(){n.inlineSearch()})},s.prototype.getFocusElement=function(){var e=this.isSelectCustom?{text:""}:this.getItemData(),i=t.isNullOrUndefined(this.list)?this.list:this.list.querySelector("."+M.selected);if(e.text&&e.text.toString()===this.inputElement.value&&!t.isNullOrUndefined(i))return i;if((t.Browser.isDevice&&!this.isDropDownClick||!t.Browser.isDevice)&&!t.isNullOrUndefined(this.liCollections)&&this.liCollections.length>0){var s=this.inputElement.value,l=this.sortedData,n=this.typeOfData(l).typeof,o=p(s,this.liCollections,this.filterType,!0,l,this.fields,n);if(this.enableVirtualization&&""!==s&&"autocomplete"!==this.getModuleName()&&this.isTyped&&!this.allowFiltering){var r=!1;for((this.viewPortInfo.endIndex>=this.incrementalEndIndex&&this.incrementalEndIndex<=this.totalItemCount||0==this.incrementalEndIndex)&&(r=!0,this.incrementalStartIndex=this.incrementalEndIndex,0==this.incrementalEndIndex?this.incrementalEndIndex=100>this.totalItemCount?this.totalItemCount:100:this.incrementalEndIndex=this.incrementalEndIndex+100>this.totalItemCount?this.totalItemCount:this.incrementalEndIndex+100,this.updateIncrementalInfo(this.incrementalStartIndex,this.incrementalEndIndex),r=!0),(0!==this.viewPortInfo.startIndex||r)&&this.updateIncrementalView(0,this.itemCount),o=p(s,this.incrementalLiCollections,this.filterType,!0,l,this.fields,n);t.isNullOrUndefined(o)&&this.incrementalEndIndex<this.totalItemCount&&(this.incrementalStartIndex=this.incrementalEndIndex,this.incrementalEndIndex=this.incrementalEndIndex+100>this.totalItemCount?this.totalItemCount:this.incrementalEndIndex+100,this.updateIncrementalInfo(this.incrementalStartIndex,this.incrementalEndIndex),r=!0,(0!==this.viewPortInfo.startIndex||r)&&this.updateIncrementalView(0,this.itemCount),o=p(s,this.incrementalLiCollections,this.filterType,!0,l,this.fields,n),t.isNullOrUndefined(o));)if(t.isNullOrUndefined(o)&&this.incrementalEndIndex>=this.totalItemCount){this.incrementalStartIndex=0,this.incrementalEndIndex=100>this.totalItemCount?this.totalItemCount:100;break}if(o.index&&!(this.viewPortInfo.startIndex>=o.index&&o.index>=this.viewPortInfo.endIndex)){var a=o.index-(this.itemCount/2-2)>0?o.index-(this.itemCount/2-2):0,h=this.viewPortInfo.startIndex+this.itemCount>this.totalItemCount?this.totalItemCount:this.viewPortInfo.startIndex+this.itemCount;a!=this.viewPortInfo.startIndex&&this.updateIncrementalView(a,h)}if(t.isNullOrUndefined(o.item))this.updateIncrementalView(0,this.itemCount),this.list.getElementsByClassName("e-virtual-ddl-content")[0].style=this.getTransformValues(),this.list.scrollTop=0;else{if(this.getIndexByValue(o.item.getAttribute("data-value"))-this.skeletonCount>this.itemCount/2){var a=this.viewPortInfo.startIndex+(this.itemCount/2-2)<this.totalItemCount?this.viewPortInfo.startIndex+(this.itemCount/2-2):this.totalItemCount,h=this.viewPortInfo.startIndex+this.itemCount>this.totalItemCount?this.totalItemCount:this.viewPortInfo.startIndex+this.itemCount;this.updateIncrementalView(a,h)}o.item=this.getElementByValue(o.item.getAttribute("data-value"))}o&&o.item&&(o.item=this.getElementByValue(o.item.getAttribute("data-value")))}var u=o.item;if(t.isNullOrUndefined(u))this.isSelectCustom&&""!==this.inputElement.value.trim()&&(this.removeFocus(),this.enableVirtualization||(this.list.scrollTop=0));else{var d=this.getIndexByValue(u.getAttribute("data-value"))-1,c=parseInt(getComputedStyle(this.liCollections[0],null).getPropertyValue("height"),10);if(!isNaN(c)&&"autocomplete"!==this.getModuleName()){this.removeFocus();var m=this.fields.groupBy?this.liCollections[0].offsetHeight:0;if(this.enableVirtualization){if(this.list.getElementsByClassName("e-virtual-ddl-content")[0].style=this.getTransformValues(),this.enableVirtualization&&!this.fields.groupBy){var f=this.virtualListInfo&&this.virtualListInfo.startIndex?u.offsetTop+this.virtualListInfo.startIndex*u.offsetHeight:u.offsetTop;this.list.scrollTop=f-this.list.querySelectorAll(".e-virtual-list").length*u.offsetHeight}}else this.list.scrollTop=d*c+m;t.addClass([u],M.focus)}}return u}return null},s.prototype.setValue=function(t){return t&&"keydown"===t.type&&"enter"===t.action&&this.removeFillSelection(),this.autofill&&"combobox"===this.getModuleName()&&t&&"keydown"===t.type&&"enter"!==t.action?(this.preventAutoFill=!1,this.inlineSearch(t),!1):e.prototype.setValue.call(this,t)},s.prototype.checkCustomValue=function(){this.itemData=this.getDataByValue(this.value);var e=this.getItemData();this.allowCustom&&t.isNullOrUndefined(e.value)&&t.isNullOrUndefined(e.text)||this.setProperties({value:e.value},!this.allowCustom)},s.prototype.showSpinner=function(){t.isNullOrUndefined(this.spinnerElement)&&(this.spinnerElement="autocomplete"===this.getModuleName()?this.inputWrapper.buttons[0]||this.inputWrapper.clearButton||n.Input.appendSpan("e-input-group-icon e-atc-spinner-icon",this.inputWrapper.container,this.createElement):this.inputWrapper.buttons[0]||this.inputWrapper.clearButton,t.addClass([this.spinnerElement],M.disableIcon),l.createSpinner({target:this.spinnerElement,width:t.Browser.isDevice?"16px":"14px"},this.createElement),l.showSpinner(this.spinnerElement))},s.prototype.hideSpinner=function(){t.isNullOrUndefined(this.spinnerElement)||(l.hideSpinner(this.spinnerElement),t.removeClass([this.spinnerElement],M.disableIcon),this.spinnerElement.classList.contains("e-atc-spinner-icon")?t.detach(this.spinnerElement):this.spinnerElement.innerHTML="",this.spinnerElement=null)},s.prototype.setAutoFill=function(e,t){if(t||this.setHoverList(e),this.autofill&&!this.preventAutoFill){var i=this.getTextByValue(e.getAttribute("data-value")).toString(),s=this.getFormattedValue(e.getAttribute("data-value"));"combobox"===this.getModuleName()&&(this.isSelected||this.previousValue===s?this.updateSelectedItem(e,null,!0):(this.updateSelectedItem(e,null),this.isSelected=!0,this.previousValue=this.getFormattedValue(e.getAttribute("data-value")))),this.isAndroidAutoFill(i)||this.setAutoFillSelection(i,t)}},s.prototype.isAndroidAutoFill=function(e){if(t.Browser.isAndroid){var i=this.getSelectionPoints(),s=this.prevSelectPoints.end,l=i.end,n=this.prevSelectPoints.start,o=i.start;return 0!==s&&(s===e.length&&n===e.length||n>o&&s>l||s===l&&n===o)}return!1},s.prototype.clearAll=function(i,s){(t.isNullOrUndefined(s)||!t.isNullOrUndefined(s)&&t.isNullOrUndefined(s.dataSource))&&e.prototype.clearAll.call(this,i),this.isFiltering()&&!t.isNullOrUndefined(i)&&i.target===this.inputWrapper.clearButton&&this.searchLists(i)},s.prototype.isSelectFocusItem=function(e){return!t.isNullOrUndefined(e)},s.prototype.inlineSearch=function(e){var i=e&&("down"===e.action||"up"===e.action||"home"===e.action||"end"===e.action||"pageUp"===e.action||"pageDown"===e.action),s=i?this.liCollections[this.activeIndex]:this.getFocusElement();if(t.isNullOrUndefined(s))if(""===this.inputElement.value){if(this.activeIndex=null,!t.isNullOrUndefined(this.list)){this.enableVirtualization||(this.list.scrollTop=0);var l=this.list.querySelector("."+M.li);this.setHoverList(l)}}else this.activeIndex=null,this.removeSelection(),this.liCollections&&this.liCollections.length>0&&!this.isCustomFilter&&this.removeFocus();else{if(!i){var n=this.getFormattedValue(s.getAttribute("data-value"));this.activeIndex=this.getIndexByValue(n),this.activeIndex=t.isNullOrUndefined(this.activeIndex)?null:this.activeIndex}this.preventAutoFill=""!==this.inputElement.value&&this.preventAutoFill,this.setAutoFill(s,i)}},s.prototype.incrementalSearch=function(e){this.showPopup(e),t.isNullOrUndefined(this.listData)||(this.inlineSearch(e),e.preventDefault())},s.prototype.setAutoFillSelection=function(e,t){void 0===t&&(t=!1);var i=this.getSelectionPoints(),s=this.inputElement.value.substr(0,i.start);if(s&&s.toLowerCase()===e.substr(0,i.start).toLowerCase()){var l=s+e.substr(s.length,e.length);n.Input.setValue(l,this.inputElement,this.floatLabelType,this.showClearButton),this.inputElement.setSelectionRange(i.start,this.inputElement.value.length)}else t&&(n.Input.setValue(e,this.inputElement,this.floatLabelType,this.showClearButton),this.inputElement.setSelectionRange(0,this.inputElement.value.length))},s.prototype.getValueByText=function(t){return e.prototype.getValueByText.call(this,t,!0,this.ignoreAccent)},s.prototype.unWireEvent=function(){"combobox"===this.getModuleName()&&(t.EventHandler.remove(this.inputWrapper.buttons[0],"mousedown",this.preventBlur),t.EventHandler.remove(this.inputWrapper.container,"blur",this.onBlurHandler)),t.isNullOrUndefined(this.inputWrapper.buttons[0])||t.EventHandler.remove(this.inputWrapper.buttons[0],"mousedown",this.dropDownClick),this.inputElement&&(t.EventHandler.remove(this.inputElement,"focus",this.targetFocus),this.readonly||(t.EventHandler.remove(this.inputElement,"input",this.onInput),t.EventHandler.remove(this.inputElement,"keyup",this.onFilterUp),t.EventHandler.remove(this.inputElement,"keydown",this.onFilterDown),t.EventHandler.remove(this.inputElement,"paste",this.pasteHandler),t.EventHandler.remove(window,"resize",this.windowResize))),this.unBindCommonEvent()},s.prototype.setSelection=function(i,s){e.prototype.setSelection.call(this,i,s),t.isNullOrUndefined(i)||this.autofill||this.isDropDownClick||this.removeFocus()},s.prototype.selectCurrentItem=function(e){var i;this.isPopupOpen&&((i=this.isSelected?this.list.querySelector("."+M.selected):this.list.querySelector("."+M.focus))&&(this.setSelection(i,e),this.isTyped=!1),this.isSelected&&(this.isSelectCustom=!1,this.onChangeEvent(e))),"enter"===e.action&&""===this.inputElement.value.trim()?this.clearAll(e):this.isTyped&&!this.isSelected&&t.isNullOrUndefined(i)&&this.customValue(e),this.hidePopup(e)},s.prototype.setHoverList=function(e){this.removeSelection(),this.isValidLI(e)&&!e.classList.contains(M.selected)&&(this.removeFocus(),e.classList.add(M.focus))},s.prototype.targetFocus=function(e){t.Browser.isDevice&&!this.allowFiltering&&(this.preventFocus=!1),this.onFocus(e),n.Input.calculateWidth(this.inputElement,this.inputWrapper.container)},s.prototype.dropDownClick=function(i){i.preventDefault(),t.Browser.isDevice&&!this.isFiltering()&&(this.preventFocus=!0),e.prototype.dropDownClick.call(this,i)},s.prototype.customValue=function(e){var i=this,s=this.getValueByText(this.inputElement.value);if(this.allowCustom||""===this.inputElement.value)if(""!==this.inputElement.value.trim()){var l=this.value;if(t.isNullOrUndefined(s)){var o=""===this.inputElement.value?null:this.inputElement.value,r={text:o,item:{}};this.initial?this.updateCustomValueCallback(o,r,l):this.trigger("customValueSpecifier",r,function(t){i.updateCustomValueCallback(o,t,l,e)})}else this.isSelectCustom=!1,this.setProperties({value:s}),l!==this.value&&this.onChangeEvent(e)}else this.allowCustom&&(this.isSelectCustom=!0);else{var a=this.previousValue,h=this.value;this.setProperties({value:s}),t.isNullOrUndefined(this.value)&&n.Input.setValue("",this.inputElement,this.floatLabelType,this.showClearButton),this.autofill&&a===this.value&&h!==this.value&&this.onChangeEvent(null)}},s.prototype.updateCustomValueCallback=function(e,i,s,l){var n=this.fields,o=i.item,r={};o&&t.getValue(n.text,o)&&t.getValue(n.value,o)?r=o:(t.setValue(n.text,e,r),t.setValue(n.value,e,r)),this.itemData=r;var a={text:t.getValue(n.text,this.itemData),value:t.getValue(n.value,this.itemData),index:null};this.setProperties(a,!0),this.setSelection(null,null),this.isSelectCustom=!0,s!==this.value&&this.onChangeEvent(l)},s.prototype.onPropertyChanged=function(i,s){"combobox"===this.getModuleName()&&(this.checkData(i),this.setUpdateInitial(["fields","query","dataSource"],i));for(var l=0,o=Object.keys(i);l<o.length;l++){var r=o[l];switch(r){case"readonly":n.Input.setReadonly(this.readonly,this.inputElement),this.readonly?(t.EventHandler.remove(this.inputElement,"input",this.onInput),t.EventHandler.remove(this.inputElement,"keyup",this.onFilterUp),t.EventHandler.remove(this.inputElement,"keydown",this.onFilterDown)):(t.EventHandler.add(this.inputElement,"input",this.onInput,this),t.EventHandler.add(this.inputElement,"keyup",this.onFilterUp,this),t.EventHandler.add(this.inputElement,"keydown",this.onFilterDown,this)),this.setReadOnly();break;case"allowFiltering":this.setSearchBox(),this.isFiltering()&&"combobox"===this.getModuleName()&&t.isNullOrUndefined(this.list)&&e.prototype.renderList.call(this);break;case"allowCustom":break;default:var a=this.getPropObject(r,i,s);e.prototype.onPropertyChanged.call(this,a.newProperty,a.oldProperty),this.isFiltering()&&"dataSource"===r&&t.isNullOrUndefined(this.list)&&this.itemTemplate&&"combobox"===this.getModuleName()&&e.prototype.renderList.call(this)}}},s.prototype.render=function(){e.prototype.render.call(this),this.setSearchBox(),this.isFiltering()&&"combobox"===this.getModuleName()&&t.isNullOrUndefined(this.list)&&e.prototype.renderList.call(this),this.renderComplete()},s.prototype.getModuleName=function(){return"combobox"},s.prototype.addItem=function(t,i){e.prototype.addItem.call(this,t,i)},s.prototype.filter=function(t,i,s){e.prototype.filter.call(this,t,i,s)},s.prototype.showPopup=function(t){e.prototype.showPopup.call(this,t)},s.prototype.hidePopup=function(i){var s=this.inputElement&&""===this.inputElement.value?null:this.inputElement&&this.inputElement.value;if(!t.isNullOrUndefined(this.listData)){var l=this.isEscapeKey;this.isEscapeKey&&(n.Input.setValue(this.typedString,this.inputElement,this.floatLabelType,this.showClearButton),this.isEscapeKey=!1),this.autofill&&this.removeFillSelection();var o=this.isSelectCustom?{text:""}:this.getItemData(),r=t.isNullOrUndefined(this.list)?null:this.list.querySelector("."+M.selected);if(this.inputElement&&o.text===this.inputElement.value&&!t.isNullOrUndefined(r))return this.isSelected&&(this.onChangeEvent(i),this.isSelectCustom=!1),void e.prototype.hidePopup.call(this,i);if("combobox"===this.getModuleName()&&""!==this.inputElement.value.trim()){var a=this.sortedData,h=this.typeOfData(a).typeof,u=p(this.inputElement.value,this.liCollections,"Equal",!0,a,this.fields,h);this.selectedLI=u.item,t.isNullOrUndefined(u.index)&&(u.index=p(this.inputElement.value,this.liCollections,"StartsWith",!0,a,this.fields,h).index),this.activeIndex=u.index,t.isNullOrUndefined(this.selectedLI)?l&&(this.isSelectCustom=!0,this.removeSelection()):this.updateSelectedItem(this.selectedLI,null,!0)}this.isEscapeKey||!this.isTyped||this.isInteracted||this.customValue(i)}t.isNullOrUndefined(this.listData)&&this.allowCustom&&!t.isNullOrUndefined(s)&&s!==this.value&&this.customValue(),e.prototype.hidePopup.call(this,i)},s.prototype.focusIn=function(){this.enabled&&(t.Browser.isDevice&&!this.isFiltering()&&(this.preventFocus=!0),e.prototype.focusIn.call(this))},s.prototype.clear=function(){this.value=null},s.prototype.focusOut=function(t){e.prototype.focusOut.call(this,t)},s.prototype.getItems=function(){return e.prototype.getItems.call(this)},s.prototype.getDataByValue=function(t){return e.prototype.getDataByValue.call(this,t)},s.prototype.renderHightSearch=function(){},se([t.Property(!1)],s.prototype,"autofill",void 0),se([t.Property(!0)],s.prototype,"allowCustom",void 0),se([t.Property({})],s.prototype,"htmlAttributes",void 0),se([t.Property(!1)],s.prototype,"allowFiltering",void 0),se([t.Property(null)],s.prototype,"query",void 0),se([t.Property(null)],s.prototype,"index",void 0),se([t.Property(!0)],s.prototype,"showClearButton",void 0),se([t.Property(!1)],s.prototype,"enableRtl",void 0),se([t.Event()],s.prototype,"customValueSpecifier",void 0),se([t.Event()],s.prototype,"filtering",void 0),se([t.Property(null)],s.prototype,"valueTemplate",void 0),se([t.Property("Never")],s.prototype,"floatLabelType",void 0),se([t.Property(null)],s.prototype,"filterBarPlaceholder",void 0),se([t.Property(null)],s.prototype,"cssClass",void 0),se([t.Property(null)],s.prototype,"headerTemplate",void 0),se([t.Property(null)],s.prototype,"footerTemplate",void 0),se([t.Property(null)],s.prototype,"placeholder",void 0),se([t.Property("100%")],s.prototype,"width",void 0),se([t.Property("300px")],s.prototype,"popupHeight",void 0),se([t.Property("100%")],s.prototype,"popupWidth",void 0),se([t.Property(!1)],s.prototype,"readonly",void 0),se([t.Property(null)],s.prototype,"text",void 0),se([t.Property(null)],s.prototype,"value",void 0),s=se([t.NotifyPropertyChanges],s)}(q),oe=function(){var e=function(t,i){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)t.hasOwnProperty(i)&&(e[i]=t[i])})(t,i)};return function(t,i){function s(){this.constructor=t}e(t,i),t.prototype=null===i?Object.create(i):(s.prototype=i.prototype,new s)}}(),re=function(e,t,i,s){var l,n=arguments.length,o=n<3?t:null===s?s=Object.getOwnPropertyDescriptor(t,i):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(e,t,i,s);else for(var r=e.length-1;r>=0;r--)(l=e[r])&&(o=(n<3?l(o):n>3?l(t,i,o):l(t,i))||o);return n>3&&o&&Object.defineProperty(t,i,o),o};M.root="e-autocomplete",M.icon="e-input-group-icon e-ddl-icon e-search-icon";var ae=function(e){function s(t,i){var s=e.call(this,t,i)||this;return s.isFiltered=!1,s.searchList=!1,s}return oe(s,e),s.prototype.preRender=function(){e.prototype.preRender.call(this)},s.prototype.getLocaleName=function(){return"auto-complete"},s.prototype.getNgDirective=function(){return"EJS-AUTOCOMPLETE"},s.prototype.getQuery=function(e){var s=e?e.clone():this.query?this.query.clone():new i.Query,l=""!==this.queryString||t.isNullOrUndefined(this.value)?this.filterType:"equal",n=""!==this.queryString||t.isNullOrUndefined(this.value)?this.queryString:this.value;if(this.isFiltered)return s;if(null!==this.queryString&&""!==this.queryString){var o=this.typeOfData(this.dataSource).typeof;if((this.dataSource instanceof i.DataManager||"string"!==o)&&"number"!==o){if(!this.enableVirtualization||this.enableVirtualization&&(!(this.dataSource instanceof i.DataManager)||this.dataSource instanceof i.DataManager&&this.virtualGroupDataSource)){var r=t.isNullOrUndefined(this.fields.value)?"":this.fields.value;s.where(r,l,n,this.ignoreCase,this.ignoreAccent)}}else s.where("",l,n,this.ignoreCase,this.ignoreAccent)}if(!t.isNullOrUndefined(this.suggestionCount)&&!this.enableVirtualization){if(20!==this.suggestionCount)for(var a=0;a<s.queries.length;a++)"onTake"===s.queries[a].fn&&s.queries.splice(a,1);s.take(this.suggestionCount)}if(this.enableVirtualization&&(!(this.dataSource instanceof i.DataManager)||this.dataSource instanceof i.DataManager&&this.virtualGroupDataSource)){var h=this.getTakeValue();s.skip(this.virtualItemStartIndex),s.take(h),s.requiresCount()}return s},s.prototype.searchLists=function(i){var s=this;if(this.isTyped=!0,this.isDataFetched=this.isSelectCustom=!1,this.checkAndResetCache(),t.isNullOrUndefined(this.list)&&e.prototype.renderList.call(this,i,!0),this.queryString=this.filterInput.value,"mousedown"!==i.type&&(40===i.keyCode||38===i.keyCode))return this.queryString=""===this.queryString?null:this.queryString,this.beforePopupOpen=!0,void this.resetList(this.dataSource,this.fields,null,i);this.isSelected=!1,this.activeIndex=null;var l={preventDefaultAction:!1,text:this.filterInput.value,updateData:function(e,t,i){l.cancel||(s.isFiltered=!0,s.filterAction(e,t,i))},cancel:!1};this.trigger("filtering",l,function(e){e.cancel||s.isFiltered||e.preventDefaultAction||(s.searchList=!0,s.filterAction(s.dataSource,null,s.fields,i))})},s.prototype.filter=function(e,t,i){this.isFiltered=!0,this.filterAction(e,t,i)},s.prototype.filterAction=function(e,t,s,l){this.beforePopupOpen=!0;var n=this.list.classList.contains("e-nodata");if(""!==this.queryString&&this.queryString.length>=this.minLength){if(this.enableVirtualization&&this.isFiltering()&&this.isTyped&&(this.isPreventScrollAction=!0,this.list.scrollTop=0,this.previousStartIndex=0,this.virtualListInfo=null),this.resetList(e,s,t,l),this.enableVirtualization&&n&&!this.list.classList.contains("e-nodata")&&(this.list.querySelector(".e-virtual-ddl-content")||this.list.appendChild(this.createElement("div",{className:"e-virtual-ddl-content",styles:this.getTransformValues()})).appendChild(this.list.querySelector(".e-list-parent")),!this.list.querySelector(".e-virtual-ddl"))){var o=this.createElement("div",{id:this.element.id+"_popup",className:"e-virtual-ddl",styles:this.GetVirtualTrackHeight()});document.getElementsByClassName("e-popup")[0].querySelector(".e-dropdownbase").appendChild(o)}("autocomplete"===this.getModuleName()&&!(this.dataSource instanceof i.DataManager)||"autocomplete"===this.getModuleName()&&this.dataSource instanceof i.DataManager&&0!=this.totalItemCount)&&this.getFilteringSkeletonCount()}else this.hidePopup(l),this.beforePopupOpen=!1;this.renderReactTemplates()},s.prototype.clearAll=function(i,s){(t.isNullOrUndefined(s)||!t.isNullOrUndefined(s)&&t.isNullOrUndefined(s.dataSource))&&(e.prototype.clearAll.call(this,i),this.checkAndResetCache()),this.beforePopupOpen&&this.hidePopup()},s.prototype.onActionComplete=function(s,l,n,o){this.enableVirtualization||(this.fixedHeaderElement=null),("autocomplete"===this.getModuleName()&&!(this.dataSource instanceof i.DataManager)||"autocomplete"===this.getModuleName()&&this.dataSource instanceof i.DataManager&&0!=this.totalItemCount)&&this.getFilteringSkeletonCount(),e.prototype.onActionComplete.call(this,s,l,n);var r=this.list.querySelector("."+M.li);t.isNullOrUndefined(r)||t.removeClass([r],M.focus),this.postBackAction()},s.prototype.postBackAction=function(){if(this.autofill&&!t.isNullOrUndefined(this.liCollections[0])&&this.searchList){var i=[this.liCollections[0]],s=this.listData,l=this.typeOfData(s).typeof,n=p(this.inputElement.value,i,"StartsWith",this.ignoreCase,s,this.fields,l);this.searchList=!1,t.isNullOrUndefined(n.item)||e.prototype.setAutoFill.call(this,this.liCollections[0],!0)}},s.prototype.setSelection=function(i,s){if(!this.isValidLI(i))return void(this.selectedLI=i);if(!t.isNullOrUndefined(s)&&"keydown"===s.type&&"enter"!==s.action&&"tab"!==s.action&&this.isValidLI(i)){var l=this.getFormattedValue(i.getAttribute("data-value"));if(this.activeIndex=this.getIndexByValue(l),this.setHoverList(i),this.selectedLI=i,this.setScrollPosition(s),this.autofill&&this.isPopupOpen){this.preventAutoFill=!1;var n=s&&"down"===s.action||"up"===s.action||"home"===s.action||"end"===s.action||"pageUp"===s.action||"pageDown"===s.action;e.prototype.setAutoFill.call(this,i,n)}}else e.prototype.setSelection.call(this,i,s)},s.prototype.listOption=function(i,s){var l=this,n=e.prototype.listOption.call(this,i,s);if(t.isNullOrUndefined(n.itemCreated))n.itemCreated=function(e){l.highlight&&(l.element.tagName===l.getNgDirective()&&l.itemTemplate?setTimeout(function(){c(e.item,l.queryString,l.ignoreCase,l.filterType)},0):(/<[^>]*>/g.test(e.item.innerText)&&(e.item.innerText=e.item.innerText.replace(/[\u00A0-\u9999<>&]/g,function(e){return"&#"+e.charCodeAt(0)+";"})),c(e.item,l.queryString,l.ignoreCase,l.filterType)))};else{var o=n.itemCreated;n.itemCreated=function(e){l.highlight&&c(e.item,l.queryString,l.ignoreCase,l.filterType),o.apply(l,[e])}}return n},s.prototype.isFiltering=function(){return!0},s.prototype.renderPopup=function(t){this.enableVirtualization||(this.list.scrollTop=0),e.prototype.renderPopup.call(this,t)},s.prototype.isEditTextBox=function(){return!1},s.prototype.isPopupButton=function(){return this.showPopupButton},s.prototype.isSelectFocusItem=function(e){return!1},s.prototype.setInputValue=function(e,t){var s=t&&t.text?t.text:t?t.value:t,l=e&&e.text?e.text:e&&e.value?e.value:this.value;if(!l||""!==this.typedString||this.allowCustom||this.dataSource instanceof i.DataManager)e&&(e.text?this.setOldText(s):this.setOldValue(s));else{var n="string"===this.typeOfData(this.dataSource).typeof?"":this.fields.value,o=this.getItems().length,r=new i.Query,a=this;new i.DataManager(this.dataSource).executeQuery(r.where(new i.Predicate(n,"equal",l))).then(function(t){t.result.length>0?(a.value=""!==n?t.result[0][a.fields.value].toString():t.result[0].toString(),a.addItem(t.result,o),a.updateValues()):e&&e.text?a.setOldText(s):e&&e.value?a.setOldValue(s):a.updateValues()})}},s.prototype.showPopup=function(e){if(this.enabled){if(this.beforePopupOpen)return void this.refreshPopup();this.beforePopupOpen=!0,this.preventAutoFill=!0,t.isNullOrUndefined(this.list)?this.renderList(e):this.resetList(this.dataSource,this.fields,null,e)}},s.prototype.hidePopup=function(t){e.prototype.hidePopup.call(this,t),this.activeIndex=null,this.virtualListInfo=this.viewPortInfo,this.previousStartIndex=this.viewPortInfo.startIndex,this.startIndex=this.viewPortInfo.startIndex,this.previousEndIndex=this.viewPortInfo.endIndex},s.prototype.onPropertyChanged=function(i,s){"autocomplete"===this.getModuleName()&&this.setUpdateInitial(["fields","query","dataSource"],i);for(var l=0,o=Object.keys(i);l<o.length;l++){var r=o[l];switch(r){case"showPopupButton":if(this.showPopupButton){var a=n.Input.appendSpan(M.icon,this.inputWrapper.container,this.createElement);this.inputWrapper.buttons[0]=a,n.Input.calculateWidth(this.inputElement,this.inputWrapper.container),t.isNullOrUndefined(this.inputWrapper.buttons[0])||t.isNullOrUndefined(this.inputWrapper.container.getElementsByClassName("e-float-text-overflow")[0])||"Never"===this.floatLabelType||this.inputWrapper.container.getElementsByClassName("e-float-text-overflow")[0].classList.add("e-icon"),this.inputWrapper&&this.inputWrapper.buttons&&this.inputWrapper.buttons[0]&&t.EventHandler.add(this.inputWrapper.buttons[0],"click",this.dropDownClick,this)}else t.detach(this.inputWrapper.buttons[0]),this.inputWrapper.buttons[0]=null;break;default:var h=this.getPropObject(r,i,s);e.prototype.onPropertyChanged.call(this,h.newProperty,h.oldProperty)}}},s.prototype.renderHightSearch=function(){if(this.highlight)for(var e=0;e<this.liCollections.length;e++)this.ulElement.querySelector(".e-active")||(f(this.liCollections[e]),c(this.liCollections[e],this.queryString,this.ignoreCase,this.filterType))},s.prototype.getModuleName=function(){return"autocomplete"},s.prototype.render=function(){e.prototype.render.call(this)},re([t.Complex({value:null,iconCss:null,groupBy:null},V)],s.prototype,"fields",void 0),re([t.Property(!0)],s.prototype,"ignoreCase",void 0),re([t.Property(!1)],s.prototype,"showPopupButton",void 0),re([t.Property(!1)],s.prototype,"highlight",void 0),re([t.Property(20)],s.prototype,"suggestionCount",void 0),re([t.Property({})],s.prototype,"htmlAttributes",void 0),re([t.Property(null)],s.prototype,"query",void 0),re([t.Property(1)],s.prototype,"minLength",void 0),re([t.Property("Contains")],s.prototype,"filterType",void 0),re([t.Event()],s.prototype,"filtering",void 0),re([t.Property(null)],s.prototype,"index",void 0),re([t.Property("Never")],s.prototype,"floatLabelType",void 0),re([t.Property(null)],s.prototype,"valueTemplate",void 0),re([t.Property(null)],s.prototype,"filterBarPlaceholder",void 0),re([t.Property(!1)],s.prototype,"allowFiltering",void 0),re([t.Property(null)],s.prototype,"text",void 0),s=re([t.NotifyPropertyChanges],s)}(ne),he="e-float-line",pe="e-float-text",ue="e-label-top",de="e-label-bottom",ce=function(){var e=function(t,i){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)t.hasOwnProperty(i)&&(e[i]=t[i])})(t,i)};return function(t,i){function s(){this.constructor=t}e(t,i),t.prototype=null===i?Object.create(i):(s.prototype=i.prototype,new s)}}(),me=function(e,t,i,s){var l,n=arguments.length,o=n<3?t:null===s?s=Object.getOwnPropertyDescriptor(t,i):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(e,t,i,s);else for(var r=e.length-1;r>=0;r--)(l=e[r])&&(o=(n<3?l(o):n>3?l(t,i,o):l(t,i))||o);return n>3&&o&&Object.defineProperty(t,i,o),o},fe="e-input-focus",ve="e-hide-listitem",ge="e-chips",ye=function(e){function s(t,i){var s=e.call(this,t,i)||this;return s.clearIconWidth=0,s.previousFilterText="",s.isValidKey=!1,s.selectAllEventData=[],s.selectAllEventEle=[],s.resetMainList=null,s.resetFilteredData=!1,s.scrollFocusStatus=!1,s.keyDownStatus=!1,s}return ce(s,e),s.prototype.enableRTL=function(e){e?this.overAllWrapper.classList.add("e-rtl"):this.overAllWrapper.classList.remove("e-rtl"),this.popupObj&&(this.popupObj.enableRtl=e,this.popupObj.dataBind())},s.prototype.requiredModules=function(){var e=[];if("CheckBox"===this.mode){if(this.isGroupChecking=this.enableGroupCheckBox,this.enableGroupCheckBox){var t=this.isProtectedOnChange;this.isProtectedOnChange=!0,this.enableSelectionOrder=!1,this.isProtectedOnChange=t}this.allowCustomValue=!1,this.hideSelectedItem=!1,this.closePopupOnSelect=!1,e.push({member:"CheckBoxSelection",args:[this]})}return e},s.prototype.updateHTMLAttribute=function(){if(Object.keys(this.htmlAttributes).length)for(var e=0,i=Object.keys(this.htmlAttributes);e<i.length;e++){var s=i[e];switch(s){case"class":var l=this.htmlAttributes[""+s].replace(/\s+/g," ").trim();""!==l&&(t.addClass([this.overAllWrapper],l.split(" ")),t.addClass([this.popupWrapper],l.split(" ")));break;case"disabled":this.enable(!1);break;case"placeholder":this.placeholder||(this.inputElement.setAttribute(s,this.htmlAttributes[""+s]),this.setProperties({placeholder:this.inputElement.placeholder},!0),this.refreshPlaceHolder());break;default:var n=["name","required","aria-required","form"],o=["title","role","style","class"];["id"].indexOf(s)>-1?this.element.setAttribute(s,this.htmlAttributes[""+s]):0===s.indexOf("data")||n.indexOf(s)>-1?this.hiddenElement.setAttribute(s,this.htmlAttributes[""+s]):o.indexOf(s)>-1?this.overAllWrapper.setAttribute(s,this.htmlAttributes[""+s]):"size"===s||t.isNullOrUndefined(this.inputElement)||this.inputElement.setAttribute(s,this.htmlAttributes[""+s])}}},s.prototype.updateReadonly=function(e){t.isNullOrUndefined(this.inputElement)||(e||"CheckBox"===this.mode?this.inputElement.setAttribute("readonly","true"):this.inputElement.removeAttribute("readonly"))},s.prototype.updateClearButton=function(e){e?(this.overAllClear.parentNode?this.overAllClear.style.display="":this.componentWrapper.appendChild(this.overAllClear),this.componentWrapper.classList.remove("e-close-icon-hide")):(this.overAllClear.style.display="none",this.componentWrapper.classList.add("e-close-icon-hide"))},s.prototype.updateCssClass=function(){if(!t.isNullOrUndefined(this.cssClass)&&""!==this.cssClass){var e=this.cssClass;""!==(e=this.cssClass.replace(/\s+/g," ").trim())&&(t.addClass([this.overAllWrapper],e.split(" ")),t.addClass([this.popupWrapper],e.split(" ")))}},s.prototype.updateOldPropCssClass=function(e){t.isNullOrUndefined(e)||""===e||""!==(e=e.replace(/\s+/g," ").trim())&&(t.removeClass([this.overAllWrapper],e.split(" ")),t.removeClass([this.popupWrapper],e.split(" ")))},s.prototype.onPopupShown=function(e){var i=this;if(t.Browser.isDevice&&"CheckBox"===this.mode&&this.allowFiltering){var s=this;window.onpopstate=function(){s.hidePopup(),s.inputElement.focus()},history.pushState({},"")}var l={name:"FadeIn",duration:100},n={popup:this.popupObj,event:e,cancel:!1,animation:l};this.trigger("open",n,function(e){e.cancel||(i.focusAtFirstListItem(),i.popupObj&&document.body.appendChild(i.popupObj.element),"CheckBox"===i.mode&&i.enableGroupCheckBox&&!t.isNullOrUndefined(i.fields.groupBy)&&i.updateListItems(i.list.querySelectorAll("li.e-list-item"),i.mainList.querySelectorAll("li.e-list-item")),("CheckBox"===i.mode||i.showDropDownIcon)&&t.addClass([i.overAllWrapper],["e-icon-anim"]),i.refreshPopup(),i.renderReactTemplates(),i.popupObj&&i.popupObj.show(e.animation,1e3===i.zIndex?i.element:null),t.attributes(i.inputElement,{"aria-expanded":"true","aria-owns":i.element.id+"_popup","aria-controls":i.element.id}),i.updateAriaActiveDescendant(),i.isFirstClick&&i.loadTemplate(),"CheckBox"===i.mode&&i.showSelectAll&&t.EventHandler.add(i.popupObj.element,"click",i.clickHandler,i))})},s.prototype.updateListItems=function(e,t){for(var i=0;i<e.length;i++)this.findGroupStart(e[i]),this.findGroupStart(t[i]);this.deselectHeader()},s.prototype.loadTemplate=function(){this.refreshListItems(null),"CheckBox"===this.mode&&this.removeFocus(),this.notify("reOrder",{module:"CheckBoxSelection",enable:"CheckBox"===this.mode,e:this})},s.prototype.setScrollPosition=function(){if((!this.hideSelectedItem&&"CheckBox"!==this.mode||"CheckBox"===this.mode&&!this.enableSelectionOrder)&&!t.isNullOrUndefined(this.value)&&this.value.length>0){var e=this.findListElement(this.hideSelectedItem?this.ulElement:this.list,"li","data-value",this.value[this.value.length-1]);t.isNullOrUndefined(e)||this.scrollBottom(e)}},s.prototype.focusAtFirstListItem=function(){if(this.ulElement&&this.ulElement.querySelector("li."+U.li)){var e=void 0;if("CheckBox"===this.mode)return void this.removeFocus();null!==(e=this.ulElement.querySelector("li."+U.li+":not(."+ve+")"))&&(this.removeFocus(),this.addListFocus(e))}},s.prototype.focusAtLastListItem=function(e){var t;e?t=p(e,this.liCollections,"StartsWith",this.ignoreCase):this.value&&this.value.length?p(this.value[this.value.length-1],this.liCollections,"StartsWith",this.ignoreCase):t=null,t&&null!==t.item&&(this.addListFocus(t.item),((this.allowCustomValue||this.allowFiltering)&&this.isPopupOpen()&&this.closePopupOnSelect||this.closePopupOnSelect)&&this.scrollBottom(t.item,t.index))},s.prototype.getAriaAttributes=function(){return{"aria-disabled":"false",role:"combobox","aria-expanded":"false"}},s.prototype.updateListARIA=function(){t.isNullOrUndefined(this.ulElement)||t.attributes(this.ulElement,{id:this.element.id+"_options",role:"listbox","aria-hidden":"false","aria-label":"list"});var e=!(t.isNullOrUndefined(this.inputElement)||!this.inputElement.disabled);this.isPopupOpen()||t.isNullOrUndefined(this.inputElement)||t.attributes(this.inputElement,this.getAriaAttributes()),e&&t.attributes(this.inputElement,{"aria-disabled":"true"}),this.ensureAriaDisabled(e?"true":"false")},s.prototype.ensureAriaDisabled=function(e){if(this.htmlAttributes&&this.htmlAttributes["aria-disabled"]){var i=this.htmlAttributes;t.extend(i,{"aria-disabled":e},i),this.setProperties({htmlAttributes:i},!0)}},s.prototype.removelastSelection=function(e){if(null!==this.chipCollectionWrapper.querySelector("span.e-chip-selected"))return void this.removeSelectedChip(e);var i=this.chipCollectionWrapper.querySelectorAll("span.e-chips"),s=i[i.length-1].getAttribute("data-value");t.isNullOrUndefined(this.value)||(this.tempValues=this.value.slice());var l=this.getFormattedValue(s);this.allowCustomValue&&("false"!==s&&!1===l||!t.isNullOrUndefined(l)&&"NaN"===l.toString())&&(l=s),this.removeValue(l,e),this.removeChipSelection(),this.updateDelimeter(this.delimiterChar,e),this.makeTextBoxEmpty(),this.mainList&&this.listData&&this.refreshSelection(),this.checkPlaceholderSize()},s.prototype.onActionFailure=function(t){e.prototype.onActionFailure.call(this,t),this.renderPopup(),this.onPopupShown()},s.prototype.targetElement=function(){return this.targetInputElement=this.inputElement,"CheckBox"===this.mode&&this.allowFiltering&&this.notify("targetElement",{module:"CheckBoxSelection",enable:"CheckBox"===this.mode}),this.targetInputElement.value},s.prototype.getForQuery=function(e){for(var s,l=t.isNullOrUndefined(this.fields.value)?this.fields.text:this.fields.value,n=0;n<e.length;n++)s=0===n?new i.Predicate(l,"equal",e[n]):s.or(l,"equal",e[n]);return this.dataSource instanceof i.DataManager&&this.dataSource.adaptor instanceof i.JsonAdaptor?(new i.Query).where(s):this.getQuery(this.query).clone().where(s)},s.prototype.onActionComplete=function(s,l,n,o){e.prototype.onActionComplete.call(this,s,l,n),this.updateSelectElementData(this.allowFiltering);var r=this;if(!t.isNullOrUndefined(this.value)&&!this.allowCustomValue)for(var a=0;a<this.value.length;a++)this.findListElement(this.allowFiltering&&!t.isNullOrUndefined(this.mainList)?this.mainList:s,"li","data-value",r.value[a])||this.dataSource instanceof i.DataManager||(this.value.splice(a,1),a-=1);var h=[];if(t.isNullOrUndefined(this.value)||(h=this.presentItemValue(this.ulElement)),h.length>0&&this.dataSource instanceof i.DataManager&&!t.isNullOrUndefined(this.value)&&null!=this.listData?this.addNonPresentItems(h,this.ulElement,this.listData):this.updateActionList(s,l,n),this.dataSource instanceof i.DataManager&&this.allowCustomValue&&!this.isCustomRendered&&this.inputElement.value&&""!==this.inputElement.value){var p=new i.Query;p=this.allowFiltering?p.where(this.fields.text,"startswith",this.inputElement.value,this.ignoreCase,this.ignoreAccent):p,this.checkForCustomValue(p,this.fields),this.isCustomRendered=!0}this.dataSource instanceof i.DataManager&&"CheckBox"===this.mode&&this.allowFiltering&&this.removeFocus()},s.prototype.updateActionList=function(e,s,l,n){"CheckBox"===this.mode&&this.showSelectAll&&this.notify("selectAll",{module:"CheckBoxSelection",enable:"CheckBox"===this.mode}),this.mainList||this.mainData?(t.isNullOrUndefined(this.mainData)||0===this.mainData.length)&&(this.mainData=s):(this.mainList=e.cloneNode?e.cloneNode(!0):e,this.mainData=s,this.mainListCollection=this.liCollections),(this.remoteCustomValue||s.length<=0)&&this.allowCustomValue&&this.inputFocus&&this.allowFiltering&&this.inputElement.value&&""!==this.inputElement.value&&(this.checkForCustomValue(this.tempQuery,this.fields),this.isCustomRendered)||(this.value&&this.value.length&&("CheckBox"!==this.mode&&!t.isNullOrUndefined(this.inputElement)&&""!==this.inputElement.value.trim()||"CheckBox"===this.mode||(8===this.keyCode||46===this.keyCode)&&this.allowFiltering&&this.allowCustomValue&&this.dataSource instanceof i.DataManager&&""===this.inputElement.value)&&this.refreshSelection(),this.updateListARIA(),this.unwireListEvents(),this.wireListEvents(),t.isNullOrUndefined(this.setInitialValue)||this.setInitialValue(),t.isNullOrUndefined(this.selectAllAction)||this.selectAllAction(),this.setDynValue&&(t.isNullOrUndefined(this.text)||!t.isNullOrUndefined(this.value)&&0!==this.value.length||this.initialTextUpdate(),this.initialValueUpdate(),this.initialUpdate(),this.refreshPlaceHolder(),"CheckBox"!==this.mode&&this.changeOnBlur&&this.updateValueState(null,this.value,null)),this.renderPopup(),this.beforePopupOpen&&(this.beforePopupOpen=!1,this.onPopupShown(l)))},s.prototype.refreshSelection=function(){var e,i,s=this.hideSelectedItem?ve:U.selected;if(!t.isNullOrUndefined(this.value))for(var l=0;!t.isNullOrUndefined(this.value[l]);l++)if(e=this.value[l],i=this.findListElement(this.list,"li","data-value",e)){if(t.addClass([i],s),this.hideSelectedItem&&i.previousSibling&&i.previousElementSibling.classList.contains(U.group)&&(!i.nextElementSibling||i.nextElementSibling.classList.contains(U.group))&&t.addClass([i.previousElementSibling],s),this.hideSelectedItem&&this.fields.groupBy&&!i.previousElementSibling.classList.contains(ve)&&this.hideGroupItem(e),this.hideSelectedItem&&i.classList.contains(U.focus)){t.removeClass([i],U.focus);var n=i.parentElement.querySelectorAll("."+U.li+":not(."+ve+")");n.length>0?(t.addClass([n[0]],U.focus),this.updateAriaActiveDescendant()):this.list&&this.list.querySelectorAll("."+U.li).length>0||(this.l10nUpdate(),t.addClass([this.list],U.noData))}if(i.setAttribute("aria-selected","true"),"CheckBox"===this.mode&&i.classList.contains("e-active")&&0===i.getElementsByClassName("e-check").length){var o={module:"CheckBoxSelection",enable:"CheckBox"===this.mode,li:i,e:null};this.notify("updatelist",o)}}this.checkSelectAll(),this.checkMaxSelection()},s.prototype.hideGroupItem=function(e){var i,s,l=this.hideSelectedItem?ve:U.selected;s=i=this.findListElement(this.ulElement,"li","data-value",e);var n=0,o=0,r=!0,a=!0;do{i&&i.previousElementSibling&&!i.previousElementSibling.classList.contains(ve)&&i.previousElementSibling.classList.contains(U.li)&&(r=!1),!r||!i||i.previousElementSibling&&i.previousElementSibling.classList.contains(U.group)?n=10:i=i.previousElementSibling,s&&s.nextElementSibling&&!s.nextElementSibling.classList.contains(ve)&&s.nextElementSibling.classList.contains(U.li)&&(a=!1),!a||!s||s.nextElementSibling&&s.nextElementSibling.classList.contains(U.group)?o=10:s=s.nextElementSibling}while(n<10||o<10);r&&a&&!i.previousElementSibling.classList.contains(ve)?t.addClass([i.previousElementSibling],l):r&&a&&i.previousElementSibling.classList.contains(ve)&&t.removeClass([i.previousElementSibling],l)},s.prototype.getValidLi=function(){var e=this.ulElement.querySelector("li."+U.li+":not(."+ve+")");return t.isNullOrUndefined(e)?this.liCollections[0]:e},s.prototype.checkSelectAll=function(){var e=this.list.querySelectorAll("li.e-list-group-item.e-active").length,i=this.list.querySelectorAll("li.e-list-item"),s=this.list.querySelectorAll("li."+U.li).length,l=this.list.querySelectorAll("li."+U.selected).length;if(this.enableGroupCheckBox&&!t.isNullOrUndefined(this.fields.groupBy)&&(l-=e),s!==l&&l!==this.maximumSelectionLength||"CheckBox"!==this.mode||!this.showSelectAll?s!==l&&"CheckBox"===this.mode&&this.showSelectAll&&this.notify("checkSelectAll",{module:"CheckBoxSelection",enable:"CheckBox"===this.mode,value:"uncheck"}):this.notify("checkSelectAll",{module:"CheckBoxSelection",enable:"CheckBox"===this.mode,value:"check"}),this.enableGroupCheckBox&&this.fields.groupBy&&!this.enableSelectionOrder){for(var n=0;n<i.length;n++)this.findGroupStart(i[n]);this.deselectHeader()}},s.prototype.openClick=function(e){this.openOnClick||"CheckBox"===this.mode||this.isPopupOpen()?this.openOnClick||"CheckBox"!==this.mode||this.isPopupOpen()||this.showPopup():""!==this.targetElement()?this.showPopup():this.hidePopup(e)},s.prototype.keyUp=function(e){if("CheckBox"===this.mode&&!this.openOnClick){var i=String.fromCharCode(e.keyCode).match(/\w/);t.isNullOrUndefined(i)||(this.isValidKey=!0)}this.isValidKey=this.isPopupOpen()&&8===e.keyCode||this.isValidKey,this.isValidKey=(!e.ctrlKey||86!==e.keyCode)&&this.isValidKey,this.isValidKey&&(this.isValidKey=!1,this.expandTextbox(),this.showOverAllClear(),e.keyCode,this.search(e))},s.prototype.filter=function(e,t,i){this.isFiltered=!0,this.remoteFilterAction=!0,this.dataUpdater(e,t,i)},s.prototype.getQuery=function(e){var s=e?e.clone():this.query?this.query.clone():new i.Query;if(this.isFiltered)return s;if(this.filterAction){if(null!==this.targetElement()){var l=this.typeOfData(this.dataSource).typeof;if((this.dataSource instanceof i.DataManager||"string"!==l)&&"number"!==l){var n=this.fields;s.where(t.isNullOrUndefined(n.text)?"":n.text,this.filterType,this.targetElement(),this.ignoreCase,this.ignoreAccent)}else s.where("",this.filterType,this.targetElement(),this.ignoreCase,this.ignoreAccent)}return s}return e||(this.query?this.query:new i.Query)},s.prototype.dataUpdater=function(e,t,s){if(this.isDataFetched=!1,""===this.targetElement().trim()){var l=this.mainList.cloneNode?this.mainList.cloneNode(!0):this.mainList;this.backCommand&&(this.remoteCustomValue=!1,this.allowCustomValue&&0==l.querySelectorAll("li").length&&this.mainData.length>0&&(this.mainData=[]),this.onActionComplete(l,this.mainData),this.value&&this.value.length&&this.refreshSelection(),8!==this.keyCode&&this.focusAtFirstListItem(),this.notify("reOrder",{module:"CheckBoxSelection",enable:"CheckBox"===this.mode,e:this}))}else this.resetList(e,s,t),this.allowCustomValue&&(e instanceof i.DataManager?(this.remoteCustomValue=!0,this.tempQuery=t):this.checkForCustomValue(t,s));this.refreshPopup(),"CheckBox"===this.mode&&this.removeFocus()},s.prototype.checkForCustomValue=function(e,i){var s=!this.getValueByText(this.inputElement.value,this.ignoreCase),l=i||this.fields;if(this.allowCustomValue&&s){var n=this.inputElement.value,o=!t.isNullOrUndefined(this.mainData)&&this.mainData.length>0?this.mainData[0]:this.mainData;if(o&&"string"!=typeof o&&"number"!=typeof o&&"boolean"!=typeof o){var r={};t.setValue(l.text,n,r),"number"==typeof t.getValue(this.fields.value?this.fields.value:"value",o)?t.setValue(l.value,Math.random(),r):t.setValue(l.value,n,r),(a=JSON.parse(JSON.stringify(this.listData))).splice(0,0,r),this.resetList(a,l,e)}else if(this.listData){var a=JSON.parse(JSON.stringify(this.listData));a.splice(0,0,this.inputElement.value),a[0]="number"!=typeof o||isNaN(parseFloat(a[0]))?a[0]:parseFloat(a[0]),a[0]="boolean"==typeof o?"true"===a[0]||"false"!==a[0]&&a[0]:a[0],this.resetList(a,l)}}else if(this.listData&&this.mainData&&!s&&this.allowCustomValue)if(this.allowFiltering&&this.isRemoteSelection&&this.remoteCustomValue)this.isRemoteSelection=!1,this.resetList(this.listData,l,e);else if(!this.allowFiltering&&this.list){var h=this.list.querySelectorAll("li."+U.li+":not(.e-hide-listitem)"),u=p(this.targetElement(),h,"StartsWith",this.ignoreCase);u&&null!==u.item&&this.addListFocus(u.item)}this.value&&this.value.length&&this.refreshSelection()},s.prototype.getNgDirective=function(){return"EJS-MULTISELECT"},s.prototype.wrapperClick=function(e){if(this.setDynValue=!1,this.enabled){if(e.target===this.overAllClear)return void e.preventDefault();if(this.inputFocus||this.inputElement.focus(),!this.readonly){if(e.target&&-1!==e.target.classList.toString().indexOf("e-chips-close"))return void(this.isPopupOpen()&&this.refreshPopup());!this.isPopupOpen()&&(this.openOnClick||this.showDropDownIcon&&e.target&&"e-input-group-icon e-ddl-icon"===e.target.className)?this.showPopup(e):(this.hidePopup(e),"CheckBox"===this.mode&&(this.showOverAllClear(),this.inputFocus=!0,this.overAllWrapper.classList.contains(fe)||this.overAllWrapper.classList.add(fe)))}this.targetElement()&&""!==this.targetElement()||e.preventDefault()}},s.prototype.enable=function(e){e?(this.overAllWrapper.classList.remove("e-disabled"),this.inputElement.removeAttribute("disabled"),t.attributes(this.inputElement,{"aria-disabled":"false"}),this.ensureAriaDisabled("false")):(this.overAllWrapper.classList.add("e-disabled"),this.inputElement.setAttribute("disabled","true"),t.attributes(this.inputElement,{"aria-disabled":"true"}),this.ensureAriaDisabled("true")),this.enabled!==e&&(this.enabled=e),this.hidePopup()},s.prototype.onBlurHandler=function(e,i){var s;if(t.isNullOrUndefined(e)||(s=e.relatedTarget),this.popupObj&&document.body.contains(this.popupObj.element)&&this.popupObj.element.contains(s))return void("CheckBox"!==this.mode?this.inputElement.focus():"Auto"===this.floatLabelType&&(this.overAllWrapper.classList.contains("e-outline")||this.overAllWrapper.classList.contains("e-filled"))&&t.addClass([this.overAllWrapper],"e-valid-input"));if("Auto"===this.floatLabelType&&this.overAllWrapper.classList.contains("e-outline")&&"CheckBox"===this.mode&&(t.isNullOrUndefined(this.value)||0===this.value.length)&&t.removeClass([this.overAllWrapper],"e-valid-input"),"CheckBox"===this.mode&&t.Browser.isIE&&!t.isNullOrUndefined(e)&&!i)return this.inputFocus=!1,void this.overAllWrapper.classList.remove(fe);if(this.scrollFocusStatus)return t.isNullOrUndefined(e)||e.preventDefault(),this.inputElement.focus(),void(this.scrollFocusStatus=!1);if(this.inputFocus=!1,this.overAllWrapper.classList.remove(fe),this.addTagOnBlur){var l=this.getValueByText(this.inputElement.value,this.ignoreCase,this.ignoreAccent),o=this.findListElement(this.list,"li","data-value",l),r=this.hideSelectedItem?ve:U.selected;!(!o||o.classList.contains(r))&&(this.updateListSelection(o,e),"Delimiter"===this.mode&&this.updateDelimeter(this.delimiterChar))}this.updateDataList(),this.resetMainList&&(this.mainList=this.resetMainList,this.resetMainList=null),this.refreshListItems(null),"Box"!==this.mode&&"CheckBox"!==this.mode&&this.updateDelimView(),this.changeOnBlur&&(this.updateValueState(e,this.value,this.tempValues),this.dispatchEvent(this.hiddenElement,"change")),this.overAllClear.style.display="none",this.isPopupOpen()&&this.hidePopup(e),this.makeTextBoxEmpty(),this.trigger("blur"),this.focused=!0,t.Browser.isDevice&&"Delimiter"!==this.mode&&"CheckBox"!==this.mode&&this.removeChipFocus(),this.removeChipSelection(),this.refreshInputHight(),E(this.overAllWrapper,this.componentWrapper,this.value,this.floatLabelType,this.placeholder),this.refreshPlaceHolder(),(this.allowFiltering||!0===this.enableSelectionOrder&&"CheckBox"===this.mode)&&!t.isNullOrUndefined(this.mainList)&&(this.ulElement=this.mainList),this.checkPlaceholderSize(),n.Input.createSpanElement(this.overAllWrapper,this.createElement),this.calculateWidth(),t.isNullOrUndefined(this.overAllWrapper)||t.isNullOrUndefined(this.overAllWrapper.getElementsByClassName("e-ddl-icon")[0]&&this.overAllWrapper.getElementsByClassName("e-float-text-content")[0]&&"Never"!==this.floatLabelType)||this.overAllWrapper.getElementsByClassName("e-float-text-content")[0].classList.add("e-icon")},s.prototype.calculateWidth=function(){var e;if(this.overAllWrapper){if(!this.showDropDownIcon||this.overAllWrapper.querySelector(".e-label-top"))e=this.overAllWrapper.clientWidth-2*parseInt(getComputedStyle(this.inputElement).paddingRight);else{var t=this.dropIcon.offsetWidth+parseInt(getComputedStyle(this.dropIcon).marginRight);e=this.overAllWrapper.clientWidth-(t+2*parseInt(getComputedStyle(this.inputElement).paddingRight))}"Auto"===this.floatLabelType&&n.Input.calculateWidth(e,this.overAllWrapper,this.getModuleName())}},s.prototype.checkPlaceholderSize=function(){if(this.showDropDownIcon){var e=this.dropIcon.offsetWidth+parseInt(window.getComputedStyle(this.dropIcon).marginRight,10);this.setPlaceholderSize(e)}else t.isNullOrUndefined(this.dropIcon)||this.setPlaceholderSize(this.showDropDownIcon?this.dropIcon.offsetWidth:0)},s.prototype.setPlaceholderSize=function(e){t.isNullOrUndefined(this.value)||0===this.value.length?0!==this.dropIcon.offsetWidth?this.searchWrapper.style.width="calc(100% - "+(e+10)+"px":t.addClass([this.searchWrapper],"e-search-custom-width"):t.isNullOrUndefined(this.value)||(this.searchWrapper.removeAttribute("style"),t.removeClass([this.searchWrapper],"e-search-custom-width"))},s.prototype.refreshInputHight=function(){t.isNullOrUndefined(this.searchWrapper)||(this.value&&this.value.length||!t.isNullOrUndefined(this.text)&&""!==this.text?this.searchWrapper.classList.add("e-zero-size"):this.searchWrapper.classList.remove("e-zero-size"))},s.prototype.validateValues=function(e,t){return JSON.stringify(e.slice().sort())!==JSON.stringify(t.slice().sort())},s.prototype.updateValueState=function(e,t,i){var s=t||[],l=i||[];if(this.initStatus&&this.validateValues(s,l)){var n={e:e,oldValue:i,value:t,isInteracted:!!e,element:this.element,event:e};this.isAngular&&this.preventChange?this.preventChange=!1:this.trigger("change",n),this.updateTempValue(),this.changeOnBlur||this.dispatchEvent(this.hiddenElement,"change")}},s.prototype.updateTempValue=function(){this.value?this.tempValues=this.value.slice():this.tempValues=this.value},s.prototype.updateAriaActiveDescendant=function(){t.isNullOrUndefined(this.ulElement)||t.isNullOrUndefined(this.ulElement.getElementsByClassName("e-item-focus")[0])||t.attributes(this.inputElement,{"aria-activedescendant":this.ulElement.getElementsByClassName("e-item-focus")[0].id})},s.prototype.getPagingCount=function(){var e=this.list.classList.contains(U.noData)?null:getComputedStyle(this.getItems()[0],null).getPropertyValue("height");return Math.round(this.list.offsetHeight/parseInt(e,10))},s.prototype.pageUpSelection=function(e){var t=this.list.querySelectorAll("li."+U.li+":not(."+ve+"):not(.e-reorder-hide)"),i=e>=0?t[e+1]:t[0];this.addListFocus(i),this.scrollBottom(i,this.getIndexByValue(i.getAttribute("data-value")))},s.prototype.pageDownSelection=function(e){this.getItems();var t=this.list.querySelectorAll("li."+U.li+":not(."+ve+"):not(.e-reorder-hide)"),i=e<=t.length?t[e-1]:t[t.length-1];this.addListFocus(i),this.scrollBottom(i,this.getIndexByValue(i.getAttribute("data-value")))},s.prototype.getItems=function(){return this.list||e.prototype.render.call(this),this.ulElement&&this.ulElement.querySelectorAll("."+U.li).length>0?this.ulElement.querySelectorAll("."+U.li+":not(."+ve+")"):[]},s.prototype.focusInHandler=function(e){var t=this;if(this.enabled){if(this.showOverAllClear(),this.inputFocus=!0,this.value&&this.value.length&&("Delimiter"!==this.mode&&"CheckBox"!==this.mode?this.chipCollectionWrapper.style.display="":this.showDelimWrapper(),"CheckBox"!==this.mode&&(this.viewWrapper.style.display="none")),"CheckBox"!==this.mode&&this.searchWrapper.classList.remove("e-zero-size"),this.checkPlaceholderSize(),this.focused){var i={isInteracted:!!e,event:e};this.trigger("focus",i),this.focused=!1}return this.overAllWrapper.classList.contains(fe)||this.overAllWrapper.classList.add(fe),b(this.overAllWrapper,this.componentWrapper),this.isPopupOpen()&&this.refreshPopup(),setTimeout(function(){t.calculateWidth()},150),!0}return!1},s.prototype.showDelimWrapper=function(){"CheckBox"===this.mode?this.viewWrapper.style.display="":this.delimiterWrapper.style.display="",this.componentWrapper.classList.add("e-delimiter")},s.prototype.hideDelimWrapper=function(){this.delimiterWrapper.style.display="none",this.componentWrapper.classList.remove("e-delimiter")},s.prototype.expandTextbox=function(){var e=5;this.placeholder&&(e=e>this.inputElement.placeholder.length?e:this.inputElement.placeholder.length),this.inputElement.value.length>e?this.inputElement.size=this.inputElement.value.length:this.inputElement.size=e},s.prototype.isPopupOpen=function(){return null!==this.popupWrapper&&null!==this.popupWrapper.parentElement},s.prototype.refreshPopup=function(){this.popupObj&&this.mobFilter&&(this.popupObj.setProperties({width:this.calcPopupWidth()}),this.popupObj.refreshPosition(this.overAllWrapper),this.popupObj.resolveCollision())},s.prototype.checkTextLength=function(){return this.targetElement().length<1},s.prototype.popupKeyActions=function(e){switch(e.keyCode){case 38:this.hidePopup(e),"CheckBox"===this.mode&&this.inputElement.focus(),e.preventDefault();break;case 40:this.isPopupOpen()||(this.showPopup(e),e.preventDefault())}},s.prototype.updateAriaAttribute=function(){var e=this.list.querySelector("."+U.focus);if(!t.isNullOrUndefined(e))if(this.inputElement.setAttribute("aria-activedescendant",e.id),this.allowFiltering){var i=this.popupWrapper.querySelector(".e-input-filter");i&&i.setAttribute("aria-activedescendant",e.id)}else"CheckBox"==this.mode&&this.overAllWrapper.setAttribute("aria-activedescendant",e.id)},s.prototype.homeNavigation=function(e){this.removeFocus();var t=this.ulElement.querySelectorAll("li."+U.li+":not(."+ve+"):not(.e-reorder-hide)");if(t.length>0){var i=t[e?0:t.length-1];i.classList.add(U.focus),this.scrollBottom(i),this.updateAriaActiveDescendant()}},s.prototype.onKeyDown=function(e){if(!this.readonly&&(this.enabled||"CheckBox"===this.mode)&&(this.keyCode=e.keyCode,this.keyDownStatus=!0,!(e.keyCode>111&&e.keyCode<124))){if(e.altKey)return void this.popupKeyActions(e);if(this.isPopupOpen()){var t=this.list.querySelector("."+U.focus);switch(e.keyCode){case 36:case 35:this.homeNavigation(36===e.keyCode);break;case 33:return e.preventDefault(),void(t&&(this.getIndexByValue(t.getAttribute("data-value")),this.pageUpSelection(void 0-this.getPagingCount()),this.updateAriaAttribute()));case 34:return e.preventDefault(),void(t&&(this.getIndexByValue(t.getAttribute("data-value")),this.pageDownSelection(void 0+this.getPagingCount()),this.updateAriaAttribute()));case 38:this.arrowUp(e);break;case 40:this.arrowDown(e);break;case 27:return e.preventDefault(),this.hidePopup(e),void("CheckBox"===this.mode&&this.inputElement.focus());case 13:return e.preventDefault(),"CheckBox"!==this.mode&&this.selectByKey(e),void this.checkPlaceholderSize();case 32:return void this.spaceKeySelection(e);case 9:e.preventDefault(),this.hidePopup(e),this.inputElement.focus(),this.overAllWrapper.classList.add(fe)}}else switch(e.keyCode){case 13:case 9:case 16:case 17:case 20:return;case 40:this.openOnClick&&this.showPopup();break;case 27:return e.preventDefault(),void this.escapeAction()}this.checkTextLength()&&this.keyNavigation(e),"CheckBox"===this.mode&&this.enableSelectionOrder&&(this.allowFiltering&&(this.previousFilterText=this.targetElement()),this.checkBackCommand(e)),this.expandTextbox(),"CheckBox"===this.mode&&this.showSelectAll||this.refreshPopup()}},s.prototype.arrowDown=function(e){e.preventDefault(),this.moveByList(1),this.keyAction=!0,(document.activeElement.classList.contains("e-input-filter")||"CheckBox"===this.mode&&!this.allowFiltering&&document.activeElement!==this.list)&&t.EventHandler.add(this.list,"keydown",this.onKeyDown,this),this.updateAriaAttribute()},s.prototype.arrowUp=function(e){e.preventDefault(),this.keyAction=!0;var i=this.list.querySelectorAll("li."+U.li+":not(."+ve+"):not(.e-reorder-hide)");this.enableGroupCheckBox&&"CheckBox"===this.mode&&!t.isNullOrUndefined(this.fields.groupBy)&&(i=this.list.querySelectorAll("li."+U.li+",li."+U.group+":not(."+ve+"):not(.e-reorder-hide)"));var s=this.list.querySelector("li."+U.focus);this.focusFirstListItem=!t.isNullOrUndefined(this.liCollections[0])&&this.liCollections[0].classList.contains("e-item-focus"),Array.prototype.slice.call(i).indexOf(s)<=0&&"CheckBox"===this.mode&&this.allowFiltering&&(this.keyAction=!1,this.notify("inputFocus",{module:"CheckBoxSelection",enable:"CheckBox"===this.mode,value:"focus"})),this.moveByList(-1),this.updateAriaAttribute()},s.prototype.spaceKeySelection=function(e){if("CheckBox"===this.mode){var i=this.list.querySelector("li."+U.focus),s=document.getElementsByClassName("e-selectall-parent")[0];if((!t.isNullOrUndefined(i)||s&&s.classList.contains("e-item-focus"))&&(e.preventDefault(),this.keyAction=!0),this.selectByKey(e),this.keyAction){var l=this.list.querySelector("li."+U.focus);!t.isNullOrUndefined(l)&&s&&s.classList.contains("e-item-focus")&&l.classList.remove("e-item-focus")}}this.checkPlaceholderSize()},s.prototype.checkBackCommand=function(e){(8===e.keyCode&&this.allowFiltering?this.targetElement()!==this.previousFilterText:""===this.targetElement())?this.backCommand=!1:this.backCommand=!0},s.prototype.keyNavigation=function(e){if("Delimiter"!==this.mode&&"CheckBox"!==this.mode&&this.value&&this.value.length)switch(e.keyCode){case 37:e.preventDefault(),this.moveBy(-1,e);break;case 39:e.preventDefault(),this.moveBy(1,e);break;case 8:this.removelastSelection(e);break;case 46:this.removeSelectedChip(e)}else if(8===e.keyCode&&"Delimiter"===this.mode&&this.value&&this.value.length){e.preventDefault();var t=this.value[this.value.length-1];this.removeValue(t,e),this.updateDelimeter(this.delimiterChar,e),this.focusAtLastListItem(t)}},s.prototype.selectByKey=function(e){this.removeChipSelection(),this.selectListByKey(e),this.hideSelectedItem&&this.focusAtFirstListItem()},s.prototype.escapeAction=function(){var e=this.tempValues?this.tempValues.slice():[];this.value&&this.validateValues(this.value,e)&&("CheckBox"!==this.mode&&(this.value=e,this.initialValueUpdate()),"Delimiter"!==this.mode&&"CheckBox"!==this.mode?this.chipCollectionWrapper.style.display="":this.showDelimWrapper(),this.refreshPlaceHolder(),this.value.length?this.showOverAllClear():this.hideOverAllClear()),this.makeTextBoxEmpty()},s.prototype.scrollBottom=function(e,i){var s=this.list.offsetHeight,l=e.offsetTop+e.offsetHeight-this.list.scrollTop,n=this.list.scrollTop+l-s,o=e.offsetTop+e.offsetHeight-this.list.scrollTop;o=this.fields.groupBy&&!t.isNullOrUndefined(this.fixedHeaderElement)?o-this.fixedHeaderElement.offsetHeight:o,0===i?this.list.scrollTop=0:l>s?this.list.scrollTop=n:o>0&&this.list.offsetHeight>o||(this.list.scrollTop=n)},s.prototype.scrollTop=function(e,i){var s=e.offsetTop-this.list.scrollTop;s=this.fields.groupBy&&!t.isUndefined(this.fixedHeaderElement)?s-this.fixedHeaderElement.offsetHeight:s;var l=e.offsetTop+e.offsetHeight-this.list.scrollTop;0===i?this.list.scrollTop=0:s<0?this.list.scrollTop=this.list.scrollTop+s:l>0&&this.list.offsetHeight>l||(this.list.scrollTop=e.offsetTop-(this.fields.groupBy&&!t.isUndefined(this.fixedHeaderElement)?this.fixedHeaderElement.offsetHeight:0))},s.prototype.selectListByKey=function(e){var i,s=this.list.querySelector("li."+U.focus),l=this.value&&this.value.length?this.value.length:0;null!==s&&(e.preventDefault(),s.classList.contains("e-active")&&(l-=1),this.isValidLI(s)&&l<this.maximumSelectionLength?(this.updateListSelection(s,e),this.addListFocus(s),"CheckBox"===this.mode?(this.updateDelimView(),this.updateDelimeter(this.delimiterChar,e),this.refreshInputHight(),this.checkPlaceholderSize(),this.enableGroupCheckBox&&!t.isNullOrUndefined(this.fields.groupBy)&&(i=s.firstElementChild.lastElementChild,this.findGroupStart(i),this.deselectHeader())):this.updateDelimeter(this.delimiterChar,e),this.makeTextBoxEmpty(),"CheckBox"!==this.mode&&this.refreshListItems(s.textContent),this.changeOnBlur||this.updateValueState(e,this.value,this.tempValues),this.refreshPopup()):!this.isValidLI(s)&&l<this.maximumSelectionLength&&((i=s.firstElementChild.lastElementChild).classList.contains("e-check")?this.selectAllItem(!1,e,s):this.selectAllItem(!0,e,s)),this.refreshSelection(),this.closePopupOnSelect&&this.hidePopup(e));var n=document.getElementsByClassName("e-selectall-parent")[0];if(n&&n.classList.contains("e-item-focus")){var o=n.childNodes[0];if(o.classList.contains("e-check")){o.classList.remove("e-check");r={module:"CheckBoxSelection",enable:"CheckBox"===this.mode,value:"check",name:"checkSelectAll"};this.notify("checkSelectAll",r),this.selectAllItem(!1,e,s)}else{o.classList.add("e-check");var r={module:"CheckBoxSelection",enable:"CheckBox"===this.mode,value:"check",name:"checkSelectAll"};this.notify("checkSelectAll",r),this.selectAllItem(!0,e,s)}}this.refreshPlaceHolder()},s.prototype.refreshListItems=function(e){if((this.allowFiltering||"CheckBox"===this.mode&&!0===this.enableSelectionOrder||this.allowCustomValue)&&this.mainList&&this.listData){var i=this.mainList.cloneNode?this.mainList.cloneNode(!0):this.mainList;this.onActionComplete(i,this.mainData),this.focusAtLastListItem(e),this.value&&this.value.length&&this.refreshSelection()}else!t.isNullOrUndefined(this.fields.groupBy)&&this.value&&this.value.length&&this.refreshSelection()},s.prototype.removeSelectedChip=function(e){var i,s=this.chipCollectionWrapper.querySelector("span.e-chip-selected");null!==s&&(t.isNullOrUndefined(this.value)||(this.tempValues=this.value.slice()),null!==(i=s.nextElementSibling)&&(this.removeChipSelection(),this.addChipSelection(i,e)),this.removeValue(s.getAttribute("data-value"),e),this.makeTextBoxEmpty()),this.closePopupOnSelect&&this.hidePopup(e),this.checkPlaceholderSize()},s.prototype.moveByTop=function(e){var t,i=this.list.querySelectorAll("li."+U.li);i.length>1&&(this.removeFocus(),t=e?0:i.length-1,this.addListFocus(i[t]),this.scrollBottom(i[t],t)),this.updateAriaAttribute()},s.prototype.clickHandler=function(e){var t=e.target.className,i=document.getElementsByClassName("e-selectall-parent")[0];"e-input-filter e-input"!==t&&"e-input-group e-control-wrapper e-input-focus"!==t||!i.classList.contains("e-item-focus")||i.classList.remove("e-item-focus")},s.prototype.moveByList=function(e){if(this.list){var i=this.list.querySelectorAll("li."+U.li+":not(."+ve+"):not(.e-reorder-hide)");"CheckBox"===this.mode&&this.enableGroupCheckBox&&!t.isNullOrUndefined(this.fields.groupBy)&&(i=this.list.querySelectorAll("li."+U.li+",li."+U.group+":not(."+ve+"):not(.e-reorder-hide)"));var s=this.list.querySelector("li."+U.focus),l=-1,n=document.getElementsByClassName("e-selectall-parent")[0];if("CheckBox"===this.mode&&this.showSelectAll&&1==e&&!t.isNullOrUndefined(n)&&!n.classList.contains("e-item-focus")&&0==this.list.getElementsByClassName("e-item-focus").length&&this.liCollections.length>1)!this.focusFirstListItem&&n.classList.contains("e-item-focus")?n.classList.remove("e-item-focus"):n.classList.contains("e-item-focus")||n.classList.add("e-item-focus");else if(i.length){"CheckBox"===this.mode&&this.showSelectAll&&!t.isNullOrUndefined(n&&-1==e)&&(!this.focusFirstListItem&&n.classList.contains("e-item-focus")?n.classList.remove("e-item-focus"):this.focusFirstListItem&&!n.classList.contains("e-item-focus")&&n.classList.add("e-item-focus"));for(var o=0;o<i.length;o++)if(i[o]===s){l=o;break}e>0?l<i.length-1&&(this.removeFocus(),this.addListFocus(i[++l]),this.updateCheck(i[l]),this.scrollBottom(i[l],l)):l>0&&(this.removeFocus(),this.addListFocus(i[--l]),this.updateCheck(i[l]),this.scrollTop(i[l],l))}}},s.prototype.updateCheck=function(e){"CheckBox"===this.mode&&this.enableGroupCheckBox&&!t.isNullOrUndefined(this.fields.groupBy)&&(e.firstElementChild.lastElementChild.classList.contains("e-check")?e.classList.add("e-active"):e.classList.remove("e-active"))},s.prototype.moveBy=function(e,t){var i,s=this.chipCollectionWrapper.querySelectorAll("span.e-chips"),l=this.chipCollectionWrapper.querySelector("span.e-chip-selected");null===l?e<0&&this.addChipSelection(s[s.length-1],t):e<0?null!==(i=l.previousElementSibling)&&(this.removeChipSelection(),this.addChipSelection(i,t)):(i=l.nextElementSibling,this.removeChipSelection(),null!==i&&this.addChipSelection(i,t))},s.prototype.chipClick=function(e){if(this.enabled){var i=t.closest(e.target,".e-chips");this.removeChipSelection(),this.addChipSelection(i,e)}},s.prototype.removeChipSelection=function(){this.chipCollectionWrapper&&this.removeChipFocus()},s.prototype.addChipSelection=function(e,i){t.addClass([e],"e-chip-selected"),this.trigger("chipSelection",i)},s.prototype.onChipRemove=function(e){if(3!==e.which&&2!==e.button&&this.enabled&&!this.readonly){var i=e.target.parentElement.getAttribute("data-value"),s=this.getFormattedValue(i);if(this.allowCustomValue&&("false"!==i&&!1===s||!t.isNullOrUndefined(s)&&"NaN"===s.toString())&&(s=i),this.isPopupOpen()&&"CheckBox"!==this.mode&&this.hidePopup(e),this.inputFocus||this.inputElement.focus(),this.removeValue(s,e),t.isNullOrUndefined(this.findListElement(this.list,"li","data-value",s))&&this.mainList&&this.listData){var l=this.mainList.cloneNode?this.mainList.cloneNode(!0):this.mainList;this.onActionComplete(l,this.mainData)}this.updateDelimeter(this.delimiterChar,e),this.placeholder&&"Never"===this.floatLabelType?(this.makeTextBoxEmpty(),this.checkPlaceholderSize()):this.inputElement.value="",e.preventDefault()}},s.prototype.makeTextBoxEmpty=function(){this.inputElement.value="",this.refreshPlaceHolder()},s.prototype.refreshPlaceHolder=function(){this.placeholder&&"Never"===this.floatLabelType?this.value&&this.value.length||!t.isNullOrUndefined(this.text)&&""!==this.text?this.inputElement.placeholder="":this.inputElement.placeholder=S(this.placeholder):this.setFloatLabelType(),this.expandTextbox()},s.prototype.removeAllItems=function(e,i,s,l,n){var o=this.value.indexOf(e),r=this.value.slice(0);r.splice(o,1),this.setProperties({value:[].concat([],r)},!0),l.setAttribute("aria-selected","false");var a=this.hideSelectedItem?ve:U.selected;t.removeClass([l],a),this.notify("activeList",{module:"CheckBoxSelection",enable:"CheckBox"===this.mode,li:l,e:this,index:o}),this.invokeCheckboxSelection(l,i,s),this.updateMainList(!0,e,n),this.updateChipStatus()},s.prototype.invokeCheckboxSelection=function(e,t,i){this.notify("updatelist",{module:"CheckBoxSelection",enable:"CheckBox"===this.mode,li:e,e:t}),this.updateAriaActiveDescendant(),this.value&&this.value.length!==this.mainData.length&&"CheckBox"===this.mode&&this.showSelectAll&&!this.isSelectAll&&!i&&this.notify("checkSelectAll",{module:"CheckBoxSelection",enable:"CheckBox"===this.mode,value:"uncheck"})},s.prototype.removeValue=function(i,s,l,n){var o=this,r=this.value.indexOf(this.getFormattedValue(i));-1===r&&this.allowCustomValue&&!t.isNullOrUndefined(i)&&(r=this.value.indexOf(i.toString()));var a=s&&s.target;n=!!(n||a&&a.classList.contains("e-close-hooker"))||null;var h=this.hideSelectedItem?ve:U.selected;if(-1!==r){var p=this.findListElement(this.list,"li","data-value",i),u=this.getDataByValue(i),d={e:s,item:p,itemData:u,isInteracted:!!s,cancel:!1};this.trigger("removing",d,function(a){if(a.cancel)o.removeIndex++;else{var d=o.value.slice(0);if(d.splice(r,1),o.setProperties({value:[].concat([],d)},!0),null!==p){var c=o.findListElement(o.mainList,"li","data-value",i);p.setAttribute("aria-selected","false"),t.removeClass([p],h),c&&(c.setAttribute("aria-selected","false"),t.removeClass([p,c],h)),o.notify("activeList",{module:"CheckBoxSelection",enable:"CheckBox"===o.mode,li:p,e:o,index:r}),o.invokeCheckboxSelection(p,s,n)}if(o.hideSelectedItem&&o.fields.groupBy&&p&&o.hideGroupItem(i),o.hideSelectedItem&&o.fixedHeaderElement&&o.fields.groupBy&&"CheckBox"!==o.mode&&o.isPopupOpen()&&e.prototype.scrollStop.call(o),o.updateMainList(!0,i),o.removeChip(i),o.updateChipStatus(),(o.value&&o.value.length?o.value.length:0)<o.maximumSelectionLength){var m=o.list.querySelectorAll("li."+U.li+":not(.e-active)");t.removeClass(m,"e-disable")}o.trigger("removed",a);var f=s&&s.currentTarget,v=!(!f||!f.classList.contains("e-selectall-parent"))||null;if(!o.changeOnBlur&&!n&&s&&l&&!v&&o.isSelectAllTarget&&o.updateValueState(s,o.value,o.tempValues),l&&(o.selectAllEventData.push(u),o.selectAllEventEle.push(p)),1===l){o.changeOnBlur||o.updateValueState(s,o.value,o.tempValues);var g={event:s,items:o.selectAllEventEle,itemData:o.selectAllEventData,isInteracted:!!s,isChecked:!1};o.trigger("selectedAll",g),o.selectAllEventData=[],o.selectAllEventEle=[]}!n||1!==l&&null!==l||o.clearAllCallback(s,n)}})}},s.prototype.updateMainList=function(e,i,s){if(this.allowFiltering||"CheckBox"===this.mode){var l=s||this.findListElement(this.mainList,"li","data-value",i);l&&(e?(l.setAttribute("aria-selected","false"),t.removeClass([l],this.hideSelectedItem?ve:U.selected),"CheckBox"===this.mode&&t.removeClass([l.firstElementChild.lastElementChild],"e-check")):(l.setAttribute("aria-selected","true"),t.addClass([l],this.hideSelectedItem?ve:U.selected),"CheckBox"===this.mode&&t.addClass([l.firstElementChild.lastElementChild],"e-check")))}},s.prototype.removeChip=function(e){if(this.chipCollectionWrapper){var i=this.findListElement(this.chipCollectionWrapper,"span","data-value",e);i&&t.remove(i)}},s.prototype.setWidth=function(e){t.isNullOrUndefined(e)||("number"==typeof e?this.overAllWrapper.style.width=t.formatUnit(e):"string"==typeof e&&(this.overAllWrapper.style.width=e.match(/px|%|em/)?e:t.formatUnit(e)))},s.prototype.updateChipStatus=function(){this.value&&this.value.length?(t.isNullOrUndefined(this.chipCollectionWrapper)||(this.chipCollectionWrapper.style.display=""),"Delimiter"!==this.mode&&"CheckBox"!==this.mode||this.showDelimWrapper(),this.showOverAllClear()):(t.isNullOrUndefined(this.chipCollectionWrapper)||(this.chipCollectionWrapper.style.display="none"),t.isNullOrUndefined(this.delimiterWrapper)||(this.delimiterWrapper.style.display="none"),this.hideOverAllClear())},s.prototype.addValue=function(e,t,i){this.value||(this.value=[]),this.value.indexOf(e)<0&&this.setProperties({value:[].concat([],this.value,[e])},!0);var s=this.findListElement(this.list,"li","data-value",e);this.removeFocus(),s&&(this.addListFocus(s),this.addListSelection(s)),"Delimiter"!==this.mode&&"CheckBox"!==this.mode&&this.addChip(t,e,i),this.hideSelectedItem&&this.fields.groupBy&&this.hideGroupItem(e),this.updateChipStatus(),this.checkMaxSelection()},s.prototype.checkMaxSelection=function(){if((this.value&&this.value.length?this.value.length:0)===this.maximumSelectionLength){var e=this.list.querySelectorAll("li."+U.li+":not(.e-active)");t.addClass(e,"e-disable")}},s.prototype.dispatchSelect=function(t,i,s,l,n){var o=this,r=this.listData;if(this.initStatus&&!l){var a=this.getDataByValue(t),h={e:i,item:s,itemData:a,isInteracted:!!i,cancel:!1};this.trigger("select",h,function(l){if(!l.cancel){if(n&&(o.selectAllEventData.push(a),o.selectAllEventEle.push(s)),1===n){var h={event:i,items:o.selectAllEventEle,itemData:o.selectAllEventData,isInteracted:!!i,isChecked:!0};o.trigger("selectedAll",h),o.selectAllEventData=[]}o.allowCustomValue&&o.isServerRendered&&o.listData!==r&&(o.listData=r),o.updateListSelectEventCallback(t,s,i),o.hideSelectedItem&&o.fixedHeaderElement&&o.fields.groupBy&&"CheckBox"!==o.mode&&e.prototype.scrollStop.call(o)}})}},s.prototype.addChip=function(e,t,i){this.chipCollectionWrapper&&this.getChip(e,t,i)},s.prototype.removeChipFocus=function(){var e=this.chipCollectionWrapper.querySelectorAll("span.e-chips.e-chip-selected");if(t.removeClass(e,"e-chip-selected"),t.Browser.isDevice)for(var i=this.chipCollectionWrapper.querySelectorAll("span."+"e-chips-close".split(" ")[0]),s=0;s<i.length;s++)i[s].style.display="none"},s.prototype.onMobileChipInteraction=function(e){var i=t.closest(e.target,".e-chips"),s=i.querySelector("span."+"e-chips-close".split(" ")[0]);this.enabled&&!this.readonly&&(i.classList.contains("e-chip-selected")||(this.removeChipFocus(),s.style.display="",i.classList.add("e-chip-selected")),this.refreshPopup(),e.preventDefault())},s.prototype.multiCompiler=function(e){var i=!1;if("function"!=typeof e&&e)try{i=!!t.selectAll(e,document).length}catch(e){i=!1}return i},s.prototype.encodeHtmlEntities=function(e){return e.replace(/[\u00A0-\u9999<>&]/g,function(e){return"&#"+e.charCodeAt(0)+";"})},s.prototype.getChip=function(e,i,s){var l,n=this,o={text:i,value:i},r=this.createElement("span",{className:ge,attrs:{"data-value":i,title:e}}),a=this.createElement("span",{className:"e-chipcontent"}),h=this.createElement("span",{className:"e-chips-close"});if(this.mainData&&(o=this.getDataByValue(i)),this.valueTemplate&&!t.isNullOrUndefined(o)){var p=this.multiCompiler(this.valueTemplate),u=(l="function"!=typeof this.valueTemplate&&p?t.compile(t.select(this.valueTemplate,document).innerHTML.trim()):t.compile(this.valueTemplate))(o,this,"valueTemplate",this.valueTemplateId,this.isStringTemplate,null,a);u&&u.length>0&&t.append(u,a),this.renderReactTemplates()}else this.enableHtmlSanitizer?a.innerText=e:a.innerHTML=this.encodeHtmlEntities(e);r.appendChild(a);var d={isInteracted:!!s,itemData:o,e:s,setClass:function(e){t.addClass([r],e)},cancel:!1};this.isPreventChange=this.isAngular&&this.preventChange,this.trigger("tagging",d,function(e){e.cancel||(t.Browser.isDevice?(r.classList.add("e-mob-chip"),t.append([h],r),h.style.display="none",t.EventHandler.add(r,"click",n.onMobileChipInteraction,n)):(t.EventHandler.add(r,"mousedown",n.chipClick,n),n.showClearButton&&r.appendChild(h)),t.EventHandler.add(h,"mousedown",n.onChipRemove,n),n.chipCollectionWrapper.appendChild(r),!n.changeOnBlur&&s&&n.updateValueState(s,n.value,n.tempValues))})},s.prototype.calcPopupWidth=function(){var e=t.formatUnit(this.popupWidth);return e.indexOf("%")>-1&&(e=(this.componentWrapper.offsetWidth*parseFloat(e)/100).toString()+"px"),e},s.prototype.mouseIn=function(){this.enabled&&!this.readonly&&this.showOverAllClear()},s.prototype.mouseOut=function(){this.inputFocus||(this.overAllClear.style.display="none")},s.prototype.listOption=function(e,i){var s=!t.isNullOrUndefined(i.iconCss),l=t.isNullOrUndefined(i.properties)?i:i.properties;return this.listCurrentOptions=null!==i.text||null!==i.value?{fields:l,showIcon:s,ariaAttributes:{groupItemRole:"presentation"}}:{fields:{value:"text"}},t.extend(this.listCurrentOptions,this.listCurrentOptions,i,!0),"CheckBox"===this.mode&&this.notify("listoption",{module:"CheckBoxSelection",enable:"CheckBox"===this.mode,dataSource:e,fieldProperty:l}),this.listCurrentOptions},s.prototype.renderPopup=function(){var i=this;if(this.list||e.prototype.render.call(this),!this.popupObj&&!t.isNullOrUndefined(this.popupWrapper)){document.body.appendChild(this.popupWrapper);var s=this.popupWrapper.querySelector(".e-filter-parent");"CheckBox"===this.mode&&!this.allowFiltering&&s&&this.filterParent&&(s.remove(),this.filterParent=null);var n=parseInt(this.popupHeight,10);if(this.popupWrapper.style.visibility="hidden",this.headerTemplate&&(this.setHeaderTemplate(),n-=this.header.offsetHeight),t.append([this.list],this.popupWrapper),this.footerTemplate&&(this.setFooterTemplate(),n-=this.footer.offsetHeight),"CheckBox"===this.mode&&this.showSelectAll?(this.notify("selectAll",{module:"CheckBoxSelection",enable:"CheckBox"===this.mode}),n-=this.selectAllHeight):"CheckBox"!==this.mode||this.showSelectAll||this.headerTemplate||this.footerTemplate?"CheckBox"!==this.mode||this.showSelectAll||(this.notify("selectAll",{module:"CheckBoxSelection",enable:"CheckBox"===this.mode}),n=parseInt(this.popupHeight,10),this.headerTemplate&&this.header&&(n-=this.header.offsetHeight),this.footerTemplate&&this.footer&&(n-=this.footer.offsetHeight)):(this.notify("selectAll",{module:"CheckBoxSelection",enable:"CheckBox"===this.mode}),n=parseInt(this.popupHeight,10)),"CheckBox"===this.mode){var o={module:"CheckBoxSelection",enable:"CheckBox"===this.mode,popupElement:this.popupWrapper};this.allowFiltering&&(this.notify("searchBox",o),n-=this.searchBoxHeight),t.addClass([this.popupWrapper],"e-checkbox")}"auto"!==this.popupHeight?(this.list.style.maxHeight=t.formatUnit(n),this.popupWrapper.style.maxHeight=t.formatUnit(this.popupHeight)):this.list.style.maxHeight=t.formatUnit(this.popupHeight),this.popupObj=new l.Popup(this.popupWrapper,{width:this.calcPopupWidth(),targetType:"relative",position:this.enableRtl?{X:"right",Y:"bottom"}:{X:"left",Y:"bottom"},relateTo:this.overAllWrapper,collision:this.enableRtl?{X:"fit",Y:"flip"}:{X:"flip",Y:"flip"},offsetY:1,enableRtl:this.enableRtl,zIndex:this.zIndex,close:function(){if(i.popupObj.element.parentElement){i.popupObj.unwireScrollEvents();var e=i.popupWrapper.querySelector(".e-input-filter");"CheckBox"===i.mode&&e&&document.activeElement===e&&e.blur(),t.detach(i.popupObj.element)}},open:function(){if(i.popupObj.resolveCollision(),!i.isFirstClick){var e=i.list.querySelector("ul");e&&("CheckBox"!==i.mode&&(i.allowFiltering||i.allowCustomValue)&&""!==i.targetElement().trim()||(i.mainList=e.cloneNode?e.cloneNode(!0):e)),i.isFirstClick=!0}i.popupObj.wireScrollEvents(),"CheckBox"!==i.mode&&(i.allowFiltering||i.allowCustomValue)&&""!==i.targetElement().trim()||i.loadTemplate(),i.setScrollPosition(),i.allowFiltering&&i.notify("inputFocus",{module:"CheckBoxSelection",enable:"CheckBox"===i.mode,value:"focus"})},targetExitViewport:function(){t.Browser.isDevice||i.hidePopup()}}),"CheckBox"===this.mode&&t.Browser.isDevice&&this.allowFiltering&&this.notify("deviceSearchBox",{module:"CheckBoxSelection",enable:"CheckBox"===this.mode}),this.popupObj.close(),this.popupWrapper.style.visibility=""}},s.prototype.setHeaderTemplate=function(){var e;this.header&&this.header.remove(),this.header=this.createElement("div"),t.addClass([this.header],"e-ddl-header");var i=this.multiCompiler(this.headerTemplate),s=(e="function"!=typeof this.headerTemplate&&i?t.compile(t.select(this.headerTemplate,document).innerHTML.trim()):t.compile(this.headerTemplate))({},this,"headerTemplate",this.headerTemplateId,this.isStringTemplate,null,this.header);s&&s.length>0&&t.append(s,this.header),"CheckBox"===this.mode&&this.showSelectAll?t.prepend([this.header],this.popupWrapper):t.append([this.header],this.popupWrapper),t.EventHandler.add(this.header,"mousedown",this.onListMouseDown,this)},s.prototype.setFooterTemplate=function(){var e;this.footer&&this.footer.remove(),this.footer=this.createElement("div"),t.addClass([this.footer],"e-ddl-footer");var i=this.multiCompiler(this.footerTemplate),s=(e="function"!=typeof this.footerTemplate&&i?t.compile(t.select(this.footerTemplate,document).innerHTML.trim()):t.compile(this.footerTemplate))({},this,"footerTemplate",this.footerTemplateId,this.isStringTemplate,null,this.footer);s&&s.length>0&&t.append(s,this.footer),t.append([this.footer],this.popupWrapper),t.EventHandler.add(this.footer,"mousedown",this.onListMouseDown,this)},s.prototype.clearAll=function(e){if(this.enabled&&!this.readonly){var t=void 0;if(this.value&&this.value.length>0){var i=this.list&&this.list.querySelectorAll("li.e-list-item");if(i&&i.length>0)this.selectAllItems(!1,e);else for(this.removeIndex=0,t=this.value[this.removeIndex];this.removeIndex<this.value.length;t=this.value[this.removeIndex])this.removeValue(t,e,null,!0);this.selectedElementID=null,this.inputElement.removeAttribute("aria-activedescendant")}else this.clearAllCallback(e)}},s.prototype.clearAllCallback=function(e,i){var s=this.value?this.value.slice():[];if(this.mainList&&this.listData&&(this.allowFiltering&&"CheckBox"!==this.mode||this.allowCustomValue)){var l=this.mainList.cloneNode?this.mainList.cloneNode(!0):this.mainList;this.onActionComplete(l,this.mainData)}this.focusAtFirstListItem(),this.updateDelimeter(this.delimiterChar,e),"Box"===this.mode||this.inputFocus&&"CheckBox"!==this.mode||this.updateDelimView(),""!==this.inputElement.value&&(this.makeTextBoxEmpty(),this.search(null)),this.checkPlaceholderSize(),this.isPopupOpen()&&this.refreshPopup(),this.inputFocus||(this.changeOnBlur&&this.updateValueState(e,this.value,s),"CheckBox"!==this.mode&&this.inputElement.focus()),"CheckBox"===this.mode&&(this.refreshPlaceHolder(),this.refreshInputHight(),this.changeOnBlur&&i&&(t.isNullOrUndefined(this.value)||0===this.value.length)&&this.updateValueState(e,this.value,this.tempValues)),this.changeOnBlur||!i||!t.isNullOrUndefined(this.value)&&0!==this.value.length||this.updateValueState(e,this.value,this.tempValues),"CheckBox"===this.mode&&this.enableGroupCheckBox&&!t.isNullOrUndefined(this.fields.groupBy)&&this.updateListItems(this.list.querySelectorAll("li.e-list-item"),this.mainList.querySelectorAll("li.e-list-item")),e.preventDefault()},s.prototype.windowResize=function(){this.refreshPopup(),this.inputFocus&&"CheckBox"!==this.mode||!this.viewWrapper||!this.viewWrapper.parentElement||this.updateDelimView()},s.prototype.resetValueHandler=function(e){var i=t.closest(this.inputElement,"form");if(i&&e.target===i){var s=this.element.tagName===this.getNgDirective()?null:this.element.getAttribute("data-initial-value");this.text=s}},s.prototype.wireEvent=function(){t.EventHandler.add(this.componentWrapper,"mousedown",this.wrapperClick,this),t.EventHandler.add(window,"resize",this.windowResize,this),t.EventHandler.add(this.inputElement,"focus",this.focusInHandler,this),t.EventHandler.add(this.inputElement,"keydown",this.onKeyDown,this),t.EventHandler.add(this.inputElement,"keyup",this.keyUp,this),"CheckBox"!==this.mode&&t.EventHandler.add(this.inputElement,"input",this.onInput,this),t.EventHandler.add(this.inputElement,"blur",this.onBlurHandler,this),t.EventHandler.add(this.componentWrapper,"mouseover",this.mouseIn,this);var e=t.closest(this.inputElement,"form");e&&t.EventHandler.add(e,"reset",this.resetValueHandler,this),t.EventHandler.add(this.componentWrapper,"mouseout",this.mouseOut,this),t.EventHandler.add(this.overAllClear,"mouseup",this.clearAll,this),t.EventHandler.add(this.inputElement,"paste",this.pasteHandler,this)},s.prototype.onInput=function(e){this.keyDownStatus?this.isValidKey=!0:this.isValidKey=!1,this.keyDownStatus=!1,t.Browser.isDevice&&"mozilla"===t.Browser.info.name&&this.search(e)},s.prototype.pasteHandler=function(e){var t=this;setTimeout(function(){t.expandTextbox(),t.search(e)})},s.prototype.search=function(e){var s=this;if(this.resetFilteredData=!0,t.isNullOrUndefined(e)||(this.keyCode=e.keyCode),!this.isPopupOpen()&&this.openOnClick&&this.showPopup(e),this.openClick(e),!this.checkTextLength()||this.allowFiltering||t.isNullOrUndefined(e)||8===e.keyCode){var l=this.targetElement();if(this.allowFiltering){this.allowCustomValue&&(this.isRemoteSelection=!0);var n={preventDefaultAction:!1,text:this.targetElement(),updateData:function(e,t,i){n.cancel||(s.isFiltered=!0,s.remoteFilterAction=!0,s.dataUpdater(e,t,i))},event:e,cancel:!1};this.trigger("filtering",n,function(e){e.cancel||s.isFiltered||e.preventDefaultAction||(s.filterAction=!0,s.dataUpdater(s.dataSource,null,s.fields))})}else if(this.allowCustomValue){var o=new i.Query;o=this.allowFiltering&&""!==l?o.where(this.fields.text,"startswith",l,this.ignoreCase,this.ignoreAccent):o,this.dataUpdater(this.mainData,o,this.fields)}else{var r=this.list.querySelectorAll("li."+U.li+":not(.e-hide-listitem)"),a=p(this.targetElement(),r,"StartsWith",this.ignoreCase);a&&null!==a.item?(this.addListFocus(a.item),this.list.scrollTop=a.item.offsetHeight*a.index):""!==this.targetElement()?this.removeFocus():this.focusAtFirstListItem()}}else this.focusAtFirstListItem()},s.prototype.preRender=function(){null===this.allowFiltering&&(this.allowFiltering="CheckBox"===this.mode),this.initializeData(),this.updateDataAttribute(this.htmlAttributes),e.prototype.preRender.call(this)},s.prototype.getLocaleName=function(){return"multi-select"},s.prototype.initializeData=function(){this.mainListCollection=[],this.beforePopupOpen=!1,this.filterAction=!1,this.remoteFilterAction=!1,this.isFirstClick=!1,this.mobFilter=!0,this.isFiltered=!1,this.focused=!0,this.initial=!0,this.backCommand=!0,this.isCustomRendered=!1,this.isRemoteSelection=!1,this.isSelectAllTarget=!0},s.prototype.updateData=function(e,i){var s,l="",n="Delimiter"===this.mode||"CheckBox"===this.mode,o=[],r=this.listData;if(this.listData=this.mainData,t.isNullOrUndefined(this.hiddenElement)||(this.hiddenElement.innerHTML=""),!t.isNullOrUndefined(this.value)){for(var a=this.value.length,h="",p=0;p<a;p++){var u=this.value[p],d=this.findListElement(t.isNullOrUndefined(this.mainList)?this.ulElement:this.mainList,"li","data-value",u);t.isNullOrUndefined(d)&&!this.allowCustomValue?(this.value.splice(p,1),p-=1,a-=1):(l+=(s=this.listData?this.getTextByValue(u):u)+e+" ",o.push(s)),h+='<option selected value="'+u+'">'+p+"</option>"}t.isNullOrUndefined(this.hiddenElement)||(this.hiddenElement.innerHTML=h)}this.setProperties({text:o.toString()},!0),n&&(this.updateWrapperText(this.delimiterWrapper,l),this.delimiterWrapper.setAttribute("id",t.getUniqueID("delim_val")),this.inputElement.setAttribute("aria-describedby",this.delimiterWrapper.id));var c=i&&i.target,m=!(!c||!c.classList.contains("e-close-hooker"))||null;(!this.changeOnBlur&&i&&!m||this.isSelectAll)&&(this.isSelectAll=!1,this.updateValueState(i,this.value,this.tempValues)),this.listData=r,this.addValidInputClass()},s.prototype.initialTextUpdate=function(){if(t.isNullOrUndefined(this.text))this.setProperties({value:null},!0);else{for(var e=this.text.split(this.delimiterChar),i=[],s=0;e.length>s;s++){var l=this.getValueByText(e[s]);t.isNullOrUndefined(l)?this.allowCustomValue&&i.push(e[s]):i.push(l)}i&&i.length&&this.setProperties({value:i},!0)}},s.prototype.renderList=function(t){!t&&this.allowCustomValue&&this.list&&(this.list.textContent===this.noRecordsTemplate||this.list.querySelector(".e-ul")&&0===this.list.querySelector(".e-ul").childElementCount)&&(t=!0),e.prototype.render.call(this,null,t),this.unwireListEvents(),this.wireListEvents()},s.prototype.initialValueUpdate=function(){if(this.list){var e=void 0,i=void 0,s=void 0;if(this.chipCollectionWrapper&&(this.chipCollectionWrapper.innerHTML=""),this.removeListSelection(),!t.isNullOrUndefined(this.value))for(var l=0;!t.isNullOrUndefined(this.value[l]);l++)if(s=this.value[l],i=this.findListElement(this.hideSelectedItem?this.ulElement:this.list,"li","data-value",s),e=this.getTextByValue(s),i&&"true"!==i.getAttribute("aria-selected")||i&&"true"===i.getAttribute("aria-selected")&&this.hideSelectedItem&&("Box"===this.mode||"Default"===this.mode))this.addChip(e,s),this.addListSelection(i);else if(s&&this.allowCustomValue){var n=this.listData.length,o={};t.setValue(this.fields.text,s,o),t.setValue(this.fields.value,s,o);var r=this.popupWrapper.querySelector("."+U.noData);this.addItem(o,n),i=i||this.findListElement(this.hideSelectedItem?this.ulElement:this.list,"li","data-value",s),this.popupWrapper.contains(r)&&(this.list.setAttribute("style",r.getAttribute("style")),this.popupWrapper.replaceChild(this.list,r),this.wireListEvents()),this.addChip(e,s),this.addListSelection(i)}"CheckBox"===this.mode?(this.updateDelimView(),this.changeOnBlur&&this.updateValueState(null,this.value,this.tempValues),this.updateDelimeter(this.delimiterChar),this.refreshInputHight()):this.updateDelimeter(this.delimiterChar),"CheckBox"!==this.mode||!this.showSelectAll||!t.isNullOrUndefined(this.value)&&this.value.length||this.notify("checkSelectAll",{module:"CheckBoxSelection",enable:"CheckBox"===this.mode,value:"uncheck"}),"Box"===this.mode||"Default"===this.mode&&this.inputFocus?this.chipCollectionWrapper.style.display="":"Delimiter"!==this.mode&&"CheckBox"!==this.mode||this.showDelimWrapper()}},s.prototype.updateActionCompleteData=function(e,i){this.value&&this.value.indexOf(e.getAttribute("data-value"))>-1&&(this.mainList=this.ulElement,this.hideSelectedItem&&t.addClass([e],ve))},s.prototype.updateAddItemList=function(e,i){this.popupObj&&this.popupObj.element&&this.popupObj.element.querySelector("."+U.noData)&&e?(this.list=e,this.mainList=this.ulElement=e.querySelector("ul"),t.remove(this.popupWrapper.querySelector(".e-content")),this.popupObj=null,this.renderPopup()):this.allowCustomValue&&(this.list=e,this.mainList=this.ulElement=e.querySelector("ul"))},s.prototype.updateDataList=function(){if(this.mainList&&this.ulElement&&!(this.isFiltered||this.filterAction||this.targetElement().trim())){var e=this.mainList.childElementCount<this.ulElement.childElementCount,t=this.ulElement.childElementCount>0&&this.ulElement.children[0].childElementCount>0&&this.mainList.children[0]&&this.mainList.children[0].childElementCount<this.ulElement.children[0].childElementCount,i=this.itemTemplate&&this.ulElement.childElementCount>0&&!(this.ulElement.childElementCount<this.mainList.childElementCount)&&(this.ulElement.children[0].childElementCount>0||this.fields.groupBy&&this.ulElement.children[1]&&this.ulElement.children[1].childElementCount>0);(e||t||i)&&(this.mainList=this.ulElement)}},s.prototype.isValidLI=function(e){return e&&!e.classList.contains(U.disabled)&&!e.classList.contains(U.group)&&e.classList.contains(U.li)},s.prototype.updateListSelection=function(e,i,s){var l=e.getAttribute("data-value"),n=this.getFormattedValue(l);this.allowCustomValue&&("false"!==l&&!1===n||!t.isNullOrUndefined(n)&&"NaN"===n.toString())&&(n=l),this.removeHover(),this.value&&-1!==this.value.indexOf(n)?this.removeValue(n,i,s):this.dispatchSelect(n,i,e,"true"===e.getAttribute("aria-selected"),s)},s.prototype.updateListSelectEventCallback=function(e,i,s){var l=this,n=this.getTextByValue(e);if(!this.allowCustomValue&&!this.allowFiltering||this.findListElement(this.mainList,"li","data-value",e))this.remoteCustomValue=!1,this.addValue(e,n,s);else{var o=i.cloneNode(!0),r=this.fields.value?this.fields.value:"value";this.allowCustomValue&&this.mainData.length&&"number"==typeof t.getValue(r,this.mainData[0])&&(e=isNaN(parseFloat(e.toString()))?e:parseFloat(e.toString()));var a=this.getDataByValue(e),h={newData:a,cancel:!1};this.trigger("customValueSelection",h,function(i){i.cancel||(t.append([o],l.mainList),l.mainData.push(a),l.remoteCustomValue=!1,l.addValue(e,n,s))})}},s.prototype.removeListSelection=function(){var e=this.hideSelectedItem?ve:U.selected,i=this.list.querySelectorAll("."+e),s=i.length;if(i&&i.length)for(t.removeClass(i,e);s>0;)i[s-1].setAttribute("aria-selected","false"),s--;if(!t.isNullOrUndefined(this.mainList)){var l=this.mainList.querySelectorAll("."+e),n=l.length;if(l&&l.length)for(t.removeClass(l,e);n>0;)l[n-1].setAttribute("aria-selected","false"),"CheckBox"===this.mode&&(i&&i.length>n-1&&t.removeClass([i[n-1].firstElementChild.lastElementChild],"e-check"),t.removeClass([l[n-1].firstElementChild.lastElementChild],"e-check")),n--}},s.prototype.removeHover=function(){var e=this.list.querySelectorAll("."+U.hover);e&&e.length&&t.removeClass(e,U.hover)},s.prototype.removeFocus=function(){if(this.list&&this.mainList){var e=this.list.querySelectorAll("."+U.focus),i=this.mainList.querySelectorAll("."+U.focus);e&&e.length&&(t.removeClass(e,U.focus),t.removeClass(i,U.focus))}},s.prototype.addListHover=function(e){this.enabled&&this.isValidLI(e)?(this.removeHover(),t.addClass([e],U.hover)):null!==e&&e.classList.contains("e-list-group-item")&&this.enableGroupCheckBox&&"CheckBox"===this.mode&&!t.isNullOrUndefined(this.fields.groupBy)&&(this.removeHover(),t.addClass([e],U.hover))},s.prototype.addListFocus=function(e){this.enabled&&this.isValidLI(e)?(this.removeFocus(),t.addClass([e],U.focus),this.updateAriaActiveDescendant()):this.enableGroupCheckBox&&"CheckBox"===this.mode&&!t.isNullOrUndefined(this.fields.groupBy)&&(t.addClass([e],U.focus),this.updateAriaActiveDescendant())},s.prototype.addListSelection=function(e,i){var s=this.hideSelectedItem?ve:U.selected;this.isValidLI(e)&&!e.classList.contains(U.hover)&&(t.addClass([e],s),this.updateMainList(!1,e.getAttribute("data-value"),i),e.setAttribute("aria-selected","true"),"CheckBox"===this.mode&&e.classList.contains("e-active")&&0===e.getElementsByClassName("e-check").length&&this.notify("updatelist",{module:"CheckBoxSelection",enable:"CheckBox"===this.mode,li:e,e:this}),this.notify("activeList",{module:"CheckBoxSelection",enable:"CheckBox"===this.mode,li:e,e:this}),this.chipCollectionWrapper&&this.removeChipSelection(),this.selectedElementID=e.id)},s.prototype.updateDelimeter=function(e,t){this.updateData(e,t)},s.prototype.onMouseClick=function(e){var i=this;this.keyCode=null,this.scrollFocusStatus=!1;var s=e.target,l=t.closest(s,"."+U.li);if(t.closest(s,"."+U.group)&&this.enableGroupCheckBox&&"CheckBox"===this.mode&&this.fields.groupBy)(s=s.classList.contains("e-list-group-item")?s.firstElementChild.lastElementChild:e.target).classList.contains("e-check")?(this.selectAllItem(!1,e),s.classList.remove("e-check"),s.classList.remove("e-stop"),t.closest(s,".e-list-group-item").classList.remove("e-active"),s.setAttribute("aria-selected","false")):(this.selectAllItem(!0,e),s.classList.remove("e-stop"),s.classList.add("e-check"),t.closest(s,".e-list-group-item").classList.add("e-active"),s.setAttribute("aria-selected","true")),this.refreshSelection(),this.checkSelectAll();else{if(this.isValidLI(l)){var n=this.value&&this.value.length?this.value.length:0;l.classList.contains("e-active")&&(n-=1),n<this.maximumSelectionLength&&(this.updateListSelection(l,e),this.checkPlaceholderSize(),this.addListFocus(l),(this.allowCustomValue||this.allowFiltering)&&this.mainList&&this.listData?"CheckBox"!==this.mode&&(this.focusAtLastListItem(l.getAttribute("data-value")),this.refreshSelection()):this.makeTextBoxEmpty()),"CheckBox"===this.mode?(this.updateDelimView(),this.value&&this.value.length>50?setTimeout(function(){i.updateDelimeter(i.delimiterChar,e)},0):this.updateDelimeter(this.delimiterChar,e),this.refreshInputHight()):this.updateDelimeter(this.delimiterChar,e),this.checkSelectAll(),this.refreshPopup(),this.hideSelectedItem&&this.focusAtFirstListItem(),this.closePopupOnSelect?this.hidePopup(e):e.preventDefault(),this.makeTextBoxEmpty(),this.findGroupStart(s),"CheckBox"!==this.mode&&this.refreshListItems(t.isNullOrUndefined(l)?null:l.textContent)}else e.preventDefault();this.refreshPlaceHolder(),this.deselectHeader()}},s.prototype.findGroupStart=function(e){if(this.enableGroupCheckBox&&"CheckBox"===this.mode&&!t.isNullOrUndefined(this.fields.groupBy)){var i=void 0;if(this.itemTemplate&&!e.getElementsByClassName("e-frame").length)for(;!e.getElementsByClassName("e-frame").length;)e=e.parentElement;for(e.classList.contains("e-frame")&&(e=e.parentElement.parentElement),i=this.findGroupAttrtibutes(e,0,0,0,0),i=this.findGroupAttrtibutes(e,i[0],i[1],i[2],1);!e.classList.contains("e-list-group-item")&&(e.classList.contains("e-list-icon")&&(e=e.parentElement),null!=(e=e.previousElementSibling)););this.updateCheckBox(e,i[0],i[1],i[2])}},s.prototype.findGroupAttrtibutes=function(e,t,i,s,l){for(;!e.classList.contains("e-list-group-item")&&(e.classList.contains("e-list-icon")&&(e=e.parentElement),e.getElementsByClassName("e-frame")[0].classList.contains("e-check")&&e.classList.contains("e-list-item")?t++:e.classList.contains("e-list-item")&&i++,s++,null!=(e=l?e.nextElementSibling:e.previousElementSibling)););return[t,i,s]},s.prototype.updateCheckBox=function(e,i,s,l){if(null!==e){var n=e.getElementsByClassName("e-frame")[0];l===i?(n.classList.remove("e-stop"),n.classList.add("e-check"),t.closest(n,".e-list-group-item").classList.add("e-active"),e.setAttribute("aria-selected","true")):l===s?(n.classList.remove("e-check"),n.classList.remove("e-stop"),t.closest(n,".e-list-group-item").classList.remove("e-active"),e.setAttribute("aria-selected","false")):this.maximumSelectionLength===i-1?(n.classList.remove("e-stop"),e.setAttribute("aria-selected","true"),t.closest(n,".e-list-group-item").classList.add("e-active"),n.classList.add("e-check")):(n.classList.remove("e-check"),n.classList.add("e-stop"),t.closest(n,".e-list-group-item").classList.add("e-active"),e.setAttribute("aria-selected","false"))}},s.prototype.deselectHeader=function(){var e=this.value&&this.value.length?this.value.length:0,i=this.list.querySelectorAll("li.e-list-group-item:not(.e-active)");e<this.maximumSelectionLength&&t.removeClass(i,"e-disable"),e===this.maximumSelectionLength&&t.addClass(i,"e-disable")},s.prototype.onMouseOver=function(e){var i=t.closest(e.target,"."+U.li);null===i&&"CheckBox"===this.mode&&!t.isNullOrUndefined(this.fields.groupBy)&&this.enableGroupCheckBox&&(i=t.closest(e.target,"."+U.group)),this.addListHover(i)},s.prototype.onMouseLeave=function(){this.removeHover()},s.prototype.onListMouseDown=function(e){e.preventDefault(),this.scrollFocusStatus=!0},s.prototype.onDocumentClick=function(e){if("CheckBox"!==this.mode){var i=e.target;!t.isNullOrUndefined(this.popupObj)&&t.closest(i,'[id="'+this.popupObj.element.id+'"]')||this.overAllWrapper.contains(e.target)?this.scrollFocusStatus=(t.Browser.isIE||"edge"===t.Browser.info.name)&&document.activeElement===this.inputElement:this.scrollFocusStatus=!1}},s.prototype.wireListEvents=function(){t.isNullOrUndefined(this.list)||(t.EventHandler.add(document,"mousedown",this.onDocumentClick,this),t.EventHandler.add(this.list,"mousedown",this.onListMouseDown,this),t.EventHandler.add(this.list,"mouseup",this.onMouseClick,this),t.EventHandler.add(this.list,"mouseover",this.onMouseOver,this),t.EventHandler.add(this.list,"mouseout",this.onMouseLeave,this))},s.prototype.unwireListEvents=function(){t.EventHandler.remove(document,"mousedown",this.onDocumentClick),this.list&&(t.EventHandler.remove(this.list,"mousedown",this.onListMouseDown),t.EventHandler.remove(this.list,"mouseup",this.onMouseClick),t.EventHandler.remove(this.list,"mouseover",this.onMouseOver),t.EventHandler.remove(this.list,"mouseout",this.onMouseLeave))},s.prototype.hideOverAllClear=function(){this.value&&this.value.length&&""!==this.inputElement.value||(this.overAllClear.style.display="none")},s.prototype.showOverAllClear=function(){(this.value&&this.value.length||""!==this.inputElement.value)&&this.showClearButton&&!0!==this.readonly?this.overAllClear.style.display="":this.overAllClear.style.display="none"},s.prototype.focusIn=function(){document.activeElement!==this.inputElement&&this.enabled&&this.inputElement.focus()},s.prototype.focusOut=function(){document.activeElement===this.inputElement&&this.enabled&&this.inputElement.blur()},s.prototype.showSpinner=function(){if(t.isNullOrUndefined(this.spinnerElement)){var e=this.filterParent&&this.filterParent.querySelector(".e-clear-icon.e-icons");"none"!==this.overAllClear.style.display||e?this.spinnerElement=e||this.overAllClear:(this.spinnerElement=this.createElement("span",{className:"e-chips-close e-close-hooker e-ms-spinner-icon"}),this.componentWrapper.appendChild(this.spinnerElement)),l.createSpinner({target:this.spinnerElement,width:t.Browser.isDevice?"16px":"14px"},this.createElement),t.addClass([this.spinnerElement],"e-ddl-disable-icon"),l.showSpinner(this.spinnerElement)}},s.prototype.hideSpinner=function(){t.isNullOrUndefined(this.spinnerElement)||(l.hideSpinner(this.spinnerElement),t.removeClass([this.spinnerElement],"e-ddl-disable-icon"),this.spinnerElement.classList.contains("e-ms-spinner-icon")?t.detach(this.spinnerElement):this.spinnerElement.innerHTML="",this.spinnerElement=null)},s.prototype.updateWrapperText=function(e,t){this.valueTemplate||!this.enableHtmlSanitizer?e.innerHTML=this.encodeHtmlEntities(t):e.innerText=t},s.prototype.updateDelimView=function(){if(this.delimiterWrapper&&this.hideDelimWrapper(),this.chipCollectionWrapper&&(this.chipCollectionWrapper.style.display="none"),t.isNullOrUndefined(this.viewWrapper)||(this.viewWrapper.style.display="",this.viewWrapper.style.width="",this.viewWrapper.classList.remove("e-delim-total")),this.value&&this.value.length){var e="",i=void 0,s=void 0,l=1,n=void 0,o=void 0,r=0,a=void 0;this.updateWrapperText(this.viewWrapper,e);var h={noRecordsTemplate:"No records found",actionFailureTemplate:"Request failed",overflowCountTemplate:"+${count} more..",totalCountTemplate:"${count} selected"},p=new t.L10n(this.getLocaleName(),h,this.locale);""===p.getConstant("actionFailureTemplate")&&(p=new t.L10n("dropdowns",h,this.locale)),""===p.getConstant("noRecordsTemplate")&&(p=new t.L10n("dropdowns",h,this.locale));var u=p.getConstant("overflowCountTemplate"),d=p.getConstant("totalCountTemplate"),c=this.createElement("span",{className:"e-remain"}),m=u.replace("${count}",this.value.length.toString());c.innerText=m,this.viewWrapper.appendChild(c),this.renderReactTemplates();var f=c.offsetWidth;if(t.remove(c),this.showDropDownIcon&&(r=this.dropIcon.offsetWidth+parseInt(window.getComputedStyle(this.dropIcon).marginRight,10)),this.checkClearIconWidth(),!t.isNullOrUndefined(this.value))for(var v=0;!t.isNullOrUndefined(this.value[v]);v++){if(e+=0===v?"":this.delimiterChar+" ",i=this.getOverflowVal(v),e+=i,i=this.viewWrapper.innerHTML,this.updateWrapperText(this.viewWrapper,e),n=this.viewWrapper.offsetWidth+parseInt(window.getComputedStyle(this.viewWrapper).paddingRight,10),a=this.componentWrapper.offsetWidth-parseInt(window.getComputedStyle(this.componentWrapper).paddingLeft,10)-parseInt(window.getComputedStyle(this.componentWrapper).paddingRight,10),n+r+this.clearIconWidth>a){for(void 0!==s&&""!==s&&(i=s,v=l+1),this.updateWrapperText(this.viewWrapper,i),o=this.value.length-v,n=this.viewWrapper.offsetWidth+parseInt(window.getComputedStyle(this.viewWrapper).paddingRight,10);n+f+r+this.clearIconWidth>a&&0!==n&&""!==this.viewWrapper.innerHTML;){var g=[];this.viewWrapper.innerHTML=g.join(this.delimiterChar),o=this.value.length,n=this.viewWrapper.offsetWidth+parseInt(window.getComputedStyle(this.viewWrapper).paddingRight,10)}break}n+f+r+this.clearIconWidth<=a?(s=e,l=v):0===v&&(s="",l=-1)}if(o>0){var y=a-r-this.clearIconWidth;this.viewWrapper.appendChild(this.updateRemainTemplate(c,this.viewWrapper,o,u,d,y)),this.updateRemainWidth(this.viewWrapper,y),this.updateRemainingText(c,r,o,u,d)}}else t.isNullOrUndefined(this.viewWrapper)||(this.viewWrapper.innerHTML="",this.viewWrapper.style.display="none")},s.prototype.checkClearIconWidth=function(){this.showClearButton&&(this.clearIconWidth=this.overAllClear.offsetWidth)},s.prototype.updateRemainWidth=function(e,t){e.classList.contains("e-delim-total")&&t<e.offsetWidth+parseInt(window.getComputedStyle(e).paddingLeft,10)+parseInt(window.getComputedStyle(e).paddingLeft,10)&&(e.style.width=t+"px")},s.prototype.updateRemainTemplate=function(e,t,i,s,l,n){t.firstChild&&3===t.firstChild.nodeType&&""===t.firstChild.nodeValue&&t.removeChild(t.firstChild),e.innerHTML="";var o=s.replace("${count}",i.toString()),r=l.replace("${count}",i.toString());return e.innerText=t.firstChild&&3===t.firstChild.nodeType?o:r,t.firstChild&&3===t.firstChild.nodeType?t.classList.remove("e-delim-total"):(t.classList.add("e-delim-total"),this.updateRemainWidth(t,n)),e},s.prototype.updateRemainingText=function(e,t,i,s,l){var n=this.componentWrapper.offsetWidth-parseInt(window.getComputedStyle(this.componentWrapper).paddingLeft,10)-parseInt(window.getComputedStyle(this.componentWrapper).paddingRight,10),o=this.viewWrapper.offsetWidth+parseInt(window.getComputedStyle(this.viewWrapper).paddingRight,10);if(o+t>=n&&0!==o&&this.viewWrapper.firstChild&&3===this.viewWrapper.firstChild.nodeType){for(;o+t>n&&0!==o&&this.viewWrapper.firstChild&&3===this.viewWrapper.firstChild.nodeType;){var r=this.viewWrapper.firstChild.nodeValue.split(this.delimiterChar);r.pop(),this.viewWrapper.firstChild.nodeValue=r.join(this.delimiterChar),""===this.viewWrapper.firstChild.nodeValue&&this.viewWrapper.removeChild(this.viewWrapper.firstChild),i++,o=this.viewWrapper.offsetWidth}var a=n-t;this.updateRemainTemplate(e,this.viewWrapper,i,s,l,a)}},s.prototype.getOverflowVal=function(e){var t;if(this.mainData&&this.mainData.length)if("CheckBox"===this.mode){var i=this.listData;this.listData=this.mainData,t=this.getTextByValue(this.value[e]),this.listData=i}else t=this.getTextByValue(this.value[e]);else t=this.value[e];return t},s.prototype.unWireEvent=function(){if(t.isNullOrUndefined(this.componentWrapper)||t.EventHandler.remove(this.componentWrapper,"mousedown",this.wrapperClick),t.EventHandler.remove(window,"resize",this.windowResize),!t.isNullOrUndefined(this.inputElement)){t.EventHandler.remove(this.inputElement,"focus",this.focusInHandler),t.EventHandler.remove(this.inputElement,"keydown",this.onKeyDown),"CheckBox"!==this.mode&&t.EventHandler.remove(this.inputElement,"input",this.onInput),t.EventHandler.remove(this.inputElement,"keyup",this.keyUp);var e=t.closest(this.inputElement,"form");e&&t.EventHandler.remove(e,"reset",this.resetValueHandler),t.EventHandler.remove(this.inputElement,"blur",this.onBlurHandler)}t.isNullOrUndefined(this.componentWrapper)||(t.EventHandler.remove(this.componentWrapper,"mouseover",this.mouseIn),t.EventHandler.remove(this.componentWrapper,"mouseout",this.mouseOut)),t.isNullOrUndefined(this.overAllClear)||t.EventHandler.remove(this.overAllClear,"mousedown",this.clearAll),t.isNullOrUndefined(this.inputElement)||t.EventHandler.remove(this.inputElement,"paste",this.pasteHandler)},s.prototype.selectAllItem=function(e,i,s){var l;if(t.isNullOrUndefined(this.list)||(l=this.list.querySelectorAll(e?'li.e-list-item:not([aria-selected="true"]):not(.e-reorder-hide)':'li.e-list-item[aria-selected="true"]:not(.e-reorder-hide)')),this.value&&this.value.length&&i&&i.target&&t.closest(i.target,".e-close-hooker")&&this.allowFiltering&&(l=this.mainList.querySelectorAll(e?'li.e-list-item:not([aria-selected="true"]):not(.e-reorder-hide)':'li.e-list-item[aria-selected="true"]:not(.e-reorder-hide)')),this.enableGroupCheckBox&&"CheckBox"===this.mode&&!t.isNullOrUndefined(this.fields.groupBy)){var n=i?this.groupTemplate?t.closest(i.target,".e-list-group-item"):i.target:null;if(n=i&&32===i.keyCode?s:n,(n=n&&n.classList.contains("e-frame")?n.parentElement.parentElement:n)&&n.classList.contains("e-list-group-item")){var o=n.nextElementSibling;if(t.isNullOrUndefined(o))return;for(;o.classList.contains("e-list-item");){if(e){if(!o.firstElementChild.lastElementChild.classList.contains("e-check")){var r=this.value&&this.value.length?this.value.length:0;o.classList.contains("e-active")&&(r-=1),r<this.maximumSelectionLength&&this.updateListSelection(o,i)}}else o.firstElementChild.lastElementChild.classList.contains("e-check")&&this.updateListSelection(o,i);if(null==(o=o.nextElementSibling))break}if(n.classList.contains("e-list-group-item")){var a=this.list.getElementsByClassName("e-item-focus")[0];a&&a.classList.remove("e-item-focus"),e?n.classList.add("e-active"):n.classList.remove("e-active"),n.classList.add("e-item-focus"),this.updateAriaActiveDescendant()}this.textboxValueUpdate(),this.checkPlaceholderSize(),!this.changeOnBlur&&i&&this.updateValueState(i,this.value,this.tempValues)}else this.updateValue(i,l,e)}else this.updateValue(i,l,e);this.addValidInputClass()},s.prototype.updateValue=function(e,i,s){var l=this,n=i.length,o={event:e,items:s?i:[],itemData:s?this.listData:[],isInteracted:!!e,isChecked:s,preventSelectEvent:!1};if(this.trigger("beforeSelectAll",o),i&&i.length){var r=0,a=0;if(a=this.enableGroupCheckBox?s?this.maximumSelectionLength-(this.value?this.value.length:0):i.length:s?this.maximumSelectionLength-(this.value?this.value.length:0):this.maximumSelectionLength,o.preventSelectEvent){for(var h=0;h<i.length&&h<a;h++){this.removeHover();var p=i[h].getAttribute("data-value"),u=this.getFormattedValue(p),d=this.mainList?this.mainList.querySelectorAll(s?'li.e-list-item:not([aria-selected="true"]):not(.e-reorder-hide)':'li.e-list-item[aria-selected="true"]:not(.e-reorder-hide)')[h]:null;s?(this.value=this.value?this.value:[],this.value.indexOf(u)<0&&this.setProperties({value:[].concat([],this.value,[u])},!0),this.removeFocus(),this.addListSelection(i[h],d),this.updateChipStatus(),this.checkMaxSelection()):this.removeAllItems(u,e,!1,i[h],d),this.enableGroupCheckBox&&this.findGroupStart(i[h])}if(!s&&(this.value&&this.value.length?this.value.length:0)<this.maximumSelectionLength){var c=this.list.querySelectorAll("li."+U.li+":not(.e-active)");t.removeClass(c,"e-disable")}var m={event:e,items:s?i:[],itemData:s?this.listData:[],isInteracted:!!e,isChecked:s};this.trigger("selectedAll",m)}else{for(this.isSelectAllTarget=n===r+1;r<n&&r<=50&&r<a;)this.updateListSelection(i[r],e,n-r),this.enableGroupCheckBox&&this.findGroupStart(i[r]),r++;n>50&&setTimeout(function(){for(;r<n&&r<a;)l.isSelectAllTarget=n===r+1,l.updateListSelection(i[r],e,n-r),l.enableGroupCheckBox&&l.findGroupStart(i[r]),r++;if(l.updatedataValueItems(e),l.changeOnBlur||(l.updateValueState(e,l.value,l.tempValues),l.isSelectAll=l.isSelectAll?!l.isSelectAll:l.isSelectAll),l.updateHiddenElement(),l.popupWrapper&&i[r-1].classList.contains("e-item-focus")){var t=document.getElementsByClassName("e-selectall-parent")[0];t&&t.classList.contains("e-item-focus")&&i[r-1].classList.remove("e-item-focus")}},0)}}this.updatedataValueItems(e),this.checkPlaceholderSize(),n<=50&&!o.preventSelectEvent&&(this.changeOnBlur||(this.updateValueState(e,this.value,this.tempValues),this.isSelectAll=this.isSelectAll?!this.isSelectAll:this.isSelectAll),this.updateHiddenElement())},s.prototype.updateHiddenElement=function(){var e=this,i="",s="",l="",n=[];"CheckBox"===this.mode&&(this.value.map(function(t,o){i+='<option selected value ="'+t+'">'+o+"</option>",l=e.listData?e.getTextByValue(t):t,s+=l+e.delimiterChar+" ",n.push(l)}),this.hiddenElement.innerHTML=i,this.updateWrapperText(this.delimiterWrapper,s),this.delimiterWrapper.setAttribute("id",t.getUniqueID("delim_val")),this.inputElement.setAttribute("aria-describedby",this.delimiterWrapper.id),this.setProperties({text:n.toString()},!0),this.refreshInputHight(),this.refreshPlaceHolder())},s.prototype.updatedataValueItems=function(e){this.deselectHeader(),this.textboxValueUpdate(e)},s.prototype.textboxValueUpdate=function(e){var i=e&&e.target&&(t.closest(e.target,".e-selectall-parent")||t.closest(e.target,".e-close-hooker"));"Box"===this.mode||this.isPopupOpen()||"CheckBox"===this.mode&&(this.isSelectAll||i)?this.searchWrapper.classList.remove("e-zero-size"):this.updateDelimView(),"CheckBox"===this.mode?(this.updateDelimView(),i||this.isSelectAll||!this.isSelectAllTarget||this.updateDelimeter(this.delimiterChar,e),this.refreshInputHight()):this.updateDelimeter(this.delimiterChar,e),this.refreshPlaceHolder()},s.prototype.setZIndex=function(){this.popupObj&&this.popupObj.setProperties({zIndex:this.zIndex})},s.prototype.updateDataSource=function(e){t.isNullOrUndefined(this.list)?this.renderPopup():this.resetList(this.dataSource),this.value&&this.value.length&&(this.setProperties({value:this.value}),this.refreshSelection())},s.prototype.onLoadSelect=function(){this.setDynValue=!0,this.renderPopup()},s.prototype.selectAllItems=function(i,s){var l=this;if(t.isNullOrUndefined(this.list))this.selectAllAction=function(){if("CheckBox"===l.mode&&l.showSelectAll){var e={module:"CheckBoxSelection",enable:"CheckBox"===l.mode,value:i?"check":"uncheck"};l.notify("checkSelectAll",e)}l.selectAllItem(i,s),l.selectAllAction=null},e.prototype.render.call(this);else{if(this.selectAllAction=null,"CheckBox"===this.mode&&this.showSelectAll){var n={value:i?"check":"uncheck",enable:"CheckBox"===this.mode,module:"CheckBoxSelection"};this.notify("checkSelectAll",n)}this.selectAllItem(i,s)}},s.prototype.getPersistData=function(){return this.addOnPersist(["value"])},s.prototype.onPropertyChanged=function(i,s){(i.dataSource&&!t.isNullOrUndefined(Object.keys(i.dataSource))||i.query&&!t.isNullOrUndefined(Object.keys(i.query)))&&(this.resetFilteredData&&(this.resetMainList=this.resetMainList?this.resetMainList:this.mainList,this.resetFilteredData=!1),this.mainList=null,this.mainData=null,this.isFirstClick=!1,this.isDynamicDataChange=!0),"multiselect"===this.getModuleName()&&(this.filterAction=!1,this.setUpdateInitial(["fields","query","dataSource"],i));for(var l=0,o=Object.keys(i);l<o.length;l++){var r=o[l];switch(r){case"query":case"dataSource":"CheckBox"===this.mode&&this.showSelectAll&&(t.isNullOrUndefined(this.popupObj)||(this.popupObj.destroy(),this.popupObj=null),this.renderPopup());break;case"htmlAttributes":this.updateHTMLAttribute();break;case"showClearButton":this.updateClearButton(i.showClearButton);break;case"text":this.updateVal(this.value,this.value,"text");break;case"value":this.updateVal(this.value,s.value,"value"),this.addValidInputClass(),!this.closePopupOnSelect&&this.isPopupOpen()&&this.refreshPopup(),this.preventChange=this.isAngular&&this.preventChange?!this.preventChange:this.preventChange;break;case"width":this.setWidth(i.width),this.popupObj.setProperties({width:this.calcPopupWidth()});break;case"placeholder":this.refreshPlaceHolder();break;case"filterBarPlaceholder":this.allowFiltering&&this.notify("filterBarPlaceholder",{filterBarPlaceholder:i.filterBarPlaceholder});break;case"delimiterChar":"Box"!==this.mode&&this.updateDelimView(),this.updateData(i.delimiterChar);break;case"cssClass":this.updateOldPropCssClass(s.cssClass),this.updateCssClass(),this.calculateWidth();break;case"enableRtl":this.enableRTL(i.enableRtl),e.prototype.onPropertyChanged.call(this,i,s);break;case"readonly":this.updateReadonly(i.readonly),this.hidePopup();break;case"enabled":this.hidePopup(),this.enable(i.enabled);break;case"showSelectAll":this.popupObj&&(this.popupObj.destroy(),this.popupObj=null),this.renderPopup();break;case"showDropDownIcon":this.dropDownIcon();break;case"floatLabelType":this.setFloatLabelType(),this.addValidInputClass(),n.Input.createSpanElement(this.overAllWrapper,this.createElement),this.calculateWidth(),t.isNullOrUndefined(this.overAllWrapper)||t.isNullOrUndefined(this.overAllWrapper.getElementsByClassName("e-ddl-icon")[0]&&this.overAllWrapper.getElementsByClassName("e-float-text-content")[0]&&"Never"!==this.floatLabelType)||this.overAllWrapper.getElementsByClassName("e-float-text-content")[0].classList.add("e-icon");break;case"enableSelectionOrder":break;case"selectAllText":this.notify("selectAllText",!1);break;case"popupHeight":if(this.popupObj){var a=parseInt(this.popupHeight,10);"auto"!==this.popupHeight?(this.list.style.maxHeight=t.formatUnit(a),this.popupWrapper.style.maxHeight=t.formatUnit(this.popupHeight)):this.list.style.maxHeight=t.formatUnit(this.popupHeight)}break;case"headerTemplate":case"footerTemplate":this.reInitializePoup();break;case"allowFiltering":"CheckBox"===this.mode&&this.popupObj&&this.reInitializePoup(),this.updateSelectElementData(this.allowFiltering);break;case"fields":t.isNullOrUndefined(this.fields.groupBy)&&this.removeScrollEvent();break;default:var h=this.getPropObject(r,i,s);e.prototype.onPropertyChanged.call(this,h.newProperty,h.oldProperty)}}},s.prototype.reInitializePoup=function(){this.popupObj&&(this.popupObj.destroy(),this.popupObj=null),this.renderPopup()},s.prototype.presentItemValue=function(e){for(var i=[],s=0;s<this.value.length;s++)this.findListElement(this.allowFiltering&&!t.isNullOrUndefined(this.mainList)?this.mainList:e,"li","data-value",this.value[s])||i.push(this.value[s]);return i},s.prototype.addNonPresentItems=function(e,t,i,s){var l=this;this.dataSource.executeQuery(this.getForQuery(e)).then(function(e){e.result.length>0&&l.addItem(e.result,i.length),l.updateActionList(t,i,s)})},s.prototype.updateVal=function(e,s,l){if(this.list)if(!(this.dataSource instanceof i.DataManager)||this.listData&&this.mainList&&this.mainData){var n=[];if(t.isNullOrUndefined(this.value)||this.allowCustomValue||(n=this.presentItemValue(this.ulElement)),"value"==l&&n.length>0&&this.dataSource instanceof i.DataManager&&!t.isNullOrUndefined(this.value)&&null!=this.listData)this.mainData=null,this.setDynValue=!0,this.addNonPresentItems(n,this.ulElement,this.listData);else{if("text"===l&&(this.initialTextUpdate(),e=this.value),(t.isNullOrUndefined(this.value)||0===this.value.length)&&(this.tempValues=s),this.allowCustomValue&&("Default"===this.mode||"Box"===this.mode)&&this.isReact&&this.inputFocus&&this.isPopupOpen()&&this.mainData!==this.listData){var o=this.mainList.cloneNode?this.mainList.cloneNode(!0):this.mainList;this.onActionComplete(o,this.mainData)}this.initialValueUpdate(),"Box"===this.mode||this.inputFocus||this.updateDelimView(),this.inputFocus||this.refreshInputHight(),this.refreshPlaceHolder(),"CheckBox"!==this.mode&&this.changeOnBlur&&this.updateValueState(null,e,s),this.checkPlaceholderSize()}}else this.onLoadSelect();else this.onLoadSelect();this.changeOnBlur||this.updateValueState(null,e,s)},s.prototype.addItem=function(t,i){e.prototype.addItem.call(this,t,i)},s.prototype.hidePopup=function(e){var i=this;if(this.isPopupOpen()){var s={name:"FadeOut",duration:100,delay:100},l={popup:this.popupObj,cancel:!1,animation:s,event:e||null};this.trigger("close",l,function(e){e.cancel||(i.fields.groupBy&&"CheckBox"!==i.mode&&i.fixedHeaderElement&&(t.remove(i.fixedHeaderElement),i.fixedHeaderElement=null),i.beforePopupOpen=!1,i.overAllWrapper.classList.remove("e-icon-anim"),i.popupObj.hide(new t.Animation(e.animation)),t.attributes(i.inputElement,{"aria-expanded":"false"}),i.inputElement.removeAttribute("aria-owns"),i.inputElement.removeAttribute("aria-activedescendant"),i.allowFiltering&&i.notify("inputFocus",{module:"CheckBoxSelection",enable:"CheckBox"===i.mode,value:"clear"}),i.popupObj.hide(),t.removeClass([document.body,i.popupObj.element],"e-popup-full-page"),t.EventHandler.remove(i.list,"keydown",i.onKeyDown),"CheckBox"===i.mode&&i.showSelectAll&&t.EventHandler.remove(i.popupObj.element,"click",i.clickHandler))})}},s.prototype.showPopup=function(i){var s=this;if(this.enabled){var l={cancel:!1};this.trigger("beforeOpen",l,function(l){if(!l.cancel){if(!s.ulElement)return s.beforePopupOpen=!0,"CheckBox"===s.mode&&t.Browser.isDevice&&s.allowFiltering&&s.notify("popupFullScreen",{module:"CheckBoxSelection",enable:"CheckBox"===s.mode}),void e.prototype.render.call(s,i);"CheckBox"===s.mode&&t.Browser.isDevice&&s.allowFiltering&&s.notify("popupFullScreen",{module:"CheckBoxSelection",enable:"CheckBox"===s.mode});var n=s.ulElement.querySelectorAll("li.e-list-item").length,o=s.ulElement.querySelectorAll("li."+U.li+"."+ve).length;if(n>0&&n===o&&o===s.mainData.length&&(""===s.targetElement()||!s.allowCustomValue))return void(s.beforePopupOpen=!1);s.onPopupShown(i)}})}},s.prototype.selectAll=function(e){this.isSelectAll=!0,this.selectAllItems(e)},s.prototype.getModuleName=function(){return"multiselect"},s.prototype.clear=function(){var e=this;this.selectAll(!1),this.value&&this.value.length?setTimeout(function(){e.setProperties({value:null},!0)},0):this.setProperties({value:null},!0)},s.prototype.render=function(){t.isNullOrUndefined(this.value)||(this.value=this.value.slice()),this.setDynValue=this.initStatus=!1,this.isSelectAll=!1,this.selectAllEventEle=[],this.searchWrapper=this.createElement("span",{className:"e-searcher "+("Box"===this.mode?"e-multiselect-box":"")}),this.viewWrapper=this.createElement("span",{className:"e-delim-view e-delim-values",styles:"display:none;"}),this.overAllClear=this.createElement("span",{className:"e-chips-close e-close-hooker",styles:"display:none;"}),this.componentWrapper=this.createElement("div",{className:"e-multi-select-wrapper"}),this.overAllWrapper=this.createElement("div",{className:"e-multiselect e-input-group e-control-wrapper"}),"CheckBox"===this.mode&&t.addClass([this.overAllWrapper],"e-checkbox"),t.Browser.isDevice&&this.componentWrapper.classList.add("e-mob-wrapper"),this.setWidth(this.width),this.overAllWrapper.appendChild(this.componentWrapper),this.popupWrapper=this.createElement("div",{id:this.element.id+"_popup",className:"e-ddl e-popup e-multi-select-list-wrapper"}),this.popupWrapper.setAttribute("aria-label",this.element.id),this.popupWrapper.setAttribute("role","dialog"),"Delimiter"===this.mode||"CheckBox"===this.mode?(this.delimiterWrapper=this.createElement("span",{className:"e-delim-values",styles:"display:none"}),this.componentWrapper.appendChild(this.delimiterWrapper)):(this.chipCollectionWrapper=this.createElement("span",{className:"e-chips-collection",styles:"display:none"}),"Default"===this.mode?this.chipCollectionWrapper.setAttribute("id",t.getUniqueID("chip_default")):"Box"===this.mode&&this.chipCollectionWrapper.setAttribute("id",t.getUniqueID("chip_box")),this.componentWrapper.appendChild(this.chipCollectionWrapper)),"Box"!==this.mode&&this.componentWrapper.appendChild(this.viewWrapper),this.componentWrapper.appendChild(this.searchWrapper),this.showClearButton&&!t.Browser.isDevice?this.componentWrapper.appendChild(this.overAllClear):this.componentWrapper.classList.add("e-close-icon-hide"),this.dropDownIcon(),this.inputElement=this.createElement("input",{className:"e-dropdownbase",attrs:{spellcheck:"false",type:"text",autocomplete:"off",tabindex:"0",role:"combobox"}}),"Default"!==this.mode&&"Box"!==this.mode||this.inputElement.setAttribute("aria-describedby",this.chipCollectionWrapper.id),this.element.tagName!==this.getNgDirective()&&(this.element.style.display="none"),this.element.tagName===this.getNgDirective()?(this.element.appendChild(this.overAllWrapper),this.searchWrapper.appendChild(this.inputElement)):(this.element.parentElement.insertBefore(this.overAllWrapper,this.element),this.searchWrapper.appendChild(this.inputElement),this.searchWrapper.appendChild(this.element),this.element.removeAttribute("tabindex")),"Never"!==this.floatLabelType?v(this.overAllWrapper,this.searchWrapper,this.element,this.inputElement,this.value,this.floatLabelType,this.placeholder):"Never"===this.floatLabelType&&this.refreshPlaceHolder(),this.addValidInputClass(),this.element.style.opacity="";var e=this.element.getAttribute("id")?this.element.getAttribute("id"):t.getUniqueID("ej2_dropdownlist");this.element.id=e,this.hiddenElement=this.createElement("select",{attrs:{"aria-hidden":"true",class:"e-multi-hidden",tabindex:"-1",multiple:""}}),this.componentWrapper.appendChild(this.hiddenElement),this.validationAttribute(this.element,this.hiddenElement),"CheckBox"!==this.mode&&this.hideOverAllClear(),!t.isNullOrUndefined(t.closest(this.element,"fieldset"))&&t.closest(this.element,"fieldset").disabled&&(this.enabled=!1),this.wireEvent(),this.enable(this.enabled),this.enableRTL(this.enableRtl),this.checkInitialValue(),this.element.hasAttribute("data-val")&&this.element.setAttribute("data-val","false"),n.Input.createSpanElement(this.overAllWrapper,this.createElement),this.calculateWidth(),t.isNullOrUndefined(this.overAllWrapper)||t.isNullOrUndefined(this.overAllWrapper.getElementsByClassName("e-ddl-icon")[0]&&this.overAllWrapper.getElementsByClassName("e-float-text-content")[0]&&"Never"!==this.floatLabelType)||this.overAllWrapper.getElementsByClassName("e-float-text-content")[0].classList.add("e-icon"),this.renderComplete()},s.prototype.checkInitialValue=function(){var s=this,l=this.dataSource instanceof Array?this.dataSource.length>0:!t.isNullOrUndefined(this.dataSource);if((!this.value||!this.value.length)&&t.isNullOrUndefined(this.text)&&!l&&"SELECT"===this.element.tagName&&this.element.options.length>0){for(var n=this.element.options,o=[],r="",a=0,h=n.length;a<h;a++){var p=n[a];t.isNullOrUndefined(p.getAttribute("selected"))||(p.getAttribute("value")?o.push(p.getAttribute("value")):r+=p.text+this.delimiterChar)}o.length>0?this.setProperties({value:o},!0):""!==r&&this.setProperties({text:r},!0),(o.length>0||""!==r)&&(this.refreshInputHight(),this.refreshPlaceHolder())}(this.value&&this.value.length||!t.isNullOrUndefined(this.text))&&(this.list||e.prototype.render.call(this)),t.isNullOrUndefined(this.text)||!t.isNullOrUndefined(this.value)&&0!==this.value.length||this.initialTextUpdate(),this.value&&this.value.length?(this.dataSource instanceof i.DataManager?this.setInitialValue=function(){s.initStatus=!1,s.initialValueUpdate(),s.initialUpdate(),s.setInitialValue=null,s.initStatus=!0}:(this.initialValueUpdate(),this.initialUpdate()),this.updateTempValue()):this.initialUpdate(),this.initStatus=!0,this.checkAutoFocus(),t.isNullOrUndefined(this.text)||this.element.setAttribute("data-initial-value",this.text)},s.prototype.checkAutoFocus=function(){this.element.hasAttribute("autofocus")&&this.inputElement.focus()},s.prototype.setFloatLabelType=function(){y(this.overAllWrapper,this.componentWrapper,this.searchWrapper,this.inputElement,this.value,this.floatLabelType,this.placeholder),"Never"!==this.floatLabelType&&v(this.overAllWrapper,this.searchWrapper,this.element,this.inputElement,this.value,this.floatLabelType,this.placeholder)},s.prototype.addValidInputClass=function(){t.isNullOrUndefined(this.overAllWrapper)||(!t.isNullOrUndefined(this.value)&&this.value.length||"Always"===this.floatLabelType?t.addClass([this.overAllWrapper],"e-valid-input"):t.removeClass([this.overAllWrapper],"e-valid-input"))},s.prototype.dropDownIcon=function(){this.showDropDownIcon?(this.dropIcon=this.createElement("span",{className:"e-input-group-icon e-ddl-icon"}),this.componentWrapper.appendChild(this.dropIcon),t.addClass([this.componentWrapper],["e-down-icon"])):t.isNullOrUndefined(this.dropIcon)||(this.dropIcon.parentElement.removeChild(this.dropIcon),t.removeClass([this.componentWrapper],["e-down-icon"]))},s.prototype.initialUpdate=function(){"Box"===this.mode||this.setDynValue&&"Default"===this.mode&&this.inputFocus||this.updateDelimView(),this.updateCssClass(),this.updateHTMLAttribute(),this.updateReadonly(this.readonly),this.refreshInputHight(),this.checkPlaceholderSize()},s.prototype.destroy=function(){this.isReact&&this.clearTemplate(),this.popupObj&&this.popupObj.hide(),this.notify("destroy",{}),this.unwireListEvents(),this.unWireEvent(),this.list=null,this.popupObj=null,this.mainList=null,this.mainData=null,this.filterParent=null,this.ulElement=null,this.mainListCollection=null,e.prototype.destroy.call(this);var i=["readonly","aria-disabled","placeholder"],s=i.length;if(!t.isNullOrUndefined(this.inputElement))for(;s>0;)this.inputElement.removeAttribute(i[s-1]),s--;t.isNullOrUndefined(this.element)||(this.element.removeAttribute("data-initial-value"),this.element.style.display="block"),this.overAllWrapper&&this.overAllWrapper.parentElement&&(this.overAllWrapper.parentElement.tagName===this.getNgDirective()?t.remove(this.overAllWrapper):(this.overAllWrapper.parentElement.insertBefore(this.element,this.overAllWrapper),t.remove(this.overAllWrapper))),this.componentWrapper=null,this.overAllClear=null,this.overAllWrapper=null,this.hiddenElement=null,this.searchWrapper=null,this.viewWrapper=null,this.chipCollectionWrapper=null,this.targetInputElement=null,this.popupWrapper=null,this.inputElement=null,this.delimiterWrapper=null,this.popupObj=null,this.popupWrapper=null,this.liCollections=null,this.header=null,this.mainList=null,this.mainListCollection=null,this.footer=null,this.selectAllEventEle=null},me([t.Complex({text:null,value:null,iconCss:null,groupBy:null},V)],s.prototype,"fields",void 0),me([t.Property(!1)],s.prototype,"enablePersistence",void 0),me([t.Property(null)],s.prototype,"groupTemplate",void 0),me([t.Property("No records found")],s.prototype,"noRecordsTemplate",void 0),me([t.Property("Request failed")],s.prototype,"actionFailureTemplate",void 0),me([t.Property("None")],s.prototype,"sortOrder",void 0),me([t.Property(!0)],s.prototype,"enabled",void 0),me([t.Property(!0)],s.prototype,"enableHtmlSanitizer",void 0),me([t.Property([])],s.prototype,"dataSource",void 0),me([t.Property(null)],s.prototype,"query",void 0),me([t.Property("StartsWith")],s.prototype,"filterType",void 0),me([t.Property(1e3)],s.prototype,"zIndex",void 0),me([t.Property(!1)],s.prototype,"ignoreAccent",void 0),me([t.Property()],s.prototype,"locale",void 0),me([t.Property(!1)],s.prototype,"enableGroupCheckBox",void 0),me([t.Property(null)],s.prototype,"cssClass",void 0),me([t.Property("100%")],s.prototype,"width",void 0),me([t.Property("300px")],s.prototype,"popupHeight",void 0),me([t.Property("100%")],s.prototype,"popupWidth",void 0),me([t.Property(null)],s.prototype,"placeholder",void 0),me([t.Property(null)],s.prototype,"filterBarPlaceholder",void 0),me([t.Property({})],s.prototype,"htmlAttributes",void 0),me([t.Property(null)],s.prototype,"valueTemplate",void 0),me([t.Property(null)],s.prototype,"headerTemplate",void 0),me([t.Property(null)],s.prototype,"footerTemplate",void 0),me([t.Property(null)],s.prototype,"itemTemplate",void 0),me([t.Property(null)],s.prototype,"allowFiltering",void 0),me([t.Property(!0)],s.prototype,"changeOnBlur",void 0),me([t.Property(!1)],s.prototype,"allowCustomValue",void 0),me([t.Property(!0)],s.prototype,"showClearButton",void 0),me([t.Property(1e3)],s.prototype,"maximumSelectionLength",void 0),me([t.Property(!1)],s.prototype,"readonly",void 0),me([t.Property(null)],s.prototype,"text",void 0),me([t.Property(null)],s.prototype,"value",void 0),me([t.Property(!0)],s.prototype,"hideSelectedItem",void 0),me([t.Property(!0)],s.prototype,"closePopupOnSelect",void 0),me([t.Property("Default")],s.prototype,"mode",void 0),me([t.Property(",")],s.prototype,"delimiterChar",void 0),me([t.Property(!0)],s.prototype,"ignoreCase",void 0),me([t.Property(!1)],s.prototype,"showDropDownIcon",void 0),me([t.Property("Never")],s.prototype,"floatLabelType",void 0),me([t.Property(!1)],s.prototype,"showSelectAll",void 0),me([t.Property("Select All")],s.prototype,"selectAllText",void 0),me([t.Property("Unselect All")],s.prototype,"unSelectAllText",void 0),me([t.Property(!0)],s.prototype,"enableSelectionOrder",void 0),me([t.Property(!0)],s.prototype,"openOnClick",void 0),me([t.Property(!1)],s.prototype,"addTagOnBlur",void 0),me([t.Event()],s.prototype,"change",void 0),me([t.Event()],s.prototype,"removing",void 0),me([t.Event()],s.prototype,"removed",void 0),me([t.Event()],s.prototype,"beforeSelectAll",void 0),me([t.Event()],s.prototype,"selectedAll",void 0),me([t.Event()],s.prototype,"beforeOpen",void 0),me([t.Event()],s.prototype,"open",void 0),me([t.Event()],s.prototype,"close",void 0),me([t.Event()],s.prototype,"blur",void 0),me([t.Event()],s.prototype,"focus",void 0),me([t.Event()],s.prototype,"chipSelection",void 0),me([t.Event()],s.prototype,"filtering",void 0),me([t.Event()],s.prototype,"tagging",void 0),me([t.Event()],s.prototype,"customValueSelection",void 0),s=me([t.NotifyPropertyChanges],s)}(F),Ce=function(){function e(e){this.activeLi=[],this.activeEle=[],this.parent=e,this.removeEventListener(),this.addEventListener()}return e.prototype.getModuleName=function(){return"CheckBoxSelection"},e.prototype.addEventListener=function(){this.parent.isDestroyed||(this.parent.on("updatelist",this.listSelection,this),this.parent.on("listoption",this.listOption,this),this.parent.on("selectAll",this.setSelectAll,this),this.parent.on("checkSelectAll",this.checkSelectAll,this),this.parent.on("searchBox",this.setSearchBox,this),this.parent.on("blur",this.onBlurHandler,this),this.parent.on("targetElement",this.targetElement,this),this.parent.on("deviceSearchBox",this.setDeviceSearchBox,this),this.parent.on("inputFocus",this.getFocus,this),this.parent.on("reOrder",this.setReorder,this),this.parent.on("activeList",this.getActiveList,this),this.parent.on("selectAllText",this.setLocale,this),this.parent.on("filterBarPlaceholder",this.setPlaceholder,this),t.EventHandler.add(document,"mousedown",this.onDocumentClick,this),this.parent.on("addItem",this.checboxCreate,this),this.parent.on("popupFullScreen",this.setPopupFullScreen,this))},e.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off("updatelist",this.listSelection),this.parent.off("listoption",this.listOption),this.parent.off("selectAll",this.setSelectAll),this.parent.off("checkSelectAll",this.checkSelectAll),this.parent.off("searchBox",this.setSearchBox),this.parent.off("blur",this.onBlurHandler),this.parent.off("targetElement",this.targetElement),this.parent.off("deviceSearchBox",this.setDeviceSearchBox),this.parent.off("inputFocus",this.getFocus),this.parent.off("reOrder",this.setReorder),this.parent.off("activeList",this.getActiveList),this.parent.off("selectAllText",this.setLocale),this.parent.off("filterBarPlaceholder",this.setPlaceholder),this.parent.off("addItem",this.checboxCreate),this.parent.off("popupFullScreen",this.setPopupFullScreen))},e.prototype.listOption=function(e){var i=this;if(t.isNullOrUndefined(this.parent.listCurrentOptions.itemCreated))this.parent.listCurrentOptions.itemCreated=function(e){i.checboxCreate(e)};else{var s=this.parent.listCurrentOptions.itemCreated;this.parent.listCurrentOptions.itemCreated=function(e){i.checboxCreate(e),s.apply(i,[e])}}},e.prototype.setPlaceholder=function(e){n.Input.setPlaceholder(e.filterBarPlaceholder,this.filterInput)},e.prototype.checboxCreate=function(e){var i;if(i=t.isNullOrUndefined(e.item)?e:e.item,this.parent.enableGroupCheckBox||"e-list-group-item "!==i.className&&"e-list-group-item"!==i.className){var s=r.createCheckBox(this.parent.createElement,!0),l=t.select("div.e-icons",i);return i.insertBefore(s,i.childNodes[t.isNullOrUndefined(l)?0:1]),t.select(".e-frame",s),this.parent.enableGroupCheckBox&&this.parent.popupWrapper.classList.add("e-multiselect-group"),i}return i},e.prototype.setSelectAll=function(){this.parent.showSelectAll?(t.isNullOrUndefined(this.checkAllParent)&&(this.checkAllParent=this.parent.createElement("div",{className:"e-selectall-parent"}),this.selectAllSpan=this.parent.createElement("span",{className:"e-all-text"}),this.selectAllSpan.textContent="",this.checkAllParent.appendChild(this.selectAllSpan),this.setLocale(),this.checboxCreate(this.checkAllParent),this.parent.headerTemplate&&(t.isNullOrUndefined(this.parent.filterParent)?t.append([this.checkAllParent],this.parent.popupWrapper):t.append([this.checkAllParent],this.parent.filterParent)),this.parent.headerTemplate||(t.isNullOrUndefined(this.parent.filterParent)?t.prepend([this.checkAllParent],this.parent.popupWrapper):this.parent.filterParent.parentNode.insertBefore(this.checkAllParent,this.parent.filterParent.nextSibling)),t.EventHandler.add(this.checkAllParent,"mousedown",this.clickHandler,this)),this.parent.list.classList.contains("e-nodata")||this.parent.listData&&this.parent.listData.length<=1&&!this.parent.isDynamicDataChange||this.parent.isDynamicDataChange&&this.parent.listData&&this.parent.listData.length<=1?this.checkAllParent.style.display="none":this.checkAllParent.style.display="block",this.parent.selectAllHeight=this.checkAllParent.getBoundingClientRect().height):t.isNullOrUndefined(this.checkAllParent)||(this.checkAllParent.parentElement.removeChild(this.checkAllParent),this.checkAllParent=null)},e.prototype.destroy=function(){this.removeEventListener(),t.EventHandler.remove(document,"mousedown",this.onDocumentClick),this.checkAllParent=null,this.clearIconElement=null,this.filterInput=null,this.filterInputObj=null,this.checkWrapper=null,this.selectAllSpan=null},e.prototype.listSelection=function(e){var i;if(t.isNullOrUndefined(e.e)){var s=e.li.querySelector(".e-checkbox-wrapper");i=s?s.childNodes[1]:e.li.lastElementChild.childNodes[1]}else{e.li.querySelector(".e-checkbox-wrapper .e-frame");i=t.isNullOrUndefined(e.e.target)?e.li.querySelector(".e-checkbox-wrapper").childNodes[1]:e.e.target.classList.contains("e-frame")&&(!this.parent.showSelectAll||this.checkAllParent&&!this.checkAllParent.contains(e.e.target))?e.e.target:e.li.querySelector(".e-checkbox-wrapper").childNodes[1]}if((this.parent.itemTemplate||this.parent.enableGroupCheckBox)&&(i=e.li.firstElementChild.childNodes[1]),t.isNullOrUndefined(i)||(this.checkWrapper=t.closest(i,".e-checkbox-wrapper")),!t.isNullOrUndefined(this.checkWrapper)){var l=t.select(".e-frame",this.checkWrapper);this.validateCheckNode(this.checkWrapper,l.classList.contains("e-check"),e.li,e.e,!1)}},e.prototype.validateCheckNode=function(e,t,i,s,l){this.changeState(e,t?"uncheck":"check",s,!0,l)},e.prototype.clickHandler=function(e){var i;i=e.currentTarget.classList.contains(this.checkAllParent.className)||e.currentTarget.classList.value===this.checkAllParent.className?e.currentTarget.firstElementChild.lastElementChild:e.currentTarget,this.checkWrapper=t.closest(i,".e-checkbox-wrapper");if(!t.isNullOrUndefined(this.checkWrapper)){var s=t.select(".e-frame",this.checkWrapper);this.validateCheckNode(this.checkWrapper,s.classList.contains("e-check"),null,e,!0)}e.preventDefault()},e.prototype.changeState=function(e,i,s,l,n){var o=e.getElementsByClassName("e-frame")[0];"check"!==i||o.classList.contains("e-check")?"uncheck"===i&&(o.classList.contains("e-check")||o.classList.contains("e-stop"))?(t.removeClass([o],["e-check","e-stop"]),n&&(this.parent.selectAllItems(!1,s),this.setLocale())):"indeterminate"!==i||o.classList.contains("e-stop")||(t.removeClass([o],["e-check"]),o.classList.add("e-stop"),n&&(this.parent.selectAllItems(!1,s),this.setLocale())):(o.classList.remove("e-stop"),o.classList.add("e-check"),n&&(this.parent.selectAllItems(!0,s),this.setLocale(!0)))},e.prototype.setSearchBox=function(e){if(t.isNullOrUndefined(this.parent.filterParent)){this.parent.filterParent=this.parent.createElement("span",{className:"e-filter-parent"}),this.filterInput=this.parent.createElement("input",{attrs:{type:"text"},className:"e-input-filter"}),this.parent.element.parentNode.insertBefore(this.filterInput,this.parent.element);var i=!1;return t.Browser.isDevice&&(i=!0,this.parent.mobFilter=!1),this.filterInputObj=n.Input.createInput({element:this.filterInput,buttons:i?["e-input-group-icon e-back-icon e-icons","e-input-group-icon e-clear-icon e-icons"]:["e-input-group-icon e-clear-icon e-icons"],properties:{placeholder:this.parent.filterBarPlaceholder}},this.parent.createElement),t.isNullOrUndefined(this.parent.cssClass)||(-1!==this.parent.cssClass.split(" ").indexOf("e-outline")?t.addClass([this.filterInputObj.container],"e-outline"):-1!==this.parent.cssClass.split(" ").indexOf("e-filled")&&t.addClass([this.filterInputObj.container],"e-filled")),t.append([this.filterInputObj.container],this.parent.filterParent),t.prepend([this.parent.filterParent],e.popupElement),t.attributes(this.filterInput,{"aria-disabled":"false",role:"combobox",autocomplete:"off",autocapitalize:"off",spellcheck:"false","aria-label":"multiselect","aria-expanded":"true","aria-controls":e.popupElement.id}),this.clearIconElement=this.filterInput.parentElement.querySelector(".e-clear-icon"),!t.Browser.isDevice&&this.clearIconElement&&(t.EventHandler.add(this.clearIconElement,"mousedown",this.clearText,this),this.clearIconElement.style.visibility="hidden"),t.EventHandler.add(this.filterInput,"input",this.parent.onInput,this.parent),t.EventHandler.add(this.filterInput,"keyup",this.parent.keyUp,this.parent),t.EventHandler.add(this.filterInput,"keydown",this.parent.onKeyDown,this.parent),t.EventHandler.add(this.filterInput,"blur",this.onBlurHandler,this),t.EventHandler.add(this.filterInput,"paste",this.parent.pasteHandler,this.parent),this.parent.searchBoxHeight=this.filterInputObj.container.parentElement.getBoundingClientRect().height,this.filterInputObj}},e.prototype.clickOnBackIcon=function(e){this.parent.hidePopup(),t.removeClass([document.body,this.parent.popupObj.element],"e-popup-full-page"),this.parent.inputElement.focus()},e.prototype.clearText=function(e){this.parent.targetInputElement.value="",this.parent.allowFiltering&&""===this.parent.targetInputElement.value&&this.parent.search(null),this.parent.refreshPopup(),this.parent.refreshListItems(null),this.clearIconElement.style.visibility="hidden",this.filterInput.focus(),this.setReorder(e),e.preventDefault()},e.prototype.setDeviceSearchBox=function(){this.parent.popupObj.element.classList.add("e-ddl-device"),this.parent.popupObj.element.classList.add("e-ddl-device-filter"),this.parent.popupObj.position={X:0,Y:0},this.parent.popupObj.dataBind(),this.setSearchBoxPosition(),this.backIconElement=this.filterInputObj.container.querySelector(".e-back-icon"),this.clearIconElement=this.filterInputObj.container.querySelector(".e-clear-icon"),this.clearIconElement.style.visibility="hidden",t.EventHandler.add(this.backIconElement,"click",this.clickOnBackIcon,this),t.EventHandler.add(this.clearIconElement,"click",this.clearText,this)},e.prototype.setSearchBoxPosition=function(){var e=this.filterInput.parentElement.getBoundingClientRect().height,i=0;this.checkAllParent&&(i=this.checkAllParent.getBoundingClientRect().height),this.parent.popupObj.element.style.maxHeight="100%",this.parent.popupObj.element.style.width="100%",this.parent.list.style.maxHeight=window.innerHeight-e-i+"px",this.parent.list.style.height=window.innerHeight-e-i+"px";var s=this.filterInput.parentElement.querySelector(".e-clear-icon");t.detach(this.filterInput),s.parentElement.insertBefore(this.filterInput,s)},e.prototype.setPopupFullScreen=function(){this.parent&&this.parent.popupObj&&(t.attributes(this.parent.popupObj.element,{style:"left:0px;right:0px;top:0px;bottom:0px;"}),t.addClass([document.body,this.parent.popupObj.element],"e-popup-full-page"),this.parent.popupObj.element.style.maxHeight="100%",this.parent.popupObj.element.style.width="100%")},e.prototype.targetElement=function(){return t.isNullOrUndefined(this.clearIconElement)||(this.parent.targetInputElement=this.filterInput,this.clearIconElement.style.visibility=""===this.parent.targetInputElement.value?"hidden":"visible"),this.parent.targetInputElement.value},e.prototype.onBlurHandler=function(e){if(!this.parent.element.classList.contains("e-listbox")){var i=void 0;if(this.parent.keyAction)return;if(t.Browser.isIE&&(i=!t.isNullOrUndefined(e)&&e.target),t.Browser.isIE||(i=!t.isNullOrUndefined(e)&&e.relatedTarget),this.parent.popupObj&&document.body.contains(this.parent.popupObj.element)&&this.parent.popupObj.element.contains(i)&&!t.Browser.isIE&&this.filterInput)return void this.filterInput.focus();if(this.parent.scrollFocusStatus&&this.filterInput)return e.preventDefault(),this.filterInput.focus(),void(this.parent.scrollFocusStatus=!1);this.parent.popupObj&&document.body.contains(this.parent.popupObj.element)&&!this.parent.popupObj.element.classList.contains("e-popup-close")&&(this.parent.inputFocus=!1,this.parent.updateValueState(e,this.parent.value,this.parent.tempValues),this.parent.dispatchEvent(this.parent.hiddenElement,"change")),this.parent.popupObj&&document.body.contains(this.parent.popupObj.element)&&!this.parent.popupObj.element.classList.contains("e-popup-close")&&(this.parent.inputFocus=!1,this.parent.overAllWrapper.classList.remove("e-input-focus"),this.parent.trigger("blur"),this.parent.focused=!0),this.parent.popupObj&&document.body.contains(this.parent.popupObj.element)&&!this.parent.popupObj.element.classList.contains("e-popup-close")&&!t.Browser.isDevice&&this.parent.hidePopup()}},e.prototype.onDocumentClick=function(e){if("listbox"!==this.parent.getLocaleName()){var i=e.target;!t.isNullOrUndefined(this.parent.popupObj)&&t.closest(i,'[id="'+this.parent.popupObj.element.id+'"]')&&(this.filterInput&&""!==this.filterInput.value||e.preventDefault()),!t.isNullOrUndefined(this.parent.popupObj)&&t.closest(i,'[id="'+this.parent.popupObj.element.id+'"]')||t.isNullOrUndefined(this.parent.overAllWrapper)||this.parent.overAllWrapper.contains(e.target)?this.parent.scrollFocusStatus=(t.Browser.isIE||"edge"===t.Browser.info.name)&&document.activeElement===this.filterInput:(this.parent.overAllWrapper.classList.contains(U.focus)||this.parent.isPopupOpen())&&(this.parent.inputFocus=!1,this.parent.scrollFocusStatus=!1,this.parent.hidePopup(),this.parent.onBlurHandler(e,!0),this.parent.focused=!0),t.isNullOrUndefined(this.parent.overAllWrapper)||this.parent.overAllWrapper.contains(e.target)||!this.parent.overAllWrapper.classList.contains("e-input-focus")||this.parent.isPopupOpen()||(t.Browser.isIE?this.parent.onBlurHandler():this.parent.onBlurHandler(e)),this.filterInput===i&&this.filterInput.focus()}},e.prototype.getFocus=function(e){if(this.parent.overAllWrapper.classList.remove("e-input-focus"),this.parent.keyAction&&"clear"!==e.value&&"focus"!==e.value)return void(this.parent.keyAction=!1);"focus"===e.value&&(this.filterInput.focus(),this.parent.removeFocus(),t.EventHandler.remove(this.parent.list,"keydown",this.parent.onKeyDown)),"clear"===e.value&&(this.filterInput.value="",this.clearIconElement.style.visibility="hidden")},e.prototype.checkSelectAll=function(e){"check"===e.value&&(this.changeState(this.checkAllParent,e.value,null,null,!1),this.setLocale(!0)),"uncheck"===e.value&&(this.changeState(this.checkAllParent,e.value,null,null,!1),this.setLocale()),"indeterminate"===e.value&&(this.changeState(this.checkAllParent,e.value,null,null,!1),this.setLocale())},e.prototype.setLocale=function(e){if("Select All"!==this.parent.selectAllText||"Unselect All"!==this.parent.unSelectAllText){var i=e?this.parent.unSelectAllText:this.parent.selectAllText;this.selectAllSpan.textContent="";for(var s=t.compile(i),l=e?"unSelectAllText":"selectAllText",n=0,o=s({},this.parent,l,null,!this.parent.isStringTemplate);n<o.length;n++){var r=o[n];this.selectAllSpan.textContent=r.textContent}}else{var a={selectAllText:"Select All",unSelectAllText:"Unselect All"},h=new t.L10n(this.parent.getLocaleName(),{},this.parent.locale);""===h.getConstant("selectAllText")&&(h=new t.L10n("dropdowns",a,this.parent.locale)),this.selectAllSpan.textContent=e?h.getConstant("unSelectAllText"):h.getConstant("selectAllText")}},e.prototype.getActiveList=function(e){e.li.classList.contains("e-active")?this.activeLi.push(e.li.cloneNode(!0)):this.activeLi.splice(e.index,1)},e.prototype.setReorder=function(e){if(this.parent.enableSelectionOrder&&!t.isNullOrUndefined(this.parent.value)){var i=this.parent.ulElement.querySelectorAll("li.e-active").length,s=void 0,l=this.parent.createElement("ul",{className:"e-list-parent e-ul e-reorder"});i>0&&(this.parent.ulElement.querySelectorAll("li.e-active").forEach(function(e){l.appendChild(e)}),s=this.parent.ulElement.querySelectorAll("li.e-active"),t.addClass(s,"e-reorder-hide"),t.prepend([l],this.parent.list)),this.parent.focusAtFirstListItem()}},e}(),be=function(){var e=function(t,i){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)t.hasOwnProperty(i)&&(e[i]=t[i])})(t,i)};return function(t,i){function s(){this.constructor=t}e(t,i),t.prototype=null===i?Object.create(i):(s.prototype=i.prototype,new s)}}(),Ee=function(e,t,i,s){var l,n=arguments.length,o=n<3?t:null===s?s=Object.getOwnPropertyDescriptor(t,i):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(e,t,i,s);else for(var r=e.length-1;r>=0;r--)(l=e[r])&&(o=(n<3?l(o):n>3?l(t,i,o):l(t,i))||o);return n>3&&o&&Object.defineProperty(t,i,o),o},Se=function(e){function i(){return null!==e&&e.apply(this,arguments)||this}return be(i,e),Ee([t.Property("Multiple")],i.prototype,"mode",void 0),Ee([t.Property(!1)],i.prototype,"showCheckbox",void 0),Ee([t.Property(!1)],i.prototype,"showSelectAll",void 0),Ee([t.Property("Left")],i.prototype,"checkboxPosition",void 0),i}(t.ChildProperty),xe=function(e){function i(){return null!==e&&e.apply(this,arguments)||this}return be(i,e),Ee([t.Property([])],i.prototype,"items",void 0),Ee([t.Property("Right")],i.prototype,"position",void 0),i}(t.ChildProperty),Ie=function(e){function o(t,i){var s=e.call(this,t,i)||this;return s.isValidKey=!1,s.isDataSourceUpdate=!1,s.keyDownStatus=!1,s}be(o,e),a=o,o.prototype.addItem=function(t,i){e.prototype.addItem.call(this,t,i)},o.prototype.render=function(){if(this.isAngular&&this.allowFiltering){var i=this.element,s=i.cloneNode(!0);i.parentNode.replaceChild(s,i),this.element=s,t.setValue("ej2_instances",[this],this.element)}this.inputString="",this.initLoad=!0,this.isCustomFiltering=!1,this.initialSelectedOptions=this.value,this.inputFormName=this.element.getAttribute("name"),e.prototype.render.call(this),this.setEnabled(),this.renderComplete()},o.prototype.initWrapper=function(){var e=this.createElement("select",{className:"e-hidden-select",attrs:{multiple:""}});e.style.visibility="hidden",this.list.classList.add("e-listbox-wrapper"),this.list.querySelector(".e-list-parent").setAttribute("role","presentation");for(var i=this.list.querySelectorAll(".e-list-group-item"),s=0;s<i.length;s++)i[s].removeAttribute("tabindex"),i[s].setAttribute("role","option");this.itemTemplate&&this.list.classList.add("e-list-template"),this.list.classList.add("e-wrapper"),this.list.classList.add("e-lib"),"EJS-LISTBOX"===this.element.tagName?(this.element.setAttribute("tabindex","0"),this.initLoad&&this.element.appendChild(this.list)):(this.initLoad&&this.element.parentElement.insertBefore(this.list,this.element),this.list.insertBefore(this.element,this.list.firstChild),this.element.style.display="none"),this.list.insertBefore(e,this.list.firstChild),this.list.getElementsByClassName("e-list-item")[0]&&this.list.getElementsByClassName("e-list-item")[0].classList.remove(U.focus),this.itemTemplate&&this.renderReactTemplates(),t.removeClass([this.list],[U.content,U.root]),this.validationAttribute(this.element,e),this.list.setAttribute("role","listbox"),t.attributes(this.list,{role:"listbox","aria-label":"listbox","aria-multiselectable":"Multiple"===this.selectionSettings.mode?"true":"false"}),this.updateSelectionSettings()},o.prototype.updateSelectionSettings=function(){if(this.selectionSettings.showCheckbox&&this.selectionSettings.showSelectAll&&this.liCollections.length){var e=new t.L10n(this.getModuleName(),{selectAllText:"Select All",unSelectAllText:"Unselect All"},this.locale);this.showSelectAll=!0,this.selectAllText=e.getConstant("selectAllText"),this.unSelectAllText=e.getConstant("unSelectAllText"),this.popupWrapper=this.list,this.checkBoxSelectionModule.checkAllParent=null,this.notify("selectAll",{})}},o.prototype.initDraggable=function(){var e=this;this.ulElement&&(this.ulElement.id=this.element.id+"_parent"),this.allowDragAndDrop&&new s.Sortable(this.ulElement,{scope:this.scope,itemClass:"e-list-item",dragStart:this.triggerDragStart.bind(this),drag:this.triggerDrag.bind(this),beforeDrop:this.beforeDragEnd.bind(this),drop:this.dragEnd.bind(this),placeHolder:function(){return e.createElement("span",{className:"e-placeholder"})},helper:function(t){var i=e.list.cloneNode(),s=t.sender.cloneNode(!0);i.appendChild(s);var n=e.getItems()[0];return i.style.width=n.offsetWidth+"px",i.style.height=n.offsetHeight+"px",(e.value&&e.value.length)>1&&e.isSelected(s)&&s.appendChild(e.createElement("span",{className:"e-list-badge",innerHTML:e.value.length+""})),i.style.zIndex=l.getZindexPartial(e.element)+"",i}})},o.prototype.updateActionCompleteData=function(e,t,i){this.jsonData.splice(i,0,t)},o.prototype.initToolbar=function(){var e=this.toolbarSettings.position,i=this.element.getAttribute("data-value");if(this.toolbarSettings.items.length){var s=this.createElement("div",{className:"e-listbox-tool",attrs:{role:"toolbar"}}),l=this.createElement("div",{className:"e-listboxtool-wrapper e-lib e-"+e.toLowerCase()});this.list.parentElement.insertBefore(l,this.list),l.appendChild("Right"===e?this.list:s),l.appendChild("Right"===e?s:this.list),this.createButtons(s),this.element.id||(this.element.id=t.getUniqueID("e-"+this.getModuleName())),this.scope?document.querySelector(this.scope).setAttribute("data-value",this.element.id):this.updateToolBarState()}var n=this.element.getAttribute("data-value");i&&n&&i!==n?(this.tBListBox=t.getComponent(document.getElementById(i),this.getModuleName()),this.tBListBox.updateToolBarState()):n&&(this.tBListBox=t.getComponent(document.getElementById(n),this.getModuleName()),this.tBListBox.updateToolBarState())},o.prototype.createButtons=function(e){var i,s,l,n=this,o=new t.L10n(this.getModuleName(),{moveUp:"Move Up",moveDown:"Move Down",moveTo:"Move To",moveFrom:"Move From",moveAllTo:"Move All To",moveAllFrom:"Move All From"},this.locale);this.toolbarSettings.items.forEach(function(t){l=o.getConstant(t),s=n.createElement("button",{attrs:{type:"button","data-value":t,title:l,"aria-label":l}}),e.appendChild(s),(i=new r.Button({iconCss:"e-icons e-"+t.toLowerCase()},s)).createElement=n.createElement})},o.prototype.validationAttribute=function(t,i){this.inputFormName&&t.setAttribute("name",this.inputFormName),e.prototype.validationAttribute.call(this,t,i),i.required=t.required,t.required=!1},o.prototype.setHeight=function(){(this.toolbarSettings.items.length?this.list.parentElement:this.list).style.height=t.formatUnit(this.height),this.allowFiltering&&this.height.toString().indexOf("%")<0?t.addClass([this.list],"e-filter-list"):t.removeClass([this.list],"e-filter-list")},o.prototype.setCssClass=function(){var e=this.toolbarSettings.items.length?this.list.parentElement:this.list;this.cssClass&&t.addClass([e],this.cssClass.replace(/\s+/g," ").trim().split(" ")),this.enableRtl&&t.addClass([this.list],"e-rtl")},o.prototype.setEnable=function(){var e=this.toolbarSettings.items.length?this.list.parentElement:this.list;this.enabled?t.removeClass([e],s.cssClass.disabled):t.addClass([e],s.cssClass.disabled)},o.prototype.showSpinner=function(){this.spinner||(this.spinner=this.createElement("div",{className:"e-listbox-wrapper"})),this.spinner.style.height=t.formatUnit(this.height),this.element.parentElement.insertBefore(this.spinner,this.element.nextSibling),l.createSpinner({target:this.spinner},this.createElement),l.showSpinner(this.spinner)},o.prototype.hideSpinner=function(){this.spinner.querySelector(".e-spinner-pane")&&l.hideSpinner(this.spinner),this.spinner.parentElement&&t.detach(this.spinner)},o.prototype.onInput=function(){this.isDataSourceUpdate=!1,this.keyDownStatus?this.isValidKey=!0:this.isValidKey=!1,this.keyDownStatus=!1,this.refreshClearIcon()},o.prototype.clearText=function(){this.filterInput.value="",this.refreshClearIcon();var e=document.createEvent("KeyboardEvent");this.isValidKey=!0,this.KeyUp(e)},o.prototype.refreshClearIcon=function(){this.filterInput.parentElement.querySelector("."+we.clearIcon)&&(this.filterInput.parentElement.querySelector("."+we.clearIcon).style.visibility=""===this.filterInput.value?"hidden":"visible")},o.prototype.onActionComplete=function(i,s,l){var n,o,r;if(this.allowFiltering&&this.list.getElementsByClassName("e-filter-parent")[0]&&(n=this.list.getElementsByClassName("e-filter-parent")[0].cloneNode(!0)),0===s.length){var a=i.childNodes[0];a&&i.removeChild(a)}if(this.allowFiltering&&(o=this.list.getElementsByClassName("e-input-filter")[0])&&(r=o.selectionStart),e.prototype.onActionComplete.call(this,i,s,l),this.allowFiltering&&!t.isNullOrUndefined(n)){this.list.insertBefore(n,this.list.firstElementChild),this.filterParent=this.list.getElementsByClassName("e-filter-parent")[0],this.filterWireEvents(n);var h=n.querySelector(".e-input-filter");h&&(h.addEventListener("focus",function(){n.childNodes[0].classList.contains("e-input-focus")||n.childNodes[0].classList.add("e-input-focus")}),h.addEventListener("blur",function(){n.childNodes[0].classList.contains("e-input-focus")&&n.childNodes[0].classList.remove("e-input-focus")}))}if(this.initWrapper(),this.setSelection(),this.initDraggable(),this.mainList=this.ulElement,this.initLoad?(this.jsonData=[],t.extend(this.jsonData,s,[]),this.initToolbarAndStyles(),this.wireEvents(),this.showCheckbox&&this.setCheckboxPosition(),this.allowFiltering&&this.setFiltering()):(this.isDataSourceUpdate&&(this.jsonData=[],t.extend(this.jsonData,s,[]),this.isDataSourceUpdate=!1),this.allowFiltering&&((o=this.list.getElementsByClassName("e-input-filter")[0]).selectionStart=r,o.selectionEnd=r,o.focus())),this.toolbarSettings.items.length&&this.scope&&this.scope.indexOf("#")>-1&&!t.isNullOrUndefined(l)){var p=this.scope.replace("#","");t.getComponent(document.getElementById(p),this.getModuleName()).initToolbar()}this.initLoad=!1},o.prototype.initToolbarAndStyles=function(){this.initToolbar(),this.setCssClass(),this.setEnable(),this.setHeight()},o.prototype.triggerDragStart=function(e){var i,s=this;e=t.extend(this.getDragArgs(e),{dragSelected:!0}),t.Browser.isIos&&(this.list.style.overflow="hidden"),this.trigger("dragStart",e,function(e){s.allowDragAll=e.dragSelected,s.allowDragAll||(i=s.ulElement.getElementsByClassName("e-list-badge")[0])&&t.detach(i)})},o.prototype.triggerDrag=function(e){var t,i,s=this,l=10;if(this.itemTemplate&&e.target)if(e.target&&e.target.closest(".e-list-item"))l=e.target.closest(".e-list-item").scrollHeight;else{var n=e.element.querySelector(".e-list-item");n&&(l=n.scrollHeight)}var o,r=e.event;this.stopTimer(),e.target&&(e.target.classList.contains("e-listbox-wrapper")||e.target.classList.contains("e-list-item")||e.target.classList.contains("e-filter-parent")||e.target.classList.contains("e-input-group")||e.target.closest(".e-list-item"))&&(o=e.target.classList.contains("e-list-item")||e.target.classList.contains("e-filter-parent")||e.target.classList.contains("e-input-group")||e.target.closest(".e-list-item")?e.target.closest(".e-listbox-wrapper"):e.target,(i=(t=this.allowFiltering?o.querySelector(".e-list-parent"):o).getBoundingClientRect()).y+t.offsetHeight-(r.clientY+36)<1?this.timer=window.setInterval(function(){s.setScrollDown(t,l,!0)},70):r.clientY-36-i.y<1&&(this.timer=window.setInterval(function(){s.setScrollDown(t,l,!1)},70))),null!==e.target&&this.trigger("drag",this.getDragArgs(e))},o.prototype.setScrollDown=function(e,t,i){e.scrollTop=i?e.scrollTop+t:e.scrollTop-t},o.prototype.stopTimer=function(){window.clearInterval(this.timer)},o.prototype.beforeDragEnd=function(e){this.stopTimer();var i=[];this.dragValue=this.getFormattedValue(e.droppedElement.getAttribute("data-value")),this.value.indexOf(this.dragValue)>-1?e.items=this.getDataByValues(this.value):e.items=this.getDataByValues([this.dragValue]),t.extend(i,e.items),this.trigger("beforeDrop",e),e.items!==i&&(this.customDraggedItem=e.items)},o.prototype.dragEnd=function(e){var i,s,l,n,o,r,a=this,h=this.getFormattedValue(e.droppedElement.getAttribute("data-value")),p=this.getComponent(e.droppedElement),u=this.getDragArgs({target:e.droppedElement},!0),d={previousData:this.dataSource},c={previousData:p.dataSource},m=t.extend({},u,{target:e.target,source:{previousData:this.dataSource},previousIndex:e.previousIndex,currentIndex:e.currentIndex});if(p!==this){L=t.extend(d,{currentData:this.listData});m=t.extend(m,{source:L,destination:c})}t.Browser.isIos&&(this.list.style.overflow="");var f=this.getComponent(e.target);if(f&&0===f.listData.length){var v=f.ulElement.childNodes[0];v&&f.ulElement.removeChild(v)}if(p===this){var g=this.ulElement;i=[].slice.call(this.listData),s=[].slice.call(this.liCollections),l=[].slice.call(this.jsonData),r=[].slice.call(this.sortedData);var y=e.currentIndex,C=e.currentIndex=this.getCurIdx(this,e.currentIndex),b=i.indexOf(this.getDataByValue(h)),E=l.indexOf(this.getDataByValue(h)),S=r.indexOf(this.getDataByValue(h));i.splice(C,0,i.splice(b,1)[0]),r.splice(y,0,r.splice(S,1)[0]),l.splice(C,0,l.splice(E,1)[0]),s.splice(C,0,s.splice(b,1)[0]),this.allowDragAll&&(o=this.value&&Array.prototype.indexOf.call(this.value,h)>-1?this.value:[h],t.isNullOrUndefined(this.customDraggedItem)||(o=[],this.customDraggedItem.forEach(function(e){o.push(t.getValue(a.fields.value,e))})),o.forEach(function(e){if(e!==h){var t=i.indexOf(a.getDataByValue(e)),n=l.indexOf(a.getDataByValue(e)),o=r.indexOf(a.getDataByValue(e));t>C&&C++,l.splice(C,0,l.splice(n,1)[0]),i.splice(C,0,i.splice(t,1)[0]),r.splice(y,0,r.splice(o,1)[0]),s.splice(C,0,s.splice(t,1)[0]),g.insertBefore(a.getItems()[a.getIndexByValue(e)],g.getElementsByClassName("e-placeholder")[0])}})),this.listData=i,this.jsonData=l,this.sortedData=r,this.liCollections=s}else{var x,I=[].slice.call(this.liCollections),w=e.currentIndex=this.getCurIdx(p,e.currentIndex),O=p.ulElement;i=[].slice.call(p.listData),s=[].slice.call(p.liCollections),l=[].slice.call(p.jsonData),r=[].slice.call(p.sortedData),o=this.value&&Array.prototype.indexOf.call(this.value,h)>-1&&this.allowDragAll?this.value:[h],t.isNullOrUndefined(this.customDraggedItem)||(o=[],this.customDraggedItem.forEach(function(e){o.push(t.getValue(a.fields.value,e))}));var A=[].slice.call(this.listData),k=[].slice.call(this.sortedData);if(o.forEach(function(t,o){n=a.getDataByValue(t);var p=a.listData.indexOf(n),u=a.jsonData.indexOf(n),d=a.sortedData.indexOf(n);A.splice(p,1),a.jsonData.splice(u,1),k.splice(d,1),a.listData=A,a.sortedData=k;var c=t===h?e.currentIndex:w;if(i.splice(c,0,n),l.splice(c,0,n),r.splice(c,0,n),s.splice(c,0,I.splice(p,1)[0]),t)x=a.getItems()[a.getIndexByValue(t)];else for(var m=a.getItems(),f=0;f<m.length;f++)if(null===m[f].getAttribute("data-value")&&m[f].classList.contains("e-list-item")){x=m[f];break}x||(x=e.helper),a.removeSelected(a,t===h?[e.droppedElement]:[x]),O.insertBefore(x,O.getElementsByClassName("e-placeholder")[0]),w++}),this.fields.groupBy){N=this.renderItems(this.listData,this.fields);this.updateListItems(N,this.ulElement),this.setSelection()}if("None"!==p.sortOrder||this.selectionSettings.showCheckbox!==p.selectionSettings.showCheckbox||p.fields.groupBy||p.itemTemplate||this.itemTemplate){var D=t.getComponent(O,"sortable"),N=p.renderItems(i,p.fields);p.updateListItems(N,O),this.setSelection(),D.placeHolderElement&&O.appendChild(D.placeHolderElement),O.appendChild(e.helper),p.setSelection()}this.liCollections=I,p.liCollections=s,p.jsonData=t.extend([],[],l,!1),p.listData=t.extend([],[],i,!1),p.sortedData=t.extend([],[],r,!1),0===this.listData.length&&this.l10nUpdate()}if(this===p){var L=t.extend(d,{currentData:i});m=t.extend(m,{source:L})}else{var T=t.extend(c,{currentData:i});m=t.extend(m,{destination:T})}t.isNullOrUndefined(this.customDraggedItem)||(m.items=this.customDraggedItem),this.trigger("drop",m);var B=m.elements;if(B.length)for(var P=0;P<B.length;P++)B[P].classList.remove("e-grabbed")},o.prototype.updateListItems=function(e,t){for(t.innerHTML="";0<e.childNodes.length;)t.appendChild(e.childNodes[0])},o.prototype.removeSelected=function(e,i){e.selectionSettings.showCheckbox?i.forEach(function(e){e.getElementsByClassName("e-frame")[0].classList.remove("e-check")}):t.removeClass(i,s.cssClass.selected)},o.prototype.getCurIdx=function(e,t){return e.fields.groupBy&&(t-=[].slice.call(e.ulElement.children).slice(0,t).filter(function(e){return e.classList.contains(s.cssClass.group)}).length),t},o.prototype.getComponent=function(e){var i,s="EJS-LISTBOX"===this.element.tagName?t.closest(e,".e-listbox"):t.closest(e,".e-listbox-wrapper")&&t.closest(e,".e-listbox-wrapper").querySelector(".e-listbox");return s&&(i=t.getComponent(s,this.getModuleName())),i},o.prototype.setEnabled=function(){this.element.setAttribute("aria-disabled",this.enabled?"false":"true")},o.prototype.listOption=function(i,s){return this.listCurrentOptions=e.prototype.listOption.call(this,i,s),this.listCurrentOptions=t.extend({},this.listCurrentOptions,{itemCreated:this.triggerBeforeItemRender.bind(this)},!0),this.notify("listoption",{module:"CheckBoxSelection"}),this.listCurrentOptions},o.prototype.triggerBeforeItemRender=function(e){e.item.setAttribute("tabindex","-1"),this.trigger("beforeItemRender",{element:e.item,item:e.curData})},o.prototype.requiredModules=function(){var e=[];return this.selectionSettings.showCheckbox&&e.push({member:"CheckBoxSelection",args:[this]}),e},o.prototype.enableItems=function(e,i,l){var n=this;void 0===i&&(i=!0);var o;e.forEach(function(e){var r=e;(o=n.findListElement(n.list,"li","data-value",l?r:n.getValueByText(r)))&&(i?(t.removeClass([o],s.cssClass.disabled),o.removeAttribute("aria-disabled")):(t.addClass([o],s.cssClass.disabled),o.setAttribute("aria-disabled","true")))})},o.prototype.selectItems=function(e,i,l){void 0===i&&(i=!0),i&&!this.selectionSettings.showCheckbox&&"Single"===this.selectionSettings.mode&&this.getSelectedItems().forEach(function(e){e.classList.remove("e-active"),e.removeAttribute("aria-selected"),t.removeClass([e],s.cssClass.selected)}),this.setSelection(e,i,!l),this.updateSelectedOptions();for(var n=[],o=0;o<e.length;o++)for(var r=this.list.querySelectorAll('[aria-selected="true"]'),a=0;a<r.length;a++)e[o]===this.getFormattedValue(r[a].getAttribute("data-value"))&&n.push(r[a]);this.triggerChange(n,null)},o.prototype.selectAll=function(e){void 0===e&&(e=!0),this.selectAllItems(e)},o.prototype.addItems=function(t,i){e.prototype.addItem.call(this,t,i)},o.prototype.removeItems=function(e,t){this.removeItem(e,t)},o.prototype.removeItem=function(e,i){var s=[],l=this.list.querySelectorAll("."+U.li);if(e){e=e instanceof Array?e:[e];var n=this.fields,o=void 0,r=[],a=void 0;t.extend(r,[],this.jsonData);for(var h=[],p=[],u=0;u<e.length;u++){o=e[u]instanceof Object?t.getValue(n.value,e[u]):e[u].toString();for(var d=0,c=r.length;d<c;d++)if((r[d]instanceof Object?t.getValue(n.value,r[d]):r[d].toString())===o){var m=(a=this.getIndexByValue(o))===d?a:d;s.push(l[m]),h.push(m),p.push(m)}}for(f=h.length-1;f>=0;f--)this.listData.splice(h[f],1);for(f=h.length-1;f>=0;f--)this.jsonData.splice(h[f],1);for(var f=p.length-1;f>=0;f--)this.updateLiCollection(p[f])}else i=i||0,s.push(l[i]),this.listData.splice(i,1),this.jsonData.splice(i,1),this.updateLiCollection(i);for(d=0;d<s.length;d++)this.ulElement.removeChild(s[d]);0===this.listData.length&&this.l10nUpdate(),this.value=[],this.updateToolBarState()},o.prototype.getDataByValues=function(e){for(var t=[],i=0;i<e.length;i++)t.push(this.getDataByValue(e[i]));return t},o.prototype.moveUp=function(e){var t=e?this.getElemByValue(e):this.getSelectedItems();this.moveUpDown(!0,!1,t)},o.prototype.moveDown=function(e){var t=e?this.getElemByValue(e):this.getSelectedItems();this.moveUpDown(!1,!1,t)},o.prototype.moveTop=function(e){var t=e?this.getElemByValue(e):this.getSelectedItems();this.moveUpDown(null,!1,t,!0)},o.prototype.moveBottom=function(e){var t=e?this.getElemByValue(e):this.getSelectedItems();this.moveUpDown(!0,!1,t,!1,!0)},o.prototype.moveTo=function(e,i,s){var l=e?this.getElemByValue(e):this.getSelectedItems(),n=s?t.getComponent(s,a):this.getScopedListBox();this.moveData(this,n,!1,l,i)},o.prototype.moveAllTo=function(e,i){if(this.listData.length>0){var s=e?t.getComponent(e,a):this.getScopedListBox();this.moveAllData(this,s,!1,i)}},o.prototype.getDataList=function(){return this.jsonData},o.prototype.getSortedList=function(){var e,t;if(e=t=this.sortedData,this.fields.groupBy){e=[];for(var i=0;i<t.length;i++)t[i].isHeader||e.push(t[i])}return e},o.prototype.getElemByValue=function(e){for(var t=[],i=0;i<e.length;i++)t.push(this.ulElement.querySelector('[data-value ="'+e[i]+'"]'));return t},o.prototype.updateLiCollection=function(e){var t=[].slice.call(this.liCollections);t.splice(e,1),this.liCollections=t},o.prototype.selectAllItems=function(e,t){var i=this;if([].slice.call(this.getItems()).forEach(function(t){if(!t.classList.contains(s.cssClass.disabled))if(i.selectionSettings.showCheckbox){var l=t.getElementsByClassName("e-check")[0];(!l&&e||l&&!e)&&(i.notify("updatelist",{li:t,module:"listbox"}),i.maximumSelectionLength>=i.list.querySelectorAll(".e-list-item span.e-check").length&&i.checkMaxSelection())}else e?t.classList.add(s.cssClass.selected):t.classList.remove(s.cssClass.selected)}),this.updateSelectedOptions(),this.allowFiltering&&this.selectionSettings.showCheckbox){var l=this.list.getElementsByTagName("li"),n=0;if(e){var o=this;for(n=0;n<l.length;n++)!function(){var e=o.getFormattedValue(l[n].getAttribute("data-value"));o.value.some(function(t){return t===e})||o.value.push(o.getFormattedValue(l[n].getAttribute("data-value")))}()}else{var r=this;for(n=0;n<l.length;n++)!function(){var e=r.getFormattedValue(l[n].getAttribute("data-value"));r.value=r.value.filter(function(t){return t!==e})}()}document.querySelectorAll("ul").length<2&&this.updateMainList()}this.triggerChange(this.getSelectedItems(),t)},o.prototype.updateMainList=function(){var e=this.mainList.querySelectorAll(".e-list-item"),t=this.ulElement.querySelectorAll(".e-list-item"),i=e.length,s=t.length;if(this.selectionSettings.showCheckbox||document.querySelectorAll("ul").length>1||i!==s){var l=0,n=0,o=0;for(l;l<i;){if(this.value)for(n;n<this.value.length;n++)e[l].getAttribute("data-value")===this.value[n]&&o++;!o&&this.selectionSettings.showCheckbox&&e[l].getElementsByClassName("e-frame")[0].classList.remove("e-check"),document.querySelectorAll("ul").length>1&&o&&i!==s?(this.mainList.removeChild(this.mainList.getElementsByTagName("li")[l]),l=0):l++,o=0,n=0}}},o.prototype.wireEvents=function(){var e=t.closest(this.element,"form"),i="EJS-LISTBOX"===this.element.tagName?this.element:this.list;t.EventHandler.add(this.list,"click",this.clickHandler,this),t.EventHandler.add(i,"keydown",this.keyDownHandler,this),t.EventHandler.add(i,"focusout",this.focusOutHandler,this),this.wireToolbarEvent(),this.selectionSettings.showCheckbox&&t.EventHandler.remove(document,"mousedown",this.checkBoxSelectionModule.onDocumentClick),(this.fields.groupBy||this.element.querySelector("select>optgroup"))&&t.EventHandler.remove(this.list,"scroll",this.setFloatingHeader),e&&t.EventHandler.add(e,"reset",this.formResetHandler,this)},o.prototype.wireToolbarEvent=function(){this.toolbarSettings.items.length&&t.EventHandler.add(this.getToolElem(),"click",this.toolbarClickHandler,this)},o.prototype.unwireEvents=function(){var e=t.closest(this.element,"form"),i="EJS-LISTBOX"===this.element.tagName?this.element:this.list;t.EventHandler.remove(this.list,"click",this.clickHandler),t.EventHandler.remove(i,"keydown",this.keyDownHandler),t.EventHandler.remove(i,"focusout",this.focusOutHandler),this.allowFiltering&&this.clearFilterIconElem&&t.EventHandler.remove(this.clearFilterIconElem,"click",this.clearText),this.toolbarSettings.items.length&&t.EventHandler.remove(this.getToolElem(),"click",this.toolbarClickHandler),e&&t.EventHandler.remove(e,"reset",this.formResetHandler)},o.prototype.clickHandler=function(e){this.selectHandler(e)},o.prototype.checkSelectAll=function(){for(var e=0,t=this.list.querySelectorAll("li."+U.li),i=0;i<t.length;i++)t[i].classList.contains("e-disabled")||e++;var s=this.getSelectedItems().length;this.showSelectAll&&e&&this.notify("checkSelectAll",{module:"CheckBoxSelection",value:e===s?"check":0===s?"uncheck":"indeterminate"})},o.prototype.getQuery=function(e){var t=e?e.clone():this.query?this.query.clone():new i.Query;if(this.allowFiltering){var s=""===this.inputString?"contains":this.filterType,l=this.typeOfData(this.dataSource).typeof;if(null===l&&(l=this.typeOfData(this.jsonData).typeof),(this.dataSource instanceof i.DataManager||"string"!==l)&&"number"!==l){var n=this.fields.text?this.fields.text:"";t.where(n,s,this.inputString,this.ignoreCase,this.ignoreAccent)}else t.where("",s,this.inputString,this.ignoreCase,this.ignoreAccent)}else t=e||(this.query?this.query:new i.Query);return t},o.prototype.setFiltering=function(){var e;if(this.initLoad||t.isNullOrUndefined(this.filterParent))return this.filterParent=this.createElement("span",{className:we.filterParent}),this.filterInput=this.createElement("input",{attrs:{type:"text"},className:we.filterInput}),this.element.parentNode.insertBefore(this.filterInput,this.element),e=n.Input.createInput({element:this.filterInput,buttons:[we.filterBarClearIcon],properties:{placeholder:this.filterBarPlaceholder}},this.createElement),t.append([e.container],this.filterParent),t.prepend([this.filterParent],this.list),t.attributes(this.filterInput,{"aria-disabled":"false","aria-label":"search list item",autocomplete:"off",autocorrect:"off",autocapitalize:"off",spellcheck:"false",role:"textbox"}),this.height.toString().indexOf("%")<0&&t.addClass([this.list],"e-filter-list"),this.inputString=this.filterInput.value,this.filterWireEvents(),e},o.prototype.filterWireEvents=function(e){e&&(this.filterInput=e.querySelector(".e-input-filter")),this.clearFilterIconElem=this.filterInput.parentElement.querySelector("."+we.clearIcon),this.clearFilterIconElem&&(t.EventHandler.add(this.clearFilterIconElem,"click",this.clearText,this),e||(this.clearFilterIconElem.style.visibility="hidden")),t.EventHandler.add(this.filterInput,"input",this.onInput,this),t.EventHandler.add(this.filterInput,"keyup",this.KeyUp,this),t.EventHandler.add(this.filterInput,"keydown",this.onKeyDown,this)},o.prototype.selectHandler=function(e,i){var l,n=!0,o=t.closest(e.target,".e-list-item"),r=[o];if(o&&o.parentElement){if(l=[].slice.call(o.parentElement.children).indexOf(o),this.selectionSettings.showCheckbox?n=!o.getElementsByClassName("e-frame")[0].classList.contains("e-check"):(e.ctrlKey||e.metaKey||t.Browser.isDevice)&&this.isSelected(o)?(o.classList.remove(s.cssClass.selected),o.removeAttribute("aria-selected"),n=!1):"Multiple"===this.selectionSettings.mode&&(e.ctrlKey||e.metaKey||t.Browser.isDevice)||(this.getSelectedItems().forEach(function(e){e.removeAttribute("aria-selected")}),t.removeClass(this.getSelectedItems(),s.cssClass.selected)),e.shiftKey&&!this.selectionSettings.showCheckbox&&"Single"!==this.selectionSettings.mode?r=[].slice.call(o.parentElement.children).slice(Math.min(l,this.prevSelIdx),Math.max(l,this.prevSelIdx)+1).filter(function(e){return e.classList.contains("e-list-item")}):this.prevSelIdx=[].slice.call(o.parentElement.children).indexOf(o),n?(this.selectionSettings.showCheckbox||t.addClass(r,s.cssClass.selected),r.forEach(function(e){e.setAttribute("aria-selected","true")}),this.list.setAttribute("aria-activedescendant",o.id)):r.forEach(function(e){e.setAttribute("aria-selected","false")}),i||!(this.maximumSelectionLength>(this.value&&this.value.length))&&n||!(this.maximumSelectionLength>=(this.value&&this.value.length))&&n||this.maximumSelectionLength<(this.value&&this.value.length)||this.notify("updatelist",{li:o,e:e,module:"listbox"}),this.allowFiltering&&!i){var a=this.getFormattedValue(o.getAttribute("data-value"));if(n){var h=[];t.extend(h,this.value),h.push(a),this.value=h}else this.value=this.value.filter(function(e){return e!==a});document.querySelectorAll("ul").length<2&&this.updateMainList()}this.updateSelectedOptions(),this.triggerChange(this.getSelectedItems(),e),this.list&&this.checkMaxSelection()}},o.prototype.triggerChange=function(e,t){this.trigger("change",{elements:e,items:this.getDataByElements(e),value:this.value,event:t})},o.prototype.getDataByElems=function(e){for(var t=[],i=0,s=e.length;i<s;i++)t.push(this.getDataByValue(this.getFormattedValue(e[i].getAttribute("data-value"))));return t},o.prototype.getDataByElements=function(e){var i,s=[],l=0;if(!t.isNullOrUndefined(this.listData)){var n=this.typeOfData(this.listData).typeof;if("string"===n||"number"===n||"boolean"===n)for(var o=0,r=this.listData;o<r.length;o++){for(var a=r[o],h=l,p=e.length;h<p;h++)if(i=this.getFormattedValue(e[h].getAttribute("data-value")),!t.isNullOrUndefined(a)&&a===i){l=h,s.push(a);break}if(e.length===s.length)break}else for(var u=0,d=this.listData;u<d.length;u++){for(var a=d[u],h=l,p=e.length;h<p;h++)if(i=this.getFormattedValue(e[h].getAttribute("data-value")),!t.isNullOrUndefined(a)&&t.getValue(this.fields.value?this.fields.value:"value",a)===i){l=h,s.push(a);break}if(e.length===s.length)break}return s}return null},o.prototype.checkMaxSelection=function(){var e=this.list.querySelectorAll(".e-list-item span.e-check").length;if(this.selectionSettings.showCheckbox){var t=0,i=this.list.getElementsByClassName("e-list-item");for(t;t<i.length;t++)i[t].querySelector(".e-frame.e-check")||(e===this.maximumSelectionLength?i[t].classList.add("e-disable"):i[t].classList.contains("e-disable")&&i[t].classList.remove("e-disable"))}},o.prototype.toolbarClickHandler=function(e){var i=t.closest(e.target,"button");if(i){if(this.toolbarAction=i.getAttribute("data-value"),i.disabled)return;switch(this.toolbarAction){case"moveUp":this.moveUpDown(!0);break;case"moveDown":this.moveUpDown();break;case"moveTo":this.moveItemTo();break;case"moveFrom":this.moveItemFrom();break;case"moveAllTo":this.moveAllItemTo();break;case"moveAllFrom":this.moveAllItemFrom();break;default:this.trigger("actionBegin",{cancel:!1,items:this.getDataByElems(this.getSelectedItems()),eventName:this.toolbarAction})}}},o.prototype.moveUpDown=function(e,t,i,l,n){var o=this,r=this.getSelectedItems();if(i&&(r=i),!(e&&this.isSelected(this.ulElement.firstElementChild)||!e&&this.isSelected(this.ulElement.lastElementChild))||i){var a=this.getDataByElems(r),h={cancel:!1,items:a,eventName:this.toolbarAction};this.trigger("actionBegin",h),h.cancel||((e?r:r.reverse()).forEach(function(t){var i=Array.prototype.indexOf.call(o.ulElement.querySelectorAll(".e-list-item"),t),r=Array.prototype.indexOf.call(o.ulElement.children,t);l?(s.moveTo(o.ulElement,o.ulElement,[r],0),o.changeData(r,0,i,t)):n?(s.moveTo(o.ulElement,o.ulElement,[r],o.ulElement.querySelectorAll(".e-list-item").length),o.changeData(r,o.ulElement.querySelectorAll(".e-list-item").length,i,t)):(s.moveTo(o.ulElement,o.ulElement,[r],e?r-1:r+2),o.changeData(r,e?r-1:r+1,e?i-1:i+1,t))}),this.trigger("actionComplete",{items:a,eventName:this.toolbarAction}),r[0].focus(),!t&&this.toolbarSettings.items.length&&this.getToolElem().querySelector("[data-value="+(e?"moveUp":"moveDown")+"]").focus(),this.updateToolBarState())}},o.prototype.moveItemTo=function(){this.moveData(this,this.getScopedListBox())},o.prototype.moveItemFrom=function(){this.moveData(this.getScopedListBox(),this)},o.prototype.moveData=function(e,i,l,n,o){var r=[],a=[],h=[],p=[],u=[].slice.call(e.listData),d=[].slice.call(i.listData),c=[].slice.call(e.sortedData),m=[].slice.call(i.sortedData),f=[].slice.call(e.liCollections),v=[],g=[].slice.call(i.liCollections),y=[],C=[],b=e.getSelectedItems();n&&(b=n);var E="None"!==i.sortOrder||i.selectionSettings.showCheckbox!==e.selectionSettings.showCheckbox||i.fields.groupBy||i.itemTemplate||e.itemTemplate;if(e.value=[],b.length){this.removeSelected(e,b),b.forEach(function(t){r.push(Array.prototype.indexOf.call(e.ulElement.children,t)),v.push(Array.prototype.indexOf.call(e.ulElement.querySelectorAll(".e-list-item"),t)),a.push(Array.prototype.indexOf.call(e.listData,e.getDataByElems([t])[0])),p.push(Array.prototype.indexOf.call(e.sortedData,e.getDataByElems([t])[0])),h.push(Array.prototype.indexOf.call(e.jsonData,e.getDataByElems([t])[0]))}),"None"!==this.sortOrder?p.forEach(function(t){y.push(e.sortedData[t])}):h.forEach(function(t){y.push(e.jsonData[t])});var S={cancel:!1,items:y,eventName:this.toolbarAction};if(e.trigger("actionBegin",S),S.cancel)return;var x=[];if(v.sort(function(e,t){return e-t}).reverse().forEach(function(e){x.push(f.splice(e,1)[0])}),e.liCollections=f,o){var I=g.splice(0,o);i.liCollections=I.concat(x.reverse()).concat(g)}else i.liCollections=g.concat(x.reverse());if(0===i.listData.length){var w=i.ulElement.childNodes[0];w&&i.ulElement.removeChild(w)}if(a.sort(function(e,t){return t-e}).forEach(function(e){u.splice(e,1)[0]}),p.sort(function(e,t){return t-e}).forEach(function(e){c.splice(e,1)[0]}),h.slice().reverse().forEach(function(t){C.push(e.jsonData.splice(t,1)[0])}),E)if(e.fields.groupBy){k=e.renderItems(u,e.fields);e.updateListItems(k,e.ulElement)}else b.forEach(function(e){t.detach(e)});else s.moveTo(e.ulElement,i.ulElement,r,o),e.trigger("actionComplete",{items:y,eventName:this.toolbarAction});i.mainList.childElementCount!==i.jsonData.length&&(i.mainList=i.ulElement);var O=[].slice.call(i.jsonData);m=[].slice.call(i.sortedData),this.selectNextList(b,v,a,e),l&&this.list.focus(),e.listData=u,e.sortedData=c,o=o||d.length;for(var A=y.length-1;A>=0;A--)d.splice(o,0,y[A]),O.splice(o,0,y[A]),m.splice(o,0,y[A]);if(i.listData=d,i.jsonData=O,i.sortedData=m,E){var k=i.renderItems(d,i.fields);i.updateListItems(k,i.ulElement),i.setSelection(),e.trigger("actionComplete",{items:y,eventName:this.toolbarAction})}e.updateSelectedOptions(),0===e.listData.length&&e.l10nUpdate()}1===e.value.length&&e.getSelectedItems().length&&(e.value[0]=e.getFormattedValue(e.getSelectedItems()[0].getAttribute("data-value")))},o.prototype.selectNextList=function(e,t,i,l){var n,o,r=l.ulElement.querySelectorAll(".e-list-item").length,a=-1;1===e.length&&r&&!l.selectionSettings.showCheckbox&&(o=r<=t[0]?r-1:t[0],n=l.ulElement.querySelectorAll(".e-list-item")[o],(a=l.getValidIndex(n,o,r===i[0]?38:40))>-1&&l.ulElement.querySelectorAll(".e-list-item")[a].classList.add(s.cssClass.selected))},o.prototype.moveAllItemTo=function(){this.moveAllData(this,this.getScopedListBox())},o.prototype.moveAllItemFrom=function(){this.moveAllData(this.getScopedListBox(),this)},o.prototype.moveAllData=function(e,t,i,l){var n=[].slice.call(t.listData),o=[].slice.call(t.jsonData),r="None"!==t.sortOrder||t.selectionSettings.showCheckbox!==e.selectionSettings.showCheckbox||t.fields.groupBy||t.itemTemplate||e.itemTemplate;this.removeSelected(e,e.getSelectedItems());var a=[].slice.call(e.listData),h={cancel:!1,items:a,eventName:this.toolbarAction};if(e.trigger("actionBegin",h),!h.cancel){if(0===t.listData.length&&(p=t.ulElement.childNodes[0])&&t.ulElement.removeChild(p),r){var p=e.ulElement.childNodes[0];p&&e.ulElement.removeChild(p)}s.moveTo(e.ulElement,t.ulElement,Array.apply(null,{length:e.ulElement.childElementCount}).map(Number.call,Number),l),this.trigger("actionComplete",{items:a,eventName:this.toolbarAction}),i&&this.list.focus(),l=l||n.length;for(f=0;f<e.listData.length;f++)n.splice(l+f,0,e.listData[f]);for(f=0;f<e.jsonData.length;f++)o.splice(l+f,0,e.jsonData[f]);var u=[].slice.call(e.liCollections),d=[].slice.call(t.liCollections);if(e.liCollections=[],l){var c=d.splice(0,l);t.liCollections=c.concat(u).concat(d)}else t.liCollections=d.concat(u);e.value=[];for(var m=(n=n.filter(function(e){return!0!==e.isHeader})).filter(function(e){return-1===t.jsonData.indexOf(e)}),f=0;f<m.length;f++)t.jsonData.splice(l+f,0,m[f]);if(t.listData=n,e.listData.length===e.jsonData.length)e.listData=e.sortedData=e.jsonData=[];else if(e.allowFiltering){for(f=0;f<e.listData.length;f++)for(var v=0;v<e.jsonData.length;v++)e.listData[f]===e.jsonData[v]&&e.jsonData.splice(v,1);e.listData=e.sortedData=[]}if(r){var g=t.renderItems(n,t.fields);t.updateListItems(g,t.ulElement),this.trigger("actionComplete",{items:a,eventName:this.toolbarAction})}else t.sortedData=n;e.updateSelectedOptions(),0===e.listData.length&&e.l10nUpdate()}},o.prototype.changeData=function(e,t,i,s){var l=[].slice.call(this.listData),n=[].slice.call(this.jsonData),o=[].slice.call(this.sortedData),r=Array.prototype.indexOf.call(this.jsonData,this.getDataByElems([s])[0]),a=Array.prototype.indexOf.call(this.sortedData,this.getDataByElems([s])[0]),h=[].slice.call(this.liCollections);l.splice(t,0,l.splice(e,1)[0]),n.splice(i,0,n.splice(r,1)[0]),o.splice(t,0,o.splice(a,1)[0]),h.splice(t,0,h.splice(e,1)[0]),this.listData=l,this.jsonData=n,this.liCollections=h,this.sortedData=o},o.prototype.getSelectedItems=function(){var e=[];return this.selectionSettings.showCheckbox?[].slice.call(this.ulElement.getElementsByClassName("e-check")).forEach(function(i){e.push(t.closest(i,".e-list-item"))}):e=[].slice.call(this.ulElement.getElementsByClassName(s.cssClass.selected)),e},o.prototype.getScopedListBox=function(){var e,i=this;return this.scope&&[].slice.call(document.querySelectorAll(this.scope)).forEach(function(s){t.getComponent(s,i.getModuleName())&&(e=t.getComponent(s,i.getModuleName()))}),e},o.prototype.getGrabbedItems=function(e){for(var t=!1,i=0;i<this.value.length;i++)if(this.value[i]===this.getFormattedValue(e.target.getAttribute("data-value"))){t=!0;break}if(t)for(i=0;i<this.value.length;i++)for(var s=this.list.querySelectorAll('[aria-selected="true"]'),l=0;l<s.length;l++)this.value[i]===this.getFormattedValue(s[l].getAttribute("data-value"))&&s[l].classList.add("e-grabbed");return this.isAngular?Array.prototype.slice.call(this.element.getElementsByClassName("e-list-parent")[0].querySelectorAll(".e-grabbed")):Array.prototype.slice.call(this.element.nextElementSibling.querySelectorAll(".e-grabbed"))},o.prototype.getDragArgs=function(e,t){var i=this.getGrabbedItems(e);return i.length?t&&i.push(e.target):i=[e.target],{elements:i,items:this.getDataByElems(i)}},o.prototype.onKeyDown=function(e){this.keyDownHandler(e),e.stopPropagation()},o.prototype.keyDownHandler=function(e){if([32,35,36,37,38,39,40,65].indexOf(e.keyCode)>-1&&(!this.allowFiltering||this.allowFiltering&&e.target!==this.filterInput)){if(e.target&&e.target.className.indexOf("e-edit-template")>-1)return;if(e.preventDefault(),32===e.keyCode&&this.ulElement.children.length)this.selectHandler({target:this.ulElement.getElementsByClassName("e-focused")[0],ctrlKey:e.ctrlKey,shiftKey:e.shiftKey});else if(65===e.keyCode&&e.ctrlKey)this.selectAll();else if((38===e.keyCode||40===e.keyCode)&&e.ctrlKey&&e.shiftKey)this.moveUpDown(38===e.keyCode,!0);else if(!this.toolbarSettings.items.length&&!this.tBListBox||39!==e.keyCode&&37!==e.keyCode||!e.ctrlKey)37!==e.keyCode&&39!==e.keyCode&&"KeyA"!==e.code&&this.upDownKeyHandler(e);else{var t=this.tBListBox||this.getScopedListBox();39===e.keyCode?e.shiftKey?this.moveAllData(this,t,!0):this.moveData(this,t,!0):e.shiftKey?this.moveAllData(t,this,!0):this.moveData(t,this,!0)}}else this.allowFiltering&&(40!==e.keyCode&&38!==e.keyCode||this.upDownKeyHandler(e))},o.prototype.upDownKeyHandler=function(e){var i=this.ulElement,l=40===e.keyCode||36===e.keyCode?0:i.childElementCount-1,n=i.getElementsByClassName("e-focused")[0]||i.getElementsByClassName(s.cssClass.selected)[0];if(n){if(35!==e.keyCode&&36!==e.keyCode&&(l=Array.prototype.indexOf.call(i.children,n),40===e.keyCode?l++:l--,l<0||l>i.childElementCount-1))return;t.removeClass([n],"e-focused")}var o=i.children[l];if(o){if(-1===(l=this.getValidIndex(o,l,e.keyCode)))return void t.addClass([n],"e-focused");if(i.children[l].focus(),i.children[l].classList.add("e-focused"),e.ctrlKey&&(this.selectionSettings.showCheckbox||!e.shiftKey||36!==e.keyCode&&35!==e.keyCode)||this.selectHandler({target:i.children[l],ctrlKey:e.ctrlKey,shiftKey:e.shiftKey},!0),this.selectionSettings.showCheckbox&&e.ctrlKey&&e.shiftKey&&(36===e.keyCode||35===e.keyCode))for(var r=Array.prototype.indexOf.call(i.children,n),a="Home"===e.code?0:r,h="Home"===e.code?r:i.children.length-1,p=a;p<=h;p++){var u=i.children[p];this.notify("updatelist",{li:u,e:{target:this.ulElement.getElementsByClassName("e-focused")[0],ctrlKey:e.ctrlKey,shiftKey:e.shiftKey},module:"listbox"})}}},o.prototype.KeyUp=function(e){var s=this;if(this.allowFiltering&&e.ctrlKey&&65===e.keyCode)return void e.preventDefault();var l=String.fromCharCode(e.keyCode).match(/\w/);if(t.isNullOrUndefined(l)||(this.isValidKey=!0),this.isValidKey=8===e.keyCode||46===e.keyCode||this.isValidKey,this.isValidKey&&(this.isValidKey=!1,e.keyCode,this.allowFiltering)){var n={preventDefaultAction:!1,text:this.targetElement(),updateData:function(e,t,i){n.cancel||(s.isFiltered=!0,s.remoteFilterAction=!0,s.dataUpdater(e,t,i))},event:e,cancel:!1};this.trigger("filtering",n,function(e){s.isDataFetched=!1,e.cancel||""!==s.filterInput.value&&s.isFiltered||(e.cancel||s.isCustomFiltering||e.preventDefaultAction||(s.inputString=s.filterInput.value,s.filteringAction(s.jsonData,new i.Query,s.fields)),s.isFiltered||s.isCustomFiltering||e.preventDefaultAction||s.dataUpdater(s.jsonData,new i.Query,s.fields))})}},o.prototype.filter=function(e,t,i){this.isCustomFiltering=!0,this.filteringAction(e,t,i)},o.prototype.filteringAction=function(e,t,i){this.resetList(e,i,t)},o.prototype.targetElement=function(){return this.targetInputElement=this.list.getElementsByClassName("e-input-filter")[0],this.targetInputElement.value},o.prototype.dataUpdater=function(e,t,i){this.isDataFetched=!1;if(""===this.targetElement().trim()){var s=this.mainList.cloneNode?this.mainList.cloneNode(!0):this.mainList;this.remoteCustomValue=!1,this.isAngular&&this.itemTemplate&&(s=this.renderItems(this.listData,i)),this.onActionComplete(s,this.jsonData),this.notify("reOrder",{module:"CheckBoxSelection",enable:this.selectionSettings.showCheckbox,e:this})}else this.resetList(e,i,t)},o.prototype.focusOutHandler=function(){var e=this.list.getElementsByClassName("e-focused")[0];e&&e.classList.remove("e-focused"),this.allowFiltering&&this.refreshClearIcon()},o.prototype.getValidIndex=function(e,t,i){var l=this.ulElement;return(e.classList.contains("e-disabled")||e.classList.contains(s.cssClass.group))&&(40===i||36===i?t++:t--),t<0||t===l.childElementCount?-1:(((e=l.childNodes[t]).classList.contains("e-disabled")||e.classList.contains(s.cssClass.group))&&(t=this.getValidIndex(e,t,i)),t)},o.prototype.updateSelectedOptions=function(){var e=this,i=[],s=[];if(t.extend(s,this.value),this.getSelectedItems().forEach(function(t){t.classList.contains("e-grabbed")||i.push(e.getFormattedValue(t.getAttribute("data-value")))}),this.mainList.childElementCount===this.ulElement.childElementCount)if(this.allowFiltering&&this.selectionSettings.showCheckbox){for(var l=0;l<i.length;l++)s.indexOf(i[l])>-1||s.push(i[l]);this.setProperties({value:s},!0)}else this.setProperties({value:i},!0);this.updateSelectTag(),this.updateToolBarState(),this.tBListBox&&this.tBListBox.updateToolBarState()},o.prototype.clearSelection=function(e){var t=this;if(void 0===e&&(e=this.value),this.selectionSettings.showCheckbox){var i;this.getSelectedItems().forEach(function(s){i=t.getFormattedValue(s.getAttribute("data-value")),e.indexOf(i)<0&&(s.getElementsByClassName("e-check")[0].classList.remove("e-check"),s.removeAttribute("aria-selected"))})}},o.prototype.setSelection=function(e,t,i){var l=this;void 0===e&&(e=this.value),void 0===t&&(t=!0),void 0===i&&(i=!1);var n,o;e&&e.forEach(function(e){var r;"string"==typeof(r=i?l.getValueByText(e):e)?(r=r.split("\\").join("\\\\"),n=l.list.querySelector('[data-value="'+r.replace(/"/g,'\\"')+'"]')):n=l.list.querySelector('[data-value="'+r+'"]'),n&&(o=l.selectionSettings.showCheckbox?n.getElementsByClassName("e-frame")[0].classList.contains("e-check"):n.classList.contains("e-selected"),(!t&&o||t&&!o&&n)&&(l.selectionSettings.showCheckbox?(l.notify("updatelist",{li:n,module:"listbox"}),n.focus()):t?(n.classList.add(s.cssClass.selected),n.setAttribute("aria-selected","true"),n.focus()):(n.classList.remove(s.cssClass.selected),n.removeAttribute("aria-selected"))))}),this.updateSelectTag()},o.prototype.updateSelectTag=function(){var e=this.getSelectTag(),t="";if(e.innerHTML="",this.value){for(var i=0,s=this.value.length;i<s;i++)t+="<option selected>"+this.value[i]+"</option>";e.innerHTML+=t;for(var i=0,s=e.childNodes.length;i<s;i++)e.childNodes[i].setAttribute("value",this.value[i].toString())}this.checkSelectAll()},o.prototype.checkDisabledState=function(e){return 0===e.ulElement.querySelectorAll("."+s.cssClass.li).length},o.prototype.updateToolBarState=function(){var e=this;if(this.toolbarSettings.items.length){var t=this.getScopedListBox(),i=this.list.parentElement.getElementsByClassName("e-listbox-tool")[0];this.toolbarSettings.items.forEach(function(s){var l=i.querySelector('[data-value="'+s+'"]');switch(s){case"moveAllTo":l.disabled=e.checkDisabledState(e);break;case"moveAllFrom":l.disabled=e.checkDisabledState(t);break;case"moveFrom":l.disabled=!t.value||!t.value.length;break;case"moveUp":l.disabled=!(e.value&&e.value.length&&!e.isSelected(e.ulElement.children[0]));break;case"moveDown":l.disabled=!(e.value&&e.value.length&&!e.isSelected(e.ulElement.children[e.ulElement.childElementCount-1]));break;default:l.disabled=!e.value||!e.value.length}})}},o.prototype.setCheckboxPosition=function(){var e=this.list;this.initLoad||"Left"!==this.selectionSettings.checkboxPosition||e.classList.remove("e-right"),"Right"===this.selectionSettings.checkboxPosition&&e.classList.add("e-right")},o.prototype.showCheckbox=function(e){var i=0,s=this.list.lastElementChild.querySelectorAll("li"),l=this.list.lastElementChild.getElementsByClassName("e-list-item").length;if(e){if(this.ulElement=this.renderItems(this.listData,this.fields),this.mainList=this.ulElement,this.list.removeChild(this.list.getElementsByTagName("ul")[0]),this.list.appendChild(this.ulElement),this.selectionSettings.showSelectAll&&!this.list.getElementsByClassName("e-selectall-parent")[0]){var n=new t.L10n(this.getModuleName(),{selectAllText:"Select All",unSelectAllText:"Unselect All"},this.locale);this.showSelectAll=!0,this.selectAllText=n.getConstant("selectAllText"),this.unSelectAllText=n.getConstant("unSelectAllText"),this.popupWrapper=this.list,this.checkBoxSelectionModule.checkAllParent=null,this.notify("selectAll",{}),this.checkSelectAll()}}else{for(this.list.getElementsByClassName("e-selectall-parent")[0]&&this.list.removeChild(this.list.getElementsByClassName("e-selectall-parent")[0]),i;i<l;i++)s[i].classList.contains("e-list-item")&&s[i].removeChild(s[i].getElementsByClassName("e-checkbox-wrapper")[0]),s[i].hasAttribute("aria-selected")&&s[i].removeAttribute("aria-selected");this.mainList=this.ulElement}this.value=[]},o.prototype.isSelected=function(e){return!t.isNullOrUndefined(e)&&(e.classList.contains(s.cssClass.selected)||null!==e.querySelector(".e-check"))},o.prototype.getSelectTag=function(){return this.list.getElementsByClassName("e-hidden-select")[0]},o.prototype.getToolElem=function(){return this.list.parentElement.getElementsByClassName("e-listbox-tool")[0]},o.prototype.formResetHandler=function(){this.value=this.initialSelectedOptions},o.prototype.getModuleName=function(){return"listbox"},o.prototype.getPersistData=function(){return this.addOnPersist(["value"])},o.prototype.getLocaleName=function(){return"listbox"},o.prototype.destroy=function(){this.unwireEvents(),"EJS-LISTBOX"===this.element.tagName?this.element.innerHTML="":(this.element.style.display="inline-block",this.toolbarSettings.items.length&&(this.list.parentElement.parentElement.insertBefore(this.list,this.list.parentElement),t.detach(this.list.nextElementSibling)),this.list.parentElement.insertBefore(this.element,this.list)),e.prototype.destroy.call(this),this.enableRtlElements=[],this.liCollections=null,this.list=null,this.ulElement=null,this.mainList=null,this.spinner=null,this.rippleFun=null,this.itemTemplate&&this.clearTemplate()},o.prototype.onPropertyChanged=function(i,l){var o=this.toolbarSettings.items.length?this.list.parentElement:this.list;e.prototype.onPropertyChanged.call(this,i,l),this.setUpdateInitial(["fields","query","dataSource"],i);for(var r=0,a=Object.keys(i);r<a.length;r++)switch(a[r]){case"cssClass":l.cssClass&&t.removeClass([o],l.cssClass.split(" ")),i.cssClass&&t.addClass([o],i.cssClass.replace(/\s+/g," ").trim().split(" "));break;case"enableRtl":i.enableRtl?this.list.classList.add("e-rtl"):this.list.classList.remove("e-rtl");break;case"value":t.removeClass(this.list.querySelectorAll("."+s.cssClass.selected),s.cssClass.selected),this.clearSelection(this.value),this.setSelection();break;case"height":this.setHeight();break;case"enabled":this.setEnable();break;case"allowDragAndDrop":i.allowDragAndDrop?this.initDraggable():t.getComponent(this.ulElement,"sortable").destroy();break;case"allowFiltering":this.allowFiltering?this.setFiltering():(this.list.removeChild(this.list.getElementsByClassName("e-filter-parent")[0]),this.filterParent=null,t.removeClass([this.list],"e-filter-list"));break;case"filterBarPlaceholder":this.allowFiltering&&this.filterInput&&n.Input.setPlaceholder(i.filterBarPlaceholder,this.filterInput);break;case"scope":this.allowDragAndDrop&&(t.getComponent(this.ulElement,"sortable").scope=i.scope),this.toolbarSettings.items.length&&(l.scope&&(t.getComponent(document.querySelector(l.scope),this.getModuleName()).tBListBox=null),i.scope&&(t.getComponent(document.querySelector(i.scope),this.getModuleName()).tBListBox=this));break;case"toolbarSettings":var h=void 0,p=i.toolbarSettings.position,u=this.getToolElem();p&&(t.removeClass([o],["e-right","e-left"]),o.classList.add("e-"+p.toLowerCase()),"Left"===p?o.insertBefore(u,this.list):o.appendChild(u)),i.toolbarSettings.items&&(l.toolbarSettings&&l.toolbarSettings.items.length&&((h=this.list.parentElement).parentElement.insertBefore(this.list,h),t.detach(h)),this.initToolbarAndStyles(),this.wireToolbarEvent());break;case"selectionSettings":var d=i.selectionSettings.showSelectAll,c=i.selectionSettings.showCheckbox;if(!t.isNullOrUndefined(d)){if(this.showSelectAll=d,this.showSelectAll){var m=new t.L10n(this.getModuleName(),{selectAllText:"Select All",unSelectAllText:"Unselect All"},this.locale);this.checkBoxSelectionModule.checkAllParent=null,this.showSelectAll=!0,this.selectAllText=m.getConstant("selectAllText"),this.unSelectAllText=m.getConstant("selectAllText"),this.popupWrapper=this.list}this.notify("selectAll",{}),this.checkSelectAll()}t.isNullOrUndefined(c)||this.showCheckbox(c),this.selectionSettings.showCheckbox&&this.setCheckboxPosition();break;case"dataSource":this.isDataSourceUpdate=!0,this.jsonData=[].slice.call(this.dataSource)}};var a;return Ee([t.Property("")],o.prototype,"cssClass",void 0),Ee([t.Property([])],o.prototype,"value",void 0),Ee([t.Property("")],o.prototype,"height",void 0),Ee([t.Property(!0)],o.prototype,"enabled",void 0),Ee([t.Property(!1)],o.prototype,"enablePersistence",void 0),Ee([t.Property(!1)],o.prototype,"allowDragAndDrop",void 0),Ee([t.Property(1e3)],o.prototype,"maximumSelectionLength",void 0),Ee([t.Property(!1)],o.prototype,"allowFiltering",void 0),Ee([t.Property("")],o.prototype,"scope",void 0),Ee([t.Property(!0)],o.prototype,"ignoreCase",void 0),Ee([t.Property(null)],o.prototype,"filterBarPlaceholder",void 0),Ee([t.Event()],o.prototype,"beforeItemRender",void 0),Ee([t.Event()],o.prototype,"filtering",void 0),Ee([t.Event()],o.prototype,"select",void 0),Ee([t.Event()],o.prototype,"change",void 0),Ee([t.Event()],o.prototype,"beforeDrop",void 0),Ee([t.Event()],o.prototype,"dragStart",void 0),Ee([t.Event()],o.prototype,"drag",void 0),Ee([t.Event()],o.prototype,"drop",void 0),Ee([t.Event()],o.prototype,"dataBound",void 0),Ee([t.Property(null)],o.prototype,"groupTemplate",void 0),Ee([t.Property("Request failed")],o.prototype,"actionFailureTemplate",void 0),Ee([t.Property(1e3)],o.prototype,"zIndex",void 0),Ee([t.Property(!1)],o.prototype,"ignoreAccent",void 0),Ee([t.Complex({},xe)],o.prototype,"toolbarSettings",void 0),Ee([t.Complex({},Se)],o.prototype,"selectionSettings",void 0),o=a=Ee([t.NotifyPropertyChanges],o)}(F),we={backIcon:"e-input-group-icon e-back-icon e-icons",filterBarClearIcon:"e-input-group-icon e-clear-icon e-icons",filterInput:"e-input-filter",filterParent:"e-filter-parent",clearIcon:"e-clear-icon"},Oe=function(){var e=function(t,i){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)t.hasOwnProperty(i)&&(e[i]=t[i])})(t,i)};return function(t,i){function s(){this.constructor=t}e(t,i),t.prototype=null===i?Object.create(i):(s.prototype=i.prototype,new s)}}(),Ae=function(e,t,i,s){var l,n=arguments.length,o=n<3?t:null===s?s=Object.getOwnPropertyDescriptor(t,i):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(e,t,i,s);else for(var r=e.length-1;r>=0;r--)(l=e[r])&&(o=(n<3?l(o):n>3?l(t,i,o):l(t,i))||o);return n>3&&o&&Object.defineProperty(t,i,o),o},ke=function(e){function s(t,i){return e.call(this,t,i)||this}return Oe(s,e),s.prototype.onPropertyChanged=function(e,t){for(var i=0,s=Object.keys(e);i<s.length;i++)switch(s[i]){case"minLength":this.minLength=e.minLength;break;case"suffixText":this.suffixText=e.suffixText;break;case"allowSpaces":this.allowSpaces=e.allowSpaces;break;case"mentionChar":this.mentionChar=e.mentionChar;break;case"showMentionChar":this.showMentionChar=e.showMentionChar;break;case"cssClass":this.updateCssClass(e.cssClass,t.cssClass)}},s.prototype.updateCssClass=function(e,i){t.isNullOrUndefined(i)||(i=i.replace(/\s+/g," ").trim()),t.isNullOrUndefined(e)||(e=e.replace(/\s+/g," ").trim()),this.setCssClass(e,[this.inputElement],i),this.popupObj&&this.setCssClass(e,[this.popupObj.element],i)},s.prototype.setCssClass=function(e,i,s){t.isNullOrUndefined(s)||""===s||t.removeClass(i,s.split(" ")),t.isNullOrUndefined(e)||""===e||t.addClass(i,e.split(" "))},s.prototype.initializeData=function(){this.isSelected=!1,this.isFiltered=!1,this.beforePopupOpen=!1,this.initRemoteRender=!1,this.isListResetted=!1,this.isPopupOpen=!1,this.isCollided=!1,this.lineBreak=!1},s.prototype.preRender=function(){this.initializeData(),e.prototype.preRender.call(this)},s.prototype.render=function(){var e="string"==typeof this.target;this.inputElement=t.isNullOrUndefined(this.target)?this.element:this.checkAndUpdateInternalComponent(e?document.querySelector(this.target):this.target),this.isContentEditable(this.inputElement)&&(this.inputElement.setAttribute("contenteditable","true"),t.addClass([this.inputElement],["e-mention"]),t.isNullOrUndefined(this.target)&&t.addClass([this.inputElement],["e-editable-element"])),this.inputElement.setAttribute("role","textbox"),this.inputElement.setAttribute("aria-label","mention"),this.queryString=this.elementValue(),this.wireEvent()},s.prototype.wireEvent=function(){t.EventHandler.add(this.inputElement,"keyup",this.onKeyUp,this),this.bindCommonEvent()},s.prototype.unWireEvent=function(){t.EventHandler.remove(this.inputElement,"keyup",this.onKeyUp),this.unBindCommonEvent()},s.prototype.bindCommonEvent=function(){t.Browser.isDevice||this.inputElement.addEventListener("keydown",this.keyDownHandler.bind(this),!0)},s.prototype.hideSpinner=function(){this.hideWaitingSpinner()},s.prototype.hideWaitingSpinner=function(){t.isNullOrUndefined(this.spinnerElement)||l.hideSpinner(this.spinnerElement),t.isNullOrUndefined(this.spinnerTemplate)||t.isNullOrUndefined(this.spinnerTemplateElement)||t.detach(this.spinnerTemplateElement)},s.prototype.checkAndUpdateInternalComponent=function(e){if(!this.isVue&&e.classList.contains("e-richtexteditor"))return e.querySelector(".e-content");if(this.isVue&&"TEXTAREA"===e.nodeName&&e.classList.contains("e-rte-hidden")){var t=e.parentElement;if(t&&t.classList.contains("e-richtexteditor"))return t.querySelector(".e-content")}return e},s.prototype.showWaitingSpinner=function(){t.isNullOrUndefined(this.popupObj)||(t.isNullOrUndefined(this.spinnerTemplate)&&t.isNullOrUndefined(this.spinnerElement)&&(this.spinnerElement=this.popupObj.element,l.createSpinner({target:this.spinnerElement,width:t.Browser.isDevice?"16px":"14px"},this.createElement),l.showSpinner(this.spinnerElement)),t.isNullOrUndefined(this.spinnerTemplate)||this.setSpinnerTemplate())},s.prototype.keyDownHandler=function(e){var t=!0;switch(e.keyCode){case 38:e.action=e.altKey?"hide":"up";break;case 40:e.action=e.altKey?"open":"down";break;case 33:e.action="pageUp";break;case 34:e.action="pageDown";break;case 36:e.action="home";break;case 35:e.action="end";break;case 9:e.action=e.shiftKey?"close":"tab";break;case 27:e.action="escape";break;case 32:e.action="space";break;case 13:e.action="enter";break;default:t=!1}t&&this.keyActionHandler(e)},s.prototype.keyActionHandler=function(e){var i="down"===e.action||"up"===e.action||"pageUp"===e.action||"pageDown"===e.action||"home"===e.action||"end"===e.action,s="tab"===e.action||"close"===e.action;if(void 0!==this.list||this.isRequested||s||"escape"===e.action||"space"===e.action||this.renderList(),!(t.isNullOrUndefined(this.list)||!t.isNullOrUndefined(this.liCollections)&&i&&0===this.liCollections.length||this.isRequested))switch("escape"===e.action&&e.preventDefault(),this.isSelected="escape"!==e.action&&this.isSelected,e.action){case"down":case"up":this.isUpDownKey=!0,this.updateUpDownAction(e);break;case"tab":if(this.isPopupOpen){e.preventDefault();var l=this.list.querySelector("."+U.selected);l&&this.setSelection(l,e),this.isPopupOpen&&this.hidePopup(e)}break;case"enter":this.isPopupOpen&&(e.preventDefault(),this.popupObj&&this.popupObj.element.contains(this.selectedLI)&&this.updateSelectedItem(this.selectedLI,e,!1,!0));break;case"escape":this.isPopupOpen&&this.hidePopup(e)}},s.prototype.updateUpDownAction=function(e){var i=this.list.querySelector("."+U.focus);if(this.isSelectFocusItem(i))this.setSelection(i,e);else if(!t.isNullOrUndefined(this.liCollections)){var s=this.list.querySelector("."+U.selected);if(!t.isNullOrUndefined(s)){var l=this.getFormattedValue(s.getAttribute("data-value"));this.activeIndex=this.getIndexByValue(l)}var n="down"===e.action?this.activeIndex+1:this.activeIndex-1,o=0;o="down"===e.action&&t.isNullOrUndefined(this.activeIndex)?0:this.liCollections.length-1,n=n<0?this.liCollections.length-1:n===this.liCollections.length?0:n;var r=t.isNullOrUndefined(this.activeIndex)?this.liCollections[o]:this.liCollections[n];t.isNullOrUndefined(r)||this.setSelection(r,e)}this.isPopupOpen&&e.preventDefault()},s.prototype.isSelectFocusItem=function(e){return!t.isNullOrUndefined(e)},s.prototype.unBindCommonEvent=function(){t.Browser.isDevice||this.inputElement.removeEventListener("keydown",this.keyDownHandler.bind(this),!0)},s.prototype.onKeyUp=function(e){var i;if(this.isUpDownKey&&this.isPopupOpen&&229===e.keyCode)return void(this.isUpDownKey=!1);this.isTyped="Enter"!==e.code&&"Space"!==e.code&&"ArrowDown"!==e.code&&"ArrowUp"!==e.code;var s=!(!document.activeElement.parentElement||!document.activeElement.parentElement.querySelector(".e-rte-image"));document.activeElement==this.inputElement||s||this.inputElement.focus(),this.isContentEditable(this.inputElement)&&(this.range=this.getCurrentRange(),i=this.range.startContainer.textContent.split(""));var l=this.getTextRange(),n=this.getLastLetter(l),o=this.mentionChar.toString()+this.mentionChar.toString(),r=new RegExp(this.mentionChar.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&"),"g"),a=new RegExp("[a-zA-Z]","g");if("Shift"!==e.key&&37!==e.keyCode&&39!==e.keyCode){if(this.beforePopupOpen&&this.isPopupOpen&&n==o)return void this.hidePopup();if(!l||!n||"Enter"===e.code||27===e.keyCode||n.match(r)&&n.match(r).length>1||this.isContentEditable(this.inputElement)&&this.range.startContainer&&this.range.startContainer.previousElementSibling&&"BR"!==this.range.startContainer.previousElementSibling.tagName&&this.range.startContainer.textContent.split("").length>0&&(1===i.length||-1===i[i.length-2].indexOf("")||1===this.range.startContainer.nodeType))return void(this.isPopupOpen&&this.allowSpaces&&l&&""!==l.trim()&&a.test(l)&&-1!==l.indexOf(this.mentionChar)&&!this.isMatchedText()&&l.length>1&&" "!==l.replace(/\u00A0/g," ").charAt(l.length-2)&&this.list&&this.list.querySelectorAll("ul").length>0?(this.queryString=l.substring(l.lastIndexOf(this.mentionChar)+1).replace(" "," "),this.searchLists(e)):!this.isPopupOpen||this.allowSpaces&&n||"ArrowDown"===e.code||"ArrowUp"===e.code||(this.hidePopup(),this.lineBreak=!0));n.includes(this.mentionChar)&&(this.queryString=n.replace(this.mentionChar,"")),this.mentionChar.charCodeAt(0)!==n.charCodeAt(0)||""===this.queryString||38===e.keyCode||40===e.keyCode||this.lineBreak?0===n.indexOf(this.mentionChar)&&!this.isPopupOpen&&8!==e.keyCode&&(!this.popupObj||t.isNullOrUndefined(this.target)&&!document.body.contains(this.popupObj.element)||!t.isNullOrUndefined(this.target)&&document.body.contains(this.popupObj.element))?(this.initRemoteRender&&this.list&&this.list.classList.contains("e-nodata")&&this.searchLists(e),this.resetList(this.dataSource,this.fields),t.isNullOrUndefined(this.list)&&this.initValue(),!this.isPopupOpen&&38!==e.keyCode&&40!==e.keyCode&&this.queryString.length>=this.minLength&&(this.didPopupOpenByTypingInitialChar=!0,this.showPopup(),this.initRemoteRender&&0===this.list.querySelectorAll("li").length&&this.showWaitingSpinner(),this.lineBreak=!1)):this.allowSpaces&&""!==this.queryString&&l&&""!==l.trim()&&l.replace(" "," ").lastIndexOf(" ")<l.length-1&&38!==e.keyCode&&40!==e.keyCode&&8!==e.keyCode&&this.mentionChar.charCodeAt(0)===n.charCodeAt(0)?(this.queryString=l.substring(l.lastIndexOf(this.mentionChar)+1).replace(" "," "),this.searchLists(e)):""===this.queryString&&this.isPopupOpen&&38!==e.keyCode&&40!==e.keyCode&&this.mentionChar.charCodeAt(0)===n.charCodeAt(0)&&(this.searchLists(e),this.isListResetted||this.resetList(this.dataSource,this.fields)):(this.searchLists(e),!this.isPopupOpen&&this.queryString.length>=this.minLength&&(this.isContentEditable(this.inputElement)?this.isContentEditable(this.inputElement)&&this.range&&this.range.startContainer!==this.inputElement&&9!==e.keyCode&&this.showPopup():this.showPopup())),this.isListResetted=!1}},s.prototype.isMatchedText=function(){for(var e=!1,t=0;t<(this.liCollections&&this.liCollections.length);t++)this.getTextRange()&&this.getTextRange().substring(this.getTextRange().lastIndexOf(this.mentionChar)+1).replace(" "," ").trim()===this.liCollections[t].getAttribute("data-value").toLowerCase()&&(e=!0);return e},s.prototype.getCurrentRange=function(){return this.range=this.inputElement.ownerDocument.getSelection().getRangeAt(0),this.range},s.prototype.searchLists=function(i){var s=this;if(this.isDataFetched=!1,t.isNullOrUndefined(this.list)&&(e.prototype.render.call(this),this.unWireListEvents(),this.wireListEvents()),"mousedown"!==i.type&&(40===i.keyCode||38===i.keyCode))return this.queryString=""===this.queryString?null:this.queryString,this.beforePopupOpen=!0,void this.resetList(this.dataSource,this.fields);this.isSelected=!1,this.activeIndex=null;var l={preventDefaultAction:!1,text:this.queryString,updateData:function(e,t,i){l.cancel||(s.isFiltered=!0,s.filterAction(e,t,i))},cancel:!1};this.trigger("filtering",l,function(e){e.cancel||s.isFiltered||e.preventDefaultAction||s.filterAction(s.dataSource,null,s.fields)})},s.prototype.filterAction=function(e,t,i){this.beforePopupOpen=!0,this.queryString.length>=this.minLength?(this.resetList(e,i,t),this.isListResetted=!0):(this.isPopupOpen&&this.hidePopup(),this.beforePopupOpen=!1),this.setDataIndex(),this.renderReactTemplates()},s.prototype.onActionComplete=function(i,s,l,n){if(e.prototype.onActionComplete.call(this,i,s,l),this.isActive){t.isNullOrUndefined(i)||t.attributes(i,{id:this.inputElement.id+"_options",role:"listbox","aria-hidden":"false"});var o=i.querySelector("."+U.li);if(o){o.classList.add(U.selected),this.selectedLI=o;var r=this.getFormattedValue(o.getAttribute("data-value"));this.selectEventCallback(o,this.getDataByValue(r),r,!0)}this.beforePopupOpen&&this.isPopupOpen&&(t.isNullOrUndefined(this.popupObj.element)||this.popupObj.element.remove(),this.renderPopup())}},s.prototype.setDataIndex=function(){for(var e=0;this.liCollections&&e<this.liCollections.length;e++)this.liCollections[e].setAttribute("data-index",e.toString())},s.prototype.listOption=function(i,s){var l=this,n=e.prototype.listOption.call(this,i,s);if(t.isNullOrUndefined(n.itemCreated))n.itemCreated=function(e){l.highlight&&(l.inputElement.tagName===l.getNgDirective()&&l.itemTemplate?setTimeout(function(){c(e.item,l.queryString,l.ignoreCase,l.filterType)},0):c(e.item,l.queryString,l.ignoreCase,l.filterType))};else{var o=n.itemCreated;n.itemCreated=function(e){l.highlight&&c(e.item,l.queryString,l.ignoreCase,l.filterType),o.apply(l,[e])}}return n},s.prototype.elementValue=function(){return this.isContentEditable(this.inputElement)?this.inputElement.textContent.replace(this.mentionChar,""):this.inputElement.value.replace(this.mentionChar,"")},s.prototype.getQuery=function(e){var s=e?e.clone():this.query?this.query.clone():new i.Query,l=""!==this.queryString||t.isNullOrUndefined(this.elementValue())?this.filterType:"equal",n=""!==this.queryString||t.isNullOrUndefined(this.elementValue())?this.queryString:this.elementValue();if(this.isFiltered)return s;if(null!==this.queryString&&""!==this.queryString){var o=this.typeOfData(this.dataSource).typeof;if((this.dataSource instanceof i.DataManager||"string"!==o)&&"number"!==o){var r=t.isNullOrUndefined(this.fields.text)?"":this.fields.text;s.where(r,l,n,this.ignoreCase,this.ignoreAccent)}else s.where("",l,n,this.ignoreCase,this.ignoreAccent)}if(!t.isNullOrUndefined(this.suggestionCount)){if(25!==this.suggestionCount)for(var a=0;a<s.queries.length;a++)"onTake"===s.queries[a].fn&&s.queries.splice(a,1);s.take(this.suggestionCount)}return s},s.prototype.renderHightSearch=function(){if(this.highlight)for(var e=0;e<this.liCollections.length;e++)this.ulElement.querySelector(".e-active")||(f(this.liCollections[e]),c(this.liCollections[e],this.queryString,this.ignoreCase,this.filterType))},s.prototype.getTextRange=function(){var e;if(this.isContentEditable(this.inputElement)){if(this.range){var i=this.range.startContainer;if(!t.isNullOrUndefined(i)){var s=i.textContent,l=this.range.startOffset;s&&l>=0&&(e=s.substring(0,l))}}}else{var n=this.inputElement;if(!t.isNullOrUndefined(n)){var o=n.selectionStart;n.value&&o>=0&&(e=n.value.substring(0,o))}}return e},s.prototype.getLastLetter=function(e){if(t.isNullOrUndefined(e))return"";var i=e.replace(/\u00A0/g," ").split(/\s+/);return i[i.length-1].trim()},s.prototype.isContentEditable=function(e){return e&&"INPUT"!==e.nodeName&&"TEXTAREA"!==e.nodeName},s.prototype.showPopup=function(){this.beforePopupOpen=!0,document.activeElement!=this.inputElement&&this.inputElement.focus(),this.queryString=this.didPopupOpenByTypingInitialChar?this.queryString:"",this.didPopupOpenByTypingInitialChar=!1,this.isContentEditable(this.inputElement)&&(this.range=this.getCurrentRange()),this.isTyped||this.resetList(this.dataSource,this.fields),t.isNullOrUndefined(this.list)&&this.initValue(),this.renderPopup(),t.attributes(this.inputElement,{"aria-activedescendant":this.selectedElementID}),null==this.selectedElementID&&this.inputElement.removeAttribute("aria-activedescendant")},s.prototype.hidePopup=function(e){this.removeSelection(),this.closePopup(0,e)},s.prototype.closePopup=function(e,i){var s=this;if(this.popupObj&&document.body.contains(this.popupObj.element)&&this.beforePopupOpen){t.EventHandler.remove(document,"mousedown",this.onDocumentClick),this.inputElement.removeAttribute("aria-owns"),this.inputElement.removeAttribute("aria-activedescendant"),this.beforePopupOpen=!1;var l={name:"FadeOut",duration:100,delay:e||0},n={popup:this.popupObj,cancel:!1,animation:l,event:i||null};this.trigger("closed",n,function(e){!e.cancel&&s.popupObj&&(s.isPopupOpen?s.popupObj.hide(new t.Animation(e.animation)):s.destroyPopup())})}},s.prototype.renderPopup=function(){var e=this,i={cancel:!1};this.trigger("beforeOpen",i,function(i){if(i.cancel)e.beforePopupOpen=!1;else{var s;if(t.isNullOrUndefined(e.target)?s=e.createElement("div",{id:e.inputElement.id+"_popup",className:"e-mention e-popup "+(null!=e.cssClass?e.cssClass:"")}):(s=e.element,null!=e.cssClass&&t.addClass([s],e.cssClass.split(" "))),t.isNullOrUndefined(e.target)||(s.id=e.inputElement.id+"_popup"),e.listHeight=t.formatUnit(e.popupHeight),!t.isNullOrUndefined(e.list.querySelector("li"))&&!e.initRemoteRender){var n=e.list.querySelector("."+U.focus);if(!t.isNullOrUndefined(n)){e.selectedLI=n;var o=e.getFormattedValue(n.getAttribute("data-value"));e.selectEventCallback(n,e.getDataByValue(o),o,!0)}}t.append([e.list],s),e.inputElement.parentElement&&e.inputElement.parentElement.parentElement&&e.inputElement.parentElement.parentElement.classList.contains("e-richtexteditor")&&s.firstElementChild&&s.firstElementChild.childElementCount>0&&(s.firstElementChild.setAttribute("aria-owns",e.inputElement.parentElement.parentElement.id),t.addClass([s],"e-rte-elements")),e.popupObj&&document.body.contains(e.popupObj.element)&&(document.contains(s)||!t.isNullOrUndefined(e.target))||document.body.appendChild(s);var r;s.style.visibility="hidden",e.setHeight(s);e.initializePopup(s,0,0),e.checkCollision(s),s.style.visibility="visible";var a=s.parentElement.offsetWidth-s.offsetWidth,h=s.offsetHeight;t.addClass([s],["e-mention","e-popup","e-popup-close"]),t.isNullOrUndefined(e.list)||(e.unWireListEvents(),e.wireListEvents()),e.selectedElementID=e.selectedLI?e.selectedLI.id:null,t.attributes(e.inputElement,{"aria-owns":e.inputElement.id+"_options","aria-activedescendant":e.selectedElementID}),null==e.selectedElementID&&e.inputElement.removeAttribute("aria-activedescendant");var p={name:"FadeIn",duration:100};e.beforePopupOpen=!0;var u={popup:e.popupObj,cancel:!1,animation:p};e.trigger("opened",u,function(i){if(i.cancel)e.beforePopupOpen=!1,e.destroyPopup();else{if(e.renderReactTemplates(),e.popupObj&&e.popupObj.show(new t.Animation(i.animation),1e3===e.zIndex?e.inputElement:null),t.isNullOrUndefined(e.getTriggerCharPosition()))return;r=e.getCoordinates(e.inputElement,e.getTriggerCharPosition()),e.isCollided?(e.collision.length>0&&e.collision.indexOf("right")>-1&&-1===e.collision.indexOf("bottom")?s.style.cssText="top: ".concat(r.top.toString(),"px;\n left: ").concat(a.toString(),"px;\nposition: absolute;\n display: block;"):e.collision&&e.collision.length>0&&e.collision.indexOf("bottom")>-1&&-1===e.collision.indexOf("right")?(s.style.left=t.formatUnit(r.left),s.style.top=t.formatUnit(r.top-parseInt(h.toString()))):e.collision&&e.collision.length>0&&e.collision.indexOf("bottom")>-1&&e.collision.indexOf("right")>-1?(s.style.left=t.formatUnit(a),s.style.top=t.formatUnit(r.top-parseInt(h.toString()))):(s.style.left=t.formatUnit(r.left),s.style.top=t.formatUnit(r.top-parseInt(e.popupHeight.toString()))),e.isCollided=!1,e.collision=[]):s.style.cssText="top: ".concat(r.top.toString(),"px;\n left: ").concat(r.left.toString(),"px;\nposition: absolute;\n display: block;"),s.style.width="100%"===e.popupWidth||t.isNullOrUndefined(e.popupWidth)?"auto":t.formatUnit(e.popupWidth),e.setHeight(s),s.style.zIndex=1e3===e.zIndex?l.getZindexPartial(s).toString():e.zIndex.toString()}})}})},s.prototype.setHeight=function(e){"auto"!==this.popupHeight&&this.list?(this.list.style.maxHeight=(parseInt(this.listHeight,10)-2).toString()+"px",e.style.maxHeight=t.formatUnit(this.popupHeight)):e.style.height="auto"},s.prototype.checkCollision=function(e){if(!t.Browser.isDevice||t.Browser.isDevice&&"mention"!==this.getModuleName()){var i=this.getCoordinates(this.inputElement,this.getTriggerCharPosition());this.collision=l.isCollide(e,null,i.left,i.top),this.collision.length>0&&(e.style.marginTop=-parseInt(getComputedStyle(e).marginTop,10)+"px",this.isCollided=!0),this.popupObj.resolveCollision()}},s.prototype.getTriggerCharPosition=function(){var e,t=this.getTextRange();if(void 0!==t&&null!==t){e=0;var i=t.lastIndexOf(this.mentionChar);i>=e&&(e=i)}return e||0},s.prototype.initializePopup=function(e,i,s){var n=this;this.popupObj=new l.Popup(e,{width:this.setWidth(),targetType:"relative",relateTo:this.inputElement,collision:{X:"flip",Y:"flip"},offsetY:i,enableRtl:this.enableRtl,offsetX:s,position:{X:"left",Y:"bottom"},actionOnScroll:"hide",zIndex:this.zIndex,close:function(){n.destroyPopup()},open:function(){t.EventHandler.add(document,"mousedown",n.onDocumentClick,n),n.isPopupOpen=!0,n.setDataIndex()}})},s.prototype.setWidth=function(){var e=t.formatUnit(this.popupWidth);return e.indexOf("%")>-1&&(e=(this.inputElement.offsetWidth*parseFloat(e)/100).toString()+"px"),e},s.prototype.destroyPopup=function(){this.isPopupOpen=!1,this.popupObj.destroy(),t.isNullOrUndefined(this.target)?t.detach(this.popupObj.element):(this.popupObj.element.innerHTML="",this.popupObj.element.removeAttribute("style"),this.popupObj.element.removeAttribute("aria-disabled")),this.list.classList.contains("e-nodata")&&(this.list=null)},s.prototype.onDocumentClick=function(e){var i=e.target;!t.isNullOrUndefined(this.popupObj)&&t.closest(i,"#"+this.popupObj.element.id)||this.hidePopup(e)},s.prototype.getCoordinates=function(e,i){var s,l,n,o,r,a,h,p=["direction","boxSizing","width","height","overflowX","overflowY","borderTopWidth","borderRightWidth","borderBottomWidth","borderLeftWidth","paddingTop","paddingRight","paddingBottom","paddingLeft","fontStyle","fontVariant","fontWeight","fontStretch","fontSize","fontSizeAdjust","lineHeight","fontFamily","textAlign","textTransform","textIndent","textDecoration","letterSpacing","wordSpacing"];if(this.isContentEditable(this.inputElement)){var u=this.getTriggerCharPosition();o=this.range,n=document.createRange(),this.getTextRange()&&-1!==this.getTextRange().lastIndexOf(this.mentionChar)?(n.setStart(o.startContainer,u),n.setEnd(o.startContainer,u)):(n.setStart(o.startContainer,o.startOffset),n.setEnd(o.startContainer,o.endOffset)),this.isTyped=!1,n.collapse(!1),h=0===n.getBoundingClientRect().top?n.startContainer.getClientRects()[0]:n.getBoundingClientRect()}else s=this.createElement("div",{className:"e-form-mirror-div"}),document.body.appendChild(s),a=getComputedStyle(e),s.style.position="absolute",s.style.visibility="hidden",p.forEach(function(e){s.style[e]=a[e]}),s.textContent=e.value.substring(0,i),"INPUT"===this.inputElement.nodeName&&(s.textContent=s.textContent.replace(/\s/g," ")),(l=this.createElement("span")).textContent=e.value.substring(i)||".",s.appendChild(l),h=e.getBoundingClientRect();var d=h.top,c=h.left,m=document.querySelectorAll("iframe");if(m.length>0)for(E=0;E<m.length;E++){var f=m[E];if(f.contentDocument&&f.contentDocument.contains(e)){var v=f.getBoundingClientRect();d+=v.top,c+=v.left}}var g=document.documentElement,y=(window.pageXOffset||g.scrollLeft)-(g.clientLeft||0),C=(window.pageYOffset||g.scrollTop)-(g.clientTop||0),b=0;if(!t.isNullOrUndefined(n)&&0===n.getBoundingClientRect().top)for(var E=0;E<this.range.startContainer.childNodes.length;E++)if(this.range.startContainer.childNodes[E].nodeType!==Node.TEXT_NODE&&""!==this.range.startContainer.childNodes[E].textContent.trim())b+=this.range.startContainer.childNodes[E].getClientRects()[0].width;else if(""!==this.range.startContainer.childNodes[E].textContent){var S=document.createElement("span");S.innerHTML=this.range.startContainer.childNodes[E].nodeValue,document.body.appendChild(S);var x=S.offsetWidth;document.body.removeChild(S),b+=x}return this.isContentEditable(this.inputElement)?r=this.collision&&this.collision.length>0&&this.collision.indexOf("right")>-1&&-1===this.collision.indexOf("bottom")?{top:d+C+parseInt(getComputedStyle(this.inputElement).fontSize,10),left:c+y+b}:{top:d+C+parseInt(getComputedStyle(this.inputElement).fontSize,10)-(this.isCollided?10:0),left:c+y+b}:(r={top:d+C+l.offsetTop+parseInt(a.borderTopWidth,10)+parseInt(a.fontSize,10)+3-e.scrollTop-(this.isCollided?10:0),left:c+y+l.offsetLeft+parseInt(a.borderLeftWidth,10)},document.body.removeChild(s)),r},s.prototype.initValue=function(){this.isDataFetched=!1,this.renderList(),this.dataSource instanceof i.DataManager?this.initRemoteRender=!0:this.updateValues()},s.prototype.updateValues=function(){var e=this.list.querySelector("."+U.focus);t.isNullOrUndefined(e)||this.setSelection(e,null)},s.prototype.renderList=function(){e.prototype.render.call(this),this.unWireListEvents(),this.wireListEvents()},s.prototype.wireListEvents=function(){t.EventHandler.add(this.list,"mousedown",this.onMouseClick,this),t.EventHandler.add(this.list,"mouseover",this.onMouseOver,this),t.EventHandler.add(this.list,"mouseout",this.onMouseLeave,this)},s.prototype.unWireListEvents=function(){t.EventHandler.remove(this.list,"mousedown",this.onMouseClick),t.EventHandler.remove(this.list,"mouseover",this.onMouseOver),t.EventHandler.remove(this.list,"mouseout",this.onMouseLeave)},s.prototype.onMouseClick=function(e){var i=e.target,s=t.closest(i,"."+U.li);if(this.isValidLI(s)){this.isSelected=!0,this.setSelection(s,e);this.closePopup(100,e),this.inputElement.focus(),e.preventDefault()}},s.prototype.updateSelectedItem=function(e,i,s,l){var n=this;this.removeSelection(),e.classList.add(U.selected),this.removeHover();var o=this.getFormattedValue(e.getAttribute("data-value")),r=this.getDataByValue(o);if(s||t.isNullOrUndefined(i)||"down"===i.action||"up"===i.action)this.selectEventCallback(e,r,o),l&&this.setSelectOptions(e,i);else{var a=this.detachChanges(r);this.isSelected=!0;var h={e:i,item:e,itemData:a,isInteracted:!!i,cancel:!1};this.trigger("select",h,function(t){t.cancel?(e.classList.remove(U.selected),n.isSelected=!1,n.isSelectCancel=!0):(n.selectEventCallback(e,r,o),l&&n.setSelectOptions(e,i))})}},s.prototype.setSelection=function(e,t){this.isValidLI(e)&&(!e.classList.contains(U.selected)||this.isPopupOpen&&this.isSelected&&e.classList.contains(U.selected))?this.updateSelectedItem(e,t,!1,!0):this.setSelectOptions(e,t)},s.prototype.setSelectOptions=function(e,i){this.list&&this.removeHover(),this.previousSelectedLI=t.isNullOrUndefined(this.selectedLI)?null:this.selectedLI,this.selectedLI=e,this.isPopupOpen&&!t.isNullOrUndefined(this.selectedLI)&&this.setScrollPosition(i),(!i||38!==i.keyCode&&40!==i.keyCode)&&(t.isNullOrUndefined(i)||this.setValue(i))},s.prototype.setScrollPosition=function(e){if(t.isNullOrUndefined(e))this.scrollBottom(!0);else switch(e.action){case"pageDown":case"down":case"end":this.scrollBottom();break;default:this.scrollTop()}},s.prototype.scrollBottom=function(e){if(!t.isNullOrUndefined(this.selectedLI)){var i=this.list.offsetHeight,s=this.selectedLI.offsetTop+this.selectedLI.offsetHeight-this.list.scrollTop,l=this.list.scrollTop+s-i;l=e?l+2*parseInt(getComputedStyle(this.list).paddingTop,10):l;var n=this.selectedLI.offsetTop+this.selectedLI.offsetHeight-this.list.scrollTop;0===this.activeIndex?this.list.scrollTop=0:(s>i||!(n>0&&this.list.offsetHeight>n))&&(this.list.scrollTop=l)}},s.prototype.scrollTop=function(){if(!t.isNullOrUndefined(this.selectedLI)){var e=this.selectedLI.offsetTop-this.list.scrollTop;e=this.fields.groupBy&&e;var i=this.selectedLI.offsetTop+this.selectedLI.offsetHeight-this.list.scrollTop;0===this.activeIndex?this.list.scrollTop=0:e<0?this.list.scrollTop=this.list.scrollTop+e:i>0&&this.list.offsetHeight>i||(this.list.scrollTop=this.selectedLI.offsetTop)}},s.prototype.selectEventCallback=function(e,i,s,l){this.previousItemData=t.isNullOrUndefined(this.itemData)?null:this.itemData,this.item=e,this.itemData=i;var n=this.list.querySelector("."+U.focus);n&&t.removeClass([n],U.focus),l&&t.addClass([e],U.selected),e.setAttribute("aria-selected","true"),this.activeIndex=this.getIndexByValue(s)},s.prototype.detachChanges=function(e){return"string"==typeof e||"boolean"==typeof e||"number"==typeof e?Object.defineProperties({},{value:{value:e,enumerable:!0},text:{value:e,enumerable:!0}}):e},s.prototype.setValue=function(e){return this.isReact?(t.isNullOrUndefined(this.displayTemplate)?this.updateMentionValue(e):this.setDisplayTemplate(e),!0):(t.isNullOrUndefined(this.displayTemplate)||this.setDisplayTemplate(),this.updateMentionValue(e),!0)},s.prototype.updateMentionValue=function(e){var i,s,l,n,o,r=this.getItemData(),a=this.inputElement.ownerDocument.getSelection(),h=this.getTriggerCharPosition();if(i="string"==typeof this.suffixText?this.suffixText:"",this.isSelectCancel)return void(this.isSelectCancel=!1);if(null!==r.text&&(s=this.mentionVal(r.text)),this.isContentEditable(this.inputElement)){l=this.getTriggerCharPosition()+this.mentionChar.length,this.range&&this.range.startContainer.textContent.trim()!==this.mentionChar&&(l=this.range.endOffset),o=this.range,n=document.createRange(),this.getTextRange()&&-1!==this.getTextRange().lastIndexOf(this.mentionChar)||this.getTextRange()&&this.getTextRange().trim()===this.mentionChar?(n.setStart(o.startContainer,h),n.setEnd(o.startContainer,l)):""!==o.commonAncestorContainer.textContent.trim()&&!t.isNullOrUndefined(o.commonAncestorContainer.textContent.trim())&&this.getTextRange()&&-1!==this.getTextRange().lastIndexOf(this.mentionChar)?(n.setStart(o.startContainer,o.startOffset-1),n.setEnd(o.startContainer,o.endOffset-1)):(n.setStart(o.startContainer,o.startOffset),n.setEnd(o.startContainer,o.endOffset)),this.isTyped=!1,n.deleteContents();var p=this.createElement("div");p.innerHTML=s;for(var u=document.createDocumentFragment(),d=void 0,c=void 0;d=p.firstChild;)c=u.appendChild(d);if(n.insertNode(u),c&&((n=n.cloneRange()).setStartAfter(c),n.collapse(!0),a.removeAllRanges(),a.addRange(n)),this.isPopupOpen&&this.hidePopup(),!t.isNullOrUndefined(e.pointerType)&&"mouse"===e.pointerType){var m=new CustomEvent("content-changed",{detail:{click:!0}});this.inputElement.dispatchEvent(m)}this.onChangeEvent(e)}else{var f=this.inputElement,v=this.getTextRange().substring(h+this.mentionChar.length,this.getTextRange().length);s+=i,l=h+this.mentionChar.length,l+=v.length,f.value=f.value.substring(0,h)+s+f.value.substring(l,f.value.length),f.selectionStart=h+s.length,f.selectionEnd=h+s.length,this.isPopupOpen&&this.hidePopup(),this.onChangeEvent(e)}},s.prototype.mentionVal=function(e){var i=this.showMentionChar?this.mentionChar:"";return t.isNullOrUndefined(this.displayTemplate)||t.isNullOrUndefined(this.displayTempElement)||(e=this.displayTempElement.innerHTML),this.isContentEditable(this.inputElement)?t.Browser.isAndroid?'<span contenteditable="true" class="e-mention-chip">'+i+e+"</span>".concat("string"==typeof this.suffixText?this.suffixText:" "):'<span contenteditable="false" class="e-mention-chip">'+i+e+"</span>".concat("string"==typeof this.suffixText?this.suffixText:" "):i+e},s.prototype.setDisplayTemplate=function(e){var i,s=this;this.isReact&&(this.clearTemplate(["displayTemplate"]),this.displayTempElement&&(t.detach(this.displayTempElement),this.displayTempElement=null)),this.displayTempElement||(this.displayTempElement=this.createElement("div")),this.isReact||(this.displayTempElement.innerHTML="");var l=(i=t.compile(this.displayTemplate))(this.itemData,this,"displayTemplate",this.displayTemplateId,this.isStringTemplate,null,this.displayTempElement);l&&l.length>0&&t.append(l,this.displayTempElement),this.isReact?this.renderTemplates(function(){s.updateMentionValue(e)}):this.renderTemplates()},s.prototype.renderTemplates=function(e){this.renderReactTemplates(e)},s.prototype.setSpinnerTemplate=function(){var e,i=this;this.isReact&&(this.clearTemplate(["spinnerTemplate"]),this.spinnerTemplateElement&&(t.detach(this.spinnerTemplateElement),this.spinnerTemplateElement=null)),this.spinnerTemplateElement||(this.spinnerTemplateElement=this.createElement("div")),this.isReact||(this.spinnerTemplateElement.innerHTML="");var s=(e=t.compile(this.spinnerTemplate))(null,this,"spinnerTemplate",this.spinnerTemplateId,this.isStringTemplate,null,this.spinnerTemplateElement);if(s&&s.length>0)for(var l=0;l<s.length;l++)this.spinnerTemplateElement.appendChild(s[l]);this.isReact?this.renderTemplates(function(){i.popupObj.element.appendChild(i.spinnerTemplateElement)}):(this.renderTemplates(),this.popupObj.element.appendChild(this.spinnerTemplateElement))},s.prototype.onChangeEvent=function(e){this.isSelected=!1;var t,i=this.detachMentionChanges(this.itemData);t="string"==typeof this.previousItemData||"boolean"==typeof this.previousItemData||"number"==typeof this.previousItemData?Object.defineProperties({},{value:{value:this.previousItemData,enumerable:!0},text:{value:this.previousItemData,enumerable:!0}}):this.previousItemData;var s={e:e,item:this.item,itemData:i,previousItem:this.previousSelectedLI,previousItemData:t,isInteracted:!!e,value:this.item.innerHTML,element:this.inputElement};this.trigger("change",s)},s.prototype.detachMentionChanges=function(e){return"string"==typeof e||"boolean"==typeof e||"number"==typeof e?Object.defineProperties({},{value:{value:e,enumerable:!0},text:{value:e,enumerable:!0}}):e},s.prototype.getItemData=function(){var e=this.fields,i=null;i=this.itemData;var s,l;return t.isNullOrUndefined(i)||(s=t.getValue(e.value,i),l=t.getValue(e.text,i)),{value:t.isNullOrUndefined(i)||t.isUndefined(s)?i:s,text:t.isNullOrUndefined(i)||t.isUndefined(s)?i:l}},s.prototype.removeSelection=function(){if(this.list){var e=this.list.querySelectorAll("."+U.selected);e.length&&(t.removeClass(e,U.selected),e[0].removeAttribute("aria-selected"))}},s.prototype.onMouseOver=function(e){var i=t.closest(e.target,"."+U.li);this.setHover(i)},s.prototype.setHover=function(e){this.isValidLI(e)&&!e.classList.contains(U.hover)&&(this.removeHover(),t.addClass([e],U.hover))},s.prototype.removeHover=function(){if(this.list){var e=this.list.querySelectorAll("."+U.hover);e&&e.length&&t.removeClass(e,U.hover)}},s.prototype.isValidLI=function(e){return e&&e.hasAttribute("role")&&"option"===e.getAttribute("role")},s.prototype.onMouseLeave=function(){this.removeHover()},s.prototype.search=function(e,i,s){this.isContentEditable(this.inputElement)&&(this.range=this.getCurrentRange());var l=this.getTextRange(),n=this.getLastLetter(l);if((!this.ignoreCase||e!==n&&e!==n.toLowerCase())&&(this.ignoreCase||e!==n))return void(this.isPopupOpen&&this.hidePopup());this.resetList(this.dataSource,this.fields),t.isNullOrUndefined(this.list)?(this.renderList(),this.renderPopup()):this.showPopup(),this.popupObj.element.style.left=t.formatUnit(i),this.popupObj.element.style.top=t.formatUnit(s)},s.prototype.destroy=function(){this.hidePopup(),this.unWireEvent(),this.list&&this.unWireListEvents(),this.inputElement&&!this.inputElement.classList.contains("e-"+this.getModuleName())||(this.previousSelectedLI=null,this.item=null,this.selectedLI=null,this.popupObj=null,e.prototype.destroy.call(this))},s.prototype.getLocaleName=function(){return"mention"},s.prototype.getNgDirective=function(){return"EJS-MENTION"},s.prototype.getModuleName=function(){return"mention"},Ae([t.Property(null)],s.prototype,"cssClass",void 0),Ae([t.Property("@")],s.prototype,"mentionChar",void 0),Ae([t.Property(!1)],s.prototype,"showMentionChar",void 0),Ae([t.Property(!1)],s.prototype,"allowSpaces",void 0),Ae([t.Property(null)],s.prototype,"suffixText",void 0),Ae([t.Property(25)],s.prototype,"suggestionCount",void 0),Ae([t.Property(0)],s.prototype,"minLength",void 0),Ae([t.Property("None")],s.prototype,"sortOrder",void 0),Ae([t.Property(!0)],s.prototype,"ignoreCase",void 0),Ae([t.Property(!1)],s.prototype,"highlight",void 0),Ae([t.Property()],s.prototype,"locale",void 0),Ae([t.Property("auto")],s.prototype,"popupWidth",void 0),Ae([t.Property("300px")],s.prototype,"popupHeight",void 0),Ae([t.Property(null)],s.prototype,"displayTemplate",void 0),Ae([t.Property(null)],s.prototype,"itemTemplate",void 0),Ae([t.Property("No records found")],s.prototype,"noRecordsTemplate",void 0),Ae([t.Property(null)],s.prototype,"spinnerTemplate",void 0),Ae([t.Property()],s.prototype,"target",void 0),Ae([t.Property([])],s.prototype,"dataSource",void 0),Ae([t.Property(null)],s.prototype,"query",void 0),Ae([t.Property("Contains")],s.prototype,"filterType",void 0),Ae([t.Complex({text:null,value:null,iconCss:null,groupBy:null},V)],s.prototype,"fields",void 0),Ae([t.Event()],s.prototype,"actionBegin",void 0),Ae([t.Event()],s.prototype,"actionComplete",void 0),Ae([t.Event()],s.prototype,"actionFailure",void 0),Ae([t.Event()],s.prototype,"change",void 0),Ae([t.Event()],s.prototype,"beforeOpen",void 0),Ae([t.Event()],s.prototype,"opened",void 0),Ae([t.Event()],s.prototype,"closed",void 0),Ae([t.Event()],s.prototype,"select",void 0),Ae([t.Event()],s.prototype,"filtering",void 0),Ae([t.Event()],s.prototype,"created",void 0),Ae([t.Event()],s.prototype,"destroyed",void 0),s=Ae([t.NotifyPropertyChanges],s)}(F);return q.Inject(T),ne.Inject(T),ae.Inject(T),ye.Inject(Ce),Ie.Inject(Ce),e.incrementalSearch=h,e.Search=p,e.escapeCharRegExp=u,e.resetIncrementalSearchValues=d,e.highlightSearch=c,e.revertHighlightSearch=f,e.VirtualScroll=T,e.FieldSettings=V,e.dropDownBaseClasses=U,e.DropDownBase=F,e.dropDownListClasses=M,e.DropDownList=q,e.Fields=Z,e.TreeSettings=ee,e.DropDownTree=te,e.ComboBox=ne,e.AutoComplete=ae,e.MultiSelect=ye,e.CheckBoxSelection=Ce,e.createFloatLabel=v,e.updateFloatLabelState=g,e.removeFloating=y,e.setPlaceHolder=C,e.floatLabelFocus=b,e.floatLabelBlur=E,e.encodePlaceholder=S,e.SelectionSettings=Se,e.ToolbarSettings=xe,e.ListBox=Ie,e.Mention=ke,e}({},ej.base,ej.data,ej.lists,ej.popups,ej.inputs,ej.notifications,ej.buttons,ej.navigations),this.ejs=ej;
|
|
11
11
|
//# sourceMappingURL=ej2-dropdowns.min.js.map
|