@provoly/hypervisor 0.0.102 → 0.0.103
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/src/lib/event/detail/event-detail.component.mjs +3 -3
- package/esm2022/src/lib/event/list/event-list.component.mjs +9 -6
- package/esm2022/src/lib/general/procedure-actions/procedure-actions.component.mjs +3 -3
- package/esm2022/src/lib/hypervisor.module.mjs +7 -4
- package/fesm2022/provoly-hypervisor.mjs +18 -12
- package/fesm2022/provoly-hypervisor.mjs.map +1 -1
- package/package.json +1 -1
- package/src/lib/event/list/event-list.component.d.ts +3 -3
- package/src/lib/hypervisor.module.d.ts +1 -1
- package/styles/components/_o-hvy-events-table.scss +8 -0
|
@@ -29,7 +29,7 @@ export class EventListComponent extends SubscriptionnerDirective {
|
|
|
29
29
|
this.EVENT_LINK = EVENT_LINK;
|
|
30
30
|
this._store = this.store;
|
|
31
31
|
this._inhibit = true;
|
|
32
|
-
this.
|
|
32
|
+
this.disableGotoDetail = false;
|
|
33
33
|
this.Math = Math;
|
|
34
34
|
this.store.dispatch(EventActions.load({}));
|
|
35
35
|
this.events$ = this.store.select(EventSelectors.events);
|
|
@@ -60,15 +60,18 @@ export class EventListComponent extends SubscriptionnerDirective {
|
|
|
60
60
|
setTimeout(() => (this._inhibit = false), 100);
|
|
61
61
|
}
|
|
62
62
|
goTo(event) {
|
|
63
|
-
|
|
63
|
+
if (!this.disableGotoDetail) {
|
|
64
|
+
return this.router.navigate(this.EVENT_LINK.fn(event, this.store));
|
|
65
|
+
}
|
|
66
|
+
return;
|
|
64
67
|
}
|
|
65
68
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: EventListComponent, deps: [{ token: i1.Store }, { token: i0.ElementRef }, { token: i2.Router }, { token: i3.InfiniteScrollService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
66
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.4", type: EventListComponent, selector: "hvy-event-list", inputs: {
|
|
69
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.4", type: EventListComponent, selector: "hvy-event-list", inputs: { disableGotoDetail: "disableGotoDetail" }, usesInheritance: true, ngImport: i0, template: "<table class=\"o-hvy-events-table\">\n <thead>\n <tr class=\"o-hvy-events-table__header\">\n <th class=\"-checkbox\">\n <pry-checkbox [ngModel]=\"allSelected$ | async\" (ngModelChange)=\"selectAll($event)\"></pry-checkbox>\n </th>\n <th>{{ '@hvy.event.criticality.name' | i18n }}</th>\n <th>{{ '@hvy.event.name' | i18n }}</th>\n <th>\n <hvy-event-column-order field=\"status\">{{ '@hvy.event.status.name' | i18n }}</hvy-event-column-order>\n </th>\n <th>\n <hvy-event-column-order field=\"procedureProgress\"\n >{{ '@hvy.procedure.progress' | i18n }}\n </hvy-event-column-order>\n </th>\n <th>{{ '@hvy.event.category.name' | i18n }}</th>\n <th>\n <hvy-event-column-order field=\"lastModificationDate\"\n >{{ '@hvy.event.lastModificationDate' | i18n }}\n </hvy-event-column-order>\n </th>\n <th></th>\n </tr>\n </thead>\n <tbody>\n @for (event of events$ | async; track event.id) {\n <tr class=\"o-hvy-events-table__line\" [class.-nogo]=\"disableGotoDetail\" (click)=\"goTo(event)\">\n <td class=\"o-hvy-events-table__line__cell\">\n <pry-checkbox\n [ngModel]=\"(selectedIds$ | async)!.includes(event.id)\"\n (click)=\"select(event, $event)\"\n ></pry-checkbox>\n </td>\n <td class=\"o-hvy-events-table__line__cell -centered\">\n <hvy-icon-display [event]=\"event\"></hvy-icon-display>\n </td>\n <td class=\"o-hvy-events-table__line__cell\">\n <div class=\"o-hvy-events-table__line__cell__name__main\">{{ event.name }}</div>\n <div class=\"o-hvy-events-table__line__cell__name__sub\">\n {{ event.equipment?.name ? event.equipment?.name : '' }}\n </div>\n <div class=\"o-hvy-events-table__line__cell__name__subsub\">\n {{ event.address }}\n </div>\n </td>\n <td class=\"o-hvy-events-table__line__cell -centered\">\n <hvy-status-display [item]=\"event\"></hvy-status-display>\n </td>\n <td class=\"o-hvy-events-table__line__cell -centered\">{{ event.procedureProgress }} %</td>\n <td class=\"o-hvy-events-table__line__cell\">\n <div class=\"o-hvy-events-table__line__cell__name__main\">\n {{ '@hvy.event.category.' + event.category | i18n }}\n </div>\n @if (event.subCategory) {\n <div class=\"o-hvy-events-table__line__cell__name__sub\">\n {{ '@hvy.event.subCategory.' + event.subCategory | i18n }}\n </div>\n }\n </td>\n <td class=\"o-hvy-events-table__line__cell\">\n {{ event.lastModificationDate | displayLocaleDatetime }}\n </td>\n <td class=\"o-hvy-events-table__line__cell\">\n @if (!disableGotoDetail) {\n <a\n [routerLink]=\"EVENT_LINK.fn(event, _store)\"\n [title]=\"\n '@hvy.event.consult'\n | i18n: { howMany: Math.max(1, event.linkedEvents), plural: event.linkedEvents > 1 ? 's' : '' }\n \"\n >\n <div class=\"consult-link\">\n <pry-icon iconSvg=\"eye\" [height]=\"30\" [width]=\"40\"></pry-icon>\n @if (event.linkedEvents > 1) {\n <div class=\"indicator-badge\">{{ event.linkedEvents }}</div>\n }\n </div>\n </a>\n }\n </td>\n </tr>\n } @empty {\n <tr>\n <td class=\"o-hvy-events-table__empty\" colspan=\"50\">\n <div>{{ '@hvy.event.log.empty' | i18n }}</div>\n <div>\n <ng-content></ng-content>\n </div>\n </td>\n </tr>\n }\n </tbody>\n</table>\n", dependencies: [{ kind: "component", type: i4.PryCheckboxComponent, selector: "pry-checkbox", inputs: ["circle", "name", "inputId", "inhibit"] }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i6.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "component", type: i7.EventColumnOrderComponent, selector: "hvy-event-column-order" }, { kind: "component", type: i8.IconDisplayComponent, selector: "hvy-icon-display", inputs: ["event"] }, { kind: "component", type: i9.StatusDisplayComponent, selector: "hvy-status-display", inputs: ["type", "readonly", "item", "modifiable"], outputs: ["modified"] }, { kind: "pipe", type: i10.AsyncPipe, name: "async" }, { kind: "pipe", type: i6.I18nPipe, name: "i18n" }, { kind: "pipe", type: i11.DisplayLocaleDateTime, name: "displayLocaleDatetime" }] }); }
|
|
67
70
|
}
|
|
68
71
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: EventListComponent, decorators: [{
|
|
69
72
|
type: Component,
|
|
70
|
-
args: [{ selector: 'hvy-event-list', template: "<table class=\"o-hvy-events-table\">\n <thead>\n <tr class=\"o-hvy-events-table__header\">\n <th class=\"-checkbox\">\n <pry-checkbox [ngModel]=\"allSelected$ | async\" (ngModelChange)=\"selectAll($event)\"></pry-checkbox>\n </th>\n <th>{{ '@hvy.event.criticality.name' | i18n }}</th>\n <th>{{ '@hvy.event.name' | i18n }}</th>\n <th>\n <hvy-event-column-order field=\"status\">{{ '@hvy.event.status.name' | i18n }}</hvy-event-column-order>\n </th>\n <th>\n <hvy-event-column-order field=\"procedureProgress\"\n >{{ '@hvy.procedure.progress' | i18n }}\n </hvy-event-column-order>\n </th>\n <th>{{ '@hvy.event.category.name' | i18n }}</th>\n <th>\n <hvy-event-column-order field=\"lastModificationDate\"\n >{{ '@hvy.event.lastModificationDate' | i18n }}\n </hvy-event-column-order>\n </th>\n <th></th>\n </tr>\n </thead>\n <tbody>\n @for (event of events$ | async; track event.id) {\n <tr class=\"o-hvy-events-table__line\" (click)=\"goTo(event)\">\n <td class=\"o-hvy-events-table__line__cell\">\n <pry-checkbox\n [ngModel]=\"(selectedIds$ | async)!.includes(event.id)\"\n (click)=\"select(event, $event)\"\n ></pry-checkbox>\n </td>\n <td class=\"o-hvy-events-table__line__cell -centered\">\n <hvy-icon-display [event]=\"event\"></hvy-icon-display>\n </td>\n <td class=\"o-hvy-events-table__line__cell\">\n <div class=\"o-hvy-events-table__line__cell__name__main\">{{ event.name }}</div>\n <div class=\"o-hvy-events-table__line__cell__name__sub\">\n {{ event.equipment?.name ? event.equipment?.name : '' }}\n </div>\n <div class=\"o-hvy-events-table__line__cell__name__subsub\">\n {{ event.address }}\n </div>\n </td>\n <td class=\"o-hvy-events-table__line__cell -centered\">\n <hvy-status-display [item]=\"event\"></hvy-status-display>\n </td>\n <td class=\"o-hvy-events-table__line__cell -centered\">{{ event.procedureProgress }} %</td>\n <td class=\"o-hvy-events-table__line__cell\">\n <div class=\"o-hvy-events-table__line__cell__name__main\">\n {{ '@hvy.event.category.' + event.category | i18n }}\n </div>\n @if (event.subCategory) {\n <div class=\"o-hvy-events-table__line__cell__name__sub\">\n {{ '@hvy.event.subCategory.' + event.subCategory | i18n }}\n </div>\n }\n </td>\n <td class=\"o-hvy-events-table__line__cell\">\n {{ event.lastModificationDate | displayLocaleDatetime }}\n </td>\n <td class=\"o-hvy-events-table__line__cell\">\n <a\n
|
|
71
|
-
}], ctorParameters: () => [{ type: i1.Store }, { type: i0.ElementRef }, { type: i2.Router }, { type: i3.InfiniteScrollService }], propDecorators: {
|
|
73
|
+
args: [{ selector: 'hvy-event-list', template: "<table class=\"o-hvy-events-table\">\n <thead>\n <tr class=\"o-hvy-events-table__header\">\n <th class=\"-checkbox\">\n <pry-checkbox [ngModel]=\"allSelected$ | async\" (ngModelChange)=\"selectAll($event)\"></pry-checkbox>\n </th>\n <th>{{ '@hvy.event.criticality.name' | i18n }}</th>\n <th>{{ '@hvy.event.name' | i18n }}</th>\n <th>\n <hvy-event-column-order field=\"status\">{{ '@hvy.event.status.name' | i18n }}</hvy-event-column-order>\n </th>\n <th>\n <hvy-event-column-order field=\"procedureProgress\"\n >{{ '@hvy.procedure.progress' | i18n }}\n </hvy-event-column-order>\n </th>\n <th>{{ '@hvy.event.category.name' | i18n }}</th>\n <th>\n <hvy-event-column-order field=\"lastModificationDate\"\n >{{ '@hvy.event.lastModificationDate' | i18n }}\n </hvy-event-column-order>\n </th>\n <th></th>\n </tr>\n </thead>\n <tbody>\n @for (event of events$ | async; track event.id) {\n <tr class=\"o-hvy-events-table__line\" [class.-nogo]=\"disableGotoDetail\" (click)=\"goTo(event)\">\n <td class=\"o-hvy-events-table__line__cell\">\n <pry-checkbox\n [ngModel]=\"(selectedIds$ | async)!.includes(event.id)\"\n (click)=\"select(event, $event)\"\n ></pry-checkbox>\n </td>\n <td class=\"o-hvy-events-table__line__cell -centered\">\n <hvy-icon-display [event]=\"event\"></hvy-icon-display>\n </td>\n <td class=\"o-hvy-events-table__line__cell\">\n <div class=\"o-hvy-events-table__line__cell__name__main\">{{ event.name }}</div>\n <div class=\"o-hvy-events-table__line__cell__name__sub\">\n {{ event.equipment?.name ? event.equipment?.name : '' }}\n </div>\n <div class=\"o-hvy-events-table__line__cell__name__subsub\">\n {{ event.address }}\n </div>\n </td>\n <td class=\"o-hvy-events-table__line__cell -centered\">\n <hvy-status-display [item]=\"event\"></hvy-status-display>\n </td>\n <td class=\"o-hvy-events-table__line__cell -centered\">{{ event.procedureProgress }} %</td>\n <td class=\"o-hvy-events-table__line__cell\">\n <div class=\"o-hvy-events-table__line__cell__name__main\">\n {{ '@hvy.event.category.' + event.category | i18n }}\n </div>\n @if (event.subCategory) {\n <div class=\"o-hvy-events-table__line__cell__name__sub\">\n {{ '@hvy.event.subCategory.' + event.subCategory | i18n }}\n </div>\n }\n </td>\n <td class=\"o-hvy-events-table__line__cell\">\n {{ event.lastModificationDate | displayLocaleDatetime }}\n </td>\n <td class=\"o-hvy-events-table__line__cell\">\n @if (!disableGotoDetail) {\n <a\n [routerLink]=\"EVENT_LINK.fn(event, _store)\"\n [title]=\"\n '@hvy.event.consult'\n | i18n: { howMany: Math.max(1, event.linkedEvents), plural: event.linkedEvents > 1 ? 's' : '' }\n \"\n >\n <div class=\"consult-link\">\n <pry-icon iconSvg=\"eye\" [height]=\"30\" [width]=\"40\"></pry-icon>\n @if (event.linkedEvents > 1) {\n <div class=\"indicator-badge\">{{ event.linkedEvents }}</div>\n }\n </div>\n </a>\n }\n </td>\n </tr>\n } @empty {\n <tr>\n <td class=\"o-hvy-events-table__empty\" colspan=\"50\">\n <div>{{ '@hvy.event.log.empty' | i18n }}</div>\n <div>\n <ng-content></ng-content>\n </div>\n </td>\n </tr>\n }\n </tbody>\n</table>\n" }]
|
|
74
|
+
}], ctorParameters: () => [{ type: i1.Store }, { type: i0.ElementRef }, { type: i2.Router }, { type: i3.InfiniteScrollService }], propDecorators: { disableGotoDetail: [{
|
|
72
75
|
type: Input
|
|
73
76
|
}] } });
|
|
74
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQtbGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2h5cGVydmlzb3Ivc3JjL2xpYi9ldmVudC9saXN0L2V2ZW50LWxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9oeXBlcnZpc29yL3NyYy9saWIvZXZlbnQvbGlzdC9ldmVudC1saXN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsU0FBUyxFQUFjLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU1RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDL0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxhQUFhLEVBQUUsR0FBRyxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBQ3RELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBSzlELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7Ozs7Ozs7Ozs7OztBQUV0RCxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUc7SUFDeEIsRUFBRSxFQUFFLENBQUMsS0FBd0MsRUFBRSxLQUFpQixFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztDQUNoRyxDQUFDO0FBTUYsTUFBTSxPQUFPLGtCQUFtQixTQUFRLHdCQUF3QjtJQVM5RCxZQUNVLEtBQWlCLEVBQ2pCLEVBQWMsRUFDZCxNQUFjLEVBQ2QsTUFBNkI7UUFFckMsS0FBSyxFQUFFLENBQUM7UUFMQSxVQUFLLEdBQUwsS0FBSyxDQUFZO1FBQ2pCLE9BQUUsR0FBRixFQUFFLENBQVk7UUFDZCxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsV0FBTSxHQUFOLE1BQU0sQ0FBdUI7UUFWdkMsZUFBVSxHQUFHLFVBQVUsQ0FBQztRQUN4QixXQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUVwQixhQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ1AsYUFBUSxHQUFHLEtBQUssQ0FBQztRQW9EUCxTQUFJLEdBQUcsSUFBSSxDQUFDO1FBM0M3QixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDM0MsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDeEQsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDbEUsSUFBSSxDQUFDLFlBQVksR0FBRyxhQUFhLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDdkUsR0FBRyxDQUNELENBQUMsQ0FBQyxNQUFNLEVBQUUsV0FBVyxDQUFDLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUNqSCxDQUNGLENBQUM7SUFDSixDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUNwQixJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxjQUFjLENBQUMsWUFBWSxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUN6RixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztRQUN6RCxDQUFDLENBQUMsQ0FDSCxDQUFDO1FBQ0YsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7SUFDeEIsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUFzQixFQUFFLE1BQWtCO1FBQy9DLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNoRixNQUFNLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDeEIsTUFBTSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRCxTQUFTLENBQUMsTUFBVztRQUNuQixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ25CLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7Z0JBQy9DLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsRUFBRSxHQUFHLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUM5RyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQzdDLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUNILENBQUM7SUFFRCxPQUFPO1FBQ0wsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7UUFDckIsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQsSUFBSSxDQUFDLEtBQXNCO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7OEdBekRVLGtCQUFrQjtrR0FBbEIsa0JBQWtCLCtHQ3BCL0Isd21IQTRGQTs7MkZEeEVhLGtCQUFrQjtrQkFKOUIsU0FBUzsrQkFDRSxnQkFBZ0I7NEpBVWpCLFFBQVE7c0JBQWhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IEV2ZW50QWN0aW9ucyB9IGZyb20gJy4uLy4uL3N0b3JlL2V2ZW50L2V2ZW50LmFjdGlvbnMnO1xuaW1wb3J0IHsgRXZlbnRTZWxlY3RvcnMgfSBmcm9tICcuLi8uLi9zdG9yZS9ldmVudC9ldmVudC5zZWxlY3RvcnMnO1xuaW1wb3J0IHsgY29tYmluZUxhdGVzdCwgbWFwLCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb25uZXJEaXJlY3RpdmUgfSBmcm9tICdAcHJvdm9seS9kYXNoYm9hcmQnO1xuaW1wb3J0IHsgSHlwRXZlbnREZXRhaWxzIH0gZnJvbSAnLi4vLi4vbW9kZWwvZXZlbnQvaHlwLWV2ZW50LWRldGFpbC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgSHlwRXZlbnRTdW1tYXJ5IH0gZnJvbSAnLi4vLi4vbW9kZWwvZXZlbnQvaHlwLWV2ZW50LXN1bW1hcnkuaW50ZXJmYWNlJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBJbmZpbml0ZVNjcm9sbFNlcnZpY2UgfSBmcm9tICcuLi8uLi9nZW5lcmFsL2luZmluaXRlU2Nyb2xsLnNlcnZpY2UnO1xuaW1wb3J0IHsgcGFkSWQgfSBmcm9tICcuLi8uLi9nZW5lcmFsL3BhZC1pZC5mdW5jdGlvbic7XG5cbmV4cG9ydCBjb25zdCBFVkVOVF9MSU5LID0ge1xuICBmbjogKGV2ZW50OiBIeXBFdmVudERldGFpbHMgfCBIeXBFdmVudFN1bW1hcnksIHN0b3JlOiBTdG9yZTxhbnk+KSA9PiBbJy4vJywgcGFkSWQuZm4oZXZlbnQuaWQpXVxufTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaHZ5LWV2ZW50LWxpc3QnLFxuICB0ZW1wbGF0ZVVybDogJy4vZXZlbnQtbGlzdC5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgRXZlbnRMaXN0Q29tcG9uZW50IGV4dGVuZHMgU3Vic2NyaXB0aW9ubmVyRGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gIGV2ZW50cyQ6IE9ic2VydmFibGU8SHlwRXZlbnREZXRhaWxzW10+O1xuICBzZWxlY3RlZElkcyQ6IE9ic2VydmFibGU8bnVtYmVyW10+O1xuICBFVkVOVF9MSU5LID0gRVZFTlRfTElOSztcbiAgX3N0b3JlID0gdGhpcy5zdG9yZTtcbiAgYWxsU2VsZWN0ZWQkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICBfaW5oaWJpdCA9IHRydWU7XG4gIEBJbnB1dCgpIHJlYWRvbmx5ID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBzdG9yZTogU3RvcmU8YW55PixcbiAgICBwcml2YXRlIGVsOiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXG4gICAgcHJpdmF0ZSBzY3JvbGw6IEluZmluaXRlU2Nyb2xsU2VydmljZVxuICApIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goRXZlbnRBY3Rpb25zLmxvYWQoe30pKTtcbiAgICB0aGlzLmV2ZW50cyQgPSB0aGlzLnN0b3JlLnNlbGVjdChFdmVudFNlbGVjdG9ycy5ldmVudHMpO1xuICAgIHRoaXMuc2VsZWN0ZWRJZHMkID0gdGhpcy5zdG9yZS5zZWxlY3QoRXZlbnRTZWxlY3RvcnMuc2VsZWN0ZWRJZHMpO1xuICAgIHRoaXMuYWxsU2VsZWN0ZWQkID0gY29tYmluZUxhdGVzdChbdGhpcy5ldmVudHMkLCB0aGlzLnNlbGVjdGVkSWRzJF0pLnBpcGUoXG4gICAgICBtYXAoXG4gICAgICAgIChbZXZlbnRzLCBzZWxlY3RlZElkc10pID0+IGV2ZW50cy5sZW5ndGggPiAwICYmIGV2ZW50cy5maWx0ZXIoKGV2KSA9PiAhc2VsZWN0ZWRJZHMuaW5jbHVkZXMoZXYuaWQpKS5sZW5ndGggPT09IDBcbiAgICAgIClcbiAgICApO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5hZGQoXG4gICAgICB0aGlzLnNjcm9sbC5pc0VuZE9mUGFnZSh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsIEV2ZW50U2VsZWN0b3JzLm5vTW9yZUV2ZW50cykuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChFdmVudEFjdGlvbnMubG9hZCh7IG5leHQ6IHRydWUgfSkpO1xuICAgICAgfSlcbiAgICApO1xuICAgIHRoaXMuX2luaGliaXQgPSBmYWxzZTtcbiAgfVxuXG4gIHNlbGVjdChldmVudDogSHlwRXZlbnREZXRhaWxzLCAkZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKEV2ZW50QWN0aW9ucy5zZWxlY3QoeyBpZHM6IFtldmVudC5pZF0sIGN1bXVsYXRpdmU6IHRydWUgfSkpO1xuICAgICRldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICRldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgfVxuXG4gIHNlbGVjdEFsbCgkZXZlbnQ6IGFueSkge1xuICAgIGlmICghdGhpcy5faW5oaWJpdCkge1xuICAgICAgY29uc3QgdG1wU3ViID0gdGhpcy5ldmVudHMkLnN1YnNjcmliZSgoZXZlbnRzKSA9PiB7XG4gICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goRXZlbnRBY3Rpb25zLnNlbGVjdCh7IGlkczogJGV2ZW50ID8gZXZlbnRzLm1hcCgoZXYpID0+IGV2LmlkKSA6IFtdLCBjdW11bGF0aXZlOiBmYWxzZSB9KSk7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4gdG1wU3ViLnVuc3Vic2NyaWJlKCksIDEwKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIGluaGliaXQoKSB7XG4gICAgdGhpcy5faW5oaWJpdCA9IHRydWU7XG4gICAgc2V0VGltZW91dCgoKSA9PiAodGhpcy5faW5oaWJpdCA9IGZhbHNlKSwgMTAwKTtcbiAgfVxuXG4gIGdvVG8oZXZlbnQ6IEh5cEV2ZW50RGV0YWlscykge1xuICAgIHJldHVybiB0aGlzLnJvdXRlci5uYXZpZ2F0ZSh0aGlzLkVWRU5UX0xJTksuZm4oZXZlbnQsIHRoaXMuc3RvcmUpKTtcbiAgfVxuXG4gIHByb3RlY3RlZCByZWFkb25seSBNYXRoID0gTWF0aDtcbn1cbiIsIjx0YWJsZSBjbGFzcz1cIm8taHZ5LWV2ZW50cy10YWJsZVwiPlxuICA8dGhlYWQ+XG4gICAgPHRyIGNsYXNzPVwiby1odnktZXZlbnRzLXRhYmxlX19oZWFkZXJcIj5cbiAgICAgIDx0aCBjbGFzcz1cIi1jaGVja2JveFwiPlxuICAgICAgICA8cHJ5LWNoZWNrYm94IFtuZ01vZGVsXT1cImFsbFNlbGVjdGVkJCB8IGFzeW5jXCIgKG5nTW9kZWxDaGFuZ2UpPVwic2VsZWN0QWxsKCRldmVudClcIj48L3ByeS1jaGVja2JveD5cbiAgICAgIDwvdGg+XG4gICAgICA8dGg+e3sgJ0BodnkuZXZlbnQuY3JpdGljYWxpdHkubmFtZScgfCBpMThuIH19PC90aD5cbiAgICAgIDx0aD57eyAnQGh2eS5ldmVudC5uYW1lJyB8IGkxOG4gfX08L3RoPlxuICAgICAgPHRoPlxuICAgICAgICA8aHZ5LWV2ZW50LWNvbHVtbi1vcmRlciBmaWVsZD1cInN0YXR1c1wiPnt7ICdAaHZ5LmV2ZW50LnN0YXR1cy5uYW1lJyB8IGkxOG4gfX08L2h2eS1ldmVudC1jb2x1bW4tb3JkZXI+XG4gICAgICA8L3RoPlxuICAgICAgPHRoPlxuICAgICAgICA8aHZ5LWV2ZW50LWNvbHVtbi1vcmRlciBmaWVsZD1cInByb2NlZHVyZVByb2dyZXNzXCJcbiAgICAgICAgICA+e3sgJ0BodnkucHJvY2VkdXJlLnByb2dyZXNzJyB8IGkxOG4gfX1cbiAgICAgICAgPC9odnktZXZlbnQtY29sdW1uLW9yZGVyPlxuICAgICAgPC90aD5cbiAgICAgIDx0aD57eyAnQGh2eS5ldmVudC5jYXRlZ29yeS5uYW1lJyB8IGkxOG4gfX08L3RoPlxuICAgICAgPHRoPlxuICAgICAgICA8aHZ5LWV2ZW50LWNvbHVtbi1vcmRlciBmaWVsZD1cImxhc3RNb2RpZmljYXRpb25EYXRlXCJcbiAgICAgICAgICA+e3sgJ0BodnkuZXZlbnQubGFzdE1vZGlmaWNhdGlvbkRhdGUnIHwgaTE4biB9fVxuICAgICAgICA8L2h2eS1ldmVudC1jb2x1bW4tb3JkZXI+XG4gICAgICA8L3RoPlxuICAgICAgPHRoPjwvdGg+XG4gICAgPC90cj5cbiAgPC90aGVhZD5cbiAgPHRib2R5PlxuICAgIEBmb3IgKGV2ZW50IG9mIGV2ZW50cyQgfCBhc3luYzsgdHJhY2sgZXZlbnQuaWQpIHtcbiAgICAgIDx0ciBjbGFzcz1cIm8taHZ5LWV2ZW50cy10YWJsZV9fbGluZVwiIChjbGljayk9XCJnb1RvKGV2ZW50KVwiPlxuICAgICAgICA8dGQgY2xhc3M9XCJvLWh2eS1ldmVudHMtdGFibGVfX2xpbmVfX2NlbGxcIj5cbiAgICAgICAgICA8cHJ5LWNoZWNrYm94XG4gICAgICAgICAgICBbbmdNb2RlbF09XCIoc2VsZWN0ZWRJZHMkIHwgYXN5bmMpIS5pbmNsdWRlcyhldmVudC5pZClcIlxuICAgICAgICAgICAgKGNsaWNrKT1cInNlbGVjdChldmVudCwgJGV2ZW50KVwiXG4gICAgICAgICAgPjwvcHJ5LWNoZWNrYm94PlxuICAgICAgICA8L3RkPlxuICAgICAgICA8dGQgY2xhc3M9XCJvLWh2eS1ldmVudHMtdGFibGVfX2xpbmVfX2NlbGwgLWNlbnRlcmVkXCI+XG4gICAgICAgICAgPGh2eS1pY29uLWRpc3BsYXkgW2V2ZW50XT1cImV2ZW50XCI+PC9odnktaWNvbi1kaXNwbGF5PlxuICAgICAgICA8L3RkPlxuICAgICAgICA8dGQgY2xhc3M9XCJvLWh2eS1ldmVudHMtdGFibGVfX2xpbmVfX2NlbGxcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiby1odnktZXZlbnRzLXRhYmxlX19saW5lX19jZWxsX19uYW1lX19tYWluXCI+e3sgZXZlbnQubmFtZSB9fTwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJvLWh2eS1ldmVudHMtdGFibGVfX2xpbmVfX2NlbGxfX25hbWVfX3N1YlwiPlxuICAgICAgICAgICAge3sgZXZlbnQuZXF1aXBtZW50Py5uYW1lID8gZXZlbnQuZXF1aXBtZW50Py5uYW1lIDogJycgfX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiby1odnktZXZlbnRzLXRhYmxlX19saW5lX19jZWxsX19uYW1lX19zdWJzdWJcIj5cbiAgICAgICAgICAgIHt7IGV2ZW50LmFkZHJlc3MgfX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC90ZD5cbiAgICAgICAgPHRkIGNsYXNzPVwiby1odnktZXZlbnRzLXRhYmxlX19saW5lX19jZWxsIC1jZW50ZXJlZFwiPlxuICAgICAgICAgIDxodnktc3RhdHVzLWRpc3BsYXkgW2l0ZW1dPVwiZXZlbnRcIj48L2h2eS1zdGF0dXMtZGlzcGxheT5cbiAgICAgICAgPC90ZD5cbiAgICAgICAgPHRkIGNsYXNzPVwiby1odnktZXZlbnRzLXRhYmxlX19saW5lX19jZWxsIC1jZW50ZXJlZFwiPnt7IGV2ZW50LnByb2NlZHVyZVByb2dyZXNzIH19ICU8L3RkPlxuICAgICAgICA8dGQgY2xhc3M9XCJvLWh2eS1ldmVudHMtdGFibGVfX2xpbmVfX2NlbGxcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiby1odnktZXZlbnRzLXRhYmxlX19saW5lX19jZWxsX19uYW1lX19tYWluXCI+XG4gICAgICAgICAgICB7eyAnQGh2eS5ldmVudC5jYXRlZ29yeS4nICsgZXZlbnQuY2F0ZWdvcnkgfCBpMThuIH19XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgQGlmIChldmVudC5zdWJDYXRlZ29yeSkge1xuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm8taHZ5LWV2ZW50cy10YWJsZV9fbGluZV9fY2VsbF9fbmFtZV9fc3ViXCI+XG4gICAgICAgICAgICAgIHt7ICdAaHZ5LmV2ZW50LnN1YkNhdGVnb3J5LicgKyBldmVudC5zdWJDYXRlZ29yeSB8IGkxOG4gfX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIH1cbiAgICAgICAgPC90ZD5cbiAgICAgICAgPHRkIGNsYXNzPVwiby1odnktZXZlbnRzLXRhYmxlX19saW5lX19jZWxsXCI+XG4gICAgICAgICAge3sgZXZlbnQubGFzdE1vZGlmaWNhdGlvbkRhdGUgfCBkaXNwbGF5TG9jYWxlRGF0ZXRpbWUgfX1cbiAgICAgICAgPC90ZD5cbiAgICAgICAgPHRkIGNsYXNzPVwiby1odnktZXZlbnRzLXRhYmxlX19saW5lX19jZWxsXCI+XG4gICAgICAgICAgPGFcbiAgICAgICAgICAgIFtyb3V0ZXJMaW5rXT1cIkVWRU5UX0xJTksuZm4oZXZlbnQsIF9zdG9yZSlcIlxuICAgICAgICAgICAgW3RpdGxlXT1cIlxuICAgICAgICAgICAgICAnQGh2eS5ldmVudC5jb25zdWx0J1xuICAgICAgICAgICAgICAgIHwgaTE4bjogeyBob3dNYW55OiBNYXRoLm1heCgxLCBldmVudC5saW5rZWRFdmVudHMpLCBwbHVyYWw6IGV2ZW50LmxpbmtlZEV2ZW50cyA+IDEgPyAncycgOiAnJyB9XG4gICAgICAgICAgICBcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb25zdWx0LWxpbmtcIj5cbiAgICAgICAgICAgICAgPHByeS1pY29uIGljb25Tdmc9XCJleWVcIiBbaGVpZ2h0XT1cIjMwXCIgW3dpZHRoXT1cIjQwXCI+PC9wcnktaWNvbj5cbiAgICAgICAgICAgICAgQGlmIChldmVudC5saW5rZWRFdmVudHMgPiAxKSB7XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImluZGljYXRvci1iYWRnZVwiPnt7IGV2ZW50LmxpbmtlZEV2ZW50cyB9fTwvZGl2PlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2E+XG4gICAgICAgIDwvdGQ+XG4gICAgICA8L3RyPlxuICAgIH0gQGVtcHR5IHtcbiAgICAgIDx0cj5cbiAgICAgICAgPHRkIGNsYXNzPVwiby1odnktZXZlbnRzLXRhYmxlX19lbXB0eVwiIGNvbHNwYW49XCI1MFwiPlxuICAgICAgICAgIDxkaXY+e3sgJ0BodnkuZXZlbnQubG9nLmVtcHR5JyB8IGkxOG4gfX08L2Rpdj5cbiAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L3RkPlxuICAgICAgPC90cj5cbiAgICB9XG4gIDwvdGJvZHk+XG48L3RhYmxlPlxuIl19
|
|
77
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQtbGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2h5cGVydmlzb3Ivc3JjL2xpYi9ldmVudC9saXN0L2V2ZW50LWxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9oeXBlcnZpc29yL3NyYy9saWIvZXZlbnQvbGlzdC9ldmVudC1saXN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsU0FBUyxFQUFjLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU1RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDL0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxhQUFhLEVBQUUsR0FBRyxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBQ3RELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBSzlELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7Ozs7Ozs7Ozs7OztBQUV0RCxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUc7SUFDeEIsRUFBRSxFQUFFLENBQUMsS0FBd0MsRUFBRSxLQUFpQixFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztDQUNoRyxDQUFDO0FBTUYsTUFBTSxPQUFPLGtCQUFtQixTQUFRLHdCQUF3QjtJQVM5RCxZQUNVLEtBQWlCLEVBQ2pCLEVBQWMsRUFDZCxNQUFjLEVBQ2QsTUFBNkI7UUFFckMsS0FBSyxFQUFFLENBQUM7UUFMQSxVQUFLLEdBQUwsS0FBSyxDQUFZO1FBQ2pCLE9BQUUsR0FBRixFQUFFLENBQVk7UUFDZCxXQUFN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QUFRLEdBQUcsSUFBSSxDQUFDO1FBQ3JCLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVELElBQUksQ0FBQyxLQUFzQjtRQUN6QixJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7WUFDNUIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDckUsQ0FBQztRQUNELE9BQU87SUFDVCxDQUFDOzhHQTVEVSxrQkFBa0I7a0dBQWxCLGtCQUFrQixpSUNwQi9CLDJ0SEE4RkE7OzJGRDFFYSxrQkFBa0I7a0JBSjlCLFNBQVM7K0JBQ0UsZ0JBQWdCOzRKQVVqQixpQkFBaUI7c0JBQXpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IEV2ZW50QWN0aW9ucyB9IGZyb20gJy4uLy4uL3N0b3JlL2V2ZW50L2V2ZW50LmFjdGlvbnMnO1xuaW1wb3J0IHsgRXZlbnRTZWxlY3RvcnMgfSBmcm9tICcuLi8uLi9zdG9yZS9ldmVudC9ldmVudC5zZWxlY3RvcnMnO1xuaW1wb3J0IHsgY29tYmluZUxhdGVzdCwgbWFwLCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb25uZXJEaXJlY3RpdmUgfSBmcm9tICdAcHJvdm9seS9kYXNoYm9hcmQnO1xuaW1wb3J0IHsgSHlwRXZlbnREZXRhaWxzIH0gZnJvbSAnLi4vLi4vbW9kZWwvZXZlbnQvaHlwLWV2ZW50LWRldGFpbC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgSHlwRXZlbnRTdW1tYXJ5IH0gZnJvbSAnLi4vLi4vbW9kZWwvZXZlbnQvaHlwLWV2ZW50LXN1bW1hcnkuaW50ZXJmYWNlJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBJbmZpbml0ZVNjcm9sbFNlcnZpY2UgfSBmcm9tICcuLi8uLi9nZW5lcmFsL2luZmluaXRlU2Nyb2xsLnNlcnZpY2UnO1xuaW1wb3J0IHsgcGFkSWQgfSBmcm9tICcuLi8uLi9nZW5lcmFsL3BhZC1pZC5mdW5jdGlvbic7XG5cbmV4cG9ydCBjb25zdCBFVkVOVF9MSU5LID0ge1xuICBmbjogKGV2ZW50OiBIeXBFdmVudERldGFpbHMgfCBIeXBFdmVudFN1bW1hcnksIHN0b3JlOiBTdG9yZTxhbnk+KSA9PiBbJy4vJywgcGFkSWQuZm4oZXZlbnQuaWQpXVxufTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaHZ5LWV2ZW50LWxpc3QnLFxuICB0ZW1wbGF0ZVVybDogJy4vZXZlbnQtbGlzdC5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgRXZlbnRMaXN0Q29tcG9uZW50IGV4dGVuZHMgU3Vic2NyaXB0aW9ubmVyRGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gIGV2ZW50cyQ6IE9ic2VydmFibGU8SHlwRXZlbnREZXRhaWxzW10+O1xuICBzZWxlY3RlZElkcyQ6IE9ic2VydmFibGU8bnVtYmVyW10+O1xuICBFVkVOVF9MSU5LID0gRVZFTlRfTElOSztcbiAgX3N0b3JlID0gdGhpcy5zdG9yZTtcbiAgYWxsU2VsZWN0ZWQkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICBfaW5oaWJpdCA9IHRydWU7XG4gIEBJbnB1dCgpIGRpc2FibGVHb3RvRGV0YWlsOiBib29sZWFuIHwgbnVsbCA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgc3RvcmU6IFN0b3JlPGFueT4sXG4gICAgcHJpdmF0ZSBlbDogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICAgIHByaXZhdGUgc2Nyb2xsOiBJbmZpbml0ZVNjcm9sbFNlcnZpY2VcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKEV2ZW50QWN0aW9ucy5sb2FkKHt9KSk7XG4gICAgdGhpcy5ldmVudHMkID0gdGhpcy5zdG9yZS5zZWxlY3QoRXZlbnRTZWxlY3RvcnMuZXZlbnRzKTtcbiAgICB0aGlzLnNlbGVjdGVkSWRzJCA9IHRoaXMuc3RvcmUuc2VsZWN0KEV2ZW50U2VsZWN0b3JzLnNlbGVjdGVkSWRzKTtcbiAgICB0aGlzLmFsbFNlbGVjdGVkJCA9IGNvbWJpbmVMYXRlc3QoW3RoaXMuZXZlbnRzJCwgdGhpcy5zZWxlY3RlZElkcyRdKS5waXBlKFxuICAgICAgbWFwKFxuICAgICAgICAoW2V2ZW50cywgc2VsZWN0ZWRJZHNdKSA9PiBldmVudHMubGVuZ3RoID4gMCAmJiBldmVudHMuZmlsdGVyKChldikgPT4gIXNlbGVjdGVkSWRzLmluY2x1ZGVzKGV2LmlkKSkubGVuZ3RoID09PSAwXG4gICAgICApXG4gICAgKTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMuYWRkKFxuICAgICAgdGhpcy5zY3JvbGwuaXNFbmRPZlBhZ2UodGhpcy5lbC5uYXRpdmVFbGVtZW50LCBFdmVudFNlbGVjdG9ycy5ub01vcmVFdmVudHMpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goRXZlbnRBY3Rpb25zLmxvYWQoeyBuZXh0OiB0cnVlIH0pKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgICB0aGlzLl9pbmhpYml0ID0gZmFsc2U7XG4gIH1cblxuICBzZWxlY3QoZXZlbnQ6IEh5cEV2ZW50RGV0YWlscywgJGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChFdmVudEFjdGlvbnMuc2VsZWN0KHsgaWRzOiBbZXZlbnQuaWRdLCBjdW11bGF0aXZlOiB0cnVlIH0pKTtcbiAgICAkZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gIH1cblxuICBzZWxlY3RBbGwoJGV2ZW50OiBhbnkpIHtcbiAgICBpZiAoIXRoaXMuX2luaGliaXQpIHtcbiAgICAgIGNvbnN0IHRtcFN1YiA9IHRoaXMuZXZlbnRzJC5zdWJzY3JpYmUoKGV2ZW50cykgPT4ge1xuICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKEV2ZW50QWN0aW9ucy5zZWxlY3QoeyBpZHM6ICRldmVudCA/IGV2ZW50cy5tYXAoKGV2KSA9PiBldi5pZCkgOiBbXSwgY3VtdWxhdGl2ZTogZmFsc2UgfSkpO1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHRtcFN1Yi51bnN1YnNjcmliZSgpLCAxMCk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBpbmhpYml0KCkge1xuICAgIHRoaXMuX2luaGliaXQgPSB0cnVlO1xuICAgIHNldFRpbWVvdXQoKCkgPT4gKHRoaXMuX2luaGliaXQgPSBmYWxzZSksIDEwMCk7XG4gIH1cblxuICBnb1RvKGV2ZW50OiBIeXBFdmVudERldGFpbHMpIHtcbiAgICBpZiAoIXRoaXMuZGlzYWJsZUdvdG9EZXRhaWwpIHtcbiAgICAgIHJldHVybiB0aGlzLnJvdXRlci5uYXZpZ2F0ZSh0aGlzLkVWRU5UX0xJTksuZm4oZXZlbnQsIHRoaXMuc3RvcmUpKTtcbiAgICB9XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IE1hdGggPSBNYXRoO1xufVxuIiwiPHRhYmxlIGNsYXNzPVwiby1odnktZXZlbnRzLXRhYmxlXCI+XG4gIDx0aGVhZD5cbiAgICA8dHIgY2xhc3M9XCJvLWh2eS1ldmVudHMtdGFibGVfX2hlYWRlclwiPlxuICAgICAgPHRoIGNsYXNzPVwiLWNoZWNrYm94XCI+XG4gICAgICAgIDxwcnktY2hlY2tib3ggW25nTW9kZWxdPVwiYWxsU2VsZWN0ZWQkIHwgYXN5bmNcIiAobmdNb2RlbENoYW5nZSk9XCJzZWxlY3RBbGwoJGV2ZW50KVwiPjwvcHJ5LWNoZWNrYm94PlxuICAgICAgPC90aD5cbiAgICAgIDx0aD57eyAnQGh2eS5ldmVudC5jcml0aWNhbGl0eS5uYW1lJyB8IGkxOG4gfX08L3RoPlxuICAgICAgPHRoPnt7ICdAaHZ5LmV2ZW50Lm5hbWUnIHwgaTE4biB9fTwvdGg+XG4gICAgICA8dGg+XG4gICAgICAgIDxodnktZXZlbnQtY29sdW1uLW9yZGVyIGZpZWxkPVwic3RhdHVzXCI+e3sgJ0BodnkuZXZlbnQuc3RhdHVzLm5hbWUnIHwgaTE4biB9fTwvaHZ5LWV2ZW50LWNvbHVtbi1vcmRlcj5cbiAgICAgIDwvdGg+XG4gICAgICA8dGg+XG4gICAgICAgIDxodnktZXZlbnQtY29sdW1uLW9yZGVyIGZpZWxkPVwicHJvY2VkdXJlUHJvZ3Jlc3NcIlxuICAgICAgICAgID57eyAnQGh2eS5wcm9jZWR1cmUucHJvZ3Jlc3MnIHwgaTE4biB9fVxuICAgICAgICA8L2h2eS1ldmVudC1jb2x1bW4tb3JkZXI+XG4gICAgICA8L3RoPlxuICAgICAgPHRoPnt7ICdAaHZ5LmV2ZW50LmNhdGVnb3J5Lm5hbWUnIHwgaTE4biB9fTwvdGg+XG4gICAgICA8dGg+XG4gICAgICAgIDxodnktZXZlbnQtY29sdW1uLW9yZGVyIGZpZWxkPVwibGFzdE1vZGlmaWNhdGlvbkRhdGVcIlxuICAgICAgICAgID57eyAnQGh2eS5ldmVudC5sYXN0TW9kaWZpY2F0aW9uRGF0ZScgfCBpMThuIH19XG4gICAgICAgIDwvaHZ5LWV2ZW50LWNvbHVtbi1vcmRlcj5cbiAgICAgIDwvdGg+XG4gICAgICA8dGg+PC90aD5cbiAgICA8L3RyPlxuICA8L3RoZWFkPlxuICA8dGJvZHk+XG4gICAgQGZvciAoZXZlbnQgb2YgZXZlbnRzJCB8IGFzeW5jOyB0cmFjayBldmVudC5pZCkge1xuICAgICAgPHRyIGNsYXNzPVwiby1odnktZXZlbnRzLXRhYmxlX19saW5lXCIgW2NsYXNzLi1ub2dvXT1cImRpc2FibGVHb3RvRGV0YWlsXCIgKGNsaWNrKT1cImdvVG8oZXZlbnQpXCI+XG4gICAgICAgIDx0ZCBjbGFzcz1cIm8taHZ5LWV2ZW50cy10YWJsZV9fbGluZV9fY2VsbFwiPlxuICAgICAgICAgIDxwcnktY2hlY2tib3hcbiAgICAgICAgICAgIFtuZ01vZGVsXT1cIihzZWxlY3RlZElkcyQgfCBhc3luYykhLmluY2x1ZGVzKGV2ZW50LmlkKVwiXG4gICAgICAgICAgICAoY2xpY2spPVwic2VsZWN0KGV2ZW50LCAkZXZlbnQpXCJcbiAgICAgICAgICA+PC9wcnktY2hlY2tib3g+XG4gICAgICAgIDwvdGQ+XG4gICAgICAgIDx0ZCBjbGFzcz1cIm8taHZ5LWV2ZW50cy10YWJsZV9fbGluZV9fY2VsbCAtY2VudGVyZWRcIj5cbiAgICAgICAgICA8aHZ5LWljb24tZGlzcGxheSBbZXZlbnRdPVwiZXZlbnRcIj48L2h2eS1pY29uLWRpc3BsYXk+XG4gICAgICAgIDwvdGQ+XG4gICAgICAgIDx0ZCBjbGFzcz1cIm8taHZ5LWV2ZW50cy10YWJsZV9fbGluZV9fY2VsbFwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJvLWh2eS1ldmVudHMtdGFibGVfX2xpbmVfX2NlbGxfX25hbWVfX21haW5cIj57eyBldmVudC5uYW1lIH19PC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm8taHZ5LWV2ZW50cy10YWJsZV9fbGluZV9fY2VsbF9fbmFtZV9fc3ViXCI+XG4gICAgICAgICAgICB7eyBldmVudC5lcXVpcG1lbnQ/Lm5hbWUgPyBldmVudC5lcXVpcG1lbnQ/Lm5hbWUgOiAnJyB9fVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJvLWh2eS1ldmVudHMtdGFibGVfX2xpbmVfX2NlbGxfX25hbWVfX3N1YnN1YlwiPlxuICAgICAgICAgICAge3sgZXZlbnQuYWRkcmVzcyB9fVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L3RkPlxuICAgICAgICA8dGQgY2xhc3M9XCJvLWh2eS1ldmVudHMtdGFibGVfX2xpbmVfX2NlbGwgLWNlbnRlcmVkXCI+XG4gICAgICAgICAgPGh2eS1zdGF0dXMtZGlzcGxheSBbaXRlbV09XCJldmVudFwiPjwvaHZ5LXN0YXR1cy1kaXNwbGF5PlxuICAgICAgICA8L3RkPlxuICAgICAgICA8dGQgY2xhc3M9XCJvLWh2eS1ldmVudHMtdGFibGVfX2xpbmVfX2NlbGwgLWNlbnRlcmVkXCI+e3sgZXZlbnQucHJvY2VkdXJlUHJvZ3Jlc3MgfX0gJTwvdGQ+XG4gICAgICAgIDx0ZCBjbGFzcz1cIm8taHZ5LWV2ZW50cy10YWJsZV9fbGluZV9fY2VsbFwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJvLWh2eS1ldmVudHMtdGFibGVfX2xpbmVfX2NlbGxfX25hbWVfX21haW5cIj5cbiAgICAgICAgICAgIHt7ICdAaHZ5LmV2ZW50LmNhdGVnb3J5LicgKyBldmVudC5jYXRlZ29yeSB8IGkxOG4gfX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICBAaWYgKGV2ZW50LnN1YkNhdGVnb3J5KSB7XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiby1odnktZXZlbnRzLXRhYmxlX19saW5lX19jZWxsX19uYW1lX19zdWJcIj5cbiAgICAgICAgICAgICAge3sgJ0BodnkuZXZlbnQuc3ViQ2F0ZWdvcnkuJyArIGV2ZW50LnN1YkNhdGVnb3J5IHwgaTE4biB9fVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgfVxuICAgICAgICA8L3RkPlxuICAgICAgICA8dGQgY2xhc3M9XCJvLWh2eS1ldmVudHMtdGFibGVfX2xpbmVfX2NlbGxcIj5cbiAgICAgICAgICB7eyBldmVudC5sYXN0TW9kaWZpY2F0aW9uRGF0ZSB8IGRpc3BsYXlMb2NhbGVEYXRldGltZSB9fVxuICAgICAgICA8L3RkPlxuICAgICAgICA8dGQgY2xhc3M9XCJvLWh2eS1ldmVudHMtdGFibGVfX2xpbmVfX2NlbGxcIj5cbiAgICAgICAgICBAaWYgKCFkaXNhYmxlR290b0RldGFpbCkge1xuICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwiRVZFTlRfTElOSy5mbihldmVudCwgX3N0b3JlKVwiXG4gICAgICAgICAgICAgIFt0aXRsZV09XCJcbiAgICAgICAgICAgICAgICAnQGh2eS5ldmVudC5jb25zdWx0J1xuICAgICAgICAgICAgICAgICAgfCBpMThuOiB7IGhvd01hbnk6IE1hdGgubWF4KDEsIGV2ZW50LmxpbmtlZEV2ZW50cyksIHBsdXJhbDogZXZlbnQubGlua2VkRXZlbnRzID4gMSA/ICdzJyA6ICcnIH1cbiAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnN1bHQtbGlua1wiPlxuICAgICAgICAgICAgICAgIDxwcnktaWNvbiBpY29uU3ZnPVwiZXllXCIgW2hlaWdodF09XCIzMFwiIFt3aWR0aF09XCI0MFwiPjwvcHJ5LWljb24+XG4gICAgICAgICAgICAgICAgQGlmIChldmVudC5saW5rZWRFdmVudHMgPiAxKSB7XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW5kaWNhdG9yLWJhZGdlXCI+e3sgZXZlbnQubGlua2VkRXZlbnRzIH19PC9kaXY+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICB9XG4gICAgICAgIDwvdGQ+XG4gICAgICA8L3RyPlxuICAgIH0gQGVtcHR5IHtcbiAgICAgIDx0cj5cbiAgICAgICAgPHRkIGNsYXNzPVwiby1odnktZXZlbnRzLXRhYmxlX19lbXB0eVwiIGNvbHNwYW49XCI1MFwiPlxuICAgICAgICAgIDxkaXY+e3sgJ0BodnkuZXZlbnQubG9nLmVtcHR5JyB8IGkxOG4gfX08L2Rpdj5cbiAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L3RkPlxuICAgICAgPC90cj5cbiAgICB9XG4gIDwvdGJvZHk+XG48L3RhYmxlPlxuIl19
|
|
@@ -166,11 +166,11 @@ export class ProcedureActionsComponent extends SubscriptionnerDirective {
|
|
|
166
166
|
return !this.editing && action.status === 'NEW' && !this.readonly && this.enableEditActions;
|
|
167
167
|
}
|
|
168
168
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ProcedureActionsComponent, deps: [{ token: i1.PryDialogService }, { token: i2.Overlay }, { token: i1.PryI18nService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
169
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.4", type: ProcedureActionsComponent, selector: "hvy-procedure-actions", inputs: { mode: "mode", readonly: "readonly", enableEditActions: "enableEditActions", actions: "actions" }, outputs: { modified: "modified" }, viewQueries: [{ propertyName: "menuButtons", predicate: ["menuButton"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "<div\n class=\"o-hvy-events-detail__procedure__actions\"\n (drag)=\"move($event)\"\n (drop)=\"drop($event)\"\n (dragover)=\"allowDrop($event)\"\n>\n @for (action of actions; track action.id; let idx = $index) {\n <div\n class=\"o-hvy-events-detail__procedure__actions__action\"\n [draggable]=\"isDraggable(action) && !readonly\"\n (dragstart)=\"dragStart($event, action, idx)\"\n (mousedown)=\"onMouseDown($event)\"\n [class.-updating]=\"!!action._status\"\n [class.-other-updating]=\"editing\"\n >\n <pry-icon\n iconSvg=\"six_dot\"\n #handle\n [class.-disabled]=\"!isDraggable(action)\"\n [class.-hidden]=\"action._status || readonly\"\n class=\"grabbable\"\n ></pry-icon>\n <div class=\"number-badge\">{{ idx + 1 }}</div>\n @if (!action._status || readonly) {\n @if (mode === 'procedure') {\n <pry-checkbox\n [ngModel]=\"action.status !== 'NEW'\"\n (click)=\"toggleActionStatus(idx, $event)\"\n [disabled]=\"action.status === 'DONE' || (readonly ?? false)\"\n ></pry-checkbox>\n }\n <div [class.-done]=\"action.status === 'DONE'\" [class.-disabled]=\"editing\">\n <hvy-action-parameter [action]=\"action\" [type]=\"action.type\" [isParam]=\"false\"></hvy-action-parameter>\n </div>\n @if (!readonly || enableEditActions) {\n <button class=\"a-btn a-btn--icon-only\" (click)=\"openModal(action, idx)\" [disabled]=\"editing\">\n <pry-icon iconSvg=\"more_horiz\" #menuButton></pry-icon>\n </button>\n }\n } @else {\n <div class=\"o-hvy-events-detail__procedure__actions__action__create\">\n <div class=\"o-hvy-events-detail__procedure__actions__action__create__header\">\n <p>{{ '@hvy.procedure.action.' + action._status | i18n }}</p>\n <button class=\"a-btn a-btn--icon-only\" (click)=\"saveAction(action, idx)\" [disabled]=\"!isValid(action)\">\n <pry-icon iconSvg=\"check\"></pry-icon>\n </button>\n <button class=\"a-btn a-btn--icon-only\" (click)=\"cancelAction(action, idx)\">\n <pry-icon iconSvg=\"close\"></pry-icon>\n </button>\n </div>\n <div>\n <pry-select\n [ngModel]=\"action.type\"\n [items]=\"ACTIONS_TYPES\"\n (ngModelChange)=\"update(idx, 'type', $event)\"\n i18nPrefix=\"@hvy.procedure.action.\"\n [placeholder]=\"'@hvy.procedure.action.placeholder.action' | i18n\"\n ></pry-select>\n </div>\n <hvy-action-parameter [action]=\"action\" [type]=\"action.type\" [isParam]=\"true\"></hvy-action-parameter>\n </div>\n }\n </div>\n } @empty {\n @if (actions.length === 0) {\n <div>{{ '@hvy.event.log.procedure.noAction' | i18n }}</div>\n }\n }\n @if (!readonly) {\n <div class=\"o-hvy-events-detail__procedure__button\">\n <button class=\"a-btn a-btn--primary\" (click)=\"add()\" [disabled]=\"editing\">\n <pry-icon iconSvg=\"add\"></pry-icon>\n {{ '@hvy.procedure.action.add' | i18n }}\n </button>\n </div>\n }\n</div>\n", dependencies: [{ kind: "component", type: i3.PryCheckboxComponent, selector: "pry-checkbox", inputs: ["circle", "name", "inputId", "inhibit"] }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i1.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "component", type: i1.PrySelectComponent, selector: "pry-select", inputs: ["items", "clearable", "multiple", "closeOnSelect", "placeholder", "isForm", "required", "name", "readonly", "autocomplete", "alwaysShowAutosuggestedValues", "externalAutocompleteService", "bindValue", "bindLabel", "iconSize", "bindIcon", "template", "i18nPrefix", "bindClasses", "loading", "elementRef"], outputs: ["searched", "cleared", "clicked"] }, { kind: "component", type: i5.HvyActionParameterComponent, selector: "hvy-action-parameter", inputs: ["isParam", "type", "action"] }, { kind: "pipe", type: i1.I18nPipe, name: "i18n" }] }); }
|
|
169
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.4", type: ProcedureActionsComponent, selector: "hvy-procedure-actions", inputs: { mode: "mode", readonly: "readonly", enableEditActions: "enableEditActions", actions: "actions" }, outputs: { modified: "modified" }, viewQueries: [{ propertyName: "menuButtons", predicate: ["menuButton"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "<div\n class=\"o-hvy-events-detail__procedure__actions\"\n (drag)=\"move($event)\"\n (drop)=\"drop($event)\"\n (dragover)=\"allowDrop($event)\"\n>\n @for (action of actions; track action.id; let idx = $index) {\n <div\n class=\"o-hvy-events-detail__procedure__actions__action\"\n [draggable]=\"isDraggable(action) && !readonly\"\n (dragstart)=\"dragStart($event, action, idx)\"\n (mousedown)=\"onMouseDown($event)\"\n [class.-updating]=\"!!action._status\"\n [class.-other-updating]=\"editing\"\n >\n <pry-icon\n iconSvg=\"six_dot\"\n #handle\n [class.-disabled]=\"!isDraggable(action)\"\n [class.-hidden]=\"action._status || readonly\"\n class=\"grabbable\"\n ></pry-icon>\n <div class=\"number-badge\">{{ idx + 1 }}</div>\n @if (!action._status || readonly) {\n @if (mode === 'procedure') {\n <pry-checkbox\n [ngModel]=\"action.status !== 'NEW'\"\n (click)=\"toggleActionStatus(idx, $event)\"\n [disabled]=\"action.status === 'DONE' || (readonly ?? false)\"\n ></pry-checkbox>\n }\n <div [class.-done]=\"action.status === 'DONE'\" [class.-disabled]=\"editing\">\n <hvy-action-parameter [action]=\"action\" [type]=\"action.type\" [isParam]=\"false\"></hvy-action-parameter>\n </div>\n @if (!readonly || enableEditActions) {\n <button class=\"a-btn a-btn--icon-only\" (click)=\"openModal(action, idx)\" [disabled]=\"editing\">\n <pry-icon iconSvg=\"more_horiz\" #menuButton></pry-icon>\n </button>\n }\n } @else {\n <div class=\"o-hvy-events-detail__procedure__actions__action__create\">\n <div class=\"o-hvy-events-detail__procedure__actions__action__create__header\">\n <p>{{ '@hvy.procedure.action.' + action._status | i18n }}</p>\n <button class=\"a-btn a-btn--icon-only\" (click)=\"saveAction(action, idx)\" [disabled]=\"!isValid(action)\">\n <pry-icon iconSvg=\"check\"></pry-icon>\n </button>\n <button class=\"a-btn a-btn--icon-only\" (click)=\"cancelAction(action, idx)\">\n <pry-icon iconSvg=\"close\"></pry-icon>\n </button>\n </div>\n <div>\n <pry-select\n [ngModel]=\"action.type\"\n [items]=\"ACTIONS_TYPES\"\n (ngModelChange)=\"update(idx, 'type', $event)\"\n i18nPrefix=\"@hvy.procedure.action.\"\n [placeholder]=\"'@hvy.procedure.action.placeholder.action' | i18n\"\n ></pry-select>\n </div>\n <hvy-action-parameter [action]=\"action\" [type]=\"action.type\" [isParam]=\"true\"></hvy-action-parameter>\n </div>\n }\n </div>\n } @empty {\n @if (actions.length === 0) {\n <div>{{ '@hvy.event.log.procedure.noAction' | i18n }}</div>\n }\n }\n @if (!readonly && enableEditActions) {\n <div class=\"o-hvy-events-detail__procedure__button\">\n <button class=\"a-btn a-btn--primary\" (click)=\"add()\" [disabled]=\"editing\">\n <pry-icon iconSvg=\"add\"></pry-icon>\n {{ '@hvy.procedure.action.add' | i18n }}\n </button>\n </div>\n }\n</div>\n", dependencies: [{ kind: "component", type: i3.PryCheckboxComponent, selector: "pry-checkbox", inputs: ["circle", "name", "inputId", "inhibit"] }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i1.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "component", type: i1.PrySelectComponent, selector: "pry-select", inputs: ["items", "clearable", "multiple", "closeOnSelect", "placeholder", "isForm", "required", "name", "readonly", "autocomplete", "alwaysShowAutosuggestedValues", "externalAutocompleteService", "bindValue", "bindLabel", "iconSize", "bindIcon", "template", "i18nPrefix", "bindClasses", "loading", "elementRef"], outputs: ["searched", "cleared", "clicked"] }, { kind: "component", type: i5.HvyActionParameterComponent, selector: "hvy-action-parameter", inputs: ["isParam", "type", "action"] }, { kind: "pipe", type: i1.I18nPipe, name: "i18n" }] }); }
|
|
170
170
|
}
|
|
171
171
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ProcedureActionsComponent, decorators: [{
|
|
172
172
|
type: Component,
|
|
173
|
-
args: [{ selector: 'hvy-procedure-actions', template: "<div\n class=\"o-hvy-events-detail__procedure__actions\"\n (drag)=\"move($event)\"\n (drop)=\"drop($event)\"\n (dragover)=\"allowDrop($event)\"\n>\n @for (action of actions; track action.id; let idx = $index) {\n <div\n class=\"o-hvy-events-detail__procedure__actions__action\"\n [draggable]=\"isDraggable(action) && !readonly\"\n (dragstart)=\"dragStart($event, action, idx)\"\n (mousedown)=\"onMouseDown($event)\"\n [class.-updating]=\"!!action._status\"\n [class.-other-updating]=\"editing\"\n >\n <pry-icon\n iconSvg=\"six_dot\"\n #handle\n [class.-disabled]=\"!isDraggable(action)\"\n [class.-hidden]=\"action._status || readonly\"\n class=\"grabbable\"\n ></pry-icon>\n <div class=\"number-badge\">{{ idx + 1 }}</div>\n @if (!action._status || readonly) {\n @if (mode === 'procedure') {\n <pry-checkbox\n [ngModel]=\"action.status !== 'NEW'\"\n (click)=\"toggleActionStatus(idx, $event)\"\n [disabled]=\"action.status === 'DONE' || (readonly ?? false)\"\n ></pry-checkbox>\n }\n <div [class.-done]=\"action.status === 'DONE'\" [class.-disabled]=\"editing\">\n <hvy-action-parameter [action]=\"action\" [type]=\"action.type\" [isParam]=\"false\"></hvy-action-parameter>\n </div>\n @if (!readonly || enableEditActions) {\n <button class=\"a-btn a-btn--icon-only\" (click)=\"openModal(action, idx)\" [disabled]=\"editing\">\n <pry-icon iconSvg=\"more_horiz\" #menuButton></pry-icon>\n </button>\n }\n } @else {\n <div class=\"o-hvy-events-detail__procedure__actions__action__create\">\n <div class=\"o-hvy-events-detail__procedure__actions__action__create__header\">\n <p>{{ '@hvy.procedure.action.' + action._status | i18n }}</p>\n <button class=\"a-btn a-btn--icon-only\" (click)=\"saveAction(action, idx)\" [disabled]=\"!isValid(action)\">\n <pry-icon iconSvg=\"check\"></pry-icon>\n </button>\n <button class=\"a-btn a-btn--icon-only\" (click)=\"cancelAction(action, idx)\">\n <pry-icon iconSvg=\"close\"></pry-icon>\n </button>\n </div>\n <div>\n <pry-select\n [ngModel]=\"action.type\"\n [items]=\"ACTIONS_TYPES\"\n (ngModelChange)=\"update(idx, 'type', $event)\"\n i18nPrefix=\"@hvy.procedure.action.\"\n [placeholder]=\"'@hvy.procedure.action.placeholder.action' | i18n\"\n ></pry-select>\n </div>\n <hvy-action-parameter [action]=\"action\" [type]=\"action.type\" [isParam]=\"true\"></hvy-action-parameter>\n </div>\n }\n </div>\n } @empty {\n @if (actions.length === 0) {\n <div>{{ '@hvy.event.log.procedure.noAction' | i18n }}</div>\n }\n }\n @if (!readonly) {\n <div class=\"o-hvy-events-detail__procedure__button\">\n <button class=\"a-btn a-btn--primary\" (click)=\"add()\" [disabled]=\"editing\">\n <pry-icon iconSvg=\"add\"></pry-icon>\n {{ '@hvy.procedure.action.add' | i18n }}\n </button>\n </div>\n }\n</div>\n" }]
|
|
173
|
+
args: [{ selector: 'hvy-procedure-actions', template: "<div\n class=\"o-hvy-events-detail__procedure__actions\"\n (drag)=\"move($event)\"\n (drop)=\"drop($event)\"\n (dragover)=\"allowDrop($event)\"\n>\n @for (action of actions; track action.id; let idx = $index) {\n <div\n class=\"o-hvy-events-detail__procedure__actions__action\"\n [draggable]=\"isDraggable(action) && !readonly\"\n (dragstart)=\"dragStart($event, action, idx)\"\n (mousedown)=\"onMouseDown($event)\"\n [class.-updating]=\"!!action._status\"\n [class.-other-updating]=\"editing\"\n >\n <pry-icon\n iconSvg=\"six_dot\"\n #handle\n [class.-disabled]=\"!isDraggable(action)\"\n [class.-hidden]=\"action._status || readonly\"\n class=\"grabbable\"\n ></pry-icon>\n <div class=\"number-badge\">{{ idx + 1 }}</div>\n @if (!action._status || readonly) {\n @if (mode === 'procedure') {\n <pry-checkbox\n [ngModel]=\"action.status !== 'NEW'\"\n (click)=\"toggleActionStatus(idx, $event)\"\n [disabled]=\"action.status === 'DONE' || (readonly ?? false)\"\n ></pry-checkbox>\n }\n <div [class.-done]=\"action.status === 'DONE'\" [class.-disabled]=\"editing\">\n <hvy-action-parameter [action]=\"action\" [type]=\"action.type\" [isParam]=\"false\"></hvy-action-parameter>\n </div>\n @if (!readonly || enableEditActions) {\n <button class=\"a-btn a-btn--icon-only\" (click)=\"openModal(action, idx)\" [disabled]=\"editing\">\n <pry-icon iconSvg=\"more_horiz\" #menuButton></pry-icon>\n </button>\n }\n } @else {\n <div class=\"o-hvy-events-detail__procedure__actions__action__create\">\n <div class=\"o-hvy-events-detail__procedure__actions__action__create__header\">\n <p>{{ '@hvy.procedure.action.' + action._status | i18n }}</p>\n <button class=\"a-btn a-btn--icon-only\" (click)=\"saveAction(action, idx)\" [disabled]=\"!isValid(action)\">\n <pry-icon iconSvg=\"check\"></pry-icon>\n </button>\n <button class=\"a-btn a-btn--icon-only\" (click)=\"cancelAction(action, idx)\">\n <pry-icon iconSvg=\"close\"></pry-icon>\n </button>\n </div>\n <div>\n <pry-select\n [ngModel]=\"action.type\"\n [items]=\"ACTIONS_TYPES\"\n (ngModelChange)=\"update(idx, 'type', $event)\"\n i18nPrefix=\"@hvy.procedure.action.\"\n [placeholder]=\"'@hvy.procedure.action.placeholder.action' | i18n\"\n ></pry-select>\n </div>\n <hvy-action-parameter [action]=\"action\" [type]=\"action.type\" [isParam]=\"true\"></hvy-action-parameter>\n </div>\n }\n </div>\n } @empty {\n @if (actions.length === 0) {\n <div>{{ '@hvy.event.log.procedure.noAction' | i18n }}</div>\n }\n }\n @if (!readonly && enableEditActions) {\n <div class=\"o-hvy-events-detail__procedure__button\">\n <button class=\"a-btn a-btn--primary\" (click)=\"add()\" [disabled]=\"editing\">\n <pry-icon iconSvg=\"add\"></pry-icon>\n {{ '@hvy.procedure.action.add' | i18n }}\n </button>\n </div>\n }\n</div>\n" }]
|
|
174
174
|
}], ctorParameters: () => [{ type: i1.PryDialogService }, { type: i2.Overlay }, { type: i1.PryI18nService }], propDecorators: { modified: [{
|
|
175
175
|
type: Output
|
|
176
176
|
}], mode: [{
|
|
@@ -185,4 +185,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
|
|
|
185
185
|
}], actions: [{
|
|
186
186
|
type: Input
|
|
187
187
|
}] } });
|
|
188
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvY2VkdXJlLWFjdGlvbnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9oeXBlcnZpc29yL3NyYy9saWIvZ2VuZXJhbC9wcm9jZWR1cmUtYWN0aW9ucy9wcm9jZWR1cmUtYWN0aW9ucy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2h5cGVydmlzb3Ivc3JjL2xpYi9nZW5lcmFsL3Byb2NlZHVyZS1hY3Rpb25zL3Byb2NlZHVyZS1hY3Rpb25zLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBYSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkgsT0FBTyxFQUFvQyx3QkFBd0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRWhHLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUIsT0FBTyxFQUFFLHNCQUFzQixFQUFxQixNQUFNLHlCQUF5QixDQUFDO0FBRXBGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7OztBQU16RCxNQUFNLE9BQU8seUJBQTBCLFNBQVEsd0JBQXdCO2FBQzlELGdCQUFXLEdBQUcsRUFBRSxBQUFMLENBQU07SUFleEIsWUFDVSxTQUEyQixFQUMzQixPQUFnQixFQUNoQixXQUEyQjtRQUVuQyxLQUFLLEVBQUUsQ0FBQztRQUpBLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBQzNCLFlBQU8sR0FBUCxPQUFPLENBQVM7UUFDaEIsZ0JBQVcsR0FBWCxXQUFXLENBQWdCO1FBaEJyQyxjQUFTLEdBQUcsQ0FBQyxDQUFDO1FBQ2QscUJBQWdCLEdBQUcsQ0FBQyxDQUFDO1FBQ3JCLHNCQUFp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Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBRzRDLFdBQVc7c0JBQTVELFlBQVk7dUJBQUMsWUFBWSxFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRTtnQkFZbkMsT0FBTztzQkFBbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgbW9kZWwsIE91dHB1dCwgUXVlcnlMaXN0LCBWaWV3Q2hpbGRyZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFByeURpYWxvZ1NlcnZpY2UsIFByeUkxOG5TZXJ2aWNlLCBTdWJzY3JpcHRpb25uZXJEaXJlY3RpdmUgfSBmcm9tICdAcHJvdm9seS9kYXNoYm9hcmQnO1xuaW1wb3J0IHsgSHlwQWN0aW9uIH0gZnJvbSAnLi4vLi4vbW9kZWwvcHJvY2VkdXJlL2h5cC1hY3Rpb24uaW50ZXJmYWNlJztcbmltcG9ydCB7IHY0IH0gZnJvbSAndXVpZCc7XG5pbXBvcnQgeyBIdnlBY3Rpb25NZW51Q29tcG9uZW50LCBIdnlBY3Rpb25NZW51RGF0YSB9IGZyb20gJy4vYWN0aW9uLW1lbnUuY29tcG9uZW50JztcbmltcG9ydCB7IE92ZXJsYXkgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBBQ1RJT05TX1RZUEVTIH0gZnJvbSAnLi9hY3Rpb25zLXR5cGVzLmNvbnN0YW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaHZ5LXByb2NlZHVyZS1hY3Rpb25zJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Byb2NlZHVyZS1hY3Rpb25zLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBQcm9jZWR1cmVBY3Rpb25zQ29tcG9uZW50IGV4dGVuZHMgU3Vic2NyaXB0aW9ubmVyRGlyZWN0aXZlIHtcbiAgc3RhdGljIENBUkRfSEVJR0hUID0gNzU7XG4gIG1vdmluZ0FjdGlvbj86IEh5cEFjdGlvbjtcbiAgbW92ZVN0YXJ0ID0gMDtcbiAgbW92ZUluaXRpYWxJbmRleCA9IDA7XG4gIGluaXRpYWxBY3Rpb25MaXN0OiBIeXBBY3Rpb25bXSA9IFtdO1xuICBwcmV2aW91c09mZnNldCA9IDA7XG4gIGRyYWdUYXJnZXQ/OiBFdmVudFRhcmdldCB8IG51bGw7XG4gIEBPdXRwdXQoKSBtb2RpZmllZCA9IG5ldyBFdmVudEVtaXR0ZXI8SHlwQWN0aW9uW10+KCk7XG4gIEBJbnB1dCgpIG1vZGU6ICdtb2RlbCcgfCAncHJvY2VkdXJlJyA9ICdwcm9jZWR1cmUnO1xuICBASW5wdXQoKSByZWFkb25seTogYm9vbGVhbiB8IG51bGwgPSBmYWxzZTtcbiAgQElucHV0KCkgZW5hYmxlRWRpdEFjdGlvbnM6IGJvb2xlYW4gfCBudWxsID0gZmFsc2U7XG4gIEFDVElPTlNfVFlQRVM6IHN0cmluZ1tdO1xuICBfYWN0aW9uczogSHlwQWN0aW9uW10gPSBbXTtcbiAgQFZpZXdDaGlsZHJlbignbWVudUJ1dHRvbicsIHsgcmVhZDogRWxlbWVudFJlZiB9KSBtZW51QnV0dG9ucyE6IFF1ZXJ5TGlzdDxFbGVtZW50UmVmPjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHByeURpYWxvZzogUHJ5RGlhbG9nU2VydmljZSxcbiAgICBwcml2YXRlIG92ZXJsYXk6IE92ZXJsYXksXG4gICAgcHJpdmF0ZSBpMThuU2VydmljZTogUHJ5STE4blNlcnZpY2VcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLkFDVElPTlNfVFlQRVMgPSBPYmplY3Qua2V5cyhBQ1RJT05TX1RZUEVTLnZhbHVlcyk7XG4gICAgdGhpcy5BQ1RJT05TX1RZUEVTLnNvcnQoKGEsIGIpID0+IEFDVElPTlNfVFlQRVMudmFsdWVzW2FdLm9yZGVyIC0gQUNUSU9OU19UWVBFUy52YWx1ZXNbYl0ub3JkZXIpO1xuICB9XG5cbiAgQElucHV0KCkgc2V0IGFjdGlvbnMoYWN0aW9uczogSHlwQWN0aW9uW10pIHtcbiAgICB0aGlzLl9hY3Rpb25zID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShhY3Rpb25zID8/IFtdKSk7XG4gIH1cblxuICBnZXQgYWN0aW9ucygpIHtcbiAgICByZXR1cm4gdGhpcy5fYWN0aW9ucztcbiAgfVxuXG4gIGdldCBlZGl0aW5nKCkge1xuICAgIHJldHVybiAhIXRoaXMuYWN0aW9ucy5maW5kKChhY3Rpb24pID0+IGFjdGlvbi5fc3RhdHVzKTtcbiAgfVxuXG4gIG9uTW91c2VEb3duKCRldmVudDogTW91c2VFdmVudCkge1xuICAgIHRoaXMuZHJhZ1RhcmdldCA9ICRldmVudC50YXJnZXQ7XG4gIH1cblxuICBkcmFnU3RhcnQoJGV2ZW50OiBNb3VzZUV2ZW50LCBhY3Rpb246IEh5cEFjdGlvbiwgaW5kZXg6IG51bWJlcikge1xuICAgIGlmICh0aGlzLmRyYWdUYXJnZXQgJiYgKHRoaXMuZHJhZ1RhcmdldCBhcyBIVE1MRGl2RWxlbWVudCkuc3R5bGUubWFza0ltYWdlLmluZGV4T2YoJ3NpeF9kb3QnKSA+IC0xKSB7XG4gICAgICB0aGlzLm1vdmluZ0FjdGlvbiA9IGFjdGlvbjtcbiAgICAgIHRoaXMubW92ZVN0YXJ0ID0gJGV2ZW50LmNsaWVudFk7XG4gICAgICB0aGlzLm1vdmVJbml0aWFsSW5kZXggPSBpbmRleDtcbiAgICAgIHRoaXMuaW5pdGlhbEFjdGlvbkxpc3QgPSBbLi4udGhpcy5hY3Rpb25zXTtcbiAgICB9IGVsc2Uge1xuICAgICAgJGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuICB9XG5cbiAgbW92ZSgkZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICAkZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICBpZiAodGhpcy5tb3ZpbmdBY3Rpb24pIHtcbiAgICAgIGNvbnN0IG9mZnNldEluQ2FyZHMgPSBNYXRoLnJvdW5kKCgkZXZlbnQuY2xpZW50WSAtIHRoaXMubW92ZVN0YXJ0KSAvIFByb2NlZHVyZUFjdGlvbnNDb21wb25lbnQuQ0FSRF9IRUlHSFQpO1xuICAgICAgaWYgKHRoaXMucHJldmlvdXNPZmZzZXQgIT09IG9mZnNldEluQ2FyZHMpIHtcbiAgICAgICAgdGhpcy5wcmV2aW91c09mZnNldCA9IG9mZnNldEluQ2FyZHM7XG4gICAgICAgIGNvbnN0IG5ld0luZGV4ID0gTWF0aC5taW4oXG4gICAgICAgICAgTWF0aC5tYXgodGhpcy5tb3ZlSW5pdGlhbEluZGV4ICsgb2Zmc2V0SW5DYXJkcywgMCksXG4gICAgICAgICAgdGhpcy5pbml0aWFsQWN0aW9uTGlzdC5sZW5ndGggLSAxXG4gICAgICAgICk7XG4gICAgICAgIGNvbnN0IG5ld0FjdGlvbnMgPSBbLi4udGhpcy5pbml0aWFsQWN0aW9uTGlzdF07XG4gICAgICAgIGNvbnN0IGVsZW1lbnQgPSBuZXdBY3Rpb25zLnNwbGljZSh0aGlzLm1vdmVJbml0aWFsSW5kZXgsIDEpWzBdO1xuICAgICAgICBuZXdBY3Rpb25zLnNwbGljZShuZXdJbmRleCwgMCwgZWxlbWVudCk7XG5cbiAgICAgICAgdGhpcy5tb2RpZmllZC5uZXh0KG5ld0FjdGlvbnMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGRyb3AoJGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgJGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgdGhpcy5tb3ZlKCRldmVudCk7XG4gICAgdGhpcy5tb3ZpbmdBY3Rpb24gPSB1bmRlZmluZWQ7XG4gIH1cblxuICBhbGxvd0Ryb3AoJGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgJGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gIH1cblxuICB0b2dnbGVBY3Rpb25TdGF0dXMoaW5kZXg6IG51bWJlciwgJGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgJGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgY29uc3QgbmV3QWN0aW9ucyA9IFsuLi50aGlzLmFjdGlvbnNdO1xuICAgIGlmIChuZXdBY3Rpb25zW2luZGV4XS5zdGF0dXMgIT09ICdET05FJykge1xuICAgICAgbmV3QWN0aW9uc1tpbmRleF0gPSB7XG4gICAgICAgIC4uLm5ld0FjdGlvbnNbaW5kZXhdLFxuICAgICAgICBzdGF0dXM6IG5ld0FjdGlvbnNbaW5kZXhdLnN0YXR1cyA9PT0gJ05FVycgPyAnSU5fUFJPR1JFU1MnIDogJ05FVydcbiAgICAgIH07XG4gICAgICB0aGlzLm1vZGlmaWVkLm5leHQobmV3QWN0aW9ucyk7XG4gICAgfVxuICB9XG5cbiAgYWRkKCkge1xuICAgIHRoaXMuYWN0aW9ucy5wdXNoKHsgdHlwZTogJycsIHN0YXR1czogJ05FVycsIGlkOiB2NCgpLCBfc3RhdHVzOiAnY3JlYXRlJyB9IGFzIEh5cEFjdGlvbik7XG4gICAgdGhpcy5tb2RpZmllZC5uZXh0KHRoaXMuYWN0aW9ucyk7XG4gIH1cblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgbW9kZWwgPSBtb2RlbDtcblxuICB1cGRhdGUoaWR4OiBudW1iZXIsIHByb3A6IHN0cmluZywgJGV2ZW50OiBhbnkpIHtcbiAgICAvLyBAdHMtaWdub3JlXG4gICAgdGhpcy5hY3Rpb25zW2lkeF1bcHJvcF0gPSAkZXZlbnQ7XG4gIH1cblxuICBvcGVuTW9kYWwoYWN0aW9uOiBIeXBBY3Rpb24sIGlkeDogbnVtYmVyKSB7XG4gICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5wcnlEaWFsb2cub3BlbihIdnlBY3Rpb25NZW51Q29tcG9uZW50LCB7XG4gICAgICBvdmVybGF5Q29uZmlnOiB7XG4gICAgICAgIGhhc0JhY2tkcm9wOiB0cnVlLFxuICAgICAgICBwYW5lbENsYXNzOiBbJ3ByeS1kaWFsb2ctY29udGFpbmVyJ10sXG4gICAgICAgIGJhY2tkcm9wQ2xhc3M6ICdiYWNrZHJvcCcsXG4gICAgICAgIHBvc2l0aW9uU3RyYXRlZ3k6IHRoaXMub3ZlcmxheVxuICAgICAgICAgIC5wb3NpdGlvbigpXG4gICAgICAgICAgLmZsZXhpYmxlQ29ubmVjdGVkVG8odGhpcy5tZW51QnV0dG9ucy5nZXQoaWR4KSEpXG4gICAgICAgICAgLndpdGhQb3NpdGlvbnMoW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBvcmlnaW5YOiAnc3RhcnQnLFxuICAgICAgICAgICAgICBvcmlnaW5ZOiAnYm90dG9tJyxcbiAgICAgICAgICAgICAgb3ZlcmxheVg6ICdzdGFydCcsXG4gICAgICAgICAgICAgIG92ZXJsYXlZOiAndG9wJ1xuICAgICAgICAgICAgfVxuICAgICAgICAgIF0pXG4gICAgICB9LFxuICAgICAgZGF0YToge1xuICAgICAgICBhY3Rpb24sXG4gICAgICAgIG1vZGU6IHRoaXMubW9kZSxcbiAgICAgICAgcmVhZG9ubHk6IHRoaXMucmVhZG9ubHksXG4gICAgICAgIGVuYWJsZUVkaXRBY3Rpb25zOiB0aGlzLmVuYWJsZUVkaXRBY3Rpb25zXG4gICAgICB9IGFzIEh2eUFjdGlvbk1lbnVEYXRhXG4gICAgfSk7XG5cbiAgICBjb25zdCBzdWIgPSBkaWFsb2dSZWYuY2xvc2VWYWx1ZS5zdWJzY3JpYmUoKHR5cGUpID0+IHtcbiAgICAgIHN3aXRjaCAodHlwZSkge1xuICAgICAgICBjYXNlICdjb21tZW50JzpcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vdCBZZXQgSW1wbGVtZW50ZWQnKTtcbiAgICAgICAgY2FzZSAndXBkYXRlJzpcbiAgICAgICAgICBhY3Rpb24uX2luaXRpYWwgPSBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KGFjdGlvbikpO1xuICAgICAgICAgIGFjdGlvbi5fc3RhdHVzID0gJ21vZGlmeSc7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ2RlbGV0ZSc6XG4gICAgICAgICAgdGhpcy5hY3Rpb25zLnNwbGljZShpZHgsIDEpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdkb25lJzpcbiAgICAgICAgICBhY3Rpb24uc3RhdHVzID0gJ0RPTkUnO1xuICAgICAgfVxuICAgICAgdGhpcy5tb2RpZmllZC5uZXh0KHRoaXMuYWN0aW9ucyk7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgc3ViLnVuc3Vic2NyaWJlKCk7XG4gICAgICB9LCAxMDApO1xuICAgIH0pO1xuICB9XG5cbiAgc2F2ZUFjdGlvbihhY3Rpb246IEh5cEFjdGlvbiwgaWR4OiBudW1iZXIpIHtcbiAgICBkZWxldGUgYWN0aW9uLl9pbml0aWFsO1xuICAgIGRlbGV0ZSBhY3Rpb24uX3N0YXR1cztcbiAgICB0aGlzLm1vZGlmaWVkLm5leHQodGhpcy5hY3Rpb25zKTtcbiAgfVxuXG4gIGNhbmNlbEFjdGlvbihhY3Rpb246IEh5cEFjdGlvbiwgaWR4OiBudW1iZXIpIHtcbiAgICBpZiAoYWN0aW9uLl9zdGF0dXMgPT09ICdtb2RpZnknKSB7XG4gICAgICB0aGlzLmFjdGlvbnNbaWR4XSA9IHsgLi4uYWN0aW9uLl9pbml0aWFsISB9O1xuICAgICAgZGVsZXRlIHRoaXMuYWN0aW9uc1tpZHhdLl9pbml0aWFsO1xuICAgICAgZGVsZXRlIHRoaXMuYWN0aW9uc1tpZHhdLl9zdGF0dXM7XG4gICAgfSBlbHNlIGlmIChhY3Rpb24uX3N0YXR1cyA9PT0gJ2NyZWF0ZScpIHtcbiAgICAgIHRoaXMuYWN0aW9ucy5zcGxpY2UoaWR4LCAxKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgaGFwcGVuJyk7XG4gICAgfVxuICAgIHRoaXMubW9kaWZpZWQubmV4dCh0aGlzLmFjdGlvbnMpO1xuICB9XG5cbiAgaXNWYWxpZChhY3Rpb246IEh5cEFjdGlvbikge1xuICAgIHJldHVybiAoXG4gICAgICBhY3Rpb24udHlwZSAmJlxuICAgICAgKEFDVElPTlNfVFlQRVMudmFsdWVzW2FjdGlvbi50eXBlXS52YWxpZGF0b3IgPT09IHVuZGVmaW5lZCB8fFxuICAgICAgICBBQ1RJT05TX1RZUEVTLnZhbHVlc1thY3Rpb24udHlwZV0udmFsaWRhdG9yIShhY3Rpb24pKVxuICAgICk7XG4gIH1cblxuICBpc0RyYWdnYWJsZShhY3Rpb246IEh5cEFjdGlvbikge1xuICAgIHJldHVybiAhdGhpcy5lZGl0aW5nICYmIGFjdGlvbi5zdGF0dXMgPT09ICdORVcnICYmICF0aGlzLnJlYWRvbmx5ICYmIHRoaXMuZW5hYmxlRWRpdEFjdGlvbnM7XG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJvLWh2eS1ldmVudHMtZGV0YWlsX19wcm9jZWR1cmVfX2FjdGlvbnNcIlxuICAoZHJhZyk9XCJtb3ZlKCRldmVudClcIlxuICAoZHJvcCk9XCJkcm9wKCRldmVudClcIlxuICAoZHJhZ292ZXIpPVwiYWxsb3dEcm9wKCRldmVudClcIlxuPlxuICBAZm9yIChhY3Rpb24gb2YgYWN0aW9uczsgdHJhY2sgYWN0aW9uLmlkOyBsZXQgaWR4ID0gJGluZGV4KSB7XG4gICAgPGRpdlxuICAgICAgY2xhc3M9XCJvLWh2eS1ldmVudHMtZGV0YWlsX19wcm9jZWR1cmVfX2FjdGlvbnNfX2FjdGlvblwiXG4gICAgICBbZHJhZ2dhYmxlXT1cImlzRHJhZ2dhYmxlKGFjdGlvbikgJiYgIXJlYWRvbmx5XCJcbiAgICAgIChkcmFnc3RhcnQpPVwiZHJhZ1N0YXJ0KCRldmVudCwgYWN0aW9uLCBpZHgpXCJcbiAgICAgIChtb3VzZWRvd24pPVwib25Nb3VzZURvd24oJGV2ZW50KVwiXG4gICAgICBbY2xhc3MuLXVwZGF0aW5nXT1cIiEhYWN0aW9uLl9zdGF0dXNcIlxuICAgICAgW2NsYXNzLi1vdGhlci11cGRhdGluZ109XCJlZGl0aW5nXCJcbiAgICA+XG4gICAgICA8cHJ5LWljb25cbiAgICAgICAgaWNvblN2Zz1cInNpeF9kb3RcIlxuICAgICAgICAjaGFuZGxlXG4gICAgICAgIFtjbGFzcy4tZGlzYWJsZWRdPVwiIWlzRHJhZ2dhYmxlKGFjdGlvbilcIlxuICAgICAgICBbY2xhc3MuLWhpZGRlbl09XCJhY3Rpb24uX3N0YXR1cyB8fCByZWFkb25seVwiXG4gICAgICAgIGNsYXNzPVwiZ3JhYmJhYmxlXCJcbiAgICAgID48L3ByeS1pY29uPlxuICAgICAgPGRpdiBjbGFzcz1cIm51bWJlci1iYWRnZVwiPnt7IGlkeCArIDEgfX08L2Rpdj5cbiAgICAgIEBpZiAoIWFjdGlvbi5fc3RhdHVzIHx8IHJlYWRvbmx5KSB7XG4gICAgICAgIEBpZiAobW9kZSA9PT0gJ3Byb2NlZHVyZScpIHtcbiAgICAgICAgICA8cHJ5LWNoZWNrYm94XG4gICAgICAgICAgICBbbmdNb2RlbF09XCJhY3Rpb24uc3RhdHVzICE9PSAnTkVXJ1wiXG4gICAgICAgICAgICAoY2xpY2spPVwidG9nZ2xlQWN0aW9uU3RhdHVzKGlkeCwgJGV2ZW50KVwiXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiYWN0aW9uLnN0YXR1cyA9PT0gJ0RPTkUnIHx8IChyZWFkb25seSA/PyBmYWxzZSlcIlxuICAgICAgICAgID48L3ByeS1jaGVja2JveD5cbiAgICAgICAgfVxuICAgICAgICA8ZGl2IFtjbGFzcy4tZG9uZV09XCJhY3Rpb24uc3RhdHVzID09PSAnRE9ORSdcIiBbY2xhc3MuLWRpc2FibGVkXT1cImVkaXRpbmdcIj5cbiAgICAgICAgICA8aHZ5LWFjdGlvbi1wYXJhbWV0ZXIgW2FjdGlvbl09XCJhY3Rpb25cIiBbdHlwZV09XCJhY3Rpb24udHlwZVwiIFtpc1BhcmFtXT1cImZhbHNlXCI+PC9odnktYWN0aW9uLXBhcmFtZXRlcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIEBpZiAoIXJlYWRvbmx5IHx8IGVuYWJsZUVkaXRBY3Rpb25zKSB7XG4gICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImEtYnRuIGEtYnRuLS1pY29uLW9ubHlcIiAoY2xpY2spPVwib3Blbk1vZGFsKGFjdGlvbiwgaWR4KVwiIFtkaXNhYmxlZF09XCJlZGl0aW5nXCI+XG4gICAgICAgICAgICA8cHJ5LWljb24gaWNvblN2Zz1cIm1vcmVfaG9yaXpcIiAjbWVudUJ1dHRvbj48L3ByeS1pY29uPlxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICB9XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cIm8taHZ5LWV2ZW50cy1kZXRhaWxfX3Byb2NlZHVyZV9fYWN0aW9uc19fYWN0aW9uX19jcmVhdGVcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiby1odnktZXZlbnRzLWRldGFpbF9fcHJvY2VkdXJlX19hY3Rpb25zX19hY3Rpb25fX2NyZWF0ZV9faGVhZGVyXCI+XG4gICAgICAgICAgICA8cD57eyAnQGh2eS5wcm9jZWR1cmUuYWN0aW9uLicgKyBhY3Rpb24uX3N0YXR1cyB8IGkxOG4gfX08L3A+XG4gICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYS1idG4gYS1idG4tLWljb24tb25seVwiIChjbGljayk9XCJzYXZlQWN0aW9uKGFjdGlvbiwgaWR4KVwiIFtkaXNhYmxlZF09XCIhaXNWYWxpZChhY3Rpb24pXCI+XG4gICAgICAgICAgICAgIDxwcnktaWNvbiBpY29uU3ZnPVwiY2hlY2tcIj48L3ByeS1pY29uPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYS1idG4gYS1idG4tLWljb24tb25seVwiIChjbGljayk9XCJjYW5jZWxBY3Rpb24oYWN0aW9uLCBpZHgpXCI+XG4gICAgICAgICAgICAgIDxwcnktaWNvbiBpY29uU3ZnPVwiY2xvc2VcIj48L3ByeS1pY29uPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxwcnktc2VsZWN0XG4gICAgICAgICAgICAgIFtuZ01vZGVsXT1cImFjdGlvbi50eXBlXCJcbiAgICAgICAgICAgICAgW2l0ZW1zXT1cIkFDVElPTlNfVFlQRVNcIlxuICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ1cGRhdGUoaWR4LCAndHlwZScsICRldmVudClcIlxuICAgICAgICAgICAgICBpMThuUHJlZml4PVwiQGh2eS5wcm9jZWR1cmUuYWN0aW9uLlwiXG4gICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInQGh2eS5wcm9jZWR1cmUuYWN0aW9uLnBsYWNlaG9sZGVyLmFjdGlvbicgfCBpMThuXCJcbiAgICAgICAgICAgID48L3ByeS1zZWxlY3Q+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGh2eS1hY3Rpb24tcGFyYW1ldGVyIFthY3Rpb25dPVwiYWN0aW9uXCIgW3R5cGVdPVwiYWN0aW9uLnR5cGVcIiBbaXNQYXJhbV09XCJ0cnVlXCI+PC9odnktYWN0aW9uLXBhcmFtZXRlcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICB9XG4gICAgPC9kaXY+XG4gIH0gQGVtcHR5IHtcbiAgICBAaWYgKGFjdGlvbnMubGVuZ3RoID09PSAwKSB7XG4gICAgICA8ZGl2Pnt7ICdAaHZ5LmV2ZW50LmxvZy5wcm9jZWR1cmUubm9BY3Rpb24nIHwgaTE4biB9fTwvZGl2PlxuICAgIH1cbiAgfVxuICBAaWYgKCFyZWFkb25seSkge1xuICAgIDxkaXYgY2xhc3M9XCJvLWh2eS1ldmVudHMtZGV0YWlsX19wcm9jZWR1cmVfX2J1dHRvblwiPlxuICAgICAgPGJ1dHRvbiBjbGFzcz1cImEtYnRuIGEtYnRuLS1wcmltYXJ5XCIgKGNsaWNrKT1cImFkZCgpXCIgW2Rpc2FibGVkXT1cImVkaXRpbmdcIj5cbiAgICAgICAgPHByeS1pY29uIGljb25Tdmc9XCJhZGRcIj48L3ByeS1pY29uPlxuICAgICAgICB7eyAnQGh2eS5wcm9jZWR1cmUuYWN0aW9uLmFkZCcgfCBpMThuIH19XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L2Rpdj5cbiAgfVxuPC9kaXY+XG4iXX0=
|
|
188
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvY2VkdXJlLWFjdGlvbnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9oeXBlcnZpc29yL3NyYy9saWIvZ2VuZXJhbC9wcm9jZWR1cmUtYWN0aW9ucy9wcm9jZWR1cmUtYWN0aW9ucy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2h5cGVydmlzb3Ivc3JjL2xpYi9nZW5lcmFsL3Byb2NlZHVyZS1hY3Rpb25zL3Byb2NlZHVyZS1hY3Rpb25zLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBYSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkgsT0FBTyxFQUFvQyx3QkFBd0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRWhHLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUIsT0FBTyxFQUFFLHNCQUFzQixFQUFxQixNQUFNLHlCQUF5QixDQUFDO0FBRXBGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7OztBQU16RCxNQUFNLE9BQU8seUJBQTBCLFNBQVEsd0JBQXdCO2FBQzlELGdCQUFXLEdBQUcsRUFBRSxBQUFMLENBQU07SUFleEIsWUFDVSxTQUEyQixFQUMzQixPQUFnQixFQUNoQixXQUEyQjtRQUVuQyxLQUFLLEVBQUUsQ0FBQztRQUpBLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBQzNCLFlBQU8sR0FBUCxPQUFPLENBQVM7UUFDaEIsZ0JBQVcsR0FBWCxXQUFXLENBQWdCO1FBaEJyQyxjQUFTLEdBQUcsQ0FBQyxDQUFDO1FBQ2QscUJBQWdCLEdBQUcsQ0FBQyxDQUFDO1FBQ3JCLHNCQUFp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Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBRzRDLFdBQVc7c0JBQTVELFlBQVk7dUJBQUMsWUFBWSxFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRTtnQkFZbkMsT0FBTztzQkFBbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgbW9kZWwsIE91dHB1dCwgUXVlcnlMaXN0LCBWaWV3Q2hpbGRyZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFByeURpYWxvZ1NlcnZpY2UsIFByeUkxOG5TZXJ2aWNlLCBTdWJzY3JpcHRpb25uZXJEaXJlY3RpdmUgfSBmcm9tICdAcHJvdm9seS9kYXNoYm9hcmQnO1xuaW1wb3J0IHsgSHlwQWN0aW9uIH0gZnJvbSAnLi4vLi4vbW9kZWwvcHJvY2VkdXJlL2h5cC1hY3Rpb24uaW50ZXJmYWNlJztcbmltcG9ydCB7IHY0IH0gZnJvbSAndXVpZCc7XG5pbXBvcnQgeyBIdnlBY3Rpb25NZW51Q29tcG9uZW50LCBIdnlBY3Rpb25NZW51RGF0YSB9IGZyb20gJy4vYWN0aW9uLW1lbnUuY29tcG9uZW50JztcbmltcG9ydCB7IE92ZXJsYXkgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBBQ1RJT05TX1RZUEVTIH0gZnJvbSAnLi9hY3Rpb25zLXR5cGVzLmNvbnN0YW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaHZ5LXByb2NlZHVyZS1hY3Rpb25zJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Byb2NlZHVyZS1hY3Rpb25zLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBQcm9jZWR1cmVBY3Rpb25zQ29tcG9uZW50IGV4dGVuZHMgU3Vic2NyaXB0aW9ubmVyRGlyZWN0aXZlIHtcbiAgc3RhdGljIENBUkRfSEVJR0hUID0gNzU7XG4gIG1vdmluZ0FjdGlvbj86IEh5cEFjdGlvbjtcbiAgbW92ZVN0YXJ0ID0gMDtcbiAgbW92ZUluaXRpYWxJbmRleCA9IDA7XG4gIGluaXRpYWxBY3Rpb25MaXN0OiBIeXBBY3Rpb25bXSA9IFtdO1xuICBwcmV2aW91c09mZnNldCA9IDA7XG4gIGRyYWdUYXJnZXQ/OiBFdmVudFRhcmdldCB8IG51bGw7XG4gIEBPdXRwdXQoKSBtb2RpZmllZCA9IG5ldyBFdmVudEVtaXR0ZXI8SHlwQWN0aW9uW10+KCk7XG4gIEBJbnB1dCgpIG1vZGU6ICdtb2RlbCcgfCAncHJvY2VkdXJlJyA9ICdwcm9jZWR1cmUnO1xuICBASW5wdXQoKSByZWFkb25seTogYm9vbGVhbiB8IG51bGwgPSBmYWxzZTtcbiAgQElucHV0KCkgZW5hYmxlRWRpdEFjdGlvbnM6IGJvb2xlYW4gfCBudWxsID0gZmFsc2U7XG4gIEFDVElPTlNfVFlQRVM6IHN0cmluZ1tdO1xuICBfYWN0aW9uczogSHlwQWN0aW9uW10gPSBbXTtcbiAgQFZpZXdDaGlsZHJlbignbWVudUJ1dHRvbicsIHsgcmVhZDogRWxlbWVudFJlZiB9KSBtZW51QnV0dG9ucyE6IFF1ZXJ5TGlzdDxFbGVtZW50UmVmPjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHByeURpYWxvZzogUHJ5RGlhbG9nU2VydmljZSxcbiAgICBwcml2YXRlIG92ZXJsYXk6IE92ZXJsYXksXG4gICAgcHJpdmF0ZSBpMThuU2VydmljZTogUHJ5STE4blNlcnZpY2VcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLkFDVElPTlNfVFlQRVMgPSBPYmplY3Qua2V5cyhBQ1RJT05TX1RZUEVTLnZhbHVlcyk7XG4gICAgdGhpcy5BQ1RJT05TX1RZUEVTLnNvcnQoKGEsIGIpID0+IEFDVElPTlNfVFlQRVMudmFsdWVzW2FdLm9yZGVyIC0gQUNUSU9OU19UWVBFUy52YWx1ZXNbYl0ub3JkZXIpO1xuICB9XG5cbiAgQElucHV0KCkgc2V0IGFjdGlvbnMoYWN0aW9uczogSHlwQWN0aW9uW10pIHtcbiAgICB0aGlzLl9hY3Rpb25zID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShhY3Rpb25zID8/IFtdKSk7XG4gIH1cblxuICBnZXQgYWN0aW9ucygpIHtcbiAgICByZXR1cm4gdGhpcy5fYWN0aW9ucztcbiAgfVxuXG4gIGdldCBlZGl0aW5nKCkge1xuICAgIHJldHVybiAhIXRoaXMuYWN0aW9ucy5maW5kKChhY3Rpb24pID0+IGFjdGlvbi5fc3RhdHVzKTtcbiAgfVxuXG4gIG9uTW91c2VEb3duKCRldmVudDogTW91c2VFdmVudCkge1xuICAgIHRoaXMuZHJhZ1RhcmdldCA9ICRldmVudC50YXJnZXQ7XG4gIH1cblxuICBkcmFnU3RhcnQoJGV2ZW50OiBNb3VzZUV2ZW50LCBhY3Rpb246IEh5cEFjdGlvbiwgaW5kZXg6IG51bWJlcikge1xuICAgIGlmICh0aGlzLmRyYWdUYXJnZXQgJiYgKHRoaXMuZHJhZ1RhcmdldCBhcyBIVE1MRGl2RWxlbWVudCkuc3R5bGUubWFza0ltYWdlLmluZGV4T2YoJ3NpeF9kb3QnKSA+IC0xKSB7XG4gICAgICB0aGlzLm1vdmluZ0FjdGlvbiA9IGFjdGlvbjtcbiAgICAgIHRoaXMubW92ZVN0YXJ0ID0gJGV2ZW50LmNsaWVudFk7XG4gICAgICB0aGlzLm1vdmVJbml0aWFsSW5kZXggPSBpbmRleDtcbiAgICAgIHRoaXMuaW5pdGlhbEFjdGlvbkxpc3QgPSBbLi4udGhpcy5hY3Rpb25zXTtcbiAgICB9IGVsc2Uge1xuICAgICAgJGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuICB9XG5cbiAgbW92ZSgkZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICAkZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICBpZiAodGhpcy5tb3ZpbmdBY3Rpb24pIHtcbiAgICAgIGNvbnN0IG9mZnNldEluQ2FyZHMgPSBNYXRoLnJvdW5kKCgkZXZlbnQuY2xpZW50WSAtIHRoaXMubW92ZVN0YXJ0KSAvIFByb2NlZHVyZUFjdGlvbnNDb21wb25lbnQuQ0FSRF9IRUlHSFQpO1xuICAgICAgaWYgKHRoaXMucHJldmlvdXNPZmZzZXQgIT09IG9mZnNldEluQ2FyZHMpIHtcbiAgICAgICAgdGhpcy5wcmV2aW91c09mZnNldCA9IG9mZnNldEluQ2FyZHM7XG4gICAgICAgIGNvbnN0IG5ld0luZGV4ID0gTWF0aC5taW4oXG4gICAgICAgICAgTWF0aC5tYXgodGhpcy5tb3ZlSW5pdGlhbEluZGV4ICsgb2Zmc2V0SW5DYXJkcywgMCksXG4gICAgICAgICAgdGhpcy5pbml0aWFsQWN0aW9uTGlzdC5sZW5ndGggLSAxXG4gICAgICAgICk7XG4gICAgICAgIGNvbnN0IG5ld0FjdGlvbnMgPSBbLi4udGhpcy5pbml0aWFsQWN0aW9uTGlzdF07XG4gICAgICAgIGNvbnN0IGVsZW1lbnQgPSBuZXdBY3Rpb25zLnNwbGljZSh0aGlzLm1vdmVJbml0aWFsSW5kZXgsIDEpWzBdO1xuICAgICAgICBuZXdBY3Rpb25zLnNwbGljZShuZXdJbmRleCwgMCwgZWxlbWVudCk7XG5cbiAgICAgICAgdGhpcy5tb2RpZmllZC5uZXh0KG5ld0FjdGlvbnMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGRyb3AoJGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgJGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgdGhpcy5tb3ZlKCRldmVudCk7XG4gICAgdGhpcy5tb3ZpbmdBY3Rpb24gPSB1bmRlZmluZWQ7XG4gIH1cblxuICBhbGxvd0Ryb3AoJGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgJGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gIH1cblxuICB0b2dnbGVBY3Rpb25TdGF0dXMoaW5kZXg6IG51bWJlciwgJGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgJGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgY29uc3QgbmV3QWN0aW9ucyA9IFsuLi50aGlzLmFjdGlvbnNdO1xuICAgIGlmIChuZXdBY3Rpb25zW2luZGV4XS5zdGF0dXMgIT09ICdET05FJykge1xuICAgICAgbmV3QWN0aW9uc1tpbmRleF0gPSB7XG4gICAgICAgIC4uLm5ld0FjdGlvbnNbaW5kZXhdLFxuICAgICAgICBzdGF0dXM6IG5ld0FjdGlvbnNbaW5kZXhdLnN0YXR1cyA9PT0gJ05FVycgPyAnSU5fUFJPR1JFU1MnIDogJ05FVydcbiAgICAgIH07XG4gICAgICB0aGlzLm1vZGlmaWVkLm5leHQobmV3QWN0aW9ucyk7XG4gICAgfVxuICB9XG5cbiAgYWRkKCkge1xuICAgIHRoaXMuYWN0aW9ucy5wdXNoKHsgdHlwZTogJycsIHN0YXR1czogJ05FVycsIGlkOiB2NCgpLCBfc3RhdHVzOiAnY3JlYXRlJyB9IGFzIEh5cEFjdGlvbik7XG4gICAgdGhpcy5tb2RpZmllZC5uZXh0KHRoaXMuYWN0aW9ucyk7XG4gIH1cblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgbW9kZWwgPSBtb2RlbDtcblxuICB1cGRhdGUoaWR4OiBudW1iZXIsIHByb3A6IHN0cmluZywgJGV2ZW50OiBhbnkpIHtcbiAgICAvLyBAdHMtaWdub3JlXG4gICAgdGhpcy5hY3Rpb25zW2lkeF1bcHJvcF0gPSAkZXZlbnQ7XG4gIH1cblxuICBvcGVuTW9kYWwoYWN0aW9uOiBIeXBBY3Rpb24sIGlkeDogbnVtYmVyKSB7XG4gICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5wcnlEaWFsb2cub3BlbihIdnlBY3Rpb25NZW51Q29tcG9uZW50LCB7XG4gICAgICBvdmVybGF5Q29uZmlnOiB7XG4gICAgICAgIGhhc0JhY2tkcm9wOiB0cnVlLFxuICAgICAgICBwYW5lbENsYXNzOiBbJ3ByeS1kaWFsb2ctY29udGFpbmVyJ10sXG4gICAgICAgIGJhY2tkcm9wQ2xhc3M6ICdiYWNrZHJvcCcsXG4gICAgICAgIHBvc2l0aW9uU3RyYXRlZ3k6IHRoaXMub3ZlcmxheVxuICAgICAgICAgIC5wb3NpdGlvbigpXG4gICAgICAgICAgLmZsZXhpYmxlQ29ubmVjdGVkVG8odGhpcy5tZW51QnV0dG9ucy5nZXQoaWR4KSEpXG4gICAgICAgICAgLndpdGhQb3NpdGlvbnMoW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBvcmlnaW5YOiAnc3RhcnQnLFxuICAgICAgICAgICAgICBvcmlnaW5ZOiAnYm90dG9tJyxcbiAgICAgICAgICAgICAgb3ZlcmxheVg6ICdzdGFydCcsXG4gICAgICAgICAgICAgIG92ZXJsYXlZOiAndG9wJ1xuICAgICAgICAgICAgfVxuICAgICAgICAgIF0pXG4gICAgICB9LFxuICAgICAgZGF0YToge1xuICAgICAgICBhY3Rpb24sXG4gICAgICAgIG1vZGU6IHRoaXMubW9kZSxcbiAgICAgICAgcmVhZG9ubHk6IHRoaXMucmVhZG9ubHksXG4gICAgICAgIGVuYWJsZUVkaXRBY3Rpb25zOiB0aGlzLmVuYWJsZUVkaXRBY3Rpb25zXG4gICAgICB9IGFzIEh2eUFjdGlvbk1lbnVEYXRhXG4gICAgfSk7XG5cbiAgICBjb25zdCBzdWIgPSBkaWFsb2dSZWYuY2xvc2VWYWx1ZS5zdWJzY3JpYmUoKHR5cGUpID0+IHtcbiAgICAgIHN3aXRjaCAodHlwZSkge1xuICAgICAgICBjYXNlICdjb21tZW50JzpcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vdCBZZXQgSW1wbGVtZW50ZWQnKTtcbiAgICAgICAgY2FzZSAndXBkYXRlJzpcbiAgICAgICAgICBhY3Rpb24uX2luaXRpYWwgPSBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KGFjdGlvbikpO1xuICAgICAgICAgIGFjdGlvbi5fc3RhdHVzID0gJ21vZGlmeSc7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ2RlbGV0ZSc6XG4gICAgICAgICAgdGhpcy5hY3Rpb25zLnNwbGljZShpZHgsIDEpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdkb25lJzpcbiAgICAgICAgICBhY3Rpb24uc3RhdHVzID0gJ0RPTkUnO1xuICAgICAgfVxuICAgICAgdGhpcy5tb2RpZmllZC5uZXh0KHRoaXMuYWN0aW9ucyk7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgc3ViLnVuc3Vic2NyaWJlKCk7XG4gICAgICB9LCAxMDApO1xuICAgIH0pO1xuICB9XG5cbiAgc2F2ZUFjdGlvbihhY3Rpb246IEh5cEFjdGlvbiwgaWR4OiBudW1iZXIpIHtcbiAgICBkZWxldGUgYWN0aW9uLl9pbml0aWFsO1xuICAgIGRlbGV0ZSBhY3Rpb24uX3N0YXR1cztcbiAgICB0aGlzLm1vZGlmaWVkLm5leHQodGhpcy5hY3Rpb25zKTtcbiAgfVxuXG4gIGNhbmNlbEFjdGlvbihhY3Rpb246IEh5cEFjdGlvbiwgaWR4OiBudW1iZXIpIHtcbiAgICBpZiAoYWN0aW9uLl9zdGF0dXMgPT09ICdtb2RpZnknKSB7XG4gICAgICB0aGlzLmFjdGlvbnNbaWR4XSA9IHsgLi4uYWN0aW9uLl9pbml0aWFsISB9O1xuICAgICAgZGVsZXRlIHRoaXMuYWN0aW9uc1tpZHhdLl9pbml0aWFsO1xuICAgICAgZGVsZXRlIHRoaXMuYWN0aW9uc1tpZHhdLl9zdGF0dXM7XG4gICAgfSBlbHNlIGlmIChhY3Rpb24uX3N0YXR1cyA9PT0gJ2NyZWF0ZScpIHtcbiAgICAgIHRoaXMuYWN0aW9ucy5zcGxpY2UoaWR4LCAxKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgaGFwcGVuJyk7XG4gICAgfVxuICAgIHRoaXMubW9kaWZpZWQubmV4dCh0aGlzLmFjdGlvbnMpO1xuICB9XG5cbiAgaXNWYWxpZChhY3Rpb246IEh5cEFjdGlvbikge1xuICAgIHJldHVybiAoXG4gICAgICBhY3Rpb24udHlwZSAmJlxuICAgICAgKEFDVElPTlNfVFlQRVMudmFsdWVzW2FjdGlvbi50eXBlXS52YWxpZGF0b3IgPT09IHVuZGVmaW5lZCB8fFxuICAgICAgICBBQ1RJT05TX1RZUEVTLnZhbHVlc1thY3Rpb24udHlwZV0udmFsaWRhdG9yIShhY3Rpb24pKVxuICAgICk7XG4gIH1cblxuICBpc0RyYWdnYWJsZShhY3Rpb246IEh5cEFjdGlvbikge1xuICAgIHJldHVybiAhdGhpcy5lZGl0aW5nICYmIGFjdGlvbi5zdGF0dXMgPT09ICdORVcnICYmICF0aGlzLnJlYWRvbmx5ICYmIHRoaXMuZW5hYmxlRWRpdEFjdGlvbnM7XG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJvLWh2eS1ldmVudHMtZGV0YWlsX19wcm9jZWR1cmVfX2FjdGlvbnNcIlxuICAoZHJhZyk9XCJtb3ZlKCRldmVudClcIlxuICAoZHJvcCk9XCJkcm9wKCRldmVudClcIlxuICAoZHJhZ292ZXIpPVwiYWxsb3dEcm9wKCRldmVudClcIlxuPlxuICBAZm9yIChhY3Rpb24gb2YgYWN0aW9uczsgdHJhY2sgYWN0aW9uLmlkOyBsZXQgaWR4ID0gJGluZGV4KSB7XG4gICAgPGRpdlxuICAgICAgY2xhc3M9XCJvLWh2eS1ldmVudHMtZGV0YWlsX19wcm9jZWR1cmVfX2FjdGlvbnNfX2FjdGlvblwiXG4gICAgICBbZHJhZ2dhYmxlXT1cImlzRHJhZ2dhYmxlKGFjdGlvbikgJiYgIXJlYWRvbmx5XCJcbiAgICAgIChkcmFnc3RhcnQpPVwiZHJhZ1N0YXJ0KCRldmVudCwgYWN0aW9uLCBpZHgpXCJcbiAgICAgIChtb3VzZWRvd24pPVwib25Nb3VzZURvd24oJGV2ZW50KVwiXG4gICAgICBbY2xhc3MuLXVwZGF0aW5nXT1cIiEhYWN0aW9uLl9zdGF0dXNcIlxuICAgICAgW2NsYXNzLi1vdGhlci11cGRhdGluZ109XCJlZGl0aW5nXCJcbiAgICA+XG4gICAgICA8cHJ5LWljb25cbiAgICAgICAgaWNvblN2Zz1cInNpeF9kb3RcIlxuICAgICAgICAjaGFuZGxlXG4gICAgICAgIFtjbGFzcy4tZGlzYWJsZWRdPVwiIWlzRHJhZ2dhYmxlKGFjdGlvbilcIlxuICAgICAgICBbY2xhc3MuLWhpZGRlbl09XCJhY3Rpb24uX3N0YXR1cyB8fCByZWFkb25seVwiXG4gICAgICAgIGNsYXNzPVwiZ3JhYmJhYmxlXCJcbiAgICAgID48L3ByeS1pY29uPlxuICAgICAgPGRpdiBjbGFzcz1cIm51bWJlci1iYWRnZVwiPnt7IGlkeCArIDEgfX08L2Rpdj5cbiAgICAgIEBpZiAoIWFjdGlvbi5fc3RhdHVzIHx8IHJlYWRvbmx5KSB7XG4gICAgICAgIEBpZiAobW9kZSA9PT0gJ3Byb2NlZHVyZScpIHtcbiAgICAgICAgICA8cHJ5LWNoZWNrYm94XG4gICAgICAgICAgICBbbmdNb2RlbF09XCJhY3Rpb24uc3RhdHVzICE9PSAnTkVXJ1wiXG4gICAgICAgICAgICAoY2xpY2spPVwidG9nZ2xlQWN0aW9uU3RhdHVzKGlkeCwgJGV2ZW50KVwiXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiYWN0aW9uLnN0YXR1cyA9PT0gJ0RPTkUnIHx8IChyZWFkb25seSA/PyBmYWxzZSlcIlxuICAgICAgICAgID48L3ByeS1jaGVja2JveD5cbiAgICAgICAgfVxuICAgICAgICA8ZGl2IFtjbGFzcy4tZG9uZV09XCJhY3Rpb24uc3RhdHVzID09PSAnRE9ORSdcIiBbY2xhc3MuLWRpc2FibGVkXT1cImVkaXRpbmdcIj5cbiAgICAgICAgICA8aHZ5LWFjdGlvbi1wYXJhbWV0ZXIgW2FjdGlvbl09XCJhY3Rpb25cIiBbdHlwZV09XCJhY3Rpb24udHlwZVwiIFtpc1BhcmFtXT1cImZhbHNlXCI+PC9odnktYWN0aW9uLXBhcmFtZXRlcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIEBpZiAoIXJlYWRvbmx5IHx8IGVuYWJsZUVkaXRBY3Rpb25zKSB7XG4gICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImEtYnRuIGEtYnRuLS1pY29uLW9ubHlcIiAoY2xpY2spPVwib3Blbk1vZGFsKGFjdGlvbiwgaWR4KVwiIFtkaXNhYmxlZF09XCJlZGl0aW5nXCI+XG4gICAgICAgICAgICA8cHJ5LWljb24gaWNvblN2Zz1cIm1vcmVfaG9yaXpcIiAjbWVudUJ1dHRvbj48L3ByeS1pY29uPlxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICB9XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cIm8taHZ5LWV2ZW50cy1kZXRhaWxfX3Byb2NlZHVyZV9fYWN0aW9uc19fYWN0aW9uX19jcmVhdGVcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiby1odnktZXZlbnRzLWRldGFpbF9fcHJvY2VkdXJlX19hY3Rpb25zX19hY3Rpb25fX2NyZWF0ZV9faGVhZGVyXCI+XG4gICAgICAgICAgICA8cD57eyAnQGh2eS5wcm9jZWR1cmUuYWN0aW9uLicgKyBhY3Rpb24uX3N0YXR1cyB8IGkxOG4gfX08L3A+XG4gICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYS1idG4gYS1idG4tLWljb24tb25seVwiIChjbGljayk9XCJzYXZlQWN0aW9uKGFjdGlvbiwgaWR4KVwiIFtkaXNhYmxlZF09XCIhaXNWYWxpZChhY3Rpb24pXCI+XG4gICAgICAgICAgICAgIDxwcnktaWNvbiBpY29uU3ZnPVwiY2hlY2tcIj48L3ByeS1pY29uPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYS1idG4gYS1idG4tLWljb24tb25seVwiIChjbGljayk9XCJjYW5jZWxBY3Rpb24oYWN0aW9uLCBpZHgpXCI+XG4gICAgICAgICAgICAgIDxwcnktaWNvbiBpY29uU3ZnPVwiY2xvc2VcIj48L3ByeS1pY29uPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxwcnktc2VsZWN0XG4gICAgICAgICAgICAgIFtuZ01vZGVsXT1cImFjdGlvbi50eXBlXCJcbiAgICAgICAgICAgICAgW2l0ZW1zXT1cIkFDVElPTlNfVFlQRVNcIlxuICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ1cGRhdGUoaWR4LCAndHlwZScsICRldmVudClcIlxuICAgICAgICAgICAgICBpMThuUHJlZml4PVwiQGh2eS5wcm9jZWR1cmUuYWN0aW9uLlwiXG4gICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInQGh2eS5wcm9jZWR1cmUuYWN0aW9uLnBsYWNlaG9sZGVyLmFjdGlvbicgfCBpMThuXCJcbiAgICAgICAgICAgID48L3ByeS1zZWxlY3Q+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGh2eS1hY3Rpb24tcGFyYW1ldGVyIFthY3Rpb25dPVwiYWN0aW9uXCIgW3R5cGVdPVwiYWN0aW9uLnR5cGVcIiBbaXNQYXJhbV09XCJ0cnVlXCI+PC9odnktYWN0aW9uLXBhcmFtZXRlcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICB9XG4gICAgPC9kaXY+XG4gIH0gQGVtcHR5IHtcbiAgICBAaWYgKGFjdGlvbnMubGVuZ3RoID09PSAwKSB7XG4gICAgICA8ZGl2Pnt7ICdAaHZ5LmV2ZW50LmxvZy5wcm9jZWR1cmUubm9BY3Rpb24nIHwgaTE4biB9fTwvZGl2PlxuICAgIH1cbiAgfVxuICBAaWYgKCFyZWFkb25seSAmJiBlbmFibGVFZGl0QWN0aW9ucykge1xuICAgIDxkaXYgY2xhc3M9XCJvLWh2eS1ldmVudHMtZGV0YWlsX19wcm9jZWR1cmVfX2J1dHRvblwiPlxuICAgICAgPGJ1dHRvbiBjbGFzcz1cImEtYnRuIGEtYnRuLS1wcmltYXJ5XCIgKGNsaWNrKT1cImFkZCgpXCIgW2Rpc2FibGVkXT1cImVkaXRpbmdcIj5cbiAgICAgICAgPHByeS1pY29uIGljb25Tdmc9XCJhZGRcIj48L3ByeS1pY29uPlxuICAgICAgICB7eyAnQGh2eS5wcm9jZWR1cmUuYWN0aW9uLmFkZCcgfCBpMThuIH19XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L2Rpdj5cbiAgfVxuPC9kaXY+XG4iXX0=
|
|
@@ -157,7 +157,8 @@ export class PvyHypervisorModule {
|
|
|
157
157
|
PrySelectModule,
|
|
158
158
|
JsonPipe,
|
|
159
159
|
PryDatePickerModule,
|
|
160
|
-
NgIf
|
|
160
|
+
NgIf,
|
|
161
|
+
PryCoreModule], exports: [EventDetailComponent,
|
|
161
162
|
EventListComponent,
|
|
162
163
|
EventColumnOrderComponent,
|
|
163
164
|
IconDisplayComponent,
|
|
@@ -203,7 +204,8 @@ export class PvyHypervisorModule {
|
|
|
203
204
|
PrySinceDateModule,
|
|
204
205
|
PryIconModule,
|
|
205
206
|
PrySelectModule,
|
|
206
|
-
PryDatePickerModule
|
|
207
|
+
PryDatePickerModule,
|
|
208
|
+
PryCoreModule] }); }
|
|
207
209
|
}
|
|
208
210
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: PvyHypervisorModule, decorators: [{
|
|
209
211
|
type: NgModule,
|
|
@@ -230,7 +232,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
|
|
|
230
232
|
PrySelectModule,
|
|
231
233
|
JsonPipe,
|
|
232
234
|
PryDatePickerModule,
|
|
233
|
-
NgIf
|
|
235
|
+
NgIf,
|
|
236
|
+
PryCoreModule
|
|
234
237
|
],
|
|
235
238
|
exports: [...components]
|
|
236
239
|
}]
|
|
@@ -238,4 +241,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
|
|
|
238
241
|
type: Inject,
|
|
239
242
|
args: [HYP_BASE_CONFIG]
|
|
240
243
|
}] }, { type: i1.Store }, { type: i2.PryI18nService }] });
|
|
241
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHlwZXJ2aXNvci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2h5cGVydmlzb3Ivc3JjL2xpYi9oeXBlcnZpc29yLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUF1QixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5QyxPQUFPLEVBQVMsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDNUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzNELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxhQUFhLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN6RixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDMUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3RHLE9BQU8sRUFDTCxhQUFhLEVBQ2IsbUJBQW1CLEVBQ25CLGFBQWEsRUFFYixhQUFhLEVBQ2IsZUFBZSxFQUNmLGtCQUFrQixFQUNuQixNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNoRSxPQUFPLEVBQUUsY0FBYyxF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QUNQLFdBQVcsQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLGlCQUFpQixDQUFDO3dCQUN4RCxXQUFXLENBQUMsVUFBVSxDQUFDLGVBQWUsRUFBRSxZQUFZLENBQUM7d0JBQ3JELFdBQVcsQ0FBQyxVQUFVLENBQUMsc0JBQXNCLEVBQUUsbUJBQW1CLENBQUM7d0JBQ25FLFdBQVcsQ0FBQyxVQUFVLENBQUMsbUJBQW1CLEVBQUUsZ0JBQWdCLENBQUM7d0JBQzdELGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxZQUFZLEVBQUUsbUJBQW1CLEVBQUUsZ0JBQWdCLEVBQUUsaUJBQWlCLENBQUMsQ0FBQzt3QkFDbEcsT0FBTzt3QkFDUCxTQUFTO3dCQUNULGFBQWE7d0JBQ2IsYUFBYTt3QkFDYixPQUFPO3dCQUNQLGlCQUFpQjt3QkFDakIsV0FBVzt3QkFDWCxVQUFVO3dCQUNWLGtCQUFrQjt3QkFDbEIsUUFBUTt3QkFDUixhQUFhO3dCQUNiLFlBQVk7d0JBQ1osZUFBZTt3QkFDZixRQUFRO3dCQUNSLG1CQUFtQjt3QkFDbkIsSUFBSTtxQkFDTDtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxHQUFHLFVBQVUsQ0FBQztpQkFDekI7OzBCQVVJLE1BQU07MkJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEVmZmVjdHNNb2R1bGUgfSBmcm9tICdAbmdyeC9lZmZlY3RzJztcbmltcG9ydCB7IFN0b3JlLCBTdG9yZU1vZHVsZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IGV2ZW50RmVhdHVyZUtleSwgZXZlbnRSZWR1Y2VyIH0gZnJvbSAnLi9zdG9yZS9ldmVudC9ldmVudC5yZWR1Y2VyJztcbmltcG9ydCB7IEV2ZW50RWZmZWN0cyB9IGZyb20gJy4vc3RvcmUvZXZlbnQvZXZlbnQuZWZmZWN0cyc7XG5pbXBvcnQgeyBFdmVudERldGFpbENvbXBvbmVudCB9IGZyb20gJy4vZXZlbnQvZGV0YWlsL2V2ZW50LWRldGFpbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgaHlwZXJ2aXNvclJlZHVjZXIsIGh5cEZlYXR1cmVLZXkgfSBmcm9tICcuL3N0b3JlL2h5cGVydmlzb3IvaHlwZXJ2aXNvci5yZWR1Y2VyJztcbmltcG9ydCB7IEh5cGVydmlzb3JFZmZlY3RzIH0gZnJvbSAnLi9zdG9yZS9oeXBlcnZpc29yL2h5cGVydmlzb3IuZWZmZWN0cyc7XG5pbXBvcnQgeyBIWVBfQkFTRV9DT05GSUcgfSBmcm9tICcuL2dlbmVyYWwvYmFzZS50b2tlbic7XG5pbXBvcnQgeyBIeXBlcnZpc29yQWN0aW9ucyB9IGZyb20gJy4vc3RvcmUvaHlwZXJ2aXNvci9oeXBlcnZpc29yLmFjdGlvbnMnO1xuaW1wb3J0IHsgQXN5bmNQaXBlLCBEYXRlUGlwZSwgSnNvblBpcGUsIEtleVZhbHVlUGlwZSwgTmdGb3JPZiwgTmdJZiwgTmdTdHlsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBQcnlDb3JlTW9kdWxlLFxuICBQcnlEYXRlUGlja2VyTW9kdWxlLFxuICBQcnlJMThuTW9kdWxlLFxuICBQcnlJMThuU2VydmljZSxcbiAgUHJ5SWNvbk1vZHVsZSxcbiAgUHJ5U2VsZWN0TW9kdWxlLFxuICBQcnlTaW5jZURhdGVNb2R1bGVcbn0gZnJvbSAnQHByb3ZvbHkvZGFzaGJvYXJkJztcbmltcG9ydCB7IGVuVHJhbnNsYXRpb25zIH0gZnJvbSAnLi9nZW5lcmFsL2kxOG4vZW4udHJhbnNsYXRpb25zJztcbmltcG9ydCB7IGZyVHJhbnNsYXRpb25zIH0gZnJvbSAnLi9nZW5lcmFsL2kxOG4vZnIudHJhbnNsYXRpb25zJztcbmltcG9ydCB7IEljb25EaXNwbGF5Q29tcG9uZW50IH0gZnJvbSAnLi9nZW5lcmFsL2ljb24tZGlzcGxheS9pY29uLWRpc3BsYXkuY29tcG9uZW50JztcbmltcG9ydCB7IEV2ZW50SWNvblBpcGUgfSBmcm9tICcuL2dlbmVyYWwvaWNvbi1waXBlL2V2ZW50LWljb24ucGlwZSc7XG5pbXBvcnQgeyBQcnlDaGVja2JveE1vZHVsZSB9IGZyb20gJ0Bwcm92b2x5L2Rhc2hib2FyZC9jb21wb25lbnRzL2NoZWNrYm94JztcbmltcG9ydCB7IEV2ZW50TGlzdENvbXBvbmVudCB9IGZyb20gJy4vZXZlbnQvbGlzdC9ldmVudC1saXN0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFJvdXRlckxpbmsgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgRXZlbnRTdW1tYXJ5TGlzdENvbXBvbmVudCB9IGZyb20gJy4vZXZlbnQtc3VtbWFyeS9saXN0L2V2ZW50LXN1bW1hcnktbGlzdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRXZlbnRTdW1tYXJ5SXRlbUNvbXBvbmVudCB9IGZyb20gJy4vZXZlbnQtc3VtbWFyeS9pdGVtL2V2ZW50LXN1bW1hcnktaXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRXZlbnRTdW1tYXJ5RWZmZWN0cyB9IGZyb20gJy4vc3RvcmUvZXZlbnQtc3VtbWFyeS9ldmVudC1zdW1tYXJ5LmVmZmVjdHMnO1xuaW1wb3J0IHsgZXZlbnRTdW1tYXJ5RmVhdHVyZUtleSwgZXZlbnRTdW1tYXJ5UmVkdWNlciB9IGZyb20gJy4vc3RvcmUvZXZlbnQtc3VtbWFyeS9ldmVudC1zdW1tYXJ5LnJlZHVjZXInO1xuaW1wb3J0IHsgRXZlbnRTdW1tYXJ5UGFnZUNvbXBvbmVudCB9IGZyb20gJy4vZXZlbnQtc3VtbWFyeS9wYWdlL2V2ZW50LXN1bW1hcnktcGFnZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9yRGF0ZXRpbWVMb2NhbFBpcGUgfSBmcm9tICcuL2dlbmVyYWwvZm9yLWRhdGV0aW1lLWxvY2FsLXBpcGUvZm9yLWRhdGV0aW1lLWxvY2FsLnBpcGUnO1xuaW1wb3J0IHsgU3RhdHVzRGlzcGxheUNvbXBvbmVudCB9IGZyb20gJy4vZ2VuZXJhbC9zdGF0dXMtZGlzcGxheS9zdGF0dXMtZGlzcGxheS5jb21wb25lbnQnO1xuaW1wb3J0IHsgUHJvZ3Jlc3NEaXNwbGF5Q29tcG9uZW50IH0gZnJvbSAnLi9nZW5lcmFsL3Byb2dyZXNzLWRpc3BsYXkvcHJvZ3Jlc3MtZGlzcGxheS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29sdW1uT3JkZXJDb21wb25lbnQgfSBmcm9tICcuL2dlbmVyYWwvY29sdW1uLW9yZGVyL2NvbHVtbi1vcmRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgRXZlbnRGaWx0ZXJzQ29tcG9uZW50IH0gZnJvbSAnLi9ldmVudC9maWx0ZXJzL29uL2NsaWNrL2V2ZW50LWZpbHRlcnMuY29tcG9uZW50JztcbmltcG9ydCB7IERhdGVGaWx0ZXJDb21wb25lbnQgfSBmcm9tICcuL2V2ZW50L2ZpbHRlcnMvZGF0ZS9kYXRlLWZpbHRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ2hvaWNlRmlsdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9ldmVudC9maWx0ZXJzL2Nob2ljZS9jaG9pY2UtZmlsdGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQcm9jZWR1cmVMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9wcm9jZWR1cmUvbW9kZWwtbGlzdC9wcm9jZWR1cmUtbGlzdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgcHJvY2VkdXJlRmVhdHVyZUtleSwgcHJvY2VkdXJlUmVkdWNlciB9IGZyb20gJy4vc3RvcmUvcHJvY2VkdXJlL3Byb2NlZHVyZS5yZWR1Y2VyJztcbmltcG9ydCB7IFByb2NlZHVyZUVmZmVjdHMgfSBmcm9tICcuL3N0b3JlL3Byb2NlZHVyZS9wcm9jZWR1cmUuZWZmZWN0cyc7XG5pbXBvcnQgeyBFdmVudENvbHVtbk9yZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9ldmVudC9saXN0L2V2ZW50LWNvbHVtbi1vcmRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgUHJvY2VkdXJlQ29sdW1uT3JkZXJDb21wb25lbnQgfSBmcm9tICcuL3Byb2NlZHVyZS9tb2RlbC1saXN0L3Byb2NlZHVyZS1jb2x1bW4tb3JkZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFByb2NlZHVyZUFzc29jaWF0aW9uTW9kYWxDb21wb25lbnQgfSBmcm9tICcuL2V2ZW50L3Byb2NlZHVyZS1hc3NvY2lhdGlvbi1tb2RhbC9wcm9jZWR1cmUtYXNzb2NpYXRpb24tbW9kYWwuY29tcG9uZW50JztcbmltcG9ydCB7IFRleHRGaWx0ZXJDb21wb25lbnQgfSBmcm9tICcuL2V2ZW50L2ZpbHRlcnMvdGV4dC90ZXh0LWZpbHRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgSW1tZWRpYXRlRmlsdGVyc0NvbXBvbmVudCB9IGZyb20gJy4vZXZlbnQvZmlsdGVycy9vbi9pbW1lZGlhdGUvaW1tZWRpYXRlLWZpbHRlcnMuY29tcG9uZW50JztcbmltcG9ydCB7IFByb2NlZHVyZU1vZGVsRGV0YWlsQ29tcG9uZW50IH0gZnJvbSAnLi9wcm9jZWR1cmUvbW9kZWwtZGV0YWlsL3Byb2NlZHVyZS1tb2RlbC1kZXRhaWwuY29tcG9uZW50JztcbmltcG9ydCB7IFByb2NlZHVyZUFjdGlvbnNDb21wb25lbnQgfSBmcm9tICcuL2dlbmVyYWwvcHJvY2VkdXJlLWFjdGlvbnMvcHJvY2VkdXJlLWFjdGlvbnMuY29tcG9uZW50JztcbmltcG9ydCB7IEh2eUFjdGlvbk1lbnVDb21wb25lbnQgfSBmcm9tICcuL2dlbmVyYWwvcHJvY2VkdXJlLWFjdGlvbnMvYWN0aW9uLW1lbnUuY29tcG9uZW50JztcbmltcG9ydCB7IEh2eUFjdGlvblBhcmFtZXRlckNvbXBvbmVudCB9IGZyb20gJy4vZ2VuZXJhbC9wcm9jZWR1cmUtYWN0aW9ucy9hY3Rpb24tcGFyYW1ldGVycy9hY3Rpb24tcGFyYW1ldGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIdnlCYXNlUGFyYW1ldGVyQWN0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9nZW5lcmFsL3Byb2NlZHVyZS1hY3Rpb25zL2FjdGlvbi1wYXJhbWV0ZXJzL2Jhc2UtcGFyYW1ldGVyLWFjdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgSHZ5T3RoZXJBY3Rpb25QYXJhbWV0ZXJDb21wb25lbnQgfSBmcm9tICcuL2dlbmVyYWwvcHJvY2VkdXJlLWFjdGlvbnMvYWN0aW9uLXBhcmFtZXRlcnMvb3RoZXIvb3RoZXItYWN0aW9uLXBhcmFtZXRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgSHZ5T3RoZXJBY3Rpb25EaXNwbGF5Q29tcG9uZW50IH0gZnJvbSAnLi9nZW5lcmFsL3Byb2NlZHVyZS1hY3Rpb25zL2FjdGlvbi1wYXJhbWV0ZXJzL290aGVyL290aGVyLWFjdGlvbi1kaXNwbGF5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIdnlOb1BhcmFtc0FjdGlvbkRpc3BsYXlDb21wb25lbnQgfSBmcm9tICcuL2dlbmVyYWwvcHJvY2VkdXJlLWFjdGlvbnMvYWN0aW9uLXBhcmFtZXRlcnMvbm8tcGFyYW0vbm8tcGFyYW1zLWFjdGlvbi1kaXNwbGF5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIdnlQaG9uZUFjdGlvblBhcmFtZXRlckNvbXBvbmVudCB9IGZyb20gJy4vZ2VuZXJhbC9wcm9jZWR1cmUtYWN0aW9ucy9hY3Rpb24tcGFyYW1ldGVycy9waG9uZS9waG9uZS1hY3Rpb24tcGFyYW1ldGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIdnlQaG9uZUFjdGlvbkRpc3BsYXlDb21wb25lbnQgfSBmcm9tICcuL2dlbmVyYWwvcHJvY2VkdXJlLWFjdGlvbnMvYWN0aW9uLXBhcmFtZXRlcnMvcGhvbmUvcGhvbmUtYWN0aW9uLWRpc3BsYXkuY29tcG9uZW50JztcbmltcG9ydCB7IEh2eUVtYWlsQWN0aW9uRGlzcGxheUNvbXBvbmVudCB9IGZyb20gJy4vZ2VuZXJhbC9wcm9jZWR1cmUtYWN0aW9ucy9hY3Rpb24tcGFyYW1ldGVycy9lbWFpbC9lbWFpbC1hY3Rpb24tZGlzcGxheS5jb21wb25lbnQnO1xuaW1wb3J0IHsgSHZ5RW1haWxBY3Rpb25QYXJhbWV0ZXJDb21wb25lbnQgfSBmcm9tICcuL2dlbmVyYWwvcHJvY2VkdXJlLWFjdGlvbnMvYWN0aW9uLXBhcmFtZXRlcnMvZW1haWwvZW1haWwtYWN0aW9uLXBhcmFtZXRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgSHZ5U2VydmljZUFjdGlvblBhcmFtZXRlckNvbXBvbmVudCB9IGZyb20gJy4vZ2VuZXJhbC9wcm9jZWR1cmUtYWN0aW9ucy9hY3Rpb24tcGFyYW1ldGVycy9zZXJ2aWNlL3NlcnZpY2UtYWN0aW9uLXBhcmFtZXRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgSHZ5U2VydmljZUFjdGlvbkRpc3BsYXlDb21wb25lbnQgfSBmcm9tICcuL2dlbmVyYWwvcHJvY2VkdXJlLWFjdGlvbnMvYWN0aW9uLXBhcmFtZXRlcnMvc2VydmljZS9zZXJ2aWNlLWFjdGlvbi1kaXNwbGF5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEaXNwbGF5TG9jYWxlRGF0ZVRpbWUgfSBmcm9tICcuL2dlbmVyYWwvZGlzcGxheS1sb2NhbGUtZGF0ZXRpbWUvZGlzcGxheS1sb2NhbGUtZGF0ZXRpbWUucGlwZSc7XG5cbmNvbnN0IGNvbXBvbmVudHMgPSBbXG4gIEV2ZW50RGV0YWlsQ29tcG9uZW50LFxuICBFdmVudExpc3RDb21wb25lbnQsXG4gIEV2ZW50Q29sdW1uT3JkZXJDb21wb25lbnQsXG4gIEljb25EaXNwbGF5Q29tcG9uZW50LFxuICBFdmVudFN1bW1hcnlJdGVtQ29tcG9uZW50LFxuICBFdmVudFN1bW1hcnlMaXN0Q29tcG9uZW50LFxuICBFdmVudFN1bW1hcnlQYWdlQ29tcG9uZW50LFxuICBFdmVudEljb25QaXBlLFxuICBGb3JEYXRldGltZUxvY2FsUGlwZSxcbiAgU3RhdHVzRGlzcGxheUNvbXBvbmVudCxcbiAgUHJvZ3Jlc3NEaXNwbGF5Q29tcG9uZW50LFxuICBDb2x1bW5PcmRlckNvbXBvbmVudCxcbiAgRXZlbnRGaWx0ZXJzQ29tcG9uZW50LFxuICBEYXRlRmlsdGVyQ29tcG9uZW50LFxuICBUZXh0RmlsdGVyQ29tcG9uZW50LFxuICBDaG9pY2VGaWx0ZXJDb21wb25lbnQsXG4gIFByb2NlZHVyZUxpc3RDb21wb25lbnQsXG4gIFByb2NlZHVyZUNvbHVtbk9yZGVyQ29tcG9uZW50LFxuICBQcm9jZWR1cmVBc3NvY2lhdGlvbk1vZGFsQ29tcG9uZW50LFxuICBQcm9jZWR1cmVNb2RlbERldGFpbENvbXBvbmVudCxcbiAgSW1tZWRpYXRlRmlsdGVyc0NvbXBvbmVudCxcbiAgSHZ5QWN0aW9uTWVudUNvbXBvbmVudCxcbiAgSHZ5QWN0aW9uUGFyYW1ldGVyQ29tcG9uZW50LFxuICBIdnlCYXNlUGFyYW1ldGVyQWN0aW9uQ29tcG9uZW50LFxuICBIdnlPdGhlckFjdGlvblBhcmFtZXRlckNvbXBvbmVudCxcbiAgSHZ5T3RoZXJBY3Rpb25EaXNwbGF5Q29tcG9uZW50LFxuICBIdnlOb1BhcmFtc0FjdGlvbkRpc3BsYXlDb21wb25lbnQsXG4gIEh2eVBob25lQWN0aW9uUGFyYW1ldGVyQ29tcG9uZW50LFxuICBIdnlQaG9uZUFjdGlvbkRpc3BsYXlDb21wb25lbnQsXG4gIEh2eUVtYWlsQWN0aW9uRGlzcGxheUNvbXBvbmVudCxcbiAgSHZ5RW1haWxBY3Rpb25QYXJhbWV0ZXJDb21wb25lbnQsXG4gIEh2eVNlcnZpY2VBY3Rpb25QYXJhbWV0ZXJDb21wb25lbnQsXG4gIEh2eVNlcnZpY2VBY3Rpb25EaXNwbGF5Q29tcG9uZW50LFxuICBEaXNwbGF5TG9jYWxlRGF0ZVRpbWVcbl07XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogWy4uLmNvbXBvbmVudHMsIFByb2NlZHVyZUFjdGlvbnNDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbXG4gICAgU3RvcmVNb2R1bGUuZm9yRmVhdHVyZShoeXBGZWF0dXJlS2V5LCBoeXBlcnZpc29yUmVkdWNlciksXG4gICAgU3RvcmVNb2R1bGUuZm9yRmVhdHVyZShldmVudEZlYXR1cmVLZXksIGV2ZW50UmVkdWNlciksXG4gICAgU3RvcmVNb2R1bGUuZm9yRmVhdHVyZShldmVudFN1bW1hcnlGZWF0dXJlS2V5LCBldmVudFN1bW1hcnlSZWR1Y2VyKSxcbiAgICBTdG9yZU1vZHVsZS5mb3JGZWF0dXJlKHByb2NlZHVyZUZlYXR1cmVLZXksIHByb2NlZHVyZVJlZHVjZXIpLFxuICAgIEVmZmVjdHNNb2R1bGUuZm9yRmVhdHVyZShbRXZlbnRFZmZlY3RzLCBFdmVudFN1bW1hcnlFZmZlY3RzLCBQcm9jZWR1cmVFZmZlY3RzLCBIeXBlcnZpc29yRWZmZWN0c10pLFxuICAgIE5nRm9yT2YsXG4gICAgQXN5bmNQaXBlLFxuICAgIFByeUkxOG5Nb2R1bGUsXG4gICAgUHJ5Q29yZU1vZHVsZSxcbiAgICBOZ1N0eWxlLFxuICAgIFByeUNoZWNrYm94TW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIFJvdXRlckxpbmssXG4gICAgUHJ5U2luY2VEYXRlTW9kdWxlLFxuICAgIERhdGVQaXBlLFxuICAgIFByeUljb25Nb2R1bGUsXG4gICAgS2V5VmFsdWVQaXBlLFxuICAgIFByeVNlbGVjdE1vZHVsZSxcbiAgICBKc29uUGlwZSxcbiAgICBQcnlEYXRlUGlja2VyTW9kdWxlLFxuICAgIE5nSWZcbiAgXSxcbiAgZXhwb3J0czogWy4uLmNvbXBvbmVudHNdXG59KVxuZXhwb3J0IGNsYXNzIFB2eUh5cGVydmlzb3JNb2R1bGUge1xuICBzdGF0aWMgZm9yUm9vdChvcHRpb25zOiB7IHVybD86IHN0cmluZyB9KTogTW9kdWxlV2l0aFByb3ZpZGVyczxQdnlIeXBlcnZpc29yTW9kdWxlPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBQdnlIeXBlcnZpc29yTW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBIWVBfQkFTRV9DT05GSUcsIHVzZVZhbHVlOiBvcHRpb25zIH1dXG4gICAgfTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoSFlQX0JBU0VfQ09ORklHKVxuICAgIHByaXZhdGUgYmFzZUNvbmZpZzoge1xuICAgICAgdXJsOiBzdHJpbmc7XG4gICAgfSxcbiAgICBwcml2YXRlIHN0b3JlOiBTdG9yZTxhbnk+LFxuICAgIHByaXZhdGUgaTE4blNlcnZpY2U6IFByeUkxOG5TZXJ2aWNlXG4gICkge1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goSHlwZXJ2aXNvckFjdGlvbnMuc2V0VXJsKHsgdXJsOiBiYXNlQ29uZmlnLnVybCB9KSk7XG4gICAgdGhpcy5pMThuU2VydmljZS5hZGRMYW5nT2JqZWN0KCdlbicsICdAaHZ5JywgZW5UcmFuc2xhdGlvbnMpO1xuICAgIHRoaXMuaTE4blNlcnZpY2UuYWRkTGFuZ09iamVjdCgnZnInLCAnQGh2eScsIGZyVHJhbnNsYXRpb25zKTtcbiAgfVxufVxuIl19
|
|
244
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHlwZXJ2aXNvci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2h5cGVydmlzb3Ivc3JjL2xpYi9oeXBlcnZpc29yLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUF1QixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5QyxPQUFPLEVBQVMsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDNUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzNELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxhQUFhLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN6RixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDMUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3RHLE9BQU8sRUFDTCxhQUFhLEVBQ2IsbUJBQW1CLEVBQ25CLGFBQWEsRUFFYixhQUFhLEVBQ2IsZUFBZSxFQUNmLGtCQUFrQixFQUNuQixNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNoRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDaEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDckYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDOUYsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDOUYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDbEYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLG1CQUFtQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDMUcsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDOUYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkRBQTJELENBQUM7QUFDakcsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDM0YsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sdURBQXVELENBQUM7QUFDakcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDckYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDekYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDakYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDdkYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0saURBQWlELENBQUM7QUFDekYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLGdCQUFnQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDNUYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDdkUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDdEYsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDeEcsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0sMkVBQTJFLENBQUM7QUFDL0gsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDakYsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sMERBQTBELENBQUM7QUFDckcsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sMkRBQTJELENBQUM7QUFDMUcsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDcEcsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDM0YsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sMEVBQTBFLENBQUM7QUFDdkgsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sK0VBQStFLENBQUM7QUFDaEksT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sc0ZBQXNGLENBQUM7QUFDeEksT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sb0ZBQW9GLENBQUM7QUFDcEksT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sMkZBQTJGLENBQUM7QUFDOUksT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sc0ZBQXNGLENBQUM7QUFDeEksT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sb0ZBQW9GLENBQUM7QUFDcEksT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sb0ZBQW9GLENBQUM7QUFDcEksT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sc0ZBQXNGLENBQUM7QUFDeEksT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0sMEZBQTBGLENBQUM7QUFDOUksT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sd0ZBQXdGLENBQUM7QUFDMUksT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0VBQWdFLENBQUM7Ozs7O0FBRXZHLE1BQU0sVUFBVSxHQUFHO0lBQ2pCLG9CQUFvQjtJQUNwQixrQkFBa0I7SUFDbEIseUJBQXlCO0lBQ3pCLG9CQUFvQjtJQUNwQix5QkFBeUI7SUFDekIseUJBQXlCO0lBQ3pCLHlCQUF5QjtJQUN6QixhQUFhO0lBQ2Isb0JBQW9CO0lBQ3BCLHNCQUFzQjtJQUN0Qix3QkFBd0I7SUFDeEIsb0JBQW9CO0lBQ3BCLHFCQUFxQjtJQUNyQixtQkFBbUI7SUFDbkIsbUJBQW1CO0lBQ25CLHFCQUFxQjtJQUNyQixzQkFBc0I7SUFDdEIsNkJBQTZCO0lBQzdCLGtDQUFrQztJQUNsQyw2QkFBNkI7SUFDN0IseUJBQXlCO0lBQ3pCLHNCQUFzQjtJQUN0QiwyQkFBMkI7SUFDM0IsK0JBQStCO0lBQy9CLGdDQUFnQztJQUNoQyw4QkFBOEI7SUFDOUIsaUNBQWlDO0lBQ2pDLGdDQUFnQztJQUNoQyw4QkFBOEI7SUFDOUIsOEJBQThCO0lBQzlCLGdDQUFnQztJQUNoQyxrQ0FBa0M7SUFDbEMsZ0NBQWdDO0lBQ2hDLHFCQUFxQjtDQUN0QixDQUFDO0FBOEJGLE1BQU0sT0FBTyxtQkFBbUI7SUFDOUIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUF5QjtRQUN0QyxPQUFPO1lBQ0wsUUFBUSxFQUFFLG1CQUFtQjtZQUM3QixTQUFTLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxDQUFDO1NBQzdELENBQUM7SUFDSixDQUFDO0lBRUQsWUFFVSxVQUVQLEVBQ08sS0FBaUIsRUFDakIsV0FBMkI7UUFKM0IsZUFBVSxHQUFWLFVBQVUsQ0FFakI7UUFDTyxVQUFLLEdBQUwsS0FBSyxDQUFZO1FBQ2pCLGdCQUFXLEdBQVgsV0FBVyxDQUFnQjtRQUVuQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsRUFBRSxHQUFHLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUN2RSxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLGNBQWMsQ0FBQyxDQUFDO1FBQzdELElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxNQUFNLEVBQUUsY0FBYyxDQUFDLENBQUM7SUFDL0QsQ0FBQzs4R0FuQlUsbUJBQW1CLGtCQVNwQixlQUFlOytHQVRkLG1CQUFtQixpQkFoRTlCLG9CQUFvQjtZQUNwQixrQkFBa0I7WUFDbEIseUJBQXlCO1lBQ3pCLG9CQUFvQjtZQUNwQix5QkFBeUI7WUFDekIseUJBQXlCO1lBQ3pCLHlCQUF5QjtZQUN6QixhQUFhO1lBQ2Isb0JBQW9CO1lBQ3BCLHNCQUFzQjtZQUN0Qix3QkFBd0I7WUFDeEIsb0JBQW9CO1lBQ3BCLHFCQUFxQjtZQUNyQixtQkFBbUI7WUFDbkIsbUJBQW1CO1lBQ25CLHFCQUFxQjtZQUNyQixzQkFBc0I7WUFDdEIsNkJBQTZCO1lBQzdCLGtDQUFrQztZQUNsQyw2QkFBNkI7WUFDN0IseUJBQXlCO1lBQ3pCLHNCQUFzQjtZQUN0QiwyQkFBMkI7WUFDM0IsK0JBQStCO1lBQy9CLGdDQUFnQztZQUNoQyw4QkFBOEI7WUFDOUIsaUNBQWlDO1lBQ2pDLGdDQUFnQztZQUNoQyw4QkFBOEI7WUFDOUIsOEJBQThCO1lBQzlCLGdDQUFnQztZQUNoQyxrQ0FBa0M7WUFDbEMsZ0NBQWdDO1lBQ2hDLHFCQUFxQixFQUlTLHlCQUF5QixrSUFPckQsT0FBTztZQUNQLFNBQVM7WUFDVCxhQUFhO1lBQ2IsYUFBYTtZQUNiLE9BQU87WUFDUCxpQkFBaUI7WUFDakIsV0FBVztZQUNYLFVBQVU7WUFDVixrQkFBa0I7WUFDbEIsUUFBUTtZQUNSLGFBQWE7WUFDYixZQUFZO1lBQ1osZUFBZTtZQUNmLFFBQVE7WUFDUixtQkFBbUI7WUFDbkIsSUFBSTtZQUNKLGFBQWEsYUE1RGYsb0JBQW9CO1lBQ3BCLGtCQUFrQjtZQUNsQix5QkFBeUI7WUFDekIsb0JBQW9CO1lBQ3BCLHlCQUF5QjtZQUN6Qix5QkFBeUI7WUFDekIseUJBQXlCO1lBQ3pCLGFBQWE7WUFDYixvQkFBb0I7WUFDcEIsc0JBQXNCO1lBQ3RCLHdCQUF3QjtZQUN4QixvQkFBb0I7WUFDcEIscUJBQXFCO1lBQ3JCLG1CQUFtQjtZQUNuQixtQkFBbUI7WUFDbkIscUJBQXFCO1lBQ3JCLHNCQUFzQjtZQUN0Qiw2QkFBNkI7WUFDN0Isa0NBQWtDO1lBQ2xDLDZCQUE2QjtZQUM3Qix5QkFBeUI7WUFDekIsc0JBQXNCO1lBQ3RCLDJCQUEyQjtZQUMzQiwrQkFBK0I7WUFDL0IsZ0NBQWdDO1lBQ2hDLDhCQUE4QjtZQUM5QixpQ0FBaUM7WUFDakMsZ0NBQWdDO1lBQ2hDLDhCQUE4QjtZQUM5Qiw4QkFBOEI7WUFDOUIsZ0NBQWdDO1lBQ2hDLGtDQUFrQztZQUNsQyxnQ0FBZ0M7WUFDaEMscUJBQXFCOytHQStCVixtQkFBbUIsWUF6QjVCLFdBQVcsQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLGlCQUFpQixDQUFDO1lBQ3hELFdBQVcsQ0FBQyxVQUFVLENBQUMsZUFBZSxFQUFFLFlBQVksQ0FBQztZQUNyRCxXQUFXLENBQUMsVUFBVSxDQUFDLHNCQUFzQixFQUFFLG1CQUFtQixDQUFDO1lBQ25FLFdBQVcsQ0FBQyxVQUFVLENBQUMsbUJBQW1CLEVBQUUsZ0JBQWdCLENBQUM7WUFDN0QsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDLFlBQVksRUFBRSxtQkFBbUIsRUFBRSxnQkFBZ0IsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO1lBR2xHLGFBQWE7WUFDYixhQUFhO1lBRWIsaUJBQWlCO1lBQ2pCLFdBQVc7WUFFWCxrQkFBa0I7WUFFbEIsYUFBYTtZQUViLGVBQWU7WUFFZixtQkFBbUI7WUFFbkIsYUFBYTs7MkZBSUosbUJBQW1CO2tCQTVCL0IsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxHQUFHLFVBQVUsRUFBRSx5QkFBeUIsQ0FBQztvQkFDeEQsT0FBTyxFQUFFO3dCQUNQLFdBQVcsQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLGlCQUFpQixDQUFDO3dCQUN4RCxXQUFXLENBQUMsVUFBVSxDQUFDLGVBQWUsRUFBRSxZQUFZLENBQUM7d0JBQ3JELFdBQVcsQ0FBQyxVQUFVLENBQUMsc0JBQXNCLEVBQUUsbUJBQW1CLENBQUM7d0JBQ25FLFdBQVcsQ0FBQyxVQUFVLENBQUMsbUJBQW1CLEVBQUUsZ0JBQWdCLENBQUM7d0JBQzdELGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxZQUFZLEVBQUUsbUJBQW1CLEVBQUUsZ0JBQWdCLEVBQUUsaUJBQWlCLENBQUMsQ0FBQzt3QkFDbEcsT0FBTzt3QkFDUCxTQUFTO3dCQUNULGFBQWE7d0JBQ2IsYUFBYTt3QkFDYixPQUFPO3dCQUNQLGlCQUFpQjt3QkFDakIsV0FBVzt3QkFDWCxVQUFVO3dCQUNWLGtCQUFrQjt3QkFDbEIsUUFBUTt3QkFDUixhQUFhO3dCQUNiLFlBQVk7d0JBQ1osZUFBZTt3QkFDZixRQUFRO3dCQUNSLG1CQUFtQjt3QkFDbkIsSUFBSTt3QkFDSixhQUFhO3FCQUNkO29CQUNELE9BQU8sRUFBRSxDQUFDLEdBQUcsVUFBVSxDQUFDO2lCQUN6Qjs7MEJBVUksTUFBTTsyQkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRWZmZWN0c01vZHVsZSB9IGZyb20gJ0BuZ3J4L2VmZmVjdHMnO1xuaW1wb3J0IHsgU3RvcmUsIFN0b3JlTW9kdWxlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgZXZlbnRGZWF0dXJlS2V5LCBldmVudFJlZHVjZXIgfSBmcm9tICcuL3N0b3JlL2V2ZW50L2V2ZW50LnJlZHVjZXInO1xuaW1wb3J0IHsgRXZlbnRFZmZlY3RzIH0gZnJvbSAnLi9zdG9yZS9ldmVudC9ldmVudC5lZmZlY3RzJztcbmltcG9ydCB7IEV2ZW50RGV0YWlsQ29tcG9uZW50IH0gZnJvbSAnLi9ldmVudC9kZXRhaWwvZXZlbnQtZGV0YWlsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBoeXBlcnZpc29yUmVkdWNlciwgaHlwRmVhdHVyZUtleSB9IGZyb20gJy4vc3RvcmUvaHlwZXJ2aXNvci9oeXBlcnZpc29yLnJlZHVjZXInO1xuaW1wb3J0IHsgSHlwZXJ2aXNvckVmZmVjdHMgfSBmcm9tICcuL3N0b3JlL2h5cGVydmlzb3IvaHlwZXJ2aXNvci5lZmZlY3RzJztcbmltcG9ydCB7IEhZUF9CQVNFX0NPTkZJRyB9IGZyb20gJy4vZ2VuZXJhbC9iYXNlLnRva2VuJztcbmltcG9ydCB7IEh5cGVydmlzb3JBY3Rpb25zIH0gZnJvbSAnLi9zdG9yZS9oeXBlcnZpc29yL2h5cGVydmlzb3IuYWN0aW9ucyc7XG5pbXBvcnQgeyBBc3luY1BpcGUsIERhdGVQaXBlLCBKc29uUGlwZSwgS2V5VmFsdWVQaXBlLCBOZ0Zvck9mLCBOZ0lmLCBOZ1N0eWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIFByeUNvcmVNb2R1bGUsXG4gIFByeURhdGVQaWNrZXJNb2R1bGUsXG4gIFByeUkxOG5Nb2R1bGUsXG4gIFByeUkxOG5TZXJ2aWNlLFxuICBQcnlJY29uTW9kdWxlLFxuICBQcnlTZWxlY3RNb2R1bGUsXG4gIFByeVNpbmNlRGF0ZU1vZHVsZVxufSBmcm9tICdAcHJvdm9seS9kYXNoYm9hcmQnO1xuaW1wb3J0IHsgZW5UcmFuc2xhdGlvbnMgfSBmcm9tICcuL2dlbmVyYWwvaTE4bi9lbi50cmFuc2xhdGlvbnMnO1xuaW1wb3J0IHsgZnJUcmFuc2xhdGlvbnMgfSBmcm9tICcuL2dlbmVyYWwvaTE4bi9mci50cmFuc2xhdGlvbnMnO1xuaW1wb3J0IHsgSWNvbkRpc3BsYXlDb21wb25lbnQgfSBmcm9tICcuL2dlbmVyYWwvaWNvbi1kaXNwbGF5L2ljb24tZGlzcGxheS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRXZlbnRJY29uUGlwZSB9IGZyb20gJy4vZ2VuZXJhbC9pY29uLXBpcGUvZXZlbnQtaWNvbi5waXBlJztcbmltcG9ydCB7IFByeUNoZWNrYm94TW9kdWxlIH0gZnJvbSAnQHByb3ZvbHkvZGFzaGJvYXJkL2NvbXBvbmVudHMvY2hlY2tib3gnO1xuaW1wb3J0IHsgRXZlbnRMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9ldmVudC9saXN0L2V2ZW50LWxpc3QuY29tcG9uZW50JztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgUm91dGVyTGluayB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBFdmVudFN1bW1hcnlMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9ldmVudC1zdW1tYXJ5L2xpc3QvZXZlbnQtc3VtbWFyeS1saXN0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFdmVudFN1bW1hcnlJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9ldmVudC1zdW1tYXJ5L2l0ZW0vZXZlbnQtc3VtbWFyeS1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFdmVudFN1bW1hcnlFZmZlY3RzIH0gZnJvbSAnLi9zdG9yZS9ldmVudC1zdW1tYXJ5L2V2ZW50LXN1bW1hcnkuZWZmZWN0cyc7XG5pbXBvcnQgeyBldmVudFN1bW1hcnlGZWF0dXJlS2V5LCBldmVudFN1bW1hcnlSZWR1Y2VyIH0gZnJvbSAnLi9zdG9yZS9ldmVudC1zdW1tYXJ5L2V2ZW50LXN1bW1hcnkucmVkdWNlcic7XG5pbXBvcnQgeyBFdmVudFN1bW1hcnlQYWdlQ29tcG9uZW50IH0gZnJvbSAnLi9ldmVudC1zdW1tYXJ5L3BhZ2UvZXZlbnQtc3VtbWFyeS1wYWdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb3JEYXRldGltZUxvY2FsUGlwZSB9IGZyb20gJy4vZ2VuZXJhbC9mb3ItZGF0ZXRpbWUtbG9jYWwtcGlwZS9mb3ItZGF0ZXRpbWUtbG9jYWwucGlwZSc7XG5pbXBvcnQgeyBTdGF0dXNEaXNwbGF5Q29tcG9uZW50IH0gZnJvbSAnLi9nZW5lcmFsL3N0YXR1cy1kaXNwbGF5L3N0YXR1cy1kaXNwbGF5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQcm9ncmVzc0Rpc3BsYXlDb21wb25lbnQgfSBmcm9tICcuL2dlbmVyYWwvcHJvZ3Jlc3MtZGlzcGxheS9wcm9ncmVzcy1kaXNwbGF5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb2x1bW5PcmRlckNvbXBvbmVudCB9IGZyb20gJy4vZ2VuZXJhbC9jb2x1bW4tb3JkZXIvY29sdW1uLW9yZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFdmVudEZpbHRlcnNDb21wb25lbnQgfSBmcm9tICcuL2V2ZW50L2ZpbHRlcnMvb24vY2xpY2svZXZlbnQtZmlsdGVycy5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGF0ZUZpbHRlckNvbXBvbmVudCB9IGZyb20gJy4vZXZlbnQvZmlsdGVycy9kYXRlL2RhdGUtZmlsdGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDaG9pY2VGaWx0ZXJDb21wb25lbnQgfSBmcm9tICcuL2V2ZW50L2ZpbHRlcnMvY2hvaWNlL2Nob2ljZS1maWx0ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFByb2NlZHVyZUxpc3RDb21wb25lbnQgfSBmcm9tICcuL3Byb2NlZHVyZS9tb2RlbC1saXN0L3Byb2NlZHVyZS1saXN0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBwcm9jZWR1cmVGZWF0dXJlS2V5LCBwcm9jZWR1cmVSZWR1Y2VyIH0gZnJvbSAnLi9zdG9yZS9wcm9jZWR1cmUvcHJvY2VkdXJlLnJlZHVjZXInO1xuaW1wb3J0IHsgUHJvY2VkdXJlRWZmZWN0cyB9IGZyb20gJy4vc3RvcmUvcHJvY2VkdXJlL3Byb2NlZHVyZS5lZmZlY3RzJztcbmltcG9ydCB7IEV2ZW50Q29sdW1uT3JkZXJDb21wb25lbnQgfSBmcm9tICcuL2V2ZW50L2xpc3QvZXZlbnQtY29sdW1uLW9yZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQcm9jZWR1cmVDb2x1bW5PcmRlckNvbXBvbmVudCB9IGZyb20gJy4vcHJvY2VkdXJlL21vZGVsLWxpc3QvcHJvY2VkdXJlLWNvbHVtbi1vcmRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgUHJvY2VkdXJlQXNzb2NpYXRpb25Nb2RhbENvbXBvbmVudCB9IGZyb20gJy4vZXZlbnQvcHJvY2VkdXJlLWFzc29jaWF0aW9uLW1vZGFsL3Byb2NlZHVyZS1hc3NvY2lhdGlvbi1tb2RhbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGV4dEZpbHRlckNvbXBvbmVudCB9IGZyb20gJy4vZXZlbnQvZmlsdGVycy90ZXh0L3RleHQtZmlsdGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJbW1lZGlhdGVGaWx0ZXJzQ29tcG9uZW50IH0gZnJvbSAnLi9ldmVudC9maWx0ZXJzL29uL2ltbWVkaWF0ZS9pbW1lZGlhdGUtZmlsdGVycy5jb21wb25lbnQnO1xuaW1wb3J0IHsgUHJvY2VkdXJlTW9kZWxEZXRhaWxDb21wb25lbnQgfSBmcm9tICcuL3Byb2NlZHVyZS9tb2RlbC1kZXRhaWwvcHJvY2VkdXJlLW1vZGVsLWRldGFpbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgUHJvY2VkdXJlQWN0aW9uc0NvbXBvbmVudCB9IGZyb20gJy4vZ2VuZXJhbC9wcm9jZWR1cmUtYWN0aW9ucy9wcm9jZWR1cmUtYWN0aW9ucy5jb21wb25lbnQnO1xuaW1wb3J0IHsgSHZ5QWN0aW9uTWVudUNvbXBvbmVudCB9IGZyb20gJy4vZ2VuZXJhbC9wcm9jZWR1cmUtYWN0aW9ucy9hY3Rpb24tbWVudS5jb21wb25lbnQnO1xuaW1wb3J0IHsgSHZ5QWN0aW9uUGFyYW1ldGVyQ29tcG9uZW50IH0gZnJvbSAnLi9nZW5lcmFsL3Byb2NlZHVyZS1hY3Rpb25zL2FjdGlvbi1wYXJhbWV0ZXJzL2FjdGlvbi1wYXJhbWV0ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEh2eUJhc2VQYXJhbWV0ZXJBY3Rpb25Db21wb25lbnQgfSBmcm9tICcuL2dlbmVyYWwvcHJvY2VkdXJlLWFjdGlvbnMvYWN0aW9uLXBhcmFtZXRlcnMvYmFzZS1wYXJhbWV0ZXItYWN0aW9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIdnlPdGhlckFjdGlvblBhcmFtZXRlckNvbXBvbmVudCB9IGZyb20gJy4vZ2VuZXJhbC9wcm9jZWR1cmUtYWN0aW9ucy9hY3Rpb24tcGFyYW1ldGVycy9vdGhlci9vdGhlci1hY3Rpb24tcGFyYW1ldGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIdnlPdGhlckFjdGlvbkRpc3BsYXlDb21wb25lbnQgfSBmcm9tICcuL2dlbmVyYWwvcHJvY2VkdXJlLWFjdGlvbnMvYWN0aW9uLXBhcmFtZXRlcnMvb3RoZXIvb3RoZXItYWN0aW9uLWRpc3BsYXkuY29tcG9uZW50JztcbmltcG9ydCB7IEh2eU5vUGFyYW1zQWN0aW9uRGlzcGxheUNvbXBvbmVudCB9IGZyb20gJy4vZ2VuZXJhbC9wcm9jZWR1cmUtYWN0aW9ucy9hY3Rpb24tcGFyYW1ldGVycy9uby1wYXJhbS9uby1wYXJhbXMtYWN0aW9uLWRpc3BsYXkuY29tcG9uZW50JztcbmltcG9ydCB7IEh2eVBob25lQWN0aW9uUGFyYW1ldGVyQ29tcG9uZW50IH0gZnJvbSAnLi9nZW5lcmFsL3Byb2NlZHVyZS1hY3Rpb25zL2FjdGlvbi1wYXJhbWV0ZXJzL3Bob25lL3Bob25lLWFjdGlvbi1wYXJhbWV0ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEh2eVBob25lQWN0aW9uRGlzcGxheUNvbXBvbmVudCB9IGZyb20gJy4vZ2VuZXJhbC9wcm9jZWR1cmUtYWN0aW9ucy9hY3Rpb24tcGFyYW1ldGVycy9waG9uZS9waG9uZS1hY3Rpb24tZGlzcGxheS5jb21wb25lbnQnO1xuaW1wb3J0IHsgSHZ5RW1haWxBY3Rpb25EaXNwbGF5Q29tcG9uZW50IH0gZnJvbSAnLi9nZW5lcmFsL3Byb2NlZHVyZS1hY3Rpb25zL2FjdGlvbi1wYXJhbWV0ZXJzL2VtYWlsL2VtYWlsLWFjdGlvbi1kaXNwbGF5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIdnlFbWFpbEFjdGlvblBhcmFtZXRlckNvbXBvbmVudCB9IGZyb20gJy4vZ2VuZXJhbC9wcm9jZWR1cmUtYWN0aW9ucy9hY3Rpb24tcGFyYW1ldGVycy9lbWFpbC9lbWFpbC1hY3Rpb24tcGFyYW1ldGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIdnlTZXJ2aWNlQWN0aW9uUGFyYW1ldGVyQ29tcG9uZW50IH0gZnJvbSAnLi9nZW5lcmFsL3Byb2NlZHVyZS1hY3Rpb25zL2FjdGlvbi1wYXJhbWV0ZXJzL3NlcnZpY2Uvc2VydmljZS1hY3Rpb24tcGFyYW1ldGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIdnlTZXJ2aWNlQWN0aW9uRGlzcGxheUNvbXBvbmVudCB9IGZyb20gJy4vZ2VuZXJhbC9wcm9jZWR1cmUtYWN0aW9ucy9hY3Rpb24tcGFyYW1ldGVycy9zZXJ2aWNlL3NlcnZpY2UtYWN0aW9uLWRpc3BsYXkuY29tcG9uZW50JztcbmltcG9ydCB7IERpc3BsYXlMb2NhbGVEYXRlVGltZSB9IGZyb20gJy4vZ2VuZXJhbC9kaXNwbGF5LWxvY2FsZS1kYXRldGltZS9kaXNwbGF5LWxvY2FsZS1kYXRldGltZS5waXBlJztcblxuY29uc3QgY29tcG9uZW50cyA9IFtcbiAgRXZlbnREZXRhaWxDb21wb25lbnQsXG4gIEV2ZW50TGlzdENvbXBvbmVudCxcbiAgRXZlbnRDb2x1bW5PcmRlckNvbXBvbmVudCxcbiAgSWNvbkRpc3BsYXlDb21wb25lbnQsXG4gIEV2ZW50U3VtbWFyeUl0ZW1Db21wb25lbnQsXG4gIEV2ZW50U3VtbWFyeUxpc3RDb21wb25lbnQsXG4gIEV2ZW50U3VtbWFyeVBhZ2VDb21wb25lbnQsXG4gIEV2ZW50SWNvblBpcGUsXG4gIEZvckRhdGV0aW1lTG9jYWxQaXBlLFxuICBTdGF0dXNEaXNwbGF5Q29tcG9uZW50LFxuICBQcm9ncmVzc0Rpc3BsYXlDb21wb25lbnQsXG4gIENvbHVtbk9yZGVyQ29tcG9uZW50LFxuICBFdmVudEZpbHRlcnNDb21wb25lbnQsXG4gIERhdGVGaWx0ZXJDb21wb25lbnQsXG4gIFRleHRGaWx0ZXJDb21wb25lbnQsXG4gIENob2ljZUZpbHRlckNvbXBvbmVudCxcbiAgUHJvY2VkdXJlTGlzdENvbXBvbmVudCxcbiAgUHJvY2VkdXJlQ29sdW1uT3JkZXJDb21wb25lbnQsXG4gIFByb2NlZHVyZUFzc29jaWF0aW9uTW9kYWxDb21wb25lbnQsXG4gIFByb2NlZHVyZU1vZGVsRGV0YWlsQ29tcG9uZW50LFxuICBJbW1lZGlhdGVGaWx0ZXJzQ29tcG9uZW50LFxuICBIdnlBY3Rpb25NZW51Q29tcG9uZW50LFxuICBIdnlBY3Rpb25QYXJhbWV0ZXJDb21wb25lbnQsXG4gIEh2eUJhc2VQYXJhbWV0ZXJBY3Rpb25Db21wb25lbnQsXG4gIEh2eU90aGVyQWN0aW9uUGFyYW1ldGVyQ29tcG9uZW50LFxuICBIdnlPdGhlckFjdGlvbkRpc3BsYXlDb21wb25lbnQsXG4gIEh2eU5vUGFyYW1zQWN0aW9uRGlzcGxheUNvbXBvbmVudCxcbiAgSHZ5UGhvbmVBY3Rpb25QYXJhbWV0ZXJDb21wb25lbnQsXG4gIEh2eVBob25lQWN0aW9uRGlzcGxheUNvbXBvbmVudCxcbiAgSHZ5RW1haWxBY3Rpb25EaXNwbGF5Q29tcG9uZW50LFxuICBIdnlFbWFpbEFjdGlvblBhcmFtZXRlckNvbXBvbmVudCxcbiAgSHZ5U2VydmljZUFjdGlvblBhcmFtZXRlckNvbXBvbmVudCxcbiAgSHZ5U2VydmljZUFjdGlvbkRpc3BsYXlDb21wb25lbnQsXG4gIERpc3BsYXlMb2NhbGVEYXRlVGltZVxuXTtcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbLi4uY29tcG9uZW50cywgUHJvY2VkdXJlQWN0aW9uc0NvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtcbiAgICBTdG9yZU1vZHVsZS5mb3JGZWF0dXJlKGh5cEZlYXR1cmVLZXksIGh5cGVydmlzb3JSZWR1Y2VyKSxcbiAgICBTdG9yZU1vZHVsZS5mb3JGZWF0dXJlKGV2ZW50RmVhdHVyZUtleSwgZXZlbnRSZWR1Y2VyKSxcbiAgICBTdG9yZU1vZHVsZS5mb3JGZWF0dXJlKGV2ZW50U3VtbWFyeUZlYXR1cmVLZXksIGV2ZW50U3VtbWFyeVJlZHVjZXIpLFxuICAgIFN0b3JlTW9kdWxlLmZvckZlYXR1cmUocHJvY2VkdXJlRmVhdHVyZUtleSwgcHJvY2VkdXJlUmVkdWNlciksXG4gICAgRWZmZWN0c01vZHVsZS5mb3JGZWF0dXJlKFtFdmVudEVmZmVjdHMsIEV2ZW50U3VtbWFyeUVmZmVjdHMsIFByb2NlZHVyZUVmZmVjdHMsIEh5cGVydmlzb3JFZmZlY3RzXSksXG4gICAgTmdGb3JPZixcbiAgICBBc3luY1BpcGUsXG4gICAgUHJ5STE4bk1vZHVsZSxcbiAgICBQcnlDb3JlTW9kdWxlLFxuICAgIE5nU3R5bGUsXG4gICAgUHJ5Q2hlY2tib3hNb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgUm91dGVyTGluayxcbiAgICBQcnlTaW5jZURhdGVNb2R1bGUsXG4gICAgRGF0ZVBpcGUsXG4gICAgUHJ5SWNvbk1vZHVsZSxcbiAgICBLZXlWYWx1ZVBpcGUsXG4gICAgUHJ5U2VsZWN0TW9kdWxlLFxuICAgIEpzb25QaXBlLFxuICAgIFByeURhdGVQaWNrZXJNb2R1bGUsXG4gICAgTmdJZixcbiAgICBQcnlDb3JlTW9kdWxlXG4gIF0sXG4gIGV4cG9ydHM6IFsuLi5jb21wb25lbnRzXVxufSlcbmV4cG9ydCBjbGFzcyBQdnlIeXBlcnZpc29yTW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3Qob3B0aW9uczogeyB1cmw/OiBzdHJpbmcgfSk6IE1vZHVsZVdpdGhQcm92aWRlcnM8UHZ5SHlwZXJ2aXNvck1vZHVsZT4ge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogUHZ5SHlwZXJ2aXNvck1vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW3sgcHJvdmlkZTogSFlQX0JBU0VfQ09ORklHLCB1c2VWYWx1ZTogb3B0aW9ucyB9XVxuICAgIH07XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBASW5qZWN0KEhZUF9CQVNFX0NPTkZJRylcbiAgICBwcml2YXRlIGJhc2VDb25maWc6IHtcbiAgICAgIHVybDogc3RyaW5nO1xuICAgIH0sXG4gICAgcHJpdmF0ZSBzdG9yZTogU3RvcmU8YW55PixcbiAgICBwcml2YXRlIGkxOG5TZXJ2aWNlOiBQcnlJMThuU2VydmljZVxuICApIHtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKEh5cGVydmlzb3JBY3Rpb25zLnNldFVybCh7IHVybDogYmFzZUNvbmZpZy51cmwgfSkpO1xuICAgIHRoaXMuaTE4blNlcnZpY2UuYWRkTGFuZ09iamVjdCgnZW4nLCAnQGh2eScsIGVuVHJhbnNsYXRpb25zKTtcbiAgICB0aGlzLmkxOG5TZXJ2aWNlLmFkZExhbmdPYmplY3QoJ2ZyJywgJ0BodnknLCBmclRyYW5zbGF0aW9ucyk7XG4gIH1cbn1cbiJdfQ==
|