@senior-agronegocio/angular-components 0.0.9885 → 0.0.9886

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.
Files changed (38) hide show
  1. package/bundles/senior-agronegocio-angular-components.umd.js +60 -65
  2. package/bundles/senior-agronegocio-angular-components.umd.js.map +1 -1
  3. package/bundles/senior-agronegocio-angular-components.umd.min.js +2 -2
  4. package/bundles/senior-agronegocio-angular-components.umd.min.js.map +1 -1
  5. package/components/event-control-board/common/event-control-constants.d.ts +2 -8
  6. package/components/event-control-board/event-control-board.component.d.ts +3 -0
  7. package/components/event-control-board/service/rural-estate/rural-estate.d.ts +0 -2
  8. package/esm2015/components/event-control-board/common/event-control-constants.js +1 -7
  9. package/esm2015/components/event-control-board/event-control-board.component.js +49 -46
  10. package/esm2015/components/event-control-board/service/rural-estate/rural-estate.js +1 -10
  11. package/esm2015/components/modal-invoice-pj/for-fixation/modal-invoice-pj-for-fixation.component.js +2 -2
  12. package/esm2015/components/modal-invoice-pj/for-origination/modal-invoice-pj-for-origination.component.js +2 -2
  13. package/esm2015/components/modal-invoice-pj/for-transfer/modal-invoice-pj-for-transfer.component.js +2 -2
  14. package/esm2015/components/modal-invoice-pj/modal-invoice-pj-base.class.js +2 -2
  15. package/esm2015/services/i18n/en-US.js +2 -1
  16. package/esm2015/services/i18n/es-CO.js +2 -1
  17. package/esm2015/services/i18n/pt-BR.js +6 -4
  18. package/esm5/components/event-control-board/common/event-control-constants.js +1 -7
  19. package/esm5/components/event-control-board/event-control-board.component.js +50 -47
  20. package/esm5/components/event-control-board/service/rural-estate/rural-estate.js +1 -10
  21. package/esm5/components/modal-invoice-pj/for-fixation/modal-invoice-pj-for-fixation.component.js +2 -2
  22. package/esm5/components/modal-invoice-pj/for-origination/modal-invoice-pj-for-origination.component.js +2 -2
  23. package/esm5/components/modal-invoice-pj/for-transfer/modal-invoice-pj-for-transfer.component.js +2 -2
  24. package/esm5/components/modal-invoice-pj/modal-invoice-pj-base.class.js +2 -2
  25. package/esm5/services/i18n/en-US.js +2 -1
  26. package/esm5/services/i18n/es-CO.js +2 -1
  27. package/esm5/services/i18n/pt-BR.js +6 -4
  28. package/fesm2015/senior-agronegocio-angular-components.js +59 -64
  29. package/fesm2015/senior-agronegocio-angular-components.js.map +1 -1
  30. package/fesm5/senior-agronegocio-angular-components.js +60 -65
  31. package/fesm5/senior-agronegocio-angular-components.js.map +1 -1
  32. package/package.json +1 -1
  33. package/services/i18n/en-US.d.ts +1 -0
  34. package/services/i18n/es-CO.d.ts +1 -0
  35. package/services/i18n/pt-BR.d.ts +1 -0
  36. package/components/event-control-board/common/input-fields.d.ts +0 -5
  37. package/esm2015/components/event-control-board/common/input-fields.js +0 -7
  38. package/esm5/components/event-control-board/common/input-fields.js +0 -7
@@ -237,11 +237,11 @@ var ModalInvoicePjForFixationComponent = /** @class */ (function (_super) {
237
237
  ModalInvoicePjForFixationComponent = __decorate([
238
238
  Component({
239
239
  selector: 's-modal-invoice-pj-for-fixation',
240
- template: "<p-dialog\r\n header=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [(visible)]=\"visible\"\r\n [modal]=\"true\"\r\n class=\"add-invoice-modal\"\r\n [closeOnEscape]=\"false\"\r\n (onHide)=\"cancelPooling()\"\r\n [dismissableMask]=\"false\"\r\n>\r\n <ng-container *ngIf=\"!dontHaveAnyInvoice\">\r\n <div class=\"ui-g\">\r\n <label for=\"invoiceSearchInput\">{{ 'agro.angular_components.number' | libTranslate }}</label>\r\n <input\r\n type=\"text\"\r\n id=\"invoiceSearchInput\"\r\n pInputText\r\n [formControl]=\"searchValue\"\r\n [placeholder]=\"'' | libTranslate\"\r\n [required]=\"false\"\r\n />\r\n <div class=\"ui-g-12\">\r\n <p-table\r\n [(selection)]=\"selected\"\r\n [value]=\"gridData\"\r\n [columns]=\"gridColumns\"\r\n [scrollable]=\"true\"\r\n dataKey=\"externalInvoiceId\"\r\n [rows]=\"10\"\r\n [paginator]=\"true\"\r\n [lazyLoadOnInit]=\"false\"\r\n [totalRecords]=\"gridTotalRecords\"\r\n [lazy]=\"true\"\r\n (onLazyLoad)=\"updateGridData($event)\"\r\n [resizableColumns]=\"true\"\r\n *sLoadingState=\"gridLoading\"\r\n sortMode=\"multiple\"\r\n [selectionMode]=\"'multiple'\"\r\n >\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n <th class=\"checkbox\" scope=\"col\">\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n </th>\r\n <ng-container *ngFor=\"let col of columns\">\r\n <th\r\n *ngIf=\"col.sortable === undefined || col.sortable\"\r\n [pSortableColumn]=\"col.field\"\r\n scope=\"col\"\r\n >\r\n {{ col.header }}\r\n <p-sortIcon [field]=\"col.field\"></p-sortIcon>\r\n </th>\r\n <th *ngIf=\"col.sortable === false || col.sortable === null\" scope=\"col\">\r\n {{ col.header }}\r\n </th>\r\n </ng-container>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"body\" let-rowData let-columns=\"columns\" let-rowIndex=\"rowIndex\">\r\n <tr>\r\n <td class=\"checkbox\" tabindex=\"0\">\r\n <p-tableCheckbox [value]=\"rowData\"></p-tableCheckbox>\r\n </td>\r\n <td\r\n [pSelectableRow]=\"rowData\"\r\n [pSelectableRowIndex]=\"rowIndex\"\r\n *ngFor=\"let col of columns\"\r\n class=\"column\"\r\n tabindex=\"0\"\r\n >\r\n <ng-container>\r\n {{ gridFieldValuesMap[col.field] ? gridFieldValuesMap[col.field](rowData) :\r\n rowData[col.field] }}\r\n </ng-container>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"paginatorright\">\r\n <span>{{ gridTotalRecords }} registros encontrados</span>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"dontHaveAnyInvoice\">\r\n <s-empty-state\r\n iconClass=\"fa fa-exclamation-triangle\"\r\n title=\"{{ 'agro.angular_components.add_pj_invoice_modal_no_invoices_found' | libTranslate }}\"\r\n primaryActionLabel=\"{{ 'agro.angular_components.error_server_try_again' | libTranslate }}\"\r\n (primaryAction)=\"tryToSearchAgain()\"\r\n description=\"{{ 'agro.angular_components.no_register_found_for_external_invoices_summary' | libTranslate }}\"\r\n >\r\n </s-empty-state>\r\n </ng-container>\r\n\r\n <p-footer class=\"footer\" *ngIf=\"!dontHaveAnyInvoice\">\r\n <s-button\r\n [priority]=\"buttonPriority.Primary\"\r\n label=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [disabled]=\"!selected?.length\"\r\n (click)=\"add()\"\r\n (keydown.enter)=\"add()\"\r\n ></s-button>\r\n <s-button\r\n [priority]=\"buttonPriority.Link\"\r\n label=\"{{ 'agro.angular_components.cancel' | libTranslate }}\"\r\n (click)=\"cancel()\"\r\n (keydown.enter)=\"cancel()\"\r\n ></s-button>\r\n </p-footer>\r\n</p-dialog>\r\n",
240
+ template: "<p-dialog\r\n header=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [(visible)]=\"visible\"\r\n [modal]=\"true\"\r\n class=\"add-invoice-modal\"\r\n [closeOnEscape]=\"false\"\r\n (onHide)=\"cancelPooling()\"\r\n [dismissableMask]=\"false\"\r\n>\r\n <ng-container *ngIf=\"!dontHaveAnyInvoice\">\r\n <div class=\"ui-g\">\r\n <label for=\"invoiceSearchInput\">{{ 'agro.angular_components.number' | libTranslate }}</label>\r\n <input\r\n type=\"text\"\r\n id=\"invoiceSearchInput\"\r\n pInputText\r\n [formControl]=\"searchValue\"\r\n [placeholder]=\"'' | libTranslate\"\r\n [required]=\"false\"\r\n />\r\n <div class=\"ui-g-12\">\r\n <p-table\r\n [(selection)]=\"selected\"\r\n [value]=\"gridData\"\r\n [columns]=\"gridColumns\"\r\n [scrollable]=\"true\"\r\n dataKey=\"_uniqueId\"\r\n [rows]=\"10\"\r\n [paginator]=\"true\"\r\n [lazyLoadOnInit]=\"false\"\r\n [totalRecords]=\"gridTotalRecords\"\r\n [lazy]=\"true\"\r\n (onLazyLoad)=\"updateGridData($event)\"\r\n [resizableColumns]=\"true\"\r\n *sLoadingState=\"gridLoading\"\r\n sortMode=\"multiple\"\r\n [selectionMode]=\"'multiple'\"\r\n >\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n <th class=\"checkbox\" scope=\"col\">\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n </th>\r\n <ng-container *ngFor=\"let col of columns\">\r\n <th\r\n *ngIf=\"col.sortable === undefined || col.sortable\"\r\n [pSortableColumn]=\"col.field\"\r\n scope=\"col\"\r\n >\r\n {{ col.header }}\r\n <p-sortIcon [field]=\"col.field\"></p-sortIcon>\r\n </th>\r\n <th *ngIf=\"col.sortable === false || col.sortable === null\" scope=\"col\">\r\n {{ col.header }}\r\n </th>\r\n </ng-container>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"body\" let-rowData let-columns=\"columns\" let-rowIndex=\"rowIndex\">\r\n <tr>\r\n <td class=\"checkbox\" tabindex=\"0\">\r\n <p-tableCheckbox [value]=\"rowData\"></p-tableCheckbox>\r\n </td>\r\n <td\r\n [pSelectableRow]=\"rowData\"\r\n [pSelectableRowIndex]=\"rowIndex\"\r\n *ngFor=\"let col of columns\"\r\n class=\"column\"\r\n tabindex=\"0\"\r\n >\r\n <ng-container>\r\n {{ gridFieldValuesMap[col.field] ? gridFieldValuesMap[col.field](rowData) :\r\n rowData[col.field] }}\r\n </ng-container>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"paginatorright\">\r\n <span>{{ gridTotalRecords }} registros encontrados</span>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"dontHaveAnyInvoice\">\r\n <s-empty-state\r\n iconClass=\"fa fa-exclamation-triangle\"\r\n title=\"{{ 'agro.angular_components.add_pj_invoice_modal_no_invoices_found' | libTranslate }}\"\r\n primaryActionLabel=\"{{ 'agro.angular_components.error_server_try_again' | libTranslate }}\"\r\n (primaryAction)=\"tryToSearchAgain()\"\r\n description=\"{{ 'agro.angular_components.no_register_found_for_external_invoices_summary' | libTranslate }}\"\r\n >\r\n </s-empty-state>\r\n </ng-container>\r\n\r\n <p-footer class=\"footer\" *ngIf=\"!dontHaveAnyInvoice\">\r\n <s-button\r\n [priority]=\"buttonPriority.Primary\"\r\n label=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [disabled]=\"!selected?.length\"\r\n (click)=\"add()\"\r\n (keydown.enter)=\"add()\"\r\n ></s-button>\r\n <s-button\r\n [priority]=\"buttonPriority.Link\"\r\n label=\"{{ 'agro.angular_components.cancel' | libTranslate }}\"\r\n (click)=\"cancel()\"\r\n (keydown.enter)=\"cancel()\"\r\n ></s-button>\r\n </p-footer>\r\n</p-dialog>\r\n",
241
241
  styles: [".footer{width:100%;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center}.add-invoice-modal{width:480px;max-width:480px}.add-invoice-modal input[type=text]{width:100%}.add-invoice-modal .ui-dialog{width:480px!important}.add-invoice-modal .ui-dialog .ui-dialog-content{min-height:175px}td.checkbox,th.checkbox{width:50px}td.column,th.column{min-width:150px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}"]
242
242
  })
243
243
  ], ModalInvoicePjForFixationComponent);
244
244
  return ModalInvoicePjForFixationComponent;
245
245
  }(ModalInvoicePjBase));
246
246
  export { ModalInvoicePjForFixationComponent };
247
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtaW52b2ljZS1wai1mb3ItZml4YXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNlbmlvci1hZ3JvbmVnb2Npby9hbmd1bGFyLWNvbXBvbmVudHMvIiwic291cmNlcyI6WyJjb21wb25lbnRzL21vZGFsLWludm9pY2UtcGovZm9yLWZpeGF0aW9uL21vZGFsLWludm9pY2UtcGotZm9yLWZpeGF0aW9uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM3RSxPQUFPLFFBQVEsTUFBTSw0QkFBNEIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRixPQUFPLEVBQUUsTUFBTSxFQUFFLGFBQWEsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDekMsT0FBTyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDakMsT0FBTyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDbEYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sZ0VBQWdFLENBQUM7QUFDeEcsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFVOUQ7SUFBd0Qsc0RBQWtCO0lBTXRFLDRDQUNhLGtCQUF5QyxFQUN6QyxjQUFrQyxFQUNsQyxhQUE0QixF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R0FBYixVQUFjLEdBQVE7UUFDbEIsSUFBTSxhQUFhLEdBQUcsR0FBRyxhQUFILEdBQUcsdUJBQUgsR0FBRyxDQUFFLGFBQWEsQ0FBQztRQUN6QyxJQUFJLGFBQWEsRUFBRTtZQUNmLE9BQU8sYUFBYSxDQUFDO1NBQ3hCO1FBQ0QsSUFBTSxLQUFLLEdBQVUsQ0FBQSxHQUFHLGFBQUgsR0FBRyx1QkFBSCxHQUFHLENBQUUsS0FBSyxLQUFJLEVBQUUsQ0FBQztRQUN0QyxPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsVUFBQyxLQUFhLEVBQUUsSUFBUyxJQUFLLE9BQUEsS0FBSyxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksQ0FBQyxDQUFDLEVBQXBELENBQW9ELEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDL0csQ0FBQzs7Z0JBNUxnQyxxQkFBcUI7Z0JBQ3pCLGtCQUFrQjtnQkFDbkIsYUFBYTtnQkFDZCxZQUFZO2dCQUNaLFlBQVk7Z0JBQ0Ysc0JBQXNCO2dCQUM5QixjQUFjO2dCQUN0QixRQUFROztJQWJwQjtRQUFSLEtBQUssRUFBRTt1RUFBMkM7SUFDekM7UUFBVCxNQUFNLEVBQUU7a0ZBQWdEO0lBRmhELGtDQUFrQztRQUw5QyxTQUFTLENBQUM7WUFDUCxRQUFRLEVBQUUsaUNBQWlDO1lBQzNDLHc0S0FBK0I7O1NBRWxDLENBQUM7T0FDVyxrQ0FBa0MsQ0FvTTlDO0lBQUQseUNBQUM7Q0FBQSxBQXBNRCxDQUF3RCxrQkFBa0IsR0FvTXpFO1NBcE1ZLGtDQUFrQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEN1cnJlbmN5UGlwZSwgRGF0ZVBpcGUsIHJlZ2lzdGVyTG9jYWxlRGF0YSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCBsb2NhbGVQdCBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9wdCc7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb2x1bW4sIExvY2FsZVNlcnZpY2UgfSBmcm9tICdAc2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzJztcclxuaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UgfSBmcm9tICdwcmltZW5nJztcclxuaW1wb3J0IHsgRU1QVFksIG9mIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGZpbmFsaXplLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEtpbG9ncmFtUGlwZSB9IGZyb20gJy4uLy4uLy4uL3BpcGUva2lsb2dyYW0nO1xyXG5pbXBvcnQgeyBMaWJUcmFuc2xhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9saWItdHJhbnNsYXRpb24uc2VydmljZSc7XHJcbmltcG9ydCB7IFByb2R1Y2VySW52b2ljZVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9wcm9kdWNlci1pbnZvaWNlLWZpeGF0aW9uL3Byb2R1Y2VyLWludm9pY2Uuc2VydmljZSc7XHJcbmltcG9ydCB7IE1vZGFsSW52b2ljZVBqQmFzZSB9IGZyb20gJy4uL21vZGFsLWludm9pY2UtcGotYmFzZS5jbGFzcyc7XHJcbmltcG9ydCB7IEFncm9JbnZvaWNlU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2Fncm8taW52b2ljZSc7XHJcbmltcG9ydCB7IElJbnZvaWNlTG9va3VwUmVjb3JkLCBJSW52b2ljZUxvb2t1cFJlc3BvbnNlIH0gZnJvbSAnLi4vc2VydmljZXMvYWdyby1pbnZvaWNlL2ludGVyZmFjZXMnO1xyXG5pbXBvcnQgeyBNb2RhbEludm9pY2VQakZvckZpeGF0aW9uT3B0aW9ucyB9IGZyb20gJy4vbW9kYWwtZml4YXRpb24tb3B0aW9ucy5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBMaXN0UGFyYW1zIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvYWdyby1lbnRpdHktc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAncy1tb2RhbC1pbnZvaWNlLXBqLWZvci1maXhhdGlvbicsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4uL3RlbXBsYXRlLmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4uL3N0eWxlLnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIE1vZGFsSW52b2ljZVBqRm9yRml4YXRpb25Db21wb25lbnQgZXh0ZW5kcyBNb2RhbEludm9pY2VQakJhc2UgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgICBASW5wdXQoKSBvcHRpb25zOiBNb2RhbEludm9pY2VQakZvckZpeGF0aW9uT3B0aW9ucztcclxuICAgIEBPdXRwdXQoKSB3aGVuU2VsZWN0SW52b2ljZXMgPSBuZXcgRXZlbnRFbWl0dGVyPGFueVtdPigpO1xyXG5cclxuICAgIHB1YmxpYyBncmlkQ29sdW1uczogUGFydGlhbDxDb2x1bW4gJiB7IHNvcnRhYmxlPzogYm9vbGVhbiB9PltdO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHJlYWRvbmx5IHRyYW5zbGF0aW9uU2VydmljZTogTGliVHJhbnNsYXRpb25TZXJ2aWNlLFxyXG4gICAgICAgIHJlYWRvbmx5IGludm9pY2VTZXJ2aWNlOiBBZ3JvSW52b2ljZVNlcnZpY2UsXHJcbiAgICAgICAgcmVhZG9ubHkgbG9jYWxlU2VydmljZTogTG9jYWxlU2VydmljZSxcclxuICAgICAgICByZWFkb25seSBraWxvZ3JhbVBpcGU6IEtpbG9ncmFtUGlwZSxcclxuICAgICAgICByZWFkb25seSBjdXJyZW5jeVBpcGU6IEN1cnJlbmN5UGlwZSxcclxuICAgICAgICByZWFkb25seSBwcm9kdWNlckludm9pY2VTZXJ2aWNlOiBQcm9kdWNlckludm9pY2VTZXJ2aWNlLFxyXG4gICAgICAgIHJlYWRvbmx5IG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSxcclxuICAgICAgICBwdWJsaWMgZGF0ZVBpcGU6IERhdGVQaXBlXHJcbiAgICApIHtcclxuICAgICAgICBzdXBlcih0cmFuc2xhdGlvblNlcnZpY2UsIGludm9pY2VTZXJ2aWNlLCBsb2NhbGVTZXJ2aWNlLCBraWxvZ3JhbVBpcGUsIG1lc3NhZ2VTZXJ2aWNlLCBkYXRlUGlwZSk7XHJcbiAgICAgICAgcmVnaXN0ZXJMb2NhbGVEYXRhKGxvY2FsZVB0KTtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmRlZmluZUdyaWRDb2x1bW5zKCk7XHJcbiAgICAgICAgdGhpcy5ncmlkRmllbGRWYWx1ZXNNYXAgPSB7XHJcbiAgICAgICAgICAgIC4uLnRoaXMuZ3JpZEZpZWxkVmFsdWVzTWFwLFxyXG4gICAgICAgICAgICBzZXJpZXM6IChyb3cpID0+IHJvdz8uc2VyaWVzTGVnYWwgfHwgcm93Py5zZXJpZXMgfHwgcm93LnNlcmllcyxcclxuICAgICAgICAgICAgdG90YWxWYWx1ZTogKHJvdykgPT5cclxuICAgICAgICAgICAgICAgIHRoaXMuY3VycmVuY3lQaXBlLnRyYW5zZm9ybSh0aGlzLmdldFRvdGFsVmFsdWUocm93KSB8fCAwLCAnQlJMJywgJ3N5bWJvbCcsIHVuZGVmaW5lZCwgJ3B0LUJSJyksXHJcbiAgICAgICAgICAgIGxpbmtlZFZhbHVlOiAocm93KSA9PlxyXG4gICAgICAgICAgICAgICAgdGhpcy5jdXJyZW5jeVBpcGUudHJhbnNmb3JtKHJvdz8ubGlua2VkVmFsdWUgfHwgMCwgJ0JSTCcsICdzeW1ib2wnLCB1bmRlZmluZWQsICdwdC1CUicpLFxyXG4gICAgICAgIH07XHJcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcclxuICAgIH1cclxuXHJcbiAgICBkZWZpbmVHcmlkQ29sdW1ucygpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmdyaWRDb2x1bW5zID0gW1xyXG4gICAgICAgICAgICB7IGZpZWxkOiAnbnVtYmVyJywgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5udW1iZXInKSB9LFxyXG4gICAgICAgICAgICB7IGZpZWxkOiAnc2VyaWVzJywgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5zZXJpZXMnKSB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICBmaWVsZDogJ3RvdGFsVmFsdWUnLFxyXG4gICAgICAgICAgICAgICAgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy50b3RhbF92YWx1ZScpLFxyXG4gICAgICAgICAgICAgICAgc29ydGFibGU6IGZhbHNlLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICBmaWVsZDogJ2xpbmtlZFZhbHVlJyxcclxuICAgICAgICAgICAgICAgIGhlYWRlcjogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnYWdyby5hbmd1bGFyX2NvbXBvbmVudHMudmFsdWVfbGlua2VkJyksXHJcbiAgICAgICAgICAgICAgICBzb3J0YWJsZTogZmFsc2UsXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgZmllbGQ6ICdpc3N1YW5jZURhdGUnLCBoZWFkZXI6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2Fncm8uYW5ndWxhcl9jb21wb25lbnRzLmlzc3VhbmNlX2RhdGUnKSB9LFxyXG4gICAgICAgIF07XHJcbiAgICB9XHJcblxyXG4gICAgYmVmb3JlQWRkKHNlbGVjdGVkSW52b2ljZXM6IGFueVtdKTogUHJvbWlzZTxhbnk+IHtcclxuICAgICAgICBpZiAoc2VsZWN0ZWRJbnZvaWNlcz8ubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgIHRoaXMubGlua1NlbGVjdGVkSW52b2ljZXNJbkZpeGF0aW9uSXRlbShzZWxlY3RlZEludm9pY2VzKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIG9mKEVNUFRZKS50b1Byb21pc2UoKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgb3BlbigpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5vcHRpb25zLmZpeGF0aW9uSXRlbXMuZmlsdGVyKChpdGVtKSA9PiBpdGVtLnJlcXVpcmVkVmFsdWUgPiBpdGVtLnRvdGFsVmFsdWVJbnZvaWNlcykubGVuZ3RoID09PSAwKSB7XHJcbiAgICAgICAgICAgIHRoaXMubWVzc2FnZVNlcnZpY2UuYWRkKHtcclxuICAgICAgICAgICAgICAgIHNldmVyaXR5OiAnd2FybicsXHJcbiAgICAgICAgICAgICAgICBzdW1tYXJ5OiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5tYXhfbGlua2VkX2ludm9pY2VzJyksXHJcbiAgICAgICAgICAgICAgICBkZXRhaWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2Fncm8uYW5ndWxhcl9jb21wb25lbnRzLm1heF9saW5rZWRfaW52b2ljZXNfZGVzY3JpcHRpb24nKSxcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgc3VwZXIub3BlbigpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBhc3luYyBsaW5rU2VsZWN0ZWRJbnZvaWNlc0luRml4YXRpb25JdGVtKHNlbGVjdGVkSW52b2ljZXM6IGFueVtdKSB7XHJcbiAgICAgICAgaWYgKCEoYXdhaXQgdGhpcy5pc1ZhbGlkQW5kU2V0TGlua2VkVmFsdWVJbkludm9pY2VzKHNlbGVjdGVkSW52b2ljZXMpKSkge1xyXG4gICAgICAgICAgICB0aGlzLmdyaWRMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29uc3QgZW50aXRpZXMgPSBbXVxyXG4gICAgICAgICAgICAuY29uY2F0KFxyXG4gICAgICAgICAgICAgICAgLi4uc2VsZWN0ZWRJbnZvaWNlcy5tYXAoKGludm9pY2U6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLm9wdGlvbnMuZml4YXRpb25JdGVtcy5tYXAoKGZpeGF0aW9uSXRlbTogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlcXVpcmVkVmFsdWUgPVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGZpeGF0aW9uSXRlbS5yZXF1aXJlZFZhbHVlIHx8IDApIC0gKGZpeGF0aW9uSXRlbS50b3RhbFZhbHVlSW52b2ljZXMgfHwgMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpbnZvaWNlLnJlbWFpbmluZ1ZhbHVlIDw9IDAgfHwgcmVxdWlyZWRWYWx1ZSA8PSAwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB2YWx1ZVRvQmVMaW5rZWQgPVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWRWYWx1ZSA+IGludm9pY2UucmVtYWluaW5nVmFsdWUgPyBpbnZvaWNlLnJlbWFpbmluZ1ZhbHVlIDogcmVxdWlyZWRWYWx1ZTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGludm9pY2UucmVtYWluaW5nVmFsdWUgLT0gdmFsdWVUb0JlTGlua2VkO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBib2R5ID0ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VyaWVzOiBpbnZvaWNlPy5zZXJpZXMsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBudW1iZXI6IFN0cmluZyhpbnZvaWNlPy5udW1iZXIpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZXh0ZXJuYWxJbnZvaWNlSWQ6IGludm9pY2U/LmV4dGVybmFsSW52b2ljZUlkLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlua2VkVmFsdWU6IHZhbHVlVG9CZUxpbmtlZCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvdGFsVmFsdWU6IHRoaXMuZ2V0VG90YWxWYWx1ZShpbnZvaWNlKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzc3VhbmNlRGF0ZTogaW52b2ljZT8uaXNzdWFuY2VEYXRlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZml4YXRpb25JdGVtOiB7IGlkOiBmaXhhdGlvbkl0ZW0/LmlkIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH07XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmaXhhdGlvbkl0ZW0udG90YWxWYWx1ZUludm9pY2VzID0gKGZpeGF0aW9uSXRlbS50b3RhbFZhbHVlSW52b2ljZXMgfHwgMCkgKyB2YWx1ZVRvQmVMaW5rZWQ7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gYm9keTtcclxuICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgIClcclxuICAgICAgICAgICAgLmZpbHRlcigoZW50aXR5OiBhbnkpID0+IGVudGl0eSAhPT0gbnVsbCk7XHJcbiAgICAgICAgdGhpcy5ncmlkTG9hZGluZyA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5wcm9kdWNlckludm9pY2VTZXJ2aWNlXHJcbiAgICAgICAgICAgIC5pbnNlcnRCdWxrKGVudGl0aWVzKVxyXG4gICAgICAgICAgICAucGlwZShcclxuICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLm5nVW5zdWJzY3JpYmUpLFxyXG4gICAgICAgICAgICAgICAgZmluYWxpemUoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZ3JpZExvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLndoZW5TZWxlY3RJbnZvaWNlcy5lbWl0KHRoaXMuc2VsZWN0ZWQpO1xyXG4gICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMubWVzc2FnZVNlcnZpY2UuYWRkKHtcclxuICAgICAgICAgICAgICAgICAgICBzZXZlcml0eTogJ3N1Y2Nlc3MnLFxyXG4gICAgICAgICAgICAgICAgICAgIHN1bW1hcnk6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2Fncm8uYW5ndWxhcl9jb21wb25lbnRzLnN1Y2Nlc3MnKSxcclxuICAgICAgICAgICAgICAgICAgICBkZXRhaWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2Fncm8uYW5ndWxhcl9jb21wb25lbnRzLmludm9pY2VfY3JlYXRlZF9zdWNjZXNzZnVsbHknKSxcclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jYW5jZWwoKTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgYXN5bmMgaXNWYWxpZEFuZFNldExpbmtlZFZhbHVlSW5JbnZvaWNlcyhzZWxlY3RlZEludm9pY2VzOiBhbnlbXSk6IFByb21pc2U8Ym9vbGVhbj4ge1xyXG4gICAgICAgIGNvbnN0IHZhbG9yTGlua2VkID0gYXdhaXQgdGhpcy5wcm9kdWNlckludm9pY2VTZXJ2aWNlLmdldFRvdGFsTGlua2VkSW5JbnZvaWNlcyhcclxuICAgICAgICAgICAgc2VsZWN0ZWRJbnZvaWNlcy5tYXAoKGludm9pY2U6IGFueSkgPT4gaW52b2ljZS5leHRlcm5hbEludm9pY2VJZCksXHJcbiAgICAgICAgICAgIHRoaXMub3B0aW9ucy5maXhhdGlvbklkXHJcbiAgICAgICAgKTtcclxuICAgICAgICBzZWxlY3RlZEludm9pY2VzLmZvckVhY2goKGludm9pY2U6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICBpZiAoIWludm9pY2UudG90YWxWYWx1ZSkge1xyXG4gICAgICAgICAgICAgICAgaW52b2ljZS50b3RhbFZhbHVlID0gdGhpcy5nZXRUb3RhbFZhbHVlKGludm9pY2UpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgbGV0IGlzVmFsaWQgPSB0cnVlO1xyXG4gICAgICAgIHNlbGVjdGVkSW52b2ljZXMuZm9yRWFjaCgoaW52b2ljZTogYW55KSA9PiB7XHJcbiAgICAgICAgICAgIGludm9pY2UubGlua2VkVmFsdWUgPVxyXG4gICAgICAgICAgICAgICAgdmFsb3JMaW5rZWQuZmluZCgobGlua2VkOiBhbnkpID0+IGxpbmtlZC5leHRlcm5hbEludm9pY2VJZCA9PT0gaW52b2ljZS5leHRlcm5hbEludm9pY2VJZClcclxuICAgICAgICAgICAgICAgICAgICA/LnRvdGFsTGlua2VkIHx8IDA7XHJcbiAgICAgICAgICAgIGlmIChpbnZvaWNlLmxpbmtlZFZhbHVlID49IGludm9pY2UudG90YWxWYWx1ZSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5tZXNzYWdlU2VydmljZS5hZGQoe1xyXG4gICAgICAgICAgICAgICAgICAgIHNldmVyaXR5OiAnd2FybicsXHJcbiAgICAgICAgICAgICAgICAgICAgc3VtbWFyeTogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnYWdyby5hbmd1bGFyX2NvbXBvbmVudHMubGlua19pbnZvaWNlJyksXHJcbiAgICAgICAgICAgICAgICAgICAgZGV0YWlsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5pbnZvaWNlX2FscmVhZHlfbGlua2VkJyksXHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgIGlzVmFsaWQgPSBmYWxzZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpbnZvaWNlLnJlbWFpbmluZ1ZhbHVlID0gaW52b2ljZS50b3RhbFZhbHVlIC0gaW52b2ljZS5saW5rZWRWYWx1ZTtcclxuICAgICAgICB9KTtcclxuICAgICAgICByZXR1cm4gaXNWYWxpZDtcclxuICAgIH1cclxuXHJcbiAgICBhc3luYyBhZGFwdFJlc3VsdChyZXN1bHQ6IElJbnZvaWNlTG9va3VwUmVzcG9uc2UpOiBQcm9taXNlPGFueT4ge1xyXG4gICAgICAgIHJldHVybiBhd2FpdCB0aGlzLnVwZGF0ZUxpbmtlZFZhbHVlSW5HcmlkKHJlc3VsdD8ucmVzdWx0Py5pbnZvaWNlcyB8fCBbXSk7XHJcbiAgICB9XHJcblxyXG4gICAgY2FuY2VsKCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgICAgIHRoaXMub3B0aW9ucy5maXhhdGlvbkl0ZW1zID0gW107XHJcbiAgICAgICAgcmV0dXJuIHN1cGVyLmNhbmNlbCgpO1xyXG4gICAgfVxyXG5cclxuICAgIGFzeW5jIHVwZGF0ZUxpbmtlZFZhbHVlSW5HcmlkKHJlc3VsdDogSUludm9pY2VMb29rdXBSZWNvcmRbXSk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgICAgIGNvbnN0IGV4dGVybmFsSW52b2ljZUlkID0gcmVzdWx0Lm1hcCgoaW52b2ljZTogYW55KSA9PiBpbnZvaWNlLmV4dGVybmFsSW52b2ljZUlkKTtcclxuICAgICAgICBsZXQgZmlsdGVyID0gYGZpeGF0aW9uSXRlbS5maXhhdGlvbi5pZCBlcSAnJHt0aGlzLm9wdGlvbnMuZml4YXRpb25JZH0nYDtcclxuICAgICAgICBpZiAoZXh0ZXJuYWxJbnZvaWNlSWQgJiYgZXh0ZXJuYWxJbnZvaWNlSWQubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICBmaWx0ZXIgKz0gYGFuZCBleHRlcm5hbEludm9pY2VJZCBpbiAoJyR7ZXh0ZXJuYWxJbnZvaWNlSWQuam9pbihcIicsJ1wiKX0nKSBgO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjb25zdCBsaXN0UGFyYW1zOiBQYXJ0aWFsPExpc3RQYXJhbXM+ID0ge1xyXG4gICAgICAgICAgICBwYWdlOiAwLFxyXG4gICAgICAgICAgICBzaXplOiByZXN1bHQubGVuZ3RoLFxyXG4gICAgICAgICAgICBmaWx0ZXJRdWVyeTogZmlsdGVyLFxyXG4gICAgICAgIH07XHJcbiAgICAgICAgYXdhaXQgdGhpcy5wcm9kdWNlckludm9pY2VTZXJ2aWNlXHJcbiAgICAgICAgICAgIC5saXN0KGxpc3RQYXJhbXMpXHJcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLm5nVW5zdWJzY3JpYmUpKVxyXG4gICAgICAgICAgICAudG9Qcm9taXNlKClcclxuICAgICAgICAgICAgLnRoZW4oKHByb2R1Y2VySW52b2ljZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgcHJvZHVjZXJJbnZvaWNlcz8uY29udGVudHMuZm9yRWFjaCgoaW52b2ljZTogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgcmVzdWx0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5maWx0ZXIoKGl0ZW06IElJbnZvaWNlTG9va3VwUmVjb3JkKSA9PiBpdGVtLmV4dGVybmFsSW52b2ljZUlkID09PSBpbnZvaWNlLmV4dGVybmFsSW52b2ljZUlkKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICA/LmZvckVhY2goKGxpbmtlZEludm9pY2U6IElJbnZvaWNlTG9va3VwUmVjb3JkKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5rZWRJbnZvaWNlLmxpbmtlZFZhbHVlID0gaW52b2ljZS5saW5rZWRWYWx1ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0VG90YWxWYWx1ZShyb3c6IGFueSk6IG51bWJlciB7XHJcbiAgICAgICAgY29uc3QgbmV0VG90YWxWYWx1ZSA9IHJvdz8ubmV0VG90YWxWYWx1ZTtcclxuICAgICAgICBpZiAobmV0VG90YWxWYWx1ZSkge1xyXG4gICAgICAgICAgICByZXR1cm4gbmV0VG90YWxWYWx1ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29uc3QgaXRlbXM6IGFueVtdID0gcm93Py5pdGVtcyB8fCBbXTtcclxuICAgICAgICByZXR1cm4gaXRlbXMucmVkdWNlKCh0b3RhbDogbnVtYmVyLCBpdGVtOiBhbnkpID0+IHRvdGFsICsgKGl0ZW0udW5pdFByaWNlIHx8IDApICogKGl0ZW0ucXVhbnRpdHkgfHwgMCksIDApO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
247
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtaW52b2ljZS1wai1mb3ItZml4YXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNlbmlvci1hZ3JvbmVnb2Npby9hbmd1bGFyLWNvbXBvbmVudHMvIiwic291cmNlcyI6WyJjb21wb25lbnRzL21vZGFsLWludm9pY2UtcGovZm9yLWZpeGF0aW9uL21vZGFsLWludm9pY2UtcGotZm9yLWZpeGF0aW9uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM3RSxPQUFPLFFBQVEsTUFBTSw0QkFBNEIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRixPQUFPLEVBQUUsTUFBTSxFQUFFLGFBQWEsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDekMsT0FBTyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDakMsT0FBTyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDbEYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sZ0VBQWdFLENBQUM7QUFDeEcsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFVOUQ7SUFBd0Qsc0RBQWtCO0lBTXRFLDRDQUNhLGtCQUF5QyxFQUN6QyxjQUFrQyxFQUNsQyxhQUE0QixF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R0FBYixVQUFjLEdBQVE7UUFDbEIsSUFBTSxhQUFhLEdBQUcsR0FBRyxhQUFILEdBQUcsdUJBQUgsR0FBRyxDQUFFLGFBQWEsQ0FBQztRQUN6QyxJQUFJLGFBQWEsRUFBRTtZQUNmLE9BQU8sYUFBYSxDQUFDO1NBQ3hCO1FBQ0QsSUFBTSxLQUFLLEdBQVUsQ0FBQSxHQUFHLGFBQUgsR0FBRyx1QkFBSCxHQUFHLENBQUUsS0FBSyxLQUFJLEVBQUUsQ0FBQztRQUN0QyxPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsVUFBQyxLQUFhLEVBQUUsSUFBUyxJQUFLLE9BQUEsS0FBSyxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksQ0FBQyxDQUFDLEVBQXBELENBQW9ELEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDL0csQ0FBQzs7Z0JBNUxnQyxxQkFBcUI7Z0JBQ3pCLGtCQUFrQjtnQkFDbkIsYUFBYTtnQkFDZCxZQUFZO2dCQUNaLFlBQVk7Z0JBQ0Ysc0JBQXNCO2dCQUM5QixjQUFjO2dCQUN0QixRQUFROztJQWJwQjtRQUFSLEtBQUssRUFBRTt1RUFBMkM7SUFDekM7UUFBVCxNQUFNLEVBQUU7a0ZBQWdEO0lBRmhELGtDQUFrQztRQUw5QyxTQUFTLENBQUM7WUFDUCxRQUFRLEVBQUUsaUNBQWlDO1lBQzNDLGc0S0FBK0I7O1NBRWxDLENBQUM7T0FDVyxrQ0FBa0MsQ0FvTTlDO0lBQUQseUNBQUM7Q0FBQSxBQXBNRCxDQUF3RCxrQkFBa0IsR0FvTXpFO1NBcE1ZLGtDQUFrQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEN1cnJlbmN5UGlwZSwgRGF0ZVBpcGUsIHJlZ2lzdGVyTG9jYWxlRGF0YSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCBsb2NhbGVQdCBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9wdCc7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb2x1bW4sIExvY2FsZVNlcnZpY2UgfSBmcm9tICdAc2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzJztcclxuaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UgfSBmcm9tICdwcmltZW5nJztcclxuaW1wb3J0IHsgRU1QVFksIG9mIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGZpbmFsaXplLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEtpbG9ncmFtUGlwZSB9IGZyb20gJy4uLy4uLy4uL3BpcGUva2lsb2dyYW0nO1xyXG5pbXBvcnQgeyBMaWJUcmFuc2xhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9saWItdHJhbnNsYXRpb24uc2VydmljZSc7XHJcbmltcG9ydCB7IFByb2R1Y2VySW52b2ljZVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9wcm9kdWNlci1pbnZvaWNlLWZpeGF0aW9uL3Byb2R1Y2VyLWludm9pY2Uuc2VydmljZSc7XHJcbmltcG9ydCB7IE1vZGFsSW52b2ljZVBqQmFzZSB9IGZyb20gJy4uL21vZGFsLWludm9pY2UtcGotYmFzZS5jbGFzcyc7XHJcbmltcG9ydCB7IEFncm9JbnZvaWNlU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2Fncm8taW52b2ljZSc7XHJcbmltcG9ydCB7IElJbnZvaWNlTG9va3VwUmVjb3JkLCBJSW52b2ljZUxvb2t1cFJlc3BvbnNlIH0gZnJvbSAnLi4vc2VydmljZXMvYWdyby1pbnZvaWNlL2ludGVyZmFjZXMnO1xyXG5pbXBvcnQgeyBNb2RhbEludm9pY2VQakZvckZpeGF0aW9uT3B0aW9ucyB9IGZyb20gJy4vbW9kYWwtZml4YXRpb24tb3B0aW9ucy5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBMaXN0UGFyYW1zIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvYWdyby1lbnRpdHktc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAncy1tb2RhbC1pbnZvaWNlLXBqLWZvci1maXhhdGlvbicsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4uL3RlbXBsYXRlLmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4uL3N0eWxlLnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIE1vZGFsSW52b2ljZVBqRm9yRml4YXRpb25Db21wb25lbnQgZXh0ZW5kcyBNb2RhbEludm9pY2VQakJhc2UgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgICBASW5wdXQoKSBvcHRpb25zOiBNb2RhbEludm9pY2VQakZvckZpeGF0aW9uT3B0aW9ucztcclxuICAgIEBPdXRwdXQoKSB3aGVuU2VsZWN0SW52b2ljZXMgPSBuZXcgRXZlbnRFbWl0dGVyPGFueVtdPigpO1xyXG5cclxuICAgIHB1YmxpYyBncmlkQ29sdW1uczogUGFydGlhbDxDb2x1bW4gJiB7IHNvcnRhYmxlPzogYm9vbGVhbiB9PltdO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHJlYWRvbmx5IHRyYW5zbGF0aW9uU2VydmljZTogTGliVHJhbnNsYXRpb25TZXJ2aWNlLFxyXG4gICAgICAgIHJlYWRvbmx5IGludm9pY2VTZXJ2aWNlOiBBZ3JvSW52b2ljZVNlcnZpY2UsXHJcbiAgICAgICAgcmVhZG9ubHkgbG9jYWxlU2VydmljZTogTG9jYWxlU2VydmljZSxcclxuICAgICAgICByZWFkb25seSBraWxvZ3JhbVBpcGU6IEtpbG9ncmFtUGlwZSxcclxuICAgICAgICByZWFkb25seSBjdXJyZW5jeVBpcGU6IEN1cnJlbmN5UGlwZSxcclxuICAgICAgICByZWFkb25seSBwcm9kdWNlckludm9pY2VTZXJ2aWNlOiBQcm9kdWNlckludm9pY2VTZXJ2aWNlLFxyXG4gICAgICAgIHJlYWRvbmx5IG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSxcclxuICAgICAgICBwdWJsaWMgZGF0ZVBpcGU6IERhdGVQaXBlXHJcbiAgICApIHtcclxuICAgICAgICBzdXBlcih0cmFuc2xhdGlvblNlcnZpY2UsIGludm9pY2VTZXJ2aWNlLCBsb2NhbGVTZXJ2aWNlLCBraWxvZ3JhbVBpcGUsIG1lc3NhZ2VTZXJ2aWNlLCBkYXRlUGlwZSk7XHJcbiAgICAgICAgcmVnaXN0ZXJMb2NhbGVEYXRhKGxvY2FsZVB0KTtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmRlZmluZUdyaWRDb2x1bW5zKCk7XHJcbiAgICAgICAgdGhpcy5ncmlkRmllbGRWYWx1ZXNNYXAgPSB7XHJcbiAgICAgICAgICAgIC4uLnRoaXMuZ3JpZEZpZWxkVmFsdWVzTWFwLFxyXG4gICAgICAgICAgICBzZXJpZXM6IChyb3cpID0+IHJvdz8uc2VyaWVzTGVnYWwgfHwgcm93Py5zZXJpZXMgfHwgcm93LnNlcmllcyxcclxuICAgICAgICAgICAgdG90YWxWYWx1ZTogKHJvdykgPT5cclxuICAgICAgICAgICAgICAgIHRoaXMuY3VycmVuY3lQaXBlLnRyYW5zZm9ybSh0aGlzLmdldFRvdGFsVmFsdWUocm93KSB8fCAwLCAnQlJMJywgJ3N5bWJvbCcsIHVuZGVmaW5lZCwgJ3B0LUJSJyksXHJcbiAgICAgICAgICAgIGxpbmtlZFZhbHVlOiAocm93KSA9PlxyXG4gICAgICAgICAgICAgICAgdGhpcy5jdXJyZW5jeVBpcGUudHJhbnNmb3JtKHJvdz8ubGlua2VkVmFsdWUgfHwgMCwgJ0JSTCcsICdzeW1ib2wnLCB1bmRlZmluZWQsICdwdC1CUicpLFxyXG4gICAgICAgIH07XHJcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcclxuICAgIH1cclxuXHJcbiAgICBkZWZpbmVHcmlkQ29sdW1ucygpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmdyaWRDb2x1bW5zID0gW1xyXG4gICAgICAgICAgICB7IGZpZWxkOiAnbnVtYmVyJywgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5udW1iZXInKSB9LFxyXG4gICAgICAgICAgICB7IGZpZWxkOiAnc2VyaWVzJywgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5zZXJpZXMnKSB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICBmaWVsZDogJ3RvdGFsVmFsdWUnLFxyXG4gICAgICAgICAgICAgICAgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy50b3RhbF92YWx1ZScpLFxyXG4gICAgICAgICAgICAgICAgc29ydGFibGU6IGZhbHNlLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICBmaWVsZDogJ2xpbmtlZFZhbHVlJyxcclxuICAgICAgICAgICAgICAgIGhlYWRlcjogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnYWdyby5hbmd1bGFyX2NvbXBvbmVudHMudmFsdWVfbGlua2VkJyksXHJcbiAgICAgICAgICAgICAgICBzb3J0YWJsZTogZmFsc2UsXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgZmllbGQ6ICdpc3N1YW5jZURhdGUnLCBoZWFkZXI6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2Fncm8uYW5ndWxhcl9jb21wb25lbnRzLmlzc3VhbmNlX2RhdGUnKSB9LFxyXG4gICAgICAgIF07XHJcbiAgICB9XHJcblxyXG4gICAgYmVmb3JlQWRkKHNlbGVjdGVkSW52b2ljZXM6IGFueVtdKTogUHJvbWlzZTxhbnk+IHtcclxuICAgICAgICBpZiAoc2VsZWN0ZWRJbnZvaWNlcz8ubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgIHRoaXMubGlua1NlbGVjdGVkSW52b2ljZXNJbkZpeGF0aW9uSXRlbShzZWxlY3RlZEludm9pY2VzKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIG9mKEVNUFRZKS50b1Byb21pc2UoKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgb3BlbigpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5vcHRpb25zLmZpeGF0aW9uSXRlbXMuZmlsdGVyKChpdGVtKSA9PiBpdGVtLnJlcXVpcmVkVmFsdWUgPiBpdGVtLnRvdGFsVmFsdWVJbnZvaWNlcykubGVuZ3RoID09PSAwKSB7XHJcbiAgICAgICAgICAgIHRoaXMubWVzc2FnZVNlcnZpY2UuYWRkKHtcclxuICAgICAgICAgICAgICAgIHNldmVyaXR5OiAnd2FybicsXHJcbiAgICAgICAgICAgICAgICBzdW1tYXJ5OiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5tYXhfbGlua2VkX2ludm9pY2VzJyksXHJcbiAgICAgICAgICAgICAgICBkZXRhaWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2Fncm8uYW5ndWxhcl9jb21wb25lbnRzLm1heF9saW5rZWRfaW52b2ljZXNfZGVzY3JpcHRpb24nKSxcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgc3VwZXIub3BlbigpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBhc3luYyBsaW5rU2VsZWN0ZWRJbnZvaWNlc0luRml4YXRpb25JdGVtKHNlbGVjdGVkSW52b2ljZXM6IGFueVtdKSB7XHJcbiAgICAgICAgaWYgKCEoYXdhaXQgdGhpcy5pc1ZhbGlkQW5kU2V0TGlua2VkVmFsdWVJbkludm9pY2VzKHNlbGVjdGVkSW52b2ljZXMpKSkge1xyXG4gICAgICAgICAgICB0aGlzLmdyaWRMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29uc3QgZW50aXRpZXMgPSBbXVxyXG4gICAgICAgICAgICAuY29uY2F0KFxyXG4gICAgICAgICAgICAgICAgLi4uc2VsZWN0ZWRJbnZvaWNlcy5tYXAoKGludm9pY2U6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLm9wdGlvbnMuZml4YXRpb25JdGVtcy5tYXAoKGZpeGF0aW9uSXRlbTogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlcXVpcmVkVmFsdWUgPVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGZpeGF0aW9uSXRlbS5yZXF1aXJlZFZhbHVlIHx8IDApIC0gKGZpeGF0aW9uSXRlbS50b3RhbFZhbHVlSW52b2ljZXMgfHwgMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpbnZvaWNlLnJlbWFpbmluZ1ZhbHVlIDw9IDAgfHwgcmVxdWlyZWRWYWx1ZSA8PSAwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB2YWx1ZVRvQmVMaW5rZWQgPVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWRWYWx1ZSA+IGludm9pY2UucmVtYWluaW5nVmFsdWUgPyBpbnZvaWNlLnJlbWFpbmluZ1ZhbHVlIDogcmVxdWlyZWRWYWx1ZTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGludm9pY2UucmVtYWluaW5nVmFsdWUgLT0gdmFsdWVUb0JlTGlua2VkO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBib2R5ID0ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VyaWVzOiBpbnZvaWNlPy5zZXJpZXMsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBudW1iZXI6IFN0cmluZyhpbnZvaWNlPy5udW1iZXIpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZXh0ZXJuYWxJbnZvaWNlSWQ6IGludm9pY2U/LmV4dGVybmFsSW52b2ljZUlkLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlua2VkVmFsdWU6IHZhbHVlVG9CZUxpbmtlZCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvdGFsVmFsdWU6IHRoaXMuZ2V0VG90YWxWYWx1ZShpbnZvaWNlKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzc3VhbmNlRGF0ZTogaW52b2ljZT8uaXNzdWFuY2VEYXRlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZml4YXRpb25JdGVtOiB7IGlkOiBmaXhhdGlvbkl0ZW0/LmlkIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH07XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmaXhhdGlvbkl0ZW0udG90YWxWYWx1ZUludm9pY2VzID0gKGZpeGF0aW9uSXRlbS50b3RhbFZhbHVlSW52b2ljZXMgfHwgMCkgKyB2YWx1ZVRvQmVMaW5rZWQ7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gYm9keTtcclxuICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgIClcclxuICAgICAgICAgICAgLmZpbHRlcigoZW50aXR5OiBhbnkpID0+IGVudGl0eSAhPT0gbnVsbCk7XHJcbiAgICAgICAgdGhpcy5ncmlkTG9hZGluZyA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5wcm9kdWNlckludm9pY2VTZXJ2aWNlXHJcbiAgICAgICAgICAgIC5pbnNlcnRCdWxrKGVudGl0aWVzKVxyXG4gICAgICAgICAgICAucGlwZShcclxuICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLm5nVW5zdWJzY3JpYmUpLFxyXG4gICAgICAgICAgICAgICAgZmluYWxpemUoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZ3JpZExvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLndoZW5TZWxlY3RJbnZvaWNlcy5lbWl0KHRoaXMuc2VsZWN0ZWQpO1xyXG4gICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMubWVzc2FnZVNlcnZpY2UuYWRkKHtcclxuICAgICAgICAgICAgICAgICAgICBzZXZlcml0eTogJ3N1Y2Nlc3MnLFxyXG4gICAgICAgICAgICAgICAgICAgIHN1bW1hcnk6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2Fncm8uYW5ndWxhcl9jb21wb25lbnRzLnN1Y2Nlc3MnKSxcclxuICAgICAgICAgICAgICAgICAgICBkZXRhaWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2Fncm8uYW5ndWxhcl9jb21wb25lbnRzLmludm9pY2VfY3JlYXRlZF9zdWNjZXNzZnVsbHknKSxcclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jYW5jZWwoKTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgYXN5bmMgaXNWYWxpZEFuZFNldExpbmtlZFZhbHVlSW5JbnZvaWNlcyhzZWxlY3RlZEludm9pY2VzOiBhbnlbXSk6IFByb21pc2U8Ym9vbGVhbj4ge1xyXG4gICAgICAgIGNvbnN0IHZhbG9yTGlua2VkID0gYXdhaXQgdGhpcy5wcm9kdWNlckludm9pY2VTZXJ2aWNlLmdldFRvdGFsTGlua2VkSW5JbnZvaWNlcyhcclxuICAgICAgICAgICAgc2VsZWN0ZWRJbnZvaWNlcy5tYXAoKGludm9pY2U6IGFueSkgPT4gaW52b2ljZS5leHRlcm5hbEludm9pY2VJZCksXHJcbiAgICAgICAgICAgIHRoaXMub3B0aW9ucy5maXhhdGlvbklkXHJcbiAgICAgICAgKTtcclxuICAgICAgICBzZWxlY3RlZEludm9pY2VzLmZvckVhY2goKGludm9pY2U6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICBpZiAoIWludm9pY2UudG90YWxWYWx1ZSkge1xyXG4gICAgICAgICAgICAgICAgaW52b2ljZS50b3RhbFZhbHVlID0gdGhpcy5nZXRUb3RhbFZhbHVlKGludm9pY2UpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgbGV0IGlzVmFsaWQgPSB0cnVlO1xyXG4gICAgICAgIHNlbGVjdGVkSW52b2ljZXMuZm9yRWFjaCgoaW52b2ljZTogYW55KSA9PiB7XHJcbiAgICAgICAgICAgIGludm9pY2UubGlua2VkVmFsdWUgPVxyXG4gICAgICAgICAgICAgICAgdmFsb3JMaW5rZWQuZmluZCgobGlua2VkOiBhbnkpID0+IGxpbmtlZC5leHRlcm5hbEludm9pY2VJZCA9PT0gaW52b2ljZS5leHRlcm5hbEludm9pY2VJZClcclxuICAgICAgICAgICAgICAgICAgICA/LnRvdGFsTGlua2VkIHx8IDA7XHJcbiAgICAgICAgICAgIGlmIChpbnZvaWNlLmxpbmtlZFZhbHVlID49IGludm9pY2UudG90YWxWYWx1ZSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5tZXNzYWdlU2VydmljZS5hZGQoe1xyXG4gICAgICAgICAgICAgICAgICAgIHNldmVyaXR5OiAnd2FybicsXHJcbiAgICAgICAgICAgICAgICAgICAgc3VtbWFyeTogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnYWdyby5hbmd1bGFyX2NvbXBvbmVudHMubGlua19pbnZvaWNlJyksXHJcbiAgICAgICAgICAgICAgICAgICAgZGV0YWlsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5pbnZvaWNlX2FscmVhZHlfbGlua2VkJyksXHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgIGlzVmFsaWQgPSBmYWxzZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpbnZvaWNlLnJlbWFpbmluZ1ZhbHVlID0gaW52b2ljZS50b3RhbFZhbHVlIC0gaW52b2ljZS5saW5rZWRWYWx1ZTtcclxuICAgICAgICB9KTtcclxuICAgICAgICByZXR1cm4gaXNWYWxpZDtcclxuICAgIH1cclxuXHJcbiAgICBhc3luYyBhZGFwdFJlc3VsdChyZXN1bHQ6IElJbnZvaWNlTG9va3VwUmVzcG9uc2UpOiBQcm9taXNlPGFueT4ge1xyXG4gICAgICAgIHJldHVybiBhd2FpdCB0aGlzLnVwZGF0ZUxpbmtlZFZhbHVlSW5HcmlkKHJlc3VsdD8ucmVzdWx0Py5pbnZvaWNlcyB8fCBbXSk7XHJcbiAgICB9XHJcblxyXG4gICAgY2FuY2VsKCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgICAgIHRoaXMub3B0aW9ucy5maXhhdGlvbkl0ZW1zID0gW107XHJcbiAgICAgICAgcmV0dXJuIHN1cGVyLmNhbmNlbCgpO1xyXG4gICAgfVxyXG5cclxuICAgIGFzeW5jIHVwZGF0ZUxpbmtlZFZhbHVlSW5HcmlkKHJlc3VsdDogSUludm9pY2VMb29rdXBSZWNvcmRbXSk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgICAgIGNvbnN0IGV4dGVybmFsSW52b2ljZUlkID0gcmVzdWx0Lm1hcCgoaW52b2ljZTogYW55KSA9PiBpbnZvaWNlLmV4dGVybmFsSW52b2ljZUlkKTtcclxuICAgICAgICBsZXQgZmlsdGVyID0gYGZpeGF0aW9uSXRlbS5maXhhdGlvbi5pZCBlcSAnJHt0aGlzLm9wdGlvbnMuZml4YXRpb25JZH0nYDtcclxuICAgICAgICBpZiAoZXh0ZXJuYWxJbnZvaWNlSWQgJiYgZXh0ZXJuYWxJbnZvaWNlSWQubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICBmaWx0ZXIgKz0gYGFuZCBleHRlcm5hbEludm9pY2VJZCBpbiAoJyR7ZXh0ZXJuYWxJbnZvaWNlSWQuam9pbihcIicsJ1wiKX0nKSBgO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjb25zdCBsaXN0UGFyYW1zOiBQYXJ0aWFsPExpc3RQYXJhbXM+ID0ge1xyXG4gICAgICAgICAgICBwYWdlOiAwLFxyXG4gICAgICAgICAgICBzaXplOiByZXN1bHQubGVuZ3RoLFxyXG4gICAgICAgICAgICBmaWx0ZXJRdWVyeTogZmlsdGVyLFxyXG4gICAgICAgIH07XHJcbiAgICAgICAgYXdhaXQgdGhpcy5wcm9kdWNlckludm9pY2VTZXJ2aWNlXHJcbiAgICAgICAgICAgIC5saXN0KGxpc3RQYXJhbXMpXHJcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLm5nVW5zdWJzY3JpYmUpKVxyXG4gICAgICAgICAgICAudG9Qcm9taXNlKClcclxuICAgICAgICAgICAgLnRoZW4oKHByb2R1Y2VySW52b2ljZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgcHJvZHVjZXJJbnZvaWNlcz8uY29udGVudHMuZm9yRWFjaCgoaW52b2ljZTogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgcmVzdWx0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5maWx0ZXIoKGl0ZW06IElJbnZvaWNlTG9va3VwUmVjb3JkKSA9PiBpdGVtLmV4dGVybmFsSW52b2ljZUlkID09PSBpbnZvaWNlLmV4dGVybmFsSW52b2ljZUlkKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICA/LmZvckVhY2goKGxpbmtlZEludm9pY2U6IElJbnZvaWNlTG9va3VwUmVjb3JkKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5rZWRJbnZvaWNlLmxpbmtlZFZhbHVlID0gaW52b2ljZS5saW5rZWRWYWx1ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0VG90YWxWYWx1ZShyb3c6IGFueSk6IG51bWJlciB7XHJcbiAgICAgICAgY29uc3QgbmV0VG90YWxWYWx1ZSA9IHJvdz8ubmV0VG90YWxWYWx1ZTtcclxuICAgICAgICBpZiAobmV0VG90YWxWYWx1ZSkge1xyXG4gICAgICAgICAgICByZXR1cm4gbmV0VG90YWxWYWx1ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29uc3QgaXRlbXM6IGFueVtdID0gcm93Py5pdGVtcyB8fCBbXTtcclxuICAgICAgICByZXR1cm4gaXRlbXMucmVkdWNlKCh0b3RhbDogbnVtYmVyLCBpdGVtOiBhbnkpID0+IHRvdGFsICsgKGl0ZW0udW5pdFByaWNlIHx8IDApICogKGl0ZW0ucXVhbnRpdHkgfHwgMCksIDApO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -57,11 +57,11 @@ var ModalInvoicePjForOriginationComponent = /** @class */ (function (_super) {
57
57
  ModalInvoicePjForOriginationComponent = __decorate([
58
58
  Component({
59
59
  selector: 's-modal-invoice-pj-for-origination',
60
- template: "<p-dialog\r\n header=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [(visible)]=\"visible\"\r\n [modal]=\"true\"\r\n class=\"add-invoice-modal\"\r\n [closeOnEscape]=\"false\"\r\n (onHide)=\"cancelPooling()\"\r\n [dismissableMask]=\"false\"\r\n>\r\n <ng-container *ngIf=\"!dontHaveAnyInvoice\">\r\n <div class=\"ui-g\">\r\n <label for=\"invoiceSearchInput\">{{ 'agro.angular_components.number' | libTranslate }}</label>\r\n <input\r\n type=\"text\"\r\n id=\"invoiceSearchInput\"\r\n pInputText\r\n [formControl]=\"searchValue\"\r\n [placeholder]=\"'' | libTranslate\"\r\n [required]=\"false\"\r\n />\r\n <div class=\"ui-g-12\">\r\n <p-table\r\n [(selection)]=\"selected\"\r\n [value]=\"gridData\"\r\n [columns]=\"gridColumns\"\r\n [scrollable]=\"true\"\r\n dataKey=\"externalInvoiceId\"\r\n [rows]=\"10\"\r\n [paginator]=\"true\"\r\n [lazyLoadOnInit]=\"false\"\r\n [totalRecords]=\"gridTotalRecords\"\r\n [lazy]=\"true\"\r\n (onLazyLoad)=\"updateGridData($event)\"\r\n [resizableColumns]=\"true\"\r\n *sLoadingState=\"gridLoading\"\r\n sortMode=\"multiple\"\r\n [selectionMode]=\"'multiple'\"\r\n >\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n <th class=\"checkbox\" scope=\"col\">\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n </th>\r\n <ng-container *ngFor=\"let col of columns\">\r\n <th\r\n *ngIf=\"col.sortable === undefined || col.sortable\"\r\n [pSortableColumn]=\"col.field\"\r\n scope=\"col\"\r\n >\r\n {{ col.header }}\r\n <p-sortIcon [field]=\"col.field\"></p-sortIcon>\r\n </th>\r\n <th *ngIf=\"col.sortable === false || col.sortable === null\" scope=\"col\">\r\n {{ col.header }}\r\n </th>\r\n </ng-container>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"body\" let-rowData let-columns=\"columns\" let-rowIndex=\"rowIndex\">\r\n <tr>\r\n <td class=\"checkbox\" tabindex=\"0\">\r\n <p-tableCheckbox [value]=\"rowData\"></p-tableCheckbox>\r\n </td>\r\n <td\r\n [pSelectableRow]=\"rowData\"\r\n [pSelectableRowIndex]=\"rowIndex\"\r\n *ngFor=\"let col of columns\"\r\n class=\"column\"\r\n tabindex=\"0\"\r\n >\r\n <ng-container>\r\n {{ gridFieldValuesMap[col.field] ? gridFieldValuesMap[col.field](rowData) :\r\n rowData[col.field] }}\r\n </ng-container>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"paginatorright\">\r\n <span>{{ gridTotalRecords }} registros encontrados</span>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"dontHaveAnyInvoice\">\r\n <s-empty-state\r\n iconClass=\"fa fa-exclamation-triangle\"\r\n title=\"{{ 'agro.angular_components.add_pj_invoice_modal_no_invoices_found' | libTranslate }}\"\r\n primaryActionLabel=\"{{ 'agro.angular_components.error_server_try_again' | libTranslate }}\"\r\n (primaryAction)=\"tryToSearchAgain()\"\r\n description=\"{{ 'agro.angular_components.no_register_found_for_external_invoices_summary' | libTranslate }}\"\r\n >\r\n </s-empty-state>\r\n </ng-container>\r\n\r\n <p-footer class=\"footer\" *ngIf=\"!dontHaveAnyInvoice\">\r\n <s-button\r\n [priority]=\"buttonPriority.Primary\"\r\n label=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [disabled]=\"!selected?.length\"\r\n (click)=\"add()\"\r\n (keydown.enter)=\"add()\"\r\n ></s-button>\r\n <s-button\r\n [priority]=\"buttonPriority.Link\"\r\n label=\"{{ 'agro.angular_components.cancel' | libTranslate }}\"\r\n (click)=\"cancel()\"\r\n (keydown.enter)=\"cancel()\"\r\n ></s-button>\r\n </p-footer>\r\n</p-dialog>\r\n",
60
+ template: "<p-dialog\r\n header=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [(visible)]=\"visible\"\r\n [modal]=\"true\"\r\n class=\"add-invoice-modal\"\r\n [closeOnEscape]=\"false\"\r\n (onHide)=\"cancelPooling()\"\r\n [dismissableMask]=\"false\"\r\n>\r\n <ng-container *ngIf=\"!dontHaveAnyInvoice\">\r\n <div class=\"ui-g\">\r\n <label for=\"invoiceSearchInput\">{{ 'agro.angular_components.number' | libTranslate }}</label>\r\n <input\r\n type=\"text\"\r\n id=\"invoiceSearchInput\"\r\n pInputText\r\n [formControl]=\"searchValue\"\r\n [placeholder]=\"'' | libTranslate\"\r\n [required]=\"false\"\r\n />\r\n <div class=\"ui-g-12\">\r\n <p-table\r\n [(selection)]=\"selected\"\r\n [value]=\"gridData\"\r\n [columns]=\"gridColumns\"\r\n [scrollable]=\"true\"\r\n dataKey=\"_uniqueId\"\r\n [rows]=\"10\"\r\n [paginator]=\"true\"\r\n [lazyLoadOnInit]=\"false\"\r\n [totalRecords]=\"gridTotalRecords\"\r\n [lazy]=\"true\"\r\n (onLazyLoad)=\"updateGridData($event)\"\r\n [resizableColumns]=\"true\"\r\n *sLoadingState=\"gridLoading\"\r\n sortMode=\"multiple\"\r\n [selectionMode]=\"'multiple'\"\r\n >\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n <th class=\"checkbox\" scope=\"col\">\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n </th>\r\n <ng-container *ngFor=\"let col of columns\">\r\n <th\r\n *ngIf=\"col.sortable === undefined || col.sortable\"\r\n [pSortableColumn]=\"col.field\"\r\n scope=\"col\"\r\n >\r\n {{ col.header }}\r\n <p-sortIcon [field]=\"col.field\"></p-sortIcon>\r\n </th>\r\n <th *ngIf=\"col.sortable === false || col.sortable === null\" scope=\"col\">\r\n {{ col.header }}\r\n </th>\r\n </ng-container>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"body\" let-rowData let-columns=\"columns\" let-rowIndex=\"rowIndex\">\r\n <tr>\r\n <td class=\"checkbox\" tabindex=\"0\">\r\n <p-tableCheckbox [value]=\"rowData\"></p-tableCheckbox>\r\n </td>\r\n <td\r\n [pSelectableRow]=\"rowData\"\r\n [pSelectableRowIndex]=\"rowIndex\"\r\n *ngFor=\"let col of columns\"\r\n class=\"column\"\r\n tabindex=\"0\"\r\n >\r\n <ng-container>\r\n {{ gridFieldValuesMap[col.field] ? gridFieldValuesMap[col.field](rowData) :\r\n rowData[col.field] }}\r\n </ng-container>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"paginatorright\">\r\n <span>{{ gridTotalRecords }} registros encontrados</span>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"dontHaveAnyInvoice\">\r\n <s-empty-state\r\n iconClass=\"fa fa-exclamation-triangle\"\r\n title=\"{{ 'agro.angular_components.add_pj_invoice_modal_no_invoices_found' | libTranslate }}\"\r\n primaryActionLabel=\"{{ 'agro.angular_components.error_server_try_again' | libTranslate }}\"\r\n (primaryAction)=\"tryToSearchAgain()\"\r\n description=\"{{ 'agro.angular_components.no_register_found_for_external_invoices_summary' | libTranslate }}\"\r\n >\r\n </s-empty-state>\r\n </ng-container>\r\n\r\n <p-footer class=\"footer\" *ngIf=\"!dontHaveAnyInvoice\">\r\n <s-button\r\n [priority]=\"buttonPriority.Primary\"\r\n label=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [disabled]=\"!selected?.length\"\r\n (click)=\"add()\"\r\n (keydown.enter)=\"add()\"\r\n ></s-button>\r\n <s-button\r\n [priority]=\"buttonPriority.Link\"\r\n label=\"{{ 'agro.angular_components.cancel' | libTranslate }}\"\r\n (click)=\"cancel()\"\r\n (keydown.enter)=\"cancel()\"\r\n ></s-button>\r\n </p-footer>\r\n</p-dialog>\r\n",
61
61
  styles: [".footer{width:100%;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center}.add-invoice-modal{width:480px;max-width:480px}.add-invoice-modal input[type=text]{width:100%}.add-invoice-modal .ui-dialog{width:480px!important}.add-invoice-modal .ui-dialog .ui-dialog-content{min-height:175px}td.checkbox,th.checkbox{width:50px}td.column,th.column{min-width:150px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}"]
62
62
  })
63
63
  ], ModalInvoicePjForOriginationComponent);
64
64
  return ModalInvoicePjForOriginationComponent;
65
65
  }(ModalInvoicePjBase));
66
66
  export { ModalInvoicePjForOriginationComponent };
67
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtaW52b2ljZS1wai1mb3Itb3JpZ2luYXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNlbmlvci1hZ3JvbmVnb2Npby9hbmd1bGFyLWNvbXBvbmVudHMvIiwic291cmNlcyI6WyJjb21wb25lbnRzL21vZGFsLWludm9pY2UtcGovZm9yLW9yaWdpbmF0aW9uL21vZGFsLWludm9pY2UtcGotZm9yLW9yaWdpbmF0aW9uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFGLE9BQU8sRUFBRSxNQUFNLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDM0UsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDbEYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFcEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFOUQsT0FBTyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFPakM7SUFBMkQseURBQWtCO0lBTXpFLCtDQUNXLFNBQWdDLEVBQ2hDLGNBQWtDLEVBQ2xDLGFBQTRCLEVBQzVCLFlBQTBCLEVBQzFCLGNBQThCLEVBQzlCLFFBQWtCO1FBTjdCLFlBUUksa0JBQU0sU0FBUyxFQUFFLGNBQWMsRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFFLGNBQWMsRUFBRSxRQUFRLENBQUMsU0FDMUY7UUFSVSxlQUFTLEdBQVQsU0FBUyxDQUF1QjtRQUNoQyxvQkFBYyxHQUFkLGNBQWMsQ0FBb0I7UUFDbEMsbUJBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsa0JBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsb0JBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLGNBQVEsR0FBUixRQUFRLENBQVU7UUFWbkIsd0JBQWtCLEdBQUcsSUFBSSxZQUFZLEVBQVMsQ0FBQzs7SUFhekQsQ0FBQztJQUVELHdEQUFRLEdBQVI7UUFDSSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztRQUN6QixpQkFBTSxRQUFRLFdBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQsaUVBQWlCLEdBQWpCO1FBQ0ksSUFBSSxDQUFDLFdBQVcsR0FBRztZQUNmLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsZ0NBQWdDLENBQUMsRUFBRTtZQUNyRixFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLGdDQUFnQyxDQUFDLEVBQUU7WUFDckYsRUFBRSxLQUFLLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQywrQkFBK0IsQ0FBQyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUU7WUFDM0csRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxrQ0FBa0MsQ0FBQyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUU7WUFDMUcsRUFBRSxLQUFLLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyx1Q0FBdUMsQ0FBQyxFQUFFO1NBQ3JHLENBQUM7SUFDTixDQUFDO0lBR0QsMkRBQVcsR0FBWCxVQUFZLE1BQThCO1FBQ3RDLE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FBQyxNQUFhLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQseURBQVMsR0FBVCxVQUFVLGdCQUFxQjtRQUMzQixPQUFPLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNqQyxDQUFDOztnQkFoQ3FCLHFCQUFxQjtnQkFDaEIsa0JBQWtCO2dCQUNuQixhQUFhO2dCQUNkLFlBQVk7Z0JBQ1YsY0FBYztnQkFDcEIsUUFBUTs7SUFYcEI7UUFBUixLQUFLLEVBQUU7MEVBQWdDO0lBQzlCO1FBQVQsTUFBTSxFQUFFO3FGQUFnRDtJQUZoRCxxQ0FBcUM7UUFMakQsU0FBUyxDQUFDO1lBQ1AsUUFBUSxFQUFFLG9DQUFvQztZQUM5Qyx3NEtBQStCOztTQUVsQyxDQUFDO09BQ1cscUNBQXFDLENBd0NqRDtJQUFELDRDQUFDO0NBQUEsQUF4Q0QsQ0FBMkQsa0JBQWtCLEdBd0M1RTtTQXhDWSxxQ0FBcUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRlUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb2x1bW4sIExvY2FsZVNlcnZpY2UgfSBmcm9tICdAc2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzJztcclxuaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UgfSBmcm9tICdwcmltZW5nJztcclxuaW1wb3J0IHsgS2lsb2dyYW1QaXBlIH0gZnJvbSAnLi4vLi4vLi4vcGlwZS9raWxvZ3JhbSc7XHJcbmltcG9ydCB7IExpYlRyYW5zbGF0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2xpYi10cmFuc2xhdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTW9kYWxJbnZvaWNlUGpCYXNlIH0gZnJvbSAnLi4vbW9kYWwtaW52b2ljZS1wai1iYXNlLmNsYXNzJztcclxuaW1wb3J0IHsgTW9kYWxJbnZvaWNlUGpPcHRpb25zIH0gZnJvbSAnLi4vbW9kYWwtaW52b2ljZS1wai1vcHRpb25zLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IEFncm9JbnZvaWNlU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2Fncm8taW52b2ljZSc7XHJcbmltcG9ydCB7IElJbnZvaWNlTG9va3VwUmVzcG9uc2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9hZ3JvLWludm9pY2UvaW50ZXJmYWNlcyc7XHJcbmltcG9ydCB7IEVNUFRZLCBvZiB9IGZyb20gJ3J4anMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ3MtbW9kYWwtaW52b2ljZS1wai1mb3Itb3JpZ2luYXRpb24nLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuLi90ZW1wbGF0ZS5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuLi9zdHlsZS5zY3NzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNb2RhbEludm9pY2VQakZvck9yaWdpbmF0aW9uQ29tcG9uZW50IGV4dGVuZHMgTW9kYWxJbnZvaWNlUGpCYXNlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gICAgQElucHV0KCkgb3B0aW9uczogTW9kYWxJbnZvaWNlUGpPcHRpb25zO1xyXG4gICAgQE91dHB1dCgpIHdoZW5TZWxlY3RJbnZvaWNlcyA9IG5ldyBFdmVudEVtaXR0ZXI8YW55W10+KCk7XHJcblxyXG4gICAgcHVibGljIGdyaWRDb2x1bW5zOiBQYXJ0aWFsPENvbHVtbiAmIHsgc29ydGFibGU/OiBib29sZWFuIH0+W107XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHVibGljIHRyYW5zbGF0ZTogTGliVHJhbnNsYXRpb25TZXJ2aWNlLFxyXG4gICAgICAgIHB1YmxpYyBpbnZvaWNlU2VydmljZTogQWdyb0ludm9pY2VTZXJ2aWNlLFxyXG4gICAgICAgIHB1YmxpYyBsb2NhbGVTZXJ2aWNlOiBMb2NhbGVTZXJ2aWNlLFxyXG4gICAgICAgIHB1YmxpYyBraWxvZ3JhbVBpcGU6IEtpbG9ncmFtUGlwZSxcclxuICAgICAgICBwdWJsaWMgbWVzc2FnZVNlcnZpY2U6IE1lc3NhZ2VTZXJ2aWNlLFxyXG4gICAgICAgIHB1YmxpYyBkYXRlUGlwZTogRGF0ZVBpcGVcclxuICAgICkge1xyXG4gICAgICAgIHN1cGVyKHRyYW5zbGF0ZSwgaW52b2ljZVNlcnZpY2UsIGxvY2FsZVNlcnZpY2UsIGtpbG9ncmFtUGlwZSwgbWVzc2FnZVNlcnZpY2UsIGRhdGVQaXBlKTtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmRlZmluZUdyaWRDb2x1bW5zKCk7XHJcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcclxuICAgIH1cclxuXHJcbiAgICBkZWZpbmVHcmlkQ29sdW1ucygpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmdyaWRDb2x1bW5zID0gW1xyXG4gICAgICAgICAgICB7IGZpZWxkOiAnbnVtYmVyJywgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5udW1iZXInKSB9LFxyXG4gICAgICAgICAgICB7IGZpZWxkOiAnc2VyaWVzJywgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5zZXJpZXMnKSB9LFxyXG4gICAgICAgICAgICB7IGZpZWxkOiAnaW52b2ljZUl0ZW1zJywgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5pdGVucycpLCBzb3J0YWJsZTogZmFsc2UgfSxcclxuICAgICAgICAgICAgeyBmaWVsZDogJ3F1YW50aXR5JywgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5xdWFudGl0eScpLCBzb3J0YWJsZTogZmFsc2UgfSxcclxuICAgICAgICAgICAgeyBmaWVsZDogJ2lzc3VhbmNlRGF0ZScsIGhlYWRlcjogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuaXNzdWFuY2VfZGF0ZScpIH0sXHJcbiAgICAgICAgXTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgYWRhcHRSZXN1bHQocmVzdWx0OiBJSW52b2ljZUxvb2t1cFJlc3BvbnNlKTogUHJvbWlzZTxhbnk+IHtcclxuICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHJlc3VsdCBhcyBhbnkpO1xyXG4gICAgfVxyXG5cclxuICAgIGJlZm9yZUFkZChzZWxlY3RlZEludm9pY2VzOiBhbnkpOiBQcm9taXNlPGFueT4ge1xyXG4gICAgICAgIHJldHVybiBvZihFTVBUWSkudG9Qcm9taXNlKCk7XHJcbiAgICB9XHJcbn1cclxuIl19
67
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtaW52b2ljZS1wai1mb3Itb3JpZ2luYXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNlbmlvci1hZ3JvbmVnb2Npby9hbmd1bGFyLWNvbXBvbmVudHMvIiwic291cmNlcyI6WyJjb21wb25lbnRzL21vZGFsLWludm9pY2UtcGovZm9yLW9yaWdpbmF0aW9uL21vZGFsLWludm9pY2UtcGotZm9yLW9yaWdpbmF0aW9uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFGLE9BQU8sRUFBRSxNQUFNLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDM0UsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDbEYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFcEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFOUQsT0FBTyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFPakM7SUFBMkQseURBQWtCO0lBTXpFLCtDQUNXLFNBQWdDLEVBQ2hDLGNBQWtDLEVBQ2xDLGFBQTRCLEVBQzVCLFlBQTBCLEVBQzFCLGNBQThCLEVBQzlCLFFBQWtCO1FBTjdCLFlBUUksa0JBQU0sU0FBUyxFQUFFLGNBQWMsRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFFLGNBQWMsRUFBRSxRQUFRLENBQUMsU0FDMUY7UUFSVSxlQUFTLEdBQVQsU0FBUyxDQUF1QjtRQUNoQyxvQkFBYyxHQUFkLGNBQWMsQ0FBb0I7UUFDbEMsbUJBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsa0JBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsb0JBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLGNBQVEsR0FBUixRQUFRLENBQVU7UUFWbkIsd0JBQWtCLEdBQUcsSUFBSSxZQUFZLEVBQVMsQ0FBQzs7SUFhekQsQ0FBQztJQUVELHdEQUFRLEdBQVI7UUFDSSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztRQUN6QixpQkFBTSxRQUFRLFdBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQsaUVBQWlCLEdBQWpCO1FBQ0ksSUFBSSxDQUFDLFdBQVcsR0FBRztZQUNmLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsZ0NBQWdDLENBQUMsRUFBRTtZQUNyRixFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLGdDQUFnQyxDQUFDLEVBQUU7WUFDckYsRUFBRSxLQUFLLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQywrQkFBK0IsQ0FBQyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUU7WUFDM0csRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxrQ0FBa0MsQ0FBQyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUU7WUFDMUcsRUFBRSxLQUFLLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyx1Q0FBdUMsQ0FBQyxFQUFFO1NBQ3JHLENBQUM7SUFDTixDQUFDO0lBR0QsMkRBQVcsR0FBWCxVQUFZLE1BQThCO1FBQ3RDLE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FBQyxNQUFhLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQseURBQVMsR0FBVCxVQUFVLGdCQUFxQjtRQUMzQixPQUFPLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNqQyxDQUFDOztnQkFoQ3FCLHFCQUFxQjtnQkFDaEIsa0JBQWtCO2dCQUNuQixhQUFhO2dCQUNkLFlBQVk7Z0JBQ1YsY0FBYztnQkFDcEIsUUFBUTs7SUFYcEI7UUFBUixLQUFLLEVBQUU7MEVBQWdDO0lBQzlCO1FBQVQsTUFBTSxFQUFFO3FGQUFnRDtJQUZoRCxxQ0FBcUM7UUFMakQsU0FBUyxDQUFDO1lBQ1AsUUFBUSxFQUFFLG9DQUFvQztZQUM5QyxnNEtBQStCOztTQUVsQyxDQUFDO09BQ1cscUNBQXFDLENBd0NqRDtJQUFELDRDQUFDO0NBQUEsQUF4Q0QsQ0FBMkQsa0JBQWtCLEdBd0M1RTtTQXhDWSxxQ0FBcUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRlUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb2x1bW4sIExvY2FsZVNlcnZpY2UgfSBmcm9tICdAc2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzJztcclxuaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UgfSBmcm9tICdwcmltZW5nJztcclxuaW1wb3J0IHsgS2lsb2dyYW1QaXBlIH0gZnJvbSAnLi4vLi4vLi4vcGlwZS9raWxvZ3JhbSc7XHJcbmltcG9ydCB7IExpYlRyYW5zbGF0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2xpYi10cmFuc2xhdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTW9kYWxJbnZvaWNlUGpCYXNlIH0gZnJvbSAnLi4vbW9kYWwtaW52b2ljZS1wai1iYXNlLmNsYXNzJztcclxuaW1wb3J0IHsgTW9kYWxJbnZvaWNlUGpPcHRpb25zIH0gZnJvbSAnLi4vbW9kYWwtaW52b2ljZS1wai1vcHRpb25zLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IEFncm9JbnZvaWNlU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2Fncm8taW52b2ljZSc7XHJcbmltcG9ydCB7IElJbnZvaWNlTG9va3VwUmVzcG9uc2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9hZ3JvLWludm9pY2UvaW50ZXJmYWNlcyc7XHJcbmltcG9ydCB7IEVNUFRZLCBvZiB9IGZyb20gJ3J4anMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ3MtbW9kYWwtaW52b2ljZS1wai1mb3Itb3JpZ2luYXRpb24nLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuLi90ZW1wbGF0ZS5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuLi9zdHlsZS5zY3NzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNb2RhbEludm9pY2VQakZvck9yaWdpbmF0aW9uQ29tcG9uZW50IGV4dGVuZHMgTW9kYWxJbnZvaWNlUGpCYXNlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gICAgQElucHV0KCkgb3B0aW9uczogTW9kYWxJbnZvaWNlUGpPcHRpb25zO1xyXG4gICAgQE91dHB1dCgpIHdoZW5TZWxlY3RJbnZvaWNlcyA9IG5ldyBFdmVudEVtaXR0ZXI8YW55W10+KCk7XHJcblxyXG4gICAgcHVibGljIGdyaWRDb2x1bW5zOiBQYXJ0aWFsPENvbHVtbiAmIHsgc29ydGFibGU/OiBib29sZWFuIH0+W107XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHVibGljIHRyYW5zbGF0ZTogTGliVHJhbnNsYXRpb25TZXJ2aWNlLFxyXG4gICAgICAgIHB1YmxpYyBpbnZvaWNlU2VydmljZTogQWdyb0ludm9pY2VTZXJ2aWNlLFxyXG4gICAgICAgIHB1YmxpYyBsb2NhbGVTZXJ2aWNlOiBMb2NhbGVTZXJ2aWNlLFxyXG4gICAgICAgIHB1YmxpYyBraWxvZ3JhbVBpcGU6IEtpbG9ncmFtUGlwZSxcclxuICAgICAgICBwdWJsaWMgbWVzc2FnZVNlcnZpY2U6IE1lc3NhZ2VTZXJ2aWNlLFxyXG4gICAgICAgIHB1YmxpYyBkYXRlUGlwZTogRGF0ZVBpcGVcclxuICAgICkge1xyXG4gICAgICAgIHN1cGVyKHRyYW5zbGF0ZSwgaW52b2ljZVNlcnZpY2UsIGxvY2FsZVNlcnZpY2UsIGtpbG9ncmFtUGlwZSwgbWVzc2FnZVNlcnZpY2UsIGRhdGVQaXBlKTtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmRlZmluZUdyaWRDb2x1bW5zKCk7XHJcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcclxuICAgIH1cclxuXHJcbiAgICBkZWZpbmVHcmlkQ29sdW1ucygpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmdyaWRDb2x1bW5zID0gW1xyXG4gICAgICAgICAgICB7IGZpZWxkOiAnbnVtYmVyJywgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5udW1iZXInKSB9LFxyXG4gICAgICAgICAgICB7IGZpZWxkOiAnc2VyaWVzJywgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5zZXJpZXMnKSB9LFxyXG4gICAgICAgICAgICB7IGZpZWxkOiAnaW52b2ljZUl0ZW1zJywgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5pdGVucycpLCBzb3J0YWJsZTogZmFsc2UgfSxcclxuICAgICAgICAgICAgeyBmaWVsZDogJ3F1YW50aXR5JywgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5xdWFudGl0eScpLCBzb3J0YWJsZTogZmFsc2UgfSxcclxuICAgICAgICAgICAgeyBmaWVsZDogJ2lzc3VhbmNlRGF0ZScsIGhlYWRlcjogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuaXNzdWFuY2VfZGF0ZScpIH0sXHJcbiAgICAgICAgXTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgYWRhcHRSZXN1bHQocmVzdWx0OiBJSW52b2ljZUxvb2t1cFJlc3BvbnNlKTogUHJvbWlzZTxhbnk+IHtcclxuICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHJlc3VsdCBhcyBhbnkpO1xyXG4gICAgfVxyXG5cclxuICAgIGJlZm9yZUFkZChzZWxlY3RlZEludm9pY2VzOiBhbnkpOiBQcm9taXNlPGFueT4ge1xyXG4gICAgICAgIHJldHVybiBvZihFTVBUWSkudG9Qcm9taXNlKCk7XHJcbiAgICB9XHJcbn1cclxuIl19
@@ -30,11 +30,11 @@ var ModalInvoicePjForTransferComponent = /** @class */ (function (_super) {
30
30
  ModalInvoicePjForTransferComponent = __decorate([
31
31
  Component({
32
32
  selector: 's-modal-invoice-pj-for-transfer',
33
- template: "<p-dialog\r\n header=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [(visible)]=\"visible\"\r\n [modal]=\"true\"\r\n class=\"add-invoice-modal\"\r\n [closeOnEscape]=\"false\"\r\n (onHide)=\"cancelPooling()\"\r\n [dismissableMask]=\"false\"\r\n>\r\n <ng-container *ngIf=\"!dontHaveAnyInvoice\">\r\n <div class=\"ui-g\">\r\n <label for=\"invoiceSearchInput\">{{ 'agro.angular_components.number' | libTranslate }}</label>\r\n <input\r\n type=\"text\"\r\n id=\"invoiceSearchInput\"\r\n pInputText\r\n [formControl]=\"searchValue\"\r\n [placeholder]=\"'' | libTranslate\"\r\n [required]=\"false\"\r\n />\r\n <div class=\"ui-g-12\">\r\n <p-table\r\n [(selection)]=\"selected\"\r\n [value]=\"gridData\"\r\n [columns]=\"gridColumns\"\r\n [scrollable]=\"true\"\r\n dataKey=\"externalInvoiceId\"\r\n [rows]=\"10\"\r\n [paginator]=\"true\"\r\n [lazyLoadOnInit]=\"false\"\r\n [totalRecords]=\"gridTotalRecords\"\r\n [lazy]=\"true\"\r\n (onLazyLoad)=\"updateGridData($event)\"\r\n [resizableColumns]=\"true\"\r\n *sLoadingState=\"gridLoading\"\r\n sortMode=\"multiple\"\r\n [selectionMode]=\"'multiple'\"\r\n >\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n <th class=\"checkbox\" scope=\"col\">\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n </th>\r\n <ng-container *ngFor=\"let col of columns\">\r\n <th\r\n *ngIf=\"col.sortable === undefined || col.sortable\"\r\n [pSortableColumn]=\"col.field\"\r\n scope=\"col\"\r\n >\r\n {{ col.header }}\r\n <p-sortIcon [field]=\"col.field\"></p-sortIcon>\r\n </th>\r\n <th *ngIf=\"col.sortable === false || col.sortable === null\" scope=\"col\">\r\n {{ col.header }}\r\n </th>\r\n </ng-container>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"body\" let-rowData let-columns=\"columns\" let-rowIndex=\"rowIndex\">\r\n <tr>\r\n <td class=\"checkbox\" tabindex=\"0\">\r\n <p-tableCheckbox [value]=\"rowData\"></p-tableCheckbox>\r\n </td>\r\n <td\r\n [pSelectableRow]=\"rowData\"\r\n [pSelectableRowIndex]=\"rowIndex\"\r\n *ngFor=\"let col of columns\"\r\n class=\"column\"\r\n tabindex=\"0\"\r\n >\r\n <ng-container>\r\n {{ gridFieldValuesMap[col.field] ? gridFieldValuesMap[col.field](rowData) :\r\n rowData[col.field] }}\r\n </ng-container>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"paginatorright\">\r\n <span>{{ gridTotalRecords }} registros encontrados</span>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"dontHaveAnyInvoice\">\r\n <s-empty-state\r\n iconClass=\"fa fa-exclamation-triangle\"\r\n title=\"{{ 'agro.angular_components.add_pj_invoice_modal_no_invoices_found' | libTranslate }}\"\r\n primaryActionLabel=\"{{ 'agro.angular_components.error_server_try_again' | libTranslate }}\"\r\n (primaryAction)=\"tryToSearchAgain()\"\r\n description=\"{{ 'agro.angular_components.no_register_found_for_external_invoices_summary' | libTranslate }}\"\r\n >\r\n </s-empty-state>\r\n </ng-container>\r\n\r\n <p-footer class=\"footer\" *ngIf=\"!dontHaveAnyInvoice\">\r\n <s-button\r\n [priority]=\"buttonPriority.Primary\"\r\n label=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [disabled]=\"!selected?.length\"\r\n (click)=\"add()\"\r\n (keydown.enter)=\"add()\"\r\n ></s-button>\r\n <s-button\r\n [priority]=\"buttonPriority.Link\"\r\n label=\"{{ 'agro.angular_components.cancel' | libTranslate }}\"\r\n (click)=\"cancel()\"\r\n (keydown.enter)=\"cancel()\"\r\n ></s-button>\r\n </p-footer>\r\n</p-dialog>\r\n",
33
+ template: "<p-dialog\r\n header=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [(visible)]=\"visible\"\r\n [modal]=\"true\"\r\n class=\"add-invoice-modal\"\r\n [closeOnEscape]=\"false\"\r\n (onHide)=\"cancelPooling()\"\r\n [dismissableMask]=\"false\"\r\n>\r\n <ng-container *ngIf=\"!dontHaveAnyInvoice\">\r\n <div class=\"ui-g\">\r\n <label for=\"invoiceSearchInput\">{{ 'agro.angular_components.number' | libTranslate }}</label>\r\n <input\r\n type=\"text\"\r\n id=\"invoiceSearchInput\"\r\n pInputText\r\n [formControl]=\"searchValue\"\r\n [placeholder]=\"'' | libTranslate\"\r\n [required]=\"false\"\r\n />\r\n <div class=\"ui-g-12\">\r\n <p-table\r\n [(selection)]=\"selected\"\r\n [value]=\"gridData\"\r\n [columns]=\"gridColumns\"\r\n [scrollable]=\"true\"\r\n dataKey=\"_uniqueId\"\r\n [rows]=\"10\"\r\n [paginator]=\"true\"\r\n [lazyLoadOnInit]=\"false\"\r\n [totalRecords]=\"gridTotalRecords\"\r\n [lazy]=\"true\"\r\n (onLazyLoad)=\"updateGridData($event)\"\r\n [resizableColumns]=\"true\"\r\n *sLoadingState=\"gridLoading\"\r\n sortMode=\"multiple\"\r\n [selectionMode]=\"'multiple'\"\r\n >\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n <th class=\"checkbox\" scope=\"col\">\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n </th>\r\n <ng-container *ngFor=\"let col of columns\">\r\n <th\r\n *ngIf=\"col.sortable === undefined || col.sortable\"\r\n [pSortableColumn]=\"col.field\"\r\n scope=\"col\"\r\n >\r\n {{ col.header }}\r\n <p-sortIcon [field]=\"col.field\"></p-sortIcon>\r\n </th>\r\n <th *ngIf=\"col.sortable === false || col.sortable === null\" scope=\"col\">\r\n {{ col.header }}\r\n </th>\r\n </ng-container>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"body\" let-rowData let-columns=\"columns\" let-rowIndex=\"rowIndex\">\r\n <tr>\r\n <td class=\"checkbox\" tabindex=\"0\">\r\n <p-tableCheckbox [value]=\"rowData\"></p-tableCheckbox>\r\n </td>\r\n <td\r\n [pSelectableRow]=\"rowData\"\r\n [pSelectableRowIndex]=\"rowIndex\"\r\n *ngFor=\"let col of columns\"\r\n class=\"column\"\r\n tabindex=\"0\"\r\n >\r\n <ng-container>\r\n {{ gridFieldValuesMap[col.field] ? gridFieldValuesMap[col.field](rowData) :\r\n rowData[col.field] }}\r\n </ng-container>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"paginatorright\">\r\n <span>{{ gridTotalRecords }} registros encontrados</span>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"dontHaveAnyInvoice\">\r\n <s-empty-state\r\n iconClass=\"fa fa-exclamation-triangle\"\r\n title=\"{{ 'agro.angular_components.add_pj_invoice_modal_no_invoices_found' | libTranslate }}\"\r\n primaryActionLabel=\"{{ 'agro.angular_components.error_server_try_again' | libTranslate }}\"\r\n (primaryAction)=\"tryToSearchAgain()\"\r\n description=\"{{ 'agro.angular_components.no_register_found_for_external_invoices_summary' | libTranslate }}\"\r\n >\r\n </s-empty-state>\r\n </ng-container>\r\n\r\n <p-footer class=\"footer\" *ngIf=\"!dontHaveAnyInvoice\">\r\n <s-button\r\n [priority]=\"buttonPriority.Primary\"\r\n label=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [disabled]=\"!selected?.length\"\r\n (click)=\"add()\"\r\n (keydown.enter)=\"add()\"\r\n ></s-button>\r\n <s-button\r\n [priority]=\"buttonPriority.Link\"\r\n label=\"{{ 'agro.angular_components.cancel' | libTranslate }}\"\r\n (click)=\"cancel()\"\r\n (keydown.enter)=\"cancel()\"\r\n ></s-button>\r\n </p-footer>\r\n</p-dialog>\r\n",
34
34
  styles: [".footer{width:100%;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center}.add-invoice-modal{width:480px;max-width:480px}.add-invoice-modal input[type=text]{width:100%}.add-invoice-modal .ui-dialog{width:480px!important}.add-invoice-modal .ui-dialog .ui-dialog-content{min-height:175px}td.checkbox,th.checkbox{width:50px}td.column,th.column{min-width:150px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}"]
35
35
  })
36
36
  ], ModalInvoicePjForTransferComponent);
37
37
  return ModalInvoicePjForTransferComponent;
38
38
  }(ModalInvoicePjForOriginationComponent));
39
39
  export { ModalInvoicePjForTransferComponent };
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtaW52b2ljZS1wai1mb3ItdHJhbnNmZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNlbmlvci1hZ3JvbmVnb2Npby9hbmd1bGFyLWNvbXBvbmVudHMvIiwic291cmNlcyI6WyJjb21wb25lbnRzL21vZGFsLWludm9pY2UtcGovZm9yLXRyYW5zZmVyL21vZGFsLWludm9pY2UtcGotZm9yLXRyYW5zZmVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxTQUFTLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNsRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUM5RCxPQUFPLEVBQUUscUNBQXFDLEVBQUUsTUFBTSwrREFBK0QsQ0FBQztBQU90SDtJQUF3RCxzREFBcUM7SUFFekYsNENBQ1csU0FBZ0MsRUFDaEMsY0FBa0MsRUFDbEMsYUFBNEIsRUFDNUIsWUFBMEIsRUFDMUIsY0FBOEIsRUFDOUIsUUFBa0I7UUFON0IsWUFRSSxrQkFBTSxTQUFTLEVBQUUsY0FBYyxFQUFFLGFBQWEsRUFBRSxZQUFZLEVBQUUsY0FBYyxFQUFFLFFBQVEsQ0FBQyxTQUMxRjtRQVJVLGVBQVMsR0FBVCxTQUFTLENBQXVCO1FBQ2hDLG9CQUFjLEdBQWQsY0FBYyxDQUFvQjtRQUNsQyxtQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1QixrQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixvQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsY0FBUSxHQUFSLFFBQVEsQ0FBVTs7SUFHN0IsQ0FBQzs7Z0JBUnFCLHFCQUFxQjtnQkFDaEIsa0JBQWtCO2dCQUNuQixhQUFhO2dCQUNkLFlBQVk7Z0JBQ1YsY0FBYztnQkFDcEIsUUFBUTs7SUFScEIsa0NBQWtDO1FBTDlDLFNBQVMsQ0FBQztZQUNQLFFBQVEsRUFBRSxpQ0FBaUM7WUFDM0MsdzRLQUErQjs7U0FFbEMsQ0FBQztPQUNXLGtDQUFrQyxDQWE5QztJQUFELHlDQUFDO0NBQUEsQUFiRCxDQUF3RCxxQ0FBcUMsR0FhNUY7U0FiWSxrQ0FBa0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRlUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTG9jYWxlU2VydmljZSB9IGZyb20gJ0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMnO1xyXG5pbXBvcnQgeyBNZXNzYWdlU2VydmljZSB9IGZyb20gJ3ByaW1lbmcnO1xyXG5pbXBvcnQgeyBLaWxvZ3JhbVBpcGUgfSBmcm9tICcuLi8uLi8uLi9waXBlL2tpbG9ncmFtJztcclxuaW1wb3J0IHsgTGliVHJhbnNsYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbGliLXRyYW5zbGF0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBZ3JvSW52b2ljZVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9hZ3JvLWludm9pY2UnO1xyXG5pbXBvcnQgeyBNb2RhbEludm9pY2VQakZvck9yaWdpbmF0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi4vZm9yLW9yaWdpbmF0aW9uL21vZGFsLWludm9pY2UtcGotZm9yLW9yaWdpbmF0aW9uLmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAncy1tb2RhbC1pbnZvaWNlLXBqLWZvci10cmFuc2ZlcicsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4uL3RlbXBsYXRlLmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4uL3N0eWxlLnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIE1vZGFsSW52b2ljZVBqRm9yVHJhbnNmZXJDb21wb25lbnQgZXh0ZW5kcyBNb2RhbEludm9pY2VQakZvck9yaWdpbmF0aW9uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHB1YmxpYyB0cmFuc2xhdGU6IExpYlRyYW5zbGF0aW9uU2VydmljZSxcclxuICAgICAgICBwdWJsaWMgaW52b2ljZVNlcnZpY2U6IEFncm9JbnZvaWNlU2VydmljZSxcclxuICAgICAgICBwdWJsaWMgbG9jYWxlU2VydmljZTogTG9jYWxlU2VydmljZSxcclxuICAgICAgICBwdWJsaWMga2lsb2dyYW1QaXBlOiBLaWxvZ3JhbVBpcGUsXHJcbiAgICAgICAgcHVibGljIG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSxcclxuICAgICAgICBwdWJsaWMgZGF0ZVBpcGU6IERhdGVQaXBlXHJcbiAgICApIHtcclxuICAgICAgICBzdXBlcih0cmFuc2xhdGUsIGludm9pY2VTZXJ2aWNlLCBsb2NhbGVTZXJ2aWNlLCBraWxvZ3JhbVBpcGUsIG1lc3NhZ2VTZXJ2aWNlLCBkYXRlUGlwZSk7XHJcbiAgICB9XHJcblxyXG59XHJcbiJdfQ==
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtaW52b2ljZS1wai1mb3ItdHJhbnNmZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNlbmlvci1hZ3JvbmVnb2Npby9hbmd1bGFyLWNvbXBvbmVudHMvIiwic291cmNlcyI6WyJjb21wb25lbnRzL21vZGFsLWludm9pY2UtcGovZm9yLXRyYW5zZmVyL21vZGFsLWludm9pY2UtcGotZm9yLXRyYW5zZmVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxTQUFTLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNsRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUM5RCxPQUFPLEVBQUUscUNBQXFDLEVBQUUsTUFBTSwrREFBK0QsQ0FBQztBQU90SDtJQUF3RCxzREFBcUM7SUFFekYsNENBQ1csU0FBZ0MsRUFDaEMsY0FBa0MsRUFDbEMsYUFBNEIsRUFDNUIsWUFBMEIsRUFDMUIsY0FBOEIsRUFDOUIsUUFBa0I7UUFON0IsWUFRSSxrQkFBTSxTQUFTLEVBQUUsY0FBYyxFQUFFLGFBQWEsRUFBRSxZQUFZLEVBQUUsY0FBYyxFQUFFLFFBQVEsQ0FBQyxTQUMxRjtRQVJVLGVBQVMsR0FBVCxTQUFTLENBQXVCO1FBQ2hDLG9CQUFjLEdBQWQsY0FBYyxDQUFvQjtRQUNsQyxtQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1QixrQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixvQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsY0FBUSxHQUFSLFFBQVEsQ0FBVTs7SUFHN0IsQ0FBQzs7Z0JBUnFCLHFCQUFxQjtnQkFDaEIsa0JBQWtCO2dCQUNuQixhQUFhO2dCQUNkLFlBQVk7Z0JBQ1YsY0FBYztnQkFDcEIsUUFBUTs7SUFScEIsa0NBQWtDO1FBTDlDLFNBQVMsQ0FBQztZQUNQLFFBQVEsRUFBRSxpQ0FBaUM7WUFDM0MsZzRLQUErQjs7U0FFbEMsQ0FBQztPQUNXLGtDQUFrQyxDQWE5QztJQUFELHlDQUFDO0NBQUEsQUFiRCxDQUF3RCxxQ0FBcUMsR0FhNUY7U0FiWSxrQ0FBa0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRlUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTG9jYWxlU2VydmljZSB9IGZyb20gJ0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMnO1xyXG5pbXBvcnQgeyBNZXNzYWdlU2VydmljZSB9IGZyb20gJ3ByaW1lbmcnO1xyXG5pbXBvcnQgeyBLaWxvZ3JhbVBpcGUgfSBmcm9tICcuLi8uLi8uLi9waXBlL2tpbG9ncmFtJztcclxuaW1wb3J0IHsgTGliVHJhbnNsYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbGliLXRyYW5zbGF0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBZ3JvSW52b2ljZVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9hZ3JvLWludm9pY2UnO1xyXG5pbXBvcnQgeyBNb2RhbEludm9pY2VQakZvck9yaWdpbmF0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi4vZm9yLW9yaWdpbmF0aW9uL21vZGFsLWludm9pY2UtcGotZm9yLW9yaWdpbmF0aW9uLmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAncy1tb2RhbC1pbnZvaWNlLXBqLWZvci10cmFuc2ZlcicsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4uL3RlbXBsYXRlLmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4uL3N0eWxlLnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIE1vZGFsSW52b2ljZVBqRm9yVHJhbnNmZXJDb21wb25lbnQgZXh0ZW5kcyBNb2RhbEludm9pY2VQakZvck9yaWdpbmF0aW9uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHB1YmxpYyB0cmFuc2xhdGU6IExpYlRyYW5zbGF0aW9uU2VydmljZSxcclxuICAgICAgICBwdWJsaWMgaW52b2ljZVNlcnZpY2U6IEFncm9JbnZvaWNlU2VydmljZSxcclxuICAgICAgICBwdWJsaWMgbG9jYWxlU2VydmljZTogTG9jYWxlU2VydmljZSxcclxuICAgICAgICBwdWJsaWMga2lsb2dyYW1QaXBlOiBLaWxvZ3JhbVBpcGUsXHJcbiAgICAgICAgcHVibGljIG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSxcclxuICAgICAgICBwdWJsaWMgZGF0ZVBpcGU6IERhdGVQaXBlXHJcbiAgICApIHtcclxuICAgICAgICBzdXBlcih0cmFuc2xhdGUsIGludm9pY2VTZXJ2aWNlLCBsb2NhbGVTZXJ2aWNlLCBraWxvZ3JhbVBpcGUsIG1lc3NhZ2VTZXJ2aWNlLCBkYXRlUGlwZSk7XHJcbiAgICB9XHJcblxyXG59XHJcbiJdfQ==
@@ -155,7 +155,7 @@ var ModalInvoicePjBase = /** @class */ (function () {
155
155
  }))
156
156
  .subscribe(function (result) {
157
157
  var _a;
158
- _this.gridData = ((_a = result === null || result === void 0 ? void 0 : result.result) === null || _a === void 0 ? void 0 : _a.invoices) || [];
158
+ _this.gridData = (((_a = result === null || result === void 0 ? void 0 : result.result) === null || _a === void 0 ? void 0 : _a.invoices) || []).map(function (invoice) { return (__assign(__assign({}, invoice), { _uniqueId: invoice.externalInvoiceId || invoice.invoiceId })); });
159
159
  if (_this.gridData.length === 0 && !searchValue) {
160
160
  _this.dontHaveAnyInvoice = true;
161
161
  }
@@ -221,4 +221,4 @@ var ModalInvoicePjBase = /** @class */ (function () {
221
221
  return ModalInvoicePjBase;
222
222
  }());
223
223
  export { ModalInvoicePjBase };
224
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtaW52b2ljZS1wai1iYXNlLmNsYXNzLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNlbmlvci1hZ3JvbmVnb2Npby9hbmd1bGFyLWNvbXBvbmVudHMvIiwic291cmNlcyI6WyJjb21wb25lbnRzL21vZGFsLWludm9pY2UtcGovbW9kYWwtaW52b2ljZS1wai1iYXNlLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFFLFNBQVMsRUFBZ0IsTUFBTSxlQUFlLENBQUM7QUFDeEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxFQUFFLGFBQWEsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzNGLE9BQU8sRUFBRSxhQUFhLEVBQUUsY0FBYyxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ3hELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUN2RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRW5ELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBRS9FLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBR2xGLElBQU0sYUFBYSxHQUFHLGdCQUFnQixDQUFDO0FBR3ZDO0lBb0NJLDRCQUN1QixTQUFnQyxFQUNoQyxjQUFrQyxFQUNsQyxhQUE0QixFQUM1QixZQUEwQixFQUMxQixjQUE4QixFQUM5QixRQUFr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QUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQzt3QkFDNUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDOzs7O3dCQUVsQixPQUFPLENBQUMsSUFBSSxDQUFDLG9DQUFvQyxFQUFFLE9BQUssQ0FBQyxDQUFDOzs7Ozs7S0FFakU7SUFFUyx1Q0FBVSxHQUFwQjtRQUNJLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO1FBQ25CLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxLQUFLLENBQUM7UUFDaEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDckIsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7UUFDbkIsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7UUFDekIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRUssbUNBQU0sR0FBWjs7O2dCQUNJLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQzs7OztLQUNyQjs7Z0JBcExpQyxxQkFBcUI7Z0JBQ2hCLGtCQUFrQjtnQkFDbkIsYUFBYTtnQkFDZCxZQUFZO2dCQUNWLGNBQWM7Z0JBQ3BCLFFBQVE7O0lBMUN2QixrQkFBa0I7UUFEdkMsU0FBUyxFQUFFO09BQ1Usa0JBQWtCLENBME52QztJQUFELHlCQUFDO0NBQUEsQUExTkQsSUEwTkM7U0ExTnFCLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhdGVQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgRGlyZWN0aXZlLCBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybUNvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IEJ1dHRvblByaW9yaXR5LCBDb2x1bW4sIExvY2FsZVNlcnZpY2UgfSBmcm9tICdAc2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzJztcclxuaW1wb3J0IHsgTGF6eUxvYWRFdmVudCwgTWVzc2FnZVNlcnZpY2UgfSBmcm9tICdwcmltZW5nJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIGZpbmFsaXplLCBzd2l0Y2hNYXAsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgQWdyb051bWJlclV0aWxzIH0gZnJvbSAnLi4vLi4vY29tbW9uL2Fncm8tbnVtYmVyLXV0aWxzLmNsYXNzJztcclxuaW1wb3J0IHsgQUdST19OVU1CRVJTIH0gZnJvbSAnLi4vLi4vZW51bXMvYWdyby1udW1iZXJzLmVudW0nO1xyXG5pbXBvcnQgeyBLaWxvZ3JhbVBpcGUgfSBmcm9tICcuLi8uLi9waXBlL2tpbG9ncmFtJztcclxuaW1wb3J0IHsgTGlzdFBhcmFtcyB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2Fncm8tZW50aXR5LXNlcnZpY2UnO1xyXG5pbXBvcnQgeyBMaWJUcmFuc2xhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9saWItdHJhbnNsYXRpb24uc2VydmljZSc7XHJcbmltcG9ydCB7IE1vZGFsSW52b2ljZVBqT3B0aW9ucyB9IGZyb20gJy4vbW9kYWwtaW52b2ljZS1wai1vcHRpb25zLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IEFncm9JbnZvaWNlU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvYWdyby1pbnZvaWNlL2Fncm8taW52b2ljZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSUludm9pY2VMb29rdXBGaWx0ZXIsIElJbnZvaWNlTG9va3VwUmVzcG9uc2UgfSBmcm9tICcuL3NlcnZpY2VzL2Fncm8taW52b2ljZS9pbnRlcmZhY2VzJztcclxuXHJcbmNvbnN0IElOVk9JQ0VfSVRFTVMgPSAnaW52b2ljZUl0ZW1zLionO1xyXG5cclxuQERpcmVjdGl2ZSgpXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBNb2RhbEludm9pY2VQakJhc2Uge1xyXG4gICAgcHVibGljIGFic3RyYWN0IG9wdGlvbnM6IE1vZGFsSW52b2ljZVBqT3B0aW9ucztcclxuICAgIHB1YmxpYyBhYnN0cmFjdCB3aGVuU2VsZWN0SW52b2ljZXM6IEV2ZW50RW1pdHRlcjxhbnlbXT47XHJcblxyXG4gICAgcHVibGljIGFic3RyYWN0IGdyaWRDb2x1bW5zOiBQYXJ0aWFsPENvbHVtbiAmIHsgc29ydGFibGU/OiBib29sZWFuIH0+W107XHJcblxyXG4gICAgcHVibGljIGdyaWREYXRhOiBhbnlbXTtcclxuICAgIHB1YmxpYyBidXR0b25Qcmlvcml0eSA9IEJ1dHRvblByaW9yaXR5O1xyXG5cclxuICAgIHB1YmxpYyBkb250SGF2ZUFueUludm9pY2UgPSBmYWxzZTtcclxuXHJcbiAgICBwdWJsaWMgZ3JpZExvYWRpbmcgPSB0cnVlO1xyXG4gICAgcHVibGljIGdyaWRUb3RhbFJlY29yZHMhOiBudW1iZXI7XHJcbiAgICBwdWJsaWMgc2VsZWN0ZWQ6IGFueVtdID0gW107XHJcbiAgICBwdWJsaWMgdW5zZWxlY3RlZElkcyA9IG5ldyBTZXQ8bnVtYmVyPigpO1xyXG5cclxuICAgIHB1YmxpYyB2aXNpYmxlID0gZmFsc2U7XHJcblxyXG4gICAgcHVibGljIHNlYXJjaFZhbHVlOiBGb3JtQ29udHJvbCA9IG5ldyBGb3JtQ29udHJvbCgnJywgW10pO1xyXG5cclxuICAgIHByb3RlY3RlZCByZWFkb25seSBuZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3QoKTtcclxuXHJcbiAgICBwcm90ZWN0ZWQgY3VycmVudFBhcmFtczogTGlzdFBhcmFtcyA9IHtcclxuICAgICAgICBwYWdlOiAwLFxyXG4gICAgICAgIHNpemU6IDEwLFxyXG4gICAgICAgIHNvcnQ6IFt7IGZpZWxkOiAnaXNzdWFuY2VEYXRlJywgb3JkZXI6IDEgfV0sXHJcbiAgICAgICAgZGlzcGxheUZpZWxkczogWycqJywgSU5WT0lDRV9JVEVNUywgJ2lzc3VhbmNlRGF0ZSddLFxyXG4gICAgICAgIGZpbHRlclF1ZXJ5OiAnJyxcclxuICAgIH07XHJcblxyXG4gICAgcHVibGljIGdyaWRGaWVsZFZhbHVlc01hcDogeyBba2V5OiBzdHJpbmddOiAocm93OiBhbnkpID0+IGFueSB9ID0ge1xyXG4gICAgICAgIGlzc3VhbmNlRGF0ZTogKHJvdykgPT4gdGhpcy5kYXRlUGlwZS50cmFuc2Zvcm0ocm93Lmlzc3VhbmNlRGF0ZSwgJ2RkL01NL3l5eXknLCAncHQtQlInKSxcclxuICAgICAgICBpbnZvaWNlSXRlbXM6IChyb3cpID0+IHJvdy50b3RhbEl0ZW1zIHx8IDAsXHJcbiAgICAgICAgcXVhbnRpdHk6IChyb3cpID0+IHRoaXMua2lsb2dyYW1QaXBlLnRyYW5zZm9ybShyb3cudG90YWxJdGVtc1F1YW50aXR5IHx8IDApLFxyXG4gICAgfTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgdHJhbnNsYXRlOiBMaWJUcmFuc2xhdGlvblNlcnZpY2UsXHJcbiAgICAgICAgcHJvdGVjdGVkIHJlYWRvbmx5IGludm9pY2VTZXJ2aWNlOiBBZ3JvSW52b2ljZVNlcnZpY2UsXHJcbiAgICAgICAgcHJvdGVjdGVkIHJlYWRvbmx5IGxvY2FsZVNlcnZpY2U6IExvY2FsZVNlcnZpY2UsXHJcbiAgICAgICAgcHJvdGVjdGVkIHJlYWRvbmx5IGtpbG9ncmFtUGlwZTogS2lsb2dyYW1QaXBlLFxyXG4gICAgICAgIHByb3RlY3RlZCByZWFkb25seSBtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2UsXHJcbiAgICAgICAgcHJvdGVjdGVkIHJlYWRvbmx5IGRhdGVQaXBlOiBEYXRlUGlwZSxcclxuICAgICkgeyB9XHJcblxyXG4gICAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICAgICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLm5leHQoKTtcclxuICAgICAgICB0aGlzLm5nVW5zdWJzY3JpYmUuY29tcGxldGUoKTtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLndoZW5TZWFyY2hWYWx1ZUNoYW5nZXMoKTtcclxuICAgIH1cclxuXHJcbiAgICBhYnN0cmFjdCBhZGFwdFJlc3VsdChyZXN1bHQ6IElJbnZvaWNlTG9va3VwUmVzcG9uc2UpOiBQcm9taXNlPGFueT47XHJcbiAgICBhYnN0cmFjdCBiZWZvcmVBZGQoc2VsZWN0ZWRJbnZvaWNlczogYW55KTogUHJvbWlzZTxhbnk+O1xyXG5cclxuICAgIHByb3RlY3RlZCB3aGVuU2VhcmNoVmFsdWVDaGFuZ2VzKCkge1xyXG4gICAgICAgIHRoaXMuc2VhcmNoVmFsdWUudmFsdWVDaGFuZ2VzXHJcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLm5nVW5zdWJzY3JpYmUpKVxyXG4gICAgICAgICAgICAucGlwZShkZWJvdW5jZVRpbWUoQUdST19OVU1CRVJTLlRIUkVFX0hVTkRSRUQpKVxyXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCh2YWx1ZTogc3RyaW5nKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZiAodmFsdWUpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnVwZGF0ZUdyaWREYXRhKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB7IGZpcnN0OiAwLCByb3dzOiAxMCwgbXVsdGlTb3J0TWV0YTogW3sgZmllbGQ6ICdpc3N1YW5jZURhdGUnLCBvcmRlcjogMSB9XSB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZVxyXG4gICAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlR3JpZERhdGEoeyBmaXJzdDogMCwgcm93czogMTAsIG11bHRpU29ydE1ldGE6IFt7IGZpZWxkOiAnaXNzdWFuY2VEYXRlJywgb3JkZXI6IDEgfV0gfSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHRyeVRvU2VhcmNoQWdhaW4oKSB7XHJcbiAgICAgICAgdGhpcy5ncmlkTG9hZGluZyA9IHRydWU7XHJcbiAgICAgICAgdGhpcy51cGRhdGVHcmlkRGF0YSh7IGZpcnN0OiAwLCByb3dzOiAxMCwgbXVsdGlTb3J0TWV0YTogW3sgZmllbGQ6ICdpc3N1YW5jZURhdGUnLCBvcmRlcjogMSB9XSB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgb3BlbigpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5jaGVja0lmT3B0aW9uc0lzVmFsaWQoKSkge1xyXG4gICAgICAgICAgICB0aGlzLnZpc2libGUgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLmdyaWREYXRhID0gW107XHJcbiAgICAgICAgICAgIHRoaXMuZ3JpZExvYWRpbmcgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLmdyaWRUb3RhbFJlY29yZHMgPSBBR1JPX05VTUJFUlMuWkVSTztcclxuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZCA9IFtdO1xyXG4gICAgICAgICAgICB0aGlzLnVuc2VsZWN0ZWRJZHMuY2xlYXIoKTtcclxuICAgICAgICAgICAgdGhpcy5jdXJyZW50UGFyYW1zID0ge1xyXG4gICAgICAgICAgICAgICAgcGFnZTogMCxcclxuICAgICAgICAgICAgICAgIHNpemU6IDEwLFxyXG4gICAgICAgICAgICAgICAgc29ydDogW10sXHJcbiAgICAgICAgICAgICAgICBmaWx0ZXJRdWVyeTogJycsXHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5RmllbGRzOiBbJyonLCBJTlZPSUNFX0lURU1TXSxcclxuICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgdGhpcy51cGRhdGVHcmlkRGF0YSh7IGZpcnN0OiAwLCByb3dzOiAxMCwgbXVsdGlTb3J0TWV0YTogW3sgZmllbGQ6ICdpc3N1YW5jZURhdGUnLCBvcmRlcjogMSB9XSB9KTtcclxuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZCA9IFtdO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUuaW5mbygnTW9kYWxJbnZvaWNlUGpDb21wb25lbnQ6IE9ww6fDtWVzIGludsOhbGlkYXMgcGFyYSBhYnJpciBvIG1vZGFsLicpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgY2hlY2tJZk9wdGlvbnNJc1ZhbGlkKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIGlmICghdGhpcy5vcHRpb25zKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmICghdGhpcy5vcHRpb25zLmNvbXBhbnlJZCB8fCAhdGhpcy5vcHRpb25zLmJyYW5jaElkKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgZ2V0UGFnaW5hdGlvbihldmVudDogTGF6eUxvYWRFdmVudCk6IHsgcGFnZTogbnVtYmVyOyBzaXplOiBudW1iZXIgfSB7XHJcbiAgICAgICAgY29uc3Qgc2l6ZSA9IGV2ZW50LnJvd3M7XHJcbiAgICAgICAgY29uc3QgcGFnZSA9IGV2ZW50LmZpcnN0IC8gc2l6ZTtcclxuICAgICAgICByZXR1cm4geyBwYWdlLCBzaXplIH07XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIHVwZGF0ZUN1cnJlbnRQYXJhbXMoZXZlbnQ6IExhenlMb2FkRXZlbnQpIHtcclxuICAgICAgICB0aGlzLmN1cnJlbnRQYXJhbXMgPSB7XHJcbiAgICAgICAgICAgIC4uLnRoaXMuZ2V0UGFnaW5hdGlvbihldmVudCksXHJcbiAgICAgICAgICAgIHNvcnQ6IGV2ZW50Lm11bHRpU29ydE1ldGE/Lmxlbmd0aCA/IGV2ZW50Lm11bHRpU29ydE1ldGEgOiBbeyBmaWVsZDogJ2lzc3VhbmNlRGF0ZScsIG9yZGVyOiAxIH1dLFxyXG4gICAgICAgICAgICBkaXNwbGF5RmllbGRzOiBbJyonLCBJTlZPSUNFX0lURU1TLCAnaXNzdWFuY2VEYXRlJ10sXHJcbiAgICAgICAgfTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgdXBkYXRlR3JpZERhdGEoZXZlbnQ6IExhenlMb2FkRXZlbnQsIHNlYXJjaFZhbHVlPzogc3RyaW5nKSB7XHJcblxyXG4gICAgICAgIHRoaXMuY2FuY2VsUG9vbGluZygpO1xyXG5cclxuICAgICAgICBjb25zdCB7IGNvbXBhbnlJZCwgYnJhbmNoSWQgfSA9IHRoaXMub3B0aW9ucztcclxuICAgICAgICBjb25zdCBwcm9kdWNlcklkID0gdGhpcy5vcHRpb25zLnByb2R1Y2Vyc0lkc1swXTtcclxuICAgICAgICBjb25zdCBydXJhbEVzdGF0ZUlkID0gdGhpcy5vcHRpb25zLnJ1cmFsRXN0YXRlSWRzWzBdO1xyXG5cclxuICAgICAgICB0aGlzLmdyaWRMb2FkaW5nID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLmRvbnRIYXZlQW55SW52b2ljZSA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMudXBkYXRlQ3VycmVudFBhcmFtcyhldmVudCk7XHJcbiAgICAgICAgY29uc3QgbnVtYmVyU2VhcmNoVmFsdWUgPSBzZWFyY2hWYWx1ZSA/IEFncm9OdW1iZXJVdGlscy5nZXROZWFySW50ZWdlcihzZWFyY2hWYWx1ZSkgOiBudWxsO1xyXG5cclxuICAgICAgICBjb25zdCBmaWx0ZXJCb2R5OiBJSW52b2ljZUxvb2t1cEZpbHRlciA9IHtcclxuICAgICAgICAgICAgZmlsdGVyOiB7XHJcbiAgICAgICAgICAgICAgICBjb21wYW55SWQsXHJcbiAgICAgICAgICAgICAgICBicmFuY2hJZCxcclxuICAgICAgICAgICAgICAgIHByb2R1Y2VySWRzOiBbcHJvZHVjZXJJZF0sXHJcbiAgICAgICAgICAgICAgICBydXJhbEVzdGF0ZUlkczogW3J1cmFsRXN0YXRlSWRdLFxyXG4gICAgICAgICAgICAgICAgbXVsdGlQcm9kdWN0czogZmFsc2UsXHJcbiAgICAgICAgICAgICAgICBwcm9kdWN0SWQ6IHRoaXMub3B0aW9ucy5wcm9kdWN0SWQsXHJcbiAgICAgICAgICAgICAgICBudW1iZXI6IG51bWJlclNlYXJjaFZhbHVlLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICBwYWdlUmVxdWVzdDoge1xyXG4gICAgICAgICAgICAgICAgb2Zmc2V0OiB0aGlzLmN1cnJlbnRQYXJhbXMucGFnZSxcclxuICAgICAgICAgICAgICAgIHNpemU6IHRoaXMuY3VycmVudFBhcmFtcy5zaXplLFxyXG4gICAgICAgICAgICAgICAgb3JkZXJCeTogdGhpcy5jdXJyZW50UGFyYW1zLnNvcnQubWFwKChzb3J0KSA9PiAoe1xyXG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBzb3J0LmZpZWxkLFxyXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiBzb3J0Lm9yZGVyID09PSAxID8gJ2FzYycgOiAnZGVzYycsXHJcbiAgICAgICAgICAgICAgICB9KSksXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgfTtcclxuXHJcbiAgICAgICAgaWYgKHNlYXJjaFZhbHVlKSB7XHJcbiAgICAgICAgICAgIHNlYXJjaFZhbHVlID0gbnVtYmVyU2VhcmNoVmFsdWUudG9TdHJpbmcoKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMuaW52b2ljZVNlcnZpY2VcclxuICAgICAgICAgICAgLmludm9pY2VMb29rdXBGaWx0ZXIoZmlsdGVyQm9keSlcclxuICAgICAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSxcclxuICAgICAgICAgICAgICAgIHN3aXRjaE1hcChhc3luYyAocmVzdWx0KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgYXdhaXQgdGhpcy5hZGFwdFJlc3VsdChyZXN1bHQpO1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiByZXN1bHQ7XHJcbiAgICAgICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgICAgIGZpbmFsaXplKCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmdyaWRMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICApXHJcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoXHJcbiAgICAgICAgICAgICAgICAocmVzdWx0KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5ncmlkRGF0YSA9IHJlc3VsdD8ucmVzdWx0Py5pbnZvaWNlcyB8fCBbXTtcclxuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5ncmlkRGF0YS5sZW5ndGggPT09IDAgJiYgIXNlYXJjaFZhbHVlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZG9udEhhdmVBbnlJbnZvaWNlID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5ncmlkVG90YWxSZWNvcmRzID0gcmVzdWx0LnJlc3VsdC50b3RhbEVsZW1lbnRzO1xyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIChlcnJvcikgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUuaW5mbygnRXJybyBhbyBidXNjYXIgbm90YXMgZmlzY2FpczogJywgZXJyb3IpO1xyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmdyaWRMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgY2FuY2VsUG9vbGluZygpIHtcclxuICAgICAgICB0aGlzLmludm9pY2VTZXJ2aWNlLmNhbmNlbEFjdGl2ZVBvb2xpbmcoKTtcclxuICAgIH1cclxuXHJcbiAgICBhc3luYyBhZGQoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgYXdhaXQgdGhpcy5iZWZvcmVBZGQodGhpcy5zZWxlY3RlZCk7XHJcbiAgICAgICAgICAgIHRoaXMud2hlblNlbGVjdEludm9pY2VzLmVtaXQodGhpcy5zZWxlY3RlZCk7XHJcbiAgICAgICAgICAgIHRoaXMucmVzZXRTcGVjcygpO1xyXG4gICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUuaW5mbygnRXJybyBhbyBzZWxlY2lvbmFyIG5vdGFzIGZpc2NhaXM6ICcsIGVycm9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJvdGVjdGVkIHJlc2V0U3BlY3MoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZCA9IFtdO1xyXG4gICAgICAgIHRoaXMuZG9udEhhdmVBbnlJbnZvaWNlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy52aXNpYmxlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5ncmlkRGF0YSA9IFtdO1xyXG4gICAgICAgIHRoaXMuZ3JpZExvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmdyaWRUb3RhbFJlY29yZHMgPSAwO1xyXG4gICAgfVxyXG5cclxuICAgIGFzeW5jIGNhbmNlbCgpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgICAgICB0aGlzLnJlc2V0U3BlY3MoKTtcclxuICAgIH1cclxufVxyXG4iXX0=
224
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtaW52b2ljZS1wai1iYXNlLmNsYXNzLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNlbmlvci1hZ3JvbmVnb2Npby9hbmd1bGFyLWNvbXBvbmVudHMvIiwic291cmNlcyI6WyJjb21wb25lbnRzL21vZGFsLWludm9pY2UtcGovbW9kYWwtaW52b2ljZS1wai1iYXNlLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFFLFNBQVMsRUFBZ0IsTUFBTSxlQUFlLENBQUM7QUFDeEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxFQUFFLGFBQWEsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzNGLE9BQU8sRUFBRSxhQUFhLEVBQUUsY0FBYyxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ3hELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUN2RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRW5ELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBRS9FLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBR2xGLElBQU0sYUFBYSxHQUFHLGdCQUFnQixDQUFDO0FBR3ZDO0lBb0NJLDRCQUN1QixTQUFnQyxFQUNoQyxjQUFrQyxFQUNsQyxhQUE0QixFQUM1QixZQUEwQixFQUMxQixjQUE4QixFQUM5QixRQUFr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QyxDQUFDO0lBRUssZ0NBQUcsR0FBVDs7Ozs7Ozt3QkFFUSxxQkFBTSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBQTs7d0JBQW5DLFNBQW1DLENBQUM7d0JBQ3BDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO3dCQUM1QyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7Ozs7d0JBRWxCLE9BQU8sQ0FBQyxJQUFJLENBQUMsb0NBQW9DLEVBQUUsT0FBSyxDQUFDLENBQUM7Ozs7OztLQUVqRTtJQUVTLHVDQUFVLEdBQXBCO1FBQ0ksSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7UUFDbkIsSUFBSSxDQUFDLGtCQUFrQixHQUFHLEtBQUssQ0FBQztRQUNoQyxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztRQUNyQixJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztRQUNuQixJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztRQUN6QixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFSyxtQ0FBTSxHQUFaOzs7Z0JBQ0ksSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDOzs7O0tBQ3JCOztnQkF2TGlDLHFCQUFxQjtnQkFDaEIsa0JBQWtCO2dCQUNuQixhQUFhO2dCQUNkLFlBQVk7Z0JBQ1YsY0FBYztnQkFDcEIsUUFBUTs7SUExQ3ZCLGtCQUFrQjtRQUR2QyxTQUFTLEVBQUU7T0FDVSxrQkFBa0IsQ0E2TnZDO0lBQUQseUJBQUM7Q0FBQSxBQTdORCxJQTZOQztTQTdOcUIsa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGF0ZVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBEaXJlY3RpdmUsIEV2ZW50RW1pdHRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgQnV0dG9uUHJpb3JpdHksIENvbHVtbiwgTG9jYWxlU2VydmljZSB9IGZyb20gJ0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMnO1xyXG5pbXBvcnQgeyBMYXp5TG9hZEV2ZW50LCBNZXNzYWdlU2VydmljZSB9IGZyb20gJ3ByaW1lbmcnO1xyXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZmluYWxpemUsIHN3aXRjaE1hcCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBBZ3JvTnVtYmVyVXRpbHMgfSBmcm9tICcuLi8uLi9jb21tb24vYWdyby1udW1iZXItdXRpbHMuY2xhc3MnO1xyXG5pbXBvcnQgeyBBR1JPX05VTUJFUlMgfSBmcm9tICcuLi8uLi9lbnVtcy9hZ3JvLW51bWJlcnMuZW51bSc7XHJcbmltcG9ydCB7IEtpbG9ncmFtUGlwZSB9IGZyb20gJy4uLy4uL3BpcGUva2lsb2dyYW0nO1xyXG5pbXBvcnQgeyBMaXN0UGFyYW1zIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvYWdyby1lbnRpdHktc2VydmljZSc7XHJcbmltcG9ydCB7IExpYlRyYW5zbGF0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2xpYi10cmFuc2xhdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTW9kYWxJbnZvaWNlUGpPcHRpb25zIH0gZnJvbSAnLi9tb2RhbC1pbnZvaWNlLXBqLW9wdGlvbnMuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgQWdyb0ludm9pY2VTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9hZ3JvLWludm9pY2UvYWdyby1pbnZvaWNlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBJSW52b2ljZUxvb2t1cEZpbHRlciwgSUludm9pY2VMb29rdXBSZXNwb25zZSB9IGZyb20gJy4vc2VydmljZXMvYWdyby1pbnZvaWNlL2ludGVyZmFjZXMnO1xyXG5cclxuY29uc3QgSU5WT0lDRV9JVEVNUyA9ICdpbnZvaWNlSXRlbXMuKic7XHJcblxyXG5ARGlyZWN0aXZlKClcclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIE1vZGFsSW52b2ljZVBqQmFzZSB7XHJcbiAgICBwdWJsaWMgYWJzdHJhY3Qgb3B0aW9uczogTW9kYWxJbnZvaWNlUGpPcHRpb25zO1xyXG4gICAgcHVibGljIGFic3RyYWN0IHdoZW5TZWxlY3RJbnZvaWNlczogRXZlbnRFbWl0dGVyPGFueVtdPjtcclxuXHJcbiAgICBwdWJsaWMgYWJzdHJhY3QgZ3JpZENvbHVtbnM6IFBhcnRpYWw8Q29sdW1uICYgeyBzb3J0YWJsZT86IGJvb2xlYW4gfT5bXTtcclxuXHJcbiAgICBwdWJsaWMgZ3JpZERhdGE6IGFueVtdO1xyXG4gICAgcHVibGljIGJ1dHRvblByaW9yaXR5ID0gQnV0dG9uUHJpb3JpdHk7XHJcblxyXG4gICAgcHVibGljIGRvbnRIYXZlQW55SW52b2ljZSA9IGZhbHNlO1xyXG5cclxuICAgIHB1YmxpYyBncmlkTG9hZGluZyA9IHRydWU7XHJcbiAgICBwdWJsaWMgZ3JpZFRvdGFsUmVjb3JkcyE6IG51bWJlcjtcclxuICAgIHB1YmxpYyBzZWxlY3RlZDogYW55W10gPSBbXTtcclxuICAgIHB1YmxpYyB1bnNlbGVjdGVkSWRzID0gbmV3IFNldDxudW1iZXI+KCk7XHJcblxyXG4gICAgcHVibGljIHZpc2libGUgPSBmYWxzZTtcclxuXHJcbiAgICBwdWJsaWMgc2VhcmNoVmFsdWU6IEZvcm1Db250cm9sID0gbmV3IEZvcm1Db250cm9sKCcnLCBbXSk7XHJcblxyXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IG5nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdCgpO1xyXG5cclxuICAgIHByb3RlY3RlZCBjdXJyZW50UGFyYW1zOiBMaXN0UGFyYW1zID0ge1xyXG4gICAgICAgIHBhZ2U6IDAsXHJcbiAgICAgICAgc2l6ZTogMTAsXHJcbiAgICAgICAgc29ydDogW3sgZmllbGQ6ICdpc3N1YW5jZURhdGUnLCBvcmRlcjogMSB9XSxcclxuICAgICAgICBkaXNwbGF5RmllbGRzOiBbJyonLCBJTlZPSUNFX0lURU1TLCAnaXNzdWFuY2VEYXRlJ10sXHJcbiAgICAgICAgZmlsdGVyUXVlcnk6ICcnLFxyXG4gICAgfTtcclxuXHJcbiAgICBwdWJsaWMgZ3JpZEZpZWxkVmFsdWVzTWFwOiB7IFtrZXk6IHN0cmluZ106IChyb3c6IGFueSkgPT4gYW55IH0gPSB7XHJcbiAgICAgICAgaXNzdWFuY2VEYXRlOiAocm93KSA9PiB0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybShyb3cuaXNzdWFuY2VEYXRlLCAnZGQvTU0veXl5eScsICdwdC1CUicpLFxyXG4gICAgICAgIGludm9pY2VJdGVtczogKHJvdykgPT4gcm93LnRvdGFsSXRlbXMgfHwgMCxcclxuICAgICAgICBxdWFudGl0eTogKHJvdykgPT4gdGhpcy5raWxvZ3JhbVBpcGUudHJhbnNmb3JtKHJvdy50b3RhbEl0ZW1zUXVhbnRpdHkgfHwgMCksXHJcbiAgICB9O1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHByb3RlY3RlZCByZWFkb25seSB0cmFuc2xhdGU6IExpYlRyYW5zbGF0aW9uU2VydmljZSxcclxuICAgICAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaW52b2ljZVNlcnZpY2U6IEFncm9JbnZvaWNlU2VydmljZSxcclxuICAgICAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgbG9jYWxlU2VydmljZTogTG9jYWxlU2VydmljZSxcclxuICAgICAgICBwcm90ZWN0ZWQgcmVhZG9ubHkga2lsb2dyYW1QaXBlOiBLaWxvZ3JhbVBpcGUsXHJcbiAgICAgICAgcHJvdGVjdGVkIHJlYWRvbmx5IG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSxcclxuICAgICAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgZGF0ZVBpcGU6IERhdGVQaXBlLFxyXG4gICAgKSB7IH1cclxuXHJcbiAgICBuZ09uRGVzdHJveSgpIHtcclxuICAgICAgICB0aGlzLm5nVW5zdWJzY3JpYmUubmV4dCgpO1xyXG4gICAgICAgIHRoaXMubmdVbnN1YnNjcmliZS5jb21wbGV0ZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMud2hlblNlYXJjaFZhbHVlQ2hhbmdlcygpO1xyXG4gICAgfVxyXG5cclxuICAgIGFic3RyYWN0IGFkYXB0UmVzdWx0KHJlc3VsdDogSUludm9pY2VMb29rdXBSZXNwb25zZSk6IFByb21pc2U8YW55PjtcclxuICAgIGFic3RyYWN0IGJlZm9yZUFkZChzZWxlY3RlZEludm9pY2VzOiBhbnkpOiBQcm9taXNlPGFueT47XHJcblxyXG4gICAgcHJvdGVjdGVkIHdoZW5TZWFyY2hWYWx1ZUNoYW5nZXMoKSB7XHJcbiAgICAgICAgdGhpcy5zZWFyY2hWYWx1ZS52YWx1ZUNoYW5nZXNcclxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpXHJcbiAgICAgICAgICAgIC5waXBlKGRlYm91bmNlVGltZShBR1JPX05VTUJFUlMuVEhSRUVfSFVORFJFRCkpXHJcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKHZhbHVlOiBzdHJpbmcpID0+IHtcclxuICAgICAgICAgICAgICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlR3JpZERhdGEoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHsgZmlyc3Q6IDAsIHJvd3M6IDEwLCBtdWx0aVNvcnRNZXRhOiBbeyBmaWVsZDogJ2lzc3VhbmNlRGF0ZScsIG9yZGVyOiAxIH1dIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlXHJcbiAgICAgICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy51cGRhdGVHcmlkRGF0YSh7IGZpcnN0OiAwLCByb3dzOiAxMCwgbXVsdGlTb3J0TWV0YTogW3sgZmllbGQ6ICdpc3N1YW5jZURhdGUnLCBvcmRlcjogMSB9XSB9KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgdHJ5VG9TZWFyY2hBZ2FpbigpIHtcclxuICAgICAgICB0aGlzLmdyaWRMb2FkaW5nID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLnVwZGF0ZUdyaWREYXRhKHsgZmlyc3Q6IDAsIHJvd3M6IDEwLCBtdWx0aVNvcnRNZXRhOiBbeyBmaWVsZDogJ2lzc3VhbmNlRGF0ZScsIG9yZGVyOiAxIH1dIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBvcGVuKCk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0aGlzLmNoZWNrSWZPcHRpb25zSXNWYWxpZCgpKSB7XHJcbiAgICAgICAgICAgIHRoaXMudmlzaWJsZSA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMuZ3JpZERhdGEgPSBbXTtcclxuICAgICAgICAgICAgdGhpcy5ncmlkTG9hZGluZyA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMuZ3JpZFRvdGFsUmVjb3JkcyA9IEFHUk9fTlVNQkVSUy5aRVJPO1xyXG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkID0gW107XHJcbiAgICAgICAgICAgIHRoaXMudW5zZWxlY3RlZElkcy5jbGVhcigpO1xyXG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRQYXJhbXMgPSB7XHJcbiAgICAgICAgICAgICAgICBwYWdlOiAwLFxyXG4gICAgICAgICAgICAgICAgc2l6ZTogMTAsXHJcbiAgICAgICAgICAgICAgICBzb3J0OiBbXSxcclxuICAgICAgICAgICAgICAgIGZpbHRlclF1ZXJ5OiAnJyxcclxuICAgICAgICAgICAgICAgIGRpc3BsYXlGaWVsZHM6IFsnKicsIElOVk9JQ0VfSVRFTVNdLFxyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICB0aGlzLnVwZGF0ZUdyaWREYXRhKHsgZmlyc3Q6IDAsIHJvd3M6IDEwLCBtdWx0aVNvcnRNZXRhOiBbeyBmaWVsZDogJ2lzc3VhbmNlRGF0ZScsIG9yZGVyOiAxIH1dIH0pO1xyXG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkID0gW107XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgY29uc29sZS5pbmZvKCdNb2RhbEludm9pY2VQakNvbXBvbmVudDogT3DDp8O1ZXMgaW52w6FsaWRhcyBwYXJhIGFicmlyIG8gbW9kYWwuJyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByb3RlY3RlZCBjaGVja0lmT3B0aW9uc0lzVmFsaWQoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgaWYgKCF0aGlzLm9wdGlvbnMpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKCF0aGlzLm9wdGlvbnMuY29tcGFueUlkIHx8ICF0aGlzLm9wdGlvbnMuYnJhbmNoSWQpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBnZXRQYWdpbmF0aW9uKGV2ZW50OiBMYXp5TG9hZEV2ZW50KTogeyBwYWdlOiBudW1iZXI7IHNpemU6IG51bWJlciB9IHtcclxuICAgICAgICBjb25zdCBzaXplID0gZXZlbnQucm93cztcclxuICAgICAgICBjb25zdCBwYWdlID0gZXZlbnQuZmlyc3QgLyBzaXplO1xyXG4gICAgICAgIHJldHVybiB7IHBhZ2UsIHNpemUgfTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgdXBkYXRlQ3VycmVudFBhcmFtcyhldmVudDogTGF6eUxvYWRFdmVudCkge1xyXG4gICAgICAgIHRoaXMuY3VycmVudFBhcmFtcyA9IHtcclxuICAgICAgICAgICAgLi4udGhpcy5nZXRQYWdpbmF0aW9uKGV2ZW50KSxcclxuICAgICAgICAgICAgc29ydDogZXZlbnQubXVsdGlTb3J0TWV0YT8ubGVuZ3RoID8gZXZlbnQubXVsdGlTb3J0TWV0YSA6IFt7IGZpZWxkOiAnaXNzdWFuY2VEYXRlJywgb3JkZXI6IDEgfV0sXHJcbiAgICAgICAgICAgIGRpc3BsYXlGaWVsZHM6IFsnKicsIElOVk9JQ0VfSVRFTVMsICdpc3N1YW5jZURhdGUnXSxcclxuICAgICAgICB9O1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyB1cGRhdGVHcmlkRGF0YShldmVudDogTGF6eUxvYWRFdmVudCwgc2VhcmNoVmFsdWU/OiBzdHJpbmcpIHtcclxuXHJcbiAgICAgICAgdGhpcy5jYW5jZWxQb29saW5nKCk7XHJcblxyXG4gICAgICAgIGNvbnN0IHsgY29tcGFueUlkLCBicmFuY2hJZCB9ID0gdGhpcy5vcHRpb25zO1xyXG4gICAgICAgIGNvbnN0IHByb2R1Y2VySWQgPSB0aGlzLm9wdGlvbnMucHJvZHVjZXJzSWRzWzBdO1xyXG4gICAgICAgIGNvbnN0IHJ1cmFsRXN0YXRlSWQgPSB0aGlzLm9wdGlvbnMucnVyYWxFc3RhdGVJZHNbMF07XHJcblxyXG4gICAgICAgIHRoaXMuZ3JpZExvYWRpbmcgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMuZG9udEhhdmVBbnlJbnZvaWNlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy51cGRhdGVDdXJyZW50UGFyYW1zKGV2ZW50KTtcclxuICAgICAgICBjb25zdCBudW1iZXJTZWFyY2hWYWx1ZSA9IHNlYXJjaFZhbHVlID8gQWdyb051bWJlclV0aWxzLmdldE5lYXJJbnRlZ2VyKHNlYXJjaFZhbHVlKSA6IG51bGw7XHJcblxyXG4gICAgICAgIGNvbnN0IGZpbHRlckJvZHk6IElJbnZvaWNlTG9va3VwRmlsdGVyID0ge1xyXG4gICAgICAgICAgICBmaWx0ZXI6IHtcclxuICAgICAgICAgICAgICAgIGNvbXBhbnlJZCxcclxuICAgICAgICAgICAgICAgIGJyYW5jaElkLFxyXG4gICAgICAgICAgICAgICAgcHJvZHVjZXJJZHM6IFtwcm9kdWNlcklkXSxcclxuICAgICAgICAgICAgICAgIHJ1cmFsRXN0YXRlSWRzOiBbcnVyYWxFc3RhdGVJZF0sXHJcbiAgICAgICAgICAgICAgICBtdWx0aVByb2R1Y3RzOiBmYWxzZSxcclxuICAgICAgICAgICAgICAgIHByb2R1Y3RJZDogdGhpcy5vcHRpb25zLnByb2R1Y3RJZCxcclxuICAgICAgICAgICAgICAgIG51bWJlcjogbnVtYmVyU2VhcmNoVmFsdWUsXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHBhZ2VSZXF1ZXN0OiB7XHJcbiAgICAgICAgICAgICAgICBvZmZzZXQ6IHRoaXMuY3VycmVudFBhcmFtcy5wYWdlLFxyXG4gICAgICAgICAgICAgICAgc2l6ZTogdGhpcy5jdXJyZW50UGFyYW1zLnNpemUsXHJcbiAgICAgICAgICAgICAgICBvcmRlckJ5OiB0aGlzLmN1cnJlbnRQYXJhbXMuc29ydC5tYXAoKHNvcnQpID0+ICh7XHJcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IHNvcnQuZmllbGQsXHJcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IHNvcnQub3JkZXIgPT09IDEgPyAnYXNjJyA6ICdkZXNjJyxcclxuICAgICAgICAgICAgICAgIH0pKSxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICB9O1xyXG5cclxuICAgICAgICBpZiAoc2VhcmNoVmFsdWUpIHtcclxuICAgICAgICAgICAgc2VhcmNoVmFsdWUgPSBudW1iZXJTZWFyY2hWYWx1ZS50b1N0cmluZygpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5pbnZvaWNlU2VydmljZVxyXG4gICAgICAgICAgICAuaW52b2ljZUxvb2t1cEZpbHRlcihmaWx0ZXJCb2R5KVxyXG4gICAgICAgICAgICAucGlwZShcclxuICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLm5nVW5zdWJzY3JpYmUpLFxyXG4gICAgICAgICAgICAgICAgc3dpdGNoTWFwKGFzeW5jIChyZXN1bHQpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBhd2FpdCB0aGlzLmFkYXB0UmVzdWx0KHJlc3VsdCk7XHJcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDtcclxuICAgICAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgICAgICAgZmluYWxpemUoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZ3JpZExvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgIClcclxuICAgICAgICAgICAgLnN1YnNjcmliZShcclxuICAgICAgICAgICAgICAgIChyZXN1bHQpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmdyaWREYXRhID0gKHJlc3VsdD8ucmVzdWx0Py5pbnZvaWNlcyB8fCBbXSkubWFwKChpbnZvaWNlKSA9PiAoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAuLi5pbnZvaWNlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBfdW5pcXVlSWQ6IGludm9pY2UuZXh0ZXJuYWxJbnZvaWNlSWQgfHwgaW52b2ljZS5pbnZvaWNlSWQgXHJcbiAgICAgICAgICAgICAgICAgICAgfSkpO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLmdyaWREYXRhLmxlbmd0aCA9PT0gMCAmJiAhc2VhcmNoVmFsdWUpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kb250SGF2ZUFueUludm9pY2UgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmdyaWRUb3RhbFJlY29yZHMgPSByZXN1bHQucmVzdWx0LnRvdGFsRWxlbWVudHM7XHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgKGVycm9yKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS5pbmZvKCdFcnJvIGFvIGJ1c2NhciBub3RhcyBmaXNjYWlzOiAnLCBlcnJvcik7XHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZ3JpZExvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBjYW5jZWxQb29saW5nKCkge1xyXG4gICAgICAgIHRoaXMuaW52b2ljZVNlcnZpY2UuY2FuY2VsQWN0aXZlUG9vbGluZygpO1xyXG4gICAgfVxyXG5cclxuICAgIGFzeW5jIGFkZCgpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICBhd2FpdCB0aGlzLmJlZm9yZUFkZCh0aGlzLnNlbGVjdGVkKTtcclxuICAgICAgICAgICAgdGhpcy53aGVuU2VsZWN0SW52b2ljZXMuZW1pdCh0aGlzLnNlbGVjdGVkKTtcclxuICAgICAgICAgICAgdGhpcy5yZXNldFNwZWNzKCk7XHJcbiAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgICAgICAgICAgY29uc29sZS5pbmZvKCdFcnJvIGFvIHNlbGVjaW9uYXIgbm90YXMgZmlzY2FpczogJywgZXJyb3IpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgcmVzZXRTcGVjcygpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLnNlbGVjdGVkID0gW107XHJcbiAgICAgICAgdGhpcy5kb250SGF2ZUFueUludm9pY2UgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLnZpc2libGUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmdyaWREYXRhID0gW107XHJcbiAgICAgICAgdGhpcy5ncmlkTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuZ3JpZFRvdGFsUmVjb3JkcyA9IDA7XHJcbiAgICB9XHJcblxyXG4gICAgYXN5bmMgY2FuY2VsKCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgICAgIHRoaXMucmVzZXRTcGVjcygpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==