@syncfusion/ej2-lists
Version:
The listview control allows you to select an item or multiple items from a list-like interface and represents the data in interactive hierarchical structure across different layouts or views.
10 lines • 96.2 kB
JavaScript
/*!
* filename: ej2-lists.min.js
* version : 31.1.17
* Copyright Syncfusion Inc. 2001 - 2024. All rights reserved.
* Use of this code is subject to the terms of our license.
* A copy of the current license can be obtained at any time by e-mailing
* licensing@syncfusion.com. Any infringement will be prosecuted under
* applicable laws.
*/
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("SyncfusionBase"),require("SyncfusionData"),require("SyncfusionButtons")):"function"==typeof define&&define.amd?define(["SyncfusionBase","SyncfusionData","SyncfusionButtons"],t):"object"==typeof exports?exports.SyncfusionLists=t(require("SyncfusionBase"),require("SyncfusionData"),require("SyncfusionButtons")):e.SyncfusionLists=t(e.SyncfusionBase,e.SyncfusionData,e.SyncfusionButtons)}(self,(e,t,i)=>(()=>{"use strict";var s={766:t=>{t.exports=e},741:e=>{e.exports=i},74:e=>{e.exports=t}},n={};function l(e){var t=n[e];if(void 0!==t)return t.exports;var i=n[e]={exports:{}};return s[e](i,i.exports,l),i.exports}l.d=(e,t)=>{for(var i in t)l.o(t,i)&&!l.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:t[i]})},l.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),l.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var r={};return(()=>{l.r(r),l.d(r,{FieldSettings:()=>g,ListBase:()=>e,ListView:()=>v,Sortable:()=>w,Virtualization:()=>y,classNames:()=>m,cssClass:()=>n,getFieldValues:()=>a,moveTo:()=>x});var e,t=l(766),i=l(74),s=l(741),n={li:"e-list-item",ul:"e-list-parent e-ul",group:"e-list-group-item",icon:"e-list-icon",text:"e-list-text",check:"e-list-check",checked:"e-checked",selected:"e-selected",expanded:"e-expanded",textContent:"e-text-content",hasChild:"e-has-child",level:"e-level",url:"e-list-url",collapsible:"e-icon-collapsible",disabled:"e-disabled",image:"e-list-img",iconWrapper:"e-icon-wrapper",anchorWrap:"e-anchor-wrap",navigable:"e-navigable"};function a(e,i){var s={};if((0,t.isNullOrUndefined)(e)||"string"==typeof e||"number"==typeof e||!(0,t.isNullOrUndefined)(e.isHeader))return e;for(var n=0,l=Object.keys(i);n<l.length;n++){var r=i[""+l[n]],a=(0,t.isNullOrUndefined)(r)||"string"!=typeof r?void 0:(0,t.getValue)(r,e);(0,t.isNullOrUndefined)(a)||(s[""+r]=a)}return s}function o(e){if(e)try{return"function"!=typeof e&&document.querySelector(e)?(0,t.compile)(document.querySelector(e).innerHTML.trim()):(0,t.compile)(e)}catch(i){return(0,t.compile)(e)}}!function(e){e.defaultMappedFields={id:"id",text:"text",url:"url",value:"value",isChecked:"isChecked",enabled:"enabled",expanded:"expanded",selected:"selected",iconCss:"iconCss",child:"child",isVisible:"isVisible",hasChildren:"hasChildren",tooltip:"tooltip",htmlAttributes:"htmlAttributes",urlAttributes:"urlAttributes",imageAttributes:"imageAttributes",imageUrl:"imageUrl",groupBy:null,sortBy:null};var s={level:1,listRole:"presentation",itemRole:"presentation",groupItemRole:"group",itemText:"list-item",wrapperRole:"presentation"},l={showCheckBox:!1,showIcon:!1,enableHtmlSanitizer:!1,expandCollapse:!1,fields:e.defaultMappedFields,ariaAttributes:s,listClass:"",itemClass:"",processSubChild:!1,sortOrder:"None",template:null,groupTemplate:null,headerTemplate:null,expandIconClass:"e-icon-collapsible",moduleName:"list",expandIconPosition:"Right",itemNavigable:!1};function r(e,t,i,s,n){return L(e,c(e,t,i,s,n),null,s)}function c(e,i,s,r,a){var o=[],c=(0,t.extend)({},l,r);n=S(c.moduleName);for(var h=v(),d=0;d<i.length;d++)if(!(0,t.isNullOrUndefined)(i[d])){var u=void 0;if(c.itemCreating&&"function"==typeof c.itemCreating){var p={dataSource:i,curData:i[d],text:i[d],options:c};c.itemCreating(p)}if(u=s?b(e,i[d],void 0,null,null,[],null,h,d,r):x(e,i[d],void 0,null,null,r,a),c.itemCreated&&"function"==typeof c.itemCreated){p={dataSource:i,curData:i[d],text:i[d],item:u,options:c};c.itemCreated(p)}o.push(u)}return o}function h(i,r,o,c,h,d){var u=(0,t.extend)({},l,o);n=S(u.moduleName);var p,m=!d||"listview"!==d.getModuleName()&&"multiselect"!==d.getModuleName()?(0,t.extend)({},e.defaultMappedFields,u.fields):u.fields,g=(0,t.extend)({},s,u.ariaAttributes),w=[];c&&(g.level=c);var L,C,V=[];r&&r.length&&!(0,t.isNullOrUndefined)(f(r).item)&&!Object.prototype.hasOwnProperty.call(f(r).item,m.id)&&(p=v());for(var E=0;E<r.length;E++){var O=a(r[E],m);if(!(0,t.isNullOrUndefined)(r[E])){if(u.itemCreating&&"function"==typeof u.itemCreating){var k={dataSource:r,curData:r[E],text:O[m.text],options:u,fields:m};u.itemCreating(k)}var D=r[E];u.itemCreating&&"function"==typeof u.itemCreating&&(O=a(r[E],m)),Object.prototype.hasOwnProperty.call(O,m.id)&&!(0,t.isNullOrUndefined)(O[m.id])&&(p=O[m.id]);var H=[];if(u.showCheckBox&&(u.itemNavigable&&(O[m.url]||O[m.urlAttributes])?w.push(i("input",{className:n.check,attrs:{type:"checkbox"}})):H.push(i("input",{className:n.check,attrs:{type:"checkbox"}}))),!0===h){if(u.showIcon&&Object.prototype.hasOwnProperty.call(O,m.iconCss)&&!(0,t.isNullOrUndefined)(O[m.iconCss])&&H.push(i("span",{className:n.icon+" "+O[m.iconCss]})),C=(L=b(i,D,O,m,u.itemClass,H,!(!Object.prototype.hasOwnProperty.call(D,"isHeader")||!D.isHeader),p,E,o)).querySelector("."+n.anchorWrap),Object.prototype.hasOwnProperty.call(O,m.tooltip)){var N=O[m.tooltip];if(o&&o.enableHtmlSanitizer)N=t.SanitizeHtmlHelper.sanitize(N);else N=i("span",{innerHTML:N}).innerText;L.setAttribute("title",N)}u.itemNavigable&&w.length&&(0,t.prepend)(w,L.firstElementChild)}else{if((L=x(i,D,O,m,u.itemClass,o,d)).classList.add(n.level+"-"+g.level),L.setAttribute("aria-level",g.level.toString()),"presentation"!==g.groupItemRole&&"presentation"!==g.itemRole||L.removeAttribute("aria-level"),C=L.querySelector("."+n.anchorWrap),Object.prototype.hasOwnProperty.call(O,m.tooltip)){N=O[m.tooltip];if(o&&o.enableHtmlSanitizer)N=t.SanitizeHtmlHelper.sanitize(N);else N=i("span",{innerHTML:N}).innerText;L.setAttribute("title",N)}if(Object.prototype.hasOwnProperty.call(O,m.htmlAttributes)&&O[m.htmlAttributes]){var T=O[m.htmlAttributes];"class"in T&&"string"==typeof T.class&&""===T.class.trim()&&delete T.class,I(L,T)}if(Object.prototype.hasOwnProperty.call(O,m.enabled)&&!1===O[m.enabled]&&L.classList.add(n.disabled),Object.prototype.hasOwnProperty.call(O,m.isVisible)&&!1===O[m.isVisible]&&(L.style.display="none"),Object.prototype.hasOwnProperty.call(O,m.imageUrl)&&!(0,t.isNullOrUndefined)(O[m.imageUrl])&&!u.template){var U={src:O[m.imageUrl],alt:(0,t.isNullOrUndefined)(O.name)?"Displaying Image":"Displaying "+O.name+" Image"};(0,t.merge)(U,O[m.imageAttributes]);var B=i("img",{className:n.image,attrs:U});C?C.insertAdjacentElement("afterbegin",B):(0,t.prepend)([B],L.firstElementChild)}if(u.showIcon&&Object.prototype.hasOwnProperty.call(O,m.iconCss)&&!(0,t.isNullOrUndefined)(O[m.iconCss])&&!u.template){var A=i("div",{className:n.icon+" "+O[m.iconCss]});C?C.insertAdjacentElement("afterbegin",A):(0,t.prepend)([A],L.firstElementChild)}H.length&&(0,t.prepend)(H,L.firstElementChild),u.itemNavigable&&w.length&&(0,t.prepend)(w,L.firstElementChild),y(i,O,m,r,u,L,g.level)}if(C&&(0,t.addClass)([L],[n.navigable]),u.itemCreated&&"function"==typeof u.itemCreated){k={dataSource:r,curData:r[E],text:O[m.text],item:L,options:u,fields:m};u.itemCreated(k)}w=[],V.push(L)}}return V}function d(e,i,s,n,r,a){var o=(0,t.extend)({},l,s);return L(e,h(e,i,s,n,r,a),o.listClass,s)}function u(e,t){if(t&&e){return Array.prototype.slice.call(t).indexOf(e)}}function p(e,t,s){if(void 0===s&&(s=new i.Query),"Ascending"===e)s.sortBy(t,"ascending",!0);else if("Descending"===e)s.sortBy(t,"descending",!0);else for(var n=0;n<s.queries.length;n++)"onSortBy"===s.queries[n].fn&&s.queries.splice(n,1);return s}function m(e,t){return new i.DataManager(e).executeLocal(t)}function f(e){for(var i={typeof:null,item:null},s=0;s<e.length;s++)if(!(0,t.isNullOrUndefined)(e[s]))return{typeof:typeof e[s],item:e[s]};return i}function I(e,i){var s={};(0,t.merge)(s,i),s.class&&((0,t.addClass)([e],s.class.split(" ")),delete s.class),(0,t.attributes)(e,s)}function g(e){for(var t={},i=e.attributes,s=0;s<i.length;s++)t[i[s].nodeName]=i[s].nodeValue;return t}function v(){return Math.floor(65536*(1+Math.random())).toString(16).substring(1)}function y(e,i,s,l,r,a,o){var c=i[s.child]||[],h=i[s.hasChildren];if(c.length&&(h=!0,a.classList.add(n.hasChild),r.processSubChild)){var u=d(e,c,r,++o);a.appendChild(u)}r.expandCollapse&&h&&!r.template&&(a.firstElementChild.classList.add(n.iconWrapper),("Left"===r.expandIconPosition?t.prepend:t.append)([e("div",{className:"e-icons "+r.expandIconClass})],a.querySelector("."+n.textContent)))}function b(e,i,r,a,o,c,h,d,u,p){var m,f,g=(0,t.extend)({},l,p),v=(0,t.extend)({},s,g.ariaAttributes),y=i,b=i;"string"!=typeof i&&"number"!=typeof i&&"boolean"!=typeof i&&(m=i,y="boolean"==typeof r[a.text]||"number"==typeof r[a.text]?r[a.text]:r[a.text]||"",b=r[a.value]),f=(0,t.isNullOrUndefined)(m)||(0,t.isNullOrUndefined)(r[a.id])||""===r[a.id]?d+"-"+u:d;var S=e("li",{className:(!0===h?n.group:n.li)+" "+((0,t.isNullOrUndefined)(o)?"":o),id:f,attrs:""!==v.groupItemRole&&""!==v.itemRole?{role:!0===h?v.groupItemRole:v.itemRole}:{}});return m&&Object.prototype.hasOwnProperty.call(r,a.enabled)&&"false"===r[a.enabled].toString()&&S.classList.add(n.disabled),p&&p.enableHtmlSanitizer&&(y=t.SanitizeHtmlHelper.sanitize(y)),h?S.innerText=y:(S.setAttribute("data-value",(0,t.isNullOrUndefined)(b)?"null":b),S.setAttribute("role","option"),m&&Object.prototype.hasOwnProperty.call(r,a.htmlAttributes)&&r[a.htmlAttributes]&&I(S,r[a.htmlAttributes]),c.length&&!g.itemNavigable&&(0,t.append)(c,S),m&&(r[a.url]||r[a.urlAttributes]&&r[a.urlAttributes].href)?S.appendChild(w(e,m,a,y,c,g.itemNavigable)):(c.length&&g.itemNavigable&&(0,t.append)(c,S),S.appendChild(document.createTextNode(y)))),S}function S(e){return{li:"e-"+e+"-item",ul:"e-"+e+"-parent e-ul",group:"e-"+e+"-group-item",icon:"e-"+e+"-icon",text:"e-"+e+"-text",check:"e-"+e+"-check",checked:"e-checked",selected:"e-selected",expanded:"e-expanded",textContent:"e-text-content",hasChild:"e-has-child",level:"e-level",url:"e-"+e+"-url",collapsible:"e-icon-collapsible",disabled:"e-disabled",image:"e-"+e+"-img",iconWrapper:"e-icon-wrapper",anchorWrap:"e-anchor-wrap",navigable:"e-navigable"}}function w(e,i,s,l,r,o){var c,h=a(i,s),d={href:h[s.url]};if(Object.prototype.hasOwnProperty.call(h,s.urlAttributes)&&h[s.urlAttributes]&&((0,t.merge)(d,h[s.urlAttributes]),d.href=h[s.url]?h[s.url]:h[s.urlAttributes].href),o){c=e("a",{className:n.text+" "+n.url});var u=e("div",{className:n.anchorWrap});r&&r.length&&(0,t.append)(r,u),u.appendChild(document.createTextNode(l)),(0,t.append)([u],c)}else c=e("a",{className:n.text+" "+n.url,innerHTML:l});return I(c,d),c}function x(e,i,r,a,c,h,d){var u,p,m,f=(0,t.extend)({},l,h),I=(0,t.extend)({},s,f.ariaAttributes),g=i;"string"!=typeof i&&"number"!=typeof i&&(m=i,g=r[a.text]||"",u=(0,t.isNullOrUndefined)(r._id)?r[a.id]:r._id,p=!(!Object.prototype.hasOwnProperty.call(i,"isHeader")||!i.isHeader)),h&&h.enableHtmlSanitizer&&(g=t.SanitizeHtmlHelper.sanitize(g));var y=e("li",{className:(!0===p?n.group:n.li)+" "+((0,t.isNullOrUndefined)(c)?"":c),attrs:""!==I.groupItemRole&&""!==I.itemRole?{role:!0===p?I.groupItemRole:I.itemRole}:{}});if(!0==!(0,t.isNullOrUndefined)(u)?y.setAttribute("data-uid",u):y.setAttribute("data-uid",v()),p&&h&&h.groupTemplate){var b=o(h.groupTemplate);if(d&&"listview"!==d.getModuleName())(S=b(i,d,"groupTemplate",f.groupTemplateID,!!f.isStringTemplate,null,y))&&(0,t.append)(S,y);else(0,t.append)(b(i,d,"groupTemplate",f.groupTemplateID,!!f.isStringTemplate),y)}else if(!p&&h&&h.template){var S;b=o(h.template);if(d&&"listview"!==d.getModuleName())(S=b(i,d,"template",f.templateID,!!f.isStringTemplate,null,y))&&(0,t.append)(S,y);else(0,t.append)(b(i,d,"template",f.templateID,!!f.isStringTemplate),y)}else{var x=e("div",{className:n.textContent,attrs:""!==I.wrapperRole?{role:I.wrapperRole}:{}});if(m&&(r[a.url]||r[a.urlAttributes]&&r[a.urlAttributes].href))x.appendChild(w(e,m,a,g,null,f.itemNavigable));else{var L=e("span",{className:n.text,attrs:""!==I.itemText?{role:I.itemText}:{}});h&&h.enableHtmlSanitizer?L.innerText=g:L.innerHTML=g,x.appendChild(L)}y.appendChild(x)}return y}function L(e,i,r,a){var o=(0,t.extend)({},l,a),c=(0,t.extend)({},s,o.ariaAttributes),h=e("ul",{className:(n=S(o.moduleName)).ul+" "+((0,t.isNullOrUndefined)(r)?"":r),attrs:""!==c.listRole?{role:c.listRole}:{}});return(0,t.append)(i,h),h}e.createList=function(e,i,n,a,o){var c=(0,t.extend)({},l,n),h=(0,t.extend)({},s,c.ariaAttributes),u=f(i).typeof;return"string"===u||"number"===u?r(e,i,a,n,o):d(e,i,n,h.level,a,o)},e.createListFromArray=r,e.createListItemFromArray=c,e.createListItemFromJson=h,e.createListFromJson=d,e.getSiblingLI=function(e,i,s){if(n=S(l.moduleName),e&&e.length){var r,a,o=Array.prototype.slice.call(e);for(r=o[(a=i?u(i,o):!0===s?o.length:-1)+(!0===s?-1:1)];r&&(!(0,t.isVisible)(r)||r.classList.contains(n.disabled));)r=o[a+=!0===s?-1:1];return r}},e.indexOf=u,e.groupDataSource=function(s,n,l){void 0===l&&(l="None");var r=(0,t.extend)({},e.defaultMappedFields,n),a=(new i.Query).group(r.groupBy),o=m(s,a=p(l,"key",a));s=[];for(var c=0;c<o.length;c++){var h=o[c].items,d={};d[r.text]=o[c].key,d.isHeader=!0;var u=r.text;"id"===u&&(d[""+(u="text")]=o[c].key),d._id="group-list-item-"+(o[c].key?o[c].key.toString().trim():"undefined"),d.items=h,s.push(d);for(var f=0;f<h.length;f++)s.push(h[f])}return s},e.addSorting=p,e.getDataSource=m,e.createJsonFromElement=function i(s,n){var r=(0,t.extend)({},l,n),a=(0,t.extend)({},e.defaultMappedFields,r.fields),o=s.cloneNode(!0),c=[];o.classList.add("json-parent");var h=o.querySelectorAll(".json-parent>li");o.classList.remove("json-parent");for(var d=0;d<h.length;d++){for(var u=h[d],p=u.querySelector("a"),m=u.querySelector("ul"),f={},I=p?p.childNodes:u.childNodes,y=Object.keys(I),b=0;b<I.length;b++)I[Number(y[b])].hasChildNodes()||(f[a.text]=I[Number(y[b])].textContent);var S=g(u);S.id?(f[a.id]=S.id,delete S.id):f[a.id]=v(),Object.keys(S).length&&(f[a.htmlAttributes]=S),p&&(S=g(p),Object.keys(S).length&&(f[a.urlAttributes]=S)),m&&(f[a.child]=i(m,n)),c.push(f)}return c},e.renderContentTemplate=function(i,s,r,c,h,d){for(var u,p=i("ul",{className:(n=S(l.moduleName)).ul,attrs:{role:"presentation"}}),m=(0,t.extend)({},l,h),f=(0,t.extend)({},e.defaultMappedFields,c),I=o(s),g=[],y=v(),b=0;b<r.length;b++){var w=a(r[b],f),x=r[b],L=x.isHeader;if(u="string"==typeof r[b]||"number"==typeof r[b]?x:w[f.value],m.itemCreating&&"function"==typeof m.itemCreating){var C={dataSource:r,curData:x,text:u,options:m,fields:f};m.itemCreating(C)}m.itemCreating&&"function"==typeof m.itemCreating&&(w=a(r[b],f),u="string"==typeof r[b]||"number"==typeof r[b]?x:w[f.value]);var V=i("li",{id:y+"-"+b,className:L?n.group:n.li,attrs:{role:"presentation"}});if(L)"string"==typeof r[b]||"number"==typeof r[b]?V.innerText=x:V.innerText=w[f.text];else{var E,O=L?m.groupTemplateID:m.templateID;if(L)if(d&&"listview"!==d.getModuleName())(E=I(x,d,"headerTemplate",O,!!m.isStringTemplate,null,V))&&(0,t.append)(E,V);else(0,t.append)(I(x,d,"headerTemplate",O,!!m.isStringTemplate),V);else if(d&&"listview"!==d.getModuleName())(E=I(x,d,"template",O,!!m.isStringTemplate,null,V))&&(0,t.append)(E,V);else(0,t.append)(I(x,d,"template",O,!!m.isStringTemplate),V);V.setAttribute("data-value",(0,t.isNullOrUndefined)(u)?"null":u),V.setAttribute("role","option")}if(m.itemCreated&&"function"==typeof m.itemCreated){C={dataSource:r,curData:x,text:u,item:V,options:m,fields:f};m.itemCreated(C)}g.push(V)}return(0,t.append)(g,p),p},e.renderGroupTemplate=function(i,s,n,r,a,c){for(var h=o(i),d=(0,t.extend)({},e.defaultMappedFields,n),u=(0,t.extend)({},l,a),p=d.groupBy,m=0,f=r;m<f.length;m++){var I=f[m],g={};if(g[""+p]=I.textContent,I.innerHTML="",c&&"listview"!==c.getModuleName()){var v=h(g,c,"groupTemplate",u.groupTemplateID,!!u.isStringTemplate,null,I);v&&(0,t.append)(v,I)}else(0,t.append)(h(g,c,"groupTemplate",u.groupTemplateID,!!u.isStringTemplate),I)}return r},e.generateId=v,e.generateUL=L,e.generateIcon=function(e,i,s,r){var a=(0,t.extend)({},l,r);return n=S(a.moduleName),("Left"===a.expandIconPosition?t.prepend:t.append)([e("div",{className:"e-icons "+a.expandIconClass+" "+((0,t.isNullOrUndefined)(s)?"":s)})],i.querySelector("."+n.textContent)),i}}(e||(e={}));var c,h=(c=function(e,t){return c=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])},c(e,t)},function(e,t){function i(){this.constructor=e}c(e,t),e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)}),d=function(e,t,i,s){var n,l=arguments.length,r=l<3?t:null===s?s=Object.getOwnPropertyDescriptor(t,i):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(e,t,i,s);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(r=(l<3?n(r):l>3?n(t,i,r):n(t,i))||r);return l>3&&r&&Object.defineProperty(t,i,r),r},u={None:[],SlideLeft:["SlideRightOut","SlideLeftOut","SlideLeftIn","SlideRightIn"],SlideDown:["SlideTopOut","SlideBottomOut","SlideBottomIn","SlideTopIn"],Zoom:["FadeOut","FadeZoomOut","FadeZoomIn","FadeIn"],Fade:["FadeOut","FadeOut","FadeIn","FadeIn"]},p={None:[],SlideLeft:["SlideLeftOut","SlideRightOut","SlideRightIn","SlideLeftIn"],SlideDown:["SlideBottomOut","SlideTopOut","SlideTopIn","SlideBottomIn"],Zoom:["FadeZoomOut","FadeOut","FadeIn","FadeZoomIn"],Fade:["FadeOut","FadeOut","FadeIn","FadeIn"]},m={root:"e-listview",hover:"e-hover",selected:"e-active",focused:"e-focused",parentItem:"e-list-parent",listItem:"e-list-item",listIcon:"e-list-icon",textContent:"e-text-content",listItemText:"e-list-text",groupListItem:"e-list-group-item",hasChild:"e-has-child",view:"e-view",header:"e-list-header",headerText:"e-headertext",headerTemplateText:"e-headertemplate-text",text:"e-text",disable:"e-disabled",container:"e-list-container",icon:"e-icons",backIcon:"e-icon-back",backButton:"e-back-button",checkboxWrapper:"e-checkbox-wrapper",checkbox:"e-checkbox",checked:"e-check",checklist:"e-checklist",checkboxIcon:"e-frame",checkboxRight:"e-checkbox-right",checkboxLeft:"e-checkbox-left",listviewCheckbox:"e-listview-checkbox",itemCheckList:"e-checklist",virtualElementContainer:"e-list-virtualcontainer",listTemplate:"e-listview-template"},f="Template",I="GroupTemplate",g=function(e){function i(){return null!==e&&e.apply(this,arguments)||this}return h(i,e),d([(0,t.Property)("id")],i.prototype,"id",void 0),d([(0,t.Property)("text")],i.prototype,"text",void 0),d([(0,t.Property)("isChecked")],i.prototype,"isChecked",void 0),d([(0,t.Property)("isVisible")],i.prototype,"isVisible",void 0),d([(0,t.Property)("enabled")],i.prototype,"enabled",void 0),d([(0,t.Property)("iconCss")],i.prototype,"iconCss",void 0),d([(0,t.Property)("child")],i.prototype,"child",void 0),d([(0,t.Property)("tooltip")],i.prototype,"tooltip",void 0),d([(0,t.Property)("groupBy")],i.prototype,"groupBy",void 0),d([(0,t.Property)("text")],i.prototype,"sortBy",void 0),d([(0,t.Property)("htmlAttributes")],i.prototype,"htmlAttributes",void 0),d([(0,t.Property)("tableName")],i.prototype,"tableName",void 0),i}(t.ChildProperty),v=function(n){function l(e,t){var i=n.call(this,e,t)||this;return i.previousSelectedItems=[],i.hiddenItems=[],i.enabledItems=[],i.disabledItems=[],i}return h(l,n),l.prototype.onPropertyChanged=function(e,i){for(var s=0,n=Object.keys(e);s<n.length;s++){switch(n[s]){case"htmlAttributes":this.setHTMLAttribute();break;case"cssClass":this.setCSSClass(i.cssClass);break;case"enable":this.setEnable();break;case"width":case"height":this.setSize();break;case"enableRtl":this.setEnableRTL();break;case"fields":this.listBaseOption.fields=this.fields.properties,this.enableVirtualization?this.virtualizationModule.reRenderUiVirtualization():this.reRender();break;case"headerTitle":this.curDSLevel.length||this.header(this.headerTitle,!1,"header");break;case"query":this.enableVirtualization?this.virtualizationModule.reRenderUiVirtualization():this.reRender();break;case"showHeader":this.header(this.headerTitle,!1,"header");break;case"enableVirtualization":(0,t.isNullOrUndefined)(this.contentContainer)||(0,t.detach)(this.contentContainer),this.refresh();break;case"showCheckBox":case"checkBoxPosition":this.enableVirtualization?this.virtualizationModule.reRenderUiVirtualization():this.setCheckbox();break;case"dataSource":this.previousScrollTop=this.element.scrollTop,this.enableVirtualization?this.virtualizationModule.reRenderUiVirtualization():this.reRender();break;case"sortOrder":case"template":this.enableVirtualization||this.refresh();break;case"showIcon":this.enableVirtualization?this.virtualizationModule.reRenderUiVirtualization():(this.listBaseOption.showIcon=this.showIcon,this.curViewDS=this.getSubDS(),this.resetCurrentList())}}},l.prototype.setHTMLAttribute=function(){!(0,t.isNullOrUndefined)(this.htmlAttributes)&&Object.keys(this.htmlAttributes).length&&(0,t.attributes)(this.element,this.htmlAttributes)},l.prototype.setCSSClass=function(e){this.cssClass&&(0,t.addClass)([this.element],this.cssClass.split(" ").filter(function(e){return e})),e&&(0,t.removeClass)([this.element],e.split(" ").filter(function(e){return e}))},l.prototype.setSize=function(){this.element.style.height=(0,t.formatUnit)(this.height),this.element.style.width=(0,t.formatUnit)(this.width),this.isWindow=!this.element.clientHeight},l.prototype.setEnable=function(){this.enableElement(this.element,this.enable)},l.prototype.setEnableRTL=function(){this.enableRtl?this.element.classList.add("e-rtl"):this.element.classList.remove("e-rtl")},l.prototype.enableElement=function(e,t){t?e.classList.remove(m.disable):e.classList.add(m.disable)},l.prototype.header=function(e,i,s){if(void 0===this.headerEle&&this.showHeader){this.headerEle=this.createElement("div",{className:m.header});var n=this.createElement("span",{className:m.headerText});this.enableHtmlSanitizer?(this.setProperties({headerTitle:t.SanitizeHtmlHelper.sanitize(this.headerTitle)},!0),n.innerText=this.headerTitle):n.innerHTML=this.headerTitle;var l=this.createElement("div",{className:m.text,innerHTML:n.outerHTML}),r=this.createElement("div",{className:m.icon+" "+m.backIcon+" "+m.backButton,attrs:{style:"display:none;"}});if(this.headerEle.appendChild(r),this.headerEle.appendChild(l),this.headerTemplate){var a=(0,t.compile)(this.headerTemplate),o=this.createElement("div",{className:m.headerTemplateText}),c=a({},this,s,this.LISTVIEW_HEADERTEMPLATE_ID,null,null,this.headerEle);c&&(0,t.append)(c,o),(0,t.append)([o],this.headerEle),this.isReact&&this.renderReactTemplates()}this.headerTemplate&&this.headerTitle&&l.classList.add("header"),this.element.classList.add("e-has-header"),(0,t.prepend)([this.headerEle],this.element)}else if(this.headerEle)if(this.showHeader){this.headerEle.style.display="";l=this.headerEle.querySelector("."+m.headerText),r=this.headerEle.querySelector("."+m.backIcon);this.enableHtmlSanitizer&&(e=t.SanitizeHtmlHelper.sanitize(e)),l.innerHTML=e,this.headerTemplate&&i&&(l.parentElement.classList.remove("header"),this.headerEle.querySelector("."+m.headerTemplateText).classList.add("nested-header")),this.headerTemplate&&!i&&(l.parentElement.classList.add("header"),this.headerEle.querySelector("."+m.headerTemplateText).classList.remove("nested-header"),this.headerEle.querySelector("."+m.headerTemplateText).classList.add("header")),r.style.display=!0===i?"":"none"}else this.headerEle.style.display="none"},l.prototype.switchView=function(e,i,s){var n=this;if(e&&i){var l=e.style.position,r="hidden"!==this.element.style.overflow?this.element.style.overflow:"";e.style.position="absolute",e.classList.add("e-view");var a=void 0,o=this.animation.duration;if(this.animation.effect)a=this.enableRtl?p[this.animation.effect]:u[this.animation.effect];else{a=u.SlideLeft,s=this.enableRtl,o=0}this.element.style.overflow="hidden",this.aniObj.animate(e,{name:!0===s?a[0]:a[1],duration:0===o&&"Enable"===t.animationMode?400:o,timingFunction:this.animation.easing,end:function(){e.style.display="none",n.element.style.overflow=r,e.style.position=l,e.classList.remove("e-view")}}),i.style.display="",this.aniObj.animate(i,{name:!0===s?a[2]:a[3],duration:0===o&&"Enable"===t.animationMode?400:o,timingFunction:this.animation.easing,end:function(){n.trigger("actionComplete")}}),this.curUL=i}},l.prototype.preRender=function(){if(this.template)try{"function"!=typeof this.template&&document.querySelectorAll(this.template).length&&this.setProperties({template:document.querySelector(this.template).innerHTML.trim()},!0)}catch(e){(0,t.compile)(this.template)}this.listBaseOption={template:this.template,headerTemplate:this.headerTemplate,groupTemplate:this.groupTemplate,expandCollapse:!0,listClass:"",ariaAttributes:{itemRole:"listitem",listRole:"list",itemText:"",groupItemRole:"presentation",wrapperRole:"presentation"},fields:this.fields.properties,sortOrder:this.sortOrder,showIcon:this.showIcon,itemCreated:this.renderCheckbox.bind(this),templateID:""+this.element.id+f,groupTemplateID:""+this.element.id+I,enableHtmlSanitizer:this.enableHtmlSanitizer},this.initialization()},l.prototype.initialization=function(){this.curDSLevel=[],this.animateOptions={},this.curViewDS=[],this.currentLiElements=[],this.isNestedList=!1,this.selectedData=[],this.selectedId=this.enablePersistence?this.selectedId:[],this.LISTVIEW_TEMPLATE_ID=""+this.element.id+f,this.LISTVIEW_GROUPTEMPLATE_ID=""+this.element.id+I,this.LISTVIEW_HEADERTEMPLATE_ID=this.element.id+"HeaderTemplate",this.aniObj=new t.Animation(this.animateOptions),this.removeElement(this.curUL),this.removeElement(this.ulElement),this.removeElement(this.headerEle),this.removeElement(this.contentContainer),this.curUL=this.ulElement=this.liCollection=this.headerEle=this.contentContainer=void 0},l.prototype.renderCheckbox=function(e){var i=this;if(e.item.classList.contains(m.hasChild)&&(this.isNestedList=!0),this.showCheckBox&&e.item.classList.contains(m.listItem)){var n,l=(0,s.createCheckBox)(this.createElement,!1,{checked:!1,enableRtl:this.enableRtl,cssClass:m.listviewCheckbox});l.setAttribute("role","checkbox");var r=l.querySelector("."+m.checkboxIcon);if(e.item.classList.add(m.itemCheckList),e.item.firstElementChild.classList.add(m.checkbox),this.template&&this.element?(0,t.addClass)([this.element],m.listTemplate):null===this.template&&this.element&&this.element.classList&&this.element.classList.contains("e-listview-template")&&(0,t.removeClass)([this.element],m.listTemplate),"string"!=typeof this.dataSource[0]&&"number"!=typeof this.dataSource[0])if(n=a(e.curData,this.listBaseOption.fields),this.enablePersistence&&!(0,t.isNullOrUndefined)(this.selectedId))-1!==this.selectedId.findIndex(function(e){return e===n[i.listBaseOption.fields.id].toString()})&&this.checkInternally(e,l);else n[this.listBaseOption.fields.isChecked]&&this.checkInternally(e,l);else"string"!=typeof this.dataSource[0]&&"number"!=typeof this.dataSource[0]||-1===this.selectedData.indexOf(e.text)||this.checkInternally(e,l);l.setAttribute("aria-checked",r.classList.contains(m.checked)?"true":"false"),l.setAttribute("aria-label",e.text),"Left"===this.checkBoxPosition?(l.classList.add(m.checkboxLeft),e.item.firstElementChild.classList.add(m.checkboxLeft),e.item.firstElementChild.insertBefore(l,e.item.firstElementChild.childNodes[0])):(l.classList.add(m.checkboxRight),e.item.firstElementChild.classList.add(m.checkboxRight),e.item.firstElementChild.appendChild(l)),this.currentLiElements.push(e.item),"Left"===this.checkBoxPosition?this.virtualCheckBox=e.item.firstElementChild.children[0]:this.virtualCheckBox=e.item.firstElementChild.lastElementChild}},l.prototype.checkInternally=function(e,t){e.item.classList.add(m.selected),t.querySelector("."+m.checkboxIcon).classList.add(m.checked),t.setAttribute("aria-checked","true")},l.prototype.checkItem=function(e){this.toggleCheckBase(e,!0)},l.prototype.toggleCheckBase=function(e,i){if(this.showCheckBox){var s=e;if(e instanceof Object&&e.constructor!==HTMLLIElement&&(s=this.getLiFromObjOrElement(e)),!(0,t.isNullOrUndefined)(s)){var n=s.querySelector("."+m.checkboxIcon);!0===i?s.classList.add(m.selected):s.classList.remove(m.selected),!0===i?n.classList.add(m.checked):n.classList.remove(m.checked),n.parentElement.setAttribute("aria-checked",i?"true":"false")}this.setSelectedItemData(s),this.updateSelectedId()}},l.prototype.uncheckItem=function(e){this.toggleCheckBase(e,!1)},l.prototype.checkAllItems=function(){this.toggleAllCheckBase(!0)},l.prototype.uncheckAllItems=function(){this.toggleAllCheckBase(!1)},l.prototype.toggleAllCheckBase=function(e){if(this.showCheckBox){for(var t=0;t<this.liCollection.length;t++){var i=this.liCollection[t].querySelector("."+m.checkboxIcon);i&&(e?i.classList.contains(m.checked)||this.checkItem(this.liCollection[t]):i.classList.contains(m.checked)&&this.uncheckItem(this.liCollection[t]))}this.enableVirtualization&&this.virtualizationModule.checkedItem(e),this.updateSelectedId()}},l.prototype.setCheckbox=function(){if(this.showCheckBox)for(var e=Array.prototype.slice.call(this.element.querySelectorAll("."+m.listItem)),t={item:void 0,curData:void 0,dataSource:void 0,fields:void 0,options:void 0,text:""},i=0;i<e.length;i++){var s=e[i];t.item=s,t.curData=this.getItemData(s),s.querySelector("."+m.checkboxWrapper)&&this.removeElement(s.querySelector("."+m.checkboxWrapper)),this.renderCheckbox(t),t.item.classList.contains(m.selected)&&this.checkInternally(t,t.item.querySelector("."+m.checkboxWrapper))}else{for(e=Array.prototype.slice.call(this.element.querySelectorAll("."+m.itemCheckList)),i=0;i<e.length;i++){(s=e[i]).classList.remove(m.selected),s.firstElementChild.classList.remove(m.checkbox),this.removeElement(s.querySelector("."+m.checkboxWrapper))}this.selectedItems&&this.selectedItems.item.classList.add(m.selected)}},l.prototype.refreshItemHeight=function(){this.virtualizationModule&&this.virtualizationModule.refreshItemHeight()},l.prototype.handleCheckboxState=function(e,i,s,n,l,r,a,o){this.trigger("select",r,function(c){c.cancel&&((a?n:!n)?(i.classList.add(m.checked),e.classList.add(m.selected)):(i.classList.remove(m.checked),e.classList.remove(m.selected)),s.setAttribute("aria-checked",a?n?"true":"false":n?"false":"true"),(0,t.merge)(r,{isChecked:i.classList.contains(m.checked)}),l&&(e.classList.remove(m.focused),o&&o.classList.remove("e-focused")))})},l.prototype.clickHandler=function(e){if(!Array.isArray(this.dataSource)||0!==this.dataSource.length){var i=e.target;this.targetElement=i;var s,n=i.classList;if(n.contains(m.backIcon)||n.contains(m.headerText))this.showCheckBox&&this.curDSLevel[this.curDSLevel.length-1]&&this.uncheckAllItems(),this.back();else{var l=(0,t.closest)(i.parentNode,"."+m.listItem);if(null===l&&(l=i),this.removeFocus(),this.enable&&this.showCheckBox&&this.isValidLI(l))if(e.target.classList.contains(m.checkboxIcon)){if(l.classList.add(m.focused),(0,t.isNullOrUndefined)(l.querySelector("."+m.checked))){var r={curData:void 0,dataSource:void 0,fields:void 0,options:void 0,text:void 0,item:l};this.checkInternally(r,r.item.querySelector("."+m.checkboxWrapper))}else this.uncheckItem(l),l.classList.add(m.focused);if(this.enableVirtualization&&this.virtualizationModule.setCheckboxLI(l,e),e){var a=this.selectEventData(l,e),o=l.querySelector("."+m.checkboxIcon);(0,t.merge)(a,{isChecked:o.classList.contains(m.checked)});var c=l.querySelector("."+m.checkboxWrapper),h=o.classList.contains(m.checked),d=l.classList.contains(m.focused);this.handleCheckboxState(l,o,c,h,d,a,!1)}}else l.classList.contains(m.hasChild)?(this.removeHover(),this.removeSelect(),this.removeSelect(l),this.setSelectLI(l,e),l.classList.remove(m.selected)):(this.setCheckboxLI(l,e),"INPUT"!==i.nodeName&&"TEXTAREA"!==i.nodeName||(i.classList.add("e-focused"),this.targetElement=i));else this.setSelectLI(l,e),"INPUT"!==i.nodeName&&"TEXTAREA"!==i.nodeName||(i.classList.add("e-focused"),this.targetElement=i);s=(0,t.closest)(e.target,"li"),(0,t.isNullOrUndefined)(s)||s.classList.contains("e-has-child")&&!e.target.parentElement.classList.contains("e-listview-checkbox")&&s.classList.add(m.disable)}this.updateSelectedId()}},l.prototype.removeElement=function(e){return e&&e.parentNode&&e.parentNode.removeChild(e)},l.prototype.hoverHandler=function(e){var i=(0,t.closest)(e.target.parentNode,"."+m.listItem);this.setHoverLI(i)},l.prototype.leaveHandler=function(){this.removeHover()},l.prototype.homeKeyHandler=function(e,t){if(e.preventDefault(),Object.keys(this.dataSource).length&&this.curUL){var i=this.curUL.querySelectorAll("."+m.listItem),s=this.curUL.querySelector("."+m.focused)||this.curUL.querySelector("."+m.selected);s&&(s.classList.remove(m.focused),this.showCheckBox||s.classList.remove(m.selected));var n=t?i.length-1:0;i[n].classList.contains(m.hasChild)||this.showCheckBox?i[n].classList.add(m.focused):this.setSelectLI(i[n],e),i[n]?this.element.setAttribute("aria-activedescendant",i[n].id.toString()):this.element.removeAttribute("aria-activedescendant")}},l.prototype.onArrowKeyDown=function(i,s){var n,l;return!(0,t.isNullOrUndefined)(this.curUL.querySelector("."+m.hasChild))||this.showCheckBox?(l=this.curUL.querySelector("."+m.focused)||this.curUL.querySelector("."+m.selected),n=e.getSiblingLI(this.curUL.querySelectorAll("."+m.listItem),l,s),(0,t.isNullOrUndefined)(n)||(l&&(l.classList.remove(m.focused),this.showCheckBox||l.classList.remove(m.selected)),n.classList.contains(m.hasChild)||this.showCheckBox?n.classList.add(m.focused):this.setSelectLI(n,i))):(l=this.curUL.querySelector("."+m.selected),n=e.getSiblingLI(this.curUL.querySelectorAll("."+m.listItem),l,s),this.setSelectLI(n,i)),n?this.element.setAttribute("aria-activedescendant",n.id.toString()):this.element.removeAttribute("aria-activedescendant"),n},l.prototype.arrowKeyHandler=function(e,t){var i=this;if(e.preventDefault(),Object.keys(this.dataSource).length&&this.curUL){var s=this.onArrowKeyDown(e,t),n=this.element.getBoundingClientRect().top,l=this.element.getBoundingClientRect().height,r=this.curUL.querySelector("."+m.listItem).getBoundingClientRect(),a=void 0,o=void 0;if(this.fields.groupBy&&(o=this.curUL.querySelector("."+m.groupListItem).getBoundingClientRect()),s){var c=s.getBoundingClientRect().top,h=s.getBoundingClientRect().height;if(t)(a=this.isWindow?c:c-n)<0&&(!0===this.isWindow?window.scroll(0,pageYOffset+a):this.element.scrollTop=this.element.scrollTop+a);else{var d=this.isWindow?window.innerHeight:l;(a=this.isWindow?c+h:c-n+h)>d&&(!0===this.isWindow?window.scroll(0,pageYOffset+(a-d)):this.element.scrollTop=this.element.scrollTop+(a-d))}}else if(this.enableVirtualization&&t&&this.virtualizationModule.uiFirstIndex)this.onUIScrolled=function(){i.onArrowKeyDown(e,t),i.onUIScrolled=void 0},a=this.virtualizationModule.listItemHeight,!0===this.isWindow?window.scroll(0,pageYOffset-a):this.element.scrollTop=this.element.scrollTop-a;else if(t)if(this.showHeader&&this.headerEle){var u=o?o.top:r.top,p=this.headerEle.getBoundingClientRect();a=p.top<0?p.height-u:0,!0===this.isWindow?window.scroll(0,pageYOffset-a):this.element.scrollTop=0}else this.fields.groupBy&&(a=this.isWindow?o.top<0?o.top:0:n-r.top+o.height,!0===this.isWindow?window.scroll(0,pageYOffset+a):this.element.scrollTop=this.element.scrollTop-a)}},l.prototype.enterKeyHandler=function(e){if(Object.keys(this.dataSource).length&&this.curUL){var i=!(0,t.isNullOrUndefined)(this.curUL.querySelector("."+m.hasChild)),s=this.curUL.querySelector("."+m.focused);i&&s&&(s.classList.remove(m.focused),this.showCheckBox&&(this.removeSelect(),this.removeSelect(s),this.removeHover()),this.setSelectLI(s,e))}},l.prototype.spaceKeyHandler=function(e){if(this.enable&&this.showCheckBox&&Object.keys(this.dataSource).length&&this.curUL){e.preventDefault();var i=this.curUL.querySelector("."+m.focused),s=void 0,n=void 0;if(!(0,t.isNullOrUndefined)(i)&&(0,t.isNullOrUndefined)(i.querySelector("."+m.checked))){var l={curData:void 0,dataSource:void 0,fields:void 0,options:void 0,text:void 0,item:i};s=l.item.querySelector("."+m.checkboxWrapper),this.checkInternally(l,s),n=s.querySelector("."+m.checkboxIcon+"."+m.icon)}else this.uncheckItem(i);var r=this.selectEventData(i,e);if((0,t.merge)(r,{isChecked:!!n&&n.classList.contains(m.checked)}),!(0,t.isNullOrUndefined)(i)){var a=i.querySelector("."+m.checkboxWrapper),o=i.querySelector("."+m.checkboxIcon),c=o.classList.contains(m.checked),h=i.classList.contains(m.focused);this.handleCheckboxState(i,o,a,c,h,r,!1)}this.updateSelectedId()}},l.prototype.keyActionHandler=function(e){switch(e.keyCode){case 36:this.homeKeyHandler(e);break;case 35:this.homeKeyHandler(e,!0);break;case 40:this.arrowKeyHandler(e);break;case 38:this.arrowKeyHandler(e,!0);break;case 13:this.enterKeyHandler(e);break;case 8:this.showCheckBox&&this.curDSLevel[this.curDSLevel.length-1]&&this.uncheckAllItems(),this.back();break;case 32:!(0,t.isNullOrUndefined)(this.targetElement)&&this.targetElement.classList.contains("e-focused")||this.spaceKeyHandler(e)}},l.prototype.swipeActionHandler=function(e){"Right"===e.swipeDirection&&e.velocity>.5&&"touchend"===e.originalEvent.type&&(this.showCheckBox&&this.curDSLevel[this.curDSLevel.length-1]&&this.uncheckAllItems(),this.back())},l.prototype.focusout=function(){if(Object.keys(this.dataSource).length&&this.curUL){var e=this.curUL.querySelector("."+m.focused);e&&(e.classList.remove(m.focused),this.showCheckBox||(0,t.isNullOrUndefined)(this.selectedLI)||this.selectedLI.classList.add(m.selected))}},l.prototype.wireEvents=function(){t.EventHandler.add(this.element,"keydown",this.keyActionHandler,this),t.EventHandler.add(this.element,"click",this.clickHandler,this),t.EventHandler.add(this.element,"mouseover",this.hoverHandler,this),t.EventHandler.add(this.element,"mouseout",this.leaveHandler,this),t.EventHandler.add(this.element,"focusout",this.focusout,this),this.touchModule=new t.Touch(this.element,{swipe:this.swipeActionHandler.bind(this)}),(0,t.isNullOrUndefined)(this.scroll)||t.EventHandler.add(this.element,"scroll",this.onListScroll,this)},l.prototype.unWireEvents=function(){t.EventHandler.remove(this.element,"keydown",this.keyActionHandler),t.EventHandler.remove(this.element,"click",this.clickHandler),t.EventHandler.remove(this.element,"mouseover",this.hoverHandler),t.EventHandler.remove(this.element,"mouseout",this.leaveHandler),t.EventHandler.remove(this.element,"mouseover",this.hoverHandler),t.EventHandler.remove(this.element,"mouseout",this.leaveHandler),t.EventHandler.remove(this.element,"focusout",this.focusout),(0,t.isNullOrUndefined)(this.scroll)||t.EventHandler.remove(this.element,"scroll",this.onListScroll),this.touchModule&&this.touchModule.destroy(),this.touchModule=null},l.prototype.removeFocus=function(){for(var e=0,t=this.element.querySelectorAll("."+m.focused);e<t.length;e++){t[e].classList.remove(m.focused)}},l.prototype.removeHover=function(){var e=this.element.querySelector("."+m.hover);e&&e.classList.remove(m.hover)},l.prototype.removeSelect=function(e){if((0,t.isNullOrUndefined)(e))for(var i=0,s=this.element.querySelectorAll("."+m.selected);i<s.length;i++){var n=s[i];this.showCheckBox&&n.querySelector("."+m.checked)||n.classList.remove(m.selected)}else e.classList.remove(m.selected)},l.prototype.isValidLI=function(e){return e&&e.classList.contains(m.listItem)&&!e.classList.contains(m.groupListItem)&&!e.classList.contains(m.disable)},l.prototype.setCheckboxLI=function(e,i){if(this.isValidLI(e)&&this.enable&&this.showCheckBox){this.curUL.querySelector("."+m.focused)&&this.curUL.querySelector("."+m.focused).classList.remove(m.focused);var s=e.querySelector("textarea")||e.querySelector("input");e.classList.add(m.focused),(0,t.isNullOrUndefined)(i)||i.target===s&&s.classList.add("e-focused");var n=e.querySelector("."+m.checkboxWrapper),l=n.querySelector("."+m.checkboxIcon+"."+m.icon);this.removeHover();var r=l.classList.contains(m.checked),a=e.classList.contains(m.focused);r?(l.classList.remove(m.checked),e.classList.remove(m.selected)):(l.classList.add(m.checked),e.classList.add(m.selected)),n.setAttribute("aria-checked",l.classList.contains(m.checked)?"true":"false");var o=this.selectEventData(e,i);(0,t.merge)(o,{isChecked:l.classList.contains(m.checked)}),this.enableVirtualization&&this.virtualizationModule.setCheckboxLI(e,i),this.handleCheckboxState(e,l,n,r,a,o,!0,s),this.setSelectedItemData(e),this.renderSubList(e)}},l.prototype.selectEventData=function(e,i){var s,n=this.getItemData(e),l=a(n,this.listBaseOption.fields);s=!(0,t.isNullOrUndefined)(n)&&"string"==typeof this.dataSource[0]||"number"==typeof this.dataSource[0]?{item:e,text:e&&e.innerText.trim(),data:this.dataSource}:{item:e,text:l&&l[this.listBaseOption.fields.text],data:n};var r={};return(0,t.merge)(r,s),i&&(0,t.merge)(r,{isInteracted:!0,event:i,cancel:!1,index:this.curUL&&Array.prototype.indexOf.call(this.curUL.children,e)}),r},l.prototype.setSelectedItemData=function(e){var i=this.getItemData(e),s=a(i,this.listBaseOption.fields);(0,t.isNullOrUndefined)(i)||"string"!=typeof this.dataSource[0]&&"number"!=typeof this.dataSource[0]?this.selectedItems={item:e,text:s&&s[this.listBaseOption.fields.text],data:i}:this.selectedItems={item:e,text:e&&e.innerText.trim(),data:this.dataSource}},l.prototype.setSelectLI=function(e,t){var i=this;if(this.isValidLI(e)&&!e.classList.contains(m.selected)&&this.enable){this.showCheckBox||this.removeSelect(),e.classList.add(m.selected),this.removeHover(),this.setSelectedItemData(e),this.enableVirtualization&&this.virtualizationModule.setSelectLI(e,t);var s=this.selectEventData(e,t);this.trigger("select",s,function(t){t.cancel?(e.classList.remove(m.selected),i.selectedLI=e):(i.selectedLI=e,i.renderSubList(e))})}},l.prototype.setHoverLI=function(e){if(this.isValidLI(e)&&!e.classList.contains(m.hover)&&this.enable){var i=this.element.querySelectorAll("."+m.hover);i&&i.length&&(0,t.removeClass)(i,m.hover),e.classList.contains(m.selected)&&!this.showCheckBox||e.classList.add(m.hover)}},l.prototype.getSubDS=function(){var e=this.curDSLevel;if(e.length){for(var t=this.localData,i=0,s=e;i<s.length;i++){var n=s[i],l={};l[this.fields.id]=n,this.curDSJSON=this.findItemFromDS(t,l);var r=a(this.curDSJSON,this.listBaseOption.fields);t=this.curDSJSON?r[this.fields.child]:t}return t}return this.localData},l.prototype.getItemData=function(e){var s,n=this.dataSource instanceof i.DataManager?this.localData:this.dataSource,l=this.getElementUID(e);return s=(0,t.isNullOrUndefined)(this.element.querySelector("."+m.hasChild))&&this.fields.groupBy?this.curViewDS:n,this.findItemFromDS(s,l)},l.prototype.findItemFromDS=function(e,i,s){var n,l=this;return e&&e.length&&i?e.some(function(r){var o=a(r,l.listBaseOption.fields);if(!i[l.fields.id]&&!i[l.fields.text]||i[l.fields.id]&&(!(0,t.isNullOrUndefined)(o[l.fields.id])&&o[l.fields.id].toString())!==i[l.fields.id].toString()||i[l.fields.text]&&o[l.fields.text]!==i[l.fields.text])if("object"!=typeof r&&-1!==e.indexOf(r))n=s?e:r;else if(!(0,t.isNullOrUndefined)(i[l.fields.id])&&(0,t.isNullOrUndefined)(o[l.fields.id])){var c=l.element.querySelector('[data-uid="'+i[l.fields.id]+'"]');c&&c.innerText.trim()===o[l.fields.text]&&(n=r)}else Object.prototype.hasOwnProperty.call(o,l.fields.child)&&o[l.fields.child].length&&(n=l.findItemFromDS(o[l.fields.child],i,s));else n=s?e:r;return!!n}):n=e,n},l.prototype.getQuery=function(){var t=[],s=this.query?this.query:new i.Query;if(!this.query){for(var n=0,l=Object.keys(this.fields.properties);n<l.length;n++){var r=l[n];"tableName"!==r&&this.fields[""+r]&&this.fields[""+r]!==e.defaultMappedFields[""+r]&&-1===t.indexOf(this.fields[""+r])&&t.push(this.fields[""+r])}s.select(t),Object.prototype.hasOwnProperty.call(this.fields.properties,"tableName")&&s.from(this.fields.tableName)}return s},l.prototype.setViewDataSource=function(i){void 0===i&&(i=this.localData);var s=(0,t.isNullOrUndefined)(this.fields.sortBy)?this.fields.text:this.fields.sortBy,n=e.addSorting(this.sortOrder,s);i&&this.fields.groupBy?"None"!==this.sortOrder?this.curViewDS=e.groupDataSource(e.getDataSource(i,n),this.listBaseOption.fields,this.sortOrder):this.curViewDS=e.groupDataSource(i,this.listBaseOption.fields,this.sortOrder):i&&"None"!==this.sortOrder?this.curViewDS=e.getDataSource(i,n):this.curViewDS=i},l.prototype.isInAnimation=function(){return this.curUL.classList.contains(".e-animate")},l.prototype.renderRemoteLists=function(e,t){this.isDestroyed||(this.localData=e.result,t.removeElement(t.contentContainer),this.renderList(),this.trigger("actionComplete",e))},l.prototype.triggerActionFailure=function(e){this.isDestroyed||this.trigger("actionFailure",e)},l.prototype.setLocalData=function(){var s=this;if(this.trigger("actionBegin"),this.dataSource instanceof i.DataManager)this.dataSource.ready?this.dataSource.ready.then(function(e){s.isOffline=s.dataSource.dataSource.offline,s.dataSource instanceof i.DataManager&&s.isOffline&&s.renderRemoteLists(e,s)}).catch(function(e){s.triggerActionFailure(e)}):this.dataSource.executeQuery(this.getQuery()).then(function(e){s.renderRemoteLists(e,s)}).catch(function(e){s.triggerActionFailure(e)});else if(this.dataSource&&this.dataSource.length)this.localData=this.dataSource,this.renderList(),this.trigger("actionComplete",{data:this.localData});else{var n=this.element.querySelector("ul");n&&((0,t.remove)(n),this.setProperties({dataSource:e.createJsonFromElement(n)},!0),this.localData=this.dataSource,this.renderList(),this.trigger("actionComplete",{data:this.localData}))}},l.prototype.reRender=function(){this.removeElement(this.headerEle),this.removeElement(this.ulElement),this.removeElement(this.contentContainer),this.isReact&&this.clearTemplate(),-1===Object.keys(window).indexOf("ejsInterop")&&(this.element.innerHTML=""),this.headerEle=this.ulElement=this.liCollection=void 0,this.header(),this.setLocalData()},l.prototype.resetCurrentList=function(){this.setViewDataSource(this.curViewDS),this.contentContainer.innerHTML="",this.createList(),this.renderIntoDom(this.curUL)},l.prototype.setAttributes=function(e){for(var t=0;t<e.length;t++){var i=e[parseInt(t.toString(),10)];i.classList.contains("e-list-item")&&(i.setAttribute("id",this.element.id+"_"+i.getAttribute("data-uid")),i.setAttribute("tabindex","-1"))}},l.prototype.createList=function(){this.currentLiElements=[],this.isNestedList=!1,this.ulElement=this.curUL=e.createList(this.createElement,this.curViewDS,this.listBaseOption,null,this),this.liCollection=this.curUL.querySelectorAll("."+m.listItem),this.setAttributes(this.liCollection)},l.prototype.renderSubList=function(i){this.liElement=i;var s=i.getAttribute("data-uid");if(i.classList.contains(m.hasChild)&&s){var n=(0,t.closest)(i.parentNode,"."+m.parentItem),l=this.element.querySelector("[pid='"+s+"']");if(this.curDSLevel.push(s),this.setViewDataSource(this.getSubDS()),this.enableVirtualization&&this.virtualizationModule.updateDOMItemCount(),!l){var r=this.curViewDS;l=e.createListFromJson(this.createElement,r,this.listBaseOption,this.curDSLevel.length,null,this),this.isReact&&this.renderReactTemplates();var o=l.querySelectorAll("."+m.listItem);this.setAttributes(o),l.setAttribute("pID",s),l.style.display="none",this.renderIntoDom(l)}if(this.switchView(n,l),this.liCollection=this.curUL.querySelectorAll("."+m.listItem),this.selectedItems){var c=a(this.selectedItems.data,this.listBaseOption.fields);this.header(c[this.listBaseOption.fields.text],!0,"header")}this.selectedLI=void 0}},l.prototype.renderIntoDom=function(e){this.contentContainer.appendChild(e)},l.prototype.renderList=function(e){this.setViewDataSource(e),this.enableVirtualization?(Object.keys(this.dataSource).length&&(!this.template&&!this.groupTemplate||this.virtualizationModule.isNgTemplate()||(this.listBaseOption.itemCreated=this.virtualizationModule.createUIItem.bind(this.virtualizationModule))),this.virtualizationModule.uiVirtualization()):(this.createList(),this.contentContainer=this.createElement("div",{className:m.container}),this.element.appendChild(this.contentContainer),this.renderIntoDom(this.ulElement),this.isReact&&this.renderReactTemplates())},l.prototype.getElementUID=function(e){var t={};return e instanceof Element?t[this.fields.id]=e.getAttribute("data-uid"):t=e,t},l.prototype.render=function(){this.element.classList.add(m.root),(0,t.attributes)(this.element,{tabindex:"0"}),this.setCSSClass(),this.setEnableRTL(),this.setEnable(),this.setSize(),this.wireEvents(),this.header(),this.setLocalData(),this.setHTMLAttribute(),this.rippleFn=(0,t.rippleEffect)(this.element,{selector:"."+m.listItem}),this.renderComplete(),this.previousScrollTop=this.element.scrollTop},l.prototype.destroy=function(){this.isReact&&this.clearTemplate(),this.unWireEvents();var e=[m.root,m.disable,"e-rtl","e-has-header","e-lib"].concat(this.cssClass?this.cssClass.split(" ").filter(function(e){return e}):[]);(0,t.removeClass)([this.element],e),this.element.removeAttribute("role"),this.element.removeAttribute("tabindex"),this.curUL=this.ulElement=this.liCollection=this.headerEle=void 0,this.element.innerHTML="",this.contentContainer=null,this.selectedItems=null,this.selectedLI=null,this.liElement=null,this.targetElement=null,this.currentLiElements=null,this.virtualCheckBox=null,n.prototype.destroy.call(this)},l.prototype.back=function(){var e=this.curDSLevel[this.curDSLevel.length-1];if(void 0!==e&&!this.isInAnimation()){this.curDSLevel.pop(),this.setViewDataSource(this.getSubDS()),this.enableVirtualization&&this.virtualizationModule.updateDOMItemCount();var i=this.element.querySelector("[data-uid='"+e+"']"),s=this.curUL;i?i=i.parentElement:(this.createList(),this.renderIntoDom(this.ulElement),i=this.curUL);var n=a(this.curDSJSON,this.listBaseOption.fields)[this.fields.text];this.switchView(s,i,!0),this.removeFocus();var l=this.element.querySelector("[data-uid='"+e+"']");l.classList.remove(m.disable),l.classList.add(m.focused),this.showCheckBox&&l.querySelector("."+m.checkboxIcon).classList.contains(m.checked)||l.class