@tilde-nlp/ngx-common 4.0.21 → 4.0.22
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/multi-functional-table/multi-functional-table.component.mjs +7 -3
- package/esm2022/lib/notification-message/notification-message.component.mjs +2 -2
- package/esm2022/lib/pipes/language-translate/language-translate.pipe.mjs +7 -2
- package/esm2022/lib/terminology/components/terminology-panel/terminology-collection-list/terminology-collection-card/terminology-collection-card.component.mjs +10 -4
- package/esm2022/lib/terminology/components/terminology-panel/terminology-collection-list/terminology-collection-list.component.mjs +10 -2
- package/esm2022/lib/terminology/services/terminology/terminology.service.mjs +12 -6
- package/esm2022/lib/terminology/terminology.component.mjs +7 -7
- package/fesm2022/tilde-nlp-ngx-common.mjs +49 -20
- package/fesm2022/tilde-nlp-ngx-common.mjs.map +1 -1
- package/lib/multi-functional-table/multi-functional-table.component.d.ts +2 -1
- package/lib/terminology/components/terminology-panel/terminology-collection-list/terminology-collection-card/terminology-collection-card.component.d.ts +2 -0
- package/lib/terminology/services/terminology/terminology.service.d.ts +3 -1
- package/lib/terminology/terminology.component.d.ts +1 -1
- package/package.json +1 -1
|
@@ -33,8 +33,16 @@ export class TerminologyCollectionListComponent {
|
|
|
33
33
|
}
|
|
34
34
|
ngOnInit() {
|
|
35
35
|
this.terminologyService.getCollections().pipe(takeUntil(this.destroy)).subscribe((data) => {
|
|
36
|
+
const collections = [];
|
|
36
37
|
if (data[this.system.systemId]?.collections) {
|
|
37
|
-
|
|
38
|
+
const srcKey = `"id":"${this.system.sourceLanguageCode}"`;
|
|
39
|
+
const trgKey = `"id":"${this.system.targetLanguageCode}"`;
|
|
40
|
+
data[this.system.systemId]?.collections.forEach((collection) => {
|
|
41
|
+
if (JSON.stringify(collection.termCollection?.languages ?? []).includes(srcKey && trgKey)) {
|
|
42
|
+
collections.push(collection);
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
this.collections = collections.sort(this.collectionsSortFunction);
|
|
38
46
|
}
|
|
39
47
|
});
|
|
40
48
|
}
|
|
@@ -59,4 +67,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
59
67
|
}], glossarySelectEvent: [{
|
|
60
68
|
type: Output
|
|
61
69
|
}] } });
|
|
62
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVybWlub2xvZ3ktY29sbGVjdGlvbi1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1jb21tb24vc3JjL2xpYi90ZXJtaW5vbG9neS9jb21wb25lbnRzL3Rlcm1pbm9sb2d5LXBhbmVsL3Rlcm1pbm9sb2d5LWNvbGxlY3Rpb24tbGlzdC90ZXJtaW5vbG9neS1jb2xsZWN0aW9uLWxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWNvbW1vbi9zcmMvbGliL3Rlcm1pbm9sb2d5L2NvbXBvbmVudHMvdGVybWlub2xvZ3ktcGFuZWwvdGVybWlub2xvZ3ktY29sbGVjdGlvbi1saXN0L3Rlcm1pbm9sb2d5LWNvbGxlY3Rpb24tbGlzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRy9FLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7Ozs7Ozs7O0FBUTFDLE1BQU0sT0FBTyxrQ0FBa0M7SUFZN0MsSUFBSSxpQkFBaUI7UUFDbkIsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQVksQ0FBQztJQUNwRixDQUFDO0lBRUQsSUFBSSxrQkFBa0I7UUFDcEIsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsa0JBQTZCLENBQUM7SUFDL0QsQ0FBQztJQUlELFlBQ21CLGtCQUFzQyxFQUN0QyxNQUFnQztRQURoQyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBQ3RDLFdBQU0sR0FBTixNQUFNLENBQTBCO1FBckJ6Qyx3QkFBbUIsR0FBRyxJQUFJLFlBQVksRUFBNkIsQ0FBQztRQUk5RSxnQkFBVyxHQUF5QixFQUFFLENBQUM7UUFFOUIsb0JBQWUsR0FBRyxtQkFBbUIsQ0FBQztRQUN0QywyQkFBc0IsR0FBRyw0QkFBNEIsQ0FBQztRQVU5QyxZQUFPLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQTBCakMsNEJBQXVCLEdBQUcsQ0FBQyxDQUFxQixFQUFFLENBQXFCLEVBQUUsRUFBRTtZQUNqRixNQUFNLEtBQUssR0FBRyxDQUFDLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUMzQixNQUFNLEtBQUssR0FBRyxDQUFDLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUUzQixPQUFPLE1BQU0sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxLQUFLLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzdFLENBQUMsQ0FBQztRQXpCQSxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLE9BQWlCLENBQUM7SUFDMUQsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsa0JBQWtCLENBQUMsY0FBYyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUN4RixJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFFLFdBQVcsRUFBRTtnQkFDM0MsSUFBSSxDQUFDLFdBQVcsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO2FBQ25HO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsY0FBYyxDQUFDLFVBQXFDO1FBQ2xELElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsVUFBZ0MsQ0FBQyxDQUFDO0lBQ2xFLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDeEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUMxQixDQUFDOytHQTVDVSxrQ0FBa0M7bUdBQWxDLGtDQUFrQyx3TUNYL0MsbXRFQW9EQTs7NEZEekNhLGtDQUFrQztrQkFMOUMsU0FBUzsrQkFDRSxpQ0FBaUM7Z0pBS2hCLE1BQU07c0JBQWhDLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUNoQixrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBQ0ksbUJBQW1CO3NCQUE1QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IFRlcm1pbm9sb2d5U2VydmljZSB9IGZyb20gXCIuLi8uLi8uLi9zZXJ2aWNlc1wiO1xyXG5pbXBvcnQgeyBDb21iaW5lZENvbGxlY3Rpb24gfSBmcm9tIFwiLi4vLi4vLi4vbW9kZWxzXCI7XHJcbmltcG9ydCB7IFN1YmplY3QsIHRha2VVbnRpbCB9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7IFRlcm1pbm9sb2d5Q29uZmlnU2VydmljZSB9IGZyb20gXCIuLi8uLi8uLi9jb25maWcvc2VydmljZXNcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcImxpYi10ZXJtaW5vbG9neS1jb2xsZWN0aW9uLWxpc3RcIixcclxuICB0ZW1wbGF0ZVVybDogXCIuL3Rlcm1pbm9sb2d5LWNvbGxlY3Rpb24tbGlzdC5jb21wb25lbnQuaHRtbFwiLFxyXG4gIHN0eWxlVXJsczogW1wiLi90ZXJtaW5vbG9neS1jb2xsZWN0aW9uLWxpc3QuY29tcG9uZW50LnNjc3NcIl0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUZXJtaW5vbG9neUNvbGxlY3Rpb25MaXN0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSBzeXN0ZW0hOiB7IHN5c3RlbUlkOiBzdHJpbmc7IHNvdXJjZUxhbmd1YWdlQ29kZTogc3RyaW5nOyB0YXJnZXRMYW5ndWFnZUNvZGU6IHN0cmluZyB9O1xyXG4gIEBJbnB1dCgpIHNlbGVjdGVkQ29sbGVjdGlvbiE6IENvbWJpbmVkQ29sbGVjdGlvbiB8IG51bGw7XHJcbiAgQE91dHB1dCgpIGdsb3NzYXJ5U2VsZWN0RXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPENvbWJpbmVkQ29sbGVjdGlvbiB8IG51bGw+KCk7XHJcblxyXG4gIGFwcE5hbWUhOiBzdHJpbmc7XHJcblxyXG4gIGNvbGxlY3Rpb25zOiBDb21iaW5lZENvbGxlY3Rpb25bXSA9IFtdO1xyXG5cclxuICByZWFkb25seSBsb2NhbGl6YXRpb25LZXkgPSBcIlRFUk1fQ09MTEVDVElPTlMuXCI7XHJcbiAgcmVhZG9ubHkgdG9vbHRpcExvY2FsaXphdGlvbktleSA9IFwiVEVSTV9DT0xMRUNUSU9OUy5UT09MVElQUy5cIjtcclxuXHJcbiAgZ2V0IGhhc0FueUNvbGxlY3Rpb25zKCkge1xyXG4gICAgcmV0dXJuIHRoaXMudGVybWlub2xvZ3lTZXJ2aWNlLmhhc0FueUNvbGxlY3Rpb25zKHRoaXMuc3lzdGVtLnN5c3RlbUlkKSBhcyBib29sZWFuO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGhhc0VkaXRQZXJtaXNzaW9ucygpIHtcclxuICAgIHJldHVybiB0aGlzLnRlcm1pbm9sb2d5U2VydmljZS5oYXNFZGl0UGVybWlzc2lvbnMgYXMgYm9vbGVhbjtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveSA9IG5ldyBTdWJqZWN0KCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSB0ZXJtaW5vbG9neVNlcnZpY2U6IFRlcm1pbm9sb2d5U2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgY29uZmlnOiBUZXJtaW5vbG9neUNvbmZpZ1NlcnZpY2VcclxuICApIHtcclxuICAgIHRoaXMuYXBwTmFtZSA9IHRoaXMuY29uZmlnLnRlcm1Db25maWcuYXBwTmFtZSBhcyBzdHJpbmc7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMudGVybWlub2xvZ3lTZXJ2aWNlLmdldENvbGxlY3Rpb25zKCkucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95KSkuc3Vic2NyaWJlKChkYXRhKSA9PiB7XHJcbiAgICAgIGlmIChkYXRhW3RoaXMuc3lzdGVtLnN5c3RlbUlkXT8uY29sbGVjdGlvbnMpIHtcclxuICAgICAgICB0aGlzLmNvbGxlY3Rpb25zID0gWy4uLmRhdGFbdGhpcy5zeXN0ZW0uc3lzdGVtSWRdLmNvbGxlY3Rpb25zXS5zb3J0KHRoaXMuY29sbGVjdGlvbnNTb3J0RnVuY3Rpb24pO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcbiAgXHJcbiAgc2VsZWN0R2xvc3NhcnkoY29sbGVjdGlvbjogQ29tYmluZWRDb2xsZWN0aW9uIHwgbnVsbCk6IHZvaWQge1xyXG4gICAgdGhpcy5nbG9zc2FyeVNlbGVjdEV2ZW50LmVtaXQoY29sbGVjdGlvbiBhcyBDb21iaW5lZENvbGxlY3Rpb24pO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLmRlc3Ryb3kubmV4dChudWxsKTtcclxuICAgIHRoaXMuZGVzdHJveS5jb21wbGV0ZSgpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjb2xsZWN0aW9uc1NvcnRGdW5jdGlvbiA9IChhOiBDb21iaW5lZENvbGxlY3Rpb24sIGI6IENvbWJpbmVkQ29sbGVjdGlvbikgPT4ge1xyXG4gICAgY29uc3QgYU5hbWUgPSBhLm5hbWUgPz8gXCJcIjtcclxuICAgIGNvbnN0IGJOYW1lID0gYi5uYW1lID8/IFwiXCI7XHJcblxyXG4gICAgcmV0dXJuIE51bWJlcihhLmRlZmF1bHQpIC0gTnVtYmVyKGIuZGVmYXVsdCkgfHwgYU5hbWUubG9jYWxlQ29tcGFyZShiTmFtZSk7XHJcbiAgfTtcclxufVxyXG4iLCI8aGVhZGVyIGNsYXNzPVwidGxkLWNvbGxlY3Rpb24tbGlzdC1oZWFkZXJcIj5cclxuICA8aDEgY2xhc3M9XCJ0ZXh0LWwtc2VtaS1ib2xkXCI+XHJcbiAgICA8c3Bhbj57eyBsb2NhbGl6YXRpb25LZXkgKyBcIlRJVExFXCIgfCB0cmFuc2xhdGUgfX08L3NwYW4+XHJcbiAgPC9oMT5cclxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiaGFzQW55Q29sbGVjdGlvbnNcIj5cclxuICAgIDxwIGNsYXNzPVwidGVybS13aW5kb3ctZGVzY3JpcHRpb24gdGV4dC1zXCI+XHJcbiAgICAgIDxzcGFuPnt7IGxvY2FsaXphdGlvbktleSArIFwiREVTQ1JJUFRJT05cIiB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj5cclxuICAgIDwvcD5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWhhc0FueUNvbGxlY3Rpb25zXCI+XHJcbiAgICA8cCBjbGFzcz1cInRlcm0td2luZG93LWRlc2NyaXB0aW9uIHRleHQtc1wiPlxyXG4gICAgICB7eyBsb2NhbGl6YXRpb25LZXkgKyBcIkRFU0NSSVBUSU9OX0VNUFRZXCIgfCB0cmFuc2xhdGUgOiBcclxuICAgICAgICB7XHJcbiAgICAgICAgICBzcmNMYW5nOiBzeXN0ZW0uc291cmNlTGFuZ3VhZ2VDb2RlIHwgbGFuZ3VhZ2VUcmFuc2xhdGUsXHJcbiAgICAgICAgICB0cmdMYW5nOiBzeXN0ZW0udGFyZ2V0TGFuZ3VhZ2VDb2RlIHwgbGFuZ3VhZ2VUcmFuc2xhdGVcclxuICAgICAgICB9XHJcbiAgICAgIH19XHJcbiAgICA8L3A+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cImFkdmljZVwiPlxyXG4gICAgICA8cCBjbGFzcz1cInRlcm0td2luZG93LWRlc2NyaXB0aW9uIHRleHQtc1wiPlxyXG4gICAgICAgIHt7IGxvY2FsaXphdGlvbktleSArICdERVNDUklQVElPTl9FTVBUWV9BRFZJQ0UnIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgIDwvcD5cclxuICAgIDwvZGl2PlxyXG4gIDwvbmctY29udGFpbmVyPlxyXG48L2hlYWRlcj5cclxuPGRpdiAqbmdJZj1cImhhc0FueUNvbGxlY3Rpb25zXCIgY2xhc3M9XCJ0bGQtY29sbGVjdGlvbi1saXN0LWJvZHlcIj5cclxuICA8bWF0LXJhZGlvLWdyb3VwIFthdHRyLmFyaWEtbGFiZWxdPVwibG9jYWxpemF0aW9uS2V5ICsgJ0FSSUFfTEFCRUxTLlJBRElPX0dST1VQJyB8IHRyYW5zbGF0ZVwiPlxyXG4gICAgPGRpdiBmeExheW91dD1cInJvd1wiIGZ4TGF5b3V0QWxpZ249XCJzdGFydCBjZW50ZXJcIiBjbGFzcz1cIm5vbmUtb3B0aW9uXCI+XHJcbiAgICAgIDxtYXQtcmFkaW8tYnV0dG9uIFtjbGFzcy5tYXQtbWRjLXJhZGlvLWNoZWNrZWRdPVwiIXNlbGVjdGVkQ29sbGVjdGlvblwiIChjbGljayk9XCJzZWxlY3RHbG9zc2FyeShudWxsKVwiPlxyXG4gICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1tLXNlbWktYm9sZFwiPlxyXG4gICAgICAgICAge3sgbG9jYWxpemF0aW9uS2V5ICsgXCJTRUxFQ1RFRF9OT05FXCIgfCB0cmFuc2xhdGUgfX1cclxuICAgICAgICA8L3NwYW4+XHJcbiAgICAgIDwvbWF0LXJhZGlvLWJ1dHRvbj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cImNvbGxlY3Rpb25cIiAqbmdGb3I9XCJsZXQgY29sbGVjdGlvbiBvZiBjb2xsZWN0aW9uc1wiPlxyXG4gICAgICA8bGliLXRlcm1pbm9sb2d5LWNvbGxlY3Rpb24tY2FyZFxyXG4gICAgICAgICpuZ0lmPVwiY29sbGVjdGlvbi5zdGF0dXNcIlxyXG4gICAgICAgIGNsYXNzPVwiY29sbGVjdGlvbi1jYXJkXCJcclxuICAgICAgICBbY29sbGVjdGlvbl09XCJjb2xsZWN0aW9uXCJcclxuICAgICAgICBbZW5naW5lSWRdPVwic3lzdGVtLnN5c3RlbUlkXCJcclxuICAgICAgICBbc2VsZWN0ZWRdPVwic2VsZWN0ZWRDb2xsZWN0aW9uXCJcclxuICAgICAgICBbbG9jYWxpemF0aW9uS2V5XT1cImxvY2FsaXphdGlvbktleVwiXHJcbiAgICAgICAgW3Rvb2x0aXBMb2NhbGl6YXRpb25LZXldPVwidG9vbHRpcExvY2FsaXphdGlvbktleVwiXHJcbiAgICAgICAgW2hhc0VkaXRQZXJtaXNzaW9uc109XCJoYXNFZGl0UGVybWlzc2lvbnNcIlxyXG4gICAgICAgIFtzb3VyY2VMYW5ndWFnZUNvZGVdPVwic3lzdGVtLnNvdXJjZUxhbmd1YWdlQ29kZVwiXHJcbiAgICAgICAgW3RhcmdldExhbmd1YWdlQ29kZV09XCJzeXN0ZW0udGFyZ2V0TGFuZ3VhZ2VDb2RlXCJcclxuICAgICAgICAoZ2xvc3NhcnlTZWxlY3RFdmVudCk9XCJzZWxlY3RHbG9zc2FyeSgkZXZlbnQpXCJcclxuICAgICAgPjwvbGliLXRlcm1pbm9sb2d5LWNvbGxlY3Rpb24tY2FyZD5cclxuICAgIDwvZGl2PlxyXG4gIDwvbWF0LXJhZGlvLWdyb3VwPlxyXG48L2Rpdj5cclxuIl19
|
|
70
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVybWlub2xvZ3ktY29sbGVjdGlvbi1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1jb21tb24vc3JjL2xpYi90ZXJtaW5vbG9neS9jb21wb25lbnRzL3Rlcm1pbm9sb2d5LXBhbmVsL3Rlcm1pbm9sb2d5LWNvbGxlY3Rpb24tbGlzdC90ZXJtaW5vbG9neS1jb2xsZWN0aW9uLWxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWNvbW1vbi9zcmMvbGliL3Rlcm1pbm9sb2d5L2NvbXBvbmVudHMvdGVybWlub2xvZ3ktcGFuZWwvdGVybWlub2xvZ3ktY29sbGVjdGlvbi1saXN0L3Rlcm1pbm9sb2d5LWNvbGxlY3Rpb24tbGlzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRy9FLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7Ozs7Ozs7O0FBUTFDLE1BQU0sT0FBTyxrQ0FBa0M7SUFZN0MsSUFBSSxpQkFBaUI7UUFDbkIsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQVksQ0FBQztJQUNwRixDQUFDO0lBRUQsSUFBSSxrQkFBa0I7UUFDcEIsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsa0JBQTZCLENBQUM7SUFDL0QsQ0FBQztJQUlELFlBQ21CLGtCQUFzQyxFQUN0QyxNQUFnQztRQURoQyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBQ3RDLFdBQU0sR0FBTixNQUFNLENBQTBCO1FBckJ6Qyx3QkFBbUIsR0FBRyxJQUFJLFlBQVksRUFBNkIsQ0FBQztRQUk5RSxnQkFBVyxHQUF5QixFQUFFLENBQUM7UUFFOUIsb0JBQWUsR0FBRyxtQkFBbUIsQ0FBQztRQUN0QywyQkFBc0IsR0FBRyw0QkFBNEIsQ0FBQztRQVU5QyxZQUFPLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQXFDakMsNEJBQXVCLEdBQUcsQ0FBQyxDQUFxQixFQUFFLENBQXFCLEVBQUUsRUFBRTtZQUNqRixNQUFNLEtBQUssR0FBRyxDQUFDLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUMzQixNQUFNLEtBQUssR0FBRyxDQUFDLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUUzQixPQUFPLE1BQU0sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxLQUFLLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzdFLENBQUMsQ0FBQztRQXBDQSxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLE9BQWlCLENBQUM7SUFDMUQsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsa0JBQWtCLENBQUMsY0FBYyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUN4RixNQUFNLFdBQVcsR0FBeUIsRUFBRSxDQUFDO1lBRTdDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEVBQUUsV0FBVyxFQUFFO2dCQUMzQyxNQUFNLE1BQU0sR0FBRyxTQUFTLElBQUksQ0FBQyxNQUFNLENBQUMsa0JBQWtCLEdBQUcsQ0FBQztnQkFDMUQsTUFBTSxNQUFNLEdBQUcsU0FBUyxJQUFJLENBQUMsTUFBTSxDQUFDLGtCQUFrQixHQUFHLENBQUM7Z0JBRTFELElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFFLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxVQUFVLEVBQUUsRUFBRTtvQkFDN0QsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxjQUFjLEVBQUUsU0FBUyxJQUFJLEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLElBQUksTUFBTSxDQUFDLEVBQUU7d0JBQ3pGLFdBQVcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7cUJBQzlCO2dCQUNILENBQUMsQ0FBQyxDQUFBO2dCQUVGLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsQ0FBQzthQUNuRTtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGNBQWMsQ0FBQyxVQUFxQztRQUNsRCxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLFVBQWdDLENBQUMsQ0FBQztJQUNsRSxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDMUIsQ0FBQzsrR0F2RFUsa0NBQWtDO21HQUFsQyxrQ0FBa0Msd01DWC9DLG10RUFvREE7OzRGRHpDYSxrQ0FBa0M7a0JBTDlDLFNBQVM7K0JBQ0UsaUNBQWlDO2dKQUtoQixNQUFNO3NCQUFoQyxLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtnQkFDaEIsa0JBQWtCO3NCQUExQixLQUFLO2dCQUNJLG1CQUFtQjtzQkFBNUIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBUZXJtaW5vbG9neVNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vLi4vc2VydmljZXNcIjtcclxuaW1wb3J0IHsgQ29tYmluZWRDb2xsZWN0aW9uIH0gZnJvbSBcIi4uLy4uLy4uL21vZGVsc1wiO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCB0YWtlVW50aWwgfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyBUZXJtaW5vbG9neUNvbmZpZ1NlcnZpY2UgfSBmcm9tIFwiLi4vLi4vLi4vY29uZmlnL3NlcnZpY2VzXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJsaWItdGVybWlub2xvZ3ktY29sbGVjdGlvbi1saXN0XCIsXHJcbiAgdGVtcGxhdGVVcmw6IFwiLi90ZXJtaW5vbG9neS1jb2xsZWN0aW9uLWxpc3QuY29tcG9uZW50Lmh0bWxcIixcclxuICBzdHlsZVVybHM6IFtcIi4vdGVybWlub2xvZ3ktY29sbGVjdGlvbi1saXN0LmNvbXBvbmVudC5zY3NzXCJdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVGVybWlub2xvZ3lDb2xsZWN0aW9uTGlzdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSkgc3lzdGVtITogeyBzeXN0ZW1JZDogc3RyaW5nOyBzb3VyY2VMYW5ndWFnZUNvZGU6IHN0cmluZzsgdGFyZ2V0TGFuZ3VhZ2VDb2RlOiBzdHJpbmcgfTtcclxuICBASW5wdXQoKSBzZWxlY3RlZENvbGxlY3Rpb24hOiBDb21iaW5lZENvbGxlY3Rpb24gfCBudWxsO1xyXG4gIEBPdXRwdXQoKSBnbG9zc2FyeVNlbGVjdEV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcjxDb21iaW5lZENvbGxlY3Rpb24gfCBudWxsPigpO1xyXG5cclxuICBhcHBOYW1lITogc3RyaW5nO1xyXG5cclxuICBjb2xsZWN0aW9uczogQ29tYmluZWRDb2xsZWN0aW9uW10gPSBbXTtcclxuXHJcbiAgcmVhZG9ubHkgbG9jYWxpemF0aW9uS2V5ID0gXCJURVJNX0NPTExFQ1RJT05TLlwiO1xyXG4gIHJlYWRvbmx5IHRvb2x0aXBMb2NhbGl6YXRpb25LZXkgPSBcIlRFUk1fQ09MTEVDVElPTlMuVE9PTFRJUFMuXCI7XHJcblxyXG4gIGdldCBoYXNBbnlDb2xsZWN0aW9ucygpIHtcclxuICAgIHJldHVybiB0aGlzLnRlcm1pbm9sb2d5U2VydmljZS5oYXNBbnlDb2xsZWN0aW9ucyh0aGlzLnN5c3RlbS5zeXN0ZW1JZCkgYXMgYm9vbGVhbjtcclxuICB9XHJcblxyXG4gIGdldCBoYXNFZGl0UGVybWlzc2lvbnMoKSB7XHJcbiAgICByZXR1cm4gdGhpcy50ZXJtaW5vbG9neVNlcnZpY2UuaGFzRWRpdFBlcm1pc3Npb25zIGFzIGJvb2xlYW47XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3kgPSBuZXcgU3ViamVjdCgpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgdGVybWlub2xvZ3lTZXJ2aWNlOiBUZXJtaW5vbG9neVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNvbmZpZzogVGVybWlub2xvZ3lDb25maWdTZXJ2aWNlXHJcbiAgKSB7XHJcbiAgICB0aGlzLmFwcE5hbWUgPSB0aGlzLmNvbmZpZy50ZXJtQ29uZmlnLmFwcE5hbWUgYXMgc3RyaW5nO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnRlcm1pbm9sb2d5U2VydmljZS5nZXRDb2xsZWN0aW9ucygpLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSkpLnN1YnNjcmliZSgoZGF0YSkgPT4ge1xyXG4gICAgICBjb25zdCBjb2xsZWN0aW9uczogQ29tYmluZWRDb2xsZWN0aW9uW10gPSBbXTtcclxuXHJcbiAgICAgIGlmIChkYXRhW3RoaXMuc3lzdGVtLnN5c3RlbUlkXT8uY29sbGVjdGlvbnMpIHtcclxuICAgICAgICBjb25zdCBzcmNLZXkgPSBgXCJpZFwiOlwiJHt0aGlzLnN5c3RlbS5zb3VyY2VMYW5ndWFnZUNvZGV9XCJgO1xyXG4gICAgICAgIGNvbnN0IHRyZ0tleSA9IGBcImlkXCI6XCIke3RoaXMuc3lzdGVtLnRhcmdldExhbmd1YWdlQ29kZX1cImA7XHJcblxyXG4gICAgICAgIGRhdGFbdGhpcy5zeXN0ZW0uc3lzdGVtSWRdPy5jb2xsZWN0aW9ucy5mb3JFYWNoKChjb2xsZWN0aW9uKSA9PiB7XHJcbiAgICAgICAgICBpZiAoSlNPTi5zdHJpbmdpZnkoY29sbGVjdGlvbi50ZXJtQ29sbGVjdGlvbj8ubGFuZ3VhZ2VzID8/IFtdKS5pbmNsdWRlcyhzcmNLZXkgJiYgdHJnS2V5KSkge1xyXG4gICAgICAgICAgICBjb2xsZWN0aW9ucy5wdXNoKGNvbGxlY3Rpb24pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pXHJcblxyXG4gICAgICAgIHRoaXMuY29sbGVjdGlvbnMgPSBjb2xsZWN0aW9ucy5zb3J0KHRoaXMuY29sbGVjdGlvbnNTb3J0RnVuY3Rpb24pO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcbiAgXHJcbiAgc2VsZWN0R2xvc3NhcnkoY29sbGVjdGlvbjogQ29tYmluZWRDb2xsZWN0aW9uIHwgbnVsbCk6IHZvaWQge1xyXG4gICAgdGhpcy5nbG9zc2FyeVNlbGVjdEV2ZW50LmVtaXQoY29sbGVjdGlvbiBhcyBDb21iaW5lZENvbGxlY3Rpb24pO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLmRlc3Ryb3kubmV4dChudWxsKTtcclxuICAgIHRoaXMuZGVzdHJveS5jb21wbGV0ZSgpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjb2xsZWN0aW9uc1NvcnRGdW5jdGlvbiA9IChhOiBDb21iaW5lZENvbGxlY3Rpb24sIGI6IENvbWJpbmVkQ29sbGVjdGlvbikgPT4ge1xyXG4gICAgY29uc3QgYU5hbWUgPSBhLm5hbWUgPz8gXCJcIjtcclxuICAgIGNvbnN0IGJOYW1lID0gYi5uYW1lID8/IFwiXCI7XHJcblxyXG4gICAgcmV0dXJuIE51bWJlcihhLmRlZmF1bHQpIC0gTnVtYmVyKGIuZGVmYXVsdCkgfHwgYU5hbWUubG9jYWxlQ29tcGFyZShiTmFtZSk7XHJcbiAgfTtcclxufVxyXG4iLCI8aGVhZGVyIGNsYXNzPVwidGxkLWNvbGxlY3Rpb24tbGlzdC1oZWFkZXJcIj5cclxuICA8aDEgY2xhc3M9XCJ0ZXh0LWwtc2VtaS1ib2xkXCI+XHJcbiAgICA8c3Bhbj57eyBsb2NhbGl6YXRpb25LZXkgKyBcIlRJVExFXCIgfCB0cmFuc2xhdGUgfX08L3NwYW4+XHJcbiAgPC9oMT5cclxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiaGFzQW55Q29sbGVjdGlvbnNcIj5cclxuICAgIDxwIGNsYXNzPVwidGVybS13aW5kb3ctZGVzY3JpcHRpb24gdGV4dC1zXCI+XHJcbiAgICAgIDxzcGFuPnt7IGxvY2FsaXphdGlvbktleSArIFwiREVTQ1JJUFRJT05cIiB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj5cclxuICAgIDwvcD5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWhhc0FueUNvbGxlY3Rpb25zXCI+XHJcbiAgICA8cCBjbGFzcz1cInRlcm0td2luZG93LWRlc2NyaXB0aW9uIHRleHQtc1wiPlxyXG4gICAgICB7eyBsb2NhbGl6YXRpb25LZXkgKyBcIkRFU0NSSVBUSU9OX0VNUFRZXCIgfCB0cmFuc2xhdGUgOiBcclxuICAgICAgICB7XHJcbiAgICAgICAgICBzcmNMYW5nOiBzeXN0ZW0uc291cmNlTGFuZ3VhZ2VDb2RlIHwgbGFuZ3VhZ2VUcmFuc2xhdGUsXHJcbiAgICAgICAgICB0cmdMYW5nOiBzeXN0ZW0udGFyZ2V0TGFuZ3VhZ2VDb2RlIHwgbGFuZ3VhZ2VUcmFuc2xhdGVcclxuICAgICAgICB9XHJcbiAgICAgIH19XHJcbiAgICA8L3A+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cImFkdmljZVwiPlxyXG4gICAgICA8cCBjbGFzcz1cInRlcm0td2luZG93LWRlc2NyaXB0aW9uIHRleHQtc1wiPlxyXG4gICAgICAgIHt7IGxvY2FsaXphdGlvbktleSArICdERVNDUklQVElPTl9FTVBUWV9BRFZJQ0UnIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgIDwvcD5cclxuICAgIDwvZGl2PlxyXG4gIDwvbmctY29udGFpbmVyPlxyXG48L2hlYWRlcj5cclxuPGRpdiAqbmdJZj1cImhhc0FueUNvbGxlY3Rpb25zXCIgY2xhc3M9XCJ0bGQtY29sbGVjdGlvbi1saXN0LWJvZHlcIj5cclxuICA8bWF0LXJhZGlvLWdyb3VwIFthdHRyLmFyaWEtbGFiZWxdPVwibG9jYWxpemF0aW9uS2V5ICsgJ0FSSUFfTEFCRUxTLlJBRElPX0dST1VQJyB8IHRyYW5zbGF0ZVwiPlxyXG4gICAgPGRpdiBmeExheW91dD1cInJvd1wiIGZ4TGF5b3V0QWxpZ249XCJzdGFydCBjZW50ZXJcIiBjbGFzcz1cIm5vbmUtb3B0aW9uXCI+XHJcbiAgICAgIDxtYXQtcmFkaW8tYnV0dG9uIFtjbGFzcy5tYXQtbWRjLXJhZGlvLWNoZWNrZWRdPVwiIXNlbGVjdGVkQ29sbGVjdGlvblwiIChjbGljayk9XCJzZWxlY3RHbG9zc2FyeShudWxsKVwiPlxyXG4gICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1tLXNlbWktYm9sZFwiPlxyXG4gICAgICAgICAge3sgbG9jYWxpemF0aW9uS2V5ICsgXCJTRUxFQ1RFRF9OT05FXCIgfCB0cmFuc2xhdGUgfX1cclxuICAgICAgICA8L3NwYW4+XHJcbiAgICAgIDwvbWF0LXJhZGlvLWJ1dHRvbj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cImNvbGxlY3Rpb25cIiAqbmdGb3I9XCJsZXQgY29sbGVjdGlvbiBvZiBjb2xsZWN0aW9uc1wiPlxyXG4gICAgICA8bGliLXRlcm1pbm9sb2d5LWNvbGxlY3Rpb24tY2FyZFxyXG4gICAgICAgICpuZ0lmPVwiY29sbGVjdGlvbi5zdGF0dXNcIlxyXG4gICAgICAgIGNsYXNzPVwiY29sbGVjdGlvbi1jYXJkXCJcclxuICAgICAgICBbY29sbGVjdGlvbl09XCJjb2xsZWN0aW9uXCJcclxuICAgICAgICBbZW5naW5lSWRdPVwic3lzdGVtLnN5c3RlbUlkXCJcclxuICAgICAgICBbc2VsZWN0ZWRdPVwic2VsZWN0ZWRDb2xsZWN0aW9uXCJcclxuICAgICAgICBbbG9jYWxpemF0aW9uS2V5XT1cImxvY2FsaXphdGlvbktleVwiXHJcbiAgICAgICAgW3Rvb2x0aXBMb2NhbGl6YXRpb25LZXldPVwidG9vbHRpcExvY2FsaXphdGlvbktleVwiXHJcbiAgICAgICAgW2hhc0VkaXRQZXJtaXNzaW9uc109XCJoYXNFZGl0UGVybWlzc2lvbnNcIlxyXG4gICAgICAgIFtzb3VyY2VMYW5ndWFnZUNvZGVdPVwic3lzdGVtLnNvdXJjZUxhbmd1YWdlQ29kZVwiXHJcbiAgICAgICAgW3RhcmdldExhbmd1YWdlQ29kZV09XCJzeXN0ZW0udGFyZ2V0TGFuZ3VhZ2VDb2RlXCJcclxuICAgICAgICAoZ2xvc3NhcnlTZWxlY3RFdmVudCk9XCJzZWxlY3RHbG9zc2FyeSgkZXZlbnQpXCJcclxuICAgICAgPjwvbGliLXRlcm1pbm9sb2d5LWNvbGxlY3Rpb24tY2FyZD5cclxuICAgIDwvZGl2PlxyXG4gIDwvbWF0LXJhZGlvLWdyb3VwPlxyXG48L2Rpdj5cclxuIl19
|
|
@@ -21,10 +21,14 @@ export class TerminologyService {
|
|
|
21
21
|
this.termCollectionApi = termCollectionApi;
|
|
22
22
|
this.mtApi = mtApi;
|
|
23
23
|
this.engines = {};
|
|
24
|
+
this.retranslateSubject = new Subject();
|
|
24
25
|
this.engineSubject = new BehaviorSubject(this.engines);
|
|
25
26
|
this.updatedEnginesSubject = new Subject();
|
|
26
27
|
this.LOCAL_STORAGE_KEY = 'systemLastCollections';
|
|
27
28
|
}
|
|
29
|
+
getRetranslateSignal() {
|
|
30
|
+
return this.retranslateSubject.asObservable();
|
|
31
|
+
}
|
|
28
32
|
resetEngines() {
|
|
29
33
|
this.engines = {};
|
|
30
34
|
}
|
|
@@ -32,7 +36,7 @@ export class TerminologyService {
|
|
|
32
36
|
getEnginesWithSelectedCollectionChange() {
|
|
33
37
|
return this.updatedEnginesSubject.asObservable();
|
|
34
38
|
}
|
|
35
|
-
setEngine(engineId, languages = null, setSelectedFromLocalStorage = false, termCollections = true, mtCollections = true, selectedCollection) {
|
|
39
|
+
setEngine(engineId, languages = null, setSelectedFromLocalStorage = false, termCollections = true, mtCollections = true, selectedCollection, autoRefresh) {
|
|
36
40
|
const engineExists = this.engines[engineId] ?? null;
|
|
37
41
|
if (!engineExists) {
|
|
38
42
|
const newEngine = {
|
|
@@ -46,11 +50,14 @@ export class TerminologyService {
|
|
|
46
50
|
refreshTermCollections: termCollections,
|
|
47
51
|
engineLanguages: languages || [],
|
|
48
52
|
isSoftAutoRefreshOn: false,
|
|
49
|
-
hardAutoRefresh: false,
|
|
53
|
+
hardAutoRefresh: autoRefresh ?? false,
|
|
50
54
|
refreshTimeout: 0
|
|
51
55
|
};
|
|
52
56
|
this.engines[engineId] = newEngine;
|
|
53
57
|
}
|
|
58
|
+
else {
|
|
59
|
+
engineExists.hardAutoRefresh = autoRefresh ?? false;
|
|
60
|
+
}
|
|
54
61
|
return this.loadCollections(engineId, setSelectedFromLocalStorage);
|
|
55
62
|
}
|
|
56
63
|
setSelectedCollection(engineId, collection, storeSelectedInLocalStorage) {
|
|
@@ -58,6 +65,7 @@ export class TerminologyService {
|
|
|
58
65
|
if (storeSelectedInLocalStorage) {
|
|
59
66
|
this.storeSelectedInLocalStorage(engineId);
|
|
60
67
|
}
|
|
68
|
+
this.retranslateSubject.next(true);
|
|
61
69
|
}
|
|
62
70
|
loadCollections(engineId, setSelectedFromLocalStorage) {
|
|
63
71
|
// clear timeout since this refresh replaces scheduled
|
|
@@ -108,9 +116,7 @@ export class TerminologyService {
|
|
|
108
116
|
return this.engineSubject.asObservable();
|
|
109
117
|
}
|
|
110
118
|
startAutoRefresh(engineId, languages = null, setSelectedFromLocalStorage = false, termCollections = true, mtCollections = true) {
|
|
111
|
-
|
|
112
|
-
engine.hardAutoRefresh = true;
|
|
113
|
-
return this.setEngine(engineId, languages ?? this.engines[engineId]?.engineLanguages, setSelectedFromLocalStorage, termCollections, mtCollections);
|
|
119
|
+
return this.setEngine(engineId, languages ?? this.engines[engineId]?.engineLanguages, setSelectedFromLocalStorage, termCollections, mtCollections, undefined, true);
|
|
114
120
|
}
|
|
115
121
|
stopAutoRefresh(engineId) {
|
|
116
122
|
this.clearTimeout(engineId);
|
|
@@ -313,4 +319,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
313
319
|
type: Inject,
|
|
314
320
|
args: [TERMINOLOGY_API_TOKEN]
|
|
315
321
|
}] }]; } });
|
|
316
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVybWlub2xvZ3kuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1jb21tb24vc3JjL2xpYi90ZXJtaW5vbG9neS9zZXJ2aWNlcy90ZXJtaW5vbG9neS90ZXJtaW5vbG9neS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxlQUFlLEVBQWMsT0FBTyxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9FLE9BQU8sRUFBRSxrQkFBa0IsRUFBa0IsTUFBTSxjQUFjLENBQUM7QUFFbEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFFckYsT0FBTyxFQUFFLDBCQUEwQixFQUFFLGtCQUFrQixFQUFFLE1BQU0sYUFBYSxDQUFDOzs7OztBQU83RSxNQUFNLE9BQU8sa0JBQWtCO0lBTzdCLElBQUksZUFBZSxLQUFLLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFBLENBQUMsQ0FBQztJQUM5RCxJQUFJLG9CQUFvQixLQUFLLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsbUJBQW1CLENBQUEsQ0FBQyxDQUFDO0lBSWhGLElBQUksa0JBQWtCO1FBQ3BCLE9BQU8sQ0FDTCxJQUFJLENBQUMsTUFBTSxFQUFFLFVBQVUsQ0FBQyxNQUFNO1lBQzlCLElBQUksQ0FBQyxvQkFBb0I7WUFDekIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMscUJBQXFCLENBQzdDLENBQUM7SUFDSixDQUFDO0lBRUQsWUFDbUIsTUFBZ0MsRUFDaEMsS0FBbUIsRUFDbkIsaUJBQStDLEVBQ2hCLEtBQXFCO1FBSHBELFdBQU0sR0FBTixNQUFNLENBQTBCO1FB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SSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsRUFBRSxRQUFRLEVBQUUsWUFBWSxFQUFFLEVBQUUsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUFFLFFBQVEsRUFBRSxjQUFjLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUNyTCw2QkFBNkI7UUFDN0IsWUFBWSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUM7SUFDbkYsQ0FBQztJQUVPLGdCQUFnQjtRQUN0QixNQUFNLElBQUksR0FBRyxZQUFZLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBVyxDQUFDO1FBQ3BFLElBQUk7WUFDRixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDekI7UUFBQyxNQUFNO1lBQ04sT0FBTyxJQUFJLENBQUM7U0FDYjtJQUNILENBQUM7SUFFTyxzQ0FBc0M7UUFDNUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDaEQsQ0FBQzsrR0FwWlUsa0JBQWtCLGtJQXdCbkIscUJBQXFCO21IQXhCcEIsa0JBQWtCLGNBRmpCLE1BQU07OzRGQUVQLGtCQUFrQjtrQkFIOUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQXlCSSxNQUFNOzJCQUFDLHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIFN1YmplY3QsIGZvcmtKb2luLCBvZiwgdGFwIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IENvbWJpbmVkQ29sbGVjdGlvbiwgSU10VGVybVNlcnZpY2UgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xyXG5pbXBvcnQgeyBUZXJtaW5vbG9neUNvbmZpZ1NlcnZpY2UgfSBmcm9tICcuLi8uLi9jb25maWcvc2VydmljZXMnO1xyXG5pbXBvcnQgeyBURVJNSU5PTE9HWV9BUElfVE9LRU4gfSBmcm9tICcuLi8uLi9pbmplY3Rpb24tdG9rZW5zL3Rlcm1pbm9sb2d5LWFwaS50b2tlbic7XHJcbmltcG9ydCB7IFRlcm1pbm9sb2d5Q29sbGVjdGlvblNlcnZpY2UgfSBmcm9tICcuLi90ZXJtaW5vbG9neS1jb2xsZWN0aW9uL3Rlcm1pbm9sb2d5LWNvbGxlY3Rpb24uc2VydmljZSc7XHJcbmltcG9ydCB7IEVuZ2luZVRlcm1Db2xsZWN0aW9uU291cmNlLCBNdENvbGxlY3Rpb25TdGF0dXMgfSBmcm9tICcuLi8uLi9lbnVtcyc7XHJcbmltcG9ydCB7IEFsZXJ0U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzJztcclxuaW1wb3J0IHsgVGVybWlub2xvZ3lFbmdpbmUgfSBmcm9tICcuLi8uLi9tb2RlbHMvdGVybWlub2xvZ3ktZW5naW5lLm1vZGVsJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUZXJtaW5vbG9neVNlcnZpY2Uge1xyXG4gIHB1YmxpYyBlbmdpbmVzOiB7IFtlbmdpbmVJZDogc3RyaW5nXTogVGVybWlub2xvZ3lFbmdpbmUgfSA9IHt9O1xyXG5cclxuICBwcml2YXRlIGVuZ2luZVN1YmplY3QgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KHRoaXMuZW5naW5lcyk7XHJcblxyXG4gIHByaXZhdGUgdXBkYXRlZEVuZ2luZXNTdWJqZWN0ID0gbmV3IFN1YmplY3Q8e1tlbmdpbmVJZDogc3RyaW5nXTogVGVybWlub2xvZ3lFbmdpbmV9PigpO1xyXG5cclxuICBnZXQgaXNBdXRoZW50aWNhdGVkKCkgeyByZXR1cm4gdGhpcy5jb25maWcudGVybUNvbmZpZy5pc0F1dGggfVxyXG4gIGdldCBjYW5DcmVhdGVDb2xsZWN0aW9ucygpIHsgcmV0dXJuIHRoaXMuY29uZmlnLnRlcm1Db25maWcuY2FuQ3JlYXRlQ29sbGVjdGlvbiB9XHJcblxyXG4gIHByaXZhdGUgcmVhZG9ubHkgTE9DQUxfU1RPUkFHRV9LRVkgPSAnc3lzdGVtTGFzdENvbGxlY3Rpb25zJztcclxuXHJcbiAgZ2V0IGhhc0VkaXRQZXJtaXNzaW9ucygpIHtcclxuICAgIHJldHVybiAoXHJcbiAgICAgIHRoaXMuY29uZmlnPy50ZXJtQ29uZmlnLmlzQXV0aCAmJlxyXG4gICAgICB0aGlzLmNhbkNyZWF0ZUNvbGxlY3Rpb25zICYmXHJcbiAgICAgIHRoaXMuY29uZmlnLnRlcm1Db25maWcuaXNUZXJtUG9ydGFsU3VwcG9ydGVkXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNvbmZpZzogVGVybWlub2xvZ3lDb25maWdTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBhbGVydDogQWxlcnRTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSB0ZXJtQ29sbGVjdGlvbkFwaTogVGVybWlub2xvZ3lDb2xsZWN0aW9uU2VydmljZSxcclxuICAgIEBJbmplY3QoVEVSTUlOT0xPR1lfQVBJX1RPS0VOKSBwcml2YXRlIHJlYWRvbmx5IG10QXBpOiBJTXRUZXJtU2VydmljZVxyXG4gICkge31cclxuXHJcbiAgcmVzZXRFbmdpbmVzKCk6IHZvaWQge1xyXG4gICAgdGhpcy5lbmdpbmVzID0ge307XHJcbiAgfVxyXG5cclxuICBoYXNBbnlDb2xsZWN0aW9ucyhzeXN0ZW1JZDogc3RyaW5nKTogYm9vbGVhbiB7IHJldHVybiB0aGlzLmVuZ2luZXNbc3lzdGVtSWRdPy5jb2xsZWN0aW9ucy5zaXplID4gMCB9XHJcblxyXG4gIGdldEVuZ2luZXNXaXRoU2VsZWN0ZWRDb2xsZWN0aW9uQ2hhbmdlKCk6IE9ic2VydmFibGU8e1tlbmdpbmVJZDogc3RyaW5nXTogVGVybWlub2xvZ3lFbmdpbmV9PiB7XHJcbiAgICByZXR1cm4gdGhpcy51cGRhdGVkRW5naW5lc1N1YmplY3QuYXNPYnNlcnZhYmxlKCk7XHJcbiAgfVxyXG5cclxuICBzZXRFbmdpbmUoXHJcbiAgICBlbmdpbmVJZDogc3RyaW5nLFxyXG4gICAgbGFuZ3VhZ2VzOiBzdHJpbmdbXSB8IG51bGwgPSBudWxsLFxyXG4gICAgc2V0U2VsZWN0ZWRGcm9tTG9jYWxTdG9yYWdlID0gZmFsc2UsXHJcbiAgICB0ZXJtQ29sbGVjdGlvbnMgPSB0cnVlLFxyXG4gICAgbXRDb2xsZWN0aW9ucyA9IHRydWUsXHJcbiAgICBzZWxlY3RlZENvbGxlY3Rpb24/OiBDb21iaW5lZENvbGxlY3Rpb25cclxuICApIHtcclxuICAgIGNvbnN0IGVuZ2luZUV4aXN0cyA9IHRoaXMuZW5naW5lc1tlbmdpbmVJZF0gPz8gbnVsbDtcclxuXHJcbiAgICBpZiAoIWVuZ2luZUV4aXN0cykge1xyXG4gICAgICBjb25zdCBuZXdFbmdpbmU6IFRlcm1pbm9sb2d5RW5naW5lID0ge1xyXG4gICAgICAgIHNlbGVjdGVkOiBzZWxlY3RlZENvbGxlY3Rpb24gfHwgbnVsbCxcclxuICAgICAgICBpc0ltcG9ydGluZzogZmFsc2UsXHJcbiAgICAgICAgaXNBbnlJbXBvcnRpbmc6IGZhbHNlLFxyXG4gICAgICAgIGhhc0FueUNvbGxlY3Rpb25zOiBmYWxzZSxcclxuICAgICAgICBpc1JlZnJlc2hpbmdDb2xsZWN0aW9uczogZmFsc2UsXHJcbiAgICAgICAgY29sbGVjdGlvbnM6IG5ldyBTZXQ8Q29tYmluZWRDb2xsZWN0aW9uPixcclxuICAgICAgICByZWZyZXNoTXRDb2xsZWN0aW9uczogbXRDb2xsZWN0aW9ucyxcclxuICAgICAgICByZWZyZXNoVGVybUNvbGxlY3Rpb25zOiB0ZXJtQ29sbGVjdGlvbnMsXHJcbiAgICAgICAgZW5naW5lTGFuZ3VhZ2VzOiBsYW5ndWFnZXMgfHwgW10sXHJcbiAgICAgICAgaXNTb2Z0QXV0b1JlZnJlc2hPbjogZmFsc2UsXHJcbiAgICAgICAgaGFyZEF1dG9SZWZyZXNoOiBmYWxzZSxcclxuICAgICAgICByZWZyZXNoVGltZW91dDogMFxyXG4gICAgICB9O1xyXG5cclxuICAgICAgdGhpcy5lbmdpbmVzW2VuZ2luZUlkXSA9IG5ld0VuZ2luZTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gdGhpcy5sb2FkQ29sbGVjdGlvbnMoZW5naW5lSWQsIHNldFNlbGVjdGVkRnJvbUxvY2FsU3RvcmFnZSk7XHJcbiAgfVxyXG5cclxuICBzZXRTZWxlY3RlZENvbGxlY3Rpb24oZW5naW5lSWQ6IHN0cmluZywgY29sbGVjdGlvbjogQ29tYmluZWRDb2xsZWN0aW9uIHwgbnVsbCwgc3RvcmVTZWxlY3RlZEluTG9jYWxTdG9yYWdlOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICB0aGlzLmVuZ2luZXNbZW5naW5lSWRdLnNlbGVjdGVkID0gY29sbGVjdGlvbjtcclxuXHJcbiAgICBpZiAoc3RvcmVTZWxlY3RlZEluTG9jYWxTdG9yYWdlKSB7XHJcbiAgICAgIHRoaXMuc3RvcmVTZWxlY3RlZEluTG9jYWxTdG9yYWdlKGVuZ2luZUlkKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGxvYWRDb2xsZWN0aW9ucyhlbmdpbmVJZDogc3RyaW5nLCBzZXRTZWxlY3RlZEZyb21Mb2NhbFN0b3JhZ2U/OiBib29sZWFuKTogT2JzZXJ2YWJsZTx7W2VuZ2luZUlkOiBzdHJpbmddOiBUZXJtaW5vbG9neUVuZ2luZTt9PiB7XHJcbiAgICAgIC8vIGNsZWFyIHRpbWVvdXQgc2luY2UgdGhpcyByZWZyZXNoIHJlcGxhY2VzIHNjaGVkdWxlZFxyXG4gICAgICB0aGlzLmNsZWFyVGltZW91dChlbmdpbmVJZCk7XHJcblxyXG4gICAgICB0aGlzLmVuZ2luZXNbZW5naW5lSWRdID0gey4uLnRoaXMuZW5naW5lc1tlbmdpbmVJZF0sIGlzUmVmcmVzaGluZ0NvbGxlY3Rpb25zOiB0cnVlfVxyXG4gIFxyXG4gICAgICBsZXQgdGVybVJlc3BvbnNlOiBDb21iaW5lZENvbGxlY3Rpb25bXTtcclxuICAgICAgbGV0IG10QXBpUmVzcG9uc2U6IENvbWJpbmVkQ29sbGVjdGlvbltdO1xyXG4gIFxyXG4gICAgICBjb25zdCBvYnNlcnZhYmxlczogT2JzZXJ2YWJsZTxDb21iaW5lZENvbGxlY3Rpb25bXT5bXSA9IFtdO1xyXG4gIFxyXG4gICAgICBpZiAodGhpcy5lbmdpbmVzW2VuZ2luZUlkXS5yZWZyZXNoVGVybUNvbGxlY3Rpb25zKSB7XHJcbiAgICAgICAgb2JzZXJ2YWJsZXMucHVzaChcclxuICAgICAgICAgIHRoaXMudGVybUNvbGxlY3Rpb25BcGlcclxuICAgICAgICAgICAgLmdldENvbGxlY3Rpb25MaXN0KClcclxuICAgICAgICAgICAgLnBpcGUodGFwKChyZXNwb25zZSkgPT4gKHRlcm1SZXNwb25zZSA9IHJlc3BvbnNlKSkpXHJcbiAgICAgICAgKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5lbmdpbmVzW2VuZ2luZUlkXS5yZWZyZXNoTXRDb2xsZWN0aW9ucykge1xyXG4gICAgICAgIG9ic2VydmFibGVzLnB1c2goXHJcbiAgICAgICAgICB0aGlzLm10QXBpXHJcbiAgICAgICAgICAgIC5nZXRMaXN0KGVuZ2luZUlkKVxyXG4gICAgICAgICAgICAucGlwZSh0YXAoKHJlc3BvbnNlKSA9PiAobXRBcGlSZXNwb25zZSA9IHJlc3BvbnNlKSkpXHJcbiAgICAgICAgKTtcclxuICAgICAgfVxyXG4gICAgICBmb3JrSm9pbihvYnNlcnZhYmxlcykuc3Vic2NyaWJlKHtcclxuICAgICAgICAvLyBkbyBub3QgbmVlZCByZXNwb25zZSBiZWNhdWUgcmVzcG9uc2VzIGFyZSBzYXZlZCBpbiBwaXBlIG1ldGhvZHNcclxuICAgICAgICBuZXh0OiAoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmVuZ2luZXNbZW5naW5lSWRdLmlzQW55SW1wb3J0aW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAvLyBub3RlIHRoYXQgdGVybVJlc3BvbnNlIGFuZCBtdGFwaXJlc3BvbnNlIGdldHMgY2hhbmdlZCBkdXJpbmcgcmVtb3ZlIG1ldGhvZFxyXG4gICAgICAgICAgdGhpcy5yZW1vdmVEZWxldGVkKHRlcm1SZXNwb25zZSwgbXRBcGlSZXNwb25zZSwgZW5naW5lSWQpO1xyXG4gIFxyXG4gICAgICAgICAgY29uc3Qgam9pbmVkID0gW107XHJcbiAgICAgICAgICBpZiAobXRBcGlSZXNwb25zZSkge1xyXG4gICAgICAgICAgICBqb2luZWQucHVzaCguLi5tdEFwaVJlc3BvbnNlKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGlmICh0ZXJtUmVzcG9uc2UpIHtcclxuICAgICAgICAgICAgam9pbmVkLnB1c2goLi4udGVybVJlc3BvbnNlKTtcclxuICAgICAgICAgIH1cclxuICBcclxuICAgICAgICAgIHRoaXMuYWRkQ29sbGVjdGlvbnMoam9pbmVkLCBlbmdpbmVJZCk7XHJcbiAgICAgICAgICBpZiAoc2V0U2VsZWN0ZWRGcm9tTG9jYWxTdG9yYWdlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuc2V0U2VsZWN0ZWRGcm9tTG9jYWxTdG9yYWdlKGVuZ2luZUlkKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHRoaXMuZW5naW5lc1tlbmdpbmVJZF0uaXNSZWZyZXNoaW5nQ29sbGVjdGlvbnMgPSBmYWxzZTtcclxuICAgICAgICAgIHRoaXMuc2NoZWR1bGVSZWZyZXNoKGVuZ2luZUlkLCBudWxsKTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIGVycm9yOiAoZXJyb3IpID0+IHtcclxuICAgICAgICAgIHRoaXMuZW5naW5lc1tlbmdpbmVJZF0uaXNSZWZyZXNoaW5nQ29sbGVjdGlvbnMgPSBmYWxzZTtcclxuICAgICAgICAgIC8vIGl0IGlzIGVub3VnaCB0byBzaG93IGVycm9yIG9ubHkgaW4gY29uc29sZS4gTm8gc3BlY2lhbCB0aGluZyBpcyBuZWNlc3NhcnkuXHJcbiAgICAgICAgICBjb25zb2xlLmVycm9yKGVycm9yKTtcclxuICAgICAgICB9LFxyXG4gICAgICB9KTtcclxuXHJcbiAgICAgIHJldHVybiB0aGlzLmVuZ2luZVN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XHJcbiAgfVxyXG5cclxuICBnZXRDb2xsZWN0aW9ucygpOiBPYnNlcnZhYmxlPHsgW2VuZ2luZUlkOiBzdHJpbmddOiBUZXJtaW5vbG9neUVuZ2luZSB9PiB7XHJcbiAgICByZXR1cm4gdGhpcy5lbmdpbmVTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpO1xyXG4gIH1cclxuXHJcbiAgc3RhcnRBdXRvUmVmcmVzaChlbmdpbmVJZDogc3RyaW5nLCBsYW5ndWFnZXM6IHN0cmluZ1tdIHwgbnVsbCA9IG51bGwsIHNldFNlbGVjdGVkRnJvbUxvY2FsU3RvcmFnZSA9IGZhbHNlLCB0ZXJtQ29sbGVjdGlvbnMgPSB0cnVlLCBtdENvbGxlY3Rpb25zID0gdHJ1ZSkge1xyXG4gICAgY29uc3QgZW5naW5lID0gdGhpcy5lbmdpbmVzW2VuZ2luZUlkXSA/PyB7fTtcclxuICAgIGVuZ2luZS5oYXJkQXV0b1JlZnJlc2ggPSB0cnVlO1xyXG5cclxuICAgIHJldHVybiB0aGlzLnNldEVuZ2luZShlbmdpbmVJZCwgbGFuZ3VhZ2VzID8/IHRoaXMuZW5naW5lc1tlbmdpbmVJZF0/LmVuZ2luZUxhbmd1YWdlcywgc2V0U2VsZWN0ZWRGcm9tTG9jYWxTdG9yYWdlLCB0ZXJtQ29sbGVjdGlvbnMsIG10Q29sbGVjdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgc3RvcEF1dG9SZWZyZXNoKGVuZ2luZUlkOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuY2xlYXJUaW1lb3V0KGVuZ2luZUlkKTtcclxuXHJcbiAgICBpZiAodGhpcy5lbmdpbmVzW2VuZ2luZUlkXSkge1xyXG4gICAgICB0aGlzLmVuZ2luZXNbZW5naW5lSWRdLmlzU29mdEF1dG9SZWZyZXNoT24gPSBmYWxzZTtcclxuICAgICAgdGhpcy5lbmdpbmVzW2VuZ2luZUlkXS5oYXJkQXV0b1JlZnJlc2ggPSBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNyZWF0ZShcclxuICAgIHNvdXJjZUxhbmd1YWdlOiBzdHJpbmcsXHJcbiAgICB0YXJnZXRMYW5ndWFnZTogc3RyaW5nLFxyXG4gICAgY29sbGVjdGlvbk5hbWU6IHN0cmluZyxcclxuICAgIGVuZ2luZUlkOiBzdHJpbmcsXHJcbiAgICByZWRpcmVjdFRvRWRpdCA9IHRydWVcclxuICApIHtcclxuICAgIHJldHVybiB0aGlzLnRlcm1Db2xsZWN0aW9uQXBpXHJcbiAgICAgIC5jcmVhdGVDb2xsZWN0aW9uKFtzb3VyY2VMYW5ndWFnZSwgdGFyZ2V0TGFuZ3VhZ2VdLCBjb2xsZWN0aW9uTmFtZSlcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgdGFwKChjb2xsZWN0aW9uKSA9PiB7XHJcbiAgICAgICAgICBpZiAocmVkaXJlY3RUb0VkaXQpIHtcclxuICAgICAgICAgICAgd2luZG93Lm9wZW4oXHJcbiAgICAgICAgICAgICAgdGhpcy50ZXJtQ29sbGVjdGlvbkFwaS5nZXRFZGl0TGluayhcclxuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb24udGVybUNvbGxlY3Rpb24/LmlkID8/ICcnLFxyXG4gICAgICAgICAgICAgICAgc291cmNlTGFuZ3VhZ2UsXHJcbiAgICAgICAgICAgICAgICB0YXJnZXRMYW5ndWFnZVxyXG4gICAgICAgICAgICAgICksXHJcbiAgICAgICAgICAgICAgJ19ibGFuaydcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICB0aGlzLmVuZ2luZXNbZW5naW5lSWRdPy5jb2xsZWN0aW9ucz8uYWRkKGNvbGxlY3Rpb24pO1xyXG5cclxuICAgICAgICAgIHRoaXMubG9hZENvbGxlY3Rpb25zKGVuZ2luZUlkKTtcclxuICAgICAgICB9KVxyXG4gICAgICApO1xyXG4gIH1cclxuXHJcbiAgc2VsZWN0ZWRJZEZvclRyYW5zbGF0aW9uKGVuZ2luZUlkOiBzdHJpbmcpOiBzdHJpbmcgfCBudWxsIHtcclxuICAgIGNvbnN0IHNlbGVjdGVkID0gdGhpcy5lbmdpbmVzW2VuZ2luZUlkXT8uc2VsZWN0ZWQ7XHJcbiAgICBpZiAoXHJcbiAgICAgIHNlbGVjdGVkPy5tdENvbGxlY3Rpb24gJiZcclxuICAgICAgKHNlbGVjdGVkLm10Q29sbGVjdGlvbi5sYXN0VXBkYXRlZCB8fFxyXG4gICAgICAgIHNlbGVjdGVkLm10Q29sbGVjdGlvbi5zdGF0dXMgPT09IE10Q29sbGVjdGlvblN0YXR1cy5SRUFEWSlcclxuICAgICkge1xyXG4gICAgICByZXR1cm4gc2VsZWN0ZWQubXRDb2xsZWN0aW9uLmlkO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG5cclxuICB1cGRhdGVJZk5lY2Vzc2FyeShcclxuICAgIGNvbGxlY3Rpb246IENvbWJpbmVkQ29sbGVjdGlvbixcclxuICAgIGVuZ2luZUlkOiBzdHJpbmcsXHJcbiAgICBpc0VkaXRlZCA9IGZhbHNlXHJcbiAgKTogT2JzZXJ2YWJsZTxDb21iaW5lZENvbGxlY3Rpb24+IHtcclxuICAgIC8vIGNvbGxlY3Rpb24gaXMgbm90IGltcG9ydGVkIGFuZCBzaG91bGQgYmUgYXR0YWNoZWQgdG8gZW5naW5lXHJcbiAgICBpZiAoY29sbGVjdGlvbi5pc0VkaXRlZCgpIHx8IGlzRWRpdGVkKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLm10QXBpLmFkZChlbmdpbmVJZCwgY29sbGVjdGlvbikucGlwZShcclxuICAgICAgICB0YXAoKHVwZGF0ZWRDb2xsZWN0aW9uKSA9PiB7XHJcbiAgICAgICAgICBjb2xsZWN0aW9uLnVwZGF0ZSh1cGRhdGVkQ29sbGVjdGlvbik7XHJcbiAgICAgICAgfSlcclxuICAgICAgKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiBvZihjb2xsZWN0aW9uKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGhhbmRsZUFkZFRvRW5naW5lRXJyb3IoZXJyb3I6IGFueSwgZW5naW5lSWQ6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgdGhpcy5hbGVydC51bmhhbmRlbGVkRXJyb3IoZXJyb3IpO1xyXG4gICAgdGhpcy5lbmdpbmVzW2VuZ2luZUlkXS5zZWxlY3RlZCA9IG51bGw7XHJcbiAgfVxyXG5cclxuICBzeW5jKFxyXG4gICAgY29sbGVjdGlvbjogQ29tYmluZWRDb2xsZWN0aW9uLFxyXG4gICAgZW5naW5lSWQ6IHN0cmluZ1xyXG4gICk6IE9ic2VydmFibGU8Q29tYmluZWRDb2xsZWN0aW9uPiB7XHJcbiAgICByZXR1cm4gdGhpcy5tdEFwaS5zeW5jKGVuZ2luZUlkLCBjb2xsZWN0aW9uKS5waXBlKFxyXG4gICAgICB0YXAoKHVwZGF0ZWRDb2xsZWN0aW9uKSA9PiB7XHJcbiAgICAgICAgY29sbGVjdGlvbi51cGRhdGUodXBkYXRlZENvbGxlY3Rpb24pO1xyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHJlbW92ZU10Q29sbGVjdGlvbihjb2xsZWN0aW9uOiBDb21iaW5lZENvbGxlY3Rpb24sIGVuZ2luZUlkOiBzdHJpbmcpIHtcclxuICAgIHJldHVybiB0aGlzLm10QXBpLnJlbW92ZShlbmdpbmVJZCwgY29sbGVjdGlvbikucGlwZShcclxuICAgICAgdGFwKChyZXNwb25zZSkgPT4ge1xyXG4gICAgICAgIGNvbGxlY3Rpb24udXBkYXRlKHJlc3BvbnNlKTtcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBhZGRUb0VuZ2luZVZhbGlkYXRpb24oY29sbGVjdGlvbjogQ29tYmluZWRDb2xsZWN0aW9uKTogYm9vbGVhbiB7XHJcbiAgICBpZiAoIWNvbGxlY3Rpb24gfHwgIWNvbGxlY3Rpb24udGVybUNvbGxlY3Rpb24pIHtcclxuICAgICAgY29uc29sZS5lcnJvcihcIlRyeWluZyB0byBhdHRhY2ggY29sbGVjdGlvbiB0aGF0IGhhcyBubyB0aWxkZSB0ZXJtIGlkLlwiKTtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNsZWFyVGltZW91dChlbmdpbmVJZDogc3RyaW5nKSB7XHJcbiAgICBpZiAodGhpcy5lbmdpbmVzW2VuZ2luZUlkXT8ucmVmcmVzaFRpbWVvdXQpIHtcclxuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuZW5naW5lc1tlbmdpbmVJZF0ucmVmcmVzaFRpbWVvdXQpO1xyXG4gICAgICB0aGlzLmVuZ2luZXNbZW5naW5lSWRdLnJlZnJlc2hUaW1lb3V0ID0gbnVsbDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2V0U2VsZWN0ZWRGcm9tTG9jYWxTdG9yYWdlKGVuZ2luZUlkOiBzdHJpbmcpIHtcclxuICAgIC8vIElmIG5vIGNvbGxlY3Rpb25zIG9yIHNlbGVjdGVkIGlzIGFscmVhZHkgc2V0LCBpdCBzaG91bGQgbm90IGJlIGNoYW5nZWQgZnJvbSBsb2NhbHN0b3JhZ2UgdmFsdWUuIChVc3VhbGx5LCBsb2NhbHN0b3JhZ2Ugc2hvdWxkIGhhdmUgdGhlIHNhbWUgdmFsdWUpLlxyXG4gICAgaWYgKHRoaXMuZW5naW5lc1tlbmdpbmVJZF0uY29sbGVjdGlvbnM/LnNpemUgPT09IDAgfHwgdGhpcy5lbmdpbmVzW2VuZ2luZUlkXS5zZWxlY3RlZCkge1xyXG4gICAgICB0aGlzLnVwZGF0ZVNlbGVjdGVkQ29sbGVjdGlvbk91dHNpZGVTZXJ2aWNlKCk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBzdG9yZWRJZCA9IHRoaXMucmVhZExvY2FsU3RvcmFnZSgpPy5bZW5naW5lSWRdO1xyXG4gICAgXHJcbiAgICBpZiAoIXN0b3JlZElkKSB7XHJcbiAgICAgIHRoaXMuZW5naW5lc1tlbmdpbmVJZF0uc2VsZWN0ZWQgPSBudWxsO1xyXG4gICAgICB0aGlzLnVwZGF0ZVNlbGVjdGVkQ29sbGVjdGlvbk91dHNpZGVTZXJ2aWNlKCk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBleGlzdGluZyA9IEFycmF5LmZyb20odGhpcy5lbmdpbmVzW2VuZ2luZUlkXS5jb2xsZWN0aW9ucykuZmluZChcclxuICAgICAgKGl0ZW0pID0+IGl0ZW0ubXRDb2xsZWN0aW9uPy5pZCA9PT0gc3RvcmVkSWQgfHwgaXRlbS50ZXJtQ29sbGVjdGlvbj8uaWQgPT09IHN0b3JlZElkKTtcclxuICAgIHRoaXMuZW5naW5lc1tlbmdpbmVJZF0uc2VsZWN0ZWQgPSBleGlzdGluZyBhcyBDb21iaW5lZENvbGxlY3Rpb247XHJcblxyXG4gICAgdGhpcy51cGRhdGVTZWxlY3RlZENvbGxlY3Rpb25PdXRzaWRlU2VydmljZSgpO1xyXG4gIH1cclxuICBcclxuXHJcbiAgcHJpdmF0ZSByZW1vdmVEZWxldGVkKHRlcm1SZXNwb25zZTogQ29tYmluZWRDb2xsZWN0aW9uW10sIG10UmVzcG9uc2U6IENvbWJpbmVkQ29sbGVjdGlvbltdLCBlbmdpbmVJZDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBmb3IgKGNvbnN0IGNvbGxlY3Rpb24gb2YgdGhpcy5lbmdpbmVzW2VuZ2luZUlkXS5jb2xsZWN0aW9ucykge1xyXG4gICAgICBjb25zdCB0ZXJtRXhpc3RpbmdJeCA9IENvbWJpbmVkQ29sbGVjdGlvbi5maW5kRXhpc3RpbmdJbmRleEZyb21MaXN0KHRlcm1SZXNwb25zZSwgY29sbGVjdGlvbik7XHJcbiAgICAgIGNvbnN0IG10RXhpc3RpbmdJeCA9IENvbWJpbmVkQ29sbGVjdGlvbi5maW5kRXhpc3RpbmdJbmRleEZyb21MaXN0KG10UmVzcG9uc2UsIGNvbGxlY3Rpb24pO1xyXG5cclxuICAgICAgaWYgKHRlcm1FeGlzdGluZ0l4ID09PSBudWxsICYmIG10RXhpc3RpbmdJeCA9PT0gbnVsbCkge1xyXG4gICAgICAgIHRoaXMuZW5naW5lc1tlbmdpbmVJZF0/LmNvbGxlY3Rpb25zLmRlbGV0ZShjb2xsZWN0aW9uKTtcclxuICBcclxuICAgICAgICBpZiAodGhpcy5lbmdpbmVzW2VuZ2luZUlkXT8uc2VsZWN0ZWQgPT09IGNvbGxlY3Rpb24pIHtcclxuICAgICAgICAgIHRoaXMuZW5naW5lc1tlbmdpbmVJZF0uc2VsZWN0ZWQgPSBudWxsO1xyXG4gICAgICAgICAgdGhpcy51cGRhdGVTZWxlY3RlZENvbGxlY3Rpb25PdXRzaWRlU2VydmljZSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBpZiAodGVybUV4aXN0aW5nSXggIT09IG51bGwpIHtcclxuICAgICAgICAgIGNvbnN0IGV4aXN0aW5nVGVybSA9IHRlcm1SZXNwb25zZVt0ZXJtRXhpc3RpbmdJeF07XHJcbiAgICAgICAgICBjb2xsZWN0aW9uLnVwZGF0ZShleGlzdGluZ1Rlcm0pO1xyXG4gICAgICAgICAgdGVybVJlc3BvbnNlLnNwbGljZSh0ZXJtRXhpc3RpbmdJeCwgMSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGNvbGxlY3Rpb24uZGVsZXRlVGVybXMoKTtcclxuICAgICAgICB9XHJcbiAgXHJcbiAgICAgICAgaWYgKG10RXhpc3RpbmdJeCAhPT0gbnVsbCkge1xyXG4gICAgICAgICAgY29uc3QgZXhpc3RpbmdNdCA9IG10UmVzcG9uc2VbbXRFeGlzdGluZ0l4XTtcclxuICAgICAgICAgIGNvbGxlY3Rpb24udXBkYXRlKGV4aXN0aW5nTXQpO1xyXG4gICAgICAgICAgbXRSZXNwb25zZS5zcGxpY2UobXRFeGlzdGluZ0l4LCAxKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgY29sbGVjdGlvbi5kZWxldGVNVCgpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhZGRDb2xsZWN0aW9ucyhuZXdDb2xsZWN0aW9uczogSXRlcmFibGU8Q29tYmluZWRDb2xsZWN0aW9uPiwgZW5naW5lSWQ6IHN0cmluZykge1xyXG4gICAgLy8gc2V0cyBjb2xsZWN0aW9uIGxpc3QgdG8gdGhpcyB2YWx1ZSBhdCB0aGUgZW5kLCBzbyBkZWxldGVkIGNvbGxlY3Rpb25zIGFyZSBub3QgaW4gdGhlIGxpc3QuXHJcbiAgICBmb3IgKGNvbnN0IGNvbGxlY3Rpb24gb2YgbmV3Q29sbGVjdGlvbnMpIHtcclxuICAgICAgLy8gVXNlciBzaG91bGRuJ3Qgc2VlIGZhaWxlZCBjb2xsZWN0aW9ucyBpZiBoZSBjYW4ndCByZXRyeSB0byBpbXBvcnQgdGhlbS5cclxuICAgICAgaWYgKCF0aGlzLmhhc0VkaXRQZXJtaXNzaW9ucyAmJiBjb2xsZWN0aW9uLm10U3RhdHVzID09PSBNdENvbGxlY3Rpb25TdGF0dXMuRVJST1IgfHwgY29sbGVjdGlvbi5tdFN0YXR1cyA9PT0gTXRDb2xsZWN0aW9uU3RhdHVzLkRFTEVUSU5HKSB7XHJcbiAgICAgICAgY29udGludWU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmIChjb2xsZWN0aW9uLmlzSW1wb3J0aW5nKSB7XHJcbiAgICAgICAgdGhpcy5lbmdpbmVzW2VuZ2luZUlkXS5pc0FueUltcG9ydGluZyA9IHRydWU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGNvbnN0IGV4aXN0aW5nOiBDb21iaW5lZENvbGxlY3Rpb24gfCBudWxsID0gQ29tYmluZWRDb2xsZWN0aW9uLmZpbmRFeGlzdGluZ0NvbGxlY3Rpb25Gcm9tTGlzdCh0aGlzLmVuZ2luZXNbZW5naW5lSWRdLmNvbGxlY3Rpb25zLCBjb2xsZWN0aW9uKTtcclxuXHJcbiAgICAgIC8vIElmIHRlcm0gYXBpIGRvZXNuJ3QgaGF2ZSBlbmdpbmUgbGFuZ3VhZ2VzLCBjb2xsZWN0aW9uIHNob3VsZCBub3QgYmUgc2hvd24gKGlmIGl0IGlzIG5vdCBhbHJlYWR5IGltcG9ydGVkIHNvbWVob3cpO1xyXG4gICAgICBpZiAoIWV4aXN0aW5nICYmIGNvbGxlY3Rpb24uc291cmNlID09PSBFbmdpbmVUZXJtQ29sbGVjdGlvblNvdXJjZS5USUxERV9URVJNKSB7XHJcbiAgICAgICAgbGV0IGhhc0xhbmd1YWdlcyA9IHRydWU7XHJcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLmVuZ2luZXNbZW5naW5lSWRdLmVuZ2luZUxhbmd1YWdlcy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgaWYgKFxyXG4gICAgICAgICAgICAhY29sbGVjdGlvbi50ZXJtQ29sbGVjdGlvbj8ubGFuZ3VhZ2VzPy5maW5kKFxyXG4gICAgICAgICAgICAgIChsYW5nKSA9PiBsYW5nLmlkID09PSB0aGlzLmVuZ2luZXNbZW5naW5lSWRdLmVuZ2luZUxhbmd1YWdlc1tpXVxyXG4gICAgICAgICAgICApXHJcbiAgICAgICAgICApIHtcclxuICAgICAgICAgICAgaGFzTGFuZ3VhZ2VzID0gZmFsc2U7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKCFoYXNMYW5ndWFnZXMpIHtcclxuICAgICAgICAgIGNvbnRpbnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKCFleGlzdGluZykge1xyXG4gICAgICAgIHRoaXMuZW5naW5lc1tlbmdpbmVJZF0uY29sbGVjdGlvbnMuYWRkKGNvbGxlY3Rpb24pO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGV4aXN0aW5nLnVwZGF0ZShjb2xsZWN0aW9uKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuZW5naW5lc1tlbmdpbmVJZF0uaGFzQW55Q29sbGVjdGlvbnMgPSB0aGlzLmVuZ2luZXNbZW5naW5lSWRdLmNvbGxlY3Rpb25zLnNpemUgPiAwO1xyXG5cclxuICAgIHRoaXMuZW5naW5lU3ViamVjdC5uZXh0KHRoaXMuZW5naW5lcyk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNjaGVkdWxlUmVmcmVzaChlbmdpbmVJZDogc3RyaW5nLCB0aW1lb3V0PzogbnVtYmVyIHwgbnVsbCwpIHtcclxuICAgIC8vIGlmIG1lbnUgaXMgY2xvc2VkIGFuZCBzZWxlY3RlZCBjb2xsZWN0aW9uIGlzIG5vdCBpbXBvcnRpbmcgYW55bW9yZSAtIGF1dG8gcmVmcmVzaGluZyBzaG91bGQgYmUgY2FuY2VsbGVkLlxyXG4gICAgaWYgKFxyXG4gICAgICAhdGhpcy5lbmdpbmVzW2VuZ2luZUlkXS5oYXJkQXV0b1JlZnJlc2ggJiZcclxuICAgICAgIXRoaXMuZW5naW5lc1tlbmdpbmVJZF0/LmlzSW1wb3J0aW5nICYmXHJcbiAgICAgIHRoaXMuZW5naW5lc1tlbmdpbmVJZF0uaXNTb2Z0QXV0b1JlZnJlc2hPblxyXG4gICAgKSB7XHJcbiAgICAgIHRoaXMuc3RvcEF1dG9SZWZyZXNoKGVuZ2luZUlkKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIGlmIGhhcmQgYXV0byByZWZyZXNobyBvbiwgYXV0byByZWZyZXNoIHNob3VsZCBiZSBvbi4gSWYgaGFyZCBhdXRvcmVmZXJlc2ggaXMgb2ZmICwgcmVmcmVzaCBuZWVkcyB0byBiZSBkb25lIG9ubHkgaWYgc2VsZWN0ZWQgaXMgaW1wb3J0aW5nLlxyXG4gICAgaWYgKFxyXG4gICAgICB0aGlzLmVuZ2luZXNbZW5naW5lSWRdLmhhcmRBdXRvUmVmcmVzaCB8fFxyXG4gICAgICAoIXRoaXMuZW5naW5lc1tlbmdpbmVJZF0gJiZcclxuICAgICAgICAodGhpcy5lbmdpbmVzW2VuZ2luZUlkXS5pc1NvZnRBdXRvUmVmcmVzaE9uIHx8IHRoaXMuZW5naW5lc1tlbmdpbmVJZF0uc2VsZWN0ZWQ/LmlzSW1wb3J0aW5nKSlcclxuICAgICkge1xyXG4gICAgICBjb25zdCB0aW1lb3V0TXMgPVxyXG4gICAgICAgIHRpbWVvdXQgPz9cclxuICAgICAgICAodGhpcy5lbmdpbmVzW2VuZ2luZUlkXS5pc0FueUltcG9ydGluZ1xyXG4gICAgICAgICAgPyB0aGlzLmNvbmZpZy50ZXJtQ29uZmlnLnJlZnJlc2hUaW1lb3V0TXNXaGVuSW1wb3J0aW5nXHJcbiAgICAgICAgICA6IHRoaXMuY29uZmlnLnRlcm1Db25maWcucmVmcmVzaFRpbWVvdXRNcyk7XHJcbiAgICAgICAgICB0aGlzLmVuZ2luZXNbZW5naW5lSWRdLnJlZnJlc2hUaW1lb3V0ID0gc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuZW5naW5lc1tlbmdpbmVJZF0ucmVmcmVzaFRpbWVvdXQgPSBudWxsO1xyXG4gICAgICAgIHRoaXMubG9hZENvbGxlY3Rpb25zKGVuZ2luZUlkKTtcclxuICAgICAgfSwgdGltZW91dE1zKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgc3RvcmVTZWxlY3RlZEluTG9jYWxTdG9yYWdlKGVuZ2luZUlkOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGxldCBsb2NhbFN0b3JhZ2VPYmplY3QgPSB0aGlzLnJlYWRMb2NhbFN0b3JhZ2UoKTtcclxuICAgIFxyXG4gICAgaWYgKCFsb2NhbFN0b3JhZ2VPYmplY3QpIHtcclxuICAgICAgbG9jYWxTdG9yYWdlT2JqZWN0ID0ge30gYXMgYW55O1xyXG4gICAgfVxyXG5cclxuICAgIGxvY2FsU3RvcmFnZU9iamVjdFtlbmdpbmVJZF0gPSB0aGlzLmVuZ2luZXNbZW5naW5lSWRdLnNlbGVjdGVkID8gKHRoaXMuZW5naW5lc1tlbmdpbmVJZF0/LnNlbGVjdGVkPy5tdENvbGxlY3Rpb24/LmlkID8/IHRoaXMuZW5naW5lc1tlbmdpbmVJZF0/LnNlbGVjdGVkPy50ZXJtQ29sbGVjdGlvbj8uaWQpIDogbnVsbDtcclxuICAgIC8vIHN0b3JlIHRlcm0gaWQgaWYgaXQgZXhpc3RzXHJcbiAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSh0aGlzLkxPQ0FMX1NUT1JBR0VfS0VZLCBKU09OLnN0cmluZ2lmeShsb2NhbFN0b3JhZ2VPYmplY3QpKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgcmVhZExvY2FsU3RvcmFnZSgpOiBhbnkge1xyXG4gICAgY29uc3QgZGF0YSA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKHRoaXMuTE9DQUxfU1RPUkFHRV9LRVkpIGFzIHN0cmluZztcclxuICAgIHRyeSB7XHJcbiAgICAgIHJldHVybiBKU09OLnBhcnNlKGRhdGEpO1xyXG4gICAgfSBjYXRjaCB7XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSB1cGRhdGVTZWxlY3RlZENvbGxlY3Rpb25PdXRzaWRlU2VydmljZSgpOiB2b2lkIHtcclxuICAgIHRoaXMudXBkYXRlZEVuZ2luZXNTdWJqZWN0Lm5leHQodGhpcy5lbmdpbmVzKTtcclxuICB9XHJcbn1cclxuIl19
|
|
322
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVybWlub2xvZ3kuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1jb21tb24vc3JjL2xpYi90ZXJtaW5vbG9neS9zZXJ2aWNlcy90ZXJtaW5vbG9neS90ZXJtaW5vbG9neS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxlQUFlLEVBQWMsT0FBTyxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9FLE9BQU8sRUFBRSxrQkFBa0IsRUFBa0IsTUFBTSxjQUFjLENBQUM7QUFFbEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFFckYsT0FBTyxFQUFFLDBCQUEwQixFQUFFLGtCQUFrQixFQUFFLE1BQU0sYUFBYSxDQUFDOzs7OztBQU83RSxNQUFNLE9BQU8sa0JBQWtCO0lBTzdCLElBQUksZUFBZSxLQUFLLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFBLENBQUMsQ0FBQztJQUM5RCxJQUFJLG9CQUFvQixLQUFLLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsbUJBQW1CLENBQUEsQ0FBQyxDQUFDO0lBSWhGLElBQUksa0JBQWtCO1FBQ3BCLE9BQU8sQ0FDTCxJQUFJLENBQUMsTUFBTSxFQUFFLFVBQVUsQ0FBQyxNQUFNO1lBQzlCLElBQUksQ0FBQyxvQkFBb0I7WUFDekIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMscUJBQXFCLENBQzdDLENBQUM7SUFDSixDQUFDO0lBRUQsWUFDbUIsTUFBZ0MsRUFDaEMsS0FBbUIsRUFDbkIsaUJBQStDLEVBQ2hCLEtBQXFCO1FBSHBELFdBQU0sR0FBTixNQUFNLENBQTBCO1FB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c291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgU3ViamVjdCwgZm9ya0pvaW4sIG9mLCB0YXAgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQ29tYmluZWRDb2xsZWN0aW9uLCBJTXRUZXJtU2VydmljZSB9IGZyb20gJy4uLy4uL21vZGVscyc7XHJcbmltcG9ydCB7IFRlcm1pbm9sb2d5Q29uZmlnU2VydmljZSB9IGZyb20gJy4uLy4uL2NvbmZpZy9zZXJ2aWNlcyc7XHJcbmltcG9ydCB7IFRFUk1JTk9MT0dZX0FQSV9UT0tFTiB9IGZyb20gJy4uLy4uL2luamVjdGlvbi10b2tlbnMvdGVybWlub2xvZ3ktYXBpLnRva2VuJztcclxuaW1wb3J0IHsgVGVybWlub2xvZ3lDb2xsZWN0aW9uU2VydmljZSB9IGZyb20gJy4uL3Rlcm1pbm9sb2d5LWNvbGxlY3Rpb24vdGVybWlub2xvZ3ktY29sbGVjdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRW5naW5lVGVybUNvbGxlY3Rpb25Tb3VyY2UsIE10Q29sbGVjdGlvblN0YXR1cyB9IGZyb20gJy4uLy4uL2VudW1zJztcclxuaW1wb3J0IHsgQWxlcnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMnO1xyXG5pbXBvcnQgeyBUZXJtaW5vbG9neUVuZ2luZSB9IGZyb20gJy4uLy4uL21vZGVscy90ZXJtaW5vbG9neS1lbmdpbmUubW9kZWwnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFRlcm1pbm9sb2d5U2VydmljZSB7XHJcbiAgcHVibGljIGVuZ2luZXM6IHsgW2VuZ2luZUlkOiBzdHJpbmddOiBUZXJtaW5vbG9neUVuZ2luZSB9ID0ge307XHJcblxyXG4gIHByaXZhdGUgcmV0cmFuc2xhdGVTdWJqZWN0ID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcclxuICBwcml2YXRlIGVuZ2luZVN1YmplY3QgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KHRoaXMuZW5naW5lcyk7XHJcbiAgcHJpdmF0ZSB1cGRhdGVkRW5naW5lc1N1YmplY3QgPSBuZXcgU3ViamVjdDx7W2VuZ2luZUlkOiBzdHJpbmddOiBUZXJtaW5vbG9neUVuZ2luZX0+KCk7XHJcblxyXG4gIGdldCBpc0F1dGhlbnRpY2F0ZWQoKSB7IHJldHVybiB0aGlzLmNvbmZpZy50ZXJtQ29uZmlnLmlzQXV0aCB9XHJcbiAgZ2V0IGNhbkNyZWF0ZUNvbGxlY3Rpb25zKCkgeyByZXR1cm4gdGhpcy5jb25maWcudGVybUNvbmZpZy5jYW5DcmVhdGVDb2xsZWN0aW9uIH1cclxuXHJcbiAgcHJpdmF0ZSByZWFkb25seSBMT0NBTF9TVE9SQUdFX0tFWSA9ICdzeXN0ZW1MYXN0Q29sbGVjdGlvbnMnO1xyXG5cclxuICBnZXQgaGFzRWRpdFBlcm1pc3Npb25zKCkge1xyXG4gICAgcmV0dXJuIChcclxuICAgICAgdGhpcy5jb25maWc/LnRlcm1Db25maWcuaXNBdXRoICYmXHJcbiAgICAgIHRoaXMuY2FuQ3JlYXRlQ29sbGVjdGlvbnMgJiZcclxuICAgICAgdGhpcy5jb25maWcudGVybUNvbmZpZy5pc1Rlcm1Qb3J0YWxTdXBwb3J0ZWRcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgY29uZmlnOiBUZXJtaW5vbG9neUNvbmZpZ1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGFsZXJ0OiBBbGVydFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRlcm1Db2xsZWN0aW9uQXBpOiBUZXJtaW5vbG9neUNvbGxlY3Rpb25TZXJ2aWNlLFxyXG4gICAgQEluamVjdChURVJNSU5PTE9HWV9BUElfVE9LRU4pIHByaXZhdGUgcmVhZG9ubHkgbXRBcGk6IElNdFRlcm1TZXJ2aWNlXHJcbiAgKSB7fVxyXG5cclxuICBnZXRSZXRyYW5zbGF0ZVNpZ25hbCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcclxuICAgIHJldHVybiB0aGlzLnJldHJhbnNsYXRlU3ViamVjdC5hc09ic2VydmFibGUoKTtcclxuICB9XHJcblxyXG4gIHJlc2V0RW5naW5lcygpOiB2b2lkIHtcclxuICAgIHRoaXMuZW5naW5lcyA9IHt9O1xyXG4gIH1cclxuXHJcbiAgaGFzQW55Q29sbGVjdGlvbnMoc3lzdGVtSWQ6IHN0cmluZyk6IGJvb2xlYW4geyByZXR1cm4gdGhpcy5lbmdpbmVzW3N5c3RlbUlkXT8uY29sbGVjdGlvbnMuc2l6ZSA+IDAgfVxyXG5cclxuICBnZXRFbmdpbmVzV2l0aFNlbGVjdGVkQ29sbGVjdGlvbkNoYW5nZSgpOiBPYnNlcnZhYmxlPHtbZW5naW5lSWQ6IHN0cmluZ106IFRlcm1pbm9sb2d5RW5naW5lfT4ge1xyXG4gICAgcmV0dXJuIHRoaXMudXBkYXRlZEVuZ2luZXNTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpO1xyXG4gIH1cclxuXHJcbiAgc2V0RW5naW5lKFxyXG4gICAgZW5naW5lSWQ6IHN0cmluZyxcclxuICAgIGxhbmd1YWdlczogc3RyaW5nW10gfCBudWxsID0gbnVsbCxcclxuICAgIHNldFNlbGVjdGVkRnJvbUxvY2FsU3RvcmFnZSA9IGZhbHNlLFxyXG4gICAgdGVybUNvbGxlY3Rpb25zID0gdHJ1ZSxcclxuICAgIG10Q29sbGVjdGlvbnMgPSB0cnVlLFxyXG4gICAgc2VsZWN0ZWRDb2xsZWN0aW9uPzogQ29tYmluZWRDb2xsZWN0aW9uLFxyXG4gICAgYXV0b1JlZnJlc2g/OiBib29sZWFuXHJcbiAgKSB7XHJcbiAgICBjb25zdCBlbmdpbmVFeGlzdHMgPSB0aGlzLmVuZ2luZXNbZW5naW5lSWRdID8/IG51bGw7XHJcblxyXG4gICAgaWYgKCFlbmdpbmVFeGlzdHMpIHtcclxuICAgICAgY29uc3QgbmV3RW5naW5lOiBUZXJtaW5vbG9neUVuZ2luZSA9IHtcclxuICAgICAgICBzZWxlY3RlZDogc2VsZWN0ZWRDb2xsZWN0aW9uIHx8IG51bGwsXHJcbiAgICAgICAgaXNJbXBvcnRpbmc6IGZhbHNlLFxyXG4gICAgICAgIGlzQW55SW1wb3J0aW5nOiBmYWxzZSxcclxuICAgICAgICBoYXNBbnlDb2xsZWN0aW9uczogZmFsc2UsXHJcbiAgICAgICAgaXNSZWZyZXNoaW5nQ29sbGVjdGlvbnM6IGZhbHNlLFxyXG4gICAgICAgIGNvbGxlY3Rpb25zOiBuZXcgU2V0PENvbWJpbmVkQ29sbGVjdGlvbj4sXHJcbiAgICAgICAgcmVmcmVzaE10Q29sbGVjdGlvbnM6IG10Q29sbGVjdGlvbnMsXHJcbiAgICAgICAgcmVmcmVzaFRlcm1Db2xsZWN0aW9uczogdGVybUNvbGxlY3Rpb25zLFxyXG4gICAgICAgIGVuZ2luZUxhbmd1YWdlczogbGFuZ3VhZ2VzIHx8IFtdLFxyXG4gICAgICAgIGlzU29mdEF1dG9SZWZyZXNoT246IGZhbHNlLFxyXG4gICAgICAgIGhhcmRBdXRvUmVmcmVzaDogYXV0b1JlZnJlc2ggPz8gZmFsc2UsXHJcbiAgICAgICAgcmVmcmVzaFRpbWVvdXQ6IDBcclxuICAgICAgfTtcclxuXHJcbiAgICAgIHRoaXMuZW5naW5lc1tlbmdpbmVJZF0gPSBuZXdFbmdpbmU7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBlbmdpbmVFeGlzdHMuaGFyZEF1dG9SZWZyZXNoID0gYXV0b1JlZnJlc2ggPz8gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHRoaXMubG9hZENvbGxlY3Rpb25zKGVuZ2luZUlkLCBzZXRTZWxlY3RlZEZyb21Mb2NhbFN0b3JhZ2UpO1xyXG4gIH1cclxuXHJcbiAgc2V0U2VsZWN0ZWRDb2xsZWN0aW9uKGVuZ2luZUlkOiBzdHJpbmcsIGNvbGxlY3Rpb246IENvbWJpbmVkQ29sbGVjdGlvbiB8IG51bGwsIHN0b3JlU2VsZWN0ZWRJbkxvY2FsU3RvcmFnZTogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgdGhpcy5lbmdpbmVzW2VuZ2luZUlkXS5zZWxlY3RlZCA9IGNvbGxlY3Rpb247XHJcblxyXG4gICAgaWYgKHN0b3JlU2VsZWN0ZWRJbkxvY2FsU3RvcmFnZSkge1xyXG4gICAgICB0aGlzLnN0b3JlU2VsZWN0ZWRJbkxvY2FsU3RvcmFnZShlbmdpbmVJZCk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5yZXRyYW5zbGF0ZVN1YmplY3QubmV4dCh0cnVlKTtcclxuICB9XHJcblxyXG4gIGxvYWRDb2xsZWN0aW9ucyhlbmdpbmVJZDogc3RyaW5nLCBzZXRTZWxlY3RlZEZyb21Mb2NhbFN0b3JhZ2U/OiBib29sZWFuKTogT2JzZXJ2YWJsZTx7W2VuZ2luZUlkOiBzdHJpbmddOiBUZXJtaW5vbG9neUVuZ2luZTt9PiB7XHJcbiAgICAgIC8vIGNsZWFyIHRpbWVvdXQgc2luY2UgdGhpcyByZWZyZXNoIHJlcGxhY2VzIHNjaGVkdWxlZFxyXG4gICAgICB0aGlzLmNsZWFyVGltZW91dChlbmdpbmVJZCk7XHJcblxyXG4gICAgICB0aGlzLmVuZ2luZXNbZW5naW5lSWRdID0gey4uLnRoaXMuZW5naW5lc1tlbmdpbmVJZF0sIGlzUmVmcmVzaGluZ0NvbGxlY3Rpb25zOiB0cnVlfVxyXG4gIFxyXG4gICAgICBsZXQgdGVybVJlc3BvbnNlOiBDb21iaW5lZENvbGxlY3Rpb25bXTtcclxuICAgICAgbGV0IG10QXBpUmVzcG9uc2U6IENvbWJpbmVkQ29sbGVjdGlvbltdO1xyXG4gIFxyXG4gICAgICBjb25zdCBvYnNlcnZhYmxlczogT2JzZXJ2YWJsZTxDb21iaW5lZENvbGxlY3Rpb25bXT5bXSA9IFtdO1xyXG4gIFxyXG4gICAgICBpZiAodGhpcy5lbmdpbmVzW2VuZ2luZUlkXS5yZWZyZXNoVGVybUNvbGxlY3Rpb25zKSB7XHJcbiAgICAgICAgb2JzZXJ2YWJsZXMucHVzaChcclxuICAgICAgICAgIHRoaXMudGVybUNvbGxlY3Rpb25BcGlcclxuICAgICAgICAgICAgLmdldENvbGxlY3Rpb25MaXN0KClcclxuICAgICAgICAgICAgLnBpcGUodGFwKChyZXNwb25zZSkgPT4gKHRlcm1SZXNwb25zZSA9IHJlc3BvbnNlKSkpXHJcbiAgICAgICAgKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5lbmdpbmVzW2VuZ2luZUlkXS5yZWZyZXNoTXRDb2xsZWN0aW9ucykge1xyXG4gICAgICAgIG9ic2VydmFibGVzLnB1c2goXHJcbiAgICAgICAgICB0aGlzLm10QXBpXHJcbiAgICAgICAgICAgIC5nZXRMaXN0KGVuZ2luZUlkKVxyXG4gICAgICAgICAgICAucGlwZSh0YXAoKHJlc3BvbnNlKSA9PiAobXRBcGlSZXNwb25zZSA9IHJlc3BvbnNlKSkpXHJcbiAgICAgICAgKTtcclxuICAgICAgfVxyXG4gICAgICBmb3JrSm9pbihvYnNlcnZhYmxlcykuc3Vic2NyaWJlKHtcclxuICAgICAgICAvLyBkbyBub3QgbmVlZCByZXNwb25zZSBiZWNhdWUgcmVzcG9uc2VzIGFyZSBzYXZlZCBpbiBwaXBlIG1ldGhvZHNcclxuICAgICAgICBuZXh0OiAoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmVuZ2luZXNbZW5naW5lSWRdLmlzQW55SW1wb3J0aW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAvLyBub3RlIHRoYXQgdGVybVJlc3BvbnNlIGFuZCBtdGFwaXJlc3BvbnNlIGdldHMgY2hhbmdlZCBkdXJpbmcgcmVtb3ZlIG1ldGhvZFxyXG4gICAgICAgICAgdGhpcy5yZW1vdmVEZWxldGVkKHRlcm1SZXNwb25zZSwgbXRBcGlSZXNwb25zZSwgZW5naW5lSWQpO1xyXG4gIFxyXG4gICAgICAgICAgY29uc3Qgam9pbmVkID0gW107XHJcbiAgICAgICAgICBpZiAobXRBcGlSZXNwb25zZSkge1xyXG4gICAgICAgICAgICBqb2luZWQucHVzaCguLi5tdEFwaVJlc3BvbnNlKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGlmICh0ZXJtUmVzcG9uc2UpIHtcclxuICAgICAgICAgICAgam9pbmVkLnB1c2goLi4udGVybVJlc3BvbnNlKTtcclxuICAgICAgICAgIH1cclxuICBcclxuICAgICAgICAgIHRoaXMuYWRkQ29sbGVjdGlvbnMoam9pbmVkLCBlbmdpbmVJZCk7XHJcbiAgICAgICAgICBpZiAoc2V0U2VsZWN0ZWRGcm9tTG9jYWxTdG9yYWdlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuc2V0U2VsZWN0ZWRGcm9tTG9jYWxTdG9yYWdlKGVuZ2luZUlkKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHRoaXMuZW5naW5lc1tlbmdpbmVJZF0uaXNSZWZyZXNoaW5nQ29sbGVjdGlvbnMgPSBmYWxzZTtcclxuICAgICAgICAgIHRoaXMuc2NoZWR1bGVSZWZyZXNoKGVuZ2luZUlkLCBudWxsKTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIGVycm9yOiAoZXJyb3IpID0+IHtcclxuICAgICAgICAgIHRoaXMuZW5naW5lc1tlbmdpbmVJZF0uaXNSZWZyZXNoaW5nQ29sbGVjdGlvbnMgPSBmYWxzZTtcclxuICAgICAgICAgIC8vIGl0IGlzIGVub3VnaCB0byBzaG93IGVycm9yIG9ubHkgaW4gY29uc29sZS4gTm8gc3BlY2lhbCB0aGluZyBpcyBuZWNlc3NhcnkuXHJcbiAgICAgICAgICBjb25zb2xlLmVycm9yKGVycm9yKTtcclxuICAgICAgICB9LFxyXG4gICAgICB9KTtcclxuXHJcbiAgICAgIHJldHVybiB0aGlzLmVuZ2luZVN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XHJcbiAgfVxyXG5cclxuICBnZXRDb2xsZWN0aW9ucygpOiBPYnNlcnZhYmxlPHsgW2VuZ2luZUlkOiBzdHJpbmddOiBUZXJtaW5vbG9neUVuZ2luZSB9PiB7XHJcbiAgICByZXR1cm4gdGhpcy5lbmdpbmVTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpO1xyXG4gIH1cclxuXHJcbiAgc3RhcnRBdXRvUmVmcmVzaChlbmdpbmVJZDogc3RyaW5nLCBsYW5ndWFnZXM6IHN0cmluZ1tdIHwgbnVsbCA9IG51bGwsIHNldFNlbGVjdGVkRnJvbUxvY2FsU3RvcmFnZSA9IGZhbHNlLCB0ZXJtQ29sbGVjdGlvbnMgPSB0cnVlLCBtdENvbGxlY3Rpb25zID0gdHJ1ZSkge1xyXG4gICAgcmV0dXJuIHRoaXMuc2V0RW5naW5lKGVuZ2luZUlkLCBsYW5ndWFnZXMgPz8gdGhpcy5lbmdpbmVzW2VuZ2luZUlkXT8uZW5naW5lTGFuZ3VhZ2VzLCBzZXRTZWxlY3RlZEZyb21Mb2NhbFN0b3JhZ2UsIHRlcm1Db2xsZWN0aW9ucywgbXRDb2xsZWN0aW9ucywgdW5kZWZpbmVkLCB0cnVlKTtcclxuICB9XHJcblxyXG4gIHN0b3BBdXRvUmVmcmVzaChlbmdpbmVJZDogc3RyaW5nKSB7XHJcbiAgICB0aGlzLmNsZWFyVGltZW91dChlbmdpbmVJZCk7XHJcblxyXG4gICAgaWYgKHRoaXMuZW5naW5lc1tlbmdpbmVJZF0pIHtcclxuICAgICAgdGhpcy5lbmdpbmVzW2VuZ2luZUlkXS5pc1NvZnRBdXRvUmVmcmVzaE9uID0gZmFsc2U7XHJcbiAgICAgIHRoaXMuZW5naW5lc1tlbmdpbmVJZF0uaGFyZEF1dG9SZWZyZXNoID0gZmFsc2U7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjcmVhdGUoXHJcbiAgICBzb3VyY2VMYW5ndWFnZTogc3RyaW5nLFxyXG4gICAgdGFyZ2V0TGFuZ3VhZ2U6IHN0cmluZyxcclxuICAgIGNvbGxlY3Rpb25OYW1lOiBzdHJpbmcsXHJcbiAgICBlbmdpbmVJZDogc3RyaW5nLFxyXG4gICAgcmVkaXJlY3RUb0VkaXQgPSB0cnVlXHJcbiAgKSB7XHJcbiAgICByZXR1cm4gdGhpcy50ZXJtQ29sbGVjdGlvbkFwaVxyXG4gICAgICAuY3JlYXRlQ29sbGVjdGlvbihbc291cmNlTGFuZ3VhZ2UsIHRhcmdldExhbmd1YWdlXSwgY29sbGVjdGlvbk5hbWUpXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIHRhcCgoY29sbGVjdGlvbikgPT4ge1xyXG4gICAgICAgICAgaWYgKHJlZGlyZWN0VG9FZGl0KSB7XHJcbiAgICAgICAgICAgIHdpbmRvdy5vcGVuKFxyXG4gICAgICAgICAgICAgIHRoaXMudGVybUNvbGxlY3Rpb25BcGkuZ2V0RWRpdExpbmsoXHJcbiAgICAgICAgICAgICAgICBjb2xsZWN0aW9uLnRlcm1Db2xsZWN0aW9uPy5pZCA/PyAnJyxcclxuICAgICAgICAgICAgICAgIHNvdXJjZUxhbmd1YWdlLFxyXG4gICAgICAgICAgICAgICAgdGFyZ2V0TGFuZ3VhZ2VcclxuICAgICAgICAgICAgICApLFxyXG4gICAgICAgICAgICAgICdfYmxhbmsnXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgdGhpcy5lbmdpbmVzW2VuZ2luZUlkXT8uY29sbGVjdGlvbnM/LmFkZChjb2xsZWN0aW9uKTtcclxuXHJcbiAgICAgICAgICB0aGlzLmxvYWRDb2xsZWN0aW9ucyhlbmdpbmVJZCk7XHJcbiAgICAgICAgfSlcclxuICAgICAgKTtcclxuICB9XHJcblxyXG4gIHNlbGVjdGVkSWRGb3JUcmFuc2xhdGlvbihlbmdpbmVJZDogc3RyaW5nKTogc3RyaW5nIHwgbnVsbCB7XHJcbiAgICBjb25zdCBzZWxlY3RlZCA9IHRoaXMuZW5naW5lc1tlbmdpbmVJZF0/LnNlbGVjdGVkO1xyXG4gICAgaWYgKFxyXG4gICAgICBzZWxlY3RlZD8ubXRDb2xsZWN0aW9uICYmXHJcbiAgICAgIChzZWxlY3RlZC5tdENvbGxlY3Rpb24ubGFzdFVwZGF0ZWQgfHxcclxuICAgICAgICBzZWxlY3RlZC5tdENvbGxlY3Rpb24uc3RhdHVzID09PSBNdENvbGxlY3Rpb25TdGF0dXMuUkVBRFkpXHJcbiAgICApIHtcclxuICAgICAgcmV0dXJuIHNlbGVjdGVkLm10Q29sbGVjdGlvbi5pZDtcclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgdXBkYXRlSWZOZWNlc3NhcnkoXHJcbiAgICBjb2xsZWN0aW9uOiBDb21iaW5lZENvbGxlY3Rpb24sXHJcbiAgICBlbmdpbmVJZDogc3RyaW5nLFxyXG4gICAgaXNFZGl0ZWQgPSBmYWxzZVxyXG4gICk6IE9ic2VydmFibGU8Q29tYmluZWRDb2xsZWN0aW9uPiB7XHJcbiAgICAvLyBjb2xsZWN0aW9uIGlzIG5vdCBpbXBvcnRlZCBhbmQgc2hvdWxkIGJlIGF0dGFjaGVkIHRvIGVuZ2luZVxyXG4gICAgaWYgKGNvbGxlY3Rpb24uaXNFZGl0ZWQoKSB8fCBpc0VkaXRlZCkge1xyXG4gICAgICByZXR1cm4gdGhpcy5tdEFwaS5hZGQoZW5naW5lSWQsIGNvbGxlY3Rpb24pLnBpcGUoXHJcbiAgICAgICAgdGFwKCh1cGRhdGVkQ29sbGVjdGlvbikgPT4ge1xyXG4gICAgICAgICAgY29sbGVjdGlvbi51cGRhdGUodXBkYXRlZENvbGxlY3Rpb24pO1xyXG4gICAgICAgIH0pXHJcbiAgICAgICk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gb2YoY29sbGVjdGlvbik7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBoYW5kbGVBZGRUb0VuZ2luZUVycm9yKGVycm9yOiBhbnksIGVuZ2luZUlkOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMuYWxlcnQudW5oYW5kZWxlZEVycm9yKGVycm9yKTtcclxuICAgIHRoaXMuZW5naW5lc1tlbmdpbmVJZF0uc2VsZWN0ZWQgPSBudWxsO1xyXG4gIH1cclxuXHJcbiAgc3luYyhcclxuICAgIGNvbGxlY3Rpb246IENvbWJpbmVkQ29sbGVjdGlvbixcclxuICAgIGVuZ2luZUlkOiBzdHJpbmdcclxuICApOiBPYnNlcnZhYmxlPENvbWJpbmVkQ29sbGVjdGlvbj4ge1xyXG4gICAgcmV0dXJuIHRoaXMubXRBcGkuc3luYyhlbmdpbmVJZCwgY29sbGVjdGlvbikucGlwZShcclxuICAgICAgdGFwKCh1cGRhdGVkQ29sbGVjdGlvbikgPT4ge1xyXG4gICAgICAgIGNvbGxlY3Rpb24udXBkYXRlKHVwZGF0ZWRDb2xsZWN0aW9uKTtcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICByZW1vdmVNdENvbGxlY3Rpb24oY29sbGVjdGlvbjogQ29tYmluZWRDb2xsZWN0aW9uLCBlbmdpbmVJZDogc3RyaW5nKSB7XHJcbiAgICByZXR1cm4gdGhpcy5tdEFwaS5yZW1vdmUoZW5naW5lSWQsIGNvbGxlY3Rpb24pLnBpcGUoXHJcbiAgICAgIHRhcCgocmVzcG9uc2UpID0+IHtcclxuICAgICAgICBjb2xsZWN0aW9uLnVwZGF0ZShyZXNwb25zZSk7XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgYWRkVG9FbmdpbmVWYWxpZGF0aW9uKGNvbGxlY3Rpb246IENvbWJpbmVkQ29sbGVjdGlvbik6IGJvb2xlYW4ge1xyXG4gICAgaWYgKCFjb2xsZWN0aW9uIHx8ICFjb2xsZWN0aW9uLnRlcm1Db2xsZWN0aW9uKSB7XHJcbiAgICAgIGNvbnNvbGUuZXJyb3IoXCJUcnlpbmcgdG8gYXR0YWNoIGNvbGxlY3Rpb24gdGhhdCBoYXMgbm8gdGlsZGUgdGVybSBpZC5cIik7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjbGVhclRpbWVvdXQoZW5naW5lSWQ6IHN0cmluZykge1xyXG4gICAgaWYgKHRoaXMuZW5naW5lc1tlbmdpbmVJZF0/LnJlZnJlc2hUaW1lb3V0KSB7XHJcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLmVuZ2luZXNbZW5naW5lSWRdLnJlZnJlc2hUaW1lb3V0KTtcclxuICAgICAgdGhpcy5lbmdpbmVzW2VuZ2luZUlkXS5yZWZyZXNoVGltZW91dCA9IG51bGw7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldFNlbGVjdGVkRnJvbUxvY2FsU3RvcmFnZShlbmdpbmVJZDogc3RyaW5nKSB7XHJcbiAgICAvLyBJZiBubyBjb2xsZWN0aW9ucyBvciBzZWxlY3RlZCBpcyBhbHJlYWR5IHNldCwgaXQgc2hvdWxkIG5vdCBiZSBjaGFuZ2VkIGZyb20gbG9jYWxzdG9yYWdlIHZhbHVlLiAoVXN1YWxseSwgbG9jYWxzdG9yYWdlIHNob3VsZCBoYXZlIHRoZSBzYW1lIHZhbHVlKS5cclxuICAgIGlmICh0aGlzLmVuZ2luZXNbZW5naW5lSWRdLmNvbGxlY3Rpb25zPy5zaXplID09PSAwIHx8IHRoaXMuZW5naW5lc1tlbmdpbmVJZF0uc2VsZWN0ZWQpIHtcclxuICAgICAgdGhpcy51cGRhdGVTZWxlY3RlZENvbGxlY3Rpb25PdXRzaWRlU2VydmljZSgpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3Qgc3RvcmVkSWQgPSB0aGlzLnJlYWRMb2NhbFN0b3JhZ2UoKT8uW2VuZ2luZUlkXTtcclxuICAgIFxyXG4gICAgaWYgKCFzdG9yZWRJZCkge1xyXG4gICAgICB0aGlzLmVuZ2luZXNbZW5naW5lSWRdLnNlbGVjdGVkID0gbnVsbDtcclxuICAgICAgdGhpcy51cGRhdGVTZWxlY3RlZENvbGxlY3Rpb25PdXRzaWRlU2VydmljZSgpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgZXhpc3RpbmcgPSBBcnJheS5mcm9tKHRoaXMuZW5naW5lc1tlbmdpbmVJZF0uY29sbGVjdGlvbnMpLmZpbmQoXHJcbiAgICAgIChpdGVtKSA9PiBpdGVtLm10Q29sbGVjdGlvbj8uaWQgPT09IHN0b3JlZElkIHx8IGl0ZW0udGVybUNvbGxlY3Rpb24/LmlkID09PSBzdG9yZWRJZCk7XHJcbiAgICB0aGlzLmVuZ2luZXNbZW5naW5lSWRdLnNlbGVjdGVkID0gZXhpc3RpbmcgYXMgQ29tYmluZWRDb2xsZWN0aW9uO1xyXG5cclxuICAgIHRoaXMudXBkYXRlU2VsZWN0ZWRDb2xsZWN0aW9uT3V0c2lkZVNlcnZpY2UoKTtcclxuICB9XHJcbiAgXHJcblxyXG4gIHByaXZhdGUgcmVtb3ZlRGVsZXRlZCh0ZXJtUmVzcG9uc2U6IENvbWJpbmVkQ29sbGVjdGlvbltdLCBtdFJlc3BvbnNlOiBDb21iaW5lZENvbGxlY3Rpb25bXSwgZW5naW5lSWQ6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgZm9yIChjb25zdCBjb2xsZWN0aW9uIG9mIHRoaXMuZW5naW5lc1tlbmdpbmVJZF0uY29sbGVjdGlvbnMpIHtcclxuICAgICAgY29uc3QgdGVybUV4aXN0aW5nSXggPSBDb21iaW5lZENvbGxlY3Rpb24uZmluZEV4aXN0aW5nSW5kZXhGcm9tTGlzdCh0ZXJtUmVzcG9uc2UsIGNvbGxlY3Rpb24pO1xyXG4gICAgICBjb25zdCBtdEV4aXN0aW5nSXggPSBDb21iaW5lZENvbGxlY3Rpb24uZmluZEV4aXN0aW5nSW5kZXhGcm9tTGlzdChtdFJlc3BvbnNlLCBjb2xsZWN0aW9uKTtcclxuXHJcbiAgICAgIGlmICh0ZXJtRXhpc3RpbmdJeCA9PT0gbnVsbCAmJiBtdEV4aXN0aW5nSXggPT09IG51bGwpIHtcclxuICAgICAgICB0aGlzLmVuZ2luZXNbZW5naW5lSWRdPy5jb2xsZWN0aW9ucy5kZWxldGUoY29sbGVjdGlvbik7XHJcbiAgXHJcbiAgICAgICAgaWYgKHRoaXMuZW5naW5lc1tlbmdpbmVJZF0/LnNlbGVjdGVkID09PSBjb2xsZWN0aW9uKSB7XHJcbiAgICAgICAgICB0aGlzLmVuZ2luZXNbZW5naW5lSWRdLnNlbGVjdGVkID0gbnVsbDtcclxuICAgICAgICAgIHRoaXMudXBkYXRlU2VsZWN0ZWRDb2xsZWN0aW9uT3V0c2lkZVNlcnZpY2UoKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgaWYgKHRlcm1FeGlzdGluZ0l4ICE9PSBudWxsKSB7XHJcbiAgICAgICAgICBjb25zdCBleGlzdGluZ1Rlcm0gPSB0ZXJtUmVzcG9uc2VbdGVybUV4aXN0aW5nSXhdO1xyXG4gICAgICAgICAgY29sbGVjdGlvbi51cGRhdGUoZXhpc3RpbmdUZXJtKTtcclxuICAgICAgICAgIHRlcm1SZXNwb25zZS5zcGxpY2UodGVybUV4aXN0aW5nSXgsIDEpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBjb2xsZWN0aW9uLmRlbGV0ZVRlcm1zKCk7XHJcbiAgICAgICAgfVxyXG4gIFxyXG4gICAgICAgIGlmIChtdEV4aXN0aW5nSXggIT09IG51bGwpIHtcclxuICAgICAgICAgIGNvbnN0IGV4aXN0aW5nTXQgPSBtdFJlc3BvbnNlW210RXhpc3RpbmdJeF07XHJcbiAgICAgICAgICBjb2xsZWN0aW9uLnVwZGF0ZShleGlzdGluZ010KTtcclxuICAgICAgICAgIG10UmVzcG9uc2Uuc3BsaWNlKG10RXhpc3RpbmdJeCwgMSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGNvbGxlY3Rpb24uZGVsZXRlTVQoKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgYWRkQ29sbGVjdGlvbnMobmV3Q29sbGVjdGlvbnM6IEl0ZXJhYmxlPENvbWJpbmVkQ29sbGVjdGlvbj4sIGVuZ2luZUlkOiBzdHJpbmcpIHtcclxuICAgIC8vIHNldHMgY29sbGVjdGlvbiBsaXN0IHRvIHRoaXMgdmFsdWUgYXQgdGhlIGVuZCwgc28gZGVsZXRlZCBjb2xsZWN0aW9ucyBhcmUgbm90IGluIHRoZSBsaXN0LlxyXG4gICAgZm9yIChjb25zdCBjb2xsZWN0aW9uIG9mIG5ld0NvbGxlY3Rpb25zKSB7XHJcbiAgICAgIC8vIFVzZXIgc2hvdWxkbid0IHNlZSBmYWlsZWQgY29sbGVjdGlvbnMgaWYgaGUgY2FuJ3QgcmV0cnkgdG8gaW1wb3J0IHRoZW0uXHJcbiAgICAgIGlmICghdGhpcy5oYXNFZGl0UGVybWlzc2lvbnMgJiYgY29sbGVjdGlvbi5tdFN0YXR1cyA9PT0gTXRDb2xsZWN0aW9uU3RhdHVzLkVSUk9SIHx8IGNvbGxlY3Rpb24ubXRTdGF0dXMgPT09IE10Q29sbGVjdGlvblN0YXR1cy5ERUxFVElORykge1xyXG4gICAgICAgIGNvbnRpbnVlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAoY29sbGVjdGlvbi5pc0ltcG9ydGluZykge1xyXG4gICAgICAgIHRoaXMuZW5naW5lc1tlbmdpbmVJZF0uaXNBbnlJbXBvcnRpbmcgPSB0cnVlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBjb25zdCBleGlzdGluZzogQ29tYmluZWRDb2xsZWN0aW9uIHwgbnVsbCA9IENvbWJpbmVkQ29sbGVjdGlvbi5maW5kRXhpc3RpbmdDb2xsZWN0aW9uRnJvbUxpc3QodGhpcy5lbmdpbmVzW2VuZ2luZUlkXS5jb2xsZWN0aW9ucywgY29sbGVjdGlvbik7XHJcblxyXG4gICAgICAvLyBJZiB0ZXJtIGFwaSBkb2Vzbid0IGhhdmUgZW5naW5lIGxhbmd1YWdlcywgY29sbGVjdGlvbiBzaG91bGQgbm90IGJlIHNob3duIChpZiBpdCBpcyBub3QgYWxyZWFkeSBpbXBvcnRlZCBzb21laG93KTtcclxuICAgICAgaWYgKCFleGlzdGluZyAmJiBjb2xsZWN0aW9uLnNvdXJjZSA9PT0gRW5naW5lVGVybUNvbGxlY3Rpb25Tb3VyY2UuVElMREVfVEVSTSkge1xyXG4gICAgICAgIGxldCBoYXNMYW5ndWFnZXMgPSB0cnVlO1xyXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5lbmdpbmVzW2VuZ2luZUlkXS5lbmdpbmVMYW5ndWFnZXMubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICAgIGlmIChcclxuICAgICAgICAgICAgIWNvbGxlY3Rpb24udGVybUNvbGxlY3Rpb24/Lmxhbmd1YWdlcz8uZmluZChcclxuICAgICAgICAgICAgICAobGFuZykgPT4gbGFuZy5pZCA9PT0gdGhpcy5lbmdpbmVzW2VuZ2luZUlkXS5lbmdpbmVMYW5ndWFnZXNbaV1cclxuICAgICAgICAgICAgKVxyXG4gICAgICAgICAgKSB7XHJcbiAgICAgICAgICAgIGhhc0xhbmd1YWdlcyA9IGZhbHNlO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmICghaGFzTGFuZ3VhZ2VzKSB7XHJcbiAgICAgICAgICBjb250aW51ZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmICghZXhpc3RpbmcpIHtcclxuICAgICAgICB0aGlzLmVuZ2luZXNbZW5naW5lSWRdLmNvbGxlY3Rpb25zLmFkZChjb2xsZWN0aW9uKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBleGlzdGluZy51cGRhdGUoY29sbGVjdGlvbik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmVuZ2luZXNbZW5naW5lSWRdLmhhc0FueUNvbGxlY3Rpb25zID0gdGhpcy5lbmdpbmVzW2VuZ2luZUlkXS5jb2xsZWN0aW9ucy5zaXplID4gMDtcclxuXHJcbiAgICB0aGlzLmVuZ2luZVN1YmplY3QubmV4dCh0aGlzLmVuZ2luZXMpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzY2hlZHVsZVJlZnJlc2goZW5naW5lSWQ6IHN0cmluZywgdGltZW91dD86IG51bWJlciB8IG51bGwsKSB7XHJcbiAgICAvLyBpZiBtZW51IGlzIGNsb3NlZCBhbmQgc2VsZWN0ZWQgY29sbGVjdGlvbiBpcyBub3QgaW1wb3J0aW5nIGFueW1vcmUgLSBhdXRvIHJlZnJlc2hpbmcgc2hvdWxkIGJlIGNhbmNlbGxlZC5cclxuICAgIGlmIChcclxuICAgICAgIXRoaXMuZW5naW5lc1tlbmdpbmVJZF0uaGFyZEF1dG9SZWZyZXNoICYmXHJcbiAgICAgICF0aGlzLmVuZ2luZXNbZW5naW5lSWRdPy5pc0ltcG9ydGluZyAmJlxyXG4gICAgICB0aGlzLmVuZ2luZXNbZW5naW5lSWRdLmlzU29mdEF1dG9SZWZyZXNoT25cclxuICAgICkge1xyXG4gICAgICB0aGlzLnN0b3BBdXRvUmVmcmVzaChlbmdpbmVJZCk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICAvLyBpZiBoYXJkIGF1dG8gcmVmcmVzaG8gb24sIGF1dG8gcmVmcmVzaCBzaG91bGQgYmUgb24uIElmIGhhcmQgYXV0b3JlZmVyZXNoIGlzIG9mZiAsIHJlZnJlc2ggbmVlZHMgdG8gYmUgZG9uZSBvbmx5IGlmIHNlbGVjdGVkIGlzIGltcG9ydGluZy5cclxuICAgIGlmIChcclxuICAgICAgdGhpcy5lbmdpbmVzW2VuZ2luZUlkXS5oYXJkQXV0b1JlZnJlc2ggfHxcclxuICAgICAgKCF0aGlzLmVuZ2luZXNbZW5naW5lSWRdICYmXHJcbiAgICAgICAgKHRoaXMuZW5naW5lc1tlbmdpbmVJZF0uaXNTb2Z0QXV0b1JlZnJlc2hPbiB8fCB0aGlzLmVuZ2luZXNbZW5naW5lSWRdLnNlbGVjdGVkPy5pc0ltcG9ydGluZykpXHJcbiAgICApIHtcclxuICAgICAgY29uc3QgdGltZW91dE1zID1cclxuICAgICAgICB0aW1lb3V0ID8/XHJcbiAgICAgICAgKHRoaXMuZW5naW5lc1tlbmdpbmVJZF0uaXNBbnlJbXBvcnRpbmdcclxuICAgICAgICAgID8gdGhpcy5jb25maWcudGVybUNvbmZpZy5yZWZyZXNoVGltZW91dE1zV2hlbkltcG9ydGluZ1xyXG4gICAgICAgICAgOiB0aGlzLmNvbmZpZy50ZXJtQ29uZmlnLnJlZnJlc2hUaW1lb3V0TXMpO1xyXG4gICAgICAgICAgdGhpcy5lbmdpbmVzW2VuZ2luZUlkXS5yZWZyZXNoVGltZW91dCA9IHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmVuZ2luZXNbZW5naW5lSWRdLnJlZnJlc2hUaW1lb3V0ID0gbnVsbDtcclxuICAgICAgICB0aGlzLmxvYWRDb2xsZWN0aW9ucyhlbmdpbmVJZCk7XHJcbiAgICAgIH0sIHRpbWVvdXRNcyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHN0b3JlU2VsZWN0ZWRJbkxvY2FsU3RvcmFnZShlbmdpbmVJZDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBsZXQgbG9jYWxTdG9yYWdlT2JqZWN0ID0gdGhpcy5yZWFkTG9jYWxTdG9yYWdlKCk7XHJcbiAgICBcclxuICAgIGlmICghbG9jYWxTdG9yYWdlT2JqZWN0KSB7XHJcbiAgICAgIGxvY2FsU3RvcmFnZU9iamVjdCA9IHt9IGFzIGFueTtcclxuICAgIH1cclxuXHJcbiAgICBsb2NhbFN0b3JhZ2VPYmplY3RbZW5naW5lSWRdID0gdGhpcy5lbmdpbmVzW2VuZ2luZUlkXS5zZWxlY3RlZCA/ICh0aGlzLmVuZ2luZXNbZW5naW5lSWRdPy5zZWxlY3RlZD8ubXRDb2xsZWN0aW9uPy5pZCA/PyB0aGlzLmVuZ2luZXNbZW5naW5lSWRdPy5zZWxlY3RlZD8udGVybUNvbGxlY3Rpb24/LmlkKSA6IG51bGw7XHJcbiAgICAvLyBzdG9yZSB0ZXJtIGlkIGlmIGl0IGV4aXN0c1xyXG4gICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0odGhpcy5MT0NBTF9TVE9SQUdFX0tFWSwgSlNPTi5zdHJpbmdpZnkobG9jYWxTdG9yYWdlT2JqZWN0KSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHJlYWRMb2NhbFN0b3JhZ2UoKTogYW55IHtcclxuICAgIGNvbnN0IGRhdGEgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSh0aGlzLkxPQ0FMX1NUT1JBR0VfS0VZKSBhcyBzdHJpbmc7XHJcbiAgICB0cnkge1xyXG4gICAgICByZXR1cm4gSlNPTi5wYXJzZShkYXRhKTtcclxuICAgIH0gY2F0Y2gge1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgdXBkYXRlU2VsZWN0ZWRDb2xsZWN0aW9uT3V0c2lkZVNlcnZpY2UoKTogdm9pZCB7XHJcbiAgICB0aGlzLnVwZGF0ZWRFbmdpbmVzU3ViamVjdC5uZXh0KHRoaXMuZW5naW5lcyk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -25,6 +25,7 @@ export class TerminologyComponent {
|
|
|
25
25
|
this.glossarySelectEvent = new EventEmitter();
|
|
26
26
|
this.menuToggleEvent = new EventEmitter();
|
|
27
27
|
this.isRefreshEnabled = false;
|
|
28
|
+
this.isMenuOpened = false;
|
|
28
29
|
this.destroy = new Subject();
|
|
29
30
|
this.selected = null;
|
|
30
31
|
}
|
|
@@ -61,20 +62,20 @@ export class TerminologyComponent {
|
|
|
61
62
|
}
|
|
62
63
|
openMenu() {
|
|
63
64
|
this.menuToggleEvent.emit(true);
|
|
64
|
-
if (this.subscription && !this.subscription.closed) {
|
|
65
|
-
return;
|
|
66
|
-
}
|
|
67
65
|
this.isRefreshEnabled = true;
|
|
68
|
-
this.
|
|
66
|
+
this.isMenuOpened = true;
|
|
67
|
+
this.terminologyService
|
|
69
68
|
.startAutoRefresh(this.system.systemId)
|
|
70
69
|
.subscribe(() => {
|
|
71
|
-
|
|
70
|
+
const isBackgroundImportCompleted = this.isRefreshEnabled && !this.isMenuOpened && !this.selected?.isImporting;
|
|
71
|
+
if ((!this.isRefreshEnabled && !this.selected?.isImporting) || isBackgroundImportCompleted) {
|
|
72
72
|
this.stopRefresh();
|
|
73
73
|
}
|
|
74
74
|
});
|
|
75
75
|
}
|
|
76
76
|
closeMenu() {
|
|
77
77
|
this.menuToggleEvent.emit(false);
|
|
78
|
+
this.isMenuOpened = false;
|
|
78
79
|
if (this.selected?.isImporting) {
|
|
79
80
|
this.isRefreshEnabled = true;
|
|
80
81
|
return;
|
|
@@ -88,7 +89,6 @@ export class TerminologyComponent {
|
|
|
88
89
|
this.destroy.complete();
|
|
89
90
|
}
|
|
90
91
|
stopRefresh() {
|
|
91
|
-
this.subscription?.unsubscribe();
|
|
92
92
|
this.terminologyService.stopAutoRefresh(this.system.systemId);
|
|
93
93
|
this.isRefreshEnabled = false;
|
|
94
94
|
}
|
|
@@ -134,4 +134,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
134
134
|
}], menuToggleEvent: [{
|
|
135
135
|
type: Output
|
|
136
136
|
}] } });
|
|
137
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVybWlub2xvZ3kuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWNvbW1vbi9zcmMvbGliL3Rlcm1pbm9sb2d5L3Rlcm1pbm9sb2d5LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1jb21tb24vc3JjL2xpYi90ZXJtaW5vbG9neS90ZXJtaW5vbG9neS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQWlDLE1BQU0sRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFFckgsT0FBTyxFQUFFLE9BQU8sRUFBZ0IsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBR3hELE9BQU8sS0FBSyxLQUFLLE1BQU0sU0FBUyxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7O0FBT2pDLE1BQU0sT0FBTyxvQkFBb0I7SUFpQi9CLFlBQTZCLGtCQUFzQyxFQUFtQixXQUF3QjtRQUFqRix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBQW1CLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBYnJHLGdDQUEyQixHQUFHLElBQUksQ0FBQztRQUNuQyx5QkFBb0IsR0FBRyxJQUFJLENBQUM7UUFDM0Isd0JBQW1CLEdBQUcsSUFBSSxZQUFZLEVBQTZCLENBQUM7UUFDcEUsb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRWhELHFCQUFnQixHQUFHLEtBQUssQ0FBQztRQUloQixZQUFPLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUV6QyxhQUFRLEdBQThCLElBQUksQ0FBQztJQUVzRSxDQUFDO0lBRWxILFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLE9BQU8sRUFBRTtZQUNYLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFB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QUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsUUFBUSxDQUFDO2FBQ3BEO1FBQ0gsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDOytHQXhIVSxvQkFBb0I7bUdBQXBCLG9CQUFvQixxWENaakMsdXVGQXNEQTs7NEZEMUNhLG9CQUFvQjtrQkFMaEMsU0FBUzsrQkFDRSxpQkFBaUI7bUlBS2xCLG9CQUFvQjtzQkFBNUIsS0FBSztnQkFDcUIsTUFBTTtzQkFBaEMsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBQ2hCLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csMkJBQTJCO3NCQUFuQyxLQUFLO2dCQUNHLG9CQUFvQjtzQkFBNUIsS0FBSztnQkFDSSxtQkFBbUI7c0JBQTVCLE1BQU07Z0JBQ0csZUFBZTtzQkFBeEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIE9uSW5pdCwgIE91dHB1dCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBUZXJtaW5vbG9neVNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzJztcclxuaW1wb3J0IHsgU3ViamVjdCwgU3Vic2NyaXB0aW9uLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQ29tYmluZWRDb2xsZWN0aW9uIH0gZnJvbSAnLi9tb2RlbHMnO1xyXG5pbXBvcnQgeyBJY29uU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzJztcclxuaW1wb3J0ICogYXMgaWNvbnMgZnJvbSAnLi9pY29ucyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi10ZXJtaW5vbG9neScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3Rlcm1pbm9sb2d5LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90ZXJtaW5vbG9neS5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVGVybWlub2xvZ3lDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgT25DaGFuZ2VzIHtcclxuICBASW5wdXQoKSBzZWxlY3RlZENvbGxlY3Rpb25JZCE6IHN0cmluZztcclxuICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSBzeXN0ZW0hOiB7IHN5c3RlbUlkOiBzdHJpbmc7IHNvdXJjZUxhbmd1YWdlQ29kZTogc3RyaW5nOyB0YXJnZXRMYW5ndWFnZUNvZGU6IHN0cmluZyB9O1xyXG4gIEBJbnB1dCgpIGRpc2FibGVkITogYm9vbGVhbjtcclxuICBASW5wdXQoKSBzdG9yZVNlbGVjdGVkSW5Mb2NhbFN0b3JhZ2UgPSB0cnVlO1xyXG4gIEBJbnB1dCgpIHNob3dNZW51SWNvbk9uTW9iaWxlID0gdHJ1ZTtcclxuICBAT3V0cHV0KCkgZ2xvc3NhcnlTZWxlY3RFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8Q29tYmluZWRDb2xsZWN0aW9uIHwgbnVsbD4oKTtcclxuICBAT3V0cHV0KCkgbWVudVRvZ2dsZUV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xyXG5cclxuICBwcml2YXRlIGlzUmVmcmVzaEVuYWJsZWQgPSBmYWxzZTtcclxuXHJcbiAgcHJpdmF0ZSBzdWJzY3JpcHRpb24hOiBTdWJzY3JpcHRpb247XHJcbiAgcHJpdmF0ZSBwcmVzZXRDb2xsZWN0aW9uU3Vic2NyaXB0aW9uITogU3Vic2NyaXB0aW9uO1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveSA9IG5ldyBTdWJqZWN0KCk7XHJcblxyXG4gIHNlbGVjdGVkOiBDb21iaW5lZENvbGxlY3Rpb24gfCBudWxsID0gbnVsbDtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSB0ZXJtaW5vbG9neVNlcnZpY2U6IFRlcm1pbm9sb2d5U2VydmljZSwgcHJpdmF0ZSByZWFkb25seSBpY29uU2VydmljZTogSWNvblNlcnZpY2UpIHt9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGlmIChjaGFuZ2VzKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWQgPSB0aGlzLnRlcm1pbm9sb2d5U2VydmljZS5lbmdpbmVzW3RoaXMuc3lzdGVtLnN5c3RlbUlkXT8uc2VsZWN0ZWQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuaWNvblNlcnZpY2UucmVnaXN0ZXJJY29ucyhpY29ucyk7XHJcblxyXG4gICAgaWYgKHRoaXMuc2VsZWN0ZWRDb2xsZWN0aW9uSWQpIHtcclxuICAgICAgdGhpcy5wcmVzZXRDb2xsZWN0aW9uKCk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy53YXRjaFN5c3RlbUNoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIHNlbGVjdEdsb3NzYXJ5KGNvbGxlY3Rpb246IENvbWJpbmVkQ29sbGVjdGlvbiB8IG51bGwpOiB2b2lkIHtcclxuICAgIHRoaXMuc2VsZWN0ZWQgPSBjb2xsZWN0aW9uO1xyXG5cclxuICAgIGlmICghY29sbGVjdGlvbj8ubXRDb2xsZWN0aW9uICYmIGNvbGxlY3Rpb24gIT09IG51bGwpIHtcclxuICAgICAgaWYgKHRoaXMudGVybWlub2xvZ3lTZXJ2aWNlLmFkZFRvRW5naW5lVmFsaWRhdGlvbihjb2xsZWN0aW9uKSkge1xyXG4gICAgICAgIHRoaXMudGVybWlub2xvZ3lTZXJ2aWNlLnVwZGF0ZUlmTmVjZXNzYXJ5KGNvbGxlY3Rpb24sIHRoaXMuc3lzdGVtLnN5c3RlbUlkLCB0cnVlKS5zdWJzY3JpYmUoeyBcclxuICAgICAgICAgIG5leHQ6IChyZXMpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5nbG9zc2FyeVNlbGVjdEV2ZW50LmVtaXQocmVzKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBlcnJvcjogKGVycm9yKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMudGVybWlub2xvZ3lTZXJ2aWNlLmhhbmRsZUFkZFRvRW5naW5lRXJyb3IoZXJyb3IsIHRoaXMuc3lzdGVtLnN5c3RlbUlkKVxyXG4gICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5nbG9zc2FyeVNlbGVjdEV2ZW50LmVtaXQoY29sbGVjdGlvbik7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIHRoaXMudGVybWlub2xvZ3lTZXJ2aWNlLnNldFNlbGVjdGVkQ29sbGVjdGlvbih0aGlzLnN5c3RlbS5zeXN0ZW1JZCwgY29sbGVjdGlvbiwgdGhpcy5zdG9yZVNlbGVjdGVkSW5Mb2NhbFN0b3JhZ2UpO1xyXG4gIH1cclxuXHJcbiAgb3Blbk1lbnUoKTogdm9pZCB7XHJcbiAgICB0aGlzLm1lbnVUb2dnbGVFdmVudC5lbWl0KHRydWUpO1xyXG5cclxuICAgIGlmICh0aGlzLnN1YnNjcmlwdGlvbiAmJiAhdGhpcy5zdWJzY3JpcHRpb24uY2xvc2VkKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmlzUmVmcmVzaEVuYWJsZWQgPSB0cnVlO1xyXG5cclxuICAgIHRoaXMuc3Vic2NyaXB0aW9uID0gdGhpcy50ZXJtaW5vbG9neVNlcnZpY2VcclxuICAgICAgLnN0YXJ0QXV0b1JlZnJlc2godGhpcy5zeXN0ZW0uc3lzdGVtSWQpXHJcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgaWYgKCF0aGlzLmlzUmVmcmVzaEVuYWJsZWQgJiYgIXRoaXMuc2VsZWN0ZWQ/LmlzSW1wb3J0aW5nKSB7XHJcbiAgICAgICAgICAgIHRoaXMuc3RvcFJlZnJlc2goKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9LFxyXG4gICAgICApO1xyXG4gIH1cclxuXHJcbiAgY2xvc2VNZW51KCk6IHZvaWQge1xyXG4gICAgdGhpcy5tZW51VG9nZ2xlRXZlbnQuZW1pdChmYWxzZSk7XHJcblxyXG4gICAgaWYgKHRoaXMuc2VsZWN0ZWQ/LmlzSW1wb3J0aW5nKSB7XHJcbiAgICAgIHRoaXMuaXNSZWZyZXNoRW5hYmxlZCA9IHRydWU7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnN0b3BSZWZyZXNoKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMudGVybWlub2xvZ3lTZXJ2aWNlLnJlc2V0RW5naW5lcygpOyAgICBcclxuICAgIHRoaXMuc3RvcFJlZnJlc2goKTtcclxuICAgIHRoaXMuZGVzdHJveS5uZXh0KG51bGwpO1xyXG4gICAgdGhpcy5kZXN0cm95LmNvbXBsZXRlKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHN0b3BSZWZyZXNoKCk6IHZvaWQge1xyXG4gICAgdGhpcy5zdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XHJcbiAgICB0aGlzLnRlcm1pbm9sb2d5U2VydmljZS5zdG9wQXV0b1JlZnJlc2godGhpcy5zeXN0ZW0uc3lzdGVtSWQpO1xyXG4gICAgdGhpcy5pc1JlZnJlc2hFbmFibGVkID0gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHByZXNldENvbGxlY3Rpb24oKTogdm9pZCB7XHJcbiAgICB0aGlzLnByZXNldENvbGxlY3Rpb25TdWJzY3JpcHRpb24gPSB0aGlzLnRlcm1pbm9sb2d5U2VydmljZS5nZXRDb2xsZWN0aW9ucygpLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcbiAgICAgIHJlc1t0aGlzLnN5c3RlbS5zeXN0ZW1JZF0/LmNvbGxlY3Rpb25zLmZvckVhY2goKGNvbGxlY3Rpb24pID0+IHtcclxuICAgICAgICBpZiAoY29sbGVjdGlvbi5tdENvbGxlY3Rpb24/LmlkID09PSB0aGlzLnNlbGVjdGVkQ29sbGVjdGlvbklkIHx8IGNvbGxlY3Rpb24udGVybUlkID09PSB0aGlzLnNlbGVjdGVkQ29sbGVjdGlvbklkKSB7XHJcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkID0gY29sbGVjdGlvbjtcclxuXHJcbiAgICAgICAgICB0aGlzLnRlcm1pbm9sb2d5U2VydmljZS5zZXRTZWxlY3RlZENvbGxlY3Rpb24odGhpcy5zeXN0ZW0uc3lzdGVtSWQsIGNvbGxlY3Rpb24sIGZhbHNlKTtcclxuICAgICAgICAgIHRoaXMucHJlc2V0Q29sbGVjdGlvblN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIHByaXZhdGUgd2F0Y2hTeXN0ZW1DaGFuZ2VzKCk6IHZvaWQge1xyXG4gICAgdGhpcy50ZXJtaW5vbG9neVNlcnZpY2UuZ2V0RW5naW5lc1dpdGhTZWxlY3RlZENvbGxlY3Rpb25DaGFuZ2UoKVxyXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95KSlcclxuICAgICAgLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcbiAgICAgIGlmIChyZXNbdGhpcy5zeXN0ZW0uc3lzdGVtSWRdKSB7XHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZCA9IHJlc1t0aGlzLnN5c3RlbS5zeXN0ZW1JZF0uc2VsZWN0ZWQ7XHJcbiAgICAgIH0gICAgICBcclxuICAgIH0pXHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJnbG9zc2FyeS1tZW51XCIgZnhMYXlvdXRBbGlnbj1cImNlbnRlciBjZW50ZXJcIiBbbmdDbGFzcy5sdC1zbV09XCIndGxkLXRlcm0tY29sbGVjdGlvbi13cmFwcGVyLW1vYmlsZSdcIiBmeExheW91dEdhcD1cIjhweFwiPlxyXG4gIDxzcGFuIGNsYXNzPVwiZ2xvc3NhcnktbGFiZWxcIiBmeEhpZGUubHQtbWQ+XHJcbiAgICB7eyBcIlRFUk1fQ09MTEVDVElPTlMuR0xPU1NBUllcIiB8IHRyYW5zbGF0ZSB9fVxyXG4gIDwvc3Bhbj5cclxuXHJcbiAgPGxpYi1vcGVuLWNsb3NlLWJ1dHRvblxyXG4gICAgKm5nSWY9XCIhc2hvd01lbnVJY29uT25Nb2JpbGU7IGVsc2UgZGVmYXVsdExheW91dFwiXHJcbiAgICBjbGFzcz1cInRsZC1jb2xsZWN0aW9uLW1lbnUtYnV0dG9uXCJcclxuICAgICNzdGF0ZT1cIm1hdE1lbnVUcmlnZ2VyXCJcclxuICAgIFtpc09wZW5lZF09XCJzdGF0ZS5tZW51T3BlblwiXHJcbiAgICAobWVudU9wZW5lZCk9XCJvcGVuTWVudSgpXCJcclxuICAgIChtZW51Q2xvc2VkKT1cImNsb3NlTWVudSgpXCJcclxuICAgIFttYXRNZW51VHJpZ2dlckZvcl09XCJtZW51XCJcclxuICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiJ1RFUk1fQ09MTEVDVElPTlMuQVJJQV9MQUJFTFMuT1RIRVJfQ09MTEVDVElPTlMnIHwgdHJhbnNsYXRlXCJcclxuICAgIFttYXRUb29sdGlwXT1cInNlbGVjdGVkPy5tdENvbGxlY3Rpb24/Lm5hbWUgPz8gc2VsZWN0ZWQ/LnRlcm1Db2xsZWN0aW9uPy5uYW1lID8/ICcnXCJcclxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXHJcbiAgPlxyXG4gICAgPHNwYW4gY2xhc3M9XCJzZWxlY3RlZC1jb2xsZWN0aW9uXCI+XHJcbiAgICAgIHt7IHNlbGVjdGVkPy5tdENvbGxlY3Rpb24/Lm5hbWUgPz8gc2VsZWN0ZWQ/LnRlcm1Db2xsZWN0aW9uPy5uYW1lID8/IChcIlRFUk1fQ09MTEVDVElPTlMuU0VMRUNURURfTk9ORVwiIHwgdHJhbnNsYXRlKSB9fVxyXG4gICAgPC9zcGFuPlxyXG4gICAgPG1hdC1zcGlubmVyICpuZ0lmPVwic2VsZWN0ZWQ/LmlzSW1wb3J0aW5nXCIgY2xhc3M9XCJzZWxlY3RlZC1jb2wtc3Bpbm5lclwiIGNvbG9yPVwiYWNjZW50XCIgZGlhbWV0ZXI9XCIxNlwiPjwvbWF0LXNwaW5uZXI+XHJcbiAgPC9saWItb3Blbi1jbG9zZS1idXR0b24+XHJcblxyXG4gIDxuZy10ZW1wbGF0ZSAjZGVmYXVsdExheW91dD5cclxuICAgIDxsaWItb3Blbi1jbG9zZS1idXR0b25cclxuICAgICAgZnhIaWRlLmx0LXNtXHJcbiAgICAgIGNsYXNzPVwidGxkLWNvbGxlY3Rpb24tbWVudS1idXR0b25cIlxyXG4gICAgICAjc3RhdGU9XCJtYXRNZW51VHJpZ2dlclwiXHJcbiAgICAgIFtpc09wZW5lZF09XCJzdGF0ZS5tZW51T3BlblwiXHJcbiAgICAgIChtZW51T3BlbmVkKT1cIm9wZW5NZW51KClcIlxyXG4gICAgICAobWVudUNsb3NlZCk9XCJjbG9zZU1lbnUoKVwiXHJcbiAgICAgIFttYXRNZW51VHJpZ2dlckZvcl09XCJtZW51XCJcclxuICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCInVEVSTV9DT0xMRUNUSU9OUy5BUklBX0xBQkVMUy5PVEhFUl9DT0xMRUNUSU9OUycgfCB0cmFuc2xhdGVcIlxyXG4gICAgICBbbWF0VG9vbHRpcF09XCJzZWxlY3RlZD8ubXRDb2xsZWN0aW9uPy5uYW1lID8/IHNlbGVjdGVkPy50ZXJtQ29sbGVjdGlvbj8ubmFtZSA/PyAnJ1wiXHJcbiAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXHJcbiAgICA+XHJcbiAgICAgIDxzcGFuIGNsYXNzPVwic2VsZWN0ZWQtY29sbGVjdGlvblwiPlxyXG4gICAgICAgIHt7IHNlbGVjdGVkPy5tdENvbGxlY3Rpb24/Lm5hbWUgPz8gc2VsZWN0ZWQ/LnRlcm1Db2xsZWN0aW9uPy5uYW1lID8/IChcIlRFUk1fQ09MTEVDVElPTlMuU0VMRUNURURfTk9ORVwiIHwgdHJhbnNsYXRlKSB9fVxyXG4gICAgICA8L3NwYW4+XHJcbiAgICAgIDxtYXQtc3Bpbm5lciAqbmdJZj1cInNlbGVjdGVkPy5pc0ltcG9ydGluZ1wiIGNsYXNzPVwic2VsZWN0ZWQtY29sLXNwaW5uZXJcIiBjb2xvcj1cImFjY2VudFwiIGRpYW1ldGVyPVwiMTZcIj48L21hdC1zcGlubmVyPlxyXG4gICAgPC9saWItb3Blbi1jbG9zZS1idXR0b24+XHJcblxyXG4gICAgPGJ1dHRvbiAobWVudU9wZW5lZCk9XCJvcGVuTWVudSgpXCIgKG1lbnVDbG9zZWQpPVwiY2xvc2VNZW51KClcIiBtYXQtaWNvbi1idXR0b24gZnhIaWRlLmd0LXhzICNzdGF0ZT1cIm1hdE1lbnVUcmlnZ2VyXCIgW21hdE1lbnVUcmlnZ2VyRm9yXT1cIm1lbnVcIj5cclxuICAgICAgPG1hdC1pY29uIHN2Z0ljb249XCJjb2xsZWN0aW9uc19tZW51XCIgW2F0dHIuY29sb3JdPVwic2VsZWN0ZWQgPyAnYWNjZW50JyA6ICcnXCI+PC9tYXQtaWNvbj5cclxuICAgIDwvYnV0dG9uPlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcbjwvZGl2PlxyXG5cclxuPG1hdC1tZW51ICNtZW51PVwibWF0TWVudVwiIGNsYXNzPVwidGxkLWNvbGxlY3Rpb24tbWVudVwiPlxyXG4gIDx0bGQtY2xvc2UtYnV0dG9uIGZ4SGlkZS5ndC14cz48L3RsZC1jbG9zZS1idXR0b24+XHJcbiAgPGRpdiBjbGFzcz1cInRsZC10ZXJtLWNvbGxlY3Rpb25cIiAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCIgKGtleWRvd24pPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCI+XHJcbiAgICA8bGliLXRlcm1pbm9sb2d5LXBhbmVsIChnbG9zc2FyeVNlbGVjdEV2ZW50KT1cInNlbGVjdEdsb3NzYXJ5KCRldmVudClcIiBbc3lzdGVtXT1cInN5c3RlbVwiIFtzZWxlY3RlZENvbGxlY3Rpb25dPVwic2VsZWN0ZWRcIj48L2xpYi10ZXJtaW5vbG9neS1wYW5lbD5cclxuICA8L2Rpdj5cclxuPC9tYXQtbWVudT5cclxuIl19
|
|
137
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVybWlub2xvZ3kuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWNvbW1vbi9zcmMvbGliL3Rlcm1pbm9sb2d5L3Rlcm1pbm9sb2d5LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1jb21tb24vc3JjL2xpYi90ZXJtaW5vbG9neS90ZXJtaW5vbG9neS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQWlDLE1BQU0sRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFFckgsT0FBTyxFQUFFLE9BQU8sRUFBZ0IsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBR3hELE9BQU8sS0FBSyxLQUFLLE1BQU0sU0FBUyxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7O0FBT2pDLE1BQU0sT0FBTyxvQkFBb0I7SUFpQi9CLFlBQTZCLGtCQUFzQyxFQUFtQixXQUF3QjtRQUFqRix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBQW1CLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBYnJHLGdDQUEyQixHQUFHLElBQUksQ0FBQztRQUNuQyx5QkFBb0IsR0FBRyxJQUFJLENBQUM7UUFDM0Isd0JBQW1CLEdBQUcsSUFBSSxZQUFZLEVBQTZCLENBQUM7UUFDcEUsb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRWhELHFCQUFnQixHQUFHLEtBQUssQ0FBQztRQUN6QixpQkFBWSxHQUFHLEtBQUssQ0FBQztRQUdaLFlBQU8sR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO1FBRXpDLGFBQVEsR0FBOEIsSUFBSSxDQUFDO0lBRXNFLENBQUM7SUFFbEgsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksT0FBTyxFQUFFO1lBQ1gsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENB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LElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEVBQUU7Z0JBQzdCLElBQUksQ0FBQyxRQUFRLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsUUFBUSxDQUFDO2FBQ3BEO1FBQ0gsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDOytHQXpIVSxvQkFBb0I7bUdBQXBCLG9CQUFvQixxWENaakMsdXVGQXNEQTs7NEZEMUNhLG9CQUFvQjtrQkFMaEMsU0FBUzsrQkFDRSxpQkFBaUI7bUlBS2xCLG9CQUFvQjtzQkFBNUIsS0FBSztnQkFDcUIsTUFBTTtzQkFBaEMsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBQ2hCLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csMkJBQTJCO3NCQUFuQyxLQUFLO2dCQUNHLG9CQUFvQjtzQkFBNUIsS0FBSztnQkFDSSxtQkFBbUI7c0JBQTVCLE1BQU07Z0JBQ0csZUFBZTtzQkFBeEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIE9uSW5pdCwgIE91dHB1dCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBUZXJtaW5vbG9neVNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzJztcclxuaW1wb3J0IHsgU3ViamVjdCwgU3Vic2NyaXB0aW9uLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQ29tYmluZWRDb2xsZWN0aW9uIH0gZnJvbSAnLi9tb2RlbHMnO1xyXG5pbXBvcnQgeyBJY29uU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzJztcclxuaW1wb3J0ICogYXMgaWNvbnMgZnJvbSAnLi9pY29ucyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi10ZXJtaW5vbG9neScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3Rlcm1pbm9sb2d5LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90ZXJtaW5vbG9neS5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVGVybWlub2xvZ3lDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgT25DaGFuZ2VzIHtcclxuICBASW5wdXQoKSBzZWxlY3RlZENvbGxlY3Rpb25JZCE6IHN0cmluZztcclxuICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSBzeXN0ZW0hOiB7IHN5c3RlbUlkOiBzdHJpbmc7IHNvdXJjZUxhbmd1YWdlQ29kZTogc3RyaW5nOyB0YXJnZXRMYW5ndWFnZUNvZGU6IHN0cmluZyB9O1xyXG4gIEBJbnB1dCgpIGRpc2FibGVkITogYm9vbGVhbjtcclxuICBASW5wdXQoKSBzdG9yZVNlbGVjdGVkSW5Mb2NhbFN0b3JhZ2UgPSB0cnVlO1xyXG4gIEBJbnB1dCgpIHNob3dNZW51SWNvbk9uTW9iaWxlID0gdHJ1ZTtcclxuICBAT3V0cHV0KCkgZ2xvc3NhcnlTZWxlY3RFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8Q29tYmluZWRDb2xsZWN0aW9uIHwgbnVsbD4oKTtcclxuICBAT3V0cHV0KCkgbWVudVRvZ2dsZUV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xyXG5cclxuICBwcml2YXRlIGlzUmVmcmVzaEVuYWJsZWQgPSBmYWxzZTtcclxuICBwcml2YXRlIGlzTWVudU9wZW5lZCA9IGZhbHNlO1xyXG5cclxuICBwcml2YXRlIHByZXNldENvbGxlY3Rpb25TdWJzY3JpcHRpb24hOiBTdWJzY3JpcHRpb247XHJcbiAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95ID0gbmV3IFN1YmplY3QoKTtcclxuXHJcbiAgc2VsZWN0ZWQ6IENvbWJpbmVkQ29sbGVjdGlvbiB8IG51bGwgPSBudWxsO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHRlcm1pbm9sb2d5U2VydmljZTogVGVybWlub2xvZ3lTZXJ2aWNlLCBwcml2YXRlIHJlYWRvbmx5IGljb25TZXJ2aWNlOiBJY29uU2VydmljZSkge31cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgaWYgKGNoYW5nZXMpIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZCA9IHRoaXMudGVybWlub2xvZ3lTZXJ2aWNlLmVuZ2luZXNbdGhpcy5zeXN0ZW0uc3lzdGVtSWRdPy5zZWxlY3RlZDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5pY29uU2VydmljZS5yZWdpc3Rlckljb25zKGljb25zKTtcclxuXHJcbiAgICBpZiAodGhpcy5zZWxlY3RlZENvbGxlY3Rpb25JZCkge1xyXG4gICAgICB0aGlzLnByZXNldENvbGxlY3Rpb24oKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLndhdGNoU3lzdGVtQ2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgc2VsZWN0R2xvc3NhcnkoY29sbGVjdGlvbjogQ29tYmluZWRDb2xsZWN0aW9uIHwgbnVsbCk6IHZvaWQge1xyXG4gICAgdGhpcy5zZWxlY3RlZCA9IGNvbGxlY3Rpb247XHJcblxyXG4gICAgaWYgKCFjb2xsZWN0aW9uPy5tdENvbGxlY3Rpb24gJiYgY29sbGVjdGlvbiAhPT0gbnVsbCkge1xyXG4gICAgICBpZiAodGhpcy50ZXJtaW5vbG9neVNlcnZpY2UuYWRkVG9FbmdpbmVWYWxpZGF0aW9uKGNvbGxlY3Rpb24pKSB7XHJcbiAgICAgICAgdGhpcy50ZXJtaW5vbG9neVNlcnZpY2UudXBkYXRlSWZOZWNlc3NhcnkoY29sbGVjdGlvbiwgdGhpcy5zeXN0ZW0uc3lzdGVtSWQsIHRydWUpLnN1YnNjcmliZSh7IFxyXG4gICAgICAgICAgbmV4dDogKHJlcykgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmdsb3NzYXJ5U2VsZWN0RXZlbnQuZW1pdChyZXMpO1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIGVycm9yOiAoZXJyb3IpID0+IHtcclxuICAgICAgICAgICAgdGhpcy50ZXJtaW5vbG9neVNlcnZpY2UuaGFuZGxlQWRkVG9FbmdpbmVFcnJvcihlcnJvciwgdGhpcy5zeXN0ZW0uc3lzdGVtSWQpXHJcbiAgICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmdsb3NzYXJ5U2VsZWN0RXZlbnQuZW1pdChjb2xsZWN0aW9uKTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgdGhpcy50ZXJtaW5vbG9neVNlcnZpY2Uuc2V0U2VsZWN0ZWRDb2xsZWN0aW9uKHRoaXMuc3lzdGVtLnN5c3RlbUlkLCBjb2xsZWN0aW9uLCB0aGlzLnN0b3JlU2VsZWN0ZWRJbkxvY2FsU3RvcmFnZSk7XHJcbiAgfVxyXG5cclxuICBvcGVuTWVudSgpOiB2b2lkIHtcclxuICAgIHRoaXMubWVudVRvZ2dsZUV2ZW50LmVtaXQodHJ1ZSk7XHJcblxyXG4gICAgdGhpcy5pc1JlZnJlc2hFbmFibGVkID0gdHJ1ZTtcclxuICAgIHRoaXMuaXNNZW51T3BlbmVkID0gdHJ1ZTtcclxuXHJcbiAgICB0aGlzLnRlcm1pbm9sb2d5U2VydmljZVxyXG4gICAgICAuc3RhcnRBdXRvUmVmcmVzaCh0aGlzLnN5c3RlbS5zeXN0ZW1JZClcclxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICBjb25zdCBpc0JhY2tncm91bmRJbXBvcnRDb21wbGV0ZWQgPSBcclxuICAgICAgICAgICAgdGhpcy5pc1JlZnJlc2hFbmFibGVkICYmICF0aGlzLmlzTWVudU9wZW5lZCAmJiAhdGhpcy5zZWxlY3RlZD8uaXNJbXBvcnRpbmc7XHJcblxyXG4gICAgICAgICAgaWYgKCghdGhpcy5pc1JlZnJlc2hFbmFibGVkICYmICF0aGlzLnNlbGVjdGVkPy5pc0ltcG9ydGluZykgfHwgaXNCYWNrZ3JvdW5kSW1wb3J0Q29tcGxldGVkKSB7XHJcbiAgICAgICAgICAgIHRoaXMuc3RvcFJlZnJlc2goKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9LFxyXG4gICAgICApO1xyXG4gIH1cclxuXHJcbiAgY2xvc2VNZW51KCk6IHZvaWQge1xyXG4gICAgdGhpcy5tZW51VG9nZ2xlRXZlbnQuZW1pdChmYWxzZSk7XHJcblxyXG4gICAgdGhpcy5pc01lbnVPcGVuZWQgPSBmYWxzZTtcclxuXHJcbiAgICBpZiAodGhpcy5zZWxlY3RlZD8uaXNJbXBvcnRpbmcpIHtcclxuICAgICAgdGhpcy5pc1JlZnJlc2hFbmFibGVkID0gdHJ1ZTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuc3RvcFJlZnJlc2goKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy50ZXJtaW5vbG9neVNlcnZpY2UucmVzZXRFbmdpbmVzKCk7ICAgIFxyXG4gICAgdGhpcy5zdG9wUmVmcmVzaCgpO1xyXG4gICAgdGhpcy5kZXN0cm95Lm5leHQobnVsbCk7XHJcbiAgICB0aGlzLmRlc3Ryb3kuY29tcGxldGUoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc3RvcFJlZnJlc2goKTogdm9pZCB7XHJcbiAgICB0aGlzLnRlcm1pbm9sb2d5U2VydmljZS5zdG9wQXV0b1JlZnJlc2godGhpcy5zeXN0ZW0uc3lzdGVtSWQpO1xyXG4gICAgdGhpcy5pc1JlZnJlc2hFbmFibGVkID0gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHByZXNldENvbGxlY3Rpb24oKTogdm9pZCB7XHJcbiAgICB0aGlzLnByZXNldENvbGxlY3Rpb25TdWJzY3JpcHRpb24gPSB0aGlzLnRlcm1pbm9sb2d5U2VydmljZS5nZXRDb2xsZWN0aW9ucygpLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcbiAgICAgIHJlc1t0aGlzLnN5c3RlbS5zeXN0ZW1JZF0/LmNvbGxlY3Rpb25zLmZvckVhY2goKGNvbGxlY3Rpb24pID0+IHtcclxuICAgICAgICBpZiAoY29sbGVjdGlvbi5tdENvbGxlY3Rpb24/LmlkID09PSB0aGlzLnNlbGVjdGVkQ29sbGVjdGlvbklkIHx8IGNvbGxlY3Rpb24udGVybUlkID09PSB0aGlzLnNlbGVjdGVkQ29sbGVjdGlvbklkKSB7XHJcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkID0gY29sbGVjdGlvbjtcclxuXHJcbiAgICAgICAgICB0aGlzLnRlcm1pbm9sb2d5U2VydmljZS5zZXRTZWxlY3RlZENvbGxlY3Rpb24odGhpcy5zeXN0ZW0uc3lzdGVtSWQsIGNvbGxlY3Rpb24sIGZhbHNlKTtcclxuICAgICAgICAgIHRoaXMucHJlc2V0Q29sbGVjdGlvblN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIHByaXZhdGUgd2F0Y2hTeXN0ZW1DaGFuZ2VzKCk6IHZvaWQge1xyXG4gICAgdGhpcy50ZXJtaW5vbG9neVNlcnZpY2UuZ2V0RW5naW5lc1dpdGhTZWxlY3RlZENvbGxlY3Rpb25DaGFuZ2UoKVxyXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95KSlcclxuICAgICAgLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcbiAgICAgIGlmIChyZXNbdGhpcy5zeXN0ZW0uc3lzdGVtSWRdKSB7XHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZCA9IHJlc1t0aGlzLnN5c3RlbS5zeXN0ZW1JZF0uc2VsZWN0ZWQ7XHJcbiAgICAgIH0gICAgICBcclxuICAgIH0pXHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJnbG9zc2FyeS1tZW51XCIgZnhMYXlvdXRBbGlnbj1cImNlbnRlciBjZW50ZXJcIiBbbmdDbGFzcy5sdC1zbV09XCIndGxkLXRlcm0tY29sbGVjdGlvbi13cmFwcGVyLW1vYmlsZSdcIiBmeExheW91dEdhcD1cIjhweFwiPlxyXG4gIDxzcGFuIGNsYXNzPVwiZ2xvc3NhcnktbGFiZWxcIiBmeEhpZGUubHQtbWQ+XHJcbiAgICB7eyBcIlRFUk1fQ09MTEVDVElPTlMuR0xPU1NBUllcIiB8IHRyYW5zbGF0ZSB9fVxyXG4gIDwvc3Bhbj5cclxuXHJcbiAgPGxpYi1vcGVuLWNsb3NlLWJ1dHRvblxyXG4gICAgKm5nSWY9XCIhc2hvd01lbnVJY29uT25Nb2JpbGU7IGVsc2UgZGVmYXVsdExheW91dFwiXHJcbiAgICBjbGFzcz1cInRsZC1jb2xsZWN0aW9uLW1lbnUtYnV0dG9uXCJcclxuICAgICNzdGF0ZT1cIm1hdE1lbnVUcmlnZ2VyXCJcclxuICAgIFtpc09wZW5lZF09XCJzdGF0ZS5tZW51T3BlblwiXHJcbiAgICAobWVudU9wZW5lZCk9XCJvcGVuTWVudSgpXCJcclxuICAgIChtZW51Q2xvc2VkKT1cImNsb3NlTWVudSgpXCJcclxuICAgIFttYXRNZW51VHJpZ2dlckZvcl09XCJtZW51XCJcclxuICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiJ1RFUk1fQ09MTEVDVElPTlMuQVJJQV9MQUJFTFMuT1RIRVJfQ09MTEVDVElPTlMnIHwgdHJhbnNsYXRlXCJcclxuICAgIFttYXRUb29sdGlwXT1cInNlbGVjdGVkPy5tdENvbGxlY3Rpb24/Lm5hbWUgPz8gc2VsZWN0ZWQ/LnRlcm1Db2xsZWN0aW9uPy5uYW1lID8/ICcnXCJcclxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXHJcbiAgPlxyXG4gICAgPHNwYW4gY2xhc3M9XCJzZWxlY3RlZC1jb2xsZWN0aW9uXCI+XHJcbiAgICAgIHt7IHNlbGVjdGVkPy5tdENvbGxlY3Rpb24/Lm5hbWUgPz8gc2VsZWN0ZWQ/LnRlcm1Db2xsZWN0aW9uPy5uYW1lID8/IChcIlRFUk1fQ09MTEVDVElPTlMuU0VMRUNURURfTk9ORVwiIHwgdHJhbnNsYXRlKSB9fVxyXG4gICAgPC9zcGFuPlxyXG4gICAgPG1hdC1zcGlubmVyICpuZ0lmPVwic2VsZWN0ZWQ/LmlzSW1wb3J0aW5nXCIgY2xhc3M9XCJzZWxlY3RlZC1jb2wtc3Bpbm5lclwiIGNvbG9yPVwiYWNjZW50XCIgZGlhbWV0ZXI9XCIxNlwiPjwvbWF0LXNwaW5uZXI+XHJcbiAgPC9saWItb3Blbi1jbG9zZS1idXR0b24+XHJcblxyXG4gIDxuZy10ZW1wbGF0ZSAjZGVmYXVsdExheW91dD5cclxuICAgIDxsaWItb3Blbi1jbG9zZS1idXR0b25cclxuICAgICAgZnhIaWRlLmx0LXNtXHJcbiAgICAgIGNsYXNzPVwidGxkLWNvbGxlY3Rpb24tbWVudS1idXR0b25cIlxyXG4gICAgICAjc3RhdGU9XCJtYXRNZW51VHJpZ2dlclwiXHJcbiAgICAgIFtpc09wZW5lZF09XCJzdGF0ZS5tZW51T3BlblwiXHJcbiAgICAgIChtZW51T3BlbmVkKT1cIm9wZW5NZW51KClcIlxyXG4gICAgICAobWVudUNsb3NlZCk9XCJjbG9zZU1lbnUoKVwiXHJcbiAgICAgIFttYXRNZW51VHJpZ2dlckZvcl09XCJtZW51XCJcclxuICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCInVEVSTV9DT0xMRUNUSU9OUy5BUklBX0xBQkVMUy5PVEhFUl9DT0xMRUNUSU9OUycgfCB0cmFuc2xhdGVcIlxyXG4gICAgICBbbWF0VG9vbHRpcF09XCJzZWxlY3RlZD8ubXRDb2xsZWN0aW9uPy5uYW1lID8/IHNlbGVjdGVkPy50ZXJtQ29sbGVjdGlvbj8ubmFtZSA/PyAnJ1wiXHJcbiAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXHJcbiAgICA+XHJcbiAgICAgIDxzcGFuIGNsYXNzPVwic2VsZWN0ZWQtY29sbGVjdGlvblwiPlxyXG4gICAgICAgIHt7IHNlbGVjdGVkPy5tdENvbGxlY3Rpb24/Lm5hbWUgPz8gc2VsZWN0ZWQ/LnRlcm1Db2xsZWN0aW9uPy5uYW1lID8/IChcIlRFUk1fQ09MTEVDVElPTlMuU0VMRUNURURfTk9ORVwiIHwgdHJhbnNsYXRlKSB9fVxyXG4gICAgICA8L3NwYW4+XHJcbiAgICAgIDxtYXQtc3Bpbm5lciAqbmdJZj1cInNlbGVjdGVkPy5pc0ltcG9ydGluZ1wiIGNsYXNzPVwic2VsZWN0ZWQtY29sLXNwaW5uZXJcIiBjb2xvcj1cImFjY2VudFwiIGRpYW1ldGVyPVwiMTZcIj48L21hdC1zcGlubmVyPlxyXG4gICAgPC9saWItb3Blbi1jbG9zZS1idXR0b24+XHJcblxyXG4gICAgPGJ1dHRvbiAobWVudU9wZW5lZCk9XCJvcGVuTWVudSgpXCIgKG1lbnVDbG9zZWQpPVwiY2xvc2VNZW51KClcIiBtYXQtaWNvbi1idXR0b24gZnhIaWRlLmd0LXhzICNzdGF0ZT1cIm1hdE1lbnVUcmlnZ2VyXCIgW21hdE1lbnVUcmlnZ2VyRm9yXT1cIm1lbnVcIj5cclxuICAgICAgPG1hdC1pY29uIHN2Z0ljb249XCJjb2xsZWN0aW9uc19tZW51XCIgW2F0dHIuY29sb3JdPVwic2VsZWN0ZWQgPyAnYWNjZW50JyA6ICcnXCI+PC9tYXQtaWNvbj5cclxuICAgIDwvYnV0dG9uPlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcbjwvZGl2PlxyXG5cclxuPG1hdC1tZW51ICNtZW51PVwibWF0TWVudVwiIGNsYXNzPVwidGxkLWNvbGxlY3Rpb24tbWVudVwiPlxyXG4gIDx0bGQtY2xvc2UtYnV0dG9uIGZ4SGlkZS5ndC14cz48L3RsZC1jbG9zZS1idXR0b24+XHJcbiAgPGRpdiBjbGFzcz1cInRsZC10ZXJtLWNvbGxlY3Rpb25cIiAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCIgKGtleWRvd24pPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCI+XHJcbiAgICA8bGliLXRlcm1pbm9sb2d5LXBhbmVsIChnbG9zc2FyeVNlbGVjdEV2ZW50KT1cInNlbGVjdEdsb3NzYXJ5KCRldmVudClcIiBbc3lzdGVtXT1cInN5c3RlbVwiIFtzZWxlY3RlZENvbGxlY3Rpb25dPVwic2VsZWN0ZWRcIj48L2xpYi10ZXJtaW5vbG9neS1wYW5lbD5cclxuICA8L2Rpdj5cclxuPC9tYXQtbWVudT5cclxuIl19
|