devexpress-reporting-angular 23.2.2-beta → 23.2.4-build-23360-1657

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (31) hide show
  1. package/dx-report-viewer/components/analytics/properties/editor/editor.dropdown.base.d.ts +1 -2
  2. package/dx-report-viewer/components/analytics/properties/popover/popover.component.d.ts +13 -0
  3. package/dx-report-viewer/components/analytics/tabpanel/tabpanel.component.d.ts +1 -1
  4. package/dx-report-viewer/components/analytics/templates.component.d.ts +1 -1
  5. package/dx-report-viewer/components/reporting/parameterspanel/multi-value/multi-value.component.d.ts +0 -2
  6. package/dx-report-viewer/components/reporting/parameterspanel/multi-value/multi-value.editable.component.d.ts +1 -2
  7. package/dx-report-viewer/dx-report-viewer.module.d.ts +100 -99
  8. package/esm2020/core/dx-reporting.component.mjs +2 -2
  9. package/esm2020/dx-report-viewer/components/analytics/properties/collectioneditor/collectioneditor.component.mjs +3 -3
  10. package/esm2020/dx-report-viewer/components/analytics/properties/editor/editor.base.mjs +8 -7
  11. package/esm2020/dx-report-viewer/components/analytics/properties/editor/editor.dropdown.base.mjs +3 -6
  12. package/esm2020/dx-report-viewer/components/analytics/properties/popover/popover.component.mjs +24 -0
  13. package/esm2020/dx-report-viewer/components/analytics/tabpanel/tabpanel.component.mjs +1 -1
  14. package/esm2020/dx-report-viewer/components/analytics/templates.component.mjs +1 -1
  15. package/esm2020/dx-report-viewer/components/reporting/export-options/export-options.component.mjs +6 -5
  16. package/esm2020/dx-report-viewer/components/reporting/mobile/parameters/mobile.parameters.popup.component.mjs +6 -5
  17. package/esm2020/dx-report-viewer/components/reporting/parameterspanel/date-range/calendar/calendar.component.mjs +3 -3
  18. package/esm2020/dx-report-viewer/components/reporting/parameterspanel/editor/editor.component.mjs +3 -3
  19. package/esm2020/dx-report-viewer/components/reporting/parameterspanel/multi-value/multi-value.component.mjs +5 -8
  20. package/esm2020/dx-report-viewer/components/reporting/parameterspanel/multi-value/multi-value.editable.component.mjs +3 -6
  21. package/esm2020/dx-report-viewer/dx-report-viewer.module.mjs +4 -1
  22. package/esm2020/dx-report-viewer/utils/templateEngine.mjs +3 -3
  23. package/fesm2015/devexpress-reporting-angular-core.mjs +1 -1
  24. package/fesm2015/devexpress-reporting-angular-core.mjs.map +1 -1
  25. package/fesm2015/devexpress-reporting-angular-dx-report-viewer.mjs +48 -34
  26. package/fesm2015/devexpress-reporting-angular-dx-report-viewer.mjs.map +1 -1
  27. package/fesm2020/devexpress-reporting-angular-core.mjs +1 -1
  28. package/fesm2020/devexpress-reporting-angular-core.mjs.map +1 -1
  29. package/fesm2020/devexpress-reporting-angular-dx-report-viewer.mjs +48 -34
  30. package/fesm2020/devexpress-reporting-angular-dx-report-viewer.mjs.map +1 -1
  31. package/package.json +2 -2
@@ -65,7 +65,7 @@ class DxReportingComponent {
65
65
  this.control = null;
66
66
  }
67
67
  getEventRaiser() {
68
- var component = this;
68
+ const component = this;
69
69
  return (eventName, args) => component.callbacks && component.callbacks[eventName] && component.callbacks[eventName].emit({ sender: component.bindingSender, args: args, component: component });
70
70
  }
71
71
  }
@@ -1 +1 @@
1
- {"version":3,"file":"devexpress-reporting-angular-core.mjs","sources":["../../../core/_input-converters.ts","../../../core/dx-reporting.component.ts","../../../core/index.ts","../../../core/devexpress-reporting-angular-core.ts"],"sourcesContent":["export const _booleanConverter = (value: any) => {\n if(value === null || value === undefined || typeof value === 'boolean')\n return value;\n\n return value.toString() === 'true';\n};\n\nexport const _numberConverter = (value: any) => {\n if(value === null || value === undefined || typeof value === 'number')\n return value;\n\n return parseFloat(value.toString());\n};\n\nexport function _inputConverter(converter: (value: any) => any) {\n return (target: Object, key: string) => {\n const definition = Object.getOwnPropertyDescriptor(target, key);\n if(definition) {\n Object.defineProperty(target, key, {\n get: definition.get,\n set: newValue => {\n definition.set(converter(newValue));\n },\n enumerable: true,\n configurable: true\n });\n } else {\n Object.defineProperty(target, key, {\n get: function () {\n return this['__' + key];\n },\n set: function (newValue) {\n this['__' + key] = converter(newValue);\n },\n enumerable: true,\n configurable: true\n });\n }\n };\n}","import { AfterViewInit, Renderer2, ElementRef, ViewChild, Input, Inject, PLATFORM_ID, OnDestroy, Component, EventEmitter } from '@angular/core';\nimport { isPlatformBrowser } from '@angular/common';\nimport { _booleanConverter, _inputConverter } from './_input-converters';\nimport { IJSDesignerBindingCommonOptions } from '@devexpress/analytics-core/core/binding/_jsDesignerBindingCommonOptions';\nimport { JSDesignerBindingCommon } from '@devexpress/analytics-core/analytics-internal-native';\n@Component({\n template: ''\n})\nexport abstract class DxReportingComponent implements AfterViewInit, OnDestroy {\n protected _binding;\n bindingSender: any;\n callbacks: { [key: string]: EventEmitter<any> };\n @ViewChild('control')\n control: ElementRef;\n\n constructor(private renderer: Renderer2, @Inject(PLATFORM_ID) private platformId: Object) { }\n abstract getControlOptions(): IJSDesignerBindingCommonOptions;\n abstract getCallbacks(): { [key: string]: EventEmitter<any> };\n abstract getKoBinding(options: IJSDesignerBindingCommonOptions): JSDesignerBindingCommon<unknown, IJSDesignerBindingCommonOptions>;\n\n ngAfterViewInit(): void {\n if(isPlatformBrowser(this.platformId)) {\n this.callbacks = this.getCallbacks();\n const options = this.getControlOptions();\n this._binding = this.getKoBinding(options);\n this.bindingSender = this._binding.sender;\n this._binding.applyBindings(this.control.nativeElement);\n }\n }\n ngOnDestroy(): void {\n this._binding = null;\n this.bindingSender = null;\n this.callbacks = null;\n this.control = null;\n }\n\n getEventRaiser(): (eventName: string, args?: any) => void {\n var component = this;\n return (eventName, args?) => component.callbacks && component.callbacks[eventName] && component.callbacks[eventName].emit({ sender: component.bindingSender, args: args, component: component });\n }\n\n @Input() height: string = '800px';\n @Input() width: string = '100%';\n @Input() cssClass: string = '';\n\n @Input()\n @_inputConverter(_booleanConverter)\n developmentMode: boolean;\n}\n","/*\n * Public API Surface of reporting-angular/core\n */\nexport * from './dx-reporting.component';\nexport * from './_input-converters';\nexport * from './_settingsProvider';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"devexpress-reporting-angular-core.mjs","sources":["../../../core/_input-converters.ts","../../../core/dx-reporting.component.ts","../../../core/index.ts","../../../core/devexpress-reporting-angular-core.ts"],"sourcesContent":["export const _booleanConverter = (value: any) => {\n if(value === null || value === undefined || typeof value === 'boolean')\n return value;\n\n return value.toString() === 'true';\n};\n\nexport const _numberConverter = (value: any) => {\n if(value === null || value === undefined || typeof value === 'number')\n return value;\n\n return parseFloat(value.toString());\n};\n\nexport function _inputConverter(converter: (value: any) => any) {\n return (target: Object, key: string) => {\n const definition = Object.getOwnPropertyDescriptor(target, key);\n if(definition) {\n Object.defineProperty(target, key, {\n get: definition.get,\n set: newValue => {\n definition.set(converter(newValue));\n },\n enumerable: true,\n configurable: true\n });\n } else {\n Object.defineProperty(target, key, {\n get: function () {\n return this['__' + key];\n },\n set: function (newValue) {\n this['__' + key] = converter(newValue);\n },\n enumerable: true,\n configurable: true\n });\n }\n };\n}","import { AfterViewInit, Renderer2, ElementRef, ViewChild, Input, Inject, PLATFORM_ID, OnDestroy, Component, EventEmitter } from '@angular/core';\nimport { isPlatformBrowser } from '@angular/common';\nimport { _booleanConverter, _inputConverter } from './_input-converters';\nimport { IJSDesignerBindingCommonOptions } from '@devexpress/analytics-core/core/binding/_jsDesignerBindingCommonOptions';\nimport { JSDesignerBindingCommon } from '@devexpress/analytics-core/analytics-internal-native';\n@Component({\n template: ''\n})\nexport abstract class DxReportingComponent implements AfterViewInit, OnDestroy {\n protected _binding;\n bindingSender: any;\n callbacks: { [key: string]: EventEmitter<any> };\n @ViewChild('control')\n control: ElementRef;\n\n constructor(private renderer: Renderer2, @Inject(PLATFORM_ID) private platformId: Object) { }\n abstract getControlOptions(): IJSDesignerBindingCommonOptions;\n abstract getCallbacks(): { [key: string]: EventEmitter<any> };\n abstract getKoBinding(options: IJSDesignerBindingCommonOptions): JSDesignerBindingCommon<unknown, IJSDesignerBindingCommonOptions>;\n\n ngAfterViewInit(): void {\n if(isPlatformBrowser(this.platformId)) {\n this.callbacks = this.getCallbacks();\n const options = this.getControlOptions();\n this._binding = this.getKoBinding(options);\n this.bindingSender = this._binding.sender;\n this._binding.applyBindings(this.control.nativeElement);\n }\n }\n ngOnDestroy(): void {\n this._binding = null;\n this.bindingSender = null;\n this.callbacks = null;\n this.control = null;\n }\n\n getEventRaiser(): (eventName: string, args?: any) => void {\n const component = this;\n return (eventName, args?) => component.callbacks && component.callbacks[eventName] && component.callbacks[eventName].emit({ sender: component.bindingSender, args: args, component: component });\n }\n\n @Input() height: string = '800px';\n @Input() width: string = '100%';\n @Input() cssClass: string = '';\n\n @Input()\n @_inputConverter(_booleanConverter)\n developmentMode: boolean;\n}\n","/*\n * Public API Surface of reporting-angular/core\n */\nexport * from './dx-reporting.component';\nexport * from './_input-converters';\nexport * from './_settingsProvider';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -13,11 +13,11 @@ import { KeyboardEnum } from '@devexpress/analytics-core/property-grid/widgets/i
13
13
  import { initializeResize, initializeBaseResizableOptions } from '@devexpress/analytics-core/core/internal/_resizable';
14
14
  import { initializeMutationObserver } from '@devexpress/analytics-core/accessibility/_dxMutationObserver';
15
15
  import { extend } from '@devexpress/analytics-core/analytics-internal-native';
16
+ import * as i2 from 'devextreme-angular';
17
+ import { DxButtonModule, DxLoadIndicatorModule, DxScrollViewModule, DxSelectBoxModule, DxMenuModule, DxTagBoxModule, DxTextBoxModule, DxValidatorModule, DxDateBoxModule, DxCheckBoxModule, DxNumberBoxModule, DxColorBoxModule, DxPopupModule, DxPopoverModule, DxSliderModule, DxCalendarModule, DxListModule, DxGalleryModule } from 'devextreme-angular';
16
18
  import { InitAccordion } from '@devexpress/analytics-core/property-grid/bindings.accordion';
17
19
  import { globalResolver } from '@devexpress/analytics-core/property-grid/internal/_codeResolver';
18
20
  import { getParentContainer } from '@devexpress/analytics-core/widgets/_utils';
19
- import * as i2 from 'devextreme-angular';
20
- import { DxButtonModule, DxLoadIndicatorModule, DxScrollViewModule, DxSelectBoxModule, DxMenuModule, DxTagBoxModule, DxTextBoxModule, DxValidatorModule, DxDateBoxModule, DxCheckBoxModule, DxNumberBoxModule, DxColorBoxModule, DxPopupModule, DxPopoverModule, DxSliderModule, DxCalendarModule, DxListModule, DxGalleryModule } from 'devextreme-angular';
21
21
  import { CollectionEditorViewModel } from '@devexpress/analytics-core/property-grid/widgets/collectioneditor/_editor';
22
22
  import { noDataText, getLocalization } from '@devexpress/analytics-core/property-grid/localization/_localization';
23
23
  import * as i2$1 from 'devextreme-angular/core';
@@ -284,11 +284,11 @@ class TemplateEngine {
284
284
  this.templates.push({ ref, id });
285
285
  }
286
286
  hasTemplate(id) {
287
- let template = this.templates.find((template) => template.id === id);
287
+ const template = this.templates.find((template) => template.id === id);
288
288
  return !!template;
289
289
  }
290
290
  getTemplateRef(templateId) {
291
- let template = this.templates.find((template) => template.id === templateId);
291
+ const template = this.templates.find((template) => template.id === templateId);
292
292
  return template ? template.ref : null;
293
293
  }
294
294
  }
@@ -638,7 +638,7 @@ class EditorComponentBase {
638
638
  }
639
639
  onPropertyChanged() {
640
640
  const currentOptions = this.getOptions();
641
- for (let name in currentOptions) {
641
+ for (const name in currentOptions) {
642
642
  if (typeof currentOptions[name] !== 'function' && currentOptions[name] !== this.options[name]) {
643
643
  if (Array.isArray(currentOptions[name])) {
644
644
  if (JSON.stringify(this.options[name]) !== JSON.stringify(currentOptions[name]))
@@ -673,10 +673,10 @@ class EditorComponentBase {
673
673
  }
674
674
  }
675
675
  EditorComponentBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: EditorComponentBase, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
676
- EditorComponentBase.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: EditorComponentBase, selector: "dxa-editor", inputs: { data: "data" }, viewQueries: [{ propertyName: "widget", first: true, predicate: ["widget"], descendants: true }], ngImport: i0, template: "<div class=\"dx-editor\" [hidden]=\"!data.visible\">\r\n <div class=\"dx-group\" [dxaAccordion]=\"data\">\r\n <div class=\"dx-editor-header\">\r\n <div class=\"dx-field\" \r\n role=\"treeitem\"\r\n [attr.id]=\"data.isComplexEditor ? data.headerId : undefined\"\r\n [attr.aria-owns]=\"data.isComplexEditor ? data.contentId : undefined\"\r\n [attr.aria-expanded]=\"data.isComplexEditor && (data.alwaysShow || !data.collapsed ? 'true' : 'false')\"\r\n [class.dxrd-accessibility-accordion-trigger]=\"data.isComplexEditor\"\r\n [class.dx-accessibility-focus-border-accented]=\"data.isComplexEditor\">\r\n <div class=\"dx-field-label dx-accordion-header dxd-text-primary\" \r\n [style.padding-left]=\"data.padding['padding-left'] + 'px'\"\r\n [class.dx-accordion-empty]=\"data.templateName === 'dx-emptyHeader'\">\r\n <div *ngIf=\"data.isComplexEditor\" [attr.disabled]=\"data.templateName !== 'dx-emptyHeader'\">\r\n <dxa-template class=\"propertygrid-editor-collapsed dx-collapsing-image\" template=\"dxrd-svg-collapsed\" \r\n [class.dx-image-expanded]=\"!data.collapsed\"></dxa-template>\r\n <div *ngIf=\"!!data.textToSearch\" class=\"dx-group-header-font\" [attr.title]=\"data.displayName\" data-bind=\"searchHighlighting: { text: displayName, textToSearch: textToSearch }\"></div>\r\n <div *ngIf=\"!data.textToSearch\" class=\"dx-group-header-font\" [attr.title]=\"data.displayName\">\r\n {{data.displayName}}\r\n </div>\r\n </div>\r\n <label *ngIf=\"!data.isComplexEditor && !!data.textToSearch\" \r\n class=\"propertygrid-editor-displayName\"\r\n data-bind=\"searchHighlighting: { text: displayName, textToSearch: textToSearch }\"\r\n [attr.title]=\"data.displayName\"\r\n [attr.for]=\"data.editorInputId\"\r\n [class.dx-field-label-required]=\"data.isRequired\"\r\n [style.fontWeight]=\"data.isPropertyModified ? 'Bold' : ''\"\r\n ></label>\r\n <label *ngIf=\"!data.isComplexEditor && !data.textToSearch\" \r\n class=\"propertygrid-editor-displayName\"\r\n [attr.title]=\"data.displayName\"\r\n [attr.for]=\"data.editorInputId\"\r\n [class.dx-field-label-required]=\"data.isRequired\"\r\n [style.fontWeight]=\"data.isPropertyModified ? 'Bold' : ''\"\r\n >{{data.displayName}}</label> \r\n </div>\r\n <div class=\"dx-field-value\" \r\n [class.dxd-border-accented]=\"data.isPropertyHighlighted\">\r\n <div data-bind=\"service: { name: 'createEditorAddOn' }\"></div>\r\n <dxa-lazy-template *ngIf=\"data.templateName !== 'dx-emptyHeader'\" [isResolved]=\"isResolved\" [template]=\"data.templateName\" [data]=\"data\"></dxa-lazy-template>\r\n <!-- ko if: templateName !== 'dx-emptyHeader' -->\r\n <!-- ko lazy: { innerBindings: { template: templateName }, isResolved: function(val) { $data.setIsRendered(val) } } -->\r\n <!-- /ko -->\r\n <!-- /ko -->\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"data.isComplexEditor\" class=\"dx-editor-content dx-accordion-content\" role=\"group\" \r\n [attr.aria-labelledby]=\"data.headerId\"\r\n [attr.id]=\"data.contentId\"\r\n [attr.aria-hidden]=\"!data.alwaysShow && data.collapsed ? 'true' : 'false'\">\r\n <dxa-template *ngIf=\"data.editorCreated\" [template]=\"data.contentTemplateName\" [data]=\"data\"></dxa-template>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: TemplateComponent, selector: "dxa-template", inputs: ["data", "template"] }, { kind: "directive", type: AccordionDirective, selector: "[dxaAccordion]", inputs: ["dxaAccordion"] }, { kind: "component", type: LazyTemplateComponent, selector: "dxa-lazy-template", inputs: ["resolver", "isResolved"] }] });
676
+ EditorComponentBase.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: EditorComponentBase, selector: "dxa-editor", inputs: { data: "data" }, viewQueries: [{ propertyName: "widget", first: true, predicate: ["widget"], descendants: true }], ngImport: i0, template: "<div class=\"dx-editor\" [hidden]=\"!data.visible\">\r\n <div class=\"dx-group\" [dxaAccordion]=\"data\">\r\n <div class=\"dx-editor-header\">\r\n <div class=\"dx-field\" \r\n role=\"treeitem\"\r\n [attr.id]=\"data.isComplexEditor ? data.headerId : undefined\"\r\n [attr.aria-owns]=\"data.isComplexEditor ? data.contentId : undefined\"\r\n [attr.aria-expanded]=\"data.isComplexEditor && (data.alwaysShow || !data.collapsed ? 'true' : 'false')\"\r\n [class.dxrd-accessibility-accordion-trigger]=\"data.isComplexEditor\"\r\n [class.dx-accessibility-focus-border-accented]=\"data.isComplexEditor\">\r\n <div class=\"dx-field-label dx-accordion-header dxd-text-primary\" \r\n [style.padding-left]=\"data.padding['padding-left'] + 'px'\"\r\n [class.dx-accordion-empty]=\"data.templateName === 'dx-emptyHeader'\">\r\n <div *ngIf=\"data.isComplexEditor\" [attr.disabled]=\"data.templateName !== 'dx-emptyHeader'\">\r\n <dxa-template class=\"dx-collapsing-image dxrd-display-inline-block\" template=\"dxrd-svg-collapsed\" \r\n [class.dx-image-expanded]=\"!data.collapsed\"></dxa-template>\r\n <div *ngIf=\"!!data.textToSearch\" class=\"dx-group-header-font\" [attr.title]=\"data.displayName\" data-bind=\"searchHighlighting: { text: displayName, textToSearch: textToSearch }\"></div>\r\n <div *ngIf=\"!data.textToSearch\" class=\"dx-group-header-font\" [attr.title]=\"data.displayName\">\r\n {{data.displayName}}\r\n </div>\r\n </div>\r\n <label *ngIf=\"!data.isComplexEditor && !!data.textToSearch\" \r\n class=\"propertygrid-editor-displayName\"\r\n data-bind=\"searchHighlighting: { text: displayName, textToSearch: textToSearch }\"\r\n [attr.title]=\"data.displayName\"\r\n [attr.for]=\"data.editorInputId\"\r\n [class.dx-field-label-required]=\"data.isRequired\"\r\n [style.fontWeight]=\"data.isPropertyModified ? 'Bold' : ''\"\r\n ></label>\r\n <label *ngIf=\"!data.isComplexEditor && !data.textToSearch\" \r\n class=\"propertygrid-editor-displayName\"\r\n [attr.title]=\"data.displayName\"\r\n [attr.for]=\"data.editorInputId\"\r\n [class.dx-field-label-required]=\"data.isRequired\"\r\n [style.fontWeight]=\"data.isPropertyModified ? 'Bold' : ''\"\r\n >{{data.displayName}}</label>\r\n <dx-button *ngIf=\"!data.isComplexEditor && data.editorDescriptionAddon\"\r\n class=\"propertygrid-editor-description\"\r\n (onClick)=\"data.editorDescriptionAddon.data.onClick($event)\"\r\n >\r\n <dxa-template template=\"dxrd-svg-tabs-description_info\"></dxa-template>\r\n </dx-button>\r\n </div>\r\n <div class=\"dx-field-value\" \r\n [class.dxd-border-accented]=\"data.isPropertyHighlighted\">\r\n <!-- <div data-bind=\"service: { name: 'createEditorAddOn' }\"></div> -->\r\n <dxa-lazy-template *ngIf=\"data.templateName !== 'dx-emptyHeader'\" [isResolved]=\"isResolved\" [template]=\"data.templateName\" [data]=\"data\"></dxa-lazy-template>\r\n <!-- ko if: templateName !== 'dx-emptyHeader' -->\r\n <!-- ko lazy: { innerBindings: { template: templateName }, isResolved: function(val) { $data.setIsRendered(val) } } -->\r\n <!-- /ko -->\r\n <!-- /ko -->\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"data.isComplexEditor\" class=\"dx-editor-content dx-accordion-content\" role=\"group\" \r\n [attr.aria-labelledby]=\"data.headerId\"\r\n [attr.id]=\"data.contentId\"\r\n [attr.aria-hidden]=\"!data.alwaysShow && data.collapsed ? 'true' : 'false'\">\r\n <dxa-template *ngIf=\"data.editorCreated\" [template]=\"data.contentTemplateName\" [data]=\"data\"></dxa-template>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.DxButtonComponent, selector: "dx-button", inputs: ["accessKey", "activeStateEnabled", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "icon", "rtlEnabled", "stylingMode", "tabIndex", "template", "text", "type", "useSubmitBehavior", "validationGroup", "visible", "width"], outputs: ["onClick", "onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "accessKeyChange", "activeStateEnabledChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "iconChange", "rtlEnabledChange", "stylingModeChange", "tabIndexChange", "templateChange", "textChange", "typeChange", "useSubmitBehaviorChange", "validationGroupChange", "visibleChange", "widthChange"] }, { kind: "component", type: TemplateComponent, selector: "dxa-template", inputs: ["data", "template"] }, { kind: "directive", type: AccordionDirective, selector: "[dxaAccordion]", inputs: ["dxaAccordion"] }, { kind: "component", type: LazyTemplateComponent, selector: "dxa-lazy-template", inputs: ["resolver", "isResolved"] }] });
677
677
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: EditorComponentBase, decorators: [{
678
678
  type: Component,
679
- args: [{ selector: 'dxa-editor', template: "<div class=\"dx-editor\" [hidden]=\"!data.visible\">\r\n <div class=\"dx-group\" [dxaAccordion]=\"data\">\r\n <div class=\"dx-editor-header\">\r\n <div class=\"dx-field\" \r\n role=\"treeitem\"\r\n [attr.id]=\"data.isComplexEditor ? data.headerId : undefined\"\r\n [attr.aria-owns]=\"data.isComplexEditor ? data.contentId : undefined\"\r\n [attr.aria-expanded]=\"data.isComplexEditor && (data.alwaysShow || !data.collapsed ? 'true' : 'false')\"\r\n [class.dxrd-accessibility-accordion-trigger]=\"data.isComplexEditor\"\r\n [class.dx-accessibility-focus-border-accented]=\"data.isComplexEditor\">\r\n <div class=\"dx-field-label dx-accordion-header dxd-text-primary\" \r\n [style.padding-left]=\"data.padding['padding-left'] + 'px'\"\r\n [class.dx-accordion-empty]=\"data.templateName === 'dx-emptyHeader'\">\r\n <div *ngIf=\"data.isComplexEditor\" [attr.disabled]=\"data.templateName !== 'dx-emptyHeader'\">\r\n <dxa-template class=\"propertygrid-editor-collapsed dx-collapsing-image\" template=\"dxrd-svg-collapsed\" \r\n [class.dx-image-expanded]=\"!data.collapsed\"></dxa-template>\r\n <div *ngIf=\"!!data.textToSearch\" class=\"dx-group-header-font\" [attr.title]=\"data.displayName\" data-bind=\"searchHighlighting: { text: displayName, textToSearch: textToSearch }\"></div>\r\n <div *ngIf=\"!data.textToSearch\" class=\"dx-group-header-font\" [attr.title]=\"data.displayName\">\r\n {{data.displayName}}\r\n </div>\r\n </div>\r\n <label *ngIf=\"!data.isComplexEditor && !!data.textToSearch\" \r\n class=\"propertygrid-editor-displayName\"\r\n data-bind=\"searchHighlighting: { text: displayName, textToSearch: textToSearch }\"\r\n [attr.title]=\"data.displayName\"\r\n [attr.for]=\"data.editorInputId\"\r\n [class.dx-field-label-required]=\"data.isRequired\"\r\n [style.fontWeight]=\"data.isPropertyModified ? 'Bold' : ''\"\r\n ></label>\r\n <label *ngIf=\"!data.isComplexEditor && !data.textToSearch\" \r\n class=\"propertygrid-editor-displayName\"\r\n [attr.title]=\"data.displayName\"\r\n [attr.for]=\"data.editorInputId\"\r\n [class.dx-field-label-required]=\"data.isRequired\"\r\n [style.fontWeight]=\"data.isPropertyModified ? 'Bold' : ''\"\r\n >{{data.displayName}}</label> \r\n </div>\r\n <div class=\"dx-field-value\" \r\n [class.dxd-border-accented]=\"data.isPropertyHighlighted\">\r\n <div data-bind=\"service: { name: 'createEditorAddOn' }\"></div>\r\n <dxa-lazy-template *ngIf=\"data.templateName !== 'dx-emptyHeader'\" [isResolved]=\"isResolved\" [template]=\"data.templateName\" [data]=\"data\"></dxa-lazy-template>\r\n <!-- ko if: templateName !== 'dx-emptyHeader' -->\r\n <!-- ko lazy: { innerBindings: { template: templateName }, isResolved: function(val) { $data.setIsRendered(val) } } -->\r\n <!-- /ko -->\r\n <!-- /ko -->\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"data.isComplexEditor\" class=\"dx-editor-content dx-accordion-content\" role=\"group\" \r\n [attr.aria-labelledby]=\"data.headerId\"\r\n [attr.id]=\"data.contentId\"\r\n [attr.aria-hidden]=\"!data.alwaysShow && data.collapsed ? 'true' : 'false'\">\r\n <dxa-template *ngIf=\"data.editorCreated\" [template]=\"data.contentTemplateName\" [data]=\"data\"></dxa-template>\r\n </div>\r\n </div>\r\n</div>" }]
679
+ args: [{ selector: 'dxa-editor', template: "<div class=\"dx-editor\" [hidden]=\"!data.visible\">\r\n <div class=\"dx-group\" [dxaAccordion]=\"data\">\r\n <div class=\"dx-editor-header\">\r\n <div class=\"dx-field\" \r\n role=\"treeitem\"\r\n [attr.id]=\"data.isComplexEditor ? data.headerId : undefined\"\r\n [attr.aria-owns]=\"data.isComplexEditor ? data.contentId : undefined\"\r\n [attr.aria-expanded]=\"data.isComplexEditor && (data.alwaysShow || !data.collapsed ? 'true' : 'false')\"\r\n [class.dxrd-accessibility-accordion-trigger]=\"data.isComplexEditor\"\r\n [class.dx-accessibility-focus-border-accented]=\"data.isComplexEditor\">\r\n <div class=\"dx-field-label dx-accordion-header dxd-text-primary\" \r\n [style.padding-left]=\"data.padding['padding-left'] + 'px'\"\r\n [class.dx-accordion-empty]=\"data.templateName === 'dx-emptyHeader'\">\r\n <div *ngIf=\"data.isComplexEditor\" [attr.disabled]=\"data.templateName !== 'dx-emptyHeader'\">\r\n <dxa-template class=\"dx-collapsing-image dxrd-display-inline-block\" template=\"dxrd-svg-collapsed\" \r\n [class.dx-image-expanded]=\"!data.collapsed\"></dxa-template>\r\n <div *ngIf=\"!!data.textToSearch\" class=\"dx-group-header-font\" [attr.title]=\"data.displayName\" data-bind=\"searchHighlighting: { text: displayName, textToSearch: textToSearch }\"></div>\r\n <div *ngIf=\"!data.textToSearch\" class=\"dx-group-header-font\" [attr.title]=\"data.displayName\">\r\n {{data.displayName}}\r\n </div>\r\n </div>\r\n <label *ngIf=\"!data.isComplexEditor && !!data.textToSearch\" \r\n class=\"propertygrid-editor-displayName\"\r\n data-bind=\"searchHighlighting: { text: displayName, textToSearch: textToSearch }\"\r\n [attr.title]=\"data.displayName\"\r\n [attr.for]=\"data.editorInputId\"\r\n [class.dx-field-label-required]=\"data.isRequired\"\r\n [style.fontWeight]=\"data.isPropertyModified ? 'Bold' : ''\"\r\n ></label>\r\n <label *ngIf=\"!data.isComplexEditor && !data.textToSearch\" \r\n class=\"propertygrid-editor-displayName\"\r\n [attr.title]=\"data.displayName\"\r\n [attr.for]=\"data.editorInputId\"\r\n [class.dx-field-label-required]=\"data.isRequired\"\r\n [style.fontWeight]=\"data.isPropertyModified ? 'Bold' : ''\"\r\n >{{data.displayName}}</label>\r\n <dx-button *ngIf=\"!data.isComplexEditor && data.editorDescriptionAddon\"\r\n class=\"propertygrid-editor-description\"\r\n (onClick)=\"data.editorDescriptionAddon.data.onClick($event)\"\r\n >\r\n <dxa-template template=\"dxrd-svg-tabs-description_info\"></dxa-template>\r\n </dx-button>\r\n </div>\r\n <div class=\"dx-field-value\" \r\n [class.dxd-border-accented]=\"data.isPropertyHighlighted\">\r\n <!-- <div data-bind=\"service: { name: 'createEditorAddOn' }\"></div> -->\r\n <dxa-lazy-template *ngIf=\"data.templateName !== 'dx-emptyHeader'\" [isResolved]=\"isResolved\" [template]=\"data.templateName\" [data]=\"data\"></dxa-lazy-template>\r\n <!-- ko if: templateName !== 'dx-emptyHeader' -->\r\n <!-- ko lazy: { innerBindings: { template: templateName }, isResolved: function(val) { $data.setIsRendered(val) } } -->\r\n <!-- /ko -->\r\n <!-- /ko -->\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"data.isComplexEditor\" class=\"dx-editor-content dx-accordion-content\" role=\"group\" \r\n [attr.aria-labelledby]=\"data.headerId\"\r\n [attr.id]=\"data.contentId\"\r\n [attr.aria-hidden]=\"!data.alwaysShow && data.collapsed ? 'true' : 'false'\">\r\n <dxa-template *ngIf=\"data.editorCreated\" [template]=\"data.contentTemplateName\" [data]=\"data\"></dxa-template>\r\n </div>\r\n </div>\r\n</div>" }]
680
680
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { data: [{
681
681
  type: Input,
682
682
  args: ['data']
@@ -686,9 +686,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
686
686
  }] } });
687
687
 
688
688
  class EditorDropDownComponentBase extends EditorComponentBase {
689
- constructor(_cd) {
690
- super(_cd);
691
- }
692
689
  beforeDetectChanges() {
693
690
  }
694
691
  ngAfterViewInit() {
@@ -699,14 +696,14 @@ class EditorDropDownComponentBase extends EditorComponentBase {
699
696
  this._cd.detectChanges();
700
697
  }
701
698
  }
702
- EditorDropDownComponentBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: EditorDropDownComponentBase, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
699
+ EditorDropDownComponentBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: EditorDropDownComponentBase, deps: null, target: i0.ɵɵFactoryTarget.Component });
703
700
  EditorDropDownComponentBase.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: EditorDropDownComponentBase, selector: "ng-component", viewQueries: [{ propertyName: "target", first: true, predicate: ["target"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: '', isInline: true });
704
701
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: EditorDropDownComponentBase, decorators: [{
705
702
  type: Component,
706
703
  args: [{
707
704
  template: ''
708
705
  }]
709
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { target: [{
706
+ }], propDecorators: { target: [{
710
707
  type: ViewChild,
711
708
  args: ['target', { read: ElementRef }]
712
709
  }] } });
@@ -755,10 +752,10 @@ class CollectionEditorComponent {
755
752
  }
756
753
  }
757
754
  CollectionEditorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CollectionEditorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
758
- CollectionEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CollectionEditorComponent, selector: "dxa-collectioneditor", inputs: { options: ["data", "options"], contentTemplate: "contentTemplate" }, ngImport: i0, template: "<div class=\"dx-collectioneditor\">\n <div [dxaAccordion]=\"data\" [dxMutationObserver]=\"data.keyboardHelper\">\n <div class=\"dx-collectioneditor-header dx-accordion-header\">\n <div class=\"dx-editor-header\">\n <div role=\"treeitem\"\n class=\"dx-field dx-accessibility-focus-border-accented dxrd-accessibility-accordion-trigger\"\n [attr.aria-expanded]=\"data.alwaysShow || !data.collapsed ? 'true' : 'false'\"\n [attr.aria-owns]=\"data.contentId\" [attr.id]=\"data.headerId\">\n <div *ngIf=\"data.showButtons\" class=\"dx-collectioneditor-actions-wrapper\">\n <dx-button *ngIf=\"data.buttons.up.visible\"\n class=\"dx-collectioneditor-action dx-accessibility-focus-border-accented\"\n (onClick)=\"data.buttons.up.action($event)\" [disabled]=\"data.buttons.up.disabled\"\n icon=\"dxrd-svg-operations-moveup\" iconClass=\"dx-image-moveup\"\n [template]=\"data.buttons.up.template\"\n [attr.title]=\"data.buttons.up.text\"></dx-button>\n <dx-button *ngIf=\"data.buttons.down.visible\"\n class=\"dx-collectioneditor-action dx-accessibility-focus-border-accented\"\n (onClick)=\"data.buttons.down.action($event)\" [disabled]=\"data.buttons.down.disabled\"\n icon=\"dxrd-svg-operations-movedown\" iconClass=\"dx-image-movedown\"\n [template]=\"data.buttons.down.template\"\n [attr.title]=\"data.buttons.down.text\"></dx-button>\n <div class=\"dx-collectioneditor-action-separator\"></div>\n <dx-button *ngIf=\"data.buttons.add.visible\"\n class=\"dx-collectioneditor-action dx-accessibility-focus-border-accented\"\n (onClick)=\"data.buttons.add.action($event)\" [disabled]=\"data.buttons.add.disabled\"\n [template]=\"data.buttons.add.template\"\n icon=\"dxrd-svg-operations-add\" iconClass=\"dx-image-add\"\n [attr.title]=\"data.buttons.add.text\"></dx-button>\n <dx-button *ngIf=\"data.buttons.delete.visible\"\n class=\"dx-collectioneditor-action dx-accessibility-focus-border-accented\"\n (onClick)=\"data.buttons.delete.action($event)\" [disabled]=\"data.buttons.delete.disabled\"\n [template]=\"data.buttons.delete.template\"\n icon=\"dxrd-svg-operations-remove\" iconClass=\"dx-image-remove\"\n [attr.title]=\"data.buttons.delete.text\"></dx-button>\n </div>\n <div *ngIf=\"!!data.displayName\" class=\"dx-collectioneditor-header-text dxd-text-primary\"\n [style.padding-left]=\"data.padding + 'px'\">\n <dxa-template class=\"propertygrid-editor-collapsed dx-collapsing-image\"\n template=\"dxrd-svg-collapsed\"\n [class.dx-image-expanded]=\"!data.collapsed \"></dxa-template>\n <div class=\"dx-group-header-font dxd-text-primary\" [attr.title]=\"data.displayName\">\n {{data.displayName}}</div>\n </div>\n </div>\n </div>\n </div>\n <div role=\"group\" class=\"dx-accordion-content\"\n [attr.aria-hidden]=\"!data.alwaysShow && data.collapsed ? 'true' : 'false'\"\n [attr.aria-labelledby]=\"data.headerId\" [attr.id]=\"data.contentId\">\n <dx-scroll-view [hidden]=\"data.disabled\" showScrollbar=\"onHover\" [disabled]=\"!data.showScroll\"\n [useNative]=\"false\" [scrollByThumb]=\"true\" (onInitialized)=\"onScrollViewInitialized($event)\">\n <div *ngIf=\"data.values.length === 0\"\n class=\"dx-collectioneditor-empty dxd-empty-area-placeholder-text-color dxd-text-info\">\n <span class=\"dx-collectioneditor-empty-text\">{{data.emptyAreaText}}</span>\n </div>\n <div *ngIf=\"data.values.length !== 0\" class=\"dx-collectioneditor-items\">\n <div *ngFor=\"let value of data.values\"\n class=\"dx-collectioneditor-item-container dxd-button-back-color dxd-state-normal dxd-back-highlighted dx-accessibility-list-item dx-accessibility-focus-border-accented\"\n [attr.aria-selected]=\"value.selected\" [dxActionModel]=\"value\" [dxAction]=\"value.select\"\n [class.dxd-state-selected]=\"value.selected\">\n <div class=\"dx-collection-item\">\n <ng-container *ngTemplateOutlet=\"contentTemplate, context: { data: value }\"></ng-container>\n </div>\n </div>\n </div>\n </dx-scroll-view>\n </div>\n </div>\n</div>", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.DxButtonComponent, selector: "dx-button", inputs: ["accessKey", "activeStateEnabled", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "icon", "rtlEnabled", "stylingMode", "tabIndex", "template", "text", "type", "useSubmitBehavior", "validationGroup", "visible", "width"], outputs: ["onClick", "onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "accessKeyChange", "activeStateEnabledChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "iconChange", "rtlEnabledChange", "stylingModeChange", "tabIndexChange", "templateChange", "textChange", "typeChange", "useSubmitBehaviorChange", "validationGroupChange", "visibleChange", "widthChange"] }, { kind: "component", type: i2.DxScrollViewComponent, selector: "dx-scroll-view", inputs: ["bounceEnabled", "direction", "disabled", "elementAttr", "height", "pulledDownText", "pullingDownText", "reachBottomText", "refreshingText", "rtlEnabled", "scrollByContent", "scrollByThumb", "showScrollbar", "useNative", "width"], outputs: ["onDisposing", "onInitialized", "onOptionChanged", "onPullDown", "onReachBottom", "onScroll", "onUpdated", "bounceEnabledChange", "directionChange", "disabledChange", "elementAttrChange", "heightChange", "pulledDownTextChange", "pullingDownTextChange", "reachBottomTextChange", "refreshingTextChange", "rtlEnabledChange", "scrollByContentChange", "scrollByThumbChange", "showScrollbarChange", "useNativeChange", "widthChange"] }, { kind: "component", type: TemplateComponent, selector: "dxa-template", inputs: ["data", "template"] }, { kind: "directive", type: DxActionDirective, selector: "[dxAction]", inputs: ["dxActionModel", "dxAction"] }, { kind: "directive", type: AccordionDirective, selector: "[dxaAccordion]", inputs: ["dxaAccordion"] }, { kind: "directive", type: DxMutationObserverDirective, selector: "[dxMutationObserver]", inputs: ["dxMutationObserver"] }] });
755
+ CollectionEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CollectionEditorComponent, selector: "dxa-collectioneditor", inputs: { options: ["data", "options"], contentTemplate: "contentTemplate" }, ngImport: i0, template: "<div class=\"dx-collectioneditor\">\n <div [dxaAccordion]=\"data\" [dxMutationObserver]=\"data.keyboardHelper\">\n <div class=\"dx-collectioneditor-header dx-accordion-header\">\n <div class=\"dx-editor-header\">\n <div role=\"treeitem\"\n class=\"dx-field dx-accessibility-focus-border-accented dxrd-accessibility-accordion-trigger\"\n [attr.aria-expanded]=\"data.alwaysShow || !data.collapsed ? 'true' : 'false'\"\n [attr.aria-owns]=\"data.contentId\" [attr.id]=\"data.headerId\">\n <div *ngIf=\"data.showButtons\" class=\"dx-collectioneditor-actions-wrapper\">\n <dx-button *ngIf=\"data.buttons.up.visible\"\n class=\"dx-collectioneditor-action dx-accessibility-focus-border-accented\"\n (onClick)=\"data.buttons.up.action($event)\" [disabled]=\"data.buttons.up.disabled\"\n icon=\"dxrd-svg-operations-moveup\" iconClass=\"dx-image-moveup\"\n [template]=\"data.buttons.up.template\"\n [attr.title]=\"data.buttons.up.text\"></dx-button>\n <dx-button *ngIf=\"data.buttons.down.visible\"\n class=\"dx-collectioneditor-action dx-accessibility-focus-border-accented\"\n (onClick)=\"data.buttons.down.action($event)\" [disabled]=\"data.buttons.down.disabled\"\n icon=\"dxrd-svg-operations-movedown\" iconClass=\"dx-image-movedown\"\n [template]=\"data.buttons.down.template\"\n [attr.title]=\"data.buttons.down.text\"></dx-button>\n <div class=\"dx-collectioneditor-action-separator\"></div>\n <dx-button *ngIf=\"data.buttons.add.visible\"\n class=\"dx-collectioneditor-action dx-accessibility-focus-border-accented\"\n (onClick)=\"data.buttons.add.action($event)\" [disabled]=\"data.buttons.add.disabled\"\n [template]=\"data.buttons.add.template\"\n icon=\"dxrd-svg-operations-add\" iconClass=\"dx-image-add\"\n [attr.title]=\"data.buttons.add.text\"></dx-button>\n <dx-button *ngIf=\"data.buttons.delete.visible\"\n class=\"dx-collectioneditor-action dx-accessibility-focus-border-accented\"\n (onClick)=\"data.buttons.delete.action($event)\" [disabled]=\"data.buttons.delete.disabled\"\n [template]=\"data.buttons.delete.template\"\n icon=\"dxrd-svg-operations-remove\" iconClass=\"dx-image-remove\"\n [attr.title]=\"data.buttons.delete.text\"></dx-button>\n </div>\n <div *ngIf=\"!!data.displayName\" class=\"dx-collectioneditor-header-text dxd-text-primary\"\n [style.padding-left]=\"data.padding + 'px'\">\n <dxa-template class=\"dx-collapsing-image dxrd-display-inline-block\"\n template=\"dxrd-svg-collapsed\"\n [class.dx-image-expanded]=\"!data.collapsed \"></dxa-template>\n <div class=\"dx-group-header-font dxd-text-primary dxrd-display-inline-block\" [attr.title]=\"data.displayName\">\n {{data.displayName}}</div>\n </div>\n </div>\n </div>\n </div>\n <div role=\"group\" class=\"dx-accordion-content\"\n [attr.aria-hidden]=\"!data.alwaysShow && data.collapsed ? 'true' : 'false'\"\n [attr.aria-labelledby]=\"data.headerId\" [attr.id]=\"data.contentId\">\n <dx-scroll-view [hidden]=\"data.disabled\" showScrollbar=\"onHover\" [disabled]=\"!data.showScroll\"\n [useNative]=\"false\" [scrollByThumb]=\"true\" (onInitialized)=\"onScrollViewInitialized($event)\">\n <div *ngIf=\"data.values.length === 0\"\n class=\"dx-collectioneditor-empty dxd-empty-area-placeholder-text-color dxd-text-info\">\n <span class=\"dx-collectioneditor-empty-text\">{{data.emptyAreaText}}</span>\n </div>\n <div *ngIf=\"data.values.length !== 0\" class=\"dx-collectioneditor-items\">\n <div *ngFor=\"let value of data.values\"\n class=\"dx-collectioneditor-item-container dxd-button-back-color dxd-state-normal dxd-back-highlighted dx-accessibility-list-item dx-accessibility-focus-border-accented\"\n [attr.aria-selected]=\"value.selected\" [dxActionModel]=\"value\" [dxAction]=\"value.select\"\n [class.dxd-state-selected]=\"value.selected\">\n <div class=\"dx-collection-item\">\n <ng-container *ngTemplateOutlet=\"contentTemplate, context: { data: value }\"></ng-container>\n </div>\n </div>\n </div>\n </dx-scroll-view>\n </div>\n </div>\n</div>", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.DxButtonComponent, selector: "dx-button", inputs: ["accessKey", "activeStateEnabled", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "icon", "rtlEnabled", "stylingMode", "tabIndex", "template", "text", "type", "useSubmitBehavior", "validationGroup", "visible", "width"], outputs: ["onClick", "onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "accessKeyChange", "activeStateEnabledChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "iconChange", "rtlEnabledChange", "stylingModeChange", "tabIndexChange", "templateChange", "textChange", "typeChange", "useSubmitBehaviorChange", "validationGroupChange", "visibleChange", "widthChange"] }, { kind: "component", type: i2.DxScrollViewComponent, selector: "dx-scroll-view", inputs: ["bounceEnabled", "direction", "disabled", "elementAttr", "height", "pulledDownText", "pullingDownText", "reachBottomText", "refreshingText", "rtlEnabled", "scrollByContent", "scrollByThumb", "showScrollbar", "useNative", "width"], outputs: ["onDisposing", "onInitialized", "onOptionChanged", "onPullDown", "onReachBottom", "onScroll", "onUpdated", "bounceEnabledChange", "directionChange", "disabledChange", "elementAttrChange", "heightChange", "pulledDownTextChange", "pullingDownTextChange", "reachBottomTextChange", "refreshingTextChange", "rtlEnabledChange", "scrollByContentChange", "scrollByThumbChange", "showScrollbarChange", "useNativeChange", "widthChange"] }, { kind: "component", type: TemplateComponent, selector: "dxa-template", inputs: ["data", "template"] }, { kind: "directive", type: DxActionDirective, selector: "[dxAction]", inputs: ["dxActionModel", "dxAction"] }, { kind: "directive", type: AccordionDirective, selector: "[dxaAccordion]", inputs: ["dxaAccordion"] }, { kind: "directive", type: DxMutationObserverDirective, selector: "[dxMutationObserver]", inputs: ["dxMutationObserver"] }] });
759
756
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CollectionEditorComponent, decorators: [{
760
757
  type: Component,
761
- args: [{ selector: 'dxa-collectioneditor', template: "<div class=\"dx-collectioneditor\">\n <div [dxaAccordion]=\"data\" [dxMutationObserver]=\"data.keyboardHelper\">\n <div class=\"dx-collectioneditor-header dx-accordion-header\">\n <div class=\"dx-editor-header\">\n <div role=\"treeitem\"\n class=\"dx-field dx-accessibility-focus-border-accented dxrd-accessibility-accordion-trigger\"\n [attr.aria-expanded]=\"data.alwaysShow || !data.collapsed ? 'true' : 'false'\"\n [attr.aria-owns]=\"data.contentId\" [attr.id]=\"data.headerId\">\n <div *ngIf=\"data.showButtons\" class=\"dx-collectioneditor-actions-wrapper\">\n <dx-button *ngIf=\"data.buttons.up.visible\"\n class=\"dx-collectioneditor-action dx-accessibility-focus-border-accented\"\n (onClick)=\"data.buttons.up.action($event)\" [disabled]=\"data.buttons.up.disabled\"\n icon=\"dxrd-svg-operations-moveup\" iconClass=\"dx-image-moveup\"\n [template]=\"data.buttons.up.template\"\n [attr.title]=\"data.buttons.up.text\"></dx-button>\n <dx-button *ngIf=\"data.buttons.down.visible\"\n class=\"dx-collectioneditor-action dx-accessibility-focus-border-accented\"\n (onClick)=\"data.buttons.down.action($event)\" [disabled]=\"data.buttons.down.disabled\"\n icon=\"dxrd-svg-operations-movedown\" iconClass=\"dx-image-movedown\"\n [template]=\"data.buttons.down.template\"\n [attr.title]=\"data.buttons.down.text\"></dx-button>\n <div class=\"dx-collectioneditor-action-separator\"></div>\n <dx-button *ngIf=\"data.buttons.add.visible\"\n class=\"dx-collectioneditor-action dx-accessibility-focus-border-accented\"\n (onClick)=\"data.buttons.add.action($event)\" [disabled]=\"data.buttons.add.disabled\"\n [template]=\"data.buttons.add.template\"\n icon=\"dxrd-svg-operations-add\" iconClass=\"dx-image-add\"\n [attr.title]=\"data.buttons.add.text\"></dx-button>\n <dx-button *ngIf=\"data.buttons.delete.visible\"\n class=\"dx-collectioneditor-action dx-accessibility-focus-border-accented\"\n (onClick)=\"data.buttons.delete.action($event)\" [disabled]=\"data.buttons.delete.disabled\"\n [template]=\"data.buttons.delete.template\"\n icon=\"dxrd-svg-operations-remove\" iconClass=\"dx-image-remove\"\n [attr.title]=\"data.buttons.delete.text\"></dx-button>\n </div>\n <div *ngIf=\"!!data.displayName\" class=\"dx-collectioneditor-header-text dxd-text-primary\"\n [style.padding-left]=\"data.padding + 'px'\">\n <dxa-template class=\"propertygrid-editor-collapsed dx-collapsing-image\"\n template=\"dxrd-svg-collapsed\"\n [class.dx-image-expanded]=\"!data.collapsed \"></dxa-template>\n <div class=\"dx-group-header-font dxd-text-primary\" [attr.title]=\"data.displayName\">\n {{data.displayName}}</div>\n </div>\n </div>\n </div>\n </div>\n <div role=\"group\" class=\"dx-accordion-content\"\n [attr.aria-hidden]=\"!data.alwaysShow && data.collapsed ? 'true' : 'false'\"\n [attr.aria-labelledby]=\"data.headerId\" [attr.id]=\"data.contentId\">\n <dx-scroll-view [hidden]=\"data.disabled\" showScrollbar=\"onHover\" [disabled]=\"!data.showScroll\"\n [useNative]=\"false\" [scrollByThumb]=\"true\" (onInitialized)=\"onScrollViewInitialized($event)\">\n <div *ngIf=\"data.values.length === 0\"\n class=\"dx-collectioneditor-empty dxd-empty-area-placeholder-text-color dxd-text-info\">\n <span class=\"dx-collectioneditor-empty-text\">{{data.emptyAreaText}}</span>\n </div>\n <div *ngIf=\"data.values.length !== 0\" class=\"dx-collectioneditor-items\">\n <div *ngFor=\"let value of data.values\"\n class=\"dx-collectioneditor-item-container dxd-button-back-color dxd-state-normal dxd-back-highlighted dx-accessibility-list-item dx-accessibility-focus-border-accented\"\n [attr.aria-selected]=\"value.selected\" [dxActionModel]=\"value\" [dxAction]=\"value.select\"\n [class.dxd-state-selected]=\"value.selected\">\n <div class=\"dx-collection-item\">\n <ng-container *ngTemplateOutlet=\"contentTemplate, context: { data: value }\"></ng-container>\n </div>\n </div>\n </div>\n </dx-scroll-view>\n </div>\n </div>\n</div>" }]
758
+ args: [{ selector: 'dxa-collectioneditor', template: "<div class=\"dx-collectioneditor\">\n <div [dxaAccordion]=\"data\" [dxMutationObserver]=\"data.keyboardHelper\">\n <div class=\"dx-collectioneditor-header dx-accordion-header\">\n <div class=\"dx-editor-header\">\n <div role=\"treeitem\"\n class=\"dx-field dx-accessibility-focus-border-accented dxrd-accessibility-accordion-trigger\"\n [attr.aria-expanded]=\"data.alwaysShow || !data.collapsed ? 'true' : 'false'\"\n [attr.aria-owns]=\"data.contentId\" [attr.id]=\"data.headerId\">\n <div *ngIf=\"data.showButtons\" class=\"dx-collectioneditor-actions-wrapper\">\n <dx-button *ngIf=\"data.buttons.up.visible\"\n class=\"dx-collectioneditor-action dx-accessibility-focus-border-accented\"\n (onClick)=\"data.buttons.up.action($event)\" [disabled]=\"data.buttons.up.disabled\"\n icon=\"dxrd-svg-operations-moveup\" iconClass=\"dx-image-moveup\"\n [template]=\"data.buttons.up.template\"\n [attr.title]=\"data.buttons.up.text\"></dx-button>\n <dx-button *ngIf=\"data.buttons.down.visible\"\n class=\"dx-collectioneditor-action dx-accessibility-focus-border-accented\"\n (onClick)=\"data.buttons.down.action($event)\" [disabled]=\"data.buttons.down.disabled\"\n icon=\"dxrd-svg-operations-movedown\" iconClass=\"dx-image-movedown\"\n [template]=\"data.buttons.down.template\"\n [attr.title]=\"data.buttons.down.text\"></dx-button>\n <div class=\"dx-collectioneditor-action-separator\"></div>\n <dx-button *ngIf=\"data.buttons.add.visible\"\n class=\"dx-collectioneditor-action dx-accessibility-focus-border-accented\"\n (onClick)=\"data.buttons.add.action($event)\" [disabled]=\"data.buttons.add.disabled\"\n [template]=\"data.buttons.add.template\"\n icon=\"dxrd-svg-operations-add\" iconClass=\"dx-image-add\"\n [attr.title]=\"data.buttons.add.text\"></dx-button>\n <dx-button *ngIf=\"data.buttons.delete.visible\"\n class=\"dx-collectioneditor-action dx-accessibility-focus-border-accented\"\n (onClick)=\"data.buttons.delete.action($event)\" [disabled]=\"data.buttons.delete.disabled\"\n [template]=\"data.buttons.delete.template\"\n icon=\"dxrd-svg-operations-remove\" iconClass=\"dx-image-remove\"\n [attr.title]=\"data.buttons.delete.text\"></dx-button>\n </div>\n <div *ngIf=\"!!data.displayName\" class=\"dx-collectioneditor-header-text dxd-text-primary\"\n [style.padding-left]=\"data.padding + 'px'\">\n <dxa-template class=\"dx-collapsing-image dxrd-display-inline-block\"\n template=\"dxrd-svg-collapsed\"\n [class.dx-image-expanded]=\"!data.collapsed \"></dxa-template>\n <div class=\"dx-group-header-font dxd-text-primary dxrd-display-inline-block\" [attr.title]=\"data.displayName\">\n {{data.displayName}}</div>\n </div>\n </div>\n </div>\n </div>\n <div role=\"group\" class=\"dx-accordion-content\"\n [attr.aria-hidden]=\"!data.alwaysShow && data.collapsed ? 'true' : 'false'\"\n [attr.aria-labelledby]=\"data.headerId\" [attr.id]=\"data.contentId\">\n <dx-scroll-view [hidden]=\"data.disabled\" showScrollbar=\"onHover\" [disabled]=\"!data.showScroll\"\n [useNative]=\"false\" [scrollByThumb]=\"true\" (onInitialized)=\"onScrollViewInitialized($event)\">\n <div *ngIf=\"data.values.length === 0\"\n class=\"dx-collectioneditor-empty dxd-empty-area-placeholder-text-color dxd-text-info\">\n <span class=\"dx-collectioneditor-empty-text\">{{data.emptyAreaText}}</span>\n </div>\n <div *ngIf=\"data.values.length !== 0\" class=\"dx-collectioneditor-items\">\n <div *ngFor=\"let value of data.values\"\n class=\"dx-collectioneditor-item-container dxd-button-back-color dxd-state-normal dxd-back-highlighted dx-accessibility-list-item dx-accessibility-focus-border-accented\"\n [attr.aria-selected]=\"value.selected\" [dxActionModel]=\"value\" [dxAction]=\"value.select\"\n [class.dxd-state-selected]=\"value.selected\">\n <div class=\"dx-collection-item\">\n <ng-container *ngTemplateOutlet=\"contentTemplate, context: { data: value }\"></ng-container>\n </div>\n </div>\n </div>\n </dx-scroll-view>\n </div>\n </div>\n</div>" }]
762
759
  }], ctorParameters: function () { return []; }, propDecorators: { options: [{
763
760
  type: Input,
764
761
  args: ['data']
@@ -1203,16 +1200,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
1203
1200
  class EditorComponent extends EditorComponentBase {
1204
1201
  }
1205
1202
  EditorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: EditorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
1206
- EditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: EditorComponent, selector: "dxv-editor", usesInheritance: true, ngImport: i0, template: "<div class=\"dx-editor\" [hidden]=\"!data.visible\">\n <div class=\"dx-group\" [dxaAccordion]=\"data\">\n <div class=\"dx-editor-header\" [class.dxrd-empty-header]=\"data.hideEditorHeader\">\n <div *ngIf=\"!data.hideEditorHeader\" class=\"dx-field\"\n [attr.role]=\"'treeitem'\"\n [attr.id]=\"data.isComplexEditor && data.headerId\"\n [attr.aria-owns]=\"data.isComplexEditor && data.contentId\"\n [attr.aria-expanded]=\"data.isComplexEditor && (data.alwaysShow || !data.collapsed ? 'true' : 'false')\"\n [class.dxrd-accessibility-accordion-trigger]=\"data.isComplexEditor\"\n [class.dx-accessibility-focus-border-accented]=\"data.isComplexEditor\"\n [class.dxrd-vertical-label]=\"data.editorOptions && data.editorOptions.hasVerticalLabel\"\n >\n <div class=\"dx-field-label dxrd-group-label dx-accordion-header dxd-text-primary\"\n [style.padding-left]=\"data.padding['padding-left'] + 'px'\"\n [class.dx-accordion-empty]=\"data.templateName === 'dx-emptyHeader'\"\n [class.dxd-back-secondary]=\"data.isGroupLabel\"\n [class.dx-accordion-hide-collapsing-image]=\"data.alwaysShow\">\n <div *ngIf=\"data.isComplexEditor\" [attr.disabled]=\"data.templateName !== 'dx-emptyHeader'\">\n <dxa-template *ngIf=\"!data.alwaysShow\" \n template=\"dxrd-svg-collapsed\" \n class=\"propertygrid-editor-collapsed dx-collapsing-image\"\n [class.dx-image-expanded]=\"!data.collapsed\"\n ></dxa-template>\n <div *ngIf=\"!!data.textToSearch\" class=\"dx-group-header-font\" [attr.title]=\"data.displayName\" data-bind=\"searchHighlighting: { text: displayName, textToSearch: textToSearch }\"></div>\n <div *ngIf=\"!data.textToSearch\" class=\"dx-group-header-font\" [attr.title]=\"data.displayName\">\n {{data.displayName}}\n </div>\n </div>\n <label *ngIf=\"!data.isComplexEditor && !!data.textToSearch\" \n class=\"propertygrid-editor-displayName\"\n data-bind=\"searchHighlighting: { text: displayName, textToSearch: textToSearch }\"\n [attr.title]=\"data.displayName\"\n [attr.for]=\"data.editorInputId\"\n [class.dx-field-label-required]=\"data.isRequired\"\n [style.fontWeight]=\"data.isPropertyModified ? 'Bold' : ''\"\n ></label>\n <label *ngIf=\"!data.isComplexEditor && !data.textToSearch\" \n class=\"propertygrid-editor-displayName\"\n [attr.title]=\"data.displayName\"\n [attr.for]=\"data.editorInputId\"\n [class.dx-field-label-required]=\"data.isRequired\"\n [style.fontWeight]=\"data.isPropertyModified ? 'Bold' : ''\"\n >{{data.displayName}}</label> \n </div>\n <div class=\"dx-field-value\" \n [class.dxd-border-accented]=\"data.isPropertyHighlighted\">\n <div data-bind=\"service: { name: 'createEditorAddOn' }\"></div>\n <dxa-lazy-template *ngIf=\"data.templateName !== 'dx-emptyHeader'\" [isResolved]=\"isResolved\" [template]=\"data.templateName\" [data]=\"data\"></dxa-lazy-template>\n <!-- ko if: templateName !== 'dx-emptyHeader' -->\n <!-- ko lazy: { innerBindings: { template: templateName }, isResolved: function(val) { $data.setIsRendered(val) } } -->\n <!-- /ko -->\n <!-- /ko -->\n </div>\n </div>\n </div>\n <div *ngIf=\"data.isComplexEditor\" class=\"dx-editor-content dx-accordion-content\" role=\"group\" \n [attr.aria-labelledby]=\"data.headerId\"\n [attr.id]=\"data.contentId\"\n [attr.aria-hidden]=\"!data.alwaysShow && data.collapsed ? 'true' : 'false'\">\n <dxa-template *ngIf=\"data.editorCreated\" [template]=\"data.contentTemplateName\" [data]=\"data\"></dxa-template>\n </div>\n </div>\n</div>", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: TemplateComponent, selector: "dxa-template", inputs: ["data", "template"] }, { kind: "directive", type: AccordionDirective, selector: "[dxaAccordion]", inputs: ["dxaAccordion"] }, { kind: "component", type: LazyTemplateComponent, selector: "dxa-lazy-template", inputs: ["resolver", "isResolved"] }] });
1203
+ EditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: EditorComponent, selector: "dxv-editor", usesInheritance: true, ngImport: i0, template: "<div class=\"dx-editor\" [hidden]=\"!data.visible\">\n <div class=\"dx-group\" [dxaAccordion]=\"data\">\n <div class=\"dx-editor-header\" [class.dxrd-empty-header]=\"data.hideEditorHeader\">\n <div *ngIf=\"!data.hideEditorHeader\" class=\"dx-field\"\n [attr.role]=\"'treeitem'\"\n [attr.id]=\"data.isComplexEditor && data.headerId\"\n [attr.aria-owns]=\"data.isComplexEditor && data.contentId\"\n [attr.aria-expanded]=\"data.isComplexEditor && (data.alwaysShow || !data.collapsed ? 'true' : 'false')\"\n [class.dxrd-accessibility-accordion-trigger]=\"data.isComplexEditor\"\n [class.dx-accessibility-focus-border-accented]=\"data.isComplexEditor\"\n [class.dxrd-vertical-label]=\"data.editorOptions && data.editorOptions.hasVerticalLabel\"\n >\n <div class=\"dx-field-label dxrd-group-label dx-accordion-header dxd-text-primary\"\n [style.padding-left]=\"data.padding['padding-left'] + 'px'\"\n [class.dx-accordion-empty]=\"data.templateName === 'dx-emptyHeader'\"\n [class.dxd-back-secondary]=\"data.isGroupLabel\"\n [class.dx-accordion-hide-collapsing-image]=\"data.alwaysShow\">\n <div *ngIf=\"data.isComplexEditor\" [attr.disabled]=\"data.templateName !== 'dx-emptyHeader'\">\n <dxa-template *ngIf=\"!data.alwaysShow\" \n template=\"dxrd-svg-collapsed\" \n class=\"dx-collapsing-image dxrd-display-inline-block\"\n [class.dx-image-expanded]=\"!data.collapsed\"\n ></dxa-template>\n <div *ngIf=\"!!data.textToSearch\" class=\"dx-group-header-font\" [attr.title]=\"data.displayName\" data-bind=\"searchHighlighting: { text: displayName, textToSearch: textToSearch }\"></div>\n <div *ngIf=\"!data.textToSearch\" class=\"dx-group-header-font\" [attr.title]=\"data.displayName\">\n {{data.displayName}}\n </div>\n </div>\n <label *ngIf=\"!data.isComplexEditor && !!data.textToSearch\" \n class=\"propertygrid-editor-displayName\"\n data-bind=\"searchHighlighting: { text: displayName, textToSearch: textToSearch }\"\n [attr.title]=\"data.displayName\"\n [attr.for]=\"data.editorInputId\"\n [class.dx-field-label-required]=\"data.isRequired\"\n [style.fontWeight]=\"data.isPropertyModified ? 'Bold' : ''\"\n ></label>\n <label *ngIf=\"!data.isComplexEditor && !data.textToSearch\" \n class=\"propertygrid-editor-displayName\"\n [attr.title]=\"data.displayName\"\n [attr.for]=\"data.editorInputId\"\n [class.dx-field-label-required]=\"data.isRequired\"\n [style.fontWeight]=\"data.isPropertyModified ? 'Bold' : ''\"\n >{{data.displayName}}</label> \n </div>\n <div class=\"dx-field-value\" \n [class.dxd-border-accented]=\"data.isPropertyHighlighted\">\n <div data-bind=\"service: { name: 'createEditorAddOn' }\"></div>\n <dxa-lazy-template *ngIf=\"data.templateName !== 'dx-emptyHeader'\" [isResolved]=\"isResolved\" [template]=\"data.templateName\" [data]=\"data\"></dxa-lazy-template>\n <!-- ko if: templateName !== 'dx-emptyHeader' -->\n <!-- ko lazy: { innerBindings: { template: templateName }, isResolved: function(val) { $data.setIsRendered(val) } } -->\n <!-- /ko -->\n <!-- /ko -->\n </div>\n </div>\n </div>\n <div *ngIf=\"data.isComplexEditor\" class=\"dx-editor-content dx-accordion-content\" role=\"group\" \n [attr.aria-labelledby]=\"data.headerId\"\n [attr.id]=\"data.contentId\"\n [attr.aria-hidden]=\"!data.alwaysShow && data.collapsed ? 'true' : 'false'\">\n <dxa-template *ngIf=\"data.editorCreated\" [template]=\"data.contentTemplateName\" [data]=\"data\"></dxa-template>\n </div>\n </div>\n</div>", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: TemplateComponent, selector: "dxa-template", inputs: ["data", "template"] }, { kind: "directive", type: AccordionDirective, selector: "[dxaAccordion]", inputs: ["dxaAccordion"] }, { kind: "component", type: LazyTemplateComponent, selector: "dxa-lazy-template", inputs: ["resolver", "isResolved"] }] });
1207
1204
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: EditorComponent, decorators: [{
1208
1205
  type: Component,
1209
- args: [{ selector: 'dxv-editor', template: "<div class=\"dx-editor\" [hidden]=\"!data.visible\">\n <div class=\"dx-group\" [dxaAccordion]=\"data\">\n <div class=\"dx-editor-header\" [class.dxrd-empty-header]=\"data.hideEditorHeader\">\n <div *ngIf=\"!data.hideEditorHeader\" class=\"dx-field\"\n [attr.role]=\"'treeitem'\"\n [attr.id]=\"data.isComplexEditor && data.headerId\"\n [attr.aria-owns]=\"data.isComplexEditor && data.contentId\"\n [attr.aria-expanded]=\"data.isComplexEditor && (data.alwaysShow || !data.collapsed ? 'true' : 'false')\"\n [class.dxrd-accessibility-accordion-trigger]=\"data.isComplexEditor\"\n [class.dx-accessibility-focus-border-accented]=\"data.isComplexEditor\"\n [class.dxrd-vertical-label]=\"data.editorOptions && data.editorOptions.hasVerticalLabel\"\n >\n <div class=\"dx-field-label dxrd-group-label dx-accordion-header dxd-text-primary\"\n [style.padding-left]=\"data.padding['padding-left'] + 'px'\"\n [class.dx-accordion-empty]=\"data.templateName === 'dx-emptyHeader'\"\n [class.dxd-back-secondary]=\"data.isGroupLabel\"\n [class.dx-accordion-hide-collapsing-image]=\"data.alwaysShow\">\n <div *ngIf=\"data.isComplexEditor\" [attr.disabled]=\"data.templateName !== 'dx-emptyHeader'\">\n <dxa-template *ngIf=\"!data.alwaysShow\" \n template=\"dxrd-svg-collapsed\" \n class=\"propertygrid-editor-collapsed dx-collapsing-image\"\n [class.dx-image-expanded]=\"!data.collapsed\"\n ></dxa-template>\n <div *ngIf=\"!!data.textToSearch\" class=\"dx-group-header-font\" [attr.title]=\"data.displayName\" data-bind=\"searchHighlighting: { text: displayName, textToSearch: textToSearch }\"></div>\n <div *ngIf=\"!data.textToSearch\" class=\"dx-group-header-font\" [attr.title]=\"data.displayName\">\n {{data.displayName}}\n </div>\n </div>\n <label *ngIf=\"!data.isComplexEditor && !!data.textToSearch\" \n class=\"propertygrid-editor-displayName\"\n data-bind=\"searchHighlighting: { text: displayName, textToSearch: textToSearch }\"\n [attr.title]=\"data.displayName\"\n [attr.for]=\"data.editorInputId\"\n [class.dx-field-label-required]=\"data.isRequired\"\n [style.fontWeight]=\"data.isPropertyModified ? 'Bold' : ''\"\n ></label>\n <label *ngIf=\"!data.isComplexEditor && !data.textToSearch\" \n class=\"propertygrid-editor-displayName\"\n [attr.title]=\"data.displayName\"\n [attr.for]=\"data.editorInputId\"\n [class.dx-field-label-required]=\"data.isRequired\"\n [style.fontWeight]=\"data.isPropertyModified ? 'Bold' : ''\"\n >{{data.displayName}}</label> \n </div>\n <div class=\"dx-field-value\" \n [class.dxd-border-accented]=\"data.isPropertyHighlighted\">\n <div data-bind=\"service: { name: 'createEditorAddOn' }\"></div>\n <dxa-lazy-template *ngIf=\"data.templateName !== 'dx-emptyHeader'\" [isResolved]=\"isResolved\" [template]=\"data.templateName\" [data]=\"data\"></dxa-lazy-template>\n <!-- ko if: templateName !== 'dx-emptyHeader' -->\n <!-- ko lazy: { innerBindings: { template: templateName }, isResolved: function(val) { $data.setIsRendered(val) } } -->\n <!-- /ko -->\n <!-- /ko -->\n </div>\n </div>\n </div>\n <div *ngIf=\"data.isComplexEditor\" class=\"dx-editor-content dx-accordion-content\" role=\"group\" \n [attr.aria-labelledby]=\"data.headerId\"\n [attr.id]=\"data.contentId\"\n [attr.aria-hidden]=\"!data.alwaysShow && data.collapsed ? 'true' : 'false'\">\n <dxa-template *ngIf=\"data.editorCreated\" [template]=\"data.contentTemplateName\" [data]=\"data\"></dxa-template>\n </div>\n </div>\n</div>" }]
1206
+ args: [{ selector: 'dxv-editor', template: "<div class=\"dx-editor\" [hidden]=\"!data.visible\">\n <div class=\"dx-group\" [dxaAccordion]=\"data\">\n <div class=\"dx-editor-header\" [class.dxrd-empty-header]=\"data.hideEditorHeader\">\n <div *ngIf=\"!data.hideEditorHeader\" class=\"dx-field\"\n [attr.role]=\"'treeitem'\"\n [attr.id]=\"data.isComplexEditor && data.headerId\"\n [attr.aria-owns]=\"data.isComplexEditor && data.contentId\"\n [attr.aria-expanded]=\"data.isComplexEditor && (data.alwaysShow || !data.collapsed ? 'true' : 'false')\"\n [class.dxrd-accessibility-accordion-trigger]=\"data.isComplexEditor\"\n [class.dx-accessibility-focus-border-accented]=\"data.isComplexEditor\"\n [class.dxrd-vertical-label]=\"data.editorOptions && data.editorOptions.hasVerticalLabel\"\n >\n <div class=\"dx-field-label dxrd-group-label dx-accordion-header dxd-text-primary\"\n [style.padding-left]=\"data.padding['padding-left'] + 'px'\"\n [class.dx-accordion-empty]=\"data.templateName === 'dx-emptyHeader'\"\n [class.dxd-back-secondary]=\"data.isGroupLabel\"\n [class.dx-accordion-hide-collapsing-image]=\"data.alwaysShow\">\n <div *ngIf=\"data.isComplexEditor\" [attr.disabled]=\"data.templateName !== 'dx-emptyHeader'\">\n <dxa-template *ngIf=\"!data.alwaysShow\" \n template=\"dxrd-svg-collapsed\" \n class=\"dx-collapsing-image dxrd-display-inline-block\"\n [class.dx-image-expanded]=\"!data.collapsed\"\n ></dxa-template>\n <div *ngIf=\"!!data.textToSearch\" class=\"dx-group-header-font\" [attr.title]=\"data.displayName\" data-bind=\"searchHighlighting: { text: displayName, textToSearch: textToSearch }\"></div>\n <div *ngIf=\"!data.textToSearch\" class=\"dx-group-header-font\" [attr.title]=\"data.displayName\">\n {{data.displayName}}\n </div>\n </div>\n <label *ngIf=\"!data.isComplexEditor && !!data.textToSearch\" \n class=\"propertygrid-editor-displayName\"\n data-bind=\"searchHighlighting: { text: displayName, textToSearch: textToSearch }\"\n [attr.title]=\"data.displayName\"\n [attr.for]=\"data.editorInputId\"\n [class.dx-field-label-required]=\"data.isRequired\"\n [style.fontWeight]=\"data.isPropertyModified ? 'Bold' : ''\"\n ></label>\n <label *ngIf=\"!data.isComplexEditor && !data.textToSearch\" \n class=\"propertygrid-editor-displayName\"\n [attr.title]=\"data.displayName\"\n [attr.for]=\"data.editorInputId\"\n [class.dx-field-label-required]=\"data.isRequired\"\n [style.fontWeight]=\"data.isPropertyModified ? 'Bold' : ''\"\n >{{data.displayName}}</label> \n </div>\n <div class=\"dx-field-value\" \n [class.dxd-border-accented]=\"data.isPropertyHighlighted\">\n <div data-bind=\"service: { name: 'createEditorAddOn' }\"></div>\n <dxa-lazy-template *ngIf=\"data.templateName !== 'dx-emptyHeader'\" [isResolved]=\"isResolved\" [template]=\"data.templateName\" [data]=\"data\"></dxa-lazy-template>\n <!-- ko if: templateName !== 'dx-emptyHeader' -->\n <!-- ko lazy: { innerBindings: { template: templateName }, isResolved: function(val) { $data.setIsRendered(val) } } -->\n <!-- /ko -->\n <!-- /ko -->\n </div>\n </div>\n </div>\n <div *ngIf=\"data.isComplexEditor\" class=\"dx-editor-content dx-accordion-content\" role=\"group\" \n [attr.aria-labelledby]=\"data.headerId\"\n [attr.id]=\"data.contentId\"\n [attr.aria-hidden]=\"!data.alwaysShow && data.collapsed ? 'true' : 'false'\">\n <dxa-template *ngIf=\"data.editorCreated\" [template]=\"data.contentTemplateName\" [data]=\"data\"></dxa-template>\n </div>\n </div>\n</div>" }]
1210
1207
  }] });
1211
1208
 
1212
1209
  class MultiValueComponent extends EditorDropDownComponentBase {
1213
- constructor(_cd) {
1214
- super(_cd);
1215
- }
1216
1210
  getOptions() {
1217
1211
  return this.data.value.getOptions({
1218
1212
  dataSource: this.data.value.dataSource,
@@ -1248,12 +1242,33 @@ class MultiValueComponent extends EditorDropDownComponentBase {
1248
1242
  // this.options = this.data.value.getOptions(this.options);
1249
1243
  }
1250
1244
  }
1251
- MultiValueComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MultiValueComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
1252
- MultiValueComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: MultiValueComponent, selector: "dxv-multivalue", usesInheritance: true, ngImport: i0, template: "<dx-tag-box #target #widget\n [dataSource]=\"options.dataSource\"\n [searchEnabled]=\"options.searchEnabled\"\n [useItemTextAsTitle]=\"options.useItemTextAsTitle\"\n [searchExpr]=\"options.searchExpr\"\n [value]=\"options.value\"\n [displayExpr]=\"options.displayExpr\"\n [valueExpr]=\"options.valueExpr\"\n [multiline]=\"options.multiline\"\n [showSelectionControls]=\"options.showSelectionControls\"\n (onValueChanged)=\"options.onValueChanged($event)\"\n [inputAttr]=\"options.inputAttr\"\n [disabled]=\"options.disabled\"\n [selectAllText]=\"options.selectAllText\"\n [placeholder]=\"options.placeholder\"\n [maxDisplayedTags]=\"options.maxDisplayedTags\"\n [showMultiTagOnly]=\"options.showMultiTagOnly\"\n [dropDownOptions]=\"dropDownOptions\"\n >\n <dx-validator *ngIf=\"!!data.validationRules\" [validationRules]=\"validatorOptions.validationRules\">\n </dx-validator>\n</dx-tag-box>\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.DxTagBoxComponent, selector: "dx-tag-box", inputs: ["acceptCustomValue", "accessKey", "activeStateEnabled", "applyValueMode", "buttons", "customItemCreateEvent", "dataSource", "deferRendering", "disabled", "displayExpr", "dropDownButtonTemplate", "dropDownOptions", "elementAttr", "fieldTemplate", "focusStateEnabled", "grouped", "groupTemplate", "height", "hideSelectedItems", "hint", "hoverStateEnabled", "inputAttr", "isDirty", "isValid", "items", "itemTemplate", "label", "labelMode", "maxDisplayedTags", "maxFilterQueryLength", "maxLength", "minSearchLength", "multiline", "name", "noDataText", "opened", "openOnFieldClick", "placeholder", "readOnly", "rtlEnabled", "searchEnabled", "searchExpr", "searchMode", "searchTimeout", "selectAllMode", "selectAllText", "selectedItems", "showClearButton", "showDataBeforeSearch", "showDropDownButton", "showMultiTagOnly", "showSelectionControls", "stylingMode", "tabIndex", "tagTemplate", "text", "useItemTextAsTitle", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "valueExpr", "visible", "width", "wrapItemText"], outputs: ["onChange", "onClosed", "onContentReady", "onCustomItemCreating", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onItemClick", "onKeyDown", "onKeyUp", "onMultiTagPreparing", "onOpened", "onOptionChanged", "onSelectAllValueChanged", "onSelectionChanged", "onValueChanged", "acceptCustomValueChange", "accessKeyChange", "activeStateEnabledChange", "applyValueModeChange", "buttonsChange", "customItemCreateEventChange", "dataSourceChange", "deferRenderingChange", "disabledChange", "displayExprChange", "dropDownButtonTemplateChange", "dropDownOptionsChange", "elementAttrChange", "fieldTemplateChange", "focusStateEnabledChange", "groupedChange", "groupTemplateChange", "heightChange", "hideSelectedItemsChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isDirtyChange", "isValidChange", "itemsChange", "itemTemplateChange", "labelChange", "labelModeChange", "maxDisplayedTagsChange", "maxFilterQueryLengthChange", "maxLengthChange", "minSearchLengthChange", "multilineChange", "nameChange", "noDataTextChange", "openedChange", "openOnFieldClickChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "searchEnabledChange", "searchExprChange", "searchModeChange", "searchTimeoutChange", "selectAllModeChange", "selectAllTextChange", "selectedItemsChange", "showClearButtonChange", "showDataBeforeSearchChange", "showDropDownButtonChange", "showMultiTagOnlyChange", "showSelectionControlsChange", "stylingModeChange", "tabIndexChange", "tagTemplateChange", "textChange", "useItemTextAsTitleChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "valueExprChange", "visibleChange", "widthChange", "wrapItemTextChange", "onBlur"] }, { kind: "component", type: i2.DxValidatorComponent, selector: "dx-validator", inputs: ["adapter", "elementAttr", "height", "name", "validationGroup", "validationRules", "width"], outputs: ["onDisposing", "onInitialized", "onOptionChanged", "onValidated", "adapterChange", "elementAttrChange", "heightChange", "nameChange", "validationGroupChange", "validationRulesChange", "widthChange"] }] });
1245
+ MultiValueComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MultiValueComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
1246
+ MultiValueComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: MultiValueComponent, selector: "dxv-multivalue", usesInheritance: true, ngImport: i0, template: "<dx-tag-box #target #widget\n [dataSource]=\"options.dataSource\"\n [searchEnabled]=\"options.searchEnabled\"\n [useItemTextAsTitle]=\"options.useItemTextAsTitle\"\n [searchExpr]=\"options.searchExpr\"\n [value]=\"options.value\"\n [displayExpr]=\"options.displayExpr\"\n [valueExpr]=\"options.valueExpr\"\n [multiline]=\"options.multiline\"\n [showSelectionControls]=\"options.showSelectionControls\"\n (onValueChanged)=\"options.onValueChanged($event)\"\n (onMultiTagPreparing)=\"options.onMultiTagPreparing($event)\"\n [inputAttr]=\"options.inputAttr\"\n [disabled]=\"options.disabled\"\n [selectAllText]=\"options.selectAllText\"\n [placeholder]=\"options.placeholder\"\n [maxDisplayedTags]=\"options.maxDisplayedTags\"\n [showMultiTagOnly]=\"options.showMultiTagOnly\"\n [dropDownOptions]=\"dropDownOptions\"\n >\n <dx-validator *ngIf=\"!!data.validationRules\" [validationRules]=\"validatorOptions.validationRules\">\n </dx-validator>\n</dx-tag-box>\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.DxTagBoxComponent, selector: "dx-tag-box", inputs: ["acceptCustomValue", "accessKey", "activeStateEnabled", "applyValueMode", "buttons", "customItemCreateEvent", "dataSource", "deferRendering", "disabled", "displayExpr", "dropDownButtonTemplate", "dropDownOptions", "elementAttr", "fieldTemplate", "focusStateEnabled", "grouped", "groupTemplate", "height", "hideSelectedItems", "hint", "hoverStateEnabled", "inputAttr", "isDirty", "isValid", "items", "itemTemplate", "label", "labelMode", "maxDisplayedTags", "maxFilterQueryLength", "maxLength", "minSearchLength", "multiline", "name", "noDataText", "opened", "openOnFieldClick", "placeholder", "readOnly", "rtlEnabled", "searchEnabled", "searchExpr", "searchMode", "searchTimeout", "selectAllMode", "selectAllText", "selectedItems", "showClearButton", "showDataBeforeSearch", "showDropDownButton", "showMultiTagOnly", "showSelectionControls", "stylingMode", "tabIndex", "tagTemplate", "text", "useItemTextAsTitle", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "valueExpr", "visible", "width", "wrapItemText"], outputs: ["onChange", "onClosed", "onContentReady", "onCustomItemCreating", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onItemClick", "onKeyDown", "onKeyUp", "onMultiTagPreparing", "onOpened", "onOptionChanged", "onSelectAllValueChanged", "onSelectionChanged", "onValueChanged", "acceptCustomValueChange", "accessKeyChange", "activeStateEnabledChange", "applyValueModeChange", "buttonsChange", "customItemCreateEventChange", "dataSourceChange", "deferRenderingChange", "disabledChange", "displayExprChange", "dropDownButtonTemplateChange", "dropDownOptionsChange", "elementAttrChange", "fieldTemplateChange", "focusStateEnabledChange", "groupedChange", "groupTemplateChange", "heightChange", "hideSelectedItemsChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isDirtyChange", "isValidChange", "itemsChange", "itemTemplateChange", "labelChange", "labelModeChange", "maxDisplayedTagsChange", "maxFilterQueryLengthChange", "maxLengthChange", "minSearchLengthChange", "multilineChange", "nameChange", "noDataTextChange", "openedChange", "openOnFieldClickChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "searchEnabledChange", "searchExprChange", "searchModeChange", "searchTimeoutChange", "selectAllModeChange", "selectAllTextChange", "selectedItemsChange", "showClearButtonChange", "showDataBeforeSearchChange", "showDropDownButtonChange", "showMultiTagOnlyChange", "showSelectionControlsChange", "stylingModeChange", "tabIndexChange", "tagTemplateChange", "textChange", "useItemTextAsTitleChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "valueExprChange", "visibleChange", "widthChange", "wrapItemTextChange", "onBlur"] }, { kind: "component", type: i2.DxValidatorComponent, selector: "dx-validator", inputs: ["adapter", "elementAttr", "height", "name", "validationGroup", "validationRules", "width"], outputs: ["onDisposing", "onInitialized", "onOptionChanged", "onValidated", "adapterChange", "elementAttrChange", "heightChange", "nameChange", "validationGroupChange", "validationRulesChange", "widthChange"] }] });
1253
1247
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MultiValueComponent, decorators: [{
1254
1248
  type: Component,
1255
- args: [{ selector: 'dxv-multivalue', template: "<dx-tag-box #target #widget\n [dataSource]=\"options.dataSource\"\n [searchEnabled]=\"options.searchEnabled\"\n [useItemTextAsTitle]=\"options.useItemTextAsTitle\"\n [searchExpr]=\"options.searchExpr\"\n [value]=\"options.value\"\n [displayExpr]=\"options.displayExpr\"\n [valueExpr]=\"options.valueExpr\"\n [multiline]=\"options.multiline\"\n [showSelectionControls]=\"options.showSelectionControls\"\n (onValueChanged)=\"options.onValueChanged($event)\"\n [inputAttr]=\"options.inputAttr\"\n [disabled]=\"options.disabled\"\n [selectAllText]=\"options.selectAllText\"\n [placeholder]=\"options.placeholder\"\n [maxDisplayedTags]=\"options.maxDisplayedTags\"\n [showMultiTagOnly]=\"options.showMultiTagOnly\"\n [dropDownOptions]=\"dropDownOptions\"\n >\n <dx-validator *ngIf=\"!!data.validationRules\" [validationRules]=\"validatorOptions.validationRules\">\n </dx-validator>\n</dx-tag-box>\n" }]
1256
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; } });
1249
+ args: [{ selector: 'dxv-multivalue', template: "<dx-tag-box #target #widget\n [dataSource]=\"options.dataSource\"\n [searchEnabled]=\"options.searchEnabled\"\n [useItemTextAsTitle]=\"options.useItemTextAsTitle\"\n [searchExpr]=\"options.searchExpr\"\n [value]=\"options.value\"\n [displayExpr]=\"options.displayExpr\"\n [valueExpr]=\"options.valueExpr\"\n [multiline]=\"options.multiline\"\n [showSelectionControls]=\"options.showSelectionControls\"\n (onValueChanged)=\"options.onValueChanged($event)\"\n (onMultiTagPreparing)=\"options.onMultiTagPreparing($event)\"\n [inputAttr]=\"options.inputAttr\"\n [disabled]=\"options.disabled\"\n [selectAllText]=\"options.selectAllText\"\n [placeholder]=\"options.placeholder\"\n [maxDisplayedTags]=\"options.maxDisplayedTags\"\n [showMultiTagOnly]=\"options.showMultiTagOnly\"\n [dropDownOptions]=\"dropDownOptions\"\n >\n <dx-validator *ngIf=\"!!data.validationRules\" [validationRules]=\"validatorOptions.validationRules\">\n </dx-validator>\n</dx-tag-box>\n" }]
1250
+ }] });
1251
+
1252
+ class PopoverComponent {
1253
+ constructor(_element, _cd) {
1254
+ this._element = _element;
1255
+ this._cd = _cd;
1256
+ }
1257
+ ngAfterViewInit() {
1258
+ const element = this._element.nativeElement;
1259
+ this.container = this.popover.getPopupContainer(element);
1260
+ this._cd.detectChanges();
1261
+ }
1262
+ }
1263
+ PopoverComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PopoverComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
1264
+ PopoverComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: PopoverComponent, selector: "dxa-propertygrid-popoverservice", inputs: { popover: ["data", "popover"] }, ngImport: i0, template: "<dx-popover\n [container]=\"container\"\n [target]=\"popover.target\"\n position=\"bottom\"\n [showCloseButton]=\"false\"\n (onHiding)=\"popover.onHiding()\"\n [hideOnOutsideClick]=\"true\"\n [hideOnParentScroll]=\"true\"\n [width]=\"350\"\n [(visible)]=\"popover.visible\"\n>\n<div class=\"propertygrid-editor-description-popover-content\">\n <span>{{popover.data}}</span>\n</div>\n</dx-popover>", dependencies: [{ kind: "component", type: i2.DxPopoverComponent, selector: "dx-popover", inputs: ["animation", "closeOnOutsideClick", "container", "contentTemplate", "copyRootClassesToWrapper", "deferRendering", "disabled", "elementAttr", "enableBodyScroll", "height", "hideEvent", "hideOnOutsideClick", "hideOnParentScroll", "hint", "hoverStateEnabled", "maxHeight", "maxWidth", "minHeight", "minWidth", "position", "rtlEnabled", "shading", "shadingColor", "showCloseButton", "showEvent", "showTitle", "target", "title", "titleTemplate", "toolbarItems", "visible", "width", "wrapperAttr"], outputs: ["onContentReady", "onDisposing", "onHidden", "onHiding", "onInitialized", "onOptionChanged", "onShowing", "onShown", "onTitleRendered", "animationChange", "closeOnOutsideClickChange", "containerChange", "contentTemplateChange", "copyRootClassesToWrapperChange", "deferRenderingChange", "disabledChange", "elementAttrChange", "enableBodyScrollChange", "heightChange", "hideEventChange", "hideOnOutsideClickChange", "hideOnParentScrollChange", "hintChange", "hoverStateEnabledChange", "maxHeightChange", "maxWidthChange", "minHeightChange", "minWidthChange", "positionChange", "rtlEnabledChange", "shadingChange", "shadingColorChange", "showCloseButtonChange", "showEventChange", "showTitleChange", "targetChange", "titleChange", "titleTemplateChange", "toolbarItemsChange", "visibleChange", "widthChange", "wrapperAttrChange"] }] });
1265
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PopoverComponent, decorators: [{
1266
+ type: Component,
1267
+ args: [{ selector: 'dxa-propertygrid-popoverservice', template: "<dx-popover\n [container]=\"container\"\n [target]=\"popover.target\"\n position=\"bottom\"\n [showCloseButton]=\"false\"\n (onHiding)=\"popover.onHiding()\"\n [hideOnOutsideClick]=\"true\"\n [hideOnParentScroll]=\"true\"\n [width]=\"350\"\n [(visible)]=\"popover.visible\"\n>\n<div class=\"propertygrid-editor-description-popover-content\">\n <span>{{popover.data}}</span>\n</div>\n</dx-popover>" }]
1268
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { popover: [{
1269
+ type: Input,
1270
+ args: ['data']
1271
+ }] } });
1257
1272
 
1258
1273
  class ExportOptionsComponent {
1259
1274
  constructor() {
@@ -1264,19 +1279,16 @@ class ExportOptionsComponent {
1264
1279
  }
1265
1280
  }
1266
1281
  ExportOptionsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ExportOptionsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1267
- ExportOptionsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ExportOptionsComponent, selector: "dxv-export-options", inputs: { data: "data" }, ngImport: i0, template: "<div class=\"dxrd-preview-export-options-wrapper dxrd-preview-property-wrapper\" [hidden]=\"!(data.active && data.visible)\">\n <div class=\"dxrd-right-panel-header dxd-text-primary\">\n <span>{{headerText}}</span>\n </div>\n <dx-scroll-view class=\"dxrd-right-panel-body\" \n showScrollbar=\"onHover\"\n [useNative]=\"false\"\n [scrollByThumb]=\"true\"\n (onInitialized)=\"onScrollViewInitialized($event)\">\n <div class=\"dx-fieldset\" [dxMutationObserver]=\"data.keyboardHelper\">\n <div class=\"dxrd-right-panel-content dxrd-export-options-content\" role=\"tree\">\n <dxa-template template=\"dx-propertieseditor\" [data]=\"data.propertyGrid\"></dxa-template>\n </div>\n </div>\n </dx-scroll-view>\n</div>", dependencies: [{ kind: "component", type: i2.DxScrollViewComponent, selector: "dx-scroll-view", inputs: ["bounceEnabled", "direction", "disabled", "elementAttr", "height", "pulledDownText", "pullingDownText", "reachBottomText", "refreshingText", "rtlEnabled", "scrollByContent", "scrollByThumb", "showScrollbar", "useNative", "width"], outputs: ["onDisposing", "onInitialized", "onOptionChanged", "onPullDown", "onReachBottom", "onScroll", "onUpdated", "bounceEnabledChange", "directionChange", "disabledChange", "elementAttrChange", "heightChange", "pulledDownTextChange", "pullingDownTextChange", "reachBottomTextChange", "refreshingTextChange", "rtlEnabledChange", "scrollByContentChange", "scrollByThumbChange", "showScrollbarChange", "useNativeChange", "widthChange"] }, { kind: "component", type: TemplateComponent, selector: "dxa-template", inputs: ["data", "template"] }, { kind: "directive", type: DxMutationObserverDirective, selector: "[dxMutationObserver]", inputs: ["dxMutationObserver"] }] });
1282
+ ExportOptionsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ExportOptionsComponent, selector: "dxv-export-options", inputs: { data: "data" }, ngImport: i0, template: "<div class=\"dxrd-preview-export-options-wrapper dxrd-preview-property-wrapper\" [hidden]=\"!(data.active && data.visible)\">\n <div class=\"dxrd-right-panel-header dxd-text-primary\">\n <span>{{headerText}}</span>\n </div>\n <dx-scroll-view class=\"dxrd-right-panel-body\" \n showScrollbar=\"onHover\"\n [useNative]=\"false\"\n [scrollByThumb]=\"true\"\n (onInitialized)=\"onScrollViewInitialized($event)\">\n <div class=\"dx-fieldset\" [dxMutationObserver]=\"data.keyboardHelper\">\n <div class=\"dxrd-right-panel-content dxrd-export-options-content\" role=\"tree\">\n <dxa-template template=\"dx-propertieseditor\" [data]=\"data.propertyGrid\"></dxa-template>\n </div>\n <dxa-propertygrid-popoverservice [data]=\"data.propertyGrid.popover\"></dxa-propertygrid-popoverservice>\n </div>\n </dx-scroll-view>\n</div>", dependencies: [{ kind: "component", type: i2.DxScrollViewComponent, selector: "dx-scroll-view", inputs: ["bounceEnabled", "direction", "disabled", "elementAttr", "height", "pulledDownText", "pullingDownText", "reachBottomText", "refreshingText", "rtlEnabled", "scrollByContent", "scrollByThumb", "showScrollbar", "useNative", "width"], outputs: ["onDisposing", "onInitialized", "onOptionChanged", "onPullDown", "onReachBottom", "onScroll", "onUpdated", "bounceEnabledChange", "directionChange", "disabledChange", "elementAttrChange", "heightChange", "pulledDownTextChange", "pullingDownTextChange", "reachBottomTextChange", "refreshingTextChange", "rtlEnabledChange", "scrollByContentChange", "scrollByThumbChange", "showScrollbarChange", "useNativeChange", "widthChange"] }, { kind: "component", type: PopoverComponent, selector: "dxa-propertygrid-popoverservice", inputs: ["data"] }, { kind: "component", type: TemplateComponent, selector: "dxa-template", inputs: ["data", "template"] }, { kind: "directive", type: DxMutationObserverDirective, selector: "[dxMutationObserver]", inputs: ["dxMutationObserver"] }] });
1268
1283
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ExportOptionsComponent, decorators: [{
1269
1284
  type: Component,
1270
- args: [{ selector: 'dxv-export-options', template: "<div class=\"dxrd-preview-export-options-wrapper dxrd-preview-property-wrapper\" [hidden]=\"!(data.active && data.visible)\">\n <div class=\"dxrd-right-panel-header dxd-text-primary\">\n <span>{{headerText}}</span>\n </div>\n <dx-scroll-view class=\"dxrd-right-panel-body\" \n showScrollbar=\"onHover\"\n [useNative]=\"false\"\n [scrollByThumb]=\"true\"\n (onInitialized)=\"onScrollViewInitialized($event)\">\n <div class=\"dx-fieldset\" [dxMutationObserver]=\"data.keyboardHelper\">\n <div class=\"dxrd-right-panel-content dxrd-export-options-content\" role=\"tree\">\n <dxa-template template=\"dx-propertieseditor\" [data]=\"data.propertyGrid\"></dxa-template>\n </div>\n </div>\n </dx-scroll-view>\n</div>" }]
1285
+ args: [{ selector: 'dxv-export-options', template: "<div class=\"dxrd-preview-export-options-wrapper dxrd-preview-property-wrapper\" [hidden]=\"!(data.active && data.visible)\">\n <div class=\"dxrd-right-panel-header dxd-text-primary\">\n <span>{{headerText}}</span>\n </div>\n <dx-scroll-view class=\"dxrd-right-panel-body\" \n showScrollbar=\"onHover\"\n [useNative]=\"false\"\n [scrollByThumb]=\"true\"\n (onInitialized)=\"onScrollViewInitialized($event)\">\n <div class=\"dx-fieldset\" [dxMutationObserver]=\"data.keyboardHelper\">\n <div class=\"dxrd-right-panel-content dxrd-export-options-content\" role=\"tree\">\n <dxa-template template=\"dx-propertieseditor\" [data]=\"data.propertyGrid\"></dxa-template>\n </div>\n <dxa-propertygrid-popoverservice [data]=\"data.propertyGrid.popover\"></dxa-propertygrid-popoverservice>\n </div>\n </dx-scroll-view>\n</div>" }]
1271
1286
  }], ctorParameters: function () { return []; }, propDecorators: { data: [{
1272
1287
  type: Input,
1273
1288
  args: ['data']
1274
1289
  }] } });
1275
1290
 
1276
1291
  class MultiValueEditableComponent extends EditorComponentBase {
1277
- constructor(_cd) {
1278
- super(_cd);
1279
- }
1280
1292
  getEditorOptions() {
1281
1293
  const editor = this.data.getModel();
1282
1294
  const getOptionsInfoProperty = (propertyName) => !propertyName ? this.data.info
@@ -1301,12 +1313,12 @@ class MultiValueEditableComponent extends EditorComponentBase {
1301
1313
  this._cd.detectChanges();
1302
1314
  }
1303
1315
  }
1304
- MultiValueEditableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MultiValueEditableComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
1316
+ MultiValueEditableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MultiValueEditableComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
1305
1317
  MultiValueEditableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: MultiValueEditableComponent, selector: "dxv-multivalue-editable", viewQueries: [{ propertyName: "properties", first: true, predicate: ["properties"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div *ngIf=\"data.value\" class=\"dxrd-editor\" [hidden]=\"!data.visible\">\n <dxa-collectioneditor [data]=\"options.data\" [contentTemplate]=\"options.contentTemplate\"></dxa-collectioneditor>\n <!-- <dxa-template [data]=\"options\" template=\"dx-collectioneditor\"></dxa-template> -->\n</div>\n\n<ng-template #properties let-data=\"data\">\n <dxa-template [data]=\"data.getProperties()\" template=\"dx-propertieseditor\"></dxa-template>\n</ng-template>", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: CollectionEditorComponent, selector: "dxa-collectioneditor", inputs: ["data", "contentTemplate"] }, { kind: "component", type: TemplateComponent, selector: "dxa-template", inputs: ["data", "template"] }] });
1306
1318
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MultiValueEditableComponent, decorators: [{
1307
1319
  type: Component,
1308
1320
  args: [{ selector: 'dxv-multivalue-editable', template: "<div *ngIf=\"data.value\" class=\"dxrd-editor\" [hidden]=\"!data.visible\">\n <dxa-collectioneditor [data]=\"options.data\" [contentTemplate]=\"options.contentTemplate\"></dxa-collectioneditor>\n <!-- <dxa-template [data]=\"options\" template=\"dx-collectioneditor\"></dxa-template> -->\n</div>\n\n<ng-template #properties let-data=\"data\">\n <dxa-template [data]=\"data.getProperties()\" template=\"dx-propertieseditor\"></dxa-template>\n</ng-template>" }]
1309
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { properties: [{
1321
+ }], propDecorators: { properties: [{
1310
1322
  type: ViewChild,
1311
1323
  args: ['properties']
1312
1324
  }] } });
@@ -1375,10 +1387,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
1375
1387
  class CalendarComponent {
1376
1388
  }
1377
1389
  CalendarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CalendarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1378
- CalendarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CalendarComponent, selector: "dxv-daterange-calendar", inputs: { data: "data" }, ngImport: i0, template: "<dx-calendar [tabIndex]=\"0\" class=\"dx-accessibility-calendar-item dx-accessibility-daterange-item\"\n [value]=\"data.value\"\n cellTemplate=\"select_cell\" \n [height]=\"data.height\"\n [min]=\"data.min\"\n (onValueChanged)=\"data.onValueChanged($event)\"\n>\n <div *dxTemplate=\"let item of 'select_cell'\" class=\"dxrv-daterange-cell\">\n <div class=\"dxrv-daterange-cell-text\">{{item.text}}</div>\n <div [class.dxd-back-accented]=\"data.inRange(item.date)\"></div>\n </div>\n</dx-calendar>", dependencies: [{ kind: "directive", type: i2$1.DxTemplateDirective, selector: "[dxTemplate]", inputs: ["dxTemplateOf"] }, { kind: "component", type: i2.DxCalendarComponent, selector: "dx-calendar", inputs: ["accessKey", "activeStateEnabled", "cellTemplate", "dateSerializationFormat", "disabled", "disabledDates", "elementAttr", "firstDayOfWeek", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "isDirty", "isValid", "max", "maxZoomLevel", "min", "minZoomLevel", "name", "readOnly", "rtlEnabled", "selectionMode", "selectWeekOnClick", "showTodayButton", "showWeekNumbers", "tabIndex", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "visible", "weekNumberRule", "width", "zoomLevel"], outputs: ["onDisposing", "onInitialized", "onOptionChanged", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "cellTemplateChange", "dateSerializationFormatChange", "disabledChange", "disabledDatesChange", "elementAttrChange", "firstDayOfWeekChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "isDirtyChange", "isValidChange", "maxChange", "maxZoomLevelChange", "minChange", "minZoomLevelChange", "nameChange", "readOnlyChange", "rtlEnabledChange", "selectionModeChange", "selectWeekOnClickChange", "showTodayButtonChange", "showWeekNumbersChange", "tabIndexChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "visibleChange", "weekNumberRuleChange", "widthChange", "zoomLevelChange", "onBlur"] }] });
1390
+ CalendarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CalendarComponent, selector: "dxv-daterange-calendar", inputs: { data: "data" }, ngImport: i0, template: "<dx-calendar [tabIndex]=\"0\" class=\"dx-accessibility-calendar-item dx-accessibility-daterange-item\"\n [min]=\"data.min\"\n [value]=\"data.value\"\n cellTemplate=\"select_cell\" \n [height]=\"data.height\"\n (onValueChanged)=\"data.onValueChanged($event)\"\n>\n <div *dxTemplate=\"let item of 'select_cell'\" class=\"dxrv-daterange-cell\">\n <div class=\"dxrv-daterange-cell-text\">{{item.text}}</div>\n <div [class.dxd-back-accented]=\"data.inRange(item.date)\"></div>\n </div>\n</dx-calendar>", dependencies: [{ kind: "directive", type: i2$1.DxTemplateDirective, selector: "[dxTemplate]", inputs: ["dxTemplateOf"] }, { kind: "component", type: i2.DxCalendarComponent, selector: "dx-calendar", inputs: ["accessKey", "activeStateEnabled", "cellTemplate", "dateSerializationFormat", "disabled", "disabledDates", "elementAttr", "firstDayOfWeek", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "isDirty", "isValid", "max", "maxZoomLevel", "min", "minZoomLevel", "name", "readOnly", "rtlEnabled", "selectionMode", "selectWeekOnClick", "showTodayButton", "showWeekNumbers", "tabIndex", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "visible", "weekNumberRule", "width", "zoomLevel"], outputs: ["onDisposing", "onInitialized", "onOptionChanged", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "cellTemplateChange", "dateSerializationFormatChange", "disabledChange", "disabledDatesChange", "elementAttrChange", "firstDayOfWeekChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "isDirtyChange", "isValidChange", "maxChange", "maxZoomLevelChange", "minChange", "minZoomLevelChange", "nameChange", "readOnlyChange", "rtlEnabledChange", "selectionModeChange", "selectWeekOnClickChange", "showTodayButtonChange", "showWeekNumbersChange", "tabIndexChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "visibleChange", "weekNumberRuleChange", "widthChange", "zoomLevelChange", "onBlur"] }] });
1379
1391
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CalendarComponent, decorators: [{
1380
1392
  type: Component,
1381
- args: [{ selector: 'dxv-daterange-calendar', template: "<dx-calendar [tabIndex]=\"0\" class=\"dx-accessibility-calendar-item dx-accessibility-daterange-item\"\n [value]=\"data.value\"\n cellTemplate=\"select_cell\" \n [height]=\"data.height\"\n [min]=\"data.min\"\n (onValueChanged)=\"data.onValueChanged($event)\"\n>\n <div *dxTemplate=\"let item of 'select_cell'\" class=\"dxrv-daterange-cell\">\n <div class=\"dxrv-daterange-cell-text\">{{item.text}}</div>\n <div [class.dxd-back-accented]=\"data.inRange(item.date)\"></div>\n </div>\n</dx-calendar>" }]
1393
+ args: [{ selector: 'dxv-daterange-calendar', template: "<dx-calendar [tabIndex]=\"0\" class=\"dx-accessibility-calendar-item dx-accessibility-daterange-item\"\n [min]=\"data.min\"\n [value]=\"data.value\"\n cellTemplate=\"select_cell\" \n [height]=\"data.height\"\n (onValueChanged)=\"data.onValueChanged($event)\"\n>\n <div *dxTemplate=\"let item of 'select_cell'\" class=\"dxrv-daterange-cell\">\n <div class=\"dxrv-daterange-cell-text\">{{item.text}}</div>\n <div [class.dxd-back-accented]=\"data.inRange(item.date)\"></div>\n </div>\n</dx-calendar>" }]
1382
1394
  }], propDecorators: { data: [{
1383
1395
  type: Input,
1384
1396
  args: ['data']
@@ -2263,10 +2275,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
2263
2275
  class MobileParametersPopupComponent extends ComponentWithParentContainer {
2264
2276
  }
2265
2277
  MobileParametersPopupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MobileParametersPopupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
2266
- MobileParametersPopupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: MobileParametersPopupComponent, selector: "dxv-mobile-parameters-popup", inputs: { data: "data" }, usesInheritance: true, ngImport: i0, template: "<dx-popup [wrapperAttr]=\"{ class: 'dxrd-menu-parameters-popup' }\" [showTitle]=\"false\" (onHidden)=\"data.onHidden($event)\" width=\"100vw\" height=\"100vh\" [visible]=\"data.visible\" [container]=\"parentContainer\">\n <dxa-template template=\"dxrv-preview-parameters-mobile\" [data]=\"data\"></dxa-template>\n</dx-popup>", dependencies: [{ kind: "component", type: i2.DxPopupComponent, selector: "dx-popup", inputs: ["accessKey", "animation", "closeOnOutsideClick", "container", "contentTemplate", "copyRootClassesToWrapper", "deferRendering", "disabled", "dragAndResizeArea", "dragEnabled", "dragOutsideBoundary", "elementAttr", "enableBodyScroll", "focusStateEnabled", "fullScreen", "height", "hideOnOutsideClick", "hideOnParentScroll", "hint", "hoverStateEnabled", "maxHeight", "maxWidth", "minHeight", "minWidth", "position", "resizeEnabled", "restorePosition", "rtlEnabled", "shading", "shadingColor", "showCloseButton", "showTitle", "tabIndex", "title", "titleTemplate", "toolbarItems", "visible", "width", "wrapperAttr"], outputs: ["onContentReady", "onDisposing", "onHidden", "onHiding", "onInitialized", "onOptionChanged", "onResize", "onResizeEnd", "onResizeStart", "onShowing", "onShown", "onTitleRendered", "accessKeyChange", "animationChange", "closeOnOutsideClickChange", "containerChange", "contentTemplateChange", "copyRootClassesToWrapperChange", "deferRenderingChange", "disabledChange", "dragAndResizeAreaChange", "dragEnabledChange", "dragOutsideBoundaryChange", "elementAttrChange", "enableBodyScrollChange", "focusStateEnabledChange", "fullScreenChange", "heightChange", "hideOnOutsideClickChange", "hideOnParentScrollChange", "hintChange", "hoverStateEnabledChange", "maxHeightChange", "maxWidthChange", "minHeightChange", "minWidthChange", "positionChange", "resizeEnabledChange", "restorePositionChange", "rtlEnabledChange", "shadingChange", "shadingColorChange", "showCloseButtonChange", "showTitleChange", "tabIndexChange", "titleChange", "titleTemplateChange", "toolbarItemsChange", "visibleChange", "widthChange", "wrapperAttrChange"] }, { kind: "component", type: TemplateComponent, selector: "dxa-template", inputs: ["data", "template"] }] });
2278
+ MobileParametersPopupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: MobileParametersPopupComponent, selector: "dxv-mobile-parameters-popup", inputs: { data: "data" }, usesInheritance: true, ngImport: i0, template: "<dx-popup [wrapperAttr]=\"{ class: 'dxrd-menu-parameters-popup' }\" [showTitle]=\"false\" (onHidden)=\"data.onHidden($event)\" width=\"100vw\" height=\"100vh\" [visible]=\"data.visible\" [container]=\"parentContainer\">\n <dxa-template *ngIf=\"data.visible\" template=\"dxrv-preview-parameters-mobile\" [data]=\"data\"></dxa-template>\n</dx-popup>", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.DxPopupComponent, selector: "dx-popup", inputs: ["accessKey", "animation", "closeOnOutsideClick", "container", "contentTemplate", "copyRootClassesToWrapper", "deferRendering", "disabled", "dragAndResizeArea", "dragEnabled", "dragOutsideBoundary", "elementAttr", "enableBodyScroll", "focusStateEnabled", "fullScreen", "height", "hideOnOutsideClick", "hideOnParentScroll", "hint", "hoverStateEnabled", "maxHeight", "maxWidth", "minHeight", "minWidth", "position", "resizeEnabled", "restorePosition", "rtlEnabled", "shading", "shadingColor", "showCloseButton", "showTitle", "tabIndex", "title", "titleTemplate", "toolbarItems", "visible", "width", "wrapperAttr"], outputs: ["onContentReady", "onDisposing", "onHidden", "onHiding", "onInitialized", "onOptionChanged", "onResize", "onResizeEnd", "onResizeStart", "onShowing", "onShown", "onTitleRendered", "accessKeyChange", "animationChange", "closeOnOutsideClickChange", "containerChange", "contentTemplateChange", "copyRootClassesToWrapperChange", "deferRenderingChange", "disabledChange", "dragAndResizeAreaChange", "dragEnabledChange", "dragOutsideBoundaryChange", "elementAttrChange", "enableBodyScrollChange", "focusStateEnabledChange", "fullScreenChange", "heightChange", "hideOnOutsideClickChange", "hideOnParentScrollChange", "hintChange", "hoverStateEnabledChange", "maxHeightChange", "maxWidthChange", "minHeightChange", "minWidthChange", "positionChange", "resizeEnabledChange", "restorePositionChange", "rtlEnabledChange", "shadingChange", "shadingColorChange", "showCloseButtonChange", "showTitleChange", "tabIndexChange", "titleChange", "titleTemplateChange", "toolbarItemsChange", "visibleChange", "widthChange", "wrapperAttrChange"] }, { kind: "component", type: TemplateComponent, selector: "dxa-template", inputs: ["data", "template"] }] });
2267
2279
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MobileParametersPopupComponent, decorators: [{
2268
2280
  type: Component,
2269
- args: [{ selector: 'dxv-mobile-parameters-popup', template: "<dx-popup [wrapperAttr]=\"{ class: 'dxrd-menu-parameters-popup' }\" [showTitle]=\"false\" (onHidden)=\"data.onHidden($event)\" width=\"100vw\" height=\"100vh\" [visible]=\"data.visible\" [container]=\"parentContainer\">\n <dxa-template template=\"dxrv-preview-parameters-mobile\" [data]=\"data\"></dxa-template>\n</dx-popup>" }]
2281
+ args: [{ selector: 'dxv-mobile-parameters-popup', template: "<dx-popup [wrapperAttr]=\"{ class: 'dxrd-menu-parameters-popup' }\" [showTitle]=\"false\" (onHidden)=\"data.onHidden($event)\" width=\"100vw\" height=\"100vh\" [visible]=\"data.visible\" [container]=\"parentContainer\">\n <dxa-template *ngIf=\"data.visible\" template=\"dxrv-preview-parameters-mobile\" [data]=\"data\"></dxa-template>\n</dx-popup>" }]
2270
2282
  }], propDecorators: { data: [{
2271
2283
  type: Input,
2272
2284
  args: ['data']
@@ -2760,6 +2772,7 @@ DxReportViewerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", ve
2760
2772
  DxReportViewerTabPanelSettingsComponent,
2761
2773
  DxReportViewerSearchSettingsComponent,
2762
2774
  TabpanelComponent,
2775
+ PopoverComponent,
2763
2776
  PropertygridComponent,
2764
2777
  TreelistComponent,
2765
2778
  TreeListGroupComponent,
@@ -2937,6 +2950,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
2937
2950
  DxReportViewerTabPanelSettingsComponent,
2938
2951
  DxReportViewerSearchSettingsComponent,
2939
2952
  TabpanelComponent,
2953
+ PopoverComponent,
2940
2954
  PropertygridComponent,
2941
2955
  TreelistComponent,
2942
2956
  TreeListGroupComponent,