@adyen/adyen-web 6.0.0-alpha.4 → 6.0.0-alpha.6
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 +12 -10
- package/dist/cjs/adyen.css.map +1 -0
- package/dist/cjs/index.cjs +2 -2
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/cjs/index.d.cts +33 -29
- package/dist/es/adyen.css +12 -10
- package/dist/es/adyen.css.map +1 -0
- package/dist/es/components/Address/Address.js +1 -1
- package/dist/es/components/Address/Address.js.map +1 -1
- package/dist/es/components/BacsDD/components/BacsInput.js +1 -1
- package/dist/es/components/BacsDD/components/BacsInput.js.map +1 -1
- package/dist/es/components/Blik/components/BlikInput.js +1 -1
- package/dist/es/components/Blik/components/BlikInput.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/CashAppPay/CashAppPay.js +1 -1
- package/dist/es/components/CashAppPay/CashAppPay.js.map +1 -1
- package/dist/es/components/CashAppPay/components/CashAppComponent.js +1 -1
- package/dist/es/components/CashAppPay/components/CashAppComponent.js.map +1 -1
- package/dist/es/components/Dropin/components/PaymentMethod/InstantPaymentMethods.js.map +1 -1
- package/dist/es/components/GooglePay/components/GooglePayButton.js +1 -1
- package/dist/es/components/GooglePay/components/GooglePayButton.js.map +1 -1
- package/dist/es/components/GooglePay/defaultProps.js +1 -1
- package/dist/es/components/GooglePay/defaultProps.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/internal/Address/Address.js +1 -1
- package/dist/es/components/internal/Address/Address.js.map +1 -1
- 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/CtPLogin/CtPLogin.js +1 -1
- package/dist/es/components/internal/ClickToPay/components/CtPLogin/CtPLogin.js.map +1 -1
- package/dist/es/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePassword.js +1 -1
- package/dist/es/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePassword.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/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/VisaSdk.js.map +1 -1
- package/dist/es/components/internal/ClickToPay/services/utils.js +1 -1
- package/dist/es/components/internal/ClickToPay/services/utils.js.map +1 -1
- package/dist/es/components/internal/CompanyDetails/CompanyDetails.js +1 -1
- package/dist/es/components/internal/CompanyDetails/CompanyDetails.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/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/constants.js +2 -0
- package/dist/es/components/internal/Icon/constants.js.map +1 -0
- package/dist/es/components/internal/OpenInvoice/OpenInvoice.js +1 -1
- package/dist/es/components/internal/OpenInvoice/OpenInvoice.js.map +1 -1
- package/dist/es/components/internal/OpenInvoice/useSRPanelForOpenInvoiceErrors.js +2 -0
- package/dist/es/components/internal/OpenInvoice/useSRPanelForOpenInvoiceErrors.js.map +1 -0
- 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/SecuredFields/lib/constants.js +1 -1
- package/dist/es/components/internal/SecuredFields/lib/constants.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/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/constants.js +1 -1
- package/dist/es/core/Analytics/constants.js.map +1 -1
- package/dist/es/core/Analytics/utils.js.map +1 -1
- package/dist/es/core/Context/Resources.js +1 -1
- package/dist/es/core/Context/Resources.js.map +1 -1
- package/dist/es/core/Environment/Environment.js +1 -1
- package/dist/es/core/Environment/Environment.js.map +1 -1
- package/dist/es/core/Environment/constants.js +2 -0
- package/dist/es/core/Environment/constants.js.map +1 -0
- package/dist/es/core/Errors/SRMessages.js +1 -1
- package/dist/es/core/Errors/SRMessages.js.map +1 -1
- package/dist/es/core/Errors/SRPanel.js +1 -1
- package/dist/es/core/Errors/SRPanel.js.map +1 -1
- package/dist/es/core/Services/analytics/collect-id.js +1 -1
- package/dist/es/core/Services/analytics/collect-id.js.map +1 -1
- package/dist/es/core/Services/analytics/log-event.js +1 -1
- package/dist/es/core/Services/get-translations.js +1 -1
- package/dist/es/core/Services/get-translations.js.map +1 -1
- package/dist/es/core/core.defaultProps.js +1 -1
- package/dist/es/core/core.defaultProps.js.map +1 -1
- package/dist/es/core/core.js +1 -1
- package/dist/es/core/core.js.map +1 -1
- package/dist/es/core/utils.js +1 -1
- package/dist/es/core/utils.js.map +1 -1
- package/dist/es/external/preact/dist/preact.js +1 -1
- package/dist/es/external/preact/dist/preact.js.map +1 -1
- package/dist/es/external/preact/hooks/dist/hooks.js +1 -1
- package/dist/es/external/preact/hooks/dist/hooks.js.map +1 -1
- package/dist/es/index.d.ts +33 -29
- package/dist/es/utils/arrayUtils.js +1 -1
- package/dist/es/utils/arrayUtils.js.map +1 -1
- package/dist/es/utils/useForm/useForm.js +1 -1
- package/dist/es/utils/validator-utils.js +1 -1
- package/dist/es/utils/validator-utils.js.map +1 -1
- package/dist/es-legacy/adyen.css +12 -10
- package/dist/es-legacy/adyen.css.map +1 -0
- 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/Ach/components/AchInput/AchInput.js +1 -1
- package/dist/es-legacy/components/Ach/components/AchInput/AchInput.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/Affirm/Affirm.js +1 -1
- package/dist/es-legacy/components/Affirm/Affirm.js.map +1 -1
- package/dist/es-legacy/components/AfterPay/AfterPay.js +1 -1
- package/dist/es-legacy/components/AfterPay/AfterPay.js.map +1 -1
- package/dist/es-legacy/components/AfterPay/AfterPayB2B.js +1 -1
- package/dist/es-legacy/components/AfterPay/AfterPayB2B.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/AmazonPay/components/AmazonPayButton.js +1 -1
- package/dist/es-legacy/components/AmazonPay/components/AmazonPayButton.js.map +1 -1
- package/dist/es-legacy/components/AmazonPay/components/AmazonPayComponent.js +1 -1
- package/dist/es-legacy/components/AmazonPay/components/AmazonPayComponent.js.map +1 -1
- package/dist/es-legacy/components/AmazonPay/utils.js +1 -1
- package/dist/es-legacy/components/AmazonPay/utils.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/Atome/Atome.js +1 -1
- package/dist/es-legacy/components/Atome/Atome.js.map +1 -1
- package/dist/es-legacy/components/Atome/config.js +1 -1
- package/dist/es-legacy/components/Atome/config.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/BacsDD/components/BacsInput.js +1 -1
- package/dist/es-legacy/components/BacsDD/components/BacsInput.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/BillDesk/BillDeskOnline.js +1 -1
- package/dist/es-legacy/components/BillDesk/BillDeskOnline.js.map +1 -1
- package/dist/es-legacy/components/BillDesk/BillDeskWallet.js +1 -1
- package/dist/es-legacy/components/BillDesk/BillDeskWallet.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/Blik/components/BlikInput.js +1 -1
- package/dist/es-legacy/components/Blik/components/BlikInput.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/Boleto/components/BoletoInput/BoletoInput.js +1 -1
- package/dist/es-legacy/components/Boleto/components/BoletoInput/BoletoInput.js.map +1 -1
- package/dist/es-legacy/components/Card/Bancontact.js +1 -1
- package/dist/es-legacy/components/Card/Bancontact.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/IframeLabelAlternative.js +1 -1
- package/dist/es-legacy/components/Card/components/CardInput/components/IframeLabelAlternative.js.map +1 -1
- package/dist/es-legacy/components/Card/components/CardInput/components/StoredCardFields.js +1 -1
- package/dist/es-legacy/components/Card/components/CardInput/components/StoredCardFields.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/components/CashAppComponent.js +1 -1
- package/dist/es-legacy/components/CashAppPay/components/CashAppComponent.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/CustomCard/CustomCardInput/CustomCardInput.js +1 -1
- package/dist/es-legacy/components/CustomCard/CustomCardInput/CustomCardInput.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/Donation/components/DonationComponent.js +1 -1
- package/dist/es-legacy/components/Donation/components/DonationComponent.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/Dragonpay/components/DragonpayInput/DragonpayInput.js +1 -1
- package/dist/es-legacy/components/Dragonpay/components/DragonpayInput/DragonpayInput.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.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/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 +1 -1
- package/dist/es-legacy/components/Dropin/elements/createStoredElements.js.map +1 -1
- package/dist/es-legacy/components/EPS/index.js +1 -1
- package/dist/es-legacy/components/EPS/index.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/FacilyPay/FacilyPay10x.js +1 -1
- package/dist/es-legacy/components/FacilyPay/FacilyPay10x.js.map +1 -1
- package/dist/es-legacy/components/FacilyPay/FacilyPay12x.js +1 -1
- package/dist/es-legacy/components/FacilyPay/FacilyPay12x.js.map +1 -1
- package/dist/es-legacy/components/FacilyPay/FacilyPay3x.js +1 -1
- package/dist/es-legacy/components/FacilyPay/FacilyPay3x.js.map +1 -1
- package/dist/es-legacy/components/FacilyPay/FacilyPay4x.js +1 -1
- package/dist/es-legacy/components/FacilyPay/FacilyPay4x.js.map +1 -1
- package/dist/es-legacy/components/FacilyPay/FacilyPay6x.js +1 -1
- package/dist/es-legacy/components/FacilyPay/FacilyPay6x.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/Giftcard/components/GiftcardComponent.js +1 -1
- package/dist/es-legacy/components/Giftcard/components/GiftcardComponent.js.map +1 -1
- package/dist/es-legacy/components/Giftcard/components/GiftcardFields.js +1 -1
- package/dist/es-legacy/components/Giftcard/components/GiftcardFields.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/components/GooglePayButton.js +1 -1
- package/dist/es-legacy/components/GooglePay/components/GooglePayButton.js.map +1 -1
- package/dist/es-legacy/components/GooglePay/defaultProps.js +1 -1
- package/dist/es-legacy/components/GooglePay/defaultProps.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/Klarna/components/KlarnaContainer/KlarnaContainer.js +1 -1
- package/dist/es-legacy/components/Klarna/components/KlarnaContainer/KlarnaContainer.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/MBWay/components/MBWayInput/MBWayInput.js +1 -1
- package/dist/es-legacy/components/MBWay/components/MBWayInput/MBWayInput.js.map +1 -1
- package/dist/es-legacy/components/MealVoucherFR/MealVoucherFR.js +1 -1
- package/dist/es-legacy/components/MealVoucherFR/MealVoucherFR.js.map +1 -1
- package/dist/es-legacy/components/MealVoucherFR/components/MealVoucherFields.js +1 -1
- package/dist/es-legacy/components/MealVoucherFR/components/MealVoucherFields.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/OnlineBankingCZ/index.js +1 -1
- package/dist/es-legacy/components/OnlineBankingCZ/index.js.map +1 -1
- package/dist/es-legacy/components/OnlineBankingIN/index.js +1 -1
- package/dist/es-legacy/components/OnlineBankingIN/index.js.map +1 -1
- package/dist/es-legacy/components/OnlineBankingPL/OnlineBankingPL.js +1 -1
- package/dist/es-legacy/components/OnlineBankingPL/OnlineBankingPL.js.map +1 -1
- package/dist/es-legacy/components/OnlineBankingSK/index.js +1 -1
- package/dist/es-legacy/components/OnlineBankingSK/index.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/PayByBank/PayByBank.js +1 -1
- package/dist/es-legacy/components/PayByBank/PayByBank.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/PayPal/components/PaypalButtons.js +1 -1
- package/dist/es-legacy/components/PayPal/components/PaypalButtons.js.map +1 -1
- package/dist/es-legacy/components/PayPal/components/PaypalComponent.js +1 -1
- package/dist/es-legacy/components/PayPal/components/PaypalComponent.js.map +1 -1
- package/dist/es-legacy/components/PayPal/utils/get-paypal-settings.js +1 -1
- package/dist/es-legacy/components/PayPal/utils/get-paypal-settings.js.map +1 -1
- package/dist/es-legacy/components/PayU/PayuCashcard.js +1 -1
- package/dist/es-legacy/components/PayU/PayuCashcard.js.map +1 -1
- package/dist/es-legacy/components/PayU/PayuNetBanking.js +1 -1
- package/dist/es-legacy/components/PayU/PayuNetBanking.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/RatePay/RatePay.js +1 -1
- package/dist/es-legacy/components/RatePay/RatePay.js.map +1 -1
- package/dist/es-legacy/components/RatePay/RatePayDirectDebit.js +1 -1
- package/dist/es-legacy/components/RatePay/RatePayDirectDebit.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/Riverty/Riverty.js +1 -1
- package/dist/es-legacy/components/Riverty/Riverty.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/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/Twint/Twint.js +1 -1
- package/dist/es-legacy/components/Twint/Twint.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/WalletIN/index.js +1 -1
- package/dist/es-legacy/components/WalletIN/index.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/Address/Address.js +1 -1
- package/dist/es-legacy/components/internal/Address/Address.js.map +1 -1
- package/dist/es-legacy/components/internal/Address/components/CountryField.js +1 -1
- package/dist/es-legacy/components/internal/Address/components/CountryField.js.map +1 -1
- 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/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/CtPLogin/CtPLogin.js +1 -1
- package/dist/es-legacy/components/internal/ClickToPay/components/CtPLogin/CtPLogin.js.map +1 -1
- package/dist/es-legacy/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePassword.js +1 -1
- package/dist/es-legacy/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePassword.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/services/ClickToPayService.js +1 -1
- package/dist/es-legacy/components/internal/ClickToPay/services/ClickToPayService.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 +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/VisaSdk.js +1 -1
- package/dist/es-legacy/components/internal/ClickToPay/services/sdks/VisaSdk.js.map +1 -1
- package/dist/es-legacy/components/internal/ClickToPay/services/utils.js +1 -1
- package/dist/es-legacy/components/internal/ClickToPay/services/utils.js.map +1 -1
- package/dist/es-legacy/components/internal/CompanyDetails/CompanyDetails.js +1 -1
- package/dist/es-legacy/components/internal/CompanyDetails/CompanyDetails.js.map +1 -1
- package/dist/es-legacy/components/internal/FormFields/Checkbox/Checkbox.js +1 -1
- package/dist/es-legacy/components/internal/FormFields/Checkbox/Checkbox.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 +1 -1
- package/dist/es-legacy/components/internal/FormFields/InputBase.js.map +1 -1
- package/dist/es-legacy/components/internal/FormFields/InputDate/InputDate.js +1 -1
- package/dist/es-legacy/components/internal/FormFields/InputDate/InputDate.js.map +1 -1
- package/dist/es-legacy/components/internal/FormFields/InputEmail.js +1 -1
- package/dist/es-legacy/components/internal/FormFields/InputEmail.js.map +1 -1
- package/dist/es-legacy/components/internal/FormFields/InputTelephone.js +1 -1
- package/dist/es-legacy/components/internal/FormFields/InputTelephone.js.map +1 -1
- package/dist/es-legacy/components/internal/FormFields/InputText.js +1 -1
- package/dist/es-legacy/components/internal/FormFields/InputText.js.map +1 -1
- package/dist/es-legacy/components/internal/FormFields/Select/components/SelectButton.js +1 -1
- package/dist/es-legacy/components/internal/FormFields/Select/components/SelectButton.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/IbanInput/IbanInput.js +1 -1
- package/dist/es-legacy/components/internal/IbanInput/IbanInput.js.map +1 -1
- package/dist/es-legacy/components/internal/Icon/constants.js +2 -0
- package/dist/es-legacy/components/internal/Icon/constants.js.map +1 -0
- 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/IssuerButtonGroup/IssuerButtonGroup.js +1 -1
- package/dist/es-legacy/components/internal/IssuerList/IssuerButtonGroup/IssuerButtonGroup.js.map +1 -1
- package/dist/es-legacy/components/internal/OpenInvoice/OpenInvoice.js +1 -1
- package/dist/es-legacy/components/internal/OpenInvoice/OpenInvoice.js.map +1 -1
- package/dist/es-legacy/components/internal/OpenInvoice/useSRPanelForOpenInvoiceErrors.js +2 -0
- package/dist/es-legacy/components/internal/OpenInvoice/useSRPanelForOpenInvoiceErrors.js.map +1 -0
- package/dist/es-legacy/components/internal/PayButton/PayButton.js +1 -1
- package/dist/es-legacy/components/internal/PayButton/PayButton.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/PhoneInput/PhoneInput.js +1 -1
- package/dist/es-legacy/components/internal/PhoneInput/PhoneInput.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/RedirectButton/RedirectButton.js +1 -1
- package/dist/es-legacy/components/internal/RedirectButton/RedirectButton.js.map +1 -1
- package/dist/es-legacy/components/internal/SecuredFields/SFP/SecuredFieldsProvider.js +1 -1
- package/dist/es-legacy/components/internal/SecuredFields/SFP/SecuredFieldsProvider.js.map +1 -1
- package/dist/es-legacy/components/internal/SecuredFields/SFP/SecuredFieldsProviderHandlers.js +1 -1
- package/dist/es-legacy/components/internal/SecuredFields/SFP/SecuredFieldsProviderHandlers.js.map +1 -1
- package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/handleBrandFromBinLookup.js +1 -1
- package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/handleBrandFromBinLookup.js.map +1 -1
- package/dist/es-legacy/components/internal/SecuredFields/lib/constants.js +1 -1
- package/dist/es-legacy/components/internal/SecuredFields/lib/constants.js.map +1 -1
- package/dist/es-legacy/components/internal/SecuredFields/lib/securedField/SecuredField.js +1 -1
- package/dist/es-legacy/components/internal/SecuredFields/lib/securedField/SecuredField.js.map +1 -1
- package/dist/es-legacy/components/internal/SecuredFields/lib/securedField/utils/processAriaConfig.js +1 -1
- package/dist/es-legacy/components/internal/SecuredFields/lib/securedField/utils/processAriaConfig.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/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/constants.js +1 -1
- package/dist/es-legacy/core/Analytics/constants.js.map +1 -1
- package/dist/es-legacy/core/Analytics/utils.js.map +1 -1
- package/dist/es-legacy/core/Context/Resources.js +1 -1
- package/dist/es-legacy/core/Context/Resources.js.map +1 -1
- package/dist/es-legacy/core/Environment/Environment.js +1 -1
- package/dist/es-legacy/core/Environment/Environment.js.map +1 -1
- package/dist/es-legacy/core/Environment/constants.js +2 -0
- package/dist/es-legacy/core/Environment/constants.js.map +1 -0
- package/dist/es-legacy/core/Errors/SRPanel.js +1 -1
- package/dist/es-legacy/core/Errors/SRPanel.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/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 +1 -1
- package/dist/es-legacy/core/ProcessResponse/process-response.js.map +1 -1
- package/dist/es-legacy/core/RiskModule/RiskModule.js +1 -1
- package/dist/es-legacy/core/RiskModule/RiskModule.js.map +1 -1
- package/dist/es-legacy/core/Services/analytics/collect-id.js +1 -1
- package/dist/es-legacy/core/Services/analytics/collect-id.js.map +1 -1
- package/dist/es-legacy/core/Services/analytics/log-event.js +1 -1
- package/dist/es-legacy/core/Services/get-translations.js +1 -1
- package/dist/es-legacy/core/Services/get-translations.js.map +1 -1
- 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/core.defaultProps.js +1 -1
- package/dist/es-legacy/core/core.defaultProps.js.map +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/core/core.registry.js +1 -1
- package/dist/es-legacy/core/core.registry.js.map +1 -1
- package/dist/es-legacy/core/utils.js +1 -1
- package/dist/es-legacy/core/utils.js.map +1 -1
- package/dist/es-legacy/external/preact/dist/preact.js +1 -1
- package/dist/es-legacy/external/preact/dist/preact.js.map +1 -1
- package/dist/es-legacy/external/preact/hooks/dist/hooks.js +1 -1
- package/dist/es-legacy/external/preact/hooks/dist/hooks.js.map +1 -1
- package/dist/es-legacy/utils/arrayUtils.js +1 -1
- package/dist/es-legacy/utils/arrayUtils.js.map +1 -1
- package/dist/es-legacy/utils/useForm/reducer.js +1 -1
- package/dist/es-legacy/utils/useForm/reducer.js.map +1 -1
- package/dist/es-legacy/utils/useForm/useForm.js +1 -1
- package/dist/es-legacy/utils/validator-utils.js +1 -1
- package/dist/es-legacy/utils/validator-utils.js.map +1 -1
- package/package.json +146 -147
- package/dist/umd/adyen.css +0 -78
- package/dist/umd/adyen.js +0 -7
- package/dist/umd/adyen.js.map +0 -1
- package/translations/ar.json +0 -306
- package/translations/cs-CZ.json +0 -302
- package/translations/da-DK.json +0 -303
- package/translations/de-DE.json +0 -302
- package/translations/el-GR.json +0 -305
- package/translations/en-US.json +0 -307
- package/translations/es-ES.json +0 -300
- package/translations/fi-FI.json +0 -302
- package/translations/fr-FR.json +0 -305
- package/translations/hr-HR.json +0 -305
- package/translations/hu-HU.json +0 -305
- package/translations/it-IT.json +0 -305
- package/translations/ja-JP.json +0 -305
- package/translations/ko-KR.json +0 -305
- package/translations/nl-NL.json +0 -302
- package/translations/no-NO.json +0 -302
- package/translations/pl-PL.json +0 -305
- package/translations/pt-BR.json +0 -306
- package/translations/pt-PT.json +0 -307
- package/translations/ro-RO.json +0 -305
- package/translations/ru-RU.json +0 -303
- package/translations/sk-SK.json +0 -305
- package/translations/sl-SI.json +0 -305
- package/translations/sv-SE.json +0 -303
- package/translations/zh-CN.json +0 -305
- package/translations/zh-TW.json +0 -305
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AchInput.js","sources":["../../../../../../src/components/Ach/components/AchInput/AchInput.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { useState, useEffect, useRef } from 'preact/hooks';\nimport classNames from 'classnames';\nimport AchSecuredFields from './components/AchSecuredFields';\nimport SecuredFieldsProvider from '../../../internal/SecuredFields/SFP/SecuredFieldsProvider';\nimport Address from '../../../internal/Address';\nimport Field from '../../../internal/FormFields/Field';\nimport LoadingWrapper from '../../../internal/LoadingWrapper/LoadingWrapper';\nimport defaultProps from './defaultProps';\nimport defaultStyles from './defaultStyles';\nimport { useCoreContext } from '../../../../core/Context/CoreProvider';\nimport './AchInput.scss';\nimport { ACHInputDataState, ACHInputProps, ACHInputStateError, ACHInputStateValid } from './types';\nimport StoreDetails from '../../../internal/StoreDetails';\nimport InputText from '../../../internal/FormFields/InputText';\nimport FormInstruction from '../../../internal/FormInstruction';\nimport { ComponentMethodsRef } from '../../../internal/UIElement/types';\n\nfunction validateHolderName(holderName, holderNameRequired = false) {\n if (holderNameRequired) {\n return !!holderName && typeof holderName === 'string' && holderName.trim().length > 0;\n }\n return true;\n}\n\nfunction AchInput(props: ACHInputProps) {\n const { i18n } = useCoreContext();\n\n const holderNameIsValid = props.hasHolderName && (!!props.holderName || !!props.data.holderName);\n\n const [errors, setErrors] = useState<ACHInputStateError>({});\n const [valid, setValid] = useState<ACHInputStateValid>({\n ...(props.holderNameRequired && { holderName: holderNameIsValid })\n });\n const [data, setData] = useState<ACHInputDataState>({\n ...(props.hasHolderName && { holderName: props.holderName || props.data.holderName })\n });\n\n const [billingAddress, setBillingAddress] = useState(props.billingAddressRequired ? props.data.billingAddress : null);\n const [isSfpValid, setIsSfpValid] = useState(false);\n const [focusedElement, setFocusedElement] = useState('');\n const [storePaymentMethod, setStorePaymentMethod] = useState(false);\n\n const handleFocus = e => {\n const isFocused = e.focus === true;\n\n setFocusedElement(e.currentFocusObject);\n\n if (isFocused) {\n props.onFocus(e);\n } else {\n props.onBlur(e);\n }\n };\n\n const handleAddress = address => {\n setBillingAddress({ ...billingAddress, ...address.data });\n setValid({ ...valid, billingAddress: address.isValid });\n };\n\n const handleHolderName = e => {\n const holderName = e.target.value;\n\n setData({ ...data, holderName });\n setErrors({ ...errors, holderName: props.holderNameRequired ? !validateHolderName(holderName) : false });\n setValid({ ...valid, holderName: props.holderNameRequired ? validateHolderName(holderName, props.holderNameRequired) : true });\n };\n\n const handleSecuredFieldsChange = newState => {\n const sfState = newState;\n\n const tempHolderName = sfState.autoCompleteName ? sfState.autoCompleteName : data.holderName;\n\n setData({ ...data, ...sfState.data, holderName: tempHolderName });\n setErrors({ ...errors, ...sfState.errors });\n setValid({\n ...valid,\n ...sfState.valid,\n holderName: props.holderNameRequired ? validateHolderName(tempHolderName, props.holderNameRequired) : true\n });\n\n setIsSfpValid(sfState.isSfpValid);\n };\n\n // Refs\n const sfp = useRef(null);\n const billingAddressRef = useRef(null);\n const setAddressRef = ref => {\n billingAddressRef.current = ref;\n };\n\n const [status, setStatus] = useState('ready');\n\n /** An object by which to expose 'public' members to the parent UIElement */\n const achRef = useRef<ComponentMethodsRef>({});\n // Just call once\n if (!Object.keys(achRef.current).length) {\n props.setComponentRef?.(achRef.current);\n }\n\n achRef.current.showValidation = () => {\n // Validate SecuredFields\n sfp.current.showValidation();\n\n // Validate holderName\n if (props.holderNameRequired && !valid.holderName) {\n setErrors({ ...errors, holderName: true });\n }\n\n // Validate Address\n if (billingAddressRef.current) billingAddressRef.current.showValidation();\n };\n\n achRef.current.setStatus = setStatus;\n\n useEffect(() => {\n this.setFocusOn = sfp.current.setFocusOn;\n this.updateStyles = sfp.current.updateStyles;\n\n return () => {\n sfp.current.destroy();\n };\n }, []);\n\n // Run when state.data, -errors or -valid change\n useEffect(() => {\n // Validate whole component i.e holderName + securedFields + address\n const holderNameValid = validateHolderName(data.holderName, props.holderNameRequired);\n const sfpValid = isSfpValid;\n const billingAddressValid = props.billingAddressRequired ? Boolean(valid.billingAddress) : true;\n\n const isValid = sfpValid && holderNameValid && billingAddressValid;\n\n props.onChange({ data, isValid, billingAddress, storePaymentMethod });\n }, [data, valid, errors, storePaymentMethod]);\n\n return (\n <div className=\"adyen-checkout__ach\">\n {props.showFormInstruction && <FormInstruction />}\n <SecuredFieldsProvider\n ref={sfp}\n {...extractPropsForSFP(props)}\n styles={{ ...defaultStyles, ...props.styles }}\n onChange={handleSecuredFieldsChange}\n onFocus={handleFocus}\n render={({ setRootNode, setFocusOn }, sfpState) => (\n <div ref={setRootNode} className=\"adyen-checkout__ach-input sf-input__wrapper\">\n <LoadingWrapper status={sfpState.status}>\n <div className={classNames(['adyen-checkout__fieldset', 'adyen-checkout__fieldset--ach'])}>\n {<div className=\"adyen-checkout__fieldset__title\">{i18n.get('ach.bankAccount')}</div>}\n\n {props.hasHolderName && (\n <Field\n label={i18n.get('ach.accountHolderNameField.title')}\n className={'adyen-checkout__pm__holderName'}\n errorMessage={!!errors.holderName && i18n.get('ach.accountHolderNameField.invalid')}\n showContextualElement={props.showContextualElement}\n contextualText={i18n.get('ach.accountHolderNameField.contextualText')}\n isValid={!!valid.holderName}\n name={'holderName'}\n >\n <InputText\n className=\"adyen-checkout__pm__holderName__input adyen-checkout__input\"\n placeholder={props?.placeholders?.holderName}\n value={data.holderName}\n required={props.holderNameRequired}\n onInput={handleHolderName}\n />\n </Field>\n )}\n\n <AchSecuredFields\n focusedElement={focusedElement}\n onFocusField={setFocusOn}\n errors={sfpState.errors}\n valid={sfpState.valid}\n />\n </div>\n\n {props.billingAddressRequired && (\n <Address\n label=\"billingAddress\"\n data={billingAddress}\n onChange={handleAddress}\n allowedCountries={props.billingAddressAllowedCountries}\n requiredFields={props.billingAddressRequiredFields}\n setComponentRef={setAddressRef}\n />\n )}\n\n {props.enableStoreDetails && <StoreDetails onChange={setStorePaymentMethod} />}\n </LoadingWrapper>\n </div>\n )}\n />\n {props.showPayButton && props.payButton({ status, label: i18n.get('confirmPurchase') })}\n </div>\n );\n}\n\nAchInput.defaultProps = defaultProps;\n\nexport default AchInput;\n\nconst extractPropsForSFP = (props: ACHInputProps) => {\n return {\n autoFocus: props.autoFocus,\n clientKey: props.clientKey,\n i18n: props.i18n,\n keypadFix: props.keypadFix,\n legacyInputMode: props.legacyInputMode,\n loadingContext: props.loadingContext,\n onAllValid: props.onAllValid,\n onConfigSuccess: props.onConfigSuccess,\n onError: props.onError,\n onFieldValid: props.onFieldValid,\n onFocus: props.onFocus,\n onLoad: props.onLoad,\n showWarnings: props.showWarnings,\n styles: props.styles,\n type: props.type,\n forceCompat: props.forceCompat,\n resources: props.resources,\n placeholders: props.placeholders\n };\n};\n"],"names":["validateHolderName","holderName","holderNameRequired","trim","length","AchInput","props","i18n","useCoreContext","holderNameIsValid","hasHolderName","data","errors","setErrors","useState","valid","setValid","_object_spread","setData","billingAddress","setBillingAddress","billingAddressRequired","isSfpValid","setIsSfpValid","focusedElement","setFocusedElement","storePaymentMethod","setStorePaymentMethod","handleAddress","address","_object_spread_props","isValid","handleHolderName","e","target","value","sfp","useRef","billingAddressRef","setAddressRef","ref","current","status","setStatus","achRef","Object","keys","setComponentRef","showValidation","useEffect","this","setFocusOn","updateStyles","destroy","holderNameValid","sfpValid","billingAddressValid","Boolean","onChange","h","div","className","showFormInstruction","FormInstruction","SecuredFieldsProvider","extractPropsForSFP","styles","defaultStyles","newState","sfState","tempHolderName","autoCompleteName","onFocus","isFocused","focus","currentFocusObject","onBlur","render","setRootNode","sfpState","LoadingWrapper","classNames","get","Field","label","errorMessage","showContextualElement","contextualText","name","InputText","placeholder","placeholders","required","onInput","AchSecuredFields","onFocusField","Address","allowedCountries","billingAddressAllowedCountries","requiredFields","billingAddressRequiredFields","enableStoreDetails","StoreDetails","showPayButton","payButton","defaultProps","autoFocus","clientKey","keypadFix","legacyInputMode","loadingContext","onAllValid","onConfigSuccess","onError","onFieldValid","onLoad","showWarnings","type","forceCompat","resources"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AchInput.js","sources":["../../../../../../src/components/Ach/components/AchInput/AchInput.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { useState, useEffect, useRef } from 'preact/hooks';\nimport classNames from 'classnames';\nimport AchSecuredFields from './components/AchSecuredFields';\nimport SecuredFieldsProvider from '../../../internal/SecuredFields/SFP/SecuredFieldsProvider';\nimport Address from '../../../internal/Address';\nimport Field from '../../../internal/FormFields/Field';\nimport LoadingWrapper from '../../../internal/LoadingWrapper/LoadingWrapper';\nimport defaultProps from './defaultProps';\nimport defaultStyles from './defaultStyles';\nimport { useCoreContext } from '../../../../core/Context/CoreProvider';\nimport './AchInput.scss';\nimport { ACHInputDataState, ACHInputProps, ACHInputStateError, ACHInputStateValid } from './types';\nimport StoreDetails from '../../../internal/StoreDetails';\nimport InputText from '../../../internal/FormFields/InputText';\nimport FormInstruction from '../../../internal/FormInstruction';\nimport { ComponentMethodsRef } from '../../../internal/UIElement/types';\n\nfunction validateHolderName(holderName, holderNameRequired = false) {\n if (holderNameRequired) {\n return !!holderName && typeof holderName === 'string' && holderName.trim().length > 0;\n }\n return true;\n}\n\nfunction AchInput(props: ACHInputProps) {\n const { i18n } = useCoreContext();\n\n const holderNameIsValid = props.hasHolderName && (!!props.holderName || !!props.data.holderName);\n\n const [errors, setErrors] = useState<ACHInputStateError>({});\n const [valid, setValid] = useState<ACHInputStateValid>({\n ...(props.holderNameRequired && { holderName: holderNameIsValid })\n });\n const [data, setData] = useState<ACHInputDataState>({\n ...(props.hasHolderName && { holderName: props.holderName || props.data.holderName })\n });\n\n const [billingAddress, setBillingAddress] = useState(props.billingAddressRequired ? props.data.billingAddress : null);\n const [isSfpValid, setIsSfpValid] = useState(false);\n const [focusedElement, setFocusedElement] = useState('');\n const [storePaymentMethod, setStorePaymentMethod] = useState(false);\n\n const handleFocus = e => {\n const isFocused = e.focus === true;\n\n setFocusedElement(e.currentFocusObject);\n\n if (isFocused) {\n props.onFocus(e);\n } else {\n props.onBlur(e);\n }\n };\n\n const handleAddress = address => {\n setBillingAddress({ ...billingAddress, ...address.data });\n setValid({ ...valid, billingAddress: address.isValid });\n };\n\n const handleHolderName = e => {\n const holderName = e.target.value;\n\n setData({ ...data, holderName });\n setErrors({ ...errors, holderName: props.holderNameRequired ? !validateHolderName(holderName) : false });\n setValid({ ...valid, holderName: props.holderNameRequired ? validateHolderName(holderName, props.holderNameRequired) : true });\n };\n\n const handleSecuredFieldsChange = newState => {\n const sfState = newState;\n\n const tempHolderName = sfState.autoCompleteName ? sfState.autoCompleteName : data.holderName;\n\n setData({ ...data, ...sfState.data, holderName: tempHolderName });\n setErrors({ ...errors, ...sfState.errors });\n setValid({\n ...valid,\n ...sfState.valid,\n holderName: props.holderNameRequired ? validateHolderName(tempHolderName, props.holderNameRequired) : true\n });\n\n setIsSfpValid(sfState.isSfpValid);\n };\n\n // Refs\n const sfp = useRef(null);\n const billingAddressRef = useRef(null);\n const setAddressRef = ref => {\n billingAddressRef.current = ref;\n };\n\n const [status, setStatus] = useState('ready');\n\n /** An object by which to expose 'public' members to the parent UIElement */\n const achRef = useRef<ComponentMethodsRef>({});\n // Just call once\n if (!Object.keys(achRef.current).length) {\n props.setComponentRef?.(achRef.current);\n }\n\n achRef.current.showValidation = () => {\n // Validate SecuredFields\n sfp.current.showValidation();\n\n // Validate holderName\n if (props.holderNameRequired && !valid.holderName) {\n setErrors({ ...errors, holderName: true });\n }\n\n // Validate Address\n if (billingAddressRef.current) billingAddressRef.current.showValidation();\n };\n\n achRef.current.setStatus = setStatus;\n\n useEffect(() => {\n this.setFocusOn = sfp.current.setFocusOn;\n this.updateStyles = sfp.current.updateStyles;\n\n return () => {\n sfp.current.destroy();\n };\n }, []);\n\n // Run when state.data, -errors or -valid change\n useEffect(() => {\n // Validate whole component i.e holderName + securedFields + address\n const holderNameValid = validateHolderName(data.holderName, props.holderNameRequired);\n const sfpValid = isSfpValid;\n const billingAddressValid = props.billingAddressRequired ? Boolean(valid.billingAddress) : true;\n\n const isValid = sfpValid && holderNameValid && billingAddressValid;\n\n props.onChange({ data, isValid, billingAddress, storePaymentMethod });\n }, [data, valid, errors, storePaymentMethod]);\n\n return (\n <div className=\"adyen-checkout__ach\">\n {props.showFormInstruction && <FormInstruction />}\n <SecuredFieldsProvider\n ref={sfp}\n {...extractPropsForSFP(props)}\n styles={{ ...defaultStyles, ...props.styles }}\n onChange={handleSecuredFieldsChange}\n onFocus={handleFocus}\n render={({ setRootNode, setFocusOn }, sfpState) => (\n <div ref={setRootNode} className=\"adyen-checkout__ach-input sf-input__wrapper\">\n <LoadingWrapper status={sfpState.status}>\n <div className={classNames(['adyen-checkout__fieldset', 'adyen-checkout__fieldset--ach'])}>\n {<div className=\"adyen-checkout__fieldset__title\">{i18n.get('ach.bankAccount')}</div>}\n\n {props.hasHolderName && (\n <Field\n label={i18n.get('ach.accountHolderNameField.title')}\n className={'adyen-checkout__pm__holderName'}\n errorMessage={!!errors.holderName && i18n.get('ach.accountHolderNameField.invalid')}\n showContextualElement={props.showContextualElement}\n contextualText={i18n.get('ach.accountHolderNameField.contextualText')}\n isValid={!!valid.holderName}\n name={'holderName'}\n >\n <InputText\n className=\"adyen-checkout__pm__holderName__input adyen-checkout__input\"\n placeholder={props?.placeholders?.holderName}\n value={data.holderName}\n required={props.holderNameRequired}\n onInput={handleHolderName}\n />\n </Field>\n )}\n\n <AchSecuredFields\n focusedElement={focusedElement}\n onFocusField={setFocusOn}\n errors={sfpState.errors}\n valid={sfpState.valid}\n />\n </div>\n\n {props.billingAddressRequired && (\n <Address\n label=\"billingAddress\"\n data={billingAddress}\n onChange={handleAddress}\n allowedCountries={props.billingAddressAllowedCountries}\n requiredFields={props.billingAddressRequiredFields}\n setComponentRef={setAddressRef}\n />\n )}\n\n {props.enableStoreDetails && <StoreDetails onChange={setStorePaymentMethod} />}\n </LoadingWrapper>\n </div>\n )}\n />\n {props.showPayButton && props.payButton({ status, label: i18n.get('confirmPurchase') })}\n </div>\n );\n}\n\nAchInput.defaultProps = defaultProps;\n\nexport default AchInput;\n\nconst extractPropsForSFP = (props: ACHInputProps) => {\n return {\n autoFocus: props.autoFocus,\n clientKey: props.clientKey,\n i18n: props.i18n,\n keypadFix: props.keypadFix,\n legacyInputMode: props.legacyInputMode,\n loadingContext: props.loadingContext,\n onAllValid: props.onAllValid,\n onConfigSuccess: props.onConfigSuccess,\n onError: props.onError,\n onFieldValid: props.onFieldValid,\n onFocus: props.onFocus,\n onLoad: props.onLoad,\n showWarnings: props.showWarnings,\n styles: props.styles,\n type: props.type,\n forceCompat: props.forceCompat,\n resources: props.resources,\n placeholders: props.placeholders\n };\n};\n"],"names":["validateHolderName","holderName","holderNameRequired","trim","length","AchInput","props","i18n","useCoreContext","holderNameIsValid","hasHolderName","data","errors","setErrors","useState","valid","setValid","_object_spread","setData","billingAddress","setBillingAddress","billingAddressRequired","isSfpValid","setIsSfpValid","focusedElement","setFocusedElement","storePaymentMethod","setStorePaymentMethod","handleAddress","address","_object_spread_props","isValid","handleHolderName","e","target","value","sfp","useRef","billingAddressRef","setAddressRef","ref","current","status","setStatus","achRef","Object","keys","setComponentRef","showValidation","useEffect","this","setFocusOn","updateStyles","destroy","holderNameValid","sfpValid","billingAddressValid","Boolean","onChange","h","div","className","showFormInstruction","FormInstruction","SecuredFieldsProvider","extractPropsForSFP","styles","defaultStyles","newState","sfState","tempHolderName","autoCompleteName","onFocus","isFocused","focus","currentFocusObject","onBlur","render","setRootNode","sfpState","LoadingWrapper","classNames","get","Field","label","errorMessage","showContextualElement","contextualText","name","InputText","placeholder","placeholders","required","onInput","AchSecuredFields","onFocusField","Address","allowedCountries","billingAddressAllowedCountries","requiredFields","billingAddressRequiredFields","enableStoreDetails","StoreDetails","showPayButton","payButton","defaultProps","autoFocus","clientKey","keypadFix","legacyInputMode","loadingContext","onAllValid","onConfigSuccess","onError","onFieldValid","onLoad","showWarnings","type","forceCompat","resources"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{createElement as e}from"../../external/preact/dist/preact.js";import{UIElement as t}from"../internal/UIElement/UIElement.js";import r from"../internal/Address/Address.js";import{CoreProvider as n}from"../../core/Context/CoreProvider.js";import{TxVariants as o}from"../tx-variants.js";function s(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function i(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){s(e,t,r[t])}))}return e}function
|
|
1
|
+
import{createElement as e}from"../../external/preact/dist/preact.js";import{UIElement as t}from"../internal/UIElement/UIElement.js";import r from"../internal/Address/Address.js";import{CoreProvider as n}from"../../core/Context/CoreProvider.js";import{TxVariants as o}from"../tx-variants.js";function s(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function i(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){s(e,t,r[t])}))}return e}function a(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r.push.apply(r,n)}return r}(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})),e}class c extends t{get data(){return this.state.data}get isValid(){return!!this.state.isValid}render(){return e(n,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},e(r,i(a(i({setComponentRef:this.setComponentRef},this.props),{onChange:this.setState}),!1)))}}s(c,"type",o.address);export{c as AddressElement,c as default};
|
|
2
2
|
//# sourceMappingURL=Address.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Address.js","sources":["../../../../src/components/Address/Address.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport Address from '../internal/Address';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport { TxVariants } from '../tx-variants';\n\nexport class AddressElement extends UIElement {\n public static type = TxVariants.address;\n\n get data() {\n return this.state.data;\n }\n\n get isValid() {\n return !!this.state.isValid;\n }\n\n render() {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <Address\n setComponentRef={this.setComponentRef}\n {...this.props}\n onChange={this.setState}\n {...(process.env.NODE_ENV !== 'production' && { payButton: this.payButton })}\n />\n </CoreProvider>\n );\n }\n}\n\nexport default AddressElement;\n"],"names":["AddressElement","UIElement","data","this","state","isValid","render","h","CoreProvider","i18n","props","loadingContext","resources","Address","setComponentRef","onChange","setState","_define_property","type","TxVariants","address"],"mappings":"
|
|
1
|
+
{"version":3,"file":"Address.js","sources":["../../../../src/components/Address/Address.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport Address from '../internal/Address';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport { TxVariants } from '../tx-variants';\n\nexport class AddressElement extends UIElement {\n public static type = TxVariants.address;\n\n get data() {\n return this.state.data;\n }\n\n get isValid() {\n return !!this.state.isValid;\n }\n\n render() {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <Address\n setComponentRef={this.setComponentRef}\n {...this.props}\n onChange={this.setState}\n {...(process.env.NODE_ENV !== 'production' && { payButton: this.payButton })}\n />\n </CoreProvider>\n );\n }\n}\n\nexport default AddressElement;\n"],"names":["AddressElement","UIElement","data","this","state","isValid","render","h","CoreProvider","i18n","props","loadingContext","resources","Address","setComponentRef","onChange","setState","_define_property","type","TxVariants","address"],"mappings":"olCAMO,MAAMA,UAAuBC,EAGhC,QAAIC,GACA,OAAOC,KAAKC,MAAMF,IACtB,CAEA,WAAIG,GACA,QAASF,KAAKC,MAAMC,OACxB,CAEAC,MAAAA,GACI,OACIC,EAACC,EAAAA,CAAaC,KAAMN,KAAKO,MAAMD,KAAME,eAAgBR,KAAKO,MAAMC,eAAgBC,UAAWT,KAAKS,WAC5FL,EAACM,EAAAA,EAAAA,EAAAA,EAAAA,CACGC,gBAAiBX,KAAKW,iBAClBX,KAAKO,OAAK,CACdK,SAAUZ,KAAKa,YACV,IAIrB,EArBAC,EADSjB,EACKkB,OAAOC,EAAWC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import e from"../helpers/OpenInvoiceContainer/OpenInvoiceContainer.js";import{ALLOWED_COUNTRIES as r}from"./config.js";import{TxVariants as t}from"../tx-variants.js";function n(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function o(e,r){return r=null!=r?r:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):function(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);
|
|
1
|
+
import e from"../helpers/OpenInvoiceContainer/OpenInvoiceContainer.js";import{ALLOWED_COUNTRIES as r}from"./config.js";import{TxVariants as t}from"../tx-variants.js";function n(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function o(e,r){return r=null!=r?r:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):function(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t}(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})),e}class i extends e{formatProps(e){return o(function(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{},o=Object.keys(t);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(t).filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})))),o.forEach((function(r){n(e,r,t[r])}))}return e}({},super.formatProps(e)),{allowedCountries:r,personalDetailsRequiredFields:["firstName","lastName","telephoneNumber","shopperEmail"]})}}n(i,"type",t.affirm);export{i as default};
|
|
2
2
|
//# sourceMappingURL=Affirm.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Affirm.js","sources":["../../../../src/components/Affirm/Affirm.tsx"],"sourcesContent":["import OpenInvoiceContainer from '../helpers/OpenInvoiceContainer';\nimport { ALLOWED_COUNTRIES } from './config';\nimport { TxVariants } from '../tx-variants';\n\nexport default class Affirm extends OpenInvoiceContainer {\n public static type = TxVariants.affirm;\n\n formatProps(props) {\n return {\n ...super.formatProps(props),\n allowedCountries: ALLOWED_COUNTRIES,\n personalDetailsRequiredFields: ['firstName', 'lastName', 'telephoneNumber', 'shopperEmail']\n };\n }\n}\n"],"names":["Affirm","OpenInvoiceContainer","formatProps","props","_object_spread_props","_object_spread","super","allowedCountries","ALLOWED_COUNTRIES","personalDetailsRequiredFields","_define_property","type","TxVariants","affirm"],"mappings":"
|
|
1
|
+
{"version":3,"file":"Affirm.js","sources":["../../../../src/components/Affirm/Affirm.tsx"],"sourcesContent":["import OpenInvoiceContainer from '../helpers/OpenInvoiceContainer';\nimport { ALLOWED_COUNTRIES } from './config';\nimport { TxVariants } from '../tx-variants';\n\nexport default class Affirm extends OpenInvoiceContainer {\n public static type = TxVariants.affirm;\n\n formatProps(props) {\n return {\n ...super.formatProps(props),\n allowedCountries: ALLOWED_COUNTRIES,\n personalDetailsRequiredFields: ['firstName', 'lastName', 'telephoneNumber', 'shopperEmail']\n };\n }\n}\n"],"names":["Affirm","OpenInvoiceContainer","formatProps","props","_object_spread_props","_object_spread","super","allowedCountries","ALLOWED_COUNTRIES","personalDetailsRequiredFields","_define_property","type","TxVariants","affirm"],"mappings":"+oBAIe,MAAMA,UAAeC,EAGhCC,WAAAA,CAAYC,GACR,OAAOC,wUAAAC,CAAA,CAAA,EACAC,MAAMJ,YAAYC,IAAAA,CACrBI,iBAAkBC,EAClBC,8BAA+B,CAAC,YAAa,WAAY,kBAAmB,iBAEpF,EARAC,EADiBV,EACHW,OAAOC,EAAWC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{createElement as e}from"../../external/preact/dist/preact.js";import t from"../helpers/OpenInvoiceContainer/OpenInvoiceContainer.js";import r from"../internal/ConsentCheckboxLabel/ConsentCheckboxLabel.js";import{ALLOWED_COUNTRIES as
|
|
1
|
+
import{createElement as e}from"../../external/preact/dist/preact.js";import t from"../helpers/OpenInvoiceContainer/OpenInvoiceContainer.js";import r from"../internal/ConsentCheckboxLabel/ConsentCheckboxLabel.js";import{ALLOWED_COUNTRIES as o,rivertyConsentUrlMap as n}from"./config.js";import{getConsentUrl as c}from"../../utils/getConsentUrl.js";import{TxVariants as a}from"../tx-variants.js";function i(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function p(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r.push.apply(r,o)}return r}(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})),e}class s extends t{formatProps(t){var a;return p(function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},o=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),o.forEach((function(t){i(e,t,r[t])}))}return e}({},super.formatProps(t)),{allowedCountries:t.countryCode?[t.countryCode]:o,consentCheckboxLabel:e(r,{url:c(t.countryCode,null===(a=t.i18n)||void 0===a?void 0:a.locale,n)})})}}i(s,"type",a.afterpay_default),i(s,"txVariants",[a.afterpay_default,a.afterpay]);export{s as default};
|
|
2
2
|
//# sourceMappingURL=AfterPay.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AfterPay.js","sources":["../../../../src/components/AfterPay/AfterPay.tsx"],"sourcesContent":["import { h } from 'preact';\nimport OpenInvoiceContainer from '../helpers/OpenInvoiceContainer';\nimport ConsentCheckboxLabel from '../internal/ConsentCheckboxLabel';\nimport { ALLOWED_COUNTRIES, rivertyConsentUrlMap } from './config';\nimport { getConsentUrl } from '../../utils/getConsentUrl';\nimport { TxVariants } from '../tx-variants';\n\nexport default class AfterPay extends OpenInvoiceContainer {\n public static type = TxVariants.afterpay_default;\n public static txVariants = [TxVariants.afterpay_default, TxVariants.afterpay];\n\n formatProps(props) {\n return {\n ...super.formatProps(props),\n allowedCountries: props.countryCode ? [props.countryCode] : ALLOWED_COUNTRIES,\n consentCheckboxLabel: <ConsentCheckboxLabel url={getConsentUrl(props.countryCode, props.i18n?.locale, rivertyConsentUrlMap)} />\n };\n }\n}\n"],"names":["AfterPay","OpenInvoiceContainer","formatProps","props","_object_spread_props","_object_spread","super","allowedCountries","countryCode","ALLOWED_COUNTRIES","consentCheckboxLabel","h","ConsentCheckboxLabel","url","getConsentUrl","i18n","locale","rivertyConsentUrlMap","_define_property","type","TxVariants","afterpay_default","txVariants","afterpay"],"mappings":"
|
|
1
|
+
{"version":3,"file":"AfterPay.js","sources":["../../../../src/components/AfterPay/AfterPay.tsx"],"sourcesContent":["import { h } from 'preact';\nimport OpenInvoiceContainer from '../helpers/OpenInvoiceContainer';\nimport ConsentCheckboxLabel from '../internal/ConsentCheckboxLabel';\nimport { ALLOWED_COUNTRIES, rivertyConsentUrlMap } from './config';\nimport { getConsentUrl } from '../../utils/getConsentUrl';\nimport { TxVariants } from '../tx-variants';\n\nexport default class AfterPay extends OpenInvoiceContainer {\n public static type = TxVariants.afterpay_default;\n public static txVariants = [TxVariants.afterpay_default, TxVariants.afterpay];\n\n formatProps(props) {\n return {\n ...super.formatProps(props),\n allowedCountries: props.countryCode ? [props.countryCode] : ALLOWED_COUNTRIES,\n consentCheckboxLabel: <ConsentCheckboxLabel url={getConsentUrl(props.countryCode, props.i18n?.locale, rivertyConsentUrlMap)} />\n };\n }\n}\n"],"names":["AfterPay","OpenInvoiceContainer","formatProps","props","_object_spread_props","_object_spread","super","allowedCountries","countryCode","ALLOWED_COUNTRIES","consentCheckboxLabel","h","ConsentCheckboxLabel","url","getConsentUrl","i18n","locale","rivertyConsentUrlMap","_define_property","type","TxVariants","afterpay_default","txVariants","afterpay"],"mappings":"m3BAOe,MAAMA,UAAiBC,EAIlCC,WAAAA,CAAYC,GAI8EA,IAAAA,EAHtF,OAAOC,wUAAAC,CAAA,CAAA,EACAC,MAAMJ,YAAYC,IAAAA,CACrBI,iBAAkBJ,EAAMK,YAAc,CAACL,EAAMK,aAAeC,EAC5DC,qBAAsBC,EAACC,EAAAA,CAAqBC,IAAKC,EAAcX,EAAMK,YAAaL,QAAAA,EAAAA,EAAMY,YAANZ,IAAAA,OAAAA,EAAAA,EAAYa,OAAQC,MAE9G,EATAC,EADiBlB,EACHmB,OAAOC,EAAWC,kBAChCH,EAFiBlB,EAEHsB,aAAa,CAACF,EAAWC,iBAAkBD,EAAWG"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import e from"../helpers/OpenInvoiceContainer/OpenInvoiceContainer.js";import{TxVariants as
|
|
1
|
+
import e from"../helpers/OpenInvoiceContainer/OpenInvoiceContainer.js";import{TxVariants as t}from"../tx-variants.js";import{ALLOWED_COUNTRIES as r}from"./config.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}function o(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r.push.apply(r,n)}return r}(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})),e}class i extends e{formatProps(e){return o(function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},o=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),o.forEach((function(t){n(e,t,r[t])}))}return e}({},super.formatProps(e)),{allowedCountries:e.countryCode?[e.countryCode]:r})}}n(i,"type",t.afterpay_b2b),n(i,"defaultProps",{onChange:()=>{},data:{companyDetails:{},personalDetails:{},billingAddress:{},deliveryAddress:{}},visibility:{companyDetails:"editable",personalDetails:"editable",billingAddress:"editable",deliveryAddress:"editable"},showFormInstruction:!0});export{i as default};
|
|
2
2
|
//# sourceMappingURL=AfterPayB2B.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AfterPayB2B.js","sources":["../../../../src/components/AfterPay/AfterPayB2B.tsx"],"sourcesContent":["import OpenInvoiceContainer from '../helpers/OpenInvoiceContainer';\nimport { TxVariants } from '../tx-variants';\nimport { OpenInvoiceConfiguration } from '../helpers/OpenInvoiceContainer/types';\nimport { ALLOWED_COUNTRIES } from './config';\n\nexport default class AfterPayB2B extends OpenInvoiceContainer {\n public static type = TxVariants.afterpay_b2b;\n\n protected static defaultProps: Partial<OpenInvoiceConfiguration> = {\n onChange: () => {},\n data: { companyDetails: {}, personalDetails: {}, billingAddress: {}, deliveryAddress: {} },\n visibility: {\n companyDetails: 'editable',\n personalDetails: 'editable',\n billingAddress: 'editable',\n deliveryAddress: 'editable'\n },\n showFormInstruction: true\n };\n\n formatProps(props) {\n return {\n ...super.formatProps(props),\n allowedCountries: props.countryCode ? [props.countryCode] : ALLOWED_COUNTRIES\n };\n }\n}\n"],"names":["AfterPayB2B","OpenInvoiceContainer","formatProps","props","_object_spread_props","_object_spread","super","allowedCountries","countryCode","ALLOWED_COUNTRIES","_define_property","type","TxVariants","afterpay_b2b","defaultProps","onChange","data","companyDetails","personalDetails","billingAddress","deliveryAddress","visibility","showFormInstruction"],"mappings":"
|
|
1
|
+
{"version":3,"file":"AfterPayB2B.js","sources":["../../../../src/components/AfterPay/AfterPayB2B.tsx"],"sourcesContent":["import OpenInvoiceContainer from '../helpers/OpenInvoiceContainer';\nimport { TxVariants } from '../tx-variants';\nimport { OpenInvoiceConfiguration } from '../helpers/OpenInvoiceContainer/types';\nimport { ALLOWED_COUNTRIES } from './config';\n\nexport default class AfterPayB2B extends OpenInvoiceContainer {\n public static type = TxVariants.afterpay_b2b;\n\n protected static defaultProps: Partial<OpenInvoiceConfiguration> = {\n onChange: () => {},\n data: { companyDetails: {}, personalDetails: {}, billingAddress: {}, deliveryAddress: {} },\n visibility: {\n companyDetails: 'editable',\n personalDetails: 'editable',\n billingAddress: 'editable',\n deliveryAddress: 'editable'\n },\n showFormInstruction: true\n };\n\n formatProps(props) {\n return {\n ...super.formatProps(props),\n allowedCountries: props.countryCode ? [props.countryCode] : ALLOWED_COUNTRIES\n };\n }\n}\n"],"names":["AfterPayB2B","OpenInvoiceContainer","formatProps","props","_object_spread_props","_object_spread","super","allowedCountries","countryCode","ALLOWED_COUNTRIES","_define_property","type","TxVariants","afterpay_b2b","defaultProps","onChange","data","companyDetails","personalDetails","billingAddress","deliveryAddress","visibility","showFormInstruction"],"mappings":"+oBAKe,MAAMA,UAAoBC,EAerCC,WAAAA,CAAYC,GACR,OAAOC,wUAAAC,CAAA,CAAA,EACAC,MAAMJ,YAAYC,IAAAA,CACrBI,iBAAkBJ,EAAMK,YAAc,CAACL,EAAMK,aAAeC,GAEpE,EAnBAC,EADiBV,EACHW,OAAOC,EAAWC,cAEhCH,EAHiBV,EAGAc,eAAkD,CAC/DC,SAAU,OACVC,KAAM,CAAEC,eAAgB,CAAC,EAAGC,gBAAiB,CAAC,EAAGC,eAAgB,CAAC,EAAGC,gBAAiB,CAAC,GACvFC,WAAY,CACRJ,eAAgB,WAChBC,gBAAiB,WACjBC,eAAgB,WAChBC,gBAAiB,YAErBE,qBAAqB"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{createElement as e}from"../../external/preact/dist/preact.js";import{UIElement as t}from"../internal/UIElement/UIElement.js";import{CoreProvider as o}from"../../core/Context/CoreProvider.js";import r from"../../utils/browserInfo.js";import n from"./components/AmazonPayComponent.js";import s from"./defaultProps.js";import{getCheckoutDetails as i}from"./services.js";import{TxVariants as c}from"../tx-variants.js";import{sanitizeResponse as p,verifyPaymentDidNotFail as l}from"../internal/UIElement/utils.js";function a(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}function u(e){for(var t=1;t<arguments.length;t++){var o=null!=arguments[t]?arguments[t]:{},r=Object.keys(o);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(o).filter((function(e){return Object.getOwnPropertyDescriptor(o,e).enumerable})))),r.forEach((function(t){a(e,t,o[t])}))}return e}function h(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);
|
|
1
|
+
import{createElement as e}from"../../external/preact/dist/preact.js";import{UIElement as t}from"../internal/UIElement/UIElement.js";import{CoreProvider as o}from"../../core/Context/CoreProvider.js";import r from"../../utils/browserInfo.js";import n from"./components/AmazonPayComponent.js";import s from"./defaultProps.js";import{getCheckoutDetails as i}from"./services.js";import{TxVariants as c}from"../tx-variants.js";import{sanitizeResponse as p,verifyPaymentDidNotFail as l}from"../internal/UIElement/utils.js";function a(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}function u(e){for(var t=1;t<arguments.length;t++){var o=null!=arguments[t]?arguments[t]:{},r=Object.keys(o);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(o).filter((function(e){return Object.getOwnPropertyDescriptor(o,e).enumerable})))),r.forEach((function(t){a(e,t,o[t])}))}return e}function h(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);o.push.apply(o,r)}return o}(Object(t)).forEach((function(o){Object.defineProperty(e,o,Object.getOwnPropertyDescriptor(t,o))})),e}class d extends t{formatProps(e){return h(u({},e),{checkoutMode:e.isDropin?"ProcessOrder":e.checkoutMode,environment:e.environment.toUpperCase(),locale:e.locale.replace("-","_"),productType:e.isDropin&&!e.addressDetails?"PayOnly":e.productType})}formatData(){const{amazonCheckoutSessionId:e}=this.props;return{paymentMethod:u({type:d.type},e&&{checkoutSessionId:e}),browserInfo:this.browserInfo}}submitAnalytics(e){super.submitAnalytics(u({},e),this.props)}getShopperDetails(){const{amazonCheckoutSessionId:e,configuration:t={},loadingContext:o,clientKey:r}=this.props;if(!e)return console.error("Could not shopper details. Missing checkoutSessionId.");const n={checkoutSessionId:e,getDeliveryAddress:!0,publicKeyId:t.publicKeyId,region:t.region};return i(o,r,n)}handleDeclineFlow(){const{amazonCheckoutSessionId:e,configuration:t={},loadingContext:o,clientKey:r}=this.props;if(!e)return console.error("Could handle the decline flow. Missing checkoutSessionId.");const n={checkoutSessionId:e,getDeclineFlowUrl:!0,publicKeyId:t.publicKeyId,region:t.region};i(o,r,n).then(((e={})=>{if(!(null==e?void 0:e.declineFlowUrl))throw e;window.location.assign(e.declineFlowUrl)})).catch((e=>{this.props.onError&&this.props.onError(e,this.componentRef)}))}get isValid(){return!0}get browserInfo(){return r()}submit(){const e=this.componentRef&&this.componentRef.getSubmitFunction();if(e)return e();this.makePaymentsCall().then(p).then(l).then(this.handleResponse).catch(this.handleFailedResult)}render(){return e(o,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},e(n,u({ref:e=>{this.componentRef=e},showPayButton:this.props.showPayButton,onClick:this.props.onClick,onError:this.props.onError,onSignOut:this.props.onSignOut},this.props)))}}a(d,"type",c.amazonpay),a(d,"defaultProps",s);export{d as AmazonPayElement,d as default};
|
|
2
2
|
//# sourceMappingURL=AmazonPay.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AmazonPay.js","sources":["../../../../src/components/AmazonPay/AmazonPay.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport collectBrowserInfo from '../../utils/browserInfo';\nimport AmazonPayComponent from './components/AmazonPayComponent';\nimport { AmazonPayElementData, AmazonPayConfiguration, CheckoutDetailsRequest } from './types';\nimport defaultProps from './defaultProps';\nimport { getCheckoutDetails } from './services';\nimport './AmazonPay.scss';\nimport { TxVariants } from '../tx-variants';\nimport { sanitizeResponse, verifyPaymentDidNotFail } from '../internal/UIElement/utils';\nimport { SendAnalyticsObject } from '../../core/Analytics/types';\n\nexport class AmazonPayElement extends UIElement<AmazonPayConfiguration> {\n public static type = TxVariants.amazonpay;\n\n protected static defaultProps = defaultProps;\n\n formatProps(props) {\n return {\n ...props,\n checkoutMode: props.isDropin ? 'ProcessOrder' : props.checkoutMode,\n environment: props.environment.toUpperCase(),\n locale: props.locale.replace('-', '_'),\n productType: props.isDropin && !props.addressDetails ? 'PayOnly' : props.productType\n };\n }\n\n /**\n * Formats the component data output\n */\n formatData(): AmazonPayElementData {\n const { amazonCheckoutSessionId: checkoutSessionId } = this.props;\n return {\n paymentMethod: {\n type: AmazonPayElement.type,\n ...(checkoutSessionId && { checkoutSessionId })\n },\n browserInfo: this.browserInfo\n };\n }\n\n protected submitAnalytics(analyticsObj: SendAnalyticsObject) {\n // Analytics will need to know about this.props.isExpress & this.props.expressPage\n super.submitAnalytics({ ...analyticsObj }, this.props);\n }\n\n getShopperDetails() {\n const { amazonCheckoutSessionId, configuration = {}, loadingContext, clientKey } = this.props;\n if (!amazonCheckoutSessionId) return console.error('Could not shopper details. Missing checkoutSessionId.');\n\n const request: CheckoutDetailsRequest = {\n checkoutSessionId: amazonCheckoutSessionId,\n getDeliveryAddress: true,\n publicKeyId: configuration.publicKeyId,\n region: configuration.region\n };\n\n return getCheckoutDetails(loadingContext, clientKey, request);\n }\n\n public handleDeclineFlow() {\n const { amazonCheckoutSessionId, configuration = {}, loadingContext, clientKey } = this.props;\n if (!amazonCheckoutSessionId) return console.error('Could handle the decline flow. Missing checkoutSessionId.');\n\n const request: CheckoutDetailsRequest = {\n checkoutSessionId: amazonCheckoutSessionId,\n getDeclineFlowUrl: true,\n publicKeyId: configuration.publicKeyId,\n region: configuration.region\n };\n\n getCheckoutDetails(loadingContext, clientKey, request)\n .then((response = {}) => {\n if (!response?.declineFlowUrl) throw response;\n window.location.assign(response.declineFlowUrl);\n })\n .catch(error => {\n if (this.props.onError) this.props.onError(error, this.componentRef);\n });\n }\n\n get isValid() {\n return true;\n }\n\n get browserInfo() {\n return collectBrowserInfo();\n }\n\n public submit(): void {\n const amazonComponentSubmit = this.componentRef && this.componentRef.getSubmitFunction();\n if (amazonComponentSubmit) {\n return amazonComponentSubmit();\n }\n this.makePaymentsCall().then(sanitizeResponse).then(verifyPaymentDidNotFail).then(this.handleResponse).catch(this.handleFailedResult);\n }\n\n render() {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <AmazonPayComponent\n ref={ref => {\n this.componentRef = ref;\n }}\n showPayButton={this.props.showPayButton}\n onClick={this.props.onClick}\n onError={this.props.onError}\n onSignOut={this.props.onSignOut}\n {...this.props}\n />\n </CoreProvider>\n );\n }\n}\n\nexport default AmazonPayElement;\n"],"names":["AmazonPayElement","UIElement","formatProps","props","_object_spread_props","checkoutMode","isDropin","environment","toUpperCase","locale","replace","productType","addressDetails","formatData","amazonCheckoutSessionId","checkoutSessionId","this","paymentMethod","_object_spread","type","browserInfo","submitAnalytics","analyticsObj","super","getShopperDetails","configuration","loadingContext","clientKey","console","error","request","getDeliveryAddress","publicKeyId","region","getCheckoutDetails","handleDeclineFlow","getDeclineFlowUrl","then","response","declineFlowUrl","window","location","assign","catch","onError","componentRef","isValid","collectBrowserInfo","submit","amazonComponentSubmit","getSubmitFunction","makePaymentsCall","sanitizeResponse","verifyPaymentDidNotFail","handleResponse","handleFailedResult","render","h","CoreProvider","i18n","resources","AmazonPayComponent","ref","showPayButton","onClick","onSignOut","_define_property","TxVariants","amazonpay","defaultProps"],"mappings":"
|
|
1
|
+
{"version":3,"file":"AmazonPay.js","sources":["../../../../src/components/AmazonPay/AmazonPay.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport collectBrowserInfo from '../../utils/browserInfo';\nimport AmazonPayComponent from './components/AmazonPayComponent';\nimport { AmazonPayElementData, AmazonPayConfiguration, CheckoutDetailsRequest } from './types';\nimport defaultProps from './defaultProps';\nimport { getCheckoutDetails } from './services';\nimport './AmazonPay.scss';\nimport { TxVariants } from '../tx-variants';\nimport { sanitizeResponse, verifyPaymentDidNotFail } from '../internal/UIElement/utils';\nimport { SendAnalyticsObject } from '../../core/Analytics/types';\n\nexport class AmazonPayElement extends UIElement<AmazonPayConfiguration> {\n public static type = TxVariants.amazonpay;\n\n protected static defaultProps = defaultProps;\n\n formatProps(props) {\n return {\n ...props,\n checkoutMode: props.isDropin ? 'ProcessOrder' : props.checkoutMode,\n environment: props.environment.toUpperCase(),\n locale: props.locale.replace('-', '_'),\n productType: props.isDropin && !props.addressDetails ? 'PayOnly' : props.productType\n };\n }\n\n /**\n * Formats the component data output\n */\n formatData(): AmazonPayElementData {\n const { amazonCheckoutSessionId: checkoutSessionId } = this.props;\n return {\n paymentMethod: {\n type: AmazonPayElement.type,\n ...(checkoutSessionId && { checkoutSessionId })\n },\n browserInfo: this.browserInfo\n };\n }\n\n protected submitAnalytics(analyticsObj: SendAnalyticsObject) {\n // Analytics will need to know about this.props.isExpress & this.props.expressPage\n super.submitAnalytics({ ...analyticsObj }, this.props);\n }\n\n getShopperDetails() {\n const { amazonCheckoutSessionId, configuration = {}, loadingContext, clientKey } = this.props;\n if (!amazonCheckoutSessionId) return console.error('Could not shopper details. Missing checkoutSessionId.');\n\n const request: CheckoutDetailsRequest = {\n checkoutSessionId: amazonCheckoutSessionId,\n getDeliveryAddress: true,\n publicKeyId: configuration.publicKeyId,\n region: configuration.region\n };\n\n return getCheckoutDetails(loadingContext, clientKey, request);\n }\n\n public handleDeclineFlow() {\n const { amazonCheckoutSessionId, configuration = {}, loadingContext, clientKey } = this.props;\n if (!amazonCheckoutSessionId) return console.error('Could handle the decline flow. Missing checkoutSessionId.');\n\n const request: CheckoutDetailsRequest = {\n checkoutSessionId: amazonCheckoutSessionId,\n getDeclineFlowUrl: true,\n publicKeyId: configuration.publicKeyId,\n region: configuration.region\n };\n\n getCheckoutDetails(loadingContext, clientKey, request)\n .then((response = {}) => {\n if (!response?.declineFlowUrl) throw response;\n window.location.assign(response.declineFlowUrl);\n })\n .catch(error => {\n if (this.props.onError) this.props.onError(error, this.componentRef);\n });\n }\n\n get isValid() {\n return true;\n }\n\n get browserInfo() {\n return collectBrowserInfo();\n }\n\n public submit(): void {\n const amazonComponentSubmit = this.componentRef && this.componentRef.getSubmitFunction();\n if (amazonComponentSubmit) {\n return amazonComponentSubmit();\n }\n this.makePaymentsCall().then(sanitizeResponse).then(verifyPaymentDidNotFail).then(this.handleResponse).catch(this.handleFailedResult);\n }\n\n render() {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <AmazonPayComponent\n ref={ref => {\n this.componentRef = ref;\n }}\n showPayButton={this.props.showPayButton}\n onClick={this.props.onClick}\n onError={this.props.onError}\n onSignOut={this.props.onSignOut}\n {...this.props}\n />\n </CoreProvider>\n );\n }\n}\n\nexport default AmazonPayElement;\n"],"names":["AmazonPayElement","UIElement","formatProps","props","_object_spread_props","checkoutMode","isDropin","environment","toUpperCase","locale","replace","productType","addressDetails","formatData","amazonCheckoutSessionId","checkoutSessionId","this","paymentMethod","_object_spread","type","browserInfo","submitAnalytics","analyticsObj","super","getShopperDetails","configuration","loadingContext","clientKey","console","error","request","getDeliveryAddress","publicKeyId","region","getCheckoutDetails","handleDeclineFlow","getDeclineFlowUrl","then","response","declineFlowUrl","window","location","assign","catch","onError","componentRef","isValid","collectBrowserInfo","submit","amazonComponentSubmit","getSubmitFunction","makePaymentsCall","sanitizeResponse","verifyPaymentDidNotFail","handleResponse","handleFailedResult","render","h","CoreProvider","i18n","resources","AmazonPayComponent","ref","showPayButton","onClick","onSignOut","_define_property","TxVariants","amazonpay","defaultProps"],"mappings":"qzCAaO,MAAMA,UAAyBC,EAKlCC,WAAAA,CAAYC,GACR,OAAOC,EACAD,EAAAA,CAAAA,EAAAA,GAAAA,CACHE,aAAcF,EAAMG,SAAW,eAAiBH,EAAME,aACtDE,YAAaJ,EAAMI,YAAYC,cAC/BC,OAAQN,EAAMM,OAAOC,QAAQ,IAAK,KAClCC,YAAaR,EAAMG,WAAaH,EAAMS,eAAiB,UAAYT,EAAMQ,aAEjF,CAKAE,UAAAA,GACI,MAAQC,wBAAyBC,GAAsBC,KAAKb,MAC5D,MAAO,CACHc,cAAeC,EAAA,CACXC,KAAMnB,EAAiBmB,MACnBJ,GAAqB,CAAEA,sBAE/BK,YAAaJ,KAAKI,YAE1B,CAEUC,eAAAA,CAAgBC,GAEtBC,MAAMF,gBAAgBH,EAAA,CAAA,EAAKI,GAAgBN,KAAKb,MACpD,CAEAqB,iBAAAA,GACI,MAAMV,wBAAEA,EAAuBW,cAAEA,EAAgB,CAAE,EAAAC,eAAEA,EAAcC,UAAEA,GAAcX,KAAKb,MACxF,IAAKW,EAAyB,OAAOc,QAAQC,MAAM,yDAEnD,MAAMC,EAAkC,CACpCf,kBAAmBD,EACnBiB,oBAAoB,EACpBC,YAAaP,EAAcO,YAC3BC,OAAQR,EAAcQ,QAG1B,OAAOC,EAAmBR,EAAgBC,EAAWG,EACzD,CAEOK,iBAAAA,GACH,MAAMrB,wBAAEA,EAAuBW,cAAEA,EAAgB,CAAE,EAAAC,eAAEA,EAAcC,UAAEA,GAAcX,KAAKb,MACxF,IAAKW,EAAyB,OAAOc,QAAQC,MAAM,6DAEnD,MAAMC,EAAkC,CACpCf,kBAAmBD,EACnBsB,mBAAmB,EACnBJ,YAAaP,EAAcO,YAC3BC,OAAQR,EAAcQ,QAG1BC,EAAmBR,EAAgBC,EAAWG,GACzCO,MAAK,CAACC,EAAW,MACd,KAAKA,aAAAA,EAAAA,EAAUC,gBAAgB,MAAMD,EACrCE,OAAOC,SAASC,OAAOJ,EAASC,eAAc,IAEjDI,OAAMd,IACCb,KAAKb,MAAMyC,SAAS5B,KAAKb,MAAMyC,QAAQf,EAAOb,KAAK6B,aAAY,GAE/E,CAEA,WAAIC,GACA,OAAO,CACX,CAEA,eAAI1B,GACA,OAAO2B,GACX,CAEOC,MAAAA,GACH,MAAMC,EAAwBjC,KAAK6B,cAAgB7B,KAAK6B,aAAaK,oBACrE,GAAID,EACA,OAAOA,IAEXjC,KAAKmC,mBAAmBd,KAAKe,GAAkBf,KAAKgB,GAAyBhB,KAAKrB,KAAKsC,gBAAgBX,MAAM3B,KAAKuC,mBACtH,CAEAC,MAAAA,GACI,OACIC,EAACC,EAAAA,CAAaC,KAAM3C,KAAKb,MAAMwD,KAAMjC,eAAgBV,KAAKb,MAAMuB,eAAgBkC,UAAW5C,KAAK4C,WAC5FH,EAACI,EAAAA,EAAAA,CACGC,IAAKA,IACD9C,KAAK6B,aAAeiB,CAAAA,EAExBC,cAAe/C,KAAKb,MAAM4D,cAC1BC,QAAShD,KAAKb,MAAM6D,QACpBpB,QAAS5B,KAAKb,MAAMyC,QACpBqB,UAAWjD,KAAKb,MAAM8D,WAClBjD,KAAKb,QAIzB,EAnGA+D,EADSlE,EACKmB,OAAOgD,EAAWC,WAEhCF,EAHSlE,EAGQqE,eAAeA"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{createElement as
|
|
1
|
+
import{createElement as t}from"../../../external/preact/dist/preact.js";import{useState as e,useEffect as r}from"../../../external/preact/hooks/dist/hooks.js";import{getAmazonSignature as o}from"../services.js";import{getPayloadJSON as n,getAmazonPaySettings as c}from"../utils.js";import{useCoreContext as i}from"../../../core/Context/CoreProvider.js";function a(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function s(t,e){return e=null!=e?e:{},Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(e)):function(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);r.push.apply(r,o)}return r}(Object(e)).forEach((function(r){Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(e,r))})),t}function u(u){const{loadingContext:l}=i(),{amazonRef:f,configuration:p={}}=u,[y,m]=e(null),b=n(u),O=c(u),h=()=>{new Promise(u.onClick).then(this.initCheckout).catch((t=>{u.onError&&u.onError(t,this.componentRef)}))};return this.initCheckout=()=>{const t={payloadJSON:JSON.stringify(b),publicKeyId:p.publicKeyId,signature:y};f.Pay.initCheckout(s(function(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{},o=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(r).filter((function(t){return Object.getOwnPropertyDescriptor(r,t).enumerable})))),o.forEach((function(e){a(t,e,r[e])}))}return t}({},O),{createCheckoutSessionConfig:t}))},r((()=>{const{clientKey:t}=u;o(l,t,b).then((t=>{if(!(null==t?void 0:t.signature))return console.error("Could not get AmazonPay signature");m(t.signature),u.showPayButton&&f.Pay.renderButton("#amazonPayButton",O).onClick(h)})).catch((t=>{console.error(t),u.onError&&u.onError(t,this.componentRef)}))}),[]),u.showPayButton?t("div",{className:"adyen-checkout__amazonpay__button",id:"amazonPayButton"}):null}export{u as default};
|
|
2
2
|
//# sourceMappingURL=AmazonPayButton.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AmazonPayButton.js","sources":["../../../../../src/components/AmazonPay/components/AmazonPayButton.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { useEffect, useState } from 'preact/hooks';\nimport { getAmazonSignature } from '../services';\nimport { getAmazonPaySettings, getPayloadJSON } from '../utils';\nimport { AmazonPayButtonProps, CheckoutSessionConfig, PayloadJSON } from '../types';\nimport { useCoreContext } from '../../../core/Context/CoreProvider';\n\nexport default function AmazonPayButton(props: AmazonPayButtonProps) {\n const { loadingContext } = useCoreContext();\n const { amazonRef, configuration = {} } = props;\n const [signature, setSignature] = useState<string>(null);\n const payloadJSON: PayloadJSON = getPayloadJSON(props);\n const settings = getAmazonPaySettings(props);\n\n const handleOnClick = () => {\n new Promise(props.onClick).then(this.initCheckout).catch(error => {\n if (props.onError) props.onError(error, this.componentRef);\n });\n };\n\n const renderAmazonPayButton = (): void => {\n const amazonPayButton = amazonRef.Pay.renderButton('#amazonPayButton', settings);\n amazonPayButton.onClick(handleOnClick);\n };\n\n this.initCheckout = () => {\n const checkoutSessionConfig: CheckoutSessionConfig = {\n payloadJSON: JSON.stringify(payloadJSON),\n publicKeyId: configuration.publicKeyId,\n signature\n };\n\n amazonRef.Pay.initCheckout({\n ...settings,\n createCheckoutSessionConfig: checkoutSessionConfig\n });\n };\n\n useEffect(() => {\n const { clientKey } = props;\n\n getAmazonSignature(loadingContext, clientKey, payloadJSON)\n .then(response => {\n if (!response?.signature) return console.error('Could not get AmazonPay signature');\n setSignature(response.signature);\n if (props.showPayButton) renderAmazonPayButton();\n })\n .catch(error => {\n console.error(error);\n if (props.onError) props.onError(error, this.componentRef);\n });\n }, []);\n\n if (!props.showPayButton) return null;\n return <div className=\"adyen-checkout__amazonpay__button\" id=\"amazonPayButton\" />;\n}\n"],"names":["AmazonPayButton","props","loadingContext","useCoreContext","amazonRef","configuration","signature","setSignature","useState","payloadJSON","getPayloadJSON","settings","getAmazonPaySettings","handleOnClick","Promise","onClick","then","this","initCheckout","catch","error","onError","componentRef","checkoutSessionConfig","JSON","stringify","publicKeyId","Pay","_object_spread_props","createCheckoutSessionConfig","useEffect","clientKey","getAmazonSignature","response","console","showPayButton","renderButton","renderAmazonPayButton","h","div","className","id"],"mappings":"
|
|
1
|
+
{"version":3,"file":"AmazonPayButton.js","sources":["../../../../../src/components/AmazonPay/components/AmazonPayButton.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { useEffect, useState } from 'preact/hooks';\nimport { getAmazonSignature } from '../services';\nimport { getAmazonPaySettings, getPayloadJSON } from '../utils';\nimport { AmazonPayButtonProps, CheckoutSessionConfig, PayloadJSON } from '../types';\nimport { useCoreContext } from '../../../core/Context/CoreProvider';\n\nexport default function AmazonPayButton(props: AmazonPayButtonProps) {\n const { loadingContext } = useCoreContext();\n const { amazonRef, configuration = {} } = props;\n const [signature, setSignature] = useState<string>(null);\n const payloadJSON: PayloadJSON = getPayloadJSON(props);\n const settings = getAmazonPaySettings(props);\n\n const handleOnClick = () => {\n new Promise(props.onClick).then(this.initCheckout).catch(error => {\n if (props.onError) props.onError(error, this.componentRef);\n });\n };\n\n const renderAmazonPayButton = (): void => {\n const amazonPayButton = amazonRef.Pay.renderButton('#amazonPayButton', settings);\n amazonPayButton.onClick(handleOnClick);\n };\n\n this.initCheckout = () => {\n const checkoutSessionConfig: CheckoutSessionConfig = {\n payloadJSON: JSON.stringify(payloadJSON),\n publicKeyId: configuration.publicKeyId,\n signature\n };\n\n amazonRef.Pay.initCheckout({\n ...settings,\n createCheckoutSessionConfig: checkoutSessionConfig\n });\n };\n\n useEffect(() => {\n const { clientKey } = props;\n\n getAmazonSignature(loadingContext, clientKey, payloadJSON)\n .then(response => {\n if (!response?.signature) return console.error('Could not get AmazonPay signature');\n setSignature(response.signature);\n if (props.showPayButton) renderAmazonPayButton();\n })\n .catch(error => {\n console.error(error);\n if (props.onError) props.onError(error, this.componentRef);\n });\n }, []);\n\n if (!props.showPayButton) return null;\n return <div className=\"adyen-checkout__amazonpay__button\" id=\"amazonPayButton\" />;\n}\n"],"names":["AmazonPayButton","props","loadingContext","useCoreContext","amazonRef","configuration","signature","setSignature","useState","payloadJSON","getPayloadJSON","settings","getAmazonPaySettings","handleOnClick","Promise","onClick","then","this","initCheckout","catch","error","onError","componentRef","checkoutSessionConfig","JSON","stringify","publicKeyId","Pay","_object_spread_props","createCheckoutSessionConfig","useEffect","clientKey","getAmazonSignature","response","console","showPayButton","renderButton","renderAmazonPayButton","h","div","className","id"],"mappings":"00BAOe,SAASA,EAAgBC,GACpC,MAAMC,eAAEA,GAAmBC,KACrBC,UAAEA,EAASC,cAAEA,EAAgB,CAAE,GAAKJ,GACnCK,EAAWC,GAAgBC,EAAiB,MAC7CC,EAA2BC,EAAeT,GAC1CU,EAAWC,EAAqBX,GAEhCY,EAAgB,KAClB,IAAIC,QAAQb,EAAMc,SAASC,KAAKC,KAAKC,cAAcC,OAAMC,IACjDnB,EAAMoB,SAASpB,EAAMoB,QAAQD,EAAOH,KAAKK,aAAY,GAC7D,EAoCJ,OA5BAL,KAAKC,aAAe,KAChB,MAAMK,EAA+C,CACjDd,YAAae,KAAKC,UAAUhB,GAC5BiB,YAAarB,EAAcqB,YAC3BpB,aAGJF,EAAUuB,IAAIT,aAAaU,wUACpBjB,CAAAA,CAAAA,EAAAA,GAAAA,CACHkB,4BAA6BN,MAIrCO,GAAU,KACN,MAAMC,UAAEA,GAAc9B,EAEtB+B,EAAmB9B,EAAgB6B,EAAWtB,GACzCO,MAAKiB,IACF,KAAKA,aAAAA,EAAAA,EAAU3B,WAAW,OAAO4B,QAAQd,MAAM,qCAC/Cb,EAAa0B,EAAS3B,WAClBL,EAAMkC,eAxBM/B,EAAUuB,IAAIS,aAAa,mBAAoBzB,GACvDI,QAAQF,EAuBSwB,IAE5BlB,OAAMC,IACHc,QAAQd,MAAMA,GACVnB,EAAMoB,SAASpB,EAAMoB,QAAQD,EAAOH,KAAKK,aAAY,GAC7D,GACL,IAEErB,EAAMkC,cACJG,EAACC,MAAAA,CAAIC,UAAU,oCAAoCC,GAAG,oBAD5B,IAErC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{createElement as e}from"../../../external/preact/dist/preact.js";import{useState as t,useRef as n,useEffect as
|
|
1
|
+
import{createElement as e}from"../../../external/preact/dist/preact.js";import{useState as t,useRef as n,useEffect as o}from"../../../external/preact/hooks/dist/hooks.js";import r from"../../internal/Spinner/Spinner.js";import{getAmazonPayUrl as a}from"../utils.js";import i from"./AmazonPayButton.js";import c from"./ChangePaymentDetailsButton.js";import u from"./OrderButton.js";import s from"./SignOutButton.js";import m from"../../../utils/Script.js";function p(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function l(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n.push.apply(n,o)}return n}(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})),e}function d(d){const[y,f]=t("pending"),h=n(null),g=n(null),O=()=>{f("ready")};return this.getSubmitFunction=()=>h.current&&h.current.initCheckout?()=>h.current.initCheckout():g.current&&g.current.createOrder?()=>g.current.createOrder():void 0,o((()=>{const e=a(d.configuration.region),t=new m(e);return window.amazon?O():t.load().then(O),()=>{t.remove()}}),[]),"pending"===y?e("div",{className:"adyen-checkout__amazonpay"},e("div",{className:"adyen-checkout__amazonpay__status adyen-checkout__amazonpay__status--pending"},e(r,null))):d.showSignOutButton?e("div",{className:"adyen-checkout__amazonpay"},e(s,{amazonRef:window.amazon,onSignOut:d.onSignOut})):d.amazonCheckoutSessionId?e("div",{className:"adyen-checkout__amazonpay"},d.showOrderButton&&e(u,{amazonCheckoutSessionId:d.amazonCheckoutSessionId,amount:d.amount,chargePermissionType:d.chargePermissionType,recurringMetadata:d.recurringMetadata,clientKey:d.clientKey,onError:d.onError,publicKeyId:null===(b=d.configuration)||void 0===b?void 0:b.publicKeyId,region:null===(j=d.configuration)||void 0===j?void 0:j.region,returnUrl:d.returnUrl,ref:g}),d.showChangePaymentDetailsButton&&e(c,{amazonCheckoutSessionId:d.amazonCheckoutSessionId,amazonRef:window.amazon})):e("div",{className:"adyen-checkout__amazonpay"},e(i,l(function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},o=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),o.forEach((function(t){p(e,t,n[t])}))}return e}({},d),{showPayButton:this.props.showPayButton,amazonRef:window.amazon,ref:h})));var b,j}export{d as default};
|
|
2
2
|
//# sourceMappingURL=AmazonPayComponent.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AmazonPayComponent.js","sources":["../../../../../src/components/AmazonPay/components/AmazonPayComponent.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { useState, useEffect, useRef } from 'preact/hooks';\nimport Spinner from '../../internal/Spinner';\nimport { getAmazonPayUrl } from '../utils';\nimport { AmazonPayComponentProps } from '../types';\nimport AmazonPayButton from './AmazonPayButton';\nimport ChangePaymentDetailsButton from './ChangePaymentDetailsButton';\nimport OrderButton from './OrderButton';\nimport SignOutButton from './SignOutButton';\nimport Script from '../../../utils/Script';\n\nexport default function AmazonPayComponent(props: AmazonPayComponentProps) {\n const [status, setStatus] = useState('pending');\n const amazonPayButtonRef = useRef(null);\n const orderButtonRef = useRef(null);\n\n const handleLoad = () => {\n setStatus('ready');\n };\n\n this.getSubmitFunction = () => {\n if (amazonPayButtonRef.current && amazonPayButtonRef.current.initCheckout) return () => amazonPayButtonRef.current.initCheckout();\n if (orderButtonRef.current && orderButtonRef.current.createOrder) return () => orderButtonRef.current.createOrder();\n };\n\n useEffect(() => {\n const src = getAmazonPayUrl(props.configuration.region);\n const script = new Script(src);\n if (window.amazon) {\n handleLoad();\n } else {\n script.load().then(handleLoad);\n }\n\n return () => {\n script.remove();\n };\n }, []);\n\n if (status === 'pending') {\n return (\n <div className=\"adyen-checkout__amazonpay\">\n <div className=\"adyen-checkout__amazonpay__status adyen-checkout__amazonpay__status--pending\">\n <Spinner />\n </div>\n </div>\n );\n }\n\n if (props.showSignOutButton) {\n return (\n <div className=\"adyen-checkout__amazonpay\">\n <SignOutButton amazonRef={window.amazon} onSignOut={props.onSignOut} />\n </div>\n );\n }\n\n if (props.amazonCheckoutSessionId) {\n return (\n <div className=\"adyen-checkout__amazonpay\">\n {props.showOrderButton && (\n <OrderButton\n amazonCheckoutSessionId={props.amazonCheckoutSessionId}\n amount={props.amount}\n chargePermissionType={props.chargePermissionType}\n recurringMetadata={props.recurringMetadata}\n clientKey={props.clientKey}\n onError={props.onError}\n publicKeyId={props.configuration?.publicKeyId}\n region={props.configuration?.region}\n returnUrl={props.returnUrl}\n ref={orderButtonRef}\n />\n )}\n\n {props.showChangePaymentDetailsButton && (\n <ChangePaymentDetailsButton amazonCheckoutSessionId={props.amazonCheckoutSessionId} amazonRef={window.amazon} />\n )}\n </div>\n );\n }\n\n return (\n <div className=\"adyen-checkout__amazonpay\">\n <AmazonPayButton {...props} showPayButton={this.props.showPayButton} amazonRef={window.amazon} ref={amazonPayButtonRef} />\n </div>\n );\n}\n"],"names":["AmazonPayComponent","props","status","setStatus","useState","amazonPayButtonRef","useRef","orderButtonRef","handleLoad","this","getSubmitFunction","current","initCheckout","createOrder","useEffect","src","getAmazonPayUrl","configuration","region","script","Script","window","amazon","load","then","remove","h","div","className","Spinner","showSignOutButton","SignOutButton","amazonRef","onSignOut","amazonCheckoutSessionId","showOrderButton","OrderButton","amount","chargePermissionType","recurringMetadata","clientKey","onError","publicKeyId","returnUrl","ref","showChangePaymentDetailsButton","ChangePaymentDetailsButton","AmazonPayButton","showPayButton"],"mappings":"
|
|
1
|
+
{"version":3,"file":"AmazonPayComponent.js","sources":["../../../../../src/components/AmazonPay/components/AmazonPayComponent.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { useState, useEffect, useRef } from 'preact/hooks';\nimport Spinner from '../../internal/Spinner';\nimport { getAmazonPayUrl } from '../utils';\nimport { AmazonPayComponentProps } from '../types';\nimport AmazonPayButton from './AmazonPayButton';\nimport ChangePaymentDetailsButton from './ChangePaymentDetailsButton';\nimport OrderButton from './OrderButton';\nimport SignOutButton from './SignOutButton';\nimport Script from '../../../utils/Script';\n\nexport default function AmazonPayComponent(props: AmazonPayComponentProps) {\n const [status, setStatus] = useState('pending');\n const amazonPayButtonRef = useRef(null);\n const orderButtonRef = useRef(null);\n\n const handleLoad = () => {\n setStatus('ready');\n };\n\n this.getSubmitFunction = () => {\n if (amazonPayButtonRef.current && amazonPayButtonRef.current.initCheckout) return () => amazonPayButtonRef.current.initCheckout();\n if (orderButtonRef.current && orderButtonRef.current.createOrder) return () => orderButtonRef.current.createOrder();\n };\n\n useEffect(() => {\n const src = getAmazonPayUrl(props.configuration.region);\n const script = new Script(src);\n if (window.amazon) {\n handleLoad();\n } else {\n script.load().then(handleLoad);\n }\n\n return () => {\n script.remove();\n };\n }, []);\n\n if (status === 'pending') {\n return (\n <div className=\"adyen-checkout__amazonpay\">\n <div className=\"adyen-checkout__amazonpay__status adyen-checkout__amazonpay__status--pending\">\n <Spinner />\n </div>\n </div>\n );\n }\n\n if (props.showSignOutButton) {\n return (\n <div className=\"adyen-checkout__amazonpay\">\n <SignOutButton amazonRef={window.amazon} onSignOut={props.onSignOut} />\n </div>\n );\n }\n\n if (props.amazonCheckoutSessionId) {\n return (\n <div className=\"adyen-checkout__amazonpay\">\n {props.showOrderButton && (\n <OrderButton\n amazonCheckoutSessionId={props.amazonCheckoutSessionId}\n amount={props.amount}\n chargePermissionType={props.chargePermissionType}\n recurringMetadata={props.recurringMetadata}\n clientKey={props.clientKey}\n onError={props.onError}\n publicKeyId={props.configuration?.publicKeyId}\n region={props.configuration?.region}\n returnUrl={props.returnUrl}\n ref={orderButtonRef}\n />\n )}\n\n {props.showChangePaymentDetailsButton && (\n <ChangePaymentDetailsButton amazonCheckoutSessionId={props.amazonCheckoutSessionId} amazonRef={window.amazon} />\n )}\n </div>\n );\n }\n\n return (\n <div className=\"adyen-checkout__amazonpay\">\n <AmazonPayButton {...props} showPayButton={this.props.showPayButton} amazonRef={window.amazon} ref={amazonPayButtonRef} />\n </div>\n );\n}\n"],"names":["AmazonPayComponent","props","status","setStatus","useState","amazonPayButtonRef","useRef","orderButtonRef","handleLoad","this","getSubmitFunction","current","initCheckout","createOrder","useEffect","src","getAmazonPayUrl","configuration","region","script","Script","window","amazon","load","then","remove","h","div","className","Spinner","showSignOutButton","SignOutButton","amazonRef","onSignOut","amazonCheckoutSessionId","showOrderButton","OrderButton","amount","chargePermissionType","recurringMetadata","clientKey","onError","publicKeyId","returnUrl","ref","showChangePaymentDetailsButton","ChangePaymentDetailsButton","AmazonPayButton","showPayButton"],"mappings":"g7BAWe,SAASA,EAAmBC,GACvC,MAAOC,EAAQC,GAAaC,EAAS,WAC/BC,EAAqBC,EAAO,MAC5BC,EAAiBD,EAAO,MAExBE,EAAa,KACfL,EAAU,QAAA,EAsBd,OAnBAM,KAAKC,kBAAoB,IACjBL,EAAmBM,SAAWN,EAAmBM,QAAQC,aAAqB,IAAMP,EAAmBM,QAAQC,eAC/GL,EAAeI,SAAWJ,EAAeI,QAAQE,YAAoB,IAAMN,EAAeI,QAAQE,mBAAtG,EAGJC,GAAU,KACN,MAAMC,EAAMC,EAAgBf,EAAMgB,cAAcC,QAC1CC,EAAS,IAAIC,EAAOL,GAO1B,OANIM,OAAOC,OACPd,IAEAW,EAAOI,OAAOC,KAAKhB,GAGhB,KACHW,EAAOM,QAAM,CACjB,GACD,IAEY,YAAXvB,EAEIwB,EAACC,MAAAA,CAAIC,UAAU,6BACXF,EAACC,MAAAA,CAAIC,UAAU,gFACXF,EAACG,EAAAA,QAMb5B,EAAM6B,kBAEFJ,EAACC,MAAAA,CAAIC,UAAU,6BACXF,EAACK,EAAAA,CAAcC,UAAWX,OAAOC,OAAQW,UAAWhC,EAAMgC,aAKlEhC,EAAMiC,wBAEFR,EAACC,MAAAA,CAAIC,UAAU,6BACV3B,EAAMkC,iBACHT,EAACU,EAAAA,CACGF,wBAAyBjC,EAAMiC,wBAC/BG,OAAQpC,EAAMoC,OACdC,qBAAsBrC,EAAMqC,qBAC5BC,kBAAmBtC,EAAMsC,kBACzBC,UAAWvC,EAAMuC,UACjBC,QAASxC,EAAMwC,QACfC,YAAazC,QAAAA,EAAAA,EAAMgB,qBAANhB,IAAAA,OAAAA,EAAAA,EAAqByC,YAClCxB,OAAQjB,QAAAA,EAAAA,EAAMgB,qBAANhB,IAAAA,OAAAA,EAAAA,EAAqBiB,OAC7ByB,UAAW1C,EAAM0C,UACjBC,IAAKrC,IAIZN,EAAM4C,gCACHnB,EAACoB,EAAAA,CAA2BZ,wBAAyBjC,EAAMiC,wBAAyBF,UAAWX,OAAOC,UAOlHI,EAACC,MAAAA,CAAIC,UAAU,6BACXF,EAACqB,EAAoB9C,wUAAAA,CAAAA,CAAAA,EAAAA,GAAAA,CAAO+C,cAAevC,KAAKR,MAAM+C,cAAehB,UAAWX,OAAOC,OAAQsB,IAAKvC,UAhB3EJ,EACLA,CAkBhC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{LEDGER_CURRENCIES_PER_REGION as e,AMAZONPAY_URL_US as r,AMAZONPAY_URL_EU as t,FALLBACK_LOCALE_US as n,FALLBACK_LOCALE_EU as o,SUPPORTED_LOCALES_US as c,SUPPORTED_LOCALES_EU as u}from"./config.js";import{getDecimalAmount as i}from"../../utils/amount-util.js";function a(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function l(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{},n=Object.keys(t);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(t).filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})))),n.forEach((function(r){a(e,r,t[r])}))}return e}function s(e,r){return r=null!=r?r:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):function(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);
|
|
1
|
+
import{LEDGER_CURRENCIES_PER_REGION as e,AMAZONPAY_URL_US as r,AMAZONPAY_URL_EU as t,FALLBACK_LOCALE_US as n,FALLBACK_LOCALE_EU as o,SUPPORTED_LOCALES_US as c,SUPPORTED_LOCALES_EU as u}from"./config.js";import{getDecimalAmount as i}from"../../utils/amount-util.js";function a(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function l(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{},n=Object.keys(t);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(t).filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})))),n.forEach((function(r){a(e,r,t[r])}))}return e}function s(e,r){return r=null!=r?r:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):function(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t}(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})),e}function f(e){return"US"===e?r:t}function p(r){var t;return s(l({},r.buttonColor&&{buttonColor:r.buttonColor},r.design&&{design:m(r.design)}),{checkoutLanguage:g(r.locale,r.configuration.region),ledgerCurrency:e[r.configuration.region]||r.currency||(null===(t=r.amount)||void 0===t?void 0:t.currency),merchantId:r.configuration.merchantId,productType:r.productType,placement:r.placement,sandbox:"TEST"===r.environment})}function y(e){return"US"===e?n:o}function d(e){return"US"===e?c:u}function g(e,r){return d(r).includes(e)?e:y(r)}function m(e){return"noTagline"===e?"C0001":null}function b(e){return{amount:String(i(e.value,e.currency)),currencyCode:e.currency}}function O(e){const{addressDetails:r,cancelUrl:t,checkoutMode:n,deliverySpecifications:o,returnUrl:c,merchantMetadata:u,chargePermissionType:i,recurringMetadata:a}=e,{storeId:s}=e.configuration,f="ProcessOrder"===n,p=f?b(e.amount):null;return l({storeId:s,chargePermissionType:i,webCheckoutDetails:l({},f?{checkoutResultReturnUrl:c}:{checkoutReviewReturnUrl:c},t&&{checkoutCancelUrl:t},f&&{checkoutMode:n})},f&&{paymentDetails:{chargeAmount:p,paymentIntent:"Confirm",presentmentCurrency:p.currencyCode,totalOrderAmount:p}},a&&{recurringMetadata:a},u&&{merchantMetadata:u},o&&{deliverySpecifications:o},r&&{addressDetails:r})}export{p as getAmazonPaySettings,f as getAmazonPayUrl,b as getChargeAmount,g as getCheckoutLocale,m as getDesignCode,y as getFallbackLocale,O as getPayloadJSON,d as getSupportedLocales};
|
|
2
2
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sources":["../../../../src/components/AmazonPay/utils.ts"],"sourcesContent":["import {\n AMAZONPAY_URL_EU,\n AMAZONPAY_URL_US,\n FALLBACK_LOCALE_EU,\n FALLBACK_LOCALE_US,\n LEDGER_CURRENCIES_PER_REGION,\n SUPPORTED_LOCALES_EU,\n SUPPORTED_LOCALES_US\n} from './config';\nimport { AmazonPayButtonProps, AmazonPayButtonSettings, ChargeAmount, Currency, PayloadJSON, Region, SupportedLocale } from './types';\nimport { PaymentAmount } from '../../types/global-types';\nimport { getDecimalAmount } from '../../utils/amount-util';\n\n/**\n * Returns the AmazonPay script URL for passed region.\n * @param region - Two-letter country code in ISO 3166 format\n * @returns the AmazonPay script URL\n */\nexport function getAmazonPayUrl(region: Region): string {\n return region === 'US' ? AMAZONPAY_URL_US : AMAZONPAY_URL_EU;\n}\n\n/**\n * Returns the AmazonPay button settings object\n * @param props -\n * @returns the AmazonPay button settings\n */\nexport function getAmazonPaySettings(props: AmazonPayButtonProps): AmazonPayButtonSettings {\n return {\n ...(props.buttonColor && { buttonColor: props.buttonColor }),\n ...(props.design && { design: getDesignCode(props.design) }),\n checkoutLanguage: getCheckoutLocale(props.locale, props.configuration.region),\n ledgerCurrency: LEDGER_CURRENCIES_PER_REGION[props.configuration.region] || props.currency || (props.amount?.currency as Currency),\n merchantId: props.configuration.merchantId,\n productType: props.productType,\n placement: props.placement,\n sandbox: props.environment === 'TEST'\n };\n}\n\n/**\n * Returns the fallback locale for passed region.\n * @param region - Two-letter country code in ISO 3166 format\n * @returns A fallback locale\n */\nexport function getFallbackLocale(region: Region): SupportedLocale {\n return region === 'US' ? FALLBACK_LOCALE_US : FALLBACK_LOCALE_EU;\n}\n\n/**\n * Returns an array of supported locales for passed region.\n * @param region - Two-letter country code in ISO 3166 format\n * @returns An array of supported locales\n */\nexport function getSupportedLocales(region: Region): SupportedLocale[] {\n const supportedLocales = region === 'US' ? SUPPORTED_LOCALES_US : SUPPORTED_LOCALES_EU;\n return supportedLocales as unknown as SupportedLocale[];\n}\n\n/**\n * Gets a locale and matches it with one of the supported locales for the given region.\n * If there's no match, it will return the region's fallback option.\n * @param locale - Locale to be processed\n * @param region - Two-letter country code in ISO 3166 format\n * @returns A supported locale\n */\nexport function getCheckoutLocale(locale: string, region: Region): SupportedLocale {\n const supportedLocales = getSupportedLocales(region);\n const isSupportedLocale = supportedLocales.includes(locale as SupportedLocale);\n const checkoutLocale = isSupportedLocale ? locale : getFallbackLocale(region);\n\n return checkoutLocale as SupportedLocale;\n}\n\n/**\n * Gets the design code from the given alias.\n * @param design - The alias of one of the possible designs.\n * @returns A design code\n */\nexport function getDesignCode(design: string): string {\n if (design === 'noTagline') return 'C0001';\n return null;\n}\n\n/**\n * Returns the amount in the format Amazon expects.\n * @param amount - The amount object in the Adyen format\n * @returns the charge amount object in the Amazon format\n */\nexport function getChargeAmount(amount: PaymentAmount): ChargeAmount {\n return {\n amount: String(getDecimalAmount(amount.value, amount.currency)),\n currencyCode: amount.currency as Currency\n };\n}\n\n/**\n * Returns a PayloadJSON object.\n * @param props -\n * @returns PayloadJSON\n */\nexport function getPayloadJSON(props): PayloadJSON {\n const { addressDetails, cancelUrl, checkoutMode, deliverySpecifications, returnUrl, merchantMetadata, chargePermissionType, recurringMetadata } =\n props;\n\n const { storeId } = props.configuration;\n const isPayNow = checkoutMode === 'ProcessOrder';\n const amount = isPayNow ? getChargeAmount(props.amount) : null;\n\n return {\n storeId,\n chargePermissionType,\n webCheckoutDetails: {\n ...(isPayNow ? { checkoutResultReturnUrl: returnUrl } : { checkoutReviewReturnUrl: returnUrl }),\n ...(cancelUrl && { checkoutCancelUrl: cancelUrl }),\n ...(isPayNow && { checkoutMode })\n },\n ...(isPayNow && {\n paymentDetails: {\n chargeAmount: amount,\n paymentIntent: 'Confirm',\n presentmentCurrency: amount.currencyCode,\n totalOrderAmount: amount\n }\n }),\n ...(recurringMetadata && { recurringMetadata }),\n ...(merchantMetadata && { merchantMetadata }),\n ...(deliverySpecifications && { deliverySpecifications }),\n ...(addressDetails && { addressDetails })\n };\n}\n"],"names":["getAmazonPayUrl","region","AMAZONPAY_URL_US","AMAZONPAY_URL_EU","getAmazonPaySettings","props","_object_spread_props","_object_spread","buttonColor","design","getDesignCode","checkoutLanguage","getCheckoutLocale","locale","configuration","ledgerCurrency","LEDGER_CURRENCIES_PER_REGION","currency","amount","merchantId","productType","placement","sandbox","environment","getFallbackLocale","FALLBACK_LOCALE_US","FALLBACK_LOCALE_EU","getSupportedLocales","SUPPORTED_LOCALES_US","SUPPORTED_LOCALES_EU","includes","getChargeAmount","String","getDecimalAmount","value","currencyCode","getPayloadJSON","addressDetails","cancelUrl","checkoutMode","deliverySpecifications","returnUrl","merchantMetadata","chargePermissionType","recurringMetadata","storeId","isPayNow","webCheckoutDetails","checkoutResultReturnUrl","checkoutReviewReturnUrl","checkoutCancelUrl","paymentDetails","chargeAmount","paymentIntent","presentmentCurrency","totalOrderAmount"],"mappings":"
|
|
1
|
+
{"version":3,"file":"utils.js","sources":["../../../../src/components/AmazonPay/utils.ts"],"sourcesContent":["import {\n AMAZONPAY_URL_EU,\n AMAZONPAY_URL_US,\n FALLBACK_LOCALE_EU,\n FALLBACK_LOCALE_US,\n LEDGER_CURRENCIES_PER_REGION,\n SUPPORTED_LOCALES_EU,\n SUPPORTED_LOCALES_US\n} from './config';\nimport { AmazonPayButtonProps, AmazonPayButtonSettings, ChargeAmount, Currency, PayloadJSON, Region, SupportedLocale } from './types';\nimport { PaymentAmount } from '../../types/global-types';\nimport { getDecimalAmount } from '../../utils/amount-util';\n\n/**\n * Returns the AmazonPay script URL for passed region.\n * @param region - Two-letter country code in ISO 3166 format\n * @returns the AmazonPay script URL\n */\nexport function getAmazonPayUrl(region: Region): string {\n return region === 'US' ? AMAZONPAY_URL_US : AMAZONPAY_URL_EU;\n}\n\n/**\n * Returns the AmazonPay button settings object\n * @param props -\n * @returns the AmazonPay button settings\n */\nexport function getAmazonPaySettings(props: AmazonPayButtonProps): AmazonPayButtonSettings {\n return {\n ...(props.buttonColor && { buttonColor: props.buttonColor }),\n ...(props.design && { design: getDesignCode(props.design) }),\n checkoutLanguage: getCheckoutLocale(props.locale, props.configuration.region),\n ledgerCurrency: LEDGER_CURRENCIES_PER_REGION[props.configuration.region] || props.currency || (props.amount?.currency as Currency),\n merchantId: props.configuration.merchantId,\n productType: props.productType,\n placement: props.placement,\n sandbox: props.environment === 'TEST'\n };\n}\n\n/**\n * Returns the fallback locale for passed region.\n * @param region - Two-letter country code in ISO 3166 format\n * @returns A fallback locale\n */\nexport function getFallbackLocale(region: Region): SupportedLocale {\n return region === 'US' ? FALLBACK_LOCALE_US : FALLBACK_LOCALE_EU;\n}\n\n/**\n * Returns an array of supported locales for passed region.\n * @param region - Two-letter country code in ISO 3166 format\n * @returns An array of supported locales\n */\nexport function getSupportedLocales(region: Region): SupportedLocale[] {\n const supportedLocales = region === 'US' ? SUPPORTED_LOCALES_US : SUPPORTED_LOCALES_EU;\n return supportedLocales as unknown as SupportedLocale[];\n}\n\n/**\n * Gets a locale and matches it with one of the supported locales for the given region.\n * If there's no match, it will return the region's fallback option.\n * @param locale - Locale to be processed\n * @param region - Two-letter country code in ISO 3166 format\n * @returns A supported locale\n */\nexport function getCheckoutLocale(locale: string, region: Region): SupportedLocale {\n const supportedLocales = getSupportedLocales(region);\n const isSupportedLocale = supportedLocales.includes(locale as SupportedLocale);\n const checkoutLocale = isSupportedLocale ? locale : getFallbackLocale(region);\n\n return checkoutLocale as SupportedLocale;\n}\n\n/**\n * Gets the design code from the given alias.\n * @param design - The alias of one of the possible designs.\n * @returns A design code\n */\nexport function getDesignCode(design: string): string {\n if (design === 'noTagline') return 'C0001';\n return null;\n}\n\n/**\n * Returns the amount in the format Amazon expects.\n * @param amount - The amount object in the Adyen format\n * @returns the charge amount object in the Amazon format\n */\nexport function getChargeAmount(amount: PaymentAmount): ChargeAmount {\n return {\n amount: String(getDecimalAmount(amount.value, amount.currency)),\n currencyCode: amount.currency as Currency\n };\n}\n\n/**\n * Returns a PayloadJSON object.\n * @param props -\n * @returns PayloadJSON\n */\nexport function getPayloadJSON(props): PayloadJSON {\n const { addressDetails, cancelUrl, checkoutMode, deliverySpecifications, returnUrl, merchantMetadata, chargePermissionType, recurringMetadata } =\n props;\n\n const { storeId } = props.configuration;\n const isPayNow = checkoutMode === 'ProcessOrder';\n const amount = isPayNow ? getChargeAmount(props.amount) : null;\n\n return {\n storeId,\n chargePermissionType,\n webCheckoutDetails: {\n ...(isPayNow ? { checkoutResultReturnUrl: returnUrl } : { checkoutReviewReturnUrl: returnUrl }),\n ...(cancelUrl && { checkoutCancelUrl: cancelUrl }),\n ...(isPayNow && { checkoutMode })\n },\n ...(isPayNow && {\n paymentDetails: {\n chargeAmount: amount,\n paymentIntent: 'Confirm',\n presentmentCurrency: amount.currencyCode,\n totalOrderAmount: amount\n }\n }),\n ...(recurringMetadata && { recurringMetadata }),\n ...(merchantMetadata && { merchantMetadata }),\n ...(deliverySpecifications && { deliverySpecifications }),\n ...(addressDetails && { addressDetails })\n };\n}\n"],"names":["getAmazonPayUrl","region","AMAZONPAY_URL_US","AMAZONPAY_URL_EU","getAmazonPaySettings","props","_object_spread_props","_object_spread","buttonColor","design","getDesignCode","checkoutLanguage","getCheckoutLocale","locale","configuration","ledgerCurrency","LEDGER_CURRENCIES_PER_REGION","currency","amount","merchantId","productType","placement","sandbox","environment","getFallbackLocale","FALLBACK_LOCALE_US","FALLBACK_LOCALE_EU","getSupportedLocales","SUPPORTED_LOCALES_US","SUPPORTED_LOCALES_EU","includes","getChargeAmount","String","getDecimalAmount","value","currencyCode","getPayloadJSON","addressDetails","cancelUrl","checkoutMode","deliverySpecifications","returnUrl","merchantMetadata","chargePermissionType","recurringMetadata","storeId","isPayNow","webCheckoutDetails","checkoutResultReturnUrl","checkoutReviewReturnUrl","checkoutCancelUrl","paymentDetails","chargeAmount","paymentIntent","presentmentCurrency","totalOrderAmount"],"mappings":"0jCAkBO,SAASA,EAAgBC,GAC5B,MAAkB,OAAXA,EAAkBC,EAAmBC,CAChD,CAOO,SAASC,EAAqBC,GAKkEA,IAAAA,EAJnG,OAAOC,EAAAC,EAAA,GACCF,EAAMG,aAAe,CAAEA,YAAaH,EAAMG,aAC1CH,EAAMI,QAAU,CAAEA,OAAQC,EAAcL,EAAMI,UAAQ,CAC1DE,iBAAkBC,EAAkBP,EAAMQ,OAAQR,EAAMS,cAAcb,QACtEc,eAAgBC,EAA6BX,EAAMS,cAAcb,SAAWI,EAAMY,WAAaZ,QAAAA,EAAAA,EAAMa,cAANb,IAAAA,OAAAA,EAAAA,EAAcY,UAC7GE,WAAYd,EAAMS,cAAcK,WAChCC,YAAaf,EAAMe,YACnBC,UAAWhB,EAAMgB,UACjBC,QAA+B,SAAtBjB,EAAMkB,aAEvB,CAOO,SAASC,EAAkBvB,GAC9B,MAAkB,OAAXA,EAAkBwB,EAAqBC,CAClD,CAOO,SAASC,EAAoB1B,GAEhC,MADoC,OAAXA,EAAkB2B,EAAuBC,CAEtE,CASO,SAASjB,EAAkBC,EAAgBZ,GAK9C,OAJyB0B,EAAoB1B,GACF6B,SAASjB,GACTA,EAASW,EAAkBvB,EAG1E,CAOO,SAASS,EAAcD,GAC1B,MAAe,cAAXA,EAA+B,QAC5B,IACX,CAOO,SAASsB,EAAgBb,GAC5B,MAAO,CACHA,OAAQc,OAAOC,EAAiBf,EAAOgB,MAAOhB,EAAOD,WACrDkB,aAAcjB,EAAOD,SAE7B,CAOO,SAASmB,EAAe/B,GAC3B,MAAMgC,eAAEA,EAAcC,UAAEA,EAASC,aAAEA,EAAYC,uBAAEA,EAAsBC,UAAEA,EAASC,iBAAEA,EAAgBC,qBAAEA,EAAoBC,kBAAEA,GACxHvC,GAEEwC,QAAEA,GAAYxC,EAAMS,cACpBgC,EAA4B,iBAAjBP,EACXrB,EAAS4B,EAAWf,EAAgB1B,EAAMa,QAAU,KAE1D,OAAOX,EAAA,CACHsC,UACAF,uBACAI,mBAAoBxC,KACZuC,EAAW,CAAEE,wBAAyBP,GAAc,CAAEQ,wBAAyBR,GAC/EH,GAAa,CAAEY,kBAAmBZ,GAClCQ,GAAY,CAAEP,kBAElBO,GAAY,CACZK,eAAgB,CACZC,aAAclC,EACdmC,cAAe,UACfC,oBAAqBpC,EAAOiB,aAC5BoB,iBAAkBrC,IAGtB0B,GAAqB,CAAEA,qBACvBF,GAAoB,CAAEA,oBACtBF,GAA0B,CAAEA,0BAC5BH,GAAkB,CAAEA,kBAEhC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{createElement as e}from"../../external/preact/dist/preact.js";import{UIElement as t}from"../internal/UIElement/UIElement.js";import r from"./components/ApplePayButton.js";import n from"./ApplePayService.js";import o from"../../utils/base64.js";import s from"./defaultProps.js";import{httpPost as i}from"../../core/Services/http.js";import{APPLEPAY_SESSION_ENDPOINT as a}from"./config.js";import{preparePaymentRequest as p}from"./payment-request.js";import{resolveSupportedVersion as l,mapBrands as c,formatApplePayContactToAdyenAddressFormat as d}from"./utils.js";import h from"../../core/Errors/AdyenCheckoutError.js";import{TxVariants as u}from"../tx-variants.js";import{sanitizeResponse as m,verifyPaymentDidNotFail as y}from"../internal/UIElement/utils.js";import{ANALYTICS_SELECTED_STR as f,ANALYTICS_INSTANT_PAYMENT_BUTTON as b}from"../../core/Analytics/constants.js";function P(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function g(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){P(e,t,r[t])}))}return e}function A(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);
|
|
1
|
+
import{createElement as e}from"../../external/preact/dist/preact.js";import{UIElement as t}from"../internal/UIElement/UIElement.js";import r from"./components/ApplePayButton.js";import n from"./ApplePayService.js";import o from"../../utils/base64.js";import s from"./defaultProps.js";import{httpPost as i}from"../../core/Services/http.js";import{APPLEPAY_SESSION_ENDPOINT as a}from"./config.js";import{preparePaymentRequest as p}from"./payment-request.js";import{resolveSupportedVersion as l,mapBrands as c,formatApplePayContactToAdyenAddressFormat as d}from"./utils.js";import h from"../../core/Errors/AdyenCheckoutError.js";import{TxVariants as u}from"../tx-variants.js";import{sanitizeResponse as m,verifyPaymentDidNotFail as y}from"../internal/UIElement/utils.js";import{ANALYTICS_SELECTED_STR as f,ANALYTICS_INSTANT_PAYMENT_BUTTON as b}from"../../core/Analytics/constants.js";function P(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function g(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){P(e,t,r[t])}))}return e}function A(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r.push.apply(r,n)}return r}(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})),e}class S extends t{formatProps(e){var t,r;const n=e.version||l(14),o=(null===(t=e.brands)||void 0===t?void 0:t.length)?c(e.brands):e.supportedNetworks;return A(g({},e),{configuration:e.configuration,supportedNetworks:o,version:n,totalPriceLabel:e.totalPriceLabel||(null===(r=e.configuration)||void 0===r?void 0:r.merchantName)})}formatData(){const{applePayToken:e,billingAddress:t,deliveryAddress:r}=this.state,{isExpress:n}=this.props;return g({paymentMethod:g({type:S.type,applePayToken:e},n&&{subtype:"express"})},t&&{billingAddress:t},r&&{deliveryAddress:r})}submitAnalytics(e){super.submitAnalytics(g({},e),this.props)}startSession(){const{version:e,onValidateMerchant:t,onPaymentMethodSelected:r,onShippingMethodSelected:o,onShippingContactSelected:s}=this.props,i=p(g({companyName:this.props.configuration.merchantName,countryCode:this.core.options.countryCode},this.props)),a=new n(i,{version:e,onError:e=>{this.handleError(new h("ERROR","ApplePay - Something went wrong on ApplePayService",{cause:e}))},onCancel:e=>{this.handleError(new h("CANCEL","ApplePay UI dismissed",{cause:e}))},onPaymentMethodSelected:r,onShippingMethodSelected:o,onShippingContactSelected:s,onValidateMerchant:t||this.validateMerchant,onPaymentAuthorized:(e,t,r)=>{const n=d(r.payment.billingContact),o=d(r.payment.shippingContact,!0);this.setState(g({applePayToken:btoa(JSON.stringify(r.payment.token.paymentData)),authorizedEvent:r},n&&{billingAddress:n},o&&{deliveryAddress:o})),this.handleAuthorization().then(this.makePaymentsCall).then(m).then(y).then(this.collectOrderTrackingDetailsIfNeeded).then((({paymentResponse:t,orderDetails:r})=>(e(g({status:ApplePaySession.STATUS_SUCCESS},r&&{orderDetails:r})),t))).then((e=>{this.handleResponse(e)})).catch((e=>{var r;const n=null==e||null===(r=e.error)||void 0===r?void 0:r.applePayError;t({status:ApplePaySession.STATUS_FAILURE,errors:n?Array.isArray(n)?n:[n]:void 0});const o=A(g({},e),{error:{applePayError:n}});this.handleFailedResult(o)}))}});return new Promise(((e,t)=>this.props.onClick(e,t))).then((()=>{a.begin()})).catch((()=>({})))}async handleAuthorization(){return new Promise(((e,t)=>{this.props.onAuthorized||e();const{authorizedEvent:r,billingAddress:n,deliveryAddress:o}=this.state;this.props.onAuthorized(g({authorizedEvent:r},n&&{billingAddress:n},o&&{deliveryAddress:o}),{resolve:e,reject:t})})).catch((e=>{const t={error:{applePayError:e}};return Promise.reject(t)}))}async collectOrderTrackingDetailsIfNeeded(e){return new Promise(((e,t)=>{if(!this.props.onOrderTrackingRequest)return e();this.props.onOrderTrackingRequest(e,t)})).then((t=>g({paymentResponse:e},t&&{orderDetails:t}))).catch((()=>({paymentResponse:e})))}async validateMerchant(e,t){const{hostname:r}=window.location,{clientKey:n,configuration:s,loadingContext:p,initiative:l}=this.props,{merchantName:c,merchantId:d}=s,h={loadingContext:p,path:`${a}?clientKey=${n}`},u={displayName:c,domainName:r,initiative:l,merchantIdentifier:d};try{const r=await i(h,u),n=o.decode(r.data);if(n.success){e(JSON.parse(n.data))}else t("Could not decode Apple Pay session")}catch(e){t("Could not get Apple Pay session")}}get isValid(){return!0}async isAvailable(){if("https:"!==document.location.protocol)return Promise.reject(new h("IMPLEMENTATION_ERROR","Trying to start an Apple Pay session from an insecure document"));if(!this.props.onValidateMerchant&&!this.props.clientKey)return Promise.reject(new h("IMPLEMENTATION_ERROR","clientKey was not provided"));try{if(window.ApplePaySession&&ApplePaySession.canMakePayments()&&ApplePaySession.supportsVersion(this.props.version))return Promise.resolve()}catch(e){console.warn(e)}return Promise.reject(new h("ERROR","Apple Pay is not available on this device"))}render(){return this.props.showPayButton?e(r,{i18n:this.props.i18n,buttonColor:this.props.buttonColor,buttonType:this.props.buttonType,onClick:e=>{e.preventDefault(),this.submit()}}):null}constructor(e,t){super(e,t),P(this,"submit",(()=>{this.props.isInstantPayment&&this.submitAnalytics({type:f,target:b}),this.startSession()}));const{isExpress:r,onShippingContactSelected:n,onShippingMethodSelected:o}=this.props;if(!1===r&&(n||o))throw new h("IMPLEMENTATION_ERROR",'ApplePay - You must set "isExpress" flag to "true" in order to use "onShippingContactSelected" and/or "onShippingMethodSelected" callbacks');this.startSession=this.startSession.bind(this),this.submit=this.submit.bind(this),this.validateMerchant=this.validateMerchant.bind(this),this.collectOrderTrackingDetailsIfNeeded=this.collectOrderTrackingDetailsIfNeeded.bind(this),this.handleAuthorization=this.handleAuthorization.bind(this)}}P(S,"type",u.applepay),P(S,"defaultProps",s);export{S as default};
|
|
2
2
|
//# sourceMappingURL=ApplePay.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ApplePay.js","sources":["../../../../src/components/ApplePay/ApplePay.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport ApplePayButton from './components/ApplePayButton';\nimport ApplePayService from './ApplePayService';\nimport base64 from '../../utils/base64';\nimport defaultProps from './defaultProps';\nimport { httpPost } from '../../core/Services/http';\nimport { APPLEPAY_SESSION_ENDPOINT } from './config';\nimport { preparePaymentRequest } from './payment-request';\nimport { resolveSupportedVersion, mapBrands, formatApplePayContactToAdyenAddressFormat } from './utils';\nimport AdyenCheckoutError from '../../core/Errors/AdyenCheckoutError';\nimport { DecodeObject } from '../../types/global-types';\nimport { TxVariants } from '../tx-variants';\nimport { sanitizeResponse, verifyPaymentDidNotFail } from '../internal/UIElement/utils';\nimport { ANALYTICS_INSTANT_PAYMENT_BUTTON, ANALYTICS_SELECTED_STR } from '../../core/Analytics/constants';\n\nimport type { ApplePayConfiguration, ApplePayElementData, ApplePayPaymentOrderDetails, ApplePaySessionRequest } from './types';\nimport type { ICore } from '../../core/types';\nimport type { PaymentResponseData, RawPaymentResponse } from '../../types/global-types';\nimport { SendAnalyticsObject } from '../../core/Analytics/types';\n\nconst latestSupportedVersion = 14;\n\nclass ApplePayElement extends UIElement<ApplePayConfiguration> {\n public static type = TxVariants.applepay;\n protected static defaultProps = defaultProps;\n\n constructor(checkout: ICore, props?: ApplePayConfiguration) {\n super(checkout, props);\n\n const { isExpress, onShippingContactSelected, onShippingMethodSelected } = this.props;\n\n if (isExpress === false && (onShippingContactSelected || onShippingMethodSelected)) {\n throw new AdyenCheckoutError(\n 'IMPLEMENTATION_ERROR',\n 'ApplePay - You must set \"isExpress\" flag to \"true\" in order to use \"onShippingContactSelected\" and/or \"onShippingMethodSelected\" callbacks'\n );\n }\n\n this.startSession = this.startSession.bind(this);\n this.submit = this.submit.bind(this);\n this.validateMerchant = this.validateMerchant.bind(this);\n this.collectOrderTrackingDetailsIfNeeded = this.collectOrderTrackingDetailsIfNeeded.bind(this);\n this.handleAuthorization = this.handleAuthorization.bind(this);\n }\n\n /**\n * Formats the component props\n */\n protected override formatProps(props) {\n const version = props.version || resolveSupportedVersion(latestSupportedVersion);\n const supportedNetworks = props.brands?.length ? mapBrands(props.brands) : props.supportedNetworks;\n\n return {\n ...props,\n configuration: props.configuration,\n supportedNetworks,\n version,\n totalPriceLabel: props.totalPriceLabel || props.configuration?.merchantName\n };\n }\n\n /**\n * Formats the component data output\n */\n protected override formatData(): ApplePayElementData {\n const { applePayToken, billingAddress, deliveryAddress } = this.state;\n const { isExpress } = this.props;\n\n return {\n paymentMethod: {\n type: ApplePayElement.type,\n applePayToken,\n ...(isExpress && { subtype: 'express' })\n },\n ...(billingAddress && { billingAddress }),\n ...(deliveryAddress && { deliveryAddress })\n };\n }\n\n protected submitAnalytics(analyticsObj: SendAnalyticsObject) {\n // Analytics will need to know about this.props.isExpress & this.props.expressPage\n super.submitAnalytics({ ...analyticsObj }, this.props);\n }\n\n public override submit = (): void => {\n // Analytics\n if (this.props.isInstantPayment) {\n this.submitAnalytics({ type: ANALYTICS_SELECTED_STR, target: ANALYTICS_INSTANT_PAYMENT_BUTTON });\n }\n void this.startSession();\n };\n\n private startSession() {\n const { version, onValidateMerchant, onPaymentMethodSelected, onShippingMethodSelected, onShippingContactSelected } = this.props;\n\n const paymentRequest = preparePaymentRequest({\n companyName: this.props.configuration.merchantName,\n countryCode: this.core.options.countryCode,\n ...this.props\n });\n\n const session = new ApplePayService(paymentRequest, {\n version,\n onError: (error: unknown) => {\n this.handleError(\n new AdyenCheckoutError('ERROR', 'ApplePay - Something went wrong on ApplePayService', {\n cause: error\n })\n );\n },\n onCancel: event => {\n this.handleError(new AdyenCheckoutError('CANCEL', 'ApplePay UI dismissed', { cause: event }));\n },\n onPaymentMethodSelected,\n onShippingMethodSelected,\n onShippingContactSelected,\n onValidateMerchant: onValidateMerchant || this.validateMerchant,\n onPaymentAuthorized: (resolve, reject, event) => {\n const billingAddress = formatApplePayContactToAdyenAddressFormat(event.payment.billingContact);\n const deliveryAddress = formatApplePayContactToAdyenAddressFormat(event.payment.shippingContact, true);\n\n this.setState({\n applePayToken: btoa(JSON.stringify(event.payment.token.paymentData)),\n authorizedEvent: event,\n ...(billingAddress && { billingAddress }),\n ...(deliveryAddress && { deliveryAddress })\n });\n\n this.handleAuthorization()\n .then(this.makePaymentsCall)\n .then(sanitizeResponse)\n .then(verifyPaymentDidNotFail)\n .then(this.collectOrderTrackingDetailsIfNeeded)\n .then(({ paymentResponse, orderDetails }) => {\n resolve({\n status: ApplePaySession.STATUS_SUCCESS,\n ...(orderDetails && { orderDetails })\n });\n return paymentResponse;\n })\n .then(paymentResponse => {\n this.handleResponse(paymentResponse);\n })\n .catch((paymentResponse?: RawPaymentResponse) => {\n const errors = paymentResponse?.error?.applePayError;\n\n reject({\n status: ApplePaySession.STATUS_FAILURE,\n errors: errors ? (Array.isArray(errors) ? errors : [errors]) : undefined\n });\n\n const responseWithError: RawPaymentResponse = {\n ...paymentResponse,\n error: {\n applePayError: errors\n }\n };\n\n this.handleFailedResult(responseWithError);\n });\n }\n });\n\n return new Promise((resolve, reject) => this.props.onClick(resolve, reject))\n .then(() => {\n session.begin();\n })\n .catch(() => ({\n // Swallow exception triggered by onClick reject\n }));\n }\n\n /**\n * Call the 'onAuthorized' callback if available.\n * Must be resolved/reject for the payment flow to continue\n *\n * @private\n */\n private async handleAuthorization(): Promise<void> {\n return new Promise<void>((resolve, reject) => {\n if (!this.props.onAuthorized) {\n resolve();\n }\n\n const { authorizedEvent, billingAddress, deliveryAddress } = this.state;\n\n this.props.onAuthorized(\n {\n authorizedEvent,\n ...(billingAddress && { billingAddress }),\n ...(deliveryAddress && { deliveryAddress })\n },\n { resolve, reject }\n );\n }).catch((error?: ApplePayJS.ApplePayError) => {\n // Format error in a way that the 'catch' of the 'onPaymentAuthorize' block accepts it\n const data = { error: { applePayError: error } };\n return Promise.reject(data);\n });\n }\n\n /**\n * Verify if the 'onOrderTrackingRequest' is provided. If so, triggers the callback expecting an\n * Apple Pay order details back\n *\n * @private\n */\n private async collectOrderTrackingDetailsIfNeeded(\n paymentResponse: PaymentResponseData\n ): Promise<{ orderDetails?: ApplePayPaymentOrderDetails; paymentResponse: PaymentResponseData }> {\n return new Promise<ApplePayPaymentOrderDetails | void>((resolve, reject) => {\n if (!this.props.onOrderTrackingRequest) {\n return resolve();\n }\n\n this.props.onOrderTrackingRequest(resolve, reject);\n })\n .then(orderDetails => {\n return {\n paymentResponse,\n ...(orderDetails && { orderDetails })\n };\n })\n .catch(() => {\n return { paymentResponse };\n });\n }\n\n private async validateMerchant(resolve, reject) {\n const { hostname: domainName } = window.location;\n const { clientKey, configuration, loadingContext, initiative } = this.props;\n const { merchantName, merchantId } = configuration;\n const path = `${APPLEPAY_SESSION_ENDPOINT}?clientKey=${clientKey}`;\n const options = { loadingContext, path };\n const request: ApplePaySessionRequest = {\n displayName: merchantName,\n domainName,\n initiative,\n merchantIdentifier: merchantId\n };\n\n try {\n const response = await httpPost(options, request);\n const decodedData: DecodeObject = base64.decode(response.data);\n if (!decodedData.success) {\n reject('Could not decode Apple Pay session');\n } else {\n const session = JSON.parse(decodedData.data);\n resolve(session);\n }\n } catch (e) {\n reject('Could not get Apple Pay session');\n }\n }\n\n /**\n * Validation\n *\n * @remarks\n * Apple Pay does not require any specific validation\n */\n get isValid(): boolean {\n return true;\n }\n\n /**\n * Determine a shopper's ability to return a form of payment from Apple Pay.\n * @returns Promise Resolve/Reject whether the shopper can use Apple Pay\n */\n public override async isAvailable(): Promise<void> {\n if (document.location.protocol !== 'https:') {\n return Promise.reject(new AdyenCheckoutError('IMPLEMENTATION_ERROR', 'Trying to start an Apple Pay session from an insecure document'));\n }\n\n if (!this.props.onValidateMerchant && !this.props.clientKey) {\n return Promise.reject(new AdyenCheckoutError('IMPLEMENTATION_ERROR', 'clientKey was not provided'));\n }\n\n try {\n if (window.ApplePaySession && ApplePaySession.canMakePayments() && ApplePaySession.supportsVersion(this.props.version)) {\n return Promise.resolve();\n }\n } catch (error) {\n console.warn(error);\n }\n\n return Promise.reject(new AdyenCheckoutError('ERROR', 'Apple Pay is not available on this device'));\n }\n\n /**\n * Renders the Apple Pay button or nothing in the Dropin\n */\n render() {\n if (this.props.showPayButton) {\n return (\n <ApplePayButton\n i18n={this.props.i18n}\n buttonColor={this.props.buttonColor}\n buttonType={this.props.buttonType}\n onClick={e => {\n e.preventDefault();\n this.submit();\n }}\n />\n );\n }\n\n return null;\n }\n}\n\nexport default ApplePayElement;\n"],"names":["ApplePayElement","UIElement","formatProps","props","version","resolveSupportedVersion","supportedNetworks","brands","length","mapBrands","_object_spread_props","configuration","totalPriceLabel","merchantName","formatData","applePayToken","billingAddress","deliveryAddress","this","state","isExpress","_object_spread","paymentMethod","type","subtype","submitAnalytics","analyticsObj","super","startSession","onValidateMerchant","onPaymentMethodSelected","onShippingMethodSelected","onShippingContactSelected","paymentRequest","preparePaymentRequest","companyName","countryCode","core","options","session","ApplePayService","onError","error","handleError","AdyenCheckoutError","cause","onCancel","event","validateMerchant","onPaymentAuthorized","resolve","reject","formatApplePayContactToAdyenAddressFormat","payment","billingContact","shippingContact","setState","btoa","JSON","stringify","token","paymentData","authorizedEvent","handleAuthorization","then","makePaymentsCall","sanitizeResponse","verifyPaymentDidNotFail","collectOrderTrackingDetailsIfNeeded","paymentResponse","orderDetails","status","ApplePaySession","STATUS_SUCCESS","handleResponse","catch","errors","applePayError","STATUS_FAILURE","Array","isArray","undefined","responseWithError","handleFailedResult","Promise","onClick","begin","onAuthorized","data","onOrderTrackingRequest","hostname","domainName","window","location","clientKey","loadingContext","initiative","merchantId","path","APPLEPAY_SESSION_ENDPOINT","request","displayName","merchantIdentifier","response","httpPost","decodedData","base64","decode","success","parse","e","isValid","isAvailable","document","protocol","canMakePayments","supportsVersion","console","warn","render","showPayButton","h","ApplePayButton","i18n","buttonColor","buttonType","preventDefault","submit","constructor","checkout","_define_property","isInstantPayment","ANALYTICS_SELECTED_STR","target","ANALYTICS_INSTANT_PAYMENT_BUTTON","bind","TxVariants","applepay","defaultProps"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ApplePay.js","sources":["../../../../src/components/ApplePay/ApplePay.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport ApplePayButton from './components/ApplePayButton';\nimport ApplePayService from './ApplePayService';\nimport base64 from '../../utils/base64';\nimport defaultProps from './defaultProps';\nimport { httpPost } from '../../core/Services/http';\nimport { APPLEPAY_SESSION_ENDPOINT } from './config';\nimport { preparePaymentRequest } from './payment-request';\nimport { resolveSupportedVersion, mapBrands, formatApplePayContactToAdyenAddressFormat } from './utils';\nimport AdyenCheckoutError from '../../core/Errors/AdyenCheckoutError';\nimport { DecodeObject } from '../../types/global-types';\nimport { TxVariants } from '../tx-variants';\nimport { sanitizeResponse, verifyPaymentDidNotFail } from '../internal/UIElement/utils';\nimport { ANALYTICS_INSTANT_PAYMENT_BUTTON, ANALYTICS_SELECTED_STR } from '../../core/Analytics/constants';\n\nimport type { ApplePayConfiguration, ApplePayElementData, ApplePayPaymentOrderDetails, ApplePaySessionRequest } from './types';\nimport type { ICore } from '../../core/types';\nimport type { PaymentResponseData, RawPaymentResponse } from '../../types/global-types';\nimport { SendAnalyticsObject } from '../../core/Analytics/types';\n\nconst latestSupportedVersion = 14;\n\nclass ApplePayElement extends UIElement<ApplePayConfiguration> {\n public static type = TxVariants.applepay;\n protected static defaultProps = defaultProps;\n\n constructor(checkout: ICore, props?: ApplePayConfiguration) {\n super(checkout, props);\n\n const { isExpress, onShippingContactSelected, onShippingMethodSelected } = this.props;\n\n if (isExpress === false && (onShippingContactSelected || onShippingMethodSelected)) {\n throw new AdyenCheckoutError(\n 'IMPLEMENTATION_ERROR',\n 'ApplePay - You must set \"isExpress\" flag to \"true\" in order to use \"onShippingContactSelected\" and/or \"onShippingMethodSelected\" callbacks'\n );\n }\n\n this.startSession = this.startSession.bind(this);\n this.submit = this.submit.bind(this);\n this.validateMerchant = this.validateMerchant.bind(this);\n this.collectOrderTrackingDetailsIfNeeded = this.collectOrderTrackingDetailsIfNeeded.bind(this);\n this.handleAuthorization = this.handleAuthorization.bind(this);\n }\n\n /**\n * Formats the component props\n */\n protected override formatProps(props) {\n const version = props.version || resolveSupportedVersion(latestSupportedVersion);\n const supportedNetworks = props.brands?.length ? mapBrands(props.brands) : props.supportedNetworks;\n\n return {\n ...props,\n configuration: props.configuration,\n supportedNetworks,\n version,\n totalPriceLabel: props.totalPriceLabel || props.configuration?.merchantName\n };\n }\n\n /**\n * Formats the component data output\n */\n protected override formatData(): ApplePayElementData {\n const { applePayToken, billingAddress, deliveryAddress } = this.state;\n const { isExpress } = this.props;\n\n return {\n paymentMethod: {\n type: ApplePayElement.type,\n applePayToken,\n ...(isExpress && { subtype: 'express' })\n },\n ...(billingAddress && { billingAddress }),\n ...(deliveryAddress && { deliveryAddress })\n };\n }\n\n protected submitAnalytics(analyticsObj: SendAnalyticsObject) {\n // Analytics will need to know about this.props.isExpress & this.props.expressPage\n super.submitAnalytics({ ...analyticsObj }, this.props);\n }\n\n public override submit = (): void => {\n // Analytics\n if (this.props.isInstantPayment) {\n this.submitAnalytics({ type: ANALYTICS_SELECTED_STR, target: ANALYTICS_INSTANT_PAYMENT_BUTTON });\n }\n void this.startSession();\n };\n\n private startSession() {\n const { version, onValidateMerchant, onPaymentMethodSelected, onShippingMethodSelected, onShippingContactSelected } = this.props;\n\n const paymentRequest = preparePaymentRequest({\n companyName: this.props.configuration.merchantName,\n countryCode: this.core.options.countryCode,\n ...this.props\n });\n\n const session = new ApplePayService(paymentRequest, {\n version,\n onError: (error: unknown) => {\n this.handleError(\n new AdyenCheckoutError('ERROR', 'ApplePay - Something went wrong on ApplePayService', {\n cause: error\n })\n );\n },\n onCancel: event => {\n this.handleError(new AdyenCheckoutError('CANCEL', 'ApplePay UI dismissed', { cause: event }));\n },\n onPaymentMethodSelected,\n onShippingMethodSelected,\n onShippingContactSelected,\n onValidateMerchant: onValidateMerchant || this.validateMerchant,\n onPaymentAuthorized: (resolve, reject, event) => {\n const billingAddress = formatApplePayContactToAdyenAddressFormat(event.payment.billingContact);\n const deliveryAddress = formatApplePayContactToAdyenAddressFormat(event.payment.shippingContact, true);\n\n this.setState({\n applePayToken: btoa(JSON.stringify(event.payment.token.paymentData)),\n authorizedEvent: event,\n ...(billingAddress && { billingAddress }),\n ...(deliveryAddress && { deliveryAddress })\n });\n\n this.handleAuthorization()\n .then(this.makePaymentsCall)\n .then(sanitizeResponse)\n .then(verifyPaymentDidNotFail)\n .then(this.collectOrderTrackingDetailsIfNeeded)\n .then(({ paymentResponse, orderDetails }) => {\n resolve({\n status: ApplePaySession.STATUS_SUCCESS,\n ...(orderDetails && { orderDetails })\n });\n return paymentResponse;\n })\n .then(paymentResponse => {\n this.handleResponse(paymentResponse);\n })\n .catch((paymentResponse?: RawPaymentResponse) => {\n const errors = paymentResponse?.error?.applePayError;\n\n reject({\n status: ApplePaySession.STATUS_FAILURE,\n errors: errors ? (Array.isArray(errors) ? errors : [errors]) : undefined\n });\n\n const responseWithError: RawPaymentResponse = {\n ...paymentResponse,\n error: {\n applePayError: errors\n }\n };\n\n this.handleFailedResult(responseWithError);\n });\n }\n });\n\n return new Promise((resolve, reject) => this.props.onClick(resolve, reject))\n .then(() => {\n session.begin();\n })\n .catch(() => ({\n // Swallow exception triggered by onClick reject\n }));\n }\n\n /**\n * Call the 'onAuthorized' callback if available.\n * Must be resolved/reject for the payment flow to continue\n *\n * @private\n */\n private async handleAuthorization(): Promise<void> {\n return new Promise<void>((resolve, reject) => {\n if (!this.props.onAuthorized) {\n resolve();\n }\n\n const { authorizedEvent, billingAddress, deliveryAddress } = this.state;\n\n this.props.onAuthorized(\n {\n authorizedEvent,\n ...(billingAddress && { billingAddress }),\n ...(deliveryAddress && { deliveryAddress })\n },\n { resolve, reject }\n );\n }).catch((error?: ApplePayJS.ApplePayError) => {\n // Format error in a way that the 'catch' of the 'onPaymentAuthorize' block accepts it\n const data = { error: { applePayError: error } };\n return Promise.reject(data);\n });\n }\n\n /**\n * Verify if the 'onOrderTrackingRequest' is provided. If so, triggers the callback expecting an\n * Apple Pay order details back\n *\n * @private\n */\n private async collectOrderTrackingDetailsIfNeeded(\n paymentResponse: PaymentResponseData\n ): Promise<{ orderDetails?: ApplePayPaymentOrderDetails; paymentResponse: PaymentResponseData }> {\n return new Promise<ApplePayPaymentOrderDetails | void>((resolve, reject) => {\n if (!this.props.onOrderTrackingRequest) {\n return resolve();\n }\n\n this.props.onOrderTrackingRequest(resolve, reject);\n })\n .then(orderDetails => {\n return {\n paymentResponse,\n ...(orderDetails && { orderDetails })\n };\n })\n .catch(() => {\n return { paymentResponse };\n });\n }\n\n private async validateMerchant(resolve, reject) {\n const { hostname: domainName } = window.location;\n const { clientKey, configuration, loadingContext, initiative } = this.props;\n const { merchantName, merchantId } = configuration;\n const path = `${APPLEPAY_SESSION_ENDPOINT}?clientKey=${clientKey}`;\n const options = { loadingContext, path };\n const request: ApplePaySessionRequest = {\n displayName: merchantName,\n domainName,\n initiative,\n merchantIdentifier: merchantId\n };\n\n try {\n const response = await httpPost(options, request);\n const decodedData: DecodeObject = base64.decode(response.data);\n if (!decodedData.success) {\n reject('Could not decode Apple Pay session');\n } else {\n const session = JSON.parse(decodedData.data);\n resolve(session);\n }\n } catch (e) {\n reject('Could not get Apple Pay session');\n }\n }\n\n /**\n * Validation\n *\n * @remarks\n * Apple Pay does not require any specific validation\n */\n get isValid(): boolean {\n return true;\n }\n\n /**\n * Determine a shopper's ability to return a form of payment from Apple Pay.\n * @returns Promise Resolve/Reject whether the shopper can use Apple Pay\n */\n public override async isAvailable(): Promise<void> {\n if (document.location.protocol !== 'https:') {\n return Promise.reject(new AdyenCheckoutError('IMPLEMENTATION_ERROR', 'Trying to start an Apple Pay session from an insecure document'));\n }\n\n if (!this.props.onValidateMerchant && !this.props.clientKey) {\n return Promise.reject(new AdyenCheckoutError('IMPLEMENTATION_ERROR', 'clientKey was not provided'));\n }\n\n try {\n if (window.ApplePaySession && ApplePaySession.canMakePayments() && ApplePaySession.supportsVersion(this.props.version)) {\n return Promise.resolve();\n }\n } catch (error) {\n console.warn(error);\n }\n\n return Promise.reject(new AdyenCheckoutError('ERROR', 'Apple Pay is not available on this device'));\n }\n\n /**\n * Renders the Apple Pay button or nothing in the Dropin\n */\n render() {\n if (this.props.showPayButton) {\n return (\n <ApplePayButton\n i18n={this.props.i18n}\n buttonColor={this.props.buttonColor}\n buttonType={this.props.buttonType}\n onClick={e => {\n e.preventDefault();\n this.submit();\n }}\n />\n );\n }\n\n return null;\n }\n}\n\nexport default ApplePayElement;\n"],"names":["ApplePayElement","UIElement","formatProps","props","version","resolveSupportedVersion","supportedNetworks","brands","length","mapBrands","_object_spread_props","configuration","totalPriceLabel","merchantName","formatData","applePayToken","billingAddress","deliveryAddress","this","state","isExpress","_object_spread","paymentMethod","type","subtype","submitAnalytics","analyticsObj","super","startSession","onValidateMerchant","onPaymentMethodSelected","onShippingMethodSelected","onShippingContactSelected","paymentRequest","preparePaymentRequest","companyName","countryCode","core","options","session","ApplePayService","onError","error","handleError","AdyenCheckoutError","cause","onCancel","event","validateMerchant","onPaymentAuthorized","resolve","reject","formatApplePayContactToAdyenAddressFormat","payment","billingContact","shippingContact","setState","btoa","JSON","stringify","token","paymentData","authorizedEvent","handleAuthorization","then","makePaymentsCall","sanitizeResponse","verifyPaymentDidNotFail","collectOrderTrackingDetailsIfNeeded","paymentResponse","orderDetails","status","ApplePaySession","STATUS_SUCCESS","handleResponse","catch","errors","applePayError","STATUS_FAILURE","Array","isArray","undefined","responseWithError","handleFailedResult","Promise","onClick","begin","onAuthorized","data","onOrderTrackingRequest","hostname","domainName","window","location","clientKey","loadingContext","initiative","merchantId","path","APPLEPAY_SESSION_ENDPOINT","request","displayName","merchantIdentifier","response","httpPost","decodedData","base64","decode","success","parse","e","isValid","isAvailable","document","protocol","canMakePayments","supportsVersion","console","warn","render","showPayButton","h","ApplePayButton","i18n","buttonColor","buttonType","preventDefault","submit","constructor","checkout","_define_property","isInstantPayment","ANALYTICS_SELECTED_STR","target","ANALYTICS_INSTANT_PAYMENT_BUTTON","bind","TxVariants","applepay","defaultProps"],"mappings":"kqDAuBA,MAAMA,UAAwBC,EA0BPC,WAAAA,CAAYC,OAEDA,EAOoBA,EAR9C,MAAMC,EAAUD,EAAMC,SAAWC,EA7BV,IA8BjBC,GAAoBH,QAAAA,EAAAA,EAAMI,cAANJ,IAAAA,OAAAA,EAAAA,EAAcK,QAASC,EAAUN,EAAMI,QAAUJ,EAAMG,kBAEjF,OAAOI,EACAP,EAAAA,CAAAA,EAAAA,GAAAA,CACHQ,cAAeR,EAAMQ,cACrBL,oBACAF,UACAQ,gBAAiBT,EAAMS,kBAAsC,QAAnBT,EAAAA,EAAMQ,qBAANR,IAAAA,OAAAA,EAAAA,EAAqBU,eAEvE,CAKA,UAAAC,GACI,MAAMC,cAAEA,EAAaC,eAAEA,EAAcC,gBAAEA,GAAoBC,KAAKC,OAC1DC,UAAEA,GAAcF,KAAKf,MAE3B,OAAOkB,EAAA,CACHC,cAAeD,EAAA,CACXE,KAAMvB,EAAgBuB,KACtBR,iBACIK,GAAa,CAAEI,QAAS,aAE5BR,GAAkB,CAAEA,kBACpBC,GAAmB,CAAEA,mBAEjC,CAEUQ,eAAAA,CAAgBC,GAEtBC,MAAMF,gBAAgBJ,EAAA,CAAA,EAAKK,GAAgBR,KAAKf,MACpD,CAUQyB,YAAAA,GACJ,MAAMxB,QAAEA,EAAOyB,mBAAEA,EAAkBC,wBAAEA,EAAuBC,yBAAEA,EAAwBC,0BAAEA,GAA8Bd,KAAKf,MAErH8B,EAAiBC,EAAsBb,EAAA,CACzCc,YAAajB,KAAKf,MAAMQ,cAAcE,aACtCuB,YAAalB,KAAKmB,KAAKC,QAAQF,aAC5BlB,KAAKf,QAGNoC,EAAU,IAAIC,EAAgBP,EAAgB,CAChD7B,UACAqC,QAAUC,IACNxB,KAAKyB,YACD,IAAIC,EAAmB,QAAS,qDAAsD,CAClFC,MAAOH,IACX,EAGRI,SAAUC,IACN7B,KAAKyB,YAAY,IAAIC,EAAmB,SAAU,wBAAyB,CAAEC,MAAOE,IAAM,EAE9FjB,0BACAC,2BACAC,4BACAH,mBAAoBA,GAAsBX,KAAK8B,iBAC/CC,oBAAqB,CAACC,EAASC,EAAQJ,KACnC,MAAM/B,EAAiBoC,EAA0CL,EAAMM,QAAQC,gBACzErC,EAAkBmC,EAA0CL,EAAMM,QAAQE,iBAAiB,GAEjGrC,KAAKsC,SAASnC,EAAA,CACVN,cAAe0C,KAAKC,KAAKC,UAAUZ,EAAMM,QAAQO,MAAMC,cACvDC,gBAAiBf,GACb/B,GAAkB,CAAEA,kBACpBC,GAAmB,CAAEA,qBAG7BC,KAAK6C,sBACAC,KAAK9C,KAAK+C,kBACVD,KAAKE,GACLF,KAAKG,GACLH,KAAK9C,KAAKkD,qCACVJ,MAAK,EAAGK,kBAAiBC,mBACtBpB,EAAQ7B,EAAA,CACJkD,OAAQC,gBAAgBC,gBACpBH,GAAgB,CAAEA,kBAEnBD,KAEVL,MAAKK,IACFnD,KAAKwD,eAAeL,EAAAA,IAEvBM,OAAON,IACWA,IAAAA,EAAf,MAAMO,EAASP,SAAsB,QAAtBA,EAAAA,EAAiB3B,aAAjB2B,IAAAA,OAAAA,EAAAA,EAAwBQ,cAEvC1B,EAAO,CACHoB,OAAQC,gBAAgBM,eACxBF,OAAQA,EAAUG,MAAMC,QAAQJ,GAAUA,EAAS,CAACA,QAAWK,IAGnE,MAAMC,EAAwCxE,EACvC2D,EAAAA,CAAAA,EAAAA,GAAAA,CACH3B,MAAO,CACHmC,cAAeD,KAIvB1D,KAAKiE,mBAAmBD,EAAAA,GAC5B,IAIZ,OAAO,IAAIE,SAAQ,CAAClC,EAASC,IAAWjC,KAAKf,MAAMkF,QAAQnC,EAASC,KAC/Da,MAAK,KACFzB,EAAQ+C,OAAK,IAEhBX,OAAM,KAAO,CAEd,IACR,CAQA,yBAAcZ,GACV,OAAO,IAAIqB,SAAc,CAAClC,EAASC,KAC1BjC,KAAKf,MAAMoF,cACZrC,IAGJ,MAAMY,gBAAEA,EAAe9C,eAAEA,EAAcC,gBAAEA,GAAoBC,KAAKC,MAElED,KAAKf,MAAMoF,aACPlE,EAAA,CACIyC,mBACI9C,GAAkB,CAAEA,kBACpBC,GAAmB,CAAEA,oBAE7B,CAAEiC,UAASC,UAAO,IAEvBwB,OAAOjC,IAEN,MAAM8C,EAAO,CAAE9C,MAAO,CAAEmC,cAAenC,IACvC,OAAO0C,QAAQjC,OAAOqC,EAAAA,GAE9B,CAQA,yCAAcpB,CACVC,GAEA,OAAO,IAAIe,SAA4C,CAAClC,EAASC,KAC7D,IAAKjC,KAAKf,MAAMsF,uBACZ,OAAOvC,IAGXhC,KAAKf,MAAMsF,uBAAuBvC,EAASC,EAAAA,IAE1Ca,MAAKM,GACKjD,EAAA,CACHgD,mBACIC,GAAgB,CAAEA,mBAG7BK,OAAM,KACI,CAAEN,qBAErB,CAEA,sBAAcrB,CAAiBE,EAASC,GACpC,MAAQuC,SAAUC,GAAeC,OAAOC,UAClCC,UAAEA,EAASnF,cAAEA,EAAaoF,eAAEA,EAAcC,WAAEA,GAAe9E,KAAKf,OAChEU,aAAEA,EAAYoF,WAAEA,GAAetF,EAE/B2B,EAAU,CAAEyD,iBAAgBG,KADrB,GAAGC,eAAuCL,KAEjDM,EAAkC,CACpCC,YAAaxF,EACb8E,aACAK,aACAM,mBAAoBL,GAGxB,IACI,MAAMM,QAAiBC,EAASlE,EAAS8D,GACnCK,EAA4BC,EAAOC,OAAOJ,EAASf,MACzD,GAAKiB,EAAYG,QAEV,CAEH1D,EADgBQ,KAAKmD,MAAMJ,EAAYjB,MAE3C,MAJIrC,EAAO,qCAKf,CAAE,MAAO2D,GACL3D,EAAO,kCACX,CACJ,CAQA,WAAI4D,GACA,OAAO,CACX,CAMA,iBAAsBC,GAClB,GAAmC,WAA/BC,SAASpB,SAASqB,SAClB,OAAO9B,QAAQjC,OAAO,IAAIP,EAAmB,uBAAwB,mEAGzE,IAAK1B,KAAKf,MAAM0B,qBAAuBX,KAAKf,MAAM2F,UAC9C,OAAOV,QAAQjC,OAAO,IAAIP,EAAmB,uBAAwB,+BAGzE,IACI,GAAIgD,OAAOpB,iBAAmBA,gBAAgB2C,mBAAqB3C,gBAAgB4C,gBAAgBlG,KAAKf,MAAMC,SAC1G,OAAOgF,QAAQlC,SAEvB,CAAE,MAAOR,GACL2E,QAAQC,KAAK5E,EACjB,CAEA,OAAO0C,QAAQjC,OAAO,IAAIP,EAAmB,QAAS,6CAC1D,CAKA2E,MAAAA,GACI,OAAIrG,KAAKf,MAAMqH,cAEPC,EAACC,EAAAA,CACGC,KAAMzG,KAAKf,MAAMwH,KACjBC,YAAa1G,KAAKf,MAAMyH,YACxBC,WAAY3G,KAAKf,MAAM0H,WACvBxC,QAASyB,IACLA,EAAEgB,iBACF5G,KAAK6G,QAAM,IAMpB,IACX,CA1RAC,WAAAA,CAAYC,EAAiB9H,GACzBwB,MAAMsG,EAAU9H,GAyDpB+H,EAAAhH,KAAgB6G,UAAS,KAEjB7G,KAAKf,MAAMgI,kBACXjH,KAAKO,gBAAgB,CAAEF,KAAM6G,EAAwBC,OAAQC,IAE5DpH,KAAKU,cAAY,IA5DtB,MAAMR,UAAEA,EAASY,0BAAEA,EAAyBD,yBAAEA,GAA6Bb,KAAKf,MAEhF,IAAkB,IAAdiB,IAAwBY,GAA6BD,GACrD,MAAM,IAAIa,EACN,uBACA,8IAIR1B,KAAKU,aAAeV,KAAKU,aAAa2G,KAAKrH,MAC3CA,KAAK6G,OAAS7G,KAAK6G,OAAOQ,KAAKrH,MAC/BA,KAAK8B,iBAAmB9B,KAAK8B,iBAAiBuF,KAAKrH,MACnDA,KAAKkD,oCAAsClD,KAAKkD,oCAAoCmE,KAAKrH,MACzFA,KAAK6C,oBAAsB7C,KAAK6C,oBAAoBwE,KAAKrH,KAC7D,EApBAgH,EADElI,EACYuB,OAAOiH,EAAWC,UAChCP,EAFElI,EAEe0I,eAAeA"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import e from"../helpers/OpenInvoiceContainer/OpenInvoiceContainer.js";import{ATOME_SUPPORTED_COUNTRIES as r,BILLING_ADDRESS_SPECIFICATION as t}from"./config.js";import{TxVariants as n}from"../tx-variants.js";function o(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function i(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{},n=Object.keys(t);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(t).filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})))),n.forEach((function(r){o(e,r,t[r])}))}return e}function s(e,r){return r=null!=r?r:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):function(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);
|
|
1
|
+
import e from"../helpers/OpenInvoiceContainer/OpenInvoiceContainer.js";import{ATOME_SUPPORTED_COUNTRIES as r,BILLING_ADDRESS_SPECIFICATION as t}from"./config.js";import{TxVariants as n}from"../tx-variants.js";function o(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function i(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{},n=Object.keys(t);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(t).filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})))),n.forEach((function(r){o(e,r,t[r])}))}return e}function s(e,r){return r=null!=r?r:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):function(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t}(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})),e}class c extends e{formatProps(e){return s(i({},super.formatProps(i({},e,{visibility:{deliveryAddress:"hidden",companyDetails:"hidden"}}))),{allowedCountries:r,personalDetailsRequiredFields:["firstName","lastName","telephoneNumber"],billingAddressRequiredFields:["country","street","postalCode"],billingAddressSpecification:t})}}o(c,"type",n.atome);export{c as default};
|
|
2
2
|
//# sourceMappingURL=Atome.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Atome.js","sources":["../../../../src/components/Atome/Atome.tsx"],"sourcesContent":["import OpenInvoiceContainer from '../helpers/OpenInvoiceContainer';\nimport { ATOME_SUPPORTED_COUNTRIES, BILLING_ADDRESS_SPECIFICATION } from './config';\nimport { TxVariants } from '../tx-variants';\n\nexport default class Atome extends OpenInvoiceContainer {\n public static type = TxVariants.atome;\n\n formatProps(props) {\n return {\n ...super.formatProps({ ...props, ...{ visibility: { deliveryAddress: 'hidden', companyDetails: 'hidden' } } }),\n allowedCountries: ATOME_SUPPORTED_COUNTRIES,\n personalDetailsRequiredFields: ['firstName', 'lastName', 'telephoneNumber'],\n billingAddressRequiredFields: ['country', 'street', 'postalCode'],\n billingAddressSpecification: BILLING_ADDRESS_SPECIFICATION\n };\n }\n}\n"],"names":["Atome","OpenInvoiceContainer","formatProps","props","_object_spread_props","_object_spread","super","visibility","deliveryAddress","companyDetails","allowedCountries","ATOME_SUPPORTED_COUNTRIES","personalDetailsRequiredFields","billingAddressRequiredFields","billingAddressSpecification","BILLING_ADDRESS_SPECIFICATION","_define_property","type","TxVariants","atome"],"mappings":"
|
|
1
|
+
{"version":3,"file":"Atome.js","sources":["../../../../src/components/Atome/Atome.tsx"],"sourcesContent":["import OpenInvoiceContainer from '../helpers/OpenInvoiceContainer';\nimport { ATOME_SUPPORTED_COUNTRIES, BILLING_ADDRESS_SPECIFICATION } from './config';\nimport { TxVariants } from '../tx-variants';\n\nexport default class Atome extends OpenInvoiceContainer {\n public static type = TxVariants.atome;\n\n formatProps(props) {\n return {\n ...super.formatProps({ ...props, ...{ visibility: { deliveryAddress: 'hidden', companyDetails: 'hidden' } } }),\n allowedCountries: ATOME_SUPPORTED_COUNTRIES,\n personalDetailsRequiredFields: ['firstName', 'lastName', 'telephoneNumber'],\n billingAddressRequiredFields: ['country', 'street', 'postalCode'],\n billingAddressSpecification: BILLING_ADDRESS_SPECIFICATION\n };\n }\n}\n"],"names":["Atome","OpenInvoiceContainer","formatProps","props","_object_spread_props","_object_spread","super","visibility","deliveryAddress","companyDetails","allowedCountries","ATOME_SUPPORTED_COUNTRIES","personalDetailsRequiredFields","billingAddressRequiredFields","billingAddressSpecification","BILLING_ADDRESS_SPECIFICATION","_define_property","type","TxVariants","atome"],"mappings":"kgCAIe,MAAMA,UAAcC,EAG/BC,WAAAA,CAAYC,GACR,OAAOC,EACAC,EAAA,GAAAC,MAAMJ,YAAYG,KAAKF,EAAU,CAAEI,WAAY,CAAEC,gBAAiB,SAAUC,eAAgB,cAAW,CAC1GC,iBAAkBC,EAClBC,8BAA+B,CAAC,YAAa,WAAY,mBACzDC,6BAA8B,CAAC,UAAW,SAAU,cACpDC,4BAA6BC,GAErC,EAVAC,EADiBhB,EACHiB,OAAOC,EAAWC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{COUNTRIES_WITH_CUSTOM_SPECIFICATION as e,STREET as t,COUNTRY as r,POSTAL_CODE as n}from"../internal/Address/constants.js";function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function c(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);
|
|
1
|
+
import{COUNTRIES_WITH_CUSTOM_SPECIFICATION as e,STREET as t,COUNTRY as r,POSTAL_CODE as n}from"../internal/Address/constants.js";function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function c(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r.push.apply(r,n)}return r}(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})),e}const s={labels:{[t]:"address"},schema:[t,[[r,70],[n,30]]]},b=["ID","PH","TH","VN","JP","TW","KR","SG","MY","HK"],i=e.reduce(((e,t)=>c(function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){o(e,t,r[t])}))}return e}({},e),{[t]:s})),{default:s});export{b as ATOME_SUPPORTED_COUNTRIES,i as BILLING_ADDRESS_SPECIFICATION};
|
|
2
2
|
//# sourceMappingURL=config.js.map
|