@hmcts/ccpay-web-component 5.0.8-beta11 → 5.0.8-beta12

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 (389) hide show
  1. package/bundles/hmcts-ccpay-web-component.umd.js +1090 -1134
  2. package/bundles/hmcts-ccpay-web-component.umd.js.map +1 -1
  3. package/bundles/hmcts-ccpay-web-component.umd.min.js +1 -15
  4. package/bundles/hmcts-ccpay-web-component.umd.min.js.map +1 -1
  5. package/esm2015/hmcts-ccpay-web-component.js +1 -1
  6. package/esm2015/lib/components/add-remission/add-remission.component.js +3 -12
  7. package/esm2015/lib/components/allocate-payments/allocate-payments.component.js +3 -12
  8. package/esm2015/lib/components/card-details/card-details.component.js +1 -5
  9. package/esm2015/lib/components/case-transactions/case-transactions.component.js +2 -10
  10. package/esm2015/lib/components/error-banner/error-banner.component.js +1 -1
  11. package/esm2015/lib/components/fee-summary/fee-summary.component.js +2 -10
  12. package/esm2015/lib/components/mark-unidentified-payment/mark-unidentified-payment.component.js +3 -9
  13. package/esm2015/lib/components/mark-unsolicited-payment/mark-unsolicited-payment.component.js +3 -9
  14. package/esm2015/lib/components/page-not-found.component.js +1 -1
  15. package/esm2015/lib/components/payment-list/payment-list.component.js +1 -5
  16. package/esm2015/lib/components/payment-view/payment-view.component.js +2 -8
  17. package/esm2015/lib/components/pba-details/pba-details.component.js +2 -2
  18. package/esm2015/lib/components/pba-payment/pba-payment.component.js +2 -6
  19. package/esm2015/lib/components/process-refund/process-refund.component.js +3 -11
  20. package/esm2015/lib/components/processed-payments/processed-payments.component.js +2 -6
  21. package/esm2015/lib/components/refund-list/refund-list.component.js +1 -4
  22. package/esm2015/lib/components/refund-status/refund-status.component.js +3 -11
  23. package/esm2015/lib/components/reports/reports.component.js +3 -10
  24. package/esm2015/lib/components/service-request/service-request.component.js +2 -8
  25. package/esm2015/lib/components/status-history/status-history.component.js +1 -5
  26. package/esm2015/lib/components/table/table.component.js +2 -9
  27. package/esm2015/lib/components/unprocessed-payments/unprocessed-payments.component.js +2 -9
  28. package/esm2015/lib/interfaces/AddRemissionRequest.js +1 -1
  29. package/esm2015/lib/interfaces/AddRetroRemissionRequest.js +1 -1
  30. package/esm2015/lib/interfaces/AllocatePaymentRequest.js +1 -1
  31. package/esm2015/lib/interfaces/IAllocationPaymentsRequest.js +1 -1
  32. package/esm2015/lib/interfaces/IBSPayments.js +2 -1
  33. package/esm2015/lib/interfaces/ICardDetails.js +2 -1
  34. package/esm2015/lib/interfaces/IFee.js +2 -1
  35. package/esm2015/lib/interfaces/IOrderReferenceFee.js +2 -1
  36. package/esm2015/lib/interfaces/IPatchRefundAction.js +2 -1
  37. package/esm2015/lib/interfaces/IPayment.js +2 -1
  38. package/esm2015/lib/interfaces/IPaymentFailure.js +2 -1
  39. package/esm2015/lib/interfaces/IPaymentGroup.js +2 -1
  40. package/esm2015/lib/interfaces/IPaymentStatus.js +1 -1
  41. package/esm2015/lib/interfaces/IPaymentView.js +2 -1
  42. package/esm2015/lib/interfaces/IPayments.js +2 -1
  43. package/esm2015/lib/interfaces/IRefundAction.js +2 -1
  44. package/esm2015/lib/interfaces/IRefundList.js +2 -1
  45. package/esm2015/lib/interfaces/IRefundReasons.js +2 -1
  46. package/esm2015/lib/interfaces/IRefundRejectReason.js +2 -1
  47. package/esm2015/lib/interfaces/IRefundStatus.js +2 -1
  48. package/esm2015/lib/interfaces/IRefundStatusHistory.js +2 -1
  49. package/esm2015/lib/interfaces/IRemission.js +2 -1
  50. package/esm2015/lib/interfaces/IResubmitRefundRequest.js +1 -1
  51. package/esm2015/lib/interfaces/IStatusHistories.js +2 -1
  52. package/esm2015/lib/interfaces/IStatusHistory.js +2 -1
  53. package/esm2015/lib/interfaces/IserviceRequestCardPayment.js +1 -1
  54. package/esm2015/lib/interfaces/IserviceRequestPbaPayment.js +1 -1
  55. package/esm2015/lib/interfaces/IssueRefundRequest.js +1 -1
  56. package/esm2015/lib/interfaces/PayhubAntennaRequest.js +1 -1
  57. package/esm2015/lib/interfaces/PaymentToPayhubRequest.js +1 -1
  58. package/esm2015/lib/interfaces/PostIssueRefundRetroRemission.js +1 -1
  59. package/esm2015/lib/interfaces/PostRefundRetroRemission.js +1 -1
  60. package/esm2015/lib/interfaces/RefundsRequest.js +1 -1
  61. package/esm2015/lib/interfaces/UnidentifiedPaymentsRequest.js +1 -1
  62. package/esm2015/lib/interfaces/UnsolicitedPaymentsRequest.js +1 -1
  63. package/esm2015/lib/payment-lib.component.js +2 -7
  64. package/esm2015/lib/payment-lib.module.js +1 -1
  65. package/esm2015/lib/payment-lib.service.js +1 -1
  66. package/esm2015/lib/pipes/capitalize.pipe.js +1 -1
  67. package/esm2015/lib/pipes/ccd-hyphens.pipe.js +1 -1
  68. package/esm2015/lib/pipes/key-value.pipe.js +1 -1
  69. package/esm2015/lib/pipes/sanitize-html.pipe.js +2 -5
  70. package/esm2015/lib/services/bulk-scaning-payment/bulk-scaning-payment.service.js +1 -7
  71. package/esm2015/lib/services/card-details/card-details.service.js +1 -7
  72. package/esm2015/lib/services/case-transactions/case-transactions.service.js +1 -7
  73. package/esm2015/lib/services/orderslist.service.js +1 -1
  74. package/esm2015/lib/services/payment-list/payment-list.service.js +1 -7
  75. package/esm2015/lib/services/payment-view/payment-view.service.js +2 -9
  76. package/esm2015/lib/services/refunds/refunds.service.js +1 -8
  77. package/esm2015/lib/services/shared/error-handler.service.js +1 -1
  78. package/esm2015/lib/services/shared/httpclient/webcomponent.http.client.js +1 -5
  79. package/esm2015/lib/services/shared/logger/console-logger.service.js +1 -1
  80. package/esm2015/lib/services/shared/logger/logger.service.js +1 -1
  81. package/esm2015/lib/services/status-history/status-history.service.js +1 -7
  82. package/esm2015/lib/services/xl-file/xl-file.service.js +1 -1
  83. package/esm2015/public_api.js +1 -1
  84. package/fesm2015/hmcts-ccpay-web-component.js +57 -228
  85. package/fesm2015/hmcts-ccpay-web-component.js.map +1 -1
  86. package/hmcts-ccpay-web-component.d.ts +1 -0
  87. package/hmcts-ccpay-web-component.d.ts.map +1 -0
  88. package/hmcts-ccpay-web-component.metadata.json +1 -1
  89. package/lib/components/add-remission/add-remission.component.d.ts +1 -0
  90. package/lib/components/add-remission/add-remission.component.d.ts.map +1 -0
  91. package/lib/components/add-remission/add-remission.component.ngfactory.d.ts.map +1 -0
  92. package/lib/components/add-remission/add-remission.component.scss.shim.ngstyle.d.ts.map +1 -0
  93. package/lib/components/allocate-payments/allocate-payments.component.d.ts +1 -0
  94. package/lib/components/allocate-payments/allocate-payments.component.d.ts.map +1 -0
  95. package/lib/components/allocate-payments/allocate-payments.component.ngfactory.d.ts.map +1 -0
  96. package/lib/components/allocate-payments/allocate-payments.component.scss.shim.ngstyle.d.ts.map +1 -0
  97. package/lib/components/card-details/card-details.component.css.shim.ngstyle.d.ts.map +1 -0
  98. package/lib/components/card-details/card-details.component.d.ts +1 -0
  99. package/lib/components/card-details/card-details.component.d.ts.map +1 -0
  100. package/lib/components/card-details/card-details.component.ngfactory.d.ts.map +1 -0
  101. package/lib/components/case-transactions/case-transactions.component.css.shim.ngstyle.d.ts.map +1 -0
  102. package/lib/components/case-transactions/case-transactions.component.d.ts +2 -1
  103. package/lib/components/case-transactions/case-transactions.component.d.ts.map +1 -0
  104. package/lib/components/case-transactions/case-transactions.component.ngfactory.d.ts.map +1 -0
  105. package/lib/components/error-banner/error-banner.component.d.ts +1 -0
  106. package/lib/components/error-banner/error-banner.component.d.ts.map +1 -0
  107. package/lib/components/error-banner/error-banner.component.ngfactory.d.ts.map +1 -0
  108. package/lib/components/error-banner/error-banner.component.scss.shim.ngstyle.d.ts.map +1 -0
  109. package/lib/components/fee-summary/fee-summary.component.d.ts +1 -0
  110. package/lib/components/fee-summary/fee-summary.component.d.ts.map +1 -0
  111. package/lib/components/fee-summary/fee-summary.component.ngfactory.d.ts.map +1 -0
  112. package/lib/components/fee-summary/fee-summary.component.scss.shim.ngstyle.d.ts.map +1 -0
  113. package/lib/components/mark-unidentified-payment/mark-unidentified-payment.component.d.ts +1 -0
  114. package/lib/components/mark-unidentified-payment/mark-unidentified-payment.component.d.ts.map +1 -0
  115. package/lib/components/mark-unidentified-payment/mark-unidentified-payment.component.ngfactory.d.ts.map +1 -0
  116. package/lib/components/mark-unidentified-payment/mark-unidentified-payment.component.scss.shim.ngstyle.d.ts.map +1 -0
  117. package/lib/components/mark-unsolicited-payment/mark-unsolicited-payment.component.d.ts +1 -0
  118. package/lib/components/mark-unsolicited-payment/mark-unsolicited-payment.component.d.ts.map +1 -0
  119. package/lib/components/mark-unsolicited-payment/mark-unsolicited-payment.component.ngfactory.d.ts.map +1 -0
  120. package/lib/components/mark-unsolicited-payment/mark-unsolicited-payment.component.scss.shim.ngstyle.d.ts.map +1 -0
  121. package/lib/components/page-not-found.component.d.ts +1 -0
  122. package/lib/components/page-not-found.component.d.ts.map +1 -0
  123. package/lib/components/page-not-found.component.ngfactory.d.ts.map +1 -0
  124. package/lib/components/payment-list/payment-list.component.css.shim.ngstyle.d.ts.map +1 -0
  125. package/lib/components/payment-list/payment-list.component.d.ts +1 -0
  126. package/lib/components/payment-list/payment-list.component.d.ts.map +1 -0
  127. package/lib/components/payment-list/payment-list.component.ngfactory.d.ts.map +1 -0
  128. package/lib/components/payment-view/payment-view.component.css.shim.ngstyle.d.ts.map +1 -0
  129. package/lib/components/payment-view/payment-view.component.d.ts +1 -0
  130. package/lib/components/payment-view/payment-view.component.d.ts.map +1 -0
  131. package/lib/components/payment-view/payment-view.component.ngfactory.d.ts.map +1 -0
  132. package/lib/components/pba-details/pba-details.component.css.shim.ngstyle.d.ts.map +1 -0
  133. package/lib/components/pba-details/pba-details.component.d.ts +1 -0
  134. package/lib/components/pba-details/pba-details.component.d.ts.map +1 -0
  135. package/lib/components/pba-details/pba-details.component.ngfactory.d.ts.map +1 -0
  136. package/lib/components/pba-payment/pba-payment.component.d.ts +1 -0
  137. package/lib/components/pba-payment/pba-payment.component.d.ts.map +1 -0
  138. package/lib/components/pba-payment/pba-payment.component.ngfactory.d.ts.map +1 -0
  139. package/lib/components/pba-payment/pba-payment.component.scss.shim.ngstyle.d.ts.map +1 -0
  140. package/lib/components/process-refund/process-refund.component.css.shim.ngstyle.d.ts.map +1 -0
  141. package/lib/components/process-refund/process-refund.component.d.ts +1 -0
  142. package/lib/components/process-refund/process-refund.component.d.ts.map +1 -0
  143. package/lib/components/process-refund/process-refund.component.ngfactory.d.ts.map +1 -0
  144. package/lib/components/processed-payments/processed-payments.component.d.ts +1 -0
  145. package/lib/components/processed-payments/processed-payments.component.d.ts.map +1 -0
  146. package/lib/components/processed-payments/processed-payments.component.ngfactory.d.ts.map +1 -0
  147. package/lib/components/processed-payments/processed-payments.component.scss.shim.ngstyle.d.ts.map +1 -0
  148. package/lib/components/refund-list/refund-list.component.css.shim.ngstyle.d.ts.map +1 -0
  149. package/lib/components/refund-list/refund-list.component.d.ts +1 -0
  150. package/lib/components/refund-list/refund-list.component.d.ts.map +1 -0
  151. package/lib/components/refund-list/refund-list.component.ngfactory.d.ts.map +1 -0
  152. package/lib/components/refund-status/refund-status.component.css.shim.ngstyle.d.ts.map +1 -0
  153. package/lib/components/refund-status/refund-status.component.d.ts +1 -0
  154. package/lib/components/refund-status/refund-status.component.d.ts.map +1 -0
  155. package/lib/components/refund-status/refund-status.component.ngfactory.d.ts.map +1 -0
  156. package/lib/components/reports/reports.component.d.ts +1 -0
  157. package/lib/components/reports/reports.component.d.ts.map +1 -0
  158. package/lib/components/reports/reports.component.ngfactory.d.ts.map +1 -0
  159. package/lib/components/reports/reports.component.scss.shim.ngstyle.d.ts.map +1 -0
  160. package/lib/components/service-request/service-request.component.css.shim.ngstyle.d.ts.map +1 -0
  161. package/lib/components/service-request/service-request.component.d.ts +1 -0
  162. package/lib/components/service-request/service-request.component.d.ts.map +1 -0
  163. package/lib/components/service-request/service-request.component.ngfactory.d.ts.map +1 -0
  164. package/lib/components/status-history/status-history.component.css.shim.ngstyle.d.ts.map +1 -0
  165. package/lib/components/status-history/status-history.component.d.ts +1 -0
  166. package/lib/components/status-history/status-history.component.d.ts.map +1 -0
  167. package/lib/components/status-history/status-history.component.ngfactory.d.ts.map +1 -0
  168. package/lib/components/table/table.component.css.shim.ngstyle.d.ts.map +1 -0
  169. package/lib/components/table/table.component.d.ts +1 -0
  170. package/lib/components/table/table.component.d.ts.map +1 -0
  171. package/lib/components/table/table.component.ngfactory.d.ts.map +1 -0
  172. package/lib/components/unprocessed-payments/unprocessed-payments.component.d.ts +1 -0
  173. package/lib/components/unprocessed-payments/unprocessed-payments.component.d.ts.map +1 -0
  174. package/lib/components/unprocessed-payments/unprocessed-payments.component.ngfactory.d.ts.map +1 -0
  175. package/lib/components/unprocessed-payments/unprocessed-payments.component.scss.shim.ngstyle.d.ts.map +1 -0
  176. package/lib/interfaces/AddRemissionRequest.d.ts +1 -0
  177. package/lib/interfaces/AddRemissionRequest.d.ts.map +1 -0
  178. package/lib/interfaces/AddRetroRemissionRequest.d.ts +1 -0
  179. package/lib/interfaces/AddRetroRemissionRequest.d.ts.map +1 -0
  180. package/lib/interfaces/AllocatePaymentRequest.d.ts +1 -0
  181. package/lib/interfaces/AllocatePaymentRequest.d.ts.map +1 -0
  182. package/lib/interfaces/IAllocationPaymentsRequest.d.ts +1 -0
  183. package/lib/interfaces/IAllocationPaymentsRequest.d.ts.map +1 -0
  184. package/lib/interfaces/IBSPayments.d.ts +1 -0
  185. package/lib/interfaces/IBSPayments.d.ts.map +1 -0
  186. package/lib/interfaces/ICardDetails.d.ts +1 -0
  187. package/lib/interfaces/ICardDetails.d.ts.map +1 -0
  188. package/lib/interfaces/IFee.d.ts +1 -0
  189. package/lib/interfaces/IFee.d.ts.map +1 -0
  190. package/lib/interfaces/IOrderReferenceFee.d.ts +1 -0
  191. package/lib/interfaces/IOrderReferenceFee.d.ts.map +1 -0
  192. package/lib/interfaces/IPatchRefundAction.d.ts +1 -0
  193. package/lib/interfaces/IPatchRefundAction.d.ts.map +1 -0
  194. package/lib/interfaces/IPayment.d.ts +1 -0
  195. package/lib/interfaces/IPayment.d.ts.map +1 -0
  196. package/lib/interfaces/IPaymentFailure.d.ts +1 -0
  197. package/lib/interfaces/IPaymentFailure.d.ts.map +1 -0
  198. package/lib/interfaces/IPaymentGroup.d.ts +1 -0
  199. package/lib/interfaces/IPaymentGroup.d.ts.map +1 -0
  200. package/lib/interfaces/IPaymentStatus.d.ts +1 -0
  201. package/lib/interfaces/IPaymentStatus.d.ts.map +1 -0
  202. package/lib/interfaces/IPaymentView.d.ts +1 -0
  203. package/lib/interfaces/IPaymentView.d.ts.map +1 -0
  204. package/lib/interfaces/IPayments.d.ts +1 -0
  205. package/lib/interfaces/IPayments.d.ts.map +1 -0
  206. package/lib/interfaces/IRefundAction.d.ts +1 -0
  207. package/lib/interfaces/IRefundAction.d.ts.map +1 -0
  208. package/lib/interfaces/IRefundList.d.ts +1 -0
  209. package/lib/interfaces/IRefundList.d.ts.map +1 -0
  210. package/lib/interfaces/IRefundReasons.d.ts +1 -0
  211. package/lib/interfaces/IRefundReasons.d.ts.map +1 -0
  212. package/lib/interfaces/IRefundRejectReason.d.ts +1 -0
  213. package/lib/interfaces/IRefundRejectReason.d.ts.map +1 -0
  214. package/lib/interfaces/IRefundStatus.d.ts +1 -0
  215. package/lib/interfaces/IRefundStatus.d.ts.map +1 -0
  216. package/lib/interfaces/IRefundStatusHistory.d.ts +1 -0
  217. package/lib/interfaces/IRefundStatusHistory.d.ts.map +1 -0
  218. package/lib/interfaces/IRemission.d.ts +1 -0
  219. package/lib/interfaces/IRemission.d.ts.map +1 -0
  220. package/lib/interfaces/IResubmitRefundRequest.d.ts +1 -0
  221. package/lib/interfaces/IResubmitRefundRequest.d.ts.map +1 -0
  222. package/lib/interfaces/IStatusHistories.d.ts +1 -0
  223. package/lib/interfaces/IStatusHistories.d.ts.map +1 -0
  224. package/lib/interfaces/IStatusHistory.d.ts +1 -0
  225. package/lib/interfaces/IStatusHistory.d.ts.map +1 -0
  226. package/lib/interfaces/IserviceRequestCardPayment.d.ts +1 -0
  227. package/lib/interfaces/IserviceRequestCardPayment.d.ts.map +1 -0
  228. package/lib/interfaces/IserviceRequestPbaPayment.d.ts +1 -0
  229. package/lib/interfaces/IserviceRequestPbaPayment.d.ts.map +1 -0
  230. package/lib/interfaces/IssueRefundRequest.d.ts +1 -0
  231. package/lib/interfaces/IssueRefundRequest.d.ts.map +1 -0
  232. package/lib/interfaces/PayhubAntennaRequest.d.ts +1 -0
  233. package/lib/interfaces/PayhubAntennaRequest.d.ts.map +1 -0
  234. package/lib/interfaces/PaymentToPayhubRequest.d.ts +1 -0
  235. package/lib/interfaces/PaymentToPayhubRequest.d.ts.map +1 -0
  236. package/lib/interfaces/PostIssueRefundRetroRemission.d.ts +1 -0
  237. package/lib/interfaces/PostIssueRefundRetroRemission.d.ts.map +1 -0
  238. package/lib/interfaces/PostRefundRetroRemission.d.ts +1 -0
  239. package/lib/interfaces/PostRefundRetroRemission.d.ts.map +1 -0
  240. package/lib/interfaces/RefundsRequest.d.ts +1 -0
  241. package/lib/interfaces/RefundsRequest.d.ts.map +1 -0
  242. package/lib/interfaces/UnidentifiedPaymentsRequest.d.ts +1 -0
  243. package/lib/interfaces/UnidentifiedPaymentsRequest.d.ts.map +1 -0
  244. package/lib/interfaces/UnsolicitedPaymentsRequest.d.ts +1 -0
  245. package/lib/interfaces/UnsolicitedPaymentsRequest.d.ts.map +1 -0
  246. package/lib/payment-lib.component.d.ts +1 -0
  247. package/lib/payment-lib.component.d.ts.map +1 -0
  248. package/lib/payment-lib.component.ngfactory.d.ts.map +1 -0
  249. package/lib/payment-lib.module.d.ts +1 -0
  250. package/lib/payment-lib.module.d.ts.map +1 -0
  251. package/lib/payment-lib.module.ngfactory.d.ts.map +1 -0
  252. package/lib/payment-lib.service.d.ts +1 -0
  253. package/lib/payment-lib.service.d.ts.map +1 -0
  254. package/lib/payment-lib.service.ngfactory.d.ts.map +1 -0
  255. package/lib/pipes/capitalize.pipe.d.ts +1 -0
  256. package/lib/pipes/capitalize.pipe.d.ts.map +1 -0
  257. package/lib/pipes/capitalize.pipe.ngfactory.d.ts.map +1 -0
  258. package/lib/pipes/ccd-hyphens.pipe.d.ts +1 -0
  259. package/lib/pipes/ccd-hyphens.pipe.d.ts.map +1 -0
  260. package/lib/pipes/ccd-hyphens.pipe.ngfactory.d.ts.map +1 -0
  261. package/lib/pipes/key-value.pipe.d.ts +1 -0
  262. package/lib/pipes/key-value.pipe.d.ts.map +1 -0
  263. package/lib/pipes/key-value.pipe.ngfactory.d.ts.map +1 -0
  264. package/lib/pipes/sanitize-html.pipe.d.ts +1 -0
  265. package/lib/pipes/sanitize-html.pipe.d.ts.map +1 -0
  266. package/lib/pipes/sanitize-html.pipe.ngfactory.d.ts.map +1 -0
  267. package/lib/services/bulk-scaning-payment/bulk-scaning-payment.service.d.ts +1 -0
  268. package/lib/services/bulk-scaning-payment/bulk-scaning-payment.service.d.ts.map +1 -0
  269. package/lib/services/bulk-scaning-payment/bulk-scaning-payment.service.ngfactory.d.ts.map +1 -0
  270. package/lib/services/card-details/card-details.service.d.ts +1 -0
  271. package/lib/services/card-details/card-details.service.d.ts.map +1 -0
  272. package/lib/services/card-details/card-details.service.ngfactory.d.ts.map +1 -0
  273. package/lib/services/case-transactions/case-transactions.service.d.ts +1 -0
  274. package/lib/services/case-transactions/case-transactions.service.d.ts.map +1 -0
  275. package/lib/services/case-transactions/case-transactions.service.ngfactory.d.ts.map +1 -0
  276. package/lib/services/orderslist.service.d.ts +1 -0
  277. package/lib/services/orderslist.service.d.ts.map +1 -0
  278. package/lib/services/orderslist.service.ngfactory.d.ts.map +1 -0
  279. package/lib/services/payment-list/payment-list.service.d.ts +1 -0
  280. package/lib/services/payment-list/payment-list.service.d.ts.map +1 -0
  281. package/lib/services/payment-list/payment-list.service.ngfactory.d.ts.map +1 -0
  282. package/lib/services/payment-view/payment-view.service.d.ts +1 -0
  283. package/lib/services/payment-view/payment-view.service.d.ts.map +1 -0
  284. package/lib/services/payment-view/payment-view.service.ngfactory.d.ts.map +1 -0
  285. package/lib/services/refunds/refunds.service.d.ts +1 -0
  286. package/lib/services/refunds/refunds.service.d.ts.map +1 -0
  287. package/lib/services/refunds/refunds.service.ngfactory.d.ts.map +1 -0
  288. package/lib/services/shared/error-handler.service.d.ts +1 -0
  289. package/lib/services/shared/error-handler.service.d.ts.map +1 -0
  290. package/lib/services/shared/error-handler.service.ngfactory.d.ts.map +1 -0
  291. package/lib/services/shared/httpclient/webcomponent.http.client.d.ts +1 -0
  292. package/lib/services/shared/httpclient/webcomponent.http.client.d.ts.map +1 -0
  293. package/lib/services/shared/httpclient/webcomponent.http.client.ngfactory.d.ts.map +1 -0
  294. package/lib/services/shared/logger/console-logger.service.d.ts +1 -0
  295. package/lib/services/shared/logger/console-logger.service.d.ts.map +1 -0
  296. package/lib/services/shared/logger/console-logger.service.ngfactory.d.ts.map +1 -0
  297. package/lib/services/shared/logger/logger.service.d.ts +1 -0
  298. package/lib/services/shared/logger/logger.service.d.ts.map +1 -0
  299. package/lib/services/shared/logger/logger.service.ngfactory.d.ts.map +1 -0
  300. package/lib/services/status-history/status-history.service.d.ts +1 -0
  301. package/lib/services/status-history/status-history.service.d.ts.map +1 -0
  302. package/lib/services/status-history/status-history.service.ngfactory.d.ts.map +1 -0
  303. package/lib/services/xl-file/xl-file.service.d.ts +1 -0
  304. package/lib/services/xl-file/xl-file.service.d.ts.map +1 -0
  305. package/lib/services/xl-file/xl-file.service.ngfactory.d.ts.map +1 -0
  306. package/package.json +3 -5
  307. package/public_api.d.ts +1 -0
  308. package/public_api.d.ts.map +1 -0
  309. package/esm5/hmcts-ccpay-web-component.js +0 -44
  310. package/esm5/lib/components/add-remission/add-remission.component.js +0 -706
  311. package/esm5/lib/components/allocate-payments/allocate-payments.component.js +0 -398
  312. package/esm5/lib/components/card-details/card-details.component.js +0 -39
  313. package/esm5/lib/components/case-transactions/case-transactions.component.js +0 -752
  314. package/esm5/lib/components/error-banner/error-banner.component.js +0 -21
  315. package/esm5/lib/components/fee-summary/fee-summary.component.js +0 -246
  316. package/esm5/lib/components/mark-unidentified-payment/mark-unidentified-payment.component.js +0 -194
  317. package/esm5/lib/components/mark-unsolicited-payment/mark-unsolicited-payment.component.js +0 -249
  318. package/esm5/lib/components/page-not-found.component.js +0 -13
  319. package/esm5/lib/components/payment-list/payment-list.component.js +0 -38
  320. package/esm5/lib/components/payment-view/payment-view.component.js +0 -324
  321. package/esm5/lib/components/pba-details/pba-details.component.js +0 -21
  322. package/esm5/lib/components/pba-payment/pba-payment.component.js +0 -150
  323. package/esm5/lib/components/process-refund/process-refund.component.js +0 -307
  324. package/esm5/lib/components/processed-payments/processed-payments.component.js +0 -40
  325. package/esm5/lib/components/refund-list/refund-list.component.js +0 -65
  326. package/esm5/lib/components/refund-status/refund-status.component.js +0 -279
  327. package/esm5/lib/components/reports/reports.component.js +0 -289
  328. package/esm5/lib/components/service-request/service-request.component.js +0 -310
  329. package/esm5/lib/components/status-history/status-history.component.js +0 -35
  330. package/esm5/lib/components/table/table.component.js +0 -108
  331. package/esm5/lib/components/unprocessed-payments/unprocessed-payments.component.js +0 -208
  332. package/esm5/lib/interfaces/AddRemissionRequest.js +0 -12
  333. package/esm5/lib/interfaces/AddRetroRemissionRequest.js +0 -9
  334. package/esm5/lib/interfaces/AllocatePaymentRequest.js +0 -29
  335. package/esm5/lib/interfaces/IAllocationPaymentsRequest.js +0 -16
  336. package/esm5/lib/interfaces/IBSPayments.js +0 -1
  337. package/esm5/lib/interfaces/ICardDetails.js +0 -1
  338. package/esm5/lib/interfaces/IFee.js +0 -1
  339. package/esm5/lib/interfaces/IOrderReferenceFee.js +0 -1
  340. package/esm5/lib/interfaces/IPatchRefundAction.js +0 -1
  341. package/esm5/lib/interfaces/IPayment.js +0 -1
  342. package/esm5/lib/interfaces/IPaymentFailure.js +0 -1
  343. package/esm5/lib/interfaces/IPaymentGroup.js +0 -1
  344. package/esm5/lib/interfaces/IPaymentStatus.js +0 -7
  345. package/esm5/lib/interfaces/IPaymentView.js +0 -1
  346. package/esm5/lib/interfaces/IPayments.js +0 -1
  347. package/esm5/lib/interfaces/IRefundAction.js +0 -1
  348. package/esm5/lib/interfaces/IRefundList.js +0 -1
  349. package/esm5/lib/interfaces/IRefundReasons.js +0 -1
  350. package/esm5/lib/interfaces/IRefundRejectReason.js +0 -1
  351. package/esm5/lib/interfaces/IRefundStatus.js +0 -1
  352. package/esm5/lib/interfaces/IRefundStatusHistory.js +0 -1
  353. package/esm5/lib/interfaces/IRemission.js +0 -1
  354. package/esm5/lib/interfaces/IResubmitRefundRequest.js +0 -9
  355. package/esm5/lib/interfaces/IStatusHistories.js +0 -1
  356. package/esm5/lib/interfaces/IStatusHistory.js +0 -1
  357. package/esm5/lib/interfaces/IserviceRequestCardPayment.js +0 -10
  358. package/esm5/lib/interfaces/IserviceRequestPbaPayment.js +0 -12
  359. package/esm5/lib/interfaces/IssueRefundRequest.js +0 -10
  360. package/esm5/lib/interfaces/PayhubAntennaRequest.js +0 -11
  361. package/esm5/lib/interfaces/PaymentToPayhubRequest.js +0 -14
  362. package/esm5/lib/interfaces/PostIssueRefundRetroRemission.js +0 -8
  363. package/esm5/lib/interfaces/PostRefundRetroRemission.js +0 -9
  364. package/esm5/lib/interfaces/RefundsRequest.js +0 -9
  365. package/esm5/lib/interfaces/UnidentifiedPaymentsRequest.js +0 -14
  366. package/esm5/lib/interfaces/UnsolicitedPaymentsRequest.js +0 -17
  367. package/esm5/lib/payment-lib.component.js +0 -96
  368. package/esm5/lib/payment-lib.module.js +0 -99
  369. package/esm5/lib/payment-lib.service.js +0 -40
  370. package/esm5/lib/pipes/capitalize.pipe.js +0 -17
  371. package/esm5/lib/pipes/ccd-hyphens.pipe.js +0 -21
  372. package/esm5/lib/pipes/key-value.pipe.js +0 -23
  373. package/esm5/lib/pipes/sanitize-html.pipe.js +0 -22
  374. package/esm5/lib/services/bulk-scaning-payment/bulk-scaning-payment.service.js +0 -95
  375. package/esm5/lib/services/card-details/card-details.service.js +0 -47
  376. package/esm5/lib/services/case-transactions/case-transactions.service.js +0 -47
  377. package/esm5/lib/services/orderslist.service.js +0 -156
  378. package/esm5/lib/services/payment-list/payment-list.service.js +0 -47
  379. package/esm5/lib/services/payment-view/payment-view.service.js +0 -151
  380. package/esm5/lib/services/refunds/refunds.service.js +0 -123
  381. package/esm5/lib/services/shared/error-handler.service.js +0 -100
  382. package/esm5/lib/services/shared/httpclient/webcomponent.http.client.js +0 -67
  383. package/esm5/lib/services/shared/logger/console-logger.service.js +0 -59
  384. package/esm5/lib/services/shared/logger/logger.service.js +0 -25
  385. package/esm5/lib/services/status-history/status-history.service.js +0 -49
  386. package/esm5/lib/services/xl-file/xl-file.service.js +0 -154
  387. package/esm5/public_api.js +0 -7
  388. package/fesm5/hmcts-ccpay-web-component.js +0 -6098
  389. package/fesm5/hmcts-ccpay-web-component.js.map +0 -1
@@ -1,194 +0,0 @@
1
- import { Component, Input } from '@angular/core';
2
- import { FormBuilder, FormGroup, Validators, FormControl } from '@angular/forms';
3
- import { PaymentLibComponent } from '../../payment-lib.component';
4
- import { PaymentViewService } from '../../services/payment-view/payment-view.service';
5
- import { BulkScaningPaymentService } from '../../services/bulk-scaning-payment/bulk-scaning-payment.service';
6
- import { UnidentifiedPaymentsRequest } from '../../interfaces/UnidentifiedPaymentsRequest';
7
- import { AllocatePaymentRequest } from '../../interfaces/AllocatePaymentRequest';
8
- var MarkUnidentifiedPaymentComponent = /** @class */ (function () {
9
- function MarkUnidentifiedPaymentComponent(formBuilder, paymentViewService, paymentLibComponent, bulkScaningPaymentService) {
10
- this.formBuilder = formBuilder;
11
- this.paymentViewService = paymentViewService;
12
- this.paymentLibComponent = paymentLibComponent;
13
- this.bulkScaningPaymentService = bulkScaningPaymentService;
14
- this.isInvesticationDetailEmpty = false;
15
- this.investicationDetailHasError = false;
16
- this.investicationDetailMinHasError = false;
17
- this.investicationDetailMaxHasError = false;
18
- this.errorMessage = this.getErrorMessage(false);
19
- this.siteID = null;
20
- this.isConfirmButtondisabled = false;
21
- this.ccdReference = null;
22
- this.exceptionReference = null;
23
- this.isStrategicFixEnable = true;
24
- }
25
- MarkUnidentifiedPaymentComponent.prototype.ngOnInit = function () {
26
- this.viewStatus = 'mainForm';
27
- this.ccdCaseNumber = this.paymentLibComponent.CCD_CASE_NUMBER;
28
- this.bspaymentdcn = this.paymentLibComponent.bspaymentdcn;
29
- this.isStrategicFixEnable = this.paymentLibComponent.ISSFENABLE;
30
- this.getUnassignedPayment();
31
- this.markPaymentUnidentifiedForm = this.formBuilder.group({
32
- investicationDetail: new FormControl('', Validators.compose([
33
- Validators.required,
34
- Validators.minLength(3),
35
- Validators.maxLength(255),
36
- Validators.pattern('^([a-zA-Z0-9\\s,\\.]*)$')
37
- ]))
38
- });
39
- };
40
- MarkUnidentifiedPaymentComponent.prototype.getUnassignedPayment = function () {
41
- var _this = this;
42
- this.bulkScaningPaymentService.getBSPaymentsByDCN(this.bspaymentdcn).subscribe(function (unassignedPayments) {
43
- _this.errorMessage = _this.getErrorMessage(false);
44
- _this.unassignedRecord = unassignedPayments['data'].payments.filter(function (payment) {
45
- return payment && payment.dcn_reference == _this.bspaymentdcn;
46
- })[0];
47
- _this.siteID = unassignedPayments['data'].responsible_service_id;
48
- var beCcdNumber = unassignedPayments['data'].ccd_reference, beExceptionNumber = unassignedPayments['data'].exception_record_reference, exceptionReference = beCcdNumber ? beCcdNumber === _this.ccdCaseNumber ? null : _this.ccdCaseNumber : _this.ccdCaseNumber;
49
- _this.ccdReference = beCcdNumber ? beCcdNumber : null;
50
- _this.exceptionReference = beExceptionNumber ? beExceptionNumber : exceptionReference;
51
- }, function (error) {
52
- _this.errorMessage = _this.getErrorMessage(true);
53
- });
54
- };
55
- MarkUnidentifiedPaymentComponent.prototype.trimUnderscore = function (method) {
56
- return this.bulkScaningPaymentService.removeUnwantedString(method, ' ');
57
- };
58
- MarkUnidentifiedPaymentComponent.prototype.saveAndContinue = function () {
59
- this.resetForm([false, false, false, false]);
60
- var investicationField = this.markPaymentUnidentifiedForm.controls.investicationDetail;
61
- var formerror = investicationField.errors;
62
- if (this.markPaymentUnidentifiedForm.dirty && this.markPaymentUnidentifiedForm.valid) {
63
- this.investigationComment = this.markPaymentUnidentifiedForm.controls.investicationDetail.value;
64
- this.viewStatus = 'unidentifiedContinueConfirm';
65
- }
66
- else {
67
- if (investicationField.value == '') {
68
- this.resetForm([true, false, false, false]);
69
- }
70
- if (investicationField.value != '' && investicationField.invalid) {
71
- this.resetForm([false, true, false, false]);
72
- }
73
- if (formerror && formerror.minlength && formerror.minlength.actualLength < 3) {
74
- this.resetForm([false, false, true, false]);
75
- }
76
- if (formerror && formerror.maxlength && formerror.maxlength.actualLength > 255) {
77
- this.resetForm([false, false, false, true]);
78
- }
79
- }
80
- };
81
- MarkUnidentifiedPaymentComponent.prototype.resetForm = function (val) {
82
- this.isInvesticationDetailEmpty = val[0];
83
- this.investicationDetailHasError = val[1];
84
- this.investicationDetailMinHasError = val[2];
85
- this.investicationDetailMaxHasError = val[3];
86
- };
87
- MarkUnidentifiedPaymentComponent.prototype.confirmPayments = function () {
88
- var _this = this;
89
- this.isConfirmButtondisabled = true;
90
- var reason = this.markPaymentUnidentifiedForm.get('investicationDetail').value;
91
- if (!this.isStrategicFixEnable) {
92
- var allocatedRequest = {
93
- allocation_status: 'Unidentified',
94
- payment_allocation_status: {
95
- description: '',
96
- name: 'Unidentified'
97
- },
98
- unidentified_reason: reason,
99
- user_id: this.caseType,
100
- };
101
- var postStrategicBody = new AllocatePaymentRequest(this.ccdReference, this.unassignedRecord, this.caseType, this.exceptionReference, allocatedRequest);
102
- this.bulkScaningPaymentService.postBSWoPGStrategic(postStrategicBody).subscribe(function (res) {
103
- _this.errorMessage = _this.getErrorMessage(false);
104
- var response = JSON.parse(res);
105
- if (response.success) {
106
- _this.gotoCasetransationPage();
107
- }
108
- }, function (error) {
109
- _this.errorMessage = _this.getErrorMessage(true);
110
- _this.isConfirmButtondisabled = false;
111
- });
112
- }
113
- else {
114
- this.bulkScaningPaymentService.patchBSChangeStatus(this.unassignedRecord.dcn_reference, 'PROCESSED').subscribe(function (res1) {
115
- _this.errorMessage = _this.getErrorMessage(false);
116
- var requestBody = new AllocatePaymentRequest(_this.ccdReference, _this.unassignedRecord, _this.siteID, _this.exceptionReference);
117
- _this.paymentViewService.postBSPayments(requestBody).subscribe(function (res2) {
118
- _this.errorMessage = _this.getErrorMessage(false);
119
- var response2 = JSON.parse(res2), reqBody = new UnidentifiedPaymentsRequest(response2['data'].payment_group_reference, response2['data'].reference, reason);
120
- if (response2.success) {
121
- _this.paymentViewService.postBSUnidentifiedPayments(reqBody).subscribe(function (res3) {
122
- _this.errorMessage = _this.getErrorMessage(false);
123
- var response3 = JSON.parse(res3);
124
- if (response3.success) {
125
- _this.gotoCasetransationPage();
126
- }
127
- }, function (error) {
128
- _this.bulkScaningPaymentService.patchBSChangeStatus(_this.unassignedRecord.dcn_reference, 'COMPLETE').subscribe();
129
- _this.errorMessage = _this.getErrorMessage(true);
130
- _this.isConfirmButtondisabled = false;
131
- });
132
- }
133
- }, function (error) {
134
- _this.bulkScaningPaymentService.patchBSChangeStatus(_this.unassignedRecord.dcn_reference, 'COMPLETE').subscribe();
135
- _this.errorMessage = _this.getErrorMessage(true);
136
- _this.isConfirmButtondisabled = false;
137
- });
138
- }, function (error) {
139
- _this.errorMessage = _this.getErrorMessage(true);
140
- _this.isConfirmButtondisabled = false;
141
- });
142
- }
143
- };
144
- MarkUnidentifiedPaymentComponent.prototype.cancelMarkUnidentifiedPayments = function (type) {
145
- if (type && type === 'cancel') {
146
- if (this.markPaymentUnidentifiedForm.get('investicationDetail').value !== "") {
147
- this.viewStatus = 'unidentifiedCancelConfirm';
148
- }
149
- else {
150
- this.gotoCasetransationPage();
151
- }
152
- }
153
- else {
154
- this.viewStatus = 'mainForm';
155
- }
156
- };
157
- MarkUnidentifiedPaymentComponent.prototype.gotoCasetransationPage = function () {
158
- this.paymentLibComponent.viewName = 'case-transactions';
159
- this.paymentLibComponent.TAKEPAYMENT = true;
160
- this.paymentLibComponent.ISBSENABLE = true;
161
- };
162
- MarkUnidentifiedPaymentComponent.prototype.getErrorMessage = function (isErrorExist) {
163
- return {
164
- title: "There is a problem with the service",
165
- body: "Try again later",
166
- showError: isErrorExist
167
- };
168
- };
169
- MarkUnidentifiedPaymentComponent.ctorParameters = function () { return [
170
- { type: FormBuilder },
171
- { type: PaymentViewService },
172
- { type: PaymentLibComponent },
173
- { type: BulkScaningPaymentService }
174
- ]; };
175
- MarkUnidentifiedPaymentComponent.decorators = [
176
- { type: Component, args: [{
177
- selector: 'app-mark-unidentified-payment',
178
- template: "<div class=\"mkpay-unidentified\" >\n <div *ngIf=\"viewStatus === 'mainForm'\">\n <input #myInput type='hidden' class='iFrameDrivenImageValue' value='MARKUNIDENTIFIED'>\n <h1 class=\"heading-large\">Mark payment as unidentified</h1>\n\n <div class=\"govuk-grid-column-full govuk-!-padding-bottom-3\">\n <hr class=\"govuk-section-break govuk-section-break--visible\">\n <table class=\"govuk-table\">\n <thead class=\"govuk-table__head\">\n <tr class=\"govuk-table__row\">\n <td class=\"govuk-table__header\" scope=\"col\">Payment asset number (DCN)</td>\n <td class=\"govuk-table__header\" scope=\"col\">Banked date</td>\n <td class=\"govuk-table__header\" scope=\"col\">Amount</td>\n <td class=\"govuk-table__header\" scope=\"col\">Method</td>\n \n </tr>\n </thead>\n <tbody class=\"govuk-table__body\">\n <tr class=\"govuk-table__row\">\n <td class=\"govuk-table__cell\">{{unassignedRecord.dcn_reference}}</td>\n <td class=\"govuk-table__cell\"> {{unassignedRecord.date_banked | date:'dd MMM yyyy'}}</td>\n <td class=\"govuk-table__cell\"> {{unassignedRecord.amount | currency :'GBP':'symbol':'1.2-2'}}</td>\n <td class=\"capitalize govuk-table__cell\"> {{trimUnderscore(unassignedRecord.payment_method) | lowercase}} </td>\n </tr>\n </tbody>\n </table>\n </div>\n <form [formGroup]=\"markPaymentUnidentifiedForm\" novalidate>\n <div class=\"govuk-form-group\">\n <p class=\"unidentifiedSubText\">\n Give a reason for marking this payment as unidentified.\n <br/>\n Include any investigations you've made.\n </p>\n <label class=\"heading-small\" for=\"investicationDetail\">\n\n </label>\n <textarea class=\"form-control form-control-3-4\" [ngClass]=\"{'inline-error-class': isInvesticationDetailEmpty || investicationDetailHasError || investicationDetailMinHasError || investicationDetailMaxHasError}\" name=\"investicationDetail\" id=\"investicationDetail\" rows=\"5\" formControlName=\"investicationDetail\">\n </textarea>\n <p class=\"inline-error-message\" *ngIf=\"isInvesticationDetailEmpty || investicationDetailHasError || investicationDetailMinHasError || investicationDetailMaxHasError\">\n <span *ngIf=\"isInvesticationDetailEmpty\">Enter a reason for marking this payment as unidentified.</span>\n <span *ngIf=\"investicationDetailHasError\">Enter a vaild reason</span>\n <span *ngIf=\"investicationDetailMinHasError\">Reason should be at least 3 characters.</span>\n <span *ngIf=\"investicationDetailMaxHasError\">Reason should be 255 characters or under.</span>\n </p>\n </div>\n <div class=\"govuk-button--group\">\n <button type=\"submit\" class=\"button\" (click)=\"saveAndContinue()\">\n Continue\n </button>\n <button type=\"button\" class=\"button govuk-button--secondary\" (click)=\"cancelMarkUnidentifiedPayments('cancel')\">\n Cancel\n </button>\n </div>\n </form>\n </div>\n <ng-container *ngIf=\"viewStatus === 'unidentifiedContinueConfirm'\">\n <ccpay-error-banner *ngIf=\"errorMessage.showError\" [errorMessage]=\"errorMessage\"></ccpay-error-banner>\n <input #myInput type='hidden' class='iFrameDrivenImageValue' value='UNIDENTIFIEDCONFIRMATION'>\n <div class=\"govuk-warning-text\">\n <span class=\"govuk-warning-text__icon\" aria-hidden=\"true\">!</span>\n <strong class=\"govuk-warning-text__text\">\n <span class=\"govuk-warning-text__assistive\">Warning</span>\n <h1 class=\"heading-small\"> Are you sure you want to mark this payment as unidentified? </h1>\n \n </strong>\n\n <div class=\"govuk-grid-column-full govuk-!-padding-bottom-3\">\n <hr class=\"govuk-section-break govuk-section-break--visible\">\n <table class=\"govuk-table\">\n <thead class=\"govuk-table__head\">\n <tr class=\"govuk-table__row\">\n <td class=\"govuk-table__header\" scope=\"col\">Investigations</td>\n </tr>\n </thead>\n <tbody class=\"govuk-table__body\">\n <tr class=\"govuk-table__row\">\n <td class=\"govuk-table__cell\">{{investigationComment}}</td>\n </tr>\n </tbody>\n </table>\n </div>\n\n </div>\n <div class=\"govuk-button--group\">\n <button type=\"submit\" class=\"button\" [disabled]=\"isConfirmButtondisabled\" (click)=\"confirmPayments()\">\n Confirm\n </button>\n <button type=\"button\" class=\"button govuk-button--secondary\" (click)=\"cancelMarkUnidentifiedPayments()\">\n Cancel\n </button>\n </div>\n </ng-container>\n <ng-container *ngIf=\"viewStatus === 'unidentifiedCancelConfirm'\">\n <input #myInput type='hidden' class='iFrameDrivenImageValue' value='CANCELUNIDENTIFIED'>\n <div class=\"govuk-warning-text\">\n <span class=\"govuk-warning-text__icon\" aria-hidden=\"true\">!</span>\n <strong class=\"govuk-warning-text__text\">\n <span class=\"govuk-warning-text__assistive\">Warning</span>\n Are you sure you want to cancel?\n </strong>\n </div>\n <div class=\"govuk-button--group\">\n <button type=\"submit\" class=\"button\" (click)=\"gotoCasetransationPage()\">\n Yes\n </button>\n <button type=\"button\" class=\"button govuk-button--secondary\" (click)=\"cancelMarkUnidentifiedPayments()\">\n No\n </button>\n </div>\n </ng-container>\n</div>\n",
179
- styles: [".mkpay-unidentified{margin:10px 0 20px}.mkpay-unidentified .govuk-button--group .govuk-button--secondary{margin-left:10px;background-color:#b3b8bdf2}.mkpay-unidentified .inline-error-class{outline:#a71414 solid 3px;outline-offset:0}.mkpay-unidentified .inline-error-message{color:#a71414;font-weight:700;margin-top:10px}.govuk-grid-column-full{padding:0}.unidentifiedSubText{line-height:45px}.govuk-warning-text__text{font-size:19px}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}"]
180
- },] }
181
- ];
182
- MarkUnidentifiedPaymentComponent.ctorParameters = function () { return [
183
- { type: FormBuilder },
184
- { type: PaymentViewService },
185
- { type: PaymentLibComponent },
186
- { type: BulkScaningPaymentService }
187
- ]; };
188
- MarkUnidentifiedPaymentComponent.propDecorators = {
189
- caseType: [{ type: Input }]
190
- };
191
- return MarkUnidentifiedPaymentComponent;
192
- }());
193
- export { MarkUnidentifiedPaymentComponent };
194
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFyay11bmlkZW50aWZpZWQtcGF5bWVudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AaG1jdHMvY2NwYXktd2ViLWNvbXBvbmVudC8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL21hcmstdW5pZGVudGlmaWVkLXBheW1lbnQvbWFyay11bmlkZW50aWZpZWQtcGF5bWVudC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3RGLE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLGtFQUFrRSxDQUFDO0FBRTNHLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQzNGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBRWpGO0lBd0JFLDBDQUFvQixXQUF3QixFQUNwQyxrQkFBc0MsRUFDdEMsbUJBQXdDLEVBQ3hDLHlCQUFvRDtRQUh4QyxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUNwQyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBQ3RDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDeEMsOEJBQXlCLEdBQXpCLHlCQUF5QixDQUEyQjtRQWhCNUQsK0JBQTBCLEdBQVksS0FBSyxDQUFDO1FBQzVDLGdDQUEyQixHQUFZLEtBQUssQ0FBQztRQUM3QyxtQ0FBOEIsR0FBWSxLQUFLLENBQUM7UUFDaEQsbUNBQThCLEdBQVksS0FBSyxDQUFDO1FBQ2hELGlCQUFZLEdBQUcsSUFBSSxDQUFD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d29MQUF5RDs7aUJBRTFEOzs7Z0JBWlEsV0FBVztnQkFFWCxrQkFBa0I7Z0JBRGxCLG1CQUFtQjtnQkFFcEIseUJBQXlCOzs7MkJBVzlCLEtBQUs7O0lBd0xSLHVDQUFDO0NBQUEsQUE5TEQsSUE4TEM7U0F6TFksZ0NBQWdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzLCBGb3JtQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFBheW1lbnRMaWJDb21wb25lbnQgfSBmcm9tICcuLi8uLi9wYXltZW50LWxpYi5jb21wb25lbnQnO1xuaW1wb3J0IHsgUGF5bWVudFZpZXdTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvcGF5bWVudC12aWV3L3BheW1lbnQtdmlldy5zZXJ2aWNlJztcbmltcG9ydCB7QnVsa1NjYW5pbmdQYXltZW50U2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZXMvYnVsay1zY2FuaW5nLXBheW1lbnQvYnVsay1zY2FuaW5nLXBheW1lbnQuc2VydmljZSc7XG5pbXBvcnQgeyBJQlNQYXltZW50cyB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvSUJTUGF5bWVudHMnO1xuaW1wb3J0IHsgVW5pZGVudGlmaWVkUGF5bWVudHNSZXF1ZXN0IH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9VbmlkZW50aWZpZWRQYXltZW50c1JlcXVlc3QnO1xuaW1wb3J0IHsgQWxsb2NhdGVQYXltZW50UmVxdWVzdCB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvQWxsb2NhdGVQYXltZW50UmVxdWVzdCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1tYXJrLXVuaWRlbnRpZmllZC1wYXltZW50JyxcbiAgdGVtcGxhdGVVcmw6ICcuL21hcmstdW5pZGVudGlmaWVkLXBheW1lbnQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9tYXJrLXVuaWRlbnRpZmllZC1wYXltZW50LmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgTWFya1VuaWRlbnRpZmllZFBheW1lbnRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSBjYXNlVHlwZTogc3RyaW5nO1xuICBtYXJrUGF5bWVudFVuaWRlbnRpZmllZEZvcm06IEZvcm1Hcm91cDtcbiAgdmlld1N0YXR1czogc3RyaW5nO1xuICBjY2RDYXNlTnVtYmVyOiBzdHJpbmc7XG4gIGJzcGF5bWVudGRjbjogc3RyaW5nO1xuICBpc0ludmVzdGljYXRpb25EZXRhaWxFbXB0eTogYm9vbGVhbiA9IGZhbHNlO1xuICBpbnZlc3RpY2F0aW9uRGV0YWlsSGFzRXJyb3I6IGJvb2xlYW4gPSBmYWxzZTtcbiAgaW52ZXN0aWNhdGlvbkRldGFpbE1pbkhhc0Vycm9yOiBib29sZWFuID0gZmFsc2U7XG4gIGludmVzdGljYXRpb25EZXRhaWxNYXhIYXNFcnJvcjogYm9vbGVhbiA9IGZhbHNlO1xuICBlcnJvck1lc3NhZ2UgPSB0aGlzLmdldEVycm9yTWVzc2FnZShmYWxzZSk7XG4gIHVuYXNzaWduZWRSZWNvcmQ6SUJTUGF5bWVudHM7XG4gIHNpdGVJRDogc3RyaW5nID0gbnVsbDtcbiAgaW52ZXN0aWdhdGlvbkNvbW1lbnQ6IHN0cmluZztcbiAgaXNDb25maXJtQnV0dG9uZGlzYWJsZWQ6Qm9vbGVhbiA9IGZhbHNlO1xuICBjY2RSZWZlcmVuY2U6IHN0cmluZyA9IG51bGw7XG4gIGV4Y2VwdGlvblJlZmVyZW5jZTogc3RyaW5nID0gbnVsbDtcbiAgaXNTdHJhdGVnaWNGaXhFbmFibGU6IGJvb2xlYW4gPSB0cnVlO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyLFxuICBwcml2YXRlIHBheW1lbnRWaWV3U2VydmljZTogUGF5bWVudFZpZXdTZXJ2aWNlLFxuICBwcml2YXRlIHBheW1lbnRMaWJDb21wb25lbnQ6IFBheW1lbnRMaWJDb21wb25lbnQsXG4gIHByaXZhdGUgYnVsa1NjYW5pbmdQYXltZW50U2VydmljZTogQnVsa1NjYW5pbmdQYXltZW50U2VydmljZSkgeyB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy52aWV3U3RhdHVzID0gJ21haW5Gb3JtJztcbiAgICB0aGlzLmNjZENhc2VOdW1iZXIgPSB0aGlzLnBheW1lbnRMaWJDb21wb25lbnQuQ0NEX0NBU0VfTlVNQkVSO1xuICAgIHRoaXMuYnNwYXltZW50ZGNuID0gdGhpcy5wYXltZW50TGliQ29tcG9uZW50LmJzcGF5bWVudGRjbjtcbiAgICB0aGlzLmlzU3RyYXRlZ2ljRml4RW5hYmxlID0gdGhpcy5wYXltZW50TGliQ29tcG9uZW50LklTU0ZFTkFCTEU7XG4gICAgdGhpcy5nZXRVbmFzc2lnbmVkUGF5bWVudCgpO1xuXG4gICAgdGhpcy5tYXJrUGF5bWVudFVuaWRlbnRpZmllZEZvcm0gPSB0aGlzLmZvcm1CdWlsZGVyLmdyb3VwKHtcbiAgICAgIGludmVzdGljYXRpb25EZXRhaWw6IG5ldyBGb3JtQ29udHJvbCgnJywgVmFsaWRhdG9ycy5jb21wb3NlKFtcbiAgICAgICAgVmFsaWRhdG9ycy5yZXF1aXJlZCxcbiAgICAgICAgVmFsaWRhdG9ycy5taW5MZW5ndGgoMyksXG4gICAgICAgIFZhbGlkYXRvcnMubWF4TGVuZ3RoKDI1NSksXG4gICAgICAgIFZhbGlkYXRvcnMucGF0dGVybignXihbYS16QS1aMC05XFxcXHMsXFxcXC5dKikkJylcbiAgICAgIF0pKVxuICAgIH0pO1xuICB9XG4gZ2V0VW5hc3NpZ25lZFBheW1lbnQoKSB7XG4gICAgdGhpcy5idWxrU2NhbmluZ1BheW1lbnRTZXJ2aWNlLmdldEJTUGF5bWVudHNCeURDTih0aGlzLmJzcGF5bWVudGRjbikuc3Vic2NyaWJlKFxuICAgICAgdW5hc3NpZ25lZFBheW1lbnRzID0+IHtcbiAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSB0aGlzLmdldEVycm9yTWVzc2FnZShmYWxzZSk7XG4gICAgICAgIHRoaXMudW5hc3NpZ25lZFJlY29yZCA9IHVuYXNzaWduZWRQYXltZW50c1snZGF0YSddLnBheW1lbnRzLmZpbHRlcihwYXltZW50ID0+IHtcbiAgICAgICAgICByZXR1cm4gcGF5bWVudCAmJiBwYXltZW50LmRjbl9yZWZlcmVuY2UgPT0gdGhpcy5ic3BheW1lbnRkY247XG4gICAgICAgIH0pWzBdO1xuICAgICAgICB0aGlzLnNpdGVJRCA9IHVuYXNzaWduZWRQYXltZW50c1snZGF0YSddLnJlc3BvbnNpYmxlX3NlcnZpY2VfaWQ7XG4gICAgICAgIGNvbnN0IGJlQ2NkTnVtYmVyID0gdW5hc3NpZ25lZFBheW1lbnRzWydkYXRhJ10uY2NkX3JlZmVyZW5jZSxcbiAgICAgICAgICBiZUV4Y2VwdGlvbk51bWJlciA9IHVuYXNzaWduZWRQYXltZW50c1snZGF0YSddLmV4Y2VwdGlvbl9yZWNvcmRfcmVmZXJlbmNlLFxuICAgICAgICAgIGV4Y2VwdGlvblJlZmVyZW5jZSA9IGJlQ2NkTnVtYmVyID8gYmVDY2ROdW1iZXIgPT09IHRoaXMuY2NkQ2FzZU51bWJlciA/IG51bGwgOiB0aGlzLmNjZENhc2VOdW1iZXIgOiB0aGlzLmNjZENhc2VOdW1iZXI7XG4gICAgICAgIHRoaXMuY2NkUmVmZXJlbmNlID0gYmVDY2ROdW1iZXIgPyBiZUNjZE51bWJlciA6IG51bGw7XG4gICAgICAgIHRoaXMuZXhjZXB0aW9uUmVmZXJlbmNlID0gYmVFeGNlcHRpb25OdW1iZXIgPyBiZUV4Y2VwdGlvbk51bWJlciA6IGV4Y2VwdGlvblJlZmVyZW5jZTtcbiAgICAgIH0sXG4gICAgICAoZXJyb3I6IGFueSkgPT4ge1xuICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9IHRoaXMuZ2V0RXJyb3JNZXNzYWdlKHRydWUpO1xuICAgICAgfVxuICAgICk7XG4gIH1cbiAgdHJpbVVuZGVyc2NvcmUobWV0aG9kOiBzdHJpbmcpe1xuICAgIHJldHVybiB0aGlzLmJ1bGtTY2FuaW5nUGF5bWVudFNlcnZpY2UucmVtb3ZlVW53YW50ZWRTdHJpbmcobWV0aG9kLCcgJyk7XG4gIH1cbiBzYXZlQW5kQ29udGludWUoKSB7XG4gIHRoaXMucmVzZXRGb3JtKFtmYWxzZSwgZmFsc2UsIGZhbHNlLCBmYWxzZV0pO1xuICBjb25zdCBpbnZlc3RpY2F0aW9uRmllbGQgPSB0aGlzLm1hcmtQYXltZW50VW5pZGVudGlmaWVkRm9ybS5jb250cm9scy5pbnZlc3RpY2F0aW9uRGV0YWlsO1xuICBjb25zdCBmb3JtZXJyb3IgPSBpbnZlc3RpY2F0aW9uRmllbGQuZXJyb3JzO1xuICAgIGlmICh0aGlzLm1hcmtQYXltZW50VW5pZGVudGlmaWVkRm9ybS5kaXJ0eSAmJiB0aGlzLm1hcmtQYXltZW50VW5pZGVudGlmaWVkRm9ybS52YWxpZCkge1xuICAgICAgdGhpcy5pbnZlc3RpZ2F0aW9uQ29tbWVudCA9IHRoaXMubWFya1BheW1lbnRVbmlkZW50aWZpZWRGb3JtLmNvbnRyb2xzLmludmVzdGljYXRpb25EZXRhaWwudmFsdWU7XG4gICAgICB0aGlzLnZpZXdTdGF0dXMgPSAndW5pZGVudGlmaWVkQ29udGludWVDb25maXJtJztcbiAgICB9ZWxzZSB7XG4gICAgICBpZihpbnZlc3RpY2F0aW9uRmllbGQudmFsdWUgPT0gJycgKSB7XG4gICAgICAgIHRoaXMucmVzZXRGb3JtKFt0cnVlLCBmYWxzZSwgZmFsc2UsIGZhbHNlXSk7XG4gICAgICB9XG4gICAgICBpZihpbnZlc3RpY2F0aW9uRmllbGQudmFsdWUgIT0gJycgJiYgaW52ZXN0aWNhdGlvbkZpZWxkLmludmFsaWQgKSB7XG4gICAgICAgIHRoaXMucmVzZXRGb3JtKFtmYWxzZSwgdHJ1ZSwgZmFsc2UsIGZhbHNlXSk7XG4gICAgICB9XG4gICAgICBpZihmb3JtZXJyb3IgJiYgZm9ybWVycm9yLm1pbmxlbmd0aCAmJiBmb3JtZXJyb3IubWlubGVuZ3RoLmFjdHVhbExlbmd0aCA8IDMgKSB7XG4gICAgICAgIHRoaXMucmVzZXRGb3JtKFtmYWxzZSwgZmFsc2UsIHRydWUsIGZhbHNlXSk7XG4gICAgICB9XG4gICAgICBpZihmb3JtZXJyb3IgJiYgZm9ybWVycm9yLm1heGxlbmd0aCAmJiBmb3JtZXJyb3IubWF4bGVuZ3RoLmFjdHVhbExlbmd0aCA+IDI1NSApIHtcbiAgICAgICAgdGhpcy5yZXNldEZvcm0oW2ZhbHNlLCBmYWxzZSwgZmFsc2UsIHRydWVdKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgcmVzZXRGb3JtKHZhbCkge1xuICAgICAgdGhpcy5pc0ludmVzdGljYXRpb25EZXRhaWxFbXB0eSA9IHZhbFswXTtcbiAgICAgIHRoaXMuaW52ZXN0aWNhdGlvbkRldGFpbEhhc0Vycm9yID0gdmFsWzFdO1xuICAgICAgdGhpcy5pbnZlc3RpY2F0aW9uRGV0YWlsTWluSGFzRXJyb3IgPSB2YWxbMl07XG4gICAgICB0aGlzLmludmVzdGljYXRpb25EZXRhaWxNYXhIYXNFcnJvciA9IHZhbFszXTtcbiAgfVxuICBjb25maXJtUGF5bWVudHMoKSB7XG4gICAgdGhpcy5pc0NvbmZpcm1CdXR0b25kaXNhYmxlZCA9IHRydWU7XG4gICAgY29uc3QgcmVhc29uID0gdGhpcy5tYXJrUGF5bWVudFVuaWRlbnRpZmllZEZvcm0uZ2V0KCdpbnZlc3RpY2F0aW9uRGV0YWlsJykudmFsdWU7XG5cbiAgICBpZighdGhpcy5pc1N0cmF0ZWdpY0ZpeEVuYWJsZSkge1xuICAgICAgbGV0IGFsbG9jYXRlZFJlcXVlc3QgPSB7XG4gICAgICAgIGFsbG9jYXRpb25fc3RhdHVzOidVbmlkZW50aWZpZWQnLFxuICAgICAgICBwYXltZW50X2FsbG9jYXRpb25fc3RhdHVzOiB7XG4gICAgICAgICAgZGVzY3JpcHRpb246ICcnLFxuICAgICAgICAgIG5hbWU6ICdVbmlkZW50aWZpZWQnXG4gICAgICAgIH0sXG4gICAgICAgIHVuaWRlbnRpZmllZF9yZWFzb246IHJlYXNvbixcbiAgICAgICAgdXNlcl9pZDogdGhpcy5jYXNlVHlwZSxcbiAgICAgIH1cbiAgICAgIGNvbnN0IHBvc3RTdHJhdGVnaWNCb2R5ID0gbmV3IEFsbG9jYXRlUGF5bWVudFJlcXVlc3RcbiAgICAgICh0aGlzLmNjZFJlZmVyZW5jZSwgdGhpcy51bmFzc2lnbmVkUmVjb3JkLCB0aGlzLmNhc2VUeXBlLCB0aGlzLmV4Y2VwdGlvblJlZmVyZW5jZSwgYWxsb2NhdGVkUmVxdWVzdCk7XG4gICAgICB0aGlzLmJ1bGtTY2FuaW5nUGF5bWVudFNlcnZpY2UucG9zdEJTV29QR1N0cmF0ZWdpYyhwb3N0U3RyYXRlZ2ljQm9keSkuc3Vic2NyaWJlKFxuICAgICAgICByZXMgPT4ge1xuICAgICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gdGhpcy5nZXRFcnJvck1lc3NhZ2UoZmFsc2UpO1xuICAgICAgICAgIGxldCByZXNwb25zZSA9IEpTT04ucGFyc2UocmVzKTtcbiAgICAgICAgICBpZiAocmVzcG9uc2Uuc3VjY2Vzcykge1xuICAgICAgICAgIHRoaXMuZ290b0Nhc2V0cmFuc2F0aW9uUGFnZSgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgKGVycm9yOiBhbnkpID0+IHtcbiAgICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9IHRoaXMuZ2V0RXJyb3JNZXNzYWdlKHRydWUpO1xuICAgICAgICAgIHRoaXMuaXNDb25maXJtQnV0dG9uZGlzYWJsZWQgPSBmYWxzZTtcbiAgICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLmJ1bGtTY2FuaW5nUGF5bWVudFNlcnZpY2UucGF0Y2hCU0NoYW5nZVN0YXR1cyh0aGlzLnVuYXNzaWduZWRSZWNvcmQuZGNuX3JlZmVyZW5jZSwgJ1BST0NFU1NFRCcpLnN1YnNjcmliZShcbiAgICAgICAgICByZXMxID0+IHtcbiAgICAgICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gdGhpcy5nZXRFcnJvck1lc3NhZ2UoZmFsc2UpO1xuICAgICAgICAgICAgY29uc3QgcmVxdWVzdEJvZHkgPSBuZXcgQWxsb2NhdGVQYXltZW50UmVxdWVzdFxuICAgICAgICAgICAgKHRoaXMuY2NkUmVmZXJlbmNlLCB0aGlzLnVuYXNzaWduZWRSZWNvcmQsIHRoaXMuc2l0ZUlELCB0aGlzLmV4Y2VwdGlvblJlZmVyZW5jZSlcbiAgICAgICAgICAgIHRoaXMucGF5bWVudFZpZXdTZXJ2aWNlLnBvc3RCU1BheW1lbnRzKHJlcXVlc3RCb2R5KS5zdWJzY3JpYmUoXG4gICAgICAgICAgICAgIHJlczIgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gdGhpcy5nZXRFcnJvck1lc3NhZ2UoZmFsc2UpO1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlc3BvbnNlMiA9IEpTT04ucGFyc2UocmVzMiksXG4gICAgICAgICAgICAgICAgICByZXFCb2R5ID0gbmV3IFVuaWRlbnRpZmllZFBheW1lbnRzUmVxdWVzdFxuICAgICAgICAgICAgICAgICAgKHJlc3BvbnNlMlsnZGF0YSddLnBheW1lbnRfZ3JvdXBfcmVmZXJlbmNlLCByZXNwb25zZTJbJ2RhdGEnXS5yZWZlcmVuY2UsIHJlYXNvbik7XG4gICAgICAgICAgICAgICAgaWYgKHJlc3BvbnNlMi5zdWNjZXNzKSB7XG4gICAgICAgICAgICAgICAgICB0aGlzLnBheW1lbnRWaWV3U2VydmljZS5wb3N0QlNVbmlkZW50aWZpZWRQYXltZW50cyhyZXFCb2R5KS5zdWJzY3JpYmUoXG4gICAgICAgICAgICAgICAgICAgIHJlczMgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gdGhpcy5nZXRFcnJvck1lc3NhZ2UoZmFsc2UpO1xuICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlc3BvbnNlMyA9IEpTT04ucGFyc2UocmVzMyk7XG4gICAgICAgICAgICAgICAgICAgICAgaWYgKHJlc3BvbnNlMy5zdWNjZXNzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmdvdG9DYXNldHJhbnNhdGlvblBhZ2UoKTtcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIChlcnJvcjogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgdGhpcy5idWxrU2NhbmluZ1BheW1lbnRTZXJ2aWNlLnBhdGNoQlNDaGFuZ2VTdGF0dXModGhpcy51bmFzc2lnbmVkUmVjb3JkLmRjbl9yZWZlcmVuY2UsICdDT01QTEVURScpLnN1YnNjcmliZSgpO1xuICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gdGhpcy5nZXRFcnJvck1lc3NhZ2UodHJ1ZSk7XG4gICAgICAgICAgICAgICAgICAgICAgdGhpcy5pc0NvbmZpcm1CdXR0b25kaXNhYmxlZCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgKGVycm9yOiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmJ1bGtTY2FuaW5nUGF5bWVudFNlcnZpY2UucGF0Y2hCU0NoYW5nZVN0YXR1cyh0aGlzLnVuYXNzaWduZWRSZWNvcmQuZGNuX3JlZmVyZW5jZSwgJ0NPTVBMRVRFJykuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSB0aGlzLmdldEVycm9yTWVzc2FnZSh0cnVlKTtcbiAgICAgICAgICAgICAgICB0aGlzLmlzQ29uZmlybUJ1dHRvbmRpc2FibGVkID0gZmFsc2U7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfSxcbiAgICAgICAgICAoZXJyb3I6IGFueSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSB0aGlzLmdldEVycm9yTWVzc2FnZSh0cnVlKTtcbiAgICAgICAgICAgIHRoaXMuaXNDb25maXJtQnV0dG9uZGlzYWJsZWQgPSBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgICk7XG4gICAgICB9XG4gIH1cbiAgY2FuY2VsTWFya1VuaWRlbnRpZmllZFBheW1lbnRzKHR5cGU/OnN0cmluZyl7XG4gICAgaWYodHlwZSAmJiB0eXBlID09PSAnY2FuY2VsJykge1xuICAgICAgICBpZih0aGlzLm1hcmtQYXltZW50VW5pZGVudGlmaWVkRm9ybS5nZXQoJ2ludmVzdGljYXRpb25EZXRhaWwnKS52YWx1ZSE9PVwiXCIpe1xuICAgICAgICAgIHRoaXMudmlld1N0YXR1cyA9ICd1bmlkZW50aWZpZWRDYW5jZWxDb25maXJtJztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLmdvdG9DYXNldHJhbnNhdGlvblBhZ2UoKTtcbiAgICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnZpZXdTdGF0dXMgPSAnbWFpbkZvcm0nO1xuICAgIH1cbiAgfVxuXG4gIGdvdG9DYXNldHJhbnNhdGlvblBhZ2UoKSB7XG4gICAgdGhpcy5wYXltZW50TGliQ29tcG9uZW50LnZpZXdOYW1lID0gJ2Nhc2UtdHJhbnNhY3Rpb25zJztcbiAgICB0aGlzLnBheW1lbnRMaWJDb21wb25lbnQuVEFLRVBBWU1FTlQgPSB0cnVlO1xuICAgIHRoaXMucGF5bWVudExpYkNvbXBvbmVudC5JU0JTRU5BQkxFID0gdHJ1ZTtcbiAgfVxuICBnZXRFcnJvck1lc3NhZ2UoaXNFcnJvckV4aXN0KSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHRpdGxlOiBcIlRoZXJlIGlzIGEgcHJvYmxlbSB3aXRoIHRoZSBzZXJ2aWNlXCIsXG4gICAgICBib2R5OiBcIlRyeSBhZ2FpbiBsYXRlclwiLFxuICAgICAgc2hvd0Vycm9yOiBpc0Vycm9yRXhpc3RcbiAgICB9O1xuICB9XG59XG4iXX0=
@@ -1,249 +0,0 @@
1
- import { Component, Input } from '@angular/core';
2
- import { FormBuilder, FormGroup, Validators, FormControl } from '@angular/forms';
3
- import { PaymentLibComponent } from '../../payment-lib.component';
4
- import { BulkScaningPaymentService } from '../../services/bulk-scaning-payment/bulk-scaning-payment.service';
5
- import { UnsolicitedPaymentsRequest } from '../../interfaces/UnsolicitedPaymentsRequest';
6
- import { PaymentViewService } from '../../services/payment-view/payment-view.service';
7
- import { AllocatePaymentRequest } from '../../interfaces/AllocatePaymentRequest';
8
- var MarkUnsolicitedPaymentComponent = /** @class */ (function () {
9
- function MarkUnsolicitedPaymentComponent(formBuilder, paymentViewService, paymentLibComponent, bulkScaningPaymentService) {
10
- this.formBuilder = formBuilder;
11
- this.paymentViewService = paymentViewService;
12
- this.paymentLibComponent = paymentLibComponent;
13
- this.bulkScaningPaymentService = bulkScaningPaymentService;
14
- this.reasonHasError = false;
15
- this.isReasonEmpty = false;
16
- this.reasonMinHasError = false;
17
- this.reasonMaxHasError = false;
18
- this.responsibleOfficeHasError = false;
19
- this.isResponsibleOfficeEmpty = false;
20
- this.errorMessage = this.getErrorMessage(false);
21
- this.siteID = null;
22
- this.isConfirmButtondisabled = false;
23
- this.isContinueButtondisabled = false;
24
- this.ccdReference = null;
25
- this.exceptionReference = null;
26
- this.isStrategicFixEnable = true;
27
- }
28
- MarkUnsolicitedPaymentComponent.prototype.ngOnInit = function () {
29
- var _this = this;
30
- this.resetForm([false, false, false, false, false, false], 'all');
31
- this.viewStatus = 'mainForm';
32
- this.ccdCaseNumber = this.paymentLibComponent.CCD_CASE_NUMBER;
33
- this.bspaymentdcn = this.paymentLibComponent.bspaymentdcn;
34
- this.isStrategicFixEnable = this.paymentLibComponent.ISSFENABLE;
35
- this.getUnassignedPayment();
36
- this.paymentViewService.getSiteID().subscribe(function (siteids) {
37
- _this.isContinueButtondisabled = false;
38
- _this.errorMessage = _this.getErrorMessage(false);
39
- _this.siteIDList = JSON.parse(siteids);
40
- }, function (err) {
41
- window.scrollTo(0, 0);
42
- _this.isContinueButtondisabled = true;
43
- _this.errorMessage = _this.getErrorMessage(true);
44
- });
45
- this.markPaymentUnsolicitedForm = this.formBuilder.group({
46
- reason: new FormControl('', Validators.compose([
47
- Validators.required,
48
- Validators.minLength(3),
49
- Validators.maxLength(255),
50
- Validators.pattern('^([a-zA-Z0-9\\s,\\.]*)$')
51
- ])),
52
- responsibleOffice: new FormControl('', Validators.compose([
53
- Validators.required,
54
- Validators.pattern('^([a-zA-Z0-9\\s\\n,\\.-:]*)$')
55
- ])),
56
- responsiblePerson: new FormControl(''),
57
- emailId: new FormControl('')
58
- });
59
- };
60
- MarkUnsolicitedPaymentComponent.prototype.trimUnderscore = function (method) {
61
- return this.bulkScaningPaymentService.removeUnwantedString(method, ' ');
62
- };
63
- MarkUnsolicitedPaymentComponent.prototype.confirmPayments = function () {
64
- var _this = this;
65
- this.isConfirmButtondisabled = true;
66
- var controls = this.markPaymentUnsolicitedForm.controls;
67
- if (!this.isStrategicFixEnable) {
68
- var allocatedRequest = {
69
- allocation_status: 'Transferred',
70
- payment_allocation_status: {
71
- description: '',
72
- name: 'Transferred'
73
- },
74
- unidentified_reason: controls.reason.value,
75
- receiving_office: this.selectedSiteId,
76
- user_id: this.caseType,
77
- };
78
- var postStrategicBody = new AllocatePaymentRequest(this.ccdReference, this.unassignedRecord, this.caseType, this.exceptionReference, allocatedRequest);
79
- this.bulkScaningPaymentService.postBSWoPGStrategic(postStrategicBody).subscribe(function (res) {
80
- _this.errorMessage = _this.getErrorMessage(false);
81
- var response = JSON.parse(res);
82
- if (response.success) {
83
- _this.gotoCasetransationPage();
84
- }
85
- }, function (error) {
86
- _this.errorMessage = _this.getErrorMessage(true);
87
- _this.isConfirmButtondisabled = false;
88
- });
89
- }
90
- else {
91
- // controls.responsibleOffice.setValue('P219');
92
- this.bulkScaningPaymentService.patchBSChangeStatus(this.unassignedRecord.dcn_reference, 'PROCESSED').subscribe(function (res1) {
93
- _this.errorMessage = _this.getErrorMessage(false);
94
- var response1 = JSON.parse(res1), requestBody = new AllocatePaymentRequest(_this.ccdReference, _this.unassignedRecord, _this.siteID, _this.exceptionReference);
95
- _this.paymentViewService.postBSPayments(requestBody).subscribe(function (res2) {
96
- _this.errorMessage = _this.getErrorMessage(false);
97
- var response2 = JSON.parse(res2), reqBody = new UnsolicitedPaymentsRequest(response2['data'].payment_group_reference, response2['data'].reference, controls.reason.value, _this.selectedSiteId, controls.responsiblePerson.value, controls.emailId.value);
98
- if (response2.success) {
99
- _this.paymentViewService.postBSUnsolicitedPayments(reqBody).subscribe(function (res3) {
100
- _this.errorMessage = _this.getErrorMessage(false);
101
- var response3 = JSON.parse(res3);
102
- if (response3.success) {
103
- _this.gotoCasetransationPage();
104
- }
105
- }, function (error) {
106
- _this.bulkScaningPaymentService.patchBSChangeStatus(_this.unassignedRecord.dcn_reference, 'COMPLETE').subscribe();
107
- _this.errorMessage = _this.getErrorMessage(true);
108
- _this.isConfirmButtondisabled = false;
109
- });
110
- }
111
- }, function (error) {
112
- _this.bulkScaningPaymentService.patchBSChangeStatus(_this.unassignedRecord.dcn_reference, 'COMPLETE').subscribe();
113
- _this.errorMessage = _this.getErrorMessage(true);
114
- _this.isConfirmButtondisabled = false;
115
- });
116
- }, function (error) {
117
- _this.errorMessage = _this.getErrorMessage(true);
118
- _this.isConfirmButtondisabled = false;
119
- });
120
- }
121
- };
122
- MarkUnsolicitedPaymentComponent.prototype.saveAndContinue = function () {
123
- this.resetForm([false, false, false, false, false, false], 'all');
124
- var formerror = this.markPaymentUnsolicitedForm.controls.reason.errors;
125
- var reasonField = this.markPaymentUnsolicitedForm.controls.reason;
126
- //const officeIdField = this.selectedSiteId;
127
- var officeIdField = this.markPaymentUnsolicitedForm.controls.responsibleOffice;
128
- if (this.markPaymentUnsolicitedForm.dirty && this.markPaymentUnsolicitedForm.valid) {
129
- var controls = this.markPaymentUnsolicitedForm.controls;
130
- this.emailId = controls.emailId.value;
131
- this.responsibleOffice = officeIdField.value;
132
- this.responsiblePerson = controls.responsiblePerson.value;
133
- this.reason = controls.reason.value;
134
- this.viewStatus = 'unsolicitedContinueConfirm';
135
- }
136
- else {
137
- if (reasonField.value == '') {
138
- this.resetForm([true, false, false, false, false, false], 'reason');
139
- }
140
- if (reasonField.value != '' && this.markPaymentUnsolicitedForm.controls.reason.invalid) {
141
- this.resetForm([false, true, false, false, false, false], 'reason');
142
- }
143
- if (formerror && formerror.minlength && formerror.minlength.actualLength < 3) {
144
- this.resetForm([false, false, true, false, false, false], 'reason');
145
- }
146
- if (formerror && formerror.maxlength && formerror.maxlength.actualLength > 255) {
147
- this.resetForm([false, false, false, true, false, false], 'reason');
148
- }
149
- if (officeIdField.value == '') {
150
- this.resetForm([false, false, false, false, true, false], 'responsibleOffice');
151
- }
152
- if (officeIdField.value != '' && officeIdField.invalid) {
153
- this.resetForm([false, false, false, false, false, true], 'responsibleOffice');
154
- }
155
- }
156
- };
157
- MarkUnsolicitedPaymentComponent.prototype.resetForm = function (val, field) {
158
- if (field === 'reason' || field === 'all') {
159
- this.isReasonEmpty = val[0];
160
- this.reasonHasError = val[1];
161
- this.reasonMinHasError = val[2];
162
- this.reasonMaxHasError = val[3];
163
- }
164
- if (field === 'responsibleOffice' || field === 'all') {
165
- this.isResponsibleOfficeEmpty = val[4];
166
- this.responsibleOfficeHasError = val[5];
167
- }
168
- };
169
- MarkUnsolicitedPaymentComponent.prototype.cancelMarkUnsolicitedPayments = function (type) {
170
- if (type && type === 'cancel') {
171
- if (this.checkingFormValue()) {
172
- this.viewStatus = 'unsolicitedCancelConfirm';
173
- }
174
- else {
175
- this.gotoCasetransationPage();
176
- }
177
- }
178
- else {
179
- this.markPaymentUnsolicitedForm.controls.responsibleOffice.setValue('');
180
- this.viewStatus = 'mainForm';
181
- }
182
- };
183
- MarkUnsolicitedPaymentComponent.prototype.checkingFormValue = function () {
184
- var formFields = this.markPaymentUnsolicitedForm.value;
185
- var valueExists = false;
186
- for (var field in formFields) {
187
- if (formFields.hasOwnProperty(field) && formFields[field] !== "") {
188
- valueExists = true;
189
- break;
190
- }
191
- }
192
- return valueExists;
193
- };
194
- MarkUnsolicitedPaymentComponent.prototype.gotoCasetransationPage = function () {
195
- this.paymentLibComponent.viewName = 'case-transactions';
196
- this.paymentLibComponent.TAKEPAYMENT = true;
197
- this.paymentLibComponent.ISBSENABLE = true;
198
- };
199
- MarkUnsolicitedPaymentComponent.prototype.getUnassignedPayment = function () {
200
- var _this = this;
201
- this.bulkScaningPaymentService.getBSPaymentsByDCN(this.bspaymentdcn).subscribe(function (unassignedPayments) {
202
- _this.unassignedRecord = unassignedPayments['data'].payments.filter(function (payment) {
203
- return payment && payment.dcn_reference == _this.bspaymentdcn;
204
- })[0];
205
- _this.siteID = unassignedPayments['data'].responsible_service_id;
206
- var beCcdNumber = unassignedPayments['data'].ccd_reference, beExceptionNumber = unassignedPayments['data'].exception_record_reference, exceptionReference = beCcdNumber ? beCcdNumber === _this.ccdCaseNumber ? null : _this.ccdCaseNumber : _this.ccdCaseNumber;
207
- _this.ccdReference = beCcdNumber ? beCcdNumber : null;
208
- _this.exceptionReference = beExceptionNumber ? beExceptionNumber : exceptionReference;
209
- }, function (error) {
210
- _this.errorMessage = _this.getErrorMessage(true);
211
- });
212
- };
213
- MarkUnsolicitedPaymentComponent.prototype.getErrorMessage = function (isErrorExist) {
214
- return {
215
- title: "Something went wrong.",
216
- body: "Please try again later.",
217
- showError: isErrorExist
218
- };
219
- };
220
- MarkUnsolicitedPaymentComponent.prototype.selectchange = function (args) {
221
- this.selectedSiteId = args.target.value;
222
- this.selectedSiteName = args.target.options[args.target.selectedIndex].text;
223
- };
224
- MarkUnsolicitedPaymentComponent.ctorParameters = function () { return [
225
- { type: FormBuilder },
226
- { type: PaymentViewService },
227
- { type: PaymentLibComponent },
228
- { type: BulkScaningPaymentService }
229
- ]; };
230
- MarkUnsolicitedPaymentComponent.decorators = [
231
- { type: Component, args: [{
232
- selector: 'app-mark-unsolicited-payment',
233
- template: "<div class=\"mkpay-unidentified\">\n <div *ngIf=\"viewStatus === 'mainForm'\">\n <ccpay-error-banner *ngIf=\"errorMessage.showError\" [errorMessage]=\"errorMessage\"></ccpay-error-banner>\n <h1 class=\"heading-large\">Mark payment as transferred</h1>\n <div class=\"govuk-grid-column-full govuk-!-padding-bottom-3\">\n <hr class=\"govuk-section-break govuk-section-break--visible\">\n <table class=\"govuk-table\">\n <thead class=\"govuk-table__head\">\n <tr class=\"govuk-table__row\">\n <td class=\"govuk-table__header\" scope=\"col\">Payment asset number (DCN)</td>\n <td class=\"govuk-table__header\" scope=\"col\">Banked date</td>\n <td class=\"govuk-table__header\" scope=\"col\">Amount</td>\n <td class=\"govuk-table__header\" scope=\"col\">Method</td>\n </tr>\n </thead>\n <tbody class=\"govuk-table__body\">\n <tr class=\"govuk-table__row\">\n <td class=\"govuk-table__cell\">{{unassignedRecord.dcn_reference}}</td>\n <td class=\"govuk-table__cell\"> {{unassignedRecord.date_banked | date:'dd MMM yyyy'}}</td>\n <td class=\"govuk-table__cell\"> {{unassignedRecord.amount | currency :'GBP':'symbol':'1.2-2'}}</td>\n <td class=\"capitalize govuk-table__cell\"> {{trimUnderscore(unassignedRecord.payment_method) | lowercase}} </td>\n </tr>\n </tbody>\n </table>\n </div>\n \n <form [formGroup]=\"markPaymentUnsolicitedForm\" novalidate>\n <input #myInput type='hidden' class='iFrameDrivenImageValue' value='MARKTRANSFERRED'>\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label custom-govuk-label custom-govuk-label\" for=\"reason\">\n Reason for payment being marked as transferred \n </label>\n <textarea class=\"form-control form-control-3-4\" [ngClass]=\"{'inline-error-class': reasonHasError || reasonMinHasError || reasonMaxHasError}\" name=\"reason\" id=\"reason\" rows=\"5\" formControlName=\"reason\">\n </textarea>\n <p class=\"inline-error-message\" *ngIf=\"isReasonEmpty || reasonHasError || reasonMinHasError || reasonMaxHasError\">\n <span *ngIf=\"isReasonEmpty\">Enter a reason for marking this payment as transferred.</span>\n <span *ngIf=\"reasonHasError\">Enter a valid reason</span>\n <span *ngIf=\"reasonMinHasError\">Reason should be at least 3 characters.</span>\n <span *ngIf=\"reasonMaxHasError\">Reason should be 255 characters or under.</span>\n </p>\n </div>\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label custom-govuk-label\" for=\"responsibleOffice\">\n Receiving Site ID (Receiving court/Bulk centre site ID) \n </label>\n <select class=\"form-control short-input\" id=\"responsibleOffice\" formControlName=\"responsibleOffice\" (change)=\"selectchange($event)\">\n <option value=\"\" selected='selected'>Please select</option>\n <option *ngFor=\"let siteID of siteIDList;\" value=\"{{siteID.siteId}}\">{{siteID.siteName}} ({{siteID.siteId}})</option>\n </select>\n <p class=\"inline-error-message\" *ngIf=\"isResponsibleOfficeEmpty || responsibleOfficeHasError\">\n <span *ngIf=\"isResponsibleOfficeEmpty\">Please select Receiving Site ID</span>\n <span *ngIf=\"responsibleOfficeHasError\">Please select a valid Receiving Site ID</span>\n </p>\n </div>\n <div class=\"govuk-button--group\">\n <button type=\"submit\" [disabled]=\"isContinueButtondisabled\" class=\"button\" (click)=\"saveAndContinue()\">\n Confirm\n </button>\n <button type=\"button\" class=\"button govuk-button--secondary\" (click)=\"cancelMarkUnsolicitedPayments('cancel')\">\n Cancel\n </button>\n </div>\n </form>\n \n</div>\n <ng-container *ngIf=\"viewStatus === 'unsolicitedContinueConfirm'\">\n <ccpay-error-banner *ngIf=\"errorMessage.showError\" [errorMessage]=\"errorMessage\"></ccpay-error-banner>\n <div class=\"govuk-warning-text\">\n <span class=\"govuk-warning-text__icon\" aria-hidden=\"true\">!</span>\n <strong class=\"govuk-warning-text__text\">\n <span class=\"govuk-warning-text__assistive\">Warning</span>\n <h1 class=\"heading-small\"> Are you sure you want to mark this payment as transferred? </h1>\n </strong>\n <input #myInput type='hidden' class='iFrameDrivenImageValue' value='TRANSFERREDCONFIRMATION'>\n <div class=\"govuk-grid-column-full govuk-!-padding-bottom-3\">\n <hr class=\"govuk-section-break govuk-section-break--visible\">\n <table class=\"govuk-table\">\n <thead class=\"govuk-table__head\">\n <tr class=\"govuk-table__row\">\n <td class=\"govuk-table__header\" scope=\"col\">Reason</td>\n <td class=\"govuk-table__header\" scope=\"col\">Receiving site ID</td>\n </tr>\n </thead>\n <tbody class=\"govuk-table__body\">\n <tr class=\"govuk-table__row\">\n <td class=\"govuk-table__cell\">{{reason}}</td>\n <td class=\"govuk-table__cell\">{{selectedSiteName}}</td>\n </tr>\n </tbody>\n </table>\n </div>\n\n </div>\n <div class=\"govuk-button--group\">\n <button type=\"submit\" class=\"button\" [disabled]=\"isConfirmButtondisabled\" (click)=\"confirmPayments()\">\n Confirm\n </button>\n <button type=\"button\" class=\"button govuk-button--secondary\" (click)=\"cancelMarkUnsolicitedPayments()\">\n Cancel\n </button>\n </div>\n </ng-container>\n <ng-container *ngIf=\"viewStatus === 'unsolicitedCancelConfirm'\">\n <input #myInput type='hidden' class='iFrameDrivenImageValue' value='CANCELTRANSFERRED'>\n <div class=\"govuk-warning-text\">\n <span class=\"govuk-warning-text__icon\" aria-hidden=\"true\">!</span>\n <strong class=\"govuk-warning-text__text\">\n <span class=\"govuk-warning-text__assistive\">Warning</span>\n Are you sure you want to cancel?\n </strong>\n </div>\n <div class=\"govuk-button--group\">\n <button type=\"submit\" class=\"button\" (click)=\"gotoCasetransationPage()\">\n Yes\n </button>\n <button type=\"button\" class=\"button govuk-button--secondary\" (click)=\"cancelMarkUnsolicitedPayments()\">\n No\n </button>\n </div>\n </ng-container>\n</div>",
234
- styles: [".mkpay-unidentified{margin:10px 0 20px}.mkpay-unidentified .govuk-button--secondary{margin-left:10px;background-color:#b3b8bdf2}.mkpay-unidentified .inline-error-class{outline:#a71414 solid 3px;outline-offset:0}.mkpay-unidentified .inline-error-message{color:#a71414;font-weight:700;margin-top:10px}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.custom-govuk-label,.govuk-warning-text__text{font-size:19px}#responsibleOffice{color:#000;width:75%;font-weight:#fff}select option{background:#fff}"]
235
- },] }
236
- ];
237
- MarkUnsolicitedPaymentComponent.ctorParameters = function () { return [
238
- { type: FormBuilder },
239
- { type: PaymentViewService },
240
- { type: PaymentLibComponent },
241
- { type: BulkScaningPaymentService }
242
- ]; };
243
- MarkUnsolicitedPaymentComponent.propDecorators = {
244
- caseType: [{ type: Input }]
245
- };
246
- return MarkUnsolicitedPaymentComponent;
247
- }());
248
- export { MarkUnsolicitedPaymentComponent };
249
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFyay11bnNvbGljaXRlZC1wYXltZW50LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BobWN0cy9jY3BheS13ZWItY29tcG9uZW50LyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvbWFyay11bnNvbGljaXRlZC1wYXltZW50L21hcmstdW5zb2xpY2l0ZWQtcGF5bWVudC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGtFQUFrRSxDQUFDO0FBRTdHLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBSWpGO0lBaUNFLHlDQUFvQixXQUF3QixFQUNwQyxrQkFBc0MsRUFDdEMsbUJBQXdDLEVBQ3hDLHlCQUFvRDtRQUh4QyxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUNwQyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBQ3RDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDeEMsOEJBQXlCLEdBQXpCLHlCQUF5QixDQUEyQjtRQTNCNUQsbUJBQWMsR0FBWSxLQUFLLENBQUM7UUFDaEMsa0JBQWEsR0FBWSxLQUFLLENBQUM7UUFDL0Isc0JBQWlCLEdBQVksS0FBSyxDQUFDO1FBQ25DLHNCQUFpQixHQUFZLEtBQUssQ0FBQztRQUNuQyw4QkFBeUIsR0FBWSxLQUFLLENBQUM7UUFD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RUFBQyxJQUFJLEVBQUMsS0FBSyxFQUFDLEtBQUssRUFBQyxLQUFLLEVBQUMsS0FBSyxDQUFDLEVBQUUsUUFBUSxDQUFDLENBQUM7YUFDaEU7WUFDRCxJQUFHLFNBQVMsSUFBSSxTQUFTLENBQUMsU0FBUyxJQUFJLFNBQVMsQ0FBQyxTQUFTLENBQUMsWUFBWSxHQUFHLENBQUMsRUFBRztnQkFDNUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBQyxLQUFLLEVBQUMsSUFBSSxFQUFDLEtBQUssRUFBQyxLQUFLLEVBQUMsS0FBSyxDQUFDLEVBQUUsUUFBUSxDQUFDLENBQUM7YUFDaEU7WUFDRCxJQUFHLFNBQVMsSUFBSSxTQUFTLENBQUMsU0FBUyxJQUFJLFNBQVMsQ0FBQyxTQUFTLENBQUMsWUFBWSxHQUFHLEdBQUcsRUFBRztnQkFDOUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBQyxLQUFLLEVBQUMsS0FBSyxFQUFDLElBQUksRUFBQyxLQUFLLEVBQUMsS0FBSyxDQUFDLEVBQUUsUUFBUSxDQUFDLENBQUM7YUFDaEU7WUFDRCxJQUFHLGFBQWEsQ0FBQyxLQUFLLElBQUksRUFBRSxFQUFFO2dCQUM1QixJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFDLEtBQUssRUFBQyxLQUFLLEVBQUMsS0FBSyxFQUFDLElBQUksRUFBQyxLQUFLLENBQUMsRUFBRSxtQkFBbUIsQ0FBQyxDQUFDO2FBQzNFO1lBQ0QsSUFBRyxhQUFhLENBQUMsS0FBSyxJQUFJLEVBQUUsSUFBSSxhQUFhLENBQUMsT0FBTyxFQUFFO2dCQUNyRCxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFDLEtBQUssRUFBQyxLQUFLLEVBQUMsS0FBSyxFQUFDLEtBQUssRUFBQyxJQUFJLENBQUMsRUFBQyxtQkFBbUIsQ0FBQyxDQUFDO2FBQzFFO1NBQ0Y7SUFDSCxDQUFDO0lBQ0QsbURBQVMsR0FBVCxVQUFVLEdBQUcsRUFBRSxLQUFLO1FBQ2xCLElBQUcsS0FBSyxLQUFHLFFBQVEsSUFBSSxL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T25Jbml0LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycywgRm9ybUNvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBQYXltZW50TGliQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vcGF5bWVudC1saWIuY29tcG9uZW50JztcbmltcG9ydCB7IEJ1bGtTY2FuaW5nUGF5bWVudFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9idWxrLXNjYW5pbmctcGF5bWVudC9idWxrLXNjYW5pbmctcGF5bWVudC5zZXJ2aWNlJztcbmltcG9ydCB7IElCU1BheW1lbnRzIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9JQlNQYXltZW50cyc7XG5pbXBvcnQgeyBVbnNvbGljaXRlZFBheW1lbnRzUmVxdWVzdCB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvVW5zb2xpY2l0ZWRQYXltZW50c1JlcXVlc3QnO1xuaW1wb3J0IHsgUGF5bWVudFZpZXdTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvcGF5bWVudC12aWV3L3BheW1lbnQtdmlldy5zZXJ2aWNlJztcbmltcG9ydCB7IEFsbG9jYXRlUGF5bWVudFJlcXVlc3QgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL0FsbG9jYXRlUGF5bWVudFJlcXVlc3QnO1xuaW1wb3J0IHsgRXJyb3JIYW5kbGVyU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3NoYXJlZC9lcnJvci1oYW5kbGVyLnNlcnZpY2UnO1xuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1tYXJrLXVuc29saWNpdGVkLXBheW1lbnQnLFxuICB0ZW1wbGF0ZVVybDogJy4vbWFyay11bnNvbGljaXRlZC1wYXltZW50LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbWFyay11bnNvbGljaXRlZC1wYXltZW50LmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgTWFya1Vuc29saWNpdGVkUGF5bWVudENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIGNhc2VUeXBlOiBzdHJpbmc7XG4gIG1hcmtQYXltZW50VW5zb2xpY2l0ZWRGb3JtOiBGb3JtR3JvdXA7XG4gIHZpZXdTdGF0dXM6IHN0cmluZztcbiAgcmVhc29uSGFzRXJyb3I6IGJvb2xlYW4gPSBmYWxzZTtcbiAgaXNSZWFzb25FbXB0eTogYm9vbGVhbiA9IGZhbHNlO1xuICByZWFzb25NaW5IYXNFcnJvcjogYm9vbGVhbiA9IGZhbHNlO1xuICByZWFzb25NYXhIYXNFcnJvcjogYm9vbGVhbiA9IGZhbHNlO1xuICByZXNwb25zaWJsZU9mZmljZUhhc0Vycm9yOiBib29sZWFuID0gZmFsc2U7XG4gIGlzUmVzcG9uc2libGVPZmZpY2VFbXB0eTogYm9vbGVhbiA9IGZhbHNlO1xuICBlcnJvck1lc3NhZ2UgPSB0aGlzLmdldEVycm9yTWVzc2FnZShmYWxzZSk7XG4gIGNjZENhc2VOdW1iZXI6IHN0cmluZztcbiAgYnNwYXltZW50ZGNuOiBzdHJpbmc7XG4gIHVuYXNzaWduZWRSZWNvcmQ6IElCU1BheW1lbnRzO1xuICBzaXRlSUQ6IHN0cmluZyA9IG51bGw7XG4gIHJlYXNvbjogc3RyaW5nO1xuICByZXNwb25zaWJsZVBlcnNvbjogc3RyaW5nO1xuICByZXNwb25zaWJsZU9mZmljZTogc3RyaW5nO1xuICBlbWFpbElkOiBzdHJpbmc7XG4gIGlzQ29uZmlybUJ1dHRvbmRpc2FibGVkOiBCb29sZWFuID0gZmFsc2U7XG4gIGlzQ29udGludWVCdXR0b25kaXNhYmxlZDogQm9vbGVhbiA9IGZhbHNlO1xuICBjY2RSZWZlcmVuY2U6IHN0cmluZyA9IG51bGw7XG4gIGV4Y2VwdGlvblJlZmVyZW5jZTogc3RyaW5nID0gbnVsbDtcbiAgc2VsZWN0ZWRTaXRlSWQ6IHN0cmluZztcbiAgc2VsZWN0ZWRTaXRlTmFtZTogc3RyaW5nO1xuICBpc1N0cmF0ZWdpY0ZpeEVuYWJsZTogYm9vbGVhbiA9IHRydWU7XG4gIHNpdGVJRExpc3Q7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBmb3JtQnVpbGRlcjogRm9ybUJ1aWxkZXIsXG4gIHByaXZhdGUgcGF5bWVudFZpZXdTZXJ2aWNlOiBQYXltZW50Vmlld1NlcnZpY2UsXG4gIHByaXZhdGUgcGF5bWVudExpYkNvbXBvbmVudDogUGF5bWVudExpYkNvbXBvbmVudCxcbiAgcHJpdmF0ZSBidWxrU2NhbmluZ1BheW1lbnRTZXJ2aWNlOiBCdWxrU2NhbmluZ1BheW1lbnRTZXJ2aWNlKSB7IH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnJlc2V0Rm9ybShbZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2VdLCAnYWxsJyk7XG4gICAgdGhpcy52aWV3U3RhdHVzID0gJ21haW5Gb3JtJztcbiAgICB0aGlzLmNjZENhc2VOdW1iZXIgPSB0aGlzLnBheW1lbnRMaWJDb21wb25lbnQuQ0NEX0NBU0VfTlVNQkVSO1xuICAgIHRoaXMuYnNwYXltZW50ZGNuID0gdGhpcy5wYXltZW50TGliQ29tcG9uZW50LmJzcGF5bWVudGRjbjtcbiAgICB0aGlzLmlzU3RyYXRlZ2ljRml4RW5hYmxlID0gdGhpcy5wYXltZW50TGliQ29tcG9uZW50LklTU0ZFTkFCTEU7XG4gICAgdGhpcy5nZXRVbmFzc2lnbmVkUGF5bWVudCgpO1xuXG4gICAgdGhpcy5wYXltZW50Vmlld1NlcnZpY2UuZ2V0U2l0ZUlEKCkuc3Vic2NyaWJlKFxuICAgICAgc2l0ZWlkcyA9PiB7XG4gICAgICAgIHRoaXMuaXNDb250aW51ZUJ1dHRvbmRpc2FibGVkID0gZmFsc2U7XG4gICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gdGhpcy5nZXRFcnJvck1lc3NhZ2UoZmFsc2UpO1xuICAgICAgICB0aGlzLnNpdGVJRExpc3QgPSBKU09OLnBhcnNlKHNpdGVpZHMpO1xuICAgICAgfSxcbiAgICAgIGVyciA9PiB7XG4gICAgICAgIHdpbmRvdy5zY3JvbGxUbygwLCAwKTtcbiAgICAgICAgdGhpcy5pc0NvbnRpbnVlQnV0dG9uZGlzYWJsZWQgPSB0cnVlO1xuICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9IHRoaXMuZ2V0RXJyb3JNZXNzYWdlKHRydWUpO1xuICAgICAgfVxuICAgICk7XG4gICAgXG4gICAgdGhpcy5tYXJrUGF5bWVudFVuc29saWNpdGVkRm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xuICAgICAgcmVhc29uOiBuZXcgRm9ybUNvbnRyb2woJycsIFZhbGlkYXRvcnMuY29tcG9zZShbXG4gICAgICAgIFZhbGlkYXRvcnMucmVxdWlyZWQsXG4gICAgICAgIFZhbGlkYXRvcnMubWluTGVuZ3RoKDMpLFxuICAgICAgICBWYWxpZGF0b3JzLm1heExlbmd0aCgyNTUpLFxuICAgICAgICBWYWxpZGF0b3JzLnBhdHRlcm4oJ14oW2EtekEtWjAtOVxcXFxzLFxcXFwuXSopJCcpXG4gICAgICBdKSksXG4gICAgICByZXNwb25zaWJsZU9mZmljZTogbmV3IEZvcm1Db250cm9sKCcnLCBWYWxpZGF0b3JzLmNvbXBvc2UoW1xuICAgICAgICBWYWxpZGF0b3JzLnJlcXVpcmVkLFxuICAgICAgICBWYWxpZGF0b3JzLnBhdHRlcm4oJ14oW2EtekEtWjAtOVxcXFxzXFxcXG4sXFxcXC4tOl0qKSQnKVxuICAgICAgXSkpLFxuICAgICAgcmVzcG9uc2libGVQZXJzb246IG5ldyBGb3JtQ29udHJvbCgnJyksXG4gICAgICBlbWFpbElkOiBuZXcgRm9ybUNvbnRyb2woJycpXG4gICAgfSk7XG4gIH1cbiAgdHJpbVVuZGVyc2NvcmUobWV0aG9kOiBzdHJpbmcpe1xuICAgIHJldHVybiB0aGlzLmJ1bGtTY2FuaW5nUGF5bWVudFNlcnZpY2UucmVtb3ZlVW53YW50ZWRTdHJpbmcobWV0aG9kLCcgJyk7XG4gIH1cbiAgY29uZmlybVBheW1lbnRzKCkge1xuICAgIHRoaXMuaXNDb25maXJtQnV0dG9uZGlzYWJsZWQgPSB0cnVlO1xuICAgIGNvbnN0IGNvbnRyb2xzID0gdGhpcy5tYXJrUGF5bWVudFVuc29saWNpdGVkRm9ybS5jb250cm9scztcbiAgICBpZighdGhpcy5pc1N0cmF0ZWdpY0ZpeEVuYWJsZSkge1xuICAgICAgbGV0IGFsbG9jYXRlZFJlcXVlc3QgPSB7XG4gICAgICAgIGFsbG9jYXRpb25fc3RhdHVzOidUcmFuc2ZlcnJlZCcsXG4gICAgICAgIHBheW1lbnRfYWxsb2NhdGlvbl9zdGF0dXM6IHtcbiAgICAgICAgICBkZXNjcmlwdGlvbjogJycsXG4gICAgICAgICAgbmFtZTogJ1RyYW5zZmVycmVkJ1xuICAgICAgICB9LFxuICAgICAgICB1bmlkZW50aWZpZWRfcmVhc29uOiBjb250cm9scy5yZWFzb24udmFsdWUsXG4gICAgICAgIHJlY2VpdmluZ19vZmZpY2U6IHRoaXMuc2VsZWN0ZWRTaXRlSWQsXG4gICAgICAgIHVzZXJfaWQ6IHRoaXMuY2FzZVR5cGUsXG4gICAgICB9XG4gICAgICBjb25zdCBwb3N0U3RyYXRlZ2ljQm9keSA9IG5ldyBBbGxvY2F0ZVBheW1lbnRSZXF1ZXN0XG4gICAgICAodGhpcy5jY2RSZWZlcmVuY2UsIHRoaXMudW5hc3NpZ25lZFJlY29yZCwgdGhpcy5jYXNlVHlwZSwgdGhpcy5leGNlcHRpb25SZWZlcmVuY2UsIGFsbG9jYXRlZFJlcXVlc3QpO1xuICAgICAgdGhpcy5idWxrU2NhbmluZ1BheW1lbnRTZXJ2aWNlLnBvc3RCU1dvUEdTdHJhdGVnaWMocG9zdFN0cmF0ZWdpY0JvZHkpLnN1YnNjcmliZShcbiAgICAgICAgcmVzID0+IHtcbiAgICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9IHRoaXMuZ2V0RXJyb3JNZXNzYWdlKGZhbHNlKTtcbiAgICAgICAgICBsZXQgcmVzcG9uc2UgPSBKU09OLnBhcnNlKHJlcyk7XG4gICAgICAgICAgaWYgKHJlc3BvbnNlLnN1Y2Nlc3MpIHtcbiAgICAgICAgICAgdGhpcy5nb3RvQ2FzZXRyYW5zYXRpb25QYWdlKCk7XG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICAoZXJyb3I6IGFueSkgPT4ge1xuICAgICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gdGhpcy5nZXRFcnJvck1lc3NhZ2UodHJ1ZSk7XG4gICAgICAgICAgdGhpcy5pc0NvbmZpcm1CdXR0b25kaXNhYmxlZCA9IGZhbHNlO1xuICAgICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgIC8vIGNvbnRyb2xzLnJlc3BvbnNpYmxlT2ZmaWNlLnNldFZhbHVlKCdQMjE5Jyk7XG4gICAgdGhpcy5idWxrU2NhbmluZ1BheW1lbnRTZXJ2aWNlLnBhdGNoQlNDaGFuZ2VTdGF0dXModGhpcy51bmFzc2lnbmVkUmVjb3JkLmRjbl9yZWZlcmVuY2UsICdQUk9DRVNTRUQnKS5zdWJzY3JpYmUoXG4gICAgICByZXMxID0+IHtcbiAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSB0aGlzLmdldEVycm9yTWVzc2FnZShmYWxzZSk7XG4gICAgICAgIGNvbnN0IHJlc3BvbnNlMSA9IEpTT04ucGFyc2UocmVzMSksXG4gICAgICAgICByZXF1ZXN0Qm9keSA9IG5ldyBBbGxvY2F0ZVBheW1lbnRSZXF1ZXN0XG4gICAgICAgICAodGhpcy5jY2RSZWZlcmVuY2UsIHRoaXMudW5hc3NpZ25lZFJlY29yZCwgdGhpcy5zaXRlSUQsIHRoaXMuZXhjZXB0aW9uUmVmZXJlbmNlKVxuICAgICAgICB0aGlzLnBheW1lbnRWaWV3U2VydmljZS5wb3N0QlNQYXltZW50cyhyZXF1ZXN0Qm9keSkuc3Vic2NyaWJlKFxuICAgICAgICAgIHJlczIgPT4ge1xuICAgICAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSB0aGlzLmdldEVycm9yTWVzc2FnZShmYWxzZSk7XG4gICAgICAgICAgICBjb25zdCByZXNwb25zZTIgPSBKU09OLnBhcnNlKHJlczIpLFxuICAgICAgICAgICAgcmVxQm9keSA9IG5ldyBVbnNvbGljaXRlZFBheW1lbnRzUmVxdWVzdFxuICAgICAgICAgICAgKHJlc3BvbnNlMlsnZGF0YSddLnBheW1lbnRfZ3JvdXBfcmVmZXJlbmNlLCByZXNwb25zZTJbJ2RhdGEnXS5yZWZlcmVuY2UsIGNvbnRyb2xzLnJlYXNvbi52YWx1ZSwgdGhpcy5zZWxlY3RlZFNpdGVJZCwgY29udHJvbHMucmVzcG9uc2libGVQZXJzb24udmFsdWUsIGNvbnRyb2xzLmVtYWlsSWQudmFsdWUpO1xuICAgICAgICAgICAgIGlmIChyZXNwb25zZTIuc3VjY2Vzcykge1xuICAgICAgICAgICAgICB0aGlzLnBheW1lbnRWaWV3U2VydmljZS5wb3N0QlNVbnNvbGljaXRlZFBheW1lbnRzKHJlcUJvZHkpLnN1YnNjcmliZShcbiAgICAgICAgICAgICAgICByZXMzID0+IHtcbiAgICAgICAgICAgICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gdGhpcy5nZXRFcnJvck1lc3NhZ2UoZmFsc2UpO1xuICAgICAgICAgICAgICAgICAgY29uc3QgcmVzcG9uc2UzID0gSlNPTi5wYXJzZShyZXMzKTtcbiAgICAgICAgICAgICAgICAgIGlmIChyZXNwb25zZTMuc3VjY2Vzcykge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmdvdG9DYXNldHJhbnNhdGlvblBhZ2UoKTtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIChlcnJvcjogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgICB0aGlzLmJ1bGtTY2FuaW5nUGF5bWVudFNlcnZpY2UucGF0Y2hCU0NoYW5nZVN0YXR1cyh0aGlzLnVuYXNzaWduZWRSZWNvcmQuZGNuX3JlZmVyZW5jZSwgJ0NPTVBMRVRFJykuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9IHRoaXMuZ2V0RXJyb3JNZXNzYWdlKHRydWUpO1xuICAgICAgICAgICAgICAgICAgdGhpcy5pc0NvbmZpcm1CdXR0b25kaXNhYmxlZCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9LFxuICAgICAgICAgIChlcnJvcjogYW55KSA9PiB7XG4gICAgICAgICAgICB0aGlzLmJ1bGtTY2FuaW5nUGF5bWVudFNlcnZpY2UucGF0Y2hCU0NoYW5nZVN0YXR1cyh0aGlzLnVuYXNzaWduZWRSZWNvcmQuZGNuX3JlZmVyZW5jZSwgJ0NPTVBMRVRFJykuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9IHRoaXMuZ2V0RXJyb3JNZXNzYWdlKHRydWUpO1xuICAgICAgICAgICAgdGhpcy5pc0NvbmZpcm1CdXR0b25kaXNhYmxlZCA9IGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgKTtcbiAgICAgIH0sXG4gICAgICAoZXJyb3I6IGFueSkgPT4ge1xuICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9IHRoaXMuZ2V0RXJyb3JNZXNzYWdlKHRydWUpO1xuICAgICAgICB0aGlzLmlzQ29uZmlybUJ1dHRvbmRpc2FibGVkID0gZmFsc2U7XG4gICAgICB9XG4gICAgKTtcbiAgICB9XG4gIH1cbiBzYXZlQW5kQ29udGludWUoKSB7XG4gICAgdGhpcy5yZXNldEZvcm0oW2ZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlXSwgJ2FsbCcpO1xuICAgICAgICBjb25zdCBmb3JtZXJyb3IgPSB0aGlzLm1hcmtQYXltZW50VW5zb2xpY2l0ZWRGb3JtLmNvbnRyb2xzLnJlYXNvbi5lcnJvcnM7XG4gICAgICAgIGNvbnN0IHJlYXNvbkZpZWxkID0gdGhpcy5tYXJrUGF5bWVudFVuc29saWNpdGVkRm9ybS5jb250cm9scy5yZWFzb247XG4gICAgICAgIC8vY29uc3Qgb2ZmaWNlSWRGaWVsZCA9IHRoaXMuc2VsZWN0ZWRTaXRlSWQ7XG4gICAgICAgIGNvbnN0IG9mZmljZUlkRmllbGQgID0gdGhpcy5tYXJrUGF5bWVudFVuc29saWNpdGVkRm9ybS5jb250cm9scy5yZXNwb25zaWJsZU9mZmljZTtcbiAgICBpZiAodGhpcy5tYXJrUGF5bWVudFVuc29saWNpdGVkRm9ybS5kaXJ0eSAmJiB0aGlzLm1hcmtQYXltZW50VW5zb2xpY2l0ZWRGb3JtLnZhbGlkKSB7XG4gICAgICBjb25zdCBjb250cm9scyA9IHRoaXMubWFya1BheW1lbnRVbnNvbGljaXRlZEZvcm0uY29udHJvbHM7XG4gICAgICB0aGlzLmVtYWlsSWQgPSBjb250cm9scy5lbWFpbElkLnZhbHVlO1xuICAgICAgdGhpcy5yZXNwb25zaWJsZU9mZmljZSA9IG9mZmljZUlkRmllbGQudmFsdWU7XG4gICAgICB0aGlzLnJlc3BvbnNpYmxlUGVyc29uID0gY29udHJvbHMucmVzcG9uc2libGVQZXJzb24udmFsdWU7XG4gICAgICB0aGlzLnJlYXNvbiA9IGNvbnRyb2xzLnJlYXNvbi52YWx1ZTtcbiAgICAgIHRoaXMudmlld1N0YXR1cyA9ICd1bnNvbGljaXRlZENvbnRpbnVlQ29uZmlybSc7XG4gICAgfWVsc2Uge1xuICAgICAgaWYoIHJlYXNvbkZpZWxkLnZhbHVlID09ICcnICkge1xuICAgICAgICB0aGlzLnJlc2V0Rm9ybShbdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZV0sICdyZWFzb24nKTtcbiAgICAgIH1cbiAgICAgIGlmKHJlYXNvbkZpZWxkLnZhbHVlICE9ICcnICYmIHRoaXMubWFya1BheW1lbnRVbnNvbGljaXRlZEZvcm0uY29udHJvbHMucmVhc29uLmludmFsaWQgKSB7XG4gICAgICAgIHRoaXMucmVzZXRGb3JtKFtmYWxzZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlXSwgJ3JlYXNvbicpO1xuICAgICAgfVxuICAgICAgaWYoZm9ybWVycm9yICYmIGZvcm1lcnJvci5taW5sZW5ndGggJiYgZm9ybWVycm9yLm1pbmxlbmd0aC5hY3R1YWxMZW5ndGggPCAzICkge1xuICAgICAgICB0aGlzLnJlc2V0Rm9ybShbZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZV0sICdyZWFzb24nKTtcbiAgICAgIH1cbiAgICAgIGlmKGZvcm1lcnJvciAmJiBmb3JtZXJyb3IubWF4bGVuZ3RoICYmIGZvcm1lcnJvci5tYXhsZW5ndGguYWN0dWFsTGVuZ3RoID4gMjU1ICkge1xuICAgICAgICB0aGlzLnJlc2V0Rm9ybShbZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZSxmYWxzZV0sICdyZWFzb24nKTtcbiAgICAgIH1cbiAgICAgIGlmKG9mZmljZUlkRmllbGQudmFsdWUgPT0gJycpIHtcbiAgICAgICAgdGhpcy5yZXNldEZvcm0oW2ZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsZmFsc2VdLCAncmVzcG9uc2libGVPZmZpY2UnKTtcbiAgICAgIH1cbiAgICAgIGlmKG9mZmljZUlkRmllbGQudmFsdWUgIT0gJycgJiYgb2ZmaWNlSWRGaWVsZC5pbnZhbGlkKSB7XG4gICAgICAgIHRoaXMucmVzZXRGb3JtKFtmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlXSwncmVzcG9uc2libGVPZmZpY2UnKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgcmVzZXRGb3JtKHZhbCwgZmllbGQpIHtcbiAgICBpZihmaWVsZD09PSdyZWFzb24nIHx8IGZpZWxkPT09J2FsbCcpIHtcbiAgICAgIHRoaXMuaXNSZWFzb25FbXB0eSA9IHZhbFswXTtcbiAgICAgIHRoaXMucmVhc29uSGFzRXJyb3IgPSB2YWxbMV07XG4gICAgICB0aGlzLnJlYXNvbk1pbkhhc0Vycm9yID0gdmFsWzJdO1xuICAgICAgdGhpcy5yZWFzb25NYXhIYXNFcnJvciA9IHZhbFszXTtcbiAgICB9XG4gICAgaWYoZmllbGQ9PT0ncmVzcG9uc2libGVPZmZpY2UnIHx8IGZpZWxkPT09J2FsbCcpIHtcbiAgICAgIHRoaXMuaXNSZXNwb25zaWJsZU9mZmljZUVtcHR5ID0gdmFsWzRdO1xuICAgICAgdGhpcy5yZXNwb25zaWJsZU9mZmljZUhhc0Vycm9yID0gdmFsWzVdO1xuICAgIH1cbiAgfVxuXG5jYW5jZWxNYXJrVW5zb2xpY2l0ZWRQYXltZW50cyh0eXBlPzpzdHJpbmcpe1xuICAgIGlmKHR5cGUgJiYgdHlwZSA9PT0gJ2NhbmNlbCcpIHtcbiAgICAgIGlmKHRoaXMuY2hlY2tpbmdGb3JtVmFsdWUoKSl7XG4gICAgICAgIHRoaXMudmlld1N0YXR1cyA9ICd1bnNvbGljaXRlZENhbmNlbENvbmZpcm0nO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5nb3RvQ2FzZXRyYW5zYXRpb25QYWdlKCk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMubWFya1BheW1lbnRVbnNvbGljaXRlZEZvcm0uY29udHJvbHMucmVzcG9uc2libGVPZmZpY2Uuc2V0VmFsdWUoJycpO1xuICAgICAgdGhpcy52aWV3U3RhdHVzID0gJ21haW5Gb3JtJztcbiAgICB9XG4gIH1cbiAgY2hlY2tpbmdGb3JtVmFsdWUoKXtcbiAgICBjb25zdCBmb3JtRmllbGRzID0gdGhpcy5tYXJrUGF5bWVudFVuc29saWNpdGVkRm9ybS52YWx1ZTtcbiAgICBsZXQgdmFsdWVFeGlzdHMgPSBmYWxzZTtcblxuICAgIGZvciAodmFyIGZpZWxkIGluIGZvcm1GaWVsZHMpIHtcbiAgICAgIGlmIChmb3JtRmllbGRzLmhhc093blByb3BlcnR5KGZpZWxkKSAmJiBmb3JtRmllbGRzW2ZpZWxkXSAhPT1cIlwiKSB7XG4gICAgICAgIHZhbHVlRXhpc3RzID0gdHJ1ZTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB2YWx1ZUV4aXN0cztcbiAgfVxuICBnb3RvQ2FzZXRyYW5zYXRpb25QYWdlKCkge1xuICAgIHRoaXMucGF5bWVudExpYkNvbXBvbmVudC52aWV3TmFtZSA9ICdjYXNlLXRyYW5zYWN0aW9ucyc7XG4gICAgdGhpcy5wYXltZW50TGliQ29tcG9uZW50LlRBS0VQQVlNRU5UID0gdHJ1ZTtcbiAgICB0aGlzLnBheW1lbnRMaWJDb21wb25lbnQuSVNCU0VOQUJMRSA9IHRydWU7XG4gIH1cbiAgIGdldFVuYXNzaWduZWRQYXltZW50KCkge1xuICAgIHRoaXMuYnVsa1NjYW5pbmdQYXltZW50U2VydmljZS5nZXRCU1BheW1lbnRzQnlEQ04odGhpcy5ic3BheW1lbnRkY24pLnN1YnNjcmliZShcbiAgICAgIHVuYXNzaWduZWRQYXltZW50cyA9PiB7XG4gICAgICAgIFxuICAgICAgdGhpcy51bmFzc2lnbmVkUmVjb3JkID0gdW5hc3NpZ25lZFBheW1lbnRzWydkYXRhJ10ucGF5bWVudHMuZmlsdGVyKHBheW1lbnQgPT4ge1xuICAgICAgICByZXR1cm4gcGF5bWVudCAmJiBwYXltZW50LmRjbl9yZWZlcmVuY2UgPT0gdGhpcy5ic3BheW1lbnRkY247XG4gICAgICB9KVswXTtcbiAgICAgICB0aGlzLnNpdGVJRCA9IHVuYXNzaWduZWRQYXltZW50c1snZGF0YSddLnJlc3BvbnNpYmxlX3NlcnZpY2VfaWQ7XG4gICAgICAgIGNvbnN0IGJlQ2NkTnVtYmVyID0gdW5hc3NpZ25lZFBheW1lbnRzWydkYXRhJ10uY2NkX3JlZmVyZW5jZSxcbiAgICAgICAgIGJlRXhjZXB0aW9uTnVtYmVyID0gdW5hc3NpZ25lZFBheW1lbnRzWydkYXRhJ10uZXhjZXB0aW9uX3JlY29yZF9yZWZlcmVuY2UsXG4gICAgICAgICBleGNlcHRpb25SZWZlcmVuY2UgPSBiZUNjZE51bWJlciA/IGJlQ2NkTnVtYmVyID09PSB0aGlzLmNjZENhc2VOdW1iZXIgPyBudWxsIDogdGhpcy5jY2RDYXNlTnVtYmVyIDogdGhpcy5jY2RDYXNlTnVtYmVyO1xuICAgICAgICB0aGlzLmNjZFJlZmVyZW5jZSA9IGJlQ2NkTnVtYmVyID8gYmVDY2ROdW1iZXIgOiBudWxsO1xuICAgICAgICB0aGlzLmV4Y2VwdGlvblJlZmVyZW5jZSA9IGJlRXhjZXB0aW9uTnVtYmVyID8gYmVFeGNlcHRpb25OdW1iZXIgOiBleGNlcHRpb25SZWZlcmVuY2U7XG4gICAgfSxcbiAgICAgIChlcnJvcjogYW55KSA9PiB7XG4gICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gdGhpcy5nZXRFcnJvck1lc3NhZ2UodHJ1ZSk7XG4gICAgICB9XG4gICAgKTtcbiAgfVxuXG4gIGdldEVycm9yTWVzc2FnZShpc0Vycm9yRXhpc3QpIHtcbiAgICByZXR1cm4ge1xuICAgICAgdGl0bGU6IFwiU29tZXRoaW5nIHdlbnQgd3JvbmcuXCIsXG4gICAgICBib2R5OiBcIlBsZWFzZSB0cnkgYWdhaW4gbGF0ZXIuXCIsXG4gICAgICBzaG93RXJyb3I6IGlzRXJyb3JFeGlzdFxuICAgIH07XG4gIH1cblxuICBzZWxlY3RjaGFuZ2UoYXJncyl7IFxuICAgIHRoaXMuc2VsZWN0ZWRTaXRlSWQgPSBhcmdzLnRhcmdldC52YWx1ZTsgXG4gICAgdGhpcy5zZWxlY3RlZFNpdGVOYW1lID0gYXJncy50YXJnZXQub3B0aW9uc1thcmdzLnRhcmdldC5zZWxlY3RlZEluZGV4XS50ZXh0OyBcbiAgfSBcblxufVxuIl19
@@ -1,13 +0,0 @@
1
- import { Component } from '@angular/core';
2
- var PageNotFoundComponent = /** @class */ (function () {
3
- function PageNotFoundComponent() {
4
- }
5
- PageNotFoundComponent.decorators = [
6
- { type: Component, args: [{
7
- template: "\n <h1>This is not the page you were looking for!</h1>\n "
8
- },] }
9
- ];
10
- return PageNotFoundComponent;
11
- }());
12
- export { PageNotFoundComponent };
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS1ub3QtZm91bmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGhtY3RzL2NjcGF5LXdlYi1jb21wb25lbnQvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9wYWdlLW5vdC1mb3VuZC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxQztJQUFBO0lBS3FDLENBQUM7O2dCQUxyQyxTQUFTLFNBQUM7b0JBQ1AsUUFBUSxFQUFFLGlFQUVUO2lCQUNKOztJQUNvQyw0QkFBQztDQUFBLEFBTHRDLElBS3NDO1NBQXpCLHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICB0ZW1wbGF0ZTogYFxuICAgIDxoMT5UaGlzIGlzIG5vdCB0aGUgcGFnZSB5b3Ugd2VyZSBsb29raW5nIGZvciE8L2gxPlxuICAgIGBcbn0pXG5leHBvcnQgY2xhc3MgUGFnZU5vdEZvdW5kQ29tcG9uZW50IHsgfVxuIl19