@colijnit/transaction 256.1.38 → 256.1.40

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 (42) hide show
  1. package/bundles/colijnit-transaction.umd.js +482 -248
  2. package/bundles/colijnit-transaction.umd.js.map +1 -1
  3. package/colijnit-transaction.metadata.json +1 -1
  4. package/esm2015/lib/component/delivery-planning/delivery-planning.component.js +8 -4
  5. package/esm2015/lib/component/delivery-planning/service/delivery-planning.service.js +15 -40
  6. package/esm2015/lib/component/delivery-planning-main/component/delivery-planning-overview/component/delivery-planning-overview-popup/delivery-planning-overview-popup.component.js +53 -53
  7. package/esm2015/lib/component/delivery-planning-main/component/delivery-planning-overview/component/delivery-planning-overview-tile/delivery-planning-overview-tile.component.js +48 -12
  8. package/esm2015/lib/component/delivery-planning-main/component/delivery-planning-overview/component/delivery-planning-overview-tile-settings-popup/delivery-planning-overview-tile-settings-popup.component.js +96 -136
  9. package/esm2015/lib/component/delivery-planning-main/component/delivery-planning-overview/delivery-planning-overview.component.js +82 -60
  10. package/esm2015/lib/component/delivery-planning-main/component/delivery-planning-selection/delivery-planning-selection.component.js +36 -21
  11. package/esm2015/lib/component/delivery-planning-main/delivery-planning-main.component.js +8 -2
  12. package/esm2015/lib/component/transaction-cash-register-dialog/transaction-cash-register-dialog.component.js +31 -16
  13. package/esm2015/lib/component/transaction-line/transaction-planning-line/transaction-planning-line.component.js +49 -35
  14. package/esm2015/lib/component/transaction-quick-access/transaction-quick-access-overview/transaction-quick-access-overview.component.js +6 -2
  15. package/esm2015/lib/component/transaction-quick-access/transaction-quick-access-send-method-base.component.js +24 -1
  16. package/esm2015/lib/component/transaction-search/service/transaction-search.service.js +7 -2
  17. package/esm2015/lib/component/transaction-search/transaction-search-result/transaction-search-result.component.js +103 -89
  18. package/esm2015/lib/enum/transaction-cfg-name.enum.js +3 -1
  19. package/esm2015/lib/service/transaction-connector-adapter.service.js +13 -1
  20. package/esm2015/lib/service/transaction-connector.service.js +6 -1
  21. package/esm2015/lib/service/transaction.service.js +6 -1
  22. package/esm2015/lib/transaction-version.js +3 -3
  23. package/fesm2015/colijnit-transaction.js +523 -415
  24. package/fesm2015/colijnit-transaction.js.map +1 -1
  25. package/lib/component/delivery-planning/delivery-planning.component.d.ts +3 -0
  26. package/lib/component/delivery-planning/service/delivery-planning.service.d.ts +18 -20
  27. package/lib/component/delivery-planning-main/component/delivery-planning-overview/component/delivery-planning-overview-popup/delivery-planning-overview-popup.component.d.ts +2 -2
  28. package/lib/component/delivery-planning-main/component/delivery-planning-overview/component/delivery-planning-overview-tile/delivery-planning-overview-tile.component.d.ts +9 -4
  29. package/lib/component/delivery-planning-main/component/delivery-planning-overview/component/delivery-planning-overview-tile-settings-popup/delivery-planning-overview-tile-settings-popup.component.d.ts +12 -16
  30. package/lib/component/delivery-planning-main/component/delivery-planning-overview/delivery-planning-overview.component.d.ts +27 -25
  31. package/lib/component/delivery-planning-main/component/delivery-planning-selection/delivery-planning-selection.component.d.ts +11 -6
  32. package/lib/component/delivery-planning-main/delivery-planning-main.component.d.ts +3 -1
  33. package/lib/component/transaction-cash-register-dialog/transaction-cash-register-dialog.component.d.ts +18 -3
  34. package/lib/component/transaction-line/transaction-planning-line/transaction-planning-line.component.d.ts +5 -2
  35. package/lib/component/transaction-quick-access/transaction-quick-access-send-method-base.component.d.ts +8 -1
  36. package/lib/component/transaction-search/service/transaction-search.service.d.ts +3 -2
  37. package/lib/component/transaction-search/transaction-search-result/transaction-search-result.component.d.ts +8 -6
  38. package/lib/enum/transaction-cfg-name.enum.d.ts +3 -1
  39. package/lib/service/transaction-connector-adapter.service.d.ts +1 -0
  40. package/lib/service/transaction-connector.service.d.ts +1 -0
  41. package/lib/service/transaction.service.d.ts +1 -0
  42. package/package.json +1 -1
@@ -1,21 +1,27 @@
1
- import { Component, EventEmitter, HostBinding, Output, ViewEncapsulation } from "@angular/core";
2
- import { Icon } from "../../../../enum/icon.enum";
3
- import { IconCacheService } from "../../../../service/icon-cache.service";
4
- import { TransactionConnectorService } from "../../../../service/transaction-connector.service";
5
- import { DeliveryPlanningService } from "../../../delivery-planning/service/delivery-planning.service";
1
+ import { Component, EventEmitter, HostBinding, Output, ViewEncapsulation } from '@angular/core';
2
+ import { Icon } from '../../../../enum/icon.enum';
3
+ import { IconCacheService } from '../../../../service/icon-cache.service';
4
+ import { TransactionConnectorService } from '../../../../service/transaction-connector.service';
5
+ import { DeliveryPlanningService } from '../../../delivery-planning/service/delivery-planning.service';
6
+ import { DeliveryPlanningViewModes } from '../../../../enum/delivery-planning-view-modes.enum';
6
7
  export class DeliveryPlanningSelectionComponent {
7
8
  constructor(iconCacheService, _transaction, deliveryPlanningService) {
8
9
  this.iconCacheService = iconCacheService;
9
10
  this._transaction = _transaction;
10
11
  this.deliveryPlanningService = deliveryPlanningService;
11
12
  this.icons = Icon;
13
+ this.deliveryPlanningViewModes = DeliveryPlanningViewModes;
12
14
  this.plannings = [];
13
15
  this.planningChangeEvent = new EventEmitter();
16
+ this.fullscreenEvent = new EventEmitter();
14
17
  this.expanded = false;
15
18
  }
16
19
  get currentPlanning() {
17
20
  return this.deliveryPlanningService.currentPlanning;
18
21
  }
22
+ get currentViewMode() {
23
+ return this.deliveryPlanningService.viewMode;
24
+ }
19
25
  set currentPlanning(planning) {
20
26
  this.deliveryPlanningService.currentPlanning = planning;
21
27
  }
@@ -37,27 +43,35 @@ export class DeliveryPlanningSelectionComponent {
37
43
  }
38
44
  this.planningChangeEvent.emit(planning);
39
45
  }
46
+ fullscreenToggled() {
47
+ this.fullscreenEvent.emit();
48
+ }
40
49
  }
41
50
  DeliveryPlanningSelectionComponent.decorators = [
42
51
  { type: Component, args: [{
43
- selector: "co-delivery-planning-selection",
52
+ selector: 'co-delivery-planning-selection',
44
53
  template: `
45
- <div class="wrapper column">
46
- <div class="lov-wrapper">
47
- <div class="row" [class.drop-active]="expanded" (click)="expanded = !expanded">
48
- <span class="planning-title" [textContent]="currentPlanning?.description"></span>
49
- <co-icon [iconData]="iconCacheService.getIcon(icons.ArrowPointDown)"></co-icon>
54
+ <div class="wrapper column">
55
+ <div class="lov-wrapper">
56
+ <div class="row">
57
+ <div class="row" [class.drop-active]="expanded" (click)="expanded = !expanded">
58
+ <span class="planning-title" [textContent]="currentPlanning?.description"></span>
59
+ <co-icon [iconData]="iconCacheService.getIcon(icons.ArrowPointDown)"></co-icon>
60
+
61
+ </div>
62
+ <co-icon *ngIf="currentViewMode === deliveryPlanningViewModes.Sidebar" [iconData]="iconCacheService.getIcon(icons.ExpandSolid)" (click)="fullscreenToggled()"></co-icon>
63
+
64
+ </div>
65
+ <div class="options-wrapper" *ngIf="expanded">
66
+ <div class="option" *ngFor="let planning of plannings">
67
+ <span (click)="planningChange(planning)" [textContent]="planning?.description"></span>
68
+ </div>
50
69
  </div>
51
- <div class="options-wrapper" *ngIf="expanded">
52
- <div class="option" *ngFor="let planning of plannings">
53
- <span (click)="planningChange(planning)" [textContent]="planning?.description"></span>
54
- </div>
55
- </div>
56
- </div>
70
+ </div>
57
71
 
58
- </div>
72
+ </div>
59
73
 
60
- `,
74
+ `,
61
75
  encapsulation: ViewEncapsulation.None
62
76
  },] }
63
77
  ];
@@ -68,6 +82,7 @@ DeliveryPlanningSelectionComponent.ctorParameters = () => [
68
82
  ];
69
83
  DeliveryPlanningSelectionComponent.propDecorators = {
70
84
  planningChangeEvent: [{ type: Output }],
71
- showClass: [{ type: HostBinding, args: ["class.co-delivery-planning-selection",] }]
85
+ fullscreenEvent: [{ type: Output }],
86
+ showClass: [{ type: HostBinding, args: ['class.co-delivery-planning-selection',] }]
72
87
  };
73
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsaXZlcnktcGxhbm5pbmctc2VsZWN0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L2RlbGl2ZXJ5LXBsYW5uaW5nLW1haW4vY29tcG9uZW50L2RlbGl2ZXJ5LXBsYW5uaW5nLXNlbGVjdGlvbi9kZWxpdmVyeS1wbGFubmluZy1zZWxlY3Rpb24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBVSxNQUFNLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdEcsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ2hELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBQ3hFLE9BQU8sRUFBQywyQkFBMkIsRUFBQyxNQUFNLG1EQUFtRCxDQUFDO0FBRTlGLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLDhEQUE4RCxDQUFDO0FBdUJyRyxNQUFNLE9BQU8sa0NBQWtDO0lBc0I3QyxZQUFtQixnQkFBa0MsRUFBVSxZQUF5QyxFQUFTLHVCQUFnRDtRQUE5SSxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQVUsaUJBQVksR0FBWixZQUFZLENBQTZCO1FBQVMsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUF5QjtRQXJCakosVUFBSyxHQUFnQixJQUFJLENBQUM7UUFFbkMsY0FBUyxHQUFlLEVBQUUsQ0FBQztRQUczQix3QkFBbUIsR0FBMkIsSUFBSSxZQUFZLEVBQVksQ0FBQztRQUMzRSxhQUFRLEdBQVksS0FBSyxDQUFDO0lBZ0JqQyxDQUFDO0lBZEQsSUFBVyxlQUFlO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLHVCQUF1QixDQUFDLGVBQWUsQ0FBQztJQUN0RCxDQUFDO0lBRUQsSUFBVyxlQUFlLENBQUMsUUFBa0I7UUFDM0MsSUFBSSxDQUFDLHVCQUF1QixDQUFDLGVBQWUsR0FBRyxRQUFRLENBQUM7SUFDMUQsQ0FBQztJQUdNLFNBQVM7UUFDZCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFLRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFlBQVksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLElBQUksQ0FBRSxDQUFDLE1BQWtCLEVBQUUsRUFBRTtZQUNsRSxJQUFJLENBQUMsU0FBUyxHQUFHLE1BQU0sQ0FBQztZQUN4QixJQUFHLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRTtnQkFDeEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNoQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0gsQ0FBQztJQUdJLGNBQWMsQ0FBQyxRQUFrQjtRQUN0QyxJQUFJLENBQUMsZUFBZSxHQUFHLFFBQVEsQ0FBQztRQUNoQyxJQUFHLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDaEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7U0FDaEM7UUFDRCxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzFDLENBQUM7OztZQTlERixTQUFTLFNBQUM7Z0JBQ1AsUUFBUSxFQUFFLGdDQUFnQztnQkFDMUMsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7O0tBZ0JUO2dCQUNELGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2FBQ3hDOzs7WUF6Qk8sZ0JBQWdCO1lBQ2hCLDJCQUEyQjtZQUUzQix1QkFBdUI7OztrQ0E0QjVCLE1BQU07d0JBWU4sV0FBVyxTQUFDLHNDQUFzQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIEhvc3RCaW5kaW5nLCBPbkluaXQsIE91dHB1dCwgVmlld0VuY2Fwc3VsYXRpb259IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7SWNvbn0gZnJvbSBcIi4uLy4uLy4uLy4uL2VudW0vaWNvbi5lbnVtXCI7XHJcbmltcG9ydCB7SWNvbkNhY2hlU2VydmljZX0gZnJvbSBcIi4uLy4uLy4uLy4uL3NlcnZpY2UvaWNvbi1jYWNoZS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25Db25uZWN0b3JTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi1jb25uZWN0b3Iuc2VydmljZVwiO1xyXG5pbXBvcnQge1BsYW5uaW5nfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3BsYW5uaW5nLmJvXCI7XHJcbmltcG9ydCB7RGVsaXZlcnlQbGFubmluZ1NlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi9kZWxpdmVyeS1wbGFubmluZy9zZXJ2aWNlL2RlbGl2ZXJ5LXBsYW5uaW5nLnNlcnZpY2VcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6IFwiY28tZGVsaXZlcnktcGxhbm5pbmctc2VsZWN0aW9uXCIsXHJcbiAgICB0ZW1wbGF0ZTogYFxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyIGNvbHVtblwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibG92LXdyYXBwZXJcIj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCIgW2NsYXNzLmRyb3AtYWN0aXZlXT1cImV4cGFuZGVkXCIgKGNsaWNrKT1cImV4cGFuZGVkID0gIWV4cGFuZGVkXCI+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInBsYW5uaW5nLXRpdGxlXCIgW3RleHRDb250ZW50XT1cImN1cnJlbnRQbGFubmluZz8uZGVzY3JpcHRpb25cIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8Y28taWNvbiBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb25zLkFycm93UG9pbnREb3duKVwiPjwvY28taWNvbj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJvcHRpb25zLXdyYXBwZXJcIiAqbmdJZj1cImV4cGFuZGVkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm9wdGlvblwiICpuZ0Zvcj1cImxldCBwbGFubmluZyBvZiBwbGFubmluZ3NcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKGNsaWNrKT1cInBsYW5uaW5nQ2hhbmdlKHBsYW5uaW5nKVwiIFt0ZXh0Q29udGVudF09XCJwbGFubmluZz8uZGVzY3JpcHRpb25cIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgIGAsXHJcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEZWxpdmVyeVBsYW5uaW5nU2VsZWN0aW9uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBwdWJsaWMgcmVhZG9ubHkgaWNvbnM6IHR5cGVvZiBJY29uID0gSWNvbjtcclxuXHJcbiAgcHVibGljIHBsYW5uaW5nczogUGxhbm5pbmdbXSA9IFtdO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgcGxhbm5pbmdDaGFuZ2VFdmVudDogRXZlbnRFbWl0dGVyPFBsYW5uaW5nPiA9IG5ldyBFdmVudEVtaXR0ZXI8UGxhbm5pbmc+KCk7XHJcbiAgcHVibGljIGV4cGFuZGVkOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIHB1YmxpYyBnZXQgY3VycmVudFBsYW5uaW5nKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuZGVsaXZlcnlQbGFubmluZ1NlcnZpY2UuY3VycmVudFBsYW5uaW5nO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldCBjdXJyZW50UGxhbm5pbmcocGxhbm5pbmc6IFBsYW5uaW5nKSB7XHJcbiAgICB0aGlzLmRlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlLmN1cnJlbnRQbGFubmluZyA9IHBsYW5uaW5nO1xyXG4gIH1cclxuXHJcbiAgQEhvc3RCaW5kaW5nKFwiY2xhc3MuY28tZGVsaXZlcnktcGxhbm5pbmctc2VsZWN0aW9uXCIpXHJcbiAgcHVibGljIHNob3dDbGFzcygpIHtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IocHVibGljIGljb25DYWNoZVNlcnZpY2U6IEljb25DYWNoZVNlcnZpY2UsIHByaXZhdGUgX3RyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbkNvbm5lY3RvclNlcnZpY2UsIHB1YmxpYyBkZWxpdmVyeVBsYW5uaW5nU2VydmljZTogRGVsaXZlcnlQbGFubmluZ1NlcnZpY2UpIHtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fdHJhbnNhY3Rpb24uZ2V0UGxhbm5pbmdTb3VyY2VzKCkudGhlbiggKHJlc3VsdDogUGxhbm5pbmdbXSkgPT4ge1xyXG4gICAgICB0aGlzLnBsYW5uaW5ncyA9IHJlc3VsdDtcclxuICAgICAgaWYoIXRoaXMuY3VycmVudFBsYW5uaW5nKSB7XHJcbiAgICAgICAgdGhpcy5wbGFubmluZ0NoYW5nZShyZXN1bHRbMF0pO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIH1cclxuXHJcblxyXG4gIHB1YmxpYyBwbGFubmluZ0NoYW5nZShwbGFubmluZzogUGxhbm5pbmcpIHtcclxuICAgIHRoaXMuY3VycmVudFBsYW5uaW5nID0gcGxhbm5pbmc7XHJcbiAgICBpZih0aGlzLmV4cGFuZGVkKSB7XHJcbiAgICAgIHRoaXMuZXhwYW5kZWQgPSAhdGhpcy5leHBhbmRlZDtcclxuICAgIH1cclxuICAgIHRoaXMucGxhbm5pbmdDaGFuZ2VFdmVudC5lbWl0KHBsYW5uaW5nKTtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
88
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsaXZlcnktcGxhbm5pbmctc2VsZWN0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L2RlbGl2ZXJ5LXBsYW5uaW5nLW1haW4vY29tcG9uZW50L2RlbGl2ZXJ5LXBsYW5uaW5nLXNlbGVjdGlvbi9kZWxpdmVyeS1wbGFubmluZy1zZWxlY3Rpb24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBVSxNQUFNLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdEcsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ2hELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBQ3hFLE9BQU8sRUFBQywyQkFBMkIsRUFBQyxNQUFNLG1EQUFtRCxDQUFDO0FBRTlGLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLDhEQUE4RCxDQUFDO0FBQ3JHLE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLG9EQUFvRCxDQUFDO0FBNEI3RixNQUFNLE9BQU8sa0NBQWtDO0lBK0I3QyxZQUFtQixnQkFBa0MsRUFBVSxZQUF5QyxFQUFTLHVCQUFnRDtRQUE5SSxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQVUsaUJBQVksR0FBWixZQUFZLENBQTZCO1FBQVMsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUF5QjtRQTlCakosVUFBSyxHQUFnQixJQUFJLENBQUM7UUFDMUIsOEJBQXlCLEdBQXFDLHlCQUF5QixDQUFDO1FBRWpHLGNBQVMsR0FBZSxFQUFFLENBQUM7UUFHM0Isd0JBQW1CLEdBQTJCLElBQUksWUFBWSxFQUFZLENBQUM7UUFHM0Usb0JBQWUsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUUvRCxhQUFRLEdBQVksS0FBSyxDQUFDO0lBb0JqQyxDQUFDO0lBbEJELElBQVcsZUFBZTtRQUN4QixPQUFPLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxlQUFlLENBQUM7SUFDdEQsQ0FBQztJQUVELElBQVcsZUFBZTtRQUN4QixPQUFPLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxRQUFRLENBQUM7SUFDL0MsQ0FBQztJQUVELElBQVcsZUFBZSxDQUFDLFFBQWtCO1FBQzNDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxlQUFlLEdBQUcsUUFBUSxDQUFDO0lBQzFELENBQUM7SUFHTSxTQUFTO1FBQ2QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBS0QsUUFBUTtRQUNOLElBQUksQ0FBQyxZQUFZLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFrQixFQUFFLEVBQUU7WUFDakUsSUFBSSxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUM7WUFDeEIsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUU7Z0JBQ3pCLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDaEM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxjQUFjLENBQUMsUUFBa0I7UUFDdEMsSUFBSSxDQUFDLGVBQWUsR0FBRyxRQUFRLENBQUM7UUFDaEMsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2pCLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO1NBQ2hDO1FBQ0QsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRU0saUJBQWlCO1FBQ3RCLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDOUIsQ0FBQzs7O1lBL0VGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsZ0NBQWdDO2dCQUMxQyxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXFCVDtnQkFDRCxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTthQUN0Qzs7O1lBL0JPLGdCQUFnQjtZQUNoQiwyQkFBMkI7WUFFM0IsdUJBQXVCOzs7a0NBbUM1QixNQUFNOzhCQUdOLE1BQU07d0JBaUJOLFdBQVcsU0FBQyxzQ0FBc0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgT25Jbml0LCBPdXRwdXQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtJY29ufSBmcm9tICcuLi8uLi8uLi8uLi9lbnVtL2ljb24uZW51bSc7XHJcbmltcG9ydCB7SWNvbkNhY2hlU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vLi4vc2VydmljZS9pY29uLWNhY2hlLnNlcnZpY2UnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uQ29ubmVjdG9yU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi1jb25uZWN0b3Iuc2VydmljZSc7XHJcbmltcG9ydCB7UGxhbm5pbmd9IGZyb20gJ0Bjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9wbGFubmluZy5ibyc7XHJcbmltcG9ydCB7RGVsaXZlcnlQbGFubmluZ1NlcnZpY2V9IGZyb20gJy4uLy4uLy4uL2RlbGl2ZXJ5LXBsYW5uaW5nL3NlcnZpY2UvZGVsaXZlcnktcGxhbm5pbmcuc2VydmljZSc7XHJcbmltcG9ydCB7RGVsaXZlcnlQbGFubmluZ1ZpZXdNb2Rlc30gZnJvbSAnLi4vLi4vLi4vLi4vZW51bS9kZWxpdmVyeS1wbGFubmluZy12aWV3LW1vZGVzLmVudW0nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdjby1kZWxpdmVyeS1wbGFubmluZy1zZWxlY3Rpb24nLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyIGNvbHVtblwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImxvdi13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCIgW2NsYXNzLmRyb3AtYWN0aXZlXT1cImV4cGFuZGVkXCIgKGNsaWNrKT1cImV4cGFuZGVkID0gIWV4cGFuZGVkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInBsYW5uaW5nLXRpdGxlXCIgW3RleHRDb250ZW50XT1cImN1cnJlbnRQbGFubmluZz8uZGVzY3JpcHRpb25cIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8Y28taWNvbiBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb25zLkFycm93UG9pbnREb3duKVwiPjwvY28taWNvbj5cclxuXHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICA8Y28taWNvbiAqbmdJZj1cImN1cnJlbnRWaWV3TW9kZSA9PT0gZGVsaXZlcnlQbGFubmluZ1ZpZXdNb2Rlcy5TaWRlYmFyXCIgW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5FeHBhbmRTb2xpZClcIiAoY2xpY2spPVwiZnVsbHNjcmVlblRvZ2dsZWQoKVwiPjwvY28taWNvbj5cclxuXHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm9wdGlvbnMtd3JhcHBlclwiICpuZ0lmPVwiZXhwYW5kZWRcIj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm9wdGlvblwiICpuZ0Zvcj1cImxldCBwbGFubmluZyBvZiBwbGFubmluZ3NcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIChjbGljayk9XCJwbGFubmluZ0NoYW5nZShwbGFubmluZylcIiBbdGV4dENvbnRlbnRdPVwicGxhbm5pbmc/LmRlc2NyaXB0aW9uXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gIGAsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRGVsaXZlcnlQbGFubmluZ1NlbGVjdGlvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgcHVibGljIHJlYWRvbmx5IGljb25zOiB0eXBlb2YgSWNvbiA9IEljb247XHJcbiAgcHVibGljIHJlYWRvbmx5IGRlbGl2ZXJ5UGxhbm5pbmdWaWV3TW9kZXM6IHR5cGVvZiBEZWxpdmVyeVBsYW5uaW5nVmlld01vZGVzID0gRGVsaXZlcnlQbGFubmluZ1ZpZXdNb2RlcztcclxuXHJcbiAgcHVibGljIHBsYW5uaW5nczogUGxhbm5pbmdbXSA9IFtdO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgcGxhbm5pbmdDaGFuZ2VFdmVudDogRXZlbnRFbWl0dGVyPFBsYW5uaW5nPiA9IG5ldyBFdmVudEVtaXR0ZXI8UGxhbm5pbmc+KCk7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyBmdWxsc2NyZWVuRXZlbnQ6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuXHJcbiAgcHVibGljIGV4cGFuZGVkOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIHB1YmxpYyBnZXQgY3VycmVudFBsYW5uaW5nKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuZGVsaXZlcnlQbGFubmluZ1NlcnZpY2UuY3VycmVudFBsYW5uaW5nO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBjdXJyZW50Vmlld01vZGUoKTogRGVsaXZlcnlQbGFubmluZ1ZpZXdNb2RlcyB7XHJcbiAgICByZXR1cm4gdGhpcy5kZWxpdmVyeVBsYW5uaW5nU2VydmljZS52aWV3TW9kZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzZXQgY3VycmVudFBsYW5uaW5nKHBsYW5uaW5nOiBQbGFubmluZykge1xyXG4gICAgdGhpcy5kZWxpdmVyeVBsYW5uaW5nU2VydmljZS5jdXJyZW50UGxhbm5pbmcgPSBwbGFubmluZztcclxuICB9XHJcblxyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuY28tZGVsaXZlcnktcGxhbm5pbmctc2VsZWN0aW9uJylcclxuICBwdWJsaWMgc2hvd0NsYXNzKCkge1xyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgaWNvbkNhY2hlU2VydmljZTogSWNvbkNhY2hlU2VydmljZSwgcHJpdmF0ZSBfdHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uQ29ubmVjdG9yU2VydmljZSwgcHVibGljIGRlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlOiBEZWxpdmVyeVBsYW5uaW5nU2VydmljZSkge1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLl90cmFuc2FjdGlvbi5nZXRQbGFubmluZ1NvdXJjZXMoKS50aGVuKChyZXN1bHQ6IFBsYW5uaW5nW10pID0+IHtcclxuICAgICAgdGhpcy5wbGFubmluZ3MgPSByZXN1bHQ7XHJcbiAgICAgIGlmICghdGhpcy5jdXJyZW50UGxhbm5pbmcpIHtcclxuICAgICAgICB0aGlzLnBsYW5uaW5nQ2hhbmdlKHJlc3VsdFswXSk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHBsYW5uaW5nQ2hhbmdlKHBsYW5uaW5nOiBQbGFubmluZykge1xyXG4gICAgdGhpcy5jdXJyZW50UGxhbm5pbmcgPSBwbGFubmluZztcclxuICAgIGlmICh0aGlzLmV4cGFuZGVkKSB7XHJcbiAgICAgIHRoaXMuZXhwYW5kZWQgPSAhdGhpcy5leHBhbmRlZDtcclxuICAgIH1cclxuICAgIHRoaXMucGxhbm5pbmdDaGFuZ2VFdmVudC5lbWl0KHBsYW5uaW5nKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBmdWxsc2NyZWVuVG9nZ2xlZCgpIHtcclxuICAgIHRoaXMuZnVsbHNjcmVlbkV2ZW50LmVtaXQoKTtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
@@ -1,5 +1,5 @@
1
1
  import { __awaiter } from "tslib";
2
- import { Component, HostBinding, ViewEncapsulation } from '@angular/core';
2
+ import { Component, EventEmitter, HostBinding, Output, ViewEncapsulation } from '@angular/core';
3
3
  import { DeliveryPlanningService } from '../delivery-planning/service/delivery-planning.service';
4
4
  import { SearchViewModeService } from '../search/search-view-mode.service';
5
5
  import { TransactionConnectorService } from '../../service/transaction-connector.service';
@@ -14,6 +14,7 @@ export class DeliveryPlanningMainComponent {
14
14
  this._transactionConn = _transactionConn;
15
15
  this._transaction = _transaction;
16
16
  this._transactionSearch = _transactionSearch;
17
+ this.fullscreenEvent = new EventEmitter();
17
18
  }
18
19
  get currentMode() {
19
20
  return this._deliveryPlanningService.currentCalendarMode;
@@ -115,6 +116,9 @@ export class DeliveryPlanningMainComponent {
115
116
  // All necessary data has been loaded
116
117
  });
117
118
  }
119
+ fullscreenToggle() {
120
+ this.fullscreenEvent.emit();
121
+ }
118
122
  }
119
123
  DeliveryPlanningMainComponent.decorators = [
120
124
  { type: Component, args: [{
@@ -125,6 +129,7 @@ DeliveryPlanningMainComponent.decorators = [
125
129
  <div class="delivery-main-wrapper">
126
130
  <div class="planning-selection-wrapper">
127
131
  <co-delivery-planning-selection
132
+ (fullscreenEvent)="fullscreenToggle()"
128
133
  (planningChangeEvent)="planningChanged($event)"></co-delivery-planning-selection>
129
134
  </div>
130
135
  <co-delivery-planning-overview [currentMode]="currentMode"
@@ -150,6 +155,7 @@ DeliveryPlanningMainComponent.ctorParameters = () => [
150
155
  { type: TransactionSearchService }
151
156
  ];
152
157
  DeliveryPlanningMainComponent.propDecorators = {
158
+ fullscreenEvent: [{ type: Output }],
153
159
  showClass: [{ type: HostBinding, args: ['class.co-delivery-planning-main',] }]
154
160
  };
155
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsaXZlcnktcGxhbm5pbmctbWFpbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cmFuc2FjdGlvbi9zcmMvbGliL2NvbXBvbmVudC9kZWxpdmVyeS1wbGFubmluZy1tYWluL2RlbGl2ZXJ5LXBsYW5uaW5nLW1haW4uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQWdCLFNBQVMsRUFBRSxXQUFXLEVBQVUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFL0YsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sd0RBQXdELENBQUM7QUFDL0YsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFJekUsT0FBTyxFQUFDLDJCQUEyQixFQUFDLE1BQU0sNkNBQTZDLENBQUM7QUFDeEYsT0FBTyxFQUFDLDZCQUE2QixFQUFDLE1BQU0sa0RBQWtELENBQUM7QUFFL0YsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sOENBQThDLENBQUM7QUFDdkYsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDckUsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sMERBQTBELENBQUM7QUEyQmxHLE1BQU0sT0FBTyw2QkFBNkI7SUF5QnhDLFlBQ1Usd0JBQWlELEVBQ2pELGdCQUF1QyxFQUN2QyxnQkFBNkMsRUFDN0MsWUFBZ0MsRUFDaEMsa0JBQTRDO1FBSjVDLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBeUI7UUFDakQscUJBQWdCLEdBQWhCLGdCQUFnQixDQUF1QjtRQUN2QyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQTZCO1FBQzdDLGlCQUFZLEdBQVosWUFBWSxDQUFvQjtRQUNoQyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQTBCO0lBRXRELENBQUM7SUE1QkQsSUFBVyxXQUFXO1FBQ3BCLE9BQU8sSUFBSSxD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R0FBRyxFQUFFO1lBQzlCLHFDQUFxQztRQUN2QyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OztZQTFLRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLDJCQUEyQjtnQkFDckMsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBbUJUO2dCQUNELGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2FBQ3RDOzs7WUFwQ08sdUJBQXVCO1lBQ3ZCLHFCQUFxQjtZQUlyQiwyQkFBMkI7WUFJM0Isa0JBQWtCO1lBQ2xCLHdCQUF3Qjs7O3dCQStDN0IsV0FBVyxTQUFDLGlDQUFpQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBIb3N0QmluZGluZywgT25Jbml0LCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7RGVsaXZlcnlQbGFubmluZ0NhbGVuZGFyTW9kZXN9IGZyb20gJy4uLy4uL2VudW0vZGVsaXZlcnktcGxhbm5pbmctY2FsZW5kYXItbW9kZXMuZW51bSc7XHJcbmltcG9ydCB7RGVsaXZlcnlQbGFubmluZ1NlcnZpY2V9IGZyb20gJy4uL2RlbGl2ZXJ5LXBsYW5uaW5nL3NlcnZpY2UvZGVsaXZlcnktcGxhbm5pbmcuc2VydmljZSc7XHJcbmltcG9ydCB7U2VhcmNoVmlld01vZGVTZXJ2aWNlfSBmcm9tICcuLi9zZWFyY2gvc2VhcmNoLXZpZXctbW9kZS5zZXJ2aWNlJztcclxuaW1wb3J0IHtDYWxlbmRhclZpZXd9IGZyb20gJ0Bjb2xpam5pdC9zaGFyZWRjb21wb25lbnRzJztcclxuaW1wb3J0IHtQbGFubmluZ30gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3BsYW5uaW5nLmJvJztcclxuaW1wb3J0IHtQbGFubmluZ1RyYW5zcG9ydFdlZWt9IGZyb20gJ0Bjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9wbGFubmluZy10cmFuc3BvcnQtd2Vlay5ibyc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25Db25uZWN0b3JTZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLWNvbm5lY3Rvci5zZXJ2aWNlJztcclxuaW1wb3J0IHtEZWxpdmVyeVBsYW5uaW5nVXBkYXRlQWN0aW9uc30gZnJvbSAnLi4vLi4vZW51bS9kZWxpdmVyeS1wbGFubmluZy11cGRhdGUtYWN0aW9ucy5lbnVtJztcclxuaW1wb3J0IHtQbGFubmluZ1RyYW5zcG9ydFdlZWtEYXl9IGZyb20gJ0Bjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9wbGFubmluZy10cmFuc3BvcnQtd2Vlay1kYXkuYm8nO1xyXG5pbXBvcnQge0RlbGl2ZXJ5UGxhbm5pbmdUaWxlTW9kZXN9IGZyb20gJy4uLy4uL2VudW0vZGVsaXZlcnktcGxhbm5pbmctdGlsZS1tb2Rlcy5lbnVtJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvblNlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24uc2VydmljZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlfSBmcm9tICcuLi90cmFuc2FjdGlvbi1zZWFyY2gvc2VydmljZS90cmFuc2FjdGlvbi1zZWFyY2guc2VydmljZSc7XHJcbmltcG9ydCB7RGVsaXZlcnlQbGFubmluZ1ZpZXdNb2Rlc30gZnJvbSAnLi4vLi4vZW51bS9kZWxpdmVyeS1wbGFubmluZy12aWV3LW1vZGVzLmVudW0nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdjby1kZWxpdmVyeS1wbGFubmluZy1tYWluJyxcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgICA8ZGl2IGNsYXNzPVwid3JhcHBlciByb3dcIj5cclxuXHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGVsaXZlcnktbWFpbi13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBsYW5uaW5nLXNlbGVjdGlvbi13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxjby1kZWxpdmVyeS1wbGFubmluZy1zZWxlY3Rpb25cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAocGxhbm5pbmdDaGFuZ2VFdmVudCk9XCJwbGFubmluZ0NoYW5nZWQoJGV2ZW50KVwiPjwvY28tZGVsaXZlcnktcGxhbm5pbmctc2VsZWN0aW9uPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxjby1kZWxpdmVyeS1wbGFubmluZy1vdmVydmlldyBbY3VycmVudE1vZGVdPVwiY3VycmVudE1vZGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY3VycmVudFZpZXdNb2RlXT1cImN1cnJlbnRWaWV3TW9kZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjdXJyZW50UGxhbm5pbmdWaWV3TW9kZV09XCJjdXJyZW50UGxhbm5pbmdWaWV3TW9kZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh1cGRhdGVQbGFubmluZ1RyYW5zcG9ydEV2ZW50KT1cInVwZGF0ZVBsYW5UcmFuc3BvcnRXZWVrKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAocmVzZXRQbGFubmluZ1RyYW5zcG9ydEV2ZW50KT1cImdldFBsYW5uaW5nVHJhbnNwb3J0V2VlaygpXCJcclxuXHJcbiAgICAgICAgICAgICAgPjwvY28tZGVsaXZlcnktcGxhbm5pbmctb3ZlcnZpZXc+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcblxyXG5cclxuICBgLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIERlbGl2ZXJ5UGxhbm5pbmdNYWluQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcclxuXHJcbiAgcHVibGljIHBsYW5uaW5nOiBQbGFubmluZztcclxuXHJcbiAgcHVibGljIGdldCBjdXJyZW50TW9kZSgpOiBEZWxpdmVyeVBsYW5uaW5nQ2FsZW5kYXJNb2RlcyB7XHJcbiAgICByZXR1cm4gdGhpcy5fZGVsaXZlcnlQbGFubmluZ1NlcnZpY2UuY3VycmVudENhbGVuZGFyTW9kZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgY3VycmVudFZpZXdNb2RlKCk6IENhbGVuZGFyVmlldyB7XHJcbiAgICByZXR1cm4gdGhpcy5fZGVsaXZlcnlQbGFubmluZ1NlcnZpY2UuZGF0ZVBsYW5uaW5nTW9kZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgY3VycmVudFBsYW5uaW5nVmlld01vZGUoKTogRGVsaXZlcnlQbGFubmluZ1ZpZXdNb2RlcyB7XHJcbiAgICByZXR1cm4gdGhpcy5fZGVsaXZlcnlQbGFubmluZ1NlcnZpY2Uudmlld01vZGU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0IGN1cnJlbnRTdGFydERhdGUoZGF0ZTogRGF0ZSkge1xyXG4gICAgdGhpcy5fZGVsaXZlcnlQbGFubmluZ1NlcnZpY2UuY3VycmVudFN0YXJ0RGF0ZSA9IGRhdGU7XHJcbiAgfVxyXG5cclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmNvLWRlbGl2ZXJ5LXBsYW5uaW5nLW1haW4nKVxyXG4gIHB1YmxpYyBzaG93Q2xhc3MoKSB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBfZGVsaXZlcnlQbGFubmluZ1NlcnZpY2U6IERlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfdmlld01vZGVTZXJ2aWNlOiBTZWFyY2hWaWV3TW9kZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF90cmFuc2FjdGlvbkNvbm46IFRyYW5zYWN0aW9uQ29ubmVjdG9yU2VydmljZSxcclxuICAgIHByaXZhdGUgX3RyYW5zYWN0aW9uOiBUcmFuc2FjdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF90cmFuc2FjdGlvblNlYXJjaDogVHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlXHJcbiAgKSB7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuX3ZpZXdNb2RlU2VydmljZS5vblNlYXJjaFZpZXdSZXNpemVDbGljaygpO1xyXG4gICAgdGhpcy5nZXRMaXN0RGF0YSgpO1xyXG4gIH1cclxuXHJcbiAgYXN5bmMgbmdBZnRlclZpZXdJbml0KCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgaWYgKHRoaXMuX2RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlLmN1cnJlbnRQbGFubmluZz8ucGxhbm5pbmdJZCkge1xyXG4gICAgICBhd2FpdCB0aGlzLmdldFBsYW5uaW5nVHJhbnNwb3J0V2VlaygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIHBsYW5uaW5nQ2hhbmdlZChwbGFubmluZzogUGxhbm5pbmcpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIHRoaXMucGxhbm5pbmcgPSBwbGFubmluZztcclxuICAgIHRoaXMuX2RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlLmN1cnJlbnRQbGFubmluZyA9IHBsYW5uaW5nO1xyXG4gICAgYXdhaXQgdGhpcy5nZXRQbGFubmluZ1RyYW5zcG9ydFdlZWsoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyB1cGRhdGVQbGFuVHJhbnNwb3J0V2Vlayh1cGRhdGVEYXRhOiB7XHJcbiAgICBvbGRXZWVrOiBQbGFubmluZ1RyYW5zcG9ydFdlZWtEYXlbXSxcclxuICAgIHdlZWs6IFBsYW5uaW5nVHJhbnNwb3J0V2Vla0RheVtdLFxyXG4gICAgYWN0aW9uOiBEZWxpdmVyeVBsYW5uaW5nVXBkYXRlQWN0aW9uc1xyXG4gIH0pIHtcclxuICAgIGxldCByZXN1bHQ6IFBsYW5uaW5nVHJhbnNwb3J0V2Vla1tdID0gdGhpcy5fZGVsaXZlcnlQbGFubmluZ1NlcnZpY2UuY29udmVydFRvUGxhblRyYW5zcG9ydFdlZWsodGhpcy5fZGVsaXZlcnlQbGFubmluZ1NlcnZpY2UucGxhblRyYW5zcG9ydFdlZWtBcnIpO1xyXG4gICAgbGV0IHdlZWs6IFBsYW5uaW5nVHJhbnNwb3J0V2VlayA9IHJlc3VsdC5maW5kKCh3ZWVrOiBQbGFubmluZ1RyYW5zcG9ydFdlZWspID0+IHdlZWtbJ3RyYW5zcG9ydElkJ10gPT09IHVwZGF0ZURhdGEud2Vla1t1cGRhdGVEYXRhLndlZWsubGVuZ3RoIC0gMV0pO1xyXG4gICAgaWYgKHdlZWspIHtcclxuICAgICAgbGV0IHVwZGF0ZVJlc3VsdDogYm9vbGVhbiA9IGF3YWl0IHRoaXMuX3RyYW5zYWN0aW9uQ29ubi51cGRhdGVQbGFuVHJhbnNwb3J0V2Vlayh3ZWVrKTtcclxuICAgICAgaWYgKHVwZGF0ZVJlc3VsdCkge1xyXG4gICAgICAgIGlmICh1cGRhdGVEYXRhLmFjdGlvbiAmJiB1cGRhdGVEYXRhLmFjdGlvbiA9PT0gRGVsaXZlcnlQbGFubmluZ1VwZGF0ZUFjdGlvbnMuRGVsZXRlUGxhbm5lZE9yZGVyIHx8IHVwZGF0ZURhdGEuYWN0aW9uID09PSBEZWxpdmVyeVBsYW5uaW5nVXBkYXRlQWN0aW9ucy5EZWxldGVQbGFubmVkTGluZXMgJiYgdGhpcy5fZGVsaXZlcnlQbGFubmluZ1NlcnZpY2UuZGVsZXRpbmdPcmRlcikge1xyXG4gICAgICAgICAgdGhpcy5fZGVsaXZlcnlQbGFubmluZ1NlcnZpY2UuZGVsZXRpbmdPcmRlci5kYXRlUmVzZXROZWVkZWQgPSB0cnVlO1xyXG4gICAgICAgICAgYXdhaXQgdGhpcy5fdHJhbnNhY3Rpb25Db25uLnJlc3RvcmVEZWxpdmVyeVNldHRpbmdzKFt0aGlzLl9kZWxpdmVyeVBsYW5uaW5nU2VydmljZS5kZWxldGluZ09yZGVyXSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBhd2FpdCB0aGlzLl90cmFuc2FjdGlvbi5jb21taXQoKTtcclxuICAgICAgICBpZiAodGhpcy5fdHJhbnNhY3Rpb24uY3VycmVudFRyYW5zYWN0aW9uLnRyYW5zYWN0aW9uSW5mby5pZCkge1xyXG4gICAgICAgICAgYXdhaXQgdGhpcy5fdHJhbnNhY3Rpb24uZ2V0VHJhbnNhY3Rpb25CeUlkKHRoaXMuX3RyYW5zYWN0aW9uLmN1cnJlbnRUcmFuc2FjdGlvbi50cmFuc2FjdGlvbkluZm8uaWQpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgYXdhaXQgdGhpcy51cGRhdGVOZXdWYWx1ZXMoKTtcclxuICAgICAgICBpZiAodGhpcy5fZGVsaXZlcnlQbGFubmluZ1NlcnZpY2UuZGVsZXRpbmdPcmRlcikge1xyXG4gICAgICAgICAgdGhpcy5fZGVsaXZlcnlQbGFubmluZ1NlcnZpY2UuZGVsZXRpbmdPcmRlciA9IHVuZGVmaW5lZDtcclxuICAgICAgICAgIGlmICh0aGlzLl90cmFuc2FjdGlvbi5jdXJyZW50VHJhbnNhY3Rpb24pIHtcclxuICAgICAgICAgICAgdGhpcy5fdHJhbnNhY3Rpb24ucmVzZXRDdXJyZW50VHJhbnNhY3Rpb24oKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmICh0aGlzLl9kZWxpdmVyeVBsYW5uaW5nU2VydmljZS5jdXJyZW50VGlsZU1vZGUgPT09IERlbGl2ZXJ5UGxhbm5pbmdUaWxlTW9kZXMuQ2FsZW5kYXIpIHtcclxuICAgICAgICAgIHRoaXMuX2RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlLnJlUmVuZGVySG91clNjaGVkdWxpbmcubmV4dCgpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgYXdhaXQgdGhpcy5fdHJhbnNhY3Rpb25TZWFyY2guc2VhcmNoVHJhbnNhY3Rpb25zKCk7XHJcblxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIC8vIGF3YWl0IHRoaXMucmVzZXRQbGFubmluZ1RyYW5zcG9ydFdlZWsoKVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIHVwZGF0ZU5ld1ZhbHVlcygpIHtcclxuICAgIGF3YWl0IHRoaXMuX2RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlLnVwZGF0ZVBsYW5uaW5nVHJhbnNwb3J0VmFsdWVzKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgZ2V0UGxhbm5pbmdUcmFuc3BvcnRXZWVrKCkge1xyXG4gICAgaWYgKHRoaXMuX2RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlLnBsYW5PcmRlckRhdGUpIHtcclxuICAgICAgdGhpcy5jdXJyZW50U3RhcnREYXRlID0gdGhpcy5fZGVsaXZlcnlQbGFubmluZ1NlcnZpY2UucGxhbk9yZGVyRGF0ZTtcclxuICAgICAgdGhpcy5fZGVsaXZlcnlQbGFubmluZ1NlcnZpY2UucGxhbk9yZGVyRGF0ZSA9IHVuZGVmaW5lZDtcclxuICAgIH1cclxuICAgIGF3YWl0IHRoaXMuX2RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlLmdldFBsYW5uaW5nVHJhbnNwb3J0V2VlaygpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldExpc3REYXRhKCk6IHZvaWQge1xyXG4gICAgY29uc3QgbG9hZERhdGFJZk5lZWRlZCA9IDxUPihkYXRhOiBUW10sIGxvYWRlcjogKCkgPT4gUHJvbWlzZTxUW10+LCBzZXR0ZXI6IChyZXN1bHQ6IFRbXSkgPT4gdm9pZCk6IFByb21pc2U8dm9pZD4gPT4ge1xyXG4gICAgICBpZiAoZGF0YS5sZW5ndGggPT09IDApIHtcclxuICAgICAgICByZXR1cm4gbG9hZGVyKCkudGhlbihzZXR0ZXIpLmNhdGNoKGVycm9yID0+IHtcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7XHJcbiAgICB9O1xyXG5cclxuICAgIGNvbnN0IHByb21pc2VzXHJcbiAgICAgIDpcclxuICAgICAgUHJvbWlzZTx2b2lkPiBbXSA9IFtcclxuICAgICAgbG9hZERhdGFJZk5lZWRlZChcclxuICAgICAgICB0aGlzLl9kZWxpdmVyeVBsYW5uaW5nU2VydmljZS5kZWxpdmVyeU1ldGhvZHMsXHJcbiAgICAgICAgKCkgPT4gdGhpcy5fdHJhbnNhY3Rpb25Db25uLmdldERlbGl2ZXJ5TWV0aG9kcygpLFxyXG4gICAgICAgIChyZXN1bHQpID0+IHRoaXMuX2RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlLmRlbGl2ZXJ5TWV0aG9kcyA9IHJlc3VsdFxyXG4gICAgICApLFxyXG4gICAgICBsb2FkRGF0YUlmTmVlZGVkKFxyXG4gICAgICAgIHRoaXMuX2RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlLmRpc3RyaWN0cyxcclxuICAgICAgICAoKSA9PiB0aGlzLl90cmFuc2FjdGlvbkNvbm4uZ2V0RGlzdHJpY3RzKCksXHJcbiAgICAgICAgKHJlc3VsdCkgPT4gdGhpcy5fZGVsaXZlcnlQbGFubmluZ1NlcnZpY2UuZGlzdHJpY3RzID0gcmVzdWx0XHJcbiAgICAgICksXHJcbiAgICAgIGxvYWREYXRhSWZOZWVkZWQoXHJcbiAgICAgICAgdGhpcy5fZGVsaXZlcnlQbGFubmluZ1NlcnZpY2UuZW1wbG95ZWVzLFxyXG4gICAgICAgICgpID0+IHRoaXMuX3RyYW5zYWN0aW9uQ29ubi5nZXRFbXBsb3llZXMoKSxcclxuICAgICAgICAocmVzdWx0KSA9PiB0aGlzLl9kZWxpdmVyeVBsYW5uaW5nU2VydmljZS5lbXBsb3llZXMgPSByZXN1bHRcclxuICAgICAgKSxcclxuICAgICAgbG9hZERhdGFJZk5lZWRlZChcclxuICAgICAgICB0aGlzLl9kZWxpdmVyeVBsYW5uaW5nU2VydmljZS5za2lsbHMsXHJcbiAgICAgICAgKCkgPT4gdGhpcy5fdHJhbnNhY3Rpb25Db25uLmdldFNraWxscygpLFxyXG4gICAgICAgIChyZXN1bHQpID0+IHRoaXMuX2RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlLnNraWxscyA9IHJlc3VsdFxyXG4gICAgICApLFxyXG4gICAgICBsb2FkRGF0YUlmTmVlZGVkKFxyXG4gICAgICAgIHRoaXMuX2RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlLnVzZXJHcm91cHMsXHJcbiAgICAgICAgKCkgPT4gdGhpcy5fdHJhbnNhY3Rpb25Db25uLmdldFVzZXJHcm91cHMoKSxcclxuICAgICAgICAocmVzdWx0KSA9PiB0aGlzLl9kZWxpdmVyeVBsYW5uaW5nU2VydmljZS51c2VyR3JvdXBzID0gcmVzdWx0XHJcbiAgICAgIClcclxuICAgIF07XHJcblxyXG4gICAgUHJvbWlzZS5hbGwocHJvbWlzZXMpLnRoZW4oKCkgPT4ge1xyXG4gICAgICAvLyBBbGwgbmVjZXNzYXJ5IGRhdGEgaGFzIGJlZW4gbG9hZGVkXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
161
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsaXZlcnktcGxhbm5pbmctbWFpbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cmFuc2FjdGlvbi9zcmMvbGliL2NvbXBvbmVudC9kZWxpdmVyeS1wbGFubmluZy1tYWluL2RlbGl2ZXJ5LXBsYW5uaW5nLW1haW4uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQWdCLFNBQVMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFVLE1BQU0sRUFBRSxpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUVySCxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSx3REFBd0QsQ0FBQztBQUMvRixPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQUl6RSxPQUFPLEVBQUMsMkJBQTJCLEVBQUMsTUFBTSw2Q0FBNkMsQ0FBQztBQUN4RixPQUFPLEVBQUMsNkJBQTZCLEVBQUMsTUFBTSxrREFBa0QsQ0FBQztBQUUvRixPQUFPLEVBQUMseUJBQXlCLEVBQUMsTUFBTSw4Q0FBOEMsQ0FBQztBQUN2RixPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUNyRSxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSwwREFBMEQsQ0FBQztBQTRCbEcsTUFBTSxPQUFPLDZCQUE2QjtJQTRCeEMsWUFDVSx3QkFBaUQsRUFDakQsZ0JBQXVDLEVBQ3ZDLGdCQUE2QyxFQUM3QyxZQUFnQyxFQUNoQyxrQkFBNEM7UUFKNUMsNkJBQXdCLEdBQXhCLHdCQUF3QixDQUF5QjtRQUNqRCxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQXVCO1FBQ3ZDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBNkI7UUFDN0MsaUJBQVksR0FBWixZQUFZLENBQW9CO1FBQ2hDLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBMEI7UUFaL0Msb0JBQWUsR0FBdUIsSUFBSSxZ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Q0YsQ0FBQztRQUVGLE9BQU8sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUM5QixxQ0FBcUM7UUFDdkMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sZ0JBQWdCO1FBQ3JCLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLENBQUE7SUFDN0IsQ0FBQzs7O1lBbExGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsMkJBQTJCO2dCQUNyQyxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBb0JUO2dCQUNELGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2FBQ3RDOzs7WUFyQ08sdUJBQXVCO1lBQ3ZCLHFCQUFxQjtZQUlyQiwyQkFBMkI7WUFJM0Isa0JBQWtCO1lBQ2xCLHdCQUF3Qjs7OzhCQWdEN0IsTUFBTTt3QkFHTixXQUFXLFNBQUMsaUNBQWlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIE9uSW5pdCwgT3V0cHV0LCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7RGVsaXZlcnlQbGFubmluZ0NhbGVuZGFyTW9kZXN9IGZyb20gJy4uLy4uL2VudW0vZGVsaXZlcnktcGxhbm5pbmctY2FsZW5kYXItbW9kZXMuZW51bSc7XHJcbmltcG9ydCB7RGVsaXZlcnlQbGFubmluZ1NlcnZpY2V9IGZyb20gJy4uL2RlbGl2ZXJ5LXBsYW5uaW5nL3NlcnZpY2UvZGVsaXZlcnktcGxhbm5pbmcuc2VydmljZSc7XHJcbmltcG9ydCB7U2VhcmNoVmlld01vZGVTZXJ2aWNlfSBmcm9tICcuLi9zZWFyY2gvc2VhcmNoLXZpZXctbW9kZS5zZXJ2aWNlJztcclxuaW1wb3J0IHtDYWxlbmRhclZpZXd9IGZyb20gJ0Bjb2xpam5pdC9zaGFyZWRjb21wb25lbnRzJztcclxuaW1wb3J0IHtQbGFubmluZ30gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3BsYW5uaW5nLmJvJztcclxuaW1wb3J0IHtQbGFubmluZ1RyYW5zcG9ydFdlZWt9IGZyb20gJ0Bjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9wbGFubmluZy10cmFuc3BvcnQtd2Vlay5ibyc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25Db25uZWN0b3JTZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLWNvbm5lY3Rvci5zZXJ2aWNlJztcclxuaW1wb3J0IHtEZWxpdmVyeVBsYW5uaW5nVXBkYXRlQWN0aW9uc30gZnJvbSAnLi4vLi4vZW51bS9kZWxpdmVyeS1wbGFubmluZy11cGRhdGUtYWN0aW9ucy5lbnVtJztcclxuaW1wb3J0IHtQbGFubmluZ1RyYW5zcG9ydFdlZWtEYXl9IGZyb20gJ0Bjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9wbGFubmluZy10cmFuc3BvcnQtd2Vlay1kYXkuYm8nO1xyXG5pbXBvcnQge0RlbGl2ZXJ5UGxhbm5pbmdUaWxlTW9kZXN9IGZyb20gJy4uLy4uL2VudW0vZGVsaXZlcnktcGxhbm5pbmctdGlsZS1tb2Rlcy5lbnVtJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvblNlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24uc2VydmljZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlfSBmcm9tICcuLi90cmFuc2FjdGlvbi1zZWFyY2gvc2VydmljZS90cmFuc2FjdGlvbi1zZWFyY2guc2VydmljZSc7XHJcbmltcG9ydCB7RGVsaXZlcnlQbGFubmluZ1ZpZXdNb2Rlc30gZnJvbSAnLi4vLi4vZW51bS9kZWxpdmVyeS1wbGFubmluZy12aWV3LW1vZGVzLmVudW0nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdjby1kZWxpdmVyeS1wbGFubmluZy1tYWluJyxcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgICA8ZGl2IGNsYXNzPVwid3JhcHBlciByb3dcIj5cclxuXHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGVsaXZlcnktbWFpbi13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBsYW5uaW5nLXNlbGVjdGlvbi13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxjby1kZWxpdmVyeS1wbGFubmluZy1zZWxlY3Rpb25cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAoZnVsbHNjcmVlbkV2ZW50KT1cImZ1bGxzY3JlZW5Ub2dnbGUoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKHBsYW5uaW5nQ2hhbmdlRXZlbnQpPVwicGxhbm5pbmdDaGFuZ2VkKCRldmVudClcIj48L2NvLWRlbGl2ZXJ5LXBsYW5uaW5nLXNlbGVjdGlvbj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8Y28tZGVsaXZlcnktcGxhbm5pbmctb3ZlcnZpZXcgW2N1cnJlbnRNb2RlXT1cImN1cnJlbnRNb2RlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2N1cnJlbnRWaWV3TW9kZV09XCJjdXJyZW50Vmlld01vZGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY3VycmVudFBsYW5uaW5nVmlld01vZGVdPVwiY3VycmVudFBsYW5uaW5nVmlld01vZGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodXBkYXRlUGxhbm5pbmdUcmFuc3BvcnRFdmVudCk9XCJ1cGRhdGVQbGFuVHJhbnNwb3J0V2VlaygkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHJlc2V0UGxhbm5pbmdUcmFuc3BvcnRFdmVudCk9XCJnZXRQbGFubmluZ1RyYW5zcG9ydFdlZWsoKVwiXHJcblxyXG4gICAgICAgICAgICAgID48L2NvLWRlbGl2ZXJ5LXBsYW5uaW5nLW92ZXJ2aWV3PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuXHJcbiAgYCxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEZWxpdmVyeVBsYW5uaW5nTWFpbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XHJcblxyXG4gIHB1YmxpYyBwbGFubmluZzogUGxhbm5pbmc7XHJcblxyXG4gIHB1YmxpYyBnZXQgY3VycmVudE1vZGUoKTogRGVsaXZlcnlQbGFubmluZ0NhbGVuZGFyTW9kZXMge1xyXG4gICAgcmV0dXJuIHRoaXMuX2RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlLmN1cnJlbnRDYWxlbmRhck1vZGU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGN1cnJlbnRWaWV3TW9kZSgpOiBDYWxlbmRhclZpZXcge1xyXG4gICAgcmV0dXJuIHRoaXMuX2RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlLmRhdGVQbGFubmluZ01vZGU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGN1cnJlbnRQbGFubmluZ1ZpZXdNb2RlKCk6IERlbGl2ZXJ5UGxhbm5pbmdWaWV3TW9kZXMge1xyXG4gICAgcmV0dXJuIHRoaXMuX2RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlLnZpZXdNb2RlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldCBjdXJyZW50U3RhcnREYXRlKGRhdGU6IERhdGUpIHtcclxuICAgIHRoaXMuX2RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlLmN1cnJlbnRTdGFydERhdGUgPSBkYXRlO1xyXG4gIH1cclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIGZ1bGxzY3JlZW5FdmVudDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG5cclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmNvLWRlbGl2ZXJ5LXBsYW5uaW5nLW1haW4nKVxyXG4gIHB1YmxpYyBzaG93Q2xhc3MoKSB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBfZGVsaXZlcnlQbGFubmluZ1NlcnZpY2U6IERlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfdmlld01vZGVTZXJ2aWNlOiBTZWFyY2hWaWV3TW9kZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF90cmFuc2FjdGlvbkNvbm46IFRyYW5zYWN0aW9uQ29ubmVjdG9yU2VydmljZSxcclxuICAgIHByaXZhdGUgX3RyYW5zYWN0aW9uOiBUcmFuc2FjdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF90cmFuc2FjdGlvblNlYXJjaDogVHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlXHJcbiAgKSB7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuX3ZpZXdNb2RlU2VydmljZS5vblNlYXJjaFZpZXdSZXNpemVDbGljaygpO1xyXG4gICAgdGhpcy5nZXRMaXN0RGF0YSgpO1xyXG4gIH1cclxuXHJcbiAgYXN5bmMgbmdBZnRlclZpZXdJbml0KCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgaWYgKHRoaXMuX2RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlLmN1cnJlbnRQbGFubmluZz8ucGxhbm5pbmdJZCkge1xyXG4gICAgICBhd2FpdCB0aGlzLmdldFBsYW5uaW5nVHJhbnNwb3J0V2VlaygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIHBsYW5uaW5nQ2hhbmdlZChwbGFubmluZzogUGxhbm5pbmcpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIHRoaXMucGxhbm5pbmcgPSBwbGFubmluZztcclxuICAgIHRoaXMuX2RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlLmN1cnJlbnRQbGFubmluZyA9IHBsYW5uaW5nO1xyXG4gICAgYXdhaXQgdGhpcy5nZXRQbGFubmluZ1RyYW5zcG9ydFdlZWsoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyB1cGRhdGVQbGFuVHJhbnNwb3J0V2Vlayh1cGRhdGVEYXRhOiB7XHJcbiAgICBvbGRXZWVrOiBQbGFubmluZ1RyYW5zcG9ydFdlZWtEYXlbXSxcclxuICAgIHdlZWs6IFBsYW5uaW5nVHJhbnNwb3J0V2Vla0RheVtdLFxyXG4gICAgYWN0aW9uOiBEZWxpdmVyeVBsYW5uaW5nVXBkYXRlQWN0aW9uc1xyXG4gIH0pIHtcclxuICAgIGxldCByZXN1bHQ6IFBsYW5uaW5nVHJhbnNwb3J0V2Vla1tdID0gdGhpcy5fZGVsaXZlcnlQbGFubmluZ1NlcnZpY2UuY29udmVydFRvUGxhblRyYW5zcG9ydFdlZWsodGhpcy5fZGVsaXZlcnlQbGFubmluZ1NlcnZpY2UucGxhblRyYW5zcG9ydFdlZWtBcnIpO1xyXG4gICAgbGV0IHdlZWs6IFBsYW5uaW5nVHJhbnNwb3J0V2VlayA9IHJlc3VsdC5maW5kKCh3ZWVrOiBQbGFubmluZ1RyYW5zcG9ydFdlZWspID0+IHdlZWtbJ3RyYW5zcG9ydElkJ10gPT09IHVwZGF0ZURhdGEud2Vla1t1cGRhdGVEYXRhLndlZWsubGVuZ3RoIC0gMV0pO1xyXG4gICAgaWYgKHdlZWspIHtcclxuICAgICAgbGV0IHVwZGF0ZVJlc3VsdDogYm9vbGVhbiA9IGF3YWl0IHRoaXMuX3RyYW5zYWN0aW9uQ29ubi51cGRhdGVQbGFuVHJhbnNwb3J0V2Vlayh3ZWVrKTtcclxuICAgICAgaWYgKHVwZGF0ZVJlc3VsdCkge1xyXG4gICAgICAgIGlmICh1cGRhdGVEYXRhLmFjdGlvbiAmJiB1cGRhdGVEYXRhLmFjdGlvbiA9PT0gRGVsaXZlcnlQbGFubmluZ1VwZGF0ZUFjdGlvbnMuRGVsZXRlUGxhbm5lZE9yZGVyIHx8IHVwZGF0ZURhdGEuYWN0aW9uID09PSBEZWxpdmVyeVBsYW5uaW5nVXBkYXRlQWN0aW9ucy5EZWxldGVQbGFubmVkTGluZXMgJiYgdGhpcy5fZGVsaXZlcnlQbGFubmluZ1NlcnZpY2UuZGVsZXRpbmdPcmRlcikge1xyXG4gICAgICAgICAgdGhpcy5fZGVsaXZlcnlQbGFubmluZ1NlcnZpY2UuZGVsZXRpbmdPcmRlci5kYXRlUmVzZXROZWVkZWQgPSB0cnVlO1xyXG4gICAgICAgICAgYXdhaXQgdGhpcy5fdHJhbnNhY3Rpb25Db25uLnJlc3RvcmVEZWxpdmVyeVNldHRpbmdzKFt0aGlzLl9kZWxpdmVyeVBsYW5uaW5nU2VydmljZS5kZWxldGluZ09yZGVyXSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBhd2FpdCB0aGlzLl90cmFuc2FjdGlvbi5jb21taXQoKTtcclxuICAgICAgICBpZiAodGhpcy5fdHJhbnNhY3Rpb24uY3VycmVudFRyYW5zYWN0aW9uLnRyYW5zYWN0aW9uSW5mby5pZCkge1xyXG4gICAgICAgICAgYXdhaXQgdGhpcy5fdHJhbnNhY3Rpb24uZ2V0VHJhbnNhY3Rpb25CeUlkKHRoaXMuX3RyYW5zYWN0aW9uLmN1cnJlbnRUcmFuc2FjdGlvbi50cmFuc2FjdGlvbkluZm8uaWQpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgYXdhaXQgdGhpcy51cGRhdGVOZXdWYWx1ZXMoKTtcclxuICAgICAgICBpZiAodGhpcy5fZGVsaXZlcnlQbGFubmluZ1NlcnZpY2UuZGVsZXRpbmdPcmRlcikge1xyXG4gICAgICAgICAgdGhpcy5fZGVsaXZlcnlQbGFubmluZ1NlcnZpY2UuZGVsZXRpbmdPcmRlciA9IHVuZGVmaW5lZDtcclxuICAgICAgICAgIGlmICh0aGlzLl90cmFuc2FjdGlvbi5jdXJyZW50VHJhbnNhY3Rpb24pIHtcclxuICAgICAgICAgICAgdGhpcy5fdHJhbnNhY3Rpb24ucmVzZXRDdXJyZW50VHJhbnNhY3Rpb24oKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmICh0aGlzLl9kZWxpdmVyeVBsYW5uaW5nU2VydmljZS5jdXJyZW50VGlsZU1vZGUgPT09IERlbGl2ZXJ5UGxhbm5pbmdUaWxlTW9kZXMuQ2FsZW5kYXIpIHtcclxuICAgICAgICAgIHRoaXMuX2RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlLnJlUmVuZGVySG91clNjaGVkdWxpbmcubmV4dCgpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgYXdhaXQgdGhpcy5fdHJhbnNhY3Rpb25TZWFyY2guc2VhcmNoVHJhbnNhY3Rpb25zKCk7XHJcblxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIC8vIGF3YWl0IHRoaXMucmVzZXRQbGFubmluZ1RyYW5zcG9ydFdlZWsoKVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIHVwZGF0ZU5ld1ZhbHVlcygpIHtcclxuICAgIGF3YWl0IHRoaXMuX2RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlLnVwZGF0ZVBsYW5uaW5nVHJhbnNwb3J0VmFsdWVzKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgZ2V0UGxhbm5pbmdUcmFuc3BvcnRXZWVrKCkge1xyXG4gICAgaWYgKHRoaXMuX2RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlLnBsYW5PcmRlckRhdGUpIHtcclxuICAgICAgdGhpcy5jdXJyZW50U3RhcnREYXRlID0gdGhpcy5fZGVsaXZlcnlQbGFubmluZ1NlcnZpY2UucGxhbk9yZGVyRGF0ZTtcclxuICAgICAgdGhpcy5fZGVsaXZlcnlQbGFubmluZ1NlcnZpY2UucGxhbk9yZGVyRGF0ZSA9IHVuZGVmaW5lZDtcclxuICAgIH1cclxuICAgIGF3YWl0IHRoaXMuX2RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlLmdldFBsYW5uaW5nVHJhbnNwb3J0V2VlaygpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldExpc3REYXRhKCk6IHZvaWQge1xyXG4gICAgY29uc3QgbG9hZERhdGFJZk5lZWRlZCA9IDxUPihkYXRhOiBUW10sIGxvYWRlcjogKCkgPT4gUHJvbWlzZTxUW10+LCBzZXR0ZXI6IChyZXN1bHQ6IFRbXSkgPT4gdm9pZCk6IFByb21pc2U8dm9pZD4gPT4ge1xyXG4gICAgICBpZiAoZGF0YS5sZW5ndGggPT09IDApIHtcclxuICAgICAgICByZXR1cm4gbG9hZGVyKCkudGhlbihzZXR0ZXIpLmNhdGNoKGVycm9yID0+IHtcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7XHJcbiAgICB9O1xyXG5cclxuICAgIGNvbnN0IHByb21pc2VzXHJcbiAgICAgIDpcclxuICAgICAgUHJvbWlzZTx2b2lkPiBbXSA9IFtcclxuICAgICAgbG9hZERhdGFJZk5lZWRlZChcclxuICAgICAgICB0aGlzLl9kZWxpdmVyeVBsYW5uaW5nU2VydmljZS5kZWxpdmVyeU1ldGhvZHMsXHJcbiAgICAgICAgKCkgPT4gdGhpcy5fdHJhbnNhY3Rpb25Db25uLmdldERlbGl2ZXJ5TWV0aG9kcygpLFxyXG4gICAgICAgIChyZXN1bHQpID0+IHRoaXMuX2RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlLmRlbGl2ZXJ5TWV0aG9kcyA9IHJlc3VsdFxyXG4gICAgICApLFxyXG4gICAgICBsb2FkRGF0YUlmTmVlZGVkKFxyXG4gICAgICAgIHRoaXMuX2RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlLmRpc3RyaWN0cyxcclxuICAgICAgICAoKSA9PiB0aGlzLl90cmFuc2FjdGlvbkNvbm4uZ2V0RGlzdHJpY3RzKCksXHJcbiAgICAgICAgKHJlc3VsdCkgPT4gdGhpcy5fZGVsaXZlcnlQbGFubmluZ1NlcnZpY2UuZGlzdHJpY3RzID0gcmVzdWx0XHJcbiAgICAgICksXHJcbiAgICAgIGxvYWREYXRhSWZOZWVkZWQoXHJcbiAgICAgICAgdGhpcy5fZGVsaXZlcnlQbGFubmluZ1NlcnZpY2UuZW1wbG95ZWVzLFxyXG4gICAgICAgICgpID0+IHRoaXMuX3RyYW5zYWN0aW9uQ29ubi5nZXRFbXBsb3llZXMoKSxcclxuICAgICAgICAocmVzdWx0KSA9PiB0aGlzLl9kZWxpdmVyeVBsYW5uaW5nU2VydmljZS5lbXBsb3llZXMgPSByZXN1bHRcclxuICAgICAgKSxcclxuICAgICAgbG9hZERhdGFJZk5lZWRlZChcclxuICAgICAgICB0aGlzLl9kZWxpdmVyeVBsYW5uaW5nU2VydmljZS5za2lsbHMsXHJcbiAgICAgICAgKCkgPT4gdGhpcy5fdHJhbnNhY3Rpb25Db25uLmdldFNraWxscygpLFxyXG4gICAgICAgIChyZXN1bHQpID0+IHRoaXMuX2RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlLnNraWxscyA9IHJlc3VsdFxyXG4gICAgICApLFxyXG4gICAgICBsb2FkRGF0YUlmTmVlZGVkKFxyXG4gICAgICAgIHRoaXMuX2RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlLnVzZXJHcm91cHMsXHJcbiAgICAgICAgKCkgPT4gdGhpcy5fdHJhbnNhY3Rpb25Db25uLmdldFVzZXJHcm91cHMoKSxcclxuICAgICAgICAocmVzdWx0KSA9PiB0aGlzLl9kZWxpdmVyeVBsYW5uaW5nU2VydmljZS51c2VyR3JvdXBzID0gcmVzdWx0XHJcbiAgICAgIClcclxuICAgIF07XHJcblxyXG4gICAgUHJvbWlzZS5hbGwocHJvbWlzZXMpLnRoZW4oKCkgPT4ge1xyXG4gICAgICAvLyBBbGwgbmVjZXNzYXJ5IGRhdGEgaGFzIGJlZW4gbG9hZGVkXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBmdWxsc2NyZWVuVG9nZ2xlKCkge1xyXG4gICAgdGhpcy5mdWxsc2NyZWVuRXZlbnQuZW1pdCgpXHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
@@ -1,13 +1,24 @@
1
1
  import { __awaiter } from "tslib";
2
- import { Component, EventEmitter, HostBinding, Output, ViewEncapsulation } from '@angular/core';
2
+ import { ChangeDetectorRef, Component, EventEmitter, HostBinding, Output, ViewEncapsulation } from '@angular/core';
3
3
  import { CashDrawersRequest } from '@colijnit/transactionapi/build/model/cash-drawers-request';
4
4
  import { PosOrderData } from '../../model/pos-order-data';
5
- import { TransactionHeaderBaseComponent } from '../core/base/transaction-header-base.component';
6
- export class TransactionCashRegisterDialogComponent extends TransactionHeaderBaseComponent {
7
- constructor() {
8
- // @Output()
9
- // public paymentDetailsSelected: EventEmitter<PaymentTransactionViewModel> = new EventEmitter<PaymentTransactionViewModel>();
10
- super(...arguments);
5
+ import { TransactionEventService } from "../../service/transaction-event.service";
6
+ import { IconCacheService } from "../../service/icon-cache.service";
7
+ import { TransactionScreenConfigurationService } from "../../service/transaction-screen-configuration.service";
8
+ import { TransactionImageService } from "../../service/transaction-image.service";
9
+ import { DictionaryService } from "../../service/dictionary.service";
10
+ import { TransactionService } from "../../service/transaction.service";
11
+ import { Icon } from "../../enum/icon.enum";
12
+ export class TransactionCashRegisterDialogComponent {
13
+ constructor(transactionEventService, iconCacheService, screenConfigService, imageService, dictionaryService, transactionService, changeDetector) {
14
+ this.transactionEventService = transactionEventService;
15
+ this.iconCacheService = iconCacheService;
16
+ this.screenConfigService = screenConfigService;
17
+ this.imageService = imageService;
18
+ this.dictionaryService = dictionaryService;
19
+ this.transactionService = transactionService;
20
+ this.changeDetector = changeDetector;
21
+ this.icons = Icon;
11
22
  this.saveButtonClicked = new EventEmitter();
12
23
  this.closeClicked = new EventEmitter();
13
24
  this.cashRegisters = [];
@@ -21,7 +32,6 @@ export class TransactionCashRegisterDialogComponent extends TransactionHeaderBas
21
32
  return true;
22
33
  }
23
34
  ngOnInit() {
24
- super.ngOnInit();
25
35
  this._prepareCashRegister();
26
36
  }
27
37
  cashRegisterSelected(cashRegister) {
@@ -83,12 +93,12 @@ export class TransactionCashRegisterDialogComponent extends TransactionHeaderBas
83
93
  }
84
94
  _getPrinterLayouts() {
85
95
  return __awaiter(this, void 0, void 0, function* () {
86
- this.printerLayouts = yield this.transactionService.getPosReceiptPrintLayouts(this.transactionInfo.uuid);
96
+ this.printerLayouts = yield this.transactionService.getPosReceiptPrintLayouts(undefined);
87
97
  });
88
98
  }
89
99
  _getEmailLayouts() {
90
100
  return __awaiter(this, void 0, void 0, function* () {
91
- this.emailLayouts = yield this.transactionService.getPosReceiptEmailLayouts(this.transactionInfo.uuid);
101
+ this.emailLayouts = yield this.transactionService.getPosReceiptEmailLayouts(undefined);
92
102
  });
93
103
  }
94
104
  _checkDefaultParameters(cashRegister) {
@@ -130,7 +140,7 @@ TransactionCashRegisterDialogComponent.decorators = [
130
140
  { type: Component, args: [{
131
141
  selector: "co-transaction-cash-register-dialog",
132
142
  template: `
133
- <co-dialog [showCloseIcon]="true" [footerTemplate]="footerTemplate" [headerTemplate]="headerTemplate" *ngIf="dialogVisible" (closeClick)="closeClicked.emit($event)">
143
+ <co-dialog [showCloseIcon]="true" [footerTemplate]="footerTemplate" [headerTemplate]="headerTemplate" *ngIf="dialogVisible" (closeClick)="closeClicked.emit()">
134
144
  <div class="dialog-content-wrapper">
135
145
  <div class="cash-registers">
136
146
  <co-payment-tile *ngFor="let cashRegister of cashRegisters"
@@ -147,7 +157,6 @@ TransactionCashRegisterDialogComponent.decorators = [
147
157
  [collection]="cashDrawers"
148
158
  [multiselect]="false"
149
159
  [required]="false"
150
- [readonly]="transactionHeaderService.readonly"
151
160
  [searchDisabled]="true"
152
161
  (modelChange)="handleDrawerChanged($event)"
153
162
  ></co-list-of-values>
@@ -158,7 +167,6 @@ TransactionCashRegisterDialogComponent.decorators = [
158
167
  [collection]="printerList"
159
168
  [multiselect]="false"
160
169
  [required]="false"
161
- [readonly]="transactionHeaderService.readonly"
162
170
  [searchDisabled]="true"
163
171
  (modelChange)="handlePrinterChanged($event)"
164
172
  ></co-list-of-values>
@@ -169,7 +177,6 @@ TransactionCashRegisterDialogComponent.decorators = [
169
177
  [collection]="printerLayouts"
170
178
  [multiselect]="false"
171
179
  [required]="false"
172
- [readonly]="transactionHeaderService.readonly"
173
180
  [searchDisabled]="true"
174
181
  ></co-list-of-values>
175
182
 
@@ -179,7 +186,6 @@ TransactionCashRegisterDialogComponent.decorators = [
179
186
  [collection]="emailLayouts"
180
187
  [multiselect]="false"
181
188
  [required]="false"
182
- [readonly]="transactionHeaderService.readonly"
183
189
  [searchDisabled]="true"
184
190
  ></co-list-of-values>
185
191
  </div>
@@ -207,9 +213,18 @@ TransactionCashRegisterDialogComponent.decorators = [
207
213
  encapsulation: ViewEncapsulation.None
208
214
  },] }
209
215
  ];
216
+ TransactionCashRegisterDialogComponent.ctorParameters = () => [
217
+ { type: TransactionEventService },
218
+ { type: IconCacheService },
219
+ { type: TransactionScreenConfigurationService },
220
+ { type: TransactionImageService },
221
+ { type: DictionaryService },
222
+ { type: TransactionService },
223
+ { type: ChangeDetectorRef }
224
+ ];
210
225
  TransactionCashRegisterDialogComponent.propDecorators = {
211
226
  saveButtonClicked: [{ type: Output }],
212
227
  closeClicked: [{ type: Output }],
213
228
  showClass: [{ type: HostBinding, args: ["class.co-transaction-cash-register-dialog",] }]
214
229
  };
215
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tY2FzaC1yZWdpc3Rlci1kaWFsb2cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJhbnNhY3Rpb24vc3JjL2xpYi9jb21wb25lbnQvdHJhbnNhY3Rpb24tY2FzaC1yZWdpc3Rlci1kaWFsb2cvdHJhbnNhY3Rpb24tY2FzaC1yZWdpc3Rlci1kaWFsb2cuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQVUsTUFBTSxFQUFFLGlCQUFpQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBR3RHLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDJEQUEyRCxDQUFDO0FBSTdGLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUN4RCxPQUFPLEVBQUMsOEJBQThCLEVBQUMsTUFBTSxnREFBZ0QsQ0FBQztBQWlGOUYsTUFBTSxPQUFPLHNDQUF1QyxTQUFRLDhCQUE4QjtJQS9FMUY7UUFpRkUsWUFBWTtRQUNaLDhIQUE4SDs7UUFHdkgsc0JBQWlCLEdBQStCLElBQUksWUFBWSxFQUFnQixDQUFDO1FBR2pGLGlCQUFZLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7UUFFNUQsa0JBQWEsR0FBVSxFQUFFLENBQUM7UUFFMUIsZ0JBQVcsR0FBaUIsRUFBRSxDQUFDO1FBRy9CLGdCQUFXLEdBQWMsRUFBRSxDQUFDO1FBRTVCLG1CQUFjLEdBQWlDLEVBQUUsQ0FBQztRQUNsRCxpQkFBWSxHQUFpQyxFQUFFLENBQUM7UUFJaEQsa0JBQWEsR0FBWSxLQUFLLENBQUM7SUF1SHhDLENBQUM7SUFwSFEsU0FBUztRQUNkLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVNLFFBQVE7UUFDYixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDakIsSUFBSSxDQUFDLG9CQUFvQixF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Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0EwRVQ7Z0JBQ0QsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7YUFDdEM7OztnQ0FNRSxNQUFNOzJCQUdOLE1BQU07d0JBaUJOLFdBQVcsU0FBQywyQ0FBMkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgT25Jbml0LCBPdXRwdXQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtDYXNoUmVnaXN0ZXJ9IGZyb20gJ0Bjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9jYXNoLXJlZ2lzdGVyJztcclxuaW1wb3J0IHtDYXNoRHJhd2VyfSBmcm9tICdAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvY2FzaC1kcmF3ZXIuYm8nO1xyXG5pbXBvcnQge0Nhc2hEcmF3ZXJzUmVxdWVzdH0gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL2Nhc2gtZHJhd2Vycy1yZXF1ZXN0JztcclxuaW1wb3J0IHtQcmludGVyfSBmcm9tICdAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC9wcmludGVyLmJvJztcclxuaW1wb3J0IHtSZXBvcnRMYXlvdXRTZWxlY3Rpb25QcmludH0gZnJvbSAnQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvcmVwb3J0LWxheW91dC1zZWxlY3Rpb24tcHJpbnQuYm8nO1xyXG5pbXBvcnQge1JlcG9ydExheW91dFNlbGVjdGlvbkVtYWlsfSBmcm9tICdAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC9yZXBvcnQtbGF5b3V0LXNlbGVjdGlvbi1lbWFpbC5ibyc7XHJcbmltcG9ydCB7UG9zT3JkZXJEYXRhfSBmcm9tICcuLi8uLi9tb2RlbC9wb3Mtb3JkZXItZGF0YSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25IZWFkZXJCYXNlQ29tcG9uZW50fSBmcm9tICcuLi9jb3JlL2Jhc2UvdHJhbnNhY3Rpb24taGVhZGVyLWJhc2UuY29tcG9uZW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcImNvLXRyYW5zYWN0aW9uLWNhc2gtcmVnaXN0ZXItZGlhbG9nXCIsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgICAgPGNvLWRpYWxvZyBbc2hvd0Nsb3NlSWNvbl09XCJ0cnVlXCIgW2Zvb3RlclRlbXBsYXRlXT1cImZvb3RlclRlbXBsYXRlXCIgW2hlYWRlclRlbXBsYXRlXT1cImhlYWRlclRlbXBsYXRlXCIgKm5nSWY9XCJkaWFsb2dWaXNpYmxlXCIgKGNsb3NlQ2xpY2spPVwiY2xvc2VDbGlja2VkLmVtaXQoJGV2ZW50KVwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImRpYWxvZy1jb250ZW50LXdyYXBwZXJcIj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FzaC1yZWdpc3RlcnNcIj5cclxuICAgICAgICAgICAgICAgICAgPGNvLXBheW1lbnQtdGlsZSAqbmdGb3I9XCJsZXQgY2FzaFJlZ2lzdGVyIG9mIGNhc2hSZWdpc3RlcnNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpY29uXT1cImNhc2hSZWdpc3Rlci5pY29uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGVzY3JpcHRpb25dPVwiY2FzaFJlZ2lzdGVyLmRlc2NyaXB0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc2VsZWN0ZWRdPVwiY2FzaFJlZ2lzdGVyID09PSBhY3RpdmVDYXNoUmVnaXN0ZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChzZWxlY3RlZENoYW5nZSk9XCJjYXNoUmVnaXN0ZXJTZWxlY3RlZChjYXNoUmVnaXN0ZXIpXCJcclxuICAgICAgICAgICAgICAgICAgPjwvY28tcGF5bWVudC10aWxlPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICA8Y28tbGlzdC1vZi12YWx1ZXMgW2xhYmVsXT1cIidDQVNIX0RSQVdFUicgfCBsb2NhbGl6ZVwiICAqbmdJZj1cIiFhY3RpdmVDYXNoUmVnaXN0ZXI/LmRlZmF1bHREcmF3ZXJOdW1iZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKG1vZGVsKV09XCJhY3RpdmVDYXNoRHJhd2VyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc3BsYXlGaWVsZF09XCInbnInXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NvbGxlY3Rpb25dPVwiY2FzaERyYXdlcnNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbXVsdGlzZWxlY3RdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcmVxdWlyZWRdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcmVhZG9ubHldPVwidHJhbnNhY3Rpb25IZWFkZXJTZXJ2aWNlLnJlYWRvbmx5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NlYXJjaERpc2FibGVkXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobW9kZWxDaGFuZ2UpPVwiaGFuZGxlRHJhd2VyQ2hhbmdlZCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICA+PC9jby1saXN0LW9mLXZhbHVlcz5cclxuXHJcbiAgICAgICAgICAgICAgPGNvLWxpc3Qtb2YtdmFsdWVzIFtsYWJlbF09XCInUFJJTlRFUicgfCBsb2NhbGl6ZVwiICpuZ0lmPVwiIWFjdGl2ZUNhc2hSZWdpc3Rlcj8uZGVmYXVsdFByaW50ZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKG1vZGVsKV09XCJhY3RpdmVQcmludGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc3BsYXlGaWVsZF09XCInbmFtZSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY29sbGVjdGlvbl09XCJwcmludGVyTGlzdFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFttdWx0aXNlbGVjdF09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZWFkb25seV09XCJ0cmFuc2FjdGlvbkhlYWRlclNlcnZpY2UucmVhZG9ubHlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc2VhcmNoRGlzYWJsZWRdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChtb2RlbENoYW5nZSk9XCJoYW5kbGVQcmludGVyQ2hhbmdlZCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICA+PC9jby1saXN0LW9mLXZhbHVlcz5cclxuXHJcbiAgICAgICAgICAgICAgPGNvLWxpc3Qtb2YtdmFsdWVzIFtsYWJlbF09XCInUFJJTlRFUl9MQVlPVVQnIHwgbG9jYWxpemVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKG1vZGVsKV09XCJzZWxlY3RlZFByaW50ZXJMYXlvdXRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlzcGxheUZpZWxkXT1cIiduYW1lJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjb2xsZWN0aW9uXT1cInByaW50ZXJMYXlvdXRzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW211bHRpc2VsZWN0XT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlcXVpcmVkXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cInRyYW5zYWN0aW9uSGVhZGVyU2VydmljZS5yZWFkb25seVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzZWFyY2hEaXNhYmxlZF09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICA+PC9jby1saXN0LW9mLXZhbHVlcz5cclxuXHJcbiAgICAgICAgICAgICAgPGNvLWxpc3Qtb2YtdmFsdWVzIFtsYWJlbF09XCInRU1BSUxfTEFZT1VUJyB8IGxvY2FsaXplXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwic2VsZWN0ZWRFbWFpbExheW91dFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNwbGF5RmllbGRdPVwiJ25hbWUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NvbGxlY3Rpb25dPVwiZW1haWxMYXlvdXRzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW211bHRpc2VsZWN0XT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlcXVpcmVkXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cInRyYW5zYWN0aW9uSGVhZGVyU2VydmljZS5yZWFkb25seVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzZWFyY2hEaXNhYmxlZF09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICA+PC9jby1saXN0LW9mLXZhbHVlcz5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2NvLWRpYWxvZz5cclxuXHJcbiAgICAgIDxuZy10ZW1wbGF0ZSAjaGVhZGVyVGVtcGxhdGU+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwidGl0bGUtd3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgIDxjby1pY29uIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24oaWNvbnMuQ2FzaFJlZ2lzdGVyKVwiPjwvY28taWNvbj5cclxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNvLWRpYWxvZy1oZWFkZXItdGl0bGVcIiBbdGV4dENvbnRlbnRdPVwiJ1NFTEVDVF9DQVNIX1JFR0lTVEVSJyB8IGxvY2FsaXplXCI+PC9zcGFuPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvbmctdGVtcGxhdGU+XHJcblxyXG4gICAgICA8bmctdGVtcGxhdGUgI2Zvb3RlclRlbXBsYXRlPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvLWRpYWxvZy1mb290ZXItYnV0dG9uLXdyYXBwZXJcIj5cclxuICAgICAgICAgICAgICA8bmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICA8Y28tYnV0dG9uIGNsYXNzPVwic2F2ZS1idXR0b25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhYWN0aXZlQ2FzaERyYXdlciB8fCAhYWN0aXZlUHJpbnRlciB8fCAhc2VsZWN0ZWRFbWFpbExheW91dCB8fCAhc2VsZWN0ZWRQcmludGVyTGF5b3V0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb25zLkNoZWNrRHVvdG9uZSlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzYXZlQnV0dG9uQ2xpY2soKVwiXHJcbiAgICAgICAgICAgICAgICAgID48L2NvLWJ1dHRvbj5cclxuICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICA8L25nLXRlbXBsYXRlPlxyXG4gIGAsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25DYXNoUmVnaXN0ZXJEaWFsb2dDb21wb25lbnQgZXh0ZW5kcyBUcmFuc2FjdGlvbkhlYWRlckJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICAvLyBAT3V0cHV0KClcclxuICAvLyBwdWJsaWMgcGF5bWVudERldGFpbHNTZWxlY3RlZDogRXZlbnRFbWl0dGVyPFBheW1lbnRUcmFuc2FjdGlvblZpZXdNb2RlbD4gPSBuZXcgRXZlbnRFbWl0dGVyPFBheW1lbnRUcmFuc2FjdGlvblZpZXdNb2RlbD4oKTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIHNhdmVCdXR0b25DbGlja2VkOiBFdmVudEVtaXR0ZXI8UG9zT3JkZXJEYXRhPiA9IG5ldyBFdmVudEVtaXR0ZXI8UG9zT3JkZXJEYXRhPigpO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgY2xvc2VDbGlja2VkOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcblxyXG4gIHB1YmxpYyBjYXNoUmVnaXN0ZXJzOiBhbnlbXSA9IFtdO1xyXG4gIHB1YmxpYyBhY3RpdmVDYXNoUmVnaXN0ZXI6IENhc2hSZWdpc3RlcjtcclxuICBwdWJsaWMgY2FzaERyYXdlcnM6IENhc2hEcmF3ZXJbXSA9IFtdO1xyXG4gIHB1YmxpYyBhY3RpdmVDYXNoRHJhd2VyOiBDYXNoRHJhd2VyO1xyXG5cclxuICBwdWJsaWMgcHJpbnRlckxpc3Q6IFByaW50ZXJbXSA9IFtdO1xyXG4gIHB1YmxpYyBhY3RpdmVQcmludGVyOiBQcmludGVyO1xyXG4gIHB1YmxpYyBwcmludGVyTGF5b3V0czogUmVwb3J0TGF5b3V0U2VsZWN0aW9uUHJpbnRbXSA9IFtdO1xyXG4gIHB1YmxpYyBlbWFpbExheW91dHM6IFJlcG9ydExheW91dFNlbGVjdGlvbkVtYWlsW10gPSBbXTtcclxuICBwdWJsaWMgc2VsZWN0ZWRQcmludGVyTGF5b3V0OiBSZXBvcnRMYXlvdXRTZWxlY3Rpb25QcmludDtcclxuICBwdWJsaWMgc2VsZWN0ZWRFbWFpbExheW91dDogUmVwb3J0TGF5b3V0U2VsZWN0aW9uRW1haWw7XHJcblxyXG4gIHB1YmxpYyBkaWFsb2dWaXNpYmxlOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIEBIb3N0QmluZGluZyhcImNsYXNzLmNvLXRyYW5zYWN0aW9uLWNhc2gtcmVnaXN0ZXItZGlhbG9nXCIpXHJcbiAgcHVibGljIHNob3dDbGFzcygpIHtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG5nT25Jbml0KCkge1xyXG4gICAgc3VwZXIubmdPbkluaXQoKTtcclxuICAgIHRoaXMuX3ByZXBhcmVDYXNoUmVnaXN0ZXIoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjYXNoUmVnaXN0ZXJTZWxlY3RlZChjYXNoUmVnaXN0ZXI6IENhc2hSZWdpc3Rlcikge1xyXG4gICAgdGhpcy5hY3RpdmVDYXNoUmVnaXN0ZXIgPSBjYXNoUmVnaXN0ZXI7XHJcbiAgICB0aGlzLl9nZXRDYXNoRHJhd2Vycyh0aGlzLmFjdGl2ZUNhc2hSZWdpc3Rlci5ncm91cCkudGhlbigoKSA9PiB0aGlzLl9jaGVja0RlZmF1bHRQYXJhbWV0ZXJzKHRoaXMuYWN0aXZlQ2FzaFJlZ2lzdGVyKSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2F2ZUJ1dHRvbkNsaWNrKCk6IHZvaWQge1xyXG4gICAgY29uc3QgZGF0YTogUG9zT3JkZXJEYXRhID0gbmV3IFBvc09yZGVyRGF0YSgpO1xyXG4gICAgZGF0YS5jYXNoRHJhd2VySWQgPSB0aGlzLmFjdGl2ZUNhc2hEcmF3ZXIuaWQ7IC8vIENhc2hEcmF3ZXIuaWRcclxuICAgIGRhdGEuY2FzaFJlZ2lzdGVyR3JvdXBJZCA9IHRoaXMuYWN0aXZlQ2FzaERyYXdlci5ncm91cDsgLy8gQ2FzaERyYXdlci5ncm91cFxyXG4gICAgZGF0YS5jYXNoUmVnaXN0ZXJOciA9IHRoaXMuYWN0aXZlQ2FzaFJlZ2lzdGVyLm5yOyAvLyBDYXNoUmVnaXN0ZXIubnJcclxuICAgIGRhdGEucHJpbnRlck5hbWUgPSB0aGlzLmFjdGl2ZVByaW50ZXIubmFtZTtcclxuICAgIGRhdGEucHJpbnRlckxheW91dCA9IHRoaXMuc2VsZWN0ZWRQcmludGVyTGF5b3V0O1xyXG4gICAgZGF0YS5lbWFpbExheW91dCA9IHRoaXMuc2VsZWN0ZWRFbWFpbExheW91dDtcclxuICAgIHRoaXMuc2F2ZUJ1dHRvbkNsaWNrZWQubmV4dChkYXRhKTtcclxuICAgIC8vIGNvbnN0IHBheW1lbnRUcmFuc2FjdGlvblZpZXdNb2RlbCA9IG5ldyBQYXltZW50VHJhbnNhY3Rpb25WaWV3TW9kZWwoKTtcclxuICAgIC8vIHBheW1lbnRUcmFuc2FjdGlvblZpZXdNb2RlbC5jYXNoUmVnaXN0ZXIgPSB0aGlzLmFjdGl2ZUNhc2hSZWdpc3RlcjtcclxuICAgIC8vIHBheW1lbnRUcmFuc2FjdGlvblZpZXdNb2RlbC5jYXNoRHJhd2VyID0gdGhpcy5hY3RpdmVDYXNoRHJhd2VyO1xyXG4gICAgLy8gcGF5bWVudFRyYW5zYWN0aW9uVmlld01vZGVsLnByaW50ZXIgPSB0aGlzLmFjdGl2ZVByaW50ZXI7XHJcbiAgICAvLyBwYXltZW50VHJhbnNhY3Rpb25WaWV3TW9kZWwucHJpbnRlckxheW91dCA9IHRoaXMuc2VsZWN0ZWRQcmludGVyTGF5b3V0O1xyXG4gICAgLy8gcGF5bWVudFRyYW5zYWN0aW9uVmlld01vZGVsLmVtYWlsTGF5b3V0ID0gdGhpcy5zZWxlY3RlZEVtYWlsTGF5b3V0O1xyXG4gICAgLy9cclxuICAgIC8vIHRoaXMucGF5bWVudERldGFpbHNTZWxlY3RlZC5uZXh0KHBheW1lbnRUcmFuc2FjdGlvblZpZXdNb2RlbCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFzeW5jIF9nZXRDYXNoUmVnaXN0ZXJzKGJyYW5jaDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICB0aGlzLmNhc2hSZWdpc3RlcnMgPSBhd2FpdCB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5nZXRDYXNoUmVnaXN0ZXJzKGJyYW5jaCk7XHJcbiAgICBpZiAodGhpcy5jYXNoUmVnaXN0ZXJzLmxlbmd0aCA+IDApIHtcclxuICAgICAgdGhpcy5hY3RpdmVDYXNoUmVnaXN0ZXIgPSB0aGlzLmNhc2hSZWdpc3RlcnNbMF07XHJcbiAgICAgIGF3YWl0IHRoaXMuX2dldENhc2hEcmF3ZXJzKHRoaXMuYWN0aXZlQ2FzaFJlZ2lzdGVyLmdyb3VwKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgX2dldENhc2hEcmF3ZXJzKGdyb3VwOiBudW1iZXIpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGNvbnN0IGNhc2hEcmF3ZXJzUmVxdWVzdDogQ2FzaERyYXdlcnNSZXF1ZXN0ID0gbmV3IENhc2hEcmF3ZXJzUmVxdWVzdCgpO1xyXG4gICAgY2FzaERyYXdlcnNSZXF1ZXN0Lmdyb3VwID0gZ3JvdXA7XHJcbiAgICB0aGlzLmNhc2hEcmF3ZXJzID0gYXdhaXQgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UuZ2V0Q2FzaERyYXdlcnMoY2FzaERyYXdlcnNSZXF1ZXN0KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgX2dldFByaW50ZXJzKCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgdGhpcy5wcmludGVyTGlzdCA9IGF3YWl0IHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdldFByaW50ZXJzKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9wcmVwYXJlQ2FzaFJlZ2lzdGVyKCkge1xyXG4gICAgaWYgKCF0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5jdXJyZW50QnJhbmNoKSB7XHJcbiAgICAgIC8vIHNob3cgcG9wLXVwXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLl9wcmVwYXJlRGlhbG9nRGF0YSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZURyYXdlckNoYW5nZWQoY2FzaERyYXdlcjogQ2FzaERyYXdlcik6IHZvaWQge1xyXG4gICAgdGhpcy5hY3RpdmVDYXNoRHJhd2VyID0gY2FzaERyYXdlcjtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVQcmludGVyQ2hhbmdlZChwcmludGVyOiBQcmludGVyKTogdm9pZCB7XHJcbiAgICB0aGlzLmFjdGl2ZVByaW50ZXIgPSBwcmludGVyO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhc3luYyBfZ2V0UHJpbnRlckxheW91dHMoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICB0aGlzLnByaW50ZXJMYXlvdXRzID0gYXdhaXQgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UuZ2V0UG9zUmVjZWlwdFByaW50TGF5b3V0cyh0aGlzLnRyYW5zYWN0aW9uSW5mby51dWlkKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgX2dldEVtYWlsTGF5b3V0cygpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIHRoaXMuZW1haWxMYXlvdXRzID0gYXdhaXQgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UuZ2V0UG9zUmVjZWlwdEVtYWlsTGF5b3V0cyh0aGlzLnRyYW5zYWN0aW9uSW5mby51dWlkKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2NoZWNrRGVmYXVsdFBhcmFtZXRlcnMoY2FzaFJlZ2lzdGVyOiBDYXNoUmVnaXN0ZXIpOiB2b2lkIHtcclxuICAgIHRoaXMuYWN0aXZlQ2FzaERyYXdlciA9IG51bGw7XHJcbiAgICB0aGlzLmFjdGl2ZVByaW50ZXIgPSBudWxsO1xyXG5cclxuICAgIGlmIChjYXNoUmVnaXN0ZXIuZGVmYXVsdERyYXdlck51bWJlcikge1xyXG4gICAgICBjb25zdCBkZWZhdWx0Q2FzaERyYXdlcjogQ2FzaERyYXdlciA9IHRoaXMuY2FzaERyYXdlcnMuZmluZCgoZHJhd2VyOiBDYXNoRHJhd2VyKSA9PiBkcmF3ZXIubnIgPT09IGNhc2hSZWdpc3Rlci5kZWZhdWx0RHJhd2VyTnVtYmVyKTtcclxuICAgICAgdGhpcy5hY3RpdmVDYXNoRHJhd2VyID0gZGVmYXVsdENhc2hEcmF3ZXIgPyBkZWZhdWx0Q2FzaERyYXdlciA6IHRoaXMuYWN0aXZlQ2FzaERyYXdlcjtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoY2FzaFJlZ2lzdGVyLmRlZmF1bHRQcmludGVyKSB7XHJcbiAgICAgIGNvbnN0IGRlZmF1bHRQcmludGVyOiBQcmludGVyID0gdGhpcy5wcmludGVyTGlzdC5maW5kKChwcmludGVyOiBQcmludGVyKSA9PiBwcmludGVyLm5hbWUgPT09IGNhc2hSZWdpc3Rlci5kZWZhdWx0UHJpbnRlcik7XHJcbiAgICAgIHRoaXMuYWN0aXZlUHJpbnRlciA9IGRlZmF1bHRQcmludGVyID8gZGVmYXVsdFByaW50ZXIgOiB0aGlzLmFjdGl2ZVByaW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgZGVmYXVsdFByaW50TGF5b3V0OiBSZXBvcnRMYXlvdXRTZWxlY3Rpb25QcmludCA9IHRoaXMucHJpbnRlckxheW91dHMuZmluZCgobGF5b3V0OiBSZXBvcnRMYXlvdXRTZWxlY3Rpb25QcmludCkgPT4gbGF5b3V0LmlzRGVmYXVsdCk7XHJcbiAgICB0aGlzLnNlbGVjdGVkUHJpbnRlckxheW91dCA9IGRlZmF1bHRQcmludExheW91dCA/IGRlZmF1bHRQcmludExheW91dCA6IG51bGw7XHJcblxyXG4gICAgY29uc3QgZGVmYXVsdEVtYWlsTGF5b3V0OiBSZXBvcnRMYXlvdXRTZWxlY3Rpb25FbWFpbCA9IHRoaXMuZW1haWxMYXlvdXRzLmZpbmQoKGxheW91dDogUmVwb3J0TGF5b3V0U2VsZWN0aW9uRW1haWwpID0+IGxheW91dC5pc0RlZmF1bHQpO1xyXG4gICAgdGhpcy5zZWxlY3RlZEVtYWlsTGF5b3V0ID0gZGVmYXVsdEVtYWlsTGF5b3V0ID8gZGVmYXVsdEVtYWlsTGF5b3V0IDogbnVsbDtcclxuXHJcbiAgICBpZiAodGhpcy5hY3RpdmVDYXNoRHJhd2VyICYmIHRoaXMuYWN0aXZlUHJpbnRlciAmJiBkZWZhdWx0UHJpbnRMYXlvdXQgJiYgZGVmYXVsdEVtYWlsTGF5b3V0ICYmIHRoaXMuY2FzaFJlZ2lzdGVycy5sZW5ndGggPT09IDEpIHtcclxuICAgICAgdGhpcy5zYXZlQnV0dG9uQ2xpY2soKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgX3ByZXBhcmVEaWFsb2dEYXRhKCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgY29uc3QgcHJvbWlzZXM6IFByb21pc2U8dm9pZD5bXSA9IFtcclxuICAgICAgdGhpcy5fZ2V0Q2FzaFJlZ2lzdGVycyh0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5jdXJyZW50QnJhbmNoKSxcclxuICAgICAgdGhpcy5fZ2V0UHJpbnRlcnMoKSxcclxuICAgICAgdGhpcy5fZ2V0UHJpbnRlckxheW91dHMoKSxcclxuICAgICAgdGhpcy5fZ2V0RW1haWxMYXlvdXRzKClcclxuICAgIF07XHJcblxyXG4gICAgYXdhaXQgUHJvbWlzZS5hbGwocHJvbWlzZXMpO1xyXG5cclxuICAgIGlmICh0aGlzLmNhc2hSZWdpc3RlcnMubGVuZ3RoID4gMCkge1xyXG4gICAgICB0aGlzLl9jaGVja0RlZmF1bHRQYXJhbWV0ZXJzKHRoaXMuY2FzaFJlZ2lzdGVyc1swXSk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5kaWFsb2dWaXNpYmxlID0gdHJ1ZTtcclxuICB9XHJcbn1cclxuIl19
230
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tY2FzaC1yZWdpc3Rlci1kaWFsb2cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJhbnNhY3Rpb24vc3JjL2xpYi9jb21wb25lbnQvdHJhbnNhY3Rpb24tY2FzaC1yZWdpc3Rlci1kaWFsb2cvdHJhbnNhY3Rpb24tY2FzaC1yZWdpc3Rlci1kaWFsb2cuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osV0FBVyxFQUVYLE1BQU0sRUFDTixpQkFBaUIsRUFDbEIsTUFBTSxlQUFlLENBQUM7QUFHdkIsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sMkRBQTJELENBQUM7QUFJN0YsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ3hELE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLHlDQUF5QyxDQUFDO0FBQ2hGLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQ2xFLE9BQU8sRUFBQyxxQ0FBcUMsRUFBQyxNQUFNLHdEQUF3RCxDQUFDO0FBQzdHLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLHlDQUF5QyxDQUFDO0FBQ2hGLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQ25FLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBQ3JFLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQTZFMUMsTUFBTSxPQUFPLHNDQUFzQztJQTRCakQsWUFDUyx1QkFBZ0QsRUFDaEQsZ0JBQWtDLEVBQ2xDLG1CQUEwRCxFQUN2RCxZQUFxQyxFQUNyQyxpQkFBb0MsRUFDcEMsa0JBQXNDLEVBQ3RDLGNBQWlDO1FBTnBDLDRCQUF1QixHQUF2Qix1QkFBdUIs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a0I7O1lBQzlCLE1BQU0sUUFBUSxHQUFvQjtnQkFDaEMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxhQUFhLENBQUM7Z0JBQzdELElBQUksQ0FBQyxZQUFZLEVBQUU7Z0JBQ25CLElBQUksQ0FBQyxrQkFBa0IsRUFBRTtnQkFDekIsSUFBSSxDQUFDLGdCQUFnQixFQUFFO2FBQ3hCLENBQUM7WUFFRixNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7WUFFNUIsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7Z0JBQ2pDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDckQ7WUFFRCxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQztRQUM1QixDQUFDO0tBQUE7OztZQWhPRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLHFDQUFxQztnQkFDL0MsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBc0VUO2dCQUNELGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2FBQ3RDOzs7WUFsRk8sdUJBQXVCO1lBQ3ZCLGdCQUFnQjtZQUNoQixxQ0FBcUM7WUFDckMsdUJBQXVCO1lBQ3ZCLGlCQUFpQjtZQUNqQixrQkFBa0I7WUFwQnhCLGlCQUFpQjs7O2dDQXFHaEIsTUFBTTsyQkFHTixNQUFNO3dCQWlCTixXQUFXLFNBQUMsMkNBQTJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDb21wb25lbnQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIEhvc3RCaW5kaW5nLFxyXG4gIE9uSW5pdCxcclxuICBPdXRwdXQsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb25cclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtDYXNoUmVnaXN0ZXJ9IGZyb20gJ0Bjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9jYXNoLXJlZ2lzdGVyJztcclxuaW1wb3J0IHtDYXNoRHJhd2VyfSBmcm9tICdAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvY2FzaC1kcmF3ZXIuYm8nO1xyXG5pbXBvcnQge0Nhc2hEcmF3ZXJzUmVxdWVzdH0gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL2Nhc2gtZHJhd2Vycy1yZXF1ZXN0JztcclxuaW1wb3J0IHtQcmludGVyfSBmcm9tICdAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC9wcmludGVyLmJvJztcclxuaW1wb3J0IHtSZXBvcnRMYXlvdXRTZWxlY3Rpb25QcmludH0gZnJvbSAnQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvcmVwb3J0LWxheW91dC1zZWxlY3Rpb24tcHJpbnQuYm8nO1xyXG5pbXBvcnQge1JlcG9ydExheW91dFNlbGVjdGlvbkVtYWlsfSBmcm9tICdAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC9yZXBvcnQtbGF5b3V0LXNlbGVjdGlvbi1lbWFpbC5ibyc7XHJcbmltcG9ydCB7UG9zT3JkZXJEYXRhfSBmcm9tICcuLi8uLi9tb2RlbC9wb3Mtb3JkZXItZGF0YSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25FdmVudFNlcnZpY2V9IGZyb20gXCIuLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLWV2ZW50LnNlcnZpY2VcIjtcclxuaW1wb3J0IHtJY29uQ2FjaGVTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZS9pY29uLWNhY2hlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvblNjcmVlbkNvbmZpZ3VyYXRpb25TZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi1zY3JlZW4tY29uZmlndXJhdGlvbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25JbWFnZVNlcnZpY2V9IGZyb20gXCIuLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLWltYWdlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtEaWN0aW9uYXJ5U2VydmljZX0gZnJvbSBcIi4uLy4uL3NlcnZpY2UvZGljdGlvbmFyeS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25TZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7SWNvbn0gZnJvbSBcIi4uLy4uL2VudW0vaWNvbi5lbnVtXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJjby10cmFuc2FjdGlvbi1jYXNoLXJlZ2lzdGVyLWRpYWxvZ1wiLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICAgIDxjby1kaWFsb2cgW3Nob3dDbG9zZUljb25dPVwidHJ1ZVwiIFtmb290ZXJUZW1wbGF0ZV09XCJmb290ZXJUZW1wbGF0ZVwiIFtoZWFkZXJUZW1wbGF0ZV09XCJoZWFkZXJUZW1wbGF0ZVwiICpuZ0lmPVwiZGlhbG9nVmlzaWJsZVwiIChjbG9zZUNsaWNrKT1cImNsb3NlQ2xpY2tlZC5lbWl0KClcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJkaWFsb2ctY29udGVudC13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhc2gtcmVnaXN0ZXJzXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxjby1wYXltZW50LXRpbGUgKm5nRm9yPVwibGV0IGNhc2hSZWdpc3RlciBvZiBjYXNoUmVnaXN0ZXJzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaWNvbl09XCJjYXNoUmVnaXN0ZXIuaWNvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rlc2NyaXB0aW9uXT1cImNhc2hSZWdpc3Rlci5kZXNjcmlwdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NlbGVjdGVkXT1cImNhc2hSZWdpc3RlciA9PT0gYWN0aXZlQ2FzaFJlZ2lzdGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoc2VsZWN0ZWRDaGFuZ2UpPVwiY2FzaFJlZ2lzdGVyU2VsZWN0ZWQoY2FzaFJlZ2lzdGVyKVwiXHJcbiAgICAgICAgICAgICAgICAgID48L2NvLXBheW1lbnQtdGlsZT5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgPGNvLWxpc3Qtb2YtdmFsdWVzIFtsYWJlbF09XCInQ0FTSF9EUkFXRVInIHwgbG9jYWxpemVcIiAgKm5nSWY9XCIhYWN0aXZlQ2FzaFJlZ2lzdGVyPy5kZWZhdWx0RHJhd2VyTnVtYmVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwiYWN0aXZlQ2FzaERyYXdlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNwbGF5RmllbGRdPVwiJ25yJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjb2xsZWN0aW9uXT1cImNhc2hEcmF3ZXJzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW211bHRpc2VsZWN0XT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlcXVpcmVkXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NlYXJjaERpc2FibGVkXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobW9kZWxDaGFuZ2UpPVwiaGFuZGxlRHJhd2VyQ2hhbmdlZCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICA+PC9jby1saXN0LW9mLXZhbHVlcz5cclxuXHJcbiAgICAgICAgICAgICAgPGNvLWxpc3Qtb2YtdmFsdWVzIFtsYWJlbF09XCInUFJJTlRFUicgfCBsb2NhbGl6ZVwiICpuZ0lmPVwiIWFjdGl2ZUNhc2hSZWdpc3Rlcj8uZGVmYXVsdFByaW50ZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKG1vZGVsKV09XCJhY3RpdmVQcmludGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc3BsYXlGaWVsZF09XCInbmFtZSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY29sbGVjdGlvbl09XCJwcmludGVyTGlzdFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFttdWx0aXNlbGVjdF09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzZWFyY2hEaXNhYmxlZF09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG1vZGVsQ2hhbmdlKT1cImhhbmRsZVByaW50ZXJDaGFuZ2VkKCRldmVudClcIlxyXG4gICAgICAgICAgICAgID48L2NvLWxpc3Qtb2YtdmFsdWVzPlxyXG5cclxuICAgICAgICAgICAgICA8Y28tbGlzdC1vZi12YWx1ZXMgW2xhYmVsXT1cIidQUklOVEVSX0xBWU9VVCcgfCBsb2NhbGl6ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsobW9kZWwpXT1cInNlbGVjdGVkUHJpbnRlckxheW91dFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNwbGF5RmllbGRdPVwiJ25hbWUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NvbGxlY3Rpb25dPVwicHJpbnRlckxheW91dHNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbXVsdGlzZWxlY3RdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcmVxdWlyZWRdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc2VhcmNoRGlzYWJsZWRdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgPjwvY28tbGlzdC1vZi12YWx1ZXM+XHJcblxyXG4gICAgICAgICAgICAgIDxjby1saXN0LW9mLXZhbHVlcyBbbGFiZWxdPVwiJ0VNQUlMX0xBWU9VVCcgfCBsb2NhbGl6ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsobW9kZWwpXT1cInNlbGVjdGVkRW1haWxMYXlvdXRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlzcGxheUZpZWxkXT1cIiduYW1lJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjb2xsZWN0aW9uXT1cImVtYWlsTGF5b3V0c1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFttdWx0aXNlbGVjdF09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzZWFyY2hEaXNhYmxlZF09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICA+PC9jby1saXN0LW9mLXZhbHVlcz5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2NvLWRpYWxvZz5cclxuXHJcbiAgICAgIDxuZy10ZW1wbGF0ZSAjaGVhZGVyVGVtcGxhdGU+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwidGl0bGUtd3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgIDxjby1pY29uIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24oaWNvbnMuQ2FzaFJlZ2lzdGVyKVwiPjwvY28taWNvbj5cclxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNvLWRpYWxvZy1oZWFkZXItdGl0bGVcIiBbdGV4dENvbnRlbnRdPVwiJ1NFTEVDVF9DQVNIX1JFR0lTVEVSJyB8IGxvY2FsaXplXCI+PC9zcGFuPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvbmctdGVtcGxhdGU+XHJcblxyXG4gICAgICA8bmctdGVtcGxhdGUgI2Zvb3RlclRlbXBsYXRlPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvLWRpYWxvZy1mb290ZXItYnV0dG9uLXdyYXBwZXJcIj5cclxuICAgICAgICAgICAgICA8bmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICA8Y28tYnV0dG9uIGNsYXNzPVwic2F2ZS1idXR0b25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhYWN0aXZlQ2FzaERyYXdlciB8fCAhYWN0aXZlUHJpbnRlciB8fCAhc2VsZWN0ZWRFbWFpbExheW91dCB8fCAhc2VsZWN0ZWRQcmludGVyTGF5b3V0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb25zLkNoZWNrRHVvdG9uZSlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzYXZlQnV0dG9uQ2xpY2soKVwiXHJcbiAgICAgICAgICAgICAgICAgID48L2NvLWJ1dHRvbj5cclxuICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICA8L25nLXRlbXBsYXRlPlxyXG4gIGAsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25DYXNoUmVnaXN0ZXJEaWFsb2dDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIHB1YmxpYyByZWFkb25seSBpY29uczogdHlwZW9mIEljb24gPSBJY29uO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgc2F2ZUJ1dHRvbkNsaWNrZWQ6IEV2ZW50RW1pdHRlcjxQb3NPcmRlckRhdGE+ID0gbmV3IEV2ZW50RW1pdHRlcjxQb3NPcmRlckRhdGE+KCk7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyBjbG9zZUNsaWNrZWQ6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuXHJcbiAgcHVibGljIGNhc2hSZWdpc3RlcnM6IGFueVtdID0gW107XHJcbiAgcHVibGljIGFjdGl2ZUNhc2hSZWdpc3RlcjogQ2FzaFJlZ2lzdGVyO1xyXG4gIHB1YmxpYyBjYXNoRHJhd2VyczogQ2FzaERyYXdlcltdID0gW107XHJcbiAgcHVibGljIGFjdGl2ZUNhc2hEcmF3ZXI6IENhc2hEcmF3ZXI7XHJcblxyXG4gIHB1YmxpYyBwcmludGVyTGlzdDogUHJpbnRlcltdID0gW107XHJcbiAgcHVibGljIGFjdGl2ZVByaW50ZXI6IFByaW50ZXI7XHJcbiAgcHVibGljIHByaW50ZXJMYXlvdXRzOiBSZXBvcnRMYXlvdXRTZWxlY3Rpb25QcmludFtdID0gW107XHJcbiAgcHVibGljIGVtYWlsTGF5b3V0czogUmVwb3J0TGF5b3V0U2VsZWN0aW9uRW1haWxbXSA9IFtdO1xyXG4gIHB1YmxpYyBzZWxlY3RlZFByaW50ZXJMYXlvdXQ6IFJlcG9ydExheW91dFNlbGVjdGlvblByaW50O1xyXG4gIHB1YmxpYyBzZWxlY3RlZEVtYWlsTGF5b3V0OiBSZXBvcnRMYXlvdXRTZWxlY3Rpb25FbWFpbDtcclxuXHJcbiAgcHVibGljIGRpYWxvZ1Zpc2libGU6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgQEhvc3RCaW5kaW5nKFwiY2xhc3MuY28tdHJhbnNhY3Rpb24tY2FzaC1yZWdpc3Rlci1kaWFsb2dcIilcclxuICBwdWJsaWMgc2hvd0NsYXNzKCkge1xyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyB0cmFuc2FjdGlvbkV2ZW50U2VydmljZTogVHJhbnNhY3Rpb25FdmVudFNlcnZpY2UsXHJcbiAgICBwdWJsaWMgaWNvbkNhY2hlU2VydmljZTogSWNvbkNhY2hlU2VydmljZSxcclxuICAgIHB1YmxpYyBzY3JlZW5Db25maWdTZXJ2aWNlOiBUcmFuc2FjdGlvblNjcmVlbkNvbmZpZ3VyYXRpb25TZXJ2aWNlLFxyXG4gICAgcHJvdGVjdGVkIGltYWdlU2VydmljZTogVHJhbnNhY3Rpb25JbWFnZVNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgZGljdGlvbmFyeVNlcnZpY2U6IERpY3Rpb25hcnlTZXJ2aWNlLFxyXG4gICAgcHJvdGVjdGVkIHRyYW5zYWN0aW9uU2VydmljZTogVHJhbnNhY3Rpb25TZXJ2aWNlLFxyXG4gICAgcHJvdGVjdGVkIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZlxyXG4gICkge1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5fcHJlcGFyZUNhc2hSZWdpc3RlcigpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNhc2hSZWdpc3RlclNlbGVjdGVkKGNhc2hSZWdpc3RlcjogQ2FzaFJlZ2lzdGVyKSB7XHJcbiAgICB0aGlzLmFjdGl2ZUNhc2hSZWdpc3RlciA9IGNhc2hSZWdpc3RlcjtcclxuICAgIHRoaXMuX2dldENhc2hEcmF3ZXJzKHRoaXMuYWN0aXZlQ2FzaFJlZ2lzdGVyLmdyb3VwKS50aGVuKCgpID0+IHRoaXMuX2NoZWNrRGVmYXVsdFBhcmFtZXRlcnModGhpcy5hY3RpdmVDYXNoUmVnaXN0ZXIpKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzYXZlQnV0dG9uQ2xpY2soKTogdm9pZCB7XHJcbiAgICBjb25zdCBkYXRhOiBQb3NPcmRlckRhdGEgPSBuZXcgUG9zT3JkZXJEYXRhKCk7XHJcbiAgICBkYXRhLmNhc2hEcmF3ZXJJZCA9IHRoaXMuYWN0aXZlQ2FzaERyYXdlci5pZDsgLy8gQ2FzaERyYXdlci5pZFxyXG4gICAgZGF0YS5jYXNoUmVnaXN0ZXJHcm91cElkID0gdGhpcy5hY3RpdmVDYXNoRHJhd2VyLmdyb3VwOyAvLyBDYXNoRHJhd2VyLmdyb3VwXHJcbiAgICBkYXRhLmNhc2hSZWdpc3Rlck5yID0gdGhpcy5hY3RpdmVDYXNoUmVnaXN0ZXIubnI7IC8vIENhc2hSZWdpc3Rlci5uclxyXG4gICAgZGF0YS5wcmludGVyTmFtZSA9IHRoaXMuYWN0aXZlUHJpbnRlci5uYW1lO1xyXG4gICAgZGF0YS5wcmludGVyTGF5b3V0ID0gdGhpcy5zZWxlY3RlZFByaW50ZXJMYXlvdXQ7XHJcbiAgICBkYXRhLmVtYWlsTGF5b3V0ID0gdGhpcy5zZWxlY3RlZEVtYWlsTGF5b3V0O1xyXG4gICAgdGhpcy5zYXZlQnV0dG9uQ2xpY2tlZC5uZXh0KGRhdGEpO1xyXG4gICAgLy8gY29uc3QgcGF5bWVudFRyYW5zYWN0aW9uVmlld01vZGVsID0gbmV3IFBheW1lbnRUcmFuc2FjdGlvblZpZXdNb2RlbCgpO1xyXG4gICAgLy8gcGF5bWVudFRyYW5zYWN0aW9uVmlld01vZGVsLmNhc2hSZWdpc3RlciA9IHRoaXMuYWN0aXZlQ2FzaFJlZ2lzdGVyO1xyXG4gICAgLy8gcGF5bWVudFRyYW5zYWN0aW9uVmlld01vZGVsLmNhc2hEcmF3ZXIgPSB0aGlzLmFjdGl2ZUNhc2hEcmF3ZXI7XHJcbiAgICAvLyBwYXltZW50VHJhbnNhY3Rpb25WaWV3TW9kZWwucHJpbnRlciA9IHRoaXMuYWN0aXZlUHJpbnRlcjtcclxuICAgIC8vIHBheW1lbnRUcmFuc2FjdGlvblZpZXdNb2RlbC5wcmludGVyTGF5b3V0ID0gdGhpcy5zZWxlY3RlZFByaW50ZXJMYXlvdXQ7XHJcbiAgICAvLyBwYXltZW50VHJhbnNhY3Rpb25WaWV3TW9kZWwuZW1haWxMYXlvdXQgPSB0aGlzLnNlbGVjdGVkRW1haWxMYXlvdXQ7XHJcbiAgICAvL1xyXG4gICAgLy8gdGhpcy5wYXltZW50RGV0YWlsc1NlbGVjdGVkLm5leHQocGF5bWVudFRyYW5zYWN0aW9uVmlld01vZGVsKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgX2dldENhc2hSZWdpc3RlcnMoYnJhbmNoOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIHRoaXMuY2FzaFJlZ2lzdGVycyA9IGF3YWl0IHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdldENhc2hSZWdpc3RlcnMoYnJhbmNoKTtcclxuICAgIGlmICh0aGlzLmNhc2hSZWdpc3RlcnMubGVuZ3RoID4gMCkge1xyXG4gICAgICB0aGlzLmFjdGl2ZUNhc2hSZWdpc3RlciA9IHRoaXMuY2FzaFJlZ2lzdGVyc1swXTtcclxuICAgICAgYXdhaXQgdGhpcy5fZ2V0Q2FzaERyYXdlcnModGhpcy5hY3RpdmVDYXNoUmVnaXN0ZXIuZ3JvdXApO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhc3luYyBfZ2V0Q2FzaERyYXdlcnMoZ3JvdXA6IG51bWJlcik6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgY29uc3QgY2FzaERyYXdlcnNSZXF1ZXN0OiBDYXNoRHJhd2Vyc1JlcXVlc3QgPSBuZXcgQ2FzaERyYXdlcnNSZXF1ZXN0KCk7XHJcbiAgICBjYXNoRHJhd2Vyc1JlcXVlc3QuZ3JvdXAgPSBncm91cDtcclxuICAgIHRoaXMuY2FzaERyYXdlcnMgPSBhd2FpdCB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5nZXRDYXNoRHJhd2VycyhjYXNoRHJhd2Vyc1JlcXVlc3QpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhc3luYyBfZ2V0UHJpbnRlcnMoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICB0aGlzLnByaW50ZXJMaXN0ID0gYXdhaXQgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UuZ2V0UHJpbnRlcnMoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3ByZXBhcmVDYXNoUmVnaXN0ZXIoKSB7XHJcbiAgICBpZiAoIXRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmN1cnJlbnRCcmFuY2gpIHtcclxuICAgICAgLy8gc2hvdyBwb3AtdXBcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuX3ByZXBhcmVEaWFsb2dEYXRhKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlRHJhd2VyQ2hhbmdlZChjYXNoRHJhd2VyOiBDYXNoRHJhd2VyKTogdm9pZCB7XHJcbiAgICB0aGlzLmFjdGl2ZUNhc2hEcmF3ZXIgPSBjYXNoRHJhd2VyO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZVByaW50ZXJDaGFuZ2VkKHByaW50ZXI6IFByaW50ZXIpOiB2b2lkIHtcclxuICAgIHRoaXMuYWN0aXZlUHJpbnRlciA9IHByaW50ZXI7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFzeW5jIF9nZXRQcmludGVyTGF5b3V0cygpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIHRoaXMucHJpbnRlckxheW91dHMgPSBhd2FpdCB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5nZXRQb3NSZWNlaXB0UHJpbnRMYXlvdXRzKHVuZGVmaW5lZCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFzeW5jIF9nZXRFbWFpbExheW91dHMoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICB0aGlzLmVtYWlsTGF5b3V0cyA9IGF3YWl0IHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdldFBvc1JlY2VpcHRFbWFpbExheW91dHModW5kZWZpbmVkKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2NoZWNrRGVmYXVsdFBhcmFtZXRlcnMoY2FzaFJlZ2lzdGVyOiBDYXNoUmVnaXN0ZXIpOiB2b2lkIHtcclxuICAgIHRoaXMuYWN0aXZlQ2FzaERyYXdlciA9IG51bGw7XHJcbiAgICB0aGlzLmFjdGl2ZVByaW50ZXIgPSBudWxsO1xyXG5cclxuICAgIGlmIChjYXNoUmVnaXN0ZXIuZGVmYXVsdERyYXdlck51bWJlcikge1xyXG4gICAgICBjb25zdCBkZWZhdWx0Q2FzaERyYXdlcjogQ2FzaERyYXdlciA9IHRoaXMuY2FzaERyYXdlcnMuZmluZCgoZHJhd2VyOiBDYXNoRHJhd2VyKSA9PiBkcmF3ZXIubnIgPT09IGNhc2hSZWdpc3Rlci5kZWZhdWx0RHJhd2VyTnVtYmVyKTtcclxuICAgICAgdGhpcy5hY3RpdmVDYXNoRHJhd2VyID0gZGVmYXVsdENhc2hEcmF3ZXIgPyBkZWZhdWx0Q2FzaERyYXdlciA6IHRoaXMuYWN0aXZlQ2FzaERyYXdlcjtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoY2FzaFJlZ2lzdGVyLmRlZmF1bHRQcmludGVyKSB7XHJcbiAgICAgIGNvbnN0IGRlZmF1bHRQcmludGVyOiBQcmludGVyID0gdGhpcy5wcmludGVyTGlzdC5maW5kKChwcmludGVyOiBQcmludGVyKSA9PiBwcmludGVyLm5hbWUgPT09IGNhc2hSZWdpc3Rlci5kZWZhdWx0UHJpbnRlcik7XHJcbiAgICAgIHRoaXMuYWN0aXZlUHJpbnRlciA9IGRlZmF1bHRQcmludGVyID8gZGVmYXVsdFByaW50ZXIgOiB0aGlzLmFjdGl2ZVByaW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgZGVmYXVsdFByaW50TGF5b3V0OiBSZXBvcnRMYXlvdXRTZWxlY3Rpb25QcmludCA9IHRoaXMucHJpbnRlckxheW91dHMuZmluZCgobGF5b3V0OiBSZXBvcnRMYXlvdXRTZWxlY3Rpb25QcmludCkgPT4gbGF5b3V0LmlzRGVmYXVsdCk7XHJcbiAgICB0aGlzLnNlbGVjdGVkUHJpbnRlckxheW91dCA9IGRlZmF1bHRQcmludExheW91dCA/IGRlZmF1bHRQcmludExheW91dCA6IG51bGw7XHJcblxyXG4gICAgY29uc3QgZGVmYXVsdEVtYWlsTGF5b3V0OiBSZXBvcnRMYXlvdXRTZWxlY3Rpb25FbWFpbCA9IHRoaXMuZW1haWxMYXlvdXRzLmZpbmQoKGxheW91dDogUmVwb3J0TGF5b3V0U2VsZWN0aW9uRW1haWwpID0+IGxheW91dC5pc0RlZmF1bHQpO1xyXG4gICAgdGhpcy5zZWxlY3RlZEVtYWlsTGF5b3V0ID0gZGVmYXVsdEVtYWlsTGF5b3V0ID8gZGVmYXVsdEVtYWlsTGF5b3V0IDogbnVsbDtcclxuXHJcbiAgICBpZiAodGhpcy5hY3RpdmVDYXNoRHJhd2VyICYmIHRoaXMuYWN0aXZlUHJpbnRlciAmJiBkZWZhdWx0UHJpbnRMYXlvdXQgJiYgZGVmYXVsdEVtYWlsTGF5b3V0ICYmIHRoaXMuY2FzaFJlZ2lzdGVycy5sZW5ndGggPT09IDEpIHtcclxuICAgICAgdGhpcy5zYXZlQnV0dG9uQ2xpY2soKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgX3ByZXBhcmVEaWFsb2dEYXRhKCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgY29uc3QgcHJvbWlzZXM6IFByb21pc2U8dm9pZD5bXSA9IFtcclxuICAgICAgdGhpcy5fZ2V0Q2FzaFJlZ2lzdGVycyh0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5jdXJyZW50QnJhbmNoKSxcclxuICAgICAgdGhpcy5fZ2V0UHJpbnRlcnMoKSxcclxuICAgICAgdGhpcy5fZ2V0UHJpbnRlckxheW91dHMoKSxcclxuICAgICAgdGhpcy5fZ2V0RW1haWxMYXlvdXRzKClcclxuICAgIF07XHJcblxyXG4gICAgYXdhaXQgUHJvbWlzZS5hbGwocHJvbWlzZXMpO1xyXG5cclxuICAgIGlmICh0aGlzLmNhc2hSZWdpc3RlcnMubGVuZ3RoID4gMCkge1xyXG4gICAgICB0aGlzLl9jaGVja0RlZmF1bHRQYXJhbWV0ZXJzKHRoaXMuY2FzaFJlZ2lzdGVyc1swXSk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5kaWFsb2dWaXNpYmxlID0gdHJ1ZTtcclxuICB9XHJcbn1cclxuIl19