@xsolla/payment-client-core 0.2.21 → 0.2.22
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/{esm2020 → esm2022}/lib/core/combined-payment-methods/combined-payment-methods.service.mjs +5 -5
- package/{esm2020 → esm2022}/lib/core/countries-api/countries-api.service.mjs +5 -5
- package/{esm2020 → esm2022}/lib/core/country/country.service.mjs +5 -5
- package/{esm2020 → esm2022}/lib/core/credit-card/credit-card.service.mjs +4 -4
- package/esm2022/lib/core/device-finger-print/device-finger-print.service.mjs +67 -0
- package/{esm2020 → esm2022}/lib/core/edit-saved-methods/edit-saved-methods.service.mjs +5 -5
- package/esm2022/lib/core/encrypt-credit-card/encrypt-credit-card.service.mjs +73 -0
- package/esm2022/lib/core/errors-mapping/xps-response-errors-mapping.service.mjs +52 -0
- package/esm2022/lib/core/exceptions-handling/elk/elk-logger.service.mjs +120 -0
- package/esm2022/lib/core/exceptions-handling/errors/http-error.class.mjs +40 -0
- package/esm2022/lib/core/exceptions-handling/errors/tagged-error.class.mjs +16 -0
- package/{esm2020 → esm2022}/lib/core/exceptions-handling/http-interceptor/http-exceptions.interceptor.mjs +5 -5
- package/esm2022/lib/core/http/secure-api/secure-api.service.mjs +55 -0
- package/{esm2020 → esm2022}/lib/core/legal/disclaimer.service.mjs +4 -4
- package/{esm2020 → esm2022}/lib/core/legal/legal.service.mjs +5 -5
- package/esm2022/lib/core/legal/refund-policy.service.mjs +30 -0
- package/esm2022/lib/core/legal/secure-connection.service.mjs +31 -0
- package/{esm2020 → esm2022}/lib/core/payment/actions/check-status/check-status.action.class.mjs +4 -4
- package/esm2022/lib/core/payment/actions/next-action.service.mjs +61 -0
- package/esm2022/lib/core/payment/actions/redirect/redirect.action.class.mjs +60 -0
- package/{esm2020 → esm2022}/lib/core/payment/actions/show-errors/show-errors.action.class.mjs +4 -4
- package/{esm2020 → esm2022}/lib/core/payment/actions/show-fields/show-fields.action.class.mjs +4 -4
- package/{esm2020 → esm2022}/lib/core/payment/actions/show-mobile-payment-screen/show-mobile-payment-screen.action.class.mjs +4 -4
- package/{esm2020 → esm2022}/lib/core/payment/actions/show-qr-code/show-qr-code.action.class.mjs +4 -4
- package/{esm2020 → esm2022}/lib/core/payment/actions/special-button/special-button.action.class.mjs +4 -4
- package/esm2022/lib/core/payment/actions/status-updated/status-updated.action.class.mjs +38 -0
- package/{esm2020 → esm2022}/lib/core/payment/actions/three-ds/three-ds.action.class.mjs +4 -4
- package/esm2022/lib/core/payment/config/config.service.mjs +37 -0
- package/{esm2020 → esm2022}/lib/core/payment/credit-card-state/credit-card-state.service.mjs +4 -4
- package/esm2022/lib/core/payment/finance-details/finance-details.service.mjs +38 -0
- package/{esm2020 → esm2022}/lib/core/payment/finance-details/status/status-finance-details-adapter.service.mjs +5 -5
- package/esm2022/lib/core/payment/finance-details/summary/summary-finance-details-adapter.service.mjs +264 -0
- package/esm2022/lib/core/payment/form/controls/control-config.service.mjs +46 -0
- package/{esm2020 → esm2022}/lib/core/payment/form/converters/birth-date/birth-date.converter.mjs +5 -5
- package/{esm2020 → esm2022}/lib/core/payment/form/converters/card-month/card-month.converter.mjs +5 -5
- package/{esm2020 → esm2022}/lib/core/payment/form/converters/card-number/card-number.converter.mjs +5 -5
- package/{esm2020 → esm2022}/lib/core/payment/form/converters/card-year/card-year.converter.mjs +5 -5
- package/{esm2020 → esm2022}/lib/core/payment/form/converters/cardholder-name/cardholder-name.converter.mjs +5 -5
- package/esm2022/lib/core/payment/form/converters/checkbox/checkbox.converter.mjs +33 -0
- package/esm2022/lib/core/payment/form/converters/converter.abstract.mjs +76 -0
- package/{esm2020 → esm2022}/lib/core/payment/form/converters/coupon/coupon.converter.mjs +5 -5
- package/{esm2020 → esm2022}/lib/core/payment/form/converters/cpf-name/cpf-name.converter.mjs +5 -5
- package/{esm2020 → esm2022}/lib/core/payment/form/converters/cpf-number/cpf-number.converter.mjs +5 -5
- package/esm2022/lib/core/payment/form/converters/cvv/cvv.converter.mjs +72 -0
- package/{esm2020 → esm2022}/lib/core/payment/form/converters/email/email.converter.mjs +5 -5
- package/{esm2020 → esm2022}/lib/core/payment/form/converters/phone.converter.mjs +5 -5
- package/{esm2020 → esm2022}/lib/core/payment/form/converters/pin/pin.converter.mjs +5 -5
- package/{esm2020 → esm2022}/lib/core/payment/form/converters/pricepoint/pricepoint.converter.mjs +5 -5
- package/{esm2020 → esm2022}/lib/core/payment/form/converters/radio-group/radio-group.converter.mjs +5 -5
- package/{esm2020 → esm2022}/lib/core/payment/form/converters/select/select.converter.mjs +5 -5
- package/esm2022/lib/core/payment/form/converters/street-number/street-number.converter.mjs +28 -0
- package/{esm2020 → esm2022}/lib/core/payment/form/converters/text/text.converter.mjs +5 -5
- package/esm2022/lib/core/payment/form/converters/zip/zip.converter.mjs +64 -0
- package/{esm2020 → esm2022}/lib/core/payment/form/form.module.mjs +33 -33
- package/esm2022/lib/core/payment/form/form.service.mjs +49 -0
- package/esm2022/lib/core/payment/form/validators/birth-date/birth-date.validator.mjs +37 -0
- package/esm2022/lib/core/payment/form/validators/card-month/card-month.validator.mjs +37 -0
- package/esm2022/lib/core/payment/form/validators/card-year/card-year.validator.mjs +34 -0
- package/esm2022/lib/core/payment/form/validators/convert.function.mjs +15 -0
- package/esm2022/lib/core/payment/form/validators/credit-card-length/credit-card-min-length.validator.mjs +32 -0
- package/esm2022/lib/core/payment/form/validators/luhn-formula-validator/luhn-formula.validator.mjs +40 -0
- package/{esm2020 → esm2022}/lib/core/payment/form/validators/validators.module.mjs +5 -5
- package/{esm2020 → esm2022}/lib/core/payment/form-messages/form-messages.service.mjs +5 -5
- package/esm2022/lib/core/payment/initialize/initialize.service.mjs +85 -0
- package/esm2022/lib/core/payment/initialize/response/initialize-response.class.mjs +43 -0
- package/esm2022/lib/core/payment/payment.service.mjs +369 -0
- package/{esm2020 → esm2022}/lib/core/payment/status/check-status/check-status.service.mjs +6 -6
- package/{esm2020 → esm2022}/lib/core/payment/status/check-status/request/check-status-request.class.mjs +1 -1
- package/esm2022/lib/core/payment/status/listen-status/listen-status.service.mjs +124 -0
- package/{esm2020 → esm2022}/lib/core/payment/status/save-payment-method-status/api/saved-payment-account-changes.service.mjs +5 -5
- package/esm2022/lib/core/payment/status/save-payment-method-status/save-payment-method-status.service.mjs +121 -0
- package/esm2022/lib/core/payment/status/status-request/request/status-request.class.mjs +22 -0
- package/esm2022/lib/core/payment/status/status-request/response/status-response.class.mjs +98 -0
- package/{esm2020 → esm2022}/lib/core/payment/status/status-request/status-request.service.mjs +6 -6
- package/esm2022/lib/core/payment/status/status.service.mjs +75 -0
- package/esm2022/lib/core/payment/status/websocket-status/websocket-status.service.mjs +76 -0
- package/esm2022/lib/core/payment/submit/request/submit-request.class.mjs +24 -0
- package/esm2022/lib/core/payment/submit/response/submit-response.class.mjs +31 -0
- package/esm2022/lib/core/payment/submit/submit.service.mjs +78 -0
- package/esm2022/lib/core/payment/sync/request/sync-request.class.mjs +31 -0
- package/esm2022/lib/core/payment/sync/response/sync-response.class.mjs +17 -0
- package/esm2022/lib/core/payment/sync/sync.service.mjs +157 -0
- package/esm2022/lib/core/payment/three-ds/api/notify-dfp-status/notify-dfp-status.service.mjs +49 -0
- package/esm2022/lib/core/payment/three-ds/api/status-three-ds/status-three-ds.service.mjs +60 -0
- package/esm2022/lib/core/payment/three-ds/dfp-collect/dfp-collect.service.mjs +105 -0
- package/esm2022/lib/core/payment/three-ds/reinsurance-check/reinsurance-check.service.mjs +41 -0
- package/esm2022/lib/core/payment/three-ds/three-ds-20/three-ds20.service.mjs +109 -0
- package/esm2022/lib/core/payment/three-ds/three-ds.service.mjs +42 -0
- package/esm2022/lib/core/payment/xps-api/xps-api.service.mjs +85 -0
- package/esm2022/lib/core/payment/xps-api-part-request.abstract.mjs +8 -0
- package/esm2022/lib/core/payment-methods/payment-methods.service.mjs +75 -0
- package/esm2022/lib/core/performance/performance.service.mjs +111 -0
- package/esm2022/lib/core/performance/xhr-action.service.mjs +114 -0
- package/esm2022/lib/core/saved-methods/saved-methods.service.mjs +54 -0
- package/esm2022/lib/core/sdk-payment-systems/apple-pay/apple-pay.service.mjs +268 -0
- package/esm2022/lib/core/sdk-payment-systems/google-pay/google-pay.service.mjs +177 -0
- package/esm2022/lib/core/sdk-payment-systems/payment-systems/payment-system-processing.service.mjs +84 -0
- package/esm2022/lib/core/session/session.service.mjs +57 -0
- package/esm2022/lib/core/settings/settings.service.mjs +92 -0
- package/esm2022/lib/core/url/url.service.mjs +34 -0
- package/esm2022/lib/core/user-agent/user-agent.service.mjs +211 -0
- package/esm2022/lib/core/user-balance/user-balance.service.mjs +53 -0
- package/esm2022/lib/core/user-behaviour-analytics/event-builder/event-builder.service.mjs +144 -0
- package/esm2022/lib/core/user-behaviour-analytics/user-behaviour-analytics.service.mjs +158 -0
- package/esm2022/lib/core/web-socket/centrifugo-web-socket.service.mjs +200 -0
- package/esm2022/lib/core/web-socket/nchan-web-socket.service.mjs +116 -0
- package/esm2022/lib/core/web-socket/web-socket.factory.mjs +28 -0
- package/esm2022/lib/core-library.module.mjs +92 -0
- package/{esm2020 → esm2022}/lib/core-library.service.mjs +5 -5
- package/{esm2020 → esm2022}/lib/shared/pipes/pipes.module.mjs +5 -5
- package/esm2022/lib/shared/pipes/unescape-html/unescape-html.pipe.mjs +23 -0
- package/{fesm2020 → fesm2022}/xsolla-payment-client-core.mjs +456 -455
- package/fesm2022/xsolla-payment-client-core.mjs.map +1 -0
- package/package.json +10 -16
- package/xsolla-payment-client-core-0.2.22.tgz +0 -0
- package/esm2020/lib/core/device-finger-print/device-finger-print.service.mjs +0 -67
- package/esm2020/lib/core/encrypt-credit-card/encrypt-credit-card.service.mjs +0 -72
- package/esm2020/lib/core/errors-mapping/xps-response-errors-mapping.service.mjs +0 -52
- package/esm2020/lib/core/exceptions-handling/elk/elk-logger.service.mjs +0 -120
- package/esm2020/lib/core/exceptions-handling/errors/http-error.class.mjs +0 -40
- package/esm2020/lib/core/exceptions-handling/errors/tagged-error.class.mjs +0 -16
- package/esm2020/lib/core/http/secure-api/secure-api.service.mjs +0 -55
- package/esm2020/lib/core/legal/refund-policy.service.mjs +0 -30
- package/esm2020/lib/core/legal/secure-connection.service.mjs +0 -31
- package/esm2020/lib/core/payment/actions/next-action.service.mjs +0 -61
- package/esm2020/lib/core/payment/actions/redirect/redirect.action.class.mjs +0 -60
- package/esm2020/lib/core/payment/actions/status-updated/status-updated.action.class.mjs +0 -38
- package/esm2020/lib/core/payment/config/config.service.mjs +0 -37
- package/esm2020/lib/core/payment/finance-details/finance-details.service.mjs +0 -38
- package/esm2020/lib/core/payment/finance-details/summary/summary-finance-details-adapter.service.mjs +0 -264
- package/esm2020/lib/core/payment/form/controls/control-config.service.mjs +0 -46
- package/esm2020/lib/core/payment/form/converters/checkbox/checkbox.converter.mjs +0 -33
- package/esm2020/lib/core/payment/form/converters/converter.abstract.mjs +0 -76
- package/esm2020/lib/core/payment/form/converters/cvv/cvv.converter.mjs +0 -72
- package/esm2020/lib/core/payment/form/converters/street-number/street-number.converter.mjs +0 -28
- package/esm2020/lib/core/payment/form/converters/zip/zip.converter.mjs +0 -64
- package/esm2020/lib/core/payment/form/form.service.mjs +0 -49
- package/esm2020/lib/core/payment/form/validators/birth-date/birth-date.validator.mjs +0 -37
- package/esm2020/lib/core/payment/form/validators/card-month/card-month.validator.mjs +0 -37
- package/esm2020/lib/core/payment/form/validators/card-year/card-year.validator.mjs +0 -34
- package/esm2020/lib/core/payment/form/validators/convert.function.mjs +0 -15
- package/esm2020/lib/core/payment/form/validators/credit-card-length/credit-card-min-length.validator.mjs +0 -32
- package/esm2020/lib/core/payment/form/validators/luhn-formula-validator/luhn-formula.validator.mjs +0 -40
- package/esm2020/lib/core/payment/initialize/initialize.service.mjs +0 -85
- package/esm2020/lib/core/payment/initialize/response/initialize-response.class.mjs +0 -43
- package/esm2020/lib/core/payment/payment.service.mjs +0 -369
- package/esm2020/lib/core/payment/status/listen-status/listen-status.service.mjs +0 -124
- package/esm2020/lib/core/payment/status/save-payment-method-status/save-payment-method-status.service.mjs +0 -121
- package/esm2020/lib/core/payment/status/status-request/request/status-request.class.mjs +0 -22
- package/esm2020/lib/core/payment/status/status-request/response/status-response.class.mjs +0 -98
- package/esm2020/lib/core/payment/status/status.service.mjs +0 -75
- package/esm2020/lib/core/payment/status/websocket-status/websocket-status.service.mjs +0 -76
- package/esm2020/lib/core/payment/submit/request/submit-request.class.mjs +0 -24
- package/esm2020/lib/core/payment/submit/response/submit-response.class.mjs +0 -31
- package/esm2020/lib/core/payment/submit/submit.service.mjs +0 -78
- package/esm2020/lib/core/payment/sync/request/sync-request.class.mjs +0 -31
- package/esm2020/lib/core/payment/sync/response/sync-response.class.mjs +0 -17
- package/esm2020/lib/core/payment/sync/sync.service.mjs +0 -157
- package/esm2020/lib/core/payment/three-ds/api/notify-dfp-status/notify-dfp-status.service.mjs +0 -49
- package/esm2020/lib/core/payment/three-ds/api/status-three-ds/status-three-ds.service.mjs +0 -60
- package/esm2020/lib/core/payment/three-ds/dfp-collect/dfp-collect.service.mjs +0 -105
- package/esm2020/lib/core/payment/three-ds/reinsurance-check/reinsurance-check.service.mjs +0 -41
- package/esm2020/lib/core/payment/three-ds/three-ds-20/three-ds20.service.mjs +0 -109
- package/esm2020/lib/core/payment/three-ds/three-ds.service.mjs +0 -42
- package/esm2020/lib/core/payment/xps-api/xps-api.service.mjs +0 -85
- package/esm2020/lib/core/payment/xps-api-part-request.abstract.mjs +0 -8
- package/esm2020/lib/core/payment-methods/payment-methods.service.mjs +0 -75
- package/esm2020/lib/core/performance/performance.service.mjs +0 -111
- package/esm2020/lib/core/performance/xhr-action.service.mjs +0 -114
- package/esm2020/lib/core/saved-methods/saved-methods.service.mjs +0 -54
- package/esm2020/lib/core/sdk-payment-systems/apple-pay/apple-pay.service.mjs +0 -268
- package/esm2020/lib/core/sdk-payment-systems/google-pay/google-pay.service.mjs +0 -177
- package/esm2020/lib/core/sdk-payment-systems/payment-systems/payment-system-processing.service.mjs +0 -84
- package/esm2020/lib/core/session/session.service.mjs +0 -57
- package/esm2020/lib/core/settings/settings.service.mjs +0 -92
- package/esm2020/lib/core/url/url.service.mjs +0 -34
- package/esm2020/lib/core/user-agent/user-agent.service.mjs +0 -211
- package/esm2020/lib/core/user-balance/user-balance.service.mjs +0 -53
- package/esm2020/lib/core/user-behaviour-analytics/event-builder/event-builder.service.mjs +0 -144
- package/esm2020/lib/core/user-behaviour-analytics/user-behaviour-analytics.service.mjs +0 -158
- package/esm2020/lib/core/web-socket/centrifugo-web-socket.service.mjs +0 -200
- package/esm2020/lib/core/web-socket/nchan-web-socket.service.mjs +0 -116
- package/esm2020/lib/core/web-socket/web-socket.factory.mjs +0 -28
- package/esm2020/lib/core-library.module.mjs +0 -92
- package/esm2020/lib/shared/pipes/unescape-html/unescape-html.pipe.mjs +0 -23
- package/fesm2015/xsolla-payment-client-core.mjs +0 -8138
- package/fesm2015/xsolla-payment-client-core.mjs.map +0 -1
- package/fesm2020/xsolla-payment-client-core.mjs.map +0 -1
- package/xsolla-payment-client-core-0.2.21.tgz +0 -0
- /package/{esm2020 → esm2022}/lib/core/agreementsGroup.const.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/boolean-number.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/combined-payment-methods/combined-payment-methods.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/countries-api/country-response.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/countries-api/country.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/country/country-iso-code.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/credit-card/credit-card-settings.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/credit-card/credit-card-types.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/credit-card/credit-card.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/credit-card/credit-cards-map.const.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/credit-card/default-mask.const.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/credit-card/four-block-mask.const.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/credit-card/ordered-cards-settings.const.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/credit-card/types/american-express.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/credit-card/types/aura.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/credit-card/types/china-union-pay.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/credit-card/types/dankort.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/credit-card/types/default-card.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/credit-card/types/diners-clubs.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/credit-card/types/discover.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/credit-card/types/elo.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/credit-card/types/hipercard.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/credit-card/types/jcb.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/credit-card/types/maestro.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/credit-card/types/mastercard.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/credit-card/types/mir.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/credit-card/types/naranja.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/credit-card/types/postepay.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/credit-card/types/visa.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/deep-readonly.type.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/device-finger-print/hash.type.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/edit-saved-methods/delete-method-response.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/encrypt-credit-card/encrypted-card.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/encrypt-credit-card/open-card.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/errors-mapping/card-number-sanction-error-codes.const.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/errors-mapping/field-special-errors-map.const.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/exceptions-handling/elk/additional-info.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/exceptions-handling/elk/error-without-meta-fields.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/exceptions-handling/elk/log-message.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/exceptions-handling/errors/api-error.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/exceptions-handling/errors/app-error.class.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/exceptions-handling/errors/elk-error-types.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/exceptions-handling/errors/encrypt-card-error.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/exceptions-handling/errors/response-error.class.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/exceptions-handling/errors/terminal-error.class.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/exceptions-handling/errors/token-error.class.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/exceptions-handling/errors/ws-error.class.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/exceptions-handling/http-interceptor/http-error-data.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/exceptions-handling/http-interceptor/http-error-response-data.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/extended-window.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/http/secure-api/api-url.const.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/http/secure-api/options.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/legal/legal.component.config.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/actions/action.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/actions/check-status/check-status.action.type.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/actions/next-action.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/actions/next-actions.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/actions/redirect/pay-station4-url.const.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/actions/redirect/ps4-pages/pages-payment-methods-id.const.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/actions/redirect/ps4-pages/pages-routes.const.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/actions/redirect/redirect.action.type.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/actions/show-errors/show-errors.action.type.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/actions/show-fields/show-fields.action.type.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/actions/show-mobile-payment-screen/show-mobile-payment-screen.action.type.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/actions/show-qr-code/show-qr-code.action.type.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/actions/special-button/special-button.action.type.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/actions/status-updated/status-updated.action.type.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/actions/three-ds/three-ds.action.type.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/checkout-item.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/credit-card-payment-methods-id.variable.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/credit-card-state/credit-card-state.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/emit-data.service.abstract.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/field-names.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/field.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/finance-details/cart-item.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/finance-details/cart-line.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/finance-details/cart-summary.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/finance-details/finance-details.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/finance-details/price.helpers.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/finance-details/price.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/finance-details/status/field-with-amount-and-currency.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/finance-details/status/fields-with-currency.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/finance-details/status/finance-info.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/finance-details/summary/default-image-patterns.const.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/finance-details/summary/sales-tax-details-key.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/finance-details/vat-details-key.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/form/common-control-config.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/form/control-status.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/form/controls/card-number/card-number-control.config.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/form/controls/checkbox/checkbox-control.config.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/form/controls/control-config.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/form/controls/control-type.type.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/form/controls/coupon/coupon-control.config.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/form/controls/phone-control.config.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/form/controls/radio-control/radio-control.config.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/form/controls/radio-control/radio-option.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/form/controls/search-select/search-select-option.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/form/controls/search-select/select-control.config.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/form/controls/search-select/select-option.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/form/controls/text-control.config.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/form/converters/converters-map.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/form/converters/converters-map.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/form/converters/cpf-name/cpf-name-regex.variable.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/form/converters/cvv/cvv-form-state.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/form/converters/street-number/street-number-from-state.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/form/field-form-states.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/form/field-status.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/form/form-fields-status.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/form/form-state.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/form/input-event.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/form/validators/async-validator-fn.type.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/form/validators/coupon/coupon-validator.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/form/validators/email/email-validator.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/form/validators/is-empty-input-value.function.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/form/validators/max-length-validator.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/form/validators/min-length-validator.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/form/validators/phone-validator.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/form/validators/required/required.validator.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/form/validators/restricted-value/restricted-value.validator.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/form/validators/validation-error.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/form/validators/validation-errors.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/form/validators/validator-fn.type.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/form-response.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/initialize/initialize-request-params.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/initialize/response/initialize-response.token.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/invoice.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/payment-config.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/payment-form.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/payment.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/status/check-status/request/check-status-request.token.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/status/check-status/response/check-status-response.class.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/status/check-status/response/check-status-response.token.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/status/finance-info-field.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/status/line-item.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/status/save-payment-method-status/api/saved-payment-account-changes.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/status/save-payment-method-status/api/saved-payment-account.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/status/save-payment-method-status/save-payment-method-status.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/status/status-finance-info.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/status/status-groups.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/status/status-order.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/status/status-request/request/status-request.token.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/status/status-request/required-status-search-params.const.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/status/status-request/response/status-response.token.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/status/status-request/status-request-params.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/status/status-request/status-search-param.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/status/status-request/status-search-params.map.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/status/status-settings.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/status/status-updated.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/status/status.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/status/status.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/status/title-class.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/status/web-socket-client-type.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/status/websocket-status/websocket-status.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/submit/request/submit-request.token.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/submit/response/is-submit-response.function.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/submit/response/submit-response.token.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/sync/field-async-validation.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/sync/field-sync-state.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/sync/request/sync-request.token.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/sync/response/sync-response.token.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/three-ds/api/notify-dfp-status/request/notify-dfp-status-request.class.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/three-ds/api/notify-dfp-status/request/notify-dfp-status-request.token.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/three-ds/api/status-three-ds/request/status-three-ds-request.class.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/three-ds/api/status-three-ds/request/status-three-ds-request.token.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/three-ds/api/status-three-ds/response/status-three-ds-response.class.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/three-ds/api/status-three-ds/response/status-three-ds-response.token.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/three-ds/api/status-three-ds/status-three-ds-response.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/three-ds/api/status-three-ds/status-types.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/three-ds/api/status-three-ds/three-ds-checkout-form.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/three-ds/reinsurance-check/timer.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/three-ds/three-ds-20/status-update.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/three-ds/three-ds-form.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/three-ds/three-ds-status-websocket-types.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/virtual-currency.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/xps-api-part.abstract.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/xps-checkout.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/xps-comand.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/xps-error.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/xps-finance.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/xps-message.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/xps-purchase.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/xps-request-params.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/xps-request.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/xps-response.error.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/xps-response.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment/xps-summary.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment-methods/payment-method-api.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment-methods/payment-method.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment-methods/payment-methods-api.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment-methods/payment-methods-request-params.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment-methods/payment-methods-response.class.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment-methods/payment-methods-response.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/payment-methods/payment-methods-response.token.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/performance/xhr-action.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/properties.type.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/saved-methods/saved-method-api.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/saved-methods/saved-method.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/saved-methods/saved-methods-request-params.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/saved-methods/saved-methods-response.class.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/saved-methods/saved-methods-response.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/saved-methods/saved-methods-response.token.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/sdk-payment-systems/apple-pay/apple-pay-integration.type.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/sdk-payment-systems/apple-pay/apple-pay-params.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/sdk-payment-systems/apple-pay/apple-pay.const.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/sdk-payment-systems/apple-pay/apple-pay.errors.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/sdk-payment-systems/apple-pay/checkout-params.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/sdk-payment-systems/google-pay/google-pay-button-color.type.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/sdk-payment-systems/google-pay/google-pay-checkout.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/sdk-payment-systems/google-pay/google-pay-init-params.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/sdk-payment-systems/google-pay/google-pay-library.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/sdk-payment-systems/sdk-payment-methods.const.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/sdk-payment-systems/sdk-payment-systems-initial-data.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/sdk-payment-systems/sdk-payment-systems.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/settings/auto-redirect-on-status.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/settings/balance.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/settings/bonus.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/settings/configuration.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/settings/empty-utils-response.error.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/settings/header-type.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/settings/offer.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/settings/project.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/settings/purchase.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/settings/settings-mode.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/settings/settings.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/settings/status-back-show.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/settings/tracking-info.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/settings/user.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/settings/utils-response.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/type-guards/is-null.function.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/type-guards/is-string.function.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/type-guards/is-undefined.function.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/url/search-params.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/user-agent/browserInfo.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/user-agent/browsers.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/user-agent/device.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/user-agent/os.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/user-agent/user-agent-data.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/user-balance/user-balance-api.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/user-balance/user-balance-request-params.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/user-balance/user-balance-response.class.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/user-balance/user-balance-response.token.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/user-behaviour-analytics/event-builder/event-parameter-types.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/user-behaviour-analytics/event-builder/invoice.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/user-behaviour-analytics/event-builder/purchase.type.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/user-behaviour-analytics/event-builder/user-behaviour-event.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/user-behaviour-analytics/one-time-analytics-events.const.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/user-behaviour-analytics/user-behaviour-analytics.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/user-behaviour-analytics/user-behaviour-event/user-behaviour-event-categories.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/user-behaviour-analytics/user-behaviour-event/user-behaviour-event-types.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/user-behaviour-analytics/user-behaviour-event-name.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/user-behaviour-analytics/user-session-options.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/web-socket/web-socket-client-type.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/web-socket/web-socket.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/window.token.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/core/xps-boolean.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/xsolla-payment-client-core.mjs +0 -0
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { firstValueFrom, skip } from 'rxjs';
|
|
3
|
+
import { requiredStatusSearchParams } from './status-request/required-status-search-params.const';
|
|
4
|
+
import { statusSearchParamsMap } from './status-request/status-search-params.map';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "../../url/url.service";
|
|
7
|
+
import * as i2 from "./status-request/status-request.service";
|
|
8
|
+
import * as i3 from "../finance-details/finance-details.service";
|
|
9
|
+
import * as i4 from "./listen-status/listen-status.service";
|
|
10
|
+
import * as i5 from "../actions/next-action.service";
|
|
11
|
+
import * as i6 from "./save-payment-method-status/save-payment-method-status.service";
|
|
12
|
+
import * as i7 from "../actions/status-updated/status-updated.action.class";
|
|
13
|
+
export class StatusService {
|
|
14
|
+
constructor(urlService, statusRequestService, financeDetailsService, listenStatusService, nextActionService, savePaymentMethodStatusService, statusUpdatedActionCreator) {
|
|
15
|
+
this.urlService = urlService;
|
|
16
|
+
this.statusRequestService = statusRequestService;
|
|
17
|
+
this.financeDetailsService = financeDetailsService;
|
|
18
|
+
this.listenStatusService = listenStatusService;
|
|
19
|
+
this.nextActionService = nextActionService;
|
|
20
|
+
this.savePaymentMethodStatusService = savePaymentMethodStatusService;
|
|
21
|
+
this.statusUpdatedActionCreator = statusUpdatedActionCreator;
|
|
22
|
+
}
|
|
23
|
+
async getStatus(params) {
|
|
24
|
+
const isSavePaymentMethodMode = params?.isSavePaymentAccount === "1" /* XpsBoolean.true */;
|
|
25
|
+
if (isSavePaymentMethodMode) {
|
|
26
|
+
return this.savePaymentMethodStatusService.getStatus(params);
|
|
27
|
+
}
|
|
28
|
+
this.statusRequestService.setRequestParams(params);
|
|
29
|
+
this.startWaitingStatusUpdates(params.invoice);
|
|
30
|
+
this.statusRequestService.request();
|
|
31
|
+
const statusResponse = await firstValueFrom(this.statusRequestService.response$);
|
|
32
|
+
this.financeDetailsService.emitWithStatus(statusResponse.status);
|
|
33
|
+
return statusResponse.status;
|
|
34
|
+
}
|
|
35
|
+
async getStatusWithUrlSearchParams(url) {
|
|
36
|
+
const searchParams = this.getRequestParamsFromUrl(url);
|
|
37
|
+
if (!searchParams) {
|
|
38
|
+
throw new Error('No required search params to get status');
|
|
39
|
+
}
|
|
40
|
+
return this.getStatus(searchParams);
|
|
41
|
+
}
|
|
42
|
+
listenFinalStatus(invoice) {
|
|
43
|
+
return this.listenStatusService.listen(invoice);
|
|
44
|
+
}
|
|
45
|
+
getRequestParamsFromUrl(url) {
|
|
46
|
+
const searchParams = this.urlService.getSearchParams(url ?? '');
|
|
47
|
+
const keys = new Set(Object.keys(searchParams));
|
|
48
|
+
if (requiredStatusSearchParams.some((requiredKey) => !keys.has(requiredKey))) {
|
|
49
|
+
return null;
|
|
50
|
+
}
|
|
51
|
+
const params = {};
|
|
52
|
+
statusSearchParamsMap.forEach((settings, key) => {
|
|
53
|
+
params[settings.key] = settings.converter(searchParams[key]);
|
|
54
|
+
});
|
|
55
|
+
return params;
|
|
56
|
+
}
|
|
57
|
+
startWaitingStatusUpdates(invoice) {
|
|
58
|
+
this.listenStatusService.listen(invoice);
|
|
59
|
+
this.listenStatusService.statusUpdated$
|
|
60
|
+
.pipe(skip(1))
|
|
61
|
+
.subscribe(({ statusResponse }) => {
|
|
62
|
+
this.financeDetailsService.emitWithStatus(statusResponse.status);
|
|
63
|
+
this.nextActionService.emitFlowUpdates(this.statusUpdatedActionCreator.getActionData({ statusResponse }));
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: StatusService, deps: [{ token: i1.UrlService }, { token: i2.StatusRequestService }, { token: i3.FinanceDetailsService }, { token: i4.ListenStatusService }, { token: i5.NextActionService }, { token: i6.SavePaymentMethodStatusService }, { token: i7.StatusUpdatedActionCreator }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
67
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: StatusService, providedIn: 'root' }); }
|
|
68
|
+
}
|
|
69
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: StatusService, decorators: [{
|
|
70
|
+
type: Injectable,
|
|
71
|
+
args: [{
|
|
72
|
+
providedIn: 'root',
|
|
73
|
+
}]
|
|
74
|
+
}], ctorParameters: () => [{ type: i1.UrlService }, { type: i2.StatusRequestService }, { type: i3.FinanceDetailsService }, { type: i4.ListenStatusService }, { type: i5.NextActionService }, { type: i6.SavePaymentMethodStatusService }, { type: i7.StatusUpdatedActionCreator }] });
|
|
75
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdHVzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS9wYXltZW50L3N0YXR1cy9zdGF0dXMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxjQUFjLEVBQWMsSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBUXhELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQ2xHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDOzs7Ozs7Ozs7QUFTbEYsTUFBTSxPQUFPLGFBQWE7SUFDeEIsWUFDbUIsVUFBc0IsRUFDdEIsb0JBQTBDLEVBQzFDLHFCQUE0QyxFQUM1QyxtQkFBd0MsRUFDeEMsaUJBQW9DLEVBQ3BDLDhCQUE4RCxFQUM5RCwwQkFBc0Q7UUFOdEQsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0Qix5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBQzFDLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBdUI7UUFDNUMsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUN4QyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLG1DQUE4QixHQUE5Qiw4QkFBOEIsQ0FBZ0M7UUFDOUQsK0JBQTBCLEdBQTFCLDBCQUEwQixDQUE0QjtJQUN0RSxDQUFDO0lBRUcsS0FBSyxDQUFDLFNBQVMsQ0FBQyxNQUEyQjtRQUNoRCxNQUFNLHVCQUF1QixHQUMzQixNQUFNLEVBQUUsb0JBQW9CLDhCQUFvQixDQUFDO1FBQ25ELElBQUksdUJBQXVCLEVBQUUsQ0FBQztZQUM1QixPQUFPLElBQUksQ0FBQyw4QkFBOEIsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDL0QsQ0FBQztRQUVELElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUVuRCxJQUFJLENBQUMseUJBQXlCLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRS9DLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUVwQyxNQUFNLGNBQWMsR0FBRyxNQUFNLGNBQWMsQ0FDekMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFNBQVMsQ0FDcEMsQ0FBQztRQUVGLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxjQUFjLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRWpFLE9BQU8sY0FBYyxDQUFDLE1BQU0sQ0FBQztJQUMvQixDQUFDO0lBRU0sS0FBSyxDQUFDLDRCQUE0QixDQUFDLEdBQVk7UUFDcEQsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLHVCQUF1QixDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRXZELElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUNsQixNQUFNLElBQUksS0FBSyxDQUFDLHlDQUF5QyxDQUFDLENBQUM7UUFDN0QsQ0FBQztRQUVELE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRU0saUJBQWlCLENBQUMsT0FBZTtRQUN0QyxPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVPLHVCQUF1QixDQUFDLEdBQVk7UUFDMUMsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsR0FBRyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ2hFLE1BQU0sSUFBSSxHQUFHLElBQUksR0FBRyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQztRQUVoRCxJQUNFLDBCQUEwQixDQUFDLElBQUksQ0FBQyxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDLEVBQ3hFLENBQUM7WUFDRCxPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7UUFFRCxNQUFNLE1BQU0sR0FBdUMsRUFBRSxDQUFDO1FBQ3RELHFCQUFxQixDQUFDLE9BQU8sQ0FBQyxDQUFDLFFBQVEsRUFBRSxHQUFHLEVBQUUsRUFBRTtZQUM5QyxNQUFNLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDL0QsQ0FBQyxDQUFDLENBQUM7UUFFSCxPQUFPLE1BQXdDLENBQUM7SUFDbEQsQ0FBQztJQUVPLHlCQUF5QixDQUFDLE9BQWU7UUFDL0MsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUV6QyxJQUFJLENBQUMsbUJBQW1CLENBQUMsY0FBYzthQUNwQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ2IsU0FBUyxDQUFDLENBQUMsRUFBRSxjQUFjLEVBQUUsRUFBRSxFQUFFO1lBQ2hDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxjQUFjLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBRWpFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxlQUFlLENBQ3BDLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxhQUFhLENBQUMsRUFBRSxjQUFjLEVBQUUsQ0FBQyxDQUNsRSxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDOzhHQTdFVSxhQUFhO2tIQUFiLGFBQWEsY0FGWixNQUFNOzsyRkFFUCxhQUFhO2tCQUh6QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGZpcnN0VmFsdWVGcm9tLCBPYnNlcnZhYmxlLCBza2lwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBTdGF0dXNSZXF1ZXN0U2VydmljZSB9IGZyb20gJy4vc3RhdHVzLXJlcXVlc3Qvc3RhdHVzLXJlcXVlc3Quc2VydmljZSc7XG5pbXBvcnQgeyBTdGF0dXNSZXF1ZXN0UGFyYW1zIH0gZnJvbSAnLi9zdGF0dXMtcmVxdWVzdC9zdGF0dXMtcmVxdWVzdC1wYXJhbXMuaW50ZXJmYWNlJztcbmltcG9ydCB7IExpc3RlblN0YXR1c1NlcnZpY2UgfSBmcm9tICcuL2xpc3Rlbi1zdGF0dXMvbGlzdGVuLXN0YXR1cy5zZXJ2aWNlJztcbmltcG9ydCB7IFN0YXR1cyB9IGZyb20gJy4vc3RhdHVzLmludGVyZmFjZSc7XG5pbXBvcnQgeyBOZXh0QWN0aW9uU2VydmljZSB9IGZyb20gJy4uL2FjdGlvbnMvbmV4dC1hY3Rpb24uc2VydmljZSc7XG5pbXBvcnQgeyBTdGF0dXNVcGRhdGVkQWN0aW9uQ3JlYXRvciB9IGZyb20gJy4uL2FjdGlvbnMvc3RhdHVzLXVwZGF0ZWQvc3RhdHVzLXVwZGF0ZWQuYWN0aW9uLmNsYXNzJztcbmltcG9ydCB7IFVybFNlcnZpY2UgfSBmcm9tICcuLi8uLi91cmwvdXJsLnNlcnZpY2UnO1xuaW1wb3J0IHsgcmVxdWlyZWRTdGF0dXNTZWFyY2hQYXJhbXMgfSBmcm9tICcuL3N0YXR1cy1yZXF1ZXN0L3JlcXVpcmVkLXN0YXR1cy1zZWFyY2gtcGFyYW1zLmNvbnN0JztcbmltcG9ydCB7IHN0YXR1c1NlYXJjaFBhcmFtc01hcCB9IGZyb20gJy4vc3RhdHVzLXJlcXVlc3Qvc3RhdHVzLXNlYXJjaC1wYXJhbXMubWFwJztcbmltcG9ydCB7IEZpbmFuY2VEZXRhaWxzU2VydmljZSB9IGZyb20gJy4uL2ZpbmFuY2UtZGV0YWlscy9maW5hbmNlLWRldGFpbHMuc2VydmljZSc7XG5pbXBvcnQgeyBTYXZlUGF5bWVudE1ldGhvZFN0YXR1c1NlcnZpY2UgfSBmcm9tICcuL3NhdmUtcGF5bWVudC1tZXRob2Qtc3RhdHVzL3NhdmUtcGF5bWVudC1tZXRob2Qtc3RhdHVzLnNlcnZpY2UnO1xuaW1wb3J0IHsgWHBzQm9vbGVhbiB9IGZyb20gJy4uLy4uL3hwcy1ib29sZWFuLmVudW0nO1xuaW1wb3J0IHsgU3RhdHVzU2V0dGluZ3MgfSBmcm9tICcuL3N0YXR1cy1zZXR0aW5ncy5pbnRlcmZhY2UnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgU3RhdHVzU2VydmljZSB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IHVybFNlcnZpY2U6IFVybFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBzdGF0dXNSZXF1ZXN0U2VydmljZTogU3RhdHVzUmVxdWVzdFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBmaW5hbmNlRGV0YWlsc1NlcnZpY2U6IEZpbmFuY2VEZXRhaWxzU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGxpc3RlblN0YXR1c1NlcnZpY2U6IExpc3RlblN0YXR1c1NlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBuZXh0QWN0aW9uU2VydmljZTogTmV4dEFjdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBzYXZlUGF5bWVudE1ldGhvZFN0YXR1c1NlcnZpY2U6IFNhdmVQYXltZW50TWV0aG9kU3RhdHVzU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHN0YXR1c1VwZGF0ZWRBY3Rpb25DcmVhdG9yOiBTdGF0dXNVcGRhdGVkQWN0aW9uQ3JlYXRvclxuICApIHt9XG5cbiAgcHVibGljIGFzeW5jIGdldFN0YXR1cyhwYXJhbXM6IFN0YXR1c1JlcXVlc3RQYXJhbXMpOiBQcm9taXNlPFN0YXR1cz4ge1xuICAgIGNvbnN0IGlzU2F2ZVBheW1lbnRNZXRob2RNb2RlID1cbiAgICAgIHBhcmFtcz8uaXNTYXZlUGF5bWVudEFjY291bnQgPT09IFhwc0Jvb2xlYW4udHJ1ZTtcbiAgICBpZiAoaXNTYXZlUGF5bWVudE1ldGhvZE1vZGUpIHtcbiAgICAgIHJldHVybiB0aGlzLnNhdmVQYXltZW50TWV0aG9kU3RhdHVzU2VydmljZS5nZXRTdGF0dXMocGFyYW1zKTtcbiAgICB9XG5cbiAgICB0aGlzLnN0YXR1c1JlcXVlc3RTZXJ2aWNlLnNldFJlcXVlc3RQYXJhbXMocGFyYW1zKTtcblxuICAgIHRoaXMuc3RhcnRXYWl0aW5nU3RhdHVzVXBkYXRlcyhwYXJhbXMuaW52b2ljZSk7XG5cbiAgICB0aGlzLnN0YXR1c1JlcXVlc3RTZXJ2aWNlLnJlcXVlc3QoKTtcblxuICAgIGNvbnN0IHN0YXR1c1Jlc3BvbnNlID0gYXdhaXQgZmlyc3RWYWx1ZUZyb20oXG4gICAgICB0aGlzLnN0YXR1c1JlcXVlc3RTZXJ2aWNlLnJlc3BvbnNlJFxuICAgICk7XG5cbiAgICB0aGlzLmZpbmFuY2VEZXRhaWxzU2VydmljZS5lbWl0V2l0aFN0YXR1cyhzdGF0dXNSZXNwb25zZS5zdGF0dXMpO1xuXG4gICAgcmV0dXJuIHN0YXR1c1Jlc3BvbnNlLnN0YXR1cztcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBnZXRTdGF0dXNXaXRoVXJsU2VhcmNoUGFyYW1zKHVybD86IHN0cmluZyk6IFByb21pc2U8U3RhdHVzPiB7XG4gICAgY29uc3Qgc2VhcmNoUGFyYW1zID0gdGhpcy5nZXRSZXF1ZXN0UGFyYW1zRnJvbVVybCh1cmwpO1xuXG4gICAgaWYgKCFzZWFyY2hQYXJhbXMpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignTm8gcmVxdWlyZWQgc2VhcmNoIHBhcmFtcyB0byBnZXQgc3RhdHVzJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuZ2V0U3RhdHVzKHNlYXJjaFBhcmFtcyk7XG4gIH1cblxuICBwdWJsaWMgbGlzdGVuRmluYWxTdGF0dXMoaW52b2ljZTogbnVtYmVyKTogT2JzZXJ2YWJsZTxTdGF0dXNTZXR0aW5ncz4ge1xuICAgIHJldHVybiB0aGlzLmxpc3RlblN0YXR1c1NlcnZpY2UubGlzdGVuKGludm9pY2UpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRSZXF1ZXN0UGFyYW1zRnJvbVVybCh1cmw/OiBzdHJpbmcpOiBTdGF0dXNSZXF1ZXN0UGFyYW1zIHwgbnVsbCB7XG4gICAgY29uc3Qgc2VhcmNoUGFyYW1zID0gdGhpcy51cmxTZXJ2aWNlLmdldFNlYXJjaFBhcmFtcyh1cmwgPz8gJycpO1xuICAgIGNvbnN0IGtleXMgPSBuZXcgU2V0KE9iamVjdC5rZXlzKHNlYXJjaFBhcmFtcykpO1xuXG4gICAgaWYgKFxuICAgICAgcmVxdWlyZWRTdGF0dXNTZWFyY2hQYXJhbXMuc29tZSgocmVxdWlyZWRLZXkpID0+ICFrZXlzLmhhcyhyZXF1aXJlZEtleSkpXG4gICAgKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBjb25zdCBwYXJhbXM6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIHwgbnVtYmVyIH0gPSB7fTtcbiAgICBzdGF0dXNTZWFyY2hQYXJhbXNNYXAuZm9yRWFjaCgoc2V0dGluZ3MsIGtleSkgPT4ge1xuICAgICAgcGFyYW1zW3NldHRpbmdzLmtleV0gPSBzZXR0aW5ncy5jb252ZXJ0ZXIoc2VhcmNoUGFyYW1zW2tleV0pO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIHBhcmFtcyBhcyB1bmtub3duIGFzIFN0YXR1c1JlcXVlc3RQYXJhbXM7XG4gIH1cblxuICBwcml2YXRlIHN0YXJ0V2FpdGluZ1N0YXR1c1VwZGF0ZXMoaW52b2ljZTogbnVtYmVyKTogdm9pZCB7XG4gICAgdGhpcy5saXN0ZW5TdGF0dXNTZXJ2aWNlLmxpc3RlbihpbnZvaWNlKTtcblxuICAgIHRoaXMubGlzdGVuU3RhdHVzU2VydmljZS5zdGF0dXNVcGRhdGVkJFxuICAgICAgLnBpcGUoc2tpcCgxKSlcbiAgICAgIC5zdWJzY3JpYmUoKHsgc3RhdHVzUmVzcG9uc2UgfSkgPT4ge1xuICAgICAgICB0aGlzLmZpbmFuY2VEZXRhaWxzU2VydmljZS5lbWl0V2l0aFN0YXR1cyhzdGF0dXNSZXNwb25zZS5zdGF0dXMpO1xuXG4gICAgICAgIHRoaXMubmV4dEFjdGlvblNlcnZpY2UuZW1pdEZsb3dVcGRhdGVzKFxuICAgICAgICAgIHRoaXMuc3RhdHVzVXBkYXRlZEFjdGlvbkNyZWF0b3IuZ2V0QWN0aW9uRGF0YSh7IHN0YXR1c1Jlc3BvbnNlIH0pXG4gICAgICAgICk7XG4gICAgICB9KTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { Subject } from 'rxjs';
|
|
3
|
+
import { WebSocketStatus } from './websocket-status.enum';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "../../../web-socket/web-socket.factory";
|
|
6
|
+
export class WebsocketStatusService {
|
|
7
|
+
get needCheckStatus$() {
|
|
8
|
+
return this.needCheckStatusSubject.asObservable();
|
|
9
|
+
}
|
|
10
|
+
get statusChanged$() {
|
|
11
|
+
return this.statusChangedSubject.asObservable();
|
|
12
|
+
}
|
|
13
|
+
constructor(webSocketFactory) {
|
|
14
|
+
this.webSocketFactory = webSocketFactory;
|
|
15
|
+
this.reinsuranceCheckStatus = {
|
|
16
|
+
timeoutId: null,
|
|
17
|
+
timeoutMs: 180000,
|
|
18
|
+
};
|
|
19
|
+
this.needCheckStatusSubject = new Subject();
|
|
20
|
+
this.statusChangedSubject = new Subject();
|
|
21
|
+
this.webSocketClient = null;
|
|
22
|
+
}
|
|
23
|
+
async checkStatusWithWebSocket(webSocketUrl, webSocketChannelName, webSocketClientType) {
|
|
24
|
+
this.webSocketClient = this.webSocketFactory.createWebSocketClient(webSocketUrl, webSocketClientType);
|
|
25
|
+
await this.webSocketClient.open(webSocketUrl, webSocketChannelName);
|
|
26
|
+
this.webSocketSubscription?.unsubscribe();
|
|
27
|
+
this.webSocketSubscription = this.webSocketClient.messages$.subscribe((message) => this.statusProcessing(message));
|
|
28
|
+
this.webSocketReconnectionSubscription =
|
|
29
|
+
this.webSocketClient.subscribeOnSuccessfulReconnection(() => {
|
|
30
|
+
this.needCheckStatusSubject.next();
|
|
31
|
+
});
|
|
32
|
+
this.needCheckStatusSubject.next();
|
|
33
|
+
this.startReinsuranceCheckTimeout();
|
|
34
|
+
}
|
|
35
|
+
closeWebSocket() {
|
|
36
|
+
this.removeSubscription();
|
|
37
|
+
this.webSocketClient?.close();
|
|
38
|
+
this.clearReinsuranceCheckTimeout();
|
|
39
|
+
}
|
|
40
|
+
startReinsuranceCheckTimeout() {
|
|
41
|
+
this.clearReinsuranceCheckTimeout();
|
|
42
|
+
this.reinsuranceCheckStatus.timeoutId = setTimeout(() => {
|
|
43
|
+
this.needCheckStatusSubject.next();
|
|
44
|
+
}, this.reinsuranceCheckStatus.timeoutMs);
|
|
45
|
+
}
|
|
46
|
+
clearReinsuranceCheckTimeout() {
|
|
47
|
+
if (this.reinsuranceCheckStatus.timeoutId) {
|
|
48
|
+
clearTimeout(this.reinsuranceCheckStatus.timeoutId);
|
|
49
|
+
this.reinsuranceCheckStatus.timeoutId = null;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
statusProcessing(message) {
|
|
53
|
+
if (message === WebSocketStatus.statusChanged) {
|
|
54
|
+
this.statusChangedSubject.next();
|
|
55
|
+
this.closeWebSocket();
|
|
56
|
+
this.clearReinsuranceCheckTimeout();
|
|
57
|
+
}
|
|
58
|
+
if (message === WebSocketStatus.troubledStatus) {
|
|
59
|
+
this.clearReinsuranceCheckTimeout();
|
|
60
|
+
this.closeWebSocket();
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
removeSubscription() {
|
|
64
|
+
this.webSocketSubscription?.unsubscribe();
|
|
65
|
+
this.webSocketReconnectionSubscription?.unsubscribe();
|
|
66
|
+
}
|
|
67
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: WebsocketStatusService, deps: [{ token: i1.WebSocketFactory }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
68
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: WebsocketStatusService, providedIn: 'root' }); }
|
|
69
|
+
}
|
|
70
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: WebsocketStatusService, decorators: [{
|
|
71
|
+
type: Injectable,
|
|
72
|
+
args: [{
|
|
73
|
+
providedIn: 'root',
|
|
74
|
+
}]
|
|
75
|
+
}], ctorParameters: () => [{ type: i1.WebSocketFactory }] });
|
|
76
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2Vic29ja2V0LXN0YXR1cy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcGF5bWVudC1jbGllbnQtY29yZS9zcmMvbGliL2NvcmUvcGF5bWVudC9zdGF0dXMvd2Vic29ja2V0LXN0YXR1cy93ZWJzb2NrZXQtc3RhdHVzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQWMsT0FBTyxFQUFnQixNQUFNLE1BQU0sQ0FBQztBQUl6RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0seUJBQXlCLENBQUM7OztBQUsxRCxNQUFNLE9BQU8sc0JBQXNCO0lBZ0JqQyxJQUFXLGdCQUFnQjtRQUN6QixPQUFPLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNwRCxDQUFDO0lBQ0QsSUFBVyxjQUFjO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLG9CQUFvQixDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ2xELENBQUM7SUFFRCxZQUFvQyxnQkFBa0M7UUFBbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQXBCckQsMkJBQXNCLEdBR25DO1lBQ0YsU0FBUyxFQUFFLElBQUk7WUFDZixTQUFTLEVBQUUsTUFBTTtTQUNsQixDQUFDO1FBRWUsMkJBQXNCLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUM3Qyx5QkFBb0IsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBRXBELG9CQUFlLEdBQTJCLElBQUksQ0FBQztJQVNrQixDQUFDO0lBRW5FLEtBQUssQ0FBQyx3QkFBd0IsQ0FDbkMsWUFBb0IsRUFDcEIsb0JBQTRCLEVBQzVCLG1CQUF3QztRQUV4QyxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxxQkFBcUIsQ0FDaEUsWUFBWSxFQUNaLG1CQUFtQixDQUNwQixDQUFDO1FBRUYsTUFBTSxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsb0JBQW9CLENBQUMsQ0FBQztRQUVwRSxJQUFJLENBQUMscUJBQXFCLEVBQUUsV0FBVyxFQUFFLENBQUM7UUFDMUMsSUFBSSxDQUFDLHFCQUFxQixHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FDbkUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsQ0FDNUMsQ0FBQztRQUVGLElBQUksQ0FBQyxpQ0FBaUM7WUFDcEMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxpQ0FBaUMsQ0FBQyxHQUFHLEVBQUU7Z0JBQzFELElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNyQyxDQUFDLENBQUMsQ0FBQztRQUNMLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNuQyxJQUFJLENBQUMsNEJBQTRCLEVBQUUsQ0FBQztJQUN0QyxDQUFDO0lBRU0sY0FBYztRQUNuQixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUMxQixJQUFJLENBQUMsZUFBZSxFQUFFLEtBQUssRUFBRSxDQUFDO1FBQzlCLElBQUksQ0FBQyw0QkFBNEIsRUFBRSxDQUFDO0lBQ3RDLENBQUM7SUFFTSw0QkFBNEI7UUFDakMsSUFBSSxDQUFDLDRCQUE0QixFQUFFLENBQUM7UUFDcEMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFNBQVMsR0FBRyxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ3RELElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNyQyxDQUFDLEVBQUUsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFTyw0QkFBNEI7UUFDbEMsSUFBSSxJQUFJLENBQUMsc0JBQXNCLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDMUMsWUFBWSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUNwRCxJQUFJLENBQUMsc0JBQXNCLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztRQUMvQyxDQUFDO0lBQ0gsQ0FBQztJQUVPLGdCQUFnQixDQUFDLE9BQWU7UUFDdEMsSUFBSSxPQUFPLEtBQUssZUFBZSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQzlDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNqQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDdEIsSUFBSSxDQUFDLDRCQUE0QixFQUFFLENBQUM7UUFDdEMsQ0FBQztRQUNELElBQUksT0FBTyxLQUFLLGVBQWUsQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUMvQyxJQUFJLENBQUMsNEJBQTRCLEVBQUUsQ0FBQztZQUNwQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDeEIsQ0FBQztJQUNILENBQUM7SUFFTyxrQkFBa0I7UUFDeEIsSUFBSSxDQUFDLHFCQUFxQixFQUFFLFdBQVcsRUFBRSxDQUFDO1FBQzFDLElBQUksQ0FBQyxpQ0FBaUMsRUFBRSxXQUFXLEVBQUUsQ0FBQztJQUN4RCxDQUFDOzhHQXJGVSxzQkFBc0I7a0hBQXRCLHNCQUFzQixjQUZyQixNQUFNOzsyRkFFUCxzQkFBc0I7a0JBSGxDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBXZWJTb2NrZXRGYWN0b3J5IH0gZnJvbSAnLi4vLi4vLi4vd2ViLXNvY2tldC93ZWItc29ja2V0LmZhY3RvcnknO1xuaW1wb3J0IHsgV2ViU29ja2V0Q2xpZW50IH0gZnJvbSAnLi4vLi4vLi4vd2ViLXNvY2tldC93ZWItc29ja2V0LmludGVyZmFjZSc7XG5pbXBvcnQgeyBXZWJTb2NrZXRDbGllbnRUeXBlIH0gZnJvbSAnLi4vLi4vLi4vd2ViLXNvY2tldC93ZWItc29ja2V0LWNsaWVudC10eXBlLmVudW0nO1xuaW1wb3J0IHsgV2ViU29ja2V0U3RhdHVzIH0gZnJvbSAnLi93ZWJzb2NrZXQtc3RhdHVzLmVudW0nO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgV2Vic29ja2V0U3RhdHVzU2VydmljZSB7XG4gIHByaXZhdGUgd2ViU29ja2V0U3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb24gfCB1bmRlZmluZWQ7XG4gIHByaXZhdGUgd2ViU29ja2V0UmVjb25uZWN0aW9uU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb24gfCB1bmRlZmluZWQ7XG4gIHByaXZhdGUgcmVhZG9ubHkgcmVpbnN1cmFuY2VDaGVja1N0YXR1czoge1xuICAgIHRpbWVvdXRJZDogUmV0dXJuVHlwZTx0eXBlb2Ygc2V0VGltZW91dD4gfCBudWxsO1xuICAgIHJlYWRvbmx5IHRpbWVvdXRNczogbnVtYmVyO1xuICB9ID0ge1xuICAgIHRpbWVvdXRJZDogbnVsbCxcbiAgICB0aW1lb3V0TXM6IDE4MDAwMCxcbiAgfTtcblxuICBwcml2YXRlIHJlYWRvbmx5IG5lZWRDaGVja1N0YXR1c1N1YmplY3QgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICBwcml2YXRlIHJlYWRvbmx5IHN0YXR1c0NoYW5nZWRTdWJqZWN0ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBwcml2YXRlIHdlYlNvY2tldENsaWVudDogV2ViU29ja2V0Q2xpZW50IHwgbnVsbCA9IG51bGw7XG5cbiAgcHVibGljIGdldCBuZWVkQ2hlY2tTdGF0dXMkKCk6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgIHJldHVybiB0aGlzLm5lZWRDaGVja1N0YXR1c1N1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG4gIH1cbiAgcHVibGljIGdldCBzdGF0dXNDaGFuZ2VkJCgpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy5zdGF0dXNDaGFuZ2VkU3ViamVjdC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHdlYlNvY2tldEZhY3Rvcnk6IFdlYlNvY2tldEZhY3RvcnkpIHt9XG5cbiAgcHVibGljIGFzeW5jIGNoZWNrU3RhdHVzV2l0aFdlYlNvY2tldChcbiAgICB3ZWJTb2NrZXRVcmw6IHN0cmluZyxcbiAgICB3ZWJTb2NrZXRDaGFubmVsTmFtZTogc3RyaW5nLFxuICAgIHdlYlNvY2tldENsaWVudFR5cGU6IFdlYlNvY2tldENsaWVudFR5cGVcbiAgKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdGhpcy53ZWJTb2NrZXRDbGllbnQgPSB0aGlzLndlYlNvY2tldEZhY3RvcnkuY3JlYXRlV2ViU29ja2V0Q2xpZW50KFxuICAgICAgd2ViU29ja2V0VXJsLFxuICAgICAgd2ViU29ja2V0Q2xpZW50VHlwZVxuICAgICk7XG5cbiAgICBhd2FpdCB0aGlzLndlYlNvY2tldENsaWVudC5vcGVuKHdlYlNvY2tldFVybCwgd2ViU29ja2V0Q2hhbm5lbE5hbWUpO1xuXG4gICAgdGhpcy53ZWJTb2NrZXRTdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gICAgdGhpcy53ZWJTb2NrZXRTdWJzY3JpcHRpb24gPSB0aGlzLndlYlNvY2tldENsaWVudC5tZXNzYWdlcyQuc3Vic2NyaWJlKFxuICAgICAgKG1lc3NhZ2UpID0+IHRoaXMuc3RhdHVzUHJvY2Vzc2luZyhtZXNzYWdlKVxuICAgICk7XG5cbiAgICB0aGlzLndlYlNvY2tldFJlY29ubmVjdGlvblN1YnNjcmlwdGlvbiA9XG4gICAgICB0aGlzLndlYlNvY2tldENsaWVudC5zdWJzY3JpYmVPblN1Y2Nlc3NmdWxSZWNvbm5lY3Rpb24oKCkgPT4ge1xuICAgICAgICB0aGlzLm5lZWRDaGVja1N0YXR1c1N1YmplY3QubmV4dCgpO1xuICAgICAgfSk7XG4gICAgdGhpcy5uZWVkQ2hlY2tTdGF0dXNTdWJqZWN0Lm5leHQoKTtcbiAgICB0aGlzLnN0YXJ0UmVpbnN1cmFuY2VDaGVja1RpbWVvdXQoKTtcbiAgfVxuXG4gIHB1YmxpYyBjbG9zZVdlYlNvY2tldCgpOiB2b2lkIHtcbiAgICB0aGlzLnJlbW92ZVN1YnNjcmlwdGlvbigpO1xuICAgIHRoaXMud2ViU29ja2V0Q2xpZW50Py5jbG9zZSgpO1xuICAgIHRoaXMuY2xlYXJSZWluc3VyYW5jZUNoZWNrVGltZW91dCgpO1xuICB9XG5cbiAgcHVibGljIHN0YXJ0UmVpbnN1cmFuY2VDaGVja1RpbWVvdXQoKTogdm9pZCB7XG4gICAgdGhpcy5jbGVhclJlaW5zdXJhbmNlQ2hlY2tUaW1lb3V0KCk7XG4gICAgdGhpcy5yZWluc3VyYW5jZUNoZWNrU3RhdHVzLnRpbWVvdXRJZCA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5uZWVkQ2hlY2tTdGF0dXNTdWJqZWN0Lm5leHQoKTtcbiAgICB9LCB0aGlzLnJlaW5zdXJhbmNlQ2hlY2tTdGF0dXMudGltZW91dE1zKTtcbiAgfVxuXG4gIHByaXZhdGUgY2xlYXJSZWluc3VyYW5jZUNoZWNrVGltZW91dCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5yZWluc3VyYW5jZUNoZWNrU3RhdHVzLnRpbWVvdXRJZCkge1xuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMucmVpbnN1cmFuY2VDaGVja1N0YXR1cy50aW1lb3V0SWQpO1xuICAgICAgdGhpcy5yZWluc3VyYW5jZUNoZWNrU3RhdHVzLnRpbWVvdXRJZCA9IG51bGw7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzdGF0dXNQcm9jZXNzaW5nKG1lc3NhZ2U6IHN0cmluZyk6IHZvaWQge1xuICAgIGlmIChtZXNzYWdlID09PSBXZWJTb2NrZXRTdGF0dXMuc3RhdHVzQ2hhbmdlZCkge1xuICAgICAgdGhpcy5zdGF0dXNDaGFuZ2VkU3ViamVjdC5uZXh0KCk7XG4gICAgICB0aGlzLmNsb3NlV2ViU29ja2V0KCk7XG4gICAgICB0aGlzLmNsZWFyUmVpbnN1cmFuY2VDaGVja1RpbWVvdXQoKTtcbiAgICB9XG4gICAgaWYgKG1lc3NhZ2UgPT09IFdlYlNvY2tldFN0YXR1cy50cm91YmxlZFN0YXR1cykge1xuICAgICAgdGhpcy5jbGVhclJlaW5zdXJhbmNlQ2hlY2tUaW1lb3V0KCk7XG4gICAgICB0aGlzLmNsb3NlV2ViU29ja2V0KCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSByZW1vdmVTdWJzY3JpcHRpb24oKTogdm9pZCB7XG4gICAgdGhpcy53ZWJTb2NrZXRTdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gICAgdGhpcy53ZWJTb2NrZXRSZWNvbm5lY3Rpb25TdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { XpsApiPartRequest } from '../../xps-api-part-request.abstract';
|
|
2
|
+
import { TokenError } from '../../../exceptions-handling/errors/token-error.class';
|
|
3
|
+
export class SubmitRequest extends XpsApiPartRequest {
|
|
4
|
+
constructor(parameters) {
|
|
5
|
+
super();
|
|
6
|
+
const { token, fields, form, dfpHash } = parameters;
|
|
7
|
+
if (token === null) {
|
|
8
|
+
throw new TokenError();
|
|
9
|
+
}
|
|
10
|
+
this.access_token = token;
|
|
11
|
+
if (dfpHash) {
|
|
12
|
+
this.xps_dfp_hash = dfpHash;
|
|
13
|
+
}
|
|
14
|
+
this.addXpsParameters(this.getFieldsValues(fields, form));
|
|
15
|
+
}
|
|
16
|
+
getFieldsValues(fields, form) {
|
|
17
|
+
return fields.reduce((xpsParams, field) => {
|
|
18
|
+
const formControl = form.get(field.name);
|
|
19
|
+
xpsParams[field.name] = formControl ? formControl.value : field?.value;
|
|
20
|
+
return xpsParams;
|
|
21
|
+
}, {});
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VibWl0LXJlcXVlc3QuY2xhc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS9wYXltZW50L3N1Ym1pdC9yZXF1ZXN0L3N1Ym1pdC1yZXF1ZXN0LmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUVuRixNQUFNLE9BQU8sYUFBYyxTQUFRLGlCQUFpQjtJQUlsRCxZQUFtQixVQU1sQjtRQUNDLEtBQUssRUFBRSxDQUFDO1FBRVIsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxHQUFHLFVBQVUsQ0FBQztRQUVwRCxJQUFJLEtBQUssS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUNuQixNQUFNLElBQUksVUFBVSxFQUFFLENBQUM7UUFDekIsQ0FBQztRQUVELElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO1FBRTFCLElBQUksT0FBTyxFQUFFLENBQUM7WUFDWixJQUFJLENBQUMsWUFBWSxHQUFHLE9BQU8sQ0FBQztRQUM5QixDQUFDO1FBRUQsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUVPLGVBQWUsQ0FDckIsTUFBZSxFQUNmLElBQXNCO1FBRXRCLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FDbEIsQ0FBQyxTQUFvQyxFQUFFLEtBQVksRUFBRSxFQUFFO1lBQ3JELE1BQU0sV0FBVyxHQUEyQixJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUVqRSxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLFdBQVcsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQztZQUV2RSxPQUFPLFNBQVMsQ0FBQztRQUNuQixDQUFDLEVBQ0QsRUFBRSxDQUNILENBQUM7SUFDSixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb24gKi9cbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgVW50eXBlZEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEZpZWxkIH0gZnJvbSAnLi4vLi4vZmllbGQuaW50ZXJmYWNlJztcbmltcG9ydCB7IFhwc0FwaVBhcnRSZXF1ZXN0IH0gZnJvbSAnLi4vLi4veHBzLWFwaS1wYXJ0LXJlcXVlc3QuYWJzdHJhY3QnO1xuaW1wb3J0IHsgVG9rZW5FcnJvciB9IGZyb20gJy4uLy4uLy4uL2V4Y2VwdGlvbnMtaGFuZGxpbmcvZXJyb3JzL3Rva2VuLWVycm9yLmNsYXNzJztcblxuZXhwb3J0IGNsYXNzIFN1Ym1pdFJlcXVlc3QgZXh0ZW5kcyBYcHNBcGlQYXJ0UmVxdWVzdCB7XG4gIHB1YmxpYyByZWFkb25seSBhY2Nlc3NfdG9rZW46IHN0cmluZztcbiAgcHVibGljIHJlYWRvbmx5IHhwc19kZnBfaGFzaD86IHN0cmluZztcblxuICBwdWJsaWMgY29uc3RydWN0b3IocGFyYW1ldGVyczoge1xuICAgIHRva2VuOiBzdHJpbmcgfCBudWxsO1xuICAgIGZpZWxkczogRmllbGRbXTtcbiAgICBmb3JtOiBVbnR5cGVkRm9ybUdyb3VwO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tbWFnaWMtbnVtYmVyc1xuICAgIGRmcEhhc2g6IHN0cmluZyB8IG51bGw7XG4gIH0pIHtcbiAgICBzdXBlcigpO1xuXG4gICAgY29uc3QgeyB0b2tlbiwgZmllbGRzLCBmb3JtLCBkZnBIYXNoIH0gPSBwYXJhbWV0ZXJzO1xuXG4gICAgaWYgKHRva2VuID09PSBudWxsKSB7XG4gICAgICB0aHJvdyBuZXcgVG9rZW5FcnJvcigpO1xuICAgIH1cblxuICAgIHRoaXMuYWNjZXNzX3Rva2VuID0gdG9rZW47XG5cbiAgICBpZiAoZGZwSGFzaCkge1xuICAgICAgdGhpcy54cHNfZGZwX2hhc2ggPSBkZnBIYXNoO1xuICAgIH1cblxuICAgIHRoaXMuYWRkWHBzUGFyYW1ldGVycyh0aGlzLmdldEZpZWxkc1ZhbHVlcyhmaWVsZHMsIGZvcm0pKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0RmllbGRzVmFsdWVzKFxuICAgIGZpZWxkczogRmllbGRbXSxcbiAgICBmb3JtOiBVbnR5cGVkRm9ybUdyb3VwXG4gICk6IHsgW2tleTogc3RyaW5nXTogdW5rbm93biB9IHtcbiAgICByZXR1cm4gZmllbGRzLnJlZHVjZShcbiAgICAgICh4cHNQYXJhbXM6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0sIGZpZWxkOiBGaWVsZCkgPT4ge1xuICAgICAgICBjb25zdCBmb3JtQ29udHJvbDogQWJzdHJhY3RDb250cm9sIHwgbnVsbCA9IGZvcm0uZ2V0KGZpZWxkLm5hbWUpO1xuXG4gICAgICAgIHhwc1BhcmFtc1tmaWVsZC5uYW1lXSA9IGZvcm1Db250cm9sID8gZm9ybUNvbnRyb2wudmFsdWUgOiBmaWVsZD8udmFsdWU7XG5cbiAgICAgICAgcmV0dXJuIHhwc1BhcmFtcztcbiAgICAgIH0sXG4gICAgICB7fVxuICAgICk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { XpsCommand } from '../../xps-comand.enum';
|
|
2
|
+
import { FieldNames } from '../../field-names.enum';
|
|
3
|
+
export class SubmitResponse {
|
|
4
|
+
constructor(parameters, responseNumber = 0) {
|
|
5
|
+
this.responseNumber = responseNumber;
|
|
6
|
+
/* Todo split into properties */
|
|
7
|
+
this.parameters = parameters;
|
|
8
|
+
this.fields = Object.keys(parameters.form).map((key) => parameters.form[key]);
|
|
9
|
+
if (parameters.onlineBanking) {
|
|
10
|
+
this.onlineBanking = {
|
|
11
|
+
url: parameters.onlineBanking.value,
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
this.isNeedRedirect =
|
|
15
|
+
parameters.currentCommand === XpsCommand.account ||
|
|
16
|
+
(parameters.currentCommand === XpsCommand.checkout &&
|
|
17
|
+
Boolean(parameters.checkout));
|
|
18
|
+
this.buyData = parameters.buyData;
|
|
19
|
+
this.fixInvoice = this.fields.find((field) => field.name === FieldNames.fixInvoice)?.value;
|
|
20
|
+
this.signature = this.fields.find((field) => field.name === FieldNames.signature)?.value;
|
|
21
|
+
this.hasFatalErrors = parameters.textAll?.fatal;
|
|
22
|
+
this.userSession = parameters.userSession;
|
|
23
|
+
this.pid = parameters.pid;
|
|
24
|
+
this.errors = parameters.errors;
|
|
25
|
+
this.summary = parameters.summary;
|
|
26
|
+
this.title = parameters.title;
|
|
27
|
+
this.currentCommand = parameters.currentCommand;
|
|
28
|
+
this.messages = parameters.messages;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VibWl0LXJlc3BvbnNlLmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcGF5bWVudC1jbGllbnQtY29yZS9zcmMvbGliL2NvcmUvcGF5bWVudC9zdWJtaXQvcmVzcG9uc2Uvc3VibWl0LXJlc3BvbnNlLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFcEQsTUFBTSxPQUFPLGNBQWM7SUFzQnpCLFlBQ0UsVUFBdUIsRUFDUCxpQkFBeUIsQ0FBQztRQUExQixtQkFBYyxHQUFkLGNBQWMsQ0FBWTtRQUUxQyxnQ0FBZ0M7UUFDaEMsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7UUFDN0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQzVDLENBQUMsR0FBVyxFQUFTLEVBQUUsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUM3QyxDQUFDO1FBRUYsSUFBSSxVQUFVLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDN0IsSUFBSSxDQUFDLGFBQWEsR0FBRztnQkFDbkIsR0FBRyxFQUFFLFVBQVUsQ0FBQyxhQUFhLENBQUMsS0FBSzthQUNwQyxDQUFDO1FBQ0osQ0FBQztRQUVELElBQUksQ0FBQyxjQUFjO1lBQ2pCLFVBQVUsQ0FBQyxjQUFjLEtBQUssVUFBVSxDQUFDLE9BQU87Z0JBQ2hELENBQUMsVUFBVSxDQUFDLGNBQWMsS0FBSyxVQUFVLENBQUMsUUFBUTtvQkFDaEQsT0FBTyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBRWxDLElBQUksQ0FBQyxPQUFPLEdBQUcsVUFBVSxDQUFDLE9BQU8sQ0FBQztRQUVsQyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUNoQyxDQUFDLEtBQVksRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksS0FBSyxVQUFVLENBQUMsVUFBVSxDQUN2RCxFQUFFLEtBQUssQ0FBQztRQUVULElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQy9CLENBQUMsS0FBWSxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxLQUFLLFVBQVUsQ0FBQyxTQUFTLENBQ3RELEVBQUUsS0FBSyxDQUFDO1FBRVQsSUFBSSxDQUFDLGNBQWMsR0FBRyxVQUFVLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQztRQUVoRCxJQUFJLENBQUMsV0FBVyxHQUFHLFVBQVUsQ0FBQyxXQUFXLENBQUM7UUFDMUMsSUFBSSxDQUFDLEdBQUcsR0FBRyxVQUFVLENBQUMsR0FBRyxDQUFDO1FBQzFCLElBQUksQ0FBQyxNQUFNLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQztRQUNoQyxJQUFJLENBQUMsT0FBTyxHQUFHLFVBQVUsQ0FBQyxPQUFPLENBQUM7UUFDbEMsSUFBSSxDQUFDLEtBQUssR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDO1FBQzlCLElBQUksQ0FBQyxjQUFjLEdBQUcsVUFBVSxDQUFDLGNBQWMsQ0FBQztRQUNoRCxJQUFJLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQyxRQUFRLENBQUM7SUFDdEMsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgWHBzUmVzcG9uc2UgfSBmcm9tICcuLi8uLi94cHMtcmVzcG9uc2UuaW50ZXJmYWNlJztcbmltcG9ydCB7IEZpZWxkIH0gZnJvbSAnLi4vLi4vZmllbGQuaW50ZXJmYWNlJztcbmltcG9ydCB7IEludm9pY2UgfSBmcm9tICcuLi8uLi9pbnZvaWNlLmludGVyZmFjZSc7XG5pbXBvcnQgeyBYcHNDb21tYW5kIH0gZnJvbSAnLi4vLi4veHBzLWNvbWFuZC5lbnVtJztcbmltcG9ydCB7IEZpZWxkTmFtZXMgfSBmcm9tICcuLi8uLi9maWVsZC1uYW1lcy5lbnVtJztcblxuZXhwb3J0IGNsYXNzIFN1Ym1pdFJlc3BvbnNlIHtcbiAgcHVibGljIHJlYWRvbmx5IHBhcmFtZXRlcnM6IFhwc1Jlc3BvbnNlO1xuICBwdWJsaWMgcmVhZG9ubHkgZmllbGRzOiBGaWVsZFtdO1xuICBwdWJsaWMgb25saW5lQmFua2luZz86IHtcbiAgICB1cmw6IHN0cmluZztcbiAgfTtcbiAgcHVibGljIHJlYWRvbmx5IGRhdGE/OiB1bmtub3duO1xuICBwdWJsaWMgaXNOZWVkUmVkaXJlY3Q6IGJvb2xlYW47XG5cbiAgcHVibGljIGJ1eURhdGE6IFhwc1Jlc3BvbnNlWydidXlEYXRhJ107XG5cbiAgcHVibGljIHNpZ25hdHVyZT86IHN0cmluZztcbiAgcHVibGljIGZpeEludm9pY2U/OiBzdHJpbmc7XG4gIHB1YmxpYyBoYXNGYXRhbEVycm9ycz86IGJvb2xlYW47XG4gIHB1YmxpYyB1c2VyU2Vzc2lvbj86IEludm9pY2U7XG4gIHB1YmxpYyBwaWQ6IFhwc1Jlc3BvbnNlWydwaWQnXTtcbiAgcHVibGljIGVycm9yczogWHBzUmVzcG9uc2VbJ2Vycm9ycyddO1xuICBwdWJsaWMgc3VtbWFyeTogWHBzUmVzcG9uc2VbJ3N1bW1hcnknXTtcbiAgcHVibGljIHRpdGxlOiBzdHJpbmc7XG4gIHB1YmxpYyBjdXJyZW50Q29tbWFuZDogWHBzQ29tbWFuZCB8IG51bGw7XG4gIHB1YmxpYyBtZXNzYWdlczogWHBzUmVzcG9uc2VbJ21lc3NhZ2VzJ107XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIHBhcmFtZXRlcnM6IFhwc1Jlc3BvbnNlLFxuICAgIHB1YmxpYyByZWFkb25seSByZXNwb25zZU51bWJlcjogbnVtYmVyID0gMFxuICApIHtcbiAgICAvKiBUb2RvIHNwbGl0IGludG8gcHJvcGVydGllcyAqL1xuICAgIHRoaXMucGFyYW1ldGVycyA9IHBhcmFtZXRlcnM7XG4gICAgdGhpcy5maWVsZHMgPSBPYmplY3Qua2V5cyhwYXJhbWV0ZXJzLmZvcm0pLm1hcChcbiAgICAgIChrZXk6IHN0cmluZyk6IEZpZWxkID0+IHBhcmFtZXRlcnMuZm9ybVtrZXldXG4gICAgKTtcblxuICAgIGlmIChwYXJhbWV0ZXJzLm9ubGluZUJhbmtpbmcpIHtcbiAgICAgIHRoaXMub25saW5lQmFua2luZyA9IHtcbiAgICAgICAgdXJsOiBwYXJhbWV0ZXJzLm9ubGluZUJhbmtpbmcudmFsdWUsXG4gICAgICB9O1xuICAgIH1cblxuICAgIHRoaXMuaXNOZWVkUmVkaXJlY3QgPVxuICAgICAgcGFyYW1ldGVycy5jdXJyZW50Q29tbWFuZCA9PT0gWHBzQ29tbWFuZC5hY2NvdW50IHx8XG4gICAgICAocGFyYW1ldGVycy5jdXJyZW50Q29tbWFuZCA9PT0gWHBzQ29tbWFuZC5jaGVja291dCAmJlxuICAgICAgICBCb29sZWFuKHBhcmFtZXRlcnMuY2hlY2tvdXQpKTtcblxuICAgIHRoaXMuYnV5RGF0YSA9IHBhcmFtZXRlcnMuYnV5RGF0YTtcblxuICAgIHRoaXMuZml4SW52b2ljZSA9IHRoaXMuZmllbGRzLmZpbmQoXG4gICAgICAoZmllbGQ6IEZpZWxkKSA9PiBmaWVsZC5uYW1lID09PSBGaWVsZE5hbWVzLmZpeEludm9pY2VcbiAgICApPy52YWx1ZTtcblxuICAgIHRoaXMuc2lnbmF0dXJlID0gdGhpcy5maWVsZHMuZmluZChcbiAgICAgIChmaWVsZDogRmllbGQpID0+IGZpZWxkLm5hbWUgPT09IEZpZWxkTmFtZXMuc2lnbmF0dXJlXG4gICAgKT8udmFsdWU7XG5cbiAgICB0aGlzLmhhc0ZhdGFsRXJyb3JzID0gcGFyYW1ldGVycy50ZXh0QWxsPy5mYXRhbDtcblxuICAgIHRoaXMudXNlclNlc3Npb24gPSBwYXJhbWV0ZXJzLnVzZXJTZXNzaW9uO1xuICAgIHRoaXMucGlkID0gcGFyYW1ldGVycy5waWQ7XG4gICAgdGhpcy5lcnJvcnMgPSBwYXJhbWV0ZXJzLmVycm9ycztcbiAgICB0aGlzLnN1bW1hcnkgPSBwYXJhbWV0ZXJzLnN1bW1hcnk7XG4gICAgdGhpcy50aXRsZSA9IHBhcmFtZXRlcnMudGl0bGU7XG4gICAgdGhpcy5jdXJyZW50Q29tbWFuZCA9IHBhcmFtZXRlcnMuY3VycmVudENvbW1hbmQ7XG4gICAgdGhpcy5tZXNzYWdlcyA9IHBhcmFtZXRlcnMubWVzc2FnZXM7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { Inject, Injectable } from '@angular/core';
|
|
2
|
+
import { submitRequestFactoryToken, } from './request/submit-request.token';
|
|
3
|
+
import { submitResponseFactoryToken, } from './response/submit-response.token';
|
|
4
|
+
import { ResponseError } from '../../exceptions-handling/errors/response-error.class';
|
|
5
|
+
import { UserBehaviourEventName } from '../../user-behaviour-analytics/user-behaviour-event-name.enum';
|
|
6
|
+
import { userBehaviourEventTypes } from '../../user-behaviour-analytics/user-behaviour-event/user-behaviour-event-types';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "../../settings/settings.service";
|
|
9
|
+
import * as i2 from "../../device-finger-print/device-finger-print.service";
|
|
10
|
+
import * as i3 from "../xps-api/xps-api.service";
|
|
11
|
+
import * as i4 from "../../errors-mapping/xps-response-errors-mapping.service";
|
|
12
|
+
import * as i5 from "../../encrypt-credit-card/encrypt-credit-card.service";
|
|
13
|
+
import * as i6 from "../../user-behaviour-analytics/user-behaviour-analytics.service";
|
|
14
|
+
export class SubmitService {
|
|
15
|
+
constructor(requestFactory, responseFactory, settingsService, deviceFingerPrintService, xpsApiService, xpsResponseErrorsMappingService, encryptCreditCardService, userBehaviourAnalyticsService) {
|
|
16
|
+
this.requestFactory = requestFactory;
|
|
17
|
+
this.responseFactory = responseFactory;
|
|
18
|
+
this.settingsService = settingsService;
|
|
19
|
+
this.deviceFingerPrintService = deviceFingerPrintService;
|
|
20
|
+
this.xpsApiService = xpsApiService;
|
|
21
|
+
this.xpsResponseErrorsMappingService = xpsResponseErrorsMappingService;
|
|
22
|
+
this.encryptCreditCardService = encryptCreditCardService;
|
|
23
|
+
this.userBehaviourAnalyticsService = userBehaviourAnalyticsService;
|
|
24
|
+
}
|
|
25
|
+
// NB: Never add 'async' statement for this method!
|
|
26
|
+
// 'Async' statement wraps current promise into another.
|
|
27
|
+
// In this way two promises become unequal, that can broke XPS API requests logic.
|
|
28
|
+
// eslint-disable-next-line @typescript-eslint/promise-function-async
|
|
29
|
+
request(fields, form) {
|
|
30
|
+
return (this.deviceFingerPrintService
|
|
31
|
+
.getHash()
|
|
32
|
+
// eslint-disable-next-line @typescript-eslint/promise-function-async
|
|
33
|
+
.then((dfpHash) => {
|
|
34
|
+
const requestParams = this.requestFactory({
|
|
35
|
+
token: this.settingsService.token,
|
|
36
|
+
fields,
|
|
37
|
+
form,
|
|
38
|
+
dfpHash,
|
|
39
|
+
});
|
|
40
|
+
const encryptedRequest = this.encryptCreditCardService.encryptCreditCard(requestParams);
|
|
41
|
+
return this.xpsApiService
|
|
42
|
+
.directPaymentRequest(encryptedRequest)
|
|
43
|
+
.then((xpsResponse) => {
|
|
44
|
+
const response = this.xpsResponseErrorsMappingService.mapErrors(xpsResponse);
|
|
45
|
+
this.fillUserSession(xpsResponse);
|
|
46
|
+
if (response.errors) {
|
|
47
|
+
const logError = (error) => {
|
|
48
|
+
this.userBehaviourAnalyticsService.send(UserBehaviourEventName.showErrorMessage, userBehaviourEventTypes.manual, { value: String(error.code), extraValue: error.message });
|
|
49
|
+
};
|
|
50
|
+
response.errors.forEach(logError);
|
|
51
|
+
}
|
|
52
|
+
return this.responseFactory(response);
|
|
53
|
+
})
|
|
54
|
+
.catch((error) => {
|
|
55
|
+
throw new ResponseError(error.message);
|
|
56
|
+
});
|
|
57
|
+
}));
|
|
58
|
+
}
|
|
59
|
+
fillUserSession(xpsResponse) {
|
|
60
|
+
this.userBehaviourAnalyticsService.fillUserSession({
|
|
61
|
+
...xpsResponse,
|
|
62
|
+
fields: Object.keys(xpsResponse.form).map((key) => xpsResponse.form[key]),
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: SubmitService, deps: [{ token: submitRequestFactoryToken }, { token: submitResponseFactoryToken }, { token: i1.SettingsService }, { token: i2.DeviceFingerPrintService }, { token: i3.XpsApiService }, { token: i4.XpsResponseErrorsMappingService }, { token: i5.EncryptCreditCardService }, { token: i6.UserBehaviourAnalyticsService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
66
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: SubmitService, providedIn: 'root' }); }
|
|
67
|
+
}
|
|
68
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: SubmitService, decorators: [{
|
|
69
|
+
type: Injectable,
|
|
70
|
+
args: [{ providedIn: 'root' }]
|
|
71
|
+
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
72
|
+
type: Inject,
|
|
73
|
+
args: [submitRequestFactoryToken]
|
|
74
|
+
}] }, { type: undefined, decorators: [{
|
|
75
|
+
type: Inject,
|
|
76
|
+
args: [submitResponseFactoryToken]
|
|
77
|
+
}] }, { type: i1.SettingsService }, { type: i2.DeviceFingerPrintService }, { type: i3.XpsApiService }, { type: i4.XpsResponseErrorsMappingService }, { type: i5.EncryptCreditCardService }, { type: i6.UserBehaviourAnalyticsService }] });
|
|
78
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VibWl0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS9wYXltZW50L3N1Ym1pdC9zdWJtaXQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBRUwseUJBQXlCLEdBQzFCLE1BQU0sZ0NBQWdDLENBQUM7QUFDeEMsT0FBTyxFQUVMLDBCQUEwQixHQUMzQixNQUFNLGtDQUFrQyxDQUFDO0FBSzFDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQU10RixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwrREFBK0QsQ0FBQztBQUN2RyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxnRkFBZ0YsQ0FBQzs7Ozs7Ozs7QUFJekgsTUFBTSxPQUFPLGFBQWE7SUFDeEIsWUFFbUIsY0FBb0MsRUFFcEMsZUFBc0MsRUFDdEMsZUFBZ0MsRUFDaEMsd0JBQWtELEVBQ2xELGFBQTRCLEVBQzVCLCtCQUFnRSxFQUNoRSx3QkFBa0QsRUFDbEQsNkJBQTREO1FBUjVELG1CQUFjLEdBQWQsY0FBYyxDQUFzQjtRQUVwQyxvQkFBZSxHQUFmLGVBQWUsQ0FBdUI7UUFDdEMsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQ2hDLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFDbEQsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsb0NBQStCLEdBQS9CLCtCQUErQixDQUFpQztRQUNoRSw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQTBCO1FBQ2xELGtDQUE2QixHQUE3Qiw2QkFBNkIsQ0FBK0I7SUFDNUUsQ0FBQztJQUVKLG1EQUFtRDtJQUNuRCx3REFBd0Q7SUFDeEQsa0ZBQWtGO0lBRWxGLHFFQUFxRTtJQUM5RCxPQUFPLENBQ1osTUFBZSxFQUNmLElBQXNCO1FBRXRCLE9BQU8sQ0FDTCxJQUFJLENBQUMsd0JBQXdCO2FBQzFCLE9BQU8sRUFBRTtZQUNWLHFFQUFxRTthQUNwRSxJQUFJLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtZQUNoQixNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDO2dCQUN4QyxLQUFLLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLO2dCQUNqQyxNQUFNO2dCQUNOLElBQUk7Z0JBQ0osT0FBTzthQUNSLENBQUMsQ0FBQztZQUVILE1BQU0sZ0JBQWdCLEdBQ3BCLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxpQkFBaUIsQ0FDN0MsYUFBYSxDQUNkLENBQUM7WUFFSixPQUFPLElBQUksQ0FBQyxhQUFhO2lCQUN0QixvQkFBb0IsQ0FBQyxnQkFBZ0IsQ0FBQztpQkFDdEMsSUFBSSxDQUFDLENBQUMsV0FBd0IsRUFBRSxFQUFFO2dCQUNqQyxNQUFNLFFBQVEsR0FDWixJQUFJLENBQUMsK0JBQStCLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDO2dCQUU5RCxJQUFJLENBQUMsZUFBZSxDQUFDLFdBQVcsQ0FBQyxDQUFDO2dCQUVsQyxJQUFJLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQztvQkFDcEIsTUFBTSxRQUFRLEdBQUcsQ0FBQyxLQUdqQixFQUFRLEVBQUU7d0JBQ1QsSUFBSSxDQUFDLDZCQUE2QixDQUFDLElBQUksQ0FDckMsc0JBQXNCLENBQUMsZ0JBQWdCLEVBQ3ZDLHVCQUF1QixDQUFDLE1BQU0sRUFDOUIsRUFBRSxLQUFLLEVBQUUsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxVQUFVLEVBQUUsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUN6RCxDQUFDO29CQUNKLENBQUMsQ0FBQztvQkFFRixRQUFRLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDcEMsQ0FBQztnQkFFRCxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDeEMsQ0FBQyxDQUFDO2lCQUNELEtBQUssQ0FBQyxDQUFDLEtBQVksRUFBRSxFQUFFO2dCQUN0QixNQUFNLElBQUksYUFBYSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUN6QyxDQUFDLENBQUMsQ0FBQztRQUNQLENBQUMsQ0FBQyxDQUNMLENBQUM7SUFDSixDQUFDO0lBRU8sZUFBZSxDQUFDLFdBQXdCO1FBQzlDLElBQUksQ0FBQyw2QkFBNkIsQ0FBQyxlQUFlLENBQUM7WUFDakQsR0FBRyxXQUFXO1lBQ2QsTUFBTSxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FDdkMsQ0FBQyxHQUFXLEVBQVMsRUFBRSxDQUFFLFdBQTJCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUMvRDtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7OEdBL0VVLGFBQWEsa0JBRWQseUJBQXlCLGFBRXpCLDBCQUEwQjtrSEFKekIsYUFBYSxjQURBLE1BQU07OzJGQUNuQixhQUFhO2tCQUR6QixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRTs7MEJBRzdCLE1BQU07MkJBQUMseUJBQXlCOzswQkFFaEMsTUFBTTsyQkFBQywwQkFBMEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGaWVsZCB9IGZyb20gJy4uL2ZpZWxkLmludGVyZmFjZSc7XG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIFN1Ym1pdFJlcXVlc3RGYWN0b3J5LFxuICBzdWJtaXRSZXF1ZXN0RmFjdG9yeVRva2VuLFxufSBmcm9tICcuL3JlcXVlc3Qvc3VibWl0LXJlcXVlc3QudG9rZW4nO1xuaW1wb3J0IHtcbiAgU3VibWl0UmVzcG9uc2VGYWN0b3J5LFxuICBzdWJtaXRSZXNwb25zZUZhY3RvcnlUb2tlbixcbn0gZnJvbSAnLi9yZXNwb25zZS9zdWJtaXQtcmVzcG9uc2UudG9rZW4nO1xuaW1wb3J0IHsgU2V0dGluZ3NTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2V0dGluZ3Mvc2V0dGluZ3Muc2VydmljZSc7XG5pbXBvcnQgeyBTdWJtaXRSZXNwb25zZSB9IGZyb20gJy4vcmVzcG9uc2Uvc3VibWl0LXJlc3BvbnNlLmNsYXNzJztcbmltcG9ydCB7IFVudHlwZWRGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBEZXZpY2VGaW5nZXJQcmludFNlcnZpY2UgfSBmcm9tICcuLi8uLi9kZXZpY2UtZmluZ2VyLXByaW50L2RldmljZS1maW5nZXItcHJpbnQuc2VydmljZSc7XG5pbXBvcnQgeyBSZXNwb25zZUVycm9yIH0gZnJvbSAnLi4vLi4vZXhjZXB0aW9ucy1oYW5kbGluZy9lcnJvcnMvcmVzcG9uc2UtZXJyb3IuY2xhc3MnO1xuaW1wb3J0IHsgWHBzUmVzcG9uc2UgfSBmcm9tICcuLi94cHMtcmVzcG9uc2UuaW50ZXJmYWNlJztcbmltcG9ydCB7IFhwc0FwaVNlcnZpY2UgfSBmcm9tICcuLi94cHMtYXBpL3hwcy1hcGkuc2VydmljZSc7XG5pbXBvcnQgeyBFbmNyeXB0Q3JlZGl0Q2FyZFNlcnZpY2UgfSBmcm9tICcuLi8uLi9lbmNyeXB0LWNyZWRpdC1jYXJkL2VuY3J5cHQtY3JlZGl0LWNhcmQuc2VydmljZSc7XG5pbXBvcnQgeyBTdWJtaXRSZXF1ZXN0IH0gZnJvbSAnLi9yZXF1ZXN0L3N1Ym1pdC1yZXF1ZXN0LmNsYXNzJztcbmltcG9ydCB7IFhwc1Jlc3BvbnNlRXJyb3JzTWFwcGluZ1NlcnZpY2UgfSBmcm9tICcuLi8uLi9lcnJvcnMtbWFwcGluZy94cHMtcmVzcG9uc2UtZXJyb3JzLW1hcHBpbmcuc2VydmljZSc7XG5pbXBvcnQgeyBVc2VyQmVoYXZpb3VyRXZlbnROYW1lIH0gZnJvbSAnLi4vLi4vdXNlci1iZWhhdmlvdXItYW5hbHl0aWNzL3VzZXItYmVoYXZpb3VyLWV2ZW50LW5hbWUuZW51bSc7XG5pbXBvcnQgeyB1c2VyQmVoYXZpb3VyRXZlbnRUeXBlcyB9IGZyb20gJy4uLy4uL3VzZXItYmVoYXZpb3VyLWFuYWx5dGljcy91c2VyLWJlaGF2aW91ci1ldmVudC91c2VyLWJlaGF2aW91ci1ldmVudC10eXBlcyc7XG5pbXBvcnQgeyBVc2VyQmVoYXZpb3VyQW5hbHl0aWNzU2VydmljZSB9IGZyb20gJy4uLy4uL3VzZXItYmVoYXZpb3VyLWFuYWx5dGljcy91c2VyLWJlaGF2aW91ci1hbmFseXRpY3Muc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgU3VibWl0U2VydmljZSB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICBASW5qZWN0KHN1Ym1pdFJlcXVlc3RGYWN0b3J5VG9rZW4pXG4gICAgcHJpdmF0ZSByZWFkb25seSByZXF1ZXN0RmFjdG9yeTogU3VibWl0UmVxdWVzdEZhY3RvcnksXG4gICAgQEluamVjdChzdWJtaXRSZXNwb25zZUZhY3RvcnlUb2tlbilcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJlc3BvbnNlRmFjdG9yeTogU3VibWl0UmVzcG9uc2VGYWN0b3J5LFxuICAgIHByaXZhdGUgcmVhZG9ubHkgc2V0dGluZ3NTZXJ2aWNlOiBTZXR0aW5nc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBkZXZpY2VGaW5nZXJQcmludFNlcnZpY2U6IERldmljZUZpbmdlclByaW50U2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHhwc0FwaVNlcnZpY2U6IFhwc0FwaVNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSB4cHNSZXNwb25zZUVycm9yc01hcHBpbmdTZXJ2aWNlOiBYcHNSZXNwb25zZUVycm9yc01hcHBpbmdTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZW5jcnlwdENyZWRpdENhcmRTZXJ2aWNlOiBFbmNyeXB0Q3JlZGl0Q2FyZFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSB1c2VyQmVoYXZpb3VyQW5hbHl0aWNzU2VydmljZTogVXNlckJlaGF2aW91ckFuYWx5dGljc1NlcnZpY2VcbiAgKSB7fVxuXG4gIC8vIE5COiBOZXZlciBhZGQgJ2FzeW5jJyBzdGF0ZW1lbnQgZm9yIHRoaXMgbWV0aG9kIVxuICAvLyAnQXN5bmMnIHN0YXRlbWVudCB3cmFwcyBjdXJyZW50IHByb21pc2UgaW50byBhbm90aGVyLlxuICAvLyBJbiB0aGlzIHdheSB0d28gcHJvbWlzZXMgYmVjb21lIHVuZXF1YWwsIHRoYXQgY2FuIGJyb2tlIFhQUyBBUEkgcmVxdWVzdHMgbG9naWMuXG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9wcm9taXNlLWZ1bmN0aW9uLWFzeW5jXG4gIHB1YmxpYyByZXF1ZXN0KFxuICAgIGZpZWxkczogRmllbGRbXSxcbiAgICBmb3JtOiBVbnR5cGVkRm9ybUdyb3VwXG4gICk6IFByb21pc2U8U3VibWl0UmVzcG9uc2U+IHtcbiAgICByZXR1cm4gKFxuICAgICAgdGhpcy5kZXZpY2VGaW5nZXJQcmludFNlcnZpY2VcbiAgICAgICAgLmdldEhhc2goKVxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L3Byb21pc2UtZnVuY3Rpb24tYXN5bmNcbiAgICAgICAgLnRoZW4oKGRmcEhhc2gpID0+IHtcbiAgICAgICAgICBjb25zdCByZXF1ZXN0UGFyYW1zID0gdGhpcy5yZXF1ZXN0RmFjdG9yeSh7XG4gICAgICAgICAgICB0b2tlbjogdGhpcy5zZXR0aW5nc1NlcnZpY2UudG9rZW4sXG4gICAgICAgICAgICBmaWVsZHMsXG4gICAgICAgICAgICBmb3JtLFxuICAgICAgICAgICAgZGZwSGFzaCxcbiAgICAgICAgICB9KTtcblxuICAgICAgICAgIGNvbnN0IGVuY3J5cHRlZFJlcXVlc3QgPVxuICAgICAgICAgICAgdGhpcy5lbmNyeXB0Q3JlZGl0Q2FyZFNlcnZpY2UuZW5jcnlwdENyZWRpdENhcmQ8U3VibWl0UmVxdWVzdD4oXG4gICAgICAgICAgICAgIHJlcXVlc3RQYXJhbXNcbiAgICAgICAgICAgICk7XG5cbiAgICAgICAgICByZXR1cm4gdGhpcy54cHNBcGlTZXJ2aWNlXG4gICAgICAgICAgICAuZGlyZWN0UGF5bWVudFJlcXVlc3QoZW5jcnlwdGVkUmVxdWVzdClcbiAgICAgICAgICAgIC50aGVuKCh4cHNSZXNwb25zZTogWHBzUmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgICAgY29uc3QgcmVzcG9uc2UgPVxuICAgICAgICAgICAgICAgIHRoaXMueHBzUmVzcG9uc2VFcnJvcnNNYXBwaW5nU2VydmljZS5tYXBFcnJvcnMoeHBzUmVzcG9uc2UpO1xuXG4gICAgICAgICAgICAgIHRoaXMuZmlsbFVzZXJTZXNzaW9uKHhwc1Jlc3BvbnNlKTtcblxuICAgICAgICAgICAgICBpZiAocmVzcG9uc2UuZXJyb3JzKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbG9nRXJyb3IgPSAoZXJyb3I6IHtcbiAgICAgICAgICAgICAgICAgIGNvZGU6IG51bWJlcjtcbiAgICAgICAgICAgICAgICAgIG1lc3NhZ2U6IHN0cmluZztcbiAgICAgICAgICAgICAgICB9KTogdm9pZCA9PiB7XG4gICAgICAgICAgICAgICAgICB0aGlzLnVzZXJCZWhhdmlvdXJBbmFseXRpY3NTZXJ2aWNlLnNlbmQoXG4gICAgICAgICAgICAgICAgICAgIFVzZXJCZWhhdmlvdXJFdmVudE5hbWUuc2hvd0Vycm9yTWVzc2FnZSxcbiAgICAgICAgICAgICAgICAgICAgdXNlckJlaGF2aW91ckV2ZW50VHlwZXMubWFudWFsLFxuICAgICAgICAgICAgICAgICAgICB7IHZhbHVlOiBTdHJpbmcoZXJyb3IuY29kZSksIGV4dHJhVmFsdWU6IGVycm9yLm1lc3NhZ2UgfVxuICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICAgICAgcmVzcG9uc2UuZXJyb3JzLmZvckVhY2gobG9nRXJyb3IpO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucmVzcG9uc2VGYWN0b3J5KHJlc3BvbnNlKTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAuY2F0Y2goKGVycm9yOiBFcnJvcikgPT4ge1xuICAgICAgICAgICAgICB0aHJvdyBuZXcgUmVzcG9uc2VFcnJvcihlcnJvci5tZXNzYWdlKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGZpbGxVc2VyU2Vzc2lvbih4cHNSZXNwb25zZTogWHBzUmVzcG9uc2UpOiB2b2lkIHtcbiAgICB0aGlzLnVzZXJCZWhhdmlvdXJBbmFseXRpY3NTZXJ2aWNlLmZpbGxVc2VyU2Vzc2lvbih7XG4gICAgICAuLi54cHNSZXNwb25zZSxcbiAgICAgIGZpZWxkczogT2JqZWN0LmtleXMoeHBzUmVzcG9uc2UuZm9ybSkubWFwKFxuICAgICAgICAoa2V5OiBzdHJpbmcpOiBGaWVsZCA9PiAoeHBzUmVzcG9uc2UgYXMgWHBzUmVzcG9uc2UpLmZvcm1ba2V5XVxuICAgICAgKSxcbiAgICB9KTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { XpsApiPartRequest } from '../../xps-api-part-request.abstract';
|
|
2
|
+
/* eslint-disable @typescript-eslint/naming-convention */
|
|
3
|
+
export class SyncRequest extends XpsApiPartRequest {
|
|
4
|
+
constructor(parameters) {
|
|
5
|
+
super();
|
|
6
|
+
this.xps_fix_command = 'calculate';
|
|
7
|
+
this.access_token = parameters.token;
|
|
8
|
+
const fieldsValues = this.getFieldsValues(parameters.changedField, parameters.fields, parameters.form);
|
|
9
|
+
this.addXpsParameters({
|
|
10
|
+
...fieldsValues,
|
|
11
|
+
change_element: parameters.changedField.name,
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
getFieldsValues(changedField, fields, form) {
|
|
15
|
+
const fieldsMap = this.getFieldsMap(fields);
|
|
16
|
+
return changedField?.javascript?.change.params.reduce((xpsParams, fieldName) => {
|
|
17
|
+
const formControl = form.get(fieldName);
|
|
18
|
+
const field = fieldsMap.get(fieldName);
|
|
19
|
+
if (formControl || field) {
|
|
20
|
+
xpsParams[fieldName] = formControl?.value ?? field?.value;
|
|
21
|
+
}
|
|
22
|
+
return xpsParams;
|
|
23
|
+
}, {});
|
|
24
|
+
}
|
|
25
|
+
getFieldsMap(fields) {
|
|
26
|
+
const map = new Map();
|
|
27
|
+
fields.forEach((field) => map.set(field.name, field));
|
|
28
|
+
return map;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3luYy1yZXF1ZXN0LmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcGF5bWVudC1jbGllbnQtY29yZS9zcmMvbGliL2NvcmUvcGF5bWVudC9zeW5jL3JlcXVlc3Qvc3luYy1yZXF1ZXN0LmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRXhFLHlEQUF5RDtBQUN6RCxNQUFNLE9BQU8sV0FBWSxTQUFRLGlCQUFpQjtJQUloRCxZQUFtQixVQUtsQjtRQUNDLEtBQUssRUFBRSxDQUFDO1FBUk0sb0JBQWUsR0FBRyxXQUFXLENBQUM7UUFVNUMsSUFBSSxDQUFDLFlBQVksR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDO1FBRXJDLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQ3ZDLFVBQVUsQ0FBQyxZQUFZLEVBQ3ZCLFVBQVUsQ0FBQyxNQUFNLEVBQ2pCLFVBQVUsQ0FBQyxJQUFJLENBQ2hCLENBQUM7UUFFRixJQUFJLENBQUMsZ0JBQWdCLENBQUM7WUFDcEIsR0FBRyxZQUFZO1lBQ2YsY0FBYyxFQUFFLFVBQVUsQ0FBQyxZQUFZLENBQUMsSUFBSTtTQUM3QyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sZUFBZSxDQUNyQixZQUFtQixFQUNuQixNQUFlLEVBQ2YsSUFBc0I7UUFFdEIsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM1QyxPQUFPLFlBQVksRUFBRSxVQUFVLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQ25ELENBQUMsU0FBb0MsRUFBRSxTQUFpQixFQUFFLEVBQUU7WUFDMUQsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUN4QyxNQUFNLEtBQUssR0FBc0IsU0FBUyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUUxRCxJQUFJLFdBQVcsSUFBSSxLQUFLLEVBQUUsQ0FBQztnQkFDekIsU0FBUyxDQUFDLFNBQVMsQ0FBQyxHQUFHLFdBQVcsRUFBRSxLQUFLLElBQUksS0FBSyxFQUFFLEtBQUssQ0FBQztZQUM1RCxDQUFDO1lBRUQsT0FBTyxTQUFTLENBQUM7UUFDbkIsQ0FBQyxFQUNELEVBQUUsQ0FDSCxDQUFDO0lBQ0osQ0FBQztJQUVPLFlBQVksQ0FBQyxNQUFlO1FBQ2xDLE1BQU0sR0FBRyxHQUFHLElBQUksR0FBRyxFQUFpQixDQUFDO1FBQ3JDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ3RELE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVW50eXBlZEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEZpZWxkIH0gZnJvbSAnLi4vLi4vZmllbGQuaW50ZXJmYWNlJztcbmltcG9ydCB7IFhwc0FwaVBhcnRSZXF1ZXN0IH0gZnJvbSAnLi4vLi4veHBzLWFwaS1wYXJ0LXJlcXVlc3QuYWJzdHJhY3QnO1xuXG4vKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb24gKi9cbmV4cG9ydCBjbGFzcyBTeW5jUmVxdWVzdCBleHRlbmRzIFhwc0FwaVBhcnRSZXF1ZXN0IHtcbiAgcHVibGljIHJlYWRvbmx5IGFjY2Vzc190b2tlbjogc3RyaW5nO1xuICBwdWJsaWMgcmVhZG9ubHkgeHBzX2ZpeF9jb21tYW5kID0gJ2NhbGN1bGF0ZSc7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKHBhcmFtZXRlcnM6IHtcbiAgICB0b2tlbjogc3RyaW5nO1xuICAgIGNoYW5nZWRGaWVsZDogRmllbGQ7XG4gICAgZmllbGRzOiBGaWVsZFtdO1xuICAgIGZvcm06IFVudHlwZWRGb3JtR3JvdXA7XG4gIH0pIHtcbiAgICBzdXBlcigpO1xuXG4gICAgdGhpcy5hY2Nlc3NfdG9rZW4gPSBwYXJhbWV0ZXJzLnRva2VuO1xuXG4gICAgY29uc3QgZmllbGRzVmFsdWVzID0gdGhpcy5nZXRGaWVsZHNWYWx1ZXMoXG4gICAgICBwYXJhbWV0ZXJzLmNoYW5nZWRGaWVsZCxcbiAgICAgIHBhcmFtZXRlcnMuZmllbGRzLFxuICAgICAgcGFyYW1ldGVycy5mb3JtXG4gICAgKTtcblxuICAgIHRoaXMuYWRkWHBzUGFyYW1ldGVycyh7XG4gICAgICAuLi5maWVsZHNWYWx1ZXMsXG4gICAgICBjaGFuZ2VfZWxlbWVudDogcGFyYW1ldGVycy5jaGFuZ2VkRmllbGQubmFtZSxcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0RmllbGRzVmFsdWVzKFxuICAgIGNoYW5nZWRGaWVsZDogRmllbGQsXG4gICAgZmllbGRzOiBGaWVsZFtdLFxuICAgIGZvcm06IFVudHlwZWRGb3JtR3JvdXBcbiAgKTogeyBba2V5OiBzdHJpbmddOiB1bmtub3duIH0ge1xuICAgIGNvbnN0IGZpZWxkc01hcCA9IHRoaXMuZ2V0RmllbGRzTWFwKGZpZWxkcyk7XG4gICAgcmV0dXJuIGNoYW5nZWRGaWVsZD8uamF2YXNjcmlwdD8uY2hhbmdlLnBhcmFtcy5yZWR1Y2UoXG4gICAgICAoeHBzUGFyYW1zOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9LCBmaWVsZE5hbWU6IHN0cmluZykgPT4ge1xuICAgICAgICBjb25zdCBmb3JtQ29udHJvbCA9IGZvcm0uZ2V0KGZpZWxkTmFtZSk7XG4gICAgICAgIGNvbnN0IGZpZWxkOiBGaWVsZCB8IHVuZGVmaW5lZCA9IGZpZWxkc01hcC5nZXQoZmllbGROYW1lKTtcblxuICAgICAgICBpZiAoZm9ybUNvbnRyb2wgfHwgZmllbGQpIHtcbiAgICAgICAgICB4cHNQYXJhbXNbZmllbGROYW1lXSA9IGZvcm1Db250cm9sPy52YWx1ZSA/PyBmaWVsZD8udmFsdWU7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4geHBzUGFyYW1zO1xuICAgICAgfSxcbiAgICAgIHt9XG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0RmllbGRzTWFwKGZpZWxkczogRmllbGRbXSk6IE1hcDxzdHJpbmcsIEZpZWxkPiB7XG4gICAgY29uc3QgbWFwID0gbmV3IE1hcDxzdHJpbmcsIEZpZWxkPigpO1xuICAgIGZpZWxkcy5mb3JFYWNoKChmaWVsZCkgPT4gbWFwLnNldChmaWVsZC5uYW1lLCBmaWVsZCkpO1xuICAgIHJldHVybiBtYXA7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export class SyncResponse {
|
|
2
|
+
constructor(changedField, response) {
|
|
3
|
+
this.error = null;
|
|
4
|
+
const fieldError = response?.errors?.find((error) => error.element_name === changedField.name);
|
|
5
|
+
if (fieldError) {
|
|
6
|
+
this.error = {
|
|
7
|
+
asyncError: {
|
|
8
|
+
code: fieldError.code,
|
|
9
|
+
message: fieldError.message,
|
|
10
|
+
},
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
this.fields = Object.keys(response.form).map((key) => response.form[key]);
|
|
14
|
+
this.parameters = response;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3luYy1yZXNwb25zZS5jbGFzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3BheW1lbnQtY2xpZW50LWNvcmUvc3JjL2xpYi9jb3JlL3BheW1lbnQvc3luYy9yZXNwb25zZS9zeW5jLXJlc3BvbnNlLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE1BQU0sT0FBTyxZQUFZO0lBS3ZCLFlBQW1CLFlBQW1CLEVBQUUsUUFBcUI7UUFKN0MsVUFBSyxHQUE0QixJQUFJLENBQUM7UUFLcEQsTUFBTSxVQUFVLEdBQUcsUUFBUSxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQ3ZDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsWUFBWSxLQUFLLFlBQVksQ0FBQyxJQUFJLENBQ3BELENBQUM7UUFFRixJQUFJLFVBQVUsRUFBRSxDQUFDO1lBQ2YsSUFBSSxDQUFDLEtBQUssR0FBRztnQkFDWCxVQUFVLEVBQUU7b0JBQ1YsSUFBSSxFQUFFLFVBQVUsQ0FBQyxJQUFJO29CQUNyQixPQUFPLEVBQUUsVUFBVSxDQUFDLE9BQU87aUJBQzVCO2FBQ0YsQ0FBQztRQUNKLENBQUM7UUFFRCxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FDMUMsQ0FBQyxHQUFXLEVBQVMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQzNDLENBQUM7UUFFRixJQUFJLENBQUMsVUFBVSxHQUFHLFFBQVEsQ0FBQztJQUM3QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBWYWxpZGF0aW9uRXJyb3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgRmllbGQgfSBmcm9tICcuLi8uLi9maWVsZC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgWHBzUmVzcG9uc2UgfSBmcm9tICcuLi8uLi94cHMtcmVzcG9uc2UuaW50ZXJmYWNlJztcblxuZXhwb3J0IGNsYXNzIFN5bmNSZXNwb25zZSB7XG4gIHB1YmxpYyByZWFkb25seSBlcnJvcjogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwgPSBudWxsO1xuICBwdWJsaWMgcmVhZG9ubHkgZmllbGRzOiBGaWVsZFtdO1xuICBwdWJsaWMgcmVhZG9ubHkgcGFyYW1ldGVyczogWHBzUmVzcG9uc2U7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKGNoYW5nZWRGaWVsZDogRmllbGQsIHJlc3BvbnNlOiBYcHNSZXNwb25zZSkge1xuICAgIGNvbnN0IGZpZWxkRXJyb3IgPSByZXNwb25zZT8uZXJyb3JzPy5maW5kKFxuICAgICAgKGVycm9yKSA9PiBlcnJvci5lbGVtZW50X25hbWUgPT09IGNoYW5nZWRGaWVsZC5uYW1lXG4gICAgKTtcblxuICAgIGlmIChmaWVsZEVycm9yKSB7XG4gICAgICB0aGlzLmVycm9yID0ge1xuICAgICAgICBhc3luY0Vycm9yOiB7XG4gICAgICAgICAgY29kZTogZmllbGRFcnJvci5jb2RlLFxuICAgICAgICAgIG1lc3NhZ2U6IGZpZWxkRXJyb3IubWVzc2FnZSxcbiAgICAgICAgfSxcbiAgICAgIH07XG4gICAgfVxuXG4gICAgdGhpcy5maWVsZHMgPSBPYmplY3Qua2V5cyhyZXNwb25zZS5mb3JtKS5tYXAoXG4gICAgICAoa2V5OiBzdHJpbmcpOiBGaWVsZCA9PiByZXNwb25zZS5mb3JtW2tleV1cbiAgICApO1xuXG4gICAgdGhpcy5wYXJhbWV0ZXJzID0gcmVzcG9uc2U7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
import { Inject, Injectable } from '@angular/core';
|
|
2
|
+
import { UntypedFormGroup } from '@angular/forms';
|
|
3
|
+
import { Subject } from 'rxjs';
|
|
4
|
+
import { EmitDataService } from '../emit-data.service.abstract';
|
|
5
|
+
import { syncRequestFactoryToken, } from './request/sync-request.token';
|
|
6
|
+
import { syncResponseFactoryToken, } from './response/sync-response.token';
|
|
7
|
+
import { UserBehaviourEventName } from '../../user-behaviour-analytics/user-behaviour-event-name.enum';
|
|
8
|
+
import { userBehaviourEventTypes } from '../../user-behaviour-analytics/user-behaviour-event/user-behaviour-event-types';
|
|
9
|
+
import * as i0 from "@angular/core";
|
|
10
|
+
import * as i1 from "../xps-api/xps-api.service";
|
|
11
|
+
import * as i2 from "../actions/next-action.service";
|
|
12
|
+
import * as i3 from "../../settings/settings.service";
|
|
13
|
+
import * as i4 from "../../errors-mapping/xps-response-errors-mapping.service";
|
|
14
|
+
import * as i5 from "../../encrypt-credit-card/encrypt-credit-card.service";
|
|
15
|
+
import * as i6 from "../actions/show-errors/show-errors.action.class";
|
|
16
|
+
import * as i7 from "../../user-behaviour-analytics/user-behaviour-analytics.service";
|
|
17
|
+
export class SyncService extends EmitDataService {
|
|
18
|
+
constructor(requestFactory, responseFactory, xpsApiService, nextActionService, settingsService, xpsResponseErrorsMappingService, encryptCreditCardService, showErrorsActionCreator, userBehaviourAnalyticsService) {
|
|
19
|
+
super();
|
|
20
|
+
this.requestFactory = requestFactory;
|
|
21
|
+
this.responseFactory = responseFactory;
|
|
22
|
+
this.xpsApiService = xpsApiService;
|
|
23
|
+
this.nextActionService = nextActionService;
|
|
24
|
+
this.settingsService = settingsService;
|
|
25
|
+
this.xpsResponseErrorsMappingService = xpsResponseErrorsMappingService;
|
|
26
|
+
this.encryptCreditCardService = encryptCreditCardService;
|
|
27
|
+
this.showErrorsActionCreator = showErrorsActionCreator;
|
|
28
|
+
this.userBehaviourAnalyticsService = userBehaviourAnalyticsService;
|
|
29
|
+
this.prevFieldSyncStates = {};
|
|
30
|
+
this.form = new UntypedFormGroup({});
|
|
31
|
+
this.fields = [];
|
|
32
|
+
this.fieldSyncTimers = {};
|
|
33
|
+
this.fieldAsyncValidation = new Subject();
|
|
34
|
+
}
|
|
35
|
+
get fieldAsyncValidation$() {
|
|
36
|
+
return this.fieldAsyncValidation.asObservable();
|
|
37
|
+
}
|
|
38
|
+
setup(form, fields) {
|
|
39
|
+
this.reset();
|
|
40
|
+
this.form = form;
|
|
41
|
+
this.fields = fields;
|
|
42
|
+
}
|
|
43
|
+
reset() {
|
|
44
|
+
this.prevFieldSyncStates = {};
|
|
45
|
+
this.form = new UntypedFormGroup({});
|
|
46
|
+
this.fields = [];
|
|
47
|
+
}
|
|
48
|
+
async validate(field, delay = Number('750')) {
|
|
49
|
+
if (!this.isReadyField(field)) {
|
|
50
|
+
return Promise.resolve(null);
|
|
51
|
+
}
|
|
52
|
+
const control = this.form.get(field.name);
|
|
53
|
+
const value = control?.value;
|
|
54
|
+
const prevFieldState = this.getPrevFieldSyncState(field);
|
|
55
|
+
const isInitialValue = value === field.value && !prevFieldState;
|
|
56
|
+
if (isInitialValue) {
|
|
57
|
+
return Promise.resolve(null);
|
|
58
|
+
}
|
|
59
|
+
if (prevFieldState && value === prevFieldState.value) {
|
|
60
|
+
return Promise.resolve(prevFieldState.result).then((response) => {
|
|
61
|
+
return response?.error ?? null;
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
const updateFieldState = async () => {
|
|
65
|
+
const requestPromise = this.request(field);
|
|
66
|
+
this.setPrevFieldSyncState(field, value, requestPromise);
|
|
67
|
+
return requestPromise.then((response) => {
|
|
68
|
+
this.fieldAsyncValidation.next({
|
|
69
|
+
value,
|
|
70
|
+
field,
|
|
71
|
+
response,
|
|
72
|
+
});
|
|
73
|
+
return response.error ?? null;
|
|
74
|
+
});
|
|
75
|
+
};
|
|
76
|
+
return new Promise((resolve) => {
|
|
77
|
+
if (delay) {
|
|
78
|
+
const timerId = setTimeout(() => {
|
|
79
|
+
if (value !== control?.value) {
|
|
80
|
+
return resolve(null);
|
|
81
|
+
}
|
|
82
|
+
void updateFieldState().then((errors) => resolve(errors));
|
|
83
|
+
}, delay);
|
|
84
|
+
this.resetFieldSyncTimer(field, Number(timerId));
|
|
85
|
+
}
|
|
86
|
+
else {
|
|
87
|
+
void updateFieldState().then((errors) => resolve(errors));
|
|
88
|
+
}
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
getSyncValidationErrors(field) {
|
|
92
|
+
const control = this.form.get(field.name);
|
|
93
|
+
return control?.errors ?? null;
|
|
94
|
+
}
|
|
95
|
+
async request(field) {
|
|
96
|
+
const requestParams = this.requestFactory({
|
|
97
|
+
token: this.settingsService.token,
|
|
98
|
+
changedField: field,
|
|
99
|
+
fields: this.fields,
|
|
100
|
+
form: this.form,
|
|
101
|
+
});
|
|
102
|
+
const encryptedRequest = this.encryptCreditCardService.encryptCreditCard(requestParams);
|
|
103
|
+
return this.xpsApiService
|
|
104
|
+
.directPaymentRequest(encryptedRequest)
|
|
105
|
+
.then((xpsResponse) => {
|
|
106
|
+
const response = this.xpsResponseErrorsMappingService.mapErrors(xpsResponse);
|
|
107
|
+
this.emitFormErrors(response);
|
|
108
|
+
this.emit(response);
|
|
109
|
+
return this.responseFactory(field, response);
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
isReadyField(field) {
|
|
113
|
+
const isSyncEnabled = !!field.javascript?.change;
|
|
114
|
+
const isExistsInForm = !!this.form?.get(field.name);
|
|
115
|
+
return isSyncEnabled && isExistsInForm;
|
|
116
|
+
}
|
|
117
|
+
getPrevFieldSyncState(field) {
|
|
118
|
+
return this.prevFieldSyncStates[field.name];
|
|
119
|
+
}
|
|
120
|
+
setPrevFieldSyncState(field, value, result) {
|
|
121
|
+
this.prevFieldSyncStates[field.name] = { value, result };
|
|
122
|
+
}
|
|
123
|
+
emitFormErrors(response) {
|
|
124
|
+
if (response.errors) {
|
|
125
|
+
const logError = (error) => {
|
|
126
|
+
this.userBehaviourAnalyticsService.send(UserBehaviourEventName.showErrorMessage, userBehaviourEventTypes.manual, { value: String(error.code), extraValue: error.message });
|
|
127
|
+
};
|
|
128
|
+
response.errors.forEach(logError);
|
|
129
|
+
}
|
|
130
|
+
const formErrors = response.errors?.filter((error) => !error.element_name);
|
|
131
|
+
if (formErrors?.length) {
|
|
132
|
+
this.nextActionService.emitFlowUpdates(this.showErrorsActionCreator.getActionData(formErrors));
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
resetFieldSyncTimer(field, timerId) {
|
|
136
|
+
const prevTimerId = this.fieldSyncTimers[field.name];
|
|
137
|
+
if (prevTimerId) {
|
|
138
|
+
clearTimeout(prevTimerId);
|
|
139
|
+
}
|
|
140
|
+
this.fieldSyncTimers[field.name] = timerId;
|
|
141
|
+
}
|
|
142
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: SyncService, deps: [{ token: syncRequestFactoryToken }, { token: syncResponseFactoryToken }, { token: i1.XpsApiService }, { token: i2.NextActionService }, { token: i3.SettingsService }, { token: i4.XpsResponseErrorsMappingService }, { token: i5.EncryptCreditCardService }, { token: i6.ShowErrorsActionCreator }, { token: i7.UserBehaviourAnalyticsService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
143
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: SyncService, providedIn: 'root' }); }
|
|
144
|
+
}
|
|
145
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: SyncService, decorators: [{
|
|
146
|
+
type: Injectable,
|
|
147
|
+
args: [{
|
|
148
|
+
providedIn: 'root',
|
|
149
|
+
}]
|
|
150
|
+
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
151
|
+
type: Inject,
|
|
152
|
+
args: [syncRequestFactoryToken]
|
|
153
|
+
}] }, { type: undefined, decorators: [{
|
|
154
|
+
type: Inject,
|
|
155
|
+
args: [syncResponseFactoryToken]
|
|
156
|
+
}] }, { type: i1.XpsApiService }, { type: i2.NextActionService }, { type: i3.SettingsService }, { type: i4.XpsResponseErrorsMappingService }, { type: i5.EncryptCreditCardService }, { type: i6.ShowErrorsActionCreator }, { type: i7.UserBehaviourAnalyticsService }] });
|
|
157
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3luYy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcGF5bWVudC1jbGllbnQtY29yZS9zcmMvbGliL2NvcmUvcGF5bWVudC9zeW5jL3N5bmMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQW9CLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEUsT0FBTyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUzQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFJaEUsT0FBTyxFQUVMLHVCQUF1QixHQUN4QixNQUFNLDhCQUE4QixDQUFDO0FBRXRDLE9BQU8sRUFFTCx3QkFBd0IsR0FDekIsTUFBTSxnQ0FBZ0MsQ0FBQztBQVN4QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwrREFBK0QsQ0FBQztBQUN2RyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxnRkFBZ0YsQ0FBQzs7Ozs7Ozs7O0FBS3pILE1BQU0sT0FBTyxXQUFZLFNBQVEsZUFBNEI7SUFPM0QsWUFFbUIsY0FBa0MsRUFFbEMsZUFBb0MsRUFDcEMsYUFBNEIsRUFDNUIsaUJBQW9DLEVBQ3BDLGVBQWdDLEVBQ2hDLCtCQUFnRSxFQUNoRSx3QkFBa0QsRUFDbEQsdUJBQWdELEVBQ2hELDZCQUE0RDtRQUU3RSxLQUFLLEVBQUUsQ0FBQztRQVhTLG1CQUFjLEdBQWQsY0FBYyxDQUFvQjtRQUVsQyxvQkFBZSxHQUFmLGVBQWUsQ0FBcUI7UUFDcEMsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUNwQyxvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFDaEMsb0NBQStCLEdBQS9CLCtCQUErQixDQUFpQztR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QixNQUFNOzJCQUFDLHdCQUF3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVW50eXBlZEZvcm1Hcm91cCwgVmFsaWRhdGlvbkVycm9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFNldHRpbmdzU2VydmljZSB9IGZyb20gJy4uLy4uL3NldHRpbmdzL3NldHRpbmdzLnNlcnZpY2UnO1xuaW1wb3J0IHsgRW1pdERhdGFTZXJ2aWNlIH0gZnJvbSAnLi4vZW1pdC1kYXRhLnNlcnZpY2UuYWJzdHJhY3QnO1xuaW1wb3J0IHsgRmllbGQgfSBmcm9tICcuLi9maWVsZC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgWHBzUmVzcG9uc2UgfSBmcm9tICcuLi94cHMtcmVzcG9uc2UuaW50ZXJmYWNlJztcbmltcG9ydCB7IEZpZWxkU3luY1N0YXRlIH0gZnJvbSAnLi9maWVsZC1zeW5jLXN0YXRlLmludGVyZmFjZSc7XG5pbXBvcnQge1xuICBTeW5jUmVxdWVzdEZhY3RvcnksXG4gIHN5bmNSZXF1ZXN0RmFjdG9yeVRva2VuLFxufSBmcm9tICcuL3JlcXVlc3Qvc3luYy1yZXF1ZXN0LnRva2VuJztcbmltcG9ydCB7IFN5bmNSZXNwb25zZSB9IGZyb20gJy4vcmVzcG9uc2Uvc3luYy1yZXNwb25zZS5jbGFzcyc7XG5pbXBvcnQge1xuICBTeW5jUmVzcG9uc2VGYWN0b3J5LFxuICBzeW5jUmVzcG9uc2VGYWN0b3J5VG9rZW4sXG59IGZyb20gJy4vcmVzcG9uc2Uvc3luYy1yZXNwb25zZS50b2tlbic7XG5pbXBvcnQgeyBOZXh0QWN0aW9uU2VydmljZSB9IGZyb20gJy4uL2FjdGlvbnMvbmV4dC1hY3Rpb24uc2VydmljZSc7XG5pbXBvcnQgeyBTaG93RXJyb3JzQWN0aW9uQ3JlYXRvciB9IGZyb20gJy4uL2FjdGlvbnMvc2hvdy1lcnJvcnMvc2hvdy1lcnJvcnMuYWN0aW9uLmNsYXNzJztcbmltcG9ydCB7IFhwc0FwaVNlcnZpY2UgfSBmcm9tICcuLi94cHMtYXBpL3hwcy1hcGkuc2VydmljZSc7XG5pbXBvcnQgeyBGaWVsZEFzeW5jVmFsaWRhdGlvbiB9IGZyb20gJy4vZmllbGQtYXN5bmMtdmFsaWRhdGlvbi5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgRW5jcnlwdENyZWRpdENhcmRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vZW5jcnlwdC1jcmVkaXQtY2FyZC9lbmNyeXB0LWNyZWRpdC1jYXJkLnNlcnZpY2UnO1xuaW1wb3J0IHsgU3luY1JlcXVlc3QgfSBmcm9tICcuL3JlcXVlc3Qvc3luYy1yZXF1ZXN0LmNsYXNzJztcbmltcG9ydCB7IFhwc1Jlc3BvbnNlRXJyb3JzTWFwcGluZ1NlcnZpY2UgfSBmcm9tICcuLi8uLi9lcnJvcnMtbWFwcGluZy94cHMtcmVzcG9uc2UtZXJyb3JzLW1hcHBpbmcuc2VydmljZSc7XG5pbXBvcnQgeyBVc2VyQmVoYXZpb3VyQW5hbHl0aWNzU2VydmljZSB9IGZyb20gJy4uLy4uL3VzZXItYmVoYXZpb3VyLWFuYWx5dGljcy91c2VyLWJlaGF2aW91ci1hbmFseXRpY3Muc2VydmljZSc7XG5pbXBvcnQgeyBVc2VyQmVoYXZpb3VyRXZlbnROYW1lIH0gZnJvbSAnLi4vLi4vdXNlci1iZWhhdmlvdXItYW5hbHl0aWNzL3VzZXItYmVoYXZpb3VyLWV2ZW50LW5hbWUuZW51bSc7XG5pbXBvcnQgeyB1c2VyQmVoYXZpb3VyRXZlbnRUeXBlcyB9IGZyb20gJy4uLy4uL3VzZXItYmVoYXZpb3VyLWFuYWx5dGljcy91c2VyLWJlaGF2aW91ci1ldmVudC91c2VyLWJlaGF2aW91ci1ldmVudC10eXBlcyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBTeW5jU2VydmljZSBleHRlbmRzIEVtaXREYXRhU2VydmljZTxYcHNSZXNwb25zZT4ge1xuICBwcml2YXRlIHByZXZGaWVsZFN5bmNTdGF0ZXM6IHsgW2ZpZWxkTmFtZTogc3RyaW5nXTogRmllbGRTeW5jU3RhdGUgfSA9IHt9O1xuICBwcml2YXRlIGZvcm06IFVudHlwZWRGb3JtR3JvdXAgPSBuZXcgVW50eXBlZEZvcm1Hcm91cCh7fSk7XG4gIHByaXZhdGUgZmllbGRzOiBGaWVsZFtdID0gW107XG4gIHByaXZhdGUgZmllbGRTeW5jVGltZXJzOiB7IFtmaWVsZE5hbWU6IHN0cmluZ106IG51bWJlciB9ID0ge307XG4gIHByaXZhdGUgcmVhZG9ubHkgZmllbGRBc3luY1ZhbGlkYXRpb24gPSBuZXcgU3ViamVjdDxGaWVsZEFzeW5jVmFsaWRhdGlvbj4oKTtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgQEluamVjdChzeW5jUmVxdWVzdEZhY3RvcnlUb2tlbilcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJlcXVlc3RGYWN0b3J5OiBTeW5jUmVxdWVzdEZhY3RvcnksXG4gICAgQEluamVjdChzeW5jUmVzcG9uc2VGYWN0b3J5VG9rZW4pXG4gICAgcHJpdmF0ZSByZWFkb25seSByZXNwb25zZUZhY3Rvcnk6IFN5bmNSZXNwb25zZUZhY3RvcnksXG4gICAgcHJpdmF0ZSByZWFkb25seSB4cHNBcGlTZXJ2aWNlOiBYcHNBcGlTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgbmV4dEFjdGlvblNlcnZpY2U6IE5leHRBY3Rpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgc2V0dGluZ3NTZXJ2aWNlOiBTZXR0aW5nc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSB4cHNSZXNwb25zZUVycm9yc01hcHBpbmdTZXJ2aWNlOiBYcHNSZXNwb25zZUVycm9yc01hcHBpbmdTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZW5jcnlwdENyZWRpdENhcmRTZXJ2aWNlOiBFbmNyeXB0Q3JlZGl0Q2FyZFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBzaG93RXJyb3JzQWN0aW9uQ3JlYXRvcjogU2hvd0Vycm9yc0FjdGlvbkNyZWF0b3IsXG4gICAgcHJpdmF0ZSByZWFkb25seSB1c2VyQmVoYXZpb3VyQW5hbHl0aWNzU2VydmljZTogVXNlckJlaGF2aW91ckFuYWx5dGljc1NlcnZpY2VcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZmllbGRBc3luY1ZhbGlkYXRpb24kKCk6IE9ic2VydmFibGU8RmllbGRBc3luY1ZhbGlkYXRpb24+IHtcbiAgICByZXR1cm4gdGhpcy5maWVsZEFzeW5jVmFsaWRhdGlvbi5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXR1cChmb3JtOiBVbnR5cGVkRm9ybUdyb3VwLCBmaWVsZHM6IEZpZWxkW10pOiB2b2lkIHtcbiAgICB0aGlzLnJlc2V0KCk7XG5cbiAgICB0aGlzLmZvcm0gPSBmb3JtO1xuICAgIHRoaXMuZmllbGRzID0gZmllbGRzO1xuICB9XG5cbiAgcHVibGljIHJlc2V0KCk6IHZvaWQge1xuICAgIHRoaXMucHJldkZpZWxkU3luY1N0YXRlcyA9IHt9O1xuICAgIHRoaXMuZm9ybSA9IG5ldyBVbnR5cGVkRm9ybUdyb3VwKHt9KTtcbiAgICB0aGlzLmZpZWxkcyA9IFtdO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIHZhbGlkYXRlKFxuICAgIGZpZWxkOiBGaWVsZCxcbiAgICBkZWxheSA9IE51bWJlcignNzUwJylcbiAgKTogUHJvbWlzZTxWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbD4ge1xuICAgIGlmICghdGhpcy5pc1JlYWR5RmllbGQoZmllbGQpKSB7XG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG51bGwpO1xuICAgIH1cblxuICAgIGNvbnN0IGNvbnRyb2wgPSB0aGlzLmZvcm0uZ2V0KGZpZWxkLm5hbWUpO1xuICAgIGNvbnN0IHZhbHVlID0gY29udHJvbD8udmFsdWU7XG4gICAgY29uc3QgcHJldkZpZWxkU3RhdGUgPSB0aGlzLmdldFByZXZGaWVsZFN5bmNTdGF0ZShmaWVsZCk7XG5cbiAgICBjb25zdCBpc0luaXRpYWxWYWx1ZSA9IHZhbHVlID09PSBmaWVsZC52YWx1ZSAmJiAhcHJldkZpZWxkU3RhdGU7XG5cbiAgICBpZiAoaXNJbml0aWFsVmFsdWUpIHtcbiAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUobnVsbCk7XG4gICAgfVxuXG4gICAgaWYgKHByZXZGaWVsZFN0YXRlICYmIHZhbHVlID09PSBwcmV2RmllbGRTdGF0ZS52YWx1ZSkge1xuICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShwcmV2RmllbGRTdGF0ZS5yZXN1bHQpLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgIHJldHVybiByZXNwb25zZT8uZXJyb3IgPz8gbnVsbDtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGNvbnN0IHVwZGF0ZUZpZWxkU3RhdGUgPSBhc3luYyAoKTogUHJvbWlzZTxcbiAgICAgIHN0cmluZyB8IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsXG4gICAgPiA9PiB7XG4gICAgICBjb25zdCByZXF1ZXN0UHJvbWlzZSA9IHRoaXMucmVxdWVzdChmaWVsZCk7XG5cbiAgICAgIHRoaXMuc2V0UHJldkZpZWxkU3luY1N0YXRlKGZpZWxkLCB2YWx1ZSwgcmVxdWVzdFByb21pc2UpO1xuXG4gICAgICByZXR1cm4gcmVxdWVzdFByb21pc2UudGhlbigocmVzcG9uc2U6IFN5bmNSZXNwb25zZSkgPT4ge1xuICAgICAgICB0aGlzLmZpZWxkQXN5bmNWYWxpZGF0aW9uLm5leHQoe1xuICAgICAgICAgIHZhbHVlLFxuICAgICAgICAgIGZpZWxkLFxuICAgICAgICAgIHJlc3BvbnNlLFxuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4gcmVzcG9uc2UuZXJyb3IgPz8gbnVsbDtcbiAgICAgIH0pO1xuICAgIH07XG5cbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcbiAgICAgIGlmIChkZWxheSkge1xuICAgICAgICBjb25zdCB0aW1lcklkID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgaWYgKHZhbHVlICE9PSBjb250cm9sPy52YWx1ZSkge1xuICAgICAgICAgICAgcmV0dXJuIHJlc29sdmUobnVsbCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdm9pZCB1cGRhdGVGaWVsZFN0YXRlKCkudGhlbihcbiAgICAgICAgICAgIChlcnJvcnM6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsIHwgc3RyaW5nKSA9PlxuICAgICAgICAgICAgICByZXNvbHZlKGVycm9ycyBhcyBWYWxpZGF0aW9uRXJyb3JzKVxuICAgICAgICAgICk7XG4gICAgICAgIH0sIGRlbGF5KTtcblxuICAgICAgICB0aGlzLnJlc2V0RmllbGRTeW5jVGltZXIoZmllbGQsIE51bWJlcih0aW1lcklkKSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB2b2lkIHVwZGF0ZUZpZWxkU3RhdGUoKS50aGVuKFxuICAgICAgICAgIChlcnJvcnM6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsIHwgc3RyaW5nKSA9PlxuICAgICAgICAgICAgcmVzb2x2ZShlcnJvcnMgYXMgVmFsaWRhdGlvbkVycm9ycylcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRTeW5jVmFsaWRhdGlvbkVycm9ycyhmaWVsZDogRmllbGQpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCB7XG4gICAgY29uc3QgY29udHJvbCA9IHRoaXMuZm9ybS5nZXQoZmllbGQubmFtZSk7XG4gICAgcmV0dXJuIGNvbnRyb2w/LmVycm9ycyA/PyBudWxsO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIHJlcXVlc3QoZmllbGQ6IEZpZWxkKTogUHJvbWlzZTxTeW5jUmVzcG9uc2U+IHtcbiAgICBjb25zdCByZXF1ZXN0UGFyYW1zID0gdGhpcy5yZXF1ZXN0RmFjdG9yeSh7XG4gICAgICB0b2tlbjogdGhpcy5zZXR0aW5nc1NlcnZpY2UudG9rZW4sXG4gICAgICBjaGFuZ2VkRmllbGQ6IGZpZWxkLFxuICAgICAgZmllbGRzOiB0aGlzLmZpZWxkcyxcbiAgICAgIGZvcm06IHRoaXMuZm9ybSxcbiAgICB9KTtcblxuICAgIGNvbnN0IGVuY3J5cHRlZFJlcXVlc3QgPVxuICAgICAgdGhpcy5lbmNyeXB0Q3JlZGl0Q2FyZFNlcnZpY2UuZW5jcnlwdENyZWRpdENhcmQ8U3luY1JlcXVlc3Q+KFxuICAgICAgICByZXF1ZXN0UGFyYW1zXG4gICAgICApO1xuXG4gICAgcmV0dXJuIHRoaXMueHBzQXBpU2VydmljZVxuICAgICAgLmRpcmVjdFBheW1lbnRSZXF1ZXN0KGVuY3J5cHRlZFJlcXVlc3QpXG4gICAgICAudGhlbigoeHBzUmVzcG9uc2U6IFhwc1Jlc3BvbnNlKSA9PiB7XG4gICAgICAgIGNvbnN0IHJlc3BvbnNlID1cbiAgICAgICAgICB0aGlzLnhwc1Jlc3BvbnNlRXJyb3JzTWFwcGluZ1NlcnZpY2UubWFwRXJyb3JzKHhwc1Jlc3BvbnNlKTtcblxuICAgICAgICB0aGlzLmVtaXRGb3JtRXJyb3JzKHJlc3BvbnNlKTtcbiAgICAgICAgdGhpcy5lbWl0KHJlc3BvbnNlKTtcbiAgICAgICAgcmV0dXJuIHRoaXMucmVzcG9uc2VGYWN0b3J5KGZpZWxkLCByZXNwb25zZSk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgaXNSZWFkeUZpZWxkKGZpZWxkOiBGaWVsZCk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IGlzU3luY0VuYWJsZWQgPSAhIWZpZWxkLmphdmFzY3JpcHQ/LmNoYW5nZTtcbiAgICBjb25zdCBpc0V4aXN0c0luRm9ybSA9ICEhdGhpcy5mb3JtPy5nZXQoZmllbGQubmFtZSk7XG5cbiAgICByZXR1cm4gaXNTeW5jRW5hYmxlZCAmJiBpc0V4aXN0c0luRm9ybTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0UHJldkZpZWxkU3luY1N0YXRlKGZpZWxkOiBGaWVsZCk6IEZpZWxkU3luY1N0YXRlIHtcbiAgICByZXR1cm4gdGhpcy5wcmV2RmllbGRTeW5jU3RhdGVzW2ZpZWxkLm5hbWVdO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRQcmV2RmllbGRTeW5jU3RhdGUoXG4gICAgZmllbGQ6IEZpZWxkLFxuICAgIHZhbHVlOiB1bmtub3duLFxuICAgIHJlc3VsdDogUHJvbWlzZTxTeW5jUmVzcG9uc2U+XG4gICk6IHZvaWQge1xuICAgIHRoaXMucHJldkZpZWxkU3luY1N0YXRlc1tmaWVsZC5uYW1lXSA9IHsgdmFsdWUsIHJlc3VsdCB9O1xuICB9XG5cbiAgcHJpdmF0ZSBlbWl0Rm9ybUVycm9ycyhyZXNwb25zZTogWHBzUmVzcG9uc2UpOiB2b2lkIHtcbiAgICBpZiAocmVzcG9uc2UuZXJyb3JzKSB7XG4gICAgICBjb25zdCBsb2dFcnJvciA9IChlcnJvcjogeyBjb2RlOiBudW1iZXI7IG1lc3NhZ2U6IHN0cmluZyB9KTogdm9pZCA9PiB7XG4gICAgICAgIHRoaXMudXNlckJlaGF2aW91ckFuYWx5dGljc1NlcnZpY2Uuc2VuZChcbiAgICAgICAgICBVc2VyQmVoYXZpb3VyRXZlbnROYW1lLnNob3dFcnJvck1lc3NhZ2UsXG4gICAgICAgICAgdXNlckJlaGF2aW91ckV2ZW50VHlwZXMubWFudWFsLFxuICAgICAgICAgIHsgdmFsdWU6IFN0cmluZyhlcnJvci5jb2RlKSwgZXh0cmFWYWx1ZTogZXJyb3IubWVzc2FnZSB9XG4gICAgICAgICk7XG4gICAgICB9O1xuXG4gICAgICByZXNwb25zZS5lcnJvcnMuZm9yRWFjaChsb2dFcnJvcik7XG4gICAgfVxuXG4gICAgY29uc3QgZm9ybUVycm9ycyA9IHJlc3BvbnNlLmVycm9ycz8uZmlsdGVyKChlcnJvcikgPT4gIWVycm9yLmVsZW1lbnRfbmFtZSk7XG5cbiAgICBpZiAoZm9ybUVycm9ycz8ubGVuZ3RoKSB7XG4gICAgICB0aGlzLm5leHRBY3Rpb25TZXJ2aWNlLmVtaXRGbG93VXBkYXRlcyhcbiAgICAgICAgdGhpcy5zaG93RXJyb3JzQWN0aW9uQ3JlYXRvci5nZXRBY3Rpb25EYXRhKGZvcm1FcnJvcnMpXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgcmVzZXRGaWVsZFN5bmNUaW1lcihmaWVsZDogRmllbGQsIHRpbWVySWQ6IG51bWJlcik6IHZvaWQge1xuICAgIGNvbnN0IHByZXZUaW1lcklkOiBudW1iZXIgPSB0aGlzLmZpZWxkU3luY1RpbWVyc1tmaWVsZC5uYW1lXTtcblxuICAgIGlmIChwcmV2VGltZXJJZCkge1xuICAgICAgY2xlYXJUaW1lb3V0KHByZXZUaW1lcklkKTtcbiAgICB9XG5cbiAgICB0aGlzLmZpZWxkU3luY1RpbWVyc1tmaWVsZC5uYW1lXSA9IHRpbWVySWQ7XG4gIH1cbn1cbiJdfQ==
|