@firestitch/system 18.0.32 → 18.0.34
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/app/modules/system/components/process/process.component.d.ts +5 -4
- package/app/modules/system/components/processes/processes.component.d.ts +4 -4
- package/app/modules/system/interfaces/process.d.ts +2 -0
- package/esm2022/app/modules/system/components/api-log/api-log.component.mjs +3 -3
- package/esm2022/app/modules/system/components/api-logs/api-logs.component.mjs +3 -3
- package/esm2022/app/modules/system/components/process/process.component.mjs +58 -37
- package/esm2022/app/modules/system/components/processes/processes.component.mjs +53 -47
- package/esm2022/app/modules/system/interfaces/process.mjs +1 -1
- package/fesm2022/firestitch-system.mjs +77 -50
- package/fesm2022/firestitch-system.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, inject, Input, ViewChild, } from
|
|
2
|
-
import { MatDialog } from
|
|
3
|
-
import { FsApi, RequestMethod, StreamEventData, StreamEventType } from
|
|
4
|
-
import { ItemType } from
|
|
5
|
-
import { FsListComponent, FsListModule } from
|
|
6
|
-
import { FsMessage } from
|
|
7
|
-
import { FsProcess } from
|
|
8
|
-
import { Subject } from
|
|
9
|
-
import { filter, finalize, map, takeUntil, tap } from
|
|
10
|
-
import { ProcessStates } from
|
|
11
|
-
import { ProcessData } from
|
|
12
|
-
import { ProcessState } from
|
|
13
|
-
import { indexNameValue } from
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
1
|
+
import { ChangeDetectionStrategy, Component, inject, Input, ViewChild, } from "@angular/core";
|
|
2
|
+
import { MatDialog } from "@angular/material/dialog";
|
|
3
|
+
import { FsApi, RequestMethod, StreamEventData, StreamEventType, } from "@firestitch/api";
|
|
4
|
+
import { ItemType } from "@firestitch/filter";
|
|
5
|
+
import { FsListComponent, FsListModule } from "@firestitch/list";
|
|
6
|
+
import { FsMessage } from "@firestitch/message";
|
|
7
|
+
import { FsProcess } from "@firestitch/process";
|
|
8
|
+
import { Subject } from "rxjs";
|
|
9
|
+
import { filter, finalize, map, takeUntil, tap } from "rxjs/operators";
|
|
10
|
+
import { ProcessStates } from "../../consts";
|
|
11
|
+
import { ProcessData } from "../../data/process.data";
|
|
12
|
+
import { ProcessState } from "../../enums";
|
|
13
|
+
import { indexNameValue } from "../../helpers/index-name-value";
|
|
14
|
+
import { FsDateModule } from "@firestitch/date";
|
|
15
|
+
import { ProcessComponent } from "./../process/process.component";
|
|
16
16
|
import * as i0 from "@angular/core";
|
|
17
17
|
import * as i1 from "@firestitch/list";
|
|
18
18
|
import * as i2 from "@firestitch/date";
|
|
@@ -40,7 +40,7 @@ export class ProcessesComponent {
|
|
|
40
40
|
data: {
|
|
41
41
|
process,
|
|
42
42
|
},
|
|
43
|
-
width:
|
|
43
|
+
width: "85%",
|
|
44
44
|
})
|
|
45
45
|
.afterClosed()
|
|
46
46
|
.pipe(takeUntil(this._destroy$))
|
|
@@ -60,36 +60,34 @@ export class ProcessesComponent {
|
|
|
60
60
|
actions: [],
|
|
61
61
|
rowActions: [
|
|
62
62
|
{
|
|
63
|
-
label:
|
|
63
|
+
label: "Queue",
|
|
64
64
|
show: (process) => {
|
|
65
|
-
return process.state !== ProcessState.Running &&
|
|
66
|
-
process.state !== ProcessState.Queued;
|
|
65
|
+
return (process.state !== ProcessState.Running &&
|
|
66
|
+
process.state !== ProcessState.Queued);
|
|
67
67
|
},
|
|
68
68
|
click: (data) => {
|
|
69
|
-
this._processData.queue(data)
|
|
70
|
-
.subscribe(() => {
|
|
69
|
+
this._processData.queue(data).subscribe(() => {
|
|
71
70
|
this.reload();
|
|
72
|
-
this._message.success(
|
|
71
|
+
this._message.success("Queued process");
|
|
73
72
|
});
|
|
74
73
|
},
|
|
75
74
|
},
|
|
76
75
|
{
|
|
77
|
-
label:
|
|
76
|
+
label: "Run",
|
|
78
77
|
show: (data) => {
|
|
79
78
|
return data.state !== ProcessState.Running;
|
|
80
79
|
},
|
|
81
80
|
click: (process) => {
|
|
82
|
-
this._process
|
|
83
|
-
.run(`Run ${process.name}`, this._api
|
|
81
|
+
this._process.run(`Run ${process.name}`, this._api
|
|
84
82
|
.stream(RequestMethod.Post, `processes/${process.id}/run`)
|
|
85
83
|
.pipe(tap((event) => {
|
|
86
|
-
if (event instanceof StreamEventData &&
|
|
84
|
+
if (event instanceof StreamEventData &&
|
|
85
|
+
event.type === StreamEventType.Sent) {
|
|
87
86
|
process = {
|
|
88
87
|
...process,
|
|
89
88
|
state: ProcessState.Running,
|
|
90
89
|
};
|
|
91
|
-
this.list
|
|
92
|
-
.updateData(process, (row) => {
|
|
90
|
+
this.list.updateData(process, (row) => {
|
|
93
91
|
return process.id === row.id;
|
|
94
92
|
});
|
|
95
93
|
}
|
|
@@ -101,26 +99,24 @@ export class ProcessesComponent {
|
|
|
101
99
|
},
|
|
102
100
|
},
|
|
103
101
|
{
|
|
104
|
-
label:
|
|
102
|
+
label: "Kill",
|
|
105
103
|
show: (data) => {
|
|
106
104
|
return !!data.pid;
|
|
107
105
|
},
|
|
108
106
|
click: (data) => {
|
|
109
|
-
this._message.info(
|
|
110
|
-
this._processData.kill(data)
|
|
111
|
-
.subscribe(() => {
|
|
107
|
+
this._message.info("Killing process...");
|
|
108
|
+
this._processData.kill(data).subscribe(() => {
|
|
112
109
|
this.reload();
|
|
113
|
-
this._message.success(
|
|
110
|
+
this._message.success("Killed process");
|
|
114
111
|
});
|
|
115
112
|
},
|
|
116
113
|
},
|
|
117
114
|
{
|
|
118
|
-
label:
|
|
115
|
+
label: "Delete",
|
|
119
116
|
click: (data) => {
|
|
120
|
-
this._processData.delete(data)
|
|
121
|
-
.subscribe(() => {
|
|
117
|
+
this._processData.delete(data).subscribe(() => {
|
|
122
118
|
this.reload();
|
|
123
|
-
this._message.success(
|
|
119
|
+
this._message.success("Deleted process");
|
|
124
120
|
});
|
|
125
121
|
},
|
|
126
122
|
},
|
|
@@ -128,19 +124,28 @@ export class ProcessesComponent {
|
|
|
128
124
|
filters: [
|
|
129
125
|
{
|
|
130
126
|
type: ItemType.Keyword,
|
|
131
|
-
name:
|
|
132
|
-
label:
|
|
127
|
+
name: "keyword",
|
|
128
|
+
label: "Search",
|
|
133
129
|
},
|
|
134
130
|
{
|
|
135
131
|
type: ItemType.Select,
|
|
136
|
-
name:
|
|
137
|
-
label:
|
|
132
|
+
name: "state",
|
|
133
|
+
label: "Status",
|
|
138
134
|
values: ProcessStates,
|
|
139
135
|
},
|
|
136
|
+
{
|
|
137
|
+
name: "createDate",
|
|
138
|
+
type: ItemType.DateRange,
|
|
139
|
+
label: ["From Date", "To Date"],
|
|
140
|
+
},
|
|
140
141
|
],
|
|
141
142
|
fetch: (query) => {
|
|
142
|
-
return this._processData
|
|
143
|
-
.
|
|
143
|
+
return this._processData
|
|
144
|
+
.gets(query, { key: null })
|
|
145
|
+
.pipe(map((response) => ({
|
|
146
|
+
data: response.processes,
|
|
147
|
+
paging: response.paging,
|
|
148
|
+
})));
|
|
144
149
|
},
|
|
145
150
|
};
|
|
146
151
|
this.actions.forEach((action) => {
|
|
@@ -153,8 +158,9 @@ export class ProcessesComponent {
|
|
|
153
158
|
action.click(data);
|
|
154
159
|
}
|
|
155
160
|
if (action.component) {
|
|
156
|
-
this._dialog
|
|
157
|
-
|
|
161
|
+
this._dialog
|
|
162
|
+
.open(action.component, {
|
|
163
|
+
width: "800px",
|
|
158
164
|
})
|
|
159
165
|
.afterClosed()
|
|
160
166
|
.pipe(takeUntil(this._destroy$))
|
|
@@ -171,11 +177,11 @@ export class ProcessesComponent {
|
|
|
171
177
|
}
|
|
172
178
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ProcessesComponent, decorators: [{
|
|
173
179
|
type: Component,
|
|
174
|
-
args: [{ selector:
|
|
180
|
+
args: [{ selector: "fs-system-processes", changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [FsListModule, FsDateModule], template: "<fs-list [config]=\"config\">\n <fs-list-column>\n <ng-template fs-list-header>\n Name\n </ng-template>\n <ng-template\n fs-list-cell\n let-row=\"row\">\n <a (click)=\"open(row)\">\n {{ row.name }}\n </a>\n </ng-template>\n </fs-list-column>\n <fs-list-column>\n <ng-template fs-list-header>\n Status\n </ng-template>\n <ng-template\n fs-list-cell\n let-row=\"row\">\n {{ ProcessStates[row.state] }}\n <small>\n @if (row.state===ProcessState.Running && row.percent) {\n <div>\n Complete: {{ row.percent }}%\n </div>\n }\n @if (row.state===ProcessState.Completed && row.filename) {\n <div>\n <a\n href=\"javascript:;\"\n (click)=\"download(row)\">\n {{ row.filename }}\n </a>\n </div>\n }\n @if (row.pid) {\n <div>\n PID: {{ row.pid }}\n </div>\n }\n @if (row.state===ProcessState.Running && row.notify) {\n <div>\n Notify: {{ row.notify }}\n </div>\n }\n </small>\n </ng-template>\n </fs-list-column>\n <fs-list-column>\n <ng-template fs-list-header>\n Duration\n </ng-template>\n <ng-template\n fs-list-cell\n let-row=\"row\">\n {{ row.duration | fsDateDuration: {hours: true, minutes: true, seconds: true} }}\n </ng-template>\n </fs-list-column>\n <fs-list-column>\n <ng-template fs-list-header>\n Message\n </ng-template>\n <ng-template\n fs-list-cell\n let-row=\"row\">\n {{ row.message }}\n </ng-template>\n </fs-list-column>\n <fs-list-column>\n <ng-template fs-list-header>\n Completed\n </ng-template>\n <ng-template\n fs-list-cell\n let-row=\"row\">\n <fs-date-ago [date]=\"row.endDate\"></fs-date-ago>\n </ng-template>\n </fs-list-column>\n</fs-list>" }]
|
|
175
181
|
}], propDecorators: { list: [{
|
|
176
182
|
type: ViewChild,
|
|
177
183
|
args: [FsListComponent]
|
|
178
184
|
}], actions: [{
|
|
179
185
|
type: Input
|
|
180
186
|
}] } });
|
|
181
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvY2Vzc2VzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9zeXN0ZW0vY29tcG9uZW50cy9wcm9jZXNzZXMvcHJvY2Vzc2VzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9zeXN0ZW0vY29tcG9uZW50cy9wcm9jZXNzZXMvcHJvY2Vzc2VzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBcUIsU0FBUyxHQUNoRixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFckQsT0FBTyxFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUUsZUFBZSxFQUFFLGVBQWUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pGLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUM5QyxPQUFPLEVBQUUsZUFBZSxFQUFnQixZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUMvRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDaEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRWhELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV2RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzdDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0s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MkZBRTNCLGtCQUFrQjtrQkFSOUIsU0FBUzsrQkFDSSxxQkFBcUIsbUJBR2QsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsWUFBWSxDQUFDOzhCQVVoQyxJQUFJO3NCQURWLFNBQVM7dUJBQUMsZUFBZTtnQkFHVixPQUFPO3NCQUF0QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgaW5qZWN0LCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE1hdERpYWxvZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5cbmltcG9ydCB7IEZzQXBpLCBSZXF1ZXN0TWV0aG9kLCBTdHJlYW1FdmVudERhdGEsIFN0cmVhbUV2ZW50VHlwZSB9IGZyb20gJ0BmaXJlc3RpdGNoL2FwaSc7XG5pbXBvcnQgeyBJdGVtVHlwZSB9IGZyb20gJ0BmaXJlc3RpdGNoL2ZpbHRlcic7XG5pbXBvcnQgeyBGc0xpc3RDb21wb25lbnQsIEZzTGlzdENvbmZpZywgRnNMaXN0TW9kdWxlIH0gZnJvbSAnQGZpcmVzdGl0Y2gvbGlzdCc7XG5pbXBvcnQgeyBGc01lc3NhZ2UgfSBmcm9tICdAZmlyZXN0aXRjaC9tZXNzYWdlJztcbmltcG9ydCB7IEZzUHJvY2VzcyB9IGZyb20gJ0BmaXJlc3RpdGNoL3Byb2Nlc3MnO1xuXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXIsIGZpbmFsaXplLCBtYXAsIHRha2VVbnRpbCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBQcm9jZXNzU3RhdGVzIH0gZnJvbSAnLi4vLi4vY29uc3RzJztcbmltcG9ydCB7IFByb2Nlc3NEYXRhIH0gZnJvbSAnLi4vLi4vZGF0YS9wcm9jZXNzLmRhdGEnO1xuaW1wb3J0IHsgUHJvY2Vzc1N0YXRlIH0gZnJvbSAnLi4vLi4vZW51bXMnO1xuaW1wb3J0IHsgaW5kZXhOYW1lVmFsdWUgfSBmcm9tICcuLi8uLi9oZWxwZXJzL2luZGV4LW5hbWUtdmFsdWUnO1xuXG5cbmltcG9ydCB7IFByb2Nlc3NBY3Rpb24gfSBmcm9tICcuLy4uLy4uL2ludGVyZmFjZXMvcHJvY2Vzcy1hY3Rpb24nO1xuaW1wb3J0IHsgUHJvY2Vzc0NvbXBvbmVudCB9IGZyb20gJy4vLi4vcHJvY2Vzcy9wcm9jZXNzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc0RhdGVNb2R1bGUgfSBmcm9tICdAZmlyZXN0aXRjaC9kYXRlJztcblxuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ZzLXN5c3RlbS1wcm9jZXNzZXMnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9wcm9jZXNzZXMuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3Byb2Nlc3Nlcy5jb21wb25lbnQuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW0ZzTGlzdE1vZHVsZSwgRnNEYXRlTW9kdWxlXSxcbn0pXG5leHBvcnQgY2xhc3MgUHJvY2Vzc2VzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBwcml2YXRlIF9kaWFsb2cgPSBpbmplY3QoTWF0RGlhbG9nKTtcbiAgcHJpdmF0ZSBfbWVzc2FnZSA9IGluamVjdChGc01lc3NhZ2UpO1xuICBwcml2YXRlIF9wcm9jZXNzID0gaW5qZWN0KEZzUHJvY2Vzcyk7XG4gIHByaXZhdGUgX2FwaSA9IGluamVjdChGc0FwaSk7XG5cblxuICBAVmlld0NoaWxkKEZzTGlzdENvbXBvbmVudCkgXG4gIHB1YmxpYyBsaXN0OiBGc0xpc3RDb21wb25lbnQ7XG5cbiAgQElucHV0KCkgcHVibGljIGFjdGlvbnM6IFByb2Nlc3NBY3Rpb25bXSA9IFtdO1xuXG4gIHB1YmxpYyBjb25maWc6IEZzTGlzdENvbmZpZyA9IG51bGw7XG4gIHB1YmxpYyBQcm9jZXNzU3RhdGVzID0gaW5kZXhOYW1lVmFsdWUoUHJvY2Vzc1N0YXRlcyk7XG4gIHB1YmxpYyBQcm9jZXNzU3RhdGUgPSBQcm9jZXNzU3RhdGU7XG5cbiAgcHJpdmF0ZSBfZGVzdHJveSQgPSBuZXcgU3ViamVjdCgpO1xuICBwcml2YXRlIF9wcm9jZXNzRGF0YSA9IGluamVjdChQcm9jZXNzRGF0YSk7XG5cbiAgcHVibGljIG5nT25Jbml0KCkge1xuICAgIHRoaXMuX2NvbmZpZ0xpc3QoKTtcbiAgfVxuXG4gIHB1YmxpYyByZWxvYWQoKSB7XG4gICAgdGhpcy5saXN0LnJlbG9hZCgpO1xuICB9XG5cbiAgcHVibGljIG9wZW4ocHJvY2Vzcykge1xuICAgIHRoaXMuX2RpYWxvZ1xuICAgICAgLm9wZW4oUHJvY2Vzc0NvbXBvbmVudCwge1xuICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgcHJvY2VzcyxcbiAgICAgICAgfSxcbiAgICAgICAgd2lkdGg6ICc4NSUnLFxuICAgICAgfSlcbiAgICAgIC5hZnRlckNsb3NlZCgpXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLnJlbG9hZCgpO1xuICAgICAgfSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5fZGVzdHJveSQubmV4dChudWxsKTtcbiAgICB0aGlzLl9kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHVibGljIGRvd25sb2FkKHByb2Nlc3MpIHtcbiAgICB0aGlzLl9wcm9jZXNzRGF0YS5kb3dubG9hZChwcm9jZXNzKTtcbiAgfVxuXG4gIHByaXZhdGUgX2NvbmZpZ0xpc3QoKSB7XG4gICAgdGhpcy5jb25maWcgPSB7XG4gICAgICBhY3Rpb25zOiBbXSxcbiAgICAgIHJvd0FjdGlvbnM6IFsgICAgICBcbiAgICAgICAge1xuICAgICAgICAgIGxhYmVsOiAnUXVldWUnLFxuICAgICAgICAgIHNob3c6IChwcm9jZXNzKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gcHJvY2Vzcy5zdGF0ZSAhPT0gUHJvY2Vzc1N0YXRlLlJ1bm5pbmcgJiYgXG4gICAgICAgICAgICAgIHByb2Nlc3Muc3RhdGUgIT09IFByb2Nlc3NTdGF0ZS5RdWV1ZWQ7XG4gICAgICAgICAgfSxcbiAgICAgICAgICBjbGljazogKGRhdGEpID0+IHtcbiAgICAgICAgICAgIHRoaXMuX3Byb2Nlc3NEYXRhLnF1ZXVlKGRhdGEpXG4gICAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMucmVsb2FkKCk7XG4gICAgICAgICAgICAgICAgdGhpcy5fbWVzc2FnZS5zdWNjZXNzKCdRdWV1ZWQgcHJvY2VzcycpO1xuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgbGFiZWw6ICdSdW4nLFxuICAgICAgICAgIHNob3c6IChkYXRhKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gZGF0YS5zdGF0ZSAhPT0gUHJvY2Vzc1N0YXRlLlJ1bm5pbmc7XG4gICAgICAgICAgfSxcbiAgICAgICAgICBjbGljazogKHByb2Nlc3MpID0+IHtcbiAgICAgICAgICAgIHRoaXMuX3Byb2Nlc3NcbiAgICAgICAgICAgICAgLnJ1bihgUnVuICR7cHJvY2Vzcy5uYW1lfWAsIHRoaXMuX2FwaVxuICAgICAgICAgICAgICAgIC5zdHJlYW0oXG4gICAgICAgICAgICAgICAgICBSZXF1ZXN0TWV0aG9kLlBvc3QsIGBwcm9jZXNzZXMvJHtwcm9jZXNzLmlkfS9ydW5gKVxuICAgICAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgICAgdGFwKChldmVudCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZihcbiAgICAgICAgICAgICAgICAgICAgICBldmVudCBpbnN0YW5jZW9mIFN0cmVhbUV2ZW50RGF0YSAmJiBldmVudC50eXBlID09PSBTdHJlYW1FdmVudFR5cGUuU2VudFxuICAgICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgICBwcm9jZXNzID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgLi4ucHJvY2VzcyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRlOiBQcm9jZXNzU3RhdGUuUnVubmluZyxcbiAgICAgICAgICAgICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICAgICAgICAgICAgdGhpcy5saXN0XG4gICAgICAgICAgICAgICAgICAgICAgICAudXBkYXRlRGF0YShwcm9jZXNzLCAocm93KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBwcm9jZXNzLmlkID09PSByb3cuaWQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICBmaWx0ZXIoKGV2ZW50KSA9PiBldmVudCBpbnN0YW5jZW9mIFN0cmVhbUV2ZW50RGF0YSksXG4gICAgICAgICAgICAgICAgICBtYXAoKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBldmVudD8uZGF0YTtcbiAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgZmlsdGVyKChkYXRhKSA9PiAhIWRhdGEpLFxuICAgICAgICAgICAgICAgICAgZmluYWxpemUoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmxpc3QucmVsb2FkKCk7XG4gICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICApO1xuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBsYWJlbDogJ0tpbGwnLFxuICAgICAgICAgIHNob3c6IChkYXRhKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gISFkYXRhLnBpZDtcbiAgICAgICAgICB9LFxuICAgICAgICAgIGNsaWNrOiAoZGF0YSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5fbWVzc2FnZS5pbmZvKCdLaWxsaW5nIHByb2Nlc3MuLi4nKTtcbiAgICAgICAgICAgIHRoaXMuX3Byb2Nlc3NEYXRhLmtpbGwoZGF0YSlcbiAgICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5yZWxvYWQoKTtcbiAgICAgICAgICAgICAgICB0aGlzLl9tZXNzYWdlLnN1Y2Nlc3MoJ0tpbGxlZCBwcm9jZXNzJyk7XG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBsYWJlbDogJ0RlbGV0ZScsXG4gICAgICAgICAgY2xpY2s6IChkYXRhKSA9PiB7XG4gICAgICAgICAgICB0aGlzLl9wcm9jZXNzRGF0YS5kZWxldGUoZGF0YSlcbiAgICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5yZWxvYWQoKTtcbiAgICAgICAgICAgICAgICB0aGlzLl9tZXNzYWdlLnN1Y2Nlc3MoJ0RlbGV0ZWQgcHJvY2VzcycpO1xuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICAgIGZpbHRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHR5cGU6IEl0ZW1UeXBlLktleXdvcmQsXG4gICAgICAgICAgbmFtZTogJ2tleXdvcmQnLFxuICAgICAgICAgIGxhYmVsOiAnU2VhcmNoJyxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHR5cGU6IEl0ZW1UeXBlLlNlbGVjdCxcbiAgICAgICAgICBuYW1lOiAnc3RhdGUnLFxuICAgICAgICAgIGxhYmVsOiAnU3RhdHVzJyxcbiAgICAgICAgICB2YWx1ZXM6IFByb2Nlc3NTdGF0ZXMsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgICAgZmV0Y2g6IChxdWVyeSkgPT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fcHJvY2Vzc0RhdGEuZ2V0cyhxdWVyeSwgeyBrZXk6IG51bGwgfSlcbiAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgIG1hcCgocmVzcG9uc2U6IGFueSkgPT4gKHsgZGF0YTogcmVzcG9uc2UucHJvY2Vzc2VzLCBwYWdpbmc6IHJlc3BvbnNlLnBhZ2luZyB9KSksXG4gICAgICAgICAgKTtcbiAgICAgIH0sXG4gICAgfTtcblxuICAgIHRoaXMuYWN0aW9ucy5mb3JFYWNoKChhY3Rpb24pID0+IHtcbiAgICAgIHRoaXMuY29uZmlnLmFjdGlvbnMucHVzaChcbiAgICAgICAge1xuICAgICAgICAgIHByaW1hcnk6IGZhbHNlLFxuICAgICAgICAgIGxhYmVsOiBhY3Rpb24ubGFiZWwsXG4gICAgICAgICAgbWVudTogYWN0aW9uLm1lbnUsXG4gICAgICAgICAgY2xpY2s6IChkYXRhKSA9PiB7XG4gICAgICAgICAgICBpZiAoYWN0aW9uLmNsaWNrKSB7XG4gICAgICAgICAgICAgIGFjdGlvbi5jbGljayhkYXRhKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKGFjdGlvbi5jb21wb25lbnQpIHtcbiAgICAgICAgICAgICAgdGhpcy5fZGlhbG9nLm9wZW4oYWN0aW9uLmNvbXBvbmVudCwge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAnODAwcHgnLFxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgIC5hZnRlckNsb3NlZCgpXG4gICAgICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5fZGVzdHJveSQpLFxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgIHRoaXMucmVsb2FkKCk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICk7XG4gICAgfSk7XG4gIH1cbn1cbiIsIjxmcy1saXN0IFtjb25maWddPVwiY29uZmlnXCI+XG4gIDxmcy1saXN0LWNvbHVtbj5cbiAgICA8bmctdGVtcGxhdGUgZnMtbGlzdC1oZWFkZXI+XG4gICAgICBOYW1lXG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctdGVtcGxhdGVcbiAgICAgIGZzLWxpc3QtY2VsbFxuICAgICAgbGV0LXJvdz1cInJvd1wiPlxuICAgICAgPGEgKGNsaWNrKT1cIm9wZW4ocm93KVwiPlxuICAgICAgICB7eyByb3cubmFtZSB9fVxuICAgICAgPC9hPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvZnMtbGlzdC1jb2x1bW4+XG4gIDxmcy1saXN0LWNvbHVtbj5cbiAgICA8bmctdGVtcGxhdGUgZnMtbGlzdC1oZWFkZXI+XG4gICAgICBTdGF0dXNcbiAgICA8L25nLXRlbXBsYXRlPlxuICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgZnMtbGlzdC1jZWxsXG4gICAgICBsZXQtcm93PVwicm93XCI+XG4gICAgICB7eyBQcm9jZXNzU3RhdGVzW3Jvdy5zdGF0ZV0gfX1cbiAgICAgIDxzbWFsbD5cbiAgICAgICAgQGlmIChyb3cuc3RhdGU9PT1Qcm9jZXNzU3RhdGUuUnVubmluZyAmJiByb3cucGVyY2VudCkge1xuICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICBDb21wbGV0ZToge3sgcm93LnBlcmNlbnQgfX0lXG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICAgICAgQGlmIChyb3cuc3RhdGU9PT1Qcm9jZXNzU3RhdGUuQ29tcGxldGVkICYmIHJvdy5maWxlbmFtZSkge1xuICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICA8YVxuICAgICAgICAgICAgICBocmVmPVwiamF2YXNjcmlwdDo7XCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cImRvd25sb2FkKHJvdylcIj5cbiAgICAgICAgICAgICAge3sgcm93LmZpbGVuYW1lIH19XG4gICAgICAgICAgICA8L2E+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICAgICAgQGlmIChyb3cucGlkKSB7XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIFBJRDoge3sgcm93LnBpZCB9fVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgICAgIEBpZiAocm93LnN0YXRlPT09UHJvY2Vzc1N0YXRlLlJ1bm5pbmcgJiYgcm93Lm5vdGlmeSkge1xuICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICBOb3RpZnk6IHt7IHJvdy5ub3RpZnkgfX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuICAgICAgPC9zbWFsbD5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L2ZzLWxpc3QtY29sdW1uPlxuICA8ZnMtbGlzdC1jb2x1bW4+XG4gICAgPG5nLXRlbXBsYXRlIGZzLWxpc3QtaGVhZGVyPlxuICAgICAgRHVyYXRpb25cbiAgICA8L25nLXRlbXBsYXRlPlxuICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgZnMtbGlzdC1jZWxsXG4gICAgICBsZXQtcm93PVwicm93XCI+XG4gICAgICB7eyByb3cuZHVyYXRpb24gfCBmc0RhdGVEdXJhdGlvbjoge2hvdXJzOiB0cnVlLCBtaW51dGVzOiB0cnVlLCBzZWNvbmRzOiB0cnVlfSB9fVxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvZnMtbGlzdC1jb2x1bW4+XG4gIDxmcy1saXN0LWNvbHVtbj5cbiAgICA8bmctdGVtcGxhdGUgZnMtbGlzdC1oZWFkZXI+XG4gICAgICBNZXNzYWdlXG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctdGVtcGxhdGVcbiAgICAgIGZzLWxpc3QtY2VsbFxuICAgICAgbGV0LXJvdz1cInJvd1wiPlxuICAgICAge3sgcm93Lm1lc3NhZ2UgfX1cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L2ZzLWxpc3QtY29sdW1uPlxuICA8ZnMtbGlzdC1jb2x1bW4+XG4gICAgPG5nLXRlbXBsYXRlIGZzLWxpc3QtaGVhZGVyPlxuICAgICAgQ29tcGxldGVkXG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctdGVtcGxhdGVcbiAgICAgIGZzLWxpc3QtY2VsbFxuICAgICAgbGV0LXJvdz1cInJvd1wiPlxuICAgICAgPGZzLWRhdGUtYWdvIFtkYXRlXT1cInJvdy5lbmREYXRlXCI+PC9mcy1kYXRlLWFnbz5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L2ZzLWxpc3QtY29sdW1uPlxuPC9mcy1saXN0PiJdfQ==
|
|
187
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvY2Vzc2VzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9zeXN0ZW0vY29tcG9uZW50cy9wcm9jZXNzZXMvcHJvY2Vzc2VzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9zeXN0ZW0vY29tcG9uZW50cy9wcm9jZXNzZXMvcHJvY2Vzc2VzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULE1BQU0sRUFDTixLQUFLLEVBR0wsU0FBUyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUVyRCxPQUFPLEVBQ0gsS0FBSyxFQUNMLGFBQWEsRUFDYixlQUFlLEVBQ2YsZUFBZSxHQUNsQixNQUFNLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUM5QyxPQUFPLEVBQUUsZUFBZSxFQUFnQixZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUMvRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDaEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRWhELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV2RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzdDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUVoRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFaEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7Ozs7QUFVbEUsTUFBTSxPQUFPLGtCQUFrQjtJQUNyQixPQUFPLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzVCLFFBQVEsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDN0IsUUFBUSxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUM3QixJQUFJLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBR3RCLElBQUksQ0FBa0I7SUFFYixPQUFPLEdBQW9CLEVBQUUsQ0FBQztJQUV2QyxNQUFNLEdBQWlCLElBQUksQ0FBQztJQUM1QixhQUFhLEdBQUcsY0FBYyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQzlDLFlBQVksR0FBRyxZQUFZLENBQUM7SUFFM0IsU0FBUyxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7SUFDMUIsWUFBWSxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUVwQyxRQUFRO1FBQ2IsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFFTSxNQUFNO1FBQ1gsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRU0sSUFBSSxDQUFDLE9BQU87UUFDakIsSUFBSSxDQUFDLE9BQU87YUFDVCxJQUFJLENBQUMsZ0JBQWdCLEVBQUU7WUFDdEIsSUFBSSxFQUFFO2dCQUNKLE9BQU87YUFDUjtZQUNELEtBQUssRUFBRSxLQUFLO1NBQ2IsQ0FBQzthQUNELFdBQVcsRUFBRTthQUNiLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO2FBQy9CLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDZCxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDaEIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMxQixJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFTSxRQUFRLENBQUMsT0FBTztRQUNyQixJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRU8sV0FBVztRQUNqQixJQUFJLENBQUMsTUFBTSxHQUFHO1lBQ1osT0FBTyxFQUFFLEVBQUU7WUFDWCxVQUFVLEVBQUU7Z0JBQ1Y7b0JBQ0UsS0FBSyxFQUFFLE9BQU87b0JBQ2QsSUFBSSxFQUFFLENBQUMsT0FBTyxFQUFFLEVBQUU7d0JBQ2hCLE9BQU8sQ0FDTCxPQUFPLENBQUMsS0FBSyxLQUFLLFlBQVksQ0FBQyxPQUFPOzRCQUN0QyxPQUFPLENBQUMsS0FBSyxLQUFLLFlBQVksQ0FBQyxNQUFNLENBQ3RDLENBQUM7b0JBQ0osQ0FBQztvQkFDRCxLQUFLLEVBQUUsQ0FBQyxJQUFJLEVBQUUsRUFBRTt3QkFDZCxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFOzRCQUMzQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7NEJBQ2QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsQ0FBQzt3QkFDMUMsQ0FBQyxDQUFDLENBQUM7b0JBQ0wsQ0FBQztpQkFDRjtnQkFDRDtvQkFDRSxLQUFLLEVBQUUsS0FBSztvQkFDWixJQUFJLEVBQUUsQ0FBQyxJQUFJLEVBQUUsRUFBRTt3QkFDYixPQUFPLElBQUksQ0FBQyxLQUFLLEtBQUssWUFBWSxDQUFDLE9BQU8sQ0FBQztvQkFDN0MsQ0FBQztvQkFDRCxLQUFLLEVBQUUsQ0FBQyxPQUFPLEVBQUUsRUFBRTt3QkFDakIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQ2YsT0FBTyxPQUFPLENBQUMsSUFBSSxFQUFFLEVBQ3JCLElBQUksQ0FBQyxJQUFJOzZCQUNOLE1BQU0sQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLGFBQWEsT0FBTyxDQUFDLEVBQUUsTUFBTSxDQUFDOzZCQUN6RCxJQUFJLENBQ0gsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7NEJBQ1osSUFDRSxLQUFLLFlBQVksZUFBZTtnQ0FDaEMsS0FBSyxDQUFDLElBQUksS0FBSyxlQUFlLENBQUMsSUFBSSxFQUNuQyxDQUFDO2dDQUNELE9BQU8sR0FBRztvQ0FDUixHQUFHLE9BQU87b0NBQ1YsS0FBSyxFQUFFLFlBQVksQ0FBQyxPQUFPO2lDQUM1QixDQUFDO2dDQUVGLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRSxDQUFDLEdBQUcsRUFBRSxFQUFFO29DQUNwQyxPQUFPLE9BQU8sQ0FBQyxFQUFFLEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQztnQ0FDL0IsQ0FBQyxDQUFDLENBQUM7NEJBQ0wsQ0FBQzt3QkFDSCxDQUFDLENBQUMsRUFDRixNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssWUFBWSxlQUFlLENBQUMsRUFDbkQsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7NEJBQ1osT0FBTyxLQUFLLEVBQUUsSUFBSSxDQUFDO3dCQUNyQixDQUFDLENBQUMsRUFDRixNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFDeEIsUUFBUSxDQUFDLEdBQUcsRUFBRTs0QkFDWixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO3dCQUNyQixDQUFDLENBQUMsQ0FDSCxDQUNKLENBQUM7b0JBQ0osQ0FBQztpQkFDRjtnQkFDRDtvQkFDRSxLQUFLLEVBQUUsTUFBTTtvQkFDYixJQUFJLEVBQUUsQ0FBQyxJQUFJLEVBQUUsRUFBRTt3QkFDYixPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDO29CQUNwQixDQUFDO29CQUNELEtBQUssRUFBRSxDQUFDLElBQUksRUFBRSxFQUFFO3dCQUNkLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUM7d0JBQ3pDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7NEJBQzFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQzs0QkFDZCxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO3dCQUMxQyxDQUFDLENBQUMsQ0FBQztvQkFDTCxDQUFDO2lCQUNGO2dCQUNEO29CQUNFLEtBQUssRUFBRSxRQUFRO29CQUNmLEtBQUssRUFBRSxDQUFDLElBQUksRUFBRSxFQUFFO3dCQUNkLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7NEJBQzVDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQzs0QkFDZCxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO3dCQUMzQyxDQUFDLENBQUMsQ0FBQztvQkFDTCxDQUFDO2lCQUNGO2FBQ0Y7WUFDRCxPQUFPLEVBQUU7Z0JBQ1A7b0JBQ0UsSUFBSSxFQUFFLFFBQVEsQ0FBQyxPQUFPO29CQUN0QixJQUFJLEVBQUUsU0FBUztvQkFDZixLQUFLLEVBQUUsUUFBUTtpQkFDaEI7Z0JBQ0Q7b0JBQ0UsSUFBSSxFQUFFLFFBQVEsQ0FBQyxNQUFNO29CQUNyQixJQUFJLEVBQUUsT0FBTztvQkFDYixLQUFLLEVBQUUsUUFBUTtvQkFDZixNQUFNLEVBQUUsYUFBYTtpQkFDdEI7Z0JBQ0Q7b0JBQ0UsSUFBSSxFQUFFLFlBQVk7b0JBQ2xCLElBQUksRUFBRSxRQUFRLENBQUMsU0FBUztvQkFDeEIsS0FBSyxFQUFFLENBQUMsV0FBVyxFQUFFLFNBQVMsQ0FBQztpQkFDaEM7YUFDRjtZQUNELEtBQUssRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFO2dCQUNmLE9BQU8sSUFBSSxDQUFDLFlBQVk7cUJBQ3JCLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLENBQUM7cUJBQzFCLElBQUksQ0FDSCxHQUFHLENBQUMsQ0FBQyxRQUFhLEVBQUUsRUFBRSxDQUFDLENBQUM7b0JBQ3RCLElBQUksRUFBRSxRQUFRLENBQUMsU0FBUztvQkFDeEIsTUFBTSxFQUFFLFFBQVEsQ0FBQyxNQUFNO2lCQUN4QixDQUFDLENBQUMsQ0FDSixDQUFDO1lBQ04sQ0FBQztTQUNGLENBQUM7UUFFRixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQzlCLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQztnQkFDdkIsT0FBTyxFQUFFLEtBQUs7Z0JBQ2QsS0FBSyxFQUFFLE1BQU0sQ0FBQyxLQUFLO2dCQUNuQixJQUFJLEVBQUUsTUFBTSxDQUFDLElBQUk7Z0JBQ2pCLEtBQUssRUFBRSxDQUFDLElBQUksRUFBRSxFQUFFO29CQUNkLElBQUksTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDO3dCQUNqQixNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUNyQixDQUFDO29CQUVELElBQUksTUFBTSxDQUFDLFNBQVMsRUFBRSxDQUFDO3dCQUNyQixJQUFJLENBQUMsT0FBTzs2QkFDVCxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRTs0QkFDdEIsS0FBSyxFQUFFLE9BQU87eUJBQ2YsQ0FBQzs2QkFDRCxXQUFXLEVBQUU7NkJBQ2IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7NkJBQy9CLFNBQVMsQ0FBQyxHQUFHLEVBQUU7NEJBQ2QsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO3dCQUNoQixDQUFDLENBQUMsQ0FBQztvQkFDUCxDQUFDO2dCQUNILENBQUM7YUFDRixDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7dUdBeExVLGtCQUFrQjsyRkFBbEIsa0JBQWtCLHFKQU1sQixlQUFlLGdEQ2pENUIsdzdEQStFVSx5RER0Q0UsWUFBWSx3bkJBQUUsWUFBWTs7MkZBRXpCLGtCQUFrQjtrQkFSOUIsU0FBUzsrQkFDRSxxQkFBcUIsbUJBR2QsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsWUFBWSxDQUFDOzhCQVM5QixJQUFJO3NCQURWLFNBQVM7dUJBQUMsZUFBZTtnQkFHVixPQUFPO3NCQUF0QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgaW5qZWN0LFxuICAgIElucHV0LFxuICAgIE9uRGVzdHJveSxcbiAgICBPbkluaXQsXG4gICAgVmlld0NoaWxkLFxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuXG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nXCI7XG5cbmltcG9ydCB7XG4gICAgRnNBcGksXG4gICAgUmVxdWVzdE1ldGhvZCxcbiAgICBTdHJlYW1FdmVudERhdGEsXG4gICAgU3RyZWFtRXZlbnRUeXBlLFxufSBmcm9tIFwiQGZpcmVzdGl0Y2gvYXBpXCI7XG5pbXBvcnQgeyBJdGVtVHlwZSB9IGZyb20gXCJAZmlyZXN0aXRjaC9maWx0ZXJcIjtcbmltcG9ydCB7IEZzTGlzdENvbXBvbmVudCwgRnNMaXN0Q29uZmlnLCBGc0xpc3RNb2R1bGUgfSBmcm9tIFwiQGZpcmVzdGl0Y2gvbGlzdFwiO1xuaW1wb3J0IHsgRnNNZXNzYWdlIH0gZnJvbSBcIkBmaXJlc3RpdGNoL21lc3NhZ2VcIjtcbmltcG9ydCB7IEZzUHJvY2VzcyB9IGZyb20gXCJAZmlyZXN0aXRjaC9wcm9jZXNzXCI7XG5cbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHsgZmlsdGVyLCBmaW5hbGl6ZSwgbWFwLCB0YWtlVW50aWwsIHRhcCB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xuXG5pbXBvcnQgeyBQcm9jZXNzU3RhdGVzIH0gZnJvbSBcIi4uLy4uL2NvbnN0c1wiO1xuaW1wb3J0IHsgUHJvY2Vzc0RhdGEgfSBmcm9tIFwiLi4vLi4vZGF0YS9wcm9jZXNzLmRhdGFcIjtcbmltcG9ydCB7IFByb2Nlc3NTdGF0ZSB9IGZyb20gXCIuLi8uLi9lbnVtc1wiO1xuaW1wb3J0IHsgaW5kZXhOYW1lVmFsdWUgfSBmcm9tIFwiLi4vLi4vaGVscGVycy9pbmRleC1uYW1lLXZhbHVlXCI7XG5cbmltcG9ydCB7IEZzRGF0ZU1vZHVsZSB9IGZyb20gXCJAZmlyZXN0aXRjaC9kYXRlXCI7XG5pbXBvcnQgeyBQcm9jZXNzQWN0aW9uIH0gZnJvbSBcIi4vLi4vLi4vaW50ZXJmYWNlcy9wcm9jZXNzLWFjdGlvblwiO1xuaW1wb3J0IHsgUHJvY2Vzc0NvbXBvbmVudCB9IGZyb20gXCIuLy4uL3Byb2Nlc3MvcHJvY2Vzcy5jb21wb25lbnRcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcImZzLXN5c3RlbS1wcm9jZXNzZXNcIixcbiAgdGVtcGxhdGVVcmw6IFwiLi9wcm9jZXNzZXMuY29tcG9uZW50Lmh0bWxcIixcbiAgc3R5bGVVcmxzOiBbXCIuL3Byb2Nlc3Nlcy5jb21wb25lbnQuc2Nzc1wiXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtGc0xpc3RNb2R1bGUsIEZzRGF0ZU1vZHVsZV0sXG59KVxuZXhwb3J0IGNsYXNzIFByb2Nlc3Nlc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSBfZGlhbG9nID0gaW5qZWN0KE1hdERpYWxvZyk7XG4gIHByaXZhdGUgX21lc3NhZ2UgPSBpbmplY3QoRnNNZXNzYWdlKTtcbiAgcHJpdmF0ZSBfcHJvY2VzcyA9IGluamVjdChGc1Byb2Nlc3MpO1xuICBwcml2YXRlIF9hcGkgPSBpbmplY3QoRnNBcGkpO1xuXG4gIEBWaWV3Q2hpbGQoRnNMaXN0Q29tcG9uZW50KVxuICBwdWJsaWMgbGlzdDogRnNMaXN0Q29tcG9uZW50O1xuXG4gIEBJbnB1dCgpIHB1YmxpYyBhY3Rpb25zOiBQcm9jZXNzQWN0aW9uW10gPSBbXTtcblxuICBwdWJsaWMgY29uZmlnOiBGc0xpc3RDb25maWcgPSBudWxsO1xuICBwdWJsaWMgUHJvY2Vzc1N0YXRlcyA9IGluZGV4TmFtZVZhbHVlKFByb2Nlc3NTdGF0ZXMpO1xuICBwdWJsaWMgUHJvY2Vzc1N0YXRlID0gUHJvY2Vzc1N0YXRlO1xuXG4gIHByaXZhdGUgX2Rlc3Ryb3kkID0gbmV3IFN1YmplY3QoKTtcbiAgcHJpdmF0ZSBfcHJvY2Vzc0RhdGEgPSBpbmplY3QoUHJvY2Vzc0RhdGEpO1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLl9jb25maWdMaXN0KCk7XG4gIH1cblxuICBwdWJsaWMgcmVsb2FkKCkge1xuICAgIHRoaXMubGlzdC5yZWxvYWQoKTtcbiAgfVxuXG4gIHB1YmxpYyBvcGVuKHByb2Nlc3MpIHtcbiAgICB0aGlzLl9kaWFsb2dcbiAgICAgIC5vcGVuKFByb2Nlc3NDb21wb25lbnQsIHtcbiAgICAgICAgZGF0YToge1xuICAgICAgICAgIHByb2Nlc3MsXG4gICAgICAgIH0sXG4gICAgICAgIHdpZHRoOiBcIjg1JVwiLFxuICAgICAgfSlcbiAgICAgIC5hZnRlckNsb3NlZCgpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fZGVzdHJveSQpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMucmVsb2FkKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLl9kZXN0cm95JC5uZXh0KG51bGwpO1xuICAgIHRoaXMuX2Rlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwdWJsaWMgZG93bmxvYWQocHJvY2Vzcykge1xuICAgIHRoaXMuX3Byb2Nlc3NEYXRhLmRvd25sb2FkKHByb2Nlc3MpO1xuICB9XG5cbiAgcHJpdmF0ZSBfY29uZmlnTGlzdCgpIHtcbiAgICB0aGlzLmNvbmZpZyA9IHtcbiAgICAgIGFjdGlvbnM6IFtdLFxuICAgICAgcm93QWN0aW9uczogW1xuICAgICAgICB7XG4gICAgICAgICAgbGFiZWw6IFwiUXVldWVcIixcbiAgICAgICAgICBzaG93OiAocHJvY2VzcykgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgcHJvY2Vzcy5zdGF0ZSAhPT0gUHJvY2Vzc1N0YXRlLlJ1bm5pbmcgJiZcbiAgICAgICAgICAgICAgcHJvY2Vzcy5zdGF0ZSAhPT0gUHJvY2Vzc1N0YXRlLlF1ZXVlZFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9LFxuICAgICAgICAgIGNsaWNrOiAoZGF0YSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5fcHJvY2Vzc0RhdGEucXVldWUoZGF0YSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgdGhpcy5yZWxvYWQoKTtcbiAgICAgICAgICAgICAgdGhpcy5fbWVzc2FnZS5zdWNjZXNzKFwiUXVldWVkIHByb2Nlc3NcIik7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgbGFiZWw6IFwiUnVuXCIsXG4gICAgICAgICAgc2hvdzogKGRhdGEpID0+IHtcbiAgICAgICAgICAgIHJldHVybiBkYXRhLnN0YXRlICE9PSBQcm9jZXNzU3RhdGUuUnVubmluZztcbiAgICAgICAgICB9LFxuICAgICAgICAgIGNsaWNrOiAocHJvY2VzcykgPT4ge1xuICAgICAgICAgICAgdGhpcy5fcHJvY2Vzcy5ydW4oXG4gICAgICAgICAgICAgIGBSdW4gJHtwcm9jZXNzLm5hbWV9YCxcbiAgICAgICAgICAgICAgdGhpcy5fYXBpXG4gICAgICAgICAgICAgICAgLnN0cmVhbShSZXF1ZXN0TWV0aG9kLlBvc3QsIGBwcm9jZXNzZXMvJHtwcm9jZXNzLmlkfS9ydW5gKVxuICAgICAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgICAgdGFwKChldmVudCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgICAgZXZlbnQgaW5zdGFuY2VvZiBTdHJlYW1FdmVudERhdGEgJiZcbiAgICAgICAgICAgICAgICAgICAgICBldmVudC50eXBlID09PSBTdHJlYW1FdmVudFR5cGUuU2VudFxuICAgICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgICBwcm9jZXNzID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgLi4ucHJvY2VzcyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRlOiBQcm9jZXNzU3RhdGUuUnVubmluZyxcbiAgICAgICAgICAgICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICAgICAgICAgICAgdGhpcy5saXN0LnVwZGF0ZURhdGEocHJvY2VzcywgKHJvdykgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHByb2Nlc3MuaWQgPT09IHJvdy5pZDtcbiAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICBmaWx0ZXIoKGV2ZW50KSA9PiBldmVudCBpbnN0YW5jZW9mIFN0cmVhbUV2ZW50RGF0YSksXG4gICAgICAgICAgICAgICAgICBtYXAoKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBldmVudD8uZGF0YTtcbiAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgZmlsdGVyKChkYXRhKSA9PiAhIWRhdGEpLFxuICAgICAgICAgICAgICAgICAgZmluYWxpemUoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmxpc3QucmVsb2FkKCk7XG4gICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgbGFiZWw6IFwiS2lsbFwiLFxuICAgICAgICAgIHNob3c6IChkYXRhKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gISFkYXRhLnBpZDtcbiAgICAgICAgICB9LFxuICAgICAgICAgIGNsaWNrOiAoZGF0YSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5fbWVzc2FnZS5pbmZvKFwiS2lsbGluZyBwcm9jZXNzLi4uXCIpO1xuICAgICAgICAgICAgdGhpcy5fcHJvY2Vzc0RhdGEua2lsbChkYXRhKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICB0aGlzLnJlbG9hZCgpO1xuICAgICAgICAgICAgICB0aGlzLl9tZXNzYWdlLnN1Y2Nlc3MoXCJLaWxsZWQgcHJvY2Vzc1wiKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBsYWJlbDogXCJEZWxldGVcIixcbiAgICAgICAgICBjbGljazogKGRhdGEpID0+IHtcbiAgICAgICAgICAgIHRoaXMuX3Byb2Nlc3NEYXRhLmRlbGV0ZShkYXRhKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICB0aGlzLnJlbG9hZCgpO1xuICAgICAgICAgICAgICB0aGlzLl9tZXNzYWdlLnN1Y2Nlc3MoXCJEZWxldGVkIHByb2Nlc3NcIik7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICAgIGZpbHRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHR5cGU6IEl0ZW1UeXBlLktleXdvcmQsXG4gICAgICAgICAgbmFtZTogXCJrZXl3b3JkXCIsXG4gICAgICAgICAgbGFiZWw6IFwiU2VhcmNoXCIsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICB0eXBlOiBJdGVtVHlwZS5TZWxlY3QsXG4gICAgICAgICAgbmFtZTogXCJzdGF0ZVwiLFxuICAgICAgICAgIGxhYmVsOiBcIlN0YXR1c1wiLFxuICAgICAgICAgIHZhbHVlczogUHJvY2Vzc1N0YXRlcyxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6IFwiY3JlYXRlRGF0ZVwiLFxuICAgICAgICAgIHR5cGU6IEl0ZW1UeXBlLkRhdGVSYW5nZSxcbiAgICAgICAgICBsYWJlbDogW1wiRnJvbSBEYXRlXCIsIFwiVG8gRGF0ZVwiXSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgICBmZXRjaDogKHF1ZXJ5KSA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9wcm9jZXNzRGF0YVxuICAgICAgICAgIC5nZXRzKHF1ZXJ5LCB7IGtleTogbnVsbCB9KVxuICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgbWFwKChyZXNwb25zZTogYW55KSA9PiAoe1xuICAgICAgICAgICAgICBkYXRhOiByZXNwb25zZS5wcm9jZXNzZXMsXG4gICAgICAgICAgICAgIHBhZ2luZzogcmVzcG9uc2UucGFnaW5nLFxuICAgICAgICAgICAgfSkpLFxuICAgICAgICAgICk7XG4gICAgICB9LFxuICAgIH07XG5cbiAgICB0aGlzLmFjdGlvbnMuZm9yRWFjaCgoYWN0aW9uKSA9PiB7XG4gICAgICB0aGlzLmNvbmZpZy5hY3Rpb25zLnB1c2goe1xuICAgICAgICBwcmltYXJ5OiBmYWxzZSxcbiAgICAgICAgbGFiZWw6IGFjdGlvbi5sYWJlbCxcbiAgICAgICAgbWVudTogYWN0aW9uLm1lbnUsXG4gICAgICAgIGNsaWNrOiAoZGF0YSkgPT4ge1xuICAgICAgICAgIGlmIChhY3Rpb24uY2xpY2spIHtcbiAgICAgICAgICAgIGFjdGlvbi5jbGljayhkYXRhKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAoYWN0aW9uLmNvbXBvbmVudCkge1xuICAgICAgICAgICAgdGhpcy5fZGlhbG9nXG4gICAgICAgICAgICAgIC5vcGVuKGFjdGlvbi5jb21wb25lbnQsIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogXCI4MDBweFwiLFxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAuYWZ0ZXJDbG9zZWQoKVxuICAgICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fZGVzdHJveSQpKVxuICAgICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnJlbG9hZCgpO1xuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxufVxuIiwiPGZzLWxpc3QgW2NvbmZpZ109XCJjb25maWdcIj5cbiAgPGZzLWxpc3QtY29sdW1uPlxuICAgIDxuZy10ZW1wbGF0ZSBmcy1saXN0LWhlYWRlcj5cbiAgICAgIE5hbWVcbiAgICA8L25nLXRlbXBsYXRlPlxuICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgZnMtbGlzdC1jZWxsXG4gICAgICBsZXQtcm93PVwicm93XCI+XG4gICAgICA8YSAoY2xpY2spPVwib3Blbihyb3cpXCI+XG4gICAgICAgIHt7IHJvdy5uYW1lIH19XG4gICAgICA8L2E+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgPC9mcy1saXN0LWNvbHVtbj5cbiAgPGZzLWxpc3QtY29sdW1uPlxuICAgIDxuZy10ZW1wbGF0ZSBmcy1saXN0LWhlYWRlcj5cbiAgICAgIFN0YXR1c1xuICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPG5nLXRlbXBsYXRlXG4gICAgICBmcy1saXN0LWNlbGxcbiAgICAgIGxldC1yb3c9XCJyb3dcIj5cbiAgICAgIHt7IFByb2Nlc3NTdGF0ZXNbcm93LnN0YXRlXSB9fVxuICAgICAgPHNtYWxsPlxuICAgICAgICBAaWYgKHJvdy5zdGF0ZT09PVByb2Nlc3NTdGF0ZS5SdW5uaW5nICYmIHJvdy5wZXJjZW50KSB7XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIENvbXBsZXRlOiB7eyByb3cucGVyY2VudCB9fSVcbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuICAgICAgICBAaWYgKHJvdy5zdGF0ZT09PVByb2Nlc3NTdGF0ZS5Db21wbGV0ZWQgJiYgcm93LmZpbGVuYW1lKSB7XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgIGhyZWY9XCJqYXZhc2NyaXB0OjtcIlxuICAgICAgICAgICAgICAoY2xpY2spPVwiZG93bmxvYWQocm93KVwiPlxuICAgICAgICAgICAgICB7eyByb3cuZmlsZW5hbWUgfX1cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuICAgICAgICBAaWYgKHJvdy5waWQpIHtcbiAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgUElEOiB7eyByb3cucGlkIH19XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICAgICAgQGlmIChyb3cuc3RhdGU9PT1Qcm9jZXNzU3RhdGUuUnVubmluZyAmJiByb3cubm90aWZ5KSB7XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIE5vdGlmeToge3sgcm93Lm5vdGlmeSB9fVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgICA8L3NtYWxsPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvZnMtbGlzdC1jb2x1bW4+XG4gIDxmcy1saXN0LWNvbHVtbj5cbiAgICA8bmctdGVtcGxhdGUgZnMtbGlzdC1oZWFkZXI+XG4gICAgICBEdXJhdGlvblxuICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPG5nLXRlbXBsYXRlXG4gICAgICBmcy1saXN0LWNlbGxcbiAgICAgIGxldC1yb3c9XCJyb3dcIj5cbiAgICAgIHt7IHJvdy5kdXJhdGlvbiB8IGZzRGF0ZUR1cmF0aW9uOiB7aG91cnM6IHRydWUsIG1pbnV0ZXM6IHRydWUsIHNlY29uZHM6IHRydWV9IH19XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgPC9mcy1saXN0LWNvbHVtbj5cbiAgPGZzLWxpc3QtY29sdW1uPlxuICAgIDxuZy10ZW1wbGF0ZSBmcy1saXN0LWhlYWRlcj5cbiAgICAgIE1lc3NhZ2VcbiAgICA8L25nLXRlbXBsYXRlPlxuICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgZnMtbGlzdC1jZWxsXG4gICAgICBsZXQtcm93PVwicm93XCI+XG4gICAgICB7eyByb3cubWVzc2FnZSB9fVxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvZnMtbGlzdC1jb2x1bW4+XG4gIDxmcy1saXN0LWNvbHVtbj5cbiAgICA8bmctdGVtcGxhdGUgZnMtbGlzdC1oZWFkZXI+XG4gICAgICBDb21wbGV0ZWRcbiAgICA8L25nLXRlbXBsYXRlPlxuICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgZnMtbGlzdC1jZWxsXG4gICAgICBsZXQtcm93PVwicm93XCI+XG4gICAgICA8ZnMtZGF0ZS1hZ28gW2RhdGVdPVwicm93LmVuZERhdGVcIj48L2ZzLWRhdGUtYWdvPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvZnMtbGlzdC1jb2x1bW4+XG48L2ZzLWxpc3Q+Il19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvY2Vzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9zeXN0ZW0vaW50ZXJmYWNlcy9wcm9jZXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFByb2Nlc3Mge1xuICBjbGFzcz86IHN0cmluZztcbiAgZnVuY3Rpb24/OiBzdHJpbmc7XG4gIGNyZWF0ZURhdGU/OiBhbnk7XG4gIGNyZWF0ZWRUaW1lPzogRGF0ZTtcbiAgZGF0YT86IGFueTtcbiAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIGR1cmF0aW9uPzogYW55O1xuICBlbmREYXRlPzogYW55O1xuICBlbmRUaW1lPzogRGF0ZTtcbiAgZmlsZW5hbWU/OiBzdHJpbmc7XG4gIGZpbGVzPzogYW55O1xuICBndWlkPzogc3RyaW5nO1xuICBsb2c/OiBzdHJpbmc7XG4gIG1lc3NhZ2U/OiBzdHJpbmc7XG4gIG5hbWU/OiBzdHJpbmc7XG4gIG5vdGlmeT86IHN0cmluZztcbiAgcGVyY2VudD86IG51bWJlcjtcbiAgcGlkPzogc3RyaW5nO1xuICBwcmV0dHlOYW1lPzogYW55O1xuICBpZD86IG51bWJlcjtcbiAgcHJvY2Vzc1N0YXRlPzogYW55O1xuICBzdGFydERhdGU/OiBhbnk7XG4gIHN0YXJ0VGltZT86IERhdGU7XG4gIHN0YXRlPzogc3RyaW5nO1xuICBzdGF0cz86IHN0cmluZztcbiAgdHlwZT86IHN0cmluZztcbn1cbiJdfQ==
|