@colijnit/transaction 12.1.198 → 12.1.200

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 (65) hide show
  1. package/bundles/colijnit-transaction.umd.js +566 -206
  2. package/bundles/colijnit-transaction.umd.js.map +1 -1
  3. package/colijnit-transaction.d.ts +18 -15
  4. package/colijnit-transaction.metadata.json +1 -1
  5. package/esm2015/colijnit-transaction.js +19 -16
  6. package/esm2015/lib/component/core/base/transaction-base.component.js +10 -1
  7. package/esm2015/lib/component/delivery-planning/delivery-planning.component.js +7 -2
  8. package/esm2015/lib/component/delivery-planning/service/delivery-planning.service.js +30 -1
  9. package/esm2015/lib/component/delivery-planning-main/component/delivery-planning-overview/component/delivery-planning-overview-tile/component/delivery-planning-tile-status/delivery-planning-tile-status.component.js +14 -3
  10. package/esm2015/lib/component/delivery-planning-main/component/delivery-planning-overview/component/delivery-planning-overview-tile/delivery-planning-overview-tile.component.js +38 -37
  11. package/esm2015/lib/component/delivery-planning-main/component/delivery-planning-overview/delivery-planning-overview.component.js +70 -31
  12. package/esm2015/lib/component/delivery-planning-main/delivery-planning-main.component.js +19 -15
  13. package/esm2015/lib/component/transaction-button/transaction-button.component.js +7 -2
  14. package/esm2015/lib/component/transaction-internal/transaction-internal.component.js +29 -2
  15. package/esm2015/lib/component/transaction-internal/transaction-internal.module.js +4 -2
  16. package/esm2015/lib/component/transaction-line/transaction-order-delivery-line/transaction-order-delivery-line.component.js +50 -39
  17. package/esm2015/lib/component/transaction-line/transaction-order-delivery-line/transaction-order-delivery-line.module.js +4 -2
  18. package/esm2015/lib/component/transaction-margin/component/transaction-margin-block/transaction-margin-block.component.js +32 -0
  19. package/esm2015/lib/component/transaction-margin/transaction-margin.component.js +29 -0
  20. package/esm2015/lib/component/transaction-margin/transaction-margin.module.js +27 -0
  21. package/esm2015/lib/component/transaction-quick-access/transaction-quick-access-planning/component/transaction-quick-access-planning-popup/transaction-quick-access-planning-popup.component.js +10 -10
  22. package/esm2015/lib/component/transaction-search/transaction-filter-content/purchase-order-filter-content/transaction-purchase-order-filter-content-order/transaction-purchase-order-filter-content-order.component.js +17 -2
  23. package/esm2015/lib/component/transaction-search/transaction-filter-content/sales-order-filter-content/transaction-sales-order-filter-content-order/transaction-sales-order-filter-content-order.component.js +17 -1
  24. package/esm2015/lib/component/transaction-search/transaction-filter-content/sales-quotation-filter-content/transaction-sales-quotation-filter-content-order/transaction-sales-quotation-filter-content-order.component.js +17 -1
  25. package/esm2015/lib/enum/icon.enum.js +2 -1
  26. package/esm2015/lib/model/icon-svg.js +2 -1
  27. package/esm2015/lib/service/transaction-connector-adapter.service.js +40 -2
  28. package/esm2015/lib/service/transaction-connector.service.js +16 -1
  29. package/esm2015/lib/service/transaction-mapping.service.js +4 -1
  30. package/esm2015/lib/service/transaction.service.js +6 -1
  31. package/esm2015/lib/transaction-version.js +3 -3
  32. package/fesm2015/colijnit-transaction.js +631 -312
  33. package/fesm2015/colijnit-transaction.js.map +1 -1
  34. package/lib/component/core/base/transaction-base.component.d.ts +4 -0
  35. package/lib/component/delivery-planning/delivery-planning.component.d.ts +4 -1
  36. package/lib/component/delivery-planning/service/delivery-planning.service.d.ts +7 -0
  37. package/lib/component/delivery-planning-main/component/delivery-planning-overview/component/delivery-planning-overview-tile/component/delivery-planning-tile-status/delivery-planning-tile-status.component.d.ts +6 -1
  38. package/lib/component/delivery-planning-main/component/delivery-planning-overview/component/delivery-planning-overview-tile/delivery-planning-overview-tile.component.d.ts +13 -16
  39. package/lib/component/delivery-planning-main/component/delivery-planning-overview/delivery-planning-overview.component.d.ts +2 -4
  40. package/lib/component/delivery-planning-main/delivery-planning-main.component.d.ts +2 -2
  41. package/lib/component/transaction-button/style/_layout.scss +8 -0
  42. package/lib/component/transaction-button/style/_material-definition.scss +2 -0
  43. package/lib/component/transaction-button/transaction-button.component.d.ts +2 -0
  44. package/lib/component/transaction-internal/style/_layout.scss +12 -2
  45. package/lib/component/transaction-internal/transaction-internal.component.d.ts +3 -0
  46. package/lib/component/transaction-line/transaction-order-delivery-line/transaction-order-delivery-line.component.d.ts +1 -2
  47. package/lib/component/transaction-margin/component/transaction-margin-block/style/_layout.scss +25 -0
  48. package/lib/component/transaction-margin/component/transaction-margin-block/style/_material-definition.scss +4 -0
  49. package/lib/component/transaction-margin/component/transaction-margin-block/style/_theme.scss +4 -0
  50. package/lib/component/transaction-margin/component/transaction-margin-block/style/material.scss +4 -0
  51. package/lib/component/transaction-margin/component/transaction-margin-block/transaction-margin-block.component.d.ts +7 -0
  52. package/lib/component/transaction-margin/style/_layout.scss +20 -0
  53. package/lib/component/transaction-margin/style/_material-definition.scss +3 -0
  54. package/lib/component/transaction-margin/style/_theme.scss +5 -0
  55. package/lib/component/transaction-margin/style/material.scss +3 -0
  56. package/lib/component/transaction-margin/transaction-margin.component.d.ts +5 -0
  57. package/lib/component/transaction-margin/transaction-margin.module.d.ts +2 -0
  58. package/lib/component/transaction-search/transaction-filter-content/purchase-order-filter-content/transaction-purchase-order-filter-content-order/transaction-purchase-order-filter-content-order.component.d.ts +6 -0
  59. package/lib/component/transaction-search/transaction-filter-content/sales-order-filter-content/transaction-sales-order-filter-content-order/transaction-sales-order-filter-content-order.component.d.ts +6 -0
  60. package/lib/component/transaction-search/transaction-filter-content/sales-quotation-filter-content/transaction-sales-quotation-filter-content-order/transaction-sales-quotation-filter-content-order.component.d.ts +6 -0
  61. package/lib/enum/icon.enum.d.ts +1 -0
  62. package/lib/service/transaction-connector-adapter.service.d.ts +8 -1
  63. package/lib/service/transaction-connector.service.d.ts +8 -1
  64. package/lib/service/transaction.service.d.ts +2 -0
  65. package/package.json +1 -1
@@ -1,15 +1,17 @@
1
- import { Component, HostBinding, Input, ViewEncapsulation } from "@angular/core";
1
+ import { __awaiter } from "tslib";
2
+ import { Component, EventEmitter, HostBinding, Input, Output, ViewEncapsulation } from "@angular/core";
2
3
  import { DatePipe } from "@angular/common";
4
+ import { TransactionConnectorService } from "../../../../../../service/transaction-connector.service";
5
+ import { DeliveryPlanningService } from "../../../../../delivery-planning/service/delivery-planning.service";
3
6
  export class DeliveryPlanningOverviewTileComponent {
4
- constructor(_datePipe) {
7
+ constructor(_datePipe, _transactionCon, _deliveryPlanningService) {
5
8
  this._datePipe = _datePipe;
9
+ this._transactionCon = _transactionCon;
10
+ this._deliveryPlanningService = _deliveryPlanningService;
6
11
  this.expanded = false;
12
+ this.expandedEvent = new EventEmitter();
13
+ this.getTransportOrdersEvent = new EventEmitter();
7
14
  this.selectedIndex = 0;
8
- this.maxVolume = 0;
9
- this.curentVolume = 0;
10
- this.currentTimeTotal = 0;
11
- this.timeTotal = 0;
12
- this.relationName = "";
13
15
  }
14
16
  drop(event) {
15
17
  // moveItemInArray(this.planningLines, event.previousIndex, event.currentIndex);
@@ -17,17 +19,25 @@ export class DeliveryPlanningOverviewTileComponent {
17
19
  showClass() {
18
20
  return true;
19
21
  }
22
+ ngOnInit() {
23
+ return __awaiter(this, void 0, void 0, function* () {
24
+ if (this.expanded && this.transportDay) {
25
+ this.transportDay = yield this._deliveryPlanningService.getTransportOrders(this.transportDay);
26
+ // this.getTransportOrdersEvent.emit(this.transportDay);
27
+ }
28
+ });
29
+ }
20
30
  formattedDate(date) {
21
31
  return `${this._datePipe.transform(date, 'H:mm', "GMT+1")}`;
22
32
  }
23
- transportLines(orders) {
24
- let lines = [];
25
- orders.forEach(order => {
26
- order.lines.forEach(line => {
27
- lines.push(line);
33
+ expandedChange() {
34
+ this.expanded = !this.expanded;
35
+ if (this.expanded) {
36
+ this._deliveryPlanningService.getTransportOrders(this.transportDay).then(result => {
37
+ this.transportDay = result;
38
+ // this.getTransportOrdersEvent.emit(result);
28
39
  });
29
- });
30
- return lines;
40
+ }
31
41
  }
32
42
  }
33
43
  DeliveryPlanningOverviewTileComponent.decorators = [
@@ -36,7 +46,7 @@ DeliveryPlanningOverviewTileComponent.decorators = [
36
46
  template: `
37
47
 
38
48
  <div class="delivery-planning-overview-tile-wrapper">
39
- <span class="header-title" (click)="expanded = !expanded" [textContent]="title"></span>
49
+ <span class="header-title" (click)="expandedChange()" [textContent]="transportDay?.transport.registrationNumber"></span>
40
50
  <div class="tile-header-buttons row" *ngIf="expanded">
41
51
  <span class="button-text" [class.selected]="selectedIndex === 0" (click)="selectedIndex = 0"
42
52
  [textContent]="'PLANNING' | localize"></span>
@@ -48,8 +58,8 @@ DeliveryPlanningOverviewTileComponent.decorators = [
48
58
  <div class="planning-wrapper" *ngIf="selectedIndex === 0">
49
59
  <div class="route-start-wrapper row">
50
60
  <span class="first-route" [textContent]="'START_ROUTE' | localize"></span>
51
- <span class="second-route" [textContent]="route"></span>
52
- <span [textContent]="formattedDate(startTime) + ' - ' + formattedDate(endTime)"></span>
61
+ <span class="second-route" [textContent]="''"></span>
62
+ <span [textContent]="formattedDate(transportDay?.transport.startTime) + ' - ' + formattedDate(transportDay?.transport.endTime)"></span>
53
63
  </div>
54
64
  <co-collapsible
55
65
  [expanded]="expanded"
@@ -58,7 +68,7 @@ DeliveryPlanningOverviewTileComponent.decorators = [
58
68
 
59
69
 
60
70
  <div class="planning-lines-wrapper" cdkDropList (cdkDropListDropped)="drop($event)">
61
- <div *ngFor="let order of planningOrders">
71
+ <div *ngFor="let order of transportDay?.plannedOrders">
62
72
  <co-delivery-planning-overview-tile-line cdkDrag *ngFor="let line of order.lines"
63
73
  [orderNr]="order.transactionNr"
64
74
  [relationName]="order.relationName"
@@ -71,36 +81,27 @@ DeliveryPlanningOverviewTileComponent.decorators = [
71
81
 
72
82
  </co-collapsible>
73
83
  <div class="status-wrapper row">
74
- <co-delivery-planning-tile-status [currentVolume]="curentVolume" [maxVolume]="maxVolume"
75
- [currentTimeTotal]="currentTimeTotal"
76
- [timeTotal]="timeTotal"></co-delivery-planning-tile-status>
84
+ <co-delivery-planning-tile-status [currentVolume]="transportDay?.orderAmount" [maxVolume]="transportDay?.maxOrderAmount"
85
+ [currentTimeTotal]="transportDay?.minutes"
86
+ [timeTotal]="transportDay?.maxMinutes"></co-delivery-planning-tile-status>
77
87
  </div>
78
88
 
79
89
  </div>
80
- <div *ngIf="selectedIndex === 1">
81
- </div>
82
- <div *ngIf="selectedIndex === 2"></div>
83
90
  </div>
84
91
  `,
85
92
  encapsulation: ViewEncapsulation.None
86
93
  },] }
87
94
  ];
88
95
  DeliveryPlanningOverviewTileComponent.ctorParameters = () => [
89
- { type: DatePipe }
96
+ { type: DatePipe },
97
+ { type: TransactionConnectorService },
98
+ { type: DeliveryPlanningService }
90
99
  ];
91
100
  DeliveryPlanningOverviewTileComponent.propDecorators = {
92
- title: [{ type: Input }],
93
- route: [{ type: Input }],
94
- planningTime: [{ type: Input }],
95
- startTime: [{ type: Input }],
96
- endTime: [{ type: Input }],
97
- planningOrders: [{ type: Input }],
101
+ transportDay: [{ type: Input }],
98
102
  expanded: [{ type: Input }],
99
- maxVolume: [{ type: Input }],
100
- curentVolume: [{ type: Input }],
101
- currentTimeTotal: [{ type: Input }],
102
- timeTotal: [{ type: Input }],
103
- relationName: [{ type: Input }],
103
+ expandedEvent: [{ type: Output }],
104
+ getTransportOrdersEvent: [{ type: Output }],
104
105
  showClass: [{ type: HostBinding, args: ["class.co-delivery-planning-overview-tile",] }]
105
106
  };
106
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsaXZlcnktcGxhbm5pbmctb3ZlcnZpZXctdGlsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cmFuc2FjdGlvbi9zcmMvbGliL2NvbXBvbmVudC9kZWxpdmVyeS1wbGFubmluZy1tYWluL2NvbXBvbmVudC9kZWxpdmVyeS1wbGFubmluZy1vdmVydmlldy9jb21wb25lbnQvZGVsaXZlcnktcGxhbm5pbmctb3ZlcnZpZXctdGlsZS9kZWxpdmVyeS1wbGFubmluZy1vdmVydmlldy10aWxlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFLL0UsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBdUR6QyxNQUFNLE9BQU8scUNBQXFDO0lBb0RoRCxZQUFvQixTQUFtQjtRQUFuQixjQUFTLEdBQVQsU0FBUyxDQUFVO1FBL0JoQyxhQUFRLEdBQVksS0FBSyxDQUFDO1FBRTFCLGtCQUFhLEdBQVcsQ0FBQyxDQUFDO1FBRzFCLGNBQVMsR0FBVyxDQUFDLENBQUM7UUFHdEIsaUJBQVksR0FBVyxDQUFDLENBQUM7UUFHekIscUJBQWdCLEdBQVcsQ0FBQyxDQUFDO1FBSTdCLGNBQVMsR0FBVyxDQUFDLENBQUM7UUFHdEIsaUJBQVksR0FBVyxFQUFFLENBQUM7SUFjakMsQ0FBQztJQVhNLElBQUksQ0FBQyxLQUE0QjtRQUN0QyxnRkFBZ0Y7SUFDbEYsQ0FBQztJQUlNLFNBQVM7UUFDZCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFNTSxhQUFhLENBQUMsSUFBVTtRQUM3QixPQUFPLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUMsRUFBRSxDQUFDO0lBQzlELENBQUM7SUFFTSxjQUFjLENBQUMsTUFBbUI7UUFDdkMsSUFBSSxLQUFLLEdBQW9CLEVBQUUsQ0FBQztRQUNoQyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3RCLEtBQUssQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFFLElBQUksQ0FBQyxFQUFFO2dCQUMxQixLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ25CLENBQUMsQ0FBQyxDQUFBO1FBQ0gsQ0FBQyxDQUFDLENBQUE7UUFDRixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7OztZQXpIRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLG9DQUFvQztnQkFDOUMsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FnRFQ7Z0JBQ0QsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7YUFDdEM7OztZQXRETyxRQUFROzs7b0JBeURiLEtBQUs7b0JBR0wsS0FBSzsyQkFHTCxLQUFLO3dCQUdMLEtBQUs7c0JBR0wsS0FBSzs2QkFHTCxLQUFLO3VCQUdMLEtBQUs7d0JBS0wsS0FBSzsyQkFHTCxLQUFLOytCQUdMLEtBQUs7d0JBSUwsS0FBSzsyQkFHTCxLQUFLO3dCQVNMLFdBQVcsU0FBQywwQ0FBMEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSG9zdEJpbmRpbmcsIElucHV0LCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtDZGtEcmFnRHJvcCwgQ2RrRHJvcExpc3QsIENka0RyYWcsIG1vdmVJdGVtSW5BcnJheX0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RyYWctZHJvcCc7XHJcbmltcG9ydCB7UGxhbk9yZGVyTGluZX0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9wbGFuLW9yZGVyLWxpbmUuYm9cIjtcclxuaW1wb3J0IHtQbGFuT3JkZXJ9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvcGxhbi1vcmRlci5ib1wiO1xyXG5pbXBvcnQge1BsYW5uaW5nVHJhbnNwb3J0V2Vla0RheX0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9wbGFubmluZy10cmFuc3BvcnQtd2Vlay1kYXkuYm9cIjtcclxuaW1wb3J0IHtEYXRlUGlwZX0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFwiY28tZGVsaXZlcnktcGxhbm5pbmctb3ZlcnZpZXctdGlsZVwiLFxyXG4gIHRlbXBsYXRlOiBgXHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZGVsaXZlcnktcGxhbm5pbmctb3ZlcnZpZXctdGlsZS13cmFwcGVyXCI+XHJcbiAgICAgICAgICA8c3BhbiBjbGFzcz1cImhlYWRlci10aXRsZVwiIChjbGljayk9XCJleHBhbmRlZCA9ICFleHBhbmRlZFwiIFt0ZXh0Q29udGVudF09XCJ0aXRsZVwiPjwvc3Bhbj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0aWxlLWhlYWRlci1idXR0b25zIHJvd1wiICpuZ0lmPVwiZXhwYW5kZWRcIj5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYnV0dG9uLXRleHRcIiBbY2xhc3Muc2VsZWN0ZWRdPVwic2VsZWN0ZWRJbmRleCA9PT0gMFwiIChjbGljayk9XCJzZWxlY3RlZEluZGV4ID0gMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbdGV4dENvbnRlbnRdPVwiJ1BMQU5OSU5HJyB8IGxvY2FsaXplXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYnV0dG9uLXRleHRcIiBbY2xhc3Muc2VsZWN0ZWRdPVwic2VsZWN0ZWRJbmRleCA9PT0gMVwiIChjbGljayk9XCJzZWxlY3RlZEluZGV4ID0gMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3RleHRDb250ZW50XT1cIidSVUxFUycgfCBsb2NhbGl6ZVwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImJ1dHRvbi10ZXh0XCIgW2NsYXNzLnNlbGVjdGVkXT1cInNlbGVjdGVkSW5kZXggPT09IDJcIiAoY2xpY2spPVwic2VsZWN0ZWRJbmRleCA9IDJcIlxyXG4gICAgICAgICAgICAgICAgICAgIFt0ZXh0Q29udGVudF09XCInUEVSTUlTU0lPTlMnIHwgbG9jYWxpemVcIj48L3NwYW4+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJwbGFubmluZy13cmFwcGVyXCIgKm5nSWY9XCJzZWxlY3RlZEluZGV4ID09PSAwXCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdXRlLXN0YXJ0LXdyYXBwZXIgcm93XCI+XHJcbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZmlyc3Qtcm91dGVcIiBbdGV4dENvbnRlbnRdPVwiJ1NUQVJUX1JPVVRFJyB8IGxvY2FsaXplXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInNlY29uZC1yb3V0ZVwiIFt0ZXh0Q29udGVudF09XCJyb3V0ZVwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgPHNwYW4gW3RleHRDb250ZW50XT1cImZvcm1hdHRlZERhdGUoc3RhcnRUaW1lKSArICcgLSAnICsgZm9ybWF0dGVkRGF0ZShlbmRUaW1lKVwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8Y28tY29sbGFwc2libGVcclxuICAgICAgICAgICAgICAgICAgICAgIFtleHBhbmRlZF09XCJleHBhbmRlZFwiXHJcbiAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGlsZS1jb250ZW50LXdyYXBwZXIgY29sdW1uXCI+XHJcblxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwbGFubmluZy1saW5lcy13cmFwcGVyXCIgY2RrRHJvcExpc3QgKGNka0Ryb3BMaXN0RHJvcHBlZCk9XCJkcm9wKCRldmVudClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBvcmRlciBvZiBwbGFubmluZ09yZGVyc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y28tZGVsaXZlcnktcGxhbm5pbmctb3ZlcnZpZXctdGlsZS1saW5lIGNka0RyYWcgKm5nRm9yPVwibGV0IGxpbmUgb2Ygb3JkZXIubGluZXNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtvcmRlck5yXT1cIm9yZGVyLnRyYW5zYWN0aW9uTnJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZWxhdGlvbk5hbWVdPVwib3JkZXIucmVsYXRpb25OYW1lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbb3JkZXJMaW5lXT1cImxpbmVcIj48L2NvLWRlbGl2ZXJ5LXBsYW5uaW5nLW92ZXJ2aWV3LXRpbGUtbGluZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuXHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICA8L2NvLWNvbGxhcHNpYmxlPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdGF0dXMtd3JhcHBlciByb3dcIj5cclxuICAgICAgICAgICAgICAgICAgPGNvLWRlbGl2ZXJ5LXBsYW5uaW5nLXRpbGUtc3RhdHVzIFtjdXJyZW50Vm9sdW1lXT1cImN1cmVudFZvbHVtZVwiIFttYXhWb2x1bWVdPVwibWF4Vm9sdW1lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjdXJyZW50VGltZVRvdGFsXT1cImN1cnJlbnRUaW1lVG90YWxcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3RpbWVUb3RhbF09XCJ0aW1lVG90YWxcIj48L2NvLWRlbGl2ZXJ5LXBsYW5uaW5nLXRpbGUtc3RhdHVzPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiAqbmdJZj1cInNlbGVjdGVkSW5kZXggPT09IDFcIj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiAqbmdJZj1cInNlbGVjdGVkSW5kZXggPT09IDJcIj48L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgYCxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEZWxpdmVyeVBsYW5uaW5nT3ZlcnZpZXdUaWxlQ29tcG9uZW50IHtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgdGl0bGU6IHN0cmluZztcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgcm91dGU6IHN0cmluZztcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgcGxhbm5pbmdUaW1lOiBzdHJpbmc7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHN0YXJ0VGltZTogRGF0ZTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgZW5kVGltZTogRGF0ZTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgcGxhbm5pbmdPcmRlcnM6IFBsYW5PcmRlcltdO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBleHBhbmRlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBwdWJsaWMgc2VsZWN0ZWRJbmRleDogbnVtYmVyID0gMDtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgbWF4Vm9sdW1lOiBudW1iZXIgPSAwO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBjdXJlbnRWb2x1bWU6IG51bWJlciA9IDA7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGN1cnJlbnRUaW1lVG90YWw6IG51bWJlciA9IDA7XHJcblxyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyB0aW1lVG90YWw6IG51bWJlciA9IDA7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHJlbGF0aW9uTmFtZTogc3RyaW5nID0gXCJcIjtcclxuXHJcblxyXG4gIHB1YmxpYyBkcm9wKGV2ZW50OiBDZGtEcmFnRHJvcDxzdHJpbmdbXT4pIHtcclxuICAgIC8vIG1vdmVJdGVtSW5BcnJheSh0aGlzLnBsYW5uaW5nTGluZXMsIGV2ZW50LnByZXZpb3VzSW5kZXgsIGV2ZW50LmN1cnJlbnRJbmRleCk7XHJcbiAgfVxyXG5cclxuXHJcbiAgQEhvc3RCaW5kaW5nKFwiY2xhc3MuY28tZGVsaXZlcnktcGxhbm5pbmctb3ZlcnZpZXctdGlsZVwiKVxyXG4gIHB1YmxpYyBzaG93Q2xhc3MoKSB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX2RhdGVQaXBlOiBEYXRlUGlwZSkge1xyXG4gIH1cclxuXHJcblxyXG4gIHB1YmxpYyBmb3JtYXR0ZWREYXRlKGRhdGU6IERhdGUpIHtcclxuICAgIHJldHVybiBgJHt0aGlzLl9kYXRlUGlwZS50cmFuc2Zvcm0oZGF0ZSwgJ0g6bW0nLCBcIkdNVCsxXCIpfWA7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgdHJhbnNwb3J0TGluZXMob3JkZXJzOiBQbGFuT3JkZXJbXSkge1xyXG4gICAgbGV0IGxpbmVzOiBQbGFuT3JkZXJMaW5lW10gPSBbXTtcclxuICAgIG9yZGVycy5mb3JFYWNoKG9yZGVyID0+IHtcclxuICAgICBvcmRlci5saW5lcy5mb3JFYWNoKCBsaW5lID0+IHtcclxuICAgICAgIGxpbmVzLnB1c2gobGluZSk7XHJcbiAgICAgfSlcclxuICAgIH0pXHJcbiAgICByZXR1cm4gbGluZXM7XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
107
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsaXZlcnktcGxhbm5pbmctb3ZlcnZpZXctdGlsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cmFuc2FjdGlvbi9zcmMvbGliL2NvbXBvbmVudC9kZWxpdmVyeS1wbGFubmluZy1tYWluL2NvbXBvbmVudC9kZWxpdmVyeS1wbGFubmluZy1vdmVydmlldy9jb21wb25lbnQvZGVsaXZlcnktcGxhbm5pbmctb3ZlcnZpZXctdGlsZS9kZWxpdmVyeS1wbGFubmluZy1vdmVydmlldy10aWxlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFLN0csT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBRXpDLE9BQU8sRUFBQywyQkFBMkIsRUFBQyxNQUFNLHlEQUF5RCxDQUFDO0FBRXBHLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLG9FQUFvRSxDQUFDO0FBb0QzRyxNQUFNLE9BQU8scUNBQXFDO0lBMEJoRCxZQUFvQixTQUFtQixFQUFVLGVBQTRDLEVBQVUsd0JBQWlEO1FBQXBJLGNBQVMsR0FBVCxTQUFTLENBQVU7UUFBVSxvQkFBZSxHQUFmLGVBQWUsQ0FBNkI7UUFBVSw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQXlCO1FBcEJqSixhQUFRLEdBQVksS0FBSyxDQUFDO1FBRzFCLGtCQUFhLEdBQTJDLElBQUksWUFBWSxFQUE0QixDQUFDO1FBR3JHLDRCQUF1QixHQUEyQyxJQUFJLFlBQVksRUFBNEIsQ0FBQztRQUUvRyxrQkFBYSxHQUFXLENBQUMsQ0FBQztJQWFqQyxDQUFDO0lBWE0sSUFBSSxDQUFDLEtBQTRCO1FBQ3RDLGdGQUFnRjtJQUNsRixDQUFDO0lBSU0sU0FBUztRQUNkLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUtLLFFBQVE7O1lBQ1IsSUFBRyxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUU7Z0JBQ3JDLElBQUksQ0FBQyxZQUFZLEdBQUcsTUFBTSxJQUFJLENBQUMsd0JBQXdCLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO2dCQUM5Rix3REFBd0Q7YUFDekQ7UUFDTCxDQUFDO0tBQUE7SUFHSSxhQUFhLENBQUMsSUFBVTtRQUM3QixPQUFPLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUMsRUFBRSxDQUFDO0lBQzlELENBQUM7SUFFTSxjQUFjO1FBQ25CLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO1FBQy9CLElBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNmLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsSUFBSSxDQUFFLE1BQU0sQ0FBQyxFQUFFO2dCQUNqRixJQUFJLENBQUMsWUFBWSxHQUFHLE1BQU0sQ0FBQztnQkFDM0IsNkNBQTZDO1lBQy9DLENBQUMsQ0FBQyxDQUFDO1NBQ0w7SUFDSCxDQUFDOzs7WUFuR0YsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxvQ0FBb0M7Z0JBQzlDLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBNkNUO2dCQUNELGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2FBQ3RDOzs7WUF2RE8sUUFBUTtZQUVSLDJCQUEyQjtZQUUzQix1QkFBdUI7OzsyQkFzRDVCLEtBQUs7dUJBR0wsS0FBSzs0QkFHTCxNQUFNO3NDQUdOLE1BQU07d0JBVU4sV0FBVyxTQUFDLDBDQUEwQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIEhvc3RCaW5kaW5nLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge0Nka0RyYWdEcm9wLCBDZGtEcm9wTGlzdCwgQ2RrRHJhZywgbW92ZUl0ZW1JbkFycmF5fSBmcm9tICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wJztcclxuaW1wb3J0IHtQbGFuT3JkZXJMaW5lfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3BsYW4tb3JkZXItbGluZS5ib1wiO1xyXG5pbXBvcnQge1BsYW5PcmRlcn0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9wbGFuLW9yZGVyLmJvXCI7XHJcbmltcG9ydCB7UGxhbm5pbmdUcmFuc3BvcnRXZWVrRGF5fSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3BsYW5uaW5nLXRyYW5zcG9ydC13ZWVrLWRheS5ib1wiO1xyXG5pbXBvcnQge0RhdGVQaXBlfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XHJcbmltcG9ydCB7UGxhbm5pbmdUcmFuc3BvcnR9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvcGxhbm5pbmctdHJhbnNwb3J0LmJvXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25Db25uZWN0b3JTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vLi4vLi4vLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi1jb25uZWN0b3Iuc2VydmljZVwiO1xyXG5pbXBvcnQge0dldFRyYW5zcG9ydE9yZGVyc1JlcXVlc3R9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvZ2V0LXRyYW5zcG9ydC1vcmRlcnMtcmVxdWVzdC5ib1wiO1xyXG5pbXBvcnQge0RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vLi4vLi4vLi4vZGVsaXZlcnktcGxhbm5pbmcvc2VydmljZS9kZWxpdmVyeS1wbGFubmluZy5zZXJ2aWNlXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJjby1kZWxpdmVyeS1wbGFubmluZy1vdmVydmlldy10aWxlXCIsXHJcbiAgdGVtcGxhdGU6IGBcclxuXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJkZWxpdmVyeS1wbGFubmluZy1vdmVydmlldy10aWxlLXdyYXBwZXJcIj5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaGVhZGVyLXRpdGxlXCIgKGNsaWNrKT1cImV4cGFuZGVkQ2hhbmdlKClcIiBbdGV4dENvbnRlbnRdPVwidHJhbnNwb3J0RGF5Py50cmFuc3BvcnQucmVnaXN0cmF0aW9uTnVtYmVyXCI+PC9zcGFuPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInRpbGUtaGVhZGVyLWJ1dHRvbnMgcm93XCIgKm5nSWY9XCJleHBhbmRlZFwiPlxyXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJidXR0b24tdGV4dFwiIFtjbGFzcy5zZWxlY3RlZF09XCJzZWxlY3RlZEluZGV4ID09PSAwXCIgKGNsaWNrKT1cInNlbGVjdGVkSW5kZXggPSAwXCJcclxuICAgICAgICAgICAgICAgICAgICAgIFt0ZXh0Q29udGVudF09XCInUExBTk5JTkcnIHwgbG9jYWxpemVcIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJidXR0b24tdGV4dFwiIFtjbGFzcy5zZWxlY3RlZF09XCJzZWxlY3RlZEluZGV4ID09PSAxXCIgKGNsaWNrKT1cInNlbGVjdGVkSW5kZXggPSAxXCJcclxuICAgICAgICAgICAgICAgICAgICBbdGV4dENvbnRlbnRdPVwiJ1JVTEVTJyB8IGxvY2FsaXplXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYnV0dG9uLXRleHRcIiBbY2xhc3Muc2VsZWN0ZWRdPVwic2VsZWN0ZWRJbmRleCA9PT0gMlwiIChjbGljayk9XCJzZWxlY3RlZEluZGV4ID0gMlwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3RleHRDb250ZW50XT1cIidQRVJNSVNTSU9OUycgfCBsb2NhbGl6ZVwiPjwvc3Bhbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInBsYW5uaW5nLXdyYXBwZXJcIiAqbmdJZj1cInNlbGVjdGVkSW5kZXggPT09IDBcIj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm91dGUtc3RhcnQtd3JhcHBlciByb3dcIj5cclxuICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmaXJzdC1yb3V0ZVwiIFt0ZXh0Q29udGVudF09XCInU1RBUlRfUk9VVEUnIHwgbG9jYWxpemVcIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2Vjb25kLXJvdXRlXCIgW3RleHRDb250ZW50XT1cIicnXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICA8c3BhbiBbdGV4dENvbnRlbnRdPVwiZm9ybWF0dGVkRGF0ZSh0cmFuc3BvcnREYXk/LnRyYW5zcG9ydC5zdGFydFRpbWUpICsgJyAtICcgKyBmb3JtYXR0ZWREYXRlKHRyYW5zcG9ydERheT8udHJhbnNwb3J0LmVuZFRpbWUpXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxjby1jb2xsYXBzaWJsZVxyXG4gICAgICAgICAgICAgICAgICAgICAgW2V4cGFuZGVkXT1cImV4cGFuZGVkXCJcclxuICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0aWxlLWNvbnRlbnQtd3JhcHBlciBjb2x1bW5cIj5cclxuXHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBsYW5uaW5nLWxpbmVzLXdyYXBwZXJcIiBjZGtEcm9wTGlzdCAoY2RrRHJvcExpc3REcm9wcGVkKT1cImRyb3AoJGV2ZW50KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IG9yZGVyIG9mIHRyYW5zcG9ydERheT8ucGxhbm5lZE9yZGVyc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y28tZGVsaXZlcnktcGxhbm5pbmctb3ZlcnZpZXctdGlsZS1saW5lIGNka0RyYWcgKm5nRm9yPVwibGV0IGxpbmUgb2Ygb3JkZXIubGluZXNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtvcmRlck5yXT1cIm9yZGVyLnRyYW5zYWN0aW9uTnJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZWxhdGlvbk5hbWVdPVwib3JkZXIucmVsYXRpb25OYW1lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbb3JkZXJMaW5lXT1cImxpbmVcIj48L2NvLWRlbGl2ZXJ5LXBsYW5uaW5nLW92ZXJ2aWV3LXRpbGUtbGluZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuXHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICA8L2NvLWNvbGxhcHNpYmxlPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdGF0dXMtd3JhcHBlciByb3dcIj5cclxuICAgICAgICAgICAgICAgICAgPGNvLWRlbGl2ZXJ5LXBsYW5uaW5nLXRpbGUtc3RhdHVzIFtjdXJyZW50Vm9sdW1lXT1cInRyYW5zcG9ydERheT8ub3JkZXJBbW91bnRcIiBbbWF4Vm9sdW1lXT1cInRyYW5zcG9ydERheT8ubWF4T3JkZXJBbW91bnRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2N1cnJlbnRUaW1lVG90YWxdPVwidHJhbnNwb3J0RGF5Py5taW51dGVzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0aW1lVG90YWxdPVwidHJhbnNwb3J0RGF5Py5tYXhNaW51dGVzXCI+PC9jby1kZWxpdmVyeS1wbGFubmluZy10aWxlLXN0YXR1cz5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgYCxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEZWxpdmVyeVBsYW5uaW5nT3ZlcnZpZXdUaWxlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0e1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyB0cmFuc3BvcnREYXk6IFBsYW5uaW5nVHJhbnNwb3J0V2Vla0RheTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgZXhwYW5kZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIGV4cGFuZGVkRXZlbnQ6IEV2ZW50RW1pdHRlcjxQbGFubmluZ1RyYW5zcG9ydFdlZWtEYXk+ID0gbmV3IEV2ZW50RW1pdHRlcjxQbGFubmluZ1RyYW5zcG9ydFdlZWtEYXk+KCk7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyBnZXRUcmFuc3BvcnRPcmRlcnNFdmVudDogRXZlbnRFbWl0dGVyPFBsYW5uaW5nVHJhbnNwb3J0V2Vla0RheT4gPSBuZXcgRXZlbnRFbWl0dGVyPFBsYW5uaW5nVHJhbnNwb3J0V2Vla0RheT4oKTtcclxuXHJcbiAgcHVibGljIHNlbGVjdGVkSW5kZXg6IG51bWJlciA9IDA7XHJcblxyXG4gIHB1YmxpYyBkcm9wKGV2ZW50OiBDZGtEcmFnRHJvcDxzdHJpbmdbXT4pIHtcclxuICAgIC8vIG1vdmVJdGVtSW5BcnJheSh0aGlzLnBsYW5uaW5nTGluZXMsIGV2ZW50LnByZXZpb3VzSW5kZXgsIGV2ZW50LmN1cnJlbnRJbmRleCk7XHJcbiAgfVxyXG5cclxuXHJcbiAgQEhvc3RCaW5kaW5nKFwiY2xhc3MuY28tZGVsaXZlcnktcGxhbm5pbmctb3ZlcnZpZXctdGlsZVwiKVxyXG4gIHB1YmxpYyBzaG93Q2xhc3MoKSB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX2RhdGVQaXBlOiBEYXRlUGlwZSwgcHJpdmF0ZSBfdHJhbnNhY3Rpb25Db246IFRyYW5zYWN0aW9uQ29ubmVjdG9yU2VydmljZSwgcHJpdmF0ZSBfZGVsaXZlcnlQbGFubmluZ1NlcnZpY2U6IERlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlKSB7XHJcbiAgfVxyXG5cclxuICBhc3luYyBuZ09uSW5pdCgpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgICAgICBpZih0aGlzLmV4cGFuZGVkICYmIHRoaXMudHJhbnNwb3J0RGF5KSB7XHJcbiAgICAgICAgICB0aGlzLnRyYW5zcG9ydERheSA9IGF3YWl0IHRoaXMuX2RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlLmdldFRyYW5zcG9ydE9yZGVycyh0aGlzLnRyYW5zcG9ydERheSk7XHJcbiAgICAgICAgICAvLyB0aGlzLmdldFRyYW5zcG9ydE9yZGVyc0V2ZW50LmVtaXQodGhpcy50cmFuc3BvcnREYXkpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcblxyXG4gIHB1YmxpYyBmb3JtYXR0ZWREYXRlKGRhdGU6IERhdGUpIHtcclxuICAgIHJldHVybiBgJHt0aGlzLl9kYXRlUGlwZS50cmFuc2Zvcm0oZGF0ZSwgJ0g6bW0nLCBcIkdNVCsxXCIpfWA7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZXhwYW5kZWRDaGFuZ2UoKSB7XHJcbiAgICB0aGlzLmV4cGFuZGVkID0gIXRoaXMuZXhwYW5kZWQ7XHJcbiAgICBpZih0aGlzLmV4cGFuZGVkKSB7XHJcbiAgICAgICB0aGlzLl9kZWxpdmVyeVBsYW5uaW5nU2VydmljZS5nZXRUcmFuc3BvcnRPcmRlcnModGhpcy50cmFuc3BvcnREYXkpLnRoZW4oIHJlc3VsdCA9PiB7XHJcbiAgICAgICAgIHRoaXMudHJhbnNwb3J0RGF5ID0gcmVzdWx0O1xyXG4gICAgICAgICAvLyB0aGlzLmdldFRyYW5zcG9ydE9yZGVyc0V2ZW50LmVtaXQocmVzdWx0KTtcclxuICAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuIl19
@@ -7,6 +7,9 @@ import { DeliveryPlanningService } from "../../../delivery-planning/service/deli
7
7
  import { TransactionService } from "../../../../service/transaction.service";
8
8
  import { DatePipe } from "@angular/common";
9
9
  import { TransactionConnectorService } from "../../../../service/transaction-connector.service";
10
+ import { GetTransportOrdersRequest } from "@colijnit/transactionapi/build/model/get-transport-orders-request.bo";
11
+ import { OrderLinesToPlanRequest } from "@colijnit/transactionapi/build/model/order-lines-to-plan-request.bo";
12
+ import { PlanningFilterObject } from "@colijnit/transactionapi/build/model/planning-filter-object.bo";
10
13
  export class DeliveryPlanningOverviewComponent {
11
14
  constructor(_deliveryPlanningService, _transaction, _datePipe, _transactionCon) {
12
15
  this._deliveryPlanningService = _deliveryPlanningService;
@@ -24,17 +27,14 @@ export class DeliveryPlanningOverviewComponent {
24
27
  this.currentPlanningViewMode = this.deliveryPlanningViewModes.Fullscreen;
25
28
  this.updatePlanningTransportEvent = new EventEmitter();
26
29
  }
27
- set planTransportWeek(value) {
28
- this._planTransportWeek = value;
29
- this.planTransportWeekArr = Object.keys(value).sort().map(key => value[key]);
30
- }
31
30
  get planTransportWeek() {
32
- return this._planTransportWeek;
33
- }
34
- get currentPlanningLayout() {
35
- return this._deliveryPlanningService.viewMode;
31
+ if (this._deliveryPlanningService.planTransportWeek.length) {
32
+ return this._deliveryPlanningService.planTransportWeek;
33
+ }
34
+ else {
35
+ return [];
36
+ }
36
37
  }
37
- ;
38
38
  get dragging() {
39
39
  return this._deliveryPlanningService.dragging;
40
40
  }
@@ -52,20 +52,62 @@ export class DeliveryPlanningOverviewComponent {
52
52
  else {
53
53
  const order = this.planOrders.find(order => order.transId === parseInt(data));
54
54
  if (order) {
55
- if (!transportDay.plannedOrders) {
56
- transportDay.plannedOrders = [order];
57
- }
58
- else {
59
- transportDay.plannedOrders.push(order);
60
- }
61
- this.updatePlanningTransportEvent.emit(week);
55
+ let request = new GetTransportOrdersRequest();
56
+ request.planningId = this._deliveryPlanningService.currentPlanning.planningId;
57
+ request.date = transportDay.date;
58
+ request.transportId = transportDay.transport.transportId;
59
+ order.startTime = transportDay.transport.startTime;
60
+ let endDate = new Date(transportDay.transport.startTime);
61
+ this.addHours(endDate, 1);
62
+ order.endTime = endDate;
63
+ this._transactionCon.getTransportOrders(request).then(result => {
64
+ if (result) {
65
+ transportDay.plannedOrders = result;
66
+ transportDay.ordersLoaded = true;
67
+ this._deliveryPlanningService.getOrderSequenceValue().then((result) => {
68
+ if (result) {
69
+ order.plannedLineId = result;
70
+ order.chained = false;
71
+ let request = new OrderLinesToPlanRequest();
72
+ let filterObj = new PlanningFilterObject();
73
+ request.planned = false;
74
+ request.transId = order.transId;
75
+ filterObj.onlyCurrentWeek = true;
76
+ filterObj.beginCurrentWeek = new Date();
77
+ filterObj.checkOrderLines = 1;
78
+ request.filterObject = filterObj;
79
+ this._transactionCon.getOrderLinesToPlan(request).then((result) => {
80
+ if (result) {
81
+ order.lines = result;
82
+ order.linesLoaded = true;
83
+ order.tasksLoaded = true;
84
+ order.tasks = [];
85
+ if (!transportDay.plannedOrders) {
86
+ transportDay.plannedOrders = [order];
87
+ }
88
+ else {
89
+ transportDay.plannedOrders.push(order);
90
+ }
91
+ this.updatePlanningTransportEvent.emit(week);
92
+ }
93
+ });
94
+ }
95
+ });
96
+ }
97
+ });
62
98
  }
63
99
  }
64
100
  });
65
101
  }
66
- allowDrop(ev) {
102
+ allowDrop(ev, transportDay) {
67
103
  ev.preventDefault();
68
104
  if (this._deliveryPlanningService.dragging) {
105
+ if (transportDay.maxMinutes - transportDay.minutes <= 60 && transportDay.maxOrderAmount < transportDay.orderAmount) {
106
+ return true;
107
+ }
108
+ else {
109
+ return false;
110
+ }
69
111
  }
70
112
  }
71
113
  dragEnd(ev) {
@@ -75,6 +117,11 @@ export class DeliveryPlanningOverviewComponent {
75
117
  weekArray(arr) {
76
118
  return Object.keys(arr).sort().map(key => arr[key]);
77
119
  }
120
+ addHours(date, hours) {
121
+ const hoursToAdd = hours * 60 * 60 * 1000;
122
+ date.setTime(date.getTime() + hoursToAdd);
123
+ return date;
124
+ }
78
125
  }
79
126
  DeliveryPlanningOverviewComponent.decorators = [
80
127
  { type: Component, args: [{
@@ -83,21 +130,14 @@ DeliveryPlanningOverviewComponent.decorators = [
83
130
  <div class="delivery-overview-wrapper">
84
131
  <co-date-planning [view]="currentViewMode" [selectedDate]="date"
85
132
  ></co-date-planning>
86
- <div class="row" *ngFor="let transportWeekRow of planTransportWeek; index as i">
87
- <div class="column" *ngFor="let transPortDay of weekArray(transportWeekRow)" >
133
+ <div class="row" *ngFor="let transportWeekRow of planTransportWeek">
134
+ <div class="column" *ngFor="let transPortDay of weekArray(transportWeekRow); index as i">
88
135
  <co-delivery-planning-overview-tile
89
- (dragover)="allowDrop($event)"
136
+ (dragover)="allowDrop($event, transPortDay)"
90
137
  (drop)="dropped($event, transportWeekRow, transPortDay)"
91
138
  (dragend)="dragEnd($event)"
92
- [expanded]="true"
93
- [title]="transPortDay.transport.registrationNumber"
94
- [startTime]="transPortDay.transport.startTime"
95
- [endTime]="transPortDay.transport.endTime"
96
- [timeTotal]="transPortDay.maxMinutes"
97
- [currentTimeTotal]="transPortDay.minutes"
98
- [curentVolume]="transPortDay.load"
99
- [maxVolume]="transPortDay.transport.maxLoad"
100
- [planningOrders]="transPortDay.plannedOrders"
139
+ [expanded]="i === 0"
140
+ [transportDay]="transPortDay"
101
141
  ></co-delivery-planning-overview-tile>
102
142
  </div>
103
143
  </div>
@@ -115,7 +155,6 @@ DeliveryPlanningOverviewComponent.ctorParameters = () => [
115
155
  { type: TransactionConnectorService }
116
156
  ];
117
157
  DeliveryPlanningOverviewComponent.propDecorators = {
118
- planTransportWeek: [{ type: Input }],
119
158
  planOrders: [{ type: Input }],
120
159
  currentMode: [{ type: Input }],
121
160
  currentViewMode: [{ type: Input }],
@@ -123,4 +162,4 @@ DeliveryPlanningOverviewComponent.propDecorators = {
123
162
  updatePlanningTransportEvent: [{ type: Output }],
124
163
  showClass: [{ type: HostBinding, args: ["class.co-delivery-planning-overview",] }]
125
164
  };
126
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsaXZlcnktcGxhbm5pbmctb3ZlcnZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJhbnNhY3Rpb24vc3JjL2xpYi9jb21wb25lbnQvZGVsaXZlcnktcGxhbm5pbmctbWFpbi9jb21wb25lbnQvZGVsaXZlcnktcGxhbm5pbmctb3ZlcnZpZXcvZGVsaXZlcnktcGxhbm5pbmctb3ZlcnZpZXcuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUVyRyxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDeEQsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sK0NBQStDLENBQUM7QUFDcEYsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sb0RBQW9ELENBQUM7QUFDN0YsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sOERBQThELENBQUM7QUFDckcsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDM0UsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFBQywyQkFBMkIsRUFBQyxNQUFNLG1EQUFtRCxDQUFDO0FBb0M5RixNQUFNLE9BQU8saUNBQWlDO0lBb0Q1QyxZQUFvQix3QkFBaUQsRUFBVSxZQUFnQyxFQUFVLFNBQW1CLEVBQVUsZUFBNEM7UUFBOUssNkJBQXdCLEdBQXhCLHdCQUF3QixDQUF5QjtRQUFVLGlCQUFZLEdBQVosWUFBWSxDQUFvQjtRQUFVLGNBQVMsR0FBVCxTQUFTLENBQVU7UUFBVSxvQkFBZSxHQUFmLGVBQWUsQ0FBNkI7UUFsRDNMLHNCQUFpQixHQUF3QixZQUFZLENBQUM7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LENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUN0RCxDQUFDOzs7WUF4SEYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSwrQkFBK0I7Z0JBQ3pDLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXlCVDtnQkFDRCxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTthQUN0Qzs7O1lBdENPLHVCQUF1QjtZQUN2QixrQkFBa0I7WUFDbEIsUUFBUTtZQUNSLDJCQUEyQjs7O2dDQWlEaEMsS0FBSzt5QkFNTCxLQUFLOzBCQUdMLEtBQUs7OEJBR0wsS0FBSztzQ0FHTCxLQUFLOzJDQUdMLE1BQU07d0JBZ0JOLFdBQVcsU0FBQyxxQ0FBcUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE91dHB1dCwgVmlld0VuY2Fwc3VsYXRpb259IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG5pbXBvcnQge0NhbGVuZGFyVmlld30gZnJvbSAnQGNvbGlqbml0L3NoYXJlZGNvbXBvbmVudHMnO1xyXG5pbXBvcnQge0RlbGl2ZXJ5UGxhbm5pbmdNb2Rlc30gZnJvbSBcIi4uLy4uLy4uLy4uL2VudW0vZGVsaXZlcnktcGxhbm5pbmctbW9kZXMuZW51bVwiO1xyXG5pbXBvcnQge0RlbGl2ZXJ5UGxhbm5pbmdWaWV3TW9kZXN9IGZyb20gXCIuLi8uLi8uLi8uLi9lbnVtL2RlbGl2ZXJ5LXBsYW5uaW5nLXZpZXctbW9kZXMuZW51bVwiO1xyXG5pbXBvcnQge0RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vLi4vZGVsaXZlcnktcGxhbm5pbmcvc2VydmljZS9kZWxpdmVyeS1wbGFubmluZy5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25TZXJ2aWNlfSBmcm9tIFwiLi4vLi4vLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7RGF0ZVBpcGV9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkNvbm5lY3RvclNlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLWNvbm5lY3Rvci5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7UGxhbm5pbmdUcmFuc3BvcnRXZWVrfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3BsYW5uaW5nLXRyYW5zcG9ydC13ZWVrLmJvXCI7XHJcbmltcG9ydCB7UGxhbm5pbmdUcmFuc3BvcnRXZWVrRGF5fSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3BsYW5uaW5nLXRyYW5zcG9ydC13ZWVrLWRheS5ib1wiO1xyXG5pbXBvcnQge1BsYW5PcmRlcn0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9wbGFuLW9yZGVyLmJvXCI7XHJcblxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFwiY28tZGVsaXZlcnktcGxhbm5pbmctb3ZlcnZpZXdcIixcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGRpdiBjbGFzcz1cImRlbGl2ZXJ5LW92ZXJ2aWV3LXdyYXBwZXJcIj5cclxuICAgICAgPGNvLWRhdGUtcGxhbm5pbmcgW3ZpZXddPVwiY3VycmVudFZpZXdNb2RlXCIgW3NlbGVjdGVkRGF0ZV09XCJkYXRlXCJcclxuICAgICAgPjwvY28tZGF0ZS1wbGFubmluZz5cclxuICAgICAgPGRpdiBjbGFzcz1cInJvd1wiICpuZ0Zvcj1cImxldCB0cmFuc3BvcnRXZWVrUm93IG9mIHBsYW5UcmFuc3BvcnRXZWVrOyBpbmRleCBhcyBpXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbHVtblwiICpuZ0Zvcj1cImxldCB0cmFuc1BvcnREYXkgb2Ygd2Vla0FycmF5KHRyYW5zcG9ydFdlZWtSb3cpXCIgPlxyXG4gICAgICAgICAgPGNvLWRlbGl2ZXJ5LXBsYW5uaW5nLW92ZXJ2aWV3LXRpbGVcclxuICAgICAgICAgICAgKGRyYWdvdmVyKT1cImFsbG93RHJvcCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgKGRyb3ApPVwiZHJvcHBlZCgkZXZlbnQsIHRyYW5zcG9ydFdlZWtSb3csIHRyYW5zUG9ydERheSlcIlxyXG4gICAgICAgICAgICAoZHJhZ2VuZCk9XCJkcmFnRW5kKCRldmVudClcIlxyXG4gICAgICAgICAgICBbZXhwYW5kZWRdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgIFt0aXRsZV09XCJ0cmFuc1BvcnREYXkudHJhbnNwb3J0LnJlZ2lzdHJhdGlvbk51bWJlclwiXHJcbiAgICAgICAgICAgIFtzdGFydFRpbWVdPVwidHJhbnNQb3J0RGF5LnRyYW5zcG9ydC5zdGFydFRpbWVcIlxyXG4gICAgICAgICAgICBbZW5kVGltZV09XCJ0cmFuc1BvcnREYXkudHJhbnNwb3J0LmVuZFRpbWVcIlxyXG4gICAgICAgICAgICBbdGltZVRvdGFsXT1cInRyYW5zUG9ydERheS5tYXhNaW51dGVzXCJcclxuICAgICAgICAgICAgW2N1cnJlbnRUaW1lVG90YWxdPVwidHJhbnNQb3J0RGF5Lm1pbnV0ZXNcIlxyXG4gICAgICAgICAgICBbY3VyZW50Vm9sdW1lXT1cInRyYW5zUG9ydERheS5sb2FkXCJcclxuICAgICAgICAgICAgW21heFZvbHVtZV09XCJ0cmFuc1BvcnREYXkudHJhbnNwb3J0Lm1heExvYWRcIlxyXG4gICAgICAgICAgICBbcGxhbm5pbmdPcmRlcnNdPVwidHJhbnNQb3J0RGF5LnBsYW5uZWRPcmRlcnNcIlxyXG4gICAgICAgICAgPjwvY28tZGVsaXZlcnktcGxhbm5pbmctb3ZlcnZpZXctdGlsZT5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuXHJcblxyXG4gIGAsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRGVsaXZlcnlQbGFubmluZ092ZXJ2aWV3Q29tcG9uZW50IHtcclxuXHJcbiAgcHVibGljIGNhbGVuZGFyVmlld01vZGVzOiB0eXBlb2YgQ2FsZW5kYXJWaWV3ID0gQ2FsZW5kYXJWaWV3O1xyXG4gIHB1YmxpYyBkZWxpdmVyeVBsYW5uaW5nVmlld01vZGVzOiB0eXBlb2YgRGVsaXZlcnlQbGFubmluZ1ZpZXdNb2RlcyA9IERlbGl2ZXJ5UGxhbm5pbmdWaWV3TW9kZXM7XHJcbiAgcHVibGljIGxheW91dHM6IHR5cGVvZiBEZWxpdmVyeVBsYW5uaW5nVmlld01vZGVzID0gRGVsaXZlcnlQbGFubmluZ1ZpZXdNb2RlcztcclxuXHJcbiAgcHVibGljIGRhdGU6IERhdGUgPSBuZXcgRGF0ZSgpO1xyXG5cclxuICBwdWJsaWMgcGxhblRyYW5zcG9ydFdlZWtBcnI6IFBsYW5uaW5nVHJhbnNwb3J0V2Vla0RheVtdO1xyXG5cclxuICBwdWJsaWMgYXZhaWxhYmxlOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIHByaXZhdGUgX3BsYW5UcmFuc3BvcnRXZWVrOiBQbGFubmluZ1RyYW5zcG9ydFdlZWtbXTtcclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZXQgcGxhblRyYW5zcG9ydFdlZWsodmFsdWU6IFBsYW5uaW5nVHJhbnNwb3J0V2Vla1tdKSB7XHJcbiAgICB0aGlzLl9wbGFuVHJhbnNwb3J0V2VlayA9IHZhbHVlO1xyXG4gICAgdGhpcy5wbGFuVHJhbnNwb3J0V2Vla0FyciA9IE9iamVjdC5rZXlzKHZhbHVlKS5zb3J0KCkubWFwKGtleSA9PiB2YWx1ZVtrZXldKTtcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHBsYW5PcmRlcnM6IFBsYW5PcmRlcltdID0gW107XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGN1cnJlbnRNb2RlOiBEZWxpdmVyeVBsYW5uaW5nTW9kZXMgPSBEZWxpdmVyeVBsYW5uaW5nTW9kZXMuV2VlaztcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgY3VycmVudFZpZXdNb2RlOiBDYWxlbmRhclZpZXcgPSBDYWxlbmRhclZpZXcuV2Vla1ZpZXc7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGN1cnJlbnRQbGFubmluZ1ZpZXdNb2RlOiBEZWxpdmVyeVBsYW5uaW5nVmlld01vZGVzID0gdGhpcy5kZWxpdmVyeVBsYW5uaW5nVmlld01vZGVzLkZ1bGxzY3JlZW47XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyB1cGRhdGVQbGFubmluZ1RyYW5zcG9ydEV2ZW50OiBFdmVudEVtaXR0ZXI8UGxhbm5pbmdUcmFuc3BvcnRXZWVrPiA9IG5ldyBFdmVudEVtaXR0ZXI8UGxhbm5pbmdUcmFuc3BvcnRXZWVrPigpO1xyXG5cclxuXHJcbiAgcHVibGljIGdldCBwbGFuVHJhbnNwb3J0V2VlaygpIHtcclxuICAgIHJldHVybiB0aGlzLl9wbGFuVHJhbnNwb3J0V2VlaztcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgY3VycmVudFBsYW5uaW5nTGF5b3V0KCk6IERlbGl2ZXJ5UGxhbm5pbmdWaWV3TW9kZXMge1xyXG4gICAgcmV0dXJuIHRoaXMuX2RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlLnZpZXdNb2RlO1xyXG4gIH07XHJcblxyXG4gIHB1YmxpYyBnZXQgZHJhZ2dpbmcoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5fZGVsaXZlcnlQbGFubmluZ1NlcnZpY2UuZHJhZ2dpbmc7XHJcbiAgfVxyXG5cclxuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5jby1kZWxpdmVyeS1wbGFubmluZy1vdmVydmlld1wiKVxyXG4gIHB1YmxpYyBzaG93Q2xhc3MoKSB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX2RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlOiBEZWxpdmVyeVBsYW5uaW5nU2VydmljZSwgcHJpdmF0ZSBfdHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uU2VydmljZSwgcHJpdmF0ZSBfZGF0ZVBpcGU6IERhdGVQaXBlLCBwcml2YXRlIF90cmFuc2FjdGlvbkNvbjogVHJhbnNhY3Rpb25Db25uZWN0b3JTZXJ2aWNlKSB7XHJcbiAgfVxyXG5cclxuXHJcbiAgcHVibGljIGFzeW5jIGRyb3BwZWQoZXY6IERyYWdFdmVudCwgd2VlazogUGxhbm5pbmdUcmFuc3BvcnRXZWVrLCB0cmFuc3BvcnREYXk6IFBsYW5uaW5nVHJhbnNwb3J0V2Vla0RheSkge1xyXG4gICAgZXYucHJldmVudERlZmF1bHQoKTtcclxuICAgIGNvbnN0IGRhdGEgPSBldi5kYXRhVHJhbnNmZXIuZ2V0RGF0YShcInRleHRcIik7XHJcbiAgICBsZXQgc2VsZWN0ZWRMaW5lcztcclxuICAgIGlmIChkYXRhID09PSBcImxpbmVcIikge1xyXG4gICAgICBzZWxlY3RlZExpbmVzID0gdGhpcy5fdHJhbnNhY3Rpb24uY3VycmVudFRyYW5zYWN0aW9uLnRyYW5zYWN0aW9uTGluZXMuZmlsdGVyKGxpbmUgPT4gbGluZS5zZWxlY3RlZCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBjb25zdCBvcmRlciA9IHRoaXMucGxhbk9yZGVycy5maW5kKG9yZGVyID0+IG9yZGVyLnRyYW5zSWQgPT09IHBhcnNlSW50KGRhdGEpKTtcclxuICAgICAgaWYgKG9yZGVyKSB7XHJcbiAgICAgICAgaWYgKCF0cmFuc3BvcnREYXkucGxhbm5lZE9yZGVycykge1xyXG4gICAgICAgICAgdHJhbnNwb3J0RGF5LnBsYW5uZWRPcmRlcnMgPSBbb3JkZXJdO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0cmFuc3BvcnREYXkucGxhbm5lZE9yZGVycy5wdXNoKG9yZGVyKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy51cGRhdGVQbGFubmluZ1RyYW5zcG9ydEV2ZW50LmVtaXQod2Vlayk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBhbGxvd0Ryb3AoZXYpIHtcclxuICAgIGV2LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICBpZiAodGhpcy5fZGVsaXZlcnlQbGFubmluZ1NlcnZpY2UuZHJhZ2dpbmcpIHtcclxuXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcbiAgcHVibGljIGRyYWdFbmQoZXYpIHtcclxuICAgIGV2LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICB0aGlzLl9kZWxpdmVyeVBsYW5uaW5nU2VydmljZS5kcmFnZ2luZyA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHdlZWtBcnJheShhcnI6IFBsYW5uaW5nVHJhbnNwb3J0V2Vlayk6IFBsYW5uaW5nVHJhbnNwb3J0V2Vla0RheVtdIHtcclxuICAgIHJldHVybiBPYmplY3Qua2V5cyhhcnIpLnNvcnQoKS5tYXAoa2V5ID0+IGFycltrZXldKTtcclxuICB9XHJcblxyXG5cclxufVxyXG4iXX0=
165
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsaXZlcnktcGxhbm5pbmctb3ZlcnZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJhbnNhY3Rpb24vc3JjL2xpYi9jb21wb25lbnQvZGVsaXZlcnktcGxhbm5pbmctbWFpbi9jb21wb25lbnQvZGVsaXZlcnktcGxhbm5pbmctb3ZlcnZpZXcvZGVsaXZlcnktcGxhbm5pbmctb3ZlcnZpZXcuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUVyRyxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDeEQsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sK0NBQStDLENBQUM7QUFDcEYsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sb0RBQW9ELENBQUM7QUFDN0YsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sOERBQThELENBQUM7QUFDckcsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDM0UsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFBQywyQkFBMkIsRUFBQyxNQUFNLG1EQUFtRCxDQUFDO0FBSTlGLE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLHNFQUFzRSxDQUFDO0FBQy9HLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLHFFQUFxRSxDQUFDO0FBQzVHLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLGdFQUFnRSxDQUFDO0FBNEJwRyxNQUFNLE9BQU8saUNBQWlDO0lBK0M1QyxZQUFvQix3QkFBaUQsRUFBVSxZQUFnQyxFQUFVLFNBQW1CLEVBQVUsZUFBNEM7UUFBOUss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Q0FBQztJQUNkLENBQUM7OztZQTFKRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLCtCQUErQjtnQkFDekMsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FrQlQ7Z0JBQ0QsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7YUFDdEM7OztZQXBDTyx1QkFBdUI7WUFDdkIsa0JBQWtCO1lBQ2xCLFFBQVE7WUFDUiwyQkFBMkI7Ozt5QkFnRGhDLEtBQUs7MEJBR0wsS0FBSzs4QkFHTCxLQUFLO3NDQUdMLEtBQUs7MkNBR0wsTUFBTTt3QkFnQk4sV0FBVyxTQUFDLHFDQUFxQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIEhvc3RCaW5kaW5nLCBJbnB1dCwgT3V0cHV0LCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbmltcG9ydCB7Q2FsZW5kYXJWaWV3fSBmcm9tICdAY29saWpuaXQvc2hhcmVkY29tcG9uZW50cyc7XHJcbmltcG9ydCB7RGVsaXZlcnlQbGFubmluZ01vZGVzfSBmcm9tIFwiLi4vLi4vLi4vLi4vZW51bS9kZWxpdmVyeS1wbGFubmluZy1tb2Rlcy5lbnVtXCI7XHJcbmltcG9ydCB7RGVsaXZlcnlQbGFubmluZ1ZpZXdNb2Rlc30gZnJvbSBcIi4uLy4uLy4uLy4uL2VudW0vZGVsaXZlcnktcGxhbm5pbmctdmlldy1tb2Rlcy5lbnVtXCI7XHJcbmltcG9ydCB7RGVsaXZlcnlQbGFubmluZ1NlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi9kZWxpdmVyeS1wbGFubmluZy9zZXJ2aWNlL2RlbGl2ZXJ5LXBsYW5uaW5nLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvblNlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtEYXRlUGlwZX0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uQ29ubmVjdG9yU2VydmljZX0gZnJvbSBcIi4uLy4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24tY29ubmVjdG9yLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtQbGFubmluZ1RyYW5zcG9ydFdlZWt9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvcGxhbm5pbmctdHJhbnNwb3J0LXdlZWsuYm9cIjtcclxuaW1wb3J0IHtQbGFubmluZ1RyYW5zcG9ydFdlZWtEYXl9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvcGxhbm5pbmctdHJhbnNwb3J0LXdlZWstZGF5LmJvXCI7XHJcbmltcG9ydCB7UGxhbk9yZGVyfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3BsYW4tb3JkZXIuYm9cIjtcclxuaW1wb3J0IHtHZXRUcmFuc3BvcnRPcmRlcnNSZXF1ZXN0fSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL2dldC10cmFuc3BvcnQtb3JkZXJzLXJlcXVlc3QuYm9cIjtcclxuaW1wb3J0IHtPcmRlckxpbmVzVG9QbGFuUmVxdWVzdH0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9vcmRlci1saW5lcy10by1wbGFuLXJlcXVlc3QuYm9cIjtcclxuaW1wb3J0IHtQbGFubmluZ0ZpbHRlck9iamVjdH0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9wbGFubmluZy1maWx0ZXItb2JqZWN0LmJvXCI7XHJcbmltcG9ydCB7UGxhbk9yZGVyTGluZX0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9wbGFuLW9yZGVyLWxpbmUuYm9cIjtcclxuaW1wb3J0IHtQbGFubmluZ1RyYW5zcG9ydH0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9wbGFubmluZy10cmFuc3BvcnQuYm9cIjtcclxuXHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJjby1kZWxpdmVyeS1wbGFubmluZy1vdmVydmlld1wiLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8ZGl2IGNsYXNzPVwiZGVsaXZlcnktb3ZlcnZpZXctd3JhcHBlclwiPlxyXG4gICAgICA8Y28tZGF0ZS1wbGFubmluZyBbdmlld109XCJjdXJyZW50Vmlld01vZGVcIiBbc2VsZWN0ZWREYXRlXT1cImRhdGVcIlxyXG4gICAgICA+PC9jby1kYXRlLXBsYW5uaW5nPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwicm93XCIgKm5nRm9yPVwibGV0IHRyYW5zcG9ydFdlZWtSb3cgb2YgcGxhblRyYW5zcG9ydFdlZWtcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sdW1uXCIgKm5nRm9yPVwibGV0IHRyYW5zUG9ydERheSBvZiB3ZWVrQXJyYXkodHJhbnNwb3J0V2Vla1Jvdyk7IGluZGV4IGFzIGlcIj5cclxuICAgICAgICAgIDxjby1kZWxpdmVyeS1wbGFubmluZy1vdmVydmlldy10aWxlXHJcbiAgICAgICAgICAgIChkcmFnb3Zlcik9XCJhbGxvd0Ryb3AoJGV2ZW50LCB0cmFuc1BvcnREYXkpXCJcclxuICAgICAgICAgICAgKGRyb3ApPVwiZHJvcHBlZCgkZXZlbnQsIHRyYW5zcG9ydFdlZWtSb3csIHRyYW5zUG9ydERheSlcIlxyXG4gICAgICAgICAgICAoZHJhZ2VuZCk9XCJkcmFnRW5kKCRldmVudClcIlxyXG4gICAgICAgICAgICBbZXhwYW5kZWRdPVwiaSA9PT0gMFwiXHJcbiAgICAgICAgICAgIFt0cmFuc3BvcnREYXldPVwidHJhbnNQb3J0RGF5XCJcclxuICAgICAgICAgID48L2NvLWRlbGl2ZXJ5LXBsYW5uaW5nLW92ZXJ2aWV3LXRpbGU+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcblxyXG5cclxuICBgLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIERlbGl2ZXJ5UGxhbm5pbmdPdmVydmlld0NvbXBvbmVudCB7XHJcblxyXG4gIHB1YmxpYyBjYWxlbmRhclZpZXdNb2RlczogdHlwZW9mIENhbGVuZGFyVmlldyA9IENhbGVuZGFyVmlldztcclxuICBwdWJsaWMgZGVsaXZlcnlQbGFubmluZ1ZpZXdNb2RlczogdHlwZW9mIERlbGl2ZXJ5UGxhbm5pbmdWaWV3TW9kZXMgPSBEZWxpdmVyeVBsYW5uaW5nVmlld01vZGVzO1xyXG4gIHB1YmxpYyBsYXlvdXRzOiB0eXBlb2YgRGVsaXZlcnlQbGFubmluZ1ZpZXdNb2RlcyA9IERlbGl2ZXJ5UGxhbm5pbmdWaWV3TW9kZXM7XHJcblxyXG4gIHB1YmxpYyBkYXRlOiBEYXRlID0gbmV3IERhdGUoKTtcclxuXHJcbiAgcHVibGljIHBsYW5UcmFuc3BvcnRXZWVrQXJyOiBQbGFubmluZ1RyYW5zcG9ydFdlZWtEYXlbXTtcclxuXHJcbiAgcHVibGljIGF2YWlsYWJsZTogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuXHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHBsYW5PcmRlcnM6IFBsYW5PcmRlcltdID0gW107XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGN1cnJlbnRNb2RlOiBEZWxpdmVyeVBsYW5uaW5nTW9kZXMgPSBEZWxpdmVyeVBsYW5uaW5nTW9kZXMuV2VlaztcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgY3VycmVudFZpZXdNb2RlOiBDYWxlbmRhclZpZXcgPSBDYWxlbmRhclZpZXcuV2Vla1ZpZXc7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGN1cnJlbnRQbGFubmluZ1ZpZXdNb2RlOiBEZWxpdmVyeVBsYW5uaW5nVmlld01vZGVzID0gdGhpcy5kZWxpdmVyeVBsYW5uaW5nVmlld01vZGVzLkZ1bGxzY3JlZW47XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyB1cGRhdGVQbGFubmluZ1RyYW5zcG9ydEV2ZW50OiBFdmVudEVtaXR0ZXI8UGxhbm5pbmdUcmFuc3BvcnRXZWVrPiA9IG5ldyBFdmVudEVtaXR0ZXI8UGxhbm5pbmdUcmFuc3BvcnRXZWVrPigpO1xyXG5cclxuXHJcbiAgcHVibGljIGdldCBwbGFuVHJhbnNwb3J0V2VlaygpIHtcclxuICAgIGlmKHRoaXMuX2RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlLnBsYW5UcmFuc3BvcnRXZWVrLmxlbmd0aCkge1xyXG4gICAgICByZXR1cm4gdGhpcy5fZGVsaXZlcnlQbGFubmluZ1NlcnZpY2UucGxhblRyYW5zcG9ydFdlZWs7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gW107XHJcbiAgICB9XHJcblxyXG4gIH1cclxuICBwdWJsaWMgZ2V0IGRyYWdnaW5nKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuX2RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlLmRyYWdnaW5nO1xyXG4gIH1cclxuXHJcbiAgQEhvc3RCaW5kaW5nKFwiY2xhc3MuY28tZGVsaXZlcnktcGxhbm5pbmctb3ZlcnZpZXdcIilcclxuICBwdWJsaWMgc2hvd0NsYXNzKCkge1xyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9kZWxpdmVyeVBsYW5uaW5nU2VydmljZTogRGVsaXZlcnlQbGFubmluZ1NlcnZpY2UsIHByaXZhdGUgX3RyYW5zYWN0aW9uOiBUcmFuc2FjdGlvblNlcnZpY2UsIHByaXZhdGUgX2RhdGVQaXBlOiBEYXRlUGlwZSwgcHJpdmF0ZSBfdHJhbnNhY3Rpb25Db246IFRyYW5zYWN0aW9uQ29ubmVjdG9yU2VydmljZSkge1xyXG4gIH1cclxuXHJcblxyXG4gIHB1YmxpYyBhc3luYyBkcm9wcGVkKGV2OiBEcmFnRXZlbnQsIHdlZWs6IFBsYW5uaW5nVHJhbnNwb3J0V2VlaywgdHJhbnNwb3J0RGF5OiBQbGFubmluZ1RyYW5zcG9ydFdlZWtEYXkpIHtcclxuICAgIGV2LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICBjb25zdCBkYXRhID0gZXYuZGF0YVRyYW5zZmVyLmdldERhdGEoXCJ0ZXh0XCIpO1xyXG4gICAgbGV0IHNlbGVjdGVkTGluZXM7XHJcbiAgICBpZiAoZGF0YSA9PT0gXCJsaW5lXCIpIHtcclxuICAgICAgc2VsZWN0ZWRMaW5lcyA9IHRoaXMuX3RyYW5zYWN0aW9uLmN1cnJlbnRUcmFuc2FjdGlvbi50cmFuc2FjdGlvbkxpbmVzLmZpbHRlcihsaW5lID0+IGxpbmUuc2VsZWN0ZWQpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc3Qgb3JkZXIgPSB0aGlzLnBsYW5PcmRlcnMuZmluZChvcmRlciA9PiBvcmRlci50cmFuc0lkID09PSBwYXJzZUludChkYXRhKSk7XHJcbiAgICAgIGlmIChvcmRlcikge1xyXG4gICAgICAgIGxldCByZXF1ZXN0OiBHZXRUcmFuc3BvcnRPcmRlcnNSZXF1ZXN0ID0gbmV3IEdldFRyYW5zcG9ydE9yZGVyc1JlcXVlc3QoKTtcclxuICAgICAgICByZXF1ZXN0LnBsYW5uaW5nSWQgPSB0aGlzLl9kZWxpdmVyeVBsYW5uaW5nU2VydmljZS5jdXJyZW50UGxhbm5pbmcucGxhbm5pbmdJZDtcclxuICAgICAgICByZXF1ZXN0LmRhdGUgPSB0cmFuc3BvcnREYXkuZGF0ZTtcclxuICAgICAgICByZXF1ZXN0LnRyYW5zcG9ydElkID0gdHJhbnNwb3J0RGF5LnRyYW5zcG9ydC50cmFuc3BvcnRJZDtcclxuICAgICAgICBvcmRlci5zdGFydFRpbWUgPSB0cmFuc3BvcnREYXkudHJhbnNwb3J0LnN0YXJ0VGltZTtcclxuICAgICAgICBsZXQgZW5kRGF0ZSA9IG5ldyBEYXRlKHRyYW5zcG9ydERheS50cmFuc3BvcnQuc3RhcnRUaW1lKTtcclxuICAgICAgICB0aGlzLmFkZEhvdXJzKGVuZERhdGUsIDEpO1xyXG4gICAgICAgIG9yZGVyLmVuZFRpbWUgPSBlbmREYXRlO1xyXG4gICAgICAgIHRoaXMuX3RyYW5zYWN0aW9uQ29uLmdldFRyYW5zcG9ydE9yZGVycyhyZXF1ZXN0KS50aGVuKHJlc3VsdCA9PiB7XHJcbiAgICAgICAgICBpZiAocmVzdWx0KSB7XHJcbiAgICAgICAgICAgIHRyYW5zcG9ydERheS5wbGFubmVkT3JkZXJzID0gcmVzdWx0O1xyXG4gICAgICAgICAgICB0cmFuc3BvcnREYXkub3JkZXJzTG9hZGVkID0gdHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy5fZGVsaXZlcnlQbGFubmluZ1NlcnZpY2UuZ2V0T3JkZXJTZXF1ZW5jZVZhbHVlKCkudGhlbigocmVzdWx0OiBudW1iZXIpID0+IHtcclxuICAgICAgICAgICAgICBpZiAocmVzdWx0KSB7XHJcbiAgICAgICAgICAgICAgICBvcmRlci5wbGFubmVkTGluZUlkID0gcmVzdWx0O1xyXG4gICAgICAgICAgICAgICAgb3JkZXIuY2hhaW5lZCA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgbGV0IHJlcXVlc3Q6IE9yZGVyTGluZXNUb1BsYW5SZXF1ZXN0ID0gbmV3IE9yZGVyTGluZXNUb1BsYW5SZXF1ZXN0KCk7XHJcbiAgICAgICAgICAgICAgICBsZXQgZmlsdGVyT2JqOiBQbGFubmluZ0ZpbHRlck9iamVjdCA9IG5ldyBQbGFubmluZ0ZpbHRlck9iamVjdCgpO1xyXG4gICAgICAgICAgICAgICAgcmVxdWVzdC5wbGFubmVkID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICByZXF1ZXN0LnRyYW5zSWQgPSBvcmRlci50cmFuc0lkO1xyXG4gICAgICAgICAgICAgICAgZmlsdGVyT2JqLm9ubHlDdXJyZW50V2VlayA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICBmaWx0ZXJPYmouYmVnaW5DdXJyZW50V2VlayA9IG5ldyBEYXRlKCk7XHJcbiAgICAgICAgICAgICAgICBmaWx0ZXJPYmouY2hlY2tPcmRlckxpbmVzID0gMTtcclxuICAgICAgICAgICAgICAgIHJlcXVlc3QuZmlsdGVyT2JqZWN0ID0gZmlsdGVyT2JqO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5fdHJhbnNhY3Rpb25Db24uZ2V0T3JkZXJMaW5lc1RvUGxhbihyZXF1ZXN0KS50aGVuKChyZXN1bHQ6IFBsYW5PcmRlckxpbmVbXSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICBpZiAocmVzdWx0KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgb3JkZXIubGluZXMgPSByZXN1bHQ7XHJcbiAgICAgICAgICAgICAgICAgICAgb3JkZXIubGluZXNMb2FkZWQgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyLnRhc2tzTG9hZGVkID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICBvcmRlci50YXNrcyA9IFtdO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmICghdHJhbnNwb3J0RGF5LnBsYW5uZWRPcmRlcnMpIHtcclxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcG9ydERheS5wbGFubmVkT3JkZXJzID0gW29yZGVyXTtcclxuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNwb3J0RGF5LnBsYW5uZWRPcmRlcnMucHVzaChvcmRlcik7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlUGxhbm5pbmdUcmFuc3BvcnRFdmVudC5lbWl0KHdlZWspO1xyXG4gICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSlcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGFsbG93RHJvcChldiwgdHJhbnNwb3J0RGF5OiBQbGFubmluZ1RyYW5zcG9ydFdlZWtEYXkpIHtcclxuICAgIGV2LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICBpZiAodGhpcy5fZGVsaXZlcnlQbGFubmluZ1NlcnZpY2UuZHJhZ2dpbmcpIHtcclxuICAgICAgaWYodHJhbnNwb3J0RGF5Lm1heE1pbnV0ZXMgLSB0cmFuc3BvcnREYXkubWludXRlcyA8PSA2MCAmJiB0cmFuc3BvcnREYXkubWF4T3JkZXJBbW91bnQgPCB0cmFuc3BvcnREYXkub3JkZXJBbW91bnQpIHtcclxuICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG5cclxuICBwdWJsaWMgZHJhZ0VuZChldikge1xyXG4gICAgZXYucHJldmVudERlZmF1bHQoKTtcclxuICAgIHRoaXMuX2RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlLmRyYWdnaW5nID0gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgd2Vla0FycmF5KGFycjogUGxhbm5pbmdUcmFuc3BvcnRXZWVrKTogUGxhbm5pbmdUcmFuc3BvcnRXZWVrRGF5W10ge1xyXG4gICAgcmV0dXJuIE9iamVjdC5rZXlzKGFycikuc29ydCgpLm1hcChrZXkgPT4gYXJyW2tleV0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFkZEhvdXJzKGRhdGUsIGhvdXJzKSB7XHJcbiAgICBjb25zdCBob3Vyc1RvQWRkID0gaG91cnMgKiA2MCAqIDYwICogMTAwMDtcclxuICAgIGRhdGUuc2V0VGltZShkYXRlLmdldFRpbWUoKSArIGhvdXJzVG9BZGQpO1xyXG4gICAgcmV0dXJuIGRhdGU7XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
@@ -10,11 +10,13 @@ export class DeliveryPlanningMainComponent {
10
10
  this._viewModeService = _viewModeService;
11
11
  this._transaction = _transaction;
12
12
  this.viewModes = DeliveryPlanningViewModes;
13
- this.planningTransportWeek = [];
14
13
  this.fullPlanningTransportWeek = [];
15
14
  this.planOrders = [];
16
15
  this.planOrdersEvent = new EventEmitter();
17
16
  }
17
+ get planTransportWeek() {
18
+ return this._deliveryPlanningService.planTransportWeek;
19
+ }
18
20
  get currentMode() {
19
21
  return this._deliveryPlanningService.currentMode;
20
22
  }
@@ -36,22 +38,24 @@ export class DeliveryPlanningMainComponent {
36
38
  this.resetTransportWeek();
37
39
  }
38
40
  weekFilter(planTransportWeek) {
39
- const copy = planTransportWeek.slice();
40
- copy.forEach((ploeg) => {
41
+ planTransportWeek.forEach((ploeg) => {
41
42
  for (const property in ploeg) {
42
43
  if (property !== "day1" && property !== "day2" && property !== "day3") {
43
44
  delete ploeg[property];
44
45
  }
45
46
  }
46
47
  });
47
- return copy;
48
48
  }
49
49
  updatePlanTransportWeek(planningTransportWeek) {
50
50
  this.fullPlanningTransportWeek[0].day1 = planningTransportWeek.day1;
51
51
  this.fullPlanningTransportWeek[0].day2 = planningTransportWeek.day2;
52
52
  this.fullPlanningTransportWeek[0].day3 = planningTransportWeek.day3;
53
53
  this._transaction.updatePlanTransportWeek(this.fullPlanningTransportWeek[0]).then(result => {
54
- this.resetTransportWeek();
54
+ if (result) {
55
+ this._transaction.commit().then(result => {
56
+ this.resetTransportWeek();
57
+ });
58
+ }
55
59
  });
56
60
  }
57
61
  resetTransportWeek() {
@@ -59,14 +63,15 @@ export class DeliveryPlanningMainComponent {
59
63
  const myClonedArray = [];
60
64
  result.forEach(val => myClonedArray.push(Object.assign({}, val)));
61
65
  this.fullPlanningTransportWeek = myClonedArray;
62
- this.planningTransportWeek = this.weekFilter(result);
63
- });
64
- let filterObject = new PlanningFilterObject();
65
- filterObject.onlyCurrentWeek = true;
66
- filterObject.beginCurrentWeek = new Date();
67
- this._transaction.getPlanOrders(filterObject, this._deliveryPlanningService.currentPlanning.planningId).then((result) => {
68
- this.planOrders = result;
69
- this.planOrdersEvent.emit(result);
66
+ this.weekFilter(result);
67
+ let filterObject = new PlanningFilterObject();
68
+ filterObject.onlyCurrentWeek = true;
69
+ filterObject.beginCurrentWeek = new Date();
70
+ this._transaction.getPlanOrders(filterObject, this._deliveryPlanningService.currentPlanning.planningId).then((result) => {
71
+ this.planOrders = result;
72
+ this.planOrdersEvent.emit(result);
73
+ });
74
+ this._deliveryPlanningService.planTransportWeek = result;
70
75
  });
71
76
  }
72
77
  }
@@ -84,7 +89,6 @@ DeliveryPlanningMainComponent.decorators = [
84
89
  </div>
85
90
  <co-delivery-planning-overview [planOrders]="planOrders" [currentMode]="currentMode"
86
91
  [currentViewMode]="currentViewMode"
87
- [planTransportWeek]="planningTransportWeek"
88
92
  (updatePlanningTransportEvent)="updatePlanTransportWeek($event)"
89
93
  ></co-delivery-planning-overview>
90
94
  </div>
@@ -104,4 +108,4 @@ DeliveryPlanningMainComponent.propDecorators = {
104
108
  planOrdersEvent: [{ type: Output }],
105
109
  showClass: [{ type: HostBinding, args: ["class.co-delivery-planning-main",] }]
106
110
  };
107
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsaXZlcnktcGxhbm5pbmctbWFpbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cmFuc2FjdGlvbi9zcmMvbGliL2NvbXBvbmVudC9kZWxpdmVyeS1wbGFubmluZy1tYWluL2RlbGl2ZXJ5LXBsYW5uaW5nLW1haW4uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBVSxNQUFNLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFdEcsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sd0RBQXdELENBQUM7QUFDL0YsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFFekUsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sOENBQThDLENBQUM7QUFHdkYsT0FBTyxFQUFDLDJCQUEyQixFQUFDLE1BQU0sNkNBQTZDLENBQUM7QUFFeEYsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sZ0VBQWdFLENBQUM7QUF5QnBHLE1BQU0sT0FBTyw2QkFBNkI7SUE4QnhDLFlBQW9CLHdCQUFpRCxFQUFVLGdCQUF1QyxFQUFVLFlBQXlDO1FBQXJKLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBeUI7UUFBVSxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQXVCO1FBQVUsaUJBQVksR0FBWixZQUFZLENBQTZCO1FBNUJ6SixjQUFTLEdBQXFDLHlCQUF5QixDQUFDO1FBR2pGLDBCQUFxQixHQUE0QixFQUFFLENBQUM7UUFDcEQsOEJBQXlCLEdBQTRCLEVBQUUsQ0FBQztRQUN4RCxlQUFVLEdBQWdCLEVBQUUsQ0FBQztRQUc3QixvQkFBZSxHQUE4QixJQUFJLFlBQVksRUFBZSxDQUFDO0lBcUJwRixDQUFDO0lBbEJELElBQVcsV0FBVztRQUNwQixPQUFPLElBQUksQ0FBQyx3QkFBd0Is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LENBQUMsSUFBSSxDQUFDLENBQUMsTUFBbUIsRUFBRSxFQUFFO1lBQ25JLElBQUksQ0FBQyxVQUFVLEdBQUcsTUFBTSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3BDLENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQzs7O1lBckdGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsMkJBQTJCO2dCQUNyQyxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWtCVDtnQkFDRCxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTthQUN0Qzs7O1lBaENPLHVCQUF1QjtZQUN2QixxQkFBcUI7WUFLckIsMkJBQTJCOzs7OEJBb0NoQyxNQUFNO3dCQWdCTixXQUFXLFNBQUMsaUNBQWlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIE9uSW5pdCwgT3V0cHV0LCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtEZWxpdmVyeVBsYW5uaW5nTW9kZXN9IGZyb20gXCIuLi8uLi9lbnVtL2RlbGl2ZXJ5LXBsYW5uaW5nLW1vZGVzLmVudW1cIjtcclxuaW1wb3J0IHtEZWxpdmVyeVBsYW5uaW5nU2VydmljZX0gZnJvbSBcIi4uL2RlbGl2ZXJ5LXBsYW5uaW5nL3NlcnZpY2UvZGVsaXZlcnktcGxhbm5pbmcuc2VydmljZVwiO1xyXG5pbXBvcnQge1NlYXJjaFZpZXdNb2RlU2VydmljZX0gZnJvbSBcIi4uL3NlYXJjaC9zZWFyY2gtdmlldy1tb2RlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtDYWxlbmRhclZpZXd9IGZyb20gJ0Bjb2xpam5pdC9zaGFyZWRjb21wb25lbnRzJztcclxuaW1wb3J0IHtEZWxpdmVyeVBsYW5uaW5nVmlld01vZGVzfSBmcm9tIFwiLi4vLi4vZW51bS9kZWxpdmVyeS1wbGFubmluZy12aWV3LW1vZGVzLmVudW1cIjtcclxuaW1wb3J0IHtQbGFubmluZ30gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9wbGFubmluZy5ib1wiO1xyXG5pbXBvcnQge1BsYW5uaW5nVHJhbnNwb3J0V2Vla30gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9wbGFubmluZy10cmFuc3BvcnQtd2Vlay5ib1wiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uQ29ubmVjdG9yU2VydmljZX0gZnJvbSBcIi4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24tY29ubmVjdG9yLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtQbGFuT3JkZXJ9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvcGxhbi1vcmRlci5ib1wiO1xyXG5pbXBvcnQge1BsYW5uaW5nRmlsdGVyT2JqZWN0fSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3BsYW5uaW5nLWZpbHRlci1vYmplY3QuYm9cIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcImNvLWRlbGl2ZXJ5LXBsYW5uaW5nLW1haW5cIixcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGRpdiBjbGFzcz1cIndyYXBwZXIgcm93XCI+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZGVsaXZlcnktbWFpbi13cmFwcGVyXCI+XHJcbiAgICAgICAgPCEtLSAgICAgICAgICAgICAgPGNvLWRlbGl2ZXJ5LXBsYW5uaW5nLW1vZGUtc2VsZWN0aW9uIFtjdXJyZW50TW9kZV09XCJjdXJyZW50TW9kZVwiIFtjdXJyZW50Vmlld01vZGVdPVwiY3VycmVudFZpZXdNb2RlXCIgKG1vZGVDaGFuZ2VFdmVudCk9XCJjaGFuZ2VWaWV3TW9kZSgkZXZlbnQpXCIgPjwvY28tZGVsaXZlcnktcGxhbm5pbmctbW9kZS1zZWxlY3Rpb24+LS0+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInBsYW5uaW5nLXNlbGVjdGlvbi13cmFwcGVyXCI+XHJcbiAgICAgICAgICA8Y28tZGVsaXZlcnktcGxhbm5pbmctc2VsZWN0aW9uXHJcbiAgICAgICAgICAgIChwbGFubmluZ0NoYW5nZUV2ZW50KT1cInBsYW5uaW5nQ2hhbmdlZCgkZXZlbnQpXCI+PC9jby1kZWxpdmVyeS1wbGFubmluZy1zZWxlY3Rpb24+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGNvLWRlbGl2ZXJ5LXBsYW5uaW5nLW92ZXJ2aWV3IFtwbGFuT3JkZXJzXT1cInBsYW5PcmRlcnNcIiBbY3VycmVudE1vZGVdPVwiY3VycmVudE1vZGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY3VycmVudFZpZXdNb2RlXT1cImN1cnJlbnRWaWV3TW9kZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFuVHJhbnNwb3J0V2Vla109XCJwbGFubmluZ1RyYW5zcG9ydFdlZWtcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodXBkYXRlUGxhbm5pbmdUcmFuc3BvcnRFdmVudCk9XCJ1cGRhdGVQbGFuVHJhbnNwb3J0V2VlaygkZXZlbnQpXCJcclxuICAgICAgICA+PC9jby1kZWxpdmVyeS1wbGFubmluZy1vdmVydmlldz5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuXHJcblxyXG4gIGAsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRGVsaXZlcnlQbGFubmluZ01haW5Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBwdWJsaWMgcmVhZG9ubHkgdmlld01vZGVzOiB0eXBlb2YgRGVsaXZlcnlQbGFubmluZ1ZpZXdNb2RlcyA9IERlbGl2ZXJ5UGxhbm5pbmdWaWV3TW9kZXM7XHJcblxyXG4gIHB1YmxpYyBwbGFubmluZzogUGxhbm5pbmc7XHJcbiAgcHVibGljIHBsYW5uaW5nVHJhbnNwb3J0V2VlazogUGxhbm5pbmdUcmFuc3BvcnRXZWVrW10gPSBbXTtcclxuICBwdWJsaWMgZnVsbFBsYW5uaW5nVHJhbnNwb3J0V2VlazogUGxhbm5pbmdUcmFuc3BvcnRXZWVrW10gPSBbXTtcclxuICBwdWJsaWMgcGxhbk9yZGVyczogUGxhbk9yZGVyW10gPSBbXTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIHBsYW5PcmRlcnNFdmVudDogRXZlbnRFbWl0dGVyPFBsYW5PcmRlcltdPiA9IG5ldyBFdmVudEVtaXR0ZXI8UGxhbk9yZGVyW10+KCk7XHJcblxyXG5cclxuICBwdWJsaWMgZ2V0IGN1cnJlbnRNb2RlKCk6IERlbGl2ZXJ5UGxhbm5pbmdNb2RlcyB7XHJcbiAgICByZXR1cm4gdGhpcy5fZGVsaXZlcnlQbGFubmluZ1NlcnZpY2UuY3VycmVudE1vZGU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGN1cnJlbnRWaWV3TW9kZSgpOiBDYWxlbmRhclZpZXcge1xyXG4gICAgcmV0dXJuIHRoaXMuX2RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlLmRhdGVQbGFubmluZ01vZGU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGN1cnJlbnRQbGFubmluZ1ZpZXdNb2RlKCk6IERlbGl2ZXJ5UGxhbm5pbmdWaWV3TW9kZXMge1xyXG4gICAgcmV0dXJuIHRoaXMuX2RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlLnZpZXdNb2RlO1xyXG4gIH1cclxuXHJcbiAgQEhvc3RCaW5kaW5nKFwiY2xhc3MuY28tZGVsaXZlcnktcGxhbm5pbmctbWFpblwiKVxyXG4gIHB1YmxpYyBzaG93Q2xhc3MoKSB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX2RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlOiBEZWxpdmVyeVBsYW5uaW5nU2VydmljZSwgcHJpdmF0ZSBfdmlld01vZGVTZXJ2aWNlOiBTZWFyY2hWaWV3TW9kZVNlcnZpY2UsIHByaXZhdGUgX3RyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbkNvbm5lY3RvclNlcnZpY2UpIHtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fdmlld01vZGVTZXJ2aWNlLm9uU2VhcmNoVmlld1Jlc2l6ZUNsaWNrKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcGxhbm5pbmdDaGFuZ2VkKHBsYW5uaW5nOiBQbGFubmluZykge1xyXG4gICAgdGhpcy5wbGFubmluZyA9IHBsYW5uaW5nO1xyXG4gICAgdGhpcy5fZGVsaXZlcnlQbGFubmluZ1NlcnZpY2UuY3VycmVudFBsYW5uaW5nID0gcGxhbm5pbmc7XHJcbiAgICB0aGlzLnJlc2V0VHJhbnNwb3J0V2VlaygpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHdlZWtGaWx0ZXIocGxhblRyYW5zcG9ydFdlZWs6IFBsYW5uaW5nVHJhbnNwb3J0V2Vla1tdKTogUGxhbm5pbmdUcmFuc3BvcnRXZWVrW10ge1xyXG4gICAgY29uc3QgY29weSA9IHBsYW5UcmFuc3BvcnRXZWVrLnNsaWNlKCk7XHJcbiAgICBjb3B5LmZvckVhY2goKHBsb2VnOiBQbGFubmluZ1RyYW5zcG9ydFdlZWspID0+IHtcclxuICAgICAgZm9yIChjb25zdCBwcm9wZXJ0eSBpbiBwbG9lZykge1xyXG4gICAgICAgIGlmIChwcm9wZXJ0eSAhPT0gXCJkYXkxXCIgJiYgcHJvcGVydHkgIT09IFwiZGF5MlwiICYmIHByb3BlcnR5ICE9PSBcImRheTNcIikge1xyXG4gICAgICAgICAgZGVsZXRlIHBsb2VnW3Byb3BlcnR5XTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gICAgcmV0dXJuIGNvcHk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgdXBkYXRlUGxhblRyYW5zcG9ydFdlZWsocGxhbm5pbmdUcmFuc3BvcnRXZWVrOiBQbGFubmluZ1RyYW5zcG9ydFdlZWspIHtcclxuICAgIHRoaXMuZnVsbFBsYW5uaW5nVHJhbnNwb3J0V2Vla1swXS5kYXkxID0gcGxhbm5pbmdUcmFuc3BvcnRXZWVrLmRheTE7XHJcbiAgICB0aGlzLmZ1bGxQbGFubmluZ1RyYW5zcG9ydFdlZWtbMF0uZGF5MiA9IHBsYW5uaW5nVHJhbnNwb3J0V2Vlay5kYXkyO1xyXG4gICAgdGhpcy5mdWxsUGxhbm5pbmdUcmFuc3BvcnRXZWVrWzBdLmRheTMgPSBwbGFubmluZ1RyYW5zcG9ydFdlZWsuZGF5MztcclxuICAgIHRoaXMuX3RyYW5zYWN0aW9uLnVwZGF0ZVBsYW5UcmFuc3BvcnRXZWVrKHRoaXMuZnVsbFBsYW5uaW5nVHJhbnNwb3J0V2Vla1swXSkudGhlbihyZXN1bHQgPT4ge1xyXG4gICAgICB0aGlzLnJlc2V0VHJhbnNwb3J0V2VlaygpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcmVzZXRUcmFuc3BvcnRXZWVrKCkge1xyXG4gICAgdGhpcy5fdHJhbnNhY3Rpb24uZ2V0UGxhblRyYW5zcG9ydFdlZWsobmV3IERhdGUoKSwgdGhpcy5fZGVsaXZlcnlQbGFubmluZ1NlcnZpY2UuY3VycmVudFBsYW5uaW5nLnBsYW5uaW5nSWQpLnRoZW4oKHJlc3VsdDogUGxhbm5pbmdUcmFuc3BvcnRXZWVrW10pID0+IHtcclxuICAgICAgY29uc3QgbXlDbG9uZWRBcnJheSA9IFtdO1xyXG4gICAgICByZXN1bHQuZm9yRWFjaCh2YWwgPT4gbXlDbG9uZWRBcnJheS5wdXNoKE9iamVjdC5hc3NpZ24oe30sIHZhbCkpKTtcclxuICAgICAgdGhpcy5mdWxsUGxhbm5pbmdUcmFuc3BvcnRXZWVrID0gbXlDbG9uZWRBcnJheTtcclxuICAgICAgdGhpcy5wbGFubmluZ1RyYW5zcG9ydFdlZWsgPSB0aGlzLndlZWtGaWx0ZXIocmVzdWx0KTtcclxuICAgIH0pO1xyXG4gICAgbGV0IGZpbHRlck9iamVjdDogUGxhbm5pbmdGaWx0ZXJPYmplY3QgPSBuZXcgUGxhbm5pbmdGaWx0ZXJPYmplY3QoKTtcclxuICAgIGZpbHRlck9iamVjdC5vbmx5Q3VycmVudFdlZWsgPSB0cnVlO1xyXG4gICAgZmlsdGVyT2JqZWN0LmJlZ2luQ3VycmVudFdlZWsgPSBuZXcgRGF0ZSgpO1xyXG4gICAgdGhpcy5fdHJhbnNhY3Rpb24uZ2V0UGxhbk9yZGVycyhmaWx0ZXJPYmplY3QsIHRoaXMuX2RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlLmN1cnJlbnRQbGFubmluZy5wbGFubmluZ0lkKS50aGVuKChyZXN1bHQ6IFBsYW5PcmRlcltdKSA9PiB7XHJcbiAgICAgIHRoaXMucGxhbk9yZGVycyA9IHJlc3VsdDtcclxuICAgICAgdGhpcy5wbGFuT3JkZXJzRXZlbnQuZW1pdChyZXN1bHQpO1xyXG4gICAgfSlcclxuICB9XHJcblxyXG5cclxufVxyXG4iXX0=
111
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsaXZlcnktcGxhbm5pbmctbWFpbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cmFuc2FjdGlvbi9zcmMvbGliL2NvbXBvbmVudC9kZWxpdmVyeS1wbGFubmluZy1tYWluL2RlbGl2ZXJ5LXBsYW5uaW5nLW1haW4uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBVSxNQUFNLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFdEcsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sd0RBQXdELENBQUM7QUFDL0YsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFFekUsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sOENBQThDLENBQUM7QUFHdkYsT0FBTyxFQUFDLDJCQUEyQixFQUFDLE1BQU0sNkNBQTZDLENBQUM7QUFFeEYsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sZ0VBQWdFLENBQUM7QUEwQnBHLE1BQU0sT0FBTyw2QkFBNkI7SUFrQ3hDLFlBQW9CLHdCQUFpRCxFQUFVLGdCQUF1QyxFQUFVLFlBQXlDO1FBQXJKLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBeUI7UUFBVSxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQXVCO1FBQVUsaUJBQVksR0FBWixZQUFZLENBQTZCO1FBaEN6SixjQUFTLEdBQXFDLHlCQUF5QixDQUFDO1FBSWpGLDhCQUF5QixHQUE0QixFQUFFLENBQUM7UUFDeEQsZUFBVSxHQUFnQixFQUFFLENBQUM7UUFHN0Isb0JBQWUsR0FBOEIsSUFBSSxZQUFZLEVBQWUsQ0FBQztJQXlCcEYsQ0FBQztJQXZCRCxJQUFXLGlCQUFpQjtRQUMxQixPQUFPLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxpQkFBaUIsQ0FBQztJQUN6RCxDQUFD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QUFZLEVBQUUsSUFBSSxDQUFDLHdCQUF3QixDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFtQixFQUFFLEVBQUU7Z0JBQ25JLElBQUksQ0FBQyxVQUFVLEdBQUcsTUFBTSxDQUFDO2dCQUN6QixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUNwQyxDQUFDLENBQUMsQ0FBQTtZQUVGLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxpQkFBaUIsR0FBRyxNQUFNLENBQUM7UUFDM0QsQ0FBQyxDQUFDLENBQUM7SUFFTCxDQUFDOzs7WUE5R0YsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSwyQkFBMkI7Z0JBQ3JDLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FpQlQ7Z0JBQ0QsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7YUFDdEM7OztZQWpDTyx1QkFBdUI7WUFDdkIscUJBQXFCO1lBS3JCLDJCQUEyQjs7OzhCQXFDaEMsTUFBTTt3QkFvQk4sV0FBVyxTQUFDLGlDQUFpQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIEhvc3RCaW5kaW5nLCBPbkluaXQsIE91dHB1dCwgVmlld0VuY2Fwc3VsYXRpb259IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7RGVsaXZlcnlQbGFubmluZ01vZGVzfSBmcm9tIFwiLi4vLi4vZW51bS9kZWxpdmVyeS1wbGFubmluZy1tb2Rlcy5lbnVtXCI7XHJcbmltcG9ydCB7RGVsaXZlcnlQbGFubmluZ1NlcnZpY2V9IGZyb20gXCIuLi9kZWxpdmVyeS1wbGFubmluZy9zZXJ2aWNlL2RlbGl2ZXJ5LXBsYW5uaW5nLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtTZWFyY2hWaWV3TW9kZVNlcnZpY2V9IGZyb20gXCIuLi9zZWFyY2gvc2VhcmNoLXZpZXctbW9kZS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7Q2FsZW5kYXJWaWV3fSBmcm9tICdAY29saWpuaXQvc2hhcmVkY29tcG9uZW50cyc7XHJcbmltcG9ydCB7RGVsaXZlcnlQbGFubmluZ1ZpZXdNb2Rlc30gZnJvbSBcIi4uLy4uL2VudW0vZGVsaXZlcnktcGxhbm5pbmctdmlldy1tb2Rlcy5lbnVtXCI7XHJcbmltcG9ydCB7UGxhbm5pbmd9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvcGxhbm5pbmcuYm9cIjtcclxuaW1wb3J0IHtQbGFubmluZ1RyYW5zcG9ydFdlZWt9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvcGxhbm5pbmctdHJhbnNwb3J0LXdlZWsuYm9cIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkNvbm5lY3RvclNlcnZpY2V9IGZyb20gXCIuLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLWNvbm5lY3Rvci5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7UGxhbk9yZGVyfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3BsYW4tb3JkZXIuYm9cIjtcclxuaW1wb3J0IHtQbGFubmluZ0ZpbHRlck9iamVjdH0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9wbGFubmluZy1maWx0ZXItb2JqZWN0LmJvXCI7XHJcbmltcG9ydCB7UGxhbm5pbmdUcmFuc3BvcnRXZWVrRGF5fSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3BsYW5uaW5nLXRyYW5zcG9ydC13ZWVrLWRheS5ib1wiO1xyXG5pbXBvcnQge0dldFRyYW5zcG9ydE9yZGVyc1JlcXVlc3R9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvZ2V0LXRyYW5zcG9ydC1vcmRlcnMtcmVxdWVzdC5ib1wiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFwiY28tZGVsaXZlcnktcGxhbm5pbmctbWFpblwiLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8ZGl2IGNsYXNzPVwid3JhcHBlciByb3dcIj5cclxuXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJkZWxpdmVyeS1tYWluLXdyYXBwZXJcIj5cclxuICAgICAgICA8IS0tICAgICAgICAgICAgICA8Y28tZGVsaXZlcnktcGxhbm5pbmctbW9kZS1zZWxlY3Rpb24gW2N1cnJlbnRNb2RlXT1cImN1cnJlbnRNb2RlXCIgW2N1cnJlbnRWaWV3TW9kZV09XCJjdXJyZW50Vmlld01vZGVcIiAobW9kZUNoYW5nZUV2ZW50KT1cImNoYW5nZVZpZXdNb2RlKCRldmVudClcIiA+PC9jby1kZWxpdmVyeS1wbGFubmluZy1tb2RlLXNlbGVjdGlvbj4tLT5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicGxhbm5pbmctc2VsZWN0aW9uLXdyYXBwZXJcIj5cclxuICAgICAgICAgIDxjby1kZWxpdmVyeS1wbGFubmluZy1zZWxlY3Rpb25cclxuICAgICAgICAgICAgKHBsYW5uaW5nQ2hhbmdlRXZlbnQpPVwicGxhbm5pbmdDaGFuZ2VkKCRldmVudClcIj48L2NvLWRlbGl2ZXJ5LXBsYW5uaW5nLXNlbGVjdGlvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8Y28tZGVsaXZlcnktcGxhbm5pbmctb3ZlcnZpZXcgW3BsYW5PcmRlcnNdPVwicGxhbk9yZGVyc1wiIFtjdXJyZW50TW9kZV09XCJjdXJyZW50TW9kZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjdXJyZW50Vmlld01vZGVdPVwiY3VycmVudFZpZXdNb2RlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHVwZGF0ZVBsYW5uaW5nVHJhbnNwb3J0RXZlbnQpPVwidXBkYXRlUGxhblRyYW5zcG9ydFdlZWsoJGV2ZW50KVwiXHJcbiAgICAgICAgPjwvY28tZGVsaXZlcnktcGxhbm5pbmctb3ZlcnZpZXc+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcblxyXG5cclxuICBgLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIERlbGl2ZXJ5UGxhbm5pbmdNYWluQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgcHVibGljIHJlYWRvbmx5IHZpZXdNb2RlczogdHlwZW9mIERlbGl2ZXJ5UGxhbm5pbmdWaWV3TW9kZXMgPSBEZWxpdmVyeVBsYW5uaW5nVmlld01vZGVzO1xyXG5cclxuICBwdWJsaWMgcGxhbm5pbmc6IFBsYW5uaW5nO1xyXG5cclxuICBwdWJsaWMgZnVsbFBsYW5uaW5nVHJhbnNwb3J0V2VlazogUGxhbm5pbmdUcmFuc3BvcnRXZWVrW10gPSBbXTtcclxuICBwdWJsaWMgcGxhbk9yZGVyczogUGxhbk9yZGVyW10gPSBbXTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIHBsYW5PcmRlcnNFdmVudDogRXZlbnRFbWl0dGVyPFBsYW5PcmRlcltdPiA9IG5ldyBFdmVudEVtaXR0ZXI8UGxhbk9yZGVyW10+KCk7XHJcblxyXG4gIHB1YmxpYyBnZXQgcGxhblRyYW5zcG9ydFdlZWsoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5fZGVsaXZlcnlQbGFubmluZ1NlcnZpY2UucGxhblRyYW5zcG9ydFdlZWs7XHJcbiAgfVxyXG5cclxuXHJcbiAgcHVibGljIGdldCBjdXJyZW50TW9kZSgpOiBEZWxpdmVyeVBsYW5uaW5nTW9kZXMge1xyXG4gICAgcmV0dXJuIHRoaXMuX2RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlLmN1cnJlbnRNb2RlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBjdXJyZW50Vmlld01vZGUoKTogQ2FsZW5kYXJWaWV3IHtcclxuICAgIHJldHVybiB0aGlzLl9kZWxpdmVyeVBsYW5uaW5nU2VydmljZS5kYXRlUGxhbm5pbmdNb2RlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBjdXJyZW50UGxhbm5pbmdWaWV3TW9kZSgpOiBEZWxpdmVyeVBsYW5uaW5nVmlld01vZGVzIHtcclxuICAgIHJldHVybiB0aGlzLl9kZWxpdmVyeVBsYW5uaW5nU2VydmljZS52aWV3TW9kZTtcclxuICB9XHJcblxyXG4gIEBIb3N0QmluZGluZyhcImNsYXNzLmNvLWRlbGl2ZXJ5LXBsYW5uaW5nLW1haW5cIilcclxuICBwdWJsaWMgc2hvd0NsYXNzKCkge1xyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9kZWxpdmVyeVBsYW5uaW5nU2VydmljZTogRGVsaXZlcnlQbGFubmluZ1NlcnZpY2UsIHByaXZhdGUgX3ZpZXdNb2RlU2VydmljZTogU2VhcmNoVmlld01vZGVTZXJ2aWNlLCBwcml2YXRlIF90cmFuc2FjdGlvbjogVHJhbnNhY3Rpb25Db25uZWN0b3JTZXJ2aWNlKSB7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuX3ZpZXdNb2RlU2VydmljZS5vblNlYXJjaFZpZXdSZXNpemVDbGljaygpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHBsYW5uaW5nQ2hhbmdlZChwbGFubmluZzogUGxhbm5pbmcpIHtcclxuICAgIHRoaXMucGxhbm5pbmcgPSBwbGFubmluZztcclxuICAgIHRoaXMuX2RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlLmN1cnJlbnRQbGFubmluZyA9IHBsYW5uaW5nO1xyXG4gICAgdGhpcy5yZXNldFRyYW5zcG9ydFdlZWsoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyB3ZWVrRmlsdGVyKHBsYW5UcmFuc3BvcnRXZWVrOiBQbGFubmluZ1RyYW5zcG9ydFdlZWtbXSkge1xyXG4gICAgcGxhblRyYW5zcG9ydFdlZWsuZm9yRWFjaCgocGxvZWc6IFBsYW5uaW5nVHJhbnNwb3J0V2VlaykgPT4ge1xyXG4gICAgICBmb3IgKGNvbnN0IHByb3BlcnR5IGluIHBsb2VnKSB7XHJcbiAgICAgICAgaWYgKHByb3BlcnR5ICE9PSBcImRheTFcIiAmJiBwcm9wZXJ0eSAhPT0gXCJkYXkyXCIgJiYgcHJvcGVydHkgIT09IFwiZGF5M1wiKSB7XHJcbiAgICAgICAgICBkZWxldGUgcGxvZWdbcHJvcGVydHldO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgdXBkYXRlUGxhblRyYW5zcG9ydFdlZWsocGxhbm5pbmdUcmFuc3BvcnRXZWVrOiBQbGFubmluZ1RyYW5zcG9ydFdlZWspIHtcclxuICAgIHRoaXMuZnVsbFBsYW5uaW5nVHJhbnNwb3J0V2Vla1swXS5kYXkxID0gcGxhbm5pbmdUcmFuc3BvcnRXZWVrLmRheTE7XHJcbiAgICB0aGlzLmZ1bGxQbGFubmluZ1RyYW5zcG9ydFdlZWtbMF0uZGF5MiA9IHBsYW5uaW5nVHJhbnNwb3J0V2Vlay5kYXkyO1xyXG4gICAgdGhpcy5mdWxsUGxhbm5pbmdUcmFuc3BvcnRXZWVrWzBdLmRheTMgPSBwbGFubmluZ1RyYW5zcG9ydFdlZWsuZGF5MztcclxuICAgIHRoaXMuX3RyYW5zYWN0aW9uLnVwZGF0ZVBsYW5UcmFuc3BvcnRXZWVrKHRoaXMuZnVsbFBsYW5uaW5nVHJhbnNwb3J0V2Vla1swXSkudGhlbihyZXN1bHQgPT4ge1xyXG4gICAgICBpZiAocmVzdWx0KSB7XHJcbiAgICAgICAgdGhpcy5fdHJhbnNhY3Rpb24uY29tbWl0KCkudGhlbiggcmVzdWx0ID0+IHtcclxuICAgICAgICAgIHRoaXMucmVzZXRUcmFuc3BvcnRXZWVrKCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHJlc2V0VHJhbnNwb3J0V2VlaygpIHtcclxuICAgIHRoaXMuX3RyYW5zYWN0aW9uLmdldFBsYW5UcmFuc3BvcnRXZWVrKG5ldyBEYXRlKCksIHRoaXMuX2RlbGl2ZXJ5UGxhbm5pbmdTZXJ2aWNlLmN1cnJlbnRQbGFubmluZy5wbGFubmluZ0lkKS50aGVuKCAocmVzdWx0OiBQbGFubmluZ1RyYW5zcG9ydFdlZWtbXSkgPT4ge1xyXG4gICAgICBjb25zdCBteUNsb25lZEFycmF5ID0gW107XHJcbiAgICAgIHJlc3VsdC5mb3JFYWNoKHZhbCA9PiBteUNsb25lZEFycmF5LnB1c2goT2JqZWN0LmFzc2lnbih7fSwgdmFsKSkpO1xyXG4gICAgICB0aGlzLmZ1bGxQbGFubmluZ1RyYW5zcG9ydFdlZWsgPSBteUNsb25lZEFycmF5O1xyXG4gICAgICB0aGlzLndlZWtGaWx0ZXIocmVzdWx0KTtcclxuICAgICAgbGV0IGZpbHRlck9iamVjdDogUGxhbm5pbmdGaWx0ZXJPYmplY3QgPSBuZXcgUGxhbm5pbmdGaWx0ZXJPYmplY3QoKTtcclxuICAgICAgZmlsdGVyT2JqZWN0Lm9ubHlDdXJyZW50V2VlayA9IHRydWU7XHJcbiAgICAgIGZpbHRlck9iamVjdC5iZWdpbkN1cnJlbnRXZWVrID0gbmV3IERhdGUoKTtcclxuXHJcbiAgICAgIHRoaXMuX3RyYW5zYWN0aW9uLmdldFBsYW5PcmRlcnMoZmlsdGVyT2JqZWN0LCB0aGlzLl9kZWxpdmVyeVBsYW5uaW5nU2VydmljZS5jdXJyZW50UGxhbm5pbmcucGxhbm5pbmdJZCkudGhlbigocmVzdWx0OiBQbGFuT3JkZXJbXSkgPT4ge1xyXG4gICAgICAgIHRoaXMucGxhbk9yZGVycyA9IHJlc3VsdDtcclxuICAgICAgICB0aGlzLnBsYW5PcmRlcnNFdmVudC5lbWl0KHJlc3VsdCk7XHJcbiAgICAgIH0pXHJcblxyXG4gICAgICB0aGlzLl9kZWxpdmVyeVBsYW5uaW5nU2VydmljZS5wbGFuVHJhbnNwb3J0V2VlayA9IHJlc3VsdDtcclxuICAgIH0pO1xyXG5cclxuICB9XHJcblxyXG59XHJcbiJdfQ==
@@ -4,6 +4,7 @@ import { TransactionScreenConfigurationService } from '../../service/transaction
4
4
  export class TransactionButtonComponent {
5
5
  constructor(_screenConfigService) {
6
6
  this._screenConfigService = _screenConfigService;
7
+ this.statusColor = false;
7
8
  this.readonly = false;
8
9
  this.hidden = false;
9
10
  this.showCheckMarkLoader = false;
@@ -20,6 +21,9 @@ export class TransactionButtonComponent {
20
21
  return false;
21
22
  }
22
23
  }
24
+ titleNumber(title) {
25
+ return parseInt(title);
26
+ }
23
27
  }
24
28
  TransactionButtonComponent.decorators = [
25
29
  { type: Component, args: [{
@@ -30,7 +34,7 @@ TransactionButtonComponent.decorators = [
30
34
  <div class="spacer"></div>
31
35
  </div>
32
36
  <div class="transaction-button-label-title-wrapper" [class.title]="title">
33
- <span class="transaction-button-title co-transaction-overflow-ellipsis" [textContent]="title"></span>
37
+ <span class="transaction-button-title co-transaction-overflow-ellipsis" [class.negative]="statusColor && titleNumber(title) < 0" [class.positive]="statusColor && titleNumber(title) > 0 " [textContent]="title"></span>
34
38
  <span class="transaction-button-label co-transaction-overflow-ellipsis" [textContent]="label"></span>
35
39
  <ng-content></ng-content>
36
40
  </div>
@@ -53,6 +57,7 @@ TransactionButtonComponent.ctorParameters = () => [
53
57
  TransactionButtonComponent.propDecorators = {
54
58
  label: [{ type: Input }],
55
59
  title: [{ type: Input }],
60
+ statusColor: [{ type: Input }],
56
61
  readonly: [{ type: HostBinding, args: ["class.read-only",] }, { type: Input }],
57
62
  hidden: [{ type: HostBinding, args: ["class.co-transaction-hidden",] }, { type: Input }],
58
63
  iconData: [{ type: Input }],
@@ -62,4 +67,4 @@ TransactionButtonComponent.propDecorators = {
62
67
  showClass: [{ type: HostBinding, args: ['class.co-transaction-button',] }],
63
68
  handleClick: [{ type: HostListener, args: ["click", ["$event"],] }]
64
69
  };
65
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L3RyYW5zYWN0aW9uLWJ1dHRvbi90cmFuc2FjdGlvbi1idXR0b24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLGlCQUFpQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRXpHLE9BQU8sRUFBQyw4Q0FBOEMsRUFBK0IsTUFBTSw4QkFBOEIsQ0FBQztBQUMxSCxPQUFPLEVBQUMscUNBQXFDLEVBQUMsTUFBTSx3REFBd0QsQ0FBQztBQTBCN0csTUFBTSxPQUFPLDBCQUEwQjtJQWtEckMsWUFBb0Isb0JBQTJEO1FBQTNELHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBdUM7UUF4Q3hFLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFJMUIsV0FBTSxHQUFZLEtBQUssQ0FBQztRQVN4Qix3QkFBbUIsR0FBWSxLQUFLLENBQUM7UUFHckMsNEJBQXVCLEdBQVksS0FBSyxDQUFDO0lBeUJoRCxDQUFDO0lBdEJNLFNBQVM7UUFDZCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFHTSxXQUFXLENBQUMsS0FBaUI7UUFDbEMsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2pCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN2QixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDeEIsS0FBSyxDQUFDLHdCQUF3QixFQUFFLENBQUM7WUFDakMsT0FBTyxLQUFLLENBQUM7U0FDZDtJQUNILENBQUM7OztZQWpFRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLHVCQUF1QjtnQkFDakMsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7R0FlVDtnQkFDRCxTQUFTLEVBQUUsQ0FBQzt3QkFDVixPQUFPLEVBQUUsOENBQThDO3dCQUN2RCxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLDBCQUEwQixDQUFDO3FCQUMxRCxDQUFDO2dCQUNGLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2FBQ3RDOzs7WUF6Qk8scUNBQXFDOzs7b0JBNEIxQyxLQUFLO29CQUdMLEtBQUs7dUJBR0wsV0FBVyxTQUFDLGlCQUFpQixjQUM3QixLQUFLO3FCQUdMLFdBQVcsU0FBQyw2QkFBNkIsY0FDekMsS0FBSzt1QkFHTCxLQUFLOzRCQUdMLEtBQUs7a0NBR0wsS0FBSztzQ0FHTCxLQUFLO3dCQUdMLFdBQVcsU0FBQyw2QkFBNkI7MEJBS3pDLFlBQVksU0FBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgZm9yd2FyZFJlZiwgSG9zdEJpbmRpbmcsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtTYWZlSHRtbH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XHJcbmltcG9ydCB7U0NSRUVOX0NPTkZJR19BREFQVEVSX0NPTVBPTkVOVF9JTlRFUkZBQ0VfTkFNRSwgU2NyZWVuQ29uZmlnQWRhcHRlckNvbXBvbmVudH0gZnJvbSAnQGNvbGlqbml0L2NvcmVjb21wb25lbnRzX3YxMic7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25TY3JlZW5Db25maWd1cmF0aW9uU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi1zY3JlZW4tY29uZmlndXJhdGlvbi5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnY28tdHJhbnNhY3Rpb24tYnV0dG9uJyxcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLWJ1dHRvbi1pY29uLXdyYXBwZXJcIiAqbmdJZj1pY29uRGF0YT5cclxuICAgICAgPGNvLWljb24gY2xhc3M9XCJ0cmFuc2FjdGlvbi1idXR0b24taWNvblwiIFtpY29uRGF0YV09XCJpY29uRGF0YVwiPjwvY28taWNvbj5cclxuICAgICAgPGRpdiBjbGFzcz1cInNwYWNlclwiPjwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24tYnV0dG9uLWxhYmVsLXRpdGxlLXdyYXBwZXJcIiBbY2xhc3MudGl0bGVdPVwidGl0bGVcIj5cclxuICAgICAgPHNwYW4gY2xhc3M9XCJ0cmFuc2FjdGlvbi1idXR0b24tdGl0bGUgY28tdHJhbnNhY3Rpb24tb3ZlcmZsb3ctZWxsaXBzaXNcIiBbdGV4dENvbnRlbnRdPVwidGl0bGVcIj48L3NwYW4+XHJcbiAgICAgIDxzcGFuIGNsYXNzPVwidHJhbnNhY3Rpb24tYnV0dG9uLWxhYmVsIGNvLXRyYW5zYWN0aW9uLW92ZXJmbG93LWVsbGlwc2lzXCIgW3RleHRDb250ZW50XT1cImxhYmVsXCI+PC9zcGFuPlxyXG4gICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJ0cmFuc2FjdGlvbi1idXR0b24taWNvbi13cmFwcGVyXCIgKm5nSWY9cmlnaHRJY29uRGF0YT5cclxuICAgICAgPGRpdiBjbGFzcz1cInNwYWNlclwiPjwvZGl2PlxyXG4gICAgICA8Y28taWNvbiBjbGFzcz1cInRyYW5zYWN0aW9uLWJ1dHRvbi1pY29uXCIgW2ljb25EYXRhXT1cInJpZ2h0SWNvbkRhdGFcIj48L2NvLWljb24+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxjby1jaGVja21hcmstb3ZlcmxheSBbc3VjY2Vzc2Z1bF09XCJzaG93Q2hlY2tNYXJrTG9hZGVyXCIgW3Zpc2libGVdPVwiY2hlY2tNYXJrT3ZlcmxheVZpc2libGVcIj48L2NvLWNoZWNrbWFyay1vdmVybGF5PlxyXG4gIGAsXHJcbiAgcHJvdmlkZXJzOiBbe1xyXG4gICAgcHJvdmlkZTogU0NSRUVOX0NPTkZJR19BREFQVEVSX0NPTVBPTkVOVF9JTlRFUkZBQ0VfTkFNRSxcclxuICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFRyYW5zYWN0aW9uQnV0dG9uQ29tcG9uZW50KVxyXG4gIH1dLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uQnV0dG9uQ29tcG9uZW50IGltcGxlbWVudHMgU2NyZWVuQ29uZmlnQWRhcHRlckNvbXBvbmVudCB7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGxhYmVsOiBzdHJpbmc7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHRpdGxlOiBzdHJpbmc7XHJcblxyXG4gIEBIb3N0QmluZGluZyhcImNsYXNzLnJlYWQtb25seVwiKVxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHJlYWRvbmx5OiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIEBIb3N0QmluZGluZyhcImNsYXNzLmNvLXRyYW5zYWN0aW9uLWhpZGRlblwiKVxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGhpZGRlbjogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBpY29uRGF0YTogU2FmZUh0bWwgfCB1bmRlZmluZWQ7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHJpZ2h0SWNvbkRhdGE6IFNhZmVIdG1sIHwgdW5kZWZpbmVkO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzaG93Q2hlY2tNYXJrTG9hZGVyOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGNoZWNrTWFya092ZXJsYXlWaXNpYmxlOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuY28tdHJhbnNhY3Rpb24tYnV0dG9uJylcclxuICBwdWJsaWMgc2hvd0NsYXNzKCkge1xyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG5cclxuICBASG9zdExpc3RlbmVyKFwiY2xpY2tcIiwgW1wiJGV2ZW50XCJdKVxyXG4gIHB1YmxpYyBoYW5kbGVDbGljayhldmVudDogTW91c2VFdmVudCkge1xyXG4gICAgaWYgKHRoaXMucmVhZG9ubHkpIHtcclxuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICAgIGV2ZW50LnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpO1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb2JqZWN0Q29uZmlnTmFtZTogc3RyaW5nO1xyXG4gIHB1YmxpYyByZXF1aXJlZDogYm9vbGVhbjtcclxuICBwdWJsaWMgZm9yY2VSZWFkb25seTogYm9vbGVhbjtcclxuICBwdWJsaWMgbWF4TGVuZ3RoOiBudW1iZXI7XHJcbiAgcHVibGljIGRlY2ltYWxzOiBudW1iZXI7XHJcbiAgcHVibGljIHJlZEVycm9yQmFja2dyb3VuZDogYm9vbGVhbjtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfc2NyZWVuQ29uZmlnU2VydmljZTogVHJhbnNhY3Rpb25TY3JlZW5Db25maWd1cmF0aW9uU2VydmljZSkge1xyXG4gIH1cclxufVxyXG4iXX0=
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L3RyYW5zYWN0aW9uLWJ1dHRvbi90cmFuc2FjdGlvbi1idXR0b24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLGlCQUFpQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRXpHLE9BQU8sRUFBQyw4Q0FBOEMsRUFBK0IsTUFBTSw4QkFBOEIsQ0FBQztBQUMxSCxPQUFPLEVBQUMscUNBQXFDLEVBQUMsTUFBTSx3REFBd0QsQ0FBQztBQTBCN0csTUFBTSxPQUFPLDBCQUEwQjtJQXFEckMsWUFBb0Isb0JBQTJEO1FBQTNELHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBdUM7UUE1Q3hFLGdCQUFXLEdBQVksS0FBSyxDQUFDO1FBSTdCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFJMUIsV0FBTSxHQUFZLEtBQUssQ0FBQztRQVN4Qix3QkFBbUIsR0FBWSxLQUFLLENBQUM7UUFHckMsNEJBQXVCLEdBQVksS0FBSyxDQUFDO0lBeUJoRCxDQUFDO0lBdEJNLFNBQVM7UUFDZCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFHTSxXQUFXLENBQUMsS0FBaUI7UUFDbEMsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2pCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN2QixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDeEIsS0FBSyxDQUFDLHdCQUF3QixFQUFFLENBQUM7WUFDakMsT0FBTyxLQUFLLENBQUM7U0FDZDtJQUNILENBQUM7SUFXTSxXQUFXLENBQUMsS0FBWTtRQUM3QixPQUFPLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN6QixDQUFDOzs7WUFqRkYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSx1QkFBdUI7Z0JBQ2pDLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7O0dBZVQ7Z0JBQ0QsU0FBUyxFQUFFLENBQUM7d0JBQ1YsT0FBTyxFQUFFLDhDQUE4Qzt3QkFDdkQsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQztxQkFDMUQsQ0FBQztnQkFDRixhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTthQUN0Qzs7O1lBekJPLHFDQUFxQzs7O29CQTRCMUMsS0FBSztvQkFHTCxLQUFLOzBCQUdMLEtBQUs7dUJBR0wsV0FBVyxTQUFDLGlCQUFpQixjQUM3QixLQUFLO3FCQUdMLFdBQVcsU0FBQyw2QkFBNkIsY0FDekMsS0FBSzt1QkFHTCxLQUFLOzRCQUdMLEtBQUs7a0NBR0wsS0FBSztzQ0FHTCxLQUFLO3dCQUdMLFdBQVcsU0FBQyw2QkFBNkI7MEJBS3pDLFlBQVksU0FBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgZm9yd2FyZFJlZiwgSG9zdEJpbmRpbmcsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtTYWZlSHRtbH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XHJcbmltcG9ydCB7U0NSRUVOX0NPTkZJR19BREFQVEVSX0NPTVBPTkVOVF9JTlRFUkZBQ0VfTkFNRSwgU2NyZWVuQ29uZmlnQWRhcHRlckNvbXBvbmVudH0gZnJvbSAnQGNvbGlqbml0L2NvcmVjb21wb25lbnRzX3YxMic7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25TY3JlZW5Db25maWd1cmF0aW9uU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi1zY3JlZW4tY29uZmlndXJhdGlvbi5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnY28tdHJhbnNhY3Rpb24tYnV0dG9uJyxcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLWJ1dHRvbi1pY29uLXdyYXBwZXJcIiAqbmdJZj1pY29uRGF0YT5cclxuICAgICAgPGNvLWljb24gY2xhc3M9XCJ0cmFuc2FjdGlvbi1idXR0b24taWNvblwiIFtpY29uRGF0YV09XCJpY29uRGF0YVwiPjwvY28taWNvbj5cclxuICAgICAgPGRpdiBjbGFzcz1cInNwYWNlclwiPjwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24tYnV0dG9uLWxhYmVsLXRpdGxlLXdyYXBwZXJcIiBbY2xhc3MudGl0bGVdPVwidGl0bGVcIj5cclxuICAgICAgPHNwYW4gY2xhc3M9XCJ0cmFuc2FjdGlvbi1idXR0b24tdGl0bGUgY28tdHJhbnNhY3Rpb24tb3ZlcmZsb3ctZWxsaXBzaXNcIiBbY2xhc3MubmVnYXRpdmVdPVwic3RhdHVzQ29sb3IgJiYgdGl0bGVOdW1iZXIodGl0bGUpIDwgMFwiIFtjbGFzcy5wb3NpdGl2ZV09XCJzdGF0dXNDb2xvciAmJiB0aXRsZU51bWJlcih0aXRsZSkgPiAwIFwiIFt0ZXh0Q29udGVudF09XCJ0aXRsZVwiPjwvc3Bhbj5cclxuICAgICAgPHNwYW4gY2xhc3M9XCJ0cmFuc2FjdGlvbi1idXR0b24tbGFiZWwgY28tdHJhbnNhY3Rpb24tb3ZlcmZsb3ctZWxsaXBzaXNcIiBbdGV4dENvbnRlbnRdPVwibGFiZWxcIj48L3NwYW4+XHJcbiAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLWJ1dHRvbi1pY29uLXdyYXBwZXJcIiAqbmdJZj1yaWdodEljb25EYXRhPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwic3BhY2VyXCI+PC9kaXY+XHJcbiAgICAgIDxjby1pY29uIGNsYXNzPVwidHJhbnNhY3Rpb24tYnV0dG9uLWljb25cIiBbaWNvbkRhdGFdPVwicmlnaHRJY29uRGF0YVwiPjwvY28taWNvbj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGNvLWNoZWNrbWFyay1vdmVybGF5IFtzdWNjZXNzZnVsXT1cInNob3dDaGVja01hcmtMb2FkZXJcIiBbdmlzaWJsZV09XCJjaGVja01hcmtPdmVybGF5VmlzaWJsZVwiPjwvY28tY2hlY2ttYXJrLW92ZXJsYXk+XHJcbiAgYCxcclxuICBwcm92aWRlcnM6IFt7XHJcbiAgICBwcm92aWRlOiBTQ1JFRU5fQ09ORklHX0FEQVBURVJfQ09NUE9ORU5UX0lOVEVSRkFDRV9OQU1FLFxyXG4gICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVHJhbnNhY3Rpb25CdXR0b25Db21wb25lbnQpXHJcbiAgfV0sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25CdXR0b25Db21wb25lbnQgaW1wbGVtZW50cyBTY3JlZW5Db25maWdBZGFwdGVyQ29tcG9uZW50IHtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgbGFiZWw6IHN0cmluZztcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgdGl0bGU6IHN0cmluZztcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc3RhdHVzQ29sb3I6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgQEhvc3RCaW5kaW5nKFwiY2xhc3MucmVhZC1vbmx5XCIpXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgcmVhZG9ubHk6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgQEhvc3RCaW5kaW5nKFwiY2xhc3MuY28tdHJhbnNhY3Rpb24taGlkZGVuXCIpXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgaGlkZGVuOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGljb25EYXRhOiBTYWZlSHRtbCB8IHVuZGVmaW5lZDtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgcmlnaHRJY29uRGF0YTogU2FmZUh0bWwgfCB1bmRlZmluZWQ7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNob3dDaGVja01hcmtMb2FkZXI6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgY2hlY2tNYXJrT3ZlcmxheVZpc2libGU6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5jby10cmFuc2FjdGlvbi1idXR0b24nKVxyXG4gIHB1YmxpYyBzaG93Q2xhc3MoKSB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoXCJjbGlja1wiLCBbXCIkZXZlbnRcIl0pXHJcbiAgcHVibGljIGhhbmRsZUNsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KSB7XHJcbiAgICBpZiAodGhpcy5yZWFkb25seSkge1xyXG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgICAgZXZlbnQuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCk7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBvYmplY3RDb25maWdOYW1lOiBzdHJpbmc7XHJcbiAgcHVibGljIHJlcXVpcmVkOiBib29sZWFuO1xyXG4gIHB1YmxpYyBmb3JjZVJlYWRvbmx5OiBib29sZWFuO1xyXG4gIHB1YmxpYyBtYXhMZW5ndGg6IG51bWJlcjtcclxuICBwdWJsaWMgZGVjaW1hbHM6IG51bWJlcjtcclxuICBwdWJsaWMgcmVkRXJyb3JCYWNrZ3JvdW5kOiBib29sZWFuO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9zY3JlZW5Db25maWdTZXJ2aWNlOiBUcmFuc2FjdGlvblNjcmVlbkNvbmZpZ3VyYXRpb25TZXJ2aWNlKSB7XHJcbiAgfVxyXG4gIHB1YmxpYyB0aXRsZU51bWJlcih0aXRsZTpzdHJpbmcpIHtcclxuICAgIHJldHVybiBwYXJzZUludCh0aXRsZSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==