@colijnit/transaction 255.1.9 → 255.1.11

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.
@@ -42,13 +42,24 @@ export class AddProductComponent {
42
42
  this.searchText = undefined;
43
43
  this._changeDetector.detectChanges();
44
44
  // first check if there's a single article found
45
- const foundArticles = yield this.transactionService.getArticles(this.catalogParameters);
46
- if (foundArticles && foundArticles.length === 1) {
47
- const article = yield this.transactionService.getArticleExtended(foundArticles[0].articleNumber);
45
+ // This is a two check step:
46
+ // Check if there is an exact match on barcode, ean or articlenumber
47
+ // if not: check with search like
48
+ // else open catalogus
49
+ const fullMatchSearch = yield this.transactionService.getArticleListWithBarcodeArticleNrEanCode(text);
50
+ if (fullMatchSearch && fullMatchSearch.length === 1) {
51
+ const article = yield this.transactionService.getArticleExtended(fullMatchSearch[0].articleNr);
48
52
  yield this.handleAddArticle(article);
49
53
  }
50
- else { // else open the catalog
51
- this.showCatalogDialog();
54
+ else {
55
+ const foundArticles = yield this.transactionService.getArticles(this.catalogParameters);
56
+ if (foundArticles && foundArticles.length === 1) {
57
+ const article = yield this.transactionService.getArticleExtended(foundArticles[0].articleNumber);
58
+ yield this.handleAddArticle(article);
59
+ }
60
+ else {
61
+ this.showCatalogDialog();
62
+ }
52
63
  }
53
64
  });
54
65
  }
@@ -220,4 +231,4 @@ AddProductComponent.propDecorators = {
220
231
  showClass: [{ type: HostBinding, args: ['class.co-add-product',] }],
221
232
  return: [{ type: HostBinding, args: ['class.return',] }]
222
233
  };
223
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLXByb2R1Y3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJhbnNhY3Rpb24vc3JjL2xpYi9jb21wb25lbnQvYWRkLXByb2R1Y3QvYWRkLXByb2R1Y3QuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osV0FBVyxFQUNYLEtBQUssRUFDTCxNQUFNLEVBQ04sU0FBUyxFQUNULGlCQUFpQixFQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sc0RBQXNELENBQUM7QUFDckYsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQzFDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQ2xFLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBR3JFLE9BQU8sRUFDTCxnQ0FBZ0MsRUFDakMsTUFBTSwyRUFBMkUsQ0FBQztBQUNuRixPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSxpRUFBaUUsQ0FBQztBQThDckcsTUFBTSxPQUFPLG1CQUFtQjtJQWtDOUIsWUFDUyxXQUE2QixFQUM3QixrQkFBc0MsRUFDckMsZUFBa0M7UUFGbkMsZ0JBQVcsR0FBWCxXQUFXLENBQWtCO1FBQzdCLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDckMsb0JBQWUsR0FBZixlQUFlLENBQW1CO1FBcEM1QixVQUFLLEdBQWdCLElBQUksQ0FBQztRQUduQywrQkFBMEIsR0FBWSxJQUFJLENBQUM7UUFHM0MsZUFBVSxHQUFzQyxJQUFJLFlBQVksRUFBdUIsQ0FBQztRQVV4RixXQUFNLEdBQVksS0FBSyxDQUFDO1FBRXhCLG1CQUFjLEdBQVE7WUFDM0IsYUFBYSxFQUFFLElBQUk7WUFDbkIsYUFB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LENBQUMseUJBQXlCLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDbkUsQ0FBQztLQUFBO0lBRU8sc0JBQXNCO1FBQzVCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQztRQUNqRCxJQUFJLENBQUMsaUJBQWlCLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDO1FBQ2xELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxzQkFBc0IsR0FBRyxLQUFLLENBQUM7UUFDdEQsSUFBSSxDQUFDLGlCQUFpQixDQUFDLHdCQUF3QixHQUFHLElBQUksQ0FBQztRQUN2RCxJQUFJLENBQUMsaUJBQWlCLENBQUMsdUJBQXVCLEdBQUcsS0FBSyxDQUFDO1FBQ3ZELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxzQkFBc0IsR0FBRyxLQUFLLENBQUM7UUFDdEQsSUFBSSxDQUFDLGlCQUFpQixDQUFDLG9CQUFvQixHQUFHLEtBQUssQ0FBQztRQUNwRCxJQUFJLENBQUMsaUJBQWlCLENBQUMsZUFBZSxHQUFHLEVBQUUsQ0FBQyxDQUFDLGtCQUFrQjtRQUMvRCxJQUFJLENBQUMsaUJBQWlCLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDaEQsQ0FBQzs7O1lBek5GLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO2dCQUMxQixRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQThCVDtnQkFDRCxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTthQUN0Qzs7O1lBcERPLGdCQUFnQjtZQUNoQixrQkFBa0I7WUFaeEIsaUJBQWlCOzs7eUNBbUVoQixLQUFLO3lCQUdMLE1BQU07OEJBR04sU0FBUyxTQUFDLGFBQWE7d0JBRXZCLFdBQVcsU0FBQyxzQkFBc0I7cUJBS2xDLFdBQVcsU0FBQyxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDb21wb25lbnQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIEhvc3RCaW5kaW5nLFxyXG4gIElucHV0LFxyXG4gIE91dHB1dCxcclxuICBWaWV3Q2hpbGQsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb25cclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtBcnRpY2xlRXh0ZW5kZWR9IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtZXh0ZW5kZWQuYm8nO1xyXG5pbXBvcnQge0ljb259IGZyb20gJy4uLy4uL2VudW0vaWNvbi5lbnVtJztcclxuaW1wb3J0IHtJY29uQ2FjaGVTZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlL2ljb24tY2FjaGUuc2VydmljZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25TZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQge0FydGljbGVMaWdodH0gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1saWdodC5ibyc7XHJcbmltcG9ydCB7U2FmZUh0bWx9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xyXG5pbXBvcnQge1xyXG4gIEV4dGVybmFsQ2F0YWxvZ0FkZEFydGljbGVSZXF1ZXN0XHJcbn0gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL2V4dGVybmFsLWNhdGFsb2ctYWRkLWFydGljbGUtcmVxdWVzdCc7XHJcbmltcG9ydCB7RXh0ZXJuYWxDYXRhbG9nVHlwZXN9IGZyb20gJ0Bjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9lbnVtL2V4dGVybmFsLWNhdGFsb2ctdHlwZXMuZW51bSc7XHJcbmltcG9ydCB7SW5wdXRTY2FubmVyQ29tcG9uZW50fSBmcm9tIFwiQGNvbGlqbml0L2NvcmVjb21wb25lbnRzX3YxMlwiO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBBZGRBcnRpY2xlSW50ZXJmYWNlIHtcclxuICBhcnRpY2xlOiBBcnRpY2xlRXh0ZW5kZWQ7XHJcbiAgcXVhbnRpdHk6IG51bWJlcjtcclxuICBhYm92ZUxpbmVOcjogbnVtYmVyO1xyXG4gIGJlbG93TGluZU5yOiBudW1iZXI7XHJcbiAgbGFzdEFydGljbGU6IGJvb2xlYW47XHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnY28tYWRkLXByb2R1Y3QnLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8Y28taW5wdXQtc2Nhbm5lclxyXG4gICAgICAjaW5wdXRTZWFyY2hcclxuICAgICAgW2N1c3RvbUNzc0NsYXNzXT1cIiduby1mb2N1cy1saW5lJ1wiXHJcbiAgICAgIFsobW9kZWwpXT1cInNlYXJjaFRleHRcIlxyXG4gICAgICBbcGxhY2Vob2xkZXJdPVwiJ1NFQVJDSF9BRERfQVJUSUNMRScgfCBsb2NhbGl6ZVwiXHJcbiAgICAgIFtjZW50ZXJMYWJlbF09XCJ0cnVlXCJcclxuICAgICAgW3VzZUxlZnRJY29uXT1cInRydWVcIlxyXG4gICAgICBbbGVmdEljb25EYXRhXT1cInJldHVybiA/IGNhcnRNaW5JY29uIDogY2FydFBsdXNJY29uXCJcclxuICAgICAgW3VzZVJpZ2h0SWNvbl09XCJ0cnVlXCJcclxuICAgICAgKGxlZnRJY29uQ2xpY2spPVwiaGFuZGxlQ2FydEljb25DbGljaygkZXZlbnQpXCJcclxuICAgICAgKHJpZ2h0SWNvbkNsaWNrKT1cImhhbmRsZVNlYXJjaEljb25DbGljaygpXCJcclxuICAgICAgKGJhckNvZGVTY2FubmVkKT1cImhhbmRsZVNlYXJjaCgkZXZlbnQpXCJcclxuICAgICAgKHNlYXJjaCk9XCJoYW5kbGVTZWFyY2goJGV2ZW50KVwiXHJcbiAgICAgIChpc0ZvY3VzZWQpPVwiaGFuZGxlSW5wdXRGb2N1cygkZXZlbnQpXCJcclxuICAgID48L2NvLWlucHV0LXNjYW5uZXI+XHJcbiAgICA8Y28tZGlhbG9nLWNhdGFsb2cgKm5nSWY9XCJzaG93Q2F0YWxvZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgW29wdGlvbnNdPVwiY2F0YWxvZ09wdGlvbnNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFtwYXJhbWV0ZXJzXT1cImNhdGFsb2dQYXJhbWV0ZXJzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbaGFuZGxlQWRkQXJ0aWNsZUludGVybmFsbHldPVwiaGFuZGxlQWRkQXJ0aWNsZUludGVybmFsbHlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFtzaG93TmF2aWdhdGlvbl09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbaXNSZXR1cm5dPVwidGhpcy5yZXR1cm5cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFt0cmFuc2FjdGlvbl09XCJ0cmFuc2FjdGlvblNlcnZpY2UuY3VycmVudFRyYW5zYWN0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAoY2xvc2VDbGljayk9XCJzaG93Q2F0YWxvZyA9IGZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAoYXJ0aWNsZUNsaWNrZWQpPVwiaGFuZGxlQ2F0YWxvZ0FydGljbGVDbGljaygkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAoYWRkQXJ0aWNsZUNsaWNrZWQpPVwiaGFuZGxlQWRkQXJ0aWNsZUNsaWNrKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIChhZGRDYXRGYXJtQXJ0aWNsZUNsaWNrZWQpPVwiaGFuZGxlQWRkQ2F0RmFybUFydGljbGVDbGljaygkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAoaUZyYW1lRmVlZGJhY2spPVwiaGFuZGxlSUZyYW1lRmVlZGJhY2soJGV2ZW50KVwiXHJcbiAgICA+XHJcbiAgICA8L2NvLWRpYWxvZy1jYXRhbG9nPlxyXG4gIGAsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWRkUHJvZHVjdENvbXBvbmVudCB7XHJcbiAgcHVibGljIHJlYWRvbmx5IGljb25zOiB0eXBlb2YgSWNvbiA9IEljb247XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGhhbmRsZUFkZEFydGljbGVJbnRlcm5hbGx5OiBib29sZWFuID0gdHJ1ZTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIGFkZEFydGljbGU6IEV2ZW50RW1pdHRlcjxBZGRBcnRpY2xlSW50ZXJmYWNlPiA9IG5ldyBFdmVudEVtaXR0ZXI8QWRkQXJ0aWNsZUludGVyZmFjZT4oKTtcclxuXHJcbiAgQFZpZXdDaGlsZCgnaW5wdXRTZWFyY2gnKSBwdWJsaWMgaW5wdXRTZWFyY2hUZXh0OiBJbnB1dFNjYW5uZXJDb21wb25lbnQ7XHJcblxyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuY28tYWRkLXByb2R1Y3QnKVxyXG4gIHB1YmxpYyBzaG93Q2xhc3MoKSB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIEBIb3N0QmluZGluZygnY2xhc3MucmV0dXJuJylcclxuICBwdWJsaWMgcmV0dXJuOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIHB1YmxpYyBjYXRhbG9nT3B0aW9uczogYW55ID0ge1xyXG4gICAgc2VhcmNoT25TdGFydDogdHJ1ZSxcclxuICAgIHNob3dBZGRUb0NhcnQ6IGZhbHNlLFxyXG4gICAgc2hvd0xvb2tBdEFydGljbGVCdXR0b246IGZhbHNlLFxyXG4gICAgc2hvd0FkZEFydGljbGVCdXR0b246IHRydWUsXHJcbiAgICBvbmx5VGhyZWVEOiBmYWxzZVxyXG4gIH07XHJcbiAgcHVibGljIGNhdGFsb2dQYXJhbWV0ZXJzOiBhbnkgPSB7fTtcclxuICBwdWJsaWMgc2hvd0NhdGFsb2c6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgaXNTZWFyY2hJbnB1dEZvY3VzZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgc2VhcmNoVGV4dDogc3RyaW5nO1xyXG5cclxuICBwdWJsaWMgY2FydFBsdXNJY29uOiBTYWZlSHRtbCA9IHRoaXMuaWNvblNlcnZpY2UuZ2V0SWNvbih0aGlzLmljb25zLkNhcnRQbHVzUmVndWxhcik7XHJcbiAgcHVibGljIGNhcnRNaW5JY29uOiBTYWZlSHRtbCA9IHRoaXMuaWNvblNlcnZpY2UuZ2V0SWNvbih0aGlzLmljb25zLkNhcnRNaW51c1JlZ3VsYXIpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyBpY29uU2VydmljZTogSWNvbkNhY2hlU2VydmljZSxcclxuICAgIHB1YmxpYyB0cmFuc2FjdGlvblNlcnZpY2U6IFRyYW5zYWN0aW9uU2VydmljZSxcclxuICAgIHByaXZhdGUgX2NoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZlxyXG4gICkge1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGhhbmRsZVNlYXJjaCh0ZXh0OiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGlmICghdGhpcy5pc1NlYXJjaElucHV0Rm9jdXNlZCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5zZWFyY2hUZXh0ID0gdGV4dDtcclxuICAgIHRoaXMuX2NoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcclxuICAgIHRoaXMuX3ByZXBhcmVDYXRhbG9nUmVxdWVzdCgpO1xyXG4gICAgdGhpcy5zZWFyY2hUZXh0ID0gdW5kZWZpbmVkO1xyXG4gICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgLy8gZmlyc3QgY2hlY2sgaWYgdGhlcmUncyBhIHNpbmdsZSBhcnRpY2xlIGZvdW5kXHJcbiAgICBjb25zdCBmb3VuZEFydGljbGVzOiBBcnRpY2xlTGlnaHRbXSA9IGF3YWl0IHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdldEFydGljbGVzKHRoaXMuY2F0YWxvZ1BhcmFtZXRlcnMpO1xyXG4gICAgaWYgKGZvdW5kQXJ0aWNsZXMgJiYgZm91bmRBcnRpY2xlcy5sZW5ndGggPT09IDEpIHtcclxuICAgICAgY29uc3QgYXJ0aWNsZTogQXJ0aWNsZUV4dGVuZGVkID0gYXdhaXQgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UuZ2V0QXJ0aWNsZUV4dGVuZGVkKGZvdW5kQXJ0aWNsZXNbMF0uYXJ0aWNsZU51bWJlcik7XHJcbiAgICAgIGF3YWl0IHRoaXMuaGFuZGxlQWRkQXJ0aWNsZShhcnRpY2xlKTtcclxuICAgIH0gZWxzZSB7IC8vIGVsc2Ugb3BlbiB0aGUgY2F0YWxvZ1xyXG4gICAgICB0aGlzLnNob3dDYXRhbG9nRGlhbG9nKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlSW5wdXRGb2N1cyhpc0ZvY3VzZWQ6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMuaXNTZWFyY2hJbnB1dEZvY3VzZWQgPSBpc0ZvY3VzZWQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgaGFuZGxlQWRkQXJ0aWNsZShhcnRpY2xlOiBBcnRpY2xlRXh0ZW5kZWQpOiBQcm9taXNlPGJvb2xlYW4+IHtcclxuICAgIGlmICh0aGlzLmhhbmRsZUFkZEFydGljbGVJbnRlcm5hbGx5KSB7XHJcbiAgICAgIHJldHVybiBhd2FpdCB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5hZGRBcnRpY2xlKGFydGljbGUuYXJ0aWNsZU51bWJlciwgdGhpcy5yZXR1cm4gPyAtMSA6IDEpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5hZGRBcnRpY2xlLm5leHQoe1xyXG4gICAgICAgIGFydGljbGU6IGFydGljbGUsXHJcbiAgICAgICAgcXVhbnRpdHk6IHRoaXMucmV0dXJuID8gLTEgOiAxLFxyXG4gICAgICAgIGFib3ZlTGluZU5yOiAwLFxyXG4gICAgICAgIGJlbG93TGluZU5yOiAwLFxyXG4gICAgICAgIGxhc3RBcnRpY2xlOiB0cnVlXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGhhbmRsZUFkZEFydGljbGVDbGljayhkYXRhOiB7IGFydGljbGU6IHN0cmluZyB8IEFydGljbGVFeHRlbmRlZCwgcXVhbnRpdHk6IG51bWJlciB9KTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICB0aGlzLnNob3dDYXRhbG9nID0gZmFsc2U7XHJcbiAgICBpZiAoZGF0YSAmJiBkYXRhLmFydGljbGUgaW5zdGFuY2VvZiBBcnRpY2xlRXh0ZW5kZWQpIHtcclxuICAgICAgdGhpcy5hZGRBcnRpY2xlLm5leHQoe1xyXG4gICAgICAgIGFydGljbGU6IGRhdGEuYXJ0aWNsZSxcclxuICAgICAgICBxdWFudGl0eTogdGhpcy5nZXRBY3R1YWxRdWFudGl0eShkYXRhLnF1YW50aXR5KSxcclxuICAgICAgICBhYm92ZUxpbmVOcjogMCxcclxuICAgICAgICBiZWxvd0xpbmVOcjogMCxcclxuICAgICAgICBsYXN0QXJ0aWNsZTogdHJ1ZVxyXG4gICAgICB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGlmIChkYXRhLmFydGljbGUpIHtcclxuICAgICAgICBjb25zdCBhcnRpY2xlVHJlZURhdGEgPSBKU09OLnBhcnNlKGRhdGEuYXJ0aWNsZSBhcyBzdHJpbmcpO1xyXG4gICAgICAgIGlmIChhcnRpY2xlVHJlZURhdGEuYXJ0aWNsZVRyZWUgJiYgYXJ0aWNsZVRyZWVEYXRhLmFydGljbGVUcmVlLmFydGljbGUpIHtcclxuICAgICAgICAgIGlmIChhcnRpY2xlVHJlZURhdGEuYXJ0aWNsZVRyZWUuY29tcG9zaXRlR29vZHMgJiYgQXJyYXkuaXNBcnJheShhcnRpY2xlVHJlZURhdGEuYXJ0aWNsZVRyZWUuY29tcG9zaXRlR29vZHMpICYmXHJcbiAgICAgICAgICAgIGFydGljbGVUcmVlRGF0YS5hcnRpY2xlVHJlZS5jb21wb3NpdGVHb29kcy5sZW5ndGggPiAwICYmIGFydGljbGVUcmVlRGF0YS5hcnRpY2xlVHJlZS5zdWJBcnRpY2xlcyAmJiBBcnJheS5pc0FycmF5KGFydGljbGVUcmVlRGF0YS5hcnRpY2xlVHJlZS5zdWJBcnRpY2xlcykpIHtcclxuICAgICAgICAgICAgY29uc3QgY29tcG9zaXRlR29vZHMgPSBhcnRpY2xlVHJlZURhdGEuYXJ0aWNsZVRyZWUuY29tcG9zaXRlR29vZHM7XHJcbiAgICAgICAgICAgIGNvbXBvc2l0ZUdvb2RzLnNvcnQoKGEsIGIpID0+IGEudmVyc2lvbk51bWJlciA8IGIudmVyc2lvbk51bWJlciA/IC0xIDogMSk7XHJcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY29tcG9zaXRlR29vZHMubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICAgICAgICBjb25zdCBsYXN0QXJ0aWNsZTogYm9vbGVhbiA9IGkgPT09IGNvbXBvc2l0ZUdvb2RzLmxlbmd0aCAtIDE7XHJcbiAgICAgICAgICAgICAgY29uc3QgZ29vZCA9IGNvbXBvc2l0ZUdvb2RzW2ldO1xyXG4gICAgICAgICAgICAgIGNvbnN0IHN1YkFydGljbGUgPSBhcnRpY2xlVHJlZURhdGEuYXJ0aWNsZVRyZWUuc3ViQXJ0aWNsZXMuZmluZChzID0+IHMuZ29vZElkID09PSBnb29kLm1lbWJlckdvb2RJZCk7XHJcbiAgICAgICAgICAgICAgaWYgKHN1YkFydGljbGUpIHtcclxuICAgICAgICAgICAgICAgIGF3YWl0IHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmFkZEFydGljbGUoc3ViQXJ0aWNsZS5hcnRpY2xlTnVtYmVyLCB0aGlzLmdldEFjdHVhbFF1YW50aXR5KGdvb2QucXVhbnRpdHkpLCAwLCAwLCBsYXN0QXJ0aWNsZSk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBhd2FpdCB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5hZGRBcnRpY2xlKGFydGljbGVUcmVlRGF0YS5hcnRpY2xlVHJlZS5hcnRpY2xlLmFydGljbGVOdW1iZXIsIHRoaXMuZ2V0QWN0dWFsUXVhbnRpdHkoYXJ0aWNsZVRyZWVEYXRhLnF1YW50aXR5KSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0QWN0dWFsUXVhbnRpdHkocXVhbnRpdHlJbnB1dCk6IG51bWJlciB7XHJcbiAgICBsZXQgcXVhbnRpdHk6IG51bWJlciA9IDA7XHJcbiAgICBpZiAodGhpcy5yZXR1cm4gJiYgcXVhbnRpdHlJbnB1dCA+IDApIHtcclxuICAgICAgcXVhbnRpdHkgPSAtMTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHF1YW50aXR5ID0gcXVhbnRpdHlJbnB1dDtcclxuICAgIH1cclxuICAgIHJldHVybiBxdWFudGl0eTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBoYW5kbGVDYXRhbG9nQXJ0aWNsZUNsaWNrKGFydGljbGU6IEFydGljbGVFeHRlbmRlZCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgYXdhaXQgdGhpcy5oYW5kbGVBZGRBcnRpY2xlKGFydGljbGUpO1xyXG4gICAgdGhpcy5zaG93Q2F0YWxvZyA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNob3dDYXRhbG9nRGlhbG9nKCk6IHZvaWQge1xyXG4gICAgdGhpcy5zaG93Q2F0YWxvZyA9IHRydWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlQ2FydEljb25DbGljayhldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xyXG4gICAgdGhpcy5yZXR1cm4gPSAhdGhpcy5yZXR1cm47XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlU2VhcmNoSWNvbkNsaWNrKCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuaW5wdXRTZWFyY2hUZXh0Lm1vZGVsKSB7XHJcbiAgICAgIHRoaXMuc2VhcmNoVGV4dCA9IHRoaXMuaW5wdXRTZWFyY2hUZXh0Lm1vZGVsO1xyXG4gICAgfVxyXG4gICAgdGhpcy5fcHJlcGFyZUNhdGFsb2dSZXF1ZXN0KCk7XHJcbiAgICB0aGlzLnNlYXJjaFRleHQgPSB1bmRlZmluZWQ7XHJcbiAgICB0aGlzLl9jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB0aGlzLnNob3dDYXRhbG9nRGlhbG9nKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgaGFuZGxlSUZyYW1lRmVlZGJhY2soaUZyYW1lRmVlZGJhY2tPYmplY3Q6IHtcclxuICAgIGpzb25TdHJpbmc6IHN0cmluZyxcclxuICAgIGNhdGFsb2c6IG51bWJlcixcclxuICAgIHNvdXJjZVR5cGU6IHN0cmluZ1xyXG4gIH0pOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIHRoaXMuc2hvd0NhdGFsb2cgPSBmYWxzZTtcclxuICAgIGxldCByZXF1ZXN0OiBFeHRlcm5hbENhdGFsb2dBZGRBcnRpY2xlUmVxdWVzdCA9IG5ldyBFeHRlcm5hbENhdGFsb2dBZGRBcnRpY2xlUmVxdWVzdCgpO1xyXG4gICAgcmVxdWVzdC5jYXRhbG9nSWQgPSBpRnJhbWVGZWVkYmFja09iamVjdC5jYXRhbG9nO1xyXG4gICAgcmVxdWVzdC5jYXRhbG9nVHlwZSA9IGlGcmFtZUZlZWRiYWNrT2JqZWN0LnNvdXJjZVR5cGU7XHJcbiAgICByZXF1ZXN0LmFydGljbGVKc29uID0gaUZyYW1lRmVlZGJhY2tPYmplY3QuanNvblN0cmluZztcclxuICAgIGF3YWl0IHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmFkZEV4dGVybmFsQ2F0YWxvZ0FydGljbGUocmVxdWVzdCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgaGFuZGxlQWRkQ2F0RmFybUFydGljbGVDbGljayhkYXRhOiB7XHJcbiAgICBxdWFudGl0eTogbnVtYmVyLFxyXG4gICAganNvblN0cmluZzogc3RyaW5nLFxyXG4gICAgY2F0YWxvZzogbnVtYmVyXHJcbiAgfSk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgdGhpcy5zaG93Q2F0YWxvZyA9IGZhbHNlO1xyXG4gICAgbGV0IHJlcXVlc3Q6IEV4dGVybmFsQ2F0YWxvZ0FkZEFydGljbGVSZXF1ZXN0ID0gbmV3IEV4dGVybmFsQ2F0YWxvZ0FkZEFydGljbGVSZXF1ZXN0KCk7XHJcbiAgICByZXF1ZXN0LmNhdGFsb2dJZCA9IGRhdGEuY2F0YWxvZztcclxuICAgIHJlcXVlc3QuY2F0YWxvZ1R5cGUgPSBFeHRlcm5hbENhdGFsb2dUeXBlcy5DYXRhbG9nRmFybTtcclxuICAgIHJlcXVlc3QuYXJ0aWNsZUpzb24gPSBkYXRhLmpzb25TdHJpbmc7XHJcbiAgICBhd2FpdCB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5hZGRFeHRlcm5hbENhdGFsb2dBcnRpY2xlKHJlcXVlc3QpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfcHJlcGFyZUNhdGFsb2dSZXF1ZXN0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5jYXRhbG9nUGFyYW1ldGVycy5nZW5lcmFsID0gdGhpcy5zZWFyY2hUZXh0O1xyXG4gICAgdGhpcy5jYXRhbG9nUGFyYW1ldGVycy5zaG93UmVndWxhckFydGljbGVzID0gdHJ1ZTtcclxuICAgIHRoaXMuY2F0YWxvZ1BhcmFtZXRlcnMuc2hvd0NvbmZpZ3VyZWRBcnRpY2xlcyA9IGZhbHNlO1xyXG4gICAgdGhpcy5jYXRhbG9nUGFyYW1ldGVycy5zaG93Q29uZmlndXJhYmxlQXJ0aWNsZXMgPSB0cnVlO1xyXG4gICAgdGhpcy5jYXRhbG9nUGFyYW1ldGVycy5zaG93Q29tcG9zaXRpb25BcnRpY2xlcyA9IGZhbHNlO1xyXG4gICAgdGhpcy5jYXRhbG9nUGFyYW1ldGVycy5zaG93Q3VzdG9taXplZEFydGljbGVzID0gZmFsc2U7XHJcbiAgICB0aGlzLmNhdGFsb2dQYXJhbWV0ZXJzLnNob3dJbmFjdGl2ZUFydGljbGVzID0gZmFsc2U7XHJcbiAgICB0aGlzLmNhdGFsb2dQYXJhbWV0ZXJzLnB1YmxpY2F0aW9uQ29kZSA9IDcxOyAvLyB0b2RvOiBmaXggdGhpcz9cclxuICAgIHRoaXMuY2F0YWxvZ1BhcmFtZXRlcnMuaXNSZXR1cm4gPSB0aGlzLnJldHVybjtcclxuICB9XHJcbn1cclxuIl19
234
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLXByb2R1Y3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJhbnNhY3Rpb24vc3JjL2xpYi9jb21wb25lbnQvYWRkLXByb2R1Y3QvYWRkLXByb2R1Y3QuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osV0FBVyxFQUNYLEtBQUssRUFDTCxNQUFNLEVBQ04sU0FBUyxFQUNULGlCQUFpQixFQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sc0RBQXNELENBQUM7QUFDckYsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQzFDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQ2xFLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBR3JFLE9BQU8sRUFDTCxnQ0FBZ0MsRUFDakMsTUFBTSwyRUFBMkUsQ0FBQztBQUNuRixPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSxpRUFBaUUsQ0FBQztBQThDckcsTUFBTSxPQUFPLG1CQUFtQjtJQWtDOUIsWUFDUyxXQUE2QixFQUM3QixrQkFBc0MsRUFDckMsZUFBa0M7UUFGbkMsZ0JBQVcsR0FBWCxXQUFXLENBQWtCO1FBQzdCLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDckMsb0JBQWUsR0FBZixlQUFlLENBQW1CO1FBcEM1QixVQUFLLEdBQWdCLElBQUksQ0FBQztRQUduQywrQkFBMEIsR0FBWSxJQUFJLENBQUM7UUFHM0MsZUFBVSxHQUFzQyxJQUFJLFlBQVksRUFBdUIsQ0FBQztRQVV4RixXQUFNLEdBQVksS0FBSyxDQUFDO1FBRXhCLG1CQUFjLEdBQVE7WUFDM0IsYUFBYSxFQUFFLElBQUk7WUFDbkIsYUFB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QztnQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO2dCQUMxQixRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQThCVDtnQkFDRCxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTthQUN0Qzs7O1lBcERPLGdCQUFnQjtZQUNoQixrQkFBa0I7WUFaeEIsaUJBQWlCOzs7eUNBbUVoQixLQUFLO3lCQUdMLE1BQU07OEJBR04sU0FBUyxTQUFDLGFBQWE7d0JBRXZCLFdBQVcsU0FBQyxzQkFBc0I7cUJBS2xDLFdBQVcsU0FBQyxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDb21wb25lbnQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIEhvc3RCaW5kaW5nLFxyXG4gIElucHV0LFxyXG4gIE91dHB1dCxcclxuICBWaWV3Q2hpbGQsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb25cclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtBcnRpY2xlRXh0ZW5kZWR9IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtZXh0ZW5kZWQuYm8nO1xyXG5pbXBvcnQge0ljb259IGZyb20gJy4uLy4uL2VudW0vaWNvbi5lbnVtJztcclxuaW1wb3J0IHtJY29uQ2FjaGVTZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlL2ljb24tY2FjaGUuc2VydmljZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25TZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQge0FydGljbGVMaWdodH0gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1saWdodC5ibyc7XHJcbmltcG9ydCB7U2FmZUh0bWx9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xyXG5pbXBvcnQge1xyXG4gIEV4dGVybmFsQ2F0YWxvZ0FkZEFydGljbGVSZXF1ZXN0XHJcbn0gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL2V4dGVybmFsLWNhdGFsb2ctYWRkLWFydGljbGUtcmVxdWVzdCc7XHJcbmltcG9ydCB7RXh0ZXJuYWxDYXRhbG9nVHlwZXN9IGZyb20gJ0Bjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9lbnVtL2V4dGVybmFsLWNhdGFsb2ctdHlwZXMuZW51bSc7XHJcbmltcG9ydCB7SW5wdXRTY2FubmVyQ29tcG9uZW50fSBmcm9tIFwiQGNvbGlqbml0L2NvcmVjb21wb25lbnRzX3YxMlwiO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBBZGRBcnRpY2xlSW50ZXJmYWNlIHtcclxuICBhcnRpY2xlOiBBcnRpY2xlRXh0ZW5kZWQ7XHJcbiAgcXVhbnRpdHk6IG51bWJlcjtcclxuICBhYm92ZUxpbmVOcjogbnVtYmVyO1xyXG4gIGJlbG93TGluZU5yOiBudW1iZXI7XHJcbiAgbGFzdEFydGljbGU6IGJvb2xlYW47XHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnY28tYWRkLXByb2R1Y3QnLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8Y28taW5wdXQtc2Nhbm5lclxyXG4gICAgICAjaW5wdXRTZWFyY2hcclxuICAgICAgW2N1c3RvbUNzc0NsYXNzXT1cIiduby1mb2N1cy1saW5lJ1wiXHJcbiAgICAgIFsobW9kZWwpXT1cInNlYXJjaFRleHRcIlxyXG4gICAgICBbcGxhY2Vob2xkZXJdPVwiJ1NFQVJDSF9BRERfQVJUSUNMRScgfCBsb2NhbGl6ZVwiXHJcbiAgICAgIFtjZW50ZXJMYWJlbF09XCJ0cnVlXCJcclxuICAgICAgW3VzZUxlZnRJY29uXT1cInRydWVcIlxyXG4gICAgICBbbGVmdEljb25EYXRhXT1cInJldHVybiA/IGNhcnRNaW5JY29uIDogY2FydFBsdXNJY29uXCJcclxuICAgICAgW3VzZVJpZ2h0SWNvbl09XCJ0cnVlXCJcclxuICAgICAgKGxlZnRJY29uQ2xpY2spPVwiaGFuZGxlQ2FydEljb25DbGljaygkZXZlbnQpXCJcclxuICAgICAgKHJpZ2h0SWNvbkNsaWNrKT1cImhhbmRsZVNlYXJjaEljb25DbGljaygpXCJcclxuICAgICAgKGJhckNvZGVTY2FubmVkKT1cImhhbmRsZVNlYXJjaCgkZXZlbnQpXCJcclxuICAgICAgKHNlYXJjaCk9XCJoYW5kbGVTZWFyY2goJGV2ZW50KVwiXHJcbiAgICAgIChpc0ZvY3VzZWQpPVwiaGFuZGxlSW5wdXRGb2N1cygkZXZlbnQpXCJcclxuICAgID48L2NvLWlucHV0LXNjYW5uZXI+XHJcbiAgICA8Y28tZGlhbG9nLWNhdGFsb2cgKm5nSWY9XCJzaG93Q2F0YWxvZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgW29wdGlvbnNdPVwiY2F0YWxvZ09wdGlvbnNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFtwYXJhbWV0ZXJzXT1cImNhdGFsb2dQYXJhbWV0ZXJzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbaGFuZGxlQWRkQXJ0aWNsZUludGVybmFsbHldPVwiaGFuZGxlQWRkQXJ0aWNsZUludGVybmFsbHlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFtzaG93TmF2aWdhdGlvbl09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbaXNSZXR1cm5dPVwidGhpcy5yZXR1cm5cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFt0cmFuc2FjdGlvbl09XCJ0cmFuc2FjdGlvblNlcnZpY2UuY3VycmVudFRyYW5zYWN0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAoY2xvc2VDbGljayk9XCJzaG93Q2F0YWxvZyA9IGZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAoYXJ0aWNsZUNsaWNrZWQpPVwiaGFuZGxlQ2F0YWxvZ0FydGljbGVDbGljaygkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAoYWRkQXJ0aWNsZUNsaWNrZWQpPVwiaGFuZGxlQWRkQXJ0aWNsZUNsaWNrKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIChhZGRDYXRGYXJtQXJ0aWNsZUNsaWNrZWQpPVwiaGFuZGxlQWRkQ2F0RmFybUFydGljbGVDbGljaygkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAoaUZyYW1lRmVlZGJhY2spPVwiaGFuZGxlSUZyYW1lRmVlZGJhY2soJGV2ZW50KVwiXHJcbiAgICA+XHJcbiAgICA8L2NvLWRpYWxvZy1jYXRhbG9nPlxyXG4gIGAsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWRkUHJvZHVjdENvbXBvbmVudCB7XHJcbiAgcHVibGljIHJlYWRvbmx5IGljb25zOiB0eXBlb2YgSWNvbiA9IEljb247XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGhhbmRsZUFkZEFydGljbGVJbnRlcm5hbGx5OiBib29sZWFuID0gdHJ1ZTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIGFkZEFydGljbGU6IEV2ZW50RW1pdHRlcjxBZGRBcnRpY2xlSW50ZXJmYWNlPiA9IG5ldyBFdmVudEVtaXR0ZXI8QWRkQXJ0aWNsZUludGVyZmFjZT4oKTtcclxuXHJcbiAgQFZpZXdDaGlsZCgnaW5wdXRTZWFyY2gnKSBwdWJsaWMgaW5wdXRTZWFyY2hUZXh0OiBJbnB1dFNjYW5uZXJDb21wb25lbnQ7XHJcblxyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuY28tYWRkLXByb2R1Y3QnKVxyXG4gIHB1YmxpYyBzaG93Q2xhc3MoKSB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIEBIb3N0QmluZGluZygnY2xhc3MucmV0dXJuJylcclxuICBwdWJsaWMgcmV0dXJuOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIHB1YmxpYyBjYXRhbG9nT3B0aW9uczogYW55ID0ge1xyXG4gICAgc2VhcmNoT25TdGFydDogdHJ1ZSxcclxuICAgIHNob3dBZGRUb0NhcnQ6IGZhbHNlLFxyXG4gICAgc2hvd0xvb2tBdEFydGljbGVCdXR0b246IGZhbHNlLFxyXG4gICAgc2hvd0FkZEFydGljbGVCdXR0b246IHRydWUsXHJcbiAgICBvbmx5VGhyZWVEOiBmYWxzZVxyXG4gIH07XHJcbiAgcHVibGljIGNhdGFsb2dQYXJhbWV0ZXJzOiBhbnkgPSB7fTtcclxuICBwdWJsaWMgc2hvd0NhdGFsb2c6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgaXNTZWFyY2hJbnB1dEZvY3VzZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgc2VhcmNoVGV4dDogc3RyaW5nO1xyXG5cclxuICBwdWJsaWMgY2FydFBsdXNJY29uOiBTYWZlSHRtbCA9IHRoaXMuaWNvblNlcnZpY2UuZ2V0SWNvbih0aGlzLmljb25zLkNhcnRQbHVzUmVndWxhcik7XHJcbiAgcHVibGljIGNhcnRNaW5JY29uOiBTYWZlSHRtbCA9IHRoaXMuaWNvblNlcnZpY2UuZ2V0SWNvbih0aGlzLmljb25zLkNhcnRNaW51c1JlZ3VsYXIpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyBpY29uU2VydmljZTogSWNvbkNhY2hlU2VydmljZSxcclxuICAgIHB1YmxpYyB0cmFuc2FjdGlvblNlcnZpY2U6IFRyYW5zYWN0aW9uU2VydmljZSxcclxuICAgIHByaXZhdGUgX2NoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZlxyXG4gICkge1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGhhbmRsZVNlYXJjaCh0ZXh0OiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGlmICghdGhpcy5pc1NlYXJjaElucHV0Rm9jdXNlZCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5zZWFyY2hUZXh0ID0gdGV4dDtcclxuICAgIHRoaXMuX2NoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcclxuICAgIHRoaXMuX3ByZXBhcmVDYXRhbG9nUmVxdWVzdCgpO1xyXG4gICAgdGhpcy5zZWFyY2hUZXh0ID0gdW5kZWZpbmVkO1xyXG4gICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgLy8gZmlyc3QgY2hlY2sgaWYgdGhlcmUncyBhIHNpbmdsZSBhcnRpY2xlIGZvdW5kXHJcbiAgICAvLyBUaGlzIGlzIGEgdHdvIGNoZWNrIHN0ZXA6XHJcbiAgICAvLyBDaGVjayBpZiB0aGVyZSBpcyBhbiBleGFjdCBtYXRjaCBvbiBiYXJjb2RlLCBlYW4gb3IgYXJ0aWNsZW51bWJlclxyXG4gICAgLy8gaWYgbm90OiBjaGVjayB3aXRoIHNlYXJjaCBsaWtlXHJcbiAgICAvLyBlbHNlIG9wZW4gY2F0YWxvZ3VzXHJcblxyXG4gICAgY29uc3QgZnVsbE1hdGNoU2VhcmNoOiBhbnlbXSA9IGF3YWl0IHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdldEFydGljbGVMaXN0V2l0aEJhcmNvZGVBcnRpY2xlTnJFYW5Db2RlKHRleHQpO1xyXG4gICAgaWYgKGZ1bGxNYXRjaFNlYXJjaCAmJiBmdWxsTWF0Y2hTZWFyY2gubGVuZ3RoID09PSAxKSB7XHJcbiAgICAgIGNvbnN0IGFydGljbGU6IEFydGljbGVFeHRlbmRlZCA9IGF3YWl0IHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdldEFydGljbGVFeHRlbmRlZChmdWxsTWF0Y2hTZWFyY2hbMF0uYXJ0aWNsZU5yKTtcclxuICAgICAgYXdhaXQgdGhpcy5oYW5kbGVBZGRBcnRpY2xlKGFydGljbGUpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc3QgZm91bmRBcnRpY2xlczogQXJ0aWNsZUxpZ2h0W10gPSBhd2FpdCB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5nZXRBcnRpY2xlcyh0aGlzLmNhdGFsb2dQYXJhbWV0ZXJzKTtcclxuICAgICAgaWYgKGZvdW5kQXJ0aWNsZXMgJiYgZm91bmRBcnRpY2xlcy5sZW5ndGggPT09IDEpIHtcclxuICAgICAgICBjb25zdCBhcnRpY2xlOiBBcnRpY2xlRXh0ZW5kZWQgPSBhd2FpdCB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5nZXRBcnRpY2xlRXh0ZW5kZWQoZm91bmRBcnRpY2xlc1swXS5hcnRpY2xlTnVtYmVyKTtcclxuICAgICAgICBhd2FpdCB0aGlzLmhhbmRsZUFkZEFydGljbGUoYXJ0aWNsZSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5zaG93Q2F0YWxvZ0RpYWxvZygpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlSW5wdXRGb2N1cyhpc0ZvY3VzZWQ6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMuaXNTZWFyY2hJbnB1dEZvY3VzZWQgPSBpc0ZvY3VzZWQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgaGFuZGxlQWRkQXJ0aWNsZShhcnRpY2xlOiBBcnRpY2xlRXh0ZW5kZWQpOiBQcm9taXNlPGJvb2xlYW4+IHtcclxuICAgIGlmICh0aGlzLmhhbmRsZUFkZEFydGljbGVJbnRlcm5hbGx5KSB7XHJcbiAgICAgIHJldHVybiBhd2FpdCB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5hZGRBcnRpY2xlKGFydGljbGUuYXJ0aWNsZU51bWJlciwgdGhpcy5yZXR1cm4gPyAtMSA6IDEpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5hZGRBcnRpY2xlLm5leHQoe1xyXG4gICAgICAgIGFydGljbGU6IGFydGljbGUsXHJcbiAgICAgICAgcXVhbnRpdHk6IHRoaXMucmV0dXJuID8gLTEgOiAxLFxyXG4gICAgICAgIGFib3ZlTGluZU5yOiAwLFxyXG4gICAgICAgIGJlbG93TGluZU5yOiAwLFxyXG4gICAgICAgIGxhc3RBcnRpY2xlOiB0cnVlXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGhhbmRsZUFkZEFydGljbGVDbGljayhkYXRhOiB7IGFydGljbGU6IHN0cmluZyB8IEFydGljbGVFeHRlbmRlZCwgcXVhbnRpdHk6IG51bWJlciB9KTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICB0aGlzLnNob3dDYXRhbG9nID0gZmFsc2U7XHJcbiAgICBpZiAoZGF0YSAmJiBkYXRhLmFydGljbGUgaW5zdGFuY2VvZiBBcnRpY2xlRXh0ZW5kZWQpIHtcclxuICAgICAgdGhpcy5hZGRBcnRpY2xlLm5leHQoe1xyXG4gICAgICAgIGFydGljbGU6IGRhdGEuYXJ0aWNsZSxcclxuICAgICAgICBxdWFudGl0eTogdGhpcy5nZXRBY3R1YWxRdWFudGl0eShkYXRhLnF1YW50aXR5KSxcclxuICAgICAgICBhYm92ZUxpbmVOcjogMCxcclxuICAgICAgICBiZWxvd0xpbmVOcjogMCxcclxuICAgICAgICBsYXN0QXJ0aWNsZTogdHJ1ZVxyXG4gICAgICB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGlmIChkYXRhLmFydGljbGUpIHtcclxuICAgICAgICBjb25zdCBhcnRpY2xlVHJlZURhdGEgPSBKU09OLnBhcnNlKGRhdGEuYXJ0aWNsZSBhcyBzdHJpbmcpO1xyXG4gICAgICAgIGlmIChhcnRpY2xlVHJlZURhdGEuYXJ0aWNsZVRyZWUgJiYgYXJ0aWNsZVRyZWVEYXRhLmFydGljbGVUcmVlLmFydGljbGUpIHtcclxuICAgICAgICAgIGlmIChhcnRpY2xlVHJlZURhdGEuYXJ0aWNsZVRyZWUuY29tcG9zaXRlR29vZHMgJiYgQXJyYXkuaXNBcnJheShhcnRpY2xlVHJlZURhdGEuYXJ0aWNsZVRyZWUuY29tcG9zaXRlR29vZHMpICYmXHJcbiAgICAgICAgICAgIGFydGljbGVUcmVlRGF0YS5hcnRpY2xlVHJlZS5jb21wb3NpdGVHb29kcy5sZW5ndGggPiAwICYmIGFydGljbGVUcmVlRGF0YS5hcnRpY2xlVHJlZS5zdWJBcnRpY2xlcyAmJiBBcnJheS5pc0FycmF5KGFydGljbGVUcmVlRGF0YS5hcnRpY2xlVHJlZS5zdWJBcnRpY2xlcykpIHtcclxuICAgICAgICAgICAgY29uc3QgY29tcG9zaXRlR29vZHMgPSBhcnRpY2xlVHJlZURhdGEuYXJ0aWNsZVRyZWUuY29tcG9zaXRlR29vZHM7XHJcbiAgICAgICAgICAgIGNvbXBvc2l0ZUdvb2RzLnNvcnQoKGEsIGIpID0+IGEudmVyc2lvbk51bWJlciA8IGIudmVyc2lvbk51bWJlciA/IC0xIDogMSk7XHJcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY29tcG9zaXRlR29vZHMubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICAgICAgICBjb25zdCBsYXN0QXJ0aWNsZTogYm9vbGVhbiA9IGkgPT09IGNvbXBvc2l0ZUdvb2RzLmxlbmd0aCAtIDE7XHJcbiAgICAgICAgICAgICAgY29uc3QgZ29vZCA9IGNvbXBvc2l0ZUdvb2RzW2ldO1xyXG4gICAgICAgICAgICAgIGNvbnN0IHN1YkFydGljbGUgPSBhcnRpY2xlVHJlZURhdGEuYXJ0aWNsZVRyZWUuc3ViQXJ0aWNsZXMuZmluZChzID0+IHMuZ29vZElkID09PSBnb29kLm1lbWJlckdvb2RJZCk7XHJcbiAgICAgICAgICAgICAgaWYgKHN1YkFydGljbGUpIHtcclxuICAgICAgICAgICAgICAgIGF3YWl0IHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmFkZEFydGljbGUoc3ViQXJ0aWNsZS5hcnRpY2xlTnVtYmVyLCB0aGlzLmdldEFjdHVhbFF1YW50aXR5KGdvb2QucXVhbnRpdHkpLCAwLCAwLCBsYXN0QXJ0aWNsZSk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBhd2FpdCB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5hZGRBcnRpY2xlKGFydGljbGVUcmVlRGF0YS5hcnRpY2xlVHJlZS5hcnRpY2xlLmFydGljbGVOdW1iZXIsIHRoaXMuZ2V0QWN0dWFsUXVhbnRpdHkoYXJ0aWNsZVRyZWVEYXRhLnF1YW50aXR5KSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0QWN0dWFsUXVhbnRpdHkocXVhbnRpdHlJbnB1dCk6IG51bWJlciB7XHJcbiAgICBsZXQgcXVhbnRpdHk6IG51bWJlciA9IDA7XHJcbiAgICBpZiAodGhpcy5yZXR1cm4gJiYgcXVhbnRpdHlJbnB1dCA+IDApIHtcclxuICAgICAgcXVhbnRpdHkgPSAtMTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHF1YW50aXR5ID0gcXVhbnRpdHlJbnB1dDtcclxuICAgIH1cclxuICAgIHJldHVybiBxdWFudGl0eTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBoYW5kbGVDYXRhbG9nQXJ0aWNsZUNsaWNrKGFydGljbGU6IEFydGljbGVFeHRlbmRlZCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgYXdhaXQgdGhpcy5oYW5kbGVBZGRBcnRpY2xlKGFydGljbGUpO1xyXG4gICAgdGhpcy5zaG93Q2F0YWxvZyA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNob3dDYXRhbG9nRGlhbG9nKCk6IHZvaWQge1xyXG4gICAgdGhpcy5zaG93Q2F0YWxvZyA9IHRydWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlQ2FydEljb25DbGljayhldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xyXG4gICAgdGhpcy5yZXR1cm4gPSAhdGhpcy5yZXR1cm47XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlU2VhcmNoSWNvbkNsaWNrKCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuaW5wdXRTZWFyY2hUZXh0Lm1vZGVsKSB7XHJcbiAgICAgIHRoaXMuc2VhcmNoVGV4dCA9IHRoaXMuaW5wdXRTZWFyY2hUZXh0Lm1vZGVsO1xyXG4gICAgfVxyXG4gICAgdGhpcy5fcHJlcGFyZUNhdGFsb2dSZXF1ZXN0KCk7XHJcbiAgICB0aGlzLnNlYXJjaFRleHQgPSB1bmRlZmluZWQ7XHJcbiAgICB0aGlzLl9jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB0aGlzLnNob3dDYXRhbG9nRGlhbG9nKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgaGFuZGxlSUZyYW1lRmVlZGJhY2soaUZyYW1lRmVlZGJhY2tPYmplY3Q6IHtcclxuICAgIGpzb25TdHJpbmc6IHN0cmluZyxcclxuICAgIGNhdGFsb2c6IG51bWJlcixcclxuICAgIHNvdXJjZVR5cGU6IHN0cmluZ1xyXG4gIH0pOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIHRoaXMuc2hvd0NhdGFsb2cgPSBmYWxzZTtcclxuICAgIGxldCByZXF1ZXN0OiBFeHRlcm5hbENhdGFsb2dBZGRBcnRpY2xlUmVxdWVzdCA9IG5ldyBFeHRlcm5hbENhdGFsb2dBZGRBcnRpY2xlUmVxdWVzdCgpO1xyXG4gICAgcmVxdWVzdC5jYXRhbG9nSWQgPSBpRnJhbWVGZWVkYmFja09iamVjdC5jYXRhbG9nO1xyXG4gICAgcmVxdWVzdC5jYXRhbG9nVHlwZSA9IGlGcmFtZUZlZWRiYWNrT2JqZWN0LnNvdXJjZVR5cGU7XHJcbiAgICByZXF1ZXN0LmFydGljbGVKc29uID0gaUZyYW1lRmVlZGJhY2tPYmplY3QuanNvblN0cmluZztcclxuICAgIGF3YWl0IHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmFkZEV4dGVybmFsQ2F0YWxvZ0FydGljbGUocmVxdWVzdCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgaGFuZGxlQWRkQ2F0RmFybUFydGljbGVDbGljayhkYXRhOiB7XHJcbiAgICBxdWFudGl0eTogbnVtYmVyLFxyXG4gICAganNvblN0cmluZzogc3RyaW5nLFxyXG4gICAgY2F0YWxvZzogbnVtYmVyXHJcbiAgfSk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgdGhpcy5zaG93Q2F0YWxvZyA9IGZhbHNlO1xyXG4gICAgbGV0IHJlcXVlc3Q6IEV4dGVybmFsQ2F0YWxvZ0FkZEFydGljbGVSZXF1ZXN0ID0gbmV3IEV4dGVybmFsQ2F0YWxvZ0FkZEFydGljbGVSZXF1ZXN0KCk7XHJcbiAgICByZXF1ZXN0LmNhdGFsb2dJZCA9IGRhdGEuY2F0YWxvZztcclxuICAgIHJlcXVlc3QuY2F0YWxvZ1R5cGUgPSBFeHRlcm5hbENhdGFsb2dUeXBlcy5DYXRhbG9nRmFybTtcclxuICAgIHJlcXVlc3QuYXJ0aWNsZUpzb24gPSBkYXRhLmpzb25TdHJpbmc7XHJcbiAgICBhd2FpdCB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5hZGRFeHRlcm5hbENhdGFsb2dBcnRpY2xlKHJlcXVlc3QpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfcHJlcGFyZUNhdGFsb2dSZXF1ZXN0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5jYXRhbG9nUGFyYW1ldGVycy5nZW5lcmFsID0gdGhpcy5zZWFyY2hUZXh0O1xyXG4gICAgdGhpcy5jYXRhbG9nUGFyYW1ldGVycy5zaG93UmVndWxhckFydGljbGVzID0gdHJ1ZTtcclxuICAgIHRoaXMuY2F0YWxvZ1BhcmFtZXRlcnMuc2hvd0NvbmZpZ3VyZWRBcnRpY2xlcyA9IGZhbHNlO1xyXG4gICAgdGhpcy5jYXRhbG9nUGFyYW1ldGVycy5zaG93Q29uZmlndXJhYmxlQXJ0aWNsZXMgPSB0cnVlO1xyXG4gICAgdGhpcy5jYXRhbG9nUGFyYW1ldGVycy5zaG93Q29tcG9zaXRpb25BcnRpY2xlcyA9IGZhbHNlO1xyXG4gICAgdGhpcy5jYXRhbG9nUGFyYW1ldGVycy5zaG93Q3VzdG9taXplZEFydGljbGVzID0gZmFsc2U7XHJcbiAgICB0aGlzLmNhdGFsb2dQYXJhbWV0ZXJzLnNob3dJbmFjdGl2ZUFydGljbGVzID0gZmFsc2U7XHJcbiAgICB0aGlzLmNhdGFsb2dQYXJhbWV0ZXJzLnB1YmxpY2F0aW9uQ29kZSA9IDcxOyAvLyB0b2RvOiBmaXggdGhpcz9cclxuICAgIHRoaXMuY2F0YWxvZ1BhcmFtZXRlcnMuaXNSZXR1cm4gPSB0aGlzLnJldHVybjtcclxuICB9XHJcbn1cclxuIl19
@@ -21,6 +21,7 @@ export class DialogTransactionSearchComponent {
21
21
  }
22
22
  ngOnInit() {
23
23
  return __awaiter(this, void 0, void 0, function* () {
24
+ yield this.searchTransactions();
24
25
  });
25
26
  }
26
27
  ngOnDestroy() {
@@ -31,6 +32,11 @@ export class DialogTransactionSearchComponent {
31
32
  transLineClicked(line) {
32
33
  this.lineClicked.emit(line);
33
34
  }
35
+ searchTransactions() {
36
+ return __awaiter(this, void 0, void 0, function* () {
37
+ this.transactionSearchService.searchTransactions();
38
+ });
39
+ }
34
40
  }
35
41
  DialogTransactionSearchComponent.decorators = [
36
42
  { type: Component, args: [{
@@ -72,4 +78,4 @@ DialogTransactionSearchComponent.propDecorators = {
72
78
  lineClicked: [{ type: Output }],
73
79
  showClass: [{ type: HostBinding, args: ["class.co-dialog-transaction-search",] }]
74
80
  };
75
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLXRyYW5zYWN0aW9uLXNlYXJjaC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cmFuc2FjdGlvbi9zcmMvbGliL2NvbXBvbmVudC9kaWFsb2cvdHJhbnNhY3Rpb24tc2VhcmNoL2RpYWxvZy10cmFuc2FjdGlvbi1zZWFyY2guY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEgsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sNkRBQTZELENBQUM7QUFDckcsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDckUsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBOEI3QyxNQUFNLE9BQU8sZ0NBQWdDO0lBNEIzQyxZQUFvQix3QkFBa0QsRUFDbEQsZ0JBQWtDO1FBRGxDLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFDbEQscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQTVCdEMsVUFBSyxHQUFnQixJQUFJLENBQUM7UUFZbkMsb0JBQWUsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQTtRQUc5RCxlQUFVLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUE7UUFHaEUsZ0JBQVcsR0FBNkMsSUFBSSxZQUFZLEVBQThCLENBQUM7UUFPaEcsZ0JBQVcsR0FBWSxLQUFLLENBQUM7SUFLcEMsQ0FBQztJQXpCRCxJQUNXLFFBQVEsQ0FBQyxLQUFlO1FBQ2pDLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxhQUFhLENBQUMsWUFBWSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDMUYsQ0FBQztJQWFNLFNBQVM7UUFDZCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFTSyxRQUFROztRQUNkLENBQUM7S0FBQTtJQUVELFdBQVc7SUFDWCxDQUFDO0lBRU0sbUJBQW1CO1FBQ3hCLElBQUksQ0FBQyxXQUFXLEdBQUcsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQ3ZDLENBQUM7SUFFTSxnQkFBZ0IsQ0FBQyxJQUFnQztRQUN0RCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM5QixDQUFDOzs7WUF2RUYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSw4QkFBOEI7Z0JBQ3hDLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBcUJUO2dCQUNELGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2FBQ3RDOzs7WUEvQk8sd0JBQXdCO1lBQ3hCLGdCQUFnQjs7OzBCQWtDckIsS0FBSzt1QkFHTCxLQUFLOzhCQU1MLE1BQU07eUJBR04sTUFBTTswQkFHTixNQUFNO3dCQUdOLFdBQVcsU0FBQyxvQ0FBb0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uU2VhcmNoU2VydmljZX0gZnJvbSBcIi4uLy4uL3RyYW5zYWN0aW9uLXNlYXJjaC9zZXJ2aWNlL3RyYW5zYWN0aW9uLXNlYXJjaC5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7SWNvbkNhY2hlU2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2UvaWNvbi1jYWNoZS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7SWNvbn0gZnJvbSBcIi4uLy4uLy4uL2VudW0vaWNvbi5lbnVtXCI7XHJcbmltcG9ydCB7U2VhcmNoVmlld01vZGVTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VhcmNoL3NlYXJjaC12aWV3LW1vZGUuc2VydmljZVwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uTGluZVNlYXJjaEluZGV4fSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3RyYW5zYWN0aW9uLWxpbmUtc2VhcmNoLWluZGV4LmJvXCI7XHJcbmltcG9ydCB7UmVsYXRpb259IGZyb20gXCJAY29saWpuaXQvcmVsYXRpb25hcGkvYnVpbGQvbW9kZWwvcmVsYXRpb24uYm9cIjtcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFwiY28tZGlhbG9nLXRyYW5zYWN0aW9uLXNlYXJjaFwiLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgPGNvLWRpYWxvZyAoY2xvc2VDbGljayk9XCJjbG9zZUNsaWNrLmVtaXQoKVwiID5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwic2VhcmNoLXdyYXBwZXJcIj5cclxuICAgICAgPGNvLXRyYW5zYWN0aW9uLXNlYXJjaC1oZWFkZXIgKGZpbHRlckljb25DbGljayk9XCJvbkZpbHRlckJ1dHRvbkNsaWNrKClcIj48L2NvLXRyYW5zYWN0aW9uLXNlYXJjaC1oZWFkZXI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJzZWFyY2gtY29udGVudFwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VhcmNoLWZpbHRlci1wYW5lbCBuYXJyb3ctc2Nyb2xsYmFyXCIgKm5nSWY9XCJzaG93RmlsdGVyc1wiID5cclxuICAgICAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWZpbHRlcj48L2NvLXRyYW5zYWN0aW9uLWZpbHRlcj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInNlYXJjaC1yZXN1bHQtY29udGVudFwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24tdGlsZVwiICpuZ0Zvcj1cImxldCB0cmFuc2FjdGlvbiBvZiB0cmFuc2FjdGlvblNlYXJjaFNlcnZpY2UudHJhbnNhY3Rpb25zXCI+XHJcbiAgICAgICAgICAgICAgPGNvLXRyYW5zYWN0aW9uLXNlYXJjaC1zYWxlcy1saW5lLXNlbGVjdC10aWxlXHJcbiAgICAgICAgICAgICAgICBbdHJhbnNhY3Rpb25dPVwidHJhbnNhY3Rpb25cIiAobGluZUNsaWNrZWQpPVwidHJhbnNMaW5lQ2xpY2tlZCgkZXZlbnQpXCI+XHJcbiAgICAgICAgICAgICAgPC9jby10cmFuc2FjdGlvbi1zZWFyY2gtc2FsZXMtbGluZS1zZWxlY3QtdGlsZT5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2NvLWRpYWxvZz5cclxuICBgLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIERpYWxvZ1RyYW5zYWN0aW9uU2VhcmNoQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIHB1YmxpYyByZWFkb25seSBpY29uczogdHlwZW9mIEljb24gPSBJY29uO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBwbGFjZWhvbGRlcjogc3RyaW5nO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZXQgcmVsYXRpb24odmFsdWU6IFJlbGF0aW9uKSB7XHJcbiAgICB0aGlzLnRyYW5zYWN0aW9uU2VhcmNoU2VydmljZS5zZWFyY2hSZXF1ZXN0LnJlbGF0aW9uTnJUciA9IE51bWJlcih2YWx1ZS5yZWxhdGlvbk51bWJlcik7XHJcbiAgfVxyXG5cclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIGZpbHRlckljb25DbGljazogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpXHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyBjbG9zZUNsaWNrOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KClcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgbGluZUNsaWNrZWQ6IEV2ZW50RW1pdHRlcjxUcmFuc2FjdGlvbkxpbmVTZWFyY2hJbmRleD4gPSBuZXcgRXZlbnRFbWl0dGVyPFRyYW5zYWN0aW9uTGluZVNlYXJjaEluZGV4PigpO1xyXG5cclxuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5jby1kaWFsb2ctdHJhbnNhY3Rpb24tc2VhcmNoXCIpXHJcbiAgcHVibGljIHNob3dDbGFzcygpIHtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNob3dGaWx0ZXJzOiBCb29sZWFuID0gZmFsc2U7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCBwdWJsaWMgdHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlOiBUcmFuc2FjdGlvblNlYXJjaFNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgIHB1YmxpYyBpY29uQ2FjaGVTZXJ2aWNlOiBJY29uQ2FjaGVTZXJ2aWNlXHJcbiAgKSB7XHJcbiAgfVxyXG5cclxuICBhc3luYyBuZ09uSW5pdCgpOiBQcm9taXNlPHZvaWQ+IHtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uRmlsdGVyQnV0dG9uQ2xpY2soKTogdm9pZCB7XHJcbiAgICB0aGlzLnNob3dGaWx0ZXJzID0gIXRoaXMuc2hvd0ZpbHRlcnM7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgdHJhbnNMaW5lQ2xpY2tlZChsaW5lOiBUcmFuc2FjdGlvbkxpbmVTZWFyY2hJbmRleCk6IHZvaWQge1xyXG4gICAgdGhpcy5saW5lQ2xpY2tlZC5lbWl0KGxpbmUpO1xyXG4gIH1cclxufVxyXG4iXX0=
81
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLXRyYW5zYWN0aW9uLXNlYXJjaC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cmFuc2FjdGlvbi9zcmMvbGliL2NvbXBvbmVudC9kaWFsb2cvdHJhbnNhY3Rpb24tc2VhcmNoL2RpYWxvZy10cmFuc2FjdGlvbi1zZWFyY2guY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEgsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sNkRBQTZELENBQUM7QUFDckcsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDckUsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBOEI3QyxNQUFNLE9BQU8sZ0NBQWdDO0lBNEIzQyxZQUFvQix3QkFBa0QsRUFDbEQsZ0JBQWtDO1FBRGxDLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFDbEQscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQTVCdEMsVUFBSyxHQUFnQixJQUFJLENBQUM7UUFZbkMsb0JBQWUsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQTtRQUc5RCxlQUFVLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUE7UUFHaEUsZ0JBQVcsR0FBNkMsSUFBSSxZQUFZLEVBQThCLENBQUM7UUFPaEcsZ0JBQVcsR0FBWSxLQUFLLENBQUM7SUFLcEMsQ0FBQztJQXpCRCxJQUNXLFFBQVEsQ0FBQyxLQUFlO1FBQ2pDLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxhQUFhLENBQUMsWUFBWSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDMUYsQ0FBQztJQWFNLFNBQVM7UUFDZCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFTSyxRQUFROztZQUNaLE1BQU0sSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7UUFDbEMsQ0FBQztLQUFBO0lBRUQsV0FBVztJQUNYLENBQUM7SUFFTSxtQkFBbUI7UUFDeEIsSUFBSSxDQUFDLFdBQVcsR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDdkMsQ0FBQztJQUVNLGdCQUFnQixDQUFDLElBQWdDO1FBQ3RELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFWSxrQkFBa0I7O1lBQzdCLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBQ3JELENBQUM7S0FBQTs7O1lBNUVGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsOEJBQThCO2dCQUN4QyxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXFCVDtnQkFDRCxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTthQUN0Qzs7O1lBL0JPLHdCQUF3QjtZQUN4QixnQkFBZ0I7OzswQkFrQ3JCLEtBQUs7dUJBR0wsS0FBSzs4QkFNTCxNQUFNO3lCQUdOLE1BQU07MEJBR04sTUFBTTt3QkFHTixXQUFXLFNBQUMsb0NBQW9DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0LCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvblNlYXJjaFNlcnZpY2V9IGZyb20gXCIuLi8uLi90cmFuc2FjdGlvbi1zZWFyY2gvc2VydmljZS90cmFuc2FjdGlvbi1zZWFyY2guc2VydmljZVwiO1xyXG5pbXBvcnQge0ljb25DYWNoZVNlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi9zZXJ2aWNlL2ljb24tY2FjaGUuc2VydmljZVwiO1xyXG5pbXBvcnQge0ljb259IGZyb20gXCIuLi8uLi8uLi9lbnVtL2ljb24uZW51bVwiO1xyXG5pbXBvcnQge1NlYXJjaFZpZXdNb2RlU2VydmljZX0gZnJvbSBcIi4uLy4uL3NlYXJjaC9zZWFyY2gtdmlldy1tb2RlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkxpbmVTZWFyY2hJbmRleH0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC90cmFuc2FjdGlvbi1saW5lLXNlYXJjaC1pbmRleC5ib1wiO1xyXG5pbXBvcnQge1JlbGF0aW9ufSBmcm9tIFwiQGNvbGlqbml0L3JlbGF0aW9uYXBpL2J1aWxkL21vZGVsL3JlbGF0aW9uLmJvXCI7XHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcImNvLWRpYWxvZy10cmFuc2FjdGlvbi1zZWFyY2hcIixcclxuICB0ZW1wbGF0ZTogYFxyXG4gIDxjby1kaWFsb2cgKGNsb3NlQ2xpY2spPVwiY2xvc2VDbGljay5lbWl0KClcIiA+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cInNlYXJjaC13cmFwcGVyXCI+XHJcbiAgICAgIDxjby10cmFuc2FjdGlvbi1zZWFyY2gtaGVhZGVyIChmaWx0ZXJJY29uQ2xpY2spPVwib25GaWx0ZXJCdXR0b25DbGljaygpXCI+PC9jby10cmFuc2FjdGlvbi1zZWFyY2gtaGVhZGVyPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwic2VhcmNoLWNvbnRlbnRcIj5cclxuICAgICAgICA8bmctY29udGFpbmVyPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInNlYXJjaC1maWx0ZXItcGFuZWwgbmFycm93LXNjcm9sbGJhclwiICpuZ0lmPVwic2hvd0ZpbHRlcnNcIiA+XHJcbiAgICAgICAgICAgIDxjby10cmFuc2FjdGlvbi1maWx0ZXI+PC9jby10cmFuc2FjdGlvbi1maWx0ZXI+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzZWFyY2gtcmVzdWx0LWNvbnRlbnRcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLXRpbGVcIiAqbmdGb3I9XCJsZXQgdHJhbnNhY3Rpb24gb2YgdHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlLnRyYW5zYWN0aW9uc1wiPlxyXG4gICAgICAgICAgICAgIDxjby10cmFuc2FjdGlvbi1zZWFyY2gtc2FsZXMtbGluZS1zZWxlY3QtdGlsZVxyXG4gICAgICAgICAgICAgICAgW3RyYW5zYWN0aW9uXT1cInRyYW5zYWN0aW9uXCIgKGxpbmVDbGlja2VkKT1cInRyYW5zTGluZUNsaWNrZWQoJGV2ZW50KVwiPlxyXG4gICAgICAgICAgICAgIDwvY28tdHJhbnNhY3Rpb24tc2VhcmNoLXNhbGVzLWxpbmUtc2VsZWN0LXRpbGU+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9jby1kaWFsb2c+XHJcbiAgYCxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEaWFsb2dUcmFuc2FjdGlvblNlYXJjaENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICBwdWJsaWMgcmVhZG9ubHkgaWNvbnM6IHR5cGVvZiBJY29uID0gSWNvbjtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgcGxhY2Vob2xkZXI6IHN0cmluZztcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2V0IHJlbGF0aW9uKHZhbHVlOiBSZWxhdGlvbikge1xyXG4gICAgdGhpcy50cmFuc2FjdGlvblNlYXJjaFNlcnZpY2Uuc2VhcmNoUmVxdWVzdC5yZWxhdGlvbk5yVHIgPSBOdW1iZXIodmFsdWUucmVsYXRpb25OdW1iZXIpO1xyXG4gIH1cclxuXHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyBmaWx0ZXJJY29uQ2xpY2s6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKVxyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgY2xvc2VDbGljazogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpXHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIGxpbmVDbGlja2VkOiBFdmVudEVtaXR0ZXI8VHJhbnNhY3Rpb25MaW5lU2VhcmNoSW5kZXg+ID0gbmV3IEV2ZW50RW1pdHRlcjxUcmFuc2FjdGlvbkxpbmVTZWFyY2hJbmRleD4oKTtcclxuXHJcbiAgQEhvc3RCaW5kaW5nKFwiY2xhc3MuY28tZGlhbG9nLXRyYW5zYWN0aW9uLXNlYXJjaFwiKVxyXG4gIHB1YmxpYyBzaG93Q2xhc3MoKSB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzaG93RmlsdGVyczogQm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBjb25zdHJ1Y3RvciggcHVibGljIHRyYW5zYWN0aW9uU2VhcmNoU2VydmljZTogVHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgICBwdWJsaWMgaWNvbkNhY2hlU2VydmljZTogSWNvbkNhY2hlU2VydmljZVxyXG4gICkge1xyXG4gIH1cclxuXHJcbiAgYXN5bmMgbmdPbkluaXQoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBhd2FpdCB0aGlzLnNlYXJjaFRyYW5zYWN0aW9ucygpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25GaWx0ZXJCdXR0b25DbGljaygpOiB2b2lkIHtcclxuICAgIHRoaXMuc2hvd0ZpbHRlcnMgPSAhdGhpcy5zaG93RmlsdGVycztcclxuICB9XHJcblxyXG4gIHB1YmxpYyB0cmFuc0xpbmVDbGlja2VkKGxpbmU6IFRyYW5zYWN0aW9uTGluZVNlYXJjaEluZGV4KTogdm9pZCB7XHJcbiAgICB0aGlzLmxpbmVDbGlja2VkLmVtaXQobGluZSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgc2VhcmNoVHJhbnNhY3Rpb25zKCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgdGhpcy50cmFuc2FjdGlvblNlYXJjaFNlcnZpY2Uuc2VhcmNoVHJhbnNhY3Rpb25zKCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -156,7 +156,7 @@ TransactionHeaderPopupCreateServiceComponent.decorators = [
156
156
  -->
157
157
  <div class="service-data-header">
158
158
  <span class="data-description" [textContent]="existingTransactionTitleText"></span>
159
- <span class="toggle-change" [textContent]="'CHANGE' | localize" (click)="createOrderFromSLAClicked(); forceReadonly = false"></span>
159
+ <span class="toggle-change" [textContent]="'CHANGE' | localize" (click)="createOrderWithTransactionLineClicked(); forceReadonly = false"></span>
160
160
  </div>
161
161
  <div *ngIf="existingTransactionLine" class="create-via-transaction-result-display">
162
162
  <co-image-display [model]="existingTransactionLine?.articleImageData"></co-image-display>
@@ -167,14 +167,9 @@ TransactionHeaderPopupCreateServiceComponent.decorators = [
167
167
  <div *ngIf="chosenTransactionLine" class="create-via-transaction-result-display">
168
168
  <co-image-display [model]="transactionImage"></co-image-display>
169
169
  <span [textContent]="chosenTransactionLine?.goodDescription"></span>
170
- <!--<span [textContent]="existingTransactionLine?.articleBoundConcatenatedText"></span>-->
171
- <!--<span [textContent]="existingTransactionLine?.price | currency: 'EUR'"></span>-->
172
170
  </div>
173
171
  </div>
174
172
  <div *ngIf="createViaProduct" class="create-via-product">
175
- <!--
176
- <co-input-search [useLeftIcon]="false" [useRightIcon]="true" [label]="'ARTICLE' | localize" (rightIconClick)="searchArticleClicked_handler()" [(model)]="articleSearchText"></co-input-search>
177
- -->
178
173
  <div class="create-via-product-result-display">
179
174
  <co-image-display [model]="chosenArticle?.imageData"></co-image-display>
180
175
  <span [textContent]="chosenArticle?.description"></span>
@@ -222,4 +217,4 @@ TransactionHeaderPopupCreateServiceComponent.propDecorators = {
222
217
  forceReadonly: [{ type: Input }],
223
218
  relation: [{ type: Input }]
224
219
  };
225
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24taGVhZGVyLXBvcHVwLWNyZWF0ZS1zZXJ2aWNlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L3RyYW5zYWN0aW9uLWhlYWRlci90cmFuc2FjdGlvbi1oZWFkZXItcG9wdXAvdHJhbnNhY3Rpb24taGVhZGVyLXBvcHVwLWNyZWF0ZS1zZXJ2aWNlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxXQUFXLEVBQUUsS0FBSyxFQUVsQixpQkFBaUIsRUFDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFJL0QsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDdEUsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sNENBQTRDLENBQUM7QUFFbkYsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sc0NBQXNDLENBQUM7QUFFeEUsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sNkRBQTZELENBQUM7QUFDckcsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDJEQUEyRCxDQUFDO0FBNEUxRixNQUFNLE9BQU8sNENBQTRDO0lBc0V2RCxZQUFzQixpQkFBb0MsRUFDcEMsaUJBQW9DLEVBQ3BDLGtCQUFzQyxFQUN0Qyx3QkFBa0QsRUFDbEQsWUFBcUM7UUFKckMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUNwQyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDdEMsNkJBQXdCLEdBQXhCLHdCQUF3QixDQUEwQjtRQUNsRCxpQkFBWSxHQUFaLFlBQVksQ0FBeUI7UUFuRXBELGtCQUFhLEdBQVksS0FB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QjtpQkFDbEI7Z0JBQ0QsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7YUFDeEM7OztZQXJGTyxpQkFBaUI7WUFJakIsaUJBQWlCO1lBR2pCLGtCQUFrQjtZQUVsQix3QkFBd0I7WUFKeEIsdUJBQXVCOzs7d0JBa0Y1QixXQUFXLFNBQUMsa0RBQWtEOzRCQUs5RCxLQUFLO3VCQUdMLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBIb3N0QmluZGluZywgSW5wdXQsXHJcbiAgT25Jbml0LFxyXG4gIFZpZXdFbmNhcHN1bGF0aW9uXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7Rm9ybU1hc3RlclNlcnZpY2V9IGZyb20gJ0Bjb2xpam5pdC9jb3JlY29tcG9uZW50c192MTInO1xyXG5pbXBvcnQge0FydGljbGVFeHRlbmRlZH0gZnJvbSBcIkBjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtZXh0ZW5kZWQuYm9cIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkxpbmVJbmZvfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3RyYW5zYWN0aW9uLWxpbmUtaW5mby5ib1wiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uSW5mb1Jlc3BvbnNlfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3RyYW5zYWN0aW9uLWluZm8tcmVzcG9uc2UuYm9cIjtcclxuaW1wb3J0IHtEaWN0aW9uYXJ5U2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2UvZGljdGlvbmFyeS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25JbWFnZVNlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLWltYWdlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkxpbmVTZWFyY2hJbmRleH0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC90cmFuc2FjdGlvbi1saW5lLXNlYXJjaC1pbmRleC5ib1wiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uU2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24uc2VydmljZVwiO1xyXG5pbXBvcnQge1JlbGF0aW9ufSBmcm9tIFwiQGNvbGlqbml0L3JlbGF0aW9uYXBpL2J1aWxkL21vZGVsL3JlbGF0aW9uLmJvXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vdHJhbnNhY3Rpb24tc2VhcmNoL3NlcnZpY2UvdHJhbnNhY3Rpb24tc2VhcmNoLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvbktpbmR9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvZW51bS90cmFuc2FjdGlvbi1raW5kLmVudW1cIjtcclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2NvLXRyYW5zYWN0aW9uLWhlYWRlci1wb3B1cC1jcmVhdGUtc2VydmljZScsXHJcbiAgICB0ZW1wbGF0ZTogYFxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0cmFuc2FjdGlvbi1oZWFkZXItcG9wdXAtY2F0ZWdvcnktd3JhcHBlciBjby1zbWFsbC1zY3JvbGxiYXJcIj5cclxuICAgICAgICAgICAgPGNvLWZvcm0+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyLXJlbGF0aW9uLWNvbnRlbnRcIj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLWhlYWRlci1wb3B1cC1zZWN0aW9uIGdlbmVyYWxcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24taGVhZGVyLXBvcHVwLXNlY3Rpb24tbGFiZWxcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIFt0ZXh0Q29udGVudF09XCInMDInXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJsYWJlbC1kZXNjcmlwdGlvblwiIFt0ZXh0Q29udGVudF09XCInU0VSVklDRV9ERVRBSUxTJyB8IGxvY2FsaXplXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjcmVhdGUtdHJhbnNhY3Rpb24tYnV0dG9uc1wiICpuZ0lmPVwiYnV0dG9uc1Zpc2libGVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGNvLWJ1dHRvbiBbbGFiZWxdPVwiJ1NFQVJDSF9PUkRFUicgfCBsb2NhbGl6ZVwiIChjbGljayk9XCJjcmVhdGVPcmRlcldpdGhUcmFuc2FjdGlvbkxpbmVDbGlja2VkKClcIiBbZGlzYWJsZWRdPVwiZm9yY2VSZWFkb25seVwiPjwvY28tYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8Y28tYnV0dG9uIFtsYWJlbF09XCInU0VBUkNIX1BST0RVQ1QnIHwgbG9jYWxpemVcIiAoY2xpY2spPVwiY3JlYXRlT3JkZXJXaXRoQXJ0aWNsZUNsaWNrZWQoKVwiIFtkaXNhYmxlZF09XCJmb3JjZVJlYWRvbmx5XCI+PC9jby1idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxjby1idXR0b24gW2xhYmVsXT1cIidXSVRIT1VUX1BST0RVQ1QnIHwgbG9jYWxpemVcIiAoY2xpY2spPVwiY3JlYXRlT3JkZXJGcm9tU0xBQ2xpY2tlZCgpXCIgW2Rpc2FibGVkXT1cImZvcmNlUmVhZG9ubHlcIj48L2NvLWJ1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiY3JlYXRlVmlhVHJhbnNMaW5lXCIgY2xhc3M9XCJjcmVhdGUtdmlhLXRyYW5zYWN0aW9uXCI+XHJcbjwhLS1cclxuICAgICAgICAgICAgICAgICAgICAgIDxjby1pbnB1dC1zZWFyY2ggW3VzZUxlZnRJY29uXT1cImZhbHNlXCIgW3VzZVJpZ2h0SWNvbl09XCJ0cnVlXCIgW2xhYmVsXT1cIidUUkFOU0FDVElPTicgfCBsb2NhbGl6ZVwiIChyaWdodEljb25DbGljayk9XCJzZWFyY2hUcmFuc2FjdGlvbkNsaWNrZWRfaGFuZGxlcigpXCI+PC9jby1pbnB1dC1zZWFyY2g+XHJcbi0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlcnZpY2UtZGF0YS1oZWFkZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJkYXRhLWRlc2NyaXB0aW9uXCIgW3RleHRDb250ZW50XT1cImV4aXN0aW5nVHJhbnNhY3Rpb25UaXRsZVRleHRcIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidG9nZ2xlLWNoYW5nZVwiIFt0ZXh0Q29udGVudF09XCInQ0hBTkdFJyB8IGxvY2FsaXplXCIgKGNsaWNrKT1cImNyZWF0ZU9yZGVyRnJvbVNMQUNsaWNrZWQoKTsgZm9yY2VSZWFkb25seSA9IGZhbHNlXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiZXhpc3RpbmdUcmFuc2FjdGlvbkxpbmVcIiBjbGFzcz1cImNyZWF0ZS12aWEtdHJhbnNhY3Rpb24tcmVzdWx0LWRpc3BsYXlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGNvLWltYWdlLWRpc3BsYXkgW21vZGVsXT1cImV4aXN0aW5nVHJhbnNhY3Rpb25MaW5lPy5hcnRpY2xlSW1hZ2VEYXRhXCI+PC9jby1pbWFnZS1kaXNwbGF5PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBbdGV4dENvbnRlbnRdPVwiZXhpc3RpbmdUcmFuc2FjdGlvbkxpbmU/Lmdvb2REZXNjcmlwdGlvblwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gW3RleHRDb250ZW50XT1cImV4aXN0aW5nVHJhbnNhY3Rpb25MaW5lPy5hcnRpY2xlQm91bmRDb25jYXRlbmF0ZWRUZXh0XCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBbdGV4dENvbnRlbnRdPVwiZXhpc3RpbmdUcmFuc2FjdGlvbkxpbmU/LnByaWNlIHwgY3VycmVuY3k6ICdFVVInXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiY2hvc2VuVHJhbnNhY3Rpb25MaW5lXCIgY2xhc3M9XCJjcmVhdGUtdmlhLXRyYW5zYWN0aW9uLXJlc3VsdC1kaXNwbGF5XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxjby1pbWFnZS1kaXNwbGF5IFttb2RlbF09XCJ0cmFuc2FjdGlvbkltYWdlXCI+PC9jby1pbWFnZS1kaXNwbGF5PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBbdGV4dENvbnRlbnRdPVwiY2hvc2VuVHJhbnNhY3Rpb25MaW5lPy5nb29kRGVzY3JpcHRpb25cIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS08c3BhbiBbdGV4dENvbnRlbnRdPVwiZXhpc3RpbmdUcmFuc2FjdGlvbkxpbmU/LmFydGljbGVCb3VuZENvbmNhdGVuYXRlZFRleHRcIj48L3NwYW4+LS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS08c3BhbiBbdGV4dENvbnRlbnRdPVwiZXhpc3RpbmdUcmFuc2FjdGlvbkxpbmU/LnByaWNlIHwgY3VycmVuY3k6ICdFVVInXCI+PC9zcGFuPi0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImNyZWF0ZVZpYVByb2R1Y3RcIiBjbGFzcz1cImNyZWF0ZS12aWEtcHJvZHVjdFwiPlxyXG48IS0tXHJcbiAgICAgICAgICAgICAgICAgICAgICAgPGNvLWlucHV0LXNlYXJjaCBbdXNlTGVmdEljb25dPVwiZmFsc2VcIiBbdXNlUmlnaHRJY29uXT1cInRydWVcIiBbbGFiZWxdPVwiJ0FSVElDTEUnIHwgbG9jYWxpemVcIiAocmlnaHRJY29uQ2xpY2spPVwic2VhcmNoQXJ0aWNsZUNsaWNrZWRfaGFuZGxlcigpXCIgWyhtb2RlbCldPVwiYXJ0aWNsZVNlYXJjaFRleHRcIj48L2NvLWlucHV0LXNlYXJjaD5cclxuICAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjcmVhdGUtdmlhLXByb2R1Y3QtcmVzdWx0LWRpc3BsYXlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGNvLWltYWdlLWRpc3BsYXkgW21vZGVsXT1cImNob3NlbkFydGljbGU/LmltYWdlRGF0YVwiPjwvY28taW1hZ2UtZGlzcGxheT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gW3RleHRDb250ZW50XT1cImNob3NlbkFydGljbGU/LmRlc2NyaXB0aW9uXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBbdGV4dENvbnRlbnRdPVwiY2hvc2VuQXJ0aWNsZT8ucHJpY2UgfCBjdXJyZW5jeTogJ0VVUidcIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiY3JlYXRlVmlhT2xkVHJhbnNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxjby1pbnB1dC10ZXh0IFtwbGFjZWhvbGRlcl09XCInVFJBTlNBQ1RJT04nIHwgbG9jYWxpemVcIiBbKG1vZGVsKV09XCJvbGRPcmRlcklkXCIgW3JlcXVpcmVkXT1cImNyZWF0ZVZpYU9sZFRyYW5zXCIgW2Rpc2FibGVkXT1cImZvcmNlUmVhZG9ubHlcIj48L2NvLWlucHV0LXRleHQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8Y28taW5wdXQtdGV4dCBbcGxhY2Vob2xkZXJdPVwiJ1BST0RVQ1QnIHwgbG9jYWxpemVcIiBbKG1vZGVsKV09XCJvbGRHb29kSWRcIiBbcmVxdWlyZWRdPVwiY3JlYXRlVmlhT2xkVHJhbnNcIiBbZGlzYWJsZWRdPVwiZm9yY2VSZWFkb25seVwiPjwvY28taW5wdXQtdGV4dD5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2NvLWZvcm0+XHJcbiAgICAgICAgICAgIDxjby1kaWFsb2ctY2F0YWxvZyAqbmdJZj1cInNob3dDYXRhbG9nUG9wdXBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3Nob3dOYXZpZ2F0aW9uXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtvcHRpb25zXT1cImNhdGFsb2dPcHRpb25zXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwYXJhbWV0ZXJzXT1cImNhdGFsb2dQYXJhbWV0ZXJzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZXR1cm5BcnRpY2xlT25UaWxlQ2xpY2tdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xvc2VDbGljayk9XCJzaG93Q2F0YWxvZ1BvcHVwID0gZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGFydGljbGVDbGlja2VkKT1cImhhbmRsZUNhdGFsb2dBcnRpY2xlQ2xpY2soJGV2ZW50KVwiXHJcbiAgICAgICAgICAgID5cclxuICAgICAgICAgICAgPC9jby1kaWFsb2ctY2F0YWxvZyA+XHJcbiAgICAgICAgICAgPGNvLWRpYWxvZy10cmFuc2FjdGlvbi1zZWFyY2ggKm5nSWY9XCJzaG93VHJhbnNMaW5lUG9wdXBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZWxhdGlvbl09XCJ0aGlzLnJlbGF0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobGluZUNsaWNrZWQpPVwiaGFuZGxlVHJhbnNhY3RpbkxpbmVDbGljaygkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xvc2VDbGljayk9XCJjbG9zZVRyYW5zYWN0aW9uUG9wdXAoKVwiPlxyXG4gICAgICAgICAgIDwvY28tZGlhbG9nLXRyYW5zYWN0aW9uLXNlYXJjaD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIGAsXHJcbiAgICBwcm92aWRlcnM6IFtcclxuICAgICAgRm9ybU1hc3RlclNlcnZpY2VcclxuICAgIF0sXHJcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbkhlYWRlclBvcHVwQ3JlYXRlU2VydmljZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5jby10cmFuc2FjdGlvbi1oZWFkZXItcG9wdXAtY3JlYXRlLXNlcnZpY2UnKVxyXG4gIHB1YmxpYyBzaG93Q2xhc3MoKSB7XHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgZm9yY2VSZWFkb25seTogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyByZWxhdGlvbjogUmVsYXRpb247XHJcblxyXG5cclxuICBwdWJsaWMgYnV0dG9uc1Zpc2libGU6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIHB1YmxpYyBjcmVhdGVWaWFUcmFuc0xpbmU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgY3JlYXRlVmlhUHJvZHVjdDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyBjcmVhdGVWaWFPbGRUcmFuczogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBwdWJsaWMgc2hvd0NhdGFsb2dQb3B1cDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyBzaG93VHJhbnNMaW5lUG9wdXA6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgcHVibGljIHNldCBjaG9zZW5UcmFuc2FjdGlvbkxpbmUocmVzcG9uc2U6IFRyYW5zYWN0aW9uTGluZVNlYXJjaEluZGV4KSB7XHJcbiAgICB0aGlzLl9jaG9zZW5UcmFuc2FjdGlvbkxpbmUgPSByZXNwb25zZTtcclxuICAgIHRoaXMuc2V0VHJhbnNhY3Rpb25MYWJlbCgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBjaG9zZW5UcmFuc2FjdGlvbkxpbmUoKTogVHJhbnNhY3Rpb25MaW5lU2VhcmNoSW5kZXgge1xyXG4gICAgcmV0dXJuIHRoaXMuX2Nob3NlblRyYW5zYWN0aW9uTGluZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzZXQgZXhpc3RpbmdUcmFuc2FjdGlvbihyZXNwb25zZTogVHJhbnNhY3Rpb25JbmZvUmVzcG9uc2UpIHtcclxuICAgIHRoaXMuX2V4aXN0aW5nVHJhbnNhY3Rpb24gPSByZXNwb25zZTtcclxuICAgIHRoaXMuc2V0VHJhbnNhY3Rpb25MYWJlbCgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBleGlzdGluZ1RyYW5zYWN0aW9uKCk6IFRyYW5zYWN0aW9uSW5mb1Jlc3BvbnNlIHtcclxuICAgIHJldHVybiB0aGlzLl9leGlzdGluZ1RyYW5zYWN0aW9uO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldCBleGlzdGluZ1RyYW5zYWN0aW9uTGluZShsaW5lOiBUcmFuc2FjdGlvbkxpbmVJbmZvKSB7XHJcbiAgICB0aGlzLl9leGlzdGluZ1RyYW5zYWN0aW9uTGluZSA9IGxpbmU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGV4aXN0aW5nVHJhbnNhY3Rpb25MaW5lKCk6IFRyYW5zYWN0aW9uTGluZUluZm8ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2V4aXN0aW5nVHJhbnNhY3Rpb25MaW5lO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGV4aXN0aW5nVHJhbnNhY3Rpb25UaXRsZVRleHQ6IHN0cmluZztcclxuICBwdWJsaWMgdHJhbnNhY3Rpb25JbWFnZTogc3RyaW5nO1xyXG5cclxuICBwdWJsaWMgY2hvc2VuQXJ0aWNsZTogQXJ0aWNsZUV4dGVuZGVkO1xyXG4gIHB1YmxpYyBnb29kSWQ6IG51bWJlcjtcclxuXHJcbiAgcHVibGljIG9sZE9yZGVySWQ6IHN0cmluZyA9IFwiXCI7XHJcbiAgcHVibGljIG9sZEdvb2RJZDogc3RyaW5nID0gXCJcIjtcclxuXHJcbiAgcHVibGljIGNhdGFsb2dPcHRpb25zOiBhbnkgPSB7XHJcbiAgICBzZWFyY2hPblN0YXJ0OiB0cnVlLFxyXG4gICAgc2hvd0FkZFRvQ2FydDogZmFsc2UsXHJcbiAgICBzaG93TG9va0F0QXJ0aWNsZUJ1dHRvbjogZmFsc2UsXHJcbiAgICBzaG93QWRkQXJ0aWNsZUJ1dHRvbjogZmFsc2UsXHJcbiAgICBvbmx5VGhyZWVEOiBmYWxzZVxyXG4gIH07XHJcbiAgcHVibGljIGNhdGFsb2dQYXJhbWV0ZXJzOiBhbnkgPSB7fTtcclxuXHJcbiAgcHJpdmF0ZSBfY2hvc2VuVHJhbnNhY3Rpb25MaW5lOiBUcmFuc2FjdGlvbkxpbmVTZWFyY2hJbmRleDtcclxuICBwcml2YXRlIF9leGlzdGluZ1RyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbkluZm9SZXNwb25zZTtcclxuICBwcml2YXRlIF9leGlzdGluZ1RyYW5zYWN0aW9uTGluZTogVHJhbnNhY3Rpb25MaW5lSW5mbztcclxuXHJcblxyXG4gIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBmb3JtTWFzdGVyU2VydmljZTogRm9ybU1hc3RlclNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgcHJvdGVjdGVkIGRpY3Rpb25hcnlTZXJ2aWNlOiBEaWN0aW9uYXJ5U2VydmljZSxcclxuICAgICAgICAgICAgICBwcm90ZWN0ZWQgdHJhbnNhY3Rpb25TZXJ2aWNlOiBUcmFuc2FjdGlvblNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgcHJvdGVjdGVkIHRyYW5zYWN0aW9uU2VhcmNoU2VydmljZTogVHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgIHByb3RlY3RlZCBpbWFnZVNlcnZpY2U6IFRyYW5zYWN0aW9uSW1hZ2VTZXJ2aWNlKSB7XHJcbiAgICB0aGlzLl9wcmVwYXJlQ2F0YWxvZ1JlcXVlc3Q7XHJcbiAgfVxyXG5cclxuICBhc3luYyBuZ09uSW5pdCgpOiBQcm9taXNlPHZvaWQ+IHtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzdWJtaXQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5mb3JtTWFzdGVyU2VydmljZS5zdWJtaXRTbGF2ZXMoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjcmVhdGVPcmRlcldpdGhUcmFuc2FjdGlvbkxpbmVDbGlja2VkKG9wZW5TZWFyY2g6Ym9vbGVhbiA9IHRydWUpOiB2b2lkIHtcclxuICAgIHRoaXMuY3JlYXRlVmlhVHJhbnNMaW5lID0gdHJ1ZTtcclxuICAgIHRoaXMuY3JlYXRlVmlhUHJvZHVjdCA9IGZhbHNlO1xyXG4gICAgdGhpcy5jcmVhdGVWaWFPbGRUcmFucyA9IGZhbHNlO1xyXG4gICAgaWYgKG9wZW5TZWFyY2gpIHtcclxuICAgICAgdGhpcy5vcGVuVHJhbnNhY3Rpb25Qb3BVcCgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGNyZWF0ZU9yZGVyV2l0aEFydGljbGVDbGlja2VkKCk6IHZvaWQge1xyXG4gICAgdGhpcy5jcmVhdGVWaWFUcmFuc0xpbmUgPSBmYWxzZTtcclxuICAgIHRoaXMuY3JlYXRlVmlhUHJvZHVjdCA9IHRydWU7XHJcbiAgICB0aGlzLmNyZWF0ZVZpYU9sZFRyYW5zID0gZmFsc2U7XHJcbiAgICB0aGlzLm9wZW5DYXRhbG9nUG9wVXAoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjcmVhdGVPcmRlckZyb21TTEFDbGlja2VkKCk6IHZvaWQge1xyXG4gICAgdGhpcy5jcmVhdGVWaWFUcmFuc0xpbmUgPSBmYWxzZTtcclxuICAgIHRoaXMuY3JlYXRlVmlhUHJvZHVjdCA9IGZhbHNlO1xyXG4gICAgdGhpcy5jcmVhdGVWaWFPbGRUcmFucyA9IHRydWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb3BlbkNhdGFsb2dQb3BVcCgpOiB2b2lkICB7XHJcbiAgICB0aGlzLnNob3dDYXRhbG9nUG9wdXAgPSB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9wZW5UcmFuc2FjdGlvblBvcFVwKCk6IHZvaWQgIHtcclxuICAgIHRoaXMudHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlLnRyYW5zYWN0aW9uVHlwZSA9IFRyYW5zYWN0aW9uS2luZC5TYWxlc09yZGVyO1xyXG4gICAgdGhpcy5zaG93VHJhbnNMaW5lUG9wdXAgPSB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNsb3NlVHJhbnNhY3Rpb25Qb3B1cCgpOiB2b2lkICB7XHJcbiAgICB0aGlzLnRyYW5zYWN0aW9uU2VhcmNoU2VydmljZS50cmFuc2FjdGlvblR5cGUgPSBUcmFuc2FjdGlvbktpbmQuU2VydmljZU9yZGVyO1xyXG4gICAgdGhpcy50cmFuc2FjdGlvblNlYXJjaFNlcnZpY2UucmVzZXRGaWx0ZXJzKCk7XHJcbiAgICB0aGlzLnNob3dUcmFuc0xpbmVQb3B1cCA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZUNhdGFsb2dBcnRpY2xlQ2xpY2soYXJ0aWNsZTogQXJ0aWNsZUV4dGVuZGVkKTogdm9pZCB7XHJcbiAgICB0aGlzLnNob3dDYXRhbG9nUG9wdXAgPSBmYWxzZTtcclxuICAgIHRoaXMuY2hvc2VuQXJ0aWNsZSA9IGFydGljbGU7XHJcbiAgICB0aGlzLmdvb2RJZCA9IGFydGljbGUuZ29vZElkO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZVRyYW5zYWN0aW5MaW5lQ2xpY2sobGluZTogVHJhbnNhY3Rpb25MaW5lU2VhcmNoSW5kZXgpOiB2b2lke1xyXG4gICAgdGhpcy5zaG93VHJhbnNMaW5lUG9wdXAgPSBmYWxzZTtcclxuICAgIHRoaXMuY2hvc2VuVHJhbnNhY3Rpb25MaW5lID0gbGluZTtcclxuICAgIHRoaXMuc2V0VHJhbnNhY3Rpb25MaW5lSW1hZ2UoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3ByZXBhcmVDYXRhbG9nUmVxdWVzdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuY2F0YWxvZ1BhcmFtZXRlcnMuc2VhcmNoT25TdGFydCA9IHRydWU7XHJcbiAgICB0aGlzLmNhdGFsb2dQYXJhbWV0ZXJzLmRvU3luYyA9ICdBJztcclxuICAgIHRoaXMuY2F0YWxvZ1BhcmFtZXRlcnMuc2hvd1JlZ3VsYXJBcnRpY2xlcyA9IHRydWU7XHJcbiAgICB0aGlzLmNhdGFsb2dQYXJhbWV0ZXJzLnNob3dDb25maWd1cmVkQXJ0aWNsZXMgPSB0cnVlO1xyXG4gICAgdGhpcy5jYXRhbG9nUGFyYW1ldGVycy5zaG93Q29uZmlndXJhYmxlQXJ0aWNsZXMgPSB0cnVlO1xyXG4gICAgdGhpcy5jYXRhbG9nUGFyYW1ldGVycy5zaG93Q29tcG9zaXRpb25BcnRpY2xlcz0gdHJ1ZTtcclxuICAgIHRoaXMuY2F0YWxvZ1BhcmFtZXRlcnMuc2hvd0N1c3RvbWl6ZWRBcnRpY2xlcz0gdHJ1ZTtcclxuICAgIHRoaXMuY2F0YWxvZ1BhcmFtZXRlcnMuc2hvd0luYWN0aXZlQXJ0aWNsZXMgPSB0cnVlO1xyXG4gICAgdGhpcy5jYXRhbG9nUGFyYW1ldGVycy5wdWJsaWNhdGlvbkNvZGUgPSA3MTsgLy8gdG9kbzogZml4IHRoaXM/XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldFRyYW5zYWN0aW9uTGFiZWwoKXtcclxuICAgIGlmICh0aGlzLl9leGlzdGluZ1RyYW5zYWN0aW9uKSB7XHJcbiAgICAgIGxldCBsb2NhbGVQYXJhbXM6IE9iamVjdCA9IHsgeWVhcjogJ251bWVyaWMnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vbnRoOiAnc2hvcnQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRheTogJ251bWVyaWMnfTtcclxuICAgICAgdGhpcy5leGlzdGluZ1RyYW5zYWN0aW9uVGl0bGVUZXh0ID0gdGhpcy5kaWN0aW9uYXJ5U2VydmljZS5nZXQoJ09SREVSJykgKyAnICcgKyB0aGlzLl9leGlzdGluZ1RyYW5zYWN0aW9uLnRyYW5zYWN0aW9uSW5mby50cmFuc2FjdGlvbk5yXHJcbiAgICAgICAgKyAnICcgKyB0aGlzLmRpY3Rpb25hcnlTZXJ2aWNlLmdldCgnRlJPTTEnKSArICcgJyArIHRoaXMuX2V4aXN0aW5nVHJhbnNhY3Rpb24udHJhbnNhY3Rpb25JbmZvLnRyYW5zYWN0aW9uRGF0ZS50b0xvY2FsZURhdGVTdHJpbmcodW5kZWZpbmVkLCBsb2NhbGVQYXJhbXMpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXRUcmFuc2FjdGlvbkxpbmVJbWFnZSgpe1xyXG4gICAgaWYgKHRoaXMuY2hvc2VuVHJhbnNhY3Rpb25MaW5lKSB7XHJcbiAgICAgIHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdldEdvb2RJZEZyb21BcnRpY2xlTnIodGhpcy5jaG9zZW5UcmFuc2FjdGlvbkxpbmUuYXJ0aWNsZU5yKS50aGVuKChnb29kSWQ6IG51bWJlcikgPT4ge1xyXG4gICAgICAgIHRoaXMuaW1hZ2VTZXJ2aWNlLmdldEFydGljbGVJbWFnZShnb29kSWQpLnRoZW4oKGltYWdlOiBzdHJpbmcpID0+IHtcclxuICAgICAgICAgIHRoaXMudHJhbnNhY3Rpb25JbWFnZSA9IGltYWdlO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
220
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24taGVhZGVyLXBvcHVwLWNyZWF0ZS1zZXJ2aWNlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L3RyYW5zYWN0aW9uLWhlYWRlci90cmFuc2FjdGlvbi1oZWFkZXItcG9wdXAvdHJhbnNhY3Rpb24taGVhZGVyLXBvcHVwLWNyZWF0ZS1zZXJ2aWNlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxXQUFXLEVBQUUsS0FBSyxFQUVsQixpQkFBaUIsRUFDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFJL0QsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDdEUsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sNENBQTRDLENBQUM7QUFFbkYsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sc0NBQXNDLENBQUM7QUFFeEUsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sNkRBQTZELENBQUM7QUFDckcsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDJEQUEyRCxDQUFDO0FBdUUxRixNQUFNLE9BQU8sNENBQTRDO0lBc0V2RCxZQUFzQixpQkFBb0MsRUFDcEMsaUJBQW9DLEVBQ3BDLGtCQUFzQyxFQUN0Qyx3QkFBa0QsRUFDbEQsWUFBcUM7UUFKckMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUNwQyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDdEMsNkJBQXdCLEdBQXhCLHdCQUF3QixDQUEwQjtRQUNsRCxpQkFBWSxHQUFaLFlBQVksQ0FBeUI7UUFuRXBELGtCQUFhLEdBQVksS0FB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Q2xCO2dCQUNELGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2FBQ3hDOzs7WUFoRk8saUJBQWlCO1lBSWpCLGlCQUFpQjtZQUdqQixrQkFBa0I7WUFFbEIsd0JBQXdCO1lBSnhCLHVCQUF1Qjs7O3dCQTZFNUIsV0FBVyxTQUFDLGtEQUFrRDs0QkFLOUQsS0FBSzt1QkFHTCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgSG9zdEJpbmRpbmcsIElucHV0LFxyXG4gIE9uSW5pdCxcclxuICBWaWV3RW5jYXBzdWxhdGlvblxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0Zvcm1NYXN0ZXJTZXJ2aWNlfSBmcm9tICdAY29saWpuaXQvY29yZWNvbXBvbmVudHNfdjEyJztcclxuaW1wb3J0IHtBcnRpY2xlRXh0ZW5kZWR9IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLWV4dGVuZGVkLmJvXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25MaW5lSW5mb30gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC90cmFuc2FjdGlvbi1saW5lLWluZm8uYm9cIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkluZm9SZXNwb25zZX0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC90cmFuc2FjdGlvbi1pbmZvLXJlc3BvbnNlLmJvXCI7XHJcbmltcG9ydCB7RGljdGlvbmFyeVNlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi9zZXJ2aWNlL2RpY3Rpb25hcnkuc2VydmljZVwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uSW1hZ2VTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi1pbWFnZS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25MaW5lU2VhcmNoSW5kZXh9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvdHJhbnNhY3Rpb24tbGluZS1zZWFyY2gtaW5kZXguYm9cIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvblNlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtSZWxhdGlvbn0gZnJvbSBcIkBjb2xpam5pdC9yZWxhdGlvbmFwaS9idWlsZC9tb2RlbC9yZWxhdGlvbi5ib1wiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uU2VhcmNoU2VydmljZX0gZnJvbSBcIi4uLy4uL3RyYW5zYWN0aW9uLXNlYXJjaC9zZXJ2aWNlL3RyYW5zYWN0aW9uLXNlYXJjaC5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25LaW5kfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL2VudW0vdHJhbnNhY3Rpb24ta2luZC5lbnVtXCI7XHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdjby10cmFuc2FjdGlvbi1oZWFkZXItcG9wdXAtY3JlYXRlLXNlcnZpY2UnLFxyXG4gICAgdGVtcGxhdGU6IGBcclxuICAgICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24taGVhZGVyLXBvcHVwLWNhdGVnb3J5LXdyYXBwZXIgY28tc21hbGwtc2Nyb2xsYmFyXCI+XHJcbiAgICAgICAgICAgIDxjby1mb3JtPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRlci1yZWxhdGlvbi1jb250ZW50XCI+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0cmFuc2FjdGlvbi1oZWFkZXItcG9wdXAtc2VjdGlvbiBnZW5lcmFsXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLWhlYWRlci1wb3B1cC1zZWN0aW9uLWxhYmVsXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBbdGV4dENvbnRlbnRdPVwiJzAyJ1wiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibGFiZWwtZGVzY3JpcHRpb25cIiBbdGV4dENvbnRlbnRdPVwiJ1NFUlZJQ0VfREVUQUlMUycgfCBsb2NhbGl6ZVwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY3JlYXRlLXRyYW5zYWN0aW9uLWJ1dHRvbnNcIiAqbmdJZj1cImJ1dHRvbnNWaXNpYmxlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxjby1idXR0b24gW2xhYmVsXT1cIidTRUFSQ0hfT1JERVInIHwgbG9jYWxpemVcIiAoY2xpY2spPVwiY3JlYXRlT3JkZXJXaXRoVHJhbnNhY3Rpb25MaW5lQ2xpY2tlZCgpXCIgW2Rpc2FibGVkXT1cImZvcmNlUmVhZG9ubHlcIj48L2NvLWJ1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGNvLWJ1dHRvbiBbbGFiZWxdPVwiJ1NFQVJDSF9QUk9EVUNUJyB8IGxvY2FsaXplXCIgKGNsaWNrKT1cImNyZWF0ZU9yZGVyV2l0aEFydGljbGVDbGlja2VkKClcIiBbZGlzYWJsZWRdPVwiZm9yY2VSZWFkb25seVwiPjwvY28tYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8Y28tYnV0dG9uIFtsYWJlbF09XCInV0lUSE9VVF9QUk9EVUNUJyB8IGxvY2FsaXplXCIgKGNsaWNrKT1cImNyZWF0ZU9yZGVyRnJvbVNMQUNsaWNrZWQoKVwiIFtkaXNhYmxlZF09XCJmb3JjZVJlYWRvbmx5XCI+PC9jby1idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImNyZWF0ZVZpYVRyYW5zTGluZVwiIGNsYXNzPVwiY3JlYXRlLXZpYS10cmFuc2FjdGlvblwiPlxyXG48IS0tXHJcbiAgICAgICAgICAgICAgICAgICAgICA8Y28taW5wdXQtc2VhcmNoIFt1c2VMZWZ0SWNvbl09XCJmYWxzZVwiIFt1c2VSaWdodEljb25dPVwidHJ1ZVwiIFtsYWJlbF09XCInVFJBTlNBQ1RJT04nIHwgbG9jYWxpemVcIiAocmlnaHRJY29uQ2xpY2spPVwic2VhcmNoVHJhbnNhY3Rpb25DbGlja2VkX2hhbmRsZXIoKVwiPjwvY28taW5wdXQtc2VhcmNoPlxyXG4tLT5cclxuICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzZXJ2aWNlLWRhdGEtaGVhZGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZGF0YS1kZXNjcmlwdGlvblwiIFt0ZXh0Q29udGVudF09XCJleGlzdGluZ1RyYW5zYWN0aW9uVGl0bGVUZXh0XCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRvZ2dsZS1jaGFuZ2VcIiBbdGV4dENvbnRlbnRdPVwiJ0NIQU5HRScgfCBsb2NhbGl6ZVwiIChjbGljayk9XCJjcmVhdGVPcmRlcldpdGhUcmFuc2FjdGlvbkxpbmVDbGlja2VkKCk7IGZvcmNlUmVhZG9ubHkgPSBmYWxzZVwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImV4aXN0aW5nVHJhbnNhY3Rpb25MaW5lXCIgY2xhc3M9XCJjcmVhdGUtdmlhLXRyYW5zYWN0aW9uLXJlc3VsdC1kaXNwbGF5XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxjby1pbWFnZS1kaXNwbGF5IFttb2RlbF09XCJleGlzdGluZ1RyYW5zYWN0aW9uTGluZT8uYXJ0aWNsZUltYWdlRGF0YVwiPjwvY28taW1hZ2UtZGlzcGxheT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gW3RleHRDb250ZW50XT1cImV4aXN0aW5nVHJhbnNhY3Rpb25MaW5lPy5nb29kRGVzY3JpcHRpb25cIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIFt0ZXh0Q29udGVudF09XCJleGlzdGluZ1RyYW5zYWN0aW9uTGluZT8uYXJ0aWNsZUJvdW5kQ29uY2F0ZW5hdGVkVGV4dFwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gW3RleHRDb250ZW50XT1cImV4aXN0aW5nVHJhbnNhY3Rpb25MaW5lPy5wcmljZSB8IGN1cnJlbmN5OiAnRVVSJ1wiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImNob3NlblRyYW5zYWN0aW9uTGluZVwiIGNsYXNzPVwiY3JlYXRlLXZpYS10cmFuc2FjdGlvbi1yZXN1bHQtZGlzcGxheVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8Y28taW1hZ2UtZGlzcGxheSBbbW9kZWxdPVwidHJhbnNhY3Rpb25JbWFnZVwiPjwvY28taW1hZ2UtZGlzcGxheT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gW3RleHRDb250ZW50XT1cImNob3NlblRyYW5zYWN0aW9uTGluZT8uZ29vZERlc2NyaXB0aW9uXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImNyZWF0ZVZpYVByb2R1Y3RcIiBjbGFzcz1cImNyZWF0ZS12aWEtcHJvZHVjdFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNyZWF0ZS12aWEtcHJvZHVjdC1yZXN1bHQtZGlzcGxheVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8Y28taW1hZ2UtZGlzcGxheSBbbW9kZWxdPVwiY2hvc2VuQXJ0aWNsZT8uaW1hZ2VEYXRhXCI+PC9jby1pbWFnZS1kaXNwbGF5PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBbdGV4dENvbnRlbnRdPVwiY2hvc2VuQXJ0aWNsZT8uZGVzY3JpcHRpb25cIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIFt0ZXh0Q29udGVudF09XCJjaG9zZW5BcnRpY2xlPy5wcmljZSB8IGN1cnJlbmN5OiAnRVVSJ1wiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJjcmVhdGVWaWFPbGRUcmFuc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGNvLWlucHV0LXRleHQgW3BsYWNlaG9sZGVyXT1cIidUUkFOU0FDVElPTicgfCBsb2NhbGl6ZVwiIFsobW9kZWwpXT1cIm9sZE9yZGVySWRcIiBbcmVxdWlyZWRdPVwiY3JlYXRlVmlhT2xkVHJhbnNcIiBbZGlzYWJsZWRdPVwiZm9yY2VSZWFkb25seVwiPjwvY28taW5wdXQtdGV4dD5cclxuICAgICAgICAgICAgICAgICAgICAgIDxjby1pbnB1dC10ZXh0IFtwbGFjZWhvbGRlcl09XCInUFJPRFVDVCcgfCBsb2NhbGl6ZVwiIFsobW9kZWwpXT1cIm9sZEdvb2RJZFwiIFtyZXF1aXJlZF09XCJjcmVhdGVWaWFPbGRUcmFuc1wiIFtkaXNhYmxlZF09XCJmb3JjZVJlYWRvbmx5XCI+PC9jby1pbnB1dC10ZXh0PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvY28tZm9ybT5cclxuICAgICAgICAgICAgPGNvLWRpYWxvZy1jYXRhbG9nICpuZ0lmPVwic2hvd0NhdGFsb2dQb3B1cFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc2hvd05hdmlnYXRpb25dPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW29wdGlvbnNdPVwiY2F0YWxvZ09wdGlvbnNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BhcmFtZXRlcnNdPVwiY2F0YWxvZ1BhcmFtZXRlcnNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JldHVybkFydGljbGVPblRpbGVDbGlja109XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbG9zZUNsaWNrKT1cInNob3dDYXRhbG9nUG9wdXAgPSBmYWxzZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoYXJ0aWNsZUNsaWNrZWQpPVwiaGFuZGxlQ2F0YWxvZ0FydGljbGVDbGljaygkZXZlbnQpXCJcclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICA8L2NvLWRpYWxvZy1jYXRhbG9nID5cclxuICAgICAgICAgICA8Y28tZGlhbG9nLXRyYW5zYWN0aW9uLXNlYXJjaCAqbmdJZj1cInNob3dUcmFuc0xpbmVQb3B1cFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlbGF0aW9uXT1cInRoaXMucmVsYXRpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChsaW5lQ2xpY2tlZCk9XCJoYW5kbGVUcmFuc2FjdGluTGluZUNsaWNrKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbG9zZUNsaWNrKT1cImNsb3NlVHJhbnNhY3Rpb25Qb3B1cCgpXCI+XHJcbiAgICAgICAgICAgPC9jby1kaWFsb2ctdHJhbnNhY3Rpb24tc2VhcmNoPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgYCxcclxuICAgIHByb3ZpZGVyczogW1xyXG4gICAgICBGb3JtTWFzdGVyU2VydmljZVxyXG4gICAgXSxcclxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uSGVhZGVyUG9wdXBDcmVhdGVTZXJ2aWNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmNvLXRyYW5zYWN0aW9uLWhlYWRlci1wb3B1cC1jcmVhdGUtc2VydmljZScpXHJcbiAgcHVibGljIHNob3dDbGFzcygpIHtcclxuICAgICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBmb3JjZVJlYWRvbmx5OiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHJlbGF0aW9uOiBSZWxhdGlvbjtcclxuXHJcblxyXG4gIHB1YmxpYyBidXR0b25zVmlzaWJsZTogYm9vbGVhbiA9IHRydWU7XHJcbiAgcHVibGljIGNyZWF0ZVZpYVRyYW5zTGluZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyBjcmVhdGVWaWFQcm9kdWN0OiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIGNyZWF0ZVZpYU9sZFRyYW5zOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIHB1YmxpYyBzaG93Q2F0YWxvZ1BvcHVwOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIHNob3dUcmFuc0xpbmVQb3B1cDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBwdWJsaWMgc2V0IGNob3NlblRyYW5zYWN0aW9uTGluZShyZXNwb25zZTogVHJhbnNhY3Rpb25MaW5lU2VhcmNoSW5kZXgpIHtcclxuICAgIHRoaXMuX2Nob3NlblRyYW5zYWN0aW9uTGluZSA9IHJlc3BvbnNlO1xyXG4gICAgdGhpcy5zZXRUcmFuc2FjdGlvbkxhYmVsKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGNob3NlblRyYW5zYWN0aW9uTGluZSgpOiBUcmFuc2FjdGlvbkxpbmVTZWFyY2hJbmRleCB7XHJcbiAgICByZXR1cm4gdGhpcy5fY2hvc2VuVHJhbnNhY3Rpb25MaW5lO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldCBleGlzdGluZ1RyYW5zYWN0aW9uKHJlc3BvbnNlOiBUcmFuc2FjdGlvbkluZm9SZXNwb25zZSkge1xyXG4gICAgdGhpcy5fZXhpc3RpbmdUcmFuc2FjdGlvbiA9IHJlc3BvbnNlO1xyXG4gICAgdGhpcy5zZXRUcmFuc2FjdGlvbkxhYmVsKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGV4aXN0aW5nVHJhbnNhY3Rpb24oKTogVHJhbnNhY3Rpb25JbmZvUmVzcG9uc2Uge1xyXG4gICAgcmV0dXJuIHRoaXMuX2V4aXN0aW5nVHJhbnNhY3Rpb247XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0IGV4aXN0aW5nVHJhbnNhY3Rpb25MaW5lKGxpbmU6IFRyYW5zYWN0aW9uTGluZUluZm8pIHtcclxuICAgIHRoaXMuX2V4aXN0aW5nVHJhbnNhY3Rpb25MaW5lID0gbGluZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgZXhpc3RpbmdUcmFuc2FjdGlvbkxpbmUoKTogVHJhbnNhY3Rpb25MaW5lSW5mbyB7XHJcbiAgICByZXR1cm4gdGhpcy5fZXhpc3RpbmdUcmFuc2FjdGlvbkxpbmU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZXhpc3RpbmdUcmFuc2FjdGlvblRpdGxlVGV4dDogc3RyaW5nO1xyXG4gIHB1YmxpYyB0cmFuc2FjdGlvbkltYWdlOiBzdHJpbmc7XHJcblxyXG4gIHB1YmxpYyBjaG9zZW5BcnRpY2xlOiBBcnRpY2xlRXh0ZW5kZWQ7XHJcbiAgcHVibGljIGdvb2RJZDogbnVtYmVyO1xyXG5cclxuICBwdWJsaWMgb2xkT3JkZXJJZDogc3RyaW5nID0gXCJcIjtcclxuICBwdWJsaWMgb2xkR29vZElkOiBzdHJpbmcgPSBcIlwiO1xyXG5cclxuICBwdWJsaWMgY2F0YWxvZ09wdGlvbnM6IGFueSA9IHtcclxuICAgIHNlYXJjaE9uU3RhcnQ6IHRydWUsXHJcbiAgICBzaG93QWRkVG9DYXJ0OiBmYWxzZSxcclxuICAgIHNob3dMb29rQXRBcnRpY2xlQnV0dG9uOiBmYWxzZSxcclxuICAgIHNob3dBZGRBcnRpY2xlQnV0dG9uOiBmYWxzZSxcclxuICAgIG9ubHlUaHJlZUQ6IGZhbHNlXHJcbiAgfTtcclxuICBwdWJsaWMgY2F0YWxvZ1BhcmFtZXRlcnM6IGFueSA9IHt9O1xyXG5cclxuICBwcml2YXRlIF9jaG9zZW5UcmFuc2FjdGlvbkxpbmU6IFRyYW5zYWN0aW9uTGluZVNlYXJjaEluZGV4O1xyXG4gIHByaXZhdGUgX2V4aXN0aW5nVHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uSW5mb1Jlc3BvbnNlO1xyXG4gIHByaXZhdGUgX2V4aXN0aW5nVHJhbnNhY3Rpb25MaW5lOiBUcmFuc2FjdGlvbkxpbmVJbmZvO1xyXG5cclxuXHJcbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIGZvcm1NYXN0ZXJTZXJ2aWNlOiBGb3JtTWFzdGVyU2VydmljZSxcclxuICAgICAgICAgICAgICBwcm90ZWN0ZWQgZGljdGlvbmFyeVNlcnZpY2U6IERpY3Rpb25hcnlTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgIHByb3RlY3RlZCB0cmFuc2FjdGlvblNlcnZpY2U6IFRyYW5zYWN0aW9uU2VydmljZSxcclxuICAgICAgICAgICAgICBwcm90ZWN0ZWQgdHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlOiBUcmFuc2FjdGlvblNlYXJjaFNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgcHJvdGVjdGVkIGltYWdlU2VydmljZTogVHJhbnNhY3Rpb25JbWFnZVNlcnZpY2UpIHtcclxuICAgIHRoaXMuX3ByZXBhcmVDYXRhbG9nUmVxdWVzdDtcclxuICB9XHJcblxyXG4gIGFzeW5jIG5nT25Jbml0KCk6IFByb21pc2U8dm9pZD4ge1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHN1Ym1pdCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLmZvcm1NYXN0ZXJTZXJ2aWNlLnN1Ym1pdFNsYXZlcygpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNyZWF0ZU9yZGVyV2l0aFRyYW5zYWN0aW9uTGluZUNsaWNrZWQob3BlblNlYXJjaDpib29sZWFuID0gdHJ1ZSk6IHZvaWQge1xyXG4gICAgdGhpcy5jcmVhdGVWaWFUcmFuc0xpbmUgPSB0cnVlO1xyXG4gICAgdGhpcy5jcmVhdGVWaWFQcm9kdWN0ID0gZmFsc2U7XHJcbiAgICB0aGlzLmNyZWF0ZVZpYU9sZFRyYW5zID0gZmFsc2U7XHJcbiAgICBpZiAob3BlblNlYXJjaCkge1xyXG4gICAgICB0aGlzLm9wZW5UcmFuc2FjdGlvblBvcFVwKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgY3JlYXRlT3JkZXJXaXRoQXJ0aWNsZUNsaWNrZWQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmNyZWF0ZVZpYVRyYW5zTGluZSA9IGZhbHNlO1xyXG4gICAgdGhpcy5jcmVhdGVWaWFQcm9kdWN0ID0gdHJ1ZTtcclxuICAgIHRoaXMuY3JlYXRlVmlhT2xkVHJhbnMgPSBmYWxzZTtcclxuICAgIHRoaXMub3BlbkNhdGFsb2dQb3BVcCgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNyZWF0ZU9yZGVyRnJvbVNMQUNsaWNrZWQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmNyZWF0ZVZpYVRyYW5zTGluZSA9IGZhbHNlO1xyXG4gICAgdGhpcy5jcmVhdGVWaWFQcm9kdWN0ID0gZmFsc2U7XHJcbiAgICB0aGlzLmNyZWF0ZVZpYU9sZFRyYW5zID0gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvcGVuQ2F0YWxvZ1BvcFVwKCk6IHZvaWQgIHtcclxuICAgIHRoaXMuc2hvd0NhdGFsb2dQb3B1cCA9IHRydWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb3BlblRyYW5zYWN0aW9uUG9wVXAoKTogdm9pZCB7XHJcbiAgICB0aGlzLnRyYW5zYWN0aW9uU2VhcmNoU2VydmljZS50cmFuc2FjdGlvblR5cGUgPSBUcmFuc2FjdGlvbktpbmQuU2FsZXNPcmRlcjtcclxuICAgIHRoaXMuc2hvd1RyYW5zTGluZVBvcHVwID0gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjbG9zZVRyYW5zYWN0aW9uUG9wdXAoKTogdm9pZCAge1xyXG4gICAgdGhpcy50cmFuc2FjdGlvblNlYXJjaFNlcnZpY2UudHJhbnNhY3Rpb25UeXBlID0gVHJhbnNhY3Rpb25LaW5kLlNlcnZpY2VPcmRlcjtcclxuICAgIHRoaXMudHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlLnJlc2V0RmlsdGVycygpO1xyXG4gICAgdGhpcy5zaG93VHJhbnNMaW5lUG9wdXAgPSBmYWxzZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVDYXRhbG9nQXJ0aWNsZUNsaWNrKGFydGljbGU6IEFydGljbGVFeHRlbmRlZCk6IHZvaWQge1xyXG4gICAgdGhpcy5zaG93Q2F0YWxvZ1BvcHVwID0gZmFsc2U7XHJcbiAgICB0aGlzLmNob3NlbkFydGljbGUgPSBhcnRpY2xlO1xyXG4gICAgdGhpcy5nb29kSWQgPSBhcnRpY2xlLmdvb2RJZDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVUcmFuc2FjdGluTGluZUNsaWNrKGxpbmU6IFRyYW5zYWN0aW9uTGluZVNlYXJjaEluZGV4KTogdm9pZHtcclxuICAgIHRoaXMuc2hvd1RyYW5zTGluZVBvcHVwID0gZmFsc2U7XHJcbiAgICB0aGlzLmNob3NlblRyYW5zYWN0aW9uTGluZSA9IGxpbmU7XHJcbiAgICB0aGlzLnNldFRyYW5zYWN0aW9uTGluZUltYWdlKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9wcmVwYXJlQ2F0YWxvZ1JlcXVlc3QoKTogdm9pZCB7XHJcbiAgICB0aGlzLmNhdGFsb2dQYXJhbWV0ZXJzLnNlYXJjaE9uU3RhcnQgPSB0cnVlO1xyXG4gICAgdGhpcy5jYXRhbG9nUGFyYW1ldGVycy5kb1N5bmMgPSAnQSc7XHJcbiAgICB0aGlzLmNhdGFsb2dQYXJhbWV0ZXJzLnNob3dSZWd1bGFyQXJ0aWNsZXMgPSB0cnVlO1xyXG4gICAgdGhpcy5jYXRhbG9nUGFyYW1ldGVycy5zaG93Q29uZmlndXJlZEFydGljbGVzID0gdHJ1ZTtcclxuICAgIHRoaXMuY2F0YWxvZ1BhcmFtZXRlcnMuc2hvd0NvbmZpZ3VyYWJsZUFydGljbGVzID0gdHJ1ZTtcclxuICAgIHRoaXMuY2F0YWxvZ1BhcmFtZXRlcnMuc2hvd0NvbXBvc2l0aW9uQXJ0aWNsZXM9IHRydWU7XHJcbiAgICB0aGlzLmNhdGFsb2dQYXJhbWV0ZXJzLnNob3dDdXN0b21pemVkQXJ0aWNsZXM9IHRydWU7XHJcbiAgICB0aGlzLmNhdGFsb2dQYXJhbWV0ZXJzLnNob3dJbmFjdGl2ZUFydGljbGVzID0gdHJ1ZTtcclxuICAgIHRoaXMuY2F0YWxvZ1BhcmFtZXRlcnMucHVibGljYXRpb25Db2RlID0gNzE7IC8vIHRvZG86IGZpeCB0aGlzP1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXRUcmFuc2FjdGlvbkxhYmVsKCl7XHJcbiAgICBpZiAodGhpcy5fZXhpc3RpbmdUcmFuc2FjdGlvbikge1xyXG4gICAgICBsZXQgbG9jYWxlUGFyYW1zOiBPYmplY3QgPSB7IHllYXI6ICdudW1lcmljJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtb250aDogJ3Nob3J0JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXk6ICdudW1lcmljJ307XHJcbiAgICAgIHRoaXMuZXhpc3RpbmdUcmFuc2FjdGlvblRpdGxlVGV4dCA9IHRoaXMuZGljdGlvbmFyeVNlcnZpY2UuZ2V0KCdPUkRFUicpICsgJyAnICsgdGhpcy5fZXhpc3RpbmdUcmFuc2FjdGlvbi50cmFuc2FjdGlvbkluZm8udHJhbnNhY3Rpb25OclxyXG4gICAgICAgICsgJyAnICsgdGhpcy5kaWN0aW9uYXJ5U2VydmljZS5nZXQoJ0ZST00xJykgKyAnICcgKyB0aGlzLl9leGlzdGluZ1RyYW5zYWN0aW9uLnRyYW5zYWN0aW9uSW5mby50cmFuc2FjdGlvbkRhdGUudG9Mb2NhbGVEYXRlU3RyaW5nKHVuZGVmaW5lZCwgbG9jYWxlUGFyYW1zKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2V0VHJhbnNhY3Rpb25MaW5lSW1hZ2UoKXtcclxuICAgIGlmICh0aGlzLmNob3NlblRyYW5zYWN0aW9uTGluZSkge1xyXG4gICAgICB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5nZXRHb29kSWRGcm9tQXJ0aWNsZU5yKHRoaXMuY2hvc2VuVHJhbnNhY3Rpb25MaW5lLmFydGljbGVOcikudGhlbigoZ29vZElkOiBudW1iZXIpID0+IHtcclxuICAgICAgICB0aGlzLmltYWdlU2VydmljZS5nZXRBcnRpY2xlSW1hZ2UoZ29vZElkKS50aGVuKChpbWFnZTogc3RyaW5nKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLnRyYW5zYWN0aW9uSW1hZ2UgPSBpbWFnZTtcclxuICAgICAgICB9KTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -73,6 +73,23 @@ export class ArticleConnectorService {
73
73
  });
74
74
  });
75
75
  }
76
+ getArticleListWithBarcodeArticleNrEanCode(search) {
77
+ return __awaiter(this, void 0, void 0, function* () {
78
+ return new Promise((resolve, reject) => {
79
+ return this.connector.getArticleListWithBarcodeArticleNrEanCode(search).then((response) => {
80
+ if (response && response.validationResult && response.validationResult.success) {
81
+ // return this._boFactory.makeWithRawBackendData(ArticleExtended, response.resultObject) as ArticleLight;
82
+ const collection = this._boFactory.makeBOArrayFromRawBackendDataArray(ArticleLight, response.resultObject);
83
+ resolve(collection);
84
+ }
85
+ else {
86
+ this._handleExceptionFromResponse(response);
87
+ reject(null);
88
+ }
89
+ });
90
+ });
91
+ });
92
+ }
76
93
  getMainArticles() {
77
94
  return __awaiter(this, void 0, void 0, function* () {
78
95
  return new Promise((resolve, reject) => {
@@ -150,4 +167,4 @@ ArticleConnectorService.ctorParameters = () => [
150
167
  { type: DialogService },
151
168
  { type: ErrorService }
152
169
  ];
153
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJ0aWNsZS1jb25uZWN0b3Iuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvc2VydmljZS9hcnRpY2xlLWNvbm5lY3Rvci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUM3RCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sb0RBQW9ELENBQUM7QUFDakYsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sMkRBQTJELENBQUM7QUFDakcsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLG1EQUFtRCxDQUFDO0FBQy9FLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDBEQUEwRCxDQUFDO0FBQzVGLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxrREFBa0QsQ0FBQztBQUM3RSxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUVwRSxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSwrREFBK0QsQ0FBQztBQUVwRyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sa0JBQWtCLENBQUM7QUFFL0MsT0FBTyxFQUFDLDBCQUEwQixFQUFDLE1BQU0sZ0VBQWdFLENBQUM7QUFDMUcsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHNEQUFzRCxDQUFDO0FBQ3JGLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7QUFLN0MsTUFBTSxPQUFPLHVCQUF1QjtJQUtsQyxZQUNVLHdCQUFpRCxFQUNqRCxjQUE2QixFQUM3QixhQUEyQjtRQUYzQiw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQXlCO1FBQ2pELG1CQUFjLEdBQWQsY0FBYyxDQUFlO1FBQzdCLGtCQUFhLEdBQWIsYUFB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QWE7WUFJYixZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3RhYmxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtBcnRpY2xlc30gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvYXJ0aWNsZXMnO1xyXG5pbXBvcnQge1N0b2NrTG9jYXRpb259IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL3N0b2NrLWxvY2F0aW9uLmJvJztcclxuaW1wb3J0IHtBcnRpY2xlRXh0ZW5kZWRSZXF1ZXN0fSBmcm9tICdAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLWV4dGVuZGVkLXJlcXVlc3QnO1xyXG5pbXBvcnQge0FydGljbGVMaWdodH0gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1saWdodC5ibyc7XHJcbmltcG9ydCB7VHVybm92ZXJHcm91cEltYWdlfSBmcm9tICdAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC90dXJub3Zlci1ncm91cC1pbWFnZS5ibyc7XHJcbmltcG9ydCB7TWFpbkFydGljbGV9IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL21haW4tYXJ0aWNsZS5ibyc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25FdmVudFNlcnZpY2V9IGZyb20gJy4vdHJhbnNhY3Rpb24tZXZlbnQuc2VydmljZSc7XHJcbmltcG9ydCB7RGF0YVNlcnZpY2VSZXNwb25zZURhdGF9IGZyb20gJ0Bjb2xpam5pdC9pb25lY29ubmVjdG9yL2J1aWxkL21vZGVsL2RhdGEtc2VydmljZS1yZXNwb25zZS1kYXRhJztcclxuaW1wb3J0IHtCdXNpbmVzc09iamVjdEZhY3Rvcnl9IGZyb20gJ0Bjb2xpam5pdC9pb25lY29ubmVjdG9yL2J1aWxkL3NlcnZpY2UvYnVzaW5lc3Mtb2JqZWN0LWZhY3RvcnknO1xyXG5pbXBvcnQge0FydGljbGVGbGF0VHJlZURUT30gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1mbGF0LXRyZWUuYm8nO1xyXG5pbXBvcnQge0RpYWxvZ1NlcnZpY2V9IGZyb20gJy4vZGlhbG9nLnNlcnZpY2UnO1xyXG5pbXBvcnQge0V4dGVybmFsQ2F0YWxvZ1N0YXJ0dXBJbmZvUmVxdWVzdH0gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvZXh0ZXJuYWwtY2F0YWxvZy1zdGFydHVwLWluZm8tcmVxdWVzdCc7XHJcbmltcG9ydCB7RXh0ZXJuYWxDYXRhbG9nU3RhcnR1cEluZm99IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2V4dGVybmFsLWNhdGFsb2ctc3RhcnR1cC1pbmZvJztcclxuaW1wb3J0IHtBcnRpY2xlRXh0ZW5kZWR9IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtZXh0ZW5kZWQuYm8nO1xyXG5pbXBvcnQge0Vycm9yU2VydmljZX0gZnJvbSAnLi9lcnJvci5zZXJ2aWNlJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiBcInJvb3RcIlxyXG59KVxyXG5leHBvcnQgY2xhc3MgQXJ0aWNsZUNvbm5lY3RvclNlcnZpY2Uge1xyXG4gIHB1YmxpYyBjb25uZWN0b3I6IEFydGljbGVzO1xyXG5cclxuICBwcml2YXRlIF9ib0ZhY3Rvcnk6IEJ1c2luZXNzT2JqZWN0RmFjdG9yeSA9IG5ldyBCdXNpbmVzc09iamVjdEZhY3RvcnkoKTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIF90cmFuc2FjdGlvbkV2ZW50U2VydmljZTogVHJhbnNhY3Rpb25FdmVudFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9kaWFsb2dTZXJ2aWNlOiBEaWFsb2dTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfZXJyb3JTZXJ2aWNlOiBFcnJvclNlcnZpY2VcclxuICApIHtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjb25uZWN0KHNldHRpbmdzOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMuY29ubmVjdG9yID0gbmV3IEFydGljbGVzKHNldHRpbmdzKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBnZXRXYXJlaG91c2VMb2NhdGlvbnMod2FyZWhvdXNlTnI6IG51bWJlcik6IFByb21pc2U8U3RvY2tMb2NhdGlvbltdPiB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmNvbm5lY3Rvci5nZXRTdG9ja01hbmFnZW1lbnRMb2NhdGlvbnMod2FyZWhvdXNlTnIpLnRoZW4oKHJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgICBpZiAocmVzcG9uc2UgJiYgcmVzcG9uc2UudmFsaWRhdGlvblJlc3VsdCAmJiByZXNwb25zZS52YWxpZGF0aW9uUmVzdWx0LnN1Y2Nlc3MpIHtcclxuICAgICAgICAgICAgY29uc3QgY29sbGVjdGlvbjogU3RvY2tMb2NhdGlvbltdID0gdGhpcy5fYm9GYWN0b3J5Lm1ha2VCT0FycmF5RnJvbVJhd0JhY2tlbmREYXRhQXJyYXkoU3RvY2tMb2NhdGlvbiwgcmVzcG9uc2UucmVzdWx0T2JqZWN0cykgYXMgdW5rbm93biBhcyBTdG9ja0xvY2F0aW9uW107XHJcbiAgICAgICAgICAgIHJlc29sdmUoY29sbGVjdGlvbik7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICByZWplY3QocmVzcG9uc2UudmFsaWRhdGlvbk1lc3NhZ2VzQXNTdHJpbmcpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBnZXRBcnRpY2xlRXh0ZW5kZWQoYXJ0aWNsZU5yOiBzdHJpbmcpOiBQcm9taXNlPEFydGljbGVFeHRlbmRlZD4ge1xyXG4gICAgY29uc3QgcmVxdWVzdDogQXJ0aWNsZUV4dGVuZGVkUmVxdWVzdCA9IG5ldyBBcnRpY2xlRXh0ZW5kZWRSZXF1ZXN0KCk7XHJcbiAgICByZXF1ZXN0LmFydGljbGVOdW1iZXIgPSBhcnRpY2xlTnI7XHJcbiAgICBjb25zdCByZXN1bHQ6IERhdGFTZXJ2aWNlUmVzcG9uc2VEYXRhID0gYXdhaXQgdGhpcy5jb25uZWN0b3Iuc2VhcmNoQXJ0aWNsZXMocmVxdWVzdCk7XHJcbiAgICBpZiAocmVzdWx0LnZhbGlkYXRpb25SZXN1bHQgJiYgcmVzdWx0LnZhbGlkYXRpb25SZXN1bHQuc3VjY2Vzcykge1xyXG4gICAgICBpZiAocmVzdWx0LnJlc3VsdE9iamVjdHMgJiYgcmVzdWx0LnJlc3VsdE9iamVjdHMubGVuZ3RoID09PSAxKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2JvRmFjdG9yeS5tYWtlV2l0aFJhd0JhY2tlbmREYXRhKEFydGljbGVFeHRlbmRlZCwgcmVzdWx0LnJlc3VsdE9iamVjdHNbMF0pIGFzIEFydGljbGVFeHRlbmRlZDtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5faGFuZGxlRXhjZXB0aW9uRnJvbVJlc3BvbnNlKHJlc3VsdCk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBzZWFyY2hBcnRpY2xlcyhyZXF1ZXN0OiBBcnRpY2xlRXh0ZW5kZWRSZXF1ZXN0KTogUHJvbWlzZTxBcnRpY2xlTGlnaHRbXT4ge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcclxuICAgICAgcmV0dXJuIHRoaXMuY29ubmVjdG9yLnNlYXJjaEFydGljbGVzTGlnaHQocmVxdWVzdCkudGhlbigocmVzcG9uc2UpID0+IHtcclxuICAgICAgICBpZiAocmVzcG9uc2UgJiYgcmVzcG9uc2UudmFsaWRhdGlvblJlc3VsdCAmJiByZXNwb25zZS52YWxpZGF0aW9uUmVzdWx0LnN1Y2Nlc3MpIHtcclxuICAgICAgICAgIGNvbnN0IGNvbGxlY3Rpb246IEFydGljbGVMaWdodFtdID0gdGhpcy5fYm9GYWN0b3J5Lm1ha2VCT0FycmF5RnJvbVJhd0JhY2tlbmREYXRhQXJyYXkoQXJ0aWNsZUxpZ2h0LCByZXNwb25zZS5yZXN1bHRPYmplY3RzKSBhcyB1bmtub3duIGFzIEFydGljbGVMaWdodFtdO1xyXG4gICAgICAgICAgcmVzb2x2ZShjb2xsZWN0aW9uKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5faGFuZGxlRXhjZXB0aW9uRnJvbVJlc3BvbnNlKHJlc3BvbnNlKTtcclxuICAgICAgICAgIHJlamVjdChudWxsKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgZ2V0TWFpbkFydGljbGVzKCk6IFByb21pc2U8TWFpbkFydGljbGVbXT4ge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcclxuICAgICAgcmV0dXJuIHRoaXMuY29ubmVjdG9yLmdldE1haW5BcnRpY2xlcygpLnRoZW4oKHJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc3BvbnNlICYmIHJlc3BvbnNlLnZhbGlkYXRpb25SZXN1bHQgJiYgcmVzcG9uc2UudmFsaWRhdGlvblJlc3VsdC5zdWNjZXNzKSB7XHJcbiAgICAgICAgICBjb25zdCBjb2xsZWN0aW9uOiBNYWluQXJ0aWNsZVtdID0gdGhpcy5fYm9GYWN0b3J5Lm1ha2VCT0FycmF5RnJvbVJhd0JhY2tlbmREYXRhQXJyYXkoTWFpbkFydGljbGUsIHJlc3BvbnNlLnJlc3VsdE9iamVjdHMpIGFzIHVua25vd24gYXMgTWFpbkFydGljbGVbXTtcclxuICAgICAgICAgIHJlc29sdmUoY29sbGVjdGlvbik7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMuX2hhbmRsZUV4Y2VwdGlvbkZyb21SZXNwb25zZShyZXNwb25zZSk7XHJcbiAgICAgICAgICByZWplY3QobnVsbCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGdldFR1cm5vdmVyR3JvdXBzKGNhdGVnb3J5Pzogc3RyaW5nKTogUHJvbWlzZTxUdXJub3Zlckdyb3VwSW1hZ2VbXT4ge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlOiBGdW5jdGlvbiwgcmVqZWN0OiBGdW5jdGlvbikgPT4ge1xyXG4gICAgICAvLyBjb25zdCBjb2xsZWN0aW9uID0gdGhpcy5fY29sbGVjdGlvblNlcnZpY2UuZ2V0Q29sbGVjdGlvbihUdXJub3Zlckdyb3VwSW1hZ2UubmFtZSk7XHJcbiAgICAgIC8vIGlmIChjb2xsZWN0aW9uKSB7XHJcbiAgICAgIC8vICAgcmV0dXJuIHJlc29sdmUoY29sbGVjdGlvbik7XHJcbiAgICAgIC8vIH1cclxuICAgICAgcmV0dXJuIHRoaXMuY29ubmVjdG9yLmdldFR1cm5vdmVyR3JvdXBzKGNhdGVnb3J5KS50aGVuKChyZXN1bHQ6IERhdGFTZXJ2aWNlUmVzcG9uc2VEYXRhKSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc3VsdC52YWxpZGF0aW9uUmVzdWx0ICYmIHJlc3VsdC52YWxpZGF0aW9uUmVzdWx0LnN1Y2Nlc3MpIHtcclxuICAgICAgICAgIGNvbnN0IGNvbGxlY3Rpb246IFR1cm5vdmVyR3JvdXBJbWFnZVtdID0gdGhpcy5fYm9GYWN0b3J5Lm1ha2VCT0FycmF5RnJvbVJhd0JhY2tlbmREYXRhQXJyYXkoVHVybm92ZXJHcm91cEltYWdlLCByZXN1bHQucmVzdWx0T2JqZWN0cykgYXMgdW5rbm93biBhcyBUdXJub3Zlckdyb3VwSW1hZ2VbXTtcclxuICAgICAgICAgIC8vIHRoaXMuX2NvbGxlY3Rpb25TZXJ2aWNlLmNhY2hlQ29sbGVjdGlvbihUdXJub3Zlckdyb3VwSW1hZ2UubmFtZSwgY29sbGVjdGlvbik7XHJcbiAgICAgICAgICByZXNvbHZlKGNvbGxlY3Rpb24pO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLl9oYW5kbGVFeGNlcHRpb25Gcm9tUmVzcG9uc2UocmVzdWx0KTtcclxuICAgICAgICAgIHJlamVjdChudWxsKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgc3RvcmVDYXRGYXJtQ29tcG9zaXRpb25BcnRpY2xlKGNhdGFsb2dJZDogbnVtYmVyLCBhcnRpY2xlRmxhdFRyZWU6IEFydGljbGVGbGF0VHJlZURUTyk6IFByb21pc2U8c3RyaW5nPiB7XHJcbiAgICBjb25zdCByZXNwb25zZTogRGF0YVNlcnZpY2VSZXNwb25zZURhdGEgPSBhd2FpdCB0aGlzLmNvbm5lY3Rvci5zdG9yZUNhdEZhcm1Db21wb3NpdGlvbkFydGljbGUoY2F0YWxvZ0lkLCBhcnRpY2xlRmxhdFRyZWUpO1xyXG4gICAgaWYgKHJlc3BvbnNlICYmIHJlc3BvbnNlLnZhbGlkYXRpb25SZXN1bHQgJiYgcmVzcG9uc2UudmFsaWRhdGlvblJlc3VsdC5zdWNjZXNzICYmIHJlc3BvbnNlLnJlc3VsdE9iamVjdCAhPT0gbnVsbCkge1xyXG4gICAgICByZXR1cm4gcmVzcG9uc2UucmVzdWx0T2JqZWN0O1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5faGFuZGxlRXhjZXB0aW9uRnJvbVJlc3BvbnNlKHJlc3BvbnNlKTtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgZ2V0V2ViVmlld1N0YXJ0dXBJbmZvKHJlcXVlc3Q6IEV4dGVybmFsQ2F0YWxvZ1N0YXJ0dXBJbmZvUmVxdWVzdCk6IFByb21pc2U8RXh0ZXJuYWxDYXRhbG9nU3RhcnR1cEluZm8+IHtcclxuICAgIC8vIEB0cy1pZ25vcmVcclxuICAgIGNvbnN0IHJlc3BvbnNlOiBEYXRhU2VydmljZVJlc3BvbnNlRGF0YSA9IGF3YWl0IHRoaXMuY29ubmVjdG9yLmdldFdlYnZpZXdTdGFydHVwSW5mbyhyZXF1ZXN0KTtcclxuICAgIGlmIChyZXNwb25zZSAmJiByZXNwb25zZS52YWxpZGF0aW9uUmVzdWx0ICYmIHJlc3BvbnNlLnZhbGlkYXRpb25SZXN1bHQuc3VjY2Vzcykge1xyXG4gICAgICByZXR1cm4gdGhpcy5fYm9GYWN0b3J5Lm1ha2VXaXRoUmF3QmFja2VuZERhdGEoRXh0ZXJuYWxDYXRhbG9nU3RhcnR1cEluZm8sIHJlc3BvbnNlLnJlc3VsdE9iamVjdCkgYXMgdW5rbm93biBhcyBFeHRlcm5hbENhdGFsb2dTdGFydHVwSW5mbztcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuX2hhbmRsZUV4Y2VwdGlvbkZyb21SZXNwb25zZShyZXNwb25zZSk7XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfaGFuZGxlRXhjZXB0aW9uRnJvbVJlc3BvbnNlKHJlc3VsdDogRGF0YVNlcnZpY2VSZXNwb25zZURhdGEpOiB2b2lkIHtcclxuICAgIHRoaXMuX2Vycm9yU2VydmljZS5zaG93VmFsaWRhdGlvbkVycm9yKHJlc3VsdCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
170
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJ0aWNsZS1jb25uZWN0b3Iuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvc2VydmljZS9hcnRpY2xlLWNvbm5lY3Rvci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUM3RCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sb0RBQW9ELENBQUM7QUFDakYsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sMkRBQTJELENBQUM7QUFDakcsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLG1EQUFtRCxDQUFDO0FBQy9FLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDBEQUEwRCxDQUFDO0FBQzVGLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxrREFBa0QsQ0FBQztBQUM3RSxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUVwRSxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSwrREFBK0QsQ0FBQztBQUVwRyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sa0JBQWtCLENBQUM7QUFFL0MsT0FBTyxFQUFDLDBCQUEwQixFQUFDLE1BQU0sZ0VBQWdFLENBQUM7QUFDMUcsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHNEQUFzRCxDQUFDO0FBQ3JGLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7QUFNN0MsTUFBTSxPQUFPLHVCQUF1QjtJQUtsQyxZQUNVLHdCQUFpRCxFQUNqRCxjQUE2QixFQUM3QixhQUEyQjtRQUYzQiw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQXlCO1FBQ2pELG1CQUFjLEdBQWQsY0FBYyxDQUFlO1FBQzdCLGtCQUFhLEdBQWIsYUFB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QUNILENBQUM7S0FBQTtJQUVZLHFCQUFxQixDQUFDLE9BQTBDOztZQUMzRSxhQUFhO1lBQ2IsTUFBTSxRQUFRLEdBQTRCLE1BQU0sSUFBSSxDQUFDLFNBQVMsQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUM5RixJQUFJLFFBQVEsSUFBSSxRQUFRLENBQUMsZ0JBQWdCLElBQUksUUFBUSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRTtnQkFDOUUsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLHNCQUFzQixDQUFDLDBCQUEwQixFQUFFLFFBQVEsQ0FBQyxZQUFZLENBQTBDLENBQUM7YUFDM0k7aUJBQU07Z0JBQ0wsSUFBSSxDQUFDLDRCQUE0QixDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUM1QyxPQUFPLElBQUksQ0FBQzthQUNiO1FBQ0gsQ0FBQztLQUFBO0lBRU8sNEJBQTRCLENBQUMsTUFBK0I7UUFDbEUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNqRCxDQUFDOzs7O1lBbklGLFVBQVUsU0FBQztnQkFDVixVQUFVLEVBQUUsTUFBTTthQUNuQjs7O1lBYk8sdUJBQXVCO1lBSXZCLGFBQWE7WUFJYixZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3RhYmxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtBcnRpY2xlc30gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvYXJ0aWNsZXMnO1xyXG5pbXBvcnQge1N0b2NrTG9jYXRpb259IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL3N0b2NrLWxvY2F0aW9uLmJvJztcclxuaW1wb3J0IHtBcnRpY2xlRXh0ZW5kZWRSZXF1ZXN0fSBmcm9tICdAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLWV4dGVuZGVkLXJlcXVlc3QnO1xyXG5pbXBvcnQge0FydGljbGVMaWdodH0gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1saWdodC5ibyc7XHJcbmltcG9ydCB7VHVybm92ZXJHcm91cEltYWdlfSBmcm9tICdAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC90dXJub3Zlci1ncm91cC1pbWFnZS5ibyc7XHJcbmltcG9ydCB7TWFpbkFydGljbGV9IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL21haW4tYXJ0aWNsZS5ibyc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25FdmVudFNlcnZpY2V9IGZyb20gJy4vdHJhbnNhY3Rpb24tZXZlbnQuc2VydmljZSc7XHJcbmltcG9ydCB7RGF0YVNlcnZpY2VSZXNwb25zZURhdGF9IGZyb20gJ0Bjb2xpam5pdC9pb25lY29ubmVjdG9yL2J1aWxkL21vZGVsL2RhdGEtc2VydmljZS1yZXNwb25zZS1kYXRhJztcclxuaW1wb3J0IHtCdXNpbmVzc09iamVjdEZhY3Rvcnl9IGZyb20gJ0Bjb2xpam5pdC9pb25lY29ubmVjdG9yL2J1aWxkL3NlcnZpY2UvYnVzaW5lc3Mtb2JqZWN0LWZhY3RvcnknO1xyXG5pbXBvcnQge0FydGljbGVGbGF0VHJlZURUT30gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1mbGF0LXRyZWUuYm8nO1xyXG5pbXBvcnQge0RpYWxvZ1NlcnZpY2V9IGZyb20gJy4vZGlhbG9nLnNlcnZpY2UnO1xyXG5pbXBvcnQge0V4dGVybmFsQ2F0YWxvZ1N0YXJ0dXBJbmZvUmVxdWVzdH0gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvZXh0ZXJuYWwtY2F0YWxvZy1zdGFydHVwLWluZm8tcmVxdWVzdCc7XHJcbmltcG9ydCB7RXh0ZXJuYWxDYXRhbG9nU3RhcnR1cEluZm99IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2V4dGVybmFsLWNhdGFsb2ctc3RhcnR1cC1pbmZvJztcclxuaW1wb3J0IHtBcnRpY2xlRXh0ZW5kZWR9IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtZXh0ZW5kZWQuYm8nO1xyXG5pbXBvcnQge0Vycm9yU2VydmljZX0gZnJvbSAnLi9lcnJvci5zZXJ2aWNlJztcclxuaW1wb3J0IHtwcm9taXNlfSBmcm9tIFwicHJvdHJhY3RvclwiO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46IFwicm9vdFwiXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBcnRpY2xlQ29ubmVjdG9yU2VydmljZSB7XHJcbiAgcHVibGljIGNvbm5lY3RvcjogQXJ0aWNsZXM7XHJcblxyXG4gIHByaXZhdGUgX2JvRmFjdG9yeTogQnVzaW5lc3NPYmplY3RGYWN0b3J5ID0gbmV3IEJ1c2luZXNzT2JqZWN0RmFjdG9yeSgpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgX3RyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlOiBUcmFuc2FjdGlvbkV2ZW50U2VydmljZSxcclxuICAgIHByaXZhdGUgX2RpYWxvZ1NlcnZpY2U6IERpYWxvZ1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9lcnJvclNlcnZpY2U6IEVycm9yU2VydmljZVxyXG4gICkge1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNvbm5lY3Qoc2V0dGluZ3M6IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5jb25uZWN0b3IgPSBuZXcgQXJ0aWNsZXMoc2V0dGluZ3MpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGdldFdhcmVob3VzZUxvY2F0aW9ucyh3YXJlaG91c2VOcjogbnVtYmVyKTogUHJvbWlzZTxTdG9ja0xvY2F0aW9uW10+IHtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuY29ubmVjdG9yLmdldFN0b2NrTWFuYWdlbWVudExvY2F0aW9ucyh3YXJlaG91c2VOcikudGhlbigocmVzcG9uc2UpID0+IHtcclxuICAgICAgICAgIGlmIChyZXNwb25zZSAmJiByZXNwb25zZS52YWxpZGF0aW9uUmVzdWx0ICYmIHJlc3BvbnNlLnZhbGlkYXRpb25SZXN1bHQuc3VjY2Vzcykge1xyXG4gICAgICAgICAgICBjb25zdCBjb2xsZWN0aW9uOiBTdG9ja0xvY2F0aW9uW10gPSB0aGlzLl9ib0ZhY3RvcnkubWFrZUJPQXJyYXlGcm9tUmF3QmFja2VuZERhdGFBcnJheShTdG9ja0xvY2F0aW9uLCByZXNwb25zZS5yZXN1bHRPYmplY3RzKSBhcyB1bmtub3duIGFzIFN0b2NrTG9jYXRpb25bXTtcclxuICAgICAgICAgICAgcmVzb2x2ZShjb2xsZWN0aW9uKTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHJlamVjdChyZXNwb25zZS52YWxpZGF0aW9uTWVzc2FnZXNBc1N0cmluZyk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGdldEFydGljbGVFeHRlbmRlZChhcnRpY2xlTnI6IHN0cmluZyk6IFByb21pc2U8QXJ0aWNsZUV4dGVuZGVkPiB7XHJcbiAgICBjb25zdCByZXF1ZXN0OiBBcnRpY2xlRXh0ZW5kZWRSZXF1ZXN0ID0gbmV3IEFydGljbGVFeHRlbmRlZFJlcXVlc3QoKTtcclxuICAgIHJlcXVlc3QuYXJ0aWNsZU51bWJlciA9IGFydGljbGVOcjtcclxuICAgIGNvbnN0IHJlc3VsdDogRGF0YVNlcnZpY2VSZXNwb25zZURhdGEgPSBhd2FpdCB0aGlzLmNvbm5lY3Rvci5zZWFyY2hBcnRpY2xlcyhyZXF1ZXN0KTtcclxuICAgIGlmIChyZXN1bHQudmFsaWRhdGlvblJlc3VsdCAmJiByZXN1bHQudmFsaWRhdGlvblJlc3VsdC5zdWNjZXNzKSB7XHJcbiAgICAgIGlmIChyZXN1bHQucmVzdWx0T2JqZWN0cyAmJiByZXN1bHQucmVzdWx0T2JqZWN0cy5sZW5ndGggPT09IDEpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fYm9GYWN0b3J5Lm1ha2VXaXRoUmF3QmFja2VuZERhdGEoQXJ0aWNsZUV4dGVuZGVkLCByZXN1bHQucmVzdWx0T2JqZWN0c1swXSkgYXMgQXJ0aWNsZUV4dGVuZGVkO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLl9oYW5kbGVFeGNlcHRpb25Gcm9tUmVzcG9uc2UocmVzdWx0KTtcclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIHNlYXJjaEFydGljbGVzKHJlcXVlc3Q6IEFydGljbGVFeHRlbmRlZFJlcXVlc3QpOiBQcm9taXNlPEFydGljbGVMaWdodFtdPiB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgICByZXR1cm4gdGhpcy5jb25uZWN0b3Iuc2VhcmNoQXJ0aWNsZXNMaWdodChyZXF1ZXN0KS50aGVuKChyZXNwb25zZSkgPT4ge1xyXG4gICAgICAgIGlmIChyZXNwb25zZSAmJiByZXNwb25zZS52YWxpZGF0aW9uUmVzdWx0ICYmIHJlc3BvbnNlLnZhbGlkYXRpb25SZXN1bHQuc3VjY2Vzcykge1xyXG4gICAgICAgICAgY29uc3QgY29sbGVjdGlvbjogQXJ0aWNsZUxpZ2h0W10gPSB0aGlzLl9ib0ZhY3RvcnkubWFrZUJPQXJyYXlGcm9tUmF3QmFja2VuZERhdGFBcnJheShBcnRpY2xlTGlnaHQsIHJlc3BvbnNlLnJlc3VsdE9iamVjdHMpIGFzIHVua25vd24gYXMgQXJ0aWNsZUxpZ2h0W107XHJcbiAgICAgICAgICByZXNvbHZlKGNvbGxlY3Rpb24pO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLl9oYW5kbGVFeGNlcHRpb25Gcm9tUmVzcG9uc2UocmVzcG9uc2UpO1xyXG4gICAgICAgICAgcmVqZWN0KG51bGwpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBnZXRBcnRpY2xlTGlzdFdpdGhCYXJjb2RlQXJ0aWNsZU5yRWFuQ29kZShzZWFyY2g6IHN0cmluZyk6IFByb21pc2U8QXJ0aWNsZUxpZ2h0W10+IHtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICAgIHJldHVybiB0aGlzLmNvbm5lY3Rvci5nZXRBcnRpY2xlTGlzdFdpdGhCYXJjb2RlQXJ0aWNsZU5yRWFuQ29kZShzZWFyY2gpLnRoZW4oKHJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc3BvbnNlICYmIHJlc3BvbnNlLnZhbGlkYXRpb25SZXN1bHQgJiYgcmVzcG9uc2UudmFsaWRhdGlvblJlc3VsdC5zdWNjZXNzKSB7XHJcbiAgICAgICAgICAvLyByZXR1cm4gdGhpcy5fYm9GYWN0b3J5Lm1ha2VXaXRoUmF3QmFja2VuZERhdGEoQXJ0aWNsZUV4dGVuZGVkLCByZXNwb25zZS5yZXN1bHRPYmplY3QpIGFzIEFydGljbGVMaWdodDtcclxuICAgICAgICAgIGNvbnN0IGNvbGxlY3Rpb246IEFydGljbGVMaWdodFtdID0gdGhpcy5fYm9GYWN0b3J5Lm1ha2VCT0FycmF5RnJvbVJhd0JhY2tlbmREYXRhQXJyYXkoQXJ0aWNsZUxpZ2h0LCByZXNwb25zZS5yZXN1bHRPYmplY3QpIGFzIHVua25vd24gYXMgQXJ0aWNsZUxpZ2h0W107XHJcbiAgICAgICAgICByZXNvbHZlKGNvbGxlY3Rpb24pO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLl9oYW5kbGVFeGNlcHRpb25Gcm9tUmVzcG9uc2UocmVzcG9uc2UpO1xyXG4gICAgICAgICAgcmVqZWN0KG51bGwpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBnZXRNYWluQXJ0aWNsZXMoKTogUHJvbWlzZTxNYWluQXJ0aWNsZVtdPiB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgICByZXR1cm4gdGhpcy5jb25uZWN0b3IuZ2V0TWFpbkFydGljbGVzKCkudGhlbigocmVzcG9uc2UpID0+IHtcclxuICAgICAgICBpZiAocmVzcG9uc2UgJiYgcmVzcG9uc2UudmFsaWRhdGlvblJlc3VsdCAmJiByZXNwb25zZS52YWxpZGF0aW9uUmVzdWx0LnN1Y2Nlc3MpIHtcclxuICAgICAgICAgIGNvbnN0IGNvbGxlY3Rpb246IE1haW5BcnRpY2xlW10gPSB0aGlzLl9ib0ZhY3RvcnkubWFrZUJPQXJyYXlGcm9tUmF3QmFja2VuZERhdGFBcnJheShNYWluQXJ0aWNsZSwgcmVzcG9uc2UucmVzdWx0T2JqZWN0cykgYXMgdW5rbm93biBhcyBNYWluQXJ0aWNsZVtdO1xyXG4gICAgICAgICAgcmVzb2x2ZShjb2xsZWN0aW9uKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5faGFuZGxlRXhjZXB0aW9uRnJvbVJlc3BvbnNlKHJlc3BvbnNlKTtcclxuICAgICAgICAgIHJlamVjdChudWxsKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgZ2V0VHVybm92ZXJHcm91cHMoY2F0ZWdvcnk/OiBzdHJpbmcpOiBQcm9taXNlPFR1cm5vdmVyR3JvdXBJbWFnZVtdPiB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmU6IEZ1bmN0aW9uLCByZWplY3Q6IEZ1bmN0aW9uKSA9PiB7XHJcbiAgICAgIC8vIGNvbnN0IGNvbGxlY3Rpb24gPSB0aGlzLl9jb2xsZWN0aW9uU2VydmljZS5nZXRDb2xsZWN0aW9uKFR1cm5vdmVyR3JvdXBJbWFnZS5uYW1lKTtcclxuICAgICAgLy8gaWYgKGNvbGxlY3Rpb24pIHtcclxuICAgICAgLy8gICByZXR1cm4gcmVzb2x2ZShjb2xsZWN0aW9uKTtcclxuICAgICAgLy8gfVxyXG4gICAgICByZXR1cm4gdGhpcy5jb25uZWN0b3IuZ2V0VHVybm92ZXJHcm91cHMoY2F0ZWdvcnkpLnRoZW4oKHJlc3VsdDogRGF0YVNlcnZpY2VSZXNwb25zZURhdGEpID0+IHtcclxuICAgICAgICBpZiAocmVzdWx0LnZhbGlkYXRpb25SZXN1bHQgJiYgcmVzdWx0LnZhbGlkYXRpb25SZXN1bHQuc3VjY2Vzcykge1xyXG4gICAgICAgICAgY29uc3QgY29sbGVjdGlvbjogVHVybm92ZXJHcm91cEltYWdlW10gPSB0aGlzLl9ib0ZhY3RvcnkubWFrZUJPQXJyYXlGcm9tUmF3QmFja2VuZERhdGFBcnJheShUdXJub3Zlckdyb3VwSW1hZ2UsIHJlc3VsdC5yZXN1bHRPYmplY3RzKSBhcyB1bmtub3duIGFzIFR1cm5vdmVyR3JvdXBJbWFnZVtdO1xyXG4gICAgICAgICAgLy8gdGhpcy5fY29sbGVjdGlvblNlcnZpY2UuY2FjaGVDb2xsZWN0aW9uKFR1cm5vdmVyR3JvdXBJbWFnZS5uYW1lLCBjb2xsZWN0aW9uKTtcclxuICAgICAgICAgIHJlc29sdmUoY29sbGVjdGlvbik7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMuX2hhbmRsZUV4Y2VwdGlvbkZyb21SZXNwb25zZShyZXN1bHQpO1xyXG4gICAgICAgICAgcmVqZWN0KG51bGwpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBzdG9yZUNhdEZhcm1Db21wb3NpdGlvbkFydGljbGUoY2F0YWxvZ0lkOiBudW1iZXIsIGFydGljbGVGbGF0VHJlZTogQXJ0aWNsZUZsYXRUcmVlRFRPKTogUHJvbWlzZTxzdHJpbmc+IHtcclxuICAgIGNvbnN0IHJlc3BvbnNlOiBEYXRhU2VydmljZVJlc3BvbnNlRGF0YSA9IGF3YWl0IHRoaXMuY29ubmVjdG9yLnN0b3JlQ2F0RmFybUNvbXBvc2l0aW9uQXJ0aWNsZShjYXRhbG9nSWQsIGFydGljbGVGbGF0VHJlZSk7XHJcbiAgICBpZiAocmVzcG9uc2UgJiYgcmVzcG9uc2UudmFsaWRhdGlvblJlc3VsdCAmJiByZXNwb25zZS52YWxpZGF0aW9uUmVzdWx0LnN1Y2Nlc3MgJiYgcmVzcG9uc2UucmVzdWx0T2JqZWN0ICE9PSBudWxsKSB7XHJcbiAgICAgIHJldHVybiByZXNwb25zZS5yZXN1bHRPYmplY3Q7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLl9oYW5kbGVFeGNlcHRpb25Gcm9tUmVzcG9uc2UocmVzcG9uc2UpO1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBnZXRXZWJWaWV3U3RhcnR1cEluZm8ocmVxdWVzdDogRXh0ZXJuYWxDYXRhbG9nU3RhcnR1cEluZm9SZXF1ZXN0KTogUHJvbWlzZTxFeHRlcm5hbENhdGFsb2dTdGFydHVwSW5mbz4ge1xyXG4gICAgLy8gQHRzLWlnbm9yZVxyXG4gICAgY29uc3QgcmVzcG9uc2U6IERhdGFTZXJ2aWNlUmVzcG9uc2VEYXRhID0gYXdhaXQgdGhpcy5jb25uZWN0b3IuZ2V0V2Vidmlld1N0YXJ0dXBJbmZvKHJlcXVlc3QpO1xyXG4gICAgaWYgKHJlc3BvbnNlICYmIHJlc3BvbnNlLnZhbGlkYXRpb25SZXN1bHQgJiYgcmVzcG9uc2UudmFsaWRhdGlvblJlc3VsdC5zdWNjZXNzKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLl9ib0ZhY3RvcnkubWFrZVdpdGhSYXdCYWNrZW5kRGF0YShFeHRlcm5hbENhdGFsb2dTdGFydHVwSW5mbywgcmVzcG9uc2UucmVzdWx0T2JqZWN0KSBhcyB1bmtub3duIGFzIEV4dGVybmFsQ2F0YWxvZ1N0YXJ0dXBJbmZvO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5faGFuZGxlRXhjZXB0aW9uRnJvbVJlc3BvbnNlKHJlc3BvbnNlKTtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9oYW5kbGVFeGNlcHRpb25Gcm9tUmVzcG9uc2UocmVzdWx0OiBEYXRhU2VydmljZVJlc3BvbnNlRGF0YSk6IHZvaWQge1xyXG4gICAgdGhpcy5fZXJyb3JTZXJ2aWNlLnNob3dWYWxpZGF0aW9uRXJyb3IocmVzdWx0KTtcclxuICB9XHJcbn1cclxuIl19