@hmcts/ccpay-web-component 5.0.12 → 5.1.0-beta02
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.
- package/bundles/hmcts-ccpay-web-component.umd.js +5091 -8699
- package/bundles/hmcts-ccpay-web-component.umd.js.map +1 -1
- package/bundles/hmcts-ccpay-web-component.umd.min.js +1 -1
- package/bundles/hmcts-ccpay-web-component.umd.min.js.map +1 -1
- package/esm2015/hmcts-ccpay-web-component.js +2 -6
- package/esm2015/lib/components/add-remission/add-remission.component.js +34 -407
- package/esm2015/lib/components/allocate-payments/allocate-payments.component.js +37 -348
- package/esm2015/lib/components/card-details/card-details.component.js +3 -46
- package/esm2015/lib/components/case-transactions/case-transactions.component.js +107 -687
- package/esm2015/lib/components/error-banner/error-banner.component.js +2 -14
- package/esm2015/lib/components/fee-summary/fee-summary.component.js +29 -255
- package/esm2015/lib/components/mark-unidentified-payment/mark-unidentified-payment.component.js +23 -181
- package/esm2015/lib/components/mark-unsolicited-payment/mark-unsolicited-payment.component.js +27 -225
- package/esm2015/lib/components/page-not-found.component.js +2 -6
- package/esm2015/lib/components/payment-list/payment-list.component.js +4 -48
- package/esm2015/lib/components/payment-view/payment-view.component.js +39 -336
- package/esm2015/lib/components/pba-details/pba-details.component.js +3 -15
- package/esm2015/lib/components/pba-payment/pba-payment.component.js +13 -120
- package/esm2015/lib/components/process-refund/process-refund.component.js +16 -178
- package/esm2015/lib/components/processed-payments/processed-payments.component.js +4 -42
- package/esm2015/lib/components/refund-list/refund-list.component.js +9 -77
- package/esm2015/lib/components/refund-status/refund-status.component.js +25 -257
- package/esm2015/lib/components/reports/reports.component.js +21 -212
- package/esm2015/lib/components/service-request/service-request.component.js +36 -370
- package/esm2015/lib/components/status-history/status-history.component.js +4 -44
- package/esm2015/lib/components/table/table.component.js +5 -105
- package/esm2015/lib/components/unprocessed-payments/unprocessed-payments.component.js +12 -184
- package/esm2015/lib/interfaces/AddRemissionRequest.js +1 -28
- package/esm2015/lib/interfaces/AddRetroRemissionRequest.js +1 -15
- package/esm2015/lib/interfaces/AllocatePaymentRequest.js +1 -42
- package/esm2015/lib/interfaces/IAllocationPaymentsRequest.js +1 -26
- package/esm2015/lib/interfaces/IBSPayments.js +2 -45
- package/esm2015/lib/interfaces/ICardDetails.js +2 -21
- package/esm2015/lib/interfaces/IFee.js +2 -53
- package/esm2015/lib/interfaces/IOrderReferenceFee.js +2 -25
- package/esm2015/lib/interfaces/IPatchRefundAction.js +2 -15
- package/esm2015/lib/interfaces/IPayment.js +2 -65
- package/esm2015/lib/interfaces/IPaymentFailure.js +2 -33
- package/esm2015/lib/interfaces/IPaymentGroup.js +2 -19
- package/esm2015/lib/interfaces/IPaymentStatus.js +1 -25
- package/esm2015/lib/interfaces/IPaymentView.js +2 -17
- package/esm2015/lib/interfaces/IPayments.js +2 -13
- package/esm2015/lib/interfaces/IRefundAction.js +2 -15
- package/esm2015/lib/interfaces/IRefundList.js +2 -29
- package/esm2015/lib/interfaces/IRefundReasons.js +2 -19
- package/esm2015/lib/interfaces/IRefundRejectReason.js +2 -15
- package/esm2015/lib/interfaces/IRefundStatus.js +2 -23
- package/esm2015/lib/interfaces/IRefundStatusHistory.js +2 -15
- package/esm2015/lib/interfaces/IRemission.js +2 -25
- package/esm2015/lib/interfaces/IResubmitRefundRequest.js +1 -15
- package/esm2015/lib/interfaces/IStatusHistories.js +2 -19
- package/esm2015/lib/interfaces/IStatusHistory.js +2 -21
- package/esm2015/lib/interfaces/IserviceRequestCardPayment.js +1 -16
- package/esm2015/lib/interfaces/IserviceRequestPbaPayment.js +1 -23
- package/esm2015/lib/interfaces/IssueRefundRequest.js +1 -18
- package/esm2015/lib/interfaces/PayhubAntennaRequest.js +2 -21
- package/esm2015/lib/interfaces/PaymentToPayhubRequest.js +2 -27
- package/esm2015/lib/interfaces/PostIssueRefundRetroRemission.js +1 -12
- package/esm2015/lib/interfaces/PostRefundRetroRemission.js +1 -15
- package/esm2015/lib/interfaces/RefundsRequest.js +1 -15
- package/esm2015/lib/interfaces/UnidentifiedPaymentsRequest.js +1 -20
- package/esm2015/lib/interfaces/UnsolicitedPaymentsRequest.js +1 -29
- package/esm2015/lib/payment-lib.component.js +2 -147
- package/esm2015/lib/payment-lib.module.js +1 -5
- package/esm2015/lib/payment-lib.service.js +2 -45
- package/esm2015/lib/pipes/capitalize.pipe.js +1 -11
- package/esm2015/lib/pipes/ccd-hyphens.pipe.js +1 -12
- package/esm2015/lib/pipes/key-value.pipe.js +1 -11
- package/esm2015/lib/pipes/sanitize-html.pipe.js +1 -20
- package/esm2015/lib/services/bulk-scaning-payment/bulk-scaning-payment.service.js +9 -102
- package/esm2015/lib/services/card-details/card-details.service.js +2 -39
- package/esm2015/lib/services/case-transactions/case-transactions.service.js +2 -39
- package/esm2015/lib/services/orderslist.service.js +2 -251
- package/esm2015/lib/services/payment-list/payment-list.service.js +2 -42
- package/esm2015/lib/services/payment-view/payment-view.service.js +3 -168
- package/esm2015/lib/services/refunds/refunds.service.js +7 -109
- package/esm2015/lib/services/shared/error-handler.service.js +4 -21
- package/esm2015/lib/services/shared/httpclient/webcomponent.http.client.js +6 -82
- package/esm2015/lib/services/shared/logger/console-logger.service.js +3 -27
- package/esm2015/lib/services/shared/logger/logger.service.js +3 -35
- package/esm2015/lib/services/status-history/status-history.service.js +2 -40
- package/esm2015/lib/services/xl-file/xl-file.service.js +2 -60
- package/esm2015/public_api.js +4 -8
- package/fesm2015/hmcts-ccpay-web-component.js +552 -3557
- package/fesm2015/hmcts-ccpay-web-component.js.map +1 -1
- package/hmcts-ccpay-web-component.d.ts +1 -0
- package/hmcts-ccpay-web-component.d.ts.map +1 -0
- package/hmcts-ccpay-web-component.metadata.json +1 -1
- package/lib/components/add-remission/add-remission.component.d.ts +1 -0
- package/lib/components/add-remission/add-remission.component.d.ts.map +1 -0
- package/lib/components/add-remission/add-remission.component.ngfactory.d.ts.map +1 -0
- package/lib/components/add-remission/add-remission.component.scss.shim.ngstyle.d.ts.map +1 -0
- package/lib/components/allocate-payments/allocate-payments.component.d.ts +1 -0
- package/lib/components/allocate-payments/allocate-payments.component.d.ts.map +1 -0
- package/lib/components/allocate-payments/allocate-payments.component.ngfactory.d.ts.map +1 -0
- package/lib/components/allocate-payments/allocate-payments.component.scss.shim.ngstyle.d.ts.map +1 -0
- package/lib/components/card-details/card-details.component.css.shim.ngstyle.d.ts.map +1 -0
- package/lib/components/card-details/card-details.component.d.ts +2 -1
- package/lib/components/card-details/card-details.component.d.ts.map +1 -0
- package/lib/components/card-details/card-details.component.ngfactory.d.ts.map +1 -0
- package/lib/components/case-transactions/case-transactions.component.css.shim.ngstyle.d.ts.map +1 -0
- package/lib/components/case-transactions/case-transactions.component.d.ts +2 -1
- package/lib/components/case-transactions/case-transactions.component.d.ts.map +1 -0
- package/lib/components/case-transactions/case-transactions.component.ngfactory.d.ts.map +1 -0
- package/lib/components/error-banner/error-banner.component.d.ts +1 -0
- package/lib/components/error-banner/error-banner.component.d.ts.map +1 -0
- package/lib/components/error-banner/error-banner.component.ngfactory.d.ts.map +1 -0
- package/lib/components/error-banner/error-banner.component.scss.shim.ngstyle.d.ts.map +1 -0
- package/lib/components/fee-summary/fee-summary.component.d.ts +1 -0
- package/lib/components/fee-summary/fee-summary.component.d.ts.map +1 -0
- package/lib/components/fee-summary/fee-summary.component.ngfactory.d.ts.map +1 -0
- package/lib/components/fee-summary/fee-summary.component.scss.shim.ngstyle.d.ts.map +1 -0
- package/lib/components/mark-unidentified-payment/mark-unidentified-payment.component.d.ts +1 -0
- package/lib/components/mark-unidentified-payment/mark-unidentified-payment.component.d.ts.map +1 -0
- package/lib/components/mark-unidentified-payment/mark-unidentified-payment.component.ngfactory.d.ts.map +1 -0
- package/lib/components/mark-unidentified-payment/mark-unidentified-payment.component.scss.shim.ngstyle.d.ts.map +1 -0
- package/lib/components/mark-unsolicited-payment/mark-unsolicited-payment.component.d.ts +1 -0
- package/lib/components/mark-unsolicited-payment/mark-unsolicited-payment.component.d.ts.map +1 -0
- package/lib/components/mark-unsolicited-payment/mark-unsolicited-payment.component.ngfactory.d.ts.map +1 -0
- package/lib/components/mark-unsolicited-payment/mark-unsolicited-payment.component.scss.shim.ngstyle.d.ts.map +1 -0
- package/lib/components/page-not-found.component.d.ts +1 -0
- package/lib/components/page-not-found.component.d.ts.map +1 -0
- package/lib/components/page-not-found.component.ngfactory.d.ts.map +1 -0
- package/lib/components/payment-list/payment-list.component.css.shim.ngstyle.d.ts.map +1 -0
- package/lib/components/payment-list/payment-list.component.d.ts +1 -0
- package/lib/components/payment-list/payment-list.component.d.ts.map +1 -0
- package/lib/components/payment-list/payment-list.component.ngfactory.d.ts.map +1 -0
- package/lib/components/payment-view/payment-view.component.css.shim.ngstyle.d.ts.map +1 -0
- package/lib/components/payment-view/payment-view.component.d.ts +3 -2
- package/lib/components/payment-view/payment-view.component.d.ts.map +1 -0
- package/lib/components/payment-view/payment-view.component.ngfactory.d.ts.map +1 -0
- package/lib/components/pba-details/pba-details.component.css.shim.ngstyle.d.ts.map +1 -0
- package/lib/components/pba-details/pba-details.component.d.ts +1 -0
- package/lib/components/pba-details/pba-details.component.d.ts.map +1 -0
- package/lib/components/pba-details/pba-details.component.ngfactory.d.ts.map +1 -0
- package/lib/components/pba-payment/pba-payment.component.d.ts +1 -0
- package/lib/components/pba-payment/pba-payment.component.d.ts.map +1 -0
- package/lib/components/pba-payment/pba-payment.component.ngfactory.d.ts.map +1 -0
- package/lib/components/pba-payment/pba-payment.component.scss.shim.ngstyle.d.ts.map +1 -0
- package/lib/components/process-refund/process-refund.component.css.shim.ngstyle.d.ts.map +1 -0
- package/lib/components/process-refund/process-refund.component.d.ts +1 -0
- package/lib/components/process-refund/process-refund.component.d.ts.map +1 -0
- package/lib/components/process-refund/process-refund.component.ngfactory.d.ts.map +1 -0
- package/lib/components/processed-payments/processed-payments.component.d.ts +1 -0
- package/lib/components/processed-payments/processed-payments.component.d.ts.map +1 -0
- package/lib/components/processed-payments/processed-payments.component.ngfactory.d.ts.map +1 -0
- package/lib/components/processed-payments/processed-payments.component.scss.shim.ngstyle.d.ts.map +1 -0
- package/lib/components/refund-list/refund-list.component.css.shim.ngstyle.d.ts.map +1 -0
- package/lib/components/refund-list/refund-list.component.d.ts +1 -0
- package/lib/components/refund-list/refund-list.component.d.ts.map +1 -0
- package/lib/components/refund-list/refund-list.component.ngfactory.d.ts.map +1 -0
- package/lib/components/refund-status/refund-status.component.css.shim.ngstyle.d.ts.map +1 -0
- package/lib/components/refund-status/refund-status.component.d.ts +2 -1
- package/lib/components/refund-status/refund-status.component.d.ts.map +1 -0
- package/lib/components/refund-status/refund-status.component.ngfactory.d.ts.map +1 -0
- package/lib/components/reports/reports.component.d.ts +1 -0
- package/lib/components/reports/reports.component.d.ts.map +1 -0
- package/lib/components/reports/reports.component.ngfactory.d.ts.map +1 -0
- package/lib/components/reports/reports.component.scss.shim.ngstyle.d.ts.map +1 -0
- package/lib/components/service-request/service-request.component.css.shim.ngstyle.d.ts.map +1 -0
- package/lib/components/service-request/service-request.component.d.ts +1 -0
- package/lib/components/service-request/service-request.component.d.ts.map +1 -0
- package/lib/components/service-request/service-request.component.ngfactory.d.ts.map +1 -0
- package/lib/components/status-history/status-history.component.css.shim.ngstyle.d.ts.map +1 -0
- package/lib/components/status-history/status-history.component.d.ts +1 -0
- package/lib/components/status-history/status-history.component.d.ts.map +1 -0
- package/lib/components/status-history/status-history.component.ngfactory.d.ts.map +1 -0
- package/lib/components/table/table.component.css.shim.ngstyle.d.ts.map +1 -0
- package/lib/components/table/table.component.d.ts +1 -0
- package/lib/components/table/table.component.d.ts.map +1 -0
- package/lib/components/table/table.component.ngfactory.d.ts.map +1 -0
- package/lib/components/unprocessed-payments/unprocessed-payments.component.d.ts +1 -0
- package/lib/components/unprocessed-payments/unprocessed-payments.component.d.ts.map +1 -0
- package/lib/components/unprocessed-payments/unprocessed-payments.component.ngfactory.d.ts.map +1 -0
- package/lib/components/unprocessed-payments/unprocessed-payments.component.scss.shim.ngstyle.d.ts.map +1 -0
- package/lib/interfaces/AddRemissionRequest.d.ts +1 -0
- package/lib/interfaces/AddRemissionRequest.d.ts.map +1 -0
- package/lib/interfaces/AddRetroRemissionRequest.d.ts +1 -0
- package/lib/interfaces/AddRetroRemissionRequest.d.ts.map +1 -0
- package/lib/interfaces/AllocatePaymentRequest.d.ts +1 -0
- package/lib/interfaces/AllocatePaymentRequest.d.ts.map +1 -0
- package/lib/interfaces/IAllocationPaymentsRequest.d.ts +1 -0
- package/lib/interfaces/IAllocationPaymentsRequest.d.ts.map +1 -0
- package/lib/interfaces/IBSPayments.d.ts +1 -0
- package/lib/interfaces/IBSPayments.d.ts.map +1 -0
- package/lib/interfaces/ICardDetails.d.ts +1 -0
- package/lib/interfaces/ICardDetails.d.ts.map +1 -0
- package/lib/interfaces/IFee.d.ts +1 -0
- package/lib/interfaces/IFee.d.ts.map +1 -0
- package/lib/interfaces/IOrderReferenceFee.d.ts +1 -0
- package/lib/interfaces/IOrderReferenceFee.d.ts.map +1 -0
- package/lib/interfaces/IPatchRefundAction.d.ts +1 -0
- package/lib/interfaces/IPatchRefundAction.d.ts.map +1 -0
- package/lib/interfaces/IPayment.d.ts +1 -0
- package/lib/interfaces/IPayment.d.ts.map +1 -0
- package/lib/interfaces/IPaymentFailure.d.ts +1 -0
- package/lib/interfaces/IPaymentFailure.d.ts.map +1 -0
- package/lib/interfaces/IPaymentGroup.d.ts +1 -0
- package/lib/interfaces/IPaymentGroup.d.ts.map +1 -0
- package/lib/interfaces/IPaymentStatus.d.ts +1 -0
- package/lib/interfaces/IPaymentStatus.d.ts.map +1 -0
- package/lib/interfaces/IPaymentView.d.ts +1 -0
- package/lib/interfaces/IPaymentView.d.ts.map +1 -0
- package/lib/interfaces/IPayments.d.ts +1 -0
- package/lib/interfaces/IPayments.d.ts.map +1 -0
- package/lib/interfaces/IRefundAction.d.ts +1 -0
- package/lib/interfaces/IRefundAction.d.ts.map +1 -0
- package/lib/interfaces/IRefundList.d.ts +1 -0
- package/lib/interfaces/IRefundList.d.ts.map +1 -0
- package/lib/interfaces/IRefundReasons.d.ts +1 -0
- package/lib/interfaces/IRefundReasons.d.ts.map +1 -0
- package/lib/interfaces/IRefundRejectReason.d.ts +1 -0
- package/lib/interfaces/IRefundRejectReason.d.ts.map +1 -0
- package/lib/interfaces/IRefundStatus.d.ts +1 -0
- package/lib/interfaces/IRefundStatus.d.ts.map +1 -0
- package/lib/interfaces/IRefundStatusHistory.d.ts +1 -0
- package/lib/interfaces/IRefundStatusHistory.d.ts.map +1 -0
- package/lib/interfaces/IRemission.d.ts +1 -0
- package/lib/interfaces/IRemission.d.ts.map +1 -0
- package/lib/interfaces/IResubmitRefundRequest.d.ts +1 -0
- package/lib/interfaces/IResubmitRefundRequest.d.ts.map +1 -0
- package/lib/interfaces/IStatusHistories.d.ts +1 -0
- package/lib/interfaces/IStatusHistories.d.ts.map +1 -0
- package/lib/interfaces/IStatusHistory.d.ts +1 -0
- package/lib/interfaces/IStatusHistory.d.ts.map +1 -0
- package/lib/interfaces/IserviceRequestCardPayment.d.ts +1 -0
- package/lib/interfaces/IserviceRequestCardPayment.d.ts.map +1 -0
- package/lib/interfaces/IserviceRequestPbaPayment.d.ts +1 -0
- package/lib/interfaces/IserviceRequestPbaPayment.d.ts.map +1 -0
- package/lib/interfaces/IssueRefundRequest.d.ts +1 -0
- package/lib/interfaces/IssueRefundRequest.d.ts.map +1 -0
- package/lib/interfaces/PayhubAntennaRequest.d.ts +1 -0
- package/lib/interfaces/PayhubAntennaRequest.d.ts.map +1 -0
- package/lib/interfaces/PaymentToPayhubRequest.d.ts +1 -0
- package/lib/interfaces/PaymentToPayhubRequest.d.ts.map +1 -0
- package/lib/interfaces/PostIssueRefundRetroRemission.d.ts +1 -0
- package/lib/interfaces/PostIssueRefundRetroRemission.d.ts.map +1 -0
- package/lib/interfaces/PostRefundRetroRemission.d.ts +1 -0
- package/lib/interfaces/PostRefundRetroRemission.d.ts.map +1 -0
- package/lib/interfaces/RefundsRequest.d.ts +1 -0
- package/lib/interfaces/RefundsRequest.d.ts.map +1 -0
- package/lib/interfaces/UnidentifiedPaymentsRequest.d.ts +1 -0
- package/lib/interfaces/UnidentifiedPaymentsRequest.d.ts.map +1 -0
- package/lib/interfaces/UnsolicitedPaymentsRequest.d.ts +1 -0
- package/lib/interfaces/UnsolicitedPaymentsRequest.d.ts.map +1 -0
- package/lib/payment-lib.component.d.ts +1 -0
- package/lib/payment-lib.component.d.ts.map +1 -0
- package/lib/payment-lib.component.ngfactory.d.ts.map +1 -0
- package/lib/payment-lib.module.d.ts +1 -0
- package/lib/payment-lib.module.d.ts.map +1 -0
- package/lib/payment-lib.module.ngfactory.d.ts.map +1 -0
- package/lib/payment-lib.service.d.ts +1 -0
- package/lib/payment-lib.service.d.ts.map +1 -0
- package/lib/payment-lib.service.ngfactory.d.ts.map +1 -0
- package/lib/pipes/capitalize.pipe.d.ts +1 -0
- package/lib/pipes/capitalize.pipe.d.ts.map +1 -0
- package/lib/pipes/capitalize.pipe.ngfactory.d.ts.map +1 -0
- package/lib/pipes/ccd-hyphens.pipe.d.ts +1 -0
- package/lib/pipes/ccd-hyphens.pipe.d.ts.map +1 -0
- package/lib/pipes/ccd-hyphens.pipe.ngfactory.d.ts.map +1 -0
- package/lib/pipes/key-value.pipe.d.ts +1 -0
- package/lib/pipes/key-value.pipe.d.ts.map +1 -0
- package/lib/pipes/key-value.pipe.ngfactory.d.ts.map +1 -0
- package/lib/pipes/sanitize-html.pipe.d.ts +1 -0
- package/lib/pipes/sanitize-html.pipe.d.ts.map +1 -0
- package/lib/pipes/sanitize-html.pipe.ngfactory.d.ts.map +1 -0
- package/lib/services/bulk-scaning-payment/bulk-scaning-payment.service.d.ts +1 -0
- package/lib/services/bulk-scaning-payment/bulk-scaning-payment.service.d.ts.map +1 -0
- package/lib/services/bulk-scaning-payment/bulk-scaning-payment.service.ngfactory.d.ts.map +1 -0
- package/lib/services/card-details/card-details.service.d.ts +1 -0
- package/lib/services/card-details/card-details.service.d.ts.map +1 -0
- package/lib/services/card-details/card-details.service.ngfactory.d.ts.map +1 -0
- package/lib/services/case-transactions/case-transactions.service.d.ts +1 -0
- package/lib/services/case-transactions/case-transactions.service.d.ts.map +1 -0
- package/lib/services/case-transactions/case-transactions.service.ngfactory.d.ts.map +1 -0
- package/lib/services/orderslist.service.d.ts +1 -0
- package/lib/services/orderslist.service.d.ts.map +1 -0
- package/lib/services/orderslist.service.ngfactory.d.ts.map +1 -0
- package/lib/services/payment-list/payment-list.service.d.ts +1 -0
- package/lib/services/payment-list/payment-list.service.d.ts.map +1 -0
- package/lib/services/payment-list/payment-list.service.ngfactory.d.ts.map +1 -0
- package/lib/services/payment-view/payment-view.service.d.ts +1 -0
- package/lib/services/payment-view/payment-view.service.d.ts.map +1 -0
- package/lib/services/payment-view/payment-view.service.ngfactory.d.ts.map +1 -0
- package/lib/services/refunds/refunds.service.d.ts +1 -0
- package/lib/services/refunds/refunds.service.d.ts.map +1 -0
- package/lib/services/refunds/refunds.service.ngfactory.d.ts.map +1 -0
- package/lib/services/shared/error-handler.service.d.ts +2 -1
- package/lib/services/shared/error-handler.service.d.ts.map +1 -0
- package/lib/services/shared/error-handler.service.ngfactory.d.ts.map +1 -0
- package/lib/services/shared/httpclient/webcomponent.http.client.d.ts +1 -0
- package/lib/services/shared/httpclient/webcomponent.http.client.d.ts.map +1 -0
- package/lib/services/shared/httpclient/webcomponent.http.client.ngfactory.d.ts.map +1 -0
- package/lib/services/shared/logger/console-logger.service.d.ts +4 -3
- package/lib/services/shared/logger/console-logger.service.d.ts.map +1 -0
- package/lib/services/shared/logger/console-logger.service.ngfactory.d.ts.map +1 -0
- package/lib/services/shared/logger/logger.service.d.ts +1 -0
- package/lib/services/shared/logger/logger.service.d.ts.map +1 -0
- package/lib/services/shared/logger/logger.service.ngfactory.d.ts.map +1 -0
- package/lib/services/status-history/status-history.service.d.ts +1 -0
- package/lib/services/status-history/status-history.service.d.ts.map +1 -0
- package/lib/services/status-history/status-history.service.ngfactory.d.ts.map +1 -0
- package/lib/services/xl-file/xl-file.service.d.ts +1 -0
- package/lib/services/xl-file/xl-file.service.d.ts.map +1 -0
- package/lib/services/xl-file/xl-file.service.ngfactory.d.ts.map +1 -0
- package/package.json +6 -8
- package/public_api.d.ts +1 -0
- package/public_api.d.ts.map +1 -0
- package/esm5/hmcts-ccpay-web-component.js +0 -48
- package/esm5/lib/components/add-remission/add-remission.component.js +0 -1146
- package/esm5/lib/components/allocate-payments/allocate-payments.component.js +0 -745
- package/esm5/lib/components/card-details/card-details.component.js +0 -77
- package/esm5/lib/components/case-transactions/case-transactions.component.js +0 -1448
- package/esm5/lib/components/error-banner/error-banner.component.js +0 -36
- package/esm5/lib/components/fee-summary/fee-summary.component.js +0 -504
- package/esm5/lib/components/mark-unidentified-payment/mark-unidentified-payment.component.js +0 -371
- package/esm5/lib/components/mark-unsolicited-payment/mark-unsolicited-payment.component.js +0 -474
- package/esm5/lib/components/page-not-found.component.js +0 -17
- package/esm5/lib/components/payment-list/payment-list.component.js +0 -83
- package/esm5/lib/components/payment-view/payment-view.component.js +0 -673
- package/esm5/lib/components/pba-details/pba-details.component.js +0 -36
- package/esm5/lib/components/pba-payment/pba-payment.component.js +0 -269
- package/esm5/lib/components/process-refund/process-refund.component.js +0 -536
- package/esm5/lib/components/processed-payments/processed-payments.component.js +0 -83
- package/esm5/lib/components/refund-list/refund-list.component.js +0 -130
- package/esm5/lib/components/refund-status/refund-status.component.js +0 -554
- package/esm5/lib/components/reports/reports.component.js +0 -515
- package/esm5/lib/components/service-request/service-request.component.js +0 -690
- package/esm5/lib/components/status-history/status-history.component.js +0 -70
- package/esm5/lib/components/table/table.component.js +0 -229
- package/esm5/lib/components/unprocessed-payments/unprocessed-payments.component.js +0 -418
- package/esm5/lib/interfaces/AddRemissionRequest.js +0 -32
- package/esm5/lib/interfaces/AddRetroRemissionRequest.js +0 -19
- package/esm5/lib/interfaces/AllocatePaymentRequest.js +0 -63
- package/esm5/lib/interfaces/IAllocationPaymentsRequest.js +0 -34
- package/esm5/lib/interfaces/IBSPayments.js +0 -45
- package/esm5/lib/interfaces/ICardDetails.js +0 -21
- package/esm5/lib/interfaces/IFee.js +0 -53
- package/esm5/lib/interfaces/IOrderReferenceFee.js +0 -25
- package/esm5/lib/interfaces/IPatchRefundAction.js +0 -15
- package/esm5/lib/interfaces/IPayment.js +0 -65
- package/esm5/lib/interfaces/IPaymentFailure.js +0 -33
- package/esm5/lib/interfaces/IPaymentGroup.js +0 -19
- package/esm5/lib/interfaces/IPaymentStatus.js +0 -31
- package/esm5/lib/interfaces/IPaymentView.js +0 -17
- package/esm5/lib/interfaces/IPayments.js +0 -13
- package/esm5/lib/interfaces/IRefundAction.js +0 -15
- package/esm5/lib/interfaces/IRefundList.js +0 -29
- package/esm5/lib/interfaces/IRefundReasons.js +0 -19
- package/esm5/lib/interfaces/IRefundRejectReason.js +0 -15
- package/esm5/lib/interfaces/IRefundStatus.js +0 -23
- package/esm5/lib/interfaces/IRefundStatusHistory.js +0 -15
- package/esm5/lib/interfaces/IRemission.js +0 -25
- package/esm5/lib/interfaces/IResubmitRefundRequest.js +0 -19
- package/esm5/lib/interfaces/IStatusHistories.js +0 -19
- package/esm5/lib/interfaces/IStatusHistory.js +0 -21
- package/esm5/lib/interfaces/IserviceRequestCardPayment.js +0 -22
- package/esm5/lib/interfaces/IserviceRequestPbaPayment.js +0 -28
- package/esm5/lib/interfaces/IssueRefundRequest.js +0 -22
- package/esm5/lib/interfaces/PayhubAntennaRequest.js +0 -25
- package/esm5/lib/interfaces/PaymentToPayhubRequest.js +0 -34
- package/esm5/lib/interfaces/PostIssueRefundRetroRemission.js +0 -16
- package/esm5/lib/interfaces/PostRefundRetroRemission.js +0 -19
- package/esm5/lib/interfaces/RefundsRequest.js +0 -19
- package/esm5/lib/interfaces/UnidentifiedPaymentsRequest.js +0 -28
- package/esm5/lib/interfaces/UnsolicitedPaymentsRequest.js +0 -37
- package/esm5/lib/payment-lib.component.js +0 -237
- package/esm5/lib/payment-lib.module.js +0 -103
- package/esm5/lib/payment-lib.service.js +0 -111
- package/esm5/lib/pipes/capitalize.pipe.js +0 -32
- package/esm5/lib/pipes/ccd-hyphens.pipe.js +0 -37
- package/esm5/lib/pipes/key-value.pipe.js +0 -37
- package/esm5/lib/pipes/sanitize-html.pipe.js +0 -39
- package/esm5/lib/services/bulk-scaning-payment/bulk-scaning-payment.service.js +0 -218
- package/esm5/lib/services/card-details/card-details.service.js +0 -76
- package/esm5/lib/services/case-transactions/case-transactions.service.js +0 -76
- package/esm5/lib/services/orderslist.service.js +0 -531
- package/esm5/lib/services/payment-list/payment-list.service.js +0 -80
- package/esm5/lib/services/payment-view/payment-view.service.js +0 -416
- package/esm5/lib/services/refunds/refunds.service.js +0 -256
- package/esm5/lib/services/shared/error-handler.service.js +0 -127
- package/esm5/lib/services/shared/httpclient/webcomponent.http.client.js +0 -167
- package/esm5/lib/services/shared/logger/console-logger.service.js +0 -88
- package/esm5/lib/services/shared/logger/logger.service.js +0 -68
- package/esm5/lib/services/status-history/status-history.service.js +0 -80
- package/esm5/lib/services/xl-file/xl-file.service.js +0 -254
- package/esm5/public_api.js +0 -11
- package/fesm5/hmcts-ccpay-web-component.js +0 -10021
- package/fesm5/hmcts-ccpay-web-component.js.map +0 -1
package/esm2015/lib/components/mark-unsolicited-payment/mark-unsolicited-payment.component.js
CHANGED
|
@@ -1,7 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview added by tsickle
|
|
3
|
-
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
-
*/
|
|
5
1
|
import { Component, Input } from '@angular/core';
|
|
6
2
|
import { FormBuilder, Validators, FormControl } from '@angular/forms';
|
|
7
3
|
import { PaymentLibComponent } from '../../payment-lib.component';
|
|
@@ -10,12 +6,6 @@ import { UnsolicitedPaymentsRequest } from '../../interfaces/UnsolicitedPayments
|
|
|
10
6
|
import { PaymentViewService } from '../../services/payment-view/payment-view.service';
|
|
11
7
|
import { AllocatePaymentRequest } from '../../interfaces/AllocatePaymentRequest';
|
|
12
8
|
export class MarkUnsolicitedPaymentComponent {
|
|
13
|
-
/**
|
|
14
|
-
* @param {?} formBuilder
|
|
15
|
-
* @param {?} paymentViewService
|
|
16
|
-
* @param {?} paymentLibComponent
|
|
17
|
-
* @param {?} bulkScaningPaymentService
|
|
18
|
-
*/
|
|
19
9
|
constructor(formBuilder, paymentViewService, paymentLibComponent, bulkScaningPaymentService) {
|
|
20
10
|
this.formBuilder = formBuilder;
|
|
21
11
|
this.paymentViewService = paymentViewService;
|
|
@@ -35,9 +25,6 @@ export class MarkUnsolicitedPaymentComponent {
|
|
|
35
25
|
this.exceptionReference = null;
|
|
36
26
|
this.isStrategicFixEnable = true;
|
|
37
27
|
}
|
|
38
|
-
/**
|
|
39
|
-
* @return {?}
|
|
40
|
-
*/
|
|
41
28
|
ngOnInit() {
|
|
42
29
|
this.resetForm([false, false, false, false, false, false], 'all');
|
|
43
30
|
this.viewStatus = 'mainForm';
|
|
@@ -45,23 +32,15 @@ export class MarkUnsolicitedPaymentComponent {
|
|
|
45
32
|
this.bspaymentdcn = this.paymentLibComponent.bspaymentdcn;
|
|
46
33
|
this.isStrategicFixEnable = this.paymentLibComponent.ISSFENABLE;
|
|
47
34
|
this.getUnassignedPayment();
|
|
48
|
-
this.paymentViewService.getSiteID().subscribe(
|
|
49
|
-
* @param {?} siteids
|
|
50
|
-
* @return {?}
|
|
51
|
-
*/
|
|
52
|
-
siteids => {
|
|
35
|
+
this.paymentViewService.getSiteID().subscribe(siteids => {
|
|
53
36
|
this.isContinueButtondisabled = false;
|
|
54
37
|
this.errorMessage = this.getErrorMessage(false);
|
|
55
38
|
this.siteIDList = JSON.parse(siteids);
|
|
56
|
-
}
|
|
57
|
-
* @param {?} err
|
|
58
|
-
* @return {?}
|
|
59
|
-
*/
|
|
60
|
-
err => {
|
|
39
|
+
}, err => {
|
|
61
40
|
window.scrollTo(0, 0);
|
|
62
41
|
this.isContinueButtondisabled = true;
|
|
63
42
|
this.errorMessage = this.getErrorMessage(true);
|
|
64
|
-
})
|
|
43
|
+
});
|
|
65
44
|
this.markPaymentUnsolicitedForm = this.formBuilder.group({
|
|
66
45
|
reason: new FormControl('', Validators.compose([
|
|
67
46
|
Validators.required,
|
|
@@ -77,22 +56,13 @@ export class MarkUnsolicitedPaymentComponent {
|
|
|
77
56
|
emailId: new FormControl('')
|
|
78
57
|
});
|
|
79
58
|
}
|
|
80
|
-
/**
|
|
81
|
-
* @param {?} method
|
|
82
|
-
* @return {?}
|
|
83
|
-
*/
|
|
84
59
|
trimUnderscore(method) {
|
|
85
60
|
return this.bulkScaningPaymentService.removeUnwantedString(method, ' ');
|
|
86
61
|
}
|
|
87
|
-
/**
|
|
88
|
-
* @return {?}
|
|
89
|
-
*/
|
|
90
62
|
confirmPayments() {
|
|
91
63
|
this.isConfirmButtondisabled = true;
|
|
92
|
-
/** @type {?} */
|
|
93
64
|
const controls = this.markPaymentUnsolicitedForm.controls;
|
|
94
65
|
if (!this.isStrategicFixEnable) {
|
|
95
|
-
/** @type {?} */
|
|
96
66
|
let allocatedRequest = {
|
|
97
67
|
allocation_status: 'Transferred',
|
|
98
68
|
payment_allocation_status: {
|
|
@@ -103,105 +73,57 @@ export class MarkUnsolicitedPaymentComponent {
|
|
|
103
73
|
receiving_office: this.selectedSiteId,
|
|
104
74
|
user_id: this.caseType,
|
|
105
75
|
};
|
|
106
|
-
/** @type {?} */
|
|
107
76
|
const postStrategicBody = new AllocatePaymentRequest(this.ccdReference, this.unassignedRecord, this.caseType, this.exceptionReference, allocatedRequest);
|
|
108
|
-
this.bulkScaningPaymentService.postBSWoPGStrategic(postStrategicBody).subscribe(
|
|
109
|
-
* @param {?} res
|
|
110
|
-
* @return {?}
|
|
111
|
-
*/
|
|
112
|
-
res => {
|
|
77
|
+
this.bulkScaningPaymentService.postBSWoPGStrategic(postStrategicBody).subscribe(res => {
|
|
113
78
|
this.errorMessage = this.getErrorMessage(false);
|
|
114
|
-
/** @type {?} */
|
|
115
79
|
let response = JSON.parse(res);
|
|
116
80
|
if (response.success) {
|
|
117
81
|
this.gotoCasetransationPage();
|
|
118
82
|
}
|
|
119
|
-
}
|
|
120
|
-
* @param {?} error
|
|
121
|
-
* @return {?}
|
|
122
|
-
*/
|
|
123
|
-
(error) => {
|
|
83
|
+
}, (error) => {
|
|
124
84
|
this.errorMessage = this.getErrorMessage(true);
|
|
125
85
|
this.isConfirmButtondisabled = false;
|
|
126
|
-
})
|
|
86
|
+
});
|
|
127
87
|
}
|
|
128
88
|
else {
|
|
129
89
|
// controls.responsibleOffice.setValue('P219');
|
|
130
|
-
this.bulkScaningPaymentService.patchBSChangeStatus(this.unassignedRecord.dcn_reference, 'PROCESSED').subscribe(
|
|
131
|
-
* @param {?} res1
|
|
132
|
-
* @return {?}
|
|
133
|
-
*/
|
|
134
|
-
res1 => {
|
|
90
|
+
this.bulkScaningPaymentService.patchBSChangeStatus(this.unassignedRecord.dcn_reference, 'PROCESSED').subscribe(res1 => {
|
|
135
91
|
this.errorMessage = this.getErrorMessage(false);
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
/** @type {?} */
|
|
139
|
-
const requestBody = new AllocatePaymentRequest(this.ccdReference, this.unassignedRecord, this.siteID, this.exceptionReference);
|
|
140
|
-
this.paymentViewService.postBSPayments(requestBody).subscribe((/**
|
|
141
|
-
* @param {?} res2
|
|
142
|
-
* @return {?}
|
|
143
|
-
*/
|
|
144
|
-
res2 => {
|
|
92
|
+
const response1 = JSON.parse(res1), requestBody = new AllocatePaymentRequest(this.ccdReference, this.unassignedRecord, this.siteID, this.exceptionReference);
|
|
93
|
+
this.paymentViewService.postBSPayments(requestBody).subscribe(res2 => {
|
|
145
94
|
this.errorMessage = this.getErrorMessage(false);
|
|
146
|
-
|
|
147
|
-
const response2 = JSON.parse(res2);
|
|
148
|
-
/** @type {?} */
|
|
149
|
-
const reqBody = new UnsolicitedPaymentsRequest(response2['data'].payment_group_reference, response2['data'].reference, controls.reason.value, this.selectedSiteId, controls.responsiblePerson.value, controls.emailId.value);
|
|
95
|
+
const 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);
|
|
150
96
|
if (response2.success) {
|
|
151
|
-
this.paymentViewService.postBSUnsolicitedPayments(reqBody).subscribe(
|
|
152
|
-
* @param {?} res3
|
|
153
|
-
* @return {?}
|
|
154
|
-
*/
|
|
155
|
-
res3 => {
|
|
97
|
+
this.paymentViewService.postBSUnsolicitedPayments(reqBody).subscribe(res3 => {
|
|
156
98
|
this.errorMessage = this.getErrorMessage(false);
|
|
157
|
-
/** @type {?} */
|
|
158
99
|
const response3 = JSON.parse(res3);
|
|
159
100
|
if (response3.success) {
|
|
160
101
|
this.gotoCasetransationPage();
|
|
161
102
|
}
|
|
162
|
-
}
|
|
163
|
-
* @param {?} error
|
|
164
|
-
* @return {?}
|
|
165
|
-
*/
|
|
166
|
-
(error) => {
|
|
103
|
+
}, (error) => {
|
|
167
104
|
this.bulkScaningPaymentService.patchBSChangeStatus(this.unassignedRecord.dcn_reference, 'COMPLETE').subscribe();
|
|
168
105
|
this.errorMessage = this.getErrorMessage(true);
|
|
169
106
|
this.isConfirmButtondisabled = false;
|
|
170
|
-
})
|
|
107
|
+
});
|
|
171
108
|
}
|
|
172
|
-
}
|
|
173
|
-
* @param {?} error
|
|
174
|
-
* @return {?}
|
|
175
|
-
*/
|
|
176
|
-
(error) => {
|
|
109
|
+
}, (error) => {
|
|
177
110
|
this.bulkScaningPaymentService.patchBSChangeStatus(this.unassignedRecord.dcn_reference, 'COMPLETE').subscribe();
|
|
178
111
|
this.errorMessage = this.getErrorMessage(true);
|
|
179
112
|
this.isConfirmButtondisabled = false;
|
|
180
|
-
})
|
|
181
|
-
}
|
|
182
|
-
* @param {?} error
|
|
183
|
-
* @return {?}
|
|
184
|
-
*/
|
|
185
|
-
(error) => {
|
|
113
|
+
});
|
|
114
|
+
}, (error) => {
|
|
186
115
|
this.errorMessage = this.getErrorMessage(true);
|
|
187
116
|
this.isConfirmButtondisabled = false;
|
|
188
|
-
})
|
|
117
|
+
});
|
|
189
118
|
}
|
|
190
119
|
}
|
|
191
|
-
/**
|
|
192
|
-
* @return {?}
|
|
193
|
-
*/
|
|
194
120
|
saveAndContinue() {
|
|
195
121
|
this.resetForm([false, false, false, false, false, false], 'all');
|
|
196
|
-
/** @type {?} */
|
|
197
122
|
const formerror = this.markPaymentUnsolicitedForm.controls.reason.errors;
|
|
198
|
-
/** @type {?} */
|
|
199
123
|
const reasonField = this.markPaymentUnsolicitedForm.controls.reason;
|
|
200
124
|
//const officeIdField = this.selectedSiteId;
|
|
201
|
-
/** @type {?} */
|
|
202
125
|
const officeIdField = this.markPaymentUnsolicitedForm.controls.responsibleOffice;
|
|
203
126
|
if (this.markPaymentUnsolicitedForm.dirty && this.markPaymentUnsolicitedForm.valid) {
|
|
204
|
-
/** @type {?} */
|
|
205
127
|
const controls = this.markPaymentUnsolicitedForm.controls;
|
|
206
128
|
this.emailId = controls.emailId.value;
|
|
207
129
|
this.responsibleOffice = officeIdField.value;
|
|
@@ -230,11 +152,6 @@ export class MarkUnsolicitedPaymentComponent {
|
|
|
230
152
|
}
|
|
231
153
|
}
|
|
232
154
|
}
|
|
233
|
-
/**
|
|
234
|
-
* @param {?} val
|
|
235
|
-
* @param {?} field
|
|
236
|
-
* @return {?}
|
|
237
|
-
*/
|
|
238
155
|
resetForm(val, field) {
|
|
239
156
|
if (field === 'reason' || field === 'all') {
|
|
240
157
|
this.isReasonEmpty = val[0];
|
|
@@ -247,10 +164,6 @@ export class MarkUnsolicitedPaymentComponent {
|
|
|
247
164
|
this.responsibleOfficeHasError = val[5];
|
|
248
165
|
}
|
|
249
166
|
}
|
|
250
|
-
/**
|
|
251
|
-
* @param {?=} type
|
|
252
|
-
* @return {?}
|
|
253
|
-
*/
|
|
254
167
|
cancelMarkUnsolicitedPayments(type) {
|
|
255
168
|
if (type && type === 'cancel') {
|
|
256
169
|
if (this.checkingFormValue()) {
|
|
@@ -265,13 +178,8 @@ export class MarkUnsolicitedPaymentComponent {
|
|
|
265
178
|
this.viewStatus = 'mainForm';
|
|
266
179
|
}
|
|
267
180
|
}
|
|
268
|
-
/**
|
|
269
|
-
* @return {?}
|
|
270
|
-
*/
|
|
271
181
|
checkingFormValue() {
|
|
272
|
-
/** @type {?} */
|
|
273
182
|
const formFields = this.markPaymentUnsolicitedForm.value;
|
|
274
|
-
/** @type {?} */
|
|
275
183
|
let valueExists = false;
|
|
276
184
|
for (var field in formFields) {
|
|
277
185
|
if (formFields.hasOwnProperty(field) && formFields[field] !== "") {
|
|
@@ -281,51 +189,24 @@ export class MarkUnsolicitedPaymentComponent {
|
|
|
281
189
|
}
|
|
282
190
|
return valueExists;
|
|
283
191
|
}
|
|
284
|
-
/**
|
|
285
|
-
* @return {?}
|
|
286
|
-
*/
|
|
287
192
|
gotoCasetransationPage() {
|
|
288
193
|
this.paymentLibComponent.viewName = 'case-transactions';
|
|
289
194
|
this.paymentLibComponent.TAKEPAYMENT = true;
|
|
290
195
|
this.paymentLibComponent.ISBSENABLE = true;
|
|
291
196
|
}
|
|
292
|
-
/**
|
|
293
|
-
* @return {?}
|
|
294
|
-
*/
|
|
295
197
|
getUnassignedPayment() {
|
|
296
|
-
this.bulkScaningPaymentService.getBSPaymentsByDCN(this.bspaymentdcn).subscribe(
|
|
297
|
-
|
|
298
|
-
* @return {?}
|
|
299
|
-
*/
|
|
300
|
-
unassignedPayments => {
|
|
301
|
-
this.unassignedRecord = unassignedPayments['data'].payments.filter((/**
|
|
302
|
-
* @param {?} payment
|
|
303
|
-
* @return {?}
|
|
304
|
-
*/
|
|
305
|
-
payment => {
|
|
198
|
+
this.bulkScaningPaymentService.getBSPaymentsByDCN(this.bspaymentdcn).subscribe(unassignedPayments => {
|
|
199
|
+
this.unassignedRecord = unassignedPayments['data'].payments.filter(payment => {
|
|
306
200
|
return payment && payment.dcn_reference == this.bspaymentdcn;
|
|
307
|
-
})
|
|
201
|
+
})[0];
|
|
308
202
|
this.siteID = unassignedPayments['data'].responsible_service_id;
|
|
309
|
-
|
|
310
|
-
const beCcdNumber = unassignedPayments['data'].ccd_reference;
|
|
311
|
-
/** @type {?} */
|
|
312
|
-
const beExceptionNumber = unassignedPayments['data'].exception_record_reference;
|
|
313
|
-
/** @type {?} */
|
|
314
|
-
const exceptionReference = beCcdNumber ? beCcdNumber === this.ccdCaseNumber ? null : this.ccdCaseNumber : this.ccdCaseNumber;
|
|
203
|
+
const beCcdNumber = unassignedPayments['data'].ccd_reference, beExceptionNumber = unassignedPayments['data'].exception_record_reference, exceptionReference = beCcdNumber ? beCcdNumber === this.ccdCaseNumber ? null : this.ccdCaseNumber : this.ccdCaseNumber;
|
|
315
204
|
this.ccdReference = beCcdNumber ? beCcdNumber : null;
|
|
316
205
|
this.exceptionReference = beExceptionNumber ? beExceptionNumber : exceptionReference;
|
|
317
|
-
}
|
|
318
|
-
* @param {?} error
|
|
319
|
-
* @return {?}
|
|
320
|
-
*/
|
|
321
|
-
(error) => {
|
|
206
|
+
}, (error) => {
|
|
322
207
|
this.errorMessage = this.getErrorMessage(true);
|
|
323
|
-
})
|
|
208
|
+
});
|
|
324
209
|
}
|
|
325
|
-
/**
|
|
326
|
-
* @param {?} isErrorExist
|
|
327
|
-
* @return {?}
|
|
328
|
-
*/
|
|
329
210
|
getErrorMessage(isErrorExist) {
|
|
330
211
|
return {
|
|
331
212
|
title: "Something went wrong.",
|
|
@@ -333,10 +214,6 @@ export class MarkUnsolicitedPaymentComponent {
|
|
|
333
214
|
showError: isErrorExist
|
|
334
215
|
};
|
|
335
216
|
}
|
|
336
|
-
/**
|
|
337
|
-
* @param {?} args
|
|
338
|
-
* @return {?}
|
|
339
|
-
*/
|
|
340
217
|
selectchange(args) {
|
|
341
218
|
this.selectedSiteId = args.target.value;
|
|
342
219
|
this.selectedSiteName = args.target.options[args.target.selectedIndex].text;
|
|
@@ -345,11 +222,10 @@ export class MarkUnsolicitedPaymentComponent {
|
|
|
345
222
|
MarkUnsolicitedPaymentComponent.decorators = [
|
|
346
223
|
{ type: Component, args: [{
|
|
347
224
|
selector: 'app-mark-unsolicited-payment',
|
|
348
|
-
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 <
|
|
349
|
-
styles: [".mkpay-unidentified{margin:10px 0 20px}.mkpay-unidentified .govuk-button--secondary{margin-left:10px;background-color
|
|
350
|
-
}] }
|
|
225
|
+
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 <th class=\"govuk-table__header\" scope=\"col\">Payment asset number (DCN)</th>\n <th class=\"govuk-table__header\" scope=\"col\">Banked date</th>\n <th class=\"govuk-table__header\" scope=\"col\">Amount</th>\n <th class=\"govuk-table__header\" scope=\"col\">Method</th>\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 <th class=\"govuk-table__header\" scope=\"col\">Reason</th>\n <th class=\"govuk-table__header\" scope=\"col\">Receiving site ID</th>\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>",
|
|
226
|
+
styles: [".mkpay-unidentified{margin:10px 0 20px}.mkpay-unidentified .govuk-button--secondary{margin-left:10px;background-color:rgba(179,184,189,.9490196078431372)}.mkpay-unidentified .inline-error-class{outline:3px solid #a71414;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:white}select option{background:#fff}"]
|
|
227
|
+
},] }
|
|
351
228
|
];
|
|
352
|
-
/** @nocollapse */
|
|
353
229
|
MarkUnsolicitedPaymentComponent.ctorParameters = () => [
|
|
354
230
|
{ type: FormBuilder },
|
|
355
231
|
{ type: PaymentViewService },
|
|
@@ -359,78 +235,4 @@ MarkUnsolicitedPaymentComponent.ctorParameters = () => [
|
|
|
359
235
|
MarkUnsolicitedPaymentComponent.propDecorators = {
|
|
360
236
|
caseType: [{ type: Input }]
|
|
361
237
|
};
|
|
362
|
-
if (false) {
|
|
363
|
-
/** @type {?} */
|
|
364
|
-
MarkUnsolicitedPaymentComponent.prototype.caseType;
|
|
365
|
-
/** @type {?} */
|
|
366
|
-
MarkUnsolicitedPaymentComponent.prototype.markPaymentUnsolicitedForm;
|
|
367
|
-
/** @type {?} */
|
|
368
|
-
MarkUnsolicitedPaymentComponent.prototype.viewStatus;
|
|
369
|
-
/** @type {?} */
|
|
370
|
-
MarkUnsolicitedPaymentComponent.prototype.reasonHasError;
|
|
371
|
-
/** @type {?} */
|
|
372
|
-
MarkUnsolicitedPaymentComponent.prototype.isReasonEmpty;
|
|
373
|
-
/** @type {?} */
|
|
374
|
-
MarkUnsolicitedPaymentComponent.prototype.reasonMinHasError;
|
|
375
|
-
/** @type {?} */
|
|
376
|
-
MarkUnsolicitedPaymentComponent.prototype.reasonMaxHasError;
|
|
377
|
-
/** @type {?} */
|
|
378
|
-
MarkUnsolicitedPaymentComponent.prototype.responsibleOfficeHasError;
|
|
379
|
-
/** @type {?} */
|
|
380
|
-
MarkUnsolicitedPaymentComponent.prototype.isResponsibleOfficeEmpty;
|
|
381
|
-
/** @type {?} */
|
|
382
|
-
MarkUnsolicitedPaymentComponent.prototype.errorMessage;
|
|
383
|
-
/** @type {?} */
|
|
384
|
-
MarkUnsolicitedPaymentComponent.prototype.ccdCaseNumber;
|
|
385
|
-
/** @type {?} */
|
|
386
|
-
MarkUnsolicitedPaymentComponent.prototype.bspaymentdcn;
|
|
387
|
-
/** @type {?} */
|
|
388
|
-
MarkUnsolicitedPaymentComponent.prototype.unassignedRecord;
|
|
389
|
-
/** @type {?} */
|
|
390
|
-
MarkUnsolicitedPaymentComponent.prototype.siteID;
|
|
391
|
-
/** @type {?} */
|
|
392
|
-
MarkUnsolicitedPaymentComponent.prototype.reason;
|
|
393
|
-
/** @type {?} */
|
|
394
|
-
MarkUnsolicitedPaymentComponent.prototype.responsiblePerson;
|
|
395
|
-
/** @type {?} */
|
|
396
|
-
MarkUnsolicitedPaymentComponent.prototype.responsibleOffice;
|
|
397
|
-
/** @type {?} */
|
|
398
|
-
MarkUnsolicitedPaymentComponent.prototype.emailId;
|
|
399
|
-
/** @type {?} */
|
|
400
|
-
MarkUnsolicitedPaymentComponent.prototype.isConfirmButtondisabled;
|
|
401
|
-
/** @type {?} */
|
|
402
|
-
MarkUnsolicitedPaymentComponent.prototype.isContinueButtondisabled;
|
|
403
|
-
/** @type {?} */
|
|
404
|
-
MarkUnsolicitedPaymentComponent.prototype.ccdReference;
|
|
405
|
-
/** @type {?} */
|
|
406
|
-
MarkUnsolicitedPaymentComponent.prototype.exceptionReference;
|
|
407
|
-
/** @type {?} */
|
|
408
|
-
MarkUnsolicitedPaymentComponent.prototype.selectedSiteId;
|
|
409
|
-
/** @type {?} */
|
|
410
|
-
MarkUnsolicitedPaymentComponent.prototype.selectedSiteName;
|
|
411
|
-
/** @type {?} */
|
|
412
|
-
MarkUnsolicitedPaymentComponent.prototype.isStrategicFixEnable;
|
|
413
|
-
/** @type {?} */
|
|
414
|
-
MarkUnsolicitedPaymentComponent.prototype.siteIDList;
|
|
415
|
-
/**
|
|
416
|
-
* @type {?}
|
|
417
|
-
* @private
|
|
418
|
-
*/
|
|
419
|
-
MarkUnsolicitedPaymentComponent.prototype.formBuilder;
|
|
420
|
-
/**
|
|
421
|
-
* @type {?}
|
|
422
|
-
* @private
|
|
423
|
-
*/
|
|
424
|
-
MarkUnsolicitedPaymentComponent.prototype.paymentViewService;
|
|
425
|
-
/**
|
|
426
|
-
* @type {?}
|
|
427
|
-
* @private
|
|
428
|
-
*/
|
|
429
|
-
MarkUnsolicitedPaymentComponent.prototype.paymentLibComponent;
|
|
430
|
-
/**
|
|
431
|
-
* @type {?}
|
|
432
|
-
* @private
|
|
433
|
-
*/
|
|
434
|
-
MarkUnsolicitedPaymentComponent.prototype.bulkScaningPaymentService;
|
|
435
|
-
}
|
|
436
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFyay11bnNvbGljaXRlZC1wYXltZW50LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BobWN0cy9jY3BheS13ZWItY29tcG9uZW50LyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvbWFyay11bnNvbGljaXRlZC1wYXltZW50L21hcmstdW5zb2xpY2l0ZWQtcGF5bWVudC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxXQUFXLEVBQWEsVUFBVSxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGtFQUFrRSxDQUFDO0FBRTdHLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBU2pGLE1BQU0sT0FBTywrQkFBK0I7Ozs7Ozs7SUE0QjFDLFlBQW9CLFdBQXdCLEVBQ3BDLGtCQUFzQyxFQUN0QyxtQkFBd0MsRUFDeEMseUJBQW9EO1FBSHhDLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3BDLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDdEMsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUN4Qyw4QkFBeUIsR0FBekIseUJBQXlCLENBQTJCO1FBM0I1RCxtQkFBYyxHQUFZLEtBQUssQ0FBQztRQUNoQyxrQkFBYSxHQUFZLEtBQUssQ0FBQztRQUMvQixzQkFBaUIsR0FBWSxLQUFLLENBQUM7UUFDbkMsc0JBQWlCLEdBQVksS0FBSyxDQUFDO1FBQ25DLDhCQUF5QixH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QzlCLGlEQUFzQjs7SUFDdEIsaURBQWU7O0lBQ2YsNERBQTBCOztJQUMxQiw0REFBMEI7O0lBQzFCLGtEQUFnQjs7SUFDaEIsa0VBQXlDOztJQUN6QyxtRUFBMEM7O0lBQzFDLHVEQUE0Qjs7SUFDNUIsNkRBQWtDOztJQUNsQyx5REFBdUI7O0lBQ3ZCLDJEQUF5Qjs7SUFDekIsK0RBQXFDOztJQUNyQyxxREFBVzs7Ozs7SUFFQyxzREFBZ0M7Ozs7O0lBQzVDLDZEQUE4Qzs7Ozs7SUFDOUMsOERBQWdEOzs7OztJQUNoRCxvRUFBNEQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtR3JvdXAsIFZhbGlkYXRvcnMsIEZvcm1Db250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgUGF5bWVudExpYkNvbXBvbmVudCB9IGZyb20gJy4uLy4uL3BheW1lbnQtbGliLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCdWxrU2NhbmluZ1BheW1lbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvYnVsay1zY2FuaW5nLXBheW1lbnQvYnVsay1zY2FuaW5nLXBheW1lbnQuc2VydmljZSc7XG5pbXBvcnQgeyBJQlNQYXltZW50cyB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvSUJTUGF5bWVudHMnO1xuaW1wb3J0IHsgVW5zb2xpY2l0ZWRQYXltZW50c1JlcXVlc3QgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL1Vuc29saWNpdGVkUGF5bWVudHNSZXF1ZXN0JztcbmltcG9ydCB7IFBheW1lbnRWaWV3U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3BheW1lbnQtdmlldy9wYXltZW50LXZpZXcuc2VydmljZSc7XG5pbXBvcnQgeyBBbGxvY2F0ZVBheW1lbnRSZXF1ZXN0IH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9BbGxvY2F0ZVBheW1lbnRSZXF1ZXN0JztcbmltcG9ydCB7IEVycm9ySGFuZGxlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9zaGFyZWQvZXJyb3ItaGFuZGxlci5zZXJ2aWNlJztcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtbWFyay11bnNvbGljaXRlZC1wYXltZW50JyxcbiAgdGVtcGxhdGVVcmw6ICcuL21hcmstdW5zb2xpY2l0ZWQtcGF5bWVudC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL21hcmstdW5zb2xpY2l0ZWQtcGF5bWVudC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIE1hcmtVbnNvbGljaXRlZFBheW1lbnRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSBjYXNlVHlwZTogc3RyaW5nO1xuICBtYXJrUGF5bWVudFVuc29saWNpdGVkRm9ybTogRm9ybUdyb3VwO1xuICB2aWV3U3RhdHVzOiBzdHJpbmc7XG4gIHJlYXNvbkhhc0Vycm9yOiBib29sZWFuID0gZmFsc2U7XG4gIGlzUmVhc29uRW1wdHk6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcmVhc29uTWluSGFzRXJyb3I6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcmVhc29uTWF4SGFzRXJyb3I6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcmVzcG9uc2libGVPZmZpY2VIYXNFcnJvcjogYm9vbGVhbiA9IGZhbHNlO1xuICBpc1Jlc3BvbnNpYmxlT2ZmaWNlRW1wdHk6IGJvb2xlYW4gPSBmYWxzZTtcbiAgZXJyb3JNZXNzYWdlID0gdGhpcy5nZXRFcnJvck1lc3NhZ2UoZmFsc2UpO1xuICBjY2RDYXNlTnVtYmVyOiBzdHJpbmc7XG4gIGJzcGF5bWVudGRjbjogc3RyaW5nO1xuICB1bmFzc2lnbmVkUmVjb3JkOiBJQlNQYXltZW50cztcbiAgc2l0ZUlEOiBzdHJpbmcgPSBudWxsO1xuICByZWFzb246IHN0cmluZztcbiAgcmVzcG9uc2libGVQZXJzb246IHN0cmluZztcbiAgcmVzcG9uc2libGVPZmZpY2U6IHN0cmluZztcbiAgZW1haWxJZDogc3RyaW5nO1xuICBpc0NvbmZpcm1CdXR0b25kaXNhYmxlZDogQm9vbGVhbiA9IGZhbHNlO1xuICBpc0NvbnRpbnVlQnV0dG9uZGlzYWJsZWQ6IEJvb2xlYW4gPSBmYWxzZTtcbiAgY2NkUmVmZXJlbmNlOiBzdHJpbmcgPSBudWxsO1xuICBleGNlcHRpb25SZWZlcmVuY2U6IHN0cmluZyA9IG51bGw7XG4gIHNlbGVjdGVkU2l0ZUlkOiBzdHJpbmc7XG4gIHNlbGVjdGVkU2l0ZU5hbWU6IHN0cmluZztcbiAgaXNTdHJhdGVnaWNGaXhFbmFibGU6IGJvb2xlYW4gPSB0cnVlO1xuICBzaXRlSURMaXN0O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyLFxuICBwcml2YXRlIHBheW1lbnRWaWV3U2VydmljZTogUGF5bWVudFZpZXdTZXJ2aWNlLFxuICBwcml2YXRlIHBheW1lbnRMaWJDb21wb25lbnQ6IFBheW1lbnRMaWJDb21wb25lbnQsXG4gIHByaXZhdGUgYnVsa1NjYW5pbmdQYXltZW50U2VydmljZTogQnVsa1NjYW5pbmdQYXltZW50U2VydmljZSkgeyB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5yZXNldEZvcm0oW2ZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlXSwgJ2FsbCcpO1xuICAgIHRoaXMudmlld1N0YXR1cyA9ICdtYWluRm9ybSc7XG4gICAgdGhpcy5jY2RDYXNlTnVtYmVyID0gdGhpcy5wYXltZW50TGliQ29tcG9uZW50LkNDRF9DQVNFX05VTUJFUjtcbiAgICB0aGlzLmJzcGF5bWVudGRjbiA9IHRoaXMucGF5bWVudExpYkNvbXBvbmVudC5ic3BheW1lbnRkY247XG4gICAgdGhpcy5pc1N0cmF0ZWdpY0ZpeEVuYWJsZSA9IHRoaXMucGF5bWVudExpYkNvbXBvbmVudC5JU1NGRU5BQkxFO1xuICAgIHRoaXMuZ2V0VW5hc3NpZ25lZFBheW1lbnQoKTtcblxuICAgIHRoaXMucGF5bWVudFZpZXdTZXJ2aWNlLmdldFNpdGVJRCgpLnN1YnNjcmliZShcbiAgICAgIHNpdGVpZHMgPT4ge1xuICAgICAgICB0aGlzLmlzQ29udGludWVCdXR0b25kaXNhYmxlZCA9IGZhbHNlO1xuICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9IHRoaXMuZ2V0RXJyb3JNZXNzYWdlKGZhbHNlKTtcbiAgICAgICAgdGhpcy5zaXRlSURMaXN0ID0gSlNPTi5wYXJzZShzaXRlaWRzKTtcbiAgICAgIH0sXG4gICAgICBlcnIgPT4ge1xuICAgICAgICB3aW5kb3cuc2Nyb2xsVG8oMCwgMCk7XG4gICAgICAgIHRoaXMuaXNDb250aW51ZUJ1dHRvbmRpc2FibGVkID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSB0aGlzLmdldEVycm9yTWVzc2FnZSh0cnVlKTtcbiAgICAgIH1cbiAgICApO1xuICAgIFxuICAgIHRoaXMubWFya1BheW1lbnRVbnNvbGljaXRlZEZvcm0gPSB0aGlzLmZvcm1CdWlsZGVyLmdyb3VwKHtcbiAgICAgIHJlYXNvbjogbmV3IEZvcm1Db250cm9sKCcnLCBWYWxpZGF0b3JzLmNvbXBvc2UoW1xuICAgICAgICBWYWxpZGF0b3JzLnJlcXVpcmVkLFxuICAgICAgICBWYWxpZGF0b3JzLm1pbkxlbmd0aCgzKSxcbiAgICAgICAgVmFsaWRhdG9ycy5tYXhMZW5ndGgoMjU1KSxcbiAgICAgICAgVmFsaWRhdG9ycy5wYXR0ZXJuKCdeKFthLXpBLVowLTlcXFxccyxcXFxcLl0qKSQnKVxuICAgICAgXSkpLFxuICAgICAgcmVzcG9uc2libGVPZmZpY2U6IG5ldyBGb3JtQ29udHJvbCgnJywgVmFsaWRhdG9ycy5jb21wb3NlKFtcbiAgICAgICAgVmFsaWRhdG9ycy5yZXF1aXJlZCxcbiAgICAgICAgVmFsaWRhdG9ycy5wYXR0ZXJuKCdeKFthLXpBLVowLTlcXFxcc1xcXFxuLFxcXFwuLTpdKikkJylcbiAgICAgIF0pKSxcbiAgICAgIHJlc3BvbnNpYmxlUGVyc29uOiBuZXcgRm9ybUNvbnRyb2woJycpLFxuICAgICAgZW1haWxJZDogbmV3IEZvcm1Db250cm9sKCcnKVxuICAgIH0pO1xuICB9XG4gIHRyaW1VbmRlcnNjb3JlKG1ldGhvZDogc3RyaW5nKXtcbiAgICByZXR1cm4gdGhpcy5idWxrU2NhbmluZ1BheW1lbnRTZXJ2aWNlLnJlbW92ZVVud2FudGVkU3RyaW5nKG1ldGhvZCwnICcpO1xuICB9XG4gIGNvbmZpcm1QYXltZW50cygpIHtcbiAgICB0aGlzLmlzQ29uZmlybUJ1dHRvbmRpc2FibGVkID0gdHJ1ZTtcbiAgICBjb25zdCBjb250cm9scyA9IHRoaXMubWFya1BheW1lbnRVbnNvbGljaXRlZEZvcm0uY29udHJvbHM7XG4gICAgaWYoIXRoaXMuaXNTdHJhdGVnaWNGaXhFbmFibGUpIHtcbiAgICAgIGxldCBhbGxvY2F0ZWRSZXF1ZXN0ID0ge1xuICAgICAgICBhbGxvY2F0aW9uX3N0YXR1czonVHJhbnNmZXJyZWQnLFxuICAgICAgICBwYXltZW50X2FsbG9jYXRpb25fc3RhdHVzOiB7XG4gICAgICAgICAgZGVzY3JpcHRpb246ICcnLFxuICAgICAgICAgIG5hbWU6ICdUcmFuc2ZlcnJlZCdcbiAgICAgICAgfSxcbiAgICAgICAgdW5pZGVudGlmaWVkX3JlYXNvbjogY29udHJvbHMucmVhc29uLnZhbHVlLFxuICAgICAgICByZWNlaXZpbmdfb2ZmaWNlOiB0aGlzLnNlbGVjdGVkU2l0ZUlkLFxuICAgICAgICB1c2VyX2lkOiB0aGlzLmNhc2VUeXBlLFxuICAgICAgfVxuICAgICAgY29uc3QgcG9zdFN0cmF0ZWdpY0JvZHkgPSBuZXcgQWxsb2NhdGVQYXltZW50UmVxdWVzdFxuICAgICAgKHRoaXMuY2NkUmVmZXJlbmNlLCB0aGlzLnVuYXNzaWduZWRSZWNvcmQsIHRoaXMuY2FzZVR5cGUsIHRoaXMuZXhjZXB0aW9uUmVmZXJlbmNlLCBhbGxvY2F0ZWRSZXF1ZXN0KTtcbiAgICAgIHRoaXMuYnVsa1NjYW5pbmdQYXltZW50U2VydmljZS5wb3N0QlNXb1BHU3RyYXRlZ2ljKHBvc3RTdHJhdGVnaWNCb2R5KS5zdWJzY3JpYmUoXG4gICAgICAgIHJlcyA9PiB7XG4gICAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSB0aGlzLmdldEVycm9yTWVzc2FnZShmYWxzZSk7XG4gICAgICAgICAgbGV0IHJlc3BvbnNlID0gSlNPTi5wYXJzZShyZXMpO1xuICAgICAgICAgIGlmIChyZXNwb25zZS5zdWNjZXNzKSB7XG4gICAgICAgICAgIHRoaXMuZ290b0Nhc2V0cmFuc2F0aW9uUGFnZSgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgKGVycm9yOiBhbnkpID0+IHtcbiAgICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9IHRoaXMuZ2V0RXJyb3JNZXNzYWdlKHRydWUpO1xuICAgICAgICAgIHRoaXMuaXNDb25maXJtQnV0dG9uZGlzYWJsZWQgPSBmYWxzZTtcbiAgICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAvLyBjb250cm9scy5yZXNwb25zaWJsZU9mZmljZS5zZXRWYWx1ZSgnUDIxOScpO1xuICAgIHRoaXMuYnVsa1NjYW5pbmdQYXltZW50U2VydmljZS5wYXRjaEJTQ2hhbmdlU3RhdHVzKHRoaXMudW5hc3NpZ25lZFJlY29yZC5kY25fcmVmZXJlbmNlLCAnUFJPQ0VTU0VEJykuc3Vic2NyaWJlKFxuICAgICAgcmVzMSA9PiB7XG4gICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gdGhpcy5nZXRFcnJvck1lc3NhZ2UoZmFsc2UpO1xuICAgICAgICBjb25zdCByZXNwb25zZTEgPSBKU09OLnBhcnNlKHJlczEpLFxuICAgICAgICAgcmVxdWVzdEJvZHkgPSBuZXcgQWxsb2NhdGVQYXltZW50UmVxdWVzdFxuICAgICAgICAgKHRoaXMuY2NkUmVmZXJlbmNlLCB0aGlzLnVuYXNzaWduZWRSZWNvcmQsIHRoaXMuc2l0ZUlELCB0aGlzLmV4Y2VwdGlvblJlZmVyZW5jZSlcbiAgICAgICAgdGhpcy5wYXltZW50Vmlld1NlcnZpY2UucG9zdEJTUGF5bWVudHMocmVxdWVzdEJvZHkpLnN1YnNjcmliZShcbiAgICAgICAgICByZXMyID0+IHtcbiAgICAgICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gdGhpcy5nZXRFcnJvck1lc3NhZ2UoZmFsc2UpO1xuICAgICAgICAgICAgY29uc3QgcmVzcG9uc2UyID0gSlNPTi5wYXJzZShyZXMyKSxcbiAgICAgICAgICAgIHJlcUJvZHkgPSBuZXcgVW5zb2xpY2l0ZWRQYXltZW50c1JlcXVlc3RcbiAgICAgICAgICAgIChyZXNwb25zZTJbJ2RhdGEnXS5wYXltZW50X2dyb3VwX3JlZmVyZW5jZSwgcmVzcG9uc2UyWydkYXRhJ10ucmVmZXJlbmNlLCBjb250cm9scy5yZWFzb24udmFsdWUsIHRoaXMuc2VsZWN0ZWRTaXRlSWQsIGNvbnRyb2xzLnJlc3BvbnNpYmxlUGVyc29uLnZhbHVlLCBjb250cm9scy5lbWFpbElkLnZhbHVlKTtcbiAgICAgICAgICAgICBpZiAocmVzcG9uc2UyLnN1Y2Nlc3MpIHtcbiAgICAgICAgICAgICAgdGhpcy5wYXltZW50Vmlld1NlcnZpY2UucG9zdEJTVW5zb2xpY2l0ZWRQYXltZW50cyhyZXFCb2R5KS5zdWJzY3JpYmUoXG4gICAgICAgICAgICAgICAgcmVzMyA9PiB7XG4gICAgICAgICAgICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9IHRoaXMuZ2V0RXJyb3JNZXNzYWdlKGZhbHNlKTtcbiAgICAgICAgICAgICAgICAgIGNvbnN0IHJlc3BvbnNlMyA9IEpTT04ucGFyc2UocmVzMyk7XG4gICAgICAgICAgICAgICAgICBpZiAocmVzcG9uc2UzLnN1Y2Nlc3MpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5nb3RvQ2FzZXRyYW5zYXRpb25QYWdlKCk7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAoZXJyb3I6IGFueSkgPT4ge1xuICAgICAgICAgICAgICAgICAgdGhpcy5idWxrU2NhbmluZ1BheW1lbnRTZXJ2aWNlLnBhdGNoQlNDaGFuZ2VTdGF0dXModGhpcy51bmFzc2lnbmVkUmVjb3JkLmRjbl9yZWZlcmVuY2UsICdDT01QTEVURScpLnN1YnNjcmliZSgpO1xuICAgICAgICAgICAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSB0aGlzLmdldEVycm9yTWVzc2FnZSh0cnVlKTtcbiAgICAgICAgICAgICAgICAgIHRoaXMuaXNDb25maXJtQnV0dG9uZGlzYWJsZWQgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSxcbiAgICAgICAgICAoZXJyb3I6IGFueSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5idWxrU2NhbmluZ1BheW1lbnRTZXJ2aWNlLnBhdGNoQlNDaGFuZ2VTdGF0dXModGhpcy51bmFzc2lnbmVkUmVjb3JkLmRjbl9yZWZlcmVuY2UsICdDT01QTEVURScpLnN1YnNjcmliZSgpO1xuICAgICAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSB0aGlzLmdldEVycm9yTWVzc2FnZSh0cnVlKTtcbiAgICAgICAgICAgIHRoaXMuaXNDb25maXJtQnV0dG9uZGlzYWJsZWQgPSBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgICk7XG4gICAgICB9LFxuICAgICAgKGVycm9yOiBhbnkpID0+IHtcbiAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSB0aGlzLmdldEVycm9yTWVzc2FnZSh0cnVlKTtcbiAgICAgICAgdGhpcy5pc0NvbmZpcm1CdXR0b25kaXNhYmxlZCA9IGZhbHNlO1xuICAgICAgfVxuICAgICk7XG4gICAgfVxuICB9XG4gc2F2ZUFuZENvbnRpbnVlKCkge1xuICAgIHRoaXMucmVzZXRGb3JtKFtmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZV0sICdhbGwnKTtcbiAgICAgICAgY29uc3QgZm9ybWVycm9yID0gdGhpcy5tYXJrUGF5bWVudFVuc29saWNpdGVkRm9ybS5jb250cm9scy5yZWFzb24uZXJyb3JzO1xuICAgICAgICBjb25zdCByZWFzb25GaWVsZCA9IHRoaXMubWFya1BheW1lbnRVbnNvbGljaXRlZEZvcm0uY29udHJvbHMucmVhc29uO1xuICAgICAgICAvL2NvbnN0IG9mZmljZUlkRmllbGQgPSB0aGlzLnNlbGVjdGVkU2l0ZUlkO1xuICAgICAgICBjb25zdCBvZmZpY2VJZEZpZWxkICA9IHRoaXMubWFya1BheW1lbnRVbnNvbGljaXRlZEZvcm0uY29udHJvbHMucmVzcG9uc2libGVPZmZpY2U7XG4gICAgaWYgKHRoaXMubWFya1BheW1lbnRVbnNvbGljaXRlZEZvcm0uZGlydHkgJiYgdGhpcy5tYXJrUGF5bWVudFVuc29saWNpdGVkRm9ybS52YWxpZCkge1xuICAgICAgY29uc3QgY29udHJvbHMgPSB0aGlzLm1hcmtQYXltZW50VW5zb2xpY2l0ZWRGb3JtLmNvbnRyb2xzO1xuICAgICAgdGhpcy5lbWFpbElkID0gY29udHJvbHMuZW1haWxJZC52YWx1ZTtcbiAgICAgIHRoaXMucmVzcG9uc2libGVPZmZpY2UgPSBvZmZpY2VJZEZpZWxkLnZhbHVlO1xuICAgICAgdGhpcy5yZXNwb25zaWJsZVBlcnNvbiA9IGNvbnRyb2xzLnJlc3BvbnNpYmxlUGVyc29uLnZhbHVlO1xuICAgICAgdGhpcy5yZWFzb24gPSBjb250cm9scy5yZWFzb24udmFsdWU7XG4gICAgICB0aGlzLnZpZXdTdGF0dXMgPSAndW5zb2xpY2l0ZWRDb250aW51ZUNvbmZpcm0nO1xuICAgIH1lbHNlIHtcbiAgICAgIGlmKCByZWFzb25GaWVsZC52YWx1ZSA9PSAnJyApIHtcbiAgICAgICAgdGhpcy5yZXNldEZvcm0oW3RydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2VdLCAncmVhc29uJyk7XG4gICAgICB9XG4gICAgICBpZihyZWFzb25GaWVsZC52YWx1ZSAhPSAnJyAmJiB0aGlzLm1hcmtQYXltZW50VW5zb2xpY2l0ZWRGb3JtLmNvbnRyb2xzLnJlYXNvbi5pbnZhbGlkICkge1xuICAgICAgICB0aGlzLnJlc2V0Rm9ybShbZmFsc2UsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZV0sICdyZWFzb24nKTtcbiAgICAgIH1cbiAgICAgIGlmKGZvcm1lcnJvciAmJiBmb3JtZXJyb3IubWlubGVuZ3RoICYmIGZvcm1lcnJvci5taW5sZW5ndGguYWN0dWFsTGVuZ3RoIDwgMyApIHtcbiAgICAgICAgdGhpcy5yZXNldEZvcm0oW2ZhbHNlLGZhbHNlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2VdLCAncmVhc29uJyk7XG4gICAgICB9XG4gICAgICBpZihmb3JtZXJyb3IgJiYgZm9ybWVycm9yLm1heGxlbmd0aCAmJiBmb3JtZXJyb3IubWF4bGVuZ3RoLmFjdHVhbExlbmd0aCA+IDI1NSApIHtcbiAgICAgICAgdGhpcy5yZXNldEZvcm0oW2ZhbHNlLGZhbHNlLGZhbHNlLHRydWUsZmFsc2UsZmFsc2VdLCAncmVhc29uJyk7XG4gICAgICB9XG4gICAgICBpZihvZmZpY2VJZEZpZWxkLnZhbHVlID09ICcnKSB7XG4gICAgICAgIHRoaXMucmVzZXRGb3JtKFtmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLGZhbHNlXSwgJ3Jlc3BvbnNpYmxlT2ZmaWNlJyk7XG4gICAgICB9XG4gICAgICBpZihvZmZpY2VJZEZpZWxkLnZhbHVlICE9ICcnICYmIG9mZmljZUlkRmllbGQuaW52YWxpZCkge1xuICAgICAgICB0aGlzLnJlc2V0Rm9ybShbZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZV0sJ3Jlc3BvbnNpYmxlT2ZmaWNlJyk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIHJlc2V0Rm9ybSh2YWwsIGZpZWxkKSB7XG4gICAgaWYoZmllbGQ9PT0ncmVhc29uJyB8fCBmaWVsZD09PSdhbGwnKSB7XG4gICAgICB0aGlzLmlzUmVhc29uRW1wdHkgPSB2YWxbMF07XG4gICAgICB0aGlzLnJlYXNvbkhhc0Vycm9yID0gdmFsWzFdO1xuICAgICAgdGhpcy5yZWFzb25NaW5IYXNFcnJvciA9IHZhbFsyXTtcbiAgICAgIHRoaXMucmVhc29uTWF4SGFzRXJyb3IgPSB2YWxbM107XG4gICAgfVxuICAgIGlmKGZpZWxkPT09J3Jlc3BvbnNpYmxlT2ZmaWNlJyB8fCBmaWVsZD09PSdhbGwnKSB7XG4gICAgICB0aGlzLmlzUmVzcG9uc2libGVPZmZpY2VFbXB0eSA9IHZhbFs0XTtcbiAgICAgIHRoaXMucmVzcG9uc2libGVPZmZpY2VIYXNFcnJvciA9IHZhbFs1XTtcbiAgICB9XG4gIH1cblxuY2FuY2VsTWFya1Vuc29saWNpdGVkUGF5bWVudHModHlwZT86c3RyaW5nKXtcbiAgICBpZih0eXBlICYmIHR5cGUgPT09ICdjYW5jZWwnKSB7XG4gICAgICBpZih0aGlzLmNoZWNraW5nRm9ybVZhbHVlKCkpe1xuICAgICAgICB0aGlzLnZpZXdTdGF0dXMgPSAndW5zb2xpY2l0ZWRDYW5jZWxDb25maXJtJztcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuZ290b0Nhc2V0cmFuc2F0aW9uUGFnZSgpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLm1hcmtQYXltZW50VW5zb2xpY2l0ZWRGb3JtLmNvbnRyb2xzLnJlc3BvbnNpYmxlT2ZmaWNlLnNldFZhbHVlKCcnKTtcbiAgICAgIHRoaXMudmlld1N0YXR1cyA9ICdtYWluRm9ybSc7XG4gICAgfVxuICB9XG4gIGNoZWNraW5nRm9ybVZhbHVlKCl7XG4gICAgY29uc3QgZm9ybUZpZWxkcyA9IHRoaXMubWFya1BheW1lbnRVbnNvbGljaXRlZEZvcm0udmFsdWU7XG4gICAgbGV0IHZhbHVlRXhpc3RzID0gZmFsc2U7XG5cbiAgICBmb3IgKHZhciBmaWVsZCBpbiBmb3JtRmllbGRzKSB7XG4gICAgICBpZiAoZm9ybUZpZWxkcy5oYXNPd25Qcm9wZXJ0eShmaWVsZCkgJiYgZm9ybUZpZWxkc1tmaWVsZF0gIT09XCJcIikge1xuICAgICAgICB2YWx1ZUV4aXN0cyA9IHRydWU7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdmFsdWVFeGlzdHM7XG4gIH1cbiAgZ290b0Nhc2V0cmFuc2F0aW9uUGFnZSgpIHtcbiAgICB0aGlzLnBheW1lbnRMaWJDb21wb25lbnQudmlld05hbWUgPSAnY2FzZS10cmFuc2FjdGlvbnMnO1xuICAgIHRoaXMucGF5bWVudExpYkNvbXBvbmVudC5UQUtFUEFZTUVOVCA9IHRydWU7XG4gICAgdGhpcy5wYXltZW50TGliQ29tcG9uZW50LklTQlNFTkFCTEUgPSB0cnVlO1xuICB9XG4gICBnZXRVbmFzc2lnbmVkUGF5bWVudCgpIHtcbiAgICB0aGlzLmJ1bGtTY2FuaW5nUGF5bWVudFNlcnZpY2UuZ2V0QlNQYXltZW50c0J5RENOKHRoaXMuYnNwYXltZW50ZGNuKS5zdWJzY3JpYmUoXG4gICAgICB1bmFzc2lnbmVkUGF5bWVudHMgPT4ge1xuICAgICAgICBcbiAgICAgIHRoaXMudW5hc3NpZ25lZFJlY29yZCA9IHVuYXNzaWduZWRQYXltZW50c1snZGF0YSddLnBheW1lbnRzLmZpbHRlcihwYXltZW50ID0+IHtcbiAgICAgICAgcmV0dXJuIHBheW1lbnQgJiYgcGF5bWVudC5kY25fcmVmZXJlbmNlID09IHRoaXMuYnNwYXltZW50ZGNuO1xuICAgICAgfSlbMF07XG4gICAgICAgdGhpcy5zaXRlSUQgPSB1bmFzc2lnbmVkUGF5bWVudHNbJ2RhdGEnXS5yZXNwb25zaWJsZV9zZXJ2aWNlX2lkO1xuICAgICAgICBjb25zdCBiZUNjZE51bWJlciA9IHVuYXNzaWduZWRQYXltZW50c1snZGF0YSddLmNjZF9yZWZlcmVuY2UsXG4gICAgICAgICBiZUV4Y2VwdGlvbk51bWJlciA9IHVuYXNzaWduZWRQYXltZW50c1snZGF0YSddLmV4Y2VwdGlvbl9yZWNvcmRfcmVmZXJlbmNlLFxuICAgICAgICAgZXhjZXB0aW9uUmVmZXJlbmNlID0gYmVDY2ROdW1iZXIgPyBiZUNjZE51bWJlciA9PT0gdGhpcy5jY2RDYXNlTnVtYmVyID8gbnVsbCA6IHRoaXMuY2NkQ2FzZU51bWJlciA6IHRoaXMuY2NkQ2FzZU51bWJlcjtcbiAgICAgICAgdGhpcy5jY2RSZWZlcmVuY2UgPSBiZUNjZE51bWJlciA/IGJlQ2NkTnVtYmVyIDogbnVsbDtcbiAgICAgICAgdGhpcy5leGNlcHRpb25SZWZlcmVuY2UgPSBiZUV4Y2VwdGlvbk51bWJlciA/IGJlRXhjZXB0aW9uTnVtYmVyIDogZXhjZXB0aW9uUmVmZXJlbmNlO1xuICAgIH0sXG4gICAgICAoZXJyb3I6IGFueSkgPT4ge1xuICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9IHRoaXMuZ2V0RXJyb3JNZXNzYWdlKHRydWUpO1xuICAgICAgfVxuICAgICk7XG4gIH1cblxuICBnZXRFcnJvck1lc3NhZ2UoaXNFcnJvckV4aXN0KSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHRpdGxlOiBcIlNvbWV0aGluZyB3ZW50IHdyb25nLlwiLFxuICAgICAgYm9keTogXCJQbGVhc2UgdHJ5IGFnYWluIGxhdGVyLlwiLFxuICAgICAgc2hvd0Vycm9yOiBpc0Vycm9yRXhpc3RcbiAgICB9O1xuICB9XG5cbiAgc2VsZWN0Y2hhbmdlKGFyZ3MpeyBcbiAgICB0aGlzLnNlbGVjdGVkU2l0ZUlkID0gYXJncy50YXJnZXQudmFsdWU7IFxuICAgIHRoaXMuc2VsZWN0ZWRTaXRlTmFtZSA9IGFyZ3MudGFyZ2V0Lm9wdGlvbnNbYXJncy50YXJnZXQuc2VsZWN0ZWRJbmRleF0udGV4dDsgXG4gIH0gXG5cbn1cbiJdfQ==
|
|
238
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFyay11bnNvbGljaXRlZC1wYXltZW50LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3BheW1lbnQtbGliL3NyYy9saWIvY29tcG9uZW50cy9tYXJrLXVuc29saWNpdGVkLXBheW1lbnQvbWFyay11bnNvbGljaXRlZC1wYXltZW50LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBQUUsV0FBVyxFQUFhLFVBQVUsRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNsRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxrRUFBa0UsQ0FBQztBQUU3RyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUN6RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN0RixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQVNqRixNQUFNLE9BQU8sK0JBQStCO0lBNEIxQyxZQUFvQixXQUF3QixFQUNwQyxrQkFBc0MsRUFDdEMsbUJBQXdDLEVBQ3hDLHlCQUFvRDtRQUh4QyxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUNwQyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBQ3RDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDeEMsOEJBQXlCLEdBQXpCLHlCQUF5QixDQUEyQjtRQTNCNUQsbUJBQWMsR0FBWSxLQUFLLENBQUM7UUFDaEMsa0JBQWEsR0FBWSxLQUFLLENBQUM7UUFDL0Isc0JBQWlCLEdBQVksS0FBSyxDQUFDO1FBQ25DLHNCQUFpQixHQUFZLEtBQUssQ0FBQztRQUNuQyw4QkFBeUIsR0FBWSxLQUFLLENBQUM7UUFDM0MsNkJBQXdCLEdBQVksS0FBSyxDQUFDO1FBQzFDLGlCQUFZLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUkzQyxXQUFNLEdBQVcsSUFBSSxDQUFDO1FBS3RCLDRCQUF1QixHQUFZLEtBQUssQ0FBQztRQUN6Qyw2QkFBd0IsR0FBWSxLQUFLLENBQUM7UUFDMUMsaUJBQVksR0FBVyxJQUFJLENBQUM7UUFDNUIsdUJBQWtCLEdBQVcsSUFBSSxDQUFDO1FBR2xDLHlCQUFvQixHQUFZLElBQUksQ0FBQztJQU0yQixDQUFDO0lBRWpFLFFBQVE7UUFDTixJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFDLEtBQUssRUFBQyxLQUFLLEVBQUMsS0FBSyxFQUFDLEtBQUssRUFBQyxLQUFLLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM3RCxJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztRQUM3QixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxlQUFlLENBQUM7UUFDOUQsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsWUFBWSxDQUFDO1FBQzFELElBQUksQ0FBQyxvQkFBb0IsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsVUFBVSxDQUFDO1FBQ2hFLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1FBRTVCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxTQUFTLENBQzNDLE9BQU8sQ0FBQyxFQUFFO1lBQ1IsSUFBSSxDQUFDLHdCQUF3QixHQUFHLEtBQUssQ0FBQztZQUN0QyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDaEQsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3hDLENBQUMsRUFDRCxHQUFHLENBQUMsRUFBRTtZQUNKLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ3RCLElBQUksQ0FBQyx3QkFBd0IsR0FBRyxJQUFJLENBQUM7WUFDckMsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2pELENBQUMsQ0FDRixDQUFDO1FBRUYsSUFBSSxDQUFDLDBCQUEwQixHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDO1lBQ3ZELE1BQU0sRUFBRSxJQUFJLFdBQVcsQ0FBQyxFQUFFLEVBQUUsVUFBVSxDQUFDLE9BQU8sQ0FBQztnQkFDN0MsVUFBVSxDQUFDLFFBQVE7Z0JBQ25CLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO2dCQUN2QixVQUFVLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQztnQkFDekIsVUFBVSxDQUFDLE9BQU8sQ0FBQyx5QkFBeUIsQ0FBQzthQUM5QyxDQUFDLENBQUM7WUFDSCxpQkFBaUIsRUFBRSxJQUFJLFdBQVcsQ0FBQyxFQUFFLEVBQUUsVUFBVSxDQUFDLE9BQU8sQ0FBQztnQkFDeEQsVUFBVSxDQUFDLFFBQVE7Z0JBQ25CLFVBQVUsQ0FBQyxPQUFPLENBQUMsOEJBQThCLENBQUM7YUFDbkQsQ0FBQyxDQUFDO1lBQ0gsaUJBQWlCLEVBQUUsSUFBSSxXQUFXLENBQUMsRUFBRSxDQUFDO1lBQ3RDLE9BQU8sRUFBRSxJQUFJLFdBQVcsQ0FBQyxFQUFFLENBQUM7U0FDN0IsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUNELGNBQWMsQ0FBQyxNQUFjO1FBQzNCLE9BQU8sSUFBSSxDQUFDLHlCQUF5QixDQUFDLG9CQUFvQixDQUFDLE1BQU0sRUFBQyxHQUFHLENBQUMsQ0FBQztJQUN6RSxDQUFDO0lBQ0QsZUFBZTtRQUNiLElBQUksQ0FBQyx1QkFBdUIsR0FBRyxJQUFJLENBQUM7UUFDcEMsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLDBCQUEwQixDQUFDLFFBQVEsQ0FBQztRQUMxRCxJQUFHLENBQUMsSUFBSSxDQUFDLG9CQUFvQixFQUFFO1lBQzdCLElBQUksZ0JBQWdCLEdBQUc7Z0JBQ3JCLGlCQUFpQixFQUFDLGFBQWE7Z0JBQy9CLHlCQUF5QixFQUFFO29CQUN6QixXQUFXLEVBQUUsRUFBRTtvQkFDZixJQUFJLEVBQUUsYUFBYTtpQkFDcEI7Z0JBQ0QsbUJBQW1CLEVBQUUsUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLO2dCQUMxQyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsY0FBYztnQkFDckMsT0FBTyxFQUFFLElBQUksQ0FBQyxRQUFRO2FBQ3ZCLENBQUE7WUFDRCxNQUFNLGlCQUFpQixHQUFHLElBQUksc0JBQXNCLENBQ25ELElBQUksQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixFQUFFLGdCQUFnQixDQUFDLENBQUM7WUFDckcsSUFBSSxDQUFDLHlCQUF5QixDQUFDLG1CQUFtQixDQUFDLGlCQUFpQixDQUFDLENBQUMsU0FBUyxDQUM3RSxHQUFHLENBQUMsRUFBRTtnQkFDSixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ2hELElBQUksUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQy9CLElBQUksUUFBUSxDQUFDLE9BQU8sRUFBRTtvQkFDckIsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7aUJBQzlCO1lBQ0gsQ0FBQyxFQUNELENBQUMsS0FBVSxFQUFFLEVBQUU7Z0JBQ2IsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUMvQyxJQUFJLENBQUMsdUJBQXVCLEdBQUcsS0FBSyxDQUFDO1lBQ3ZDLENBQUMsQ0FBQyxDQUFDO1NBQ047YUFBTTtZQUNQLCtDQUErQztZQUMvQyxJQUFJLENBQUMseUJBQXlCLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGFBQWEsRUFBRSxXQUFXLENBQUMsQ0FBQyxTQUFTLENBQzVHLElBQUksQ0FBQyxFQUFFO2dCQUNMLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDaEQsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFDakMsV0FBVyxHQUFHLElBQUksc0JBQXNCLENBQ3ZDLElBQUksQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUE7Z0JBQ2pGLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLENBQUMsU0FBUyxDQUMzRCxJQUFJLENBQUMsRUFBRTtvQkFDTCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQ2hELE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQ2xDLE9BQU8sR0FBRyxJQUFJLDBCQUEwQixDQUN2QyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsdUJBQXVCLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFNBQVMsRUFBRSxRQUFRLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsY0FBYyxFQUFFLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztvQkFDOUssSUFBSSxTQUFTLENBQUMsT0FBTyxFQUFFO3dCQUN0QixJQUFJLENBQUMsa0JBQWtCLENBQUMseUJBQXlCLENBQUMsT0FBTyxDQUFDLENBQUMsU0FBUyxDQUNsRSxJQUFJLENBQUMsRUFBRTs0QkFDTCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7NEJBQ2hELE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7NEJBQ25DLElBQUksU0FBUyxDQUFDLE9BQU8sRUFBRTtnQ0FDckIsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7NkJBQy9CO3dCQUNILENBQUMsRUFDRCxDQUFDLEtBQVUsRUFBRSxFQUFFOzRCQUNiLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxFQUFFLFVBQVUsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDOzRCQUNoSCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7NEJBQy9DLElBQUksQ0FBQyx1QkFBdUIsR0FBRyxLQUFLLENBQUM7d0JBQ3ZDLENBQUMsQ0FDRixDQUFDO3FCQUNIO2dCQUNILENBQUMsRUFDRCxDQUFDLEtBQVUsRUFBRSxFQUFFO29CQUNiLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxFQUFFLFVBQVUsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDO29CQUNoSCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7b0JBQy9DLElBQUksQ0FBQyx1QkFBdUIsR0FBRyxLQUFLLENBQUM7Z0JBQ3ZDLENBQUMsQ0FDRixDQUFDO1lBQ0osQ0FBQyxFQUNELENBQUMsS0FBVSxFQUFFLEVBQUU7Z0JBQ2IsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUMvQyxJQUFJLENBQUMsdUJBQXVCLEdBQUcsS0FBSyxDQUFDO1lBQ3ZDLENBQUMsQ0FDRixDQUFDO1NBQ0Q7SUFDSCxDQUFDO0lBQ0YsZUFBZTtRQUNaLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUMsS0FBSyxFQUFDLEtBQUssRUFBQyxLQUFLLEVBQUMsS0FBSyxFQUFDLEtBQUssQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3pELE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQztRQUN6RSxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsMEJBQTBCLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQztRQUNwRSw0Q0FBNEM7UUFDNUMsTUFBTSxhQUFhLEdBQUksSUFBSSxDQUFDLDBCQUEwQixDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQztRQUN0RixJQUFJLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLDBCQUEwQixDQUFDLEtBQUssRUFBRTtZQUNsRixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsMEJBQTBCLENBQUMsUUFBUSxDQUFDO1lBQzFELElBQUksQ0FBQyxPQUFPLEdBQUcsUUFBUSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7WUFDdEMsSUFBSSxDQUFDLGlCQUFpQixHQUFHLGFBQWEsQ0FBQyxLQUFLLENBQUM7WUFDN0MsSUFBSSxDQUFDLGlCQUFpQixHQUFHLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUM7WUFDMUQsSUFBSSxDQUFDLE1BQU0sR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztZQUNwQyxJQUFJLENBQUMsVUFBVSxHQUFHLDRCQUE0QixDQUFDO1NBQ2hEO2FBQUs7WUFDSixJQUFJLFdBQVcsQ0FBQyxLQUFLLElBQUksRUFBRSxFQUFHO2dCQUM1QixJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxFQUFDLEtBQUssRUFBQyxLQUFLLEVBQUMsS0FBSyxFQUFDLEtBQUssRUFBQyxLQUFLLENBQUMsRUFBRSxRQUFRLENBQUMsQ0FBQzthQUNoRTtZQUNELElBQUcsV0FBVyxDQUFDLEtBQUssSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLDBCQUEwQixDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFHO2dCQUN0RixJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFDLElBQUksRUFBQyxLQUFLLEVBQUMsS0FBSyxFQUFDLEtBQUssRUFBQyxLQUFLLENBQUMsRUFBRSxRQUFRLENBQUMsQ0FBQzthQUNoRTtZQUNELElBQUcsU0FBUyxJQUFJLFNBQVMsQ0FBQyxTQUFTLElBQUksU0FBUyxDQUFDLFNBQVMsQ0FBQyxZQUFZLEdBQUcsQ0FBQyxFQUFHO2dCQUM1RSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFDLEtBQUssRUFBQyxJQUFJLEVBQUMsS0FBSyxFQUFDLEtBQUssRUFBQyxLQUFLLENBQUMsRUFBRSxRQUFRLENBQUMsQ0FBQzthQUNoRTtZQUNELElBQUcsU0FBUyxJQUFJLFNBQVMsQ0FBQyxTQUFTLElBQUksU0FBUyxDQUFDLFNBQVMsQ0FBQyxZQUFZLEdBQUcsR0FBRyxFQUFHO2dCQUM5RSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFDLEtBQUssRUFBQyxLQUFLLEVBQUMsSUFBSSxFQUFDLEtBQUssRUFBQyxLQUFLLENBQUMsRUFBRSxRQUFRLENBQUMsQ0FBQzthQUNoRTtZQUNELElBQUcsYUFBYSxDQUFDLEtBQUssSUFBSSxFQUFFLEVBQUU7Z0JBQzVCLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUMsS0FBSyxFQUFDLEtBQUssRUFBQyxLQUFLLEVBQUMsSUFBSSxFQUFDLEtBQUssQ0FBQyxFQUFFLG1CQUFtQixDQUFDLENBQUM7YUFDM0U7WUFDRCxJQUFHLGFBQWEsQ0FBQyxLQUFLLElBQUksRUFBRSxJQUFJLGFBQWEsQ0FBQyxPQUFPLEVBQUU7Z0JBQ3JELElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUMsS0FBSyxFQUFDLEtBQUssRUFBQyxLQUFLLEVBQUMsS0FBSyxFQUFDLElBQUksQ0FBQyxFQUFDLG1CQUFtQixDQUFDLENBQUM7YUFDMUU7U0FDRjtJQUNILENBQUM7SUFDRCxTQUFTLENBQUMsR0FBRyxFQUFFLEtBQUs7UUFDbEIsSUFBRyxLQUFLLEtBQUcsUUFBUSxJQUFJLEtBQUssS0FBRyxLQUFLLEVBQUU7WUFDcEMsSUFBSSxDQUFDLGFBQWEsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDNUIsSUFBSSxDQUFDLGNBQWMsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDN0IsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNoQyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ2pDO1FBQ0QsSUFBRyxLQUFLLEtBQUcsbUJBQW1CLElBQUksS0FBSyxLQUFHLEtBQUssRUFBRTtZQUMvQyxJQUFJLENBQUMsd0JBQXdCLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3ZDLElBQUksQ0FBQyx5QkFBeUIsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDekM7SUFDSCxDQUFDO0lBRUgsNkJBQTZCLENBQUMsSUFBWTtRQUN0QyxJQUFHLElBQUksSUFBSSxJQUFJLEtBQUssUUFBUSxFQUFFO1lBQzVCLElBQUcsSUFBSSxDQUFDLGlCQUFpQixFQUFFLEVBQUM7Z0JBQzFCLElBQUksQ0FBQyxVQUFVLEdBQUcsMEJBQTBCLENBQUM7YUFDOUM7aUJBQU07Z0JBQ0wsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7YUFDL0I7U0FDRjthQUFNO1lBQ0wsSUFBSSxDQUFDLDBCQUEwQixDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDeEUsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7U0FDOUI7SUFDSCxDQUFDO0lBQ0QsaUJBQWlCO1FBQ2YsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLDBCQUEwQixDQUFDLEtBQUssQ0FBQztRQUN6RCxJQUFJLFdBQVcsR0FBRyxLQUFLLENBQUM7UUFFeEIsS0FBSyxJQUFJLEtBQUssSUFBSSxVQUFVLEVBQUU7WUFDNUIsSUFBSSxVQUFVLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxJQUFJLFVBQVUsQ0FBQyxLQUFLLENBQUMsS0FBSSxFQUFFLEVBQUU7Z0JBQy9ELFdBQVcsR0FBRyxJQUFJLENBQUM7Z0JBQ25CLE1BQU07YUFDUDtTQUNGO1FBQ0QsT0FBTyxXQUFXLENBQUM7SUFDckIsQ0FBQztJQUNELHNCQUFzQjtRQUNwQixJQUFJLENBQUMsbUJBQW1CLENBQUMsUUFBUSxHQUFHLG1CQUFtQixDQUFDO1FBQ3hELElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1FBQzVDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO0lBQzdDLENBQUM7SUFDQSxvQkFBb0I7UUFDbkIsSUFBSSxDQUFDLHlCQUF5QixDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxTQUFTLENBQzVFLGtCQUFrQixDQUFDLEVBQUU7WUFFckIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEVBQUU7Z0JBQzNFLE9BQU8sT0FBTyxJQUFJLE9BQU8sQ0FBQyxhQUFhLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQztZQUMvRCxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNMLElBQUksQ0FBQyxNQUFNLEdBQUcsa0JBQWtCLENBQUMsTUFBTSxDQUFDLENBQUMsc0JBQXNCLENBQUM7WUFDL0QsTUFBTSxXQUFXLEdBQUcsa0JBQWtCLENBQUMsTUFBTSxDQUFDLENBQUMsYUFBYSxFQUMzRCxpQkFBaUIsR0FBRyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsQ0FBQywwQkFBMEIsRUFDekUsa0JBQWtCLEdBQUcsV0FBVyxDQUFDLENBQUMsQ0FBQyxXQUFXLEtBQUssSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDO1lBQ3hILElBQUksQ0FBQyxZQUFZLEdBQUcsV0FBVyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztZQUNyRCxJQUFJLENBQUMsa0JBQWtCLEdBQUcsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQztRQUN6RixDQUFDLEVBQ0MsQ0FBQyxLQUFVLEVBQUUsRUFBRTtZQUNiLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNqRCxDQUFDLENBQ0YsQ0FBQztJQUNKLENBQUM7SUFFRCxlQUFlLENBQUMsWUFBWTtRQUMxQixPQUFPO1lBQ0wsS0FBSyxFQUFFLHVCQUF1QjtZQUM5QixJQUFJLEVBQUUseUJBQXlCO1lBQy9CLFNBQVMsRUFBRSxZQUFZO1NBQ3hCLENBQUM7SUFDSixDQUFDO0lBRUQsWUFBWSxDQUFDLElBQUk7UUFDZixJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDO1FBQ3hDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUM5RSxDQUFDOzs7WUFqUUYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSw4QkFBOEI7Z0JBQ3hDLHE1TUFBd0Q7O2FBRXpEOzs7WUFkUSxXQUFXO1lBS1gsa0JBQWtCO1lBSmxCLG1CQUFtQjtZQUNuQix5QkFBeUI7Ozt1QkFjL0IsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycywgRm9ybUNvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBQYXltZW50TGliQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vcGF5bWVudC1saWIuY29tcG9uZW50JztcbmltcG9ydCB7IEJ1bGtTY2FuaW5nUGF5bWVudFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9idWxrLXNjYW5pbmctcGF5bWVudC9idWxrLXNjYW5pbmctcGF5bWVudC5zZXJ2aWNlJztcbmltcG9ydCB7IElCU1BheW1lbnRzIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9JQlNQYXltZW50cyc7XG5pbXBvcnQgeyBVbnNvbGljaXRlZFBheW1lbnRzUmVxdWVzdCB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvVW5zb2xpY2l0ZWRQYXltZW50c1JlcXVlc3QnO1xuaW1wb3J0IHsgUGF5bWVudFZpZXdTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvcGF5bWVudC12aWV3L3BheW1lbnQtdmlldy5zZXJ2aWNlJztcbmltcG9ydCB7IEFsbG9jYXRlUGF5bWVudFJlcXVlc3QgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL0FsbG9jYXRlUGF5bWVudFJlcXVlc3QnO1xuaW1wb3J0IHsgRXJyb3JIYW5kbGVyU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3NoYXJlZC9lcnJvci1oYW5kbGVyLnNlcnZpY2UnO1xuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1tYXJrLXVuc29saWNpdGVkLXBheW1lbnQnLFxuICB0ZW1wbGF0ZVVybDogJy4vbWFyay11bnNvbGljaXRlZC1wYXltZW50LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbWFyay11bnNvbGljaXRlZC1wYXltZW50LmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgTWFya1Vuc29saWNpdGVkUGF5bWVudENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIGNhc2VUeXBlOiBzdHJpbmc7XG4gIG1hcmtQYXltZW50VW5zb2xpY2l0ZWRGb3JtOiBGb3JtR3JvdXA7XG4gIHZpZXdTdGF0dXM6IHN0cmluZztcbiAgcmVhc29uSGFzRXJyb3I6IGJvb2xlYW4gPSBmYWxzZTtcbiAgaXNSZWFzb25FbXB0eTogYm9vbGVhbiA9IGZhbHNlO1xuICByZWFzb25NaW5IYXNFcnJvcjogYm9vbGVhbiA9IGZhbHNlO1xuICByZWFzb25NYXhIYXNFcnJvcjogYm9vbGVhbiA9IGZhbHNlO1xuICByZXNwb25zaWJsZU9mZmljZUhhc0Vycm9yOiBib29sZWFuID0gZmFsc2U7XG4gIGlzUmVzcG9uc2libGVPZmZpY2VFbXB0eTogYm9vbGVhbiA9IGZhbHNlO1xuICBlcnJvck1lc3NhZ2UgPSB0aGlzLmdldEVycm9yTWVzc2FnZShmYWxzZSk7XG4gIGNjZENhc2VOdW1iZXI6IHN0cmluZztcbiAgYnNwYXltZW50ZGNuOiBzdHJpbmc7XG4gIHVuYXNzaWduZWRSZWNvcmQ6IElCU1BheW1lbnRzO1xuICBzaXRlSUQ6IHN0cmluZyA9IG51bGw7XG4gIHJlYXNvbjogc3RyaW5nO1xuICByZXNwb25zaWJsZVBlcnNvbjogc3RyaW5nO1xuICByZXNwb25zaWJsZU9mZmljZTogc3RyaW5nO1xuICBlbWFpbElkOiBzdHJpbmc7XG4gIGlzQ29uZmlybUJ1dHRvbmRpc2FibGVkOiBCb29sZWFuID0gZmFsc2U7XG4gIGlzQ29udGludWVCdXR0b25kaXNhYmxlZDogQm9vbGVhbiA9IGZhbHNlO1xuICBjY2RSZWZlcmVuY2U6IHN0cmluZyA9IG51bGw7XG4gIGV4Y2VwdGlvblJlZmVyZW5jZTogc3RyaW5nID0gbnVsbDtcbiAgc2VsZWN0ZWRTaXRlSWQ6IHN0cmluZztcbiAgc2VsZWN0ZWRTaXRlTmFtZTogc3RyaW5nO1xuICBpc1N0cmF0ZWdpY0ZpeEVuYWJsZTogYm9vbGVhbiA9IHRydWU7XG4gIHNpdGVJRExpc3Q7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBmb3JtQnVpbGRlcjogRm9ybUJ1aWxkZXIsXG4gIHByaXZhdGUgcGF5bWVudFZpZXdTZXJ2aWNlOiBQYXltZW50Vmlld1NlcnZpY2UsXG4gIHByaXZhdGUgcGF5bWVudExpYkNvbXBvbmVudDogUGF5bWVudExpYkNvbXBvbmVudCxcbiAgcHJpdmF0ZSBidWxrU2NhbmluZ1BheW1lbnRTZXJ2aWNlOiBCdWxrU2NhbmluZ1BheW1lbnRTZXJ2aWNlKSB7IH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnJlc2V0Rm9ybShbZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2VdLCAnYWxsJyk7XG4gICAgdGhpcy52aWV3U3RhdHVzID0gJ21haW5Gb3JtJztcbiAgICB0aGlzLmNjZENhc2VOdW1iZXIgPSB0aGlzLnBheW1lbnRMaWJDb21wb25lbnQuQ0NEX0NBU0VfTlVNQkVSO1xuICAgIHRoaXMuYnNwYXltZW50ZGNuID0gdGhpcy5wYXltZW50TGliQ29tcG9uZW50LmJzcGF5bWVudGRjbjtcbiAgICB0aGlzLmlzU3RyYXRlZ2ljRml4RW5hYmxlID0gdGhpcy5wYXltZW50TGliQ29tcG9uZW50LklTU0ZFTkFCTEU7XG4gICAgdGhpcy5nZXRVbmFzc2lnbmVkUGF5bWVudCgpO1xuXG4gICAgdGhpcy5wYXltZW50Vmlld1NlcnZpY2UuZ2V0U2l0ZUlEKCkuc3Vic2NyaWJlKFxuICAgICAgc2l0ZWlkcyA9PiB7XG4gICAgICAgIHRoaXMuaXNDb250aW51ZUJ1dHRvbmRpc2FibGVkID0gZmFsc2U7XG4gICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gdGhpcy5nZXRFcnJvck1lc3NhZ2UoZmFsc2UpO1xuICAgICAgICB0aGlzLnNpdGVJRExpc3QgPSBKU09OLnBhcnNlKHNpdGVpZHMpO1xuICAgICAgfSxcbiAgICAgIGVyciA9PiB7XG4gICAgICAgIHdpbmRvdy5zY3JvbGxUbygwLCAwKTtcbiAgICAgICAgdGhpcy5pc0NvbnRpbnVlQnV0dG9uZGlzYWJsZWQgPSB0cnVlO1xuICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9IHRoaXMuZ2V0RXJyb3JNZXNzYWdlKHRydWUpO1xuICAgICAgfVxuICAgICk7XG4gICAgXG4gICAgdGhpcy5tYXJrUGF5bWVudFVuc29saWNpdGVkRm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xuICAgICAgcmVhc29uOiBuZXcgRm9ybUNvbnRyb2woJycsIFZhbGlkYXRvcnMuY29tcG9zZShbXG4gICAgICAgIFZhbGlkYXRvcnMucmVxdWlyZWQsXG4gICAgICAgIFZhbGlkYXRvcnMubWluTGVuZ3RoKDMpLFxuICAgICAgICBWYWxpZGF0b3JzLm1heExlbmd0aCgyNTUpLFxuICAgICAgICBWYWxpZGF0b3JzLnBhdHRlcm4oJ14oW2EtekEtWjAtOVxcXFxzLFxcXFwuXSopJCcpXG4gICAgICBdKSksXG4gICAgICByZXNwb25zaWJsZU9mZmljZTogbmV3IEZvcm1Db250cm9sKCcnLCBWYWxpZGF0b3JzLmNvbXBvc2UoW1xuICAgICAgICBWYWxpZGF0b3JzLnJlcXVpcmVkLFxuICAgICAgICBWYWxpZGF0b3JzLnBhdHRlcm4oJ14oW2EtekEtWjAtOVxcXFxzXFxcXG4sXFxcXC4tOl0qKSQnKVxuICAgICAgXSkpLFxuICAgICAgcmVzcG9uc2libGVQZXJzb246IG5ldyBGb3JtQ29udHJvbCgnJyksXG4gICAgICBlbWFpbElkOiBuZXcgRm9ybUNvbnRyb2woJycpXG4gICAgfSk7XG4gIH1cbiAgdHJpbVVuZGVyc2NvcmUobWV0aG9kOiBzdHJpbmcpe1xuICAgIHJldHVybiB0aGlzLmJ1bGtTY2FuaW5nUGF5bWVudFNlcnZpY2UucmVtb3ZlVW53YW50ZWRTdHJpbmcobWV0aG9kLCcgJyk7XG4gIH1cbiAgY29uZmlybVBheW1lbnRzKCkge1xuICAgIHRoaXMuaXNDb25maXJtQnV0dG9uZGlzYWJsZWQgPSB0cnVlO1xuICAgIGNvbnN0IGNvbnRyb2xzID0gdGhpcy5tYXJrUGF5bWVudFVuc29saWNpdGVkRm9ybS5jb250cm9scztcbiAgICBpZighdGhpcy5pc1N0cmF0ZWdpY0ZpeEVuYWJsZSkge1xuICAgICAgbGV0IGFsbG9jYXRlZFJlcXVlc3QgPSB7XG4gICAgICAgIGFsbG9jYXRpb25fc3RhdHVzOidUcmFuc2ZlcnJlZCcsXG4gICAgICAgIHBheW1lbnRfYWxsb2NhdGlvbl9zdGF0dXM6IHtcbiAgICAgICAgICBkZXNjcmlwdGlvbjogJycsXG4gICAgICAgICAgbmFtZTogJ1RyYW5zZmVycmVkJ1xuICAgICAgICB9LFxuICAgICAgICB1bmlkZW50aWZpZWRfcmVhc29uOiBjb250cm9scy5yZWFzb24udmFsdWUsXG4gICAgICAgIHJlY2VpdmluZ19vZmZpY2U6IHRoaXMuc2VsZWN0ZWRTaXRlSWQsXG4gICAgICAgIHVzZXJfaWQ6IHRoaXMuY2FzZVR5cGUsXG4gICAgICB9XG4gICAgICBjb25zdCBwb3N0U3RyYXRlZ2ljQm9keSA9IG5ldyBBbGxvY2F0ZVBheW1lbnRSZXF1ZXN0XG4gICAgICAodGhpcy5jY2RSZWZlcmVuY2UsIHRoaXMudW5hc3NpZ25lZFJlY29yZCwgdGhpcy5jYXNlVHlwZSwgdGhpcy5leGNlcHRpb25SZWZlcmVuY2UsIGFsbG9jYXRlZFJlcXVlc3QpO1xuICAgICAgdGhpcy5idWxrU2NhbmluZ1BheW1lbnRTZXJ2aWNlLnBvc3RCU1dvUEdTdHJhdGVnaWMocG9zdFN0cmF0ZWdpY0JvZHkpLnN1YnNjcmliZShcbiAgICAgICAgcmVzID0+IHtcbiAgICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9IHRoaXMuZ2V0RXJyb3JNZXNzYWdlKGZhbHNlKTtcbiAgICAgICAgICBsZXQgcmVzcG9uc2UgPSBKU09OLnBhcnNlKHJlcyk7XG4gICAgICAgICAgaWYgKHJlc3BvbnNlLnN1Y2Nlc3MpIHtcbiAgICAgICAgICAgdGhpcy5nb3RvQ2FzZXRyYW5zYXRpb25QYWdlKCk7XG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICAoZXJyb3I6IGFueSkgPT4ge1xuICAgICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gdGhpcy5nZXRFcnJvck1lc3NhZ2UodHJ1ZSk7XG4gICAgICAgICAgdGhpcy5pc0NvbmZpcm1CdXR0b25kaXNhYmxlZCA9IGZhbHNlO1xuICAgICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgIC8vIGNvbnRyb2xzLnJlc3BvbnNpYmxlT2ZmaWNlLnNldFZhbHVlKCdQMjE5Jyk7XG4gICAgdGhpcy5idWxrU2NhbmluZ1BheW1lbnRTZXJ2aWNlLnBhdGNoQlNDaGFuZ2VTdGF0dXModGhpcy51bmFzc2lnbmVkUmVjb3JkLmRjbl9yZWZlcmVuY2UsICdQUk9DRVNTRUQnKS5zdWJzY3JpYmUoXG4gICAgICByZXMxID0+IHtcbiAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSB0aGlzLmdldEVycm9yTWVzc2FnZShmYWxzZSk7XG4gICAgICAgIGNvbnN0IHJlc3BvbnNlMSA9IEpTT04ucGFyc2UocmVzMSksXG4gICAgICAgICByZXF1ZXN0Qm9keSA9IG5ldyBBbGxvY2F0ZVBheW1lbnRSZXF1ZXN0XG4gICAgICAgICAodGhpcy5jY2RSZWZlcmVuY2UsIHRoaXMudW5hc3NpZ25lZFJlY29yZCwgdGhpcy5zaXRlSUQsIHRoaXMuZXhjZXB0aW9uUmVmZXJlbmNlKVxuICAgICAgICB0aGlzLnBheW1lbnRWaWV3U2VydmljZS5wb3N0QlNQYXltZW50cyhyZXF1ZXN0Qm9keSkuc3Vic2NyaWJlKFxuICAgICAgICAgIHJlczIgPT4ge1xuICAgICAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSB0aGlzLmdldEVycm9yTWVzc2FnZShmYWxzZSk7XG4gICAgICAgICAgICBjb25zdCByZXNwb25zZTIgPSBKU09OLnBhcnNlKHJlczIpLFxuICAgICAgICAgICAgcmVxQm9keSA9IG5ldyBVbnNvbGljaXRlZFBheW1lbnRzUmVxdWVzdFxuICAgICAgICAgICAgKHJlc3BvbnNlMlsnZGF0YSddLnBheW1lbnRfZ3JvdXBfcmVmZXJlbmNlLCByZXNwb25zZTJbJ2RhdGEnXS5yZWZlcmVuY2UsIGNvbnRyb2xzLnJlYXNvbi52YWx1ZSwgdGhpcy5zZWxlY3RlZFNpdGVJZCwgY29udHJvbHMucmVzcG9uc2libGVQZXJzb24udmFsdWUsIGNvbnRyb2xzLmVtYWlsSWQudmFsdWUpO1xuICAgICAgICAgICAgIGlmIChyZXNwb25zZTIuc3VjY2Vzcykge1xuICAgICAgICAgICAgICB0aGlzLnBheW1lbnRWaWV3U2VydmljZS5wb3N0QlNVbnNvbGljaXRlZFBheW1lbnRzKHJlcUJvZHkpLnN1YnNjcmliZShcbiAgICAgICAgICAgICAgICByZXMzID0+IHtcbiAgICAgICAgICAgICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gdGhpcy5nZXRFcnJvck1lc3NhZ2UoZmFsc2UpO1xuICAgICAgICAgICAgICAgICAgY29uc3QgcmVzcG9uc2UzID0gSlNPTi5wYXJzZShyZXMzKTtcbiAgICAgICAgICAgICAgICAgIGlmIChyZXNwb25zZTMuc3VjY2Vzcykge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmdvdG9DYXNldHJhbnNhdGlvblBhZ2UoKTtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIChlcnJvcjogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgICB0aGlzLmJ1bGtTY2FuaW5nUGF5bWVudFNlcnZpY2UucGF0Y2hCU0NoYW5nZVN0YXR1cyh0aGlzLnVuYXNzaWduZWRSZWNvcmQuZGNuX3JlZmVyZW5jZSwgJ0NPTVBMRVRFJykuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9IHRoaXMuZ2V0RXJyb3JNZXNzYWdlKHRydWUpO1xuICAgICAgICAgICAgICAgICAgdGhpcy5pc0NvbmZpcm1CdXR0b25kaXNhYmxlZCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9LFxuICAgICAgICAgIChlcnJvcjogYW55KSA9PiB7XG4gICAgICAgICAgICB0aGlzLmJ1bGtTY2FuaW5nUGF5bWVudFNlcnZpY2UucGF0Y2hCU0NoYW5nZVN0YXR1cyh0aGlzLnVuYXNzaWduZWRSZWNvcmQuZGNuX3JlZmVyZW5jZSwgJ0NPTVBMRVRFJykuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9IHRoaXMuZ2V0RXJyb3JNZXNzYWdlKHRydWUpO1xuICAgICAgICAgICAgdGhpcy5pc0NvbmZpcm1CdXR0b25kaXNhYmxlZCA9IGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgKTtcbiAgICAgIH0sXG4gICAgICAoZXJyb3I6IGFueSkgPT4ge1xuICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9IHRoaXMuZ2V0RXJyb3JNZXNzYWdlKHRydWUpO1xuICAgICAgICB0aGlzLmlzQ29uZmlybUJ1dHRvbmRpc2FibGVkID0gZmFsc2U7XG4gICAgICB9XG4gICAgKTtcbiAgICB9XG4gIH1cbiBzYXZlQW5kQ29udGludWUoKSB7XG4gICAgdGhpcy5yZXNldEZvcm0oW2ZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlXSwgJ2FsbCcpO1xuICAgICAgICBjb25zdCBmb3JtZXJyb3IgPSB0aGlzLm1hcmtQYXltZW50VW5zb2xpY2l0ZWRGb3JtLmNvbnRyb2xzLnJlYXNvbi5lcnJvcnM7XG4gICAgICAgIGNvbnN0IHJlYXNvbkZpZWxkID0gdGhpcy5tYXJrUGF5bWVudFVuc29saWNpdGVkRm9ybS5jb250cm9scy5yZWFzb247XG4gICAgICAgIC8vY29uc3Qgb2ZmaWNlSWRGaWVsZCA9IHRoaXMuc2VsZWN0ZWRTaXRlSWQ7XG4gICAgICAgIGNvbnN0IG9mZmljZUlkRmllbGQgID0gdGhpcy5tYXJrUGF5bWVudFVuc29saWNpdGVkRm9ybS5jb250cm9scy5yZXNwb25zaWJsZU9mZmljZTtcbiAgICBpZiAodGhpcy5tYXJrUGF5bWVudFVuc29saWNpdGVkRm9ybS5kaXJ0eSAmJiB0aGlzLm1hcmtQYXltZW50VW5zb2xpY2l0ZWRGb3JtLnZhbGlkKSB7XG4gICAgICBjb25zdCBjb250cm9scyA9IHRoaXMubWFya1BheW1lbnRVbnNvbGljaXRlZEZvcm0uY29udHJvbHM7XG4gICAgICB0aGlzLmVtYWlsSWQgPSBjb250cm9scy5lbWFpbElkLnZhbHVlO1xuICAgICAgdGhpcy5yZXNwb25zaWJsZU9mZmljZSA9IG9mZmljZUlkRmllbGQudmFsdWU7XG4gICAgICB0aGlzLnJlc3BvbnNpYmxlUGVyc29uID0gY29udHJvbHMucmVzcG9uc2libGVQZXJzb24udmFsdWU7XG4gICAgICB0aGlzLnJlYXNvbiA9IGNvbnRyb2xzLnJlYXNvbi52YWx1ZTtcbiAgICAgIHRoaXMudmlld1N0YXR1cyA9ICd1bnNvbGljaXRlZENvbnRpbnVlQ29uZmlybSc7XG4gICAgfWVsc2Uge1xuICAgICAgaWYoIHJlYXNvbkZpZWxkLnZhbHVlID09ICcnICkge1xuICAgICAgICB0aGlzLnJlc2V0Rm9ybShbdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZV0sICdyZWFzb24nKTtcbiAgICAgIH1cbiAgICAgIGlmKHJlYXNvbkZpZWxkLnZhbHVlICE9ICcnICYmIHRoaXMubWFya1BheW1lbnRVbnNvbGljaXRlZEZvcm0uY29udHJvbHMucmVhc29uLmludmFsaWQgKSB7XG4gICAgICAgIHRoaXMucmVzZXRGb3JtKFtmYWxzZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlXSwgJ3JlYXNvbicpO1xuICAgICAgfVxuICAgICAgaWYoZm9ybWVycm9yICYmIGZvcm1lcnJvci5taW5sZW5ndGggJiYgZm9ybWVycm9yLm1pbmxlbmd0aC5hY3R1YWxMZW5ndGggPCAzICkge1xuICAgICAgICB0aGlzLnJlc2V0Rm9ybShbZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZV0sICdyZWFzb24nKTtcbiAgICAgIH1cbiAgICAgIGlmKGZvcm1lcnJvciAmJiBmb3JtZXJyb3IubWF4bGVuZ3RoICYmIGZvcm1lcnJvci5tYXhsZW5ndGguYWN0dWFsTGVuZ3RoID4gMjU1ICkge1xuICAgICAgICB0aGlzLnJlc2V0Rm9ybShbZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZSxmYWxzZV0sICdyZWFzb24nKTtcbiAgICAgIH1cbiAgICAgIGlmKG9mZmljZUlkRmllbGQudmFsdWUgPT0gJycpIHtcbiAgICAgICAgdGhpcy5yZXNldEZvcm0oW2ZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsZmFsc2VdLCAncmVzcG9uc2libGVPZmZpY2UnKTtcbiAgICAgIH1cbiAgICAgIGlmKG9mZmljZUlkRmllbGQudmFsdWUgIT0gJycgJiYgb2ZmaWNlSWRGaWVsZC5pbnZhbGlkKSB7XG4gICAgICAgIHRoaXMucmVzZXRGb3JtKFtmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlXSwncmVzcG9uc2libGVPZmZpY2UnKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgcmVzZXRGb3JtKHZhbCwgZmllbGQpIHtcbiAgICBpZihmaWVsZD09PSdyZWFzb24nIHx8IGZpZWxkPT09J2FsbCcpIHtcbiAgICAgIHRoaXMuaXNSZWFzb25FbXB0eSA9IHZhbFswXTtcbiAgICAgIHRoaXMucmVhc29uSGFzRXJyb3IgPSB2YWxbMV07XG4gICAgICB0aGlzLnJlYXNvbk1pbkhhc0Vycm9yID0gdmFsWzJdO1xuICAgICAgdGhpcy5yZWFzb25NYXhIYXNFcnJvciA9IHZhbFszXTtcbiAgICB9XG4gICAgaWYoZmllbGQ9PT0ncmVzcG9uc2libGVPZmZpY2UnIHx8IGZpZWxkPT09J2FsbCcpIHtcbiAgICAgIHRoaXMuaXNSZXNwb25zaWJsZU9mZmljZUVtcHR5ID0gdmFsWzRdO1xuICAgICAgdGhpcy5yZXNwb25zaWJsZU9mZmljZUhhc0Vycm9yID0gdmFsWzVdO1xuICAgIH1cbiAgfVxuXG5jYW5jZWxNYXJrVW5zb2xpY2l0ZWRQYXltZW50cyh0eXBlPzpzdHJpbmcpe1xuICAgIGlmKHR5cGUgJiYgdHlwZSA9PT0gJ2NhbmNlbCcpIHtcbiAgICAgIGlmKHRoaXMuY2hlY2tpbmdGb3JtVmFsdWUoKSl7XG4gICAgICAgIHRoaXMudmlld1N0YXR1cyA9ICd1bnNvbGljaXRlZENhbmNlbENvbmZpcm0nO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5nb3RvQ2FzZXRyYW5zYXRpb25QYWdlKCk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMubWFya1BheW1lbnRVbnNvbGljaXRlZEZvcm0uY29udHJvbHMucmVzcG9uc2libGVPZmZpY2Uuc2V0VmFsdWUoJycpO1xuICAgICAgdGhpcy52aWV3U3RhdHVzID0gJ21haW5Gb3JtJztcbiAgICB9XG4gIH1cbiAgY2hlY2tpbmdGb3JtVmFsdWUoKXtcbiAgICBjb25zdCBmb3JtRmllbGRzID0gdGhpcy5tYXJrUGF5bWVudFVuc29saWNpdGVkRm9ybS52YWx1ZTtcbiAgICBsZXQgdmFsdWVFeGlzdHMgPSBmYWxzZTtcblxuICAgIGZvciAodmFyIGZpZWxkIGluIGZvcm1GaWVsZHMpIHtcbiAgICAgIGlmIChmb3JtRmllbGRzLmhhc093blByb3BlcnR5KGZpZWxkKSAmJiBmb3JtRmllbGRzW2ZpZWxkXSAhPT1cIlwiKSB7XG4gICAgICAgIHZhbHVlRXhpc3RzID0gdHJ1ZTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB2YWx1ZUV4aXN0cztcbiAgfVxuICBnb3RvQ2FzZXRyYW5zYXRpb25QYWdlKCkge1xuICAgIHRoaXMucGF5bWVudExpYkNvbXBvbmVudC52aWV3TmFtZSA9ICdjYXNlLXRyYW5zYWN0aW9ucyc7XG4gICAgdGhpcy5wYXltZW50TGliQ29tcG9uZW50LlRBS0VQQVlNRU5UID0gdHJ1ZTtcbiAgICB0aGlzLnBheW1lbnRMaWJDb21wb25lbnQuSVNCU0VOQUJMRSA9IHRydWU7XG4gIH1cbiAgIGdldFVuYXNzaWduZWRQYXltZW50KCkge1xuICAgIHRoaXMuYnVsa1NjYW5pbmdQYXltZW50U2VydmljZS5nZXRCU1BheW1lbnRzQnlEQ04odGhpcy5ic3BheW1lbnRkY24pLnN1YnNjcmliZShcbiAgICAgIHVuYXNzaWduZWRQYXltZW50cyA9PiB7XG4gICAgICAgIFxuICAgICAgdGhpcy51bmFzc2lnbmVkUmVjb3JkID0gdW5hc3NpZ25lZFBheW1lbnRzWydkYXRhJ10ucGF5bWVudHMuZmlsdGVyKHBheW1lbnQgPT4ge1xuICAgICAgICByZXR1cm4gcGF5bWVudCAmJiBwYXltZW50LmRjbl9yZWZlcmVuY2UgPT0gdGhpcy5ic3BheW1lbnRkY247XG4gICAgICB9KVswXTtcbiAgICAgICB0aGlzLnNpdGVJRCA9IHVuYXNzaWduZWRQYXltZW50c1snZGF0YSddLnJlc3BvbnNpYmxlX3NlcnZpY2VfaWQ7XG4gICAgICAgIGNvbnN0IGJlQ2NkTnVtYmVyID0gdW5hc3NpZ25lZFBheW1lbnRzWydkYXRhJ10uY2NkX3JlZmVyZW5jZSxcbiAgICAgICAgIGJlRXhjZXB0aW9uTnVtYmVyID0gdW5hc3NpZ25lZFBheW1lbnRzWydkYXRhJ10uZXhjZXB0aW9uX3JlY29yZF9yZWZlcmVuY2UsXG4gICAgICAgICBleGNlcHRpb25SZWZlcmVuY2UgPSBiZUNjZE51bWJlciA/IGJlQ2NkTnVtYmVyID09PSB0aGlzLmNjZENhc2VOdW1iZXIgPyBudWxsIDogdGhpcy5jY2RDYXNlTnVtYmVyIDogdGhpcy5jY2RDYXNlTnVtYmVyO1xuICAgICAgICB0aGlzLmNjZFJlZmVyZW5jZSA9IGJlQ2NkTnVtYmVyID8gYmVDY2ROdW1iZXIgOiBudWxsO1xuICAgICAgICB0aGlzLmV4Y2VwdGlvblJlZmVyZW5jZSA9IGJlRXhjZXB0aW9uTnVtYmVyID8gYmVFeGNlcHRpb25OdW1iZXIgOiBleGNlcHRpb25SZWZlcmVuY2U7XG4gICAgfSxcbiAgICAgIChlcnJvcjogYW55KSA9PiB7XG4gICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gdGhpcy5nZXRFcnJvck1lc3NhZ2UodHJ1ZSk7XG4gICAgICB9XG4gICAgKTtcbiAgfVxuXG4gIGdldEVycm9yTWVzc2FnZShpc0Vycm9yRXhpc3QpIHtcbiAgICByZXR1cm4ge1xuICAgICAgdGl0bGU6IFwiU29tZXRoaW5nIHdlbnQgd3JvbmcuXCIsXG4gICAgICBib2R5OiBcIlBsZWFzZSB0cnkgYWdhaW4gbGF0ZXIuXCIsXG4gICAgICBzaG93RXJyb3I6IGlzRXJyb3JFeGlzdFxuICAgIH07XG4gIH1cblxuICBzZWxlY3RjaGFuZ2UoYXJncyl7IFxuICAgIHRoaXMuc2VsZWN0ZWRTaXRlSWQgPSBhcmdzLnRhcmdldC52YWx1ZTsgXG4gICAgdGhpcy5zZWxlY3RlZFNpdGVOYW1lID0gYXJncy50YXJnZXQub3B0aW9uc1thcmdzLnRhcmdldC5zZWxlY3RlZEluZGV4XS50ZXh0OyBcbiAgfSBcblxufVxuIl19
|
|
@@ -1,7 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview added by tsickle
|
|
3
|
-
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
-
*/
|
|
5
1
|
import { Component } from '@angular/core';
|
|
6
2
|
export class PageNotFoundComponent {
|
|
7
3
|
}
|
|
@@ -10,6 +6,6 @@ PageNotFoundComponent.decorators = [
|
|
|
10
6
|
template: `
|
|
11
7
|
<h1>This is not the page you were looking for!</h1>
|
|
12
8
|
`
|
|
13
|
-
}] }
|
|
9
|
+
},] }
|
|
14
10
|
];
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS1ub3QtZm91bmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcGF5bWVudC1saWIvc3JjL2xpYi9jb21wb25lbnRzL3BhZ2Utbm90LWZvdW5kLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBTzFDLE1BQU0sT0FBTyxxQkFBcUI7OztZQUxqQyxTQUFTLFNBQUM7Z0JBQ1AsUUFBUSxFQUFFOztLQUVUO2FBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gICAgdGVtcGxhdGU6IGBcbiAgICA8aDE+VGhpcyBpcyBub3QgdGhlIHBhZ2UgeW91IHdlcmUgbG9va2luZyBmb3IhPC9oMT5cbiAgICBgXG59KVxuZXhwb3J0IGNsYXNzIFBhZ2VOb3RGb3VuZENvbXBvbmVudCB7IH1cbiJdfQ==
|