@ohioepa/oepa-ui-lib 1.3.16 → 1.4.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.
- package/esm2022/lib/date-input-modal/date-input-modal.component.mjs +6 -3
- package/esm2022/lib/notes-modal/notes-modal.component.mjs +2 -2
- package/esm2022/lib/oepa-error-message/oepa-error-message.component.mjs +3 -3
- package/esm2022/lib/oepa-user-account/oepa-user-account.service.mjs +8 -5
- package/esm2022/lib/shopping-cart/shopping-cart-view/shopping-cart-view.component.mjs +2 -2
- package/esm2022/lib/table/oepa-table-popover.mjs +1 -1
- package/fesm2022/ohioepa-oepa-ui-lib.mjs +16 -10
- package/fesm2022/ohioepa-oepa-ui-lib.mjs.map +1 -1
- package/lib/date-input-modal/date-input-modal.component.d.ts +3 -1
- package/lib/table/oepa-table-popover.d.ts +1 -1
- package/ohioepa-oepa-ui-lib-1.4.1.tgz +0 -0
- package/package.json +1 -1
- package/ohioepa-oepa-ui-lib-1.3.16.tgz +0 -0
|
@@ -16,6 +16,7 @@ export class DateInputModalComponent {
|
|
|
16
16
|
dateLabel = 'Date';
|
|
17
17
|
submitBtnLabel = 'Submit';
|
|
18
18
|
cancelBtnLabel = 'Cancel';
|
|
19
|
+
bsConfig;
|
|
19
20
|
onSubmit = new EventEmitter();
|
|
20
21
|
onCancel = new EventEmitter();
|
|
21
22
|
constructor(bsModalRef, fb) {
|
|
@@ -45,11 +46,11 @@ export class DateInputModalComponent {
|
|
|
45
46
|
this.bsModalRef.hide();
|
|
46
47
|
}
|
|
47
48
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DateInputModalComponent, deps: [{ token: i1.BsModalRef }, { token: i2.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
|
|
48
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DateInputModalComponent, selector: "oepa-date-input-modal", inputs: { title: "title", infoText: "infoText", dateLabel: "dateLabel", submitBtnLabel: "submitBtnLabel", cancelBtnLabel: "cancelBtnLabel" }, outputs: { onSubmit: "onSubmit", onCancel: "onCancel" }, ngImport: i0, template: "<div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">{{title}}</h4>\n <button type=\"button\" class=\"close pull-right\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n <span aria-hidden=\"true\">×</span>\n </button>\n</div>\n<div class=\"modal-body\">\n <div class=\"row\">\n <div *ngIf=\"infoText\" class=\"col-sm-12\">\n <div class=\"alert alert-info\">\n {{infoText}}\n </div>\n </div>\n <div class=\"col-sm-12\">\n <div>\n <label>{{dateLabel}}</label>\n <oepa-datepicker [group]=\"dateForm\" field=\"date\" [showValidation]=\"true\"></oepa-datepicker>\n </div>\n </div>\n </div>\n <div *ngIf=\"errorMessage\" class=\"col-sm-12\">\n <div class=\"alert alert-danger\">{{errorMessage}}</div>\n </div>\n</div>\n<div class=\"modal-footer\">\n <button type=\"submit\" class=\"btn btn-primary mr-1\" (click)=\"submit()\" \n [id]=\"'submitDateBtn'\" [disabled]=\"dateForm.status === 'INVALID'\">{{submitBtnLabel}}</button>\n <button [id]=\"'cancelDateInputBtn'\" type=\"button\" class=\"btn btn-primary mr-1\" (click)=\"cancel()\">{{cancelBtnLabel}}</button>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.DatepickerComponent, selector: "oepa-datepicker", inputs: ["group", "field", "bsConfig", "showValidation", "placement", "tableIdx", "small"] }] });
|
|
49
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DateInputModalComponent, selector: "oepa-date-input-modal", inputs: { title: "title", infoText: "infoText", dateLabel: "dateLabel", submitBtnLabel: "submitBtnLabel", cancelBtnLabel: "cancelBtnLabel", bsConfig: "bsConfig" }, outputs: { onSubmit: "onSubmit", onCancel: "onCancel" }, ngImport: i0, template: "<div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">{{title}}</h4>\n <button type=\"button\" class=\"close pull-right\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n <span aria-hidden=\"true\">×</span>\n </button>\n</div>\n<div class=\"modal-body\">\n <div class=\"row\">\n <div *ngIf=\"infoText\" class=\"col-sm-12\">\n <div class=\"alert alert-info\">\n {{infoText}}\n </div>\n </div>\n <div class=\"col-sm-12\">\n <div>\n <label>{{dateLabel}}</label>\n <oepa-datepicker [group]=\"dateForm\" field=\"date\" [bsConfig]=\"bsConfig\" [showValidation]=\"true\"></oepa-datepicker>\n </div>\n </div>\n </div>\n <div *ngIf=\"errorMessage\" class=\"col-sm-12\">\n <div class=\"alert alert-danger\">{{errorMessage}}</div>\n </div>\n</div>\n<div class=\"modal-footer\">\n <button type=\"submit\" class=\"btn btn-primary mr-1\" (click)=\"submit()\" \n [id]=\"'submitDateBtn'\" [disabled]=\"dateForm.status === 'INVALID'\">{{submitBtnLabel}}</button>\n <button [id]=\"'cancelDateInputBtn'\" type=\"button\" class=\"btn btn-primary mr-1\" (click)=\"cancel()\">{{cancelBtnLabel}}</button>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.DatepickerComponent, selector: "oepa-datepicker", inputs: ["group", "field", "bsConfig", "showValidation", "placement", "tableIdx", "small"] }] });
|
|
49
50
|
}
|
|
50
51
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DateInputModalComponent, decorators: [{
|
|
51
52
|
type: Component,
|
|
52
|
-
args: [{ selector: 'oepa-date-input-modal', template: "<div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">{{title}}</h4>\n <button type=\"button\" class=\"close pull-right\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n <span aria-hidden=\"true\">×</span>\n </button>\n</div>\n<div class=\"modal-body\">\n <div class=\"row\">\n <div *ngIf=\"infoText\" class=\"col-sm-12\">\n <div class=\"alert alert-info\">\n {{infoText}}\n </div>\n </div>\n <div class=\"col-sm-12\">\n <div>\n <label>{{dateLabel}}</label>\n <oepa-datepicker [group]=\"dateForm\" field=\"date\" [showValidation]=\"true\"></oepa-datepicker>\n </div>\n </div>\n </div>\n <div *ngIf=\"errorMessage\" class=\"col-sm-12\">\n <div class=\"alert alert-danger\">{{errorMessage}}</div>\n </div>\n</div>\n<div class=\"modal-footer\">\n <button type=\"submit\" class=\"btn btn-primary mr-1\" (click)=\"submit()\" \n [id]=\"'submitDateBtn'\" [disabled]=\"dateForm.status === 'INVALID'\">{{submitBtnLabel}}</button>\n <button [id]=\"'cancelDateInputBtn'\" type=\"button\" class=\"btn btn-primary mr-1\" (click)=\"cancel()\">{{cancelBtnLabel}}</button>\n</div>\n" }]
|
|
53
|
+
args: [{ selector: 'oepa-date-input-modal', template: "<div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">{{title}}</h4>\n <button type=\"button\" class=\"close pull-right\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n <span aria-hidden=\"true\">×</span>\n </button>\n</div>\n<div class=\"modal-body\">\n <div class=\"row\">\n <div *ngIf=\"infoText\" class=\"col-sm-12\">\n <div class=\"alert alert-info\">\n {{infoText}}\n </div>\n </div>\n <div class=\"col-sm-12\">\n <div>\n <label>{{dateLabel}}</label>\n <oepa-datepicker [group]=\"dateForm\" field=\"date\" [bsConfig]=\"bsConfig\" [showValidation]=\"true\"></oepa-datepicker>\n </div>\n </div>\n </div>\n <div *ngIf=\"errorMessage\" class=\"col-sm-12\">\n <div class=\"alert alert-danger\">{{errorMessage}}</div>\n </div>\n</div>\n<div class=\"modal-footer\">\n <button type=\"submit\" class=\"btn btn-primary mr-1\" (click)=\"submit()\" \n [id]=\"'submitDateBtn'\" [disabled]=\"dateForm.status === 'INVALID'\">{{submitBtnLabel}}</button>\n <button [id]=\"'cancelDateInputBtn'\" type=\"button\" class=\"btn btn-primary mr-1\" (click)=\"cancel()\">{{cancelBtnLabel}}</button>\n</div>\n" }]
|
|
53
54
|
}], ctorParameters: () => [{ type: i1.BsModalRef }, { type: i2.FormBuilder }], propDecorators: { title: [{
|
|
54
55
|
type: Input
|
|
55
56
|
}], infoText: [{
|
|
@@ -60,9 +61,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
60
61
|
type: Input
|
|
61
62
|
}], cancelBtnLabel: [{
|
|
62
63
|
type: Input
|
|
64
|
+
}], bsConfig: [{
|
|
65
|
+
type: Input
|
|
63
66
|
}], onSubmit: [{
|
|
64
67
|
type: Output
|
|
65
68
|
}], onCancel: [{
|
|
66
69
|
type: Output
|
|
67
70
|
}] } });
|
|
68
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
71
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1pbnB1dC1tb2RhbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vZXBhLXVpLWxpYi9zcmMvbGliL2RhdGUtaW5wdXQtbW9kYWwvZGF0ZS1pbnB1dC1tb2RhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vZXBhLXVpLWxpYi9zcmMvbGliL2RhdGUtaW5wdXQtbW9kYWwvZGF0ZS1pbnB1dC1tb2RhbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFBMEIsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7OztBQVNwRSxNQUFNLE9BQU8sdUJBQXVCO0lBZWY7SUFBZ0M7SUFkNUMsWUFBWSxHQUFXLEVBQUUsQ0FBQztJQUMxQixRQUFRLENBQWE7SUFDckIsSUFBSSxDQUFtQjtJQUVyQixLQUFLLEdBQVcsRUFBRSxDQUFDO0lBQ25CLFFBQVEsR0FBVyxFQUFFLENBQUM7SUFDdEIsU0FBUyxHQUFHLE1BQU0sQ0FBQztJQUNuQixjQUFjLEdBQUcsUUFBUSxDQUFDO0lBQzFCLGNBQWMsR0FBRyxRQUFRLENBQUM7SUFDMUIsUUFBUSxDQUErQjtJQUV0QyxRQUFRLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7SUFDeEQsUUFBUSxHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO0lBRWxFLFlBQW1CLFVBQXNCLEVBQVUsRUFBZTtRQUEvQyxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQVUsT0FBRSxHQUFGLEVBQUUsQ0FBYTtJQUFJLENBQUM7SUFFdkUsUUFBUTtRQUNOLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDZixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7UUFDekIsQ0FBQztRQUNELElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUNwQixDQUFDO0lBRU8sVUFBVTtRQUNoQixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDO1lBQzVCLElBQUksRUFBRSxDQUFFLElBQUksQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztTQUN4QyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQzNELElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ25CLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELE1BQU07UUFDSixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDOUIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRUQsTUFBTTtRQUNKLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDckIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN6QixDQUFDO3dHQXpDVSx1QkFBdUI7NEZBQXZCLHVCQUF1QiwwUkNWcEMsMHFDQTZCQTs7NEZEbkJhLHVCQUF1QjtrQkFMbkMsU0FBUzsrQkFDRSx1QkFBdUI7eUdBU3hCLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBRUksUUFBUTtzQkFBakIsTUFBTTtnQkFDRyxRQUFRO3NCQUFqQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUdyb3VwLCBGb3JtQnVpbGRlciwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEJzRGF0ZXBpY2tlckNvbmZpZyB9IGZyb20gJ25neC1ib290c3RyYXAvZGF0ZXBpY2tlcic7XG5pbXBvcnQgeyBCc01vZGFsUmVmIH0gZnJvbSAnbmd4LWJvb3RzdHJhcC9tb2RhbCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ29lcGEtZGF0ZS1pbnB1dC1tb2RhbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9kYXRlLWlucHV0LW1vZGFsLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGF0ZS1pbnB1dC1tb2RhbC5jb21wb25lbnQuY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgRGF0ZUlucHV0TW9kYWxDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBwdWJsaWMgZXJyb3JNZXNzYWdlOiBzdHJpbmcgPSAnJztcbiAgcHVibGljIGRhdGVGb3JtITogRm9ybUdyb3VwO1xuICBwdWJsaWMgZGF0ZTogRGF0ZSB8IHVuZGVmaW5lZDtcblxuICBASW5wdXQoKSB0aXRsZTogc3RyaW5nID0gJyc7XG4gIEBJbnB1dCgpIGluZm9UZXh0OiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCkgZGF0ZUxhYmVsID0gJ0RhdGUnO1xuICBASW5wdXQoKSBzdWJtaXRCdG5MYWJlbCA9ICdTdWJtaXQnO1xuICBASW5wdXQoKSBjYW5jZWxCdG5MYWJlbCA9ICdDYW5jZWwnO1xuICBASW5wdXQoKSBic0NvbmZpZyE6IFBhcnRpYWw8QnNEYXRlcGlja2VyQ29uZmlnPjtcblxuICBAT3V0cHV0KCkgb25TdWJtaXQ6IEV2ZW50RW1pdHRlcjxEYXRlPiA9IG5ldyBFdmVudEVtaXR0ZXI8RGF0ZT4oKTtcbiAgQE91dHB1dCgpIG9uQ2FuY2VsOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IocHVibGljIGJzTW9kYWxSZWY6IEJzTW9kYWxSZWYsIHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyKSB7IH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICBpZiAoIXRoaXMuZGF0ZSkge1xuICAgICAgdGhpcy5kYXRlID0gbmV3IERhdGUoKTtcbiAgICB9XG4gICAgdGhpcy5jcmVhdGVGb3JtKCk7XG4gIH1cbiAgXG4gIHByaXZhdGUgY3JlYXRlRm9ybSgpIHtcbiAgICB0aGlzLmRhdGVGb3JtID0gdGhpcy5mYi5ncm91cCh7XG4gICAgICBkYXRlOiBbIHRoaXMuZGF0ZSwgVmFsaWRhdG9ycy5yZXF1aXJlZF1cbiAgICB9KTtcbiAgICB0aGlzLmRhdGVGb3JtLmNvbnRyb2xzWydkYXRlJ10udmFsdWVDaGFuZ2VzLnN1YnNjcmliZShkYXRlID0+IHtcbiAgICAgIHRoaXMuZGF0ZSA9IGRhdGU7XG4gICAgfSk7XG4gIH1cblxuICBzdWJtaXQoKSB7XG4gICAgdGhpcy5vblN1Ym1pdC5lbWl0KHRoaXMuZGF0ZSk7XG4gICAgdGhpcy5ic01vZGFsUmVmLmhpZGUoKTtcbiAgfVxuXG4gIGNhbmNlbCgpIHtcbiAgICB0aGlzLm9uQ2FuY2VsLmVtaXQoKTtcbiAgICB0aGlzLmJzTW9kYWxSZWYuaGlkZSgpO1xuICB9XG5cbn1cbiIsIjxkaXYgY2xhc3M9XCJtb2RhbC1oZWFkZXJcIj5cbiAgPGg0IGNsYXNzPVwibW9kYWwtdGl0bGUgcHVsbC1sZWZ0XCI+e3t0aXRsZX19PC9oND5cbiAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJjbG9zZSBwdWxsLXJpZ2h0XCIgYXJpYS1sYWJlbD1cIkNsb3NlXCIgKGNsaWNrKT1cImJzTW9kYWxSZWYuaGlkZSgpXCI+XG4gICAgPHNwYW4gYXJpYS1oaWRkZW49XCJ0cnVlXCI+JnRpbWVzOzwvc3Bhbj5cbiAgPC9idXR0b24+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJtb2RhbC1ib2R5XCI+XG4gIDxkaXYgY2xhc3M9XCJyb3dcIj5cbiAgICA8ZGl2ICpuZ0lmPVwiaW5mb1RleHRcIiBjbGFzcz1cImNvbC1zbS0xMlwiPlxuICAgICAgPGRpdiBjbGFzcz1cImFsZXJ0IGFsZXJ0LWluZm9cIj5cbiAgICAgICAge3tpbmZvVGV4dH19XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiY29sLXNtLTEyXCI+XG4gICAgICA8ZGl2PlxuICAgICAgICA8bGFiZWw+e3tkYXRlTGFiZWx9fTwvbGFiZWw+XG4gICAgICAgIDxvZXBhLWRhdGVwaWNrZXIgW2dyb3VwXT1cImRhdGVGb3JtXCIgZmllbGQ9XCJkYXRlXCIgW2JzQ29uZmlnXT1cImJzQ29uZmlnXCIgW3Nob3dWYWxpZGF0aW9uXT1cInRydWVcIj48L29lcGEtZGF0ZXBpY2tlcj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbiAgPGRpdiAqbmdJZj1cImVycm9yTWVzc2FnZVwiIGNsYXNzPVwiY29sLXNtLTEyXCI+XG4gICAgPGRpdiBjbGFzcz1cImFsZXJ0IGFsZXJ0LWRhbmdlclwiPnt7ZXJyb3JNZXNzYWdlfX08L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJtb2RhbC1mb290ZXJcIj5cbiAgPGJ1dHRvbiB0eXBlPVwic3VibWl0XCIgY2xhc3M9XCJidG4gYnRuLXByaW1hcnkgbXItMVwiIChjbGljayk9XCJzdWJtaXQoKVwiIFxuICAgICAgICAgIFtpZF09XCInc3VibWl0RGF0ZUJ0bidcIiBbZGlzYWJsZWRdPVwiZGF0ZUZvcm0uc3RhdHVzID09PSAnSU5WQUxJRCdcIj57e3N1Ym1pdEJ0bkxhYmVsfX08L2J1dHRvbj5cbiAgPGJ1dHRvbiBbaWRdPVwiJ2NhbmNlbERhdGVJbnB1dEJ0bidcIiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLXByaW1hcnkgbXItMVwiIChjbGljayk9XCJjYW5jZWwoKVwiPnt7Y2FuY2VsQnRuTGFiZWx9fTwvYnV0dG9uPlxuPC9kaXY+XG4iXX0=
|
|
@@ -100,7 +100,7 @@ export class NotesModalComponent {
|
|
|
100
100
|
// only display delete action if note can be deleted
|
|
101
101
|
if ((this.deleteAnyNoteAllowed || (this.deleteOwnNoteAllowed && this.loginName === note.user)) && note.type?.code !== 'System') {
|
|
102
102
|
row.actions = [
|
|
103
|
-
{ title: 'Delete', className: '
|
|
103
|
+
{ title: 'Delete', className: 'bi bi-x-lg' }
|
|
104
104
|
];
|
|
105
105
|
}
|
|
106
106
|
else {
|
|
@@ -174,4 +174,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
174
174
|
}], onDeleteNote: [{
|
|
175
175
|
type: Output
|
|
176
176
|
}] } });
|
|
177
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90ZXMtbW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb2VwYS11aS1saWIvc3JjL2xpYi9ub3Rlcy1tb2RhbC9ub3Rlcy1tb2RhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vZXBhLXVpLWxpYi9zcmMvbGliL25vdGVzLW1vZGFsL25vdGVzLW1vZGFsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUEwQixVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQVdwRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQzs7Ozs7OztBQVNoRyxNQUFNLE9BQU8sbUJBQW1CO0lBb0RWO0lBQXdCO0lBQWdDO0lBQ3hEO0lBcERiLFdBQVcsQ0FBYTtJQUN4QixXQUFXLENBQWlCO0lBQzVCLFdBQVcsR0FBVyxFQUFFLENBQUM7SUFDekIsVUFBVSxHQUFHLEtBQUssQ0FBQztJQUVsQixnQkFBZ0IsQ0FBaUI7SUFDakMsTUFBTSxHQUFXLEVBQUUsQ0FBQztJQUVuQixTQUFTLEdBQVcsRUFBRSxDQUFDO0lBQ3ZCLG9CQUFvQixHQUFHLEtBQUssQ0FBQztJQUM3QixvQkFBb0IsR0FBRyxLQUFLLENBQUM7SUFDN0IsaUJBQWlCLEdBQUcsS0FBSyxDQUFDO0lBQzFCLFFBQVEsR0FBRyxLQUFLLENBQUM7SUFDakIsWUFBWSxHQUFXLEVBQUUsQ0FBQztJQUduQyxJQUNXLEtBQUssQ0FBQyxLQUFhO1FBQzVCLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxD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LEVBQUUsQ0FBQyxDQUFDO1lBQy9FLEtBQUssQ0FBQyxPQUFRLENBQUMsVUFBVSxHQUFHLGdCQUFnQixDQUFDO1lBQzdDLEtBQUssQ0FBQyxPQUFRLENBQUMsUUFBUSxHQUFHLDRFQUE0RSxDQUFDO1lBQ3ZHLEtBQUssQ0FBQyxPQUFRLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQztZQUN2QyxLQUFLLENBQUMsT0FBUSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUM7WUFDckMsS0FBSyxDQUFDLE9BQVEsQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtnQkFDeEUsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3JDLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUNILENBQUM7SUFFRCxJQUFJO1FBQ0YsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN6QixDQUFDO3dHQWhLVSxtQkFBbUI7NEZBQW5CLG1CQUFtQiwyWUNyQmhDLHlqRUE4REE7OzRGRHpDYSxtQkFBbUI7a0JBTC9CLFNBQVM7K0JBQ0Usa0JBQWtCO3VLQWFuQixTQUFTO3NCQUFqQixLQUFLO2dCQUNHLG9CQUFvQjtzQkFBNUIsS0FBSztnQkFDRyxvQkFBb0I7c0JBQTVCLEtBQUs7Z0JBQ0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFJSyxLQUFLO3NCQURmLEtBQUs7Z0JBYUssZUFBZTtzQkFEekIsS0FBSztnQkFVSSxTQUFTO3NCQUFsQixNQUFNO2dCQUNHLFlBQVk7c0JBQXJCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBCc01vZGFsU2VydmljZSB9IGZyb20gJ25neC1ib290c3RyYXAvbW9kYWwnO1xuaW1wb3J0IHsgQnNNb2RhbFJlZiB9IGZyb20gJ25neC1ib290c3RyYXAvbW9kYWwnO1xuXG5pbXBvcnQgeyBPZXBhTWFwcGluZ1NlcnZpY2UsIE9FUEFSZWZlcmVuY2UgfSBmcm9tICdAb2hpb2VwYS9vZXBhLWNvbW1vbi1saWInO1xuaW1wb3J0IHsgT2VwYVRhYmxlQ29sdW1uIH0gZnJvbSAnLi4vdGFibGUvb2VwYS10YWJsZS1jb2x1bW4nO1xuaW1wb3J0IHsgT2VwYVRhYmxlUm93IH0gZnJvbSAnLi4vdGFibGUvb2VwYS10YWJsZS1yb3cnO1xuaW1wb3J0IHsgT2VwYVRhYmxlQ29uZmlnIH0gZnJvbSAnLi4vdGFibGUvb2VwYS10YWJsZS1jb25maWcnO1xuaW1wb3J0IHsgT2VwYVRhYmxlSGVhZGVyIH0gZnJvbSAnLi4vdGFibGUvb2VwYS10YWJsZS1oZWFkZXInO1xuaW1wb3J0IHsgT2VwYUFjdGlvbkV2ZW50IH0gZnJvbSAnLi4vYWN0aW9uLWJ0bi9vZXBhLWFjdGlvbi1ldmVudCc7XG5pbXBvcnQgeyBDb25maXJtYXRpb25Nb2RhbENvbXBvbmVudCB9IGZyb20gJy4uL2NvbmZpcm1hdGlvbi1tb2RhbC9jb25maXJtYXRpb24tbW9kYWwuY29tcG9uZW50JztcbmltcG9ydCB7IE5vdGUgfSBmcm9tICcuL29lcGEtbm90ZSc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnb2VwYS1ub3Rlcy1tb2RhbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9ub3Rlcy1tb2RhbC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL25vdGVzLW1vZGFsLmNvbXBvbmVudC5jc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBOb3Rlc01vZGFsQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgcHVibGljIG5ld05vdGVGb3JtITogRm9ybUdyb3VwO1xuICBwdWJsaWMgbmV3Tm90ZVR5cGUhOiBPRVBBUmVmZXJlbmNlO1xuICBwdWJsaWMgbmV3Tm90ZVRleHQ6IHN0cmluZyA9ICcnO1xuICBwdWJsaWMgaXNDcmVhdGluZyA9IGZhbHNlO1xuXG4gIHByaXZhdGUgX2RlZmF1bHROb3RlVHlwZSE6IE9FUEFSZWZlcmVuY2U7XG4gIHByaXZhdGUgX25vdGVzOiBOb3RlW10gPSBbXTtcblxuICBASW5wdXQoKSBsb2dpbk5hbWU6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSBkZWxldGVBbnlOb3RlQWxsb3dlZCA9IGZhbHNlO1xuICBASW5wdXQoKSBkZWxldGVPd25Ob3RlQWxsb3dlZCA9IGZhbHNlO1xuICBASW5wdXQoKSBjcmVhdGVOb3RlQWxsb3dlZCA9IGZhbHNlO1xuICBASW5wdXQoKSBleHRlcm5hbCA9IGZhbHNlO1xuICBASW5wdXQoKSBlcnJvck1lc3NhZ2U6IHN0cmluZyA9ICcnO1xuXG4gIFxuICBASW5wdXQoKSBcbiAgcHVibGljIHNldCBub3Rlcyhub3RlczogTm90ZVtdKSB7XG4gICAgdGhpcy5pc0NyZWF0aW5nID0gZmFsc2U7XG4gICAgdGhpcy5fbm90ZXMgPSBub3RlcztcbiAgICB0aGlzLmxvYWREYXRhKG5vdGVzKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgbm90ZXMoKSB7XG4gICAgcmV0dXJuIHRoaXMuX25vdGVzO1xuICB9XG5cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGRlZmF1bHROb3RlVHlwZSh0eXBlOiBPRVBBUmVmZXJlbmNlKSB7XG4gICAgdGhpcy5fZGVmYXVsdE5vdGVUeXBlID0gdHlwZTtcbiAgICB0aGlzLm5ld05vdGVUeXBlID0gdHlwZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZGVmYXVsdE5vdGVUeXBlKCkge1xuICAgIHJldHVybiB0aGlzLl9kZWZhdWx0Tm90ZVR5cGU7XG4gIH1cblxuICBAT3V0cHV0KCkgb25BZGROb3RlOiBFdmVudEVtaXR0ZXI8Tm90ZT4gPSBuZXcgRXZlbnRFbWl0dGVyPE5vdGU+KCk7XG4gIEBPdXRwdXQoKSBvbkRlbGV0ZU5vdGU6IEV2ZW50RW1pdHRlcjxOb3RlPiA9IG5ldyBFdmVudEVtaXR0ZXI8Tm90ZT4oKTtcblxuICAgIC8vIFRhYmxlIGVsZW1lbnRzXG4gICAgcHVibGljIGRhdGE6IEFycmF5PE9lcGFUYWJsZVJvdz4gPSBbXTtcblxuICAgIHB1YmxpYyB0YmxDb25maWc6IE9lcGFUYWJsZUNvbmZpZyA9IHtcbiAgICB9O1xuICBcbiAgICBwdWJsaWMgaGVhZGVyOiBPZXBhVGFibGVIZWFkZXIgPSB7XG4gICAgICBjb2x1bW5zOiB0aGlzLmdldENvbHVtbnMoKVxuICAgIH07XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBmYjogRm9ybUJ1aWxkZXIsIHB1YmxpYyBic01vZGFsUmVmOiBCc01vZGFsUmVmLCBwcml2YXRlIG1vZGFsU2VydmljZTogQnNNb2RhbFNlcnZpY2UsXG4gICAgICAgICAgICAgIHByaXZhdGUgbWFwcGluZ1NlcnZpY2U6IE9lcGFNYXBwaW5nU2VydmljZSkgeyBcbiAgfVxuXG4gIG5nT25Jbml0KCkgeyAgICBcbiAgICB0aGlzLmluaXRpYWxpemVUYWJsZSgpO1xuICAgIHRoaXMuY3JlYXRlRm9ybSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0aWFsaXplVGFibGUoKSB7XG4gICAgdGhpcy5oZWFkZXIgPSB7XG4gICAgICBjb2x1bW5zOiB0aGlzLmdldENvbHVtbnMoKVxuICAgIH07XG4gICAgdGhpcy5sb2FkRGF0YSh0aGlzLm5vdGVzKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Q29sdW1ucygpOiBBcnJheTxPZXBhVGFibGVDb2x1bW4+IHtcbiAgICBjb25zdCBjb2x1bW5zOiBBcnJheTxPZXBhVGFibGVDb2x1bW4+ID0gW1xuICAgICAgeyB0aXRsZTogJ05vdGUnLCBpZDogJ25vdGUnIH0sXG4gICAgXTtcblxuICAgIGlmICghdGhpcy5leHRlcm5hbCkge1xuICAgICAgY29sdW1ucy5wdXNoKHsgdGl0bGU6ICdUeXBlJywgaWQ6ICd0eXBlJyB9KTtcbiAgICAgIGNvbHVtbnMucHVzaCh7IHRpdGxlOiAnQWNjb3VudCcsIGlkOiAnYWNjb3VudCcgfSk7XG4gICAgfVxuXG4gICAgY29sdW1ucy5wdXNoKHsgdGl0bGU6ICdEYXRlJywgaWQ6ICdkYXRlJyB9KTtcblxuICAgIGlmICh0aGlzLmRlbGV0ZUFueU5vdGVBbGxvd2VkIHx8IHRoaXMuZGVsZXRlT3duTm90ZUFsbG93ZWQpIHtcbiAgICAgIGNvbHVtbnMucHVzaCh7IHRpdGxlOiAnQWN0aW9ucycsIGlkOiAnYWN0aW9ucycsIGFjdGlvbkNvbHVtbjogdHJ1ZSwgY2xhc3NOYW1lOiAnYWN0aW9uLWJ0bi1jb2wnIH0pO1xuICAgIH1cblxuICAgIHJldHVybiBjb2x1bW5zO1xuICB9XG5cbiAgcHJpdmF0ZSBsb2FkRGF0YShub3RlczogQXJyYXk8Tm90ZT4pIHtcbiAgICB0aGlzLmRhdGEgPSBbXTtcbiAgICBpZiAobm90ZXMgJiYgbm90ZXMubGVuZ3RoKSB7XG4gICAgICBub3Rlcy5mb3JFYWNoKChub3RlKSA9PiB7XG4gICAgICAgIHRoaXMuZGF0YS5wdXNoKHRoaXMuY29udmVydE5vdGVUb1RhYmxlUm93KG5vdGUpKTtcbiAgICAgIH0pO1xuICAgICAgdGhpcy5kYXRhID0gdGhpcy5kYXRhLnNwbGljZSgwKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGNvbnZlcnROb3RlVG9UYWJsZVJvdyhub3RlOiBOb3RlKTogT2VwYVRhYmxlUm93IHtcbiAgICBjb25zdCByb3c6IE9lcGFUYWJsZVJvdyA9IHtcbiAgICAgIGNlbGxzOiBbXG4gICAgICAgIHsgaWQ6ICdub3RlJywgdmFsdWU6IG5vdGUuY29tbWVudCB9LFxuICAgICAgICB7IGlkOiAndHlwZScsIHZhbHVlOiBub3RlLnR5cGUgPyBub3RlLnR5cGUubmFtZSA6ICcnIH0sXG4gICAgICAgIHsgaWQ6ICdhY2NvdW50JywgdmFsdWU6IG5vdGUudXNlciB9LFxuICAgICAgICB7IGlkOiAnZGF0ZScsIHZhbHVlOiBub3RlLm5vdGVEYXRlID8gdGhpcy5tYXBwaW5nU2VydmljZS5tYXBEYXRlVG9EYXRlVGltZVN0cmluZyhuZXcgRGF0ZShub3RlLm5vdGVEYXRlKSk6IG51bGwsIFxuICAgICAgICAgICAgICAgIHNvcnRWYWx1ZTogbm90ZS5ub3RlRGF0ZSB9XG4gICAgICBdLFxuICAgICAgZGF0YVNvdXJjZTogbm90ZVxuICAgIH07XG4gICAgLy8gb25seSBkaXNwbGF5IGRlbGV0ZSBhY3Rpb24gaWYgbm90ZSBjYW4gYmUgZGVsZXRlZFxuICAgIGlmICgodGhpcy5kZWxldGVBbnlOb3RlQWxsb3dlZCB8fCAodGhpcy5kZWxldGVPd25Ob3RlQWxsb3dlZCAmJiB0aGlzLmxvZ2luTmFtZSA9PT0gbm90ZS51c2VyKSkgJiYgbm90ZS50eXBlPy5jb2RlICE9PSAnU3lzdGVtJykge1xuICAgICAgcm93LmFjdGlvbnMgPSBbXG4gICAgICAgIHsgdGl0bGU6ICdEZWxldGUnLCBjbGFzc05hbWU6ICdmYSBmYS1yZW1vdmUnIH1cbiAgICAgIF07XG4gICAgfSBlbHNlIHtcbiAgICAgIHJvdy5hY3Rpb25zID0gW1xuICAgICAgICB7IHRpdGxlOiAnTkEnLCBjbGFzc05hbWU6IHVuZGVmaW5lZCB9XG4gICAgICBdO1xuICAgIH1cbiAgICByZXR1cm4gcm93O1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVGb3JtKCkge1xuICAgIGlmICh0aGlzLm5ld05vdGVGb3JtID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMubmV3Tm90ZUZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcbiAgICAgICAgbmV3Tm90ZVRleHQ6IFsnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWRdXVxuICAgICAgfSk7XG5cbiAgICAgIHRoaXMubmV3Tm90ZUZvcm0uY29udHJvbHNbJ25ld05vdGVUZXh0J10udmFsdWVDaGFuZ2VzLnN1YnNjcmliZShuZXdOb3RlVGV4dCA9PiB0aGlzLm5ld05vdGVUZXh0ID0gbmV3Tm90ZVRleHQpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLm5ld05vdGVGb3JtLnJlc2V0KCk7XG4gICAgfVxuICB9XG5cbiAgY3JlYXRlTm90ZSgpIHtcbiAgICB0aGlzLmlzQ3JlYXRpbmcgPSB0cnVlO1xuICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gJyc7XG4gICAgY29uc3Qgbm90ZTogTm90ZSA9IHtcbiAgICAgIHR5cGU6IHRoaXMubmV3Tm90ZVR5cGUsXG4gICAgICBub3RlRGF0ZTogbmV3IERhdGUoKSxcbiAgICAgIGNvbW1lbnQ6IHRoaXMubmV3Tm90ZVRleHQsXG4gICAgICB1c2VyOiB0aGlzLmxvZ2luTmFtZVxuICAgIH07XG4gICAgdGhpcy5vbkFkZE5vdGUuZW1pdChub3RlKTtcbiAgfVxuXG4gIG5vdGVBY3Rpb25DbGlja2VkKGV2ZW50OiBPZXBhQWN0aW9uRXZlbnQpIHtcbiAgICBpZiAoZXZlbnQuYWN0aW9uLnRpdGxlID09PSAnRGVsZXRlJykge1xuICAgICAgY29uc3QgbW9kYWw6IEJzTW9kYWxSZWYgPSB0aGlzLm1vZGFsU2VydmljZS5zaG93KENvbmZpcm1hdGlvbk1vZGFsQ29tcG9uZW50LCB7IGlnbm9yZUJhY2tkcm9wQ2xpY2s6IHRydWUgfSk7XG4gICAgICAoPENvbmZpcm1hdGlvbk1vZGFsQ29tcG9uZW50Pm1vZGFsLmNvbnRlbnQpLmhlYWRlclRleHQgPSAnQ29uZmlybSBkZWxldGUnO1xuICAgICAgKDxDb25maXJtYXRpb25Nb2RhbENvbXBvbmVudD5tb2RhbC5jb250ZW50KS5ib2R5VGV4dCA9ICdPbmNlIGEgbm90ZSBpcyBkZWxldGVkIGl0IGNhbm5vdCBiZSB1bmRvbmUhIERvIHlvdSByZWFsbHkgd2FudCB0byBkbyB0aGlzPyc7XG4gICAgICAoPENvbmZpcm1hdGlvbk1vZGFsQ29tcG9uZW50Pm1vZGFsLmNvbnRlbnQpLmNvbmZpcm1CdG5MYWJlbCA9ICdZZXMnO1xuICAgICAgKDxDb25maXJtYXRpb25Nb2RhbENvbXBvbmVudD5tb2RhbC5jb250ZW50KS5jYW5jZWxCdG5MYWJlbCA9ICdObyc7XG4gICAgICAoPENvbmZpcm1hdGlvbk1vZGFsQ29tcG9uZW50Pm1vZGFsLmNvbnRlbnQpLmNvbmZpcm1DbGlja2VkLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMub25EZWxldGVOb3RlLmVtaXQoZXZlbnQuZGF0YSk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBkb25lKCkge1xuICAgIHRoaXMuYnNNb2RhbFJlZi5oaWRlKCk7XG4gIH1cblxufVxuIiwiPGRpdiBjbGFzcz1cIm1vZGFsLWhlYWRlclwiPlxuXHQ8aDMgY2xhc3M9XCJtb2RhbC10aXRsZVwiPk5vdGVzPC9oMz5cbjwvZGl2PlxuXG48ZGl2IGNsYXNzPVwibW9kYWwtYm9keVwiPlxuXHRcbiAgPGRpdiAqbmdJZj1cImVycm9yTWVzc2FnZVwiPlxuXHRcdDxkaXYgY2xhc3M9XCJhbGVydCBhbGVydC1kYW5nZXJcIiByb2xlPVwiYWxlcnRcIj57eyBlcnJvck1lc3NhZ2UgfX08L2Rpdj5cbiAgPC9kaXY+XG5cbiAgPGRpdiAqbmdJZj1cImRhdGEubGVuZ3RoID09PSAwXCIgY2xhc3M9XCJhbGVydCBhbGVydC1pbmZvIHRleHQtY2VudGVyXCI+PGVtPlRoZXJlIGFyZSBubyBub3RlcyBkZWZpbmVkLjwvZW0+PC9kaXY+XG5cbiAgPG9lcGEtdGFibGUgW2NvbmZpZ109XCJ0YmxDb25maWdcIiBbZGF0YV09XCJkYXRhXCIgW2hlYWRlcl09XCJoZWFkZXJcIiAoYWN0aW9uQ2xpY2tlZCk9XCJub3RlQWN0aW9uQ2xpY2tlZCgkZXZlbnQpXCI+PC9vZXBhLXRhYmxlPlxuXG4gICBcdFxuXHQ8Zm9ybSAqbmdJZj1cImNyZWF0ZU5vdGVBbGxvd2VkXCIgY2xhc3M9XCJmb3JtLWhvcml6b250YWxcIj5cbiAgICBcbiAgICA8aHI+XG5cdFxuICAgIDxkaXYgW2Zvcm1Hcm91cF09XCJuZXdOb3RlRm9ybVwiIGNsYXNzPVwiZm9ybS1ncm91cFwiPlxuXG4gICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICAgICAgPGxhYmVsIGNsYXNzPVwiY29sLXNtLTIgY29udHJvbC1sYWJlbFwiPlR5cGU6PC9sYWJlbD5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtc20tMTBcIj5cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImZvcm0tY29udHJvbFwiIGlkPVwiTm90ZVR5cGVUZXh0XCI+e3tuZXdOb3RlVHlwZS5uYW1lfX08L3NwYW4+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICAgICAgPGxhYmVsIGNsYXNzPVwiY29sLXNtLTEyIGNvbnRyb2wtbGFiZWxcIj48L2xhYmVsPiAgICBcbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICAgICAgPGxhYmVsIGNsYXNzPVwiY29sLXNtLTIgY29udHJvbC1sYWJlbFwiPk5vdGU6PC9sYWJlbD5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtc20tMTBcIj5cbiAgICAgICAgICAgICAgICA8aW5wdXQgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiB0eXBlPVwiaW5wdXRcIiBmb3JtQ29udHJvbE5hbWU9XCJuZXdOb3RlVGV4dFwiIGlkPVwiTm90ZUlucHV0XCIgbWF4bGVuZ3RoPVwiMjAwMFwiLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cbiAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJjb2wtc20tMTIgY29udHJvbC1sYWJlbFwiPjwvbGFiZWw+ICAgIFxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cbiAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJjb2wtc20tMiBjb250cm9sLWxhYmVsXCI+PC9sYWJlbD5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLXNtLTEwXCI+XG4gICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiaXNDcmVhdGluZ1wiPjxzcGFuIGNsYXNzPVwic3Bpbm5lci1ib3JkZXIgdGV4dC1wcmltYXJ5XCIgcm9sZT1cInN0YXR1c1wiPjwvc3Bhbj48L3NwYW4+XG4gICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCIhaXNDcmVhdGluZ1wiIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IG1yLTFcIiBpZD1cIkFkZE5vdGVCdG5cIiAoY2xpY2spPVwiY3JlYXRlTm90ZSgpXCIgW2Rpc2FibGVkXT1cIm5ld05vdGVGb3JtLmludmFsaWRcIj5cbiAgICAgICAgICAgICAgICA8c3Bhbj5BZGQgTm90ZTwvc3Bhbj5cbiAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuXG5cbiAgICA8L2Rpdj4gIFxuICA8L2Zvcm0+IDwhLS0gZm9ybSAtLT5cbiAgICBcbjwvZGl2PlxuXHRcbjxkaXYgY2xhc3M9XCJtb2RhbC1mb290ZXJcIj5cblx0PGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tcHJpbWFyeSBtci0xXCIgaWQ9XCJEb25lQnRuXCIgKGNsaWNrKT1cImRvbmUoKVwiPkRvbmU8L2J1dHRvbj5cbjwvZGl2PlxuIl19
|
|
177
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90ZXMtbW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb2VwYS11aS1saWIvc3JjL2xpYi9ub3Rlcy1tb2RhbC9ub3Rlcy1tb2RhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vZXBhLXVpLWxpYi9zcmMvbGliL25vdGVzLW1vZGFsL25vdGVzLW1vZGFsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUEwQixVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQVdwRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQzs7Ozs7OztBQVNoRyxNQUFNLE9BQU8sbUJBQW1CO0lBb0RWO0lBQXdCO0lBQWdDO0lBQ3hEO0lBcERiLFdBQVcsQ0FBYTtJQUN4QixXQUFXLENBQWlCO0lBQzVCLFdBQVcsR0FBVyxFQUFFLENBQUM7SUFDekIsVUFBVSxHQUFHLEtBQUssQ0FBQztJQUVsQixnQkFBZ0IsQ0FBaUI7SUFDakMsTUFBTSxHQUFXLEVBQUUsQ0FBQztJQUVuQixTQUFTLEdBQVcsRUFBRSxDQUFDO0lBQ3ZCLG9CQUFvQixHQUFHLEtBQUssQ0FBQztJQUM3QixvQkFBb0IsR0FBRyxLQUFLLENBQUM7SUFDN0IsaUJBQWlCLEdBQUcsS0FBSyxDQUFDO0lBQzFCLFFBQVEsR0FBRyxLQUFLLENBQUM7SUFDakIsWUFBWSxHQUFXLEVBQUUsQ0FBQztJQUduQyxJQUNXLEtBQUssQ0FBQyxLQUFhO1FBQzVCLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxD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LEVBQUUsQ0FBQyxDQUFDO1lBQy9FLEtBQUssQ0FBQyxPQUFRLENBQUMsVUFBVSxHQUFHLGdCQUFnQixDQUFDO1lBQzdDLEtBQUssQ0FBQyxPQUFRLENBQUMsUUFBUSxHQUFHLDRFQUE0RSxDQUFDO1lBQ3ZHLEtBQUssQ0FBQyxPQUFRLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQztZQUN2QyxLQUFLLENBQUMsT0FBUSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUM7WUFDckMsS0FBSyxDQUFDLE9BQVEsQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtnQkFDeEUsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3JDLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUNILENBQUM7SUFFRCxJQUFJO1FBQ0YsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN6QixDQUFDO3dHQWhLVSxtQkFBbUI7NEZBQW5CLG1CQUFtQiwyWUNyQmhDLHlqRUE4REE7OzRGRHpDYSxtQkFBbUI7a0JBTC9CLFNBQVM7K0JBQ0Usa0JBQWtCO3VLQWFuQixTQUFTO3NCQUFqQixLQUFLO2dCQUNHLG9CQUFvQjtzQkFBNUIsS0FBSztnQkFDRyxvQkFBb0I7c0JBQTVCLEtBQUs7Z0JBQ0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFJSyxLQUFLO3NCQURmLEtBQUs7Z0JBYUssZUFBZTtzQkFEekIsS0FBSztnQkFVSSxTQUFTO3NCQUFsQixNQUFNO2dCQUNHLFlBQVk7c0JBQXJCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBCc01vZGFsU2VydmljZSB9IGZyb20gJ25neC1ib290c3RyYXAvbW9kYWwnO1xuaW1wb3J0IHsgQnNNb2RhbFJlZiB9IGZyb20gJ25neC1ib290c3RyYXAvbW9kYWwnO1xuXG5pbXBvcnQgeyBPZXBhTWFwcGluZ1NlcnZpY2UsIE9FUEFSZWZlcmVuY2UgfSBmcm9tICdAb2hpb2VwYS9vZXBhLWNvbW1vbi1saWInO1xuaW1wb3J0IHsgT2VwYVRhYmxlQ29sdW1uIH0gZnJvbSAnLi4vdGFibGUvb2VwYS10YWJsZS1jb2x1bW4nO1xuaW1wb3J0IHsgT2VwYVRhYmxlUm93IH0gZnJvbSAnLi4vdGFibGUvb2VwYS10YWJsZS1yb3cnO1xuaW1wb3J0IHsgT2VwYVRhYmxlQ29uZmlnIH0gZnJvbSAnLi4vdGFibGUvb2VwYS10YWJsZS1jb25maWcnO1xuaW1wb3J0IHsgT2VwYVRhYmxlSGVhZGVyIH0gZnJvbSAnLi4vdGFibGUvb2VwYS10YWJsZS1oZWFkZXInO1xuaW1wb3J0IHsgT2VwYUFjdGlvbkV2ZW50IH0gZnJvbSAnLi4vYWN0aW9uLWJ0bi9vZXBhLWFjdGlvbi1ldmVudCc7XG5pbXBvcnQgeyBDb25maXJtYXRpb25Nb2RhbENvbXBvbmVudCB9IGZyb20gJy4uL2NvbmZpcm1hdGlvbi1tb2RhbC9jb25maXJtYXRpb24tbW9kYWwuY29tcG9uZW50JztcbmltcG9ydCB7IE5vdGUgfSBmcm9tICcuL29lcGEtbm90ZSc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnb2VwYS1ub3Rlcy1tb2RhbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9ub3Rlcy1tb2RhbC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL25vdGVzLW1vZGFsLmNvbXBvbmVudC5jc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBOb3Rlc01vZGFsQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgcHVibGljIG5ld05vdGVGb3JtITogRm9ybUdyb3VwO1xuICBwdWJsaWMgbmV3Tm90ZVR5cGUhOiBPRVBBUmVmZXJlbmNlO1xuICBwdWJsaWMgbmV3Tm90ZVRleHQ6IHN0cmluZyA9ICcnO1xuICBwdWJsaWMgaXNDcmVhdGluZyA9IGZhbHNlO1xuXG4gIHByaXZhdGUgX2RlZmF1bHROb3RlVHlwZSE6IE9FUEFSZWZlcmVuY2U7XG4gIHByaXZhdGUgX25vdGVzOiBOb3RlW10gPSBbXTtcblxuICBASW5wdXQoKSBsb2dpbk5hbWU6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSBkZWxldGVBbnlOb3RlQWxsb3dlZCA9IGZhbHNlO1xuICBASW5wdXQoKSBkZWxldGVPd25Ob3RlQWxsb3dlZCA9IGZhbHNlO1xuICBASW5wdXQoKSBjcmVhdGVOb3RlQWxsb3dlZCA9IGZhbHNlO1xuICBASW5wdXQoKSBleHRlcm5hbCA9IGZhbHNlO1xuICBASW5wdXQoKSBlcnJvck1lc3NhZ2U6IHN0cmluZyA9ICcnO1xuXG4gIFxuICBASW5wdXQoKSBcbiAgcHVibGljIHNldCBub3Rlcyhub3RlczogTm90ZVtdKSB7XG4gICAgdGhpcy5pc0NyZWF0aW5nID0gZmFsc2U7XG4gICAgdGhpcy5fbm90ZXMgPSBub3RlcztcbiAgICB0aGlzLmxvYWREYXRhKG5vdGVzKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgbm90ZXMoKSB7XG4gICAgcmV0dXJuIHRoaXMuX25vdGVzO1xuICB9XG5cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGRlZmF1bHROb3RlVHlwZSh0eXBlOiBPRVBBUmVmZXJlbmNlKSB7XG4gICAgdGhpcy5fZGVmYXVsdE5vdGVUeXBlID0gdHlwZTtcbiAgICB0aGlzLm5ld05vdGVUeXBlID0gdHlwZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZGVmYXVsdE5vdGVUeXBlKCkge1xuICAgIHJldHVybiB0aGlzLl9kZWZhdWx0Tm90ZVR5cGU7XG4gIH1cblxuICBAT3V0cHV0KCkgb25BZGROb3RlOiBFdmVudEVtaXR0ZXI8Tm90ZT4gPSBuZXcgRXZlbnRFbWl0dGVyPE5vdGU+KCk7XG4gIEBPdXRwdXQoKSBvbkRlbGV0ZU5vdGU6IEV2ZW50RW1pdHRlcjxOb3RlPiA9IG5ldyBFdmVudEVtaXR0ZXI8Tm90ZT4oKTtcblxuICAgIC8vIFRhYmxlIGVsZW1lbnRzXG4gICAgcHVibGljIGRhdGE6IEFycmF5PE9lcGFUYWJsZVJvdz4gPSBbXTtcblxuICAgIHB1YmxpYyB0YmxDb25maWc6IE9lcGFUYWJsZUNvbmZpZyA9IHtcbiAgICB9O1xuICBcbiAgICBwdWJsaWMgaGVhZGVyOiBPZXBhVGFibGVIZWFkZXIgPSB7XG4gICAgICBjb2x1bW5zOiB0aGlzLmdldENvbHVtbnMoKVxuICAgIH07XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBmYjogRm9ybUJ1aWxkZXIsIHB1YmxpYyBic01vZGFsUmVmOiBCc01vZGFsUmVmLCBwcml2YXRlIG1vZGFsU2VydmljZTogQnNNb2RhbFNlcnZpY2UsXG4gICAgICAgICAgICAgIHByaXZhdGUgbWFwcGluZ1NlcnZpY2U6IE9lcGFNYXBwaW5nU2VydmljZSkgeyBcbiAgfVxuXG4gIG5nT25Jbml0KCkgeyAgICBcbiAgICB0aGlzLmluaXRpYWxpemVUYWJsZSgpO1xuICAgIHRoaXMuY3JlYXRlRm9ybSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0aWFsaXplVGFibGUoKSB7XG4gICAgdGhpcy5oZWFkZXIgPSB7XG4gICAgICBjb2x1bW5zOiB0aGlzLmdldENvbHVtbnMoKVxuICAgIH07XG4gICAgdGhpcy5sb2FkRGF0YSh0aGlzLm5vdGVzKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Q29sdW1ucygpOiBBcnJheTxPZXBhVGFibGVDb2x1bW4+IHtcbiAgICBjb25zdCBjb2x1bW5zOiBBcnJheTxPZXBhVGFibGVDb2x1bW4+ID0gW1xuICAgICAgeyB0aXRsZTogJ05vdGUnLCBpZDogJ25vdGUnIH0sXG4gICAgXTtcblxuICAgIGlmICghdGhpcy5leHRlcm5hbCkge1xuICAgICAgY29sdW1ucy5wdXNoKHsgdGl0bGU6ICdUeXBlJywgaWQ6ICd0eXBlJyB9KTtcbiAgICAgIGNvbHVtbnMucHVzaCh7IHRpdGxlOiAnQWNjb3VudCcsIGlkOiAnYWNjb3VudCcgfSk7XG4gICAgfVxuXG4gICAgY29sdW1ucy5wdXNoKHsgdGl0bGU6ICdEYXRlJywgaWQ6ICdkYXRlJyB9KTtcblxuICAgIGlmICh0aGlzLmRlbGV0ZUFueU5vdGVBbGxvd2VkIHx8IHRoaXMuZGVsZXRlT3duTm90ZUFsbG93ZWQpIHtcbiAgICAgIGNvbHVtbnMucHVzaCh7IHRpdGxlOiAnQWN0aW9ucycsIGlkOiAnYWN0aW9ucycsIGFjdGlvbkNvbHVtbjogdHJ1ZSwgY2xhc3NOYW1lOiAnYWN0aW9uLWJ0bi1jb2wnIH0pO1xuICAgIH1cblxuICAgIHJldHVybiBjb2x1bW5zO1xuICB9XG5cbiAgcHJpdmF0ZSBsb2FkRGF0YShub3RlczogQXJyYXk8Tm90ZT4pIHtcbiAgICB0aGlzLmRhdGEgPSBbXTtcbiAgICBpZiAobm90ZXMgJiYgbm90ZXMubGVuZ3RoKSB7XG4gICAgICBub3Rlcy5mb3JFYWNoKChub3RlKSA9PiB7XG4gICAgICAgIHRoaXMuZGF0YS5wdXNoKHRoaXMuY29udmVydE5vdGVUb1RhYmxlUm93KG5vdGUpKTtcbiAgICAgIH0pO1xuICAgICAgdGhpcy5kYXRhID0gdGhpcy5kYXRhLnNwbGljZSgwKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGNvbnZlcnROb3RlVG9UYWJsZVJvdyhub3RlOiBOb3RlKTogT2VwYVRhYmxlUm93IHtcbiAgICBjb25zdCByb3c6IE9lcGFUYWJsZVJvdyA9IHtcbiAgICAgIGNlbGxzOiBbXG4gICAgICAgIHsgaWQ6ICdub3RlJywgdmFsdWU6IG5vdGUuY29tbWVudCB9LFxuICAgICAgICB7IGlkOiAndHlwZScsIHZhbHVlOiBub3RlLnR5cGUgPyBub3RlLnR5cGUubmFtZSA6ICcnIH0sXG4gICAgICAgIHsgaWQ6ICdhY2NvdW50JywgdmFsdWU6IG5vdGUudXNlciB9LFxuICAgICAgICB7IGlkOiAnZGF0ZScsIHZhbHVlOiBub3RlLm5vdGVEYXRlID8gdGhpcy5tYXBwaW5nU2VydmljZS5tYXBEYXRlVG9EYXRlVGltZVN0cmluZyhuZXcgRGF0ZShub3RlLm5vdGVEYXRlKSk6IG51bGwsIFxuICAgICAgICAgICAgICAgIHNvcnRWYWx1ZTogbm90ZS5ub3RlRGF0ZSB9XG4gICAgICBdLFxuICAgICAgZGF0YVNvdXJjZTogbm90ZVxuICAgIH07XG4gICAgLy8gb25seSBkaXNwbGF5IGRlbGV0ZSBhY3Rpb24gaWYgbm90ZSBjYW4gYmUgZGVsZXRlZFxuICAgIGlmICgodGhpcy5kZWxldGVBbnlOb3RlQWxsb3dlZCB8fCAodGhpcy5kZWxldGVPd25Ob3RlQWxsb3dlZCAmJiB0aGlzLmxvZ2luTmFtZSA9PT0gbm90ZS51c2VyKSkgJiYgbm90ZS50eXBlPy5jb2RlICE9PSAnU3lzdGVtJykge1xuICAgICAgcm93LmFjdGlvbnMgPSBbXG4gICAgICAgIHsgdGl0bGU6ICdEZWxldGUnLCBjbGFzc05hbWU6ICdiaSBiaS14LWxnJyB9XG4gICAgICBdO1xuICAgIH0gZWxzZSB7XG4gICAgICByb3cuYWN0aW9ucyA9IFtcbiAgICAgICAgeyB0aXRsZTogJ05BJywgY2xhc3NOYW1lOiB1bmRlZmluZWQgfVxuICAgICAgXTtcbiAgICB9XG4gICAgcmV0dXJuIHJvdztcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlRm9ybSgpIHtcbiAgICBpZiAodGhpcy5uZXdOb3RlRm9ybSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLm5ld05vdGVGb3JtID0gdGhpcy5mYi5ncm91cCh7XG4gICAgICAgIG5ld05vdGVUZXh0OiBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV1cbiAgICAgIH0pO1xuXG4gICAgICB0aGlzLm5ld05vdGVGb3JtLmNvbnRyb2xzWyduZXdOb3RlVGV4dCddLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUobmV3Tm90ZVRleHQgPT4gdGhpcy5uZXdOb3RlVGV4dCA9IG5ld05vdGVUZXh0KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5uZXdOb3RlRm9ybS5yZXNldCgpO1xuICAgIH1cbiAgfVxuXG4gIGNyZWF0ZU5vdGUoKSB7XG4gICAgdGhpcy5pc0NyZWF0aW5nID0gdHJ1ZTtcbiAgICB0aGlzLmVycm9yTWVzc2FnZSA9ICcnO1xuICAgIGNvbnN0IG5vdGU6IE5vdGUgPSB7XG4gICAgICB0eXBlOiB0aGlzLm5ld05vdGVUeXBlLFxuICAgICAgbm90ZURhdGU6IG5ldyBEYXRlKCksXG4gICAgICBjb21tZW50OiB0aGlzLm5ld05vdGVUZXh0LFxuICAgICAgdXNlcjogdGhpcy5sb2dpbk5hbWVcbiAgICB9O1xuICAgIHRoaXMub25BZGROb3RlLmVtaXQobm90ZSk7XG4gIH1cblxuICBub3RlQWN0aW9uQ2xpY2tlZChldmVudDogT2VwYUFjdGlvbkV2ZW50KSB7XG4gICAgaWYgKGV2ZW50LmFjdGlvbi50aXRsZSA9PT0gJ0RlbGV0ZScpIHtcbiAgICAgIGNvbnN0IG1vZGFsOiBCc01vZGFsUmVmID0gdGhpcy5tb2RhbFNlcnZpY2Uuc2hvdyhDb25maXJtYXRpb25Nb2RhbENvbXBvbmVudCwgeyBpZ25vcmVCYWNrZHJvcENsaWNrOiB0cnVlIH0pO1xuICAgICAgKDxDb25maXJtYXRpb25Nb2RhbENvbXBvbmVudD5tb2RhbC5jb250ZW50KS5oZWFkZXJUZXh0ID0gJ0NvbmZpcm0gZGVsZXRlJztcbiAgICAgICg8Q29uZmlybWF0aW9uTW9kYWxDb21wb25lbnQ+bW9kYWwuY29udGVudCkuYm9keVRleHQgPSAnT25jZSBhIG5vdGUgaXMgZGVsZXRlZCBpdCBjYW5ub3QgYmUgdW5kb25lISBEbyB5b3UgcmVhbGx5IHdhbnQgdG8gZG8gdGhpcz8nO1xuICAgICAgKDxDb25maXJtYXRpb25Nb2RhbENvbXBvbmVudD5tb2RhbC5jb250ZW50KS5jb25maXJtQnRuTGFiZWwgPSAnWWVzJztcbiAgICAgICg8Q29uZmlybWF0aW9uTW9kYWxDb21wb25lbnQ+bW9kYWwuY29udGVudCkuY2FuY2VsQnRuTGFiZWwgPSAnTm8nO1xuICAgICAgKDxDb25maXJtYXRpb25Nb2RhbENvbXBvbmVudD5tb2RhbC5jb250ZW50KS5jb25maXJtQ2xpY2tlZC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLm9uRGVsZXRlTm90ZS5lbWl0KGV2ZW50LmRhdGEpO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgZG9uZSgpIHtcbiAgICB0aGlzLmJzTW9kYWxSZWYuaGlkZSgpO1xuICB9XG5cbn1cbiIsIjxkaXYgY2xhc3M9XCJtb2RhbC1oZWFkZXJcIj5cblx0PGgzIGNsYXNzPVwibW9kYWwtdGl0bGVcIj5Ob3RlczwvaDM+XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cIm1vZGFsLWJvZHlcIj5cblx0XG4gIDxkaXYgKm5nSWY9XCJlcnJvck1lc3NhZ2VcIj5cblx0XHQ8ZGl2IGNsYXNzPVwiYWxlcnQgYWxlcnQtZGFuZ2VyXCIgcm9sZT1cImFsZXJ0XCI+e3sgZXJyb3JNZXNzYWdlIH19PC9kaXY+XG4gIDwvZGl2PlxuXG4gIDxkaXYgKm5nSWY9XCJkYXRhLmxlbmd0aCA9PT0gMFwiIGNsYXNzPVwiYWxlcnQgYWxlcnQtaW5mbyB0ZXh0LWNlbnRlclwiPjxlbT5UaGVyZSBhcmUgbm8gbm90ZXMgZGVmaW5lZC48L2VtPjwvZGl2PlxuXG4gIDxvZXBhLXRhYmxlIFtjb25maWddPVwidGJsQ29uZmlnXCIgW2RhdGFdPVwiZGF0YVwiIFtoZWFkZXJdPVwiaGVhZGVyXCIgKGFjdGlvbkNsaWNrZWQpPVwibm90ZUFjdGlvbkNsaWNrZWQoJGV2ZW50KVwiPjwvb2VwYS10YWJsZT5cblxuICAgXHRcblx0PGZvcm0gKm5nSWY9XCJjcmVhdGVOb3RlQWxsb3dlZFwiIGNsYXNzPVwiZm9ybS1ob3Jpem9udGFsXCI+XG4gICAgXG4gICAgPGhyPlxuXHRcbiAgICA8ZGl2IFtmb3JtR3JvdXBdPVwibmV3Tm90ZUZvcm1cIiBjbGFzcz1cImZvcm0tZ3JvdXBcIj5cblxuICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxuICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImNvbC1zbS0yIGNvbnRyb2wtbGFiZWxcIj5UeXBlOjwvbGFiZWw+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLXNtLTEwXCI+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBpZD1cIk5vdGVUeXBlVGV4dFwiPnt7bmV3Tm90ZVR5cGUubmFtZX19PC9zcGFuPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxuICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImNvbC1zbS0xMiBjb250cm9sLWxhYmVsXCI+PC9sYWJlbD4gICAgXG4gICAgICA8L2Rpdj5cblxuICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxuICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImNvbC1zbS0yIGNvbnRyb2wtbGFiZWxcIj5Ob3RlOjwvbGFiZWw+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLXNtLTEwXCI+XG4gICAgICAgICAgICAgICAgPGlucHV0IGNsYXNzPVwiZm9ybS1jb250cm9sXCIgdHlwZT1cImlucHV0XCIgZm9ybUNvbnRyb2xOYW1lPVwibmV3Tm90ZVRleHRcIiBpZD1cIk5vdGVJbnB1dFwiIG1heGxlbmd0aD1cIjIwMDBcIi8+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICAgICAgPGxhYmVsIGNsYXNzPVwiY29sLXNtLTEyIGNvbnRyb2wtbGFiZWxcIj48L2xhYmVsPiAgICBcbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICAgICAgPGxhYmVsIGNsYXNzPVwiY29sLXNtLTIgY29udHJvbC1sYWJlbFwiPjwvbGFiZWw+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1zbS0xMFwiPlxuICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImlzQ3JlYXRpbmdcIj48c3BhbiBjbGFzcz1cInNwaW5uZXItYm9yZGVyIHRleHQtcHJpbWFyeVwiIHJvbGU9XCJzdGF0dXNcIj48L3NwYW4+PC9zcGFuPlxuICAgICAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwiIWlzQ3JlYXRpbmdcIiBjbGFzcz1cImJ0biBidG4tcHJpbWFyeSBtci0xXCIgaWQ9XCJBZGROb3RlQnRuXCIgKGNsaWNrKT1cImNyZWF0ZU5vdGUoKVwiIFtkaXNhYmxlZF09XCJuZXdOb3RlRm9ybS5pbnZhbGlkXCI+XG4gICAgICAgICAgICAgICAgPHNwYW4+QWRkIE5vdGU8L3NwYW4+XG4gICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cblxuXG4gICAgPC9kaXY+ICBcbiAgPC9mb3JtPiA8IS0tIGZvcm0gLS0+XG4gICAgXG48L2Rpdj5cblx0XG48ZGl2IGNsYXNzPVwibW9kYWwtZm9vdGVyXCI+XG5cdDxidXR0b24gY2xhc3M9XCJidG4gYnRuLXByaW1hcnkgbXItMVwiIGlkPVwiRG9uZUJ0blwiIChjbGljayk9XCJkb25lKClcIj5Eb25lPC9idXR0b24+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -9,7 +9,7 @@ export class OEPAErrorMessageComponent {
|
|
|
9
9
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: OEPAErrorMessageComponent, selector: "oepa-error-message", inputs: { errorMessage: "errorMessage" }, ngImport: i0, template: `
|
|
10
10
|
<div class="card error-message">
|
|
11
11
|
<div class="card-header">
|
|
12
|
-
<div><i class="
|
|
12
|
+
<div><i class="bi bi-exclamation-circle-fill "></i> <strong>ERROR</strong></div>
|
|
13
13
|
</div>
|
|
14
14
|
<div class="card-body">
|
|
15
15
|
<div class="card-text">
|
|
@@ -24,7 +24,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
24
24
|
args: [{ selector: 'oepa-error-message', template: `
|
|
25
25
|
<div class="card error-message">
|
|
26
26
|
<div class="card-header">
|
|
27
|
-
<div><i class="
|
|
27
|
+
<div><i class="bi bi-exclamation-circle-fill "></i> <strong>ERROR</strong></div>
|
|
28
28
|
</div>
|
|
29
29
|
<div class="card-body">
|
|
30
30
|
<div class="card-text">
|
|
@@ -36,4 +36,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
36
36
|
}], ctorParameters: () => [], propDecorators: { errorMessage: [{
|
|
37
37
|
type: Input
|
|
38
38
|
}] } });
|
|
39
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2VwYS1lcnJvci1tZXNzYWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29lcGEtdWktbGliL3NyYy9saWIvb2VwYS1lcnJvci1tZXNzYWdlL29lcGEtZXJyb3ItbWVzc2FnZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBa0J6RCxNQUFNLE9BQU8seUJBQXlCO0lBR3BDLFlBQVksQ0FBVTtJQUV0QixnQkFBZ0IsQ0FBQztJQUVqQixRQUFRO0lBQ1IsQ0FBQzt3R0FSVSx5QkFBeUI7NEZBQXpCLHlCQUF5QixvR0FkMUI7Ozs7Ozs7Ozs7O0tBV1A7OzRGQUdRLHlCQUF5QjtrQkFoQnJDLFNBQVM7K0JBQ0Usb0JBQW9CLFlBQ3BCOzs7Ozs7Ozs7OztLQVdQO3dEQU1ILFlBQVk7c0JBRFgsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdvZXBhLWVycm9yLW1lc3NhZ2UnLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXYgY2xhc3M9XCJjYXJkIGVycm9yLW1lc3NhZ2VcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWhlYWRlclwiPlxuICAgICAgICA8ZGl2PjxpIGNsYXNzPVwiYmkgYmktZXhjbGFtYXRpb24tY2lyY2xlLWZpbGwgXCI+PC9pPiZuYnNwOyA8c3Ryb25nPkVSUk9SPC9zdHJvbmc+PC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHlcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtdGV4dFwiPlxuICAgICAgICAgIHt7IGVycm9yTWVzc2FnZSB9fVxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIGAsXG4gIHN0eWxlVXJsczogWycuL29lcGEtZXJyb3ItbWVzc2FnZS5jb21wb25lbnQuY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgT0VQQUVycm9yTWVzc2FnZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgQElucHV0KClcbiAgZXJyb3JNZXNzYWdlITogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKCkgeyB9XG5cbiAgbmdPbkluaXQoKSB7XG4gIH1cblxufSJdfQ==
|
|
@@ -202,10 +202,13 @@ export class OepaUserAccountService {
|
|
|
202
202
|
return of(this.ebizVersion);
|
|
203
203
|
}
|
|
204
204
|
else {
|
|
205
|
-
const url = this.hostUrl + '/api/v1/gateway/
|
|
206
|
-
return this.http.get(url, { params: { 'app': app } }).pipe(map((
|
|
207
|
-
if (
|
|
208
|
-
this.ebizVersion =
|
|
205
|
+
const url = this.hostUrl + '/api/v1/gateway/version';
|
|
206
|
+
return this.http.get(url, { params: { 'app': app } }).pipe(map((version) => {
|
|
207
|
+
if (version && version.response) {
|
|
208
|
+
this.ebizVersion = version.response;
|
|
209
|
+
}
|
|
210
|
+
else {
|
|
211
|
+
this.ebizVersion = 'unknown';
|
|
209
212
|
}
|
|
210
213
|
return this.ebizVersion;
|
|
211
214
|
}));
|
|
@@ -343,4 +346,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
343
346
|
type: Inject,
|
|
344
347
|
args: ['app']
|
|
345
348
|
}] }] });
|
|
346
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2VwYS11c2VyLWFjY291bnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29lcGEtdWktbGliL3NyYy9saWIvb2VwYS11c2VyLWFjY291bnQvb2VwYS11c2VyLWFjY291bnQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7QUFLMUI7O0dBRUc7QUFJSCxNQUFNLE9BQU8sc0JBQXNCO0lBcUJiO0lBQ2E7SUFDUjtJQXRCakIsT0FBTyxHQUFHLE9BQU8sQ0FBQztJQUNsQixXQUFXLEdBQUcsdUJBQXVCLENBQUM7SUFDdEMsZUFBZSxHQUFHLGtCQUFrQixDQUFDO0lBQ3JDLGNBQWMsR0FBRyxpQkFBaUIsQ0FBQztJQUNuQyxPQUFPLENBQW1CO0lBQzFCLFFBQVEsR0FBVyxFQUFFLENBQUM7SUFDdEIsU0FBUyxHQUFXLEVBQUUsQ0FBQztJQUN2QixjQUFjLEdBQVcsRUFBRSxDQUFDO0lBQzVCLFdBQVcsR0FBVyxFQUFFLENBQUM7SUFDekIsVUFBVSxHQUFXLEVBQUUsQ0FBQztJQUN4QixnQkFBZ0IsR0FBRyxLQUFLLENBQUM7SUFDekIsUUFBUSxHQUFVLENBQUMsQ0FBQztJQUNwQixhQUFhLEdBQUcsQ0FBQyxFQUFFLEdBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyx5Q0FBeUM7SUFDbEUsV0FBVyxHQUFHLElBQUksT0FBTyxFQUFVLENBQUM7SUFDcEMsU0FBUyxDQUFNO0lBQ2hCLFlBQVksR0FBNkIsSUFBSSxPQUFPLEVBQW1CLENBQUM7SUFDeEUsVUFBVSxHQUFvQixJ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QUFNOzs0RkFFUCxzQkFBc0I7a0JBSGxDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkF1QkksTUFBTTsyQkFBQyxhQUFhOzswQkFDcEIsTUFBTTsyQkFBQyxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcblxuaW1wb3J0IHsgT2VwYVVzZXJBY2NvdW50LCBQcm9ncmFtUHJpdmlsZWdlLCBQcm9ncmFtUHJpdmlsZWdlUmVxdWVzdCwgRGVsZWdhdGlvbiwgT0VQQVJvbGUsIE9lcGFQcml2aWxlZ2UgfSBmcm9tICdAb2hpb2VwYS9vZXBhLWNvbW1vbi1saWInO1xuXG4vKipcbiAqIE9lcGFVc2VyQWNjb3VudFNlcnZpY2UgLSBBIGNvbGxlY3Rpb24gb2YgbWV0aG9kcyBmb3IgYWNjZXNzaW5nIGFuZCBtYW5pcHVsYXRpbmcgdXNlciBhY2NvdW50cy5cbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgT2VwYVVzZXJBY2NvdW50U2VydmljZSB7XG4gIHByaXZhdGUgaG9zdFVybCA9ICcvZWJpeic7XG4gIHByaXZhdGUgYWNjb3VudHNVcmwgPSAnL2FwaS92MS91c2VyLWFjY291bnRzJztcbiAgcHJpdmF0ZSBlYml6QWNjb3VudHNVcmwgPSAnL2FwaS92Mi9hY2NvdW50cyc7XG4gIHByaXZhdGUgZWJpelNlc3Npb25VcmwgPSAnL2FwaS92Mi9zZXNzaW9uJztcbiAgcHJpdmF0ZSBhY2NvdW50ITogT2VwYVVzZXJBY2NvdW50O1xuICBwcml2YXRlIHBlcnNvbklEOiBzdHJpbmcgPSAnJztcbiAgcHJpdmF0ZSBzZXNzaW9uSUQ6IHN0cmluZyA9ICcnO1xuICBwcml2YXRlIHdlYmFwcHNSb290VVJMOiBzdHJpbmcgPSAnJztcbiAgcHJpdmF0ZSBlYml6VmVyc2lvbjogc3RyaW5nID0gJyc7XG4gIHByaXZhdGUgbG9nb3V0UGF0aDogc3RyaW5nID0gJyc7XG4gIHByaXZhdGUgaWRsZVRpbWVyUnVubmluZyA9IGZhbHNlO1xuICBwcml2YXRlIGlkbGVUaW1lOm51bWJlciA9IDA7XG4gIHByaXZhdGUgaWRsZVRocmVzaG9sZCA9ICgyOSo2MCk7IC8vIDI5IG1pbnV0ZSB0aW1lb3V0IHRocmVzaG9sZCBieSBkZWZhdWx0XG4gIHByaXZhdGUgaWRsZVN1YmplY3QgPSBuZXcgU3ViamVjdDxudW1iZXI+KCk7XG4gIHByaXZhdGUgdGltZW91dElEOiBhbnk7XG4gIHB1YmxpYyB1c2VyQWNjb3VudCQ6IFN1YmplY3Q8T2VwYVVzZXJBY2NvdW50PiA9IG5ldyBTdWJqZWN0PE9lcGFVc2VyQWNjb3VudD4oKTtcbiAgcHVibGljIHNlc3Npb25JRCQ6IFN1YmplY3Q8c3RyaW5nPiA9IG5ldyBTdWJqZWN0PHN0cmluZz4oKTsgLy8gc2Vzc2lvbiBJRCBpcyB1c2VkIGZvciBcImJhY2tkb29yXCIgcHJvY2Vzc2luZyBvZiBpbnRlcm5hbCAod2ViYXBwcykgYWNjb3VudHNcbiAgcHJpdmF0ZSBhdXRoVG9rZW46IHN0cmluZyA9ICcnO1xuICBwcml2YXRlIHBhcmFtczogYW55ID0ge307XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LCBcbiAgICBASW5qZWN0KCdlYml6Um9vdFVSTCcpIHByaXZhdGUgZWJpelJvb3RVUkw6IHN0cmluZyxcbiAgICBASW5qZWN0KCdhcHAnKSBwcml2YXRlIGFwcDogc3RyaW5nKSB7XG4gICAgdGhpcy5ob3N0VXJsID0gdGhpcy5lYml6Um9vdFVSTCArIHRoaXMuaG9zdFVybDtcbiAgICB0aGlzLmxvZ291dFBhdGggPSB0aGlzLmViaXpSb290VVJMICsgJy9qc3AvbG9nb3V0LmpzcCc7XG4gICAgdGhpcy5wYXJhbXMgPSB7ICdhcHAnOiB0aGlzLmFwcCB9O1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHJpZXZlIHRoZSBVc2VyIEFjY291bnQgZm9yIHRoZSB1c2VyIHVzZXJpZC5cbiAgICogQHBhcmFtIHVzZXJpZFxuICAgKi9cbiAgcHVibGljIHJldHJpZXZlQWNjb3VudEZvclVzZXIodXNlcmlkOiBzdHJpbmcsIGFwcDogc3RyaW5nKTogT2JzZXJ2YWJsZTxPZXBhVXNlckFjY291bnQ+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxPZXBhVXNlckFjY291bnQ+KHRoaXMuaG9zdFVybCArIHRoaXMuYWNjb3VudHNVcmwgKyAnLycgKyB1c2VyaWQsIHsgcGFyYW1zOiB7ICdhcHAnOiBhcHAgfSB9KTtcbiAgfVxuXG4gIHB1YmxpYyByZXRyaWV2ZUFjY291bnRCeU9ISUQob2hpZDogc3RyaW5nLCBhcHA6IHN0cmluZyk6IE9ic2VydmFibGU8T2VwYVVzZXJBY2NvdW50PiB7XG4gICAgY29uc3QgdXJsID0gdGhpcy5ob3N0VXJsICsgdGhpcy5hY2NvdW50c1VybCArICcvb2hpZC8nICsgb2hpZCA7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8T2VwYVVzZXJBY2NvdW50Pih1cmwsIHsgcGFyYW1zOiB7ICdhcHAnOiBhcHAgfSB9KS5waXBlKFxuICAgICAgbWFwKCh1c2VyQWNjb3VudDogT2VwYVVzZXJBY2NvdW50KSA9PiB7XG4gICAgICAgIHRoaXMudXNlckFjY291bnQkLm5leHQodXNlckFjY291bnQpO1xuICAgICAgICByZXR1cm4gdXNlckFjY291bnQ7XG4gICAgICB9KSk7XG4gIH1cblxuICAvKipcbiAgICogUmV0cmlldmUgdGhlIHVzZXIgYWNjb3VudCBmb3IgdGhlIGN1cnJlbnRseSBsb2dnZWQgaW4gdXNlci5cbiAgICogQHJldHVybnMgT2JzZXJ2YWJsZTxPZXBhVXNlckFjY291bnQ+XG4gICAqL1xuICBwdWJsaWMgcmV0cmlldmVBY2NvdW50Rm9yQ3VycmVudFVzZXIoYXBwOiBzdHJpbmcpOiBPYnNlcnZhYmxlPE9lcGFVc2VyQWNjb3VudD4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PE9lcGFVc2VyQWNjb3VudD4odGhpcy5ob3N0VXJsICsgJy9hcGkvdjEvdXNlckFjY291bnRzL2xvZ2luJykucGlwZShtYXAoKGFjY291bnQ6IE9lcGFVc2VyQWNjb3VudCkgPT4ge1xuICAgICAgaWYgKCFhY2NvdW50KSB7XG4gICAgICAgIGlmICh0aGlzLnBlcnNvbklEICYmIHRoaXMuc2Vzc2lvbklEKSB7XG4gICAgICAgICAgdGhpcy5yZXRyaWV2ZUFjY291bnRGb3JJbnRlcm5hbFNlc3Npb24odGhpcy5wZXJzb25JRCwgdGhpcy5zZXNzaW9uSUQsIGFwcCkuc3Vic2NyaWJlKHtcbiAgICAgICAgICAgIG5leHQ6IGludGVybmFsQWNjb3VudCA9PiB7XG4gICAgICAgICAgICBpZiAoaW50ZXJuYWxBY2NvdW50KSB7XG4gICAgICAgICAgICAgIHRoaXMuYWNjb3VudCA9IGludGVybmFsQWNjb3VudFxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgdGhpcy5yZWRpcmVjdFRvTG9nb3V0KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSwgZXJyb3I6IGVyciA9PiB7XG4gICAgICAgICAgICB0aGlzLnJlZGlyZWN0VG9Mb2dvdXQoKTtcbiAgICAgICAgICB9fSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5yZWRpcmVjdFRvTG9nb3V0KCk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuYWNjb3VudCA9IGFjY291bnQ7XG4gICAgICAgIGNvbnNvbGUubG9nKCdyZXRyaWV2ZUFjY291bnRGb3JDdXJyZW50VXNlcjogJyArIHRoaXMuYWNjb3VudD8ubG9naW5OYW1lIHx8ICc8dW5rbm93bj4nKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB0aGlzLmFjY291bnQ7XG4gICAgfSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlZGlyZWN0IHRvIGxvZ291dCBzY3JlZW4gaWYgdXNlciBpcyBub3QgZm91bmRcbiAgICovXG4gIHB1YmxpYyByZWRpcmVjdFRvTG9nb3V0KG1zZyA/OiBzdHJpbmcpIHtcbiAgICBsZXQgbG9nb3V0VXJsID0gdGhpcy5sb2dvdXRQYXRoO1xuICAgIGlmICh0aGlzLndlYmFwcHNSb290VVJMKSB7XG4gICAgICBsb2dvdXRVcmwgPSB0aGlzLndlYmFwcHNSb290VVJMICsgKHRoaXMubG9nb3V0UGF0aCB8fCAnJyk7XG4gICAgfVxuICAgIGFsZXJ0KG1zZyB8fCAnQ29ubmVjdGlvbiBsb3N0LiBZb3Ugd2lsbCBiZSByZWRpcmVjdGVkIHRvIHRoZSBsb2dpbiBwYWdlLicpO1xuICAgIGNvbnNvbGUubG9nKCdyZWRpcmVjdGluZyB0byBsb2dvdXRVcmw6JyArIGxvZ291dFVybCk7XG4gICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSBsb2dvdXRVcmw7XG4gIH1cblxuICAvKipcbiAgICogUmV0cmlldmUgdGhlIHVzZXIgYWNjb3VudCBmb3IgdGhlIGN1cnJlbnRseSBsb2dnZWQgaW4gdXNlci5cbiAgICogQHBhcmFtIHNlc3Npb25JRCBwZXJzb24gSUQgZm9yIGludGVybmFsIHVzZXJcbiAgICogQHJldHVybnMgT2JzZXJ2YWJsZTxPZXBhVXNlckFjY291bnQ+XG4gICAqL1xuICBwdWJsaWMgcmV0cmlldmVBY2NvdW50Rm9ySW50ZXJuYWxTZXNzaW9uKHBlcnNvbklEOiBzdHJpbmcsIHNlc3Npb25JRDogc3RyaW5nLCBhcHA6IHN0cmluZyk6IE9ic2VydmFibGU8T2VwYVVzZXJBY2NvdW50PiB7XG4gICAgdGhpcy5hY2NvdW50ID0ge307XG4gICAgY29uc3QgdXJsID0gdGhpcy5ob3N0VXJsICsgdGhpcy5hY2NvdW50c1VybCArICcvaW50ZXJuYWwvcGVyc29uSUQvJyArIHBlcnNvbklEICsgJy9zZXNzaW9uSUQvJyArIHNlc3Npb25JRDtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxPZXBhVXNlckFjY291bnQ+KHVybCwgeyBwYXJhbXM6IHsgJ2FwcCc6IGFwcCB9IH0pLnBpcGUobWFwKChhY2NvdW50OiBPZXBhVXNlckFjY291bnQpID0+IHtcbiAgICAgIHRoaXMuYWNjb3VudCA9IGFjY291bnQ7XG4gICAgICB0aGlzLnBlcnNvbklEID0gcGVyc29uSUQ7XG4gICAgICB0aGlzLnNlc3Npb25JRCA9IHNlc3Npb25JRDtcbiAgICAgIHRoaXMuc2Vzc2lvbklEJC5uZXh0KHNlc3Npb25JRCk7XG4gICAgICByZXR1cm4gYWNjb3VudDtcbiAgICB9KSk7XG4gIH1cblxuICAvKipcbiAgICogRGV0ZXJtaW5lIHdoZXRoZXIgYWNjb3VudCBoYXMgdGhlIHJvbGUgcm9sZU5hbWUuXG4gICAqIEBwYXJhbSBhY2NvdW50XG4gICAqIEBwYXJhbSByb2xlTmFtZVxuICAgKi9cbiAgcHVibGljIGFjY291bnRIYXNSb2xlKGFjY291bnQ6IE9lcGFVc2VyQWNjb3VudCwgcm9sZU5hbWU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIGxldCBoYXNSb2xlID0gZmFsc2U7XG4gICAgY29uc3Qgcm9sZUxpc3QgPSB0aGlzLmdldFJvbGVMaXN0KGFjY291bnQpO1xuICAgIGlmIChyb2xlTGlzdCAmJiByb2xlTGlzdC5sZW5ndGgpIHtcbiAgICAgIGhhc1JvbGUgPSAocm9sZUxpc3QuaW5kZXhPZihyb2xlTmFtZSkgPiAtMSk7XG4gICAgfVxuICAgIHJldHVybiBoYXNSb2xlO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRSb2xlTGlzdChhY2NvdW50OiBPZXBhVXNlckFjY291bnQpOiBBcnJheTxzdHJpbmc+IHtcbiAgICBjb25zdCByb2xlTGlzdDogQXJyYXk8c3RyaW5nPiA9IFtdO1xuICAgIGlmIChhY2NvdW50LnJvbGVMaXN0ICYmIGFjY291bnQucm9sZUxpc3QubGVuZ3RoID4gMCkge1xuICAgICAgYWNjb3VudC5yb2xlTGlzdC5mb3JFYWNoKChyb2xlOiBPRVBBUm9sZSkgPT4ge1xuICAgICAgICByb2xlTGlzdC5wdXNoKHJvbGUubmFtZSB8fCAnJyk7XG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHJvbGVMaXN0O1xuICB9XG5cbiAgLyoqXG4gICAqIERldGVybWluZSB3aGV0aGVyIGFjY291bnQgaGFzIHRoZSBwcml2aWxlZ2UgcHJpdmlsZWdlVHlwZS5cbiAgICogQHBhcmFtIGFjY291bnRcbiAgICogQHBhcmFtIHByaXZpbGVnZVR5cGVcbiAgICovXG4gIHB1YmxpYyBhY2NvdW50SGFzUHJpdmlsZWdlKGFjY291bnQ6IE9lcGFVc2VyQWNjb3VudCwgcHJpdmlsZWdlVHlwZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgbGV0IGhhc1ByaXZpbGVnZSA9IGZhbHNlO1xuICAgIGNvbnN0IHByaXZpbGVnZUxpc3QgPSB0aGlzLmdldFByaXZpbGVnZUxpc3QoYWNjb3VudCk7XG4gICAgaWYgKHByaXZpbGVnZUxpc3QgJiYgcHJpdmlsZWdlTGlzdC5sZW5ndGgpIHtcbiAgICAgIGhhc1ByaXZpbGVnZSA9IChwcml2aWxlZ2VMaXN0LmluZGV4T2YocHJpdmlsZWdlVHlwZSkgPiAtMSk7XG4gICAgfVxuICAgIHJldHVybiBoYXNQcml2aWxlZ2U7XG4gIH1cblxuICBwdWJsaWMgZ2V0UHJpdmlsZWdlTGlzdChhY2NvdW50OiBPZXBhVXNlckFjY291bnQpOiBBcnJheTxzdHJpbmc+IHtcbiAgICBjb25zdCBwcml2aWxlZ2VMaXN0OiBBcnJheTxzdHJpbmc+ID0gW107XG4gICAgaWYgKGFjY291bnQucm9sZUxpc3QgJiYgYWNjb3VudC5yb2xlTGlzdC5sZW5ndGggPiAwKSB7XG4gICAgICBhY2NvdW50LnJvbGVMaXN0LmZvckVhY2goKHJvbGU6IE9FUEFSb2xlKSA9PiB7XG4gICAgICAgIGlmIChyb2xlLnByaXZpbGVnZUxpc3QgJiYgcm9sZS5wcml2aWxlZ2VMaXN0Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgICByb2xlLnByaXZpbGVnZUxpc3QuZm9yRWFjaCgocHJpdmlsZWdlOiBPZXBhUHJpdmlsZWdlKSA9PiB7XG4gICAgICAgICAgICBwcml2aWxlZ2VMaXN0LnB1c2gocHJpdmlsZWdlLnR5cGUgfHwgJycpO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHByaXZpbGVnZUxpc3Q7XG4gIH1cblxuICAvKipcbiAgICogUmV0cmlldmUgdGhlIHVzZXJBY2NvdW50IG9mIHRoZSBjdXJyZW50IHVzZXIuIFRoZSByZXRyaWV2ZUFjY291bnRGb3JDdXJyZW50VXNlciBtZXRob2RcbiAgICogbXVzdCBiZSBpbnZva2VkIHByaW9yIHRvIGludm9raW5nIHRoaXMgbWV0aG9kLlxuICAgKi9cbiAgcHVibGljIGdldEN1cnJlbnRVc2VyQWNjb3VudCgpOiBPZXBhVXNlckFjY291bnQge1xuICAgIHJldHVybiB0aGlzLmFjY291bnQ7XG4gIH1cblxuICBwdWJsaWMgc2V0Q3VycmVudFVzZXJBY2NvdW50KGFjY291bnQ6IE9lcGFVc2VyQWNjb3VudCkge1xuICAgIHRoaXMuYWNjb3VudCA9IGFjY291bnQ7XG4gICAgdGhpcy51c2VyQWNjb3VudCQubmV4dCh0aGlzLmFjY291bnQpO1xuICB9XG5cbiAgcHVibGljIGdldEF1dGhUb2tlbigpIDogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5hdXRoVG9rZW47XG4gIH1cblxuICBwdWJsaWMgc2V0QXV0aFRva2VuKHRva2VuOiBzdHJpbmcpIHtcbiAgICB0aGlzLmF1dGhUb2tlbiA9IHRva2VuO1xuICB9XG4gXG4gIC8qKlxuICAgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICogRUJJWiBNRVRIT0RTOlxuICAgKiBUaGUgbWV0aG9kcyBiZWxvdyBjdXJyZW50bHkgYXBwbHkgb25seSB0byBlQml6LlxuICAgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICovXG5cbiAgcHVibGljIGdldFdlYmFwcHNSb290VVJMKGFwcDogc3RyaW5nKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICBpZiAodGhpcy53ZWJhcHBzUm9vdFVSTCkge1xuICAgICAgcmV0dXJuIG9mKHRoaXMud2ViYXBwc1Jvb3RVUkwpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCB1cmwgPSB0aGlzLmhvc3RVcmwgKyAnL2FwaS92MS9nYXRld2F5L2dhdGV3YXlDb25maWcnO1xuICAgICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8YW55Pih1cmwsIHsgcGFyYW1zOiB7ICdhcHAnOiBhcHAgfSB9KS5waXBlKG1hcCgoZ2F0ZXdheUNvbmZpZzphbnkpID0+IHtcbiAgICAgICAgaWYgKGdhdGV3YXlDb25maWcpIHtcbiAgICAgICAgICB0aGlzLndlYmFwcHNSb290VVJMID0gZ2F0ZXdheUNvbmZpZy53ZWJhcHBzUm9vdFVSTDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcy53ZWJhcHBzUm9vdFVSTDtcbiAgICAgIH0pKTtcbiAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGdldEVCaXpWZXJzaW9uKGFwcDogc3RyaW5nKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICAgIGlmICh0aGlzLmViaXpWZXJzaW9uKSB7XG4gICAgICAgIHJldHVybiBvZih0aGlzLmViaXpWZXJzaW9uKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IHVybCA9IHRoaXMuaG9zdFVybCArICcvYXBpL3YxL2dhdGV3YXkvZ2F0ZXdheUNvbmZpZyc7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PGFueT4odXJsLCB7IHBhcmFtczogeyAnYXBwJzogYXBwIH0gfSkucGlwZShtYXAoKGdhdGV3YXlDb25maWc6YW55KSA9PiB7XG4gICAgICAgICAgaWYgKGdhdGV3YXlDb25maWcpIHtcbiAgICAgICAgICAgIHRoaXMuZWJpelZlcnNpb24gPSBnYXRld2F5Q29uZmlnLnZlcnNpb25OdW1iZXI7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiB0aGlzLmViaXpWZXJzaW9uO1xuICAgICAgICB9KSk7XG4gICAgICB9XG4gICAgICB9XG5cbiAgLyoqXG4gICAqIFJldHVybiBhcnJheSBvZiBQcm9ncmFtUHJpdmlsZWdlcyBtYXRjaGluZyBwcm9ncmFtUHJpdmlsZWdlUmVxdWVzdC5cbiAgICogQHBhcmFtIHByb2dyYW1Qcml2aWxlZ2VSZXF1ZXN0XG4gICAqIEByZXR1cm5zIE9ic2VydmFibGU8QXJyYXk8UHJvZ3JhbVByaXZpbGVnZT4+XG4gICAqL1xuICBwdWJsaWMgc2VhcmNoUHJpdmlsZWdlcyhwcm9ncmFtUHJpdmlsZWdlUmVxdWVzdDogUHJvZ3JhbVByaXZpbGVnZVJlcXVlc3QsIGFsdFVzZXJJRD86IHN0cmluZyk6IE9ic2VydmFibGU8QXJyYXk8UHJvZ3JhbVByaXZpbGVnZT4+IHtcbiAgICBjb25zdCB1cmwgPSB0aGlzLmhvc3RVcmwgKyB0aGlzLmViaXpBY2NvdW50c1VybCArICcvcHJvZ3JhbVByaXZpbGVnZXMvc2VhcmNoJyArIChhbHRVc2VySUQgPyAnP3VzZXJpZD0nICsgYWx0VXNlcklEIDogJycpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxBcnJheTxQcm9ncmFtUHJpdmlsZWdlPj4odXJsLCBwcm9ncmFtUHJpdmlsZWdlUmVxdWVzdCwgeyBwYXJhbXM6IHRoaXMucGFyYW1zIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIG5ldyBQcm9ncmFtUHJpdmlsZWdlIGJhc2VkIG9uIGNvbnRlbnRzIG9mIFByb2dyYW1Qcml2aWxlZ2VSZXF1ZXN0LlxuICAgKiBAcGFyYW0gcHJvZ3JhbVByaXZpbGVnZVJlcXVlc3RcbiAgICogQHJldHVybnMgT2JzZXJ2YWJsZTxQcm9ncmFtUHJpdmlsZWdlP1xuICAgKi9cbiAgcHVibGljIGNyZWF0ZVByb2dyYW1Qcml2aWxlZ2UocHJvZ3JhbVByaXZpbGVnZVJlcXVlc3Q6IFByb2dyYW1Qcml2aWxlZ2VSZXF1ZXN0LCBhbHRVc2VySUQ/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPFByb2dyYW1Qcml2aWxlZ2U+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8UHJvZ3JhbVByaXZpbGVnZT4odGhpcy5ob3N0VXJsICsgdGhpcy5lYml6QWNjb3VudHNVcmwgKyAnL3Byb2dyYW1Qcml2aWxlZ2VzJysgKGFsdFVzZXJJRCA/ICc/dXNlcmlkPScgKyBhbHRVc2VySUQgOiAnJyksIFxuICAgIHByb2dyYW1Qcml2aWxlZ2VSZXF1ZXN0LCB7IHBhcmFtczogdGhpcy5wYXJhbXMgfSk7XG4gIH1cblxuICAvKipcbiAgICogRGVsZXRlIHRoZSBQcm9ncmFtUHJpdmlsZWdlIGlkZW50aWZpZWQgYnkgcHJvZ3JhbVByaXZpbGVnZUlELlxuICAgKiBAcGFyYW0gcHJvZ3JhbVByaXZpbGVnZUlEXG4gICAqIEByZXR1cm5zIE9ic2VydmFibGU8dm9pZD5cbiAgICovXG4gIHB1YmxpYyBkZWxldGVQcm9ncmFtUHJpdmlsZWdlKHByb2dyYW1Qcml2aWxlZ2VJRDogc3RyaW5nLCBhbHRVc2VySUQ/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZGVsZXRlKHRoaXMuaG9zdFVybCArIHRoaXMuZWJpekFjY291bnRzVXJsICsgJy9wcm9ncmFtUHJpdmlsZWdlcy8nICsgcHJvZ3JhbVByaXZpbGVnZUlEICsgKGFsdFVzZXJJRCA/ICc/dXNlcmlkPScgKyBhbHRVc2VySUQgOiAnJyksIFxuICAgIHsgcmVzcG9uc2VUeXBlOiAndGV4dCcsIHBhcmFtczogdGhpcy5wYXJhbXMgfSk7XG4gIH1cblxuICAvKipcbiAgICogRGVsZWdhdGUgYSBwcm9ncmFtIHByaXZpbGVnZSBiYXNlZCBvbiBpbmZvcm1hdGlvbiBpbiBkZWxlZ2F0aW9uLlxuICAgKiBAcGFyYW0gZGVsZWdhdGlvblxuICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlPHZvaWQ+XG4gICAqL1xuICBwdWJsaWMgZGVsZWdhdGVQcm9ncmFtUHJpdmlsZWdlKGRlbGVnYXRpb246IERlbGVnYXRpb24sIGFsdFVzZXJJRD86IHN0cmluZyk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHRoaXMuaG9zdFVybCArIHRoaXMuZWJpekFjY291bnRzVXJsICsgJy9wcm9ncmFtUHJpdmlsZWdlcy9kZWxlZ2F0aW9uJyArIChhbHRVc2VySUQgPyAnP3VzZXJpZD0nICsgYWx0VXNlcklEIDogJycpLFxuICAgIGRlbGVnYXRpb24sIHsgcmVzcG9uc2VUeXBlOiAndGV4dCcsIHBhcmFtczogdGhpcy5wYXJhbXMgfSk7XG4gIH1cblxuIC8qKlxuICAgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICogSGVscGVyIE1FVEhPRFM6XG4gICAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgKi9cblxuICAgLyoqXG4gICAgKiBTZXQgdGhlIHVzZXIgYWNjb3VudCB0byBiZSB1c2VkIGZvciBcImxpdmUgcmVsb2FkIG1vZGVcIlxuICAgICogQHBhcmFtIHVzZXJBY2NvdW50IFxuICAgICovXG4gICAgcHVibGljIHNldExpdmVSZWxvYWRVc2VyKHVzZXJBY2NvdW50OiBPZXBhVXNlckFjY291bnQpOiBPYnNlcnZhYmxlPE9lcGFVc2VyQWNjb3VudD4ge1xuICAgICAgdGhpcy5hY2NvdW50ID0gdXNlckFjY291bnQ7XG4gICAgICBjb25zb2xlLmxvZygnc2V0TGl2ZVJlbG9hZFVzZXI6ICcgKyB0aGlzLmFjY291bnQ/LmxvZ2luTmFtZSB8fCAnPHVua25vd24+Jyk7XG4gICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8T2VwYVVzZXJBY2NvdW50Pih0aGlzLmhvc3RVcmwgKyB0aGlzLmViaXpBY2NvdW50c1VybCArICcvbGl2ZVJlbG9hZCcsIHVzZXJBY2NvdW50LCB7IHBhcmFtczogdGhpcy5wYXJhbXMgfSk7XG4gICAgfVxuXG4gICAvKipcbiAgICAqIFN0b3JlcyB0aGUgZ2l2ZW4gdXNlciBpbiB0aGUgZUJpeiBzZXNzaW9uLlxuICAgICogQHBhcmFtIGFjY291bnRVc2VySUQgXG4gICAgKi9cbiAgIHB1YmxpYyBzdG9yZVVzZXJJblNlc3Npb24oYWNjb3VudFVzZXJJRDogc3RyaW5nKTogT2JzZXJ2YWJsZTxPZXBhVXNlckFjY291bnQ+IHtcbiAgICAgbGV0IGFjY3QgPSB7fSBhcyBPZXBhVXNlckFjY291bnQ7XG4gICAgIGFjY3QuYWNjb3VudElEID0gYWNjb3VudFVzZXJJRDtcbiAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PE9lcGFVc2VyQWNjb3VudD4odGhpcy5ob3N0VXJsICsgdGhpcy5lYml6U2Vzc2lvblVybCArICcvc3RvcmVVc2VyLycgKyBhY2NvdW50VXNlcklELCBudWxsICwgeyBwYXJhbXM6IHRoaXMucGFyYW1zIH0pO1xuICAgfVxuXG4gICAgLyoqXG4gICAgICogU2VlIGlmIHRoZSBjdXJyZW50IHVzZXIgc2hvdWxkIGJlIGFsbG93ZWQgdG8gc2VlIFwiZGVtb1wiIGNhcGFiaWxpdGllc1xuICAgICAqL1xuICAgIHB1YmxpYyBkZW1vQ2FwYWJpbGl0aWVzQWxsb3dlZCgpOiBib29sZWFuIHtcbiAgICAgIGxldCBkZW1vQWxsb3dlZCA9IGZhbHNlO1xuICAgICAgaWYgKHRoaXMuYWNjb3VudCAmJiB0aGlzLmFjY291bnQucm9sZUxpc3QpIHtcbiAgICAgICAgdGhpcy5hY2NvdW50LnJvbGVMaXN0LmZvckVhY2gocm9sZSA9PiB7XG4gICAgICAgICAgaWYgKHJvbGUubmFtZSA9PT0gJ0FsbG93RGVtbycpIHtcbiAgICAgICAgICAgIGRlbW9BbGxvd2VkID0gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGRlbW9BbGxvd2VkO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGFydElkbGVUaW1lcih0aHJlc2hvbGQ/OiBudW1iZXIpIHtcbiAgICAgIGlmICh0aGlzLnRpbWVvdXRJRCkge1xuICAgICAgICBjbGVhclRpbWVvdXQodGhpcy50aW1lb3V0SUQpO1xuICAgICAgfVxuICAgICAgdGhpcy5pZGxlVGhyZXNob2xkID0gdGhyZXNob2xkIHx8IHRoaXMuaWRsZVRocmVzaG9sZDtcbiAgICAgIGlmICghdGhpcy5pZGxlVGltZXJSdW5uaW5nKSB7XG4gICAgICAgIGNvbnNvbGUubG9nKCdUaGUgaWRsZSB0aW1lb3V0IHN0YXJ0ZWQgd2l0aCB0aHJlc2hvbGQ6ICcgKyB0aGlzLmlkbGVUaHJlc2hvbGQpO1xuICAgICAgICB0aGlzLmlkbGVUaW1lclJ1bm5pbmcgPSB0cnVlO1xuICAgICAgICB0aGlzLmNoZWNrVGltZW91dCgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyByZXNldElkbGVUaW1lKCkge1xuICAgICAgY29uc29sZS5sb2coJ2lkbGUgdGltZXIgcmVzZXQnKTtcbiAgICAgIHRoaXMuaWRsZVRpbWUgPSAwO1xuICAgIH1cblxuICAgIHByaXZhdGUgY2hlY2tUaW1lb3V0KCkge1xuICAgICAgdGhpcy50aW1lb3V0SUQgPSBzZXRUaW1lb3V0KCgpPT4ge1xuICAgICAgICB0aGlzLmlkbGVUaW1lICs9IDYwO1xuICAgICAgICBjb25zb2xlLmxvZygnaWRsZSB0aW1lID0gJyArIHRoaXMuaWRsZVRpbWUgKyBcIiwgdGhyZXNob2xkID0gXCIgKyB0aGlzLmlkbGVUaHJlc2hvbGQpO1xuICAgICAgICBpZiAodGhpcy5pZGxlVGltZSA+PSB0aGlzLmlkbGVUaHJlc2hvbGQpIHtcbiAgICAgICAgICBjb25zb2xlLmxvZygnZmlyaW5nIG5leHQgaWRsZVN1YmplY3QuLi4nKTtcbiAgICAgICAgICB0aGlzLmlkbGVUaW1lclJ1bm5pbmcgPSBmYWxzZTtcbiAgICAgICAgICB0aGlzLmlkbGVTdWJqZWN0Lm5leHQodGhpcy5pZGxlVGltZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgaWYgKHRoaXMudGltZW91dElEKSB7XG4gICAgICAgICAgICBjbGVhclRpbWVvdXQodGhpcy50aW1lb3V0SUQpO1xuICAgICAgICAgIH1cbiAgICAgICAgICB0aGlzLmNoZWNrVGltZW91dCgpO1xuICAgICAgICB9XG4gICAgICB9LCA2MDAwMCk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldElkbGVUaW1lb3V0KCk6IE9ic2VydmFibGU8bnVtYmVyPiB7XG4gICAgICByZXR1cm4gdGhpcy5pZGxlU3ViamVjdC5hc09ic2VydmFibGUoKTtcbiAgICB9XG4gICAgXG4gICAgLyoqXG4gICAgICogQGRlcHJlY2F0ZWQgV2UgcHJvYmFibHkgZG9uJ3Qgd2FudCB0byBzdXBwb3J0IHRoaXMgZ29pbmcgZm9yd2FyZFxuICAgICAqIEBwYXJhbSBtZXNzYWdlXG4gICAgICogQHJldHVybnMgXG4gICAgICovXG4gICAgcHVibGljIGxvZ01lc3NhZ2VPblNlcnZlcihtZXNzYWdlPzogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICAgIGNvbnN0IG1lc3NhZ2VSZXNwb25zZTogYW55ID0ge1xuICAgICAgICByZXNwb25zZTogbWVzc2FnZVxuICAgICAgfVxuICAgICAgY29uc3QgdXJsID0gdGhpcy5ob3N0VXJsICsgJy9hcGkvdjEvdXNlckFjY291bnRzL2xvZ3MvbWVzc2FnZSc7XG4gICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8YW55Pih1cmwsIG1lc3NhZ2VSZXNwb25zZSwgeyBwYXJhbXM6IHRoaXMucGFyYW1zIH0pO1xuICAgIH1cbn1cbiJdfQ==
|
|
349
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2VwYS11c2VyLWFjY291bnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29lcGEtdWktbGliL3NyYy9saWIvb2VwYS11c2VyLWFjY291bnQvb2VwYS11c2VyLWFjY291bnQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7QUFNMUI7O0dBRUc7QUFJSCxNQUFNLE9BQU8sc0JBQXNCO0lBcUJiO0lBQ2E7SUFDUjtJQXRCakIsT0FBTyxHQUFHLE9BQU8sQ0FBQztJQUNsQixXQUFXLEdBQUcsdUJBQXVCLENBQUM7SUFDdEMsZUFBZSxHQUFHLGtCQUFrQixDQUFDO0lBQ3JDLGNBQWMsR0FBRyxpQkFBaUIsQ0FBQztJQUNuQyxPQUFPLENBQW1CO0lBQzFCLFFBQVEsR0FBVyxFQUFFLENBQUM7SUFDdEIsU0FBUyxHQUFXLEVBQUUsQ0FBQztJQUN2QixjQUFjLEdBQVcsRUFBRSxDQUFDO0lBQzVCLFdBQVcsR0FBVyxFQUFFLENBQUM7SUFDekIsVUFBVSxHQUFXLEVBQUUsQ0FBQztJQUN4QixnQkFBZ0IsR0FBRyxLQUFLLENBQUM7SUFDekIsUUFBUSxHQUFVLENBQUMsQ0FBQztJQUNwQixhQUFhLEdBQUcsQ0FBQyxFQUFFLEdBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyx5Q0FBeUM7SUFDbEUsV0FBVyxHQUFHLElBQUksT0FBTyxFQUFVLENBQUM7SUFDcEMsU0FBUyxDQUFNO0lBQ2hCLFlBQVksR0FBNkIsSUFBSSxPQUFPLEVBQW1CLENBQUM7SUFDeEUsVUFBVSxHQUFvQixJ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LENBQUMsQ0FBQztJQUM1RSxDQUFDO3dHQXpWUSxzQkFBc0IsNENBc0J2QixhQUFhLGFBQ2IsS0FBSzs0R0F2Qkosc0JBQXNCLGNBRnJCLE1BQU07OzRGQUVQLHNCQUFzQjtrQkFIbEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQXVCSSxNQUFNOzJCQUFDLGFBQWE7OzBCQUNwQixNQUFNOzJCQUFDLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuXG5pbXBvcnQgeyBPZXBhVXNlckFjY291bnQsIFByb2dyYW1Qcml2aWxlZ2UsIFByb2dyYW1Qcml2aWxlZ2VSZXF1ZXN0LCBEZWxlZ2F0aW9uLCBPRVBBUm9sZSwgT2VwYVByaXZpbGVnZSB9IGZyb20gJ0BvaGlvZXBhL29lcGEtY29tbW9uLWxpYic7XG5pbXBvcnQgeyBTdHJpbmdSZXNwb25zZSB9IGZyb20gJ0BvaGlvZXBhL29lcGEtZWJpei1saWInO1xuXG4vKipcbiAqIE9lcGFVc2VyQWNjb3VudFNlcnZpY2UgLSBBIGNvbGxlY3Rpb24gb2YgbWV0aG9kcyBmb3IgYWNjZXNzaW5nIGFuZCBtYW5pcHVsYXRpbmcgdXNlciBhY2NvdW50cy5cbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgT2VwYVVzZXJBY2NvdW50U2VydmljZSB7XG4gIHByaXZhdGUgaG9zdFVybCA9ICcvZWJpeic7XG4gIHByaXZhdGUgYWNjb3VudHNVcmwgPSAnL2FwaS92MS91c2VyLWFjY291bnRzJztcbiAgcHJpdmF0ZSBlYml6QWNjb3VudHNVcmwgPSAnL2FwaS92Mi9hY2NvdW50cyc7XG4gIHByaXZhdGUgZWJpelNlc3Npb25VcmwgPSAnL2FwaS92Mi9zZXNzaW9uJztcbiAgcHJpdmF0ZSBhY2NvdW50ITogT2VwYVVzZXJBY2NvdW50O1xuICBwcml2YXRlIHBlcnNvbklEOiBzdHJpbmcgPSAnJztcbiAgcHJpdmF0ZSBzZXNzaW9uSUQ6IHN0cmluZyA9ICcnO1xuICBwcml2YXRlIHdlYmFwcHNSb290VVJMOiBzdHJpbmcgPSAnJztcbiAgcHJpdmF0ZSBlYml6VmVyc2lvbjogc3RyaW5nID0gJyc7XG4gIHByaXZhdGUgbG9nb3V0UGF0aDogc3RyaW5nID0gJyc7XG4gIHByaXZhdGUgaWRsZVRpbWVyUnVubmluZyA9IGZhbHNlO1xuICBwcml2YXRlIGlkbGVUaW1lOm51bWJlciA9IDA7XG4gIHByaXZhdGUgaWRsZVRocmVzaG9sZCA9ICgyOSo2MCk7IC8vIDI5IG1pbnV0ZSB0aW1lb3V0IHRocmVzaG9sZCBieSBkZWZhdWx0XG4gIHByaXZhdGUgaWRsZVN1YmplY3QgPSBuZXcgU3ViamVjdDxudW1iZXI+KCk7XG4gIHByaXZhdGUgdGltZW91dElEOiBhbnk7XG4gIHB1YmxpYyB1c2VyQWNjb3VudCQ6IFN1YmplY3Q8T2VwYVVzZXJBY2NvdW50PiA9IG5ldyBTdWJqZWN0PE9lcGFVc2VyQWNjb3VudD4oKTtcbiAgcHVibGljIHNlc3Npb25JRCQ6IFN1YmplY3Q8c3RyaW5nPiA9IG5ldyBTdWJqZWN0PHN0cmluZz4oKTsgLy8gc2Vzc2lvbiBJRCBpcyB1c2VkIGZvciBcImJhY2tkb29yXCIgcHJvY2Vzc2luZyBvZiBpbnRlcm5hbCAod2ViYXBwcykgYWNjb3VudHNcbiAgcHJpdmF0ZSBhdXRoVG9rZW46IHN0cmluZyA9ICcnO1xuICBwcml2YXRlIHBhcmFtczogYW55ID0ge307XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LCBcbiAgICBASW5qZWN0KCdlYml6Um9vdFVSTCcpIHByaXZhdGUgZWJpelJvb3RVUkw6IHN0cmluZyxcbiAgICBASW5qZWN0KCdhcHAnKSBwcml2YXRlIGFwcDogc3RyaW5nKSB7XG4gICAgdGhpcy5ob3N0VXJsID0gdGhpcy5lYml6Um9vdFVSTCArIHRoaXMuaG9zdFVybDtcbiAgICB0aGlzLmxvZ291dFBhdGggPSB0aGlzLmViaXpSb290VVJMICsgJy9qc3AvbG9nb3V0LmpzcCc7XG4gICAgdGhpcy5wYXJhbXMgPSB7ICdhcHAnOiB0aGlzLmFwcCB9O1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHJpZXZlIHRoZSBVc2VyIEFjY291bnQgZm9yIHRoZSB1c2VyIHVzZXJpZC5cbiAgICogQHBhcmFtIHVzZXJpZFxuICAgKi9cbiAgcHVibGljIHJldHJpZXZlQWNjb3VudEZvclVzZXIodXNlcmlkOiBzdHJpbmcsIGFwcDogc3RyaW5nKTogT2JzZXJ2YWJsZTxPZXBhVXNlckFjY291bnQ+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxPZXBhVXNlckFjY291bnQ+KHRoaXMuaG9zdFVybCArIHRoaXMuYWNjb3VudHNVcmwgKyAnLycgKyB1c2VyaWQsIHsgcGFyYW1zOiB7ICdhcHAnOiBhcHAgfSB9KTtcbiAgfVxuXG4gIHB1YmxpYyByZXRyaWV2ZUFjY291bnRCeU9ISUQob2hpZDogc3RyaW5nLCBhcHA6IHN0cmluZyk6IE9ic2VydmFibGU8T2VwYVVzZXJBY2NvdW50PiB7XG4gICAgY29uc3QgdXJsID0gdGhpcy5ob3N0VXJsICsgdGhpcy5hY2NvdW50c1VybCArICcvb2hpZC8nICsgb2hpZCA7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8T2VwYVVzZXJBY2NvdW50Pih1cmwsIHsgcGFyYW1zOiB7ICdhcHAnOiBhcHAgfSB9KS5waXBlKFxuICAgICAgbWFwKCh1c2VyQWNjb3VudDogT2VwYVVzZXJBY2NvdW50KSA9PiB7XG4gICAgICAgIHRoaXMudXNlckFjY291bnQkLm5leHQodXNlckFjY291bnQpO1xuICAgICAgICByZXR1cm4gdXNlckFjY291bnQ7XG4gICAgICB9KSk7XG4gIH1cblxuICAvKipcbiAgICogUmV0cmlldmUgdGhlIHVzZXIgYWNjb3VudCBmb3IgdGhlIGN1cnJlbnRseSBsb2dnZWQgaW4gdXNlci5cbiAgICogQHJldHVybnMgT2JzZXJ2YWJsZTxPZXBhVXNlckFjY291bnQ+XG4gICAqL1xuICBwdWJsaWMgcmV0cmlldmVBY2NvdW50Rm9yQ3VycmVudFVzZXIoYXBwOiBzdHJpbmcpOiBPYnNlcnZhYmxlPE9lcGFVc2VyQWNjb3VudD4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PE9lcGFVc2VyQWNjb3VudD4odGhpcy5ob3N0VXJsICsgJy9hcGkvdjEvdXNlckFjY291bnRzL2xvZ2luJykucGlwZShtYXAoKGFjY291bnQ6IE9lcGFVc2VyQWNjb3VudCkgPT4ge1xuICAgICAgaWYgKCFhY2NvdW50KSB7XG4gICAgICAgIGlmICh0aGlzLnBlcnNvbklEICYmIHRoaXMuc2Vzc2lvbklEKSB7XG4gICAgICAgICAgdGhpcy5yZXRyaWV2ZUFjY291bnRGb3JJbnRlcm5hbFNlc3Npb24odGhpcy5wZXJzb25JRCwgdGhpcy5zZXNzaW9uSUQsIGFwcCkuc3Vic2NyaWJlKHtcbiAgICAgICAgICAgIG5leHQ6IGludGVybmFsQWNjb3VudCA9PiB7XG4gICAgICAgICAgICBpZiAoaW50ZXJuYWxBY2NvdW50KSB7XG4gICAgICAgICAgICAgIHRoaXMuYWNjb3VudCA9IGludGVybmFsQWNjb3VudFxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgdGhpcy5yZWRpcmVjdFRvTG9nb3V0KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSwgZXJyb3I6IGVyciA9PiB7XG4gICAgICAgICAgICB0aGlzLnJlZGlyZWN0VG9Mb2dvdXQoKTtcbiAgICAgICAgICB9fSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5yZWRpcmVjdFRvTG9nb3V0KCk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuYWNjb3VudCA9IGFjY291bnQ7XG4gICAgICAgIGNvbnNvbGUubG9nKCdyZXRyaWV2ZUFjY291bnRGb3JDdXJyZW50VXNlcjogJyArIHRoaXMuYWNjb3VudD8ubG9naW5OYW1lIHx8ICc8dW5rbm93bj4nKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB0aGlzLmFjY291bnQ7XG4gICAgfSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlZGlyZWN0IHRvIGxvZ291dCBzY3JlZW4gaWYgdXNlciBpcyBub3QgZm91bmRcbiAgICovXG4gIHB1YmxpYyByZWRpcmVjdFRvTG9nb3V0KG1zZyA/OiBzdHJpbmcpIHtcbiAgICBsZXQgbG9nb3V0VXJsID0gdGhpcy5sb2dvdXRQYXRoO1xuICAgIGlmICh0aGlzLndlYmFwcHNSb290VVJMKSB7XG4gICAgICBsb2dvdXRVcmwgPSB0aGlzLndlYmFwcHNSb290VVJMICsgKHRoaXMubG9nb3V0UGF0aCB8fCAnJyk7XG4gICAgfVxuICAgIGFsZXJ0KG1zZyB8fCAnQ29ubmVjdGlvbiBsb3N0LiBZb3Ugd2lsbCBiZSByZWRpcmVjdGVkIHRvIHRoZSBsb2dpbiBwYWdlLicpO1xuICAgIGNvbnNvbGUubG9nKCdyZWRpcmVjdGluZyB0byBsb2dvdXRVcmw6JyArIGxvZ291dFVybCk7XG4gICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSBsb2dvdXRVcmw7XG4gIH1cblxuICAvKipcbiAgICogUmV0cmlldmUgdGhlIHVzZXIgYWNjb3VudCBmb3IgdGhlIGN1cnJlbnRseSBsb2dnZWQgaW4gdXNlci5cbiAgICogQHBhcmFtIHNlc3Npb25JRCBwZXJzb24gSUQgZm9yIGludGVybmFsIHVzZXJcbiAgICogQHJldHVybnMgT2JzZXJ2YWJsZTxPZXBhVXNlckFjY291bnQ+XG4gICAqL1xuICBwdWJsaWMgcmV0cmlldmVBY2NvdW50Rm9ySW50ZXJuYWxTZXNzaW9uKHBlcnNvbklEOiBzdHJpbmcsIHNlc3Npb25JRDogc3RyaW5nLCBhcHA6IHN0cmluZyk6IE9ic2VydmFibGU8T2VwYVVzZXJBY2NvdW50PiB7XG4gICAgdGhpcy5hY2NvdW50ID0ge307XG4gICAgY29uc3QgdXJsID0gdGhpcy5ob3N0VXJsICsgdGhpcy5hY2NvdW50c1VybCArICcvaW50ZXJuYWwvcGVyc29uSUQvJyArIHBlcnNvbklEICsgJy9zZXNzaW9uSUQvJyArIHNlc3Npb25JRDtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxPZXBhVXNlckFjY291bnQ+KHVybCwgeyBwYXJhbXM6IHsgJ2FwcCc6IGFwcCB9IH0pLnBpcGUobWFwKChhY2NvdW50OiBPZXBhVXNlckFjY291bnQpID0+IHtcbiAgICAgIHRoaXMuYWNjb3VudCA9IGFjY291bnQ7XG4gICAgICB0aGlzLnBlcnNvbklEID0gcGVyc29uSUQ7XG4gICAgICB0aGlzLnNlc3Npb25JRCA9IHNlc3Npb25JRDtcbiAgICAgIHRoaXMuc2Vzc2lvbklEJC5uZXh0KHNlc3Npb25JRCk7XG4gICAgICByZXR1cm4gYWNjb3VudDtcbiAgICB9KSk7XG4gIH1cblxuICAvKipcbiAgICogRGV0ZXJtaW5lIHdoZXRoZXIgYWNjb3VudCBoYXMgdGhlIHJvbGUgcm9sZU5hbWUuXG4gICAqIEBwYXJhbSBhY2NvdW50XG4gICAqIEBwYXJhbSByb2xlTmFtZVxuICAgKi9cbiAgcHVibGljIGFjY291bnRIYXNSb2xlKGFjY291bnQ6IE9lcGFVc2VyQWNjb3VudCwgcm9sZU5hbWU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIGxldCBoYXNSb2xlID0gZmFsc2U7XG4gICAgY29uc3Qgcm9sZUxpc3QgPSB0aGlzLmdldFJvbGVMaXN0KGFjY291bnQpO1xuICAgIGlmIChyb2xlTGlzdCAmJiByb2xlTGlzdC5sZW5ndGgpIHtcbiAgICAgIGhhc1JvbGUgPSAocm9sZUxpc3QuaW5kZXhPZihyb2xlTmFtZSkgPiAtMSk7XG4gICAgfVxuICAgIHJldHVybiBoYXNSb2xlO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRSb2xlTGlzdChhY2NvdW50OiBPZXBhVXNlckFjY291bnQpOiBBcnJheTxzdHJpbmc+IHtcbiAgICBjb25zdCByb2xlTGlzdDogQXJyYXk8c3RyaW5nPiA9IFtdO1xuICAgIGlmIChhY2NvdW50LnJvbGVMaXN0ICYmIGFjY291bnQucm9sZUxpc3QubGVuZ3RoID4gMCkge1xuICAgICAgYWNjb3VudC5yb2xlTGlzdC5mb3JFYWNoKChyb2xlOiBPRVBBUm9sZSkgPT4ge1xuICAgICAgICByb2xlTGlzdC5wdXNoKHJvbGUubmFtZSB8fCAnJyk7XG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHJvbGVMaXN0O1xuICB9XG5cbiAgLyoqXG4gICAqIERldGVybWluZSB3aGV0aGVyIGFjY291bnQgaGFzIHRoZSBwcml2aWxlZ2UgcHJpdmlsZWdlVHlwZS5cbiAgICogQHBhcmFtIGFjY291bnRcbiAgICogQHBhcmFtIHByaXZpbGVnZVR5cGVcbiAgICovXG4gIHB1YmxpYyBhY2NvdW50SGFzUHJpdmlsZWdlKGFjY291bnQ6IE9lcGFVc2VyQWNjb3VudCwgcHJpdmlsZWdlVHlwZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgbGV0IGhhc1ByaXZpbGVnZSA9IGZhbHNlO1xuICAgIGNvbnN0IHByaXZpbGVnZUxpc3QgPSB0aGlzLmdldFByaXZpbGVnZUxpc3QoYWNjb3VudCk7XG4gICAgaWYgKHByaXZpbGVnZUxpc3QgJiYgcHJpdmlsZWdlTGlzdC5sZW5ndGgpIHtcbiAgICAgIGhhc1ByaXZpbGVnZSA9IChwcml2aWxlZ2VMaXN0LmluZGV4T2YocHJpdmlsZWdlVHlwZSkgPiAtMSk7XG4gICAgfVxuICAgIHJldHVybiBoYXNQcml2aWxlZ2U7XG4gIH1cblxuICBwdWJsaWMgZ2V0UHJpdmlsZWdlTGlzdChhY2NvdW50OiBPZXBhVXNlckFjY291bnQpOiBBcnJheTxzdHJpbmc+IHtcbiAgICBjb25zdCBwcml2aWxlZ2VMaXN0OiBBcnJheTxzdHJpbmc+ID0gW107XG4gICAgaWYgKGFjY291bnQucm9sZUxpc3QgJiYgYWNjb3VudC5yb2xlTGlzdC5sZW5ndGggPiAwKSB7XG4gICAgICBhY2NvdW50LnJvbGVMaXN0LmZvckVhY2goKHJvbGU6IE9FUEFSb2xlKSA9PiB7XG4gICAgICAgIGlmIChyb2xlLnByaXZpbGVnZUxpc3QgJiYgcm9sZS5wcml2aWxlZ2VMaXN0Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgICByb2xlLnByaXZpbGVnZUxpc3QuZm9yRWFjaCgocHJpdmlsZWdlOiBPZXBhUHJpdmlsZWdlKSA9PiB7XG4gICAgICAgICAgICBwcml2aWxlZ2VMaXN0LnB1c2gocHJpdmlsZWdlLnR5cGUgfHwgJycpO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHByaXZpbGVnZUxpc3Q7XG4gIH1cblxuICAvKipcbiAgICogUmV0cmlldmUgdGhlIHVzZXJBY2NvdW50IG9mIHRoZSBjdXJyZW50IHVzZXIuIFRoZSByZXRyaWV2ZUFjY291bnRGb3JDdXJyZW50VXNlciBtZXRob2RcbiAgICogbXVzdCBiZSBpbnZva2VkIHByaW9yIHRvIGludm9raW5nIHRoaXMgbWV0aG9kLlxuICAgKi9cbiAgcHVibGljIGdldEN1cnJlbnRVc2VyQWNjb3VudCgpOiBPZXBhVXNlckFjY291bnQge1xuICAgIHJldHVybiB0aGlzLmFjY291bnQ7XG4gIH1cblxuICBwdWJsaWMgc2V0Q3VycmVudFVzZXJBY2NvdW50KGFjY291bnQ6IE9lcGFVc2VyQWNjb3VudCkge1xuICAgIHRoaXMuYWNjb3VudCA9IGFjY291bnQ7XG4gICAgdGhpcy51c2VyQWNjb3VudCQubmV4dCh0aGlzLmFjY291bnQpO1xuICB9XG5cbiAgcHVibGljIGdldEF1dGhUb2tlbigpIDogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5hdXRoVG9rZW47XG4gIH1cblxuICBwdWJsaWMgc2V0QXV0aFRva2VuKHRva2VuOiBzdHJpbmcpIHtcbiAgICB0aGlzLmF1dGhUb2tlbiA9IHRva2VuO1xuICB9XG4gXG4gIC8qKlxuICAgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICogRUJJWiBNRVRIT0RTOlxuICAgKiBUaGUgbWV0aG9kcyBiZWxvdyBjdXJyZW50bHkgYXBwbHkgb25seSB0byBlQml6LlxuICAgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICovXG5cbiAgcHVibGljIGdldFdlYmFwcHNSb290VVJMKGFwcDogc3RyaW5nKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICBpZiAodGhpcy53ZWJhcHBzUm9vdFVSTCkge1xuICAgICAgcmV0dXJuIG9mKHRoaXMud2ViYXBwc1Jvb3RVUkwpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCB1cmwgPSB0aGlzLmhvc3RVcmwgKyAnL2FwaS92MS9nYXRld2F5L2dhdGV3YXlDb25maWcnO1xuICAgICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8YW55Pih1cmwsIHsgcGFyYW1zOiB7ICdhcHAnOiBhcHAgfSB9KS5waXBlKG1hcCgoZ2F0ZXdheUNvbmZpZzphbnkpID0+IHtcbiAgICAgICAgaWYgKGdhdGV3YXlDb25maWcpIHtcbiAgICAgICAgICB0aGlzLndlYmFwcHNSb290VVJMID0gZ2F0ZXdheUNvbmZpZy53ZWJhcHBzUm9vdFVSTDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcy53ZWJhcHBzUm9vdFVSTDtcbiAgICAgIH0pKTtcbiAgICB9XG4gICAgfVxuXG4gIHB1YmxpYyBnZXRFQml6VmVyc2lvbihhcHA6IHN0cmluZyk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgaWYgKHRoaXMuZWJpelZlcnNpb24pIHtcbiAgICAgIHJldHVybiBvZih0aGlzLmViaXpWZXJzaW9uKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgdXJsID0gdGhpcy5ob3N0VXJsICsgJy9hcGkvdjEvZ2F0ZXdheS92ZXJzaW9uJztcbiAgICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PFN0cmluZ1Jlc3BvbnNlPih1cmwsIHsgcGFyYW1zOiB7ICdhcHAnOiBhcHAgfSB9KS5waXBlKG1hcCgodmVyc2lvbjogU3RyaW5nUmVzcG9uc2UpID0+IHtcbiAgICAgICAgaWYgKHZlcnNpb24gJiYgdmVyc2lvbi5yZXNwb25zZSkge1xuICAgICAgICAgIHRoaXMuZWJpelZlcnNpb24gPSB2ZXJzaW9uLnJlc3BvbnNlO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMuZWJpelZlcnNpb24gPSAndW5rbm93bic7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMuZWJpelZlcnNpb247XG4gICAgICB9KSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybiBhcnJheSBvZiBQcm9ncmFtUHJpdmlsZWdlcyBtYXRjaGluZyBwcm9ncmFtUHJpdmlsZWdlUmVxdWVzdC5cbiAgICogQHBhcmFtIHByb2dyYW1Qcml2aWxlZ2VSZXF1ZXN0XG4gICAqIEByZXR1cm5zIE9ic2VydmFibGU8QXJyYXk8UHJvZ3JhbVByaXZpbGVnZT4+XG4gICAqL1xuICBwdWJsaWMgc2VhcmNoUHJpdmlsZWdlcyhwcm9ncmFtUHJpdmlsZWdlUmVxdWVzdDogUHJvZ3JhbVByaXZpbGVnZVJlcXVlc3QsIGFsdFVzZXJJRD86IHN0cmluZyk6IE9ic2VydmFibGU8QXJyYXk8UHJvZ3JhbVByaXZpbGVnZT4+IHtcbiAgICBjb25zdCB1cmwgPSB0aGlzLmhvc3RVcmwgKyB0aGlzLmViaXpBY2NvdW50c1VybCArICcvcHJvZ3JhbVByaXZpbGVnZXMvc2VhcmNoJyArIChhbHRVc2VySUQgPyAnP3VzZXJpZD0nICsgYWx0VXNlcklEIDogJycpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxBcnJheTxQcm9ncmFtUHJpdmlsZWdlPj4odXJsLCBwcm9ncmFtUHJpdmlsZWdlUmVxdWVzdCwgeyBwYXJhbXM6IHRoaXMucGFyYW1zIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIG5ldyBQcm9ncmFtUHJpdmlsZWdlIGJhc2VkIG9uIGNvbnRlbnRzIG9mIFByb2dyYW1Qcml2aWxlZ2VSZXF1ZXN0LlxuICAgKiBAcGFyYW0gcHJvZ3JhbVByaXZpbGVnZVJlcXVlc3RcbiAgICogQHJldHVybnMgT2JzZXJ2YWJsZTxQcm9ncmFtUHJpdmlsZWdlP1xuICAgKi9cbiAgcHVibGljIGNyZWF0ZVByb2dyYW1Qcml2aWxlZ2UocHJvZ3JhbVByaXZpbGVnZVJlcXVlc3Q6IFByb2dyYW1Qcml2aWxlZ2VSZXF1ZXN0LCBhbHRVc2VySUQ/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPFByb2dyYW1Qcml2aWxlZ2U+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8UHJvZ3JhbVByaXZpbGVnZT4odGhpcy5ob3N0VXJsICsgdGhpcy5lYml6QWNjb3VudHNVcmwgKyAnL3Byb2dyYW1Qcml2aWxlZ2VzJysgKGFsdFVzZXJJRCA/ICc/dXNlcmlkPScgKyBhbHRVc2VySUQgOiAnJyksIFxuICAgIHByb2dyYW1Qcml2aWxlZ2VSZXF1ZXN0LCB7IHBhcmFtczogdGhpcy5wYXJhbXMgfSk7XG4gIH1cblxuICAvKipcbiAgICogRGVsZXRlIHRoZSBQcm9ncmFtUHJpdmlsZWdlIGlkZW50aWZpZWQgYnkgcHJvZ3JhbVByaXZpbGVnZUlELlxuICAgKiBAcGFyYW0gcHJvZ3JhbVByaXZpbGVnZUlEXG4gICAqIEByZXR1cm5zIE9ic2VydmFibGU8dm9pZD5cbiAgICovXG4gIHB1YmxpYyBkZWxldGVQcm9ncmFtUHJpdmlsZWdlKHByb2dyYW1Qcml2aWxlZ2VJRDogc3RyaW5nLCBhbHRVc2VySUQ/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZGVsZXRlKHRoaXMuaG9zdFVybCArIHRoaXMuZWJpekFjY291bnRzVXJsICsgJy9wcm9ncmFtUHJpdmlsZWdlcy8nICsgcHJvZ3JhbVByaXZpbGVnZUlEICsgKGFsdFVzZXJJRCA/ICc/dXNlcmlkPScgKyBhbHRVc2VySUQgOiAnJyksIFxuICAgIHsgcmVzcG9uc2VUeXBlOiAndGV4dCcsIHBhcmFtczogdGhpcy5wYXJhbXMgfSk7XG4gIH1cblxuICAvKipcbiAgICogRGVsZWdhdGUgYSBwcm9ncmFtIHByaXZpbGVnZSBiYXNlZCBvbiBpbmZvcm1hdGlvbiBpbiBkZWxlZ2F0aW9uLlxuICAgKiBAcGFyYW0gZGVsZWdhdGlvblxuICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlPHZvaWQ+XG4gICAqL1xuICBwdWJsaWMgZGVsZWdhdGVQcm9ncmFtUHJpdmlsZWdlKGRlbGVnYXRpb246IERlbGVnYXRpb24sIGFsdFVzZXJJRD86IHN0cmluZyk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHRoaXMuaG9zdFVybCArIHRoaXMuZWJpekFjY291bnRzVXJsICsgJy9wcm9ncmFtUHJpdmlsZWdlcy9kZWxlZ2F0aW9uJyArIChhbHRVc2VySUQgPyAnP3VzZXJpZD0nICsgYWx0VXNlcklEIDogJycpLFxuICAgIGRlbGVnYXRpb24sIHsgcmVzcG9uc2VUeXBlOiAndGV4dCcsIHBhcmFtczogdGhpcy5wYXJhbXMgfSk7XG4gIH1cblxuIC8qKlxuICAgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICogSGVscGVyIE1FVEhPRFM6XG4gICAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgKi9cblxuICAgLyoqXG4gICAgKiBTZXQgdGhlIHVzZXIgYWNjb3VudCB0byBiZSB1c2VkIGZvciBcImxpdmUgcmVsb2FkIG1vZGVcIlxuICAgICogQHBhcmFtIHVzZXJBY2NvdW50IFxuICAgICovXG4gICAgcHVibGljIHNldExpdmVSZWxvYWRVc2VyKHVzZXJBY2NvdW50OiBPZXBhVXNlckFjY291bnQpOiBPYnNlcnZhYmxlPE9lcGFVc2VyQWNjb3VudD4ge1xuICAgICAgdGhpcy5hY2NvdW50ID0gdXNlckFjY291bnQ7XG4gICAgICBjb25zb2xlLmxvZygnc2V0TGl2ZVJlbG9hZFVzZXI6ICcgKyB0aGlzLmFjY291bnQ/LmxvZ2luTmFtZSB8fCAnPHVua25vd24+Jyk7XG4gICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8T2VwYVVzZXJBY2NvdW50Pih0aGlzLmhvc3RVcmwgKyB0aGlzLmViaXpBY2NvdW50c1VybCArICcvbGl2ZVJlbG9hZCcsIHVzZXJBY2NvdW50LCB7IHBhcmFtczogdGhpcy5wYXJhbXMgfSk7XG4gICAgfVxuXG4gICAvKipcbiAgICAqIFN0b3JlcyB0aGUgZ2l2ZW4gdXNlciBpbiB0aGUgZUJpeiBzZXNzaW9uLlxuICAgICogQHBhcmFtIGFjY291bnRVc2VySUQgXG4gICAgKi9cbiAgIHB1YmxpYyBzdG9yZVVzZXJJblNlc3Npb24oYWNjb3VudFVzZXJJRDogc3RyaW5nKTogT2JzZXJ2YWJsZTxPZXBhVXNlckFjY291bnQ+IHtcbiAgICAgbGV0IGFjY3QgPSB7fSBhcyBPZXBhVXNlckFjY291bnQ7XG4gICAgIGFjY3QuYWNjb3VudElEID0gYWNjb3VudFVzZXJJRDtcbiAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PE9lcGFVc2VyQWNjb3VudD4odGhpcy5ob3N0VXJsICsgdGhpcy5lYml6U2Vzc2lvblVybCArICcvc3RvcmVVc2VyLycgKyBhY2NvdW50VXNlcklELCBudWxsICwgeyBwYXJhbXM6IHRoaXMucGFyYW1zIH0pO1xuICAgfVxuXG4gICAgLyoqXG4gICAgICogU2VlIGlmIHRoZSBjdXJyZW50IHVzZXIgc2hvdWxkIGJlIGFsbG93ZWQgdG8gc2VlIFwiZGVtb1wiIGNhcGFiaWxpdGllc1xuICAgICAqL1xuICAgIHB1YmxpYyBkZW1vQ2FwYWJpbGl0aWVzQWxsb3dlZCgpOiBib29sZWFuIHtcbiAgICAgIGxldCBkZW1vQWxsb3dlZCA9IGZhbHNlO1xuICAgICAgaWYgKHRoaXMuYWNjb3VudCAmJiB0aGlzLmFjY291bnQucm9sZUxpc3QpIHtcbiAgICAgICAgdGhpcy5hY2NvdW50LnJvbGVMaXN0LmZvckVhY2gocm9sZSA9PiB7XG4gICAgICAgICAgaWYgKHJvbGUubmFtZSA9PT0gJ0FsbG93RGVtbycpIHtcbiAgICAgICAgICAgIGRlbW9BbGxvd2VkID0gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGRlbW9BbGxvd2VkO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGFydElkbGVUaW1lcih0aHJlc2hvbGQ/OiBudW1iZXIpIHtcbiAgICAgIGlmICh0aGlzLnRpbWVvdXRJRCkge1xuICAgICAgICBjbGVhclRpbWVvdXQodGhpcy50aW1lb3V0SUQpO1xuICAgICAgfVxuICAgICAgdGhpcy5pZGxlVGhyZXNob2xkID0gdGhyZXNob2xkIHx8IHRoaXMuaWRsZVRocmVzaG9sZDtcbiAgICAgIGlmICghdGhpcy5pZGxlVGltZXJSdW5uaW5nKSB7XG4gICAgICAgIGNvbnNvbGUubG9nKCdUaGUgaWRsZSB0aW1lb3V0IHN0YXJ0ZWQgd2l0aCB0aHJlc2hvbGQ6ICcgKyB0aGlzLmlkbGVUaHJlc2hvbGQpO1xuICAgICAgICB0aGlzLmlkbGVUaW1lclJ1bm5pbmcgPSB0cnVlO1xuICAgICAgICB0aGlzLmNoZWNrVGltZW91dCgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyByZXNldElkbGVUaW1lKCkge1xuICAgICAgY29uc29sZS5sb2coJ2lkbGUgdGltZXIgcmVzZXQnKTtcbiAgICAgIHRoaXMuaWRsZVRpbWUgPSAwO1xuICAgIH1cblxuICAgIHByaXZhdGUgY2hlY2tUaW1lb3V0KCkge1xuICAgICAgdGhpcy50aW1lb3V0SUQgPSBzZXRUaW1lb3V0KCgpPT4ge1xuICAgICAgICB0aGlzLmlkbGVUaW1lICs9IDYwO1xuICAgICAgICBjb25zb2xlLmxvZygnaWRsZSB0aW1lID0gJyArIHRoaXMuaWRsZVRpbWUgKyBcIiwgdGhyZXNob2xkID0gXCIgKyB0aGlzLmlkbGVUaHJlc2hvbGQpO1xuICAgICAgICBpZiAodGhpcy5pZGxlVGltZSA+PSB0aGlzLmlkbGVUaHJlc2hvbGQpIHtcbiAgICAgICAgICBjb25zb2xlLmxvZygnZmlyaW5nIG5leHQgaWRsZVN1YmplY3QuLi4nKTtcbiAgICAgICAgICB0aGlzLmlkbGVUaW1lclJ1bm5pbmcgPSBmYWxzZTtcbiAgICAgICAgICB0aGlzLmlkbGVTdWJqZWN0Lm5leHQodGhpcy5pZGxlVGltZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgaWYgKHRoaXMudGltZW91dElEKSB7XG4gICAgICAgICAgICBjbGVhclRpbWVvdXQodGhpcy50aW1lb3V0SUQpO1xuICAgICAgICAgIH1cbiAgICAgICAgICB0aGlzLmNoZWNrVGltZW91dCgpO1xuICAgICAgICB9XG4gICAgICB9LCA2MDAwMCk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldElkbGVUaW1lb3V0KCk6IE9ic2VydmFibGU8bnVtYmVyPiB7XG4gICAgICByZXR1cm4gdGhpcy5pZGxlU3ViamVjdC5hc09ic2VydmFibGUoKTtcbiAgICB9XG4gICAgXG4gICAgLyoqXG4gICAgICogQGRlcHJlY2F0ZWQgV2UgcHJvYmFibHkgZG9uJ3Qgd2FudCB0byBzdXBwb3J0IHRoaXMgZ29pbmcgZm9yd2FyZFxuICAgICAqIEBwYXJhbSBtZXNzYWdlXG4gICAgICogQHJldHVybnMgXG4gICAgICovXG4gICAgcHVibGljIGxvZ01lc3NhZ2VPblNlcnZlcihtZXNzYWdlPzogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICAgIGNvbnN0IG1lc3NhZ2VSZXNwb25zZTogYW55ID0ge1xuICAgICAgICByZXNwb25zZTogbWVzc2FnZVxuICAgICAgfVxuICAgICAgY29uc3QgdXJsID0gdGhpcy5ob3N0VXJsICsgJy9hcGkvdjEvdXNlckFjY291bnRzL2xvZ3MvbWVzc2FnZSc7XG4gICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8YW55Pih1cmwsIG1lc3NhZ2VSZXNwb25zZSwgeyBwYXJhbXM6IHRoaXMucGFyYW1zIH0pO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -118,7 +118,7 @@ export class ShoppingCartViewComponent {
|
|
|
118
118
|
{ id: 'itemClassification', value: cartItem.itemClassification },
|
|
119
119
|
{ id: 'itemName', value: cartItem.itemName },
|
|
120
120
|
{ id: 'itemDescription', value: cartItem.description },
|
|
121
|
-
{ id: 'deleteItem', value: '', iconClassName: '
|
|
121
|
+
{ id: 'deleteItem', value: '', iconClassName: 'bi bi-dash-circle-fill', className: 'text-center' },
|
|
122
122
|
{ id: 'fee', value: cartItem.unitPrice?.formattedString, sortValue: cartItem.unitPrice?.cents },
|
|
123
123
|
],
|
|
124
124
|
dataSource: cartItem
|
|
@@ -188,4 +188,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
188
188
|
type: Component,
|
|
189
189
|
args: [{ selector: 'oepa-shopping-cart-view', template: "<div class=\"container-fluid\">\n <div class=\"row\">\n <div class=\" col-sm-12\">\n <h2><b>{{title}}</b></h2>\n </div>\n <div *ngIf=\"loading || empty\" class=\"col-sm-12 text-center\">\n <div class=\" alert alert-info \">\n <h3><em>{{ loading ? 'Loading...' : 'Cart is empty' }}</em></h3>\n <img *ngIf=\"loading\" class=\"oepa-icon\" src=\"{{imageRoot}}/blue-load.gif\" />\n </div>\n </div>\n <div *ngIf=\"!loading && !empty\" class=\"col-sm-12\">\n <oepa-table [config]=\"tblConfig\" [data]=\"tblData\" [header]=\"tblHeader\" tableId=\"ShoppingCartTable\" (cellClicked)=\"onCellClick($event)\"></oepa-table>\n </div>\n <div *ngIf=\"errorMessage\" class=\"col-sm-12\">\n <div class=\"alert alert-danger\">{{errorMessage}}</div>\n </div>\n <div *ngIf=\"!checkOutInProgress\" class=\"col-12 text-center\">\n <button class=\"btn btn-primary mr-2\" id=\"returnToPageButton\" (click)=\"goBack()\">\n {{returnLabel}}</button>\n <button *ngIf=\"!empty\" class=\"btn btn-primary mr-2\" id=\"checkoutBtn\" (click)=\"onCheckout()\">\n Checkout</button>\n </div>\n <div *ngIf=\"checkOutInProgress\" class=\"col-12 text-center\">\n <div class=\"alert alert-info\">\n <span class=\"spinner-border text-primary\" role=\"status\"></span>\n Checking out...\n </div>\n </div>\n </div>\n</div>" }]
|
|
190
190
|
}], ctorParameters: () => [{ type: i1.Router }, { type: i1.ActivatedRoute }, { type: i2.BsModalService }, { type: i3.ShoppingCartService }] });
|
|
191
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hvcHBpbmctY2FydC12aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29lcGEtdWktbGliL3NyYy9saWIvc2hvcHBpbmctY2FydC9zaG9wcGluZy1jYXJ0LXZpZXcvc2hvcHBpbmctY2FydC12aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29lcGEtdWktbGliL3NyYy9saWIvc2hvcHBpbmctY2FydC9zaG9wcGluZy1jYXJ0LXZpZXcvc2hvcHBpbmctY2FydC12aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFLbEQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sdURBQXVELENBQUM7Ozs7Ozs7QUFZbkcsTUFBTSxPQUFPLHlCQUF5QjtJQStCaEI7SUFDVjtJQUNBO0lBQ0E7SUFqQ1YsV0FBVyxDQUFTO0lBQ3BCLEtBQUssQ0FBUztJQUNkLFdBQVcsQ0FBUztJQUNwQixTQUFTLENBQVM7SUFDbEIsWUFBWSxDQUEyQjtJQUN2QyxLQUFLLEdBQUcsSUFBSSxDQUFDO0lBQ2IsT0FBTyxHQUFHLElBQUksQ0FBQztJQUNmLFlBQVksR0FBVyxFQUFFLENBQUM7SUFDMUIsU0FBUyxHQUFHLDhCQUE4QixDQUFDO0lBQzNDLGtCQUFrQixHQUFHLEtBQUssQ0FBQztJQUMzQixXQUFXLEdBQVcsaUJBQWlCLENBQUM7SUFDeEMsZUFBZSxDQUFTO0lBQ3hCLHVCQUF1QixDQUFTO0lBQ2hDLGFBQWEsQ0FBUztJQUN0QixvQkFBb0IsR0FBVyxFQUFFLENBQUM7SUFFbEMsU0FBUyxHQUFvQjtRQUMzQixPQUFPLEVBQUU7WUFDUCxFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUUsRUFBRSxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFB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SSxDQUFDLFlBQVksR0FBRyxtQkFBbUIsR0FBRyxHQUFHLENBQUM7Z0JBQ2hELENBQUM7YUFBQyxDQUFDLENBQUM7UUFDTixDQUFDO0lBQ0gsQ0FBQzt3R0FyTFUseUJBQXlCOzRGQUF6Qix5QkFBeUIsK0RDakJ0Qyw0NUNBOEJNOzs0RkRiTyx5QkFBeUI7a0JBTHJDLFNBQVM7K0JBQ0UseUJBQXlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlciwgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgU2hvcHBpbmdDYXJ0U2VydmljZSB9IGZyb20gJy4uL3Nob3BwaW5nLWNhcnQuc2VydmljZSc7XG5pbXBvcnQgeyBTaG9wcGluZ0NhcnRJdGVtLCBTaG9wcGluZ0NhcnQgfSBmcm9tICdAb2hpb2VwYS9vZXBhLWViaXotbGliJztcbmltcG9ydCB7IEJzTW9kYWxSZWYsIEJzTW9kYWxTZXJ2aWNlIH0gZnJvbSAnbmd4LWJvb3RzdHJhcC9tb2RhbCc7XG5pbXBvcnQgeyBDb25maXJtYXRpb25Nb2RhbENvbXBvbmVudCB9IGZyb20gJy4uLy4uL2NvbmZpcm1hdGlvbi1tb2RhbC9jb25maXJtYXRpb24tbW9kYWwuY29tcG9uZW50JztcbmltcG9ydCB7IFNob3BwaW5nQ2FydFZpZXdQYXJhbWV0ZXJzIH0gZnJvbSAnLi9zaG9wcGluZy1jYXJ0LXZpZXctcGFyYW1ldGVycyc7XG5pbXBvcnQgeyBPZXBhVGFibGVIZWFkZXIgfSBmcm9tICcuLi8uLi90YWJsZS9vZXBhLXRhYmxlLWhlYWRlcic7XG5pbXBvcnQgeyBPZXBhVGFibGVDZWxsQ2xpY2tFdmVudCB9IGZyb20gJy4uLy4uL3RhYmxlL29lcGEtdGFibGUtY2VsbC1jbGljay1ldmVudCc7XG5pbXBvcnQgeyBPZXBhVGFibGVDb25maWcgfSBmcm9tICcuLi8uLi90YWJsZS9vZXBhLXRhYmxlLWNvbmZpZyc7XG5pbXBvcnQgeyBPZXBhVGFibGVSb3cgfSBmcm9tICcuLi8uLi90YWJsZS9vZXBhLXRhYmxlLXJvdyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ29lcGEtc2hvcHBpbmctY2FydC12aWV3JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Nob3BwaW5nLWNhcnQtdmlldy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3Nob3BwaW5nLWNhcnQtdmlldy5jb21wb25lbnQuY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgU2hvcHBpbmdDYXJ0Vmlld0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHNlcnZpY2VOYW1lOiBzdHJpbmc7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIHJldHVybkxhYmVsOiBzdHJpbmc7XG4gIHJldHVyblVybDogc3RyaW5nO1xuICBzaG9wcGluZ0NhcnQ6IFNob3BwaW5nQ2FydCB8IHVuZGVmaW5lZDtcbiAgZW1wdHkgPSB0cnVlO1xuICBsb2FkaW5nID0gdHJ1ZTtcbiAgZXJyb3JNZXNzYWdlOiBzdHJpbmcgPSAnJztcbiAgaW1hZ2VSb290ID0gJy9Bbmd1bGFyV2ViQXBwL2Fzc2V0cy9pbWFnZXMnO1xuICBjaGVja091dEluUHJvZ3Jlc3MgPSBmYWxzZTtcbiAgdG90YWxDb2x1bW46IHN0cmluZyA9ICdpdGVtRGVzY3JpcHRpb24nO1xuICBpdGVtTnVtYmVyTGFiZWw6IHN0cmluZztcbiAgaXRlbUNsYXNzaWZpY2F0aW9uTGFiZWw6IHN0cmluZztcbiAgaXRlbU5hbWVMYWJlbDogc3RyaW5nO1xuICBpdGVtRGVzY3JpcHRpb25MYWJlbDogc3RyaW5nID0gJyc7XG5cbiAgdGJsSGVhZGVyOiBPZXBhVGFibGVIZWFkZXIgPSB7XG4gICAgY29sdW1uczogW1xuICAgICAgeyB0aXRsZTogJ1JlbW92ZSBJdGVtJywgaWQ6ICdkZWxldGVJdGVtJywgc29ydDogJ25vbmUnLCBoeXBlcmxpbms6IHRydWUsIGNsYXNzTmFtZTogJ29lcGEtdGFibGUtaGVhZGVyLWNlbnRlcicgfSxcbiAgICAgIHsgdGl0bGU6ICdGZWUnLCBpZDogJ2ZlZScsIHNvcnQ6ICdub25lJyB9LFxuICAgIF1cbiAgfTtcblxuICB0YmxDb25maWc6IE9lcGFUYWJsZUNvbmZpZyA9IHtcbiAgICBjbGFzc05hbWVzOiBbJ3RhYmxlLWJvcmRlcmVkJ10sXG4gICAgaGlkZUZvb3RlcjogdHJ1ZVxuICB9O1xuXG4gIHRibERhdGE6IEFycmF5PE9lcGFUYWJsZVJvdz4gPSBbXTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICAgIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgIHByaXZhdGUgbW9kYWxTZXJ2aWNlOiBCc01vZGFsU2VydmljZSwgXG4gICAgcHJpdmF0ZSBzaG9wcGluZ0NhcnRTZXJ2aWNlOiBTaG9wcGluZ0NhcnRTZXJ2aWNlKSB7XG4gICAgICBjb25zdCBwYXJhbXM6IFNob3BwaW5nQ2FydFZpZXdQYXJhbWV0ZXJzID0gPFNob3BwaW5nQ2FydFZpZXdQYXJhbWV0ZXJzPnJvdXRlLnNuYXBzaG90LmRhdGFbMF07XG4gICAgICB0aGlzLnNlcnZpY2VOYW1lID0gcGFyYW1zLnNlcnZpY2VOYW1lO1xuICAgICAgdGhpcy50aXRsZSA9IHBhcmFtcy50aXRsZTtcbiAgICAgIHRoaXMucmV0dXJuTGFiZWwgPSBwYXJhbXMucmV0dXJuTGFiZWw7XG4gICAgICB0aGlzLnJldHVyblVybCA9IHBhcmFtcy5yZXR1cm5Vcmw7XG4gICAgICB0aGlzLml0ZW1OdW1iZXJMYWJlbCA9IHBhcmFtcy5pdGVtTnVtYmVyTGFiZWw7XG4gICAgICB0aGlzLml0ZW1DbGFzc2lmaWNhdGlvbkxhYmVsID0gcGFyYW1zLml0ZW1DbGFzc2lmaWNhdGlvbkxhYmVsO1xuICAgICAgdGhpcy5pdGVtTmFtZUxhYmVsID0gcGFyYW1zLml0ZW1OYW1lTGFiZWw7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnVwZGF0ZUhlYWRlcnMoKTtcbiAgICB0aGlzLnJlZnJlc2goKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgaGVhZGVycyBiYXNlZCBvbiB0aGUgbGFiZWxzIGRlZmluZWQgZm9yIHRoaXMgc2hvcHBpbmcgY2FydFxuICAgKi9cbiAgcHJpdmF0ZSB1cGRhdGVIZWFkZXJzKCkge1xuICAgIC8vIHByb2Nlc3MgbGFiZWxzIGluIHJldmVyc2Ugb3JkZXIgc2luY2UgdW5zaGlmdCBwbGFjZXMgaXRlbSBhdCB0aGUgYmVnaW5uaW5nIG9mIHRoZSBhcnJheVxuICAgIGlmICh0aGlzLml0ZW1EZXNjcmlwdGlvbkxhYmVsKSB7XG4gICAgICB0aGlzLnRibEhlYWRlci5jb2x1bW5zLnVuc2hpZnQoeyB0aXRsZTogdGhpcy5pdGVtRGVzY3JpcHRpb25MYWJlbCwgaWQ6ICdpdGVtRGVzY3JpcHRpb24nLCBzb3J0OiAnbm9uZScgfSk7XG4gICAgICB0aGlzLnRvdGFsQ29sdW1uID0gJ2l0ZW1EZXNjcmlwdGlvbic7XG4gICAgfVxuICAgIGlmICh0aGlzLml0ZW1OYW1lTGFiZWwpIHtcbiAgICAgIHRoaXMudGJsSGVhZGVyLmNvbHVtbnMudW5zaGlmdCh7IHRpdGxlOiB0aGlzLml0ZW1OYW1lTGFiZWwsIGlkOiAnaXRlbU5hbWUnLCBzb3J0OiAnbm9uZScgfSk7XG4gICAgICB0aGlzLnRvdGFsQ29sdW1uID0gJ2l0ZW1OYW1lJztcbiAgICB9XG4gICAgaWYgKHRoaXMuaXRlbUNsYXNzaWZpY2F0aW9uTGFiZWwpIHtcbiAgICAgIHRoaXMudGJsSGVhZGVyLmNvbHVtbnMudW5zaGlmdCh7IHRpdGxlOiB0aGlzLml0ZW1DbGFzc2lmaWNhdGlvbkxhYmVsLCBpZDogJ2l0ZW1DbGFzc2lmaWNhdGlvbicsIHNvcnQ6ICdub25lJyB9KTtcbiAgICAgIHRoaXMudG90YWxDb2x1bW4gPSAnaXRlbUNsYXNzaWZpY2F0aW9uJztcbiAgICB9XG4gICAgaWYgKHRoaXMuaXRlbU51bWJlckxhYmVsKSB7XG4gICAgICB0aGlzLnRibEhlYWRlci5jb2x1bW5zLnVuc2hpZnQoeyB0aXRsZTogdGhpcy5pdGVtTnVtYmVyTGFiZWwsIGlkOiAnaXRlbU51bWJlcicsIHNvcnQ6ICdub25lJyB9KTtcbiAgICAgIHRoaXMudG90YWxDb2x1bW4gPSAnaXRlbU51bWJlcic7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSByZWZyZXNoKCkge1xuICAgIHRoaXMubG9hZGluZyA9IHRydWU7XG4gICAgdGhpcy5lcnJvck1lc3NhZ2UgPSAnJztcbiAgICB0aGlzLnNob3BwaW5nQ2FydFNlcnZpY2UucmV0cmlldmVTaG9wcGluZ0NhcnQodGhpcy5zZXJ2aWNlTmFtZSkuc3Vic2NyaWJlKHtcbiAgICAgIG5leHQ6IHNob3BwaW5nQ2FydCA9PiB7XG4gICAgICB0aGlzLnNob3BwaW5nQ2FydCA9IHNob3BwaW5nQ2FydDtcbiAgICAgIHRoaXMubG9hZFRhYmxlKCk7XG4gICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcbiAgICB9LCBlcnJvcjogZXJyID0+IHtcbiAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gJ0ZhaWxlZCByZXRyaWV2aW5nIHNob3BwaW5nIGNhcnQgZGF0YTogJyArIGVycjtcbiAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xuICAgIH19KTtcbiAgfVxuXG4gIHByaXZhdGUgbG9hZFRhYmxlKCkge1xuICAgIHRoaXMudGJsRGF0YSA9IFtdO1xuICAgIHRoaXMuZW1wdHkgPSB0cnVlO1xuICAgIGlmICh0aGlzLnNob3BwaW5nQ2FydCAmJiB0aGlzLnNob3BwaW5nQ2FydC5jYXJ0SXRlbXMpIHtcbiAgICAgIHRoaXMuc2hvcHBpbmdDYXJ0LmNhcnRJdGVtcy5mb3JFYWNoKGNhcnRJdGVtID0+IHtcbiAgICAgICAgdGhpcy5lbXB0eSA9IGZhbHNlO1xuICAgICAgICBsZXQgcm93ID0gdGhpcy5jb252ZXJ0Q2FydEl0ZW1Ub1RhYmxlUm93KGNhcnRJdGVtKTtcbiAgICAgICAgdGhpcy50YmxEYXRhLnB1c2gocm93KTtcbiAgICAgIH0pO1xuICAgICAgdGhpcy50YmxEYXRhLnB1c2goeyBjZWxscyA6IFsgXG4gICAgICAgIHtpZDogJ2l0ZW1OdW1iZXInLCB2YWx1ZTogKHRoaXMudG90YWxDb2x1bW4gPT09ICdpdGVtTnVtYmVyJyA/ICdUb3RhbCBBbW91bnQgRHVlOicgOiAnJyksIGNsYXNzTmFtZTonb2VwYS10YWJsZS1ncmF5IG9lcGEtdGFibGUtYm9sZCcgfSxcbiAgICAgICAge2lkOiAnaXRlbUNsYXNzaWZpY2F0aW9uJywgdmFsdWU6ICh0aGlzLnRvdGFsQ29sdW1uID09PSAnaXRlbUNsYXNzaWZpY2F0aW9uJyA/ICdUb3RhbCBBbW91bnQgRHVlOicgOiAnJyksIGNsYXNzTmFtZTonb2VwYS10YWJsZS1ncmF5IG9lcGEtdGFibGUtYm9sZCcgfSxcbiAgICAgICAge2lkOiAnaXRlbU5hbWUnLCB2YWx1ZTogKHRoaXMudG90YWxDb2x1bW4gPT09ICdpdGVtTmFtZScgPyAnVG90YWwgQW1vdW50IER1ZTonIDogJycpLCBjbGFzc05hbWU6J29lcGEtdGFibGUtZ3JheSBvZXBhLXRhYmxlLWJvbGQnIH0sXG4gICAgICAgIHtpZDogJ2l0ZW1EZXNjcmlwdGlvbicsIHZhbHVlOiAodGhpcy50b3RhbENvbHVtbiA9PT0gJ2l0ZW1EZXNjcmlwdGlvbicgPyAnVG90YWwgQW1vdW50IER1ZTonIDogJycpLCBjbGFzc05hbWU6J29lcGEtdGFibGUtZ3JheSBvZXBhLXRhYmxlLWJvbGQnIH0sXG4gICAgICAgIHtpZDonZGVsZXRlSXRlbScsIHZhbHVlOicnLGNsYXNzTmFtZTonb2VwYS10YWJsZS1ncmF5JyB9LFxuICAgICAgICB7aWQ6ICdmZWUnLCAgdmFsdWU6IHRoaXMuc2hvcHBpbmdDYXJ0Py50b3RhbEFtb3VudD8uZm9ybWF0dGVkU3RyaW5nLCBzb3J0VmFsdWU6IHRoaXMuc2hvcHBpbmdDYXJ0Py50b3RhbEFtb3VudD8uY2VudHMsIGljb25DbGFzc05hbWU6J29lcGEtdW5kZWxpbmUtY2VsbCcsIGNsYXNzTmFtZTonb2VwYS10YWJsZS1ncmF5IG9lcGEtdGFibGUtYm9sZCd9XG4gICAgICBdfSk7XG4gICAgICB0aGlzLnRibERhdGEgPSB0aGlzLnRibERhdGEuc2xpY2UoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGNvbnZlcnRDYXJ0SXRlbVRvVGFibGVSb3coY2FydEl0ZW06IFNob3BwaW5nQ2FydEl0ZW0pOiBPZXBhVGFibGVSb3cge1xuICAgIGxldCByb3c6IE9lcGFUYWJsZVJvdyA9IHtcbiAgICAgIGNlbGxzOiBbXG4gICAgICAgIHsgaWQ6ICdpdGVtTnVtYmVyJywgdmFsdWU6IGNhcnRJdGVtLml0ZW1OdW1iZXIgfSxcbiAgICAgICAgeyBpZDogJ2l0ZW1DbGFzc2lmaWNhdGlvbicsIHZhbHVlOiBjYXJ0SXRlbS5pdGVtQ2xhc3NpZmljYXRpb24gfSxcbiAgICAgICAgeyBpZDogJ2l0ZW1OYW1lJywgdmFsdWU6IGNhcnRJdGVtLml0ZW1OYW1lIH0sXG4gICAgICAgIHsgaWQ6ICdpdGVtRGVzY3JpcHRpb24nLCB2YWx1ZTogY2FydEl0ZW0uZGVzY3JpcHRpb24gfSxcbiAgICAgICAgeyBpZDogJ2RlbGV0ZUl0ZW0nLCB2YWx1ZTogJycsIGljb25DbGFzc05hbWU6ICdmYSBmYS1taW51cy1jaXJjbGUnLCBjbGFzc05hbWU6ICd0ZXh0LWNlbnRlcicgfSxcbiAgICAgICAgeyBpZDogJ2ZlZScsIHZhbHVlOiBjYXJ0SXRlbS51bml0UHJpY2U/LmZvcm1hdHRlZFN0cmluZywgc29ydFZhbHVlOiBjYXJ0SXRlbS51bml0UHJpY2U/LmNlbnRzIH0sXG4gICAgICBdLFxuICAgICAgZGF0YVNvdXJjZTogY2FydEl0ZW1cbiAgICB9XG4gICAgcmV0dXJuIHJvdztcbiAgfVxuXG4gIG9uQ2VsbENsaWNrKGV2ZW50OiBPZXBhVGFibGVDZWxsQ2xpY2tFdmVudCkge1xuICAgIGlmIChldmVudC5jb2x1bW5JZCA9PT0gJ2RlbGV0ZUl0ZW0nKSB7XG4gICAgICB0aGlzLmRlbGV0ZUZyb21DYXJ0KGV2ZW50LnJvdy5kYXRhU291cmNlLnR5cGVJRCwgZXZlbnQucm93LmRhdGFTb3VyY2UuZGVzY3JpcHRpb24sIHRoaXMuc2hvcHBpbmdDYXJ0KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGRlbGV0ZUZyb21DYXJ0KGlkOiBzdHJpbmcsIGRlc2NyaXB0aW9uOiBzdHJpbmcsIGNhcnQ6IFNob3BwaW5nQ2FydCB8IHVuZGVmaW5lZCkge1xuICAgIGNvbnN0IG1vZGFsOiBCc01vZGFsUmVmID0gdGhpcy5tb2RhbFNlcnZpY2Uuc2hvdyhDb25maXJtYXRpb25Nb2RhbENvbXBvbmVudCwgeyBpZ25vcmVCYWNrZHJvcENsaWNrOiB0cnVlIH0pO1xuICAgICg8Q29uZmlybWF0aW9uTW9kYWxDb21wb25lbnQ+bW9kYWwuY29udGVudCkuaGVhZGVyVGV4dCA9ICdSZW1vdmUgaXRlbSBmcm9tIGNhcnQ/JztcbiAgICAoPENvbmZpcm1hdGlvbk1vZGFsQ29tcG9uZW50Pm1vZGFsLmNvbnRlbnQpLmJvZHlUZXh0ID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byByZW1vdmUgJyArIGRlc2NyaXB0aW9uICsgICcgZnJvbSB0aGUgc2hvcHBpbmcgY2FydD8nO1xuICAgICg8Q29uZmlybWF0aW9uTW9kYWxDb21wb25lbnQ+bW9kYWwuY29udGVudCkuY29uZmlybUJ0bkxhYmVsID0gJ1llcyc7XG4gICAgKDxDb25maXJtYXRpb25Nb2RhbENvbXBvbmVudD5tb2RhbC5jb250ZW50KS5jYW5jZWxCdG5MYWJlbCA9ICdObyc7XG4gICAgKDxDb25maXJtYXRpb25Nb2RhbENvbXBvbmVudD5tb2RhbC5jb250ZW50KS5jb25maXJtQ2xpY2tlZC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5kZWxldGVJdGVtRnJvbUNhcnQoaWQsIGNhcnQpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBkZWxldGVJdGVtRnJvbUNhcnQoaWQ6IHN0cmluZywgY2FydDogU2hvcHBpbmdDYXJ0IHwgdW5kZWZpbmVkKSB7XG4gICAgaWYgKGNhcnQpIHtcbiAgICAgIHRoaXMuc2hvcHBpbmdDYXJ0U2VydmljZS5yZW1vdmVTaG9wcGluZ0NhcnRJdGVtKGlkLCBjYXJ0KS5zdWJzY3JpYmUoe1xuICAgICAgICBuZXh0OiB1cGRhdGVkQ2FydCA9PiB7XG4gICAgICAgIHRoaXMuc2hvcHBpbmdDYXJ0ID0gdXBkYXRlZENhcnQ7XG4gICAgICAgIHRoaXMubG9hZFRhYmxlKCk7XG4gICAgICB9LCBlcnJvcjogZXJyID0+IHtcbiAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSAnRmFpbGVkIHJlbW92aW5nIGl0ZW0gZnJvbSBjYXJ0OiAnICsgZXJyO1xuICAgICAgfX0pO1xuICAgIH1cbiAgfVxuXG4gIGdvQmFjaygpIHtcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbdGhpcy5yZXR1cm5VcmxdLCB7IHJlbGF0aXZlVG86IHRoaXMucm91dGUucGFyZW50IH0pO1xuICB9XG5cbiAgcHVibGljIG9uQ2hlY2tvdXQoKSB7XG4gICAgY29uc3QgbW9kYWw6IEJzTW9kYWxSZWYgPSB0aGlzLm1vZGFsU2VydmljZS5zaG93KENvbmZpcm1hdGlvbk1vZGFsQ29tcG9uZW50LCB7IGlnbm9yZUJhY2tkcm9wQ2xpY2s6IHRydWUgfSk7XG4gICAgKDxDb25maXJtYXRpb25Nb2RhbENvbXBvbmVudD5tb2RhbC5jb250ZW50KS5oZWFkZXJUZXh0ID0gJ0NoZWNrb3V0JztcbiAgICAoPENvbmZpcm1hdGlvbk1vZGFsQ29tcG9uZW50Pm1vZGFsLmNvbnRlbnQpLmJvZHlUZXh0ID0gJ0RvIHlvdSB3YW50IHRvIHN1Ym1pdCBhbGwgb2YgdGhlIGFwcGxpY2F0aW9ucyBpbiB0aGUgc2hvcHBpbmcgY2FydD8nO1xuICAgICg8Q29uZmlybWF0aW9uTW9kYWxDb21wb25lbnQ+bW9kYWwuY29udGVudCkuY29uZmlybUJ0bkxhYmVsID0gJ1llcyc7XG4gICAgKDxDb25maXJtYXRpb25Nb2RhbENvbXBvbmVudD5tb2RhbC5jb250ZW50KS5jYW5jZWxCdG5MYWJlbCA9ICdObyc7XG4gICAgKDxDb25maXJtYXRpb25Nb2RhbENvbXBvbmVudD5tb2RhbC5jb250ZW50KS5jb25maXJtQ2xpY2tlZC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5jaGVja291dCgpO1xuICAgIH0pO1xuICB9XG5cbiAgY2hlY2tvdXQoKSB7XG4gICAgaWYgKHRoaXMuc2hvcHBpbmdDYXJ0KSB7XG4gICAgICB0aGlzLmVycm9yTWVzc2FnZSA9ICcnO1xuICAgICAgdGhpcy5jaGVja091dEluUHJvZ3Jlc3MgPSB0cnVlO1xuICAgICAgdGhpcy5zaG9wcGluZ0NhcnRTZXJ2aWNlLmNoZWNrT3V0KHRoaXMuc2hvcHBpbmdDYXJ0KS5zdWJzY3JpYmUoe1xuICAgICAgICBuZXh0OiB0cmFuc2FjdGlvbklEID0+IHtcbiAgICAgICAgLy8gbmF2aWdhdGUgdG8gQ0JPU1MgcGF5bWVudCBzY3JlZW5cbiAgICAgICAgY29uc3QgZWJpelJvb3RVUkwgPSB0aGlzLnNob3BwaW5nQ2FydFNlcnZpY2UuZ2V0RWJpelJvb3RVUkwoKTtcbiAgICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSBlYml6Um9vdFVSTCArICcvcG9ydGFsL3BheW1lbnRTdWJtaXNzaW9uQWN0aW9uLnBvP3RyYW5zYWN0aW9uSUQ9JyArIHRyYW5zYWN0aW9uSUQ7XG4gICAgICB9LCBlcnJvcjogZXJyID0+IHtcbiAgICAgICAgdGhpcy5jaGVja091dEluUHJvZ3Jlc3MgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSAnQ2hlY2tvdXQgZmFpbGVkOiAnICsgZXJyO1xuICAgICAgfX0pO1xuICAgIH1cbiAgfVxuXG59XG4iLCI8ZGl2IGNsYXNzPVwiY29udGFpbmVyLWZsdWlkXCI+XG4gIDxkaXYgY2xhc3M9XCJyb3dcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCIgY29sLXNtLTEyXCI+XG4gICAgICAgICAgPGgyPjxiPnt7dGl0bGV9fTwvYj48L2gyPlxuICAgICAgICA8L2Rpdj5cbiAgICA8ZGl2ICpuZ0lmPVwibG9hZGluZyB8fCBlbXB0eVwiIGNsYXNzPVwiY29sLXNtLTEyIHRleHQtY2VudGVyXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiIGFsZXJ0IGFsZXJ0LWluZm8gXCI+XG4gICAgICAgIDxoMz48ZW0+e3sgbG9hZGluZyA/ICdMb2FkaW5nLi4uJyA6ICdDYXJ0IGlzIGVtcHR5JyB9fTwvZW0+PC9oMz5cbiAgICAgICAgPGltZyAqbmdJZj1cImxvYWRpbmdcIiBjbGFzcz1cIm9lcGEtaWNvblwiIHNyYz1cInt7aW1hZ2VSb290fX0vYmx1ZS1sb2FkLmdpZlwiIC8+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2ICpuZ0lmPVwiIWxvYWRpbmcgJiYgIWVtcHR5XCIgY2xhc3M9XCJjb2wtc20tMTJcIj5cbiAgICAgIDxvZXBhLXRhYmxlIFtjb25maWddPVwidGJsQ29uZmlnXCIgW2RhdGFdPVwidGJsRGF0YVwiIFtoZWFkZXJdPVwidGJsSGVhZGVyXCIgdGFibGVJZD1cIlNob3BwaW5nQ2FydFRhYmxlXCIgKGNlbGxDbGlja2VkKT1cIm9uQ2VsbENsaWNrKCRldmVudClcIj48L29lcGEtdGFibGU+XG4gICAgPC9kaXY+XG4gICAgPGRpdiAqbmdJZj1cImVycm9yTWVzc2FnZVwiIGNsYXNzPVwiY29sLXNtLTEyXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiYWxlcnQgYWxlcnQtZGFuZ2VyXCI+e3tlcnJvck1lc3NhZ2V9fTwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgKm5nSWY9XCIhY2hlY2tPdXRJblByb2dyZXNzXCIgY2xhc3M9XCJjb2wtMTIgdGV4dC1jZW50ZXJcIj5cbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tcHJpbWFyeSBtci0yXCIgaWQ9XCJyZXR1cm5Ub1BhZ2VCdXR0b25cIiAoY2xpY2spPVwiZ29CYWNrKClcIj5cbiAgICAgICAgICB7e3JldHVybkxhYmVsfX08L2J1dHRvbj5cbiAgICAgICAgPGJ1dHRvbiAqbmdJZj1cIiFlbXB0eVwiIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IG1yLTJcIiBpZD1cImNoZWNrb3V0QnRuXCIgKGNsaWNrKT1cIm9uQ2hlY2tvdXQoKVwiPlxuICAgICAgICAgIENoZWNrb3V0PC9idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJjaGVja091dEluUHJvZ3Jlc3NcIiBjbGFzcz1cImNvbC0xMiB0ZXh0LWNlbnRlclwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYWxlcnQgYWxlcnQtaW5mb1wiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3Bpbm5lci1ib3JkZXIgdGV4dC1wcmltYXJ5XCIgcm9sZT1cInN0YXR1c1wiPjwvc3Bhbj5cbiAgICAgICAgICBDaGVja2luZyBvdXQuLi5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj4iXX0=
|
|
191
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hvcHBpbmctY2FydC12aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29lcGEtdWktbGliL3NyYy9saWIvc2hvcHBpbmctY2FydC9zaG9wcGluZy1jYXJ0LXZpZXcvc2hvcHBpbmctY2FydC12aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29lcGEtdWktbGliL3NyYy9saWIvc2hvcHBpbmctY2FydC9zaG9wcGluZy1jYXJ0LXZpZXcvc2hvcHBpbmctY2FydC12aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFLbEQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sdURBQXVELENBQUM7Ozs7Ozs7QUFZbkcsTUFBTSxPQUFPLHlCQUF5QjtJQStCaEI7SUFDVjtJQUNBO0lBQ0E7SUFqQ1YsV0FBVyxDQUFTO0lBQ3BCLEtBQUssQ0FBUztJQUNkLFdBQVcsQ0FBUztJQUNwQixTQUFTLENBQVM7SUFDbEIsWUFBWSxDQUEyQjtJQUN2QyxLQUFLLEdBQUcsSUFBSSxDQUFDO0lBQ2IsT0FBTyxHQUFHLElBQUksQ0FBQztJQUNmLFlBQVksR0FBVyxFQUFFLENBQUM7SUFDMUIsU0FBUyxHQUFHLDhCQUE4QixDQUFDO0lBQzNDLGtCQUFrQixHQUFHLEtBQUssQ0FBQztJQUMzQixXQUFXLEdBQVcsaUJBQWlCLENBQUM7SUFDeEMsZUFBZSxDQUFTO0lBQ3hCLHVCQUF1QixDQUFTO0lBQ2hDLGFBQWEsQ0FBUztJQUN0QixvQkFBb0IsR0FBVyxFQUFFLENBQUM7SUFFbEMsU0FBUyxHQUFvQjtRQUMzQixPQUFPLEVBQUU7WUFDUCxFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUUsRUFBRSxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFB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SSxDQUFDLFlBQVksR0FBRyxtQkFBbUIsR0FBRyxHQUFHLENBQUM7Z0JBQ2hELENBQUM7YUFBQyxDQUFDLENBQUM7UUFDTixDQUFDO0lBQ0gsQ0FBQzt3R0FyTFUseUJBQXlCOzRGQUF6Qix5QkFBeUIsK0RDakJ0Qyw0NUNBOEJNOzs0RkRiTyx5QkFBeUI7a0JBTHJDLFNBQVM7K0JBQ0UseUJBQXlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlciwgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgU2hvcHBpbmdDYXJ0U2VydmljZSB9IGZyb20gJy4uL3Nob3BwaW5nLWNhcnQuc2VydmljZSc7XG5pbXBvcnQgeyBTaG9wcGluZ0NhcnRJdGVtLCBTaG9wcGluZ0NhcnQgfSBmcm9tICdAb2hpb2VwYS9vZXBhLWViaXotbGliJztcbmltcG9ydCB7IEJzTW9kYWxSZWYsIEJzTW9kYWxTZXJ2aWNlIH0gZnJvbSAnbmd4LWJvb3RzdHJhcC9tb2RhbCc7XG5pbXBvcnQgeyBDb25maXJtYXRpb25Nb2RhbENvbXBvbmVudCB9IGZyb20gJy4uLy4uL2NvbmZpcm1hdGlvbi1tb2RhbC9jb25maXJtYXRpb24tbW9kYWwuY29tcG9uZW50JztcbmltcG9ydCB7IFNob3BwaW5nQ2FydFZpZXdQYXJhbWV0ZXJzIH0gZnJvbSAnLi9zaG9wcGluZy1jYXJ0LXZpZXctcGFyYW1ldGVycyc7XG5pbXBvcnQgeyBPZXBhVGFibGVIZWFkZXIgfSBmcm9tICcuLi8uLi90YWJsZS9vZXBhLXRhYmxlLWhlYWRlcic7XG5pbXBvcnQgeyBPZXBhVGFibGVDZWxsQ2xpY2tFdmVudCB9IGZyb20gJy4uLy4uL3RhYmxlL29lcGEtdGFibGUtY2VsbC1jbGljay1ldmVudCc7XG5pbXBvcnQgeyBPZXBhVGFibGVDb25maWcgfSBmcm9tICcuLi8uLi90YWJsZS9vZXBhLXRhYmxlLWNvbmZpZyc7XG5pbXBvcnQgeyBPZXBhVGFibGVSb3cgfSBmcm9tICcuLi8uLi90YWJsZS9vZXBhLXRhYmxlLXJvdyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ29lcGEtc2hvcHBpbmctY2FydC12aWV3JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Nob3BwaW5nLWNhcnQtdmlldy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3Nob3BwaW5nLWNhcnQtdmlldy5jb21wb25lbnQuY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgU2hvcHBpbmdDYXJ0Vmlld0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHNlcnZpY2VOYW1lOiBzdHJpbmc7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIHJldHVybkxhYmVsOiBzdHJpbmc7XG4gIHJldHVyblVybDogc3RyaW5nO1xuICBzaG9wcGluZ0NhcnQ6IFNob3BwaW5nQ2FydCB8IHVuZGVmaW5lZDtcbiAgZW1wdHkgPSB0cnVlO1xuICBsb2FkaW5nID0gdHJ1ZTtcbiAgZXJyb3JNZXNzYWdlOiBzdHJpbmcgPSAnJztcbiAgaW1hZ2VSb290ID0gJy9Bbmd1bGFyV2ViQXBwL2Fzc2V0cy9pbWFnZXMnO1xuICBjaGVja091dEluUHJvZ3Jlc3MgPSBmYWxzZTtcbiAgdG90YWxDb2x1bW46IHN0cmluZyA9ICdpdGVtRGVzY3JpcHRpb24nO1xuICBpdGVtTnVtYmVyTGFiZWw6IHN0cmluZztcbiAgaXRlbUNsYXNzaWZpY2F0aW9uTGFiZWw6IHN0cmluZztcbiAgaXRlbU5hbWVMYWJlbDogc3RyaW5nO1xuICBpdGVtRGVzY3JpcHRpb25MYWJlbDogc3RyaW5nID0gJyc7XG5cbiAgdGJsSGVhZGVyOiBPZXBhVGFibGVIZWFkZXIgPSB7XG4gICAgY29sdW1uczogW1xuICAgICAgeyB0aXRsZTogJ1JlbW92ZSBJdGVtJywgaWQ6ICdkZWxldGVJdGVtJywgc29ydDogJ25vbmUnLCBoeXBlcmxpbms6IHRydWUsIGNsYXNzTmFtZTogJ29lcGEtdGFibGUtaGVhZGVyLWNlbnRlcicgfSxcbiAgICAgIHsgdGl0bGU6ICdGZWUnLCBpZDogJ2ZlZScsIHNvcnQ6ICdub25lJyB9LFxuICAgIF1cbiAgfTtcblxuICB0YmxDb25maWc6IE9lcGFUYWJsZUNvbmZpZyA9IHtcbiAgICBjbGFzc05hbWVzOiBbJ3RhYmxlLWJvcmRlcmVkJ10sXG4gICAgaGlkZUZvb3RlcjogdHJ1ZVxuICB9O1xuXG4gIHRibERhdGE6IEFycmF5PE9lcGFUYWJsZVJvdz4gPSBbXTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICAgIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgIHByaXZhdGUgbW9kYWxTZXJ2aWNlOiBCc01vZGFsU2VydmljZSwgXG4gICAgcHJpdmF0ZSBzaG9wcGluZ0NhcnRTZXJ2aWNlOiBTaG9wcGluZ0NhcnRTZXJ2aWNlKSB7XG4gICAgICBjb25zdCBwYXJhbXM6IFNob3BwaW5nQ2FydFZpZXdQYXJhbWV0ZXJzID0gPFNob3BwaW5nQ2FydFZpZXdQYXJhbWV0ZXJzPnJvdXRlLnNuYXBzaG90LmRhdGFbMF07XG4gICAgICB0aGlzLnNlcnZpY2VOYW1lID0gcGFyYW1zLnNlcnZpY2VOYW1lO1xuICAgICAgdGhpcy50aXRsZSA9IHBhcmFtcy50aXRsZTtcbiAgICAgIHRoaXMucmV0dXJuTGFiZWwgPSBwYXJhbXMucmV0dXJuTGFiZWw7XG4gICAgICB0aGlzLnJldHVyblVybCA9IHBhcmFtcy5yZXR1cm5Vcmw7XG4gICAgICB0aGlzLml0ZW1OdW1iZXJMYWJlbCA9IHBhcmFtcy5pdGVtTnVtYmVyTGFiZWw7XG4gICAgICB0aGlzLml0ZW1DbGFzc2lmaWNhdGlvbkxhYmVsID0gcGFyYW1zLml0ZW1DbGFzc2lmaWNhdGlvbkxhYmVsO1xuICAgICAgdGhpcy5pdGVtTmFtZUxhYmVsID0gcGFyYW1zLml0ZW1OYW1lTGFiZWw7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnVwZGF0ZUhlYWRlcnMoKTtcbiAgICB0aGlzLnJlZnJlc2goKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgaGVhZGVycyBiYXNlZCBvbiB0aGUgbGFiZWxzIGRlZmluZWQgZm9yIHRoaXMgc2hvcHBpbmcgY2FydFxuICAgKi9cbiAgcHJpdmF0ZSB1cGRhdGVIZWFkZXJzKCkge1xuICAgIC8vIHByb2Nlc3MgbGFiZWxzIGluIHJldmVyc2Ugb3JkZXIgc2luY2UgdW5zaGlmdCBwbGFjZXMgaXRlbSBhdCB0aGUgYmVnaW5uaW5nIG9mIHRoZSBhcnJheVxuICAgIGlmICh0aGlzLml0ZW1EZXNjcmlwdGlvbkxhYmVsKSB7XG4gICAgICB0aGlzLnRibEhlYWRlci5jb2x1bW5zLnVuc2hpZnQoeyB0aXRsZTogdGhpcy5pdGVtRGVzY3JpcHRpb25MYWJlbCwgaWQ6ICdpdGVtRGVzY3JpcHRpb24nLCBzb3J0OiAnbm9uZScgfSk7XG4gICAgICB0aGlzLnRvdGFsQ29sdW1uID0gJ2l0ZW1EZXNjcmlwdGlvbic7XG4gICAgfVxuICAgIGlmICh0aGlzLml0ZW1OYW1lTGFiZWwpIHtcbiAgICAgIHRoaXMudGJsSGVhZGVyLmNvbHVtbnMudW5zaGlmdCh7IHRpdGxlOiB0aGlzLml0ZW1OYW1lTGFiZWwsIGlkOiAnaXRlbU5hbWUnLCBzb3J0OiAnbm9uZScgfSk7XG4gICAgICB0aGlzLnRvdGFsQ29sdW1uID0gJ2l0ZW1OYW1lJztcbiAgICB9XG4gICAgaWYgKHRoaXMuaXRlbUNsYXNzaWZpY2F0aW9uTGFiZWwpIHtcbiAgICAgIHRoaXMudGJsSGVhZGVyLmNvbHVtbnMudW5zaGlmdCh7IHRpdGxlOiB0aGlzLml0ZW1DbGFzc2lmaWNhdGlvbkxhYmVsLCBpZDogJ2l0ZW1DbGFzc2lmaWNhdGlvbicsIHNvcnQ6ICdub25lJyB9KTtcbiAgICAgIHRoaXMudG90YWxDb2x1bW4gPSAnaXRlbUNsYXNzaWZpY2F0aW9uJztcbiAgICB9XG4gICAgaWYgKHRoaXMuaXRlbU51bWJlckxhYmVsKSB7XG4gICAgICB0aGlzLnRibEhlYWRlci5jb2x1bW5zLnVuc2hpZnQoeyB0aXRsZTogdGhpcy5pdGVtTnVtYmVyTGFiZWwsIGlkOiAnaXRlbU51bWJlcicsIHNvcnQ6ICdub25lJyB9KTtcbiAgICAgIHRoaXMudG90YWxDb2x1bW4gPSAnaXRlbU51bWJlcic7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSByZWZyZXNoKCkge1xuICAgIHRoaXMubG9hZGluZyA9IHRydWU7XG4gICAgdGhpcy5lcnJvck1lc3NhZ2UgPSAnJztcbiAgICB0aGlzLnNob3BwaW5nQ2FydFNlcnZpY2UucmV0cmlldmVTaG9wcGluZ0NhcnQodGhpcy5zZXJ2aWNlTmFtZSkuc3Vic2NyaWJlKHtcbiAgICAgIG5leHQ6IHNob3BwaW5nQ2FydCA9PiB7XG4gICAgICB0aGlzLnNob3BwaW5nQ2FydCA9IHNob3BwaW5nQ2FydDtcbiAgICAgIHRoaXMubG9hZFRhYmxlKCk7XG4gICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcbiAgICB9LCBlcnJvcjogZXJyID0+IHtcbiAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gJ0ZhaWxlZCByZXRyaWV2aW5nIHNob3BwaW5nIGNhcnQgZGF0YTogJyArIGVycjtcbiAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xuICAgIH19KTtcbiAgfVxuXG4gIHByaXZhdGUgbG9hZFRhYmxlKCkge1xuICAgIHRoaXMudGJsRGF0YSA9IFtdO1xuICAgIHRoaXMuZW1wdHkgPSB0cnVlO1xuICAgIGlmICh0aGlzLnNob3BwaW5nQ2FydCAmJiB0aGlzLnNob3BwaW5nQ2FydC5jYXJ0SXRlbXMpIHtcbiAgICAgIHRoaXMuc2hvcHBpbmdDYXJ0LmNhcnRJdGVtcy5mb3JFYWNoKGNhcnRJdGVtID0+IHtcbiAgICAgICAgdGhpcy5lbXB0eSA9IGZhbHNlO1xuICAgICAgICBsZXQgcm93ID0gdGhpcy5jb252ZXJ0Q2FydEl0ZW1Ub1RhYmxlUm93KGNhcnRJdGVtKTtcbiAgICAgICAgdGhpcy50YmxEYXRhLnB1c2gocm93KTtcbiAgICAgIH0pO1xuICAgICAgdGhpcy50YmxEYXRhLnB1c2goeyBjZWxscyA6IFsgXG4gICAgICAgIHtpZDogJ2l0ZW1OdW1iZXInLCB2YWx1ZTogKHRoaXMudG90YWxDb2x1bW4gPT09ICdpdGVtTnVtYmVyJyA/ICdUb3RhbCBBbW91bnQgRHVlOicgOiAnJyksIGNsYXNzTmFtZTonb2VwYS10YWJsZS1ncmF5IG9lcGEtdGFibGUtYm9sZCcgfSxcbiAgICAgICAge2lkOiAnaXRlbUNsYXNzaWZpY2F0aW9uJywgdmFsdWU6ICh0aGlzLnRvdGFsQ29sdW1uID09PSAnaXRlbUNsYXNzaWZpY2F0aW9uJyA/ICdUb3RhbCBBbW91bnQgRHVlOicgOiAnJyksIGNsYXNzTmFtZTonb2VwYS10YWJsZS1ncmF5IG9lcGEtdGFibGUtYm9sZCcgfSxcbiAgICAgICAge2lkOiAnaXRlbU5hbWUnLCB2YWx1ZTogKHRoaXMudG90YWxDb2x1bW4gPT09ICdpdGVtTmFtZScgPyAnVG90YWwgQW1vdW50IER1ZTonIDogJycpLCBjbGFzc05hbWU6J29lcGEtdGFibGUtZ3JheSBvZXBhLXRhYmxlLWJvbGQnIH0sXG4gICAgICAgIHtpZDogJ2l0ZW1EZXNjcmlwdGlvbicsIHZhbHVlOiAodGhpcy50b3RhbENvbHVtbiA9PT0gJ2l0ZW1EZXNjcmlwdGlvbicgPyAnVG90YWwgQW1vdW50IER1ZTonIDogJycpLCBjbGFzc05hbWU6J29lcGEtdGFibGUtZ3JheSBvZXBhLXRhYmxlLWJvbGQnIH0sXG4gICAgICAgIHtpZDonZGVsZXRlSXRlbScsIHZhbHVlOicnLGNsYXNzTmFtZTonb2VwYS10YWJsZS1ncmF5JyB9LFxuICAgICAgICB7aWQ6ICdmZWUnLCAgdmFsdWU6IHRoaXMuc2hvcHBpbmdDYXJ0Py50b3RhbEFtb3VudD8uZm9ybWF0dGVkU3RyaW5nLCBzb3J0VmFsdWU6IHRoaXMuc2hvcHBpbmdDYXJ0Py50b3RhbEFtb3VudD8uY2VudHMsIGljb25DbGFzc05hbWU6J29lcGEtdW5kZWxpbmUtY2VsbCcsIGNsYXNzTmFtZTonb2VwYS10YWJsZS1ncmF5IG9lcGEtdGFibGUtYm9sZCd9XG4gICAgICBdfSk7XG4gICAgICB0aGlzLnRibERhdGEgPSB0aGlzLnRibERhdGEuc2xpY2UoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGNvbnZlcnRDYXJ0SXRlbVRvVGFibGVSb3coY2FydEl0ZW06IFNob3BwaW5nQ2FydEl0ZW0pOiBPZXBhVGFibGVSb3cge1xuICAgIGxldCByb3c6IE9lcGFUYWJsZVJvdyA9IHtcbiAgICAgIGNlbGxzOiBbXG4gICAgICAgIHsgaWQ6ICdpdGVtTnVtYmVyJywgdmFsdWU6IGNhcnRJdGVtLml0ZW1OdW1iZXIgfSxcbiAgICAgICAgeyBpZDogJ2l0ZW1DbGFzc2lmaWNhdGlvbicsIHZhbHVlOiBjYXJ0SXRlbS5pdGVtQ2xhc3NpZmljYXRpb24gfSxcbiAgICAgICAgeyBpZDogJ2l0ZW1OYW1lJywgdmFsdWU6IGNhcnRJdGVtLml0ZW1OYW1lIH0sXG4gICAgICAgIHsgaWQ6ICdpdGVtRGVzY3JpcHRpb24nLCB2YWx1ZTogY2FydEl0ZW0uZGVzY3JpcHRpb24gfSxcbiAgICAgICAgeyBpZDogJ2RlbGV0ZUl0ZW0nLCB2YWx1ZTogJycsIGljb25DbGFzc05hbWU6ICdiaSBiaS1kYXNoLWNpcmNsZS1maWxsJywgY2xhc3NOYW1lOiAndGV4dC1jZW50ZXInIH0sXG4gICAgICAgIHsgaWQ6ICdmZWUnLCB2YWx1ZTogY2FydEl0ZW0udW5pdFByaWNlPy5mb3JtYXR0ZWRTdHJpbmcsIHNvcnRWYWx1ZTogY2FydEl0ZW0udW5pdFByaWNlPy5jZW50cyB9LFxuICAgICAgXSxcbiAgICAgIGRhdGFTb3VyY2U6IGNhcnRJdGVtXG4gICAgfVxuICAgIHJldHVybiByb3c7XG4gIH1cblxuICBvbkNlbGxDbGljayhldmVudDogT2VwYVRhYmxlQ2VsbENsaWNrRXZlbnQpIHtcbiAgICBpZiAoZXZlbnQuY29sdW1uSWQgPT09ICdkZWxldGVJdGVtJykge1xuICAgICAgdGhpcy5kZWxldGVGcm9tQ2FydChldmVudC5yb3cuZGF0YVNvdXJjZS50eXBlSUQsIGV2ZW50LnJvdy5kYXRhU291cmNlLmRlc2NyaXB0aW9uLCB0aGlzLnNob3BwaW5nQ2FydCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBkZWxldGVGcm9tQ2FydChpZDogc3RyaW5nLCBkZXNjcmlwdGlvbjogc3RyaW5nLCBjYXJ0OiBTaG9wcGluZ0NhcnQgfCB1bmRlZmluZWQpIHtcbiAgICBjb25zdCBtb2RhbDogQnNNb2RhbFJlZiA9IHRoaXMubW9kYWxTZXJ2aWNlLnNob3coQ29uZmlybWF0aW9uTW9kYWxDb21wb25lbnQsIHsgaWdub3JlQmFja2Ryb3BDbGljazogdHJ1ZSB9KTtcbiAgICAoPENvbmZpcm1hdGlvbk1vZGFsQ29tcG9uZW50Pm1vZGFsLmNvbnRlbnQpLmhlYWRlclRleHQgPSAnUmVtb3ZlIGl0ZW0gZnJvbSBjYXJ0Pyc7XG4gICAgKDxDb25maXJtYXRpb25Nb2RhbENvbXBvbmVudD5tb2RhbC5jb250ZW50KS5ib2R5VGV4dCA9ICdBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gcmVtb3ZlICcgKyBkZXNjcmlwdGlvbiArICAnIGZyb20gdGhlIHNob3BwaW5nIGNhcnQ/JztcbiAgICAoPENvbmZpcm1hdGlvbk1vZGFsQ29tcG9uZW50Pm1vZGFsLmNvbnRlbnQpLmNvbmZpcm1CdG5MYWJlbCA9ICdZZXMnO1xuICAgICg8Q29uZmlybWF0aW9uTW9kYWxDb21wb25lbnQ+bW9kYWwuY29udGVudCkuY2FuY2VsQnRuTGFiZWwgPSAnTm8nO1xuICAgICg8Q29uZmlybWF0aW9uTW9kYWxDb21wb25lbnQ+bW9kYWwuY29udGVudCkuY29uZmlybUNsaWNrZWQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuZGVsZXRlSXRlbUZyb21DYXJ0KGlkLCBjYXJ0KTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZGVsZXRlSXRlbUZyb21DYXJ0KGlkOiBzdHJpbmcsIGNhcnQ6IFNob3BwaW5nQ2FydCB8IHVuZGVmaW5lZCkge1xuICAgIGlmIChjYXJ0KSB7XG4gICAgICB0aGlzLnNob3BwaW5nQ2FydFNlcnZpY2UucmVtb3ZlU2hvcHBpbmdDYXJ0SXRlbShpZCwgY2FydCkuc3Vic2NyaWJlKHtcbiAgICAgICAgbmV4dDogdXBkYXRlZENhcnQgPT4ge1xuICAgICAgICB0aGlzLnNob3BwaW5nQ2FydCA9IHVwZGF0ZWRDYXJ0O1xuICAgICAgICB0aGlzLmxvYWRUYWJsZSgpO1xuICAgICAgfSwgZXJyb3I6IGVyciA9PiB7XG4gICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gJ0ZhaWxlZCByZW1vdmluZyBpdGVtIGZyb20gY2FydDogJyArIGVycjtcbiAgICAgIH19KTtcbiAgICB9XG4gIH1cblxuICBnb0JhY2soKSB7XG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW3RoaXMucmV0dXJuVXJsXSwgeyByZWxhdGl2ZVRvOiB0aGlzLnJvdXRlLnBhcmVudCB9KTtcbiAgfVxuXG4gIHB1YmxpYyBvbkNoZWNrb3V0KCkge1xuICAgIGNvbnN0IG1vZGFsOiBCc01vZGFsUmVmID0gdGhpcy5tb2RhbFNlcnZpY2Uuc2hvdyhDb25maXJtYXRpb25Nb2RhbENvbXBvbmVudCwgeyBpZ25vcmVCYWNrZHJvcENsaWNrOiB0cnVlIH0pO1xuICAgICg8Q29uZmlybWF0aW9uTW9kYWxDb21wb25lbnQ+bW9kYWwuY29udGVudCkuaGVhZGVyVGV4dCA9ICdDaGVja291dCc7XG4gICAgKDxDb25maXJtYXRpb25Nb2RhbENvbXBvbmVudD5tb2RhbC5jb250ZW50KS5ib2R5VGV4dCA9ICdEbyB5b3Ugd2FudCB0byBzdWJtaXQgYWxsIG9mIHRoZSBhcHBsaWNhdGlvbnMgaW4gdGhlIHNob3BwaW5nIGNhcnQ/JztcbiAgICAoPENvbmZpcm1hdGlvbk1vZGFsQ29tcG9uZW50Pm1vZGFsLmNvbnRlbnQpLmNvbmZpcm1CdG5MYWJlbCA9ICdZZXMnO1xuICAgICg8Q29uZmlybWF0aW9uTW9kYWxDb21wb25lbnQ+bW9kYWwuY29udGVudCkuY2FuY2VsQnRuTGFiZWwgPSAnTm8nO1xuICAgICg8Q29uZmlybWF0aW9uTW9kYWxDb21wb25lbnQ+bW9kYWwuY29udGVudCkuY29uZmlybUNsaWNrZWQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuY2hlY2tvdXQoKTtcbiAgICB9KTtcbiAgfVxuXG4gIGNoZWNrb3V0KCkge1xuICAgIGlmICh0aGlzLnNob3BwaW5nQ2FydCkge1xuICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSAnJztcbiAgICAgIHRoaXMuY2hlY2tPdXRJblByb2dyZXNzID0gdHJ1ZTtcbiAgICAgIHRoaXMuc2hvcHBpbmdDYXJ0U2VydmljZS5jaGVja091dCh0aGlzLnNob3BwaW5nQ2FydCkuc3Vic2NyaWJlKHtcbiAgICAgICAgbmV4dDogdHJhbnNhY3Rpb25JRCA9PiB7XG4gICAgICAgIC8vIG5hdmlnYXRlIHRvIENCT1NTIHBheW1lbnQgc2NyZWVuXG4gICAgICAgIGNvbnN0IGViaXpSb290VVJMID0gdGhpcy5zaG9wcGluZ0NhcnRTZXJ2aWNlLmdldEViaXpSb290VVJMKCk7XG4gICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gZWJpelJvb3RVUkwgKyAnL3BvcnRhbC9wYXltZW50U3VibWlzc2lvbkFjdGlvbi5wbz90cmFuc2FjdGlvbklEPScgKyB0cmFuc2FjdGlvbklEO1xuICAgICAgfSwgZXJyb3I6IGVyciA9PiB7XG4gICAgICAgIHRoaXMuY2hlY2tPdXRJblByb2dyZXNzID0gZmFsc2U7XG4gICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gJ0NoZWNrb3V0IGZhaWxlZDogJyArIGVycjtcbiAgICAgIH19KTtcbiAgICB9XG4gIH1cblxufVxuIiwiPGRpdiBjbGFzcz1cImNvbnRhaW5lci1mbHVpZFwiPlxuICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiIGNvbC1zbS0xMlwiPlxuICAgICAgICAgIDxoMj48Yj57e3RpdGxlfX08L2I+PC9oMj5cbiAgICAgICAgPC9kaXY+XG4gICAgPGRpdiAqbmdJZj1cImxvYWRpbmcgfHwgZW1wdHlcIiBjbGFzcz1cImNvbC1zbS0xMiB0ZXh0LWNlbnRlclwiPlxuICAgICAgPGRpdiBjbGFzcz1cIiBhbGVydCBhbGVydC1pbmZvIFwiPlxuICAgICAgICA8aDM+PGVtPnt7IGxvYWRpbmcgPyAnTG9hZGluZy4uLicgOiAnQ2FydCBpcyBlbXB0eScgfX08L2VtPjwvaDM+XG4gICAgICAgIDxpbWcgKm5nSWY9XCJsb2FkaW5nXCIgY2xhc3M9XCJvZXBhLWljb25cIiBzcmM9XCJ7e2ltYWdlUm9vdH19L2JsdWUtbG9hZC5naWZcIiAvPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiAqbmdJZj1cIiFsb2FkaW5nICYmICFlbXB0eVwiIGNsYXNzPVwiY29sLXNtLTEyXCI+XG4gICAgICA8b2VwYS10YWJsZSBbY29uZmlnXT1cInRibENvbmZpZ1wiIFtkYXRhXT1cInRibERhdGFcIiBbaGVhZGVyXT1cInRibEhlYWRlclwiIHRhYmxlSWQ9XCJTaG9wcGluZ0NhcnRUYWJsZVwiIChjZWxsQ2xpY2tlZCk9XCJvbkNlbGxDbGljaygkZXZlbnQpXCI+PC9vZXBhLXRhYmxlPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgKm5nSWY9XCJlcnJvck1lc3NhZ2VcIiBjbGFzcz1cImNvbC1zbS0xMlwiPlxuICAgICAgPGRpdiBjbGFzcz1cImFsZXJ0IGFsZXJ0LWRhbmdlclwiPnt7ZXJyb3JNZXNzYWdlfX08L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2ICpuZ0lmPVwiIWNoZWNrT3V0SW5Qcm9ncmVzc1wiIGNsYXNzPVwiY29sLTEyIHRleHQtY2VudGVyXCI+XG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLXByaW1hcnkgbXItMlwiIGlkPVwicmV0dXJuVG9QYWdlQnV0dG9uXCIgKGNsaWNrKT1cImdvQmFjaygpXCI+XG4gICAgICAgICAge3tyZXR1cm5MYWJlbH19PC9idXR0b24+XG4gICAgICAgIDxidXR0b24gKm5nSWY9XCIhZW1wdHlcIiBjbGFzcz1cImJ0biBidG4tcHJpbWFyeSBtci0yXCIgaWQ9XCJjaGVja291dEJ0blwiIChjbGljayk9XCJvbkNoZWNrb3V0KClcIj5cbiAgICAgICAgICBDaGVja291dDwvYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiY2hlY2tPdXRJblByb2dyZXNzXCIgY2xhc3M9XCJjb2wtMTIgdGV4dC1jZW50ZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImFsZXJ0IGFsZXJ0LWluZm9cIj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInNwaW5uZXItYm9yZGVyIHRleHQtcHJpbWFyeVwiIHJvbGU9XCJzdGF0dXNcIj48L3NwYW4+XG4gICAgICAgICAgQ2hlY2tpbmcgb3V0Li4uXG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+Il19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2VwYS10YWJsZS1wb3BvdmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb2VwYS11aS1saWIvc3JjL2xpYi90YWJsZS9vZXBhLXRhYmxlLXBvcG92ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9lcGFUZW1wbGF0ZUluZm8gfSBmcm9tICdAb2hpb2VwYS9vZXBhLWNvbW1vbi1saWInO1xuLyoqXG4gKiBJbnRlcmZhY2UgZGVmaW5pbmcgdGhlIHBvcG92ZXIgaW5mb3JtYXRpb24gdGhhdCBtYXkgYmUgcGFydCBvZlxuICogYW4gT2VwYVRhYmxlQ2VsbC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBPZXBhVGFibGVQb3BvdmVyIHtcbiAgICAvKipcbiAgICAgKiBQb3BvdmVyIHRpdGxlLlxuICAgICAqL1xuICAgIHRpdGxlOiBzdHJpbmc7XG4gICAgLyoqXG4gICAgICogQ29udGVudCBvZiB0aGUgcG9wb3Zlci4gTXVzdCBiZSBhIGNvbXBvbmVudC5cbiAgICAgKi9cbiAgICBjb250ZW50OiBPZXBhVGVtcGxhdGVJbmZvO1xuICAgIC8qKlxuICAgICAqIFRoZSBjc3MgY2xhc3MgbmFtZSBkZWZpbmluZyB0aGUgaWNvbiBkaXNwbGF5ZWQgaW4gdGhlIHRhYmxlIChlLmcuIFwiYmkgYmktYXN0ZXJpc2tcIikuXG4gICAgICogVGhlIHBvcG92ZXIgaXMgZGlzcGxheWVkIHdoZW4gdGhlIHVzZXIgaG92ZXJzIG92ZXIgdGhlIGljb24uXG4gICAgICovXG4gICAgY2xhc3NOYW1lOiBzdHJpbmc7XG4gICAgLyoqXG4gICAgICogVGhlIGNzcyBjbGFzcyBzdHlsaW5nIHRoZSBwb3BvdmVyIGNvbnRhaW5lci5cbiAgICAgKi9cbiAgICBjb250YWluZXJDbGFzczogc3RyaW5nO1xuICAgIC8qKlxuICAgICAqIFNwZWNpZnkgdGhlIHRyaWdnZXIgZm9yIHRoZSBwb3BvdmVyLiBEZWZhdWx0IGlzICdtb3VzZWVudGVyOm1vdXNlbGVhdmUnXG4gICAgICovXG4gICAgdHJpZ2dlcj86IHN0cmluZztcbn1cbiJdfQ==
|