{"version":3,"sources":["webpack:///./node_modules/@syncfusion/ej2-lists/src/common/list-base.js"],"names":["ListBase","cssClass","li","ul","group","icon","text","check","checked","selected","expanded","textContent","hasChild","level","url","collapsible","disabled","image","iconWrapper","anchorWrap","navigable","getFieldValues","dataItem","fields","fieldData","isHeader","_i","_a","Object","keys","length","field","dataField","value","undefined","compileTemplate","template","document","querySelector","innerHTML","trim","e","defaultMappedFields","id","isChecked","enabled","iconCss","child","isVisible","hasChildren","tooltip","htmlAttributes","urlAttributes","imageAttributes","imageUrl","groupBy","sortBy","defaultAriaAttributes","listRole","itemRole","groupItemRole","itemText","wrapperRole","defaultListBaseOptions","showCheckBox","showIcon","enableHtmlSanitizer","expandCollapse","ariaAttributes","listClass","itemClass","processSubChild","sortOrder","groupTemplate","headerTemplate","expandIconClass","moduleName","expandIconPosition","itemNavigable","createList","createElement","dataSource","options","isSingleLevel","componentInstance","curOpt","type","typeofData","typeof","createListFromArray","createListFromJson","subChild","createListItemFromArray","generateUL","getModuleClass","generateId","i","itemCreating","curData","generateSingleLevelLI","generateLI","itemCreated","item","push","createListItemFromJson","getModuleName","checkboxElement","anchorElement","hasOwnProperty","curItem","innerEle","className","attrs","firstElementChild","classList","add","setAttribute","toString","removeAttribute","style","display","attr","src","imageElemnt","insertAdjacentElement","iconElement","getSiblingLI","elementArray","element","isPrevious","siblingLI","liIndex","liCollections","Array","prototype","slice","call","indexOf","contains","groupDataSource","curFields","cusQuery","addSorting","ds","getDataSource","j","itemObj","items","grpItem","hdr","key","newtext","_id","k","query","queries","fn","splice","executeLocal","createJsonFromElement","curEle","cloneNode","jsonAr","childs","querySelectorAll","remove","anchor","json","childNodes","i_1","Number","hasChildNodes","attributes_1","getAllAttributes","data","match","elementAttributes","class","split","attributes","index","nodeName","nodeValue","renderContentTemplate","ulElement","role","compiledString","liCollection","innerText","currentID","groupTemplateID","templateID","compiledElement","isStringTemplate","renderGroupTemplate","headerItems","category","headerItems_1","header","headerData","Math","floor","random","substring","subDS","subLi","appendChild","expandElement","innerElements","grpLI","elementID","href","anchorTag","createTextNode","isFullNavigation","anchorWrapper","uID","innerDiv","liElement","generateIcon"],"mappings":"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","file":"js/chunk-vendors~1a4033be.b7fe10e1.4.2.0.js","sourcesContent":["/* eslint-disable no-inner-declarations */\nimport { extend, merge, isNullOrUndefined, getValue } from '@syncfusion/ej2-base';\nimport { attributes, prepend, isVisible, append, addClass } from '@syncfusion/ej2-base';\nimport { compile } from '@syncfusion/ej2-base';\nimport { DataManager, Query } from '@syncfusion/ej2-data';\nexport var cssClass = {\n li: 'e-list-item',\n ul: 'e-list-parent e-ul',\n group: 'e-list-group-item',\n icon: 'e-list-icon',\n text: 'e-list-text',\n check: 'e-list-check',\n checked: 'e-checked',\n selected: 'e-selected',\n expanded: 'e-expanded',\n textContent: 'e-text-content',\n hasChild: 'e-has-child',\n level: 'e-level',\n url: 'e-list-url',\n collapsible: 'e-icon-collapsible',\n disabled: 'e-disabled',\n image: 'e-list-img',\n iconWrapper: 'e-icon-wrapper',\n anchorWrap: 'e-anchor-wrap',\n navigable: 'e-navigable'\n};\n/**\n * Base List Generator\n */\n// eslint-disable-next-line @typescript-eslint/no-namespace\nexport var ListBase;\n(function (ListBase) {\n /**\n *\n * Default mapped fields.\n */\n ListBase.defaultMappedFields = {\n id: 'id',\n text: 'text',\n url: 'url',\n value: 'value',\n isChecked: 'isChecked',\n enabled: 'enabled',\n expanded: 'expanded',\n selected: 'selected',\n iconCss: 'iconCss',\n child: 'child',\n isVisible: 'isVisible',\n hasChildren: 'hasChildren',\n tooltip: 'tooltip',\n htmlAttributes: 'htmlAttributes',\n urlAttributes: 'urlAttributes',\n imageAttributes: 'imageAttributes',\n imageUrl: 'imageUrl',\n groupBy: null,\n sortBy: null\n };\n var defaultAriaAttributes = {\n level: 1,\n listRole: 'presentation',\n itemRole: 'presentation',\n groupItemRole: 'group',\n itemText: 'list-item',\n wrapperRole: 'presentation'\n };\n var defaultListBaseOptions = {\n showCheckBox: false,\n showIcon: false,\n enableHtmlSanitizer: false,\n expandCollapse: false,\n fields: ListBase.defaultMappedFields,\n ariaAttributes: defaultAriaAttributes,\n listClass: '',\n itemClass: '',\n processSubChild: false,\n sortOrder: 'None',\n template: null,\n groupTemplate: null,\n headerTemplate: null,\n expandIconClass: 'e-icon-collapsible',\n moduleName: 'list',\n expandIconPosition: 'Right',\n itemNavigable: false\n };\n /**\n * Function helps to created and return the UL Li element based on your data.\n *\n * @param {createElementParams} createElement - Specifies an array of JSON data.\n *\n * @param {{Object}[]} dataSource - Specifies an array of JSON data.\n *\n * @param {ListBaseOptions} options? - Specifies the list options that need to provide.\n *\n * @param {boolean} isSingleLevel? - Specifies the list options that need to provide.\n *\n * @param {any} componentInstance? - Specifies the list options that need to provide.\n *\n * @returns {createElement} createListFromJson - Specifies the list options that need to provide.\n */\n function createList(createElement, dataSource, \n // eslint-disable-next-line\n options, isSingleLevel, componentInstance) {\n var curOpt = extend({}, defaultListBaseOptions, options);\n var ariaAttributes = extend({}, defaultAriaAttributes, curOpt.ariaAttributes);\n var type = typeofData(dataSource).typeof;\n if (type === 'string' || type === 'number') {\n return createListFromArray(createElement, dataSource, isSingleLevel, options, componentInstance);\n }\n else {\n return createListFromJson(createElement, dataSource, options, ariaAttributes.level, isSingleLevel, componentInstance);\n }\n }\n ListBase.createList = createList;\n /**\n * Function helps to created an element list based on string array input .\n *\n * @param {createElementParams} createElement - Specifies an array of JSON data.\n *\n * @param {{Object}[]} dataSource - Specifies an array of JSON data.\n *\n * @param {ListBaseOptions} options? - Specifies the list options that need to provide.\n *\n * @param {boolean} isSingleLevel? - Specifies the list options that need to provide.\n *\n * @param {any} componentInstance? - Specifies the list options that need to provide.\n *\n * @returns {createElement} generateUL - returns the list options that need to provide.\n */\n function createListFromArray(createElement, dataSource, \n // tslint:disable-next-line\n // eslint-disable-next-line\n isSingleLevel, options, componentInstance) {\n var subChild = createListItemFromArray(createElement, dataSource, isSingleLevel, options, componentInstance);\n return generateUL(createElement, subChild, null, options);\n }\n ListBase.createListFromArray = createListFromArray;\n /**\n * Function helps to created an element list based on string array input .\n *\n * @param {createElementParams} createElement - Specifies an array of JSON data.\n *\n * @param {{Object}[]} dataSource - Specifies an array of JSON data.\n *\n * @param {ListBaseOptions} options? - Specifies the list options that need to provide.\n *\n * @param {boolean} isSingleLevel? - Specifies the list options that need to provide.\n *\n * @param {any} componentInstance? - Specifies the list options that need to provide.\n *\n * @returns {HTMLElement[]} subChild - returns the list options that need to provide.\n */\n function createListItemFromArray(createElement, dataSource, \n // eslint-disable-next-line\n isSingleLevel, options, componentInstance) {\n var subChild = [];\n var curOpt = extend({}, defaultListBaseOptions, options);\n cssClass = getModuleClass(curOpt.moduleName);\n var id = generateId(); // generate id for drop-down-list option.\n for (var i = 0; i < dataSource.length; i++) {\n if (isNullOrUndefined(dataSource[i])) {\n continue;\n }\n var li = void 0;\n if (curOpt.itemCreating && typeof curOpt.itemCreating === 'function') {\n var curData = {\n dataSource: dataSource,\n curData: dataSource[i],\n text: dataSource[i],\n options: curOpt\n };\n curOpt.itemCreating(curData);\n }\n if (isSingleLevel) {\n li = generateSingleLevelLI(createElement, dataSource[i], undefined, null, null, [], null, id, i, options);\n }\n else {\n li = generateLI(createElement, dataSource[i], undefined, null, null, options, componentInstance);\n }\n if (curOpt.itemCreated && typeof curOpt.itemCreated === 'function') {\n var curData = {\n dataSource: dataSource,\n curData: dataSource[i],\n text: dataSource[i],\n item: li,\n options: curOpt\n };\n curOpt.itemCreated(curData);\n }\n subChild.push(li);\n }\n return subChild;\n }\n ListBase.createListItemFromArray = createListItemFromArray;\n /**\n * Function helps to created an element list based on array of JSON input .\n *\n * @param {createElementParams} createElement - Specifies an array of JSON data.\n *\n * @param {{Object}[]} dataSource - Specifies an array of JSON data.\n *\n * @param {ListBaseOptions} options? - Specifies the list options that need to provide.\n *\n * @param {boolean} isSingleLevel? - Specifies the list options that need to provide.\n *\n * @param {number} level? - Specifies the list options that need to provide.\n *\n * @param {any} componentInstance? - Specifies the list options that need to provide.\n *\n * @returns {HTMLElement[]} child - returns the list options that need to provide.\n */\n function createListItemFromJson(createElement, dataSource, \n // eslint-disable-next-line\n options, level, isSingleLevel, componentInstance) {\n var curOpt = extend({}, defaultListBaseOptions, options);\n cssClass = getModuleClass(curOpt.moduleName);\n var fields = (componentInstance &&\n (componentInstance.getModuleName() === 'listview' || componentInstance.getModuleName() === 'multiselect'))\n ? curOpt.fields : extend({}, ListBase.defaultMappedFields, curOpt.fields);\n var ariaAttributes = extend({}, defaultAriaAttributes, curOpt.ariaAttributes);\n var id;\n var checkboxElement = [];\n if (level) {\n ariaAttributes.level = level;\n }\n var child = [];\n var li;\n var anchorElement;\n if (dataSource && dataSource.length && !isNullOrUndefined(typeofData(dataSource).item) &&\n // eslint-disable-next-line no-prototype-builtins\n !typeofData(dataSource).item.hasOwnProperty(fields.id)) {\n id = generateId(); // generate id for drop-down-list option.\n }\n for (var i = 0; i < dataSource.length; i++) {\n var fieldData = getFieldValues(dataSource[i], fields);\n if (isNullOrUndefined(dataSource[i])) {\n continue;\n }\n if (curOpt.itemCreating && typeof curOpt.itemCreating === 'function') {\n var curData = {\n dataSource: dataSource,\n curData: dataSource[i],\n text: fieldData[fields.text],\n options: curOpt,\n fields: fields\n };\n curOpt.itemCreating(curData);\n }\n var curItem = dataSource[i];\n if (curOpt.itemCreating && typeof curOpt.itemCreating === 'function') {\n fieldData = getFieldValues(dataSource[i], fields);\n }\n // eslint-disable-next-line no-prototype-builtins\n if (fieldData.hasOwnProperty(fields.id) && !isNullOrUndefined(fieldData[fields.id])) {\n id = fieldData[fields.id];\n }\n var innerEle = [];\n if (curOpt.showCheckBox) {\n if (curOpt.itemNavigable && (fieldData[fields.url] || fieldData[fields.urlAttributes])) {\n checkboxElement.push(createElement('input', { className: cssClass.check, attrs: { type: 'checkbox' } }));\n }\n else {\n innerEle.push(createElement('input', { className: cssClass.check, attrs: { type: 'checkbox' } }));\n }\n }\n if (isSingleLevel === true) {\n // eslint-disable-next-line no-prototype-builtins\n if (curOpt.showIcon && fieldData.hasOwnProperty(fields.iconCss) && !isNullOrUndefined(fieldData[fields.iconCss])) {\n innerEle.push(createElement('span', { className: cssClass.icon + ' ' + fieldData[fields.iconCss] }));\n }\n li = generateSingleLevelLI(createElement, curItem, fieldData, fields, curOpt.itemClass, innerEle, \n // eslint-disable-next-line no-prototype-builtins\n (curItem.hasOwnProperty('isHeader') &&\n curItem.isHeader) ? true : false, id, i, options);\n anchorElement = li.querySelector('.' + cssClass.anchorWrap);\n if (curOpt.itemNavigable && checkboxElement.length) {\n prepend(checkboxElement, li.firstElementChild);\n }\n }\n else {\n li = generateLI(createElement, curItem, fieldData, fields, curOpt.itemClass, options, componentInstance);\n li.classList.add(cssClass.level + '-' + ariaAttributes.level);\n li.setAttribute('aria-level', ariaAttributes.level.toString());\n if (ariaAttributes.groupItemRole == 'presentation') {\n li.removeAttribute('aria-level');\n }\n anchorElement = li.querySelector('.' + cssClass.anchorWrap);\n // eslint-disable-next-line no-prototype-builtins\n if (fieldData.hasOwnProperty(fields.tooltip)) {\n li.setAttribute('title', fieldData[fields.tooltip]);\n }\n // eslint-disable-next-line no-prototype-builtins\n if (fieldData.hasOwnProperty(fields.htmlAttributes) && fieldData[fields.htmlAttributes]) {\n setAttribute(li, fieldData[fields.htmlAttributes]);\n }\n // eslint-disable-next-line no-prototype-builtins\n if (fieldData.hasOwnProperty(fields.enabled) && fieldData[fields.enabled] === false) {\n li.classList.add(cssClass.disabled);\n }\n // eslint-disable-next-line no-prototype-builtins\n if (fieldData.hasOwnProperty(fields.isVisible) && fieldData[fields.isVisible] === false) {\n li.style.display = 'none';\n }\n // eslint-disable-next-line no-prototype-builtins\n if (fieldData.hasOwnProperty(fields.imageUrl) && !isNullOrUndefined(fieldData[fields.imageUrl])\n && !curOpt.template) {\n var attr = { src: fieldData[fields.imageUrl] };\n merge(attr, fieldData[fields.imageAttributes]);\n var imageElemnt = createElement('img', { className: cssClass.image, attrs: attr });\n if (anchorElement) {\n anchorElement.insertAdjacentElement('afterbegin', imageElemnt);\n }\n else {\n prepend([imageElemnt], li.firstElementChild);\n }\n }\n // eslint-disable-next-line no-prototype-builtins\n if (curOpt.showIcon && fieldData.hasOwnProperty(fields.iconCss) &&\n !isNullOrUndefined(fieldData[fields.iconCss]) && !curOpt.template) {\n var iconElement = createElement('div', { className: cssClass.icon + ' ' + fieldData[fields.iconCss] });\n if (anchorElement) {\n anchorElement.insertAdjacentElement('afterbegin', iconElement);\n }\n else {\n prepend([iconElement], li.firstElementChild);\n }\n }\n if (innerEle.length) {\n prepend(innerEle, li.firstElementChild);\n }\n if (curOpt.itemNavigable && checkboxElement.length) {\n prepend(checkboxElement, li.firstElementChild);\n }\n processSubChild(createElement, fieldData, fields, dataSource, curOpt, li, ariaAttributes.level);\n }\n if (anchorElement) {\n addClass([li], [cssClass.navigable]);\n }\n if (curOpt.itemCreated && typeof curOpt.itemCreated === 'function') {\n var curData = {\n dataSource: dataSource,\n curData: dataSource[i],\n text: fieldData[fields.text],\n item: li,\n options: curOpt,\n fields: fields\n };\n curOpt.itemCreated(curData);\n }\n checkboxElement = [];\n child.push(li);\n }\n return child;\n }\n ListBase.createListItemFromJson = createListItemFromJson;\n /**\n * Function helps to created an element list based on array of JSON input .\n *\n * @param {createElementParams} createElement - Specifies an array of JSON data.\n *\n * @param {{Object}[]} dataSource - Specifies an array of JSON data.\n *\n * @param {ListBaseOptions} options? - Specifies the list options that need to provide.\n *\n * @param {number} level? - Specifies the list options that need to provide.\n *\n * @param {boolean} isSingleLevel? - Specifies the list options that need to provide.\n *\n * @param {any} componentInstance? - Specifies the list options that need to provide.\n *\n * @returns {createElement} generateUL - Specifies the list options that need to provide.\n */\n function createListFromJson(createElement, dataSource, \n // eslint-disable-next-line\n options, level, isSingleLevel, componentInstance) {\n var curOpt = extend({}, defaultListBaseOptions, options);\n var li = createListItemFromJson(createElement, dataSource, options, level, isSingleLevel, componentInstance);\n return generateUL(createElement, li, curOpt.listClass, options);\n }\n ListBase.createListFromJson = createListFromJson;\n /**\n * Return the next or previous visible element.\n *\n * @param {Element[]|NodeList} elementArray - An element array to find next or previous element.\n * @param {Element} li - An element to find next or previous after this element.\n * @param {boolean} isPrevious? - Specify when the need get previous element from array.\n */\n function getSiblingLI(elementArray, element, isPrevious) {\n cssClass = getModuleClass(defaultListBaseOptions.moduleName);\n if (!elementArray || !elementArray.length) {\n return void 0;\n }\n var siblingLI;\n var liIndex;\n var liCollections = Array.prototype.slice.call(elementArray);\n if (element) {\n liIndex = indexOf(element, liCollections);\n }\n else {\n liIndex = (isPrevious === true ? liCollections.length : -1);\n }\n siblingLI = liCollections[liIndex + (isPrevious === true ? -1 : 1)];\n while (siblingLI && (!isVisible(siblingLI) || siblingLI.classList.contains(cssClass.disabled))) {\n liIndex = liIndex + (isPrevious === true ? -1 : 1);\n siblingLI = liCollections[liIndex];\n }\n return siblingLI;\n }\n ListBase.getSiblingLI = getSiblingLI;\n /**\n * Return the index of the li element\n *\n * @param {Element} item - An element to find next or previous after this element.\n * @param {Element[]} elementArray - An element array to find index of given li.\n */\n function indexOf(item, elementArray) {\n if (!elementArray || !item) {\n return void 0;\n }\n else {\n var liCollections = elementArray;\n liCollections = Array.prototype.slice.call(elementArray);\n return liCollections.indexOf(item);\n }\n }\n ListBase.indexOf = indexOf;\n /**\n * Returns the grouped data from given dataSource.\n *\n * @param {{Object}[]} dataSource - The JSON data which is necessary to process.\n * @param {FieldsMapping} fields - Fields that are mapped from the data source.\n * @param {SortOrder} sortOrder- Specifies final result sort order.\n */\n function groupDataSource(dataSource, fields, sortOrder) {\n if (sortOrder === void 0) { sortOrder = 'None'; }\n var curFields = extend({}, ListBase.defaultMappedFields, fields);\n var cusQuery = new Query().group(curFields.groupBy);\n // need to remove once sorting issues fixed in DataManager\n cusQuery = addSorting(sortOrder, 'key', cusQuery);\n var ds = getDataSource(dataSource, cusQuery);\n dataSource = [];\n for (var j = 0; j < ds.length; j++) {\n var itemObj = ds[j].items;\n var grpItem = {};\n var hdr = 'isHeader';\n grpItem[curFields.text] = ds[j].key;\n grpItem[\"\" + hdr] = true;\n var newtext = curFields.text;\n if (newtext === 'id') {\n newtext = 'text';\n grpItem[\"\" + newtext] = ds[j].key;\n }\n grpItem._id = 'group-list-item-' + (ds[j].key ?\n ds[j].key.toString().trim() : 'undefined');\n grpItem.items = itemObj;\n dataSource.push(grpItem);\n for (var k = 0; k < itemObj.length; k++) {\n dataSource.push(itemObj[k]);\n }\n }\n return dataSource;\n }\n ListBase.groupDataSource = groupDataSource;\n /**\n * Returns a sorted query object.\n *\n * @param {SortOrder} sortOrder - Specifies that sort order.\n * @param {string} sortBy - Specifies sortBy fields.\n * @param {Query} query - Pass if any existing query.\n */\n function addSorting(sortOrder, sortBy, query) {\n if (query === void 0) { query = new Query(); }\n if (sortOrder === 'Ascending') {\n query.sortBy(sortBy, 'ascending', true);\n }\n else if (sortOrder === 'Descending') {\n query.sortBy(sortBy, 'descending', true);\n }\n else {\n for (var i = 0; i < query.queries.length; i++) {\n if (query.queries[i].fn === 'onSortBy') {\n query.queries.splice(i, 1);\n }\n }\n }\n return query;\n }\n ListBase.addSorting = addSorting;\n /**\n * Return an array of JSON Data that processed based on queries.\n *\n * @param {{Object}[]} dataSource - Specifies local JSON data source.\n *\n * @param {Query} query - Specifies query that need to process.\n */\n function getDataSource(dataSource, query) {\n // eslint-disable-next-line\n return new DataManager(dataSource)\n .executeLocal(query);\n }\n ListBase.getDataSource = getDataSource;\n /**\n * Created JSON data based the UL and LI element\n *\n * @param {HTMLElement|Element} element - UL element that need to convert as a JSON\n * @param {ListBaseOptions} options? - Specifies listbase option for fields.\n */\n function createJsonFromElement(element, options) {\n var curOpt = extend({}, defaultListBaseOptions, options);\n var fields = extend({}, ListBase.defaultMappedFields, curOpt.fields);\n var curEle = element.cloneNode(true);\n // eslint-disable-next-line\n var jsonAr = [];\n curEle.classList.add('json-parent');\n var childs = curEle.querySelectorAll('.json-parent>li');\n curEle.classList.remove('json-parent');\n for (var i = 0; i < childs.length; i++) {\n var li = childs[i];\n var anchor = li.querySelector('a');\n var ul = li.querySelector('ul');\n // eslint-disable-next-line\n var json = {};\n var childNodes = anchor ? anchor.childNodes : li.childNodes;\n var keys = Object.keys(childNodes);\n for (var i_1 = 0; i_1 < childNodes.length; i_1++) {\n if (!(childNodes[Number(keys[i_1])]).hasChildNodes()) {\n json[fields.text] = childNodes[Number(keys[i_1])].textContent;\n }\n }\n var attributes_1 = getAllAttributes(li);\n if (attributes_1.id) {\n json[fields.id] = attributes_1.id;\n delete attributes_1.id;\n }\n else {\n json[fields.id] = generateId();\n }\n if (Object.keys(attributes_1).length) {\n json[fields.htmlAttributes] = attributes_1;\n }\n if (anchor) {\n attributes_1 = getAllAttributes(anchor);\n if (Object.keys(attributes_1).length) {\n json[fields.urlAttributes] = attributes_1;\n }\n }\n if (ul) {\n json[fields.child] = createJsonFromElement(ul, options);\n }\n jsonAr.push(json);\n }\n return jsonAr;\n }\n ListBase.createJsonFromElement = createJsonFromElement;\n function typeofData(data) {\n var match = { typeof: null, item: null };\n for (var i = 0; i < data.length; i++) {\n if (!isNullOrUndefined(data[i])) {\n return match = { typeof: typeof data[i], item: data[i] };\n }\n }\n return match;\n }\n function setAttribute(element, elementAttributes) {\n var attr = {};\n merge(attr, elementAttributes);\n if (attr.class) {\n addClass([element], attr.class.split(' '));\n delete attr.class;\n }\n attributes(element, attr);\n }\n function getAllAttributes(element) {\n var attributes = {};\n var attr = element.attributes;\n for (var index = 0; index < attr.length; index++) {\n attributes[attr[index].nodeName] = attr[index].nodeValue;\n }\n return attributes;\n }\n /**\n * Created UL element from content template.\n *\n * @param {string} template - that need to convert and generate li element.\n * @param {{Object}[]} dataSource - Specifies local JSON data source.\n * @param {ListBaseOptions} options? - Specifies listbase option for fields.\n */\n function renderContentTemplate(createElement, template, dataSource, \n // eslint-disable-next-line\n fields, options, componentInstance) {\n cssClass = getModuleClass(defaultListBaseOptions.moduleName);\n var ulElement = createElement('ul', { className: cssClass.ul, attrs: { role: 'presentation' } });\n var curOpt = extend({}, defaultListBaseOptions, options);\n var curFields = extend({}, ListBase.defaultMappedFields, fields);\n // eslint-disable-next-line\n var compiledString = compileTemplate(template);\n var liCollection = [];\n var value;\n var id = generateId(); // generate id for drop-down-list option.\n for (var i = 0; i < dataSource.length; i++) {\n var fieldData = getFieldValues(dataSource[i], curFields);\n var curItem = dataSource[i];\n var isHeader = curItem.isHeader;\n if (typeof dataSource[i] === 'string' || typeof dataSource[i] === 'number') {\n value = curItem;\n }\n else {\n value = fieldData[curFields.value];\n }\n if (curOpt.itemCreating && typeof curOpt.itemCreating === 'function') {\n var curData = {\n dataSource: dataSource,\n curData: curItem,\n text: value,\n options: curOpt,\n fields: curFields\n };\n curOpt.itemCreating(curData);\n }\n if (curOpt.itemCreating && typeof curOpt.itemCreating === 'function') {\n fieldData = getFieldValues(dataSource[i], curFields);\n if (typeof dataSource[i] === 'string' || typeof dataSource[i] === 'number') {\n value = curItem;\n }\n else {\n value = fieldData[curFields.value];\n }\n }\n var li = createElement('li', {\n id: id + '-' + i,\n className: isHeader ? cssClass.group : cssClass.li, attrs: { role: 'presentation' }\n });\n if (isHeader) {\n if (typeof dataSource[i] === 'string' || typeof dataSource[i] === 'number') {\n li.innerText = curItem;\n }\n else {\n li.innerText = fieldData[curFields.text];\n }\n }\n else {\n var currentID = isHeader ? curOpt.groupTemplateID : curOpt.templateID;\n if (isHeader) {\n if (componentInstance && componentInstance.getModuleName() != 'listview') {\n // eslint-disable-next-line\n var compiledElement = compiledString(curItem, componentInstance, 'headerTemplate', currentID, !!curOpt.isStringTemplate, null, li);\n if (compiledElement) {\n append(compiledElement, li);\n }\n }\n else {\n append(compiledString(curItem, componentInstance, 'headerTemplate', currentID, !!curOpt.isStringTemplate), li);\n }\n }\n else {\n if (componentInstance && componentInstance.getModuleName() !== 'listview') {\n // eslint-disable-next-line\n var compiledElement = compiledString(curItem, componentInstance, 'template', currentID, !!curOpt.isStringTemplate, null, li);\n if (compiledElement) {\n append(compiledElement, li);\n }\n }\n else {\n append(compiledString(curItem, componentInstance, 'template', currentID, !!curOpt.isStringTemplate), li);\n }\n }\n li.setAttribute('data-value', isNullOrUndefined(value) ? 'null' : value);\n li.setAttribute('role', 'option');\n }\n if (curOpt.itemCreated && typeof curOpt.itemCreated === 'function') {\n var curData = {\n dataSource: dataSource,\n curData: curItem,\n text: value,\n item: li,\n options: curOpt,\n fields: curFields\n };\n curOpt.itemCreated(curData);\n }\n liCollection.push(li);\n }\n append(liCollection, ulElement);\n return ulElement;\n }\n ListBase.renderContentTemplate = renderContentTemplate;\n /**\n * Created header items from group template.\n *\n * @param {string} template - that need to convert and generate li element.\n *\n * @param {{Object}[]} dataSource - Specifies local JSON data source.\n *\n * @param {FieldsMapping} fields - Specifies fields for mapping the dataSource.\n *\n * @param {Element[]} headerItems? - Specifies listbase header items.\n */\n // tslint:disable-next-line\n function renderGroupTemplate(groupTemplate, groupDataSource, fields, \n // eslint-disable-next-line\n headerItems, options, componentInstance) {\n // eslint-disable-next-line @typescript-eslint/ban-types\n var compiledString = compileTemplate(groupTemplate);\n var curFields = extend({}, ListBase.defaultMappedFields, fields);\n var curOpt = extend({}, defaultListBaseOptions, options);\n var category = curFields.groupBy;\n for (var _i = 0, headerItems_1 = headerItems; _i < headerItems_1.length; _i++) {\n var header = headerItems_1[_i];\n var headerData = {};\n headerData[\"\" + category] = header.textContent;\n header.innerHTML = '';\n if (componentInstance && componentInstance.getModuleName() !== \"listview\") {\n // eslint-disable-next-line\n var compiledElement = compiledString(headerData, componentInstance, 'groupTemplate', curOpt.groupTemplateID, !!curOpt.isStringTemplate, null, header);\n if (compiledElement) {\n append(compiledElement, header);\n }\n }\n else {\n append(compiledString(headerData, componentInstance, 'groupTemplate', curOpt.groupTemplateID, !!curOpt.isStringTemplate), header);\n }\n }\n return headerItems;\n }\n ListBase.renderGroupTemplate = renderGroupTemplate;\n function generateId() {\n return Math.floor((1 + Math.random()) * 0x10000)\n .toString(16)\n .substring(1);\n }\n ListBase.generateId = generateId;\n function processSubChild(createElement, fieldData, fields, ds, options, element, level) {\n // Get SubList\n var subDS = fieldData[fields.child] || [];\n var hasChildren = fieldData[fields.hasChildren];\n //Create Sub child\n if (subDS.length) {\n hasChildren = true;\n element.classList.add(cssClass.hasChild);\n if (options.processSubChild) {\n var subLi = createListFromJson(createElement, subDS, options, ++level);\n element.appendChild(subLi);\n }\n }\n // Create expand and collapse node\n if (!!options.expandCollapse && hasChildren && !options.template) {\n element.firstElementChild.classList.add(cssClass.iconWrapper);\n // eslint-disable-next-line @typescript-eslint/ban-types\n var expandElement = options.expandIconPosition === 'Left' ? prepend : append;\n expandElement([createElement('div', { className: 'e-icons ' + options.expandIconClass })], element.querySelector('.' + cssClass.textContent));\n }\n }\n function generateSingleLevelLI(createElement, item, fieldData, fields, className, innerElements, grpLI, id, index, options) {\n var curOpt = extend({}, defaultListBaseOptions, options);\n var ariaAttributes = extend({}, defaultAriaAttributes, curOpt.ariaAttributes);\n var text = item;\n var value = item;\n var dataSource;\n if (typeof item !== 'string' && typeof item !== 'number' && typeof item !== 'boolean') {\n dataSource = item;\n text = (typeof fieldData[fields.text] === 'boolean' || typeof fieldData[fields.text] === 'number') ?\n fieldData[fields.text] : (fieldData[fields.text] || '');\n value = fieldData[fields.value];\n }\n var elementID;\n if (!isNullOrUndefined(dataSource) && !isNullOrUndefined(fieldData[fields.id])\n && fieldData[fields.id] !== '') {\n elementID = id;\n }\n else {\n elementID = id + '-' + index;\n }\n var li = createElement('li', {\n className: (grpLI === true ? cssClass.group : cssClass.li) + ' ' + (isNullOrUndefined(className) ? '' : className),\n id: elementID, attrs: (ariaAttributes.groupItemRole !== '' && ariaAttributes.itemRole !== '' ?\n { role: (grpLI === true ? ariaAttributes.groupItemRole : ariaAttributes.itemRole) } : {})\n });\n // eslint-disable-next-line no-prototype-builtins\n if (dataSource && fieldData.hasOwnProperty(fields.enabled) && fieldData[fields.enabled].toString() === 'false') {\n li.classList.add(cssClass.disabled);\n }\n if (grpLI) {\n li.innerText = text;\n }\n else {\n li.setAttribute('data-value', isNullOrUndefined(value) ? 'null' : value);\n li.setAttribute('role', 'option');\n // eslint-disable-next-line no-prototype-builtins\n if (dataSource && fieldData.hasOwnProperty(fields.htmlAttributes) && fieldData[fields.htmlAttributes]) {\n setAttribute(li, fieldData[fields.htmlAttributes]);\n }\n if (innerElements.length && !curOpt.itemNavigable) {\n append(innerElements, li);\n }\n if (dataSource && (fieldData[fields.url] || (fieldData[fields.urlAttributes] &&\n fieldData[fields.urlAttributes].href))) {\n li.appendChild(anchorTag(createElement, dataSource, fields, text, innerElements, curOpt.itemNavigable));\n }\n else {\n if (innerElements.length && curOpt.itemNavigable) {\n append(innerElements, li);\n }\n li.appendChild(document.createTextNode(text));\n }\n }\n return li;\n }\n function getModuleClass(moduleName) {\n var moduleClass;\n // eslint-disable-next-line\n return moduleClass = {\n li: \"e-\" + moduleName + \"-item\",\n ul: \"e-\" + moduleName + \"-parent e-ul\",\n group: \"e-\" + moduleName + \"-group-item\",\n icon: \"e-\" + moduleName + \"-icon\",\n text: \"e-\" + moduleName + \"-text\",\n check: \"e-\" + moduleName + \"-check\",\n checked: 'e-checked',\n selected: 'e-selected',\n expanded: 'e-expanded',\n textContent: 'e-text-content',\n hasChild: 'e-has-child',\n level: 'e-level',\n url: \"e-\" + moduleName + \"-url\",\n collapsible: 'e-icon-collapsible',\n disabled: 'e-disabled',\n image: \"e-\" + moduleName + \"-img\",\n iconWrapper: 'e-icon-wrapper',\n anchorWrap: 'e-anchor-wrap',\n navigable: 'e-navigable'\n };\n }\n function anchorTag(createElement, dataSource, fields, text, innerElements, isFullNavigation) {\n var fieldData = getFieldValues(dataSource, fields);\n var attr = { href: fieldData[fields.url] };\n // eslint-disable-next-line no-prototype-builtins\n if (fieldData.hasOwnProperty(fields.urlAttributes) && fieldData[fields.urlAttributes]) {\n merge(attr, fieldData[fields.urlAttributes]);\n attr.href = fieldData[fields.url] ? fieldData[fields.url] :\n fieldData[fields.urlAttributes].href;\n }\n var anchorTag;\n if (!isFullNavigation) {\n anchorTag = createElement('a', { className: cssClass.text + ' ' + cssClass.url, innerHTML: text });\n }\n else {\n anchorTag = createElement('a', { className: cssClass.text + ' ' + cssClass.url });\n var anchorWrapper = createElement('div', { className: cssClass.anchorWrap });\n if (innerElements && innerElements.length) {\n append(innerElements, anchorWrapper);\n }\n anchorWrapper.appendChild(document.createTextNode(text));\n append([anchorWrapper], anchorTag);\n }\n setAttribute(anchorTag, attr);\n return anchorTag;\n }\n // tslint:disable-next-line\n /* tslint:disable:align */\n function generateLI(createElement, item, fieldData, \n // eslint-disable-next-line\n fields, className, options, componentInstance) {\n var curOpt = extend({}, defaultListBaseOptions, options);\n var ariaAttributes = extend({}, defaultAriaAttributes, curOpt.ariaAttributes);\n var text = item;\n var uID;\n var grpLI;\n var dataSource;\n if (typeof item !== 'string' && typeof item !== 'number') {\n dataSource = item;\n text = fieldData[fields.text] || '';\n // tslint:disable-next-line\n uID = (isNullOrUndefined(fieldData['_id'])) ? fieldData[fields.id] : fieldData['_id'];\n // eslint-disable-next-line no-prototype-builtins\n grpLI = (item.hasOwnProperty('isHeader') && item.isHeader)\n ? true : false;\n }\n if (options && options.enableHtmlSanitizer) {\n // eslint-disable-next-line no-self-assign\n text = text;\n }\n var li = createElement('li', {\n className: (grpLI === true ? cssClass.group : cssClass.li) + ' ' + (isNullOrUndefined(className) ? '' : className),\n attrs: (ariaAttributes.groupItemRole !== '' && ariaAttributes.itemRole !== '' ?\n { role: (grpLI === true ? ariaAttributes.groupItemRole : ariaAttributes.itemRole) } : {})\n });\n if (!isNullOrUndefined(uID) === true) {\n li.setAttribute('data-uid', uID);\n }\n else {\n li.setAttribute('data-uid', generateId());\n }\n if (grpLI && options && options.groupTemplate) {\n // eslint-disable-next-line @typescript-eslint/ban-types\n var compiledString = compileTemplate(options.groupTemplate);\n if (componentInstance && componentInstance.getModuleName() !== \"listview\") {\n // eslint-disable-next-line\n var compiledElement = compiledString(item, componentInstance, 'groupTemplate', curOpt.groupTemplateID, !!curOpt.isStringTemplate, null, li);\n if (compiledElement) {\n append(compiledElement, li);\n }\n }\n else {\n append(compiledString(item, componentInstance, 'groupTemplate', curOpt.groupTemplateID, !!curOpt.isStringTemplate), li);\n }\n }\n else if (!grpLI && options && options.template) {\n // eslint-disable-next-line @typescript-eslint/ban-types\n var compiledString = compileTemplate(options.template);\n if (componentInstance && componentInstance.getModuleName() !== 'listview') {\n // eslint-disable-next-line\n var compiledElement = compiledString(item, componentInstance, 'template', curOpt.templateID, !!curOpt.isStringTemplate, null, li);\n if (compiledElement) {\n append(compiledElement, li);\n }\n }\n else {\n append(compiledString(item, componentInstance, 'template', curOpt.templateID, !!curOpt.isStringTemplate), li);\n }\n }\n else {\n var innerDiv = createElement('div', {\n className: cssClass.textContent,\n attrs: (ariaAttributes.wrapperRole !== '' ? { role: ariaAttributes.wrapperRole } : {})\n });\n if (dataSource && (fieldData[fields.url] || (fieldData[fields.urlAttributes] &&\n fieldData[fields.urlAttributes].href))) {\n innerDiv.appendChild(anchorTag(createElement, dataSource, fields, text, null, curOpt.itemNavigable));\n }\n else {\n var element = createElement('span', {\n className: cssClass.text,\n attrs: (ariaAttributes.itemText !== '' ? { role: ariaAttributes.itemText } : {})\n });\n if (options && options.enableHtmlSanitizer) {\n element.innerText = text;\n }\n else {\n element.innerHTML = text;\n }\n innerDiv.appendChild(element);\n }\n li.appendChild(innerDiv);\n }\n return li;\n }\n /**\n * Returns UL element based on the given LI element.\n *\n * @param {HTMLElement[]} liElement - Specifies array of LI element.\n *\n * @param {string} className? - Specifies class name that need to be added in UL element.\n *\n * @param {ListBaseOptions} options? - Specifies ListBase options.\n */\n function generateUL(createElement, liElement, className, options) {\n var curOpt = extend({}, defaultListBaseOptions, options);\n var ariaAttributes = extend({}, defaultAriaAttributes, curOpt.ariaAttributes);\n cssClass = getModuleClass(curOpt.moduleName);\n var ulElement = createElement('ul', {\n className: cssClass.ul + ' ' + (isNullOrUndefined(className) ? '' : className),\n attrs: (ariaAttributes.listRole !== '' ? { role: ariaAttributes.listRole } : {})\n });\n append(liElement, ulElement);\n return ulElement;\n }\n ListBase.generateUL = generateUL;\n /**\n * Returns LI element with additional DIV tag based on the given LI element.\n *\n * @param {liElement} liElement - Specifies LI element.\n *\n * @param {string} className? - Specifies class name that need to be added in created DIV element.\n *\n * @param {ListBaseOptions} options? - Specifies ListBase options.\n */\n function generateIcon(createElement, liElement, className, options) {\n var curOpt = extend({}, defaultListBaseOptions, options);\n cssClass = getModuleClass(curOpt.moduleName);\n // eslint-disable-next-line @typescript-eslint/ban-types\n var expandElement = curOpt.expandIconPosition === 'Left' ? prepend : append;\n expandElement([createElement('div', {\n className: 'e-icons ' + curOpt.expandIconClass + ' ' +\n (isNullOrUndefined(className) ? '' : className)\n })], liElement.querySelector('.' + cssClass.textContent));\n return liElement;\n }\n ListBase.generateIcon = generateIcon;\n})(ListBase || (ListBase = {}));\n/**\n * Used to get dataSource item from complex data using fields.\n *\n * @param {Object} dataSource - Specifies an JSON or String data.\n *\n * @param {FieldsMapping} fields - Fields that are mapped from the dataSource.\n */\nexport function getFieldValues(dataItem, fields) {\n var fieldData = {};\n if (isNullOrUndefined(dataItem) || typeof (dataItem) === 'string' || typeof (dataItem) === 'number'\n || !isNullOrUndefined(dataItem.isHeader)) {\n return dataItem;\n }\n else {\n for (var _i = 0, _a = Object.keys(fields); _i < _a.length; _i++) {\n var field = _a[_i];\n var dataField = fields[\"\" + field];\n var value = !isNullOrUndefined(dataField) &&\n typeof (dataField) === 'string' ? getValue(dataField, dataItem) : undefined;\n if (!isNullOrUndefined(value)) {\n fieldData[\"\" + dataField] = value;\n }\n }\n }\n return fieldData;\n}\nfunction compileTemplate(template) {\n if (template) {\n try {\n if (document.querySelector(template)) {\n return compile(document.querySelector(template).innerHTML.trim());\n }\n else {\n return compile(template);\n }\n }\n catch (e) {\n return compile(template);\n }\n }\n return undefined;\n}\n"],"sourceRoot":""}