@adyen/adyen-web 6.25.0 → 6.26.0
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/dist/cjs/adyen.css +16 -13
- package/dist/cjs/adyen.css.map +1 -1
- package/dist/cjs/index.cjs +2 -2
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/cjs/index.d.cts +2257 -2222
- package/dist/es/adyen.css +16 -13
- package/dist/es/adyen.css.map +1 -1
- package/dist/es/components/ANCV/ANCV.js +1 -1
- package/dist/es/components/ANCV/ANCV.js.map +1 -1
- package/dist/es/components/Ach/Ach.js +1 -1
- package/dist/es/components/Ach/Ach.js.map +1 -1
- package/dist/es/components/Address/Address.js +1 -1
- package/dist/es/components/Address/Address.js.map +1 -1
- package/dist/es/components/AmazonPay/AmazonPay.js +1 -1
- package/dist/es/components/AmazonPay/AmazonPay.js.map +1 -1
- package/dist/es/components/ApplePay/ApplePay.js +1 -1
- package/dist/es/components/ApplePay/ApplePay.js.map +1 -1
- package/dist/es/components/ApplePay/services/ApplePaySdkLoader.js.map +1 -1
- package/dist/es/components/ApplePay/utils/resolve-supported-version.js +1 -1
- package/dist/es/components/ApplePay/utils/resolve-supported-version.js.map +1 -1
- package/dist/es/components/BacsDD/BacsDD.js +1 -1
- package/dist/es/components/BacsDD/BacsDD.js.map +1 -1
- package/dist/es/components/BankTransfer/BankTransfer.js +1 -1
- package/dist/es/components/BankTransfer/BankTransfer.js.map +1 -1
- package/dist/es/components/Blik/Blik.js +1 -1
- package/dist/es/components/Blik/Blik.js.map +1 -1
- package/dist/es/components/Boleto/Boleto.js +1 -1
- package/dist/es/components/Boleto/Boleto.js.map +1 -1
- package/dist/es/components/Card/Card.js +1 -1
- package/dist/es/components/Card/Card.js.map +1 -1
- package/dist/es/components/Card/components/CardInput/CardInput.js +1 -1
- package/dist/es/components/Card/components/CardInput/CardInput.js.map +1 -1
- package/dist/es/components/Card/components/CardInput/components/AvailableBrands/AvailableBrands.js +1 -1
- package/dist/es/components/Card/components/CardInput/components/AvailableBrands/AvailableBrands.js.map +1 -1
- package/dist/es/components/Card/components/CardInput/components/BrandIcon.js +1 -1
- package/dist/es/components/Card/components/CardInput/components/BrandIcon.js.map +1 -1
- package/dist/es/components/Card/components/CardInput/components/CVC.js +1 -1
- package/dist/es/components/Card/components/CardInput/components/CVC.js.map +1 -1
- package/dist/es/components/Card/components/CardInput/components/CVCHint.js +1 -1
- package/dist/es/components/Card/components/CardInput/components/CVCHint.js.map +1 -1
- package/dist/es/components/Card/components/CardInput/components/CardNumber.js +1 -1
- package/dist/es/components/Card/components/CardInput/components/CardNumber.js.map +1 -1
- package/dist/es/components/Card/components/CardInput/components/ExpirationDate.js +1 -1
- package/dist/es/components/Card/components/CardInput/components/ExpirationDate.js.map +1 -1
- package/dist/es/components/Card/components/CardInput/types.js.map +1 -1
- package/dist/es/components/Card/components/CardInput/utils.js +1 -1
- package/dist/es/components/Card/components/CardInput/utils.js.map +1 -1
- package/dist/es/components/Card/components/Fastlane/FastlaneSignup.js +1 -1
- package/dist/es/components/Card/components/Fastlane/FastlaneSignup.js.map +1 -1
- package/dist/es/components/Card/components/Fastlane/InfoButton.js +1 -1
- package/dist/es/components/Card/components/Fastlane/InfoButton.js.map +1 -1
- package/dist/es/components/Card/components/Fastlane/InfoModal.js +1 -1
- package/dist/es/components/Card/components/Fastlane/InfoModal.js.map +1 -1
- package/dist/es/components/CashAppPay/CashAppPay.js +1 -1
- package/dist/es/components/CashAppPay/CashAppPay.js.map +1 -1
- package/dist/es/components/CashAppPay/services/CashAppSdkLoader.js.map +1 -1
- package/dist/es/components/ClickToPay/ClickToPay.js +1 -1
- package/dist/es/components/ClickToPay/ClickToPay.js.map +1 -1
- package/dist/es/components/CustomCard/CustomCard.js +1 -1
- package/dist/es/components/CustomCard/CustomCard.js.map +1 -1
- package/dist/es/components/Doku/Doku.js +1 -1
- package/dist/es/components/Doku/Doku.js.map +1 -1
- package/dist/es/components/Donation/Donation.js +1 -1
- package/dist/es/components/Donation/Donation.js.map +1 -1
- package/dist/es/components/Dragonpay/Dragonpay.js +1 -1
- package/dist/es/components/Dragonpay/Dragonpay.js.map +1 -1
- package/dist/es/components/Dropin/Dropin.js +1 -1
- package/dist/es/components/Dropin/Dropin.js.map +1 -1
- package/dist/es/components/Dropin/components/DropinComponent.js +1 -1
- package/dist/es/components/Dropin/components/DropinComponent.js.map +1 -1
- package/dist/es/components/Dropin/components/PaymentMethod/InstantPaymentMethods.js +1 -1
- package/dist/es/components/Dropin/components/PaymentMethod/InstantPaymentMethods.js.map +1 -1
- package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodBrands/PaymentMethodBrands.js +1 -1
- package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodBrands/PaymentMethodBrands.js.map +1 -1
- package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodDetails.js +1 -1
- package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodDetails.js.map +1 -1
- package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodIcon.js +1 -1
- package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodIcon.js.map +1 -1
- package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodItem/PaymentMethodItem.js +1 -1
- package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodItem/PaymentMethodItem.js.map +1 -1
- package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodList.js +1 -1
- package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodList.js.map +1 -1
- package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodsContainer.js +1 -1
- package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodsContainer.js.map +1 -1
- package/dist/es/components/Dropin/elements/createElements.js +1 -1
- package/dist/es/components/Dropin/elements/createElements.js.map +1 -1
- package/dist/es/components/Dropin/elements/createInstantPaymentElements.js +1 -1
- package/dist/es/components/Dropin/elements/createInstantPaymentElements.js.map +1 -1
- package/dist/es/components/Dropin/elements/createStoredElements.js.map +1 -1
- package/dist/es/components/Dropin/elements/filters.js.map +1 -1
- package/dist/es/components/Dropin/elements/splitPaymentMethods.js.map +1 -1
- package/dist/es/components/Econtext/Econtext.js +1 -1
- package/dist/es/components/Econtext/Econtext.js.map +1 -1
- package/dist/es/components/Giftcard/Giftcard.js +1 -1
- package/dist/es/components/Giftcard/Giftcard.js.map +1 -1
- package/dist/es/components/Giropay/Giropay.js +1 -1
- package/dist/es/components/Giropay/Giropay.js.map +1 -1
- package/dist/es/components/GooglePay/GooglePay.js +1 -1
- package/dist/es/components/GooglePay/GooglePay.js.map +1 -1
- package/dist/es/components/GooglePay/GooglePayService.js.map +1 -1
- package/dist/es/components/Klarna/KlarnaPayments.js +1 -1
- package/dist/es/components/Klarna/KlarnaPayments.js.map +1 -1
- package/dist/es/components/MBWay/MBWay.js +1 -1
- package/dist/es/components/MBWay/MBWay.js.map +1 -1
- package/dist/es/components/Multibanco/Multibanco.js +1 -1
- package/dist/es/components/Multibanco/Multibanco.js.map +1 -1
- package/dist/es/components/Oxxo/Oxxo.js +1 -1
- package/dist/es/components/Oxxo/Oxxo.js.map +1 -1
- package/dist/es/components/PayByBankPix/PayByBankPix.js +1 -1
- package/dist/es/components/PayByBankPix/PayByBankPix.js.map +1 -1
- package/dist/es/components/PayByBankPix/components/Enrollment/Enrollment.js +1 -1
- package/dist/es/components/PayByBankPix/components/Enrollment/Enrollment.js.map +1 -1
- package/dist/es/components/PayByBankPix/components/Enrollment/components/PayByBankPixAwait.js +1 -1
- package/dist/es/components/PayByBankPix/components/Enrollment/components/PayByBankPixAwait.js.map +1 -1
- package/dist/es/components/PayByBankPix/services/PasskeySdkLoader.js.map +1 -1
- package/dist/es/components/PayByBankPix/services/PasskeyService.js.map +1 -1
- package/dist/es/components/PayByBankUS/PayByBankUS.js +1 -1
- package/dist/es/components/PayByBankUS/PayByBankUS.js.map +1 -1
- package/dist/es/components/PayPal/Paypal.js +1 -1
- package/dist/es/components/PayPal/Paypal.js.map +1 -1
- package/dist/es/components/PayPalFastlane/Fastlane.js +1 -1
- package/dist/es/components/PayPalFastlane/Fastlane.js.map +1 -1
- package/dist/es/components/PayPalFastlane/FastlaneSDK.js +1 -1
- package/dist/es/components/PayPalFastlane/FastlaneSDK.js.map +1 -1
- package/dist/es/components/PayTo/PayTo.js +1 -1
- package/dist/es/components/PayTo/PayTo.js.map +1 -1
- package/dist/es/components/PersonalDetails/PersonalDetails.js +1 -1
- package/dist/es/components/PersonalDetails/PersonalDetails.js.map +1 -1
- package/dist/es/components/Pix/Pix.js +1 -1
- package/dist/es/components/Pix/Pix.js.map +1 -1
- package/dist/es/components/Pix/components/PixQRDetails.js +1 -1
- package/dist/es/components/Pix/components/PixQRDetails.js.map +1 -1
- package/dist/es/components/PreAuthorizedDebitCanada/PreAuthorizedDebitCanada.js +1 -1
- package/dist/es/components/PreAuthorizedDebitCanada/PreAuthorizedDebitCanada.js.map +1 -1
- package/dist/es/components/Redirect/Redirect.js +1 -1
- package/dist/es/components/Redirect/Redirect.js.map +1 -1
- package/dist/es/components/Sepa/Sepa.js +1 -1
- package/dist/es/components/Sepa/Sepa.js.map +1 -1
- package/dist/es/components/ThreeDS2/ThreeDS2Challenge.js +1 -1
- package/dist/es/components/ThreeDS2/ThreeDS2Challenge.js.map +1 -1
- package/dist/es/components/ThreeDS2/ThreeDS2DeviceFingerprint.js +1 -1
- package/dist/es/components/ThreeDS2/ThreeDS2DeviceFingerprint.js.map +1 -1
- package/dist/es/components/ThreeDS2/callSubmit3DS2Fingerprint.js +1 -1
- package/dist/es/components/ThreeDS2/callSubmit3DS2Fingerprint.js.map +1 -1
- package/dist/es/components/ThreeDS2/components/Challenge/PrepareChallenge3DS2.js +1 -1
- package/dist/es/components/ThreeDS2/components/Challenge/PrepareChallenge3DS2.js.map +1 -1
- package/dist/es/components/ThreeDS2/components/DeviceFingerprint/PrepareFingerprint3DS2.js +1 -1
- package/dist/es/components/ThreeDS2/components/DeviceFingerprint/PrepareFingerprint3DS2.js.map +1 -1
- package/dist/es/components/Trustly/Trustly.js +1 -1
- package/dist/es/components/Trustly/Trustly.js.map +1 -1
- package/dist/es/components/UPI/UPI.js +1 -1
- package/dist/es/components/UPI/UPI.js.map +1 -1
- package/dist/es/components/UPI/components/VpaInput/VpaInput.js +1 -1
- package/dist/es/components/UPI/components/VpaInput/VpaInput.js.map +1 -1
- package/dist/es/components/UPI/components/VpaInput/validate.js +1 -1
- package/dist/es/components/UPI/components/VpaInput/validate.js.map +1 -1
- package/dist/es/components/WeChat/WeChat.js +1 -1
- package/dist/es/components/WeChat/WeChat.js.map +1 -1
- package/dist/es/components/helpers/IssuerListContainer/IssuerListContainer.js +1 -1
- package/dist/es/components/helpers/IssuerListContainer/IssuerListContainer.js.map +1 -1
- package/dist/es/components/helpers/OpenInvoiceContainer/OpenInvoiceContainer.js +1 -1
- package/dist/es/components/helpers/OpenInvoiceContainer/OpenInvoiceContainer.js.map +1 -1
- package/dist/es/components/helpers/QRLoaderContainer/QRLoaderContainer.js +1 -1
- package/dist/es/components/helpers/QRLoaderContainer/QRLoaderContainer.js.map +1 -1
- package/dist/es/components/internal/Await/Await.js +1 -1
- package/dist/es/components/internal/Await/Await.js.map +1 -1
- package/dist/es/components/internal/Await/components/AwaitFinalState.js +2 -0
- package/dist/es/components/internal/Await/components/AwaitFinalState.js.map +1 -0
- package/dist/es/components/internal/BaseElement/BaseElement.js +1 -1
- package/dist/es/components/internal/BaseElement/BaseElement.js.map +1 -1
- package/dist/es/components/internal/Brand/Brand.js +2 -0
- package/dist/es/components/internal/Brand/Brand.js.map +1 -0
- package/dist/es/components/internal/Button/CopyButton.js +2 -0
- package/dist/es/components/internal/Button/CopyButton.js.map +1 -0
- package/dist/es/components/internal/Button/CopyIconButton.js +1 -1
- package/dist/es/components/internal/Button/CopyIconButton.js.map +1 -1
- package/dist/es/components/internal/Button/stopPropagationForActionKeys.js +2 -0
- package/dist/es/components/internal/Button/stopPropagationForActionKeys.js.map +1 -0
- package/dist/es/components/internal/ClickToPay/components/CtPCards/CtPCards.js +1 -1
- package/dist/es/components/internal/ClickToPay/components/CtPCards/CtPCards.js.map +1 -1
- package/dist/es/components/internal/ClickToPay/components/CtPCards/CtPCardsList/CtPCardsList.js +1 -1
- package/dist/es/components/internal/ClickToPay/components/CtPCards/CtPCardsList/CtPCardsList.js.map +1 -1
- package/dist/es/components/internal/ClickToPay/components/CtPInfo/CtPInfo.js +1 -1
- package/dist/es/components/internal/ClickToPay/components/CtPInfo/CtPInfo.js.map +1 -1
- package/dist/es/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPOneTimePasswordInput.js +1 -1
- package/dist/es/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPOneTimePasswordInput.js.map +1 -1
- package/dist/es/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPResendOtpLink.js +1 -1
- package/dist/es/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPResendOtpLink.js.map +1 -1
- package/dist/es/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/validate.js +1 -1
- package/dist/es/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/validate.js.map +1 -1
- package/dist/es/components/internal/ClickToPay/services/ClickToPayService.js.map +1 -1
- package/dist/es/components/internal/ClickToPay/services/create-clicktopay-service.js.map +1 -1
- package/dist/es/components/internal/ClickToPay/services/sdks/AbstractSrcInitiator.js.map +1 -1
- package/dist/es/components/internal/ClickToPay/services/sdks/MastercardSdk.js.map +1 -1
- package/dist/es/components/internal/ClickToPay/services/sdks/SrcSdkLoader.js.map +1 -1
- package/dist/es/components/internal/ClickToPay/services/sdks/VisaSdk.js.map +1 -1
- package/dist/es/components/internal/FormFields/Field/Field.js +1 -1
- package/dist/es/components/internal/FormFields/Field/Field.js.map +1 -1
- package/dist/es/components/internal/FormFields/InputBase.js.map +1 -1
- package/dist/es/components/internal/FormFields/RadioGroupExtended/RadioGroupExtended.js +1 -1
- package/dist/es/components/internal/FormFields/RadioGroupExtended/RadioGroupExtended.js.map +1 -1
- package/dist/es/components/internal/FormFields/Select/components/SelectListItem.js +1 -1
- package/dist/es/components/internal/FormFields/Select/components/SelectListItem.js.map +1 -1
- package/dist/es/components/internal/Icon/Icon.js +1 -1
- package/dist/es/components/internal/Icon/Icon.js.map +1 -1
- package/dist/es/components/internal/Img/Img.js +1 -1
- package/dist/es/components/internal/Img/Img.js.map +1 -1
- package/dist/es/components/internal/IssuerList/IssuerList.js +1 -1
- package/dist/es/components/internal/IssuerList/IssuerList.js.map +1 -1
- package/dist/es/components/internal/PersonalDetails/PersonalDetails.js +1 -1
- package/dist/es/components/internal/PersonalDetails/PersonalDetails.js.map +1 -1
- package/dist/es/components/internal/PersonalDetails/utils.js +1 -1
- package/dist/es/components/internal/PersonalDetails/utils.js.map +1 -1
- package/dist/es/components/internal/PersonalDetails/validate.js +1 -1
- package/dist/es/components/internal/PersonalDetails/validate.js.map +1 -1
- package/dist/es/components/internal/QRLoader/QRLoader.js +1 -1
- package/dist/es/components/internal/QRLoader/QRLoader.js.map +1 -1
- package/dist/es/components/internal/QRLoader/QRLoaderDetailsProvider.js.map +1 -1
- package/dist/es/components/internal/QRLoader/components/QRCodeCopyButton.js +1 -1
- package/dist/es/components/internal/QRLoader/components/QRCodeCopyButton.js.map +1 -1
- package/dist/es/components/internal/QRLoader/components/QRCountdown.js +1 -1
- package/dist/es/components/internal/QRLoader/components/QRCountdown.js.map +1 -1
- package/dist/es/components/internal/QRLoader/components/QRDetails.js +1 -1
- package/dist/es/components/internal/QRLoader/components/QRDetails.js.map +1 -1
- package/dist/es/components/internal/QRLoader/components/QRImage.js +1 -1
- package/dist/es/components/internal/QRLoader/components/QRImage.js.map +1 -1
- package/dist/es/components/internal/QRLoader/components/QRIntructions.js +1 -1
- package/dist/es/components/internal/QRLoader/components/QRIntructions.js.map +1 -1
- package/dist/es/components/internal/QRLoader/components/QRProgressbar.js +1 -1
- package/dist/es/components/internal/QRLoader/components/QRProgressbar.js.map +1 -1
- package/dist/es/components/internal/UIElement/UIElement.js +1 -1
- package/dist/es/components/internal/UIElement/UIElement.js.map +1 -1
- package/dist/es/components/internal/UIElement/utils.js.map +1 -1
- package/dist/es/components/internal/Voucher/Voucher.js +1 -1
- package/dist/es/components/internal/Voucher/Voucher.js.map +1 -1
- package/dist/es/core/Analytics/Analytics.js +1 -1
- package/dist/es/core/Analytics/Analytics.js.map +1 -1
- package/dist/es/core/Analytics/AnalyticsEventQueue.js +2 -0
- package/dist/es/core/Analytics/AnalyticsEventQueue.js.map +1 -0
- package/dist/es/core/Analytics/AnalyticsService.js +2 -0
- package/dist/es/core/Analytics/AnalyticsService.js.map +1 -0
- package/dist/es/core/Analytics/constants.js +1 -1
- package/dist/es/core/Analytics/constants.js.map +1 -1
- package/dist/es/core/Analytics/events/AbstractAnalyticsEvent.js +2 -0
- package/dist/es/core/Analytics/events/AbstractAnalyticsEvent.js.map +1 -0
- package/dist/es/core/Analytics/events/AnalyticsErrorEvent.js +2 -0
- package/dist/es/core/Analytics/events/AnalyticsErrorEvent.js.map +1 -0
- package/dist/es/core/Analytics/events/AnalyticsInfoEvent.js +2 -0
- package/dist/es/core/Analytics/events/AnalyticsInfoEvent.js.map +1 -0
- package/dist/es/core/Analytics/events/AnalyticsLogEvent.js +2 -0
- package/dist/es/core/Analytics/events/AnalyticsLogEvent.js.map +1 -0
- package/dist/es/core/Analytics/utils.js +1 -1
- package/dist/es/core/Analytics/utils.js.map +1 -1
- package/dist/es/core/Context/CoreProvider.js +1 -1
- package/dist/es/core/Context/CoreProvider.js.map +1 -1
- package/dist/es/core/ProcessResponse/PaymentAction/actionTypes.js +1 -1
- package/dist/es/core/ProcessResponse/PaymentAction/actionTypes.js.map +1 -1
- package/dist/es/core/ProcessResponse/PaymentMethods/PaymentMethods.js +1 -1
- package/dist/es/core/ProcessResponse/PaymentMethods/PaymentMethods.js.map +1 -1
- package/dist/es/core/ProcessResponse/PaymentMethods/utils.js +1 -1
- package/dist/es/core/ProcessResponse/PaymentMethods/utils.js.map +1 -1
- package/dist/es/core/ProcessResponse/{process-response.js → PaymentStatus/PaymentStatus.js} +2 -2
- package/dist/es/core/ProcessResponse/PaymentStatus/PaymentStatus.js.map +1 -0
- package/dist/es/core/Services/http.js +1 -1
- package/dist/es/core/Services/http.js.map +1 -1
- package/dist/es/core/Services/payment-status.js.map +1 -1
- package/dist/es/core/config.js +1 -1
- package/dist/es/core/core.js +1 -1
- package/dist/es/core/core.js.map +1 -1
- package/dist/es/external/preact/compat/dist/compat.js +1 -1
- package/dist/es/external/preact/compat/dist/compat.js.map +1 -1
- package/dist/es/hooks/usePaymentStatusTimer/constants.js +2 -0
- package/dist/es/hooks/usePaymentStatusTimer/constants.js.map +1 -0
- package/dist/es/hooks/usePaymentStatusTimer/usePaymentStatusTimer.js +2 -0
- package/dist/es/hooks/usePaymentStatusTimer/usePaymentStatusTimer.js.map +1 -0
- package/dist/es/index.d.ts +2257 -2222
- package/dist/es/utils/Script.js +1 -1
- package/dist/es/utils/Script.js.map +1 -1
- package/dist/es/utils/amount-util.js.map +1 -1
- package/dist/es/utils/commonUtils.js +1 -1
- package/dist/es/utils/commonUtils.js.map +1 -1
- package/dist/es/utils/getErrorMessage.js +1 -1
- package/dist/es/utils/getErrorMessage.js.map +1 -1
- package/dist/es/utils/urls.js +2 -0
- package/dist/es/utils/urls.js.map +1 -0
- package/dist/es-legacy/adyen.css +16 -13
- package/dist/es-legacy/adyen.css.map +1 -1
- package/dist/es-legacy/components/ANCV/ANCV.js +1 -1
- package/dist/es-legacy/components/ANCV/ANCV.js.map +1 -1
- package/dist/es-legacy/components/Ach/Ach.js +1 -1
- package/dist/es-legacy/components/Ach/Ach.js.map +1 -1
- package/dist/es-legacy/components/Address/Address.js +1 -1
- package/dist/es-legacy/components/Address/Address.js.map +1 -1
- package/dist/es-legacy/components/AmazonPay/AmazonPay.js +1 -1
- package/dist/es-legacy/components/AmazonPay/AmazonPay.js.map +1 -1
- package/dist/es-legacy/components/ApplePay/ApplePay.js +1 -1
- package/dist/es-legacy/components/ApplePay/ApplePay.js.map +1 -1
- package/dist/es-legacy/components/ApplePay/services/ApplePaySdkLoader.js.map +1 -1
- package/dist/es-legacy/components/ApplePay/utils/resolve-supported-version.js +1 -1
- package/dist/es-legacy/components/ApplePay/utils/resolve-supported-version.js.map +1 -1
- package/dist/es-legacy/components/BacsDD/BacsDD.js +1 -1
- package/dist/es-legacy/components/BacsDD/BacsDD.js.map +1 -1
- package/dist/es-legacy/components/BankTransfer/BankTransfer.js +1 -1
- package/dist/es-legacy/components/BankTransfer/BankTransfer.js.map +1 -1
- package/dist/es-legacy/components/Blik/Blik.js +1 -1
- package/dist/es-legacy/components/Blik/Blik.js.map +1 -1
- package/dist/es-legacy/components/Boleto/Boleto.js +1 -1
- package/dist/es-legacy/components/Boleto/Boleto.js.map +1 -1
- package/dist/es-legacy/components/Card/Card.js +1 -1
- package/dist/es-legacy/components/Card/Card.js.map +1 -1
- package/dist/es-legacy/components/Card/components/CardInput/CardInput.js +1 -1
- package/dist/es-legacy/components/Card/components/CardInput/CardInput.js.map +1 -1
- package/dist/es-legacy/components/Card/components/CardInput/components/AvailableBrands/AvailableBrands.js +1 -1
- package/dist/es-legacy/components/Card/components/CardInput/components/AvailableBrands/AvailableBrands.js.map +1 -1
- package/dist/es-legacy/components/Card/components/CardInput/components/BrandIcon.js +1 -1
- package/dist/es-legacy/components/Card/components/CardInput/components/BrandIcon.js.map +1 -1
- package/dist/es-legacy/components/Card/components/CardInput/components/CVC.js +1 -1
- package/dist/es-legacy/components/Card/components/CardInput/components/CVC.js.map +1 -1
- package/dist/es-legacy/components/Card/components/CardInput/components/CVCHint.js +1 -1
- package/dist/es-legacy/components/Card/components/CardInput/components/CVCHint.js.map +1 -1
- package/dist/es-legacy/components/Card/components/CardInput/components/CardNumber.js +1 -1
- package/dist/es-legacy/components/Card/components/CardInput/components/CardNumber.js.map +1 -1
- package/dist/es-legacy/components/Card/components/CardInput/components/ExpirationDate.js +1 -1
- package/dist/es-legacy/components/Card/components/CardInput/components/ExpirationDate.js.map +1 -1
- package/dist/es-legacy/components/Card/components/CardInput/types.js.map +1 -1
- package/dist/es-legacy/components/Card/components/CardInput/utils.js +1 -1
- package/dist/es-legacy/components/Card/components/CardInput/utils.js.map +1 -1
- package/dist/es-legacy/components/Card/components/Fastlane/FastlaneSignup.js +1 -1
- package/dist/es-legacy/components/Card/components/Fastlane/FastlaneSignup.js.map +1 -1
- package/dist/es-legacy/components/Card/components/Fastlane/InfoButton.js +1 -1
- package/dist/es-legacy/components/Card/components/Fastlane/InfoButton.js.map +1 -1
- package/dist/es-legacy/components/Card/components/Fastlane/InfoModal.js +1 -1
- package/dist/es-legacy/components/Card/components/Fastlane/InfoModal.js.map +1 -1
- package/dist/es-legacy/components/CashAppPay/CashAppPay.js +1 -1
- package/dist/es-legacy/components/CashAppPay/CashAppPay.js.map +1 -1
- package/dist/es-legacy/components/CashAppPay/services/CashAppSdkLoader.js.map +1 -1
- package/dist/es-legacy/components/ClickToPay/ClickToPay.js +1 -1
- package/dist/es-legacy/components/ClickToPay/ClickToPay.js.map +1 -1
- package/dist/es-legacy/components/CustomCard/CustomCard.js +1 -1
- package/dist/es-legacy/components/CustomCard/CustomCard.js.map +1 -1
- package/dist/es-legacy/components/Doku/Doku.js +1 -1
- package/dist/es-legacy/components/Doku/Doku.js.map +1 -1
- package/dist/es-legacy/components/Donation/Donation.js +1 -1
- package/dist/es-legacy/components/Donation/Donation.js.map +1 -1
- package/dist/es-legacy/components/Dragonpay/Dragonpay.js +1 -1
- package/dist/es-legacy/components/Dragonpay/Dragonpay.js.map +1 -1
- package/dist/es-legacy/components/Dropin/Dropin.js +1 -1
- package/dist/es-legacy/components/Dropin/Dropin.js.map +1 -1
- package/dist/es-legacy/components/Dropin/components/DropinComponent.js +1 -1
- package/dist/es-legacy/components/Dropin/components/DropinComponent.js.map +1 -1
- package/dist/es-legacy/components/Dropin/components/PaymentMethod/InstantPaymentMethods.js +1 -1
- package/dist/es-legacy/components/Dropin/components/PaymentMethod/InstantPaymentMethods.js.map +1 -1
- package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodBrands/PaymentMethodBrands.js +1 -1
- package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodBrands/PaymentMethodBrands.js.map +1 -1
- package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodDetails.js +1 -1
- package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodDetails.js.map +1 -1
- package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodIcon.js +1 -1
- package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodIcon.js.map +1 -1
- package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodItem/PaymentMethodItem.js +1 -1
- package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodItem/PaymentMethodItem.js.map +1 -1
- package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodList.js +1 -1
- package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodList.js.map +1 -1
- package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodsContainer.js +1 -1
- package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodsContainer.js.map +1 -1
- package/dist/es-legacy/components/Dropin/elements/createElements.js +1 -1
- package/dist/es-legacy/components/Dropin/elements/createElements.js.map +1 -1
- package/dist/es-legacy/components/Dropin/elements/createInstantPaymentElements.js +1 -1
- package/dist/es-legacy/components/Dropin/elements/createInstantPaymentElements.js.map +1 -1
- package/dist/es-legacy/components/Dropin/elements/createStoredElements.js.map +1 -1
- package/dist/es-legacy/components/Dropin/elements/filters.js.map +1 -1
- package/dist/es-legacy/components/Dropin/elements/splitPaymentMethods.js.map +1 -1
- package/dist/es-legacy/components/Econtext/Econtext.js +1 -1
- package/dist/es-legacy/components/Econtext/Econtext.js.map +1 -1
- package/dist/es-legacy/components/Giftcard/Giftcard.js +1 -1
- package/dist/es-legacy/components/Giftcard/Giftcard.js.map +1 -1
- package/dist/es-legacy/components/Giropay/Giropay.js +1 -1
- package/dist/es-legacy/components/Giropay/Giropay.js.map +1 -1
- package/dist/es-legacy/components/GooglePay/GooglePay.js +1 -1
- package/dist/es-legacy/components/GooglePay/GooglePay.js.map +1 -1
- package/dist/es-legacy/components/GooglePay/GooglePayService.js.map +1 -1
- package/dist/es-legacy/components/Klarna/KlarnaPayments.js +1 -1
- package/dist/es-legacy/components/Klarna/KlarnaPayments.js.map +1 -1
- package/dist/es-legacy/components/MBWay/MBWay.js +1 -1
- package/dist/es-legacy/components/MBWay/MBWay.js.map +1 -1
- package/dist/es-legacy/components/Multibanco/Multibanco.js +1 -1
- package/dist/es-legacy/components/Multibanco/Multibanco.js.map +1 -1
- package/dist/es-legacy/components/Oxxo/Oxxo.js +1 -1
- package/dist/es-legacy/components/Oxxo/Oxxo.js.map +1 -1
- package/dist/es-legacy/components/PayByBankPix/PayByBankPix.js +1 -1
- package/dist/es-legacy/components/PayByBankPix/PayByBankPix.js.map +1 -1
- package/dist/es-legacy/components/PayByBankPix/components/Enrollment/Enrollment.js +1 -1
- package/dist/es-legacy/components/PayByBankPix/components/Enrollment/Enrollment.js.map +1 -1
- package/dist/es-legacy/components/PayByBankPix/components/Enrollment/components/PayByBankPixAwait.js +1 -1
- package/dist/es-legacy/components/PayByBankPix/components/Enrollment/components/PayByBankPixAwait.js.map +1 -1
- package/dist/es-legacy/components/PayByBankPix/services/PasskeySdkLoader.js.map +1 -1
- package/dist/es-legacy/components/PayByBankPix/services/PasskeyService.js.map +1 -1
- package/dist/es-legacy/components/PayByBankUS/PayByBankUS.js +1 -1
- package/dist/es-legacy/components/PayByBankUS/PayByBankUS.js.map +1 -1
- package/dist/es-legacy/components/PayPal/Paypal.js +1 -1
- package/dist/es-legacy/components/PayPal/Paypal.js.map +1 -1
- package/dist/es-legacy/components/PayPalFastlane/Fastlane.js +1 -1
- package/dist/es-legacy/components/PayPalFastlane/Fastlane.js.map +1 -1
- package/dist/es-legacy/components/PayPalFastlane/FastlaneSDK.js +1 -1
- package/dist/es-legacy/components/PayPalFastlane/FastlaneSDK.js.map +1 -1
- package/dist/es-legacy/components/PayTo/PayTo.js +1 -1
- package/dist/es-legacy/components/PayTo/PayTo.js.map +1 -1
- package/dist/es-legacy/components/PersonalDetails/PersonalDetails.js +1 -1
- package/dist/es-legacy/components/PersonalDetails/PersonalDetails.js.map +1 -1
- package/dist/es-legacy/components/Pix/Pix.js +1 -1
- package/dist/es-legacy/components/Pix/Pix.js.map +1 -1
- package/dist/es-legacy/components/Pix/components/PixQRDetails.js +1 -1
- package/dist/es-legacy/components/Pix/components/PixQRDetails.js.map +1 -1
- package/dist/es-legacy/components/PreAuthorizedDebitCanada/PreAuthorizedDebitCanada.js +1 -1
- package/dist/es-legacy/components/PreAuthorizedDebitCanada/PreAuthorizedDebitCanada.js.map +1 -1
- package/dist/es-legacy/components/Redirect/Redirect.js +1 -1
- package/dist/es-legacy/components/Redirect/Redirect.js.map +1 -1
- package/dist/es-legacy/components/Sepa/Sepa.js +1 -1
- package/dist/es-legacy/components/Sepa/Sepa.js.map +1 -1
- package/dist/es-legacy/components/ThreeDS2/ThreeDS2Challenge.js +1 -1
- package/dist/es-legacy/components/ThreeDS2/ThreeDS2Challenge.js.map +1 -1
- package/dist/es-legacy/components/ThreeDS2/ThreeDS2DeviceFingerprint.js +1 -1
- package/dist/es-legacy/components/ThreeDS2/ThreeDS2DeviceFingerprint.js.map +1 -1
- package/dist/es-legacy/components/ThreeDS2/callSubmit3DS2Fingerprint.js +1 -1
- package/dist/es-legacy/components/ThreeDS2/callSubmit3DS2Fingerprint.js.map +1 -1
- package/dist/es-legacy/components/ThreeDS2/components/Challenge/PrepareChallenge3DS2.js +1 -1
- package/dist/es-legacy/components/ThreeDS2/components/Challenge/PrepareChallenge3DS2.js.map +1 -1
- package/dist/es-legacy/components/ThreeDS2/components/DeviceFingerprint/PrepareFingerprint3DS2.js +1 -1
- package/dist/es-legacy/components/ThreeDS2/components/DeviceFingerprint/PrepareFingerprint3DS2.js.map +1 -1
- package/dist/es-legacy/components/Trustly/Trustly.js +1 -1
- package/dist/es-legacy/components/Trustly/Trustly.js.map +1 -1
- package/dist/es-legacy/components/UPI/UPI.js +1 -1
- package/dist/es-legacy/components/UPI/UPI.js.map +1 -1
- package/dist/es-legacy/components/UPI/components/VpaInput/VpaInput.js +1 -1
- package/dist/es-legacy/components/UPI/components/VpaInput/VpaInput.js.map +1 -1
- package/dist/es-legacy/components/UPI/components/VpaInput/validate.js +1 -1
- package/dist/es-legacy/components/UPI/components/VpaInput/validate.js.map +1 -1
- package/dist/es-legacy/components/WeChat/WeChat.js +1 -1
- package/dist/es-legacy/components/WeChat/WeChat.js.map +1 -1
- package/dist/es-legacy/components/helpers/IssuerListContainer/IssuerListContainer.js +1 -1
- package/dist/es-legacy/components/helpers/IssuerListContainer/IssuerListContainer.js.map +1 -1
- package/dist/es-legacy/components/helpers/OpenInvoiceContainer/OpenInvoiceContainer.js +1 -1
- package/dist/es-legacy/components/helpers/OpenInvoiceContainer/OpenInvoiceContainer.js.map +1 -1
- package/dist/es-legacy/components/helpers/QRLoaderContainer/QRLoaderContainer.js +1 -1
- package/dist/es-legacy/components/helpers/QRLoaderContainer/QRLoaderContainer.js.map +1 -1
- package/dist/es-legacy/components/internal/Await/Await.js +1 -1
- package/dist/es-legacy/components/internal/Await/Await.js.map +1 -1
- package/dist/es-legacy/components/internal/Await/components/AwaitFinalState.js +2 -0
- package/dist/es-legacy/components/internal/Await/components/AwaitFinalState.js.map +1 -0
- package/dist/es-legacy/components/internal/BaseElement/BaseElement.js +1 -1
- package/dist/es-legacy/components/internal/BaseElement/BaseElement.js.map +1 -1
- package/dist/es-legacy/components/internal/Brand/Brand.js +2 -0
- package/dist/es-legacy/components/internal/Brand/Brand.js.map +1 -0
- package/dist/es-legacy/components/internal/Button/CopyButton.js +2 -0
- package/dist/es-legacy/components/internal/Button/CopyButton.js.map +1 -0
- package/dist/es-legacy/components/internal/Button/CopyIconButton.js +1 -1
- package/dist/es-legacy/components/internal/Button/CopyIconButton.js.map +1 -1
- package/dist/es-legacy/components/internal/Button/stopPropagationForActionKeys.js +2 -0
- package/dist/es-legacy/components/internal/Button/stopPropagationForActionKeys.js.map +1 -0
- package/dist/es-legacy/components/internal/ClickToPay/components/CtPCards/CtPCards.js +1 -1
- package/dist/es-legacy/components/internal/ClickToPay/components/CtPCards/CtPCards.js.map +1 -1
- package/dist/es-legacy/components/internal/ClickToPay/components/CtPCards/CtPCardsList/CtPCardsList.js +1 -1
- package/dist/es-legacy/components/internal/ClickToPay/components/CtPCards/CtPCardsList/CtPCardsList.js.map +1 -1
- package/dist/es-legacy/components/internal/ClickToPay/components/CtPInfo/CtPInfo.js +1 -1
- package/dist/es-legacy/components/internal/ClickToPay/components/CtPInfo/CtPInfo.js.map +1 -1
- package/dist/es-legacy/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPOneTimePasswordInput.js +1 -1
- package/dist/es-legacy/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPOneTimePasswordInput.js.map +1 -1
- package/dist/es-legacy/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPResendOtpLink.js +1 -1
- package/dist/es-legacy/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPResendOtpLink.js.map +1 -1
- package/dist/es-legacy/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/validate.js +1 -1
- package/dist/es-legacy/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/validate.js.map +1 -1
- package/dist/es-legacy/components/internal/ClickToPay/services/ClickToPayService.js.map +1 -1
- package/dist/es-legacy/components/internal/ClickToPay/services/create-clicktopay-service.js.map +1 -1
- package/dist/es-legacy/components/internal/ClickToPay/services/sdks/AbstractSrcInitiator.js.map +1 -1
- package/dist/es-legacy/components/internal/ClickToPay/services/sdks/MastercardSdk.js.map +1 -1
- package/dist/es-legacy/components/internal/ClickToPay/services/sdks/SrcSdkLoader.js.map +1 -1
- package/dist/es-legacy/components/internal/ClickToPay/services/sdks/VisaSdk.js.map +1 -1
- package/dist/es-legacy/components/internal/FormFields/Field/Field.js +1 -1
- package/dist/es-legacy/components/internal/FormFields/Field/Field.js.map +1 -1
- package/dist/es-legacy/components/internal/FormFields/InputBase.js.map +1 -1
- package/dist/es-legacy/components/internal/FormFields/RadioGroupExtended/RadioGroupExtended.js +1 -1
- package/dist/es-legacy/components/internal/FormFields/RadioGroupExtended/RadioGroupExtended.js.map +1 -1
- package/dist/es-legacy/components/internal/FormFields/Select/components/SelectListItem.js +1 -1
- package/dist/es-legacy/components/internal/FormFields/Select/components/SelectListItem.js.map +1 -1
- package/dist/es-legacy/components/internal/Icon/Icon.js +1 -1
- package/dist/es-legacy/components/internal/Icon/Icon.js.map +1 -1
- package/dist/es-legacy/components/internal/Img/Img.js +1 -1
- package/dist/es-legacy/components/internal/Img/Img.js.map +1 -1
- package/dist/es-legacy/components/internal/IssuerList/IssuerList.js +1 -1
- package/dist/es-legacy/components/internal/IssuerList/IssuerList.js.map +1 -1
- package/dist/es-legacy/components/internal/PersonalDetails/PersonalDetails.js +1 -1
- package/dist/es-legacy/components/internal/PersonalDetails/PersonalDetails.js.map +1 -1
- package/dist/es-legacy/components/internal/PersonalDetails/utils.js +1 -1
- package/dist/es-legacy/components/internal/PersonalDetails/utils.js.map +1 -1
- package/dist/es-legacy/components/internal/PersonalDetails/validate.js +1 -1
- package/dist/es-legacy/components/internal/PersonalDetails/validate.js.map +1 -1
- package/dist/es-legacy/components/internal/QRLoader/QRLoader.js +1 -1
- package/dist/es-legacy/components/internal/QRLoader/QRLoader.js.map +1 -1
- package/dist/es-legacy/components/internal/QRLoader/QRLoaderDetailsProvider.js.map +1 -1
- package/dist/es-legacy/components/internal/QRLoader/components/QRCodeCopyButton.js +1 -1
- package/dist/es-legacy/components/internal/QRLoader/components/QRCodeCopyButton.js.map +1 -1
- package/dist/es-legacy/components/internal/QRLoader/components/QRCountdown.js +1 -1
- package/dist/es-legacy/components/internal/QRLoader/components/QRCountdown.js.map +1 -1
- package/dist/es-legacy/components/internal/QRLoader/components/QRDetails.js +1 -1
- package/dist/es-legacy/components/internal/QRLoader/components/QRDetails.js.map +1 -1
- package/dist/es-legacy/components/internal/QRLoader/components/QRImage.js +1 -1
- package/dist/es-legacy/components/internal/QRLoader/components/QRImage.js.map +1 -1
- package/dist/es-legacy/components/internal/QRLoader/components/QRIntructions.js +1 -1
- package/dist/es-legacy/components/internal/QRLoader/components/QRIntructions.js.map +1 -1
- package/dist/es-legacy/components/internal/QRLoader/components/QRProgressbar.js +1 -1
- package/dist/es-legacy/components/internal/QRLoader/components/QRProgressbar.js.map +1 -1
- package/dist/es-legacy/components/internal/UIElement/UIElement.js +1 -1
- package/dist/es-legacy/components/internal/UIElement/UIElement.js.map +1 -1
- package/dist/es-legacy/components/internal/UIElement/utils.js.map +1 -1
- package/dist/es-legacy/components/internal/Voucher/Voucher.js +1 -1
- package/dist/es-legacy/components/internal/Voucher/Voucher.js.map +1 -1
- package/dist/es-legacy/core/Analytics/Analytics.js +1 -1
- package/dist/es-legacy/core/Analytics/Analytics.js.map +1 -1
- package/dist/es-legacy/core/Analytics/AnalyticsEventQueue.js +2 -0
- package/dist/es-legacy/core/Analytics/AnalyticsEventQueue.js.map +1 -0
- package/dist/es-legacy/core/Analytics/AnalyticsService.js +2 -0
- package/dist/es-legacy/core/Analytics/AnalyticsService.js.map +1 -0
- package/dist/es-legacy/core/Analytics/constants.js +1 -1
- package/dist/es-legacy/core/Analytics/constants.js.map +1 -1
- package/dist/es-legacy/core/Analytics/events/AbstractAnalyticsEvent.js +2 -0
- package/dist/es-legacy/core/Analytics/events/AbstractAnalyticsEvent.js.map +1 -0
- package/dist/es-legacy/core/Analytics/events/AnalyticsErrorEvent.js +2 -0
- package/dist/es-legacy/core/Analytics/events/AnalyticsErrorEvent.js.map +1 -0
- package/dist/es-legacy/core/Analytics/events/AnalyticsInfoEvent.js +2 -0
- package/dist/es-legacy/core/Analytics/events/AnalyticsInfoEvent.js.map +1 -0
- package/dist/es-legacy/core/Analytics/events/AnalyticsLogEvent.js +2 -0
- package/dist/es-legacy/core/Analytics/events/AnalyticsLogEvent.js.map +1 -0
- package/dist/es-legacy/core/Analytics/utils.js +1 -1
- package/dist/es-legacy/core/Analytics/utils.js.map +1 -1
- package/dist/es-legacy/core/Context/CoreProvider.js +1 -1
- package/dist/es-legacy/core/Context/CoreProvider.js.map +1 -1
- package/dist/es-legacy/core/ProcessResponse/PaymentAction/actionTypes.js +1 -1
- package/dist/es-legacy/core/ProcessResponse/PaymentAction/actionTypes.js.map +1 -1
- package/dist/es-legacy/core/ProcessResponse/PaymentMethods/PaymentMethods.js +1 -1
- package/dist/es-legacy/core/ProcessResponse/PaymentMethods/PaymentMethods.js.map +1 -1
- package/dist/es-legacy/core/ProcessResponse/PaymentMethods/utils.js +1 -1
- package/dist/es-legacy/core/ProcessResponse/PaymentMethods/utils.js.map +1 -1
- package/dist/es-legacy/core/ProcessResponse/{process-response.js → PaymentStatus/PaymentStatus.js} +2 -2
- package/dist/es-legacy/core/ProcessResponse/PaymentStatus/PaymentStatus.js.map +1 -0
- package/dist/es-legacy/core/Services/http.js +1 -1
- package/dist/es-legacy/core/Services/http.js.map +1 -1
- package/dist/es-legacy/core/Services/payment-status.js.map +1 -1
- package/dist/es-legacy/core/config.js +1 -1
- package/dist/es-legacy/core/core.js +1 -1
- package/dist/es-legacy/core/core.js.map +1 -1
- package/dist/es-legacy/external/preact/compat/dist/compat.js +1 -1
- package/dist/es-legacy/external/preact/compat/dist/compat.js.map +1 -1
- package/dist/es-legacy/hooks/usePaymentStatusTimer/constants.js +2 -0
- package/dist/es-legacy/hooks/usePaymentStatusTimer/constants.js.map +1 -0
- package/dist/es-legacy/hooks/usePaymentStatusTimer/usePaymentStatusTimer.js +2 -0
- package/dist/es-legacy/hooks/usePaymentStatusTimer/usePaymentStatusTimer.js.map +1 -0
- package/dist/es-legacy/utils/Script.js +1 -1
- package/dist/es-legacy/utils/Script.js.map +1 -1
- package/dist/es-legacy/utils/amount-util.js.map +1 -1
- package/dist/es-legacy/utils/commonUtils.js +1 -1
- package/dist/es-legacy/utils/commonUtils.js.map +1 -1
- package/dist/es-legacy/utils/getErrorMessage.js +1 -1
- package/dist/es-legacy/utils/getErrorMessage.js.map +1 -1
- package/dist/es-legacy/utils/urls.js +2 -0
- package/dist/es-legacy/utils/urls.js.map +1 -0
- package/package.json +25 -27
- package/styles/adyen.css +16 -13
- package/dist/es/components/Card/components/CardInput/components/DualBrandingIcon/DualBrandingIcon.js +0 -2
- package/dist/es/components/Card/components/CardInput/components/DualBrandingIcon/DualBrandingIcon.js.map +0 -1
- package/dist/es/components/Dropin/components/utils.js +0 -2
- package/dist/es/components/Dropin/components/utils.js.map +0 -1
- package/dist/es/core/Analytics/AnalyticsErrorEvent.js +0 -2
- package/dist/es/core/Analytics/AnalyticsErrorEvent.js.map +0 -1
- package/dist/es/core/Analytics/AnalyticsEvent.js +0 -2
- package/dist/es/core/Analytics/AnalyticsEvent.js.map +0 -1
- package/dist/es/core/Analytics/AnalyticsInfoEvent.js +0 -2
- package/dist/es/core/Analytics/AnalyticsInfoEvent.js.map +0 -1
- package/dist/es/core/Analytics/AnalyticsLogEvent.js +0 -2
- package/dist/es/core/Analytics/AnalyticsLogEvent.js.map +0 -1
- package/dist/es/core/Analytics/EventsQueue.js +0 -2
- package/dist/es/core/Analytics/EventsQueue.js.map +0 -1
- package/dist/es/core/ProcessResponse/process-response.js.map +0 -1
- package/dist/es/core/Services/analytics/collect-id.js +0 -2
- package/dist/es/core/Services/analytics/collect-id.js.map +0 -1
- package/dist/es-legacy/components/Card/components/CardInput/components/DualBrandingIcon/DualBrandingIcon.js +0 -2
- package/dist/es-legacy/components/Card/components/CardInput/components/DualBrandingIcon/DualBrandingIcon.js.map +0 -1
- package/dist/es-legacy/components/Dropin/components/utils.js +0 -2
- package/dist/es-legacy/components/Dropin/components/utils.js.map +0 -1
- package/dist/es-legacy/core/Analytics/AnalyticsErrorEvent.js +0 -2
- package/dist/es-legacy/core/Analytics/AnalyticsErrorEvent.js.map +0 -1
- package/dist/es-legacy/core/Analytics/AnalyticsEvent.js +0 -2
- package/dist/es-legacy/core/Analytics/AnalyticsEvent.js.map +0 -1
- package/dist/es-legacy/core/Analytics/AnalyticsInfoEvent.js +0 -2
- package/dist/es-legacy/core/Analytics/AnalyticsInfoEvent.js.map +0 -1
- package/dist/es-legacy/core/Analytics/AnalyticsLogEvent.js +0 -2
- package/dist/es-legacy/core/Analytics/AnalyticsLogEvent.js.map +0 -1
- package/dist/es-legacy/core/Analytics/EventsQueue.js +0 -2
- package/dist/es-legacy/core/Analytics/EventsQueue.js.map +0 -1
- package/dist/es-legacy/core/ProcessResponse/process-response.js.map +0 -1
- package/dist/es-legacy/core/Services/analytics/collect-id.js +0 -2
- package/dist/es-legacy/core/Services/analytics/collect-id.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PasskeyService.js","sources":["../../../../../src/components/PayByBankPix/services/PasskeyService.ts"],"sourcesContent":["import { PasskeySdkLoader } from './PasskeySdkLoader';\nimport {\n PasskeyServiceConfig,\n IPasskeyService,\n IAdyenPasskey,\n PasskeyErrorTypes,\n RiskSignalsEnrollment,\n RiskSignalsAuthentication,\n NavigatorCredentialCreationsError,\n NavigatorCredentialRetrievalError\n} from './types';\nimport AdyenCheckoutError, { SDK_ERROR } from '../../../core/Errors/AdyenCheckoutError';\nimport {
|
|
1
|
+
{"version":3,"file":"PasskeyService.js","sources":["../../../../../src/components/PayByBankPix/services/PasskeyService.ts"],"sourcesContent":["import { PasskeySdkLoader } from './PasskeySdkLoader';\nimport {\n PasskeyServiceConfig,\n IPasskeyService,\n IAdyenPasskey,\n PasskeyErrorTypes,\n RiskSignalsEnrollment,\n RiskSignalsAuthentication,\n NavigatorCredentialCreationsError,\n NavigatorCredentialRetrievalError\n} from './types';\nimport AdyenCheckoutError, { SDK_ERROR } from '../../../core/Errors/AdyenCheckoutError';\nimport { DecodeObject } from '../../../types/global-types';\nimport base64 from '../../../utils/base64';\nimport type { IAnalytics } from '../../../core/Analytics/Analytics';\n\nexport class PasskeyService implements IPasskeyService {\n private readonly passkeyServiceConfig: PasskeyServiceConfig;\n private readonly analytics: IAnalytics;\n\n private passkeySdk: IAdyenPasskey;\n private riskSignals: RiskSignalsEnrollment | RiskSignalsAuthentication;\n private initialized: Promise<void>;\n\n constructor(configuration: PasskeyServiceConfig, analytics: IAnalytics) {\n this.analytics = analytics;\n this.passkeyServiceConfig = configuration;\n }\n\n get deviceId() {\n return this.passkeyServiceConfig.deviceId;\n }\n\n public async getWebAuthnUnsupportedReason(): Promise<string> {\n if (!window.PublicKeyCredential) {\n return 'Browser does not support webauthn';\n }\n try {\n const platformAuthenticatorAvailable = await window.PublicKeyCredential.isUserVerifyingPlatformAuthenticatorAvailable();\n if (!platformAuthenticatorAvailable) {\n return 'Device does not have platform authenticator';\n }\n } catch (e) {\n return 'Unknown error';\n }\n\n return '';\n }\n\n public initialize() {\n if (this.initialized == null) {\n this.initialized = new PasskeySdkLoader({ environment: this.passkeyServiceConfig.environment, analytics: this.analytics })\n .load()\n .then(passkey => {\n this.passkeySdk = passkey;\n });\n }\n\n return this.initialized;\n }\n\n public async captureRiskSignalsEnrollment(): Promise<RiskSignalsEnrollment> {\n await this.initialized;\n if (this.riskSignals) {\n // Cache it so we don't create unnecessary entries in the localstorage by calling captureRiskSignalsEnrollment\n return this.riskSignals;\n }\n\n const result = await this.passkeySdk.captureRiskSignalsEnrollment(this.deviceId);\n if (result && 'type' in result && result.type === PasskeyErrorTypes.RISK_SIGNALS_ERROR) {\n throw new AdyenCheckoutError(SDK_ERROR, result.message);\n }\n this.riskSignals = result as RiskSignalsEnrollment;\n return this.riskSignals;\n }\n\n public async canUseStoredCredential(): Promise<boolean> {\n try {\n await this.captureRiskSignalsAuthentication();\n return true;\n } catch (error) {\n console.warn(\n `The device is not eligible for stored credential authentication: ${error instanceof Error ? error?.message : 'unknown error'}`\n );\n return false;\n }\n }\n\n public async captureRiskSignalsAuthentication(): Promise<RiskSignalsAuthentication> {\n await this.initialized;\n const result = await this.passkeySdk.captureRiskSignalsAuthentication(this.deviceId);\n if (result && 'type' in result && result.type === PasskeyErrorTypes.RISK_SIGNALS_ERROR) {\n throw new AdyenCheckoutError(SDK_ERROR, result.message);\n }\n return result as RiskSignalsAuthentication;\n }\n\n public async createCredentialForEnrollment(registrationOptions: string): Promise<string> {\n await this.initialized;\n const options = this.decodeJsonBase64(registrationOptions, 'Failed to decode registrationOptions');\n const result = await this.passkeySdk.createCredentialForEnrollment(options);\n if (result && 'type' in result && result.type === PasskeyErrorTypes.CREDENTIAL_CREATION_ERROR) {\n throw new AdyenCheckoutError(SDK_ERROR, (result as NavigatorCredentialCreationsError).message);\n }\n return base64.encode(JSON.stringify(result));\n }\n\n public async authenticateWithCredential(authenticationOptions: string): Promise<string> {\n await this.initialized;\n const options = this.decodeJsonBase64(authenticationOptions, 'Failed to decode authenticationOptions');\n const result = await this.passkeySdk.authenticateWithCredential(options);\n if (result && 'type' in result && result.type === PasskeyErrorTypes.CREDENTIAL_RETRIEVAL_ERROR) {\n throw new AdyenCheckoutError(SDK_ERROR, (result as NavigatorCredentialRetrievalError).message);\n }\n return base64.encode(JSON.stringify(result));\n }\n\n private decodeJsonBase64(encoded: string, errorMessage: string) {\n const decoded: DecodeObject = base64.decode(encoded);\n if (!decoded.success) {\n throw new AdyenCheckoutError(SDK_ERROR, errorMessage);\n }\n return JSON.parse(decoded.data);\n }\n}\n"],"names":["PasskeyService","deviceId","this","passkeyServiceConfig","getWebAuthnUnsupportedReason","window","PublicKeyCredential","isUserVerifyingPlatformAuthenticatorAvailable","e","initialize","initialized","PasskeySdkLoader","environment","analytics","load","then","passkey","passkeySdk","captureRiskSignalsEnrollment","riskSignals","result","type","PasskeyErrorTypes","RISK_SIGNALS_ERROR","AdyenCheckoutError","SDK_ERROR","message","canUseStoredCredential","captureRiskSignalsAuthentication","error","console","warn","Error","createCredentialForEnrollment","registrationOptions","options","decodeJsonBase64","CREDENTIAL_CREATION_ERROR","base64","encode","JSON","stringify","authenticateWithCredential","authenticationOptions","CREDENTIAL_RETRIEVAL_ERROR","encoded","errorMessage","decoded","decode","success","parse","data","constructor","configuration","_define_property"],"mappings":"kVAgBO,MAAMA,EAaT,YAAIC,GACA,OAAOC,KAAKC,qBAAqBF,QACrC,CAEA,kCAAaG,GACT,IAAKC,OAAOC,oBACR,MAAO,oCAEX,IAEI,UAD6CD,OAAOC,oBAAoBC,gDAEpE,MAAO,6CAEf,CAAE,MAAOC,GACL,MAAO,eACX,CAEA,MAAO,EACX,CAEOC,UAAAA,GASH,OARwB,MAApBP,KAAKQ,cACLR,KAAKQ,YAAc,IAAIC,EAAiB,CAAEC,YAAaV,KAAKC,qBAAqBS,YAAaC,UAAWX,KAAKW,YACzGC,OACAC,KAAKC,IACFd,KAAKe,WAAaD,KAIvBd,KAAKQ,WAChB,CAEA,kCAAaQ,GAET,SADMhB,KAAKQ,YACPR,KAAKiB,YAEL,OAAOjB,KAAKiB,YAGhB,MAAMC,QAAelB,KAAKe,WAAWC,6BAA6BhB,KAAKD,UACvE,GAAImB,GAAU,SAAUA,GAAUA,EAAOC,OAASC,EAAkBC,mBAChE,MAAM,IAAIC,EAAmBC,EAAWL,EAAOM,SAGnD,OADAxB,KAAKiB,YAAcC,EACZlB,KAAKiB,WAChB,CAEA,4BAAaQ,GACT,IAEI,aADMzB,KAAK0B,oCACJ,CACX,CAAE,MAAOC,GAIL,OAHAC,QAAQC,KACJ,oEAAoEF,aAAiBG,MAAQH,GAAOH,QAAU,oBAE3G,CACX,CACJ,CAEA,sCAAaE,SACH1B,KAAKQ,YACX,MAAMU,QAAelB,KAAKe,WAAWW,iCAAiC1B,KAAKD,UAC3E,GAAImB,GAAU,SAAUA,GAAUA,EAAOC,OAASC,EAAkBC,mBAChE,MAAM,IAAIC,EAAmBC,EAAWL,EAAOM,SAEnD,OAAON,CACX,CAEA,mCAAaa,CAA8BC,SACjChC,KAAKQ,YACX,MAAMyB,EAAUjC,KAAKkC,iBAAiBF,EAAqB,wCACrDd,QAAelB,KAAKe,WAAWgB,8BAA8BE,GACnE,GAAIf,GAAU,SAAUA,GAAUA,EAAOC,OAASC,EAAkBe,0BAChE,MAAM,IAAIb,EAAmBC,EAAYL,EAA6CM,SAE1F,OAAOY,EAAOC,OAAOC,KAAKC,UAAUrB,GACxC,CAEA,gCAAasB,CAA2BC,SAC9BzC,KAAKQ,YACX,MAAMyB,EAAUjC,KAAKkC,iBAAiBO,EAAuB,0CACvDvB,QAAelB,KAAKe,WAAWyB,2BAA2BP,GAChE,GAAIf,GAAU,SAAUA,GAAUA,EAAOC,OAASC,EAAkBsB,2BAChE,MAAM,IAAIpB,EAAmBC,EAAYL,EAA6CM,SAE1F,OAAOY,EAAOC,OAAOC,KAAKC,UAAUrB,GACxC,CAEQgB,gBAAAA,CAAiBS,EAAiBC,GACtC,MAAMC,EAAwBT,EAAOU,OAAOH,GAC5C,IAAKE,EAAQE,QACT,MAAM,IAAIzB,EAAmBC,EAAWqB,GAE5C,OAAON,KAAKU,MAAMH,EAAQI,KAC9B,CAnGA,WAAAC,CAAYC,EAAqCxC,GAPjDyC,EAAApD,KAAiBC,4BAAjB,GACAmD,EAAApD,KAAiBW,iBAAjB,GAEAyC,EAAApD,KAAQe,kBAAR,GACAqC,EAAApD,KAAQiB,mBAAR,GACAmC,EAAApD,KAAQQ,mBAAR,GAGIR,KAAKW,UAAYA,EACjBX,KAAKC,qBAAuBkD,CAChC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{createElement as t,Fragment as e}from"../../external/preact/dist/preact.js";import
|
|
1
|
+
import{createElement as t,Fragment as e}from"../../external/preact/dist/preact.js";import s from"../Redirect/Redirect.js";import o from"../internal/RedirectButton/RedirectButton.js";import{TxVariants as a}from"../tx-variants.js";import r from"../../utils/get-issuer-image.js";import n from"../internal/PayButton/PayButton.js";import{payAmountLabel as i}from"../internal/PayButton/utils.js";class p extends s{formatProps(t){return{keepBrandsVisible:!0,showOtherInsteadOfNumber:!0,...t}}formatData(){return{paymentMethod:{type:this.type,...this.props.storedPaymentMethodId&&{storedPaymentMethodId:this.props.storedPaymentMethodId}},browserInfo:this.browserInfo}}get displayName(){return this.props.storedPaymentMethodId&&this.props.label?this.props.label:this.props.name}get additionalInfo(){return this.props.storedPaymentMethodId?this.props.name:""}get brands(){const t=r({},"paybybank",t=>this.resources.getImage(t));return[{icon:t("US-1"),name:"Wells Fargo"},{icon:t("US-2"),name:"Bank of America"},{icon:t("US-3"),name:"Chase"},{icon:t("US-4"),name:"Citi"}]}componentToRender(){return this.props.storedPaymentMethodId?this.props.showPayButton&&t(n,{...this.props,classNameModifiers:["standalone"],amount:this.props.amount,label:i(this.props.i18n,this.props.amount),onClick:this.submit}):t(e,null,t("div",{className:"adyen-checkout-paybybank_AIS_DD"},t("p",{className:"adyen-checkout-paybybank_AIS_DD__description-header"},this.props.i18n.get("payByBankAISDD.disclaimer.header")),t("p",{className:"adyen-checkout-paybybank_AIS_DD__description-body"},this.props.i18n.get("payByBankAISDD.disclaimer.body"))),this.props.showPayButton&&t(o,{...this.props,showPayButton:this.props.showPayButton,name:this.displayName,onSubmit:this.submit,payButton:this.payButton,ref:t=>{this.componentRef=t}}))}}var m,d,h;m=p,d="type",h=a.paybybank_AIS_DD,d in m?Object.defineProperty(m,d,{value:h,enumerable:!0,configurable:!0,writable:!0}):m[d]=h;export{p as default};
|
|
2
2
|
//# sourceMappingURL=PayByBankUS.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PayByBankUS.js","sources":["../../../../src/components/PayByBankUS/PayByBankUS.tsx"],"sourcesContent":["import { Fragment, h } from 'preact';\nimport
|
|
1
|
+
{"version":3,"file":"PayByBankUS.js","sources":["../../../../src/components/PayByBankUS/PayByBankUS.tsx"],"sourcesContent":["import { Fragment, h } from 'preact';\nimport RedirectElement from '../Redirect';\nimport RedirectButton from '../internal/RedirectButton';\nimport { TxVariants } from '../tx-variants';\nimport './PayByBankUS.scss';\nimport getIssuerImageUrl from '../../utils/get-issuer-image';\nimport PayButton, { payAmountLabel } from '../internal/PayButton';\n\nexport default class PayByBankUS extends RedirectElement {\n public static type = TxVariants.paybybank_AIS_DD;\n\n protected formatProps(props) {\n return {\n // paymentMethodBrands configuration\n keepBrandsVisible: true,\n showOtherInsteadOfNumber: true,\n ...props\n };\n }\n\n public formatData() {\n return {\n paymentMethod: {\n type: this.type,\n ...(this.props.storedPaymentMethodId && {\n storedPaymentMethodId: this.props.storedPaymentMethodId\n })\n },\n browserInfo: this.browserInfo\n };\n }\n\n get displayName() {\n if (this.props.storedPaymentMethodId && this.props.label) {\n return this.props.label;\n }\n return this.props.name;\n }\n\n get additionalInfo() {\n return this.props.storedPaymentMethodId ? this.props.name : '';\n }\n\n /*\n Hardcode US brands \n */\n get brands(): { icon: string; name: string }[] {\n const getImage = props => this.resources.getImage(props);\n // paybybank_AIS_DD / tx_variant not used here since images are kept in paybybank subfolder\n const getIssuerIcon = getIssuerImageUrl({}, 'paybybank', getImage);\n\n // hardcoding\n return [\n { icon: getIssuerIcon('US-1'), name: 'Wells Fargo' },\n { icon: getIssuerIcon('US-2'), name: 'Bank of America' },\n { icon: getIssuerIcon('US-3'), name: 'Chase' },\n { icon: getIssuerIcon('US-4'), name: 'Citi' }\n ];\n }\n\n protected override componentToRender(): h.JSX.Element {\n return this.props.storedPaymentMethodId ? (\n this.props.showPayButton && (\n <PayButton\n {...this.props}\n classNameModifiers={['standalone']}\n amount={this.props.amount}\n label={payAmountLabel(this.props.i18n, this.props.amount)}\n onClick={this.submit}\n />\n )\n ) : (\n <Fragment>\n <div className=\"adyen-checkout-paybybank_AIS_DD\">\n <p className=\"adyen-checkout-paybybank_AIS_DD__description-header\">{this.props.i18n.get('payByBankAISDD.disclaimer.header')}</p>\n <p className=\"adyen-checkout-paybybank_AIS_DD__description-body\">{this.props.i18n.get('payByBankAISDD.disclaimer.body')}</p>\n </div>\n\n {this.props.showPayButton && (\n <RedirectButton\n {...this.props}\n showPayButton={this.props.showPayButton}\n name={this.displayName}\n onSubmit={this.submit}\n payButton={this.payButton}\n ref={ref => {\n this.componentRef = ref;\n }}\n />\n )}\n </Fragment>\n );\n }\n}\n"],"names":["PayByBankUS","RedirectElement","formatProps","props","keepBrandsVisible","showOtherInsteadOfNumber","formatData","paymentMethod","type","this","storedPaymentMethodId","browserInfo","displayName","label","name","additionalInfo","brands","getIssuerIcon","getIssuerImageUrl","resources","getImage","icon","componentToRender","showPayButton","h","PayButton","classNameModifiers","amount","payAmountLabel","i18n","onClick","submit","Fragment","div","className","p","get","RedirectButton","onSubmit","payButton","ref","componentRef","TxVariants","paybybank_AIS_DD"],"mappings":"sYAQe,MAAMA,UAAoBC,EAG3BC,WAAAA,CAAYC,GAClB,MAAO,CAEHC,mBAAmB,EACnBC,0BAA0B,KACvBF,EAEX,CAEOG,UAAAA,GACH,MAAO,CACHC,cAAe,CACXC,KAAMC,KAAKD,QACPC,KAAKN,MAAMO,uBAAyB,CACpCA,sBAAuBD,KAAKN,MAAMO,wBAG1CC,YAAaF,KAAKE,YAE1B,CAEA,eAAIC,GACA,OAAIH,KAAKN,MAAMO,uBAAyBD,KAAKN,MAAMU,MACxCJ,KAAKN,MAAMU,MAEfJ,KAAKN,MAAMW,IACtB,CAEA,kBAAIC,GACA,OAAON,KAAKN,MAAMO,sBAAwBD,KAAKN,MAAMW,KAAO,EAChE,CAKA,UAAIE,GACA,MAEMC,EAAgBC,EAAkB,GAAI,YAF3Bf,GAASM,KAAKU,UAAUC,SAASjB,IAKlD,MAAO,CACH,CAAEkB,KAAMJ,EAAc,QAASH,KAAM,eACrC,CAAEO,KAAMJ,EAAc,QAASH,KAAM,mBACrC,CAAEO,KAAMJ,EAAc,QAASH,KAAM,SACrC,CAAEO,KAAMJ,EAAc,QAASH,KAAM,QAE7C,CAEmBQ,iBAAAA,GACf,OAAOb,KAAKN,MAAMO,sBACdD,KAAKN,MAAMoB,eACPC,EAACC,EAAAA,IACOhB,KAAKN,MACTuB,mBAAoB,CAAC,cACrBC,OAAQlB,KAAKN,MAAMwB,OACnBd,MAAOe,EAAenB,KAAKN,MAAM0B,KAAMpB,KAAKN,MAAMwB,QAClDG,QAASrB,KAAKsB,SAItBP,EAACQ,OACGR,EAACS,MAAAA,CAAIC,UAAU,mCACXV,EAACW,IAAAA,CAAED,UAAU,uDAAuDzB,KAAKN,MAAM0B,KAAKO,IAAI,qCACxFZ,EAACW,IAAAA,CAAED,UAAU,qDAAqDzB,KAAKN,MAAM0B,KAAKO,IAAI,oCAGzF3B,KAAKN,MAAMoB,eACRC,EAACa,EAAAA,IACO5B,KAAKN,MACToB,cAAed,KAAKN,MAAMoB,cAC1BT,KAAML,KAAKG,YACX0B,SAAU7B,KAAKsB,OACfQ,UAAW9B,KAAK8B,UAChBC,IAAKA,IACD/B,KAAKgC,aAAeD,KAM5C,cApFiBxC,IACHQ,SAAOkC,EAAWC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{createElement as
|
|
1
|
+
import{createElement as e}from"../../external/preact/dist/preact.js";import{UIElement as t}from"../internal/UIElement/UIElement.js";import n from"./components/PaypalComponent.js";import i from"./defaultProps.js";import s from"../../core/Errors/AdyenCheckoutError.js";import{ERRORS as r}from"./constants.js";import{TxVariants as a}from"../tx-variants.js";import{formatPaypalOrderContactToAdyenFormat as o}from"./utils/format-paypal-order-contact-to-adyen-format.js";import{AnalyticsInfoEvent as h,InfoEventType as p}from"../../core/Analytics/events/AnalyticsInfoEvent.js";function d(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class l extends t{formatProps(e){const t=e.configuration?.merchantId,n=e.configuration?.intent,i=0===e.amount?.value?"tokenize":e.intent||n,s="tokenize"===i||e.vault,r="continue"===e.userAction;return{...e,commit:!r&&e.commit,vault:s,configuration:{intent:i,merchantId:t}}}beforeRender(e){const t=new h({type:p.rendered,component:this.type,configData:{...e,showPayButton:this.props.showPayButton},...e?.isExpress&&{isExpress:e.isExpress},...e?.expressPage&&{expressPage:e.expressPage}});this.analytics.sendAnalytics(t)}updatePaymentData(e){e||console.warn("PayPal - Updating payment data with an invalid value"),this.paymentData=e}formatData(){const{isExpress:e,userAction:t}=this.props;return{paymentMethod:{type:l.type,userAction:t,subtype:e?"express":l.subtype}}}get isValid(){return!0}handleResolve(e){if(!this.resolve)return this.handleError(new s("ERROR",r.WRONG_INSTANCE));this.resolve(e)}handleReject(e){if(!this.reject)return this.handleError(new s("ERROR",r.WRONG_INSTANCE));this.reject(new Error(e))}handleSubmit(){return super.submit(),new Promise((e,t)=>{this.resolve=e,this.reject=t})}handleOnShippingAddressChange(e,t){return this.props.onShippingAddressChange(e,t,this)}handleOnShippingOptionsChange(e,t){return this.props.onShippingOptionsChange(e,t,this)}componentToRender(){if(!this.props.showPayButton)return null;const{onShippingAddressChange:t,onShippingOptionsChange:i,...r}=this.props;return e(n,{ref:e=>{this.componentRef=e},...r,...t&&{onShippingAddressChange:this.handleOnShippingAddressChange},...i&&{onShippingOptionsChange:this.handleOnShippingOptionsChange},onCancel:()=>this.handleError(new s("CANCEL")),onChange:this.setState,onApprove:this.handleOnApprove,onError:e=>{this.handleError(new s("ERROR",e.toString(),{cause:e}))},onScriptLoadFailure:e=>this.handleError(e),onSubmit:this.handleSubmit})}constructor(e,t){super(e,t),d(this,"paymentData",null),d(this,"resolve",null),d(this,"reject",null),d(this,"submit",()=>{this.handleError(new s("IMPLEMENTATION_ERROR",r.SUBMIT_NOT_SUPPORTED))}),d(this,"handleAction",e=>this.updateWithAction(e)),d(this,"updateWithAction",e=>{if(e.paymentMethodType!==this.type)throw new Error("Invalid Action");return e.paymentData&&(this.paymentData=e.paymentData),e.sdkData&&e.sdkData.token?(this.onActionHandled({componentType:this.type,actionDescription:"sdk-loaded",originalAction:e}),this.handleResolve(e.sdkData.token)):this.handleReject(r.NO_TOKEN_PROVIDED),null}),d(this,"handleOnApprove",(e,t)=>{const{onAuthorized:n}=this.props,i={data:{details:e,paymentData:this.paymentData}};if(n)return t.order.get().then(e=>{const t=o(e?.payer),i=o(e?.purchase_units?.[0].shipping,!0);return this.setState({authorizedEvent:e,...t&&{billingAddress:t},...i&&{deliveryAddress:i}}),new Promise((s,r)=>n({authorizedEvent:e,...t&&{billingAddress:t},...i&&{deliveryAddress:i}},{resolve:s,reject:r}))}).then(()=>this.handleAdditionalDetails(i)).catch(e=>this.handleError(new s("ERROR","Something went wrong while parsing PayPal Order",{cause:e})));this.handleAdditionalDetails(i)}),this.handleSubmit=this.handleSubmit.bind(this),this.handleOnShippingAddressChange=this.handleOnShippingAddressChange.bind(this),this.handleOnShippingOptionsChange=this.handleOnShippingOptionsChange.bind(this)}}d(l,"type",a.paypal),d(l,"subtype","sdk"),d(l,"defaultProps",i);export{l as default};
|
|
2
2
|
//# sourceMappingURL=Paypal.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Paypal.js","sources":["../../../../src/components/PayPal/Paypal.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport PaypalComponent from './components/PaypalComponent';\nimport defaultProps from './defaultProps';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport AdyenCheckoutError from '../../core/Errors/AdyenCheckoutError';\nimport { ERRORS } from './constants';\nimport { TxVariants } from '../tx-variants';\nimport { formatPaypalOrderContactToAdyenFormat } from './utils/format-paypal-order-contact-to-adyen-format';\n\nimport type { ICore } from '../../core/types';\nimport type { PaymentAction } from '../../types/global-types';\nimport type { Intent, PayPalConfiguration } from './types';\n\nimport './Paypal.scss';\nimport { ANALYTICS_EXPRESS_PAGES_ARRAY, ANALYTICS_RENDERED_STR } from '../../core/Analytics/constants';\nimport { AnalyticsInfoEvent } from '../../core/Analytics/AnalyticsInfoEvent';\nimport { AnalyticsEvent } from '../../core/Analytics/AnalyticsEvent';\n\nclass PaypalElement extends UIElement<PayPalConfiguration> {\n public static type = TxVariants.paypal;\n public static subtype = 'sdk';\n\n public paymentData: string = null;\n\n private resolve = null;\n private reject = null;\n\n protected static defaultProps = defaultProps;\n\n constructor(checkout: ICore, props?: PayPalConfiguration) {\n super(checkout, props);\n this.handleSubmit = this.handleSubmit.bind(this);\n this.handleOnShippingAddressChange = this.handleOnShippingAddressChange.bind(this);\n this.handleOnShippingOptionsChange = this.handleOnShippingOptionsChange.bind(this);\n }\n\n formatProps(props: PayPalConfiguration): PayPalConfiguration {\n const merchantId = props.configuration?.merchantId;\n const intentFromConfig = props.configuration?.intent;\n const isZeroAuth = props.amount?.value === 0;\n const intent: Intent = isZeroAuth ? 'tokenize' : props.intent || intentFromConfig;\n const vault = intent === 'tokenize' || props.vault;\n\n const displayContinueToReviewPageButton = props.userAction === 'continue';\n\n return {\n ...props,\n commit: displayContinueToReviewPageButton ? false : props.commit,\n vault,\n configuration: {\n intent,\n merchantId\n }\n };\n }\n\n protected submitAnalytics(analyticsObj: AnalyticsEvent) {\n // Analytics will need to know about this.props.isExpress & this.props.expressPage\n if (analyticsObj instanceof AnalyticsInfoEvent && analyticsObj.type === ANALYTICS_RENDERED_STR) {\n const { isExpress, expressPage } = this.props;\n const hasExpressPage = expressPage && ANALYTICS_EXPRESS_PAGES_ARRAY.includes(expressPage);\n\n if (typeof isExpress === 'boolean') {\n analyticsObj.isExpress = isExpress;\n }\n\n if (isExpress === true && hasExpressPage) {\n analyticsObj.expressPage = expressPage; // We only care about the expressPage value if isExpress is true\n }\n }\n\n super.submitAnalytics(analyticsObj);\n }\n\n public submit = () => {\n this.handleError(new AdyenCheckoutError('IMPLEMENTATION_ERROR', ERRORS.SUBMIT_NOT_SUPPORTED));\n };\n\n /**\n * Updates the paymentData value. It must be used in the PayPal Express flow, when patching the amount\n * @param paymentData - Payment data value\n */\n public updatePaymentData(paymentData: string): void {\n if (!paymentData) console.warn('PayPal - Updating payment data with an invalid value');\n this.paymentData = paymentData;\n }\n\n /**\n * Formats the component data output\n */\n protected formatData() {\n const { isExpress, userAction } = this.props;\n\n return {\n paymentMethod: {\n type: PaypalElement.type,\n userAction,\n subtype: isExpress ? 'express' : PaypalElement.subtype\n }\n };\n }\n\n public handleAction = (action: PaymentAction) => {\n return this.updateWithAction(action);\n };\n\n public updateWithAction = (action: PaymentAction) => {\n if (action.paymentMethodType !== this.type) throw new Error('Invalid Action');\n\n if (action.paymentData) {\n this.paymentData = action.paymentData;\n }\n\n if (action.sdkData && action.sdkData.token) {\n this.onActionHandled({ componentType: this.type, actionDescription: 'sdk-loaded', originalAction: action });\n this.handleResolve(action.sdkData.token);\n } else {\n this.handleReject(ERRORS.NO_TOKEN_PROVIDED);\n }\n\n return null;\n };\n\n /**\n * Dropin Validation\n *\n * @remarks\n * Paypal does not require any specific Dropin validation\n */\n get isValid() {\n return true;\n }\n\n private handleOnApprove = (data: any, actions: any): Promise<void> | void => {\n const { onAuthorized } = this.props;\n const state = { data: { details: data, paymentData: this.paymentData } };\n\n if (!onAuthorized) {\n this.handleAdditionalDetails(state);\n return;\n }\n\n return actions.order\n .get()\n .then((paypalOrder: any) => {\n const billingAddress = formatPaypalOrderContactToAdyenFormat(paypalOrder?.payer);\n const deliveryAddress = formatPaypalOrderContactToAdyenFormat(paypalOrder?.purchase_units?.[0].shipping, true);\n\n this.setState({\n authorizedEvent: paypalOrder,\n ...(billingAddress && { billingAddress }),\n ...(deliveryAddress && { deliveryAddress })\n });\n\n return new Promise<void>((resolve, reject) =>\n onAuthorized(\n {\n authorizedEvent: paypalOrder,\n ...(billingAddress && { billingAddress }),\n ...(deliveryAddress && { deliveryAddress })\n },\n { resolve, reject }\n )\n );\n })\n .then(() => this.handleAdditionalDetails(state))\n .catch(error => this.handleError(new AdyenCheckoutError('ERROR', 'Something went wrong while parsing PayPal Order', { cause: error })));\n };\n\n handleResolve(token: string) {\n if (!this.resolve) return this.handleError(new AdyenCheckoutError('ERROR', ERRORS.WRONG_INSTANCE));\n this.resolve(token);\n }\n\n handleReject(errorMessage: string) {\n if (!this.reject) return this.handleError(new AdyenCheckoutError('ERROR', ERRORS.WRONG_INSTANCE));\n this.reject(new Error(errorMessage));\n }\n\n private handleSubmit(): Promise<void> {\n super.submit();\n\n return new Promise((resolve, reject) => {\n this.resolve = resolve;\n this.reject = reject;\n });\n }\n\n /**\n * If the merchant provides the 'onShippingAddressChange' callback, then this method is used as a wrapper to it, in order\n * to expose to the merchant the 'component' instance. The merchant needs the 'component' in order to manipulate the\n * paymentData\n *\n * @param data - PayPal data\n * @param actions - PayPal actions.\n */\n private handleOnShippingAddressChange(data: any, actions: any): Promise<void> {\n return this.props.onShippingAddressChange(data, actions, this);\n }\n\n /**\n * If the merchant provides the 'onShippingOptionsChange' callback, then this method is used as a wrapper to it, in order\n * to expose to the merchant the 'component' instance. The merchant needs the 'component' in order to manipulate the\n * paymentData\n *\n * @param data - PayPal data\n * @param actions - PayPal actions.\n */\n private handleOnShippingOptionsChange(data: any, actions: any): Promise<void> {\n return this.props.onShippingOptionsChange(data, actions, this);\n }\n\n render() {\n if (!this.props.showPayButton) return null;\n\n const { onShippingAddressChange, onShippingOptionsChange, ...rest } = this.props;\n\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources} analytics={this.analytics}>\n <PaypalComponent\n ref={ref => {\n this.componentRef = ref;\n }}\n {...rest}\n {...(onShippingAddressChange && { onShippingAddressChange: this.handleOnShippingAddressChange })}\n {...(onShippingOptionsChange && { onShippingOptionsChange: this.handleOnShippingOptionsChange })}\n onCancel={() => this.handleError(new AdyenCheckoutError('CANCEL'))}\n onChange={this.setState}\n onApprove={this.handleOnApprove}\n onError={error => {\n this.handleError(new AdyenCheckoutError('ERROR', error.toString(), { cause: error }));\n }}\n onScriptLoadFailure={error => this.handleError(error)}\n onSubmit={this.handleSubmit}\n />\n </CoreProvider>\n );\n }\n}\n\nexport default PaypalElement;\n"],"names":["PaypalElement","UIElement","formatProps","props","merchantId","configuration","intentFromConfig","intent","amount","value","vault","displayContinueToReviewPageButton","userAction","commit","submitAnalytics","analyticsObj","AnalyticsInfoEvent","type","ANALYTICS_RENDERED_STR","isExpress","expressPage","this","hasExpressPage","ANALYTICS_EXPRESS_PAGES_ARRAY","includes","super","updatePaymentData","paymentData","console","warn","formatData","paymentMethod","subtype","isValid","handleResolve","token","resolve","handleError","AdyenCheckoutError","ERRORS","WRONG_INSTANCE","handleReject","errorMessage","reject","Error","handleSubmit","submit","Promise","handleOnShippingAddressChange","data","actions","onShippingAddressChange","handleOnShippingOptionsChange","onShippingOptionsChange","render","showPayButton","rest","h","CoreProvider","i18n","loadingContext","resources","analytics","PaypalComponent","ref","componentRef","onCancel","onChange","setState","onApprove","handleOnApprove","onError","error","toString","cause","onScriptLoadFailure","onSubmit","constructor","checkout","_define_property","SUBMIT_NOT_SUPPORTED","handleAction","action","updateWithAction","paymentMethodType","sdkData","onActionHandled","componentType","actionDescription","originalAction","NO_TOKEN_PROVIDED","onAuthorized","state","details","order","get","then","paypalOrder","billingAddress","formatPaypalOrderContactToAdyenFormat","payer","deliveryAddress","purchase_units","shipping","authorizedEvent","handleAdditionalDetails","catch","bind","TxVariants","paypal","defaultProps"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Paypal.js","sources":["../../../../src/components/PayPal/Paypal.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport PaypalComponent from './components/PaypalComponent';\nimport defaultProps from './defaultProps';\nimport AdyenCheckoutError from '../../core/Errors/AdyenCheckoutError';\nimport { ERRORS } from './constants';\nimport { TxVariants } from '../tx-variants';\nimport { formatPaypalOrderContactToAdyenFormat } from './utils/format-paypal-order-contact-to-adyen-format';\n\nimport type { ICore } from '../../core/types';\nimport type { PaymentAction } from '../../types/global-types';\nimport type { Intent, PayPalConfiguration } from './types';\n\nimport './Paypal.scss';\nimport { AnalyticsInfoEvent, InfoEventType } from '../../core/Analytics/events/AnalyticsInfoEvent';\n\nclass PaypalElement extends UIElement<PayPalConfiguration> {\n public static type = TxVariants.paypal;\n public static subtype = 'sdk';\n\n public paymentData: string = null;\n\n private resolve = null;\n private reject = null;\n\n protected static defaultProps = defaultProps;\n\n constructor(checkout: ICore, props?: PayPalConfiguration) {\n super(checkout, props);\n this.handleSubmit = this.handleSubmit.bind(this);\n this.handleOnShippingAddressChange = this.handleOnShippingAddressChange.bind(this);\n this.handleOnShippingOptionsChange = this.handleOnShippingOptionsChange.bind(this);\n }\n\n formatProps(props: PayPalConfiguration): PayPalConfiguration {\n const merchantId = props.configuration?.merchantId;\n const intentFromConfig = props.configuration?.intent;\n const isZeroAuth = props.amount?.value === 0;\n const intent: Intent = isZeroAuth ? 'tokenize' : props.intent || intentFromConfig;\n const vault = intent === 'tokenize' || props.vault;\n\n const displayContinueToReviewPageButton = props.userAction === 'continue';\n\n return {\n ...props,\n commit: displayContinueToReviewPageButton ? false : props.commit,\n vault,\n configuration: {\n intent,\n merchantId\n }\n };\n }\n\n protected override beforeRender(configSetByMerchant?: PayPalConfiguration) {\n const event = new AnalyticsInfoEvent({\n type: InfoEventType.rendered,\n component: this.type,\n configData: { ...configSetByMerchant, showPayButton: this.props.showPayButton },\n ...(configSetByMerchant?.isExpress && { isExpress: configSetByMerchant.isExpress }),\n ...(configSetByMerchant?.expressPage && { expressPage: configSetByMerchant.expressPage })\n });\n\n this.analytics.sendAnalytics(event);\n }\n\n public submit = () => {\n this.handleError(new AdyenCheckoutError('IMPLEMENTATION_ERROR', ERRORS.SUBMIT_NOT_SUPPORTED));\n };\n\n /**\n * Updates the paymentData value. It must be used in the PayPal Express flow, when patching the amount\n * @param paymentData - Payment data value\n */\n public updatePaymentData(paymentData: string): void {\n if (!paymentData) console.warn('PayPal - Updating payment data with an invalid value');\n this.paymentData = paymentData;\n }\n\n /**\n * Formats the component data output\n */\n protected formatData() {\n const { isExpress, userAction } = this.props;\n\n return {\n paymentMethod: {\n type: PaypalElement.type,\n userAction,\n subtype: isExpress ? 'express' : PaypalElement.subtype\n }\n };\n }\n\n public handleAction = (action: PaymentAction) => {\n return this.updateWithAction(action);\n };\n\n public updateWithAction = (action: PaymentAction) => {\n if (action.paymentMethodType !== this.type) throw new Error('Invalid Action');\n\n if (action.paymentData) {\n this.paymentData = action.paymentData;\n }\n\n if (action.sdkData && action.sdkData.token) {\n this.onActionHandled({ componentType: this.type, actionDescription: 'sdk-loaded', originalAction: action });\n this.handleResolve(action.sdkData.token);\n } else {\n this.handleReject(ERRORS.NO_TOKEN_PROVIDED);\n }\n\n return null;\n };\n\n /**\n * Dropin Validation\n *\n * @remarks\n * Paypal does not require any specific Dropin validation\n */\n get isValid() {\n return true;\n }\n\n private handleOnApprove = (data: any, actions: any): Promise<void> | void => {\n const { onAuthorized } = this.props;\n const state = { data: { details: data, paymentData: this.paymentData } };\n\n if (!onAuthorized) {\n this.handleAdditionalDetails(state);\n return;\n }\n\n return actions.order\n .get()\n .then((paypalOrder: any) => {\n const billingAddress = formatPaypalOrderContactToAdyenFormat(paypalOrder?.payer);\n const deliveryAddress = formatPaypalOrderContactToAdyenFormat(paypalOrder?.purchase_units?.[0].shipping, true);\n\n this.setState({\n authorizedEvent: paypalOrder,\n ...(billingAddress && { billingAddress }),\n ...(deliveryAddress && { deliveryAddress })\n });\n\n return new Promise<void>((resolve, reject) =>\n onAuthorized(\n {\n authorizedEvent: paypalOrder,\n ...(billingAddress && { billingAddress }),\n ...(deliveryAddress && { deliveryAddress })\n },\n { resolve, reject }\n )\n );\n })\n .then(() => this.handleAdditionalDetails(state))\n .catch(error => this.handleError(new AdyenCheckoutError('ERROR', 'Something went wrong while parsing PayPal Order', { cause: error })));\n };\n\n handleResolve(token: string) {\n if (!this.resolve) return this.handleError(new AdyenCheckoutError('ERROR', ERRORS.WRONG_INSTANCE));\n this.resolve(token);\n }\n\n handleReject(errorMessage: string) {\n if (!this.reject) return this.handleError(new AdyenCheckoutError('ERROR', ERRORS.WRONG_INSTANCE));\n this.reject(new Error(errorMessage));\n }\n\n private handleSubmit(): Promise<void> {\n super.submit();\n\n return new Promise((resolve, reject) => {\n this.resolve = resolve;\n this.reject = reject;\n });\n }\n\n /**\n * If the merchant provides the 'onShippingAddressChange' callback, then this method is used as a wrapper to it, in order\n * to expose to the merchant the 'component' instance. The merchant needs the 'component' in order to manipulate the\n * paymentData\n *\n * @param data - PayPal data\n * @param actions - PayPal actions.\n */\n private handleOnShippingAddressChange(data: any, actions: any): Promise<void> {\n return this.props.onShippingAddressChange(data, actions, this);\n }\n\n /**\n * If the merchant provides the 'onShippingOptionsChange' callback, then this method is used as a wrapper to it, in order\n * to expose to the merchant the 'component' instance. The merchant needs the 'component' in order to manipulate the\n * paymentData\n *\n * @param data - PayPal data\n * @param actions - PayPal actions.\n */\n private handleOnShippingOptionsChange(data: any, actions: any): Promise<void> {\n return this.props.onShippingOptionsChange(data, actions, this);\n }\n\n protected override componentToRender(): h.JSX.Element {\n if (!this.props.showPayButton) return null;\n\n const { onShippingAddressChange, onShippingOptionsChange, ...rest } = this.props;\n\n return (\n <PaypalComponent\n ref={ref => {\n this.componentRef = ref;\n }}\n {...rest}\n {...(onShippingAddressChange && { onShippingAddressChange: this.handleOnShippingAddressChange })}\n {...(onShippingOptionsChange && { onShippingOptionsChange: this.handleOnShippingOptionsChange })}\n onCancel={() => this.handleError(new AdyenCheckoutError('CANCEL'))}\n onChange={this.setState}\n onApprove={this.handleOnApprove}\n onError={error => {\n this.handleError(new AdyenCheckoutError('ERROR', error.toString(), { cause: error }));\n }}\n onScriptLoadFailure={error => this.handleError(error)}\n onSubmit={this.handleSubmit}\n />\n );\n }\n}\n\nexport default PaypalElement;\n"],"names":["PaypalElement","UIElement","formatProps","props","merchantId","configuration","intentFromConfig","intent","amount","value","vault","displayContinueToReviewPageButton","userAction","commit","beforeRender","configSetByMerchant","event","AnalyticsInfoEvent","type","InfoEventType","rendered","component","this","configData","showPayButton","isExpress","expressPage","analytics","sendAnalytics","updatePaymentData","paymentData","console","warn","formatData","paymentMethod","subtype","isValid","handleResolve","token","resolve","handleError","AdyenCheckoutError","ERRORS","WRONG_INSTANCE","handleReject","errorMessage","reject","Error","handleSubmit","super","submit","Promise","handleOnShippingAddressChange","data","actions","onShippingAddressChange","handleOnShippingOptionsChange","onShippingOptionsChange","componentToRender","rest","h","PaypalComponent","ref","componentRef","onCancel","onChange","setState","onApprove","handleOnApprove","onError","error","toString","cause","onScriptLoadFailure","onSubmit","constructor","checkout","_define_property","SUBMIT_NOT_SUPPORTED","handleAction","action","updateWithAction","paymentMethodType","sdkData","onActionHandled","componentType","actionDescription","originalAction","NO_TOKEN_PROVIDED","onAuthorized","state","details","order","get","then","paypalOrder","billingAddress","formatPaypalOrderContactToAdyenFormat","payer","deliveryAddress","purchase_units","shipping","authorizedEvent","handleAdditionalDetails","catch","bind","TxVariants","paypal","defaultProps"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{createElement as
|
|
1
|
+
import{createElement as e}from"../../external/preact/dist/preact.js";import{UIElement as t}from"../internal/UIElement/UIElement.js";import{TxVariants as r}from"../tx-variants.js";import s from"./components/FastlaneComponent.js";function n(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}class o extends t{formatData(){return{paymentMethod:{type:o.type,fastlaneData:btoa(JSON.stringify({fastlaneSessionId:this.props.fastlaneSessionId,tokenId:this.props.tokenId}))}}}beforeRender(){super.beforeRender()}async isAvailable(){const{tokenId:e,lastFour:t,brand:r,email:s}=this.props;return e&&t&&r&&s?Promise.resolve():Promise.reject()}get isValid(){return!0}get icon(){return this.props.icon??this.resources.getImage()("card")}get brands(){const{brands:e}=this.props;return e.map(e=>({icon:this.props.modules.resources.getImage()(e),name:e}))}componentToRender(){return e(s,{lastFour:this.props.lastFour,brand:this.props.brand,payButton:this.payButton,setComponentRef:this.setComponentRef,showPayButton:this.props.showPayButton})}}n(o,"type",r.fastlane),n(o,"defaultProps",{keepBrandsVisible:!0});export{o as default};
|
|
2
2
|
//# sourceMappingURL=Fastlane.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Fastlane.js","sources":["../../../../src/components/PayPalFastlane/Fastlane.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement';\nimport {
|
|
1
|
+
{"version":3,"file":"Fastlane.js","sources":["../../../../src/components/PayPalFastlane/Fastlane.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement';\nimport { TxVariants } from '../tx-variants';\nimport FastlaneComponent from './components/FastlaneComponent';\nimport type { FastlaneConfiguration } from './types';\n\nclass Fastlane extends UIElement<FastlaneConfiguration> {\n public static readonly type = TxVariants.fastlane;\n\n protected static defaultProps = {\n keepBrandsVisible: true\n };\n\n protected override formatData() {\n return {\n paymentMethod: {\n type: Fastlane.type,\n fastlaneData: btoa(\n JSON.stringify({\n fastlaneSessionId: this.props.fastlaneSessionId,\n tokenId: this.props.tokenId\n })\n )\n }\n };\n }\n\n /**\n *\n * Fastlane works differently than other payment methods: Merchant needs to pass to the payment method\n * configuration the values received from PayPal SDK to perform the payment (tokenId, etc). There is no\n * point in tracking these values, so we just omit them all in the analytics by calling the\n * 'beforeRender' without the props\n *\n * @protected\n */\n protected override beforeRender() {\n super.beforeRender();\n }\n\n public override async isAvailable(): Promise<void> {\n const { tokenId, lastFour, brand, email } = this.props;\n if (tokenId && lastFour && brand && email) {\n return Promise.resolve();\n }\n return Promise.reject();\n }\n\n public override get isValid(): boolean {\n return true;\n }\n\n /**\n * Used to display payment method logo within Drop-in\n */\n public override get icon(): string {\n return this.props.icon ?? this.resources.getImage()('card');\n }\n\n /**\n * Used to display the payment method supported brands within Drop-in\n */\n public get brands(): { icon: string; name: string }[] {\n const { brands } = this.props;\n return brands.map(brand => ({ icon: this.props.modules.resources.getImage()(brand), name: brand }));\n }\n\n protected override componentToRender(): h.JSX.Element {\n return (\n <FastlaneComponent\n lastFour={this.props.lastFour}\n brand={this.props.brand}\n payButton={this.payButton}\n setComponentRef={this.setComponentRef}\n showPayButton={this.props.showPayButton}\n />\n );\n }\n}\n\nexport default Fastlane;\n"],"names":["Fastlane","UIElement","formatData","paymentMethod","type","fastlaneData","btoa","JSON","stringify","fastlaneSessionId","this","props","tokenId","beforeRender","super","isAvailable","lastFour","brand","email","Promise","resolve","reject","isValid","icon","resources","getImage","brands","map","modules","name","componentToRender","h","FastlaneComponent","payButton","setComponentRef","showPayButton","_define_property","TxVariants","fastlane","defaultProps","keepBrandsVisible"],"mappings":"4VAMA,MAAMA,UAAiBC,EAOAC,UAAAA,GACf,MAAO,CACHC,cAAe,CACXC,KAAMJ,EAASI,KACfC,aAAcC,KACVC,KAAKC,UAAU,CACXC,kBAAmBC,KAAKC,MAAMF,kBAC9BG,QAASF,KAAKC,MAAMC,YAKxC,CAWA,YAAAC,GACIC,MAAMD,cACV,CAEA,iBAAsBE,GAClB,MAAMH,QAAEA,EAAOI,SAAEA,EAAQC,MAAEA,EAAKC,MAAEA,GAAUR,KAAKC,MACjD,OAAIC,GAAWI,GAAYC,GAASC,EACzBC,QAAQC,UAEZD,QAAQE,QACnB,CAEA,WAAoBC,GAChB,OAAO,CACX,CAKA,QAAoBC,GAChB,OAAOb,KAAKC,MAAMY,MAAQb,KAAKc,UAAUC,UAAff,CAA0B,OACxD,CAKA,UAAWgB,GACP,MAAMA,OAAEA,GAAWhB,KAAKC,MACxB,OAAOe,EAAOC,IAAIV,KAAYM,KAAMb,KAAKC,MAAMiB,QAAQJ,UAAUC,UAA7Bf,CAAwCO,GAAQY,KAAMZ,IAC9F,CAEmBa,iBAAAA,GACf,OACIC,EAACC,EAAAA,CACGhB,SAAUN,KAAKC,MAAMK,SACrBC,MAAOP,KAAKC,MAAMM,MAClBgB,UAAWvB,KAAKuB,UAChBC,gBAAiBxB,KAAKwB,gBACtBC,cAAezB,KAAKC,MAAMwB,eAGtC,EAtEAC,EADEpC,EACqBI,OAAOiC,EAAWC,UAEzCF,EAHEpC,EAGeuC,eAAe,CAC5BC,mBAAmB"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{resolveEnvironments as t}from"../../core/Environment/Environment.js";import e from"./services/request-fastlane-token.js";import{convertAdyenLocaleToFastlaneLocale as n}from"./utils/convert-locale.js";import a from"../../utils/Script.js";import i from"../../core/Errors/AdyenCheckoutError.js";import s from"../../core/Analytics/Analytics.js";import{InfoEventType as o,AnalyticsInfoEvent as r}from"../../core/Analytics/AnalyticsInfoEvent.js";function
|
|
1
|
+
import{resolveEnvironments as t}from"../../core/Environment/Environment.js";import e from"./services/request-fastlane-token.js";import{convertAdyenLocaleToFastlaneLocale as n}from"./utils/convert-locale.js";import a from"../../utils/Script.js";import i from"../../core/Errors/AdyenCheckoutError.js";import s from"../../core/Analytics/Analytics.js";import{InfoEventType as o,AnalyticsInfoEvent as r}from"../../core/Analytics/events/AnalyticsInfoEvent.js";import{AnalyticsEventQueue as c}from"../../core/Analytics/AnalyticsEventQueue.js";import{AnalyticsService as l}from"../../core/Analytics/AnalyticsService.js";function h(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}class d{async initialize(){this.analytics.setUp({checkoutStage:"precheckout"});const t=await this.requestClientToken();return await this.fetchSdk(t.value,t.clientId),await this.initializeFastlaneInstance(),this.trackEvent(o.Initialized),this}destroy(){document.removeEventListener("visibilitychange",this.handlePageVisibilityChanges),this.analytics.flush()}async authenticate(t){if(!this.fastlaneSdk)throw new i("IMPLEMENTATION_ERROR","authenticate(): Fastlane SDK is not initialized");this.trackEvent(o.LookupStarted);try{const{customerContextId:e}=await this.fastlaneSdk.identity.lookupCustomerByEmail(t);if(e){this.latestShopperDetails={email:t,customerId:e},this.trackEvent(o.OtpStarted);const n=await this.fastlaneSdk.identity.triggerAuthenticationFlow(e);return this.trackEvent(this.getOtpAnalyticsSubtype(n.authenticationState)),n}return this.trackEvent(o.LookupUserNotFound),{authenticationState:"not_found",profileData:void 0}}catch(t){throw new i("ERROR","Fastlane SDK: An error occurred during the authentication flow.",{cause:t})}}async getComponentConfiguration(t){if(!t)throw new i("IMPLEMENTATION_ERROR","FastlaneSDK: you must pass the authentication result to get the component configuration");this.analytics.flush();const e="succeeded"===t.authenticationState,n=!!t.profileData?.card,a=!!this.latestShopperDetails?.email;return e&&n&&a?this.createFastlaneComponentConfiguration(t):this.createCardComponentConfiguration()}async showShippingAddressSelector(){if(!this.fastlaneSdk)throw new i("IMPLEMENTATION_ERROR","showShippingAddressSelector(): Fastlane SDK is not initialized");this.trackEvent(o.AddressSelectorClicked);try{const t=await this.fastlaneSdk.profile.showShippingAddressSelector();return t.selectionChanged&&this.trackEvent(o.AddressChanged),this.trackEvent(o.AddressSelectorClosed),t}catch(t){throw new i("ERROR","Fastlane SDK: An error occurred when showing the shipping address selector",{cause:t})}}async mountWatermark(t,e={includeAdditionalInfo:!0}){if(!this.fastlaneSdk)throw new i("IMPLEMENTATION_ERROR","mountWatermark(): Fastlane SDK is not initialized");try{(await this.fastlaneSdk.FastlaneWatermarkComponent(e)).render(t)}catch(t){throw new i("ERROR","Fastlane SDK: An error occurred when rendering the watermark",{cause:t})}}requestClientToken(){return e(this.checkoutShopperURL,this.clientKey)}async fetchSdk(t,e){const n=new URL("https://www.paypal.com/sdk/js");n.searchParams.set("client-id",e),n.searchParams.set("components","buttons,fastlane");const i=new a({src:n.href,component:"fastlane",dataAttributes:{sdkClientToken:t},analytics:this.analytics});await i.load()}async fetchSessionIdAsync(){try{const{sessionId:t}=await this.fastlaneSdk.identity.getSession();this.fastlaneSessionId=t}catch(t){console.warn("Fastlane SDK: Failed to fetch session ID",t)}}async fetchConsentDetails(){try{const t=await this.fastlaneSdk.ConsentComponent();return await t.getRenderState()}catch(t){throw new i("ERROR","fetchConsentDetails(): failed to fetch consent details",{cause:t})}}async initializeFastlaneInstance(){try{this.fastlaneSdk=await window.paypal.Fastlane({intendedExperience:"externalProcessorCustomConsent",...this.forceConsentDetails&&{metadata:{geoLocOverride:"US"}}}),this.fastlaneSdk.setLocale(this.fastlaneLocale),this.fetchSessionIdAsync()}catch(t){throw new i("ERROR","Fastlane SDK: Failed to initialize fastlane using the window.paypal.Fastlane constructor",{cause:t})}}createFastlaneComponentConfiguration(t){return{paymentType:"fastlane",configuration:{fastlaneSessionId:this.fastlaneSessionId,email:this.latestShopperDetails.email,tokenId:t.profileData.card.id,lastFour:t.profileData.card.paymentSource.card.lastDigits,brand:t.profileData.card.paymentSource.card.brand.toLowerCase()}}}async createCardComponentConfiguration(){const t=await this.fetchConsentDetails(),e={};return t&&(e.fastlaneConfiguration={fastlaneSessionId:this.fastlaneSessionId,...t}),{paymentType:"card",configuration:e}}trackEvent(t){const e=new r({type:t,component:"fastlane"});this.analytics.sendAnalytics(e)}getOtpAnalyticsSubtype(t){switch(t){case"succeeded":return o.OtpSucceeded;case"canceled":return o.OtpCanceled;case"failed":default:return o.OtpFailed;case"not_found":return o.LookupUserNotFound}}constructor(e){if(h(this,"clientKey",void 0),h(this,"checkoutShopperURL",void 0),h(this,"fastlaneLocale",void 0),h(this,"forceConsentDetails",void 0),h(this,"analytics",void 0),h(this,"fastlaneSdk",void 0),h(this,"latestShopperDetails",void 0),h(this,"fastlaneSessionId",void 0),h(this,"handlePageVisibilityChanges",()=>{"hidden"===document.visibilityState&&this.analytics.flush()}),!e?.environment)throw new i("IMPLEMENTATION_ERROR","FastlaneSDK: 'environment' property is required");if(!e?.clientKey)throw new i("IMPLEMENTATION_ERROR","FastlaneSDK: 'clientKey' property is required");e.forceConsentDetails&&e.environment.includes("live")&&console.warn("Fastlane SDK: 'forceConsentDetails' should not be used on 'live' environment");const{apiUrl:a,analyticsUrl:o}=t(e.environment);this.checkoutShopperURL=a,this.clientKey=e.clientKey,this.forceConsentDetails=e.forceConsentDetails||!1,this.fastlaneLocale=n(e.locale||"en-US"),this.analytics=new s({eventQueue:new c,service:new l({analyticsContext:o,clientKey:this.clientKey}),enabled:e.analytics?.enabled}),document.addEventListener("visibilitychange",this.handlePageVisibilityChanges)}}export{d as default};
|
|
2
2
|
//# sourceMappingURL=FastlaneSDK.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FastlaneSDK.js","sources":["../../../../src/components/PayPalFastlane/FastlaneSDK.ts"],"sourcesContent":["import { resolveEnvironments } from '../../core/Environment';\nimport type { FastlaneTokenData } from './services/request-fastlane-token';\nimport requestFastlaneToken from './services/request-fastlane-token';\nimport { convertAdyenLocaleToFastlaneLocale } from './utils/convert-locale';\nimport Script from '../../utils/Script';\nimport AdyenCheckoutError from '../../core/Errors/AdyenCheckoutError';\nimport {\n FastlaneAuthenticatedCustomerResult,\n FastlaneConsentRenderState,\n FastlanePaymentMethodConfiguration,\n FastlaneSDKConfiguration,\n FastlaneShippingAddressSelectorResult,\n FastlaneSignupConfiguration,\n FastlaneWindowInstance\n} from './types';\n\nimport Analytics from '../../core/Analytics';\nimport { AnalyticsInfoEvent, InfoEventType } from '../../core/Analytics/AnalyticsInfoEvent';\nimport type { AnalyticsModule } from '../../types/global-types';\n\nclass FastlaneSDK {\n private readonly clientKey: string;\n private readonly checkoutShopperURL: string;\n private readonly fastlaneLocale: string;\n private readonly forceConsentDetails: boolean;\n\n private readonly analytics: AnalyticsModule;\n\n private fastlaneSdk?: FastlaneWindowInstance;\n private latestShopperDetails?: { email: string; customerId: string };\n private fastlaneSessionId?: string;\n\n constructor(configuration: FastlaneSDKConfiguration) {\n if (!configuration?.environment) throw new AdyenCheckoutError('IMPLEMENTATION_ERROR', \"FastlaneSDK: 'environment' property is required\");\n if (!configuration?.clientKey) throw new AdyenCheckoutError('IMPLEMENTATION_ERROR', \"FastlaneSDK: 'clientKey' property is required\");\n\n if (configuration.forceConsentDetails && configuration.environment.includes('live'))\n console.warn(\"Fastlane SDK: 'forceConsentDetails' should not be used on 'live' environment\");\n\n const { apiUrl, analyticsUrl } = resolveEnvironments(configuration.environment);\n\n this.checkoutShopperURL = apiUrl;\n this.clientKey = configuration.clientKey;\n this.forceConsentDetails = configuration.forceConsentDetails || false;\n this.fastlaneLocale = convertAdyenLocaleToFastlaneLocale(configuration.locale || 'en-US');\n\n this.analytics = Analytics({\n analytics: configuration.analytics,\n locale: configuration.locale || 'en-US',\n analyticsContext: analyticsUrl,\n clientKey: this.clientKey\n });\n\n document.addEventListener('visibilitychange', this.handlePageVisibilityChanges);\n }\n\n /**\n * Initializes the Fastlane SDK\n */\n public async initialize(): Promise<FastlaneSDK> {\n void this.analytics.setUp({\n checkoutStage: 'precheckout'\n });\n\n const tokenData = await this.requestClientToken();\n await this.fetchSdk(tokenData.value, tokenData.clientId);\n await this.initializeFastlaneInstance();\n this.trackEvent(InfoEventType.Initialized);\n return this;\n }\n\n public destroy(): void {\n document.removeEventListener('visibilitychange', this.handlePageVisibilityChanges);\n this.analytics.flush();\n }\n\n /**\n * Triggers the authentication for Fastlane using shopper's email.\n * If shopper is recognized, the OTP flow is initialized.\n *\n * @param email\n */\n public async authenticate(email: string): Promise<FastlaneAuthenticatedCustomerResult> {\n if (!this.fastlaneSdk) {\n throw new AdyenCheckoutError('IMPLEMENTATION_ERROR', 'authenticate(): Fastlane SDK is not initialized');\n }\n\n this.trackEvent(InfoEventType.LookupStarted);\n\n try {\n const { customerContextId } = await this.fastlaneSdk.identity.lookupCustomerByEmail(email);\n\n if (customerContextId) {\n this.latestShopperDetails = { email, customerId: customerContextId };\n this.trackEvent(InfoEventType.OtpStarted);\n\n const authResult = await this.fastlaneSdk.identity.triggerAuthenticationFlow(customerContextId);\n this.trackEvent(this.getOtpAnalyticsSubtype(authResult.authenticationState));\n\n return authResult;\n }\n\n this.trackEvent(InfoEventType.LookupUserNotFound);\n return {\n authenticationState: 'not_found',\n profileData: undefined\n };\n } catch (error: unknown) {\n throw new AdyenCheckoutError('ERROR', 'Fastlane SDK: An error occurred during the authentication flow.', { cause: error });\n }\n }\n\n /**\n * Creates the Component configuration based on the Fastlane authentication result.\n *\n * In case the shopper authenticated successfully, it returns config to be used in the Fastlane component\n * Otherwise, it returns the configuration to be used in the Card component\n *\n * @param authResult\n */\n public async getComponentConfiguration(authResult: FastlaneAuthenticatedCustomerResult): Promise<FastlanePaymentMethodConfiguration> {\n if (!authResult) {\n throw new AdyenCheckoutError(\n 'IMPLEMENTATION_ERROR',\n 'FastlaneSDK: you must pass the authentication result to get the component configuration'\n );\n }\n\n this.analytics.flush();\n\n const isAuthSuccess = authResult.authenticationState === 'succeeded';\n const hasCardData = !!authResult.profileData?.card;\n const hasShopperDetails = !!this.latestShopperDetails?.email;\n\n if (isAuthSuccess && hasCardData && hasShopperDetails) {\n return this.createFastlaneComponentConfiguration(authResult);\n }\n\n return this.createCardComponentConfiguration();\n }\n\n /**\n * Displays the Fastlane Shipping Address selector UI\n */\n public async showShippingAddressSelector(): Promise<FastlaneShippingAddressSelectorResult> {\n if (!this.fastlaneSdk) {\n throw new AdyenCheckoutError('IMPLEMENTATION_ERROR', 'showShippingAddressSelector(): Fastlane SDK is not initialized');\n }\n\n this.trackEvent(InfoEventType.AddressSelectorClicked);\n\n try {\n const addressSelectorResult = await this.fastlaneSdk.profile.showShippingAddressSelector();\n if (addressSelectorResult.selectionChanged) {\n this.trackEvent(InfoEventType.AddressChanged);\n }\n this.trackEvent(InfoEventType.AddressSelectorClosed);\n\n return addressSelectorResult;\n } catch (error: unknown) {\n throw new AdyenCheckoutError('ERROR', 'Fastlane SDK: An error occurred when showing the shipping address selector', { cause: error });\n }\n }\n\n /**\n * Render the \"Fastlane by PayPal\" logo in the specified HTML container\n */\n public async mountWatermark(container: HTMLElement | string, options = { includeAdditionalInfo: true }): Promise<void> {\n if (!this.fastlaneSdk) {\n throw new AdyenCheckoutError('IMPLEMENTATION_ERROR', 'mountWatermark(): Fastlane SDK is not initialized');\n }\n\n try {\n const component = await this.fastlaneSdk.FastlaneWatermarkComponent(options);\n component.render(container);\n } catch (error: unknown) {\n throw new AdyenCheckoutError('ERROR', 'Fastlane SDK: An error occurred when rendering the watermark', { cause: error });\n }\n }\n\n private requestClientToken(): Promise<FastlaneTokenData> {\n return requestFastlaneToken(this.checkoutShopperURL, this.clientKey);\n }\n\n private async fetchSdk(clientToken: string, clientId: string): Promise<void> {\n const sdkUrl = new URL('https://www.paypal.com/sdk/js');\n sdkUrl.searchParams.set('client-id', clientId);\n sdkUrl.searchParams.set('components', 'buttons,fastlane');\n\n const script = new Script({\n src: sdkUrl.href,\n component: 'fastlane',\n dataAttributes: { sdkClientToken: clientToken },\n analytics: this.analytics\n });\n\n await script.load();\n }\n\n /**\n * Fetch the fastlane session ID used internally by PayPal for Network Token Usage event\n * This ID is not critical for the payment processing part\n *\n * @private\n */\n private async fetchSessionIdAsync(): Promise<void> {\n try {\n const { sessionId } = await this.fastlaneSdk.identity.getSession();\n this.fastlaneSessionId = sessionId;\n } catch (error) {\n console.warn('Fastlane SDK: Failed to fetch session ID', error);\n }\n }\n\n /**\n * Fetch object containing that details that will be used to display the sign-up UI\n * inside the card component\n * @private\n */\n private async fetchConsentDetails(): Promise<FastlaneConsentRenderState> {\n try {\n const consentComponent = await this.fastlaneSdk.ConsentComponent();\n return await consentComponent.getRenderState();\n } catch (error) {\n throw new AdyenCheckoutError('ERROR', 'fetchConsentDetails(): failed to fetch consent details', { cause: error });\n }\n }\n\n private async initializeFastlaneInstance(): Promise<void> {\n try {\n this.fastlaneSdk = await window.paypal.Fastlane({\n intendedExperience: 'externalProcessorCustomConsent',\n ...(this.forceConsentDetails && {\n metadata: {\n geoLocOverride: 'US'\n }\n })\n });\n this.fastlaneSdk.setLocale(this.fastlaneLocale);\n\n void this.fetchSessionIdAsync();\n } catch (error) {\n throw new AdyenCheckoutError('ERROR', 'Fastlane SDK: Failed to initialize fastlane using the window.paypal.Fastlane constructor', {\n cause: error\n });\n }\n }\n\n /**\n * Creates the configuration for the Fastlane component\n *\n * @param authResult\n * @private\n */\n private createFastlaneComponentConfiguration(authResult: FastlaneAuthenticatedCustomerResult): FastlanePaymentMethodConfiguration {\n return {\n paymentType: 'fastlane',\n configuration: {\n fastlaneSessionId: this.fastlaneSessionId,\n email: this.latestShopperDetails.email,\n tokenId: authResult.profileData.card.id,\n lastFour: authResult.profileData.card.paymentSource.card.lastDigits,\n brand: authResult.profileData.card.paymentSource.card.brand.toLowerCase()\n }\n };\n }\n\n /**\n * Creates the configuration for the Card component, including Fastlane sign-up details if available\n *\n * @private\n */\n private async createCardComponentConfiguration(): Promise<FastlanePaymentMethodConfiguration> {\n const consentDetails = await this.fetchConsentDetails();\n const configuration: { fastlaneConfiguration?: FastlaneSignupConfiguration } = {};\n\n if (consentDetails) {\n configuration.fastlaneConfiguration = {\n fastlaneSessionId: this.fastlaneSessionId,\n ...consentDetails\n };\n }\n\n return {\n paymentType: 'card',\n configuration\n };\n }\n\n private trackEvent(eventType: InfoEventType): void {\n const event = new AnalyticsInfoEvent({ type: eventType, component: 'fastlane' });\n this.analytics.sendAnalytics(event);\n }\n\n private handlePageVisibilityChanges = (): void => {\n if (document.visibilityState === 'hidden') {\n this.analytics.flush();\n }\n };\n\n /**\n * Returns the Info event subtype based on the 'authenticationState'\n * @param authenticationState\n * @private\n */\n private getOtpAnalyticsSubtype(authenticationState: FastlaneAuthenticatedCustomerResult['authenticationState']) {\n switch (authenticationState) {\n case 'succeeded':\n return InfoEventType.OtpSucceeded;\n case 'canceled':\n return InfoEventType.OtpCanceled;\n case 'failed':\n return InfoEventType.OtpFailed;\n case 'not_found':\n return InfoEventType.LookupUserNotFound;\n default:\n return InfoEventType.OtpFailed;\n }\n }\n}\n\nexport default FastlaneSDK;\n"],"names":["FastlaneSDK","initialize","this","analytics","setUp","checkoutStage","tokenData","requestClientToken","fetchSdk","value","clientId","initializeFastlaneInstance","trackEvent","InfoEventType","Initialized","destroy","document","removeEventListener","handlePageVisibilityChanges","flush","authenticate","email","fastlaneSdk","AdyenCheckoutError","LookupStarted","customerContextId","identity","lookupCustomerByEmail","latestShopperDetails","customerId","OtpStarted","authResult","triggerAuthenticationFlow","getOtpAnalyticsSubtype","authenticationState","LookupUserNotFound","profileData","undefined","error","cause","getComponentConfiguration","isAuthSuccess","hasCardData","card","hasShopperDetails","createFastlaneComponentConfiguration","createCardComponentConfiguration","showShippingAddressSelector","AddressSelectorClicked","addressSelectorResult","profile","selectionChanged","AddressChanged","AddressSelectorClosed","mountWatermark","container","options","includeAdditionalInfo","FastlaneWatermarkComponent","render","requestFastlaneToken","checkoutShopperURL","clientKey","clientToken","sdkUrl","URL","searchParams","set","script","Script","src","href","component","dataAttributes","sdkClientToken","load","fetchSessionIdAsync","sessionId","getSession","fastlaneSessionId","console","warn","fetchConsentDetails","consentComponent","ConsentComponent","getRenderState","window","paypal","Fastlane","intendedExperience","forceConsentDetails","metadata","geoLocOverride","setLocale","fastlaneLocale","paymentType","configuration","tokenId","id","lastFour","paymentSource","lastDigits","brand","toLowerCase","consentDetails","fastlaneConfiguration","eventType","event","AnalyticsInfoEvent","type","sendAnalytics","OtpSucceeded","OtpCanceled","OtpFailed","constructor","_define_property","visibilityState","environment","includes","apiUrl","analyticsUrl","resolveEnvironments","convertAdyenLocaleToFastlaneLocale","locale","Analytics","analyticsContext","addEventListener"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FastlaneSDK.js","sources":["../../../../src/components/PayPalFastlane/FastlaneSDK.ts"],"sourcesContent":["import { resolveEnvironments } from '../../core/Environment';\nimport type { FastlaneTokenData } from './services/request-fastlane-token';\nimport requestFastlaneToken from './services/request-fastlane-token';\nimport { convertAdyenLocaleToFastlaneLocale } from './utils/convert-locale';\nimport Script from '../../utils/Script';\nimport AdyenCheckoutError from '../../core/Errors/AdyenCheckoutError';\nimport {\n FastlaneAuthenticatedCustomerResult,\n FastlaneConsentRenderState,\n FastlanePaymentMethodConfiguration,\n FastlaneSDKConfiguration,\n FastlaneShippingAddressSelectorResult,\n FastlaneSignupConfiguration,\n FastlaneWindowInstance\n} from './types';\n\nimport Analytics from '../../core/Analytics';\nimport { AnalyticsInfoEvent, InfoEventType } from '../../core/Analytics/events/AnalyticsInfoEvent';\nimport type { IAnalytics } from '../../core/Analytics/Analytics';\nimport { AnalyticsEventQueue } from '../../core/Analytics/AnalyticsEventQueue';\nimport { AnalyticsService } from '../../core/Analytics/AnalyticsService';\n\nclass FastlaneSDK {\n private readonly clientKey: string;\n private readonly checkoutShopperURL: string;\n private readonly fastlaneLocale: string;\n private readonly forceConsentDetails: boolean;\n\n private readonly analytics: IAnalytics;\n\n private fastlaneSdk?: FastlaneWindowInstance;\n private latestShopperDetails?: { email: string; customerId: string };\n private fastlaneSessionId?: string;\n\n constructor(configuration: FastlaneSDKConfiguration) {\n if (!configuration?.environment) throw new AdyenCheckoutError('IMPLEMENTATION_ERROR', \"FastlaneSDK: 'environment' property is required\");\n if (!configuration?.clientKey) throw new AdyenCheckoutError('IMPLEMENTATION_ERROR', \"FastlaneSDK: 'clientKey' property is required\");\n\n if (configuration.forceConsentDetails && configuration.environment.includes('live'))\n console.warn(\"Fastlane SDK: 'forceConsentDetails' should not be used on 'live' environment\");\n\n const { apiUrl, analyticsUrl } = resolveEnvironments(configuration.environment);\n\n this.checkoutShopperURL = apiUrl;\n this.clientKey = configuration.clientKey;\n this.forceConsentDetails = configuration.forceConsentDetails || false;\n this.fastlaneLocale = convertAdyenLocaleToFastlaneLocale(configuration.locale || 'en-US');\n\n this.analytics = new Analytics({\n eventQueue: new AnalyticsEventQueue(),\n service: new AnalyticsService({\n analyticsContext: analyticsUrl,\n clientKey: this.clientKey\n }),\n enabled: configuration.analytics?.enabled\n });\n\n document.addEventListener('visibilitychange', this.handlePageVisibilityChanges);\n }\n\n /**\n * Initializes the Fastlane SDK\n */\n public async initialize(): Promise<FastlaneSDK> {\n void this.analytics.setUp({\n checkoutStage: 'precheckout'\n });\n\n const tokenData = await this.requestClientToken();\n await this.fetchSdk(tokenData.value, tokenData.clientId);\n await this.initializeFastlaneInstance();\n this.trackEvent(InfoEventType.Initialized);\n return this;\n }\n\n public destroy(): void {\n document.removeEventListener('visibilitychange', this.handlePageVisibilityChanges);\n this.analytics.flush();\n }\n\n /**\n * Triggers the authentication for Fastlane using shopper's email.\n * If shopper is recognized, the OTP flow is initialized.\n *\n * @param email\n */\n public async authenticate(email: string): Promise<FastlaneAuthenticatedCustomerResult> {\n if (!this.fastlaneSdk) {\n throw new AdyenCheckoutError('IMPLEMENTATION_ERROR', 'authenticate(): Fastlane SDK is not initialized');\n }\n\n this.trackEvent(InfoEventType.LookupStarted);\n\n try {\n const { customerContextId } = await this.fastlaneSdk.identity.lookupCustomerByEmail(email);\n\n if (customerContextId) {\n this.latestShopperDetails = { email, customerId: customerContextId };\n this.trackEvent(InfoEventType.OtpStarted);\n\n const authResult = await this.fastlaneSdk.identity.triggerAuthenticationFlow(customerContextId);\n this.trackEvent(this.getOtpAnalyticsSubtype(authResult.authenticationState));\n\n return authResult;\n }\n\n this.trackEvent(InfoEventType.LookupUserNotFound);\n return {\n authenticationState: 'not_found',\n profileData: undefined\n };\n } catch (error: unknown) {\n throw new AdyenCheckoutError('ERROR', 'Fastlane SDK: An error occurred during the authentication flow.', { cause: error });\n }\n }\n\n /**\n * Creates the Component configuration based on the Fastlane authentication result.\n *\n * In case the shopper authenticated successfully, it returns config to be used in the Fastlane component\n * Otherwise, it returns the configuration to be used in the Card component\n *\n * @param authResult\n */\n public async getComponentConfiguration(authResult: FastlaneAuthenticatedCustomerResult): Promise<FastlanePaymentMethodConfiguration> {\n if (!authResult) {\n throw new AdyenCheckoutError(\n 'IMPLEMENTATION_ERROR',\n 'FastlaneSDK: you must pass the authentication result to get the component configuration'\n );\n }\n\n this.analytics.flush();\n\n const isAuthSuccess = authResult.authenticationState === 'succeeded';\n const hasCardData = !!authResult.profileData?.card;\n const hasShopperDetails = !!this.latestShopperDetails?.email;\n\n if (isAuthSuccess && hasCardData && hasShopperDetails) {\n return this.createFastlaneComponentConfiguration(authResult);\n }\n\n return this.createCardComponentConfiguration();\n }\n\n /**\n * Displays the Fastlane Shipping Address selector UI\n */\n public async showShippingAddressSelector(): Promise<FastlaneShippingAddressSelectorResult> {\n if (!this.fastlaneSdk) {\n throw new AdyenCheckoutError('IMPLEMENTATION_ERROR', 'showShippingAddressSelector(): Fastlane SDK is not initialized');\n }\n\n this.trackEvent(InfoEventType.AddressSelectorClicked);\n\n try {\n const addressSelectorResult = await this.fastlaneSdk.profile.showShippingAddressSelector();\n if (addressSelectorResult.selectionChanged) {\n this.trackEvent(InfoEventType.AddressChanged);\n }\n this.trackEvent(InfoEventType.AddressSelectorClosed);\n\n return addressSelectorResult;\n } catch (error: unknown) {\n throw new AdyenCheckoutError('ERROR', 'Fastlane SDK: An error occurred when showing the shipping address selector', { cause: error });\n }\n }\n\n /**\n * Render the \"Fastlane by PayPal\" logo in the specified HTML container\n */\n public async mountWatermark(container: HTMLElement | string, options = { includeAdditionalInfo: true }): Promise<void> {\n if (!this.fastlaneSdk) {\n throw new AdyenCheckoutError('IMPLEMENTATION_ERROR', 'mountWatermark(): Fastlane SDK is not initialized');\n }\n\n try {\n const component = await this.fastlaneSdk.FastlaneWatermarkComponent(options);\n component.render(container);\n } catch (error: unknown) {\n throw new AdyenCheckoutError('ERROR', 'Fastlane SDK: An error occurred when rendering the watermark', { cause: error });\n }\n }\n\n private requestClientToken(): Promise<FastlaneTokenData> {\n return requestFastlaneToken(this.checkoutShopperURL, this.clientKey);\n }\n\n private async fetchSdk(clientToken: string, clientId: string): Promise<void> {\n const sdkUrl = new URL('https://www.paypal.com/sdk/js');\n sdkUrl.searchParams.set('client-id', clientId);\n sdkUrl.searchParams.set('components', 'buttons,fastlane');\n\n const script = new Script({\n src: sdkUrl.href,\n component: 'fastlane',\n dataAttributes: { sdkClientToken: clientToken },\n analytics: this.analytics\n });\n\n await script.load();\n }\n\n /**\n * Fetch the fastlane session ID used internally by PayPal for Network Token Usage event\n * This ID is not critical for the payment processing part\n *\n * @private\n */\n private async fetchSessionIdAsync(): Promise<void> {\n try {\n const { sessionId } = await this.fastlaneSdk.identity.getSession();\n this.fastlaneSessionId = sessionId;\n } catch (error) {\n console.warn('Fastlane SDK: Failed to fetch session ID', error);\n }\n }\n\n /**\n * Fetch object containing that details that will be used to display the sign-up UI\n * inside the card component\n * @private\n */\n private async fetchConsentDetails(): Promise<FastlaneConsentRenderState> {\n try {\n const consentComponent = await this.fastlaneSdk.ConsentComponent();\n return await consentComponent.getRenderState();\n } catch (error) {\n throw new AdyenCheckoutError('ERROR', 'fetchConsentDetails(): failed to fetch consent details', { cause: error });\n }\n }\n\n private async initializeFastlaneInstance(): Promise<void> {\n try {\n this.fastlaneSdk = await window.paypal.Fastlane({\n intendedExperience: 'externalProcessorCustomConsent',\n ...(this.forceConsentDetails && {\n metadata: {\n geoLocOverride: 'US'\n }\n })\n });\n this.fastlaneSdk.setLocale(this.fastlaneLocale);\n\n void this.fetchSessionIdAsync();\n } catch (error) {\n throw new AdyenCheckoutError('ERROR', 'Fastlane SDK: Failed to initialize fastlane using the window.paypal.Fastlane constructor', {\n cause: error\n });\n }\n }\n\n /**\n * Creates the configuration for the Fastlane component\n *\n * @param authResult\n * @private\n */\n private createFastlaneComponentConfiguration(authResult: FastlaneAuthenticatedCustomerResult): FastlanePaymentMethodConfiguration {\n return {\n paymentType: 'fastlane',\n configuration: {\n fastlaneSessionId: this.fastlaneSessionId,\n email: this.latestShopperDetails.email,\n tokenId: authResult.profileData.card.id,\n lastFour: authResult.profileData.card.paymentSource.card.lastDigits,\n brand: authResult.profileData.card.paymentSource.card.brand.toLowerCase()\n }\n };\n }\n\n /**\n * Creates the configuration for the Card component, including Fastlane sign-up details if available\n *\n * @private\n */\n private async createCardComponentConfiguration(): Promise<FastlanePaymentMethodConfiguration> {\n const consentDetails = await this.fetchConsentDetails();\n const configuration: { fastlaneConfiguration?: FastlaneSignupConfiguration } = {};\n\n if (consentDetails) {\n configuration.fastlaneConfiguration = {\n fastlaneSessionId: this.fastlaneSessionId,\n ...consentDetails\n };\n }\n\n return {\n paymentType: 'card',\n configuration\n };\n }\n\n private trackEvent(eventType: InfoEventType): void {\n const event = new AnalyticsInfoEvent({ type: eventType, component: 'fastlane' });\n this.analytics.sendAnalytics(event);\n }\n\n private handlePageVisibilityChanges = (): void => {\n if (document.visibilityState === 'hidden') {\n this.analytics.flush();\n }\n };\n\n /**\n * Returns the Info event subtype based on the 'authenticationState'\n * @param authenticationState\n * @private\n */\n private getOtpAnalyticsSubtype(authenticationState: FastlaneAuthenticatedCustomerResult['authenticationState']) {\n switch (authenticationState) {\n case 'succeeded':\n return InfoEventType.OtpSucceeded;\n case 'canceled':\n return InfoEventType.OtpCanceled;\n case 'failed':\n return InfoEventType.OtpFailed;\n case 'not_found':\n return InfoEventType.LookupUserNotFound;\n default:\n return InfoEventType.OtpFailed;\n }\n }\n}\n\nexport default FastlaneSDK;\n"],"names":["FastlaneSDK","initialize","this","analytics","setUp","checkoutStage","tokenData","requestClientToken","fetchSdk","value","clientId","initializeFastlaneInstance","trackEvent","InfoEventType","Initialized","destroy","document","removeEventListener","handlePageVisibilityChanges","flush","authenticate","email","fastlaneSdk","AdyenCheckoutError","LookupStarted","customerContextId","identity","lookupCustomerByEmail","latestShopperDetails","customerId","OtpStarted","authResult","triggerAuthenticationFlow","getOtpAnalyticsSubtype","authenticationState","LookupUserNotFound","profileData","undefined","error","cause","getComponentConfiguration","isAuthSuccess","hasCardData","card","hasShopperDetails","createFastlaneComponentConfiguration","createCardComponentConfiguration","showShippingAddressSelector","AddressSelectorClicked","addressSelectorResult","profile","selectionChanged","AddressChanged","AddressSelectorClosed","mountWatermark","container","options","includeAdditionalInfo","FastlaneWatermarkComponent","render","requestFastlaneToken","checkoutShopperURL","clientKey","clientToken","sdkUrl","URL","searchParams","set","script","Script","src","href","component","dataAttributes","sdkClientToken","load","fetchSessionIdAsync","sessionId","getSession","fastlaneSessionId","console","warn","fetchConsentDetails","consentComponent","ConsentComponent","getRenderState","window","paypal","Fastlane","intendedExperience","forceConsentDetails","metadata","geoLocOverride","setLocale","fastlaneLocale","paymentType","configuration","tokenId","id","lastFour","paymentSource","lastDigits","brand","toLowerCase","consentDetails","fastlaneConfiguration","eventType","event","AnalyticsInfoEvent","type","sendAnalytics","OtpSucceeded","OtpCanceled","OtpFailed","constructor","_define_property","visibilityState","environment","includes","apiUrl","analyticsUrl","resolveEnvironments","convertAdyenLocaleToFastlaneLocale","locale","Analytics","eventQueue","AnalyticsEventQueue","service","AnalyticsService","analyticsContext","enabled","addEventListener"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{createElement as t}from"../../external/preact/dist/preact.js";import{UIElement as
|
|
1
|
+
import{createElement as t,Fragment as e}from"../../external/preact/dist/preact.js";import{UIElement as o}from"../internal/UIElement/UIElement.js";import{Await as s}from"../internal/Await/Await.js";import r from"../../core/Errors/SRPanelProvider.js";import{TxVariants as a}from"../tx-variants.js";import{PayToIdentifierEnum as n}from"./components/IdentifierSelector.js";import p from"./components/PayToComponent.js";import{PayToInstructions as i}from"./components/PayToInstructions.js";import m from"./components/MandateSummary.js";import d from"../internal/PayButton/PayButton.js";import{payAmountLabel as h}from"../internal/PayButton/utils.js";function l(t,e,o){return e in t?Object.defineProperty(t,e,{value:o,enumerable:!0,configurable:!0,writable:!0}):t[e]=o,t}const u=6e4,c=1e4,y=!1,f=t=>{if("bsb-option"===t.selectedInput)return`${t.bsb}-${t.bankAccountNumber}`;if("payid-option"===t.selectedInput)switch(t.selectedIdentifier){case n.email:return t.email;case n.abn:return t.abn;case n.orgid:return t.orgid;case n.phone:return`${t.phonePrefix}-${t.phoneNumber}`}};class P extends o{formatProps(t){return{...t,data:{...t.data,phonePrefix:"+61"}}}formatData(){return this.props.storedPaymentMethodId?{paymentMethod:{type:P.type,storedPaymentMethodId:this.props.storedPaymentMethodId}}:{paymentMethod:{type:P.type,shopperAccountIdentifier:f(this.state.data)},shopperName:{firstName:this.state.data.firstName,lastName:this.state.data.lastName}}}get isValid(){return!!this.props.storedPaymentMethodId||!!this.state.isValid}get displayName(){return this.props.storedPaymentMethodId&&this.props.label?this.props.label:this.props.name}get additionalInfo(){return this.props.storedPaymentMethodId?this.props.name:""}componentToRender(){return this.props.storedPaymentMethodId?t(e,null,this.props.showPayButton&&t(d,{...this.props,classNameModifiers:["standalone"],amount:this.props.amount,label:h(this.props.i18n,this.props.amount),onClick:this.submit})):this.props.paymentData?t(r,{srPanel:this.props.modules.srPanel},t(s,{amount:this.props.amount,showAmount:!0,instructions:i,clientKey:this.props.clientKey,paymentData:this.props.paymentData,onError:this.props.onError,onComplete:this.onComplete,brandLogo:this.icon,type:this.constructor.type,messageText:this.props.i18n.get("payto.confirmPayment"),awaitText:this.props.i18n.get("payto.await.waitForConfirmation"),showCountdownTimer:y,throttleTime:u,throttleInterval:c,onActionHandled:this.onActionHandled,endSlot:()=>!!this.props.mandate&&t(m,{mandate:this.props.mandate,payee:this.props.payee,currencyCode:this.props.amount.currency})})):t(p,{data:this.props.data,placeholders:this.props.placeholders,setComponentRef:this.setComponentRef,onChange:this.setState,payButton:this.payButton,showPayButton:this.props.showPayButton})}}l(P,"type",a.payto),l(P,"defaultProps",{placeholders:{}});export{P as PayToElement,P as default};
|
|
2
2
|
//# sourceMappingURL=PayTo.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PayTo.js","sources":["../../../../src/components/PayTo/PayTo.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport {
|
|
1
|
+
{"version":3,"file":"PayTo.js","sources":["../../../../src/components/PayTo/PayTo.tsx"],"sourcesContent":["import { Fragment, h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport { Await } from '../../components/internal/Await';\nimport SRPanelProvider from '../../core/Errors/SRPanelProvider';\nimport { TxVariants } from '../tx-variants';\nimport { PayToIdentifierEnum } from './components/IdentifierSelector';\nimport PayToComponent from './components/PayToComponent';\nimport { PayToInstructions } from './components/PayToInstructions';\nimport MandateSummary from './components/MandateSummary';\nimport { PayToConfiguration, PayToData } from './types';\nimport PayButton, { payAmountLabel } from '../internal/PayButton';\n\n/*\nAwait Config (previously in its own file)\n */\nconst COUNTDOWN_MINUTES = 15; // min\nconst THROTTLE_TIME = 60000; // ms\nconst THROTTLE_INTERVAL = 10000; // ms\n\nconst config = {\n COUNTDOWN_MINUTES,\n THROTTLE_TIME,\n THROTTLE_INTERVAL,\n showCountdownTimer: false\n};\n\nconst getAccountIdentifier = (state: PayToData) => {\n // if it's BSB Input type merge bankAccount with BSB\n if (state.selectedInput === 'bsb-option') {\n return `${state.bsb}-${state.bankAccountNumber}`;\n } else if (state.selectedInput === 'payid-option') {\n // otherwise use the option in the dropdown\n switch (state.selectedIdentifier) {\n case PayToIdentifierEnum.email:\n return state.email;\n case PayToIdentifierEnum.abn:\n return state.abn;\n case PayToIdentifierEnum.orgid:\n return state.orgid;\n case PayToIdentifierEnum.phone:\n // merge the phone prefix and number - see comment in ticket\n return `${state.phonePrefix}-${state.phoneNumber}`;\n }\n }\n};\n/**\n *\n */\nexport class PayToElement extends UIElement<PayToConfiguration> {\n public static readonly type = TxVariants.payto;\n\n protected static defaultProps = {\n placeholders: {}\n };\n\n formatProps(props: PayToConfiguration) {\n return {\n ...props,\n data: {\n ...props.data,\n phonePrefix: '+61' // hardcode +61\n }\n };\n }\n\n /**\n * Formats the component data output\n */\n formatData() {\n if (this.props.storedPaymentMethodId) {\n return {\n paymentMethod: {\n type: PayToElement.type,\n storedPaymentMethodId: this.props.storedPaymentMethodId\n }\n };\n }\n\n return {\n paymentMethod: {\n type: PayToElement.type,\n shopperAccountIdentifier: getAccountIdentifier(this.state.data)\n },\n shopperName: {\n firstName: this.state.data.firstName,\n lastName: this.state.data.lastName\n }\n };\n }\n\n get isValid(): boolean {\n if (this.props.storedPaymentMethodId) {\n return true;\n }\n\n return !!this.state.isValid;\n }\n\n get displayName() {\n if (this.props.storedPaymentMethodId && this.props.label) {\n return this.props.label;\n }\n return this.props.name;\n }\n\n get additionalInfo() {\n return this.props.storedPaymentMethodId ? this.props.name : '';\n }\n\n protected override componentToRender(): h.JSX.Element {\n // Stored\n if (this.props.storedPaymentMethodId) {\n return (\n <Fragment>\n {this.props.showPayButton && (\n <PayButton\n {...this.props}\n classNameModifiers={['standalone']}\n amount={this.props.amount}\n label={payAmountLabel(this.props.i18n, this.props.amount)}\n onClick={this.submit}\n />\n )}\n </Fragment>\n );\n }\n // Await\n if (this.props.paymentData) {\n return (\n <SRPanelProvider srPanel={this.props.modules.srPanel}>\n <Await\n amount={this.props.amount}\n showAmount={true}\n instructions={PayToInstructions}\n clientKey={this.props.clientKey}\n paymentData={this.props.paymentData}\n onError={this.props.onError}\n onComplete={this.onComplete}\n brandLogo={this.icon}\n type={this.constructor['type']}\n messageText={this.props.i18n.get('payto.confirmPayment')}\n awaitText={this.props.i18n.get('payto.await.waitForConfirmation')}\n showCountdownTimer={config.showCountdownTimer}\n throttleTime={config.THROTTLE_TIME}\n throttleInterval={config.THROTTLE_INTERVAL}\n onActionHandled={this.onActionHandled}\n endSlot={() =>\n !!this.props.mandate && (\n <MandateSummary mandate={this.props.mandate} payee={this.props.payee} currencyCode={this.props.amount.currency} />\n )\n }\n />\n </SRPanelProvider>\n );\n }\n // Input\n return (\n <PayToComponent\n data={this.props.data}\n placeholders={this.props.placeholders}\n setComponentRef={this.setComponentRef}\n onChange={this.setState}\n payButton={this.payButton}\n showPayButton={this.props.showPayButton}\n />\n );\n }\n}\n\nexport default PayToElement;\n"],"names":["config","getAccountIdentifier","state","selectedInput","bsb","bankAccountNumber","selectedIdentifier","PayToIdentifierEnum","email","abn","orgid","phone","phonePrefix","phoneNumber","PayToElement","UIElement","formatProps","props","data","formatData","this","storedPaymentMethodId","paymentMethod","type","shopperAccountIdentifier","shopperName","firstName","lastName","isValid","displayName","label","name","additionalInfo","componentToRender","h","Fragment","showPayButton","PayButton","classNameModifiers","amount","payAmountLabel","i18n","onClick","submit","paymentData","SRPanelProvider","srPanel","modules","Await","showAmount","instructions","PayToInstructions","clientKey","onError","onComplete","brandLogo","icon","constructor","messageText","get","awaitText","showCountdownTimer","throttleTime","throttleInterval","onActionHandled","endSlot","mandate","MandateSummary","payee","currencyCode","currency","PayToComponent","placeholders","setComponentRef","onChange","setState","payButton","_define_property","TxVariants","payto","defaultProps"],"mappings":"6vBAgBA,MAGMA,EAHgB,IAGhBA,EAFoB,IAEpBA,GAIkB,EAGlBC,EAAwBC,IAE1B,GAA4B,eAAxBA,EAAMC,cACN,MAAO,GAAGD,EAAME,OAAOF,EAAMG,oBAC1B,GAA4B,iBAAxBH,EAAMC,cAEb,OAAQD,EAAMI,oBACV,KAAKC,EAAoBC,MACrB,OAAON,EAAMM,MACjB,KAAKD,EAAoBE,IACrB,OAAOP,EAAMO,IACjB,KAAKF,EAAoBG,MACrB,OAAOR,EAAMQ,MACjB,KAAKH,EAAoBI,MAErB,MAAO,GAAGT,EAAMU,eAAeV,EAAMW,gBAO9C,MAAMC,UAAqBC,EAO9BC,WAAAA,CAAYC,GACR,MAAO,IACAA,EACHC,KAAM,IACCD,EAAMC,KACTN,YAAa,OAGzB,CAKAO,UAAAA,GACI,OAAIC,KAAKH,MAAMI,sBACJ,CACHC,cAAe,CACXC,KAAMT,EAAaS,KACnBF,sBAAuBD,KAAKH,MAAMI,wBAKvC,CACHC,cAAe,CACXC,KAAMT,EAAaS,KACnBC,yBAA0BvB,EAAqBmB,KAAKlB,MAAMgB,OAE9DO,YAAa,CACTC,UAAWN,KAAKlB,MAAMgB,KAAKQ,UAC3BC,SAAUP,KAAKlB,MAAMgB,KAAKS,UAGtC,CAEA,WAAIC,GACA,QAAIR,KAAKH,MAAMI,yBAIND,KAAKlB,MAAM0B,OACxB,CAEA,eAAIC,GACA,OAAIT,KAAKH,MAAMI,uBAAyBD,KAAKH,MAAMa,MACxCV,KAAKH,MAAMa,MAEfV,KAAKH,MAAMc,IACtB,CAEA,kBAAIC,GACA,OAAOZ,KAAKH,MAAMI,sBAAwBD,KAAKH,MAAMc,KAAO,EAChE,CAEmBE,iBAAAA,GAEf,OAAIb,KAAKH,MAAMI,sBAEPa,EAACC,OACIf,KAAKH,MAAMmB,eACRF,EAACG,EAAAA,IACOjB,KAAKH,MACTqB,mBAAoB,CAAC,cACrBC,OAAQnB,KAAKH,MAAMsB,OACnBT,MAAOU,EAAepB,KAAKH,MAAMwB,KAAMrB,KAAKH,MAAMsB,QAClDG,QAAStB,KAAKuB,UAO9BvB,KAAKH,MAAM2B,YAEPV,EAACW,EAAAA,CAAgBC,QAAS1B,KAAKH,MAAM8B,QAAQD,SACzCZ,EAACc,EAAAA,CACGT,OAAQnB,KAAKH,MAAMsB,OACnBU,YAAY,EACZC,aAAcC,EACdC,UAAWhC,KAAKH,MAAMmC,UACtBR,YAAaxB,KAAKH,MAAM2B,YACxBS,QAASjC,KAAKH,MAAMoC,QACpBC,WAAYlC,KAAKkC,WACjBC,UAAWnC,KAAKoC,KAChBjC,KAAMH,KAAKqC,YAAY,KACvBC,YAAatC,KAAKH,MAAMwB,KAAKkB,IAAI,wBACjCC,UAAWxC,KAAKH,MAAMwB,KAAKkB,IAAI,mCAC/BE,mBAAoB7D,EACpB8D,aAAc9D,EACd+D,iBAAkB/D,EAClBgE,gBAAiB5C,KAAK4C,gBACtBC,QAAS,MACH7C,KAAKH,MAAMiD,SACThC,EAACiC,EAAAA,CAAeD,QAAS9C,KAAKH,MAAMiD,QAASE,MAAOhD,KAAKH,MAAMmD,MAAOC,aAAcjD,KAAKH,MAAMsB,OAAO+B,cAS1HpC,EAACqC,EAAAA,CACGrD,KAAME,KAAKH,MAAMC,KACjBsD,aAAcpD,KAAKH,MAAMuD,aACzBC,gBAAiBrD,KAAKqD,gBACtBC,SAAUtD,KAAKuD,SACfC,UAAWxD,KAAKwD,UAChBxC,cAAehB,KAAKH,MAAMmB,eAGtC,EArHAyC,EADS/D,EACcS,OAAOuD,EAAWC,OAEzCF,EAHS/D,EAGQkE,eAAe,CAC5BR,aAAc,CAAA"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{createElement as t}from"../../external/preact/dist/preact.js";import{UIElement as
|
|
1
|
+
import{createElement as e,Fragment as t}from"../../external/preact/dist/preact.js";import{UIElement as n}from"../internal/UIElement/UIElement.js";import r from"../internal/PersonalDetails/PersonalDetails.js";import{TxVariants as s}from"../tx-variants.js";import a from"../internal/FormInstruction/FormInstruction.js";import{AnalyticsInfoEvent as o,InfoEventType as i}from"../../core/Analytics/events/AnalyticsInfoEvent.js";class l extends n{beforeRender(e){const t=new o({type:i.rendered,component:this.type,configData:e});this.analytics.sendAnalytics(t)}get data(){return this.state.data}get isValid(){return!!this.state.isValid}componentToRender(){return e(t,null,e(a,null),e(r,{setComponentRef:this.setComponentRef,...this.props,onChange:this.setState}))}}var m,p,c;m=l,p="type",c=s.personal_details,p in m?Object.defineProperty(m,p,{value:c,enumerable:!0,configurable:!0,writable:!0}):m[p]=c;export{l as PersonalDetailsElement,l as default};
|
|
2
2
|
//# sourceMappingURL=PersonalDetails.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PersonalDetails.js","sources":["../../../../src/components/PersonalDetails/PersonalDetails.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport PersonalDetails from '../internal/PersonalDetails';\nimport {
|
|
1
|
+
{"version":3,"file":"PersonalDetails.js","sources":["../../../../src/components/PersonalDetails/PersonalDetails.tsx"],"sourcesContent":["import { Fragment, h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport PersonalDetails from '../internal/PersonalDetails';\nimport { TxVariants } from '../tx-variants';\nimport FormInstruction from '../internal/FormInstruction';\nimport { UIElementProps } from '../internal/UIElement/types';\nimport { AnalyticsInfoEvent, InfoEventType } from '../../core/Analytics/events/AnalyticsInfoEvent';\n\ninterface PersonalDetailsConfiguration extends UIElementProps {}\n\nexport class PersonalDetailsElement extends UIElement<PersonalDetailsConfiguration> {\n public static type = TxVariants.personal_details;\n\n protected override beforeRender(configSetByMerchant?: PersonalDetailsConfiguration): void {\n const event = new AnalyticsInfoEvent({\n type: InfoEventType.rendered,\n component: this.type,\n configData: configSetByMerchant\n });\n\n this.analytics.sendAnalytics(event);\n }\n\n get data() {\n return this.state.data;\n }\n\n get isValid() {\n return !!this.state.isValid;\n }\n\n protected override componentToRender(): h.JSX.Element {\n return (\n <Fragment>\n <FormInstruction />\n <PersonalDetails\n setComponentRef={this.setComponentRef}\n {...this.props}\n onChange={this.setState}\n {...(process.env.NODE_ENV !== 'production' && { payButton: this.payButton })}\n />\n </Fragment>\n );\n }\n}\n\nexport default PersonalDetailsElement;\n"],"names":["PersonalDetailsElement","UIElement","beforeRender","configSetByMerchant","event","AnalyticsInfoEvent","type","InfoEventType","rendered","component","this","configData","analytics","sendAnalytics","data","state","isValid","componentToRender","h","Fragment","FormInstruction","PersonalDetails","setComponentRef","props","onChange","setState","TxVariants","personal_details"],"mappings":"uaAUO,MAAMA,UAA+BC,EAGrBC,YAAAA,CAAaC,GAC5B,MAAMC,EAAQ,IAAIC,EAAmB,CACjCC,KAAMC,EAAcC,SACpBC,UAAWC,KAAKJ,KAChBK,WAAYR,IAGhBO,KAAKE,UAAUC,cAAcT,EACjC,CAEA,QAAIU,GACA,OAAOJ,KAAKK,MAAMD,IACtB,CAEA,WAAIE,GACA,QAASN,KAAKK,MAAMC,OACxB,CAEmBC,iBAAAA,GACf,OACIC,EAACC,EAAAA,KACGD,EAACE,EAAAA,MACDF,EAACG,EAAAA,CACGC,gBAAiBZ,KAAKY,mBAClBZ,KAAKa,MACTC,SAAUd,KAAKe,WAK/B,cAjCSzB,IACKM,SAAOoB,EAAWC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{createElement as t}from"../../external/preact/dist/preact.js";import
|
|
1
|
+
import{createElement as t}from"../../external/preact/dist/preact.js";import e from"../helpers/QRLoaderContainer/QRLoaderContainer.js";import r from"./components/PixInput/PixInput.js";import{cleanCPFCNPJ as o}from"../internal/SocialSecurityNumberBrazil/utils.js";import{TxVariants as s}from"../tx-variants.js";import{QRLoader as i}from"../internal/QRLoader/QRLoader.js";import"../../core/Context/CoreProvider.js";import"../../external/preact/hooks/dist/hooks.js";import"../../core/Errors/AdyenCheckoutError.js";import"../../core/Errors/SRPanelContext.js";import"../internal/Button/Button.js";import"../internal/QRLoader/QRLoaderDetailsProvider.js";import a from"../../core/Errors/SRPanelProvider.js";import n from"./components/PixQRDetails.js";function p(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}class m extends e{get isValid(){return!!this.state.isValid}formatProps(t){return{copyBtn:!0,introduction:"pix.instructions",...super.formatProps(t)}}formatData(){const{data:t={}}=this.state,{firstName:e,lastName:r,socialSecurityNumber:s=""}=t;return{paymentMethod:{type:this.props.type||this.constructor.type},...e&&r&&{shopperName:{firstName:e,lastName:r}},...s&&{socialSecurityNumber:o(s)}}}renderQRCode(){return t(a,{srPanel:this.props.modules.srPanel},t(i,{...this.props,type:this.type,brandLogo:this.props.brandLogo||this.icon,onComplete:this.onComplete,onActionHandled:this.onActionHandled,brandName:this.displayName,onSubmitAnalytics:this.submitAnalytics},t(n,null)))}componentToRender(){return this.props.paymentData?this.renderQRCode():t(r,{ref:t=>{this.componentRef=t},...this.props,showPayButton:this.props.showPayButton,personalDetailsRequired:this.props.personalDetailsRequired,name:this.displayName,onChange:this.setState,payButton:this.payButton})}}p(m,"type",s.pix),p(m,"defaultProps",{personalDetailsRequired:!1,countdownTime:15,delay:2e3,...e.defaultProps});export{m as default};
|
|
2
2
|
//# sourceMappingURL=Pix.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Pix.js","sources":["../../../../src/components/Pix/Pix.tsx"],"sourcesContent":["import { h } from 'preact';\nimport QRLoaderContainer from '../helpers/QRLoaderContainer/QRLoaderContainer';\nimport
|
|
1
|
+
{"version":3,"file":"Pix.js","sources":["../../../../src/components/Pix/Pix.tsx"],"sourcesContent":["import { h } from 'preact';\nimport QRLoaderContainer from '../helpers/QRLoaderContainer/QRLoaderContainer';\nimport PixInput from './components/PixInput';\nimport { cleanCPFCNPJ } from '../internal/SocialSecurityNumberBrazil/utils';\nimport { PixElementData, PixConfiguration } from './types';\nimport { TxVariants } from '../tx-variants';\nimport { QRLoader } from '../internal/QRLoader';\nimport SRPanelProvider from '../../core/Errors/SRPanelProvider';\nimport PixQRDetails from './components/PixQRDetails';\nimport './Pix.scss';\n\nclass PixElement extends QRLoaderContainer<PixConfiguration> {\n public static type = TxVariants.pix;\n\n public static defaultProps = {\n personalDetailsRequired: false,\n countdownTime: 15,\n delay: 2000,\n ...QRLoaderContainer.defaultProps\n };\n\n get isValid(): boolean {\n return !!this.state.isValid;\n }\n\n formatProps(props: PixConfiguration): PixConfiguration {\n return {\n copyBtn: true,\n introduction: 'pix.instructions',\n ...super.formatProps(props)\n };\n }\n\n formatData(): PixElementData {\n const { data = {} } = this.state;\n const { firstName, lastName, socialSecurityNumber = '' } = data;\n\n return {\n paymentMethod: {\n type: this.props.type || this.constructor['type']\n },\n ...(firstName && lastName && { shopperName: { firstName, lastName } }),\n ...(socialSecurityNumber && { socialSecurityNumber: cleanCPFCNPJ(socialSecurityNumber) })\n };\n }\n\n renderQRCode() {\n return (\n <SRPanelProvider srPanel={this.props.modules.srPanel}>\n <QRLoader\n {...this.props}\n type={this.type}\n brandLogo={this.props.brandLogo || this.icon}\n onComplete={this.onComplete}\n onActionHandled={this.onActionHandled}\n brandName={this.displayName}\n onSubmitAnalytics={this.submitAnalytics}\n >\n <PixQRDetails />\n </QRLoader>\n </SRPanelProvider>\n );\n }\n\n protected override componentToRender(): h.JSX.Element {\n if (this.props.paymentData) {\n return this.renderQRCode();\n }\n\n return (\n <PixInput\n ref={ref => {\n this.componentRef = ref;\n }}\n {...this.props}\n showPayButton={this.props.showPayButton}\n personalDetailsRequired={this.props.personalDetailsRequired}\n name={this.displayName}\n onChange={this.setState}\n payButton={this.payButton}\n />\n );\n }\n}\n\nexport default PixElement;\n"],"names":["PixElement","QRLoaderContainer","isValid","this","state","formatProps","props","copyBtn","introduction","super","formatData","data","firstName","lastName","socialSecurityNumber","paymentMethod","type","constructor","shopperName","cleanCPFCNPJ","renderQRCode","h","SRPanelProvider","srPanel","modules","QRLoader","brandLogo","icon","onComplete","onActionHandled","brandName","displayName","onSubmitAnalytics","submitAnalytics","PixQRDetails","componentToRender","paymentData","PixInput","ref","componentRef","showPayButton","personalDetailsRequired","name","onChange","setState","payButton","_define_property","TxVariants","pix","defaultProps","countdownTime","delay"],"mappings":"+1BAWA,MAAMA,UAAmBC,EAUrB,WAAIC,GACA,QAASC,KAAKC,MAAMF,OACxB,CAEAG,WAAAA,CAAYC,GACR,MAAO,CACHC,SAAS,EACTC,aAAc,sBACXC,MAAMJ,YAAYC,GAE7B,CAEAI,UAAAA,GACI,MAAMC,KAAEA,EAAO,IAAOR,KAAKC,OACrBQ,UAAEA,EAASC,SAAEA,EAAQC,qBAAEA,EAAuB,IAAOH,EAE3D,MAAO,CACHI,cAAe,CACXC,KAAMb,KAAKG,MAAMU,MAAQb,KAAKc,YAAY,SAE1CL,GAAaC,GAAY,CAAEK,YAAa,CAAEN,YAAWC,gBACrDC,GAAwB,CAAEA,qBAAsBK,EAAaL,IAEzE,CAEAM,YAAAA,GACI,OACIC,EAACC,EAAAA,CAAgBC,QAASpB,KAAKG,MAAMkB,QAAQD,SACzCF,EAACI,EAAAA,IACOtB,KAAKG,MACTU,KAAMb,KAAKa,KACXU,UAAWvB,KAAKG,MAAMoB,WAAavB,KAAKwB,KACxCC,WAAYzB,KAAKyB,WACjBC,gBAAiB1B,KAAK0B,gBACtBC,UAAW3B,KAAK4B,YAChBC,kBAAmB7B,KAAK8B,iBAExBZ,EAACa,EAAAA,OAIjB,CAEmBC,iBAAAA,GACf,OAAIhC,KAAKG,MAAM8B,YACJjC,KAAKiB,eAIZC,EAACgB,EAAAA,CACGC,IAAKA,IACDnC,KAAKoC,aAAeD,MAEpBnC,KAAKG,MACTkC,cAAerC,KAAKG,MAAMkC,cAC1BC,wBAAyBtC,KAAKG,MAAMmC,wBACpCC,KAAMvC,KAAK4B,YACXY,SAAUxC,KAAKyC,SACfC,UAAW1C,KAAK0C,WAG5B,EAtEAC,EADE9C,EACYgB,OAAO+B,EAAWC,KAEhCF,EAHE9C,EAGYiD,eAAe,CACzBR,yBAAyB,EACzBS,cAAe,GACfC,MAAO,OACJlD,EAAkBgD"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{createElement as e}from"../../../external/preact/dist/preact.js";import o
|
|
1
|
+
import{createElement as e}from"../../../external/preact/dist/preact.js";import"../../internal/QRLoader/QRLoader.js";import{QRImage as o}from"../../internal/QRLoader/components/QRImage.js";import{QRProgressbar as r}from"../../internal/QRLoader/components/QRProgressbar.js";import{QRCountdown as a}from"../../internal/QRLoader/components/QRCountdown.js";import{useCoreContext as t}from"../../../core/Context/CoreProvider.js";import{QRCodeCopyButton as n}from"../../internal/QRLoader/components/QRCodeCopyButton.js";import{useQRLoaderDetails as i}from"../../internal/QRLoader/QRLoaderDetailsProvider.js";import d from"../../internal/FormFields/Field/Field.js";import l from"../../internal/FormFields/InputText.js";const m=()=>{const{i18n:m}=t(),{qrCodeData:p,qrCodeImage:c,percentage:s,timeToPay:_,onTick:L,countdownTime:Q,onQRCodeLoad:R,onTimeUp:u,handleCopy:x}=i();return e("div",{className:"adyen-checkout__qr-loader--pix__qr_details"},e(o,{src:c,onLoad:R}),e("div",{className:"adyen-checkout__qr-loader--pix__qr_details__timer"},e(r,{percentage:s}),e(a,{countdownTime:Q,timeToPay:_,onTick:L,onCompleted:u})),e(d,{name:"pix-code",useLabelElement:!1},e(l,{className:"adyen-checkout__qr-loader--pix__qr_details__code",value:p,readonly:!0,"aria-label":m.get("pix.code.label")})),e(n,{text:p,copyLabel:m.get("pix.code.copy.label"),copiedLabel:m.get("pix.code.copied.label"),handleCopy:x}))};export{m as default};
|
|
2
2
|
//# sourceMappingURL=PixQRDetails.js.map
|