{"version":3,"file":"static/js/1414.c92fb6d5.js","mappings":"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","sources":["webpack://finnish-art/./node_modules/devextreme-vue/core/children-processing.js","webpack://finnish-art/./node_modules/devextreme-vue/core/component.js","webpack://finnish-art/./node_modules/devextreme-vue/core/config.js","webpack://finnish-art/./node_modules/devextreme-vue/core/configuration-component.js","webpack://finnish-art/./node_modules/devextreme-vue/core/configuration.js","webpack://finnish-art/./node_modules/devextreme-vue/core/constants.js","webpack://finnish-art/./node_modules/devextreme-vue/core/extension-component.js","webpack://finnish-art/./node_modules/devextreme-vue/core/helpers.js","webpack://finnish-art/./node_modules/devextreme-vue/core/index.js","webpack://finnish-art/./node_modules/devextreme-vue/core/strategy/vue2/children-processing.js","webpack://finnish-art/./node_modules/devextreme-vue/core/strategy/vue2/component.js","webpack://finnish-art/./node_modules/devextreme-vue/core/strategy/vue2/config.js","webpack://finnish-art/./node_modules/devextreme-vue/core/strategy/vue2/configuration-component.js","webpack://finnish-art/./node_modules/devextreme-vue/core/strategy/vue2/configuration.js","webpack://finnish-art/./node_modules/devextreme-vue/core/strategy/vue2/constants.js","webpack://finnish-art/./node_modules/devextreme-vue/core/strategy/vue2/errors.js","webpack://finnish-art/./node_modules/devextreme-vue/core/strategy/vue2/extension-component.js","webpack://finnish-art/./node_modules/devextreme-vue/core/strategy/vue2/helpers.js","webpack://finnish-art/./node_modules/devextreme-vue/core/strategy/vue2/index.js","webpack://finnish-art/./node_modules/devextreme-vue/core/strategy/vue2/templates-discovering.js","webpack://finnish-art/./node_modules/devextreme-vue/core/strategy/vue2/templates-manager.js","webpack://finnish-art/./node_modules/devextreme-vue/core/strategy/vue3/index.js","webpack://finnish-art/./node_modules/devextreme-vue/core/templates-discovering.js","webpack://finnish-art/./node_modules/devextreme-vue/core/templates-manager.js","webpack://finnish-art/./node_modules/devextreme-vue/core/version.js","webpack://finnish-art/./node_modules/devextreme-vue/core/vue-helper.js","webpack://finnish-art/./node_modules/devextreme/esm/core/action.js","webpack://finnish-art/./node_modules/devextreme/esm/core/options/option_manager.js","webpack://finnish-art/./node_modules/devextreme/esm/core/options/index.js","webpack://finnish-art/./node_modules/devextreme/esm/core/postponed_operations.js","webpack://finnish-art/./node_modules/devextreme/esm/core/component.js","webpack://finnish-art/./node_modules/devextreme/esm/core/component_registrator_callbacks.js","webpack://finnish-art/./node_modules/devextreme/esm/core/component_registrator.js","webpack://finnish-art/./node_modules/devextreme/esm/core/devices.js","webpack://finnish-art/./node_modules/devextreme/esm/core/template_manager.js","webpack://finnish-art/./node_modules/devextreme/esm/core/dom_component.js","webpack://finnish-art/./node_modules/devextreme/esm/core/element.js","webpack://finnish-art/./node_modules/devextreme/esm/core/events_strategy.js","webpack://finnish-art/./node_modules/devextreme/esm/core/options/utils.js","webpack://finnish-art/./node_modules/devextreme/esm/core/polyfills/promise.js","webpack://finnish-art/./node_modules/devextreme/esm/core/templates/child_default_template.js","webpack://finnish-art/./node_modules/devextreme/esm/core/templates/empty_template.js","webpack://finnish-art/./node_modules/devextreme/esm/core/templates/function_template.js","webpack://finnish-art/./node_modules/devextreme/esm/core/templates/template_base.js","webpack://finnish-art/./node_modules/devextreme/esm/core/utils/comparator.js","webpack://finnish-art/./node_modules/devextreme/esm/core/utils/dom.js","webpack://finnish-art/./node_modules/devextreme/esm/core/utils/public_component.js","webpack://finnish-art/./node_modules/devextreme/esm/core/utils/ready_callbacks.js","webpack://finnish-art/./node_modules/devextreme/esm/core/utils/resize_callbacks.js","webpack://finnish-art/./node_modules/devextreme/esm/core/utils/storage.js","webpack://finnish-art/./node_modules/devextreme/esm/core/templates/template_engine_registry.js","webpack://finnish-art/./node_modules/devextreme/esm/core/templates/template_engines.js","webpack://finnish-art/./node_modules/devextreme/esm/core/templates/template.js","webpack://finnish-art/./node_modules/devextreme/esm/core/utils/template_manager.js","webpack://finnish-art/./node_modules/devextreme/esm/core/utils/view_port.js","webpack://finnish-art/./node_modules/devextreme/esm/events/core/event_registrator.js","webpack://finnish-art/./node_modules/devextreme/esm/events/core/keyboard_processor.js","webpack://finnish-art/./node_modules/devextreme/esm/events/index.js","webpack://finnish-art/./node_modules/devextreme/esm/events/remove.js","webpack://finnish-art/./node_modules/devextreme/esm/events/short.js","webpack://finnish-art/./node_modules/devextreme/esm/events/utils/add_namespace.js","webpack://finnish-art/./node_modules/devextreme/esm/events/utils/index.js","webpack://finnish-art/./node_modules/devextreme/esm/events/visibility_change.js","webpack://finnish-art/./node_modules/devextreme/esm/ui/widget/selectors.js"],"sourcesContent":["/*!\n * devextreme-vue\n * Version: 21.2.11\n * Build date: Tue Oct 18 2022\n *\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nvar __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};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.pullAllChildren = exports.pullConfigComponents = exports.isFragment = void 0;\nvar vue_helper_1 = require(\"./vue-helper\");\nfunction pullAllChildren(directChildren, allChildren, config) {\n if (!directChildren || directChildren.length === 0) {\n return;\n }\n pullConfigComponents(directChildren, allChildren, config);\n}\nexports.pullAllChildren = pullAllChildren;\nfunction isFragment(node) {\n var patchFlag = node.patchFlag;\n return patchFlag === 128 /* KEYED_FRAGMENT */\n || patchFlag === 256 /* UNKEYED_FRAGMENT */\n || patchFlag === 64 /* STABLE_FRAGMENT */\n || patchFlag === -2 /* BAIL */;\n}\nexports.isFragment = isFragment;\nfunction pullConfigComponents(children, nodes, ownerConfig) {\n children.forEach(function (node) {\n if (isFragment(node) && Array.isArray(node.children)) {\n pullConfigComponents(node.children, nodes, ownerConfig);\n }\n if (!isFragment(node)) {\n nodes.push(node);\n }\n if (!node) {\n return;\n }\n var componentInfo = vue_helper_1.getComponentInfo(node);\n if (!componentInfo || !componentInfo.$_optionName) {\n return;\n }\n var componentChildren = vue_helper_1.configurationChildren(node);\n var initialValues = __assign(__assign({}, componentInfo.$_predefinedProps), vue_helper_1.getNormalizedProps(node.props || {}));\n var config = ownerConfig.createNested(componentInfo.$_optionName, initialValues, componentInfo.$_isCollectionItem, componentInfo.$_expectedChildren);\n node.$_config = config;\n node.$_innerChanges = {};\n if (componentChildren) {\n pullConfigComponents(componentChildren, nodes, config);\n }\n });\n}\nexports.pullConfigComponents = pullConfigComponents;\n","/*!\n * devextreme-vue\n * Version: 21.2.11\n * Build date: Tue Oct 18 2022\n *\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nvar __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};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.initBaseComponent = exports.initDxComponent = void 0;\nvar vue_1 = require(\"vue\");\nvar callbacks_1 = __importDefault(require(\"devextreme/core/utils/callbacks\"));\nvar events_1 = require(\"devextreme/events\");\nvar vue_helper_1 = require(\"./vue-helper\");\nvar children_processing_1 = require(\"./children-processing\");\nvar configuration_1 = __importStar(require(\"./configuration\"));\nvar configuration_component_1 = require(\"./configuration-component\");\nvar constants_1 = require(\"./constants\");\nvar helpers_1 = require(\"./helpers\");\nvar templates_manager_1 = require(\"./templates-manager\");\nvar includeAttrs = [\"id\", \"class\", \"style\"];\nfunction getAttrs(attrs) {\n var attributes = {};\n includeAttrs.forEach(function (attr) {\n var attrValue = attrs[attr];\n if (attrValue) {\n attributes[attr] = attrValue;\n }\n });\n return attributes;\n}\nfunction initBaseComponent() {\n return vue_1.defineComponent({\n inheritAttrs: false,\n data: function () {\n return {\n eventBus: callbacks_1.default()\n };\n },\n provide: function () {\n return {\n eventBus: this.eventBus\n };\n },\n render: function () {\n var thisComponent = this;\n var children = [];\n if (thisComponent.$_config.cleanNested) {\n thisComponent.$_config.cleanNested();\n }\n children_processing_1.pullAllChildren(vue_helper_1.defaultSlots(this), children, thisComponent.$_config);\n this.$_processChildren(children);\n return vue_1.h(\"div\", __assign({}, getAttrs(this.$attrs)), children);\n },\n beforeUpdate: function () {\n var thisComponent = this;\n thisComponent.$_config.setPrevNestedOptions(thisComponent.$_config.getNestedOptionValues());\n },\n updated: function () {\n var thisComponent = this;\n var nodes = cleanWidgetNode(this.$el);\n vue_helper_1.getChildren(thisComponent).forEach(function (child) {\n var _a;\n configuration_component_1.initOptionChangedFunc(child.$_config, child.type.props || {}, (_a = child === null || child === void 0 ? void 0 : child.component) === null || _a === void 0 ? void 0 : _a.proxy, child.$_innerChanges);\n });\n thisComponent.$_templatesManager.discover();\n thisComponent.$_instance.beginUpdate();\n if (thisComponent.$_templatesManager.isDirty) {\n thisComponent.$_instance.option(\"integrationOptions.templates\", thisComponent.$_templatesManager.templates);\n var props = thisComponent.$.vnode.props;\n for (var _i = 0, _a = Object.keys(thisComponent.$_templatesManager.templates); _i < _a.length; _i++) {\n var name_1 = _a[_i];\n thisComponent.$_instance.option(helpers_1.getTemplatePropName(props, name_1), name_1);\n }\n thisComponent.$_templatesManager.resetDirtyFlag();\n }\n for (var _b = 0, _c = Object.keys(thisComponent.$_pendingOptions); _b < _c.length; _b++) {\n var name_2 = _c[_b];\n thisComponent.$_instance.option(name_2, thisComponent.$_pendingOptions[name_2]);\n }\n thisComponent.$_pendingOptions = {};\n this.$_applyConfigurationChanges();\n thisComponent.$_instance.endUpdate();\n restoreNodes(this.$el, nodes);\n this.eventBus.fire();\n },\n beforeUnmount: function () {\n var thisComponent = this;\n var instance = thisComponent.$_instance;\n if (instance) {\n events_1.triggerHandler(this.$el, constants_1.DX_REMOVE_EVENT);\n instance.dispose();\n }\n },\n created: function () {\n var thisComponent = this;\n var props = vue_helper_1.getComponentProps(this);\n thisComponent.$_config = new configuration_1.default(function (n, v) {\n if (Array.isArray(v)) {\n thisComponent.$_instance.option(n, v);\n }\n else {\n thisComponent.$_pendingOptions[n === vue_helper_1.VMODEL_NAME ? \"value\" : n] = v;\n }\n }, null, props && __assign({}, props), thisComponent.$_expectedChildren);\n thisComponent.$_innerChanges = {};\n thisComponent.$_config.init(this.$props && Object.keys(this.$props));\n },\n methods: {\n $_applyConfigurationChanges: function () {\n var thisComponent = this;\n thisComponent.$_config.componentsCountChanged.forEach(function (_a) {\n var optionPath = _a.optionPath, isCollection = _a.isCollection, removed = _a.removed;\n var options = thisComponent.$_config.getNestedOptionValues();\n if (!isCollection && removed) {\n thisComponent.$_instance.resetOption(optionPath);\n }\n else {\n thisComponent.$_instance.option(optionPath, helpers_1.getOptionValue(options, optionPath));\n }\n });\n thisComponent.$_config.cleanComponentsCountChanged();\n },\n $_createWidget: function (element) {\n var thisComponent = this;\n thisComponent.$_pendingOptions = {};\n thisComponent.$_templatesManager = new templates_manager_1.TemplatesManager(this);\n var config = thisComponent.$_config;\n if (config.initialValues.hasOwnProperty(vue_helper_1.VMODEL_NAME)) {\n config.initialValues.value = vue_helper_1.getVModelValue(config.initialValues);\n }\n var options = __assign(__assign(__assign(__assign({ templatesRenderAsynchronously: thisComponent.$_hasAsyncTemplate }, vue_helper_1.getComponentProps(thisComponent)), config.initialValues), config.getNestedOptionValues()), this.$_getIntegrationOptions());\n var instance = new thisComponent.$_WidgetClass(element, options);\n thisComponent.$_instance = instance;\n instance.on(\"optionChanged\", function (args) { return config.onOptionChanged(args); });\n configuration_1.setEmitOptionChangedFunc(config, thisComponent, thisComponent.$_innerChanges);\n configuration_1.bindOptionWatchers(config, thisComponent, thisComponent.$_innerChanges);\n this.$_createEmitters(instance);\n },\n $_getIntegrationOptions: function () {\n var thisComponent = this;\n var result = __assign({ integrationOptions: {\n watchMethod: this.$_getWatchMethod(),\n } }, this.$_getExtraIntegrationOptions());\n if (thisComponent.$_templatesManager.isDirty) {\n var templates = thisComponent.$_templatesManager.templates;\n result.integrationOptions.templates = templates;\n var props = thisComponent.$.vnode.props;\n for (var _i = 0, _a = Object.keys(templates); _i < _a.length; _i++) {\n var name_3 = _a[_i];\n result[helpers_1.getTemplatePropName(props, name_3)] = name_3;\n }\n thisComponent.$_templatesManager.resetDirtyFlag();\n }\n return result;\n },\n $_getWatchMethod: function () {\n var _this = this;\n return function (valueGetter, valueChangeCallback, options) {\n options = options || {};\n if (!options.skipImmediate) {\n valueChangeCallback(valueGetter());\n }\n return _this.$watch(function () {\n return valueGetter();\n }, function (newValue, oldValue) {\n if (helpers_1.toComparable(oldValue) !== helpers_1.toComparable(newValue) || options.deep) {\n valueChangeCallback(newValue);\n }\n }, {\n deep: options.deep\n });\n };\n },\n $_getExtraIntegrationOptions: function () {\n return {};\n },\n $_processChildren: function (_children) {\n return;\n },\n $_createEmitters: function (instance) {\n var _this = this;\n if (this.$attrs) {\n Object.keys(this.$attrs).forEach(function (listenerName) {\n var eventName = helpers_1.camelize(listenerName);\n instance.on(eventName, function (e) {\n _this.$emit(listenerName, e);\n });\n });\n }\n }\n }\n });\n}\nexports.initBaseComponent = initBaseComponent;\nfunction cleanWidgetNode(node) {\n var removedNodes = [];\n helpers_1.forEachChildNode(node, function (childNode) {\n var parent = childNode.parentNode;\n var isExtension = childNode.hasAttribute && childNode.hasAttribute(\"isExtension\");\n if ((childNode.nodeName === \"#comment\" || isExtension) && parent) {\n removedNodes.push(childNode);\n parent.removeChild(childNode);\n }\n });\n return removedNodes;\n}\nfunction restoreNodes(el, nodes) {\n nodes.forEach(function (node) {\n el.appendChild(node);\n });\n}\nfunction initDxComponent() {\n return vue_1.defineComponent({\n extends: initBaseComponent(),\n methods: {\n $_getExtraIntegrationOptions: function () {\n return {\n onInitializing: function () {\n this.beginUpdate();\n }\n };\n },\n $_processChildren: function (children) {\n children.forEach(function (childNode) {\n if (!childNode || typeof childNode !== \"object\") {\n return;\n }\n childNode.$_hasOwner = true;\n });\n },\n },\n mounted: function () {\n var _this = this;\n var nodes = cleanWidgetNode(this.$el);\n var thisComponent = this;\n this.$_createWidget(this.$el);\n thisComponent.$_instance.endUpdate();\n restoreNodes(this.$el, nodes);\n if (this.$slots && this.$slots.default) {\n vue_helper_1.getChildren(thisComponent).forEach(function (child) {\n var childExtenton = child;\n if (childExtenton && childExtenton.$_isExtension) {\n childExtenton.$_attachTo(_this.$el);\n }\n });\n }\n }\n });\n}\nexports.initDxComponent = initDxComponent;\n","/*!\n * devextreme-vue\n * Version: 21.2.11\n * Build date: Tue Oct 18 2022\n *\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nvar __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};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getOption = void 0;\nvar config = {\n deepWatch: false\n};\nfunction setOptions(options) {\n config = __assign(__assign({}, config), options);\n}\nfunction getOption(optionName) {\n return config[optionName];\n}\nexports.getOption = getOption;\nexports.default = setOptions;\n","/*!\n * devextreme-vue\n * Version: 21.2.11\n * Build date: Tue Oct 18 2022\n *\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getInnerChanges = exports.getConfig = exports.initOptionChangedFunc = exports.initDxConfiguration = void 0;\nvar vue_1 = require(\"vue\");\nvar vue_helper_1 = require(\"./vue-helper\");\nvar configuration_1 = require(\"./configuration\");\nfunction getConfig(vueInstance) {\n var componentOptions = vue_helper_1.getNodeOptions(vueInstance);\n if (!componentOptions) {\n return;\n }\n return componentOptions.$_config || vueInstance.$_config;\n}\nexports.getConfig = getConfig;\nfunction getInnerChanges(vueInstance) {\n var componentOptions = vue_helper_1.getNodeOptions(vueInstance);\n if (!componentOptions) {\n return;\n }\n return componentOptions.$_innerChanges || vueInstance.$_innerChanges;\n}\nexports.getInnerChanges = getInnerChanges;\nfunction initOptionChangedFunc(config, props, vueInstance, innerChanges) {\n if (!config) {\n return;\n }\n config.init(Object.keys(props));\n if (vueInstance) {\n configuration_1.setEmitOptionChangedFunc(config, vueInstance, innerChanges);\n }\n}\nexports.initOptionChangedFunc = initOptionChangedFunc;\nfunction getComponentInfo(_a, removed) {\n var name = _a.name, isCollectionItem = _a.isCollectionItem, ownerConfig = _a.ownerConfig;\n var parentPath = ownerConfig && ownerConfig.fullPath;\n var optionPath = name && parentPath ? parentPath + \".\" + name : name || \"\";\n return {\n optionPath: optionPath,\n isCollection: isCollectionItem,\n removed: removed\n };\n}\nfunction initDxConfiguration() {\n return vue_1.defineComponent({\n beforeMount: function () {\n var thisComponent = this;\n var config = getConfig(thisComponent);\n var innerChanges = getInnerChanges(thisComponent);\n initOptionChangedFunc(config, vue_helper_1.getNodeTypeOfComponent(thisComponent).props, thisComponent, innerChanges);\n configuration_1.bindOptionWatchers(config, this, innerChanges);\n },\n mounted: function () {\n if (this.$parent.$_instance) {\n this.$parent.$_config.componentsCountChanged\n .push(getComponentInfo(getConfig(this)));\n }\n },\n beforeUnmount: function () {\n var config = getConfig(this);\n if (config) {\n this.$parent.$_config.componentsCountChanged\n .push(getComponentInfo(config, true));\n }\n },\n render: function () {\n return null;\n }\n });\n}\nexports.initDxConfiguration = initDxConfiguration;\n","/*!\n * devextreme-vue\n * Version: 21.2.11\n * Build date: Tue Oct 18 2022\n *\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nvar __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};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.setEmitOptionChangedFunc = exports.bindOptionWatchers = void 0;\nvar vue_1 = require(\"vue\");\nvar config_1 = require(\"./config\");\nvar helpers_1 = require(\"./helpers\");\nvar vue_helper_1 = require(\"./vue-helper\");\nvar Configuration = /** @class */ (function () {\n function Configuration(updateFunc, name, initialValues, expectedChildren, isCollectionItem, collectionItemIndex, ownerConfig) {\n this._updateFunc = updateFunc;\n this._name = name;\n this._initialValues = initialValues ? initialValues : {};\n this._nestedConfigurations = [];\n this._isCollectionItem = !!isCollectionItem;\n this._collectionItemIndex = collectionItemIndex;\n this._expectedChildren = expectedChildren || {};\n this._ownerConfig = ownerConfig;\n this._componentChanges = [];\n this.updateValue = this.updateValue.bind(this);\n }\n Object.defineProperty(Configuration.prototype, \"name\", {\n get: function () {\n return this._name;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"fullName\", {\n get: function () {\n return this._name && this._isCollectionItem\n ? this._name + \"[\" + this._collectionItemIndex + \"]\"\n : this._name;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"componentsCountChanged\", {\n get: function () {\n return this._componentChanges;\n },\n enumerable: false,\n configurable: true\n });\n Configuration.prototype.cleanComponentsCountChanged = function () {\n this._componentChanges = [];\n };\n Object.defineProperty(Configuration.prototype, \"fullPath\", {\n get: function () {\n return this._ownerConfig && this._ownerConfig.fullPath\n ? this._ownerConfig.fullPath + \".\" + this.fullName\n : this.fullName;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"ownerConfig\", {\n get: function () {\n return this._ownerConfig;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"options\", {\n get: function () {\n return this._options;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"initialValues\", {\n get: function () {\n return this._initialValues;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"expectedChildren\", {\n get: function () {\n return this._expectedChildren;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"nested\", {\n get: function () {\n return this._nestedConfigurations;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"prevNestedOptions\", {\n get: function () {\n return this._prevNestedConfigOptions;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"collectionItemIndex\", {\n get: function () {\n return this._collectionItemIndex;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"isCollectionItem\", {\n get: function () {\n return this._isCollectionItem;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"updateFunc\", {\n get: function () {\n return this._updateFunc;\n },\n enumerable: false,\n configurable: true\n });\n Configuration.prototype.init = function (options) {\n this._options = options ? options : [];\n };\n Object.defineProperty(Configuration.prototype, \"emitOptionChanged\", {\n set: function (handler) {\n this._emitOptionChanged = handler;\n },\n enumerable: false,\n configurable: true\n });\n Configuration.prototype.setPrevNestedOptions = function (value) {\n this._prevNestedConfigOptions = value;\n };\n Configuration.prototype.onOptionChanged = function (args) {\n if (helpers_1.isEqual(args.value, args.previousValue)) {\n return;\n }\n this._onOptionChanged(args.fullName.split(\".\"), args);\n };\n Configuration.prototype.cleanNested = function () {\n this._nestedConfigurations = [];\n };\n Configuration.prototype.createNested = function (name, initialValues, isCollectionItem, expectedChildren) {\n var expected = this._expectedChildren[name];\n var actualName = name;\n var actualIsCollectionItem = isCollectionItem;\n if (expected) {\n actualIsCollectionItem = expected.isCollectionItem;\n if (expected.optionName) {\n actualName = expected.optionName;\n }\n }\n var collectionItemIndex = -1;\n if (actualIsCollectionItem && actualName) {\n collectionItemIndex = this._nestedConfigurations.filter(function (c) { return c._name && c._name === actualName; }).length;\n }\n var configuration = new Configuration(this._updateFunc, actualName, initialValues, expectedChildren, actualIsCollectionItem, collectionItemIndex, this);\n this._nestedConfigurations.push(configuration);\n return configuration;\n };\n Configuration.prototype.updateValue = function (nestedName, value) {\n var fullName = [this.fullPath, nestedName].filter(function (n) { return n; }).join(\".\");\n this._updateFunc(fullName, value);\n };\n Configuration.prototype.getNestedOptionValues = function () {\n var values = {};\n this._nestedConfigurations.forEach(function (o) {\n if (!o._name) {\n return;\n }\n var nestedValue = __assign(__assign({}, o.initialValues), o.getNestedOptionValues());\n if (!nestedValue) {\n return;\n }\n if (!o._isCollectionItem) {\n values[o._name] = nestedValue;\n }\n else {\n var arr = values[o._name];\n if (!arr || !Array.isArray(arr)) {\n arr = [];\n values[o._name] = arr;\n }\n arr.push(nestedValue);\n }\n });\n return values;\n };\n Configuration.prototype.getOptionsToWatch = function () {\n var blackList = {};\n this._nestedConfigurations.forEach(function (c) { return c._name && (blackList[c._name] = true); });\n return this._options.filter(function (o) { return !blackList[o]; });\n };\n Configuration.prototype._onOptionChanged = function (optionRelPath, args) {\n if (optionRelPath.length === 0) {\n return;\n }\n var optionInfo = helpers_1.getOptionInfo(optionRelPath[0]);\n if (optionInfo.isCollection || optionRelPath.length > 1) {\n var nestedConfig = this._getNestedConfig(optionInfo.fullName);\n if (nestedConfig) {\n nestedConfig._onOptionChanged(optionRelPath.slice(1), args);\n return;\n }\n this._tryEmitOptionChanged(optionInfo.name, args.component.option(this.fullPath ? this.fullPath + \".\" + optionInfo.name : optionInfo.name));\n }\n else {\n this._tryEmitOptionChanged(optionInfo.name, args.value);\n }\n };\n Configuration.prototype._getNestedConfig = function (fullName) {\n for (var _i = 0, _a = this._nestedConfigurations; _i < _a.length; _i++) {\n var nestedConfig = _a[_i];\n if (nestedConfig.fullName === fullName) {\n return nestedConfig;\n }\n }\n return undefined;\n };\n Configuration.prototype._tryEmitOptionChanged = function (name, value) {\n if (this._emitOptionChanged) {\n this._emitOptionChanged(name, value);\n }\n };\n return Configuration;\n}());\nfunction bindOptionWatchers(config, vueInstance, innerChanges) {\n var targets = config && config.getOptionsToWatch();\n if (targets) {\n targets.forEach(function (optionName) {\n vueInstance.$watch(optionName, function (value) {\n var rawValue = vue_1.toRaw(value);\n if (!innerChanges.hasOwnProperty(optionName) ||\n innerChanges[optionName] !== rawValue) {\n config.updateValue(optionName, value);\n }\n delete innerChanges[optionName];\n }, { deep: config_1.getOption(\"deepWatch\") });\n });\n }\n}\nexports.bindOptionWatchers = bindOptionWatchers;\nfunction hasProp(vueInstance, propName) {\n var props = vueInstance.$options.props;\n return props && props.hasOwnProperty(propName);\n}\nfunction hasVModelValue(options, props, vnode) {\n var _a;\n return options.model\n && props.hasOwnProperty(vue_helper_1.VMODEL_NAME)\n && ((_a = vnode === null || vnode === void 0 ? void 0 : vnode.props) === null || _a === void 0 ? void 0 : _a.hasOwnProperty(vue_helper_1.VMODEL_NAME));\n}\nfunction setEmitOptionChangedFunc(config, vueInstance, innerChanges) {\n config.emitOptionChanged = function (name, value) {\n var _a;\n var props = vueInstance.$props;\n var vnode = (_a = vueInstance === null || vueInstance === void 0 ? void 0 : vueInstance.$) === null || _a === void 0 ? void 0 : _a.vnode;\n if (hasProp(vueInstance, name) && !helpers_1.isEqual(value, props[name]) && vueInstance.$emit) {\n innerChanges[name] = vue_1.toRaw(value);\n var eventName = name === \"value\" && hasVModelValue(vueInstance.$options, props, vnode) ?\n \"update:\" + vue_helper_1.VMODEL_NAME :\n \"update:\" + name;\n vueInstance.$emit(eventName, value);\n }\n };\n}\nexports.setEmitOptionChangedFunc = setEmitOptionChangedFunc;\nexports.default = Configuration;\n","/*!\n * devextreme-vue\n * Version: 21.2.11\n * Build date: Tue Oct 18 2022\n *\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DX_REMOVE_EVENT = exports.DX_TEMPLATE_WRAPPER_CLASS = void 0;\nvar DX_TEMPLATE_WRAPPER_CLASS = \"dx-template-wrapper\";\nexports.DX_TEMPLATE_WRAPPER_CLASS = DX_TEMPLATE_WRAPPER_CLASS;\nvar DX_REMOVE_EVENT = \"dxremove\";\nexports.DX_REMOVE_EVENT = DX_REMOVE_EVENT;\n","/*!\n * devextreme-vue\n * Version: 21.2.11\n * Build date: Tue Oct 18 2022\n *\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.initDxExtensionComponent = void 0;\nvar vue_1 = require(\"vue\");\nvar component_1 = require(\"./component\");\nvar vue_helper_1 = require(\"./vue-helper\");\nfunction initDxExtensionComponent() {\n return vue_1.defineComponent({\n extends: component_1.initBaseComponent(),\n mounted: function () {\n this.$el.setAttribute(\"isExtension\", \"true\");\n var nodeOptions = vue_helper_1.getNodeOptions(this);\n nodeOptions.$_isExtension = true;\n nodeOptions.$_attachTo = this.attachTo.bind(this);\n if (nodeOptions && nodeOptions.$_hasOwner) {\n return;\n }\n this.attachTo(this.$el);\n },\n methods: {\n attachTo: function (element) {\n this.$_createWidget(element);\n }\n }\n });\n}\nexports.initDxExtensionComponent = initDxExtensionComponent;\n","/*!\n * devextreme-vue\n * Version: 21.2.11\n * Build date: Tue Oct 18 2022\n *\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getOptionInfo = exports.getOptionValue = exports.allKeysAreEqual = exports.forEachChildNode = exports.isEqual = exports.toComparable = exports.camelize = exports.lowercaseFirst = exports.uppercaseFirst = exports.getTemplatePropName = void 0;\nfunction getTemplatePropName(props, templateName) {\n for (var propName in props) {\n if (props[propName] === templateName) {\n return propName;\n }\n }\n return templateName;\n}\nexports.getTemplatePropName = getTemplatePropName;\nfunction uppercaseFirst(value) {\n return value[0].toUpperCase() + value.substr(1);\n}\nexports.uppercaseFirst = uppercaseFirst;\nfunction lowercaseFirst(value) {\n return value[0].toLowerCase() + value.substr(1);\n}\nexports.lowercaseFirst = lowercaseFirst;\nfunction camelize(value) {\n return lowercaseFirst(value.split(\"-\").map(function (v) { return uppercaseFirst(v); }).join(\"\"));\n}\nexports.camelize = camelize;\nfunction toComparable(value) {\n return value instanceof Date ? value.getTime() : value;\n}\nexports.toComparable = toComparable;\nfunction isEqual(value1, value2) {\n if (toComparable(value1) === toComparable(value2)) {\n return true;\n }\n if (Array.isArray(value1) && Array.isArray(value2)) {\n return value1.length === 0 && value2.length === 0;\n }\n return false;\n}\nexports.isEqual = isEqual;\nfunction forEachChildNode(el, callback) {\n Array.prototype.slice.call(el.childNodes).forEach(callback);\n}\nexports.forEachChildNode = forEachChildNode;\nfunction allKeysAreEqual(obj1, obj2) {\n var obj1Keys = Object.keys(obj1);\n if (obj1Keys.length !== Object.keys(obj2).length) {\n return false;\n }\n for (var _i = 0, obj1Keys_1 = obj1Keys; _i < obj1Keys_1.length; _i++) {\n var key = obj1Keys_1[_i];\n if (!obj2.hasOwnProperty(key)) {\n return false;\n }\n }\n return true;\n}\nexports.allKeysAreEqual = allKeysAreEqual;\nfunction getOptionValue(options, optionPath) {\n var value = options;\n optionPath.split(\".\").forEach(function (p) {\n var optionInfo = getOptionInfo(p);\n if (value) {\n value = optionInfo.isCollection ?\n value[optionInfo.name] && value[optionInfo.name][optionInfo.index] :\n value[optionInfo.name];\n }\n });\n return value;\n}\nexports.getOptionValue = getOptionValue;\nfunction getOptionInfo(name) {\n var parts = name.split(\"[\");\n if (parts.length === 1) {\n return {\n isCollection: false,\n name: name,\n fullName: name\n };\n }\n return {\n isCollection: true,\n name: parts[0],\n fullName: name,\n index: Number(parts[1].slice(0, -1))\n };\n}\nexports.getOptionInfo = getOptionInfo;\n","/*!\n * devextreme-vue\n * Version: 21.2.11\n * Build date: Tue Oct 18 2022\n *\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.createExtensionComponent = exports.createConfigurationComponent = exports.createComponent = void 0;\nvar vue2Stategy = __importStar(require(\"./strategy/vue2/index\"));\nvar vue3Stategy = __importStar(require(\"./strategy/vue3/index\"));\nvar version_1 = require(\"./version\");\nvar strategy = version_1.isVue3() ? vue3Stategy : vue2Stategy;\nexports.createComponent = strategy.createComponent;\nexports.createConfigurationComponent = strategy.createConfigurationComponent;\nexports.createExtensionComponent = strategy.createExtensionComponent;\n","/*!\n * devextreme-vue\n * Version: 21.2.11\n * Build date: Tue Oct 18 2022\n *\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nvar __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};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.pullAllChildren = void 0;\nfunction pullAllChildren(directChildren, allChildren, config) {\n if (!directChildren || directChildren.length === 0) {\n return;\n }\n pullConfigComponents(directChildren, allChildren, config);\n}\nexports.pullAllChildren = pullAllChildren;\nfunction pullConfigComponents(children, nodes, ownerConfig) {\n children.forEach(function (node) {\n nodes.push(node);\n if (!node.componentOptions) {\n return;\n }\n var configComponent = node.componentOptions.Ctor;\n if (!configComponent.$_optionName) {\n return;\n }\n var initialValues = __assign(__assign({}, configComponent.$_predefinedProps), node.componentOptions.propsData);\n var config = ownerConfig.createNested(configComponent.$_optionName, initialValues, configComponent.$_isCollectionItem, configComponent.$_expectedChildren);\n node.componentOptions.$_config = config;\n node.componentOptions.$_innerChanges = {};\n if (node.componentOptions.children) {\n pullConfigComponents(node.componentOptions.children, nodes, config);\n }\n });\n}\n","/*!\n * devextreme-vue\n * Version: 21.2.11\n * Build date: Tue Oct 18 2022\n *\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nvar __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};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.BaseComponent = exports.DxComponent = void 0;\nvar VueType = __importStar(require(\"vue\"));\nvar events_1 = require(\"devextreme/events\");\nvar children_processing_1 = require(\"./children-processing\");\nvar configuration_1 = __importStar(require(\"./configuration\"));\nvar configuration_component_1 = require(\"./configuration-component\");\nvar constants_1 = require(\"./constants\");\nvar helpers_1 = require(\"./helpers\");\nvar templates_manager_1 = require(\"./templates-manager\");\nvar Vue = VueType.default || VueType;\nvar BaseComponent = function () { return Vue.extend({\n inheritAttrs: false,\n data: function () {\n return {\n eventBus: new Vue()\n };\n },\n provide: function () {\n return {\n eventBus: this.eventBus\n };\n },\n render: function (createElement) {\n var children = [];\n if (this.$_config.cleanNested) {\n this.$_config.cleanNested();\n }\n children_processing_1.pullAllChildren(this.$slots.default, children, this.$_config);\n this.$_processChildren(children);\n return createElement(\"div\", {\n attrs: { id: this.$attrs.id }\n }, children);\n },\n beforeUpdate: function () {\n this.$_config.setPrevNestedOptions(this.$_config.getNestedOptionValues());\n },\n updated: function () {\n var _a, _b;\n this.$children.forEach(function (child) { return configuration_component_1.initOptionChangedFunc(configuration_component_1.getConfig(child), child, configuration_component_1.getInnerChanges(child)); });\n this.$_templatesManager.discover();\n this.$_instance.beginUpdate();\n if (this.$_templatesManager.isDirty) {\n this.$_instance.option(\"integrationOptions.templates\", this.$_templatesManager.templates);\n var props = (_b = (_a = this.$vnode) === null || _a === void 0 ? void 0 : _a.componentOptions) === null || _b === void 0 ? void 0 : _b.propsData;\n for (var _i = 0, _c = Object.keys(this.$_templatesManager.templates); _i < _c.length; _i++) {\n var name_1 = _c[_i];\n this.$_instance.option(helpers_1.getTemplatePropName(props, name_1), name_1);\n }\n this.$_templatesManager.resetDirtyFlag();\n }\n for (var _d = 0, _e = Object.keys(this.$_pendingOptions); _d < _e.length; _d++) {\n var name_2 = _e[_d];\n this.$_instance.option(name_2, this.$_pendingOptions[name_2]);\n }\n this.$_pendingOptions = {};\n this.$_applyConfigurationChanges();\n this.$_instance.endUpdate();\n this.eventBus.$emit(\"updated\");\n },\n beforeDestroy: function () {\n var instance = this.$_instance;\n if (instance) {\n events_1.triggerHandler(this.$el, constants_1.DX_REMOVE_EVENT);\n instance.dispose();\n }\n },\n created: function () {\n var _this = this;\n this.$_config = new configuration_1.default(function (n, v) { return _this.$_pendingOptions[n] = v; }, null, this.$options.propsData && __assign({}, this.$options.propsData), this.$_expectedChildren);\n this.$_innerChanges = {};\n this.$_config.init(this.$props && Object.keys(this.$props));\n },\n methods: {\n $_applyConfigurationChanges: function () {\n var _this = this;\n this.$_config.componentsCountChanged.forEach(function (_a) {\n var optionPath = _a.optionPath, isCollection = _a.isCollection, removed = _a.removed;\n var options = _this.$_config.getNestedOptionValues();\n if (!isCollection && removed) {\n _this.$_instance.resetOption(optionPath);\n }\n else {\n _this.$_instance.option(optionPath, helpers_1.getOptionValue(options, optionPath));\n }\n });\n this.$_config.cleanComponentsCountChanged();\n },\n $_createWidget: function (element) {\n var thisComponent = this;\n thisComponent.$_pendingOptions = {};\n thisComponent.$_templatesManager = new templates_manager_1.TemplatesManager(this);\n var config = this.$_config;\n var options = __assign(__assign(__assign(__assign({}, this.$options.propsData), config.initialValues), config.getNestedOptionValues()), this.$_getIntegrationOptions());\n var instance = new this.$_WidgetClass(element, options);\n thisComponent.$_instance = instance;\n instance.on(\"optionChanged\", function (args) { return config.onOptionChanged(args); });\n configuration_1.setEmitOptionChangedFunc(config, this, this.$_innerChanges);\n configuration_1.bindOptionWatchers(config, this, this.$_innerChanges);\n this.$_createEmitters(instance);\n },\n $_getIntegrationOptions: function () {\n var _a, _b;\n var result = __assign({ integrationOptions: {\n watchMethod: this.$_getWatchMethod(),\n } }, this.$_getExtraIntegrationOptions());\n if (this.$_templatesManager.isDirty) {\n var templates = this.$_templatesManager.templates;\n result.integrationOptions.templates = templates;\n var props = (_b = (_a = this.$vnode) === null || _a === void 0 ? void 0 : _a.componentOptions) === null || _b === void 0 ? void 0 : _b.propsData;\n for (var _i = 0, _c = Object.keys(templates); _i < _c.length; _i++) {\n var name_3 = _c[_i];\n result[helpers_1.getTemplatePropName(props, name_3)] = name_3;\n }\n this.$_templatesManager.resetDirtyFlag();\n }\n return result;\n },\n $_getWatchMethod: function () {\n var _this = this;\n return function (valueGetter, valueChangeCallback, options) {\n options = options || {};\n if (!options.skipImmediate) {\n valueChangeCallback(valueGetter());\n }\n return _this.$watch(function () {\n return valueGetter();\n }, function (newValue, oldValue) {\n if (helpers_1.toComparable(oldValue) !== helpers_1.toComparable(newValue) || options.deep) {\n valueChangeCallback(newValue);\n }\n }, {\n deep: options.deep\n });\n };\n },\n $_getExtraIntegrationOptions: function () {\n return {};\n },\n $_processChildren: function (_children) {\n return;\n },\n $_createEmitters: function (instance) {\n var _this = this;\n Object.keys(this.$listeners).forEach(function (listenerName) {\n var eventName = helpers_1.camelize(listenerName);\n instance.on(eventName, function (e) {\n _this.$emit(listenerName, e);\n });\n });\n }\n }\n}); };\nexports.BaseComponent = BaseComponent;\nfunction cleanWidgetNode(node) {\n var removedNodes = [];\n helpers_1.forEachChildNode(node, function (childNode) {\n var parent = childNode.parentNode;\n var isExtension = childNode.hasAttribute && childNode.hasAttribute(\"isExtension\");\n if ((childNode.nodeName === \"#comment\" || isExtension) && parent) {\n removedNodes.push(childNode);\n parent.removeChild(childNode);\n }\n });\n return removedNodes;\n}\nfunction restoreNodes(el, nodes) {\n nodes.forEach(function (node) {\n el.appendChild(node);\n });\n}\nvar DxComponent = function () { return BaseComponent().extend({\n methods: {\n $_getExtraIntegrationOptions: function () {\n return {\n onInitializing: function () {\n this.beginUpdate();\n }\n };\n },\n $_processChildren: function (children) {\n children.forEach(function (childNode) {\n if (!childNode.componentOptions) {\n return;\n }\n childNode.componentOptions.$_hasOwner = true;\n });\n },\n },\n mounted: function () {\n var _this = this;\n var nodes = cleanWidgetNode(this.$el);\n this.$_createWidget(this.$el);\n this.$_instance.endUpdate();\n restoreNodes(this.$el, nodes);\n if (this.$slots && this.$slots.default) {\n this.$slots.default.forEach(function (child) {\n var childExtension = child.componentInstance;\n if (childExtension && childExtension.$_isExtension) {\n childExtension.attachTo(_this.$el);\n }\n });\n }\n }\n}); };\nexports.DxComponent = DxComponent;\n","/*!\n * devextreme-vue\n * Version: 21.2.11\n * Build date: Tue Oct 18 2022\n *\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nvar __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};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getOption = void 0;\nvar config = {\n useLegacyTemplateEngine: false\n};\nfunction setOptions(options) {\n config = __assign(__assign({}, config), options);\n}\nfunction getOption(optionName) {\n return config[optionName];\n}\nexports.getOption = getOption;\nexports.default = setOptions;\n","/*!\n * devextreme-vue\n * Version: 21.2.11\n * Build date: Tue Oct 18 2022\n *\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getInnerChanges = exports.getConfig = exports.initOptionChangedFunc = exports.DxConfiguration = void 0;\nvar VueType = __importStar(require(\"vue\"));\nvar Vue = VueType.default || VueType;\nvar configuration_1 = require(\"./configuration\");\nfunction getConfig(vueInstance) {\n if (!vueInstance.$vnode) {\n return;\n }\n var componentOptions = vueInstance.$vnode.componentOptions;\n return componentOptions && componentOptions.$_config;\n}\nexports.getConfig = getConfig;\nfunction getInnerChanges(vueInstance) {\n if (!vueInstance.$vnode) {\n return;\n }\n var componentOptions = vueInstance.$vnode.componentOptions;\n return componentOptions && componentOptions.$_innerChanges;\n}\nexports.getInnerChanges = getInnerChanges;\nfunction initOptionChangedFunc(config, vueInstance, innerChanges) {\n if (!config) {\n return;\n }\n config.init(Object.keys(vueInstance.$props));\n configuration_1.setEmitOptionChangedFunc(config, vueInstance, innerChanges);\n}\nexports.initOptionChangedFunc = initOptionChangedFunc;\nfunction getComponentInfo(_a, removed) {\n var name = _a.name, isCollectionItem = _a.isCollectionItem, ownerConfig = _a.ownerConfig;\n var parentPath = ownerConfig && ownerConfig.fullPath;\n var optionPath = name && parentPath ? parentPath + \".\" + name : name || \"\";\n return {\n optionPath: optionPath,\n isCollection: isCollectionItem,\n removed: removed\n };\n}\nvar DxConfiguration = function () { return Vue.extend({\n beforeMount: function () {\n var config = getConfig(this);\n var innerChanges = getInnerChanges(this);\n initOptionChangedFunc(config, this, innerChanges);\n configuration_1.bindOptionWatchers(config, this, innerChanges);\n },\n mounted: function () {\n if (this.$parent.$_instance) {\n this.$parent.$_config.componentsCountChanged\n .push(getComponentInfo(getConfig(this)));\n }\n },\n beforeDestroy: function () {\n this.$parent.$_config.componentsCountChanged\n .push(getComponentInfo(getConfig(this), true));\n },\n render: function (createElement) {\n return createElement();\n }\n}); };\nexports.DxConfiguration = DxConfiguration;\n","/*!\n * devextreme-vue\n * Version: 21.2.11\n * Build date: Tue Oct 18 2022\n *\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nvar __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};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.setEmitOptionChangedFunc = exports.bindOptionWatchers = void 0;\nvar helpers_1 = require(\"./helpers\");\nvar Configuration = /** @class */ (function () {\n function Configuration(updateFunc, name, initialValues, expectedChildren, isCollectionItem, collectionItemIndex, ownerConfig) {\n this._updateFunc = updateFunc;\n this._name = name;\n this._initialValues = initialValues ? initialValues : {};\n this._nestedConfigurations = [];\n this._isCollectionItem = !!isCollectionItem;\n this._collectionItemIndex = collectionItemIndex;\n this._expectedChildren = expectedChildren || {};\n this._ownerConfig = ownerConfig;\n this._componentChanges = [];\n this.updateValue = this.updateValue.bind(this);\n }\n Object.defineProperty(Configuration.prototype, \"name\", {\n get: function () {\n return this._name;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"fullName\", {\n get: function () {\n return this._name && this._isCollectionItem\n ? this._name + \"[\" + this._collectionItemIndex + \"]\"\n : this._name;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"componentsCountChanged\", {\n get: function () {\n return this._componentChanges;\n },\n enumerable: false,\n configurable: true\n });\n Configuration.prototype.cleanComponentsCountChanged = function () {\n this._componentChanges = [];\n };\n Object.defineProperty(Configuration.prototype, \"fullPath\", {\n get: function () {\n return this._ownerConfig && this._ownerConfig.fullPath\n ? this._ownerConfig.fullPath + \".\" + this.fullName\n : this.fullName;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"ownerConfig\", {\n get: function () {\n return this._ownerConfig;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"options\", {\n get: function () {\n return this._options;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"initialValues\", {\n get: function () {\n return this._initialValues;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"expectedChildren\", {\n get: function () {\n return this._expectedChildren;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"nested\", {\n get: function () {\n return this._nestedConfigurations;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"prevNestedOptions\", {\n get: function () {\n return this._prevNestedConfigOptions;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"collectionItemIndex\", {\n get: function () {\n return this._collectionItemIndex;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"isCollectionItem\", {\n get: function () {\n return this._isCollectionItem;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"updateFunc\", {\n get: function () {\n return this._updateFunc;\n },\n enumerable: false,\n configurable: true\n });\n Configuration.prototype.init = function (options) {\n this._options = options ? options : [];\n };\n Object.defineProperty(Configuration.prototype, \"emitOptionChanged\", {\n set: function (handler) {\n this._emitOptionChanged = handler;\n },\n enumerable: false,\n configurable: true\n });\n Configuration.prototype.setPrevNestedOptions = function (value) {\n this._prevNestedConfigOptions = value;\n };\n Configuration.prototype.onOptionChanged = function (args) {\n if (helpers_1.isEqual(args.value, args.previousValue)) {\n return;\n }\n this._onOptionChanged(args.fullName.split(\".\"), args);\n };\n Configuration.prototype.cleanNested = function () {\n this._nestedConfigurations = [];\n };\n Configuration.prototype.createNested = function (name, initialValues, isCollectionItem, expectedChildren) {\n var expected = this._expectedChildren[name];\n var actualName = name;\n var actualIsCollectionItem = isCollectionItem;\n if (expected) {\n actualIsCollectionItem = expected.isCollectionItem;\n if (expected.optionName) {\n actualName = expected.optionName;\n }\n }\n var collectionItemIndex = -1;\n if (actualIsCollectionItem && actualName) {\n collectionItemIndex = this._nestedConfigurations.filter(function (c) { return c._name && c._name === actualName; }).length;\n }\n var configuration = new Configuration(this._updateFunc, actualName, initialValues, expectedChildren, actualIsCollectionItem, collectionItemIndex, this);\n this._nestedConfigurations.push(configuration);\n return configuration;\n };\n Configuration.prototype.updateValue = function (nestedName, value) {\n var fullName = [this.fullPath, nestedName].filter(function (n) { return n; }).join(\".\");\n this._updateFunc(fullName, value);\n };\n Configuration.prototype.getNestedOptionValues = function () {\n var values = {};\n this._nestedConfigurations.forEach(function (o) {\n if (!o._name) {\n return;\n }\n var nestedValue = __assign(__assign({}, o.initialValues), o.getNestedOptionValues());\n if (!nestedValue) {\n return;\n }\n if (!o._isCollectionItem) {\n values[o._name] = nestedValue;\n }\n else {\n var arr = values[o._name];\n if (!arr || !Array.isArray(arr)) {\n arr = [];\n values[o._name] = arr;\n }\n arr.push(nestedValue);\n }\n });\n return values;\n };\n Configuration.prototype.getOptionsToWatch = function () {\n var blackList = {};\n this._nestedConfigurations.forEach(function (c) { return c._name && (blackList[c._name] = true); });\n return this._options.filter(function (o) { return !blackList[o]; });\n };\n Configuration.prototype._onOptionChanged = function (optionRelPath, args) {\n if (optionRelPath.length === 0) {\n return;\n }\n var optionInfo = helpers_1.getOptionInfo(optionRelPath[0]);\n if (optionInfo.isCollection || optionRelPath.length > 1) {\n var nestedConfig = this._getNestedConfig(optionInfo.fullName);\n if (nestedConfig) {\n nestedConfig._onOptionChanged(optionRelPath.slice(1), args);\n return;\n }\n this._tryEmitOptionChanged(optionInfo.name, args.component.option(this.fullPath ? this.fullPath + \".\" + optionInfo.name : optionInfo.name));\n }\n else {\n this._tryEmitOptionChanged(optionInfo.name, args.value);\n }\n };\n Configuration.prototype._getNestedConfig = function (fullName) {\n for (var _i = 0, _a = this._nestedConfigurations; _i < _a.length; _i++) {\n var nestedConfig = _a[_i];\n if (nestedConfig.fullName === fullName) {\n return nestedConfig;\n }\n }\n return undefined;\n };\n Configuration.prototype._tryEmitOptionChanged = function (name, value) {\n if (this._emitOptionChanged) {\n this._emitOptionChanged(name, value);\n }\n };\n return Configuration;\n}());\nfunction bindOptionWatchers(config, vueInstance, innerChanges) {\n var targets = config && config.getOptionsToWatch();\n if (targets) {\n targets.forEach(function (optionName) {\n vueInstance.$watch(optionName, function (value) {\n if (!innerChanges.hasOwnProperty(optionName) ||\n innerChanges[optionName] !== value) {\n config.updateValue(optionName, value);\n }\n delete innerChanges[optionName];\n });\n });\n }\n}\nexports.bindOptionWatchers = bindOptionWatchers;\nfunction setEmitOptionChangedFunc(config, vueInstance, innerChanges) {\n config.emitOptionChanged = function (name, value) {\n if (!helpers_1.isEqual(value, vueInstance.$props[name])) {\n innerChanges[name] = value;\n vueInstance.$emit(\"update:\" + name, value);\n }\n };\n}\nexports.setEmitOptionChangedFunc = setEmitOptionChangedFunc;\nexports.default = Configuration;\n","/*!\n * devextreme-vue\n * Version: 21.2.11\n * Build date: Tue Oct 18 2022\n *\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DX_REMOVE_EVENT = exports.DX_TEMPLATE_WRAPPER_CLASS = void 0;\nvar DX_TEMPLATE_WRAPPER_CLASS = \"dx-template-wrapper\";\nexports.DX_TEMPLATE_WRAPPER_CLASS = DX_TEMPLATE_WRAPPER_CLASS;\nvar DX_REMOVE_EVENT = \"dxremove\";\nexports.DX_REMOVE_EVENT = DX_REMOVE_EVENT;\n","/*!\n * devextreme-vue\n * Version: 21.2.11\n * Build date: Tue Oct 18 2022\n *\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.TEMPLATE_MULTIPLE_ROOTS_ERROR = void 0;\nexports.TEMPLATE_MULTIPLE_ROOTS_ERROR = \"Template must have a single root node.\";\n","/*!\n * devextreme-vue\n * Version: 21.2.11\n * Build date: Tue Oct 18 2022\n *\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DxExtensionComponent = void 0;\nvar component_1 = require(\"./component\");\nvar DxExtensionComponent = function () { return component_1.BaseComponent().extend({\n created: function () {\n this.$_isExtension = true;\n },\n mounted: function () {\n this.$el.setAttribute(\"isExtension\", \"true\");\n if (this.$vnode && this.$vnode.componentOptions.$_hasOwner) {\n return;\n }\n this.attachTo(this.$el);\n },\n methods: {\n attachTo: function (element) {\n this.$_createWidget(element);\n }\n }\n}); };\nexports.DxExtensionComponent = DxExtensionComponent;\n","/*!\n * devextreme-vue\n * Version: 21.2.11\n * Build date: Tue Oct 18 2022\n *\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getOptionInfo = exports.getOptionValue = exports.allKeysAreEqual = exports.forEachChildNode = exports.isEqual = exports.toComparable = exports.camelize = exports.lowercaseFirst = exports.uppercaseFirst = exports.getTemplatePropName = void 0;\nfunction getTemplatePropName(props, templateName) {\n for (var propName in props) {\n if (props[propName] === templateName) {\n return propName;\n }\n }\n return templateName;\n}\nexports.getTemplatePropName = getTemplatePropName;\nfunction uppercaseFirst(value) {\n return value[0].toUpperCase() + value.substr(1);\n}\nexports.uppercaseFirst = uppercaseFirst;\nfunction lowercaseFirst(value) {\n return value[0].toLowerCase() + value.substr(1);\n}\nexports.lowercaseFirst = lowercaseFirst;\nfunction camelize(value) {\n return lowercaseFirst(value.split(\"-\").map(function (v) { return uppercaseFirst(v); }).join(\"\"));\n}\nexports.camelize = camelize;\nfunction toComparable(value) {\n return value instanceof Date ? value.getTime() : value;\n}\nexports.toComparable = toComparable;\nfunction isEqual(value1, value2) {\n if (toComparable(value1) === toComparable(value2)) {\n return true;\n }\n if (Array.isArray(value1) && Array.isArray(value2)) {\n return value1.length === 0 && value2.length === 0;\n }\n return false;\n}\nexports.isEqual = isEqual;\nfunction forEachChildNode(el, callback) {\n Array.prototype.slice.call(el.childNodes).forEach(callback);\n}\nexports.forEachChildNode = forEachChildNode;\nfunction allKeysAreEqual(obj1, obj2) {\n var obj1Keys = Object.keys(obj1);\n if (obj1Keys.length !== Object.keys(obj2).length) {\n return false;\n }\n for (var _i = 0, obj1Keys_1 = obj1Keys; _i < obj1Keys_1.length; _i++) {\n var key = obj1Keys_1[_i];\n if (!obj2.hasOwnProperty(key)) {\n return false;\n }\n }\n return true;\n}\nexports.allKeysAreEqual = allKeysAreEqual;\nfunction getOptionValue(options, optionPath) {\n var value = options;\n optionPath.split(\".\").forEach(function (p) {\n var optionInfo = getOptionInfo(p);\n if (value) {\n value = optionInfo.isCollection ?\n value[optionInfo.name] && value[optionInfo.name][optionInfo.index] :\n value[optionInfo.name];\n }\n });\n return value;\n}\nexports.getOptionValue = getOptionValue;\nfunction getOptionInfo(name) {\n var parts = name.split(\"[\");\n if (parts.length === 1) {\n return {\n isCollection: false,\n name: name,\n fullName: name\n };\n }\n return {\n isCollection: true,\n name: parts[0],\n fullName: name,\n index: Number(parts[1].slice(0, -1))\n };\n}\nexports.getOptionInfo = getOptionInfo;\n","/*!\n * devextreme-vue\n * Version: 21.2.11\n * Build date: Tue Oct 18 2022\n *\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.createExtensionComponent = exports.createConfigurationComponent = exports.createComponent = void 0;\nvar VueType = __importStar(require(\"vue\"));\nvar Vue = VueType.default || VueType;\nvar component_1 = require(\"./component\");\nvar configuration_component_1 = require(\"./configuration-component\");\nvar extension_component_1 = require(\"./extension-component\");\nfunction createComponent(config) {\n config.extends = component_1.DxComponent();\n return Vue.extend(config);\n}\nexports.createComponent = createComponent;\nfunction createConfigurationComponent(config) {\n config.extends = configuration_component_1.DxConfiguration();\n return Vue.extend(config);\n}\nexports.createConfigurationComponent = createConfigurationComponent;\nfunction createExtensionComponent(config) {\n config.extends = extension_component_1.DxExtensionComponent();\n return Vue.extend(config);\n}\nexports.createExtensionComponent = createExtensionComponent;\n","/*!\n * devextreme-vue\n * Version: 21.2.11\n * Build date: Tue Oct 18 2022\n *\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.discover = exports.mountTemplate = void 0;\nvar VueType = __importStar(require(\"vue\"));\nvar errors_1 = require(\"./errors\");\nvar TEMPLATE_PROP = \"template\";\nvar Vue = VueType.default || VueType;\nfunction asConfigurable(component) {\n if (!component.$vnode) {\n return undefined;\n }\n var configurable = component.$vnode.componentOptions;\n if (!configurable.$_config || !configurable.$_config.name) {\n return undefined;\n }\n return configurable;\n}\nfunction hasTemplate(component) {\n return TEMPLATE_PROP in component.$props && (component.$vnode.data && component.$vnode.data.scopedSlots);\n}\nfunction discover(component) {\n var templates = {};\n for (var slotName in component.$scopedSlots) {\n if (slotName === \"default\" && component.$slots.default) {\n continue;\n }\n var slot = component.$scopedSlots[slotName];\n if (!slot) {\n continue;\n }\n templates[slotName] = slot;\n }\n for (var _i = 0, _a = component.$children; _i < _a.length; _i++) {\n var childComponent = _a[_i];\n var configurable = asConfigurable(childComponent);\n if (!configurable) {\n continue;\n }\n var defaultSlot = childComponent.$scopedSlots.default;\n if (!defaultSlot || !hasTemplate(childComponent)) {\n continue;\n }\n var templateName = configurable.$_config.fullPath + \".\" + TEMPLATE_PROP;\n templates[templateName] = defaultSlot;\n }\n return templates;\n}\nexports.discover = discover;\nfunction mountTemplate(getSlot, parent, data, name, placeholder) {\n return new Vue({\n el: placeholder,\n name: name,\n inject: [\"eventBus\"],\n parent: parent,\n created: function () {\n var _this = this;\n this.eventBus.$on(\"updated\", function () {\n _this.$forceUpdate();\n });\n },\n render: function (createElement) {\n var content = getSlot()(data);\n if (!content) {\n return createElement(\"div\");\n }\n if (content.length > 1) {\n throw new Error(errors_1.TEMPLATE_MULTIPLE_ROOTS_ERROR);\n }\n return content[0];\n },\n destroyed: function () {\n // T857821\n this.eventBus.$off(\"updated\");\n }\n });\n}\nexports.mountTemplate = mountTemplate;\n","/*!\n * devextreme-vue\n * Version: 21.2.11\n * Build date: Tue Oct 18 2022\n *\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nvar __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};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.TemplatesManager = void 0;\nvar config_1 = require(\"./config\");\nvar templates_discovering_1 = require(\"./templates-discovering\");\nvar dom_adapter_1 = __importDefault(require(\"devextreme/core/dom_adapter\"));\nvar events_1 = require(\"devextreme/events\");\nvar constants_1 = require(\"./constants\");\nvar helpers_1 = require(\"./helpers\");\nvar TemplatesManager = /** @class */ (function () {\n function TemplatesManager(component) {\n this._slots = {};\n this._templates = {};\n this._isDirty = false;\n this._component = component;\n this.discover();\n }\n TemplatesManager.prototype.discover = function () {\n var slots = templates_discovering_1.discover(this._component);\n this._slots = __assign(__assign({}, this._slots), slots);\n if (!helpers_1.allKeysAreEqual(this._templates, slots)) {\n this._prepareTemplates();\n }\n };\n Object.defineProperty(TemplatesManager.prototype, \"templates\", {\n get: function () {\n return this._templates;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(TemplatesManager.prototype, \"isDirty\", {\n get: function () {\n return this._isDirty;\n },\n enumerable: false,\n configurable: true\n });\n TemplatesManager.prototype.resetDirtyFlag = function () {\n this._isDirty = false;\n };\n TemplatesManager.prototype._prepareTemplates = function () {\n this._templates = {};\n for (var _i = 0, _a = Object.keys(this._slots); _i < _a.length; _i++) {\n var name_1 = _a[_i];\n this._templates[name_1] = this.createDxTemplate(name_1);\n }\n this._isDirty = true;\n };\n TemplatesManager.prototype.createDxTemplate = function (name) {\n var _this = this;\n return {\n render: function (data) {\n var scopeData = config_1.getOption(\"useLegacyTemplateEngine\")\n ? data.model\n : { data: data.model, index: data.index };\n var container = data.container.get ? data.container.get(0) : data.container;\n var placeholder = document.createElement(\"div\");\n container.appendChild(placeholder);\n var mountedTemplate = templates_discovering_1.mountTemplate(function () { return _this._slots[name]; }, _this._component, scopeData, name, placeholder);\n var element = mountedTemplate.$el;\n dom_adapter_1.default.setClass(element, constants_1.DX_TEMPLATE_WRAPPER_CLASS, true);\n if (element.nodeType === Node.TEXT_NODE) {\n var removalListener = document.createElement(container.nodeName === \"TABLE\" ? \"tbody\" : \"span\");\n removalListener.style.display = \"none\";\n container.appendChild(removalListener);\n events_1.one(removalListener, constants_1.DX_REMOVE_EVENT, mountedTemplate.$destroy.bind(mountedTemplate));\n }\n else {\n events_1.one(element, constants_1.DX_REMOVE_EVENT, mountedTemplate.$destroy.bind(mountedTemplate));\n }\n return element;\n }\n };\n };\n return TemplatesManager;\n}());\nexports.TemplatesManager = TemplatesManager;\n","/*!\n * devextreme-vue\n * Version: 21.2.11\n * Build date: Tue Oct 18 2022\n *\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.createExtensionComponent = exports.createConfigurationComponent = exports.createComponent = void 0;\nvar vue_1 = require(\"vue\");\nvar component_1 = require(\"../../component\");\nvar configuration_component_1 = require(\"../../configuration-component\");\nvar extension_component_1 = require(\"../../extension-component\");\nvar vue_helper_1 = require(\"../../vue-helper\");\nfunction createComponent(config) {\n config.extends = component_1.initDxComponent();\n vue_helper_1.setCompatOptions(config);\n if (config.model) {\n vue_helper_1.setVModel(config);\n }\n return vue_1.defineComponent(config);\n}\nexports.createComponent = createComponent;\nfunction createConfigurationComponent(config) {\n config.extends = configuration_component_1.initDxConfiguration();\n vue_helper_1.setCompatOptions(config);\n return vue_1.defineComponent(config);\n}\nexports.createConfigurationComponent = createConfigurationComponent;\nfunction createExtensionComponent(config) {\n config.extends = extension_component_1.initDxExtensionComponent();\n vue_helper_1.setCompatOptions(config);\n return vue_1.defineComponent(config);\n}\nexports.createExtensionComponent = createExtensionComponent;\n","/*!\n * devextreme-vue\n * Version: 21.2.11\n * Build date: Tue Oct 18 2022\n *\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.discover = exports.mountTemplate = void 0;\nvar vue_helper_1 = require(\"./vue-helper\");\nvar vue_1 = require(\"vue\");\nvar TEMPLATE_PROP = \"template\";\nfunction asConfigurable(component) {\n var componentOptions = component;\n if (!componentOptions) {\n return;\n }\n if (!componentOptions.$_config || !componentOptions.$_config.name) {\n return undefined;\n }\n return componentOptions;\n}\nfunction hasTemplate(component) {\n return TEMPLATE_PROP in component.type.props && vue_helper_1.configurationTemplate(component);\n}\nfunction discover(component) {\n var templates = {};\n var namedTeplates = vue_helper_1.declaredTemplates(component);\n for (var slotName in namedTeplates) {\n if (slotName === \"default\" && component.$slots.default) {\n continue;\n }\n var slot = namedTeplates[slotName];\n if (!slot) {\n continue;\n }\n templates[slotName] = slot;\n }\n var componentChildren = vue_helper_1.getChildren(component);\n for (var _i = 0, componentChildren_1 = componentChildren; _i < componentChildren_1.length; _i++) {\n var childComponent = componentChildren_1[_i];\n var configurable = asConfigurable(childComponent);\n if (!configurable) {\n continue;\n }\n var defaultSlot = vue_helper_1.configurationDefaultTemplate(childComponent);\n if (!defaultSlot || !hasTemplate(childComponent)) {\n continue;\n }\n var templateName = configurable.$_config.fullPath + \".\" + TEMPLATE_PROP;\n templates[templateName] = defaultSlot;\n }\n return templates;\n}\nexports.discover = discover;\nfunction clearConfiguration(content) {\n var newContent = [];\n content.forEach(function (item) {\n var configurable = vue_helper_1.getConfigurationOptions(item);\n if (!configurable || !configurable.$_optionName) {\n newContent.push(item);\n }\n });\n return newContent;\n}\nfunction mountTemplate(getSlot, parent, data, name, placeholder) {\n return vue_helper_1.mount({\n name: name,\n inject: [\"eventBus\"],\n created: function () {\n this.eventBus.add(this.$_updatedHandler);\n },\n mounted: function () {\n data.onRendered();\n },\n unmounted: function () {\n this.eventBus.remove(this.$_updatedHandler);\n },\n methods: {\n $_updatedHandler: function () {\n this.$forceUpdate();\n }\n },\n render: function () {\n var content = clearConfiguration(getSlot()(data));\n if (!content) {\n return vue_1.h(\"div\");\n }\n return content.length > 1 ? content : content[0];\n }\n }, parent, placeholder);\n}\nexports.mountTemplate = mountTemplate;\n","/*!\n * devextreme-vue\n * Version: 21.2.11\n * Build date: Tue Oct 18 2022\n *\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nvar __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};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.TemplatesManager = void 0;\nvar templates_discovering_1 = require(\"./templates-discovering\");\nvar dom_adapter_1 = __importDefault(require(\"devextreme/core/dom_adapter\"));\nvar events_1 = require(\"devextreme/events\");\nvar constants_1 = require(\"./constants\");\nvar helpers_1 = require(\"./helpers\");\nvar TemplatesManager = /** @class */ (function () {\n function TemplatesManager(component) {\n this._slots = {};\n this._templates = {};\n this._isDirty = false;\n this._component = component;\n this.discover();\n }\n TemplatesManager.prototype.discover = function () {\n var slots = templates_discovering_1.discover(this._component);\n this._slots = __assign(__assign({}, this._slots), slots);\n if (!helpers_1.allKeysAreEqual(this._templates, slots)) {\n this._prepareTemplates();\n }\n };\n Object.defineProperty(TemplatesManager.prototype, \"templates\", {\n get: function () {\n return this._templates;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(TemplatesManager.prototype, \"isDirty\", {\n get: function () {\n return this._isDirty;\n },\n enumerable: false,\n configurable: true\n });\n TemplatesManager.prototype.resetDirtyFlag = function () {\n this._isDirty = false;\n };\n TemplatesManager.prototype._prepareTemplates = function () {\n this._templates = {};\n for (var _i = 0, _a = Object.keys(this._slots); _i < _a.length; _i++) {\n var name_1 = _a[_i];\n this._templates[name_1] = this.createDxTemplate(name_1);\n }\n this._isDirty = true;\n };\n TemplatesManager.prototype.createDxTemplate = function (name) {\n var _this = this;\n return {\n render: function (data) {\n var rendered = (function (onRendered, counter) {\n if (counter === void 0) { counter = 0; }\n return function () {\n if (counter === 1 && onRendered) {\n onRendered();\n }\n counter++;\n };\n })(data.onRendered);\n var scopeData = { data: data.model, index: data.index, onRendered: rendered };\n var placeholder = document.createElement(\"div\");\n var container = data.container.get ? data.container.get(0) : data.container;\n container.appendChild(placeholder);\n var mountedTemplate = templates_discovering_1.mountTemplate(function () { return _this._slots[name]; }, _this._component, scopeData, name, placeholder);\n var element = mountedTemplate.$el;\n container.removeChild(placeholder);\n while (placeholder.firstChild) {\n container.appendChild(placeholder.firstChild);\n }\n dom_adapter_1.default.setClass(element, constants_1.DX_TEMPLATE_WRAPPER_CLASS, true);\n if (element.nodeType === Node.TEXT_NODE) {\n var removalListener = document.createElement(container.nodeName === \"TABLE\" ? \"tbody\" : \"span\");\n removalListener.style.display = \"none\";\n container.appendChild(removalListener);\n events_1.one(removalListener, constants_1.DX_REMOVE_EVENT, mountedTemplate.$.appContext.app.unmount.bind(mountedTemplate));\n }\n else {\n events_1.one(element, constants_1.DX_REMOVE_EVENT, mountedTemplate.$.appContext.app.unmount.bind(mountedTemplate));\n }\n rendered();\n return element;\n }\n };\n };\n return TemplatesManager;\n}());\nexports.TemplatesManager = TemplatesManager;\n","/*!\n * devextreme-vue\n * Version: 21.2.11\n * Build date: Tue Oct 18 2022\n *\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isVue3 = exports.getVueVersion = void 0;\nvar VueType = __importStar(require(\"vue\"));\nvar Vue = VueType.default || VueType;\nfunction getVueVersion() {\n var currentVersion = Vue.version;\n return Number(currentVersion.split(\".\")[0]);\n}\nexports.getVueVersion = getVueVersion;\nfunction isVue3() {\n return getVueVersion() === 3;\n}\nexports.isVue3 = isVue3;\n","/*!\n * devextreme-vue\n * Version: 21.2.11\n * Build date: Tue Oct 18 2022\n *\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nvar __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};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getConfigurationOptions = exports.setVModel = exports.setCompatOptions = exports.getVModelValue = exports.getNodeTypeOfComponent = exports.getNodeOptions = exports.usedConfigurationProps = exports.getComponentProps = exports.mount = exports.defaultSlots = exports.declaredTemplates = exports.configurationTemplate = exports.configurationDefaultTemplate = exports.configurationChildren = exports.getNormalizedProps = exports.getComponentInfo = exports.getChildren = exports.VMODEL_NAME = void 0;\nvar vue_1 = require(\"vue\");\nvar helpers_1 = require(\"./helpers\");\nvar children_processing_1 = require(\"./children-processing\");\nexports.VMODEL_NAME = \"modelValue\";\nfunction getChildren(component) {\n if (!hasChildren(component) || !component.$_config) {\n return [];\n }\n var children = component.$.subTree && component.$.subTree.children;\n if (!Array.isArray(children)) {\n return [];\n }\n return children.filter(function (child) {\n if (!children_processing_1.isFragment(child)) {\n return child;\n }\n return;\n });\n}\nexports.getChildren = getChildren;\nfunction getComponentInfo(component) {\n return getConfigurationOptions(component);\n}\nexports.getComponentInfo = getComponentInfo;\nfunction getNormalizedProps(props) {\n var result = {};\n for (var propName in props) {\n if (props.hasOwnProperty(propName)) {\n result[helpers_1.camelize(propName)] = props[propName];\n }\n }\n return result;\n}\nexports.getNormalizedProps = getNormalizedProps;\nfunction configurationChildren(component) {\n if (!component.children || !component.children.default) {\n return [];\n }\n return findConfigurationComponents(component.children.default());\n}\nexports.configurationChildren = configurationChildren;\nfunction configurationDefaultTemplate(node) {\n if (!node.children || node.children === \"object\" || !node.children.default) {\n return;\n }\n return hasInlineTemplate(node.children.default()) ? node.children.default : undefined;\n}\nexports.configurationDefaultTemplate = configurationDefaultTemplate;\nfunction configurationTemplate(node) {\n return configurationDefaultTemplate(node);\n}\nexports.configurationTemplate = configurationTemplate;\nfunction declaredTemplates(component) {\n return component.$slots;\n}\nexports.declaredTemplates = declaredTemplates;\nfunction defaultSlots(component) {\n var templates = declaredTemplates(component);\n if (!templates.default) {\n return [];\n }\n return templates.default();\n}\nexports.defaultSlots = defaultSlots;\nfunction mount(options, parent, el) {\n var template = vue_1.createApp(options);\n template.provide(\"eventBus\", parent.eventBus);\n setAppContext(template, parent);\n return template.mount(el);\n}\nexports.mount = mount;\nfunction getComponentProps(component) {\n var props = component.$.vnode.props || {};\n return getNormalizedProps(props);\n}\nexports.getComponentProps = getComponentProps;\nfunction usedConfigurationProps(node) {\n return node.props;\n}\nexports.usedConfigurationProps = usedConfigurationProps;\nfunction getNodeOptions(component) {\n if (component.$) {\n return component.$.vnode;\n }\n return component;\n}\nexports.getNodeOptions = getNodeOptions;\nfunction getNodeTypeOfComponent(component) {\n return component.$.vnode.type;\n}\nexports.getNodeTypeOfComponent = getNodeTypeOfComponent;\nfunction getVModelValue(options) {\n return options[exports.VMODEL_NAME];\n}\nexports.getVModelValue = getVModelValue;\nfunction setCompatOptions(component) {\n component.compatConfig = {\n MODE: 3\n };\n}\nexports.setCompatOptions = setCompatOptions;\nfunction setVModel(config) {\n var _a;\n var eventName = \"update:\" + exports.VMODEL_NAME;\n config.model.prop = exports.VMODEL_NAME;\n config.model.event = eventName;\n config.props.modelValue = {};\n config.emits = __assign(__assign({}, config.emits), (_a = {}, _a[\"\" + eventName] = null, _a));\n}\nexports.setVModel = setVModel;\nfunction setCustomPluginsData(appContext, parentAppContext) {\n for (var prop in parentAppContext) {\n if (!appContext.hasOwnProperty(prop) && parentAppContext.hasOwnProperty(prop)) {\n appContext[prop] = parentAppContext[prop];\n }\n }\n}\nfunction setAppContext(template, parent) {\n template._context.components = Object.assign(parent.$.appContext.components, template._context.components);\n Object.setPrototypeOf(template._context.provides, Object.getPrototypeOf(parent.$.provides));\n Object.assign(template._context.provides, parent.$.appContext.provides);\n template._context.config = parent.$.appContext.config;\n template._context.directives = parent.$.appContext.directives;\n template._context.mixins = parent.$.appContext.mixins;\n setCustomPluginsData(template._context.app, parent.$.appContext.app);\n}\nfunction findConfigurationComponents(children) {\n return children.filter(function (child) {\n if (children_processing_1.isFragment(child)) {\n return findConfigurationComponents(child.children || []);\n }\n var childType = child.type;\n if (childType && typeof childType === \"object\" && childType.$_optionName) {\n delete child.$_config;\n delete child.$_innerChanges;\n return child;\n }\n return;\n });\n}\nfunction hasInlineTemplate(children) {\n var hasTemplate = false;\n children.forEach(function (child) {\n if (!isConfiguration(child) && !children_processing_1.isFragment(child) && !isComment(child)) {\n hasTemplate = true;\n }\n });\n return hasTemplate;\n}\nfunction isComment(node) {\n var nodeType = node.type;\n var type = typeof nodeType === \"symbol\" ? nodeType.toString() : nodeType;\n return type === \"Symbol(Comment)\" || (type === \"Symbol()\" && !node.children);\n}\nfunction isConfiguration(child) {\n return child.type && typeof child.type === \"object\" && child.type.$_optionName;\n}\nfunction getConfigurationOptions(node) {\n return node.type;\n}\nexports.getConfigurationOptions = getConfigurationOptions;\nfunction hasChildren(component) {\n return component.$.vnode && component.$.vnode.children && component.$.vnode.children.default;\n}\n","/**\r\n * DevExtreme (esm/core/action.js)\r\n * Version: 21.2.11\r\n * Build date: Tue Oct 18 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport $ from \"./renderer\";\r\nimport {\r\n getWindow\r\n} from \"./utils/window\";\r\nimport {\r\n isPlainObject,\r\n isFunction\r\n} from \"./utils/type\";\r\nimport {\r\n each\r\n} from \"./utils/iterator\";\r\nexport default class Action {\r\n constructor(action, config) {\r\n config = config || {};\r\n this._action = action;\r\n this._context = config.context || getWindow();\r\n this._beforeExecute = config.beforeExecute;\r\n this._afterExecute = config.afterExecute;\r\n this._component = config.component;\r\n this._validatingTargetName = config.validatingTargetName;\r\n var excludeValidators = this._excludeValidators = {};\r\n if (config.excludeValidators) {\r\n for (var i = 0; i < config.excludeValidators.length; i++) {\r\n excludeValidators[config.excludeValidators[i]] = true\r\n }\r\n }\r\n }\r\n execute() {\r\n var e = {\r\n action: this._action,\r\n args: Array.prototype.slice.call(arguments),\r\n context: this._context,\r\n component: this._component,\r\n validatingTargetName: this._validatingTargetName,\r\n cancel: false,\r\n handled: false\r\n };\r\n var beforeExecute = this._beforeExecute;\r\n var afterExecute = this._afterExecute;\r\n var argsBag = e.args[0] || {};\r\n if (!this._validateAction(e)) {\r\n return\r\n }\r\n null === beforeExecute || void 0 === beforeExecute ? void 0 : beforeExecute.call(this._context, e);\r\n if (e.cancel) {\r\n return\r\n }\r\n var result = this._executeAction(e);\r\n if (argsBag.cancel) {\r\n return\r\n }\r\n null === afterExecute || void 0 === afterExecute ? void 0 : afterExecute.call(this._context, e);\r\n return result\r\n }\r\n _validateAction(e) {\r\n var excludeValidators = this._excludeValidators;\r\n var {\r\n executors: executors\r\n } = Action;\r\n for (var name in executors) {\r\n if (!excludeValidators[name]) {\r\n var _executor$validate;\r\n var executor = executors[name];\r\n null === (_executor$validate = executor.validate) || void 0 === _executor$validate ? void 0 : _executor$validate.call(executor, e);\r\n if (e.cancel) {\r\n return false\r\n }\r\n }\r\n }\r\n return true\r\n }\r\n _executeAction(e) {\r\n var result;\r\n var {\r\n executors: executors\r\n } = Action;\r\n for (var name in executors) {\r\n var _executor$execute;\r\n var executor = executors[name];\r\n null === (_executor$execute = executor.execute) || void 0 === _executor$execute ? void 0 : _executor$execute.call(executor, e);\r\n if (e.handled) {\r\n result = e.result;\r\n break\r\n }\r\n }\r\n return result\r\n }\r\n static registerExecutor(name, executor) {\r\n if (isPlainObject(name)) {\r\n each(name, Action.registerExecutor);\r\n return\r\n }\r\n Action.executors[name] = executor\r\n }\r\n static unregisterExecutor() {\r\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\r\n args[_key] = arguments[_key]\r\n }\r\n each(args, (function() {\r\n delete Action.executors[this]\r\n }))\r\n }\r\n}\r\nAction.executors = {};\r\nvar createValidatorByTargetElement = condition => e => {\r\n if (!e.args.length) {\r\n return\r\n }\r\n var args = e.args[0];\r\n var element = args[e.validatingTargetName] || args.element;\r\n if (element && condition($(element))) {\r\n e.cancel = true\r\n }\r\n};\r\nAction.registerExecutor({\r\n disabled: {\r\n validate: createValidatorByTargetElement($target => $target.is(\".dx-state-disabled, .dx-state-disabled *\"))\r\n },\r\n readOnly: {\r\n validate: createValidatorByTargetElement($target => $target.is(\".dx-state-readonly, .dx-state-readonly *:not(.dx-state-independent)\"))\r\n },\r\n undefined: {\r\n execute: e => {\r\n if (!e.action) {\r\n e.result = void 0;\r\n e.handled = true\r\n }\r\n }\r\n },\r\n func: {\r\n execute: e => {\r\n if (isFunction(e.action)) {\r\n e.result = e.action.call(e.context, e.args[0]);\r\n e.handled = true\r\n }\r\n }\r\n }\r\n});\r\n","/**\r\n * DevExtreme (esm/core/options/option_manager.js)\r\n * Version: 21.2.11\r\n * Build date: Tue Oct 18 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport {\r\n compileGetter,\r\n compileSetter,\r\n getPathParts\r\n} from \"../utils/data\";\r\nimport {\r\n noop\r\n} from \"../utils/common\";\r\nimport {\r\n equals\r\n} from \"../utils/comparator\";\r\nimport {\r\n extend\r\n} from \"../utils/extend\";\r\nimport {\r\n isDefined,\r\n isPlainObject\r\n} from \"../utils/type\";\r\nimport {\r\n normalizeOptions\r\n} from \"./utils\";\r\nvar cachedGetters = {};\r\nvar cachedSetters = {};\r\nexport class OptionManager {\r\n constructor(options, optionsByReference) {\r\n this._options = options;\r\n this._optionsByReference = optionsByReference;\r\n this._changingCallback;\r\n this._changedCallback;\r\n this._namePreparedCallbacks\r\n }\r\n _setByReference(options, rulesOptions) {\r\n extend(true, options, rulesOptions);\r\n for (var fieldName in this._optionsByReference) {\r\n if (Object.prototype.hasOwnProperty.call(rulesOptions, fieldName)) {\r\n options[fieldName] = rulesOptions[fieldName]\r\n }\r\n }\r\n }\r\n _setPreparedValue(name, value, merge, silent) {\r\n var previousValue = this.get(this._options, name, false);\r\n if (!equals(previousValue, value)) {\r\n var path = getPathParts(name);\r\n !silent && this._changingCallback(name, previousValue, value);\r\n cachedSetters[name] = cachedSetters[name] || compileSetter(name);\r\n cachedSetters[name](this._options, value, {\r\n functionsAsIs: true,\r\n merge: isDefined(merge) ? merge : !this._optionsByReference[name],\r\n unwrapObservables: path.length > 1 && !!this._optionsByReference[path[0]]\r\n });\r\n !silent && this._changedCallback(name, value, previousValue)\r\n }\r\n }\r\n _prepareRelevantNames(options, name, value, silent) {\r\n if (isPlainObject(value)) {\r\n for (var valueName in value) {\r\n this._prepareRelevantNames(options, \"\".concat(name, \".\").concat(valueName), value[valueName])\r\n }\r\n }\r\n this._namePreparedCallbacks(options, name, value, silent)\r\n }\r\n get() {\r\n var options = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : this._options;\r\n var name = arguments.length > 1 ? arguments[1] : void 0;\r\n var unwrapObservables = arguments.length > 2 ? arguments[2] : void 0;\r\n cachedGetters[name] = cachedGetters[name] || compileGetter(name);\r\n return cachedGetters[name](options, {\r\n functionsAsIs: true,\r\n unwrapObservables: unwrapObservables\r\n })\r\n }\r\n set(options, value, merge, silent) {\r\n options = normalizeOptions(options, value);\r\n for (var name in options) {\r\n this._prepareRelevantNames(options, name, options[name], silent)\r\n }\r\n for (var _name in options) {\r\n this._setPreparedValue(_name, options[_name], merge, silent)\r\n }\r\n }\r\n onRelevantNamesPrepared(callBack) {\r\n this._namePreparedCallbacks = callBack\r\n }\r\n onChanging(callBack) {\r\n this._changingCallback = callBack\r\n }\r\n onChanged(callBack) {\r\n this._changedCallback = callBack\r\n }\r\n dispose() {\r\n this._changingCallback = noop;\r\n this._changedCallback = noop\r\n }\r\n}\r\n","/**\r\n * DevExtreme (esm/core/options/index.js)\r\n * Version: 21.2.11\r\n * Build date: Tue Oct 18 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\r\nimport {\r\n isFunction,\r\n isObject,\r\n type\r\n} from \"../utils/type\";\r\nimport {\r\n equalByValue,\r\n noop\r\n} from \"../utils/common\";\r\nimport {\r\n OptionManager\r\n} from \"./option_manager\";\r\nimport {\r\n getPathParts\r\n} from \"../utils/data\";\r\nimport {\r\n getFieldName,\r\n getParentName,\r\n convertRulesToOptions,\r\n getNestedOptionValue\r\n} from \"./utils\";\r\nimport {\r\n extend\r\n} from \"../utils/extend\";\r\nexport class Options {\r\n constructor(options, defaultOptions, optionsByReference, deprecatedOptions) {\r\n this._deprecatedCallback;\r\n this._startChangeCallback;\r\n this._endChangeCallback;\r\n this._default = defaultOptions;\r\n this._deprecated = deprecatedOptions;\r\n this._deprecatedNames = [];\r\n this._initDeprecatedNames();\r\n this._optionManager = new OptionManager(options, optionsByReference);\r\n this._optionManager.onRelevantNamesPrepared((options, name, value, silent) => this._setRelevantNames(options, name, value, silent));\r\n this._cachedOptions = {};\r\n this._rules = []\r\n }\r\n set _initial(value) {\r\n this._initialOptions = value\r\n }\r\n get _initial() {\r\n if (!this._initialOptions) {\r\n var rulesOptions = this._getByRules(this.silent(\"defaultOptionsRules\"));\r\n this._initialOptions = this._default;\r\n this._optionManager._setByReference(this._initialOptions, rulesOptions)\r\n }\r\n return this._initialOptions\r\n }\r\n _initDeprecatedNames() {\r\n for (var optionName in this._deprecated) {\r\n this._deprecatedNames.push(optionName)\r\n }\r\n }\r\n _getByRules(rules) {\r\n rules = Array.isArray(rules) ? this._rules.concat(rules) : this._rules;\r\n return convertRulesToOptions(rules)\r\n }\r\n _notifyDeprecated(option) {\r\n var info = this._deprecated[option];\r\n if (info) {\r\n this._deprecatedCallback(option, info)\r\n }\r\n }\r\n _setRelevantNames(options, name, value, silent) {\r\n if (name) {\r\n var normalizedName = this._normalizeName(name, silent);\r\n if (normalizedName && normalizedName !== name) {\r\n this._setField(options, normalizedName, value);\r\n this._clearField(options, name)\r\n }\r\n }\r\n }\r\n _setField(options, fullName, value) {\r\n var fieldName = \"\";\r\n var fieldObject = null;\r\n do {\r\n fieldName = fieldName ? \".\".concat(fieldName) : \"\";\r\n fieldName = getFieldName(fullName) + fieldName;\r\n fullName = getParentName(fullName);\r\n fieldObject = fullName ? this._optionManager.get(options, fullName, false) : options\r\n } while (!fieldObject);\r\n fieldObject[fieldName] = value\r\n }\r\n _clearField(options, name) {\r\n delete options[name];\r\n var previousFieldName = getParentName(name);\r\n var fieldObject = previousFieldName ? this._optionManager.get(options, previousFieldName, false) : options;\r\n if (fieldObject) {\r\n delete fieldObject[getFieldName(name)]\r\n }\r\n }\r\n _normalizeName(name, silent) {\r\n if (this._deprecatedNames.length && name) {\r\n for (var i = 0; i < this._deprecatedNames.length; i++) {\r\n if (this._deprecatedNames[i] === name) {\r\n var deprecate = this._deprecated[name];\r\n if (deprecate) {\r\n !silent && this._notifyDeprecated(name);\r\n return deprecate.alias || name\r\n }\r\n }\r\n }\r\n }\r\n return name\r\n }\r\n addRules(rules) {\r\n this._rules = rules.concat(this._rules)\r\n }\r\n applyRules(rules) {\r\n var options = this._getByRules(rules);\r\n this.silent(options)\r\n }\r\n dispose() {\r\n this._deprecatedCallback = noop;\r\n this._startChangeCallback = noop;\r\n this._endChangeCallback = noop;\r\n this._optionManager.dispose()\r\n }\r\n onChanging(callBack) {\r\n this._optionManager.onChanging(callBack)\r\n }\r\n onChanged(callBack) {\r\n this._optionManager.onChanged(callBack)\r\n }\r\n onDeprecated(callBack) {\r\n this._deprecatedCallback = callBack\r\n }\r\n onStartChange(callBack) {\r\n this._startChangeCallback = callBack\r\n }\r\n onEndChange(callBack) {\r\n this._endChangeCallback = callBack\r\n }\r\n isInitial(name) {\r\n var value = this.silent(name);\r\n var initialValue = this.initial(name);\r\n var areFunctions = isFunction(value) && isFunction(initialValue);\r\n return areFunctions ? value.toString() === initialValue.toString() : equalByValue(value, initialValue)\r\n }\r\n initial(name) {\r\n return getNestedOptionValue(this._initial, name)\r\n }\r\n option(options, value) {\r\n var isGetter = arguments.length < 2 && \"object\" !== type(options);\r\n if (isGetter) {\r\n return this._optionManager.get(void 0, this._normalizeName(options))\r\n } else {\r\n this._startChangeCallback();\r\n try {\r\n this._optionManager.set(options, value)\r\n } finally {\r\n this._endChangeCallback()\r\n }\r\n }\r\n }\r\n silent(options, value) {\r\n var isGetter = arguments.length < 2 && \"object\" !== type(options);\r\n if (isGetter) {\r\n return this._optionManager.get(void 0, options, void 0, true)\r\n } else {\r\n this._optionManager.set(options, value, void 0, true)\r\n }\r\n }\r\n reset(name) {\r\n if (name) {\r\n var fullPath = getPathParts(name);\r\n var value = fullPath.reduce((value, field) => value ? value[field] : this.initial(field), null);\r\n var defaultValue = isObject(value) ? _extends({}, value) : value;\r\n this._optionManager.set(name, defaultValue, false)\r\n }\r\n }\r\n getAliasesByName(name) {\r\n return Object.keys(this._deprecated).filter(aliasName => name === this._deprecated[aliasName].alias)\r\n }\r\n isDeprecated(name) {\r\n return Object.prototype.hasOwnProperty.call(this._deprecated, name)\r\n }\r\n cache(name, options) {\r\n var isGetter = arguments.length < 2;\r\n if (isGetter) {\r\n return this._cachedOptions[name]\r\n } else {\r\n this._cachedOptions[name] = extend(this._cachedOptions[name], options)\r\n }\r\n }\r\n}\r\n","/**\r\n * DevExtreme (esm/core/postponed_operations.js)\r\n * Version: 21.2.11\r\n * Build date: Tue Oct 18 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport {\r\n Deferred,\r\n when\r\n} from \"./utils/deferred\";\r\nimport {\r\n isDefined\r\n} from \"./utils/type\";\r\nexport class PostponedOperations {\r\n constructor() {\r\n this._postponedOperations = {}\r\n }\r\n add(key, fn, postponedPromise) {\r\n if (key in this._postponedOperations) {\r\n postponedPromise && this._postponedOperations[key].promises.push(postponedPromise)\r\n } else {\r\n var completePromise = new Deferred;\r\n this._postponedOperations[key] = {\r\n fn: fn,\r\n completePromise: completePromise,\r\n promises: postponedPromise ? [postponedPromise] : []\r\n }\r\n }\r\n return this._postponedOperations[key].completePromise.promise()\r\n }\r\n callPostponedOperations() {\r\n for (var key in this._postponedOperations) {\r\n var operation = this._postponedOperations[key];\r\n if (isDefined(operation)) {\r\n if (operation.promises && operation.promises.length) {\r\n when(...operation.promises).done(operation.fn).then(operation.completePromise.resolve)\r\n } else {\r\n operation.fn().done(operation.completePromise.resolve)\r\n }\r\n }\r\n }\r\n this._postponedOperations = {}\r\n }\r\n}\r\n","/**\r\n * DevExtreme (esm/core/component.js)\r\n * Version: 21.2.11\r\n * Build date: Tue Oct 18 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport Config from \"./config\";\r\nimport {\r\n extend\r\n} from \"./utils/extend\";\r\nimport {\r\n Options\r\n} from \"./options/index\";\r\nimport {\r\n convertRulesToOptions\r\n} from \"./options/utils\";\r\nimport Class from \"./class\";\r\nimport Action from \"./action\";\r\nimport errors from \"./errors\";\r\nimport Callbacks from \"./utils/callbacks\";\r\nimport {\r\n EventsStrategy\r\n} from \"./events_strategy\";\r\nimport {\r\n name as publicComponentName\r\n} from \"./utils/public_component\";\r\nimport {\r\n PostponedOperations\r\n} from \"./postponed_operations\";\r\nimport {\r\n isFunction,\r\n isPlainObject,\r\n isDefined\r\n} from \"./utils/type\";\r\nimport {\r\n noop\r\n} from \"./utils/common\";\r\nimport {\r\n getPathParts\r\n} from \"./utils/data\";\r\nvar getEventName = actionName => actionName.charAt(2).toLowerCase() + actionName.substr(3);\r\nvar isInnerOption = optionName => 0 === optionName.indexOf(\"_\", 0);\r\nexport var Component = Class.inherit({\r\n _setDeprecatedOptions() {\r\n this._deprecatedOptions = {}\r\n },\r\n _getDeprecatedOptions() {\r\n return this._deprecatedOptions\r\n },\r\n _getDefaultOptions: () => ({\r\n onInitialized: null,\r\n onOptionChanged: null,\r\n onDisposing: null,\r\n defaultOptionsRules: null\r\n }),\r\n _defaultOptionsRules: () => [],\r\n _setOptionsByDevice(rules) {\r\n this._options.applyRules(rules)\r\n },\r\n _convertRulesToOptions: rules => convertRulesToOptions(rules),\r\n _isInitialOptionValue(name) {\r\n return this._options.isInitial(name)\r\n },\r\n _setOptionsByReference() {\r\n this._optionsByReference = {}\r\n },\r\n _getOptionsByReference() {\r\n return this._optionsByReference\r\n },\r\n ctor() {\r\n var options = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};\r\n var {\r\n _optionChangedCallbacks: _optionChangedCallbacks,\r\n _disposingCallbacks: _disposingCallbacks\r\n } = options;\r\n this.NAME = publicComponentName(this.constructor);\r\n this._eventsStrategy = EventsStrategy.create(this, options.eventsStrategy);\r\n this._updateLockCount = 0;\r\n this._optionChangedCallbacks = _optionChangedCallbacks || Callbacks();\r\n this._disposingCallbacks = _disposingCallbacks || Callbacks();\r\n this.postponedOperations = new PostponedOperations;\r\n this._createOptions(options)\r\n },\r\n _createOptions(options) {\r\n this.beginUpdate();\r\n try {\r\n this._setOptionsByReference();\r\n this._setDeprecatedOptions();\r\n this._options = new Options(this._getDefaultOptions(), this._getDefaultOptions(), this._getOptionsByReference(), this._getDeprecatedOptions());\r\n this._options.onChanging((name, previousValue, value) => this._initialized && this._optionChanging(name, previousValue, value));\r\n this._options.onDeprecated((option, info) => this._logDeprecatedOptionWarning(option, info));\r\n this._options.onChanged((name, value, previousValue) => this._notifyOptionChanged(name, value, previousValue));\r\n this._options.onStartChange(() => this.beginUpdate());\r\n this._options.onEndChange(() => this.endUpdate());\r\n this._options.addRules(this._defaultOptionsRules());\r\n if (options && options.onInitializing) {\r\n options.onInitializing.apply(this, [options])\r\n }\r\n this._setOptionsByDevice(options.defaultOptionsRules);\r\n this._initOptions(options)\r\n } finally {\r\n this.endUpdate()\r\n }\r\n },\r\n _initOptions(options) {\r\n this.option(options)\r\n },\r\n _init() {\r\n this._createOptionChangedAction();\r\n this.on(\"disposing\", args => {\r\n this._disposingCallbacks.fireWith(this, [args])\r\n })\r\n },\r\n _logDeprecatedOptionWarning(option, info) {\r\n var message = info.message || \"Use the '\".concat(info.alias, \"' option instead\");\r\n errors.log(\"W0001\", this.NAME, option, info.since, message)\r\n },\r\n _logDeprecatedComponentWarning(since, alias) {\r\n errors.log(\"W0000\", this.NAME, since, \"Use the '\".concat(alias, \"' widget instead\"))\r\n },\r\n _createOptionChangedAction() {\r\n this._optionChangedAction = this._createActionByOption(\"onOptionChanged\", {\r\n excludeValidators: [\"disabled\", \"readOnly\"]\r\n })\r\n },\r\n _createDisposingAction() {\r\n this._disposingAction = this._createActionByOption(\"onDisposing\", {\r\n excludeValidators: [\"disabled\", \"readOnly\"]\r\n })\r\n },\r\n _optionChanged(args) {\r\n switch (args.name) {\r\n case \"onDisposing\":\r\n case \"onInitialized\":\r\n break;\r\n case \"onOptionChanged\":\r\n this._createOptionChangedAction()\r\n }\r\n },\r\n _dispose() {\r\n this._optionChangedCallbacks.empty();\r\n this._createDisposingAction();\r\n this._disposingAction();\r\n this._eventsStrategy.dispose();\r\n this._options.dispose();\r\n this._disposed = true\r\n },\r\n _lockUpdate() {\r\n this._updateLockCount++\r\n },\r\n _unlockUpdate() {\r\n this._updateLockCount = Math.max(this._updateLockCount - 1, 0)\r\n },\r\n _isUpdateAllowed() {\r\n return 0 === this._updateLockCount\r\n },\r\n _isInitializingRequired() {\r\n return !this._initializing && !this._initialized\r\n },\r\n isInitialized() {\r\n return this._initialized\r\n },\r\n _commitUpdate() {\r\n this.postponedOperations.callPostponedOperations();\r\n this._isInitializingRequired() && this._initializeComponent()\r\n },\r\n _initializeComponent() {\r\n this._initializing = true;\r\n try {\r\n this._init()\r\n } finally {\r\n this._initializing = false;\r\n this._lockUpdate();\r\n this._createActionByOption(\"onInitialized\", {\r\n excludeValidators: [\"disabled\", \"readOnly\"]\r\n })();\r\n this._unlockUpdate();\r\n this._initialized = true\r\n }\r\n },\r\n instance() {\r\n return this\r\n },\r\n beginUpdate: function() {\r\n this._lockUpdate()\r\n },\r\n endUpdate: function() {\r\n this._unlockUpdate();\r\n this._isUpdateAllowed() && this._commitUpdate()\r\n },\r\n _optionChanging: noop,\r\n _notifyOptionChanged(option, value, previousValue) {\r\n if (this._initialized) {\r\n var optionNames = [option].concat(this._options.getAliasesByName(option));\r\n for (var i = 0; i < optionNames.length; i++) {\r\n var name = optionNames[i];\r\n var args = {\r\n name: getPathParts(name)[0],\r\n fullName: name,\r\n value: value,\r\n previousValue: previousValue\r\n };\r\n if (!isInnerOption(name)) {\r\n this._optionChangedCallbacks.fireWith(this, [extend(this._defaultActionArgs(), args)]);\r\n this._optionChangedAction(extend({}, args))\r\n }\r\n if (!this._disposed && this._cancelOptionChange !== name) {\r\n this._optionChanged(args)\r\n }\r\n }\r\n }\r\n },\r\n initialOption(name) {\r\n return this._options.initial(name)\r\n },\r\n _defaultActionConfig() {\r\n return {\r\n context: this,\r\n component: this\r\n }\r\n },\r\n _defaultActionArgs() {\r\n return {\r\n component: this\r\n }\r\n },\r\n _createAction(actionSource, config) {\r\n var action;\r\n return e => {\r\n if (!isDefined(e)) {\r\n e = {}\r\n }\r\n if (!isPlainObject(e)) {\r\n e = {\r\n actionValue: e\r\n }\r\n }\r\n action = action || new Action(actionSource, extend(config, this._defaultActionConfig()));\r\n return action.execute.call(action, extend(e, this._defaultActionArgs()))\r\n }\r\n },\r\n _createActionByOption(optionName, config) {\r\n var _this = this;\r\n var action;\r\n var eventName;\r\n var actionFunc;\r\n var result = function() {\r\n if (!eventName) {\r\n config = config || {};\r\n if (\"string\" !== typeof optionName) {\r\n throw errors.Error(\"E0008\")\r\n }\r\n if (0 === optionName.indexOf(\"on\")) {\r\n eventName = getEventName(optionName)\r\n }\r\n actionFunc = _this.option(optionName)\r\n }\r\n if (!action && !actionFunc && !config.beforeExecute && !config.afterExecute && !_this._eventsStrategy.hasEvent(eventName)) {\r\n return\r\n }\r\n if (!action) {\r\n var beforeExecute = config.beforeExecute;\r\n config.beforeExecute = function() {\r\n for (var _len2 = arguments.length, props = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\r\n props[_key2] = arguments[_key2]\r\n }\r\n beforeExecute && beforeExecute.apply(_this, props);\r\n _this._eventsStrategy.fireEvent(eventName, props[0].args)\r\n };\r\n action = _this._createAction(actionFunc, config)\r\n }\r\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\r\n args[_key] = arguments[_key]\r\n }\r\n if (Config().wrapActionsBeforeExecute) {\r\n var beforeActionExecute = _this.option(\"beforeActionExecute\") || noop;\r\n var wrappedAction = beforeActionExecute(_this, action, config) || action;\r\n return wrappedAction.apply(_this, args)\r\n }\r\n return action.apply(_this, args)\r\n };\r\n if (Config().wrapActionsBeforeExecute) {\r\n return result\r\n }\r\n var onActionCreated = this.option(\"onActionCreated\") || noop;\r\n return onActionCreated(this, result, config) || result\r\n },\r\n on(eventName, eventHandler) {\r\n this._eventsStrategy.on(eventName, eventHandler);\r\n return this\r\n },\r\n off(eventName, eventHandler) {\r\n this._eventsStrategy.off(eventName, eventHandler);\r\n return this\r\n },\r\n hasActionSubscription: function(actionName) {\r\n return !!this._options.silent(actionName) || this._eventsStrategy.hasEvent(getEventName(actionName))\r\n },\r\n isOptionDeprecated(name) {\r\n return this._options.isDeprecated(name)\r\n },\r\n _setOptionWithoutOptionChange(name, value) {\r\n this._cancelOptionChange = name;\r\n this.option(name, value);\r\n this._cancelOptionChange = false\r\n },\r\n _getOptionValue(name, context) {\r\n var value = this.option(name);\r\n if (isFunction(value)) {\r\n return value.bind(context)()\r\n }\r\n return value\r\n },\r\n option() {\r\n return this._options.option(...arguments)\r\n },\r\n resetOption(name) {\r\n this.beginUpdate();\r\n this._options.reset(name);\r\n this.endUpdate()\r\n }\r\n});\r\n","/**\r\n * DevExtreme (esm/core/component_registrator_callbacks.js)\r\n * Version: 21.2.11\r\n * Build date: Tue Oct 18 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport MemorizedCallbacks from \"./memorized_callbacks\";\r\nexport default new MemorizedCallbacks;\r\n","/**\r\n * DevExtreme (esm/core/component_registrator.js)\r\n * Version: 21.2.11\r\n * Build date: Tue Oct 18 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport $ from \"./renderer\";\r\nimport callbacks from \"./component_registrator_callbacks\";\r\nimport errors from \"./errors\";\r\nimport {\r\n name as publicComponentName\r\n} from \"./utils/public_component\";\r\nvar registerComponent = function(name, namespace, componentClass) {\r\n if (!componentClass) {\r\n componentClass = namespace\r\n } else {\r\n namespace[name] = componentClass\r\n }\r\n publicComponentName(componentClass, name);\r\n callbacks.fire(name, componentClass)\r\n};\r\nvar registerRendererComponent = function(name, componentClass) {\r\n $.fn[name] = function(options) {\r\n var isMemberInvoke = \"string\" === typeof options;\r\n var result;\r\n if (isMemberInvoke) {\r\n var memberName = options;\r\n var memberArgs = [].slice.call(arguments).slice(1);\r\n this.each((function() {\r\n var instance = componentClass.getInstance(this);\r\n if (!instance) {\r\n throw errors.Error(\"E0009\", name)\r\n }\r\n var member = instance[memberName];\r\n var memberValue = member.apply(instance, memberArgs);\r\n if (void 0 === result) {\r\n result = memberValue\r\n }\r\n }))\r\n } else {\r\n this.each((function() {\r\n var instance = componentClass.getInstance(this);\r\n if (instance) {\r\n instance.option(options)\r\n } else {\r\n new componentClass(this, options)\r\n }\r\n }));\r\n result = this\r\n }\r\n return result\r\n }\r\n};\r\ncallbacks.add(registerRendererComponent);\r\nexport default registerComponent;\r\n","/**\r\n * DevExtreme (esm/core/devices.js)\r\n * Version: 21.2.11\r\n * Build date: Tue Oct 18 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport {\r\n getHeight,\r\n getWidth\r\n} from \"./utils/size\";\r\nimport $ from \"../core/renderer\";\r\nimport {\r\n getWindow,\r\n getNavigator,\r\n hasWindow\r\n} from \"./utils/window\";\r\nimport {\r\n extend\r\n} from \"./utils/extend\";\r\nimport {\r\n isPlainObject\r\n} from \"./utils/type\";\r\nimport {\r\n each\r\n} from \"./utils/iterator\";\r\nimport errors from \"./errors\";\r\nimport Callbacks from \"./utils/callbacks\";\r\nimport readyCallbacks from \"./utils/ready_callbacks\";\r\nimport resizeCallbacks from \"./utils/resize_callbacks\";\r\nimport {\r\n EventsStrategy\r\n} from \"./events_strategy\";\r\nimport {\r\n sessionStorage as SessionStorage\r\n} from \"./utils/storage\";\r\nimport {\r\n changeCallback,\r\n value as viewPort\r\n} from \"./utils/view_port\";\r\nimport Config from \"./config\";\r\nvar navigator = getNavigator();\r\nvar window = getWindow();\r\nvar KNOWN_UA_TABLE = {\r\n iPhone: \"iPhone\",\r\n iPhone5: \"iPhone\",\r\n iPhone6: \"iPhone\",\r\n iPhone6plus: \"iPhone\",\r\n iPad: \"iPad\",\r\n iPadMini: \"iPad Mini\",\r\n androidPhone: \"Android Mobile\",\r\n androidTablet: \"Android\",\r\n msSurface: \"Windows ARM Tablet PC\",\r\n desktop: \"desktop\"\r\n};\r\nvar DEFAULT_DEVICE = {\r\n deviceType: \"desktop\",\r\n platform: \"generic\",\r\n version: [],\r\n phone: false,\r\n tablet: false,\r\n android: false,\r\n ios: false,\r\n generic: true,\r\n grade: \"A\",\r\n mac: false\r\n};\r\nvar uaParsers = {\r\n generic(userAgent) {\r\n var isPhone = /windows phone/i.test(userAgent) || userAgent.match(/WPDesktop/);\r\n var isTablet = !isPhone && /Windows(.*)arm(.*)Tablet PC/i.test(userAgent);\r\n var isDesktop = !isPhone && !isTablet && /msapphost/i.test(userAgent);\r\n var isMac = /((intel|ppc) mac os x)/.test(userAgent.toLowerCase());\r\n if (!(isPhone || isTablet || isDesktop || isMac)) {\r\n return\r\n }\r\n return {\r\n deviceType: isPhone ? \"phone\" : isTablet ? \"tablet\" : \"desktop\",\r\n platform: \"generic\",\r\n version: [],\r\n grade: \"A\",\r\n mac: isMac\r\n }\r\n },\r\n ios(userAgent) {\r\n if (!/ip(hone|od|ad)/i.test(userAgent)) {\r\n return\r\n }\r\n var isPhone = /ip(hone|od)/i.test(userAgent);\r\n var matches = userAgent.match(/os (\\d+)_(\\d+)_?(\\d+)?/i);\r\n var version = matches ? [parseInt(matches[1], 10), parseInt(matches[2], 10), parseInt(matches[3] || 0, 10)] : [];\r\n var isIPhone4 = 480 === window.screen.height;\r\n var grade = isIPhone4 ? \"B\" : \"A\";\r\n return {\r\n deviceType: isPhone ? \"phone\" : \"tablet\",\r\n platform: \"ios\",\r\n version: version,\r\n grade: grade\r\n }\r\n },\r\n android(userAgent) {\r\n if (!/android|htc_|silk/i.test(userAgent)) {\r\n return\r\n }\r\n var isPhone = /mobile/i.test(userAgent);\r\n var matches = userAgent.match(/android (\\d+)\\.?(\\d+)?\\.?(\\d+)?/i);\r\n var version = matches ? [parseInt(matches[1], 10), parseInt(matches[2] || 0, 10), parseInt(matches[3] || 0, 10)] : [];\r\n var worseThan4_4 = version.length > 1 && (version[0] < 4 || 4 === version[0] && version[1] < 4);\r\n var grade = worseThan4_4 ? \"B\" : \"A\";\r\n return {\r\n deviceType: isPhone ? \"phone\" : \"tablet\",\r\n platform: \"android\",\r\n version: version,\r\n grade: grade\r\n }\r\n }\r\n};\r\nclass Devices {\r\n constructor(options) {\r\n this._window = (null === options || void 0 === options ? void 0 : options.window) || window;\r\n this._realDevice = this._getDevice();\r\n this._currentDevice = void 0;\r\n this._currentOrientation = void 0;\r\n this._eventsStrategy = new EventsStrategy(this);\r\n this.changed = Callbacks();\r\n if (hasWindow()) {\r\n readyCallbacks.add(this._recalculateOrientation.bind(this));\r\n resizeCallbacks.add(this._recalculateOrientation.bind(this))\r\n }\r\n }\r\n current(deviceOrName) {\r\n if (deviceOrName) {\r\n this._currentDevice = this._getDevice(deviceOrName);\r\n this._forced = true;\r\n this.changed.fire();\r\n return\r\n }\r\n if (!this._currentDevice) {\r\n deviceOrName = void 0;\r\n try {\r\n deviceOrName = this._getDeviceOrNameFromWindowScope()\r\n } catch (e) {\r\n deviceOrName = this._getDeviceNameFromSessionStorage()\r\n } finally {\r\n if (!deviceOrName) {\r\n deviceOrName = this._getDeviceNameFromSessionStorage()\r\n }\r\n if (deviceOrName) {\r\n this._forced = true\r\n }\r\n }\r\n this._currentDevice = this._getDevice(deviceOrName)\r\n }\r\n return this._currentDevice\r\n }\r\n real(forceDevice) {\r\n return extend({}, this._realDevice)\r\n }\r\n orientation() {\r\n return this._currentOrientation\r\n }\r\n isForced() {\r\n return this._forced\r\n }\r\n isRippleEmulator() {\r\n return !!this._window.tinyHippos\r\n }\r\n _getCssClasses(device) {\r\n var result = [];\r\n var realDevice = this._realDevice;\r\n device = device || this.current();\r\n if (device.deviceType) {\r\n result.push(\"dx-device-\".concat(device.deviceType));\r\n if (\"desktop\" !== device.deviceType) {\r\n result.push(\"dx-device-mobile\")\r\n }\r\n }\r\n result.push(\"dx-device-\".concat(realDevice.platform));\r\n if (realDevice.version && realDevice.version.length) {\r\n result.push(\"dx-device-\".concat(realDevice.platform, \"-\").concat(realDevice.version[0]))\r\n }\r\n if (this.isSimulator()) {\r\n result.push(\"dx-simulator\")\r\n }\r\n if (Config().rtlEnabled) {\r\n result.push(\"dx-rtl\")\r\n }\r\n return result\r\n }\r\n attachCssClasses(element, device) {\r\n this._deviceClasses = this._getCssClasses(device).join(\" \");\r\n $(element).addClass(this._deviceClasses)\r\n }\r\n detachCssClasses(element) {\r\n $(element).removeClass(this._deviceClasses)\r\n }\r\n isSimulator() {\r\n try {\r\n return this._isSimulator || hasWindow() && this._window.top !== this._window.self && this._window.top[\"dx-force-device\"] || this.isRippleEmulator()\r\n } catch (e) {\r\n return false\r\n }\r\n }\r\n forceSimulator() {\r\n this._isSimulator = true\r\n }\r\n _getDevice(deviceName) {\r\n if (\"genericPhone\" === deviceName) {\r\n deviceName = {\r\n deviceType: \"phone\",\r\n platform: \"generic\",\r\n generic: true\r\n }\r\n }\r\n if (isPlainObject(deviceName)) {\r\n return this._fromConfig(deviceName)\r\n } else {\r\n var ua;\r\n if (deviceName) {\r\n ua = KNOWN_UA_TABLE[deviceName];\r\n if (!ua) {\r\n throw errors.Error(\"E0005\")\r\n }\r\n } else {\r\n ua = navigator.userAgent\r\n }\r\n return this._fromUA(ua)\r\n }\r\n }\r\n _getDeviceOrNameFromWindowScope() {\r\n var result;\r\n if (hasWindow() && (this._window.top[\"dx-force-device-object\"] || this._window.top[\"dx-force-device\"])) {\r\n result = this._window.top[\"dx-force-device-object\"] || this._window.top[\"dx-force-device\"]\r\n }\r\n return result\r\n }\r\n _getDeviceNameFromSessionStorage() {\r\n var sessionStorage = SessionStorage();\r\n if (!sessionStorage) {\r\n return\r\n }\r\n var deviceOrName = sessionStorage.getItem(\"dx-force-device\");\r\n try {\r\n return JSON.parse(deviceOrName)\r\n } catch (ex) {\r\n return deviceOrName\r\n }\r\n }\r\n _fromConfig(config) {\r\n var result = extend({}, DEFAULT_DEVICE, this._currentDevice, config);\r\n var shortcuts = {\r\n phone: \"phone\" === result.deviceType,\r\n tablet: \"tablet\" === result.deviceType,\r\n android: \"android\" === result.platform,\r\n ios: \"ios\" === result.platform,\r\n generic: \"generic\" === result.platform\r\n };\r\n return extend(result, shortcuts)\r\n }\r\n _fromUA(ua) {\r\n var config;\r\n each(uaParsers, (platform, parser) => {\r\n config = parser(ua);\r\n return !config\r\n });\r\n if (config) {\r\n return this._fromConfig(config)\r\n }\r\n return DEFAULT_DEVICE\r\n }\r\n _changeOrientation() {\r\n var $window = $(this._window);\r\n var orientation = getHeight($window) > getWidth($window) ? \"portrait\" : \"landscape\";\r\n if (this._currentOrientation === orientation) {\r\n return\r\n }\r\n this._currentOrientation = orientation;\r\n this._eventsStrategy.fireEvent(\"orientationChanged\", [{\r\n orientation: orientation\r\n }])\r\n }\r\n _recalculateOrientation() {\r\n var windowWidth = getWidth(this._window);\r\n if (this._currentWidth === windowWidth) {\r\n return\r\n }\r\n this._currentWidth = windowWidth;\r\n this._changeOrientation()\r\n }\r\n on(eventName, eventHandler) {\r\n this._eventsStrategy.on(eventName, eventHandler);\r\n return this\r\n }\r\n off(eventName, eventHandler) {\r\n this._eventsStrategy.off(eventName, eventHandler);\r\n return this\r\n }\r\n}\r\nvar devices = new Devices;\r\nvar viewPortElement = viewPort();\r\nif (viewPortElement) {\r\n devices.attachCssClasses(viewPortElement)\r\n}\r\nchangeCallback.add((viewPort, prevViewport) => {\r\n devices.detachCssClasses(prevViewport);\r\n devices.attachCssClasses(viewPort)\r\n});\r\nexport default devices;\r\n","/**\r\n * DevExtreme (esm/core/template_manager.js)\r\n * Version: 21.2.11\r\n * Build date: Tue Oct 18 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport $ from \"./renderer\";\r\nimport {\r\n isDefined,\r\n isFunction,\r\n isRenderer\r\n} from \"./utils/type\";\r\nimport {\r\n noop\r\n} from \"./utils/common\";\r\nimport {\r\n extend\r\n} from \"./utils/extend\";\r\nimport {\r\n FunctionTemplate\r\n} from \"./templates/function_template\";\r\nimport {\r\n EmptyTemplate\r\n} from \"./templates/empty_template\";\r\nimport {\r\n findTemplates,\r\n suitableTemplatesByName,\r\n templateKey,\r\n getNormalizedTemplateArgs,\r\n validateTemplateSource,\r\n defaultCreateElement,\r\n acquireTemplate\r\n} from \"./utils/template_manager\";\r\nvar TEXT_NODE = 3;\r\nvar ANONYMOUS_TEMPLATE_NAME = \"template\";\r\nvar TEMPLATE_OPTIONS_NAME = \"dxTemplate\";\r\nvar TEMPLATE_WRAPPER_CLASS = \"dx-template-wrapper\";\r\nvar DX_POLYMORPH_WIDGET_TEMPLATE = new FunctionTemplate(_ref => {\r\n var {\r\n model: model,\r\n parent: parent\r\n } = _ref;\r\n var widgetName = model.widget;\r\n if (!widgetName) {\r\n return $()\r\n }\r\n var widgetElement = $(\"
\");\r\n var widgetOptions = model.options || {};\r\n if (parent) {\r\n parent._createComponent(widgetElement, widgetName, widgetOptions)\r\n } else {\r\n widgetElement[widgetName](widgetOptions)\r\n }\r\n return widgetElement\r\n});\r\nexport class TemplateManager {\r\n constructor(createElement, anonymousTemplateName) {\r\n this._tempTemplates = [];\r\n this._defaultTemplates = {};\r\n this._anonymousTemplateName = anonymousTemplateName || ANONYMOUS_TEMPLATE_NAME;\r\n this._createElement = createElement || defaultCreateElement;\r\n this._createTemplateIfNeeded = this._createTemplateIfNeeded.bind(this)\r\n }\r\n static createDefaultOptions() {\r\n return {\r\n integrationOptions: {\r\n watchMethod: function(fn, callback) {\r\n var options = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {};\r\n if (!options.skipImmediate) {\r\n callback(fn())\r\n }\r\n return noop\r\n },\r\n templates: {\r\n \"dx-polymorph-widget\": DX_POLYMORPH_WIDGET_TEMPLATE\r\n },\r\n useDeferUpdateForTemplates: true\r\n }\r\n }\r\n }\r\n get anonymousTemplateName() {\r\n return this._anonymousTemplateName\r\n }\r\n addDefaultTemplates(templates) {\r\n this._defaultTemplates = extend({}, this._defaultTemplates, templates)\r\n }\r\n dispose() {\r\n this._tempTemplates.forEach(tempTemplate => {\r\n tempTemplate.template.dispose && tempTemplate.template.dispose()\r\n });\r\n this._tempTemplates = []\r\n }\r\n extractTemplates($el) {\r\n var templates = this._extractTemplates($el);\r\n var anonymousTemplateMeta = this._extractAnonymousTemplate($el);\r\n return {\r\n templates: templates,\r\n anonymousTemplateMeta: anonymousTemplateMeta\r\n }\r\n }\r\n _extractTemplates($el) {\r\n var templates = findTemplates($el, TEMPLATE_OPTIONS_NAME);\r\n var suitableTemplates = suitableTemplatesByName(templates);\r\n templates.forEach(_ref2 => {\r\n var {\r\n element: element,\r\n options: {\r\n name: name\r\n }\r\n } = _ref2;\r\n if (element === suitableTemplates[name]) {\r\n $(element).addClass(TEMPLATE_WRAPPER_CLASS).detach()\r\n } else {\r\n $(element).remove()\r\n }\r\n });\r\n return Object.keys(suitableTemplates).map(name => ({\r\n name: name,\r\n template: this._createTemplate(suitableTemplates[name])\r\n }))\r\n }\r\n _extractAnonymousTemplate($el) {\r\n var $anonymousTemplate = $el.contents().detach();\r\n var $notJunkTemplateContent = $anonymousTemplate.filter((_, element) => {\r\n var isTextNode = element.nodeType === TEXT_NODE;\r\n var isEmptyText = $(element).text().trim().length < 1;\r\n return !(isTextNode && isEmptyText)\r\n });\r\n return $notJunkTemplateContent.length > 0 ? {\r\n template: this._createTemplate($anonymousTemplate),\r\n name: this._anonymousTemplateName\r\n } : {}\r\n }\r\n _createTemplateIfNeeded(templateSource) {\r\n var cachedTemplate = this._tempTemplates.filter(tempTemplate => tempTemplate.source === templateKey(templateSource))[0];\r\n if (cachedTemplate) {\r\n return cachedTemplate.template\r\n }\r\n var template = this._createTemplate(templateSource);\r\n this._tempTemplates.push({\r\n template: template,\r\n source: templateKey(templateSource)\r\n });\r\n return template\r\n }\r\n _createTemplate(templateSource) {\r\n return this._createElement(validateTemplateSource(templateSource))\r\n }\r\n getTemplate(templateSource, templates, _ref3, context) {\r\n var {\r\n isAsyncTemplate: isAsyncTemplate,\r\n skipTemplates: skipTemplates\r\n } = _ref3;\r\n if (!isFunction(templateSource)) {\r\n return acquireTemplate(templateSource, this._createTemplateIfNeeded, templates, isAsyncTemplate, skipTemplates, this._defaultTemplates)\r\n }\r\n return new FunctionTemplate(options => {\r\n var templateSourceResult = templateSource.apply(context, getNormalizedTemplateArgs(options));\r\n if (!isDefined(templateSourceResult)) {\r\n return new EmptyTemplate\r\n }\r\n var dispose = false;\r\n var template = acquireTemplate(templateSourceResult, templateSource => {\r\n if (templateSource.nodeType || isRenderer(templateSource) && !$(templateSource).is(\"script\")) {\r\n return new FunctionTemplate(() => templateSource)\r\n }\r\n dispose = true;\r\n return this._createTemplate(templateSource)\r\n }, templates, isAsyncTemplate, skipTemplates, this._defaultTemplates);\r\n var result = template.render(options);\r\n dispose && template.dispose && template.dispose();\r\n return result\r\n })\r\n }\r\n}\r\n","/**\r\n * DevExtreme (esm/core/dom_component.js)\r\n * Version: 21.2.11\r\n * Build date: Tue Oct 18 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport $ from \"../core/renderer\";\r\nimport config from \"./config\";\r\nimport errors from \"./errors\";\r\nimport windowResizeCallbacks from \"../core/utils/resize_callbacks\";\r\nimport {\r\n Component\r\n} from \"./component\";\r\nimport {\r\n TemplateManager\r\n} from \"./template_manager\";\r\nimport {\r\n attachInstanceToElement,\r\n getInstanceByElement\r\n} from \"./utils/public_component\";\r\nimport {\r\n cleanDataRecursive\r\n} from \"./element_data\";\r\nimport {\r\n each\r\n} from \"./utils/iterator\";\r\nimport {\r\n extend\r\n} from \"./utils/extend\";\r\nimport {\r\n getPublicElement\r\n} from \"../core/element\";\r\nimport {\r\n grep,\r\n noop\r\n} from \"./utils/common\";\r\nimport {\r\n inArray\r\n} from \"./utils/array\";\r\nimport {\r\n isString,\r\n isDefined,\r\n isFunction\r\n} from \"./utils/type\";\r\nimport {\r\n hasWindow\r\n} from \"../core/utils/window\";\r\nimport {\r\n resize as resizeEvent,\r\n visibility as visibilityEvents\r\n} from \"../events/short\";\r\nvar {\r\n abstract: abstract\r\n} = Component;\r\nvar DOMComponent = Component.inherit({\r\n _getDefaultOptions() {\r\n return extend(this.callBase(), {\r\n width: void 0,\r\n height: void 0,\r\n rtlEnabled: config().rtlEnabled,\r\n elementAttr: {},\r\n disabled: false,\r\n integrationOptions: {}\r\n }, this._useTemplates() ? TemplateManager.createDefaultOptions() : {})\r\n },\r\n ctor(element, options) {\r\n this._customClass = null;\r\n this._createElement(element);\r\n attachInstanceToElement(this._$element, this, this._dispose);\r\n this.callBase(options)\r\n },\r\n _createElement(element) {\r\n this._$element = $(element)\r\n },\r\n _getSynchronizableOptionsForCreateComponent: () => [\"rtlEnabled\", \"disabled\", \"templatesRenderAsynchronously\"],\r\n _checkFunctionValueDeprecation: function(optionNames) {\r\n if (!this.option(\"_ignoreFunctionValueDeprecation\")) {\r\n optionNames.forEach(optionName => {\r\n if (isFunction(this.option(optionName))) {\r\n errors.log(\"W0017\", optionName)\r\n }\r\n })\r\n }\r\n },\r\n _visibilityChanged: abstract,\r\n _dimensionChanged: abstract,\r\n _init() {\r\n this.callBase();\r\n this._checkFunctionValueDeprecation([\"width\", \"height\", \"maxHeight\", \"maxWidth\", \"minHeight\", \"minWidth\", \"popupHeight\", \"popupWidth\"]);\r\n this._attachWindowResizeCallback();\r\n this._initTemplateManager()\r\n },\r\n _setOptionsByDevice(instanceCustomRules) {\r\n this.callBase([].concat(this.constructor._classCustomRules || [], instanceCustomRules || []))\r\n },\r\n _isInitialOptionValue(name) {\r\n var isCustomOption = this.constructor._classCustomRules && Object.prototype.hasOwnProperty.call(this._convertRulesToOptions(this.constructor._classCustomRules), name);\r\n return !isCustomOption && this.callBase(name)\r\n },\r\n _attachWindowResizeCallback() {\r\n if (this._isDimensionChangeSupported()) {\r\n var windowResizeCallBack = this._windowResizeCallBack = this._dimensionChanged.bind(this);\r\n windowResizeCallbacks.add(windowResizeCallBack)\r\n }\r\n },\r\n _isDimensionChangeSupported() {\r\n return this._dimensionChanged !== abstract\r\n },\r\n _renderComponent() {\r\n this._initMarkup();\r\n hasWindow() && this._render()\r\n },\r\n _initMarkup() {\r\n var {\r\n rtlEnabled: rtlEnabled\r\n } = this.option() || {};\r\n this._renderElementAttributes();\r\n this._toggleRTLDirection(rtlEnabled);\r\n this._renderVisibilityChange();\r\n this._renderDimensions()\r\n },\r\n _render() {\r\n this._attachVisibilityChangeHandlers()\r\n },\r\n _renderElementAttributes() {\r\n var {\r\n elementAttr: elementAttr\r\n } = this.option() || {};\r\n var attributes = extend({}, elementAttr);\r\n var classNames = attributes.class;\r\n delete attributes.class;\r\n this.$element().attr(attributes).removeClass(this._customClass).addClass(classNames);\r\n this._customClass = classNames\r\n },\r\n _renderVisibilityChange() {\r\n if (this._isDimensionChangeSupported()) {\r\n this._attachDimensionChangeHandlers()\r\n }\r\n if (this._isVisibilityChangeSupported()) {\r\n var $element = this.$element();\r\n $element.addClass(\"dx-visibility-change-handler\")\r\n }\r\n },\r\n _renderDimensions() {\r\n var $element = this.$element();\r\n var element = $element.get(0);\r\n var width = this._getOptionValue(\"width\", element);\r\n var height = this._getOptionValue(\"height\", element);\r\n if (this._isCssUpdateRequired(element, height, width)) {\r\n $element.css({\r\n width: null === width ? \"\" : width,\r\n height: null === height ? \"\" : height\r\n })\r\n }\r\n },\r\n _isCssUpdateRequired: (element, height, width) => !!(isDefined(width) || isDefined(height) || element.style.width || element.style.height),\r\n _attachDimensionChangeHandlers() {\r\n var $el = this.$element();\r\n var namespace = \"\".concat(this.NAME, \"VisibilityChange\");\r\n resizeEvent.off($el, {\r\n namespace: namespace\r\n });\r\n resizeEvent.on($el, () => this._dimensionChanged(), {\r\n namespace: namespace\r\n })\r\n },\r\n _attachVisibilityChangeHandlers() {\r\n if (this._isVisibilityChangeSupported()) {\r\n var $el = this.$element();\r\n var namespace = \"\".concat(this.NAME, \"VisibilityChange\");\r\n this._isHidden = !this._isVisible();\r\n visibilityEvents.off($el, {\r\n namespace: namespace\r\n });\r\n visibilityEvents.on($el, () => this._checkVisibilityChanged(\"shown\"), () => this._checkVisibilityChanged(\"hiding\"), {\r\n namespace: namespace\r\n })\r\n }\r\n },\r\n _isVisible() {\r\n var $element = this.$element();\r\n return $element.is(\":visible\")\r\n },\r\n _checkVisibilityChanged(action) {\r\n var isVisible = this._isVisible();\r\n if (isVisible) {\r\n if (\"hiding\" === action && !this._isHidden) {\r\n this._visibilityChanged(false);\r\n this._isHidden = true\r\n } else if (\"shown\" === action && this._isHidden) {\r\n this._isHidden = false;\r\n this._visibilityChanged(true)\r\n }\r\n }\r\n },\r\n _isVisibilityChangeSupported() {\r\n return this._visibilityChanged !== abstract && hasWindow()\r\n },\r\n _clean: noop,\r\n _modelByElement() {\r\n var {\r\n modelByElement: modelByElement\r\n } = this.option();\r\n var $element = this.$element();\r\n return modelByElement ? modelByElement($element) : void 0\r\n },\r\n _invalidate() {\r\n if (this._isUpdateAllowed()) {\r\n throw errors.Error(\"E0007\")\r\n }\r\n this._requireRefresh = true\r\n },\r\n _refresh() {\r\n this._clean();\r\n this._renderComponent()\r\n },\r\n _dispose() {\r\n this._templateManager && this._templateManager.dispose();\r\n this.callBase();\r\n this._clean();\r\n this._detachWindowResizeCallback()\r\n },\r\n _detachWindowResizeCallback() {\r\n if (this._isDimensionChangeSupported()) {\r\n windowResizeCallbacks.remove(this._windowResizeCallBack)\r\n }\r\n },\r\n _toggleRTLDirection(rtl) {\r\n var $element = this.$element();\r\n $element.toggleClass(\"dx-rtl\", rtl)\r\n },\r\n _createComponent(element, component) {\r\n var config = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {};\r\n var synchronizableOptions = grep(this._getSynchronizableOptionsForCreateComponent(), value => !(value in config));\r\n var {\r\n integrationOptions: integrationOptions\r\n } = this.option();\r\n var {\r\n nestedComponentOptions: nestedComponentOptions\r\n } = this.option();\r\n nestedComponentOptions = nestedComponentOptions || noop;\r\n var nestedComponentConfig = extend({\r\n integrationOptions: integrationOptions\r\n }, nestedComponentOptions(this));\r\n synchronizableOptions.forEach(optionName => nestedComponentConfig[optionName] = this.option(optionName));\r\n this._extendConfig(config, nestedComponentConfig);\r\n var instance = void 0;\r\n if (isString(component)) {\r\n var $element = $(element)[component](config);\r\n instance = $element[component](\"instance\")\r\n } else if (element) {\r\n instance = component.getInstance(element);\r\n if (instance) {\r\n instance.option(config)\r\n } else {\r\n instance = new component(element, config)\r\n }\r\n }\r\n if (instance) {\r\n var optionChangedHandler = _ref => {\r\n var {\r\n name: name,\r\n value: value\r\n } = _ref;\r\n if (inArray(name, synchronizableOptions) >= 0) {\r\n instance.option(name, value)\r\n }\r\n };\r\n this.on(\"optionChanged\", optionChangedHandler);\r\n instance.on(\"disposing\", () => this.off(\"optionChanged\", optionChangedHandler))\r\n }\r\n return instance\r\n },\r\n _extendConfig(config, extendConfig) {\r\n each(extendConfig, (key, value) => {\r\n !Object.prototype.hasOwnProperty.call(config, key) && (config[key] = value)\r\n })\r\n },\r\n _defaultActionConfig() {\r\n var $element = this.$element();\r\n var context = this._modelByElement($element);\r\n return extend(this.callBase(), {\r\n context: context\r\n })\r\n },\r\n _defaultActionArgs() {\r\n var $element = this.$element();\r\n var model = this._modelByElement($element);\r\n var element = this.element();\r\n return extend(this.callBase(), {\r\n element: element,\r\n model: model\r\n })\r\n },\r\n _optionChanged(args) {\r\n switch (args.name) {\r\n case \"width\":\r\n case \"height\":\r\n this._renderDimensions();\r\n break;\r\n case \"rtlEnabled\":\r\n this._invalidate();\r\n break;\r\n case \"elementAttr\":\r\n this._renderElementAttributes();\r\n break;\r\n case \"disabled\":\r\n case \"integrationOptions\":\r\n break;\r\n default:\r\n this.callBase(args)\r\n }\r\n },\r\n _removeAttributes(element) {\r\n var attrs = element.attributes;\r\n for (var i = attrs.length - 1; i >= 0; i--) {\r\n var attr = attrs[i];\r\n if (attr) {\r\n var {\r\n name: name\r\n } = attr;\r\n if (!name.indexOf(\"aria-\") || -1 !== name.indexOf(\"dx-\") || \"role\" === name || \"style\" === name || \"tabindex\" === name) {\r\n element.removeAttribute(name)\r\n }\r\n }\r\n }\r\n },\r\n _removeClasses(element) {\r\n element.className = element.className.split(\" \").filter(cssClass => 0 !== cssClass.lastIndexOf(\"dx-\", 0)).join(\" \")\r\n },\r\n _updateDOMComponent(renderRequired) {\r\n if (renderRequired) {\r\n this._renderComponent()\r\n } else if (this._requireRefresh) {\r\n this._requireRefresh = false;\r\n this._refresh()\r\n }\r\n },\r\n endUpdate() {\r\n var renderRequired = this._isInitializingRequired();\r\n this.callBase();\r\n this._isUpdateAllowed() && this._updateDOMComponent(renderRequired)\r\n },\r\n $element() {\r\n return this._$element\r\n },\r\n element() {\r\n var $element = this.$element();\r\n return getPublicElement($element)\r\n },\r\n dispose() {\r\n var element = this.$element().get(0);\r\n cleanDataRecursive(element, true);\r\n element.textContent = \"\";\r\n this._removeAttributes(element);\r\n this._removeClasses(element)\r\n },\r\n resetOption(optionName) {\r\n this.callBase(optionName);\r\n if (\"width\" === optionName || \"height\" === optionName) {\r\n var initialOption = this.initialOption(optionName);\r\n !isDefined(initialOption) && this.$element().css(optionName, \"\")\r\n }\r\n },\r\n _getAnonymousTemplateName() {\r\n return\r\n },\r\n _initTemplateManager() {\r\n if (this._templateManager || !this._useTemplates()) {\r\n return\r\n }\r\n var {\r\n integrationOptions: integrationOptions = {}\r\n } = this.option();\r\n var {\r\n createTemplate: createTemplate\r\n } = integrationOptions;\r\n this._templateManager = new TemplateManager(createTemplate, this._getAnonymousTemplateName());\r\n this._initTemplates()\r\n },\r\n _initTemplates() {\r\n var {\r\n templates: templates,\r\n anonymousTemplateMeta: anonymousTemplateMeta\r\n } = this._templateManager.extractTemplates(this.$element());\r\n var anonymousTemplate = this.option(\"integrationOptions.templates.\".concat(anonymousTemplateMeta.name));\r\n templates.forEach(_ref2 => {\r\n var {\r\n name: name,\r\n template: template\r\n } = _ref2;\r\n this._options.silent(\"integrationOptions.templates.\".concat(name), template)\r\n });\r\n if (anonymousTemplateMeta.name && !anonymousTemplate) {\r\n this._options.silent(\"integrationOptions.templates.\".concat(anonymousTemplateMeta.name), anonymousTemplateMeta.template);\r\n this._options.silent(\"_hasAnonymousTemplateContent\", true)\r\n }\r\n },\r\n _getTemplateByOption(optionName) {\r\n return this._getTemplate(this.option(optionName))\r\n },\r\n _getTemplate(templateSource) {\r\n var templates = this.option(\"integrationOptions.templates\");\r\n var isAsyncTemplate = this.option(\"templatesRenderAsynchronously\");\r\n var skipTemplates = this.option(\"integrationOptions.skipTemplates\");\r\n return this._templateManager.getTemplate(templateSource, templates, {\r\n isAsyncTemplate: isAsyncTemplate,\r\n skipTemplates: skipTemplates\r\n }, this)\r\n },\r\n _saveTemplate(name, template) {\r\n this._setOptionWithoutOptionChange(\"integrationOptions.templates.\" + name, this._templateManager._createTemplate(template))\r\n },\r\n _useTemplates: () => true\r\n});\r\nDOMComponent.getInstance = function(element) {\r\n return getInstanceByElement($(element), this)\r\n};\r\nDOMComponent.defaultOptions = function(rule) {\r\n this._classCustomRules = this._classCustomRules || [];\r\n this._classCustomRules.push(rule)\r\n};\r\nexport default DOMComponent;\r\n","/**\r\n * DevExtreme (esm/core/element.js)\r\n * Version: 21.2.11\r\n * Build date: Tue Oct 18 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nvar strategy = function(element) {\r\n return element && element.get(0)\r\n};\r\nexport function getPublicElement(element) {\r\n return strategy(element)\r\n}\r\nexport function setPublicElementWrapper(newStrategy) {\r\n strategy = newStrategy\r\n}\r\n","/**\r\n * DevExtreme (esm/core/events_strategy.js)\r\n * Version: 21.2.11\r\n * Build date: Tue Oct 18 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport Callbacks from \"./utils/callbacks\";\r\nimport {\r\n each\r\n} from \"./utils/iterator\";\r\nimport {\r\n isFunction,\r\n isPlainObject\r\n} from \"./utils/type\";\r\nexport class EventsStrategy {\r\n constructor(owner) {\r\n var options = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {};\r\n this._events = {};\r\n this._owner = owner;\r\n this._options = options\r\n }\r\n static create(owner, strategy) {\r\n if (strategy) {\r\n return isFunction(strategy) ? strategy(owner) : strategy\r\n } else {\r\n return new EventsStrategy(owner)\r\n }\r\n }\r\n hasEvent(eventName) {\r\n var callbacks = this._events[eventName];\r\n return callbacks ? callbacks.has() : false\r\n }\r\n fireEvent(eventName, eventArgs) {\r\n var callbacks = this._events[eventName];\r\n if (callbacks) {\r\n callbacks.fireWith(this._owner, eventArgs)\r\n }\r\n return this._owner\r\n }\r\n on(eventName, eventHandler) {\r\n if (isPlainObject(eventName)) {\r\n each(eventName, (e, h) => {\r\n this.on(e, h)\r\n })\r\n } else {\r\n var callbacks = this._events[eventName];\r\n if (!callbacks) {\r\n callbacks = Callbacks({\r\n syncStrategy: this._options.syncStrategy\r\n });\r\n this._events[eventName] = callbacks\r\n }\r\n var addFn = callbacks.originalAdd || callbacks.add;\r\n addFn.call(callbacks, eventHandler)\r\n }\r\n }\r\n off(eventName, eventHandler) {\r\n var callbacks = this._events[eventName];\r\n if (callbacks) {\r\n if (isFunction(eventHandler)) {\r\n callbacks.remove(eventHandler)\r\n } else {\r\n callbacks.empty()\r\n }\r\n }\r\n }\r\n dispose() {\r\n each(this._events, (eventName, event) => {\r\n event.empty()\r\n })\r\n }\r\n}\r\n","/**\r\n * DevExtreme (esm/core/options/utils.js)\r\n * Version: 21.2.11\r\n * Build date: Tue Oct 18 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport devices from \"../devices\";\r\nimport {\r\n isEmptyObject,\r\n isFunction\r\n} from \"../utils/type\";\r\nimport {\r\n findBestMatches\r\n} from \"../utils/common\";\r\nimport {\r\n extend\r\n} from \"../utils/extend\";\r\nimport {\r\n compileGetter\r\n} from \"../utils/data\";\r\nvar cachedGetters = {};\r\nexport var convertRulesToOptions = rules => {\r\n var currentDevice = devices.current();\r\n return rules.reduce((options, _ref) => {\r\n var {\r\n device: device,\r\n options: ruleOptions\r\n } = _ref;\r\n var deviceFilter = device || {};\r\n var match = isFunction(deviceFilter) ? deviceFilter(currentDevice) : deviceMatch(currentDevice, deviceFilter);\r\n if (match) {\r\n extend(true, options, ruleOptions)\r\n }\r\n return options\r\n }, {})\r\n};\r\nexport var normalizeOptions = (options, value) => \"string\" !== typeof options ? options : {\r\n [options]: value\r\n};\r\nexport var deviceMatch = (device, filter) => isEmptyObject(filter) || findBestMatches(device, [filter]).length > 0;\r\nexport var getFieldName = fullName => fullName.substr(fullName.lastIndexOf(\".\") + 1);\r\nexport var getParentName = fullName => fullName.substr(0, fullName.lastIndexOf(\".\"));\r\nexport var getNestedOptionValue = function(optionsObject, name) {\r\n cachedGetters[name] = cachedGetters[name] || compileGetter(name);\r\n return cachedGetters[name](optionsObject, {\r\n functionsAsIs: true\r\n })\r\n};\r\nexport var createDefaultOptionRules = function() {\r\n var options = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : [];\r\n return options\r\n};\r\n","/**\r\n * DevExtreme (esm/core/polyfills/promise.js)\r\n * Version: 21.2.11\r\n * Build date: Tue Oct 18 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport {\r\n Deferred,\r\n when\r\n} from \"../../core/utils/deferred\";\r\nimport {\r\n hasWindow,\r\n getWindow\r\n} from \"../../core/utils/window\";\r\nvar promise = hasWindow() ? getWindow().Promise : Promise;\r\nif (!promise) {\r\n promise = function(resolver) {\r\n var d = new Deferred;\r\n resolver(d.resolve.bind(this), d.reject.bind(this));\r\n return d.promise()\r\n };\r\n promise.resolve = function(val) {\r\n return (new Deferred).resolve(val).promise()\r\n };\r\n promise.reject = function(val) {\r\n return (new Deferred).reject(val).promise()\r\n };\r\n promise.all = function(promises) {\r\n return when.apply(this, promises).then((function() {\r\n return [].slice.call(arguments)\r\n }))\r\n }\r\n}\r\nexport default promise;\r\n","/**\r\n * DevExtreme (esm/core/templates/child_default_template.js)\r\n * Version: 21.2.11\r\n * Build date: Tue Oct 18 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport {\r\n TemplateBase\r\n} from \"./template_base\";\r\nexport class ChildDefaultTemplate extends TemplateBase {\r\n constructor(name) {\r\n super();\r\n this.name = name\r\n }\r\n}\r\n","/**\r\n * DevExtreme (esm/core/templates/empty_template.js)\r\n * Version: 21.2.11\r\n * Build date: Tue Oct 18 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport $ from \"../renderer\";\r\nimport {\r\n TemplateBase\r\n} from \"./template_base\";\r\nexport class EmptyTemplate extends TemplateBase {\r\n _renderCore() {\r\n return $()\r\n }\r\n}\r\n","/**\r\n * DevExtreme (esm/core/templates/function_template.js)\r\n * Version: 21.2.11\r\n * Build date: Tue Oct 18 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport {\r\n TemplateBase\r\n} from \"./template_base\";\r\nimport {\r\n normalizeTemplateElement\r\n} from \"../utils/dom\";\r\nexport class FunctionTemplate extends TemplateBase {\r\n constructor(render) {\r\n super();\r\n this._render = render\r\n }\r\n _renderCore(options) {\r\n return normalizeTemplateElement(this._render(options))\r\n }\r\n}\r\n","/**\r\n * DevExtreme (esm/core/templates/template_base.js)\r\n * Version: 21.2.11\r\n * Build date: Tue Oct 18 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport $ from \"../renderer\";\r\nimport domAdapter from \"../dom_adapter\";\r\nimport Callbacks from \"../utils/callbacks\";\r\nimport {\r\n contains\r\n} from \"../utils/dom\";\r\nimport {\r\n triggerShownEvent\r\n} from \"../../events/visibility_change\";\r\nimport errors from \"../errors\";\r\nexport var renderedCallbacks = Callbacks({\r\n syncStrategy: true\r\n});\r\nexport class TemplateBase {\r\n render(options) {\r\n options = options || {};\r\n var onRendered = options.onRendered;\r\n delete options.onRendered;\r\n var $result = this._renderCore(options);\r\n this._ensureResultInContainer($result, options.container);\r\n renderedCallbacks.fire($result, options.container);\r\n onRendered && onRendered();\r\n return $result\r\n }\r\n _ensureResultInContainer($result, container) {\r\n if (!container) {\r\n return\r\n }\r\n var $container = $(container);\r\n var resultInContainer = contains($container.get(0), $result.get(0));\r\n $container.append($result);\r\n if (resultInContainer) {\r\n return\r\n }\r\n var resultInBody = domAdapter.getBody().contains($container.get(0));\r\n if (!resultInBody) {\r\n return\r\n }\r\n triggerShownEvent($result)\r\n }\r\n _renderCore() {\r\n throw errors.Error(\"E0001\")\r\n }\r\n}\r\n","/**\r\n * DevExtreme (esm/core/utils/comparator.js)\r\n * Version: 21.2.11\r\n * Build date: Tue Oct 18 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport domAdapter from \"../dom_adapter\";\r\nimport {\r\n toComparable\r\n} from \"./data\";\r\nimport {\r\n isRenderer\r\n} from \"./type\";\r\nvar hasNegation = function(oldValue, newValue) {\r\n return 1 / oldValue === 1 / newValue\r\n};\r\nexport var equals = function(oldValue, newValue) {\r\n oldValue = toComparable(oldValue, true);\r\n newValue = toComparable(newValue, true);\r\n if (oldValue && newValue && isRenderer(oldValue) && isRenderer(newValue)) {\r\n return newValue.is(oldValue)\r\n }\r\n var oldValueIsNaN = oldValue !== oldValue;\r\n var newValueIsNaN = newValue !== newValue;\r\n if (oldValueIsNaN && newValueIsNaN) {\r\n return true\r\n }\r\n if (0 === oldValue && 0 === newValue) {\r\n return hasNegation(oldValue, newValue)\r\n }\r\n if (null === oldValue || \"object\" !== typeof oldValue || domAdapter.isElementNode(oldValue)) {\r\n return oldValue === newValue\r\n }\r\n return false\r\n};\r\n","/**\r\n * DevExtreme (esm/core/utils/dom.js)\r\n * Version: 21.2.11\r\n * Build date: Tue Oct 18 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport domAdapter from \"../../core/dom_adapter\";\r\nimport $ from \"../../core/renderer\";\r\nimport {\r\n each\r\n} from \"./iterator\";\r\nimport {\r\n isDefined,\r\n isRenderer,\r\n isWindow\r\n} from \"./type\";\r\nimport {\r\n getWindow\r\n} from \"./window\";\r\nvar window = getWindow();\r\nexport var resetActiveElement = () => {\r\n var activeElement = domAdapter.getActiveElement();\r\n if (activeElement && activeElement !== domAdapter.getBody()) {\r\n var _activeElement$blur;\r\n null === (_activeElement$blur = activeElement.blur) || void 0 === _activeElement$blur ? void 0 : _activeElement$blur.call(activeElement)\r\n }\r\n};\r\nexport var clearSelection = () => {\r\n var selection = window.getSelection();\r\n if (!selection) {\r\n return\r\n }\r\n if (\"Caret\" === selection.type) {\r\n return\r\n }\r\n if (selection.empty) {\r\n selection.empty()\r\n } else if (selection.removeAllRanges) {\r\n try {\r\n selection.removeAllRanges()\r\n } catch (e) {}\r\n }\r\n};\r\nexport var closestCommonParent = (startTarget, endTarget) => {\r\n var $startTarget = $(startTarget);\r\n var $endTarget = $(endTarget);\r\n if ($startTarget[0] === $endTarget[0]) {\r\n return $startTarget[0]\r\n }\r\n var $startParents = $startTarget.parents();\r\n var $endParents = $endTarget.parents();\r\n var startingParent = Math.min($startParents.length, $endParents.length);\r\n for (var i = -startingParent; i < 0; i++) {\r\n if ($startParents.get(i) === $endParents.get(i)) {\r\n return $startParents.get(i)\r\n }\r\n }\r\n};\r\nexport var extractTemplateMarkup = element => {\r\n element = $(element);\r\n var templateTag = element.length && element.filter((function() {\r\n var $node = $(this);\r\n return $node.is(\"script[type]\") && $node.attr(\"type\").indexOf(\"script\") < 0\r\n }));\r\n if (templateTag.length) {\r\n return templateTag.eq(0).html()\r\n } else {\r\n element = $(\"
\").append(element);\r\n return element.html()\r\n }\r\n};\r\nexport var normalizeTemplateElement = element => {\r\n var $element = isDefined(element) && (element.nodeType || isRenderer(element)) ? $(element) : $(\"
\").html(element).contents();\r\n if (1 === $element.length) {\r\n if ($element.is(\"script\")) {\r\n $element = normalizeTemplateElement($element.html().trim())\r\n } else if ($element.is(\"table\")) {\r\n $element = $element.children(\"tbody\").contents()\r\n }\r\n }\r\n return $element\r\n};\r\nexport var clipboardText = (event, text) => {\r\n var clipboard = event.originalEvent && event.originalEvent.clipboardData || window.clipboardData;\r\n if (!text) {\r\n return clipboard && clipboard.getData(\"Text\")\r\n }\r\n clipboard && clipboard.setData(\"Text\", text)\r\n};\r\nexport var contains = (container, element) => {\r\n if (!element) {\r\n return false\r\n }\r\n if (domAdapter.isTextNode(element)) {\r\n element = element.parentNode\r\n }\r\n if (domAdapter.isDocument(container)) {\r\n return container.documentElement.contains(element)\r\n }\r\n if (isWindow(container)) {\r\n return contains(container.document, element)\r\n }\r\n return container.contains ? container.contains(element) : !!(element.compareDocumentPosition(container) & element.DOCUMENT_POSITION_CONTAINS)\r\n};\r\nexport var createTextElementHiddenCopy = (element, text, options) => {\r\n var elementStyles = window.getComputedStyle($(element).get(0));\r\n var includePaddings = options && options.includePaddings;\r\n return $(\"
\").text(text).css({\r\n fontStyle: elementStyles.fontStyle,\r\n fontVariant: elementStyles.fontVariant,\r\n fontWeight: elementStyles.fontWeight,\r\n fontSize: elementStyles.fontSize,\r\n fontFamily: elementStyles.fontFamily,\r\n letterSpacing: elementStyles.letterSpacing,\r\n border: elementStyles.border,\r\n paddingTop: includePaddings ? elementStyles.paddingTop : \"\",\r\n paddingRight: includePaddings ? elementStyles.paddingRight : \"\",\r\n paddingBottom: includePaddings ? elementStyles.paddingBottom : \"\",\r\n paddingLeft: includePaddings ? elementStyles.paddingLeft : \"\",\r\n visibility: \"hidden\",\r\n whiteSpace: \"pre\",\r\n position: \"absolute\",\r\n float: \"left\"\r\n })\r\n};\r\nexport var insertBefore = (element, newElement) => {\r\n if (newElement) {\r\n domAdapter.insertElement(element.parentNode, newElement, element)\r\n }\r\n return element\r\n};\r\nexport var replaceWith = (element, newElement) => {\r\n if (!(newElement && newElement[0])) {\r\n return\r\n }\r\n if (newElement.is(element)) {\r\n return element\r\n }\r\n each(newElement, (_, currentElement) => {\r\n insertBefore(element[0], currentElement)\r\n });\r\n element.remove();\r\n return newElement\r\n};\r\n","/**\r\n * DevExtreme (esm/core/utils/public_component.js)\r\n * Version: 21.2.11\r\n * Build date: Tue Oct 18 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport {\r\n data as elementData\r\n} from \"../../core/element_data\";\r\nimport eventsEngine from \"../../events/core/events_engine\";\r\nimport WeakMap from \"../polyfills/weak_map\";\r\nimport {\r\n isDefined\r\n} from \"./type\";\r\nimport {\r\n removeEvent\r\n} from \"../../events/remove\";\r\nvar COMPONENT_NAMES_DATA_KEY = \"dxComponents\";\r\nvar ANONYMOUS_COMPONENT_DATA_KEY = \"dxPrivateComponent\";\r\nvar componentNames = new WeakMap;\r\nvar nextAnonymousComponent = 0;\r\nvar getName = function(componentClass, newName) {\r\n if (isDefined(newName)) {\r\n componentNames.set(componentClass, newName);\r\n return\r\n }\r\n if (!componentNames.has(componentClass)) {\r\n var generatedName = ANONYMOUS_COMPONENT_DATA_KEY + nextAnonymousComponent++;\r\n componentNames.set(componentClass, generatedName);\r\n return generatedName\r\n }\r\n return componentNames.get(componentClass)\r\n};\r\nexport function attachInstanceToElement($element, componentInstance, disposeFn) {\r\n var data = elementData($element.get(0));\r\n var name = getName(componentInstance.constructor);\r\n data[name] = componentInstance;\r\n if (disposeFn) {\r\n eventsEngine.one($element, removeEvent, (function() {\r\n disposeFn.call(componentInstance)\r\n }))\r\n }\r\n if (!data[COMPONENT_NAMES_DATA_KEY]) {\r\n data[COMPONENT_NAMES_DATA_KEY] = []\r\n }\r\n data[COMPONENT_NAMES_DATA_KEY].push(name)\r\n}\r\nexport function getInstanceByElement($element, componentClass) {\r\n var name = getName(componentClass);\r\n return elementData($element.get(0), name)\r\n}\r\nexport {\r\n getName as name\r\n};\r\n","/**\r\n * DevExtreme (esm/core/utils/ready_callbacks.js)\r\n * Version: 21.2.11\r\n * Build date: Tue Oct 18 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport domAdapter from \"../dom_adapter\";\r\nimport injector from \"./dependency_injector\";\r\nimport {\r\n hasWindow\r\n} from \"./window\";\r\nimport callOnce from \"./call_once\";\r\nvar callbacks = [];\r\nvar subscribeReady = callOnce(() => {\r\n var removeListener = domAdapter.listen(domAdapter.getDocument(), \"DOMContentLoaded\", () => {\r\n readyCallbacks.fire();\r\n removeListener()\r\n })\r\n});\r\nvar readyCallbacks = {\r\n add: callback => {\r\n var windowExists = hasWindow();\r\n if (windowExists && \"loading\" !== domAdapter.getReadyState()) {\r\n callback()\r\n } else {\r\n callbacks.push(callback);\r\n windowExists && subscribeReady()\r\n }\r\n },\r\n fire: () => {\r\n callbacks.forEach(callback => callback());\r\n callbacks = []\r\n }\r\n};\r\nexport default injector(readyCallbacks);\r\n","/**\r\n * DevExtreme (esm/core/utils/resize_callbacks.js)\r\n * Version: 21.2.11\r\n * Build date: Tue Oct 18 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport {\r\n hasWindow,\r\n getWindow\r\n} from \"./window\";\r\nimport domAdapter from \"../dom_adapter\";\r\nimport Callbacks from \"./callbacks\";\r\nimport readyCallbacks from \"./ready_callbacks\";\r\nimport callOnce from \"./call_once\";\r\nvar resizeCallbacks = function() {\r\n var prevSize;\r\n var callbacks = Callbacks();\r\n var originalCallbacksAdd = callbacks.add;\r\n var originalCallbacksRemove = callbacks.remove;\r\n if (!hasWindow()) {\r\n return callbacks\r\n }\r\n var formatSize = function() {\r\n var window = getWindow();\r\n return {\r\n width: window.innerWidth,\r\n height: window.innerHeight\r\n }\r\n };\r\n var handleResize = function() {\r\n var now = formatSize();\r\n if (now.width === prevSize.width && now.height === prevSize.height) {\r\n return\r\n }\r\n var changedDimension;\r\n if (now.width === prevSize.width) {\r\n changedDimension = \"height\"\r\n }\r\n if (now.height === prevSize.height) {\r\n changedDimension = \"width\"\r\n }\r\n prevSize = now;\r\n callbacks.fire(changedDimension)\r\n };\r\n var setPrevSize = callOnce((function() {\r\n prevSize = formatSize()\r\n }));\r\n var removeListener;\r\n callbacks.add = function() {\r\n var result = originalCallbacksAdd.apply(callbacks, arguments);\r\n setPrevSize();\r\n readyCallbacks.add((function() {\r\n if (!removeListener && callbacks.has()) {\r\n removeListener = domAdapter.listen(getWindow(), \"resize\", handleResize)\r\n }\r\n }));\r\n return result\r\n };\r\n callbacks.remove = function() {\r\n var result = originalCallbacksRemove.apply(callbacks, arguments);\r\n if (!callbacks.has() && removeListener) {\r\n removeListener();\r\n removeListener = void 0\r\n }\r\n return result\r\n };\r\n return callbacks\r\n}();\r\nexport default resizeCallbacks;\r\n","/**\r\n * DevExtreme (esm/core/utils/storage.js)\r\n * Version: 21.2.11\r\n * Build date: Tue Oct 18 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport {\r\n getWindow\r\n} from \"../../core/utils/window\";\r\nvar window = getWindow();\r\nvar getSessionStorage = function() {\r\n var sessionStorage;\r\n try {\r\n sessionStorage = window.sessionStorage\r\n } catch (e) {}\r\n return sessionStorage\r\n};\r\nexport {\r\n getSessionStorage as sessionStorage\r\n};\r\n","/**\r\n * DevExtreme (esm/core/templates/template_engine_registry.js)\r\n * Version: 21.2.11\r\n * Build date: Tue Oct 18 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport {\r\n isString\r\n} from \"../utils/type\";\r\nimport errors from \"../errors\";\r\nvar templateEngines = {};\r\nvar currentTemplateEngine;\r\nexport function registerTemplateEngine(name, templateEngine) {\r\n templateEngines[name] = templateEngine\r\n}\r\nexport function setTemplateEngine(templateEngine) {\r\n if (isString(templateEngine)) {\r\n currentTemplateEngine = templateEngines[templateEngine];\r\n if (!currentTemplateEngine) {\r\n throw errors.Error(\"E0020\", templateEngine)\r\n }\r\n } else {\r\n currentTemplateEngine = templateEngine\r\n }\r\n}\r\nexport function getCurrentTemplateEngine() {\r\n return currentTemplateEngine\r\n}\r\n","/**\r\n * DevExtreme (esm/core/templates/template_engines.js)\r\n * Version: 21.2.11\r\n * Build date: Tue Oct 18 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport {\r\n extractTemplateMarkup\r\n} from \"../utils/dom\";\r\nimport {\r\n registerTemplateEngine\r\n} from \"./template_engine_registry\";\r\nregisterTemplateEngine(\"jquery-tmpl\", {\r\n compile: element => extractTemplateMarkup(element),\r\n render: (template, data) => jQuery.tmpl(template, data)\r\n});\r\nregisterTemplateEngine(\"jsrender\", {\r\n compile: element => (jQuery ? jQuery : jsrender).templates(extractTemplateMarkup(element)),\r\n render: (template, data) => template.render(data)\r\n});\r\nregisterTemplateEngine(\"mustache\", {\r\n compile: element => extractTemplateMarkup(element),\r\n render: (template, data) => Mustache.render(template, data)\r\n});\r\nregisterTemplateEngine(\"hogan\", {\r\n compile: element => Hogan.compile(extractTemplateMarkup(element)),\r\n render: (template, data) => template.render(data)\r\n});\r\nregisterTemplateEngine(\"underscore\", {\r\n compile: element => _.template(extractTemplateMarkup(element)),\r\n render: (template, data) => template(data)\r\n});\r\nregisterTemplateEngine(\"handlebars\", {\r\n compile: element => Handlebars.compile(extractTemplateMarkup(element)),\r\n render: (template, data) => template(data)\r\n});\r\nregisterTemplateEngine(\"doT\", {\r\n compile: element => doT.template(extractTemplateMarkup(element)),\r\n render: (template, data) => template(data)\r\n});\r\n","/**\r\n * DevExtreme (esm/core/templates/template.js)\r\n * Version: 21.2.11\r\n * Build date: Tue Oct 18 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport $ from \"../renderer\";\r\nimport {\r\n TemplateBase\r\n} from \"./template_base\";\r\nimport {\r\n normalizeTemplateElement\r\n} from \"../utils/dom\";\r\nimport {\r\n getCurrentTemplateEngine,\r\n registerTemplateEngine,\r\n setTemplateEngine\r\n} from \"./template_engine_registry\";\r\nimport \"./template_engines\";\r\nregisterTemplateEngine(\"default\", {\r\n compile: element => normalizeTemplateElement(element),\r\n render: (template, model, index) => template.clone()\r\n});\r\nsetTemplateEngine(\"default\");\r\nexport class Template extends TemplateBase {\r\n constructor(element) {\r\n super();\r\n this._element = element\r\n }\r\n _renderCore(options) {\r\n var transclude = options.transclude;\r\n if (!transclude && !this._compiledTemplate) {\r\n this._compiledTemplate = getCurrentTemplateEngine().compile(this._element)\r\n }\r\n return $(\"
\").append(transclude ? this._element : getCurrentTemplateEngine().render(this._compiledTemplate, options.model, options.index)).contents()\r\n }\r\n source() {\r\n return $(this._element).clone()\r\n }\r\n}\r\n","/**\r\n * DevExtreme (esm/core/utils/template_manager.js)\r\n * Version: 21.2.11\r\n * Build date: Tue Oct 18 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport config from \"../config\";\r\nimport devices from \"../devices\";\r\nimport Errors from \"../errors\";\r\nimport $ from \"../renderer\";\r\nimport {\r\n ChildDefaultTemplate\r\n} from \"../templates/child_default_template\";\r\nimport {\r\n EmptyTemplate\r\n} from \"../templates/empty_template\";\r\nimport {\r\n Template\r\n} from \"../templates/template\";\r\nimport {\r\n TemplateBase\r\n} from \"../templates/template_base\";\r\nimport {\r\n groupBy\r\n} from \"./array\";\r\nimport {\r\n findBestMatches\r\n} from \"./common\";\r\nimport {\r\n normalizeTemplateElement\r\n} from \"./dom\";\r\nimport {\r\n extend\r\n} from \"./extend\";\r\nimport {\r\n isFunction,\r\n isRenderer\r\n} from \"./type\";\r\nexport var findTemplates = (element, name) => {\r\n var templates = $(element).contents().filter(\"[\".concat(\"data-options\", '*=\"').concat(name, '\"]'));\r\n return [].slice.call(templates).map(element => {\r\n var optionsString = $(element).attr(\"data-options\") || \"\";\r\n return {\r\n element: element,\r\n options: config().optionsParser(optionsString)[name]\r\n }\r\n }).filter(template => !!template.options)\r\n};\r\nexport var suitableTemplatesByName = rawTemplates => {\r\n var templatesMap = groupBy(rawTemplates, template => template.options.name);\r\n if (templatesMap[void 0]) {\r\n throw Errors.Error(\"E0023\")\r\n }\r\n var result = {};\r\n Object.keys(templatesMap).forEach(name => {\r\n var _findBestMatches$;\r\n var suitableTemplate = null === (_findBestMatches$ = findBestMatches(devices.current(), templatesMap[name], template => template.options)[0]) || void 0 === _findBestMatches$ ? void 0 : _findBestMatches$.element;\r\n if (suitableTemplate) {\r\n result[name] = suitableTemplate\r\n }\r\n });\r\n return result\r\n};\r\nexport var addOneRenderedCall = template => {\r\n var render = template.render.bind(template);\r\n return extend({}, template, {\r\n render(options) {\r\n var templateResult = render(options);\r\n options && options.onRendered && options.onRendered();\r\n return templateResult\r\n }\r\n })\r\n};\r\nexport var getNormalizedTemplateArgs = options => {\r\n var args = [];\r\n if (\"model\" in options) {\r\n args.push(options.model)\r\n }\r\n if (\"index\" in options) {\r\n args.push(options.index)\r\n }\r\n args.push(options.container);\r\n return args\r\n};\r\nexport var validateTemplateSource = templateSource => \"string\" === typeof templateSource ? normalizeTemplateElement(templateSource) : templateSource;\r\nexport var templateKey = templateSource => isRenderer(templateSource) && templateSource[0] || templateSource;\r\nexport var defaultCreateElement = element => new Template(element);\r\nexport var acquireIntegrationTemplate = (templateSource, templates, isAsyncTemplate, skipTemplates) => {\r\n var integrationTemplate = null;\r\n if (!skipTemplates || -1 === skipTemplates.indexOf(templateSource)) {\r\n integrationTemplate = templates[templateSource];\r\n if (integrationTemplate && !(integrationTemplate instanceof TemplateBase) && !isAsyncTemplate) {\r\n integrationTemplate = addOneRenderedCall(integrationTemplate)\r\n }\r\n }\r\n return integrationTemplate\r\n};\r\nexport var acquireTemplate = (templateSource, createTemplate, templates, isAsyncTemplate, skipTemplates, defaultTemplates) => {\r\n if (null == templateSource) {\r\n return new EmptyTemplate\r\n }\r\n if (templateSource instanceof ChildDefaultTemplate) {\r\n return defaultTemplates[templateSource.name]\r\n }\r\n if (templateSource instanceof TemplateBase) {\r\n return templateSource\r\n }\r\n if (isFunction(templateSource.render) && !isRenderer(templateSource)) {\r\n return isAsyncTemplate ? templateSource : addOneRenderedCall(templateSource)\r\n }\r\n if (templateSource.nodeType || isRenderer(templateSource)) {\r\n return createTemplate($(templateSource))\r\n }\r\n return acquireIntegrationTemplate(templateSource, templates, isAsyncTemplate, skipTemplates) || defaultTemplates[templateSource] || createTemplate(templateSource)\r\n};\r\n","/**\r\n * DevExtreme (esm/core/utils/view_port.js)\r\n * Version: 21.2.11\r\n * Build date: Tue Oct 18 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport $ from \"../renderer\";\r\nimport readyCallbacks from \"./ready_callbacks\";\r\nvar ready = readyCallbacks.add;\r\nimport callbacks from \"./callbacks\";\r\nvar changeCallback = callbacks();\r\nvar $originalViewPort = $();\r\nvar value = function() {\r\n var $current;\r\n return function(element) {\r\n if (!arguments.length) {\r\n return $current\r\n }\r\n var $element = $(element);\r\n $originalViewPort = $element;\r\n var isNewViewportFound = !!$element.length;\r\n var prevViewPort = value();\r\n $current = isNewViewportFound ? $element : $(\"body\");\r\n changeCallback.fire(isNewViewportFound ? value() : $(), prevViewPort)\r\n }\r\n}();\r\nready((function() {\r\n value(\".dx-viewport\")\r\n}));\r\nexport {\r\n value,\r\n changeCallback\r\n};\r\nexport function originalViewPort() {\r\n return $originalViewPort\r\n}\r\n","/**\r\n * DevExtreme (esm/events/core/event_registrator.js)\r\n * Version: 21.2.11\r\n * Build date: Tue Oct 18 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport {\r\n each\r\n} from \"../../core/utils/iterator\";\r\nimport callbacks from \"./event_registrator_callbacks\";\r\nvar registerEvent = function(name, eventObject) {\r\n var strategy = {};\r\n if (\"noBubble\" in eventObject) {\r\n strategy.noBubble = eventObject.noBubble\r\n }\r\n if (\"bindType\" in eventObject) {\r\n strategy.bindType = eventObject.bindType\r\n }\r\n if (\"delegateType\" in eventObject) {\r\n strategy.delegateType = eventObject.delegateType\r\n }\r\n each([\"setup\", \"teardown\", \"add\", \"remove\", \"trigger\", \"handle\", \"_default\", \"dispose\"], (function(_, methodName) {\r\n if (!eventObject[methodName]) {\r\n return\r\n }\r\n strategy[methodName] = function() {\r\n var args = [].slice.call(arguments);\r\n args.unshift(this);\r\n return eventObject[methodName].apply(eventObject, args)\r\n }\r\n }));\r\n callbacks.fire(name, strategy)\r\n};\r\nregisterEvent.callbacks = callbacks;\r\nexport default registerEvent;\r\n","/**\r\n * DevExtreme (esm/events/core/keyboard_processor.js)\r\n * Version: 21.2.11\r\n * Build date: Tue Oct 18 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport $ from \"../../core/renderer\";\r\nimport eventsEngine from \"../../events/core/events_engine\";\r\nimport Class from \"../../core/class\";\r\nimport {\r\n inArray\r\n} from \"../../core/utils/array\";\r\nimport {\r\n addNamespace,\r\n normalizeKeyName\r\n} from \"../../events/utils/index\";\r\nvar COMPOSITION_START_EVENT = \"compositionstart\";\r\nvar COMPOSITION_END_EVENT = \"compositionend\";\r\nvar KEYDOWN_EVENT = \"keydown\";\r\nvar NAMESPACE = \"KeyboardProcessor\";\r\nvar createKeyDownOptions = e => ({\r\n keyName: normalizeKeyName(e),\r\n key: e.key,\r\n code: e.code,\r\n ctrl: e.ctrlKey,\r\n location: e.location,\r\n metaKey: e.metaKey,\r\n shift: e.shiftKey,\r\n alt: e.altKey,\r\n which: e.which,\r\n originalEvent: e\r\n});\r\nvar KeyboardProcessor = Class.inherit({\r\n _keydown: addNamespace(KEYDOWN_EVENT, NAMESPACE),\r\n _compositionStart: addNamespace(COMPOSITION_START_EVENT, NAMESPACE),\r\n _compositionEnd: addNamespace(COMPOSITION_END_EVENT, NAMESPACE),\r\n ctor: function(options) {\r\n options = options || {};\r\n if (options.element) {\r\n this._element = $(options.element)\r\n }\r\n if (options.focusTarget) {\r\n this._focusTarget = options.focusTarget\r\n }\r\n this._handler = options.handler;\r\n if (this._element) {\r\n this._processFunction = e => {\r\n var isNotFocusTarget = this._focusTarget && this._focusTarget !== e.target && inArray(e.target, $(this._focusTarget)) < 0;\r\n var shouldSkipProcessing = this._isComposingJustFinished && 229 === e.which || this._isComposing || isNotFocusTarget;\r\n this._isComposingJustFinished = false;\r\n if (!shouldSkipProcessing) {\r\n this.process(e)\r\n }\r\n };\r\n this._toggleProcessingWithContext = this.toggleProcessing.bind(this);\r\n eventsEngine.on(this._element, this._keydown, this._processFunction);\r\n eventsEngine.on(this._element, this._compositionStart, this._toggleProcessingWithContext);\r\n eventsEngine.on(this._element, this._compositionEnd, this._toggleProcessingWithContext)\r\n }\r\n },\r\n dispose: function() {\r\n if (this._element) {\r\n eventsEngine.off(this._element, this._keydown, this._processFunction);\r\n eventsEngine.off(this._element, this._compositionStart, this._toggleProcessingWithContext);\r\n eventsEngine.off(this._element, this._compositionEnd, this._toggleProcessingWithContext)\r\n }\r\n this._element = void 0;\r\n this._handler = void 0\r\n },\r\n process: function(e) {\r\n this._handler(createKeyDownOptions(e))\r\n },\r\n toggleProcessing: function(_ref) {\r\n var {\r\n type: type\r\n } = _ref;\r\n this._isComposing = type === COMPOSITION_START_EVENT;\r\n this._isComposingJustFinished = !this._isComposing\r\n }\r\n});\r\nKeyboardProcessor.createKeyDownOptions = createKeyDownOptions;\r\nexport default KeyboardProcessor;\r\n","/**\r\n * DevExtreme (esm/events/index.js)\r\n * Version: 21.2.11\r\n * Build date: Tue Oct 18 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport eventsEngine from \"./core/events_engine\";\r\nexport var on = eventsEngine.on;\r\nexport var one = eventsEngine.one;\r\nexport var off = eventsEngine.off;\r\nexport var trigger = eventsEngine.trigger;\r\nexport var triggerHandler = eventsEngine.triggerHandler;\r\nexport var Event = eventsEngine.Event;\r\n","/**\r\n * DevExtreme (esm/events/remove.js)\r\n * Version: 21.2.11\r\n * Build date: Tue Oct 18 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport $ from \"../core/renderer\";\r\nimport {\r\n beforeCleanData\r\n} from \"../core/element_data\";\r\nimport eventsEngine from \"./core/events_engine\";\r\nimport registerEvent from \"./core/event_registrator\";\r\nexport var removeEvent = \"dxremove\";\r\nvar eventPropName = \"dxRemoveEvent\";\r\nbeforeCleanData((function(elements) {\r\n elements = [].slice.call(elements);\r\n for (var i = 0; i < elements.length; i++) {\r\n var $element = $(elements[i]);\r\n if ($element.prop(eventPropName)) {\r\n $element[0][eventPropName] = null;\r\n eventsEngine.triggerHandler($element, removeEvent)\r\n }\r\n }\r\n}));\r\nregisterEvent(removeEvent, {\r\n noBubble: true,\r\n setup: function(element) {\r\n $(element).prop(eventPropName, true)\r\n }\r\n});\r\n","/**\r\n * DevExtreme (esm/events/short.js)\r\n * Version: 21.2.11\r\n * Build date: Tue Oct 18 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport eventsEngine from \"./core/events_engine\";\r\nimport KeyboardProcessor from \"./core/keyboard_processor\";\r\nimport {\r\n addNamespace as pureAddNamespace\r\n} from \"./utils/index\";\r\n\r\nfunction addNamespace(event, namespace) {\r\n return namespace ? pureAddNamespace(event, namespace) : event\r\n}\r\n\r\nfunction executeAction(action, args) {\r\n return \"function\" === typeof action ? action(args) : action.execute(args)\r\n}\r\nexport var active = {\r\n on: ($el, active, inactive, opts) => {\r\n var {\r\n selector: selector,\r\n showTimeout: showTimeout,\r\n hideTimeout: hideTimeout,\r\n namespace: namespace\r\n } = opts;\r\n eventsEngine.on($el, addNamespace(\"dxactive\", namespace), selector, {\r\n timeout: showTimeout\r\n }, event => executeAction(active, {\r\n event: event,\r\n element: event.currentTarget\r\n }));\r\n eventsEngine.on($el, addNamespace(\"dxinactive\", namespace), selector, {\r\n timeout: hideTimeout\r\n }, event => executeAction(inactive, {\r\n event: event,\r\n element: event.currentTarget\r\n }))\r\n },\r\n off: ($el, _ref) => {\r\n var {\r\n namespace: namespace,\r\n selector: selector\r\n } = _ref;\r\n eventsEngine.off($el, addNamespace(\"dxactive\", namespace), selector);\r\n eventsEngine.off($el, addNamespace(\"dxinactive\", namespace), selector)\r\n }\r\n};\r\nexport var resize = {\r\n on: function($el, resize) {\r\n var {\r\n namespace: namespace\r\n } = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {};\r\n eventsEngine.on($el, addNamespace(\"dxresize\", namespace), resize)\r\n },\r\n off: function($el) {\r\n var {\r\n namespace: namespace\r\n } = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {};\r\n eventsEngine.off($el, addNamespace(\"dxresize\", namespace))\r\n }\r\n};\r\nexport var hover = {\r\n on: ($el, start, end, _ref2) => {\r\n var {\r\n selector: selector,\r\n namespace: namespace\r\n } = _ref2;\r\n eventsEngine.on($el, addNamespace(\"dxhoverend\", namespace), selector, event => end(event));\r\n eventsEngine.on($el, addNamespace(\"dxhoverstart\", namespace), selector, event => executeAction(start, {\r\n element: event.target,\r\n event: event\r\n }))\r\n },\r\n off: ($el, _ref3) => {\r\n var {\r\n selector: selector,\r\n namespace: namespace\r\n } = _ref3;\r\n eventsEngine.off($el, addNamespace(\"dxhoverstart\", namespace), selector);\r\n eventsEngine.off($el, addNamespace(\"dxhoverend\", namespace), selector)\r\n }\r\n};\r\nexport var visibility = {\r\n on: ($el, shown, hiding, _ref4) => {\r\n var {\r\n namespace: namespace\r\n } = _ref4;\r\n eventsEngine.on($el, addNamespace(\"dxhiding\", namespace), hiding);\r\n eventsEngine.on($el, addNamespace(\"dxshown\", namespace), shown)\r\n },\r\n off: ($el, _ref5) => {\r\n var {\r\n namespace: namespace\r\n } = _ref5;\r\n eventsEngine.off($el, addNamespace(\"dxhiding\", namespace));\r\n eventsEngine.off($el, addNamespace(\"dxshown\", namespace))\r\n }\r\n};\r\nexport var focus = {\r\n on: ($el, focusIn, focusOut, _ref6) => {\r\n var {\r\n namespace: namespace\r\n } = _ref6;\r\n eventsEngine.on($el, addNamespace(\"focusin\", namespace), focusIn);\r\n eventsEngine.on($el, addNamespace(\"focusout\", namespace), focusOut)\r\n },\r\n off: ($el, _ref7) => {\r\n var {\r\n namespace: namespace\r\n } = _ref7;\r\n eventsEngine.off($el, addNamespace(\"focusin\", namespace));\r\n eventsEngine.off($el, addNamespace(\"focusout\", namespace))\r\n },\r\n trigger: $el => eventsEngine.trigger($el, \"focus\")\r\n};\r\nexport var dxClick = {\r\n on: function($el, click) {\r\n var {\r\n namespace: namespace\r\n } = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {};\r\n eventsEngine.on($el, addNamespace(\"dxclick\", namespace), click)\r\n },\r\n off: function($el) {\r\n var {\r\n namespace: namespace\r\n } = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {};\r\n eventsEngine.off($el, addNamespace(\"dxclick\", namespace))\r\n }\r\n};\r\nexport var click = {\r\n on: function($el, click) {\r\n var {\r\n namespace: namespace\r\n } = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {};\r\n eventsEngine.on($el, addNamespace(\"click\", namespace), click)\r\n },\r\n off: function($el) {\r\n var {\r\n namespace: namespace\r\n } = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {};\r\n eventsEngine.off($el, addNamespace(\"click\", namespace))\r\n }\r\n};\r\nvar index = 0;\r\nvar keyboardProcessors = {};\r\nvar generateListenerId = () => \"keyboardProcessorId\".concat(index++);\r\nexport var keyboard = {\r\n on: (element, focusTarget, handler) => {\r\n var listenerId = generateListenerId();\r\n keyboardProcessors[listenerId] = new KeyboardProcessor({\r\n element: element,\r\n focusTarget: focusTarget,\r\n handler: handler\r\n });\r\n return listenerId\r\n },\r\n off: listenerId => {\r\n if (listenerId && keyboardProcessors[listenerId]) {\r\n keyboardProcessors[listenerId].dispose();\r\n delete keyboardProcessors[listenerId]\r\n }\r\n },\r\n _getProcessor: listenerId => keyboardProcessors[listenerId]\r\n};\r\n","/**\r\n * DevExtreme (esm/events/utils/add_namespace.js)\r\n * Version: 21.2.11\r\n * Build date: Tue Oct 18 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport errors from \"../../core/errors\";\r\nvar addNamespace = (eventNames, namespace) => {\r\n if (!namespace) {\r\n throw errors.Error(\"E0017\")\r\n }\r\n if (Array.isArray(eventNames)) {\r\n return eventNames.map(eventName => addNamespace(eventName, namespace)).join(\" \")\r\n }\r\n if (-1 !== eventNames.indexOf(\" \")) {\r\n return addNamespace(eventNames.split(/\\s+/g), namespace)\r\n }\r\n return \"\".concat(eventNames, \".\").concat(namespace)\r\n};\r\nexport default addNamespace;\r\n","/**\r\n * DevExtreme (esm/events/utils/index.js)\r\n * Version: 21.2.11\r\n * Build date: Tue Oct 18 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport $ from \"../../core/renderer\";\r\nimport mappedAddNamespace from \"./add_namespace\";\r\nimport eventsEngine from \"../core/events_engine\";\r\nimport {\r\n each\r\n} from \"../../core/utils/iterator\";\r\nimport {\r\n extend\r\n} from \"../../core/utils/extend\";\r\nimport {\r\n focused\r\n} from \"../../ui/widget/selectors\";\r\nvar KEY_MAP = {\r\n backspace: \"backspace\",\r\n tab: \"tab\",\r\n enter: \"enter\",\r\n escape: \"escape\",\r\n pageup: \"pageUp\",\r\n pagedown: \"pageDown\",\r\n end: \"end\",\r\n home: \"home\",\r\n arrowleft: \"leftArrow\",\r\n arrowup: \"upArrow\",\r\n arrowright: \"rightArrow\",\r\n arrowdown: \"downArrow\",\r\n delete: \"del\",\r\n \" \": \"space\",\r\n f: \"F\",\r\n a: \"A\",\r\n \"*\": \"asterisk\",\r\n \"-\": \"minus\",\r\n alt: \"alt\",\r\n control: \"control\",\r\n shift: \"shift\"\r\n};\r\nvar LEGACY_KEY_CODES = {\r\n 8: \"backspace\",\r\n 9: \"tab\",\r\n 13: \"enter\",\r\n 27: \"escape\",\r\n 33: \"pageUp\",\r\n 34: \"pageDown\",\r\n 35: \"end\",\r\n 36: \"home\",\r\n 37: \"leftArrow\",\r\n 38: \"upArrow\",\r\n 39: \"rightArrow\",\r\n 40: \"downArrow\",\r\n 46: \"del\",\r\n 32: \"space\",\r\n 70: \"F\",\r\n 65: \"A\",\r\n 106: \"asterisk\",\r\n 109: \"minus\",\r\n 189: \"minus\",\r\n 173: \"minus\",\r\n 16: \"shift\",\r\n 17: \"control\",\r\n 18: \"alt\"\r\n};\r\nvar EVENT_SOURCES_REGEX = {\r\n dx: /^dx/i,\r\n mouse: /(mouse|wheel)/i,\r\n touch: /^touch/i,\r\n keyboard: /^key/i,\r\n pointer: /^(ms)?pointer/i\r\n};\r\nvar fixMethod = e => e;\r\nvar copyEvent = originalEvent => fixMethod(eventsEngine.Event(originalEvent, originalEvent), originalEvent);\r\nvar isDxEvent = e => \"dx\" === eventSource(e);\r\nvar isNativeMouseEvent = e => \"mouse\" === eventSource(e);\r\nvar isNativeTouchEvent = e => \"touch\" === eventSource(e);\r\nexport var eventSource = _ref => {\r\n var {\r\n type: type\r\n } = _ref;\r\n var result = \"other\";\r\n each(EVENT_SOURCES_REGEX, (function(key) {\r\n if (this.test(type)) {\r\n result = key;\r\n return false\r\n }\r\n }));\r\n return result\r\n};\r\nexport var isPointerEvent = e => \"pointer\" === eventSource(e);\r\nexport var isMouseEvent = e => isNativeMouseEvent(e) || (isPointerEvent(e) || isDxEvent(e)) && \"mouse\" === e.pointerType;\r\nexport var isDxMouseWheelEvent = e => e && \"dxmousewheel\" === e.type;\r\nexport var isTouchEvent = e => isNativeTouchEvent(e) || (isPointerEvent(e) || isDxEvent(e)) && \"touch\" === e.pointerType;\r\nexport var isKeyboardEvent = e => \"keyboard\" === eventSource(e);\r\nexport var isFakeClickEvent = _ref2 => {\r\n var {\r\n screenX: screenX,\r\n offsetX: offsetX,\r\n pageX: pageX\r\n } = _ref2;\r\n return 0 === screenX && !offsetX && 0 === pageX\r\n};\r\nexport var eventData = _ref3 => {\r\n var {\r\n pageX: pageX,\r\n pageY: pageY,\r\n timeStamp: timeStamp\r\n } = _ref3;\r\n return {\r\n x: pageX,\r\n y: pageY,\r\n time: timeStamp\r\n }\r\n};\r\nexport var eventDelta = (from, to) => ({\r\n x: to.x - from.x,\r\n y: to.y - from.y,\r\n time: to.time - from.time || 1\r\n});\r\nexport var hasTouches = e => {\r\n var {\r\n originalEvent: originalEvent,\r\n pointers: pointers\r\n } = e;\r\n if (isNativeTouchEvent(e)) {\r\n return (originalEvent.touches || []).length\r\n }\r\n if (isDxEvent(e)) {\r\n return (pointers || []).length\r\n }\r\n return 0\r\n};\r\nvar skipEvents = false;\r\nexport var forceSkipEvents = () => skipEvents = true;\r\nexport var stopEventsSkipping = () => skipEvents = false;\r\nexport var needSkipEvent = e => {\r\n if (skipEvents) {\r\n return true\r\n }\r\n var {\r\n target: target\r\n } = e;\r\n var $target = $(target);\r\n var isContentEditable = (null === target || void 0 === target ? void 0 : target.isContentEditable) || (null === target || void 0 === target ? void 0 : target.hasAttribute(\"contenteditable\"));\r\n var touchInEditable = $target.is(\"input, textarea, select\") || isContentEditable;\r\n if (isDxMouseWheelEvent(e)) {\r\n var isTextArea = $target.is(\"textarea\") && $target.hasClass(\"dx-texteditor-input\");\r\n if (isTextArea || isContentEditable) {\r\n return false\r\n }\r\n var isInputFocused = $target.is(\"input[type='number'], textarea, select\") && $target.is(\":focus\");\r\n return isInputFocused\r\n }\r\n if (isMouseEvent(e)) {\r\n return touchInEditable || e.which > 1\r\n }\r\n if (isTouchEvent(e)) {\r\n return touchInEditable && focused($target)\r\n }\r\n};\r\nexport var setEventFixMethod = func => fixMethod = func;\r\nexport var createEvent = (originalEvent, args) => {\r\n var event = copyEvent(originalEvent);\r\n args && extend(event, args);\r\n return event\r\n};\r\nexport var fireEvent = props => {\r\n var {\r\n originalEvent: originalEvent,\r\n delegateTarget: delegateTarget\r\n } = props;\r\n var event = createEvent(originalEvent, props);\r\n eventsEngine.trigger(delegateTarget || event.target, event);\r\n return event\r\n};\r\nexport var normalizeKeyName = _ref4 => {\r\n var {\r\n key: key,\r\n which: which\r\n } = _ref4;\r\n var normalizedKey = KEY_MAP[null === key || void 0 === key ? void 0 : key.toLowerCase()] || key;\r\n var normalizedKeyFromWhich = LEGACY_KEY_CODES[which];\r\n if (normalizedKeyFromWhich && normalizedKey === key) {\r\n return normalizedKeyFromWhich\r\n } else if (!normalizedKey && which) {\r\n return String.fromCharCode(which)\r\n }\r\n return normalizedKey\r\n};\r\nexport var getChar = _ref5 => {\r\n var {\r\n key: key,\r\n which: which\r\n } = _ref5;\r\n return key || String.fromCharCode(which)\r\n};\r\nexport var addNamespace = mappedAddNamespace;\r\nexport var isCommandKeyPressed = _ref6 => {\r\n var {\r\n ctrlKey: ctrlKey,\r\n metaKey: metaKey\r\n } = _ref6;\r\n return ctrlKey || metaKey\r\n};\r\n","/**\r\n * DevExtreme (esm/events/visibility_change.js)\r\n * Version: 21.2.11\r\n * Build date: Tue Oct 18 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport $ from \"../core/renderer\";\r\nimport eventsEngine from \"./core/events_engine\";\r\nvar triggerVisibilityChangeEvent = function(eventName) {\r\n return function(element) {\r\n var $element = $(element || \"body\");\r\n var changeHandlers = $element.filter(\".dx-visibility-change-handler\").add($element.find(\".dx-visibility-change-handler\"));\r\n for (var i = 0; i < changeHandlers.length; i++) {\r\n eventsEngine.triggerHandler(changeHandlers[i], eventName)\r\n }\r\n }\r\n};\r\nexport var triggerShownEvent = triggerVisibilityChangeEvent(\"dxshown\");\r\nexport var triggerHidingEvent = triggerVisibilityChangeEvent(\"dxhiding\");\r\nexport var triggerResizeEvent = triggerVisibilityChangeEvent(\"dxresize\");\r\n","/**\r\n * DevExtreme (esm/ui/widget/selectors.js)\r\n * Version: 21.2.11\r\n * Build date: Tue Oct 18 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport $ from \"../../core/renderer\";\r\nimport domAdapter from \"../../core/dom_adapter\";\r\nvar focusableFn = function(element, tabIndex) {\r\n if (!visible(element)) {\r\n return false\r\n }\r\n var nodeName = element.nodeName.toLowerCase();\r\n var isTabIndexNotNaN = !isNaN(tabIndex);\r\n var isDisabled = element.disabled;\r\n var isDefaultFocus = /^(input|select|textarea|button|object|iframe)$/.test(nodeName);\r\n var isHyperlink = \"a\" === nodeName;\r\n var isFocusable = true;\r\n var isContentEditable = element.isContentEditable;\r\n if (isDefaultFocus || isContentEditable) {\r\n isFocusable = !isDisabled\r\n } else if (isHyperlink) {\r\n isFocusable = element.href || isTabIndexNotNaN\r\n } else {\r\n isFocusable = isTabIndexNotNaN\r\n }\r\n return isFocusable\r\n};\r\n\r\nfunction visible(element) {\r\n var $element = $(element);\r\n return $element.is(\":visible\") && \"hidden\" !== $element.css(\"visibility\") && \"hidden\" !== $element.parents().css(\"visibility\")\r\n}\r\nexport var focusable = function(index, element) {\r\n return focusableFn(element, $(element).attr(\"tabIndex\"))\r\n};\r\nexport var tabbable = function(index, element) {\r\n var tabIndex = $(element).attr(\"tabIndex\");\r\n return (isNaN(tabIndex) || tabIndex >= 0) && focusableFn(element, tabIndex)\r\n};\r\nexport var focused = function($element) {\r\n var element = $($element).get(0);\r\n return domAdapter.getActiveElement() === element\r\n};\r\n"],"names":["__assign","this","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","defineProperty","exports","value","pullAllChildren","pullConfigComponents","isFragment","vue_helper_1","node","patchFlag","children","nodes","ownerConfig","forEach","Array","isArray","push","componentInfo","getComponentInfo","$_optionName","componentChildren","configurationChildren","initialValues","$_predefinedProps","getNormalizedProps","props","config","createNested","$_isCollectionItem","$_expectedChildren","$_config","$_innerChanges","directChildren","allChildren","__createBinding","create","o","m","k","k2","undefined","enumerable","get","__setModuleDefault","v","__importStar","mod","__esModule","result","__importDefault","initBaseComponent","initDxComponent","vue_1","callbacks_1","events_1","children_processing_1","configuration_1","configuration_component_1","constants_1","helpers_1","templates_manager_1","includeAttrs","defineComponent","inheritAttrs","data","eventBus","default","provide","render","attrs","attributes","thisComponent","cleanNested","defaultSlots","$_processChildren","h","$attrs","attr","attrValue","beforeUpdate","setPrevNestedOptions","getNestedOptionValues","updated","cleanWidgetNode","$el","getChildren","child","_a","initOptionChangedFunc","type","component","proxy","$_templatesManager","discover","$_instance","beginUpdate","isDirty","option","templates","$","vnode","_i","keys","name_1","getTemplatePropName","resetDirtyFlag","_b","_c","$_pendingOptions","name_2","$_applyConfigurationChanges","endUpdate","restoreNodes","fire","beforeUnmount","instance","triggerHandler","DX_REMOVE_EVENT","dispose","created","getComponentProps","VMODEL_NAME","init","$props","methods","componentsCountChanged","optionPath","isCollection","removed","options","resetOption","getOptionValue","cleanComponentsCountChanged","$_createWidget","element","TemplatesManager","getVModelValue","templatesRenderAsynchronously","$_hasAsyncTemplate","$_getIntegrationOptions","$_WidgetClass","on","args","onOptionChanged","setEmitOptionChangedFunc","bindOptionWatchers","$_createEmitters","integrationOptions","watchMethod","$_getWatchMethod","$_getExtraIntegrationOptions","name_3","_this","valueGetter","valueChangeCallback","skipImmediate","$watch","newValue","oldValue","toComparable","deep","_children","listenerName","eventName","camelize","e","$emit","removedNodes","forEachChildNode","childNode","parent","parentNode","isExtension","hasAttribute","nodeName","removeChild","el","appendChild","extends","onInitializing","$_hasOwner","mounted","$slots","childExtenton","$_isExtension","$_attachTo","getOption","deepWatch","optionName","getInnerChanges","getConfig","initDxConfiguration","vueInstance","componentOptions","getNodeOptions","innerChanges","name","isCollectionItem","parentPath","fullPath","beforeMount","getNodeTypeOfComponent","$parent","config_1","Configuration","updateFunc","expectedChildren","collectionItemIndex","_updateFunc","_name","_initialValues","_nestedConfigurations","_isCollectionItem","_collectionItemIndex","_expectedChildren","_ownerConfig","_componentChanges","updateValue","bind","configurable","fullName","_options","_prevNestedConfigOptions","set","handler","_emitOptionChanged","isEqual","previousValue","_onOptionChanged","split","expected","actualName","actualIsCollectionItem","filter","c","configuration","nestedName","join","values","nestedValue","arr","getOptionsToWatch","blackList","optionRelPath","optionInfo","getOptionInfo","nestedConfig","_getNestedConfig","slice","_tryEmitOptionChanged","targets","rawValue","toRaw","emitOptionChanged","propName","$options","hasProp","model","hasVModelValue","DX_TEMPLATE_WRAPPER_CLASS","initDxExtensionComponent","component_1","setAttribute","nodeOptions","attachTo","uppercaseFirst","toUpperCase","substr","lowercaseFirst","toLowerCase","Date","getTime","parts","index","Number","allKeysAreEqual","templateName","map","value1","value2","callback","childNodes","obj1","obj2","obj1Keys","obj1Keys_1","key","createExtensionComponent","createConfigurationComponent","createComponent","vue2Stategy","vue3Stategy","strategy","isVue3","configComponent","Ctor","propsData","BaseComponent","DxComponent","VueType","Vue","extend","createElement","id","$children","$vnode","_d","_e","beforeDestroy","$listeners","childExtension","componentInstance","useLegacyTemplateEngine","DxConfiguration","TEMPLATE_MULTIPLE_ROOTS_ERROR","DxExtensionComponent","extension_component_1","mountTemplate","errors_1","TEMPLATE_PROP","asConfigurable","hasTemplate","scopedSlots","slotName","$scopedSlots","slot","childComponent","defaultSlot","getSlot","placeholder","inject","$on","$forceUpdate","content","Error","destroyed","$off","templates_discovering_1","dom_adapter_1","_slots","_templates","_isDirty","_component","slots","_prepareTemplates","createDxTemplate","scopeData","container","document","mountedTemplate","setClass","nodeType","Node","TEXT_NODE","removalListener","style","display","one","$destroy","setCompatOptions","setVModel","configurationTemplate","namedTeplates","declaredTemplates","componentChildren_1","configurationDefaultTemplate","mount","add","$_updatedHandler","onRendered","unmounted","remove","newContent","item","getConfigurationOptions","clearConfiguration","counter","rendered","firstChild","appContext","app","unmount","getVueVersion","currentVersion","version","usedConfigurationProps","isConfiguration","toString","isComment","findConfigurationComponents","childType","hasChildren","subTree","template","createApp","_context","components","setPrototypeOf","provides","getPrototypeOf","directives","mixins","parentAppContext","prop","setCustomPluginsData","setAppContext","compatConfig","MODE","event","modelValue","emits","Action","constructor","action","_action","context","_beforeExecute","beforeExecute","_afterExecute","afterExecute","_validatingTargetName","validatingTargetName","excludeValidators","_excludeValidators","execute","cancel","handled","argsBag","_validateAction","_executeAction","executors","_executor$validate","executor","validate","_executor$execute","static","registerExecutor","_len","_key","createValidatorByTargetElement","condition","disabled","$target","is","readOnly","func","cachedGetters","cachedSetters","OptionManager","optionsByReference","_optionsByReference","_changingCallback","_changedCallback","_namePreparedCallbacks","_setByReference","rulesOptions","fieldName","_setPreparedValue","merge","silent","path","functionsAsIs","unwrapObservables","_prepareRelevantNames","valueName","concat","onRelevantNamesPrepared","callBack","onChanging","onChanged","Options","defaultOptions","deprecatedOptions","_deprecatedCallback","_startChangeCallback","_endChangeCallback","_default","_deprecated","_deprecatedNames","_initDeprecatedNames","_optionManager","_setRelevantNames","_cachedOptions","_rules","_initial","_initialOptions","_getByRules","rules","_notifyDeprecated","info","normalizedName","_normalizeName","_setField","_clearField","fieldObject","previousFieldName","deprecate","alias","addRules","applyRules","onDeprecated","onStartChange","onEndChange","isInitial","initialValue","initial","reset","reduce","field","defaultValue","getAliasesByName","aliasName","isDeprecated","cache","PostponedOperations","_postponedOperations","fn","postponedPromise","promises","completePromise","promise","callPostponedOperations","operation","done","then","resolve","getEventName","actionName","charAt","Component","_setDeprecatedOptions","_deprecatedOptions","_getDeprecatedOptions","_getDefaultOptions","onInitialized","onDisposing","defaultOptionsRules","_defaultOptionsRules","_setOptionsByDevice","_convertRulesToOptions","_isInitialOptionValue","_setOptionsByReference","_getOptionsByReference","ctor","_optionChangedCallbacks","_disposingCallbacks","NAME","_eventsStrategy","eventsStrategy","_updateLockCount","postponedOperations","_createOptions","_initialized","_optionChanging","_logDeprecatedOptionWarning","_notifyOptionChanged","_initOptions","_init","_createOptionChangedAction","fireWith","message","errors","since","_logDeprecatedComponentWarning","_optionChangedAction","_createActionByOption","_createDisposingAction","_disposingAction","_optionChanged","_dispose","empty","_disposed","_lockUpdate","_unlockUpdate","Math","max","_isUpdateAllowed","_isInitializingRequired","_initializing","isInitialized","_commitUpdate","_initializeComponent","optionNames","indexOf","_defaultActionArgs","_cancelOptionChange","initialOption","_defaultActionConfig","_createAction","actionSource","actionValue","actionFunc","hasEvent","_len2","_key2","fireEvent","wrapActionsBeforeExecute","beforeActionExecute","wrappedAction","eventHandler","off","hasActionSubscription","isOptionDeprecated","_setOptionWithoutOptionChange","_getOptionValue","componentClass","isMemberInvoke","memberName","memberArgs","each","getInstance","memberValue","namespace","navigator","window","KNOWN_UA_TABLE","iPhone","iPhone5","iPhone6","iPhone6plus","iPad","iPadMini","androidPhone","androidTablet","msSurface","desktop","DEFAULT_DEVICE","deviceType","platform","phone","tablet","android","ios","generic","grade","mac","uaParsers","userAgent","isPhone","test","match","isTablet","isDesktop","isMac","matches","parseInt","screen","height","devices","_window","_realDevice","_getDevice","_currentDevice","_currentOrientation","changed","_recalculateOrientation","current","deviceOrName","_forced","_getDeviceOrNameFromWindowScope","_getDeviceNameFromSessionStorage","real","forceDevice","orientation","isForced","isRippleEmulator","tinyHippos","_getCssClasses","device","realDevice","isSimulator","rtlEnabled","attachCssClasses","_deviceClasses","addClass","detachCssClasses","removeClass","_isSimulator","top","self","forceSimulator","deviceName","_fromConfig","ua","_fromUA","sessionStorage","getItem","JSON","parse","ex","shortcuts","parser","_changeOrientation","$window","windowWidth","_currentWidth","viewPortElement","viewPort","prevViewport","DX_POLYMORPH_WIDGET_TEMPLATE","_ref","widgetName","widget","widgetElement","widgetOptions","_createComponent","TemplateManager","anonymousTemplateName","_tempTemplates","_defaultTemplates","_anonymousTemplateName","_createElement","_createTemplateIfNeeded","useDeferUpdateForTemplates","addDefaultTemplates","tempTemplate","extractTemplates","_extractTemplates","anonymousTemplateMeta","_extractAnonymousTemplate","suitableTemplates","_ref2","detach","_createTemplate","$anonymousTemplate","contents","_","isTextNode","isEmptyText","text","trim","templateSource","cachedTemplate","source","getTemplate","_ref3","isAsyncTemplate","skipTemplates","templateSourceResult","abstract","DOMComponent","callBase","width","elementAttr","_useTemplates","createDefaultOptions","_customClass","_$element","_getSynchronizableOptionsForCreateComponent","_checkFunctionValueDeprecation","_visibilityChanged","_dimensionChanged","_attachWindowResizeCallback","_initTemplateManager","instanceCustomRules","_classCustomRules","_isDimensionChangeSupported","windowResizeCallBack","_windowResizeCallBack","_renderComponent","_initMarkup","_render","_renderElementAttributes","_toggleRTLDirection","_renderVisibilityChange","_renderDimensions","_attachVisibilityChangeHandlers","classNames","class","$element","_attachDimensionChangeHandlers","_isVisibilityChangeSupported","_isCssUpdateRequired","css","_isHidden","_isVisible","_checkVisibilityChanged","_clean","_modelByElement","modelByElement","_invalidate","_requireRefresh","_refresh","_templateManager","_detachWindowResizeCallback","rtl","toggleClass","synchronizableOptions","nestedComponentOptions","nestedComponentConfig","_extendConfig","optionChangedHandler","extendConfig","_removeAttributes","removeAttribute","_removeClasses","className","cssClass","lastIndexOf","_updateDOMComponent","renderRequired","textContent","_getAnonymousTemplateName","createTemplate","_initTemplates","anonymousTemplate","_getTemplateByOption","_getTemplate","_saveTemplate","rule","getPublicElement","EventsStrategy","owner","_events","_owner","callbacks","has","eventArgs","syncStrategy","originalAdd","convertRulesToOptions","currentDevice","ruleOptions","deviceFilter","deviceMatch","normalizeOptions","getFieldName","getParentName","getNestedOptionValue","optionsObject","createDefaultOptionRules","Promise","resolver","d","reject","val","all","ChildDefaultTemplate","super","EmptyTemplate","_renderCore","FunctionTemplate","renderedCallbacks","TemplateBase","$result","_ensureResultInContainer","$container","resultInContainer","append","contains","equals","hasNegation","resetActiveElement","_activeElement$blur","activeElement","blur","clearSelection","selection","getSelection","removeAllRanges","closestCommonParent","startTarget","endTarget","$startTarget","$endTarget","$startParents","parents","$endParents","min","extractTemplateMarkup","templateTag","$node","eq","html","normalizeTemplateElement","clipboardText","clipboard","originalEvent","clipboardData","getData","setData","documentElement","compareDocumentPosition","DOCUMENT_POSITION_CONTAINS","createTextElementHiddenCopy","elementStyles","getComputedStyle","includePaddings","fontStyle","fontVariant","fontWeight","fontSize","fontFamily","letterSpacing","border","paddingTop","paddingRight","paddingBottom","paddingLeft","visibility","whiteSpace","position","float","replaceWith","newElement","currentElement","insertBefore","COMPONENT_NAMES_DATA_KEY","componentNames","nextAnonymousComponent","getName","newName","generatedName","attachInstanceToElement","disposeFn","getInstanceByElement","subscribeReady","removeListener","readyCallbacks","windowExists","resizeCallbacks","prevSize","originalCallbacksAdd","originalCallbacksRemove","formatSize","innerWidth","innerHeight","handleResize","changedDimension","now","setPrevSize","getSessionStorage","currentTemplateEngine","templateEngines","registerTemplateEngine","templateEngine","getCurrentTemplateEngine","compile","jQuery","tmpl","jsrender","Mustache","Hogan","Handlebars","doT","clone","setTemplateEngine","Template","_element","transclude","_compiledTemplate","findTemplates","optionsString","optionsParser","suitableTemplatesByName","rawTemplates","templatesMap","_findBestMatches$","suitableTemplate","addOneRenderedCall","templateResult","getNormalizedTemplateArgs","validateTemplateSource","templateKey","defaultCreateElement","acquireTemplate","defaultTemplates","integrationTemplate","acquireIntegrationTemplate","$current","ready","changeCallback","$originalViewPort","isNewViewportFound","prevViewPort","originalViewPort","registerEvent","eventObject","noBubble","bindType","delegateType","methodName","unshift","COMPOSITION_START_EVENT","NAMESPACE","createKeyDownOptions","keyName","code","ctrl","ctrlKey","location","metaKey","shift","shiftKey","alt","altKey","which","KeyboardProcessor","_keydown","_compositionStart","_compositionEnd","focusTarget","_focusTarget","_handler","_processFunction","isNotFocusTarget","target","shouldSkipProcessing","_isComposingJustFinished","_isComposing","process","_toggleProcessingWithContext","toggleProcessing","trigger","Event","removeEvent","eventPropName","elements","setup","addNamespace","executeAction","active","inactive","opts","selector","showTimeout","hideTimeout","timeout","currentTarget","resize","hover","start","end","shown","hiding","_ref4","_ref5","focus","focusIn","focusOut","_ref6","_ref7","dxClick","click","keyboardProcessors","keyboard","listenerId","_getProcessor","eventNames","KEY_MAP","backspace","tab","enter","escape","pageup","pagedown","home","arrowleft","arrowup","arrowright","arrowdown","delete","f","a","control","LEGACY_KEY_CODES","EVENT_SOURCES_REGEX","dx","mouse","touch","pointer","isDxEvent","eventSource","isNativeTouchEvent","isPointerEvent","isMouseEvent","isNativeMouseEvent","pointerType","isDxMouseWheelEvent","isTouchEvent","eventData","pageX","pageY","timeStamp","x","y","time","eventDelta","from","to","hasTouches","pointers","touches","needSkipEvent","isContentEditable","touchInEditable","hasClass","createEvent","copyEvent","delegateTarget","normalizeKeyName","normalizedKey","normalizedKeyFromWhich","String","fromCharCode","getChar","isCommandKeyPressed","triggerVisibilityChangeEvent","changeHandlers","find","triggerShownEvent","triggerHidingEvent","triggerResizeEvent","focusableFn","tabIndex","visible","isTabIndexNotNaN","isNaN","isDisabled","isDefaultFocus","isHyperlink","href","focusable","tabbable","focused"],"sourceRoot":""}