@colijnit/transaction 12.1.110 → 12.1.112

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 (104) hide show
  1. package/bundles/colijnit-transaction.umd.js +823 -657
  2. package/bundles/colijnit-transaction.umd.js.map +1 -1
  3. package/colijnit-transaction.d.ts +379 -380
  4. package/colijnit-transaction.metadata.json +1 -1
  5. package/esm2015/colijnit-transaction.js +380 -381
  6. package/esm2015/lib/component/core/base/transaction-base.component.js +57 -21
  7. package/esm2015/lib/component/core/core.module.js +19 -24
  8. package/esm2015/lib/component/core/relation/customer-groups.component.js +14 -9
  9. package/esm2015/lib/component/relation/relation-address/relation-address.component.js +26 -8
  10. package/esm2015/lib/component/relation/relation-address/relation-address.module.js +4 -3
  11. package/esm2015/lib/component/shared/transaction-article-text/transaction-article-text.component.js +59 -21
  12. package/esm2015/lib/component/shared/transaction-article-text/transaction-article-text.module.js +4 -3
  13. package/esm2015/lib/component/shared/transaction-article-text-overview/transaction-article-text-overview.component.js +22 -21
  14. package/esm2015/lib/component/transaction/transaction.component.js +33 -25
  15. package/esm2015/lib/component/transaction-card/transaction-card-invoice/transaction-card-invoice.component.js +6 -6
  16. package/esm2015/lib/component/transaction-card/transaction-card-order-delivery/transaction-card-order-delivery.component.js +12 -12
  17. package/esm2015/lib/component/transaction-card/transaction-card-receive-goods/transaction-card-receive-goods.component.js +9 -9
  18. package/esm2015/lib/component/transaction-header-fields/transaction-header-administrative-relation.component.js +5 -7
  19. package/esm2015/lib/component/transaction-header-fields/transaction-header-administrative-relation.module.js +4 -3
  20. package/esm2015/lib/component/transaction-header-fields/transaction-header-branch.component.js +6 -8
  21. package/esm2015/lib/component/transaction-header-fields/transaction-header-branch.module.js +4 -3
  22. package/esm2015/lib/component/transaction-header-fields/transaction-header-currency.component.js +5 -7
  23. package/esm2015/lib/component/transaction-header-fields/transaction-header-currency.module.js +4 -3
  24. package/esm2015/lib/component/transaction-header-fields/transaction-header-payment-condition.component.js +5 -7
  25. package/esm2015/lib/component/transaction-header-fields/transaction-header-payment-condition.module.js +4 -3
  26. package/esm2015/lib/component/transaction-header-fields/transaction-header-price-kind.component.js +6 -7
  27. package/esm2015/lib/component/transaction-header-fields/transaction-header-price-kind.module.js +4 -3
  28. package/esm2015/lib/component/transaction-header-fields/transaction-header-sales-person.component.js +5 -7
  29. package/esm2015/lib/component/transaction-header-fields/transaction-header-sales-person.module.js +4 -3
  30. package/esm2015/lib/component/transaction-line/transaction-base-line/transaction-base-line.component.js +4 -7
  31. package/esm2015/lib/component/transaction-line/transaction-goods-allocation-line/transaction-goods-allocation-line.component.js +4 -4
  32. package/esm2015/lib/component/transaction-line/transaction-invoice-line/transaction-invoice-line-base.component.js +8 -8
  33. package/esm2015/lib/component/transaction-line/transaction-invoice-line/transaction-invoice-line.component.js +8 -8
  34. package/esm2015/lib/component/transaction-line/transaction-order-delivery-line/transaction-order-delivery-line-base.component.js +3 -3
  35. package/esm2015/lib/component/transaction-line/transaction-order-delivery-line/transaction-order-delivery-line.component.js +10 -10
  36. package/esm2015/lib/component/transaction-line/transaction-receive-goods-line/transaction-receive-goods-line.component.js +6 -6
  37. package/esm2015/lib/component/transaction-line/transaction-text-line/transaction-text-line.component.js +8 -3
  38. package/esm2015/lib/component/transaction-line-action-buttons/transaction-line-action-buttons-popup.component.js +61 -0
  39. package/esm2015/lib/component/transaction-line-action-buttons/transaction-line-action-buttons.component.js +40 -64
  40. package/esm2015/lib/component/transaction-line-action-buttons/transaction-line-action-buttons.module.js +8 -4
  41. package/esm2015/lib/component/transaction-line-fields/transaction-line-commission-code.component.js +6 -2
  42. package/esm2015/lib/component/transaction-line-fields/transaction-line-delivery-method.component.js +10 -2
  43. package/esm2015/lib/component/transaction-line-fields/transaction-line-price/transaction-line-price.component.js +6 -2
  44. package/esm2015/lib/component/transaction-line-fields/transaction-line-vat.component.js +8 -1
  45. package/esm2015/lib/component/transaction-line-fields/transaction-line-warehouse.component.js +9 -1
  46. package/esm2015/lib/component/transaction-line-fields/transaction-line-warehouse.module.js +4 -3
  47. package/esm2015/lib/component/transaction-line-image-and-description/transaction-line-image-and-description.component.js +2 -7
  48. package/esm2015/lib/component/transaction-line-purchase-receive-goods/transaction-line-purchase-receive-goods.component.js +5 -5
  49. package/esm2015/lib/component/transaction-line-sales-allocation/transaction-line-sales-allocation.component.js +4 -4
  50. package/esm2015/lib/component/transaction-line-side-panel-article-details/transaction-line-side-panel-article-details.component.js +18 -7
  51. package/esm2015/lib/component/transaction-line-side-panel-article-details/transaction-line-side-panel-article-details.module.js +4 -3
  52. package/esm2015/lib/component/transaction-line-statusbar/transaction-line-statusbar.component.js +14 -14
  53. package/esm2015/lib/component/transaction-navigation-button-list/transaction-navigation-button-list.module.js +10 -9
  54. package/esm2015/lib/component/transaction-print-package-sticker/transaction-print-package-sticker.component.js +4 -4
  55. package/esm2015/lib/model/icon-svg.js +2 -2
  56. package/esm2015/lib/res/dictionary/dictionaries.js +2 -2
  57. package/esm2015/lib/service/transaction-connector-adapter.service.js +16 -1
  58. package/esm2015/lib/service/transaction-connector.service.js +6 -1
  59. package/esm2015/lib/service/transaction.service.js +21 -3
  60. package/esm2015/lib/transaction-version.js +3 -3
  61. package/fesm2015/colijnit-transaction.js +519 -397
  62. package/fesm2015/colijnit-transaction.js.map +1 -1
  63. package/lib/component/core/base/transaction-base.component.d.ts +22 -0
  64. package/lib/component/core/relation/customer-groups.component.d.ts +2 -0
  65. package/lib/component/relation/relation-address/relation-address.component.d.ts +6 -1
  66. package/lib/component/shared/transaction-article-text/style/_layout.scss +11 -0
  67. package/lib/component/shared/transaction-article-text/transaction-article-text.component.d.ts +20 -10
  68. package/lib/component/shared/transaction-article-text-overview/style/_layout.scss +9 -2
  69. package/lib/component/shared/transaction-article-text-overview/style/_material-definition.scss +7 -3
  70. package/lib/component/shared/transaction-article-text-overview/transaction-article-text-overview.component.d.ts +8 -9
  71. package/lib/component/tile/style/_material-definition.scss +1 -1
  72. package/lib/component/transaction/transaction.component.d.ts +9 -4
  73. package/lib/component/transaction-card/transaction-card/style/_layout.scss +8 -8
  74. package/lib/component/transaction-card/transaction-card-invoice/transaction-card-invoice.component.d.ts +2 -2
  75. package/lib/component/transaction-card/transaction-card-order-delivery/transaction-card-order-delivery.component.d.ts +2 -2
  76. package/lib/component/transaction-card/transaction-card-receive-goods/transaction-card-receive-goods.component.d.ts +2 -2
  77. package/lib/component/transaction-header/transaction-header-payment/style/_layout.scss +2 -1
  78. package/lib/component/transaction-line/transaction-base-line/transaction-base-line.component.d.ts +1 -2
  79. package/lib/component/transaction-line/transaction-invoice-line/transaction-invoice-line-base.component.d.ts +3 -3
  80. package/lib/component/transaction-line/transaction-line/style/_layout.scss +8 -8
  81. package/lib/component/transaction-line/transaction-purchase-order-line/style/_layout.scss +6 -6
  82. package/lib/component/transaction-line/transaction-text-line/transaction-text-line.component.d.ts +2 -0
  83. package/lib/component/transaction-line-action-buttons/style/_layout.scss +22 -81
  84. package/lib/component/transaction-line-action-buttons/style/_material-definition.scss +13 -3
  85. package/lib/component/transaction-line-action-buttons/style/_theme.scss +8 -4
  86. package/lib/component/transaction-line-action-buttons/transaction-line-action-buttons-popup.component.d.ts +16 -0
  87. package/lib/component/transaction-line-action-buttons/transaction-line-action-buttons.component.d.ts +9 -8
  88. package/lib/component/transaction-line-fields/transaction-line-vat.component.d.ts +1 -0
  89. package/lib/component/transaction-line-fields/transaction-line-warehouse.component.d.ts +1 -0
  90. package/lib/component/transaction-line-image-and-description/transaction-line-image-and-description.component.d.ts +0 -2
  91. package/lib/component/transaction-line-purchase-receive-goods/style/_layout.scss +4 -4
  92. package/lib/component/transaction-search/transaction-search-tile/transaction-search-tile/style/_material-definition.scss +2 -2
  93. package/lib/res/dictionary/dictionaries.d.ts +2 -0
  94. package/lib/service/transaction-connector-adapter.service.d.ts +1 -0
  95. package/lib/service/transaction-connector.service.d.ts +1 -0
  96. package/lib/service/transaction.service.d.ts +1 -0
  97. package/lib/style/_variables.scss +2 -1
  98. package/package.json +3 -3
  99. package/esm2015/lib/component/core/directive/overlay-parent.directive.js +0 -19
  100. package/esm2015/lib/component/core/directive/overlay.directive.js +0 -66
  101. package/esm2015/lib/enum/direction.enum.js +0 -9
  102. package/lib/component/core/directive/overlay-parent.directive.d.ts +0 -6
  103. package/lib/component/core/directive/overlay.directive.d.ts +0 -14
  104. package/lib/enum/direction.enum.d.ts +0 -6
@@ -1,10 +1,10 @@
1
1
  import { __awaiter } from "tslib";
2
- import { Component, EventEmitter, HostBinding, Input, Output, ViewEncapsulation } from "@angular/core";
3
- import { Icon } from "../../../enum/icon.enum";
4
- import { DictionaryService } from "../../../service/dictionary.service";
5
- import { IconCacheService } from "../../../service/icon-cache.service";
6
- import { TransactionService } from "../../../service/transaction.service";
7
- import { TransactionAddTextLineRequest } from "@colijnit/transactionapi/build/model/transaction-add-text-line-request.bo";
2
+ import { Component, EventEmitter, HostBinding, Input, Output, ViewEncapsulation } from '@angular/core';
3
+ import { Icon } from '../../../enum/icon.enum';
4
+ import { DictionaryService } from '../../../service/dictionary.service';
5
+ import { IconCacheService } from '../../../service/icon-cache.service';
6
+ import { TransactionService } from '../../../service/transaction.service';
7
+ import { TransactionAddTextLineRequest } from '@colijnit/transactionapi/build/model/transaction-add-text-line-request.bo';
8
8
  export class TransactionArticleTextComponent {
9
9
  constructor(transactionService, iconCacheService, _dictionaryService) {
10
10
  this.transactionService = transactionService;
@@ -18,15 +18,17 @@ export class TransactionArticleTextComponent {
18
18
  this.icon = Icon;
19
19
  this.standardTexts = [];
20
20
  this.documents = [];
21
+ this.showOnDocuments = [];
22
+ this.selectAll = false;
21
23
  this.fields = { text: "description", value: "textId" };
22
24
  this.fieldsDocuments = { text: "description", value: "code" };
23
25
  this.textAreaPlaceholder = this._dictionaryService.get("TYPE_TEXT", true);
26
+ this.new = true;
24
27
  this.transactionAddTextLineRequest = new TransactionAddTextLineRequest();
25
28
  }
26
29
  set transactionLine(value) {
27
30
  if (value) {
28
31
  this._transactionLine = value;
29
- this.transactionAddTextLineRequest.transactionUuid = value.uuid;
30
32
  this.transactionAddTextLineRequest.text = value.text;
31
33
  }
32
34
  }
@@ -42,6 +44,7 @@ export class TransactionArticleTextComponent {
42
44
  return this._articleRef;
43
45
  }
44
46
  set editText(value) {
47
+ this.new = value === undefined || value === null;
45
48
  this.transactionAddTextLineRequest.text = value;
46
49
  }
47
50
  set articleLineNr(value) {
@@ -56,10 +59,13 @@ export class TransactionArticleTextComponent {
56
59
  return __awaiter(this, void 0, void 0, function* () {
57
60
  this.standardTexts = yield this.transactionService.getStandardTexts("NL");
58
61
  this.documents = yield this.transactionService.getTextTypes("NL");
62
+ this._setShowOnDocuments();
59
63
  });
60
64
  }
61
65
  onOkClick(event) {
62
- this.saveClick.next(this.transactionAddTextLineRequest);
66
+ this.transactionAddTextLineRequest.transactionUuid = this.transactionUuid;
67
+ this.transactionAddTextLineRequest.showOnDocuments = this._getShowOnDocuments();
68
+ this.saveClick.next({ request: this.transactionAddTextLineRequest, new: this.new });
63
69
  }
64
70
  onCancelClick(event) {
65
71
  this.cancelClick.next(event);
@@ -67,7 +73,36 @@ export class TransactionArticleTextComponent {
67
73
  onSelectStandardText(value) {
68
74
  this.transactionAddTextLineRequest.text = (this.standardTexts.find(x => x.textId === value)).text;
69
75
  }
70
- handleDocumentsChange(docs) {
76
+ handleDocumentsChange(codes) {
77
+ this.showOnDocuments = codes;
78
+ }
79
+ handleSelectAll(select) {
80
+ if (select) {
81
+ this.showOnDocuments = [];
82
+ this.documents.forEach(d => this.showOnDocuments.push(d.code));
83
+ }
84
+ else {
85
+ this.showOnDocuments = [];
86
+ }
87
+ }
88
+ _setShowOnDocuments() {
89
+ this.showOnDocuments.length = 0;
90
+ if (this.transactionLine && (this.transactionLine.showOnDocuments || this.transactionLine.showOnDocuments === 0)) {
91
+ this.documents.forEach(d => {
92
+ if (d.code & this.transactionLine.showOnDocuments) {
93
+ this.showOnDocuments.push(d.code);
94
+ }
95
+ });
96
+ }
97
+ else { // creating new text, check all documents
98
+ this.documents.forEach(d => this.showOnDocuments.push(d.code));
99
+ this.selectAll = true;
100
+ }
101
+ }
102
+ _getShowOnDocuments() {
103
+ let result = 0;
104
+ this.showOnDocuments.forEach(d => result = result + d);
105
+ return result;
71
106
  }
72
107
  }
73
108
  TransactionArticleTextComponent.decorators = [
@@ -87,12 +122,12 @@ TransactionArticleTextComponent.decorators = [
87
122
  </div>
88
123
 
89
124
  <div class="standard-texts-dropdown-wrapper">
90
- <co-drop-down-list
125
+ <co-list-of-values
91
126
  [collection]="standardTexts"
92
- [fields]="fields"
93
- [placeholder]="'STANDARD_TEXTS' | localize"
127
+ [displayField]="'description'"
128
+ [label]="'STANDARD_TEXTS' | localize"
94
129
  (modelChange)="onSelectStandardText($event)"
95
- ></co-drop-down-list>
130
+ ></co-list-of-values>
96
131
  </div>
97
132
 
98
133
  <div class="article-text-content-wrapper">
@@ -103,14 +138,16 @@ TransactionArticleTextComponent.decorators = [
103
138
  ></textarea>
104
139
  </div>
105
140
  <div class="option-wrapper">
141
+ <co-input-checkbox class="select-all-checkbox" [model]="selectAll" (modelChange)="handleSelectAll($event)"></co-input-checkbox>
106
142
  <co-input-listbox
107
- [collection]="documents"
108
- [fields]="fieldsDocuments"
109
- [placeholder]="'FOR_DOCUMENTS' | localize"
110
- [value]="transactionAddTextLineRequest.showOnDocuments"
111
- [showCheckbox]="true"
112
- [fullWidth]="true"
113
- (modelChange)="handleDocumentsChange($event)"
143
+ [customCssClass]="'co-small-scrollbar'"
144
+ [collection]="documents"
145
+ [fields]="fieldsDocuments"
146
+ [placeholder]="'FOR_DOCUMENTS' | localize"
147
+ [value]="showOnDocuments"
148
+ [showCheckbox]="true"
149
+ [fullWidth]="true"
150
+ (modelChange)="handleDocumentsChange($event)"
114
151
  ></co-input-listbox>
115
152
  </div>
116
153
  </div>
@@ -135,6 +172,7 @@ TransactionArticleTextComponent.ctorParameters = () => [
135
172
  ];
136
173
  TransactionArticleTextComponent.propDecorators = {
137
174
  header: [{ type: Input }],
175
+ transactionUuid: [{ type: Input }],
138
176
  transactionLine: [{ type: Input }],
139
177
  articleRef: [{ type: Input }],
140
178
  editText: [{ type: Input }],
@@ -146,4 +184,4 @@ TransactionArticleTextComponent.propDecorators = {
146
184
  saveClick: [{ type: Output }],
147
185
  showClass: [{ type: HostBinding, args: ["class.co-transaction-article-text",] }]
148
186
  };
149
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tYXJ0aWNsZS10ZXh0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L3NoYXJlZC90cmFuc2FjdGlvbi1hcnRpY2xlLXRleHQvdHJhbnNhY3Rpb24tYXJ0aWNsZS10ZXh0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDN0csT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQzdDLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ3RFLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ3JFLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBR3hFLE9BQU8sRUFBQyw2QkFBNkIsRUFBQyxNQUFNLDJFQUEyRSxDQUFDO0FBMER4SCxNQUFNLE9BQU8sK0JBQStCO0lBeUUxQyxZQUNTLGtCQUFzQyxFQUN0QyxnQkFBa0MsRUFDakMsa0JBQXFDO1FBRnRDLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDdEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNqQyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW1CO1FBbEN4QyxnQ0FBMkIsR0FBWSxLQUFLLENBQUM7UUFHN0MsY0FBUyxHQUFZLElBQUksQ0FBQztRQUcxQixlQUFVLEdBQTZCLElBQUksWUFBWSxFQUFjLENBQUM7UUFHdEUsZ0JBQVcsR0FBNkIsSUFBSSxZQUFZLEVBQWMsQ0FBQztRQUd2RSxjQUFTLEdBQWdELElBQUksWUFBWSxFQUFpQyxDQUFDO1FBT2xHLFNB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Szt1QkFXTCxLQUFLOzRCQUtMLEtBQUs7MENBT0wsS0FBSzt3QkFHTCxLQUFLO3lCQUdMLE1BQU07MEJBR04sTUFBTTt3QkFHTixNQUFNO3dCQUdOLFdBQVcsU0FBQyxtQ0FBbUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge2FuaW1hdGUsIHN0YXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlcn0gZnJvbSBcIkBhbmd1bGFyL2FuaW1hdGlvbnNcIjtcclxuaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVmlld0VuY2Fwc3VsYXRpb259IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7SWNvbn0gZnJvbSBcIi4uLy4uLy4uL2VudW0vaWNvbi5lbnVtXCI7XHJcbmltcG9ydCB7RGljdGlvbmFyeVNlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi9zZXJ2aWNlL2RpY3Rpb25hcnkuc2VydmljZVwiO1xyXG5pbXBvcnQge0ljb25DYWNoZVNlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi9zZXJ2aWNlL2ljb24tY2FjaGUuc2VydmljZVwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uU2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24uc2VydmljZVwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uTGluZUluZm99IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvdHJhbnNhY3Rpb24tbGluZS1pbmZvLmJvXCI7XHJcbmltcG9ydCB7U3RhbmRhcmRUZXh0fSBmcm9tIFwiLi4vLi4vLi4vbW9kZWwvc3RhbmRhcmQtdGV4dFwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uQWRkVGV4dExpbmVSZXF1ZXN0fSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3RyYW5zYWN0aW9uLWFkZC10ZXh0LWxpbmUtcmVxdWVzdC5ib1wiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFwiY28tdHJhbnNhY3Rpb24tYXJ0aWNsZS10ZXh0XCIsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxjby1kaWFsb2cgKGNsb3NlQ2xpY2spPVwiY2xvc2VDbGljay5lbWl0KCRldmVudClcIiBbaGVhZGVyVGVtcGxhdGVdPVwiaGVhZGVyVGVtcGxhdGVcIlxyXG4gICAgICAgICAgICAgICBbZm9vdGVyVGVtcGxhdGVdPVwiZm9vdGVyVGVtcGxhdGVcIj5cclxuICAgICAgPGRpdiAqbmdJZj1cInNob3dBcnRpY2xlSW1hZ2VEZXNjcmlwdGlvblwiIGNsYXNzPVwiYXJ0aWNsZS1pbWFnZS1kZXNjcmlwdGlvbi13cmFwcGVyXCI+XHJcbiAgICAgICAgPHNwYW4gW3RleHRDb250ZW50XT1cIidQcm9kdWN0b21zY2hyaWp2aW5nJ1wiIGNsYXNzPVwiZGlhbG9nLWxhYmVsXCI+PC9zcGFuPlxyXG4gICAgICAgIDxjby10cmFuc2FjdGlvbi1saW5lLWRlc2NyaXB0aW9uIGNsYXNzPVwidHJhbnNhY3Rpb24tbGluZS1kZXNjcmlwdGlvbi1kZXNjcmlwdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3RyYW5zYWN0aW9uSW5mb109XCJ0cmFuc2FjdGlvblNlcnZpY2UuY3VycmVudFRyYW5zYWN0aW9uLnRyYW5zYWN0aW9uSW5mb1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3RyYW5zYWN0aW9uTGluZV09XCJ0cmFuc2FjdGlvbkxpbmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkZWZhdWx0RWRpdE1vZGVdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzaG93TGFiZWxdPVwiZmFsc2VcIlxyXG4gICAgICAgID48L2NvLXRyYW5zYWN0aW9uLWxpbmUtZGVzY3JpcHRpb24+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPGRpdiBjbGFzcz1cInN0YW5kYXJkLXRleHRzLWRyb3Bkb3duLXdyYXBwZXJcIj5cclxuICAgICAgICA8Y28tZHJvcC1kb3duLWxpc3RcclxuICAgICAgICAgIFtjb2xsZWN0aW9uXT1cInN0YW5kYXJkVGV4dHNcIlxyXG4gICAgICAgICAgW2ZpZWxkc109XCJmaWVsZHNcIlxyXG4gICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidTVEFOREFSRF9URVhUUycgfCBsb2NhbGl6ZVwiXHJcbiAgICAgICAgICAobW9kZWxDaGFuZ2UpPVwib25TZWxlY3RTdGFuZGFyZFRleHQoJGV2ZW50KVwiXHJcbiAgICAgICAgPjwvY28tZHJvcC1kb3duLWxpc3Q+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPGRpdiBjbGFzcz1cImFydGljbGUtdGV4dC1jb250ZW50LXdyYXBwZXJcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZWRpdG9yLXdyYXBwZXJcIj5cclxuICAgICAgICAgIDx0ZXh0YXJlYSBjbGFzcz1cImFydGljbGUtdGV4dFwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cInRleHRBcmVhUGxhY2Vob2xkZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwidHJhbnNhY3Rpb25BZGRUZXh0TGluZVJlcXVlc3QudGV4dFwiXHJcbiAgICAgICAgICA+PC90ZXh0YXJlYT5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwib3B0aW9uLXdyYXBwZXJcIj5cclxuICAgICAgICAgIDxjby1pbnB1dC1saXN0Ym94XHJcbiAgICAgICAgICAgIFtjb2xsZWN0aW9uXT1cImRvY3VtZW50c1wiXHJcbiAgICAgICAgICAgIFtmaWVsZHNdPVwiZmllbGRzRG9jdW1lbnRzXCJcclxuICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidGT1JfRE9DVU1FTlRTJyB8IGxvY2FsaXplXCJcclxuICAgICAgICAgICAgW3ZhbHVlXT1cInRyYW5zYWN0aW9uQWRkVGV4dExpbmVSZXF1ZXN0LnNob3dPbkRvY3VtZW50c1wiXHJcbiAgICAgICAgICAgIFtzaG93Q2hlY2tib3hdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgIFtmdWxsV2lkdGhdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgIChtb2RlbENoYW5nZSk9XCJoYW5kbGVEb2N1bWVudHNDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgICA+PC9jby1pbnB1dC1saXN0Ym94PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvY28tZGlhbG9nPlxyXG5cclxuICAgIDxuZy10ZW1wbGF0ZSAjaGVhZGVyVGVtcGxhdGU+XHJcbiAgICAgIDxzcGFuIGNsYXNzPVwiY28tZGlhbG9nLWhlYWRlci10aXRsZVwiIFt0ZXh0Q29udGVudF09XCJoZWFkZXJcIj48L3NwYW4+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgPG5nLXRlbXBsYXRlICNmb290ZXJUZW1wbGF0ZT5cclxuICAgICAgPGRpdiBjbGFzcz1cImNvLWRpYWxvZy1mb290ZXItYnV0dG9uLXdyYXBwZXJcIj5cclxuICAgICAgICA8Y28tYnV0dG9uIFtsYWJlbF09XCInT0snIHwgbG9jYWxpemVcIiAoY2xpY2spPVwib25Pa0NsaWNrKCRldmVudClcIj48L2NvLWJ1dHRvbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG4gIGAsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25BcnRpY2xlVGV4dENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGhlYWRlcjogc3RyaW5nO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZXQgdHJhbnNhY3Rpb25MaW5lKHZhbHVlOiBUcmFuc2FjdGlvbkxpbmVJbmZvKSB7XHJcbiAgICBpZiAodmFsdWUpIHtcclxuICAgICAgdGhpcy5fdHJhbnNhY3Rpb25MaW5lID0gdmFsdWU7XHJcbiAgICAgIHRoaXMudHJhbnNhY3Rpb25BZGRUZXh0TGluZVJlcXVlc3QudHJhbnNhY3Rpb25VdWlkID0gdmFsdWUudXVpZDtcclxuICAgICAgdGhpcy50cmFuc2FjdGlvbkFkZFRleHRMaW5lUmVxdWVzdC50ZXh0ID0gdmFsdWUudGV4dDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgdHJhbnNhY3Rpb25MaW5lKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuX3RyYW5zYWN0aW9uTGluZTtcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNldCBhcnRpY2xlUmVmKHZhbHVlOiBzdHJpbmcpIHtcclxuICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICB0aGlzLl9hcnRpY2xlUmVmID0gdmFsdWU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGFydGljbGVSZWYoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLl9hcnRpY2xlUmVmO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2V0IGVkaXRUZXh0KHZhbHVlOiBzdHJpbmcpIHtcclxuICAgIHRoaXMudHJhbnNhY3Rpb25BZGRUZXh0TGluZVJlcXVlc3QudGV4dCA9IHZhbHVlO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2V0IGFydGljbGVMaW5lTnIodmFsdWU6IG51bWJlcikge1xyXG4gICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgIHRoaXMudHJhbnNhY3Rpb25BZGRUZXh0TGluZVJlcXVlc3QucmVmQXJ0aWNsZUxpbmVOciA9IHZhbHVlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2hvd0FydGljbGVJbWFnZURlc2NyaXB0aW9uOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNob3dJbWFnZTogYm9vbGVhbiA9IHRydWU7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyBjbG9zZUNsaWNrOiBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+KCk7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyBjYW5jZWxDbGljazogRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50PigpO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgc2F2ZUNsaWNrOiBFdmVudEVtaXR0ZXI8VHJhbnNhY3Rpb25BZGRUZXh0TGluZVJlcXVlc3Q+ID0gbmV3IEV2ZW50RW1pdHRlcjxUcmFuc2FjdGlvbkFkZFRleHRMaW5lUmVxdWVzdD4oKTtcclxuXHJcbiAgQEhvc3RCaW5kaW5nKFwiY2xhc3MuY28tdHJhbnNhY3Rpb24tYXJ0aWNsZS10ZXh0XCIpXHJcbiAgcHVibGljIHNob3dDbGFzcygpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHJlYWRvbmx5IGljb246IHR5cGVvZiBJY29uID0gSWNvbjtcclxuICBwcml2YXRlIF90cmFuc2FjdGlvbkxpbmU6IFRyYW5zYWN0aW9uTGluZUluZm87XHJcbiAgcHVibGljIHN0YW5kYXJkVGV4dHM6IFN0YW5kYXJkVGV4dFtdID0gW107XHJcbiAgcHVibGljIGRvY3VtZW50czogYW55W10gPSBbXTtcclxuICBwdWJsaWMgZmllbGRzOiBPYmplY3QgPSB7dGV4dDogXCJkZXNjcmlwdGlvblwiLCB2YWx1ZTogXCJ0ZXh0SWRcIn07XHJcbiAgcHVibGljIGZpZWxkc0RvY3VtZW50czogT2JqZWN0ID0ge3RleHQ6IFwiZGVzY3JpcHRpb25cIiwgdmFsdWU6IFwiY29kZVwifTtcclxuICBwdWJsaWMgdGV4dEFyZWFQbGFjZWhvbGRlcjogc3RyaW5nID0gdGhpcy5fZGljdGlvbmFyeVNlcnZpY2UuZ2V0KFwiVFlQRV9URVhUXCIsIHRydWUpO1xyXG5cclxuICBwdWJsaWMgdHJhbnNhY3Rpb25BZGRUZXh0TGluZVJlcXVlc3Q6IFRyYW5zYWN0aW9uQWRkVGV4dExpbmVSZXF1ZXN0ID0gbmV3IFRyYW5zYWN0aW9uQWRkVGV4dExpbmVSZXF1ZXN0KCk7XHJcblxyXG4gIHByaXZhdGUgX2FydGljbGVSZWY6IHN0cmluZztcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgdHJhbnNhY3Rpb25TZXJ2aWNlOiBUcmFuc2FjdGlvblNlcnZpY2UsXHJcbiAgICBwdWJsaWMgaWNvbkNhY2hlU2VydmljZTogSWNvbkNhY2hlU2VydmljZSxcclxuICAgIHByaXZhdGUgX2RpY3Rpb25hcnlTZXJ2aWNlOiBEaWN0aW9uYXJ5U2VydmljZSxcclxuICApIHtcclxuICB9XHJcblxyXG4gIGFzeW5jIG5nT25Jbml0KCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgdGhpcy5zdGFuZGFyZFRleHRzID0gYXdhaXQgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UuZ2V0U3RhbmRhcmRUZXh0cyhcIk5MXCIpO1xyXG4gICAgdGhpcy5kb2N1bWVudHMgPSBhd2FpdCB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5nZXRUZXh0VHlwZXMoXCJOTFwiKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvbk9rQ2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcclxuICAgIHRoaXMuc2F2ZUNsaWNrLm5leHQodGhpcy50cmFuc2FjdGlvbkFkZFRleHRMaW5lUmVxdWVzdCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25DYW5jZWxDbGljayhldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xyXG4gICAgdGhpcy5jYW5jZWxDbGljay5uZXh0KGV2ZW50KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvblNlbGVjdFN0YW5kYXJkVGV4dCh2YWx1ZTogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLnRyYW5zYWN0aW9uQWRkVGV4dExpbmVSZXF1ZXN0LnRleHQgPSAodGhpcy5zdGFuZGFyZFRleHRzLmZpbmQoeCA9PiB4LnRleHRJZCA9PT0gdmFsdWUpKS50ZXh0O1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZURvY3VtZW50c0NoYW5nZShkb2NzOiBhbnkpOiB2b2lkIHtcclxuICB9XHJcbn1cclxuIl19
187
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tYXJ0aWNsZS10ZXh0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L3NoYXJlZC90cmFuc2FjdGlvbi1hcnRpY2xlLXRleHQvdHJhbnNhY3Rpb24tYXJ0aWNsZS10ZXh0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDN0csT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQzdDLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ3RFLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ3JFLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBR3hFLE9BQU8sRUFBQyw2QkFBNkIsRUFBQyxNQUFNLDJFQUEyRSxDQUFDO0FBNER4SCxNQUFNLE9BQU8sK0JBQStCO0lBK0UxQyxZQUNTLGtCQUFzQyxFQUN0QyxnQkFBa0MsRUFDakMsa0JBQXFDO1FBRnRDLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDdEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNqQyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW1CO1FBckN4QyxnQ0FBMkIsR0FBWSxLQUFLLENBQUM7UUFHN0MsY0FBUyxHQUFZLElBQUksQ0FBQztRQUcxQixlQUFVLEdBQTZCLElBQUksWUFBWSxFQUFjLENBQUM7UUFHdEUsZ0JBQVcsR0FBNkIsSUFBSSxZQUFZLEVBQWMsQ0FBQztRQUd2RSxjQUFTLEdBQTJFLElBQUksWUFBWSxFQUE0RCxDQUFDO1FBT3hKLFNB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QUN2QjtJQUNILENBQUM7SUFFTyxtQkFBbUI7UUFDekIsSUFBSSxNQUFNLEdBQVcsQ0FBQyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsTUFBTSxHQUFHLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztRQUN2RCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDOzs7WUFuTUYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSw2QkFBNkI7Z0JBQ3ZDLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FxRFQ7Z0JBQ0QsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7YUFDdEM7OztZQTlETyxrQkFBa0I7WUFEbEIsZ0JBQWdCO1lBRGhCLGlCQUFpQjs7O3FCQW1FdEIsS0FBSzs4QkFHTCxLQUFLOzhCQUdMLEtBQUs7eUJBWUwsS0FBSzt1QkFXTCxLQUFLOzRCQU1MLEtBQUs7MENBT0wsS0FBSzt3QkFHTCxLQUFLO3lCQUdMLE1BQU07MEJBR04sTUFBTTt3QkFHTixNQUFNO3dCQUdOLFdBQVcsU0FBQyxtQ0FBbUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7SWNvbn0gZnJvbSAnLi4vLi4vLi4vZW51bS9pY29uLmVudW0nO1xyXG5pbXBvcnQge0RpY3Rpb25hcnlTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlL2RpY3Rpb25hcnkuc2VydmljZSc7XHJcbmltcG9ydCB7SWNvbkNhY2hlU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vc2VydmljZS9pY29uLWNhY2hlLnNlcnZpY2UnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkxpbmVJbmZvfSBmcm9tICdAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvdHJhbnNhY3Rpb24tbGluZS1pbmZvLmJvJztcclxuaW1wb3J0IHtTdGFuZGFyZFRleHR9IGZyb20gJy4uLy4uLy4uL21vZGVsL3N0YW5kYXJkLXRleHQnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uQWRkVGV4dExpbmVSZXF1ZXN0fSBmcm9tICdAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvdHJhbnNhY3Rpb24tYWRkLXRleHQtbGluZS1yZXF1ZXN0LmJvJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcImNvLXRyYW5zYWN0aW9uLWFydGljbGUtdGV4dFwiLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8Y28tZGlhbG9nIChjbG9zZUNsaWNrKT1cImNsb3NlQ2xpY2suZW1pdCgkZXZlbnQpXCIgW2hlYWRlclRlbXBsYXRlXT1cImhlYWRlclRlbXBsYXRlXCJcclxuICAgICAgICAgICAgICAgW2Zvb3RlclRlbXBsYXRlXT1cImZvb3RlclRlbXBsYXRlXCI+XHJcbiAgICAgIDxkaXYgKm5nSWY9XCJzaG93QXJ0aWNsZUltYWdlRGVzY3JpcHRpb25cIiBjbGFzcz1cImFydGljbGUtaW1hZ2UtZGVzY3JpcHRpb24td3JhcHBlclwiPlxyXG4gICAgICAgIDxzcGFuIFt0ZXh0Q29udGVudF09XCInUHJvZHVjdG9tc2NocmlqdmluZydcIiBjbGFzcz1cImRpYWxvZy1sYWJlbFwiPjwvc3Bhbj5cclxuICAgICAgICA8Y28tdHJhbnNhY3Rpb24tbGluZS1kZXNjcmlwdGlvbiBjbGFzcz1cInRyYW5zYWN0aW9uLWxpbmUtZGVzY3JpcHRpb24tZGVzY3JpcHRpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0cmFuc2FjdGlvbkluZm9dPVwidHJhbnNhY3Rpb25TZXJ2aWNlLmN1cnJlbnRUcmFuc2FjdGlvbi50cmFuc2FjdGlvbkluZm9cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0cmFuc2FjdGlvbkxpbmVdPVwidHJhbnNhY3Rpb25MaW5lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGVmYXVsdEVkaXRNb2RlXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc2hvd0xhYmVsXT1cImZhbHNlXCJcclxuICAgICAgICA+PC9jby10cmFuc2FjdGlvbi1saW5lLWRlc2NyaXB0aW9uPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJzdGFuZGFyZC10ZXh0cy1kcm9wZG93bi13cmFwcGVyXCI+XHJcbiAgICAgICAgPGNvLWxpc3Qtb2YtdmFsdWVzXHJcbiAgICAgICAgICBbY29sbGVjdGlvbl09XCJzdGFuZGFyZFRleHRzXCJcclxuICAgICAgICAgIFtkaXNwbGF5RmllbGRdPVwiJ2Rlc2NyaXB0aW9uJ1wiXHJcbiAgICAgICAgICBbbGFiZWxdPVwiJ1NUQU5EQVJEX1RFWFRTJyB8IGxvY2FsaXplXCJcclxuICAgICAgICAgIChtb2RlbENoYW5nZSk9XCJvblNlbGVjdFN0YW5kYXJkVGV4dCgkZXZlbnQpXCJcclxuICAgICAgICA+PC9jby1saXN0LW9mLXZhbHVlcz5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwiYXJ0aWNsZS10ZXh0LWNvbnRlbnQtd3JhcHBlclwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJlZGl0b3Itd3JhcHBlclwiPlxyXG4gICAgICAgICAgPHRleHRhcmVhIGNsYXNzPVwiYXJ0aWNsZS10ZXh0XCJcclxuICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwidGV4dEFyZWFQbGFjZWhvbGRlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJ0cmFuc2FjdGlvbkFkZFRleHRMaW5lUmVxdWVzdC50ZXh0XCJcclxuICAgICAgICAgID48L3RleHRhcmVhPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJvcHRpb24td3JhcHBlclwiPlxyXG4gICAgICAgICAgPGNvLWlucHV0LWNoZWNrYm94IGNsYXNzPVwic2VsZWN0LWFsbC1jaGVja2JveFwiIFttb2RlbF09XCJzZWxlY3RBbGxcIiAobW9kZWxDaGFuZ2UpPVwiaGFuZGxlU2VsZWN0QWxsKCRldmVudClcIj48L2NvLWlucHV0LWNoZWNrYm94PlxyXG4gICAgICAgICAgPGNvLWlucHV0LWxpc3Rib3hcclxuICAgICAgICAgICAgICBbY3VzdG9tQ3NzQ2xhc3NdPVwiJ2NvLXNtYWxsLXNjcm9sbGJhcidcIlxyXG4gICAgICAgICAgICAgIFtjb2xsZWN0aW9uXT1cImRvY3VtZW50c1wiXHJcbiAgICAgICAgICAgICAgW2ZpZWxkc109XCJmaWVsZHNEb2N1bWVudHNcIlxyXG4gICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInRk9SX0RPQ1VNRU5UUycgfCBsb2NhbGl6ZVwiXHJcbiAgICAgICAgICAgICAgW3ZhbHVlXT1cInNob3dPbkRvY3VtZW50c1wiXHJcbiAgICAgICAgICAgICAgW3Nob3dDaGVja2JveF09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICBbZnVsbFdpZHRoXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgIChtb2RlbENoYW5nZSk9XCJoYW5kbGVEb2N1bWVudHNDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgICA+PC9jby1pbnB1dC1saXN0Ym94PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvY28tZGlhbG9nPlxyXG5cclxuICAgIDxuZy10ZW1wbGF0ZSAjaGVhZGVyVGVtcGxhdGU+XHJcbiAgICAgIDxzcGFuIGNsYXNzPVwiY28tZGlhbG9nLWhlYWRlci10aXRsZVwiIFt0ZXh0Q29udGVudF09XCJoZWFkZXJcIj48L3NwYW4+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgPG5nLXRlbXBsYXRlICNmb290ZXJUZW1wbGF0ZT5cclxuICAgICAgPGRpdiBjbGFzcz1cImNvLWRpYWxvZy1mb290ZXItYnV0dG9uLXdyYXBwZXJcIj5cclxuICAgICAgICA8Y28tYnV0dG9uIFtsYWJlbF09XCInT0snIHwgbG9jYWxpemVcIiAoY2xpY2spPVwib25Pa0NsaWNrKCRldmVudClcIj48L2NvLWJ1dHRvbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG4gIGAsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25BcnRpY2xlVGV4dENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGhlYWRlcjogc3RyaW5nO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyB0cmFuc2FjdGlvblV1aWQ6IHN0cmluZztcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2V0IHRyYW5zYWN0aW9uTGluZSh2YWx1ZTogVHJhbnNhY3Rpb25MaW5lSW5mbykge1xyXG4gICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgIHRoaXMuX3RyYW5zYWN0aW9uTGluZSA9IHZhbHVlO1xyXG4gICAgICB0aGlzLnRyYW5zYWN0aW9uQWRkVGV4dExpbmVSZXF1ZXN0LnRleHQgPSB2YWx1ZS50ZXh0O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCB0cmFuc2FjdGlvbkxpbmUoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5fdHJhbnNhY3Rpb25MaW5lO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2V0IGFydGljbGVSZWYodmFsdWU6IHN0cmluZykge1xyXG4gICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgIHRoaXMuX2FydGljbGVSZWYgPSB2YWx1ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgYXJ0aWNsZVJlZigpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuX2FydGljbGVSZWY7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZXQgZWRpdFRleHQodmFsdWU6IHN0cmluZykge1xyXG4gICAgdGhpcy5uZXcgPSB2YWx1ZSA9PT0gdW5kZWZpbmVkIHx8IHZhbHVlID09PSBudWxsO1xyXG4gICAgdGhpcy50cmFuc2FjdGlvbkFkZFRleHRMaW5lUmVxdWVzdC50ZXh0ID0gdmFsdWU7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZXQgYXJ0aWNsZUxpbmVOcih2YWx1ZTogbnVtYmVyKSB7XHJcbiAgICBpZiAodmFsdWUpIHtcclxuICAgICAgdGhpcy50cmFuc2FjdGlvbkFkZFRleHRMaW5lUmVxdWVzdC5yZWZBcnRpY2xlTGluZU5yID0gdmFsdWU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzaG93QXJ0aWNsZUltYWdlRGVzY3JpcHRpb246IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2hvd0ltYWdlOiBib29sZWFuID0gdHJ1ZTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIGNsb3NlQ2xpY2s6IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4oKTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIGNhbmNlbENsaWNrOiBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+KCk7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyBzYXZlQ2xpY2s6IEV2ZW50RW1pdHRlcjx7IHJlcXVlc3Q6IFRyYW5zYWN0aW9uQWRkVGV4dExpbmVSZXF1ZXN0LCBuZXc6IGJvb2xlYW4gfT4gPSBuZXcgRXZlbnRFbWl0dGVyPHsgcmVxdWVzdDogVHJhbnNhY3Rpb25BZGRUZXh0TGluZVJlcXVlc3QsIG5ldzogYm9vbGVhbiB9PigpO1xyXG5cclxuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5jby10cmFuc2FjdGlvbi1hcnRpY2xlLXRleHRcIilcclxuICBwdWJsaWMgc2hvd0NsYXNzKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcmVhZG9ubHkgaWNvbjogdHlwZW9mIEljb24gPSBJY29uO1xyXG4gIHByaXZhdGUgX3RyYW5zYWN0aW9uTGluZTogVHJhbnNhY3Rpb25MaW5lSW5mbztcclxuICBwdWJsaWMgc3RhbmRhcmRUZXh0czogU3RhbmRhcmRUZXh0W10gPSBbXTtcclxuICBwdWJsaWMgZG9jdW1lbnRzOiBhbnlbXSA9IFtdO1xyXG4gIHB1YmxpYyBzaG93T25Eb2N1bWVudHM6IG51bWJlcltdID0gW107XHJcbiAgcHVibGljIHNlbGVjdEFsbDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyBmaWVsZHM6IE9iamVjdCA9IHt0ZXh0OiBcImRlc2NyaXB0aW9uXCIsIHZhbHVlOiBcInRleHRJZFwifTtcclxuICBwdWJsaWMgZmllbGRzRG9jdW1lbnRzOiBPYmplY3QgPSB7dGV4dDogXCJkZXNjcmlwdGlvblwiLCB2YWx1ZTogXCJjb2RlXCJ9O1xyXG4gIHB1YmxpYyB0ZXh0QXJlYVBsYWNlaG9sZGVyOiBzdHJpbmcgPSB0aGlzLl9kaWN0aW9uYXJ5U2VydmljZS5nZXQoXCJUWVBFX1RFWFRcIiwgdHJ1ZSk7XHJcbiAgcHVibGljIG5ldzogYm9vbGVhbiA9IHRydWU7XHJcblxyXG4gIHB1YmxpYyB0cmFuc2FjdGlvbkFkZFRleHRMaW5lUmVxdWVzdDogVHJhbnNhY3Rpb25BZGRUZXh0TGluZVJlcXVlc3QgPSBuZXcgVHJhbnNhY3Rpb25BZGRUZXh0TGluZVJlcXVlc3QoKTtcclxuXHJcbiAgcHJpdmF0ZSBfYXJ0aWNsZVJlZjogc3RyaW5nO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyB0cmFuc2FjdGlvblNlcnZpY2U6IFRyYW5zYWN0aW9uU2VydmljZSxcclxuICAgIHB1YmxpYyBpY29uQ2FjaGVTZXJ2aWNlOiBJY29uQ2FjaGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfZGljdGlvbmFyeVNlcnZpY2U6IERpY3Rpb25hcnlTZXJ2aWNlXHJcbiAgKSB7XHJcbiAgfVxyXG5cclxuICBhc3luYyBuZ09uSW5pdCgpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIHRoaXMuc3RhbmRhcmRUZXh0cyA9IGF3YWl0IHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdldFN0YW5kYXJkVGV4dHMoXCJOTFwiKTtcclxuICAgIHRoaXMuZG9jdW1lbnRzID0gYXdhaXQgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UuZ2V0VGV4dFR5cGVzKFwiTkxcIik7XHJcbiAgICB0aGlzLl9zZXRTaG93T25Eb2N1bWVudHMoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvbk9rQ2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcclxuICAgIHRoaXMudHJhbnNhY3Rpb25BZGRUZXh0TGluZVJlcXVlc3QudHJhbnNhY3Rpb25VdWlkID0gdGhpcy50cmFuc2FjdGlvblV1aWQ7XHJcbiAgICB0aGlzLnRyYW5zYWN0aW9uQWRkVGV4dExpbmVSZXF1ZXN0LnNob3dPbkRvY3VtZW50cyA9IHRoaXMuX2dldFNob3dPbkRvY3VtZW50cygpO1xyXG4gICAgdGhpcy5zYXZlQ2xpY2submV4dCh7cmVxdWVzdDogdGhpcy50cmFuc2FjdGlvbkFkZFRleHRMaW5lUmVxdWVzdCwgbmV3OiB0aGlzLm5ld30pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uQ2FuY2VsQ2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcclxuICAgIHRoaXMuY2FuY2VsQ2xpY2submV4dChldmVudCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25TZWxlY3RTdGFuZGFyZFRleHQodmFsdWU6IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy50cmFuc2FjdGlvbkFkZFRleHRMaW5lUmVxdWVzdC50ZXh0ID0gKHRoaXMuc3RhbmRhcmRUZXh0cy5maW5kKHggPT4geC50ZXh0SWQgPT09IHZhbHVlKSkudGV4dDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVEb2N1bWVudHNDaGFuZ2UoY29kZXM6IG51bWJlcltdKTogdm9pZCB7XHJcbiAgICB0aGlzLnNob3dPbkRvY3VtZW50cyA9IGNvZGVzO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZVNlbGVjdEFsbChzZWxlY3Q6IGJvb2xlYW4pOiB2b2lkIHtcclxuICAgIGlmIChzZWxlY3QpIHtcclxuICAgICAgdGhpcy5zaG93T25Eb2N1bWVudHMgPSBbXTtcclxuICAgICAgdGhpcy5kb2N1bWVudHMuZm9yRWFjaChkID0+IHRoaXMuc2hvd09uRG9jdW1lbnRzLnB1c2goZC5jb2RlKSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnNob3dPbkRvY3VtZW50cyA9IFtdO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfc2V0U2hvd09uRG9jdW1lbnRzKCk6IHZvaWQge1xyXG4gICAgdGhpcy5zaG93T25Eb2N1bWVudHMubGVuZ3RoID0gMDtcclxuICAgIGlmICh0aGlzLnRyYW5zYWN0aW9uTGluZSAmJiAodGhpcy50cmFuc2FjdGlvbkxpbmUuc2hvd09uRG9jdW1lbnRzIHx8IHRoaXMudHJhbnNhY3Rpb25MaW5lLnNob3dPbkRvY3VtZW50cyA9PT0gMCkpIHtcclxuICAgICAgdGhpcy5kb2N1bWVudHMuZm9yRWFjaChkID0+IHtcclxuICAgICAgICBpZiAoZC5jb2RlICYgdGhpcy50cmFuc2FjdGlvbkxpbmUuc2hvd09uRG9jdW1lbnRzKSB7XHJcbiAgICAgICAgICB0aGlzLnNob3dPbkRvY3VtZW50cy5wdXNoKGQuY29kZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH0gZWxzZSB7IC8vIGNyZWF0aW5nIG5ldyB0ZXh0LCBjaGVjayBhbGwgZG9jdW1lbnRzXHJcbiAgICAgIHRoaXMuZG9jdW1lbnRzLmZvckVhY2goZCA9PiB0aGlzLnNob3dPbkRvY3VtZW50cy5wdXNoKGQuY29kZSkpO1xyXG4gICAgICB0aGlzLnNlbGVjdEFsbCA9IHRydWU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9nZXRTaG93T25Eb2N1bWVudHMoKTogbnVtYmVyIHtcclxuICAgIGxldCByZXN1bHQ6IG51bWJlciA9IDA7XHJcbiAgICB0aGlzLnNob3dPbkRvY3VtZW50cy5mb3JFYWNoKGQgPT4gcmVzdWx0ID0gcmVzdWx0ICsgZCk7XHJcbiAgICByZXR1cm4gcmVzdWx0O1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -4,7 +4,7 @@ import { CoreModule } from "../../core/core.module";
4
4
  import { TransactionLineDescriptionModule } from "../../transaction-line-fields/transaction-line-description.module";
5
5
  import { TransactionLineImageAndDescriptionModule } from "../../transaction-line-image-and-description/transaction-line-image-and-description.module";
6
6
  import { TransactionArticleTextComponent } from "./transaction-article-text.component";
7
- import { ButtonModule, CoDialogModule, DropDownModule, InputCheckboxModule, InputListboxModule, InputSearchModule } from "@colijnit/corecomponents_v12";
7
+ import { ButtonModule, CoDialogModule, DropDownModule, InputCheckboxModule, InputListboxModule, InputSearchModule, ListOfValuesModule } from "@colijnit/corecomponents_v12";
8
8
  import { FormsModule } from "@angular/forms";
9
9
  import { PipeModule } from "../../../pipe/pipe.module";
10
10
  export class TransactionArticleTextModule {
@@ -23,7 +23,8 @@ TransactionArticleTextModule.decorators = [
23
23
  PipeModule,
24
24
  InputSearchModule,
25
25
  TransactionLineImageAndDescriptionModule,
26
- TransactionLineDescriptionModule
26
+ TransactionLineDescriptionModule,
27
+ ListOfValuesModule
27
28
  ],
28
29
  declarations: [
29
30
  TransactionArticleTextComponent
@@ -33,4 +34,4 @@ TransactionArticleTextModule.decorators = [
33
34
  ]
34
35
  },] }
35
36
  ];
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tYXJ0aWNsZS10ZXh0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L3NoYXJlZC90cmFuc2FjdGlvbi1hcnRpY2xlLXRleHQvdHJhbnNhY3Rpb24tYXJ0aWNsZS10ZXh0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDbEQsT0FBTyxFQUFDLGdDQUFnQyxFQUFDLE1BQU0sbUVBQW1FLENBQUM7QUFDbkgsT0FBTyxFQUNMLHdDQUF3QyxFQUN6QyxNQUFNLDRGQUE0RixDQUFDO0FBQ3BHLE9BQU8sRUFBQywrQkFBK0IsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBQ3JGLE9BQU8sRUFDTCxZQUFZLEVBQ1osY0FBYyxFQUNkLGNBQWMsRUFDZCxtQkFBbUIsRUFDbkIsa0JBQWtCLEVBQ2xCLGlCQUFpQixFQUNsQixNQUFNLDhCQUE4QixDQUFDO0FBQ3RDLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUF3QnJELE1BQU0sT0FBTyw0QkFBNEI7OztZQXRCeEMsUUFBUSxTQUFDO2dCQUNSLE9BQU8sRUFBRTtvQkFDUCxZQUFZO29CQUNaLFVBQVU7b0JBQ1YsV0FBVztvQkFDWCxjQUFjO29CQUNkLG1CQUFtQjtvQkFDbkIsa0JBQWtCO29CQUNsQixjQUFjO29CQUNkLFlBQVk7b0JBQ1osVUFBVTtvQkFDVixpQkFBaUI7b0JBQ2pCLHdDQUF3QztvQkFDeEMsZ0NBQWdDO2lCQUNqQztnQkFDRCxZQUFZLEVBQUU7b0JBQ1osK0JBQStCO2lCQUNoQztnQkFDRCxPQUFPLEVBQUU7b0JBQ1AsK0JBQStCO2lCQUNoQzthQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcclxuaW1wb3J0IHtDb3JlTW9kdWxlfSBmcm9tIFwiLi4vLi4vY29yZS9jb3JlLm1vZHVsZVwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uTGluZURlc2NyaXB0aW9uTW9kdWxlfSBmcm9tIFwiLi4vLi4vdHJhbnNhY3Rpb24tbGluZS1maWVsZHMvdHJhbnNhY3Rpb24tbGluZS1kZXNjcmlwdGlvbi5tb2R1bGVcIjtcclxuaW1wb3J0IHtcclxuICBUcmFuc2FjdGlvbkxpbmVJbWFnZUFuZERlc2NyaXB0aW9uTW9kdWxlXHJcbn0gZnJvbSBcIi4uLy4uL3RyYW5zYWN0aW9uLWxpbmUtaW1hZ2UtYW5kLWRlc2NyaXB0aW9uL3RyYW5zYWN0aW9uLWxpbmUtaW1hZ2UtYW5kLWRlc2NyaXB0aW9uLm1vZHVsZVwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uQXJ0aWNsZVRleHRDb21wb25lbnR9IGZyb20gXCIuL3RyYW5zYWN0aW9uLWFydGljbGUtdGV4dC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHtcclxuICBCdXR0b25Nb2R1bGUsXHJcbiAgQ29EaWFsb2dNb2R1bGUsXHJcbiAgRHJvcERvd25Nb2R1bGUsXHJcbiAgSW5wdXRDaGVja2JveE1vZHVsZSxcclxuICBJbnB1dExpc3Rib3hNb2R1bGUsXHJcbiAgSW5wdXRTZWFyY2hNb2R1bGVcclxufSBmcm9tIFwiQGNvbGlqbml0L2NvcmVjb21wb25lbnRzX3YxMlwiO1xyXG5pbXBvcnQge0Zvcm1zTW9kdWxlfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuaW1wb3J0IHtQaXBlTW9kdWxlfSBmcm9tIFwiLi4vLi4vLi4vcGlwZS9waXBlLm1vZHVsZVwiO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBDb3JlTW9kdWxlLFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBDb0RpYWxvZ01vZHVsZSxcclxuICAgIElucHV0Q2hlY2tib3hNb2R1bGUsXHJcbiAgICBJbnB1dExpc3Rib3hNb2R1bGUsXHJcbiAgICBEcm9wRG93bk1vZHVsZSxcclxuICAgIEJ1dHRvbk1vZHVsZSxcclxuICAgIFBpcGVNb2R1bGUsXHJcbiAgICBJbnB1dFNlYXJjaE1vZHVsZSxcclxuICAgIFRyYW5zYWN0aW9uTGluZUltYWdlQW5kRGVzY3JpcHRpb25Nb2R1bGUsXHJcbiAgICBUcmFuc2FjdGlvbkxpbmVEZXNjcmlwdGlvbk1vZHVsZVxyXG4gIF0sXHJcbiAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICBUcmFuc2FjdGlvbkFydGljbGVUZXh0Q29tcG9uZW50XHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBUcmFuc2FjdGlvbkFydGljbGVUZXh0Q29tcG9uZW50XHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25BcnRpY2xlVGV4dE1vZHVsZSB7fVxyXG4iXX0=
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tYXJ0aWNsZS10ZXh0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L3NoYXJlZC90cmFuc2FjdGlvbi1hcnRpY2xlLXRleHQvdHJhbnNhY3Rpb24tYXJ0aWNsZS10ZXh0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDbEQsT0FBTyxFQUFDLGdDQUFnQyxFQUFDLE1BQU0sbUVBQW1FLENBQUM7QUFDbkgsT0FBTyxFQUNMLHdDQUF3QyxFQUN6QyxNQUFNLDRGQUE0RixDQUFDO0FBQ3BHLE9BQU8sRUFBQywrQkFBK0IsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBQ3JGLE9BQU8sRUFDSCxZQUFZLEVBQ1osY0FBYyxFQUNkLGNBQWMsRUFDZCxtQkFBbUIsRUFDbkIsa0JBQWtCLEVBQ2xCLGlCQUFpQixFQUFFLGtCQUFrQixFQUN4QyxNQUFNLDhCQUE4QixDQUFDO0FBQ3RDLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUF5QnJELE1BQU0sT0FBTyw0QkFBNEI7OztZQXZCeEMsUUFBUSxTQUFDO2dCQUNOLE9BQU8sRUFBRTtvQkFDTCxZQUFZO29CQUNaLFVBQVU7b0JBQ1YsV0FBVztvQkFDWCxjQUFjO29CQUNkLG1CQUFtQjtvQkFDbkIsa0JBQWtCO29CQUNsQixjQUFjO29CQUNkLFlBQVk7b0JBQ1osVUFBVTtvQkFDVixpQkFBaUI7b0JBQ2pCLHdDQUF3QztvQkFDeEMsZ0NBQWdDO29CQUNoQyxrQkFBa0I7aUJBQ3JCO2dCQUNILFlBQVksRUFBRTtvQkFDWiwrQkFBK0I7aUJBQ2hDO2dCQUNELE9BQU8sRUFBRTtvQkFDUCwrQkFBK0I7aUJBQ2hDO2FBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge05nTW9kdWxlfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xyXG5pbXBvcnQge0NvcmVNb2R1bGV9IGZyb20gXCIuLi8uLi9jb3JlL2NvcmUubW9kdWxlXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25MaW5lRGVzY3JpcHRpb25Nb2R1bGV9IGZyb20gXCIuLi8uLi90cmFuc2FjdGlvbi1saW5lLWZpZWxkcy90cmFuc2FjdGlvbi1saW5lLWRlc2NyaXB0aW9uLm1vZHVsZVwiO1xyXG5pbXBvcnQge1xyXG4gIFRyYW5zYWN0aW9uTGluZUltYWdlQW5kRGVzY3JpcHRpb25Nb2R1bGVcclxufSBmcm9tIFwiLi4vLi4vdHJhbnNhY3Rpb24tbGluZS1pbWFnZS1hbmQtZGVzY3JpcHRpb24vdHJhbnNhY3Rpb24tbGluZS1pbWFnZS1hbmQtZGVzY3JpcHRpb24ubW9kdWxlXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25BcnRpY2xlVGV4dENvbXBvbmVudH0gZnJvbSBcIi4vdHJhbnNhY3Rpb24tYXJ0aWNsZS10ZXh0LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge1xyXG4gICAgQnV0dG9uTW9kdWxlLFxyXG4gICAgQ29EaWFsb2dNb2R1bGUsXHJcbiAgICBEcm9wRG93bk1vZHVsZSxcclxuICAgIElucHV0Q2hlY2tib3hNb2R1bGUsXHJcbiAgICBJbnB1dExpc3Rib3hNb2R1bGUsXHJcbiAgICBJbnB1dFNlYXJjaE1vZHVsZSwgTGlzdE9mVmFsdWVzTW9kdWxlXHJcbn0gZnJvbSBcIkBjb2xpam5pdC9jb3JlY29tcG9uZW50c192MTJcIjtcclxuaW1wb3J0IHtGb3Jtc01vZHVsZX0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7UGlwZU1vZHVsZX0gZnJvbSBcIi4uLy4uLy4uL3BpcGUvcGlwZS5tb2R1bGVcIjtcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgICBpbXBvcnRzOiBbXHJcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgICAgIENvcmVNb2R1bGUsXHJcbiAgICAgICAgRm9ybXNNb2R1bGUsXHJcbiAgICAgICAgQ29EaWFsb2dNb2R1bGUsXHJcbiAgICAgICAgSW5wdXRDaGVja2JveE1vZHVsZSxcclxuICAgICAgICBJbnB1dExpc3Rib3hNb2R1bGUsXHJcbiAgICAgICAgRHJvcERvd25Nb2R1bGUsXHJcbiAgICAgICAgQnV0dG9uTW9kdWxlLFxyXG4gICAgICAgIFBpcGVNb2R1bGUsXHJcbiAgICAgICAgSW5wdXRTZWFyY2hNb2R1bGUsXHJcbiAgICAgICAgVHJhbnNhY3Rpb25MaW5lSW1hZ2VBbmREZXNjcmlwdGlvbk1vZHVsZSxcclxuICAgICAgICBUcmFuc2FjdGlvbkxpbmVEZXNjcmlwdGlvbk1vZHVsZSxcclxuICAgICAgICBMaXN0T2ZWYWx1ZXNNb2R1bGVcclxuICAgIF0sXHJcbiAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICBUcmFuc2FjdGlvbkFydGljbGVUZXh0Q29tcG9uZW50XHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBUcmFuc2FjdGlvbkFydGljbGVUZXh0Q29tcG9uZW50XHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25BcnRpY2xlVGV4dE1vZHVsZSB7fVxyXG4iXX0=
@@ -1,16 +1,16 @@
1
- import { Component, EventEmitter, HostBinding, Input, Output, ViewEncapsulation } from "@angular/core";
2
- import { TransactionEventService } from "../../../service/transaction-event.service";
3
- import { TransactionService } from "../../../service/transaction.service";
4
- import { TransactionLineInfo } from "@colijnit/transactionapi/build/model/transaction-line-info.bo";
5
- import { moveItemInArray } from "@angular/cdk/drag-drop";
6
- import { BusinessObjectFactory } from "@colijnit/ioneconnector/build/factory/business-object-factory";
1
+ import { __awaiter } from "tslib";
2
+ import { Component, EventEmitter, HostBinding, Input, Output, ViewEncapsulation } from '@angular/core';
3
+ import { TransactionEventService } from '../../../service/transaction-event.service';
4
+ import { TransactionService } from '../../../service/transaction.service';
5
+ import { TransactionLineInfo } from '@colijnit/transactionapi/build/model/transaction-line-info.bo';
6
+ import { moveItemInArray } from '@angular/cdk/drag-drop';
7
+ import { BusinessObjectFactory } from '@colijnit/ioneconnector/build/factory/business-object-factory';
7
8
  export class TransactionArticleTextOverviewComponent {
8
9
  constructor(service, _transactionEventService) {
9
10
  this.service = service;
10
11
  this._transactionEventService = _transactionEventService;
11
12
  this.closeClick = new EventEmitter();
12
13
  this.cancelClick = new EventEmitter();
13
- this.saveClick = new EventEmitter();
14
14
  this.collection = [];
15
15
  this.showTransactionArticleText = false;
16
16
  this.header = 'PRODUCT_RELATED_TEXTS';
@@ -24,11 +24,11 @@ export class TransactionArticleTextOverviewComponent {
24
24
  showClass() {
25
25
  return true;
26
26
  }
27
- onOkClick(event) {
28
- this.saveClick.next();
29
- }
30
27
  onCancelClick(event) {
31
- this.cancelClick.next(event);
28
+ return __awaiter(this, void 0, void 0, function* () {
29
+ yield this.service.rollback();
30
+ this.cancelClick.next(event);
31
+ });
32
32
  }
33
33
  handleCanDragDrop(drag, drop) {
34
34
  return drag.data instanceof TransactionLineInfo;
@@ -44,7 +44,10 @@ export class TransactionArticleTextOverviewComponent {
44
44
  const target = this.collection[to];
45
45
  // set items in correct order
46
46
  moveItemInArray(this.collection, from, to);
47
- this.service.changeLineSequence(beingDropped.uuid, from > to ? target.lineNr : null, from < to ? target.lineNr : null).catch(() => {
47
+ this.service.changeLineSequence(beingDropped.uuid, from > to ? target.lineNr : null, from < to ? target.lineNr : null)
48
+ .then(() => {
49
+ })
50
+ .catch(() => {
48
51
  // something went wrong, reset drop
49
52
  moveItemInArray(this.collection, to, from);
50
53
  });
@@ -62,6 +65,9 @@ export class TransactionArticleTextOverviewComponent {
62
65
  closeArticleText() {
63
66
  this._hideArticleTextDialog();
64
67
  }
68
+ handleSelect(index) {
69
+ this.selectedIndex = index;
70
+ }
65
71
  _hideArticleTextDialog() {
66
72
  this.showTransactionArticleText = false;
67
73
  }
@@ -75,7 +81,7 @@ TransactionArticleTextOverviewComponent.decorators = [
75
81
  { type: Component, args: [{
76
82
  selector: "co-transaction-article-text-overview",
77
83
  template: `
78
- <co-dialog (closeClick)="closeClick.emit($event)" [headerTemplate]="headerTemplate" [footerTemplate]="footerTemplate">
84
+ <co-dialog (closeClick)="onCancelClick($event)" [headerTemplate]="headerTemplate">
79
85
  <div class="article-text-content-wrapper">
80
86
  <div #dropList cdkDropList cdkDropListOrientation="vertical"
81
87
  class="article-text-drag-drop-list"
@@ -83,7 +89,8 @@ TransactionArticleTextOverviewComponent.decorators = [
83
89
  [cdkDropListEnterPredicate]="handleCanDragDrop"
84
90
  (cdkDropListDropped)="handleDrop($event)"
85
91
  >
86
- <div class="article-text-overview-article-text-wrapper" *ngFor="let transLine of collection; let index = index" cdkDrag (dblclick)="handleOpenArticleText(transLine)">
92
+ <div class="article-text-overview-article-text-wrapper" [class.selected]="selectedIndex === index" *ngFor="let transLine of collection; let index = index" cdkDrag
93
+ (dblclick)="handleOpenArticleText(transLine)" (click)="handleSelect(index)">
87
94
  <div class="index" [textContent]="index + 1"></div>
88
95
  <div class="text" [innerHTML]="transLine.text | safeHtml"></div>
89
96
  </div>
@@ -91,11 +98,6 @@ TransactionArticleTextOverviewComponent.decorators = [
91
98
  </div>
92
99
  </co-dialog>
93
100
  <ng-template #headerTemplate><span class="co-dialog-header-title" [textContent]="header | localize"></span></ng-template>
94
- <ng-template #footerTemplate>
95
- <div class="co-dialog-footer-button-wrapper">
96
- <co-button [label]="'OK' | localize" (click)="onOkClick($event)"></co-button>
97
- </div>
98
- </ng-template>
99
101
  `,
100
102
  encapsulation: ViewEncapsulation.None
101
103
  },] }
@@ -108,7 +110,6 @@ TransactionArticleTextOverviewComponent.propDecorators = {
108
110
  transactionLine: [{ type: Input }],
109
111
  closeClick: [{ type: Output }],
110
112
  cancelClick: [{ type: Output }],
111
- saveClick: [{ type: Output }],
112
113
  showClass: [{ type: HostBinding, args: ["class.co-transaction-article-text-overview",] }]
113
114
  };
114
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tYXJ0aWNsZS10ZXh0LW92ZXJ2aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L3NoYXJlZC90cmFuc2FjdGlvbi1hcnRpY2xlLXRleHQtb3ZlcnZpZXcvdHJhbnNhY3Rpb24tYXJ0aWNsZS10ZXh0LW92ZXJ2aWV3LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNyRyxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSw0Q0FBNEMsQ0FBQztBQUNuRixPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxzQ0FBc0MsQ0FBQztBQUN4RSxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSwrREFBK0QsQ0FBQztBQUVsRyxPQUFPLEVBQW9DLGVBQWUsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQzFGLE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLCtEQUErRCxDQUFDO0FBNkJwRyxNQUFNLE9BQU8sdUNBQXVDO0lBK0JsRCxZQUNTLE9BQTJCLEVBQzFCLHdCQUFpRDtRQURsRCxZQUFPLEdBQVAsT0FBTyxDQUFvQjtRQUMxQiw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQXlCO1FBdkJwRCxlQUFVLEdBQTZCLElBQUksWUFBWSxFQUFjLENBQUM7UUFHdEUsZ0JBQVcsR0FBNkIsSUFBSSxZQUFZLEVBQWMsQ0FBQztRQUd2RSxjQUFTLEdBQWdELElBQUksWUFBWSxFQUFpQyxDQUFDO1FBTzNHLGVBQVUsR0FBMEIsRUFBRSxDQUFDO1FBQ3ZDLCtCQUEwQixHQUFZLEtBQUssQ0FBQztRQUc1QyxXQUFNLEdBQVcsdUJBQXVCLENBQUM7UUFFeEMsZUFBVSxHQUEwQixJQUFJLHFCQUFxQixFQUFFLENBQUM7SUFNeEUsQ0FBQztJQWpDRCxJQUNXLGVBQWUsQ0FBQyxLQUEwQjtRQUNuRCxJQUFJLEtBQUssRUFBRTtZQUNULElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDbkM7SUFDSCxDQUFDO0lBWU0sU0FBUztRQUNkLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQWdCTSxTQUFTLENBQUMsS0FBaUI7UUFDaEMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRU0sYUFBYSxDQUFDLEtBQWlCO1FBQ3BDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFTSxpQkFBaUIsQ0FBQyxJQUFhLEVBQUUsSUFBaUI7UUFDdkQsT0FBTyxJQUFJLENBQUMsSUFBSSxZQUFZLG1CQUFtQixDQUFDO0lBQ2xELENBQUM7SUFFTSxVQUFVLENBQUMsS0FBeUM7UUFDekQsSUFBSTtZQUNGLE1BQU0sSUFBSSxHQUFXLEtBQUssQ0FBQyxhQUFhLENBQUM7WUFDekMsTUFBTSxFQUFFLEdBQVcsS0FBSyxDQUFDLFlBQVksQ0FBQztZQUN0QyxJQUFJLElBQUksS0FBSyxFQUFFLEVBQUU7Z0JBQ2YsT0FBTzthQUNSO1lBQ0QsTUFBTSxZQUFZLEdBQXdCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDaEUsTUFBTSxNQUFNLEdBQXdCLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDeEQsNkJBQTZCO1lBQzdCLGVBQWUsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQztZQUMzQyxJQUFJLENBQUMsT0FBTyxDQUFDLGtCQUFrQixDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsSUFBSSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLElBQUksR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUU7Z0JBQ2hJLG1DQUFtQztnQkFDbkMsZUFBZSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQzdDLENBQUMsQ0FBQyxDQUFDO1NBQ0o7UUFBQyxPQUFPLENBQUMsRUFBRTtZQUNWLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDbEI7SUFDSCxDQUFDO0lBRU0scUJBQXFCLENBQUMsU0FBOEI7UUFDekQsSUFBSSxDQUFDLFVBQVUsR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxtQkFBbUIsR0FBaUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxzQkFBc0IsQ0FBQyxtQkFBbUIsRUFBRSxTQUFTLENBQUMsQ0FBQztRQUNoSSxJQUFJLENBQUMsd0JBQXdCLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUU3RSxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRU0sZ0JBQWdCO1FBQ3JCLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFFTyxzQkFBc0I7UUFDNUIsSUFBSSxDQUFDLDBCQUEwQixHQUFHLEtBQUssQ0FBQztJQUMxQyxDQUFDO0lBRU8sZ0JBQWdCLENBQUMsSUFBWTtRQUNuQyxJQUFJLENBQUMsT0FBTyxDQUFDLHFDQUFxQyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQTRCLEVBQUUsRUFBRTtZQUM3RixJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztRQUMxQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OztZQXBIRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLHNDQUFzQztnQkFDaEQsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBc0JUO2dCQUNELGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2FBQ3RDOzs7WUFoQ08sa0JBQWtCO1lBRGxCLHVCQUF1Qjs7OzhCQW9DNUIsS0FBSzt5QkFPTCxNQUFNOzBCQUdOLE1BQU07d0JBR04sTUFBTTt3QkFHTixXQUFXLFNBQUMsNENBQTRDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIElucHV0LCBPdXRwdXQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi1ldmVudC5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25TZXJ2aWNlfSBmcm9tIFwiLi4vLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25MaW5lSW5mb30gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC90cmFuc2FjdGlvbi1saW5lLWluZm8uYm9cIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkFkZFRleHRMaW5lUmVxdWVzdH0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC90cmFuc2FjdGlvbi1hZGQtdGV4dC1saW5lLXJlcXVlc3QuYm9cIjtcclxuaW1wb3J0IHtDZGtEcmFnLCBDZGtEcmFnRHJvcCwgQ2RrRHJvcExpc3QsIG1vdmVJdGVtSW5BcnJheX0gZnJvbSBcIkBhbmd1bGFyL2Nkay9kcmFnLWRyb3BcIjtcclxuaW1wb3J0IHtCdXNpbmVzc09iamVjdEZhY3Rvcnl9IGZyb20gXCJAY29saWpuaXQvaW9uZWNvbm5lY3Rvci9idWlsZC9mYWN0b3J5L2J1c2luZXNzLW9iamVjdC1mYWN0b3J5XCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJjby10cmFuc2FjdGlvbi1hcnRpY2xlLXRleHQtb3ZlcnZpZXdcIixcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGNvLWRpYWxvZyAoY2xvc2VDbGljayk9XCJjbG9zZUNsaWNrLmVtaXQoJGV2ZW50KVwiIFtoZWFkZXJUZW1wbGF0ZV09XCJoZWFkZXJUZW1wbGF0ZVwiIFtmb290ZXJUZW1wbGF0ZV09XCJmb290ZXJUZW1wbGF0ZVwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiYXJ0aWNsZS10ZXh0LWNvbnRlbnQtd3JhcHBlclwiPlxyXG4gICAgICAgIDxkaXYgI2Ryb3BMaXN0IGNka0Ryb3BMaXN0IGNka0Ryb3BMaXN0T3JpZW50YXRpb249XCJ2ZXJ0aWNhbFwiXHJcbiAgICAgICAgICAgICBjbGFzcz1cImFydGljbGUtdGV4dC1kcmFnLWRyb3AtbGlzdFwiXHJcbiAgICAgICAgICAgICBbY2RrRHJvcExpc3REYXRhXT1cImNvbGxlY3Rpb25cIlxyXG4gICAgICAgICAgICAgW2Nka0Ryb3BMaXN0RW50ZXJQcmVkaWNhdGVdPVwiaGFuZGxlQ2FuRHJhZ0Ryb3BcIlxyXG4gICAgICAgICAgICAgKGNka0Ryb3BMaXN0RHJvcHBlZCk9XCJoYW5kbGVEcm9wKCRldmVudClcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJhcnRpY2xlLXRleHQtb3ZlcnZpZXctYXJ0aWNsZS10ZXh0LXdyYXBwZXJcIiAqbmdGb3I9XCJsZXQgdHJhbnNMaW5lIG9mIGNvbGxlY3Rpb247IGxldCBpbmRleCA9IGluZGV4XCIgY2RrRHJhZyAoZGJsY2xpY2spPVwiaGFuZGxlT3BlbkFydGljbGVUZXh0KHRyYW5zTGluZSlcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImluZGV4XCIgW3RleHRDb250ZW50XT1cImluZGV4ICsgMVwiPjwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dFwiIFtpbm5lckhUTUxdPVwidHJhbnNMaW5lLnRleHQgfCBzYWZlSHRtbFwiPjwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9jby1kaWFsb2c+XHJcbiAgICA8bmctdGVtcGxhdGUgI2hlYWRlclRlbXBsYXRlPjxzcGFuIGNsYXNzPVwiY28tZGlhbG9nLWhlYWRlci10aXRsZVwiIFt0ZXh0Q29udGVudF09XCJoZWFkZXIgfCBsb2NhbGl6ZVwiPjwvc3Bhbj48L25nLXRlbXBsYXRlPlxyXG4gICAgPG5nLXRlbXBsYXRlICNmb290ZXJUZW1wbGF0ZT5cclxuICAgICAgPGRpdiBjbGFzcz1cImNvLWRpYWxvZy1mb290ZXItYnV0dG9uLXdyYXBwZXJcIj5cclxuICAgICAgICA8Y28tYnV0dG9uIFtsYWJlbF09XCInT0snIHwgbG9jYWxpemVcIiAoY2xpY2spPVwib25Pa0NsaWNrKCRldmVudClcIj48L2NvLWJ1dHRvbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG4gIGAsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25BcnRpY2xlVGV4dE92ZXJ2aWV3Q29tcG9uZW50IHtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2V0IHRyYW5zYWN0aW9uTGluZSh2YWx1ZTogVHJhbnNhY3Rpb25MaW5lSW5mbykge1xyXG4gICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgIHRoaXMuX2dldEFydGljbGVUZXh0cyh2YWx1ZS51dWlkKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyBjbG9zZUNsaWNrOiBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+KCk7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyBjYW5jZWxDbGljazogRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50PigpO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgc2F2ZUNsaWNrOiBFdmVudEVtaXR0ZXI8VHJhbnNhY3Rpb25BZGRUZXh0TGluZVJlcXVlc3Q+ID0gbmV3IEV2ZW50RW1pdHRlcjxUcmFuc2FjdGlvbkFkZFRleHRMaW5lUmVxdWVzdD4oKTtcclxuXHJcbiAgQEhvc3RCaW5kaW5nKFwiY2xhc3MuY28tdHJhbnNhY3Rpb24tYXJ0aWNsZS10ZXh0LW92ZXJ2aWV3XCIpXHJcbiAgcHVibGljIHNob3dDbGFzcygpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNvbGxlY3Rpb246IFRyYW5zYWN0aW9uTGluZUluZm9bXSA9IFtdO1xyXG4gIHB1YmxpYyBzaG93VHJhbnNhY3Rpb25BcnRpY2xlVGV4dDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyBlZGl0VHJhbnNhY3Rpb25MaW5lOiBUcmFuc2FjdGlvbkxpbmVJbmZvO1xyXG4gIHB1YmxpYyB0ZXh0VG9FZGl0OiBzdHJpbmc7XHJcbiAgcHVibGljIGhlYWRlcjogc3RyaW5nID0gJ1BST0RVQ1RfUkVMQVRFRF9URVhUUyc7XHJcblxyXG4gIHByaXZhdGUgX2JvRmFjdG9yeTogQnVzaW5lc3NPYmplY3RGYWN0b3J5ID0gbmV3IEJ1c2luZXNzT2JqZWN0RmFjdG9yeSgpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyBzZXJ2aWNlOiBUcmFuc2FjdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF90cmFuc2FjdGlvbkV2ZW50U2VydmljZTogVHJhbnNhY3Rpb25FdmVudFNlcnZpY2UsXHJcbiAgKSB7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25Pa0NsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XHJcbiAgICB0aGlzLnNhdmVDbGljay5uZXh0KCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25DYW5jZWxDbGljayhldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xyXG4gICAgdGhpcy5jYW5jZWxDbGljay5uZXh0KGV2ZW50KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVDYW5EcmFnRHJvcChkcmFnOiBDZGtEcmFnLCBkcm9wOiBDZGtEcm9wTGlzdCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIGRyYWcuZGF0YSBpbnN0YW5jZW9mIFRyYW5zYWN0aW9uTGluZUluZm87XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlRHJvcChldmVudDogQ2RrRHJhZ0Ryb3A8VHJhbnNhY3Rpb25MaW5lSW5mb1tdPik6IHZvaWQge1xyXG4gICAgdHJ5IHtcclxuICAgICAgY29uc3QgZnJvbTogbnVtYmVyID0gZXZlbnQucHJldmlvdXNJbmRleDtcclxuICAgICAgY29uc3QgdG86IG51bWJlciA9IGV2ZW50LmN1cnJlbnRJbmRleDtcclxuICAgICAgaWYgKGZyb20gPT09IHRvKSB7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIGNvbnN0IGJlaW5nRHJvcHBlZDogVHJhbnNhY3Rpb25MaW5lSW5mbyA9IHRoaXMuY29sbGVjdGlvbltmcm9tXTtcclxuICAgICAgY29uc3QgdGFyZ2V0OiBUcmFuc2FjdGlvbkxpbmVJbmZvID0gdGhpcy5jb2xsZWN0aW9uW3RvXTtcclxuICAgICAgLy8gc2V0IGl0ZW1zIGluIGNvcnJlY3Qgb3JkZXJcclxuICAgICAgbW92ZUl0ZW1JbkFycmF5KHRoaXMuY29sbGVjdGlvbiwgZnJvbSwgdG8pO1xyXG4gICAgICB0aGlzLnNlcnZpY2UuY2hhbmdlTGluZVNlcXVlbmNlKGJlaW5nRHJvcHBlZC51dWlkLCBmcm9tID4gdG8gPyB0YXJnZXQubGluZU5yIDogbnVsbCwgZnJvbSA8IHRvID8gdGFyZ2V0LmxpbmVOciA6IG51bGwpLmNhdGNoKCgpID0+IHtcclxuICAgICAgICAvLyBzb21ldGhpbmcgd2VudCB3cm9uZywgcmVzZXQgZHJvcFxyXG4gICAgICAgIG1vdmVJdGVtSW5BcnJheSh0aGlzLmNvbGxlY3Rpb24sIHRvLCBmcm9tKTtcclxuICAgICAgfSk7XHJcbiAgICB9IGNhdGNoIChlKSB7XHJcbiAgICAgIGNvbnNvbGUuZXJyb3IoZSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlT3BlbkFydGljbGVUZXh0KHRyYW5zTGluZTogVHJhbnNhY3Rpb25MaW5lSW5mbyk6IHZvaWQge1xyXG4gICAgdGhpcy50ZXh0VG9FZGl0ID0gdHJhbnNMaW5lLnRleHQ7XHJcbiAgICB0aGlzLmVkaXRUcmFuc2FjdGlvbkxpbmUgPSA8VHJhbnNhY3Rpb25MaW5lSW5mbz48dW5rbm93bj50aGlzLl9ib0ZhY3RvcnkubWFrZVdpdGhSYXdCYWNrZW5kRGF0YShUcmFuc2FjdGlvbkxpbmVJbmZvLCB0cmFuc0xpbmUpO1xyXG4gICAgdGhpcy5fdHJhbnNhY3Rpb25FdmVudFNlcnZpY2UuZWRpdEFydGljbGVUZXh0Lm5leHQodGhpcy5lZGl0VHJhbnNhY3Rpb25MaW5lKTtcclxuXHJcbiAgICB0aGlzLmNsb3NlQXJ0aWNsZVRleHQoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjbG9zZUFydGljbGVUZXh0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5faGlkZUFydGljbGVUZXh0RGlhbG9nKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9oaWRlQXJ0aWNsZVRleHREaWFsb2coKTogdm9pZCB7XHJcbiAgICB0aGlzLnNob3dUcmFuc2FjdGlvbkFydGljbGVUZXh0ID0gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9nZXRBcnRpY2xlVGV4dHModXVpZDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICB0aGlzLnNlcnZpY2UuZ2V0QXJ0aWNsZUJvdW5kVGV4dExpbmVzT2ZBcnRpY2xlTGluZSh1dWlkKS50aGVuKCh0ZXh0czogVHJhbnNhY3Rpb25MaW5lSW5mb1tdKSA9PiB7XHJcbiAgICAgIHRoaXMuY29sbGVjdGlvbiA9IHRleHRzO1xyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
115
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tYXJ0aWNsZS10ZXh0LW92ZXJ2aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L3NoYXJlZC90cmFuc2FjdGlvbi1hcnRpY2xlLXRleHQtb3ZlcnZpZXcvdHJhbnNhY3Rpb24tYXJ0aWNsZS10ZXh0LW92ZXJ2aWV3LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDckcsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sNENBQTRDLENBQUM7QUFDbkYsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sc0NBQXNDLENBQUM7QUFDeEUsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sK0RBQStELENBQUM7QUFDbEcsT0FBTyxFQUFvQyxlQUFlLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUMxRixPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSwrREFBK0QsQ0FBQztBQXlCcEcsTUFBTSxPQUFPLHVDQUF1QztJQTZCbEQsWUFDUyxPQUEyQixFQUMxQix3QkFBaUQ7UUFEbEQsWUFBTyxHQUFQLE9BQU8sQ0FBb0I7UUFDMUIsNkJBQXdCLEdBQXhCLHdCQUF3QixDQUF5QjtRQXJCcEQsZUFBVSxHQUE2QixJQUFJLFlBQVksRUFBYyxDQUFDO1FBR3RFLGdCQUFXLEdBQTZCLElBQUksWUFBWSxFQUFjLENBQUM7UUFPdkUsZUFBVSxHQUEwQixFQUFFLENBQUM7UUFDdkMsK0JBQTBCLEdBQVksS0FBSyxDQUFDO1FBRzVDLFdBQU0sR0FBVyx1QkFBdUIsQ0FBQztRQUd4QyxlQUFVLEdBQTBCLElBQUkscUJBQXFCLEVBQUUsQ0FBQztJ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QztJQUNMLENBQUM7OztZQW5IRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLHNDQUFzQztnQkFDaEQsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FrQlQ7Z0JBQ0QsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7YUFDdEM7OztZQTNCTyxrQkFBa0I7WUFEbEIsdUJBQXVCOzs7OEJBK0I1QixLQUFLO3lCQU9MLE1BQU07MEJBR04sTUFBTTt3QkFHTixXQUFXLFNBQUMsNENBQTRDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIElucHV0LCBPdXRwdXQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkV2ZW50U2VydmljZX0gZnJvbSAnLi4vLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi1ldmVudC5zZXJ2aWNlJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvblNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24uc2VydmljZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25MaW5lSW5mb30gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3RyYW5zYWN0aW9uLWxpbmUtaW5mby5ibyc7XHJcbmltcG9ydCB7Q2RrRHJhZywgQ2RrRHJhZ0Ryb3AsIENka0Ryb3BMaXN0LCBtb3ZlSXRlbUluQXJyYXl9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xyXG5pbXBvcnQge0J1c2luZXNzT2JqZWN0RmFjdG9yeX0gZnJvbSAnQGNvbGlqbml0L2lvbmVjb25uZWN0b3IvYnVpbGQvZmFjdG9yeS9idXNpbmVzcy1vYmplY3QtZmFjdG9yeSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJjby10cmFuc2FjdGlvbi1hcnRpY2xlLXRleHQtb3ZlcnZpZXdcIixcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGNvLWRpYWxvZyAoY2xvc2VDbGljayk9XCJvbkNhbmNlbENsaWNrKCRldmVudClcIiBbaGVhZGVyVGVtcGxhdGVdPVwiaGVhZGVyVGVtcGxhdGVcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImFydGljbGUtdGV4dC1jb250ZW50LXdyYXBwZXJcIj5cclxuICAgICAgICA8ZGl2ICNkcm9wTGlzdCBjZGtEcm9wTGlzdCBjZGtEcm9wTGlzdE9yaWVudGF0aW9uPVwidmVydGljYWxcIlxyXG4gICAgICAgICAgICAgY2xhc3M9XCJhcnRpY2xlLXRleHQtZHJhZy1kcm9wLWxpc3RcIlxyXG4gICAgICAgICAgICAgW2Nka0Ryb3BMaXN0RGF0YV09XCJjb2xsZWN0aW9uXCJcclxuICAgICAgICAgICAgIFtjZGtEcm9wTGlzdEVudGVyUHJlZGljYXRlXT1cImhhbmRsZUNhbkRyYWdEcm9wXCJcclxuICAgICAgICAgICAgIChjZGtEcm9wTGlzdERyb3BwZWQpPVwiaGFuZGxlRHJvcCgkZXZlbnQpXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXJ0aWNsZS10ZXh0LW92ZXJ2aWV3LWFydGljbGUtdGV4dC13cmFwcGVyXCIgW2NsYXNzLnNlbGVjdGVkXT1cInNlbGVjdGVkSW5kZXggPT09IGluZGV4XCIgKm5nRm9yPVwibGV0IHRyYW5zTGluZSBvZiBjb2xsZWN0aW9uOyBsZXQgaW5kZXggPSBpbmRleFwiIGNka0RyYWcgXHJcbiAgICAgICAgICAgICAgIChkYmxjbGljayk9XCJoYW5kbGVPcGVuQXJ0aWNsZVRleHQodHJhbnNMaW5lKVwiIChjbGljayk9XCJoYW5kbGVTZWxlY3QoaW5kZXgpXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbmRleFwiIFt0ZXh0Q29udGVudF09XCJpbmRleCArIDFcIj48L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRleHRcIiBbaW5uZXJIVE1MXT1cInRyYW5zTGluZS50ZXh0IHwgc2FmZUh0bWxcIj48L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvY28tZGlhbG9nPlxyXG4gICAgPG5nLXRlbXBsYXRlICNoZWFkZXJUZW1wbGF0ZT48c3BhbiBjbGFzcz1cImNvLWRpYWxvZy1oZWFkZXItdGl0bGVcIiBbdGV4dENvbnRlbnRdPVwiaGVhZGVyIHwgbG9jYWxpemVcIj48L3NwYW4+PC9uZy10ZW1wbGF0ZT5cclxuICBgLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uQXJ0aWNsZVRleHRPdmVydmlld0NvbXBvbmVudCB7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNldCB0cmFuc2FjdGlvbkxpbmUodmFsdWU6IFRyYW5zYWN0aW9uTGluZUluZm8pIHtcclxuICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICB0aGlzLl9nZXRBcnRpY2xlVGV4dHModmFsdWUudXVpZCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgY2xvc2VDbGljazogRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50PigpO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgY2FuY2VsQ2xpY2s6IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4oKTtcclxuXHJcbiAgQEhvc3RCaW5kaW5nKFwiY2xhc3MuY28tdHJhbnNhY3Rpb24tYXJ0aWNsZS10ZXh0LW92ZXJ2aWV3XCIpXHJcbiAgcHVibGljIHNob3dDbGFzcygpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNvbGxlY3Rpb246IFRyYW5zYWN0aW9uTGluZUluZm9bXSA9IFtdO1xyXG4gIHB1YmxpYyBzaG93VHJhbnNhY3Rpb25BcnRpY2xlVGV4dDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyBlZGl0VHJhbnNhY3Rpb25MaW5lOiBUcmFuc2FjdGlvbkxpbmVJbmZvO1xyXG4gIHB1YmxpYyB0ZXh0VG9FZGl0OiBzdHJpbmc7XHJcbiAgcHVibGljIGhlYWRlcjogc3RyaW5nID0gJ1BST0RVQ1RfUkVMQVRFRF9URVhUUyc7XHJcbiAgcHVibGljIHNlbGVjdGVkSW5kZXg6IG51bWJlcjtcclxuXHJcbiAgcHJpdmF0ZSBfYm9GYWN0b3J5OiBCdXNpbmVzc09iamVjdEZhY3RvcnkgPSBuZXcgQnVzaW5lc3NPYmplY3RGYWN0b3J5KCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIHNlcnZpY2U6IFRyYW5zYWN0aW9uU2VydmljZSxcclxuICAgIHByaXZhdGUgX3RyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlOiBUcmFuc2FjdGlvbkV2ZW50U2VydmljZSxcclxuICApIHtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBvbkNhbmNlbENsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBhd2FpdCB0aGlzLnNlcnZpY2Uucm9sbGJhY2soKTtcclxuICAgIHRoaXMuY2FuY2VsQ2xpY2submV4dChldmVudCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlQ2FuRHJhZ0Ryb3AoZHJhZzogQ2RrRHJhZywgZHJvcDogQ2RrRHJvcExpc3QpOiBib29sZWFuIHtcclxuICAgIHJldHVybiBkcmFnLmRhdGEgaW5zdGFuY2VvZiBUcmFuc2FjdGlvbkxpbmVJbmZvO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZURyb3AoZXZlbnQ6IENka0RyYWdEcm9wPFRyYW5zYWN0aW9uTGluZUluZm9bXT4pOiB2b2lkIHtcclxuICAgIHRyeSB7XHJcbiAgICAgIGNvbnN0IGZyb206IG51bWJlciA9IGV2ZW50LnByZXZpb3VzSW5kZXg7XHJcbiAgICAgIGNvbnN0IHRvOiBudW1iZXIgPSBldmVudC5jdXJyZW50SW5kZXg7XHJcbiAgICAgIGlmIChmcm9tID09PSB0bykge1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG4gICAgICBjb25zdCBiZWluZ0Ryb3BwZWQ6IFRyYW5zYWN0aW9uTGluZUluZm8gPSB0aGlzLmNvbGxlY3Rpb25bZnJvbV07XHJcbiAgICAgIGNvbnN0IHRhcmdldDogVHJhbnNhY3Rpb25MaW5lSW5mbyA9IHRoaXMuY29sbGVjdGlvblt0b107XHJcbiAgICAgIC8vIHNldCBpdGVtcyBpbiBjb3JyZWN0IG9yZGVyXHJcbiAgICAgIG1vdmVJdGVtSW5BcnJheSh0aGlzLmNvbGxlY3Rpb24sIGZyb20sIHRvKTtcclxuICAgICAgdGhpcy5zZXJ2aWNlLmNoYW5nZUxpbmVTZXF1ZW5jZShiZWluZ0Ryb3BwZWQudXVpZCwgZnJvbSA+IHRvID8gdGFyZ2V0LmxpbmVOciA6IG51bGwsIGZyb20gPCB0byA/IHRhcmdldC5saW5lTnIgOiBudWxsKVxyXG4gICAgICAgICAgLnRoZW4oKCkgPT4ge1xyXG5cclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgICAuY2F0Y2goKCkgPT4ge1xyXG4gICAgICAgICAgICAvLyBzb21ldGhpbmcgd2VudCB3cm9uZywgcmVzZXQgZHJvcFxyXG4gICAgICAgICAgICBtb3ZlSXRlbUluQXJyYXkodGhpcy5jb2xsZWN0aW9uLCB0bywgZnJvbSk7XHJcbiAgICAgICAgICB9KTtcclxuICAgIH0gY2F0Y2ggKGUpIHtcclxuICAgICAgY29uc29sZS5lcnJvcihlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVPcGVuQXJ0aWNsZVRleHQodHJhbnNMaW5lOiBUcmFuc2FjdGlvbkxpbmVJbmZvKTogdm9pZCB7XHJcbiAgICB0aGlzLnRleHRUb0VkaXQgPSB0cmFuc0xpbmUudGV4dDtcclxuICAgIHRoaXMuZWRpdFRyYW5zYWN0aW9uTGluZSA9IDxUcmFuc2FjdGlvbkxpbmVJbmZvPjx1bmtub3duPnRoaXMuX2JvRmFjdG9yeS5tYWtlV2l0aFJhd0JhY2tlbmREYXRhKFRyYW5zYWN0aW9uTGluZUluZm8sIHRyYW5zTGluZSk7XHJcbiAgICB0aGlzLl90cmFuc2FjdGlvbkV2ZW50U2VydmljZS5lZGl0QXJ0aWNsZVRleHQubmV4dCh0aGlzLmVkaXRUcmFuc2FjdGlvbkxpbmUpO1xyXG5cclxuICAgIHRoaXMuY2xvc2VBcnRpY2xlVGV4dCgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNsb3NlQXJ0aWNsZVRleHQoKTogdm9pZCB7XHJcbiAgICB0aGlzLl9oaWRlQXJ0aWNsZVRleHREaWFsb2coKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVTZWxlY3QoaW5kZXg6IG51bWJlcik6IHZvaWQge1xyXG4gICAgdGhpcy5zZWxlY3RlZEluZGV4ID0gaW5kZXg7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9oaWRlQXJ0aWNsZVRleHREaWFsb2coKTogdm9pZCB7XHJcbiAgICB0aGlzLnNob3dUcmFuc2FjdGlvbkFydGljbGVUZXh0ID0gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9nZXRBcnRpY2xlVGV4dHModXVpZDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICB0aGlzLnNlcnZpY2UuZ2V0QXJ0aWNsZUJvdW5kVGV4dExpbmVzT2ZBcnRpY2xlTGluZSh1dWlkKS50aGVuKCh0ZXh0czogVHJhbnNhY3Rpb25MaW5lSW5mb1tdKSA9PiB7XHJcbiAgICAgIHRoaXMuY29sbGVjdGlvbiA9IHRleHRzO1xyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==