@colijnit/transaction 12.1.139 → 12.1.141

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 (153) hide show
  1. package/bundles/colijnit-transaction.umd.js +1671 -388
  2. package/bundles/colijnit-transaction.umd.js.map +1 -1
  3. package/colijnit-transaction.d.ts +79 -61
  4. package/colijnit-transaction.metadata.json +1 -1
  5. package/esm2015/colijnit-transaction.js +80 -62
  6. package/esm2015/lib/component/checkout/checkout.module.js +2 -2
  7. package/esm2015/lib/component/core/base/components/default-confirm-cancel-buttons/default-confirm-cancel-buttons.component.js +48 -0
  8. package/esm2015/lib/component/core/base/components/default-confirm-cancel-buttons/default-confirm-cancel-buttons.module.js +21 -0
  9. package/esm2015/lib/component/core/base/components/default-ok-cancel-buttons/default-ok-cancel-buttons.component.js +2 -2
  10. package/esm2015/lib/component/deposit-payment/deposit-payment.component.js +3 -2
  11. package/esm2015/lib/component/payment/payment.component.js +15 -133
  12. package/esm2015/lib/component/payment-tile/payment-tile.component.js +4 -2
  13. package/esm2015/lib/component/tile/tile.component.js +4 -2
  14. package/esm2015/lib/component/tile/tile.module.js +4 -2
  15. package/esm2015/lib/component/transaction/transaction.component.js +22 -7
  16. package/esm2015/lib/component/transaction/transaction.module.js +4 -2
  17. package/esm2015/lib/component/transaction-cash-register-order/transaction-cash-register-dialog/transaction-cash-register-dialog.component.js +56 -20
  18. package/esm2015/lib/component/transaction-cash-register-order/transaction-cash-register-link-relation/transaction-cash-register-link-relation.component.js +97 -0
  19. package/esm2015/lib/component/transaction-cash-register-order/transaction-cash-register-link-relation/transaction-cash-register-link-relation.module.js +24 -0
  20. package/esm2015/lib/component/transaction-cash-register-order/transaction-cash-register-order.component.js +63 -41
  21. package/esm2015/lib/component/transaction-cash-register-order/transaction-cash-register-order.module.js +6 -2
  22. package/esm2015/lib/component/transaction-cash-register-order/transaction-cash-register-payment-dialog/components/transaction-cash-register-payment-buttons.component.js +24 -0
  23. package/esm2015/lib/component/transaction-cash-register-order/transaction-cash-register-payment-dialog/components/transaction-cash-register-payment-buttons.module.js +21 -0
  24. package/esm2015/lib/component/transaction-cash-register-order/transaction-cash-register-payment-dialog/components/transaction-cash-register-payment-cash.component.js +82 -0
  25. package/esm2015/lib/component/transaction-cash-register-order/transaction-cash-register-payment-dialog/components/transaction-cash-register-payment-cash.module.js +29 -0
  26. package/esm2015/lib/component/transaction-cash-register-order/transaction-cash-register-payment-dialog/components/transaction-cash-register-payment-done.component.js +98 -0
  27. package/esm2015/lib/component/transaction-cash-register-order/transaction-cash-register-payment-dialog/components/transaction-cash-register-payment-done.module.js +23 -0
  28. package/esm2015/lib/component/transaction-cash-register-order/transaction-cash-register-payment-dialog/components/transaction-cash-register-payment-method.component.js +56 -0
  29. package/esm2015/lib/component/transaction-cash-register-order/transaction-cash-register-payment-dialog/components/transaction-cash-register-payment-method.module.js +23 -0
  30. package/esm2015/lib/component/transaction-cash-register-order/transaction-cash-register-payment-dialog/components/transaction-cash-register-payment-pin.component.js +33 -0
  31. package/esm2015/lib/component/transaction-cash-register-order/transaction-cash-register-payment-dialog/components/transaction-cash-register-payment-pin.module.js +23 -0
  32. package/esm2015/lib/component/transaction-cash-register-order/transaction-cash-register-payment-dialog/transaction-cash-register-payment-dialog.component.js +142 -0
  33. package/esm2015/lib/component/transaction-cash-register-order/transaction-cash-register-payment-dialog/transaction-cash-register-payment-dialog.module.js +37 -0
  34. package/esm2015/lib/component/transaction-cash-register-order/transaction-cash-register-payment-dialog/transaction-cash-register-payment-state.enum.js +9 -0
  35. package/esm2015/lib/component/transaction-copy-order/transaction-copy-order.component.js +187 -0
  36. package/esm2015/lib/component/transaction-copy-order/transaction-copy-order.module.js +29 -0
  37. package/esm2015/lib/component/transaction-header/transaction-header-order/transaction-header-order.component.js +2 -1
  38. package/esm2015/lib/component/transaction-header/transaction-header-payment/transaction-header-payment.component.js +3 -2
  39. package/esm2015/lib/component/transaction-header/transaction-header-popup/transaction-header-popup-payment.component.js +9 -4
  40. package/esm2015/lib/component/transaction-header/transaction-header-popup/transaction-header-popup.component.js +4 -1
  41. package/esm2015/lib/component/transaction-line/transaction-purchase-order-line/transaction-purchase-order-line.component.js +3 -5
  42. package/esm2015/lib/component/transaction-line-action-buttons/transaction-line-action-buttons-popup.component.js +12 -1
  43. package/esm2015/lib/component/transaction-line-action-buttons/transaction-line-action-buttons.component.js +9 -6
  44. package/esm2015/lib/component/transaction-line-fields/transaction-line-delivery-date-button.component.js +89 -12
  45. package/esm2015/lib/component/transaction-line-fields/transaction-purchase-portal-line-confirmed-price.component.js +2 -1
  46. package/esm2015/lib/component/transaction-line-image-and-description/transaction-line-image-and-description.component.js +25 -3
  47. package/esm2015/lib/component/transaction-line-purchase-confirmation/transaction-line-purchase-confirmation.component.js +2 -7
  48. package/esm2015/lib/component/transaction-quick-access/transaction-quick-access-order-confirmation/transaction-quick-access-order-confirmation.component.js +9 -9
  49. package/esm2015/lib/component/transaction-quick-access/transaction-quick-access-sales-quotation/transaction-quick-access-sales-quotation.component.js +6 -7
  50. package/esm2015/lib/component/transaction-search/service/filter-request.service.js +2 -2
  51. package/esm2015/lib/component/transaction-search/transaction-filter-content/purchase-order-filter-content/transaction-purchase-order-filter-content-logistics/transaction-purchase-order-filter-content-logistics.component.js +1 -8
  52. package/esm2015/lib/component/transaction-search/transaction-filter-content/purchase-order-filter-content/transaction-purchase-order-filter-content-order/transaction-purchase-order-filter-content-order.component.js +13 -12
  53. package/esm2015/lib/component/transaction-search/transaction-filter-content/sales-order-filter-content/transaction-sales-order-filter-content-logistics/transaction-sales-order-filter-content-logistics.component.js +4 -11
  54. package/esm2015/lib/component/transaction-search/transaction-filter-content/sales-order-filter-content/transaction-sales-order-filter-content-order/transaction-sales-order-filter-content-order.component.js +13 -14
  55. package/esm2015/lib/component/transaction-search/transaction-filter-content/sales-quotation-filter-content/transaction-sales-quotation-filter-content-logistics/transaction-sales-quotation-filter-content-logistics.component.js +2 -9
  56. package/esm2015/lib/component/transaction-search/transaction-filter-content/sales-quotation-filter-content/transaction-sales-quotation-filter-content-order/transaction-sales-quotation-filter-content-order.component.js +11 -10
  57. package/esm2015/lib/component/transaction-tags/transaction-tags.component.js +3 -3
  58. package/esm2015/lib/enum/icon.enum.js +4 -1
  59. package/esm2015/lib/model/icon-svg.js +4 -1
  60. package/esm2015/lib/res/dictionary/dictionaries.js +3 -3
  61. package/esm2015/lib/service/payment.service.js +172 -4
  62. package/esm2015/lib/service/pending-reason.service.js +4 -2
  63. package/esm2015/lib/service/transaction-base.service.js +2 -1
  64. package/esm2015/lib/service/transaction-connector-adapter.service.js +50 -1
  65. package/esm2015/lib/service/transaction-connector.service.js +23 -8
  66. package/esm2015/lib/service/transaction-creation.service.js +130 -0
  67. package/esm2015/lib/service/transaction-event.service.js +4 -1
  68. package/esm2015/lib/service/transaction.service.js +6 -2
  69. package/esm2015/lib/transaction-version.js +3 -3
  70. package/fesm2015/colijnit-transaction.js +1581 -330
  71. package/fesm2015/colijnit-transaction.js.map +1 -1
  72. package/lib/component/core/base/components/default-confirm-cancel-buttons/default-confirm-cancel-buttons.component.d.ts +13 -0
  73. package/lib/component/core/base/components/default-confirm-cancel-buttons/default-confirm-cancel-buttons.module.d.ts +2 -0
  74. package/lib/component/core/base/components/default-confirm-cancel-buttons/style/_layout.scss +51 -0
  75. package/lib/component/core/base/components/default-confirm-cancel-buttons/style/_material-definition.scss +0 -0
  76. package/lib/component/core/base/components/default-confirm-cancel-buttons/style/_theme.scss +4 -0
  77. package/lib/component/core/base/components/default-confirm-cancel-buttons/style/material.scss +4 -0
  78. package/lib/component/core/base/components/transaction-header-block/style/_material-definition.scss +1 -1
  79. package/lib/component/deposit-payment/deposit-payment.component.d.ts +1 -0
  80. package/lib/component/payment/payment.component.d.ts +3 -20
  81. package/lib/component/payment/style/_layout.scss +0 -5
  82. package/lib/component/payment-tile/payment-tile.component.d.ts +1 -0
  83. package/lib/component/tile/style/_layout.scss +1 -1
  84. package/lib/component/tile/tile.component.d.ts +1 -0
  85. package/lib/component/transaction/transaction.component.d.ts +4 -0
  86. package/lib/component/transaction-button/style/_layout.scss +1 -0
  87. package/lib/component/transaction-button/style/_material-definition.scss +1 -1
  88. package/lib/component/transaction-cash-register-order/style/_layout.scss +18 -3
  89. package/lib/component/transaction-cash-register-order/style/material.scss +2 -0
  90. package/lib/component/transaction-cash-register-order/transaction-cash-register-dialog/transaction-cash-register-dialog.component.d.ts +3 -0
  91. package/lib/component/transaction-cash-register-order/transaction-cash-register-link-relation/style/_layout.scss +8 -0
  92. package/lib/component/transaction-cash-register-order/transaction-cash-register-link-relation/style/_material-definition.scss +0 -0
  93. package/lib/component/transaction-cash-register-order/transaction-cash-register-link-relation/style/_theme.scss +4 -0
  94. package/lib/component/transaction-cash-register-order/transaction-cash-register-link-relation/style/material.scss +5 -0
  95. package/lib/component/transaction-cash-register-order/transaction-cash-register-link-relation/transaction-cash-register-link-relation.component.d.ts +18 -0
  96. package/lib/component/transaction-cash-register-order/transaction-cash-register-link-relation/transaction-cash-register-link-relation.module.d.ts +2 -0
  97. package/lib/component/transaction-cash-register-order/transaction-cash-register-order.component.d.ts +6 -5
  98. package/lib/component/transaction-cash-register-order/transaction-cash-register-payment-dialog/components/transaction-cash-register-payment-buttons.component.d.ts +5 -0
  99. package/lib/component/transaction-cash-register-order/transaction-cash-register-payment-dialog/components/transaction-cash-register-payment-buttons.module.d.ts +2 -0
  100. package/lib/component/transaction-cash-register-order/transaction-cash-register-payment-dialog/components/transaction-cash-register-payment-cash.component.d.ts +20 -0
  101. package/lib/component/transaction-cash-register-order/transaction-cash-register-payment-dialog/components/transaction-cash-register-payment-cash.module.d.ts +2 -0
  102. package/lib/component/transaction-cash-register-order/transaction-cash-register-payment-dialog/components/transaction-cash-register-payment-done.component.d.ts +20 -0
  103. package/lib/component/transaction-cash-register-order/transaction-cash-register-payment-dialog/components/transaction-cash-register-payment-done.module.d.ts +2 -0
  104. package/lib/component/transaction-cash-register-order/transaction-cash-register-payment-dialog/components/transaction-cash-register-payment-method.component.d.ts +16 -0
  105. package/lib/component/transaction-cash-register-order/transaction-cash-register-payment-dialog/components/transaction-cash-register-payment-method.module.d.ts +2 -0
  106. package/lib/component/transaction-cash-register-order/transaction-cash-register-payment-dialog/components/transaction-cash-register-payment-pin.component.d.ts +6 -0
  107. package/lib/component/transaction-cash-register-order/transaction-cash-register-payment-dialog/components/transaction-cash-register-payment-pin.module.d.ts +2 -0
  108. package/lib/component/transaction-cash-register-order/transaction-cash-register-payment-dialog/style/_layout.scss +177 -0
  109. package/lib/component/transaction-cash-register-order/transaction-cash-register-payment-dialog/style/_material-definition.scss +0 -0
  110. package/lib/component/transaction-cash-register-order/transaction-cash-register-payment-dialog/style/_theme.scss +4 -0
  111. package/lib/component/transaction-cash-register-order/transaction-cash-register-payment-dialog/style/material.scss +4 -0
  112. package/lib/component/transaction-cash-register-order/transaction-cash-register-payment-dialog/transaction-cash-register-payment-dialog.component.d.ts +28 -0
  113. package/lib/component/transaction-cash-register-order/transaction-cash-register-payment-dialog/transaction-cash-register-payment-dialog.module.d.ts +2 -0
  114. package/lib/component/transaction-cash-register-order/transaction-cash-register-payment-dialog/transaction-cash-register-payment-state.enum.d.ts +7 -0
  115. package/lib/component/transaction-copy-order/style/_layout.scss +28 -0
  116. package/lib/component/transaction-copy-order/style/_material-definition.scss +0 -0
  117. package/lib/component/transaction-copy-order/style/_theme.scss +4 -0
  118. package/lib/component/transaction-copy-order/style/material.scss +5 -0
  119. package/lib/component/transaction-copy-order/transaction-copy-order.component.d.ts +42 -0
  120. package/lib/component/transaction-copy-order/transaction-copy-order.module.d.ts +2 -0
  121. package/lib/component/transaction-header/transaction-header-order/style/_layout.scss +6 -1
  122. package/lib/component/transaction-header/transaction-header-order/style/_material-definition.scss +2 -1
  123. package/lib/component/transaction-header/transaction-header-payment/style/_layout.scss +7 -1
  124. package/lib/component/transaction-header/transaction-header-payment/style/_material-definition.scss +6 -6
  125. package/lib/component/transaction-header/transaction-header-popup/style/_layout.scss +1 -1
  126. package/lib/component/transaction-line/transaction-line/style/_layout.scss +15 -1
  127. package/lib/component/transaction-line/transaction-overview-line/style/_layout.scss +2 -1
  128. package/lib/component/transaction-line-action-buttons/transaction-line-action-buttons-popup.component.d.ts +2 -0
  129. package/lib/component/transaction-line-action-buttons/transaction-line-action-buttons.component.d.ts +3 -3
  130. package/lib/component/transaction-line-fields/transaction-line-delivery-date-button.component.d.ts +25 -1
  131. package/lib/component/transaction-line-image-and-description/style/_layout.scss +16 -1
  132. package/lib/component/transaction-line-image-and-description/transaction-line-image-and-description.component.d.ts +4 -0
  133. package/lib/component/transaction-quick-access/transaction-quick-access-sales-quotation/transaction-quick-access-sales-quotation.component.d.ts +3 -3
  134. package/lib/component/transaction-search/transaction-filter-content/purchase-order-filter-content/transaction-purchase-order-filter-content-logistics/transaction-purchase-order-filter-content-logistics.component.d.ts +0 -5
  135. package/lib/component/transaction-search/transaction-filter-content/purchase-order-filter-content/transaction-purchase-order-filter-content-order/transaction-purchase-order-filter-content-order.component.d.ts +6 -1
  136. package/lib/component/transaction-search/transaction-filter-content/sales-order-filter-content/transaction-sales-order-filter-content-logistics/transaction-sales-order-filter-content-logistics.component.d.ts +0 -5
  137. package/lib/component/transaction-search/transaction-filter-content/sales-order-filter-content/transaction-sales-order-filter-content-order/transaction-sales-order-filter-content-order.component.d.ts +6 -5
  138. package/lib/component/transaction-search/transaction-filter-content/sales-quotation-filter-content/transaction-sales-quotation-filter-content-logistics/transaction-sales-quotation-filter-content-logistics.component.d.ts +0 -5
  139. package/lib/component/transaction-search/transaction-filter-content/sales-quotation-filter-content/transaction-sales-quotation-filter-content-order/transaction-sales-quotation-filter-content-order.component.d.ts +6 -5
  140. package/lib/component/transaction-tags/style/_layout.scss +13 -0
  141. package/lib/component/transaction-tags/style/_material-definition.scss +7 -4
  142. package/lib/enum/icon.enum.d.ts +3 -0
  143. package/lib/res/dictionary/dictionaries.d.ts +10 -0
  144. package/lib/service/payment.service.d.ts +30 -1
  145. package/lib/service/transaction-connector-adapter.service.d.ts +4 -0
  146. package/lib/service/transaction-connector.service.d.ts +4 -0
  147. package/lib/service/{transaction-quotation.service.d.ts → transaction-creation.service.d.ts} +5 -2
  148. package/lib/service/transaction-event.service.d.ts +3 -0
  149. package/lib/service/transaction.service.d.ts +1 -0
  150. package/lib/style/_variables.scss +6 -3
  151. package/lib/style/transaction-globals.scss +1 -0
  152. package/package.json +7 -7
  153. package/esm2015/lib/service/transaction-quotation.service.js +0 -88
@@ -31,6 +31,11 @@ export declare class TransactionPurchaseOrderFilterContentOrderComponent extends
31
31
  text: any;
32
32
  value: any;
33
33
  };
34
+ orderDefinite: FilterItemViewmodel[];
35
+ orderDefiniteFields: {
36
+ text: any;
37
+ value: any;
38
+ };
34
39
  commissionCodes: FilterItemViewmodel[];
35
40
  commissionCodeFields: {
36
41
  text: any;
@@ -47,11 +52,11 @@ export declare class TransactionPurchaseOrderFilterContentOrderComponent extends
47
52
  deliveryEndDate: Date;
48
53
  constructor(searchService: TransactionSearchService, filterRequestService: FilterRequestService, transactionService: TransactionService, relationService: RelationService);
49
54
  ngOnInit(): void;
50
- private _setRangeDates;
51
55
  private _setPurchasePersons;
52
56
  private _setTags;
53
57
  private _setBranches;
54
58
  private _setOnHoldCodes;
55
59
  private _setCommissionCodes;
60
+ private _setOrderDefinitive;
56
61
  private _setWorkFlowStatuses;
57
62
  }
@@ -24,13 +24,8 @@ export declare class TransactionSalesOrderFilterContentLogisticsComponent extend
24
24
  text: any;
25
25
  value: any;
26
26
  };
27
- confirmedDeliveryStartDate: Date;
28
- confirmedDeliveryEndDate: Date;
29
- arrivalStartDate: Date;
30
- arrivalEndDate: Date;
31
27
  constructor(searchService: TransactionSearchService, filterRequestService: FilterRequestService, transactionService: TransactionService);
32
28
  ngOnInit(): void;
33
- private _setRangeDates;
34
29
  private _setDeliveryMethods;
35
30
  private _setWarehouses;
36
31
  private _setSourceWarehouses;
@@ -40,6 +40,11 @@ export declare class TransactionSalesOrderFilterContentOrderComponent extends Tr
40
40
  text: any;
41
41
  value: any;
42
42
  };
43
+ orderDefinite: FilterItemViewmodel[];
44
+ orderDefiniteFields: {
45
+ text: any;
46
+ value: any;
47
+ };
43
48
  customerGroups: FilterItemViewmodel[];
44
49
  customerGroupFields: {
45
50
  text: any;
@@ -50,10 +55,6 @@ export declare class TransactionSalesOrderFilterContentOrderComponent extends Tr
50
55
  text: any;
51
56
  value: any;
52
57
  };
53
- transStartDate: Date;
54
- transEndDate: Date;
55
- deliveryStartDate: Date;
56
- deliveryEndDate: Date;
57
58
  private _subs;
58
59
  constructor(searchService: TransactionSearchService, filterRequestService: FilterRequestService, transactionService: TransactionService, relationService: RelationService, _adapterService: TransactionConnectorAdapterService, _changeDetector: ChangeDetectorRef);
59
60
  ngOnInit(): void;
@@ -61,12 +62,12 @@ export declare class TransactionSalesOrderFilterContentOrderComponent extends Tr
61
62
  handleCollectionChange(): void;
62
63
  loadCustomers: (nameFilter: string) => Promise<FilterItemViewmodel[]>;
63
64
  private _setCollections;
64
- private _setRangeDates;
65
65
  private _setSalesPersons;
66
66
  private _setTags;
67
67
  private _setBranches;
68
68
  private _setOnHoldCodes;
69
69
  private _setCommissionCodes;
70
+ private _setOrderDefinitive;
70
71
  private _setCustomerGroups;
71
72
  private _setWorkFlowStatuses;
72
73
  }
@@ -19,13 +19,8 @@ export declare class TransactionSalesQuotationFilterContentLogisticsComponent ex
19
19
  text: any;
20
20
  value: any;
21
21
  };
22
- confirmedDeliveryStartDate: Date;
23
- confirmedDeliveryEndDate: Date;
24
- arrivalStartDate: Date;
25
- arrivalEndDate: Date;
26
22
  constructor(searchService: TransactionSearchService, filterRequestService: FilterRequestService, transactionService: TransactionService);
27
23
  ngOnInit(): void;
28
- private _setRangeDates;
29
24
  private _setDeliveryMethods;
30
25
  private _setWarehouses;
31
26
  }
@@ -31,22 +31,23 @@ export declare class TransactionSalesQuotationFilterContentOrderComponent extend
31
31
  text: any;
32
32
  value: any;
33
33
  };
34
+ orderDefinite: FilterItemViewmodel[];
35
+ orderDefiniteFields: {
36
+ text: any;
37
+ value: any;
38
+ };
34
39
  customerGroups: FilterItemViewmodel[];
35
40
  customerGroupFields: {
36
41
  text: any;
37
42
  value: any;
38
43
  };
39
- transStartDate: Date;
40
- transEndDate: Date;
41
- deliveryStartDate: Date;
42
- deliveryEndDate: Date;
43
44
  constructor(searchService: TransactionSearchService, filterRequestService: FilterRequestService, transactionService: TransactionService, relationService: RelationService);
44
45
  ngOnInit(): void;
45
46
  loadCustomers: (nameFilter: string) => Promise<FilterItemViewmodel[]>;
46
- private _setRangeDates;
47
47
  private _setSalesPersons;
48
48
  private _setTags;
49
49
  private _setBranches;
50
50
  private _setCommissionCodes;
51
+ private _setOrderDefinitive;
51
52
  private _setCustomerGroups;
52
53
  }
@@ -5,12 +5,15 @@
5
5
  .transaction-tags-wrapper {
6
6
  display: flex;
7
7
  column-gap: $tp-co-transaction-tags-column-gap;
8
+ align-items: center;
8
9
  .edit-tags-wrapper {
9
10
  display: flex;
10
11
  column-gap: $tp-co-transaction-tags-column-gap;
12
+ cursor: pointer;
11
13
  .co-button {
12
14
  color: $tp-co-transaction-tags-edit-button-color;
13
15
  background: $tp-co-transaction-tags-edit-button-background-color;
16
+ height: 28px;
14
17
  .co-icon {
15
18
  width: $tp-co-transaction-tags-edit-button-icon-size;
16
19
  height: $tp-co-transaction-tags-edit-button-icon-size;
@@ -21,6 +24,15 @@
21
24
  fill: $tp-co-transaction-tags-edit-button-icon-color;
22
25
  }
23
26
  }
27
+ &:hover {
28
+ filter: brightness(100%);
29
+ background: $tp-co-transaction-tags-edit-button-hover-color;
30
+ .co-icon {
31
+ svg {
32
+ fill: $tp-co-transaction-tags-edit-button-hover-icon-color;
33
+ }
34
+ }
35
+ }
24
36
  }
25
37
  }
26
38
  }
@@ -28,6 +40,7 @@
28
40
  user-select: none;
29
41
  display: flex;
30
42
  align-items: center;
43
+ max-height: $tp-co-transaction-tags-height;
31
44
  padding: $tp-co-transaction-tags-padding;
32
45
  border-style: $tp-co-transaction-tags-border-style;
33
46
  border-width: $tp-co-transaction-tags-border-width;
@@ -1,6 +1,6 @@
1
1
  $tp-co-transaction-tags-font-family: $tp-font-family !default;
2
- $tp-co-transaction-tags-font-size: $tp-font-size !default;
3
- $tp-co-transaction-tags-color: $tp-color-font !default;
2
+ $tp-co-transaction-tags-font-size: $tp-font-size-small !default;
3
+ $tp-co-transaction-tags-color: $tp-color-light !default;
4
4
  $tp-co-transaction-tags-default-background-color: $tp-color-label !default;
5
5
  $tp-co-transaction-tags-border-style: solid !default;
6
6
  $tp-co-transaction-tags-border-width: 1px !default;
@@ -9,7 +9,10 @@ $tp-co-transaction-tags-column-gap: 5px !default;
9
9
  $tp-co-transaction-tags-align-items: flex-start !default;
10
10
  $tp-co-transaction-tags-border-radius: 10px !default;
11
11
  $tp-co-transaction-tags-padding: 5px 10px !default;
12
+ $tp-co-transaction-tags-height: 24px !default;
12
13
  $tp-co-transaction-tags-edit-button-icon-size: 20px !default;
13
- $tp-co-transaction-tags-edit-button-icon-color: $tp-color-action !default;
14
+ $tp-co-transaction-tags-edit-button-icon-color: $tp-color-font !default;
15
+ $tp-co-transaction-tags-edit-button-hover-icon-color: $tp-color-light !default;
14
16
  $tp-co-transaction-tags-edit-button-color: $tp-color-action !default;
15
- $tp-co-transaction-tags-edit-button-background-color: $tp-default-background-accent !default;
17
+ $tp-co-transaction-tags-edit-button-hover-color: $tp-color-action !default;
18
+ $tp-co-transaction-tags-edit-button-background-color: $tp-default-background !default;
@@ -6,6 +6,7 @@ export declare enum Icon {
6
6
  ArrowPointRight = "arrow_point_right",
7
7
  ArrowRightRegular = "arrow_right_regular",
8
8
  Article = "article",
9
+ Attachments = "attachments",
9
10
  AtSolid = "at_solid",
10
11
  BarcodeRegular = "barcode_regular",
11
12
  BarcodeSolid = "barcode_solid",
@@ -96,6 +97,8 @@ export declare enum Icon {
96
97
  SquareFullSolid = "square_full_solid",
97
98
  SyncAlt = "sync_alt",
98
99
  Tag = "tag",
100
+ TagLight = "tag_light",
101
+ TagLines = "tag_lines",
99
102
  TextSizeSolid = "text_size_solid",
100
103
  TextSolid = "text_solid",
101
104
  ThickLines = "thick_lines",
@@ -2483,6 +2483,7 @@ export declare class Dictionaries {
2483
2483
  BASE_PRICE: string;
2484
2484
  BASE_URL: string;
2485
2485
  BASE_URL_CDN: string;
2486
+ BASIC_ORDER_DETAILS: string;
2486
2487
  BATCH: string;
2487
2488
  BATCHES: string;
2488
2489
  BATCH_CANCELLED_LABEL: string;
@@ -3094,6 +3095,8 @@ export declare class Dictionaries {
3094
3095
  COPY_PURCHASE_ORDER: string;
3095
3096
  COPY_QUOTATION: string;
3096
3097
  COPY_RETAIL_ORDER: string;
3098
+ COPY_SALES_ORDER: string;
3099
+ COPY_SALES_QUOTATION_ORDER: string;
3097
3100
  COPY_SELECTED_ITEMS: string;
3098
3101
  COPY_SERVICE_ORDER: string;
3099
3102
  COPY_TO_CLIPBOARD: string;
@@ -10523,6 +10526,7 @@ export declare class Dictionaries {
10523
10526
  BASE_PRICE: string;
10524
10527
  BASE_URL: string;
10525
10528
  BASE_URL_CDN: string;
10529
+ BASIC_ORDER_DETAILS: string;
10526
10530
  BATCH: string;
10527
10531
  BATCHES: string;
10528
10532
  BATCHJOB_ALREADY_RUNNING: string;
@@ -11277,6 +11281,8 @@ export declare class Dictionaries {
11277
11281
  COPY_PURCHASE_ORDER: string;
11278
11282
  COPY_QUOTATION: string;
11279
11283
  COPY_RETAIL_ORDER: string;
11284
+ COPY_SALES_ORDER: string;
11285
+ COPY_SALES_QUOTATION_ORDER: string;
11280
11286
  COPY_SERVICE_ORDER: string;
11281
11287
  COPY_TO_CLIPBOARD: string;
11282
11288
  COPY_TREE: string;
@@ -11581,6 +11587,7 @@ export declare class Dictionaries {
11581
11587
  DEFAULT_CONCEPT: string;
11582
11588
  DEFAULT_CONFIG: string;
11583
11589
  DEFAULT_CUSTOMER_DISCOUNT_PERC: string;
11590
+ DEFAULT_DISCOUNT_PERC: string;
11584
11591
  DEFAULT_DATE: string;
11585
11592
  DEFAULT_DELIVERY_DAYS: string;
11586
11593
  DEFAULT_DELIVERY_METHOD: string;
@@ -14911,6 +14918,8 @@ export declare class Dictionaries {
14911
14918
  PROGNOSIS: string;
14912
14919
  PROGRESS: string;
14913
14920
  PROGRESSIVE: string;
14921
+ PROJECT_CODE: string;
14922
+ PROJECT_CODES: string;
14914
14923
  PROJECTNR: string;
14915
14924
  PROMOTIONS: string;
14916
14925
  PROMOTION_RULES: string;
@@ -15918,6 +15927,7 @@ export declare class Dictionaries {
15918
15927
  SHOW_ALL_CONTACTS: string;
15919
15928
  SHOW_ALL_FILTERS: string;
15920
15929
  SHOW_ALL_LINES: string;
15930
+ SHOW_ALL_PRESETS: string;
15921
15931
  SHOW_ALL_WAREHOUSES_FOR_BRANCH: string;
15922
15932
  SHOW_ANONYMISED_RELATIONS: string;
15923
15933
  SHOW_ART_OPTIONS: string;
@@ -14,15 +14,34 @@ import { DoPaymentRequest } from "@colijnit/transactionapi/build/model/do-paymen
14
14
  import { AmountToPay } from "@colijnit/transactionapi/build/model/amount-to-pay";
15
15
  import { CalculateAmountToPayRequest } from "@colijnit/transactionapi/build/model/calculate-amount-to-pay-request";
16
16
  import { CreateCashRegisterOrderRequest } from "@colijnit/transactionapi/build/model/create-cash-register-order-request";
17
+ import { DepositPaymentViewModel } from "../model/deposit-payment-view-model";
18
+ import { CashRegister } from "@colijnit/transactionapi/build/model/cash-register";
19
+ import { TransactionEventService } from "./transaction-event.service";
17
20
  export declare class PaymentService {
18
21
  private _adapterService;
19
22
  private _selectMultipleCacheService;
20
23
  private _selectMultipleParameterizedCacheService;
21
24
  private _transactionService;
22
25
  private _sharedService;
26
+ private _transactionEventService;
23
27
  readonly transKind: typeof TransactionKind;
24
28
  currentCashRegisterOrderRequest: CreateCashRegisterOrderRequest;
25
- constructor(_adapterService: TransactionConnectorAdapterService, _selectMultipleCacheService: SelectMultipleCacheService, _selectMultipleParameterizedCacheService: SelectMultipleParameterizedCacheService, _transactionService: TransactionService, _sharedService: SharedService);
29
+ selectedCashRegister: CashRegister;
30
+ paymentMethods: PaymentViewmodel[];
31
+ depositPayments: DepositPaymentViewModel[];
32
+ showKeyPad: boolean;
33
+ showPspQrCode: boolean;
34
+ qrCodeImage: string;
35
+ showLoader: boolean;
36
+ amountToPay: number;
37
+ statusMessage: string;
38
+ private _paymentStatusInterval;
39
+ private _paymentStatusPollIntervalMs;
40
+ private _paymentStatusMaxPollInterval;
41
+ private _paymentStatusPollIntervalCount;
42
+ private _paymentResult;
43
+ private _paymentMethod;
44
+ constructor(_adapterService: TransactionConnectorAdapterService, _selectMultipleCacheService: SelectMultipleCacheService, _selectMultipleParameterizedCacheService: SelectMultipleParameterizedCacheService, _transactionService: TransactionService, _sharedService: SharedService, _transactionEventService: TransactionEventService);
26
45
  registerSalesOrderPayment(uuid: string, amount: number, currencyId: number, paymentMethod: string, cashRegisterGroupId: number): Promise<boolean>;
27
46
  createIonePaymentLinkAndQRCode(uuid: string, amount: number, paymentMethodCode: string): Promise<CreatePaymentLinkResult>;
28
47
  doPinPayment(transId: number, paymentMethodCode: string, cashRegisterNr: number, cashRegisterGroupId: number, amount: number): Promise<string>;
@@ -35,4 +54,14 @@ export declare class PaymentService {
35
54
  getPaymentMethodsForCashRegister(branchNr: string): Promise<PaymentMethod[]>;
36
55
  processPosTransactionByUuid(uuid: string): Promise<boolean>;
37
56
  getPaymentMethodsViewModels(branchNr: string, transactionKind: TransactionKind): Promise<PaymentViewmodel[]>;
57
+ handlePayment(paymentMethod: PaymentMethod, cashRegister?: CashRegister, amountToPay?: number): void;
58
+ private _handlePayment;
59
+ private _doPayment;
60
+ private _getDepositPaymentInfo;
61
+ private _calculateAmountToPay;
62
+ private _dataUriToBase64;
63
+ private _waitForPaymentStatus;
64
+ private _waitForPinPaymentStatus;
65
+ private _clearInterval;
66
+ private _getToPayDetails;
38
67
  }
@@ -332,6 +332,10 @@ export declare class TransactionConnectorAdapterService {
332
332
  getObjectConfiguration(screenCfgModule: string, params?: string | string[], insertMode?: boolean): Promise<ObjectConfiguration[]>;
333
333
  getHistoricDocuments(transId: number, documentCode: LayoutCode): Promise<HistoricReport[]>;
334
334
  getPackageStickerPrintLayouts(): Promise<ReportLayoutSelectionPrint[]>;
335
+ getYesNoCollection(languageCode: string): Promise<CoDomainValue[]>;
335
336
  processPosTransactionByUuid(uuid: string): Promise<boolean>;
337
+ copySalesOrder(copyTransactionRequest: CopyTransactionRequest): Promise<TransactionInfoResponse>;
338
+ copyPurchaseOrder(copyTransactionRequest: CopyTransactionRequest): Promise<TransactionInfoResponse>;
339
+ copySalesQuotation(copyTransactionRequest: CopyTransactionRequest): Promise<TransactionInfoResponse>;
336
340
  private _handleExceptionFromResponse;
337
341
  }
@@ -170,6 +170,7 @@ export declare class TransactionConnectorService {
170
170
  resolvePendingHeaderReason(pendingHeaderValues: ResolveHeaderPendingReasonRequest): Promise<TransactionInfoResponse>;
171
171
  getCommissionCodes(languageCode: string): Promise<CoDomainValue[]>;
172
172
  getInOutCollection(languageCode: string): Promise<CoDomainValue[]>;
173
+ getYesNoCollection(languageCode: string): Promise<CoDomainValue[]>;
173
174
  getTransactionArticleWarehouses(goodId: number): Promise<TransactionArticleWarehouse[]>;
174
175
  setRelationByUser(uuid: string, username: string, password: string): Promise<boolean>;
175
176
  getTextTypes(languageCode: string): Promise<CoDomainValue[]>;
@@ -308,4 +309,7 @@ export declare class TransactionConnectorService {
308
309
  getObjectConfiguration(screenCfgModule: string, params?: string | string[], insertMode?: boolean): Promise<ObjectConfiguration[]>;
309
310
  getHistoricDocuments(transId: number, documentCode: LayoutCode): Promise<HistoricReport[]>;
310
311
  getPackageStickerPrintLayouts(): Promise<ReportLayoutSelectionPrint[]>;
312
+ copySalesOrder(copyTransactionRequest: CopyTransactionRequest): Promise<TransactionInfoResponse>;
313
+ copyPurchaseOrder(copyTransactionRequest: CopyTransactionRequest): Promise<TransactionInfoResponse>;
314
+ copySalesQuotation(copyTransactionRequest: CopyTransactionRequest): Promise<TransactionInfoResponse>;
311
315
  }
@@ -3,9 +3,12 @@ import { TransactionService } from "./transaction.service";
3
3
  import { TransactionInfoResponse } from "@colijnit/transactionapi/build/model/transaction-info-response.bo";
4
4
  import { ResolveLinePendingReasonRequest } from "@colijnit/transactionapi/build/model/resolve-pending-reason-request.bo";
5
5
  import { ResolveHeaderPendingReasonRequest } from "@colijnit/transactionapi/build/model/resolve-header-pending-reason-request.bo";
6
- export declare class TransactionQuotationService extends TransactionService {
6
+ export declare class TransactionCreationService extends TransactionService {
7
7
  createSalesOrderThroughQuotation(request: CopyTransactionRequest): Promise<boolean>;
8
- private _saveQuotationTransactionAndCommit;
8
+ copySalesOrder(request: CopyTransactionRequest): Promise<TransactionInfoResponse>;
9
+ copyPurchaseOrder(request: CopyTransactionRequest): Promise<TransactionInfoResponse>;
10
+ copySalesQuotation(request: CopyTransactionRequest): Promise<TransactionInfoResponse>;
11
+ private _saveCreatedTransactionAndCommit;
9
12
  handleHeaderOperationStatuses(response: TransactionInfoResponse): Promise<boolean>;
10
13
  handleLineOperationStatuses(response: TransactionInfoResponse): Promise<boolean>;
11
14
  resolvePendingLineReason(pendingLineValues: ResolveLinePendingReasonRequest): Promise<void>;
@@ -92,11 +92,13 @@ export declare class TransactionEventService {
92
92
  readonly createTransaction: Subject<void>;
93
93
  readonly transactionSet: BehaviorSubject<TransactionInfoResponse>;
94
94
  readonly purchaseOrderNavigation: Subject<string>;
95
+ readonly salesQuotationOrderNavigation: Subject<string>;
95
96
  readonly relationNavigation: Subject<number>;
96
97
  readonly articleNavigation: Subject<string>;
97
98
  readonly transactionNavigation: Subject<string>;
98
99
  readonly transactionDeleted: Subject<void>;
99
100
  readonly transactionPaymentDone: Subject<void>;
101
+ readonly copyOrder: Subject<void>;
100
102
  readonly historicReportLinesToShow: BehaviorSubject<TransactionLineInfo[] | null>;
101
103
  readonly updateTransactionReferences: Subject<void>;
102
104
  readonly transactionLineVisibilityChange: BehaviorSubject<{
@@ -113,5 +115,6 @@ export declare class TransactionEventService {
113
115
  readonly headerPopupSaveButtonClick: Subject<void>;
114
116
  readonly headerPopupWantsToClose: Subject<void>;
115
117
  readonly headerPopupClose: Subject<boolean>;
118
+ readonly addDocumentToLineClicked: Subject<TransactionLineInfo>;
116
119
  constructor();
117
120
  }
@@ -168,6 +168,7 @@ export declare class TransactionService extends PendingReasonService {
168
168
  createSalesQuotation(request: CreateSalesQuotationRequest): Promise<boolean>;
169
169
  addRelationToTransaction(relationId: number): Promise<boolean>;
170
170
  getCommissionCodes(languageCode: string): Promise<CoDomainValue[]>;
171
+ getYesNo(languageCode: string): Promise<CoDomainValue[]>;
171
172
  getInOutCollection(languageCode: string): Promise<CoDomainValue[]>;
172
173
  getTurnoverGroups(): Promise<TurnoverGroupImage[]>;
173
174
  getTransactionArticleWarehouses(goodId: number): Promise<TransactionArticleWarehouse[]>;
@@ -82,7 +82,7 @@ $tp-md-width: 1280px !default;
82
82
  $tp-lg-width: 1920px !default;
83
83
 
84
84
  // transaction buttons
85
- $tp-transaction-default-button-width: 78px !default;
85
+ $tp-transaction-default-button-width: 100px !default;
86
86
  $tp-transaction-default-button-width-big: 175px !default;
87
87
  $tp-transaction-default-button-height: 26px !default;
88
88
  $tp-transaction-line-input-number-picker-width: 110px !default;
@@ -96,9 +96,12 @@ $tp-transaction-quick-access-column-gap: 10px;
96
96
 
97
97
  // payment num pad globals
98
98
  $tp-payment-amount-color: rgba(0, 0, 0, 0.5) !default;
99
- $tp-payment-amount-background-color: #dedede5c !default;
99
+ $tp-payment-amount-background-color: white !default;
100
100
  $tp-payment-amount-border-color: $tp-color-border !default;
101
-
101
+ $sc-key-pad-background-color: white;
102
+ $sc-key-pad-button-gap: 2px;
103
+ $sc-key-pad-button-border-radius: 0;
104
+ $sc-key-pad-button-background-color: #131840;
102
105
 
103
106
  /* core components override */
104
107
  $cc-color-action: $tp-color-font !default;
@@ -82,6 +82,7 @@
82
82
  .key-pad-button {
83
83
  background-color: $tp-payment-amount-background-color;
84
84
  color: $tp-payment-amount-color;
85
+ box-shadow: none;
85
86
  font-weight: bold;
86
87
  .co-icon {
87
88
  svg { // for fontawesome icons
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@colijnit/transaction",
3
- "version": "12.1.139",
3
+ "version": "12.1.141",
4
4
  "description": "Colijn IT transaction module for Angular 12",
5
5
  "repository": "npm/npm",
6
6
  "author": "Colijn IT",
@@ -9,16 +9,16 @@
9
9
  "peerDependencies": {
10
10
  "@angular/common": ">=12.2.0",
11
11
  "@angular/core": ">=12.2.0",
12
- "@colijnit/articleapi": ">=1.0.26",
13
- "@colijnit/catalog": ">=12.1.41",
12
+ "@colijnit/articleapi": ">=1.0.27",
13
+ "@colijnit/catalog": ">=12.1.42",
14
14
  "@colijnit/corecomponents": ">=1.12.0",
15
15
  "@colijnit/corecomponents_v12": ">=12.1.8",
16
- "@colijnit/ioneconnector": ">=3.1.4",
17
- "@colijnit/mainapi": ">=1.0.21",
18
- "@colijnit/relationapi": ">=1.0.7",
16
+ "@colijnit/ioneconnector": ">=3.1.5",
17
+ "@colijnit/mainapi": ">=1.0.23",
18
+ "@colijnit/relationapi": ">=1.0.8",
19
19
  "@colijnit/sharedapi": ">=1.0.16",
20
20
  "@colijnit/sharedcomponents": ">=1.0.46",
21
- "@colijnit/transactionapi": ">=1.1.97",
21
+ "@colijnit/transactionapi": ">=1.1.99",
22
22
  "@types/three": ">=0.125.0",
23
23
  "@tweenjs/tween.js": ">=17.2.0",
24
24
  "three": ">=0.125.0"
@@ -1,88 +0,0 @@
1
- import { __awaiter } from "tslib";
2
- import { Injectable } from "@angular/core";
3
- import { TransactionService } from "./transaction.service";
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "./options.service";
6
- import * as i2 from "./dialog.service";
7
- import * as i3 from "./transaction-connector.service";
8
- import * as i4 from "@colijnit/sharedcomponents";
9
- import * as i5 from "./article-connector.service";
10
- import * as i6 from "./dictionary.service";
11
- import * as i7 from "./transaction-event.service";
12
- import * as i8 from "./relation.service";
13
- export class TransactionQuotationService extends TransactionService {
14
- createSalesOrderThroughQuotation(request) {
15
- return __awaiter(this, void 0, void 0, function* () {
16
- return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
17
- yield this.checkBranch();
18
- if (!this.currentBranch) {
19
- return reject();
20
- }
21
- request.branchNr = this.currentBranch;
22
- try {
23
- const response = yield this.connector.convertSalesQuotationToSalesOrder(request);
24
- yield this.handleLineOperationStatuses(response);
25
- resolve(true);
26
- }
27
- catch (e) {
28
- return reject();
29
- }
30
- }));
31
- });
32
- }
33
- _saveQuotationTransactionAndCommit(transaction) {
34
- return __awaiter(this, void 0, void 0, function* () {
35
- yield this.connector.saveTransaction(transaction.transactionInfo.uuid);
36
- yield this.commit();
37
- this.transactionEventService.updateTransactionReferences.next();
38
- });
39
- }
40
- handleHeaderOperationStatuses(response) {
41
- return __awaiter(this, void 0, void 0, function* () {
42
- let success = true;
43
- for (let i = 0; i < response.headerOperationStatuses.length; i++) {
44
- const status = response.headerOperationStatuses[i];
45
- success = success && (yield this._handleHeaderOperationStatus(status, response.transactionInfo));
46
- }
47
- const hasPendingReasons = response.headerOperationStatuses.filter(los => los.pendingReason !== "REASON_NONE").length > 0;
48
- if (!hasPendingReasons) {
49
- this._saveQuotationTransactionAndCommit(response);
50
- }
51
- return success;
52
- });
53
- }
54
- handleLineOperationStatuses(response) {
55
- return __awaiter(this, void 0, void 0, function* () {
56
- let success = true;
57
- for (let i = 0; i < response.lineOperationStatuses.length; i++) {
58
- const status = response.lineOperationStatuses[i];
59
- const transLine = response.transactionLines.find(t => t.lineNr === status.lineNr);
60
- success = success && (yield this._handleLineOperationStatus(response, status, transLine));
61
- }
62
- const hasPendingReasons = response.lineOperationStatuses.filter(los => los.pendingReason !== "REASON_NONE").length > 0;
63
- if (!hasPendingReasons) {
64
- this.handleHeaderOperationStatuses(response);
65
- }
66
- return success;
67
- });
68
- }
69
- resolvePendingLineReason(pendingLineValues) {
70
- return __awaiter(this, void 0, void 0, function* () {
71
- const response = yield this.connector.resolvePendingLineReason(pendingLineValues);
72
- this.handleLineOperationStatuses(response);
73
- });
74
- }
75
- resolvePendingHeaderReason(pendingHeaderValues) {
76
- return __awaiter(this, void 0, void 0, function* () {
77
- const response = yield this.connector.resolvePendingHeaderReason(pendingHeaderValues);
78
- return this.handleHeaderOperationStatuses(response);
79
- });
80
- }
81
- }
82
- TransactionQuotationService.ɵprov = i0.ɵɵdefineInjectable({ factory: function TransactionQuotationService_Factory() { return new TransactionQuotationService(i0.ɵɵinject(i1.OptionsService), i0.ɵɵinject(i2.DialogService), i0.ɵɵinject(i3.TransactionConnectorService), i0.ɵɵinject(i4.SharedService), i0.ɵɵinject(i5.ArticleConnectorService), i0.ɵɵinject(i6.DictionaryService), i0.ɵɵinject(i7.TransactionEventService), i0.ɵɵinject(i8.RelationService)); }, token: TransactionQuotationService, providedIn: "root" });
83
- TransactionQuotationService.decorators = [
84
- { type: Injectable, args: [{
85
- providedIn: "root"
86
- },] }
87
- ];
88
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tcXVvdGF0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cmFuc2FjdGlvbi9zcmMvbGliL3NlcnZpY2UvdHJhbnNhY3Rpb24tcXVvdGF0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFekMsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sdUJBQXVCLENBQUM7Ozs7Ozs7Ozs7QUFhekQsTUFBTSxPQUFPLDJCQUE0QixTQUFRLGtCQUFrQjtJQUVwRCxnQ0FBZ0MsQ0FBQyxPQUErQjs7WUFDM0UsT0FBTyxJQUFJLE9BQU8sQ0FBVSxDQUFPLE9BQWlCLEVBQUUsTUFBZ0IsRUFBRSxFQUFFO2dCQUN4RSxNQUFNLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztnQkFDekIsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUU7b0JBQ3ZCLE9BQU8sTUFBTSxFQUFFLENBQUM7aUJBQ2pCO2dCQUNELE9BQU8sQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQztnQkFDdEMsSUFBSTtvQkFDRixNQUFNLFFBQVEsR0FBNEIsTUFBTSxJQUFJLENBQUMsU0FBUyxDQUFDLGlDQUFpQyxDQUFDLE9BQU8sQ0FBQyxDQUFDO29CQUMxRyxNQUFNLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxRQUFRLENBQUMsQ0FBQztvQkFDakQsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO2lCQUNmO2dCQUFDLE9BQU8sQ0FBQyxFQUFFO29CQUNWLE9BQU8sTUFBTSxFQUFFLENBQUM7aUJBQ2pCO1lBQ0gsQ0FBQyxDQUFBLENBQUMsQ0FBQztRQUNMLENBQUM7S0FBQTtJQUVhLGtDQUFrQyxDQUFDLFdBQW9DOztZQUNuRixNQUFNLElBQUksQ0FBQyxTQUFTLENBQUMsZUFBZSxDQUFDLFdBQVcsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDdkUsTUFBTSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDcEIsSUFBSSxDQUFDLHVCQUF1QixDQUFDLDJCQUEyQixDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2xFLENBQUM7S0FBQTtJQUVZLDZCQUE2QixDQUFDLFFBQWlDOztZQUMxRSxJQUFJLE9BQU8sR0FBWSxJQUFJLENBQUM7WUFDNUIsS0FBSyxJQUFJLENBQUMsR0FBVyxDQUFDLEVBQUUsQ0FBQyxHQUFHLFFBQVEsQ0FBQyx1QkFBdUIsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7Z0JBQ3hFLE1BQU0sTUFBTSxHQUEwQixRQUFRLENBQUMsdUJBQXVCLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQzFFLE9BQU8sR0FBRyxPQUFPLEtBQUksTUFBTSxJQUFJLENBQUMsNEJBQTRCLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQSxDQUFDO2FBQ2hHO1lBQ0QsTUFBTSxpQkFBaUIsR0FBWSxRQUFRLENBQUMsdUJBQXVCLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLGFBQWEsS0FBSyxhQUFhLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1lBQ2xJLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtnQkFDdEIsSUFBSSxDQUFDLGtDQUFrQyxDQUFDLFFBQVEsQ0FBQyxDQUFDO2FBQ25EO1lBQ0QsT0FBTyxPQUFPLENBQUM7UUFDakIsQ0FBQztLQUFBO0lBRVksMkJBQTJCLENBQUMsUUFBaUM7O1lBQ3hFLElBQUksT0FBTyxHQUFZLElBQUksQ0FBQztZQUM1QixLQUFLLElBQUksQ0FBQyxHQUFXLENBQUMsRUFBRSxDQUFDLEdBQUcsUUFBUSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtnQkFDdEUsTUFBTSxNQUFNLEdBQXdCLFFBQVEsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDdEUsTUFBTSxTQUFTLEdBQXdCLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxLQUFLLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDdkcsT0FBTyxHQUFHLE9BQU8sS0FBSSxNQUFNLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxRQUFRLEVBQUUsTUFBTSxFQUFFLFNBQVMsQ0FBQyxDQUFBLENBQUM7YUFDekY7WUFDRCxNQUFNLGlCQUFpQixHQUFZLFFBQVEsQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsYUFBYSxLQUFLLGFBQWEsQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7WUFDaEksSUFBSSxDQUFDLGlCQUFpQixFQUFFO2dCQUN0QixJQUFJLENBQUMsNkJBQTZCLENBQUMsUUFBUSxDQUFDLENBQUM7YUFDOUM7WUFDRCxPQUFPLE9BQU8sQ0FBQztRQUNqQixDQUFDO0tBQUE7SUFFWSx3QkFBd0IsQ0FBQyxpQkFBa0Q7O1lBQ3RGLE1BQU0sUUFBUSxHQUE0QixNQUFNLElBQUksQ0FBQyxTQUFTLENBQUMsd0JBQXdCLENBQUMsaUJBQWlCLENBQUMsQ0FBQztZQUMzRyxJQUFJLENBQUMsMkJBQTJCLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDN0MsQ0FBQztLQUFBO0lBRVksMEJBQTBCLENBQUMsbUJBQXNEOztZQUM1RixNQUFNLFFBQVEsR0FBNEIsTUFBTSxJQUFJLENBQUMsU0FBUyxDQUFDLDBCQUEwQixDQUFDLG1CQUFtQixDQUFDLENBQUM7WUFDL0csT0FBTyxJQUFJLENBQUMsNkJBQTZCLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDdEQsQ0FBQztLQUFBOzs7O1lBL0RGLFVBQVUsU0FBQztnQkFDVixVQUFVLEVBQUUsTUFBTTthQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtDb3B5VHJhbnNhY3Rpb25SZXF1ZXN0fSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL2NvcHktdHJhbnNhY3Rpb24tcmVxdWVzdFwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uU2VydmljZX0gZnJvbSBcIi4vdHJhbnNhY3Rpb24uc2VydmljZVwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uSW5mb1Jlc3BvbnNlfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3RyYW5zYWN0aW9uLWluZm8tcmVzcG9uc2UuYm9cIjtcclxuaW1wb3J0IHtIZWFkZXJPcGVyYXRpb25TdGF0dXN9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvaGVhZGVyLW9wZXJhdGlvbi1zdGF0dXMuYm9cIjtcclxuaW1wb3J0IHtMaW5lT3BlcmF0aW9uU3RhdHVzfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL2xpbmUtb3BlcmF0aW9uLXN0YXR1cy5ib1wiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uTGluZUluZm99IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvdHJhbnNhY3Rpb24tbGluZS1pbmZvLmJvXCI7XHJcbmltcG9ydCB7UmVzb2x2ZUxpbmVQZW5kaW5nUmVhc29uUmVxdWVzdH0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9yZXNvbHZlLXBlbmRpbmctcmVhc29uLXJlcXVlc3QuYm9cIjtcclxuaW1wb3J0IHtcclxuICBSZXNvbHZlSGVhZGVyUGVuZGluZ1JlYXNvblJlcXVlc3RcclxufSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3Jlc29sdmUtaGVhZGVyLXBlbmRpbmctcmVhc29uLXJlcXVlc3QuYm9cIjtcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiBcInJvb3RcIlxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25RdW90YXRpb25TZXJ2aWNlIGV4dGVuZHMgVHJhbnNhY3Rpb25TZXJ2aWNlIHtcclxuXHJcbiAgcHVibGljIGFzeW5jIGNyZWF0ZVNhbGVzT3JkZXJUaHJvdWdoUXVvdGF0aW9uKHJlcXVlc3Q6IENvcHlUcmFuc2FjdGlvblJlcXVlc3QpOiBQcm9taXNlPGJvb2xlYW4+IHtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZTxib29sZWFuPihhc3luYyAocmVzb2x2ZTogRnVuY3Rpb24sIHJlamVjdDogRnVuY3Rpb24pID0+IHtcclxuICAgICAgYXdhaXQgdGhpcy5jaGVja0JyYW5jaCgpO1xyXG4gICAgICBpZiAoIXRoaXMuY3VycmVudEJyYW5jaCkge1xyXG4gICAgICAgIHJldHVybiByZWplY3QoKTtcclxuICAgICAgfVxyXG4gICAgICByZXF1ZXN0LmJyYW5jaE5yID0gdGhpcy5jdXJyZW50QnJhbmNoO1xyXG4gICAgICB0cnkge1xyXG4gICAgICAgIGNvbnN0IHJlc3BvbnNlOiBUcmFuc2FjdGlvbkluZm9SZXNwb25zZSA9IGF3YWl0IHRoaXMuY29ubmVjdG9yLmNvbnZlcnRTYWxlc1F1b3RhdGlvblRvU2FsZXNPcmRlcihyZXF1ZXN0KTtcclxuICAgICAgICBhd2FpdCB0aGlzLmhhbmRsZUxpbmVPcGVyYXRpb25TdGF0dXNlcyhyZXNwb25zZSk7XHJcbiAgICAgICAgcmVzb2x2ZSh0cnVlKTtcclxuICAgICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICAgIHJldHVybiByZWplY3QoKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFzeW5jIF9zYXZlUXVvdGF0aW9uVHJhbnNhY3Rpb25BbmRDb21taXQodHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uSW5mb1Jlc3BvbnNlKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBhd2FpdCB0aGlzLmNvbm5lY3Rvci5zYXZlVHJhbnNhY3Rpb24odHJhbnNhY3Rpb24udHJhbnNhY3Rpb25JbmZvLnV1aWQpO1xyXG4gICAgYXdhaXQgdGhpcy5jb21taXQoKTtcclxuICAgIHRoaXMudHJhbnNhY3Rpb25FdmVudFNlcnZpY2UudXBkYXRlVHJhbnNhY3Rpb25SZWZlcmVuY2VzLm5leHQoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBoYW5kbGVIZWFkZXJPcGVyYXRpb25TdGF0dXNlcyhyZXNwb25zZTogVHJhbnNhY3Rpb25JbmZvUmVzcG9uc2UpOiBQcm9taXNlPGJvb2xlYW4+IHtcclxuICAgIGxldCBzdWNjZXNzOiBib29sZWFuID0gdHJ1ZTtcclxuICAgIGZvciAobGV0IGk6IG51bWJlciA9IDA7IGkgPCByZXNwb25zZS5oZWFkZXJPcGVyYXRpb25TdGF0dXNlcy5sZW5ndGg7IGkrKykge1xyXG4gICAgICBjb25zdCBzdGF0dXM6IEhlYWRlck9wZXJhdGlvblN0YXR1cyA9IHJlc3BvbnNlLmhlYWRlck9wZXJhdGlvblN0YXR1c2VzW2ldO1xyXG4gICAgICBzdWNjZXNzID0gc3VjY2VzcyAmJiBhd2FpdCB0aGlzLl9oYW5kbGVIZWFkZXJPcGVyYXRpb25TdGF0dXMoc3RhdHVzLCByZXNwb25zZS50cmFuc2FjdGlvbkluZm8pO1xyXG4gICAgfVxyXG4gICAgY29uc3QgaGFzUGVuZGluZ1JlYXNvbnM6IGJvb2xlYW4gPSByZXNwb25zZS5oZWFkZXJPcGVyYXRpb25TdGF0dXNlcy5maWx0ZXIobG9zID0+IGxvcy5wZW5kaW5nUmVhc29uICE9PSBcIlJFQVNPTl9OT05FXCIpLmxlbmd0aCA+IDA7XHJcbiAgICBpZiAoIWhhc1BlbmRpbmdSZWFzb25zKSB7XHJcbiAgICAgIHRoaXMuX3NhdmVRdW90YXRpb25UcmFuc2FjdGlvbkFuZENvbW1pdChyZXNwb25zZSk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gc3VjY2VzcztcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBoYW5kbGVMaW5lT3BlcmF0aW9uU3RhdHVzZXMocmVzcG9uc2U6IFRyYW5zYWN0aW9uSW5mb1Jlc3BvbnNlKTogUHJvbWlzZTxib29sZWFuPiB7XHJcbiAgICBsZXQgc3VjY2VzczogYm9vbGVhbiA9IHRydWU7XHJcbiAgICBmb3IgKGxldCBpOiBudW1iZXIgPSAwOyBpIDwgcmVzcG9uc2UubGluZU9wZXJhdGlvblN0YXR1c2VzLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgIGNvbnN0IHN0YXR1czogTGluZU9wZXJhdGlvblN0YXR1cyA9IHJlc3BvbnNlLmxpbmVPcGVyYXRpb25TdGF0dXNlc1tpXTtcclxuICAgICAgY29uc3QgdHJhbnNMaW5lOiBUcmFuc2FjdGlvbkxpbmVJbmZvID0gcmVzcG9uc2UudHJhbnNhY3Rpb25MaW5lcy5maW5kKHQgPT4gdC5saW5lTnIgPT09IHN0YXR1cy5saW5lTnIpO1xyXG4gICAgICBzdWNjZXNzID0gc3VjY2VzcyAmJiBhd2FpdCB0aGlzLl9oYW5kbGVMaW5lT3BlcmF0aW9uU3RhdHVzKHJlc3BvbnNlLCBzdGF0dXMsIHRyYW5zTGluZSk7XHJcbiAgICB9XHJcbiAgICBjb25zdCBoYXNQZW5kaW5nUmVhc29uczogYm9vbGVhbiA9IHJlc3BvbnNlLmxpbmVPcGVyYXRpb25TdGF0dXNlcy5maWx0ZXIobG9zID0+IGxvcy5wZW5kaW5nUmVhc29uICE9PSBcIlJFQVNPTl9OT05FXCIpLmxlbmd0aCA+IDA7XHJcbiAgICBpZiAoIWhhc1BlbmRpbmdSZWFzb25zKSB7XHJcbiAgICAgIHRoaXMuaGFuZGxlSGVhZGVyT3BlcmF0aW9uU3RhdHVzZXMocmVzcG9uc2UpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHN1Y2Nlc3M7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgcmVzb2x2ZVBlbmRpbmdMaW5lUmVhc29uKHBlbmRpbmdMaW5lVmFsdWVzOiBSZXNvbHZlTGluZVBlbmRpbmdSZWFzb25SZXF1ZXN0KTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBjb25zdCByZXNwb25zZTogVHJhbnNhY3Rpb25JbmZvUmVzcG9uc2UgPSBhd2FpdCB0aGlzLmNvbm5lY3Rvci5yZXNvbHZlUGVuZGluZ0xpbmVSZWFzb24ocGVuZGluZ0xpbmVWYWx1ZXMpO1xyXG4gICAgdGhpcy5oYW5kbGVMaW5lT3BlcmF0aW9uU3RhdHVzZXMocmVzcG9uc2UpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIHJlc29sdmVQZW5kaW5nSGVhZGVyUmVhc29uKHBlbmRpbmdIZWFkZXJWYWx1ZXM6IFJlc29sdmVIZWFkZXJQZW5kaW5nUmVhc29uUmVxdWVzdCk6IFByb21pc2U8Ym9vbGVhbj4ge1xyXG4gICAgY29uc3QgcmVzcG9uc2U6IFRyYW5zYWN0aW9uSW5mb1Jlc3BvbnNlID0gYXdhaXQgdGhpcy5jb25uZWN0b3IucmVzb2x2ZVBlbmRpbmdIZWFkZXJSZWFzb24ocGVuZGluZ0hlYWRlclZhbHVlcyk7XHJcbiAgICByZXR1cm4gdGhpcy5oYW5kbGVIZWFkZXJPcGVyYXRpb25TdGF0dXNlcyhyZXNwb25zZSk7XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=