zek 17.3.53 → 17.3.54
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/esm2022/lib/components/core.component.mjs +3 -1
- package/esm2022/lib/components/list-base.component.mjs +24 -5
- package/fesm2022/zek.mjs +23 -2
- package/fesm2022/zek.mjs.map +1 -1
- package/lib/components/core.component.d.ts +1 -0
- package/lib/components/list-base.component.d.ts +7 -2
- package/package.json +1 -1
|
@@ -17,6 +17,7 @@ export class CoreComponent {
|
|
|
17
17
|
this.loading = true;
|
|
18
18
|
await this.init();
|
|
19
19
|
await this.bindModel();
|
|
20
|
+
await this.onBindModelCompleted();
|
|
20
21
|
await this.bindDictionary();
|
|
21
22
|
await this.onBindingCompleted();
|
|
22
23
|
}
|
|
@@ -27,6 +28,7 @@ export class CoreComponent {
|
|
|
27
28
|
}
|
|
28
29
|
init() { }
|
|
29
30
|
bindModel() { }
|
|
31
|
+
onBindModelCompleted() { }
|
|
30
32
|
bindDictionary() { }
|
|
31
33
|
onBindingCompleted() { }
|
|
32
34
|
onLoadCompleted() { }
|
|
@@ -38,4 +40,4 @@ export class CoreComponent {
|
|
|
38
40
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: CoreComponent, decorators: [{
|
|
39
41
|
type: Directive
|
|
40
42
|
}] });
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy96ZWsvc3JjL2xpYi9jb21wb25lbnRzL2NvcmUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBVSxTQUFTLEVBQWEsTUFBTSxlQUFlLENBQUM7O0FBRzdELE1BQU0sT0FBTyxhQUFhO0lBRDFCO1FBRUksWUFBTyxHQUFHLEtBQUssQ0FBQztLQW1DbkI7SUFqQ0csUUFBUTtRQUNKLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNoQixDQUFDO0lBQ0QsV0FBVztRQUNQLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRUQsS0FBSyxDQUFDLElBQUk7UUFDTixJQUFJLENBQUM7WUFDRCxJQUFJLElBQUksQ0FBQyxPQUFPO2dCQUFFLE9BQU87WUFFekIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7WUFDcEIsTUFBTSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDbEIsTUFBTSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDdkIsTUFBTSxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztZQUNsQyxNQUFNLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUM1QixNQUFNLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBQ3BDLENBQUM7Z0JBQ08sQ0FBQztZQUNMLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLENBQUM7UUFFRCxNQUFNLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0lBQ0QsSUFBSSxLQUFLLENBQUM7SUFDVixTQUFTLEtBQUssQ0FBQztJQUNmLG9CQUFvQixLQUFLLENBQUM7SUFDMUIsY0FBYyxLQUFLLENBQUM7SUFDcEIsa0JBQWtCLEtBQUssQ0FBQztJQUN4QixlQUFlLEtBQUssQ0FBQztJQUVyQixLQUFLLENBQUMsT0FBTztJQUNiLENBQUM7OEdBbkNRLGFBQWE7a0dBQWIsYUFBYTs7MkZBQWIsYUFBYTtrQkFEekIsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9uSW5pdCwgRGlyZWN0aXZlLCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBEaXJlY3RpdmUoKVxyXG5leHBvcnQgY2xhc3MgQ29yZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICAgIGxvYWRpbmcgPSBmYWxzZTtcclxuXHJcbiAgICBuZ09uSW5pdCgpIHtcclxuICAgICAgICB0aGlzLmxvYWQoKTtcclxuICAgIH1cclxuICAgIG5nT25EZXN0cm95KCkge1xyXG4gICAgICAgIHRoaXMuZGVzdHJveSgpO1xyXG4gICAgfVxyXG5cclxuICAgIGFzeW5jIGxvYWQoKSB7XHJcbiAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgaWYgKHRoaXMubG9hZGluZykgcmV0dXJuO1xyXG5cclxuICAgICAgICAgICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcclxuICAgICAgICAgICAgYXdhaXQgdGhpcy5pbml0KCk7XHJcbiAgICAgICAgICAgIGF3YWl0IHRoaXMuYmluZE1vZGVsKCk7XHJcbiAgICAgICAgICAgIGF3YWl0IHRoaXMub25CaW5kTW9kZWxDb21wbGV0ZWQoKTtcclxuICAgICAgICAgICAgYXdhaXQgdGhpcy5iaW5kRGljdGlvbmFyeSgpO1xyXG4gICAgICAgICAgICBhd2FpdCB0aGlzLm9uQmluZGluZ0NvbXBsZXRlZCgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBmaW5hbGx5IHtcclxuICAgICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBhd2FpdCB0aGlzLm9uTG9hZENvbXBsZXRlZCgpO1xyXG4gICAgfVxyXG4gICAgaW5pdCgpIHsgfVxyXG4gICAgYmluZE1vZGVsKCkgeyB9XHJcbiAgICBvbkJpbmRNb2RlbENvbXBsZXRlZCgpIHsgfVxyXG4gICAgYmluZERpY3Rpb25hcnkoKSB7IH1cclxuICAgIG9uQmluZGluZ0NvbXBsZXRlZCgpIHsgfVxyXG4gICAgb25Mb2FkQ29tcGxldGVkKCkgeyB9XHJcblxyXG4gICAgYXN5bmMgZGVzdHJveSgpIHtcclxuICAgIH1cclxufSJdfQ==
|
|
@@ -1,13 +1,19 @@
|
|
|
1
|
-
import { ViewChild, Directive, inject } from '@angular/core';
|
|
1
|
+
import { ViewChild, Directive, inject, Input } from '@angular/core';
|
|
2
2
|
import { TranslateService } from '@ngx-translate/core';
|
|
3
3
|
import { BaseComponent } from './base.component';
|
|
4
4
|
import { FilterBase, Pager } from '../models';
|
|
5
5
|
import { AlertService } from '../services/alert.service';
|
|
6
|
-
import { FilterHelper, PagerHelper, StorageHelper, StringHelper, UrlHelper } from '../utils';
|
|
6
|
+
import { ArrayHelper, Convert, FilterHelper, PagerHelper, StorageHelper, StringHelper, UrlHelper } from '../utils';
|
|
7
7
|
import { firstValueFrom } from 'rxjs';
|
|
8
8
|
import * as i0 from "@angular/core";
|
|
9
9
|
// declare let bootstrap: any;
|
|
10
10
|
export class ListBaseComponent extends BaseComponent {
|
|
11
|
+
get initItems() {
|
|
12
|
+
return this._initItems;
|
|
13
|
+
}
|
|
14
|
+
set initItems(v) {
|
|
15
|
+
this._initItems = Convert.toBooleanProperty(v);
|
|
16
|
+
}
|
|
11
17
|
constructor(service) {
|
|
12
18
|
super();
|
|
13
19
|
this.service = service;
|
|
@@ -19,6 +25,7 @@ export class ListBaseComponent extends BaseComponent {
|
|
|
19
25
|
this.selectedItems = [];
|
|
20
26
|
this.pager = new Pager();
|
|
21
27
|
this.tableId = 'table';
|
|
28
|
+
this._initItems = true;
|
|
22
29
|
this.approveModel = {};
|
|
23
30
|
this.approvedMesage = 'Alert.Approved';
|
|
24
31
|
this.disapprovedMesage = 'Alert.Disapproved';
|
|
@@ -53,6 +60,16 @@ export class ListBaseComponent extends BaseComponent {
|
|
|
53
60
|
const el = document.getElementById(this.tableId);
|
|
54
61
|
el?.scrollIntoView({ behavior: 'smooth', block: 'start', inline: 'nearest' });
|
|
55
62
|
}
|
|
63
|
+
onBindModelCompleted() {
|
|
64
|
+
if (this.initItems) {
|
|
65
|
+
if (this.model && ArrayHelper.isArray(this.model.items) && ArrayHelper.isArray(this.selectedIds)) {
|
|
66
|
+
for (const item of this.model.items) {
|
|
67
|
+
const tmp = item;
|
|
68
|
+
tmp.selected = this.selectedIds.includes(tmp.id);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
}
|
|
56
73
|
initDefaultFilter() {
|
|
57
74
|
}
|
|
58
75
|
initStoredFilter() {
|
|
@@ -273,11 +290,13 @@ export class ListBaseComponent extends BaseComponent {
|
|
|
273
290
|
}
|
|
274
291
|
}
|
|
275
292
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ListBaseComponent, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive }); }
|
|
276
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.4", type: ListBaseComponent, viewQueries: [{ propertyName: "filterModal", first: true, predicate: ["filterModal"], descendants: true }, { propertyName: "approveModal", first: true, predicate: ["approveModal"], descendants: true }, { propertyName: "disapproveModal", first: true, predicate: ["disapproveModal"], descendants: true }], usesInheritance: true, ngImport: i0 }); }
|
|
293
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.4", type: ListBaseComponent, inputs: { initItems: "initItems" }, viewQueries: [{ propertyName: "filterModal", first: true, predicate: ["filterModal"], descendants: true }, { propertyName: "approveModal", first: true, predicate: ["approveModal"], descendants: true }, { propertyName: "disapproveModal", first: true, predicate: ["disapproveModal"], descendants: true }], usesInheritance: true, ngImport: i0 }); }
|
|
277
294
|
}
|
|
278
295
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ListBaseComponent, decorators: [{
|
|
279
296
|
type: Directive
|
|
280
|
-
}], ctorParameters: () => [{ type: undefined }], propDecorators: {
|
|
297
|
+
}], ctorParameters: () => [{ type: undefined }], propDecorators: { initItems: [{
|
|
298
|
+
type: Input
|
|
299
|
+
}], filterModal: [{
|
|
281
300
|
type: ViewChild,
|
|
282
301
|
args: ['filterModal', { static: false }]
|
|
283
302
|
}], approveModal: [{
|
|
@@ -287,4 +306,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
|
|
|
287
306
|
type: ViewChild,
|
|
288
307
|
args: ['disapproveModal', { static: false }]
|
|
289
308
|
}] } });
|
|
290
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1iYXNlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3play9zcmMvbGliL2NvbXBvbmVudHMvbGlzdC1iYXNlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFHdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2pELE9BQU8sRUFBZ0IsVUFBVSxFQUFhLEtBQUssRUFBYSxNQUFNLFdBQVcsQ0FBQztBQUVsRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDekQsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDN0YsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFDdEMsOEJBQThCO0FBRzlCLE1BQU0sT0FBTyxpQkFBOEUsU0FBUSxhQUF3QztJQXFCdkksWUFBK0IsT0FBaUI7UUFDNUMsS0FBSyxFQUFFLENBQUM7UUFEbUIsWUFBTyxHQUFQLE9BQU8sQ0FBVTtRQXBCaEQsV0FBTSxHQUFRLElBQUksVUFBVSxFQUFFLENBQUM7UUFDL0IsZUFBVSxHQUFHLElBQUksQ0FBQztRQUVSLG1CQUFjLEdBQVEsSUFBSSxVQUFVLEVBQUUsQ0FBQztRQUNqRCxlQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ25CLGdCQUFXLEdBQVUsRUFBRSxDQUFDO1FBQ3hCLGtCQUFhLEdBQVUsRUFBRSxDQUFDO1FBQzFCLFVBQUssR0FBRyxJQUFJLEtBQUssRUFBRSxDQUFDO1FBRXBCLFlBQU8sR0FBRyxPQUFPLENBQUM7UUFJbEIsaUJBQVks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QVk7c0JBQTVFLFNBQVM7dUJBQUMsY0FBYyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFHd0IsZUFBZTtzQkFBbEYsU0FBUzt1QkFBQyxpQkFBaUIsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBWaWV3Q2hpbGQsIERpcmVjdGl2ZSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcclxuXHJcbmltcG9ydCB7IElTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMnO1xyXG5pbXBvcnQgeyBCYXNlQ29tcG9uZW50IH0gZnJvbSAnLi9iYXNlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFwcHJvdmVNb2RlbCwgRmlsdGVyQmFzZSwgUGFnZWRMaXN0LCBQYWdlciwgUHJpbnRUeXBlIH0gZnJvbSAnLi4vbW9kZWxzJztcclxuaW1wb3J0IHsgWmVrTW9kYWwgfSBmcm9tICcuLi9tb2R1bGVzL21vZGFsL21vZGFsL21vZGFsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFsZXJ0U2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2FsZXJ0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBGaWx0ZXJIZWxwZXIsIFBhZ2VySGVscGVyLCBTdG9yYWdlSGVscGVyLCBTdHJpbmdIZWxwZXIsIFVybEhlbHBlciB9IGZyb20gJy4uL3V0aWxzJztcclxuaW1wb3J0IHsgZmlyc3RWYWx1ZUZyb20gfSBmcm9tICdyeGpzJztcclxuLy8gZGVjbGFyZSBsZXQgYm9vdHN0cmFwOiBhbnk7XHJcblxyXG5ARGlyZWN0aXZlKClcclxuZXhwb3J0IGNsYXNzIExpc3RCYXNlQ29tcG9uZW50PFRTZXJ2aWNlIGV4dGVuZHMgSVNlcnZpY2UgPSBJU2VydmljZSwgVFBhZ2VkTGlzdERhdGEgPSBhbnk+IGV4dGVuZHMgQmFzZUNvbXBvbmVudDxQYWdlZExpc3Q8VFBhZ2VkTGlzdERhdGE+PiB7XHJcbiAgICBmaWx0ZXI6IGFueSA9IG5ldyBGaWx0ZXJCYXNlKCk7XHJcbiAgICBzYXZlRmlsdGVyID0gdHJ1ZTtcclxuICAgIHNvcnRGaWVsZHM6IGFueTtcclxuICAgIHByb3RlY3RlZCBpbnRlcm5hbEZpbHRlcjogYW55ID0gbmV3IEZpbHRlckJhc2UoKTtcclxuICAgIGlzRmlsdGVyZWQgPSBmYWxzZTtcclxuICAgIHNlbGVjdGVkSWRzOiBhbnlbXSA9IFtdO1xyXG4gICAgc2VsZWN0ZWRJdGVtczogYW55W10gPSBbXTtcclxuICAgIHBhZ2VyID0gbmV3IFBhZ2VyKCk7XHJcbiAgICBzdW1Nb2RlbDogYW55O1xyXG4gICAgdGFibGVJZCA9ICd0YWJsZSc7XHJcblxyXG4gICAgQFZpZXdDaGlsZCgnZmlsdGVyTW9kYWwnLCB7IHN0YXRpYzogZmFsc2UgfSkgcHJvdGVjdGVkIHJlYWRvbmx5IGZpbHRlck1vZGFsPzogWmVrTW9kYWwgfCBudWxsO1xyXG5cclxuICAgIGFwcHJvdmVNb2RlbDogQXBwcm92ZU1vZGVsID0ge307XHJcbiAgICBAVmlld0NoaWxkKCdhcHByb3ZlTW9kYWwnLCB7IHN0YXRpYzogZmFsc2UgfSkgcHJvdGVjdGVkIHJlYWRvbmx5IGFwcHJvdmVNb2RhbD86IFpla01vZGFsIHwgbnVsbDtcclxuICAgIHByb3RlY3RlZCBhcHByb3ZlZE1lc2FnZSA9ICdBbGVydC5BcHByb3ZlZCc7XHJcblxyXG4gICAgQFZpZXdDaGlsZCgnZGlzYXBwcm92ZU1vZGFsJywgeyBzdGF0aWM6IGZhbHNlIH0pIHByb3RlY3RlZCByZWFkb25seSBkaXNhcHByb3ZlTW9kYWw/OiBaZWtNb2RhbCB8IG51bGw7XHJcbiAgICBwcm90ZWN0ZWQgZGlzYXBwcm92ZWRNZXNhZ2UgPSAnQWxlcnQuRGlzYXBwcm92ZWQnO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHByb3RlY3RlZCByZWFkb25seSBzZXJ2aWNlOiBUU2VydmljZSkge1xyXG4gICAgICAgIHN1cGVyKCk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIHJlYWRvbmx5IHRyYW5zbGF0ZSA9IGluamVjdChUcmFuc2xhdGVTZXJ2aWNlKTtcclxuICAgIHJlYWRvbmx5IGFsZXJ0ID0gaW5qZWN0KEFsZXJ0U2VydmljZSk7XHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcbiAgICBvdmVycmlkZSBpbml0KCkge1xyXG4gICAgICAgIHN1cGVyLmluaXQoKTtcclxuXHJcbiAgICAgICAgdGhpcy5yZXNldCgpO1xyXG4gICAgICAgIHRoaXMuaW5pdERlZmF1bHRGaWx0ZXIoKTtcclxuICAgICAgICB0aGlzLmluaXRTdG9yZWRGaWx0ZXIoKTtcclxuICAgICAgICB0aGlzLmFzc2lnbkZpbHRlcigpO1xyXG4gICAgfVxyXG4gICAgb3ZlcnJpZGUgYXN5bmMgYmluZE1vZGVsKCkge1xyXG4gICAgICAgIC8vIHRoaXMuc2VsZWN0ZWRJZHMgPSBbXTtcclxuICAgICAgICB0aGlzLm1vZGVsID0gYXdhaXQgZmlyc3RWYWx1ZUZyb20odGhpcy5hcGlHZXRBbGwodGhpcy5pbnRlcm5hbEZpbHRlcikpO1xyXG4gICAgICAgIGlmICh0aGlzLm1vZGVsKSB7XHJcbiAgICAgICAgICAgIGxldCB0b3RhbENvdW50ID0gdGhpcy5tb2RlbC50b3RhbEl0ZW1Db3VudDtcclxuICAgICAgICAgICAgaWYgKCF0b3RhbENvdW50ICYmIHRoaXMubW9kZWwucGFnZXIpIHtcclxuICAgICAgICAgICAgICAgIHRvdGFsQ291bnQgPSB0aGlzLm1vZGVsLnBhZ2VyID8gKHRoaXMubW9kZWwucGFnZXIudG90YWxJdGVtQ291bnQgfHwgMCkgOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRoaXMucGFnZXIgPSBQYWdlckhlbHBlci5nZXQodG90YWxDb3VudCwgdGhpcy5pbnRlcm5hbEZpbHRlci5wYWdlLCB0aGlzLmludGVybmFsRmlsdGVyLnBhZ2VTaXplKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZVxyXG4gICAgICAgICAgICB0aGlzLnBhZ2VyID0gbmV3IFBhZ2VyKCk7XHJcbiAgICAgICAgLy90aGlzLnBhZ2VkTGlzdC5wYWdlciA9IHRoaXMucGFnZXI7XHJcbiAgICB9XHJcbiAgICBhcGlHZXRBbGwoZmlsdGVyOiBhbnkpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5zZXJ2aWNlLmdldEFsbChmaWx0ZXIpO1xyXG4gICAgfVxyXG4gICAgc2Nyb2xsVG9wKCkge1xyXG4gICAgICAgIGNvbnN0IGVsID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQodGhpcy50YWJsZUlkKTtcclxuICAgICAgICBlbD8uc2Nyb2xsSW50b1ZpZXcoeyBiZWhhdmlvcjogJ3Ntb290aCcsIGJsb2NrOiAnc3RhcnQnLCBpbmxpbmU6ICduZWFyZXN0JyB9KTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgcHJvdGVjdGVkIGluaXREZWZhdWx0RmlsdGVyKCkge1xyXG4gICAgfVxyXG4gICAgcHJpdmF0ZSBpbml0U3RvcmVkRmlsdGVyKCkge1xyXG4gICAgICAgIGNvbnN0IGZpbHRlclBhcmFtID0gdGhpcy5nZXRRdWVyeVBhcmFtKCdmaWx0ZXInKSB8fCB0aGlzLmdldFBhcmFtKCdmaWx0ZXInKTtcclxuXHJcbiAgICAgICAgaWYgKGZpbHRlclBhcmFtKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHRtcCA9IFN0b3JhZ2VIZWxwZXIuZ2V0KCdmaWx0ZXInKTtcclxuICAgICAgICAgICAgaWYgKHRtcCAmJiB0bXAudXJsICYmIHRtcC51cmwgPT09IHRoaXMudXJsICYmIHRtcC5maWx0ZXIpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuZmlsdGVyID0gT2JqZWN0LmFzc2lnbih7fSwgdG1wLmZpbHRlcik7XHJcbiAgICAgICAgICAgICAgICAvL3dlIGRvbnQgbmVlZCB0aGlzLmFzc2lnbkZpbHRlcigpOyBiZWNhdXNlIGFmdGVyIGluaXRTdG9yZWRGaWx0ZXIoKTsgd2lsbCBiZSBhc3NpZ25lZC5cclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKCdmaWx0ZXInKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKCdmaWx0ZXInKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBhc3luYyBjaGFuZ2VQYWdlKHBhZ2U6IG51bWJlcikge1xyXG4gICAgICAgIHRoaXMuaW50ZXJuYWxGaWx0ZXIucGFnZSA9IHBhZ2U7XHJcbiAgICAgICAgdGhpcy5maWx0ZXIucGFnZSA9IHBhZ2U7XHJcbiAgICAgICAgYXdhaXQgdGhpcy5iaW5kTW9kZWwoKTtcclxuICAgICAgICB0aGlzLmF1dG9TYXZlRmlsdGVyKCk7XHJcbiAgICAgICAgdGhpcy5zY3JvbGxUb3AoKTtcclxuICAgIH1cclxuICAgIGNoYW5nZVBhZ2VTaXplKHBhZ2VTaXplOiBudW1iZXIpIHtcclxuICAgICAgICB0aGlzLmludGVybmFsRmlsdGVyLnBhZ2VTaXplID0gcGFnZVNpemU7XHJcbiAgICAgICAgdGhpcy5maWx0ZXIucGFnZVNpemUgPSBwYWdlU2l6ZTtcclxuICAgICAgICB0aGlzLmNoYW5nZVBhZ2UoMSk7XHJcbiAgICB9XHJcbiAgICBzaG93RmlsdGVyKCkge1xyXG4gICAgICAgIHRoaXMuZmlsdGVyTW9kYWw/LnNob3coKTtcclxuICAgIH1cclxuICAgIHNlYXJjaCgpIHtcclxuICAgICAgICB0aGlzLmFzc2lnbkZpbHRlcigpO1xyXG5cclxuICAgICAgICAvLyB0aGlzLmNoYW5nZVBhZ2UoMSk7XHJcbiAgICAgICAgLy9jYW4ndCB1c2UgdGhpcyBiZWNhdXNlIGRvbid0IHdhbnQgdG8gZXhlY3V0ZSBzY3JvbGxUb3BcclxuICAgICAgICB0aGlzLmludGVybmFsRmlsdGVyLnBhZ2UgPSAxO1xyXG4gICAgICAgIHRoaXMuZmlsdGVyLnBhZ2UgPSAxO1xyXG4gICAgICAgIHRoaXMuYmluZE1vZGVsKCk7XHJcbiAgICAgICAgdGhpcy5hdXRvU2F2ZUZpbHRlcigpO1xyXG4gICAgfVxyXG4gICAgcHJvdGVjdGVkIGFzc2lnbkZpbHRlcigpIHtcclxuICAgICAgICB0aGlzLmludGVybmFsRmlsdGVyID0gT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5maWx0ZXIpO1xyXG4gICAgICAgIHRoaXMuaXNGaWx0ZXJlZCA9ICFGaWx0ZXJIZWxwZXIuaXNFbXB0eSh0aGlzLmludGVybmFsRmlsdGVyKTtcclxuICAgIH1cclxuICAgIHByaXZhdGUgYXV0b1NhdmVGaWx0ZXIoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuc2F2ZUZpbHRlcilcclxuICAgICAgICAgICAgdGhpcy5pbnRlcm5hbFNhdmVGaWx0ZXIoKVxyXG4gICAgfVxyXG4gICAgcHJpdmF0ZSBpbnRlcm5hbFNhdmVGaWx0ZXIoKSB7XHJcbiAgICAgICAgU3RvcmFnZUhlbHBlci5zZXQoJ2ZpbHRlcicsIHtcclxuICAgICAgICAgICAgdXJsOiB0aGlzLnVybCxcclxuICAgICAgICAgICAgZmlsdGVyOiB0aGlzLmludGVybmFsRmlsdGVyXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICByZXNldCgpIHtcclxuICAgICAgICB0aGlzLmZpbHRlciA9IHsgcGFnZTogMSwgcGFnZVNpemU6IDI1IH07XHJcbiAgICAgICAgdGhpcy5hc3NpZ25GaWx0ZXIoKTtcclxuICAgIH1cclxuICAgIHJlZnJlc2goKSB7XHJcbiAgICAgICAgdGhpcy5iaW5kTW9kZWwoKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgY3JlYXRlKCkge1xyXG4gICAgICAgIGNvbnN0IHVybCA9IFVybEhlbHBlci5nZXROb1BhcmFtKHRoaXMucm91dGVyLnVybCk7XHJcbiAgICAgICAgLy8gdGhpcy5yb3V0ZXIubmF2aWdhdGUoW3VybCwgJ2NyZWF0ZScsIHsgcmV0dXJuVXJsOiB1cmwgKyAnO2ZpbHRlcj0xJyB9XSk7XHJcbiAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW3VybCwgJ2NyZWF0ZSddLFxyXG4gICAgICAgICAgICB7IHF1ZXJ5UGFyYW1zOiB7IHJldHVyblVybDogdXJsICsgJz9maWx0ZXI9MScgfSB9XHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuICAgIGFzeW5jIGRlbGV0ZShpZDogYW55KSB7XHJcbiAgICAgICAgdGhpcy5hbGVydC5jbGVhcigpO1xyXG4gICAgICAgIGNvbnN0IGRhdGEgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLmFwaURlbGV0ZShpZCkpO1xyXG4gICAgICAgIGlmIChkYXRhPy5zdWNjZXNzKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IG1lc3NhZ2UgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLnRyYW5zbGF0ZS5nZXQoJ0FsZXJ0LkRlbGV0ZWQnKSk7XHJcbiAgICAgICAgICAgIHRoaXMuYWxlcnQuZXJyb3IobWVzc2FnZSwgbnVsbCwgJ2ZhLXNvbGlkIGZhLXRyYXNoJylcclxuICAgICAgICAgICAgdGhpcy5yZWZyZXNoKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgYXBpRGVsZXRlKGlkOiBhbnkpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5zZXJ2aWNlLmRlbGV0ZShpZCk7XHJcbiAgICB9XHJcblxyXG4gICAgYXN5bmMgZGVsZXRlMihpZDogYW55LCBpZDI6IGFueSkge1xyXG4gICAgICAgIHRoaXMuYWxlcnQuY2xlYXIoKTtcclxuICAgICAgICBjb25zdCBkYXRhID0gYXdhaXQgZmlyc3RWYWx1ZUZyb20odGhpcy5hcGlEZWxldGUyKGlkLCBpZDIpKVxyXG4gICAgICAgIGlmIChkYXRhPy5zdWNjZXNzKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IG1lc3NhZ2UgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLnRyYW5zbGF0ZS5nZXQoJ0FsZXJ0LkRlbGV0ZWQnKSk7XHJcbiAgICAgICAgICAgIHRoaXMuYWxlcnQuZXJyb3IobWVzc2FnZSwgbnVsbCwgJ2ZhLXNvbGlkIGZhLXRyYXNoJylcclxuICAgICAgICAgICAgdGhpcy5yZWZyZXNoKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgYXBpRGVsZXRlMihpZDogYW55LCBpZDI6IGFueSkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLnNlcnZpY2UuZGVsZXRlMihpZCwgaWQyKTtcclxuICAgIH1cclxuXHJcbiAgICBlZGl0KGlkOiBudW1iZXIpIHtcclxuICAgICAgICAvLyB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbdGhpcy51cmwsIGlkXSxcclxuICAgICAgICAvLyAgICAgeyBxdWVyeVBhcmFtczogeyByZXR1cm5Vcmw6IHRoaXMudXJsICsgJztmaWx0ZXI9MScgfSB9XHJcbiAgICAgICAgLy8gKTtcclxuXHJcbiAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW3RoaXMudXJsLCBpZF0sXHJcbiAgICAgICAgICAgIHsgcXVlcnlQYXJhbXM6IHsgcmV0dXJuVXJsOiB0aGlzLnVybCArICc/ZmlsdGVyPTEnIH0gfVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcbiAgICBlZGl0MihpZDogbnVtYmVyLCBpZDI6IG51bWJlcikge1xyXG4gICAgICAgIC8vIHRoaXMucm91dGVyLm5hdmlnYXRlKFt0aGlzLnVybCwgaWQsIGlkMiwgeyByZXR1cm5Vcmw6IHRoaXMudXJsICsgJztmaWx0ZXI9MScgfV0pO1xyXG4gICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFt0aGlzLnVybCwgaWQsIGlkMl0sXHJcbiAgICAgICAgICAgIHsgcXVlcnlQYXJhbXM6IHsgcmV0dXJuVXJsOiB0aGlzLnVybCArICc/ZmlsdGVyPTEnIH0gfVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcbiAgICBzZWxlY3QoaXRlbTogYW55KSB7XHJcbiAgICAgICAgaXRlbS5zZWxlY3RlZCA9ICFpdGVtLnNlbGVjdGVkO1xyXG4gICAgICAgIGNvbnN0IGlkID0gaXRlbS5pZDtcclxuICAgICAgICBpZiAoaWQpIHtcclxuICAgICAgICAgICAgaWYgKGl0ZW0uc2VsZWN0ZWQpIHtcclxuICAgICAgICAgICAgICAgIGlmICghdGhpcy5zZWxlY3RlZElkcy5pbmNsdWRlcyhpZCkpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkSWRzLnB1c2goaWQpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtcy5wdXNoKGl0ZW0pO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRJZHMgPSB0aGlzLnNlbGVjdGVkSWRzLmZpbHRlcihpdGVtID0+IGl0ZW0gIT09IGlkKTtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtcyA9IHRoaXMuc2VsZWN0ZWRJdGVtcy5maWx0ZXIoaXRlbSA9PiBpdGVtLmlkICE9PSBpZCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG5cclxuXHJcblxyXG4gICAgc2hvd0FwcHJvdmVNb2RhbChpZDogbnVtYmVyKSB7XHJcbiAgICAgICAgaWYgKCFpZCB8fCAhdGhpcy5hcHByb3ZlTW9kYWwpIHJldHVybjtcclxuXHJcbiAgICAgICAgY29uc3QgdG1wID0geyBpZHM6IFtpZF0gfTtcclxuICAgICAgICB0aGlzLmFwcHJvdmVNb2RlbCA9IHt9O1xyXG4gICAgICAgIHRoaXMuYXBwcm92ZU1vZGFsLnNob3codG1wKTtcclxuICAgIH1cclxuICAgIHNob3dBcHByb3ZlU2VsZWN0ZWRNb2RhbCgpIHtcclxuICAgICAgICBjb25zdCB0bXAgPSB7IGlkczogdGhpcy5nZXRTZWxlY3RlZElkcygpIH07XHJcbiAgICAgICAgaWYgKCF0bXAuaWRzIHx8IHRtcC5pZHMubGVuZ3RoID09PSAwIHx8ICF0aGlzLmFwcHJvdmVNb2RhbCkgcmV0dXJuO1xyXG5cclxuICAgICAgICB0aGlzLmFwcHJvdmVNb2RlbCA9IHt9O1xyXG4gICAgICAgIHRoaXMuYXBwcm92ZU1vZGFsLnNob3codG1wKTtcclxuICAgIH1cclxuICAgIGFzeW5jIGFwcHJvdmUobW9kZWw6IGFueSkge1xyXG4gICAgICAgIGlmICghbW9kZWwpIHJldHVybjtcclxuXHJcbiAgICAgICAgdGhpcy5hbGVydC5jbGVhcigpO1xyXG4gICAgICAgIGNvbnN0IGRhdGEgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLmFwaUFwcHJvdmUobW9kZWwpKTtcclxuICAgICAgICBpZiAoIWRhdGEgfHwgZGF0YS5sZW5ndGggPT09IDApXHJcbiAgICAgICAgICAgIHJldHVybjtcclxuXHJcbiAgICAgICAgY29uc3QgbWVzc2FnZSA9IGF3YWl0IGZpcnN0VmFsdWVGcm9tKHRoaXMudHJhbnNsYXRlLmdldCh0aGlzLmFwcHJvdmVkTWVzYWdlKSk7XHJcbiAgICAgICAgdGhpcy5hbGVydC5zdWNjZXNzKG1lc3NhZ2UsIG51bGwsICdmYS1zb2xpZCBmYS10aHVtYnMtdXAnKVxyXG4gICAgICAgIHRoaXMucmVmcmVzaCgpO1xyXG4gICAgfVxyXG4gICAgYXBpQXBwcm92ZShtb2RlbDogYW55KSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuc2VydmljZS5hcHByb3ZlKG1vZGVsKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgc2hvd0Rpc2FwcHJvdmVNb2RhbChpZDogbnVtYmVyKSB7XHJcbiAgICAgICAgaWYgKCFpZCB8fCAhdGhpcy5kaXNhcHByb3ZlTW9kYWwpIHJldHVybjtcclxuXHJcbiAgICAgICAgY29uc3QgdG1wID0geyBpZHM6IFtpZF0gfTtcclxuICAgICAgICB0aGlzLmFwcHJvdmVNb2RlbCA9IHt9O1xyXG4gICAgICAgIHRoaXMuZGlzYXBwcm92ZU1vZGFsLnNob3codG1wKTtcclxuICAgIH1cclxuICAgIHNob3dEaXNhcHByb3ZlU2VsZWN0ZWRNb2RhbCgpIHtcclxuICAgICAgICBjb25zdCB0bXAgPSB7IGlkczogdGhpcy5nZXRTZWxlY3RlZElkcygpIH07XHJcbiAgICAgICAgaWYgKCF0bXAuaWRzIHx8IHRtcC5pZHMubGVuZ3RoID09PSAwIHx8ICF0aGlzLmRpc2FwcHJvdmVNb2RhbCkgcmV0dXJuO1xyXG5cclxuICAgICAgICB0aGlzLmFwcHJvdmVNb2RlbCA9IHt9O1xyXG4gICAgICAgIHRoaXMuZGlzYXBwcm92ZU1vZGFsLnNob3codG1wKTtcclxuICAgIH1cclxuICAgIGFzeW5jIGRpc2FwcHJvdmUobW9kZWw6IGFueSkge1xyXG4gICAgICAgIGlmICghbW9kZWwgfHwgIXRoaXMuYXBwcm92ZU1vZGVsKSByZXR1cm47XHJcblxyXG4gICAgICAgIGlmICh0eXBlb2YgbW9kZWwgPT09ICdvYmplY3QnKSB7XHJcbiAgICAgICAgICAgIG1vZGVsLnN0YXR1cyA9IHRoaXMuYXBwcm92ZU1vZGVsLnN0YXR1cztcclxuICAgICAgICAgICAgbW9kZWwuY29tbWVudCA9IFN0cmluZ0hlbHBlci50cnlUcmltKHRoaXMuYXBwcm92ZU1vZGVsLmNvbW1lbnQpO1xyXG4gICAgICAgICAgICBpZiAoIW1vZGVsLmNvbW1lbnQpIGRlbGV0ZSBtb2RlbC5jb21tZW50O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5hbGVydC5jbGVhcigpO1xyXG4gICAgICAgIGNvbnN0IGRhdGEgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLmFwaURpc2FwcHJvdmUobW9kZWwpKTtcclxuICAgICAgICBpZiAoIWRhdGEgfHwgZGF0YS5sZW5ndGggPT09IDApXHJcbiAgICAgICAgICAgIHJldHVybjtcclxuXHJcbiAgICAgICAgY29uc3QgbWVzc2FnZSA9IGF3YWl0IGZpcnN0VmFsdWVGcm9tKHRoaXMudHJhbnNsYXRlLmdldCh0aGlzLmRpc2FwcHJvdmVkTWVzYWdlKSk7XHJcbiAgICAgICAgdGhpcy5hbGVydC5zdWNjZXNzKG1lc3NhZ2UsIG51bGwsICdmYS1zb2xpZCBmYS10aHVtYnMtZG93bicpXHJcbiAgICAgICAgdGhpcy5yZWZyZXNoKCk7XHJcbiAgICB9XHJcbiAgICBhcGlEaXNhcHByb3ZlKG1vZGVsOiBhbnkpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5zZXJ2aWNlLmRpc2FwcHJvdmUobW9kZWwpO1xyXG4gICAgfVxyXG5cclxuICAgIGdldFNlbGVjdGVkSWRzKCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLnNlbGVjdGVkSWRzO1xyXG4gICAgICAgIC8vIGlmICghdGhpcy5wYWdlZExpc3QgfHwgIXRoaXMucGFnZWRMaXN0Lml0ZW1zKSByZXR1cm4gW107XHJcblxyXG4gICAgICAgIC8vIGxldCBpZHMgPSBbXTtcclxuICAgICAgICAvLyBmb3IgKGNvbnN0IGl0ZW0gb2YgdGhpcy5wYWdlZExpc3QuaXRlbXMpIHtcclxuICAgICAgICAvLyAgICAgaWYgKCFpdGVtLnNlbGVjdGVkIHx8ICFpdGVtLmlkKSBjb250aW51ZTtcclxuXHJcbiAgICAgICAgLy8gICAgIGlkcy5wdXNoKGl0ZW0uaWQpO1xyXG4gICAgICAgIC8vIH1cclxuICAgICAgICAvLyByZXR1cm4gaWRzO1xyXG4gICAgfVxyXG5cclxuICAgIHNob3dTdW0oKSB7IH1cclxuICAgIGFzeW5jIHN1bSgpIHtcclxuICAgICAgICB0aGlzLnN1bU1vZGVsID0gbnVsbDtcclxuICAgICAgICBjb25zdCBkYXRhID0gYXdhaXQgZmlyc3RWYWx1ZUZyb20odGhpcy5hcGlTdW0odGhpcy5pbnRlcm5hbEZpbHRlcikpO1xyXG4gICAgICAgIGlmIChkYXRhKSB7XHJcbiAgICAgICAgICAgIHRoaXMuc3VtTW9kZWwgPSBkYXRhO1xyXG4gICAgICAgICAgICB0aGlzLnNob3dTdW0oKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBjb25zdCBtZXNzYWdlID0gYXdhaXQgZmlyc3RWYWx1ZUZyb20odGhpcy50cmFuc2xhdGUuZ2V0KCdBbGVydC5TdW1FcnJvcicpKTtcclxuICAgICAgICAgICAgdGhpcy5hbGVydC5lcnJvcihtZXNzYWdlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBhcGlTdW0oZmlsdGVyOiBhbnkpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5zZXJ2aWNlLnN1bShmaWx0ZXIpO1xyXG4gICAgfVxyXG5cclxuICAgIGV4cG9ydChmaWxlVHlwZUlkOiBudW1iZXIpIHtcclxuICAgICAgICB0aGlzLnNlcnZpY2UuZXhwb3J0KHRoaXMuaW50ZXJuYWxGaWx0ZXIsIGZpbGVUeXBlSWQpLnN1YnNjcmliZShkYXRhID0+IHtcclxuICAgICAgICAgICAgdGhpcy5kb3dubG9hZEZpbGUoZGF0YSwgJ2V4cG9ydC54bHN4JywgJ2FwcGxpY2F0aW9uL3ZuZC5vcGVueG1sZm9ybWF0cy1vZmZpY2Vkb2N1bWVudC5zcHJlYWRzaGVldG1sLnNoZWV0Jyk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIG92ZXJyaWRlIHByaW50KHByaW50VHlwZT86IFByaW50VHlwZSkge1xyXG4gICAgICAgIGlmICghdGhpcy5tb2RlbCB8fCAhdGhpcy5tb2RlbC5pdGVtcykgcmV0dXJuO1xyXG5cclxuICAgICAgICBjb25zdCBpZHMgPSB0aGlzLmdldFNlbGVjdGVkSWRzKCk7XHJcbiAgICAgICAgZm9yIChjb25zdCBpZCBvZiBpZHMpIHtcclxuICAgICAgICAgICAgc3VwZXIucHJpbnQoaWQsIHByaW50VHlwZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59Il19
|
|
309
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1iYXNlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3play9zcmMvbGliL2NvbXBvbmVudHMvbGlzdC1iYXNlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBR3ZELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNqRCxPQUFPLEVBQWdCLFVBQVUsRUFBYSxLQUFLLEVBQWEsTUFBTSxXQUFXLENBQUM7QUFFbEYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxXQUFXLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDbkgsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFFdEMsOEJBQThCO0FBRzlCLE1BQU0sT0FBTyxpQkFBOEUsU0FBUSxhQUF3QztJQWF2SSxJQUFJLFNBQVM7UUFDVCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDM0IsQ0FBQztJQUNELElBQ0ksU0FBUyxDQUFDLENBQWU7UUFDekIsSUFBSSxDQUFDLFVBQVUsR0FBRyxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDbkQsQ0FBQztJQVdELFlBQStCLE9BQWlCO1FBQzVDLEtBQUssRUFBRSxDQUFDO1FBRG1CLFlBQU8sR0FBUCxPQUFPLENBQVU7UUE3QmhELFdBQU0sR0FBUSxJQUFJLFVBQVUsRUFBRSxDQUFDO1FBQy9CLGVBQVUsR0FBRyxJQUFJLENBQUM7UUFFUixtQkFBYyxHQUFRLElBQUksVUFBVSxFQUFFLENBQUM7UUFDakQsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUNuQixnQkFBVyxHQUFVLEVBQUUsQ0FBQztRQUN4QixrQkFBYSxHQUFVLEVBQUUsQ0FBQztRQUMxQixVQUFLLEdBQUcsSUFBSSxLQUFLLEVBQUUsQ0FBQztRQUVwQixZQUFPLEdBQUcsT0FBTyxDQUFDO1FBRVYsZUFBVSxHQUFHLElBQUksQ0FBQztRQVcxQixpQkFBWSxHQUFpQixFQUFFLENBQUM7UUFFdEIsbUJBQWMsR0FBRyxnQkFBZ0IsQ0FBQztRQUdsQyxzQkFBaUIsR0FBRyxtQkFBbUIsQ0FBQztRQU96QyxjQUFTLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDckMsVUFBSyxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUp0QyxDQUFDO0lBV1EsSUFBSTtRQUNULEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUViLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNiLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBQ1EsS0FBSyxDQUFDLFNBQVM7UUFDcEIseUJBQXlCO1FBQ3pCLElBQUksQ0FBQyxLQUFLLEdBQUcsTUFBTSxjQUFjLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQztRQUN2RSxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNiLElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDO1lBQzNDLElBQUksQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDbEMsVUFBVSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLGNBQWMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQy9FLENBQUM7WUFDRCxJQUFJLENBQUMsS0FBSyxHQUFHLFdBQVcsQ0FBQyxHQUFHLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDckcsQ0FBQzs7WUFFRyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksS0FBSyxFQUFFLENBQUM7UUFDN0Isb0NBQW9DO0lBQ3hDLENBQUM7SUFDRCxTQUFTLENBQUMsTUFBVztRQUNqQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFDRCxTQUFTO1FBQ0wsTUFBTSxFQUFFLEdBQUcsUUFBUSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDakQsRUFBRSxFQUFFLGNBQWMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUNsRixDQUFDO0lBQ1Esb0JBQW9CO1FBQ3pCLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ2pCLElBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxXQUFXLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksV0FBVyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQztnQkFDL0YsS0FBSyxNQUFNLElBQUksSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO29CQUNsQyxNQUFNLEdBQUcsR0FBRyxJQUFXLENBQUM7b0JBQ3hCLEdBQUcsQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUNyRCxDQUFDO1lBQ0wsQ0FBQztRQUNMLENBQUM7SUFDTCxDQUFDO0lBR1MsaUJBQWlCO0lBQzNCLENBQUM7SUFDTyxnQkFBZ0I7UUFDcEIsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRTVFLElBQUksV0FBVyxFQUFFLENBQUM7WUFDZCxNQUFNLEdBQUcsR0FBRyxhQUFhLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3hDLElBQUksR0FBRyxJQUFJLEdBQUcsQ0FBQyxHQUFHLElBQUksR0FBRyxDQUFDLEdBQUcsS0FBSyxJQUFJLENBQUMsR0FBRyxJQUFJLEdBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQztnQkFDdkQsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQzVDLHVGQUF1RjtZQUMzRixDQUFDO2lCQUFNLENBQUM7Z0JBQ0osWUFBWSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUN0QyxDQUFDO1FBQ0wsQ0FBQzthQUFNLENBQUM7WUFDSixZQUFZLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3RDLENBQUM7SUFDTCxDQUFDO0lBQ0QsS0FBSyxDQUFDLFVBQVUsQ0FBQyxJQUFZO1FBQ3pCLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztRQUNoQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDeEIsTUFBTSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBQ0QsY0FBYyxDQUFDLFFBQWdCO1FBQzNCLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztRQUN4QyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7UUFDaEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN2QixDQUFDO0lBQ0QsVUFBVTtRQUNOLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUNELE1BQU07UUFDRixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFFcEIsc0JBQXNCO1FBQ3RCLHdEQUF3RDtRQUN4RCxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksR0FBRyxDQUFDLENBQUM7UUFDN0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDO1FBQ3JCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUNTLFlBQVk7UUFDbEIsSUFBSSxDQUFDLGNBQWMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDckQsSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFDTyxjQUFjO1FBQ2xCLElBQUksSUFBSSxDQUFDLFVBQVU7WUFDZixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQTtJQUNqQyxDQUFDO0lBQ08sa0JBQWtCO1FBQ3RCLGFBQWEsQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFO1lBQ3hCLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRztZQUNiLE1BQU0sRUFBRSxJQUFJLENBQUMsY0FBYztTQUM5QixDQUFDLENBQUM7SUFDUCxDQUFDO0lBQ0QsS0FBSztRQUNELElBQUksQ0FBQyxNQUFNLEdBQUcsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUUsQ0FBQztRQUN4QyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUNELE9BQU87UUFDSCxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUdELE1BQU07UUFDRixNQUFNLEdBQUcsR0FBRyxTQUFTLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDbEQsMkVBQTJFO1FBQzNFLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxFQUFFLFFBQVEsQ0FBQyxFQUNoQyxFQUFFLFdBQVcsRUFBRSxFQUFFLFNBQVMsRUFBRSxHQUFHLEdBQUcsV0FBVyxFQUFFLEVBQUUsQ0FDcEQsQ0FBQztJQUNOLENBQUM7SUFDRCxLQUFLLENBQUMsTUFBTSxDQUFDLEVBQU87UUFDaEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNuQixNQUFNLElBQUksR0FBRyxNQUFNLGNBQWMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDdEQsSUFBSSxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUM7WUFDaEIsTUFBTSxPQUFPLEdBQUcsTUFBTSxjQUFjLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQztZQUMxRSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLG1CQUFtQixDQUFDLENBQUE7WUFDcEQsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ25CLENBQUM7SUFDTCxDQUFDO0lBQ0QsU0FBUyxDQUFDLEVBQU87UUFDYixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRCxLQUFLLENBQUMsT0FBTyxDQUFDLEVBQU8sRUFBRSxHQUFRO1FBQzNCLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDbkIsTUFBTSxJQUFJLEdBQUcsTUFBTSxjQUFjLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQTtRQUMzRCxJQUFJLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQztZQUNoQixNQUFNLE9BQU8sR0FBRyxNQUFNLGNBQWMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDO1lBQzFFLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUUsbUJBQW1CLENBQUMsQ0FBQTtZQUNwRCxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDbkIsQ0FBQztJQUNMLENBQUM7SUFDRCxVQUFVLENBQUMsRUFBTyxFQUFFLEdBQVE7UUFDeEIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVELElBQUksQ0FBQyxFQUFVO1FBQ1gsdUNBQXVDO1FBQ3ZDLDZEQUE2RDtRQUM3RCxLQUFLO1FBRUwsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxFQUMvQixFQUFFLFdBQVcsRUFBRSxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsR0FBRyxHQUFHLFdBQVcsRUFBRSxFQUFFLENBQ3pELENBQUM7SUFDTixDQUFDO0lBQ0QsS0FBSyxDQUFDLEVBQVUsRUFBRSxHQUFXO1FBQ3pCLG9GQUFvRjtRQUNwRixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsRUFBRSxFQUFFLEdBQUcsQ0FBQyxFQUNwQyxFQUFFLFdBQVcsRUFBRSxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsR0FBRyxHQUFHLFdBQVcsRUFBRSxFQUFFLENBQ3pELENBQUM7SUFDTixDQUFDO0lBQ0QsTUFBTSxDQUFDLElBQVM7UUFDWixJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUMvQixNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDO1FBQ25CLElBQUksRUFBRSxFQUFFLENBQUM7WUFDTCxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDaEIsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUM7b0JBQ2pDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO29CQUMxQixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDbEMsQ0FBQztZQUVMLENBQUM7aUJBQU0sQ0FBQztnQkFDSixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxLQUFLLEVBQUUsQ0FBQyxDQUFDO2dCQUNoRSxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztZQUMzRSxDQUFDO1FBQ0wsQ0FBQztJQUNMLENBQUM7SUFLRCxnQkFBZ0IsQ0FBQyxFQUFVO1FBQ3ZCLElBQUksQ0FBQyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWTtZQUFFLE9BQU87UUFFdEMsTUFBTSxHQUFHLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDO1FBQzFCLElBQUksQ0FBQyxZQUFZLEdBQUcsRUFBRSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFDRCx3QkFBd0I7UUFDcEIsTUFBTSxHQUFHLEdBQUcsRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLGNBQWMsRUFBRSxFQUFFLENBQUM7UUFDM0MsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksR0FBRyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVk7WUFBRSxPQUFPO1FBRW5FLElBQUksQ0FBQyxZQUFZLEdBQUcsRUFBRSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFDRCxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQVU7UUFDcEIsSUFBSSxDQUFDLEtBQUs7WUFBRSxPQUFPO1FBRW5CLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDbkIsTUFBTSxJQUFJLEdBQUcsTUFBTSxjQUFjLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQzFELElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxDQUFDO1lBQzFCLE9BQU87UUFFWCxNQUFNLE9BQU8sR0FBRyxNQUFNLGNBQWMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQztRQUM5RSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLHVCQUF1QixDQUFDLENBQUE7UUFDMUQsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFDRCxVQUFVLENBQUMsS0FBVTtRQUNqQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFHRCxtQkFBbUIsQ0FBQyxFQUFVO1FBQzFCLElBQUksQ0FBQyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZTtZQUFFLE9BQU87UUFFekMsTUFBTSxHQUFHLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDO1FBQzFCLElBQUksQ0FBQyxZQUFZLEdBQUcsRUFBRSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFDRCwyQkFBMkI7UUFDdkIsTUFBTSxHQUFHLEdBQUcsRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLGNBQWMsRUFBRSxFQUFFLENBQUM7UUFDM0MsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksR0FBRyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWU7WUFBRSxPQUFPO1FBRXRFLElBQUksQ0FBQyxZQUFZLEdBQUcsRUFBRSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFDRCxLQUFLLENBQUMsVUFBVSxDQUFDLEtBQVU7UUFDdkIsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZO1lBQUUsT0FBTztRQUV6QyxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQzVCLEtBQUssQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUM7WUFDeEMsS0FBSyxDQUFDLE9BQU8sR0FBRyxZQUFZLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDaEUsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPO2dCQUFFLE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQztRQUM3QyxDQUFDO1FBRUQsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNuQixNQUFNLElBQUksR0FBRyxNQUFNLGNBQWMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDN0QsSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsTUFBTSxLQUFLLENBQUM7WUFDMUIsT0FBTztRQUVYLE1BQU0sT0FBTyxHQUFHLE1BQU0sY0FBYyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUM7UUFDakYsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLElBQUksRUFBRSx5QkFBeUIsQ0FBQyxDQUFBO1FBQzVELElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBQ0QsYUFBYSxDQUFDLEtBQVU7UUFDcEIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQsY0FBYztRQUNWLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztRQUN4QiwyREFBMkQ7UUFFM0QsZ0JBQWdCO1FBQ2hCLDZDQUE2QztRQUM3QyxnREFBZ0Q7UUFFaEQseUJBQXlCO1FBQ3pCLElBQUk7UUFDSixjQUFjO0lBQ2xCLENBQUM7SUFFRCxPQUFPLEtBQUssQ0FBQztJQUNiLEtBQUssQ0FBQyxHQUFHO1FBQ0wsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7UUFDckIsTUFBTSxJQUFJLEdBQUcsTUFBTSxjQUFjLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQztRQUNwRSxJQUFJLElBQUksRUFBRSxDQUFDO1lBQ1AsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7WUFDckIsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ25CLENBQUM7YUFBTSxDQUFDO1lBQ0osTUFBTSxPQUFPLEdBQUcsTUFBTSxjQUFjLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDO1lBQzNFLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzlCLENBQUM7SUFDTCxDQUFDO0lBQ0QsTUFBTSxDQUFDLE1BQVc7UUFDZCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRCxNQUFNLENBQUMsVUFBa0I7UUFDckIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxVQUFVLENBQUMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDbEUsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsYUFBYSxFQUFFLG1FQUFtRSxDQUFDLENBQUM7UUFDaEgsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBR1EsS0FBSyxDQUFDLFNBQXFCO1FBQ2hDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLO1lBQUUsT0FBTztRQUU3QyxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDbEMsS0FBSyxNQUFNLEVBQUUsSUFBSSxHQUFHLEVBQUUsQ0FBQztZQUNuQixLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUUsRUFBRSxTQUFTLENBQUMsQ0FBQztRQUMvQixDQUFDO0lBQ0wsQ0FBQzs4R0F2VVEsaUJBQWlCO2tHQUFqQixpQkFBaUI7OzJGQUFqQixpQkFBaUI7a0JBRDdCLFNBQVM7MkVBa0JGLFNBQVM7c0JBRFosS0FBSztnQkFLMEQsV0FBVztzQkFBMUUsU0FBUzt1QkFBQyxhQUFhLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUdzQixZQUFZO3NCQUE1RSxTQUFTO3VCQUFDLGNBQWMsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBR3dCLGVBQWU7c0JBQWxGLFNBQVM7dUJBQUMsaUJBQWlCLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVmlld0NoaWxkLCBEaXJlY3RpdmUsIGluamVjdCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgSVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcyc7XHJcbmltcG9ydCB7IEJhc2VDb21wb25lbnQgfSBmcm9tICcuL2Jhc2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQXBwcm92ZU1vZGVsLCBGaWx0ZXJCYXNlLCBQYWdlZExpc3QsIFBhZ2VyLCBQcmludFR5cGUgfSBmcm9tICcuLi9tb2RlbHMnO1xyXG5pbXBvcnQgeyBaZWtNb2RhbCB9IGZyb20gJy4uL21vZHVsZXMvbW9kYWwvbW9kYWwvbW9kYWwuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQWxlcnRTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvYWxlcnQuc2VydmljZSc7XHJcbmltcG9ydCB7IEFycmF5SGVscGVyLCBDb252ZXJ0LCBGaWx0ZXJIZWxwZXIsIFBhZ2VySGVscGVyLCBTdG9yYWdlSGVscGVyLCBTdHJpbmdIZWxwZXIsIFVybEhlbHBlciB9IGZyb20gJy4uL3V0aWxzJztcclxuaW1wb3J0IHsgZmlyc3RWYWx1ZUZyb20gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQm9vbGVhbklucHV0IH0gZnJvbSAnLi90eXBlcyc7XHJcbi8vIGRlY2xhcmUgbGV0IGJvb3RzdHJhcDogYW55O1xyXG5cclxuQERpcmVjdGl2ZSgpXHJcbmV4cG9ydCBjbGFzcyBMaXN0QmFzZUNvbXBvbmVudDxUU2VydmljZSBleHRlbmRzIElTZXJ2aWNlID0gSVNlcnZpY2UsIFRQYWdlZExpc3RJdGVtID0gYW55PiBleHRlbmRzIEJhc2VDb21wb25lbnQ8UGFnZWRMaXN0PFRQYWdlZExpc3RJdGVtPj4ge1xyXG4gICAgZmlsdGVyOiBhbnkgPSBuZXcgRmlsdGVyQmFzZSgpO1xyXG4gICAgc2F2ZUZpbHRlciA9IHRydWU7XHJcbiAgICBzb3J0RmllbGRzOiBhbnk7XHJcbiAgICBwcm90ZWN0ZWQgaW50ZXJuYWxGaWx0ZXI6IGFueSA9IG5ldyBGaWx0ZXJCYXNlKCk7XHJcbiAgICBpc0ZpbHRlcmVkID0gZmFsc2U7XHJcbiAgICBzZWxlY3RlZElkczogYW55W10gPSBbXTtcclxuICAgIHNlbGVjdGVkSXRlbXM6IGFueVtdID0gW107XHJcbiAgICBwYWdlciA9IG5ldyBQYWdlcigpO1xyXG4gICAgc3VtTW9kZWw6IGFueTtcclxuICAgIHRhYmxlSWQgPSAndGFibGUnO1xyXG5cclxuICAgIHByaXZhdGUgX2luaXRJdGVtcyA9IHRydWU7XHJcbiAgICBnZXQgaW5pdEl0ZW1zKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9pbml0SXRlbXM7XHJcbiAgICB9XHJcbiAgICBASW5wdXQoKVxyXG4gICAgc2V0IGluaXRJdGVtcyh2OiBCb29sZWFuSW5wdXQpIHtcclxuICAgICAgICB0aGlzLl9pbml0SXRlbXMgPSBDb252ZXJ0LnRvQm9vbGVhblByb3BlcnR5KHYpO1xyXG4gICAgfVxyXG5cclxuICAgIEBWaWV3Q2hpbGQoJ2ZpbHRlck1vZGFsJywgeyBzdGF0aWM6IGZhbHNlIH0pIHByb3RlY3RlZCByZWFkb25seSBmaWx0ZXJNb2RhbD86IFpla01vZGFsIHwgbnVsbDtcclxuXHJcbiAgICBhcHByb3ZlTW9kZWw6IEFwcHJvdmVNb2RlbCA9IHt9O1xyXG4gICAgQFZpZXdDaGlsZCgnYXBwcm92ZU1vZGFsJywgeyBzdGF0aWM6IGZhbHNlIH0pIHByb3RlY3RlZCByZWFkb25seSBhcHByb3ZlTW9kYWw/OiBaZWtNb2RhbCB8IG51bGw7XHJcbiAgICBwcm90ZWN0ZWQgYXBwcm92ZWRNZXNhZ2UgPSAnQWxlcnQuQXBwcm92ZWQnO1xyXG5cclxuICAgIEBWaWV3Q2hpbGQoJ2Rpc2FwcHJvdmVNb2RhbCcsIHsgc3RhdGljOiBmYWxzZSB9KSBwcm90ZWN0ZWQgcmVhZG9ubHkgZGlzYXBwcm92ZU1vZGFsPzogWmVrTW9kYWwgfCBudWxsO1xyXG4gICAgcHJvdGVjdGVkIGRpc2FwcHJvdmVkTWVzYWdlID0gJ0FsZXJ0LkRpc2FwcHJvdmVkJztcclxuXHJcbiAgICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgcmVhZG9ubHkgc2VydmljZTogVFNlcnZpY2UpIHtcclxuICAgICAgICBzdXBlcigpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICByZWFkb25seSB0cmFuc2xhdGUgPSBpbmplY3QoVHJhbnNsYXRlU2VydmljZSk7XHJcbiAgICByZWFkb25seSBhbGVydCA9IGluamVjdChBbGVydFNlcnZpY2UpO1xyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG4gICAgb3ZlcnJpZGUgaW5pdCgpIHtcclxuICAgICAgICBzdXBlci5pbml0KCk7XHJcblxyXG4gICAgICAgIHRoaXMucmVzZXQoKTtcclxuICAgICAgICB0aGlzLmluaXREZWZhdWx0RmlsdGVyKCk7XHJcbiAgICAgICAgdGhpcy5pbml0U3RvcmVkRmlsdGVyKCk7XHJcbiAgICAgICAgdGhpcy5hc3NpZ25GaWx0ZXIoKTtcclxuICAgIH1cclxuICAgIG92ZXJyaWRlIGFzeW5jIGJpbmRNb2RlbCgpIHtcclxuICAgICAgICAvLyB0aGlzLnNlbGVjdGVkSWRzID0gW107XHJcbiAgICAgICAgdGhpcy5tb2RlbCA9IGF3YWl0IGZpcnN0VmFsdWVGcm9tKHRoaXMuYXBpR2V0QWxsKHRoaXMuaW50ZXJuYWxGaWx0ZXIpKTtcclxuICAgICAgICBpZiAodGhpcy5tb2RlbCkge1xyXG4gICAgICAgICAgICBsZXQgdG90YWxDb3VudCA9IHRoaXMubW9kZWwudG90YWxJdGVtQ291bnQ7XHJcbiAgICAgICAgICAgIGlmICghdG90YWxDb3VudCAmJiB0aGlzLm1vZGVsLnBhZ2VyKSB7XHJcbiAgICAgICAgICAgICAgICB0b3RhbENvdW50ID0gdGhpcy5tb2RlbC5wYWdlciA/ICh0aGlzLm1vZGVsLnBhZ2VyLnRvdGFsSXRlbUNvdW50IHx8IDApIDogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aGlzLnBhZ2VyID0gUGFnZXJIZWxwZXIuZ2V0KHRvdGFsQ291bnQsIHRoaXMuaW50ZXJuYWxGaWx0ZXIucGFnZSwgdGhpcy5pbnRlcm5hbEZpbHRlci5wYWdlU2l6ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2VcclxuICAgICAgICAgICAgdGhpcy5wYWdlciA9IG5ldyBQYWdlcigpO1xyXG4gICAgICAgIC8vdGhpcy5wYWdlZExpc3QucGFnZXIgPSB0aGlzLnBhZ2VyO1xyXG4gICAgfVxyXG4gICAgYXBpR2V0QWxsKGZpbHRlcjogYW55KSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuc2VydmljZS5nZXRBbGwoZmlsdGVyKTtcclxuICAgIH1cclxuICAgIHNjcm9sbFRvcCgpIHtcclxuICAgICAgICBjb25zdCBlbCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRoaXMudGFibGVJZCk7XHJcbiAgICAgICAgZWw/LnNjcm9sbEludG9WaWV3KHsgYmVoYXZpb3I6ICdzbW9vdGgnLCBibG9jazogJ3N0YXJ0JywgaW5saW5lOiAnbmVhcmVzdCcgfSk7XHJcbiAgICB9XHJcbiAgICBvdmVycmlkZSBvbkJpbmRNb2RlbENvbXBsZXRlZCgpIHtcclxuICAgICAgICBpZiAodGhpcy5pbml0SXRlbXMpIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMubW9kZWwgJiYgQXJyYXlIZWxwZXIuaXNBcnJheSh0aGlzLm1vZGVsLml0ZW1zKSAmJiBBcnJheUhlbHBlci5pc0FycmF5KHRoaXMuc2VsZWN0ZWRJZHMpKSB7XHJcbiAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgdGhpcy5tb2RlbC5pdGVtcykge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHRtcCA9IGl0ZW0gYXMgYW55O1xyXG4gICAgICAgICAgICAgICAgICAgIHRtcC5zZWxlY3RlZCA9IHRoaXMuc2VsZWN0ZWRJZHMuaW5jbHVkZXModG1wLmlkKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcblxyXG4gICAgcHJvdGVjdGVkIGluaXREZWZhdWx0RmlsdGVyKCkge1xyXG4gICAgfVxyXG4gICAgcHJpdmF0ZSBpbml0U3RvcmVkRmlsdGVyKCkge1xyXG4gICAgICAgIGNvbnN0IGZpbHRlclBhcmFtID0gdGhpcy5nZXRRdWVyeVBhcmFtKCdmaWx0ZXInKSB8fCB0aGlzLmdldFBhcmFtKCdmaWx0ZXInKTtcclxuXHJcbiAgICAgICAgaWYgKGZpbHRlclBhcmFtKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHRtcCA9IFN0b3JhZ2VIZWxwZXIuZ2V0KCdmaWx0ZXInKTtcclxuICAgICAgICAgICAgaWYgKHRtcCAmJiB0bXAudXJsICYmIHRtcC51cmwgPT09IHRoaXMudXJsICYmIHRtcC5maWx0ZXIpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuZmlsdGVyID0gT2JqZWN0LmFzc2lnbih7fSwgdG1wLmZpbHRlcik7XHJcbiAgICAgICAgICAgICAgICAvL3dlIGRvbnQgbmVlZCB0aGlzLmFzc2lnbkZpbHRlcigpOyBiZWNhdXNlIGFmdGVyIGluaXRTdG9yZWRGaWx0ZXIoKTsgd2lsbCBiZSBhc3NpZ25lZC5cclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKCdmaWx0ZXInKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKCdmaWx0ZXInKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBhc3luYyBjaGFuZ2VQYWdlKHBhZ2U6IG51bWJlcikge1xyXG4gICAgICAgIHRoaXMuaW50ZXJuYWxGaWx0ZXIucGFnZSA9IHBhZ2U7XHJcbiAgICAgICAgdGhpcy5maWx0ZXIucGFnZSA9IHBhZ2U7XHJcbiAgICAgICAgYXdhaXQgdGhpcy5iaW5kTW9kZWwoKTtcclxuICAgICAgICB0aGlzLmF1dG9TYXZlRmlsdGVyKCk7XHJcbiAgICAgICAgdGhpcy5zY3JvbGxUb3AoKTtcclxuICAgIH1cclxuICAgIGNoYW5nZVBhZ2VTaXplKHBhZ2VTaXplOiBudW1iZXIpIHtcclxuICAgICAgICB0aGlzLmludGVybmFsRmlsdGVyLnBhZ2VTaXplID0gcGFnZVNpemU7XHJcbiAgICAgICAgdGhpcy5maWx0ZXIucGFnZVNpemUgPSBwYWdlU2l6ZTtcclxuICAgICAgICB0aGlzLmNoYW5nZVBhZ2UoMSk7XHJcbiAgICB9XHJcbiAgICBzaG93RmlsdGVyKCkge1xyXG4gICAgICAgIHRoaXMuZmlsdGVyTW9kYWw/LnNob3coKTtcclxuICAgIH1cclxuICAgIHNlYXJjaCgpIHtcclxuICAgICAgICB0aGlzLmFzc2lnbkZpbHRlcigpO1xyXG5cclxuICAgICAgICAvLyB0aGlzLmNoYW5nZVBhZ2UoMSk7XHJcbiAgICAgICAgLy9jYW4ndCB1c2UgdGhpcyBiZWNhdXNlIGRvbid0IHdhbnQgdG8gZXhlY3V0ZSBzY3JvbGxUb3BcclxuICAgICAgICB0aGlzLmludGVybmFsRmlsdGVyLnBhZ2UgPSAxO1xyXG4gICAgICAgIHRoaXMuZmlsdGVyLnBhZ2UgPSAxO1xyXG4gICAgICAgIHRoaXMuYmluZE1vZGVsKCk7XHJcbiAgICAgICAgdGhpcy5hdXRvU2F2ZUZpbHRlcigpO1xyXG4gICAgfVxyXG4gICAgcHJvdGVjdGVkIGFzc2lnbkZpbHRlcigpIHtcclxuICAgICAgICB0aGlzLmludGVybmFsRmlsdGVyID0gT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5maWx0ZXIpO1xyXG4gICAgICAgIHRoaXMuaXNGaWx0ZXJlZCA9ICFGaWx0ZXJIZWxwZXIuaXNFbXB0eSh0aGlzLmludGVybmFsRmlsdGVyKTtcclxuICAgIH1cclxuICAgIHByaXZhdGUgYXV0b1NhdmVGaWx0ZXIoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuc2F2ZUZpbHRlcilcclxuICAgICAgICAgICAgdGhpcy5pbnRlcm5hbFNhdmVGaWx0ZXIoKVxyXG4gICAgfVxyXG4gICAgcHJpdmF0ZSBpbnRlcm5hbFNhdmVGaWx0ZXIoKSB7XHJcbiAgICAgICAgU3RvcmFnZUhlbHBlci5zZXQoJ2ZpbHRlcicsIHtcclxuICAgICAgICAgICAgdXJsOiB0aGlzLnVybCxcclxuICAgICAgICAgICAgZmlsdGVyOiB0aGlzLmludGVybmFsRmlsdGVyXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICByZXNldCgpIHtcclxuICAgICAgICB0aGlzLmZpbHRlciA9IHsgcGFnZTogMSwgcGFnZVNpemU6IDI1IH07XHJcbiAgICAgICAgdGhpcy5hc3NpZ25GaWx0ZXIoKTtcclxuICAgIH1cclxuICAgIHJlZnJlc2goKSB7XHJcbiAgICAgICAgdGhpcy5iaW5kTW9kZWwoKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgY3JlYXRlKCkge1xyXG4gICAgICAgIGNvbnN0IHVybCA9IFVybEhlbHBlci5nZXROb1BhcmFtKHRoaXMucm91dGVyLnVybCk7XHJcbiAgICAgICAgLy8gdGhpcy5yb3V0ZXIubmF2aWdhdGUoW3VybCwgJ2NyZWF0ZScsIHsgcmV0dXJuVXJsOiB1cmwgKyAnO2ZpbHRlcj0xJyB9XSk7XHJcbiAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW3VybCwgJ2NyZWF0ZSddLFxyXG4gICAgICAgICAgICB7IHF1ZXJ5UGFyYW1zOiB7IHJldHVyblVybDogdXJsICsgJz9maWx0ZXI9MScgfSB9XHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuICAgIGFzeW5jIGRlbGV0ZShpZDogYW55KSB7XHJcbiAgICAgICAgdGhpcy5hbGVydC5jbGVhcigpO1xyXG4gICAgICAgIGNvbnN0IGRhdGEgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLmFwaURlbGV0ZShpZCkpO1xyXG4gICAgICAgIGlmIChkYXRhPy5zdWNjZXNzKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IG1lc3NhZ2UgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLnRyYW5zbGF0ZS5nZXQoJ0FsZXJ0LkRlbGV0ZWQnKSk7XHJcbiAgICAgICAgICAgIHRoaXMuYWxlcnQuZXJyb3IobWVzc2FnZSwgbnVsbCwgJ2ZhLXNvbGlkIGZhLXRyYXNoJylcclxuICAgICAgICAgICAgdGhpcy5yZWZyZXNoKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgYXBpRGVsZXRlKGlkOiBhbnkpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5zZXJ2aWNlLmRlbGV0ZShpZCk7XHJcbiAgICB9XHJcblxyXG4gICAgYXN5bmMgZGVsZXRlMihpZDogYW55LCBpZDI6IGFueSkge1xyXG4gICAgICAgIHRoaXMuYWxlcnQuY2xlYXIoKTtcclxuICAgICAgICBjb25zdCBkYXRhID0gYXdhaXQgZmlyc3RWYWx1ZUZyb20odGhpcy5hcGlEZWxldGUyKGlkLCBpZDIpKVxyXG4gICAgICAgIGlmIChkYXRhPy5zdWNjZXNzKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IG1lc3NhZ2UgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLnRyYW5zbGF0ZS5nZXQoJ0FsZXJ0LkRlbGV0ZWQnKSk7XHJcbiAgICAgICAgICAgIHRoaXMuYWxlcnQuZXJyb3IobWVzc2FnZSwgbnVsbCwgJ2ZhLXNvbGlkIGZhLXRyYXNoJylcclxuICAgICAgICAgICAgdGhpcy5yZWZyZXNoKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgYXBpRGVsZXRlMihpZDogYW55LCBpZDI6IGFueSkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLnNlcnZpY2UuZGVsZXRlMihpZCwgaWQyKTtcclxuICAgIH1cclxuXHJcbiAgICBlZGl0KGlkOiBudW1iZXIpIHtcclxuICAgICAgICAvLyB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbdGhpcy51cmwsIGlkXSxcclxuICAgICAgICAvLyAgICAgeyBxdWVyeVBhcmFtczogeyByZXR1cm5Vcmw6IHRoaXMudXJsICsgJztmaWx0ZXI9MScgfSB9XHJcbiAgICAgICAgLy8gKTtcclxuXHJcbiAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW3RoaXMudXJsLCBpZF0sXHJcbiAgICAgICAgICAgIHsgcXVlcnlQYXJhbXM6IHsgcmV0dXJuVXJsOiB0aGlzLnVybCArICc/ZmlsdGVyPTEnIH0gfVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcbiAgICBlZGl0MihpZDogbnVtYmVyLCBpZDI6IG51bWJlcikge1xyXG4gICAgICAgIC8vIHRoaXMucm91dGVyLm5hdmlnYXRlKFt0aGlzLnVybCwgaWQsIGlkMiwgeyByZXR1cm5Vcmw6IHRoaXMudXJsICsgJztmaWx0ZXI9MScgfV0pO1xyXG4gICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFt0aGlzLnVybCwgaWQsIGlkMl0sXHJcbiAgICAgICAgICAgIHsgcXVlcnlQYXJhbXM6IHsgcmV0dXJuVXJsOiB0aGlzLnVybCArICc/ZmlsdGVyPTEnIH0gfVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcbiAgICBzZWxlY3QoaXRlbTogYW55KSB7XHJcbiAgICAgICAgaXRlbS5zZWxlY3RlZCA9ICFpdGVtLnNlbGVjdGVkO1xyXG4gICAgICAgIGNvbnN0IGlkID0gaXRlbS5pZDtcclxuICAgICAgICBpZiAoaWQpIHtcclxuICAgICAgICAgICAgaWYgKGl0ZW0uc2VsZWN0ZWQpIHtcclxuICAgICAgICAgICAgICAgIGlmICghdGhpcy5zZWxlY3RlZElkcy5pbmNsdWRlcyhpZCkpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkSWRzLnB1c2goaWQpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtcy5wdXNoKGl0ZW0pO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRJZHMgPSB0aGlzLnNlbGVjdGVkSWRzLmZpbHRlcihpdGVtID0+IGl0ZW0gIT09IGlkKTtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtcyA9IHRoaXMuc2VsZWN0ZWRJdGVtcy5maWx0ZXIoaXRlbSA9PiBpdGVtLmlkICE9PSBpZCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG5cclxuXHJcblxyXG4gICAgc2hvd0FwcHJvdmVNb2RhbChpZDogbnVtYmVyKSB7XHJcbiAgICAgICAgaWYgKCFpZCB8fCAhdGhpcy5hcHByb3ZlTW9kYWwpIHJldHVybjtcclxuXHJcbiAgICAgICAgY29uc3QgdG1wID0geyBpZHM6IFtpZF0gfTtcclxuICAgICAgICB0aGlzLmFwcHJvdmVNb2RlbCA9IHt9O1xyXG4gICAgICAgIHRoaXMuYXBwcm92ZU1vZGFsLnNob3codG1wKTtcclxuICAgIH1cclxuICAgIHNob3dBcHByb3ZlU2VsZWN0ZWRNb2RhbCgpIHtcclxuICAgICAgICBjb25zdCB0bXAgPSB7IGlkczogdGhpcy5nZXRTZWxlY3RlZElkcygpIH07XHJcbiAgICAgICAgaWYgKCF0bXAuaWRzIHx8IHRtcC5pZHMubGVuZ3RoID09PSAwIHx8ICF0aGlzLmFwcHJvdmVNb2RhbCkgcmV0dXJuO1xyXG5cclxuICAgICAgICB0aGlzLmFwcHJvdmVNb2RlbCA9IHt9O1xyXG4gICAgICAgIHRoaXMuYXBwcm92ZU1vZGFsLnNob3codG1wKTtcclxuICAgIH1cclxuICAgIGFzeW5jIGFwcHJvdmUobW9kZWw6IGFueSkge1xyXG4gICAgICAgIGlmICghbW9kZWwpIHJldHVybjtcclxuXHJcbiAgICAgICAgdGhpcy5hbGVydC5jbGVhcigpO1xyXG4gICAgICAgIGNvbnN0IGRhdGEgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLmFwaUFwcHJvdmUobW9kZWwpKTtcclxuICAgICAgICBpZiAoIWRhdGEgfHwgZGF0YS5sZW5ndGggPT09IDApXHJcbiAgICAgICAgICAgIHJldHVybjtcclxuXHJcbiAgICAgICAgY29uc3QgbWVzc2FnZSA9IGF3YWl0IGZpcnN0VmFsdWVGcm9tKHRoaXMudHJhbnNsYXRlLmdldCh0aGlzLmFwcHJvdmVkTWVzYWdlKSk7XHJcbiAgICAgICAgdGhpcy5hbGVydC5zdWNjZXNzKG1lc3NhZ2UsIG51bGwsICdmYS1zb2xpZCBmYS10aHVtYnMtdXAnKVxyXG4gICAgICAgIHRoaXMucmVmcmVzaCgpO1xyXG4gICAgfVxyXG4gICAgYXBpQXBwcm92ZShtb2RlbDogYW55KSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuc2VydmljZS5hcHByb3ZlKG1vZGVsKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgc2hvd0Rpc2FwcHJvdmVNb2RhbChpZDogbnVtYmVyKSB7XHJcbiAgICAgICAgaWYgKCFpZCB8fCAhdGhpcy5kaXNhcHByb3ZlTW9kYWwpIHJldHVybjtcclxuXHJcbiAgICAgICAgY29uc3QgdG1wID0geyBpZHM6IFtpZF0gfTtcclxuICAgICAgICB0aGlzLmFwcHJvdmVNb2RlbCA9IHt9O1xyXG4gICAgICAgIHRoaXMuZGlzYXBwcm92ZU1vZGFsLnNob3codG1wKTtcclxuICAgIH1cclxuICAgIHNob3dEaXNhcHByb3ZlU2VsZWN0ZWRNb2RhbCgpIHtcclxuICAgICAgICBjb25zdCB0bXAgPSB7IGlkczogdGhpcy5nZXRTZWxlY3RlZElkcygpIH07XHJcbiAgICAgICAgaWYgKCF0bXAuaWRzIHx8IHRtcC5pZHMubGVuZ3RoID09PSAwIHx8ICF0aGlzLmRpc2FwcHJvdmVNb2RhbCkgcmV0dXJuO1xyXG5cclxuICAgICAgICB0aGlzLmFwcHJvdmVNb2RlbCA9IHt9O1xyXG4gICAgICAgIHRoaXMuZGlzYXBwcm92ZU1vZGFsLnNob3codG1wKTtcclxuICAgIH1cclxuICAgIGFzeW5jIGRpc2FwcHJvdmUobW9kZWw6IGFueSkge1xyXG4gICAgICAgIGlmICghbW9kZWwgfHwgIXRoaXMuYXBwcm92ZU1vZGVsKSByZXR1cm47XHJcblxyXG4gICAgICAgIGlmICh0eXBlb2YgbW9kZWwgPT09ICdvYmplY3QnKSB7XHJcbiAgICAgICAgICAgIG1vZGVsLnN0YXR1cyA9IHRoaXMuYXBwcm92ZU1vZGVsLnN0YXR1cztcclxuICAgICAgICAgICAgbW9kZWwuY29tbWVudCA9IFN0cmluZ0hlbHBlci50cnlUcmltKHRoaXMuYXBwcm92ZU1vZGVsLmNvbW1lbnQpO1xyXG4gICAgICAgICAgICBpZiAoIW1vZGVsLmNvbW1lbnQpIGRlbGV0ZSBtb2RlbC5jb21tZW50O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5hbGVydC5jbGVhcigpO1xyXG4gICAgICAgIGNvbnN0IGRhdGEgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLmFwaURpc2FwcHJvdmUobW9kZWwpKTtcclxuICAgICAgICBpZiAoIWRhdGEgfHwgZGF0YS5sZW5ndGggPT09IDApXHJcbiAgICAgICAgICAgIHJldHVybjtcclxuXHJcbiAgICAgICAgY29uc3QgbWVzc2FnZSA9IGF3YWl0IGZpcnN0VmFsdWVGcm9tKHRoaXMudHJhbnNsYXRlLmdldCh0aGlzLmRpc2FwcHJvdmVkTWVzYWdlKSk7XHJcbiAgICAgICAgdGhpcy5hbGVydC5zdWNjZXNzKG1lc3NhZ2UsIG51bGwsICdmYS1zb2xpZCBmYS10aHVtYnMtZG93bicpXHJcbiAgICAgICAgdGhpcy5yZWZyZXNoKCk7XHJcbiAgICB9XHJcbiAgICBhcGlEaXNhcHByb3ZlKG1vZGVsOiBhbnkpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5zZXJ2aWNlLmRpc2FwcHJvdmUobW9kZWwpO1xyXG4gICAgfVxyXG5cclxuICAgIGdldFNlbGVjdGVkSWRzKCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLnNlbGVjdGVkSWRzO1xyXG4gICAgICAgIC8vIGlmICghdGhpcy5wYWdlZExpc3QgfHwgIXRoaXMucGFnZWRMaXN0Lml0ZW1zKSByZXR1cm4gW107XHJcblxyXG4gICAgICAgIC8vIGxldCBpZHMgPSBbXTtcclxuICAgICAgICAvLyBmb3IgKGNvbnN0IGl0ZW0gb2YgdGhpcy5wYWdlZExpc3QuaXRlbXMpIHtcclxuICAgICAgICAvLyAgICAgaWYgKCFpdGVtLnNlbGVjdGVkIHx8ICFpdGVtLmlkKSBjb250aW51ZTtcclxuXHJcbiAgICAgICAgLy8gICAgIGlkcy5wdXNoKGl0ZW0uaWQpO1xyXG4gICAgICAgIC8vIH1cclxuICAgICAgICAvLyByZXR1cm4gaWRzO1xyXG4gICAgfVxyXG5cclxuICAgIHNob3dTdW0oKSB7IH1cclxuICAgIGFzeW5jIHN1bSgpIHtcclxuICAgICAgICB0aGlzLnN1bU1vZGVsID0gbnVsbDtcclxuICAgICAgICBjb25zdCBkYXRhID0gYXdhaXQgZmlyc3RWYWx1ZUZyb20odGhpcy5hcGlTdW0odGhpcy5pbnRlcm5hbEZpbHRlcikpO1xyXG4gICAgICAgIGlmIChkYXRhKSB7XHJcbiAgICAgICAgICAgIHRoaXMuc3VtTW9kZWwgPSBkYXRhO1xyXG4gICAgICAgICAgICB0aGlzLnNob3dTdW0oKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBjb25zdCBtZXNzYWdlID0gYXdhaXQgZmlyc3RWYWx1ZUZyb20odGhpcy50cmFuc2xhdGUuZ2V0KCdBbGVydC5TdW1FcnJvcicpKTtcclxuICAgICAgICAgICAgdGhpcy5hbGVydC5lcnJvcihtZXNzYWdlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBhcGlTdW0oZmlsdGVyOiBhbnkpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5zZXJ2aWNlLnN1bShmaWx0ZXIpO1xyXG4gICAgfVxyXG5cclxuICAgIGV4cG9ydChmaWxlVHlwZUlkOiBudW1iZXIpIHtcclxuICAgICAgICB0aGlzLnNlcnZpY2UuZXhwb3J0KHRoaXMuaW50ZXJuYWxGaWx0ZXIsIGZpbGVUeXBlSWQpLnN1YnNjcmliZShkYXRhID0+IHtcclxuICAgICAgICAgICAgdGhpcy5kb3dubG9hZEZpbGUoZGF0YSwgJ2V4cG9ydC54bHN4JywgJ2FwcGxpY2F0aW9uL3ZuZC5vcGVueG1sZm9ybWF0cy1vZmZpY2Vkb2N1bWVudC5zcHJlYWRzaGVldG1sLnNoZWV0Jyk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIG92ZXJyaWRlIHByaW50KHByaW50VHlwZT86IFByaW50VHlwZSkge1xyXG4gICAgICAgIGlmICghdGhpcy5tb2RlbCB8fCAhdGhpcy5tb2RlbC5pdGVtcykgcmV0dXJuO1xyXG5cclxuICAgICAgICBjb25zdCBpZHMgPSB0aGlzLmdldFNlbGVjdGVkSWRzKCk7XHJcbiAgICAgICAgZm9yIChjb25zdCBpZCBvZiBpZHMpIHtcclxuICAgICAgICAgICAgc3VwZXIucHJpbnQoaWQsIHByaW50VHlwZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59Il19
|
package/fesm2022/zek.mjs
CHANGED
|
@@ -1962,6 +1962,7 @@ class CoreComponent {
|
|
|
1962
1962
|
this.loading = true;
|
|
1963
1963
|
await this.init();
|
|
1964
1964
|
await this.bindModel();
|
|
1965
|
+
await this.onBindModelCompleted();
|
|
1965
1966
|
await this.bindDictionary();
|
|
1966
1967
|
await this.onBindingCompleted();
|
|
1967
1968
|
}
|
|
@@ -1972,6 +1973,7 @@ class CoreComponent {
|
|
|
1972
1973
|
}
|
|
1973
1974
|
init() { }
|
|
1974
1975
|
bindModel() { }
|
|
1976
|
+
onBindModelCompleted() { }
|
|
1975
1977
|
bindDictionary() { }
|
|
1976
1978
|
onBindingCompleted() { }
|
|
1977
1979
|
onLoadCompleted() { }
|
|
@@ -2593,6 +2595,12 @@ class ValidEventArgs {
|
|
|
2593
2595
|
|
|
2594
2596
|
// declare let bootstrap: any;
|
|
2595
2597
|
class ListBaseComponent extends BaseComponent {
|
|
2598
|
+
get initItems() {
|
|
2599
|
+
return this._initItems;
|
|
2600
|
+
}
|
|
2601
|
+
set initItems(v) {
|
|
2602
|
+
this._initItems = Convert.toBooleanProperty(v);
|
|
2603
|
+
}
|
|
2596
2604
|
constructor(service) {
|
|
2597
2605
|
super();
|
|
2598
2606
|
this.service = service;
|
|
@@ -2604,6 +2612,7 @@ class ListBaseComponent extends BaseComponent {
|
|
|
2604
2612
|
this.selectedItems = [];
|
|
2605
2613
|
this.pager = new Pager();
|
|
2606
2614
|
this.tableId = 'table';
|
|
2615
|
+
this._initItems = true;
|
|
2607
2616
|
this.approveModel = {};
|
|
2608
2617
|
this.approvedMesage = 'Alert.Approved';
|
|
2609
2618
|
this.disapprovedMesage = 'Alert.Disapproved';
|
|
@@ -2638,6 +2647,16 @@ class ListBaseComponent extends BaseComponent {
|
|
|
2638
2647
|
const el = document.getElementById(this.tableId);
|
|
2639
2648
|
el?.scrollIntoView({ behavior: 'smooth', block: 'start', inline: 'nearest' });
|
|
2640
2649
|
}
|
|
2650
|
+
onBindModelCompleted() {
|
|
2651
|
+
if (this.initItems) {
|
|
2652
|
+
if (this.model && ArrayHelper.isArray(this.model.items) && ArrayHelper.isArray(this.selectedIds)) {
|
|
2653
|
+
for (const item of this.model.items) {
|
|
2654
|
+
const tmp = item;
|
|
2655
|
+
tmp.selected = this.selectedIds.includes(tmp.id);
|
|
2656
|
+
}
|
|
2657
|
+
}
|
|
2658
|
+
}
|
|
2659
|
+
}
|
|
2641
2660
|
initDefaultFilter() {
|
|
2642
2661
|
}
|
|
2643
2662
|
initStoredFilter() {
|
|
@@ -2858,11 +2877,13 @@ class ListBaseComponent extends BaseComponent {
|
|
|
2858
2877
|
}
|
|
2859
2878
|
}
|
|
2860
2879
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ListBaseComponent, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive }); }
|
|
2861
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.4", type: ListBaseComponent, viewQueries: [{ propertyName: "filterModal", first: true, predicate: ["filterModal"], descendants: true }, { propertyName: "approveModal", first: true, predicate: ["approveModal"], descendants: true }, { propertyName: "disapproveModal", first: true, predicate: ["disapproveModal"], descendants: true }], usesInheritance: true, ngImport: i0 }); }
|
|
2880
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.4", type: ListBaseComponent, inputs: { initItems: "initItems" }, viewQueries: [{ propertyName: "filterModal", first: true, predicate: ["filterModal"], descendants: true }, { propertyName: "approveModal", first: true, predicate: ["approveModal"], descendants: true }, { propertyName: "disapproveModal", first: true, predicate: ["disapproveModal"], descendants: true }], usesInheritance: true, ngImport: i0 }); }
|
|
2862
2881
|
}
|
|
2863
2882
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ListBaseComponent, decorators: [{
|
|
2864
2883
|
type: Directive
|
|
2865
|
-
}], ctorParameters: () => [{ type: undefined }], propDecorators: {
|
|
2884
|
+
}], ctorParameters: () => [{ type: undefined }], propDecorators: { initItems: [{
|
|
2885
|
+
type: Input
|
|
2886
|
+
}], filterModal: [{
|
|
2866
2887
|
type: ViewChild,
|
|
2867
2888
|
args: ['filterModal', { static: false }]
|
|
2868
2889
|
}], approveModal: [{
|