@acorex/data-grid 16.18.49 → 16.19.1

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 (24) hide show
  1. package/fesm2022/acorex-data-grid.mjs +106 -87
  2. package/fesm2022/acorex-data-grid.mjs.map +1 -1
  3. package/lib/data-grid/columns/column.component.d.ts +1 -1
  4. package/package.json +3 -5
  5. package/esm2022/acorex-data-grid.mjs +0 -5
  6. package/esm2022/index.mjs +0 -19
  7. package/esm2022/lib/data-grid/columns/check-column.component.mjs +0 -115
  8. package/esm2022/lib/data-grid/columns/column-groups.component.mjs +0 -33
  9. package/esm2022/lib/data-grid/columns/column.component.mjs +0 -190
  10. package/esm2022/lib/data-grid/columns/command-column.component.mjs +0 -126
  11. package/esm2022/lib/data-grid/columns/date-column.component.mjs +0 -127
  12. package/esm2022/lib/data-grid/columns/row-number-column.component.mjs +0 -54
  13. package/esm2022/lib/data-grid/columns/selection-column.component.mjs +0 -64
  14. package/esm2022/lib/data-grid/columns/text-column.component.mjs +0 -97
  15. package/esm2022/lib/data-grid/datagrid.component.mjs +0 -811
  16. package/esm2022/lib/data-grid/datagrid.events.mjs +0 -2
  17. package/esm2022/lib/data-grid/datagrid.module.mjs +0 -143
  18. package/esm2022/lib/data-grid/filters/filter.component.mjs +0 -39
  19. package/esm2022/lib/data-grid/templates/cell-template.component.mjs +0 -58
  20. package/esm2022/lib/data-grid/templates/detail-template.component.mjs +0 -51
  21. package/esm2022/lib/data-grid/templates/row-template.component.mjs +0 -48
  22. package/esm2022/lib/data-lov/data-lov-popup/data-lov-popup.component.mjs +0 -133
  23. package/esm2022/lib/data-lov/data-lov.component.mjs +0 -218
  24. package/esm2022/lib/data-lov/data-lov.module.mjs +0 -23
@@ -1,218 +0,0 @@
1
- import { AXDataSourceComponent, AXPopupService, AXSelectBoxComponent, AXValidatableComponent, AXValidation, } from '@acorex/components';
2
- import { AXConfig } from '@acorex/core';
3
- import { Component, ContentChild, ContentChildren, ElementRef, EventEmitter, Input, Output, QueryList, TemplateRef, ViewChild, ViewEncapsulation, } from '@angular/core';
4
- import { AXGridDataColumn } from '../data-grid/columns/column.component';
5
- import { AXDataLovPopupComponent } from './data-lov-popup/data-lov-popup.component';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "@acorex/components";
8
- export class AXLOVComponent extends AXValidatableComponent {
9
- popup;
10
- ref;
11
- _contentValidation;
12
- _validation;
13
- get validation() {
14
- return this._validation ? this._validation : this._contentValidation;
15
- }
16
- set validation(v) {
17
- this._validation = v;
18
- }
19
- componentName = 'lov';
20
- constructor(popup, ref) {
21
- super();
22
- this.popup = popup;
23
- this.ref = ref;
24
- }
25
- selectBox;
26
- dataSource;
27
- columns;
28
- rowTemplate;
29
- textField = '';
30
- allowSearch = true;
31
- valueField = '';
32
- hasChildField = 'null';
33
- allowNull = true;
34
- popupSize = 'md';
35
- pagination = true;
36
- selectedItems = [];
37
- paginationAutoPageSize = false;
38
- paginationPageSize = 20;
39
- // @Input()
40
- // selectedValues: any[] = [];
41
- maxConcurrentDatasourceRequests;
42
- blockLoadDebounceMillis;
43
- readonly = false;
44
- disabled = false;
45
- chipsWidth = '';
46
- size = 'md';
47
- caption;
48
- mode = 'single';
49
- placeholder;
50
- onSelectionChange = new EventEmitter();
51
- rtl = AXConfig.get('layout.rtl');
52
- multiLine = false;
53
- paginationPageSizeSelector = [10, 20];
54
- remoteOperation = true;
55
- headerCheckbox = false;
56
- focus() {
57
- this.selectBox.focus();
58
- }
59
- refresh() {
60
- this.selectBox.refresh();
61
- }
62
- handleButtonClick() {
63
- this.open();
64
- }
65
- ngOnInit() {
66
- if (this.rtl == null) {
67
- this.rtl =
68
- window
69
- .getComputedStyle(this.ref.nativeElement, null)
70
- .getPropertyValue('direction') === 'rtl';
71
- }
72
- // this.selectVal = this.selectedValues;
73
- this.onSelectionChange.subscribe((c) => {
74
- this.clearValidationStyle(this.ref.nativeElement);
75
- });
76
- }
77
- ngAfterContentInit() {
78
- this.initValidation(this.ref, 'selectedItems', this.validation);
79
- }
80
- handleSelectChange(e) {
81
- this.onSelectionChange.emit({
82
- data: this.selectedItems,
83
- component: this,
84
- htmlElement: this.ref.nativeElement,
85
- });
86
- }
87
- open() {
88
- return new Promise((resolve) => {
89
- this.selectBox.dropdown.close();
90
- this.popup
91
- .open(AXDataLovPopupComponent, {
92
- size: this.popupSize,
93
- // closable: false,
94
- data: {
95
- remoteOperation: this.remoteOperation,
96
- suppressRowClickSelection: this.mode === 'multiple' ? true : false,
97
- dataSource: this.dataSource,
98
- selectionMode: this.mode,
99
- columns: this.columns.toArray(),
100
- // selectedItems: this.selectedValues,
101
- selectedItems: this.selectedItems,
102
- keyField: this.valueField,
103
- allowNull: this.allowNull,
104
- hasChildField: this.hasChildField,
105
- rtl: this.rtl,
106
- pagination: this.pagination,
107
- paginationAutoPageSize: this.paginationAutoPageSize,
108
- paginationPageSize: this.paginationPageSize,
109
- maxConcurrentDatasourceRequests: this.maxConcurrentDatasourceRequests,
110
- blockLoadDebounceMillis: this.blockLoadDebounceMillis,
111
- paginationPageSizeSelector: this.paginationPageSizeSelector,
112
- headerCheckbox: this.headerCheckbox,
113
- },
114
- title: this.caption,
115
- // size: this.size,
116
- })
117
- .then((c) => {
118
- if (c.data) {
119
- // this.selectedValues = [];
120
- this.selectedItems = [];
121
- c.data.forEach((elm) => {
122
- this.selectedItems.push(elm);
123
- });
124
- // this.selectedItems = c.data;
125
- // this.selectBox.refresh();
126
- this.onSelectionChange.emit({
127
- data: this.selectedItems,
128
- component: this,
129
- htmlElement: this.ref.nativeElement,
130
- });
131
- if (resolve) {
132
- resolve(c.data);
133
- }
134
- }
135
- else {
136
- if (resolve) {
137
- resolve(this.selectedItems);
138
- }
139
- }
140
- this.selectBox.refresh();
141
- });
142
- });
143
- }
144
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.7", ngImport: i0, type: AXLOVComponent, deps: [{ token: i1.AXPopupService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
145
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.7", type: AXLOVComponent, selector: "ax-lov", inputs: { validation: "validation", textField: "textField", allowSearch: "allowSearch", valueField: "valueField", hasChildField: "hasChildField", allowNull: "allowNull", popupSize: "popupSize", pagination: "pagination", selectedItems: "selectedItems", paginationAutoPageSize: "paginationAutoPageSize", paginationPageSize: "paginationPageSize", maxConcurrentDatasourceRequests: "maxConcurrentDatasourceRequests", blockLoadDebounceMillis: "blockLoadDebounceMillis", readonly: "readonly", disabled: "disabled", chipsWidth: "chipsWidth", size: "size", caption: "caption", mode: "mode", placeholder: "placeholder", rtl: "rtl", multiLine: "multiLine", paginationPageSizeSelector: "paginationPageSizeSelector", remoteOperation: "remoteOperation", headerCheckbox: "headerCheckbox" }, outputs: { onSelectionChange: "onSelectionChange" }, host: { styleAttribute: "width: 100%" }, providers: [{ provide: AXValidatableComponent, useExisting: AXLOVComponent }], queries: [{ propertyName: "_contentValidation", first: true, predicate: AXValidation, descendants: true, static: true }, { propertyName: "dataSource", first: true, predicate: AXDataSourceComponent, descendants: true, static: true }, { propertyName: "rowTemplate", first: true, predicate: ["itemTemplate"], descendants: true, static: true }, { propertyName: "columns", predicate: AXGridDataColumn }], viewQueries: [{ propertyName: "selectBox", first: true, predicate: ["selectBox"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<ax-select-box\n [rowInputTemplate]=\"rowTemplate\"\n [multiLine]=\"multiLine\"\n [rtl]=\"rtl\"\n [allowSearch]=\"allowSearch\"\n #selectBox\n [showDropDownButton]=\"false\"\n [allowNull]=\"allowNull\"\n [remoteOperation]=\"remoteOperation\"\n [placeholder]=\"placeholder\"\n [size]=\"size\"\n [textField]=\"textField\"\n [valueField]=\"valueField\"\n [disabled]=\"disabled\"\n [mode]=\"mode\"\n [(selectedItems)]=\"selectedItems\"\n (selectionChanged)=\"handleSelectChange($event)\"\n [dataSource]=\"dataSource\"\n>\n <ng-container start>\n <ng-content select=\"[start]\"> </ng-content>\n </ng-container>\n <ng-container end>\n <ax-button\n icon=\"far fa-bars icon\"\n [disabled]=\"disabled\"\n type=\"light blank\"\n (click)=\"handleButtonClick()\"\n end\n [tabIndex]=\"-1\"\n >\n </ax-button>\n <ng-content select=\"[end]\"> </ng-content>\n </ng-container>\n</ax-select-box>\n\n<!-- <ax-select-box2 [rtl]=\"rtl\" [allowSearch]=\"allowSearch\" #selectBox [showDropDownButton]=\"false\" [allowNull]=\"allowNull\"\n [remoteOperation]=\"true\" [placeholder]=\"placeholder\" [size]=\"size\" [textField]=\"textField\" [valueField]=\"valueField\"\n [disabled]=\"disabled\" [selectionMode]=\"mode\" (onValueChanged)=\"handleSelectChange($event)\" [dataSource]=\"dataSource\"\n [(value)]=\"selectedItems\" selectionDataMode=\"item\">\n <ng-container start>\n <ng-content select=\"[start]\">\n </ng-content>\n </ng-container>\n <ng-container end>\n <ax-button icon=\"far fa-bars icon\" [disabled]=\"disabled\" type=\"primary blank\" (click)=\"handleButtonClick()\" end\n [tabIndex]=\"-1\">\n </ax-button>\n <ng-content select=\"[end]\">\n </ng-content>\n </ng-container>\n</ax-select-box2> -->\n\n<!-- <div class=\"ax-lov-box\" [style.display]=\"mode=='hidden' ? 'none':'unset'\">\n <div class=\"ax-field-set\">\n <div class=\"ax-field-set-wrapper\" [ngClass]=\"{ 'no-label': !label }\">\n <fieldset [ngClass]=\"{ 'input-focused': isFocused, 'input-error': errorText }\">\n <legend *ngIf=\"label\">\n {{ label }}\n </legend>\n </fieldset>\n <input type=\"text\" [(ngModel)]=\"text\" [placeholder]=\"placeholder\" (keyup)=\"handleKeyEvent($event)\"\n (blur)=\"handleBlurEvent($event)\" (focus)=\"handleFocusEvent($event)\" class=\"ax-text-box\" disabled />\n <div class=\"ax-field-set-button\">\n <button *ngIf=\"text && allowClear\" type=\"button\" class=\"btn btn-light\" (click)=\"clearText()\">\n <i class=\"far fa-times\"></i>\n </button>\n <button type=\"button\" class=\" btn btn-primary\" (click)=\"handleButtonClick($event)\">\n <i class=\"far fa-check-circle\"></i>\n </button>\n </div>\n </div>\n </div>\n <div class=\"validation-text\" *ngIf=\"errorText\">\n {{ errorText }}\n </div>\n\n</div> -->\n", dependencies: [{ kind: "component", type: i1.AXButtonComponent, selector: "ax-button", inputs: ["type", "icon", "submitBehavior", "cancelBehavior", "block", "loading", "selected"] }, { kind: "component", type: i1.AXSelectBoxComponent, selector: "ax-select-box", inputs: ["showDropDownButton", "rowInputTemplate", "showCheckBox", "readonly", "rtl", "disabled", "placeholder", "size", "allowNull", "textAlign", "bufferSize", "remoteOperation", "fitParent", "dropdownWidth", "multiLine", "onDemandTranslate", "dataSource", "validation", "disabledCallback", "allowSearch", "textField", "valueField", "disabledField", "mode", "items", "selectedItems", "selectedValues"], outputs: ["dropdownToggle", "itemsChange", "onBlur", "onFocus", "selectionChanged", "selectedItemsChange", "selectedValuesChange"] }], encapsulation: i0.ViewEncapsulation.None });
146
- }
147
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.7", ngImport: i0, type: AXLOVComponent, decorators: [{
148
- type: Component,
149
- args: [{ selector: 'ax-lov', encapsulation: ViewEncapsulation.None, host: { style: 'width: 100%' }, providers: [{ provide: AXValidatableComponent, useExisting: AXLOVComponent }], template: "<ax-select-box\n [rowInputTemplate]=\"rowTemplate\"\n [multiLine]=\"multiLine\"\n [rtl]=\"rtl\"\n [allowSearch]=\"allowSearch\"\n #selectBox\n [showDropDownButton]=\"false\"\n [allowNull]=\"allowNull\"\n [remoteOperation]=\"remoteOperation\"\n [placeholder]=\"placeholder\"\n [size]=\"size\"\n [textField]=\"textField\"\n [valueField]=\"valueField\"\n [disabled]=\"disabled\"\n [mode]=\"mode\"\n [(selectedItems)]=\"selectedItems\"\n (selectionChanged)=\"handleSelectChange($event)\"\n [dataSource]=\"dataSource\"\n>\n <ng-container start>\n <ng-content select=\"[start]\"> </ng-content>\n </ng-container>\n <ng-container end>\n <ax-button\n icon=\"far fa-bars icon\"\n [disabled]=\"disabled\"\n type=\"light blank\"\n (click)=\"handleButtonClick()\"\n end\n [tabIndex]=\"-1\"\n >\n </ax-button>\n <ng-content select=\"[end]\"> </ng-content>\n </ng-container>\n</ax-select-box>\n\n<!-- <ax-select-box2 [rtl]=\"rtl\" [allowSearch]=\"allowSearch\" #selectBox [showDropDownButton]=\"false\" [allowNull]=\"allowNull\"\n [remoteOperation]=\"true\" [placeholder]=\"placeholder\" [size]=\"size\" [textField]=\"textField\" [valueField]=\"valueField\"\n [disabled]=\"disabled\" [selectionMode]=\"mode\" (onValueChanged)=\"handleSelectChange($event)\" [dataSource]=\"dataSource\"\n [(value)]=\"selectedItems\" selectionDataMode=\"item\">\n <ng-container start>\n <ng-content select=\"[start]\">\n </ng-content>\n </ng-container>\n <ng-container end>\n <ax-button icon=\"far fa-bars icon\" [disabled]=\"disabled\" type=\"primary blank\" (click)=\"handleButtonClick()\" end\n [tabIndex]=\"-1\">\n </ax-button>\n <ng-content select=\"[end]\">\n </ng-content>\n </ng-container>\n</ax-select-box2> -->\n\n<!-- <div class=\"ax-lov-box\" [style.display]=\"mode=='hidden' ? 'none':'unset'\">\n <div class=\"ax-field-set\">\n <div class=\"ax-field-set-wrapper\" [ngClass]=\"{ 'no-label': !label }\">\n <fieldset [ngClass]=\"{ 'input-focused': isFocused, 'input-error': errorText }\">\n <legend *ngIf=\"label\">\n {{ label }}\n </legend>\n </fieldset>\n <input type=\"text\" [(ngModel)]=\"text\" [placeholder]=\"placeholder\" (keyup)=\"handleKeyEvent($event)\"\n (blur)=\"handleBlurEvent($event)\" (focus)=\"handleFocusEvent($event)\" class=\"ax-text-box\" disabled />\n <div class=\"ax-field-set-button\">\n <button *ngIf=\"text && allowClear\" type=\"button\" class=\"btn btn-light\" (click)=\"clearText()\">\n <i class=\"far fa-times\"></i>\n </button>\n <button type=\"button\" class=\" btn btn-primary\" (click)=\"handleButtonClick($event)\">\n <i class=\"far fa-check-circle\"></i>\n </button>\n </div>\n </div>\n </div>\n <div class=\"validation-text\" *ngIf=\"errorText\">\n {{ errorText }}\n </div>\n\n</div> -->\n" }]
150
- }], ctorParameters: () => [{ type: i1.AXPopupService }, { type: i0.ElementRef }], propDecorators: { _contentValidation: [{
151
- type: ContentChild,
152
- args: [AXValidation, { static: true }]
153
- }], validation: [{
154
- type: Input
155
- }], selectBox: [{
156
- type: ViewChild,
157
- args: ['selectBox', { static: true }]
158
- }], dataSource: [{
159
- type: ContentChild,
160
- args: [AXDataSourceComponent, { static: true }]
161
- }], columns: [{
162
- type: ContentChildren,
163
- args: [AXGridDataColumn]
164
- }], rowTemplate: [{
165
- type: ContentChild,
166
- args: ['itemTemplate', { static: true }]
167
- }], textField: [{
168
- type: Input
169
- }], allowSearch: [{
170
- type: Input
171
- }], valueField: [{
172
- type: Input
173
- }], hasChildField: [{
174
- type: Input
175
- }], allowNull: [{
176
- type: Input
177
- }], popupSize: [{
178
- type: Input
179
- }], pagination: [{
180
- type: Input
181
- }], selectedItems: [{
182
- type: Input
183
- }], paginationAutoPageSize: [{
184
- type: Input
185
- }], paginationPageSize: [{
186
- type: Input
187
- }], maxConcurrentDatasourceRequests: [{
188
- type: Input
189
- }], blockLoadDebounceMillis: [{
190
- type: Input
191
- }], readonly: [{
192
- type: Input
193
- }], disabled: [{
194
- type: Input
195
- }], chipsWidth: [{
196
- type: Input
197
- }], size: [{
198
- type: Input
199
- }], caption: [{
200
- type: Input
201
- }], mode: [{
202
- type: Input
203
- }], placeholder: [{
204
- type: Input
205
- }], onSelectionChange: [{
206
- type: Output
207
- }], rtl: [{
208
- type: Input
209
- }], multiLine: [{
210
- type: Input
211
- }], paginationPageSizeSelector: [{
212
- type: Input
213
- }], remoteOperation: [{
214
- type: Input
215
- }], headerCheckbox: [{
216
- type: Input
217
- }] } });
218
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1sb3YuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9kYXRhLWdyaWQvc3JjL2xpYi9kYXRhLWxvdi9kYXRhLWxvdi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2RhdGEtZ3JpZC9zcmMvbGliL2RhdGEtbG92L2RhdGEtbG92LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFJTCxxQkFBcUIsRUFFckIsY0FBYyxFQUNkLG9CQUFvQixFQUNwQixzQkFBc0IsRUFDdEIsWUFBWSxHQUNiLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN4QyxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixlQUFlLEVBQ2YsVUFBVSxFQUNWLFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLFNBQVMsRUFDVCxXQUFXLEVBQ1gsU0FBUyxFQUNULGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQzs7O0FBU3BGLE1BQU0sT0FBTyxjQUNYLFNBQVEsc0JBQXNCO0lBaUJWO0lBQStCO0lBYjNDLGtCQUFrQixDQUFlO0lBQ2pDLFdBQVcsQ0FBZTtJQUVsQyxJQUNXLFVBQVU7UUFDbkIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUM7SUFDdkUsQ0FBQztJQUNELElBQVcsVUFBVSxDQUFDLENBQWU7UUFDbkMsSUFBSSxDQUFDLFdBQVcsR0FBRyxDQUFDLENBQUM7SUFDdkIsQ0FBQztJQUVELGFBQWEsR0FBRyxL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ZTtzQkFEZCxLQUFLO2dCQUlOLGNBQWM7c0JBRGIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFYQmFzZUlucHV0Q29tcG9uZW50LFxuICBBWEJhc2VTaXphYmxlQ29tcG9uZW50LFxuICBBWERhdGFFdmVudCxcbiAgQVhEYXRhU291cmNlQ29tcG9uZW50LFxuICBBWEVsZW1lbnRTaXplLFxuICBBWFBvcHVwU2VydmljZSxcbiAgQVhTZWxlY3RCb3hDb21wb25lbnQsXG4gIEFYVmFsaWRhdGFibGVDb21wb25lbnQsXG4gIEFYVmFsaWRhdGlvbixcbn0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzJztcbmltcG9ydCB7IEFYQ29uZmlnIH0gZnJvbSAnQGFjb3JleC9jb3JlJztcbmltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgQ29udGVudENoaWxkLFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgUXVlcnlMaXN0LFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NoaWxkLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWEdyaWREYXRhQ29sdW1uIH0gZnJvbSAnLi4vZGF0YS1ncmlkL2NvbHVtbnMvY29sdW1uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBWERhdGFMb3ZQb3B1cENvbXBvbmVudCB9IGZyb20gJy4vZGF0YS1sb3YtcG9wdXAvZGF0YS1sb3YtcG9wdXAuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXgtbG92JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RhdGEtbG92LmNvbXBvbmVudC5odG1sJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgaG9zdDogeyBzdHlsZTogJ3dpZHRoOiAxMDAlJyB9LFxuICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IEFYVmFsaWRhdGFibGVDb21wb25lbnQsIHVzZUV4aXN0aW5nOiBBWExPVkNvbXBvbmVudCB9XSxcbn0pXG5leHBvcnQgY2xhc3MgQVhMT1ZDb21wb25lbnRcbiAgZXh0ZW5kcyBBWFZhbGlkYXRhYmxlQ29tcG9uZW50XG4gIGltcGxlbWVudHMgQVhCYXNlU2l6YWJsZUNvbXBvbmVudCwgQVhCYXNlSW5wdXRDb21wb25lbnRcbntcbiAgQENvbnRlbnRDaGlsZChBWFZhbGlkYXRpb24sIHsgc3RhdGljOiB0cnVlIH0pXG4gIHByaXZhdGUgX2NvbnRlbnRWYWxpZGF0aW9uOiBBWFZhbGlkYXRpb247XG4gIHByaXZhdGUgX3ZhbGlkYXRpb246IEFYVmFsaWRhdGlvbjtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgZ2V0IHZhbGlkYXRpb24oKTogQVhWYWxpZGF0aW9uIHtcbiAgICByZXR1cm4gdGhpcy5fdmFsaWRhdGlvbiA/IHRoaXMuX3ZhbGlkYXRpb24gOiB0aGlzLl9jb250ZW50VmFsaWRhdGlvbjtcbiAgfVxuICBwdWJsaWMgc2V0IHZhbGlkYXRpb24odjogQVhWYWxpZGF0aW9uKSB7XG4gICAgdGhpcy5fdmFsaWRhdGlvbiA9IHY7XG4gIH1cblxuICBjb21wb25lbnROYW1lID0gJ2xvdic7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBwb3B1cDogQVhQb3B1cFNlcnZpY2UsIHByaXZhdGUgcmVmOiBFbGVtZW50UmVmKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIEBWaWV3Q2hpbGQoJ3NlbGVjdEJveCcsIHsgc3RhdGljOiB0cnVlIH0pXG4gIHNlbGVjdEJveDogQVhTZWxlY3RCb3hDb21wb25lbnQ7XG5cbiAgQENvbnRlbnRDaGlsZChBWERhdGFTb3VyY2VDb21wb25lbnQsIHsgc3RhdGljOiB0cnVlIH0pXG4gIGRhdGFTb3VyY2U6IEFYRGF0YVNvdXJjZUNvbXBvbmVudDtcblxuICBAQ29udGVudENoaWxkcmVuKEFYR3JpZERhdGFDb2x1bW4pXG4gIHByaXZhdGUgY29sdW1uczogUXVlcnlMaXN0PEFYR3JpZERhdGFDb2x1bW4+O1xuXG4gIEBDb250ZW50Q2hpbGQoJ2l0ZW1UZW1wbGF0ZScsIHsgc3RhdGljOiB0cnVlIH0pXG4gIHJvd1RlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIEBJbnB1dCgpXG4gIHRleHRGaWVsZDogc3RyaW5nID0gJyc7XG5cbiAgQElucHV0KClcbiAgYWxsb3dTZWFyY2g6IGJvb2xlYW4gPSB0cnVlO1xuXG4gIEBJbnB1dCgpXG4gIHZhbHVlRmllbGQ6IHN0cmluZyA9ICcnO1xuXG4gIEBJbnB1dCgpXG4gIGhhc0NoaWxkRmllbGQ6IHN0cmluZyA9ICdudWxsJztcblxuICBASW5wdXQoKVxuICBhbGxvd051bGw6IGJvb2xlYW4gPSB0cnVlO1xuXG4gIEBJbnB1dCgpXG4gIHBvcHVwU2l6ZTogJ3NtJyB8ICdtZCcgfCAnbGcnIHwgJ2Z1bGwnID0gJ21kJztcblxuICBASW5wdXQoKVxuICBwYWdpbmF0aW9uOiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KClcbiAgc2VsZWN0ZWRJdGVtczogYW55W10gPSBbXTtcblxuICBASW5wdXQoKVxuICBwYWdpbmF0aW9uQXV0b1BhZ2VTaXplID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgcGFnaW5hdGlvblBhZ2VTaXplOiBudW1iZXIgPSAyMDtcblxuICAvLyBASW5wdXQoKVxuICAvLyBzZWxlY3RlZFZhbHVlczogYW55W10gPSBbXTtcblxuICBASW5wdXQoKVxuICBtYXhDb25jdXJyZW50RGF0YXNvdXJjZVJlcXVlc3RzOiBudW1iZXI7XG5cbiAgQElucHV0KClcbiAgYmxvY2tMb2FkRGVib3VuY2VNaWxsaXM6IG51bWJlcjtcblxuICBASW5wdXQoKVxuICByZWFkb25seTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgY2hpcHNXaWR0aDogc3RyaW5nID0gJyc7XG5cbiAgQElucHV0KClcbiAgc2l6ZTogQVhFbGVtZW50U2l6ZSA9ICdtZCc7XG5cbiAgQElucHV0KClcbiAgY2FwdGlvbjogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIG1vZGU6ICdzaW5nbGUnIHwgJ211bHRpcGxlJyA9ICdzaW5nbGUnO1xuXG4gIEBJbnB1dCgpXG4gIHBsYWNlaG9sZGVyOiBzdHJpbmc7XG5cbiAgQE91dHB1dCgpXG4gIG9uU2VsZWN0aW9uQ2hhbmdlOiBFdmVudEVtaXR0ZXI8QVhEYXRhRXZlbnQ8YW55Pj4gPSBuZXcgRXZlbnRFbWl0dGVyPFxuICAgIEFYRGF0YUV2ZW50PGFueT5cbiAgPigpO1xuXG4gIEBJbnB1dCgpXG4gIHJ0bDogYm9vbGVhbiA9IEFYQ29uZmlnLmdldCgnbGF5b3V0LnJ0bCcpO1xuXG4gIEBJbnB1dCgpIG11bHRpTGluZSA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIHBhZ2luYXRpb25QYWdlU2l6ZVNlbGVjdG9yOiBudW1iZXJbXSB8IGJvb2xlYW4gPSBbMTAsIDIwXTtcblxuICBASW5wdXQoKVxuICByZW1vdGVPcGVyYXRpb24gPSB0cnVlO1xuXG4gIEBJbnB1dCgpXG4gIGhlYWRlckNoZWNrYm94ID0gZmFsc2U7XG5cbiAgZm9jdXMoKTogdm9pZCB7XG4gICAgdGhpcy5zZWxlY3RCb3guZm9jdXMoKTtcbiAgfVxuXG4gIHJlZnJlc2goKSB7XG4gICAgdGhpcy5zZWxlY3RCb3gucmVmcmVzaCgpO1xuICB9XG5cbiAgaGFuZGxlQnV0dG9uQ2xpY2soKSB7XG4gICAgdGhpcy5vcGVuKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5ydGwgPT0gbnVsbCkge1xuICAgICAgdGhpcy5ydGwgPVxuICAgICAgICB3aW5kb3dcbiAgICAgICAgICAuZ2V0Q29tcHV0ZWRTdHlsZSh0aGlzLnJlZi5uYXRpdmVFbGVtZW50LCBudWxsKVxuICAgICAgICAgIC5nZXRQcm9wZXJ0eVZhbHVlKCdkaXJlY3Rpb24nKSA9PT0gJ3J0bCc7XG4gICAgfVxuICAgIC8vICB0aGlzLnNlbGVjdFZhbCA9IHRoaXMuc2VsZWN0ZWRWYWx1ZXM7XG4gICAgdGhpcy5vblNlbGVjdGlvbkNoYW5nZS5zdWJzY3JpYmUoKGMpID0+IHtcbiAgICAgIHRoaXMuY2xlYXJWYWxpZGF0aW9uU3R5bGUodGhpcy5yZWYubmF0aXZlRWxlbWVudCk7XG4gICAgfSk7XG4gIH1cblxuICBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5pbml0VmFsaWRhdGlvbih0aGlzLnJlZiwgJ3NlbGVjdGVkSXRlbXMnLCB0aGlzLnZhbGlkYXRpb24pO1xuICB9XG5cbiAgaGFuZGxlU2VsZWN0Q2hhbmdlKGUpIHtcbiAgICB0aGlzLm9uU2VsZWN0aW9uQ2hhbmdlLmVtaXQoe1xuICAgICAgZGF0YTogdGhpcy5zZWxlY3RlZEl0ZW1zLFxuICAgICAgY29tcG9uZW50OiB0aGlzLFxuICAgICAgaHRtbEVsZW1lbnQ6IHRoaXMucmVmLm5hdGl2ZUVsZW1lbnQsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgb3BlbigpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xuICAgICAgdGhpcy5zZWxlY3RCb3guZHJvcGRvd24uY2xvc2UoKTtcbiAgICAgIHRoaXMucG9wdXBcbiAgICAgICAgLm9wZW4oQVhEYXRhTG92UG9wdXBDb21wb25lbnQsIHtcbiAgICAgICAgICBzaXplOiB0aGlzLnBvcHVwU2l6ZSxcbiAgICAgICAgICAvLyAgIGNsb3NhYmxlOiBmYWxzZSxcbiAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICByZW1vdGVPcGVyYXRpb246IHRoaXMucmVtb3RlT3BlcmF0aW9uLFxuICAgICAgICAgICAgc3VwcHJlc3NSb3dDbGlja1NlbGVjdGlvbjogdGhpcy5tb2RlID09PSAnbXVsdGlwbGUnID8gdHJ1ZSA6IGZhbHNlLFxuICAgICAgICAgICAgZGF0YVNvdXJjZTogdGhpcy5kYXRhU291cmNlLFxuICAgICAgICAgICAgc2VsZWN0aW9uTW9kZTogdGhpcy5tb2RlLFxuICAgICAgICAgICAgY29sdW1uczogdGhpcy5jb2x1bW5zLnRvQXJyYXkoKSxcbiAgICAgICAgICAgIC8vICBzZWxlY3RlZEl0ZW1zOiB0aGlzLnNlbGVjdGVkVmFsdWVzLFxuICAgICAgICAgICAgc2VsZWN0ZWRJdGVtczogdGhpcy5zZWxlY3RlZEl0ZW1zLFxuICAgICAgICAgICAga2V5RmllbGQ6IHRoaXMudmFsdWVGaWVsZCxcbiAgICAgICAgICAgIGFsbG93TnVsbDogdGhpcy5hbGxvd051bGwsXG4gICAgICAgICAgICBoYXNDaGlsZEZpZWxkOiB0aGlzLmhhc0NoaWxkRmllbGQsXG4gICAgICAgICAgICBydGw6IHRoaXMucnRsLFxuICAgICAgICAgICAgcGFnaW5hdGlvbjogdGhpcy5wYWdpbmF0aW9uLFxuICAgICAgICAgICAgcGFnaW5hdGlvbkF1dG9QYWdlU2l6ZTogdGhpcy5wYWdpbmF0aW9uQXV0b1BhZ2VTaXplLFxuICAgICAgICAgICAgcGFnaW5hdGlvblBhZ2VTaXplOiB0aGlzLnBhZ2luYXRpb25QYWdlU2l6ZSxcbiAgICAgICAgICAgIG1heENvbmN1cnJlbnREYXRhc291cmNlUmVxdWVzdHM6XG4gICAgICAgICAgICAgIHRoaXMubWF4Q29uY3VycmVudERhdGFzb3VyY2VSZXF1ZXN0cyxcbiAgICAgICAgICAgIGJsb2NrTG9hZERlYm91bmNlTWlsbGlzOiB0aGlzLmJsb2NrTG9hZERlYm91bmNlTWlsbGlzLFxuICAgICAgICAgICAgcGFnaW5hdGlvblBhZ2VTaXplU2VsZWN0b3I6IHRoaXMucGFnaW5hdGlvblBhZ2VTaXplU2VsZWN0b3IsXG4gICAgICAgICAgICBoZWFkZXJDaGVja2JveDogdGhpcy5oZWFkZXJDaGVja2JveCxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHRpdGxlOiB0aGlzLmNhcHRpb24sXG4gICAgICAgICAgLy8gc2l6ZTogdGhpcy5zaXplLFxuICAgICAgICB9KVxuICAgICAgICAudGhlbigoYykgPT4ge1xuICAgICAgICAgIGlmIChjLmRhdGEpIHtcbiAgICAgICAgICAgIC8vIHRoaXMuc2VsZWN0ZWRWYWx1ZXMgPSBbXTtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtcyA9IFtdO1xuICAgICAgICAgICAgYy5kYXRhLmZvckVhY2goKGVsbSkgPT4ge1xuICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbXMucHVzaChlbG0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAvLyAgdGhpcy5zZWxlY3RlZEl0ZW1zID0gYy5kYXRhO1xuICAgICAgICAgICAgLy8gIHRoaXMuc2VsZWN0Qm94LnJlZnJlc2goKTtcbiAgICAgICAgICAgIHRoaXMub25TZWxlY3Rpb25DaGFuZ2UuZW1pdCh7XG4gICAgICAgICAgICAgIGRhdGE6IHRoaXMuc2VsZWN0ZWRJdGVtcyxcbiAgICAgICAgICAgICAgY29tcG9uZW50OiB0aGlzLFxuICAgICAgICAgICAgICBodG1sRWxlbWVudDogdGhpcy5yZWYubmF0aXZlRWxlbWVudCxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgaWYgKHJlc29sdmUpIHtcbiAgICAgICAgICAgICAgcmVzb2x2ZShjLmRhdGEpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBpZiAocmVzb2x2ZSkge1xuICAgICAgICAgICAgICByZXNvbHZlKHRoaXMuc2VsZWN0ZWRJdGVtcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdGhpcy5zZWxlY3RCb3gucmVmcmVzaCgpO1xuICAgICAgICB9KTtcbiAgICB9KTtcbiAgfVxufVxuIiwiPGF4LXNlbGVjdC1ib3hcbiAgW3Jvd0lucHV0VGVtcGxhdGVdPVwicm93VGVtcGxhdGVcIlxuICBbbXVsdGlMaW5lXT1cIm11bHRpTGluZVwiXG4gIFtydGxdPVwicnRsXCJcbiAgW2FsbG93U2VhcmNoXT1cImFsbG93U2VhcmNoXCJcbiAgI3NlbGVjdEJveFxuICBbc2hvd0Ryb3BEb3duQnV0dG9uXT1cImZhbHNlXCJcbiAgW2FsbG93TnVsbF09XCJhbGxvd051bGxcIlxuICBbcmVtb3RlT3BlcmF0aW9uXT1cInJlbW90ZU9wZXJhdGlvblwiXG4gIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gIFtzaXplXT1cInNpemVcIlxuICBbdGV4dEZpZWxkXT1cInRleHRGaWVsZFwiXG4gIFt2YWx1ZUZpZWxkXT1cInZhbHVlRmllbGRcIlxuICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICBbbW9kZV09XCJtb2RlXCJcbiAgWyhzZWxlY3RlZEl0ZW1zKV09XCJzZWxlY3RlZEl0ZW1zXCJcbiAgKHNlbGVjdGlvbkNoYW5nZWQpPVwiaGFuZGxlU2VsZWN0Q2hhbmdlKCRldmVudClcIlxuICBbZGF0YVNvdXJjZV09XCJkYXRhU291cmNlXCJcbj5cbiAgPG5nLWNvbnRhaW5lciBzdGFydD5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbc3RhcnRdXCI+IDwvbmctY29udGVudD5cbiAgPC9uZy1jb250YWluZXI+XG4gIDxuZy1jb250YWluZXIgZW5kPlxuICAgIDxheC1idXR0b25cbiAgICAgIGljb249XCJmYXIgZmEtYmFycyBpY29uXCJcbiAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICB0eXBlPVwibGlnaHQgYmxhbmtcIlxuICAgICAgKGNsaWNrKT1cImhhbmRsZUJ1dHRvbkNsaWNrKClcIlxuICAgICAgZW5kXG4gICAgICBbdGFiSW5kZXhdPVwiLTFcIlxuICAgID5cbiAgICA8L2F4LWJ1dHRvbj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbZW5kXVwiPiA8L25nLWNvbnRlbnQ+XG4gIDwvbmctY29udGFpbmVyPlxuPC9heC1zZWxlY3QtYm94PlxuXG48IS0tIDxheC1zZWxlY3QtYm94MiBbcnRsXT1cInJ0bFwiIFthbGxvd1NlYXJjaF09XCJhbGxvd1NlYXJjaFwiICNzZWxlY3RCb3ggW3Nob3dEcm9wRG93bkJ1dHRvbl09XCJmYWxzZVwiIFthbGxvd051bGxdPVwiYWxsb3dOdWxsXCJcbiAgICBbcmVtb3RlT3BlcmF0aW9uXT1cInRydWVcIiBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIiBbc2l6ZV09XCJzaXplXCIgW3RleHRGaWVsZF09XCJ0ZXh0RmllbGRcIiBbdmFsdWVGaWVsZF09XCJ2YWx1ZUZpZWxkXCJcbiAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiBbc2VsZWN0aW9uTW9kZV09XCJtb2RlXCIgKG9uVmFsdWVDaGFuZ2VkKT1cImhhbmRsZVNlbGVjdENoYW5nZSgkZXZlbnQpXCIgW2RhdGFTb3VyY2VdPVwiZGF0YVNvdXJjZVwiXG4gICAgWyh2YWx1ZSldPVwic2VsZWN0ZWRJdGVtc1wiIHNlbGVjdGlvbkRhdGFNb2RlPVwiaXRlbVwiPlxuICAgIDxuZy1jb250YWluZXIgc3RhcnQ+XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltzdGFydF1cIj5cbiAgICAgICAgPC9uZy1jb250ZW50PlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXIgZW5kPlxuICAgICAgICA8YXgtYnV0dG9uIGljb249XCJmYXIgZmEtYmFycyBpY29uXCIgW2Rpc2FibGVkXT1cImRpc2FibGVkXCIgdHlwZT1cInByaW1hcnkgYmxhbmtcIiAoY2xpY2spPVwiaGFuZGxlQnV0dG9uQ2xpY2soKVwiIGVuZFxuICAgICAgICAgICAgW3RhYkluZGV4XT1cIi0xXCI+XG4gICAgICAgIDwvYXgtYnV0dG9uPlxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbZW5kXVwiPlxuICAgICAgICA8L25nLWNvbnRlbnQ+XG4gICAgPC9uZy1jb250YWluZXI+XG48L2F4LXNlbGVjdC1ib3gyPiAtLT5cblxuPCEtLSA8ZGl2IGNsYXNzPVwiYXgtbG92LWJveFwiIFtzdHlsZS5kaXNwbGF5XT1cIm1vZGU9PSdoaWRkZW4nID8gJ25vbmUnOid1bnNldCdcIj5cbiAgICA8ZGl2IGNsYXNzPVwiYXgtZmllbGQtc2V0XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJheC1maWVsZC1zZXQtd3JhcHBlclwiIFtuZ0NsYXNzXT1cInsgJ25vLWxhYmVsJzogIWxhYmVsIH1cIj5cbiAgICAgICAgICAgIDxmaWVsZHNldCBbbmdDbGFzc109XCJ7ICdpbnB1dC1mb2N1c2VkJzogaXNGb2N1c2VkLCAnaW5wdXQtZXJyb3InOiBlcnJvclRleHQgfVwiPlxuICAgICAgICAgICAgICAgIDxsZWdlbmQgKm5nSWY9XCJsYWJlbFwiPlxuICAgICAgICAgICAgICAgICAgICB7eyBsYWJlbCB9fVxuICAgICAgICAgICAgICAgIDwvbGVnZW5kPlxuICAgICAgICAgICAgPC9maWVsZHNldD5cbiAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIFsobmdNb2RlbCldPVwidGV4dFwiIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiIChrZXl1cCk9XCJoYW5kbGVLZXlFdmVudCgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAoYmx1cik9XCJoYW5kbGVCbHVyRXZlbnQoJGV2ZW50KVwiIChmb2N1cyk9XCJoYW5kbGVGb2N1c0V2ZW50KCRldmVudClcIiBjbGFzcz1cImF4LXRleHQtYm94XCIgZGlzYWJsZWQgLz5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1maWVsZC1zZXQtYnV0dG9uXCI+XG4gICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cInRleHQgJiYgYWxsb3dDbGVhclwiIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tbGlnaHRcIiAoY2xpY2spPVwiY2xlYXJUZXh0KClcIj5cbiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYXIgZmEtdGltZXNcIj48L2k+XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCIgYnRuIGJ0bi1wcmltYXJ5XCIgKGNsaWNrKT1cImhhbmRsZUJ1dHRvbkNsaWNrKCRldmVudClcIj5cbiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYXIgZmEtY2hlY2stY2lyY2xlXCI+PC9pPlxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJ2YWxpZGF0aW9uLXRleHRcIiAqbmdJZj1cImVycm9yVGV4dFwiPlxuICAgICAgICB7eyBlcnJvclRleHQgfX1cbiAgICA8L2Rpdj5cblxuPC9kaXY+IC0tPlxuIl19
@@ -1,23 +0,0 @@
1
- import { NgModule } from '@angular/core';
2
- import { CommonModule } from '@angular/common';
3
- import { AXLOVComponent } from './data-lov.component';
4
- import { FormsModule } from '@angular/forms';
5
- import { AXDataLovPopupComponent } from './data-lov-popup/data-lov-popup.component';
6
- import { AXDataGridModule } from '../data-grid/datagrid.module';
7
- import { AXDataSourceModule, AXButtonModule, AXToolbarModule, AXSearchBoxModule, AXSelectBoxModule } from '@acorex/components';
8
- import * as i0 from "@angular/core";
9
- export class AXLOVModule {
10
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.7", ngImport: i0, type: AXLOVModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
11
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.7", ngImport: i0, type: AXLOVModule, declarations: [AXLOVComponent, AXDataLovPopupComponent], imports: [CommonModule, FormsModule, AXDataGridModule, AXDataSourceModule, AXButtonModule, AXToolbarModule, AXSelectBoxModule, AXSearchBoxModule], exports: [AXLOVComponent, AXDataLovPopupComponent] });
12
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.7", ngImport: i0, type: AXLOVModule, imports: [CommonModule, FormsModule, AXDataGridModule, AXDataSourceModule, AXButtonModule, AXToolbarModule, AXSelectBoxModule, AXSearchBoxModule] });
13
- }
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.7", ngImport: i0, type: AXLOVModule, decorators: [{
15
- type: NgModule,
16
- args: [{
17
- declarations: [AXLOVComponent, AXDataLovPopupComponent],
18
- imports: [CommonModule, FormsModule, AXDataGridModule, AXDataSourceModule, AXButtonModule, AXToolbarModule, AXSelectBoxModule, AXSearchBoxModule],
19
- exports: [AXLOVComponent, AXDataLovPopupComponent],
20
- providers: []
21
- }]
22
- }] });
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1sb3YubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9kYXRhLWdyaWQvc3JjL2xpYi9kYXRhLWxvdi9kYXRhLWxvdi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNwRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsY0FBYyxFQUFFLGVBQWUsRUFBRSxpQkFBaUIsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDOztBQVMvSCxNQUFNLE9BQU8sV0FBVzt1R0FBWCxXQUFXO3dHQUFYLFdBQVcsaUJBTEwsY0FBYyxFQUFFLHVCQUF1QixhQUM1QyxZQUFZLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFFLGtCQUFrQixFQUFFLGNBQWMsRUFBRSxlQUFlLEVBQUUsaUJBQWlCLEVBQUUsaUJBQWlCLGFBQ3RJLGNBQWMsRUFBRSx1QkFBdUI7d0dBR3hDLFdBQVcsWUFKVixZQUFZLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFFLGtCQUFrQixFQUFFLGNBQWMsRUFBRSxlQUFlLEVBQUUsaUJBQWlCLEVBQUUsaUJBQWlCOzsyRkFJdkksV0FBVztrQkFOdkIsUUFBUTttQkFBQztvQkFDTixZQUFZLEVBQUUsQ0FBQyxjQUFjLEVBQUUsdUJBQXVCLENBQUM7b0JBQ3ZELE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsa0JBQWtCLEVBQUUsY0FBYyxFQUFFLGVBQWUsRUFBRSxpQkFBaUIsRUFBRSxpQkFBaUIsQ0FBQztvQkFDakosT0FBTyxFQUFFLENBQUMsY0FBYyxFQUFFLHVCQUF1QixDQUFDO29CQUNsRCxTQUFTLEVBQUUsRUFBRTtpQkFDaEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEFYTE9WQ29tcG9uZW50IH0gZnJvbSAnLi9kYXRhLWxvdi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBBWERhdGFMb3ZQb3B1cENvbXBvbmVudCB9IGZyb20gJy4vZGF0YS1sb3YtcG9wdXAvZGF0YS1sb3YtcG9wdXAuY29tcG9uZW50JztcbmltcG9ydCB7IEFYRGF0YUdyaWRNb2R1bGUgfSBmcm9tICcuLi9kYXRhLWdyaWQvZGF0YWdyaWQubW9kdWxlJztcbmltcG9ydCB7IEFYRGF0YVNvdXJjZU1vZHVsZSwgQVhCdXR0b25Nb2R1bGUsIEFYVG9vbGJhck1vZHVsZSwgQVhTZWFyY2hCb3hNb2R1bGUsIEFYU2VsZWN0Qm94TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzJztcblxuXG5ATmdNb2R1bGUoe1xuICAgIGRlY2xhcmF0aW9uczogW0FYTE9WQ29tcG9uZW50LCBBWERhdGFMb3ZQb3B1cENvbXBvbmVudF0sXG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgRm9ybXNNb2R1bGUsIEFYRGF0YUdyaWRNb2R1bGUsIEFYRGF0YVNvdXJjZU1vZHVsZSwgQVhCdXR0b25Nb2R1bGUsIEFYVG9vbGJhck1vZHVsZSwgQVhTZWxlY3RCb3hNb2R1bGUsIEFYU2VhcmNoQm94TW9kdWxlXSxcbiAgICBleHBvcnRzOiBbQVhMT1ZDb21wb25lbnQsIEFYRGF0YUxvdlBvcHVwQ29tcG9uZW50XSxcbiAgICBwcm92aWRlcnM6IFtdXG59KVxuZXhwb3J0IGNsYXNzIEFYTE9WTW9kdWxlIHsgfSJdfQ==