@hmcts/ccpay-web-component 4.0.0-beta500 → 4.0.0-beta501

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 (196) hide show
  1. package/bundles/hmcts-ccpay-web-component.umd.js +2947 -6631
  2. package/bundles/hmcts-ccpay-web-component.umd.js.map +1 -1
  3. package/bundles/hmcts-ccpay-web-component.umd.min.js +1 -1
  4. package/bundles/hmcts-ccpay-web-component.umd.min.js.map +1 -1
  5. package/esm2015/hmcts-ccpay-web-component.js +26 -33
  6. package/esm2015/lib/components/add-remission/add-remission.component.js +144 -849
  7. package/esm2015/lib/components/allocate-payments/allocate-payments.component.js +275 -188
  8. package/esm2015/lib/components/card-details/card-details.component.js +34 -22
  9. package/esm2015/lib/components/case-transactions/case-transactions.component.js +537 -726
  10. package/esm2015/lib/components/error-banner/error-banner.component.js +17 -5
  11. package/esm2015/lib/components/fee-summary/fee-summary.component.js +257 -146
  12. package/esm2015/lib/components/mark-unidentified-payment/mark-unidentified-payment.component.js +143 -86
  13. package/esm2015/lib/components/mark-unsolicited-payment/mark-unsolicited-payment.component.js +162 -106
  14. package/esm2015/lib/components/page-not-found.component.js +4 -3
  15. package/esm2015/lib/components/payment-list/payment-list.component.js +80 -22
  16. package/esm2015/lib/components/payment-view/payment-view.component.js +137 -319
  17. package/esm2015/lib/components/pba-details/pba-details.component.js +32 -5
  18. package/esm2015/lib/components/processed-payments/processed-payments.component.js +41 -13
  19. package/esm2015/lib/components/reports/reports.component.js +109 -54
  20. package/esm2015/lib/components/status-history/status-history.component.js +42 -28
  21. package/esm2015/lib/components/unprocessed-payments/unprocessed-payments.component.js +113 -115
  22. package/esm2015/lib/interfaces/AddRemissionRequest.js +3 -2
  23. package/esm2015/lib/interfaces/AllocatePaymentRequest.js +3 -2
  24. package/esm2015/lib/interfaces/IAllocationPaymentsRequest.js +3 -2
  25. package/esm2015/lib/interfaces/IBSPayments.js +35 -38
  26. package/esm2015/lib/interfaces/ICardDetails.js +13 -14
  27. package/esm2015/lib/interfaces/IFee.js +43 -44
  28. package/esm2015/lib/interfaces/IPayment.js +55 -56
  29. package/esm2015/lib/interfaces/IPaymentGroup.js +11 -12
  30. package/esm2015/lib/interfaces/IPaymentStatus.js +3 -2
  31. package/esm2015/lib/interfaces/IPayments.js +5 -6
  32. package/esm2015/lib/interfaces/IRemission.js +17 -18
  33. package/esm2015/lib/interfaces/IStatusHistories.js +11 -12
  34. package/esm2015/lib/interfaces/IStatusHistory.js +13 -14
  35. package/esm2015/lib/interfaces/PayhubAntennaRequest.js +4 -3
  36. package/esm2015/lib/interfaces/PaymentToPayhubRequest.js +4 -3
  37. package/esm2015/lib/interfaces/UnidentifiedPaymentsRequest.js +3 -2
  38. package/esm2015/lib/interfaces/UnsolicitedPaymentsRequest.js +3 -2
  39. package/esm2015/lib/payment-lib.component.js +9 -71
  40. package/esm2015/lib/payment-lib.module.js +6 -29
  41. package/esm2015/lib/payment-lib.service.js +4 -18
  42. package/esm2015/lib/pipes/ccd-hyphens.pipe.js +4 -3
  43. package/esm2015/lib/pipes/key-value.pipe.js +4 -3
  44. package/esm2015/lib/pipes/sanitize-html.pipe.js +5 -7
  45. package/esm2015/lib/services/bulk-scaning-payment/bulk-scaning-payment.service.js +14 -37
  46. package/esm2015/lib/services/card-details/card-details.service.js +8 -19
  47. package/esm2015/lib/services/case-transactions/case-transactions.service.js +8 -19
  48. package/esm2015/lib/services/payment-list/payment-list.service.js +8 -19
  49. package/esm2015/lib/services/payment-view/payment-view.service.js +10 -81
  50. package/esm2015/lib/services/shared/error-handler.service.js +4 -6
  51. package/esm2015/lib/services/shared/httpclient/webcomponent.http.client.js +8 -17
  52. package/esm2015/lib/services/shared/logger/console-logger.service.js +5 -7
  53. package/esm2015/lib/services/shared/logger/logger.service.js +5 -7
  54. package/esm2015/lib/services/status-history/status-history.service.js +8 -19
  55. package/esm2015/lib/services/xl-file/xl-file.service.js +51 -56
  56. package/esm2015/public_api.js +2 -1
  57. package/esm5/hmcts-ccpay-web-component.js +26 -33
  58. package/esm5/lib/components/add-remission/add-remission.component.js +51 -917
  59. package/esm5/lib/components/allocate-payments/allocate-payments.component.js +61 -197
  60. package/esm5/lib/components/card-details/card-details.component.js +7 -20
  61. package/esm5/lib/components/case-transactions/case-transactions.component.js +71 -797
  62. package/esm5/lib/components/error-banner/error-banner.component.js +4 -3
  63. package/esm5/lib/components/fee-summary/fee-summary.component.js +44 -149
  64. package/esm5/lib/components/mark-unidentified-payment/mark-unidentified-payment.component.js +29 -84
  65. package/esm5/lib/components/mark-unsolicited-payment/mark-unsolicited-payment.component.js +40 -104
  66. package/esm5/lib/components/page-not-found.component.js +4 -3
  67. package/esm5/lib/components/payment-list/payment-list.component.js +8 -21
  68. package/esm5/lib/components/payment-view/payment-view.component.js +21 -379
  69. package/esm5/lib/components/pba-details/pba-details.component.js +4 -3
  70. package/esm5/lib/components/processed-payments/processed-payments.component.js +6 -11
  71. package/esm5/lib/components/reports/reports.component.js +18 -52
  72. package/esm5/lib/components/status-history/status-history.component.js +9 -27
  73. package/esm5/lib/components/unprocessed-payments/unprocessed-payments.component.js +24 -126
  74. package/esm5/lib/interfaces/AddRemissionRequest.js +3 -2
  75. package/esm5/lib/interfaces/AllocatePaymentRequest.js +3 -2
  76. package/esm5/lib/interfaces/IAllocationPaymentsRequest.js +3 -2
  77. package/esm5/lib/interfaces/IBSPayments.js +35 -38
  78. package/esm5/lib/interfaces/ICardDetails.js +13 -14
  79. package/esm5/lib/interfaces/IFee.js +43 -44
  80. package/esm5/lib/interfaces/IPayment.js +55 -56
  81. package/esm5/lib/interfaces/IPaymentGroup.js +11 -12
  82. package/esm5/lib/interfaces/IPaymentStatus.js +3 -2
  83. package/esm5/lib/interfaces/IPayments.js +5 -6
  84. package/esm5/lib/interfaces/IRemission.js +17 -18
  85. package/esm5/lib/interfaces/IStatusHistories.js +11 -12
  86. package/esm5/lib/interfaces/IStatusHistory.js +13 -14
  87. package/esm5/lib/interfaces/PayhubAntennaRequest.js +4 -3
  88. package/esm5/lib/interfaces/PaymentToPayhubRequest.js +4 -3
  89. package/esm5/lib/interfaces/UnidentifiedPaymentsRequest.js +3 -2
  90. package/esm5/lib/interfaces/UnsolicitedPaymentsRequest.js +3 -2
  91. package/esm5/lib/payment-lib.component.js +7 -58
  92. package/esm5/lib/payment-lib.module.js +6 -29
  93. package/esm5/lib/payment-lib.service.js +4 -25
  94. package/esm5/lib/pipes/ccd-hyphens.pipe.js +4 -3
  95. package/esm5/lib/pipes/key-value.pipe.js +4 -3
  96. package/esm5/lib/pipes/sanitize-html.pipe.js +5 -7
  97. package/esm5/lib/services/bulk-scaning-payment/bulk-scaning-payment.service.js +14 -37
  98. package/esm5/lib/services/card-details/card-details.service.js +8 -19
  99. package/esm5/lib/services/case-transactions/case-transactions.service.js +8 -19
  100. package/esm5/lib/services/payment-list/payment-list.service.js +8 -19
  101. package/esm5/lib/services/payment-view/payment-view.service.js +10 -112
  102. package/esm5/lib/services/shared/error-handler.service.js +4 -6
  103. package/esm5/lib/services/shared/httpclient/webcomponent.http.client.js +8 -17
  104. package/esm5/lib/services/shared/logger/console-logger.service.js +5 -7
  105. package/esm5/lib/services/shared/logger/logger.service.js +5 -7
  106. package/esm5/lib/services/status-history/status-history.service.js +8 -19
  107. package/esm5/lib/services/xl-file/xl-file.service.js +51 -62
  108. package/esm5/public_api.js +2 -1
  109. package/fesm2015/hmcts-ccpay-web-component.js +2181 -3822
  110. package/fesm2015/hmcts-ccpay-web-component.js.map +1 -1
  111. package/fesm5/hmcts-ccpay-web-component.js +2834 -6704
  112. package/fesm5/hmcts-ccpay-web-component.js.map +1 -1
  113. package/hmcts-ccpay-web-component.d.ts +23 -31
  114. package/hmcts-ccpay-web-component.metadata.json +1 -1
  115. package/lib/components/add-remission/add-remission.component.d.ts +2 -71
  116. package/lib/components/allocate-payments/allocate-payments.component.d.ts +5 -16
  117. package/lib/components/case-transactions/case-transactions.component.d.ts +1 -52
  118. package/lib/components/fee-summary/fee-summary.component.d.ts +1 -3
  119. package/lib/components/payment-view/payment-view.component.d.ts +1 -37
  120. package/lib/components/status-history/status-history.component.d.ts +0 -1
  121. package/lib/components/unprocessed-payments/unprocessed-payments.component.d.ts +4 -15
  122. package/lib/interfaces/IBSPayments.d.ts +0 -1
  123. package/lib/payment-lib.component.d.ts +1 -18
  124. package/lib/payment-lib.service.d.ts +0 -3
  125. package/lib/services/payment-view/payment-view.service.d.ts +0 -12
  126. package/lib/services/xl-file/xl-file.service.d.ts +6 -6
  127. package/package.json +1 -1
  128. package/esm2015/lib/components/process-refund/process-refund.component.js +0 -380
  129. package/esm2015/lib/components/refund-list/refund-list.component.js +0 -140
  130. package/esm2015/lib/components/refund-status/refund-status.component.js +0 -509
  131. package/esm2015/lib/components/refunds/refunds.component.js +0 -23
  132. package/esm2015/lib/components/table/table.component.js +0 -171
  133. package/esm2015/lib/interfaces/AddRetroRemissionRequest.js +0 -21
  134. package/esm2015/lib/interfaces/IOrderReferenceFee.js +0 -25
  135. package/esm2015/lib/interfaces/IPatchRefundAction.js +0 -15
  136. package/esm2015/lib/interfaces/IPaymentView.js +0 -17
  137. package/esm2015/lib/interfaces/IRefundAction.js +0 -15
  138. package/esm2015/lib/interfaces/IRefundList.js +0 -29
  139. package/esm2015/lib/interfaces/IRefundReasons.js +0 -17
  140. package/esm2015/lib/interfaces/IRefundRejectReason.js +0 -15
  141. package/esm2015/lib/interfaces/IRefundStatus.js +0 -23
  142. package/esm2015/lib/interfaces/IRefundStatusHistory.js +0 -15
  143. package/esm2015/lib/interfaces/IResubmitRefundRequest.js +0 -21
  144. package/esm2015/lib/interfaces/IssueRefundRequest.js +0 -25
  145. package/esm2015/lib/interfaces/PostIssueRefundRetroRemission.js +0 -17
  146. package/esm2015/lib/interfaces/PostRefundRetroRemission.js +0 -21
  147. package/esm2015/lib/interfaces/RefundsRequest.js +0 -21
  148. package/esm2015/lib/pipes/capitalize.pipe.js +0 -24
  149. package/esm2015/lib/services/orderslist.service.js +0 -211
  150. package/esm2015/lib/services/refunds/refunds.service.js +0 -196
  151. package/esm5/lib/components/process-refund/process-refund.component.js +0 -456
  152. package/esm5/lib/components/refund-list/refund-list.component.js +0 -143
  153. package/esm5/lib/components/refund-status/refund-status.component.js +0 -568
  154. package/esm5/lib/components/refunds/refunds.component.js +0 -29
  155. package/esm5/lib/components/table/table.component.js +0 -201
  156. package/esm5/lib/interfaces/AddRetroRemissionRequest.js +0 -19
  157. package/esm5/lib/interfaces/IOrderReferenceFee.js +0 -25
  158. package/esm5/lib/interfaces/IPatchRefundAction.js +0 -15
  159. package/esm5/lib/interfaces/IPaymentView.js +0 -17
  160. package/esm5/lib/interfaces/IRefundAction.js +0 -15
  161. package/esm5/lib/interfaces/IRefundList.js +0 -29
  162. package/esm5/lib/interfaces/IRefundReasons.js +0 -17
  163. package/esm5/lib/interfaces/IRefundRejectReason.js +0 -15
  164. package/esm5/lib/interfaces/IRefundStatus.js +0 -23
  165. package/esm5/lib/interfaces/IRefundStatusHistory.js +0 -15
  166. package/esm5/lib/interfaces/IResubmitRefundRequest.js +0 -19
  167. package/esm5/lib/interfaces/IssueRefundRequest.js +0 -22
  168. package/esm5/lib/interfaces/PostIssueRefundRetroRemission.js +0 -16
  169. package/esm5/lib/interfaces/PostRefundRetroRemission.js +0 -19
  170. package/esm5/lib/interfaces/RefundsRequest.js +0 -19
  171. package/esm5/lib/pipes/capitalize.pipe.js +0 -32
  172. package/esm5/lib/services/orderslist.service.js +0 -276
  173. package/esm5/lib/services/refunds/refunds.service.js +0 -236
  174. package/lib/components/process-refund/process-refund.component.d.ts +0 -53
  175. package/lib/components/refund-list/refund-list.component.d.ts +0 -23
  176. package/lib/components/refund-status/refund-status.component.d.ts +0 -68
  177. package/lib/components/refunds/refunds.component.d.ts +0 -5
  178. package/lib/components/table/table.component.d.ts +0 -35
  179. package/lib/interfaces/AddRetroRemissionRequest.d.ts +0 -5
  180. package/lib/interfaces/IOrderReferenceFee.d.ts +0 -9
  181. package/lib/interfaces/IPatchRefundAction.d.ts +0 -4
  182. package/lib/interfaces/IPaymentView.d.ts +0 -5
  183. package/lib/interfaces/IRefundAction.d.ts +0 -4
  184. package/lib/interfaces/IRefundList.d.ts +0 -14
  185. package/lib/interfaces/IRefundReasons.d.ts +0 -5
  186. package/lib/interfaces/IRefundRejectReason.d.ts +0 -4
  187. package/lib/interfaces/IRefundStatus.d.ts +0 -8
  188. package/lib/interfaces/IRefundStatusHistory.d.ts +0 -5
  189. package/lib/interfaces/IResubmitRefundRequest.d.ts +0 -5
  190. package/lib/interfaces/IssueRefundRequest.d.ts +0 -6
  191. package/lib/interfaces/PostIssueRefundRetroRemission.d.ts +0 -4
  192. package/lib/interfaces/PostRefundRetroRemission.d.ts +0 -5
  193. package/lib/interfaces/RefundsRequest.d.ts +0 -5
  194. package/lib/pipes/capitalize.pipe.d.ts +0 -5
  195. package/lib/services/orderslist.service.d.ts +0 -40
  196. package/lib/services/refunds/refunds.service.d.ts +0 -30
@@ -1,568 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
- */
5
- import { Component, Input } from '@angular/core';
6
- import { RefundsService } from '../../services/refunds/refunds.service';
7
- import { FormBuilder, Validators, FormControl } from '@angular/forms';
8
- import { PaymentViewService } from '../../services/payment-view/payment-view.service';
9
- import { Router } from '@angular/router';
10
- import { OrderslistService } from '../../services/orderslist.service';
11
- import { IResubmitRefundRequest } from '../../interfaces/IResubmitRefundRequest';
12
- import { PaymentLibComponent } from '../../payment-lib.component';
13
- /** @type {?} */
14
- var BS_ENABLE_FLAG = 'bulk-scan-enabling-fe';
15
- var RefundStatusComponent = /** @class */ (function () {
16
- function RefundStatusComponent(formBuilder, refundService, paymentLibComponent, paymentViewService, router, OrderslistService) {
17
- this.formBuilder = formBuilder;
18
- this.refundService = refundService;
19
- this.paymentLibComponent = paymentLibComponent;
20
- this.paymentViewService = paymentViewService;
21
- this.router = router;
22
- this.OrderslistService = OrderslistService;
23
- this.LOGGEDINUSERROLES = [];
24
- this.rejectedRefundList = [];
25
- this.approvalStatus = 'sent for approval';
26
- this.rejectStatus = 'sent back';
27
- this.errorMessage = null;
28
- this.refundButtonState = '';
29
- this.isAmountEmpty = false;
30
- this.isReasonEmpty = false;
31
- this.amountHasError = false;
32
- this.isRemissionLessThanFeeError = false;
33
- this.refundHasError = false;
34
- this.refundReasons = [];
35
- this.isRefundBtnDisabled = true;
36
- this.isLastUpdatedByCurrentUser = true;
37
- this.isProcessRefund = false;
38
- }
39
- /**
40
- * @return {?}
41
- */
42
- RefundStatusComponent.prototype.ngOnInit = /**
43
- * @return {?}
44
- */
45
- function () {
46
- var _this = this;
47
- this.resetRemissionForm([false, false, false, false], 'All');
48
- this.bsPaymentDcnNumber = this.paymentLibComponent.bspaymentdcn;
49
- this.isCallFromRefundList = this.paymentLibComponent.isCallFromRefundList;
50
- // if(this.paymentLibComponent.isFromRefundStatusPage) {
51
- // this.viewName = 'reviewandsubmitview';
52
- // }
53
- if (this.paymentLibComponent.isRefundStatusView) {
54
- this.viewName = 'refundview';
55
- this.OrderslistService.getRefundView().subscribe((/**
56
- * @param {?} data
57
- * @return {?}
58
- */
59
- function (data) { return _this.refundlist = data; }));
60
- this.OrderslistService.getCCDCaseNumberforRefund.subscribe((/**
61
- * @param {?} data
62
- * @return {?}
63
- */
64
- function (data) { return _this.ccdCaseNumber = data; }));
65
- }
66
- else {
67
- this.viewName = 'refundstatuslist';
68
- this.refundService.getRefundStatusList(this.ccdCaseNumber).subscribe((/**
69
- * @param {?} refundList
70
- * @return {?}
71
- */
72
- function (refundList) {
73
- _this.rejectedRefundList = refundList['refund_list'];
74
- })),
75
- (/**
76
- * @param {?} error
77
- * @return {?}
78
- */
79
- function (error) {
80
- _this.errorMessage = error.replace(/"/g, "");
81
- });
82
- }
83
- this.refundStatusForm = this.formBuilder.group({
84
- amount: new FormControl('', Validators.compose([
85
- Validators.required,
86
- Validators.pattern('^[0-9]+(\.[0-9]{1,2})?$')
87
- ])),
88
- refundReason: new FormControl('', Validators.compose([Validators.required])),
89
- reason: new FormControl()
90
- });
91
- this.getRefundsStatusHistoryList();
92
- if (this.LOGGEDINUSERROLES.some((/**
93
- * @param {?} i
94
- * @return {?}
95
- */
96
- function (i) { return i.includes('payments-refund-approver'); }))) {
97
- this.isProcessRefund = true;
98
- this.refundButtonState = this.refundlist.refund_status.name;
99
- return;
100
- }
101
- if (this.LOGGEDINUSERROLES.some((/**
102
- * @param {?} i
103
- * @return {?}
104
- */
105
- function (i) { return i.includes('payments-refund'); }))) {
106
- this.isProcessRefund = false;
107
- this.refundButtonState = this.refundlist.refund_status.name;
108
- }
109
- };
110
- /**
111
- * @return {?}
112
- */
113
- RefundStatusComponent.prototype.getRefundsStatusHistoryList = /**
114
- * @return {?}
115
- */
116
- function () {
117
- var _this = this;
118
- if (this.refundlist !== undefined) {
119
- this.refundService.getRefundStatusHistory(this.refundlist.refund_reference).subscribe((/**
120
- * @param {?} statusHistoryList
121
- * @return {?}
122
- */
123
- function (statusHistoryList) {
124
- _this.refundStatusHistories = statusHistoryList.status_history_dto_list;
125
- _this.isLastUpdatedByCurrentUser = statusHistoryList.last_updated_by_current_user;
126
- })),
127
- (/**
128
- * @param {?} error
129
- * @return {?}
130
- */
131
- function (error) {
132
- _this.errorMessage = error.replace(/"/g, "");
133
- });
134
- }
135
- };
136
- /**
137
- * @param {?} refundlist
138
- * @param {?} navigationpage
139
- * @return {?}
140
- */
141
- RefundStatusComponent.prototype.goToRefundView = /**
142
- * @param {?} refundlist
143
- * @param {?} navigationpage
144
- * @return {?}
145
- */
146
- function (refundlist, navigationpage) {
147
- this.OrderslistService.setRefundView(refundlist);
148
- this.OrderslistService.setCCDCaseNumber(this.ccdCaseNumber);
149
- this.paymentLibComponent.viewName = 'refundstatuslist';
150
- this.paymentLibComponent.isRefundStatusView = true;
151
- this.refundlist = refundlist;
152
- this.OrderslistService.setnavigationPage(navigationpage);
153
- };
154
- /**
155
- * @return {?}
156
- */
157
- RefundStatusComponent.prototype.loadCaseTransactionPage = /**
158
- * @return {?}
159
- */
160
- function () {
161
- var _this = this;
162
- this.paymentLibComponent.isRefundStatusView = false;
163
- //this.paymentLibComponent.TAKEPAYMENT = true;
164
- this.paymentLibComponent.viewName = 'case-transactions';
165
- this.paymentViewService.getBSfeature().subscribe((/**
166
- * @param {?} features
167
- * @return {?}
168
- */
169
- function (features) {
170
- /** @type {?} */
171
- var result = JSON.parse(features).filter((/**
172
- * @param {?} feature
173
- * @return {?}
174
- */
175
- function (feature) { return feature.uid === BS_ENABLE_FLAG; }));
176
- _this.paymentLibComponent.ISBSENABLE = result[0] ? result[0].enable : false;
177
- }), (/**
178
- * @param {?} err
179
- * @return {?}
180
- */
181
- function (err) {
182
- _this.paymentLibComponent.ISBSENABLE = false;
183
- }));
184
- /** @type {?} */
185
- var partUrl = "selectedOption=" + this.paymentLibComponent.SELECTED_OPTION;
186
- partUrl += this.bsPaymentDcnNumber ? "&dcn=" + this.bsPaymentDcnNumber : '';
187
- partUrl += this.paymentLibComponent.ISBSENABLE ? '&isBulkScanning=Enable' : '&isBulkScanning=Disable';
188
- partUrl += this.paymentLibComponent.ISTURNOFF ? '&isTurnOff=Enable' : '&isTurnOff=Disable';
189
- partUrl += this.paymentLibComponent.ISSFENABLE ? '&isStFixEnable=Enable' : '&isStFixEnable=Disable';
190
- partUrl += "&caseType=" + this.paymentLibComponent.CASETYPE;
191
- partUrl += this.isNewPcipalOff ? '&isNewPcipalOff=Enable' : '&isNewPcipalOff=Disable';
192
- partUrl += this.isOldPcipalOff ? '&isOldPcipalOff=Enable' : '&isOldPcipalOff=Disable';
193
- /** @type {?} */
194
- var url = "/payment-history/" + this.ccdCaseNumber + "?view=case-transactions&takePayment=" + this.paymentLibComponent.TAKEPAYMENT + "&" + partUrl;
195
- this.router.navigateByUrl(url);
196
- };
197
- /**
198
- * @return {?}
199
- */
200
- RefundStatusComponent.prototype.loadRefundListPage = /**
201
- * @return {?}
202
- */
203
- function () {
204
- var _this = this;
205
- this.OrderslistService.getnavigationPageValue().subscribe((/**
206
- * @param {?} data
207
- * @return {?}
208
- */
209
- function (data) { return _this.navigationpage = data; }));
210
- if (this.navigationpage === 'casetransactions') {
211
- this.loadCaseTransactionPage();
212
- }
213
- else {
214
- this.paymentLibComponent.viewName = 'refund-list';
215
- }
216
- };
217
- /**
218
- * @param {?} event
219
- * @return {?}
220
- */
221
- RefundStatusComponent.prototype.gotoReviewDetailsPage = /**
222
- * @param {?} event
223
- * @return {?}
224
- */
225
- function (event) {
226
- event.preventDefault();
227
- this.errorMessage = false;
228
- this.paymentLibComponent.isRefundStatusView = true;
229
- this.ngOnInit();
230
- // this.viewName='refundview';
231
- // this.paymentLibComponent.CCD_CASE_NUMBER = this.ccdCaseNumber;
232
- // this.paymentLibComponent.isRefundStatusView = true;
233
- // this.paymentLibComponent.isCallFromRefundList = true;
234
- };
235
- /**
236
- * @return {?}
237
- */
238
- RefundStatusComponent.prototype.gotoReviewAndReSubmitPage = /**
239
- * @return {?}
240
- */
241
- function () {
242
- var _this = this;
243
- this.viewName = 'reviewandsubmitview';
244
- this.oldRefundReason = this.refundlist.reason;
245
- this.changedAmount = this.refundlist.amount;
246
- this.refundreason = this.refundStatusHistories.filter((/**
247
- * @param {?} data
248
- * @return {?}
249
- */
250
- function (data) { return data.status === 'sentback'; }))[0].notes;
251
- this.refundService.getRefundReasons().subscribe((/**
252
- * @param {?} refundReasons
253
- * @return {?}
254
- */
255
- function (refundReasons) {
256
- _this.refundReasons = refundReasons['data'];
257
- }));
258
- };
259
- /**
260
- * @return {?}
261
- */
262
- RefundStatusComponent.prototype.gotoRefundReasonPage = /**
263
- * @return {?}
264
- */
265
- function () {
266
- this.isRefundBtnDisabled = false;
267
- this.paymentLibComponent.REFUNDLIST = "true";
268
- this.paymentLibComponent.isFromRefundStatusPage = true;
269
- this.ccdCaseNumber = this.paymentLibComponent.CCD_CASE_NUMBER;
270
- this.errorMessage = false;
271
- this.viewName = 'issuerefund';
272
- };
273
- /**
274
- * @return {?}
275
- */
276
- RefundStatusComponent.prototype.gotoAmountPage = /**
277
- * @return {?}
278
- */
279
- function () {
280
- this.errorMessage = false;
281
- this.paymentLibComponent.REFUNDLIST = "true";
282
- this.isRefundBtnDisabled = false;
283
- this.ccdCaseNumber = this.paymentLibComponent.CCD_CASE_NUMBER;
284
- this.paymentLibComponent.isFromRefundStatusPage = true;
285
- this.viewName = 'processretroremissonpage';
286
- };
287
- /**
288
- * @return {?}
289
- */
290
- RefundStatusComponent.prototype.goToReviewAndSubmitView = /**
291
- * @return {?}
292
- */
293
- function () {
294
- /** @type {?} */
295
- var remissionctrls = this.refundStatusForm.controls;
296
- if (this.refundStatusForm.dirty) {
297
- if (remissionctrls['amount'].value == '') {
298
- this.resetRemissionForm([true, false, false, false], 'amount');
299
- }
300
- else if (remissionctrls['amount'].value != '' && remissionctrls['amount'].invalid) {
301
- this.resetRemissionForm([false, true, false, false], 'amount');
302
- }
303
- else if (remissionctrls['reason'].value == '') {
304
- this.resetRemissionForm([false, false, false, true], 'reason');
305
- }
306
- else {
307
- this.refundlist.reason = remissionctrls['reason'].value;
308
- this.viewName = 'reviewandsubmitview';
309
- }
310
- }
311
- };
312
- /**
313
- * @param {?} val
314
- * @param {?} field
315
- * @return {?}
316
- */
317
- RefundStatusComponent.prototype.resetRemissionForm = /**
318
- * @param {?} val
319
- * @param {?} field
320
- * @return {?}
321
- */
322
- function (val, field) {
323
- if (field === 'All') {
324
- this.isAmountEmpty = val[0];
325
- this.amountHasError = val[1];
326
- this.isRemissionLessThanFeeError = val[2];
327
- this.isReasonEmpty = val[3];
328
- }
329
- else if (field === 'amount' || field === 'All') {
330
- this.isAmountEmpty = val[0];
331
- this.amountHasError = val[1];
332
- this.isRemissionLessThanFeeError = val[2];
333
- }
334
- else if (field === 'reason' || field === 'All') {
335
- this.isReasonEmpty = val[3];
336
- }
337
- };
338
- /**
339
- * @param {?} key
340
- * @param {?} value
341
- * @return {?}
342
- */
343
- RefundStatusComponent.prototype.selectRadioButton = /**
344
- * @param {?} key
345
- * @param {?} value
346
- * @return {?}
347
- */
348
- function (key, value) {
349
- this.refundHasError = false;
350
- this.selectedRefundReason = key;
351
- if (key === 'Other') {
352
- this.refundHasError = false;
353
- this.refundReason = key;
354
- }
355
- };
356
- /**
357
- * @param {?} refundListReason
358
- * @return {?}
359
- */
360
- RefundStatusComponent.prototype.getRefundListReason = /**
361
- * @param {?} refundListReason
362
- * @return {?}
363
- */
364
- function (refundListReason) {
365
- if (this.paymentLibComponent.isFromRefundStatusPage && !this.paymentLibComponent.iscancelClicked) {
366
- this.refundlist.reason = refundListReason.reason;
367
- this.refundCode = refundListReason.code;
368
- }
369
- else {
370
- this.isRefundBtnDisabled = true;
371
- }
372
- this.viewName = 'reviewandsubmitview';
373
- this.paymentLibComponent.CCD_CASE_NUMBER = this.ccdCaseNumber;
374
- };
375
- /**
376
- * @param {?} amount
377
- * @return {?}
378
- */
379
- RefundStatusComponent.prototype.getRefundAmount = /**
380
- * @param {?} amount
381
- * @return {?}
382
- */
383
- function (amount) {
384
- if (this.paymentLibComponent.isFromRefundStatusPage && !this.paymentLibComponent.iscancelClicked) {
385
- if (amount > 0) {
386
- this.changedAmount = amount;
387
- // this.refundlist.amount = amount;
388
- }
389
- }
390
- else {
391
- this.isRefundBtnDisabled = true;
392
- }
393
- this.viewName = 'reviewandsubmitview';
394
- this.paymentLibComponent.CCD_CASE_NUMBER = this.ccdCaseNumber;
395
- };
396
- /**
397
- * @return {?}
398
- */
399
- RefundStatusComponent.prototype.gotoReviewRefundConfirmationPage = /**
400
- * @return {?}
401
- */
402
- function () {
403
- var _this = this;
404
- if (this.oldRefundReason === this.refundlist.reason) {
405
- this.refundCode = '';
406
- }
407
- /** @type {?} */
408
- var resubmitRequest = new IResubmitRefundRequest(this.refundCode, this.changedAmount);
409
- this.refundService.patchResubmitRefund(resubmitRequest, this.refundlist.refund_reference).subscribe((/**
410
- * @param {?} response
411
- * @return {?}
412
- */
413
- function (response) {
414
- if (JSON.parse(response)) {
415
- _this.refundReference = JSON.parse(response).data.refund_reference;
416
- _this.refundAmount = JSON.parse(response).data.refund_amount;
417
- _this.viewName = 'reviewrefundconfirmationpage';
418
- }
419
- }), (/**
420
- * @param {?} error
421
- * @return {?}
422
- */
423
- function (error) {
424
- _this.errorMessage = error.replace(/"/g, "");
425
- }));
426
- };
427
- /**
428
- * @param {?} refundReference
429
- * @param {?} refundList
430
- * @return {?}
431
- */
432
- RefundStatusComponent.prototype.goToRefundProcessComponent = /**
433
- * @param {?} refundReference
434
- * @param {?} refundList
435
- * @return {?}
436
- */
437
- function (refundReference, refundList) {
438
- this.paymentLibComponent.refundlistsource = refundList;
439
- this.paymentLibComponent.refundReference = refundReference;
440
- this.paymentLibComponent.viewName = 'process-refund';
441
- };
442
- RefundStatusComponent.decorators = [
443
- { type: Component, args: [{
444
- selector: 'ccpay-refund-status',
445
- template: "<div *ngIf=\"errorMessage\">\n <div class=\"error-summary\" role=\"group\" aria-labelledby=\"failure-error-summary-heading\" tabindex=\"-1\">\n <h2 class=\"heading-medium error-summary-heading\" id=\"failure-error-summary-heading\">\n Error in processing the request\n </h2>\n <div class=\"govuk-error-summary__body\">\n {{ errorMessage }}\n </div>\n </div>\n</div>\n<ng-container *ngIf=\"viewName==='refundstatuslist' && rejectedRefundList\">\n <!-- payments -->\n\n <table class=\"govuk-table\">\n <thead class=\"govuk-table__head\">\n <tr class=\"govuk-table__row\">\n <td class=\"govuk-table__header col-16\" scope=\"col\">Status</td>\n <td class=\"govuk-table__header col-11\" scope=\"col\">Amount</td>\n <td class=\"govuk-table__header col-18\" scope=\"col\">Date</td>\n <td class=\"govuk-table__header col-25\" scope=\"col\">Refund reference</td>\n <td class=\"govuk-table__header col-24 \" scope=\"col\">Reason</td>\n <td class=\"govuk-table__header\" scope=\"col\"></td>\n </tr>\n </thead>\n <tbody class=\"govuk-table__body\" *ngIf=\"rejectedRefundList?.length > 0\">\n <tr class=\"govuk-table__row\" *ngFor=\"let refundList of rejectedRefundList\">\n <td class=\"govuk-table__cell whitespace-inherit\">{{ refundList?.refund_status['name'] | capitalize }}</td>\n <td class=\"channel govuk-table__cell whitespace-inherit\">\u00A3{{ refundList?.amount | number:'.2' }}</td>\n <td class=\"govuk-table__cell capitalize whitespace-inherit\">{{ refundList?.date_created | date:'dd MMM yyyy'}}\n </td>\n <td class=\"govuk-table__cell whitespace-inherit\">{{ refundList?.refund_reference }}</td>\n <td class=\"govuk-table__cell whitespace-inherit\"> {{refundList?.reason}}</td>\n <td class=\"govuk-table__cell whitespace-inherit\">\n <a href=\"javascript:void(0)\" (click)=\"goToRefundView(refundList,'casetransactions')\">Review</a>\n </td>\n </tr>\n </tbody>\n <tbody class=\"govuk-table__body\" *ngIf=\"rejectedRefundList?.length === 0\">\n <td class=\"govuk-table__cell\" colspan=\"6\">No refunds recorded</td>\n </tbody>\n </table>\n</ng-container>\n\n<ng-container *ngIf=\"viewName==='refundview'\">\n <div class=\"govuk-breadcrumbs\">\n <ol class=\"govuk-breadcrumbs__list\">\n <li class=\"govuk-breadcrumbs__list-item\">\n <a (click)=\"loadRefundListPage()\" class=\"govuk-back-link govuk-label\">Back</a>\n </li>\n </ol>\n </div>\n <h2 class=\"govuk-heading-l\">Refund details</h2>\n <table>\n \n <tbody>\n <tr class=\"section\">\n <td class=\"bold tb-col-w\">Refund reference</td>\n <td>{{ refundlist?.refund_reference }}</td>\n </tr>\n <tr class=\"section\">\n <td class=\"bold tb-col-w\">Payment to be refunded</td>\n <td>{{refundlist?.payment_reference }}</td>\n </tr>\n <tr class=\"section\">\n <td class=\"bold tb-col-w\">Reason for refund</td>\n <td>{{ refundlist?.reason }}</td>\n </tr>\n <tr class=\"section\">\n <td class=\"bold tb-col-w\">Amount refunded</td>\n <td>\u00A3{{refundlist?.amount | number:'.2' }}</td>\n </tr>\n\n </tbody>\n </table>\n\n <!-- Status history -->\n <div>\n <br />\n <h2 class=\"govuk-heading-m\">Refund status history</h2>\n <div *ngIf=\"refundStatusHistories\">\n <table class=\"govuk-table\">\n <thead class=\"govuk-table__head\">\n <tr class=\"govuk-table__row\">\n <td class=\"govuk-table__header col-24 whitespace-inherit\" scope=\"col\">Status</td>\n <td class=\"govuk-table__header col-27 whitespace-inherit\" scope=\"col\">Date and time</td>\n <td class=\"govuk-table__header whitespace-inherit\" scope=\"col\">Users</td>\n <td class=\"govuk-table__header whitespace-inherit\" scope=\"col\">Notes</td>\n </tr>\n </thead>\n <tbody class=\"govuk-table__body\" *ngFor=\"let refundStatusHistory of refundStatusHistories;\">\n <tr class=\"govuk-table__row\">\n <td class=\"govuk-table__cell whitespace-inherit\">{{refundStatusHistory.status | capitalize}}</td>\n <td class=\"govuk-table__cell whitespace-inherit\">{{refundStatusHistory.date_created | date:'d MMMM yyyy\n hh:mm:ss'}}</td>\n <td class=\"govuk-table__cell whitespace-inherit\">{{refundStatusHistory.created_by}}</td>\n <td class=\"govuk-table__cell whitespace-inherit\">{{refundStatusHistory.notes}}</td>\n </tr>\n </tbody>\n </table>\n </div>\n\n </div>\n\n <ng-container *ngIf=\"viewName==='refundview'\">\n <div *ngIf=\"refundButtonState==='sent back'\">\n <br />\n <button type=\"submit\" class=\"button govuk-button--secondary btnmargin\"\n (click)=\"gotoReviewAndReSubmitPage()\">Resubmit\n refund</button>\n </div>\n <div *ngIf=\"isProcessRefund && !isLastUpdatedByCurrentUser && refundButtonState==='sent for approval'\">\n <br />\n <button type=\"submit\" class=\"button govuk-button--secondary\"\n (click)=\"goToRefundProcessComponent(refundlist.refund_reference,refundlist)\">Process refund</button>\n </div>\n </ng-container>\n\n\n</ng-container>\n\n<ng-container *ngIf=\"viewName==='reviewandsubmitview'\">\n <!-- <div class=\"govuk-breadcrumbs\">\n <ol class=\"govuk-breadcrumbs__list\">\n <li class=\"govuk-breadcrumbs__list-item\">\n <a (click)=\"gotoReviewDetailsPage($event)\" class=\"govuk-back-link govuk-label\">Back</a>\n </li>\n </ol>\n </div> -->\n <div class=\"govuk-warning-text\">\n <h1 class=\"heading-large\">Review and resubmit refund</h1>\n </div>\n <table class=\"govuk-table\">\n <tr class=\"govuk-table__row\">\n <td class=\"govuk-table__cell govuk-!-font-weight-bold\">Reason for rejection</td>\n <td class=\"govuk-table__cell\">{{refundreason}}</td>\n </tr>\n <tr class=\"govuk-table__row\">\n <td class=\"govuk-table__cell govuk-!-font-weight-bold\">Refund reference</td>\n <td class=\"govuk-table__cell\">{{ refundlist?.refund_reference}} </td>\n </tr>\n <tr class=\"govuk-table__row\">\n <td class=\"govuk-table__cell govuk-!-font-weight-bold\">Reason for refund</td>\n <td class=\"govuk-table__cell\"> {{ refundlist?.reason}}\n <a (click)=\"gotoRefundReasonPage()\" *ngIf=\"refundlist?.reason !== 'Retrospective remission'\"\n class=\"govuk-link right\">Change</a>\n </td>\n\n <!-- <td class=\"govuk-table__cell\">{{ refundlist?.reason }}</td>\n <a (click)=\"gotoRefundReasonPage()\" class=\"govuk-link right\">Change</a> -->\n </tr>\n <tr class=\"govuk-table__row\">\n <td class=\"govuk-table__cell govuk-!-font-weight-bold\">Payment reference</td>\n <td class=\"govuk-table__cell\">{{ refundlist?.payment_reference}} </td>\n </tr>\n <tr class=\"govuk-table__row\">\n <td class=\"govuk-table__cell govuk-!-font-weight-bold\">Payment amount</td>\n <td class=\"govuk-table__cell\"> \u00A3{{ changedAmount | number:'.2' }}\n <a (click)=\"gotoAmountPage()\" *ngIf=\"refundlist?.reason === 'Retrospective remission'\"\n class=\"govuk-link right\">Change</a>\n </td>\n\n </tr>\n </table>\n <div class=\"govuk-button-group\">\n <button (click)=\"gotoReviewDetailsPage($event)\" class=\"govuk-button govuk-button--secondary\"> Previous</button>\n <button [disabled]=\"isRefundBtnDisabled\" (click)=\"gotoReviewRefundConfirmationPage()\" class=\"govuk-button button\"\n data-module=\"govuk-button\">\n Submit refund\n </button>\n <p><a (click)=\"loadRefundListPage()\" class=\"govuk-link\" data-module=\"govuk-button\">Cancel</a></p>\n</div>\n <!-- <div class=\"govuk-button-group\">\n <button [disabled]=\"isRefundBtnDisabled\" (click)=\"gotoReviewRefundConfirmationPage()\" class=\"govuk-button button\"\n data-module=\"govuk-button\">\n Submit refund\n </button>\n </div> -->\n <!-- <p>\n <a (click)=\"loadRefundListPage()\" href=\"\" class=\"cancelbtn\">Cancel</a>\n </p> -->\n</ng-container>\n\n<ng-container *ngIf=\"viewName === 'issuerefund'\">\n <ccpay-add-remission [isFromRefundListPage]=\"true\" [viewCompStatus]=\"viewName\" [isRefundRemission]=\"true\"\n [ccdCaseNumber]=\"ccdCaseNumber\" (refundListReason)=\"getRefundListReason($event)\"></ccpay-add-remission>\n</ng-container>\n\n<ng-container *ngIf=\"viewName === 'processretroremissonpage'\">\n <ccpay-add-remission [isFromRefundListPage]=\"true\" [viewCompStatus]=\"viewName\" [isRefundRemission]=\"true\"\n [ccdCaseNumber]=\"ccdCaseNumber\" (refundListAmount)=\"getRefundAmount($event)\"></ccpay-add-remission>\n</ng-container>\n\n<ng-container *ngIf=\"viewName === 'reviewrefundconfirmationpage'\">\n <div class=\"govuk-grid-row\">\n <div>\n <div class=\"govuk-panel govuk-panel--confirmation\">\n <h1 class=\"govuk-panel__title\">\n Refund submitted\n </h1>\n\n <div class=\"govuk-panel__body\">\n <p class=\"govuk-body white\"><strong>Refund reference:{{refundReference}} </strong></p>\n </div>\n\n </div>\n\n <h2 class=\"govuk-heading-l\">What happens next</h2>\n <p class=\"govuk-body\">\n A refund request for {{refundAmount| currency:'GBP':'symbol-narrow':'1.2-2'}} has been created and will be passed to a team leader to approve.\n </p>\n\n <p class=\"govuk-body\">\n <a (click)=\"loadCaseTransactionPage()\" class=\"govuk-link\">Return to case</a>\n </p>\n </div>\n </div>\n</ng-container>",
446
- styles: [".right{float:right!important}.button{margin-bottom:3em;font-size:19px}.cancelbtn{font-size:19px;font-weight:400}.btnmargin{margin-bottom:2em}.govuk-button--secondary{background-color:#dee0e2;box-shadow:0 2px 0 #858688;color:#0b0c0c;margin-right:.5em}.govuk-label--s,.govuk-warning-text__text,.hmcts-currency-input__symbol{font-size:19px;font-weight:400}.inline-error-class{outline:#a71414 solid 3px;outline-offset:0}.inline-error-message{color:#a71414;font-weight:700;margin-top:10px;font-size:20px}.govuk-button,.govuk-link{margin-right:1em;font-size:19px;font-weight:200}.govuk-button-group{padding-top:2em}.heading-medium{margin-top:.875em}.heading-large{margin-top:.25em}.govuk-panel--confirmation{color:#fff;background:#00703c}.govuk-heading-l{font-size:36px}.govuk-heading-m{font-size:24px}.govuk-panel__title{font-size:5rem}.govuk-body,.govuk-body-m{font-size:2.1875rem}.govuk-input--width-10{max-width:36ex}.col-14{width:14%!important}.col-10{width:10%!important}.col-11{width:11%!important}.col-18{width:18%!important}.col-21{width:21%!important}.col-9{width:9%!important}.col-15{width:15%!important}.col-16{width:16%!important}.col-25{width:25%!important}.col-24{width:24%!important}.govuk-error-summary__title{font-size:24px!important}.govuk-error-summary__body{font-size:19px!important}.white{color:#fff}"]
447
- }] }
448
- ];
449
- /** @nocollapse */
450
- RefundStatusComponent.ctorParameters = function () { return [
451
- { type: FormBuilder },
452
- { type: RefundsService },
453
- { type: PaymentLibComponent },
454
- { type: PaymentViewService },
455
- { type: Router },
456
- { type: OrderslistService }
457
- ]; };
458
- RefundStatusComponent.propDecorators = {
459
- LOGGEDINUSERROLES: [{ type: Input, args: ['LOGGEDINUSERROLES',] }],
460
- isOldPcipalOff: [{ type: Input }],
461
- isNewPcipalOff: [{ type: Input }],
462
- ccdCaseNumber: [{ type: Input }],
463
- isTurnOff: [{ type: Input }]
464
- };
465
- return RefundStatusComponent;
466
- }());
467
- export { RefundStatusComponent };
468
- if (false) {
469
- /** @type {?} */
470
- RefundStatusComponent.prototype.LOGGEDINUSERROLES;
471
- /** @type {?} */
472
- RefundStatusComponent.prototype.isOldPcipalOff;
473
- /** @type {?} */
474
- RefundStatusComponent.prototype.isNewPcipalOff;
475
- /** @type {?} */
476
- RefundStatusComponent.prototype.ccdCaseNumber;
477
- /** @type {?} */
478
- RefundStatusComponent.prototype.isTurnOff;
479
- /** @type {?} */
480
- RefundStatusComponent.prototype.refundStatusForm;
481
- /** @type {?} */
482
- RefundStatusComponent.prototype.selectedRefundReason;
483
- /** @type {?} */
484
- RefundStatusComponent.prototype.rejectedRefundList;
485
- /** @type {?} */
486
- RefundStatusComponent.prototype.approvalStatus;
487
- /** @type {?} */
488
- RefundStatusComponent.prototype.rejectStatus;
489
- /** @type {?} */
490
- RefundStatusComponent.prototype.errorMessage;
491
- /** @type {?} */
492
- RefundStatusComponent.prototype.viewName;
493
- /** @type {?} */
494
- RefundStatusComponent.prototype.refundReason;
495
- /** @type {?} */
496
- RefundStatusComponent.prototype.refundlist;
497
- /** @type {?} */
498
- RefundStatusComponent.prototype.bsPaymentDcnNumber;
499
- /** @type {?} */
500
- RefundStatusComponent.prototype.isCallFromRefundList;
501
- /** @type {?} */
502
- RefundStatusComponent.prototype.refundButtonState;
503
- /** @type {?} */
504
- RefundStatusComponent.prototype.isAmountEmpty;
505
- /** @type {?} */
506
- RefundStatusComponent.prototype.isReasonEmpty;
507
- /** @type {?} */
508
- RefundStatusComponent.prototype.amountHasError;
509
- /** @type {?} */
510
- RefundStatusComponent.prototype.isRemissionLessThanFeeError;
511
- /** @type {?} */
512
- RefundStatusComponent.prototype.refundHasError;
513
- /** @type {?} */
514
- RefundStatusComponent.prototype.refundReasons;
515
- /** @type {?} */
516
- RefundStatusComponent.prototype.refundStatusHistories;
517
- /** @type {?} */
518
- RefundStatusComponent.prototype.refundReference;
519
- /** @type {?} */
520
- RefundStatusComponent.prototype.refundAmount;
521
- /** @type {?} */
522
- RefundStatusComponent.prototype.refundCode;
523
- /** @type {?} */
524
- RefundStatusComponent.prototype.isRefundBtnDisabled;
525
- /** @type {?} */
526
- RefundStatusComponent.prototype.oldRefundReason;
527
- /** @type {?} */
528
- RefundStatusComponent.prototype.refundreason;
529
- /** @type {?} */
530
- RefundStatusComponent.prototype.navigationpage;
531
- /** @type {?} */
532
- RefundStatusComponent.prototype.isLastUpdatedByCurrentUser;
533
- /** @type {?} */
534
- RefundStatusComponent.prototype.isProcessRefund;
535
- /** @type {?} */
536
- RefundStatusComponent.prototype.changedAmount;
537
- /**
538
- * @type {?}
539
- * @private
540
- */
541
- RefundStatusComponent.prototype.formBuilder;
542
- /**
543
- * @type {?}
544
- * @private
545
- */
546
- RefundStatusComponent.prototype.refundService;
547
- /**
548
- * @type {?}
549
- * @private
550
- */
551
- RefundStatusComponent.prototype.paymentLibComponent;
552
- /**
553
- * @type {?}
554
- * @private
555
- */
556
- RefundStatusComponent.prototype.paymentViewService;
557
- /**
558
- * @type {?}
559
- * @private
560
- */
561
- RefundStatusComponent.prototype.router;
562
- /**
563
- * @type {?}
564
- * @private
565
- */
566
- RefundStatusComponent.prototype.OrderslistService;
567
- }
568
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVmdW5kLXN0YXR1cy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AaG1jdHMvY2NwYXktd2ViLWNvbXBvbmVudC8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL3JlZnVuZC1zdGF0dXMvcmVmdW5kLXN0YXR1cy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUN4RSxPQUFPLEVBQUUsV0FBVyxFQUFhLFVBQVUsRUFBRSxXQUFXLEVBQXFCLE1BQU0sZ0JBQWdCLENBQUM7QUFFcEcsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDdEYsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBR3RFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDOztJQUM1RCxjQUFjLEdBQUcsdUJBQXVCO0FBRTlDO0lBeUNFLCtCQUFvQixXQUF3QixFQUNsQyxhQUE2QixFQUM3QixtQkFBd0MsRUFDeEMsa0JBQXNDLEVBQ3RDLE1BQWMsRUFDZCxpQkFBb0M7UUFMMUIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDbEMsa0JBQWEsR0FBYixhQUFhLENBQWdCO1FBQzdCLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDeEMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtRQUN0QyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2Qsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQXhDbEIsc0JBQWlCLEdBQWEsRUFBRSxDQUFDO1FBTzdELHVCQUFr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OztJQUN2QiwyREFBMkM7O0lBQzNDLGdEQUFpQzs7SUFDakMsOENBQXNCOzs7OztJQUVWLDRDQUFnQzs7Ozs7SUFDMUMsOENBQXFDOzs7OztJQUNyQyxvREFBZ0Q7Ozs7O0lBQ2hELG1EQUE4Qzs7Ozs7SUFDOUMsdUNBQXNCOzs7OztJQUN0QixrREFBNEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJlZnVuZHNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvcmVmdW5kcy9yZWZ1bmRzLnNlcnZpY2UnO1xuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycywgRm9ybUNvbnRyb2wsIFJlcXVpcmVkVmFsaWRhdG9yIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgSVJlZnVuZExpc3QgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL0lSZWZ1bmRMaXN0JztcbmltcG9ydCB7IFBheW1lbnRWaWV3U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3BheW1lbnQtdmlldy9wYXltZW50LXZpZXcuc2VydmljZSc7XG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgT3JkZXJzbGlzdFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9vcmRlcnNsaXN0LnNlcnZpY2UnO1xuaW1wb3J0IHsgSVJlZnVuZFJlYXNvbnMgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL0lSZWZ1bmRSZWFzb25zJztcbmltcG9ydCB7IElSZWZ1bmRTdGF0dXMgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL0lSZWZ1bmRTdGF0dXMnO1xuaW1wb3J0IHsgSVJlc3VibWl0UmVmdW5kUmVxdWVzdCB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvSVJlc3VibWl0UmVmdW5kUmVxdWVzdCc7XG5pbXBvcnQgeyBQYXltZW50TGliQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vcGF5bWVudC1saWIuY29tcG9uZW50JztcbmNvbnN0IEJTX0VOQUJMRV9GTEFHID0gJ2J1bGstc2Nhbi1lbmFibGluZy1mZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NjcGF5LXJlZnVuZC1zdGF0dXMnLFxuICB0ZW1wbGF0ZVVybDogJy4vcmVmdW5kLXN0YXR1cy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3JlZnVuZC1zdGF0dXMuY29tcG9uZW50LmNzcyddXG59KVxuZXhwb3J0IGNsYXNzIFJlZnVuZFN0YXR1c0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgnTE9HR0VESU5VU0VSUk9MRVMnKSBMT0dHRURJTlVTRVJST0xFUzogc3RyaW5nW10gPSBbXTtcbiAgQElucHV0KCkgaXNPbGRQY2lwYWxPZmY6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGlzTmV3UGNpcGFsT2ZmOiBib29sZWFuO1xuICBASW5wdXQoKSBjY2RDYXNlTnVtYmVyOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGlzVHVybk9mZjogYm9vbGVhbjtcbiAgcmVmdW5kU3RhdHVzRm9ybTogRm9ybUdyb3VwO1xuICBzZWxlY3RlZFJlZnVuZFJlYXNvbjogc3RyaW5nO1xuICByZWplY3RlZFJlZnVuZExpc3Q6IElSZWZ1bmRMaXN0W10gPSBbXTtcbiAgYXBwcm92YWxTdGF0dXMgPSAnc2VudCBmb3IgYXBwcm92YWwnO1xuICByZWplY3RTdGF0dXMgPSAnc2VudCBiYWNrJztcbiAgZXJyb3JNZXNzYWdlID0gbnVsbDtcbiAgdmlld05hbWU6IHN0cmluZztcbiAgcmVmdW5kUmVhc29uOiBzdHJpbmc7XG4gIHJlZnVuZGxpc3Q6IElSZWZ1bmRMaXN0O1xuICBic1BheW1lbnREY25OdW1iZXI6IHN0cmluZztcbiAgaXNDYWxsRnJvbVJlZnVuZExpc3Q6IGJvb2xlYW47XG4gIHJlZnVuZEJ1dHRvblN0YXRlOiBzdHJpbmcgPSAnJztcbiAgaXNBbW91bnRFbXB0eTogYm9vbGVhbiA9IGZhbHNlO1xuICBpc1JlYXNvbkVtcHR5OiBib29sZWFuID0gZmFsc2U7XG4gIGFtb3VudEhhc0Vycm9yOiBib29sZWFuID0gZmFsc2U7XG4gIGlzUmVtaXNzaW9uTGVzc1RoYW5GZWVFcnJvcjogYm9vbGVhbiA9IGZhbHNlO1xuICByZWZ1bmRIYXNFcnJvcjogYm9vbGVhbiA9IGZhbHNlO1xuICByZWZ1bmRSZWFzb25zOiBhbnlbXSA9IFtdO1xuICByZWZ1bmRTdGF0dXNIaXN0b3JpZXM6IElSZWZ1bmRTdGF0dXNbXTtcbiAgcmVmdW5kUmVmZXJlbmNlOiBzdHJpbmc7XG4gIHJlZnVuZEFtb3VudDogc3RyaW5nO1xuICByZWZ1bmRDb2RlOiBzdHJpbmc7XG4gIGlzUmVmdW5kQnRuRGlzYWJsZWQ6IGJvb2xlYW4gPSB0cnVlO1xuICBvbGRSZWZ1bmRSZWFzb246IHN0cmluZztcbiAgcmVmdW5kcmVhc29uOiBzdHJpbmc7XG4gIG5hdmlnYXRpb25wYWdlOiBzdHJpbmc7XG4gIGlzTGFzdFVwZGF0ZWRCeUN1cnJlbnRVc2VyOiBib29sZWFuID0gdHJ1ZTtcbiAgaXNQcm9jZXNzUmVmdW5kOiBib29sZWFuID0gZmFsc2U7XG4gIGNoYW5nZWRBbW91bnQ6IG51bWJlcjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGZvcm1CdWlsZGVyOiBGb3JtQnVpbGRlcixcbiAgICBwcml2YXRlIHJlZnVuZFNlcnZpY2U6IFJlZnVuZHNTZXJ2aWNlLFxuICAgIHByaXZhdGUgcGF5bWVudExpYkNvbXBvbmVudDogUGF5bWVudExpYkNvbXBvbmVudCxcbiAgICBwcml2YXRlIHBheW1lbnRWaWV3U2VydmljZTogUGF5bWVudFZpZXdTZXJ2aWNlLFxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXG4gICAgcHJpdmF0ZSBPcmRlcnNsaXN0U2VydmljZTogT3JkZXJzbGlzdFNlcnZpY2UpIHsgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMucmVzZXRSZW1pc3Npb25Gb3JtKFtmYWxzZSwgZmFsc2UsIGZhbHNlLCBmYWxzZV0sICdBbGwnKTtcbiAgICB0aGlzLmJzUGF5bWVudERjbk51bWJlciA9IHRoaXMucGF5bWVudExpYkNvbXBvbmVudC5ic3BheW1lbnRkY247XG4gICAgdGhpcy5pc0NhbGxGcm9tUmVmdW5kTGlzdCA9IHRoaXMucGF5bWVudExpYkNvbXBvbmVudC5pc0NhbGxGcm9tUmVmdW5kTGlzdDtcbiAgICAvLyBpZih0aGlzLnBheW1lbnRMaWJDb21wb25lbnQuaXNGcm9tUmVmdW5kU3RhdHVzUGFnZSkge1xuICAgIC8vICAgdGhpcy52aWV3TmFtZSA9ICdyZXZpZXdhbmRzdWJtaXR2aWV3JztcbiAgICAvLyB9XG4gICAgaWYgKHRoaXMucGF5bWVudExpYkNvbXBvbmVudC5pc1JlZnVuZFN0YXR1c1ZpZXcpIHtcbiAgICAgIHRoaXMudmlld05hbWUgPSAncmVmdW5kdmlldyc7XG4gICAgICB0aGlzLk9yZGVyc2xpc3RTZXJ2aWNlLmdldFJlZnVuZFZpZXcoKS5zdWJzY3JpYmUoKGRhdGEpID0+IHRoaXMucmVmdW5kbGlzdCA9IGRhdGEpO1xuICAgICAgdGhpcy5PcmRlcnNsaXN0U2VydmljZS5nZXRDQ0RDYXNlTnVtYmVyZm9yUmVmdW5kLnN1YnNjcmliZSgoZGF0YSkgPT4gdGhpcy5jY2RDYXNlTnVtYmVyID0gZGF0YSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudmlld05hbWUgPSAncmVmdW5kc3RhdHVzbGlzdCc7XG4gICAgICB0aGlzLnJlZnVuZFNlcnZpY2UuZ2V0UmVmdW5kU3RhdHVzTGlzdCh0aGlzLmNjZENhc2VOdW1iZXIpLnN1YnNjcmliZShcbiAgICAgICAgcmVmdW5kTGlzdCA9PiB7XG4gICAgICAgICAgdGhpcy5yZWplY3RlZFJlZnVuZExpc3QgPSByZWZ1bmRMaXN0WydyZWZ1bmRfbGlzdCddO1xuICAgICAgICB9XG4gICAgICApLFxuICAgICAgICAoZXJyb3I6IGFueSkgPT4ge1xuICAgICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gZXJyb3IucmVwbGFjZSgvXCIvZyxcIlwiKTtcbiAgICAgICAgfTtcbiAgICB9XG5cblxuICAgIHRoaXMucmVmdW5kU3RhdHVzRm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xuICAgICAgYW1vdW50OiBuZXcgRm9ybUNvbnRyb2woJycsIFZhbGlkYXRvcnMuY29tcG9zZShbXG4gICAgICAgIFZhbGlkYXRvcnMucmVxdWlyZWQsXG4gICAgICAgIFZhbGlkYXRvcnMucGF0dGVybignXlswLTldKyhcXC5bMC05XXsxLDJ9KT8kJylcbiAgICAgIF0pKSxcbiAgICAgIHJlZnVuZFJlYXNvbjogbmV3IEZvcm1Db250cm9sKCcnLCBWYWxpZGF0b3JzLmNvbXBvc2UoW1ZhbGlkYXRvcnMucmVxdWlyZWRdKSksXG4gICAgICByZWFzb246IG5ldyBGb3JtQ29udHJvbCgpXG4gICAgfSk7XG5cbiAgICB0aGlzLmdldFJlZnVuZHNTdGF0dXNIaXN0b3J5TGlzdCgpO1xuXG4gICAgaWYgKHRoaXMuTE9HR0VESU5VU0VSUk9MRVMuc29tZShpID0+IGkuaW5jbHVkZXMoJ3BheW1lbnRzLXJlZnVuZC1hcHByb3ZlcicpKSkge1xuICAgICAgdGhpcy5pc1Byb2Nlc3NSZWZ1bmQgPSB0cnVlO1xuICAgICAgdGhpcy5yZWZ1bmRCdXR0b25TdGF0ZSA9IHRoaXMucmVmdW5kbGlzdC5yZWZ1bmRfc3RhdHVzLm5hbWU7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuTE9HR0VESU5VU0VSUk9MRVMuc29tZShpID0+IGkuaW5jbHVkZXMoJ3BheW1lbnRzLXJlZnVuZCcpKSkge1xuICAgICAgdGhpcy5pc1Byb2Nlc3NSZWZ1bmQgPSBmYWxzZTtcbiAgICAgIHRoaXMucmVmdW5kQnV0dG9uU3RhdGUgPSB0aGlzLnJlZnVuZGxpc3QucmVmdW5kX3N0YXR1cy5uYW1lO1xuICAgIH1cblxuICB9XG5cbiAgZ2V0UmVmdW5kc1N0YXR1c0hpc3RvcnlMaXN0KCkge1xuICAgIGlmKHRoaXMucmVmdW5kbGlzdCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgdGhpcy5yZWZ1bmRTZXJ2aWNlLmdldFJlZnVuZFN0YXR1c0hpc3RvcnkodGhpcy5yZWZ1bmRsaXN0LnJlZnVuZF9yZWZlcmVuY2UpLnN1YnNjcmliZShcbiAgICAgIHN0YXR1c0hpc3RvcnlMaXN0ID0+IHtcbiAgICAgICAgdGhpcy5yZWZ1bmRTdGF0dXNIaXN0b3JpZXMgPSBzdGF0dXNIaXN0b3J5TGlzdC5zdGF0dXNfaGlzdG9yeV9kdG9fbGlzdDtcbiAgICAgICAgdGhpcy5pc0xhc3RVcGRhdGVkQnlDdXJyZW50VXNlciA9IHN0YXR1c0hpc3RvcnlMaXN0Lmxhc3RfdXBkYXRlZF9ieV9jdXJyZW50X3VzZXI7XG4gICAgICB9XG4gICAgKSxcbiAgICAgIChlcnJvcjogYW55KSA9PiB7XG4gICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gZXJyb3IucmVwbGFjZSgvXCIvZyxcIlwiKTtcbiAgICAgIH07IFxuICAgIH1cbiAgfVxuXG4gIGdvVG9SZWZ1bmRWaWV3KHJlZnVuZGxpc3Q6IElSZWZ1bmRMaXN0LCBuYXZpZ2F0aW9ucGFnZTogc3RyaW5nKSB7XG4gICAgdGhpcy5PcmRlcnNsaXN0U2VydmljZS5zZXRSZWZ1bmRWaWV3KHJlZnVuZGxpc3QpO1xuICAgIHRoaXMuT3JkZXJzbGlzdFNlcnZpY2Uuc2V0Q0NEQ2FzZU51bWJlcih0aGlzLmNjZENhc2VOdW1iZXIpO1xuICAgIHRoaXMucGF5bWVudExpYkNvbXBvbmVudC52aWV3TmFtZSA9ICdyZWZ1bmRzdGF0dXNsaXN0JztcbiAgICB0aGlzLnBheW1lbnRMaWJDb21wb25lbnQuaXNSZWZ1bmRTdGF0dXNWaWV3ID0gdHJ1ZTtcbiAgICB0aGlzLnJlZnVuZGxpc3QgPSByZWZ1bmRsaXN0O1xuICAgIHRoaXMuT3JkZXJzbGlzdFNlcnZpY2Uuc2V0bmF2aWdhdGlvblBhZ2UobmF2aWdhdGlvbnBhZ2UpO1xuICB9XG5cbiAgbG9hZENhc2VUcmFuc2FjdGlvblBhZ2UoKSB7XG4gICAgdGhpcy5wYXltZW50TGliQ29tcG9uZW50LmlzUmVmdW5kU3RhdHVzVmlldyA9IGZhbHNlO1xuICAgIC8vdGhpcy5wYXltZW50TGliQ29tcG9uZW50LlRBS0VQQVlNRU5UID0gdHJ1ZTtcbiAgICB0aGlzLnBheW1lbnRMaWJDb21wb25lbnQudmlld05hbWUgPSAnY2FzZS10cmFuc2FjdGlvbnMnO1xuICAgIHRoaXMucGF5bWVudFZpZXdTZXJ2aWNlLmdldEJTZmVhdHVyZSgpLnN1YnNjcmliZShcbiAgICAgIGZlYXR1cmVzID0+IHtcbiAgICAgICAgbGV0IHJlc3VsdCA9IEpTT04ucGFyc2UoZmVhdHVyZXMpLmZpbHRlcihmZWF0dXJlID0+IGZlYXR1cmUudWlkID09PSBCU19FTkFCTEVfRkxBRyk7XG4gICAgICAgIHRoaXMucGF5bWVudExpYkNvbXBvbmVudC5JU0JTRU5BQkxFID0gcmVzdWx0WzBdID8gcmVzdWx0WzBdLmVuYWJsZSA6IGZhbHNlO1xuICAgICAgfSxcbiAgICAgIGVyciA9PiB7XG4gICAgICAgIHRoaXMucGF5bWVudExpYkNvbXBvbmVudC5JU0JTRU5BQkxFID0gZmFsc2U7XG4gICAgICB9XG4gICAgKTtcblxuICAgIGxldCBwYXJ0VXJsID0gYHNlbGVjdGVkT3B0aW9uPSR7dGhpcy5wYXltZW50TGliQ29tcG9uZW50LlNFTEVDVEVEX09QVElPTn1gO1xuICAgIHBhcnRVcmwgKz0gdGhpcy5ic1BheW1lbnREY25OdW1iZXIgPyBgJmRjbj0ke3RoaXMuYnNQYXltZW50RGNuTnVtYmVyfWAgOiAnJztcbiAgICBwYXJ0VXJsICs9IHRoaXMucGF5bWVudExpYkNvbXBvbmVudC5JU0JTRU5BQkxFID8gJyZpc0J1bGtTY2FubmluZz1FbmFibGUnIDogJyZpc0J1bGtTY2FubmluZz1EaXNhYmxlJztcbiAgICBwYXJ0VXJsICs9IHRoaXMucGF5bWVudExpYkNvbXBvbmVudC5JU1RVUk5PRkYgPyAnJmlzVHVybk9mZj1FbmFibGUnIDogJyZpc1R1cm5PZmY9RGlzYWJsZSc7XG4gICAgcGFydFVybCArPSB0aGlzLnBheW1lbnRMaWJDb21wb25lbnQuSVNTRkVOQUJMRSA/ICcmaXNTdEZpeEVuYWJsZT1FbmFibGUnIDogJyZpc1N0Rml4RW5hYmxlPURpc2FibGUnO1xuICAgIHBhcnRVcmwgKz0gYCZjYXNlVHlwZT0ke3RoaXMucGF5bWVudExpYkNvbXBvbmVudC5DQVNFVFlQRX1gO1xuICAgIHBhcnRVcmwgKz0gdGhpcy5pc05ld1BjaXBhbE9mZiA/ICcmaXNOZXdQY2lwYWxPZmY9RW5hYmxlJyA6ICcmaXNOZXdQY2lwYWxPZmY9RGlzYWJsZSc7XG4gICAgcGFydFVybCArPSB0aGlzLmlzT2xkUGNpcGFsT2ZmID8gJyZpc09sZFBjaXBhbE9mZj1FbmFibGUnIDogJyZpc09sZFBjaXBhbE9mZj1EaXNhYmxlJztcbiAgICBsZXQgdXJsID0gYC9wYXltZW50LWhpc3RvcnkvJHt0aGlzLmNjZENhc2VOdW1iZXJ9P3ZpZXc9Y2FzZS10cmFuc2FjdGlvbnMmdGFrZVBheW1lbnQ9JHt0aGlzLnBheW1lbnRMaWJDb21wb25lbnQuVEFLRVBBWU1FTlR9JiR7cGFydFVybH1gO1xuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwodXJsKTtcbiAgfVxuXG4gIGxvYWRSZWZ1bmRMaXN0UGFnZSgpIHtcbiAgICB0aGlzLk9yZGVyc2xpc3RTZXJ2aWNlLmdldG5hdmlnYXRpb25QYWdlVmFsdWUoKS5zdWJzY3JpYmUoKGRhdGEpID0+IHRoaXMubmF2aWdhdGlvbnBhZ2UgPSBkYXRhKTtcbiAgICBpZiAodGhpcy5uYXZpZ2F0aW9ucGFnZSA9PT0gJ2Nhc2V0cmFuc2FjdGlvbnMnKSB7XG4gICAgICB0aGlzLmxvYWRDYXNlVHJhbnNhY3Rpb25QYWdlKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucGF5bWVudExpYkNvbXBvbmVudC52aWV3TmFtZSA9ICdyZWZ1bmQtbGlzdCc7XG4gICAgfVxuICB9XG5cbiAgZ290b1Jldmlld0RldGFpbHNQYWdlKGV2ZW50OmFueSkge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgdGhpcy5lcnJvck1lc3NhZ2UgPSBmYWxzZTtcbiAgICB0aGlzLnBheW1lbnRMaWJDb21wb25lbnQuaXNSZWZ1bmRTdGF0dXNWaWV3ID0gdHJ1ZTtcbiAgICB0aGlzLm5nT25Jbml0KCk7XG4gICAgLy8gdGhpcy52aWV3TmFtZT0ncmVmdW5kdmlldyc7XG4gICAgLy8gdGhpcy5wYXltZW50TGliQ29tcG9uZW50LkNDRF9DQVNFX05VTUJFUiA9IHRoaXMuY2NkQ2FzZU51bWJlcjtcbiAgICAvLyB0aGlzLnBheW1lbnRMaWJDb21wb25lbnQuaXNSZWZ1bmRTdGF0dXNWaWV3ID0gdHJ1ZTtcbiAgICAvLyB0aGlzLnBheW1lbnRMaWJDb21wb25lbnQuaXNDYWxsRnJvbVJlZnVuZExpc3QgPSB0cnVlO1xuICB9XG5cbiAgZ290b1Jldmlld0FuZFJlU3VibWl0UGFnZSgpIHtcbiAgICB0aGlzLnZpZXdOYW1lID0gJ3Jldmlld2FuZHN1Ym1pdHZpZXcnO1xuICAgIHRoaXMub2xkUmVmdW5kUmVhc29uID0gdGhpcy5yZWZ1bmRsaXN0LnJlYXNvbjtcbiAgICB0aGlzLmNoYW5nZWRBbW91bnQgPSB0aGlzLnJlZnVuZGxpc3QuYW1vdW50O1xuICAgIHRoaXMucmVmdW5kcmVhc29uID0gdGhpcy5yZWZ1bmRTdGF0dXNIaXN0b3JpZXMuZmlsdGVyKGRhdGEgPT4gZGF0YS5zdGF0dXMgPT09ICdzZW50YmFjaycpWzBdLm5vdGVzO1xuICAgIHRoaXMucmVmdW5kU2VydmljZS5nZXRSZWZ1bmRSZWFzb25zKCkuc3Vic2NyaWJlKFxuICAgICAgcmVmdW5kUmVhc29ucyA9PiB7XG4gICAgICAgIHRoaXMucmVmdW5kUmVhc29ucyA9IHJlZnVuZFJlYXNvbnNbJ2RhdGEnXTtcbiAgICAgIH0pO1xuICB9XG4gIGdvdG9SZWZ1bmRSZWFzb25QYWdlKCkge1xuICAgIHRoaXMuaXNSZWZ1bmRCdG5EaXNhYmxlZCA9IGZhbHNlO1xuICAgIHRoaXMucGF5bWVudExpYkNvbXBvbmVudC5SRUZVTkRMSVNUID0gXCJ0cnVlXCI7XG4gICAgdGhpcy5wYXltZW50TGliQ29tcG9uZW50LmlzRnJvbVJlZnVuZFN0YXR1c1BhZ2UgPSB0cnVlO1xuICAgIHRoaXMuY2NkQ2FzZU51bWJlciA9IHRoaXMucGF5bWVudExpYkNvbXBvbmVudC5DQ0RfQ0FTRV9OVU1CRVI7XG4gICAgdGhpcy5lcnJvck1lc3NhZ2UgPSBmYWxzZTtcbiAgICB0aGlzLnZpZXdOYW1lID0gJ2lzc3VlcmVmdW5kJztcbiAgfVxuXG4gIGdvdG9BbW91bnRQYWdlKCkge1xuICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gZmFsc2U7XG4gICAgdGhpcy5wYXltZW50TGliQ29tcG9uZW50LlJFRlVORExJU1QgPSBcInRydWVcIjtcbiAgICB0aGlzLmlzUmVmdW5kQnRuRGlzYWJsZWQgPSBmYWxzZTtcbiAgICB0aGlzLmNjZENhc2VOdW1iZXIgPSB0aGlzLnBheW1lbnRMaWJDb21wb25lbnQuQ0NEX0NBU0VfTlVNQkVSO1xuICAgIHRoaXMucGF5bWVudExpYkNvbXBvbmVudC5pc0Zyb21SZWZ1bmRTdGF0dXNQYWdlID0gdHJ1ZTtcbiAgICB0aGlzLnZpZXdOYW1lID0gJ3Byb2Nlc3NyZXRyb3JlbWlzc29ucGFnZSc7XG4gIH1cblxuICBnb1RvUmV2aWV3QW5kU3VibWl0VmlldygpIHtcbiAgICBjb25zdCByZW1pc3Npb25jdHJscyA9IHRoaXMucmVmdW5kU3RhdHVzRm9ybS5jb250cm9sc1xuICAgIGlmICh0aGlzLnJlZnVuZFN0YXR1c0Zvcm0uZGlydHkpIHtcbiAgICAgIGlmIChyZW1pc3Npb25jdHJsc1snYW1vdW50J10udmFsdWUgPT0gJycpIHtcbiAgICAgICAgdGhpcy5yZXNldFJlbWlzc2lvbkZvcm0oW3RydWUsIGZhbHNlLCBmYWxzZSwgZmFsc2VdLCAnYW1vdW50Jyk7XG4gICAgICB9XG4gICAgICBlbHNlIGlmIChyZW1pc3Npb25jdHJsc1snYW1vdW50J10udmFsdWUgIT0gJycgJiYgcmVtaXNzaW9uY3RybHNbJ2Ftb3VudCddLmludmFsaWQpIHtcbiAgICAgICAgdGhpcy5yZXNldFJlbWlzc2lvbkZvcm0oW2ZhbHNlLCB0cnVlLCBmYWxzZSwgZmFsc2VdLCAnYW1vdW50Jyk7XG4gICAgICB9XG4gICAgICBlbHNlIGlmIChyZW1pc3Npb25jdHJsc1sncmVhc29uJ10udmFsdWUgPT0gJycpIHtcbiAgICAgICAgdGhpcy5yZXNldFJlbWlzc2lvbkZvcm0oW2ZhbHNlLCBmYWxzZSwgZmFsc2UsIHRydWVdLCAncmVhc29uJyk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnJlZnVuZGxpc3QucmVhc29uID0gcmVtaXNzaW9uY3RybHNbJ3JlYXNvbiddLnZhbHVlO1xuICAgICAgICB0aGlzLnZpZXdOYW1lID0gJ3Jldmlld2FuZHN1Ym1pdHZpZXcnO1xuICAgICAgfVxuICAgIH1cblxuICB9XG5cbiAgcmVzZXRSZW1pc3Npb25Gb3JtKHZhbCwgZmllbGQpIHtcbiAgICBpZiAoZmllbGQgPT09ICdBbGwnKSB7XG4gICAgICB0aGlzLmlzQW1vdW50RW1wdHkgPSB2YWxbMF07XG4gICAgICB0aGlzLmFtb3VudEhhc0Vycm9yID0gdmFsWzFdO1xuICAgICAgdGhpcy5pc1JlbWlzc2lvbkxlc3NUaGFuRmVlRXJyb3IgPSB2YWxbMl07XG4gICAgICB0aGlzLmlzUmVhc29uRW1wdHkgPSB2YWxbM107XG4gICAgfSBlbHNlIGlmIChmaWVsZCA9PT0gJ2Ftb3VudCcgfHwgZmllbGQgPT09ICdBbGwnKSB7XG4gICAgICB0aGlzLmlzQW1vdW50RW1wdHkgPSB2YWxbMF07XG4gICAgICB0aGlzLmFtb3VudEhhc0Vycm9yID0gdmFsWzFdO1xuICAgICAgdGhpcy5pc1JlbWlzc2lvbkxlc3NUaGFuRmVlRXJyb3IgPSB2YWxbMl07XG4gICAgfSBlbHNlIGlmIChmaWVsZCA9PT0gJ3JlYXNvbicgfHwgZmllbGQgPT09ICdBbGwnKSB7XG4gICAgICB0aGlzLmlzUmVhc29uRW1wdHkgPSB2YWxbM107XG4gICAgfVxuICB9XG5cbiAgc2VsZWN0UmFkaW9CdXR0b24oa2V5LCB2YWx1ZSkge1xuICAgIHRoaXMucmVmdW5kSGFzRXJyb3IgPSBmYWxzZTtcbiAgICB0aGlzLnNlbGVjdGVkUmVmdW5kUmVhc29uID0ga2V5O1xuICAgIGlmIChrZXkgPT09ICdPdGhlcicpIHtcbiAgICAgIHRoaXMucmVmdW5kSGFzRXJyb3IgPSBmYWxzZTtcbiAgICAgIHRoaXMucmVmdW5kUmVhc29uID0ga2V5O1xuICAgIH1cbiAgfVxuXG4gIGdldFJlZnVuZExpc3RSZWFzb24ocmVmdW5kTGlzdFJlYXNvbjogYW55KSB7XG4gICAgaWYgKHRoaXMucGF5bWVudExpYkNvbXBvbmVudC5pc0Zyb21SZWZ1bmRTdGF0dXNQYWdlICYmICF0aGlzLnBheW1lbnRMaWJDb21wb25lbnQuaXNjYW5jZWxDbGlja2VkKSB7XG4gICAgICB0aGlzLnJlZnVuZGxpc3QucmVhc29uID0gcmVmdW5kTGlzdFJlYXNvbi5yZWFzb247XG4gICAgICB0aGlzLnJlZnVuZENvZGUgPSByZWZ1bmRMaXN0UmVhc29uLmNvZGU7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaXNSZWZ1bmRCdG5EaXNhYmxlZCA9IHRydWU7XG4gICAgfVxuICAgIHRoaXMudmlld05hbWUgPSAncmV2aWV3YW5kc3VibWl0dmlldyc7XG4gICAgdGhpcy5wYXltZW50TGliQ29tcG9uZW50LkNDRF9DQVNFX05VTUJFUiA9IHRoaXMuY2NkQ2FzZU51bWJlcjtcbiAgfVxuXG4gIGdldFJlZnVuZEFtb3VudChhbW91bnQ6IG51bWJlcikge1xuICAgIGlmICh0aGlzLnBheW1lbnRMaWJDb21wb25lbnQuaXNGcm9tUmVmdW5kU3RhdHVzUGFnZSAmJiAhdGhpcy5wYXltZW50TGliQ29tcG9uZW50LmlzY2FuY2VsQ2xpY2tlZCkge1xuICAgICAgaWYgKGFtb3VudCA+IDApIHtcbiAgICAgICAgdGhpcy5jaGFuZ2VkQW1vdW50ID0gYW1vdW50O1xuICAgICAgICAvLyB0aGlzLnJlZnVuZGxpc3QuYW1vdW50ID0gYW1vdW50O1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmlzUmVmdW5kQnRuRGlzYWJsZWQgPSB0cnVlO1xuICAgIH1cbiAgICB0aGlzLnZpZXdOYW1lID0gJ3Jldmlld2FuZHN1Ym1pdHZpZXcnO1xuICAgIHRoaXMucGF5bWVudExpYkNvbXBvbmVudC5DQ0RfQ0FTRV9OVU1CRVIgPSB0aGlzLmNjZENhc2VOdW1iZXI7XG4gIH1cblxuICBnb3RvUmV2aWV3UmVmdW5kQ29uZmlybWF0aW9uUGFnZSgpIHtcbiAgICBpZiAodGhpcy5vbGRSZWZ1bmRSZWFzb24gPT09IHRoaXMucmVmdW5kbGlzdC5yZWFzb24pIHtcbiAgICAgIHRoaXMucmVmdW5kQ29kZSA9ICcnO1xuICAgIH1cbiAgICBjb25zdCByZXN1Ym1pdFJlcXVlc3QgPSBuZXcgSVJlc3VibWl0UmVmdW5kUmVxdWVzdCh0aGlzLnJlZnVuZENvZGUsICB0aGlzLmNoYW5nZWRBbW91bnQpO1xuICAgIHRoaXMucmVmdW5kU2VydmljZS5wYXRjaFJlc3VibWl0UmVmdW5kKHJlc3VibWl0UmVxdWVzdCwgdGhpcy5yZWZ1bmRsaXN0LnJlZnVuZF9yZWZlcmVuY2UpLnN1YnNjcmliZShcbiAgICAgIHJlc3BvbnNlID0+IHtcbiAgICAgICAgaWYgKEpTT04ucGFyc2UocmVzcG9uc2UpKSB7XG4gICAgICAgICAgdGhpcy5yZWZ1bmRSZWZlcmVuY2UgPSBKU09OLnBhcnNlKHJlc3BvbnNlKS5kYXRhLnJlZnVuZF9yZWZlcmVuY2U7XG4gICAgICAgICAgdGhpcy5yZWZ1bmRBbW91bnQgPSBKU09OLnBhcnNlKHJlc3BvbnNlKS5kYXRhLnJlZnVuZF9hbW91bnQ7XG4gICAgICAgICAgdGhpcy52aWV3TmFtZSA9ICdyZXZpZXdyZWZ1bmRjb25maXJtYXRpb25wYWdlJztcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIChlcnJvcjogYW55KSA9PiB7XG4gICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gZXJyb3IucmVwbGFjZSgvXCIvZyxcIlwiKTtcbiAgICAgIH1cbiAgICApO1xuXG4gIH1cblxuICBnb1RvUmVmdW5kUHJvY2Vzc0NvbXBvbmVudChyZWZ1bmRSZWZlcmVuY2U6IHN0cmluZywgcmVmdW5kTGlzdDogSVJlZnVuZExpc3QpIHtcbiAgICB0aGlzLnBheW1lbnRMaWJDb21wb25lbnQucmVmdW5kbGlzdHNvdXJjZSA9IHJlZnVuZExpc3Q7XG4gICAgdGhpcy5wYXltZW50TGliQ29tcG9uZW50LnJlZnVuZFJlZmVyZW5jZSA9IHJlZnVuZFJlZmVyZW5jZTtcbiAgICB0aGlzLnBheW1lbnRMaWJDb21wb25lbnQudmlld05hbWUgPSAncHJvY2Vzcy1yZWZ1bmQnO1xuICB9XG5cbn1cbiJdfQ==