@colijnit/sharedcomponents 1.0.12 → 1.0.15

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 (49) hide show
  1. package/README.md +24 -24
  2. package/bundles/colijnit-sharedcomponents.umd.js +716 -146
  3. package/bundles/colijnit-sharedcomponents.umd.js.map +1 -1
  4. package/colijnit-sharedcomponents.d.ts +1 -0
  5. package/colijnit-sharedcomponents.metadata.json +1 -1
  6. package/esm2015/colijnit-sharedcomponents.js +2 -1
  7. package/esm2015/lib/components/key-pad/key-pad.component.js +191 -0
  8. package/esm2015/lib/components/key-pad/key-pad.module.js +21 -0
  9. package/esm2015/lib/components/send-method-dialog/send-method-dialog.component.js +14 -7
  10. package/esm2015/lib/components/stock/stock-information/stock-information.component.js +6 -7
  11. package/esm2015/lib/components/stock/stock-information-grid/stock-information-grid.component.js +137 -56
  12. package/esm2015/lib/components/stock/stock-location/stock-location.component.js +7 -13
  13. package/esm2015/lib/components/stock/stock-transfer/stock-change-amount.component.js +68 -0
  14. package/esm2015/lib/components/stock/stock-transfer/stock-transfer.component.js +52 -20
  15. package/esm2015/lib/components/stock/stock.component.js +29 -24
  16. package/esm2015/lib/components/stock/stock.module.js +9 -4
  17. package/esm2015/lib/enum/icon.enum.js +2 -11
  18. package/esm2015/lib/enum/keyboard-code.enum.js +32 -0
  19. package/esm2015/lib/model/icon-svg.js +3 -12
  20. package/esm2015/lib/service/ione-connector-adapter.service.js +115 -28
  21. package/esm2015/lib/service/stock.service.js +48 -10
  22. package/esm2015/public-api.js +3 -1
  23. package/fesm2015/colijnit-sharedcomponents.js +713 -185
  24. package/fesm2015/colijnit-sharedcomponents.js.map +1 -1
  25. package/lib/components/docsign/style/material.scss +0 -1
  26. package/lib/components/key-pad/key-pad.component.d.ts +36 -0
  27. package/lib/components/key-pad/key-pad.module.d.ts +2 -0
  28. package/lib/components/key-pad/style/_layout.scss +104 -0
  29. package/lib/components/key-pad/style/_material-definition.scss +17 -0
  30. package/lib/components/key-pad/style/_theme.scss +35 -0
  31. package/lib/components/key-pad/style/material.scss +4 -0
  32. package/lib/components/send-method-dialog/send-method-dialog.component.d.ts +8 -4
  33. package/lib/components/send-method-dialog/style/material.scss +0 -1
  34. package/lib/components/stock/stock-information/stock-information.component.d.ts +2 -3
  35. package/lib/components/stock/stock-information-grid/stock-information-grid.component.d.ts +23 -10
  36. package/lib/components/stock/stock-location/stock-location.component.d.ts +4 -5
  37. package/lib/components/stock/stock-transfer/stock-change-amount.component.d.ts +18 -0
  38. package/lib/components/stock/stock-transfer/stock-transfer.component.d.ts +18 -3
  39. package/lib/components/stock/stock.component.d.ts +11 -9
  40. package/lib/components/stock/style/_layout.scss +4 -30
  41. package/lib/components/stock/style/material.scss +0 -1
  42. package/lib/enum/icon.enum.d.ts +1 -10
  43. package/lib/enum/keyboard-code.enum.d.ts +30 -0
  44. package/lib/service/ione-connector-adapter.service.d.ts +19 -6
  45. package/lib/service/stock.service.d.ts +18 -3
  46. package/lib/style/_variables.scss +3 -13
  47. package/lib/style/sharedcomponents-globals.scss +12 -0
  48. package/package.json +1 -1
  49. package/public-api.d.ts +2 -0
@@ -5,32 +5,24 @@ import { IconCacheService } from "../../../service/icon-cache.service";
5
5
  import { Icon } from "../../../enum/icon.enum";
6
6
  import { ArticleStock } from "@colijnit/articleapi/build/model/article-stock";
7
7
  import { PrintStockStickers } from "@colijnit/sharedapi/build/model/print-stock-stickers";
8
+ import { ArticleStockManagement } from "@colijnit/articleapi/build/model/article-stock-management";
9
+ import { GetStockHistoryRequest } from "@colijnit/articleapi/build/model/get-stock-history-request";
8
10
  export class StockInformationGridComponent {
9
11
  constructor(iconCacheService, _stockService) {
10
12
  this.iconCacheService = iconCacheService;
11
13
  this._stockService = _stockService;
12
14
  this.icons = Icon;
13
- this.locationLineClicked = new EventEmitter();
14
15
  this.transferIconClicked = new EventEmitter();
16
+ this.historyClicked = new EventEmitter();
15
17
  this.show = false;
16
18
  this.hideOrShowLocationTab = false;
17
19
  this.showStockHistory = false;
18
20
  this.showSendMethodDialog = false;
19
- this.data = [
20
- { test: "test" }
21
- ];
22
- this.inOrderInformation = [
23
- { inOrder: "275432", customer: "Test customer", orderDate: "date", orderAmount: "2", warehouseNumber: "8", warehouseDescription: "A nice warehouse", amountInStock: "17", commission: "4014321" },
24
- { inOrder: "275432", customer: "Test customer", orderDate: "date", orderAmount: "2", warehouseNumber: "8", warehouseDescription: "A nice warehouse", amountInStock: "17", commission: "4014321" },
25
- { inOrder: "275432", customer: "Test customer", orderDate: "date", orderAmount: "2", warehouseNumber: "8", warehouseDescription: "A nice warehouse", amountInStock: "17", commission: "4014321" },
26
- { inOrder: "275432", customer: "Test customer", orderDate: "date", orderAmount: "2", warehouseNumber: "8", warehouseDescription: "A nice warehouse", amountInStock: "17", commission: "4014321" },
27
- { inOrder: "275432", customer: "Test customer", orderDate: "date", orderAmount: "2", warehouseNumber: "8", warehouseDescription: "A nice warehouse", amountInStock: "17", commission: "4014321" },
28
- ];
29
- this.orderInformation = [];
30
21
  this.hideOrShowTabs = true;
31
- this.dataWareHouseCode = 0;
32
- this.dataWareHouseFields = { text: "warehouseDescription", value: "warehouseNumber" };
22
+ this.dataWareHouseFields = { text: "warehouseDescription", value: "warehouseNo" };
33
23
  this.articleStockSearchInfo = new ArticleStock();
24
+ this.showChangeStockDetails = false;
25
+ this.articleDetailsInformation = new ArticleStockManagement();
34
26
  this.tabs = [
35
27
  "STOCK",
36
28
  "IN_ORDER2",
@@ -51,25 +43,38 @@ export class StockInformationGridComponent {
51
43
  }
52
44
  }
53
45
  handleTabClick(tabData) {
46
+ console.log(tabData);
54
47
  this.activeTab = tabData;
48
+ if (this.activeTab === "IN_ORDER2") {
49
+ this.getInOrderData();
50
+ }
51
+ if (this.activeTab === "ORDERS1") {
52
+ this.getOrderData();
53
+ }
55
54
  }
56
55
  onLocationClick(data) {
57
56
  this.articleStockSearchInfo.goodId = data.goodId.toString();
58
57
  this.articleStockSearchInfo.wareHouseNo = data.warehouseNo.toString();
59
58
  this.articleStockSearchInfo.viewKind = "D";
60
- this.locationLineClicked.emit(this.articleStockSearchInfo);
59
+ if (!this.dataWareHouseCode) {
60
+ this.getStockManagementWarehouses(data);
61
+ }
62
+ this.getArticleDetails(data);
61
63
  this.hideOrShowTabs = false;
62
64
  this.hideOrShowLocationTab = true;
63
- }
64
- onPopupClose() {
65
- this.show = false;
65
+ console.log(this.articleDetailsInformation);
66
+ this._stockService.lockArticleDetails(this.articleDetailsInformation);
66
67
  }
67
68
  handleHistoryClick() {
68
- // console.warn('Not yet implemented');
69
- // this.showStockHistory = true;
69
+ this.historyClicked.emit();
70
+ this.hideOrShowLocationTab = false;
71
+ this.showChangeStockDetails = false;
72
+ this.hideOrShowTabs = false;
73
+ this.showStockHistory = true;
70
74
  }
71
- handleCloseClick() {
72
- this.onPopupClose();
75
+ backToStockInformation() {
76
+ this.showStockHistory = false;
77
+ this.hideOrShowTabs = true;
73
78
  }
74
79
  handleStockTransferClick(event) {
75
80
  this.transferIconClicked.emit(event);
@@ -87,12 +92,58 @@ export class StockInformationGridComponent {
87
92
  printStockStickers() {
88
93
  this.printSticker = new PrintStockStickers();
89
94
  this.printSticker.goodId = 10;
90
- this._stockService.getPrintStockStickers(this.printSticker);
95
+ // this._stockService.getPrintStockStickers(this.printSticker);
91
96
  }
92
97
  onOkClick() {
93
98
  }
94
99
  onCancelClick() {
95
100
  }
101
+ openDialogClick(data) {
102
+ this.selectedArticleDetailsData = data;
103
+ this.showChangeStockDetails = true;
104
+ }
105
+ getArticleDetails(data) {
106
+ // const info = new ArticleStockManagement();
107
+ this.articleDetailsInformation.goodId = data.goodId;
108
+ this.articleDetailsInformation.lineId = data.lineId;
109
+ this.articleDetailsInformation.warehouseNumber = data.warehouseNo;
110
+ this._stockService.getArticleDetails(this.articleDetailsInformation).then((details) => {
111
+ this.articleDetails = details;
112
+ });
113
+ }
114
+ getStockManagementWarehouses(data) {
115
+ this._stockService.getStockManagementWarehouses().then((warehouses) => {
116
+ this.dataWareHouseCode = warehouses;
117
+ this.selectedWarehouse = data.warehouseNo;
118
+ });
119
+ }
120
+ onSelectWarehouse(event) {
121
+ this.articleDetailsInformation.warehouseNumber = event;
122
+ console.log(event);
123
+ if (this.dataWareHouseCode != null) {
124
+ this._stockService.getArticleDetails(this.articleDetailsInformation).then((details) => {
125
+ this.articleDetails = details;
126
+ });
127
+ }
128
+ }
129
+ getInOrderData() {
130
+ return __awaiter(this, void 0, void 0, function* () {
131
+ const inOrderData = new GetStockHistoryRequest();
132
+ inOrderData.type = "O";
133
+ inOrderData.goodId = this.articleStockInformation[0].goodId.toString();
134
+ // inOrderData.wareHouseNr = Number(this.articleStockInformation[0].warehouseNo);
135
+ this.inOrderInformation = yield this._stockService.getStockHistory(inOrderData);
136
+ });
137
+ }
138
+ getOrderData() {
139
+ return __awaiter(this, void 0, void 0, function* () {
140
+ const inOrderData = new GetStockHistoryRequest();
141
+ inOrderData.type = "B";
142
+ inOrderData.goodId = this.articleStockInformation[0].goodId.toString();
143
+ // inOrderData.wareHouseNr = Number(this.articleStockInformation[0].warehouseNo);
144
+ this.orderInformation = yield this._stockService.getStockHistory(inOrderData);
145
+ });
146
+ }
96
147
  }
97
148
  StockInformationGridComponent.decorators = [
98
149
  { type: Component, args: [{
@@ -116,14 +167,14 @@ StockInformationGridComponent.decorators = [
116
167
  <co-simple-grid *ngIf="activeTab === tabs[0] && hideOrShowTabs"
117
168
  [data]="articleStockInformation"
118
169
  >
119
- <co-simple-grid-column [headerText]="'WAREHOUSE'" [field]="'warehouseNo'"></co-simple-grid-column>
120
- <co-simple-grid-column [headerText]="'DESCRIPTION'" [field]="'warehouseName'"></co-simple-grid-column>
121
- <co-simple-grid-column [headerText]="'STOCK'" [field]="'technicalStock'"></co-simple-grid-column>
122
- <co-simple-grid-column [headerText]="'AVAILABLE_STOCK'" [field]="'availableStock'"></co-simple-grid-column>
123
- <co-simple-grid-column [headerText]="'ECONOMICAL_STOCK'" [field]="'economicalStock'"></co-simple-grid-column>
124
- <co-simple-grid-column [headerText]="'LOCATION'" [field]="'locationNo'">
170
+ <co-simple-grid-column [headerText]="'WAREHOUSE'" [field]="'warehouseNo'" [order]="10"></co-simple-grid-column>
171
+ <co-simple-grid-column [headerText]="'DESCRIPTION'" [field]="'warehouseName'" [order]="11"></co-simple-grid-column>
172
+ <co-simple-grid-column [headerText]="'STOCK'" [field]="'technicalStock'" [order]="12"></co-simple-grid-column>
173
+ <co-simple-grid-column [headerText]="'AVAILABLE_STOCK'" [field]="'availableStock'" [order]="13"></co-simple-grid-column>
174
+ <co-simple-grid-column [headerText]="'ECONOMICAL_STOCK'" [field]="'economicalStock'" [order]="14"></co-simple-grid-column>
175
+ <co-simple-grid-column [headerText]="'LOCATION'" [field]="'locationNo'" [order]="15">
125
176
  <ng-template #template let-row="row">
126
- <span [textContent]="'bekijken'" (click)="onLocationClick(row)"></span>
177
+ <span [textContent]="'Bekijken'" (click)="onLocationClick(row)"></span>
127
178
  </ng-template>
128
179
  </co-simple-grid-column>
129
180
  </co-simple-grid>
@@ -131,12 +182,12 @@ StockInformationGridComponent.decorators = [
131
182
  <co-simple-grid *ngIf="activeTab === tabs[1]"
132
183
  [data]="inOrderInformation"
133
184
  >
134
- <co-simple-grid-column [headerText]="'IN_ORDER2'" [field]="'inOrder'"></co-simple-grid-column>
135
- <co-simple-grid-column [headerText]="'CUSTOMER'" [field]="'customer'"></co-simple-grid-column>
136
- <co-simple-grid-column [headerText]="'DATE'" [field]="'orderDate'"></co-simple-grid-column>
137
- <co-simple-grid-column [headerText]="'AMOUNT'" [field]="'orderAmount'"></co-simple-grid-column>
138
- <co-simple-grid-column [headerText]="'WAREHOUSE'" [field]="'warehouseNumber'"></co-simple-grid-column>
139
- <co-simple-grid-column [headerText]="'DESCRIPTION'" [field]="'warehouseDescription'"></co-simple-grid-column>
185
+ <co-simple-grid-column [headerText]="'IN_ORDER2'" [field]="'amount'"></co-simple-grid-column>
186
+ <co-simple-grid-column [headerText]="'CUSTOMER'" [field]="'user'"></co-simple-grid-column>
187
+ <co-simple-grid-column [headerText]="'DATE'" [field]="'mutationDate'"></co-simple-grid-column>
188
+ <co-simple-grid-column [headerText]="'AMOUNT'" [field]="'amount'"></co-simple-grid-column>
189
+ <co-simple-grid-column [headerText]="'WAREHOUSE'" [field]="'wareHouseNr'"></co-simple-grid-column>
190
+ <co-simple-grid-column [headerText]="'DESCRIPTION'" [field]="'locationNr'"></co-simple-grid-column>
140
191
  <co-simple-grid-column [headerText]="'STOCK'" [field]="'amountInStock'"></co-simple-grid-column>
141
192
  <co-simple-grid-column [headerText]="'COMMISSION2'" [field]="'commission'"></co-simple-grid-column>
142
193
  <co-simple-grid-column [headerText]="'TRANSFER'" [field]="'transfer'">
@@ -154,9 +205,9 @@ StockInformationGridComponent.decorators = [
154
205
  <co-simple-grid *ngIf="activeTab === tabs[2]"
155
206
  [data]="orderInformation"
156
207
  >
157
- <co-simple-grid-column [headerText]="'PURCHASE_ORDER_NR'" [field]="'purchaseOrderNo'"></co-simple-grid-column>
158
- <co-simple-grid-column [headerText]="'DATE'" [field]="'orderDate'"></co-simple-grid-column>
159
- <co-simple-grid-column [headerText]="'AMOUNT'" [field]="'orderAmount'"></co-simple-grid-column>
208
+ <co-simple-grid-column [headerText]="'PURCHASE_ORDER_NR'" [field]="'seriesNr'"></co-simple-grid-column>
209
+ <co-simple-grid-column [headerText]="'DATE'" [field]="'mutationDate'"></co-simple-grid-column>
210
+ <co-simple-grid-column [headerText]="'AMOUNT'" [field]="'amount'"></co-simple-grid-column>
160
211
  <co-simple-grid-column [headerText]="'RESERVED'" [field]="'reserved'"></co-simple-grid-column>
161
212
  <co-simple-grid-column [headerText]="'FREE_STOCK'" [field]="'freeStock'"></co-simple-grid-column>
162
213
  <co-simple-grid-column [headerText]="'DELIVERY_DATE1'" [field]="'deliveryDate'"></co-simple-grid-column>
@@ -170,28 +221,40 @@ StockInformationGridComponent.decorators = [
170
221
  <span class="stock-button-back" [textContent]="'BACK_TO_STOCK_LINES'" (click)="handleBackToStockClick()"></span>
171
222
  </div>
172
223
  <div class="stock-location-right-group">
173
- <co-input-combo-box [(model)]="dataWareHouseCode"
224
+ <co-drop-down-list [(model)]="selectedWarehouse"
225
+ [collection]="dataWareHouseCode"
174
226
  [fields]="dataWareHouseFields"
175
227
  [placeholder]="'WAREHOUSE'"
228
+ (modelChange)="onSelectWarehouse($event)"
176
229
  [required]="true"
177
- ></co-input-combo-box>
230
+ ></co-drop-down-list>
178
231
  </div>
179
232
  </div>
180
233
 
181
234
  <!-- TODO move to own component stock-location-->
182
- <co-simple-grid [data]="stockLocationData"
235
+ <co-simple-grid [data]="articleDetails"
183
236
  >
184
237
  <div class="stock-location-group">
185
238
  <div class="stock-location-left-group">
186
239
  <co-button class="stock-lines-button" [textContent]="'BACK_TO_STOCK_LINES'" (click)="handleBackToStockClick()"></co-button>
187
240
  </div>
188
241
  </div>
189
- <co-simple-grid-column [headerText]="'WAREHOUSE'" [field]="'warehouseName'"></co-simple-grid-column>
242
+ <co-simple-grid-column [headerText]="'WAREHOUSE'" [field]="'warehouseDescription'"></co-simple-grid-column>
190
243
  <co-simple-grid-column [headerText]="'BATCH'" [field]="'batchNo'"></co-simple-grid-column>
191
244
  <co-simple-grid-column [headerText]="'SERIAL_NO'" [field]="'serialNo'"></co-simple-grid-column>
192
- <co-simple-grid-column [headerText]="'STOCK'" [field]="'notAssignedStock'"></co-simple-grid-column>
193
- <co-simple-grid-column [headerText]="'ALLOCATED'" [field]="'economicalStock'"></co-simple-grid-column>
194
- <co-simple-grid-column [headerText]="'AVAILABLE_STOCK'" [field]="'availableStock'"></co-simple-grid-column>
245
+ <co-simple-grid-column [headerText]="'STOCK'" [field]="'amountInStock'">
246
+ <ng-template #template let-row="row">
247
+ <co-input-number-picker (keyup.enter)="openDialogClick(row)" [(model)]="row['amountInStock']">
248
+
249
+ </co-input-number-picker>
250
+ </ng-template>
251
+ </co-simple-grid-column>
252
+ <co-simple-grid-column [headerText]="'ALLOCATED'" [field]="'amountInStockFree'"></co-simple-grid-column>
253
+ <co-simple-grid-column [headerText]="'AVAILABLE_STOCK'" [field]="'perceptibleStorage'"></co-simple-grid-column>
254
+ <co-simple-grid-column [headerText]="'PHYSICAL_STOCK'" [field]="'amountInStockOriginal'"></co-simple-grid-column>
255
+ <co-simple-grid-column [headerText]="'VALUTA'" [field]="'currency'"></co-simple-grid-column>
256
+ <co-simple-grid-column [headerText]="'PURCHASE_PRICE'" [field]="'purchasePrice'"></co-simple-grid-column>
257
+ <co-simple-grid-column [headerText]="'SUPPLIER_NUMBER'" [field]="'supplierNo'"></co-simple-grid-column>
195
258
  <co-simple-grid-column [headerText]="'TRANSFER'" [field]="'transfer'">
196
259
  <ng-template #template let-row="row">
197
260
  <co-icon class="menu-icon" [iconData]="iconCacheService.getIcon(icons.DeliveryTruck)" (click)="handleStockTransferClick(row)"></co-icon>
@@ -205,15 +268,32 @@ StockInformationGridComponent.decorators = [
205
268
  </co-simple-grid>
206
269
  </div>
207
270
 
271
+ <co-stock-change-amount *ngIf="showChangeStockDetails"
272
+ (closeStockChangeAmount)="showChangeStockDetails = false"
273
+ [selectedArticleDetailsData]="selectedArticleDetailsData"
274
+ >
275
+ </co-stock-change-amount>
276
+
208
277
  <div class="stock-grid" *ngIf="showStockHistory">
278
+ <div class="stock-button-left-group">
279
+ <span class="stock-button-back" [textContent]="'BACK_TO_STOCK_LINES'" (click)="backToStockInformation()"></span>
280
+ </div>
209
281
  <co-simple-grid [data]="stockHistoryInformation"
210
282
  >
211
- <co-simple-grid-column [headerText]="'WAREHOUSE'" [field]="'location'"></co-simple-grid-column>
212
- <co-simple-grid-column [headerText]="'BATCH'" [field]="'batch'"></co-simple-grid-column>
213
- <co-simple-grid-column [headerText]="'SERIAL_NO'" [field]="'serialNo'"></co-simple-grid-column>
214
- <co-simple-grid-column [headerText]="'STOCK'" [field]="'amountInStock'"></co-simple-grid-column>
215
- <co-simple-grid-column [headerText]="'ALLOCATED'" [field]="'allocated'"></co-simple-grid-column>
216
- <co-simple-grid-column [headerText]="'AVAILABLE_STOCK'" [field]="'amountAvailable'"></co-simple-grid-column>
283
+ <co-simple-grid-column [headerText]="'MUTATION_DATE'" [field]="'mutationDate'"></co-simple-grid-column>
284
+ <co-simple-grid-column [headerText]="'MUTATION_TIME'" [field]="'mutationTime'"></co-simple-grid-column>
285
+ <co-simple-grid-column [headerText]="'AMOUNT'" [field]="'amount'"></co-simple-grid-column>
286
+ <co-simple-grid-column [headerText]="'WAREHOUSE'" [field]="'wareHouseNr'"></co-simple-grid-column>
287
+ <co-simple-grid-column [headerText]="'LOCATION'" [field]="'locationNr'"></co-simple-grid-column>
288
+ <co-simple-grid-column [headerText]="'TRANSACTION_TYPE'" [field]="'transType'"></co-simple-grid-column>
289
+ <co-simple-grid-column [headerText]="'DOCUMENT_NUMBER'" [field]="'docNr'"></co-simple-grid-column>
290
+ <co-simple-grid-column [headerText]="'LINE'" [field]="'posLineNr'"></co-simple-grid-column>
291
+ <co-simple-grid-column [headerText]="'STOCK_STATE'" [field]="'stockStateId'"></co-simple-grid-column>
292
+ <co-simple-grid-column [headerText]="'STOCK_REMARK'" [field]="'stockStateRemarkId'"></co-simple-grid-column>
293
+ <co-simple-grid-column [headerText]="'VALUTA'" [field]="'currencyCode'"></co-simple-grid-column>
294
+ <co-simple-grid-column [headerText]="'RELATION_ID'" [field]="'relationId'"></co-simple-grid-column>
295
+ <co-simple-grid-column [headerText]="'USER'" [field]="'user'"></co-simple-grid-column>
296
+ <co-simple-grid-column [headerText]="'MUTATION_TYPE'" [field]="'mutationType'"></co-simple-grid-column>
217
297
  <co-simple-grid-column [headerText]="'STICKER'" [field]="'sticker'">
218
298
  <ng-template #template let-row="row">
219
299
  <co-icon class="menu-icon" [iconData]="iconCacheService.getIcon(icons.Print)" (click)="openSendMethodDialog()"></co-icon>
@@ -236,6 +316,7 @@ StockInformationGridComponent.decorators = [
236
316
  </div>
237
317
  </div>
238
318
  <ione-send-method-dialog
319
+ *ngIf="showSendMethodDialog"
239
320
  [showDialog]="showSendMethodDialog"
240
321
  (printButtonClicked)="printStockStickers()"
241
322
  ></ione-send-method-dialog>
@@ -250,9 +331,9 @@ StockInformationGridComponent.ctorParameters = () => [
250
331
  StockInformationGridComponent.propDecorators = {
251
332
  stock: [{ type: ViewChild, args: [StockInformationGridComponent,] }],
252
333
  articleStockInformation: [{ type: Input }],
253
- stockHistoryInformation: [{ type: Input }],
254
334
  stockLocationData: [{ type: Input }],
255
- locationLineClicked: [{ type: Output }],
256
- transferIconClicked: [{ type: Output }]
335
+ stockHistoryInformation: [{ type: Input }],
336
+ transferIconClicked: [{ type: Output }],
337
+ historyClicked: [{ type: Output }]
257
338
  };
258
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvY2staW5mb3JtYXRpb24tZ3JpZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWRjb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9zdG9jay9zdG9jay1pbmZvcm1hdGlvbi1ncmlkL3N0b2NrLWluZm9ybWF0aW9uLWdyaWQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNuRyxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDNUQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDckUsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBRzdDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxnREFBZ0QsQ0FBQztBQUM1RSxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxzREFBc0QsQ0FBQztBQXFKeEYsTUFBTSxPQUFPLDZCQUE2QjtJQWtFeEMsWUFDUyxnQkFBa0MsRUFDakMsYUFBMkI7UUFENUIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNqQyxrQkFBYSxHQUFiLGFBQWEsQ0FBYztRQW5FckIsVUFBSyxHQUFnQixJQUFJLENBQUM7UUFlMUIsd0JBQW1CLEdBQStCLElBQUksWUFBWSxFQUFFLENBQUM7UUFHckUsd0JBQW1CLEdBQWlDLElBQUksWUFBWSxFQUFFLENBQUM7UUFHaEYsU0FBSSxHQUFZLEtBQUssQ0FBQztRQUN0QiwwQkFBcUIsR0FBWSxLQUFLLENBQUM7UUFDdkMscUJBQWdCLEdBQVksS0FBSyxDQUFDO1FBQ2xDLHlCQUFvQixHQUFZLEtBQUssQ0FBQztRQUV0QyxTQUFJLEdBQVU7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Z0JBQ1QsUUFBUSxFQUFFLDJCQUEyQjtnQkFDckMsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBOElUO2dCQUNELGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2FBQ3RDOzs7WUF6Sk8sZ0JBQWdCO1lBRGhCLFlBQVk7OztvQkE4SmpCLFNBQVMsU0FBQyw2QkFBNkI7c0NBR3ZDLEtBQUs7c0NBR0wsS0FBSztnQ0FHTCxLQUFLO2tDQUdMLE1BQU07a0NBR04sTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBPdXRwdXQsIFZpZXdDaGlsZCwgVmlld0VuY2Fwc3VsYXRpb24sIEV2ZW50RW1pdHRlciwgSW5wdXR9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7U3RvY2tTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vLi4vc2VydmljZS9zdG9jay5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7SWNvbkNhY2hlU2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2UvaWNvbi1jYWNoZS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7SWNvbn0gZnJvbSBcIi4uLy4uLy4uL2VudW0vaWNvbi5lbnVtXCI7XHJcbmltcG9ydCB7QXJ0aWNsZVN0b2NrQm99IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLXN0b2NrLmJvXCI7XHJcbmltcG9ydCB7R2V0U3RvY2tIaXN0b3J5UmVxdWVzdH0gZnJvbSBcIkBjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2dldC1zdG9jay1oaXN0b3J5LXJlcXVlc3RcIjtcclxuaW1wb3J0IHtBcnRpY2xlU3RvY2t9IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLXN0b2NrXCI7XHJcbmltcG9ydCB7UHJpbnRTdG9ja1N0aWNrZXJzfSBmcm9tIFwiQGNvbGlqbml0L3NoYXJlZGFwaS9idWlsZC9tb2RlbC9wcmludC1zdG9jay1zdGlja2Vyc1wiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFwiY28tc3RvY2staW5mb3JtYXRpb24tZ3JpZFwiLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8ZGl2IGNsYXNzPVwidGFiLWxpbmsgc2hvd1wiICpuZ0lmPVwiaGlkZU9yU2hvd1RhYnNcIj5cclxuICAgICAgPHNwYW4gY2xhc3M9XCJ0YWItbGluay1idXR0b25zXCJcclxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IHRhYiBvZiB0YWJzXCJcclxuICAgICAgICAgICAgKGNsaWNrKT1cImhhbmRsZVRhYkNsaWNrKHRhYilcIlxyXG4gICAgICAgICAgICBbdGV4dENvbnRlbnRdPVwidGFiXCJcclxuICAgICAgICAgICAgW2NsYXNzLmFjdGl2ZV09XCJ0YWIgPT09IGFjdGl2ZVRhYlwiXHJcbiAgICAgID48L3NwYW4+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwic3RvY2stbGluZVwiPlxyXG4gICAgICA8ZGl2IFt0ZXh0Q29udGVudF09XCJhY3RpdmVUYWJUZXh0XCI+PC9kaXY+XHJcblxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cInN0b2NrLWdyaWRcIj5cclxuICAgICAgPGNvLXNpbXBsZS1ncmlkICpuZ0lmPVwiYWN0aXZlVGFiID09PSB0YWJzWzBdICYmIGhpZGVPclNob3dUYWJzXCJcclxuICAgICAgICAgICAgICAgICAgICAgIFtkYXRhXT1cImFydGljbGVTdG9ja0luZm9ybWF0aW9uXCJcclxuICAgICAgPlxyXG4gICAgICAgICAgPGNvLXNpbXBsZS1ncmlkLWNvbHVtbiBbaGVhZGVyVGV4dF09XCInV0FSRUhPVVNFJ1wiIFtmaWVsZF09XCInd2FyZWhvdXNlTm8nXCI+PC9jby1zaW1wbGUtZ3JpZC1jb2x1bW4+XHJcbiAgICAgICAgICA8Y28tc2ltcGxlLWdyaWQtY29sdW1uIFtoZWFkZXJUZXh0XT1cIidERVNDUklQVElPTidcIiBbZmllbGRdPVwiJ3dhcmVob3VzZU5hbWUnXCI+PC9jby1zaW1wbGUtZ3JpZC1jb2x1bW4+XHJcbiAgICAgICAgICA8Y28tc2ltcGxlLWdyaWQtY29sdW1uIFtoZWFkZXJUZXh0XT1cIidTVE9DSydcIiBbZmllbGRdPVwiJ3RlY2huaWNhbFN0b2NrJ1wiPjwvY28tc2ltcGxlLWdyaWQtY29sdW1uPlxyXG4gICAgICAgICAgPGNvLXNpbXBsZS1ncmlkLWNvbHVtbiBbaGVhZGVyVGV4dF09XCInQVZBSUxBQkxFX1NUT0NLJ1wiIFtmaWVsZF09XCInYXZhaWxhYmxlU3RvY2snXCI+PC9jby1zaW1wbGUtZ3JpZC1jb2x1bW4+XHJcbiAgICAgICAgICA8Y28tc2ltcGxlLWdyaWQtY29sdW1uIFtoZWFkZXJUZXh0XT1cIidFQ09OT01JQ0FMX1NUT0NLJ1wiIFtmaWVsZF09XCInZWNvbm9taWNhbFN0b2NrJ1wiPjwvY28tc2ltcGxlLWdyaWQtY29sdW1uPlxyXG4gICAgICAgICAgPGNvLXNpbXBsZS1ncmlkLWNvbHVtbiBbaGVhZGVyVGV4dF09XCInTE9DQVRJT04nXCIgW2ZpZWxkXT1cIidsb2NhdGlvbk5vJ1wiPlxyXG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgI3RlbXBsYXRlIGxldC1yb3c9XCJyb3dcIj5cclxuICAgICAgICAgICAgICA8c3BhbiBbdGV4dENvbnRlbnRdPVwiJ2Jla2lqa2VuJ1wiIChjbGljayk9XCJvbkxvY2F0aW9uQ2xpY2socm93KVwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgIDwvY28tc2ltcGxlLWdyaWQtY29sdW1uPlxyXG4gICAgICA8L2NvLXNpbXBsZS1ncmlkPlxyXG5cclxuICAgICAgPGNvLXNpbXBsZS1ncmlkICpuZ0lmPVwiYWN0aXZlVGFiID09PSB0YWJzWzFdXCJcclxuICAgICAgICAgICAgICAgICAgICAgIFtkYXRhXT1cImluT3JkZXJJbmZvcm1hdGlvblwiXHJcbiAgICAgID5cclxuICAgICAgICA8Y28tc2ltcGxlLWdyaWQtY29sdW1uIFtoZWFkZXJUZXh0XT1cIidJTl9PUkRFUjInXCIgW2ZpZWxkXT1cIidpbk9yZGVyJ1wiPjwvY28tc2ltcGxlLWdyaWQtY29sdW1uPlxyXG4gICAgICAgIDxjby1zaW1wbGUtZ3JpZC1jb2x1bW4gW2hlYWRlclRleHRdPVwiJ0NVU1RPTUVSJ1wiIFtmaWVsZF09XCInY3VzdG9tZXInXCI+PC9jby1zaW1wbGUtZ3JpZC1jb2x1bW4+XHJcbiAgICAgICAgPGNvLXNpbXBsZS1ncmlkLWNvbHVtbiBbaGVhZGVyVGV4dF09XCInREFURSdcIiBbZmllbGRdPVwiJ29yZGVyRGF0ZSdcIj48L2NvLXNpbXBsZS1ncmlkLWNvbHVtbj5cclxuICAgICAgICA8Y28tc2ltcGxlLWdyaWQtY29sdW1uIFtoZWFkZXJUZXh0XT1cIidBTU9VTlQnXCIgW2ZpZWxkXT1cIidvcmRlckFtb3VudCdcIj48L2NvLXNpbXBsZS1ncmlkLWNvbHVtbj5cclxuICAgICAgICA8Y28tc2ltcGxlLWdyaWQtY29sdW1uIFtoZWFkZXJUZXh0XT1cIidXQVJFSE9VU0UnXCIgW2ZpZWxkXT1cIid3YXJlaG91c2VOdW1iZXInXCI+PC9jby1zaW1wbGUtZ3JpZC1jb2x1bW4+XHJcbiAgICAgICAgPGNvLXNpbXBsZS1ncmlkLWNvbHVtbiBbaGVhZGVyVGV4dF09XCInREVTQ1JJUFRJT04nXCIgW2ZpZWxkXT1cIid3YXJlaG91c2VEZXNjcmlwdGlvbidcIj48L2NvLXNpbXBsZS1ncmlkLWNvbHVtbj5cclxuICAgICAgICA8Y28tc2ltcGxlLWdyaWQtY29sdW1uIFtoZWFkZXJUZXh0XT1cIidTVE9DSydcIiBbZmllbGRdPVwiJ2Ftb3VudEluU3RvY2snXCI+PC9jby1zaW1wbGUtZ3JpZC1jb2x1bW4+XHJcbiAgICAgICAgPGNvLXNpbXBsZS1ncmlkLWNvbHVtbiBbaGVhZGVyVGV4dF09XCInQ09NTUlTU0lPTjInXCIgW2ZpZWxkXT1cIidjb21taXNzaW9uJ1wiPjwvY28tc2ltcGxlLWdyaWQtY29sdW1uPlxyXG4gICAgICAgIDxjby1zaW1wbGUtZ3JpZC1jb2x1bW4gW2hlYWRlclRleHRdPVwiJ1RSQU5TRkVSJ1wiIFtmaWVsZF09XCIndHJhbnNmZXInXCI+XHJcbiAgICAgICAgICA8bmctdGVtcGxhdGUgI3RlbXBsYXRlIGxldC1yb3c9XCJyb3dcIj5cclxuICAgICAgICAgICAgPGNvLWljb24gY2xhc3M9XCJtZW51LWljb25cIiBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb25zLkRlbGl2ZXJ5VHJ1Y2spXCIgKGNsaWNrKT1cImhhbmRsZVN0b2NrVHJhbnNmZXJDbGljaygkZXZlbnQpXCI+PC9jby1pY29uPlxyXG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICA8L2NvLXNpbXBsZS1ncmlkLWNvbHVtbj5cclxuICAgICAgICA8Y28tc2ltcGxlLWdyaWQtY29sdW1uIFtoZWFkZXJUZXh0XT1cIidTVElDS0VSJ1wiIFtmaWVsZF09XCInc3RpY2tlcidcIj5cclxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjdGVtcGxhdGUgbGV0LXJvdz1cInJvd1wiPlxyXG4gICAgICAgICAgICA8Y28taWNvbiBjbGFzcz1cIm1lbnUtaWNvblwiIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24oaWNvbnMuUHJpbnQpXCIgKGNsaWNrKT1cIm9wZW5TZW5kTWV0aG9kRGlhbG9nKClcIj48L2NvLWljb24+XHJcbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgIDwvY28tc2ltcGxlLWdyaWQtY29sdW1uPlxyXG4gICAgICA8L2NvLXNpbXBsZS1ncmlkPlxyXG5cclxuICAgICAgPGNvLXNpbXBsZS1ncmlkICpuZ0lmPVwiYWN0aXZlVGFiID09PSB0YWJzWzJdXCJcclxuICAgICAgICAgICAgICAgICAgICAgIFtkYXRhXT1cIm9yZGVySW5mb3JtYXRpb25cIlxyXG4gICAgICA+XHJcbiAgICAgICAgPGNvLXNpbXBsZS1ncmlkLWNvbHVtbiBbaGVhZGVyVGV4dF09XCInUFVSQ0hBU0VfT1JERVJfTlInXCIgW2ZpZWxkXT1cIidwdXJjaGFzZU9yZGVyTm8nXCI+PC9jby1zaW1wbGUtZ3JpZC1jb2x1bW4+XHJcbiAgICAgICAgPGNvLXNpbXBsZS1ncmlkLWNvbHVtbiBbaGVhZGVyVGV4dF09XCInREFURSdcIiBbZmllbGRdPVwiJ29yZGVyRGF0ZSdcIj48L2NvLXNpbXBsZS1ncmlkLWNvbHVtbj5cclxuICAgICAgICA8Y28tc2ltcGxlLWdyaWQtY29sdW1uIFtoZWFkZXJUZXh0XT1cIidBTU9VTlQnXCIgW2ZpZWxkXT1cIidvcmRlckFtb3VudCdcIj48L2NvLXNpbXBsZS1ncmlkLWNvbHVtbj5cclxuICAgICAgICA8Y28tc2ltcGxlLWdyaWQtY29sdW1uIFtoZWFkZXJUZXh0XT1cIidSRVNFUlZFRCdcIiBbZmllbGRdPVwiJ3Jlc2VydmVkJ1wiPjwvY28tc2ltcGxlLWdyaWQtY29sdW1uPlxyXG4gICAgICAgIDxjby1zaW1wbGUtZ3JpZC1jb2x1bW4gW2hlYWRlclRleHRdPVwiJ0ZSRUVfU1RPQ0snXCIgW2ZpZWxkXT1cIidmcmVlU3RvY2snXCI+PC9jby1zaW1wbGUtZ3JpZC1jb2x1bW4+XHJcbiAgICAgICAgPGNvLXNpbXBsZS1ncmlkLWNvbHVtbiBbaGVhZGVyVGV4dF09XCInREVMSVZFUllfREFURTEnXCIgW2ZpZWxkXT1cIidkZWxpdmVyeURhdGUnXCI+PC9jby1zaW1wbGUtZ3JpZC1jb2x1bW4+XHJcbiAgICAgICAgPGNvLXNpbXBsZS1ncmlkLWNvbHVtbiBbaGVhZGVyVGV4dF09XCInUkVTRVJWRSdcIiBbZmllbGRdPVwiJ3Jlc2VydmF0aW9uJ1wiPjwvY28tc2ltcGxlLWdyaWQtY29sdW1uPlxyXG4gICAgICA8L2NvLXNpbXBsZS1ncmlkPlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cInN0b2NrLWdyaWRcIiAqbmdJZj1cImhpZGVPclNob3dMb2NhdGlvblRhYlwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwic3RvY2stbG9jYXRpb24tZ3JvdXBcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwic3RvY2stbG9jYXRpb24tbGVmdC1ncm91cFwiPlxyXG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdG9jay1idXR0b24tYmFja1wiIFt0ZXh0Q29udGVudF09XCInQkFDS19UT19TVE9DS19MSU5FUydcIiAoY2xpY2spPVwiaGFuZGxlQmFja1RvU3RvY2tDbGljaygpXCI+PC9zcGFuPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJzdG9jay1sb2NhdGlvbi1yaWdodC1ncm91cFwiPlxyXG4gICAgICAgICAgPGNvLWlucHV0LWNvbWJvLWJveCBbKG1vZGVsKV09XCJkYXRhV2FyZUhvdXNlQ29kZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtmaWVsZHNdPVwiZGF0YVdhcmVIb3VzZUZpZWxkc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInV0FSRUhPVVNFJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJ0cnVlXCJcclxuICAgICAgICAgID48L2NvLWlucHV0LWNvbWJvLWJveD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcblxyXG48IS0tICAgICAgVE9ETyBtb3ZlIHRvIG93biBjb21wb25lbnQgc3RvY2stbG9jYXRpb24tLT5cclxuICAgICAgPGNvLXNpbXBsZS1ncmlkIFtkYXRhXT1cInN0b2NrTG9jYXRpb25EYXRhXCJcclxuICAgICAgPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJzdG9jay1sb2NhdGlvbi1ncm91cFwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInN0b2NrLWxvY2F0aW9uLWxlZnQtZ3JvdXBcIj5cclxuICAgICAgICAgICAgPGNvLWJ1dHRvbiBjbGFzcz1cInN0b2NrLWxpbmVzLWJ1dHRvblwiIFt0ZXh0Q29udGVudF09XCInQkFDS19UT19TVE9DS19MSU5FUydcIiAoY2xpY2spPVwiaGFuZGxlQmFja1RvU3RvY2tDbGljaygpXCI+PC9jby1idXR0b24+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8Y28tc2ltcGxlLWdyaWQtY29sdW1uIFtoZWFkZXJUZXh0XT1cIidXQVJFSE9VU0UnXCIgW2ZpZWxkXT1cIid3YXJlaG91c2VOYW1lJ1wiPjwvY28tc2ltcGxlLWdyaWQtY29sdW1uPlxyXG4gICAgICAgIDxjby1zaW1wbGUtZ3JpZC1jb2x1bW4gW2hlYWRlclRleHRdPVwiJ0JBVENIJ1wiIFtmaWVsZF09XCInYmF0Y2hObydcIj48L2NvLXNpbXBsZS1ncmlkLWNvbHVtbj5cclxuICAgICAgICA8Y28tc2ltcGxlLWdyaWQtY29sdW1uIFtoZWFkZXJUZXh0XT1cIidTRVJJQUxfTk8nXCIgW2ZpZWxkXT1cIidzZXJpYWxObydcIj48L2NvLXNpbXBsZS1ncmlkLWNvbHVtbj5cclxuICAgICAgICA8Y28tc2ltcGxlLWdyaWQtY29sdW1uIFtoZWFkZXJUZXh0XT1cIidTVE9DSydcIiBbZmllbGRdPVwiJ25vdEFzc2lnbmVkU3RvY2snXCI+PC9jby1zaW1wbGUtZ3JpZC1jb2x1bW4+XHJcbiAgICAgICAgPGNvLXNpbXBsZS1ncmlkLWNvbHVtbiBbaGVhZGVyVGV4dF09XCInQUxMT0NBVEVEJ1wiIFtmaWVsZF09XCInZWNvbm9taWNhbFN0b2NrJ1wiPjwvY28tc2ltcGxlLWdyaWQtY29sdW1uPlxyXG4gICAgICAgIDxjby1zaW1wbGUtZ3JpZC1jb2x1bW4gW2hlYWRlclRleHRdPVwiJ0FWQUlMQUJMRV9TVE9DSydcIiBbZmllbGRdPVwiJ2F2YWlsYWJsZVN0b2NrJ1wiPjwvY28tc2ltcGxlLWdyaWQtY29sdW1uPlxyXG4gICAgICAgIDxjby1zaW1wbGUtZ3JpZC1jb2x1bW4gW2hlYWRlclRleHRdPVwiJ1RSQU5TRkVSJ1wiIFtmaWVsZF09XCIndHJhbnNmZXInXCI+XHJcbiAgICAgICAgICA8bmctdGVtcGxhdGUgI3RlbXBsYXRlIGxldC1yb3c9XCJyb3dcIj5cclxuICAgICAgICAgICAgPGNvLWljb24gY2xhc3M9XCJtZW51LWljb25cIiBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb25zLkRlbGl2ZXJ5VHJ1Y2spXCIgKGNsaWNrKT1cImhhbmRsZVN0b2NrVHJhbnNmZXJDbGljayhyb3cpXCI+PC9jby1pY29uPlxyXG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICA8L2NvLXNpbXBsZS1ncmlkLWNvbHVtbj5cclxuICAgICAgICA8Y28tc2ltcGxlLWdyaWQtY29sdW1uIFtoZWFkZXJUZXh0XT1cIidTVElDS0VSJ1wiIFtmaWVsZF09XCInc3RpY2tlcidcIj5cclxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjdGVtcGxhdGUgbGV0LXJvdz1cInJvd1wiPlxyXG4gICAgICAgICAgICA8Y28taWNvbiBjbGFzcz1cIm1lbnUtaWNvblwiIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24oaWNvbnMuUHJpbnQpXCIgKGNsaWNrKT1cIm9wZW5TZW5kTWV0aG9kRGlhbG9nKClcIj48L2NvLWljb24+XHJcbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgIDwvY28tc2ltcGxlLWdyaWQtY29sdW1uPlxyXG4gICAgICA8L2NvLXNpbXBsZS1ncmlkPlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cInN0b2NrLWdyaWRcIiAqbmdJZj1cInNob3dTdG9ja0hpc3RvcnlcIj5cclxuICAgICAgPGNvLXNpbXBsZS1ncmlkIFtkYXRhXT1cInN0b2NrSGlzdG9yeUluZm9ybWF0aW9uXCJcclxuICAgICAgPlxyXG4gICAgICAgIDxjby1zaW1wbGUtZ3JpZC1jb2x1bW4gW2hlYWRlclRleHRdPVwiJ1dBUkVIT1VTRSdcIiBbZmllbGRdPVwiJ2xvY2F0aW9uJ1wiPjwvY28tc2ltcGxlLWdyaWQtY29sdW1uPlxyXG4gICAgICAgIDxjby1zaW1wbGUtZ3JpZC1jb2x1bW4gW2hlYWRlclRleHRdPVwiJ0JBVENIJ1wiIFtmaWVsZF09XCInYmF0Y2gnXCI+PC9jby1zaW1wbGUtZ3JpZC1jb2x1bW4+XHJcbiAgICAgICAgPGNvLXNpbXBsZS1ncmlkLWNvbHVtbiBbaGVhZGVyVGV4dF09XCInU0VSSUFMX05PJ1wiIFtmaWVsZF09XCInc2VyaWFsTm8nXCI+PC9jby1zaW1wbGUtZ3JpZC1jb2x1bW4+XHJcbiAgICAgICAgPGNvLXNpbXBsZS1ncmlkLWNvbHVtbiBbaGVhZGVyVGV4dF09XCInU1RPQ0snXCIgW2ZpZWxkXT1cIidhbW91bnRJblN0b2NrJ1wiPjwvY28tc2ltcGxlLWdyaWQtY29sdW1uPlxyXG4gICAgICAgIDxjby1zaW1wbGUtZ3JpZC1jb2x1bW4gW2hlYWRlclRleHRdPVwiJ0FMTE9DQVRFRCdcIiBbZmllbGRdPVwiJ2FsbG9jYXRlZCdcIj48L2NvLXNpbXBsZS1ncmlkLWNvbHVtbj5cclxuICAgICAgICA8Y28tc2ltcGxlLWdyaWQtY29sdW1uIFtoZWFkZXJUZXh0XT1cIidBVkFJTEFCTEVfU1RPQ0snXCIgW2ZpZWxkXT1cIidhbW91bnRBdmFpbGFibGUnXCI+PC9jby1zaW1wbGUtZ3JpZC1jb2x1bW4+XHJcbiAgICAgICAgPGNvLXNpbXBsZS1ncmlkLWNvbHVtbiBbaGVhZGVyVGV4dF09XCInU1RJQ0tFUidcIiBbZmllbGRdPVwiJ3N0aWNrZXInXCI+XHJcbiAgICAgICAgICA8bmctdGVtcGxhdGUgI3RlbXBsYXRlIGxldC1yb3c9XCJyb3dcIj5cclxuICAgICAgICAgICAgPGNvLWljb24gY2xhc3M9XCJtZW51LWljb25cIiBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb25zLlByaW50KVwiIChjbGljayk9XCJvcGVuU2VuZE1ldGhvZERpYWxvZygpXCI+PC9jby1pY29uPlxyXG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICA8L2NvLXNpbXBsZS1ncmlkLWNvbHVtbj5cclxuICAgICAgPC9jby1zaW1wbGUtZ3JpZD5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJzdG9jay1idXR0b24tdG9vbGJhclwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwic3RvY2stYnV0dG9uLWxlZnQtZ3JvdXBcIj5cclxuICAgICAgICA8Y28tYnV0dG9uIFtsYWJlbF09XCInSElTVE9SWSdcIiAoY2xpY2spPVwiaGFuZGxlSGlzdG9yeUNsaWNrKClcIj48L2NvLWJ1dHRvbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJzdG9jay1idXR0b24tbWlkZGxlLWdyb3VwXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImJ1dHRvbi1sZWZ0XCI+XHJcbiAgICAgICAgICA8Y28tYnV0dG9uIFt0ZXh0Q29udGVudF09XCInT2snXCIgKGNsaWNrKT1cIm9uT2tDbGljaygpXCI+PC9jby1idXR0b24+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImJ1dHRvbi1yaWdodFwiPlxyXG4gICAgICAgICAgPGNvLWJ1dHRvbiBbdGV4dENvbnRlbnRdPVwiJ0FubnVsZXJlbidcIiAoY2xpY2spPVwib25DYW5jZWxDbGljaygpXCI+PC9jby1idXR0b24+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8aW9uZS1zZW5kLW1ldGhvZC1kaWFsb2dcclxuICAgICAgW3Nob3dEaWFsb2ddPVwic2hvd1NlbmRNZXRob2REaWFsb2dcIlxyXG4gICAgICAocHJpbnRCdXR0b25DbGlja2VkKT1cInByaW50U3RvY2tTdGlja2VycygpXCJcclxuICAgID48L2lvbmUtc2VuZC1tZXRob2QtZGlhbG9nPlxyXG4gIGAsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU3RvY2tJbmZvcm1hdGlvbkdyaWRDb21wb25lbnQge1xyXG4gIHB1YmxpYyByZWFkb25seSBpY29uczogdHlwZW9mIEljb24gPSBJY29uO1xyXG5cclxuICBAVmlld0NoaWxkKFN0b2NrSW5mb3JtYXRpb25HcmlkQ29tcG9uZW50KVxyXG4gIHB1YmxpYyBzdG9jazogU3RvY2tJbmZvcm1hdGlvbkdyaWRDb21wb25lbnQ7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGFydGljbGVTdG9ja0luZm9ybWF0aW9uOiBBcnRpY2xlU3RvY2tCb1tdO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzdG9ja0hpc3RvcnlJbmZvcm1hdGlvbjogR2V0U3RvY2tIaXN0b3J5UmVxdWVzdFtdO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzdG9ja0xvY2F0aW9uRGF0YTogQXJ0aWNsZVN0b2NrQm9bXTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIHJlYWRvbmx5IGxvY2F0aW9uTGluZUNsaWNrZWQ6IEV2ZW50RW1pdHRlcjxBcnRpY2xlU3RvY2s+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgcmVhZG9ubHkgdHJhbnNmZXJJY29uQ2xpY2tlZDogRXZlbnRFbWl0dGVyPEFydGljbGVTdG9ja0JvPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgcHVibGljIGltYWdlOiBzdHJpbmc7XHJcbiAgcHVibGljIHNob3c6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgaGlkZU9yU2hvd0xvY2F0aW9uVGFiOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIHNob3dTdG9ja0hpc3Rvcnk6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgc2hvd1NlbmRNZXRob2REaWFsb2c6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgcHVibGljIGRhdGE6IGFueVtdID0gW1xyXG4gICAge3Rlc3Q6IFwidGVzdFwifVxyXG4gIF07XHJcblxyXG4gIHB1YmxpYyBpbk9yZGVySW5mb3JtYXRpb246IE9iamVjdFtdID0gW1xyXG4gICAge2luT3JkZXI6IFwiMjc1NDMyXCIsIGN1c3RvbWVyOiBcIlRlc3QgY3VzdG9tZXJcIiwgb3JkZXJEYXRlOiBcImRhdGVcIiwgb3JkZXJBbW91bnQ6IFwiMlwiLCB3YXJlaG91c2VOdW1iZXI6IFwiOFwiLCB3YXJlaG91c2VEZXNjcmlwdGlvbjogXCJBIG5pY2Ugd2FyZWhvdXNlXCIsIGFtb3VudEluU3RvY2s6IFwiMTdcIiwgY29tbWlzc2lvbjogXCI0MDE0MzIxXCJ9LFxyXG4gICAge2luT3JkZXI6IFwiMjc1NDMyXCIsIGN1c3RvbWVyOiBcIlRlc3QgY3VzdG9tZXJcIiwgb3JkZXJEYXRlOiBcImRhdGVcIiwgb3JkZXJBbW91bnQ6IFwiMlwiLCB3YXJlaG91c2VOdW1iZXI6IFwiOFwiLCB3YXJlaG91c2VEZXNjcmlwdGlvbjogXCJBIG5pY2Ugd2FyZWhvdXNlXCIsIGFtb3VudEluU3RvY2s6IFwiMTdcIiwgY29tbWlzc2lvbjogXCI0MDE0MzIxXCJ9LFxyXG4gICAge2luT3JkZXI6IFwiMjc1NDMyXCIsIGN1c3RvbWVyOiBcIlRlc3QgY3VzdG9tZXJcIiwgb3JkZXJEYXRlOiBcImRhdGVcIiwgb3JkZXJBbW91bnQ6IFwiMlwiLCB3YXJlaG91c2VOdW1iZXI6IFwiOFwiLCB3YXJlaG91c2VEZXNjcmlwdGlvbjogXCJBIG5pY2Ugd2FyZWhvdXNlXCIsIGFtb3VudEluU3RvY2s6IFwiMTdcIiwgY29tbWlzc2lvbjogXCI0MDE0MzIxXCJ9LFxyXG4gICAge2luT3JkZXI6IFwiMjc1NDMyXCIsIGN1c3RvbWVyOiBcIlRlc3QgY3VzdG9tZXJcIiwgb3JkZXJEYXRlOiBcImRhdGVcIiwgb3JkZXJBbW91bnQ6IFwiMlwiLCB3YXJlaG91c2VOdW1iZXI6IFwiOFwiLCB3YXJlaG91c2VEZXNjcmlwdGlvbjogXCJBIG5pY2Ugd2FyZWhvdXNlXCIsIGFtb3VudEluU3RvY2s6IFwiMTdcIiwgY29tbWlzc2lvbjogXCI0MDE0MzIxXCJ9LFxyXG4gICAge2luT3JkZXI6IFwiMjc1NDMyXCIsIGN1c3RvbWVyOiBcIlRlc3QgY3VzdG9tZXJcIiwgb3JkZXJEYXRlOiBcImRhdGVcIiwgb3JkZXJBbW91bnQ6IFwiMlwiLCB3YXJlaG91c2VOdW1iZXI6IFwiOFwiLCB3YXJlaG91c2VEZXNjcmlwdGlvbjogXCJBIG5pY2Ugd2FyZWhvdXNlXCIsIGFtb3VudEluU3RvY2s6IFwiMTdcIiwgY29tbWlzc2lvbjogXCI0MDE0MzIxXCJ9LFxyXG4gIF07XHJcblxyXG4gIHB1YmxpYyBvcmRlckluZm9ybWF0aW9uOiBhbnlbXSA9IFtdO1xyXG4gIHB1YmxpYyBoaWRlT3JTaG93VGFiczogYm9vbGVhbiA9IHRydWU7XHJcbiAgcHVibGljIGRhdGFXYXJlSG91c2VDb2RlOiBudW1iZXIgPSAwO1xyXG4gIHB1YmxpYyBkYXRhV2FyZUhvdXNlRmllbGRzOiBPYmplY3QgPSB7IHRleHQ6IFwid2FyZWhvdXNlRGVzY3JpcHRpb25cIiwgdmFsdWU6IFwid2FyZWhvdXNlTnVtYmVyXCIgfTtcclxuICBwdWJsaWMgYXJ0aWNsZVN0b2NrU2VhcmNoSW5mbzogQXJ0aWNsZVN0b2NrID0gbmV3IEFydGljbGVTdG9jaygpO1xyXG4gIHB1YmxpYyBwcmludFN0aWNrZXI6IFByaW50U3RvY2tTdGlja2VycztcclxuXHJcbiAgcHVibGljIHRhYnM6IHN0cmluZ1tdID0gW1xyXG4gICAgXCJTVE9DS1wiLFxyXG4gICAgXCJJTl9PUkRFUjJcIixcclxuICAgIFwiT1JERVJTMVwiXHJcbiAgXTtcclxuICBwdWJsaWMgYWN0aXZlVGFiOiBzdHJpbmcgPSB0aGlzLnRhYnNbMF07XHJcblxyXG4gIHB1YmxpYyBnZXQgYWN0aXZlVGFiVGV4dCgpOiBzdHJpbmcge1xyXG4gICAgc3dpdGNoICh0aGlzLmFjdGl2ZVRhYikge1xyXG4gICAgICBjYXNlIHRoaXMudGFic1swXTpcclxuICAgICAgICByZXR1cm4gXCJWb29ycmFhZHJlZ2Vsc1wiO1xyXG4gICAgICBjYXNlIHRoaXMudGFic1sxXTpcclxuICAgICAgICByZXR1cm4gXCJHZXZvbmRlbiBpbiBvcmRlcihzKVwiO1xyXG4gICAgICBjYXNlIHRoaXMudGFic1syXTpcclxuICAgICAgICByZXR1cm4gXCJHZXZvbmRlbiBpbiBiZXN0ZWxsaW5nZW5cIjtcclxuICAgICAgZGVmYXVsdDpcclxuICAgICAgICByZXR1cm4gXCJWb29ycmFhZGxvY2F0aWUgcmVnZWxzXCI7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyBpY29uQ2FjaGVTZXJ2aWNlOiBJY29uQ2FjaGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfc3RvY2tTZXJ2aWNlOiBTdG9ja1NlcnZpY2UsXHJcbiAgKSB7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlVGFiQ2xpY2sodGFiRGF0YSk6IHZvaWQge1xyXG4gICAgdGhpcy5hY3RpdmVUYWIgPSB0YWJEYXRhO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uTG9jYXRpb25DbGljayhkYXRhOiBBcnRpY2xlU3RvY2tCbyk6IHZvaWQge1xyXG4gICAgdGhpcy5hcnRpY2xlU3RvY2tTZWFyY2hJbmZvLmdvb2RJZCA9IGRhdGEuZ29vZElkLnRvU3RyaW5nKCk7XHJcbiAgICB0aGlzLmFydGljbGVTdG9ja1NlYXJjaEluZm8ud2FyZUhvdXNlTm8gPSBkYXRhLndhcmVob3VzZU5vLnRvU3RyaW5nKCk7XHJcbiAgICB0aGlzLmFydGljbGVTdG9ja1NlYXJjaEluZm8udmlld0tpbmQgPSBcIkRcIjtcclxuICAgIHRoaXMubG9jYXRpb25MaW5lQ2xpY2tlZC5lbWl0KHRoaXMuYXJ0aWNsZVN0b2NrU2VhcmNoSW5mbyk7XHJcbiAgICB0aGlzLmhpZGVPclNob3dUYWJzID0gZmFsc2U7XHJcbiAgICB0aGlzLmhpZGVPclNob3dMb2NhdGlvblRhYiA9IHRydWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25Qb3B1cENsb3NlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5zaG93ID0gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlSGlzdG9yeUNsaWNrKCk6IHZvaWQge1xyXG4gICAgLy8gY29uc29sZS53YXJuKCdOb3QgeWV0IGltcGxlbWVudGVkJyk7XHJcbiAgICAvLyB0aGlzLnNob3dTdG9ja0hpc3RvcnkgPSB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZUNsb3NlQ2xpY2soKTogdm9pZCB7XHJcbiAgICB0aGlzLm9uUG9wdXBDbG9zZSgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZVN0b2NrVHJhbnNmZXJDbGljayhldmVudCk6IHZvaWQge1xyXG4gICAgdGhpcy50cmFuc2Zlckljb25DbGlja2VkLmVtaXQoZXZlbnQpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGhhbmRsZUJhY2tUb1N0b2NrQ2xpY2soKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICB0aGlzLmFjdGl2ZVRhYiA9IHRoaXMudGFic1swXTtcclxuICAgIHRoaXMuaGlkZU9yU2hvd1RhYnMgPSB0cnVlO1xyXG4gICAgdGhpcy5oaWRlT3JTaG93TG9jYXRpb25UYWIgPSBmYWxzZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvcGVuU2VuZE1ldGhvZERpYWxvZygpOiB2b2lkIHtcclxuICAgIHRoaXMuc2hvd1NlbmRNZXRob2REaWFsb2cgPSEgdGhpcy5zaG93U2VuZE1ldGhvZERpYWxvZztcclxuICB9XHJcblxyXG4gIHB1YmxpYyBwcmludFN0b2NrU3RpY2tlcnMoKTogdm9pZCB7XHJcbiAgICB0aGlzLnByaW50U3RpY2tlciA9IG5ldyBQcmludFN0b2NrU3RpY2tlcnMoKTtcclxuICAgIHRoaXMucHJpbnRTdGlja2VyLmdvb2RJZCA9IDEwO1xyXG4gICAgdGhpcy5fc3RvY2tTZXJ2aWNlLmdldFByaW50U3RvY2tTdGlja2Vycyh0aGlzLnByaW50U3RpY2tlcik7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25Pa0NsaWNrKCk6IHZvaWQge1xyXG5cclxuICB9XHJcblxyXG4gIHB1YmxpYyBvbkNhbmNlbENsaWNrKCk6IHZvaWQge1xyXG5cclxuICB9XHJcbn1cclxuIl19
339
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvY2staW5mb3JtYXRpb24tZ3JpZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWRjb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9zdG9jay9zdG9jay1pbmZvcm1hdGlvbi1ncmlkL3N0b2NrLWluZm9ybWF0aW9uLWdyaWQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNuRyxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDNUQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDckUsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBRTdDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxnREFBZ0QsQ0FBQztBQUM1RSxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxzREFBc0QsQ0FBQztBQUV4RixPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSwyREFBMkQsQ0FBQztBQUlqRyxPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSw0REFBNEQsQ0FBQztBQW1MbEcsTUFBTSxPQUFPLDZCQUE2QjtJQTREeEMsWUFDUyxnQkFBa0MsRUFDakMsYUFBMkI7UUFENUIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNqQyxrQkFBYSxHQUFiLGFBQWEsQ0FBYztRQTdEckIsVUFBSyxHQUFnQixJQUFJLENBQUM7UUFlMUIsd0JBQW1CLEdBQWlDLElBQUksWUFBWSxFQUFFLENBQUM7UUFHdkUsbUJBQWMsR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUdoRSxTQUFJLEdBQVksS0FBSyxDQUFDO1FBQ3RCLDBCQUFx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O0lBRVksWUFBWTs7WUFDdkIsTUFBTSxXQUFXLEdBQTJCLElBQUksc0JBQXNCLEVBQUUsQ0FBQztZQUN6RSxXQUFXLENBQUMsSUFBSSxHQUFHLEdBQUcsQ0FBQztZQUN2QixXQUFXLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDdkUsaUZBQWlGO1lBQ2pGLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxNQUFNLElBQUksQ0FBQyxhQUFhLENBQUMsZUFBZSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2hGLENBQUM7S0FBQTs7O1lBbldGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsMkJBQTJCO2dCQUNyQyxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E0S1Q7Z0JBQ0QsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7YUFDdEM7OztZQTVMTyxnQkFBZ0I7WUFEaEIsWUFBWTs7O29CQWlNakIsU0FBUyxTQUFDLDZCQUE2QjtzQ0FHdkMsS0FBSztnQ0FHTCxLQUFLO3NDQUdMLEtBQUs7a0NBR0wsTUFBTTs2QkFHTixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIE91dHB1dCwgVmlld0NoaWxkLCBWaWV3RW5jYXBzdWxhdGlvbiwgRXZlbnRFbWl0dGVyLCBJbnB1dH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtTdG9ja1NlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi9zZXJ2aWNlL3N0b2NrLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtJY29uQ2FjaGVTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vLi4vc2VydmljZS9pY29uLWNhY2hlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtJY29ufSBmcm9tIFwiLi4vLi4vLi4vZW51bS9pY29uLmVudW1cIjtcclxuaW1wb3J0IHtBcnRpY2xlU3RvY2tCb30gZnJvbSBcIkBjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtc3RvY2suYm9cIjtcclxuaW1wb3J0IHtBcnRpY2xlU3RvY2t9IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLXN0b2NrXCI7XHJcbmltcG9ydCB7UHJpbnRTdG9ja1N0aWNrZXJzfSBmcm9tIFwiQGNvbGlqbml0L3NoYXJlZGFwaS9idWlsZC9tb2RlbC9wcmludC1zdG9jay1zdGlja2Vyc1wiO1xyXG5pbXBvcnQge1N0b2NrSGlzdG9yeUJvfSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvc3RvY2staGlzdG9yeS5ib1wiO1xyXG5pbXBvcnQge0FydGljbGVTdG9ja01hbmFnZW1lbnR9IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLXN0b2NrLW1hbmFnZW1lbnRcIjtcclxuaW1wb3J0IHtBcnRpY2xlRGV0YWlsc0JvfSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1kZXRhaWxzLmJvXCI7XHJcbmltcG9ydCB7U3RvY2tNYW5hZ2VtZW50V2FyZWhvdXNlc30gZnJvbSBcIkBjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL3N0b2NrLW1hbmFnZW1lbnQtd2FyZWhvdXNlcy5ib1wiO1xyXG5pbXBvcnQge0NvRHJvcERvd25MaXN0RmllbGRzfSBmcm9tIFwiLi4vc3RvY2stdHJhbnNmZXIvY28tZHJvcC1kb3duLWxpc3QtZmllbGRzLmludGVyZmFjZVwiO1xyXG5pbXBvcnQge0dldFN0b2NrSGlzdG9yeVJlcXVlc3R9IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9nZXQtc3RvY2staGlzdG9yeS1yZXF1ZXN0XCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJjby1zdG9jay1pbmZvcm1hdGlvbi1ncmlkXCIsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxkaXYgY2xhc3M9XCJ0YWItbGluayBzaG93XCIgKm5nSWY9XCJoaWRlT3JTaG93VGFic1wiPlxyXG4gICAgICA8c3BhbiBjbGFzcz1cInRhYi1saW5rLWJ1dHRvbnNcIlxyXG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgdGFiIG9mIHRhYnNcIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlVGFiQ2xpY2sodGFiKVwiXHJcbiAgICAgICAgICAgIFt0ZXh0Q29udGVudF09XCJ0YWJcIlxyXG4gICAgICAgICAgICBbY2xhc3MuYWN0aXZlXT1cInRhYiA9PT0gYWN0aXZlVGFiXCJcclxuICAgICAgPjwvc3Bhbj5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJzdG9jay1saW5lXCI+XHJcbiAgICAgIDxkaXYgW3RleHRDb250ZW50XT1cImFjdGl2ZVRhYlRleHRcIj48L2Rpdj5cclxuXHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwic3RvY2stZ3JpZFwiPlxyXG4gICAgICA8Y28tc2ltcGxlLWdyaWQgKm5nSWY9XCJhY3RpdmVUYWIgPT09IHRhYnNbMF0gJiYgaGlkZU9yU2hvd1RhYnNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgW2RhdGFdPVwiYXJ0aWNsZVN0b2NrSW5mb3JtYXRpb25cIlxyXG4gICAgICA+XHJcbiAgICAgICAgICA8Y28tc2ltcGxlLWdyaWQtY29sdW1uIFtoZWFkZXJUZXh0XT1cIidXQVJFSE9VU0UnXCIgW2ZpZWxkXT1cIid3YXJlaG91c2VObydcIiBbb3JkZXJdPVwiMTBcIj48L2NvLXNpbXBsZS1ncmlkLWNvbHVtbj5cclxuICAgICAgICAgIDxjby1zaW1wbGUtZ3JpZC1jb2x1bW4gW2hlYWRlclRleHRdPVwiJ0RFU0NSSVBUSU9OJ1wiIFtmaWVsZF09XCInd2FyZWhvdXNlTmFtZSdcIiBbb3JkZXJdPVwiMTFcIj48L2NvLXNpbXBsZS1ncmlkLWNvbHVtbj5cclxuICAgICAgICAgIDxjby1zaW1wbGUtZ3JpZC1jb2x1bW4gW2hlYWRlclRleHRdPVwiJ1NUT0NLJ1wiIFtmaWVsZF09XCIndGVjaG5pY2FsU3RvY2snXCIgW29yZGVyXT1cIjEyXCI+PC9jby1zaW1wbGUtZ3JpZC1jb2x1bW4+XHJcbiAgICAgICAgICA8Y28tc2ltcGxlLWdyaWQtY29sdW1uIFtoZWFkZXJUZXh0XT1cIidBVkFJTEFCTEVfU1RPQ0snXCIgW2ZpZWxkXT1cIidhdmFpbGFibGVTdG9jaydcIiBbb3JkZXJdPVwiMTNcIj48L2NvLXNpbXBsZS1ncmlkLWNvbHVtbj5cclxuICAgICAgICAgIDxjby1zaW1wbGUtZ3JpZC1jb2x1bW4gW2hlYWRlclRleHRdPVwiJ0VDT05PTUlDQUxfU1RPQ0snXCIgW2ZpZWxkXT1cIidlY29ub21pY2FsU3RvY2snXCIgW29yZGVyXT1cIjE0XCI+PC9jby1zaW1wbGUtZ3JpZC1jb2x1bW4+XHJcbiAgICAgICAgICA8Y28tc2ltcGxlLWdyaWQtY29sdW1uIFtoZWFkZXJUZXh0XT1cIidMT0NBVElPTidcIiBbZmllbGRdPVwiJ2xvY2F0aW9uTm8nXCIgW29yZGVyXT1cIjE1XCI+XHJcbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjdGVtcGxhdGUgbGV0LXJvdz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgIDxzcGFuIFt0ZXh0Q29udGVudF09XCInQmVraWprZW4nXCIgKGNsaWNrKT1cIm9uTG9jYXRpb25DbGljayhyb3cpXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgPC9jby1zaW1wbGUtZ3JpZC1jb2x1bW4+XHJcbiAgICAgIDwvY28tc2ltcGxlLWdyaWQ+XHJcblxyXG4gICAgICA8Y28tc2ltcGxlLWdyaWQgKm5nSWY9XCJhY3RpdmVUYWIgPT09IHRhYnNbMV1cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgW2RhdGFdPVwiaW5PcmRlckluZm9ybWF0aW9uXCJcclxuICAgICAgPlxyXG4gICAgICAgIDxjby1zaW1wbGUtZ3JpZC1jb2x1bW4gW2hlYWRlclRleHRdPVwiJ0lOX09SREVSMidcIiBbZmllbGRdPVwiJ2Ftb3VudCdcIj48L2NvLXNpbXBsZS1ncmlkLWNvbHVtbj5cclxuICAgICAgICA8Y28tc2ltcGxlLWdyaWQtY29sdW1uIFtoZWFkZXJUZXh0XT1cIidDVVNUT01FUidcIiBbZmllbGRdPVwiJ3VzZXInXCI+PC9jby1zaW1wbGUtZ3JpZC1jb2x1bW4+XHJcbiAgICAgICAgPGNvLXNpbXBsZS1ncmlkLWNvbHVtbiBbaGVhZGVyVGV4dF09XCInREFURSdcIiBbZmllbGRdPVwiJ211dGF0aW9uRGF0ZSdcIj48L2NvLXNpbXBsZS1ncmlkLWNvbHVtbj5cclxuICAgICAgICA8Y28tc2ltcGxlLWdyaWQtY29sdW1uIFtoZWFkZXJUZXh0XT1cIidBTU9VTlQnXCIgW2ZpZWxkXT1cIidhbW91bnQnXCI+PC9jby1zaW1wbGUtZ3JpZC1jb2x1bW4+XHJcbiAgICAgICAgPGNvLXNpbXBsZS1ncmlkLWNvbHVtbiBbaGVhZGVyVGV4dF09XCInV0FSRUhPVVNFJ1wiIFtmaWVsZF09XCInd2FyZUhvdXNlTnInXCI+PC9jby1zaW1wbGUtZ3JpZC1jb2x1bW4+XHJcbiAgICAgICAgPGNvLXNpbXBsZS1ncmlkLWNvbHVtbiBbaGVhZGVyVGV4dF09XCInREVTQ1JJUFRJT04nXCIgW2ZpZWxkXT1cIidsb2NhdGlvbk5yJ1wiPjwvY28tc2ltcGxlLWdyaWQtY29sdW1uPlxyXG4gICAgICAgIDxjby1zaW1wbGUtZ3JpZC1jb2x1bW4gW2hlYWRlclRleHRdPVwiJ1NUT0NLJ1wiIFtmaWVsZF09XCInYW1vdW50SW5TdG9jaydcIj48L2NvLXNpbXBsZS1ncmlkLWNvbHVtbj5cclxuICAgICAgICA8Y28tc2ltcGxlLWdyaWQtY29sdW1uIFtoZWFkZXJUZXh0XT1cIidDT01NSVNTSU9OMidcIiBbZmllbGRdPVwiJ2NvbW1pc3Npb24nXCI+PC9jby1zaW1wbGUtZ3JpZC1jb2x1bW4+XHJcbiAgICAgICAgPGNvLXNpbXBsZS1ncmlkLWNvbHVtbiBbaGVhZGVyVGV4dF09XCInVFJBTlNGRVInXCIgW2ZpZWxkXT1cIid0cmFuc2ZlcidcIj5cclxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjdGVtcGxhdGUgbGV0LXJvdz1cInJvd1wiPlxyXG4gICAgICAgICAgICA8Y28taWNvbiBjbGFzcz1cIm1lbnUtaWNvblwiIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24oaWNvbnMuRGVsaXZlcnlUcnVjaylcIiAoY2xpY2spPVwiaGFuZGxlU3RvY2tUcmFuc2ZlckNsaWNrKCRldmVudClcIj48L2NvLWljb24+XHJcbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgIDwvY28tc2ltcGxlLWdyaWQtY29sdW1uPlxyXG4gICAgICAgIDxjby1zaW1wbGUtZ3JpZC1jb2x1bW4gW2hlYWRlclRleHRdPVwiJ1NUSUNLRVInXCIgW2ZpZWxkXT1cIidzdGlja2VyJ1wiPlxyXG4gICAgICAgICAgPG5nLXRlbXBsYXRlICN0ZW1wbGF0ZSBsZXQtcm93PVwicm93XCI+XHJcbiAgICAgICAgICAgIDxjby1pY29uIGNsYXNzPVwibWVudS1pY29uXCIgW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5QcmludClcIiAoY2xpY2spPVwib3BlblNlbmRNZXRob2REaWFsb2coKVwiPjwvY28taWNvbj5cclxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgPC9jby1zaW1wbGUtZ3JpZC1jb2x1bW4+XHJcbiAgICAgIDwvY28tc2ltcGxlLWdyaWQ+XHJcblxyXG4gICAgICA8Y28tc2ltcGxlLWdyaWQgKm5nSWY9XCJhY3RpdmVUYWIgPT09IHRhYnNbMl1cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgW2RhdGFdPVwib3JkZXJJbmZvcm1hdGlvblwiXHJcbiAgICAgID5cclxuICAgICAgICA8Y28tc2ltcGxlLWdyaWQtY29sdW1uIFtoZWFkZXJUZXh0XT1cIidQVVJDSEFTRV9PUkRFUl9OUidcIiBbZmllbGRdPVwiJ3Nlcmllc05yJ1wiPjwvY28tc2ltcGxlLWdyaWQtY29sdW1uPlxyXG4gICAgICAgIDxjby1zaW1wbGUtZ3JpZC1jb2x1bW4gW2hlYWRlclRleHRdPVwiJ0RBVEUnXCIgW2ZpZWxkXT1cIidtdXRhdGlvbkRhdGUnXCI+PC9jby1zaW1wbGUtZ3JpZC1jb2x1bW4+XHJcbiAgICAgICAgPGNvLXNpbXBsZS1ncmlkLWNvbHVtbiBbaGVhZGVyVGV4dF09XCInQU1PVU5UJ1wiIFtmaWVsZF09XCInYW1vdW50J1wiPjwvY28tc2ltcGxlLWdyaWQtY29sdW1uPlxyXG4gICAgICAgIDxjby1zaW1wbGUtZ3JpZC1jb2x1bW4gW2hlYWRlclRleHRdPVwiJ1JFU0VSVkVEJ1wiIFtmaWVsZF09XCIncmVzZXJ2ZWQnXCI+PC9jby1zaW1wbGUtZ3JpZC1jb2x1bW4+XHJcbiAgICAgICAgPGNvLXNpbXBsZS1ncmlkLWNvbHVtbiBbaGVhZGVyVGV4dF09XCInRlJFRV9TVE9DSydcIiBbZmllbGRdPVwiJ2ZyZWVTdG9jaydcIj48L2NvLXNpbXBsZS1ncmlkLWNvbHVtbj5cclxuICAgICAgICA8Y28tc2ltcGxlLWdyaWQtY29sdW1uIFtoZWFkZXJUZXh0XT1cIidERUxJVkVSWV9EQVRFMSdcIiBbZmllbGRdPVwiJ2RlbGl2ZXJ5RGF0ZSdcIj48L2NvLXNpbXBsZS1ncmlkLWNvbHVtbj5cclxuICAgICAgICA8Y28tc2ltcGxlLWdyaWQtY29sdW1uIFtoZWFkZXJUZXh0XT1cIidSRVNFUlZFJ1wiIFtmaWVsZF09XCIncmVzZXJ2YXRpb24nXCI+PC9jby1zaW1wbGUtZ3JpZC1jb2x1bW4+XHJcbiAgICAgIDwvY28tc2ltcGxlLWdyaWQ+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwic3RvY2stZ3JpZFwiICpuZ0lmPVwiaGlkZU9yU2hvd0xvY2F0aW9uVGFiXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJzdG9jay1sb2NhdGlvbi1ncm91cFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJzdG9jay1sb2NhdGlvbi1sZWZ0LWdyb3VwXCI+XHJcbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInN0b2NrLWJ1dHRvbi1iYWNrXCIgW3RleHRDb250ZW50XT1cIidCQUNLX1RPX1NUT0NLX0xJTkVTJ1wiIChjbGljayk9XCJoYW5kbGVCYWNrVG9TdG9ja0NsaWNrKClcIj48L3NwYW4+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInN0b2NrLWxvY2F0aW9uLXJpZ2h0LWdyb3VwXCI+XHJcbiAgICAgICAgICA8Y28tZHJvcC1kb3duLWxpc3QgIFsobW9kZWwpXT1cInNlbGVjdGVkV2FyZWhvdXNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NvbGxlY3Rpb25dPVwiZGF0YVdhcmVIb3VzZUNvZGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZmllbGRzXT1cImRhdGFXYXJlSG91c2VGaWVsZHNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ1dBUkVIT1VTRSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobW9kZWxDaGFuZ2UpPVwib25TZWxlY3RXYXJlaG91c2UoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJ0cnVlXCJcclxuICAgICAgICAgID48L2NvLWRyb3AtZG93bi1saXN0PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbjwhLS0gICAgICBUT0RPIG1vdmUgdG8gb3duIGNvbXBvbmVudCBzdG9jay1sb2NhdGlvbi0tPlxyXG4gICAgICA8Y28tc2ltcGxlLWdyaWQgW2RhdGFdPVwiYXJ0aWNsZURldGFpbHNcIlxyXG4gICAgICA+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInN0b2NrLWxvY2F0aW9uLWdyb3VwXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwic3RvY2stbG9jYXRpb24tbGVmdC1ncm91cFwiPlxyXG4gICAgICAgICAgICA8Y28tYnV0dG9uIGNsYXNzPVwic3RvY2stbGluZXMtYnV0dG9uXCIgW3RleHRDb250ZW50XT1cIidCQUNLX1RPX1NUT0NLX0xJTkVTJ1wiIChjbGljayk9XCJoYW5kbGVCYWNrVG9TdG9ja0NsaWNrKClcIj48L2NvLWJ1dHRvbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxjby1zaW1wbGUtZ3JpZC1jb2x1bW4gW2hlYWRlclRleHRdPVwiJ1dBUkVIT1VTRSdcIiBbZmllbGRdPVwiJ3dhcmVob3VzZURlc2NyaXB0aW9uJ1wiPjwvY28tc2ltcGxlLWdyaWQtY29sdW1uPlxyXG4gICAgICAgIDxjby1zaW1wbGUtZ3JpZC1jb2x1bW4gW2hlYWRlclRleHRdPVwiJ0JBVENIJ1wiIFtmaWVsZF09XCInYmF0Y2hObydcIj48L2NvLXNpbXBsZS1ncmlkLWNvbHVtbj5cclxuICAgICAgICA8Y28tc2ltcGxlLWdyaWQtY29sdW1uIFtoZWFkZXJUZXh0XT1cIidTRVJJQUxfTk8nXCIgW2ZpZWxkXT1cIidzZXJpYWxObydcIj48L2NvLXNpbXBsZS1ncmlkLWNvbHVtbj5cclxuICAgICAgICA8Y28tc2ltcGxlLWdyaWQtY29sdW1uIFtoZWFkZXJUZXh0XT1cIidTVE9DSydcIiBbZmllbGRdPVwiJ2Ftb3VudEluU3RvY2snXCI+XHJcbiAgICAgICAgICA8bmctdGVtcGxhdGUgI3RlbXBsYXRlIGxldC1yb3c9XCJyb3dcIj5cclxuICAgICAgICAgICAgPGNvLWlucHV0LW51bWJlci1waWNrZXIgKGtleXVwLmVudGVyKT1cIm9wZW5EaWFsb2dDbGljayhyb3cpXCIgWyhtb2RlbCldPVwicm93WydhbW91bnRJblN0b2NrJ11cIj5cclxuXHJcbiAgICAgICAgICAgIDwvY28taW5wdXQtbnVtYmVyLXBpY2tlcj5cclxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgPC9jby1zaW1wbGUtZ3JpZC1jb2x1bW4+XHJcbiAgICAgICAgPGNvLXNpbXBsZS1ncmlkLWNvbHVtbiBbaGVhZGVyVGV4dF09XCInQUxMT0NBVEVEJ1wiIFtmaWVsZF09XCInYW1vdW50SW5TdG9ja0ZyZWUnXCI+PC9jby1zaW1wbGUtZ3JpZC1jb2x1bW4+XHJcbiAgICAgICAgPGNvLXNpbXBsZS1ncmlkLWNvbHVtbiBbaGVhZGVyVGV4dF09XCInQVZBSUxBQkxFX1NUT0NLJ1wiIFtmaWVsZF09XCIncGVyY2VwdGlibGVTdG9yYWdlJ1wiPjwvY28tc2ltcGxlLWdyaWQtY29sdW1uPlxyXG4gICAgICAgIDxjby1zaW1wbGUtZ3JpZC1jb2x1bW4gW2hlYWRlclRleHRdPVwiJ1BIWVNJQ0FMX1NUT0NLJ1wiIFtmaWVsZF09XCInYW1vdW50SW5TdG9ja09yaWdpbmFsJ1wiPjwvY28tc2ltcGxlLWdyaWQtY29sdW1uPlxyXG4gICAgICAgIDxjby1zaW1wbGUtZ3JpZC1jb2x1bW4gW2hlYWRlclRleHRdPVwiJ1ZBTFVUQSdcIiBbZmllbGRdPVwiJ2N1cnJlbmN5J1wiPjwvY28tc2ltcGxlLWdyaWQtY29sdW1uPlxyXG4gICAgICAgIDxjby1zaW1wbGUtZ3JpZC1jb2x1bW4gW2hlYWRlclRleHRdPVwiJ1BVUkNIQVNFX1BSSUNFJ1wiIFtmaWVsZF09XCIncHVyY2hhc2VQcmljZSdcIj48L2NvLXNpbXBsZS1ncmlkLWNvbHVtbj5cclxuICAgICAgICA8Y28tc2ltcGxlLWdyaWQtY29sdW1uIFtoZWFkZXJUZXh0XT1cIidTVVBQTElFUl9OVU1CRVInXCIgW2ZpZWxkXT1cIidzdXBwbGllck5vJ1wiPjwvY28tc2ltcGxlLWdyaWQtY29sdW1uPlxyXG4gICAgICAgIDxjby1zaW1wbGUtZ3JpZC1jb2x1bW4gW2hlYWRlclRleHRdPVwiJ1RSQU5TRkVSJ1wiIFtmaWVsZF09XCIndHJhbnNmZXInXCI+XHJcbiAgICAgICAgICA8bmctdGVtcGxhdGUgI3RlbXBsYXRlIGxldC1yb3c9XCJyb3dcIj5cclxuICAgICAgICAgICAgPGNvLWljb24gY2xhc3M9XCJtZW51LWljb25cIiBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb25zLkRlbGl2ZXJ5VHJ1Y2spXCIgKGNsaWNrKT1cImhhbmRsZVN0b2NrVHJhbnNmZXJDbGljayhyb3cpXCI+PC9jby1pY29uPlxyXG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICA8L2NvLXNpbXBsZS1ncmlkLWNvbHVtbj5cclxuICAgICAgICA8Y28tc2ltcGxlLWdyaWQtY29sdW1uIFtoZWFkZXJUZXh0XT1cIidTVElDS0VSJ1wiIFtmaWVsZF09XCInc3RpY2tlcidcIj5cclxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjdGVtcGxhdGUgbGV0LXJvdz1cInJvd1wiPlxyXG4gICAgICAgICAgICA8Y28taWNvbiBjbGFzcz1cIm1lbnUtaWNvblwiIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24oaWNvbnMuUHJpbnQpXCIgKGNsaWNrKT1cIm9wZW5TZW5kTWV0aG9kRGlhbG9nKClcIj48L2NvLWljb24+XHJcbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgIDwvY28tc2ltcGxlLWdyaWQtY29sdW1uPlxyXG4gICAgICA8L2NvLXNpbXBsZS1ncmlkPlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGNvLXN0b2NrLWNoYW5nZS1hbW91bnQgKm5nSWY9XCJzaG93Q2hhbmdlU3RvY2tEZXRhaWxzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbG9zZVN0b2NrQ2hhbmdlQW1vdW50KT1cInNob3dDaGFuZ2VTdG9ja0RldGFpbHMgPSBmYWxzZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc2VsZWN0ZWRBcnRpY2xlRGV0YWlsc0RhdGFdPVwic2VsZWN0ZWRBcnRpY2xlRGV0YWlsc0RhdGFcIlxyXG4gICAgPlxyXG4gICAgPC9jby1zdG9jay1jaGFuZ2UtYW1vdW50PlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJzdG9jay1ncmlkXCIgKm5nSWY9XCJzaG93U3RvY2tIaXN0b3J5XCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJzdG9jay1idXR0b24tbGVmdC1ncm91cFwiPlxyXG4gICAgICAgIDxzcGFuIGNsYXNzPVwic3RvY2stYnV0dG9uLWJhY2tcIiBbdGV4dENvbnRlbnRdPVwiJ0JBQ0tfVE9fU1RPQ0tfTElORVMnXCIgKGNsaWNrKT1cImJhY2tUb1N0b2NrSW5mb3JtYXRpb24oKVwiPjwvc3Bhbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxjby1zaW1wbGUtZ3JpZCBbZGF0YV09XCJzdG9ja0hpc3RvcnlJbmZvcm1hdGlvblwiXHJcbiAgICAgID5cclxuICAgICAgICA8Y28tc2ltcGxlLWdyaWQtY29sdW1uIFtoZWFkZXJUZXh0XT1cIidNVVRBVElPTl9EQVRFJ1wiIFtmaWVsZF09XCInbXV0YXRpb25EYXRlJ1wiPjwvY28tc2ltcGxlLWdyaWQtY29sdW1uPlxyXG4gICAgICAgIDxjby1zaW1wbGUtZ3JpZC1jb2x1bW4gW2hlYWRlclRleHRdPVwiJ01VVEFUSU9OX1RJTUUnXCIgW2ZpZWxkXT1cIidtdXRhdGlvblRpbWUnXCI+PC9jby1zaW1wbGUtZ3JpZC1jb2x1bW4+XHJcbiAgICAgICAgPGNvLXNpbXBsZS1ncmlkLWNvbHVtbiBbaGVhZGVyVGV4dF09XCInQU1PVU5UJ1wiIFtmaWVsZF09XCInYW1vdW50J1wiPjwvY28tc2ltcGxlLWdyaWQtY29sdW1uPlxyXG4gICAgICAgIDxjby1zaW1wbGUtZ3JpZC1jb2x1bW4gW2hlYWRlclRleHRdPVwiJ1dBUkVIT1VTRSdcIiBbZmllbGRdPVwiJ3dhcmVIb3VzZU5yJ1wiPjwvY28tc2ltcGxlLWdyaWQtY29sdW1uPlxyXG4gICAgICAgIDxjby1zaW1wbGUtZ3JpZC1jb2x1bW4gW2hlYWRlclRleHRdPVwiJ0xPQ0FUSU9OJ1wiIFtmaWVsZF09XCInbG9jYXRpb25OcidcIj48L2NvLXNpbXBsZS1ncmlkLWNvbHVtbj5cclxuICAgICAgICA8Y28tc2ltcGxlLWdyaWQtY29sdW1uIFtoZWFkZXJUZXh0XT1cIidUUkFOU0FDVElPTl9UWVBFJ1wiIFtmaWVsZF09XCIndHJhbnNUeXBlJ1wiPjwvY28tc2ltcGxlLWdyaWQtY29sdW1uPlxyXG4gICAgICAgIDxjby1zaW1wbGUtZ3JpZC1jb2x1bW4gW2hlYWRlclRleHRdPVwiJ0RPQ1VNRU5UX05VTUJFUidcIiBbZmllbGRdPVwiJ2RvY05yJ1wiPjwvY28tc2ltcGxlLWdyaWQtY29sdW1uPlxyXG4gICAgICAgIDxjby1zaW1wbGUtZ3JpZC1jb2x1bW4gW2hlYWRlclRleHRdPVwiJ0xJTkUnXCIgW2ZpZWxkXT1cIidwb3NMaW5lTnInXCI+PC9jby1zaW1wbGUtZ3JpZC1jb2x1bW4+XHJcbiAgICAgICAgPGNvLXNpbXBsZS1ncmlkLWNvbHVtbiBbaGVhZGVyVGV4dF09XCInU1RPQ0tfU1RBVEUnXCIgW2ZpZWxkXT1cIidzdG9ja1N0YXRlSWQnXCI+PC9jby1zaW1wbGUtZ3JpZC1jb2x1bW4+XHJcbiAgICAgICAgPGNvLXNpbXBsZS1ncmlkLWNvbHVtbiBbaGVhZGVyVGV4dF09XCInU1RPQ0tfUkVNQVJLJ1wiIFtmaWVsZF09XCInc3RvY2tTdGF0ZVJlbWFya0lkJ1wiPjwvY28tc2ltcGxlLWdyaWQtY29sdW1uPlxyXG4gICAgICAgIDxjby1zaW1wbGUtZ3JpZC1jb2x1bW4gW2hlYWRlclRleHRdPVwiJ1ZBTFVUQSdcIiBbZmllbGRdPVwiJ2N1cnJlbmN5Q29kZSdcIj48L2NvLXNpbXBsZS1ncmlkLWNvbHVtbj5cclxuICAgICAgICA8Y28tc2ltcGxlLWdyaWQtY29sdW1uIFtoZWFkZXJUZXh0XT1cIidSRUxBVElPTl9JRCdcIiBbZmllbGRdPVwiJ3JlbGF0aW9uSWQnXCI+PC9jby1zaW1wbGUtZ3JpZC1jb2x1bW4+XHJcbiAgICAgICAgPGNvLXNpbXBsZS1ncmlkLWNvbHVtbiBbaGVhZGVyVGV4dF09XCInVVNFUidcIiBbZmllbGRdPVwiJ3VzZXInXCI+PC9jby1zaW1wbGUtZ3JpZC1jb2x1bW4+XHJcbiAgICAgICAgPGNvLXNpbXBsZS1ncmlkLWNvbHVtbiBbaGVhZGVyVGV4dF09XCInTVVUQVRJT05fVFlQRSdcIiBbZmllbGRdPVwiJ211dGF0aW9uVHlwZSdcIj48L2NvLXNpbXBsZS1ncmlkLWNvbHVtbj5cclxuICAgICAgICA8Y28tc2ltcGxlLWdyaWQtY29sdW1uIFtoZWFkZXJUZXh0XT1cIidTVElDS0VSJ1wiIFtmaWVsZF09XCInc3RpY2tlcidcIj5cclxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjdGVtcGxhdGUgbGV0LXJvdz1cInJvd1wiPlxyXG4gICAgICAgICAgICA8Y28taWNvbiBjbGFzcz1cIm1lbnUtaWNvblwiIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24oaWNvbnMuUHJpbnQpXCIgKGNsaWNrKT1cIm9wZW5TZW5kTWV0aG9kRGlhbG9nKClcIj48L2NvLWljb24+XHJcbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgIDwvY28tc2ltcGxlLWdyaWQtY29sdW1uPlxyXG4gICAgICA8L2NvLXNpbXBsZS1ncmlkPlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cInN0b2NrLWJ1dHRvbi10b29sYmFyXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJzdG9jay1idXR0b24tbGVmdC1ncm91cFwiPlxyXG4gICAgICAgIDxjby1idXR0b24gW2xhYmVsXT1cIidISVNUT1JZJ1wiIChjbGljayk9XCJoYW5kbGVIaXN0b3J5Q2xpY2soKVwiPjwvY28tYnV0dG9uPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cInN0b2NrLWJ1dHRvbi1taWRkbGUtZ3JvdXBcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiYnV0dG9uLWxlZnRcIj5cclxuICAgICAgICAgIDxjby1idXR0b24gW3RleHRDb250ZW50XT1cIidPaydcIiAoY2xpY2spPVwib25Pa0NsaWNrKClcIj48L2NvLWJ1dHRvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiYnV0dG9uLXJpZ2h0XCI+XHJcbiAgICAgICAgICA8Y28tYnV0dG9uIFt0ZXh0Q29udGVudF09XCInQW5udWxlcmVuJ1wiIChjbGljayk9XCJvbkNhbmNlbENsaWNrKClcIj48L2NvLWJ1dHRvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxpb25lLXNlbmQtbWV0aG9kLWRpYWxvZ1xyXG4gICAgICAqbmdJZj1cInNob3dTZW5kTWV0aG9kRGlhbG9nXCJcclxuICAgICAgW3Nob3dEaWFsb2ddPVwic2hvd1NlbmRNZXRob2REaWFsb2dcIlxyXG4gICAgICAocHJpbnRCdXR0b25DbGlja2VkKT1cInByaW50U3RvY2tTdGlja2VycygpXCJcclxuICAgID48L2lvbmUtc2VuZC1tZXRob2QtZGlhbG9nPlxyXG4gIGAsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU3RvY2tJbmZvcm1hdGlvbkdyaWRDb21wb25lbnQge1xyXG4gIHB1YmxpYyByZWFkb25seSBpY29uczogdHlwZW9mIEljb24gPSBJY29uO1xyXG5cclxuICBAVmlld0NoaWxkKFN0b2NrSW5mb3JtYXRpb25HcmlkQ29tcG9uZW50KVxyXG4gIHB1YmxpYyBzdG9jazogU3RvY2tJbmZvcm1hdGlvbkdyaWRDb21wb25lbnQ7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGFydGljbGVTdG9ja0luZm9ybWF0aW9uOiBBcnRpY2xlU3RvY2tCb1tdO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzdG9ja0xvY2F0aW9uRGF0YTogQXJ0aWNsZVN0b2NrQm9bXTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc3RvY2tIaXN0b3J5SW5mb3JtYXRpb246IFN0b2NrSGlzdG9yeUJvW107XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyByZWFkb25seSB0cmFuc2Zlckljb25DbGlja2VkOiBFdmVudEVtaXR0ZXI8QXJ0aWNsZVN0b2NrQm8+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgcmVhZG9ubHkgaGlzdG9yeUNsaWNrZWQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBwdWJsaWMgaW1hZ2U6IHN0cmluZztcclxuICBwdWJsaWMgc2hvdzogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyBoaWRlT3JTaG93TG9jYXRpb25UYWI6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgc2hvd1N0b2NrSGlzdG9yeTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyBzaG93U2VuZE1ldGhvZERpYWxvZzogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBwdWJsaWMgaW5PcmRlckluZm9ybWF0aW9uOiBTdG9ja0hpc3RvcnlCb1tdO1xyXG4gIHB1YmxpYyBvcmRlckluZm9ybWF0aW9uOiBTdG9ja0hpc3RvcnlCb1tdXHJcbiAgcHVibGljIGhpZGVPclNob3dUYWJzOiBib29sZWFuID0gdHJ1ZTtcclxuICBwdWJsaWMgZGF0YVdhcmVIb3VzZUNvZGU6IFN0b2NrTWFuYWdlbWVudFdhcmVob3VzZXNbXTtcclxuICBwdWJsaWMgZGF0YVdhcmVIb3VzZUZpZWxkczogQ29Ecm9wRG93bkxpc3RGaWVsZHMgPSB7IHRleHQ6IFwid2FyZWhvdXNlRGVzY3JpcHRpb25cIiwgdmFsdWU6IFwid2FyZWhvdXNlTm9cIiB9O1xyXG4gIHB1YmxpYyBzZWxlY3RlZFdhcmVob3VzZTogYW55O1xyXG4gIHB1YmxpYyBhcnRpY2xlU3RvY2tTZWFyY2hJbmZvOiBBcnRpY2xlU3RvY2sgPSBuZXcgQXJ0aWNsZVN0b2NrKCk7XHJcbiAgcHVibGljIHByaW50U3RpY2tlcjogUHJpbnRTdG9ja1N0aWNrZXJzO1xyXG4gIHB1YmxpYyBhcnRpY2xlRGV0YWlsczogQXJ0aWNsZURldGFpbHNCb1tdO1xyXG4gIHB1YmxpYyBzZWxlY3RlZEFydGljbGVEZXRhaWxzRGF0YTogQXJ0aWNsZURldGFpbHNCbztcclxuICBwdWJsaWMgc2hvd0NoYW5nZVN0b2NrRGV0YWlsczogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyBhcnRpY2xlRGV0YWlsc0luZm9ybWF0aW9uOiBBcnRpY2xlU3RvY2tNYW5hZ2VtZW50ID0gbmV3IEFydGljbGVTdG9ja01hbmFnZW1lbnQoKVxyXG5cclxuICBwdWJsaWMgdGFiczogc3RyaW5nW10gPSBbXHJcbiAgICBcIlNUT0NLXCIsXHJcbiAgICBcIklOX09SREVSMlwiLFxyXG4gICAgXCJPUkRFUlMxXCJcclxuICBdO1xyXG4gIHB1YmxpYyBhY3RpdmVUYWI6IHN0cmluZyA9IHRoaXMudGFic1swXTtcclxuXHJcbiAgcHVibGljIGdldCBhY3RpdmVUYWJUZXh0KCk6IHN0cmluZyB7XHJcbiAgICBzd2l0Y2ggKHRoaXMuYWN0aXZlVGFiKSB7XHJcbiAgICAgIGNhc2UgdGhpcy50YWJzWzBdOlxyXG4gICAgICAgIHJldHVybiBcIlZvb3JyYWFkcmVnZWxzXCI7XHJcbiAgICAgIGNhc2UgdGhpcy50YWJzWzFdOlxyXG4gICAgICAgIHJldHVybiBcIkdldm9uZGVuIGluIG9yZGVyKHMpXCI7XHJcbiAgICAgIGNhc2UgdGhpcy50YWJzWzJdOlxyXG4gICAgICAgIHJldHVybiBcIkdldm9uZGVuIGluIGJlc3RlbGxpbmdlblwiO1xyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIHJldHVybiBcIlZvb3JyYWFkbG9jYXRpZSByZWdlbHNcIjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIGljb25DYWNoZVNlcnZpY2U6IEljb25DYWNoZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9zdG9ja1NlcnZpY2U6IFN0b2NrU2VydmljZSxcclxuICApIHtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVUYWJDbGljayh0YWJEYXRhKTogdm9pZCB7XHJcbiAgICBjb25zb2xlLmxvZyh0YWJEYXRhKTtcclxuICAgIHRoaXMuYWN0aXZlVGFiID0gdGFiRGF0YTtcclxuICAgIGlmICh0aGlzLmFjdGl2ZVRhYiA9PT0gXCJJTl9PUkRFUjJcIikge1xyXG4gICAgICB0aGlzLmdldEluT3JkZXJEYXRhKCk7XHJcbiAgICB9IGlmICh0aGlzLmFjdGl2ZVRhYiA9PT0gXCJPUkRFUlMxXCIpIHtcclxuICAgICAgdGhpcy5nZXRPcmRlckRhdGEoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBvbkxvY2F0aW9uQ2xpY2soZGF0YTogQXJ0aWNsZVN0b2NrQm8pOiB2b2lkIHtcclxuICAgIHRoaXMuYXJ0aWNsZVN0b2NrU2VhcmNoSW5mby5nb29kSWQgPSBkYXRhLmdvb2RJZC50b1N0cmluZygpO1xyXG4gICAgdGhpcy5hcnRpY2xlU3RvY2tTZWFyY2hJbmZvLndhcmVIb3VzZU5vID0gZGF0YS53YXJlaG91c2VOby50b1N0cmluZygpO1xyXG4gICAgdGhpcy5hcnRpY2xlU3RvY2tTZWFyY2hJbmZvLnZpZXdLaW5kID0gXCJEXCI7XHJcbiAgICBpZiAoIXRoaXMuZGF0YVdhcmVIb3VzZUNvZGUpIHtcclxuICAgICAgdGhpcy5nZXRTdG9ja01hbmFnZW1lbnRXYXJlaG91c2VzKGRhdGEpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5nZXRBcnRpY2xlRGV0YWlscyhkYXRhKTtcclxuICAgIHRoaXMuaGlkZU9yU2hvd1RhYnMgPSBmYWxzZTtcclxuICAgIHRoaXMuaGlkZU9yU2hvd0xvY2F0aW9uVGFiID0gdHJ1ZTtcclxuICAgIGNvbnNvbGUubG9nKHRoaXMuYXJ0aWNsZURldGFpbHNJbmZvcm1hdGlvbilcclxuICAgIHRoaXMuX3N0b2NrU2VydmljZS5sb2NrQXJ0aWNsZURldGFpbHModGhpcy5hcnRpY2xlRGV0YWlsc0luZm9ybWF0aW9uKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVIaXN0b3J5Q2xpY2soKTogdm9pZCB7XHJcbiAgICB0aGlzLmhpc3RvcnlDbGlja2VkLmVtaXQoKVxyXG4gICAgdGhpcy5oaWRlT3JTaG93TG9jYXRpb25UYWIgPSBmYWxzZTtcclxuICAgIHRoaXMuc2hvd0NoYW5nZVN0b2NrRGV0YWlscyA9IGZhbHNlO1xyXG4gICAgdGhpcy5oaWRlT3JTaG93VGFicyA9IGZhbHNlO1xyXG4gICAgdGhpcy5zaG93U3RvY2tIaXN0b3J5ID0gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBiYWNrVG9TdG9ja0luZm9ybWF0aW9uKCk6IHZvaWQge1xyXG4gICAgdGhpcy5zaG93U3RvY2tIaXN0b3J5ID0gZmFsc2U7XHJcbiAgICB0aGlzLmhpZGVPclNob3dUYWJzID0gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVTdG9ja1RyYW5zZmVyQ2xpY2soZXZlbnQpOiB2b2lkIHtcclxuICAgIHRoaXMudHJhbnNmZXJJY29uQ2xpY2tlZC5lbWl0KGV2ZW50KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBoYW5kbGVCYWNrVG9TdG9ja0NsaWNrKCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgdGhpcy5hY3RpdmVUYWIgPSB0aGlzLnRhYnNbMF07XHJcbiAgICB0aGlzLmhpZGVPclNob3dUYWJzID0gdHJ1ZTtcclxuICAgIHRoaXMuaGlkZU9yU2hvd0xvY2F0aW9uVGFiID0gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb3BlblNlbmRNZXRob2REaWFsb2coKTogdm9pZCB7XHJcbiAgICB0aGlzLnNob3dTZW5kTWV0aG9kRGlhbG9nID0hIHRoaXMuc2hvd1NlbmRNZXRob2REaWFsb2c7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcHJpbnRTdG9ja1N0aWNrZXJzKCk6IHZvaWQge1xyXG4gICAgdGhpcy5wcmludFN0aWNrZXIgPSBuZXcgUHJpbnRTdG9ja1N0aWNrZXJzKCk7XHJcbiAgICB0aGlzLnByaW50U3RpY2tlci5nb29kSWQgPSAxMDtcclxuICAgIC8vIHRoaXMuX3N0b2NrU2VydmljZS5nZXRQcmludFN0b2NrU3RpY2tlcnModGhpcy5wcmludFN0aWNrZXIpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uT2tDbGljaygpOiB2b2lkIHtcclxuXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25DYW5jZWxDbGljaygpOiB2b2lkIHtcclxuXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb3BlbkRpYWxvZ0NsaWNrKGRhdGEpOiB2b2lkIHtcclxuICAgIHRoaXMuc2VsZWN0ZWRBcnRpY2xlRGV0YWlsc0RhdGEgPSBkYXRhO1xyXG4gICAgdGhpcy5zaG93Q2hhbmdlU3RvY2tEZXRhaWxzID0gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRBcnRpY2xlRGV0YWlscyhkYXRhOiBhbnkpOiB2b2lkIHtcclxuICAgIC8vIGNvbnN0IGluZm8gPSBuZXcgQXJ0aWNsZVN0b2NrTWFuYWdlbWVudCgpO1xyXG4gICAgdGhpcy5hcnRpY2xlRGV0YWlsc0luZm9ybWF0aW9uLmdvb2RJZCA9IGRhdGEuZ29vZElkO1xyXG4gICAgdGhpcy5hcnRpY2xlRGV0YWlsc0luZm9ybWF0aW9uLmxpbmVJZCA9IGRhdGEubGluZUlkO1xyXG4gICAgdGhpcy5hcnRpY2xlRGV0YWlsc0luZm9ybWF0aW9uLndhcmVob3VzZU51bWJlciA9IGRhdGEud2FyZWhvdXNlTm87XHJcbiAgICB0aGlzLl9zdG9ja1NlcnZpY2UuZ2V0QXJ0aWNsZURldGFpbHModGhpcy5hcnRpY2xlRGV0YWlsc0luZm9ybWF0aW9uKS50aGVuKChkZXRhaWxzKSA9PiB7XHJcbiAgICAgIHRoaXMuYXJ0aWNsZURldGFpbHMgPSBkZXRhaWxzO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0U3RvY2tNYW5hZ2VtZW50V2FyZWhvdXNlcyhkYXRhOiBBcnRpY2xlU3RvY2tCbyk6IHZvaWQge1xyXG4gICAgdGhpcy5fc3RvY2tTZXJ2aWNlLmdldFN0b2NrTWFuYWdlbWVudFdhcmVob3VzZXMoKS50aGVuKCh3YXJlaG91c2VzKSA9PiB7XHJcbiAgICAgIHRoaXMuZGF0YVdhcmVIb3VzZUNvZGUgPSB3YXJlaG91c2VzO1xyXG4gICAgICB0aGlzLnNlbGVjdGVkV2FyZWhvdXNlID0gZGF0YS53YXJlaG91c2VObztcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25TZWxlY3RXYXJlaG91c2UoZXZlbnQpOiB2b2lkIHtcclxuICAgIHRoaXMuYXJ0aWNsZURldGFpbHNJbmZvcm1hdGlvbi53YXJlaG91c2VOdW1iZXIgPSBldmVudDtcclxuICAgIGNvbnNvbGUubG9nKGV2ZW50KTtcclxuICAgIGlmICh0aGlzLmRhdGFXYXJlSG91c2VDb2RlICE9IG51bGwpIHtcclxuICAgICAgdGhpcy5fc3RvY2tTZXJ2aWNlLmdldEFydGljbGVEZXRhaWxzKHRoaXMuYXJ0aWNsZURldGFpbHNJbmZvcm1hdGlvbikudGhlbigoZGV0YWlscykgPT4ge1xyXG4gICAgICAgIHRoaXMuYXJ0aWNsZURldGFpbHMgPSBkZXRhaWxzO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgZ2V0SW5PcmRlckRhdGEoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBjb25zdCBpbk9yZGVyRGF0YTogR2V0U3RvY2tIaXN0b3J5UmVxdWVzdCA9IG5ldyBHZXRTdG9ja0hpc3RvcnlSZXF1ZXN0KCk7XHJcbiAgICBpbk9yZGVyRGF0YS50eXBlID0gXCJPXCI7XHJcbiAgICBpbk9yZGVyRGF0YS5nb29kSWQgPSB0aGlzLmFydGljbGVTdG9ja0luZm9ybWF0aW9uWzBdLmdvb2RJZC50b1N0cmluZygpO1xyXG4gICAgLy8gaW5PcmRlckRhdGEud2FyZUhvdXNlTnIgPSBOdW1iZXIodGhpcy5hcnRpY2xlU3RvY2tJbmZvcm1hdGlvblswXS53YXJlaG91c2VObyk7XHJcbiAgICB0aGlzLmluT3JkZXJJbmZvcm1hdGlvbiA9IGF3YWl0IHRoaXMuX3N0b2NrU2VydmljZS5nZXRTdG9ja0hpc3RvcnkoaW5PcmRlckRhdGEpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGdldE9yZGVyRGF0YSgpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGNvbnN0IGluT3JkZXJEYXRhOiBHZXRTdG9ja0hpc3RvcnlSZXF1ZXN0ID0gbmV3IEdldFN0b2NrSGlzdG9yeVJlcXVlc3QoKTtcclxuICAgIGluT3JkZXJEYXRhLnR5cGUgPSBcIkJcIjtcclxuICAgIGluT3JkZXJEYXRhLmdvb2RJZCA9IHRoaXMuYXJ0aWNsZVN0b2NrSW5mb3JtYXRpb25bMF0uZ29vZElkLnRvU3RyaW5nKCk7XHJcbiAgICAvLyBpbk9yZGVyRGF0YS53YXJlSG91c2VOciA9IE51bWJlcih0aGlzLmFydGljbGVTdG9ja0luZm9ybWF0aW9uWzBdLndhcmVob3VzZU5vKTtcclxuICAgIHRoaXMub3JkZXJJbmZvcm1hdGlvbiA9IGF3YWl0IHRoaXMuX3N0b2NrU2VydmljZS5nZXRTdG9ja0hpc3RvcnkoaW5PcmRlckRhdGEpO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,23 +1,15 @@
1
1
  import { Component, EventEmitter, Input, Output, ViewEncapsulation } from "@angular/core";
2
+ import { StockService } from "../../../service/stock.service";
2
3
  export class StockLocationComponent {
3
- constructor() {
4
+ constructor(_stockService) {
5
+ this._stockService = _stockService;
4
6
  this.backToStockLines = new EventEmitter();
5
- this.MAX_GRID_ROWS = 10;
6
7
  this.stockLocationColumns = [];
7
- this.stockLocation = [
8
- { location: "title 1", batch: "1", serieNo: "1", amountInStock: "1", allocated: "1", amountAvailable: "1" },
9
- { location: "title 2", amountInStock: "2" },
10
- { location: "title 3", amountInStock: "3" },
11
- { location: "title 4", amountInStock: "4" },
12
- { location: "title 5", amountInStock: "5" },
13
- ];
14
8
  this.stockLocationColumns.push({ field: "location", headerText: "WAREHOUSE", editType: "none" }, { field: "batch", headerText: "BATCH" }, { field: "serieNo", headerText: "SERIAL_NO" }, { field: "amountInStock", headerText: "STOCK", textAlign: "Right", editType: "numericEdit" }, { field: "allocated", headerText: "ALLOCATED", textAlign: "Right" }, { field: "amountAvailable", headerText: "AVAILABLE_STOCK", textAlign: "Right" }, { field: "PhysicalStock", headerText: "PHYSICAL_STOCK", textAlign: "Right" }, { field: "Valuta", headerText: "VALUTA", textAlign: "Right" }, { field: "PurchasePrice", headerText: "PURSCHASE_PRICE", textAlign: "Right" }, { field: "SupplierNo", headerText: "SUPPLIER_NO", textAlign: "Right" }, { field: "Transfer", headerText: "TRANSFER" }, { field: "sticker", headerText: "STICKER" });
15
9
  }
16
10
  backToStockInformation() {
17
11
  this.backToStockLines.emit();
18
12
  }
19
- onStickerClick(event) {
20
- }
21
13
  onOkClick() {
22
14
  }
23
15
  onCancelClick() {
@@ -60,9 +52,11 @@ StockLocationComponent.decorators = [
60
52
  encapsulation: ViewEncapsulation.None
61
53
  },] }
62
54
  ];
63
- StockLocationComponent.ctorParameters = () => [];
55
+ StockLocationComponent.ctorParameters = () => [
56
+ { type: StockService }
57
+ ];
64
58
  StockLocationComponent.propDecorators = {
65
59
  stockLocationInformation: [{ type: Input }],
66
60
  backToStockLines: [{ type: Output }]
67
61
  };
68
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvY2stbG9jYXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvc3RvY2svc3RvY2stbG9jYXRpb24vc3RvY2stbG9jYXRpb24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFxQ3hGLE1BQU0sT0FBTyxzQkFBc0I7SUFxQmpDO1FBZk8scUJBQWdCLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFFaEQsa0JBQWEsR0FBVyxFQUFFLENBQUM7UUFFcEMseUJBQW9CLEdBQVUsRUFBRSxDQUFDO1FBR2pDLGtCQUFhLEdBQWE7WUFDL0IsRUFBQyxRQUFRLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxhQUFhLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsZUFBZSxFQUFFLEdBQUcsRUFBQztZQUN6RyxFQUFDLFFBQVEsRUFBRSxTQUFTLEVBQUUsYUFBYSxFQUFFLEdBQUcsRUFBQztZQUN6QyxFQUFDLFFBQVEsRUFBRSxTQUFTLEVBQUUsYUFBYSxFQUFFLEdBQUcsRUFBQztZQUN6QyxFQUFDLFFBQVEsRUFBRSxTQUFTLEVBQUUsYUFBYSxFQUFFLEdBQUcsRUFBQztZQUN6QyxFQUFDLFFBQVEsRUFBRSxTQUFTLEVBQUUsYUFBYSxFQUFFLEdBQUcsRUFBQztTQUMxQyxDQUFDO1FBSUEsSUFBSSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FDNUIsRUFBQyxLQUFLLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBQyxFQUM5RCxFQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBQyxFQUNyQyxFQUFDLEtBQUssRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBQyxFQUMzQyxFQUFDLEtBQUssRUFBRSxlQUFlLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxhQUFhLEVBQUMsRUFDMUYsRUFBQyxLQUFLLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBQyxFQUNqRSxFQUFDLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxVQUFVLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBQyxFQUM3RSxFQUFDLEtBQUssRUFBRSxlQUFlLEVBQUUsVUFBVSxFQUFFLGdCQUFnQixFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUMsRUFDMUUsRUFBQyxLQUFLLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBQyxFQUMzRCxFQUFDLEtBQUssRUFBRSxlQUFlLEVBQUUsVUFBVSxFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUMsRUFDM0UsRUFBQyxLQUFLLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxhQUFhLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBQyxFQUNwRSxFQUFDLEtBQUssRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBQyxFQUMzQyxFQUFDLEtBQUssRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBQyxDQUMxQyxDQUFDO0lBQ0osQ0FBQztJQUVNLHNCQUFzQjtRQUMzQixJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUVNLGNBQWMsQ0FBQyxLQUFLO0lBRTNCLENBQUM7SUFFTSxTQUFTO0lBRWhCLENBQUM7SUFFTSxhQUFhO0lBRXBCLENBQUM7SUFFTSxpQkFBaUIsQ0FBQyxLQUFLO0lBRTlCLENBQUM7OztZQTFGRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLG1CQUFtQjtnQkFDN0IsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBNEJUO2dCQUNELGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2FBQ3RDOzs7O3VDQUdFLEtBQUs7K0JBR0wsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge0FydGljbGVTdG9ja0JvfSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1zdG9jay5ib1wiO1xyXG5pbXBvcnQge0FydGljbGVTdG9ja30gZnJvbSBcIkBjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtc3RvY2tcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcImNvLXN0b2NrLWxvY2F0aW9uXCIsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxkaXYgY2xhc3M9XCJzdG9jay1sb2NhdGlvbi13cmFwcGVyXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJidXR0b25zLXdyYXBwZXJcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwic3RvY2stYnV0dG9uLWxlZnQtZ3JvdXBcIj5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3RvY2stYnV0dG9uLWJhY2tcIiBbdGV4dENvbnRlbnRdPVwiJ0JBQ0tfVE9fU1RPQ0tfTElORVMnXCIgKGNsaWNrKT1cImJhY2tUb1N0b2NrSW5mb3JtYXRpb24oKVwiPjwvc3Bhbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZHJvcGRvd24td3JhcHBlclwiPlxyXG4gICAgICAgICAgPGNvLWRyb3AtZG93bi1saXN0XHJcbiAgICAgICAgICAgIFtjb2xsZWN0aW9uXT1cImFsbFdhcmVob3VzZXNcIlxyXG4gICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ1dBUkVIT1VTRVMnXCJcclxuICAgICAgICAgICAgKG1vZGVsQ2hhbmdlKT1cIm9uU2VsZWN0V2FyZWhvdXNlKCRldmVudClcIlxyXG4gICAgICAgICAgPjwvY28tZHJvcC1kb3duLWxpc3Q+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPGRpdiBjbGFzcz1cInN0b2NrLWdyaWRcIj5cclxuXHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiYnV0dG9uLXdyYXBwZXJcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiYnV0dG9uLWxlZnRcIj5cclxuICAgICAgICAgIDxjby1idXR0b24gKGNsaWNrKT1cIm9uT2tDbGljaygpXCI+PC9jby1idXR0b24+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImJ1dHRvbi1yaWdodFwiPlxyXG4gICAgICAgICAgPGNvLWJ1dHRvbiAoY2xpY2spPVwib25DYW5jZWxDbGljaygpXCI+PC9jby1idXR0b24+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcblxyXG4gIGAsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU3RvY2tMb2NhdGlvbkNvbXBvbmVudCB7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHN0b2NrTG9jYXRpb25JbmZvcm1hdGlvbjogQXJ0aWNsZVN0b2NrO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgYmFja1RvU3RvY2tMaW5lczogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIHB1YmxpYyByZWFkb25seSBNQVhfR1JJRF9ST1dTOiBudW1iZXIgPSAxMDtcclxuXHJcbiAgcHVibGljIHN0b2NrTG9jYXRpb25Db2x1bW5zOiBhbnlbXSA9IFtdO1xyXG4gIHB1YmxpYyBhbGxXYXJlaG91c2VzOiBhbnk7XHJcblxyXG4gIHB1YmxpYyBzdG9ja0xvY2F0aW9uOiBPYmplY3RbXSA9IFtcclxuICAgIHtsb2NhdGlvbjogXCJ0aXRsZSAxXCIsIGJhdGNoOiBcIjFcIiwgc2VyaWVObzogXCIxXCIsIGFtb3VudEluU3RvY2s6IFwiMVwiLCBhbGxvY2F0ZWQ6IFwiMVwiLCBhbW91bnRBdmFpbGFibGU6IFwiMVwifSxcclxuICAgIHtsb2NhdGlvbjogXCJ0aXRsZSAyXCIsIGFtb3VudEluU3RvY2s6IFwiMlwifSxcclxuICAgIHtsb2NhdGlvbjogXCJ0aXRsZSAzXCIsIGFtb3VudEluU3RvY2s6IFwiM1wifSxcclxuICAgIHtsb2NhdGlvbjogXCJ0aXRsZSA0XCIsIGFtb3VudEluU3RvY2s6IFwiNFwifSxcclxuICAgIHtsb2NhdGlvbjogXCJ0aXRsZSA1XCIsIGFtb3VudEluU3RvY2s6IFwiNVwifSxcclxuICBdO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICApIHtcclxuICAgIHRoaXMuc3RvY2tMb2NhdGlvbkNvbHVtbnMucHVzaChcclxuICAgICAge2ZpZWxkOiBcImxvY2F0aW9uXCIsIGhlYWRlclRleHQ6IFwiV0FSRUhPVVNFXCIsIGVkaXRUeXBlOiBcIm5vbmVcIn0sXHJcbiAgICAgIHtmaWVsZDogXCJiYXRjaFwiLCBoZWFkZXJUZXh0OiBcIkJBVENIXCJ9LFxyXG4gICAgICB7ZmllbGQ6IFwic2VyaWVOb1wiLCBoZWFkZXJUZXh0OiBcIlNFUklBTF9OT1wifSxcclxuICAgICAge2ZpZWxkOiBcImFtb3VudEluU3RvY2tcIiwgaGVhZGVyVGV4dDogXCJTVE9DS1wiLCB0ZXh0QWxpZ246IFwiUmlnaHRcIiwgZWRpdFR5cGU6IFwibnVtZXJpY0VkaXRcIn0sXHJcbiAgICAgIHtmaWVsZDogXCJhbGxvY2F0ZWRcIiwgaGVhZGVyVGV4dDogXCJBTExPQ0FURURcIiwgdGV4dEFsaWduOiBcIlJpZ2h0XCJ9LFxyXG4gICAgICB7ZmllbGQ6IFwiYW1vdW50QXZhaWxhYmxlXCIsIGhlYWRlclRleHQ6IFwiQVZBSUxBQkxFX1NUT0NLXCIsIHRleHRBbGlnbjogXCJSaWdodFwifSxcclxuICAgICAge2ZpZWxkOiBcIlBoeXNpY2FsU3RvY2tcIiwgaGVhZGVyVGV4dDogXCJQSFlTSUNBTF9TVE9DS1wiLCB0ZXh0QWxpZ246IFwiUmlnaHRcIn0sXHJcbiAgICAgIHtmaWVsZDogXCJWYWx1dGFcIiwgaGVhZGVyVGV4dDogXCJWQUxVVEFcIiwgdGV4dEFsaWduOiBcIlJpZ2h0XCJ9LFxyXG4gICAgICB7ZmllbGQ6IFwiUHVyY2hhc2VQcmljZVwiLCBoZWFkZXJUZXh0OiBcIlBVUlNDSEFTRV9QUklDRVwiLCB0ZXh0QWxpZ246IFwiUmlnaHRcIn0sXHJcbiAgICAgIHtmaWVsZDogXCJTdXBwbGllck5vXCIsIGhlYWRlclRleHQ6IFwiU1VQUExJRVJfTk9cIiwgdGV4dEFsaWduOiBcIlJpZ2h0XCJ9LFxyXG4gICAgICB7ZmllbGQ6IFwiVHJhbnNmZXJcIiwgaGVhZGVyVGV4dDogXCJUUkFOU0ZFUlwifSxcclxuICAgICAge2ZpZWxkOiBcInN0aWNrZXJcIiwgaGVhZGVyVGV4dDogXCJTVElDS0VSXCJ9LFxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBiYWNrVG9TdG9ja0luZm9ybWF0aW9uKCk6IHZvaWQge1xyXG4gICAgdGhpcy5iYWNrVG9TdG9ja0xpbmVzLmVtaXQoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvblN0aWNrZXJDbGljayhldmVudCk6IHZvaWQge1xyXG5cclxuICB9XHJcblxyXG4gIHB1YmxpYyBvbk9rQ2xpY2soKTogdm9pZCB7XHJcblxyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uQ2FuY2VsQ2xpY2soKTogdm9pZCB7XHJcblxyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uU2VsZWN0V2FyZWhvdXNlKGV2ZW50KTogdm9pZCB7XHJcblxyXG4gIH1cclxufVxyXG4iXX0=
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvY2stbG9jYXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvc3RvY2svc3RvY2stbG9jYXRpb24vc3RvY2stbG9jYXRpb24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZ0IsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLGlCQUFpQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRXZHLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQW1DNUQsTUFBTSxPQUFPLHNCQUFzQjtJQVlqQyxZQUNVLGFBQTJCO1FBQTNCLGtCQUFhLEdBQWIsYUFBYSxDQUFjO1FBUDlCLHFCQUFnQixHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBSXpELHlCQUFvQixHQUFVLEVBQUUsQ0FBQztRQUt0QyxJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUM1QixFQUFDLEtBQUssRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFDLEVBQzlELEVBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFDLEVBQ3JDLEVBQUMsS0FBSyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFDLEVBQzNDLEVBQUMsS0FBSyxFQUFFLGVBQWUsRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLGFBQWEsRUFBQyxFQUMxRixFQUFDLEtBQUssRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFDLEVBQ2pFLEVBQUMsS0FBSyxFQUFFLGlCQUFpQixFQUFFLFVBQVUsRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFDLEVBQzdFLEVBQUMsS0FBSyxFQUFFLGVBQWUsRUFBRSxVQUFVLEVBQUUsZ0JBQWdCLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBQyxFQUMxRSxFQUFDLEtBQUssRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFDLEVBQzNELEVBQUMsS0FBSyxFQUFFLGVBQWUsRUFBRSxVQUFVLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBQyxFQUMzRSxFQUFDLEtBQUssRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLGFBQWEsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFDLEVBQ3BFLEVBQUMsS0FBSyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFDLEVBQzNDLEVBQUMsS0FBSyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFDLENBQzFDLENBQUM7SUFDSixDQUFDO0lBRU0sc0JBQXNCO1FBQzNCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUMvQixDQUFDO0lBRU0sU0FBUztJQUVoQixDQUFDO0lBRU0sYUFBYTtJQUVwQixDQUFDO0lBRU0saUJBQWlCLENBQUMsS0FBSztJQUU5QixDQUFDOzs7WUE5RUYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxtQkFBbUI7Z0JBQzdCLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTRCVDtnQkFDRCxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTthQUN0Qzs7O1lBbENPLFlBQVk7Ozt1Q0FxQ2pCLEtBQUs7K0JBR0wsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge0FydGljbGVTdG9ja30gZnJvbSBcIkBjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtc3RvY2tcIjtcclxuaW1wb3J0IHtTdG9ja1NlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi9zZXJ2aWNlL3N0b2NrLnNlcnZpY2VcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcImNvLXN0b2NrLWxvY2F0aW9uXCIsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxkaXYgY2xhc3M9XCJzdG9jay1sb2NhdGlvbi13cmFwcGVyXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJidXR0b25zLXdyYXBwZXJcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwic3RvY2stYnV0dG9uLWxlZnQtZ3JvdXBcIj5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3RvY2stYnV0dG9uLWJhY2tcIiBbdGV4dENvbnRlbnRdPVwiJ0JBQ0tfVE9fU1RPQ0tfTElORVMnXCIgKGNsaWNrKT1cImJhY2tUb1N0b2NrSW5mb3JtYXRpb24oKVwiPjwvc3Bhbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZHJvcGRvd24td3JhcHBlclwiPlxyXG4gICAgICAgICAgPGNvLWRyb3AtZG93bi1saXN0XHJcbiAgICAgICAgICAgIFtjb2xsZWN0aW9uXT1cImFsbFdhcmVob3VzZXNcIlxyXG4gICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ1dBUkVIT1VTRVMnXCJcclxuICAgICAgICAgICAgKG1vZGVsQ2hhbmdlKT1cIm9uU2VsZWN0V2FyZWhvdXNlKCRldmVudClcIlxyXG4gICAgICAgICAgPjwvY28tZHJvcC1kb3duLWxpc3Q+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPGRpdiBjbGFzcz1cInN0b2NrLWdyaWRcIj5cclxuXHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiYnV0dG9uLXdyYXBwZXJcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiYnV0dG9uLWxlZnRcIj5cclxuICAgICAgICAgIDxjby1idXR0b24gKGNsaWNrKT1cIm9uT2tDbGljaygpXCI+PC9jby1idXR0b24+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImJ1dHRvbi1yaWdodFwiPlxyXG4gICAgICAgICAgPGNvLWJ1dHRvbiAoY2xpY2spPVwib25DYW5jZWxDbGljaygpXCI+PC9jby1idXR0b24+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcblxyXG4gIGAsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU3RvY2tMb2NhdGlvbkNvbXBvbmVudCB7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHN0b2NrTG9jYXRpb25JbmZvcm1hdGlvbjogQXJ0aWNsZVN0b2NrO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgYmFja1RvU3RvY2tMaW5lczogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIHB1YmxpYyBhbGxXYXJlaG91c2VzOiBhbnk7XHJcblxyXG4gIHB1YmxpYyBzdG9ja0xvY2F0aW9uQ29sdW1uczogYW55W10gPSBbXTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIF9zdG9ja1NlcnZpY2U6IFN0b2NrU2VydmljZVxyXG4gICkge1xyXG4gICAgdGhpcy5zdG9ja0xvY2F0aW9uQ29sdW1ucy5wdXNoKFxyXG4gICAgICB7ZmllbGQ6IFwibG9jYXRpb25cIiwgaGVhZGVyVGV4dDogXCJXQVJFSE9VU0VcIiwgZWRpdFR5cGU6IFwibm9uZVwifSxcclxuICAgICAge2ZpZWxkOiBcImJhdGNoXCIsIGhlYWRlclRleHQ6IFwiQkFUQ0hcIn0sXHJcbiAgICAgIHtmaWVsZDogXCJzZXJpZU5vXCIsIGhlYWRlclRleHQ6IFwiU0VSSUFMX05PXCJ9LFxyXG4gICAgICB7ZmllbGQ6IFwiYW1vdW50SW5TdG9ja1wiLCBoZWFkZXJUZXh0OiBcIlNUT0NLXCIsIHRleHRBbGlnbjogXCJSaWdodFwiLCBlZGl0VHlwZTogXCJudW1lcmljRWRpdFwifSxcclxuICAgICAge2ZpZWxkOiBcImFsbG9jYXRlZFwiLCBoZWFkZXJUZXh0OiBcIkFMTE9DQVRFRFwiLCB0ZXh0QWxpZ246IFwiUmlnaHRcIn0sXHJcbiAgICAgIHtmaWVsZDogXCJhbW91bnRBdmFpbGFibGVcIiwgaGVhZGVyVGV4dDogXCJBVkFJTEFCTEVfU1RPQ0tcIiwgdGV4dEFsaWduOiBcIlJpZ2h0XCJ9LFxyXG4gICAgICB7ZmllbGQ6IFwiUGh5c2ljYWxTdG9ja1wiLCBoZWFkZXJUZXh0OiBcIlBIWVNJQ0FMX1NUT0NLXCIsIHRleHRBbGlnbjogXCJSaWdodFwifSxcclxuICAgICAge2ZpZWxkOiBcIlZhbHV0YVwiLCBoZWFkZXJUZXh0OiBcIlZBTFVUQVwiLCB0ZXh0QWxpZ246IFwiUmlnaHRcIn0sXHJcbiAgICAgIHtmaWVsZDogXCJQdXJjaGFzZVByaWNlXCIsIGhlYWRlclRleHQ6IFwiUFVSU0NIQVNFX1BSSUNFXCIsIHRleHRBbGlnbjogXCJSaWdodFwifSxcclxuICAgICAge2ZpZWxkOiBcIlN1cHBsaWVyTm9cIiwgaGVhZGVyVGV4dDogXCJTVVBQTElFUl9OT1wiLCB0ZXh0QWxpZ246IFwiUmlnaHRcIn0sXHJcbiAgICAgIHtmaWVsZDogXCJUcmFuc2ZlclwiLCBoZWFkZXJUZXh0OiBcIlRSQU5TRkVSXCJ9LFxyXG4gICAgICB7ZmllbGQ6IFwic3RpY2tlclwiLCBoZWFkZXJUZXh0OiBcIlNUSUNLRVJcIn0sXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGJhY2tUb1N0b2NrSW5mb3JtYXRpb24oKTogdm9pZCB7XHJcbiAgICB0aGlzLmJhY2tUb1N0b2NrTGluZXMuZW1pdCgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uT2tDbGljaygpOiB2b2lkIHtcclxuXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25DYW5jZWxDbGljaygpOiB2b2lkIHtcclxuXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25TZWxlY3RXYXJlaG91c2UoZXZlbnQpOiB2b2lkIHtcclxuXHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,68 @@
1
+ import { __awaiter } from "tslib";
2
+ import { Component, EventEmitter, Input, Output, ViewEncapsulation } from "@angular/core";
3
+ import { StockService } from "../../../service/stock.service";
4
+ export class StockChangeAmountComponent {
5
+ constructor(_stockService) {
6
+ this._stockService = _stockService;
7
+ this.closeStockChangeAmount = new EventEmitter();
8
+ this.stockState = [];
9
+ this.stockStateDropdownField = { text: "stateDescription", value: "stockStateId" };
10
+ }
11
+ ngAfterViewInit() {
12
+ this.getStockState();
13
+ }
14
+ closeDialogClick() {
15
+ this.closeStockChangeAmount.emit();
16
+ }
17
+ handleOkClick(data) {
18
+ return __awaiter(this, void 0, void 0, function* () {
19
+ yield this._stockService.updateArticleDetails(data);
20
+ });
21
+ }
22
+ handleCancelClick() {
23
+ this.closeStockChangeAmount.emit();
24
+ }
25
+ getStockState() {
26
+ this._stockService.getStockState().then((state) => {
27
+ this.stockState = state;
28
+ });
29
+ }
30
+ }
31
+ StockChangeAmountComponent.decorators = [
32
+ { type: Component, args: [{
33
+ selector: "co-stock-change-amount",
34
+ template: `
35
+ <div class="stock-transfer">
36
+ <co-dialog-wizard [showCloseIcon]="true" (closeClick)="closeDialogClick()">
37
+ <ng-container header>
38
+ <span [textContent]="'STOCK_CHANGE_REASON'"></span>
39
+ </ng-container>
40
+ <div class="popup-wrapper">
41
+ <co-drop-down-list [collection]="stockState"
42
+ [fields]="stockStateDropdownField"
43
+ [placeholder]="'STOCK_STATE'"
44
+ [(model)]="selectedArticleDetailsData.stockStateId"
45
+ ></co-drop-down-list>
46
+
47
+ <co-input-textarea [(model)]="selectedArticleDetailsData.stockStateRemark"
48
+
49
+ ></co-input-textarea>
50
+ <div class="ok-cancel-buttons">
51
+ <co-button [textContent]="'Ok'" (click)="handleOkClick(selectedArticleDetailsData)"></co-button>
52
+ <co-button [textContent]="'Annuleren'" (click)="handleCancelClick()"></co-button>
53
+ </div>
54
+ </div>
55
+ </co-dialog-wizard>
56
+ </div>
57
+ `,
58
+ encapsulation: ViewEncapsulation.None
59
+ },] }
60
+ ];
61
+ StockChangeAmountComponent.ctorParameters = () => [
62
+ { type: StockService }
63
+ ];
64
+ StockChangeAmountComponent.propDecorators = {
65
+ selectedArticleDetailsData: [{ type: Input }],
66
+ closeStockChangeAmount: [{ type: Output }]
67
+ };
68
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvY2stY2hhbmdlLWFtb3VudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWRjb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9zdG9jay9zdG9jay10cmFuc2Zlci9zdG9jay1jaGFuZ2UtYW1vdW50LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFnQixTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkcsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBaUM1RCxNQUFNLE9BQU8sMEJBQTBCO0lBV3JDLFlBQ1UsYUFBMkI7UUFBM0Isa0JBQWEsR0FBYixhQUFhLENBQWM7UUFOckIsMkJBQXNCLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFFeEUsZUFBVSxHQUFrQixFQUFFLENBQUM7UUFDL0IsNEJBQXVCLEdBQXlCLEVBQUMsSUFBSSxFQUFFLGtCQUFrQixFQUFFLEtBQUssRUFBRSxjQUFjLEVBQUMsQ0FBQztJQUt6RyxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRU0sZ0JBQWdCO1FBQ3JCLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNyQyxDQUFDO0lBRVksYUFBYSxDQUFDLElBQXNCOztZQUMvQyxNQUFNLElBQUksQ0FBQyxhQUFhLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdEQsQ0FBQztLQUFBO0lBRU0saUJBQWlCO1FBQ3RCLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNyQyxDQUFDO0lBRU0sYUFBYTtRQUNsQixJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWEsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQW9CLEVBQUUsRUFBRTtZQUMvRCxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztRQUMxQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OztZQWhFRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLHdCQUF3QjtnQkFDbEMsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXVCVDtnQkFDRCxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTthQUN0Qzs7O1lBaENPLFlBQVk7Ozt5Q0FtQ2pCLEtBQUs7cUNBR0wsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge1N0b2NrU2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2Uvc3RvY2suc2VydmljZVwiO1xyXG5pbXBvcnQge1N0b2NrU3RhdHVzfSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvc3RvY2stc3RhdHVzLmJvXCI7XHJcbmltcG9ydCB7Q29Ecm9wRG93bkxpc3RGaWVsZHN9IGZyb20gXCIuL2NvLWRyb3AtZG93bi1saXN0LWZpZWxkcy5pbnRlcmZhY2VcIjtcclxuaW1wb3J0IHtBcnRpY2xlRGV0YWlsc0JvfSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1kZXRhaWxzLmJvXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJjby1zdG9jay1jaGFuZ2UtYW1vdW50XCIsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgICAgPGRpdiBjbGFzcz1cInN0b2NrLXRyYW5zZmVyXCI+XHJcbiAgICAgICAgPGNvLWRpYWxvZy13aXphcmQgW3Nob3dDbG9zZUljb25dPVwidHJ1ZVwiIChjbG9zZUNsaWNrKT1cImNsb3NlRGlhbG9nQ2xpY2soKVwiPlxyXG4gICAgICAgICAgPG5nLWNvbnRhaW5lciBoZWFkZXI+XHJcbiAgICAgICAgICAgIDxzcGFuIFt0ZXh0Q29udGVudF09XCInU1RPQ0tfQ0hBTkdFX1JFQVNPTidcIj48L3NwYW4+XHJcbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJwb3B1cC13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgIDxjby1kcm9wLWRvd24tbGlzdCBbY29sbGVjdGlvbl09XCJzdG9ja1N0YXRlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtmaWVsZHNdPVwic3RvY2tTdGF0ZURyb3Bkb3duRmllbGRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidTVE9DS19TVEFURSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwic2VsZWN0ZWRBcnRpY2xlRGV0YWlsc0RhdGEuc3RvY2tTdGF0ZUlkXCJcclxuICAgICAgICAgICAgPjwvY28tZHJvcC1kb3duLWxpc3Q+XHJcblxyXG4gICAgICAgICAgICA8Y28taW5wdXQtdGV4dGFyZWEgWyhtb2RlbCldPVwic2VsZWN0ZWRBcnRpY2xlRGV0YWlsc0RhdGEuc3RvY2tTdGF0ZVJlbWFya1wiXHJcblxyXG4gICAgICAgICAgICA+PC9jby1pbnB1dC10ZXh0YXJlYT5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm9rLWNhbmNlbC1idXR0b25zXCI+XHJcbiAgICAgICAgICAgICAgPGNvLWJ1dHRvbiBbdGV4dENvbnRlbnRdPVwiJ09rJ1wiIChjbGljayk9XCJoYW5kbGVPa0NsaWNrKHNlbGVjdGVkQXJ0aWNsZURldGFpbHNEYXRhKVwiPjwvY28tYnV0dG9uPlxyXG4gICAgICAgICAgICAgIDxjby1idXR0b24gW3RleHRDb250ZW50XT1cIidBbm51bGVyZW4nXCIgKGNsaWNrKT1cImhhbmRsZUNhbmNlbENsaWNrKClcIj48L2NvLWJ1dHRvbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2NvLWRpYWxvZy13aXphcmQ+XHJcbiAgICAgIDwvZGl2PlxyXG4gIGAsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU3RvY2tDaGFuZ2VBbW91bnRDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2VsZWN0ZWRBcnRpY2xlRGV0YWlsc0RhdGE6IEFydGljbGVEZXRhaWxzQm87XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyByZWFkb25seSBjbG9zZVN0b2NrQ2hhbmdlQW1vdW50OiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgcHVibGljIHN0b2NrU3RhdGU6IFN0b2NrU3RhdHVzW10gPSBbXTtcclxuICBwdWJsaWMgc3RvY2tTdGF0ZURyb3Bkb3duRmllbGQ6IENvRHJvcERvd25MaXN0RmllbGRzID0ge3RleHQ6IFwic3RhdGVEZXNjcmlwdGlvblwiLCB2YWx1ZTogXCJzdG9ja1N0YXRlSWRcIn07XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBfc3RvY2tTZXJ2aWNlOiBTdG9ja1NlcnZpY2VcclxuICApIHtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIHRoaXMuZ2V0U3RvY2tTdGF0ZSgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNsb3NlRGlhbG9nQ2xpY2soKTogdm9pZCB7XHJcbiAgICB0aGlzLmNsb3NlU3RvY2tDaGFuZ2VBbW91bnQuZW1pdCgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGhhbmRsZU9rQ2xpY2soZGF0YTogQXJ0aWNsZURldGFpbHNCbyk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgYXdhaXQgdGhpcy5fc3RvY2tTZXJ2aWNlLnVwZGF0ZUFydGljbGVEZXRhaWxzKGRhdGEpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZUNhbmNlbENsaWNrKCk6IHZvaWQge1xyXG4gICAgdGhpcy5jbG9zZVN0b2NrQ2hhbmdlQW1vdW50LmVtaXQoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRTdG9ja1N0YXRlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5fc3RvY2tTZXJ2aWNlLmdldFN0b2NrU3RhdGUoKS50aGVuKChzdGF0ZTogU3RvY2tTdGF0dXNbXSkgPT4ge1xyXG4gICAgICB0aGlzLnN0b2NrU3RhdGUgPSBzdGF0ZTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbn1cclxuIl19