@hmcts/ccpay-web-component 5.2.10-beta8 → 6.0.0-beta01
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/esm2022/hmcts-ccpay-web-component.mjs +5 -0
- package/esm2022/lib/components/add-remission/add-remission.component.mjs +1189 -0
- package/esm2022/lib/components/allocate-payments/allocate-payments.component.mjs +407 -0
- package/esm2022/lib/components/card-details/card-details.component.mjs +32 -0
- package/esm2022/lib/components/case-transactions/case-transactions.component.mjs +794 -0
- package/esm2022/lib/components/contact-details/contact-details.component.mjs +338 -0
- package/esm2022/lib/components/error-banner/error-banner.component.mjs +18 -0
- package/esm2022/lib/components/fee-summary/fee-summary.component.mjs +247 -0
- package/esm2022/lib/components/mark-unidentified-payment/mark-unidentified-payment.component.mjs +195 -0
- package/esm2022/lib/components/mark-unsolicited-payment/mark-unsolicited-payment.component.mjs +255 -0
- package/esm2022/lib/components/notification-preview/notification-preview.component.mjs +79 -0
- package/esm2022/lib/components/page-not-found.component.mjs +17 -0
- package/esm2022/lib/components/payment-list/payment-list.component.mjs +36 -0
- package/esm2022/lib/components/payment-view/payment-view.component.mjs +416 -0
- package/esm2022/lib/components/pba-details/pba-details.component.mjs +18 -0
- package/esm2022/lib/components/pba-payment/pba-payment.component.mjs +151 -0
- package/esm2022/lib/components/process-refund/process-refund.component.mjs +417 -0
- package/esm2022/lib/components/processed-payments/processed-payments.component.mjs +37 -0
- package/esm2022/lib/components/refund-list/refund-list.component.mjs +73 -0
- package/esm2022/lib/components/refund-status/refund-status.component.mjs +453 -0
- package/esm2022/lib/components/reports/reports.component.mjs +291 -0
- package/esm2022/lib/components/service-request/service-request.component.mjs +456 -0
- package/esm2022/lib/components/status-history/status-history.component.mjs +33 -0
- package/esm2022/lib/components/table/table.component.mjs +128 -0
- package/esm2022/lib/components/unprocessed-payments/unprocessed-payments.component.mjs +236 -0
- package/esm2022/lib/interfaces/AddRemissionRequest.mjs +17 -0
- package/esm2022/lib/interfaces/AddRetroRemissionRequest.mjs +9 -0
- package/esm2022/lib/interfaces/AllocatePaymentRequest.mjs +41 -0
- package/esm2022/lib/interfaces/IAllocationPaymentsRequest.mjs +20 -0
- package/esm2022/lib/interfaces/IPaymentStatus.mjs +12 -0
- package/esm2022/lib/interfaces/IPutNotificationRequest.mjs +13 -0
- package/esm2022/lib/interfaces/IResubmitRefundRequest.mjs +13 -0
- package/esm2022/lib/interfaces/IserviceRequestCardPayment.mjs +11 -0
- package/esm2022/lib/interfaces/IserviceRequestPbaPayment.mjs +15 -0
- package/esm2022/lib/interfaces/IssueRefundRequest.mjs +11 -0
- package/esm2022/lib/interfaces/NotificationPreviewRequest.mjs +45 -0
- package/esm2022/lib/interfaces/PayhubAntennaRequest.mjs +12 -0
- package/esm2022/lib/interfaces/PaymentToPayhubRequest.mjs +15 -0
- package/esm2022/lib/interfaces/PostIssueRefundRetroRemission.mjs +9 -0
- package/esm2022/lib/interfaces/PostRefundRetroRemission.mjs +18 -0
- package/esm2022/lib/interfaces/RefundsRequest.mjs +9 -0
- package/esm2022/lib/interfaces/UnidentifiedPaymentsRequest.mjs +16 -0
- package/esm2022/lib/interfaces/UnsolicitedPaymentsRequest.mjs +22 -0
- package/esm2022/lib/payment-lib.component.mjs +288 -0
- package/esm2022/lib/payment-lib.module.mjs +187 -0
- package/esm2022/lib/payment-lib.service.mjs +49 -0
- package/esm2022/lib/pipes/capitalize.pipe.mjs +18 -0
- package/esm2022/lib/pipes/ccd-hyphens.pipe.mjs +22 -0
- package/esm2022/lib/pipes/key-value.pipe.mjs +23 -0
- package/esm2022/lib/pipes/sanitize-html.pipe.mjs +20 -0
- package/esm2022/lib/services/bulk-scaning-payment/bulk-scaning-payment.service.mjs +87 -0
- package/esm2022/lib/services/card-details/card-details.service.mjs +39 -0
- package/esm2022/lib/services/case-transactions/case-transactions.service.mjs +39 -0
- package/esm2022/lib/services/notification/notification.service.mjs +70 -0
- package/esm2022/lib/services/orderslist.service.mjs +154 -0
- package/esm2022/lib/services/payment-list/payment-list.service.mjs +40 -0
- package/esm2022/lib/services/payment-view/payment-view.service.mjs +152 -0
- package/esm2022/lib/services/refunds/refunds.service.mjs +117 -0
- package/{esm2015/lib/services/shared/error-handler.service.js → esm2022/lib/services/shared/error-handler.service.mjs} +9 -8
- package/esm2022/lib/services/shared/httpclient/webcomponent.http.client.mjs +64 -0
- package/esm2022/lib/services/shared/logger/console-logger.service.mjs +43 -0
- package/esm2022/lib/services/shared/logger/logger.service.mjs +23 -0
- package/esm2022/lib/services/status-history/status-history.service.mjs +41 -0
- package/esm2022/lib/services/xl-file/xl-file.service.mjs +153 -0
- package/fesm2022/hmcts-ccpay-web-component.mjs +7870 -0
- package/fesm2022/hmcts-ccpay-web-component.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/components/add-remission/add-remission.component.d.ts +5 -3
- package/lib/components/allocate-payments/allocate-payments.component.d.ts +5 -7
- package/lib/components/card-details/card-details.component.d.ts +3 -1
- package/lib/components/case-transactions/case-transactions.component.d.ts +5 -3
- package/lib/components/contact-details/contact-details.component.d.ts +4 -2
- package/lib/components/error-banner/error-banner.component.d.ts +3 -1
- package/lib/components/fee-summary/fee-summary.component.d.ts +4 -2
- package/lib/components/mark-unidentified-payment/mark-unidentified-payment.component.d.ts +4 -2
- package/lib/components/mark-unsolicited-payment/mark-unsolicited-payment.component.d.ts +4 -2
- package/lib/components/notification-preview/notification-preview.component.d.ts +4 -6
- package/lib/components/page-not-found.component.d.ts +3 -1
- package/lib/components/payment-list/payment-list.component.d.ts +4 -2
- package/lib/components/payment-view/payment-view.component.d.ts +4 -2
- package/lib/components/pba-details/pba-details.component.d.ts +3 -1
- package/lib/components/pba-payment/pba-payment.component.d.ts +4 -2
- package/lib/components/process-refund/process-refund.component.d.ts +4 -2
- package/lib/components/processed-payments/processed-payments.component.d.ts +3 -1
- package/lib/components/refund-list/refund-list.component.d.ts +3 -1
- package/lib/components/refund-status/refund-status.component.d.ts +4 -2
- package/lib/components/reports/reports.component.d.ts +4 -6
- package/lib/components/service-request/service-request.component.d.ts +5 -3
- package/lib/components/status-history/status-history.component.d.ts +4 -2
- package/lib/components/table/table.component.d.ts +4 -2
- package/lib/components/unprocessed-payments/unprocessed-payments.component.d.ts +4 -2
- package/lib/interfaces/AddRemissionRequest.d.ts +0 -1
- package/lib/interfaces/AddRetroRemissionRequest.d.ts +0 -1
- package/lib/interfaces/AllocatePaymentRequest.d.ts +0 -1
- package/lib/interfaces/IAllocationPaymentsRequest.d.ts +0 -1
- package/lib/interfaces/IBSPayments.d.ts +0 -1
- package/lib/interfaces/ICardDetails.d.ts +0 -1
- package/lib/interfaces/IFee.d.ts +0 -1
- package/lib/interfaces/INotificationPreview.d.ts +0 -1
- package/lib/interfaces/IOrderReferenceFee.d.ts +0 -1
- package/lib/interfaces/IPatchRefundAction.d.ts +0 -1
- package/lib/interfaces/IPayment.d.ts +0 -1
- package/lib/interfaces/IPaymentFailure.d.ts +0 -1
- package/lib/interfaces/IPaymentGroup.d.ts +0 -1
- package/lib/interfaces/IPaymentStatus.d.ts +0 -1
- package/lib/interfaces/IPaymentView.d.ts +0 -1
- package/lib/interfaces/IPayments.d.ts +0 -1
- package/lib/interfaces/IPutNotificationRequest.d.ts +0 -1
- package/lib/interfaces/IRefundAction.d.ts +0 -1
- package/lib/interfaces/IRefundContactDetails.d.ts +0 -1
- package/lib/interfaces/IRefundFee.d.ts +0 -1
- package/lib/interfaces/IRefundList.d.ts +0 -1
- package/lib/interfaces/IRefundReasons.d.ts +0 -1
- package/lib/interfaces/IRefundRejectReason.d.ts +0 -1
- package/lib/interfaces/IRefundStatus.d.ts +0 -1
- package/lib/interfaces/IRefundStatusHistory.d.ts +0 -1
- package/lib/interfaces/IRefundsNotifications.d.ts +0 -1
- package/lib/interfaces/IRemission.d.ts +0 -1
- package/lib/interfaces/IResubmitRefundRequest.d.ts +0 -1
- package/lib/interfaces/IStatusHistories.d.ts +0 -1
- package/lib/interfaces/IStatusHistory.d.ts +0 -1
- package/lib/interfaces/IserviceRequestCardPayment.d.ts +0 -1
- package/lib/interfaces/IserviceRequestPbaPayment.d.ts +0 -1
- package/lib/interfaces/IssueRefundRequest.d.ts +0 -1
- package/lib/interfaces/NotificationPreviewRequest.d.ts +0 -1
- package/lib/interfaces/PayhubAntennaRequest.d.ts +0 -1
- package/lib/interfaces/PaymentToPayhubRequest.d.ts +0 -1
- package/lib/interfaces/PostIssueRefundRetroRemission.d.ts +0 -1
- package/lib/interfaces/PostRefundRetroRemission.d.ts +0 -1
- package/lib/interfaces/RefundsRequest.d.ts +0 -1
- package/lib/interfaces/UnidentifiedPaymentsRequest.d.ts +0 -1
- package/lib/interfaces/UnsolicitedPaymentsRequest.d.ts +0 -1
- package/lib/payment-lib.component.d.ts +3 -1
- package/lib/payment-lib.module.d.ts +40 -1
- package/lib/payment-lib.service.d.ts +3 -1
- package/lib/pipes/capitalize.pipe.d.ts +3 -1
- package/lib/pipes/ccd-hyphens.pipe.d.ts +3 -1
- package/lib/pipes/key-value.pipe.d.ts +3 -1
- package/lib/pipes/sanitize-html.pipe.d.ts +3 -1
- package/lib/services/bulk-scaning-payment/bulk-scaning-payment.service.d.ts +4 -2
- package/lib/services/card-details/card-details.service.d.ts +3 -1
- package/lib/services/case-transactions/case-transactions.service.d.ts +4 -2
- package/lib/services/notification/notification.service.d.ts +4 -2
- package/lib/services/orderslist.service.d.ts +3 -1
- package/lib/services/payment-list/payment-list.service.d.ts +3 -1
- package/lib/services/payment-view/payment-view.service.d.ts +3 -1
- package/lib/services/refunds/refunds.service.d.ts +4 -2
- package/lib/services/shared/error-handler.service.d.ts +3 -1
- package/lib/services/shared/httpclient/webcomponent.http.client.d.ts +3 -1
- package/lib/services/shared/logger/console-logger.service.d.ts +3 -1
- package/lib/services/shared/logger/logger.service.d.ts +3 -1
- package/lib/services/status-history/status-history.service.d.ts +3 -1
- package/lib/services/xl-file/xl-file.service.d.ts +3 -1
- package/package.json +17 -11
- package/public_api.d.ts +0 -1
- package/bundles/hmcts-ccpay-web-component.umd.js +0 -7550
- package/bundles/hmcts-ccpay-web-component.umd.js.map +0 -1
- package/bundles/hmcts-ccpay-web-component.umd.min.js +0 -2
- package/bundles/hmcts-ccpay-web-component.umd.min.js.map +0 -1
- package/esm2015/hmcts-ccpay-web-component.js +0 -47
- package/esm2015/lib/components/add-remission/add-remission.component.js +0 -1045
- package/esm2015/lib/components/allocate-payments/allocate-payments.component.js +0 -381
- package/esm2015/lib/components/card-details/card-details.component.js +0 -28
- package/esm2015/lib/components/case-transactions/case-transactions.component.js +0 -735
- package/esm2015/lib/components/contact-details/contact-details.component.js +0 -315
- package/esm2015/lib/components/error-banner/error-banner.component.js +0 -18
- package/esm2015/lib/components/fee-summary/fee-summary.component.js +0 -223
- package/esm2015/lib/components/mark-unidentified-payment/mark-unidentified-payment.component.js +0 -184
- package/esm2015/lib/components/mark-unsolicited-payment/mark-unsolicited-payment.component.js +0 -238
- package/esm2015/lib/components/notification-preview/notification-preview.component.js +0 -59
- package/esm2015/lib/components/page-not-found.component.js +0 -11
- package/esm2015/lib/components/payment-list/payment-list.component.js +0 -31
- package/esm2015/lib/components/payment-view/payment-view.component.js +0 -335
- package/esm2015/lib/components/pba-details/pba-details.component.js +0 -18
- package/esm2015/lib/components/pba-payment/pba-payment.component.js +0 -144
- package/esm2015/lib/components/process-refund/process-refund.component.js +0 -398
- package/esm2015/lib/components/processed-payments/processed-payments.component.js +0 -34
- package/esm2015/lib/components/refund-list/refund-list.component.js +0 -59
- package/esm2015/lib/components/refund-status/refund-status.component.js +0 -399
- package/esm2015/lib/components/reports/reports.component.js +0 -280
- package/esm2015/lib/components/service-request/service-request.component.js +0 -345
- package/esm2015/lib/components/status-history/status-history.component.js +0 -28
- package/esm2015/lib/components/table/table.component.js +0 -99
- package/esm2015/lib/components/unprocessed-payments/unprocessed-payments.component.js +0 -199
- package/esm2015/lib/interfaces/AddRemissionRequest.js +0 -10
- package/esm2015/lib/interfaces/AddRetroRemissionRequest.js +0 -7
- package/esm2015/lib/interfaces/AllocatePaymentRequest.js +0 -27
- package/esm2015/lib/interfaces/IAllocationPaymentsRequest.js +0 -14
- package/esm2015/lib/interfaces/IPaymentStatus.js +0 -3
- package/esm2015/lib/interfaces/IPutNotificationRequest.js +0 -11
- package/esm2015/lib/interfaces/IResubmitRefundRequest.js +0 -9
- package/esm2015/lib/interfaces/IserviceRequestCardPayment.js +0 -8
- package/esm2015/lib/interfaces/IserviceRequestPbaPayment.js +0 -10
- package/esm2015/lib/interfaces/IssueRefundRequest.js +0 -8
- package/esm2015/lib/interfaces/NotificationPreviewRequest.js +0 -37
- package/esm2015/lib/interfaces/PayhubAntennaRequest.js +0 -9
- package/esm2015/lib/interfaces/PaymentToPayhubRequest.js +0 -12
- package/esm2015/lib/interfaces/PostIssueRefundRetroRemission.js +0 -7
- package/esm2015/lib/interfaces/PostRefundRetroRemission.js +0 -11
- package/esm2015/lib/interfaces/RefundsRequest.js +0 -7
- package/esm2015/lib/interfaces/UnidentifiedPaymentsRequest.js +0 -12
- package/esm2015/lib/interfaces/UnsolicitedPaymentsRequest.js +0 -15
- package/esm2015/lib/payment-lib.component.js +0 -132
- package/esm2015/lib/payment-lib.module.js +0 -99
- package/esm2015/lib/payment-lib.service.js +0 -43
- package/esm2015/lib/pipes/capitalize.pipe.js +0 -14
- package/esm2015/lib/pipes/ccd-hyphens.pipe.js +0 -18
- package/esm2015/lib/pipes/key-value.pipe.js +0 -20
- package/esm2015/lib/pipes/sanitize-html.pipe.js +0 -17
- package/esm2015/lib/services/bulk-scaning-payment/bulk-scaning-payment.service.js +0 -87
- package/esm2015/lib/services/card-details/card-details.service.js +0 -39
- package/esm2015/lib/services/case-transactions/case-transactions.service.js +0 -39
- package/esm2015/lib/services/notification/notification.service.js +0 -70
- package/esm2015/lib/services/orderslist.service.js +0 -154
- package/esm2015/lib/services/payment-list/payment-list.service.js +0 -39
- package/esm2015/lib/services/payment-view/payment-view.service.js +0 -150
- package/esm2015/lib/services/refunds/refunds.service.js +0 -117
- package/esm2015/lib/services/shared/httpclient/webcomponent.http.client.js +0 -61
- package/esm2015/lib/services/shared/logger/console-logger.service.js +0 -43
- package/esm2015/lib/services/shared/logger/logger.service.js +0 -17
- package/esm2015/lib/services/status-history/status-history.service.js +0 -41
- package/esm2015/lib/services/xl-file/xl-file.service.js +0 -151
- package/fesm2015/hmcts-ccpay-web-component.js +0 -6980
- package/fesm2015/hmcts-ccpay-web-component.js.map +0 -1
- package/hmcts-ccpay-web-component.d.ts +0 -47
- package/hmcts-ccpay-web-component.d.ts.map +0 -1
- package/hmcts-ccpay-web-component.metadata.json +0 -1
- package/lib/components/add-remission/add-remission.component.d.ts.map +0 -1
- package/lib/components/add-remission/add-remission.component.ngfactory.d.ts.map +0 -1
- package/lib/components/add-remission/add-remission.component.scss.shim.ngstyle.d.ts.map +0 -1
- package/lib/components/allocate-payments/allocate-payments.component.d.ts.map +0 -1
- package/lib/components/allocate-payments/allocate-payments.component.ngfactory.d.ts.map +0 -1
- package/lib/components/allocate-payments/allocate-payments.component.scss.shim.ngstyle.d.ts.map +0 -1
- package/lib/components/card-details/card-details.component.css.shim.ngstyle.d.ts.map +0 -1
- package/lib/components/card-details/card-details.component.d.ts.map +0 -1
- package/lib/components/card-details/card-details.component.ngfactory.d.ts.map +0 -1
- package/lib/components/case-transactions/case-transactions.component.css.shim.ngstyle.d.ts.map +0 -1
- package/lib/components/case-transactions/case-transactions.component.d.ts.map +0 -1
- package/lib/components/case-transactions/case-transactions.component.ngfactory.d.ts.map +0 -1
- package/lib/components/contact-details/contact-details.component.css.shim.ngstyle.d.ts.map +0 -1
- package/lib/components/contact-details/contact-details.component.d.ts.map +0 -1
- package/lib/components/contact-details/contact-details.component.ngfactory.d.ts.map +0 -1
- package/lib/components/error-banner/error-banner.component.d.ts.map +0 -1
- package/lib/components/error-banner/error-banner.component.ngfactory.d.ts.map +0 -1
- package/lib/components/error-banner/error-banner.component.scss.shim.ngstyle.d.ts.map +0 -1
- package/lib/components/fee-summary/fee-summary.component.d.ts.map +0 -1
- package/lib/components/fee-summary/fee-summary.component.ngfactory.d.ts.map +0 -1
- package/lib/components/fee-summary/fee-summary.component.scss.shim.ngstyle.d.ts.map +0 -1
- package/lib/components/mark-unidentified-payment/mark-unidentified-payment.component.d.ts.map +0 -1
- package/lib/components/mark-unidentified-payment/mark-unidentified-payment.component.ngfactory.d.ts.map +0 -1
- package/lib/components/mark-unidentified-payment/mark-unidentified-payment.component.scss.shim.ngstyle.d.ts.map +0 -1
- package/lib/components/mark-unsolicited-payment/mark-unsolicited-payment.component.d.ts.map +0 -1
- package/lib/components/mark-unsolicited-payment/mark-unsolicited-payment.component.ngfactory.d.ts.map +0 -1
- package/lib/components/mark-unsolicited-payment/mark-unsolicited-payment.component.scss.shim.ngstyle.d.ts.map +0 -1
- package/lib/components/notification-preview/notification-preview.component.d.ts.map +0 -1
- package/lib/components/notification-preview/notification-preview.component.ngfactory.d.ts.map +0 -1
- package/lib/components/notification-preview/notification-preview.component.scss.shim.ngstyle.d.ts.map +0 -1
- package/lib/components/page-not-found.component.d.ts.map +0 -1
- package/lib/components/page-not-found.component.ngfactory.d.ts.map +0 -1
- package/lib/components/payment-list/payment-list.component.css.shim.ngstyle.d.ts.map +0 -1
- package/lib/components/payment-list/payment-list.component.d.ts.map +0 -1
- package/lib/components/payment-list/payment-list.component.ngfactory.d.ts.map +0 -1
- package/lib/components/payment-view/payment-view.component.d.ts.map +0 -1
- package/lib/components/payment-view/payment-view.component.ngfactory.d.ts.map +0 -1
- package/lib/components/payment-view/payment-view.component.scss.shim.ngstyle.d.ts.map +0 -1
- package/lib/components/pba-details/pba-details.component.css.shim.ngstyle.d.ts.map +0 -1
- package/lib/components/pba-details/pba-details.component.d.ts.map +0 -1
- package/lib/components/pba-details/pba-details.component.ngfactory.d.ts.map +0 -1
- package/lib/components/pba-payment/pba-payment.component.d.ts.map +0 -1
- package/lib/components/pba-payment/pba-payment.component.ngfactory.d.ts.map +0 -1
- package/lib/components/pba-payment/pba-payment.component.scss.shim.ngstyle.d.ts.map +0 -1
- package/lib/components/process-refund/process-refund.component.css.shim.ngstyle.d.ts.map +0 -1
- package/lib/components/process-refund/process-refund.component.d.ts.map +0 -1
- package/lib/components/process-refund/process-refund.component.ngfactory.d.ts.map +0 -1
- package/lib/components/processed-payments/processed-payments.component.d.ts.map +0 -1
- package/lib/components/processed-payments/processed-payments.component.ngfactory.d.ts.map +0 -1
- package/lib/components/processed-payments/processed-payments.component.scss.shim.ngstyle.d.ts.map +0 -1
- package/lib/components/refund-list/refund-list.component.css.shim.ngstyle.d.ts.map +0 -1
- package/lib/components/refund-list/refund-list.component.d.ts.map +0 -1
- package/lib/components/refund-list/refund-list.component.ngfactory.d.ts.map +0 -1
- package/lib/components/refund-status/refund-status.component.css.shim.ngstyle.d.ts.map +0 -1
- package/lib/components/refund-status/refund-status.component.d.ts.map +0 -1
- package/lib/components/refund-status/refund-status.component.ngfactory.d.ts.map +0 -1
- package/lib/components/reports/reports.component.d.ts.map +0 -1
- package/lib/components/reports/reports.component.ngfactory.d.ts.map +0 -1
- package/lib/components/reports/reports.component.scss.shim.ngstyle.d.ts.map +0 -1
- package/lib/components/service-request/service-request.component.d.ts.map +0 -1
- package/lib/components/service-request/service-request.component.ngfactory.d.ts.map +0 -1
- package/lib/components/service-request/service-request.component.scss.shim.ngstyle.d.ts.map +0 -1
- package/lib/components/status-history/status-history.component.css.shim.ngstyle.d.ts.map +0 -1
- package/lib/components/status-history/status-history.component.d.ts.map +0 -1
- package/lib/components/status-history/status-history.component.ngfactory.d.ts.map +0 -1
- package/lib/components/table/table.component.css.shim.ngstyle.d.ts.map +0 -1
- package/lib/components/table/table.component.d.ts.map +0 -1
- package/lib/components/table/table.component.ngfactory.d.ts.map +0 -1
- package/lib/components/unprocessed-payments/unprocessed-payments.component.d.ts.map +0 -1
- package/lib/components/unprocessed-payments/unprocessed-payments.component.ngfactory.d.ts.map +0 -1
- package/lib/components/unprocessed-payments/unprocessed-payments.component.scss.shim.ngstyle.d.ts.map +0 -1
- package/lib/interfaces/AddRemissionRequest.d.ts.map +0 -1
- package/lib/interfaces/AddRetroRemissionRequest.d.ts.map +0 -1
- package/lib/interfaces/AllocatePaymentRequest.d.ts.map +0 -1
- package/lib/interfaces/IAllocationPaymentsRequest.d.ts.map +0 -1
- package/lib/interfaces/IBSPayments.d.ts.map +0 -1
- package/lib/interfaces/ICardDetails.d.ts.map +0 -1
- package/lib/interfaces/IFee.d.ts.map +0 -1
- package/lib/interfaces/INotificationPreview.d.ts.map +0 -1
- package/lib/interfaces/IOrderReferenceFee.d.ts.map +0 -1
- package/lib/interfaces/IPatchRefundAction.d.ts.map +0 -1
- package/lib/interfaces/IPayment.d.ts.map +0 -1
- package/lib/interfaces/IPaymentFailure.d.ts.map +0 -1
- package/lib/interfaces/IPaymentGroup.d.ts.map +0 -1
- package/lib/interfaces/IPaymentStatus.d.ts.map +0 -1
- package/lib/interfaces/IPaymentView.d.ts.map +0 -1
- package/lib/interfaces/IPayments.d.ts.map +0 -1
- package/lib/interfaces/IPutNotificationRequest.d.ts.map +0 -1
- package/lib/interfaces/IRefundAction.d.ts.map +0 -1
- package/lib/interfaces/IRefundContactDetails.d.ts.map +0 -1
- package/lib/interfaces/IRefundFee.d.ts.map +0 -1
- package/lib/interfaces/IRefundList.d.ts.map +0 -1
- package/lib/interfaces/IRefundReasons.d.ts.map +0 -1
- package/lib/interfaces/IRefundRejectReason.d.ts.map +0 -1
- package/lib/interfaces/IRefundStatus.d.ts.map +0 -1
- package/lib/interfaces/IRefundStatusHistory.d.ts.map +0 -1
- package/lib/interfaces/IRefundsNotifications.d.ts.map +0 -1
- package/lib/interfaces/IRemission.d.ts.map +0 -1
- package/lib/interfaces/IResubmitRefundRequest.d.ts.map +0 -1
- package/lib/interfaces/IStatusHistories.d.ts.map +0 -1
- package/lib/interfaces/IStatusHistory.d.ts.map +0 -1
- package/lib/interfaces/IserviceRequestCardPayment.d.ts.map +0 -1
- package/lib/interfaces/IserviceRequestPbaPayment.d.ts.map +0 -1
- package/lib/interfaces/IssueRefundRequest.d.ts.map +0 -1
- package/lib/interfaces/NotificationPreviewRequest.d.ts.map +0 -1
- package/lib/interfaces/PayhubAntennaRequest.d.ts.map +0 -1
- package/lib/interfaces/PaymentToPayhubRequest.d.ts.map +0 -1
- package/lib/interfaces/PostIssueRefundRetroRemission.d.ts.map +0 -1
- package/lib/interfaces/PostRefundRetroRemission.d.ts.map +0 -1
- package/lib/interfaces/RefundsRequest.d.ts.map +0 -1
- package/lib/interfaces/UnidentifiedPaymentsRequest.d.ts.map +0 -1
- package/lib/interfaces/UnsolicitedPaymentsRequest.d.ts.map +0 -1
- package/lib/payment-lib.component.d.ts.map +0 -1
- package/lib/payment-lib.component.ngfactory.d.ts.map +0 -1
- package/lib/payment-lib.module.d.ts.map +0 -1
- package/lib/payment-lib.module.ngfactory.d.ts.map +0 -1
- package/lib/payment-lib.service.d.ts.map +0 -1
- package/lib/payment-lib.service.ngfactory.d.ts.map +0 -1
- package/lib/pipes/capitalize.pipe.d.ts.map +0 -1
- package/lib/pipes/capitalize.pipe.ngfactory.d.ts.map +0 -1
- package/lib/pipes/ccd-hyphens.pipe.d.ts.map +0 -1
- package/lib/pipes/ccd-hyphens.pipe.ngfactory.d.ts.map +0 -1
- package/lib/pipes/key-value.pipe.d.ts.map +0 -1
- package/lib/pipes/key-value.pipe.ngfactory.d.ts.map +0 -1
- package/lib/pipes/sanitize-html.pipe.d.ts.map +0 -1
- package/lib/pipes/sanitize-html.pipe.ngfactory.d.ts.map +0 -1
- package/lib/services/bulk-scaning-payment/bulk-scaning-payment.service.d.ts.map +0 -1
- package/lib/services/bulk-scaning-payment/bulk-scaning-payment.service.ngfactory.d.ts.map +0 -1
- package/lib/services/card-details/card-details.service.d.ts.map +0 -1
- package/lib/services/card-details/card-details.service.ngfactory.d.ts.map +0 -1
- package/lib/services/case-transactions/case-transactions.service.d.ts.map +0 -1
- package/lib/services/case-transactions/case-transactions.service.ngfactory.d.ts.map +0 -1
- package/lib/services/notification/notification.service.d.ts.map +0 -1
- package/lib/services/notification/notification.service.ngfactory.d.ts.map +0 -1
- package/lib/services/orderslist.service.d.ts.map +0 -1
- package/lib/services/orderslist.service.ngfactory.d.ts.map +0 -1
- package/lib/services/payment-list/payment-list.service.d.ts.map +0 -1
- package/lib/services/payment-list/payment-list.service.ngfactory.d.ts.map +0 -1
- package/lib/services/payment-view/payment-view.service.d.ts.map +0 -1
- package/lib/services/payment-view/payment-view.service.ngfactory.d.ts.map +0 -1
- package/lib/services/refunds/refunds.service.d.ts.map +0 -1
- package/lib/services/refunds/refunds.service.ngfactory.d.ts.map +0 -1
- package/lib/services/shared/error-handler.service.d.ts.map +0 -1
- package/lib/services/shared/error-handler.service.ngfactory.d.ts.map +0 -1
- package/lib/services/shared/httpclient/webcomponent.http.client.d.ts.map +0 -1
- package/lib/services/shared/httpclient/webcomponent.http.client.ngfactory.d.ts.map +0 -1
- package/lib/services/shared/logger/console-logger.service.d.ts.map +0 -1
- package/lib/services/shared/logger/console-logger.service.ngfactory.d.ts.map +0 -1
- package/lib/services/shared/logger/logger.service.d.ts.map +0 -1
- package/lib/services/shared/logger/logger.service.ngfactory.d.ts.map +0 -1
- package/lib/services/status-history/status-history.service.d.ts.map +0 -1
- package/lib/services/status-history/status-history.service.ngfactory.d.ts.map +0 -1
- package/lib/services/xl-file/xl-file.service.d.ts.map +0 -1
- package/lib/services/xl-file/xl-file.service.ngfactory.d.ts.map +0 -1
- package/public_api.d.ts.map +0 -1
- /package/{esm2015/lib/interfaces/IBSPayments.js → esm2022/lib/interfaces/IBSPayments.mjs} +0 -0
- /package/{esm2015/lib/interfaces/ICardDetails.js → esm2022/lib/interfaces/ICardDetails.mjs} +0 -0
- /package/{esm2015/lib/interfaces/IFee.js → esm2022/lib/interfaces/IFee.mjs} +0 -0
- /package/{esm2015/lib/interfaces/INotificationPreview.js → esm2022/lib/interfaces/INotificationPreview.mjs} +0 -0
- /package/{esm2015/lib/interfaces/IOrderReferenceFee.js → esm2022/lib/interfaces/IOrderReferenceFee.mjs} +0 -0
- /package/{esm2015/lib/interfaces/IPatchRefundAction.js → esm2022/lib/interfaces/IPatchRefundAction.mjs} +0 -0
- /package/{esm2015/lib/interfaces/IPayment.js → esm2022/lib/interfaces/IPayment.mjs} +0 -0
- /package/{esm2015/lib/interfaces/IPaymentFailure.js → esm2022/lib/interfaces/IPaymentFailure.mjs} +0 -0
- /package/{esm2015/lib/interfaces/IPaymentGroup.js → esm2022/lib/interfaces/IPaymentGroup.mjs} +0 -0
- /package/{esm2015/lib/interfaces/IPaymentView.js → esm2022/lib/interfaces/IPaymentView.mjs} +0 -0
- /package/{esm2015/lib/interfaces/IPayments.js → esm2022/lib/interfaces/IPayments.mjs} +0 -0
- /package/{esm2015/lib/interfaces/IRefundAction.js → esm2022/lib/interfaces/IRefundAction.mjs} +0 -0
- /package/{esm2015/lib/interfaces/IRefundContactDetails.js → esm2022/lib/interfaces/IRefundContactDetails.mjs} +0 -0
- /package/{esm2015/lib/interfaces/IRefundFee.js → esm2022/lib/interfaces/IRefundFee.mjs} +0 -0
- /package/{esm2015/lib/interfaces/IRefundList.js → esm2022/lib/interfaces/IRefundList.mjs} +0 -0
- /package/{esm2015/lib/interfaces/IRefundReasons.js → esm2022/lib/interfaces/IRefundReasons.mjs} +0 -0
- /package/{esm2015/lib/interfaces/IRefundRejectReason.js → esm2022/lib/interfaces/IRefundRejectReason.mjs} +0 -0
- /package/{esm2015/lib/interfaces/IRefundStatus.js → esm2022/lib/interfaces/IRefundStatus.mjs} +0 -0
- /package/{esm2015/lib/interfaces/IRefundStatusHistory.js → esm2022/lib/interfaces/IRefundStatusHistory.mjs} +0 -0
- /package/{esm2015/lib/interfaces/IRefundsNotifications.js → esm2022/lib/interfaces/IRefundsNotifications.mjs} +0 -0
- /package/{esm2015/lib/interfaces/IRemission.js → esm2022/lib/interfaces/IRemission.mjs} +0 -0
- /package/{esm2015/lib/interfaces/IStatusHistories.js → esm2022/lib/interfaces/IStatusHistories.mjs} +0 -0
- /package/{esm2015/lib/interfaces/IStatusHistory.js → esm2022/lib/interfaces/IStatusHistory.mjs} +0 -0
- /package/{esm2015/public_api.js → esm2022/public_api.mjs} +0 -0
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { HttpClient, HttpHeaders } from '@angular/common/http';
|
|
3
|
+
import { Meta } from '@angular/platform-browser';
|
|
4
|
+
import { ErrorHandlerService } from '../shared/error-handler.service';
|
|
5
|
+
import { WebComponentHttpClient } from '../shared/httpclient/webcomponent.http.client';
|
|
6
|
+
import { PaymentLibService } from '../../payment-lib.service';
|
|
7
|
+
import { catchError } from 'rxjs/operators';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
import * as i1 from "@angular/common/http";
|
|
10
|
+
import * as i2 from "../shared/httpclient/webcomponent.http.client";
|
|
11
|
+
import * as i3 from "../shared/error-handler.service";
|
|
12
|
+
import * as i4 from "../../payment-lib.service";
|
|
13
|
+
import * as i5 from "@angular/platform-browser";
|
|
14
|
+
export class RefundsService {
|
|
15
|
+
http;
|
|
16
|
+
https;
|
|
17
|
+
errorHandlerService;
|
|
18
|
+
paymentLibService;
|
|
19
|
+
meta;
|
|
20
|
+
constructor(http, https, errorHandlerService, paymentLibService, meta) {
|
|
21
|
+
this.http = http;
|
|
22
|
+
this.https = https;
|
|
23
|
+
this.errorHandlerService = errorHandlerService;
|
|
24
|
+
this.paymentLibService = paymentLibService;
|
|
25
|
+
this.meta = meta;
|
|
26
|
+
}
|
|
27
|
+
getRefundReasons() {
|
|
28
|
+
return this.http.get(`${this.paymentLibService.REFUNDS_API_ROOT}/reasons`, {
|
|
29
|
+
withCredentials: true
|
|
30
|
+
})
|
|
31
|
+
.pipe(catchError(this.errorHandlerService.handleError));
|
|
32
|
+
}
|
|
33
|
+
getRefundRejectReasons() {
|
|
34
|
+
return this.http.get(`${this.paymentLibService.REFUNDS_API_ROOT}/rejection-reasons`, {
|
|
35
|
+
withCredentials: true
|
|
36
|
+
})
|
|
37
|
+
.pipe(catchError(this.errorHandlerService.handleError));
|
|
38
|
+
}
|
|
39
|
+
getRefundActions(refundReference) {
|
|
40
|
+
return this.http.get(`${this.paymentLibService.REFUNDS_API_ROOT}/${refundReference}/actions`, {
|
|
41
|
+
withCredentials: true
|
|
42
|
+
})
|
|
43
|
+
.pipe(catchError(this.errorHandlerService.handleError));
|
|
44
|
+
}
|
|
45
|
+
patchRefundActions(body, refundReference, reviewerAction) {
|
|
46
|
+
// const opts = this.addHeaders({});
|
|
47
|
+
return this.https.patch(`${this.paymentLibService.REFUNDS_API_ROOT}/${refundReference}/action/${reviewerAction}`, body)
|
|
48
|
+
.pipe(catchError(this.errorHandlerService.handleError));
|
|
49
|
+
}
|
|
50
|
+
getRefundList(refundstatus, selfexclusive) {
|
|
51
|
+
return this.http.get(`${this.paymentLibService.REFUNDS_API_ROOT}?status=${refundstatus}&excludeCurrentUser=${selfexclusive}`, {
|
|
52
|
+
withCredentials: true
|
|
53
|
+
})
|
|
54
|
+
.pipe(catchError(this.errorHandlerService.handleError));
|
|
55
|
+
}
|
|
56
|
+
getRefundStatusHistory(reference) {
|
|
57
|
+
return this.http.get(`${this.paymentLibService.REFUNDS_API_ROOT}/${reference}/status-history`, {
|
|
58
|
+
withCredentials: true
|
|
59
|
+
})
|
|
60
|
+
.pipe(catchError(this.errorHandlerService.handleError));
|
|
61
|
+
}
|
|
62
|
+
getRefundStatusList(ccdCaseNumber) {
|
|
63
|
+
return this.http.get(`${this.paymentLibService.REFUNDS_API_ROOT}?ccdCaseNumber=${ccdCaseNumber}`, {
|
|
64
|
+
withCredentials: true
|
|
65
|
+
})
|
|
66
|
+
.pipe(catchError(this.errorHandlerService.handleError));
|
|
67
|
+
}
|
|
68
|
+
getUserDetails() {
|
|
69
|
+
return this.http.get(`${this.paymentLibService.REFUNDS_API_ROOT}/get-user-details`, {
|
|
70
|
+
withCredentials: true
|
|
71
|
+
})
|
|
72
|
+
.pipe(catchError(this.errorHandlerService.handleError));
|
|
73
|
+
}
|
|
74
|
+
postIssueRefund(body) {
|
|
75
|
+
return this.https.post(`${this.paymentLibService.REFUNDS_API_ROOT}/refund`, body).pipe(catchError(this.errorHandlerService.handleError));
|
|
76
|
+
}
|
|
77
|
+
putResendOrEdit(body, refundRef, notificationType) {
|
|
78
|
+
return this.https.put(`${this.paymentLibService.REFUNDS_API_ROOT}/resend/notification/${refundRef}?notificationType=${notificationType}`, body).pipe(catchError(this.errorHandlerService.handleError));
|
|
79
|
+
}
|
|
80
|
+
patchResubmitRefund(body, refund_reference) {
|
|
81
|
+
// const opts = this.addHeaders({});
|
|
82
|
+
return this.https.patch(`${this.paymentLibService.REFUNDS_API_ROOT}/resubmit/${refund_reference}`, body).pipe(catchError(this.errorHandlerService.handleError));
|
|
83
|
+
}
|
|
84
|
+
addHeaders(options) {
|
|
85
|
+
const csrfToken = this.meta.getTag('name=csrf-token');
|
|
86
|
+
const headers = {};
|
|
87
|
+
if (options.headers) {
|
|
88
|
+
options.headers.forEach(element => {
|
|
89
|
+
headers[element] = options.headers.get(element);
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
headers['X-Requested-With'] = 'XMLHttpRequest';
|
|
93
|
+
if (csrfToken.content === null) {
|
|
94
|
+
if (document.cookie.split(';').find(row => row.startsWith('XSRF-TOKEN')) !== undefined) {
|
|
95
|
+
headers['CSRF-Token'] = document.cookie.split(';').find(row => row.startsWith('XSRF-TOKEN')).split('=')[1];
|
|
96
|
+
}
|
|
97
|
+
else {
|
|
98
|
+
headers['CSRF-Token'] = document.cookie.split(';').find(row => row.startsWith(' XSRF-TOKEN')).split('=')[1];
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
else {
|
|
102
|
+
headers['CSRF-Token'] = csrfToken.content;
|
|
103
|
+
}
|
|
104
|
+
options.headers = new HttpHeaders(headers);
|
|
105
|
+
options.responseType = 'text';
|
|
106
|
+
return options;
|
|
107
|
+
}
|
|
108
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: RefundsService, deps: [{ token: i1.HttpClient }, { token: i2.WebComponentHttpClient }, { token: i3.ErrorHandlerService }, { token: i4.PaymentLibService }, { token: i5.Meta }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
109
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: RefundsService, providedIn: 'root' });
|
|
110
|
+
}
|
|
111
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: RefundsService, decorators: [{
|
|
112
|
+
type: Injectable,
|
|
113
|
+
args: [{
|
|
114
|
+
providedIn: 'root'
|
|
115
|
+
}]
|
|
116
|
+
}], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.WebComponentHttpClient }, { type: i3.ErrorHandlerService }, { type: i4.PaymentLibService }, { type: i5.Meta }]; } });
|
|
117
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVmdW5kcy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcGF5bWVudC1saWIvc3JjL2xpYi9zZXJ2aWNlcy9yZWZ1bmRzL3JlZnVuZHMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDL0QsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRTlELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7OztBQVk1QyxNQUFNLE9BQU8sY0FBYztJQUVMO0lBQ1Y7SUFDQTtJQUNBO0lBQ0E7SUFKVixZQUFvQixJQUFnQixFQUMxQixLQUE2QixFQUM3QixtQkFBd0MsRUFDeEMsaUJBQW9DLEVBQ3BDLElBQVU7UUFKQSxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQzFCLFVBQUssR0FBTCxLQUFLLENBQXdCO1FBQzdCLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDeEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUNwQyxTQUFJLEdBQUosSUFBSSxDQUFNO0lBQ2hCLENBQUM7SUFFTCxnQkFBZ0I7UUFDZCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFtQixHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxnQkFBZ0IsVUFBVSxFQUFFO1lBQzNGLGVBQWUsRUFBRSxJQUFJO1NBQ3RCLENBQUM7YUFDQyxJQUFJ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ci9jb3JlJztcbmltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBIZWFkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgTWV0YSB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHsgRXJyb3JIYW5kbGVyU2VydmljZSB9IGZyb20gJy4uL3NoYXJlZC9lcnJvci1oYW5kbGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgV2ViQ29tcG9uZW50SHR0cENsaWVudCB9IGZyb20gJy4uL3NoYXJlZC9odHRwY2xpZW50L3dlYmNvbXBvbmVudC5odHRwLmNsaWVudCc7XG5pbXBvcnQgeyBQYXltZW50TGliU2VydmljZSB9IGZyb20gJy4uLy4uL3BheW1lbnQtbGliLnNlcnZpY2UnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IElSZWZ1bmRSZWFzb25zIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9JUmVmdW5kUmVhc29ucyc7XG5pbXBvcnQgeyBJUGF0Y2hSZWZ1bmRBY3Rpb24gfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL0lQYXRjaFJlZnVuZEFjdGlvbic7XG5pbXBvcnQgeyBJUmVmdW5kTGlzdCB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvSVJlZnVuZExpc3QnO1xuaW1wb3J0IHsgSXNzdWVSZWZ1bmRSZXF1ZXN0IH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9Jc3N1ZVJlZnVuZFJlcXVlc3QnO1xuaW1wb3J0IHsgSVJlc3VibWl0UmVmdW5kUmVxdWVzdCB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvSVJlc3VibWl0UmVmdW5kUmVxdWVzdCc7XG5pbXBvcnQgeyBJUmVmdW5kU3RhdHVzSGlzdG9yeSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvSVJlZnVuZFN0YXR1c0hpc3RvcnknO1xuaW1wb3J0IHsgSVB1dE5vdGlmaWNhdGlvblJlcXVlc3QgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL0lQdXROb3RpZmljYXRpb25SZXF1ZXN0JztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgUmVmdW5kc1NlcnZpY2Uge1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cDogSHR0cENsaWVudCxcbiAgICBwcml2YXRlIGh0dHBzOiBXZWJDb21wb25lbnRIdHRwQ2xpZW50LFxuICAgIHByaXZhdGUgZXJyb3JIYW5kbGVyU2VydmljZTogRXJyb3JIYW5kbGVyU2VydmljZSxcbiAgICBwcml2YXRlIHBheW1lbnRMaWJTZXJ2aWNlOiBQYXltZW50TGliU2VydmljZSxcbiAgICBwcml2YXRlIG1ldGE6IE1ldGFcbiAgKSB7IH1cblxuICBnZXRSZWZ1bmRSZWFzb25zKCk6IE9ic2VydmFibGU8SVJlZnVuZFJlYXNvbnNbXT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PElSZWZ1bmRSZWFzb25zW10+KGAke3RoaXMucGF5bWVudExpYlNlcnZpY2UuUkVGVU5EU19BUElfUk9PVH0vcmVhc29uc2AsIHtcbiAgICAgIHdpdGhDcmVkZW50aWFsczogdHJ1ZVxuICAgIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgY2F0Y2hFcnJvcih0aGlzLmVycm9ySGFuZGxlclNlcnZpY2UuaGFuZGxlRXJyb3IpXG4gICAgICApO1xuICB9XG5cbiAgZ2V0UmVmdW5kUmVqZWN0UmVhc29ucygpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PGFueT4oYCR7dGhpcy5wYXltZW50TGliU2VydmljZS5SRUZVTkRTX0FQSV9ST09UfS9yZWplY3Rpb24tcmVhc29uc2AsIHtcbiAgICAgIHdpdGhDcmVkZW50aWFsczogdHJ1ZVxuICAgIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgY2F0Y2hFcnJvcih0aGlzLmVycm9ySGFuZGxlclNlcnZpY2UuaGFuZGxlRXJyb3IpXG4gICAgICApO1xuICB9XG5cbiAgZ2V0UmVmdW5kQWN0aW9ucyhyZWZ1bmRSZWZlcmVuY2U6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8YW55PihgJHt0aGlzLnBheW1lbnRMaWJTZXJ2aWNlLlJFRlVORFNfQVBJX1JPT1R9LyR7cmVmdW5kUmVmZXJlbmNlfS9hY3Rpb25zYCwge1xuICAgICAgd2l0aENyZWRlbnRpYWxzOiB0cnVlXG4gICAgfSlcbiAgICAgIC5waXBlKFxuICAgICAgICBjYXRjaEVycm9yKHRoaXMuZXJyb3JIYW5kbGVyU2VydmljZS5oYW5kbGVFcnJvcilcbiAgICAgICk7XG4gIH1cblxuICBwYXRjaFJlZnVuZEFjdGlvbnMoYm9keTogSVBhdGNoUmVmdW5kQWN0aW9uLCByZWZ1bmRSZWZlcmVuY2U6IHN0cmluZywgcmV2aWV3ZXJBY3Rpb246IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgLy8gY29uc3Qgb3B0cyA9IHRoaXMuYWRkSGVhZGVycyh7fSk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cHMucGF0Y2goYCR7dGhpcy5wYXltZW50TGliU2VydmljZS5SRUZVTkRTX0FQSV9ST09UfS8ke3JlZnVuZFJlZmVyZW5jZX0vYWN0aW9uLyR7cmV2aWV3ZXJBY3Rpb259YCwgYm9keSlcbiAgICAgIC5waXBlKFxuICAgICAgICBjYXRjaEVycm9yKHRoaXMuZXJyb3JIYW5kbGVyU2VydmljZS5oYW5kbGVFcnJvcilcbiAgICAgICk7XG4gIH1cblxuICBnZXRSZWZ1bmRMaXN0KHJlZnVuZHN0YXR1cz86IHN0cmluZywgc2VsZmV4Y2x1c2l2ZT86IGJvb2xlYW4pOiBPYnNlcnZhYmxlPElSZWZ1bmRMaXN0W10+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxJUmVmdW5kTGlzdFtdPihgJHt0aGlzLnBheW1lbnRMaWJTZXJ2aWNlLlJFRlVORFNfQVBJX1JPT1R9P3N0YXR1cz0ke3JlZnVuZHN0YXR1c30mZXhjbHVkZUN1cnJlbnRVc2VyPSR7c2VsZmV4Y2x1c2l2ZX1gLFxuICAgICAge1xuICAgICAgICB3aXRoQ3JlZGVudGlhbHM6IHRydWVcbiAgICAgIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgY2F0Y2hFcnJvcih0aGlzLmVycm9ySGFuZGxlclNlcnZpY2UuaGFuZGxlRXJyb3IpXG4gICAgICApO1xuICB9XG5cbiAgZ2V0UmVmdW5kU3RhdHVzSGlzdG9yeShyZWZlcmVuY2U/OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxJUmVmdW5kU3RhdHVzSGlzdG9yeT4oYCR7dGhpcy5wYXltZW50TGliU2VydmljZS5SRUZVTkRTX0FQSV9ST09UfS8ke3JlZmVyZW5jZX0vc3RhdHVzLWhpc3RvcnlgLFxuICAgICAge1xuICAgICAgICB3aXRoQ3JlZGVudGlhbHM6IHRydWVcbiAgICAgIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgY2F0Y2hFcnJvcih0aGlzLmVycm9ySGFuZGxlclNlcnZpY2UuaGFuZGxlRXJyb3IpXG4gICAgICApO1xuICB9XG5cbiAgZ2V0UmVmdW5kU3RhdHVzTGlzdChjY2RDYXNlTnVtYmVyOiBzdHJpbmcpOiBPYnNlcnZhYmxlPElSZWZ1bmRMaXN0W10+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxJUmVmdW5kTGlzdFtdPihgJHt0aGlzLnBheW1lbnRMaWJTZXJ2aWNlLlJFRlVORFNfQVBJX1JPT1R9P2NjZENhc2VOdW1iZXI9JHtjY2RDYXNlTnVtYmVyfWAsIHtcbiAgICAgIHdpdGhDcmVkZW50aWFsczogdHJ1ZVxuICAgIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgY2F0Y2hFcnJvcih0aGlzLmVycm9ySGFuZGxlclNlcnZpY2UuaGFuZGxlRXJyb3IpXG4gICAgICApO1xuICB9XG5cbiAgZ2V0VXNlckRldGFpbHMoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxhbnk+KGAke3RoaXMucGF5bWVudExpYlNlcnZpY2UuUkVGVU5EU19BUElfUk9PVH0vZ2V0LXVzZXItZGV0YWlsc2AsIHtcbiAgICAgIHdpdGhDcmVkZW50aWFsczogdHJ1ZVxuICAgIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgY2F0Y2hFcnJvcih0aGlzLmVycm9ySGFuZGxlclNlcnZpY2UuaGFuZGxlRXJyb3IpXG4gICAgICApO1xuICB9XG5cbiAgcG9zdElzc3VlUmVmdW5kKGJvZHk6IElzc3VlUmVmdW5kUmVxdWVzdCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cHMucG9zdChgJHt0aGlzLnBheW1lbnRMaWJTZXJ2aWNlLlJFRlVORFNfQVBJX1JPT1R9L3JlZnVuZGAsIGJvZHkpLnBpcGUoXG4gICAgICBjYXRjaEVycm9yKHRoaXMuZXJyb3JIYW5kbGVyU2VydmljZS5oYW5kbGVFcnJvcilcbiAgICApO1xuICB9XG5cbiAgcHV0UmVzZW5kT3JFZGl0KGJvZHk6IElQdXROb3RpZmljYXRpb25SZXF1ZXN0LCByZWZ1bmRSZWY6IHN0cmluZywgbm90aWZpY2F0aW9uVHlwZTogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwcy5wdXQoYCR7dGhpcy5wYXltZW50TGliU2VydmljZS5SRUZVTkRTX0FQSV9ST09UfS9yZXNlbmQvbm90aWZpY2F0aW9uLyR7cmVmdW5kUmVmfT9ub3RpZmljYXRpb25UeXBlPSR7bm90aWZpY2F0aW9uVHlwZX1gLCBib2R5KS5waXBlKFxuICAgICAgY2F0Y2hFcnJvcih0aGlzLmVycm9ySGFuZGxlclNlcnZpY2UuaGFuZGxlRXJyb3IpXG4gICAgKTtcbiAgfVxuXG4gIHBhdGNoUmVzdWJtaXRSZWZ1bmQoYm9keTogSVJlc3VibWl0UmVmdW5kUmVxdWVzdCwgcmVmdW5kX3JlZmVyZW5jZTogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICAvLyBjb25zdCBvcHRzID0gdGhpcy5hZGRIZWFkZXJzKHt9KTtcbiAgICByZXR1cm4gdGhpcy5odHRwcy5wYXRjaChgJHt0aGlzLnBheW1lbnRMaWJTZXJ2aWNlLlJFRlVORFNfQVBJX1JPT1R9L3Jlc3VibWl0LyR7cmVmdW5kX3JlZmVyZW5jZX1gLCBib2R5KS5waXBlKFxuICAgICAgY2F0Y2hFcnJvcih0aGlzLmVycm9ySGFuZGxlclNlcnZpY2UuaGFuZGxlRXJyb3IpXG4gICAgKTtcbiAgfVxuXG4gIGFkZEhlYWRlcnMob3B0aW9uczogYW55KTogYW55IHtcbiAgICBjb25zdCBjc3JmVG9rZW4gPSB0aGlzLm1ldGEuZ2V0VGFnKCduYW1lPWNzcmYtdG9rZW4nKTtcbiAgICBjb25zdCBoZWFkZXJzID0ge307XG4gICAgaWYgKG9wdGlvbnMuaGVhZGVycykge1xuICAgICAgb3B0aW9ucy5oZWFkZXJzLmZvckVhY2goZWxlbWVudCA9PiB7XG4gICAgICAgIGhlYWRlcnNbZWxlbWVudF0gPSBvcHRpb25zLmhlYWRlcnMuZ2V0KGVsZW1lbnQpO1xuICAgICAgfSk7XG4gICAgfVxuICAgIGhlYWRlcnNbJ1gtUmVxdWVzdGVkLVdpdGgnXSA9ICdYTUxIdHRwUmVxdWVzdCc7XG4gICAgaWYgKGNzcmZUb2tlbi5jb250ZW50ID09PSBudWxsKSB7XG4gICAgICBpZiAoZG9jdW1lbnQuY29va2llLnNwbGl0KCc7JykuZmluZChyb3cgPT4gcm93LnN0YXJ0c1dpdGgoJ1hTUkYtVE9LRU4nKSkgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBoZWFkZXJzWydDU1JGLVRva2VuJ10gPSBkb2N1bWVudC5jb29raWUuc3BsaXQoJzsnKS5maW5kKHJvdyA9PiByb3cuc3RhcnRzV2l0aCgnWFNSRi1UT0tFTicpKS5zcGxpdCgnPScpWzFdO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaGVhZGVyc1snQ1NSRi1Ub2tlbiddID0gZG9jdW1lbnQuY29va2llLnNwbGl0KCc7JykuZmluZChyb3cgPT4gcm93LnN0YXJ0c1dpdGgoJyBYU1JGLVRPS0VOJykpLnNwbGl0KCc9JylbMV07XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGhlYWRlcnNbJ0NTUkYtVG9rZW4nXSA9IGNzcmZUb2tlbi5jb250ZW50O1xuICAgIH1cbiAgICBvcHRpb25zLmhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoaGVhZGVycyk7XG4gICAgb3B0aW9ucy5yZXNwb25zZVR5cGUgPSAndGV4dCc7XG4gICAgcmV0dXJuIG9wdGlvbnM7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -84,12 +84,13 @@ export class ErrorHandlerService {
|
|
|
84
84
|
showError: isErrorExist
|
|
85
85
|
};
|
|
86
86
|
}
|
|
87
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: ErrorHandlerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
88
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: ErrorHandlerService, providedIn: 'root' });
|
|
87
89
|
}
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
];
|
|
94
|
-
|
|
95
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3ItaGFuZGxlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcGF5bWVudC1saWIvc3JjL2xpYi9zZXJ2aWNlcy9zaGFyZWQvZXJyb3ItaGFuZGxlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFjLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFPOUMsTUFBTSxPQUFPLG1CQUFtQjtJQUU5QixnQkFBZ0IsQ0FBQztJQUdqQixXQUFXLENBQUMsR0FBc0I7UUFDaEMsSUFBSSxZQUFvQixDQUFDO1FBQ3pCLElBQUksR0FBRyxDQUFDLEtBQUssWUFBWSxLQUFLLEVBQUU7WUFDOUIsMkNBQTJDO1lBQzNDLFlBQVksR0FBRyxzQkFBc0IsR0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztTQUMxRDthQUFNO1lBQ0wsc0RBQXNEO1lBQ3RELElBQUksR0FBRyxDQUFDLE1BQU0sS0FBSyxHQUFHLEVBQUU7Z0JBRXRCLElBQUksT0FBTyxHQUFHLENBQUMsS0FBSyxLQUFLLFFBQVEsSUFBSSxHQUFHLENBQUMsS0FBSyxLQUFLLFNBQVMsRUFBRTtvQkFFNUQsSUFBRyxHQUFHLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxFQUFFLEVBQUU7d0JBQ3hCLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsVUFBVSxLQUFLLFNBQVMsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxVQUFVLEtBQUssR0FBRyxFQUM5Rjs0QkFDRSxZQUFZLEdBQUcsdUJBQXVCLENBQUM7eUJBQ3hDOzZCQUFNOzRCQUNMLElBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsRUFBRSxFQUFFO2dDQUN4QixZQUFZLEdBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBSyxDQUFDOzZCQUM3QztpQ0FBTTtnQ0FDTCxZQUFZLEdBQUksR0FBRyxDQUFDLEtBQUssQ0FBQzs2QkFDM0I7eUJBRUY7cUJBQ0Y7eUJBQU07d0JBQ0wsWUFBWSxHQUFJLEdBQUcsQ0FBQyxLQUFLLENBQUM7cUJBQzNCO2lCQUNGO3FCQUFNO29CQUNMLFlBQVksR0FBSSxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxLQUFLLENBQUM7aUJBQzdDO2FBRUY7aUJBQ0ksSUFBSSxHQUFHLENBQUMsTUFBTSxLQUFLLEdBQUcsRUFBRTtnQkFDM0IsWUFBWSxHQUFHLHVCQUF1QixDQUFDO2FBQ3hDO2lCQUFNLElBQUksR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLEtBQUssU0FBUyxFQUFFO2dCQUMzQyxJQUFJLE9BQU8sR0FBRyxDQUFDLEtBQUssS0FBSyxRQUFRLEVBQUU7b0JBQ2pDLFlBQVksR0FBSSxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO2lCQUM3RDtxQkFBTTtvQkFDTCxJQUFJLE9BQU8sR0FBRyxDQUFDLEtBQUssS0FBSyxRQUFRLElBQUksR0FBRyxDQUFDLEtBQUssS0FBSyxTQUFTLEVBQUU7d0JBRTVELElBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsRUFBRSxFQUFFOzRCQUN4QixJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLFVBQVUsS0FBSyxTQUFTLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsVUFBVSxLQUFLLEdBQUcsRUFDOUY7Z0NBQ0UsWUFBWSxHQUFHLHVCQUF1QixDQUFDOzZCQUN4QztpQ0FBTTtnQ0FDTCxJQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLEVBQUUsRUFBRTtvQ0FDeEIsWUFBWSxHQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssQ0FBQztpQ0FDN0M7cUNBQU07b0NBQ0wsWUFBWSxHQUFJLEdBQUcsQ0FBQyxLQUFLLENBQUM7aUNBQzNCOzZCQUVGO3lCQUNGOzZCQUFNOzRCQUNMLFlBQVksR0FBSSxHQUFHLENBQUMsS0FBSyxDQUFDO3lCQUMzQjtxQkFDRjt5QkFBTTt3QkFDTCxZQUFZLEdBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBSyxDQUFDO3FCQUM3QztpQkFFRjthQUVGO2lCQUFNO2dCQUNMLElBQUksR0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFPLEtBQUssU0FBUyxFQUFFO29CQUNuQyxZQUFZLEdBQUcsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO2lCQUN2QztxQkFBTTtvQkFDTCxZQUFZLEdBQUcsR0FBRyxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUM7aUJBQy9CO2FBRUY7U0FDRjtRQUNELE9BQU8sVUFBVSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFHRCxxQkFBcUIsQ0FBQyxZQUFZLEVBQUUsY0FBYyxHQUFHLEtBQUssRUFBRSxLQUFLLEdBQUMsRUFBRTtRQUNsRSxNQUFNLFdBQVcsR0FBRyxjQUFjLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsaUJBQWlCLENBQUM7UUFDL0QsT0FBTztZQUNMLEtBQUssRUFBRSxxQ0FBcUM7WUFDNUMsSUFBSSxFQUFFLFdBQVc7WUFDakIsU0FBUyxFQUFFLFlBQVk7U0FDeEIsQ0FBQztJQUNKLENBQUM7Ozs7WUExRkYsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSHR0cEVycm9yUmVzcG9uc2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCB0aHJvd0Vycm9yIH0gZnJvbSAncnhqcyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuXG5cbmV4cG9ydCBjbGFzcyBFcnJvckhhbmRsZXJTZXJ2aWNlIHtcblxuICBjb25zdHJ1Y3RvcigpIHsgfVxuXG5cbiAgaGFuZGxlRXJyb3IoZXJyOiBIdHRwRXJyb3JSZXNwb25zZSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IGVycm9yTWVzc2FnZTogc3RyaW5nO1xuICAgIGlmIChlcnIuZXJyb3IgaW5zdGFuY2VvZiBFcnJvcikge1xuICAgICAgLy8gQSBjbGllbnQtc2lkZSBvciBuZXR3b3JrIGVycm9yIG9jY3VycmVkLlxuICAgICAgZXJyb3JNZXNzYWdlID0gYEFuIGVycm9yIG9jY3VycmVkOiAke2Vyci5lcnJvci5tZXNzYWdlfWA7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIFRoZSBiYWNrZW5kIHJldHVybmVkIGFuIHVuc3VjY2Vzc2Z1bCByZXNwb25zZSBjb2RlLlxuICAgICAgaWYgKGVyci5zdGF0dXMgPT09IDQwNCkge1xuXG4gICAgICAgIGlmICh0eXBlb2YgZXJyLmVycm9yID09PSAnc3RyaW5nJyAmJiBlcnIuZXJyb3IgIT09IHVuZGVmaW5lZCkge1xuXG4gICAgICAgICAgaWYoZXJyLmVycm9yLmxlbmd0aCA+IDYwKSB7XG4gICAgICAgICAgICBpZiAoSlNPTi5wYXJzZShlcnIuZXJyb3IpLnN0YXR1c0NvZGUgIT09IHVuZGVmaW5lZCAmJiBKU09OLnBhcnNlKGVyci5lcnJvcikuc3RhdHVzQ29kZSA9PT0gNTAwKVxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBlcnJvck1lc3NhZ2UgPSAnSW50ZXJuYWwgc2VydmVyIGVycm9yJztcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIGlmKGVyci5lcnJvci5sZW5ndGggPiA2MCkge1xuICAgICAgICAgICAgICAgIGVycm9yTWVzc2FnZSA9ICBKU09OLnBhcnNlKGVyci5lcnJvcikuZXJyb3I7XG4gICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgZXJyb3JNZXNzYWdlID0gIGVyci5lcnJvcjtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGVycm9yTWVzc2FnZSA9ICBlcnIuZXJyb3I7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGVycm9yTWVzc2FnZSA9ICBKU09OLnBhcnNlKGVyci5lcnJvcikuZXJyb3I7XG4gICAgICAgIH1cblxuICAgICAgfVxuICAgICAgZWxzZSBpZiAoZXJyLnN0YXR1cyA9PT0gNTAwKSB7XG4gICAgICAgIGVycm9yTWVzc2FnZSA9ICdJbnRlcm5hbCBzZXJ2ZXIgZXJyb3InO1xuICAgICAgfSBlbHNlIGlmIChlcnIuZXJyb3IubWVzc3NhZ2UgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICBpZiggdHlwZW9mIGVyci5lcnJvciA9PT0gJ29iamVjdCcpIHtcbiAgICAgICAgICBlcnJvck1lc3NhZ2UgPSAgSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShlcnIuZXJyb3IpKS5lcnJvcjtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBpZiAodHlwZW9mIGVyci5lcnJvciA9PT0gJ3N0cmluZycgJiYgZXJyLmVycm9yICE9PSB1bmRlZmluZWQpIHtcblxuICAgICAgICAgICAgaWYoZXJyLmVycm9yLmxlbmd0aCA+IDYwKSB7XG4gICAgICAgICAgICAgIGlmIChKU09OLnBhcnNlKGVyci5lcnJvcikuc3RhdHVzQ29kZSAhPT0gdW5kZWZpbmVkICYmIEpTT04ucGFyc2UoZXJyLmVycm9yKS5zdGF0dXNDb2RlID09PSA1MDApXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBlcnJvck1lc3NhZ2UgPSAnSW50ZXJuYWwgc2VydmVyIGVycm9yJztcbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBpZihlcnIuZXJyb3IubGVuZ3RoID4gNjApIHtcbiAgICAgICAgICAgICAgICAgIGVycm9yTWVzc2FnZSA9ICBKU09OLnBhcnNlKGVyci5lcnJvcikuZXJyb3I7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgIGVycm9yTWVzc2FnZSA9ICBlcnIuZXJyb3I7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIGVycm9yTWVzc2FnZSA9ICBlcnIuZXJyb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGVycm9yTWVzc2FnZSA9ICBKU09OLnBhcnNlKGVyci5lcnJvcikuZXJyb3I7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKGVyci5lcnJvci5tZXNzYWdlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICBlcnJvck1lc3NhZ2UgPSBgJHtlcnIuZXJyb3IubWVzc2FnZX1gO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGVycm9yTWVzc2FnZSA9IGAke2Vyci5lcnJvcn1gO1xuICAgICAgICB9XG5cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRocm93RXJyb3IoZXJyb3JNZXNzYWdlKTtcbiAgfVxuXG5cbiAgZ2V0U2VydmVyRXJyb3JNZXNzYWdlKGlzRXJyb3JFeGlzdCwgaXNEYXRhTm90RXhpc3QgPSBmYWxzZSwgZXJyb3I9JycpIHtcbiAgICBjb25zdCBib2R5Q29udGVudCA9IGlzRGF0YU5vdEV4aXN0ID8gZXJyb3IgOiAnVHJ5IGFnYWluIGxhdGVyJztcbiAgICByZXR1cm4ge1xuICAgICAgdGl0bGU6IFwiVGhlcmUgaXMgYSBwcm9ibGVtIHdpdGggdGhlIHNlcnZpY2VcIixcbiAgICAgIGJvZHk6IGJvZHlDb250ZW50LFxuICAgICAgc2hvd0Vycm9yOiBpc0Vycm9yRXhpc3RcbiAgICB9O1xuICB9XG59XG4iXX0=
|
|
90
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: ErrorHandlerService, decorators: [{
|
|
91
|
+
type: Injectable,
|
|
92
|
+
args: [{
|
|
93
|
+
providedIn: 'root'
|
|
94
|
+
}]
|
|
95
|
+
}], ctorParameters: function () { return []; } });
|
|
96
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3ItaGFuZGxlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcGF5bWVudC1saWIvc3JjL2xpYi9zZXJ2aWNlcy9zaGFyZWQvZXJyb3ItaGFuZGxlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFjLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFPOUMsTUFBTSxPQUFPLG1CQUFtQjtJQUU5QixnQkFBZ0IsQ0FBQztJQUdqQixXQUFXLENBQUMsR0FBc0I7UUFDaEMsSUFBSSxZQUFvQixDQUFDO1FBQ3pCLElBQUksR0FBRyxDQUFDLEtBQUssWUFBWSxLQUFLLEVBQUU7WUFDOUIsMkNBQTJDO1lBQzNDLFlBQVksR0FBRyxzQkFBc0IsR0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztTQUMxRDthQUFNO1lBQ0wsc0RBQXNEO1lBQ3RELElBQUksR0FBRyxDQUFDLE1BQU0sS0FBSyxHQUFHLEVBQUU7Z0JBRXRCLElBQUksT0FBTyxHQUFHLENBQUMsS0FBSyxLQUFLLFFBQVEsSUFBSSxHQUFHLENBQUMsS0FBSyxLQUFLLFNBQVMsRUFBRTtvQkFFNUQsSUFBRyxHQUFHLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxFQUFFLEVBQUU7d0JBQ3hCLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsVUFBVSxLQUFLLFNBQVMsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxVQUFVLEtBQUssR0FBRyxFQUM5Rjs0QkFDRSxZQUFZLEdBQUcsdUJBQXVCLENBQUM7eUJBQ3hDOzZCQUFNOzRCQUNMLElBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsRUFBRSxFQUFFO2dDQUN4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WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIdHRwRXJyb3JSZXNwb25zZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IE9ic2VydmFibGUsIHRocm93RXJyb3IgfSBmcm9tICdyeGpzJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5cblxuZXhwb3J0IGNsYXNzIEVycm9ySGFuZGxlclNlcnZpY2Uge1xuXG4gIGNvbnN0cnVjdG9yKCkgeyB9XG5cblxuICBoYW5kbGVFcnJvcihlcnI6IEh0dHBFcnJvclJlc3BvbnNlKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgZXJyb3JNZXNzYWdlOiBzdHJpbmc7XG4gICAgaWYgKGVyci5lcnJvciBpbnN0YW5jZW9mIEVycm9yKSB7XG4gICAgICAvLyBBIGNsaWVudC1zaWRlIG9yIG5ldHdvcmsgZXJyb3Igb2NjdXJyZWQuXG4gICAgICBlcnJvck1lc3NhZ2UgPSBgQW4gZXJyb3Igb2NjdXJyZWQ6ICR7ZXJyLmVycm9yLm1lc3NhZ2V9YDtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gVGhlIGJhY2tlbmQgcmV0dXJuZWQgYW4gdW5zdWNjZXNzZnVsIHJlc3BvbnNlIGNvZGUuXG4gICAgICBpZiAoZXJyLnN0YXR1cyA9PT0gNDA0KSB7XG5cbiAgICAgICAgaWYgKHR5cGVvZiBlcnIuZXJyb3IgPT09ICdzdHJpbmcnICYmIGVyci5lcnJvciAhPT0gdW5kZWZpbmVkKSB7XG5cbiAgICAgICAgICBpZihlcnIuZXJyb3IubGVuZ3RoID4gNjApIHtcbiAgICAgICAgICAgIGlmIChKU09OLnBhcnNlKGVyci5lcnJvcikuc3RhdHVzQ29kZSAhPT0gdW5kZWZpbmVkICYmIEpTT04ucGFyc2UoZXJyLmVycm9yKS5zdGF0dXNDb2RlID09PSA1MDApXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGVycm9yTWVzc2FnZSA9ICdJbnRlcm5hbCBzZXJ2ZXIgZXJyb3InO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgaWYoZXJyLmVycm9yLmxlbmd0aCA+IDYwKSB7XG4gICAgICAgICAgICAgICAgZXJyb3JNZXNzYWdlID0gIEpTT04ucGFyc2UoZXJyLmVycm9yKS5lcnJvcjtcbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBlcnJvck1lc3NhZ2UgPSAgZXJyLmVycm9yO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgZXJyb3JNZXNzYWdlID0gIGVyci5lcnJvcjtcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgZXJyb3JNZXNzYWdlID0gIEpTT04ucGFyc2UoZXJyLmVycm9yKS5lcnJvcjtcbiAgICAgICAgfVxuXG4gICAgICB9XG4gICAgICBlbHNlIGlmIChlcnIuc3RhdHVzID09PSA1MDApIHtcbiAgICAgICAgZXJyb3JNZXNzYWdlID0gJ0ludGVybmFsIHNlcnZlciBlcnJvcic7XG4gICAgICB9IGVsc2UgaWYgKGVyci5lcnJvci5tZXNzc2FnZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGlmKCB0eXBlb2YgZXJyLmVycm9yID09PSAnb2JqZWN0Jykge1xuICAgICAgICAgIGVycm9yTWVzc2FnZSA9ICBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KGVyci5lcnJvcikpLmVycm9yO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGlmICh0eXBlb2YgZXJyLmVycm9yID09PSAnc3RyaW5nJyAmJiBlcnIuZXJyb3IgIT09IHVuZGVmaW5lZCkge1xuXG4gICAgICAgICAgICBpZihlcnIuZXJyb3IubGVuZ3RoID4gNjApIHtcbiAgICAgICAgICAgICAgaWYgKEpTT04ucGFyc2UoZXJyLmVycm9yKS5zdGF0dXNDb2RlICE9PSB1bmRlZmluZWQgJiYgSlNPTi5wYXJzZShlcnIuZXJyb3IpLnN0YXR1c0NvZGUgPT09IDUwMClcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGVycm9yTWVzc2FnZSA9ICdJbnRlcm5hbCBzZXJ2ZXIgZXJyb3InO1xuICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGlmKGVyci5lcnJvci5sZW5ndGggPiA2MCkge1xuICAgICAgICAgICAgICAgICAgZXJyb3JNZXNzYWdlID0gIEpTT04ucGFyc2UoZXJyLmVycm9yKS5lcnJvcjtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgZXJyb3JNZXNzYWdlID0gIGVyci5lcnJvcjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgZXJyb3JNZXNzYWdlID0gIGVyci5lcnJvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgZXJyb3JNZXNzYWdlID0gIEpTT04ucGFyc2UoZXJyLmVycm9yKS5lcnJvcjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpZiAoZXJyLmVycm9yLm1lc3NhZ2UgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIGVycm9yTWVzc2FnZSA9IGAke2Vyci5lcnJvci5tZXNzYWdlfWA7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgZXJyb3JNZXNzYWdlID0gYCR7ZXJyLmVycm9yfWA7XG4gICAgICAgIH1cblxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdGhyb3dFcnJvcihlcnJvck1lc3NhZ2UpO1xuICB9XG5cblxuICBnZXRTZXJ2ZXJFcnJvck1lc3NhZ2UoaXNFcnJvckV4aXN0LCBpc0RhdGFOb3RFeGlzdCA9IGZhbHNlLCBlcnJvcj0nJykge1xuICAgIGNvbnN0IGJvZHlDb250ZW50ID0gaXNEYXRhTm90RXhpc3QgPyBlcnJvciA6ICdUcnkgYWdhaW4gbGF0ZXInO1xuICAgIHJldHVybiB7XG4gICAgICB0aXRsZTogXCJUaGVyZSBpcyBhIHByb2JsZW0gd2l0aCB0aGUgc2VydmljZVwiLFxuICAgICAgYm9keTogYm9keUNvbnRlbnQsXG4gICAgICBzaG93RXJyb3I6IGlzRXJyb3JFeGlzdFxuICAgIH07XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { HttpClient, HttpHeaders } from '@angular/common/http';
|
|
3
|
+
import { Meta } from '@angular/platform-browser';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/common/http";
|
|
6
|
+
import * as i2 from "@angular/platform-browser";
|
|
7
|
+
export class WebComponentHttpClient {
|
|
8
|
+
http;
|
|
9
|
+
meta;
|
|
10
|
+
constructor(http, meta) {
|
|
11
|
+
this.http = http;
|
|
12
|
+
this.meta = meta;
|
|
13
|
+
}
|
|
14
|
+
post(url, body, options) {
|
|
15
|
+
const opts = this.addHeaders(options || {});
|
|
16
|
+
return this.http.post(url, body, opts);
|
|
17
|
+
}
|
|
18
|
+
put(url, body, options) {
|
|
19
|
+
const opts = this.addHeaders(options || {});
|
|
20
|
+
return this.http.put(url, body, opts);
|
|
21
|
+
}
|
|
22
|
+
get(url, options) {
|
|
23
|
+
const opts = this.addHeaders(options || {});
|
|
24
|
+
return this.http.get(url, opts);
|
|
25
|
+
}
|
|
26
|
+
delete(url, options) {
|
|
27
|
+
const opts = this.addHeaders(options || {});
|
|
28
|
+
return this.http.delete(url, opts);
|
|
29
|
+
}
|
|
30
|
+
patch(url, body, options) {
|
|
31
|
+
const opts = this.addHeaders(options || {});
|
|
32
|
+
return this.http.patch(url, body, opts);
|
|
33
|
+
}
|
|
34
|
+
addHeaders(options) {
|
|
35
|
+
const csrfToken = this.meta.getTag('name=csrf-token');
|
|
36
|
+
const headers = {};
|
|
37
|
+
if (options.headers) {
|
|
38
|
+
options.headers.forEach(element => {
|
|
39
|
+
headers[element] = options.headers.get(element);
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
headers['X-Requested-With'] = 'XMLHttpRequest';
|
|
43
|
+
if (csrfToken === null) {
|
|
44
|
+
if (document.cookie.split(';').find(row => row.startsWith('XSRF-TOKEN')) !== undefined) {
|
|
45
|
+
headers['CSRF-Token'] = document.cookie.split(';').find(row => row.startsWith('XSRF-TOKEN')).split('=')[1];
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
headers['CSRF-Token'] = document.cookie.split(';').find(row => row.startsWith(' XSRF-TOKEN')).split('=')[1];
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
else {
|
|
52
|
+
headers['CSRF-Token'] = csrfToken.content;
|
|
53
|
+
}
|
|
54
|
+
options.headers = new HttpHeaders(headers);
|
|
55
|
+
options.responseType = 'text';
|
|
56
|
+
return options;
|
|
57
|
+
}
|
|
58
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: WebComponentHttpClient, deps: [{ token: i1.HttpClient }, { token: i2.Meta }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
59
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: WebComponentHttpClient });
|
|
60
|
+
}
|
|
61
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: WebComponentHttpClient, decorators: [{
|
|
62
|
+
type: Injectable
|
|
63
|
+
}], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.Meta }]; } });
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2ViY29tcG9uZW50Lmh0dHAuY2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcGF5bWVudC1saWIvc3JjL2xpYi9zZXJ2aWNlcy9zaGFyZWQvaHR0cGNsaWVudC93ZWJjb21wb25lbnQuaHR0cC5jbGllbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQy9ELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7OztBQUlqRCxNQUFNLE9BQU8sc0JBQXNCO0lBRXZCO0lBQ0E7SUFGVixZQUNVLElBQWdCLEVBQ2hCLElBQVU7UUFEVixTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLFNBQUksR0FBSixJQUFJLENBQU07SUFDaEIsQ0FBQztJQUVMLElBQUksQ0FBQyxHQUFXLEVBQUUsSUFBZ0IsRUFBRSxPQUFhO1FBQy9DLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQzVDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRUQsR0FBRyxDQUFDLEdBQVcsRUFBRSxJQUFnQixFQUFFLE9BQWE7UUFDOUMsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLElBQUksRUFBRSxDQUFDLENBQUM7UUFDNUMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFRCxHQUFHLENBQUMsR0FBVyxFQUFFLE9BQWE7UUFDNUIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLElBQUksRUFBRSxDQUFDLENBQUM7UUFDNUMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVELE1BQU0sQ0FBQyxHQUFXLEVBQUUsT0FBYTtRQUMvQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUMsQ0FBQztRQUM1QyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRUQsS0FBSyxDQUFDLEdBQVcsRUFBRSxJQUFnQixFQUFFLE9BQWE7UUFDaEQsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLElBQUksRUFBRSxDQUFDLENBQUM7UUFDNUMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFRCxVQUFVLENBQUMsT0FBWTtRQUNyQixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQ3RELE1BQU0sT0FBTyxHQUFHLEVBQUUsQ0FBQztRQUVuQixJQUFJLE9BQU8sQ0FBQyxPQUFPLEVBQUU7WUFDbkIsT0FBTyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUU7Z0JBQ2hDLE9BQU8sQ0FBQyxPQUFPLENBQUMsR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNsRCxDQUFDLENBQUMsQ0FBQztTQUNKO1FBQ0QsT0FBTyxDQUFDLGtCQUFrQixDQUFDLEdBQUcsZ0JBQWdCLENBQUM7UUFDL0MsSUFBSSxTQUFTLEtBQUssSUFBSSxFQUFFO1lBQ3RCLElBQUksUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxZQUFZLENBQUMsQ0FBQyxLQUFLLFNBQVMsRUFBRztnQkFDdkYsT0FBTyxDQUFDLFlBQVksQ0FBQyxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDNUc7aUJBQU07Z0JBQ0wsT0FBTyxDQUFDLFlBQVksQ0FBQyxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDN0c7U0FFRjthQUFNO1lBQ0wsT0FBTyxDQUFDLFlBQVksQ0FBQyxHQUFHLFNBQVMsQ0FBQyxPQUFPLENBQUM7U0FDM0M7UUFDRCxPQUFPLENBQUMsT0FBTyxHQUFHLElBQUksV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzNDLE9BQU8sQ0FBQyxZQUFZLEdBQUcsTUFBTSxDQUFDO1FBQzlCLE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7dUdBdERVLHNCQUFzQjsyR0FBdEIsc0JBQXNCOzsyRkFBdEIsc0JBQXNCO2tCQURsQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cEhlYWRlcnMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBNZXRhIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBXZWJDb21wb25lbnRIdHRwQ2xpZW50IHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxuICAgIHByaXZhdGUgbWV0YTogTWV0YVxuICApIHsgfVxuXG4gIHBvc3QodXJsOiBzdHJpbmcsIGJvZHk6IGFueSB8IG51bGwsIG9wdGlvbnM/OiBhbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IG9wdHMgPSB0aGlzLmFkZEhlYWRlcnMob3B0aW9ucyB8fCB7fSk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHVybCwgYm9keSwgb3B0cyk7XG4gIH1cblxuICBwdXQodXJsOiBzdHJpbmcsIGJvZHk6IGFueSB8IG51bGwsIG9wdGlvbnM/OiBhbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IG9wdHMgPSB0aGlzLmFkZEhlYWRlcnMob3B0aW9ucyB8fCB7fSk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQodXJsLCBib2R5LCBvcHRzKTtcbiAgfVxuXG4gIGdldCh1cmw6IHN0cmluZywgb3B0aW9ucz86IGFueSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgb3B0cyA9IHRoaXMuYWRkSGVhZGVycyhvcHRpb25zIHx8IHt9KTtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldCh1cmwsIG9wdHMpO1xuICB9XG5cbiAgZGVsZXRlKHVybDogc3RyaW5nLCBvcHRpb25zPzogYW55KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBvcHRzID0gdGhpcy5hZGRIZWFkZXJzKG9wdGlvbnMgfHwge30pO1xuICAgIHJldHVybiB0aGlzLmh0dHAuZGVsZXRlKHVybCwgb3B0cyk7XG4gIH1cbiAgXG4gIHBhdGNoKHVybDogc3RyaW5nLCBib2R5OiBhbnkgfCBudWxsLCBvcHRpb25zPzogYW55KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBvcHRzID0gdGhpcy5hZGRIZWFkZXJzKG9wdGlvbnMgfHwge30pO1xuICAgIHJldHVybiB0aGlzLmh0dHAucGF0Y2godXJsLCBib2R5LCBvcHRzKTtcbiAgfVxuXG4gIGFkZEhlYWRlcnMob3B0aW9uczogYW55KTogYW55IHtcbiAgICBjb25zdCBjc3JmVG9rZW4gPSB0aGlzLm1ldGEuZ2V0VGFnKCduYW1lPWNzcmYtdG9rZW4nKTtcbiAgICBjb25zdCBoZWFkZXJzID0ge307XG4gICAgXG4gICAgaWYgKG9wdGlvbnMuaGVhZGVycykge1xuICAgICAgb3B0aW9ucy5oZWFkZXJzLmZvckVhY2goZWxlbWVudCA9PiB7XG4gICAgICAgIGhlYWRlcnNbZWxlbWVudF0gPSBvcHRpb25zLmhlYWRlcnMuZ2V0KGVsZW1lbnQpO1xuICAgICAgfSk7XG4gICAgfVxuICAgIGhlYWRlcnNbJ1gtUmVxdWVzdGVkLVdpdGgnXSA9ICdYTUxIdHRwUmVxdWVzdCc7XG4gICAgaWYgKGNzcmZUb2tlbiA9PT0gbnVsbCkge1xuICAgICAgaWYoIGRvY3VtZW50LmNvb2tpZS5zcGxpdCgnOycpLmZpbmQocm93ID0+IHJvdy5zdGFydHNXaXRoKCdYU1JGLVRPS0VOJykpICE9PSB1bmRlZmluZWQgKSB7XG4gICAgICAgIGhlYWRlcnNbJ0NTUkYtVG9rZW4nXSA9IGRvY3VtZW50LmNvb2tpZS5zcGxpdCgnOycpLmZpbmQocm93ID0+IHJvdy5zdGFydHNXaXRoKCdYU1JGLVRPS0VOJykpLnNwbGl0KCc9JylbMV07ICAgICBcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGhlYWRlcnNbJ0NTUkYtVG9rZW4nXSA9IGRvY3VtZW50LmNvb2tpZS5zcGxpdCgnOycpLmZpbmQocm93ID0+IHJvdy5zdGFydHNXaXRoKCcgWFNSRi1UT0tFTicpKS5zcGxpdCgnPScpWzFdO1xuICAgICAgfVxuICAgICAgXG4gICAgfSBlbHNlIHtcbiAgICAgIGhlYWRlcnNbJ0NTUkYtVG9rZW4nXSA9IGNzcmZUb2tlbi5jb250ZW50O1xuICAgIH1cbiAgICBvcHRpb25zLmhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoaGVhZGVycyk7XG4gICAgb3B0aW9ucy5yZXNwb25zZVR5cGUgPSAndGV4dCc7XG4gICAgcmV0dXJuIG9wdGlvbnM7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export let isDebugMode = false;
|
|
4
|
+
const noop = () => undefined;
|
|
5
|
+
export class ConsoleLoggerService {
|
|
6
|
+
get info() {
|
|
7
|
+
if (isDebugMode) {
|
|
8
|
+
return console.info.bind(console);
|
|
9
|
+
}
|
|
10
|
+
else {
|
|
11
|
+
return noop;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
get warn() {
|
|
15
|
+
if (isDebugMode) {
|
|
16
|
+
return console.warn.bind(console);
|
|
17
|
+
}
|
|
18
|
+
else {
|
|
19
|
+
return noop;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
get error() {
|
|
23
|
+
if (isDebugMode) {
|
|
24
|
+
return console.error.bind(console);
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
return noop;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
invokeConsoleMethod(type, args) {
|
|
31
|
+
const logFn = (console)[type] || console.log || noop;
|
|
32
|
+
logFn.apply(console, [args]);
|
|
33
|
+
}
|
|
34
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: ConsoleLoggerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
35
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: ConsoleLoggerService, providedIn: 'root' });
|
|
36
|
+
}
|
|
37
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: ConsoleLoggerService, decorators: [{
|
|
38
|
+
type: Injectable,
|
|
39
|
+
args: [{
|
|
40
|
+
providedIn: 'root'
|
|
41
|
+
}]
|
|
42
|
+
}] });
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc29sZS1sb2dnZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3BheW1lbnQtbGliL3NyYy9saWIvc2VydmljZXMvc2hhcmVkL2xvZ2dlci9jb25zb2xlLWxvZ2dlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRzNDLE1BQU0sQ0FBQyxJQUFJLFdBQVcsR0FBRyxLQUFLLENBQUM7QUFFL0IsTUFBTSxJQUFJLEdBQUcsR0FBUSxFQUFFLENBQUMsU0FBUyxDQUFDO0FBS2xDLE1BQU0sT0FBTyxvQkFBb0I7SUFFL0IsSUFBSSxJQUFJO1FBQ04sSUFBSSxXQUFXLEVBQUU7WUFDZixPQUFPLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQ25DO2FBQU07WUFDTCxPQUFPLElBQUksQ0FBQztTQUNiO0lBQ0gsQ0FBQztJQUVELElBQUksSUFBSTtRQUNOLElBQUksV0FBVyxFQUFFO1lBQ2YsT0FBTyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztTQUNuQzthQUFNO1lBQ0wsT0FBTyxJQUFJLENBQUM7U0FDYjtJQUNILENBQUM7SUFFRCxJQUFJLEtBQUs7UUFDUCxJQUFJLFdBQVcsRUFBRTtZQUNmLE9BQU8sT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDcEM7YUFBTTtZQUNMLE9BQU8sSUFBSSxDQUFDO1NBQ2I7SUFDSCxDQUFDO0lBRUQsbUJBQW1CLENBQUMsSUFBWSxFQUFFLElBQVU7UUFDMUMsTUFBTSxLQUFLLEdBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxPQUFPLENBQUMsR0FBRyxJQUFJLElBQUksQ0FBQztRQUMvRCxLQUFLLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDL0IsQ0FBQzt1R0E3QlUsb0JBQW9COzJHQUFwQixvQkFBb0IsY0FGbkIsTUFBTTs7MkZBRVAsb0JBQW9CO2tCQUhoQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IExvZ2dlciB9IGZyb20gJy4vbG9nZ2VyLnNlcnZpY2UnO1xuXG5leHBvcnQgbGV0IGlzRGVidWdNb2RlID0gZmFsc2U7XG5cbmNvbnN0IG5vb3AgPSAoKTogYW55ID0+IHVuZGVmaW5lZDtcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQ29uc29sZUxvZ2dlclNlcnZpY2UgaW1wbGVtZW50cyBMb2dnZXIge1xuXG4gIGdldCBpbmZvKCkge1xuICAgIGlmIChpc0RlYnVnTW9kZSkge1xuICAgICAgcmV0dXJuIGNvbnNvbGUuaW5mby5iaW5kKGNvbnNvbGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gbm9vcDtcbiAgICB9XG4gIH1cblxuICBnZXQgd2FybigpIHtcbiAgICBpZiAoaXNEZWJ1Z01vZGUpIHtcbiAgICAgIHJldHVybiBjb25zb2xlLndhcm4uYmluZChjb25zb2xlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIG5vb3A7XG4gICAgfVxuICB9XG5cbiAgZ2V0IGVycm9yKCkge1xuICAgIGlmIChpc0RlYnVnTW9kZSkge1xuICAgICAgcmV0dXJuIGNvbnNvbGUuZXJyb3IuYmluZChjb25zb2xlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIG5vb3A7XG4gICAgfVxuICB9XG5cbiAgaW52b2tlQ29uc29sZU1ldGhvZCh0eXBlOiBzdHJpbmcsIGFyZ3M/OiBhbnkpOiB2b2lkIHtcbiAgICBjb25zdCBsb2dGbjogRnVuY3Rpb24gPSAoY29uc29sZSlbdHlwZV0gfHwgY29uc29sZS5sb2cgfHwgbm9vcDtcbiAgICBsb2dGbi5hcHBseShjb25zb2xlLCBbYXJnc10pO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
const noop = () => undefined;
|
|
4
|
+
export class Logger {
|
|
5
|
+
info;
|
|
6
|
+
warn;
|
|
7
|
+
error;
|
|
8
|
+
}
|
|
9
|
+
export class LoggerService {
|
|
10
|
+
info;
|
|
11
|
+
warn;
|
|
12
|
+
error;
|
|
13
|
+
invokeConsoleMethod(type, args) { }
|
|
14
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: LoggerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
15
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: LoggerService, providedIn: 'root' });
|
|
16
|
+
}
|
|
17
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: LoggerService, decorators: [{
|
|
18
|
+
type: Injectable,
|
|
19
|
+
args: [{
|
|
20
|
+
providedIn: 'root'
|
|
21
|
+
}]
|
|
22
|
+
}] });
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nZ2VyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wYXltZW50LWxpYi9zcmMvbGliL3NlcnZpY2VzL3NoYXJlZC9sb2dnZXIvbG9nZ2VyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFFM0MsTUFBTSxJQUFJLEdBQUcsR0FBUSxFQUFFLENBQUMsU0FBUyxDQUFDO0FBRWxDLE1BQU0sT0FBZ0IsTUFBTTtJQUUxQixJQUFJLENBQU07SUFDVixJQUFJLENBQU07SUFDVixLQUFLLENBQU07Q0FDWjtBQUtELE1BQU0sT0FBTyxhQUFhO0lBRXhCLElBQUksQ0FBTTtJQUNWLElBQUksQ0FBTTtJQUNWLEtBQUssQ0FBTTtJQUVYLG1CQUFtQixDQUFDLElBQVksRUFBRSxJQUFVLElBQVMsQ0FBQzt1R0FOM0MsYUFBYTsyR0FBYixhQUFhLGNBRlosTUFBTTs7MkZBRVAsYUFBYTtrQkFIekIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmNvbnN0IG5vb3AgPSAoKTogYW55ID0+IHVuZGVmaW5lZDtcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIExvZ2dlciB7XG5cbiAgaW5mbzogYW55O1xuICB3YXJuOiBhbnk7XG4gIGVycm9yOiBhbnk7XG59XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIExvZ2dlclNlcnZpY2UgaW1wbGVtZW50cyBMb2dnZXIge1xuXG4gIGluZm86IGFueTtcbiAgd2FybjogYW55O1xuICBlcnJvcjogYW55O1xuXG4gIGludm9rZUNvbnNvbGVNZXRob2QodHlwZTogc3RyaW5nLCBhcmdzPzogYW55KTogdm9pZCB7fVxufVxuIl19
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { PaymentLibService } from '../../payment-lib.service';
|
|
3
|
+
import { HttpClient } from '@angular/common/http';
|
|
4
|
+
import { ErrorHandlerService } from '../shared/error-handler.service';
|
|
5
|
+
import { catchError } from 'rxjs/operators';
|
|
6
|
+
import { LoggerService } from '../shared/logger/logger.service';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "@angular/common/http";
|
|
9
|
+
import * as i2 from "../shared/logger/logger.service";
|
|
10
|
+
import * as i3 from "../shared/error-handler.service";
|
|
11
|
+
import * as i4 from "../../payment-lib.service";
|
|
12
|
+
export class StatusHistoryService {
|
|
13
|
+
http;
|
|
14
|
+
logger;
|
|
15
|
+
errorHandlerService;
|
|
16
|
+
paymentLibService;
|
|
17
|
+
constructor(http, logger, errorHandlerService, paymentLibService) {
|
|
18
|
+
this.http = http;
|
|
19
|
+
this.logger = logger;
|
|
20
|
+
this.errorHandlerService = errorHandlerService;
|
|
21
|
+
this.paymentLibService = paymentLibService;
|
|
22
|
+
}
|
|
23
|
+
getPaymentStatusesByReference(paymentReference, paymentMethod) {
|
|
24
|
+
this.logger.info('Status-history-service getPaymentStatusesByReference for: ', paymentReference);
|
|
25
|
+
return this.http.get(paymentMethod === 'card' || paymentMethod === 'cash' || paymentMethod === 'cheque' || paymentMethod === 'postal order' ?
|
|
26
|
+
`${this.paymentLibService.API_ROOT}/card-payments/${paymentReference}/statuses` :
|
|
27
|
+
`${this.paymentLibService.API_ROOT}/credit-account-payments/${paymentReference}/statuses`, {
|
|
28
|
+
withCredentials: true
|
|
29
|
+
})
|
|
30
|
+
.pipe(catchError(this.errorHandlerService.handleError));
|
|
31
|
+
}
|
|
32
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: StatusHistoryService, deps: [{ token: i1.HttpClient }, { token: i2.LoggerService }, { token: i3.ErrorHandlerService }, { token: i4.PaymentLibService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
33
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: StatusHistoryService, providedIn: 'root' });
|
|
34
|
+
}
|
|
35
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: StatusHistoryService, decorators: [{
|
|
36
|
+
type: Injectable,
|
|
37
|
+
args: [{
|
|
38
|
+
providedIn: 'root'
|
|
39
|
+
}]
|
|
40
|
+
}], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.LoggerService }, { type: i3.ErrorHandlerService }, { type: i4.PaymentLibService }]; } });
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdHVzLWhpc3Rvcnkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3BheW1lbnQtbGliL3NyYy9saWIvc2VydmljZXMvc3RhdHVzLWhpc3Rvcnkvc3RhdHVzLWhpc3Rvcnkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzlELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUdsRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN0RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDNUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOzs7Ozs7QUFNaEUsTUFBTSxPQUFPLG9CQUFvQjtJQUVYO0lBQ0E7SUFDQTtJQUNBO0lBSHBCLFlBQW9CLElBQWdCLEVBQ2hCLE1BQXFCLEVBQ3JCLG1CQUF3QyxFQUN4QyxpQkFBb0M7UUFIcEMsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUNoQixXQUFNLEdBQU4sTUFBTSxDQUFlO1FBQ3JCLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDeEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtJQUFJLENBQUM7SUFFN0QsNkJBQTZCLENBQUMsZ0JBQXdCLEVBQUUsYUFBcUI7UUFDM0UsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsNERBQTRELEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztRQUVqRyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFtQixhQUFhLEtBQUssTUFBTSxJQUFJLGFBQWEsS0FBSyxNQUFNLElBQUksYUFBYSxLQUFLLFFBQVEsSUFBSSxhQUFhLEtBQUssY0FBYyxDQUFDLENBQUM7WUFDekosR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsUUFBUSxrQkFBa0IsZ0JBQWdCLFdBQVcsQ0FBQyxDQUFDO1lBQ2pGLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFFBQVEsNEJBQTRCLGdCQUFnQixXQUFXLEVBQUU7WUFDN0YsZUFBZSxFQUFFLElBQUk7U0FDdEIsQ0FBQzthQUNELElBQUksQ0FDSCxVQUFVLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFdBQVcsQ0FBQyxDQUNqRCxDQUFDO0lBQ04sQ0FBQzt1R0FsQlUsb0JBQW9COzJHQUFwQixvQkFBb0IsY0FGbkIsTUFBTTs7MkZBRVAsb0JBQW9CO2tCQUhoQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFBheW1lbnRMaWJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vcGF5bWVudC1saWIuc2VydmljZSc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSVN0YXR1c0hpc3RvcmllcyB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvSVN0YXR1c0hpc3Rvcmllcyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcy9pbnRlcm5hbC9PYnNlcnZhYmxlJztcbmltcG9ydCB7IEVycm9ySGFuZGxlclNlcnZpY2UgfSBmcm9tICcuLi9zaGFyZWQvZXJyb3ItaGFuZGxlci5zZXJ2aWNlJztcbmltcG9ydCB7IGNhdGNoRXJyb3IgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBMb2dnZXJTZXJ2aWNlIH0gZnJvbSAnLi4vc2hhcmVkL2xvZ2dlci9sb2dnZXIuc2VydmljZSc7XG5cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgU3RhdHVzSGlzdG9yeVNlcnZpY2Uge1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cDogSHR0cENsaWVudCxcbiAgICAgICAgICAgICAgcHJpdmF0ZSBsb2dnZXI6IExvZ2dlclNlcnZpY2UsXG4gICAgICAgICAgICAgIHByaXZhdGUgZXJyb3JIYW5kbGVyU2VydmljZTogRXJyb3JIYW5kbGVyU2VydmljZSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSBwYXltZW50TGliU2VydmljZTogUGF5bWVudExpYlNlcnZpY2UpIHsgfVxuXG4gIGdldFBheW1lbnRTdGF0dXNlc0J5UmVmZXJlbmNlKHBheW1lbnRSZWZlcmVuY2U6IHN0cmluZywgcGF5bWVudE1ldGhvZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxJU3RhdHVzSGlzdG9yaWVzPiB7XG4gICAgdGhpcy5sb2dnZXIuaW5mbygnU3RhdHVzLWhpc3Rvcnktc2VydmljZSBnZXRQYXltZW50U3RhdHVzZXNCeVJlZmVyZW5jZSBmb3I6ICcsIHBheW1lbnRSZWZlcmVuY2UpO1xuXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8SVN0YXR1c0hpc3Rvcmllcz4ocGF5bWVudE1ldGhvZCA9PT0gJ2NhcmQnIHx8IHBheW1lbnRNZXRob2QgPT09ICdjYXNoJyB8fCBwYXltZW50TWV0aG9kID09PSAnY2hlcXVlJyB8fCBwYXltZW50TWV0aG9kID09PSAncG9zdGFsIG9yZGVyJyA/XG4gICAgICAgICAgYCR7dGhpcy5wYXltZW50TGliU2VydmljZS5BUElfUk9PVH0vY2FyZC1wYXltZW50cy8ke3BheW1lbnRSZWZlcmVuY2V9L3N0YXR1c2VzYCA6XG4gICAgICAgICAgYCR7dGhpcy5wYXltZW50TGliU2VydmljZS5BUElfUk9PVH0vY3JlZGl0LWFjY291bnQtcGF5bWVudHMvJHtwYXltZW50UmVmZXJlbmNlfS9zdGF0dXNlc2AsIHtcbiAgICAgICAgd2l0aENyZWRlbnRpYWxzOiB0cnVlXG4gICAgICB9KVxuICAgICAgLnBpcGUoXG4gICAgICAgIGNhdGNoRXJyb3IodGhpcy5lcnJvckhhbmRsZXJTZXJ2aWNlLmhhbmRsZUVycm9yKVxuICAgICAgKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import * as FileSaver from 'file-saver';
|
|
3
|
+
import * as XLSX from 'xlsx';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
const EXCEL_TYPE = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';
|
|
6
|
+
const EXCEL_EXTENSION = '.xlsx';
|
|
7
|
+
export class XlFileService {
|
|
8
|
+
constructor() { }
|
|
9
|
+
exportAsExcelFile(json, excelFileName) {
|
|
10
|
+
let worksheet;
|
|
11
|
+
let workbook;
|
|
12
|
+
if (excelFileName.match('Data_Loss') !== null) {
|
|
13
|
+
worksheet = XLSX.utils.json_to_sheet(json, { header: ['loss_resp', 'payment_asset_dcn', 'env_ref', 'env_item', 'resp_service_id', 'resp_service_name', 'date_banked', 'bgc_batch', 'payment_method', 'amount'] });
|
|
14
|
+
worksheet = this.setDataLossReportHeaders(worksheet);
|
|
15
|
+
worksheet = this.autoFitColumns(worksheet, json);
|
|
16
|
+
}
|
|
17
|
+
else if (excelFileName.match('Unprocessed') !== null) {
|
|
18
|
+
worksheet = XLSX.utils.json_to_sheet(json, { header: ['resp_service_id', 'resp_service_name', 'exception_ref', 'ccd_ref', 'date_banked', 'bgc_batch', 'payment_asset_dcn', 'env_ref', 'env_item', 'payment_method', 'amount'] });
|
|
19
|
+
worksheet = this.setUnprocessedReportHeaders(worksheet);
|
|
20
|
+
worksheet = this.autoFitColumns(worksheet, json);
|
|
21
|
+
}
|
|
22
|
+
else if (excelFileName.match('Processed_Unallocated') !== null) {
|
|
23
|
+
worksheet = XLSX.utils.json_to_sheet(json, { header: ['resp_service_id', 'resp_service_name', 'allocation_status', 'receiving_office', 'allocation_reason', 'ccd_exception_reference', 'ccd_case_reference', 'payment_asset_dcn', 'env_ref', 'env_item', 'date_banked', 'bgc_batch', 'payment_method', 'amount'] });
|
|
24
|
+
worksheet = this.setProcessedUnallocatedReportHeaders(worksheet);
|
|
25
|
+
worksheet = this.autoFitColumns(worksheet, json);
|
|
26
|
+
}
|
|
27
|
+
else if (excelFileName.match('Payment failure') !== null) {
|
|
28
|
+
worksheet = XLSX.utils.json_to_sheet(json, { header: ['payment_reference', 'ccd_reference', 'document_control_number', 'org_id', 'service_name', 'failure_reference', 'failure_reason', 'disputed_amount', 'event_name', 'event_date', 'representment_status', 'representment_date', 'refund_reference', 'refund_amount', 'refund_date'] });
|
|
29
|
+
worksheet = this.setPaymentFailureReportHeaders(worksheet);
|
|
30
|
+
worksheet = this.autoFitColumns(worksheet, json);
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
worksheet = XLSX.utils.json_to_sheet(json, { header: ['resp_service_id', 'resp_service_name', 'surplus_shortfall', 'balance', 'payment_amount', 'ccd_case_reference', 'ccd_exception_reference', 'processed_date', 'reason', 'explanation', 'user_name'] });
|
|
34
|
+
worksheet = this.setShortFallReportHeaders(worksheet);
|
|
35
|
+
worksheet = this.autoFitColumns(worksheet, json);
|
|
36
|
+
}
|
|
37
|
+
workbook = { Sheets: { 'data': worksheet }, SheetNames: ['data'] };
|
|
38
|
+
const excelBuffer = XLSX.write(workbook, { bookType: 'xlsx', type: 'array' });
|
|
39
|
+
this.saveAsExcelFile(excelBuffer, excelFileName);
|
|
40
|
+
}
|
|
41
|
+
autoFitColumns(worksheet, json) {
|
|
42
|
+
let objectMaxLength = [];
|
|
43
|
+
let ColWidth = [];
|
|
44
|
+
let obj = Object;
|
|
45
|
+
for (let i = 0; i < json.length; i++) {
|
|
46
|
+
let value = obj.values(json[i]);
|
|
47
|
+
let key = obj.keys(json[i]);
|
|
48
|
+
for (let j = 0; j < value.length; j++) {
|
|
49
|
+
if (value[j] === null) {
|
|
50
|
+
value[j] = '';
|
|
51
|
+
}
|
|
52
|
+
objectMaxLength[j] =
|
|
53
|
+
key[j].length >= value[j].length
|
|
54
|
+
? key[j].length + 2
|
|
55
|
+
: value[j].length + 1;
|
|
56
|
+
if (value[j].length === undefined) {
|
|
57
|
+
objectMaxLength[j] = key[j].length + 2;
|
|
58
|
+
}
|
|
59
|
+
ColWidth.push({ 'width': +objectMaxLength[j] });
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
worksheet['!cols'] = ColWidth;
|
|
63
|
+
return worksheet;
|
|
64
|
+
}
|
|
65
|
+
setDataLossReportHeaders(worksheet) {
|
|
66
|
+
worksheet.A1.v = "Loss_Resp";
|
|
67
|
+
worksheet.B1.v = "Payment_Asset_DCN";
|
|
68
|
+
worksheet.C1.v = "Envelope_Ref";
|
|
69
|
+
worksheet.D1.v = "Envelope_Item";
|
|
70
|
+
worksheet.E1.v = "Resp_Service ID";
|
|
71
|
+
worksheet.F1.v = "Resp_Service Name";
|
|
72
|
+
worksheet.G1.v = "Date_Banked";
|
|
73
|
+
worksheet.H1.v = "BGC_Batch";
|
|
74
|
+
worksheet.I1.v = "Payment_Method";
|
|
75
|
+
worksheet.J1.v = "Amount";
|
|
76
|
+
return worksheet;
|
|
77
|
+
}
|
|
78
|
+
setUnprocessedReportHeaders(worksheet) {
|
|
79
|
+
worksheet.A1.v = "Resp_Service ID";
|
|
80
|
+
worksheet.B1.v = "Resp_Service Name";
|
|
81
|
+
worksheet.C1.v = "Exception_Ref";
|
|
82
|
+
worksheet.D1.v = "CCD_Ref";
|
|
83
|
+
worksheet.E1.v = "Date_Banked";
|
|
84
|
+
worksheet.F1.v = "BGC_Batch";
|
|
85
|
+
worksheet.G1.v = "Payment_Asset_DCN";
|
|
86
|
+
worksheet.H1.v = "Envelope_Ref";
|
|
87
|
+
worksheet.I1.v = "Envelope_Item";
|
|
88
|
+
worksheet.J1.v = "Payment_Method";
|
|
89
|
+
worksheet.K1.v = "Amount";
|
|
90
|
+
return worksheet;
|
|
91
|
+
}
|
|
92
|
+
setProcessedUnallocatedReportHeaders(worksheet) {
|
|
93
|
+
worksheet.A1.v = "Resp_Service ID";
|
|
94
|
+
worksheet.B1.v = "Resp_Service Name";
|
|
95
|
+
worksheet.C1.v = "Allocation_Status";
|
|
96
|
+
worksheet.D1.v = "Receiving_Office";
|
|
97
|
+
worksheet.E1.v = "Allocation_Reason";
|
|
98
|
+
worksheet.F1.v = "CCD_Exception_Ref";
|
|
99
|
+
worksheet.G1.v = "CCD_Case_Ref";
|
|
100
|
+
worksheet.H1.v = "Payment_Asset_DCN";
|
|
101
|
+
worksheet.I1.v = "Envelope_Ref";
|
|
102
|
+
worksheet.J1.v = "Envelope_Item";
|
|
103
|
+
worksheet.K1.v = "Date_Banked";
|
|
104
|
+
worksheet.L1.v = "BGC_Batch";
|
|
105
|
+
worksheet.M1.v = "Payment_Method";
|
|
106
|
+
worksheet.N1.v = "Amount";
|
|
107
|
+
return worksheet;
|
|
108
|
+
}
|
|
109
|
+
setPaymentFailureReportHeaders(worksheet) {
|
|
110
|
+
worksheet.A1.v = "Payment reference";
|
|
111
|
+
worksheet.B1.v = "CCD reference";
|
|
112
|
+
worksheet.C1.v = "Document Control Number";
|
|
113
|
+
worksheet.D1.v = "OrgID";
|
|
114
|
+
worksheet.E1.v = "Service name";
|
|
115
|
+
worksheet.F1.v = "Failure reference";
|
|
116
|
+
worksheet.G1.v = "Failure reason";
|
|
117
|
+
worksheet.H1.v = "Disputed amount";
|
|
118
|
+
worksheet.I1.v = "Event name";
|
|
119
|
+
worksheet.J1.v = "Event date";
|
|
120
|
+
worksheet.K1.v = "Representment status";
|
|
121
|
+
worksheet.L1.v = "Representment date";
|
|
122
|
+
worksheet.M1.v = "Refund reference";
|
|
123
|
+
worksheet.N1.v = "Refund amount";
|
|
124
|
+
worksheet.O1.v = "Refund date";
|
|
125
|
+
return worksheet;
|
|
126
|
+
}
|
|
127
|
+
setShortFallReportHeaders(worksheet) {
|
|
128
|
+
worksheet.A1.v = "Resp_Service ID";
|
|
129
|
+
worksheet.B1.v = "Resp_Service Name";
|
|
130
|
+
worksheet.C1.v = "Over Payment_Under Payment";
|
|
131
|
+
worksheet.D1.v = "Balance";
|
|
132
|
+
worksheet.E1.v = "Payment_Amount";
|
|
133
|
+
worksheet.F1.v = "CCD_Case_Ref";
|
|
134
|
+
worksheet.G1.v = "Exception_Ref";
|
|
135
|
+
worksheet.H1.v = "Processed_Date";
|
|
136
|
+
worksheet.I1.v = "Reason";
|
|
137
|
+
worksheet.J1.v = "Explanation";
|
|
138
|
+
worksheet.K1.v = "Updated Name";
|
|
139
|
+
return worksheet;
|
|
140
|
+
}
|
|
141
|
+
saveAsExcelFile(buffer, fileName) {
|
|
142
|
+
const data = new Blob([buffer], {
|
|
143
|
+
type: EXCEL_TYPE
|
|
144
|
+
});
|
|
145
|
+
FileSaver.saveAs(data, fileName + EXCEL_EXTENSION);
|
|
146
|
+
}
|
|
147
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: XlFileService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
148
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: XlFileService });
|
|
149
|
+
}
|
|
150
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: XlFileService, decorators: [{
|
|
151
|
+
type: Injectable
|
|
152
|
+
}], ctorParameters: function () { return []; } });
|
|
153
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieGwtZmlsZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcGF5bWVudC1saWIvc3JjL2xpYi9zZXJ2aWNlcy94bC1maWxlL3hsLWZpbGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sS0FBSyxTQUFTLE1BQU0sWUFBWSxDQUFDO0FBQ3hDLE9BQU8sS0FBSyxJQUFJLE1BQU0sTUFBTSxDQUFDOztBQUk3QixNQUFNLFVBQVUsR0FBRyxpRkFBaUYsQ0FBQztBQUNyRyxNQUFNLGVBQWUsR0FBRyxPQUFPLENBQUM7QUFHaEMsTUFBTSxPQUFPLGFBQWE7SUFFeEIsZ0JBQWdCLENBQUM7SUFFVixpQkFBaUIsQ0FBQyxJQUFXLEVBQUUsYUFBcUI7UUFDekQsSUFBSSxTQUF5QixDQUFDO1FBQzlCLElBQUksUUFBdUIsQ0FBQztRQUM1QixJQUFHLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLEtBQUksSUFBSSxFQUFDO1lBQzNDLFNBQVMsR0FBSSxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUMsRUFBQyxNQUFNLEVBQUMsQ0FBQyxXQUFXLEVBQUMsbUJBQW1CLEVBQUMsU0FBUyxFQUFDLFVBQVUsRUFBQyxpQkFBaUIsRUFBQyxtQkFBbUIsRUFBQyxhQUFhLEVBQUMsV0FBVyxFQUFDLGdCQUFnQixFQUFDLFFBQVEsQ0FBQyxFQUFDLENBQUMsQ0FBQztZQUN0TSxTQUFTLEdBQUksSUFBSSxDQUFDLHdCQUF3QixDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3RELFNBQVMsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsRUFBQyxJQUFJLENBQUMsQ0FBQztTQUMvQzthQUFNLElBQUcsYUFBYSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsS0FBSSxJQUFJLEVBQUM7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QUFDO0lBQ08seUJBQXlCLENBQUUsU0FBeUI7UUFDMUQsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsaUJBQWlCLENBQUM7UUFDbkMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsbUJBQW1CLENBQUM7UUFDckMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsNEJBQTRCLENBQUM7UUFDOUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsU0FBUyxDQUFDO1FBQzNCLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLGdCQUFnQixDQUFDO1FBQ2xDLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLGNBQWMsQ0FBQztRQUNoQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxlQUFlLENBQUM7UUFDakMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsZ0JBQWdCLENBQUM7UUFDbEMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsUUFBUSxDQUFDO1FBQzFCLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLGFBQWEsQ0FBQztRQUMvQixTQUFTLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxjQUFjLENBQUM7UUFDaEMsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztJQUVPLGVBQWUsQ0FBQyxNQUFXLEVBQUUsUUFBZ0I7UUFDakQsTUFBTSxJQUFJLEdBQVMsSUFBSSxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUNwQyxJQUFJLEVBQUUsVUFBVTtTQUNqQixDQUFDLENBQUM7UUFDSCxTQUFTLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxRQUFRLEdBQUcsZUFBZSxDQUFDLENBQUM7SUFDckQsQ0FBQzt1R0FqSlUsYUFBYTsyR0FBYixhQUFhOzsyRkFBYixhQUFhO2tCQUR6QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0ICogYXMgRmlsZVNhdmVyIGZyb20gJ2ZpbGUtc2F2ZXInO1xuaW1wb3J0ICogYXMgWExTWCBmcm9tICd4bHN4JztcbmltcG9ydCAqIGFzIFhMU1hTdHlsZSBmcm9tICd4bHN4LXN0eWxlJztcblxuXG5jb25zdCBFWENFTF9UWVBFID0gJ2FwcGxpY2F0aW9uL3ZuZC5vcGVueG1sZm9ybWF0cy1vZmZpY2Vkb2N1bWVudC5zcHJlYWRzaGVldG1sLnNoZWV0O2NoYXJzZXQ9VVRGLTgnO1xuY29uc3QgRVhDRUxfRVhURU5TSU9OID0gJy54bHN4JztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFhsRmlsZVNlcnZpY2Uge1xuXG4gIGNvbnN0cnVjdG9yKCkgeyB9XG5cbiAgcHVibGljIGV4cG9ydEFzRXhjZWxGaWxlKGpzb246IGFueVtdLCBleGNlbEZpbGVOYW1lOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBsZXQgd29ya3NoZWV0OiBYTFNYLldvcmtTaGVldDsgXG4gICAgbGV0IHdvcmtib29rOiBYTFNYLldvcmtCb29rOyBcbiAgICBpZihleGNlbEZpbGVOYW1lLm1hdGNoKCdEYXRhX0xvc3MnKSE9PSBudWxsKXtcbiAgICAgd29ya3NoZWV0ID0gIFhMU1gudXRpbHMuanNvbl90b19zaGVldChqc29uLHtoZWFkZXI6Wydsb3NzX3Jlc3AnLCdwYXltZW50X2Fzc2V0X2RjbicsJ2Vudl9yZWYnLCdlbnZfaXRlbScsJ3Jlc3Bfc2VydmljZV9pZCcsJ3Jlc3Bfc2VydmljZV9uYW1lJywnZGF0ZV9iYW5rZWQnLCdiZ2NfYmF0Y2gnLCdwYXltZW50X21ldGhvZCcsJ2Ftb3VudCddfSk7XG4gICAgIHdvcmtzaGVldCA9ICB0aGlzLnNldERhdGFMb3NzUmVwb3J0SGVhZGVycyh3b3Jrc2hlZXQpO1xuICAgICB3b3Jrc2hlZXQgPSB0aGlzLmF1dG9GaXRDb2x1bW5zKHdvcmtzaGVldCxqc29uKTtcbiAgICAgfSBlbHNlIGlmKGV4Y2VsRmlsZU5hbWUubWF0Y2goJ1VucHJvY2Vzc2VkJykhPT0gbnVsbCl7XG4gICAgIHdvcmtzaGVldCA9ICBYTFNYLnV0aWxzLmpzb25fdG9fc2hlZXQoanNvbix7aGVhZGVyOlsncmVzcF9zZXJ2aWNlX2lkJywncmVzcF9zZXJ2aWNlX25hbWUnLCdleGNlcHRpb25fcmVmJywnY2NkX3JlZicsJ2RhdGVfYmFua2VkJywnYmdjX2JhdGNoJywncGF5bWVudF9hc3NldF9kY24nLCdlbnZfcmVmJywnZW52X2l0ZW0nLCdwYXltZW50X21ldGhvZCcsJ2Ftb3VudCddfSk7XG4gICAgIHdvcmtzaGVldCA9ICB0aGlzLnNldFVucHJvY2Vzc2VkUmVwb3J0SGVhZGVycyh3b3Jrc2hlZXQpO1xuICAgICB3b3Jrc2hlZXQgPSB0aGlzLmF1dG9GaXRDb2x1bW5zKHdvcmtzaGVldCxqc29uKTtcbiAgICB9IGVsc2UgaWYoZXhjZWxGaWxlTmFtZS5tYXRjaCgnUHJvY2Vzc2VkX1VuYWxsb2NhdGVkJykhPT0gbnVsbCl7XG4gICAgICB3b3Jrc2hlZXQgPSAgWExTWC51dGlscy5qc29uX3RvX3NoZWV0KGpzb24se2hlYWRlcjpbJ3Jlc3Bfc2VydmljZV9pZCcsJ3Jlc3Bfc2VydmljZV9uYW1lJywnYWxsb2NhdGlvbl9zdGF0dXMnLCdyZWNlaXZpbmdfb2ZmaWNlJywnYWxsb2NhdGlvbl9yZWFzb24nLCdjY2RfZXhjZXB0aW9uX3JlZmVyZW5jZScsJ2NjZF9jYXNlX3JlZmVyZW5jZScsJ3BheW1lbnRfYXNzZXRfZGNuJywnZW52X3JlZicsJ2Vudl9pdGVtJywnZGF0ZV9iYW5rZWQnLCdiZ2NfYmF0Y2gnLCdwYXltZW50X21ldGhvZCcsJ2Ftb3VudCddfSk7XG4gICAgICB3b3Jrc2hlZXQgPSAgdGhpcy5zZXRQcm9jZXNzZWRVbmFsbG9jYXRlZFJlcG9ydEhlYWRlcnMod29ya3NoZWV0KTtcbiAgICAgIHdvcmtzaGVldCA9IHRoaXMuYXV0b0ZpdENvbHVtbnMod29ya3NoZWV0LGpzb24pO1xuICAgIH0gZWxzZSBpZihleGNlbEZpbGVOYW1lLm1hdGNoKCdQYXltZW50IGZhaWx1cmUnKSE9PSBudWxsKXtcbiAgICAgIHdvcmtzaGVldCA9ICBYTFNYLnV0aWxzLmpzb25fdG9fc2hlZXQoanNvbix7aGVhZGVyOlsncGF5bWVudF9yZWZlcmVuY2UnLCdjY2RfcmVmZXJlbmNlJywnZG9jdW1lbnRfY29udHJvbF9udW1iZXInLCdvcmdfaWQnLCdzZXJ2aWNlX25hbWUnLCdmYWlsdXJlX3JlZmVyZW5jZScsJ2ZhaWx1cmVfcmVhc29uJywnZGlzcHV0ZWRfYW1vdW50JywnZXZlbnRfbmFtZScsJ2V2ZW50X2RhdGUnLCdyZXByZXNlbnRtZW50X3N0YXR1cycsJ3JlcHJlc2VudG1lbnRfZGF0ZScsJ3JlZnVuZF9yZWZlcmVuY2UnLCdyZWZ1bmRfYW1vdW50JywncmVmdW5kX2RhdGUnXX0pO1xuICAgICAgd29ya3NoZWV0ID0gIHRoaXMuc2V0UGF5bWVudEZhaWx1cmVSZXBvcnRIZWFkZXJzKHdvcmtzaGVldCk7XG4gICAgICB3b3Jrc2hlZXQgPSB0aGlzLmF1dG9GaXRDb2x1bW5zKHdvcmtzaGVldCxqc29uKTtcbiAgICB9IGVsc2Uge1xuICAgICAgd29ya3NoZWV0ID0gIFhMU1gudXRpbHMuanNvbl90b19zaGVldChqc29uLHtoZWFkZXI6WydyZXNwX3NlcnZpY2VfaWQnLCdyZXNwX3NlcnZpY2VfbmFtZScsJ3N1cnBsdXNfc2hvcnRmYWxsJywnYmFsYW5jZScsJ3BheW1lbnRfYW1vdW50JywnY2NkX2Nhc2VfcmVmZXJlbmNlJywgJ2NjZF9leGNlcHRpb25fcmVmZXJlbmNlJywgJ3Byb2Nlc3NlZF9kYXRlJywgJ3JlYXNvbicsICdleHBsYW5hdGlvbicsICd1c2VyX25hbWUnXX0pO1xuICAgICAgd29ya3NoZWV0ID0gIHRoaXMuc2V0U2hvcnRGYWxsUmVwb3J0SGVhZGVycyh3b3Jrc2hlZXQpO1xuICAgICAgd29ya3NoZWV0ID0gdGhpcy5hdXRvRml0Q29sdW1ucyh3b3Jrc2hlZXQsanNvbik7XG4gICAgfVxuICAgIHdvcmtib29rID0geyBTaGVldHM6IHsgJ2RhdGEnOiB3b3Jrc2hlZXQgfSwgU2hlZXROYW1lczogWydkYXRhJ10gfTtcbiAgICBjb25zdCBleGNlbEJ1ZmZlcjogYW55ID0gWExTWC53cml0ZSh3b3JrYm9vaywgeyBib29rVHlwZTogJ3hsc3gnLCB0eXBlOiAnYXJyYXknIH0pO1xuICAgIHRoaXMuc2F2ZUFzRXhjZWxGaWxlKGV4Y2VsQnVmZmVyLCBleGNlbEZpbGVOYW1lKTtcbiAgfVxuXG5cbnByaXZhdGUgYXV0b0ZpdENvbHVtbnMgKHdvcmtzaGVldDogWExTWC5Xb3JrU2hlZXQsanNvbjphbnkpIDogWExTWC5Xb3JrU2hlZXQge1xuICBsZXQgb2JqZWN0TWF4TGVuZ3RoID0gW107IFxuICBsZXQgQ29sV2lkdGggPSBbXTtcbiAgbGV0IG9iaiA9IDxhbnk+T2JqZWN0O1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwganNvbi5sZW5ndGg7IGkrKykge1xuICAgICAgbGV0IHZhbHVlID0gb2JqLnZhbHVlcyhqc29uW2ldKTtcbiAgICAgIGxldCBrZXkgPSBvYmoua2V5cyhqc29uW2ldKTtcbiAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgdmFsdWUubGVuZ3RoOyBqKyspIHtcbiAgICAgICAgaWYodmFsdWVbal0gPT09IG51bGwpe1xuICAgICAgICAgIHZhbHVlW2pdID0gJyc7XG4gICAgICAgIH1cbiAgICAgICAgb2JqZWN0TWF4TGVuZ3RoW2pdID1cbiAgICAgICAgICBrZXlbal0ubGVuZ3RoID49IHZhbHVlW2pdLmxlbmd0aFxuICAgICAgICAgICAgPyBrZXlbal0ubGVuZ3RoKzJcbiAgICAgICAgICAgIDogdmFsdWVbal0ubGVuZ3RoKzE7XG4gICAgICAgICAgICBpZiggdmFsdWVbal0ubGVuZ3RoID09PSB1bmRlZmluZWQpe1xuICAgICAgICAgICAgICBvYmplY3RNYXhMZW5ndGhbal0gPSAga2V5W2pdLmxlbmd0aCsyO1xuICAgICAgICAgICAgfVxuICAgICAgQ29sV2lkdGgucHVzaCh7J3dpZHRoJzogK29iamVjdE1heExlbmd0aFtqXX0pO1xuICAgICAgfVxuICAgIH1cbiAgICB3b3Jrc2hlZXRbJyFjb2xzJ10gPSBDb2xXaWR0aDtcbiAgICByZXR1cm4gd29ya3NoZWV0O1xufVxuXG5cbnByaXZhdGUgc2V0RGF0YUxvc3NSZXBvcnRIZWFkZXJzICh3b3Jrc2hlZXQ6IFhMU1guV29ya1NoZWV0KTogWExTWC5Xb3JrU2hlZXQge1xuICB3b3Jrc2hlZXQuQTEudiA9IFwiTG9zc19SZXNwXCI7XG4gIHdvcmtzaGVldC5CMS52ID0gXCJQYXltZW50X0Fzc2V0X0RDTlwiO1xuICB3b3Jrc2hlZXQuQzEudiA9IFwiRW52ZWxvcGVfUmVmXCI7XG4gIHdvcmtzaGVldC5EMS52ID0gXCJFbnZlbG9wZV9JdGVtXCI7XG4gIHdvcmtzaGVldC5FMS52ID0gXCJSZXNwX1NlcnZpY2UgSURcIjtcbiAgd29ya3NoZWV0LkYxLnYgPSBcIlJlc3BfU2VydmljZSBOYW1lXCI7XG4gIHdvcmtzaGVldC5HMS52ID0gXCJEYXRlX0JhbmtlZFwiO1xuICB3b3Jrc2hlZXQuSDEudiA9IFwiQkdDX0JhdGNoXCI7XG4gIHdvcmtzaGVldC5JMS52ID0gXCJQYXltZW50X01ldGhvZFwiO1xuICB3b3Jrc2hlZXQuSjEudiA9IFwiQW1vdW50XCI7XG4gIHJldHVybiB3b3Jrc2hlZXQ7XG59XG5cbnByaXZhdGUgc2V0VW5wcm9jZXNzZWRSZXBvcnRIZWFkZXJzICh3b3Jrc2hlZXQ6IFhMU1guV29ya1NoZWV0KTogWExTWC5Xb3JrU2hlZXQge1xuICB3b3Jrc2hlZXQuQTEudiA9IFwiUmVzcF9TZXJ2aWNlIElEXCI7XG4gIHdvcmtzaGVldC5CMS52ID0gXCJSZXNwX1NlcnZpY2UgTmFtZVwiO1xuICB3b3Jrc2hlZXQuQzEudiA9IFwiRXhjZXB0aW9uX1JlZlwiO1xuICB3b3Jrc2hlZXQuRDEudiA9IFwiQ0NEX1JlZlwiO1xuICB3b3Jrc2hlZXQuRTEudiA9IFwiRGF0ZV9CYW5rZWRcIjtcbiAgd29ya3NoZWV0LkYxLnYgPSBcIkJHQ19CYXRjaFwiO1xuICB3b3Jrc2hlZXQuRzEudiA9IFwiUGF5bWVudF9Bc3NldF9EQ05cIjtcbiAgd29ya3NoZWV0LkgxLnYgPSBcIkVudmVsb3BlX1JlZlwiO1xuICB3b3Jrc2hlZXQuSTEudiA9IFwiRW52ZWxvcGVfSXRlbVwiO1xuICB3b3Jrc2hlZXQuSjEudiA9IFwiUGF5bWVudF9NZXRob2RcIjtcbiAgd29ya3NoZWV0LksxLnYgPSBcIkFtb3VudFwiO1xuICByZXR1cm4gd29ya3NoZWV0O1xufVxuXG5wcml2YXRlIHNldFByb2Nlc3NlZFVuYWxsb2NhdGVkUmVwb3J0SGVhZGVycyAod29ya3NoZWV0OiBYTFNYLldvcmtTaGVldCk6IFhMU1guV29ya1NoZWV0IHtcbiAgd29ya3NoZWV0LkExLnYgPSBcIlJlc3BfU2VydmljZSBJRFwiO1xuICB3b3Jrc2hlZXQuQjEudiA9IFwiUmVzcF9TZXJ2aWNlIE5hbWVcIjtcbiAgd29ya3NoZWV0LkMxLnYgPSBcIkFsbG9jYXRpb25fU3RhdHVzXCI7XG4gIHdvcmtzaGVldC5EMS52ID0gXCJSZWNlaXZpbmdfT2ZmaWNlXCI7XG4gIHdvcmtzaGVldC5FMS52ID0gXCJBbGxvY2F0aW9uX1JlYXNvblwiO1xuICB3b3Jrc2hlZXQuRjEudiA9IFwiQ0NEX0V4Y2VwdGlvbl9SZWZcIjtcbiAgd29ya3NoZWV0LkcxLnYgPSBcIkNDRF9DYXNlX1JlZlwiO1xuICB3b3Jrc2hlZXQuSDEudiA9IFwiUGF5bWVudF9Bc3NldF9EQ05cIjtcbiAgd29ya3NoZWV0LkkxLnYgPSBcIkVudmVsb3BlX1JlZlwiO1xuICB3b3Jrc2hlZXQuSjEudiA9IFwiRW52ZWxvcGVfSXRlbVwiO1xuICB3b3Jrc2hlZXQuSzEudiA9IFwiRGF0ZV9CYW5rZWRcIjtcbiAgd29ya3NoZWV0LkwxLnYgPSBcIkJHQ19CYXRjaFwiO1xuICB3b3Jrc2hlZXQuTTEudiA9IFwiUGF5bWVudF9NZXRob2RcIjtcbiAgd29ya3NoZWV0Lk4xLnYgPSBcIkFtb3VudFwiO1xuICByZXR1cm4gd29ya3NoZWV0O1xufVxuXG5wcml2YXRlIHNldFBheW1lbnRGYWlsdXJlUmVwb3J0SGVhZGVycyAod29ya3NoZWV0OiBYTFNYLldvcmtTaGVldCk6IFhMU1guV29ya1NoZWV0IHtcbiAgd29ya3NoZWV0LkExLnYgPSBcIlBheW1lbnQgcmVmZXJlbmNlXCI7XG4gIHdvcmtzaGVldC5CMS52ID0gXCJDQ0QgcmVmZXJlbmNlXCI7XG4gIHdvcmtzaGVldC5DMS52ID0gXCJEb2N1bWVudCBDb250cm9sIE51bWJlclwiO1xuICB3b3Jrc2hlZXQuRDEudiA9IFwiT3JnSURcIjtcbiAgd29ya3NoZWV0LkUxLnYgPSBcIlNlcnZpY2UgbmFtZVwiO1xuICB3b3Jrc2hlZXQuRjEudiA9IFwiRmFpbHVyZSByZWZlcmVuY2VcIjtcbiAgd29ya3NoZWV0LkcxLnYgPSBcIkZhaWx1cmUgcmVhc29uXCI7XG4gIHdvcmtzaGVldC5IMS52ID0gXCJEaXNwdXRlZCBhbW91bnRcIjtcbiAgd29ya3NoZWV0LkkxLnYgPSBcIkV2ZW50IG5hbWVcIjtcbiAgd29ya3NoZWV0LkoxLnYgPSBcIkV2ZW50IGRhdGVcIjtcbiAgd29ya3NoZWV0LksxLnYgPSBcIlJlcHJlc2VudG1lbnQgc3RhdHVzXCI7XG4gIHdvcmtzaGVldC5MMS52ID0gXCJSZXByZXNlbnRtZW50IGRhdGVcIjtcbiAgd29ya3NoZWV0Lk0xLnYgPSBcIlJlZnVuZCByZWZlcmVuY2VcIjtcbiAgd29ya3NoZWV0Lk4xLnYgPSBcIlJlZnVuZCBhbW91bnRcIjtcbiAgd29ya3NoZWV0Lk8xLnYgPSBcIlJlZnVuZCBkYXRlXCI7XG4gIHJldHVybiB3b3Jrc2hlZXQ7XG59XG5wcml2YXRlIHNldFNob3J0RmFsbFJlcG9ydEhlYWRlcnMgKHdvcmtzaGVldDogWExTWC5Xb3JrU2hlZXQpOiBYTFNYLldvcmtTaGVldCB7XG4gIHdvcmtzaGVldC5BMS52ID0gXCJSZXNwX1NlcnZpY2UgSURcIjtcbiAgd29ya3NoZWV0LkIxLnYgPSBcIlJlc3BfU2VydmljZSBOYW1lXCI7XG4gIHdvcmtzaGVldC5DMS52ID0gXCJPdmVyIFBheW1lbnRfVW5kZXIgUGF5bWVudFwiO1xuICB3b3Jrc2hlZXQuRDEudiA9IFwiQmFsYW5jZVwiO1xuICB3b3Jrc2hlZXQuRTEudiA9IFwiUGF5bWVudF9BbW91bnRcIjtcbiAgd29ya3NoZWV0LkYxLnYgPSBcIkNDRF9DYXNlX1JlZlwiO1xuICB3b3Jrc2hlZXQuRzEudiA9IFwiRXhjZXB0aW9uX1JlZlwiO1xuICB3b3Jrc2hlZXQuSDEudiA9IFwiUHJvY2Vzc2VkX0RhdGVcIjtcbiAgd29ya3NoZWV0LkkxLnYgPSBcIlJlYXNvblwiO1xuICB3b3Jrc2hlZXQuSjEudiA9IFwiRXhwbGFuYXRpb25cIjtcbiAgd29ya3NoZWV0LksxLnYgPSBcIlVwZGF0ZWQgTmFtZVwiO1xuICByZXR1cm4gd29ya3NoZWV0O1xufVxuXG5wcml2YXRlIHNhdmVBc0V4Y2VsRmlsZShidWZmZXI6IGFueSwgZmlsZU5hbWU6IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IGRhdGE6IEJsb2IgPSBuZXcgQmxvYihbYnVmZmVyXSwge1xuICAgICAgdHlwZTogRVhDRUxfVFlQRVxuICAgIH0pO1xuICAgIEZpbGVTYXZlci5zYXZlQXMoZGF0YSwgZmlsZU5hbWUgKyBFWENFTF9FWFRFTlNJT04pO1xuICB9XG59XG4iXX0=
|