@acorex/data-grid 3.0.25 → 3.0.26
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/acorex-data-grid.d.ts +4 -4
- package/acorex-data-grid.metadata.json +1 -1
- package/bundles/acorex-data-grid.umd.js +1933 -1933
- package/bundles/acorex-data-grid.umd.js.map +1 -1
- package/bundles/acorex-data-grid.umd.min.js +1 -1
- package/bundles/acorex-data-grid.umd.min.js.map +1 -1
- package/esm2015/acorex-data-grid.js +4 -4
- package/esm2015/lib/data-grid/columns/check-column.component.js +104 -104
- package/esm2015/lib/data-grid/columns/column.component.js +204 -204
- package/esm2015/lib/data-grid/columns/command-column.component.js +103 -103
- package/esm2015/lib/data-grid/columns/date-column.component.js +114 -114
- package/esm2015/lib/data-grid/columns/row-number-column.component.js +39 -39
- package/esm2015/lib/data-grid/columns/selection-column.component.js +42 -42
- package/esm2015/lib/data-grid/columns/text-column.component.js +81 -81
- package/esm2015/lib/data-grid/datagrid.component.js +709 -709
- package/esm2015/lib/data-grid/datagrid.events.js +1 -1
- package/esm2015/lib/data-grid/datagrid.module.js +98 -98
- package/esm2015/lib/data-grid/filters/filter.component.js +25 -25
- package/esm2015/lib/data-grid/templates/cell-template.component.js +47 -47
- package/esm2015/lib/data-grid/templates/detail-template.component.js +45 -45
- package/esm2015/lib/data-grid/templates/row-template.component.js +40 -40
- package/esm2015/lib/data-lov/data-lov-popup/data-lov-popup.component.js +121 -121
- package/esm2015/lib/data-lov/data-lov.component.js +206 -206
- package/esm2015/lib/data-lov/data-lov.module.js +21 -21
- package/esm2015/public-api.js +17 -17
- package/esm5/acorex-data-grid.js +4 -4
- package/esm5/lib/data-grid/columns/check-column.component.js +102 -102
- package/esm5/lib/data-grid/columns/column.component.js +206 -206
- package/esm5/lib/data-grid/columns/command-column.component.js +98 -98
- package/esm5/lib/data-grid/columns/date-column.component.js +119 -119
- package/esm5/lib/data-grid/columns/row-number-column.component.js +42 -42
- package/esm5/lib/data-grid/columns/selection-column.component.js +46 -46
- package/esm5/lib/data-grid/columns/text-column.component.js +81 -81
- package/esm5/lib/data-grid/datagrid.component.js +767 -767
- package/esm5/lib/data-grid/datagrid.events.js +1 -1
- package/esm5/lib/data-grid/datagrid.module.js +101 -101
- package/esm5/lib/data-grid/filters/filter.component.js +16 -16
- package/esm5/lib/data-grid/templates/cell-template.component.js +46 -46
- package/esm5/lib/data-grid/templates/detail-template.component.js +49 -49
- package/esm5/lib/data-grid/templates/row-template.component.js +44 -44
- package/esm5/lib/data-lov/data-lov-popup/data-lov-popup.component.js +127 -127
- package/esm5/lib/data-lov/data-lov.component.js +216 -216
- package/esm5/lib/data-lov/data-lov.module.js +24 -24
- package/esm5/public-api.js +17 -17
- package/fesm2015/acorex-data-grid.js +1856 -1856
- package/fesm2015/acorex-data-grid.js.map +1 -1
- package/fesm5/acorex-data-grid.js +1935 -1935
- package/fesm5/acorex-data-grid.js.map +1 -1
- package/lib/data-grid/columns/check-column.component.d.ts +30 -30
- package/lib/data-grid/columns/column.component.d.ts +29 -29
- package/lib/data-grid/columns/command-column.component.d.ts +22 -22
- package/lib/data-grid/columns/date-column.component.d.ts +27 -27
- package/lib/data-grid/columns/row-number-column.component.d.ts +7 -7
- package/lib/data-grid/columns/selection-column.component.d.ts +8 -8
- package/lib/data-grid/columns/text-column.component.d.ts +20 -20
- package/lib/data-grid/datagrid.component.d.ts +129 -129
- package/lib/data-grid/datagrid.events.d.ts +20 -20
- package/lib/data-grid/datagrid.module.d.ts +3 -3
- package/lib/data-grid/filters/filter.component.d.ts +2 -2
- package/lib/data-grid/templates/cell-template.component.d.ts +17 -17
- package/lib/data-grid/templates/detail-template.component.d.ts +16 -16
- package/lib/data-grid/templates/row-template.component.d.ts +15 -15
- package/lib/data-lov/data-lov-popup/data-lov-popup.component.d.ts +29 -29
- package/lib/data-lov/data-lov.component.d.ts +39 -39
- package/lib/data-lov/data-lov.module.d.ts +2 -2
- package/package.json +26 -26
- package/public-api.d.ts +17 -17
@@ -1,102 +1,102 @@
|
|
1
|
-
import { __decorate, __extends, __metadata } from "tslib";
|
2
|
-
import { Component, ChangeDetectionStrategy, ViewChild, ViewContainerRef } from '@angular/core';
|
3
|
-
import { AXGridDataColumn } from './column.component';
|
4
|
-
var AXGridCheckColumn = /** @class */ (function (_super) {
|
5
|
-
__extends(AXGridCheckColumn, _super);
|
6
|
-
function AXGridCheckColumn() {
|
7
|
-
return _super.call(this) || this;
|
8
|
-
}
|
9
|
-
AXGridCheckColumn_1 = AXGridCheckColumn;
|
10
|
-
AXGridCheckColumn.prototype.render = function () {
|
11
|
-
var col = _super.prototype.render.call(this);
|
12
|
-
if (!col.cellRendererFramework) {
|
13
|
-
col.cellRendererFramework = BooleanRenderer;
|
14
|
-
}
|
15
|
-
if (this.allowFiltering) {
|
16
|
-
col.filterFramework = BooleanFilterRenderer;
|
17
|
-
}
|
18
|
-
return col;
|
19
|
-
};
|
20
|
-
var AXGridCheckColumn_1;
|
21
|
-
AXGridCheckColumn = AXGridCheckColumn_1 = __decorate([
|
22
|
-
Component({
|
23
|
-
selector: 'ax-check-column',
|
24
|
-
template: '',
|
25
|
-
providers: [{ provide: AXGridDataColumn, useExisting: AXGridCheckColumn_1 }],
|
26
|
-
changeDetection: ChangeDetectionStrategy.OnPush
|
27
|
-
}),
|
28
|
-
__metadata("design:paramtypes", [])
|
29
|
-
], AXGridCheckColumn);
|
30
|
-
return AXGridCheckColumn;
|
31
|
-
}(AXGridDataColumn));
|
32
|
-
export { AXGridCheckColumn };
|
33
|
-
var BooleanRenderer = /** @class */ (function () {
|
34
|
-
function BooleanRenderer() {
|
35
|
-
}
|
36
|
-
BooleanRenderer.prototype.agInit = function (params) {
|
37
|
-
this.value = params.value;
|
38
|
-
};
|
39
|
-
BooleanRenderer.prototype.refresh = function (params) {
|
40
|
-
this.value = params.value;
|
41
|
-
return true;
|
42
|
-
};
|
43
|
-
BooleanRenderer = __decorate([
|
44
|
-
Component({
|
45
|
-
template: "\n <ax-check-box [value]='value' readonly='true'></ax-check-box>\n ",
|
46
|
-
changeDetection: ChangeDetectionStrategy.OnPush
|
47
|
-
}),
|
48
|
-
__metadata("design:paramtypes", [])
|
49
|
-
], BooleanRenderer);
|
50
|
-
return BooleanRenderer;
|
51
|
-
}());
|
52
|
-
export { BooleanRenderer };
|
53
|
-
var BooleanFilterRenderer = /** @class */ (function () {
|
54
|
-
function BooleanFilterRenderer() {
|
55
|
-
this.value = null;
|
56
|
-
this.selectItem = [
|
57
|
-
{ value: 0, label: 'True' },
|
58
|
-
{ value: 1, label: 'False' },
|
59
|
-
];
|
60
|
-
}
|
61
|
-
BooleanFilterRenderer.prototype.agInit = function (params) {
|
62
|
-
this.params = params;
|
63
|
-
this.valueGetter = params.valueGetter;
|
64
|
-
};
|
65
|
-
BooleanFilterRenderer.prototype.isFilterActive = function () {
|
66
|
-
return this.value !== null && this.value !== undefined;
|
67
|
-
};
|
68
|
-
BooleanFilterRenderer.prototype.doesFilterPass = function (params) {
|
69
|
-
return this.value === this.valueGetter(params.node);
|
70
|
-
};
|
71
|
-
BooleanFilterRenderer.prototype.getModel = function () {
|
72
|
-
return { value: this.value };
|
73
|
-
};
|
74
|
-
BooleanFilterRenderer.prototype.setModel = function (model) {
|
75
|
-
this.value = model ? model.value : null;
|
76
|
-
};
|
77
|
-
BooleanFilterRenderer.prototype.ngAfterViewInit = function (params) {
|
78
|
-
var _this = this;
|
79
|
-
window.setTimeout(function () {
|
80
|
-
_this.input.element.nativeElement.focus();
|
81
|
-
});
|
82
|
-
};
|
83
|
-
BooleanFilterRenderer.prototype.onChange = function (newValue) {
|
84
|
-
if (this.value !== newValue) {
|
85
|
-
this.value = newValue;
|
86
|
-
this.params.filterChangedCallback();
|
87
|
-
}
|
88
|
-
};
|
89
|
-
__decorate([
|
90
|
-
ViewChild('input', { static: true, read: ViewContainerRef }),
|
91
|
-
__metadata("design:type", Object)
|
92
|
-
], BooleanFilterRenderer.prototype, "input", void 0);
|
93
|
-
BooleanFilterRenderer = __decorate([
|
94
|
-
Component({
|
95
|
-
template: "\n <ax-data-grid-filter>\n <ax-select-box\n label='Select Box'\n [items]='selectItem'\n ></ax-select-box>\n </ax-data-grid-filter>\n ",
|
96
|
-
changeDetection: ChangeDetectionStrategy.OnPush
|
97
|
-
})
|
98
|
-
], BooleanFilterRenderer);
|
99
|
-
return BooleanFilterRenderer;
|
100
|
-
}());
|
101
|
-
export { BooleanFilterRenderer };
|
102
|
-
//# sourceMappingURL=data:application/json;base64,
|
1
|
+
import { __decorate, __extends, __metadata } from "tslib";
|
2
|
+
import { Component, ChangeDetectionStrategy, ViewChild, ViewContainerRef } from '@angular/core';
|
3
|
+
import { AXGridDataColumn } from './column.component';
|
4
|
+
var AXGridCheckColumn = /** @class */ (function (_super) {
|
5
|
+
__extends(AXGridCheckColumn, _super);
|
6
|
+
function AXGridCheckColumn() {
|
7
|
+
return _super.call(this) || this;
|
8
|
+
}
|
9
|
+
AXGridCheckColumn_1 = AXGridCheckColumn;
|
10
|
+
AXGridCheckColumn.prototype.render = function () {
|
11
|
+
var col = _super.prototype.render.call(this);
|
12
|
+
if (!col.cellRendererFramework) {
|
13
|
+
col.cellRendererFramework = BooleanRenderer;
|
14
|
+
}
|
15
|
+
if (this.allowFiltering) {
|
16
|
+
col.filterFramework = BooleanFilterRenderer;
|
17
|
+
}
|
18
|
+
return col;
|
19
|
+
};
|
20
|
+
var AXGridCheckColumn_1;
|
21
|
+
AXGridCheckColumn = AXGridCheckColumn_1 = __decorate([
|
22
|
+
Component({
|
23
|
+
selector: 'ax-check-column',
|
24
|
+
template: '',
|
25
|
+
providers: [{ provide: AXGridDataColumn, useExisting: AXGridCheckColumn_1 }],
|
26
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
27
|
+
}),
|
28
|
+
__metadata("design:paramtypes", [])
|
29
|
+
], AXGridCheckColumn);
|
30
|
+
return AXGridCheckColumn;
|
31
|
+
}(AXGridDataColumn));
|
32
|
+
export { AXGridCheckColumn };
|
33
|
+
var BooleanRenderer = /** @class */ (function () {
|
34
|
+
function BooleanRenderer() {
|
35
|
+
}
|
36
|
+
BooleanRenderer.prototype.agInit = function (params) {
|
37
|
+
this.value = params.value;
|
38
|
+
};
|
39
|
+
BooleanRenderer.prototype.refresh = function (params) {
|
40
|
+
this.value = params.value;
|
41
|
+
return true;
|
42
|
+
};
|
43
|
+
BooleanRenderer = __decorate([
|
44
|
+
Component({
|
45
|
+
template: "\n <ax-check-box [value]='value' readonly='true'></ax-check-box>\n ",
|
46
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
47
|
+
}),
|
48
|
+
__metadata("design:paramtypes", [])
|
49
|
+
], BooleanRenderer);
|
50
|
+
return BooleanRenderer;
|
51
|
+
}());
|
52
|
+
export { BooleanRenderer };
|
53
|
+
var BooleanFilterRenderer = /** @class */ (function () {
|
54
|
+
function BooleanFilterRenderer() {
|
55
|
+
this.value = null;
|
56
|
+
this.selectItem = [
|
57
|
+
{ value: 0, label: 'True' },
|
58
|
+
{ value: 1, label: 'False' },
|
59
|
+
];
|
60
|
+
}
|
61
|
+
BooleanFilterRenderer.prototype.agInit = function (params) {
|
62
|
+
this.params = params;
|
63
|
+
this.valueGetter = params.valueGetter;
|
64
|
+
};
|
65
|
+
BooleanFilterRenderer.prototype.isFilterActive = function () {
|
66
|
+
return this.value !== null && this.value !== undefined;
|
67
|
+
};
|
68
|
+
BooleanFilterRenderer.prototype.doesFilterPass = function (params) {
|
69
|
+
return this.value === this.valueGetter(params.node);
|
70
|
+
};
|
71
|
+
BooleanFilterRenderer.prototype.getModel = function () {
|
72
|
+
return { value: this.value };
|
73
|
+
};
|
74
|
+
BooleanFilterRenderer.prototype.setModel = function (model) {
|
75
|
+
this.value = model ? model.value : null;
|
76
|
+
};
|
77
|
+
BooleanFilterRenderer.prototype.ngAfterViewInit = function (params) {
|
78
|
+
var _this = this;
|
79
|
+
window.setTimeout(function () {
|
80
|
+
_this.input.element.nativeElement.focus();
|
81
|
+
});
|
82
|
+
};
|
83
|
+
BooleanFilterRenderer.prototype.onChange = function (newValue) {
|
84
|
+
if (this.value !== newValue) {
|
85
|
+
this.value = newValue;
|
86
|
+
this.params.filterChangedCallback();
|
87
|
+
}
|
88
|
+
};
|
89
|
+
__decorate([
|
90
|
+
ViewChild('input', { static: true, read: ViewContainerRef }),
|
91
|
+
__metadata("design:type", Object)
|
92
|
+
], BooleanFilterRenderer.prototype, "input", void 0);
|
93
|
+
BooleanFilterRenderer = __decorate([
|
94
|
+
Component({
|
95
|
+
template: "\n <ax-data-grid-filter>\n <ax-select-box\n label='Select Box'\n [items]='selectItem'\n ></ax-select-box>\n </ax-data-grid-filter>\n ",
|
96
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
97
|
+
})
|
98
|
+
], BooleanFilterRenderer);
|
99
|
+
return BooleanFilterRenderer;
|
100
|
+
}());
|
101
|
+
export { BooleanFilterRenderer };
|
102
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2stY29sdW1uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhY29yZXgvZGF0YS1ncmlkLyIsInNvdXJjZXMiOlsibGliL2RhdGEtZ3JpZC9jb2x1bW5zL2NoZWNrLWNvbHVtbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxnQkFBZ0IsRUFDakIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFpQnREO0lBQXVDLHFDQUFnQjtJQUNyRDtlQUNFLGlCQUFPO0lBQ1QsQ0FBQzswQkFIVSxpQkFBaUI7SUFLNUIsa0NBQU0sR0FBTjtRQUNFLElBQU0sR0FBRyxHQUFHLGlCQUFNLE1BQU0sV0FBRSxDQUFDO1FBQzNCLElBQUksQ0FBQyxHQUFHLENBQUMscUJBQXFCLEVBQUU7WUFDOUIsR0FBRyxDQUFDLHFCQUFxQixHQUFHLGVBQWUsQ0FBQztTQUM3QztRQUNELElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRTtZQUN2QixHQUFHLENBQUMsZUFBZSxHQUFHLHFCQUFxQixDQUFDO1NBQzdDO1FBQ0QsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDOztJQWRVLGlCQUFpQjtRQVA3QixTQUFTLENBQUM7WUFDVCxRQUFRLEVBQUUsaUJBQWlCO1lBQzNCLFFBQVEsRUFBRSxFQUFFO1lBQ1osU0FBUyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLG1CQUFpQixFQUFFLENBQUM7WUFDMUUsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07U0FDaEQsQ0FBQzs7T0FFVyxpQkFBaUIsQ0FlN0I7SUFBRCx3QkFBQztDQUFBLEFBZkQsQ0FBdUMsZ0JBQWdCLEdBZXREO1NBZlksaUJBQWlCO0FBdUI5QjtJQUVFO0lBQWdCLENBQUM7SUFDakIsZ0NBQU0sR0FBTixVQUFPLE1BQTJCO1FBQ2hDLElBQUksQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQztJQUM1QixDQUFDO0lBQ0QsaUNBQU8sR0FBUCxVQUFRLE1BQTJCO1FBQ2pDLElBQUksQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUMxQixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFUVSxlQUFlO1FBTjNCLFNBQVMsQ0FBQztZQUNULFFBQVEsRUFBRSx5RUFFVDtZQUNELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO1NBQ2hELENBQUM7O09BQ1csZUFBZSxDQVUzQjtJQUFELHNCQUFDO0NBQUEsQUFWRCxJQVVDO1NBVlksZUFBZTtBQXVCNUI7SUFBQTtRQUNTLFVBQUssR0FBYSxJQUFJLENBQUM7UUFLOUIsZUFBVSxHQUFHO1lBQ1gsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUU7WUFDM0IsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUU7U0FDN0IsQ0FBQztJQWtDSixDQUFDO0lBakNDLHNDQUFNLEdBQU4sVUFBTyxNQUFxQjtRQUMxQixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUNyQixJQUFJLENBQUMsV0FBVyxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUM7SUFDeEMsQ0FBQztJQUVELDhDQUFjLEdBQWQ7UUFDRSxPQUFPLElBQUksQ0FBQyxLQUFLLEtBQUssSUFBSSxJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssU0FBUyxDQUFDO0lBQ3pELENBQUM7SUFFRCw4Q0FBYyxHQUFkLFVBQWUsTUFBNkI7UUFDMUMsT0FBTyxJQUFJLENBQUMsS0FBSyxLQUFLLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRCx3Q0FBUSxHQUFSO1FBQ0UsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUVELHdDQUFRLEdBQVIsVUFBUyxLQUFVO1FBQ2pCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDMUMsQ0FBQztJQUVELCtDQUFlLEdBQWYsVUFBZ0IsTUFBK0I7UUFBL0MsaUJBSUM7UUFIQyxNQUFNLENBQUMsVUFBVSxDQUFDO1lBQ2hCLEtBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUMzQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCx3Q0FBUSxHQUFSLFVBQVMsUUFBUTtRQUNmLElBQUksSUFBSSxDQUFDLEtBQUssS0FBSyxRQUFRLEVBQUU7WUFDM0IsSUFBSSxDQUFDLEtBQUssR0FBRyxRQUFRLENBQUM7WUFDdEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1NBQ3JDO0lBQ0gsQ0FBQztJQXRDNkQ7UUFBN0QsU0FBUyxDQUFDLE9BQU8sRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFLENBQUM7O3dEQUFjO0lBSmhFLHFCQUFxQjtRQVhqQyxTQUFTLENBQUM7WUFDVCxRQUFRLEVBQUUsc0tBT1Q7WUFDRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtTQUNoRCxDQUFDO09BQ1cscUJBQXFCLENBMkNqQztJQUFELDRCQUFDO0NBQUEsQUEzQ0QsSUEyQ0M7U0EzQ1kscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgVmlld0NoaWxkLFxuICBWaWV3Q29udGFpbmVyUmVmXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhHcmlkRGF0YUNvbHVtbiB9IGZyb20gJy4vY29sdW1uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJQ2VsbFJlbmRlcmVyQW5ndWxhckNvbXAsIElGaWx0ZXJBbmd1bGFyQ29tcCB9IGZyb20gJ2FnLWdyaWQtYW5ndWxhcic7XG5pbXBvcnQge1xuICBJQ2VsbFJlbmRlcmVyUGFyYW1zLFxuICBJRmlsdGVyUGFyYW1zLFxuICBSb3dOb2RlLFxuICBJRG9lc0ZpbHRlclBhc3NQYXJhbXMsXG4gIElBZnRlckd1aUF0dGFjaGVkUGFyYW1zXG59IGZyb20gJ2FnLWdyaWQtY29tbXVuaXR5JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXgtY2hlY2stY29sdW1uJyxcbiAgdGVtcGxhdGU6ICcnLFxuICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IEFYR3JpZERhdGFDb2x1bW4sIHVzZUV4aXN0aW5nOiBBWEdyaWRDaGVja0NvbHVtbiB9XSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5cbmV4cG9ydCBjbGFzcyBBWEdyaWRDaGVja0NvbHVtbiBleHRlbmRzIEFYR3JpZERhdGFDb2x1bW4ge1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgcmVuZGVyKCkge1xuICAgIGNvbnN0IGNvbCA9IHN1cGVyLnJlbmRlcigpO1xuICAgIGlmICghY29sLmNlbGxSZW5kZXJlckZyYW1ld29yaykge1xuICAgICAgY29sLmNlbGxSZW5kZXJlckZyYW1ld29yayA9IEJvb2xlYW5SZW5kZXJlcjtcbiAgICB9XG4gICAgaWYgKHRoaXMuYWxsb3dGaWx0ZXJpbmcpIHtcbiAgICAgIGNvbC5maWx0ZXJGcmFtZXdvcmsgPSBCb29sZWFuRmlsdGVyUmVuZGVyZXI7XG4gICAgfVxuICAgIHJldHVybiBjb2w7XG4gIH1cbn1cblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlOiBgXG4gICAgPGF4LWNoZWNrLWJveCBbdmFsdWVdPSd2YWx1ZScgcmVhZG9ubHk9J3RydWUnPjwvYXgtY2hlY2stYm94PlxuICBgLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBCb29sZWFuUmVuZGVyZXIgaW1wbGVtZW50cyBJQ2VsbFJlbmRlcmVyQW5ndWxhckNvbXAge1xuICB2YWx1ZTogYm9vbGVhbjtcbiAgY29uc3RydWN0b3IoKSB7IH1cbiAgYWdJbml0KHBhcmFtczogSUNlbGxSZW5kZXJlclBhcmFtcyk6IHZvaWQge1xuICAgIHRoaXMudmFsdWUgPSBwYXJhbXMudmFsdWU7XG4gIH1cbiAgcmVmcmVzaChwYXJhbXM6IElDZWxsUmVuZGVyZXJQYXJhbXMpOiBib29sZWFuIHtcbiAgICB0aGlzLnZhbHVlID0gcGFyYW1zLnZhbHVlO1xuICAgIHJldHVybiB0cnVlO1xuICB9XG59XG5cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZTogYFxuICAgIDxheC1kYXRhLWdyaWQtZmlsdGVyPlxuICAgICAgPGF4LXNlbGVjdC1ib3hcbiAgICAgICAgbGFiZWw9J1NlbGVjdCBCb3gnXG4gICAgICAgIFtpdGVtc109J3NlbGVjdEl0ZW0nXG4gICAgICA+PC9heC1zZWxlY3QtYm94PlxuICAgIDwvYXgtZGF0YS1ncmlkLWZpbHRlcj5cbiAgYCxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgQm9vbGVhbkZpbHRlclJlbmRlcmVyIGltcGxlbWVudHMgSUZpbHRlckFuZ3VsYXJDb21wIHtcbiAgcHVibGljIHZhbHVlPzogYm9vbGVhbiA9IG51bGw7XG4gIHByaXZhdGUgcGFyYW1zOiBJRmlsdGVyUGFyYW1zO1xuICBwcml2YXRlIHZhbHVlR2V0dGVyOiAocm93Tm9kZTogUm93Tm9kZSkgPT4gYW55O1xuICBAVmlld0NoaWxkKCdpbnB1dCcsIHsgc3RhdGljOiB0cnVlLCByZWFkOiBWaWV3Q29udGFpbmVyUmVmIH0pIHB1YmxpYyBpbnB1dDtcblxuICBzZWxlY3RJdGVtID0gW1xuICAgIHsgdmFsdWU6IDAsIGxhYmVsOiAnVHJ1ZScgfSxcbiAgICB7IHZhbHVlOiAxLCBsYWJlbDogJ0ZhbHNlJyB9LFxuICBdO1xuICBhZ0luaXQocGFyYW1zOiBJRmlsdGVyUGFyYW1zKTogdm9pZCB7XG4gICAgdGhpcy5wYXJhbXMgPSBwYXJhbXM7XG4gICAgdGhpcy52YWx1ZUdldHRlciA9IHBhcmFtcy52YWx1ZUdldHRlcjtcbiAgfVxuXG4gIGlzRmlsdGVyQWN0aXZlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnZhbHVlICE9PSBudWxsICYmIHRoaXMudmFsdWUgIT09IHVuZGVmaW5lZDtcbiAgfVxuXG4gIGRvZXNGaWx0ZXJQYXNzKHBhcmFtczogSURvZXNGaWx0ZXJQYXNzUGFyYW1zKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudmFsdWUgPT09IHRoaXMudmFsdWVHZXR0ZXIocGFyYW1zLm5vZGUpO1xuICB9XG5cbiAgZ2V0TW9kZWwoKTogYW55IHtcbiAgICByZXR1cm4geyB2YWx1ZTogdGhpcy52YWx1ZSB9O1xuICB9XG5cbiAgc2V0TW9kZWwobW9kZWw6IGFueSk6IHZvaWQge1xuICAgIHRoaXMudmFsdWUgPSBtb2RlbCA/IG1vZGVsLnZhbHVlIDogbnVsbDtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdChwYXJhbXM6IElBZnRlckd1aUF0dGFjaGVkUGFyYW1zKTogdm9pZCB7XG4gICAgd2luZG93LnNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5pbnB1dC5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICB9KTtcbiAgfVxuXG4gIG9uQ2hhbmdlKG5ld1ZhbHVlKTogdm9pZCB7XG4gICAgaWYgKHRoaXMudmFsdWUgIT09IG5ld1ZhbHVlKSB7XG4gICAgICB0aGlzLnZhbHVlID0gbmV3VmFsdWU7XG4gICAgICB0aGlzLnBhcmFtcy5maWx0ZXJDaGFuZ2VkQ2FsbGJhY2soKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|