@colijnit/transaction 12.1.88 → 12.1.89

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 (198) hide show
  1. package/bundles/colijnit-transaction.umd.js +2606 -2097
  2. package/bundles/colijnit-transaction.umd.js.map +1 -1
  3. package/colijnit-transaction.d.ts +313 -306
  4. package/colijnit-transaction.metadata.json +1 -1
  5. package/esm2015/colijnit-transaction.js +314 -307
  6. package/esm2015/lib/component/checkout/checkout-overview-relation-edit/checkout-overview-relation-edit.component.js +11 -9
  7. package/esm2015/lib/component/core/base/transaction-base.component.js +11 -1
  8. package/esm2015/lib/component/core/base/transaction-filter-base.component.js +1 -8
  9. package/esm2015/lib/component/search/search-header-buttons/search-header-buttons.component.js +6 -3
  10. package/esm2015/lib/component/search/search.component.js +5 -2
  11. package/esm2015/lib/component/transaction/transaction.component.js +10 -28
  12. package/esm2015/lib/component/transaction/transaction.module.js +5 -3
  13. package/esm2015/lib/component/transaction-allocate-goods-history/transaction-allocate-goods-history.component.js +8 -34
  14. package/esm2015/lib/component/transaction-button-bar/transaction-button-bar-button/transaction-purchase-confirmation-button-bar-button.component.js +39 -0
  15. package/esm2015/lib/component/transaction-button-bar/transaction-button-bar-button/transaction-purchase-receive-goods-button-bar-button.component.js +39 -0
  16. package/esm2015/lib/component/transaction-button-bar/transaction-button-bar-button/transaction-sales-allocation-button-bar-button.component.js +39 -0
  17. package/esm2015/lib/component/transaction-button-bar/transaction-button-bar-button/transaction-sales-delivery-button-bar-button.component.js +39 -0
  18. package/esm2015/lib/component/transaction-button-bar/transaction-button-bar-button/transaction-sales-invoice-button-bar-button.component.js +39 -0
  19. package/esm2015/lib/component/transaction-button-bar/transaction-button-bar-button/transaction-sales-purchase-button-bar-button.component.js +3 -3
  20. package/esm2015/lib/component/transaction-button-bar/transaction-button-bar.module.js +18 -3
  21. package/esm2015/lib/component/transaction-card/transaction-card/transaction-card.component.js +1 -2
  22. package/esm2015/lib/component/transaction-card/transaction-card-purchase-overview/transaction-card-purchase-overview.component.js +1 -2
  23. package/esm2015/lib/component/transaction-confirmation-details/transaction-confirmation-details.component.js +14 -19
  24. package/esm2015/lib/component/transaction-confirmation-history/transaction-confirmation-history.component.js +20 -49
  25. package/esm2015/lib/component/transaction-grid/transaction-available-stock-grid/transaction-available-stock-grid.component.js +8 -33
  26. package/esm2015/lib/component/transaction-line/transaction-goods-allocation-line/transaction-goods-allocation-line.component.js +24 -42
  27. package/esm2015/lib/component/transaction-line/transaction-invoice-line/transaction-invoice-line.component.js +87 -0
  28. package/esm2015/lib/component/transaction-line/transaction-invoice-line/transaction-invoice-line.module.js +36 -0
  29. package/esm2015/lib/component/transaction-line/transaction-line/transaction-line.component.js +2 -16
  30. package/esm2015/lib/component/transaction-line/transaction-order-delivery-line/transaction-order-delivery-line.component.js +23 -59
  31. package/esm2015/lib/component/transaction-line/transaction-purchase-line/transaction-purchase-line.component.js +1 -2
  32. package/esm2015/lib/component/transaction-line/transaction-purchase-order-line/transaction-purchase-order-line.component.js +24 -32
  33. package/esm2015/lib/component/transaction-line/transaction-purchase-overview-line/transaction-purchase-overview-line.component.js +99 -0
  34. package/esm2015/lib/component/transaction-line/transaction-purchase-overview-line/transaction-purchase-overview-line.module.js +41 -0
  35. package/esm2015/lib/component/transaction-line/transaction-receive-goods-line/transaction-receive-goods-line.component.js +41 -53
  36. package/esm2015/lib/component/transaction-line-fields/transaction-line-warehouse-location-button.component.js +5 -12
  37. package/esm2015/lib/component/transaction-line-fields/transaction-line-warehouse-location-button.module.js +4 -2
  38. package/esm2015/lib/component/transaction-line-fields/transaction-line-warehouse-location.component.js +1 -1
  39. package/esm2015/lib/component/transaction-line-fields/transaction-purchase-portal-line-confirmed-delivery-date.component.js +3 -1
  40. package/esm2015/lib/component/transaction-line-fields/transaction-purchase-portal-line-confirmed-price.component.js +7 -3
  41. package/esm2015/lib/component/transaction-line-fields/transaction-purchase-portal-line-gross-order-price.component.js +7 -3
  42. package/esm2015/lib/component/transaction-line-fields/transaction-purchase-portal-line-net-order-price.component.js +7 -3
  43. package/esm2015/lib/component/transaction-line-purchase-confirmation/transaction-line-purchase-confirmation.component.js +173 -0
  44. package/esm2015/lib/component/transaction-line-purchase-confirmation/transaction-line-purchase-confirmation.module.js +30 -0
  45. package/esm2015/lib/component/transaction-line-purchase-receive-goods/transaction-line-purchase-receive-goods.component.js +223 -0
  46. package/esm2015/lib/component/transaction-line-purchase-receive-goods/transaction-line-purchase-receive-goods.module.js +34 -0
  47. package/esm2015/lib/component/transaction-line-sales-allocation/transaction-line-sales-allocation.component.js +175 -0
  48. package/esm2015/lib/component/transaction-line-sales-allocation/transaction-line-sales-allocation.module.js +28 -0
  49. package/esm2015/lib/component/transaction-line-side-panel/transaction-line-side-panel.component.js +6 -22
  50. package/esm2015/lib/component/transaction-line-side-panel/transaction-line-side-panel.module.js +1 -1
  51. package/esm2015/lib/component/transaction-line-side-panel-purchase/transaction-line-side-panel-purchase.component.js +7 -50
  52. package/esm2015/lib/component/transaction-line-side-panel-purchase/transaction-line-side-panel-purchase.module.js +5 -3
  53. package/esm2015/lib/component/transaction-line-side-panel-sales/transaction-line-side-panel-sales.component.js +7 -48
  54. package/esm2015/lib/component/transaction-line-side-panel-sales/transaction-line-side-panel-sales.module.js +4 -4
  55. package/esm2015/lib/component/transaction-line-statusbar/transaction-line-statusbar.component.js +11 -9
  56. package/esm2015/lib/component/transaction-lines/transaction-lines.component.js +12 -38
  57. package/esm2015/lib/component/transaction-quick-access/transaction-quick-access/transaction-quick-access.module.js +4 -2
  58. package/esm2015/lib/component/transaction-quick-access/transaction-quick-access-goods-allocation/transaction-quick-access-goods-allocation.component.js +5 -7
  59. package/esm2015/lib/component/transaction-quick-access/transaction-quick-access-invoice/transaction-quick-access-invoice.component.js +128 -0
  60. package/esm2015/lib/component/transaction-quick-access/transaction-quick-access-invoice/transaction-quick-access-invoice.module.js +27 -0
  61. package/esm2015/lib/component/transaction-quick-access/transaction-quick-access-order-confirmation/transaction-quick-access-order-confirmation.component.js +3 -9
  62. package/esm2015/lib/component/transaction-quick-access/transaction-quick-access-order-delivery/transaction-quick-access-order-delivery.component.js +30 -22
  63. package/esm2015/lib/component/transaction-quick-access/transaction-quick-access-received-goods/transaction-quick-access-received-goods.component.js +35 -45
  64. package/esm2015/lib/component/transaction-receiving-goods-history/transaction-receiving-goods-history.component.js +8 -35
  65. package/esm2015/lib/component/transaction-search/service/transaction-search.service.js +1 -1
  66. package/esm2015/lib/component/transaction-search/transaction-filter/transaction-filter/transaction-filter.component.js +7 -12
  67. package/esm2015/lib/component/transaction-search/transaction-search-grid/transaction-search-grid/transaction-search-grid.component.js +4 -12
  68. package/esm2015/lib/component/transaction-search/transaction-search-result/transaction-search-result.component.js +1 -4
  69. package/esm2015/lib/component/transaction-search/transaction-search-tile/transaction-search-tile/transaction-search-tile.component.js +3 -11
  70. package/esm2015/lib/component/transaction-search/transaction-search.component.js +5 -16
  71. package/esm2015/lib/res/dictionary/dictionaries.js +3 -3
  72. package/esm2015/lib/service/pending-reason.service.js +176 -10
  73. package/esm2015/lib/service/transaction-connector-adapter.service.js +82 -1
  74. package/esm2015/lib/service/transaction-connector.service.js +34 -1
  75. package/esm2015/lib/service/transaction-event.service.js +18 -4
  76. package/esm2015/lib/service/transaction-mapping.service.js +16 -9
  77. package/esm2015/lib/service/transaction.service.js +216 -79
  78. package/fesm2015/colijnit-transaction.js +2361 -1863
  79. package/fesm2015/colijnit-transaction.js.map +1 -1
  80. package/lib/component/core/base/transaction-base.component.d.ts +3 -1
  81. package/lib/component/core/base/transaction-filter-base.component.d.ts +0 -3
  82. package/lib/component/search/search-header-buttons/search-header-buttons.component.d.ts +1 -1
  83. package/lib/component/search/search.component.d.ts +1 -0
  84. package/lib/component/transaction/transaction.component.d.ts +1 -1
  85. package/lib/component/transaction-allocate-goods-history/transaction-allocate-goods-history.component.d.ts +4 -12
  86. package/lib/component/transaction-button-bar/style/_layout.scss +6 -1
  87. package/lib/component/transaction-button-bar/transaction-button-bar-button/transaction-purchase-confirmation-button-bar-button.component.d.ts +12 -0
  88. package/lib/component/transaction-button-bar/transaction-button-bar-button/transaction-purchase-receive-goods-button-bar-button.component.d.ts +12 -0
  89. package/lib/component/transaction-button-bar/transaction-button-bar-button/transaction-sales-allocation-button-bar-button.component.d.ts +12 -0
  90. package/lib/component/transaction-button-bar/transaction-button-bar-button/transaction-sales-delivery-button-bar-button.component.d.ts +12 -0
  91. package/lib/component/transaction-button-bar/transaction-button-bar-button/transaction-sales-invoice-button-bar-button.component.d.ts +12 -0
  92. package/lib/component/transaction-card/transaction-card/transaction-card.component.d.ts +0 -1
  93. package/lib/component/transaction-card/transaction-card-purchase-overview/transaction-card-purchase-overview.component.d.ts +0 -1
  94. package/lib/component/transaction-confirmation-details/transaction-confirmation-details.component.d.ts +4 -10
  95. package/lib/component/transaction-confirmation-history/transaction-confirmation-history.component.d.ts +5 -16
  96. package/lib/component/transaction-grid/transaction-available-stock-grid/transaction-available-stock-grid.component.d.ts +4 -20
  97. package/lib/component/transaction-line/transaction-goods-allocation-line/transaction-goods-allocation-line.component.d.ts +1 -8
  98. package/lib/component/transaction-line/transaction-invoice-line/style/_layout.scss +44 -0
  99. package/lib/component/transaction-line/transaction-invoice-line/style/_material-definition.scss +0 -0
  100. package/lib/component/transaction-line/transaction-invoice-line/style/_theme.scss +4 -0
  101. package/lib/component/{transaction-grid/transaction-received-goods-grid → transaction-line/transaction-invoice-line}/style/material.scss +0 -0
  102. package/lib/component/transaction-line/transaction-invoice-line/transaction-invoice-line.component.d.ts +16 -0
  103. package/lib/component/transaction-line/transaction-invoice-line/transaction-invoice-line.module.d.ts +2 -0
  104. package/lib/component/transaction-line/transaction-line/transaction-line.component.d.ts +0 -1
  105. package/lib/component/transaction-line/transaction-order-delivery-line/transaction-order-delivery-line.component.d.ts +1 -8
  106. package/lib/component/transaction-line/transaction-purchase-line/transaction-purchase-line.component.d.ts +0 -1
  107. package/lib/component/transaction-line/transaction-purchase-order-line/transaction-purchase-order-line.component.d.ts +1 -11
  108. package/lib/component/transaction-line/transaction-purchase-overview-line/style/_layout.scss +7 -0
  109. package/lib/component/transaction-line/transaction-purchase-overview-line/style/_material-definition.scss +0 -0
  110. package/lib/component/transaction-line/transaction-purchase-overview-line/style/_theme.scss +4 -0
  111. package/lib/component/transaction-line/transaction-purchase-overview-line/style/material.scss +4 -0
  112. package/lib/component/transaction-line/transaction-purchase-overview-line/transaction-purchase-overview-line.component.d.ts +20 -0
  113. package/lib/component/transaction-line/transaction-purchase-overview-line/transaction-purchase-overview-line.module.d.ts +2 -0
  114. package/lib/component/transaction-line/transaction-receive-goods-line/transaction-receive-goods-line.component.d.ts +8 -11
  115. package/lib/component/transaction-line-fields/transaction-line-warehouse-location-button.component.d.ts +1 -4
  116. package/lib/component/transaction-line-fields/transaction-purchase-portal-line-confirmed-price.component.d.ts +1 -0
  117. package/lib/component/transaction-line-fields/transaction-purchase-portal-line-gross-order-price.component.d.ts +1 -0
  118. package/lib/component/transaction-line-fields/transaction-purchase-portal-line-net-order-price.component.d.ts +1 -0
  119. package/lib/component/transaction-line-purchase-confirmation/style/_layout.scss +88 -0
  120. package/lib/component/transaction-line-purchase-confirmation/style/_material-definition.scss +4 -0
  121. package/lib/component/transaction-line-purchase-confirmation/style/_theme.scss +4 -0
  122. package/lib/component/transaction-line-purchase-confirmation/style/material.scss +5 -0
  123. package/lib/component/transaction-line-purchase-confirmation/transaction-line-purchase-confirmation.component.d.ts +32 -0
  124. package/lib/component/transaction-line-purchase-confirmation/transaction-line-purchase-confirmation.module.d.ts +2 -0
  125. package/lib/component/transaction-line-purchase-receive-goods/style/_layout.scss +71 -0
  126. package/lib/component/{transaction-grid/transaction-received-goods-grid → transaction-line-purchase-receive-goods}/style/_material-definition.scss +0 -0
  127. package/lib/component/transaction-line-purchase-receive-goods/style/_theme.scss +4 -0
  128. package/lib/component/{transaction-side-panel-edit-request-details → transaction-line-purchase-receive-goods}/style/material.scss +0 -0
  129. package/lib/component/transaction-line-purchase-receive-goods/transaction-line-purchase-receive-goods.component.d.ts +39 -0
  130. package/lib/component/transaction-line-purchase-receive-goods/transaction-line-purchase-receive-goods.module.d.ts +2 -0
  131. package/lib/component/transaction-line-sales-allocation/style/_layout.scss +71 -0
  132. package/lib/component/transaction-line-sales-allocation/style/_material-definition.scss +0 -0
  133. package/lib/component/transaction-line-sales-allocation/style/_theme.scss +4 -0
  134. package/lib/component/transaction-line-sales-allocation/style/material.scss +4 -0
  135. package/lib/component/transaction-line-sales-allocation/transaction-line-sales-allocation.component.d.ts +31 -0
  136. package/lib/component/transaction-line-sales-allocation/transaction-line-sales-allocation.module.d.ts +2 -0
  137. package/lib/component/transaction-line-side-panel/style/material.scss +3 -1
  138. package/lib/component/transaction-line-side-panel/transaction-line-side-panel.component.d.ts +1 -5
  139. package/lib/component/transaction-line-side-panel-purchase/style/material.scss +2 -1
  140. package/lib/component/transaction-line-side-panel-purchase/transaction-line-side-panel-purchase.component.d.ts +0 -1
  141. package/lib/component/transaction-line-side-panel-sales/style/material.scss +1 -0
  142. package/lib/component/transaction-line-side-panel-sales/transaction-line-side-panel-sales.component.d.ts +2 -15
  143. package/lib/component/transaction-lines/style/material.scss +2 -0
  144. package/lib/component/transaction-lines/transaction-lines.component.d.ts +1 -8
  145. package/lib/component/transaction-navigation-button/style/_layout.scss +1 -1
  146. package/lib/component/transaction-navigation-button/style/_theme.scss +1 -1
  147. package/lib/component/transaction-quick-access/transaction-quick-access/style/material.scss +1 -0
  148. package/lib/component/transaction-quick-access/transaction-quick-access-goods-allocation/transaction-quick-access-goods-allocation.component.d.ts +1 -3
  149. package/lib/component/transaction-quick-access/transaction-quick-access-invoice/style/_layout.scss +12 -0
  150. package/lib/component/transaction-quick-access/transaction-quick-access-invoice/style/_material-definition.scss +0 -0
  151. package/lib/component/transaction-quick-access/transaction-quick-access-invoice/style/_theme.scss +4 -0
  152. package/lib/component/transaction-quick-access/transaction-quick-access-invoice/style/material.scss +4 -0
  153. package/lib/component/transaction-quick-access/transaction-quick-access-invoice/transaction-quick-access-invoice.component.d.ts +33 -0
  154. package/lib/component/transaction-quick-access/transaction-quick-access-invoice/transaction-quick-access-invoice.module.d.ts +2 -0
  155. package/lib/component/transaction-quick-access/transaction-quick-access-order-confirmation/transaction-quick-access-order-confirmation.component.d.ts +0 -1
  156. package/lib/component/transaction-quick-access/transaction-quick-access-order-delivery/transaction-quick-access-order-delivery.component.d.ts +5 -8
  157. package/lib/component/transaction-quick-access/transaction-quick-access-received-goods/transaction-quick-access-received-goods.component.d.ts +6 -19
  158. package/lib/component/transaction-receiving-goods-history/transaction-receiving-goods-history.component.d.ts +3 -10
  159. package/lib/component/transaction-search/service/transaction-search.service.d.ts +4 -2
  160. package/lib/component/transaction-search/transaction-filter/transaction-filter/transaction-filter.component.d.ts +3 -6
  161. package/lib/component/transaction-search/transaction-search-grid/transaction-search-grid/transaction-search-grid.component.d.ts +0 -4
  162. package/lib/component/transaction-search/transaction-search-result/transaction-search-result.component.d.ts +0 -2
  163. package/lib/component/transaction-search/transaction-search-tile/transaction-search-tile/transaction-search-tile.component.d.ts +0 -4
  164. package/lib/component/transaction-search/transaction-search.component.d.ts +0 -4
  165. package/lib/res/dictionary/dictionaries.d.ts +8 -0
  166. package/lib/service/pending-reason.service.d.ts +28 -0
  167. package/lib/service/transaction-connector-adapter.service.d.ts +9 -0
  168. package/lib/service/transaction-connector.service.d.ts +9 -0
  169. package/lib/service/transaction-event.service.d.ts +17 -8
  170. package/lib/service/transaction.service.d.ts +18 -13
  171. package/package.json +2 -2
  172. package/esm2015/lib/component/transaction-grid/transaction-received-goods-grid/transaction-received-goods-grid.component.js +0 -155
  173. package/esm2015/lib/component/transaction-grid/transaction-received-goods-grid/transaction-received-goods-grid.module.js +0 -34
  174. package/esm2015/lib/component/transaction-line/transaction-goods-allocation-line/service/transaction-allocate-goods.service.js +0 -63
  175. package/esm2015/lib/component/transaction-line/transaction-order-delivery-line/service/transaction-order-delivery.service.js +0 -72
  176. package/esm2015/lib/component/transaction-line/transaction-receive-goods-line/service/transaction-receive-goods.service.js +0 -68
  177. package/esm2015/lib/component/transaction-side-panel-edit-request-details/components/allocation-request.component.js +0 -139
  178. package/esm2015/lib/component/transaction-side-panel-edit-request-details/components/receive-goods-request.component.js +0 -194
  179. package/esm2015/lib/component/transaction-side-panel-edit-request-details/transaction-side-panel-edit-request-details.component.js +0 -51
  180. package/esm2015/lib/component/transaction-side-panel-edit-request-details/transaction-side-panel-edit-request-details.module.js +0 -35
  181. package/esm2015/lib/model/extended-transaction-line-view-model.js +0 -4
  182. package/esm2015/lib/model/received-goods-view-model.js +0 -11
  183. package/lib/component/transaction-grid/transaction-received-goods-grid/style/_layout.scss +0 -17
  184. package/lib/component/transaction-grid/transaction-received-goods-grid/style/_theme.scss +0 -6
  185. package/lib/component/transaction-grid/transaction-received-goods-grid/transaction-received-goods-grid.component.d.ts +0 -37
  186. package/lib/component/transaction-grid/transaction-received-goods-grid/transaction-received-goods-grid.module.d.ts +0 -2
  187. package/lib/component/transaction-line/transaction-goods-allocation-line/service/transaction-allocate-goods.service.d.ts +0 -12
  188. package/lib/component/transaction-line/transaction-order-delivery-line/service/transaction-order-delivery.service.d.ts +0 -17
  189. package/lib/component/transaction-line/transaction-receive-goods-line/service/transaction-receive-goods.service.d.ts +0 -19
  190. package/lib/component/transaction-side-panel-edit-request-details/components/allocation-request.component.d.ts +0 -28
  191. package/lib/component/transaction-side-panel-edit-request-details/components/receive-goods-request.component.d.ts +0 -43
  192. package/lib/component/transaction-side-panel-edit-request-details/style/_layout.scss +0 -133
  193. package/lib/component/transaction-side-panel-edit-request-details/style/_material-definition.scss +0 -2
  194. package/lib/component/transaction-side-panel-edit-request-details/style/_theme.scss +0 -4
  195. package/lib/component/transaction-side-panel-edit-request-details/transaction-side-panel-edit-request-details.component.d.ts +0 -15
  196. package/lib/component/transaction-side-panel-edit-request-details/transaction-side-panel-edit-request-details.module.d.ts +0 -2
  197. package/lib/model/extended-transaction-line-view-model.d.ts +0 -11
  198. package/lib/model/received-goods-view-model.d.ts +0 -10
@@ -4,31 +4,23 @@ import { IconCacheService } from "../../../service/icon-cache.service";
4
4
  import { TransactionEventService } from "../../../service/transaction-event.service";
5
5
  import { TransactionTypeCategory } from "../../../enum/transaction-type-category.enum";
6
6
  import { TransactionBaseComponent } from "../../core/base/transaction-base.component";
7
- import { GetPurchasePortalLine } from "@colijnit/transactionapi/build/model/get-purchase-portal-line";
8
- import { PurchasePortalFilters } from "@colijnit/transactionapi/build/model/purchase-portal-filters.bo";
9
7
  export class TransactionPurchaseOrderLineComponent extends TransactionBaseComponent {
10
8
  constructor(iconCacheService, transactionService, _transactionEventService) {
11
9
  super(transactionService);
12
10
  this.iconCacheService = iconCacheService;
13
11
  this.transactionService = transactionService;
14
12
  this._transactionEventService = _transactionEventService;
15
- this.selected = false;
13
+ this.transactionTypeCategory = TransactionTypeCategory;
16
14
  this.showDialogDiscount = false;
17
15
  this.showCheckboxForLine = false;
18
- this.getPurchasePortalLine = new GetPurchasePortalLine();
19
- this.purchasePortalFilter = new PurchasePortalFilters();
20
- this.purchasePortalLines = [];
21
- this.transactionTypeCategory = TransactionTypeCategory;
22
16
  this._subs = [];
23
17
  }
24
18
  showClass() {
25
19
  return true;
26
20
  }
27
21
  ngOnInit() {
28
- this.transactionKind = this.transactionService.currentTransaction.transactionInfo.transactionKind;
29
- this.getPurchasePortalLines();
30
22
  this._subs.push(this._transactionEventService.selectAllSalesOrderLinesForPurchase.subscribe((value) => {
31
- this.selected = value;
23
+ this.selected = value && this.showCheckboxForLine;
32
24
  }));
33
25
  }
34
26
  ngOnDestroy() {
@@ -37,17 +29,9 @@ export class TransactionPurchaseOrderLineComponent extends TransactionBaseCompon
37
29
  transactionLineSet() {
38
30
  this.showCheckboxForLine = this.transactionLine.commissionCode === "0";
39
31
  }
40
- getPurchasePortalLines() {
41
- this.purchasePortalFilter.purchaseOrderNo = this.transactionInfo.transactionNr.toString();
42
- this.purchasePortalFilter.lineId = this.transactionLine.lineNr.toString();
43
- this.getPurchasePortalLine.transIdPurchase = this.transactionInfo.id;
44
- this.getPurchasePortalLine.filterObject = this.purchasePortalFilter;
45
- this.transactionService.getPurchasePortalLines(this.getPurchasePortalLine).then((result) => {
46
- this.purchasePortalLines = result;
47
- });
48
- }
49
32
  handleOpenSidePanel(mouseClick) {
50
33
  const target = mouseClick.target;
34
+ console.log(target);
51
35
  if (target && target.dataset && target.dataset['action'] && target.dataset['action'] === 'openSidePanel') {
52
36
  this._transactionEventService.openSidePanel.next(this.transactionLine);
53
37
  }
@@ -57,43 +41,51 @@ TransactionPurchaseOrderLineComponent.decorators = [
57
41
  { type: Component, args: [{
58
42
  selector: "co-transaction-purchase-order-line",
59
43
  template: `
60
- <co-transaction-base-line *ngFor="let lines of purchasePortalLines" [transactionInfo]="transactionInfo" (click)="handleOpenSidePanel($event)" [transactionLine]="transactionLine" [preview]="preview" [checkbox]="showCheckboxForLine" [checkboxValue]="selected" (checkboxValueChanged)="selected = $event">
44
+ <co-transaction-base-line
45
+ [transactionInfo]="transactionInfo"
46
+ [transactionLine]="transactionLine"
47
+ [preview]="preview"
48
+ [checkbox]="showCheckboxForLine"
49
+ [checkboxValue]="selected"
50
+ (click)="handleOpenSidePanel($event)"
51
+ (checkboxValueChanged)="selected = $event">
61
52
  <div class="transaction-line-wrapper" data-action="openSidePanel">
62
53
  <div class="transaction-line-wrapper">
63
54
  <co-transaction-line-statusbar [transactionLine]="transactionLine" [transactionInfo]="transactionInfo" [activeCategory]="transactionTypeCategory.PurchaseOrderReceivedGoods"></co-transaction-line-statusbar>
64
- <co-transaction-purchase-portal-line-delivery-date [purchasePortalLine]="lines" class="two-column"></co-transaction-purchase-portal-line-delivery-date>
55
+ <co-transaction-line-delivery-date-button [transactionLine]="transactionLine" class="two-column"></co-transaction-line-delivery-date-button>
65
56
  <div class="transaction-line-totals-grid">
66
57
  <co-transaction-purchase-portal-line-gross-order-price class="transaction-line-totals-grid price"
67
- [purchasePortalLine]="lines"
58
+ [purchasePortalLine]="transactionLine.purchasePortalLine"
68
59
  [showLabel]="false"
69
- [defaultEditMode]="false"
60
+ [readonly]="true"
70
61
  ></co-transaction-purchase-portal-line-gross-order-price>
71
62
  <div class="transaction-line-totals-grid discount" (click)="showDialogDiscount = true">
72
63
  <span class="co-transaction-overflow-ellipsis" [class.transaction-negative-value]="transactionLine.lineTotalDiscountAmount < 0"
73
- [textContent]="(lines.discountOrderPrice | coCurrency) || ('DISCOUNT' | localize)"></span>
64
+ [textContent]="(transactionLine.purchasePortalLine?.discountOrderPrice | coCurrency) || ('DISCOUNT' | localize)"></span>
74
65
  </div>
75
66
  <co-transaction-purchase-portal-line-net-order-price class="transaction-line-totals-grid price"
76
- [purchasePortalLine]="lines"
67
+ [purchasePortalLine]="transactionLine.purchasePortalLine"
77
68
  [showLabel]="false"
78
- [defaultEditMode]="false"
69
+ [readonly]="true"
79
70
  ></co-transaction-purchase-portal-line-net-order-price>
80
71
  </div>
81
72
  </div>
82
73
  <div class="vertical-border"></div>
83
74
  <div class="transaction-line-totals-grid" data-action="openSidePanel">
84
75
  <co-icon class="transaction-line-supplier-icon" [iconData]="iconCacheService.getIcon(icons.IndustrySolid)"></co-icon>
85
- <span class="transaction-line-supplier-id" [textContent]="lines.articleNoSupplier"></span>
76
+ <span class="transaction-line-supplier-id" [textContent]="transactionLine.supplierArticleNumber"></span>
86
77
  <div class="transaction-line-totals-grid">
87
78
  <co-transaction-purchase-portal-line-confirmed-price class="transaction-line-totals-grid price"
88
- [purchasePortalLine]="lines"
79
+ [purchasePortalLine]="transactionLine.purchasePortalLine"
89
80
  [showLabel]="false"
90
- [defaultEditMode]="false"
81
+ [readonly]="true"
91
82
  ></co-transaction-purchase-portal-line-confirmed-price>
92
83
  </div>
93
84
  <co-input-number-picker class="amount-number-picker"
94
- [(model)]="lines.amountAccepted"
85
+ [model]="transactionLine.purchasePortalLine?.amountAccepted"
86
+ (modelChange)="transactionLine.purchasePortalLine.amountAccepted = $event"
95
87
  ></co-input-number-picker>
96
- <co-transaction-purchase-portal-line-confirmed-delivery-date [purchasePortalLine]="lines"
88
+ <co-transaction-purchase-portal-line-confirmed-delivery-date [purchasePortalLine]="transactionLine.purchasePortalLine"
97
89
  class="two-column"
98
90
  ></co-transaction-purchase-portal-line-confirmed-delivery-date>
99
91
  </div>
@@ -111,4 +103,4 @@ TransactionPurchaseOrderLineComponent.ctorParameters = () => [
111
103
  TransactionPurchaseOrderLineComponent.propDecorators = {
112
104
  showClass: [{ type: HostBinding, args: ["class.co-transaction-purchase-order-line",] }]
113
105
  };
114
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tcHVyY2hhc2Utb3JkZXItbGluZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cmFuc2FjdGlvbi9zcmMvbGliL2NvbXBvbmVudC90cmFuc2FjdGlvbi1saW5lL3RyYW5zYWN0aW9uLXB1cmNoYXNlLW9yZGVyLWxpbmUvdHJhbnNhY3Rpb24tcHVyY2hhc2Utb3JkZXItbGluZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxXQUFXLEVBQXFCLGlCQUFpQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzNGLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBQ3hFLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ3JFLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLDRDQUE0QyxDQUFDO0FBR25GLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLDhDQUE4QyxDQUFDO0FBQ3JGLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLDRDQUE0QyxDQUFDO0FBQ3BGLE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLCtEQUErRCxDQUFDO0FBQ3BHLE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLGlFQUFpRSxDQUFDO0FBb0R0RyxNQUFNLE9BQU8scUNBQXNDLFNBQVEsd0JBQXdCO0lBbUJqRixZQUNTLGdCQUFrQyxFQUMvQixrQkFBc0MsRUFDeEMsd0JBQWlEO1FBRXpELEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBSm5CLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDL0IsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtRQUN4Qyw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQXlCO1FBZnBELGFBQVEsR0FBWSxLQUFLLENBQUM7UUFDMUIsdUJBQWtCLEdBQVksS0FBSyxDQUFDO1FBQ3BDLHdCQUFtQixHQUFZLEtBQUssQ0FBQztRQUVyQywwQkFBcUIsR0FBMEIsSUFBSSxxQkFBcUIsRUFBRSxDQUFDO1FBQzNFLHlCQUFvQixHQUEwQixJQUFJLHFCQUFxQixFQUFFLENBQUM7UUFDMUUsd0JBQW1CLEdBQXlCLEVBQUUsQ0FBQztRQUV0Qyw0QkFBdUIsR0FBbUMsdUJBQXVCLENBQUM7UUFFMUYsVUFBSyxHQUFtQixFQUFFLENBQUM7SUFRbkMsQ0FBQztJQXRCTSxTQUFTO1FBQ2QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBc0JELFFBQVE7UUFDTixJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxrQkFBa0IsQ0FBQyxlQUFlLENBQUMsZUFBZSxDQUFDO1FBQ2xHLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1FBRTlCLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUNiLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxtQ0FBbUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUNwRixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztRQUN4QixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFFUyxrQkFBa0I7UUFDMUIsSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsY0FBYyxLQUFLLEdBQUcsQ0FBQztJQUN6RSxDQUFDO0lBRU0sc0JBQXNCO1FBQzNCLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDMUYsSUFBSSxDQUFDLG9CQUFvQixDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUMxRSxJQUFJLENBQUMscUJBQXFCLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDO1FBQ3JFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDO1FBRXBFLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUE0QixFQUFFLEVBQUU7WUFDL0csSUFBSSxDQUFDLG1CQUFtQixHQUFHLE1BQU0sQ0FBQztRQUNwQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxtQkFBbUIsQ0FBQyxVQUF3QjtRQUNqRCxNQUFNLE1BQU0sR0FBNkIsVUFBVSxDQUFDLE1BQU0sQ0FBQztRQUMzRCxJQUFJLE1BQU0sSUFBSSxNQUFNLENBQUMsT0FBTyxJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsS0FBSyxlQUFlLEVBQUU7WUFDeEcsSUFBSSxDQUFDLHdCQUF3QixDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1NBQ3hFO0lBQ0gsQ0FBQzs7O1lBL0dGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsb0NBQW9DO2dCQUM5QyxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0EyQ1Q7Z0JBQ0QsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7YUFDdEM7OztZQXpETyxnQkFBZ0I7WUFEaEIsa0JBQWtCO1lBRWxCLHVCQUF1Qjs7O3dCQTRENUIsV0FBVyxTQUFDLDBDQUEwQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBIb3N0QmluZGluZywgT25EZXN0cm95LCBPbkluaXQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uU2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24uc2VydmljZVwiO1xyXG5pbXBvcnQge0ljb25DYWNoZVNlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi9zZXJ2aWNlL2ljb24tY2FjaGUuc2VydmljZVwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi1ldmVudC5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7U3Vic2NyaXB0aW9ufSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uS2luZH0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9lbnVtL3RyYW5zYWN0aW9uLWtpbmQuZW51bVwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uVHlwZUNhdGVnb3J5fSBmcm9tIFwiLi4vLi4vLi4vZW51bS90cmFuc2FjdGlvbi10eXBlLWNhdGVnb3J5LmVudW1cIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkJhc2VDb21wb25lbnR9IGZyb20gXCIuLi8uLi9jb3JlL2Jhc2UvdHJhbnNhY3Rpb24tYmFzZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHtHZXRQdXJjaGFzZVBvcnRhbExpbmV9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvZ2V0LXB1cmNoYXNlLXBvcnRhbC1saW5lXCI7XHJcbmltcG9ydCB7UHVyY2hhc2VQb3J0YWxGaWx0ZXJzfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3B1cmNoYXNlLXBvcnRhbC1maWx0ZXJzLmJvXCI7XHJcbmltcG9ydCB7UHVyY2hhc2VQb3J0YWxMaW5lfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3B1cmNoYXNlLXBvcnRhbC1saW5lLmJvXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJjby10cmFuc2FjdGlvbi1wdXJjaGFzZS1vcmRlci1saW5lXCIsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgICAgICA8Y28tdHJhbnNhY3Rpb24tYmFzZS1saW5lICpuZ0Zvcj1cImxldCBsaW5lcyBvZiBwdXJjaGFzZVBvcnRhbExpbmVzXCIgW3RyYW5zYWN0aW9uSW5mb109XCJ0cmFuc2FjdGlvbkluZm9cIiAoY2xpY2spPVwiaGFuZGxlT3BlblNpZGVQYW5lbCgkZXZlbnQpXCIgW3RyYW5zYWN0aW9uTGluZV09XCJ0cmFuc2FjdGlvbkxpbmVcIiAgW3ByZXZpZXddPVwicHJldmlld1wiIFtjaGVja2JveF09XCJzaG93Q2hlY2tib3hGb3JMaW5lXCIgW2NoZWNrYm94VmFsdWVdPVwic2VsZWN0ZWRcIiAoY2hlY2tib3hWYWx1ZUNoYW5nZWQpPVwic2VsZWN0ZWQgPSAkZXZlbnRcIj5cclxuICAgICAgICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLWxpbmUtd3JhcHBlclwiIGRhdGEtYWN0aW9uPVwib3BlblNpZGVQYW5lbFwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24tbGluZS13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWxpbmUtc3RhdHVzYmFyIFt0cmFuc2FjdGlvbkxpbmVdPVwidHJhbnNhY3Rpb25MaW5lXCIgW3RyYW5zYWN0aW9uSW5mb109XCJ0cmFuc2FjdGlvbkluZm9cIiBbYWN0aXZlQ2F0ZWdvcnldPVwidHJhbnNhY3Rpb25UeXBlQ2F0ZWdvcnkuUHVyY2hhc2VPcmRlclJlY2VpdmVkR29vZHNcIj48L2NvLXRyYW5zYWN0aW9uLWxpbmUtc3RhdHVzYmFyPlxyXG4gICAgICAgICAgICAgIDxjby10cmFuc2FjdGlvbi1wdXJjaGFzZS1wb3J0YWwtbGluZS1kZWxpdmVyeS1kYXRlIFtwdXJjaGFzZVBvcnRhbExpbmVdPVwibGluZXNcIiBjbGFzcz1cInR3by1jb2x1bW5cIj48L2NvLXRyYW5zYWN0aW9uLXB1cmNoYXNlLXBvcnRhbC1saW5lLWRlbGl2ZXJ5LWRhdGU+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLWxpbmUtdG90YWxzLWdyaWRcIj5cclxuICAgICAgICAgICAgICAgIDxjby10cmFuc2FjdGlvbi1wdXJjaGFzZS1wb3J0YWwtbGluZS1ncm9zcy1vcmRlci1wcmljZSBjbGFzcz1cInRyYW5zYWN0aW9uLWxpbmUtdG90YWxzLWdyaWQgcHJpY2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwdXJjaGFzZVBvcnRhbExpbmVdPVwibGluZXNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzaG93TGFiZWxdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkZWZhdWx0RWRpdE1vZGVdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgPjwvY28tdHJhbnNhY3Rpb24tcHVyY2hhc2UtcG9ydGFsLWxpbmUtZ3Jvc3Mtb3JkZXItcHJpY2U+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24tbGluZS10b3RhbHMtZ3JpZCBkaXNjb3VudFwiIChjbGljayk9XCJzaG93RGlhbG9nRGlzY291bnQgPSB0cnVlXCI+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNvLXRyYW5zYWN0aW9uLW92ZXJmbG93LWVsbGlwc2lzXCIgW2NsYXNzLnRyYW5zYWN0aW9uLW5lZ2F0aXZlLXZhbHVlXT1cInRyYW5zYWN0aW9uTGluZS5saW5lVG90YWxEaXNjb3VudEFtb3VudCA8IDBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgW3RleHRDb250ZW50XT1cIihsaW5lcy5kaXNjb3VudE9yZGVyUHJpY2UgfCBjb0N1cnJlbmN5KSB8fCAoJ0RJU0NPVU5UJyB8IGxvY2FsaXplKVwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGNvLXRyYW5zYWN0aW9uLXB1cmNoYXNlLXBvcnRhbC1saW5lLW5ldC1vcmRlci1wcmljZSBjbGFzcz1cInRyYW5zYWN0aW9uLWxpbmUtdG90YWxzLWdyaWQgcHJpY2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcHVyY2hhc2VQb3J0YWxMaW5lXT1cImxpbmVzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3Nob3dMYWJlbF09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkZWZhdWx0RWRpdE1vZGVdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgPjwvY28tdHJhbnNhY3Rpb24tcHVyY2hhc2UtcG9ydGFsLWxpbmUtbmV0LW9yZGVyLXByaWNlPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInZlcnRpY2FsLWJvcmRlclwiPjwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24tbGluZS10b3RhbHMtZ3JpZFwiIGRhdGEtYWN0aW9uPVwib3BlblNpZGVQYW5lbFwiPlxyXG4gICAgICAgICAgICAgIDxjby1pY29uIGNsYXNzPVwidHJhbnNhY3Rpb24tbGluZS1zdXBwbGllci1pY29uXCIgW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5JbmR1c3RyeVNvbGlkKVwiPjwvY28taWNvbj5cclxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRyYW5zYWN0aW9uLWxpbmUtc3VwcGxpZXItaWRcIiBbdGV4dENvbnRlbnRdPVwibGluZXMuYXJ0aWNsZU5vU3VwcGxpZXJcIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLWxpbmUtdG90YWxzLWdyaWRcIj5cclxuICAgICAgICAgICAgICAgIDxjby10cmFuc2FjdGlvbi1wdXJjaGFzZS1wb3J0YWwtbGluZS1jb25maXJtZWQtcHJpY2UgY2xhc3M9XCJ0cmFuc2FjdGlvbi1saW5lLXRvdGFscy1ncmlkIHByaWNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3B1cmNoYXNlUG9ydGFsTGluZV09XCJsaW5lc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzaG93TGFiZWxdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGVmYXVsdEVkaXRNb2RlXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICAgID48L2NvLXRyYW5zYWN0aW9uLXB1cmNoYXNlLXBvcnRhbC1saW5lLWNvbmZpcm1lZC1wcmljZT5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8Y28taW5wdXQtbnVtYmVyLXBpY2tlciBjbGFzcz1cImFtb3VudC1udW1iZXItcGlja2VyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKG1vZGVsKV09XCJsaW5lcy5hbW91bnRBY2NlcHRlZFwiXHJcbiAgICAgICAgICAgICAgPjwvY28taW5wdXQtbnVtYmVyLXBpY2tlcj5cclxuICAgICAgICAgICAgICA8Y28tdHJhbnNhY3Rpb24tcHVyY2hhc2UtcG9ydGFsLWxpbmUtY29uZmlybWVkLWRlbGl2ZXJ5LWRhdGUgW3B1cmNoYXNlUG9ydGFsTGluZV09XCJsaW5lc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInR3by1jb2x1bW5cIlxyXG4gICAgICAgICAgICAgID48L2NvLXRyYW5zYWN0aW9uLXB1cmNoYXNlLXBvcnRhbC1saW5lLWNvbmZpcm1lZC1kZWxpdmVyeS1kYXRlPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9jby10cmFuc2FjdGlvbi1iYXNlLWxpbmU+XHJcbiAgYCxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXHJcbn0pXHJcblxyXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25QdXJjaGFzZU9yZGVyTGluZUNvbXBvbmVudCBleHRlbmRzIFRyYW5zYWN0aW9uQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuXHJcbiAgQEhvc3RCaW5kaW5nKFwiY2xhc3MuY28tdHJhbnNhY3Rpb24tcHVyY2hhc2Utb3JkZXItbGluZVwiKVxyXG4gIHB1YmxpYyBzaG93Q2xhc3MoKSB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzZWxlY3RlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyBzaG93RGlhbG9nRGlzY291bnQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgc2hvd0NoZWNrYm94Rm9yTGluZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyB0cmFuc2FjdGlvbktpbmQ6IFRyYW5zYWN0aW9uS2luZDtcclxuICBwdWJsaWMgZ2V0UHVyY2hhc2VQb3J0YWxMaW5lOiBHZXRQdXJjaGFzZVBvcnRhbExpbmUgPSBuZXcgR2V0UHVyY2hhc2VQb3J0YWxMaW5lKCk7XHJcbiAgcHVibGljIHB1cmNoYXNlUG9ydGFsRmlsdGVyOiBQdXJjaGFzZVBvcnRhbEZpbHRlcnMgPSBuZXcgUHVyY2hhc2VQb3J0YWxGaWx0ZXJzKCk7XHJcbiAgcHVibGljIHB1cmNoYXNlUG9ydGFsTGluZXM6IFB1cmNoYXNlUG9ydGFsTGluZVtdID0gW107XHJcblxyXG4gIHB1YmxpYyByZWFkb25seSB0cmFuc2FjdGlvblR5cGVDYXRlZ29yeTogdHlwZW9mIFRyYW5zYWN0aW9uVHlwZUNhdGVnb3J5ID0gVHJhbnNhY3Rpb25UeXBlQ2F0ZWdvcnk7XHJcblxyXG4gIHByaXZhdGUgX3N1YnM6IFN1YnNjcmlwdGlvbltdID0gW107XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIGljb25DYWNoZVNlcnZpY2U6IEljb25DYWNoZVNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgdHJhbnNhY3Rpb25TZXJ2aWNlOiBUcmFuc2FjdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF90cmFuc2FjdGlvbkV2ZW50U2VydmljZTogVHJhbnNhY3Rpb25FdmVudFNlcnZpY2VcclxuICApIHtcclxuICAgIHN1cGVyKHRyYW5zYWN0aW9uU2VydmljZSk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMudHJhbnNhY3Rpb25LaW5kID0gdGhpcy50cmFuc2FjdGlvblNlcnZpY2UuY3VycmVudFRyYW5zYWN0aW9uLnRyYW5zYWN0aW9uSW5mby50cmFuc2FjdGlvbktpbmQ7XHJcbiAgICB0aGlzLmdldFB1cmNoYXNlUG9ydGFsTGluZXMoKTtcclxuXHJcbiAgICB0aGlzLl9zdWJzLnB1c2goXHJcbiAgICAgIHRoaXMuX3RyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlLnNlbGVjdEFsbFNhbGVzT3JkZXJMaW5lc0ZvclB1cmNoYXNlLnN1YnNjcmliZSgodmFsdWUpID0+IHtcclxuICAgICAgICB0aGlzLnNlbGVjdGVkID0gdmFsdWU7XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLl9zdWJzLmZvckVhY2gocyA9PiBzLnVuc3Vic2NyaWJlKCkpO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIHRyYW5zYWN0aW9uTGluZVNldCgpOiB2b2lkIHtcclxuICAgIHRoaXMuc2hvd0NoZWNrYm94Rm9yTGluZSA9IHRoaXMudHJhbnNhY3Rpb25MaW5lLmNvbW1pc3Npb25Db2RlID09PSBcIjBcIjtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRQdXJjaGFzZVBvcnRhbExpbmVzKCk6IHZvaWQge1xyXG4gICAgdGhpcy5wdXJjaGFzZVBvcnRhbEZpbHRlci5wdXJjaGFzZU9yZGVyTm8gPSB0aGlzLnRyYW5zYWN0aW9uSW5mby50cmFuc2FjdGlvbk5yLnRvU3RyaW5nKCk7XHJcbiAgICB0aGlzLnB1cmNoYXNlUG9ydGFsRmlsdGVyLmxpbmVJZCA9IHRoaXMudHJhbnNhY3Rpb25MaW5lLmxpbmVOci50b1N0cmluZygpO1xyXG4gICAgdGhpcy5nZXRQdXJjaGFzZVBvcnRhbExpbmUudHJhbnNJZFB1cmNoYXNlID0gdGhpcy50cmFuc2FjdGlvbkluZm8uaWQ7XHJcbiAgICB0aGlzLmdldFB1cmNoYXNlUG9ydGFsTGluZS5maWx0ZXJPYmplY3QgPSB0aGlzLnB1cmNoYXNlUG9ydGFsRmlsdGVyO1xyXG5cclxuICAgIHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdldFB1cmNoYXNlUG9ydGFsTGluZXModGhpcy5nZXRQdXJjaGFzZVBvcnRhbExpbmUpLnRoZW4oKHJlc3VsdDogUHVyY2hhc2VQb3J0YWxMaW5lW10pID0+IHtcclxuICAgICAgdGhpcy5wdXJjaGFzZVBvcnRhbExpbmVzID0gcmVzdWx0O1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlT3BlblNpZGVQYW5lbChtb3VzZUNsaWNrOiBQb2ludGVyRXZlbnQpOiB2b2lkIHtcclxuICAgIGNvbnN0IHRhcmdldDogSFRNTEVsZW1lbnQgPSA8SFRNTEVsZW1lbnQ+bW91c2VDbGljay50YXJnZXQ7XHJcbiAgICBpZiAodGFyZ2V0ICYmIHRhcmdldC5kYXRhc2V0ICYmIHRhcmdldC5kYXRhc2V0WydhY3Rpb24nXSAmJiB0YXJnZXQuZGF0YXNldFsnYWN0aW9uJ10gPT09ICdvcGVuU2lkZVBhbmVsJykge1xyXG4gICAgICB0aGlzLl90cmFuc2FjdGlvbkV2ZW50U2VydmljZS5vcGVuU2lkZVBhbmVsLm5leHQodGhpcy50cmFuc2FjdGlvbkxpbmUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuIl19
106
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tcHVyY2hhc2Utb3JkZXItbGluZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cmFuc2FjdGlvbi9zcmMvbGliL2NvbXBvbmVudC90cmFuc2FjdGlvbi1saW5lL3RyYW5zYWN0aW9uLXB1cmNoYXNlLW9yZGVyLWxpbmUvdHJhbnNhY3Rpb24tcHVyY2hhc2Utb3JkZXItbGluZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxXQUFXLEVBQXFCLGlCQUFpQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzNGLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBQ3hFLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ3JFLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLDRDQUE0QyxDQUFDO0FBRW5GLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLDhDQUE4QyxDQUFDO0FBQ3JGLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLDRDQUE0QyxDQUFDO0FBMkRwRixNQUFNLE9BQU8scUNBQXNDLFNBQVEsd0JBQXdCO0lBYWpGLFlBQ1MsZ0JBQWtDLEVBQy9CLGtCQUFzQyxFQUN4Qyx3QkFBaUQ7UUFFekQsS0FBSyxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFKbkIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUMvQix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBQ3hDLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBeUI7UUFmM0MsNEJBQXVCLEdBQW1DLHVCQUF1QixDQUFDO1FBTzNGLHVCQUFrQixHQUFZLEtBQUssQ0FBQztRQUNwQyx3QkFBbUIsR0FBWSxLQUFLLENBQUM7UUFFcEMsVUFBSyxHQUFtQixFQUFFLENBQUM7SUFRbkMsQ0FBQztJQWZNLFNBQVM7UUFDZCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFlRCxRQUFRO1FBQ04sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQ2IsSUFBSSxDQUFDLHdCQUF3QixDQUFDLG1DQUFtQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ3BGLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxJQUFJLElBQUksQ0FBQyxtQkFBbUIsQ0FBQztRQUNwRCxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFFUyxrQkFBa0I7UUFDMUIsSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsY0FBYyxLQUFLLEdBQUcsQ0FBQztJQUN6RSxDQUFDO0lBRU0sbUJBQW1CLENBQUMsVUFBd0I7UUFDakQsTUFBTSxNQUFNLEdBQTZCLFVBQVUsQ0FBQyxNQUFNLENBQUM7UUFDM0QsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNwQixJQUFJLE1BQU0sSUFBSSxNQUFNLENBQUMsT0FBTyxJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsS0FBSyxlQUFlLEVBQUU7WUFDeEcsSUFBSSxDQUFDLHdCQUF3QixDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1NBQ3hFO0lBQ0gsQ0FBQzs7O1lBcEdGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsb0NBQW9DO2dCQUM5QyxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW1EVDtnQkFDRCxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTthQUN0Qzs7O1lBN0RPLGdCQUFnQjtZQURoQixrQkFBa0I7WUFFbEIsdUJBQXVCOzs7d0JBaUU1QixXQUFXLFNBQUMsMENBQTBDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEhvc3RCaW5kaW5nLCBPbkRlc3Ryb3ksIE9uSW5pdCwgVmlld0VuY2Fwc3VsYXRpb259IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25TZXJ2aWNlfSBmcm9tIFwiLi4vLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7SWNvbkNhY2hlU2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2UvaWNvbi1jYWNoZS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25FdmVudFNlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLWV2ZW50LnNlcnZpY2VcIjtcclxuaW1wb3J0IHtTdWJzY3JpcHRpb259IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25UeXBlQ2F0ZWdvcnl9IGZyb20gXCIuLi8uLi8uLi9lbnVtL3RyYW5zYWN0aW9uLXR5cGUtY2F0ZWdvcnkuZW51bVwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uQmFzZUNvbXBvbmVudH0gZnJvbSBcIi4uLy4uL2NvcmUvYmFzZS90cmFuc2FjdGlvbi1iYXNlLmNvbXBvbmVudFwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFwiY28tdHJhbnNhY3Rpb24tcHVyY2hhc2Utb3JkZXItbGluZVwiLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWJhc2UtbGluZVxyXG4gICAgICAgICAgW3RyYW5zYWN0aW9uSW5mb109XCJ0cmFuc2FjdGlvbkluZm9cIlxyXG4gICAgICAgICAgW3RyYW5zYWN0aW9uTGluZV09XCJ0cmFuc2FjdGlvbkxpbmVcIlxyXG4gICAgICAgICAgW3ByZXZpZXddPVwicHJldmlld1wiXHJcbiAgICAgICAgICBbY2hlY2tib3hdPVwic2hvd0NoZWNrYm94Rm9yTGluZVwiXHJcbiAgICAgICAgICBbY2hlY2tib3hWYWx1ZV09XCJzZWxlY3RlZFwiXHJcbiAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlT3BlblNpZGVQYW5lbCgkZXZlbnQpXCJcclxuICAgICAgICAgIChjaGVja2JveFZhbHVlQ2hhbmdlZCk9XCJzZWxlY3RlZCA9ICRldmVudFwiPlxyXG4gICAgICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24tbGluZS13cmFwcGVyXCIgZGF0YS1hY3Rpb249XCJvcGVuU2lkZVBhbmVsXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0cmFuc2FjdGlvbi1saW5lLXdyYXBwZXJcIj5cclxuICAgICAgICAgICAgICA8Y28tdHJhbnNhY3Rpb24tbGluZS1zdGF0dXNiYXIgW3RyYW5zYWN0aW9uTGluZV09XCJ0cmFuc2FjdGlvbkxpbmVcIiBbdHJhbnNhY3Rpb25JbmZvXT1cInRyYW5zYWN0aW9uSW5mb1wiIFthY3RpdmVDYXRlZ29yeV09XCJ0cmFuc2FjdGlvblR5cGVDYXRlZ29yeS5QdXJjaGFzZU9yZGVyUmVjZWl2ZWRHb29kc1wiPjwvY28tdHJhbnNhY3Rpb24tbGluZS1zdGF0dXNiYXI+XHJcbiAgICAgICAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWxpbmUtZGVsaXZlcnktZGF0ZS1idXR0b24gW3RyYW5zYWN0aW9uTGluZV09XCJ0cmFuc2FjdGlvbkxpbmVcIiBjbGFzcz1cInR3by1jb2x1bW5cIj48L2NvLXRyYW5zYWN0aW9uLWxpbmUtZGVsaXZlcnktZGF0ZS1idXR0b24+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLWxpbmUtdG90YWxzLWdyaWRcIj5cclxuICAgICAgICAgICAgICAgIDxjby10cmFuc2FjdGlvbi1wdXJjaGFzZS1wb3J0YWwtbGluZS1ncm9zcy1vcmRlci1wcmljZSBjbGFzcz1cInRyYW5zYWN0aW9uLWxpbmUtdG90YWxzLWdyaWQgcHJpY2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwdXJjaGFzZVBvcnRhbExpbmVdPVwidHJhbnNhY3Rpb25MaW5lLnB1cmNoYXNlUG9ydGFsTGluZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3Nob3dMYWJlbF09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgPjwvY28tdHJhbnNhY3Rpb24tcHVyY2hhc2UtcG9ydGFsLWxpbmUtZ3Jvc3Mtb3JkZXItcHJpY2U+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24tbGluZS10b3RhbHMtZ3JpZCBkaXNjb3VudFwiIChjbGljayk9XCJzaG93RGlhbG9nRGlzY291bnQgPSB0cnVlXCI+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNvLXRyYW5zYWN0aW9uLW92ZXJmbG93LWVsbGlwc2lzXCIgW2NsYXNzLnRyYW5zYWN0aW9uLW5lZ2F0aXZlLXZhbHVlXT1cInRyYW5zYWN0aW9uTGluZS5saW5lVG90YWxEaXNjb3VudEFtb3VudCA8IDBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgW3RleHRDb250ZW50XT1cIih0cmFuc2FjdGlvbkxpbmUucHVyY2hhc2VQb3J0YWxMaW5lPy5kaXNjb3VudE9yZGVyUHJpY2UgfCBjb0N1cnJlbmN5KSB8fCAoJ0RJU0NPVU5UJyB8IGxvY2FsaXplKVwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGNvLXRyYW5zYWN0aW9uLXB1cmNoYXNlLXBvcnRhbC1saW5lLW5ldC1vcmRlci1wcmljZSBjbGFzcz1cInRyYW5zYWN0aW9uLWxpbmUtdG90YWxzLWdyaWQgcHJpY2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcHVyY2hhc2VQb3J0YWxMaW5lXT1cInRyYW5zYWN0aW9uTGluZS5wdXJjaGFzZVBvcnRhbExpbmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc2hvd0xhYmVsXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgPjwvY28tdHJhbnNhY3Rpb24tcHVyY2hhc2UtcG9ydGFsLWxpbmUtbmV0LW9yZGVyLXByaWNlPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInZlcnRpY2FsLWJvcmRlclwiPjwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24tbGluZS10b3RhbHMtZ3JpZFwiIGRhdGEtYWN0aW9uPVwib3BlblNpZGVQYW5lbFwiPlxyXG4gICAgICAgICAgICAgIDxjby1pY29uIGNsYXNzPVwidHJhbnNhY3Rpb24tbGluZS1zdXBwbGllci1pY29uXCIgW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5JbmR1c3RyeVNvbGlkKVwiPjwvY28taWNvbj5cclxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRyYW5zYWN0aW9uLWxpbmUtc3VwcGxpZXItaWRcIiBbdGV4dENvbnRlbnRdPVwidHJhbnNhY3Rpb25MaW5lLnN1cHBsaWVyQXJ0aWNsZU51bWJlclwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24tbGluZS10b3RhbHMtZ3JpZFwiPlxyXG4gICAgICAgICAgICAgICAgPGNvLXRyYW5zYWN0aW9uLXB1cmNoYXNlLXBvcnRhbC1saW5lLWNvbmZpcm1lZC1wcmljZSBjbGFzcz1cInRyYW5zYWN0aW9uLWxpbmUtdG90YWxzLWdyaWQgcHJpY2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcHVyY2hhc2VQb3J0YWxMaW5lXT1cInRyYW5zYWN0aW9uTGluZS5wdXJjaGFzZVBvcnRhbExpbmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc2hvd0xhYmVsXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgPjwvY28tdHJhbnNhY3Rpb24tcHVyY2hhc2UtcG9ydGFsLWxpbmUtY29uZmlybWVkLXByaWNlPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxjby1pbnB1dC1udW1iZXItcGlja2VyIGNsYXNzPVwiYW1vdW50LW51bWJlci1waWNrZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFttb2RlbF09XCJ0cmFuc2FjdGlvbkxpbmUucHVyY2hhc2VQb3J0YWxMaW5lPy5hbW91bnRBY2NlcHRlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG1vZGVsQ2hhbmdlKT1cInRyYW5zYWN0aW9uTGluZS5wdXJjaGFzZVBvcnRhbExpbmUuYW1vdW50QWNjZXB0ZWQgPSAkZXZlbnRcIlxyXG4gICAgICAgICAgICAgID48L2NvLWlucHV0LW51bWJlci1waWNrZXI+XHJcbiAgICAgICAgICAgICAgPGNvLXRyYW5zYWN0aW9uLXB1cmNoYXNlLXBvcnRhbC1saW5lLWNvbmZpcm1lZC1kZWxpdmVyeS1kYXRlIFtwdXJjaGFzZVBvcnRhbExpbmVdPVwidHJhbnNhY3Rpb25MaW5lLnB1cmNoYXNlUG9ydGFsTGluZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInR3by1jb2x1bW5cIlxyXG4gICAgICAgICAgICAgID48L2NvLXRyYW5zYWN0aW9uLXB1cmNoYXNlLXBvcnRhbC1saW5lLWNvbmZpcm1lZC1kZWxpdmVyeS1kYXRlPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9jby10cmFuc2FjdGlvbi1iYXNlLWxpbmU+XHJcbiAgYCxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXHJcbn0pXHJcblxyXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25QdXJjaGFzZU9yZGVyTGluZUNvbXBvbmVudCBleHRlbmRzIFRyYW5zYWN0aW9uQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICBwdWJsaWMgcmVhZG9ubHkgdHJhbnNhY3Rpb25UeXBlQ2F0ZWdvcnk6IHR5cGVvZiBUcmFuc2FjdGlvblR5cGVDYXRlZ29yeSA9IFRyYW5zYWN0aW9uVHlwZUNhdGVnb3J5O1xyXG5cclxuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5jby10cmFuc2FjdGlvbi1wdXJjaGFzZS1vcmRlci1saW5lXCIpXHJcbiAgcHVibGljIHNob3dDbGFzcygpIHtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNob3dEaWFsb2dEaXNjb3VudDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyBzaG93Q2hlY2tib3hGb3JMaW5lOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIHByaXZhdGUgX3N1YnM6IFN1YnNjcmlwdGlvbltdID0gW107XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIGljb25DYWNoZVNlcnZpY2U6IEljb25DYWNoZVNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgdHJhbnNhY3Rpb25TZXJ2aWNlOiBUcmFuc2FjdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF90cmFuc2FjdGlvbkV2ZW50U2VydmljZTogVHJhbnNhY3Rpb25FdmVudFNlcnZpY2VcclxuICApIHtcclxuICAgIHN1cGVyKHRyYW5zYWN0aW9uU2VydmljZSk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuX3N1YnMucHVzaChcclxuICAgICAgdGhpcy5fdHJhbnNhY3Rpb25FdmVudFNlcnZpY2Uuc2VsZWN0QWxsU2FsZXNPcmRlckxpbmVzRm9yUHVyY2hhc2Uuc3Vic2NyaWJlKCh2YWx1ZSkgPT4ge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWQgPSB2YWx1ZSAmJiB0aGlzLnNob3dDaGVja2JveEZvckxpbmU7XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLl9zdWJzLmZvckVhY2gocyA9PiBzLnVuc3Vic2NyaWJlKCkpO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIHRyYW5zYWN0aW9uTGluZVNldCgpOiB2b2lkIHtcclxuICAgIHRoaXMuc2hvd0NoZWNrYm94Rm9yTGluZSA9IHRoaXMudHJhbnNhY3Rpb25MaW5lLmNvbW1pc3Npb25Db2RlID09PSBcIjBcIjtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVPcGVuU2lkZVBhbmVsKG1vdXNlQ2xpY2s6IFBvaW50ZXJFdmVudCk6IHZvaWQge1xyXG4gICAgY29uc3QgdGFyZ2V0OiBIVE1MRWxlbWVudCA9IDxIVE1MRWxlbWVudD5tb3VzZUNsaWNrLnRhcmdldDtcclxuICAgIGNvbnNvbGUubG9nKHRhcmdldCk7XHJcbiAgICBpZiAodGFyZ2V0ICYmIHRhcmdldC5kYXRhc2V0ICYmIHRhcmdldC5kYXRhc2V0WydhY3Rpb24nXSAmJiB0YXJnZXQuZGF0YXNldFsnYWN0aW9uJ10gPT09ICdvcGVuU2lkZVBhbmVsJykge1xyXG4gICAgICB0aGlzLl90cmFuc2FjdGlvbkV2ZW50U2VydmljZS5vcGVuU2lkZVBhbmVsLm5leHQodGhpcy50cmFuc2FjdGlvbkxpbmUpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,99 @@
1
+ import { Component, HostBinding, ViewEncapsulation } from "@angular/core";
2
+ import { TransactionService } from "../../../service/transaction.service";
3
+ import { IconCacheService } from "../../../service/icon-cache.service";
4
+ import { TransactionEventService } from "../../../service/transaction-event.service";
5
+ import { TransactionBaseComponent } from "../../core/base/transaction-base.component";
6
+ import { TransactionTypeCategory } from "../../../enum/transaction-type-category.enum";
7
+ export class TransactionPurchaseOverviewLineComponent extends TransactionBaseComponent {
8
+ constructor(iconCacheService, transactionService, _transactionEventService) {
9
+ super(transactionService);
10
+ this.iconCacheService = iconCacheService;
11
+ this.transactionService = transactionService;
12
+ this._transactionEventService = _transactionEventService;
13
+ this.category = TransactionTypeCategory;
14
+ this.showCheckboxForLine = false;
15
+ this._subs = [];
16
+ }
17
+ showClass() {
18
+ return true;
19
+ }
20
+ ngOnInit() {
21
+ this._subs.push(this._transactionEventService.selectAllSalesOrderLinesForPurchase.subscribe((value) => {
22
+ this.selected = value;
23
+ }));
24
+ }
25
+ ngOnDestroy() {
26
+ this._subs.forEach(s => s.unsubscribe());
27
+ }
28
+ handleRelationNavigation(event) {
29
+ event.preventDefault();
30
+ event.stopPropagation();
31
+ this._transactionEventService.relationNavigation.next(this.transactionLine.customerId);
32
+ }
33
+ transactionLineSet() {
34
+ // this.showCheckboxForLine = this.transactionLine && this.transactionLine.commissionCode === "0";
35
+ }
36
+ }
37
+ TransactionPurchaseOverviewLineComponent.decorators = [
38
+ { type: Component, args: [{
39
+ selector: "co-transaction-purchase-overview-line",
40
+ template: `
41
+ <co-transaction-base-line [transactionInfo]="transactionInfo"
42
+ [transactionLine]="transactionLine"
43
+ [preview]="preview"
44
+ [checkbox]="showCheckboxForLine"
45
+ [checkboxValue]="selected"
46
+ (checkboxValueChanged)="selected = $event">
47
+ <ng-container *ngIf="transactionLine.isArticle">
48
+ <div class="transaction-line-wrapper">
49
+ <div *ngIf=!preview class="transaction-line-extended-wrapper">
50
+ <div class="column1">
51
+ <co-transaction-navigation-button
52
+ [label]="'NOT_IMPLEMENTED' | localize"
53
+ (buttonClicked)="handleRelationNavigation($event)"></co-transaction-navigation-button>
54
+ <co-transaction-line-delivery-date-button [transactionLine]="transactionLine" class="two-column"></co-transaction-line-delivery-date-button>
55
+ </div>
56
+ <div class="column2">
57
+ <co-transaction-line-warehouse-button [transactionLine]="transactionLine" [transactionInfo]="transactionInfo"></co-transaction-line-warehouse-button>
58
+ <co-transaction-line-statusbar
59
+ [transactionLine]="transactionLine"
60
+ [transactionInfo]="transactionInfo"
61
+ [activeCategory]="category.SalesOrderPurchase"></co-transaction-line-statusbar>
62
+ </div>
63
+ <div class="column3">
64
+ <co-transaction-line-delivery-button [transactionLine]="transactionLine" [transactionInfo]="transactionInfo"></co-transaction-line-delivery-button>
65
+ </div>
66
+ </div>
67
+ <div class="transaction-line-totals">
68
+ <co-transaction-line-price class="transaction-line-totals-price price"
69
+ [transactionLine]="transactionLine"
70
+ [showLabel]="false"
71
+ [defaultEditMode]="false"
72
+ ></co-transaction-line-price>
73
+ <co-transaction-line-discount-button [transactionLine]="transactionLine" [transactionInfo]="transactionInfo"></co-transaction-line-discount-button>
74
+ <div *ngIf=!preview class="transaction-line-totals-amount">
75
+ <co-transaction-line-amount class="amount-number-picker" [transactionLine]="transactionLine" [transactionInfo]="transactionInfo"></co-transaction-line-amount>
76
+ </div>
77
+ <co-editable-label class="transaction-line-totals-total price"
78
+ [model]="transactionLine.displayNetLineTotal | coCurrency"
79
+ [editModel]="transactionLine.displayNetLineTotal"
80
+ [readonly]="readonly"
81
+ [commit]="!readonly"
82
+ ></co-editable-label>
83
+ </div>
84
+ </div>
85
+ </ng-container>
86
+ </co-transaction-base-line>
87
+ `,
88
+ encapsulation: ViewEncapsulation.None
89
+ },] }
90
+ ];
91
+ TransactionPurchaseOverviewLineComponent.ctorParameters = () => [
92
+ { type: IconCacheService },
93
+ { type: TransactionService },
94
+ { type: TransactionEventService }
95
+ ];
96
+ TransactionPurchaseOverviewLineComponent.propDecorators = {
97
+ showClass: [{ type: HostBinding, args: ["class.co-transaction-purchase-overview-line",] }]
98
+ };
99
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tcHVyY2hhc2Utb3ZlcnZpZXctbGluZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cmFuc2FjdGlvbi9zcmMvbGliL2NvbXBvbmVudC90cmFuc2FjdGlvbi1saW5lL3RyYW5zYWN0aW9uLXB1cmNoYXNlLW92ZXJ2aWV3LWxpbmUvdHJhbnNhY3Rpb24tcHVyY2hhc2Utb3ZlcnZpZXctbGluZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxXQUFXLEVBQXFCLGlCQUFpQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzNGLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBQ3hFLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBRXJFLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLDRDQUE0QyxDQUFDO0FBQ25GLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLDRDQUE0QyxDQUFDO0FBQ3BGLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLDhDQUE4QyxDQUFDO0FBc0RyRixNQUFNLE9BQU8sd0NBQXlDLFNBQVEsd0JBQXdCO0lBWXBGLFlBQ1MsZ0JBQWtDLEVBQy9CLGtCQUFzQyxFQUN4Qyx3QkFBaUQ7UUFDekQsS0FBSyxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFIbkIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUMvQix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBQ3hDLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBeUI7UUFkM0MsYUFBUSxHQUFtQyx1QkFBdUIsQ0FBQztRQU81RSx3QkFBbUIsR0FBWSxLQUFLLENBQUM7UUFFcEMsVUFBSyxHQUFtQixFQUFFLENBQUM7SUFPbkMsQ0FBQztJQWJNLFNBQVM7UUFDZCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFhRCxRQUFRO1FBQ04sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQ2IsSUFBSSxDQUFDLHdCQUF3QixDQUFDLG1DQUFtQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ3BGLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ3hCLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVNLHdCQUF3QixDQUFDLEtBQWlCO1FBQy9DLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN2QixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLHdCQUF3QixDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBRSxJQUFJLENBQUMsZUFBdUIsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNsRyxDQUFDO0lBRVMsa0JBQWtCO1FBQzFCLGtHQUFrRztJQUNwRyxDQUFDOzs7WUEzRkYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSx1Q0FBdUM7Z0JBQ2pELFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0ErQ1Q7Z0JBQ0QsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7YUFDdEM7OztZQXpETyxnQkFBZ0I7WUFEaEIsa0JBQWtCO1lBR2xCLHVCQUF1Qjs7O3dCQTJENUIsV0FBVyxTQUFDLDZDQUE2QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBIb3N0QmluZGluZywgT25EZXN0cm95LCBPbkluaXQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uU2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24uc2VydmljZVwiO1xyXG5pbXBvcnQge0ljb25DYWNoZVNlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi9zZXJ2aWNlL2ljb24tY2FjaGUuc2VydmljZVwiO1xyXG5pbXBvcnQge1N1YnNjcmlwdGlvbn0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkV2ZW50U2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24tZXZlbnQuc2VydmljZVwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uQmFzZUNvbXBvbmVudH0gZnJvbSBcIi4uLy4uL2NvcmUvYmFzZS90cmFuc2FjdGlvbi1iYXNlLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uVHlwZUNhdGVnb3J5fSBmcm9tIFwiLi4vLi4vLi4vZW51bS90cmFuc2FjdGlvbi10eXBlLWNhdGVnb3J5LmVudW1cIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcImNvLXRyYW5zYWN0aW9uLXB1cmNoYXNlLW92ZXJ2aWV3LWxpbmVcIixcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGNvLXRyYW5zYWN0aW9uLWJhc2UtbGluZSBbdHJhbnNhY3Rpb25JbmZvXT1cInRyYW5zYWN0aW9uSW5mb1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0cmFuc2FjdGlvbkxpbmVdPVwidHJhbnNhY3Rpb25MaW5lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3ByZXZpZXddPVwicHJldmlld1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjaGVja2JveF09XCJzaG93Q2hlY2tib3hGb3JMaW5lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NoZWNrYm94VmFsdWVdPVwic2VsZWN0ZWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2hlY2tib3hWYWx1ZUNoYW5nZWQpPVwic2VsZWN0ZWQgPSAkZXZlbnRcIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInRyYW5zYWN0aW9uTGluZS5pc0FydGljbGVcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24tbGluZS13cmFwcGVyXCI+XHJcbiAgICAgICAgICA8ZGl2ICpuZ0lmPSFwcmV2aWV3IGNsYXNzPVwidHJhbnNhY3Rpb24tbGluZS1leHRlbmRlZC13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2x1bW4xXCI+XHJcbiAgICAgICAgICAgICAgPGNvLXRyYW5zYWN0aW9uLW5hdmlnYXRpb24tYnV0dG9uXHJcbiAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ05PVF9JTVBMRU1FTlRFRCcgfCBsb2NhbGl6ZVwiXHJcbiAgICAgICAgICAgICAgICAoYnV0dG9uQ2xpY2tlZCk9XCJoYW5kbGVSZWxhdGlvbk5hdmlnYXRpb24oJGV2ZW50KVwiPjwvY28tdHJhbnNhY3Rpb24tbmF2aWdhdGlvbi1idXR0b24+XHJcbiAgICAgICAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWxpbmUtZGVsaXZlcnktZGF0ZS1idXR0b24gW3RyYW5zYWN0aW9uTGluZV09XCJ0cmFuc2FjdGlvbkxpbmVcIiBjbGFzcz1cInR3by1jb2x1bW5cIj48L2NvLXRyYW5zYWN0aW9uLWxpbmUtZGVsaXZlcnktZGF0ZS1idXR0b24+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sdW1uMlwiPlxyXG4gICAgICAgICAgICAgIDxjby10cmFuc2FjdGlvbi1saW5lLXdhcmVob3VzZS1idXR0b24gW3RyYW5zYWN0aW9uTGluZV09XCJ0cmFuc2FjdGlvbkxpbmVcIiBbdHJhbnNhY3Rpb25JbmZvXT1cInRyYW5zYWN0aW9uSW5mb1wiPjwvY28tdHJhbnNhY3Rpb24tbGluZS13YXJlaG91c2UtYnV0dG9uPlxyXG4gICAgICAgICAgICAgIDxjby10cmFuc2FjdGlvbi1saW5lLXN0YXR1c2JhclxyXG4gICAgICAgICAgICAgICAgW3RyYW5zYWN0aW9uTGluZV09XCJ0cmFuc2FjdGlvbkxpbmVcIlxyXG4gICAgICAgICAgICAgICAgW3RyYW5zYWN0aW9uSW5mb109XCJ0cmFuc2FjdGlvbkluZm9cIlxyXG4gICAgICAgICAgICAgICAgW2FjdGl2ZUNhdGVnb3J5XT1cImNhdGVnb3J5LlNhbGVzT3JkZXJQdXJjaGFzZVwiPjwvY28tdHJhbnNhY3Rpb24tbGluZS1zdGF0dXNiYXI+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sdW1uM1wiPlxyXG4gICAgICAgICAgICAgIDxjby10cmFuc2FjdGlvbi1saW5lLWRlbGl2ZXJ5LWJ1dHRvbiBbdHJhbnNhY3Rpb25MaW5lXT1cInRyYW5zYWN0aW9uTGluZVwiIFt0cmFuc2FjdGlvbkluZm9dPVwidHJhbnNhY3Rpb25JbmZvXCI+PC9jby10cmFuc2FjdGlvbi1saW5lLWRlbGl2ZXJ5LWJ1dHRvbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0cmFuc2FjdGlvbi1saW5lLXRvdGFsc1wiPlxyXG4gICAgICAgICAgICA8Y28tdHJhbnNhY3Rpb24tbGluZS1wcmljZSBjbGFzcz1cInRyYW5zYWN0aW9uLWxpbmUtdG90YWxzLXByaWNlIHByaWNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3RyYW5zYWN0aW9uTGluZV09XCJ0cmFuc2FjdGlvbkxpbmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc2hvd0xhYmVsXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2RlZmF1bHRFZGl0TW9kZV09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgID48L2NvLXRyYW5zYWN0aW9uLWxpbmUtcHJpY2U+XHJcbiAgICAgICAgICAgIDxjby10cmFuc2FjdGlvbi1saW5lLWRpc2NvdW50LWJ1dHRvbiBbdHJhbnNhY3Rpb25MaW5lXT1cInRyYW5zYWN0aW9uTGluZVwiIFt0cmFuc2FjdGlvbkluZm9dPVwidHJhbnNhY3Rpb25JbmZvXCI+PC9jby10cmFuc2FjdGlvbi1saW5lLWRpc2NvdW50LWJ1dHRvbj5cclxuICAgICAgICAgICAgPGRpdiAqbmdJZj0hcHJldmlldyBjbGFzcz1cInRyYW5zYWN0aW9uLWxpbmUtdG90YWxzLWFtb3VudFwiPlxyXG4gICAgICAgICAgICAgIDxjby10cmFuc2FjdGlvbi1saW5lLWFtb3VudCBjbGFzcz1cImFtb3VudC1udW1iZXItcGlja2VyXCIgW3RyYW5zYWN0aW9uTGluZV09XCJ0cmFuc2FjdGlvbkxpbmVcIiBbdHJhbnNhY3Rpb25JbmZvXT1cInRyYW5zYWN0aW9uSW5mb1wiPjwvY28tdHJhbnNhY3Rpb24tbGluZS1hbW91bnQ+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8Y28tZWRpdGFibGUtbGFiZWwgY2xhc3M9XCJ0cmFuc2FjdGlvbi1saW5lLXRvdGFscy10b3RhbCBwcmljZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbW9kZWxdPVwidHJhbnNhY3Rpb25MaW5lLmRpc3BsYXlOZXRMaW5lVG90YWwgfCBjb0N1cnJlbmN5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtlZGl0TW9kZWxdPVwidHJhbnNhY3Rpb25MaW5lLmRpc3BsYXlOZXRMaW5lVG90YWxcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjb21taXRdPVwiIXJlYWRvbmx5XCJcclxuICAgICAgICAgICAgPjwvY28tZWRpdGFibGUtbGFiZWw+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8L2NvLXRyYW5zYWN0aW9uLWJhc2UtbGluZT5cclxuICBgLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uUHVyY2hhc2VPdmVydmlld0xpbmVDb21wb25lbnQgZXh0ZW5kcyBUcmFuc2FjdGlvbkJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgcHVibGljIHJlYWRvbmx5IGNhdGVnb3J5OiB0eXBlb2YgVHJhbnNhY3Rpb25UeXBlQ2F0ZWdvcnkgPSBUcmFuc2FjdGlvblR5cGVDYXRlZ29yeTtcclxuXHJcbiAgQEhvc3RCaW5kaW5nKFwiY2xhc3MuY28tdHJhbnNhY3Rpb24tcHVyY2hhc2Utb3ZlcnZpZXctbGluZVwiKVxyXG4gIHB1YmxpYyBzaG93Q2xhc3MoKSB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzaG93Q2hlY2tib3hGb3JMaW5lOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIHByaXZhdGUgX3N1YnM6IFN1YnNjcmlwdGlvbltdID0gW107XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIGljb25DYWNoZVNlcnZpY2U6IEljb25DYWNoZVNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgdHJhbnNhY3Rpb25TZXJ2aWNlOiBUcmFuc2FjdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF90cmFuc2FjdGlvbkV2ZW50U2VydmljZTogVHJhbnNhY3Rpb25FdmVudFNlcnZpY2UpIHtcclxuICAgIHN1cGVyKHRyYW5zYWN0aW9uU2VydmljZSk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuX3N1YnMucHVzaChcclxuICAgICAgdGhpcy5fdHJhbnNhY3Rpb25FdmVudFNlcnZpY2Uuc2VsZWN0QWxsU2FsZXNPcmRlckxpbmVzRm9yUHVyY2hhc2Uuc3Vic2NyaWJlKCh2YWx1ZSkgPT4ge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWQgPSB2YWx1ZTtcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuX3N1YnMuZm9yRWFjaChzID0+IHMudW5zdWJzY3JpYmUoKSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlUmVsYXRpb25OYXZpZ2F0aW9uKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XHJcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICB0aGlzLl90cmFuc2FjdGlvbkV2ZW50U2VydmljZS5yZWxhdGlvbk5hdmlnYXRpb24ubmV4dCgodGhpcy50cmFuc2FjdGlvbkxpbmUgYXMgYW55KS5jdXN0b21lcklkKTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCB0cmFuc2FjdGlvbkxpbmVTZXQoKTogdm9pZCB7XHJcbiAgICAvLyB0aGlzLnNob3dDaGVja2JveEZvckxpbmUgPSB0aGlzLnRyYW5zYWN0aW9uTGluZSAmJiB0aGlzLnRyYW5zYWN0aW9uTGluZS5jb21taXNzaW9uQ29kZSA9PT0gXCIwXCI7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,41 @@
1
+ import { NgModule } from "@angular/core";
2
+ import { CommonModule } from "@angular/common";
3
+ import { TransactionPurchaseOverviewLineComponent } from "./transaction-purchase-overview-line.component";
4
+ import { TransactionBaseLineModule } from "../transaction-base-line/transaction-base-line.module";
5
+ import { TransactionNavigationButtonModule } from "../../transaction-navigation-button/transaction-navigation-button.module";
6
+ import { PipeModule } from "../../../pipe/pipe.module";
7
+ import { TransactionLineDeliveryDateButtonModule } from "../../transaction-line-fields/transaction-line-delivery-date-button.module";
8
+ import { TransactionLineWarehouseButtonModule } from "../../transaction-line-fields/transaction-line-warehouse-button.module";
9
+ import { TransactionLineDeliveryButtonModule } from "../../transaction-line-fields/transaction-line-delivery-button.module";
10
+ import { TransactionLineStatusbarModule } from "../../transaction-line-statusbar/transaction-line-statusbar.module";
11
+ import { TransactionLinePriceModule } from "../../transaction-line-fields/transaction-line-price/transaction-line-price.module";
12
+ import { TransactionLineDiscountButtonModule } from "../../transaction-line-fields/transaction-line-discount-button.module";
13
+ import { TransactionLineAmountModule } from "../../transaction-line-fields/transaction-line-amount.module";
14
+ import { EditableLabelModule } from "../../editable-label/editable-label.module";
15
+ export class TransactionPurchaseOverviewLineModule {
16
+ }
17
+ TransactionPurchaseOverviewLineModule.decorators = [
18
+ { type: NgModule, args: [{
19
+ imports: [
20
+ CommonModule,
21
+ TransactionBaseLineModule,
22
+ TransactionNavigationButtonModule,
23
+ PipeModule,
24
+ TransactionLineDeliveryDateButtonModule,
25
+ TransactionLineWarehouseButtonModule,
26
+ TransactionLineDeliveryButtonModule,
27
+ TransactionLineStatusbarModule,
28
+ TransactionLinePriceModule,
29
+ TransactionLineDiscountButtonModule,
30
+ TransactionLineAmountModule,
31
+ EditableLabelModule
32
+ ],
33
+ declarations: [
34
+ TransactionPurchaseOverviewLineComponent
35
+ ],
36
+ exports: [
37
+ TransactionPurchaseOverviewLineComponent
38
+ ]
39
+ },] }
40
+ ];
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tcHVyY2hhc2Utb3ZlcnZpZXctbGluZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cmFuc2FjdGlvbi9zcmMvbGliL2NvbXBvbmVudC90cmFuc2FjdGlvbi1saW5lL3RyYW5zYWN0aW9uLXB1cmNoYXNlLW92ZXJ2aWV3LWxpbmUvdHJhbnNhY3Rpb24tcHVyY2hhc2Utb3ZlcnZpZXctbGluZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLHdDQUF3QyxFQUFDLE1BQU0sZ0RBQWdELENBQUM7QUFDeEcsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sdURBQXVELENBQUM7QUFDaEcsT0FBTyxFQUFDLGlDQUFpQyxFQUFDLE1BQU0sMEVBQTBFLENBQUM7QUFDM0gsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ3JELE9BQU8sRUFBQyx1Q0FBdUMsRUFBQyxNQUFNLDRFQUE0RSxDQUFDO0FBQ25JLE9BQU8sRUFBQyxvQ0FBb0MsRUFBQyxNQUFNLHdFQUF3RSxDQUFDO0FBQzVILE9BQU8sRUFBQyxtQ0FBbUMsRUFBQyxNQUFNLHVFQUF1RSxDQUFDO0FBQzFILE9BQU8sRUFBQyw4QkFBOEIsRUFBQyxNQUFNLG9FQUFvRSxDQUFDO0FBQ2xILE9BQU8sRUFBQywwQkFBMEIsRUFBQyxNQUFNLG9GQUFvRixDQUFDO0FBQzlILE9BQU8sRUFBQyxtQ0FBbUMsRUFBQyxNQUFNLHVFQUF1RSxDQUFDO0FBQzFILE9BQU8sRUFBQywyQkFBMkIsRUFBQyxNQUFNLDhEQUE4RCxDQUFDO0FBQ3pHLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLDRDQUE0QyxDQUFDO0FBd0IvRSxNQUFNLE9BQU8scUNBQXFDOzs7WUF0QmpELFFBQVEsU0FBQztnQkFDUixPQUFPLEVBQUU7b0JBQ1AsWUFBWTtvQkFDWix5QkFBeUI7b0JBQ3pCLGlDQUFpQztvQkFDakMsVUFBVTtvQkFDVix1Q0FBdUM7b0JBQ3ZDLG9DQUFvQztvQkFDcEMsbUNBQW1DO29CQUNuQyw4QkFBOEI7b0JBQzlCLDBCQUEwQjtvQkFDMUIsbUNBQW1DO29CQUNuQywyQkFBMkI7b0JBQzNCLG1CQUFtQjtpQkFDcEI7Z0JBQ0QsWUFBWSxFQUFFO29CQUNaLHdDQUF3QztpQkFDekM7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQLHdDQUF3QztpQkFDekM7YUFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TmdNb2R1bGV9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25QdXJjaGFzZU92ZXJ2aWV3TGluZUNvbXBvbmVudH0gZnJvbSBcIi4vdHJhbnNhY3Rpb24tcHVyY2hhc2Utb3ZlcnZpZXctbGluZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkJhc2VMaW5lTW9kdWxlfSBmcm9tIFwiLi4vdHJhbnNhY3Rpb24tYmFzZS1saW5lL3RyYW5zYWN0aW9uLWJhc2UtbGluZS5tb2R1bGVcIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvbk5hdmlnYXRpb25CdXR0b25Nb2R1bGV9IGZyb20gXCIuLi8uLi90cmFuc2FjdGlvbi1uYXZpZ2F0aW9uLWJ1dHRvbi90cmFuc2FjdGlvbi1uYXZpZ2F0aW9uLWJ1dHRvbi5tb2R1bGVcIjtcclxuaW1wb3J0IHtQaXBlTW9kdWxlfSBmcm9tIFwiLi4vLi4vLi4vcGlwZS9waXBlLm1vZHVsZVwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uTGluZURlbGl2ZXJ5RGF0ZUJ1dHRvbk1vZHVsZX0gZnJvbSBcIi4uLy4uL3RyYW5zYWN0aW9uLWxpbmUtZmllbGRzL3RyYW5zYWN0aW9uLWxpbmUtZGVsaXZlcnktZGF0ZS1idXR0b24ubW9kdWxlXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25MaW5lV2FyZWhvdXNlQnV0dG9uTW9kdWxlfSBmcm9tIFwiLi4vLi4vdHJhbnNhY3Rpb24tbGluZS1maWVsZHMvdHJhbnNhY3Rpb24tbGluZS13YXJlaG91c2UtYnV0dG9uLm1vZHVsZVwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uTGluZURlbGl2ZXJ5QnV0dG9uTW9kdWxlfSBmcm9tIFwiLi4vLi4vdHJhbnNhY3Rpb24tbGluZS1maWVsZHMvdHJhbnNhY3Rpb24tbGluZS1kZWxpdmVyeS1idXR0b24ubW9kdWxlXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25MaW5lU3RhdHVzYmFyTW9kdWxlfSBmcm9tIFwiLi4vLi4vdHJhbnNhY3Rpb24tbGluZS1zdGF0dXNiYXIvdHJhbnNhY3Rpb24tbGluZS1zdGF0dXNiYXIubW9kdWxlXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25MaW5lUHJpY2VNb2R1bGV9IGZyb20gXCIuLi8uLi90cmFuc2FjdGlvbi1saW5lLWZpZWxkcy90cmFuc2FjdGlvbi1saW5lLXByaWNlL3RyYW5zYWN0aW9uLWxpbmUtcHJpY2UubW9kdWxlXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25MaW5lRGlzY291bnRCdXR0b25Nb2R1bGV9IGZyb20gXCIuLi8uLi90cmFuc2FjdGlvbi1saW5lLWZpZWxkcy90cmFuc2FjdGlvbi1saW5lLWRpc2NvdW50LWJ1dHRvbi5tb2R1bGVcIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkxpbmVBbW91bnRNb2R1bGV9IGZyb20gXCIuLi8uLi90cmFuc2FjdGlvbi1saW5lLWZpZWxkcy90cmFuc2FjdGlvbi1saW5lLWFtb3VudC5tb2R1bGVcIjtcclxuaW1wb3J0IHtFZGl0YWJsZUxhYmVsTW9kdWxlfSBmcm9tIFwiLi4vLi4vZWRpdGFibGUtbGFiZWwvZWRpdGFibGUtbGFiZWwubW9kdWxlXCI7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIFRyYW5zYWN0aW9uQmFzZUxpbmVNb2R1bGUsXHJcbiAgICBUcmFuc2FjdGlvbk5hdmlnYXRpb25CdXR0b25Nb2R1bGUsXHJcbiAgICBQaXBlTW9kdWxlLFxyXG4gICAgVHJhbnNhY3Rpb25MaW5lRGVsaXZlcnlEYXRlQnV0dG9uTW9kdWxlLFxyXG4gICAgVHJhbnNhY3Rpb25MaW5lV2FyZWhvdXNlQnV0dG9uTW9kdWxlLFxyXG4gICAgVHJhbnNhY3Rpb25MaW5lRGVsaXZlcnlCdXR0b25Nb2R1bGUsXHJcbiAgICBUcmFuc2FjdGlvbkxpbmVTdGF0dXNiYXJNb2R1bGUsXHJcbiAgICBUcmFuc2FjdGlvbkxpbmVQcmljZU1vZHVsZSxcclxuICAgIFRyYW5zYWN0aW9uTGluZURpc2NvdW50QnV0dG9uTW9kdWxlLFxyXG4gICAgVHJhbnNhY3Rpb25MaW5lQW1vdW50TW9kdWxlLFxyXG4gICAgRWRpdGFibGVMYWJlbE1vZHVsZVxyXG4gIF0sXHJcbiAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICBUcmFuc2FjdGlvblB1cmNoYXNlT3ZlcnZpZXdMaW5lQ29tcG9uZW50XHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBUcmFuc2FjdGlvblB1cmNoYXNlT3ZlcnZpZXdMaW5lQ29tcG9uZW50XHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25QdXJjaGFzZU92ZXJ2aWV3TGluZU1vZHVsZSB7XHJcbn1cclxuIl19
@@ -1,24 +1,22 @@
1
- import { __awaiter } from "tslib";
2
1
  import { Component, HostBinding, ViewEncapsulation } from "@angular/core";
3
2
  import { Icon } from "../../../enum/icon.enum";
4
3
  import { IconCacheService } from "../../../service/icon-cache.service";
5
4
  import { TransactionService } from "../../../service/transaction.service";
6
5
  import { TransactionEventService } from "../../../service/transaction-event.service";
7
- import { TransactionReceiveGoodsService } from "./service/transaction-receive-goods.service";
8
- import { ExtendedTransactionLineViewModel } from "../../../model/extended-transaction-line-view-model";
9
6
  import { TransactionTypeCategory } from "../../../enum/transaction-type-category.enum";
10
7
  import { TransactionBaseComponent } from "../../core/base/transaction-base.component";
8
+ import { DialogService } from "../../../service/dialog.service";
11
9
  export class TransactionReceiveGoodsLineComponent extends TransactionBaseComponent {
12
- constructor(iconCacheService, transactionService, _transactionService, _transactionEventService, _transactionReceiveGoodsService) {
10
+ constructor(iconCacheService, transactionService, _transactionEventService, _dialogService) {
13
11
  super(transactionService);
14
12
  this.iconCacheService = iconCacheService;
15
13
  this.transactionService = transactionService;
16
- this._transactionService = _transactionService;
17
14
  this._transactionEventService = _transactionEventService;
18
- this._transactionReceiveGoodsService = _transactionReceiveGoodsService;
15
+ this._dialogService = _dialogService;
19
16
  this.icons = Icon;
20
17
  this.transactionTypeCategory = TransactionTypeCategory;
21
- this.viewModel = new ExtendedTransactionLineViewModel();
18
+ this.warehouseButtonEnabled = false;
19
+ this.showCheckboxForLine = false;
22
20
  this._subscriptions = [];
23
21
  }
24
22
  showClass() {
@@ -26,38 +24,16 @@ export class TransactionReceiveGoodsLineComponent extends TransactionBaseCompone
26
24
  }
27
25
  ngOnInit() {
28
26
  this.allowPartialDelivery = this.transactionInfo.allowPartialDelivery;
29
- this.transactionKind = this.transactionInfo.transactionKind;
30
- this._initViewModel();
31
- this._subscriptions.push(this._transactionEventService.selectAllLines.subscribe((value) => {
32
- this.viewModel.selected = this.viewModel.quantityReceived === this.viewModel.amount || this.viewModel.quantityToReceive < 0 ? false : value;
33
- }), this._transactionEventService.transactionLineChanged.subscribe((line) => {
34
- if (line.lineNr === this.viewModel.lineNr) {
35
- this.viewModel.quantityToReceive = line.quantityToReceive;
36
- this.viewModel.quantityReceived = line.quantityReceived;
27
+ this._subscriptions.push(this._transactionEventService.selectAllPurchaseOrderLinesForReceiveGoods.subscribe((value) => {
28
+ this.selected = value && this.showCheckboxForLine;
29
+ }), this._transactionEventService.transactionLineChanged.subscribe((transLine) => {
30
+ if (transLine.lineNr === this.transactionLine.lineNr) {
31
+ this._handleTransactionLineSet(transLine);
37
32
  }
38
33
  }));
39
34
  }
40
35
  ngOnDestroy() {
41
36
  this._subscriptions.forEach(s => s.unsubscribe());
42
- this._transactionReceiveGoodsService.lines = [];
43
- }
44
- _initViewModel() {
45
- Object.assign(this.viewModel, this.transactionLine);
46
- this.viewModel.quantityToReceive = 0;
47
- this.viewModel.quantityReceived = 0;
48
- this.viewModel.lineNr = this.transactionLine.lineNr;
49
- this.viewModel.transId = this.transactionInfo.id;
50
- }
51
- handleRowVisible() {
52
- return __awaiter(this, void 0, void 0, function* () {
53
- if (this.transactionLine.isArticle) {
54
- const goodsReceiptStatus = yield this._transactionService.getGoodsReceiptStatus(this.transactionInfo.id, this.transactionLine.lineNr);
55
- this.viewModel.quantityToReceive = goodsReceiptStatus.quantityToReceive;
56
- this.viewModel.quantityReceived = goodsReceiptStatus.quantityReceived;
57
- this.viewModel.selected = this.viewModel.quantityReceived !== this.viewModel.amount && !this.viewModel.isSerialNrRequired && !this.viewModel.isBatchNrRequired && this.viewModel.quantityToReceive > 0;
58
- this._transactionReceiveGoodsService.lines.push(this.viewModel);
59
- }
60
- });
61
37
  }
62
38
  changeLineAmount(amount) {
63
39
  }
@@ -67,38 +43,51 @@ export class TransactionReceiveGoodsLineComponent extends TransactionBaseCompone
67
43
  this._transactionEventService.openSidePanel.next(this.transactionLine);
68
44
  }
69
45
  }
70
- warehouseButtonReadonly() {
71
- return this.viewModel.quantityReceived === this.viewModel.amount || !this.viewModel.isLocationRequired || this.viewModel.isBatchNrRequired || this.viewModel.isSerialNrRequired;
46
+ transactionSet() {
47
+ if (this.transactionLines.find(l => l.isLocationRequired)) {
48
+ this.transactionService.showWarehouseLocationPopupOnce();
49
+ }
50
+ }
51
+ transactionLineSet() {
52
+ this._handleTransactionLineSet(this.transactionLine);
53
+ }
54
+ _handleTransactionLineSet(transLine) {
55
+ this.warehouseButtonEnabled = transLine.quantityReceived === transLine.amount ||
56
+ !transLine.isLocationRequired || transLine.isBatchNrRequired || transLine.isSerialNrRequired;
57
+ this.showCheckboxForLine = transLine.quantityReceived !== transLine.amount || transLine.quantityToReceive > 0;
72
58
  }
73
59
  }
74
60
  TransactionReceiveGoodsLineComponent.decorators = [
75
61
  { type: Component, args: [{
76
62
  selector: "co-transaction-receive-goods-line",
77
63
  template: `
78
- <co-transaction-base-line [transactionInfo]="transactionInfo" [transactionLine]="viewModel" [preview]="preview" [actionButtons]="false" (click)="handleLineClicked($event)" observeVisibility (visible)="handleRowVisible()">
64
+ <co-transaction-base-line
65
+ [transactionInfo]="transactionInfo"
66
+ [transactionLine]="transactionLine"
67
+ [preview]="preview"
68
+ [checkbox]="showCheckboxForLine"
69
+ [checkboxValue]="selected"
70
+ [actionButtons]="false"
71
+ (click)="handleLineClicked($event)" observeVisibility>
79
72
  <div class="line-content-wrapper" data-action="openSidePanel">
80
73
  <co-transaction-line-statusbar [transactionLine]="transactionLine" [transactionInfo]="transactionInfo" [activeCategory]="transactionTypeCategory.PurchaseOrderReceivedGoods"></co-transaction-line-statusbar>
81
- <co-transaction-line-warehouse-button [transactionLine]="viewModel" [readonly]="viewModel.quantityReceived === viewModel.amount" [transactionInfo]="transactionInfo"></co-transaction-line-warehouse-button>
82
- <co-transaction-line-warehouse-location-button [readonly]="warehouseButtonReadonly()" [line]="viewModel"></co-transaction-line-warehouse-location-button>
74
+ <co-transaction-line-warehouse-button [transactionLine]="transactionLine" [readonly]="transactionLine.quantityReceived === transactionLine.amount" [transactionInfo]="transactionInfo"></co-transaction-line-warehouse-button>
75
+ <co-transaction-line-warehouse-location-button [readonly]="!warehouseButtonEnabled" [(locationNr)]="transactionLine.locationNr"></co-transaction-line-warehouse-location-button>
83
76
  <co-editable-label class="transaction-line-totals-total price"
84
- [model]="viewModel.amount?.toString() + 'x'"
77
+ [model]="transactionLine.amount?.toString() + 'x'"
85
78
  [readonly]="true"
86
79
  ></co-editable-label>
87
80
  <div class="transaction-line-totals-amount"
88
- [class.fully-delivered]="viewModel.quantityReceived === viewModel.amount"
89
- [class.partially-delivered]="viewModel.quantityReceived !== viewModel.amount && viewModel.quantityReceived !== 0">
81
+ [class.fully-delivered]="transactionLine.quantityReceived === transactionLine.amount"
82
+ [class.partially-delivered]="transactionLine.quantityReceived !== transactionLine.amount && transactionLine.quantityReceived !== 0">
90
83
  <co-input-number-picker class="amount-number-picker"
91
- [(model)]="viewModel.quantityToReceive"
92
- [min]="!allowPartialDelivery ? viewModel.amount : 1"
93
- [max]="viewModel.amount - viewModel.quantityReceived"
94
- [readonly]="readonly || !allowPartialDelivery || viewModel.quantityReceived === viewModel.amount"
84
+ [(model)]="transactionLine.quantityToReceive"
85
+ [min]="!allowPartialDelivery ? transactionLine.amount : 1"
86
+ [max]="transactionLine.amount - transactionLine.quantityReceived"
87
+ [readonly]="readonly || !allowPartialDelivery || transactionLine.quantityReceived === transactionLine.amount"
95
88
  (modelChange)="changeLineAmount($event)">
96
89
  </co-input-number-picker>
97
90
  </div>
98
- <co-input-checkbox class="transaction-line-checkbox"
99
- [(model)]="viewModel.selected"
100
- [disabled]="viewModel.quantityReceived === viewModel.amount || viewModel.quantityToReceive < 0"
101
- ></co-input-checkbox>
102
91
  <div class="print-button">
103
92
  <co-icon [iconData]="iconCacheService.getIcon(icons.PrintSolid)"></co-icon>
104
93
  <span class="price" [textContent]="1"></span>
@@ -112,11 +101,10 @@ TransactionReceiveGoodsLineComponent.decorators = [
112
101
  TransactionReceiveGoodsLineComponent.ctorParameters = () => [
113
102
  { type: IconCacheService },
114
103
  { type: TransactionService },
115
- { type: TransactionService },
116
104
  { type: TransactionEventService },
117
- { type: TransactionReceiveGoodsService }
105
+ { type: DialogService }
118
106
  ];
119
107
  TransactionReceiveGoodsLineComponent.propDecorators = {
120
108
  showClass: [{ type: HostBinding, args: ["class.co-transaction-receive-goods-line",] }]
121
109
  };
122
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tcmVjZWl2ZS1nb29kcy1saW5lLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L3RyYW5zYWN0aW9uLWxpbmUvdHJhbnNhY3Rpb24tcmVjZWl2ZS1nb29kcy1saW5lL3RyYW5zYWN0aW9uLXJlY2VpdmUtZ29vZHMtbGluZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsV0FBVyxFQUFVLGlCQUFpQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2hGLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUNyRSxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxzQ0FBc0MsQ0FBQztBQUN4RSxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSw0Q0FBNEMsQ0FBQztBQUduRixPQUFPLEVBQUMsOEJBQThCLEVBQUMsTUFBTSw2Q0FBNkMsQ0FBQztBQUMzRixPQUFPLEVBQUMsZ0NBQWdDLEVBQUMsTUFBTSxxREFBcUQsQ0FBQztBQUVyRyxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSw4Q0FBOEMsQ0FBQztBQUNyRixPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSw0Q0FBNEMsQ0FBQztBQXNDcEYsTUFBTSxPQUFPLG9DQUFxQyxTQUFRLHdCQUF3QjtJQWVoRixZQUNTLGdCQUFrQyxFQUMvQixrQkFBc0MsRUFDeEMsbUJBQXVDLEVBQ3ZDLHdCQUFpRCxFQUNqRCwrQkFBK0Q7UUFFdkUsS0FBSyxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFObkIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUMvQix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBQ3hD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QStCVDtnQkFDRCxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTthQUN0Qzs7O1lBOUNPLGdCQUFnQjtZQUNoQixrQkFBa0I7WUFBbEIsa0JBQWtCO1lBQ2xCLHVCQUF1QjtZQUd2Qiw4QkFBOEI7Ozt3QkFrRG5DLFdBQVcsU0FBQyx5Q0FBeUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSG9zdEJpbmRpbmcsIE9uSW5pdCwgVmlld0VuY2Fwc3VsYXRpb259IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7SWNvbn0gZnJvbSBcIi4uLy4uLy4uL2VudW0vaWNvbi5lbnVtXCI7XHJcbmltcG9ydCB7SWNvbkNhY2hlU2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2UvaWNvbi1jYWNoZS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25TZXJ2aWNlfSBmcm9tIFwiLi4vLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25FdmVudFNlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLWV2ZW50LnNlcnZpY2VcIjtcclxuaW1wb3J0IHtTdWJzY3JpcHRpb259IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7R29vZHNSZWNlaXB0U3RhdHVzfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL2dvb2RzLXJlY2VpcHQtc3RhdHVzLmJvXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25SZWNlaXZlR29vZHNTZXJ2aWNlfSBmcm9tIFwiLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLXJlY2VpdmUtZ29vZHMuc2VydmljZVwiO1xyXG5pbXBvcnQge0V4dGVuZGVkVHJhbnNhY3Rpb25MaW5lVmlld01vZGVsfSBmcm9tIFwiLi4vLi4vLi4vbW9kZWwvZXh0ZW5kZWQtdHJhbnNhY3Rpb24tbGluZS12aWV3LW1vZGVsXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25LaW5kfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL2VudW0vdHJhbnNhY3Rpb24ta2luZC5lbnVtXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25UeXBlQ2F0ZWdvcnl9IGZyb20gXCIuLi8uLi8uLi9lbnVtL3RyYW5zYWN0aW9uLXR5cGUtY2F0ZWdvcnkuZW51bVwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uQmFzZUNvbXBvbmVudH0gZnJvbSBcIi4uLy4uL2NvcmUvYmFzZS90cmFuc2FjdGlvbi1iYXNlLmNvbXBvbmVudFwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFwiY28tdHJhbnNhY3Rpb24tcmVjZWl2ZS1nb29kcy1saW5lXCIsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxjby10cmFuc2FjdGlvbi1iYXNlLWxpbmUgW3RyYW5zYWN0aW9uSW5mb109XCJ0cmFuc2FjdGlvbkluZm9cIiBbdHJhbnNhY3Rpb25MaW5lXT1cInZpZXdNb2RlbFwiIFtwcmV2aWV3XT1cInByZXZpZXdcIiBbYWN0aW9uQnV0dG9uc109XCJmYWxzZVwiIChjbGljayk9XCJoYW5kbGVMaW5lQ2xpY2tlZCgkZXZlbnQpXCIgb2JzZXJ2ZVZpc2liaWxpdHkgKHZpc2libGUpPVwiaGFuZGxlUm93VmlzaWJsZSgpXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJsaW5lLWNvbnRlbnQtd3JhcHBlclwiIGRhdGEtYWN0aW9uPVwib3BlblNpZGVQYW5lbFwiPlxyXG4gICAgICAgIDxjby10cmFuc2FjdGlvbi1saW5lLXN0YXR1c2JhciBbdHJhbnNhY3Rpb25MaW5lXT1cInRyYW5zYWN0aW9uTGluZVwiIFt0cmFuc2FjdGlvbkluZm9dPVwidHJhbnNhY3Rpb25JbmZvXCIgW2FjdGl2ZUNhdGVnb3J5XT1cInRyYW5zYWN0aW9uVHlwZUNhdGVnb3J5LlB1cmNoYXNlT3JkZXJSZWNlaXZlZEdvb2RzXCI+PC9jby10cmFuc2FjdGlvbi1saW5lLXN0YXR1c2Jhcj5cclxuICAgICAgICA8Y28tdHJhbnNhY3Rpb24tbGluZS13YXJlaG91c2UtYnV0dG9uIFt0cmFuc2FjdGlvbkxpbmVdPVwidmlld01vZGVsXCIgW3JlYWRvbmx5XT1cInZpZXdNb2RlbC5xdWFudGl0eVJlY2VpdmVkID09PSB2aWV3TW9kZWwuYW1vdW50XCIgW3RyYW5zYWN0aW9uSW5mb109XCJ0cmFuc2FjdGlvbkluZm9cIj48L2NvLXRyYW5zYWN0aW9uLWxpbmUtd2FyZWhvdXNlLWJ1dHRvbj5cclxuICAgICAgICA8Y28tdHJhbnNhY3Rpb24tbGluZS13YXJlaG91c2UtbG9jYXRpb24tYnV0dG9uIFtyZWFkb25seV09XCJ3YXJlaG91c2VCdXR0b25SZWFkb25seSgpXCIgW2xpbmVdPVwidmlld01vZGVsXCI+PC9jby10cmFuc2FjdGlvbi1saW5lLXdhcmVob3VzZS1sb2NhdGlvbi1idXR0b24+XHJcbiAgICAgICAgPGNvLWVkaXRhYmxlLWxhYmVsIGNsYXNzPVwidHJhbnNhY3Rpb24tbGluZS10b3RhbHMtdG90YWwgcHJpY2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBbbW9kZWxdPVwidmlld01vZGVsLmFtb3VudD8udG9TdHJpbmcoKSArICd4J1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZWFkb25seV09XCJ0cnVlXCJcclxuICAgICAgICA+PC9jby1lZGl0YWJsZS1sYWJlbD5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24tbGluZS10b3RhbHMtYW1vdW50XCJcclxuICAgICAgICAgICAgIFtjbGFzcy5mdWxseS1kZWxpdmVyZWRdPVwidmlld01vZGVsLnF1YW50aXR5UmVjZWl2ZWQgPT09IHZpZXdNb2RlbC5hbW91bnRcIlxyXG4gICAgICAgICAgICAgW2NsYXNzLnBhcnRpYWxseS1kZWxpdmVyZWRdPVwidmlld01vZGVsLnF1YW50aXR5UmVjZWl2ZWQgIT09IHZpZXdNb2RlbC5hbW91bnQgJiYgdmlld01vZGVsLnF1YW50aXR5UmVjZWl2ZWQgIT09IDBcIj5cclxuICAgICAgICAgIDxjby1pbnB1dC1udW1iZXItcGlja2VyIGNsYXNzPVwiYW1vdW50LW51bWJlci1waWNrZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwidmlld01vZGVsLnF1YW50aXR5VG9SZWNlaXZlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFttaW5dPVwiIWFsbG93UGFydGlhbERlbGl2ZXJ5ID8gdmlld01vZGVsLmFtb3VudCA6IDFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW21heF09XCJ2aWV3TW9kZWwuYW1vdW50IC0gdmlld01vZGVsLnF1YW50aXR5UmVjZWl2ZWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5IHx8ICFhbGxvd1BhcnRpYWxEZWxpdmVyeSB8fCB2aWV3TW9kZWwucXVhbnRpdHlSZWNlaXZlZCA9PT0gdmlld01vZGVsLmFtb3VudFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobW9kZWxDaGFuZ2UpPVwiY2hhbmdlTGluZUFtb3VudCgkZXZlbnQpXCI+XHJcbiAgICAgICAgICA8L2NvLWlucHV0LW51bWJlci1waWNrZXI+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGNvLWlucHV0LWNoZWNrYm94IGNsYXNzPVwidHJhbnNhY3Rpb24tbGluZS1jaGVja2JveFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFsobW9kZWwpXT1cInZpZXdNb2RlbC5zZWxlY3RlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJ2aWV3TW9kZWwucXVhbnRpdHlSZWNlaXZlZCA9PT0gdmlld01vZGVsLmFtb3VudCB8fCB2aWV3TW9kZWwucXVhbnRpdHlUb1JlY2VpdmUgPCAwXCJcclxuICAgICAgICA+PC9jby1pbnB1dC1jaGVja2JveD5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicHJpbnQtYnV0dG9uXCI+XHJcbiAgICAgICAgICA8Y28taWNvbiBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb25zLlByaW50U29saWQpXCI+PC9jby1pY29uPlxyXG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJwcmljZVwiIFt0ZXh0Q29udGVudF09XCIxXCI+PC9zcGFuPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvY28tdHJhbnNhY3Rpb24tYmFzZS1saW5lPlxyXG4gIGAsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25SZWNlaXZlR29vZHNMaW5lQ29tcG9uZW50IGV4dGVuZHMgVHJhbnNhY3Rpb25CYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBwdWJsaWMgcmVhZG9ubHkgaWNvbnM6IHR5cGVvZiBJY29uID0gSWNvbjtcclxuICBwdWJsaWMgcmVhZG9ubHkgdHJhbnNhY3Rpb25UeXBlQ2F0ZWdvcnk6IHR5cGVvZiBUcmFuc2FjdGlvblR5cGVDYXRlZ29yeSA9IFRyYW5zYWN0aW9uVHlwZUNhdGVnb3J5O1xyXG5cclxuICBwdWJsaWMgYWxsb3dQYXJ0aWFsRGVsaXZlcnk6IGJvb2xlYW47XHJcbiAgcHVibGljIHZpZXdNb2RlbDogRXh0ZW5kZWRUcmFuc2FjdGlvbkxpbmVWaWV3TW9kZWwgPSBuZXcgRXh0ZW5kZWRUcmFuc2FjdGlvbkxpbmVWaWV3TW9kZWwoKTtcclxuICBwdWJsaWMgdHJhbnNhY3Rpb25LaW5kOiBUcmFuc2FjdGlvbktpbmQ7XHJcblxyXG4gIEBIb3N0QmluZGluZyhcImNsYXNzLmNvLXRyYW5zYWN0aW9uLXJlY2VpdmUtZ29vZHMtbGluZVwiKVxyXG4gIHB1YmxpYyBzaG93Q2xhc3MoKSB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3N1YnNjcmlwdGlvbnM6IFN1YnNjcmlwdGlvbltdID0gW107XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIGljb25DYWNoZVNlcnZpY2U6IEljb25DYWNoZVNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgdHJhbnNhY3Rpb25TZXJ2aWNlOiBUcmFuc2FjdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF90cmFuc2FjdGlvblNlcnZpY2U6IFRyYW5zYWN0aW9uU2VydmljZSxcclxuICAgIHByaXZhdGUgX3RyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlOiBUcmFuc2FjdGlvbkV2ZW50U2VydmljZSxcclxuICAgIHByaXZhdGUgX3RyYW5zYWN0aW9uUmVjZWl2ZUdvb2RzU2VydmljZTogVHJhbnNhY3Rpb25SZWNlaXZlR29vZHNTZXJ2aWNlXHJcbiAgKSB7XHJcbiAgICBzdXBlcih0cmFuc2FjdGlvblNlcnZpY2UpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5hbGxvd1BhcnRpYWxEZWxpdmVyeSA9IHRoaXMudHJhbnNhY3Rpb25JbmZvLmFsbG93UGFydGlhbERlbGl2ZXJ5O1xyXG4gICAgdGhpcy50cmFuc2FjdGlvbktpbmQgPSB0aGlzLnRyYW5zYWN0aW9uSW5mby50cmFuc2FjdGlvbktpbmQ7XHJcbiAgICB0aGlzLl9pbml0Vmlld01vZGVsKCk7XHJcblxyXG4gICAgdGhpcy5fc3Vic2NyaXB0aW9ucy5wdXNoKFxyXG4gICAgICB0aGlzLl90cmFuc2FjdGlvbkV2ZW50U2VydmljZS5zZWxlY3RBbGxMaW5lcy5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XHJcbiAgICAgICAgdGhpcy52aWV3TW9kZWwuc2VsZWN0ZWQgPSB0aGlzLnZpZXdNb2RlbC5xdWFudGl0eVJlY2VpdmVkID09PSB0aGlzLnZpZXdNb2RlbC5hbW91bnQgfHwgdGhpcy52aWV3TW9kZWwucXVhbnRpdHlUb1JlY2VpdmUgPCAwID8gZmFsc2UgOiB2YWx1ZTtcclxuICAgICAgfSksXHJcbiAgICAgIHRoaXMuX3RyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlLnRyYW5zYWN0aW9uTGluZUNoYW5nZWQuc3Vic2NyaWJlKChsaW5lKSA9PiB7XHJcbiAgICAgICAgaWYgKGxpbmUubGluZU5yID09PSB0aGlzLnZpZXdNb2RlbC5saW5lTnIpIHtcclxuICAgICAgICAgIHRoaXMudmlld01vZGVsLnF1YW50aXR5VG9SZWNlaXZlID0gbGluZS5xdWFudGl0eVRvUmVjZWl2ZTtcclxuICAgICAgICAgIHRoaXMudmlld01vZGVsLnF1YW50aXR5UmVjZWl2ZWQgPSBsaW5lLnF1YW50aXR5UmVjZWl2ZWQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gICAgKVxyXG4gIH1cclxuXHJcbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fc3Vic2NyaXB0aW9ucy5mb3JFYWNoKHMgPT4gcy51bnN1YnNjcmliZSgpKTtcclxuICAgIHRoaXMuX3RyYW5zYWN0aW9uUmVjZWl2ZUdvb2RzU2VydmljZS5saW5lcyA9IFtdO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfaW5pdFZpZXdNb2RlbCgpOiB2b2lkIHtcclxuICAgIE9iamVjdC5hc3NpZ24odGhpcy52aWV3TW9kZWwsIHRoaXMudHJhbnNhY3Rpb25MaW5lKTtcclxuICAgIHRoaXMudmlld01vZGVsLnF1YW50aXR5VG9SZWNlaXZlID0gMDtcclxuICAgIHRoaXMudmlld01vZGVsLnF1YW50aXR5UmVjZWl2ZWQgPSAwO1xyXG4gICAgdGhpcy52aWV3TW9kZWwubGluZU5yID0gdGhpcy50cmFuc2FjdGlvbkxpbmUubGluZU5yO1xyXG4gICAgdGhpcy52aWV3TW9kZWwudHJhbnNJZCA9IHRoaXMudHJhbnNhY3Rpb25JbmZvLmlkO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGhhbmRsZVJvd1Zpc2libGUoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBpZiAodGhpcy50cmFuc2FjdGlvbkxpbmUuaXNBcnRpY2xlKSB7XHJcbiAgICAgIGNvbnN0IGdvb2RzUmVjZWlwdFN0YXR1czogR29vZHNSZWNlaXB0U3RhdHVzID0gYXdhaXQgdGhpcy5fdHJhbnNhY3Rpb25TZXJ2aWNlLmdldEdvb2RzUmVjZWlwdFN0YXR1cyh0aGlzLnRyYW5zYWN0aW9uSW5mby5pZCwgdGhpcy50cmFuc2FjdGlvbkxpbmUubGluZU5yKTtcclxuICAgICAgdGhpcy52aWV3TW9kZWwucXVhbnRpdHlUb1JlY2VpdmUgPSBnb29kc1JlY2VpcHRTdGF0dXMucXVhbnRpdHlUb1JlY2VpdmU7XHJcbiAgICAgIHRoaXMudmlld01vZGVsLnF1YW50aXR5UmVjZWl2ZWQgPSBnb29kc1JlY2VpcHRTdGF0dXMucXVhbnRpdHlSZWNlaXZlZDtcclxuICAgICAgdGhpcy52aWV3TW9kZWwuc2VsZWN0ZWQgPSB0aGlzLnZpZXdNb2RlbC5xdWFudGl0eVJlY2VpdmVkICE9PSB0aGlzLnZpZXdNb2RlbC5hbW91bnQgJiYgIXRoaXMudmlld01vZGVsLmlzU2VyaWFsTnJSZXF1aXJlZCAmJiAhdGhpcy52aWV3TW9kZWwuaXNCYXRjaE5yUmVxdWlyZWQgJiYgdGhpcy52aWV3TW9kZWwucXVhbnRpdHlUb1JlY2VpdmUgPiAwO1xyXG4gICAgICB0aGlzLl90cmFuc2FjdGlvblJlY2VpdmVHb29kc1NlcnZpY2UubGluZXMucHVzaCh0aGlzLnZpZXdNb2RlbCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgY2hhbmdlTGluZUFtb3VudChhbW91bnQ6IG51bWJlcik6IHZvaWQge1xyXG5cclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVMaW5lQ2xpY2tlZChtb3VzZUNsaWNrOiBQb2ludGVyRXZlbnQpOiB2b2lkIHtcclxuICAgIGNvbnN0IHRhcmdldDogSFRNTEVsZW1lbnQgPSA8SFRNTEVsZW1lbnQ+bW91c2VDbGljay50YXJnZXQ7XHJcbiAgICBpZiAodGFyZ2V0ICYmIHRhcmdldC5kYXRhc2V0ICYmIHRhcmdldC5kYXRhc2V0WydhY3Rpb24nXSAmJiB0YXJnZXQuZGF0YXNldFsnYWN0aW9uJ10gPT09ICdvcGVuU2lkZVBhbmVsJykge1xyXG4gICAgICB0aGlzLl90cmFuc2FjdGlvbkV2ZW50U2VydmljZS5vcGVuU2lkZVBhbmVsLm5leHQodGhpcy50cmFuc2FjdGlvbkxpbmUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIHdhcmVob3VzZUJ1dHRvblJlYWRvbmx5KCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMudmlld01vZGVsLnF1YW50aXR5UmVjZWl2ZWQgPT09IHRoaXMudmlld01vZGVsLmFtb3VudCB8fCAhdGhpcy52aWV3TW9kZWwuaXNMb2NhdGlvblJlcXVpcmVkIHx8IHRoaXMudmlld01vZGVsLmlzQmF0Y2hOclJlcXVpcmVkIHx8IHRoaXMudmlld01vZGVsLmlzU2VyaWFsTnJSZXF1aXJlZDtcclxuICB9XHJcbn1cclxuIl19
110
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tcmVjZWl2ZS1nb29kcy1saW5lLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L3RyYW5zYWN0aW9uLWxpbmUvdHJhbnNhY3Rpb24tcmVjZWl2ZS1nb29kcy1saW5lL3RyYW5zYWN0aW9uLXJlY2VpdmUtZ29vZHMtbGluZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxXQUFXLEVBQVUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQzdDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ3JFLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBQ3hFLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLDRDQUE0QyxDQUFDO0FBRW5GLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLDhDQUE4QyxDQUFDO0FBQ3JGLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLDRDQUE0QyxDQUFDO0FBQ3BGLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxpQ0FBaUMsQ0FBQztBQTBDOUQsTUFBTSxPQUFPLG9DQUFxQyxTQUFRLHdCQUF3QjtJQWdCaEYsWUFDUyxnQkFBa0MsRUFDL0Isa0JBQXNDLEVBQ3hDLHdCQUFpRCxFQUNqRCxjQUE2QjtRQUVyQyxLQUFLLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUxuQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQy9CLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDeEMsNkJBQXdCLEdBQXhCLHdCQUF3QixDQUF5QjtRQUNqRCxtQkFBYyxHQUFkLGNBQWMsQ0FBZTtRQW5CdkIsVUFBSyxHQUFnQixJQUFJLENBQUM7UUFDMUIsNEJBQXVCLEdBQW1DLHVCQUF1QixDQUFDO1FBRzNGLDJCQUFzQixHQUFZLEtBQUssQ0FBQztRQU94Qyx3QkFBbUIsR0FBWSxLQUFLLENBQUM7UUFFcEMsbUJBQWMsR0FBbUIsRUFBRSxDQUFDO0lBUzVDLENBQUM7SUFmTSxTQUFTO1FBQ2QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBZU0sUUFBUTtRQUNiLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLG9CQUFvQixDQUFDO1FBRXRFLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUN0QixJQUFJLENBQUMsd0JBQXdCLENBQUMsMENBQTBDLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDM0YsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLElBQUksSUFBSSxDQUFDLG1CQUFtQixDQUFDO1FBQ3BELENBQUMsQ0FBQyxFQUNGLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxzQkFBc0IsQ0FBQyxTQUFTLENBQUMsQ0FBQyxTQUE4QixFQUFFLEVBQUU7WUFDaEcsSUFBSSxTQUFTLENBQUMsTUFBTSxLQUFLLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxFQUFFO2dCQUNwRCxJQUFJLENBQUMseUJBQXlCLENBQUMsU0FBUyxDQUFDLENBQUM7YUFDM0M7UUFDSCxDQUFDLENBQUMsQ0FDSCxDQUFBO0lBQ0gsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUNwRCxDQUFDO0lBRU0sZ0JBQWdCLENBQUMsTUFBYztJQUV0QyxDQUFDO0lBRU0saUJBQWlCLENBQUMsVUFBd0I7UUFDL0MsTUFBTSxNQUFNLEdBQTZCLFVBQVUsQ0FBQyxNQUFNLENBQUM7UUFDM0QsSUFBSSxNQUFNLElBQUksTUFBTSxDQUFDLE9BQU8sSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEtBQUssZUFBZSxFQUFFO1lBQ3hHLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztTQUN4RTtJQUNILENBQUM7SUFFUyxjQUFjO1FBQ3RCLElBQUksSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFO1lBQ3pELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyw4QkFBOEIsRUFBRSxDQUFDO1NBQzFEO0lBQ0gsQ0FBQztJQUVTLGtCQUFrQjtRQUMxQixJQUFJLENBQUMseUJBQXlCLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFTyx5QkFBeUIsQ0FBQyxTQUE4QjtRQUM5RCxJQUFJLENBQUMsc0JBQXNCLEdBQUcsU0FBUyxDQUFDLGdCQUFnQixLQUFLLFNBQVMsQ0FBQyxNQUFNO1lBQzNFLENBQUMsU0FBUyxDQUFDLGtCQUFrQixJQUFJLFNBQVMsQ0FBQyxpQkFBaUIsSUFBSSxTQUFTLENBQUMsa0JBQWtCLENBQUM7UUFDL0YsSUFBSSxDQUFDLG1CQUFtQixHQUFHLFNBQVMsQ0FBQyxnQkFBZ0IsS0FBSyxTQUFTLENBQUMsTUFBTSxJQUFJLFNBQVMsQ0FBQyxpQkFBaUIsR0FBRyxDQUFDLENBQUM7SUFDaEgsQ0FBQzs7O1lBNUdGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsbUNBQW1DO2dCQUM3QyxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FrQ1Q7Z0JBQ0QsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7YUFDdEM7OztZQS9DTyxnQkFBZ0I7WUFDaEIsa0JBQWtCO1lBQ2xCLHVCQUF1QjtZQUl2QixhQUFhOzs7d0JBaURsQixXQUFXLFNBQUMseUNBQXlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEhvc3RCaW5kaW5nLCBPbkluaXQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge0ljb259IGZyb20gXCIuLi8uLi8uLi9lbnVtL2ljb24uZW51bVwiO1xyXG5pbXBvcnQge0ljb25DYWNoZVNlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi9zZXJ2aWNlL2ljb24tY2FjaGUuc2VydmljZVwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uU2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24uc2VydmljZVwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi1ldmVudC5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7U3Vic2NyaXB0aW9ufSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uVHlwZUNhdGVnb3J5fSBmcm9tIFwiLi4vLi4vLi4vZW51bS90cmFuc2FjdGlvbi10eXBlLWNhdGVnb3J5LmVudW1cIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkJhc2VDb21wb25lbnR9IGZyb20gXCIuLi8uLi9jb3JlL2Jhc2UvdHJhbnNhY3Rpb24tYmFzZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHtEaWFsb2dTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vLi4vc2VydmljZS9kaWFsb2cuc2VydmljZVwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uTGluZUluZm99IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvdHJhbnNhY3Rpb24tbGluZS1pbmZvLmJvXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJjby10cmFuc2FjdGlvbi1yZWNlaXZlLWdvb2RzLWxpbmVcIixcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGNvLXRyYW5zYWN0aW9uLWJhc2UtbGluZVxyXG4gICAgICBbdHJhbnNhY3Rpb25JbmZvXT1cInRyYW5zYWN0aW9uSW5mb1wiXHJcbiAgICAgIFt0cmFuc2FjdGlvbkxpbmVdPVwidHJhbnNhY3Rpb25MaW5lXCJcclxuICAgICAgW3ByZXZpZXddPVwicHJldmlld1wiXHJcbiAgICAgIFtjaGVja2JveF09XCJzaG93Q2hlY2tib3hGb3JMaW5lXCJcclxuICAgICAgW2NoZWNrYm94VmFsdWVdPVwic2VsZWN0ZWRcIlxyXG4gICAgICBbYWN0aW9uQnV0dG9uc109XCJmYWxzZVwiXHJcbiAgICAgIChjbGljayk9XCJoYW5kbGVMaW5lQ2xpY2tlZCgkZXZlbnQpXCIgb2JzZXJ2ZVZpc2liaWxpdHk+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJsaW5lLWNvbnRlbnQtd3JhcHBlclwiIGRhdGEtYWN0aW9uPVwib3BlblNpZGVQYW5lbFwiPlxyXG4gICAgICAgIDxjby10cmFuc2FjdGlvbi1saW5lLXN0YXR1c2JhciBbdHJhbnNhY3Rpb25MaW5lXT1cInRyYW5zYWN0aW9uTGluZVwiIFt0cmFuc2FjdGlvbkluZm9dPVwidHJhbnNhY3Rpb25JbmZvXCIgW2FjdGl2ZUNhdGVnb3J5XT1cInRyYW5zYWN0aW9uVHlwZUNhdGVnb3J5LlB1cmNoYXNlT3JkZXJSZWNlaXZlZEdvb2RzXCI+PC9jby10cmFuc2FjdGlvbi1saW5lLXN0YXR1c2Jhcj5cclxuICAgICAgICA8Y28tdHJhbnNhY3Rpb24tbGluZS13YXJlaG91c2UtYnV0dG9uIFt0cmFuc2FjdGlvbkxpbmVdPVwidHJhbnNhY3Rpb25MaW5lXCIgW3JlYWRvbmx5XT1cInRyYW5zYWN0aW9uTGluZS5xdWFudGl0eVJlY2VpdmVkID09PSB0cmFuc2FjdGlvbkxpbmUuYW1vdW50XCIgW3RyYW5zYWN0aW9uSW5mb109XCJ0cmFuc2FjdGlvbkluZm9cIj48L2NvLXRyYW5zYWN0aW9uLWxpbmUtd2FyZWhvdXNlLWJ1dHRvbj5cclxuICAgICAgICA8Y28tdHJhbnNhY3Rpb24tbGluZS13YXJlaG91c2UtbG9jYXRpb24tYnV0dG9uIFtyZWFkb25seV09XCIhd2FyZWhvdXNlQnV0dG9uRW5hYmxlZFwiIFsobG9jYXRpb25OcildPVwidHJhbnNhY3Rpb25MaW5lLmxvY2F0aW9uTnJcIj48L2NvLXRyYW5zYWN0aW9uLWxpbmUtd2FyZWhvdXNlLWxvY2F0aW9uLWJ1dHRvbj5cclxuICAgICAgICA8Y28tZWRpdGFibGUtbGFiZWwgY2xhc3M9XCJ0cmFuc2FjdGlvbi1saW5lLXRvdGFscy10b3RhbCBwcmljZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFttb2RlbF09XCJ0cmFuc2FjdGlvbkxpbmUuYW1vdW50Py50b1N0cmluZygpICsgJ3gnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cInRydWVcIlxyXG4gICAgICAgID48L2NvLWVkaXRhYmxlLWxhYmVsPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0cmFuc2FjdGlvbi1saW5lLXRvdGFscy1hbW91bnRcIlxyXG4gICAgICAgICAgICAgW2NsYXNzLmZ1bGx5LWRlbGl2ZXJlZF09XCJ0cmFuc2FjdGlvbkxpbmUucXVhbnRpdHlSZWNlaXZlZCA9PT0gdHJhbnNhY3Rpb25MaW5lLmFtb3VudFwiXHJcbiAgICAgICAgICAgICBbY2xhc3MucGFydGlhbGx5LWRlbGl2ZXJlZF09XCJ0cmFuc2FjdGlvbkxpbmUucXVhbnRpdHlSZWNlaXZlZCAhPT0gdHJhbnNhY3Rpb25MaW5lLmFtb3VudCAmJiB0cmFuc2FjdGlvbkxpbmUucXVhbnRpdHlSZWNlaXZlZCAhPT0gMFwiPlxyXG4gICAgICAgICAgPGNvLWlucHV0LW51bWJlci1waWNrZXIgY2xhc3M9XCJhbW91bnQtbnVtYmVyLXBpY2tlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKG1vZGVsKV09XCJ0cmFuc2FjdGlvbkxpbmUucXVhbnRpdHlUb1JlY2VpdmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW21pbl09XCIhYWxsb3dQYXJ0aWFsRGVsaXZlcnkgPyB0cmFuc2FjdGlvbkxpbmUuYW1vdW50IDogMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbWF4XT1cInRyYW5zYWN0aW9uTGluZS5hbW91bnQgLSB0cmFuc2FjdGlvbkxpbmUucXVhbnRpdHlSZWNlaXZlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHkgfHwgIWFsbG93UGFydGlhbERlbGl2ZXJ5IHx8IHRyYW5zYWN0aW9uTGluZS5xdWFudGl0eVJlY2VpdmVkID09PSB0cmFuc2FjdGlvbkxpbmUuYW1vdW50XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChtb2RlbENoYW5nZSk9XCJjaGFuZ2VMaW5lQW1vdW50KCRldmVudClcIj5cclxuICAgICAgICAgIDwvY28taW5wdXQtbnVtYmVyLXBpY2tlcj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicHJpbnQtYnV0dG9uXCI+XHJcbiAgICAgICAgICA8Y28taWNvbiBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb25zLlByaW50U29saWQpXCI+PC9jby1pY29uPlxyXG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJwcmljZVwiIFt0ZXh0Q29udGVudF09XCIxXCI+PC9zcGFuPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvY28tdHJhbnNhY3Rpb24tYmFzZS1saW5lPlxyXG4gIGAsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25SZWNlaXZlR29vZHNMaW5lQ29tcG9uZW50IGV4dGVuZHMgVHJhbnNhY3Rpb25CYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBwdWJsaWMgcmVhZG9ubHkgaWNvbnM6IHR5cGVvZiBJY29uID0gSWNvbjtcclxuICBwdWJsaWMgcmVhZG9ubHkgdHJhbnNhY3Rpb25UeXBlQ2F0ZWdvcnk6IHR5cGVvZiBUcmFuc2FjdGlvblR5cGVDYXRlZ29yeSA9IFRyYW5zYWN0aW9uVHlwZUNhdGVnb3J5O1xyXG5cclxuICBwdWJsaWMgYWxsb3dQYXJ0aWFsRGVsaXZlcnk6IGJvb2xlYW47XHJcbiAgcHVibGljIHdhcmVob3VzZUJ1dHRvbkVuYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgQEhvc3RCaW5kaW5nKFwiY2xhc3MuY28tdHJhbnNhY3Rpb24tcmVjZWl2ZS1nb29kcy1saW5lXCIpXHJcbiAgcHVibGljIHNob3dDbGFzcygpIHtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNob3dDaGVja2JveEZvckxpbmU6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgcHJpdmF0ZSBfc3Vic2NyaXB0aW9uczogU3Vic2NyaXB0aW9uW10gPSBbXTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgaWNvbkNhY2hlU2VydmljZTogSWNvbkNhY2hlU2VydmljZSxcclxuICAgIHByb3RlY3RlZCB0cmFuc2FjdGlvblNlcnZpY2U6IFRyYW5zYWN0aW9uU2VydmljZSxcclxuICAgIHByaXZhdGUgX3RyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlOiBUcmFuc2FjdGlvbkV2ZW50U2VydmljZSxcclxuICAgIHByaXZhdGUgX2RpYWxvZ1NlcnZpY2U6IERpYWxvZ1NlcnZpY2VcclxuICApIHtcclxuICAgIHN1cGVyKHRyYW5zYWN0aW9uU2VydmljZSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmFsbG93UGFydGlhbERlbGl2ZXJ5ID0gdGhpcy50cmFuc2FjdGlvbkluZm8uYWxsb3dQYXJ0aWFsRGVsaXZlcnk7XHJcblxyXG4gICAgdGhpcy5fc3Vic2NyaXB0aW9ucy5wdXNoKFxyXG4gICAgICB0aGlzLl90cmFuc2FjdGlvbkV2ZW50U2VydmljZS5zZWxlY3RBbGxQdXJjaGFzZU9yZGVyTGluZXNGb3JSZWNlaXZlR29vZHMuc3Vic2NyaWJlKCh2YWx1ZSkgPT4ge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWQgPSB2YWx1ZSAmJiB0aGlzLnNob3dDaGVja2JveEZvckxpbmU7XHJcbiAgICAgIH0pLFxyXG4gICAgICB0aGlzLl90cmFuc2FjdGlvbkV2ZW50U2VydmljZS50cmFuc2FjdGlvbkxpbmVDaGFuZ2VkLnN1YnNjcmliZSgodHJhbnNMaW5lOiBUcmFuc2FjdGlvbkxpbmVJbmZvKSA9PiB7XHJcbiAgICAgICAgaWYgKHRyYW5zTGluZS5saW5lTnIgPT09IHRoaXMudHJhbnNhY3Rpb25MaW5lLmxpbmVOcikge1xyXG4gICAgICAgICAgdGhpcy5faGFuZGxlVHJhbnNhY3Rpb25MaW5lU2V0KHRyYW5zTGluZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gICAgKVxyXG4gIH1cclxuXHJcbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fc3Vic2NyaXB0aW9ucy5mb3JFYWNoKHMgPT4gcy51bnN1YnNjcmliZSgpKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjaGFuZ2VMaW5lQW1vdW50KGFtb3VudDogbnVtYmVyKTogdm9pZCB7XHJcblxyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZUxpbmVDbGlja2VkKG1vdXNlQ2xpY2s6IFBvaW50ZXJFdmVudCk6IHZvaWQge1xyXG4gICAgY29uc3QgdGFyZ2V0OiBIVE1MRWxlbWVudCA9IDxIVE1MRWxlbWVudD5tb3VzZUNsaWNrLnRhcmdldDtcclxuICAgIGlmICh0YXJnZXQgJiYgdGFyZ2V0LmRhdGFzZXQgJiYgdGFyZ2V0LmRhdGFzZXRbJ2FjdGlvbiddICYmIHRhcmdldC5kYXRhc2V0WydhY3Rpb24nXSA9PT0gJ29wZW5TaWRlUGFuZWwnKSB7XHJcbiAgICAgIHRoaXMuX3RyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlLm9wZW5TaWRlUGFuZWwubmV4dCh0aGlzLnRyYW5zYWN0aW9uTGluZSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgdHJhbnNhY3Rpb25TZXQoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy50cmFuc2FjdGlvbkxpbmVzLmZpbmQobCA9PiBsLmlzTG9jYXRpb25SZXF1aXJlZCkpIHtcclxuICAgICAgdGhpcy50cmFuc2FjdGlvblNlcnZpY2Uuc2hvd1dhcmVob3VzZUxvY2F0aW9uUG9wdXBPbmNlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgdHJhbnNhY3Rpb25MaW5lU2V0KCkge1xyXG4gICAgdGhpcy5faGFuZGxlVHJhbnNhY3Rpb25MaW5lU2V0KHRoaXMudHJhbnNhY3Rpb25MaW5lKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2hhbmRsZVRyYW5zYWN0aW9uTGluZVNldCh0cmFuc0xpbmU6IFRyYW5zYWN0aW9uTGluZUluZm8pOiB2b2lkIHtcclxuICAgIHRoaXMud2FyZWhvdXNlQnV0dG9uRW5hYmxlZCA9IHRyYW5zTGluZS5xdWFudGl0eVJlY2VpdmVkID09PSB0cmFuc0xpbmUuYW1vdW50IHx8XHJcbiAgICAgICF0cmFuc0xpbmUuaXNMb2NhdGlvblJlcXVpcmVkIHx8IHRyYW5zTGluZS5pc0JhdGNoTnJSZXF1aXJlZCB8fCB0cmFuc0xpbmUuaXNTZXJpYWxOclJlcXVpcmVkO1xyXG4gICAgdGhpcy5zaG93Q2hlY2tib3hGb3JMaW5lID0gdHJhbnNMaW5lLnF1YW50aXR5UmVjZWl2ZWQgIT09IHRyYW5zTGluZS5hbW91bnQgfHwgdHJhbnNMaW5lLnF1YW50aXR5VG9SZWNlaXZlID4gMDtcclxuICB9XHJcbn1cclxuIl19