@syncfusion/ej2-angular-base 31.1.17 → 31.1.23
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/README.md +1 -1
- package/dist/ej2-angular-base.umd.min.js +1 -10
- package/dist/ej2-angular-base.umd.min.js.map +1 -1
- package/dist/es6/ej2-angular-base.es2015.js +1 -1
- package/dist/es6/ej2-angular-base.es2015.js.map +1 -1
- package/dist/es6/ej2-angular-base.es5.js +1 -1
- package/dist/es6/ej2-angular-base.es5.js.map +1 -1
- package/dist/global/ej2-angular-base.min.js +1 -10
- package/dist/global/ej2-angular-base.min.js.map +1 -1
- package/dist/global/index.d.ts +0 -9
- package/package.json +1 -1
- package/src/template.js +1 -1
- package/styles/material3-dark.scss +1 -1
- package/styles/material3.scss +1 -1
- package/dist/ts/complex-array-base.d.ts +0 -55
- package/dist/ts/complex-array-base.ts +0 -275
- package/dist/ts/component-base.d.ts +0 -50
- package/dist/ts/component-base.ts +0 -432
- package/dist/ts/form-base.d.ts +0 -46
- package/dist/ts/form-base.ts +0 -171
- package/dist/ts/index.d.ts +0 -8
- package/dist/ts/index.ts +0 -8
- package/dist/ts/template.d.ts +0 -19
- package/dist/ts/template.ts +0 -107
- package/dist/ts/util.d.ts +0 -60
- package/dist/ts/util.ts +0 -177
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ej2-angular-base.min.js","sources":["../../src/util.js","../../src/template.js","../../src/complex-array-base.js","../../src/component-base.js","../../src/form-base.js"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any, @typescript-eslint/explicit-module-boundary-types */\nimport { EventEmitter } from '@angular/core';\nimport { isNullOrUndefined } from '@syncfusion/ej2-base';\n/**\n * Angular Utility Module\n *\n * @param {Function} derivedClass The derived class to which mixins are applied.\n * @param {Function[]} baseClass An array of base classes whose methods are applied as mixins.\n * @returns {void}\n */\nexport function applyMixins(derivedClass, baseClass) {\n baseClass.forEach(function (baseClass) {\n Object.getOwnPropertyNames(baseClass.prototype).forEach(function (name) {\n if (!Object.prototype.hasOwnProperty.call(derivedClass.prototype, name) || (baseClass.isFormBase && name !== 'constructor')) {\n derivedClass.prototype[\"\".concat(name)] = baseClass.prototype[\"\".concat(name)];\n }\n });\n });\n}\n/**\n * Decorator function to apply mixins to a derived class.\n *\n * @param {Function[]} baseClass - An array of mixin classes to be applied to the derived class.\n * @returns {ClassDecorator} The decorator function.\n */\nexport function ComponentMixins(baseClass) {\n return function (derivedClass) {\n applyMixins(derivedClass, baseClass);\n };\n}\n/**\n * Registers events.\n *\n * @private\n * @param {string[]} eventList - The list of events to register.\n * @param {any} obj - The object on which to register the events.\n * @param {boolean} [direct] - Whether to register events directly on the object or not.\n * @returns {void}\n */\nexport function registerEvents(eventList, obj, direct) {\n var ngEventsEmitter = {};\n if (eventList && eventList.length) {\n for (var _i = 0, eventList_1 = eventList; _i < eventList_1.length; _i++) {\n var event_1 = eventList_1[_i];\n if (direct === true) {\n obj.propCollection[\"\".concat(event_1)] = new EventEmitter(false);\n obj[\"\".concat(event_1)] = obj.propCollection[\"\".concat(event_1)];\n }\n else {\n ngEventsEmitter[\"\".concat(event_1)] = new EventEmitter(false);\n }\n }\n if (direct !== true) {\n obj.setProperties(ngEventsEmitter, true);\n }\n }\n}\n/**\n * Clears registered templates.\n *\n * @private\n * @param {any} _this - The context object.\n * @param {string[]} [templateNames] - Optional. An array of template names to clear.\n * @param {any[]} [index] - Optional. An array of indices specifying templates to clear.\n * @returns {void}\n */\nexport function clearTemplate(_this, templateNames, index) {\n var _a;\n var regTemplates = Object.keys(_this.registeredTemplate);\n if (regTemplates.length) {\n /* istanbul ignore next */\n var regProperties = templateNames && templateNames.filter(function (val) {\n return (/\\./g.test(val) ? false : true);\n });\n var tabaccordionTemp = /tab|accordion|toolbar/.test((_a = _this.getModuleName) === null || _a === void 0 ? void 0 : _a.call(_this));\n for (var _i = 0, _b = (regProperties && regProperties || regTemplates); _i < _b.length; _i++) {\n var registeredTemplate = _b[_i];\n /* istanbul ignore next */\n if (index && index.length) {\n for (var e = 0; e < index.length; e++) {\n if (tabaccordionTemp) {\n for (var m = 0; m < _this.registeredTemplate[\"\".concat(registeredTemplate)].length; m++) {\n var value = _this.registeredTemplate[\"\".concat(registeredTemplate)][parseInt(m.toString(), 10)];\n if (value && value === index[\"\".concat(e)]) {\n value.destroy();\n _this.registeredTemplate[\"\".concat(registeredTemplate)].splice(m, 1);\n }\n }\n }\n else {\n for (var m = 0; m < _this.registeredTemplate.template.length; m++) {\n var value = _this.registeredTemplate.template[parseInt(m.toString(), 10)].rootNodes[0];\n if (value === index[\"\".concat(e)]) {\n var rt = _this.registeredTemplate[\"\".concat(registeredTemplate)];\n rt[parseInt(m.toString(), 10)].destroy();\n }\n }\n }\n }\n }\n else {\n if (_this.registeredTemplate[\"\".concat(registeredTemplate)]) {\n for (var _c = 0, _d = _this.registeredTemplate[\"\".concat(registeredTemplate)]; _c < _d.length; _c++) {\n var rt = _d[_c];\n if (!rt.destroyed) {\n if (rt._view) {\n var pNode = rt._view.renderer.parentNode(rt.rootNodes[0]);\n if (!isNullOrUndefined(pNode)) {\n for (var m = 0; m < rt.rootNodes.length; m++) {\n pNode.appendChild(rt.rootNodes[parseInt(m.toString(), 10)]);\n }\n }\n }\n rt.destroy();\n }\n }\n }\n }\n if (!tabaccordionTemp || !index) {\n delete _this.registeredTemplate[\"\".concat(registeredTemplate)];\n }\n }\n }\n var _loop_1 = function (tagObject) {\n if (tagObject.instance) {\n /* istanbul ignore next */\n tagObject.instance.clearTemplate((templateNames && templateNames.filter(function (val) {\n var regExp = RegExp;\n return (new regExp(tagObject.name).test(val) ? true : false);\n })));\n }\n };\n for (var _e = 0, _f = _this.tagObjects; _e < _f.length; _e++) {\n var tagObject = _f[_e];\n _loop_1(tagObject);\n }\n}\n/**\n * To set value for the nameSpace in desired object.\n *\n * @param {string} nameSpace - String value to get the inner object.\n * @param {any} value - Value that you need to set.\n * @param {any} object - Object to get the inner object value.\n * @returns {void}\n * @private\n */\nexport function setValue(nameSpace, value, object) {\n var keys = nameSpace.replace(/\\[/g, '.').replace(/\\]/g, '').split('.');\n /* istanbul ignore next */\n var fromObj = object || {};\n for (var i = 0; i < keys.length; i++) {\n var key = keys[parseInt(i.toString(), 10)];\n if (i + 1 === keys.length) {\n fromObj[\"\".concat(key)] = value === undefined ? {} : value;\n }\n else if (fromObj[\"\".concat(key)] === undefined) {\n fromObj[\"\".concat(key)] = {};\n }\n fromObj = fromObj[\"\".concat(key)];\n }\n return fromObj;\n}\n","import { setTemplateEngine, getTemplateEngine } from '@syncfusion/ej2-base';\nimport { setValue, getValue } from '@syncfusion/ej2-base';\nvar stringCompiler = getTemplateEngine();\n/**\n * Angular Template Compiler\n *\n * @param {AngularElementType} templateEle - The element representing the template.\n * @param {Object} [helper] - Optional helper object.\n * @returns {Function} A function that compiles the template.\n */\nexport function compile(templateEle, helper) {\n if (typeof templateEle === 'string' || (typeof templateEle === 'function' && templateEle.prototype && templateEle.prototype.CSPTemplate)) {\n return stringCompiler(templateEle, helper);\n }\n else {\n var contRef_1 = templateEle.elementRef.nativeElement._viewContainerRef;\n var pName_1 = templateEle.elementRef.nativeElement.propName;\n return function (data, component, propName) {\n var context = { $implicit: data };\n /* istanbul ignore next */\n var conRef = contRef_1 ? contRef_1 : component.viewContainerRef;\n var viewRef = conRef.createEmbeddedView(templateEle, context);\n if (/EJS-MENTION|EJS-DROPDOWNLIST/.test(getValue('currentInstance.element.nodeName', conRef)) ||\n (/E-TABITEM/.test(getValue('element.nativeElement.nodeName', conRef)) &&\n getValue('currentInstance.headerTemplateRef', conRef))) {\n viewRef.detectChanges();\n }\n else {\n viewRef.markForCheck();\n }\n /* istanbul ignore next */\n var viewCollection = (component && component.registeredTemplate) ?\n component.registeredTemplate : getValue('currentInstance.registeredTemplate', conRef);\n propName = (propName && component.registeredTemplate) ? propName : pName_1;\n if (typeof viewCollection[\"\".concat(propName)] === 'undefined') {\n viewCollection[\"\".concat(propName)] = [];\n }\n viewCollection[\"\".concat(propName)].push(viewRef);\n return viewRef.rootNodes;\n };\n }\n}\n/**\n * Property decorator for angular.\n *\n * @param {Object} [defaultValue] - Default value for the property.\n * @returns {PropertyDecorator} The decorator function.\n */\nexport function Template(defaultValue) {\n return function (target, key) {\n var propertyDescriptor = {\n set: setter(key),\n get: getter(key, defaultValue),\n enumerable: true,\n configurable: true\n };\n Object.defineProperty(target, key, propertyDescriptor);\n };\n}\n/**\n * Creates a setter function for a given property key.\n *\n * @param {string} key - The property key.\n * @returns {Function} The setter function.\n */\nfunction setter(key) {\n return function (val) {\n if (val === undefined) {\n return;\n }\n setValue(key + 'Ref', val, this);\n if (typeof val !== 'string') {\n val.elementRef.nativeElement._viewContainerRef = this.viewContainerRef;\n val.elementRef.nativeElement.propName = key;\n }\n else {\n if (this.saveChanges) {\n this.saveChanges(key, val, undefined);\n this.dataBind();\n }\n }\n };\n}\n/**\n * Returns a getter function for the specified key and default value.\n *\n * @param {string} key - The key for the property.\n * @param {Object} defaultValue - The default value for the property.\n * @returns {Function} The getter function.\n */\nfunction getter(key, defaultValue) {\n return function () {\n /* istanbul ignore next */\n return getValue(key + 'Ref', this) || defaultValue;\n };\n}\nsetTemplateEngine({ compile: compile });\n","import { getValue, setValue, isNullOrUndefined } from '@syncfusion/ej2-base';\nimport { clearTemplate, registerEvents } from './util';\nvar refRegex = /Ref$/;\nvar ComplexBase = /** @class */ (function () {\n function ComplexBase() {\n this.hasChanges = false;\n this.propCollection = {};\n this.dataSource = {};\n this.tags = [];\n this.tagObjects = [];\n }\n ComplexBase.prototype.ngOnInit = function () {\n this.registeredTemplate = {};\n for (var _i = 0, _a = this.tags; _i < _a.length; _i++) {\n var tag = _a[_i];\n var objInstance = getValue('child' + tag.substring(0, 1).toUpperCase() + tag.substring(1), this);\n if (objInstance) {\n this.tagObjects.push({ instance: objInstance, name: tag });\n }\n }\n var templateProperties = Object.keys(this);\n for (var i = 0; i < templateProperties.length; i++) {\n var tempProp = getValue(templateProperties[parseInt(i.toString(), 10)], this);\n if (typeof tempProp === 'object' && tempProp && tempProp.elementRef) {\n if (!getValue(templateProperties[parseInt(i.toString(), 10)].indexOf('Ref') !== -1 ? templateProperties[parseInt(i.toString(), 10)] : templateProperties[parseInt(i.toString(), 10)] + 'Ref', this)) {\n setValue(templateProperties[parseInt(i.toString(), 10)].indexOf('Ref') !== -1 ? templateProperties[parseInt(i.toString(), 10)] : templateProperties[parseInt(i.toString(), 10)] + 'Ref', tempProp, this);\n }\n if (getValue('viewContainerRef', this) && !getValue('_viewContainerRef', tempProp.elementRef.nativeElement) && !getValue('propName', tempProp.elementRef.nativeElement)) {\n setValue('_viewContainerRef', getValue('viewContainerRef', this), tempProp.elementRef.nativeElement);\n setValue('propName', templateProperties[parseInt(i.toString(), 10)].replace('Ref', ''), tempProp.elementRef.nativeElement);\n }\n }\n }\n templateProperties = Object.keys(this);\n templateProperties = templateProperties.filter(function (val) {\n return /Ref$/i.test(val);\n });\n for (var _b = 0, templateProperties_1 = templateProperties; _b < templateProperties_1.length; _b++) {\n var tempName = templateProperties_1[_b];\n var propName = tempName.replace('Ref', '');\n setValue(propName.replace('_', '.'), getValue(propName, this), this.propCollection);\n }\n // Angular 9 compatibility to overcome ngOnchange not get triggered issue\n // To Update properties to \"this.propCollection\"\n var propList = Object.keys(this);\n /* istanbul ignore next */\n if (this.directivePropList) {\n for (var k = 0; k < this.directivePropList.length; k++) {\n var dirPropName = this.directivePropList[parseInt(k.toString(), 10)];\n if (propList.indexOf(dirPropName) !== -1 && (getValue(dirPropName, this) === false || getValue(dirPropName, this))) {\n setValue(dirPropName, getValue(dirPropName, this), this.propCollection);\n }\n }\n this.hasChanges = true;\n }\n this.isInitChanges = true;\n };\n ComplexBase.prototype.registerEvents = function (eventList) {\n registerEvents(eventList, this, true);\n };\n ComplexBase.prototype.ngOnChanges = function (changes) {\n for (var _i = 0, _a = Object.keys(changes); _i < _a.length; _i++) {\n var propName = _a[_i];\n var changedVal = changes[\"\".concat(propName)];\n this.propCollection[\"\".concat(propName)] = changedVal.currentValue;\n }\n this.isUpdated = false;\n this.hasChanges = true;\n };\n /* istanbul ignore next */\n ComplexBase.prototype.clearTemplate = function (templateNames) {\n clearTemplate(this, templateNames);\n };\n ComplexBase.prototype.getProperties = function () {\n /* istanbul ignore next */\n for (var _i = 0, _a = this.tagObjects; _i < _a.length; _i++) {\n var tagObject = _a[_i];\n this.propCollection[tagObject.name] = tagObject.instance.getProperties();\n }\n return this.propCollection;\n };\n ComplexBase.prototype.isChanged = function () {\n var result = this.hasChanges;\n if (!isNullOrUndefined(this.propCollection[this.property])) {\n var tempProps = this.propCollection[this.property];\n var props = Object.keys(tempProps[0]);\n for (var d = 0; d < props.length; d++) {\n if (!isNullOrUndefined(this.propCollection[props[parseInt(d.toString(), 10)]])) {\n var val = getValue(props[parseInt(d.toString(), 10)], this);\n var propVal = this.propCollection[this.property][0][props[parseInt(d.toString(), 10)]];\n if (!isNullOrUndefined(val) && this.propCollection[props[parseInt(d.toString(), 10)]] !== val\n && propVal !== val) {\n setValue(props[parseInt(d.toString(), 10)], val, this.propCollection[this.property][0]);\n setValue(props[parseInt(d.toString(), 10)], val, this.propCollection);\n this.hasChanges = true;\n this.isUpdated = false;\n }\n }\n }\n }\n /* istanbul ignore next */\n for (var _i = 0, _a = this.tagObjects; _i < _a.length; _i++) {\n var item = _a[_i];\n result = result || item.instance.hasChanges;\n }\n return result || this.hasChanges;\n };\n ComplexBase.prototype.ngAfterContentChecked = function () {\n this.hasChanges = this.isChanged();\n if (this.isInitChanges || this.hasChanges) {\n var templateProperties = Object.keys(this);\n templateProperties = templateProperties.filter(function (val) {\n return refRegex.test(val);\n });\n for (var _i = 0, templateProperties_2 = templateProperties; _i < templateProperties_2.length; _i++) {\n var tempName = templateProperties_2[_i];\n var propName = tempName.replace('Ref', '');\n setValue(propName.replace('_', '.'), getValue(propName, this), this.propCollection);\n }\n }\n };\n ComplexBase.prototype.ngAfterViewChecked = function () {\n /* istanbul ignore next */\n if (this.isUpdated) {\n this.hasChanges = false;\n }\n };\n ComplexBase.prototype.ngAfterViewInit = function () {\n /* istanbul ignore next */\n this.isInitChanges = false;\n };\n ComplexBase.prototype.ngOnDestroy = function () {\n /* istanbul ignore next */\n this.directivePropList = [];\n };\n return ComplexBase;\n}());\nexport { ComplexBase };\nvar ArrayBase = /** @class */ (function () {\n function ArrayBase(propertyName) {\n this.list = [];\n this.hasChanges = false;\n this.propertyName = propertyName;\n }\n ArrayBase.prototype.ngOnInit = function () {\n this.isInitChanges = true;\n };\n ArrayBase.prototype.ngAfterContentInit = function () {\n var _this = this;\n var index = 0;\n /* istanbul ignore next */\n this.list = this.children.map(function (child) {\n child.dirIndex = index++;\n child.property = _this.propertyName;\n return child;\n });\n this.hasChanges = true;\n };\n ArrayBase.prototype.getProperties = function () {\n var onlyProp = [];\n for (var _i = 0, _a = this.list; _i < _a.length; _i++) {\n var item = _a[_i];\n onlyProp.push(item.getProperties());\n }\n return onlyProp;\n };\n ArrayBase.prototype.isChanged = function () {\n var _this = this;\n var result = false;\n var index = 0;\n var isSourceChanged = false;\n var childrenDataSource = this.children.map(function (child) {\n return child;\n });\n /* istanbul ignore next */\n if (this.list.length === this.children.length) {\n for (var i = 0; i < this.list.length; i++) {\n if (this.list[parseInt(i.toString(), 10)].propCollection.dataSource) {\n if (this.list[parseInt(i.toString(), 10)].dataSource &&\n this.list[parseInt(i.toString(), 10)].propCollection.dataSource\n !== this.list[parseInt(i.toString(), 10)].dataSource) {\n this.list[parseInt(i.toString(), 10)].propCollection.dataSource = this.list[parseInt(i.toString(), 10)].dataSource;\n this.list[parseInt(i.toString(), 10)].hasChanges = true;\n }\n if (this.list[parseInt(i.toString(), 10)].property !== 'series') {\n isSourceChanged = (JSON.stringify(this.list[parseInt(i.toString(), 10)].propCollection.dataSource) !==\n JSON.stringify(childrenDataSource[parseInt(i.toString(), 10)].propCollection.dataSource));\n }\n }\n isSourceChanged = this.list[parseInt(i.toString(), 10)].hasChanges\n !== childrenDataSource[parseInt(i.toString(), 10)].hasChanges;\n }\n }\n this.hasNewChildren = (this.list.length !== this.children.length || isSourceChanged) ? true : null;\n if (this.hasNewChildren) {\n this.list = this.children.map(function (child) {\n child.dirIndex = index++;\n child.property = _this.propertyName;\n return child;\n });\n }\n /* istanbul ignore end */\n for (var _i = 0, _a = this.list; _i < _a.length; _i++) {\n var item = _a[_i];\n result = result || item.hasChanges;\n }\n return !!this.list.length && result;\n };\n ArrayBase.prototype.clearTemplate = function (templateNames) {\n var _this = this;\n /* istanbul ignore next */\n for (var _i = 0, _a = this.list; _i < _a.length; _i++) {\n var item = _a[_i];\n item.clearTemplate(templateNames && templateNames.map(function (val) {\n var regExp = RegExp;\n return new regExp(_this.propertyName).test(val) ? val.replace(_this.propertyName + '.', '') : val;\n }));\n }\n };\n ArrayBase.prototype.ngAfterContentChecked = function () {\n this.hasChanges = this.isChanged();\n for (var i = 0; i < this.list.length; i++) {\n if (getValue('childColumns', this.list[parseInt(i.toString(), 10)]) && getValue('property', this.list[parseInt(i.toString(), 10)]) === 'columns') {\n setValue('columns', getValue('childColumns', this.list[parseInt(i.toString(), 10)]).getProperties(), this.list[parseInt(i.toString(), 10)].propCollection);\n }\n this.list[parseInt(i.toString(), 10)].isUpdated = true;\n }\n };\n ArrayBase.prototype.ngAfterViewInit = function () {\n this.isInitChanges = false;\n };\n ArrayBase.prototype.ngOnDestroy = function () {\n this.list = [];\n };\n return ArrayBase;\n}());\nexport { ArrayBase };\n","/* eslint-disable @typescript-eslint/no-explicit-any, @typescript-eslint/explicit-module-boundary-types */\n/**\n * Angular Component Base Module\n */\nimport { getValue, isUndefined, setValue, isNullOrUndefined, attributes, createElement } from '@syncfusion/ej2-base';\nimport { EventEmitter } from '@angular/core';\nimport { clearTemplate, registerEvents } from './util';\nvar ComponentBase = /** @class */ (function () {\n function ComponentBase() {\n this.isProtectedOnChange = true;\n this.isFormInit = true;\n }\n ComponentBase.prototype.saveChanges = function (key, newValue, oldValue) {\n if (this.isProtectedOnChange) {\n return;\n }\n this.oldProperties[\"\".concat(key)] = oldValue;\n this.changedProperties[\"\".concat(key)] = newValue;\n this.finalUpdate();\n var changeTime = setTimeout(this.dataBind.bind(this));\n var clearUpdate = function () {\n clearTimeout(changeTime);\n };\n this.finalUpdate = clearUpdate;\n };\n ComponentBase.prototype.ngOnInit = function (isTempRef) {\n var tempOnThis = isTempRef || this;\n tempOnThis.registeredTemplate = {};\n tempOnThis.ngBoundedEvents = {};\n tempOnThis.isAngular = true;\n tempOnThis.isFormInit = true;\n /* istanbul ignore next */\n if (isTempRef) {\n this.tags = isTempRef.tags;\n }\n tempOnThis.tags = this.tags || [];\n tempOnThis.complexTemplate = this.complexTemplate || [];\n tempOnThis.tagObjects = [];\n tempOnThis.ngAttr = this.getAngularAttr(tempOnThis.element);\n /* istanbul ignore next */\n tempOnThis.createElement = function (tagName, prop) {\n var ele = tempOnThis.srenderer ? tempOnThis.srenderer.createElement(tagName) : createElement(tagName);\n if (typeof (prop) === 'undefined') {\n return ele;\n }\n ele.innerHTML = (prop.innerHTML ? prop.innerHTML : '');\n if (prop.className !== undefined) {\n ele.className = prop.className;\n }\n if (prop.id !== undefined) {\n ele.id = prop.id;\n }\n if (prop.styles !== undefined) {\n ele.setAttribute('style', prop.styles);\n }\n if (tempOnThis.ngAttr !== undefined) {\n ele.setAttribute(tempOnThis.ngAttr, '');\n }\n if (prop.attrs !== undefined) {\n attributes(ele, prop.attrs);\n }\n return ele;\n };\n for (var _i = 0, _a = tempOnThis.tags; _i < _a.length; _i++) {\n var tag = _a[_i];\n var tagObject = {\n instance: getValue('child' + tag.substring(0, 1).toUpperCase() + tag.substring(1), tempOnThis),\n name: tag\n };\n tempOnThis.tagObjects.push(tagObject);\n }\n var complexTemplates = Object.keys(tempOnThis);\n for (var i = 0; i < complexTemplates.length; i++) {\n var compProp = getValue(complexTemplates[parseInt(i.toString(), 10)], tempOnThis);\n if (typeof compProp === 'object' && compProp && compProp.elementRef) {\n if (typeof compProp === 'object' && compProp && compProp.elementRef && complexTemplates[parseInt(i.toString(), 10)].indexOf('_') !== -1 && complexTemplates[parseInt(i.toString(), 10)].indexOf('Ref') === -1) {\n setValue(complexTemplates[parseInt(i.toString(), 10)] + 'Ref', compProp, tempOnThis);\n }\n if (tempOnThis.viewContainerRef && !getValue('_viewContainerRef', compProp.elementRef.nativeElement) && !getValue('propName', compProp.elementRef.nativeElement)) {\n setValue('_viewContainerRef', tempOnThis.viewContainerRef, compProp.elementRef.nativeElement);\n setValue('propName', complexTemplates[parseInt(i.toString(), 10)].replace('Ref', ''), compProp.elementRef.nativeElement);\n }\n }\n }\n complexTemplates = Object.keys(tempOnThis);\n complexTemplates = complexTemplates.filter(function (val) {\n return /Ref$/i.test(val) && /_/i.test(val);\n });\n for (var _b = 0, complexTemplates_1 = complexTemplates; _b < complexTemplates_1.length; _b++) {\n var tempName = complexTemplates_1[_b];\n var propName = tempName.replace('Ref', '');\n var val = {};\n setValue(propName.replace('_', '.'), getValue(propName, tempOnThis), val);\n tempOnThis.setProperties(val, true);\n }\n };\n ComponentBase.prototype.getAngularAttr = function (ele) {\n var attributes = ele.attributes;\n var length = attributes.length;\n var ngAr;\n for (var i = 0; i < length; i++) {\n /* istanbul ignore next */\n if (/_ngcontent/g.test(attributes[parseInt(i.toString(), 10)].name)) {\n ngAr = attributes[parseInt(i.toString(), 10)].name;\n }\n }\n return ngAr;\n };\n ComponentBase.prototype.ngAfterViewInit = function (isTempRef) {\n var tempAfterViewThis = isTempRef || this;\n var regExp = /ejs-tab|ejs-accordion/g;\n /* istanbul ignore next */\n if (regExp.test(tempAfterViewThis.ngEle.nativeElement.outerHTML)) {\n tempAfterViewThis.ngEle.nativeElement.style.visibility = 'hidden';\n }\n /**\n * Root level template properties are not getting rendered,\n * Due to ngonchanges not get triggered.\n * so that we have set template value for root level template properties,\n * for example: refer below syntax\n * ```html\n * <ejs-grid>\n * <e-column></e-column>\n * <ng-template #editSettingsTemplate></ng-template>\n * </ejs-grid>\n * ```\n */\n var templateProperties = Object.keys(tempAfterViewThis);\n templateProperties = templateProperties.filter(function (val) {\n return /Ref$/i.test(val);\n });\n var ngtempRef = tempAfterViewThis.getModuleName() === 'DocumentEditor';\n for (var _i = 0, templateProperties_1 = templateProperties; _i < templateProperties_1.length; _i++) {\n var tempName = templateProperties_1[_i];\n var propName = tempName.replace('Ref', '');\n setValue(propName.replace('_', '.'), getValue(propName + 'Ref', tempAfterViewThis), tempAfterViewThis);\n }\n // Used setTimeout for template binding\n // Refer Link: https://github.com/angular/angular/issues/6005\n var appendToComponent = function (tempAfterViewThis) {\n /* istanbul ignore else */\n if (typeof window !== 'undefined' && tempAfterViewThis.element) {\n tempAfterViewThis.appendTo(tempAfterViewThis.element);\n tempAfterViewThis.ngEle.nativeElement.style.visibility = '';\n }\n };\n if (!ngtempRef && !tempAfterViewThis.getModuleName().includes('btn')) {\n setTimeout(function () {\n appendToComponent(tempAfterViewThis);\n });\n }\n else {\n appendToComponent(tempAfterViewThis);\n }\n };\n ComponentBase.prototype.ngOnDestroy = function (isTempRef) {\n var tempOnDestroyThis = isTempRef || this;\n /* istanbul ignore else */\n setTimeout(function () {\n if (typeof window !== 'undefined' && (tempOnDestroyThis.element.classList.contains('e-control'))) {\n if (tempOnDestroyThis.ngOnFocus !== undefined && tempOnDestroyThis.ngOnBlur !== undefined) {\n var ele = tempOnDestroyThis.inputElement || tempOnDestroyThis.element;\n ele.removeEventListener('focus', tempOnDestroyThis.ngOnFocusBound);\n ele.removeEventListener('blur', tempOnDestroyThis.ngOnBlurBound);\n tempOnDestroyThis.ngOnFocusBound = null;\n tempOnDestroyThis.ngOnBlurBound = null;\n }\n tempOnDestroyThis.destroy();\n tempOnDestroyThis.clearTemplate(null);\n // removing bounded events and tagobjects from component after destroy\n setTimeout(function () {\n for (var _i = 0, _a = Object.keys(tempOnDestroyThis); _i < _a.length; _i++) {\n var key = _a[_i];\n var value = tempOnDestroyThis[\"\".concat(key)];\n if (value && /object/.test(typeof value) && Object.keys(value).length !== 0) {\n if (/properties|changedProperties|childChangedProperties|oldProperties|moduleLoader/.test(key)) {\n for (var _b = 0, _c = Object.keys(tempOnDestroyThis[\"\".concat(key)]); _b < _c.length; _b++) {\n var propKey = _c[_b];\n var propValue = value[\"\".concat(propKey)];\n if (propValue && /object/.test(typeof propValue) && Object.keys(propValue).length !== 0 && (propValue.parent || propValue.parentObj)) {\n tempOnDestroyThis[\"\".concat(key)][\"\".concat(propKey)] = null;\n }\n }\n }\n else {\n if (value.parent || value.parentObj) {\n tempOnDestroyThis[\"\".concat(key)] = null;\n }\n }\n }\n }\n });\n }\n });\n };\n ComponentBase.prototype.clearTemplate = function (templateNames, index) {\n clearTemplate(this, templateNames, index);\n };\n ComponentBase.prototype.ngAfterContentChecked = function (isTempRef) {\n var tempAfterContentThis = isTempRef || this;\n for (var _i = 0, _a = tempAfterContentThis.tagObjects; _i < _a.length; _i++) {\n var tagObject = _a[_i];\n if (!isUndefined(tagObject.instance) &&\n (tagObject.instance.isInitChanges || tagObject.instance.hasChanges || tagObject.instance.hasNewChildren)) {\n var propObj = {};\n if (tagObject.instance.isInitChanges) {\n // For angular 9 compatibility\n // Not able to get complex directive properties reference ni Onint hook\n // So we have constructed property here and used\n var complexDirProps = void 0;\n var list = getValue('instance.list', tagObject);\n if (list && list.length) {\n complexDirProps = list[0].directivePropList;\n }\n var skip = true;\n if (tempAfterContentThis.getModuleName && tempAfterContentThis.getModuleName() === 'gantt') {\n skip = false;\n }\n if (complexDirProps && skip && complexDirProps.indexOf(tagObject.instance.propertyName) === -1) {\n var compDirPropList = Object.keys(tagObject.instance.list[0].propCollection);\n for (var h = 0; h < tagObject.instance.list.length; h++) {\n tagObject.instance.list[\"\".concat(h)].propCollection[tagObject.instance.propertyName] = [];\n var obj = {};\n for (var k = 0; k < compDirPropList.length; k++) {\n var complexPropName = compDirPropList[parseInt(k.toString(), 10)];\n obj[\"\".concat(complexPropName)] = tagObject.instance.list[\"\".concat(h)].propCollection[\"\".concat(complexPropName)];\n }\n var _loop_1 = function (i) {\n var tag = tagObject.instance.list[\"\".concat(h)].tags[parseInt(i.toString(), 10)];\n var childObj = getValue('child' + tag.substring(0, 1).toUpperCase() + tag.substring(1), tagObject.instance.list[\"\".concat(h)]);\n if (childObj) {\n var innerchildObj = tagObject.instance.list[\"\".concat(h)]['child' + tag.substring(0, 1).toUpperCase() + tag.substring(1)];\n // Update the inner child tag objects\n var updateChildTag_1 = function (innerchild) {\n var innerLevelTag = [];\n if (innerchild) {\n for (var j = 0; j < innerchild.list.length; j++) {\n var innerTag = innerchild.list[0].tags[0];\n if (innerTag) {\n var innerchildTag = getValue('child' + innerTag.substring(0, 1).toUpperCase() + innerTag.substring(1), innerchild.list[parseInt(j.toString(), 10)]);\n if (innerchildTag) {\n innerchild.list[parseInt(j.toString(), 10)].tagObjects\n .push({ instance: innerchildTag, name: innerTag });\n innerLevelTag.push(innerchildTag);\n }\n }\n }\n }\n // check for inner level tag\n if (innerLevelTag.length !== 0) {\n for (var l = 0; l < innerLevelTag.length; l++) {\n updateChildTag_1(innerLevelTag[parseInt(l.toString(), 10)]);\n }\n }\n };\n updateChildTag_1(innerchildObj);\n tagObject.instance.list[\"\".concat(h)].tagObjects.push({ instance: childObj, name: tag });\n }\n };\n for (var i = 0; i < tagObject.instance.list[\"\".concat(h)].tags.length; i++) {\n _loop_1(i);\n }\n tagObject.instance.list[\"\".concat(h)].propCollection[tagObject.instance.propertyName].push(obj);\n }\n }\n // End angular 9 compatibility\n propObj[tagObject.name] = tagObject.instance.getProperties();\n tempAfterContentThis.setProperties(propObj, tagObject.instance.isInitChanges);\n }\n else {\n /* istanbul ignore next */\n var hasDiffLength = false;\n if ((tempAfterContentThis[tagObject.name].length !== tagObject.instance.list.length) || (/diagram|DashboardLayout/.test(tempAfterContentThis.getModuleName()))) {\n tempAfterContentThis[tagObject.name] = tagObject.instance.list;\n hasDiffLength = true;\n }\n for (var _b = 0, _c = tagObject.instance.list; _b < _c.length; _b++) {\n var list = _c[_b];\n if (list.tags) {\n for (var _d = 0, _e = list.tags; _d < _e.length; _d++) {\n var tag = _e[_d];\n var innerChild = getValue('child' + tag.substring(0, 1).toUpperCase() + tag.substring(1), list);\n if (innerChild) {\n list.tagObjects.push({ instance: innerChild, name: tag });\n }\n }\n }\n var curIndex = tagObject.instance.list.indexOf(list);\n var curChild = getValue(tagObject.name, tempAfterContentThis)[\"\".concat(curIndex)];\n var complexTemplates = Object.keys(curChild);\n complexTemplates = complexTemplates.filter(function (val) {\n return /Ref$/i.test(val);\n });\n if (curChild.properties && Object.keys(curChild.properties).length !== 0) {\n for (var _f = 0, complexTemplates_2 = complexTemplates; _f < complexTemplates_2.length; _f++) {\n var complexPropName = complexTemplates_2[_f];\n complexPropName = complexPropName.replace(/Ref/, '');\n curChild.properties[\"\".concat(complexPropName)] = !curChild.properties[\"\".concat(complexPropName)] ?\n curChild.propCollection[\"\".concat(complexPropName)] : curChild.properties[\"\".concat(complexPropName)];\n }\n }\n if (!isUndefined(curChild) && !isUndefined(curChild.setProperties)) {\n if (/diagram|DashboardLayout/.test(tempAfterContentThis.getModuleName())) {\n curChild.setProperties(list.getProperties(), true);\n }\n else {\n curChild.setProperties(list.getProperties());\n }\n }\n list.isUpdated = true;\n }\n if ((/grid/.test(tempAfterContentThis.getModuleName()) && hasDiffLength) || /chart/.test(tempAfterContentThis.getModuleName())) {\n propObj[tagObject.name] = tagObject.instance.getProperties();\n tempAfterContentThis.setProperties(propObj, tagObject.instance.isInitChanges);\n }\n }\n }\n }\n };\n ComponentBase.prototype.registerEvents = function (eventList) {\n registerEvents(eventList, this);\n };\n ComponentBase.prototype.twoWaySetter = function (newVal, prop) {\n var oldVal = getValue(prop, this.properties);\n if (oldVal === newVal) {\n return;\n }\n this.saveChanges(prop, newVal, oldVal);\n setValue(prop, (isNullOrUndefined(newVal) ? null : newVal), this.properties);\n getValue(prop + 'Change', this).emit(newVal);\n };\n ComponentBase.prototype.addTwoWay = function (propList) {\n var _this = this;\n var _loop_2 = function (prop) {\n getValue(prop, this_1);\n Object.defineProperty(this_1, prop, {\n get: function () {\n return getValue(prop, _this.properties);\n },\n set: function (newVal) { return _this.twoWaySetter(newVal, prop); }\n });\n setValue(prop + 'Change', new EventEmitter(), this_1);\n };\n var this_1 = this;\n for (var _i = 0, propList_1 = propList; _i < propList_1.length; _i++) {\n var prop = propList_1[_i];\n _loop_2(prop);\n }\n };\n ComponentBase.prototype.addEventListener = function (eventName, handler) {\n var eventObj = getValue(eventName, this);\n if (!isUndefined(eventObj)) {\n if (!this.ngBoundedEvents[\"\".concat(eventName)]) {\n this.ngBoundedEvents[\"\".concat(eventName)] = new Map();\n }\n this.ngBoundedEvents[\"\".concat(eventName)].set(handler, eventObj.subscribe(handler));\n }\n };\n ComponentBase.prototype.removeEventListener = function (eventName, handler) {\n var eventObj = getValue(eventName, this);\n if (!isUndefined(eventObj)) {\n this.ngBoundedEvents[\"\".concat(eventName)].get(handler).unsubscribe();\n }\n };\n ComponentBase.prototype.trigger = function (eventName, eventArgs, success) {\n var eventObj = getValue(eventName, this);\n var prevDetection = this.isProtectedOnChange;\n this.isProtectedOnChange = false;\n if (eventArgs) {\n eventArgs.name = eventName;\n }\n if (!isUndefined(eventObj)) {\n eventObj.next(eventArgs);\n }\n var localEventObj = getValue('local' + eventName.charAt(0).toUpperCase() + eventName.slice(1), this);\n if (!isUndefined(localEventObj)) {\n localEventObj.call(this, eventArgs);\n }\n this.isProtectedOnChange = prevDetection;\n /* istanbul ignore else */\n if (success) {\n this.preventChange = this.isPreventChange;\n success.call(this, eventArgs);\n }\n this.isPreventChange = false;\n };\n return ComponentBase;\n}());\nexport { ComponentBase };\n","import { getValue, setValue, isNullOrUndefined, isObject } from '@syncfusion/ej2-base';\n/**\n * Angular Form Base Module\n */\nvar FormBase = /** @class */ (function () {\n function FormBase() {\n }\n FormBase.prototype.propagateChange = function (_) { return; };\n FormBase.prototype.propagateTouch = function () { return; };\n FormBase.prototype.localChange = function (e) {\n var value = (e.checked === undefined ? e.value : e.checked);\n this.objCheck = isObject(value);\n if (this.isUpdated === true) {\n this.angularValue = this.oldValue;\n }\n if (this.objCheck === true) {\n this.duplicateValue = JSON.stringify(value);\n this.duplicateAngularValue = JSON.stringify(this.angularValue);\n if (this.duplicateValue !== this.duplicateAngularValue && this.propagateChange !== undefined && value !== undefined) {\n // Update angular from our control\n this.propagateChange(value);\n this.angularValue = value;\n }\n }\n else {\n if (value !== this.angularValue && this.propagateChange !== undefined && value !== undefined) {\n // While reset form using reset() method ng-dirty not get updated, so while value is empty just update angularValue only\n if (value !== '' && value !== null) {\n // Update angular from our control\n this.propagateChange(value);\n this.angularValue = value;\n }\n else {\n var optionalValue = value;\n this.propagateChange(optionalValue);\n this.angularValue = value;\n }\n }\n }\n this.cdr.markForCheck();\n };\n FormBase.prototype.registerOnChange = function (registerFunction) {\n this.propagateChange = registerFunction;\n };\n FormBase.prototype.registerOnTouched = function (registerFunction) {\n this.propagateTouch = registerFunction;\n };\n FormBase.prototype.twoWaySetter = function (newVal, prop) {\n var oldVal = this.oldValue || getValue(prop, this.properties);\n var ele = this.inputElement || this.element;\n if (ele && oldVal === newVal && this.value === newVal &&\n (ele.value === undefined || ele.value === '')) {\n return;\n }\n this.saveChanges(prop, newVal, oldVal);\n setValue(prop, (isNullOrUndefined(newVal) ? null : newVal), this.properties);\n getValue(prop + 'Change', this).emit(newVal);\n };\n FormBase.prototype.ngAfterViewInit = function (isTempRef) {\n var tempFormAfterViewThis = isTempRef || this;\n // Used setTimeout for template binding\n // Refer Link: https://github.com/angular/angular/issues/6005\n // Removed setTimeout, Because we have called markForCheck() method in Angular Template Compiler\n /* istanbul ignore else */\n tempFormAfterViewThis.ngOnBlurBound = this.ngOnBlur.bind(this);\n tempFormAfterViewThis.ngOnFocusBound = this.ngOnFocus.bind(this);\n if (typeof window !== 'undefined') {\n if ((tempFormAfterViewThis.getModuleName()).includes('dropdowntree')) {\n setTimeout(function () {\n tempFormAfterViewThis.appendTo(tempFormAfterViewThis.element);\n });\n }\n else {\n tempFormAfterViewThis.appendTo(tempFormAfterViewThis.element);\n }\n var ele = tempFormAfterViewThis.inputElement || tempFormAfterViewThis.element;\n ele.addEventListener('focus', tempFormAfterViewThis.ngOnFocusBound);\n ele.addEventListener('blur', tempFormAfterViewThis.ngOnBlurBound);\n }\n this.isFormInit = false;\n };\n FormBase.prototype.setDisabledState = function (disabled) {\n this.enabled = !disabled;\n this.disabled = disabled;\n };\n FormBase.prototype.writeValue = function (value) {\n var regExp = /ejs-radiobutton/g;\n //update control value from angular\n if (this.checked === undefined) {\n this.value = value;\n }\n else {\n // To resolve boolean type formControl value is not working for radio button control.\n /* istanbul ignore next */\n if (this.ngEle) {\n if (typeof value === 'boolean') {\n if (regExp.test(this.ngEle.nativeElement.outerHTML)) {\n this.checked = value === this.value;\n }\n else {\n this.checked = value;\n }\n }\n else {\n this.checked = value === this.value;\n }\n }\n }\n var isNullValue = this.angularValue == null;\n this.angularValue = value;\n this.isUpdated = true;\n // When binding Html textbox value to syncfusion textbox, change event triggered dynamically.\n // To prevent change event, trigger change in component side based on `preventChange` value\n this.preventChange = this.isFormInit ? false : true;\n this.cdr.markForCheck();\n if (value === null) {\n if (isNullValue) {\n this.preventChange = false;\n }\n return;\n }\n };\n FormBase.prototype.ngOnFocus = function (e) {\n /* istanbul ignore else */\n if (this.skipFromEvent !== true) {\n this.focus.emit(e);\n }\n this.cdr.markForCheck();\n };\n FormBase.prototype.ngOnBlur = function (e) {\n this.propagateTouch();\n /* istanbul ignore else */\n if (this.skipFromEvent !== true) {\n this.blur.emit(e);\n }\n this.cdr.markForCheck();\n };\n FormBase.isFormBase = true;\n return FormBase;\n}());\nexport { FormBase };\n"],"names":["applyMixins","derivedClass","baseClass","forEach","Object","getOwnPropertyNames","prototype","name","hasOwnProperty","call","isFormBase","concat","ComponentMixins","registerEvents","eventList","obj","direct","ngEventsEmitter","length","_i","eventList_1","event_1","propCollection","EventEmitter","setProperties","clearTemplate","_this","templateNames","index","_a","regTemplates","keys","registeredTemplate","regProperties","filter","val","test","tabaccordionTemp","getModuleName","_b","e","m","value","parseInt","toString","destroy","splice","template","rootNodes","rt","_c","_d","destroyed","_view","pNode","renderer","parentNode","isNullOrUndefined","appendChild","_e","_f","tagObjects","tagObject","instance","RegExp","setValue","nameSpace","object","replace","split","fromObj","i","key","undefined","compile","templateEle","helper","CSPTemplate","stringCompiler","contRef_1","elementRef","nativeElement","_viewContainerRef","pName_1","propName","data","component","context","$implicit","conRef","viewContainerRef","viewRef","createEmbeddedView","getValue","detectChanges","markForCheck","viewCollection","push","Template","defaultValue","target","propertyDescriptor","set","setter","get","getter","enumerable","configurable","defineProperty","this","saveChanges","dataBind","refRegex","ComplexBase","hasChanges","dataSource","tags","ngOnInit","tag","objInstance","substring","toUpperCase","templateProperties","tempProp","indexOf","templateProperties_1","propList","directivePropList","k","dirPropName","isInitChanges","ngOnChanges","changes","changedVal","currentValue","isUpdated","getProperties","isChanged","result","property","tempProps","props","d","propVal","item","ngAfterContentChecked","templateProperties_2","ngAfterViewChecked","ngAfterViewInit","ngOnDestroy","ArrayBase","propertyName","list","ngAfterContentInit","children","map","child","dirIndex","onlyProp","isSourceChanged","childrenDataSource","JSON","stringify","hasNewChildren","ComponentBase","isProtectedOnChange","isFormInit","newValue","oldValue","oldProperties","changedProperties","finalUpdate","changeTime","setTimeout","bind","clearUpdate","clearTimeout","isTempRef","tempOnThis","ngBoundedEvents","isAngular","complexTemplate","ngAttr","getAngularAttr","element","createElement","tagName","prop","ele","srenderer","innerHTML","className","id","styles","setAttribute","attrs","attributes","complexTemplates","compProp","complexTemplates_1","ngAr","tempAfterViewThis","ngEle","outerHTML","style","visibility","ngtempRef","appendToComponent","window","appendTo","includes","tempOnDestroyThis","classList","contains","ngOnFocus","ngOnBlur","inputElement","removeEventListener","ngOnFocusBound","ngOnBlurBound","propKey","propValue","parent","parentObj","tempAfterContentThis","isUndefined","propObj","complexDirProps","skip","compDirPropList","h","complexPropName","childObj","innerchildObj","updateChildTag_1","innerchild","innerLevelTag","j","innerTag","innerchildTag","l","hasDiffLength","innerChild","curIndex","curChild","properties","complexTemplates_2","twoWaySetter","newVal","oldVal","emit","addTwoWay","this_1","propList_1","addEventListener","eventName","handler","eventObj","Map","subscribe","unsubscribe","trigger","eventArgs","success","prevDetection","next","localEventObj","charAt","slice","preventChange","isPreventChange","FormBase","propagateChange","_","propagateTouch","localChange","checked","objCheck","isObject","angularValue","duplicateValue","duplicateAngularValue","optionalValue","cdr","registerOnChange","registerFunction","registerOnTouched","tempFormAfterViewThis","setDisabledState","disabled","enabled","writeValue","regExp","isNullValue","skipFromEvent","focus","blur","getTemplateEngine"],"mappings":"oEAUO,SAASA,GAAYC,EAAcC,GACtCA,EAAUC,QAAQ,SAAUD,GACxBE,OAAOC,oBAAoBH,EAAUI,WAAWH,QAAQ,SAAUI,KACzDH,OAAOE,UAAUE,eAAeC,KAAKR,EAAaK,UAAWC,IAAUL,EAAUQ,YAAuB,gBAATH,KAChGN,EAAaK,UAAU,GAAGK,OAAOJ,IAASL,EAAUI,UAAU,GAAGK,OAAOJ,SAWjF,QAASK,GAAgBV,GAC5B,MAAO,UAAUD,GACbD,EAAYC,EAAcC,IAY3B,QAASW,GAAeC,EAAWC,EAAKC,GAC3C,GAAIC,KACJ,IAAIH,GAAaA,EAAUI,OAAQ,CAC/B,IAAK,GAAIC,GAAK,EAAGC,EAAcN,EAAWK,EAAKC,EAAYF,OAAQC,IAAM,CACrE,GAAIE,GAAUD,EAAYD,IACX,IAAXH,GACAD,EAAIO,eAAe,GAAGX,OAAOU,IAAY,GAAIE,iBAAa,GAC1DR,EAAI,GAAGJ,OAAOU,IAAYN,EAAIO,eAAe,GAAGX,OAAOU,KAGvDJ,EAAgB,GAAGN,OAAOU,IAAY,GAAIE,iBAAa,IAGhD,IAAXP,GACAD,EAAIS,cAAcP,GAAiB,IAaxC,QAASQ,GAAcC,EAAOC,EAAeC,GAChD,GAAIC,GACAC,EAAe1B,OAAO2B,KAAKL,EAAMM,mBACrC,IAAIF,EAAaZ,OAMb,IAAK,GAJDe,GAAgBN,GAAiBA,EAAcO,OAAO,SAAUC,GAChE,OAAQ,MAAMC,KAAKD,KAEnBE,EAAmB,wBAAwBD,KAAoC,QAA9BP,EAAKH,EAAMY,oBAAkC,KAAPT,MAAgB,GAASA,EAAGpB,KAAKiB,IACnHP,EAAK,EAAGoB,EAAMN,GAAiBA,GAAiBH,EAAeX,EAAKoB,EAAGrB,OAAQC,IAAM,CAC1F,GAAIa,GAAqBO,EAAGpB,EAE5B,IAAIS,GAASA,EAAMV,OACf,IAAK,GAAIsB,GAAI,EAAGA,EAAIZ,EAAMV,OAAQsB,IAC9B,GAAIH,EACA,IAASI,EAAI,EAAGA,EAAIf,EAAMM,mBAAmB,GAAGrB,OAAOqB,IAAqBd,OAAQuB,KAC5EC,EAAQhB,EAAMM,mBAAmB,GAAGrB,OAAOqB,IAAqBW,SAASF,EAAEG,WAAY,OAC9EF,IAAUd,EAAM,GAAGjB,OAAO6B,MACnCE,EAAMG,UACNnB,EAAMM,mBAAmB,GAAGrB,OAAOqB,IAAqBc,OAAOL,EAAG,QAK1E,KAASA,EAAI,EAAGA,EAAIf,EAAMM,mBAAmBe,SAAS7B,OAAQuB,IAAK,CAC/D,GAAIC,GAAQhB,EAAMM,mBAAmBe,SAASJ,SAASF,EAAEG,WAAY,KAAKI,UAAU,EAChFN,KAAUd,EAAM,GAAGjB,OAAO6B,MACtBS,EAAKvB,EAAMM,mBAAmB,GAAGrB,OAAOqB,KACzCW,SAASF,EAAEG,WAAY,KAAKC,cAO/C,IAAInB,EAAMM,mBAAmB,GAAGrB,OAAOqB,IACnC,IAAK,GAAIkB,GAAK,EAAGC,EAAKzB,EAAMM,mBAAmB,GAAGrB,OAAOqB,IAAsBkB,EAAKC,EAAGjC,OAAQgC,IAAM,CACjG,GAAID,GAAKE,EAAGD,EACZ,KAAKD,EAAGG,UAAW,CACf,GAAIH,EAAGI,MAAO,CACV,GAAIC,GAAQL,EAAGI,MAAME,SAASC,WAAWP,EAAGD,UAAU,GACtD,KAAKS,oBAAkBH,GACnB,IAAK,GAAIb,GAAI,EAAGA,EAAIQ,EAAGD,UAAU9B,OAAQuB,IACrCa,EAAMI,YAAYT,EAAGD,UAAUL,SAASF,EAAEG,WAAY,MAIlEK,EAAGJ,WAKdR,GAAqBT,SACfF,GAAMM,mBAAmB,GAAGrB,OAAOqB,IAatD,IAAK,GAAI2B,GAAK,EAAGC,EAAKlC,EAAMmC,WAAYF,EAAKC,EAAG1C,OAAQyC,KAT1C,SAAUG,GAChBA,EAAUC,UAEVD,EAAUC,SAAStC,cAAeE,GAAiBA,EAAcO,OAAO,SAAUC,GAE9E,QAAQ,GADK6B,QACMF,EAAUvD,MAAM6B,KAAKD,OAKhCyB,EAAGD,IAapB,QAASM,GAASC,EAAWxB,EAAOyB,GAIvC,IAAK,GAHDpC,GAAOmC,EAAUE,QAAQ,MAAO,KAAKA,QAAQ,MAAO,IAAIC,MAAM,KAE9DC,EAAUH,MACLI,EAAI,EAAGA,EAAIxC,EAAKb,OAAQqD,IAAK,CAClC,GAAIC,GAAMzC,EAAKY,SAAS4B,EAAE3B,WAAY,IAClC2B,GAAI,IAAMxC,EAAKb,OACfoD,EAAQ,GAAG3D,OAAO6D,QAAkBC,KAAV/B,KAA2BA,MAEpB+B,KAA5BH,EAAQ,GAAG3D,OAAO6D,MACvBF,EAAQ,GAAG3D,OAAO6D,QAEtBF,EAAUA,EAAQ,GAAG3D,OAAO6D,IAEhC,MAAOF,GCtJJ,QAASI,GAAQC,EAAaC,GACjC,GAA2B,gBAAhBD,IAAoD,kBAAhBA,IAA8BA,EAAYrE,WAAaqE,EAAYrE,UAAUuE,YACxH,MAAOC,GAAeH,EAAaC,EAGnC,IAAIG,GAAYJ,EAAYK,WAAWC,cAAcC,kBACjDC,EAAUR,EAAYK,WAAWC,cAAcG,QACnD,OAAO,UAAUC,EAAMC,EAAWF,GAC9B,GAAIG,IAAYC,UAAWH,GAEvBI,EAASV,GAAwBO,EAAUI,iBAC3CC,EAAUF,EAAOG,mBAAmBjB,EAAaY,EACjD,gCAA+BnD,KAAKyD,WAAS,mCAAoCJ,KAChF,YAAYrD,KAAKyD,WAAS,iCAAkCJ,KACzDI,WAAS,oCAAqCJ,GAClDE,EAAQG,gBAGRH,EAAQI,cAGZ,IAAIC,GAAkBV,GAAaA,EAAUtD,mBACzCsD,EAAUtD,mBAAqB6D,WAAS,qCAAsCJ,EAMlF,OALAL,GAAYA,GAAYE,EAAUtD,mBAAsBoD,EAAWD,MAChB,KAAxCa,EAAe,GAAGrF,OAAOyE,MAChCY,EAAe,GAAGrF,OAAOyE,QAE7BY,EAAe,GAAGrF,OAAOyE,IAAWa,KAAKN,GAClCA,EAAQ3C,WAUpB,QAASkD,GAASC,GACrB,MAAO,UAAUC,EAAQ5B,GACrB,GAAI6B,IACAC,IAAKC,EAAO/B,GACZgC,IAAKC,EAAOjC,EAAK2B,GACjBO,YAAY,EACZC,cAAc,EAElBvG,QAAOwG,eAAeR,EAAQ5B,EAAK6B,IAS3C,QAASE,GAAO/B,GACZ,MAAO,UAAUrC,OACDsC,KAARtC,IAGJ8B,WAASO,EAAM,MAAOrC,EAAK0E,MACR,gBAAR1E,IACPA,EAAI6C,WAAWC,cAAcC,kBAAoB2B,KAAKnB,iBACtDvD,EAAI6C,WAAWC,cAAcG,SAAWZ,GAGpCqC,KAAKC,cACLD,KAAKC,YAAYtC,EAAKrC,MAAKsC,IAC3BoC,KAAKE,cAYrB,QAASN,GAAOjC,EAAK2B,GACjB,MAAO,YAEH,MAAON,YAASrB,EAAM,MAAOqC,OAASV,GC3F9C,GAAIa,GAAW,OACXC,EAA6B,WAC7B,QAASA,KACLJ,KAAKK,YAAa,EAClBL,KAAKvF,kBACLuF,KAAKM,cACLN,KAAKO,QACLP,KAAKhD,cA8HT,MA5HAoD,GAAY3G,UAAU+G,SAAW,WAC7BR,KAAK7E,qBACL,KAAK,GAAIb,GAAK,EAAGU,EAAKgF,KAAKO,KAAMjG,EAAKU,EAAGX,OAAQC,IAAM,CACnD,GAAImG,GAAMzF,EAAGV,GACToG,EAAc1B,WAAS,QAAUyB,EAAIE,UAAU,EAAG,GAAGC,cAAgBH,EAAIE,UAAU,GAAIX,KACvFU,IACAV,KAAKhD,WAAWoC,MAAOlC,SAAUwD,EAAahH,KAAM+G,IAI5D,IAAK,GADDI,GAAqBtH,OAAO2B,KAAK8E,MAC5BtC,EAAI,EAAGA,EAAImD,EAAmBxG,OAAQqD,IAAK,CAChD,GAAIoD,GAAW9B,WAAS6B,EAAmB/E,SAAS4B,EAAE3B,WAAY,KAAMiE,KAChD,iBAAbc,IAAyBA,GAAYA,EAAS3C,aAChDa,YAA4E,IAAnE6B,EAAmB/E,SAAS4B,EAAE3B,WAAY,KAAKgF,QAAQ,OAAgBF,EAAmB/E,SAAS4B,EAAE3B,WAAY,KAAO8E,EAAmB/E,SAAS4B,EAAE3B,WAAY,KAAO,MAAOiE,OAC1L5C,YAA4E,IAAnEyD,EAAmB/E,SAAS4B,EAAE3B,WAAY,KAAKgF,QAAQ,OAAgBF,EAAmB/E,SAAS4B,EAAE3B,WAAY,KAAO8E,EAAmB/E,SAAS4B,EAAE3B,WAAY,KAAO,MAAO+E,EAAUd,OAEnMhB,WAAS,mBAAoBgB,OAAUhB,WAAS,oBAAqB8B,EAAS3C,WAAWC,gBAAmBY,WAAS,WAAY8B,EAAS3C,WAAWC,iBACrJhB,WAAS,oBAAqB4B,WAAS,mBAAoBgB,MAAOc,EAAS3C,WAAWC,eACtFhB,WAAS,WAAYyD,EAAmB/E,SAAS4B,EAAE3B,WAAY,KAAKwB,QAAQ,MAAO,IAAKuD,EAAS3C,WAAWC,iBAQxH,IAAK,GAAI1C,GAAK,EAAGsF,EAHjBH,GADAA,EAAqBtH,OAAO2B,KAAK8E,OACO3E,OAAO,SAAUC,GACrD,MAAO,QAAQC,KAAKD,KAEoCI,EAAKsF,EAAqB3G,OAAQqB,IAAM,CAChG,GACI6C,GADWyC,EAAqBtF,GACZ6B,QAAQ,MAAO,GACvCH,YAASmB,EAAShB,QAAQ,IAAK,KAAMyB,WAAST,EAAUyB,MAAOA,KAAKvF,gBAIxE,GAAIwG,GAAW1H,OAAO2B,KAAK8E,KAE3B,IAAIA,KAAKkB,kBAAmB,CACxB,IAAK,GAAIC,GAAI,EAAGA,EAAInB,KAAKkB,kBAAkB7G,OAAQ8G,IAAK,CACpD,GAAIC,GAAcpB,KAAKkB,kBAAkBpF,SAASqF,EAAEpF,WAAY,MACzB,IAAnCkF,EAASF,QAAQK,KAAwD,IAAhCpC,WAASoC,EAAapB,QAAmBhB,WAASoC,EAAapB,OACxG5C,WAASgE,EAAapC,WAASoC,EAAapB,MAAOA,KAAKvF,gBAGhEuF,KAAKK,YAAa,EAEtBL,KAAKqB,eAAgB,GAEzBjB,EAAY3G,UAAUO,eAAiB,SAAUC,GAC7CD,EAAeC,EAAW+F,MAAM,IAEpCI,EAAY3G,UAAU6H,YAAc,SAAUC,GAC1C,IAAK,GAAIjH,GAAK,EAAGU,EAAKzB,OAAO2B,KAAKqG,GAAUjH,EAAKU,EAAGX,OAAQC,IAAM,CAC9D,GAAIiE,GAAWvD,EAAGV,GACdkH,EAAaD,EAAQ,GAAGzH,OAAOyE,GACnCyB,MAAKvF,eAAe,GAAGX,OAAOyE,IAAaiD,EAAWC,aAE1DzB,KAAK0B,WAAY,EACjB1B,KAAKK,YAAa,GAGtBD,EAAY3G,UAAUmB,cAAgB,SAAUE,GAC5CF,EAAcoF,KAAMlF,IAExBsF,EAAY3G,UAAUkI,cAAgB,WAElC,IAAK,GAAIrH,GAAK,EAAGU,EAAKgF,KAAKhD,WAAY1C,EAAKU,EAAGX,OAAQC,IAAM,CACzD,GAAI2C,GAAYjC,EAAGV,EACnB0F,MAAKvF,eAAewC,EAAUvD,MAAQuD,EAAUC,SAASyE,gBAE7D,MAAO3B,MAAKvF,gBAEhB2F,EAAY3G,UAAUmI,UAAY,WAC9B,GAAIC,GAAS7B,KAAKK,UAClB,KAAKzD,oBAAkBoD,KAAKvF,eAAeuF,KAAK8B,WAG5C,IAAK,GAFDC,GAAY/B,KAAKvF,eAAeuF,KAAK8B,UACrCE,EAAQzI,OAAO2B,KAAK6G,EAAU,IACzBE,EAAI,EAAGA,EAAID,EAAM3H,OAAQ4H,IAC9B,IAAKrF,oBAAkBoD,KAAKvF,eAAeuH,EAAMlG,SAASmG,EAAElG,WAAY,OAAQ,CAC5E,GAAIT,GAAM0D,WAASgD,EAAMlG,SAASmG,EAAElG,WAAY,KAAMiE,MAClDkC,EAAUlC,KAAKvF,eAAeuF,KAAK8B,UAAU,GAAGE,EAAMlG,SAASmG,EAAElG,WAAY,KAC5Ea,qBAAkBtB,IAAQ0E,KAAKvF,eAAeuH,EAAMlG,SAASmG,EAAElG,WAAY,QAAUT,GACnF4G,IAAY5G,IACf8B,WAAS4E,EAAMlG,SAASmG,EAAElG,WAAY,KAAMT,EAAK0E,KAAKvF,eAAeuF,KAAK8B,UAAU,IACpF1E,WAAS4E,EAAMlG,SAASmG,EAAElG,WAAY,KAAMT,EAAK0E,KAAKvF,gBACtDuF,KAAKK,YAAa,EAClBL,KAAK0B,WAAY,GAMjC,IAAK,GAAIpH,GAAK,EAAGU,EAAKgF,KAAKhD,WAAY1C,EAAKU,EAAGX,OAAQC,IAAM,CACzD,GAAI6H,GAAOnH,EAAGV,EACduH,GAASA,GAAUM,EAAKjF,SAASmD,WAErC,MAAOwB,IAAU7B,KAAKK,YAE1BD,EAAY3G,UAAU2I,sBAAwB,WAE1C,GADApC,KAAKK,WAAaL,KAAK4B,YACnB5B,KAAKqB,eAAiBrB,KAAKK,WAK3B,IAAK,GAJDQ,GAAqBtH,OAAO2B,KAAK8E,MAI5B1F,EAAK,EAAG+H,EAHjBxB,EAAqBA,EAAmBxF,OAAO,SAAUC,GACrD,MAAO6E,GAAS5E,KAAKD,KAEmChB,EAAK+H,EAAqBhI,OAAQC,IAAM,CAChG,GACIiE,GADW8D,EAAqB/H,GACZiD,QAAQ,MAAO,GACvCH,YAASmB,EAAShB,QAAQ,IAAK,KAAMyB,WAAST,EAAUyB,MAAOA,KAAKvF,kBAIhF2F,EAAY3G,UAAU6I,mBAAqB,WAEnCtC,KAAK0B,YACL1B,KAAKK,YAAa,IAG1BD,EAAY3G,UAAU8I,gBAAkB,WAEpCvC,KAAKqB,eAAgB,GAEzBjB,EAAY3G,UAAU+I,YAAc,WAEhCxC,KAAKkB,sBAEFd,KAGPqC,EAA2B,WAC3B,QAASA,GAAUC,GACf1C,KAAK2C,QACL3C,KAAKK,YAAa,EAClBL,KAAK0C,aAAeA,EA4FxB,MA1FAD,GAAUhJ,UAAU+G,SAAW,WAC3BR,KAAKqB,eAAgB,GAEzBoB,EAAUhJ,UAAUmJ,mBAAqB,WACrC,GAAI/H,GAAQmF,KACRjF,EAAQ,CAEZiF,MAAK2C,KAAO3C,KAAK6C,SAASC,IAAI,SAAUC,GAGpC,MAFAA,GAAMC,SAAWjI,IACjBgI,EAAMjB,SAAWjH,EAAM6H,aAChBK,IAEX/C,KAAKK,YAAa,GAEtBoC,EAAUhJ,UAAUkI,cAAgB,WAEhC,IAAK,GADDsB,MACK3I,EAAK,EAAGU,EAAKgF,KAAK2C,KAAMrI,EAAKU,EAAGX,OAAQC,IAAM,CACnD,GAAI6H,GAAOnH,EAAGV,EACd2I,GAAS7D,KAAK+C,EAAKR,iBAEvB,MAAOsB,IAEXR,EAAUhJ,UAAUmI,UAAY,WAC5B,GAAI/G,GAAQmF,KACR6B,GAAS,EACT9G,EAAQ,EACRmI,GAAkB,EAClBC,EAAqBnD,KAAK6C,SAASC,IAAI,SAAUC,GACjD,MAAOA,IAGX,IAAI/C,KAAK2C,KAAKtI,SAAW2F,KAAK6C,SAASxI,OACnC,IAAK,GAAIqD,GAAI,EAAGA,EAAIsC,KAAK2C,KAAKtI,OAAQqD,IAC9BsC,KAAK2C,KAAK7G,SAAS4B,EAAE3B,WAAY,KAAKtB,eAAe6F,aACjDN,KAAK2C,KAAK7G,SAAS4B,EAAE3B,WAAY,KAAKuE,YACtCN,KAAK2C,KAAK7G,SAAS4B,EAAE3B,WAAY,KAAKtB,eAAe6F,aAC7CN,KAAK2C,KAAK7G,SAAS4B,EAAE3B,WAAY,KAAKuE,aAC9CN,KAAK2C,KAAK7G,SAAS4B,EAAE3B,WAAY,KAAKtB,eAAe6F,WAAaN,KAAK2C,KAAK7G,SAAS4B,EAAE3B,WAAY,KAAKuE,WACxGN,KAAK2C,KAAK7G,SAAS4B,EAAE3B,WAAY,KAAKsE,YAAa,GAEA,WAAnDL,KAAK2C,KAAK7G,SAAS4B,EAAE3B,WAAY,KAAK+F,WACtCoB,EAAmBE,KAAKC,UAAUrD,KAAK2C,KAAK7G,SAAS4B,EAAE3B,WAAY,KAAKtB,eAAe6F,cACnF8C,KAAKC,UAAUF,EAAmBrH,SAAS4B,EAAE3B,WAAY,KAAKtB,eAAe6F,cAGzF4C,EAAkBlD,KAAK2C,KAAK7G,SAAS4B,EAAE3B,WAAY,KAAKsE,aAChD8C,EAAmBrH,SAAS4B,EAAE3B,WAAY,KAAKsE,UAG/DL,MAAKsD,iBAAkBtD,KAAK2C,KAAKtI,SAAW2F,KAAK6C,SAASxI,SAAU6I,IAA0B,KAC1FlD,KAAKsD,iBACLtD,KAAK2C,KAAO3C,KAAK6C,SAASC,IAAI,SAAUC,GAGpC,MAFAA,GAAMC,SAAWjI,IACjBgI,EAAMjB,SAAWjH,EAAM6H,aAChBK,IAIf,KAAK,GAAIzI,GAAK,EAAGU,EAAKgF,KAAK2C,KAAMrI,EAAKU,EAAGX,OAAQC,IAAM,CACnD,GAAI6H,GAAOnH,EAAGV,EACduH,GAASA,GAAUM,EAAK9B,WAE5B,QAASL,KAAK2C,KAAKtI,QAAUwH,GAEjCY,EAAUhJ,UAAUmB,cAAgB,SAAUE,GAG1C,IAAK,GAFDD,GAAQmF,KAEH1F,EAAK,EAAGU,EAAKgF,KAAK2C,KAAMrI,EAAKU,EAAGX,OAAQC,IAClCU,EAAGV,GACTM,cAAcE,GAAiBA,EAAcgI,IAAI,SAAUxH,GAE5D,MAAO,IADM6B,QACKtC,EAAM6H,cAAcnH,KAAKD,GAAOA,EAAIiC,QAAQ1C,EAAM6H,aAAe,IAAK,IAAMpH,MAI1GmH,EAAUhJ,UAAU2I,sBAAwB,WACxCpC,KAAKK,WAAaL,KAAK4B,WACvB,KAAK,GAAIlE,GAAI,EAAGA,EAAIsC,KAAK2C,KAAKtI,OAAQqD,IAC9BsB,WAAS,eAAgBgB,KAAK2C,KAAK7G,SAAS4B,EAAE3B,WAAY,OAAyE,YAAhEiD,WAAS,WAAYgB,KAAK2C,KAAK7G,SAAS4B,EAAE3B,WAAY,OACzHqB,WAAS,UAAW4B,WAAS,eAAgBgB,KAAK2C,KAAK7G,SAAS4B,EAAE3B,WAAY,MAAM4F,gBAAiB3B,KAAK2C,KAAK7G,SAAS4B,EAAE3B,WAAY,KAAKtB,gBAE/IuF,KAAK2C,KAAK7G,SAAS4B,EAAE3B,WAAY,KAAK2F,WAAY,GAG1De,EAAUhJ,UAAU8I,gBAAkB,WAClCvC,KAAKqB,eAAgB,GAEzBoB,EAAUhJ,UAAU+I,YAAc,WAC9BxC,KAAK2C,SAEFF,KCnOPc,EAA+B,WAC/B,QAASA,KACLvD,KAAKwD,qBAAsB,EAC3BxD,KAAKyD,YAAa,EAwXtB,MAtXAF,GAAc9J,UAAUwG,YAAc,SAAUtC,EAAK+F,EAAUC,GAC3D,IAAI3D,KAAKwD,oBAAT,CAGAxD,KAAK4D,cAAc,GAAG9J,OAAO6D,IAAQgG,EACrC3D,KAAK6D,kBAAkB,GAAG/J,OAAO6D,IAAQ+F,EACzC1D,KAAK8D,aACL,IAAIC,GAAaC,WAAWhE,KAAKE,SAAS+D,KAAKjE,OAC3CkE,EAAc,WACdC,aAAaJ,GAEjB/D,MAAK8D,YAAcI,IAEvBX,EAAc9J,UAAU+G,SAAW,SAAU4D,GACzC,GAAIC,GAAaD,GAAapE,IAC9BqE,GAAWlJ,sBACXkJ,EAAWC,mBACXD,EAAWE,WAAY,EACvBF,EAAWZ,YAAa,EAEpBW,IACApE,KAAKO,KAAO6D,EAAU7D,MAE1B8D,EAAW9D,KAAOP,KAAKO,SACvB8D,EAAWG,gBAAkBxE,KAAKwE,oBAClCH,EAAWrH,cACXqH,EAAWI,OAASzE,KAAK0E,eAAeL,EAAWM,SAEnDN,EAAWO,cAAgB,SAAUC,EAASC,GAC1C,GAAIC,GAAMV,EAAWW,UAAYX,EAAWW,UAAUJ,cAAcC,GAAWD,gBAAcC,EAC7F,YAAsB,OACXE,GAEXA,EAAIE,UAAaH,EAAKG,UAAYH,EAAKG,UAAY,OAC5BrH,KAAnBkH,EAAKI,YACLH,EAAIG,UAAYJ,EAAKI,eAETtH,KAAZkH,EAAKK,KACLJ,EAAII,GAAKL,EAAKK,QAEEvH,KAAhBkH,EAAKM,QACLL,EAAIM,aAAa,QAASP,EAAKM,YAETxH,KAAtByG,EAAWI,QACXM,EAAIM,aAAahB,EAAWI,OAAQ,QAErB7G,KAAfkH,EAAKQ,OACLC,aAAWR,EAAKD,EAAKQ,OAElBP,GAEX,KAAK,GAAIzK,GAAK,EAAGU,EAAKqJ,EAAW9D,KAAMjG,EAAKU,EAAGX,OAAQC,IAAM,CACzD,GAAImG,GAAMzF,EAAGV,GACT2C,GACAC,SAAU8B,WAAS,QAAUyB,EAAIE,UAAU,EAAG,GAAGC,cAAgBH,EAAIE,UAAU,GAAI0D,GACnF3K,KAAM+G,EAEV4D,GAAWrH,WAAWoC,KAAKnC,GAG/B,IAAK,GADDuI,GAAmBjM,OAAO2B,KAAKmJ,GAC1B3G,EAAI,EAAGA,EAAI8H,EAAiBnL,OAAQqD,IAAK,CAC9C,GAAI+H,GAAWzG,WAASwG,EAAiB1J,SAAS4B,EAAE3B,WAAY,KAAMsI,EAC9C,iBAAboB,IAAyBA,GAAYA,EAAStH,aAC7B,gBAAbsH,IAAyBA,GAAYA,EAAStH,aAA6E,IAA/DqH,EAAiB1J,SAAS4B,EAAE3B,WAAY,KAAKgF,QAAQ,OAAgF,IAAjEyE,EAAiB1J,SAAS4B,EAAE3B,WAAY,KAAKgF,QAAQ,QAC5L3D,WAASoI,EAAiB1J,SAAS4B,EAAE3B,WAAY,KAAO,MAAO0J,EAAUpB,IAEzEA,EAAWxF,kBAAqBG,WAAS,oBAAqByG,EAAStH,WAAWC,gBAAmBY,WAAS,WAAYyG,EAAStH,WAAWC,iBAC9IhB,WAAS,oBAAqBiH,EAAWxF,iBAAkB4G,EAAStH,WAAWC,eAC/EhB,WAAS,WAAYoI,EAAiB1J,SAAS4B,EAAE3B,WAAY,KAAKwB,QAAQ,MAAO,IAAKkI,EAAStH,WAAWC,iBAQtH,IAAK,GAAI1C,GAAK,EAAGgK,EAHjBF,GADAA,EAAmBjM,OAAO2B,KAAKmJ,IACKhJ,OAAO,SAAUC,GACjD,MAAO,QAAQC,KAAKD,IAAQ,KAAKC,KAAKD,KAEcI,EAAKgK,EAAmBrL,OAAQqB,IAAM,CAC1F,GACI6C,GADWmH,EAAmBhK,GACV6B,QAAQ,MAAO,IACnCjC,IACJ8B,YAASmB,EAAShB,QAAQ,IAAK,KAAMyB,WAAST,EAAU8F,GAAa/I,GACrE+I,EAAW1J,cAAcW,GAAK,KAGtCiI,EAAc9J,UAAUiL,eAAiB,SAAUK,GAI/C,IAAK,GADDY,GAFAJ,EAAaR,EAAIQ,WACjBlL,EAASkL,EAAWlL,OAEfqD,EAAI,EAAGA,EAAIrD,EAAQqD,IAEpB,cAAcnC,KAAKgK,EAAWzJ,SAAS4B,EAAE3B,WAAY,KAAKrC,QAC1DiM,EAAOJ,EAAWzJ,SAAS4B,EAAE3B,WAAY,KAAKrC,KAGtD,OAAOiM,IAEXpC,EAAc9J,UAAU8I,gBAAkB,SAAU6B,GAChD,GAAIwB,GAAoBxB,GAAapE,IACxB,0BAEFzE,KAAKqK,EAAkBC,MAAMzH,cAAc0H,aAClDF,EAAkBC,MAAMzH,cAAc2H,MAAMC,WAAa,SAc7D,IAAInF,GAAqBtH,OAAO2B,KAAK0K,EACrC/E,GAAqBA,EAAmBxF,OAAO,SAAUC,GACrD,MAAO,QAAQC,KAAKD,IAGxB,KAAK,GADD2K,GAAkD,mBAAtCL,EAAkBnK,gBACzBnB,EAAK,EAAG0G,EAAuBH,EAAoBvG,EAAK0G,EAAqB3G,OAAQC,IAAM,CAChG,GACIiE,GADWyC,EAAqB1G,GACZiD,QAAQ,MAAO,GACvCH,YAASmB,EAAShB,QAAQ,IAAK,KAAMyB,WAAST,EAAW,MAAOqH,GAAoBA,GAIxF,GAAIM,GAAoB,SAAUN,GAER,mBAAXO,SAA0BP,EAAkBjB,UACnDiB,EAAkBQ,SAASR,EAAkBjB,SAC7CiB,EAAkBC,MAAMzH,cAAc2H,MAAMC,WAAa,IAG5DC,IAAcL,EAAkBnK,gBAAgB4K,SAAS,OAM1DH,EAAkBN,GALlB5B,WAAW,WACPkC,EAAkBN,MAO9BrC,EAAc9J,UAAU+I,YAAc,SAAU4B,GAC5C,GAAIkC,GAAoBlC,GAAapE,IAErCgE,YAAW,WACP,GAAsB,mBAAXmC,SAA2BG,EAAkB3B,QAAQ4B,UAAUC,SAAS,aAAe,CAC9F,OAAoC5I,KAAhC0I,EAAkBG,eAA0D7I,KAA/B0I,EAAkBI,SAAwB,CACvF,GAAI3B,GAAMuB,EAAkBK,cAAgBL,EAAkB3B,OAC9DI,GAAI6B,oBAAoB,QAASN,EAAkBO,gBACnD9B,EAAI6B,oBAAoB,OAAQN,EAAkBQ,eAClDR,EAAkBO,eAAiB,KACnCP,EAAkBQ,cAAgB,KAEtCR,EAAkBtK,UAClBsK,EAAkB1L,cAAc,MAEhCoJ,WAAW,WACP,IAAK,GAAI1J,GAAK,EAAGU,EAAKzB,OAAO2B,KAAKoL,GAAoBhM,EAAKU,EAAGX,OAAQC,IAAM,CACxE,GAAIqD,GAAM3C,EAAGV,GACTuB,EAAQyK,EAAkB,GAAGxM,OAAO6D,GACxC,IAAI9B,GAAS,SAASN,WAAYM,KAAwC,IAA9BtC,OAAO2B,KAAKW,GAAOxB,OAC3D,GAAI,iFAAiFkB,KAAKoC,GACtF,IAAK,GAAIjC,GAAK,EAAGW,EAAK9C,OAAO2B,KAAKoL,EAAkB,GAAGxM,OAAO6D,KAAQjC,EAAKW,EAAGhC,OAAQqB,IAAM,CACxF,GAAIqL,GAAU1K,EAAGX,GACbsL,EAAYnL,EAAM,GAAG/B,OAAOiN,GAC5BC,IAAa,SAASzL,WAAYyL,KAAgD,IAAlCzN,OAAO2B,KAAK8L,GAAW3M,SAAiB2M,EAAUC,QAAUD,EAAUE,aACtHZ,EAAkB,GAAGxM,OAAO6D,IAAM,GAAG7D,OAAOiN,IAAY,WAK5DlL,EAAMoL,QAAUpL,EAAMqL,aACtBZ,EAAkB,GAAGxM,OAAO6D,IAAQ,aASpE4F,EAAc9J,UAAUmB,cAAgB,SAAUE,EAAeC,GAC7DH,EAAcoF,KAAMlF,EAAeC,IAEvCwI,EAAc9J,UAAU2I,sBAAwB,SAAUgC,GAEtD,IAAK,GADD+C,GAAuB/C,GAAapE,KAC/B1F,EAAK,EAAGU,EAAKmM,EAAqBnK,WAAY1C,EAAKU,EAAGX,OAAQC,IAAM,CACzE,GAAI2C,GAAYjC,EAAGV,EACnB,KAAK8M,cAAYnK,EAAUC,YACtBD,EAAUC,SAASmE,eAAiBpE,EAAUC,SAASmD,YAAcpD,EAAUC,SAASoG,gBAAiB,CAC1G,GAAI+D,KACJ,IAAIpK,EAAUC,SAASmE,cAAe,CAIlC,GAAIiG,OAAkB,IAClB3E,EAAO3D,WAAS,gBAAiB/B,KACzB0F,EAAKtI,SACbiN,EAAkB3E,EAAK,GAAGzB,kBAE9B,IAAIqG,IAAO,CAIX,IAHIJ,EAAqB1L,eAA0D,UAAzC0L,EAAqB1L,kBAC3D8L,GAAO,GAEPD,GAAmBC,IAAsE,IAA9DD,EAAgBvG,QAAQ9D,EAAUC,SAASwF,cAEtE,IAAK,GADD8E,GAAkBjO,OAAO2B,KAAK+B,EAAUC,SAASyF,KAAK,GAAGlI,gBACpDgN,EAAI,EAAGA,EAAIxK,EAAUC,SAASyF,KAAKtI,OAAQoN,IAAK,CACrDxK,EAAUC,SAASyF,KAAK,GAAG7I,OAAO2N,IAAIhN,eAAewC,EAAUC,SAASwF,gBAExE,KAAK,GADDxI,MACKiH,EAAI,EAAGA,EAAIqG,EAAgBnN,OAAQ8G,IAAK,CAC7C,GAAIuG,GAAkBF,EAAgB1L,SAASqF,EAAEpF,WAAY,IAC7D7B,GAAI,GAAGJ,OAAO4N,IAAoBzK,EAAUC,SAASyF,KAAK,GAAG7I,OAAO2N,IAAIhN,eAAe,GAAGX,OAAO4N,IAkCrG,IAAK,GAAIhK,GAAI,EAAGA,EAAIT,EAAUC,SAASyF,KAAK,GAAG7I,OAAO2N,IAAIlH,KAAKlG,OAAQqD,KAhCzD,SAAUA,GACpB,GAAI+C,GAAMxD,EAAUC,SAASyF,KAAK,GAAG7I,OAAO2N,IAAIlH,KAAKzE,SAAS4B,EAAE3B,WAAY,KACxE4L,EAAW3I,WAAS,QAAUyB,EAAIE,UAAU,EAAG,GAAGC,cAAgBH,EAAIE,UAAU,GAAI1D,EAAUC,SAASyF,KAAK,GAAG7I,OAAO2N,IAC1H,IAAIE,EAAU,CACV,GAAIC,GAAgB3K,EAAUC,SAASyF,KAAK,GAAG7I,OAAO2N,IAAI,QAAUhH,EAAIE,UAAU,EAAG,GAAGC,cAAgBH,EAAIE,UAAU,IAElHkH,EAAmB,SAAUC,GAC7B,GAAIC,KACJ,IAAID,EACA,IAAK,GAAIE,GAAI,EAAGA,EAAIF,EAAWnF,KAAKtI,OAAQ2N,IAAK,CAC7C,GAAIC,GAAWH,EAAWnF,KAAK,GAAGpC,KAAK,EACvC,IAAI0H,EAAU,CACV,GAAIC,GAAgBlJ,WAAS,QAAUiJ,EAAStH,UAAU,EAAG,GAAGC,cAAgBqH,EAAStH,UAAU,GAAImH,EAAWnF,KAAK7G,SAASkM,EAAEjM,WAAY,KAC1ImM,KACAJ,EAAWnF,KAAK7G,SAASkM,EAAEjM,WAAY,KAAKiB,WACvCoC,MAAOlC,SAAUgL,EAAexO,KAAMuO,IAC3CF,EAAc3I,KAAK8I,KAMnC,GAA6B,IAAzBH,EAAc1N,OACd,IAAK,GAAI8N,GAAI,EAAGA,EAAIJ,EAAc1N,OAAQ8N,IACtCN,EAAiBE,EAAcjM,SAASqM,EAAEpM,WAAY,MAIlE8L,GAAiBD,GACjB3K,EAAUC,SAASyF,KAAK,GAAG7I,OAAO2N,IAAIzK,WAAWoC,MAAOlC,SAAUyK,EAAUjO,KAAM+G,MAI9E/C,EAEZT,GAAUC,SAASyF,KAAK,GAAG7I,OAAO2N,IAAIhN,eAAewC,EAAUC,SAASwF,cAActD,KAAKlF,GAInGmN,EAAQpK,EAAUvD,MAAQuD,EAAUC,SAASyE,gBAC7CwF,EAAqBxM,cAAc0M,EAASpK,EAAUC,SAASmE,mBAE9D,CAED,GAAI+G,IAAgB,GACfjB,EAAqBlK,EAAUvD,MAAMW,SAAW4C,EAAUC,SAASyF,KAAKtI,QAAY,0BAA0BkB,KAAK4L,EAAqB1L,oBACzI0L,EAAqBlK,EAAUvD,MAAQuD,EAAUC,SAASyF,KAC1DyF,GAAgB,EAEpB,KAAK,GAAI1M,GAAK,EAAGW,EAAKY,EAAUC,SAASyF,KAAMjH,EAAKW,EAAGhC,OAAQqB,IAAM,CACjE,GAAIiH,GAAOtG,EAAGX,EACd,IAAIiH,EAAKpC,KACL,IAAK,GAAIjE,GAAK,EAAGQ,EAAK6F,EAAKpC,KAAMjE,EAAKQ,EAAGzC,OAAQiC,IAAM,CACnD,GAAImE,GAAM3D,EAAGR,GACT+L,EAAarJ,WAAS,QAAUyB,EAAIE,UAAU,EAAG,GAAGC,cAAgBH,EAAIE,UAAU,GAAIgC,EACtF0F,IACA1F,EAAK3F,WAAWoC,MAAOlC,SAAUmL,EAAY3O,KAAM+G,IAI/D,GAAI6H,GAAWrL,EAAUC,SAASyF,KAAK5B,QAAQ4B,GAC3C4F,EAAWvJ,WAAS/B,EAAUvD,KAAMyN,GAAsB,GAAGrN,OAAOwO,IACpE9C,EAAmBjM,OAAO2B,KAAKqN,EAInC,IAHA/C,EAAmBA,EAAiBnK,OAAO,SAAUC,GACjD,MAAO,QAAQC,KAAKD,KAEpBiN,EAASC,YAA0D,IAA5CjP,OAAO2B,KAAKqN,EAASC,YAAYnO,OACxD,IAAK,GAAI0C,GAAK,EAAG0L,EAAqBjD,EAAkBzI,EAAK0L,EAAmBpO,OAAQ0C,IAEpF2K,GADIA,EAAkBe,EAAmB1L,IACPQ,QAAQ,MAAO,IACjDgL,EAASC,WAAW,GAAG1O,OAAO4N,IAAqBa,EAASC,WAAW,GAAG1O,OAAO4N,IACvBa,EAASC,WAAW,GAAG1O,OAAO4N,IAApFa,EAAS9N,eAAe,GAAGX,OAAO4N,GAGzCN,eAAYmB,IAAcnB,cAAYmB,EAAS5N,iBAC5C,0BAA0BY,KAAK4L,EAAqB1L,iBACpD8M,EAAS5N,cAAcgI,EAAKhB,iBAAiB,GAG7C4G,EAAS5N,cAAcgI,EAAKhB,kBAGpCgB,EAAKjB,WAAY,GAEhB,OAAOnG,KAAK4L,EAAqB1L,kBAAoB2M,GAAkB,QAAQ7M,KAAK4L,EAAqB1L,oBAC1G4L,EAAQpK,EAAUvD,MAAQuD,EAAUC,SAASyE,gBAC7CwF,EAAqBxM,cAAc0M,EAASpK,EAAUC,SAASmE,oBAMnFkC,EAAc9J,UAAUO,eAAiB,SAAUC,GAC/CD,EAAeC,EAAW+F,OAE9BuD,EAAc9J,UAAUiP,aAAe,SAAUC,EAAQ7D,GACrD,GAAI8D,GAAS5J,WAAS8F,EAAM9E,KAAKwI,WAC7BI,KAAWD,IAGf3I,KAAKC,YAAY6E,EAAM6D,EAAQC,GAC/BxL,WAAS0H,EAAOlI,oBAAkB+L,GAAU,KAAOA,EAAS3I,KAAKwI,YACjExJ,WAAS8F,EAAO,SAAU9E,MAAM6I,KAAKF,KAEzCpF,EAAc9J,UAAUqP,UAAY,SAAU7H,GAa1C,IAAK,GAZDpG,GAAQmF,KAWR+I,EAAS/I,KACJ1F,EAAK,EAAG0O,EAAa/H,EAAU3G,EAAK0O,EAAW3O,OAAQC,KAXlD,SAAUwK,GACpB9F,WAAS8F,EAAMiE,GACfxP,OAAOwG,eAAegJ,EAAQjE,GAC1BnF,IAAK,WACD,MAAOX,YAAS8F,EAAMjK,EAAM2N,aAEhC/I,IAAK,SAAUkJ,GAAU,MAAO9N,GAAM6N,aAAaC,EAAQ7D,MAE/D1H,WAAS0H,EAAO,SAAU,GAAIpK,gBAAgBqO,IAInCC,EAAW1O,KAI9BiJ,EAAc9J,UAAUwP,iBAAmB,SAAUC,EAAWC,GAC5D,GAAIC,GAAWpK,WAASkK,EAAWlJ,KAC9BoH,eAAYgC,KACRpJ,KAAKsE,gBAAgB,GAAGxK,OAAOoP,MAChClJ,KAAKsE,gBAAgB,GAAGxK,OAAOoP,IAAc,GAAIG,MAErDrJ,KAAKsE,gBAAgB,GAAGxK,OAAOoP,IAAYzJ,IAAI0J,EAASC,EAASE,UAAUH,MAGnF5F,EAAc9J,UAAUmN,oBAAsB,SAAUsC,EAAWC,GAC/D,GAAIC,GAAWpK,WAASkK,EAAWlJ,KAC9BoH,eAAYgC,IACbpJ,KAAKsE,gBAAgB,GAAGxK,OAAOoP,IAAYvJ,IAAIwJ,GAASI,eAGhEhG,EAAc9J,UAAU+P,QAAU,SAAUN,EAAWO,EAAWC,GAC9D,GAAIN,GAAWpK,WAASkK,EAAWlJ,MAC/B2J,EAAgB3J,KAAKwD,mBACzBxD,MAAKwD,qBAAsB,EACvBiG,IACAA,EAAU/P,KAAOwP,GAEhB9B,cAAYgC,IACbA,EAASQ,KAAKH,EAElB,IAAII,GAAgB7K,WAAS,QAAUkK,EAAUY,OAAO,GAAGlJ,cAAgBsI,EAAUa,MAAM,GAAI/J,KAC1FoH,eAAYyC,IACbA,EAAcjQ,KAAKoG,KAAMyJ,GAE7BzJ,KAAKwD,oBAAsBmG,EAEvBD,IACA1J,KAAKgK,cAAgBhK,KAAKiK,gBAC1BP,EAAQ9P,KAAKoG,KAAMyJ,IAEvBzJ,KAAKiK,iBAAkB,GAEpB1G,KC9XP2G,EAA0B,WAC1B,QAASA,MAqIT,MAnIAA,GAASzQ,UAAU0Q,gBAAkB,SAAUC,KAC/CF,EAASzQ,UAAU4Q,eAAiB,aACpCH,EAASzQ,UAAU6Q,YAAc,SAAU3O,GACvC,GAAIE,OAAuB+B,KAAdjC,EAAE4O,QAAwB5O,EAAEE,MAAQF,EAAE4O,OAKnD,IAJAvK,KAAKwK,SAAWC,WAAS5O,IACF,IAAnBmE,KAAK0B,YACL1B,KAAK0K,aAAe1K,KAAK2D,WAEP,IAAlB3D,KAAKwK,SACLxK,KAAK2K,eAAiBvH,KAAKC,UAAUxH,GACrCmE,KAAK4K,sBAAwBxH,KAAKC,UAAUrD,KAAK0K,cAC7C1K,KAAK2K,iBAAmB3K,KAAK4K,2BAAkDhN,KAAzBoC,KAAKmK,qBAA2CvM,KAAV/B,IAE5FmE,KAAKmK,gBAAgBtO,GACrBmE,KAAK0K,aAAe7O,OAIxB,IAAIA,IAAUmE,KAAK0K,kBAAyC9M,KAAzBoC,KAAKmK,qBAA2CvM,KAAV/B,EAErE,GAAc,KAAVA,GAA0B,OAAVA,EAEhBmE,KAAKmK,gBAAgBtO,GACrBmE,KAAK0K,aAAe7O,MAEnB,CACD,GAAIgP,GAAgBhP,CACpBmE,MAAKmK,gBAAgBU,GACrB7K,KAAK0K,aAAe7O,EAIhCmE,KAAK8K,IAAI5L,gBAEbgL,EAASzQ,UAAUsR,iBAAmB,SAAUC,GAC5ChL,KAAKmK,gBAAkBa,GAE3Bd,EAASzQ,UAAUwR,kBAAoB,SAAUD,GAC7ChL,KAAKqK,eAAiBW,GAE1Bd,EAASzQ,UAAUiP,aAAe,SAAUC,EAAQ7D,GAChD,GAAI8D,GAAS5I,KAAK2D,UAAY3E,WAAS8F,EAAM9E,KAAKwI,YAC9CzD,EAAM/E,KAAK2G,cAAgB3G,KAAK2E,UAChCI,GAAO6D,IAAWD,GAAU3I,KAAKnE,QAAU8M,OAC5B/K,KAAdmH,EAAIlJ,OAAqC,KAAdkJ,EAAIlJ,SAGpCmE,KAAKC,YAAY6E,EAAM6D,EAAQC,GAC/BxL,WAAS0H,EAAOlI,oBAAkB+L,GAAU,KAAOA,EAAS3I,KAAKwI,YACjExJ,WAAS8F,EAAO,SAAU9E,MAAM6I,KAAKF,KAEzCuB,EAASzQ,UAAU8I,gBAAkB,SAAU6B,GAC3C,GAAI8G,GAAwB9G,GAAapE,IAOzC,IAFAkL,EAAsBpE,cAAgB9G,KAAK0G,SAASzC,KAAKjE,MACzDkL,EAAsBrE,eAAiB7G,KAAKyG,UAAUxC,KAAKjE,MACrC,mBAAXmG,QAAwB,CAC1B+E,EAAsBzP,gBAAiB4K,SAAS,gBACjDrC,WAAW,WACPkH,EAAsB9E,SAAS8E,EAAsBvG,WAIzDuG,EAAsB9E,SAAS8E,EAAsBvG,QAEzD,IAAII,GAAMmG,EAAsBvE,cAAgBuE,EAAsBvG,OACtEI,GAAIkE,iBAAiB,QAASiC,EAAsBrE,gBACpD9B,EAAIkE,iBAAiB,OAAQiC,EAAsBpE,eAEvD9G,KAAKyD,YAAa,GAEtByG,EAASzQ,UAAU0R,iBAAmB,SAAUC,GAC5CpL,KAAKqL,SAAWD,EAChBpL,KAAKoL,SAAWA,GAEpBlB,EAASzQ,UAAU6R,WAAa,SAAUzP,GACtC,GAAI0P,GAAS,uBAEQ3N,KAAjBoC,KAAKuK,QACLvK,KAAKnE,MAAQA,EAKTmE,KAAK6F,QACgB,iBAAVhK,GACH0P,EAAOhQ,KAAKyE,KAAK6F,MAAMzH,cAAc0H,WACrC9F,KAAKuK,QAAU1O,IAAUmE,KAAKnE,MAG9BmE,KAAKuK,QAAU1O,EAInBmE,KAAKuK,QAAU1O,IAAUmE,KAAKnE,MAI1C,IAAI2P,GAAmC,MAArBxL,KAAK0K,YAOvB,IANA1K,KAAK0K,aAAe7O,EACpBmE,KAAK0B,WAAY,EAGjB1B,KAAKgK,eAAgBhK,KAAKyD,WAC1BzD,KAAK8K,IAAI5L,eACK,OAAVrD,EAIA,YAHI2P,IACAxL,KAAKgK,eAAgB,KAKjCE,EAASzQ,UAAUgN,UAAY,SAAU9K,IAEV,IAAvBqE,KAAKyL,eACLzL,KAAK0L,MAAM7C,KAAKlN,GAEpBqE,KAAK8K,IAAI5L,gBAEbgL,EAASzQ,UAAUiN,SAAW,SAAU/K,GACpCqE,KAAKqK,kBAEsB,IAAvBrK,KAAKyL,eACLzL,KAAK2L,KAAK9C,KAAKlN,GAEnBqE,KAAK8K,IAAI5L,gBAEbgL,EAASrQ,YAAa,EACfqQ,KHxIPjM,EAAiB2N,kDA8FD/N,QAASA"}
|
|
1
|
+
{"version":3,"file":"ej2-angular-base.min.js","sources":["../../src/util.js","../../src/template.js","../../src/complex-array-base.js","../../src/component-base.js","../../src/form-base.js"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any, @typescript-eslint/explicit-module-boundary-types */\nimport { EventEmitter } from '@angular/core';\nimport { isNullOrUndefined } from '@syncfusion/ej2-base';\n/**\n * Angular Utility Module\n *\n * @param {Function} derivedClass The derived class to which mixins are applied.\n * @param {Function[]} baseClass An array of base classes whose methods are applied as mixins.\n * @returns {void}\n */\nexport function applyMixins(derivedClass, baseClass) {\n baseClass.forEach(function (baseClass) {\n Object.getOwnPropertyNames(baseClass.prototype).forEach(function (name) {\n if (!Object.prototype.hasOwnProperty.call(derivedClass.prototype, name) || (baseClass.isFormBase && name !== 'constructor')) {\n derivedClass.prototype[\"\".concat(name)] = baseClass.prototype[\"\".concat(name)];\n }\n });\n });\n}\n/**\n * Decorator function to apply mixins to a derived class.\n *\n * @param {Function[]} baseClass - An array of mixin classes to be applied to the derived class.\n * @returns {ClassDecorator} The decorator function.\n */\nexport function ComponentMixins(baseClass) {\n return function (derivedClass) {\n applyMixins(derivedClass, baseClass);\n };\n}\n/**\n * Registers events.\n *\n * @private\n * @param {string[]} eventList - The list of events to register.\n * @param {any} obj - The object on which to register the events.\n * @param {boolean} [direct] - Whether to register events directly on the object or not.\n * @returns {void}\n */\nexport function registerEvents(eventList, obj, direct) {\n var ngEventsEmitter = {};\n if (eventList && eventList.length) {\n for (var _i = 0, eventList_1 = eventList; _i < eventList_1.length; _i++) {\n var event_1 = eventList_1[_i];\n if (direct === true) {\n obj.propCollection[\"\".concat(event_1)] = new EventEmitter(false);\n obj[\"\".concat(event_1)] = obj.propCollection[\"\".concat(event_1)];\n }\n else {\n ngEventsEmitter[\"\".concat(event_1)] = new EventEmitter(false);\n }\n }\n if (direct !== true) {\n obj.setProperties(ngEventsEmitter, true);\n }\n }\n}\n/**\n * Clears registered templates.\n *\n * @private\n * @param {any} _this - The context object.\n * @param {string[]} [templateNames] - Optional. An array of template names to clear.\n * @param {any[]} [index] - Optional. An array of indices specifying templates to clear.\n * @returns {void}\n */\nexport function clearTemplate(_this, templateNames, index) {\n var _a;\n var regTemplates = Object.keys(_this.registeredTemplate);\n if (regTemplates.length) {\n /* istanbul ignore next */\n var regProperties = templateNames && templateNames.filter(function (val) {\n return (/\\./g.test(val) ? false : true);\n });\n var tabaccordionTemp = /tab|accordion|toolbar/.test((_a = _this.getModuleName) === null || _a === void 0 ? void 0 : _a.call(_this));\n for (var _i = 0, _b = (regProperties && regProperties || regTemplates); _i < _b.length; _i++) {\n var registeredTemplate = _b[_i];\n /* istanbul ignore next */\n if (index && index.length) {\n for (var e = 0; e < index.length; e++) {\n if (tabaccordionTemp) {\n for (var m = 0; m < _this.registeredTemplate[\"\".concat(registeredTemplate)].length; m++) {\n var value = _this.registeredTemplate[\"\".concat(registeredTemplate)][parseInt(m.toString(), 10)];\n if (value && value === index[\"\".concat(e)]) {\n value.destroy();\n _this.registeredTemplate[\"\".concat(registeredTemplate)].splice(m, 1);\n }\n }\n }\n else {\n for (var m = 0; m < _this.registeredTemplate.template.length; m++) {\n var value = _this.registeredTemplate.template[parseInt(m.toString(), 10)].rootNodes[0];\n if (value === index[\"\".concat(e)]) {\n var rt = _this.registeredTemplate[\"\".concat(registeredTemplate)];\n rt[parseInt(m.toString(), 10)].destroy();\n }\n }\n }\n }\n }\n else {\n if (_this.registeredTemplate[\"\".concat(registeredTemplate)]) {\n for (var _c = 0, _d = _this.registeredTemplate[\"\".concat(registeredTemplate)]; _c < _d.length; _c++) {\n var rt = _d[_c];\n if (!rt.destroyed) {\n if (rt._view) {\n var pNode = rt._view.renderer.parentNode(rt.rootNodes[0]);\n if (!isNullOrUndefined(pNode)) {\n for (var m = 0; m < rt.rootNodes.length; m++) {\n pNode.appendChild(rt.rootNodes[parseInt(m.toString(), 10)]);\n }\n }\n }\n rt.destroy();\n }\n }\n }\n }\n if (!tabaccordionTemp || !index) {\n delete _this.registeredTemplate[\"\".concat(registeredTemplate)];\n }\n }\n }\n var _loop_1 = function (tagObject) {\n if (tagObject.instance) {\n /* istanbul ignore next */\n tagObject.instance.clearTemplate((templateNames && templateNames.filter(function (val) {\n var regExp = RegExp;\n return (new regExp(tagObject.name).test(val) ? true : false);\n })));\n }\n };\n for (var _e = 0, _f = _this.tagObjects; _e < _f.length; _e++) {\n var tagObject = _f[_e];\n _loop_1(tagObject);\n }\n}\n/**\n * To set value for the nameSpace in desired object.\n *\n * @param {string} nameSpace - String value to get the inner object.\n * @param {any} value - Value that you need to set.\n * @param {any} object - Object to get the inner object value.\n * @returns {void}\n * @private\n */\nexport function setValue(nameSpace, value, object) {\n var keys = nameSpace.replace(/\\[/g, '.').replace(/\\]/g, '').split('.');\n /* istanbul ignore next */\n var fromObj = object || {};\n for (var i = 0; i < keys.length; i++) {\n var key = keys[parseInt(i.toString(), 10)];\n if (i + 1 === keys.length) {\n fromObj[\"\".concat(key)] = value === undefined ? {} : value;\n }\n else if (fromObj[\"\".concat(key)] === undefined) {\n fromObj[\"\".concat(key)] = {};\n }\n fromObj = fromObj[\"\".concat(key)];\n }\n return fromObj;\n}\n","import { setTemplateEngine, getTemplateEngine } from '@syncfusion/ej2-base';\nimport { setValue, getValue } from '@syncfusion/ej2-base';\nvar stringCompiler = getTemplateEngine();\n/**\n * Angular Template Compiler\n *\n * @param {AngularElementType} templateEle - The element representing the template.\n * @param {Object} [helper] - Optional helper object.\n * @returns {Function} A function that compiles the template.\n */\nexport function compile(templateEle, helper) {\n if (typeof templateEle === 'string' || (typeof templateEle === 'function' && templateEle.prototype && templateEle.prototype.CSPTemplate)) {\n return stringCompiler(templateEle, helper);\n }\n else {\n var contRef_1 = templateEle.elementRef.nativeElement._viewContainerRef;\n var pName_1 = templateEle.elementRef.nativeElement.propName;\n return function (data, component, propName) {\n var context = { $implicit: data };\n /* istanbul ignore next */\n var conRef = contRef_1 ? contRef_1 : component.viewContainerRef;\n var viewRef = conRef.createEmbeddedView(templateEle, context);\n if (/EJS-MENTION|EJS-DROPDOWNLIST/.test(getValue('currentInstance.element.nodeName', conRef)) ||\n (/E-TABITEM/.test(getValue('element.nativeElement.nodeName', conRef)) &&\n getValue('currentInstance.headerTemplateRef', conRef))) {\n viewRef.detectChanges();\n }\n else {\n viewRef.markForCheck();\n }\n /* istanbul ignore next */\n var viewCollection = (component && component.registeredTemplate) ?\n component.registeredTemplate : getValue('currentInstance.registeredTemplate', conRef);\n propName = (propName && component.registeredTemplate) ? propName : pName_1;\n if (typeof viewCollection[\"\".concat(propName)] === 'undefined') {\n viewCollection[\"\".concat(propName)] = [];\n }\n viewCollection[\"\".concat(propName)].push(viewRef);\n return viewRef.rootNodes;\n };\n }\n}\n/**\n * Property decorator for angular.\n *\n * @param {Object} [defaultValue] - Default value for the property.\n * @returns {PropertyDecorator} The decorator function.\n */\nexport function Template(defaultValue) {\n return function (target, key) {\n var propertyDescriptor = {\n set: setter(key),\n get: getter(key, defaultValue),\n enumerable: true,\n configurable: true\n };\n Object.defineProperty(target, key, propertyDescriptor);\n };\n}\n/**\n * Creates a setter function for a given property key.\n *\n * @param {string} key - The property key.\n * @returns {Function} The setter function.\n */\nfunction setter(key) {\n return function (val) {\n if (val === undefined) {\n return;\n }\n setValue(key + 'Ref', val, this);\n if (typeof val !== 'string' && !(typeof val === 'function' && val.prototype && val.prototype.CSPTemplate)) {\n val.elementRef.nativeElement._viewContainerRef = this.viewContainerRef;\n val.elementRef.nativeElement.propName = key;\n }\n else {\n if (this.saveChanges) {\n this.saveChanges(key, val, undefined);\n this.dataBind();\n }\n }\n };\n}\n/**\n * Returns a getter function for the specified key and default value.\n *\n * @param {string} key - The key for the property.\n * @param {Object} defaultValue - The default value for the property.\n * @returns {Function} The getter function.\n */\nfunction getter(key, defaultValue) {\n return function () {\n /* istanbul ignore next */\n return getValue(key + 'Ref', this) || defaultValue;\n };\n}\nsetTemplateEngine({ compile: compile });\n","import { getValue, setValue, isNullOrUndefined } from '@syncfusion/ej2-base';\nimport { clearTemplate, registerEvents } from './util';\nvar refRegex = /Ref$/;\nvar ComplexBase = /** @class */ (function () {\n function ComplexBase() {\n this.hasChanges = false;\n this.propCollection = {};\n this.dataSource = {};\n this.tags = [];\n this.tagObjects = [];\n }\n ComplexBase.prototype.ngOnInit = function () {\n this.registeredTemplate = {};\n for (var _i = 0, _a = this.tags; _i < _a.length; _i++) {\n var tag = _a[_i];\n var objInstance = getValue('child' + tag.substring(0, 1).toUpperCase() + tag.substring(1), this);\n if (objInstance) {\n this.tagObjects.push({ instance: objInstance, name: tag });\n }\n }\n var templateProperties = Object.keys(this);\n for (var i = 0; i < templateProperties.length; i++) {\n var tempProp = getValue(templateProperties[parseInt(i.toString(), 10)], this);\n if (typeof tempProp === 'object' && tempProp && tempProp.elementRef) {\n if (!getValue(templateProperties[parseInt(i.toString(), 10)].indexOf('Ref') !== -1 ? templateProperties[parseInt(i.toString(), 10)] : templateProperties[parseInt(i.toString(), 10)] + 'Ref', this)) {\n setValue(templateProperties[parseInt(i.toString(), 10)].indexOf('Ref') !== -1 ? templateProperties[parseInt(i.toString(), 10)] : templateProperties[parseInt(i.toString(), 10)] + 'Ref', tempProp, this);\n }\n if (getValue('viewContainerRef', this) && !getValue('_viewContainerRef', tempProp.elementRef.nativeElement) && !getValue('propName', tempProp.elementRef.nativeElement)) {\n setValue('_viewContainerRef', getValue('viewContainerRef', this), tempProp.elementRef.nativeElement);\n setValue('propName', templateProperties[parseInt(i.toString(), 10)].replace('Ref', ''), tempProp.elementRef.nativeElement);\n }\n }\n }\n templateProperties = Object.keys(this);\n templateProperties = templateProperties.filter(function (val) {\n return /Ref$/i.test(val);\n });\n for (var _b = 0, templateProperties_1 = templateProperties; _b < templateProperties_1.length; _b++) {\n var tempName = templateProperties_1[_b];\n var propName = tempName.replace('Ref', '');\n setValue(propName.replace('_', '.'), getValue(propName, this), this.propCollection);\n }\n // Angular 9 compatibility to overcome ngOnchange not get triggered issue\n // To Update properties to \"this.propCollection\"\n var propList = Object.keys(this);\n /* istanbul ignore next */\n if (this.directivePropList) {\n for (var k = 0; k < this.directivePropList.length; k++) {\n var dirPropName = this.directivePropList[parseInt(k.toString(), 10)];\n if (propList.indexOf(dirPropName) !== -1 && (getValue(dirPropName, this) === false || getValue(dirPropName, this))) {\n setValue(dirPropName, getValue(dirPropName, this), this.propCollection);\n }\n }\n this.hasChanges = true;\n }\n this.isInitChanges = true;\n };\n ComplexBase.prototype.registerEvents = function (eventList) {\n registerEvents(eventList, this, true);\n };\n ComplexBase.prototype.ngOnChanges = function (changes) {\n for (var _i = 0, _a = Object.keys(changes); _i < _a.length; _i++) {\n var propName = _a[_i];\n var changedVal = changes[\"\".concat(propName)];\n this.propCollection[\"\".concat(propName)] = changedVal.currentValue;\n }\n this.isUpdated = false;\n this.hasChanges = true;\n };\n /* istanbul ignore next */\n ComplexBase.prototype.clearTemplate = function (templateNames) {\n clearTemplate(this, templateNames);\n };\n ComplexBase.prototype.getProperties = function () {\n /* istanbul ignore next */\n for (var _i = 0, _a = this.tagObjects; _i < _a.length; _i++) {\n var tagObject = _a[_i];\n this.propCollection[tagObject.name] = tagObject.instance.getProperties();\n }\n return this.propCollection;\n };\n ComplexBase.prototype.isChanged = function () {\n var result = this.hasChanges;\n if (!isNullOrUndefined(this.propCollection[this.property])) {\n var tempProps = this.propCollection[this.property];\n var props = Object.keys(tempProps[0]);\n for (var d = 0; d < props.length; d++) {\n if (!isNullOrUndefined(this.propCollection[props[parseInt(d.toString(), 10)]])) {\n var val = getValue(props[parseInt(d.toString(), 10)], this);\n var propVal = this.propCollection[this.property][0][props[parseInt(d.toString(), 10)]];\n if (!isNullOrUndefined(val) && this.propCollection[props[parseInt(d.toString(), 10)]] !== val\n && propVal !== val) {\n setValue(props[parseInt(d.toString(), 10)], val, this.propCollection[this.property][0]);\n setValue(props[parseInt(d.toString(), 10)], val, this.propCollection);\n this.hasChanges = true;\n this.isUpdated = false;\n }\n }\n }\n }\n /* istanbul ignore next */\n for (var _i = 0, _a = this.tagObjects; _i < _a.length; _i++) {\n var item = _a[_i];\n result = result || item.instance.hasChanges;\n }\n return result || this.hasChanges;\n };\n ComplexBase.prototype.ngAfterContentChecked = function () {\n this.hasChanges = this.isChanged();\n if (this.isInitChanges || this.hasChanges) {\n var templateProperties = Object.keys(this);\n templateProperties = templateProperties.filter(function (val) {\n return refRegex.test(val);\n });\n for (var _i = 0, templateProperties_2 = templateProperties; _i < templateProperties_2.length; _i++) {\n var tempName = templateProperties_2[_i];\n var propName = tempName.replace('Ref', '');\n setValue(propName.replace('_', '.'), getValue(propName, this), this.propCollection);\n }\n }\n };\n ComplexBase.prototype.ngAfterViewChecked = function () {\n /* istanbul ignore next */\n if (this.isUpdated) {\n this.hasChanges = false;\n }\n };\n ComplexBase.prototype.ngAfterViewInit = function () {\n /* istanbul ignore next */\n this.isInitChanges = false;\n };\n ComplexBase.prototype.ngOnDestroy = function () {\n /* istanbul ignore next */\n this.directivePropList = [];\n };\n return ComplexBase;\n}());\nexport { ComplexBase };\nvar ArrayBase = /** @class */ (function () {\n function ArrayBase(propertyName) {\n this.list = [];\n this.hasChanges = false;\n this.propertyName = propertyName;\n }\n ArrayBase.prototype.ngOnInit = function () {\n this.isInitChanges = true;\n };\n ArrayBase.prototype.ngAfterContentInit = function () {\n var _this = this;\n var index = 0;\n /* istanbul ignore next */\n this.list = this.children.map(function (child) {\n child.dirIndex = index++;\n child.property = _this.propertyName;\n return child;\n });\n this.hasChanges = true;\n };\n ArrayBase.prototype.getProperties = function () {\n var onlyProp = [];\n for (var _i = 0, _a = this.list; _i < _a.length; _i++) {\n var item = _a[_i];\n onlyProp.push(item.getProperties());\n }\n return onlyProp;\n };\n ArrayBase.prototype.isChanged = function () {\n var _this = this;\n var result = false;\n var index = 0;\n var isSourceChanged = false;\n var childrenDataSource = this.children.map(function (child) {\n return child;\n });\n /* istanbul ignore next */\n if (this.list.length === this.children.length) {\n for (var i = 0; i < this.list.length; i++) {\n if (this.list[parseInt(i.toString(), 10)].propCollection.dataSource) {\n if (this.list[parseInt(i.toString(), 10)].dataSource &&\n this.list[parseInt(i.toString(), 10)].propCollection.dataSource\n !== this.list[parseInt(i.toString(), 10)].dataSource) {\n this.list[parseInt(i.toString(), 10)].propCollection.dataSource = this.list[parseInt(i.toString(), 10)].dataSource;\n this.list[parseInt(i.toString(), 10)].hasChanges = true;\n }\n if (this.list[parseInt(i.toString(), 10)].property !== 'series') {\n isSourceChanged = (JSON.stringify(this.list[parseInt(i.toString(), 10)].propCollection.dataSource) !==\n JSON.stringify(childrenDataSource[parseInt(i.toString(), 10)].propCollection.dataSource));\n }\n }\n isSourceChanged = this.list[parseInt(i.toString(), 10)].hasChanges\n !== childrenDataSource[parseInt(i.toString(), 10)].hasChanges;\n }\n }\n this.hasNewChildren = (this.list.length !== this.children.length || isSourceChanged) ? true : null;\n if (this.hasNewChildren) {\n this.list = this.children.map(function (child) {\n child.dirIndex = index++;\n child.property = _this.propertyName;\n return child;\n });\n }\n /* istanbul ignore end */\n for (var _i = 0, _a = this.list; _i < _a.length; _i++) {\n var item = _a[_i];\n result = result || item.hasChanges;\n }\n return !!this.list.length && result;\n };\n ArrayBase.prototype.clearTemplate = function (templateNames) {\n var _this = this;\n /* istanbul ignore next */\n for (var _i = 0, _a = this.list; _i < _a.length; _i++) {\n var item = _a[_i];\n item.clearTemplate(templateNames && templateNames.map(function (val) {\n var regExp = RegExp;\n return new regExp(_this.propertyName).test(val) ? val.replace(_this.propertyName + '.', '') : val;\n }));\n }\n };\n ArrayBase.prototype.ngAfterContentChecked = function () {\n this.hasChanges = this.isChanged();\n for (var i = 0; i < this.list.length; i++) {\n if (getValue('childColumns', this.list[parseInt(i.toString(), 10)]) && getValue('property', this.list[parseInt(i.toString(), 10)]) === 'columns') {\n setValue('columns', getValue('childColumns', this.list[parseInt(i.toString(), 10)]).getProperties(), this.list[parseInt(i.toString(), 10)].propCollection);\n }\n this.list[parseInt(i.toString(), 10)].isUpdated = true;\n }\n };\n ArrayBase.prototype.ngAfterViewInit = function () {\n this.isInitChanges = false;\n };\n ArrayBase.prototype.ngOnDestroy = function () {\n this.list = [];\n };\n return ArrayBase;\n}());\nexport { ArrayBase };\n","/* eslint-disable @typescript-eslint/no-explicit-any, @typescript-eslint/explicit-module-boundary-types */\n/**\n * Angular Component Base Module\n */\nimport { getValue, isUndefined, setValue, isNullOrUndefined, attributes, createElement } from '@syncfusion/ej2-base';\nimport { EventEmitter } from '@angular/core';\nimport { clearTemplate, registerEvents } from './util';\nvar ComponentBase = /** @class */ (function () {\n function ComponentBase() {\n this.isProtectedOnChange = true;\n this.isFormInit = true;\n }\n ComponentBase.prototype.saveChanges = function (key, newValue, oldValue) {\n if (this.isProtectedOnChange) {\n return;\n }\n this.oldProperties[\"\".concat(key)] = oldValue;\n this.changedProperties[\"\".concat(key)] = newValue;\n this.finalUpdate();\n var changeTime = setTimeout(this.dataBind.bind(this));\n var clearUpdate = function () {\n clearTimeout(changeTime);\n };\n this.finalUpdate = clearUpdate;\n };\n ComponentBase.prototype.ngOnInit = function (isTempRef) {\n var tempOnThis = isTempRef || this;\n tempOnThis.registeredTemplate = {};\n tempOnThis.ngBoundedEvents = {};\n tempOnThis.isAngular = true;\n tempOnThis.isFormInit = true;\n /* istanbul ignore next */\n if (isTempRef) {\n this.tags = isTempRef.tags;\n }\n tempOnThis.tags = this.tags || [];\n tempOnThis.complexTemplate = this.complexTemplate || [];\n tempOnThis.tagObjects = [];\n tempOnThis.ngAttr = this.getAngularAttr(tempOnThis.element);\n /* istanbul ignore next */\n tempOnThis.createElement = function (tagName, prop) {\n var ele = tempOnThis.srenderer ? tempOnThis.srenderer.createElement(tagName) : createElement(tagName);\n if (typeof (prop) === 'undefined') {\n return ele;\n }\n ele.innerHTML = (prop.innerHTML ? prop.innerHTML : '');\n if (prop.className !== undefined) {\n ele.className = prop.className;\n }\n if (prop.id !== undefined) {\n ele.id = prop.id;\n }\n if (prop.styles !== undefined) {\n ele.setAttribute('style', prop.styles);\n }\n if (tempOnThis.ngAttr !== undefined) {\n ele.setAttribute(tempOnThis.ngAttr, '');\n }\n if (prop.attrs !== undefined) {\n attributes(ele, prop.attrs);\n }\n return ele;\n };\n for (var _i = 0, _a = tempOnThis.tags; _i < _a.length; _i++) {\n var tag = _a[_i];\n var tagObject = {\n instance: getValue('child' + tag.substring(0, 1).toUpperCase() + tag.substring(1), tempOnThis),\n name: tag\n };\n tempOnThis.tagObjects.push(tagObject);\n }\n var complexTemplates = Object.keys(tempOnThis);\n for (var i = 0; i < complexTemplates.length; i++) {\n var compProp = getValue(complexTemplates[parseInt(i.toString(), 10)], tempOnThis);\n if (typeof compProp === 'object' && compProp && compProp.elementRef) {\n if (typeof compProp === 'object' && compProp && compProp.elementRef && complexTemplates[parseInt(i.toString(), 10)].indexOf('_') !== -1 && complexTemplates[parseInt(i.toString(), 10)].indexOf('Ref') === -1) {\n setValue(complexTemplates[parseInt(i.toString(), 10)] + 'Ref', compProp, tempOnThis);\n }\n if (tempOnThis.viewContainerRef && !getValue('_viewContainerRef', compProp.elementRef.nativeElement) && !getValue('propName', compProp.elementRef.nativeElement)) {\n setValue('_viewContainerRef', tempOnThis.viewContainerRef, compProp.elementRef.nativeElement);\n setValue('propName', complexTemplates[parseInt(i.toString(), 10)].replace('Ref', ''), compProp.elementRef.nativeElement);\n }\n }\n }\n complexTemplates = Object.keys(tempOnThis);\n complexTemplates = complexTemplates.filter(function (val) {\n return /Ref$/i.test(val) && /_/i.test(val);\n });\n for (var _b = 0, complexTemplates_1 = complexTemplates; _b < complexTemplates_1.length; _b++) {\n var tempName = complexTemplates_1[_b];\n var propName = tempName.replace('Ref', '');\n var val = {};\n setValue(propName.replace('_', '.'), getValue(propName, tempOnThis), val);\n tempOnThis.setProperties(val, true);\n }\n };\n ComponentBase.prototype.getAngularAttr = function (ele) {\n var attributes = ele.attributes;\n var length = attributes.length;\n var ngAr;\n for (var i = 0; i < length; i++) {\n /* istanbul ignore next */\n if (/_ngcontent/g.test(attributes[parseInt(i.toString(), 10)].name)) {\n ngAr = attributes[parseInt(i.toString(), 10)].name;\n }\n }\n return ngAr;\n };\n ComponentBase.prototype.ngAfterViewInit = function (isTempRef) {\n var tempAfterViewThis = isTempRef || this;\n var regExp = /ejs-tab|ejs-accordion/g;\n /* istanbul ignore next */\n if (regExp.test(tempAfterViewThis.ngEle.nativeElement.outerHTML)) {\n tempAfterViewThis.ngEle.nativeElement.style.visibility = 'hidden';\n }\n /**\n * Root level template properties are not getting rendered,\n * Due to ngonchanges not get triggered.\n * so that we have set template value for root level template properties,\n * for example: refer below syntax\n * ```html\n * <ejs-grid>\n * <e-column></e-column>\n * <ng-template #editSettingsTemplate></ng-template>\n * </ejs-grid>\n * ```\n */\n var templateProperties = Object.keys(tempAfterViewThis);\n templateProperties = templateProperties.filter(function (val) {\n return /Ref$/i.test(val);\n });\n var ngtempRef = tempAfterViewThis.getModuleName() === 'DocumentEditor';\n for (var _i = 0, templateProperties_1 = templateProperties; _i < templateProperties_1.length; _i++) {\n var tempName = templateProperties_1[_i];\n var propName = tempName.replace('Ref', '');\n setValue(propName.replace('_', '.'), getValue(propName + 'Ref', tempAfterViewThis), tempAfterViewThis);\n }\n // Used setTimeout for template binding\n // Refer Link: https://github.com/angular/angular/issues/6005\n var appendToComponent = function (tempAfterViewThis) {\n /* istanbul ignore else */\n if (typeof window !== 'undefined' && tempAfterViewThis.element) {\n tempAfterViewThis.appendTo(tempAfterViewThis.element);\n tempAfterViewThis.ngEle.nativeElement.style.visibility = '';\n }\n };\n if (!ngtempRef && !tempAfterViewThis.getModuleName().includes('btn')) {\n setTimeout(function () {\n appendToComponent(tempAfterViewThis);\n });\n }\n else {\n appendToComponent(tempAfterViewThis);\n }\n };\n ComponentBase.prototype.ngOnDestroy = function (isTempRef) {\n var tempOnDestroyThis = isTempRef || this;\n /* istanbul ignore else */\n setTimeout(function () {\n if (typeof window !== 'undefined' && (tempOnDestroyThis.element.classList.contains('e-control'))) {\n if (tempOnDestroyThis.ngOnFocus !== undefined && tempOnDestroyThis.ngOnBlur !== undefined) {\n var ele = tempOnDestroyThis.inputElement || tempOnDestroyThis.element;\n ele.removeEventListener('focus', tempOnDestroyThis.ngOnFocusBound);\n ele.removeEventListener('blur', tempOnDestroyThis.ngOnBlurBound);\n tempOnDestroyThis.ngOnFocusBound = null;\n tempOnDestroyThis.ngOnBlurBound = null;\n }\n tempOnDestroyThis.destroy();\n tempOnDestroyThis.clearTemplate(null);\n // removing bounded events and tagobjects from component after destroy\n setTimeout(function () {\n for (var _i = 0, _a = Object.keys(tempOnDestroyThis); _i < _a.length; _i++) {\n var key = _a[_i];\n var value = tempOnDestroyThis[\"\".concat(key)];\n if (value && /object/.test(typeof value) && Object.keys(value).length !== 0) {\n if (/properties|changedProperties|childChangedProperties|oldProperties|moduleLoader/.test(key)) {\n for (var _b = 0, _c = Object.keys(tempOnDestroyThis[\"\".concat(key)]); _b < _c.length; _b++) {\n var propKey = _c[_b];\n var propValue = value[\"\".concat(propKey)];\n if (propValue && /object/.test(typeof propValue) && Object.keys(propValue).length !== 0 && (propValue.parent || propValue.parentObj)) {\n tempOnDestroyThis[\"\".concat(key)][\"\".concat(propKey)] = null;\n }\n }\n }\n else {\n if (value.parent || value.parentObj) {\n tempOnDestroyThis[\"\".concat(key)] = null;\n }\n }\n }\n }\n });\n }\n });\n };\n ComponentBase.prototype.clearTemplate = function (templateNames, index) {\n clearTemplate(this, templateNames, index);\n };\n ComponentBase.prototype.ngAfterContentChecked = function (isTempRef) {\n var tempAfterContentThis = isTempRef || this;\n for (var _i = 0, _a = tempAfterContentThis.tagObjects; _i < _a.length; _i++) {\n var tagObject = _a[_i];\n if (!isUndefined(tagObject.instance) &&\n (tagObject.instance.isInitChanges || tagObject.instance.hasChanges || tagObject.instance.hasNewChildren)) {\n var propObj = {};\n if (tagObject.instance.isInitChanges) {\n // For angular 9 compatibility\n // Not able to get complex directive properties reference ni Onint hook\n // So we have constructed property here and used\n var complexDirProps = void 0;\n var list = getValue('instance.list', tagObject);\n if (list && list.length) {\n complexDirProps = list[0].directivePropList;\n }\n var skip = true;\n if (tempAfterContentThis.getModuleName && tempAfterContentThis.getModuleName() === 'gantt') {\n skip = false;\n }\n if (complexDirProps && skip && complexDirProps.indexOf(tagObject.instance.propertyName) === -1) {\n var compDirPropList = Object.keys(tagObject.instance.list[0].propCollection);\n for (var h = 0; h < tagObject.instance.list.length; h++) {\n tagObject.instance.list[\"\".concat(h)].propCollection[tagObject.instance.propertyName] = [];\n var obj = {};\n for (var k = 0; k < compDirPropList.length; k++) {\n var complexPropName = compDirPropList[parseInt(k.toString(), 10)];\n obj[\"\".concat(complexPropName)] = tagObject.instance.list[\"\".concat(h)].propCollection[\"\".concat(complexPropName)];\n }\n var _loop_1 = function (i) {\n var tag = tagObject.instance.list[\"\".concat(h)].tags[parseInt(i.toString(), 10)];\n var childObj = getValue('child' + tag.substring(0, 1).toUpperCase() + tag.substring(1), tagObject.instance.list[\"\".concat(h)]);\n if (childObj) {\n var innerchildObj = tagObject.instance.list[\"\".concat(h)]['child' + tag.substring(0, 1).toUpperCase() + tag.substring(1)];\n // Update the inner child tag objects\n var updateChildTag_1 = function (innerchild) {\n var innerLevelTag = [];\n if (innerchild) {\n for (var j = 0; j < innerchild.list.length; j++) {\n var innerTag = innerchild.list[0].tags[0];\n if (innerTag) {\n var innerchildTag = getValue('child' + innerTag.substring(0, 1).toUpperCase() + innerTag.substring(1), innerchild.list[parseInt(j.toString(), 10)]);\n if (innerchildTag) {\n innerchild.list[parseInt(j.toString(), 10)].tagObjects\n .push({ instance: innerchildTag, name: innerTag });\n innerLevelTag.push(innerchildTag);\n }\n }\n }\n }\n // check for inner level tag\n if (innerLevelTag.length !== 0) {\n for (var l = 0; l < innerLevelTag.length; l++) {\n updateChildTag_1(innerLevelTag[parseInt(l.toString(), 10)]);\n }\n }\n };\n updateChildTag_1(innerchildObj);\n tagObject.instance.list[\"\".concat(h)].tagObjects.push({ instance: childObj, name: tag });\n }\n };\n for (var i = 0; i < tagObject.instance.list[\"\".concat(h)].tags.length; i++) {\n _loop_1(i);\n }\n tagObject.instance.list[\"\".concat(h)].propCollection[tagObject.instance.propertyName].push(obj);\n }\n }\n // End angular 9 compatibility\n propObj[tagObject.name] = tagObject.instance.getProperties();\n tempAfterContentThis.setProperties(propObj, tagObject.instance.isInitChanges);\n }\n else {\n /* istanbul ignore next */\n var hasDiffLength = false;\n if ((tempAfterContentThis[tagObject.name].length !== tagObject.instance.list.length) || (/diagram|DashboardLayout/.test(tempAfterContentThis.getModuleName()))) {\n tempAfterContentThis[tagObject.name] = tagObject.instance.list;\n hasDiffLength = true;\n }\n for (var _b = 0, _c = tagObject.instance.list; _b < _c.length; _b++) {\n var list = _c[_b];\n if (list.tags) {\n for (var _d = 0, _e = list.tags; _d < _e.length; _d++) {\n var tag = _e[_d];\n var innerChild = getValue('child' + tag.substring(0, 1).toUpperCase() + tag.substring(1), list);\n if (innerChild) {\n list.tagObjects.push({ instance: innerChild, name: tag });\n }\n }\n }\n var curIndex = tagObject.instance.list.indexOf(list);\n var curChild = getValue(tagObject.name, tempAfterContentThis)[\"\".concat(curIndex)];\n var complexTemplates = Object.keys(curChild);\n complexTemplates = complexTemplates.filter(function (val) {\n return /Ref$/i.test(val);\n });\n if (curChild.properties && Object.keys(curChild.properties).length !== 0) {\n for (var _f = 0, complexTemplates_2 = complexTemplates; _f < complexTemplates_2.length; _f++) {\n var complexPropName = complexTemplates_2[_f];\n complexPropName = complexPropName.replace(/Ref/, '');\n curChild.properties[\"\".concat(complexPropName)] = !curChild.properties[\"\".concat(complexPropName)] ?\n curChild.propCollection[\"\".concat(complexPropName)] : curChild.properties[\"\".concat(complexPropName)];\n }\n }\n if (!isUndefined(curChild) && !isUndefined(curChild.setProperties)) {\n if (/diagram|DashboardLayout/.test(tempAfterContentThis.getModuleName())) {\n curChild.setProperties(list.getProperties(), true);\n }\n else {\n curChild.setProperties(list.getProperties());\n }\n }\n list.isUpdated = true;\n }\n if ((/grid/.test(tempAfterContentThis.getModuleName()) && hasDiffLength) || /chart/.test(tempAfterContentThis.getModuleName())) {\n propObj[tagObject.name] = tagObject.instance.getProperties();\n tempAfterContentThis.setProperties(propObj, tagObject.instance.isInitChanges);\n }\n }\n }\n }\n };\n ComponentBase.prototype.registerEvents = function (eventList) {\n registerEvents(eventList, this);\n };\n ComponentBase.prototype.twoWaySetter = function (newVal, prop) {\n var oldVal = getValue(prop, this.properties);\n if (oldVal === newVal) {\n return;\n }\n this.saveChanges(prop, newVal, oldVal);\n setValue(prop, (isNullOrUndefined(newVal) ? null : newVal), this.properties);\n getValue(prop + 'Change', this).emit(newVal);\n };\n ComponentBase.prototype.addTwoWay = function (propList) {\n var _this = this;\n var _loop_2 = function (prop) {\n getValue(prop, this_1);\n Object.defineProperty(this_1, prop, {\n get: function () {\n return getValue(prop, _this.properties);\n },\n set: function (newVal) { return _this.twoWaySetter(newVal, prop); }\n });\n setValue(prop + 'Change', new EventEmitter(), this_1);\n };\n var this_1 = this;\n for (var _i = 0, propList_1 = propList; _i < propList_1.length; _i++) {\n var prop = propList_1[_i];\n _loop_2(prop);\n }\n };\n ComponentBase.prototype.addEventListener = function (eventName, handler) {\n var eventObj = getValue(eventName, this);\n if (!isUndefined(eventObj)) {\n if (!this.ngBoundedEvents[\"\".concat(eventName)]) {\n this.ngBoundedEvents[\"\".concat(eventName)] = new Map();\n }\n this.ngBoundedEvents[\"\".concat(eventName)].set(handler, eventObj.subscribe(handler));\n }\n };\n ComponentBase.prototype.removeEventListener = function (eventName, handler) {\n var eventObj = getValue(eventName, this);\n if (!isUndefined(eventObj)) {\n this.ngBoundedEvents[\"\".concat(eventName)].get(handler).unsubscribe();\n }\n };\n ComponentBase.prototype.trigger = function (eventName, eventArgs, success) {\n var eventObj = getValue(eventName, this);\n var prevDetection = this.isProtectedOnChange;\n this.isProtectedOnChange = false;\n if (eventArgs) {\n eventArgs.name = eventName;\n }\n if (!isUndefined(eventObj)) {\n eventObj.next(eventArgs);\n }\n var localEventObj = getValue('local' + eventName.charAt(0).toUpperCase() + eventName.slice(1), this);\n if (!isUndefined(localEventObj)) {\n localEventObj.call(this, eventArgs);\n }\n this.isProtectedOnChange = prevDetection;\n /* istanbul ignore else */\n if (success) {\n this.preventChange = this.isPreventChange;\n success.call(this, eventArgs);\n }\n this.isPreventChange = false;\n };\n return ComponentBase;\n}());\nexport { ComponentBase };\n","import { getValue, setValue, isNullOrUndefined, isObject } from '@syncfusion/ej2-base';\n/**\n * Angular Form Base Module\n */\nvar FormBase = /** @class */ (function () {\n function FormBase() {\n }\n FormBase.prototype.propagateChange = function (_) { return; };\n FormBase.prototype.propagateTouch = function () { return; };\n FormBase.prototype.localChange = function (e) {\n var value = (e.checked === undefined ? e.value : e.checked);\n this.objCheck = isObject(value);\n if (this.isUpdated === true) {\n this.angularValue = this.oldValue;\n }\n if (this.objCheck === true) {\n this.duplicateValue = JSON.stringify(value);\n this.duplicateAngularValue = JSON.stringify(this.angularValue);\n if (this.duplicateValue !== this.duplicateAngularValue && this.propagateChange !== undefined && value !== undefined) {\n // Update angular from our control\n this.propagateChange(value);\n this.angularValue = value;\n }\n }\n else {\n if (value !== this.angularValue && this.propagateChange !== undefined && value !== undefined) {\n // While reset form using reset() method ng-dirty not get updated, so while value is empty just update angularValue only\n if (value !== '' && value !== null) {\n // Update angular from our control\n this.propagateChange(value);\n this.angularValue = value;\n }\n else {\n var optionalValue = value;\n this.propagateChange(optionalValue);\n this.angularValue = value;\n }\n }\n }\n this.cdr.markForCheck();\n };\n FormBase.prototype.registerOnChange = function (registerFunction) {\n this.propagateChange = registerFunction;\n };\n FormBase.prototype.registerOnTouched = function (registerFunction) {\n this.propagateTouch = registerFunction;\n };\n FormBase.prototype.twoWaySetter = function (newVal, prop) {\n var oldVal = this.oldValue || getValue(prop, this.properties);\n var ele = this.inputElement || this.element;\n if (ele && oldVal === newVal && this.value === newVal &&\n (ele.value === undefined || ele.value === '')) {\n return;\n }\n this.saveChanges(prop, newVal, oldVal);\n setValue(prop, (isNullOrUndefined(newVal) ? null : newVal), this.properties);\n getValue(prop + 'Change', this).emit(newVal);\n };\n FormBase.prototype.ngAfterViewInit = function (isTempRef) {\n var tempFormAfterViewThis = isTempRef || this;\n // Used setTimeout for template binding\n // Refer Link: https://github.com/angular/angular/issues/6005\n // Removed setTimeout, Because we have called markForCheck() method in Angular Template Compiler\n /* istanbul ignore else */\n tempFormAfterViewThis.ngOnBlurBound = this.ngOnBlur.bind(this);\n tempFormAfterViewThis.ngOnFocusBound = this.ngOnFocus.bind(this);\n if (typeof window !== 'undefined') {\n if ((tempFormAfterViewThis.getModuleName()).includes('dropdowntree')) {\n setTimeout(function () {\n tempFormAfterViewThis.appendTo(tempFormAfterViewThis.element);\n });\n }\n else {\n tempFormAfterViewThis.appendTo(tempFormAfterViewThis.element);\n }\n var ele = tempFormAfterViewThis.inputElement || tempFormAfterViewThis.element;\n ele.addEventListener('focus', tempFormAfterViewThis.ngOnFocusBound);\n ele.addEventListener('blur', tempFormAfterViewThis.ngOnBlurBound);\n }\n this.isFormInit = false;\n };\n FormBase.prototype.setDisabledState = function (disabled) {\n this.enabled = !disabled;\n this.disabled = disabled;\n };\n FormBase.prototype.writeValue = function (value) {\n var regExp = /ejs-radiobutton/g;\n //update control value from angular\n if (this.checked === undefined) {\n this.value = value;\n }\n else {\n // To resolve boolean type formControl value is not working for radio button control.\n /* istanbul ignore next */\n if (this.ngEle) {\n if (typeof value === 'boolean') {\n if (regExp.test(this.ngEle.nativeElement.outerHTML)) {\n this.checked = value === this.value;\n }\n else {\n this.checked = value;\n }\n }\n else {\n this.checked = value === this.value;\n }\n }\n }\n var isNullValue = this.angularValue == null;\n this.angularValue = value;\n this.isUpdated = true;\n // When binding Html textbox value to syncfusion textbox, change event triggered dynamically.\n // To prevent change event, trigger change in component side based on `preventChange` value\n this.preventChange = this.isFormInit ? false : true;\n this.cdr.markForCheck();\n if (value === null) {\n if (isNullValue) {\n this.preventChange = false;\n }\n return;\n }\n };\n FormBase.prototype.ngOnFocus = function (e) {\n /* istanbul ignore else */\n if (this.skipFromEvent !== true) {\n this.focus.emit(e);\n }\n this.cdr.markForCheck();\n };\n FormBase.prototype.ngOnBlur = function (e) {\n this.propagateTouch();\n /* istanbul ignore else */\n if (this.skipFromEvent !== true) {\n this.blur.emit(e);\n }\n this.cdr.markForCheck();\n };\n FormBase.isFormBase = true;\n return FormBase;\n}());\nexport { FormBase };\n"],"names":["applyMixins","derivedClass","baseClass","forEach","Object","getOwnPropertyNames","prototype","name","hasOwnProperty","call","isFormBase","concat","ComponentMixins","registerEvents","eventList","obj","direct","ngEventsEmitter","length","_i","eventList_1","event_1","propCollection","EventEmitter","setProperties","clearTemplate","_this","templateNames","index","_a","regTemplates","keys","registeredTemplate","regProperties","filter","val","test","tabaccordionTemp","getModuleName","_b","e","m","value","parseInt","toString","destroy","splice","template","rootNodes","rt","_c","_d","destroyed","_view","pNode","renderer","parentNode","isNullOrUndefined","appendChild","_e","_f","tagObjects","tagObject","instance","RegExp","setValue","nameSpace","object","replace","split","fromObj","i","key","undefined","compile","templateEle","helper","CSPTemplate","stringCompiler","contRef_1","elementRef","nativeElement","_viewContainerRef","pName_1","propName","data","component","context","$implicit","conRef","viewContainerRef","viewRef","createEmbeddedView","getValue","detectChanges","markForCheck","viewCollection","push","Template","defaultValue","target","propertyDescriptor","set","setter","get","getter","enumerable","configurable","defineProperty","this","saveChanges","dataBind","refRegex","ComplexBase","hasChanges","dataSource","tags","ngOnInit","tag","objInstance","substring","toUpperCase","templateProperties","tempProp","indexOf","templateProperties_1","propList","directivePropList","k","dirPropName","isInitChanges","ngOnChanges","changes","changedVal","currentValue","isUpdated","getProperties","isChanged","result","property","tempProps","props","d","propVal","item","ngAfterContentChecked","templateProperties_2","ngAfterViewChecked","ngAfterViewInit","ngOnDestroy","ArrayBase","propertyName","list","ngAfterContentInit","children","map","child","dirIndex","onlyProp","isSourceChanged","childrenDataSource","JSON","stringify","hasNewChildren","ComponentBase","isProtectedOnChange","isFormInit","newValue","oldValue","oldProperties","changedProperties","finalUpdate","changeTime","setTimeout","bind","clearUpdate","clearTimeout","isTempRef","tempOnThis","ngBoundedEvents","isAngular","complexTemplate","ngAttr","getAngularAttr","element","createElement","tagName","prop","ele","srenderer","innerHTML","className","id","styles","setAttribute","attrs","attributes","complexTemplates","compProp","complexTemplates_1","ngAr","tempAfterViewThis","ngEle","outerHTML","style","visibility","ngtempRef","appendToComponent","window","appendTo","includes","tempOnDestroyThis","classList","contains","ngOnFocus","ngOnBlur","inputElement","removeEventListener","ngOnFocusBound","ngOnBlurBound","propKey","propValue","parent","parentObj","tempAfterContentThis","isUndefined","propObj","complexDirProps","skip","compDirPropList","h","complexPropName","childObj","innerchildObj","updateChildTag_1","innerchild","innerLevelTag","j","innerTag","innerchildTag","l","hasDiffLength","innerChild","curIndex","curChild","properties","complexTemplates_2","twoWaySetter","newVal","oldVal","emit","addTwoWay","this_1","propList_1","addEventListener","eventName","handler","eventObj","Map","subscribe","unsubscribe","trigger","eventArgs","success","prevDetection","next","localEventObj","charAt","slice","preventChange","isPreventChange","FormBase","propagateChange","_","propagateTouch","localChange","checked","objCheck","isObject","angularValue","duplicateValue","duplicateAngularValue","optionalValue","cdr","registerOnChange","registerFunction","registerOnTouched","tempFormAfterViewThis","setDisabledState","disabled","enabled","writeValue","regExp","isNullValue","skipFromEvent","focus","blur","getTemplateEngine"],"mappings":"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"}
|
package/dist/global/index.d.ts
CHANGED
|
@@ -1,12 +1,3 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* filename: index.d.ts
|
|
3
|
-
* version : 31.1.17
|
|
4
|
-
* Copyright Syncfusion Inc. 2001 - 2024. All rights reserved.
|
|
5
|
-
* Use of this code is subject to the terms of our license.
|
|
6
|
-
* A copy of the current license can be obtained at any time by e-mailing
|
|
7
|
-
* licensing@syncfusion.com. Any infringement will be prosecuted under
|
|
8
|
-
* applicable laws.
|
|
9
|
-
*/
|
|
10
1
|
import * as _angularbase from '@syncfusion/ej2-angular-base';
|
|
11
2
|
|
|
12
3
|
export declare namespace ej {
|
package/package.json
CHANGED
package/src/template.js
CHANGED
|
@@ -69,7 +69,7 @@ function setter(key) {
|
|
|
69
69
|
return;
|
|
70
70
|
}
|
|
71
71
|
setValue(key + 'Ref', val, this);
|
|
72
|
-
if (typeof val !== 'string') {
|
|
72
|
+
if (typeof val !== 'string' && !(typeof val === 'function' && val.prototype && val.prototype.CSPTemplate)) {
|
|
73
73
|
val.elementRef.nativeElement._viewContainerRef = this.viewContainerRef;
|
|
74
74
|
val.elementRef.nativeElement.propName = key;
|
|
75
75
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
@import 'ej2-base/styles/definition/material3-dark.scss';
|
package/styles/material3.scss
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
@import 'ej2-base/styles/definition/material3.scss';
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
import { QueryList, SimpleChanges } from '@angular/core';
|
|
2
|
-
/**
|
|
3
|
-
* Complex Array Base module
|
|
4
|
-
*/
|
|
5
|
-
export interface IChildChange {
|
|
6
|
-
dirIndex: number;
|
|
7
|
-
change: Object;
|
|
8
|
-
}
|
|
9
|
-
export declare class ComplexBase<T> {
|
|
10
|
-
isUpdated: boolean;
|
|
11
|
-
hasChanges?: boolean;
|
|
12
|
-
dirIndex?: number;
|
|
13
|
-
propCollection?: {
|
|
14
|
-
[key: string]: Object;
|
|
15
|
-
};
|
|
16
|
-
dataSource?: {
|
|
17
|
-
[key: string]: Object;
|
|
18
|
-
};
|
|
19
|
-
property?: string;
|
|
20
|
-
tags?: string[];
|
|
21
|
-
isInitChanges: boolean;
|
|
22
|
-
private tagObjects?;
|
|
23
|
-
private registeredTemplate;
|
|
24
|
-
private componentType;
|
|
25
|
-
directivePropList: any;
|
|
26
|
-
ngOnInit(): void;
|
|
27
|
-
protected registerEvents(eventList: string[]): void;
|
|
28
|
-
ngOnChanges(changes: SimpleChanges): void;
|
|
29
|
-
clearTemplate(templateNames: string[]): void;
|
|
30
|
-
getProperties(): {
|
|
31
|
-
[key: string]: Object;
|
|
32
|
-
};
|
|
33
|
-
isChanged(): boolean;
|
|
34
|
-
ngAfterContentChecked(): void;
|
|
35
|
-
ngAfterViewChecked(): void;
|
|
36
|
-
ngAfterViewInit(): void;
|
|
37
|
-
ngOnDestroy(): void;
|
|
38
|
-
}
|
|
39
|
-
export declare class ArrayBase<T> {
|
|
40
|
-
isInitChanges: boolean;
|
|
41
|
-
list: T[] & ComplexBase<T>[];
|
|
42
|
-
children: QueryList<T>;
|
|
43
|
-
hasChanges: boolean;
|
|
44
|
-
private propertyName;
|
|
45
|
-
hasNewChildren: boolean;
|
|
46
|
-
constructor(propertyName: string);
|
|
47
|
-
ngOnInit(): void;
|
|
48
|
-
ngAfterContentInit(): void;
|
|
49
|
-
getProperties(): Object[];
|
|
50
|
-
isChanged(): boolean;
|
|
51
|
-
clearTemplate(templateNames: string[]): void;
|
|
52
|
-
ngAfterContentChecked(): void;
|
|
53
|
-
ngAfterViewInit(): void;
|
|
54
|
-
ngOnDestroy(): void;
|
|
55
|
-
}
|