@syncfusion/ej2-vue-base 34.1.29 → 34.1.32

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.
@@ -646,6 +646,137 @@ var __assign = (undefined && undefined.__assign) || function () {
646
646
  return __assign.apply(this, arguments);
647
647
  };
648
648
  var stringCompiler = getTemplateEngine();
649
+ /**
650
+ * Returns true if the given Vue 3 component instance is inside a keep-alive.
651
+ *
652
+ * @param {any} vueInstance - Vue component instance.
653
+ * @returns {boolean} Returns true when inside keep-alive.
654
+ */
655
+ function isInsideKeepAlive(vueInstance) {
656
+ var parent = vueInstance && vueInstance.$ && vueInstance.$.parent;
657
+ while (parent) {
658
+ if (parent.type && parent.type.__isKeepAlive) {
659
+ return true;
660
+ }
661
+ parent = parent.parent;
662
+ }
663
+ return false;
664
+ }
665
+ /**
666
+ * Collect activated/deactivated hooks from rendered vnode tree.
667
+ *
668
+ * @param {any} vnode - VNode instance.
669
+ * @param {any[]} out - Collection of hooks.
670
+ * @returns {void}
671
+ */
672
+ function collectHooks(vnode, out) {
673
+ if (!vnode) {
674
+ return;
675
+ }
676
+ var ci = vnode.component;
677
+ if (ci && ci.type && ci.proxy && !ci.isUnmounted) {
678
+ if (typeof ci.type.activated === 'function' ||
679
+ typeof ci.type.deactivated === 'function') {
680
+ out.push({
681
+ activated: ci.type.activated ?
682
+ ci.type.activated.bind(ci.proxy) : null,
683
+ deactivated: ci.type.deactivated ?
684
+ ci.type.deactivated.bind(ci.proxy) : null
685
+ });
686
+ }
687
+ collectHooks(ci.subTree, out);
688
+ }
689
+ if (Array.isArray(vnode.children)) {
690
+ for (var i = 0; i < vnode.children.length; i++) {
691
+ // eslint-disable-next-line security/detect-object-injection
692
+ collectHooks(vnode.children[i], out);
693
+ }
694
+ }
695
+ }
696
+ /**
697
+ * Collect hooks from template collection.
698
+ *
699
+ * @param {any} proxy - Vue component proxy.
700
+ * @returns {any[]} Returns collected hooks.
701
+ */
702
+ function collectFromTemplates(proxy) {
703
+ var hooks = [];
704
+ var tc = proxy.templateCollection;
705
+ if (!tc) {
706
+ return hooks;
707
+ }
708
+ var keys = Object.keys(tc);
709
+ for (var k = 0; k < keys.length; k++) {
710
+ // eslint-disable-next-line security/detect-object-injection
711
+ var key = keys[k];
712
+ // eslint-disable-next-line security/detect-object-injection
713
+ var elems = tc[key];
714
+ for (var i = 0; i < elems.length; i++) {
715
+ // eslint-disable-next-line security/detect-object-injection
716
+ var ele = elems[i];
717
+ if (ele && ele._vnode) {
718
+ collectHooks(ele._vnode, hooks);
719
+ }
720
+ }
721
+ }
722
+ return hooks;
723
+ }
724
+ /**
725
+ * Patch keep-alive lifecycle handling for slot templates.
726
+ *
727
+ * @param {any} vueInstance - Vue component instance.
728
+ * @param {any} app - Rendered vnode.
729
+ * @returns {void}
730
+ */
731
+ function patchKeepAlive(vueInstance, app) {
732
+ // Walk up to find the direct child of keep-alive.
733
+ var start = vueInstance.$;
734
+ var cur = start;
735
+ var keepAliveChild = null;
736
+ while (cur) {
737
+ if (cur.parent &&
738
+ cur.parent.type &&
739
+ cur.parent.type.__isKeepAlive) {
740
+ keepAliveChild = cur;
741
+ break;
742
+ }
743
+ cur = cur.parent;
744
+ }
745
+ if (!keepAliveChild) {
746
+ return;
747
+ }
748
+ // templateCollection is on ejs-grid vueInstance
749
+ var gridProxy = vueInstance;
750
+ if (!keepAliveChild.isDeactivated) {
751
+ var immediateHooks = [];
752
+ collectHooks(app, immediateHooks);
753
+ immediateHooks.forEach(function (h) {
754
+ var activated = h.activated;
755
+ if (activated) {
756
+ activated();
757
+ }
758
+ });
759
+ }
760
+ if (!keepAliveChild._sfPatched) {
761
+ keepAliveChild._sfPatched = true;
762
+ (keepAliveChild.a || (keepAliveChild.a = [])).push(function () {
763
+ collectFromTemplates(gridProxy).forEach(function (h) {
764
+ var activated = h.activated;
765
+ if (activated) {
766
+ activated();
767
+ }
768
+ });
769
+ });
770
+ (keepAliveChild.da || (keepAliveChild.da = [])).push(function () {
771
+ collectFromTemplates(gridProxy).forEach(function (h) {
772
+ var deactivated = h.deactivated;
773
+ if (deactivated) {
774
+ deactivated();
775
+ }
776
+ });
777
+ });
778
+ }
779
+ }
649
780
  /**
650
781
  * Compiler function that convert the template property to DOM element.
651
782
  *
@@ -694,6 +825,10 @@ function compile(templateElement, helper) {
694
825
  }
695
826
  templateInstance["" + propName].push(ele);
696
827
  }
828
+ // Keep-alive support for Vue 3 slot templates.
829
+ if (isInsideKeepAlive(vueInstance)) {
830
+ patchKeepAlive(vueInstance, app);
831
+ }
697
832
  }
698
833
  detach(ele);
699
834
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ej2-vue-base.es5.js","sources":["../../src/component-base.js","../../src/template.js"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\n/**\n * Vue Component Base\n */\nimport * as Vue from 'vue';\nimport { isNullOrUndefined, extend, getValue, setProxyToRaw } from '@syncfusion/ej2-base';\n/**\n * Clone the Vue compiler instance.\n *\n * @param {any} obj - representes the Vue compiler.\n * @returns {any} cloned object of Vue compiler.\n */\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) {\n return obj;\n}\nelse {\n var newObj = {};\n if (obj != null) {\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n newObj[\"\" + key] = obj[\"\" + key];\n }\n }\n }\n newObj.default = obj;\n return newObj;\n} }\nvar curVue = _interopRequireWildcard(Vue);\nexport var isExecute = (parseInt(curVue['version'], 10) > 2) ? false : true;\nexport var aVue = !isExecute ? curVue : (curVue['default']['default'] ? curVue['default']['default'] : curVue['default']);\nexport var gh = curVue['h'];\nexport var vueDefineComponent = function (options) { return !isExecute ? aVue['defineComponent'](options) : aVue['extend'](options); };\nexport var ComponentBase = vueDefineComponent({\n name: 'ComponentBase',\n data: function () {\n return {\n tagMapper: {},\n tagNameMapper: {},\n hasInjectedModules: false,\n hasChildDirective: false,\n childDirObjects: '',\n propKeys: {},\n isDecorator: false\n };\n },\n created: function () {\n var _this = this;\n if (this.ej2Instance) {\n this.ej2Instances = this.isVue3 ? aVue.toRaw(this.ej2Instance) : this.ej2Instance;\n }\n if (!this.propKeys) {\n return;\n }\n var _loop_1 = function (prop) {\n this_1.ej2Instances.addEventListener(prop, function (args) {\n _this.$emit(prop, args);\n });\n };\n var this_1 = this;\n for (var _i = 0, _a = this.propKeys; _i < _a.length; _i++) {\n var prop = _a[_i];\n _loop_1(prop);\n }\n var injectables = getValue('$root.$options.provide', this);\n var vueInjectables = getValue('$parent.$options.provide', this);\n vueInjectables = !isNullOrUndefined(vueInjectables) ? vueInjectables : getValue('$.parent.provides', this);\n if (this.hasInjectedModules && !isExecute) {\n var prevModule = [];\n if (injectables && injectables.managed) {\n this.isDecorator = true;\n prevModule = this.getInjectedServices() || [];\n }\n else if (injectables) {\n prevModule = injectables[this.ej2Instances.getModuleName()] || [];\n }\n else if (vueInjectables) {\n prevModule = this.getInjectedServices() || [];\n }\n var curModule = this.ej2Instances.getInjectedModules() || [];\n for (var _b = 0, curModule_1 = curModule; _b < curModule_1.length; _b++) {\n var mod = curModule_1[_b];\n if (prevModule.indexOf(mod) === -1) {\n prevModule.push(mod);\n }\n }\n this.ej2Instances.injectedModules = prevModule;\n }\n },\n mounted: function () {\n var cusEle = this.$el ? this.$el.querySelectorAll('div.e-directive') : null;\n if (!isExecute && cusEle) {\n for (var i = 0; i < cusEle.length; i++) {\n var cusElement = cusEle[parseInt(i.toString(), 10)];\n if (cusElement.parentElement) {\n cusElement.parentElement.removeChild(cusElement);\n }\n }\n }\n this.ej2Instances.isVue = true;\n this.ej2Instances.isVue3 = this.isVue3;\n this.ej2Instances.vueInstance = this;\n if (this.isVue3) {\n this.ej2Instances.ej2Instances = this.ej2Instances;\n this.ej2Instances.referModels = this.models;\n this.setModelValue();\n }\n this.ej2Instances.appendTo(this.$el);\n },\n updated: function () {\n this.updated();\n },\n beforeDestroy: function () {\n this.destroyComponent();\n },\n beforeUnmount: function () {\n this.destroyComponent();\n },\n methods: {\n setModelValue: function () {\n if (!isNullOrUndefined(this.modelValue) || !isNullOrUndefined(this.$attrs.modelValue)) {\n var key = this.models.toString().match(/checked|value/) || [];\n var propKey = key[0];\n if (!isNullOrUndefined(propKey)) {\n this.ej2Instances[\"\" + propKey] = !isNullOrUndefined(this.modelValue) ? this.modelValue : this.$attrs.modelValue;\n }\n }\n },\n updated: function () {\n if (this.isVue3) {\n this.setModelValue();\n }\n if (this.hasChildDirective) {\n var childKey = {};\n this.fetchChildPropValues(childKey);\n var curChildDir = JSON.stringify(childKey);\n if (this.childDirObjects !== curChildDir) {\n this.childDirObjects = curChildDir;\n this.assignValueToWrapper(childKey, false);\n }\n }\n },\n getInjectedServices: function () {\n var ret = [];\n var provide;\n if (this.$root && this.isDecorator) {\n provide = getValue('$root.$options.provide', this);\n }\n else if (this.$vnode) {\n provide = getValue('$vnode.context.$options.provide', this);\n }\n else if (this.$parent) {\n provide = getValue('$parent.$options.provide', this);\n }\n if (isNullOrUndefined(provide) && !isNullOrUndefined(this.$)) {\n provide = getValue('$.parent.provides', this);\n }\n if (isExecute && isNullOrUndefined(provide) && this.$vnode) {\n provide = getValue('$vnode.context._provided', this);\n }\n if (provide) {\n var injectables = provide;\n if (typeof provide === 'function') {\n if (provide.managed) {\n var pKey = provide.managed;\n var pValue = Object.keys(pKey);\n var key = void 0;\n if (this.$root && this.isDecorator) {\n key = Object.keys(this.$root);\n }\n else if (this.$vnode) {\n key = Object.keys(this.$vnode.context);\n }\n else if (this.$parent) {\n key = Object.keys(this.$parent);\n }\n for (var i = 0; i < pValue.length; i++) {\n for (var j = 0; j < key.length; j++) {\n if ((key[parseInt(j.toString(), 10)].indexOf(pValue[parseInt(i.toString(), 10)])) !== -1) {\n if (this.$root && this.isDecorator) {\n pKey[pValue[parseInt(j.toString(), 10)]] = this.$root[key[parseInt(i.toString(), 10)]];\n }\n else if (this.$vnode) {\n pKey[pValue[parseInt(i.toString(), 10)]] = this.$vnode.context[key[parseInt(j.toString(), 10)]];\n }\n else if (this.$parent) {\n pKey[pValue[parseInt(i.toString(), 10)]] = this.$parent[key[parseInt(j.toString(), 10)]];\n }\n injectables = pKey;\n }\n }\n }\n }\n else if (this.$vnode) {\n injectables = this.$vnode.context.$options.provide();\n }\n else if (this.$parent) {\n injectables = this.$parent.$options.provide();\n }\n }\n ret = injectables[this.ej2Instances.getModuleName()] || [];\n }\n this.isDecorator = false;\n return ret;\n },\n destroyComponent: function () {\n this.ej2Instances.destroy();\n this.$el.style.visibility = 'hidden';\n this.clearTemplate();\n },\n destroyPortals: function (element) {\n if (element) {\n var destroy = getValue('__vue__.$destroy', element);\n if (destroy) {\n element.__vue__.$destroy();\n }\n else if (!isExecute && element._vnode) {\n try {\n aVue.render(null, element);\n }\n catch (e) { /* Handle error */ }\n }\n if (element.innerHTML) {\n element.innerHTML = '';\n }\n }\n },\n bindProperties: function () {\n var options = {};\n for (var _i = 0, _a = this.propKeys; _i < _a.length; _i++) {\n var prop = _a[_i];\n if (!isNullOrUndefined(this[\"\" + prop])) {\n options[\"\" + prop] = this[\"\" + prop];\n }\n else if (this[0] && !isNullOrUndefined(this[0][0]) && !isNullOrUndefined(this[0][0][\"\" + prop])) {\n options[\"\" + prop] = this[0][0][\"\" + prop];\n }\n }\n if (this.hasChildDirective) {\n this.fetchChildPropValues(options);\n }\n if (this.hasInjectedModules) {\n var prevModule = this.getInjectedServices() || [];\n var curModule = this.ej2Instances.getInjectedModules() || [];\n for (var _b = 0, curModule_2 = curModule; _b < curModule_2.length; _b++) {\n var mod = curModule_2[_b];\n if (prevModule.indexOf(mod) === -1) {\n prevModule.push(mod);\n }\n }\n this.ej2Instances.injectedModules = prevModule;\n }\n this.assignValueToWrapper(options);\n },\n assignValueToWrapper: function (option, silent) {\n this.ej2Instances.setProperties(extend({}, {}, option, true), isNullOrUndefined(silent) ? true : silent);\n },\n fetchChildPropValues: function (childOption) {\n var dirProps = {};\n if (!this.isVue3) {\n dirProps = this.getDirectiveValues(this.$slots.default, this.tagMapper || {}, this.tagNameMapper || {});\n }\n else {\n var propRef = void 0;\n if (this[0] && this[0][1].slots.default) {\n propRef = this[0][1].slots.default();\n }\n else if (this && this.$ && this.$.slots && this.$.slots.default) {\n propRef = this.$.slots.default();\n }\n if (propRef) {\n for (var i = 0; i < propRef.length; i++) {\n if (propRef[parseInt(i.toString(), 10)].type.methods || propRef[parseInt(i.toString(), 10)].type === 'e-seriescollection') {\n var key = propRef[parseInt(i.toString(), 10)].type === 'e-seriescollection' ? 'series-collection' :\n propRef[parseInt(i.toString(), 10)].type.methods.getTag().replace('e-', '');\n var ref = this.resolveArrayDirectives(propRef[parseInt(i.toString(), 10)].children, key);\n var spKeys = key.split('-');\n var controlName = this.ej2Instances.getModuleName().toLowerCase();\n var keyRef = (spKeys.length > 1 && controlName.indexOf(spKeys[0]) > -1) ? spKeys[1] : spKeys[0];\n keyRef = keyRef.replace(controlName, '');\n keyRef = this.tagNameMapper['e-' + key] ? this.tagNameMapper['e-' + key].replace('e-', '') : keyRef;\n if (controlName === 'splitter' && keyRef === 'panes') {\n keyRef = 'paneSettings';\n }\n else if (controlName === 'bulletchart' && keyRef === 'range') {\n keyRef = 'ranges';\n }\n else if (controlName === 'schedule' && keyRef === 'header') {\n keyRef = 'headerRows';\n }\n dirProps[\"\" + keyRef] = ref[\"\" + key];\n }\n }\n }\n else {\n return;\n }\n }\n if (!this.childDirObjects) {\n this.childDirObjects = JSON.stringify(dirProps);\n }\n for (var _i = 0, _a = Object.keys(dirProps); _i < _a.length; _i++) {\n var dirProp = _a[_i];\n childOption[\"\" + dirProp] = dirProps[\"\" + dirProp];\n }\n },\n resolveArrayDirectives: function (slots, tagName) {\n var slot = [];\n var innerDirValues;\n slot = slots.default ? slots.default() : slots;\n slot = slot.flatMap(function (item) { return Array.isArray(item.children) ? item.children : item; });\n var items = {};\n items[\"\" + tagName] = [];\n var _loop_2 = function (childSlot) {\n var tempObj = {};\n var tagRef = childSlot.type.methods ? childSlot.type.methods.getTag() : tagName;\n if (childSlot.children) {\n var key = void 0;\n innerDirValues = this_2.resolveComplexDirs(childSlot.children, this_2.tagMapper['e-' + tagName], tagRef);\n if (innerDirValues.length) {\n tempObj = innerDirValues;\n }\n else {\n for (var i = 0; i < Object.keys(innerDirValues).length; i++) {\n key = Object.keys(innerDirValues)[parseInt(i.toString(), 10)];\n tempObj[\"\" + key] = innerDirValues[\"\" + key];\n }\n }\n }\n if (childSlot.props) {\n Object.keys(childSlot.props).forEach(function (key) {\n var propName = key.replace(/-[a-z]/g, function (e) { return e[1].toUpperCase(); });\n if (propName) {\n tempObj[\"\" + propName] = childSlot.props[\"\" + key];\n }\n });\n }\n if (((/[s]\\b/).test(tagRef) && innerDirValues) && (!(/[s]\\b/).test(tagName) || innerDirValues.length)) {\n if (Array.isArray(tempObj)) {\n tempObj.forEach(function (item) { items[\"\" + tagName].push(item); });\n }\n else {\n items[\"\" + tagName].push(tempObj);\n }\n }\n else if (tempObj && Object.keys(tempObj).length !== 0) {\n items[\"\" + tagName].push(tempObj);\n }\n };\n var this_2 = this;\n for (var _i = 0, slot_1 = slot; _i < slot_1.length; _i++) {\n var childSlot = slot_1[_i];\n _loop_2(childSlot);\n }\n return items;\n },\n resolveComplexDirs: function (slots, tagObject, tagName) {\n var slot = [];\n var innerDirValues;\n slot = slots.default ? slots.default() : slots;\n var items = {};\n var _loop_3 = function (childSlot) {\n var tagRef = void 0;\n var tag = void 0;\n if (tagObject[\"\" + tagName]) {\n tagRef = Object.keys(tagObject[\"\" + tagName]);\n tag = tagRef.find(function (key) {\n return tagObject[\"\" + tagName][\"\" + key] ===\n childSlot.type.methods.getTag().replace(/[s]\\b/, '');\n });\n tag = tag ? tag : childSlot.type.methods.getTag();\n tag = (this_3.tagNameMapper[\"\" + tag] ? this_3.tagNameMapper[\"\" + tag] : tag).replace('e-', '');\n if (this_3.ej2Instances.getModuleName().toLowerCase() === 'diagram' && tag.indexOf('annotations') !== -1) {\n tag = 'annotations';\n }\n }\n if (childSlot.children) {\n innerDirValues = this_3.resolveComplexInnerDirs(childSlot.children, tagObject[\"\" + tagName], childSlot.type.methods.getTag());\n if (!items[\"\" + tag]) {\n items[\"\" + tag] = [];\n }\n if (innerDirValues.length > 1) {\n items[\"\" + tag] = innerDirValues;\n }\n else {\n items[\"\" + tag].push(innerDirValues);\n }\n }\n if (childSlot.props) {\n childSlot.props = this_3.getCamelCaseProps(childSlot.props);\n }\n if (slot.length > 1) {\n items = Object.keys(items).length === 0 && !items.length ? [] : items;\n if (childSlot.props) {\n items.push(childSlot.props);\n }\n }\n else {\n items = childSlot.props ? Object.assign(items, childSlot.props) : items;\n }\n };\n var this_3 = this;\n for (var _i = 0, slot_2 = slot; _i < slot_2.length; _i++) {\n var childSlot = slot_2[_i];\n _loop_3(childSlot);\n }\n return items;\n },\n resolveComplexInnerDirs: function (slots, tagObject, tagName) {\n var slot = [];\n slot = slots.default ? slots.default() : slots;\n var items = slot.length > 1 ? [] : {};\n for (var _i = 0, slot_3 = slot; _i < slot_3.length; _i++) {\n var childSlot = slot_3[_i];\n var innerDirValues = null;\n var tag = childSlot.type.methods.getTag();\n tag = (this.tagNameMapper[\"\" + tag] ? this.tagNameMapper[\"\" + tag] : tag).replace('e-', '');\n if (childSlot.children) {\n innerDirValues = this.resolveMultilevelComplexInnerDirs(childSlot.children, tagObject[\"\" + tagName], childSlot.type.methods.getTag());\n if ((/[s]\\b/).test(tag) || slot.length > 1) {\n if ((/[s]\\b/).test(tag)) {\n items[\"\" + tag] = !items[\"\" + tag] ? [] : items[\"\" + tag];\n if (innerDirValues.length) {\n items[\"\" + tag] = innerDirValues;\n }\n else {\n items[\"\" + tag].push(innerDirValues);\n }\n }\n else if (innerDirValues && !childSlot.props) {\n items.push(innerDirValues);\n }\n }\n else {\n items = innerDirValues ? innerDirValues : items;\n }\n }\n if (childSlot.props) {\n childSlot.props = this.getCamelCaseProps(childSlot.props);\n }\n if (slot.length > 1 && childSlot.props) {\n if (innerDirValues) {\n innerDirValues = childSlot.props ? Object.assign(innerDirValues, childSlot.props) : innerDirValues;\n items.push(innerDirValues);\n }\n else if (items.length >= 0) {\n items.push(childSlot.props);\n }\n else {\n items = childSlot.props ? Object.assign(items, childSlot.props) : items;\n }\n }\n else {\n items = childSlot.props ? Object.assign(items, childSlot.props) : items;\n }\n }\n return items;\n },\n resolveMultilevelComplexInnerDirs: function (slots, tagObject, tagName) {\n var slot = [];\n slot = slots.default ? slots.default() : slots;\n var items = slot.length > 1 ? [] : {};\n for (var _i = 0, slot_4 = slot; _i < slot_4.length; _i++) {\n var childSlot = slot_4[_i];\n var innerDirValues = null;\n var tag = childSlot.type.methods.getTag();\n tag = (this.tagNameMapper[\"\" + tag] ? this.tagNameMapper[\"\" + tag] : tag).replace('e-', '');\n if (childSlot.children) {\n innerDirValues = this.resolveComplexInnerDirs(childSlot.children, tagObject[\"\" + tagName], childSlot.type.methods.getTag());\n }\n if (childSlot.props) {\n childSlot.props = this.getCamelCaseProps(childSlot.props);\n }\n if ((/[s]\\b/).test(tag)) {\n items[\"\" + tag] = !items[\"\" + tag] ? [] : items[\"\" + tag];\n if (innerDirValues.length) {\n items[\"\" + tag] = innerDirValues;\n }\n else {\n items[\"\" + tag].push(innerDirValues);\n }\n if (childSlot.props) {\n items[\"\" + tag].push(childSlot.props);\n }\n }\n else {\n items = innerDirValues;\n items = childSlot.props ? Object.assign(items, childSlot.props) : items;\n }\n }\n return items;\n },\n getDirectiveValues: function (tagDirectives, tagMapper, tagNameMapper) {\n var keyTags = Object.keys(tagMapper);\n var dir = {};\n if (tagDirectives) {\n for (var _i = 0, tagDirectives_1 = tagDirectives; _i < tagDirectives_1.length; _i++) {\n var tagDirective = tagDirectives_1[_i];\n var tagCompOption = tagDirective.componentOptions;\n if (tagCompOption && tagCompOption.children && this.getTagName(tagCompOption) ||\n (tagDirective.tag === 'e-seriescollection' && tagDirective.children)) {\n var dirTag = tagCompOption ? this.getTagName(tagCompOption) : tagDirective.tag;\n dirTag = (dirTag === 'e-seriescollection') ? 'e-seriesCollection' : dirTag;\n if (keyTags.indexOf(dirTag) !== -1) {\n var tagName = tagNameMapper[\"\" + dirTag] ? tagNameMapper[\"\" + dirTag] : dirTag;\n dir[tagName.replace('e-', '')] = [];\n var children = tagCompOption ? tagCompOption.children : tagDirective.children;\n for (var _a = 0, children_1 = children; _a < children_1.length; _a++) {\n var tagDirChild = children_1[_a];\n var retObj = this.getVNodeValue(tagDirChild, tagMapper[\"\" + dirTag], tagNameMapper);\n if (Object.keys(retObj).length !== 0) {\n dir[tagName.replace('e-', '')].push(retObj);\n }\n }\n }\n }\n }\n }\n return dir;\n },\n getMultiLevelDirValue: function (tagDirectories, tagKey, tagNameMapper) {\n var mulObj = {};\n for (var _i = 0, tagDirectories_1 = tagDirectories; _i < tagDirectories_1.length; _i++) {\n var tagDir = tagDirectories_1[_i];\n var key = void 0;\n var children = void 0;\n if (tagDir.componentOptions) {\n key = this.getTagName(tagDir.componentOptions);\n if (tagDir.componentOptions.children) {\n children = tagDir.componentOptions.children;\n }\n }\n else if ((tagDir.tag === 'e-markersettings' || tagDir.tag === 'e-markersetting') && tagDir.children) {\n key = (tagDir.tag === 'e-markersettings') ? 'e-markerSettings' : 'e-markerSetting';\n children = tagDir.children;\n }\n if (key) {\n var tagName = tagNameMapper[\"\" + key] ? tagNameMapper[\"\" + key] : key;\n mulObj[tagName.replace('e-', '')] = [];\n if (children) {\n for (var _a = 0, children_2 = children; _a < children_2.length; _a++) {\n var tagDirChild = children_2[_a];\n var mulLevObj = this.getVNodeValue(tagDirChild, tagKey[\"\" + key], tagNameMapper);\n if (Object.keys(mulLevObj).length !== 0) {\n mulObj[tagName.replace('e-', '')].push(mulLevObj);\n }\n }\n }\n }\n }\n return mulObj;\n },\n getVNodeValue: function (tagDirective, tagKey, tagNameMapper) {\n var ret = {};\n if (tagDirective.componentOptions || ((tagDirective.tag === 'e-markersettings' || tagDirective.tag === 'e-markersetting') && tagDirective.context)) {\n var dirTag = void 0;\n if (tagDirective.componentOptions) {\n dirTag = this.getTagName(tagDirective.componentOptions);\n }\n else {\n dirTag = (tagDirective.tag === 'e-markersettings') ? 'e-markerSettings' : 'e-markerSetting';\n }\n var tagData = tagDirective.data;\n if (typeof tagKey === 'string' && dirTag === tagKey && tagData) {\n ret = tagData.attrs ? this.getCamelCaseProps(tagData.attrs) : this.getCamelCaseProps(tagData);\n }\n else if (typeof tagKey === 'object') {\n if (tagDirective.componentOptions.children && (Object.keys(tagKey).indexOf(dirTag) !== -1)) {\n ret = this.getMultiLevelDirValue(tagDirective.componentOptions.children, tagKey[\"\" + dirTag], tagNameMapper);\n }\n else if (tagDirective.children && (Object.keys(tagKey).indexOf(dirTag) !== -1) && (dirTag === 'e-markersettings' || dirTag === 'e-markersetting')) {\n ret = this.getMultiLevelDirValue(tagDirective.children, tagKey[\"\" + dirTag], tagNameMapper);\n }\n if (tagData && tagData.attrs) {\n ret = extend(ret, this.getCamelCaseProps(tagData.attrs));\n }\n }\n }\n return ret;\n },\n /**\n * convert kebab case directive props to camel case.\n *\n * @param {Object} props - Objects in kebab case directive props.\n * @returns {Object} Object converted into camel case directive props.\n */\n getCamelCaseProps: function (props) {\n var retProps = {};\n for (var _i = 0, _a = Object.keys(props); _i < _a.length; _i++) {\n var prop = _a[_i];\n retProps[prop.replace(/-[a-z]/g, function (e) { return e[1].toUpperCase(); })] = props[\"\" + prop];\n }\n return retProps;\n },\n dataBind: function () {\n this.ej2Instances.dataBind();\n },\n setProperties: function (arg, muteOnChange) {\n return this.ej2Instances.setProperties(arg, muteOnChange);\n },\n getTagName: function (options) {\n var tag = options.tag;\n var optCtor = options.Ctor;\n if (!tag && optCtor && optCtor.extendOptions && optCtor.extendOptions.methods && optCtor.extendOptions.methods.getTag) {\n tag = options.Ctor.extendOptions.methods.getTag();\n }\n return tag;\n }\n }\n});\n/**\n * Collect public property values for the Vue component.\n *\n * @param {any} options - represents props object.\n * @returns {any} array of props object and `watchobject` respectively.\n */\nexport function getProps(options) {\n if (options === void 0) { options = {}; }\n if (options.props) {\n var _loop_4 = function (prop) {\n (options.newprops || (options.newprops = {}))[\"\" + prop] = {};\n (options.watch || (options.watch = {}))[\"\" + prop] = function (newVal) {\n this.ej2Instances[\"\" + prop] = newVal;\n if (this.dataBind && (options.name !== 'DateRangePickerComponent')) {\n this.dataBind();\n }\n };\n };\n for (var _i = 0, _a = options.props; _i < _a.length; _i++) {\n var prop = _a[_i];\n _loop_4(prop);\n }\n }\n return [options.newprops, options.watch];\n}\nif (!isExecute) {\n setProxyToRaw(aVue.toRaw);\n}\n","var __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\n/* eslint-disable @typescript-eslint/no-explicit-any, @typescript-eslint/explicit-module-boundary-types */\nimport { setTemplateEngine, getTemplateEngine, getUniqueID, createElement, detach, extend, getValue } from '@syncfusion/ej2-base';\nimport { aVue as Vue, isExecute } from './component-base';\nvar stringCompiler = getTemplateEngine();\n/**\n * Compiler function that convert the template property to DOM element.\n *\n * @param {any} templateElement - represents value of the template property from the component.\n * @param {Object} helper - represents helper object to utilize on template compilation.\n * @returns {NodeList} template element that append to the component.\n */\nexport function compile(templateElement, helper) {\n var _this = this;\n return function (data, context, propName, element, root) {\n var returnEle;\n if (context) {\n var plugins = context.vueInstance && context.vueInstance.plugins ? { plugins: context.vueInstance.plugins } : {};\n var vueInstance = context.vueInstance ? context.vueInstance :\n ((root && root.vueInstance) ? root.vueInstance : null);\n var pid = getUniqueID('templateParentDiv');\n var id = getUniqueID('templateDiv');\n var ele = createElement('div', {\n id: pid,\n innerHTML: '<div id=\"' + id + '\"></div>'\n });\n document.body.appendChild(ele);\n if (!isExecute && (typeof templateElement === 'string' || (templateElement.prototype && templateElement.prototype.CSPTemplate && typeof templateElement === 'function'))) {\n var vueSlot_1 = getCurrentVueSlot(context.vueInstance, templateElement, root);\n if (vueSlot_1) {\n // Compilation for Vue 3 slot template\n var app = Vue.createVNode({\n render: function () {\n return vueSlot_1[\"\" + templateElement]({ data: data });\n }\n }, plugins);\n ele.innerHTML = '';\n // Get values for Vue 3 slot template\n getValues(app, context.vueInstance, root);\n Vue.render(app, ele);\n returnEle = ele.childNodes;\n if (vueInstance) {\n var templateInstance = vueInstance.templateCollection;\n if (!templateInstance) {\n vueInstance.templateCollection = {};\n templateInstance = vueInstance.templateCollection;\n }\n if (propName) {\n if (!templateInstance[\"\" + propName]) {\n templateInstance[\"\" + propName] = [];\n }\n templateInstance[\"\" + propName].push(ele);\n }\n }\n detach(ele);\n }\n else {\n // Compilation for Vue 3 string template\n detach(ele);\n return stringCompiler(templateElement, helper)(data);\n }\n }\n else if (!isExecute) {\n // Compilation for Vue 3 functional template\n var tempObj = templateElement.call(_this, {});\n var object = tempObj;\n var propsData = getValue('template.propsData', tempObj);\n var dataObj_1 = {\n data: { data: extend(tempObj.data || {}, data) },\n parent: context.vueInstance\n };\n if (!object.template) {\n object.template = object[Object.keys(object)[0]];\n }\n var templateCompRef = void 0;\n if (object.template.extends) {\n templateCompRef = object.template.extends._context.components.template;\n }\n else {\n templateCompRef = object.template._context.components[templateElement.name];\n if (!templateCompRef) {\n var key = Object.keys(object.template._context.components)[0];\n templateCompRef = object.template._context.components[\"\" + key];\n }\n }\n var tempRef_1;\n if (propsData) {\n if (templateCompRef.setup) {\n tempRef_1 = Object.assign({}, propsData);\n }\n else {\n tempRef_1 = Object.assign(templateCompRef.data(), propsData);\n }\n }\n else {\n if (templateCompRef.setup) {\n tempRef_1 = Object.assign({}, dataObj_1.data);\n }\n else {\n tempRef_1 = Object.assign(templateCompRef.data(), dataObj_1.data);\n }\n if (templateCompRef.components) {\n var objkeys = Object.keys(templateCompRef.components) || [];\n var _loop_1 = function (objstring) {\n var intComponent = templateCompRef.components[\"\" + objstring];\n if (intComponent && intComponent.data) {\n if (!intComponent.__data) {\n intComponent.__data = intComponent.data;\n }\n intComponent.data = function (proxy) {\n return Object.assign(intComponent.__data.call(proxy), dataObj_1.data);\n };\n }\n };\n for (var _i = 0, objkeys_1 = objkeys; _i < objkeys_1.length; _i++) {\n var objstring = objkeys_1[_i];\n _loop_1(objstring);\n }\n }\n }\n if (templateCompRef.setup) {\n plugins = Object.assign(plugins, data);\n }\n templateCompRef.data = function () { return tempRef_1; };\n var app = Vue.createVNode(templateCompRef, plugins);\n ele.innerHTML = '';\n // Get values for Vue 3 functional template\n getValues(app, context.vueInstance, root);\n Vue.render(app, ele);\n returnEle = ele.childNodes;\n dataObj_1.parent = null;\n if (vueInstance) {\n var templateInstance = vueInstance.templateCollection;\n if (!templateInstance) {\n vueInstance.templateCollection = {};\n templateInstance = vueInstance.templateCollection;\n }\n if (propName) {\n if (!templateInstance[\"\" + propName]) {\n templateInstance[\"\" + propName] = [];\n }\n templateInstance[\"\" + propName].push(ele);\n }\n }\n detach(ele);\n }\n else if (typeof templateElement === 'string' || (templateElement.prototype && templateElement.prototype.CSPTemplate && typeof templateElement === 'function')) {\n var vueSlot_2 = getVueSlot(context.vueInstance, templateElement, root);\n if (vueSlot_2) {\n // Get provide values for Vue 2 slot template\n var provided_1 = {};\n var getProvideValues_1 = function (vueinstance) {\n if (vueinstance['$parent']) {\n getProvideValues_1(vueinstance.$parent);\n }\n if (vueinstance['_provided']) {\n // eslint-disable-next-line guard-for-in\n for (var key in vueinstance['_provided']) {\n // eslint-disable-next-line security/detect-object-injection\n provided_1[key] = vueinstance['_provided'][key];\n }\n }\n };\n var vueInstance_1 = context.vueInstance ? context.vueInstance :\n ((root && root.vueInstance) ? root.vueInstance : null);\n if (vueInstance_1) {\n getProvideValues_1(vueInstance_1);\n }\n // Compilation for Vue 2 slot template\n var vueTemplate = new Vue({\n provide: __assign({}, provided_1),\n render: function () {\n return vueSlot_2[\"\" + templateElement]({ data: data });\n }\n });\n vueTemplate.$mount('#' + id);\n returnEle = ele.childNodes;\n if (vueInstance_1) {\n var templateInstance = vueInstance_1.templateCollection;\n if (!templateInstance) {\n vueInstance_1.templateCollection = {};\n templateInstance = vueInstance_1.templateCollection;\n }\n if (propName) {\n if (!templateInstance[\"\" + propName]) {\n templateInstance[\"\" + propName] = [];\n }\n templateInstance[\"\" + propName].push(returnEle[0]);\n }\n }\n detach(ele);\n }\n else {\n // Compilation for Vue 2 string template\n detach(ele);\n return stringCompiler(templateElement, helper)(data);\n }\n }\n else {\n // Compilation for Vue 2 functional template\n var tempObj = templateElement.call(_this, {});\n var templateFunction = tempObj.template;\n var propsData = getValue('template.propsData', tempObj);\n var dataObj = {\n data: { data: extend(tempObj.data || {}, data) },\n parent: context.vueInstance\n };\n if (propsData) {\n templateFunction = tempObj.template.extends;\n dataObj.propsData = propsData;\n }\n if (typeof templateFunction !== 'function') {\n templateFunction = Vue.extend(templateFunction);\n }\n if (templateFunction.options.setup) {\n dataObj.propsData = Object.assign(dataObj.propsData || {}, data);\n }\n var templateVue = new templateFunction(dataObj);\n // let templateVue = new Vue(tempObj.template);\n // templateVue.$data.data = extend(tempObj.data, data);\n templateVue.$mount('#' + id);\n returnEle = ele.childNodes;\n dataObj.parent = null;\n if (vueInstance) {\n var templateInstance = vueInstance.templateCollection;\n if (!templateInstance) {\n vueInstance.templateCollection = {};\n templateInstance = vueInstance.templateCollection;\n }\n if (propName) {\n if (!templateInstance[\"\" + propName]) {\n templateInstance[\"\" + propName] = [];\n }\n templateInstance[\"\" + propName].push(returnEle[0]);\n }\n }\n detach(ele);\n }\n }\n return returnEle || [];\n };\n}\nsetTemplateEngine({ compile: compile });\n/**\n * Collect values from the app instance.\n *\n * @param {any} app - represents global application instance\n * @param {any} cInstance - represents Vue component instance\n * @param {any} root - represents parent component instance\n * @returns {void}\n */\nfunction getValues(app, cInstance, root) {\n var vueInstance = cInstance ? cInstance : ((root && root.vueInstance) ? root.vueInstance : null);\n if (!vueInstance) {\n return;\n }\n // Get globally defined variables.\n app['appContext'] = vueInstance['$']['appContext'];\n // Get provide value from child component.\n var provided = {};\n var getProvideValue = function (vueinstance) {\n if (vueinstance['$'] && vueinstance['$']['parent']) {\n getProvideValue(vueinstance.$.parent);\n }\n if (vueinstance['provides']) {\n // eslint-disable-next-line guard-for-in\n for (var key in vueinstance['provides']) {\n // eslint-disable-next-line security/detect-object-injection\n provided[key] = vueinstance['provides'][key];\n }\n }\n };\n getProvideValue(vueInstance);\n if (app['appContext']['provides']) {\n app.appContext.provides = __assign({}, app.appContext.provides, provided);\n }\n}\n/**\n * Get the Vue2 slot template from the root or current Vue component.\n *\n * @param {any} vueInstance - represents parent Vue instance.\n * @param {any} templateElement - represents component property value\n * @param {any} root - represents root Vue instance\n * @returns {any} template Vue instance\n */\nfunction getVueSlot(vueInstance, templateElement, root) {\n if (!vueInstance && !(root && root.vueInstance)) {\n return undefined;\n }\n var instance = (root && root.vueInstance) ? root.vueInstance : vueInstance;\n return getVueChildSlot(instance, templateElement);\n}\n/**\n * Get the Vue2 nested slot template from the root or current Vue component.\n *\n * @param {any} vueInstance - represents parent Vue instance.\n * @param {any} templateElement - represents component property value\n * @returns {any} nested template Vue instance\n */\nfunction getVueChildSlot(vueInstance, templateElement) {\n if (!vueInstance) {\n return undefined;\n }\n var slots = vueInstance.$slots;\n var scopedSlots = vueInstance.$scopedSlots;\n var vSlots = vueInstance.scopedSlots;\n var children = vueInstance.children;\n if (scopedSlots && scopedSlots[\"\" + templateElement]) {\n return scopedSlots;\n }\n else if (slots && slots.default) {\n var childSlots = slots.default;\n for (var i = 0; i < childSlots.length; i++) {\n var slot = getVueChildSlot(getSlot(childSlots[parseInt(i.toString(), 10)]), templateElement);\n if (slot) {\n return slot;\n }\n }\n }\n else if (vSlots && vSlots[\"\" + templateElement]) {\n return vSlots;\n }\n else if (children) {\n for (var i = 0; i < children.length; i++) {\n var slot = getVueChildSlot(getSlot(children[parseInt(i.toString(), 10)]), templateElement);\n if (slot) {\n return slot;\n }\n }\n }\n return undefined;\n}\n/**\n * Collect the component slot directive instance.\n *\n * @param {any} vnode - represents Vue components slot instance.\n * @returns {any} the slot instance of the directive.\n */\nfunction getSlot(vnode) {\n var slot = (vnode.componentOptions && vnode.componentOptions.children) ? vnode.componentOptions :\n (!vnode.data && (vnode.tag === 'e-markersettings' || vnode.tag === 'e-markersetting')) ? vnode : vnode.data;\n return vnode.componentInstance ? vnode.componentInstance : slot;\n}\n/**\n * Get the Vue3 slot template from the root or current Vue component.\n *\n * @param {any} vueInstance - represents parent Vue instance.\n * @param {any} templateElement - represents component property value\n * @param {any} root - represents root Vue instance\n * @returns {any} slot template instance\n */\nfunction getCurrentVueSlot(vueInstance, templateElement, root) {\n if (!vueInstance && !(root && root.vueInstance)) {\n return undefined;\n }\n var slots = (root && root.vueInstance) ? root.vueInstance.$slots : vueInstance.$slots;\n return getChildVueSlot(slots, templateElement);\n}\n/**\n * Get the Vue3 nested slot template from the root or current Vue component.\n *\n * @param {any} slots - represents slot instance.\n * @param {any} templateElement - represents component property value\n * @returns {any} nested template Vue instance\n */\nfunction getChildVueSlot(slots, templateElement) {\n if (slots && slots[\"\" + templateElement]) {\n return slots;\n }\n else if (slots && slots.default) {\n var childSlots = slots.default();\n childSlots = childSlots.flatMap(function (item) { return Array.isArray(item.children) ? item.children : item; });\n for (var i = 0; i < childSlots.length; i++) {\n var slot = getChildVueSlot(childSlots[parseInt(i.toString(), 10)].children, templateElement);\n if (slot) {\n return slot;\n }\n }\n }\n return undefined;\n}\n"],"names":["this","Vue"],"mappings":"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"}
1
+ {"version":3,"file":"ej2-vue-base.es5.js","sources":["../../src/component-base.js","../../src/template.js"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\n/**\n * Vue Component Base\n */\nimport * as Vue from 'vue';\nimport { isNullOrUndefined, extend, getValue, setProxyToRaw } from '@syncfusion/ej2-base';\n/**\n * Clone the Vue compiler instance.\n *\n * @param {any} obj - representes the Vue compiler.\n * @returns {any} cloned object of Vue compiler.\n */\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) {\n return obj;\n}\nelse {\n var newObj = {};\n if (obj != null) {\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n newObj[\"\" + key] = obj[\"\" + key];\n }\n }\n }\n newObj.default = obj;\n return newObj;\n} }\nvar curVue = _interopRequireWildcard(Vue);\nexport var isExecute = (parseInt(curVue['version'], 10) > 2) ? false : true;\nexport var aVue = !isExecute ? curVue : (curVue['default']['default'] ? curVue['default']['default'] : curVue['default']);\nexport var gh = curVue['h'];\nexport var vueDefineComponent = function (options) { return !isExecute ? aVue['defineComponent'](options) : aVue['extend'](options); };\nexport var ComponentBase = vueDefineComponent({\n name: 'ComponentBase',\n data: function () {\n return {\n tagMapper: {},\n tagNameMapper: {},\n hasInjectedModules: false,\n hasChildDirective: false,\n childDirObjects: '',\n propKeys: {},\n isDecorator: false\n };\n },\n created: function () {\n var _this = this;\n if (this.ej2Instance) {\n this.ej2Instances = this.isVue3 ? aVue.toRaw(this.ej2Instance) : this.ej2Instance;\n }\n if (!this.propKeys) {\n return;\n }\n var _loop_1 = function (prop) {\n this_1.ej2Instances.addEventListener(prop, function (args) {\n _this.$emit(prop, args);\n });\n };\n var this_1 = this;\n for (var _i = 0, _a = this.propKeys; _i < _a.length; _i++) {\n var prop = _a[_i];\n _loop_1(prop);\n }\n var injectables = getValue('$root.$options.provide', this);\n var vueInjectables = getValue('$parent.$options.provide', this);\n vueInjectables = !isNullOrUndefined(vueInjectables) ? vueInjectables : getValue('$.parent.provides', this);\n if (this.hasInjectedModules && !isExecute) {\n var prevModule = [];\n if (injectables && injectables.managed) {\n this.isDecorator = true;\n prevModule = this.getInjectedServices() || [];\n }\n else if (injectables) {\n prevModule = injectables[this.ej2Instances.getModuleName()] || [];\n }\n else if (vueInjectables) {\n prevModule = this.getInjectedServices() || [];\n }\n var curModule = this.ej2Instances.getInjectedModules() || [];\n for (var _b = 0, curModule_1 = curModule; _b < curModule_1.length; _b++) {\n var mod = curModule_1[_b];\n if (prevModule.indexOf(mod) === -1) {\n prevModule.push(mod);\n }\n }\n this.ej2Instances.injectedModules = prevModule;\n }\n },\n mounted: function () {\n var cusEle = this.$el ? this.$el.querySelectorAll('div.e-directive') : null;\n if (!isExecute && cusEle) {\n for (var i = 0; i < cusEle.length; i++) {\n var cusElement = cusEle[parseInt(i.toString(), 10)];\n if (cusElement.parentElement) {\n cusElement.parentElement.removeChild(cusElement);\n }\n }\n }\n this.ej2Instances.isVue = true;\n this.ej2Instances.isVue3 = this.isVue3;\n this.ej2Instances.vueInstance = this;\n if (this.isVue3) {\n this.ej2Instances.ej2Instances = this.ej2Instances;\n this.ej2Instances.referModels = this.models;\n this.setModelValue();\n }\n this.ej2Instances.appendTo(this.$el);\n },\n updated: function () {\n this.updated();\n },\n beforeDestroy: function () {\n this.destroyComponent();\n },\n beforeUnmount: function () {\n this.destroyComponent();\n },\n methods: {\n setModelValue: function () {\n if (!isNullOrUndefined(this.modelValue) || !isNullOrUndefined(this.$attrs.modelValue)) {\n var key = this.models.toString().match(/checked|value/) || [];\n var propKey = key[0];\n if (!isNullOrUndefined(propKey)) {\n this.ej2Instances[\"\" + propKey] = !isNullOrUndefined(this.modelValue) ? this.modelValue : this.$attrs.modelValue;\n }\n }\n },\n updated: function () {\n if (this.isVue3) {\n this.setModelValue();\n }\n if (this.hasChildDirective) {\n var childKey = {};\n this.fetchChildPropValues(childKey);\n var curChildDir = JSON.stringify(childKey);\n if (this.childDirObjects !== curChildDir) {\n this.childDirObjects = curChildDir;\n this.assignValueToWrapper(childKey, false);\n }\n }\n },\n getInjectedServices: function () {\n var ret = [];\n var provide;\n if (this.$root && this.isDecorator) {\n provide = getValue('$root.$options.provide', this);\n }\n else if (this.$vnode) {\n provide = getValue('$vnode.context.$options.provide', this);\n }\n else if (this.$parent) {\n provide = getValue('$parent.$options.provide', this);\n }\n if (isNullOrUndefined(provide) && !isNullOrUndefined(this.$)) {\n provide = getValue('$.parent.provides', this);\n }\n if (isExecute && isNullOrUndefined(provide) && this.$vnode) {\n provide = getValue('$vnode.context._provided', this);\n }\n if (provide) {\n var injectables = provide;\n if (typeof provide === 'function') {\n if (provide.managed) {\n var pKey = provide.managed;\n var pValue = Object.keys(pKey);\n var key = void 0;\n if (this.$root && this.isDecorator) {\n key = Object.keys(this.$root);\n }\n else if (this.$vnode) {\n key = Object.keys(this.$vnode.context);\n }\n else if (this.$parent) {\n key = Object.keys(this.$parent);\n }\n for (var i = 0; i < pValue.length; i++) {\n for (var j = 0; j < key.length; j++) {\n if ((key[parseInt(j.toString(), 10)].indexOf(pValue[parseInt(i.toString(), 10)])) !== -1) {\n if (this.$root && this.isDecorator) {\n pKey[pValue[parseInt(j.toString(), 10)]] = this.$root[key[parseInt(i.toString(), 10)]];\n }\n else if (this.$vnode) {\n pKey[pValue[parseInt(i.toString(), 10)]] = this.$vnode.context[key[parseInt(j.toString(), 10)]];\n }\n else if (this.$parent) {\n pKey[pValue[parseInt(i.toString(), 10)]] = this.$parent[key[parseInt(j.toString(), 10)]];\n }\n injectables = pKey;\n }\n }\n }\n }\n else if (this.$vnode) {\n injectables = this.$vnode.context.$options.provide();\n }\n else if (this.$parent) {\n injectables = this.$parent.$options.provide();\n }\n }\n ret = injectables[this.ej2Instances.getModuleName()] || [];\n }\n this.isDecorator = false;\n return ret;\n },\n destroyComponent: function () {\n this.ej2Instances.destroy();\n this.$el.style.visibility = 'hidden';\n this.clearTemplate();\n },\n destroyPortals: function (element) {\n if (element) {\n var destroy = getValue('__vue__.$destroy', element);\n if (destroy) {\n element.__vue__.$destroy();\n }\n else if (!isExecute && element._vnode) {\n try {\n aVue.render(null, element);\n }\n catch (e) { /* Handle error */ }\n }\n if (element.innerHTML) {\n element.innerHTML = '';\n }\n }\n },\n bindProperties: function () {\n var options = {};\n for (var _i = 0, _a = this.propKeys; _i < _a.length; _i++) {\n var prop = _a[_i];\n if (!isNullOrUndefined(this[\"\" + prop])) {\n options[\"\" + prop] = this[\"\" + prop];\n }\n else if (this[0] && !isNullOrUndefined(this[0][0]) && !isNullOrUndefined(this[0][0][\"\" + prop])) {\n options[\"\" + prop] = this[0][0][\"\" + prop];\n }\n }\n if (this.hasChildDirective) {\n this.fetchChildPropValues(options);\n }\n if (this.hasInjectedModules) {\n var prevModule = this.getInjectedServices() || [];\n var curModule = this.ej2Instances.getInjectedModules() || [];\n for (var _b = 0, curModule_2 = curModule; _b < curModule_2.length; _b++) {\n var mod = curModule_2[_b];\n if (prevModule.indexOf(mod) === -1) {\n prevModule.push(mod);\n }\n }\n this.ej2Instances.injectedModules = prevModule;\n }\n this.assignValueToWrapper(options);\n },\n assignValueToWrapper: function (option, silent) {\n this.ej2Instances.setProperties(extend({}, {}, option, true), isNullOrUndefined(silent) ? true : silent);\n },\n fetchChildPropValues: function (childOption) {\n var dirProps = {};\n if (!this.isVue3) {\n dirProps = this.getDirectiveValues(this.$slots.default, this.tagMapper || {}, this.tagNameMapper || {});\n }\n else {\n var propRef = void 0;\n if (this[0] && this[0][1].slots.default) {\n propRef = this[0][1].slots.default();\n }\n else if (this && this.$ && this.$.slots && this.$.slots.default) {\n propRef = this.$.slots.default();\n }\n if (propRef) {\n for (var i = 0; i < propRef.length; i++) {\n if (propRef[parseInt(i.toString(), 10)].type.methods || propRef[parseInt(i.toString(), 10)].type === 'e-seriescollection') {\n var key = propRef[parseInt(i.toString(), 10)].type === 'e-seriescollection' ? 'series-collection' :\n propRef[parseInt(i.toString(), 10)].type.methods.getTag().replace('e-', '');\n var ref = this.resolveArrayDirectives(propRef[parseInt(i.toString(), 10)].children, key);\n var spKeys = key.split('-');\n var controlName = this.ej2Instances.getModuleName().toLowerCase();\n var keyRef = (spKeys.length > 1 && controlName.indexOf(spKeys[0]) > -1) ? spKeys[1] : spKeys[0];\n keyRef = keyRef.replace(controlName, '');\n keyRef = this.tagNameMapper['e-' + key] ? this.tagNameMapper['e-' + key].replace('e-', '') : keyRef;\n if (controlName === 'splitter' && keyRef === 'panes') {\n keyRef = 'paneSettings';\n }\n else if (controlName === 'bulletchart' && keyRef === 'range') {\n keyRef = 'ranges';\n }\n else if (controlName === 'schedule' && keyRef === 'header') {\n keyRef = 'headerRows';\n }\n dirProps[\"\" + keyRef] = ref[\"\" + key];\n }\n }\n }\n else {\n return;\n }\n }\n if (!this.childDirObjects) {\n this.childDirObjects = JSON.stringify(dirProps);\n }\n for (var _i = 0, _a = Object.keys(dirProps); _i < _a.length; _i++) {\n var dirProp = _a[_i];\n childOption[\"\" + dirProp] = dirProps[\"\" + dirProp];\n }\n },\n resolveArrayDirectives: function (slots, tagName) {\n var slot = [];\n var innerDirValues;\n slot = slots.default ? slots.default() : slots;\n slot = slot.flatMap(function (item) { return Array.isArray(item.children) ? item.children : item; });\n var items = {};\n items[\"\" + tagName] = [];\n var _loop_2 = function (childSlot) {\n var tempObj = {};\n var tagRef = childSlot.type.methods ? childSlot.type.methods.getTag() : tagName;\n if (childSlot.children) {\n var key = void 0;\n innerDirValues = this_2.resolveComplexDirs(childSlot.children, this_2.tagMapper['e-' + tagName], tagRef);\n if (innerDirValues.length) {\n tempObj = innerDirValues;\n }\n else {\n for (var i = 0; i < Object.keys(innerDirValues).length; i++) {\n key = Object.keys(innerDirValues)[parseInt(i.toString(), 10)];\n tempObj[\"\" + key] = innerDirValues[\"\" + key];\n }\n }\n }\n if (childSlot.props) {\n Object.keys(childSlot.props).forEach(function (key) {\n var propName = key.replace(/-[a-z]/g, function (e) { return e[1].toUpperCase(); });\n if (propName) {\n tempObj[\"\" + propName] = childSlot.props[\"\" + key];\n }\n });\n }\n if (((/[s]\\b/).test(tagRef) && innerDirValues) && (!(/[s]\\b/).test(tagName) || innerDirValues.length)) {\n if (Array.isArray(tempObj)) {\n tempObj.forEach(function (item) { items[\"\" + tagName].push(item); });\n }\n else {\n items[\"\" + tagName].push(tempObj);\n }\n }\n else if (tempObj && Object.keys(tempObj).length !== 0) {\n items[\"\" + tagName].push(tempObj);\n }\n };\n var this_2 = this;\n for (var _i = 0, slot_1 = slot; _i < slot_1.length; _i++) {\n var childSlot = slot_1[_i];\n _loop_2(childSlot);\n }\n return items;\n },\n resolveComplexDirs: function (slots, tagObject, tagName) {\n var slot = [];\n var innerDirValues;\n slot = slots.default ? slots.default() : slots;\n var items = {};\n var _loop_3 = function (childSlot) {\n var tagRef = void 0;\n var tag = void 0;\n if (tagObject[\"\" + tagName]) {\n tagRef = Object.keys(tagObject[\"\" + tagName]);\n tag = tagRef.find(function (key) {\n return tagObject[\"\" + tagName][\"\" + key] ===\n childSlot.type.methods.getTag().replace(/[s]\\b/, '');\n });\n tag = tag ? tag : childSlot.type.methods.getTag();\n tag = (this_3.tagNameMapper[\"\" + tag] ? this_3.tagNameMapper[\"\" + tag] : tag).replace('e-', '');\n if (this_3.ej2Instances.getModuleName().toLowerCase() === 'diagram' && tag.indexOf('annotations') !== -1) {\n tag = 'annotations';\n }\n }\n if (childSlot.children) {\n innerDirValues = this_3.resolveComplexInnerDirs(childSlot.children, tagObject[\"\" + tagName], childSlot.type.methods.getTag());\n if (!items[\"\" + tag]) {\n items[\"\" + tag] = [];\n }\n if (innerDirValues.length > 1) {\n items[\"\" + tag] = innerDirValues;\n }\n else {\n items[\"\" + tag].push(innerDirValues);\n }\n }\n if (childSlot.props) {\n childSlot.props = this_3.getCamelCaseProps(childSlot.props);\n }\n if (slot.length > 1) {\n items = Object.keys(items).length === 0 && !items.length ? [] : items;\n if (childSlot.props) {\n items.push(childSlot.props);\n }\n }\n else {\n items = childSlot.props ? Object.assign(items, childSlot.props) : items;\n }\n };\n var this_3 = this;\n for (var _i = 0, slot_2 = slot; _i < slot_2.length; _i++) {\n var childSlot = slot_2[_i];\n _loop_3(childSlot);\n }\n return items;\n },\n resolveComplexInnerDirs: function (slots, tagObject, tagName) {\n var slot = [];\n slot = slots.default ? slots.default() : slots;\n var items = slot.length > 1 ? [] : {};\n for (var _i = 0, slot_3 = slot; _i < slot_3.length; _i++) {\n var childSlot = slot_3[_i];\n var innerDirValues = null;\n var tag = childSlot.type.methods.getTag();\n tag = (this.tagNameMapper[\"\" + tag] ? this.tagNameMapper[\"\" + tag] : tag).replace('e-', '');\n if (childSlot.children) {\n innerDirValues = this.resolveMultilevelComplexInnerDirs(childSlot.children, tagObject[\"\" + tagName], childSlot.type.methods.getTag());\n if ((/[s]\\b/).test(tag) || slot.length > 1) {\n if ((/[s]\\b/).test(tag)) {\n items[\"\" + tag] = !items[\"\" + tag] ? [] : items[\"\" + tag];\n if (innerDirValues.length) {\n items[\"\" + tag] = innerDirValues;\n }\n else {\n items[\"\" + tag].push(innerDirValues);\n }\n }\n else if (innerDirValues && !childSlot.props) {\n items.push(innerDirValues);\n }\n }\n else {\n items = innerDirValues ? innerDirValues : items;\n }\n }\n if (childSlot.props) {\n childSlot.props = this.getCamelCaseProps(childSlot.props);\n }\n if (slot.length > 1 && childSlot.props) {\n if (innerDirValues) {\n innerDirValues = childSlot.props ? Object.assign(innerDirValues, childSlot.props) : innerDirValues;\n items.push(innerDirValues);\n }\n else if (items.length >= 0) {\n items.push(childSlot.props);\n }\n else {\n items = childSlot.props ? Object.assign(items, childSlot.props) : items;\n }\n }\n else {\n items = childSlot.props ? Object.assign(items, childSlot.props) : items;\n }\n }\n return items;\n },\n resolveMultilevelComplexInnerDirs: function (slots, tagObject, tagName) {\n var slot = [];\n slot = slots.default ? slots.default() : slots;\n var items = slot.length > 1 ? [] : {};\n for (var _i = 0, slot_4 = slot; _i < slot_4.length; _i++) {\n var childSlot = slot_4[_i];\n var innerDirValues = null;\n var tag = childSlot.type.methods.getTag();\n tag = (this.tagNameMapper[\"\" + tag] ? this.tagNameMapper[\"\" + tag] : tag).replace('e-', '');\n if (childSlot.children) {\n innerDirValues = this.resolveComplexInnerDirs(childSlot.children, tagObject[\"\" + tagName], childSlot.type.methods.getTag());\n }\n if (childSlot.props) {\n childSlot.props = this.getCamelCaseProps(childSlot.props);\n }\n if ((/[s]\\b/).test(tag)) {\n items[\"\" + tag] = !items[\"\" + tag] ? [] : items[\"\" + tag];\n if (innerDirValues.length) {\n items[\"\" + tag] = innerDirValues;\n }\n else {\n items[\"\" + tag].push(innerDirValues);\n }\n if (childSlot.props) {\n items[\"\" + tag].push(childSlot.props);\n }\n }\n else {\n items = innerDirValues;\n items = childSlot.props ? Object.assign(items, childSlot.props) : items;\n }\n }\n return items;\n },\n getDirectiveValues: function (tagDirectives, tagMapper, tagNameMapper) {\n var keyTags = Object.keys(tagMapper);\n var dir = {};\n if (tagDirectives) {\n for (var _i = 0, tagDirectives_1 = tagDirectives; _i < tagDirectives_1.length; _i++) {\n var tagDirective = tagDirectives_1[_i];\n var tagCompOption = tagDirective.componentOptions;\n if (tagCompOption && tagCompOption.children && this.getTagName(tagCompOption) ||\n (tagDirective.tag === 'e-seriescollection' && tagDirective.children)) {\n var dirTag = tagCompOption ? this.getTagName(tagCompOption) : tagDirective.tag;\n dirTag = (dirTag === 'e-seriescollection') ? 'e-seriesCollection' : dirTag;\n if (keyTags.indexOf(dirTag) !== -1) {\n var tagName = tagNameMapper[\"\" + dirTag] ? tagNameMapper[\"\" + dirTag] : dirTag;\n dir[tagName.replace('e-', '')] = [];\n var children = tagCompOption ? tagCompOption.children : tagDirective.children;\n for (var _a = 0, children_1 = children; _a < children_1.length; _a++) {\n var tagDirChild = children_1[_a];\n var retObj = this.getVNodeValue(tagDirChild, tagMapper[\"\" + dirTag], tagNameMapper);\n if (Object.keys(retObj).length !== 0) {\n dir[tagName.replace('e-', '')].push(retObj);\n }\n }\n }\n }\n }\n }\n return dir;\n },\n getMultiLevelDirValue: function (tagDirectories, tagKey, tagNameMapper) {\n var mulObj = {};\n for (var _i = 0, tagDirectories_1 = tagDirectories; _i < tagDirectories_1.length; _i++) {\n var tagDir = tagDirectories_1[_i];\n var key = void 0;\n var children = void 0;\n if (tagDir.componentOptions) {\n key = this.getTagName(tagDir.componentOptions);\n if (tagDir.componentOptions.children) {\n children = tagDir.componentOptions.children;\n }\n }\n else if ((tagDir.tag === 'e-markersettings' || tagDir.tag === 'e-markersetting') && tagDir.children) {\n key = (tagDir.tag === 'e-markersettings') ? 'e-markerSettings' : 'e-markerSetting';\n children = tagDir.children;\n }\n if (key) {\n var tagName = tagNameMapper[\"\" + key] ? tagNameMapper[\"\" + key] : key;\n mulObj[tagName.replace('e-', '')] = [];\n if (children) {\n for (var _a = 0, children_2 = children; _a < children_2.length; _a++) {\n var tagDirChild = children_2[_a];\n var mulLevObj = this.getVNodeValue(tagDirChild, tagKey[\"\" + key], tagNameMapper);\n if (Object.keys(mulLevObj).length !== 0) {\n mulObj[tagName.replace('e-', '')].push(mulLevObj);\n }\n }\n }\n }\n }\n return mulObj;\n },\n getVNodeValue: function (tagDirective, tagKey, tagNameMapper) {\n var ret = {};\n if (tagDirective.componentOptions || ((tagDirective.tag === 'e-markersettings' || tagDirective.tag === 'e-markersetting') && tagDirective.context)) {\n var dirTag = void 0;\n if (tagDirective.componentOptions) {\n dirTag = this.getTagName(tagDirective.componentOptions);\n }\n else {\n dirTag = (tagDirective.tag === 'e-markersettings') ? 'e-markerSettings' : 'e-markerSetting';\n }\n var tagData = tagDirective.data;\n if (typeof tagKey === 'string' && dirTag === tagKey && tagData) {\n ret = tagData.attrs ? this.getCamelCaseProps(tagData.attrs) : this.getCamelCaseProps(tagData);\n }\n else if (typeof tagKey === 'object') {\n if (tagDirective.componentOptions.children && (Object.keys(tagKey).indexOf(dirTag) !== -1)) {\n ret = this.getMultiLevelDirValue(tagDirective.componentOptions.children, tagKey[\"\" + dirTag], tagNameMapper);\n }\n else if (tagDirective.children && (Object.keys(tagKey).indexOf(dirTag) !== -1) && (dirTag === 'e-markersettings' || dirTag === 'e-markersetting')) {\n ret = this.getMultiLevelDirValue(tagDirective.children, tagKey[\"\" + dirTag], tagNameMapper);\n }\n if (tagData && tagData.attrs) {\n ret = extend(ret, this.getCamelCaseProps(tagData.attrs));\n }\n }\n }\n return ret;\n },\n /**\n * convert kebab case directive props to camel case.\n *\n * @param {Object} props - Objects in kebab case directive props.\n * @returns {Object} Object converted into camel case directive props.\n */\n getCamelCaseProps: function (props) {\n var retProps = {};\n for (var _i = 0, _a = Object.keys(props); _i < _a.length; _i++) {\n var prop = _a[_i];\n retProps[prop.replace(/-[a-z]/g, function (e) { return e[1].toUpperCase(); })] = props[\"\" + prop];\n }\n return retProps;\n },\n dataBind: function () {\n this.ej2Instances.dataBind();\n },\n setProperties: function (arg, muteOnChange) {\n return this.ej2Instances.setProperties(arg, muteOnChange);\n },\n getTagName: function (options) {\n var tag = options.tag;\n var optCtor = options.Ctor;\n if (!tag && optCtor && optCtor.extendOptions && optCtor.extendOptions.methods && optCtor.extendOptions.methods.getTag) {\n tag = options.Ctor.extendOptions.methods.getTag();\n }\n return tag;\n }\n }\n});\n/**\n * Collect public property values for the Vue component.\n *\n * @param {any} options - represents props object.\n * @returns {any} array of props object and `watchobject` respectively.\n */\nexport function getProps(options) {\n if (options === void 0) { options = {}; }\n if (options.props) {\n var _loop_4 = function (prop) {\n (options.newprops || (options.newprops = {}))[\"\" + prop] = {};\n (options.watch || (options.watch = {}))[\"\" + prop] = function (newVal) {\n this.ej2Instances[\"\" + prop] = newVal;\n if (this.dataBind && (options.name !== 'DateRangePickerComponent')) {\n this.dataBind();\n }\n };\n };\n for (var _i = 0, _a = options.props; _i < _a.length; _i++) {\n var prop = _a[_i];\n _loop_4(prop);\n }\n }\n return [options.newprops, options.watch];\n}\nif (!isExecute) {\n setProxyToRaw(aVue.toRaw);\n}\n","var __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\n/* eslint-disable @typescript-eslint/no-explicit-any, @typescript-eslint/explicit-module-boundary-types */\nimport { setTemplateEngine, getTemplateEngine, getUniqueID, createElement, detach, extend, getValue } from '@syncfusion/ej2-base';\nimport { aVue as Vue, isExecute } from './component-base';\nvar stringCompiler = getTemplateEngine();\n/**\n * Returns true if the given Vue 3 component instance is inside a keep-alive.\n *\n * @param {any} vueInstance - Vue component instance.\n * @returns {boolean} Returns true when inside keep-alive.\n */\nfunction isInsideKeepAlive(vueInstance) {\n var parent = vueInstance && vueInstance.$ && vueInstance.$.parent;\n while (parent) {\n if (parent.type && parent.type.__isKeepAlive) {\n return true;\n }\n parent = parent.parent;\n }\n return false;\n}\n/**\n * Collect activated/deactivated hooks from rendered vnode tree.\n *\n * @param {any} vnode - VNode instance.\n * @param {any[]} out - Collection of hooks.\n * @returns {void}\n */\nfunction collectHooks(vnode, out) {\n if (!vnode) {\n return;\n }\n var ci = vnode.component;\n if (ci && ci.type && ci.proxy && !ci.isUnmounted) {\n if (typeof ci.type.activated === 'function' ||\n typeof ci.type.deactivated === 'function') {\n out.push({\n activated: ci.type.activated ?\n ci.type.activated.bind(ci.proxy) : null,\n deactivated: ci.type.deactivated ?\n ci.type.deactivated.bind(ci.proxy) : null\n });\n }\n collectHooks(ci.subTree, out);\n }\n if (Array.isArray(vnode.children)) {\n for (var i = 0; i < vnode.children.length; i++) {\n // eslint-disable-next-line security/detect-object-injection\n collectHooks(vnode.children[i], out);\n }\n }\n}\n/**\n * Collect hooks from template collection.\n *\n * @param {any} proxy - Vue component proxy.\n * @returns {any[]} Returns collected hooks.\n */\nfunction collectFromTemplates(proxy) {\n var hooks = [];\n var tc = proxy.templateCollection;\n if (!tc) {\n return hooks;\n }\n var keys = Object.keys(tc);\n for (var k = 0; k < keys.length; k++) {\n // eslint-disable-next-line security/detect-object-injection\n var key = keys[k];\n // eslint-disable-next-line security/detect-object-injection\n var elems = tc[key];\n for (var i = 0; i < elems.length; i++) {\n // eslint-disable-next-line security/detect-object-injection\n var ele = elems[i];\n if (ele && ele._vnode) {\n collectHooks(ele._vnode, hooks);\n }\n }\n }\n return hooks;\n}\n/**\n * Patch keep-alive lifecycle handling for slot templates.\n *\n * @param {any} vueInstance - Vue component instance.\n * @param {any} app - Rendered vnode.\n * @returns {void}\n */\nfunction patchKeepAlive(vueInstance, app) {\n // Walk up to find the direct child of keep-alive.\n var start = vueInstance.$;\n var cur = start;\n var keepAliveChild = null;\n while (cur) {\n if (cur.parent &&\n cur.parent.type &&\n cur.parent.type.__isKeepAlive) {\n keepAliveChild = cur;\n break;\n }\n cur = cur.parent;\n }\n if (!keepAliveChild) {\n return;\n }\n // templateCollection is on ejs-grid vueInstance\n var gridProxy = vueInstance;\n if (!keepAliveChild.isDeactivated) {\n var immediateHooks = [];\n collectHooks(app, immediateHooks);\n immediateHooks.forEach(function (h) {\n var activated = h.activated;\n if (activated) {\n activated();\n }\n });\n }\n if (!keepAliveChild._sfPatched) {\n keepAliveChild._sfPatched = true;\n (keepAliveChild.a || (keepAliveChild.a = [])).push(function () {\n collectFromTemplates(gridProxy).forEach(function (h) {\n var activated = h.activated;\n if (activated) {\n activated();\n }\n });\n });\n (keepAliveChild.da || (keepAliveChild.da = [])).push(function () {\n collectFromTemplates(gridProxy).forEach(function (h) {\n var deactivated = h.deactivated;\n if (deactivated) {\n deactivated();\n }\n });\n });\n }\n}\n/**\n * Compiler function that convert the template property to DOM element.\n *\n * @param {any} templateElement - represents value of the template property from the component.\n * @param {Object} helper - represents helper object to utilize on template compilation.\n * @returns {NodeList} template element that append to the component.\n */\nexport function compile(templateElement, helper) {\n var _this = this;\n return function (data, context, propName, element, root) {\n var returnEle;\n if (context) {\n var plugins = context.vueInstance && context.vueInstance.plugins ? { plugins: context.vueInstance.plugins } : {};\n var vueInstance = context.vueInstance ? context.vueInstance :\n ((root && root.vueInstance) ? root.vueInstance : null);\n var pid = getUniqueID('templateParentDiv');\n var id = getUniqueID('templateDiv');\n var ele = createElement('div', {\n id: pid,\n innerHTML: '<div id=\"' + id + '\"></div>'\n });\n document.body.appendChild(ele);\n if (!isExecute && (typeof templateElement === 'string' || (templateElement.prototype && templateElement.prototype.CSPTemplate && typeof templateElement === 'function'))) {\n var vueSlot_1 = getCurrentVueSlot(context.vueInstance, templateElement, root);\n if (vueSlot_1) {\n // Compilation for Vue 3 slot template\n var app = Vue.createVNode({\n render: function () {\n return vueSlot_1[\"\" + templateElement]({ data: data });\n }\n }, plugins);\n ele.innerHTML = '';\n // Get values for Vue 3 slot template\n getValues(app, context.vueInstance, root);\n Vue.render(app, ele);\n returnEle = ele.childNodes;\n if (vueInstance) {\n var templateInstance = vueInstance.templateCollection;\n if (!templateInstance) {\n vueInstance.templateCollection = {};\n templateInstance = vueInstance.templateCollection;\n }\n if (propName) {\n if (!templateInstance[\"\" + propName]) {\n templateInstance[\"\" + propName] = [];\n }\n templateInstance[\"\" + propName].push(ele);\n }\n // Keep-alive support for Vue 3 slot templates.\n if (isInsideKeepAlive(vueInstance)) {\n patchKeepAlive(vueInstance, app);\n }\n }\n detach(ele);\n }\n else {\n // Compilation for Vue 3 string template\n detach(ele);\n return stringCompiler(templateElement, helper)(data);\n }\n }\n else if (!isExecute) {\n // Compilation for Vue 3 functional template\n var tempObj = templateElement.call(_this, {});\n var object = tempObj;\n var propsData = getValue('template.propsData', tempObj);\n var dataObj_1 = {\n data: { data: extend(tempObj.data || {}, data) },\n parent: context.vueInstance\n };\n if (!object.template) {\n object.template = object[Object.keys(object)[0]];\n }\n var templateCompRef = void 0;\n if (object.template.extends) {\n templateCompRef = object.template.extends._context.components.template;\n }\n else {\n templateCompRef = object.template._context.components[templateElement.name];\n if (!templateCompRef) {\n var key = Object.keys(object.template._context.components)[0];\n templateCompRef = object.template._context.components[\"\" + key];\n }\n }\n var tempRef_1;\n if (propsData) {\n if (templateCompRef.setup) {\n tempRef_1 = Object.assign({}, propsData);\n }\n else {\n tempRef_1 = Object.assign(templateCompRef.data(), propsData);\n }\n }\n else {\n if (templateCompRef.setup) {\n tempRef_1 = Object.assign({}, dataObj_1.data);\n }\n else {\n tempRef_1 = Object.assign(templateCompRef.data(), dataObj_1.data);\n }\n if (templateCompRef.components) {\n var objkeys = Object.keys(templateCompRef.components) || [];\n var _loop_1 = function (objstring) {\n var intComponent = templateCompRef.components[\"\" + objstring];\n if (intComponent && intComponent.data) {\n if (!intComponent.__data) {\n intComponent.__data = intComponent.data;\n }\n intComponent.data = function (proxy) {\n return Object.assign(intComponent.__data.call(proxy), dataObj_1.data);\n };\n }\n };\n for (var _i = 0, objkeys_1 = objkeys; _i < objkeys_1.length; _i++) {\n var objstring = objkeys_1[_i];\n _loop_1(objstring);\n }\n }\n }\n if (templateCompRef.setup) {\n plugins = Object.assign(plugins, data);\n }\n templateCompRef.data = function () { return tempRef_1; };\n var app = Vue.createVNode(templateCompRef, plugins);\n ele.innerHTML = '';\n // Get values for Vue 3 functional template\n getValues(app, context.vueInstance, root);\n Vue.render(app, ele);\n returnEle = ele.childNodes;\n dataObj_1.parent = null;\n if (vueInstance) {\n var templateInstance = vueInstance.templateCollection;\n if (!templateInstance) {\n vueInstance.templateCollection = {};\n templateInstance = vueInstance.templateCollection;\n }\n if (propName) {\n if (!templateInstance[\"\" + propName]) {\n templateInstance[\"\" + propName] = [];\n }\n templateInstance[\"\" + propName].push(ele);\n }\n }\n detach(ele);\n }\n else if (typeof templateElement === 'string' || (templateElement.prototype && templateElement.prototype.CSPTemplate && typeof templateElement === 'function')) {\n var vueSlot_2 = getVueSlot(context.vueInstance, templateElement, root);\n if (vueSlot_2) {\n // Get provide values for Vue 2 slot template\n var provided_1 = {};\n var getProvideValues_1 = function (vueinstance) {\n if (vueinstance['$parent']) {\n getProvideValues_1(vueinstance.$parent);\n }\n if (vueinstance['_provided']) {\n // eslint-disable-next-line guard-for-in\n for (var key in vueinstance['_provided']) {\n // eslint-disable-next-line security/detect-object-injection\n provided_1[key] = vueinstance['_provided'][key];\n }\n }\n };\n var vueInstance_1 = context.vueInstance ? context.vueInstance :\n ((root && root.vueInstance) ? root.vueInstance : null);\n if (vueInstance_1) {\n getProvideValues_1(vueInstance_1);\n }\n // Compilation for Vue 2 slot template\n var vueTemplate = new Vue({\n provide: __assign({}, provided_1),\n render: function () {\n return vueSlot_2[\"\" + templateElement]({ data: data });\n }\n });\n vueTemplate.$mount('#' + id);\n returnEle = ele.childNodes;\n if (vueInstance_1) {\n var templateInstance = vueInstance_1.templateCollection;\n if (!templateInstance) {\n vueInstance_1.templateCollection = {};\n templateInstance = vueInstance_1.templateCollection;\n }\n if (propName) {\n if (!templateInstance[\"\" + propName]) {\n templateInstance[\"\" + propName] = [];\n }\n templateInstance[\"\" + propName].push(returnEle[0]);\n }\n }\n detach(ele);\n }\n else {\n // Compilation for Vue 2 string template\n detach(ele);\n return stringCompiler(templateElement, helper)(data);\n }\n }\n else {\n // Compilation for Vue 2 functional template\n var tempObj = templateElement.call(_this, {});\n var templateFunction = tempObj.template;\n var propsData = getValue('template.propsData', tempObj);\n var dataObj = {\n data: { data: extend(tempObj.data || {}, data) },\n parent: context.vueInstance\n };\n if (propsData) {\n templateFunction = tempObj.template.extends;\n dataObj.propsData = propsData;\n }\n if (typeof templateFunction !== 'function') {\n templateFunction = Vue.extend(templateFunction);\n }\n if (templateFunction.options.setup) {\n dataObj.propsData = Object.assign(dataObj.propsData || {}, data);\n }\n var templateVue = new templateFunction(dataObj);\n // let templateVue = new Vue(tempObj.template);\n // templateVue.$data.data = extend(tempObj.data, data);\n templateVue.$mount('#' + id);\n returnEle = ele.childNodes;\n dataObj.parent = null;\n if (vueInstance) {\n var templateInstance = vueInstance.templateCollection;\n if (!templateInstance) {\n vueInstance.templateCollection = {};\n templateInstance = vueInstance.templateCollection;\n }\n if (propName) {\n if (!templateInstance[\"\" + propName]) {\n templateInstance[\"\" + propName] = [];\n }\n templateInstance[\"\" + propName].push(returnEle[0]);\n }\n }\n detach(ele);\n }\n }\n return returnEle || [];\n };\n}\nsetTemplateEngine({ compile: compile });\n/**\n * Collect values from the app instance.\n *\n * @param {any} app - represents global application instance\n * @param {any} cInstance - represents Vue component instance\n * @param {any} root - represents parent component instance\n * @returns {void}\n */\nfunction getValues(app, cInstance, root) {\n var vueInstance = cInstance ? cInstance : ((root && root.vueInstance) ? root.vueInstance : null);\n if (!vueInstance) {\n return;\n }\n // Get globally defined variables.\n app['appContext'] = vueInstance['$']['appContext'];\n // Get provide value from child component.\n var provided = {};\n var getProvideValue = function (vueinstance) {\n if (vueinstance['$'] && vueinstance['$']['parent']) {\n getProvideValue(vueinstance.$.parent);\n }\n if (vueinstance['provides']) {\n // eslint-disable-next-line guard-for-in\n for (var key in vueinstance['provides']) {\n // eslint-disable-next-line security/detect-object-injection\n provided[key] = vueinstance['provides'][key];\n }\n }\n };\n getProvideValue(vueInstance);\n if (app['appContext']['provides']) {\n app.appContext.provides = __assign({}, app.appContext.provides, provided);\n }\n}\n/**\n * Get the Vue2 slot template from the root or current Vue component.\n *\n * @param {any} vueInstance - represents parent Vue instance.\n * @param {any} templateElement - represents component property value\n * @param {any} root - represents root Vue instance\n * @returns {any} template Vue instance\n */\nfunction getVueSlot(vueInstance, templateElement, root) {\n if (!vueInstance && !(root && root.vueInstance)) {\n return undefined;\n }\n var instance = (root && root.vueInstance) ? root.vueInstance : vueInstance;\n return getVueChildSlot(instance, templateElement);\n}\n/**\n * Get the Vue2 nested slot template from the root or current Vue component.\n *\n * @param {any} vueInstance - represents parent Vue instance.\n * @param {any} templateElement - represents component property value\n * @returns {any} nested template Vue instance\n */\nfunction getVueChildSlot(vueInstance, templateElement) {\n if (!vueInstance) {\n return undefined;\n }\n var slots = vueInstance.$slots;\n var scopedSlots = vueInstance.$scopedSlots;\n var vSlots = vueInstance.scopedSlots;\n var children = vueInstance.children;\n if (scopedSlots && scopedSlots[\"\" + templateElement]) {\n return scopedSlots;\n }\n else if (slots && slots.default) {\n var childSlots = slots.default;\n for (var i = 0; i < childSlots.length; i++) {\n var slot = getVueChildSlot(getSlot(childSlots[parseInt(i.toString(), 10)]), templateElement);\n if (slot) {\n return slot;\n }\n }\n }\n else if (vSlots && vSlots[\"\" + templateElement]) {\n return vSlots;\n }\n else if (children) {\n for (var i = 0; i < children.length; i++) {\n var slot = getVueChildSlot(getSlot(children[parseInt(i.toString(), 10)]), templateElement);\n if (slot) {\n return slot;\n }\n }\n }\n return undefined;\n}\n/**\n * Collect the component slot directive instance.\n *\n * @param {any} vnode - represents Vue components slot instance.\n * @returns {any} the slot instance of the directive.\n */\nfunction getSlot(vnode) {\n var slot = (vnode.componentOptions && vnode.componentOptions.children) ? vnode.componentOptions :\n (!vnode.data && (vnode.tag === 'e-markersettings' || vnode.tag === 'e-markersetting')) ? vnode : vnode.data;\n return vnode.componentInstance ? vnode.componentInstance : slot;\n}\n/**\n * Get the Vue3 slot template from the root or current Vue component.\n *\n * @param {any} vueInstance - represents parent Vue instance.\n * @param {any} templateElement - represents component property value\n * @param {any} root - represents root Vue instance\n * @returns {any} slot template instance\n */\nfunction getCurrentVueSlot(vueInstance, templateElement, root) {\n if (!vueInstance && !(root && root.vueInstance)) {\n return undefined;\n }\n var slots = (root && root.vueInstance) ? root.vueInstance.$slots : vueInstance.$slots;\n return getChildVueSlot(slots, templateElement);\n}\n/**\n * Get the Vue3 nested slot template from the root or current Vue component.\n *\n * @param {any} slots - represents slot instance.\n * @param {any} templateElement - represents component property value\n * @returns {any} nested template Vue instance\n */\nfunction getChildVueSlot(slots, templateElement) {\n if (slots && slots[\"\" + templateElement]) {\n return slots;\n }\n else if (slots && slots.default) {\n var childSlots = slots.default();\n childSlots = childSlots.flatMap(function (item) { return Array.isArray(item.children) ? item.children : item; });\n for (var i = 0; i < childSlots.length; i++) {\n var slot = getChildVueSlot(childSlots[parseInt(i.toString(), 10)].children, templateElement);\n if (slot) {\n return slot;\n }\n }\n }\n return undefined;\n}\n"],"names":["this","Vue"],"mappings":"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"}