@xsolla/payment-client-core 0.2.20 → 0.2.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/{esm2022 → esm2020}/lib/core/combined-payment-methods/combined-payment-methods.service.mjs +5 -5
- package/{esm2022 → esm2020}/lib/core/countries-api/countries-api.service.mjs +5 -5
- package/{esm2022 → esm2020}/lib/core/country/country.service.mjs +5 -5
- package/{esm2022 → esm2020}/lib/core/credit-card/credit-card.service.mjs +4 -4
- package/esm2020/lib/core/device-finger-print/device-finger-print.service.mjs +67 -0
- package/{esm2022 → esm2020}/lib/core/edit-saved-methods/edit-saved-methods.service.mjs +5 -5
- package/esm2020/lib/core/encrypt-credit-card/encrypt-credit-card.service.mjs +72 -0
- package/esm2020/lib/core/errors-mapping/xps-response-errors-mapping.service.mjs +52 -0
- package/esm2020/lib/core/exceptions-handling/elk/elk-logger.service.mjs +120 -0
- package/esm2020/lib/core/exceptions-handling/errors/http-error.class.mjs +40 -0
- package/esm2020/lib/core/exceptions-handling/errors/tagged-error.class.mjs +16 -0
- package/{esm2022 → esm2020}/lib/core/exceptions-handling/http-interceptor/http-exceptions.interceptor.mjs +5 -5
- package/esm2020/lib/core/http/secure-api/secure-api.service.mjs +55 -0
- package/{esm2022 → esm2020}/lib/core/legal/disclaimer.service.mjs +4 -4
- package/{esm2022 → esm2020}/lib/core/legal/legal.service.mjs +5 -5
- package/esm2020/lib/core/legal/refund-policy.service.mjs +30 -0
- package/esm2020/lib/core/legal/secure-connection.service.mjs +31 -0
- package/{esm2022 → esm2020}/lib/core/payment/actions/check-status/check-status.action.class.mjs +4 -4
- package/esm2020/lib/core/payment/actions/next-action.service.mjs +61 -0
- package/esm2020/lib/core/payment/actions/redirect/redirect.action.class.mjs +60 -0
- package/{esm2022 → esm2020}/lib/core/payment/actions/show-errors/show-errors.action.class.mjs +4 -4
- package/esm2020/lib/core/payment/actions/show-fields/show-fields.action.class.mjs +37 -0
- package/{esm2022 → esm2020}/lib/core/payment/actions/show-mobile-payment-screen/show-mobile-payment-screen.action.class.mjs +4 -4
- package/{esm2022 → esm2020}/lib/core/payment/actions/show-qr-code/show-qr-code.action.class.mjs +4 -4
- package/{esm2022 → esm2020}/lib/core/payment/actions/special-button/special-button.action.class.mjs +4 -4
- package/esm2020/lib/core/payment/actions/status-updated/status-updated.action.class.mjs +38 -0
- package/{esm2022 → esm2020}/lib/core/payment/actions/three-ds/three-ds.action.class.mjs +4 -4
- package/esm2020/lib/core/payment/config/config.service.mjs +37 -0
- package/{esm2022 → esm2020}/lib/core/payment/credit-card-state/credit-card-state.service.mjs +4 -4
- package/esm2020/lib/core/payment/finance-details/finance-details.service.mjs +38 -0
- package/{esm2022 → esm2020}/lib/core/payment/finance-details/status/status-finance-details-adapter.service.mjs +5 -5
- package/esm2020/lib/core/payment/finance-details/summary/summary-finance-details-adapter.service.mjs +264 -0
- package/esm2020/lib/core/payment/form/controls/control-config.service.mjs +46 -0
- package/{esm2022 → esm2020}/lib/core/payment/form/converters/birth-date/birth-date.converter.mjs +5 -5
- package/{esm2022 → esm2020}/lib/core/payment/form/converters/card-month/card-month.converter.mjs +5 -5
- package/{esm2022 → esm2020}/lib/core/payment/form/converters/card-number/card-number.converter.mjs +5 -5
- package/{esm2022 → esm2020}/lib/core/payment/form/converters/card-year/card-year.converter.mjs +5 -5
- package/{esm2022 → esm2020}/lib/core/payment/form/converters/cardholder-name/cardholder-name.converter.mjs +5 -5
- package/esm2020/lib/core/payment/form/converters/checkbox/checkbox.converter.mjs +33 -0
- package/esm2020/lib/core/payment/form/converters/converter.abstract.mjs +76 -0
- package/{esm2022 → esm2020}/lib/core/payment/form/converters/coupon/coupon.converter.mjs +5 -5
- package/{esm2022 → esm2020}/lib/core/payment/form/converters/cpf-name/cpf-name.converter.mjs +5 -5
- package/{esm2022 → esm2020}/lib/core/payment/form/converters/cpf-number/cpf-number.converter.mjs +5 -5
- package/esm2020/lib/core/payment/form/converters/cvv/cvv.converter.mjs +72 -0
- package/{esm2022 → esm2020}/lib/core/payment/form/converters/email/email.converter.mjs +5 -5
- package/{esm2022 → esm2020}/lib/core/payment/form/converters/phone.converter.mjs +5 -5
- package/{esm2022 → esm2020}/lib/core/payment/form/converters/pin/pin.converter.mjs +5 -5
- package/{esm2022 → esm2020}/lib/core/payment/form/converters/pricepoint/pricepoint.converter.mjs +5 -5
- package/{esm2022 → esm2020}/lib/core/payment/form/converters/radio-group/radio-group.converter.mjs +5 -5
- package/{esm2022 → esm2020}/lib/core/payment/form/converters/select/select.converter.mjs +5 -5
- package/esm2020/lib/core/payment/form/converters/street-number/street-number.converter.mjs +28 -0
- package/{esm2022 → esm2020}/lib/core/payment/form/converters/text/text.converter.mjs +5 -5
- package/esm2020/lib/core/payment/form/converters/zip/zip.converter.mjs +64 -0
- package/{esm2022 → esm2020}/lib/core/payment/form/form.module.mjs +33 -33
- package/esm2020/lib/core/payment/form/form.service.mjs +49 -0
- package/esm2020/lib/core/payment/form/validators/birth-date/birth-date.validator.mjs +37 -0
- package/esm2020/lib/core/payment/form/validators/card-month/card-month.validator.mjs +37 -0
- package/esm2020/lib/core/payment/form/validators/card-year/card-year.validator.mjs +34 -0
- package/esm2020/lib/core/payment/form/validators/convert.function.mjs +15 -0
- package/esm2020/lib/core/payment/form/validators/credit-card-length/credit-card-min-length.validator.mjs +32 -0
- package/esm2020/lib/core/payment/form/validators/luhn-formula-validator/luhn-formula.validator.mjs +40 -0
- package/{esm2022 → esm2020}/lib/core/payment/form/validators/validators.module.mjs +5 -5
- package/esm2020/lib/core/payment/form-messages/form-messages.service.mjs +23 -0
- package/esm2020/lib/core/payment/initialize/initialize.service.mjs +85 -0
- package/esm2020/lib/core/payment/initialize/response/initialize-response.class.mjs +43 -0
- package/esm2020/lib/core/payment/payment.service.mjs +369 -0
- package/{esm2022 → esm2020}/lib/core/payment/status/check-status/check-status.service.mjs +6 -6
- package/{esm2022 → esm2020}/lib/core/payment/status/check-status/request/check-status-request.class.mjs +1 -1
- package/esm2020/lib/core/payment/status/listen-status/listen-status.service.mjs +124 -0
- package/{esm2022 → esm2020}/lib/core/payment/status/save-payment-method-status/api/saved-payment-account-changes.service.mjs +5 -5
- package/esm2020/lib/core/payment/status/save-payment-method-status/save-payment-method-status.service.mjs +121 -0
- package/esm2020/lib/core/payment/status/status-request/request/status-request.class.mjs +22 -0
- package/esm2020/lib/core/payment/status/status-request/response/status-response.class.mjs +98 -0
- package/{esm2022 → esm2020}/lib/core/payment/status/status-request/status-request.service.mjs +6 -6
- package/esm2020/lib/core/payment/status/status.service.mjs +75 -0
- package/esm2020/lib/core/payment/status/websocket-status/websocket-status.service.mjs +76 -0
- package/esm2020/lib/core/payment/submit/request/submit-request.class.mjs +24 -0
- package/esm2020/lib/core/payment/submit/response/submit-response.class.mjs +31 -0
- package/esm2020/lib/core/payment/submit/submit.service.mjs +78 -0
- package/esm2020/lib/core/payment/sync/request/sync-request.class.mjs +31 -0
- package/esm2020/lib/core/payment/sync/response/sync-response.class.mjs +17 -0
- package/esm2020/lib/core/payment/sync/sync.service.mjs +157 -0
- package/esm2020/lib/core/payment/three-ds/api/notify-dfp-status/notify-dfp-status.service.mjs +49 -0
- package/esm2020/lib/core/payment/three-ds/api/status-three-ds/status-three-ds.service.mjs +60 -0
- package/esm2020/lib/core/payment/three-ds/dfp-collect/dfp-collect.service.mjs +105 -0
- package/esm2020/lib/core/payment/three-ds/reinsurance-check/reinsurance-check.service.mjs +41 -0
- package/esm2020/lib/core/payment/three-ds/three-ds-20/three-ds20.service.mjs +109 -0
- package/esm2020/lib/core/payment/three-ds/three-ds.service.mjs +42 -0
- package/esm2020/lib/core/payment/xps-api/xps-api.service.mjs +85 -0
- package/esm2020/lib/core/payment/xps-api-part-request.abstract.mjs +8 -0
- package/esm2020/lib/core/payment-methods/payment-methods.service.mjs +75 -0
- package/esm2020/lib/core/performance/performance.service.mjs +111 -0
- package/esm2020/lib/core/performance/xhr-action.service.mjs +114 -0
- package/esm2020/lib/core/saved-methods/saved-methods.service.mjs +54 -0
- package/esm2020/lib/core/sdk-payment-systems/apple-pay/apple-pay.service.mjs +268 -0
- package/esm2020/lib/core/sdk-payment-systems/google-pay/google-pay.service.mjs +177 -0
- package/esm2020/lib/core/sdk-payment-systems/payment-systems/payment-system-processing.service.mjs +84 -0
- package/esm2020/lib/core/session/session.service.mjs +57 -0
- package/esm2020/lib/core/settings/settings.service.mjs +92 -0
- package/esm2020/lib/core/url/url.service.mjs +34 -0
- package/esm2020/lib/core/user-agent/user-agent.service.mjs +211 -0
- package/esm2020/lib/core/user-balance/user-balance.service.mjs +53 -0
- package/esm2020/lib/core/user-behaviour-analytics/event-builder/event-builder.service.mjs +144 -0
- package/esm2020/lib/core/user-behaviour-analytics/user-behaviour-analytics.service.mjs +158 -0
- package/esm2020/lib/core/web-socket/centrifugo-web-socket.service.mjs +200 -0
- package/esm2020/lib/core/web-socket/nchan-web-socket.service.mjs +116 -0
- package/esm2020/lib/core/web-socket/web-socket.factory.mjs +28 -0
- package/esm2020/lib/core-library.module.mjs +92 -0
- package/{esm2022 → esm2020}/lib/core-library.service.mjs +5 -5
- package/{esm2022 → esm2020}/lib/shared/pipes/pipes.module.mjs +5 -5
- package/esm2020/lib/shared/pipes/unescape-html/unescape-html.pipe.mjs +23 -0
- package/fesm2015/xsolla-payment-client-core.mjs +8138 -0
- package/fesm2015/xsolla-payment-client-core.mjs.map +1 -0
- package/{fesm2022 → fesm2020}/xsolla-payment-client-core.mjs +460 -460
- package/fesm2020/xsolla-payment-client-core.mjs.map +1 -0
- package/package.json +16 -10
- package/xsolla-payment-client-core-0.2.21.tgz +0 -0
- package/esm2022/lib/core/device-finger-print/device-finger-print.service.mjs +0 -67
- package/esm2022/lib/core/encrypt-credit-card/encrypt-credit-card.service.mjs +0 -72
- package/esm2022/lib/core/errors-mapping/xps-response-errors-mapping.service.mjs +0 -52
- package/esm2022/lib/core/exceptions-handling/elk/elk-logger.service.mjs +0 -120
- package/esm2022/lib/core/exceptions-handling/errors/http-error.class.mjs +0 -40
- package/esm2022/lib/core/exceptions-handling/errors/tagged-error.class.mjs +0 -16
- package/esm2022/lib/core/http/secure-api/secure-api.service.mjs +0 -55
- package/esm2022/lib/core/legal/refund-policy.service.mjs +0 -30
- package/esm2022/lib/core/legal/secure-connection.service.mjs +0 -31
- package/esm2022/lib/core/payment/actions/next-action.service.mjs +0 -61
- package/esm2022/lib/core/payment/actions/redirect/redirect.action.class.mjs +0 -60
- package/esm2022/lib/core/payment/actions/show-fields/show-fields.action.class.mjs +0 -34
- package/esm2022/lib/core/payment/actions/status-updated/status-updated.action.class.mjs +0 -38
- package/esm2022/lib/core/payment/config/config.service.mjs +0 -37
- package/esm2022/lib/core/payment/finance-details/finance-details.service.mjs +0 -38
- package/esm2022/lib/core/payment/finance-details/summary/summary-finance-details-adapter.service.mjs +0 -264
- package/esm2022/lib/core/payment/form/controls/control-config.service.mjs +0 -46
- package/esm2022/lib/core/payment/form/converters/checkbox/checkbox.converter.mjs +0 -33
- package/esm2022/lib/core/payment/form/converters/converter.abstract.mjs +0 -76
- package/esm2022/lib/core/payment/form/converters/cvv/cvv.converter.mjs +0 -72
- package/esm2022/lib/core/payment/form/converters/street-number/street-number.converter.mjs +0 -28
- package/esm2022/lib/core/payment/form/converters/zip/zip.converter.mjs +0 -64
- package/esm2022/lib/core/payment/form/form.service.mjs +0 -49
- package/esm2022/lib/core/payment/form/validators/birth-date/birth-date.validator.mjs +0 -37
- package/esm2022/lib/core/payment/form/validators/card-month/card-month.validator.mjs +0 -37
- package/esm2022/lib/core/payment/form/validators/card-year/card-year.validator.mjs +0 -34
- package/esm2022/lib/core/payment/form/validators/convert.function.mjs +0 -15
- package/esm2022/lib/core/payment/form/validators/credit-card-length/credit-card-min-length.validator.mjs +0 -32
- package/esm2022/lib/core/payment/form/validators/luhn-formula-validator/luhn-formula.validator.mjs +0 -40
- package/esm2022/lib/core/payment/form-messages/form-messages.service.mjs +0 -26
- package/esm2022/lib/core/payment/initialize/initialize.service.mjs +0 -85
- package/esm2022/lib/core/payment/initialize/response/initialize-response.class.mjs +0 -43
- package/esm2022/lib/core/payment/payment.service.mjs +0 -369
- package/esm2022/lib/core/payment/status/listen-status/listen-status.service.mjs +0 -124
- package/esm2022/lib/core/payment/status/save-payment-method-status/save-payment-method-status.service.mjs +0 -121
- package/esm2022/lib/core/payment/status/status-request/request/status-request.class.mjs +0 -22
- package/esm2022/lib/core/payment/status/status-request/response/status-response.class.mjs +0 -98
- package/esm2022/lib/core/payment/status/status.service.mjs +0 -75
- package/esm2022/lib/core/payment/status/websocket-status/websocket-status.service.mjs +0 -76
- package/esm2022/lib/core/payment/submit/request/submit-request.class.mjs +0 -24
- package/esm2022/lib/core/payment/submit/response/submit-response.class.mjs +0 -31
- package/esm2022/lib/core/payment/submit/submit.service.mjs +0 -78
- package/esm2022/lib/core/payment/sync/request/sync-request.class.mjs +0 -31
- package/esm2022/lib/core/payment/sync/response/sync-response.class.mjs +0 -17
- package/esm2022/lib/core/payment/sync/sync.service.mjs +0 -157
- package/esm2022/lib/core/payment/three-ds/api/notify-dfp-status/notify-dfp-status.service.mjs +0 -49
- package/esm2022/lib/core/payment/three-ds/api/status-three-ds/status-three-ds.service.mjs +0 -60
- package/esm2022/lib/core/payment/three-ds/dfp-collect/dfp-collect.service.mjs +0 -105
- package/esm2022/lib/core/payment/three-ds/reinsurance-check/reinsurance-check.service.mjs +0 -41
- package/esm2022/lib/core/payment/three-ds/three-ds-20/three-ds20.service.mjs +0 -109
- package/esm2022/lib/core/payment/three-ds/three-ds.service.mjs +0 -42
- package/esm2022/lib/core/payment/xps-api/xps-api.service.mjs +0 -85
- package/esm2022/lib/core/payment/xps-api-part-request.abstract.mjs +0 -8
- package/esm2022/lib/core/payment-methods/payment-methods.service.mjs +0 -75
- package/esm2022/lib/core/performance/performance.service.mjs +0 -111
- package/esm2022/lib/core/performance/xhr-action.service.mjs +0 -114
- package/esm2022/lib/core/saved-methods/saved-methods.service.mjs +0 -54
- package/esm2022/lib/core/sdk-payment-systems/apple-pay/apple-pay.service.mjs +0 -268
- package/esm2022/lib/core/sdk-payment-systems/google-pay/google-pay.service.mjs +0 -177
- package/esm2022/lib/core/sdk-payment-systems/payment-systems/payment-system-processing.service.mjs +0 -84
- package/esm2022/lib/core/session/session.service.mjs +0 -57
- package/esm2022/lib/core/settings/settings.service.mjs +0 -92
- package/esm2022/lib/core/url/url.service.mjs +0 -34
- package/esm2022/lib/core/user-agent/user-agent.service.mjs +0 -211
- package/esm2022/lib/core/user-balance/user-balance.service.mjs +0 -53
- package/esm2022/lib/core/user-behaviour-analytics/event-builder/event-builder.service.mjs +0 -144
- package/esm2022/lib/core/user-behaviour-analytics/user-behaviour-analytics.service.mjs +0 -158
- package/esm2022/lib/core/web-socket/centrifugo-web-socket.service.mjs +0 -200
- package/esm2022/lib/core/web-socket/nchan-web-socket.service.mjs +0 -116
- package/esm2022/lib/core/web-socket/web-socket.factory.mjs +0 -28
- package/esm2022/lib/core-library.module.mjs +0 -92
- package/esm2022/lib/shared/pipes/unescape-html/unescape-html.pipe.mjs +0 -23
- package/fesm2022/xsolla-payment-client-core.mjs.map +0 -1
- package/xsolla-payment-client-core-0.2.20.tgz +0 -0
- /package/{esm2022 → esm2020}/lib/core/agreementsGroup.const.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/boolean-number.enum.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/combined-payment-methods/combined-payment-methods.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/countries-api/country-response.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/countries-api/country.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/country/country-iso-code.enum.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/credit-card/credit-card-settings.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/credit-card/credit-card-types.enum.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/credit-card/credit-card.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/credit-card/credit-cards-map.const.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/credit-card/default-mask.const.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/credit-card/four-block-mask.const.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/credit-card/ordered-cards-settings.const.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/credit-card/types/american-express.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/credit-card/types/aura.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/credit-card/types/china-union-pay.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/credit-card/types/dankort.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/credit-card/types/default-card.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/credit-card/types/diners-clubs.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/credit-card/types/discover.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/credit-card/types/elo.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/credit-card/types/hipercard.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/credit-card/types/jcb.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/credit-card/types/maestro.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/credit-card/types/mastercard.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/credit-card/types/mir.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/credit-card/types/naranja.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/credit-card/types/postepay.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/credit-card/types/visa.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/deep-readonly.type.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/device-finger-print/hash.type.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/edit-saved-methods/delete-method-response.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/encrypt-credit-card/encrypted-card.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/encrypt-credit-card/open-card.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/errors-mapping/card-number-sanction-error-codes.const.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/errors-mapping/field-special-errors-map.const.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/exceptions-handling/elk/additional-info.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/exceptions-handling/elk/error-without-meta-fields.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/exceptions-handling/elk/log-message.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/exceptions-handling/errors/api-error.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/exceptions-handling/errors/app-error.class.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/exceptions-handling/errors/elk-error-types.enum.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/exceptions-handling/errors/encrypt-card-error.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/exceptions-handling/errors/response-error.class.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/exceptions-handling/errors/terminal-error.class.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/exceptions-handling/errors/token-error.class.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/exceptions-handling/errors/ws-error.class.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/exceptions-handling/http-interceptor/http-error-data.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/exceptions-handling/http-interceptor/http-error-response-data.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/extended-window.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/http/secure-api/api-url.const.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/http/secure-api/options.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/legal/legal.component.config.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/actions/action.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/actions/check-status/check-status.action.type.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/actions/next-action.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/actions/next-actions.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/actions/redirect/pay-station4-url.const.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/actions/redirect/ps4-pages/pages-payment-methods-id.const.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/actions/redirect/ps4-pages/pages-routes.const.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/actions/redirect/redirect.action.type.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/actions/show-errors/show-errors.action.type.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/actions/show-fields/show-fields.action.type.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/actions/show-mobile-payment-screen/show-mobile-payment-screen.action.type.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/actions/show-qr-code/show-qr-code.action.type.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/actions/special-button/special-button.action.type.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/actions/status-updated/status-updated.action.type.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/actions/three-ds/three-ds.action.type.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/checkout-item.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/credit-card-payment-methods-id.variable.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/credit-card-state/credit-card-state.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/emit-data.service.abstract.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/field-names.enum.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/field.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/finance-details/cart-item.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/finance-details/cart-line.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/finance-details/cart-summary.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/finance-details/finance-details.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/finance-details/price.helpers.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/finance-details/price.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/finance-details/status/field-with-amount-and-currency.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/finance-details/status/fields-with-currency.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/finance-details/status/finance-info.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/finance-details/summary/default-image-patterns.const.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/finance-details/summary/sales-tax-details-key.enum.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/finance-details/vat-details-key.enum.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/form/common-control-config.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/form/control-status.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/form/controls/card-number/card-number-control.config.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/form/controls/checkbox/checkbox-control.config.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/form/controls/control-config.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/form/controls/control-type.type.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/form/controls/coupon/coupon-control.config.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/form/controls/phone-control.config.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/form/controls/radio-control/radio-control.config.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/form/controls/radio-control/radio-option.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/form/controls/search-select/search-select-option.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/form/controls/search-select/select-control.config.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/form/controls/search-select/select-option.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/form/controls/text-control.config.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/form/converters/converters-map.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/form/converters/converters-map.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/form/converters/cpf-name/cpf-name-regex.variable.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/form/converters/cvv/cvv-form-state.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/form/converters/street-number/street-number-from-state.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/form/field-form-states.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/form/field-status.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/form/form-fields-status.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/form/form-state.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/form/input-event.enum.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/form/validators/async-validator-fn.type.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/form/validators/coupon/coupon-validator.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/form/validators/email/email-validator.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/form/validators/is-empty-input-value.function.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/form/validators/max-length-validator.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/form/validators/min-length-validator.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/form/validators/phone-validator.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/form/validators/required/required.validator.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/form/validators/restricted-value/restricted-value.validator.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/form/validators/validation-error.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/form/validators/validation-errors.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/form/validators/validator-fn.type.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/form-response.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/initialize/initialize-request-params.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/initialize/response/initialize-response.token.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/invoice.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/payment-config.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/payment-form.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/payment.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/status/check-status/request/check-status-request.token.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/status/check-status/response/check-status-response.class.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/status/check-status/response/check-status-response.token.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/status/finance-info-field.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/status/line-item.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/status/save-payment-method-status/api/saved-payment-account-changes.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/status/save-payment-method-status/api/saved-payment-account.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/status/save-payment-method-status/save-payment-method-status.enum.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/status/status-finance-info.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/status/status-groups.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/status/status-order.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/status/status-request/request/status-request.token.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/status/status-request/required-status-search-params.const.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/status/status-request/response/status-response.token.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/status/status-request/status-request-params.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/status/status-request/status-search-param.enum.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/status/status-request/status-search-params.map.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/status/status-settings.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/status/status-updated.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/status/status.enum.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/status/status.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/status/title-class.enum.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/status/web-socket-client-type.enum.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/status/websocket-status/websocket-status.enum.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/submit/request/submit-request.token.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/submit/response/is-submit-response.function.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/submit/response/submit-response.token.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/sync/field-async-validation.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/sync/field-sync-state.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/sync/request/sync-request.token.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/sync/response/sync-response.token.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/three-ds/api/notify-dfp-status/request/notify-dfp-status-request.class.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/three-ds/api/notify-dfp-status/request/notify-dfp-status-request.token.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/three-ds/api/status-three-ds/request/status-three-ds-request.class.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/three-ds/api/status-three-ds/request/status-three-ds-request.token.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/three-ds/api/status-three-ds/response/status-three-ds-response.class.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/three-ds/api/status-three-ds/response/status-three-ds-response.token.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/three-ds/api/status-three-ds/status-three-ds-response.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/three-ds/api/status-three-ds/status-types.enum.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/three-ds/api/status-three-ds/three-ds-checkout-form.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/three-ds/reinsurance-check/timer.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/three-ds/three-ds-20/status-update.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/three-ds/three-ds-form.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/three-ds/three-ds-status-websocket-types.enum.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/virtual-currency.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/xps-api-part.abstract.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/xps-checkout.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/xps-comand.enum.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/xps-error.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/xps-finance.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/xps-message.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/xps-purchase.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/xps-request-params.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/xps-request.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/xps-response.error.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/xps-response.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment/xps-summary.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment-methods/payment-method-api.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment-methods/payment-method.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment-methods/payment-methods-api.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment-methods/payment-methods-request-params.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment-methods/payment-methods-response.class.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment-methods/payment-methods-response.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/payment-methods/payment-methods-response.token.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/performance/xhr-action.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/properties.type.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/saved-methods/saved-method-api.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/saved-methods/saved-method.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/saved-methods/saved-methods-request-params.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/saved-methods/saved-methods-response.class.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/saved-methods/saved-methods-response.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/saved-methods/saved-methods-response.token.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/sdk-payment-systems/apple-pay/apple-pay-integration.type.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/sdk-payment-systems/apple-pay/apple-pay-params.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/sdk-payment-systems/apple-pay/apple-pay.const.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/sdk-payment-systems/apple-pay/apple-pay.errors.enum.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/sdk-payment-systems/apple-pay/checkout-params.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/sdk-payment-systems/google-pay/google-pay-button-color.type.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/sdk-payment-systems/google-pay/google-pay-checkout.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/sdk-payment-systems/google-pay/google-pay-init-params.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/sdk-payment-systems/google-pay/google-pay-library.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/sdk-payment-systems/sdk-payment-methods.const.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/sdk-payment-systems/sdk-payment-systems-initial-data.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/sdk-payment-systems/sdk-payment-systems.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/settings/auto-redirect-on-status.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/settings/balance.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/settings/bonus.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/settings/configuration.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/settings/empty-utils-response.error.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/settings/header-type.enum.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/settings/offer.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/settings/project.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/settings/purchase.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/settings/settings-mode.enum.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/settings/settings.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/settings/status-back-show.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/settings/tracking-info.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/settings/user.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/settings/utils-response.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/type-guards/is-null.function.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/type-guards/is-string.function.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/type-guards/is-undefined.function.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/url/search-params.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/user-agent/browserInfo.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/user-agent/browsers.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/user-agent/device.enum.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/user-agent/os.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/user-agent/user-agent-data.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/user-balance/user-balance-api.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/user-balance/user-balance-request-params.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/user-balance/user-balance-response.class.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/user-balance/user-balance-response.token.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/user-behaviour-analytics/event-builder/event-parameter-types.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/user-behaviour-analytics/event-builder/invoice.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/user-behaviour-analytics/event-builder/purchase.type.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/user-behaviour-analytics/event-builder/user-behaviour-event.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/user-behaviour-analytics/one-time-analytics-events.const.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/user-behaviour-analytics/user-behaviour-analytics.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/user-behaviour-analytics/user-behaviour-event/user-behaviour-event-categories.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/user-behaviour-analytics/user-behaviour-event/user-behaviour-event-types.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/user-behaviour-analytics/user-behaviour-event-name.enum.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/user-behaviour-analytics/user-session-options.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/web-socket/web-socket-client-type.enum.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/web-socket/web-socket.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/window.token.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/core/xps-boolean.enum.mjs +0 -0
- /package/{esm2022 → esm2020}/public-api.mjs +0 -0
- /package/{esm2022 → esm2020}/xsolla-payment-client-core.mjs +0 -0
|
@@ -1,177 +0,0 @@
|
|
|
1
|
-
import { Inject, Injectable } from '@angular/core';
|
|
2
|
-
import { BehaviorSubject, filter, take } from 'rxjs';
|
|
3
|
-
import { windowToken } from '../../window.token';
|
|
4
|
-
import { AppError } from '../../exceptions-handling/errors/app-error.class';
|
|
5
|
-
import { CheckStatusActionCreator } from '../../payment/actions/check-status/check-status.action.class';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "../payment-systems/payment-system-processing.service";
|
|
8
|
-
export class GooglePayService {
|
|
9
|
-
get libraryWasInitialized() {
|
|
10
|
-
return !!this.window.google;
|
|
11
|
-
}
|
|
12
|
-
get googlePaymentClientWasInitialized() {
|
|
13
|
-
return !!this.googlePaymentClient;
|
|
14
|
-
}
|
|
15
|
-
constructor(window, paymentSystemProcessingService, injector) {
|
|
16
|
-
this.window = window;
|
|
17
|
-
this.paymentSystemProcessingService = paymentSystemProcessingService;
|
|
18
|
-
this.injector = injector;
|
|
19
|
-
this.googlePayScriptUrl = 'https://pay.google.com/gp/p/js/pay.js';
|
|
20
|
-
this.readyToPay = new BehaviorSubject(null);
|
|
21
|
-
this.checkout = null;
|
|
22
|
-
this.googlePaymentClient = null;
|
|
23
|
-
}
|
|
24
|
-
get readyToPay$() {
|
|
25
|
-
return this.readyToPay.asObservable();
|
|
26
|
-
}
|
|
27
|
-
isReadyToPay() {
|
|
28
|
-
return this.readyToPay.getValue();
|
|
29
|
-
}
|
|
30
|
-
initGooglePayLibrary(data) {
|
|
31
|
-
this.isSandbox = data.isSandbox;
|
|
32
|
-
this.country = data.country;
|
|
33
|
-
if (this.libraryWasInitialized && this.googlePaymentClientWasInitialized) {
|
|
34
|
-
return;
|
|
35
|
-
}
|
|
36
|
-
if (this.libraryWasInitialized && !this.googlePaymentClientWasInitialized) {
|
|
37
|
-
this.setupGooglePayClient();
|
|
38
|
-
return;
|
|
39
|
-
}
|
|
40
|
-
this.paymentSystemProcessingService.loadScript(this.googlePayScriptUrl, this.onLoadScript.bind(this));
|
|
41
|
-
}
|
|
42
|
-
checkPaymentDevice(base64checkoutData) {
|
|
43
|
-
this.paymentSystemProcessingService.initialize$
|
|
44
|
-
.pipe(filter(Boolean), take(1))
|
|
45
|
-
.subscribe(() => {
|
|
46
|
-
this.checkout =
|
|
47
|
-
this.paymentSystemProcessingService.getDecodedCheckout(base64checkoutData);
|
|
48
|
-
if (!this.checkout || !this.googlePaymentClient) {
|
|
49
|
-
throw new AppError(`Google Pay: no checkout or google payment client, checkout - ${Boolean(this.checkout).toString()}, client - ${Boolean(this.googlePaymentClient).toString()}`);
|
|
50
|
-
}
|
|
51
|
-
const checkoutData = this.checkout.request.form.fields;
|
|
52
|
-
const isReadyToPayRequest = JSON.parse(checkoutData.isReadyToPayRequest);
|
|
53
|
-
this.googlePaymentClient
|
|
54
|
-
.isReadyToPay(isReadyToPayRequest)
|
|
55
|
-
.then((response) => {
|
|
56
|
-
if (response.result && this.googlePaymentClient) {
|
|
57
|
-
this.googlePaymentClient.prefetchPaymentData(JSON.parse(checkoutData.paymentDataRequest));
|
|
58
|
-
return this.readyToPay.next(true);
|
|
59
|
-
}
|
|
60
|
-
this.readyToPay.next(false);
|
|
61
|
-
const result = response.result?.toString() ?? '';
|
|
62
|
-
const isHavePaymentClient = Boolean(this.googlePaymentClient).toString();
|
|
63
|
-
throw new Error(`Google Pay: possibly no response.result or googlePaymentClient is missing, result - ${result}, isHavePaymentClient - ${isHavePaymentClient}`);
|
|
64
|
-
})
|
|
65
|
-
.catch((error) => {
|
|
66
|
-
this.readyToPay.next(false);
|
|
67
|
-
let message = error ?? '';
|
|
68
|
-
if (error instanceof Error) {
|
|
69
|
-
message = error.message;
|
|
70
|
-
}
|
|
71
|
-
throw new AppError(`Google Pay: device is not ready to pay, ${message}`);
|
|
72
|
-
});
|
|
73
|
-
});
|
|
74
|
-
}
|
|
75
|
-
async proceedCheckout() {
|
|
76
|
-
if (!this.checkout || !this.googlePaymentClient) {
|
|
77
|
-
const isHaveCheckout = !!this.checkout;
|
|
78
|
-
const isHaveClient = !!this.googlePaymentClient;
|
|
79
|
-
throw new AppError(`Google Pay: no checkout or google payment client, checkout - ${isHaveCheckout.toString()}, client - ${isHaveClient.toString()}`);
|
|
80
|
-
}
|
|
81
|
-
const checkoutData = this.checkout.request.form.fields;
|
|
82
|
-
const paymentDataRequest = JSON.parse(checkoutData.paymentDataRequest);
|
|
83
|
-
paymentDataRequest.transactionInfo = {
|
|
84
|
-
currencyCode: checkoutData.currency,
|
|
85
|
-
totalPriceStatus: 'FINAL',
|
|
86
|
-
totalPrice: checkoutData.sum,
|
|
87
|
-
countryCode: this.country,
|
|
88
|
-
};
|
|
89
|
-
const checkStatusAction = this.injector
|
|
90
|
-
.get(CheckStatusActionCreator)
|
|
91
|
-
.getActionData();
|
|
92
|
-
try {
|
|
93
|
-
const paymentData = await this.googlePaymentClient.loadPaymentData(paymentDataRequest);
|
|
94
|
-
if (!paymentData?.paymentMethodData?.tokenizationData?.token) {
|
|
95
|
-
throw new AppError('Google Pay: token is missing');
|
|
96
|
-
}
|
|
97
|
-
if (!this.checkout) {
|
|
98
|
-
throw new AppError('Google Pay: no checkout data in then');
|
|
99
|
-
}
|
|
100
|
-
let returnUrl = this.checkout.request.form.fields.returnSuccessUrl;
|
|
101
|
-
const data = this.checkout.request.form.fields;
|
|
102
|
-
returnUrl += `&cpf_number=${data.cpf_number}&descriptor=${data.descriptor}&paymentData=${JSON.stringify(paymentData)}`;
|
|
103
|
-
this.paymentSystemProcessingService.emitStatusUrl(returnUrl);
|
|
104
|
-
return checkStatusAction;
|
|
105
|
-
}
|
|
106
|
-
catch (error) {
|
|
107
|
-
if (!this.checkout) {
|
|
108
|
-
throw new AppError(`Google Pay: no checkout data`);
|
|
109
|
-
}
|
|
110
|
-
const statusCode = error
|
|
111
|
-
?.statusCode;
|
|
112
|
-
const isStatusCanceled = statusCode && this.isCancelledStatus(statusCode);
|
|
113
|
-
if (isStatusCanceled) {
|
|
114
|
-
return null;
|
|
115
|
-
}
|
|
116
|
-
const returnUrl = this.checkout.request.form.fields.returnFailUrl;
|
|
117
|
-
this.paymentSystemProcessingService.emitStatusUrl(returnUrl);
|
|
118
|
-
return checkStatusAction;
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
createButton(onClickHandler, buttonColor = 'default') {
|
|
122
|
-
if (!this.checkout || !this.googlePaymentClient) {
|
|
123
|
-
return null;
|
|
124
|
-
}
|
|
125
|
-
const checkoutData = this.checkout.request.form.fields;
|
|
126
|
-
const paymentDataRequest = JSON.parse(checkoutData.paymentDataRequest);
|
|
127
|
-
return this.googlePaymentClient.createButton({
|
|
128
|
-
onClick: onClickHandler,
|
|
129
|
-
allowedPaymentMethods: paymentDataRequest.allowedPaymentMethods,
|
|
130
|
-
buttonSizeMode: 'fill',
|
|
131
|
-
buttonType: 'buy',
|
|
132
|
-
buttonColor,
|
|
133
|
-
});
|
|
134
|
-
}
|
|
135
|
-
setupGooglePayClient() {
|
|
136
|
-
if (!this.window.google) {
|
|
137
|
-
return;
|
|
138
|
-
}
|
|
139
|
-
const environment = this.isSandbox ? 'TEST' : 'PRODUCTION';
|
|
140
|
-
this.googlePaymentClient =
|
|
141
|
-
new this.window.google.payments.api.PaymentsClient({
|
|
142
|
-
environment,
|
|
143
|
-
});
|
|
144
|
-
}
|
|
145
|
-
onLoadScript() {
|
|
146
|
-
if (!this.window.google) {
|
|
147
|
-
const retryTimeout = 1000;
|
|
148
|
-
setTimeout(() => {
|
|
149
|
-
const isAvailableGoogleClient = !!this.window.google;
|
|
150
|
-
if (isAvailableGoogleClient) {
|
|
151
|
-
this.setupGooglePayClient();
|
|
152
|
-
this.paymentSystemProcessingService.emitInitialize(true);
|
|
153
|
-
}
|
|
154
|
-
}, retryTimeout);
|
|
155
|
-
throw new AppError('Google Pay: google library now is available');
|
|
156
|
-
}
|
|
157
|
-
else {
|
|
158
|
-
this.setupGooglePayClient();
|
|
159
|
-
this.paymentSystemProcessingService.emitInitialize(true);
|
|
160
|
-
}
|
|
161
|
-
}
|
|
162
|
-
isCancelledStatus(statusCode) {
|
|
163
|
-
return statusCode.toLowerCase() === 'canceled';
|
|
164
|
-
}
|
|
165
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: GooglePayService, deps: [{ token: windowToken }, { token: i1.PaymentSystemProcessingService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
166
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: GooglePayService, providedIn: 'root' }); }
|
|
167
|
-
}
|
|
168
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: GooglePayService, decorators: [{
|
|
169
|
-
type: Injectable,
|
|
170
|
-
args: [{
|
|
171
|
-
providedIn: 'root',
|
|
172
|
-
}]
|
|
173
|
-
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
174
|
-
type: Inject,
|
|
175
|
-
args: [windowToken]
|
|
176
|
-
}] }, { type: i1.PaymentSystemProcessingService }, { type: i0.Injector }] });
|
|
177
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ29vZ2xlLXBheS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcGF5bWVudC1jbGllbnQtY29yZS9zcmMvbGliL2NvcmUvc2RrLXBheW1lbnQtc3lzdGVtcy9nb29nbGUtcGF5L2dvb2dsZS1wYXkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBWSxNQUFNLGVBQWUsQ0FBQztBQU03RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sRUFBYyxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFakUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRWpELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUc1RSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQzs7O0FBT3hHLE1BQU0sT0FBTyxnQkFBZ0I7SUFXM0IsSUFBWSxxQkFBcUI7UUFDL0IsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUM7SUFDOUIsQ0FBQztJQUVELElBQVksaUNBQWlDO1FBQzNDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQztJQUNwQyxDQUFDO0lBRUQsWUFDd0MsTUFBc0IsRUFDNUMsOEJBQThELEVBQzlELFFBQWtCO1FBRkksV0FBTSxHQUFOLE1BQU0sQ0FBZ0I7UUFDNUMsbUNBQThCLEdBQTlCLDhCQUE4QixDQUFnQztRQUM5RCxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBckJuQix1QkFBa0IsR0FBRyx1Q0FBdUMsQ0FBQztRQUU3RCxlQUFVLEdBQUcsSUFBSSxlQUFlLENBQWlCLElBQUksQ0FBQyxDQUFDO1FBRWhFLGFBQVEsR0FBNkIsSUFBSSxDQUFDO1FBQzFDLHdCQUFtQixHQUEyQixJQUFJLENBQUM7SUFpQnhELENB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ZWN0LCBJbmplY3RhYmxlLCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgR29vZ2xlUGF5Q2hlY2tvdXQgfSBmcm9tICcuL2dvb2dsZS1wYXktY2hlY2tvdXQuaW50ZXJmYWNlJztcbmltcG9ydCB7XG4gIEdvb2dsZVBheUNsaWVudCxcbiAgR29vZ2xlUGF5UGF5bWVudFJlcXVlc3QsXG59IGZyb20gJy4vZ29vZ2xlLXBheS1saWJyYXJ5LmludGVyZmFjZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGZpbHRlciwgT2JzZXJ2YWJsZSwgdGFrZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgUGF5bWVudFN5c3RlbVByb2Nlc3NpbmdTZXJ2aWNlIH0gZnJvbSAnLi4vcGF5bWVudC1zeXN0ZW1zL3BheW1lbnQtc3lzdGVtLXByb2Nlc3Npbmcuc2VydmljZSc7XG5pbXBvcnQgeyB3aW5kb3dUb2tlbiB9IGZyb20gJy4uLy4uL3dpbmRvdy50b2tlbic7XG5pbXBvcnQgeyBFeHRlbmRlZFdpbmRvdyB9IGZyb20gJy4uLy4uL2V4dGVuZGVkLXdpbmRvdy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQXBwRXJyb3IgfSBmcm9tICcuLi8uLi9leGNlcHRpb25zLWhhbmRsaW5nL2Vycm9ycy9hcHAtZXJyb3IuY2xhc3MnO1xuaW1wb3J0IHsgR29vZ2xlUGF5SW5pdFBhcmFtcyB9IGZyb20gJy4vZ29vZ2xlLXBheS1pbml0LXBhcmFtcy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgTmV4dEFjdGlvbiB9IGZyb20gJy4uLy4uL3BheW1lbnQvYWN0aW9ucy9uZXh0LWFjdGlvbi5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQ2hlY2tTdGF0dXNBY3Rpb25DcmVhdG9yIH0gZnJvbSAnLi4vLi4vcGF5bWVudC9hY3Rpb25zL2NoZWNrLXN0YXR1cy9jaGVjay1zdGF0dXMuYWN0aW9uLmNsYXNzJztcbmltcG9ydCB7IENoZWNrU3RhdHVzQWN0aW9uIH0gZnJvbSAnLi4vLi4vcGF5bWVudC9hY3Rpb25zL2NoZWNrLXN0YXR1cy9jaGVjay1zdGF0dXMuYWN0aW9uLnR5cGUnO1xuaW1wb3J0IHsgR29vZ2xlUGF5QnV0dG9uQ29sb3JUeXBlIH0gZnJvbSAnLi9nb29nbGUtcGF5LWJ1dHRvbi1jb2xvci50eXBlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEdvb2dsZVBheVNlcnZpY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IGdvb2dsZVBheVNjcmlwdFVybCA9ICdodHRwczovL3BheS5nb29nbGUuY29tL2dwL3AvanMvcGF5LmpzJztcblxuICBwcml2YXRlIHJlYWRvbmx5IHJlYWR5VG9QYXkgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4gfCBudWxsPihudWxsKTtcblxuICBwcml2YXRlIGNoZWNrb3V0OiBHb29nbGVQYXlDaGVja291dCB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIGdvb2dsZVBheW1lbnRDbGllbnQ6IEdvb2dsZVBheUNsaWVudCB8IG51bGwgPSBudWxsO1xuXG4gIHByaXZhdGUgaXNTYW5kYm94ITogYm9vbGVhbjtcbiAgcHJpdmF0ZSBjb3VudHJ5ITogc3RyaW5nO1xuXG4gIHByaXZhdGUgZ2V0IGxpYnJhcnlXYXNJbml0aWFsaXplZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLndpbmRvdy5nb29nbGU7XG4gIH1cblxuICBwcml2YXRlIGdldCBnb29nbGVQYXltZW50Q2xpZW50V2FzSW5pdGlhbGl6ZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5nb29nbGVQYXltZW50Q2xpZW50O1xuICB9XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3Qod2luZG93VG9rZW4pIHByaXZhdGUgcmVhZG9ubHkgd2luZG93OiBFeHRlbmRlZFdpbmRvdyxcbiAgICBwdWJsaWMgcmVhZG9ubHkgcGF5bWVudFN5c3RlbVByb2Nlc3NpbmdTZXJ2aWNlOiBQYXltZW50U3lzdGVtUHJvY2Vzc2luZ1NlcnZpY2UsXG4gICAgcHVibGljIHJlYWRvbmx5IGluamVjdG9yOiBJbmplY3RvclxuICApIHt9XG5cbiAgcHVibGljIGdldCByZWFkeVRvUGF5JCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4gfCBudWxsPiB7XG4gICAgcmV0dXJuIHRoaXMucmVhZHlUb1BheS5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBpc1JlYWR5VG9QYXkoKTogYm9vbGVhbiB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLnJlYWR5VG9QYXkuZ2V0VmFsdWUoKTtcbiAgfVxuXG4gIHB1YmxpYyBpbml0R29vZ2xlUGF5TGlicmFyeShkYXRhOiBHb29nbGVQYXlJbml0UGFyYW1zKTogdm9pZCB7XG4gICAgdGhpcy5pc1NhbmRib3ggPSBkYXRhLmlzU2FuZGJveDtcbiAgICB0aGlzLmNvdW50cnkgPSBkYXRhLmNvdW50cnk7XG5cbiAgICBpZiAodGhpcy5saWJyYXJ5V2FzSW5pdGlhbGl6ZWQgJiYgdGhpcy5nb29nbGVQYXltZW50Q2xpZW50V2FzSW5pdGlhbGl6ZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5saWJyYXJ5V2FzSW5pdGlhbGl6ZWQgJiYgIXRoaXMuZ29vZ2xlUGF5bWVudENsaWVudFdhc0luaXRpYWxpemVkKSB7XG4gICAgICB0aGlzLnNldHVwR29vZ2xlUGF5Q2xpZW50KCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5wYXltZW50U3lzdGVtUHJvY2Vzc2luZ1NlcnZpY2UubG9hZFNjcmlwdChcbiAgICAgIHRoaXMuZ29vZ2xlUGF5U2NyaXB0VXJsLFxuICAgICAgdGhpcy5vbkxvYWRTY3JpcHQuYmluZCh0aGlzKVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgY2hlY2tQYXltZW50RGV2aWNlKGJhc2U2NGNoZWNrb3V0RGF0YTogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5wYXltZW50U3lzdGVtUHJvY2Vzc2luZ1NlcnZpY2UuaW5pdGlhbGl6ZSRcbiAgICAgIC5waXBlKGZpbHRlcihCb29sZWFuKSwgdGFrZSgxKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLmNoZWNrb3V0ID1cbiAgICAgICAgICB0aGlzLnBheW1lbnRTeXN0ZW1Qcm9jZXNzaW5nU2VydmljZS5nZXREZWNvZGVkQ2hlY2tvdXQ8R29vZ2xlUGF5Q2hlY2tvdXQ+KFxuICAgICAgICAgICAgYmFzZTY0Y2hlY2tvdXREYXRhXG4gICAgICAgICAgKTtcblxuICAgICAgICBpZiAoIXRoaXMuY2hlY2tvdXQgfHwgIXRoaXMuZ29vZ2xlUGF5bWVudENsaWVudCkge1xuICAgICAgICAgIHRocm93IG5ldyBBcHBFcnJvcihcbiAgICAgICAgICAgIGBHb29nbGUgUGF5OiBubyBjaGVja291dCBvciBnb29nbGUgcGF5bWVudCBjbGllbnQsIGNoZWNrb3V0IC0gJHtCb29sZWFuKFxuICAgICAgICAgICAgICB0aGlzLmNoZWNrb3V0XG4gICAgICAgICAgICApLnRvU3RyaW5nKCl9LCBjbGllbnQgLSAke0Jvb2xlYW4oXG4gICAgICAgICAgICAgIHRoaXMuZ29vZ2xlUGF5bWVudENsaWVudFxuICAgICAgICAgICAgKS50b1N0cmluZygpfWBcbiAgICAgICAgICApO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgY2hlY2tvdXREYXRhID0gdGhpcy5jaGVja291dC5yZXF1ZXN0LmZvcm0uZmllbGRzO1xuICAgICAgICBjb25zdCBpc1JlYWR5VG9QYXlSZXF1ZXN0ID0gSlNPTi5wYXJzZShcbiAgICAgICAgICBjaGVja291dERhdGEuaXNSZWFkeVRvUGF5UmVxdWVzdFxuICAgICAgICApO1xuXG4gICAgICAgIHRoaXMuZ29vZ2xlUGF5bWVudENsaWVudFxuICAgICAgICAgIC5pc1JlYWR5VG9QYXkoaXNSZWFkeVRvUGF5UmVxdWVzdClcbiAgICAgICAgICAudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgIGlmIChyZXNwb25zZS5yZXN1bHQgJiYgdGhpcy5nb29nbGVQYXltZW50Q2xpZW50KSB7XG4gICAgICAgICAgICAgIHRoaXMuZ29vZ2xlUGF5bWVudENsaWVudC5wcmVmZXRjaFBheW1lbnREYXRhKFxuICAgICAgICAgICAgICAgIEpTT04ucGFyc2UoY2hlY2tvdXREYXRhLnBheW1lbnREYXRhUmVxdWVzdClcbiAgICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgICByZXR1cm4gdGhpcy5yZWFkeVRvUGF5Lm5leHQodHJ1ZSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMucmVhZHlUb1BheS5uZXh0KGZhbHNlKTtcbiAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IHJlc3BvbnNlLnJlc3VsdD8udG9TdHJpbmcoKSA/PyAnJztcbiAgICAgICAgICAgIGNvbnN0IGlzSGF2ZVBheW1lbnRDbGllbnQgPSBCb29sZWFuKFxuICAgICAgICAgICAgICB0aGlzLmdvb2dsZVBheW1lbnRDbGllbnRcbiAgICAgICAgICAgICkudG9TdHJpbmcoKTtcblxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgICAgICBgR29vZ2xlIFBheTogcG9zc2libHkgbm8gcmVzcG9uc2UucmVzdWx0IG9yIGdvb2dsZVBheW1lbnRDbGllbnQgaXMgbWlzc2luZywgcmVzdWx0IC0gJHtyZXN1bHR9LCBpc0hhdmVQYXltZW50Q2xpZW50IC0gJHtpc0hhdmVQYXltZW50Q2xpZW50fWBcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfSlcbiAgICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnJlYWR5VG9QYXkubmV4dChmYWxzZSk7XG5cbiAgICAgICAgICAgIGxldCBtZXNzYWdlID0gKGVycm9yIGFzIHN0cmluZykgPz8gJyc7XG5cbiAgICAgICAgICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIEVycm9yKSB7XG4gICAgICAgICAgICAgIG1lc3NhZ2UgPSBlcnJvci5tZXNzYWdlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aHJvdyBuZXcgQXBwRXJyb3IoXG4gICAgICAgICAgICAgIGBHb29nbGUgUGF5OiBkZXZpY2UgaXMgbm90IHJlYWR5IHRvIHBheSwgJHttZXNzYWdlfWBcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBwcm9jZWVkQ2hlY2tvdXQoKTogUHJvbWlzZTxDaGVja1N0YXR1c0FjdGlvbiB8IG51bGw+IHtcbiAgICBpZiAoIXRoaXMuY2hlY2tvdXQgfHwgIXRoaXMuZ29vZ2xlUGF5bWVudENsaWVudCkge1xuICAgICAgY29uc3QgaXNIYXZlQ2hlY2tvdXQgPSAhIXRoaXMuY2hlY2tvdXQ7XG4gICAgICBjb25zdCBpc0hhdmVDbGllbnQgPSAhIXRoaXMuZ29vZ2xlUGF5bWVudENsaWVudDtcblxuICAgICAgdGhyb3cgbmV3IEFwcEVycm9yKFxuICAgICAgICBgR29vZ2xlIFBheTogbm8gY2hlY2tvdXQgb3IgZ29vZ2xlIHBheW1lbnQgY2xpZW50LCBjaGVja291dCAtICR7aXNIYXZlQ2hlY2tvdXQudG9TdHJpbmcoKX0sIGNsaWVudCAtICR7aXNIYXZlQ2xpZW50LnRvU3RyaW5nKCl9YFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBjb25zdCBjaGVja291dERhdGEgPSB0aGlzLmNoZWNrb3V0LnJlcXVlc3QuZm9ybS5maWVsZHM7XG5cbiAgICBjb25zdCBwYXltZW50RGF0YVJlcXVlc3QgPSBKU09OLnBhcnNlKFxuICAgICAgY2hlY2tvdXREYXRhLnBheW1lbnREYXRhUmVxdWVzdFxuICAgICkgYXMgR29vZ2xlUGF5UGF5bWVudFJlcXVlc3Q7XG5cbiAgICBwYXltZW50RGF0YVJlcXVlc3QudHJhbnNhY3Rpb25JbmZvID0ge1xuICAgICAgY3VycmVuY3lDb2RlOiBjaGVja291dERhdGEuY3VycmVuY3ksXG4gICAgICB0b3RhbFByaWNlU3RhdHVzOiAnRklOQUwnLFxuICAgICAgdG90YWxQcmljZTogY2hlY2tvdXREYXRhLnN1bSxcbiAgICAgIGNvdW50cnlDb2RlOiB0aGlzLmNvdW50cnksXG4gICAgfTtcblxuICAgIGNvbnN0IGNoZWNrU3RhdHVzQWN0aW9uOiBOZXh0QWN0aW9uID0gdGhpcy5pbmplY3RvclxuICAgICAgLmdldDxDaGVja1N0YXR1c0FjdGlvbkNyZWF0b3I+KENoZWNrU3RhdHVzQWN0aW9uQ3JlYXRvcilcbiAgICAgIC5nZXRBY3Rpb25EYXRhKCk7XG5cbiAgICB0cnkge1xuICAgICAgY29uc3QgcGF5bWVudERhdGEgPSBhd2FpdCB0aGlzLmdvb2dsZVBheW1lbnRDbGllbnQubG9hZFBheW1lbnREYXRhKFxuICAgICAgICBwYXltZW50RGF0YVJlcXVlc3RcbiAgICAgICk7XG5cbiAgICAgIGlmICghcGF5bWVudERhdGE/LnBheW1lbnRNZXRob2REYXRhPy50b2tlbml6YXRpb25EYXRhPy50b2tlbikge1xuICAgICAgICB0aHJvdyBuZXcgQXBwRXJyb3IoJ0dvb2dsZSBQYXk6IHRva2VuIGlzIG1pc3NpbmcnKTtcbiAgICAgIH1cblxuICAgICAgaWYgKCF0aGlzLmNoZWNrb3V0KSB7XG4gICAgICAgIHRocm93IG5ldyBBcHBFcnJvcignR29vZ2xlIFBheTogbm8gY2hlY2tvdXQgZGF0YSBpbiB0aGVuJyk7XG4gICAgICB9XG5cbiAgICAgIGxldCByZXR1cm5VcmwgPSB0aGlzLmNoZWNrb3V0LnJlcXVlc3QuZm9ybS5maWVsZHMucmV0dXJuU3VjY2Vzc1VybDtcblxuICAgICAgY29uc3QgZGF0YSA9IHRoaXMuY2hlY2tvdXQucmVxdWVzdC5mb3JtLmZpZWxkcztcbiAgICAgIHJldHVyblVybCArPSBgJmNwZl9udW1iZXI9JHtkYXRhLmNwZl9udW1iZXJ9JmRlc2NyaXB0b3I9JHtcbiAgICAgICAgZGF0YS5kZXNjcmlwdG9yXG4gICAgICB9JnBheW1lbnREYXRhPSR7SlNPTi5zdHJpbmdpZnkocGF5bWVudERhdGEpfWA7XG5cbiAgICAgIHRoaXMucGF5bWVudFN5c3RlbVByb2Nlc3NpbmdTZXJ2aWNlLmVtaXRTdGF0dXNVcmwocmV0dXJuVXJsKTtcblxuICAgICAgcmV0dXJuIGNoZWNrU3RhdHVzQWN0aW9uO1xuICAgIH0gY2F0Y2ggKGVycm9yOiB1bmtub3duKSB7XG4gICAgICBpZiAoIXRoaXMuY2hlY2tvdXQpIHtcbiAgICAgICAgdGhyb3cgbmV3IEFwcEVycm9yKGBHb29nbGUgUGF5OiBubyBjaGVja291dCBkYXRhYCk7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHN0YXR1c0NvZGUgPSAoZXJyb3IgYXMgdW5rbm93biBhcyB7IHN0YXR1c0NvZGU/OiBzdHJpbmcgfSlcbiAgICAgICAgPy5zdGF0dXNDb2RlO1xuXG4gICAgICBjb25zdCBpc1N0YXR1c0NhbmNlbGVkID0gc3RhdHVzQ29kZSAmJiB0aGlzLmlzQ2FuY2VsbGVkU3RhdHVzKHN0YXR1c0NvZGUpO1xuXG4gICAgICBpZiAoaXNTdGF0dXNDYW5jZWxlZCkge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cblxuICAgICAgY29uc3QgcmV0dXJuVXJsID0gdGhpcy5jaGVja291dC5yZXF1ZXN0LmZvcm0uZmllbGRzLnJldHVybkZhaWxVcmw7XG5cbiAgICAgIHRoaXMucGF5bWVudFN5c3RlbVByb2Nlc3NpbmdTZXJ2aWNlLmVtaXRTdGF0dXNVcmwocmV0dXJuVXJsKTtcblxuICAgICAgcmV0dXJuIGNoZWNrU3RhdHVzQWN0aW9uO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBjcmVhdGVCdXR0b24oXG4gICAgb25DbGlja0hhbmRsZXI6ICgpID0+IHZvaWQsXG4gICAgYnV0dG9uQ29sb3I6IEdvb2dsZVBheUJ1dHRvbkNvbG9yVHlwZSA9ICdkZWZhdWx0J1xuICApOiBIVE1MQnV0dG9uRWxlbWVudCB8IG51bGwge1xuICAgIGlmICghdGhpcy5jaGVja291dCB8fCAhdGhpcy5nb29nbGVQYXltZW50Q2xpZW50KSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBjb25zdCBjaGVja291dERhdGEgPSB0aGlzLmNoZWNrb3V0LnJlcXVlc3QuZm9ybS5maWVsZHM7XG4gICAgY29uc3QgcGF5bWVudERhdGFSZXF1ZXN0ID0gSlNPTi5wYXJzZShcbiAgICAgIGNoZWNrb3V0RGF0YS5wYXltZW50RGF0YVJlcXVlc3RcbiAgICApIGFzIEdvb2dsZVBheVBheW1lbnRSZXF1ZXN0O1xuXG4gICAgcmV0dXJuIHRoaXMuZ29vZ2xlUGF5bWVudENsaWVudC5jcmVhdGVCdXR0b24oe1xuICAgICAgb25DbGljazogb25DbGlja0hhbmRsZXIsXG4gICAgICBhbGxvd2VkUGF5bWVudE1ldGhvZHM6IHBheW1lbnREYXRhUmVxdWVzdC5hbGxvd2VkUGF5bWVudE1ldGhvZHMsXG4gICAgICBidXR0b25TaXplTW9kZTogJ2ZpbGwnLFxuICAgICAgYnV0dG9uVHlwZTogJ2J1eScsXG4gICAgICBidXR0b25Db2xvcixcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0dXBHb29nbGVQYXlDbGllbnQoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLndpbmRvdy5nb29nbGUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBlbnZpcm9ubWVudCA9IHRoaXMuaXNTYW5kYm94ID8gJ1RFU1QnIDogJ1BST0RVQ1RJT04nO1xuXG4gICAgdGhpcy5nb29nbGVQYXltZW50Q2xpZW50ID1cbiAgICAgIG5ldyB0aGlzLndpbmRvdy5nb29nbGUucGF5bWVudHMuYXBpLlBheW1lbnRzQ2xpZW50KHtcbiAgICAgICAgZW52aXJvbm1lbnQsXG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgb25Mb2FkU2NyaXB0KCk6IHZvaWQge1xuICAgIGlmICghdGhpcy53aW5kb3cuZ29vZ2xlKSB7XG4gICAgICBjb25zdCByZXRyeVRpbWVvdXQgPSAxMDAwO1xuXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgY29uc3QgaXNBdmFpbGFibGVHb29nbGVDbGllbnQgPSAhIXRoaXMud2luZG93Lmdvb2dsZTtcblxuICAgICAgICBpZiAoaXNBdmFpbGFibGVHb29nbGVDbGllbnQpIHtcbiAgICAgICAgICB0aGlzLnNldHVwR29vZ2xlUGF5Q2xpZW50KCk7XG5cbiAgICAgICAgICB0aGlzLnBheW1lbnRTeXN0ZW1Qcm9jZXNzaW5nU2VydmljZS5lbWl0SW5pdGlhbGl6ZSh0cnVlKTtcbiAgICAgICAgfVxuICAgICAgfSwgcmV0cnlUaW1lb3V0KTtcblxuICAgICAgdGhyb3cgbmV3IEFwcEVycm9yKCdHb29nbGUgUGF5OiBnb29nbGUgbGlicmFyeSBub3cgaXMgYXZhaWxhYmxlJyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2V0dXBHb29nbGVQYXlDbGllbnQoKTtcblxuICAgICAgdGhpcy5wYXltZW50U3lzdGVtUHJvY2Vzc2luZ1NlcnZpY2UuZW1pdEluaXRpYWxpemUodHJ1ZSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBpc0NhbmNlbGxlZFN0YXR1cyhzdGF0dXNDb2RlOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gc3RhdHVzQ29kZS50b0xvd2VyQ2FzZSgpID09PSAnY2FuY2VsZWQnO1xuICB9XG59XG4iXX0=
|
package/esm2022/lib/core/sdk-payment-systems/payment-systems/payment-system-processing.service.mjs
DELETED
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
import { Inject, Injectable } from '@angular/core';
|
|
2
|
-
import { BehaviorSubject } from 'rxjs';
|
|
3
|
-
import { filter } from 'rxjs/operators';
|
|
4
|
-
import { windowToken } from '../../window.token';
|
|
5
|
-
import { AppError } from '../../exceptions-handling/errors/app-error.class';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
export class PaymentSystemProcessingService {
|
|
8
|
-
constructor(window) {
|
|
9
|
-
this.window = window;
|
|
10
|
-
this.statusUrl = new BehaviorSubject('');
|
|
11
|
-
this.initialize = new BehaviorSubject(false);
|
|
12
|
-
}
|
|
13
|
-
get initialize$() {
|
|
14
|
-
return this.initialize.asObservable();
|
|
15
|
-
}
|
|
16
|
-
get status$() {
|
|
17
|
-
return this.statusUrl.asObservable().pipe(filter((status) => !!status));
|
|
18
|
-
}
|
|
19
|
-
emitStatusUrl(statusUrl) {
|
|
20
|
-
this.statusUrl.next(statusUrl);
|
|
21
|
-
}
|
|
22
|
-
emitInitialize(isInitialized) {
|
|
23
|
-
this.initialize.next(isInitialized);
|
|
24
|
-
}
|
|
25
|
-
getDecodedCheckout(base64checkoutData) {
|
|
26
|
-
try {
|
|
27
|
-
return JSON.parse(atob(base64checkoutData));
|
|
28
|
-
}
|
|
29
|
-
catch (error) {
|
|
30
|
-
throw new AppError('load script service: decode error');
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
loadScript(url, onLoad, addScriptCustomAttributes) {
|
|
34
|
-
this.initialize.next(false);
|
|
35
|
-
let script = this.window.document.createElement('script');
|
|
36
|
-
script.async = true;
|
|
37
|
-
script.src = url;
|
|
38
|
-
if (addScriptCustomAttributes) {
|
|
39
|
-
script = addScriptCustomAttributes(script);
|
|
40
|
-
}
|
|
41
|
-
this.window.document.body.append(script);
|
|
42
|
-
script.onload = () => {
|
|
43
|
-
try {
|
|
44
|
-
onLoad();
|
|
45
|
-
}
|
|
46
|
-
catch (error) {
|
|
47
|
-
let message = error;
|
|
48
|
-
if (error instanceof Error) {
|
|
49
|
-
message = error.message;
|
|
50
|
-
}
|
|
51
|
-
throw new AppError(`Pages: error during script onload handler: ${message}, url - ${url}`);
|
|
52
|
-
}
|
|
53
|
-
};
|
|
54
|
-
script.onerror = (event, source, lineno, colno, error) => {
|
|
55
|
-
const errorMessage = error ? error.message : '';
|
|
56
|
-
let eventMessage = event;
|
|
57
|
-
if (typeof event === 'object') {
|
|
58
|
-
eventMessage = JSON.stringify(event);
|
|
59
|
-
}
|
|
60
|
-
throw new AppError(`Pages: error during script onerror handler:
|
|
61
|
-
url - ${url},
|
|
62
|
-
event - ${eventMessage},
|
|
63
|
-
source - ${source ?? ''},
|
|
64
|
-
lineno - ${lineno ?? ''},
|
|
65
|
-
colno - ${colno ?? ''},
|
|
66
|
-
error - ${errorMessage}`);
|
|
67
|
-
};
|
|
68
|
-
}
|
|
69
|
-
isInitialized() {
|
|
70
|
-
return this.initialize.getValue();
|
|
71
|
-
}
|
|
72
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: PaymentSystemProcessingService, deps: [{ token: windowToken }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
73
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: PaymentSystemProcessingService, providedIn: 'root' }); }
|
|
74
|
-
}
|
|
75
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: PaymentSystemProcessingService, decorators: [{
|
|
76
|
-
type: Injectable,
|
|
77
|
-
args: [{
|
|
78
|
-
providedIn: 'root',
|
|
79
|
-
}]
|
|
80
|
-
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
81
|
-
type: Inject,
|
|
82
|
-
args: [windowToken]
|
|
83
|
-
}] }] });
|
|
84
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF5bWVudC1zeXN0ZW0tcHJvY2Vzc2luZy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcGF5bWVudC1jbGllbnQtY29yZS9zcmMvbGliL2NvcmUvc2RrLXBheW1lbnQtc3lzdGVtcy9wYXltZW50LXN5c3RlbXMvcGF5bWVudC1zeXN0ZW0tcHJvY2Vzc2luZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxlQUFlLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFDbkQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR3hDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sa0RBQWtELENBQUM7O0FBTzVFLE1BQU0sT0FBTyw4QkFBOEI7SUFLekMsWUFDd0MsTUFBc0I7UUFBdEIsV0FBTSxHQUFOLE1BQU0sQ0FBZ0I7UUFMN0MsY0FBUyxHQUE0QixJQUFJLGVBQWUsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUM3RCxlQUFVLEdBQ3pCLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO0lBSW5DLENBQUM7SUFFSixJQUFXLFdBQVc7UUFDcEIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3hDLENBQUM7SUFFRCxJQUFXLE9BQU87UUFDaEIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBQzFFLENBQUM7SUFFTSxhQUFhLENBQUMsU0FBaUI7UUFDcEMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVNLGNBQWMsQ0FBQyxhQUFzQjtRQUMxQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRU0sa0JBQWtCLENBQ3ZCLGtCQUEwQjtRQUUxQixJQUFJLENBQUM7WUFDSCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQU0sQ0FBQztRQUNuRCxDQUFDO1FBQUMsT0FBTyxLQUFjLEVBQUUsQ0FBQztZQUN4QixNQUFNLElBQUksUUFBUSxDQUFDLG1DQUFtQyxDQUFDLENBQUM7UUFDMUQsQ0FBQztJQUNILENBQUM7SUFFTSxVQUFVLENBQ2YsR0FBVyxFQUNYLE1BQWtCLEVBQ2xCLHlCQUE0RTtRQUU1RSxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM1QixJQUFJLE1BQU0sR0FDUixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFL0MsTUFBTSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7UUFDcEIsTUFBTSxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUM7UUFFakIsSUFBSSx5QkFBeUIsRUFBRSxDQUFDO1lBQzlCLE1BQU0sR0FBRyx5QkFBeUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM3QyxDQUFDO1FBRUQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUV6QyxNQUFNLENBQUMsTUFBTSxHQUFHLEdBQUcsRUFBRTtZQUNuQixJQUFJLENBQUM7Z0JBQ0gsTUFBTSxFQUFFLENBQUM7WUFDWCxDQUFDO1lBQUMsT0FBTyxLQUFjLEVBQUUsQ0FBQztnQkFDeEIsSUFBSSxPQUFPLEdBQUcsS0FBSyxDQUFDO2dCQUVwQixJQUFJLEtBQUssWUFBWSxLQUFLLEVBQUUsQ0FBQztvQkFDM0IsT0FBTyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUM7Z0JBQzFCLENBQUM7Z0JBQ0QsTUFBTSxJQUFJLFFBQVEsQ0FDaEIsOENBQ0UsT0FDRixXQUFXLEdBQUcsRUFBRSxDQUNqQixDQUFDO1lBQ0osQ0FBQztRQUNILENBQUMsQ0FBQztRQUVGLE1BQU0sQ0FBQyxPQUFPLEdBQUcsQ0FDZixLQUFxQixFQUNyQixNQUFlLEVBQ2YsTUFBZSxFQUNmLEtBQWMsRUFDZCxLQUFhLEVBQ2IsRUFBRTtZQUNGLE1BQU0sWUFBWSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBRWhELElBQUksWUFBWSxHQUFHLEtBQWUsQ0FBQztZQUVuQyxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRSxDQUFDO2dCQUM5QixZQUFZLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN2QyxDQUFDO1lBRUQsTUFBTSxJQUFJLFFBQVEsQ0FDaEI7Z0JBQ1EsR0FBRztrQkFDRCxZQUFZO21CQUNYLE1BQU0sSUFBSSxFQUFFO21CQUNaLE1BQU0sSUFBSSxFQUFFO2tCQUNiLEtBQUssSUFBSSxFQUFFO2tCQUNYLFlBQVksRUFBRSxDQUN6QixDQUFDO1FBQ0osQ0FBQyxDQUFDO0lBQ0osQ0FBQztJQUVNLGFBQWE7UUFDbEIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ3BDLENBQUM7OEdBbkdVLDhCQUE4QixrQkFNL0IsV0FBVztrSEFOViw4QkFBOEIsY0FGN0IsTUFBTTs7MkZBRVAsOEJBQThCO2tCQUgxQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBT0ksTUFBTTsyQkFBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGZpbHRlciB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEdvb2dsZVBheUNoZWNrb3V0IH0gZnJvbSAnLi4vZ29vZ2xlLXBheS9nb29nbGUtcGF5LWNoZWNrb3V0LmludGVyZmFjZSc7XG5pbXBvcnQgeyBFeHRlbmRlZFdpbmRvdyB9IGZyb20gJy4uLy4uL2V4dGVuZGVkLXdpbmRvdy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgd2luZG93VG9rZW4gfSBmcm9tICcuLi8uLi93aW5kb3cudG9rZW4nO1xuaW1wb3J0IHsgQXBwRXJyb3IgfSBmcm9tICcuLi8uLi9leGNlcHRpb25zLWhhbmRsaW5nL2Vycm9ycy9hcHAtZXJyb3IuY2xhc3MnO1xuXG5leHBvcnQgdHlwZSBDb21tb25DaGVja291dCA9IEdvb2dsZVBheUNoZWNrb3V0O1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgUGF5bWVudFN5c3RlbVByb2Nlc3NpbmdTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBzdGF0dXNVcmw6IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+ID0gbmV3IEJlaGF2aW9yU3ViamVjdCgnJyk7XG4gIHByaXZhdGUgcmVhZG9ubHkgaW5pdGlhbGl6ZTogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+ID1cbiAgICBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgQEluamVjdCh3aW5kb3dUb2tlbikgcHJpdmF0ZSByZWFkb25seSB3aW5kb3c6IEV4dGVuZGVkV2luZG93XG4gICkge31cblxuICBwdWJsaWMgZ2V0IGluaXRpYWxpemUkKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLmluaXRpYWxpemUuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHN0YXR1cyQoKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy5zdGF0dXNVcmwuYXNPYnNlcnZhYmxlKCkucGlwZShmaWx0ZXIoKHN0YXR1cykgPT4gISFzdGF0dXMpKTtcbiAgfVxuXG4gIHB1YmxpYyBlbWl0U3RhdHVzVXJsKHN0YXR1c1VybDogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5zdGF0dXNVcmwubmV4dChzdGF0dXNVcmwpO1xuICB9XG5cbiAgcHVibGljIGVtaXRJbml0aWFsaXplKGlzSW5pdGlhbGl6ZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLmluaXRpYWxpemUubmV4dChpc0luaXRpYWxpemVkKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXREZWNvZGVkQ2hlY2tvdXQ8VCBleHRlbmRzIENvbW1vbkNoZWNrb3V0PihcbiAgICBiYXNlNjRjaGVja291dERhdGE6IHN0cmluZ1xuICApOiBUIHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIEpTT04ucGFyc2UoYXRvYihiYXNlNjRjaGVja291dERhdGEpKSBhcyBUO1xuICAgIH0gY2F0Y2ggKGVycm9yOiB1bmtub3duKSB7XG4gICAgICB0aHJvdyBuZXcgQXBwRXJyb3IoJ2xvYWQgc2NyaXB0IHNlcnZpY2U6IGRlY29kZSBlcnJvcicpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBsb2FkU2NyaXB0KFxuICAgIHVybDogc3RyaW5nLFxuICAgIG9uTG9hZDogKCkgPT4gdm9pZCxcbiAgICBhZGRTY3JpcHRDdXN0b21BdHRyaWJ1dGVzPzogKHNjcmlwdDogSFRNTFNjcmlwdEVsZW1lbnQpID0+IEhUTUxTY3JpcHRFbGVtZW50XG4gICk6IHZvaWQge1xuICAgIHRoaXMuaW5pdGlhbGl6ZS5uZXh0KGZhbHNlKTtcbiAgICBsZXQgc2NyaXB0OiBIVE1MU2NyaXB0RWxlbWVudCA9XG4gICAgICB0aGlzLndpbmRvdy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTtcblxuICAgIHNjcmlwdC5hc3luYyA9IHRydWU7XG4gICAgc2NyaXB0LnNyYyA9IHVybDtcblxuICAgIGlmIChhZGRTY3JpcHRDdXN0b21BdHRyaWJ1dGVzKSB7XG4gICAgICBzY3JpcHQgPSBhZGRTY3JpcHRDdXN0b21BdHRyaWJ1dGVzKHNjcmlwdCk7XG4gICAgfVxuXG4gICAgdGhpcy53aW5kb3cuZG9jdW1lbnQuYm9keS5hcHBlbmQoc2NyaXB0KTtcblxuICAgIHNjcmlwdC5vbmxvYWQgPSAoKSA9PiB7XG4gICAgICB0cnkge1xuICAgICAgICBvbkxvYWQoKTtcbiAgICAgIH0gY2F0Y2ggKGVycm9yOiB1bmtub3duKSB7XG4gICAgICAgIGxldCBtZXNzYWdlID0gZXJyb3I7XG5cbiAgICAgICAgaWYgKGVycm9yIGluc3RhbmNlb2YgRXJyb3IpIHtcbiAgICAgICAgICBtZXNzYWdlID0gZXJyb3IubWVzc2FnZTtcbiAgICAgICAgfVxuICAgICAgICB0aHJvdyBuZXcgQXBwRXJyb3IoXG4gICAgICAgICAgYFBhZ2VzOiBlcnJvciBkdXJpbmcgc2NyaXB0IG9ubG9hZCBoYW5kbGVyOiAke1xuICAgICAgICAgICAgbWVzc2FnZSBhcyBzdHJpbmdcbiAgICAgICAgICB9LCB1cmwgLSAke3VybH1gXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfTtcblxuICAgIHNjcmlwdC5vbmVycm9yID0gKFxuICAgICAgZXZlbnQ6IEV2ZW50IHwgc3RyaW5nLFxuICAgICAgc291cmNlPzogc3RyaW5nLFxuICAgICAgbGluZW5vPzogbnVtYmVyLFxuICAgICAgY29sbm8/OiBudW1iZXIsXG4gICAgICBlcnJvcj86IEVycm9yXG4gICAgKSA9PiB7XG4gICAgICBjb25zdCBlcnJvck1lc3NhZ2UgPSBlcnJvciA/IGVycm9yLm1lc3NhZ2UgOiAnJztcblxuICAgICAgbGV0IGV2ZW50TWVzc2FnZSA9IGV2ZW50IGFzIHN0cmluZztcblxuICAgICAgaWYgKHR5cGVvZiBldmVudCA9PT0gJ29iamVjdCcpIHtcbiAgICAgICAgZXZlbnRNZXNzYWdlID0gSlNPTi5zdHJpbmdpZnkoZXZlbnQpO1xuICAgICAgfVxuXG4gICAgICB0aHJvdyBuZXcgQXBwRXJyb3IoXG4gICAgICAgIGBQYWdlczogZXJyb3IgZHVyaW5nIHNjcmlwdCBvbmVycm9yIGhhbmRsZXI6XG4gICAgICAgIHVybCAtICR7dXJsfSxcbiAgICAgICAgZXZlbnQgLSAke2V2ZW50TWVzc2FnZX0sXG4gICAgICAgIHNvdXJjZSAtICR7c291cmNlID8/ICcnfSxcbiAgICAgICAgbGluZW5vIC0gJHtsaW5lbm8gPz8gJyd9LFxuICAgICAgICBjb2xubyAtICR7Y29sbm8gPz8gJyd9LFxuICAgICAgICBlcnJvciAtICR7ZXJyb3JNZXNzYWdlfWBcbiAgICAgICk7XG4gICAgfTtcbiAgfVxuXG4gIHB1YmxpYyBpc0luaXRpYWxpemVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmluaXRpYWxpemUuZ2V0VmFsdWUoKTtcbiAgfVxufVxuIl19
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
import { Inject, Injectable } from '@angular/core';
|
|
2
|
-
import { isNull } from '../type-guards/is-null.function';
|
|
3
|
-
import { isUndefined } from '../type-guards/is-undefined.function';
|
|
4
|
-
import { windowToken } from '../window.token';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "../settings/settings.service";
|
|
7
|
-
export class SessionService {
|
|
8
|
-
constructor(window, settingsService) {
|
|
9
|
-
this.window = window;
|
|
10
|
-
this.settingsService = settingsService;
|
|
11
|
-
this.cache = {};
|
|
12
|
-
}
|
|
13
|
-
/**
|
|
14
|
-
* @param {string} key must be uniq entire all app
|
|
15
|
-
* @param {unknown} value can be anything
|
|
16
|
-
*/
|
|
17
|
-
set(key, value) {
|
|
18
|
-
this.cache[key] = value;
|
|
19
|
-
try {
|
|
20
|
-
this.window.sessionStorage.setItem(this.getStorageKey(key), JSON.stringify(value));
|
|
21
|
-
}
|
|
22
|
-
catch (error) {
|
|
23
|
-
console.warn('Session storage not available.');
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
get(key) {
|
|
27
|
-
const cacheValue = this.cache[key];
|
|
28
|
-
if (!isUndefined(cacheValue)) {
|
|
29
|
-
return cacheValue;
|
|
30
|
-
}
|
|
31
|
-
try {
|
|
32
|
-
const storageValue = this.window.sessionStorage.getItem(this.getStorageKey(key));
|
|
33
|
-
if (isNull(storageValue)) {
|
|
34
|
-
return null;
|
|
35
|
-
}
|
|
36
|
-
return JSON.parse(storageValue);
|
|
37
|
-
}
|
|
38
|
-
catch (error) {
|
|
39
|
-
return null;
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
getStorageKey(key) {
|
|
43
|
-
return `${key}${this.settingsService.token}`;
|
|
44
|
-
}
|
|
45
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: SessionService, deps: [{ token: windowToken }, { token: i1.SettingsService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
46
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: SessionService, providedIn: 'root' }); }
|
|
47
|
-
}
|
|
48
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: SessionService, decorators: [{
|
|
49
|
-
type: Injectable,
|
|
50
|
-
args: [{
|
|
51
|
-
providedIn: 'root',
|
|
52
|
-
}]
|
|
53
|
-
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
54
|
-
type: Inject,
|
|
55
|
-
args: [windowToken]
|
|
56
|
-
}] }, { type: i1.SettingsService }] });
|
|
57
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Vzc2lvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcGF5bWVudC1jbGllbnQtY29yZS9zcmMvbGliL2NvcmUvc2Vzc2lvbi9zZXNzaW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHbkQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3pELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7OztBQUs5QyxNQUFNLE9BQU8sY0FBYztJQUd6QixZQUN3QyxNQUFzQixFQUMzQyxlQUFnQztRQURYLFdBQU0sR0FBTixNQUFNLENBQWdCO1FBQzNDLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUozQyxVQUFLLEdBQStCLEVBQUUsQ0FBQztJQUs1QyxDQUFDO0lBRUo7OztPQUdHO0lBQ0ksR0FBRyxDQUFDLEdBQVcsRUFBRSxLQUFjO1FBQ3BDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDO1FBRXhCLElBQUksQ0FBQztZQUNILElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FDaEMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsRUFDdkIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FDdEIsQ0FBQztRQUNKLENBQUM7UUFBQyxPQUFPLEtBQWMsRUFBRSxDQUFDO1lBQ3hCLE9BQU8sQ0FBQyxJQUFJLENBQUMsZ0NBQWdDLENBQUMsQ0FBQztRQUNqRCxDQUFDO0lBQ0gsQ0FBQztJQUVNLEdBQUcsQ0FBSSxHQUFXO1FBQ3ZCLE1BQU0sVUFBVSxHQUFZLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFNUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO1lBQzdCLE9BQU8sVUFBZSxDQUFDO1FBQ3pCLENBQUM7UUFFRCxJQUFJLENBQUM7WUFDSCxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQ3JELElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQ3hCLENBQUM7WUFFRixJQUFJLE1BQU0sQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDO2dCQUN6QixPQUFPLElBQUksQ0FBQztZQUNkLENBQUM7WUFFRCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFNLENBQUM7UUFDdkMsQ0FBQztRQUFDLE9BQU8sS0FBYyxFQUFFLENBQUM7WUFDeEIsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO0lBQ0gsQ0FBQztJQUVPLGFBQWEsQ0FBQyxHQUFXO1FBQy9CLE9BQU8sR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUMvQyxDQUFDOzhHQWpEVSxjQUFjLGtCQUlmLFdBQVc7a0hBSlYsY0FBYyxjQUZiLE1BQU07OzJGQUVQLGNBQWM7a0JBSDFCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFLSSxNQUFNOzJCQUFDLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEV4dGVuZGVkV2luZG93IH0gZnJvbSAnLi4vZXh0ZW5kZWQtd2luZG93LmludGVyZmFjZSc7XG5pbXBvcnQgeyBTZXR0aW5nc1NlcnZpY2UgfSBmcm9tICcuLi9zZXR0aW5ncy9zZXR0aW5ncy5zZXJ2aWNlJztcbmltcG9ydCB7IGlzTnVsbCB9IGZyb20gJy4uL3R5cGUtZ3VhcmRzL2lzLW51bGwuZnVuY3Rpb24nO1xuaW1wb3J0IHsgaXNVbmRlZmluZWQgfSBmcm9tICcuLi90eXBlLWd1YXJkcy9pcy11bmRlZmluZWQuZnVuY3Rpb24nO1xuaW1wb3J0IHsgd2luZG93VG9rZW4gfSBmcm9tICcuLi93aW5kb3cudG9rZW4nO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgU2Vzc2lvblNlcnZpY2Uge1xuICBwcml2YXRlIGNhY2hlOiB7IFtrZXk6IHN0cmluZ106IHVua25vd24gfSA9IHt9O1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICBASW5qZWN0KHdpbmRvd1Rva2VuKSBwcml2YXRlIHJlYWRvbmx5IHdpbmRvdzogRXh0ZW5kZWRXaW5kb3csXG4gICAgcHJpdmF0ZSByZWFkb25seSBzZXR0aW5nc1NlcnZpY2U6IFNldHRpbmdzU2VydmljZVxuICApIHt9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBrZXkgbXVzdCBiZSB1bmlxIGVudGlyZSBhbGwgYXBwXG4gICAqIEBwYXJhbSB7dW5rbm93bn0gdmFsdWUgY2FuIGJlIGFueXRoaW5nXG4gICAqL1xuICBwdWJsaWMgc2V0KGtleTogc3RyaW5nLCB2YWx1ZTogdW5rbm93bik6IHZvaWQge1xuICAgIHRoaXMuY2FjaGVba2V5XSA9IHZhbHVlO1xuXG4gICAgdHJ5IHtcbiAgICAgIHRoaXMud2luZG93LnNlc3Npb25TdG9yYWdlLnNldEl0ZW0oXG4gICAgICAgIHRoaXMuZ2V0U3RvcmFnZUtleShrZXkpLFxuICAgICAgICBKU09OLnN0cmluZ2lmeSh2YWx1ZSlcbiAgICAgICk7XG4gICAgfSBjYXRjaCAoZXJyb3I6IHVua25vd24pIHtcbiAgICAgIGNvbnNvbGUud2FybignU2Vzc2lvbiBzdG9yYWdlIG5vdCBhdmFpbGFibGUuJyk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldDxUPihrZXk6IHN0cmluZyk6IFQgfCBudWxsIHtcbiAgICBjb25zdCBjYWNoZVZhbHVlOiB1bmtub3duID0gdGhpcy5jYWNoZVtrZXldO1xuXG4gICAgaWYgKCFpc1VuZGVmaW5lZChjYWNoZVZhbHVlKSkge1xuICAgICAgcmV0dXJuIGNhY2hlVmFsdWUgYXMgVDtcbiAgICB9XG5cbiAgICB0cnkge1xuICAgICAgY29uc3Qgc3RvcmFnZVZhbHVlID0gdGhpcy53aW5kb3cuc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbShcbiAgICAgICAgdGhpcy5nZXRTdG9yYWdlS2V5KGtleSlcbiAgICAgICk7XG5cbiAgICAgIGlmIChpc051bGwoc3RvcmFnZVZhbHVlKSkge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIEpTT04ucGFyc2Uoc3RvcmFnZVZhbHVlKSBhcyBUO1xuICAgIH0gY2F0Y2ggKGVycm9yOiB1bmtub3duKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldFN0b3JhZ2VLZXkoa2V5OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBgJHtrZXl9JHt0aGlzLnNldHRpbmdzU2VydmljZS50b2tlbn1gO1xuICB9XG59XG4iXX0=
|
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
import { firstValueFrom } from 'rxjs';
|
|
2
|
-
import { Injectable } from '@angular/core';
|
|
3
|
-
import { HttpParams } from '@angular/common/http';
|
|
4
|
-
import { EmptyUtilsResponseError } from './empty-utils-response.error';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "../http/secure-api/secure-api.service";
|
|
7
|
-
export class SettingsService {
|
|
8
|
-
get project() {
|
|
9
|
-
if (!this.response) {
|
|
10
|
-
throw new EmptyUtilsResponseError();
|
|
11
|
-
}
|
|
12
|
-
return this.response.project;
|
|
13
|
-
}
|
|
14
|
-
get purchase() {
|
|
15
|
-
if (!this.response) {
|
|
16
|
-
throw new EmptyUtilsResponseError();
|
|
17
|
-
}
|
|
18
|
-
return this.response.purchase;
|
|
19
|
-
}
|
|
20
|
-
get settings() {
|
|
21
|
-
if (!this.response) {
|
|
22
|
-
throw new EmptyUtilsResponseError();
|
|
23
|
-
}
|
|
24
|
-
if (this.response?.purchase_external_id) {
|
|
25
|
-
return {
|
|
26
|
-
...this.response.settings,
|
|
27
|
-
purchase_external_id: this.response.purchase_external_id,
|
|
28
|
-
};
|
|
29
|
-
}
|
|
30
|
-
return this.response?.settings;
|
|
31
|
-
}
|
|
32
|
-
get user() {
|
|
33
|
-
if (!this.response) {
|
|
34
|
-
throw new EmptyUtilsResponseError();
|
|
35
|
-
}
|
|
36
|
-
return this.response.user;
|
|
37
|
-
}
|
|
38
|
-
get utilsResponse() {
|
|
39
|
-
if (!this.response) {
|
|
40
|
-
throw new EmptyUtilsResponseError();
|
|
41
|
-
}
|
|
42
|
-
return this.response;
|
|
43
|
-
}
|
|
44
|
-
get unsafeUtilsResponse() {
|
|
45
|
-
return this.response ?? null;
|
|
46
|
-
}
|
|
47
|
-
get isEmpty() {
|
|
48
|
-
return !this.response;
|
|
49
|
-
}
|
|
50
|
-
get token() {
|
|
51
|
-
return this._token;
|
|
52
|
-
}
|
|
53
|
-
get hasResponse() {
|
|
54
|
-
return !!this.response;
|
|
55
|
-
}
|
|
56
|
-
constructor(secureApi) {
|
|
57
|
-
this.secureApi = secureApi;
|
|
58
|
-
this.isInitialized = false;
|
|
59
|
-
this._token = '';
|
|
60
|
-
this.sandboxMode = false;
|
|
61
|
-
}
|
|
62
|
-
async init(configuration) {
|
|
63
|
-
if (!configuration.token) {
|
|
64
|
-
return Promise.reject('token is missing');
|
|
65
|
-
}
|
|
66
|
-
this._token = configuration.token;
|
|
67
|
-
this.sandboxMode = !!configuration.sandbox;
|
|
68
|
-
this._refer = configuration.refer;
|
|
69
|
-
await this.sendRequest(this.token);
|
|
70
|
-
this.isInitialized = true;
|
|
71
|
-
}
|
|
72
|
-
isSandboxMode() {
|
|
73
|
-
return this.sandboxMode;
|
|
74
|
-
}
|
|
75
|
-
get refer() {
|
|
76
|
-
return this._refer;
|
|
77
|
-
}
|
|
78
|
-
async sendRequest(token) {
|
|
79
|
-
const params = new HttpParams().set('access_token', token);
|
|
80
|
-
this.secureApi.setSandboxMode(this.isSandboxMode());
|
|
81
|
-
this.response = await firstValueFrom(this.secureApi.get('utils', { params }));
|
|
82
|
-
}
|
|
83
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: SettingsService, deps: [{ token: i1.SecureApiClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
84
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: SettingsService, providedIn: 'root' }); }
|
|
85
|
-
}
|
|
86
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: SettingsService, decorators: [{
|
|
87
|
-
type: Injectable,
|
|
88
|
-
args: [{
|
|
89
|
-
providedIn: 'root',
|
|
90
|
-
}]
|
|
91
|
-
}], ctorParameters: () => [{ type: i1.SecureApiClient }] });
|
|
92
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZ3Muc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3BheW1lbnQtY2xpZW50LWNvcmUvc3JjL2xpYi9jb3JlL3NldHRpbmdzL3NldHRpbmdzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUlsRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7O0FBVXZFLE1BQU0sT0FBTyxlQUFlO0lBQzFCLElBQVcsT0FBTztRQUNoQixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ25CLE1BQU0sSUFBSSx1QkFBdUIsRUFBRSxDQUFDO1FBQ3RDLENBQUM7UUFFRCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDO0lBQy9CLENBQUM7SUFFRCxJQUFXLFFBQVE7UUFDakIsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNuQixNQUFNLElBQUksdUJBQXVCLEVBQUUsQ0FBQztRQUN0QyxDQUFDO1FBRUQsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQztJQUNoQyxDQUFDO0lBRUQsSUFBVyxRQUFRO1FBQ2pCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDbkIsTUFBTSxJQUFJLHVCQUF1QixFQUFFLENBQUM7UUFDdEMsQ0FBQztRQUVELElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxvQkFBb0IsRUFBRSxDQUFDO1lBQ3hDLE9BQU87Z0JBQ0wsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVE7Z0JBQ3pCLG9CQUFvQixFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsb0JBQW9CO2FBQ3pELENBQUM7UUFDSixDQUFDO1FBRUQsT0FBTyxJQUFJLENBQUMsUUFBUSxFQUFFLFFBQVEsQ0FBQztJQUNqQyxDQUFDO0lBRUQsSUFBVyxJQUFJO1FBQ2IsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNuQixNQUFNLElBQUksdUJBQXVCLEVBQUUsQ0FBQztRQUN0QyxDQUFDO1FBRUQsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztJQUM1QixDQUFDO0lBRUQsSUFBVyxhQUFhO1FBQ3RCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDbkIsTUFBTSxJQUFJLHVCQUF1QixFQUFFLENBQUM7UUFDdEMsQ0FBQztRQUVELE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBRUQsSUFBVyxtQkFBbUI7UUFDNUIsT0FBTyxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQztJQUMvQixDQUFDO0lBRUQsSUFBVyxPQUFPO1FBQ2hCLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3hCLENBQUM7SUFFRCxJQUFXLEtBQUs7UUFDZCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztJQUVELElBQVcsV0FBVztRQUNwQixPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3pCLENBQUM7SUFXRCxZQUFvQyxTQUEwQjtRQUExQixjQUFTLEdBQVQsU0FBUyxDQUFpQjtRQVR2RCxrQkFBYSxHQUFHLEtBQUssQ0FBQztRQUlyQixXQUFNLEdBQUcsRUFBRSxDQUFDO1FBRVosZ0JBQVcsR0FBRyxLQUFLLENBQUM7SUFHcUMsQ0FBQztJQUUzRCxLQUFLLENBQUMsSUFBSSxDQUFDLGFBQWdDO1FBQ2hELElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDekIsT0FBTyxPQUFPLENBQUMsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDNUMsQ0FBQztRQUVELElBQUksQ0FBQyxNQUFNLEdBQUcsYUFBYSxDQUFDLEtBQUssQ0FBQztRQUNsQyxJQUFJLENBQUMsV0FBVyxHQUFHLENBQUMsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDO1FBQzNDLElBQUksQ0FBQyxNQUFNLEdBQUcsYUFBYSxDQUFDLEtBQUssQ0FBQztRQUVsQyxNQUFNLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRW5DLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDO0lBQzVCLENBQUM7SUFFTSxhQUFhO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUMxQixDQUFDO0lBRUQsSUFBVyxLQUFLO1FBQ2QsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7SUFFTyxLQUFLLENBQUMsV0FBVyxDQUFDLEtBQWE7UUFDckMsTUFBTSxNQUFNLEdBQUcsSUFBSSxVQUFVLEVBQUUsQ0FBQyxHQUFHLENBQUMsY0FBYyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBRTNELElBQUksQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDO1FBRXBELElBQUksQ0FBQyxRQUFRLEdBQUcsTUFBTSxjQUFjLENBQ2xDLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFnQixPQUFPLEVBQUUsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUN2RCxDQUFDO0lBQ0osQ0FBQzs4R0F6R1UsZUFBZTtrSEFBZixlQUFlLGNBRmQsTUFBTTs7MkZBRVAsZUFBZTtrQkFIM0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmaXJzdFZhbHVlRnJvbSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSHR0cFBhcmFtcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IFNlY3VyZUFwaUNsaWVudCB9IGZyb20gJy4uL2h0dHAvc2VjdXJlLWFwaS9zZWN1cmUtYXBpLnNlcnZpY2UnO1xuaW1wb3J0IHsgRGVlcFJlYWRvbmx5IH0gZnJvbSAnLi4vZGVlcC1yZWFkb25seS50eXBlJztcbmltcG9ydCB7IEluaXRDb25maWd1cmF0aW9uIH0gZnJvbSAnLi9jb25maWd1cmF0aW9uLmludGVyZmFjZSc7XG5pbXBvcnQgeyBFbXB0eVV0aWxzUmVzcG9uc2VFcnJvciB9IGZyb20gJy4vZW1wdHktdXRpbHMtcmVzcG9uc2UuZXJyb3InO1xuaW1wb3J0IHsgVXNlciB9IGZyb20gJy4vdXNlci5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgU2V0dGluZ3MgfSBmcm9tICcuL3NldHRpbmdzLmludGVyZmFjZSc7XG5pbXBvcnQgeyBQdXJjaGFzZSB9IGZyb20gJy4vcHVyY2hhc2UuaW50ZXJmYWNlJztcbmltcG9ydCB7IFByb2plY3QgfSBmcm9tICcuL3Byb2plY3QuaW50ZXJmYWNlJztcbmltcG9ydCB7IFV0aWxzUmVzcG9uc2UgfSBmcm9tICcuL3V0aWxzLXJlc3BvbnNlLmludGVyZmFjZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBTZXR0aW5nc1NlcnZpY2Uge1xuICBwdWJsaWMgZ2V0IHByb2plY3QoKTogRGVlcFJlYWRvbmx5PFByb2plY3Q+IHtcbiAgICBpZiAoIXRoaXMucmVzcG9uc2UpIHtcbiAgICAgIHRocm93IG5ldyBFbXB0eVV0aWxzUmVzcG9uc2VFcnJvcigpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLnJlc3BvbnNlLnByb2plY3Q7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHB1cmNoYXNlKCk6IERlZXBSZWFkb25seTxQdXJjaGFzZT4ge1xuICAgIGlmICghdGhpcy5yZXNwb25zZSkge1xuICAgICAgdGhyb3cgbmV3IEVtcHR5VXRpbHNSZXNwb25zZUVycm9yKCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMucmVzcG9uc2UucHVyY2hhc2U7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHNldHRpbmdzKCk6IERlZXBSZWFkb25seTxTZXR0aW5ncz4ge1xuICAgIGlmICghdGhpcy5yZXNwb25zZSkge1xuICAgICAgdGhyb3cgbmV3IEVtcHR5VXRpbHNSZXNwb25zZUVycm9yKCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMucmVzcG9uc2U/LnB1cmNoYXNlX2V4dGVybmFsX2lkKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAuLi50aGlzLnJlc3BvbnNlLnNldHRpbmdzLFxuICAgICAgICBwdXJjaGFzZV9leHRlcm5hbF9pZDogdGhpcy5yZXNwb25zZS5wdXJjaGFzZV9leHRlcm5hbF9pZCxcbiAgICAgIH07XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMucmVzcG9uc2U/LnNldHRpbmdzO1xuICB9XG5cbiAgcHVibGljIGdldCB1c2VyKCk6IERlZXBSZWFkb25seTxVc2VyPiB7XG4gICAgaWYgKCF0aGlzLnJlc3BvbnNlKSB7XG4gICAgICB0aHJvdyBuZXcgRW1wdHlVdGlsc1Jlc3BvbnNlRXJyb3IoKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5yZXNwb25zZS51c2VyO1xuICB9XG5cbiAgcHVibGljIGdldCB1dGlsc1Jlc3BvbnNlKCk6IERlZXBSZWFkb25seTxVdGlsc1Jlc3BvbnNlPiB7XG4gICAgaWYgKCF0aGlzLnJlc3BvbnNlKSB7XG4gICAgICB0aHJvdyBuZXcgRW1wdHlVdGlsc1Jlc3BvbnNlRXJyb3IoKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5yZXNwb25zZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdW5zYWZlVXRpbHNSZXNwb25zZSgpOiBEZWVwUmVhZG9ubHk8VXRpbHNSZXNwb25zZSB8IG51bGw+IHtcbiAgICByZXR1cm4gdGhpcy5yZXNwb25zZSA/PyBudWxsO1xuICB9XG5cbiAgcHVibGljIGdldCBpc0VtcHR5KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhdGhpcy5yZXNwb25zZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdG9rZW4oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fdG9rZW47XG4gIH1cblxuICBwdWJsaWMgZ2V0IGhhc1Jlc3BvbnNlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMucmVzcG9uc2U7XG4gIH1cblxuICBwdWJsaWMgaXNJbml0aWFsaXplZCA9IGZhbHNlO1xuXG4gIHByaXZhdGUgcmVzcG9uc2UhOiBEZWVwUmVhZG9ubHk8VXRpbHNSZXNwb25zZT4gfCB1bmRlZmluZWQ7XG5cbiAgcHJpdmF0ZSBfdG9rZW4gPSAnJztcblxuICBwcml2YXRlIHNhbmRib3hNb2RlID0gZmFsc2U7XG4gIHByaXZhdGUgX3JlZmVyITogbnVtYmVyO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHNlY3VyZUFwaTogU2VjdXJlQXBpQ2xpZW50KSB7fVxuXG4gIHB1YmxpYyBhc3luYyBpbml0KGNvbmZpZ3VyYXRpb246IEluaXRDb25maWd1cmF0aW9uKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKCFjb25maWd1cmF0aW9uLnRva2VuKSB7XG4gICAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QoJ3Rva2VuIGlzIG1pc3NpbmcnKTtcbiAgICB9XG5cbiAgICB0aGlzLl90b2tlbiA9IGNvbmZpZ3VyYXRpb24udG9rZW47XG4gICAgdGhpcy5zYW5kYm94TW9kZSA9ICEhY29uZmlndXJhdGlvbi5zYW5kYm94O1xuICAgIHRoaXMuX3JlZmVyID0gY29uZmlndXJhdGlvbi5yZWZlcjtcblxuICAgIGF3YWl0IHRoaXMuc2VuZFJlcXVlc3QodGhpcy50b2tlbik7XG5cbiAgICB0aGlzLmlzSW5pdGlhbGl6ZWQgPSB0cnVlO1xuICB9XG5cbiAgcHVibGljIGlzU2FuZGJveE1vZGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuc2FuZGJveE1vZGU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHJlZmVyKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX3JlZmVyO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBzZW5kUmVxdWVzdCh0b2tlbjogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgcGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoKS5zZXQoJ2FjY2Vzc190b2tlbicsIHRva2VuKTtcblxuICAgIHRoaXMuc2VjdXJlQXBpLnNldFNhbmRib3hNb2RlKHRoaXMuaXNTYW5kYm94TW9kZSgpKTtcblxuICAgIHRoaXMucmVzcG9uc2UgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbShcbiAgICAgIHRoaXMuc2VjdXJlQXBpLmdldDxVdGlsc1Jlc3BvbnNlPigndXRpbHMnLCB7IHBhcmFtcyB9KVxuICAgICk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class UrlService {
|
|
4
|
-
addSearchParams(url, params = {}) {
|
|
5
|
-
if (!url) {
|
|
6
|
-
return '';
|
|
7
|
-
}
|
|
8
|
-
const urlObject = new URL(url);
|
|
9
|
-
for (const [key, value] of Object.entries(params)) {
|
|
10
|
-
urlObject.searchParams.set(key, value);
|
|
11
|
-
}
|
|
12
|
-
return urlObject.toString();
|
|
13
|
-
}
|
|
14
|
-
getSearchParams(url) {
|
|
15
|
-
if (!url) {
|
|
16
|
-
return {};
|
|
17
|
-
}
|
|
18
|
-
const urlObject = new URL(url);
|
|
19
|
-
const searchParams = {};
|
|
20
|
-
for (const [key, value] of urlObject.searchParams) {
|
|
21
|
-
searchParams[key] = value;
|
|
22
|
-
}
|
|
23
|
-
return searchParams;
|
|
24
|
-
}
|
|
25
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: UrlService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
26
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: UrlService, providedIn: 'root' }); }
|
|
27
|
-
}
|
|
28
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: UrlService, decorators: [{
|
|
29
|
-
type: Injectable,
|
|
30
|
-
args: [{
|
|
31
|
-
providedIn: 'root',
|
|
32
|
-
}]
|
|
33
|
-
}] });
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXJsLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS91cmwvdXJsLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFNM0MsTUFBTSxPQUFPLFVBQVU7SUFDZCxlQUFlLENBQUMsR0FBVyxFQUFFLFNBQXVCLEVBQUU7UUFDM0QsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQ1QsT0FBTyxFQUFFLENBQUM7UUFDWixDQUFDO1FBRUQsTUFBTSxTQUFTLEdBQUcsSUFBSSxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDL0IsS0FBSyxNQUFNLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztZQUNsRCxTQUFTLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDekMsQ0FBQztRQUVELE9BQU8sU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFTSxlQUFlLENBQUMsR0FBVztRQUNoQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDVCxPQUFPLEVBQUUsQ0FBQztRQUNaLENBQUM7UUFFRCxNQUFNLFNBQVMsR0FBRyxJQUFJLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUMvQixNQUFNLFlBQVksR0FBaUIsRUFBRSxDQUFDO1FBRXRDLEtBQUssTUFBTSxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsSUFBSSxTQUFTLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDbEQsWUFBWSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEtBQUssQ0FBQztRQUM1QixDQUFDO1FBRUQsT0FBTyxZQUFZLENBQUM7SUFDdEIsQ0FBQzs4R0EzQlUsVUFBVTtrSEFBVixVQUFVLGNBRlQsTUFBTTs7MkZBRVAsVUFBVTtrQkFIdEIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTZWFyY2hQYXJhbXMgfSBmcm9tICcuL3NlYXJjaC1wYXJhbXMuaW50ZXJmYWNlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFVybFNlcnZpY2Uge1xuICBwdWJsaWMgYWRkU2VhcmNoUGFyYW1zKHVybDogc3RyaW5nLCBwYXJhbXM6IFNlYXJjaFBhcmFtcyA9IHt9KTogc3RyaW5nIHtcbiAgICBpZiAoIXVybCkge1xuICAgICAgcmV0dXJuICcnO1xuICAgIH1cblxuICAgIGNvbnN0IHVybE9iamVjdCA9IG5ldyBVUkwodXJsKTtcbiAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBPYmplY3QuZW50cmllcyhwYXJhbXMpKSB7XG4gICAgICB1cmxPYmplY3Quc2VhcmNoUGFyYW1zLnNldChrZXksIHZhbHVlKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdXJsT2JqZWN0LnRvU3RyaW5nKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0U2VhcmNoUGFyYW1zKHVybDogc3RyaW5nKTogU2VhcmNoUGFyYW1zIHtcbiAgICBpZiAoIXVybCkge1xuICAgICAgcmV0dXJuIHt9O1xuICAgIH1cblxuICAgIGNvbnN0IHVybE9iamVjdCA9IG5ldyBVUkwodXJsKTtcbiAgICBjb25zdCBzZWFyY2hQYXJhbXM6IFNlYXJjaFBhcmFtcyA9IHt9O1xuXG4gICAgZm9yIChjb25zdCBba2V5LCB2YWx1ZV0gb2YgdXJsT2JqZWN0LnNlYXJjaFBhcmFtcykge1xuICAgICAgc2VhcmNoUGFyYW1zW2tleV0gPSB2YWx1ZTtcbiAgICB9XG5cbiAgICByZXR1cm4gc2VhcmNoUGFyYW1zO1xuICB9XG59XG4iXX0=
|