@colijnit/transaction 256.1.12 → 256.1.14

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 (41) hide show
  1. package/bundles/colijnit-transaction.umd.js +215 -64
  2. package/bundles/colijnit-transaction.umd.js.map +1 -1
  3. package/colijnit-transaction.metadata.json +1 -1
  4. package/esm2015/lib/component/add-product/add-product.component.js +52 -33
  5. package/esm2015/lib/component/delivery-planning-main/component/delivery-planning-overview/delivery-planning-overview.component.js +30 -27
  6. package/esm2015/lib/component/dialog/catalog/dialog-catalog/dialog-catalog.component.js +73 -64
  7. package/esm2015/lib/component/purchase-confirmation-lines/purchase-confirmation-lines.component.js +37 -33
  8. package/esm2015/lib/component/purchase-confirmation-lines/purchase-confirmation-lines.module.js +4 -3
  9. package/esm2015/lib/component/transaction-line-fields/transaction-line-warehouse-location.component.js +16 -5
  10. package/esm2015/lib/component/transaction-line-fields/transaction-line-warehouse.component.js +6 -6
  11. package/esm2015/lib/component/transaction-search/transaction-search-result/transaction-search-result.component.js +19 -3
  12. package/esm2015/lib/component/transaction-search/transaction-search-tile/transaction-purchase-reservation-order-tile/transaction-purchase-reservation-order-tile.component.js +2 -2
  13. package/esm2015/lib/component/transaction-search/transaction-search-tile/transaction-search-pos-order-tile/transaction-search-pos-order-tile.component.js +64 -63
  14. package/esm2015/lib/component/transaction-search/transaction-search-tile/transaction-search-purchase-order-tile/transaction-search-purchase-order-tile.component.js +24 -22
  15. package/esm2015/lib/component/transaction-search/transaction-search-tile/transaction-search-sales-order-tile/transaction-search-sales-order-tile.component.js +27 -29
  16. package/esm2015/lib/component/transaction-search/transaction-search-tile/transaction-search-sales-quotation-tile/transaction-search-sales-quotation-tile.component.js +23 -19
  17. package/esm2015/lib/component/transaction-search/transaction-shipping-method-dialog/transaction-shipping-method-dialog.component.js +33 -4
  18. package/esm2015/lib/enum/icon.enum.js +3 -1
  19. package/esm2015/lib/model/icon-svg.js +3 -1
  20. package/esm2015/lib/service/pending-reason.service.js +2 -1
  21. package/esm2015/lib/service/transaction-base.service.js +4 -1
  22. package/esm2015/lib/service/transaction-event.service.js +2 -1
  23. package/esm2015/lib/service/transaction.service.js +11 -1
  24. package/esm2015/lib/transaction-version.js +3 -3
  25. package/fesm2015/colijnit-transaction.js +416 -302
  26. package/fesm2015/colijnit-transaction.js.map +1 -1
  27. package/lib/component/add-product/add-product.component.d.ts +9 -3
  28. package/lib/component/dialog/catalog/dialog-catalog/dialog-catalog.component.d.ts +1 -0
  29. package/lib/component/purchase-confirmation-lines/style/_layout.scss +70 -25
  30. package/lib/component/purchase-confirmation-lines/style/_material-definition.scss +21 -1
  31. package/lib/component/service-wizard-qa/question-answer-item/style/_material-definition.scss +1 -1
  32. package/lib/component/transaction-line-fields/transaction-line-warehouse-location.component.d.ts +4 -1
  33. package/lib/component/transaction-search/transaction-search-result/transaction-search-result.component.d.ts +3 -1
  34. package/lib/component/transaction-search/transaction-search-tile/transaction-search-tile/style/_layout.scss +90 -46
  35. package/lib/component/transaction-search/transaction-search-tile/transaction-search-tile/style/_material-definition.scss +8 -6
  36. package/lib/component/transaction-search/transaction-search-tile/transaction-search-tile/style/_theme.scss +6 -2
  37. package/lib/component/transaction-search/transaction-shipping-method-dialog/transaction-shipping-method-dialog.component.d.ts +4 -1
  38. package/lib/enum/icon.enum.d.ts +2 -0
  39. package/lib/service/transaction-event.service.d.ts +1 -0
  40. package/lib/service/transaction.service.d.ts +1 -0
  41. package/package.json +3 -3
@@ -29,6 +29,7 @@ export class DialogCatalogComponent {
29
29
  this.handleAddArticleInternally = true;
30
30
  this.showNavigation = true;
31
31
  this.returnArticleOnTileClick = false;
32
+ this.showRelatedProductsPopup = false;
32
33
  this.closeClick = new EventEmitter();
33
34
  this.articleClicked = new EventEmitter();
34
35
  /*@Output()
@@ -65,6 +66,10 @@ export class DialogCatalogComponent {
65
66
  this.handleStockButtonClick(article);
66
67
  }), this._productConnectorAdapterService.showLoader.subscribe((show) => {
67
68
  this._transactionEventService.showLoader.next(show);
69
+ }), this._transactionEventService.afterAddTransactionLine.subscribe((bool) => {
70
+ if (bool) {
71
+ this.showRelatedProductsPopup = true;
72
+ }
68
73
  }));
69
74
  this._changeDetector.markForCheck();
70
75
  this._changeDetector.detectChanges();
@@ -204,71 +209,74 @@ DialogCatalogComponent.decorators = [
204
209
  { type: Component, args: [{
205
210
  selector: "co-dialog-catalog",
206
211
  template: `
207
- <co-dialog (closeClick)="closeClick.emit($event)" [@.disabled]="destroyed">
208
- <co-icon *ngIf="showExternalCatalog" [iconData]="iconCacheService.getIcon(icons.ArrowPointLeft)"
209
- (click)="handleBackClick($event)"></co-icon>
210
- <ng-container *ngIf="settingsSet">
211
- <ng-container *ngIf="!showExternalCatalog">
212
- <div class="dialog-catalog-product-wrapper" [class.show-product]="showProduct">
213
- <co-catalog-search
214
- [title]="'CATALOG' | localize"
215
- [subTitle]="'SEARCH_BY_ARTICLENUMBER_NAME_OR_DESCRIPTION' | localize"
216
- [searchPlaceholder]="'SEARCH_BY_ARTICLENUMBER_OR_DESCRIPTION' | localize"
217
- [createFrozenArticle]="false"
218
- [showNavigation]="showNavigation"
219
- [settings]="catalogSettings"
220
- (onExternalSourceClick)="handleExternalSourceClick($event)"
221
- (onAddArticleButtonClick)="handleAddArticleClick($event)"
222
- (onLookAtArticleButtonClick)="handleArticleClick($event)"
223
- (onArticleClick)="handleArticleClick($event)">
224
- </co-catalog-search>
225
- <div class="catalog-article-wrapper">
226
- <co-icon class="back-button-product" [iconData]="iconCacheService.getIcon(icons.ArrowPointLeft)"
227
- (click)="showProduct = false"></co-icon>
228
- <app-ione-product *ngIf="showProduct"
229
- [sku]="sku"
230
- [settings]="catalogSettings"
231
- [handleAddArticleInternally]="false"
232
- [isReturn]="isReturn"
233
- (onAddToCart)="handleAddArticleFromArticleClick($event)"
234
- (onAlternativeClick)="handleOnAlternativeClick($event)"
235
- ></app-ione-product>
236
- </div>
237
- </div>
238
- </ng-container>
239
- <ng-container *ngIf="showExternalCatalog">
240
- <div class="dialog-catalog-product-wrapper" [class.show-product]="showProduct">
212
+ <co-dialog (closeClick)="closeClick.emit($event)" [@.disabled]="destroyed">
213
+ <co-icon *ngIf="showExternalCatalog" [iconData]="iconCacheService.getIcon(icons.ArrowPointLeft)"
214
+ (click)="handleBackClick($event)"></co-icon>
215
+ <ng-container *ngIf="settingsSet">
216
+ <ng-container *ngIf="!showExternalCatalog">
217
+ <div class="dialog-catalog-product-wrapper" [class.show-product]="showProduct">
218
+ <co-catalog-search
219
+ [title]="'CATALOG' | localize"
220
+ [subTitle]="'SEARCH_BY_ARTICLENUMBER_NAME_OR_DESCRIPTION' | localize"
221
+ [searchPlaceholder]="'SEARCH_BY_ARTICLENUMBER_OR_DESCRIPTION' | localize"
222
+ [createFrozenArticle]="false"
223
+ [showNavigation]="showNavigation"
224
+ [settings]="catalogSettings"
225
+ (onExternalSourceClick)="handleExternalSourceClick($event)"
226
+ (onAddArticleButtonClick)="handleAddArticleClick($event)"
227
+ (onLookAtArticleButtonClick)="handleArticleClick($event)"
228
+ (onArticleClick)="handleArticleClick($event)">
229
+ </co-catalog-search>
230
+ <div class="catalog-article-wrapper">
231
+ <co-icon class="back-button-product"
232
+ [iconData]="iconCacheService.getIcon(icons.ArrowPointLeft)"
233
+ (click)="showProduct = false"></co-icon>
234
+ <app-ione-product *ngIf="showProduct"
235
+ [sku]="sku"
236
+ [settings]="catalogSettings"
237
+ [handleAddArticleInternally]="false"
238
+ [isReturn]="isReturn"
239
+ (onAddToCart)="handleAddArticleFromArticleClick($event)"
240
+ (onAlternativeClick)="handleOnAlternativeClick($event)"
241
+ [showRelatedProductsPopup]="showRelatedProductsPopup"
242
+ ></app-ione-product>
243
+ </div>
244
+ </div>
245
+ </ng-container>
246
+ <ng-container *ngIf="showExternalCatalog">
247
+ <div class="dialog-catalog-product-wrapper" [class.show-product]="showProduct">
241
248
 
242
- <co-catalog-external-source
243
- [externalCatalogStartupInfo]="catalogInfo"
244
- [title]="'CATALOG' | localize | append: ' ' | append: externalCatalogName"
245
- [subTitle]="'SEARCH_BY_ARTICLENUMBER_NAME_OR_DESCRIPTION' | localize"
246
- [searchPlaceholder]="'SEARCH_BY_ARTICLENUMBER_OR_DESCRIPTION' | localize"
247
- [name]="externalCatalogName"
248
- [options]="externalCatalogOptions"
249
- [showNavigation]="false"
250
- (articleClick)="handleCatFarmArticleClicked($event)"
251
- (addArticleClick)="handleAddCatFarmArticleClicked($event)"
252
- (iFrameFeedbackReceived)="handleIFrameFeedback($event)"
253
- ></co-catalog-external-source>
249
+ <co-catalog-external-source
250
+ [externalCatalogStartupInfo]="catalogInfo"
251
+ [title]="'CATALOG' | localize | append: ' ' | append: externalCatalogName"
252
+ [subTitle]="'SEARCH_BY_ARTICLENUMBER_NAME_OR_DESCRIPTION' | localize"
253
+ [searchPlaceholder]="'SEARCH_BY_ARTICLENUMBER_OR_DESCRIPTION' | localize"
254
+ [name]="externalCatalogName"
255
+ [options]="externalCatalogOptions"
256
+ [showNavigation]="false"
257
+ (articleClick)="handleCatFarmArticleClicked($event)"
258
+ (addArticleClick)="handleAddCatFarmArticleClicked($event)"
259
+ (iFrameFeedbackReceived)="handleIFrameFeedback($event)"
260
+ ></co-catalog-external-source>
254
261
 
255
- <div class="catalog-article-wrapper">
256
- <co-icon class="back-button-product" [iconData]="iconCacheService.getIcon(icons.ArrowPointLeft)"
257
- (click)="showProduct = false"></co-icon>
258
- <co-product-external-source *ngIf="showProduct"
259
- [externalSource]="externalSource"
260
- [sku]="catSku"
261
- (addToCart)="handleAddCatFarmArticleClicked($event)"
262
- ></co-product-external-source>
263
- </div>
264
- </div>
265
- </ng-container>
266
- </ng-container>
267
- </co-dialog>
268
- <co-dialog *ngIf="articleForStock && showStock" (closeClick)="cancelStockButtonClick()">
269
- <co-stock [article]="articleForStock" (cancelButtonClicked)="cancelStockButtonClick()"></co-stock>
270
- </co-dialog>
271
- `,
262
+ <div class="catalog-article-wrapper">
263
+ <co-icon class="back-button-product"
264
+ [iconData]="iconCacheService.getIcon(icons.ArrowPointLeft)"
265
+ (click)="showProduct = false"></co-icon>
266
+ <co-product-external-source *ngIf="showProduct"
267
+ [externalSource]="externalSource"
268
+ [sku]="catSku"
269
+ (addToCart)="handleAddCatFarmArticleClicked($event)"
270
+ ></co-product-external-source>
271
+ </div>
272
+ </div>
273
+ </ng-container>
274
+ </ng-container>
275
+ </co-dialog>
276
+ <co-dialog *ngIf="articleForStock && showStock" (closeClick)="cancelStockButtonClick()">
277
+ <co-stock [article]="articleForStock" (cancelButtonClicked)="cancelStockButtonClick()"></co-stock>
278
+ </co-dialog>
279
+ `,
272
280
  providers: [
273
281
  CatalogService,
274
282
  ProductConnectorService,
@@ -306,6 +314,7 @@ DialogCatalogComponent.propDecorators = {
306
314
  returnArticleOnTileClick: [{ type: Input }],
307
315
  transaction: [{ type: Input }],
308
316
  isReturn: [{ type: Input }],
317
+ showRelatedProductsPopup: [{ type: Input }],
309
318
  closeClick: [{ type: Output }],
310
319
  articleClicked: [{ type: Output }],
311
320
  iFrameFeedback: [{ type: Output }],
@@ -314,4 +323,4 @@ DialogCatalogComponent.propDecorators = {
314
323
  addExternalArticleClicked: [{ type: Output }],
315
324
  showClass: [{ type: HostBinding, args: ["class.co-dialog-catalog",] }]
316
325
  };
317
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLWNhdGFsb2cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJhbnNhY3Rpb24vc3JjL2xpYi9jb21wb25lbnQvZGlhbG9nL2NhdGFsb2cvZGlhbG9nLWNhdGFsb2cvZGlhbG9nLWNhdGFsb2cuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBRW9CLGlCQUFpQixFQUMxQyxTQUFTLEVBQ1QsWUFBWSxFQUNaLFdBQVcsRUFDWCxLQUFLLEVBR0wsTUFBTSxFQUNOLGlCQUFpQixFQUNsQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUMzRSxPQUFPLEVBQUMsbUJBQW1CLEVBQUUsY0FBYyxFQUFDLE1BQU0sbUJBQW1CLENBQUM7QUFJdEUsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sd0NBQXdDLENBQUM7QUFDeEUsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ2hELE9BQU8sRUFBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFFL0UsT0FBTyxFQUFDLDBCQUEwQixFQUFDLE1BQU0sZ0VBQWdFLENBQUM7QUFDMUcsT0FBTyxFQUFDLGlDQUFpQyxFQUFDLE1BQU0sd0VBQXdFLENBQUM7QUFDekgsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBSW5FLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQUNqRSxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSxpRUFBaUUsQ0FBQztBQUNyRyxPQUFPLEVBQUMsOEJBQThCLEVBQUUsdUJBQXVCLEVBQUUsbUJBQW1CLEVBQUUsc0JBQXNCLEVBQUMsTUFBTSxtQkFBbUIs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TTs2QkFHTixNQUFNOzZCQU1OLE1BQU07Z0NBSU4sTUFBTTt1Q0FNTixNQUFNO3dDQU9OLE1BQU07d0JBR04sV0FBVyxTQUFDLHlCQUF5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQXBwbGljYXRpb25SZWYsXHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIENvbXBvbmVudCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSG9zdEJpbmRpbmcsXHJcbiAgSW5wdXQsIE9uQ2hhbmdlcyxcclxuICBPbkRlc3Ryb3ksXHJcbiAgT25Jbml0LFxyXG4gIE91dHB1dCwgU2ltcGxlQ2hhbmdlcyxcclxuICBWaWV3RW5jYXBzdWxhdGlvblxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0FydGljbGVFeHRlbmRlZH0gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1leHRlbmRlZC5ibyc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25TZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQge0NhdGFsb2dFdmVudFNlcnZpY2UsIENhdGFsb2dTZXJ2aWNlfSBmcm9tICdAY29saWpuaXQvY2F0YWxvZyc7XHJcbmltcG9ydCB7U3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHtFeHRlcm5hbFNvdXJjZX0gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvZXh0ZXJuYWwtc291cmNlLmJvJztcclxuaW1wb3J0IHtFeHRlcm5hbFNvdXJjZVZpZXdtb2RlbH0gZnJvbSAnQGNvbGlqbml0L2NhdGFsb2cvbGliL21vZGVsL2V4dGVybmFsLXNvdXJjZS12aWV3bW9kZWwnO1xyXG5pbXBvcnQge0ljb25DYWNoZVNlcnZpY2V9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2UvaWNvbi1jYWNoZS5zZXJ2aWNlJztcclxuaW1wb3J0IHtJY29ufSBmcm9tICcuLi8uLi8uLi8uLi9lbnVtL2ljb24uZW51bSc7XHJcbmltcG9ydCB7YW5pbWF0ZSwgc3RhdGUsIHN0eWxlLCB0cmFuc2l0aW9uLCB0cmlnZ2VyfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcclxuaW1wb3J0IHtDYXRhbG9nRGVmaW5pdGlvbn0gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvY2F0YWxvZy1kZWZpbml0aW9uLmJvJztcclxuaW1wb3J0IHtFeHRlcm5hbENhdGFsb2dTdGFydHVwSW5mb30gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvZXh0ZXJuYWwtY2F0YWxvZy1zdGFydHVwLWluZm8nO1xyXG5pbXBvcnQge0V4dGVybmFsQ2F0YWxvZ1N0YXJ0dXBJbmZvUmVxdWVzdH0gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvZXh0ZXJuYWwtY2F0YWxvZy1zdGFydHVwLWluZm8tcmVxdWVzdCc7XHJcbmltcG9ydCB7QXJ0aWNsZVNlcnZpY2V9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2UvYXJ0aWNsZS5zZXJ2aWNlJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkluZm9SZXNwb25zZX0gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3RyYW5zYWN0aW9uLWluZm8tcmVzcG9uc2UuYm8nO1xyXG5pbXBvcnQge09yZGVyTGluZVNldEluZm99IGZyb20gJ0Bjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9vcmRlci1saW5lLXNldC1pbmZvLmJvJztcclxuaW1wb3J0IHtBcnRpY2xlTGlzdE9iamVjdEV4dGVuZGVkfSBmcm9tICdAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLWxpc3Qtb2JqZWN0LWV4dGVuZGVkLmJvJztcclxuaW1wb3J0IHtEaWFsb2dTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi8uLi9zZXJ2aWNlL2RpYWxvZy5zZXJ2aWNlJztcclxuaW1wb3J0IHtFeHRlcm5hbENhdGFsb2dUeXBlc30gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL2VudW0vZXh0ZXJuYWwtY2F0YWxvZy10eXBlcy5lbnVtJztcclxuaW1wb3J0IHtQcm9kdWN0Q29ubmVjdG9yQWRhcHRlclNlcnZpY2UsIFByb2R1Y3RDb25uZWN0b3JTZXJ2aWNlLCBQcm9kdWN0RXZlbnRTZXJ2aWNlLCBQcm9kdWN0U2V0dGluZ3NTZXJ2aWNlfSBmcm9tICdAY29saWpuaXQvcHJvZHVjdCc7XHJcbmltcG9ydCB7QXJ0aWNsZUxpc3RPYmplY3R9IGZyb20gJ0Bjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLWxpc3Qtb2JqZWN0JztcclxuaW1wb3J0IHtDYXRhbG9nU2NyZWVuQ29uZmlndXJhdGlvblNlcnZpY2V9IGZyb20gJy4vc2VydmljZS9jYXRhbG9nLXNjcmVlbi1jb25maWd1cmF0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQge0Jhc2VNb2R1bGVTY3JlZW5Db25maWdTZXJ2aWNlfSBmcm9tICdAY29saWpuaXQvY29yZWNvbXBvbmVudHNfdjEyJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkV2ZW50U2VydmljZX0gZnJvbSAnLi4vLi4vLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi1ldmVudC5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcImNvLWRpYWxvZy1jYXRhbG9nXCIsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxjby1kaWFsb2cgKGNsb3NlQ2xpY2spPVwiY2xvc2VDbGljay5lbWl0KCRldmVudClcIiBbQC5kaXNhYmxlZF09XCJkZXN0cm95ZWRcIj5cclxuICAgICAgPGNvLWljb24gKm5nSWY9XCJzaG93RXh0ZXJuYWxDYXRhbG9nXCIgW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5BcnJvd1BvaW50TGVmdClcIlxyXG4gICAgICAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlQmFja0NsaWNrKCRldmVudClcIj48L2NvLWljb24+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzZXR0aW5nc1NldFwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhc2hvd0V4dGVybmFsQ2F0YWxvZ1wiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImRpYWxvZy1jYXRhbG9nLXByb2R1Y3Qtd3JhcHBlclwiIFtjbGFzcy5zaG93LXByb2R1Y3RdPVwic2hvd1Byb2R1Y3RcIj5cclxuICAgICAgICAgICAgPGNvLWNhdGFsb2ctc2VhcmNoXHJcbiAgICAgICAgICAgICAgW3RpdGxlXT1cIidDQVRBTE9HJyB8IGxvY2FsaXplXCJcclxuICAgICAgICAgICAgICBbc3ViVGl0bGVdPVwiJ1NFQVJDSF9CWV9BUlRJQ0xFTlVNQkVSX05BTUVfT1JfREVTQ1JJUFRJT04nIHwgbG9jYWxpemVcIlxyXG4gICAgICAgICAgICAgIFtzZWFyY2hQbGFjZWhvbGRlcl09XCInU0VBUkNIX0JZX0FSVElDTEVOVU1CRVJfT1JfREVTQ1JJUFRJT04nIHwgbG9jYWxpemVcIlxyXG4gICAgICAgICAgICAgIFtjcmVhdGVGcm96ZW5BcnRpY2xlXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICBbc2hvd05hdmlnYXRpb25dPVwic2hvd05hdmlnYXRpb25cIlxyXG4gICAgICAgICAgICAgIFtzZXR0aW5nc109XCJjYXRhbG9nU2V0dGluZ3NcIlxyXG4gICAgICAgICAgICAgIChvbkV4dGVybmFsU291cmNlQ2xpY2spPVwiaGFuZGxlRXh0ZXJuYWxTb3VyY2VDbGljaygkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAob25BZGRBcnRpY2xlQnV0dG9uQ2xpY2spPVwiaGFuZGxlQWRkQXJ0aWNsZUNsaWNrKCRldmVudClcIlxyXG4gICAgICAgICAgICAgIChvbkxvb2tBdEFydGljbGVCdXR0b25DbGljayk9XCJoYW5kbGVBcnRpY2xlQ2xpY2soJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgKG9uQXJ0aWNsZUNsaWNrKT1cImhhbmRsZUFydGljbGVDbGljaygkZXZlbnQpXCI+XHJcbiAgICAgICAgICAgIDwvY28tY2F0YWxvZy1zZWFyY2g+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXRhbG9nLWFydGljbGUtd3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgIDxjby1pY29uIGNsYXNzPVwiYmFjay1idXR0b24tcHJvZHVjdFwiIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24oaWNvbnMuQXJyb3dQb2ludExlZnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwic2hvd1Byb2R1Y3QgPSBmYWxzZVwiPjwvY28taWNvbj5cclxuICAgICAgICAgICAgICA8YXBwLWlvbmUtcHJvZHVjdCAqbmdJZj1cInNob3dQcm9kdWN0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc2t1XT1cInNrdVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NldHRpbmdzXT1cImNhdGFsb2dTZXR0aW5nc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2hhbmRsZUFkZEFydGljbGVJbnRlcm5hbGx5XT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaXNSZXR1cm5dPVwiaXNSZXR1cm5cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChvbkFkZFRvQ2FydCk9XCJoYW5kbGVBZGRBcnRpY2xlRnJvbUFydGljbGVDbGljaygkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAob25BbHRlcm5hdGl2ZUNsaWNrKT1cImhhbmRsZU9uQWx0ZXJuYXRpdmVDbGljaygkZXZlbnQpXCJcclxuICAgICAgICAgICAgICA+PC9hcHAtaW9uZS1wcm9kdWN0PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzaG93RXh0ZXJuYWxDYXRhbG9nXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGlhbG9nLWNhdGFsb2ctcHJvZHVjdC13cmFwcGVyXCIgW2NsYXNzLnNob3ctcHJvZHVjdF09XCJzaG93UHJvZHVjdFwiPlxyXG5cclxuICAgICAgICAgICAgPGNvLWNhdGFsb2ctZXh0ZXJuYWwtc291cmNlXHJcbiAgICAgICAgICAgICAgW2V4dGVybmFsQ2F0YWxvZ1N0YXJ0dXBJbmZvXT1cImNhdGFsb2dJbmZvXCJcclxuICAgICAgICAgICAgICBbdGl0bGVdPVwiJ0NBVEFMT0cnIHwgbG9jYWxpemUgfCBhcHBlbmQ6ICcgJyB8IGFwcGVuZDogZXh0ZXJuYWxDYXRhbG9nTmFtZVwiXHJcbiAgICAgICAgICAgICAgW3N1YlRpdGxlXT1cIidTRUFSQ0hfQllfQVJUSUNMRU5VTUJFUl9OQU1FX09SX0RFU0NSSVBUSU9OJyB8IGxvY2FsaXplXCJcclxuICAgICAgICAgICAgICBbc2VhcmNoUGxhY2Vob2xkZXJdPVwiJ1NFQVJDSF9CWV9BUlRJQ0xFTlVNQkVSX09SX0RFU0NSSVBUSU9OJyB8IGxvY2FsaXplXCJcclxuICAgICAgICAgICAgICBbbmFtZV09XCJleHRlcm5hbENhdGFsb2dOYW1lXCJcclxuICAgICAgICAgICAgICBbb3B0aW9uc109XCJleHRlcm5hbENhdGFsb2dPcHRpb25zXCJcclxuICAgICAgICAgICAgICBbc2hvd05hdmlnYXRpb25dPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICAgIChhcnRpY2xlQ2xpY2spPVwiaGFuZGxlQ2F0RmFybUFydGljbGVDbGlja2VkKCRldmVudClcIlxyXG4gICAgICAgICAgICAgIChhZGRBcnRpY2xlQ2xpY2spPVwiaGFuZGxlQWRkQ2F0RmFybUFydGljbGVDbGlja2VkKCRldmVudClcIlxyXG4gICAgICAgICAgICAgIChpRnJhbWVGZWVkYmFja1JlY2VpdmVkKT1cImhhbmRsZUlGcmFtZUZlZWRiYWNrKCRldmVudClcIlxyXG4gICAgICAgICAgICA+PC9jby1jYXRhbG9nLWV4dGVybmFsLXNvdXJjZT5cclxuXHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXRhbG9nLWFydGljbGUtd3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgIDxjby1pY29uIGNsYXNzPVwiYmFjay1idXR0b24tcHJvZHVjdFwiIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24oaWNvbnMuQXJyb3dQb2ludExlZnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwic2hvd1Byb2R1Y3QgPSBmYWxzZVwiPjwvY28taWNvbj5cclxuICAgICAgICAgICAgICA8Y28tcHJvZHVjdC1leHRlcm5hbC1zb3VyY2UgKm5nSWY9XCJzaG93UHJvZHVjdFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtleHRlcm5hbFNvdXJjZV09XCJleHRlcm5hbFNvdXJjZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtza3VdPVwiY2F0U2t1XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGFkZFRvQ2FydCk9XCJoYW5kbGVBZGRDYXRGYXJtQXJ0aWNsZUNsaWNrZWQoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgPjwvY28tcHJvZHVjdC1leHRlcm5hbC1zb3VyY2U+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPC9jby1kaWFsb2c+XHJcbiAgICA8Y28tZGlhbG9nICpuZ0lmPVwiYXJ0aWNsZUZvclN0b2NrICYmIHNob3dTdG9ja1wiIChjbG9zZUNsaWNrKT1cImNhbmNlbFN0b2NrQnV0dG9uQ2xpY2soKVwiPlxyXG4gICAgICA8Y28tc3RvY2sgW2FydGljbGVdPVwiYXJ0aWNsZUZvclN0b2NrXCIgKGNhbmNlbEJ1dHRvbkNsaWNrZWQpPVwiY2FuY2VsU3RvY2tCdXR0b25DbGljaygpXCI+PC9jby1zdG9jaz5cclxuICAgIDwvY28tZGlhbG9nPlxyXG4gIGAsXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICBDYXRhbG9nU2VydmljZSxcclxuICAgIFByb2R1Y3RDb25uZWN0b3JTZXJ2aWNlLFxyXG4gICAgUHJvZHVjdENvbm5lY3RvckFkYXB0ZXJTZXJ2aWNlLFxyXG4gICAgUHJvZHVjdFNldHRpbmdzU2VydmljZSxcclxuICAgIFByb2R1Y3RFdmVudFNlcnZpY2UsXHJcbiAgICB7cHJvdmlkZTogQmFzZU1vZHVsZVNjcmVlbkNvbmZpZ1NlcnZpY2UsIHVzZUV4aXN0aW5nOiBDYXRhbG9nU2NyZWVuQ29uZmlndXJhdGlvblNlcnZpY2V9LFxyXG4gIF0sXHJcbiAgYW5pbWF0aW9uczogW1xyXG4gICAgdHJpZ2dlcihcInNob3dIaWRlUHJvZHVjdFwiLCBbXHJcbiAgICAgIHN0YXRlKFwidHJ1ZVwiLCBzdHlsZSh7dHJhbnNmb3JtOiBcInRyYW5zbGF0ZVgoLTUwJSlcIn0pKSxcclxuICAgICAgc3RhdGUoXCJmYWxzZVwiLCBzdHlsZSh7dHJhbnNmb3JtOiBcInRyYW5zbGF0ZVgoMClcIn0pKSxcclxuICAgICAgdHJhbnNpdGlvbihcImZhbHNlIDw9PiB0cnVlXCIsIGFuaW1hdGUoXCIyMDBtcyBlYXNlLWluLW91dFwiKSlcclxuICAgIF0pXHJcbiAgXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEaWFsb2dDYXRhbG9nQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIHB1YmxpYyByZWFkb25seSBpY29uczogdHlwZW9mIEljb24gPSBJY29uO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBoYW5kbGVBZGRBcnRpY2xlSW50ZXJuYWxseTogYm9vbGVhbiA9IHRydWU7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIG9wdGlvbnM6IGFueTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgcGFyYW1ldGVyczogYW55O1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzaG93TmF2aWdhdGlvbjogYm9vbGVhbiA9IHRydWU7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHJldHVybkFydGljbGVPblRpbGVDbGljazogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyB0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb25JbmZvUmVzcG9uc2U7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGlzUmV0dXJuOiBib29sZWFuO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgY2xvc2VDbGljazogRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50PigpO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgYXJ0aWNsZUNsaWNrZWQ6IEV2ZW50RW1pdHRlcjxBcnRpY2xlRXh0ZW5kZWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxBcnRpY2xlRXh0ZW5kZWQ+KCk7XHJcblxyXG4gIC8qQE91dHB1dCgpXHJcbiAgcHVibGljIGhhbmRsZUFkZEFydGljbGVDbGlja2VkOiBFdmVudEVtaXR0ZXI8QXJ0aWNsZUV4dGVuZGVkPiA9IG5ldyBFdmVudEVtaXR0ZXI8QXJ0aWNsZUV4dGVuZGVkPigpOyovXHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyBpRnJhbWVGZWVkYmFjazogRXZlbnRFbWl0dGVyPHsganNvblN0cmluZzogc3RyaW5nLCBjYXRhbG9nOiBudW1iZXIsIHNvdXJjZVR5cGU6IHN0cmluZyB9PlxyXG4gICAgPSBuZXcgRXZlbnRFbWl0dGVyPHsganNvblN0cmluZzogc3RyaW5nLCBjYXRhbG9nOiBudW1iZXIsIHNvdXJjZVR5cGU6IHN0cmluZyB9PigpO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgYWRkQXJ0aWNsZUNsaWNrZWQ6IEV2ZW50RW1pdHRlcjx7IGFydGljbGU6IHN0cmluZyB8IEFydGljbGVFeHRlbmRlZCwgcXVhbnRpdHk6IG51bWJlciB9PiA9IG5ldyBFdmVudEVtaXR0ZXI8e1xyXG4gICAgYXJ0aWNsZTogc3RyaW5nIHwgQXJ0aWNsZUV4dGVuZGVkLFxyXG4gICAgcXVhbnRpdHk6IG51bWJlclxyXG4gIH0+KCk7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyBhZGRDYXRGYXJtQXJ0aWNsZUNsaWNrZWQ6IEV2ZW50RW1pdHRlcjx7XHJcbiAgICBxdWFudGl0eTogbnVtYmVyLFxyXG4gICAganNvblN0cmluZzogc3RyaW5nLFxyXG4gICAgY2F0YWxvZzogbnVtYmVyXHJcbiAgfT4gPSBuZXcgRXZlbnRFbWl0dGVyPHsgcXVhbnRpdHk6IG51bWJlciwganNvblN0cmluZzogc3RyaW5nLCBjYXRhbG9nOiBudW1iZXIgfT4oKTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIGFkZEV4dGVybmFsQXJ0aWNsZUNsaWNrZWQ6IEV2ZW50RW1pdHRlcjxzdHJpbmc+ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XHJcblxyXG4gIEBIb3N0QmluZGluZyhcImNsYXNzLmNvLWRpYWxvZy1jYXRhbG9nXCIpXHJcbiAgcHVibGljIHNob3dDbGFzcygpIHtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNhdGFsb2dTZXR0aW5nczogYW55O1xyXG4gIHB1YmxpYyBzZXR0aW5nc1NldDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyBleHRlcm5hbENhdGFsb2dOYW1lOiBzdHJpbmc7XHJcbiAgcHVibGljIHNob3dFeHRlcm5hbENhdGFsb2c6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgZXh0ZXJuYWxTb3VyY2U6IEV4dGVybmFsU291cmNlO1xyXG4gIHB1YmxpYyBjYXRhbG9nRGVmaW5pdGlvbjogQ2F0YWxvZ0RlZmluaXRpb247XHJcbiAgcHVibGljIGFydGljbGVGb3JTdG9jazogQXJ0aWNsZUV4dGVuZGVkO1xyXG4gIHB1YmxpYyBzaG93U3RvY2s6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgc2hvd1Byb2R1Y3Q6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgc2hvd0V4dGVybmFsUHJvZHVjdDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyBza3U6IHN0cmluZztcclxuICBwdWJsaWMgY2F0U2t1OiBzdHJpbmc7XHJcbiAgcHVibGljIGNhdEFydE5hbWU6IHN0cmluZztcclxuICBwdWJsaWMgZGVzdHJveWVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIGV4dGVybmFsQ2F0YWxvZ09wdGlvbnMgPSB7XHJcbiAgICBzZWFyY2hPblN0YXJ0OiB0cnVlXHJcbiAgfVxyXG4gIHB1YmxpYyBjYXRhbG9nSW5mbzogRXh0ZXJuYWxDYXRhbG9nU3RhcnR1cEluZm87XHJcbiAgcHJpdmF0ZSBfc3ViczogU3Vic2NyaXB0aW9uW10gPSBbXTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgaWNvbkNhY2hlU2VydmljZTogSWNvbkNhY2hlU2VydmljZSxcclxuICAgIHByaXZhdGUgX3RyYW5zYWN0aW9uU2VydmljZTogVHJhbnNhY3Rpb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfY2F0YWxvZ1NlcnZpY2U6IENhdGFsb2dTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfY2F0YWxvZ0V2ZW50U2VydmljZTogQ2F0YWxvZ0V2ZW50U2VydmljZSxcclxuICAgIHByaXZhdGUgX2FydGljbGVTZXJ2aWNlOiBBcnRpY2xlU2VydmljZSxcclxuICAgIHByaXZhdGUgX2RpYWxvZ1NlcnZpY2U6IERpYWxvZ1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9wcm9kdWN0Q29ubmVjdG9yQWRhcHRlclNlcnZpY2U6IFByb2R1Y3RDb25uZWN0b3JBZGFwdGVyU2VydmljZSxcclxuICAgIHByaXZhdGUgX3RyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlOiBUcmFuc2FjdGlvbkV2ZW50U2VydmljZSxcclxuICAgIHByaXZhdGUgX2NoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZlxyXG4gICkge1xyXG4gIH1cclxuXHJcbiAgYXN5bmMgbmdPbkluaXQoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICB0aGlzLmNhdGFsb2dTZXR0aW5ncyA9IE9iamVjdC5hc3NpZ24oe30sIHRoaXMuX3RyYW5zYWN0aW9uU2VydmljZS5vcHRpb25zU2VydmljZS5zZXR0aW5ncyk7XHJcbiAgICBpZiAodGhpcy5jYXRhbG9nU2V0dGluZ3MpIHtcclxuICAgICAgdGhpcy5jYXRhbG9nU2V0dGluZ3MuY3JlYXRlV2ViT3JkZXIgPSBmYWxzZTtcclxuICAgICAgdGhpcy5jYXRhbG9nU2V0dGluZ3Mub3B0aW9ucyA9IHRoaXMub3B0aW9ucztcclxuICAgICAgdGhpcy5jYXRhbG9nU2V0dGluZ3MuY2F0YWxvZ1BhcmFtZXRlcnMgPSB0aGlzLnBhcmFtZXRlcnM7XHJcbiAgICAgIGF3YWl0IHRoaXMuX2NhdGFsb2dTZXJ2aWNlLmluaXQodGhpcy5jYXRhbG9nU2V0dGluZ3MsIHRydWUpO1xyXG4gICAgICB0aGlzLnNldHRpbmdzU2V0ID0gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLl9zdWJzLnB1c2goXHJcbiAgICAgIHRoaXMuX2NhdGFsb2dFdmVudFNlcnZpY2Uuc3RvY2tEZXRhaWxzQ2xpY2suc3Vic2NyaWJlKChhcnRpY2xlOiBBcnRpY2xlRXh0ZW5kZWQpID0+IHtcclxuICAgICAgICB0aGlzLmhhbmRsZVN0b2NrQnV0dG9uQ2xpY2soYXJ0aWNsZSk7XHJcbiAgICAgIH0pLFxyXG4gICAgICB0aGlzLl9wcm9kdWN0Q29ubmVjdG9yQWRhcHRlclNlcnZpY2Uuc2hvd0xvYWRlci5zdWJzY3JpYmUoKHNob3c6IGJvb2xlYW4pID0+IHtcclxuICAgICAgICB0aGlzLl90cmFuc2FjdGlvbkV2ZW50U2VydmljZS5zaG93TG9hZGVyLm5leHQoc2hvdyk7XHJcbiAgICAgIH0pLFxyXG4gICAgKVxyXG4gICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XHJcbiAgICB0aGlzLl9jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIHRoaXMuZGVzdHJveWVkID0gdHJ1ZTtcclxuICAgIHRoaXMuX3N1YnMuZm9yRWFjaChzID0+IHMudW5zdWJzY3JpYmUoKSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlU3RvY2tCdXR0b25DbGljayhhcnRpY2xlOiBBcnRpY2xlRXh0ZW5kZWQpOiB2b2lkIHtcclxuICAgIHRoaXMuYXJ0aWNsZUZvclN0b2NrID0gYXJ0aWNsZTtcclxuICAgIHRoaXMuc2hvd1N0b2NrID0gIXRoaXMuc2hvd1N0b2NrO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNhbmNlbFN0b2NrQnV0dG9uQ2xpY2soKTogdm9pZCB7XHJcbiAgICB0aGlzLnNob3dTdG9jayA9ICF0aGlzLnNob3dTdG9jaztcclxuICAgIHRoaXMuYXJ0aWNsZUZvclN0b2NrID0gdW5kZWZpbmVkO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGhhbmRsZUV4dGVybmFsU291cmNlQ2xpY2soc291cmNlPzogRXh0ZXJuYWxTb3VyY2VWaWV3bW9kZWwpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGlmIChzb3VyY2UpIHtcclxuICAgICAgdGhpcy5jYXRhbG9nRGVmaW5pdGlvbiA9IHNvdXJjZS5jYXRhbG9nRGVmaW5pdGlvbjtcclxuICAgICAgdGhpcy5leHRlcm5hbFNvdXJjZSA9IHNvdXJjZS5leHRlcm5hbFNvdXJjZTtcclxuICAgICAgbGV0IGluZm86IEV4dGVybmFsQ2F0YWxvZ1N0YXJ0dXBJbmZvID0gbmV3IEV4dGVybmFsQ2F0YWxvZ1N0YXJ0dXBJbmZvKCk7XHJcblxyXG4gICAgICBpZiAodGhpcy5jaGVja0lmT3BlbmluZ0lzQWxsb3dlZCgpKSB7XHJcbiAgICAgICAgY29uc3QgcmVxdWVzdDogRXh0ZXJuYWxDYXRhbG9nU3RhcnR1cEluZm9SZXF1ZXN0ID0gdGhpcy5idWlsZEV4dGVybmFsQ2F0YWxvZ1JlcXVlc3QoKTtcclxuXHJcbiAgICAgICAgaW5mbyA9IGF3YWl0IHRoaXMuX2FydGljbGVTZXJ2aWNlLmdldFdlYlZpZXdTdGFydHVwSW5mbyhyZXF1ZXN0KTtcclxuICAgICAgICB0aGlzLmNhdGFsb2dJbmZvID0gaW5mbztcclxuICAgICAgICB0aGlzLnNob3dFeHRlcm5hbENhdGFsb2cgPSB0cnVlO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuX2RpYWxvZ1NlcnZpY2Uuc2hvd1RvYXN0KFwiRVhURVJOQUxfQ0FUQUxPR19JVEVNU19BTFJFQURZX09SREVSRURcIiwgdHJ1ZSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVBcnRpY2xlQ2xpY2soYXJ0aWNsZTogQXJ0aWNsZUV4dGVuZGVkKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMucmV0dXJuQXJ0aWNsZU9uVGlsZUNsaWNrKSB7XHJcbiAgICAgIHRoaXMuc2t1ID0gYXJ0aWNsZS5hcnRpY2xlTnVtYmVyO1xyXG4gICAgICB0aGlzLnNob3dQcm9kdWN0ID0gdHJ1ZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuYXJ0aWNsZUNsaWNrZWQubmV4dChhcnRpY2xlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVBZGRBcnRpY2xlQ2xpY2soanNvbjogc3RyaW5nKTogdm9pZCB7XHJcbiAgICB0aGlzLmFkZEFydGljbGVDbGlja2VkLm5leHQoe2FydGljbGU6IGpzb24sIHF1YW50aXR5OiAxfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlQWRkQXJ0aWNsZUZyb21BcnRpY2xlQ2xpY2soZGF0YTogeyBhcnRpY2xlOiBzdHJpbmcgfCBBcnRpY2xlRXh0ZW5kZWQsIHF1YW50aXR5OiBudW1iZXIgfSk6IHZvaWQge1xyXG4gICAgdGhpcy5hZGRBcnRpY2xlQ2xpY2tlZC5uZXh0KGRhdGEpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZUFkZEV4dGVybmFsQXJ0aWNsZUNsaWNrKGpzb246IHN0cmluZyk6IHZvaWQge1xyXG4gICAgdGhpcy5hZGRFeHRlcm5hbEFydGljbGVDbGlja2VkLm5leHQoanNvbik7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlQmFja0NsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XHJcbiAgICB0aGlzLnNob3dFeHRlcm5hbENhdGFsb2cgPSBmYWxzZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVJRnJhbWVGZWVkYmFjayhqc29uOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMuaUZyYW1lRmVlZGJhY2suZW1pdCh7XHJcbiAgICAgIGpzb25TdHJpbmc6IGpzb24sXHJcbiAgICAgIGNhdGFsb2c6IHRoaXMuY2F0YWxvZ0RlZmluaXRpb24uZ2V0SWQoKSxcclxuICAgICAgc291cmNlVHlwZTogdGhpcy5leHRlcm5hbFNvdXJjZS50eXBlXHJcbiAgICB9KTtcclxuICAgIGlmICh0aGlzLmV4dGVybmFsU291cmNlLnR5cGUgIT09IEV4dGVybmFsQ2F0YWxvZ1R5cGVzLldlYnNob3ApIHtcclxuICAgICAgdGhpcy5zaG93RXh0ZXJuYWxDYXRhbG9nID0gZmFsc2U7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlQ2F0RmFybUFydGljbGVDbGlja2VkKGRhdGE6IHsgYXJ0aWNsZTogQXJ0aWNsZUxpc3RPYmplY3RFeHRlbmRlZCwgc2V0dGluZ3M6IGFueSB9KTogdm9pZCB7XHJcbiAgICB0aGlzLmNhdFNrdSA9IGRhdGEuYXJ0aWNsZS5hcnRpY2xlTnVtYmVyO1xyXG4gICAgdGhpcy5jYXRBcnROYW1lID0gZGF0YS5hcnRpY2xlLm5hbWU7XHJcbiAgICB0aGlzLnNob3dQcm9kdWN0ID0gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVBZGRDYXRGYXJtQXJ0aWNsZUNsaWNrZWQoZGF0YTogeyBxdWFudGl0eTogbnVtYmVyLCBhcnRpY2xlOiBzdHJpbmcgfSk6IHZvaWQge1xyXG4gICAgdGhpcy5hZGRDYXRGYXJtQXJ0aWNsZUNsaWNrZWQuZW1pdCh7XHJcbiAgICAgIHF1YW50aXR5OiBkYXRhLnF1YW50aXR5LFxyXG4gICAgICBqc29uU3RyaW5nOiBkYXRhLmFydGljbGUsXHJcbiAgICAgIGNhdGFsb2c6IHRoaXMuY2F0YWxvZ0RlZmluaXRpb24uZ2V0SWQoKVxyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBoYW5kbGVPbkFsdGVybmF0aXZlQ2xpY2soYXJ0aWNsZTogQXJ0aWNsZUxpc3RPYmplY3QpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIHRoaXMuX3RyYW5zYWN0aW9uU2VydmljZS5nZXRBcnRpY2xlRXh0ZW5kZWQoYXJ0aWNsZS5hcnRpY2xlTnVtYmVyKS50aGVuKHJlc3VsdCA9PiB7XHJcbiAgICAgIGlmIChyZXN1bHQpIHtcclxuICAgICAgICB0aGlzLnNrdSA9IHJlc3VsdC5hcnRpY2xlTnVtYmVyO1xyXG4gICAgICAgIHRoaXMuc2hvd1Byb2R1Y3QgPSB0cnVlO1xyXG4gICAgICB9XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjaGVja0lmT3BlbmluZ0lzQWxsb3dlZCgpOiBib29sZWFuIHtcclxuICAgIGlmICh0aGlzLnRyYW5zYWN0aW9uLnRyYW5zYWN0aW9uSW5mby5vcmRlckxpbmVTZXRzICYmIHRoaXMudHJhbnNhY3Rpb24udHJhbnNhY3Rpb25JbmZvLm9yZGVyTGluZVNldHMubGVuZ3RoID4gMCkge1xyXG4gICAgICBsZXQgb3JkZXJMaW5lU2V0Q29kZXM6IHN0cmluZ1tdID1cclxuICAgICAgICB0aGlzLnRyYW5zYWN0aW9uLnRyYW5zYWN0aW9uSW5mby5vcmRlckxpbmVTZXRzLmZpbHRlcihvID0+IG8uY2F0YWxvZ0lkID0gdGhpcy5jYXRhbG9nRGVmaW5pdGlvbi5nZXRJZCgpKS5tYXAobyA9PiBvLm9yZGVyTGluZVNldENvZGUpO1xyXG4gICAgICB0aGlzLnRyYW5zYWN0aW9uLnRyYW5zYWN0aW9uTGluZXMuZm9yRWFjaChsID0+IHtcclxuICAgICAgICBpZiAoKG9yZGVyTGluZVNldENvZGVzLmZpbmRJbmRleChjID0+IGMgPT09IGwub3JkZXJMaW5lU2V0Q29kZSkgPj0gMClcclxuICAgICAgICAgICYmIGwuYXJ0aWNsZUxpbmVTdGF0dXMgJiYgbC5hcnRpY2xlTGluZVN0YXR1cy5oYXNPd25Qcm9wZXJ0eSgncXVhbnRpdHlPcmRlcmVkJykgJiYgbC5hcnRpY2xlTGluZVN0YXR1cy5xdWFudGl0eU9yZGVyZWQgPiAwKSB7XHJcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgYnVpbGRFeHRlcm5hbENhdGFsb2dSZXF1ZXN0KCk6IEV4dGVybmFsQ2F0YWxvZ1N0YXJ0dXBJbmZvUmVxdWVzdCB7XHJcbiAgICBjb25zdCByZXF1ZXN0OiBFeHRlcm5hbENhdGFsb2dTdGFydHVwSW5mb1JlcXVlc3QgPSBuZXcgRXh0ZXJuYWxDYXRhbG9nU3RhcnR1cEluZm9SZXF1ZXN0KCk7XHJcbiAgICByZXF1ZXN0LmNhdGFsb2dJZCA9IHRoaXMuY2F0YWxvZ0RlZmluaXRpb24uZ2V0SWQoKTtcclxuICAgIHJlcXVlc3QucG9zRW1wbG95ZWUgPSB0aGlzLnRyYW5zYWN0aW9uLnRyYW5zYWN0aW9uSW5mby5oYW5kbGVkQnk7XHJcbiAgICByZXF1ZXN0LmlvbmVPcmRlck5yID0gdGhpcy50cmFuc2FjdGlvbi50cmFuc2FjdGlvbkluZm8udHJhbnNhY3Rpb25Oci50b1N0cmluZygpO1xyXG4gICAgaWYgKHRoaXMudHJhbnNhY3Rpb24udHJhbnNhY3Rpb25JbmZvLnJlbGF0aW9uKSB7XHJcbiAgICAgIHJlcXVlc3QucG9zTmFtZSA9IHRoaXMudHJhbnNhY3Rpb24udHJhbnNhY3Rpb25JbmZvLnJlbGF0aW9uLmZhbWlseU5hbWU7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXF1ZXN0LnBvc05hbWUgPSAnTk5CJyAvL05vZyBOaWV0IEJlcGFhbGRcclxuICAgIH1cclxuICAgIHRoaXMuZXhwYW5kRXh0ZXJuYWxDYXRhbG9nUmVxdWVzdElmTmVlZGVkKHJlcXVlc3QpO1xyXG4gICAgcmV0dXJuIHJlcXVlc3RcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZXhwYW5kRXh0ZXJuYWxDYXRhbG9nUmVxdWVzdElmTmVlZGVkKHJlcXVlc3Q6IEV4dGVybmFsQ2F0YWxvZ1N0YXJ0dXBJbmZvUmVxdWVzdCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMudHJhbnNhY3Rpb24udHJhbnNhY3Rpb25JbmZvLm9yZGVyTGluZVNldHMgJiYgdGhpcy50cmFuc2FjdGlvbi50cmFuc2FjdGlvbkluZm8ub3JkZXJMaW5lU2V0cy5sZW5ndGggPiAwKSB7XHJcbiAgICAgIGxldCBvcmRlckxpbmVTZXQ6IE9yZGVyTGluZVNldEluZm8gPSB0aGlzLnRyYW5zYWN0aW9uLnRyYW5zYWN0aW9uSW5mby5vcmRlckxpbmVTZXRzLmZpbmQoc2V0ID0+IHNldC5jYXRhbG9nSWQgPT09IHRoaXMuY2F0YWxvZ0RlZmluaXRpb24uZ2V0SWQoKSk7XHJcbiAgICAgIGlmIChvcmRlckxpbmVTZXQpIHtcclxuICAgICAgICByZXF1ZXN0LnBvc0F1cGluZyA9IG9yZGVyTGluZVNldC5hdXBTaG9wcGluZ0NhcnRJZCA/IG9yZGVyTGluZVNldC5hdXBTaG9wcGluZ0NhcnRJZCA6IG9yZGVyTGluZVNldC5hdXBPcmRlck5yO1xyXG4gICAgICAgIGlmIChyZXF1ZXN0LnBvc0F1cGluZykge1xyXG4gICAgICAgICAgcmVxdWVzdC5wb3NTdGF0dXMgPSAnQ2hhbmdlJztcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKG9yZGVyTGluZVNldC52ZFByb2plY3RJZCkge1xyXG4gICAgICAgICAgcmVxdWVzdC5vcmRlcklkID0gb3JkZXJMaW5lU2V0LnZkUHJvamVjdElkO1xyXG4gICAgICAgIH0gZWxzZSBpZiAob3JkZXJMaW5lU2V0Lnd0UHJvamVjdE5yKSB7XHJcbiAgICAgICAgICByZXF1ZXN0Lm9yZGVySWQgPSBvcmRlckxpbmVTZXQud3RQcm9qZWN0TnI7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
326
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLWNhdGFsb2cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJhbnNhY3Rpb24vc3JjL2xpYi9jb21wb25lbnQvZGlhbG9nL2NhdGFsb2cvZGlhbG9nLWNhdGFsb2cvZGlhbG9nLWNhdGFsb2cuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osV0FBVyxFQUNYLEtBQUssRUFHTCxNQUFNLEVBQ04saUJBQWlCLEVBQ3BCLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHlDQUF5QyxDQUFDO0FBQzNFLE9BQU8sRUFBQyxtQkFBbUIsRUFBRSxjQUFjLEVBQUMsTUFBTSxtQkFBbUIsQ0FBQztBQUl0RSxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUN4RSxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDaEQsT0FBTyxFQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUUvRSxPQUFPLEVBQUMsMEJBQTBCLEVBQUMsTUFBTSxnRUFBZ0UsQ0FBQztBQUMxRyxPQUFPLEVBQ0gsaUNBQWlDLEVBQ3BDLE1BQU0sd0VBQXdFLENBQUM7QUFDaEYsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBSW5FLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQUNqRSxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSxpRUFBaUUsQ0FBQztBQUNyRyxPQUFPLEVBQ0gsOEJBQThCLEVBQzlCLHVCQUF1QixFQUN2QixtQkFBbUIsRUFDbkIsc0JBQXNCLEVBQ3pCLE1BQU0sbUJB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O1lBTGhCLGtCQUFrQjtZQUNHLGNBQWM7WUFBbkMsbUJBQW1CO1lBWW5CLGNBQWM7WUFJZCxhQUFhO1lBR2pCLDhCQUE4QjtZQVExQix1QkFBdUI7WUF2QzNCLGlCQUFpQjs7O3lDQW9JaEIsS0FBSztzQkFHTCxLQUFLO3lCQUdMLEtBQUs7NkJBR0wsS0FBSzt1Q0FHTCxLQUFLOzBCQUdMLEtBQUs7dUJBR0wsS0FBSzt1Q0FHTCxLQUFLO3lCQUdMLE1BQU07NkJBR04sTUFBTTs2QkFNTixNQUFNO2dDQUlOLE1BQU07dUNBTU4sTUFBTTt3Q0FPTixNQUFNO3dCQUdOLFdBQVcsU0FBQyx5QkFBeUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBDb21wb25lbnQsXHJcbiAgICBFdmVudEVtaXR0ZXIsXHJcbiAgICBIb3N0QmluZGluZyxcclxuICAgIElucHV0LFxyXG4gICAgT25EZXN0cm95LFxyXG4gICAgT25Jbml0LFxyXG4gICAgT3V0cHV0LFxyXG4gICAgVmlld0VuY2Fwc3VsYXRpb25cclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtBcnRpY2xlRXh0ZW5kZWR9IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtZXh0ZW5kZWQuYm8nO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHtDYXRhbG9nRXZlbnRTZXJ2aWNlLCBDYXRhbG9nU2VydmljZX0gZnJvbSAnQGNvbGlqbml0L2NhdGFsb2cnO1xyXG5pbXBvcnQge1N1YnNjcmlwdGlvbn0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7RXh0ZXJuYWxTb3VyY2V9IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2V4dGVybmFsLXNvdXJjZS5ibyc7XHJcbmltcG9ydCB7RXh0ZXJuYWxTb3VyY2VWaWV3bW9kZWx9IGZyb20gJ0Bjb2xpam5pdC9jYXRhbG9nL2xpYi9tb2RlbC9leHRlcm5hbC1zb3VyY2Utdmlld21vZGVsJztcclxuaW1wb3J0IHtJY29uQ2FjaGVTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi8uLi9zZXJ2aWNlL2ljb24tY2FjaGUuc2VydmljZSc7XHJcbmltcG9ydCB7SWNvbn0gZnJvbSAnLi4vLi4vLi4vLi4vZW51bS9pY29uLmVudW0nO1xyXG5pbXBvcnQge2FuaW1hdGUsIHN0YXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlcn0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XHJcbmltcG9ydCB7Q2F0YWxvZ0RlZmluaXRpb259IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2NhdGFsb2ctZGVmaW5pdGlvbi5ibyc7XHJcbmltcG9ydCB7RXh0ZXJuYWxDYXRhbG9nU3RhcnR1cEluZm99IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2V4dGVybmFsLWNhdGFsb2ctc3RhcnR1cC1pbmZvJztcclxuaW1wb3J0IHtcclxuICAgIEV4dGVybmFsQ2F0YWxvZ1N0YXJ0dXBJbmZvUmVxdWVzdFxyXG59IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2V4dGVybmFsLWNhdGFsb2ctc3RhcnR1cC1pbmZvLXJlcXVlc3QnO1xyXG5pbXBvcnQge0FydGljbGVTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi8uLi9zZXJ2aWNlL2FydGljbGUuc2VydmljZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25JbmZvUmVzcG9uc2V9IGZyb20gJ0Bjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC90cmFuc2FjdGlvbi1pbmZvLXJlc3BvbnNlLmJvJztcclxuaW1wb3J0IHtPcmRlckxpbmVTZXRJbmZvfSBmcm9tICdAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvb3JkZXItbGluZS1zZXQtaW5mby5ibyc7XHJcbmltcG9ydCB7QXJ0aWNsZUxpc3RPYmplY3RFeHRlbmRlZH0gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1saXN0LW9iamVjdC1leHRlbmRlZC5ibyc7XHJcbmltcG9ydCB7RGlhbG9nU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vLi4vc2VydmljZS9kaWFsb2cuc2VydmljZSc7XHJcbmltcG9ydCB7RXh0ZXJuYWxDYXRhbG9nVHlwZXN9IGZyb20gJ0Bjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9lbnVtL2V4dGVybmFsLWNhdGFsb2ctdHlwZXMuZW51bSc7XHJcbmltcG9ydCB7XHJcbiAgICBQcm9kdWN0Q29ubmVjdG9yQWRhcHRlclNlcnZpY2UsXHJcbiAgICBQcm9kdWN0Q29ubmVjdG9yU2VydmljZSxcclxuICAgIFByb2R1Y3RFdmVudFNlcnZpY2UsXHJcbiAgICBQcm9kdWN0U2V0dGluZ3NTZXJ2aWNlXHJcbn0gZnJvbSAnQGNvbGlqbml0L3Byb2R1Y3QnO1xyXG5pbXBvcnQge0FydGljbGVMaXN0T2JqZWN0fSBmcm9tICdAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1saXN0LW9iamVjdCc7XHJcbmltcG9ydCB7Q2F0YWxvZ1NjcmVlbkNvbmZpZ3VyYXRpb25TZXJ2aWNlfSBmcm9tICcuL3NlcnZpY2UvY2F0YWxvZy1zY3JlZW4tY29uZmlndXJhdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHtCYXNlTW9kdWxlU2NyZWVuQ29uZmlnU2VydmljZX0gZnJvbSAnQGNvbGlqbml0L2NvcmVjb21wb25lbnRzX3YxMic7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25FdmVudFNlcnZpY2V9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24tZXZlbnQuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiBcImNvLWRpYWxvZy1jYXRhbG9nXCIsXHJcbiAgICB0ZW1wbGF0ZTogYFxyXG4gICAgICAgIDxjby1kaWFsb2cgKGNsb3NlQ2xpY2spPVwiY2xvc2VDbGljay5lbWl0KCRldmVudClcIiBbQC5kaXNhYmxlZF09XCJkZXN0cm95ZWRcIj5cclxuICAgICAgICAgICAgPGNvLWljb24gKm5nSWY9XCJzaG93RXh0ZXJuYWxDYXRhbG9nXCIgW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5BcnJvd1BvaW50TGVmdClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlQmFja0NsaWNrKCRldmVudClcIj48L2NvLWljb24+XHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzZXR0aW5nc1NldFwiPlxyXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFzaG93RXh0ZXJuYWxDYXRhbG9nXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRpYWxvZy1jYXRhbG9nLXByb2R1Y3Qtd3JhcHBlclwiIFtjbGFzcy5zaG93LXByb2R1Y3RdPVwic2hvd1Byb2R1Y3RcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGNvLWNhdGFsb2ctc2VhcmNoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdGl0bGVdPVwiJ0NBVEFMT0cnIHwgbG9jYWxpemVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW3N1YlRpdGxlXT1cIidTRUFSQ0hfQllfQVJUSUNMRU5VTUJFUl9OQU1FX09SX0RFU0NSSVBUSU9OJyB8IGxvY2FsaXplXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzZWFyY2hQbGFjZWhvbGRlcl09XCInU0VBUkNIX0JZX0FSVElDTEVOVU1CRVJfT1JfREVTQ1JJUFRJT04nIHwgbG9jYWxpemVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NyZWF0ZUZyb3plbkFydGljbGVdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW3Nob3dOYXZpZ2F0aW9uXT1cInNob3dOYXZpZ2F0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzZXR0aW5nc109XCJjYXRhbG9nU2V0dGluZ3NcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKG9uRXh0ZXJuYWxTb3VyY2VDbGljayk9XCJoYW5kbGVFeHRlcm5hbFNvdXJjZUNsaWNrKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKG9uQWRkQXJ0aWNsZUJ1dHRvbkNsaWNrKT1cImhhbmRsZUFkZEFydGljbGVDbGljaygkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChvbkxvb2tBdEFydGljbGVCdXR0b25DbGljayk9XCJoYW5kbGVBcnRpY2xlQ2xpY2soJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAob25BcnRpY2xlQ2xpY2spPVwiaGFuZGxlQXJ0aWNsZUNsaWNrKCRldmVudClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9jby1jYXRhbG9nLXNlYXJjaD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhdGFsb2ctYXJ0aWNsZS13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y28taWNvbiBjbGFzcz1cImJhY2stYnV0dG9uLXByb2R1Y3RcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5BcnJvd1BvaW50TGVmdClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInNob3dQcm9kdWN0ID0gZmFsc2VcIj48L2NvLWljb24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YXBwLWlvbmUtcHJvZHVjdCAqbmdJZj1cInNob3dQcm9kdWN0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtza3VdPVwic2t1XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzZXR0aW5nc109XCJjYXRhbG9nU2V0dGluZ3NcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2hhbmRsZUFkZEFydGljbGVJbnRlcm5hbGx5XT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpc1JldHVybl09XCJpc1JldHVyblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAob25BZGRUb0NhcnQpPVwiaGFuZGxlQWRkQXJ0aWNsZUZyb21BcnRpY2xlQ2xpY2soJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAob25BbHRlcm5hdGl2ZUNsaWNrKT1cImhhbmRsZU9uQWx0ZXJuYXRpdmVDbGljaygkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzaG93UmVsYXRlZFByb2R1Y3RzUG9wdXBdPVwic2hvd1JlbGF0ZWRQcm9kdWN0c1BvcHVwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L2FwcC1pb25lLXByb2R1Y3Q+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2hvd0V4dGVybmFsQ2F0YWxvZ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkaWFsb2ctY2F0YWxvZy1wcm9kdWN0LXdyYXBwZXJcIiBbY2xhc3Muc2hvdy1wcm9kdWN0XT1cInNob3dQcm9kdWN0XCI+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8Y28tY2F0YWxvZy1leHRlcm5hbC1zb3VyY2VcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtleHRlcm5hbENhdGFsb2dTdGFydHVwSW5mb109XCJjYXRhbG9nSW5mb1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdGl0bGVdPVwiJ0NBVEFMT0cnIHwgbG9jYWxpemUgfCBhcHBlbmQ6ICcgJyB8IGFwcGVuZDogZXh0ZXJuYWxDYXRhbG9nTmFtZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc3ViVGl0bGVdPVwiJ1NFQVJDSF9CWV9BUlRJQ0xFTlVNQkVSX05BTUVfT1JfREVTQ1JJUFRJT04nIHwgbG9jYWxpemVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NlYXJjaFBsYWNlaG9sZGVyXT1cIidTRUFSQ0hfQllfQVJUSUNMRU5VTUJFUl9PUl9ERVNDUklQVElPTicgfCBsb2NhbGl6ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmFtZV09XCJleHRlcm5hbENhdGFsb2dOYW1lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtvcHRpb25zXT1cImV4dGVybmFsQ2F0YWxvZ09wdGlvbnNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW3Nob3dOYXZpZ2F0aW9uXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChhcnRpY2xlQ2xpY2spPVwiaGFuZGxlQ2F0RmFybUFydGljbGVDbGlja2VkKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGFkZEFydGljbGVDbGljayk9XCJoYW5kbGVBZGRDYXRGYXJtQXJ0aWNsZUNsaWNrZWQoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoaUZyYW1lRmVlZGJhY2tSZWNlaXZlZCk9XCJoYW5kbGVJRnJhbWVGZWVkYmFjaygkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgPjwvY28tY2F0YWxvZy1leHRlcm5hbC1zb3VyY2U+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2F0YWxvZy1hcnRpY2xlLXdyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjby1pY29uIGNsYXNzPVwiYmFjay1idXR0b24tcHJvZHVjdFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb25zLkFycm93UG9pbnRMZWZ0KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwic2hvd1Byb2R1Y3QgPSBmYWxzZVwiPjwvY28taWNvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjby1wcm9kdWN0LWV4dGVybmFsLXNvdXJjZSAqbmdJZj1cInNob3dQcm9kdWN0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZXh0ZXJuYWxTb3VyY2VdPVwiZXh0ZXJuYWxTb3VyY2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtza3VdPVwiY2F0U2t1XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoYWRkVG9DYXJ0KT1cImhhbmRsZUFkZENhdEZhcm1BcnRpY2xlQ2xpY2tlZCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L2NvLXByb2R1Y3QtZXh0ZXJuYWwtc291cmNlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8L2NvLWRpYWxvZz5cclxuICAgICAgICA8Y28tZGlhbG9nICpuZ0lmPVwiYXJ0aWNsZUZvclN0b2NrICYmIHNob3dTdG9ja1wiIChjbG9zZUNsaWNrKT1cImNhbmNlbFN0b2NrQnV0dG9uQ2xpY2soKVwiPlxyXG4gICAgICAgICAgICA8Y28tc3RvY2sgW2FydGljbGVdPVwiYXJ0aWNsZUZvclN0b2NrXCIgKGNhbmNlbEJ1dHRvbkNsaWNrZWQpPVwiY2FuY2VsU3RvY2tCdXR0b25DbGljaygpXCI+PC9jby1zdG9jaz5cclxuICAgICAgICA8L2NvLWRpYWxvZz5cclxuICAgIGAsXHJcbiAgICBwcm92aWRlcnM6IFtcclxuICAgICAgICBDYXRhbG9nU2VydmljZSxcclxuICAgICAgICBQcm9kdWN0Q29ubmVjdG9yU2VydmljZSxcclxuICAgICAgICBQcm9kdWN0Q29ubmVjdG9yQWRhcHRlclNlcnZpY2UsXHJcbiAgICAgICAgUHJvZHVjdFNldHRpbmdzU2VydmljZSxcclxuICAgICAgICBQcm9kdWN0RXZlbnRTZXJ2aWNlLFxyXG4gICAgICAgIHtwcm92aWRlOiBCYXNlTW9kdWxlU2NyZWVuQ29uZmlnU2VydmljZSwgdXNlRXhpc3Rpbmc6IENhdGFsb2dTY3JlZW5Db25maWd1cmF0aW9uU2VydmljZX0sXHJcbiAgICBdLFxyXG4gICAgYW5pbWF0aW9uczogW1xyXG4gICAgICAgIHRyaWdnZXIoXCJzaG93SGlkZVByb2R1Y3RcIiwgW1xyXG4gICAgICAgICAgICBzdGF0ZShcInRydWVcIiwgc3R5bGUoe3RyYW5zZm9ybTogXCJ0cmFuc2xhdGVYKC01MCUpXCJ9KSksXHJcbiAgICAgICAgICAgIHN0YXRlKFwiZmFsc2VcIiwgc3R5bGUoe3RyYW5zZm9ybTogXCJ0cmFuc2xhdGVYKDApXCJ9KSksXHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24oXCJmYWxzZSA8PT4gdHJ1ZVwiLCBhbmltYXRlKFwiMjAwbXMgZWFzZS1pbi1vdXRcIikpXHJcbiAgICAgICAgXSlcclxuICAgIF0sXHJcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEaWFsb2dDYXRhbG9nQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gICAgcHVibGljIHJlYWRvbmx5IGljb25zOiB0eXBlb2YgSWNvbiA9IEljb247XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyBoYW5kbGVBZGRBcnRpY2xlSW50ZXJuYWxseTogYm9vbGVhbiA9IHRydWU7XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyBvcHRpb25zOiBhbnk7XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyBwYXJhbWV0ZXJzOiBhbnk7XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyBzaG93TmF2aWdhdGlvbjogYm9vbGVhbiA9IHRydWU7XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyByZXR1cm5BcnRpY2xlT25UaWxlQ2xpY2s6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgcHVibGljIHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbkluZm9SZXNwb25zZTtcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgcHVibGljIGlzUmV0dXJuOiBib29sZWFuO1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgc2hvd1JlbGF0ZWRQcm9kdWN0c1BvcHVwOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gICAgQE91dHB1dCgpXHJcbiAgICBwdWJsaWMgY2xvc2VDbGljazogRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50PigpO1xyXG5cclxuICAgIEBPdXRwdXQoKVxyXG4gICAgcHVibGljIGFydGljbGVDbGlja2VkOiBFdmVudEVtaXR0ZXI8QXJ0aWNsZUV4dGVuZGVkPiA9IG5ldyBFdmVudEVtaXR0ZXI8QXJ0aWNsZUV4dGVuZGVkPigpO1xyXG5cclxuICAgIC8qQE91dHB1dCgpXHJcbiAgICBwdWJsaWMgaGFuZGxlQWRkQXJ0aWNsZUNsaWNrZWQ6IEV2ZW50RW1pdHRlcjxBcnRpY2xlRXh0ZW5kZWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxBcnRpY2xlRXh0ZW5kZWQ+KCk7Ki9cclxuXHJcbiAgICBAT3V0cHV0KClcclxuICAgIHB1YmxpYyBpRnJhbWVGZWVkYmFjazogRXZlbnRFbWl0dGVyPHsganNvblN0cmluZzogc3RyaW5nLCBjYXRhbG9nOiBudW1iZXIsIHNvdXJjZVR5cGU6IHN0cmluZyB9PlxyXG4gICAgICAgID0gbmV3IEV2ZW50RW1pdHRlcjx7IGpzb25TdHJpbmc6IHN0cmluZywgY2F0YWxvZzogbnVtYmVyLCBzb3VyY2VUeXBlOiBzdHJpbmcgfT4oKTtcclxuXHJcbiAgICBAT3V0cHV0KClcclxuICAgIHB1YmxpYyBhZGRBcnRpY2xlQ2xpY2tlZDogRXZlbnRFbWl0dGVyPHsgYXJ0aWNsZTogc3RyaW5nIHwgQXJ0aWNsZUV4dGVuZGVkLCBxdWFudGl0eTogbnVtYmVyIH0+ID0gbmV3IEV2ZW50RW1pdHRlcjx7XHJcbiAgICAgICAgYXJ0aWNsZTogc3RyaW5nIHwgQXJ0aWNsZUV4dGVuZGVkLFxyXG4gICAgICAgIHF1YW50aXR5OiBudW1iZXJcclxuICAgIH0+KCk7XHJcblxyXG4gICAgQE91dHB1dCgpXHJcbiAgICBwdWJsaWMgYWRkQ2F0RmFybUFydGljbGVDbGlja2VkOiBFdmVudEVtaXR0ZXI8e1xyXG4gICAgICAgIHF1YW50aXR5OiBudW1iZXIsXHJcbiAgICAgICAganNvblN0cmluZzogc3RyaW5nLFxyXG4gICAgICAgIGNhdGFsb2c6IG51bWJlclxyXG4gICAgfT4gPSBuZXcgRXZlbnRFbWl0dGVyPHsgcXVhbnRpdHk6IG51bWJlciwganNvblN0cmluZzogc3RyaW5nLCBjYXRhbG9nOiBudW1iZXIgfT4oKTtcclxuXHJcbiAgICBAT3V0cHV0KClcclxuICAgIHB1YmxpYyBhZGRFeHRlcm5hbEFydGljbGVDbGlja2VkOiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xyXG5cclxuICAgIEBIb3N0QmluZGluZyhcImNsYXNzLmNvLWRpYWxvZy1jYXRhbG9nXCIpXHJcbiAgICBwdWJsaWMgc2hvd0NsYXNzKCkge1xyXG4gICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBjYXRhbG9nU2V0dGluZ3M6IGFueTtcclxuICAgIHB1YmxpYyBzZXR0aW5nc1NldDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgcHVibGljIGV4dGVybmFsQ2F0YWxvZ05hbWU6IHN0cmluZztcclxuICAgIHB1YmxpYyBzaG93RXh0ZXJuYWxDYXRhbG9nOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBwdWJsaWMgZXh0ZXJuYWxTb3VyY2U6IEV4dGVybmFsU291cmNlO1xyXG4gICAgcHVibGljIGNhdGFsb2dEZWZpbml0aW9uOiBDYXRhbG9nRGVmaW5pdGlvbjtcclxuICAgIHB1YmxpYyBhcnRpY2xlRm9yU3RvY2s6IEFydGljbGVFeHRlbmRlZDtcclxuICAgIHB1YmxpYyBzaG93U3RvY2s6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIHB1YmxpYyBzaG93UHJvZHVjdDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgcHVibGljIHNob3dFeHRlcm5hbFByb2R1Y3Q6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIHB1YmxpYyBza3U6IHN0cmluZztcclxuICAgIHB1YmxpYyBjYXRTa3U6IHN0cmluZztcclxuICAgIHB1YmxpYyBjYXRBcnROYW1lOiBzdHJpbmc7XHJcbiAgICBwdWJsaWMgZGVzdHJveWVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBwdWJsaWMgZXh0ZXJuYWxDYXRhbG9nT3B0aW9ucyA9IHtcclxuICAgICAgICBzZWFyY2hPblN0YXJ0OiB0cnVlXHJcbiAgICB9XHJcbiAgICBwdWJsaWMgY2F0YWxvZ0luZm86IEV4dGVybmFsQ2F0YWxvZ1N0YXJ0dXBJbmZvO1xyXG4gICAgcHJpdmF0ZSBfc3ViczogU3Vic2NyaXB0aW9uW10gPSBbXTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwdWJsaWMgaWNvbkNhY2hlU2VydmljZTogSWNvbkNhY2hlU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIF90cmFuc2FjdGlvblNlcnZpY2U6IFRyYW5zYWN0aW9uU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIF9jYXRhbG9nU2VydmljZTogQ2F0YWxvZ1NlcnZpY2UsXHJcbiAgICAgICAgcHJpdmF0ZSBfY2F0YWxvZ0V2ZW50U2VydmljZTogQ2F0YWxvZ0V2ZW50U2VydmljZSxcclxuICAgICAgICBwcml2YXRlIF9hcnRpY2xlU2VydmljZTogQXJ0aWNsZVNlcnZpY2UsXHJcbiAgICAgICAgcHJpdmF0ZSBfZGlhbG9nU2VydmljZTogRGlhbG9nU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIF9wcm9kdWN0Q29ubmVjdG9yQWRhcHRlclNlcnZpY2U6IFByb2R1Y3RDb25uZWN0b3JBZGFwdGVyU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIF90cmFuc2FjdGlvbkV2ZW50U2VydmljZTogVHJhbnNhY3Rpb25FdmVudFNlcnZpY2UsXHJcbiAgICAgICAgcHJpdmF0ZSBfY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmXHJcbiAgICApIHtcclxuICAgIH1cclxuXHJcbiAgICBhc3luYyBuZ09uSW5pdCgpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgICAgICB0aGlzLmNhdGFsb2dTZXR0aW5ncyA9IE9iamVjdC5hc3NpZ24oe30sIHRoaXMuX3RyYW5zYWN0aW9uU2VydmljZS5vcHRpb25zU2VydmljZS5zZXR0aW5ncyk7XHJcbiAgICAgICAgaWYgKHRoaXMuY2F0YWxvZ1NldHRpbmdzKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY2F0YWxvZ1NldHRpbmdzLmNyZWF0ZVdlYk9yZGVyID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMuY2F0YWxvZ1NldHRpbmdzLm9wdGlvbnMgPSB0aGlzLm9wdGlvbnM7XHJcbiAgICAgICAgICAgIHRoaXMuY2F0YWxvZ1NldHRpbmdzLmNhdGFsb2dQYXJhbWV0ZXJzID0gdGhpcy5wYXJhbWV0ZXJzO1xyXG4gICAgICAgICAgICBhd2FpdCB0aGlzLl9jYXRhbG9nU2VydmljZS5pbml0KHRoaXMuY2F0YWxvZ1NldHRpbmdzLCB0cnVlKTtcclxuICAgICAgICAgICAgdGhpcy5zZXR0aW5nc1NldCA9IHRydWU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLl9zdWJzLnB1c2goXHJcbiAgICAgICAgICAgIHRoaXMuX2NhdGFsb2dFdmVudFNlcnZpY2Uuc3RvY2tEZXRhaWxzQ2xpY2suc3Vic2NyaWJlKChhcnRpY2xlOiBBcnRpY2xlRXh0ZW5kZWQpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMuaGFuZGxlU3RvY2tCdXR0b25DbGljayhhcnRpY2xlKTtcclxuICAgICAgICAgICAgfSksXHJcbiAgICAgICAgICAgIHRoaXMuX3Byb2R1Y3RDb25uZWN0b3JBZGFwdGVyU2VydmljZS5zaG93TG9hZGVyLnN1YnNjcmliZSgoc2hvdzogYm9vbGVhbikgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5fdHJhbnNhY3Rpb25FdmVudFNlcnZpY2Uuc2hvd0xvYWRlci5uZXh0KHNob3cpO1xyXG4gICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgdGhpcy5fdHJhbnNhY3Rpb25FdmVudFNlcnZpY2UuYWZ0ZXJBZGRUcmFuc2FjdGlvbkxpbmUuc3Vic2NyaWJlKChib29sKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZiAoYm9vbCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2hvd1JlbGF0ZWRQcm9kdWN0c1BvcHVwID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSlcclxuICAgICAgICApXHJcbiAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XHJcbiAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25EZXN0cm95KCkge1xyXG4gICAgICAgIHRoaXMuZGVzdHJveWVkID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLl9zdWJzLmZvckVhY2gocyA9PiBzLnVuc3Vic2NyaWJlKCkpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBoYW5kbGVTdG9ja0J1dHRvbkNsaWNrKGFydGljbGU6IEFydGljbGVFeHRlbmRlZCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuYXJ0aWNsZUZvclN0b2NrID0gYXJ0aWNsZTtcclxuICAgICAgICB0aGlzLnNob3dTdG9jayA9ICF0aGlzLnNob3dTdG9jaztcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgY2FuY2VsU3RvY2tCdXR0b25DbGljaygpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLnNob3dTdG9jayA9ICF0aGlzLnNob3dTdG9jaztcclxuICAgICAgICB0aGlzLmFydGljbGVGb3JTdG9jayA9IHVuZGVmaW5lZDtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgYXN5bmMgaGFuZGxlRXh0ZXJuYWxTb3VyY2VDbGljayhzb3VyY2U/OiBFeHRlcm5hbFNvdXJjZVZpZXdtb2RlbCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgICAgIGlmIChzb3VyY2UpIHtcclxuICAgICAgICAgICAgdGhpcy5jYXRhbG9nRGVmaW5pdGlvbiA9IHNvdXJjZS5jYXRhbG9nRGVmaW5pdGlvbjtcclxuICAgICAgICAgICAgdGhpcy5leHRlcm5hbFNvdXJjZSA9IHNvdXJjZS5leHRlcm5hbFNvdXJjZTtcclxuICAgICAgICAgICAgbGV0IGluZm86IEV4dGVybmFsQ2F0YWxvZ1N0YXJ0dXBJbmZvID0gbmV3IEV4dGVybmFsQ2F0YWxvZ1N0YXJ0dXBJbmZvKCk7XHJcblxyXG4gICAgICAgICAgICBpZiAodGhpcy5jaGVja0lmT3BlbmluZ0lzQWxsb3dlZCgpKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCByZXF1ZXN0OiBFeHRlcm5hbENhdGFsb2dTdGFydHVwSW5mb1JlcXVlc3QgPSB0aGlzLmJ1aWxkRXh0ZXJuYWxDYXRhbG9nUmVxdWVzdCgpO1xyXG5cclxuICAgICAgICAgICAgICAgIGluZm8gPSBhd2FpdCB0aGlzLl9hcnRpY2xlU2VydmljZS5nZXRXZWJWaWV3U3RhcnR1cEluZm8ocmVxdWVzdCk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmNhdGFsb2dJbmZvID0gaW5mbztcclxuICAgICAgICAgICAgICAgIHRoaXMuc2hvd0V4dGVybmFsQ2F0YWxvZyA9IHRydWU7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLl9kaWFsb2dTZXJ2aWNlLnNob3dUb2FzdChcIkVYVEVSTkFMX0NBVEFMT0dfSVRFTVNfQUxSRUFEWV9PUkRFUkVEXCIsIHRydWUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBoYW5kbGVBcnRpY2xlQ2xpY2soYXJ0aWNsZTogQXJ0aWNsZUV4dGVuZGVkKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKCF0aGlzLnJldHVybkFydGljbGVPblRpbGVDbGljaykge1xyXG4gICAgICAgICAgICB0aGlzLnNrdSA9IGFydGljbGUuYXJ0aWNsZU51bWJlcjtcclxuICAgICAgICAgICAgdGhpcy5zaG93UHJvZHVjdCA9IHRydWU7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5hcnRpY2xlQ2xpY2tlZC5uZXh0KGFydGljbGUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgaGFuZGxlQWRkQXJ0aWNsZUNsaWNrKGpzb246IHN0cmluZyk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuYWRkQXJ0aWNsZUNsaWNrZWQubmV4dCh7YXJ0aWNsZToganNvbiwgcXVhbnRpdHk6IDF9KTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgaGFuZGxlQWRkQXJ0aWNsZUZyb21BcnRpY2xlQ2xpY2soZGF0YTogeyBhcnRpY2xlOiBzdHJpbmcgfCBBcnRpY2xlRXh0ZW5kZWQsIHF1YW50aXR5OiBudW1iZXIgfSk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuYWRkQXJ0aWNsZUNsaWNrZWQubmV4dChkYXRhKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgaGFuZGxlQWRkRXh0ZXJuYWxBcnRpY2xlQ2xpY2soanNvbjogc3RyaW5nKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5hZGRFeHRlcm5hbEFydGljbGVDbGlja2VkLm5leHQoanNvbik7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGhhbmRsZUJhY2tDbGljayhldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuc2hvd0V4dGVybmFsQ2F0YWxvZyA9IGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBoYW5kbGVJRnJhbWVGZWVkYmFjayhqc29uOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmlGcmFtZUZlZWRiYWNrLmVtaXQoe1xyXG4gICAgICAgICAgICBqc29uU3RyaW5nOiBqc29uLFxyXG4gICAgICAgICAgICBjYXRhbG9nOiB0aGlzLmNhdGFsb2dEZWZpbml0aW9uLmdldElkKCksXHJcbiAgICAgICAgICAgIHNvdXJjZVR5cGU6IHRoaXMuZXh0ZXJuYWxTb3VyY2UudHlwZVxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIGlmICh0aGlzLmV4dGVybmFsU291cmNlLnR5cGUgIT09IEV4dGVybmFsQ2F0YWxvZ1R5cGVzLldlYnNob3ApIHtcclxuICAgICAgICAgICAgdGhpcy5zaG93RXh0ZXJuYWxDYXRhbG9nID0gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBoYW5kbGVDYXRGYXJtQXJ0aWNsZUNsaWNrZWQoZGF0YTogeyBhcnRpY2xlOiBBcnRpY2xlTGlzdE9iamVjdEV4dGVuZGVkLCBzZXR0aW5nczogYW55IH0pOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmNhdFNrdSA9IGRhdGEuYXJ0aWNsZS5hcnRpY2xlTnVtYmVyO1xyXG4gICAgICAgIHRoaXMuY2F0QXJ0TmFtZSA9IGRhdGEuYXJ0aWNsZS5uYW1lO1xyXG4gICAgICAgIHRoaXMuc2hvd1Byb2R1Y3QgPSB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBoYW5kbGVBZGRDYXRGYXJtQXJ0aWNsZUNsaWNrZWQoZGF0YTogeyBxdWFudGl0eTogbnVtYmVyLCBhcnRpY2xlOiBzdHJpbmcgfSk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuYWRkQ2F0RmFybUFydGljbGVDbGlja2VkLmVtaXQoe1xyXG4gICAgICAgICAgICBxdWFudGl0eTogZGF0YS5xdWFudGl0eSxcclxuICAgICAgICAgICAganNvblN0cmluZzogZGF0YS5hcnRpY2xlLFxyXG4gICAgICAgICAgICBjYXRhbG9nOiB0aGlzLmNhdGFsb2dEZWZpbml0aW9uLmdldElkKClcclxuICAgICAgICB9KVxyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBhc3luYyBoYW5kbGVPbkFsdGVybmF0aXZlQ2xpY2soYXJ0aWNsZTogQXJ0aWNsZUxpc3RPYmplY3QpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgICAgICB0aGlzLl90cmFuc2FjdGlvblNlcnZpY2UuZ2V0QXJ0aWNsZUV4dGVuZGVkKGFydGljbGUuYXJ0aWNsZU51bWJlcikudGhlbihyZXN1bHQgPT4ge1xyXG4gICAgICAgICAgICBpZiAocmVzdWx0KSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNrdSA9IHJlc3VsdC5hcnRpY2xlTnVtYmVyO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zaG93UHJvZHVjdCA9IHRydWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgY2hlY2tJZk9wZW5pbmdJc0FsbG93ZWQoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgaWYgKHRoaXMudHJhbnNhY3Rpb24udHJhbnNhY3Rpb25JbmZvLm9yZGVyTGluZVNldHMgJiYgdGhpcy50cmFuc2FjdGlvbi50cmFuc2FjdGlvbkluZm8ub3JkZXJMaW5lU2V0cy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgIGxldCBvcmRlckxpbmVTZXRDb2Rlczogc3RyaW5nW10gPVxyXG4gICAgICAgICAgICAgICAgdGhpcy50cmFuc2FjdGlvbi50cmFuc2FjdGlvbkluZm8ub3JkZXJMaW5lU2V0cy5maWx0ZXIobyA9PiBvLmNhdGFsb2dJZCA9IHRoaXMuY2F0YWxvZ0RlZmluaXRpb24uZ2V0SWQoKSkubWFwKG8gPT4gby5vcmRlckxpbmVTZXRDb2RlKTtcclxuICAgICAgICAgICAgdGhpcy50cmFuc2FjdGlvbi50cmFuc2FjdGlvbkxpbmVzLmZvckVhY2gobCA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZiAoKG9yZGVyTGluZVNldENvZGVzLmZpbmRJbmRleChjID0+IGMgPT09IGwub3JkZXJMaW5lU2V0Q29kZSkgPj0gMClcclxuICAgICAgICAgICAgICAgICAgICAmJiBsLmFydGljbGVMaW5lU3RhdHVzICYmIGwuYXJ0aWNsZUxpbmVTdGF0dXMuaGFzT3duUHJvcGVydHkoJ3F1YW50aXR5T3JkZXJlZCcpICYmIGwuYXJ0aWNsZUxpbmVTdGF0dXMucXVhbnRpdHlPcmRlcmVkID4gMCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGJ1aWxkRXh0ZXJuYWxDYXRhbG9nUmVxdWVzdCgpOiBFeHRlcm5hbENhdGFsb2dTdGFydHVwSW5mb1JlcXVlc3Qge1xyXG4gICAgICAgIGNvbnN0IHJlcXVlc3Q6IEV4dGVybmFsQ2F0YWxvZ1N0YXJ0dXBJbmZvUmVxdWVzdCA9IG5ldyBFeHRlcm5hbENhdGFsb2dTdGFydHVwSW5mb1JlcXVlc3QoKTtcclxuICAgICAgICByZXF1ZXN0LmNhdGFsb2dJZCA9IHRoaXMuY2F0YWxvZ0RlZmluaXRpb24uZ2V0SWQoKTtcclxuICAgICAgICByZXF1ZXN0LnBvc0VtcGxveWVlID0gdGhpcy50cmFuc2FjdGlvbi50cmFuc2FjdGlvbkluZm8uaGFuZGxlZEJ5O1xyXG4gICAgICAgIHJlcXVlc3QuaW9uZU9yZGVyTnIgPSB0aGlzLnRyYW5zYWN0aW9uLnRyYW5zYWN0aW9uSW5mby50cmFuc2FjdGlvbk5yLnRvU3RyaW5nKCk7XHJcbiAgICAgICAgaWYgKHRoaXMudHJhbnNhY3Rpb24udHJhbnNhY3Rpb25JbmZvLnJlbGF0aW9uKSB7XHJcbiAgICAgICAgICAgIHJlcXVlc3QucG9zTmFtZSA9IHRoaXMudHJhbnNhY3Rpb24udHJhbnNhY3Rpb25JbmZvLnJlbGF0aW9uLmZhbWlseU5hbWU7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgcmVxdWVzdC5wb3NOYW1lID0gJ05OQicgLy9Ob2cgTmlldCBCZXBhYWxkXHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuZXhwYW5kRXh0ZXJuYWxDYXRhbG9nUmVxdWVzdElmTmVlZGVkKHJlcXVlc3QpO1xyXG4gICAgICAgIHJldHVybiByZXF1ZXN0XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBleHBhbmRFeHRlcm5hbENhdGFsb2dSZXF1ZXN0SWZOZWVkZWQocmVxdWVzdDogRXh0ZXJuYWxDYXRhbG9nU3RhcnR1cEluZm9SZXF1ZXN0KTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMudHJhbnNhY3Rpb24udHJhbnNhY3Rpb25JbmZvLm9yZGVyTGluZVNldHMgJiYgdGhpcy50cmFuc2FjdGlvbi50cmFuc2FjdGlvbkluZm8ub3JkZXJMaW5lU2V0cy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgIGxldCBvcmRlckxpbmVTZXQ6IE9yZGVyTGluZVNldEluZm8gPSB0aGlzLnRyYW5zYWN0aW9uLnRyYW5zYWN0aW9uSW5mby5vcmRlckxpbmVTZXRzLmZpbmQoc2V0ID0+IHNldC5jYXRhbG9nSWQgPT09IHRoaXMuY2F0YWxvZ0RlZmluaXRpb24uZ2V0SWQoKSk7XHJcbiAgICAgICAgICAgIGlmIChvcmRlckxpbmVTZXQpIHtcclxuICAgICAgICAgICAgICAgIHJlcXVlc3QucG9zQXVwaW5nID0gb3JkZXJMaW5lU2V0LmF1cFNob3BwaW5nQ2FydElkID8gb3JkZXJMaW5lU2V0LmF1cFNob3BwaW5nQ2FydElkIDogb3JkZXJMaW5lU2V0LmF1cE9yZGVyTnI7XHJcbiAgICAgICAgICAgICAgICBpZiAocmVxdWVzdC5wb3NBdXBpbmcpIHtcclxuICAgICAgICAgICAgICAgICAgICByZXF1ZXN0LnBvc1N0YXR1cyA9ICdDaGFuZ2UnO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgaWYgKG9yZGVyTGluZVNldC52ZFByb2plY3RJZCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHJlcXVlc3Qub3JkZXJJZCA9IG9yZGVyTGluZVNldC52ZFByb2plY3RJZDtcclxuICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAob3JkZXJMaW5lU2V0Lnd0UHJvamVjdE5yKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcmVxdWVzdC5vcmRlcklkID0gb3JkZXJMaW5lU2V0Lnd0UHJvamVjdE5yO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -106,39 +106,43 @@ PurchaseConfirmationLinesComponent.decorators = [
106
106
  (click)="handleClearAnalysis()"></co-icon>
107
107
  </div>
108
108
  <div class="purchase-confirmation-lines-drag-drop-list">
109
- <table class="purchase-confirmation-table">
110
- <colgroup>
111
- <col class="purchase-confirmation-linked-color" />
112
- <col class="purchase-confirmation-line-drag-handle" />
113
- <col />
114
- <col />
115
- <col />
116
- <col />
117
- <col />
118
- <col />
119
- </colgroup>
120
- <tr>
121
- <th></th>
122
- <th></th>
123
- <th class="right-align" [textContent]="'AMOUNT' | localize"></th>
124
- <th [textContent]="'ARTICLE_NO_SUPPLIER' | localize"></th>
125
- <th [textContent]="'DESCRIPTION' | localize"></th>
126
- <th class="right-align" [textContent]="'DELIVERY_DATE' | localize"></th>
127
- <th class="right-align" [textContent]="'PRICE' | localize"></th>
128
- <th [textContent]="'LINK' | localize"></th>
129
- </tr>
130
- <tr class="draggable-purchase-confirmation-line" *ngFor="let confirmationViewModel of purchaseConfirmations; trackBy:trackByFn;" draggable="true"
109
+ <div class="purchase-confirmation-table">
110
+ <div class="draggable-purchase-confirmation-line" *ngFor="let confirmationViewModel of purchaseConfirmations; trackBy:trackByFn;" draggable="true"
131
111
  (dragstart)="handleDragStart($event, confirmationViewModel)">
132
- <td [style.background-color]="confirmationViewModel.color"></td>
133
- <td><co-icon class="purchase-confirmation-line-drag-handle" [iconData]="iconCacheService.getIcon(icons.GripDotsVerticalSolid)"></co-icon></td>
134
- <td class="right-align" [textContent]="confirmationViewModel.confirmation.productQuantity"></td>
135
- <td [textContent]="confirmationViewModel.confirmation.supplierProductCode"></td>
136
- <td [textContent]="confirmationViewModel.confirmation.productDescription"></td>
137
- <td [textContent]="confirmationViewModel.confirmation.deliveryDate | date: 'dd-MM-yyyy'"></td>
138
- <td class="right-align" [textContent]="confirmationViewModel.confirmation.price | coCurrency"></td>
139
- <td #parentForOverlay class="link-button" [textContent]="'...'" (click)="showPopup(parentForOverlay, confirmationViewModel)"></td>
140
- </tr>
141
- </table>
112
+ <div class="draggable-color-drag">
113
+ <span class="color-drag" [style.background-color]="confirmationViewModel.color"></span>
114
+ <span><co-icon class="purchase-confirmation-line-drag-handle" [iconData]="iconCacheService.getIcon(icons.GripDotsVerticalSolid)"></co-icon></span>
115
+ </div>
116
+ <div class="draggable-content-line">
117
+ <div class="draggable-top-line">
118
+ <span class="draggable-description" [textContent]="confirmationViewModel.confirmation.productDescription"></span>
119
+ <div class="draggable-supplier-code">
120
+ <span [textContent]="'SUPPLIERNR_ARTICLE' | localize"></span>
121
+ <span [textContent]="confirmationViewModel.confirmation.supplierProductCode"></span>
122
+ </div>
123
+ </div>
124
+ <div class="draggable-bottom-line">
125
+ <div class="draggable-delivery">
126
+ <label [textContent]="'DELIVERY_DATE' | localize"></label>
127
+ <span class="draggable-delivery" [textContent]="confirmationViewModel.confirmation.deliveryDate | date: 'dd-MM-yyyy'"></span>
128
+ </div>
129
+ <div class="draggable-quantity">
130
+ <label [textContent]="'QUANTITY' | localize"></label>
131
+ <span class="draggable-quantity" [textContent]="confirmationViewModel.confirmation.productQuantity"></span>
132
+ </div>
133
+ <div class="draggable-price">
134
+ <label [textContent]="'PRICE' | localize"></label>
135
+ <span class="draggable-price" [textContent]="confirmationViewModel.confirmation.price | coCurrency"></span>
136
+ </div>
137
+ </div>
138
+ </div>
139
+ <div #parentForOverlay class="link-button" (click)="showPopup(parentForOverlay, confirmationViewModel)">
140
+ <co-button class="action-menu-button"
141
+ [iconData]="iconCacheService.getIcon(icons.EllipsisLight)">
142
+ </co-button>
143
+ </div>
144
+ </div>
145
+ </div>
142
146
  </div>
143
147
  `,
144
148
  providers: [
@@ -159,4 +163,4 @@ PurchaseConfirmationLinesComponent.propDecorators = {
159
163
  transaction: [{ type: Input }],
160
164
  showClass: [{ type: HostBinding, args: ['class.co-purchase-confirmation-lines',] }]
161
165
  };
162
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVyY2hhc2UtY29uZmlybWF0aW9uLWxpbmVzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L3B1cmNoYXNlLWNvbmZpcm1hdGlvbi1saW5lcy9wdXJjaGFzZS1jb25maXJtYXRpb24tbGluZXMuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQXFCLFNBQVMsRUFBRSxpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUU1SSxPQUFPLEVBQUMsMkJBQTJCLEVBQUMsTUFBTSw2Q0FBNkMsQ0FBQztBQUN4RixPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUNsRSxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDMUMsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFJaEYsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQzVELE9BQU8sRUFBQyw4QkFBOEIsRUFBQyxNQUFNLDhEQUE4RCxDQUFDO0FBRzVHLE1BQU0sT0FBTyxxQkFBcUI7SUFBbEM7UUFFVyxTQUFJLEdBQVksS0FBSyxDQUFDO0lBR2pDLENBQUM7Q0FBQTtBQW9ERCxNQUFNLE9BQU8sa0NBQWtDO0lBc0IzQyxZQUNXLGdCQUFrQyxFQUNqQyw0QkFBeUQsRUFDekQsd0JBQWlELEVBQ2pELGVBQWtDLEVBQ2xDLGVBQStCO1FBSmhDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDakMsaUNBQTRCLEdBQTVCLDRCQUE0QixDQUE2QjtRQUN6RCw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQXlCO1FBQ2pELG9CQUFlLEdBQWYsZUFBZSxDQUFtQjtR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QWUsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVPLDJCQUEyQixDQUFDLElBQXlCLEVBQUUsWUFBNkM7UUFDeEcsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyw0QkFBNEIsQ0FBQyw2QkFBNkIsQ0FBQyxJQUFJLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDeEYsQ0FBQzs7O1lBOUpKLFNBQVMsU0FBQztnQkFDUCxRQUFRLEVBQUUsZ0NBQWdDO2dCQUMxQyxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLQTBDVDtnQkFDRCxTQUFTLEVBQUU7b0JBQ1AsY0FBYztpQkFDakI7Z0JBQ0QsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7YUFDeEM7OztZQWxFTyxnQkFBZ0I7WUFEaEIsMkJBQTJCO1lBRzNCLHVCQUF1QjtZQUx2QixpQkFBaUI7WUFTakIsY0FBYzs7O29DQWdFakIsU0FBUyxTQUFDLGtCQUFrQixFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRTswQkFHbEQsS0FBSzt3QkFHTCxXQUFXLFNBQUMsc0NBQXNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBIb3N0QmluZGluZywgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBWaWV3Q2hpbGQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtPcmRlckNvbmZpcm1hdGlvbkFuYWx5c2lzUmVzdWx0fSBmcm9tICdAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvb3JkZXItY29uZmlybWF0aW9uLWFuYWx5c2lzLXJlc3VsdC5ibyc7XHJcbmltcG9ydCB7UHVyY2hhc2VDb25maXJtYXRpb25TZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlL3B1cmNoYXNlLWNvbmZpcm1hdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHtJY29uQ2FjaGVTZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlL2ljb24tY2FjaGUuc2VydmljZSc7XHJcbmltcG9ydCB7SWNvbn0gZnJvbSAnLi4vLi4vZW51bS9pY29uLmVudW0nO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLWV2ZW50LnNlcnZpY2UnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uSW5mb1Jlc3BvbnNlfSBmcm9tICdAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvdHJhbnNhY3Rpb24taW5mby1yZXNwb25zZS5ibyc7XHJcbmltcG9ydCB7U3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkxpbmVJbmZvfSBmcm9tICdAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvdHJhbnNhY3Rpb24tbGluZS1pbmZvLmJvJztcclxuaW1wb3J0IHtPdmVybGF5U2VydmljZX0gZnJvbSAnQGNvbGlqbml0L2NvcmVjb21wb25lbnRzX3YxMic7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25MaW5lc1BvcHVwQ29tcG9uZW50fSBmcm9tICcuLi90cmFuc2FjdGlvbi1saW5lcy1wb3B1cC90cmFuc2FjdGlvbi1saW5lcy1wb3B1cC5jb21wb25lbnQnO1xyXG5pbXBvcnQge09yZGVyQ29uZmlybWF0aW9uRHJvcHBlZH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlL29yZGVyLWNvbmZpcm1hdGlvbi1kcm9wcGVkLmludGVyZmFjZSc7XHJcblxyXG5leHBvcnQgY2xhc3MgQ29uZmlybWF0aW9uVmlld01vZGVsIHtcclxuICAgIHB1YmxpYyBjb25maXJtYXRpb246IE9yZGVyQ29uZmlybWF0aW9uQW5hbHlzaXNSZXN1bHQ7XHJcbiAgICBwdWJsaWMgdGVtcDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgcHVibGljIGxpbmVOcjogbnVtYmVyO1xyXG4gICAgcHVibGljIGNvbG9yOiBzdHJpbmc7XHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdjby1wdXJjaGFzZS1jb25maXJtYXRpb24tbGluZXMnLFxyXG4gICAgdGVtcGxhdGU6IGBcclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29uZmlybWF0aW9uLWJ1dHRvbi13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgIDxjby1pY29uICpuZ0lmPVwiaGFzUGRmRmlsZVVybFwiIGNsYXNzPVwib3Blbi1jb25maXJtYXRpb24tcGRmLWljb25cIiBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb25zLlBkZilcIlxyXG4gICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib3BlblBkZigpXCI+PC9jby1pY29uPlxyXG4gICAgICAgICAgICA8Y28taWNvbiBjbGFzcz1cImRlbGV0ZS1jb25maXJtYXRpb24taWNvblwiIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24oaWNvbnMuVHJhc2hCaW4pXCJcclxuICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImhhbmRsZUNsZWFyQW5hbHlzaXMoKVwiPjwvY28taWNvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicHVyY2hhc2UtY29uZmlybWF0aW9uLWxpbmVzLWRyYWctZHJvcC1saXN0XCI+XHJcbiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz1cInB1cmNoYXNlLWNvbmZpcm1hdGlvbi10YWJsZVwiPlxyXG4gICAgICAgICAgICAgICAgPGNvbGdyb3VwPlxyXG4gICAgICAgICAgICAgICAgICAgIDxjb2wgY2xhc3M9XCJwdXJjaGFzZS1jb25maXJtYXRpb24tbGlua2VkLWNvbG9yXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICA8Y29sIGNsYXNzPVwicHVyY2hhc2UtY29uZmlybWF0aW9uLWxpbmUtZHJhZy1oYW5kbGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgIDxjb2wgLz5cclxuICAgICAgICAgICAgICAgICAgICA8Y29sIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgPGNvbCAvPlxyXG4gICAgICAgICAgICAgICAgICAgIDxjb2wgLz5cclxuICAgICAgICAgICAgICAgICAgICA8Y29sIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgPGNvbCAvPlxyXG4gICAgICAgICAgICAgICAgPC9jb2xncm91cD5cclxuICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICA8dGg+PC90aD5cclxuICAgICAgICAgICAgICAgICAgICA8dGg+PC90aD5cclxuICAgICAgICAgICAgICAgICAgICA8dGggY2xhc3M9XCJyaWdodC1hbGlnblwiIFt0ZXh0Q29udGVudF09XCInQU1PVU5UJyB8IGxvY2FsaXplXCI+PC90aD5cclxuICAgICAgICAgICAgICAgICAgICA8dGggW3RleHRDb250ZW50XT1cIidBUlRJQ0xFX05PX1NVUFBMSUVSJyB8IGxvY2FsaXplXCI+PC90aD5cclxuICAgICAgICAgICAgICAgICAgICA8dGggW3RleHRDb250ZW50XT1cIidERVNDUklQVElPTicgfCBsb2NhbGl6ZVwiPjwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgPHRoIGNsYXNzPVwicmlnaHQtYWxpZ25cIiBbdGV4dENvbnRlbnRdPVwiJ0RFTElWRVJZX0RBVEUnIHwgbG9jYWxpemVcIj48L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgIDx0aCBjbGFzcz1cInJpZ2h0LWFsaWduXCIgW3RleHRDb250ZW50XT1cIidQUklDRScgfCBsb2NhbGl6ZVwiPjwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgPHRoIFt0ZXh0Q29udGVudF09XCInTElOSycgfCBsb2NhbGl6ZVwiPjwvdGg+XHJcbiAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgPHRyIGNsYXNzPVwiZHJhZ2dhYmxlLXB1cmNoYXNlLWNvbmZpcm1hdGlvbi1saW5lXCIgKm5nRm9yPVwibGV0IGNvbmZpcm1hdGlvblZpZXdNb2RlbCBvZiBwdXJjaGFzZUNvbmZpcm1hdGlvbnM7IHRyYWNrQnk6dHJhY2tCeUZuO1wiIGRyYWdnYWJsZT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgIChkcmFnc3RhcnQpPVwiaGFuZGxlRHJhZ1N0YXJ0KCRldmVudCwgY29uZmlybWF0aW9uVmlld01vZGVsKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDx0ZCBbc3R5bGUuYmFja2dyb3VuZC1jb2xvcl09XCJjb25maXJtYXRpb25WaWV3TW9kZWwuY29sb3JcIj48L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgIDx0ZD48Y28taWNvbiBjbGFzcz1cInB1cmNoYXNlLWNvbmZpcm1hdGlvbi1saW5lLWRyYWctaGFuZGxlXCIgW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5HcmlwRG90c1ZlcnRpY2FsU29saWQpXCI+PC9jby1pY29uPjwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwicmlnaHQtYWxpZ25cIiBbdGV4dENvbnRlbnRdPVwiY29uZmlybWF0aW9uVmlld01vZGVsLmNvbmZpcm1hdGlvbi5wcm9kdWN0UXVhbnRpdHlcIj48L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgIDx0ZCBbdGV4dENvbnRlbnRdPVwiY29uZmlybWF0aW9uVmlld01vZGVsLmNvbmZpcm1hdGlvbi5zdXBwbGllclByb2R1Y3RDb2RlXCI+PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICA8dGQgW3RleHRDb250ZW50XT1cImNvbmZpcm1hdGlvblZpZXdNb2RlbC5jb25maXJtYXRpb24ucHJvZHVjdERlc2NyaXB0aW9uXCI+PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICA8dGQgW3RleHRDb250ZW50XT1cImNvbmZpcm1hdGlvblZpZXdNb2RlbC5jb25maXJtYXRpb24uZGVsaXZlcnlEYXRlIHwgZGF0ZTogJ2RkLU1NLXl5eXknXCI+PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJyaWdodC1hbGlnblwiIFt0ZXh0Q29udGVudF09XCJjb25maXJtYXRpb25WaWV3TW9kZWwuY29uZmlybWF0aW9uLnByaWNlIHwgY29DdXJyZW5jeVwiPjwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPHRkICNwYXJlbnRGb3JPdmVybGF5IGNsYXNzPVwibGluay1idXR0b25cIiBbdGV4dENvbnRlbnRdPVwiJy4uLidcIiAoY2xpY2spPVwic2hvd1BvcHVwKHBhcmVudEZvck92ZXJsYXksIGNvbmZpcm1hdGlvblZpZXdNb2RlbClcIj48L3RkPlxyXG4gICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgPC90YWJsZT5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIGAsXHJcbiAgICBwcm92aWRlcnM6IFtcclxuICAgICAgICBPdmVybGF5U2VydmljZVxyXG4gICAgXSxcclxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIFB1cmNoYXNlQ29uZmlybWF0aW9uTGluZXNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgaWNvbnM6IHR5cGVvZiBJY29uID0gSWNvbjtcclxuXHJcbiAgICBAVmlld0NoaWxkKCdwYXJlbnRGb3JPdmVybGF5JywgeyByZWFkOiBFbGVtZW50UmVmIH0pXHJcbiAgICBwdWJsaWMgcGFyZW50RWxlbWVudEZvclBvcHVwOiBFbGVtZW50UmVmO1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgdHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uSW5mb1Jlc3BvbnNlO1xyXG5cclxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuY28tcHVyY2hhc2UtY29uZmlybWF0aW9uLWxpbmVzJylcclxuICAgIHB1YmxpYyBzaG93Q2xhc3MoKSB7XHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIHB1cmNoYXNlQ29uZmlybWF0aW9uczogQ29uZmlybWF0aW9uVmlld01vZGVsW10gPSBbXTtcclxuICAgIHB1YmxpYyBjdXJyZW50Q29uZmlybWF0aW9uVmlld01vZGVsOiBDb25maXJtYXRpb25WaWV3TW9kZWw7XHJcbiAgICBwdWJsaWMgdHJhbnNhY3Rpb25MaW5lczogVHJhbnNhY3Rpb25MaW5lSW5mb1tdID0gW107XHJcbiAgICBwdWJsaWMgaGFzUGRmRmlsZVVybDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAgIHByaXZhdGUgX3N1YnM6IFN1YnNjcmlwdGlvbltdID0gW107XHJcbiAgICBwcml2YXRlIF9wb3B1cENvbXBvbmVudFJlZjtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwdWJsaWMgaWNvbkNhY2hlU2VydmljZTogSWNvbkNhY2hlU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIF9wdXJjaGFzZUNvbmZpcm1hdGlvblNlcnZpY2U6IFB1cmNoYXNlQ29uZmlybWF0aW9uU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIF90cmFuc2FjdGlvbkV2ZW50U2VydmljZTogVHJhbnNhY3Rpb25FdmVudFNlcnZpY2UsXHJcbiAgICAgICAgcHJpdmF0ZSBfY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgICAgIHByaXZhdGUgX292ZXJsYXlTZXJ2aWNlOiBPdmVybGF5U2VydmljZVxyXG4gICAgKSB7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkluaXQoKSB7XHJcbiAgICAgICAgdGhpcy5fc3Vicy5wdXNoKFxyXG4gICAgICAgICAgICB0aGlzLl9wdXJjaGFzZUNvbmZpcm1hdGlvblNlcnZpY2UuY29uZmlybWF0aW9uTmVlZGVkLnN1YnNjcmliZSgobmVlZGVkOiBib29sZWFuKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZiAobmVlZGVkKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wdXJjaGFzZUNvbmZpcm1hdGlvbnMubGVuZ3RoID0gMDtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9wdXJjaGFzZUNvbmZpcm1hdGlvblNlcnZpY2UuY29uZmlybWF0aW9uQW5hbHlzaXNSZXN1bHQuZm9yRWFjaChjYSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHZpZXdNb2RlbDogQ29uZmlybWF0aW9uVmlld01vZGVsID0gbmV3IENvbmZpcm1hdGlvblZpZXdNb2RlbCgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB2aWV3TW9kZWwuY29uZmlybWF0aW9uID0gY2E7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucHVyY2hhc2VDb25maXJtYXRpb25zLnB1c2godmlld01vZGVsKTtcclxuICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmhhc1BkZkZpbGVVcmwgPSB0aGlzLl9wdXJjaGFzZUNvbmZpcm1hdGlvblNlcnZpY2UuYW5hbHl6ZWRDb25maXJtYXRpb24gJiZcclxuICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX3B1cmNoYXNlQ29uZmlybWF0aW9uU2VydmljZS5hbmFseXplZENvbmZpcm1hdGlvbi5maWxlVXJsICE9PSBudWxsICYmXHJcbiAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9wdXJjaGFzZUNvbmZpcm1hdGlvblNlcnZpY2UuYW5hbHl6ZWRDb25maXJtYXRpb24uZmlsZVVybCAhPT0gdW5kZWZpbmVkO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgdGhpcy5fdHJhbnNhY3Rpb25FdmVudFNlcnZpY2Uub3JkZXJDb25maXJtYXRpb25Ecm9wcGVkLnN1YnNjcmliZSgoZGF0YTogT3JkZXJDb25maXJtYXRpb25Ecm9wcGVkKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZiAoZGF0YSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMucHVyY2hhc2VDb25maXJtYXRpb25zLmZpbHRlcihwID0+IHAubGluZU5yID09PSBkYXRhLmxpbmVOcikuZm9yRWFjaChwID0+IHAuY29sb3IgPSBcIlwiKTtcclxuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5jdXJyZW50Q29uZmlybWF0aW9uVmlld01vZGVsKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY3VycmVudENvbmZpcm1hdGlvblZpZXdNb2RlbC5saW5lTnIgPSBkYXRhLmxpbmVOcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50Q29uZmlybWF0aW9uVmlld01vZGVsLmNvbG9yID0gZGF0YS5jb2xvcjtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgKTtcclxuICAgICAgICBpZiAodGhpcy50cmFuc2FjdGlvbiAmJiB0aGlzLnRyYW5zYWN0aW9uLnRyYW5zYWN0aW9uTGluZXMpIHtcclxuICAgICAgICAgICAgdGhpcy50cmFuc2FjdGlvbkxpbmVzID0gdGhpcy50cmFuc2FjdGlvbi50cmFuc2FjdGlvbkxpbmVzLmZpbHRlcih0bCA9PiB0bC5pc0FydGljbGUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBuZ09uRGVzdHJveSgpIHtcclxuICAgICAgICB0aGlzLl9zdWJzLmZvckVhY2gocyA9PiBzLnVuc3Vic2NyaWJlKCkpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBvcGVuUGRmKCk6IHZvaWQge1xyXG4gICAgICAgIHdpbmRvdy5vcGVuKHRoaXMuX3B1cmNoYXNlQ29uZmlybWF0aW9uU2VydmljZS5hbmFseXplZENvbmZpcm1hdGlvbi5maWxlVXJsLCBcIl9ibGFua1wiKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgaGFuZGxlQ2xlYXJBbmFseXNpcygpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9wdXJjaGFzZUNvbmZpcm1hdGlvblNlcnZpY2UuY29uZmlybWF0aW9uQW5hbHlzaXNJZCA9IHVuZGVmaW5lZDtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgaGFuZGxlRHJhZ1N0YXJ0KGV2ZW50OiBEcmFnRXZlbnQsIGNvbmZpcm1hdGlvblZNOiBDb25maXJtYXRpb25WaWV3TW9kZWwpOiB2b2lkIHtcclxuICAgICAgICBpZiAoY29uZmlybWF0aW9uVk0gJiYgY29uZmlybWF0aW9uVk0uY29uZmlybWF0aW9uKSB7XHJcbiAgICAgICAgICAgIGV2ZW50LmRhdGFUcmFuc2Zlci5kcm9wRWZmZWN0ID0gXCJsaW5rXCI7XHJcbiAgICAgICAgICAgIGV2ZW50LmRhdGFUcmFuc2Zlci5zZXREYXRhKFwib3JkZXJDb25maXJtYXRpb25BbmFseXNpc1wiLCBKU09OLnN0cmluZ2lmeShjb25maXJtYXRpb25WTS5jb25maXJtYXRpb24pKTtcclxuICAgICAgICAgICAgdGhpcy5jdXJyZW50Q29uZmlybWF0aW9uVmlld01vZGVsID0gY29uZmlybWF0aW9uVk07XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5jdXJyZW50Q29uZmlybWF0aW9uVmlld01vZGVsID0gdW5kZWZpbmVkO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgdHJhY2tCeUZuKGluZGV4OiBudW1iZXIsIGxpbmU6IENvbmZpcm1hdGlvblZpZXdNb2RlbCk6IGFueSB7XHJcbiAgICAgICAgcmV0dXJuIGxpbmUuY29uZmlybWF0aW9uLmlkO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBzaG93UG9wdXAoZWxlbWVudDogSFRNTEVsZW1lbnQsIGNvbmZpcm1hdGlvblZNOiBDb25maXJtYXRpb25WaWV3TW9kZWwpOiB2b2lkIHtcclxuICAgICAgICBpZiAoY29uZmlybWF0aW9uVk0gJiYgY29uZmlybWF0aW9uVk0uY29uZmlybWF0aW9uKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY3VycmVudENvbmZpcm1hdGlvblZpZXdNb2RlbCA9IGNvbmZpcm1hdGlvblZNO1xyXG4gICAgICAgICAgICB0aGlzLl9wb3B1cENvbXBvbmVudFJlZiA9IHRoaXMuX292ZXJsYXlTZXJ2aWNlLmNyZWF0ZUNvbXBvbmVudChUcmFuc2FjdGlvbkxpbmVzUG9wdXBDb21wb25lbnQsXHJcbiAgICAgICAgICAgICAge3BhcmVudEZvck92ZXJsYXk6IGVsZW1lbnQsIHRyYW5zYWN0aW9uTGluZXM6IHRoaXMudHJhbnNhY3Rpb25MaW5lc30sIHtcclxuICAgICAgICAgICAgICAgICAgdHJhbnNhY3Rpb25MaW5lQ2xpY2s6IChsaW5lOiBUcmFuc2FjdGlvbkxpbmVJbmZvKSA9PiB0aGlzLl9oYW5kbGVUcmFuc2FjdGlvbkxpbmVDbGljayhsaW5lLCB0aGlzLmN1cnJlbnRDb25maXJtYXRpb25WaWV3TW9kZWwuY29uZmlybWF0aW9uKSxcclxuICAgICAgICAgICAgICAgICAgY2xpY2tPdXRzaWRlOiAoKSA9PiB0aGlzLmhpZGVQb3B1cCgpXHJcbiAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5jdXJyZW50Q29uZmlybWF0aW9uVmlld01vZGVsID0gdW5kZWZpbmVkO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgaGlkZVBvcHVwKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX292ZXJsYXlTZXJ2aWNlLnJlbW92ZUNvbXBvbmVudCh0aGlzLl9wb3B1cENvbXBvbmVudFJlZik7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfaGFuZGxlVHJhbnNhY3Rpb25MaW5lQ2xpY2sobGluZTogVHJhbnNhY3Rpb25MaW5lSW5mbywgY29uZmlybWF0aW9uOiBPcmRlckNvbmZpcm1hdGlvbkFuYWx5c2lzUmVzdWx0KTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5oaWRlUG9wdXAoKTtcclxuICAgICAgICB0aGlzLl9wdXJjaGFzZUNvbmZpcm1hdGlvblNlcnZpY2UubGlua0FuYWx5c2lzVG9UcmFuc2FjdGlvbkxpbmUobGluZSwgY29uZmlybWF0aW9uKTtcclxuICAgIH1cclxufVxyXG4iXX0=
166
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVyY2hhc2UtY29uZmlybWF0aW9uLWxpbmVzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L3B1cmNoYXNlLWNvbmZpcm1hdGlvbi1saW5lcy9wdXJjaGFzZS1jb25maXJtYXRpb24tbGluZXMuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQXFCLFNBQVMsRUFBRSxpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUU1SSxPQUFPLEVBQUMsMkJBQTJCLEVBQUMsTUFBTSw2Q0FBNkMsQ0FBQztBQUN4RixPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUNsRSxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDMUMsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFJaEYsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQzVELE9BQU8sRUFBQyw4QkFBOEIsRUFBQyxNQUFNLDhEQUE4RCxDQUFDO0FBRzVHLE1BQU0sT0FBTyxxQkFBcUI7SUFBbEM7UUFFVyxTQUFJLEdBQVksS0FBSyxDQUFDO0lBR2pDLENBQUM7Q0FBQTtBQXdERCxNQUFNLE9BQU8sa0NBQWtDO0lBc0IzQyxZQUNXLGdCQUFrQyxFQUNqQyw0QkFBeUQsRUFDekQsd0JBQWlELEVBQ2pELGVBQWtDLEVBQ2xDLGVBQStCO1FBSmhDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDakMsaUNBQTRCLEdBQTVCLDRCQUE0QixDQUE2QjtRQUN6RCw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQXlCO1FBQ2pELG9CQUFlLEdBQWYsZUFBZSxDQUFtQjtR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QWUsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVPLDJCQUEyQixDQUFDLElBQXlCLEVBQUUsWUFBNkM7UUFDeEcsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyw0QkFBNEIsQ0FBQyw2QkFBNkIsQ0FBQyxJQUFJLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDeEYsQ0FBQzs7O1lBbEtKLFNBQVMsU0FBQztnQkFDUCxRQUFRLEVBQUUsZ0NBQWdDO2dCQUMxQyxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S0E4Q1Q7Z0JBQ0QsU0FBUyxFQUFFO29CQUNQLGNBQWM7aUJBQ2pCO2dCQUNELGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2FBQ3hDOzs7WUF0RU8sZ0JBQWdCO1lBRGhCLDJCQUEyQjtZQUczQix1QkFBdUI7WUFMdkIsaUJBQWlCO1lBU2pCLGNBQWM7OztvQ0FvRWpCLFNBQVMsU0FBQyxrQkFBa0IsRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUU7MEJBR2xELEtBQUs7d0JBR0wsV0FBVyxTQUFDLHNDQUFzQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgSG9zdEJpbmRpbmcsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgVmlld0NoaWxkLCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7T3JkZXJDb25maXJtYXRpb25BbmFseXNpc1Jlc3VsdH0gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL29yZGVyLWNvbmZpcm1hdGlvbi1hbmFseXNpcy1yZXN1bHQuYm8nO1xyXG5pbXBvcnQge1B1cmNoYXNlQ29uZmlybWF0aW9uU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZS9wdXJjaGFzZS1jb25maXJtYXRpb24uc2VydmljZSc7XHJcbmltcG9ydCB7SWNvbkNhY2hlU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZS9pY29uLWNhY2hlLnNlcnZpY2UnO1xyXG5pbXBvcnQge0ljb259IGZyb20gJy4uLy4uL2VudW0vaWNvbi5lbnVtJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkV2ZW50U2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi1ldmVudC5zZXJ2aWNlJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkluZm9SZXNwb25zZX0gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3RyYW5zYWN0aW9uLWluZm8tcmVzcG9uc2UuYm8nO1xyXG5pbXBvcnQge1N1YnNjcmlwdGlvbn0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25MaW5lSW5mb30gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3RyYW5zYWN0aW9uLWxpbmUtaW5mby5ibyc7XHJcbmltcG9ydCB7T3ZlcmxheVNlcnZpY2V9IGZyb20gJ0Bjb2xpam5pdC9jb3JlY29tcG9uZW50c192MTInO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uTGluZXNQb3B1cENvbXBvbmVudH0gZnJvbSAnLi4vdHJhbnNhY3Rpb24tbGluZXMtcG9wdXAvdHJhbnNhY3Rpb24tbGluZXMtcG9wdXAuY29tcG9uZW50JztcclxuaW1wb3J0IHtPcmRlckNvbmZpcm1hdGlvbkRyb3BwZWR9IGZyb20gJy4uLy4uL2ludGVyZmFjZS9vcmRlci1jb25maXJtYXRpb24tZHJvcHBlZC5pbnRlcmZhY2UnO1xyXG5cclxuZXhwb3J0IGNsYXNzIENvbmZpcm1hdGlvblZpZXdNb2RlbCB7XHJcbiAgICBwdWJsaWMgY29uZmlybWF0aW9uOiBPcmRlckNvbmZpcm1hdGlvbkFuYWx5c2lzUmVzdWx0O1xyXG4gICAgcHVibGljIHRlbXA6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIHB1YmxpYyBsaW5lTnI6IG51bWJlcjtcclxuICAgIHB1YmxpYyBjb2xvcjogc3RyaW5nO1xyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnY28tcHVyY2hhc2UtY29uZmlybWF0aW9uLWxpbmVzJyxcclxuICAgIHRlbXBsYXRlOiBgXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbmZpcm1hdGlvbi1idXR0b24td3JhcHBlclwiPlxyXG4gICAgICAgICAgICA8Y28taWNvbiAqbmdJZj1cImhhc1BkZkZpbGVVcmxcIiBjbGFzcz1cIm9wZW4tY29uZmlybWF0aW9uLXBkZi1pY29uXCIgW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5QZGYpXCJcclxuICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9wZW5QZGYoKVwiPjwvY28taWNvbj5cclxuICAgICAgICAgICAgPGNvLWljb24gY2xhc3M9XCJkZWxldGUtY29uZmlybWF0aW9uLWljb25cIiBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb25zLlRyYXNoQmluKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJoYW5kbGVDbGVhckFuYWx5c2lzKClcIj48L2NvLWljb24+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInB1cmNoYXNlLWNvbmZpcm1hdGlvbi1saW5lcy1kcmFnLWRyb3AtbGlzdFwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicHVyY2hhc2UtY29uZmlybWF0aW9uLXRhYmxlXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZHJhZ2dhYmxlLXB1cmNoYXNlLWNvbmZpcm1hdGlvbi1saW5lXCIgKm5nRm9yPVwibGV0IGNvbmZpcm1hdGlvblZpZXdNb2RlbCBvZiBwdXJjaGFzZUNvbmZpcm1hdGlvbnM7IHRyYWNrQnk6dHJhY2tCeUZuO1wiIGRyYWdnYWJsZT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgIChkcmFnc3RhcnQpPVwiaGFuZGxlRHJhZ1N0YXJ0KCRldmVudCwgY29uZmlybWF0aW9uVmlld01vZGVsKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkcmFnZ2FibGUtY29sb3ItZHJhZ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjb2xvci1kcmFnXCIgW3N0eWxlLmJhY2tncm91bmQtY29sb3JdPVwiY29uZmlybWF0aW9uVmlld01vZGVsLmNvbG9yXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPHNwYW4+PGNvLWljb24gY2xhc3M9XCJwdXJjaGFzZS1jb25maXJtYXRpb24tbGluZS1kcmFnLWhhbmRsZVwiIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24oaWNvbnMuR3JpcERvdHNWZXJ0aWNhbFNvbGlkKVwiPjwvY28taWNvbj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRyYWdnYWJsZS1jb250ZW50LWxpbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkcmFnZ2FibGUtdG9wLWxpbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJkcmFnZ2FibGUtZGVzY3JpcHRpb25cIiBbdGV4dENvbnRlbnRdPVwiY29uZmlybWF0aW9uVmlld01vZGVsLmNvbmZpcm1hdGlvbi5wcm9kdWN0RGVzY3JpcHRpb25cIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkcmFnZ2FibGUtc3VwcGxpZXItY29kZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIFt0ZXh0Q29udGVudF09XCInU1VQUExJRVJOUl9BUlRJQ0xFJyB8IGxvY2FsaXplXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIFt0ZXh0Q29udGVudF09XCJjb25maXJtYXRpb25WaWV3TW9kZWwuY29uZmlybWF0aW9uLnN1cHBsaWVyUHJvZHVjdENvZGVcIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZHJhZ2dhYmxlLWJvdHRvbS1saW5lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkcmFnZ2FibGUtZGVsaXZlcnlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgW3RleHRDb250ZW50XT1cIidERUxJVkVSWV9EQVRFJyB8IGxvY2FsaXplXCI+PC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImRyYWdnYWJsZS1kZWxpdmVyeVwiIFt0ZXh0Q29udGVudF09XCJjb25maXJtYXRpb25WaWV3TW9kZWwuY29uZmlybWF0aW9uLmRlbGl2ZXJ5RGF0ZSB8IGRhdGU6ICdkZC1NTS15eXl5J1wiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkcmFnZ2FibGUtcXVhbnRpdHlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgW3RleHRDb250ZW50XT1cIidRVUFOVElUWScgfCBsb2NhbGl6ZVwiPjwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJkcmFnZ2FibGUtcXVhbnRpdHlcIiBbdGV4dENvbnRlbnRdPVwiY29uZmlybWF0aW9uVmlld01vZGVsLmNvbmZpcm1hdGlvbi5wcm9kdWN0UXVhbnRpdHlcIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZHJhZ2dhYmxlLXByaWNlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIFt0ZXh0Q29udGVudF09XCInUFJJQ0UnIHwgbG9jYWxpemVcIj48L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZHJhZ2dhYmxlLXByaWNlXCIgW3RleHRDb250ZW50XT1cImNvbmZpcm1hdGlvblZpZXdNb2RlbC5jb25maXJtYXRpb24ucHJpY2UgfCBjb0N1cnJlbmN5XCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgI3BhcmVudEZvck92ZXJsYXkgY2xhc3M9XCJsaW5rLWJ1dHRvblwiIChjbGljayk9XCJzaG93UG9wdXAocGFyZW50Rm9yT3ZlcmxheSwgY29uZmlybWF0aW9uVmlld01vZGVsKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGNvLWJ1dHRvbiBjbGFzcz1cImFjdGlvbi1tZW51LWJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24oaWNvbnMuRWxsaXBzaXNMaWdodClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvY28tYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgYCxcclxuICAgIHByb3ZpZGVyczogW1xyXG4gICAgICAgIE92ZXJsYXlTZXJ2aWNlXHJcbiAgICBdLFxyXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgUHVyY2hhc2VDb25maXJtYXRpb25MaW5lc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICAgIHB1YmxpYyByZWFkb25seSBpY29uczogdHlwZW9mIEljb24gPSBJY29uO1xyXG5cclxuICAgIEBWaWV3Q2hpbGQoJ3BhcmVudEZvck92ZXJsYXknLCB7IHJlYWQ6IEVsZW1lbnRSZWYgfSlcclxuICAgIHB1YmxpYyBwYXJlbnRFbGVtZW50Rm9yUG9wdXA6IEVsZW1lbnRSZWY7XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyB0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb25JbmZvUmVzcG9uc2U7XHJcblxyXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5jby1wdXJjaGFzZS1jb25maXJtYXRpb24tbGluZXMnKVxyXG4gICAgcHVibGljIHNob3dDbGFzcygpIHtcclxuICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgcHVyY2hhc2VDb25maXJtYXRpb25zOiBDb25maXJtYXRpb25WaWV3TW9kZWxbXSA9IFtdO1xyXG4gICAgcHVibGljIGN1cnJlbnRDb25maXJtYXRpb25WaWV3TW9kZWw6IENvbmZpcm1hdGlvblZpZXdNb2RlbDtcclxuICAgIHB1YmxpYyB0cmFuc2FjdGlvbkxpbmVzOiBUcmFuc2FjdGlvbkxpbmVJbmZvW10gPSBbXTtcclxuICAgIHB1YmxpYyBoYXNQZGZGaWxlVXJsOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gICAgcHJpdmF0ZSBfc3ViczogU3Vic2NyaXB0aW9uW10gPSBbXTtcclxuICAgIHByaXZhdGUgX3BvcHVwQ29tcG9uZW50UmVmO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHB1YmxpYyBpY29uQ2FjaGVTZXJ2aWNlOiBJY29uQ2FjaGVTZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgX3B1cmNoYXNlQ29uZmlybWF0aW9uU2VydmljZTogUHVyY2hhc2VDb25maXJtYXRpb25TZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgX3RyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlOiBUcmFuc2FjdGlvbkV2ZW50U2VydmljZSxcclxuICAgICAgICBwcml2YXRlIF9jaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICAgICAgcHJpdmF0ZSBfb3ZlcmxheVNlcnZpY2U6IE92ZXJsYXlTZXJ2aWNlXHJcbiAgICApIHtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uSW5pdCgpIHtcclxuICAgICAgICB0aGlzLl9zdWJzLnB1c2goXHJcbiAgICAgICAgICAgIHRoaXMuX3B1cmNoYXNlQ29uZmlybWF0aW9uU2VydmljZS5jb25maXJtYXRpb25OZWVkZWQuc3Vic2NyaWJlKChuZWVkZWQ6IGJvb2xlYW4pID0+IHtcclxuICAgICAgICAgICAgICAgIGlmIChuZWVkZWQpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnB1cmNoYXNlQ29uZmlybWF0aW9ucy5sZW5ndGggPSAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX3B1cmNoYXNlQ29uZmlybWF0aW9uU2VydmljZS5jb25maXJtYXRpb25BbmFseXNpc1Jlc3VsdC5mb3JFYWNoKGNhID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgdmlld01vZGVsOiBDb25maXJtYXRpb25WaWV3TW9kZWwgPSBuZXcgQ29uZmlybWF0aW9uVmlld01vZGVsKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdNb2RlbC5jb25maXJtYXRpb24gPSBjYTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5wdXJjaGFzZUNvbmZpcm1hdGlvbnMucHVzaCh2aWV3TW9kZWwpO1xyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaGFzUGRmRmlsZVVybCA9IHRoaXMuX3B1cmNoYXNlQ29uZmlybWF0aW9uU2VydmljZS5hbmFseXplZENvbmZpcm1hdGlvbiAmJlxyXG4gICAgICAgICAgICAgICAgICAgICAgdGhpcy5fcHVyY2hhc2VDb25maXJtYXRpb25TZXJ2aWNlLmFuYWx5emVkQ29uZmlybWF0aW9uLmZpbGVVcmwgIT09IG51bGwgJiZcclxuICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX3B1cmNoYXNlQ29uZmlybWF0aW9uU2VydmljZS5hbmFseXplZENvbmZpcm1hdGlvbi5maWxlVXJsICE9PSB1bmRlZmluZWQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgICB0aGlzLl90cmFuc2FjdGlvbkV2ZW50U2VydmljZS5vcmRlckNvbmZpcm1hdGlvbkRyb3BwZWQuc3Vic2NyaWJlKChkYXRhOiBPcmRlckNvbmZpcm1hdGlvbkRyb3BwZWQpID0+IHtcclxuICAgICAgICAgICAgICAgIGlmIChkYXRhKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wdXJjaGFzZUNvbmZpcm1hdGlvbnMuZmlsdGVyKHAgPT4gcC5saW5lTnIgPT09IGRhdGEubGluZU5yKS5mb3JFYWNoKHAgPT4gcC5jb2xvciA9IFwiXCIpO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLmN1cnJlbnRDb25maXJtYXRpb25WaWV3TW9kZWwpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50Q29uZmlybWF0aW9uVmlld01vZGVsLmxpbmVOciA9IGRhdGEubGluZU5yO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRDb25maXJtYXRpb25WaWV3TW9kZWwuY29sb3IgPSBkYXRhLmNvbG9yO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSlcclxuICAgICAgICApO1xyXG4gICAgICAgIGlmICh0aGlzLnRyYW5zYWN0aW9uICYmIHRoaXMudHJhbnNhY3Rpb24udHJhbnNhY3Rpb25MaW5lcykge1xyXG4gICAgICAgICAgICB0aGlzLnRyYW5zYWN0aW9uTGluZXMgPSB0aGlzLnRyYW5zYWN0aW9uLnRyYW5zYWN0aW9uTGluZXMuZmlsdGVyKHRsID0+IHRsLmlzQXJ0aWNsZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIG5nT25EZXN0cm95KCkge1xyXG4gICAgICAgIHRoaXMuX3N1YnMuZm9yRWFjaChzID0+IHMudW5zdWJzY3JpYmUoKSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIG9wZW5QZGYoKTogdm9pZCB7XHJcbiAgICAgICAgd2luZG93Lm9wZW4odGhpcy5fcHVyY2hhc2VDb25maXJtYXRpb25TZXJ2aWNlLmFuYWx5emVkQ29uZmlybWF0aW9uLmZpbGVVcmwsIFwiX2JsYW5rXCIpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBoYW5kbGVDbGVhckFuYWx5c2lzKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX3B1cmNoYXNlQ29uZmlybWF0aW9uU2VydmljZS5jb25maXJtYXRpb25BbmFseXNpc0lkID0gdW5kZWZpbmVkO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBoYW5kbGVEcmFnU3RhcnQoZXZlbnQ6IERyYWdFdmVudCwgY29uZmlybWF0aW9uVk06IENvbmZpcm1hdGlvblZpZXdNb2RlbCk6IHZvaWQge1xyXG4gICAgICAgIGlmIChjb25maXJtYXRpb25WTSAmJiBjb25maXJtYXRpb25WTS5jb25maXJtYXRpb24pIHtcclxuICAgICAgICAgICAgZXZlbnQuZGF0YVRyYW5zZmVyLmRyb3BFZmZlY3QgPSBcImxpbmtcIjtcclxuICAgICAgICAgICAgZXZlbnQuZGF0YVRyYW5zZmVyLnNldERhdGEoXCJvcmRlckNvbmZpcm1hdGlvbkFuYWx5c2lzXCIsIEpTT04uc3RyaW5naWZ5KGNvbmZpcm1hdGlvblZNLmNvbmZpcm1hdGlvbikpO1xyXG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRDb25maXJtYXRpb25WaWV3TW9kZWwgPSBjb25maXJtYXRpb25WTTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRDb25maXJtYXRpb25WaWV3TW9kZWwgPSB1bmRlZmluZWQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyB0cmFja0J5Rm4oaW5kZXg6IG51bWJlciwgbGluZTogQ29uZmlybWF0aW9uVmlld01vZGVsKTogYW55IHtcclxuICAgICAgICByZXR1cm4gbGluZS5jb25maXJtYXRpb24uaWQ7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIHNob3dQb3B1cChlbGVtZW50OiBIVE1MRWxlbWVudCwgY29uZmlybWF0aW9uVk06IENvbmZpcm1hdGlvblZpZXdNb2RlbCk6IHZvaWQge1xyXG4gICAgICAgIGlmIChjb25maXJtYXRpb25WTSAmJiBjb25maXJtYXRpb25WTS5jb25maXJtYXRpb24pIHtcclxuICAgICAgICAgICAgdGhpcy5jdXJyZW50Q29uZmlybWF0aW9uVmlld01vZGVsID0gY29uZmlybWF0aW9uVk07XHJcbiAgICAgICAgICAgIHRoaXMuX3BvcHVwQ29tcG9uZW50UmVmID0gdGhpcy5fb3ZlcmxheVNlcnZpY2UuY3JlYXRlQ29tcG9uZW50KFRyYW5zYWN0aW9uTGluZXNQb3B1cENvbXBvbmVudCxcclxuICAgICAgICAgICAgICB7cGFyZW50Rm9yT3ZlcmxheTogZWxlbWVudCwgdHJhbnNhY3Rpb25MaW5lczogdGhpcy50cmFuc2FjdGlvbkxpbmVzfSwge1xyXG4gICAgICAgICAgICAgICAgICB0cmFuc2FjdGlvbkxpbmVDbGljazogKGxpbmU6IFRyYW5zYWN0aW9uTGluZUluZm8pID0+IHRoaXMuX2hhbmRsZVRyYW5zYWN0aW9uTGluZUNsaWNrKGxpbmUsIHRoaXMuY3VycmVudENvbmZpcm1hdGlvblZpZXdNb2RlbC5jb25maXJtYXRpb24pLFxyXG4gICAgICAgICAgICAgICAgICBjbGlja091dHNpZGU6ICgpID0+IHRoaXMuaGlkZVBvcHVwKClcclxuICAgICAgICAgICAgICB9KTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRDb25maXJtYXRpb25WaWV3TW9kZWwgPSB1bmRlZmluZWQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBoaWRlUG9wdXAoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fb3ZlcmxheVNlcnZpY2UucmVtb3ZlQ29tcG9uZW50KHRoaXMuX3BvcHVwQ29tcG9uZW50UmVmKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9oYW5kbGVUcmFuc2FjdGlvbkxpbmVDbGljayhsaW5lOiBUcmFuc2FjdGlvbkxpbmVJbmZvLCBjb25maXJtYXRpb246IE9yZGVyQ29uZmlybWF0aW9uQW5hbHlzaXNSZXN1bHQpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmhpZGVQb3B1cCgpO1xyXG4gICAgICAgIHRoaXMuX3B1cmNoYXNlQ29uZmlybWF0aW9uU2VydmljZS5saW5rQW5hbHlzaXNUb1RyYW5zYWN0aW9uTGluZShsaW5lLCBjb25maXJtYXRpb24pO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -4,7 +4,7 @@ import { PurchaseConfirmationLinesComponent } from './purchase-confirmation-line
4
4
  import { PipeModule } from '../../pipe/pipe.module';
5
5
  import { DragDropModule } from '@angular/cdk/drag-drop';
6
6
  import { TransactionLinesPopupModule } from '../transaction-lines-popup/transaction-lines-popup.module';
7
- import { IconModule } from '@colijnit/corecomponents_v12';
7
+ import { ButtonModule, IconModule } from '@colijnit/corecomponents_v12';
8
8
  export class PurchaseConfirmationLinesModule {
9
9
  }
10
10
  PurchaseConfirmationLinesModule.decorators = [
@@ -14,7 +14,8 @@ PurchaseConfirmationLinesModule.decorators = [
14
14
  PipeModule,
15
15
  DragDropModule,
16
16
  IconModule,
17
- TransactionLinesPopupModule
17
+ TransactionLinesPopupModule,
18
+ ButtonModule
18
19
  ],
19
20
  declarations: [
20
21
  PurchaseConfirmationLinesComponent
@@ -24,4 +25,4 @@ PurchaseConfirmationLinesModule.decorators = [
24
25
  ]
25
26
  },] }
26
27
  ];
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVyY2hhc2UtY29uZmlybWF0aW9uLWxpbmVzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L3B1cmNoYXNlLWNvbmZpcm1hdGlvbi1saW5lcy9wdXJjaGFzZS1jb25maXJtYXRpb24tbGluZXMubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyxrQ0FBa0MsRUFBQyxNQUFNLHlDQUF5QyxDQUFDO0FBQzNGLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUNsRCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDdEQsT0FBTyxFQUFDLDJCQUEyQixFQUFDLE1BQU0sMkRBQTJELENBQUM7QUFDdEcsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBaUJ4RCxNQUFNLE9BQU8sK0JBQStCOzs7WUFmM0MsUUFBUSxTQUFDO2dCQUNOLE9BQU8sRUFBRTtvQkFDTCxZQUFZO29CQUNaLFVBQVU7b0JBQ1YsY0FBYztvQkFDZCxVQUFVO29CQUNWLDJCQUEyQjtpQkFDOUI7Z0JBQ0QsWUFBWSxFQUFFO29CQUNWLGtDQUFrQztpQkFDckM7Z0JBQ0QsT0FBTyxFQUFFO29CQUNMLGtDQUFrQztpQkFDckM7YUFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TmdNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHtQdXJjaGFzZUNvbmZpcm1hdGlvbkxpbmVzQ29tcG9uZW50fSBmcm9tICcuL3B1cmNoYXNlLWNvbmZpcm1hdGlvbi1saW5lcy5jb21wb25lbnQnO1xyXG5pbXBvcnQge1BpcGVNb2R1bGV9IGZyb20gJy4uLy4uL3BpcGUvcGlwZS5tb2R1bGUnO1xyXG5pbXBvcnQge0RyYWdEcm9wTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkxpbmVzUG9wdXBNb2R1bGV9IGZyb20gJy4uL3RyYW5zYWN0aW9uLWxpbmVzLXBvcHVwL3RyYW5zYWN0aW9uLWxpbmVzLXBvcHVwLm1vZHVsZSc7XHJcbmltcG9ydCB7SWNvbk1vZHVsZX0gZnJvbSAnQGNvbGlqbml0L2NvcmVjb21wb25lbnRzX3YxMic7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gICAgaW1wb3J0czogW1xyXG4gICAgICAgIENvbW1vbk1vZHVsZSxcclxuICAgICAgICBQaXBlTW9kdWxlLFxyXG4gICAgICAgIERyYWdEcm9wTW9kdWxlLFxyXG4gICAgICAgIEljb25Nb2R1bGUsXHJcbiAgICAgICAgVHJhbnNhY3Rpb25MaW5lc1BvcHVwTW9kdWxlXHJcbiAgICBdLFxyXG4gICAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICAgICAgUHVyY2hhc2VDb25maXJtYXRpb25MaW5lc0NvbXBvbmVudFxyXG4gICAgXSxcclxuICAgIGV4cG9ydHM6IFtcclxuICAgICAgICBQdXJjaGFzZUNvbmZpcm1hdGlvbkxpbmVzQ29tcG9uZW50XHJcbiAgICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQdXJjaGFzZUNvbmZpcm1hdGlvbkxpbmVzTW9kdWxlIHtcclxufVxyXG4iXX0=
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVyY2hhc2UtY29uZmlybWF0aW9uLWxpbmVzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L3B1cmNoYXNlLWNvbmZpcm1hdGlvbi1saW5lcy9wdXJjaGFzZS1jb25maXJtYXRpb24tbGluZXMubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyxrQ0FBa0MsRUFBQyxNQUFNLHlDQUF5QyxDQUFDO0FBQzNGLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUNsRCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDdEQsT0FBTyxFQUFDLDJCQUEyQixFQUFDLE1BQU0sMkRBQTJELENBQUM7QUFDdEcsT0FBTyxFQUFDLFlBQVksRUFBRSxVQUFVLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQWtCdEUsTUFBTSxPQUFPLCtCQUErQjs7O1lBaEIzQyxRQUFRLFNBQUM7Z0JBQ04sT0FBTyxFQUFFO29CQUNMLFlBQVk7b0JBQ1osVUFBVTtvQkFDVixjQUFjO29CQUNkLFVBQVU7b0JBQ1YsMkJBQTJCO29CQUMzQixZQUFZO2lCQUNmO2dCQUNELFlBQVksRUFBRTtvQkFDVixrQ0FBa0M7aUJBQ3JDO2dCQUNELE9BQU8sRUFBRTtvQkFDTCxrQ0FBa0M7aUJBQ3JDO2FBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge05nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7UHVyY2hhc2VDb25maXJtYXRpb25MaW5lc0NvbXBvbmVudH0gZnJvbSAnLi9wdXJjaGFzZS1jb25maXJtYXRpb24tbGluZXMuY29tcG9uZW50JztcclxuaW1wb3J0IHtQaXBlTW9kdWxlfSBmcm9tICcuLi8uLi9waXBlL3BpcGUubW9kdWxlJztcclxuaW1wb3J0IHtEcmFnRHJvcE1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RyYWctZHJvcCc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25MaW5lc1BvcHVwTW9kdWxlfSBmcm9tICcuLi90cmFuc2FjdGlvbi1saW5lcy1wb3B1cC90cmFuc2FjdGlvbi1saW5lcy1wb3B1cC5tb2R1bGUnO1xyXG5pbXBvcnQge0J1dHRvbk1vZHVsZSwgSWNvbk1vZHVsZX0gZnJvbSAnQGNvbGlqbml0L2NvcmVjb21wb25lbnRzX3YxMic7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gICAgaW1wb3J0czogW1xyXG4gICAgICAgIENvbW1vbk1vZHVsZSxcclxuICAgICAgICBQaXBlTW9kdWxlLFxyXG4gICAgICAgIERyYWdEcm9wTW9kdWxlLFxyXG4gICAgICAgIEljb25Nb2R1bGUsXHJcbiAgICAgICAgVHJhbnNhY3Rpb25MaW5lc1BvcHVwTW9kdWxlLFxyXG4gICAgICAgIEJ1dHRvbk1vZHVsZVxyXG4gICAgXSxcclxuICAgIGRlY2xhcmF0aW9uczogW1xyXG4gICAgICAgIFB1cmNoYXNlQ29uZmlybWF0aW9uTGluZXNDb21wb25lbnRcclxuICAgIF0sXHJcbiAgICBleHBvcnRzOiBbXHJcbiAgICAgICAgUHVyY2hhc2VDb25maXJtYXRpb25MaW5lc0NvbXBvbmVudFxyXG4gICAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgUHVyY2hhc2VDb25maXJtYXRpb25MaW5lc01vZHVsZSB7XHJcbn1cclxuIl19
@@ -24,12 +24,17 @@ export class TransactionLineWarehouseLocationComponent extends TransactionFilter
24
24
  this.checkField = 'locationNr';
25
25
  this.propsForLabel = [{ label: 'locationNo' }, { label: 'description' }];
26
26
  }
27
+ set warehouseNr(value) {
28
+ this._warehouseNr = value;
29
+ if (this._warehouseNr !== null && this._warehouseNr !== undefined) {
30
+ this._getLocations();
31
+ }
32
+ }
33
+ get warehouseNr() {
34
+ return this._warehouseNr;
35
+ }
27
36
  ngOnInit() {
28
37
  this.viewModels.length = 0;
29
- this._articleService.getWarehouseLocations(this.warehouseNr).then((locations) => {
30
- this.collection = locations.slice();
31
- this.detectChanges();
32
- });
33
38
  }
34
39
  commit(locationNr) {
35
40
  return __awaiter(this, void 0, void 0, function* () {
@@ -37,6 +42,12 @@ export class TransactionLineWarehouseLocationComponent extends TransactionFilter
37
42
  return true;
38
43
  });
39
44
  }
45
+ _getLocations() {
46
+ this._articleService.getWarehouseLocations(this._warehouseNr).then((locations) => {
47
+ this.collection = locations.slice();
48
+ this.detectChanges();
49
+ });
50
+ }
40
51
  }
41
52
  TransactionLineWarehouseLocationComponent.decorators = [
42
53
  { type: Component, args: [{
@@ -65,4 +76,4 @@ TransactionLineWarehouseLocationComponent.ctorParameters = () => [
65
76
  TransactionLineWarehouseLocationComponent.propDecorators = {
66
77
  warehouseNr: [{ type: Input }]
67
78
  };
68
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tbGluZS13YXJlaG91c2UtbG9jYXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJhbnNhY3Rpb24vc3JjL2xpYi9jb21wb25lbnQvdHJhbnNhY3Rpb24tbGluZS1maWVsZHMvdHJhbnNhY3Rpb24tbGluZS13YXJlaG91c2UtbG9jYXRpb24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUU3RixPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFDN0QsT0FBTyxFQUFDLG1DQUFtQyxFQUFDLE1BQU0sc0RBQXNELENBQUM7QUFDekcsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDckUsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDaEYsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDbEUsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFFaEYsT0FBTyxFQUFDLHFDQUFxQyxFQUFDLE1BQU0sd0RBQXdELENBQUM7QUFjN0csYUFBYTtBQUNiLE1BQU0sT0FBTyx5Q0FBMEMsU0FBUSxtQ0FBa0Q7SUFVL0csWUFDUyx1QkFBZ0QsRUFDaEQsT0FBMkIsRUFDM0IsZ0JBQWtDLEVBQ2xDLHFDQUE0RSxFQUN6RSxpQkFBb0MsRUFDcEMsWUFBcUMsRUFDckMsY0FBaUMsRUFDbkMsZUFBK0I7UUFFdkMsS0FBSyxDQUFDLHVCQUF1QixFQUFFLGdCQUFnQixFQUFFLHFDQUFxQyxFQUFFLFlBQVksRUFBRSxpQkFBaUIsRUFBRSxPQUFPLEVBQUUsY0FBYyxDQUFDLENBQUM7UUFUM0ksNEJBQXVCLEdBQXZCLHVCQUF1QixDQUF5QjtRQUNoRCxZQUFPLEdBQVAsT0FBTyxDQUFvQjtRQUMzQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLDBDQUFxQyxHQUFyQyxxQ0FBcUMsQ0FBdUM7UUFDekUsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUNwQyxpQkFBWSxHQUFaLFlBQVksQ0FBeUI7UUFDckMsbUJBQWMsR0FBZCxjQUFjLENBQW1CO1FBQ25DLG9CQUFlLEdBQWYsZUFBZSxDQUFnQjtRQVovQixjQUFTLEdBQVcsWUFBWSxDQUFDO1FBQ2pDLGVBQVUsR0FBVyxZQUFZLENBQUM7UUFDbEMsa0JBQWEsR0FBb0MsQ0FBQyxFQUFDLEtBQUssRUFBRSxZQUFZLEVBQUMsRUFBRSxFQUFDLEtBQUssRUFBRSxhQUFhLEVBQUMsQ0FBQyxDQUFDO0lBYTNHLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1FBQzNCLElBQUksQ0FBQyxlQUFlLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLFNBQTBCLEVBQUUsRUFBRTtZQUMvRixJQUFJLENBQUMsVUFBVSxHQUFHLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNwQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDdkIsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRVksTUFBTSxDQUFDLFVBQWtCOztZQUNwQyxJQUFJLENBQUMsZUFBZSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7WUFDN0MsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO0tBQUE7OztZQS9DRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLHdDQUF3QztnQkFDbEQsUUFBUSxFQUFFOzs7Ozs7O0dBT1Q7Z0JBQ0QsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7YUFDdEM7OztZQWpCTyx1QkFBdUI7WUFGdkIsa0JBQWtCO1lBR2xCLGdCQUFnQjtZQUdoQixxQ0FBcUM7WUFMckMsaUJBQWlCO1lBR2pCLHVCQUF1QjtZQVJ2QixpQkFBaUI7WUFFakIsY0FBYzs7OzBCQXlCbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCwgVmlld0VuY2Fwc3VsYXRpb259IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1N0b2NrTG9jYXRpb259IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL3N0b2NrLWxvY2F0aW9uLmJvJztcclxuaW1wb3J0IHtBcnRpY2xlU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZS9hcnRpY2xlLnNlcnZpY2UnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uRmlsdGVyUG9wdXBCYXNlQ29tcG9uZW50fSBmcm9tICcuLi9jb3JlL2Jhc2UvdHJhbnNhY3Rpb24tZmlsdGVyLXBvcHVwLWJhc2UuY29tcG9uZW50JztcclxuaW1wb3J0IHtUcmFuc2FjdGlvblNlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24uc2VydmljZSc7XHJcbmltcG9ydCB7RGljdGlvbmFyeVNlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2UvZGljdGlvbmFyeS5zZXJ2aWNlJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkV2ZW50U2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi1ldmVudC5zZXJ2aWNlJztcclxuaW1wb3J0IHtJY29uQ2FjaGVTZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlL2ljb24tY2FjaGUuc2VydmljZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25JbWFnZVNlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24taW1hZ2Uuc2VydmljZSc7XHJcbmltcG9ydCB7Q2hlY2tib3hMaXN0UHJvcGVydHlJbnRlcmZhY2V9IGZyb20gJy4uLy4uL2ludGVyZmFjZS9jaGVja2JveC1saXN0LXByb3BlcnR5LmludGVyZmFjZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25TY3JlZW5Db25maWd1cmF0aW9uU2VydmljZX0gZnJvbSBcIi4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24tc2NyZWVuLWNvbmZpZ3VyYXRpb24uc2VydmljZVwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFwiY28tdHJhbnNhY3Rpb24tbGluZS13YXJlaG91c2UtbG9jYXRpb25cIixcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGNvLXRyYW5zYWN0aW9uLWxpbmUtY2hlY2tib3gtbGlzdFxyXG4gICAgICBbY29tbWl0dGluZ109XCJjb21taXR0aW5nXCJcclxuICAgICAgW2NvbGxlY3Rpb25dPVwidmlld01vZGVsc0ZpbHRlcmVkXCJcclxuICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcclxuICAgICAgKGNoZWNrZWQpPVwiaGFuZGxlQ2hlY2tlZCgkZXZlbnQpXCJcclxuICAgID48L2NvLXRyYW5zYWN0aW9uLWxpbmUtY2hlY2tib3gtbGlzdD5cclxuICBgLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuLy8gQHRzLWlnbm9yZVxyXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25MaW5lV2FyZWhvdXNlTG9jYXRpb25Db21wb25lbnQgZXh0ZW5kcyBUcmFuc2FjdGlvbkZpbHRlclBvcHVwQmFzZUNvbXBvbmVudDxTdG9ja0xvY2F0aW9uPiBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHdhcmVob3VzZU5yOiBudW1iZXI7XHJcblxyXG5cclxuICBwcm90ZWN0ZWQgY29kZUZpZWxkOiBzdHJpbmcgPSAnbG9jYXRpb25Obyc7XHJcbiAgcHJvdGVjdGVkIGNoZWNrRmllbGQ6IHN0cmluZyA9ICdsb2NhdGlvbk5yJztcclxuICBwcm90ZWN0ZWQgcHJvcHNGb3JMYWJlbDogQ2hlY2tib3hMaXN0UHJvcGVydHlJbnRlcmZhY2VbXSA9IFt7bGFiZWw6ICdsb2NhdGlvbk5vJ30sIHtsYWJlbDogJ2Rlc2NyaXB0aW9uJ31dO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyB0cmFuc2FjdGlvbkV2ZW50U2VydmljZTogVHJhbnNhY3Rpb25FdmVudFNlcnZpY2UsXHJcbiAgICBwdWJsaWMgc2VydmljZTogVHJhbnNhY3Rpb25TZXJ2aWNlLFxyXG4gICAgcHVibGljIGljb25DYWNoZVNlcnZpY2U6IEljb25DYWNoZVNlcnZpY2UsXHJcbiAgICBwdWJsaWMgdHJhbnNhY3Rpb25TY3JlZW5Db25maWd1cmF0aW9uU2VydmljZTogVHJhbnNhY3Rpb25TY3JlZW5Db25maWd1cmF0aW9uU2VydmljZSxcclxuICAgIHByb3RlY3RlZCBkaWN0aW9uYXJ5U2VydmljZTogRGljdGlvbmFyeVNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgaW1hZ2VTZXJ2aWNlOiBUcmFuc2FjdGlvbkltYWdlU2VydmljZSxcclxuICAgIHByb3RlY3RlZCBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwcml2YXRlIF9hcnRpY2xlU2VydmljZTogQXJ0aWNsZVNlcnZpY2VcclxuICApIHtcclxuICAgIHN1cGVyKHRyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlLCBpY29uQ2FjaGVTZXJ2aWNlLCB0cmFuc2FjdGlvblNjcmVlbkNvbmZpZ3VyYXRpb25TZXJ2aWNlLCBpbWFnZVNlcnZpY2UsIGRpY3Rpb25hcnlTZXJ2aWNlLCBzZXJ2aWNlLCBjaGFuZ2VEZXRlY3Rvcik7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMudmlld01vZGVscy5sZW5ndGggPSAwO1xyXG4gICAgdGhpcy5fYXJ0aWNsZVNlcnZpY2UuZ2V0V2FyZWhvdXNlTG9jYXRpb25zKHRoaXMud2FyZWhvdXNlTnIpLnRoZW4oKGxvY2F0aW9uczogU3RvY2tMb2NhdGlvbltdKSA9PiB7XHJcbiAgICAgIHRoaXMuY29sbGVjdGlvbiA9IGxvY2F0aW9ucy5zbGljZSgpO1xyXG4gICAgICB0aGlzLmRldGVjdENoYW5nZXMoKTtcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgY29tbWl0KGxvY2F0aW9uTnI6IHN0cmluZyk6IFByb21pc2U8Ym9vbGVhbj4ge1xyXG4gICAgdGhpcy50cmFuc2FjdGlvbkxpbmUubG9jYXRpb25OciA9IGxvY2F0aW9uTnI7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcbn1cclxuIl19
79
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tbGluZS13YXJlaG91c2UtbG9jYXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJhbnNhY3Rpb24vc3JjL2xpYi9jb21wb25lbnQvdHJhbnNhY3Rpb24tbGluZS1maWVsZHMvdHJhbnNhY3Rpb24tbGluZS13YXJlaG91c2UtbG9jYXRpb24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUU3RixPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFDN0QsT0FBTyxFQUFDLG1DQUFtQyxFQUFDLE1BQU0sc0RBQXNELENBQUM7QUFDekcsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDckUsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDaEYsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDbEUsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFFaEYsT0FBTyxFQUFDLHFDQUFxQyxFQUFDLE1BQU0sd0RBQXdELENBQUM7QUFjN0csYUFBYTtBQUNiLE1BQU0sT0FBTyx5Q0FBMEMsU0FBUSxtQ0FBa0Q7SUFvQi9HLFlBQ1MsdUJBQWdELEVBQ2hELE9BQTJCLEVBQzNCLGdCQUFrQyxFQUNsQyxxQ0FBNEUsRUFDekUsaUJBQW9DLEVBQ3BDLFlBQXFDLEVBQ3JDLGNBQWlDLEVBQ25DLGVBQStCO1FBRXZDLEtBQUssQ0FBQyx1QkFBdUIsRUFBRSxnQkFBZ0IsRUFBRSxxQ0FBcUMsRUFBRSxZQUFZLEVBQUUsaUJBQWlCLEVBQUUsT0FBTyxFQUFFLGNBQWMsQ0FBQyxDQUFDO1FBVDNJLDRCQUF1QixHQUF2Qix1QkFBdUIsQ0FBeUI7UUFDaEQsWUFBTyxHQUFQLE9BQU8sQ0FBb0I7UUFDM0IscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQywwQ0FBcUMsR0FBckMscUNBQXFDLENBQXVDO1FBQ3pFLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFDcEMsaUJBQVksR0FBWixZQUFZLENBQXlCO1FBQ3JDLG1CQUFjLEdBQWQsY0FBYyxDQUFtQjtRQUNuQyxvQkFBZSxHQUFmLGVBQWUsQ0FBZ0I7UUFkL0IsY0FBUyxHQUFXLFlBQVksQ0FBQztRQUNqQyxlQUFVLEdBQVcsWUFBWSxDQUFDO1FBQ2xDLGtCQUFhLEdBQW9DLENBQUMsRUFBQyxLQUFLLEVBQUUsWUFBWSxFQUFDLEVBQUUsRUFBQyxLQUFLLEVBQUUsYUFBYSxFQUFDLENBQUMsQ0FBQztJQWUzRyxDQUFDO0lBN0JELElBQ1csV0FBVyxDQUFDLEtBQWE7UUFDbEMsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUM7UUFDMUIsSUFBSSxJQUFJLENBQUMsWUFBWSxLQUFLLElBQUksSUFBSSxJQUFJLENBQUMsWUFBWSxLQUFLLFNBQVMsRUFBRTtZQUNqRSxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7U0FDdEI7SUFDSCxDQUFDO0lBRUQsSUFBVyxXQUFXO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUMzQixDQUFDO0lBcUJELFFBQVE7UUFDTixJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUVZLE1BQU0sQ0FBQyxVQUFrQjs7WUFDcEMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO1lBQzdDLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztLQUFBO0lBRU8sYUFBYTtRQUNuQixJQUFJLENBQUMsZUFBZSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxTQUEwQixFQUFFLEVBQUU7WUFDaEcsSUFBSSxDQUFDLFVBQVUsR0FBRyxTQUFTLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDcEMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3ZCLENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQzs7O1lBNURGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsd0NBQXdDO2dCQUNsRCxRQUFRLEVBQUU7Ozs7Ozs7R0FPVDtnQkFDRCxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTthQUN0Qzs7O1lBakJPLHVCQUF1QjtZQUZ2QixrQkFBa0I7WUFHbEIsZ0JBQWdCO1lBR2hCLHFDQUFxQztZQUxyQyxpQkFBaUI7WUFHakIsdUJBQXVCO1lBUnZCLGlCQUFpQjtZQUVqQixjQUFjOzs7MEJBeUJuQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0LCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7U3RvY2tMb2NhdGlvbn0gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvc3RvY2stbG9jYXRpb24uYm8nO1xyXG5pbXBvcnQge0FydGljbGVTZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlL2FydGljbGUuc2VydmljZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25GaWx0ZXJQb3B1cEJhc2VDb21wb25lbnR9IGZyb20gJy4uL2NvcmUvYmFzZS90cmFuc2FjdGlvbi1maWx0ZXItcG9wdXAtYmFzZS5jb21wb25lbnQnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHtEaWN0aW9uYXJ5U2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZS9kaWN0aW9uYXJ5LnNlcnZpY2UnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLWV2ZW50LnNlcnZpY2UnO1xyXG5pbXBvcnQge0ljb25DYWNoZVNlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2UvaWNvbi1jYWNoZS5zZXJ2aWNlJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkltYWdlU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi1pbWFnZS5zZXJ2aWNlJztcclxuaW1wb3J0IHtDaGVja2JveExpc3RQcm9wZXJ0eUludGVyZmFjZX0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlL2NoZWNrYm94LWxpc3QtcHJvcGVydHkuaW50ZXJmYWNlJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvblNjcmVlbkNvbmZpZ3VyYXRpb25TZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi1zY3JlZW4tY29uZmlndXJhdGlvbi5zZXJ2aWNlXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJjby10cmFuc2FjdGlvbi1saW5lLXdhcmVob3VzZS1sb2NhdGlvblwiLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8Y28tdHJhbnNhY3Rpb24tbGluZS1jaGVja2JveC1saXN0XHJcbiAgICAgIFtjb21taXR0aW5nXT1cImNvbW1pdHRpbmdcIlxyXG4gICAgICBbY29sbGVjdGlvbl09XCJ2aWV3TW9kZWxzRmlsdGVyZWRcIlxyXG4gICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxyXG4gICAgICAoY2hlY2tlZCk9XCJoYW5kbGVDaGVja2VkKCRldmVudClcIlxyXG4gICAgPjwvY28tdHJhbnNhY3Rpb24tbGluZS1jaGVja2JveC1saXN0PlxyXG4gIGAsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG4vLyBAdHMtaWdub3JlXHJcbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbkxpbmVXYXJlaG91c2VMb2NhdGlvbkNvbXBvbmVudCBleHRlbmRzIFRyYW5zYWN0aW9uRmlsdGVyUG9wdXBCYXNlQ29tcG9uZW50PFN0b2NrTG9jYXRpb24+IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2V0IHdhcmVob3VzZU5yKHZhbHVlOiBudW1iZXIpIHtcclxuICAgIHRoaXMuX3dhcmVob3VzZU5yID0gdmFsdWU7XHJcbiAgICBpZiAodGhpcy5fd2FyZWhvdXNlTnIgIT09IG51bGwgJiYgdGhpcy5fd2FyZWhvdXNlTnIgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICB0aGlzLl9nZXRMb2NhdGlvbnMoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgd2FyZWhvdXNlTnIoKTogbnVtYmVyIHtcclxuICAgIHJldHVybiB0aGlzLl93YXJlaG91c2VOcjtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBjb2RlRmllbGQ6IHN0cmluZyA9ICdsb2NhdGlvbk5vJztcclxuICBwcm90ZWN0ZWQgY2hlY2tGaWVsZDogc3RyaW5nID0gJ2xvY2F0aW9uTnInO1xyXG4gIHByb3RlY3RlZCBwcm9wc0ZvckxhYmVsOiBDaGVja2JveExpc3RQcm9wZXJ0eUludGVyZmFjZVtdID0gW3tsYWJlbDogJ2xvY2F0aW9uTm8nfSwge2xhYmVsOiAnZGVzY3JpcHRpb24nfV07XHJcblxyXG4gIHByaXZhdGUgX3dhcmVob3VzZU5yOiBudW1iZXI7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIHRyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlOiBUcmFuc2FjdGlvbkV2ZW50U2VydmljZSxcclxuICAgIHB1YmxpYyBzZXJ2aWNlOiBUcmFuc2FjdGlvblNlcnZpY2UsXHJcbiAgICBwdWJsaWMgaWNvbkNhY2hlU2VydmljZTogSWNvbkNhY2hlU2VydmljZSxcclxuICAgIHB1YmxpYyB0cmFuc2FjdGlvblNjcmVlbkNvbmZpZ3VyYXRpb25TZXJ2aWNlOiBUcmFuc2FjdGlvblNjcmVlbkNvbmZpZ3VyYXRpb25TZXJ2aWNlLFxyXG4gICAgcHJvdGVjdGVkIGRpY3Rpb25hcnlTZXJ2aWNlOiBEaWN0aW9uYXJ5U2VydmljZSxcclxuICAgIHByb3RlY3RlZCBpbWFnZVNlcnZpY2U6IFRyYW5zYWN0aW9uSW1hZ2VTZXJ2aWNlLFxyXG4gICAgcHJvdGVjdGVkIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIHByaXZhdGUgX2FydGljbGVTZXJ2aWNlOiBBcnRpY2xlU2VydmljZVxyXG4gICkge1xyXG4gICAgc3VwZXIodHJhbnNhY3Rpb25FdmVudFNlcnZpY2UsIGljb25DYWNoZVNlcnZpY2UsIHRyYW5zYWN0aW9uU2NyZWVuQ29uZmlndXJhdGlvblNlcnZpY2UsIGltYWdlU2VydmljZSwgZGljdGlvbmFyeVNlcnZpY2UsIHNlcnZpY2UsIGNoYW5nZURldGVjdG9yKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy52aWV3TW9kZWxzLmxlbmd0aCA9IDA7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgY29tbWl0KGxvY2F0aW9uTnI6IHN0cmluZyk6IFByb21pc2U8Ym9vbGVhbj4ge1xyXG4gICAgdGhpcy50cmFuc2FjdGlvbkxpbmUubG9jYXRpb25OciA9IGxvY2F0aW9uTnI7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2dldExvY2F0aW9ucygpOiB2b2lkIHtcclxuICAgIHRoaXMuX2FydGljbGVTZXJ2aWNlLmdldFdhcmVob3VzZUxvY2F0aW9ucyh0aGlzLl93YXJlaG91c2VOcikudGhlbigobG9jYXRpb25zOiBTdG9ja0xvY2F0aW9uW10pID0+IHtcclxuICAgICAgdGhpcy5jb2xsZWN0aW9uID0gbG9jYXRpb25zLnNsaWNlKCk7XHJcbiAgICAgIHRoaXMuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgfSlcclxuICB9XHJcbn1cclxuIl19