@adyen/adyen-web 6.31.1 → 6.32.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (585) hide show
  1. package/dist/cjs/index.cjs +2 -2
  2. package/dist/cjs/index.cjs.map +1 -1
  3. package/dist/cjs/index.d.cts +178 -152
  4. package/dist/es/components/ANCV/ANCV.js.map +1 -1
  5. package/dist/es/components/ANCV/components/ANCVInput.js.map +1 -1
  6. package/dist/es/components/Ach/Ach.js.map +1 -1
  7. package/dist/es/components/Ach/components/AccountTypeSelector.js.map +1 -1
  8. package/dist/es/components/Ach/components/AchComponent.js.map +1 -1
  9. package/dist/es/components/Address/Address.js.map +1 -1
  10. package/dist/es/components/Affirm/Affirm.js.map +1 -1
  11. package/dist/es/components/AfterPay/AfterPay.js.map +1 -1
  12. package/dist/es/components/AfterPay/AfterPayB2B.js.map +1 -1
  13. package/dist/es/components/AmazonPay/AmazonPay.js.map +1 -1
  14. package/dist/es/components/AmazonPay/components/AmazonPayButton.js.map +1 -1
  15. package/dist/es/components/AmazonPay/components/AmazonPayComponent.js.map +1 -1
  16. package/dist/es/components/AmazonPay/components/ChangePaymentDetailsButton.js.map +1 -1
  17. package/dist/es/components/AmazonPay/components/OrderButton.js.map +1 -1
  18. package/dist/es/components/AmazonPay/components/SignOutButton.js.map +1 -1
  19. package/dist/es/components/ApplePay/ApplePay.js.map +1 -1
  20. package/dist/es/components/ApplePay/components/ApplePayButton.js.map +1 -1
  21. package/dist/es/components/ApplePay/utils/payment-request.js +1 -1
  22. package/dist/es/components/Atome/Atome.js.map +1 -1
  23. package/dist/es/components/BacsDD/BacsDD.js.map +1 -1
  24. package/dist/es/components/BacsDD/components/BacsInput.js.map +1 -1
  25. package/dist/es/components/BankTransfer/BankTransfer.js.map +1 -1
  26. package/dist/es/components/BankTransfer/components/BankTransferResult/BankTransferResult.js.map +1 -1
  27. package/dist/es/components/BcmcMobile/BcmcMobile.js.map +1 -1
  28. package/dist/es/components/BillDesk/BillDeskOnline.js.map +1 -1
  29. package/dist/es/components/BillDesk/BillDeskWallet.js.map +1 -1
  30. package/dist/es/components/Blik/Blik.js.map +1 -1
  31. package/dist/es/components/Blik/components/BlikInput.js.map +1 -1
  32. package/dist/es/components/Boleto/Boleto.js.map +1 -1
  33. package/dist/es/components/Boleto/components/BoletoInput/BoletoInput.js.map +1 -1
  34. package/dist/es/components/Card/Bancontact.js.map +1 -1
  35. package/dist/es/components/Card/Card.js +1 -1
  36. package/dist/es/components/Card/Card.js.map +1 -1
  37. package/dist/es/components/Card/components/CardInput/CardInput.js +1 -1
  38. package/dist/es/components/Card/components/CardInput/CardInput.js.map +1 -1
  39. package/dist/es/components/Card/components/CardInput/components/AvailableBrands/AvailableBrands.js.map +1 -1
  40. package/dist/es/components/Card/components/CardInput/components/BrandIcon.js.map +1 -1
  41. package/dist/es/components/Card/components/CardInput/components/CVC.js.map +1 -1
  42. package/dist/es/components/Card/components/CardInput/components/CVCHint.js.map +1 -1
  43. package/dist/es/components/Card/components/CardInput/components/CardFields.js.map +1 -1
  44. package/dist/es/components/Card/components/CardInput/components/CardHolderName.js.map +1 -1
  45. package/dist/es/components/Card/components/CardInput/components/CardNumber.js.map +1 -1
  46. package/dist/es/components/Card/components/CardInput/components/DataSfSpan.js.map +1 -1
  47. package/dist/es/components/Card/components/CardInput/components/ExpirationDate.js.map +1 -1
  48. package/dist/es/components/Card/components/CardInput/components/Installments/Installments.js +1 -1
  49. package/dist/es/components/Card/components/CardInput/components/Installments/Installments.js.map +1 -1
  50. package/dist/es/components/Card/components/CardInput/components/KCPAuthentication.js.map +1 -1
  51. package/dist/es/components/Card/components/CardInput/components/StoredCardFields.js.map +1 -1
  52. package/dist/es/components/Card/components/CardInput/handlers.js +1 -1
  53. package/dist/es/components/Card/components/CardInput/handlers.js.map +1 -1
  54. package/dist/es/components/Card/components/CardInput/utils.js +1 -1
  55. package/dist/es/components/Card/components/CardInput/utils.js.map +1 -1
  56. package/dist/es/components/Card/components/ClickToPayHolder.js.map +1 -1
  57. package/dist/es/components/Card/components/ClickToPayWrapper.js.map +1 -1
  58. package/dist/es/components/Card/components/Fastlane/FastlaneSignup.js.map +1 -1
  59. package/dist/es/components/Card/components/Fastlane/InfoModal.js.map +1 -1
  60. package/dist/es/components/Card/components/Fastlane/USOnlyPhoneInput.js.map +1 -1
  61. package/dist/es/components/CashAppPay/CashAppPay.js.map +1 -1
  62. package/dist/es/components/CashAppPay/components/CashAppComponent.js.map +1 -1
  63. package/dist/es/components/ClickToPay/ClickToPay.js.map +1 -1
  64. package/dist/es/components/CustomCard/CustomCard.js.map +1 -1
  65. package/dist/es/components/CustomCard/CustomCardInput/CustomCardInput.js.map +1 -1
  66. package/dist/es/components/Doku/Doku.js.map +1 -1
  67. package/dist/es/components/Doku/components/DokuVoucherResult/DokuVoucherResult.js.map +1 -1
  68. package/dist/es/components/Donation/Donation.js.map +1 -1
  69. package/dist/es/components/Donation/components/CampaignContent.js.map +1 -1
  70. package/dist/es/components/Donation/components/CampaignInfo.js.map +1 -1
  71. package/dist/es/components/Donation/components/DonationComponent.js.map +1 -1
  72. package/dist/es/components/Donation/components/FixedAmounts.js.map +1 -1
  73. package/dist/es/components/Donation/components/Roundup.js.map +1 -1
  74. package/dist/es/components/Dotpay/index.js.map +1 -1
  75. package/dist/es/components/Dragonpay/Dragonpay.js.map +1 -1
  76. package/dist/es/components/Dragonpay/components/DragonpayInput/DragonpayInput.js.map +1 -1
  77. package/dist/es/components/Dragonpay/components/DragonpayVoucherResult/DragonpayVoucherResult.js.map +1 -1
  78. package/dist/es/components/Dropin/Dropin.js.map +1 -1
  79. package/dist/es/components/Dropin/components/DropinSuccessState.js.map +1 -1
  80. package/dist/es/components/Dropin/components/PaymentMethod/InstantPaymentMethods.js.map +1 -1
  81. package/dist/es/components/Dropin/components/PaymentMethod/OrderPaymentMethods.js.map +1 -1
  82. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodBrands/PaymentMethodBrands.js.map +1 -1
  83. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodDetails.js.map +1 -1
  84. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodIcon.js.map +1 -1
  85. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodItem/PaymentMethodItem.js.map +1 -1
  86. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodList.js +1 -1
  87. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodList.js.map +1 -1
  88. package/dist/es/components/DuitNow/DuitNow.js.map +1 -1
  89. package/dist/es/components/EPS/index.js.map +1 -1
  90. package/dist/es/components/Econtext/Econtext.js.map +1 -1
  91. package/dist/es/components/Econtext/components/EcontextVoucherResult/EcontextVoucherResult.js.map +1 -1
  92. package/dist/es/components/FacilyPay/FacilyPay10x.js.map +1 -1
  93. package/dist/es/components/FacilyPay/FacilyPay12x.js.map +1 -1
  94. package/dist/es/components/FacilyPay/FacilyPay3x.js.map +1 -1
  95. package/dist/es/components/FacilyPay/FacilyPay4x.js.map +1 -1
  96. package/dist/es/components/FacilyPay/FacilyPay6x.js.map +1 -1
  97. package/dist/es/components/Giftcard/Giftcard.js.map +1 -1
  98. package/dist/es/components/Giftcard/components/GiftcardComponent.js.map +1 -1
  99. package/dist/es/components/Giftcard/components/GiftcardFields.js.map +1 -1
  100. package/dist/es/components/Giftcard/components/GiftcardNumberField.js.map +1 -1
  101. package/dist/es/components/Giftcard/components/GiftcardPinField.js.map +1 -1
  102. package/dist/es/components/Giftcard/components/GiftcardResult.js.map +1 -1
  103. package/dist/es/components/Giropay/Giropay.js.map +1 -1
  104. package/dist/es/components/GooglePay/GooglePay.js.map +1 -1
  105. package/dist/es/components/GooglePay/components/GooglePayButton.js.map +1 -1
  106. package/dist/es/components/GooglePay/requests.js +1 -1
  107. package/dist/es/components/GooglePay/requests.js.map +1 -1
  108. package/dist/es/components/GooglePay/utils.js +1 -1
  109. package/dist/es/components/GooglePay/utils.js.map +1 -1
  110. package/dist/es/components/Klarna/KlarnaPayments.js.map +1 -1
  111. package/dist/es/components/Klarna/components/KlarnaContainer/KlarnaContainer.js.map +1 -1
  112. package/dist/es/components/Klarna/components/KlarnaWidget/KlarnaWidget.js.map +1 -1
  113. package/dist/es/components/MBWay/MBWay.js.map +1 -1
  114. package/dist/es/components/MBWay/components/MBWayInput/MBWayInput.js.map +1 -1
  115. package/dist/es/components/MealVoucherFR/MealVoucherFR.js.map +1 -1
  116. package/dist/es/components/MealVoucherFR/components/MealVoucherExpiryField.js.map +1 -1
  117. package/dist/es/components/MealVoucherFR/components/MealVoucherFields.js.map +1 -1
  118. package/dist/es/components/MolPayEBanking/MolPayEBankingMY.js.map +1 -1
  119. package/dist/es/components/MolPayEBanking/MolPayEBankingTH.js.map +1 -1
  120. package/dist/es/components/MolPayEBanking/MolPayEBankingVN.js.map +1 -1
  121. package/dist/es/components/Multibanco/Multibanco.js.map +1 -1
  122. package/dist/es/components/Multibanco/components/MultibancoVoucherResult/MultibancoVoucherResult.js.map +1 -1
  123. package/dist/es/components/OnlineBankingCZ/index.js.map +1 -1
  124. package/dist/es/components/OnlineBankingFI/OnlineBankingFI.js.map +1 -1
  125. package/dist/es/components/OnlineBankingIN/index.js.map +1 -1
  126. package/dist/es/components/OnlineBankingPL/OnlineBankingPL.js.map +1 -1
  127. package/dist/es/components/OnlineBankingSK/index.js.map +1 -1
  128. package/dist/es/components/Oxxo/Oxxo.js.map +1 -1
  129. package/dist/es/components/Oxxo/components/OxxoVoucherResult/OxxoVoucherResult.js.map +1 -1
  130. package/dist/es/components/PayByBank/PayByBank.js.map +1 -1
  131. package/dist/es/components/PayByBankPix/components/Enrollment/Enrollment.js.map +1 -1
  132. package/dist/es/components/PayByBankPix/components/Enrollment/components/PayByBankPixAwait.js.map +1 -1
  133. package/dist/es/components/PayByBankPix/components/StoredPayment/StoredPayment.js.map +1 -1
  134. package/dist/es/components/PayByBankUS/PayByBankUS.js.map +1 -1
  135. package/dist/es/components/PayMe/PayMe.js.map +1 -1
  136. package/dist/es/components/PayNow/PayNow.js.map +1 -1
  137. package/dist/es/components/PayPal/Paypal.js.map +1 -1
  138. package/dist/es/components/PayPal/components/PaypalButtons.js.map +1 -1
  139. package/dist/es/components/PayPal/components/PaypalComponent.js.map +1 -1
  140. package/dist/es/components/PayPalFastlane/Fastlane.js.map +1 -1
  141. package/dist/es/components/PayPalFastlane/components/FaslaneCardBrandIcon.js.map +1 -1
  142. package/dist/es/components/PayPalFastlane/components/FastlaneComponent.js.map +1 -1
  143. package/dist/es/components/PayTo/PayTo.js.map +1 -1
  144. package/dist/es/components/PayTo/components/BSBInput.js.map +1 -1
  145. package/dist/es/components/PayTo/components/IdentifierSelector.js.map +1 -1
  146. package/dist/es/components/PayTo/components/MandateSummary.js.map +1 -1
  147. package/dist/es/components/PayTo/components/PayIDInput.js.map +1 -1
  148. package/dist/es/components/PayTo/components/PayToComponent.js.map +1 -1
  149. package/dist/es/components/PayTo/components/PayToNameFields.js.map +1 -1
  150. package/dist/es/components/PayTo/components/PayToPhone.js.map +1 -1
  151. package/dist/es/components/PayU/PayuCashcard.js.map +1 -1
  152. package/dist/es/components/PayU/PayuNetBanking.js.map +1 -1
  153. package/dist/es/components/Pix/Pix.js.map +1 -1
  154. package/dist/es/components/Pix/components/PixInput/PixInput.js.map +1 -1
  155. package/dist/es/components/PreAuthorizedDebitCanada/PreAuthorizedDebitCanada.js.map +1 -1
  156. package/dist/es/components/PromptPay/PromptPay.js.map +1 -1
  157. package/dist/es/components/RatePay/RatePay.js.map +1 -1
  158. package/dist/es/components/RatePay/RatePayDirectDebit.js.map +1 -1
  159. package/dist/es/components/Redirect/Redirect.js.map +1 -1
  160. package/dist/es/components/Redirect/components/RedirectShopper/RedirectShopper.js.map +1 -1
  161. package/dist/es/components/Riverty/Riverty.js.map +1 -1
  162. package/dist/es/components/Sepa/Sepa.js.map +1 -1
  163. package/dist/es/components/Swish/Swish.js.map +1 -1
  164. package/dist/es/components/ThreeDS2/ThreeDS2Challenge.js.map +1 -1
  165. package/dist/es/components/ThreeDS2/ThreeDS2DeviceFingerprint.js.map +1 -1
  166. package/dist/es/components/ThreeDS2/components/Challenge/PrepareChallenge3DS2.js.map +1 -1
  167. package/dist/es/components/ThreeDS2/components/DeviceFingerprint/DoFingerprint3DS2.js.map +1 -1
  168. package/dist/es/components/ThreeDS2/components/DeviceFingerprint/PrepareFingerprint3DS2.js.map +1 -1
  169. package/dist/es/components/ThreeDS2/components/Form/ThreeDS2Form.js.map +1 -1
  170. package/dist/es/components/Trustly/Trustly.js.map +1 -1
  171. package/dist/es/components/Twint/Twint.js.map +1 -1
  172. package/dist/es/components/UPI/UPI.js.map +1 -1
  173. package/dist/es/components/UPI/components/UPIIntentAppList/UPIIntentAppItem/UPIIntentAppItem.js.map +1 -1
  174. package/dist/es/components/UPI/components/UPIIntentAppList/UPIIntentAppList.js.map +1 -1
  175. package/dist/es/components/UPI/components/UPIMandate/UPIMandate.js.map +1 -1
  176. package/dist/es/components/Vipps/Vipps.js.map +1 -1
  177. package/dist/es/components/WalletIN/index.js.map +1 -1
  178. package/dist/es/components/WeChat/WeChat.js.map +1 -1
  179. package/dist/es/components/helpers/IssuerListContainer/IssuerListContainer.js.map +1 -1
  180. package/dist/es/components/helpers/OpenInvoiceContainer/OpenInvoiceContainer.js.map +1 -1
  181. package/dist/es/components/helpers/QRLoaderContainer/QRLoaderContainer.js.map +1 -1
  182. package/dist/es/components/internal/Address/Address.js.map +1 -1
  183. package/dist/es/components/internal/Address/components/CountryField.js.map +1 -1
  184. package/dist/es/components/internal/Address/components/FieldContainer.js.map +1 -1
  185. package/dist/es/components/internal/Address/components/ReadOnlyAddress.js.map +1 -1
  186. package/dist/es/components/internal/Address/components/StateField.js.map +1 -1
  187. package/dist/es/components/internal/Alert/Alert.js.map +1 -1
  188. package/dist/es/components/internal/Await/Await.js.map +1 -1
  189. package/dist/es/components/internal/Await/components/AwaitFinalState.js.map +1 -1
  190. package/dist/es/components/internal/BaseElement/BaseElement.js.map +1 -1
  191. package/dist/es/components/internal/Brand/Brand.js.map +1 -1
  192. package/dist/es/components/internal/Button/CopyButton.js.map +1 -1
  193. package/dist/es/components/internal/Button/CopyIconButton.js.map +1 -1
  194. package/dist/es/components/internal/ClickToPay/ClickToPayComponent.js.map +1 -1
  195. package/dist/es/components/internal/ClickToPay/components/CtPBrand/CtPBrand.js.map +1 -1
  196. package/dist/es/components/internal/ClickToPay/components/CtPCards/CtPCards.js.map +1 -1
  197. package/dist/es/components/internal/ClickToPay/components/CtPCards/CtPCardsList/CtPCardsList.js.map +1 -1
  198. package/dist/es/components/internal/ClickToPay/components/CtPCards/CtPSingleCard/CtPSingleCard.js.map +1 -1
  199. package/dist/es/components/internal/ClickToPay/components/CtPInfo/CtPInfoModal/CtPInfoModal.js.map +1 -1
  200. package/dist/es/components/internal/ClickToPay/components/CtPLogin/CtPLoginInput.js.map +1 -1
  201. package/dist/es/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePassword.js.map +1 -1
  202. package/dist/es/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPOneTimePasswordInput.js.map +1 -1
  203. package/dist/es/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPResendOtpLink.js.map +1 -1
  204. package/dist/es/components/internal/ClickToPay/components/CtPSection/CtPSection.js.map +1 -1
  205. package/dist/es/components/internal/ClickToPay/context/ClickToPayProvider.js.map +1 -1
  206. package/dist/es/components/internal/ConsentCheckboxLabel/ConsentCheckboxLabel.js.map +1 -1
  207. package/dist/es/components/internal/ContentSeparator/ContentSeparator.js.map +1 -1
  208. package/dist/es/components/internal/Countdown/index.js.map +1 -1
  209. package/dist/es/components/internal/DisclaimerMessage/DisclaimerMessage.js.map +1 -1
  210. package/dist/es/components/internal/FormFields/Checkbox/Checkbox.js.map +1 -1
  211. package/dist/es/components/internal/FormFields/Field/Field.js.map +1 -1
  212. package/dist/es/components/internal/FormFields/InputDate/InputDate.js.map +1 -1
  213. package/dist/es/components/internal/FormFields/InputEmail.js.map +1 -1
  214. package/dist/es/components/internal/FormFields/InputText.js.map +1 -1
  215. package/dist/es/components/internal/FormFields/RadioGroup/RadioGroup.js.map +1 -1
  216. package/dist/es/components/internal/FormFields/RadioGroupExtended/RadioButtonIcon.js.map +1 -1
  217. package/dist/es/components/internal/FormFields/RadioGroupExtended/RadioGroupExtended.js.map +1 -1
  218. package/dist/es/components/internal/FormFields/Select/Select.js.map +1 -1
  219. package/dist/es/components/internal/FormFields/Select/components/SelectList.js.map +1 -1
  220. package/dist/es/components/internal/FormFields/Select/components/SelectListItem.js.map +1 -1
  221. package/dist/es/components/internal/IFrame/Iframe.js.map +1 -1
  222. package/dist/es/components/internal/IbanInput/IbanInput.js.map +1 -1
  223. package/dist/es/components/internal/Icon/Icon.js.map +1 -1
  224. package/dist/es/components/internal/Img/Img.js.map +1 -1
  225. package/dist/es/components/internal/IssuerList/IssuerButtonGroup/IssuerButton.js.map +1 -1
  226. package/dist/es/components/internal/IssuerList/IssuerButtonGroup/IssuerButtonGroup.js.map +1 -1
  227. package/dist/es/components/internal/IssuerList/IssuerList.js.map +1 -1
  228. package/dist/es/components/internal/Link/Link.js.map +1 -1
  229. package/dist/es/components/internal/LoadingWrapper/LoadingWrapper.js.map +1 -1
  230. package/dist/es/components/internal/Modal/Modal.js.map +1 -1
  231. package/dist/es/components/internal/OpenInvoice/OpenInvoice.js.map +1 -1
  232. package/dist/es/components/internal/PayButton/PayButton.js.map +1 -1
  233. package/dist/es/components/internal/PhoneInput/PhoneInputFields.js.map +1 -1
  234. package/dist/es/components/internal/PhoneInput/PhoneInputForm.js.map +1 -1
  235. package/dist/es/components/internal/QRLoader/QRLoaderDetailsProvider.js.map +1 -1
  236. package/dist/es/components/internal/QRLoader/components/QRCodeCopyButton.js.map +1 -1
  237. package/dist/es/components/internal/QRLoader/components/QRCountdown.js.map +1 -1
  238. package/dist/es/components/internal/QRLoader/components/QRFinalState.js.map +1 -1
  239. package/dist/es/components/internal/QRLoader/components/QRImage.js.map +1 -1
  240. package/dist/es/components/internal/QRLoader/components/QRIntructions.js.map +1 -1
  241. package/dist/es/components/internal/QRLoader/components/QRProgressbar.js.map +1 -1
  242. package/dist/es/components/internal/RedirectButton/RedirectButton.js.map +1 -1
  243. package/dist/es/components/internal/SecuredFields/SFP/SFPUtils.js +1 -1
  244. package/dist/es/components/internal/SecuredFields/SFP/SFPUtils.js.map +1 -1
  245. package/dist/es/components/internal/SecuredFields/SFP/SecuredFieldsProvider.js +1 -1
  246. package/dist/es/components/internal/SecuredFields/SFP/SecuredFieldsProvider.js.map +1 -1
  247. package/dist/es/components/internal/SecuredFields/SFP/SecuredFieldsProviderHandlers.js +1 -1
  248. package/dist/es/components/internal/SecuredFields/SFP/SecuredFieldsProviderHandlers.js.map +1 -1
  249. package/dist/es/components/internal/SecuredFields/lib/CSF/extensions/createSecuredFields.js +1 -1
  250. package/dist/es/components/internal/SecuredFields/lib/CSF/extensions/createSecuredFields.js.map +1 -1
  251. package/dist/es/components/internal/SecuredFields/lib/constants.js.map +1 -1
  252. package/dist/es/components/internal/SecuredFields/lib/securedField/utils/createIframe.js +1 -1
  253. package/dist/es/components/internal/SecuredFields/lib/securedField/utils/createIframe.js.map +1 -1
  254. package/dist/es/components/internal/SecuredFields/lib/securedField/utils/processAriaConfig.js +1 -1
  255. package/dist/es/components/internal/SecuredFields/lib/securedField/utils/processAriaConfig.js.map +1 -1
  256. package/dist/es/components/internal/SecuredFields/utils.js +1 -1
  257. package/dist/es/components/internal/SecuredFields/utils.js.map +1 -1
  258. package/dist/es/components/internal/SegmentedControl/SegmentedControl.js.map +1 -1
  259. package/dist/es/components/internal/SegmentedControl/SegmentedControlRegion.js.map +1 -1
  260. package/dist/es/components/internal/Spinner/Spinner.js.map +1 -1
  261. package/dist/es/components/internal/StoreDetails/StoreDetails.js.map +1 -1
  262. package/dist/es/components/internal/Timeline/Timeline.js.map +1 -1
  263. package/dist/es/components/internal/Timeline/TimelineWrapper.js.map +1 -1
  264. package/dist/es/components/internal/Toggle/Toggle.js.map +1 -1
  265. package/dist/es/components/internal/Tooltip/SingletonTooltipProvider.js.map +1 -1
  266. package/dist/es/components/internal/Tooltip/Tooltip.js.map +1 -1
  267. package/dist/es/components/internal/Tooltip/TooltipController.js.map +1 -1
  268. package/dist/es/components/internal/UIElement/UIElement.js.map +1 -1
  269. package/dist/es/core/Analytics/Analytics.js +1 -1
  270. package/dist/es/core/Analytics/Analytics.js.map +1 -1
  271. package/dist/es/core/Context/AmountProvider.js.map +1 -1
  272. package/dist/es/core/Context/CoreProvider.js.map +1 -1
  273. package/dist/es/core/Environment/Environment.js +1 -1
  274. package/dist/es/core/Environment/Environment.js.map +1 -1
  275. package/dist/es/core/Errors/AdyenCheckoutError.js.map +1 -1
  276. package/dist/es/core/Errors/SRMessages.js.map +1 -1
  277. package/dist/es/core/Errors/SRPanel.js.map +1 -1
  278. package/dist/es/core/Errors/SRPanelProvider.js.map +1 -1
  279. package/dist/es/core/Errors/utils.js +1 -1
  280. package/dist/es/core/ProcessResponse/PaymentMethods/PaymentMethods.js +1 -1
  281. package/dist/es/core/ProcessResponse/PaymentMethods/PaymentMethods.js.map +1 -1
  282. package/dist/es/core/RiskModule/RiskModule.js.map +1 -1
  283. package/dist/es/core/RiskModule/components/DeviceFingerprint/DeviceFingerprint.js.map +1 -1
  284. package/dist/es/core/config.js +1 -1
  285. package/dist/es/core/core.js +1 -1
  286. package/dist/es/core/core.js.map +1 -1
  287. package/dist/es/external/preact/compat/dist/compat.js +1 -1
  288. package/dist/es/external/preact/compat/dist/compat.js.map +1 -1
  289. package/dist/es/hooks/usePaymentStatusTimer/usePaymentStatusTimer.js.map +1 -1
  290. package/dist/es/index.d.ts +178 -152
  291. package/dist/es/index.js +1 -1
  292. package/dist/es/utils/getOrigin.js +1 -1
  293. package/dist/es-legacy/components/ANCV/ANCV.js.map +1 -1
  294. package/dist/es-legacy/components/ANCV/components/ANCVInput.js.map +1 -1
  295. package/dist/es-legacy/components/Ach/Ach.js.map +1 -1
  296. package/dist/es-legacy/components/Ach/components/AccountTypeSelector.js.map +1 -1
  297. package/dist/es-legacy/components/Ach/components/AchComponent.js.map +1 -1
  298. package/dist/es-legacy/components/Address/Address.js.map +1 -1
  299. package/dist/es-legacy/components/Affirm/Affirm.js.map +1 -1
  300. package/dist/es-legacy/components/AfterPay/AfterPay.js.map +1 -1
  301. package/dist/es-legacy/components/AfterPay/AfterPayB2B.js.map +1 -1
  302. package/dist/es-legacy/components/AmazonPay/AmazonPay.js.map +1 -1
  303. package/dist/es-legacy/components/AmazonPay/components/AmazonPayButton.js.map +1 -1
  304. package/dist/es-legacy/components/AmazonPay/components/AmazonPayComponent.js.map +1 -1
  305. package/dist/es-legacy/components/AmazonPay/components/ChangePaymentDetailsButton.js.map +1 -1
  306. package/dist/es-legacy/components/AmazonPay/components/OrderButton.js.map +1 -1
  307. package/dist/es-legacy/components/AmazonPay/components/SignOutButton.js.map +1 -1
  308. package/dist/es-legacy/components/ApplePay/ApplePay.js.map +1 -1
  309. package/dist/es-legacy/components/ApplePay/components/ApplePayButton.js.map +1 -1
  310. package/dist/es-legacy/components/ApplePay/utils/payment-request.js +1 -1
  311. package/dist/es-legacy/components/Atome/Atome.js.map +1 -1
  312. package/dist/es-legacy/components/BacsDD/BacsDD.js.map +1 -1
  313. package/dist/es-legacy/components/BacsDD/components/BacsInput.js.map +1 -1
  314. package/dist/es-legacy/components/BankTransfer/BankTransfer.js.map +1 -1
  315. package/dist/es-legacy/components/BankTransfer/components/BankTransferResult/BankTransferResult.js.map +1 -1
  316. package/dist/es-legacy/components/BcmcMobile/BcmcMobile.js.map +1 -1
  317. package/dist/es-legacy/components/BillDesk/BillDeskOnline.js.map +1 -1
  318. package/dist/es-legacy/components/BillDesk/BillDeskWallet.js.map +1 -1
  319. package/dist/es-legacy/components/Blik/Blik.js.map +1 -1
  320. package/dist/es-legacy/components/Blik/components/BlikInput.js.map +1 -1
  321. package/dist/es-legacy/components/Boleto/Boleto.js.map +1 -1
  322. package/dist/es-legacy/components/Boleto/components/BoletoInput/BoletoInput.js.map +1 -1
  323. package/dist/es-legacy/components/Card/Bancontact.js.map +1 -1
  324. package/dist/es-legacy/components/Card/Card.js +1 -1
  325. package/dist/es-legacy/components/Card/Card.js.map +1 -1
  326. package/dist/es-legacy/components/Card/components/CardInput/CardInput.js +1 -1
  327. package/dist/es-legacy/components/Card/components/CardInput/CardInput.js.map +1 -1
  328. package/dist/es-legacy/components/Card/components/CardInput/components/AvailableBrands/AvailableBrands.js.map +1 -1
  329. package/dist/es-legacy/components/Card/components/CardInput/components/BrandIcon.js.map +1 -1
  330. package/dist/es-legacy/components/Card/components/CardInput/components/CVC.js.map +1 -1
  331. package/dist/es-legacy/components/Card/components/CardInput/components/CVCHint.js.map +1 -1
  332. package/dist/es-legacy/components/Card/components/CardInput/components/CardFields.js.map +1 -1
  333. package/dist/es-legacy/components/Card/components/CardInput/components/CardHolderName.js.map +1 -1
  334. package/dist/es-legacy/components/Card/components/CardInput/components/CardNumber.js.map +1 -1
  335. package/dist/es-legacy/components/Card/components/CardInput/components/DataSfSpan.js.map +1 -1
  336. package/dist/es-legacy/components/Card/components/CardInput/components/ExpirationDate.js.map +1 -1
  337. package/dist/es-legacy/components/Card/components/CardInput/components/Installments/Installments.js +1 -1
  338. package/dist/es-legacy/components/Card/components/CardInput/components/Installments/Installments.js.map +1 -1
  339. package/dist/es-legacy/components/Card/components/CardInput/components/KCPAuthentication.js.map +1 -1
  340. package/dist/es-legacy/components/Card/components/CardInput/components/StoredCardFields.js.map +1 -1
  341. package/dist/es-legacy/components/Card/components/CardInput/handlers.js +1 -1
  342. package/dist/es-legacy/components/Card/components/CardInput/handlers.js.map +1 -1
  343. package/dist/es-legacy/components/Card/components/CardInput/utils.js +1 -1
  344. package/dist/es-legacy/components/Card/components/CardInput/utils.js.map +1 -1
  345. package/dist/es-legacy/components/Card/components/ClickToPayHolder.js.map +1 -1
  346. package/dist/es-legacy/components/Card/components/ClickToPayWrapper.js.map +1 -1
  347. package/dist/es-legacy/components/Card/components/Fastlane/FastlaneSignup.js.map +1 -1
  348. package/dist/es-legacy/components/Card/components/Fastlane/InfoModal.js.map +1 -1
  349. package/dist/es-legacy/components/Card/components/Fastlane/USOnlyPhoneInput.js.map +1 -1
  350. package/dist/es-legacy/components/CashAppPay/CashAppPay.js.map +1 -1
  351. package/dist/es-legacy/components/CashAppPay/components/CashAppComponent.js.map +1 -1
  352. package/dist/es-legacy/components/ClickToPay/ClickToPay.js.map +1 -1
  353. package/dist/es-legacy/components/CustomCard/CustomCard.js.map +1 -1
  354. package/dist/es-legacy/components/CustomCard/CustomCardInput/CustomCardInput.js.map +1 -1
  355. package/dist/es-legacy/components/Doku/Doku.js.map +1 -1
  356. package/dist/es-legacy/components/Doku/components/DokuVoucherResult/DokuVoucherResult.js.map +1 -1
  357. package/dist/es-legacy/components/Donation/Donation.js.map +1 -1
  358. package/dist/es-legacy/components/Donation/components/CampaignContent.js.map +1 -1
  359. package/dist/es-legacy/components/Donation/components/CampaignInfo.js.map +1 -1
  360. package/dist/es-legacy/components/Donation/components/DonationComponent.js.map +1 -1
  361. package/dist/es-legacy/components/Donation/components/FixedAmounts.js.map +1 -1
  362. package/dist/es-legacy/components/Donation/components/Roundup.js.map +1 -1
  363. package/dist/es-legacy/components/Dotpay/index.js.map +1 -1
  364. package/dist/es-legacy/components/Dragonpay/Dragonpay.js.map +1 -1
  365. package/dist/es-legacy/components/Dragonpay/components/DragonpayInput/DragonpayInput.js.map +1 -1
  366. package/dist/es-legacy/components/Dragonpay/components/DragonpayVoucherResult/DragonpayVoucherResult.js.map +1 -1
  367. package/dist/es-legacy/components/Dropin/Dropin.js.map +1 -1
  368. package/dist/es-legacy/components/Dropin/components/DropinSuccessState.js.map +1 -1
  369. package/dist/es-legacy/components/Dropin/components/PaymentMethod/InstantPaymentMethods.js.map +1 -1
  370. package/dist/es-legacy/components/Dropin/components/PaymentMethod/OrderPaymentMethods.js.map +1 -1
  371. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodBrands/PaymentMethodBrands.js.map +1 -1
  372. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodDetails.js.map +1 -1
  373. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodIcon.js.map +1 -1
  374. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodItem/PaymentMethodItem.js.map +1 -1
  375. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodList.js +1 -1
  376. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodList.js.map +1 -1
  377. package/dist/es-legacy/components/DuitNow/DuitNow.js.map +1 -1
  378. package/dist/es-legacy/components/EPS/index.js.map +1 -1
  379. package/dist/es-legacy/components/Econtext/Econtext.js.map +1 -1
  380. package/dist/es-legacy/components/Econtext/components/EcontextVoucherResult/EcontextVoucherResult.js.map +1 -1
  381. package/dist/es-legacy/components/FacilyPay/FacilyPay10x.js.map +1 -1
  382. package/dist/es-legacy/components/FacilyPay/FacilyPay12x.js.map +1 -1
  383. package/dist/es-legacy/components/FacilyPay/FacilyPay3x.js.map +1 -1
  384. package/dist/es-legacy/components/FacilyPay/FacilyPay4x.js.map +1 -1
  385. package/dist/es-legacy/components/FacilyPay/FacilyPay6x.js.map +1 -1
  386. package/dist/es-legacy/components/Giftcard/Giftcard.js.map +1 -1
  387. package/dist/es-legacy/components/Giftcard/components/GiftcardComponent.js.map +1 -1
  388. package/dist/es-legacy/components/Giftcard/components/GiftcardFields.js.map +1 -1
  389. package/dist/es-legacy/components/Giftcard/components/GiftcardNumberField.js.map +1 -1
  390. package/dist/es-legacy/components/Giftcard/components/GiftcardPinField.js.map +1 -1
  391. package/dist/es-legacy/components/Giftcard/components/GiftcardResult.js.map +1 -1
  392. package/dist/es-legacy/components/Giropay/Giropay.js.map +1 -1
  393. package/dist/es-legacy/components/GooglePay/GooglePay.js.map +1 -1
  394. package/dist/es-legacy/components/GooglePay/components/GooglePayButton.js.map +1 -1
  395. package/dist/es-legacy/components/GooglePay/requests.js +1 -1
  396. package/dist/es-legacy/components/GooglePay/requests.js.map +1 -1
  397. package/dist/es-legacy/components/GooglePay/utils.js +1 -1
  398. package/dist/es-legacy/components/GooglePay/utils.js.map +1 -1
  399. package/dist/es-legacy/components/Klarna/KlarnaPayments.js.map +1 -1
  400. package/dist/es-legacy/components/Klarna/components/KlarnaContainer/KlarnaContainer.js.map +1 -1
  401. package/dist/es-legacy/components/Klarna/components/KlarnaWidget/KlarnaWidget.js.map +1 -1
  402. package/dist/es-legacy/components/MBWay/MBWay.js.map +1 -1
  403. package/dist/es-legacy/components/MBWay/components/MBWayInput/MBWayInput.js.map +1 -1
  404. package/dist/es-legacy/components/MealVoucherFR/MealVoucherFR.js.map +1 -1
  405. package/dist/es-legacy/components/MealVoucherFR/components/MealVoucherExpiryField.js.map +1 -1
  406. package/dist/es-legacy/components/MealVoucherFR/components/MealVoucherFields.js.map +1 -1
  407. package/dist/es-legacy/components/MolPayEBanking/MolPayEBankingMY.js.map +1 -1
  408. package/dist/es-legacy/components/MolPayEBanking/MolPayEBankingTH.js.map +1 -1
  409. package/dist/es-legacy/components/MolPayEBanking/MolPayEBankingVN.js.map +1 -1
  410. package/dist/es-legacy/components/Multibanco/Multibanco.js.map +1 -1
  411. package/dist/es-legacy/components/Multibanco/components/MultibancoVoucherResult/MultibancoVoucherResult.js.map +1 -1
  412. package/dist/es-legacy/components/OnlineBankingCZ/index.js.map +1 -1
  413. package/dist/es-legacy/components/OnlineBankingFI/OnlineBankingFI.js.map +1 -1
  414. package/dist/es-legacy/components/OnlineBankingIN/index.js.map +1 -1
  415. package/dist/es-legacy/components/OnlineBankingPL/OnlineBankingPL.js.map +1 -1
  416. package/dist/es-legacy/components/OnlineBankingSK/index.js.map +1 -1
  417. package/dist/es-legacy/components/Oxxo/Oxxo.js.map +1 -1
  418. package/dist/es-legacy/components/Oxxo/components/OxxoVoucherResult/OxxoVoucherResult.js.map +1 -1
  419. package/dist/es-legacy/components/PayByBank/PayByBank.js.map +1 -1
  420. package/dist/es-legacy/components/PayByBankPix/components/Enrollment/Enrollment.js.map +1 -1
  421. package/dist/es-legacy/components/PayByBankPix/components/Enrollment/components/PayByBankPixAwait.js.map +1 -1
  422. package/dist/es-legacy/components/PayByBankPix/components/StoredPayment/StoredPayment.js.map +1 -1
  423. package/dist/es-legacy/components/PayByBankUS/PayByBankUS.js.map +1 -1
  424. package/dist/es-legacy/components/PayMe/PayMe.js.map +1 -1
  425. package/dist/es-legacy/components/PayNow/PayNow.js.map +1 -1
  426. package/dist/es-legacy/components/PayPal/Paypal.js.map +1 -1
  427. package/dist/es-legacy/components/PayPal/components/PaypalButtons.js.map +1 -1
  428. package/dist/es-legacy/components/PayPal/components/PaypalComponent.js.map +1 -1
  429. package/dist/es-legacy/components/PayPalFastlane/Fastlane.js.map +1 -1
  430. package/dist/es-legacy/components/PayPalFastlane/components/FaslaneCardBrandIcon.js.map +1 -1
  431. package/dist/es-legacy/components/PayPalFastlane/components/FastlaneComponent.js.map +1 -1
  432. package/dist/es-legacy/components/PayTo/PayTo.js.map +1 -1
  433. package/dist/es-legacy/components/PayTo/components/BSBInput.js.map +1 -1
  434. package/dist/es-legacy/components/PayTo/components/IdentifierSelector.js.map +1 -1
  435. package/dist/es-legacy/components/PayTo/components/MandateSummary.js.map +1 -1
  436. package/dist/es-legacy/components/PayTo/components/PayIDInput.js.map +1 -1
  437. package/dist/es-legacy/components/PayTo/components/PayToComponent.js.map +1 -1
  438. package/dist/es-legacy/components/PayTo/components/PayToNameFields.js.map +1 -1
  439. package/dist/es-legacy/components/PayTo/components/PayToPhone.js.map +1 -1
  440. package/dist/es-legacy/components/PayU/PayuCashcard.js.map +1 -1
  441. package/dist/es-legacy/components/PayU/PayuNetBanking.js.map +1 -1
  442. package/dist/es-legacy/components/Pix/Pix.js.map +1 -1
  443. package/dist/es-legacy/components/Pix/components/PixInput/PixInput.js.map +1 -1
  444. package/dist/es-legacy/components/PreAuthorizedDebitCanada/PreAuthorizedDebitCanada.js.map +1 -1
  445. package/dist/es-legacy/components/PromptPay/PromptPay.js.map +1 -1
  446. package/dist/es-legacy/components/RatePay/RatePay.js.map +1 -1
  447. package/dist/es-legacy/components/RatePay/RatePayDirectDebit.js.map +1 -1
  448. package/dist/es-legacy/components/Redirect/Redirect.js.map +1 -1
  449. package/dist/es-legacy/components/Redirect/components/RedirectShopper/RedirectShopper.js.map +1 -1
  450. package/dist/es-legacy/components/Riverty/Riverty.js.map +1 -1
  451. package/dist/es-legacy/components/Sepa/Sepa.js.map +1 -1
  452. package/dist/es-legacy/components/Swish/Swish.js.map +1 -1
  453. package/dist/es-legacy/components/ThreeDS2/ThreeDS2Challenge.js.map +1 -1
  454. package/dist/es-legacy/components/ThreeDS2/ThreeDS2DeviceFingerprint.js.map +1 -1
  455. package/dist/es-legacy/components/ThreeDS2/components/Challenge/PrepareChallenge3DS2.js.map +1 -1
  456. package/dist/es-legacy/components/ThreeDS2/components/DeviceFingerprint/DoFingerprint3DS2.js.map +1 -1
  457. package/dist/es-legacy/components/ThreeDS2/components/DeviceFingerprint/PrepareFingerprint3DS2.js.map +1 -1
  458. package/dist/es-legacy/components/ThreeDS2/components/Form/ThreeDS2Form.js.map +1 -1
  459. package/dist/es-legacy/components/Trustly/Trustly.js.map +1 -1
  460. package/dist/es-legacy/components/Twint/Twint.js.map +1 -1
  461. package/dist/es-legacy/components/UPI/UPI.js.map +1 -1
  462. package/dist/es-legacy/components/UPI/components/UPIIntentAppList/UPIIntentAppItem/UPIIntentAppItem.js.map +1 -1
  463. package/dist/es-legacy/components/UPI/components/UPIIntentAppList/UPIIntentAppList.js.map +1 -1
  464. package/dist/es-legacy/components/UPI/components/UPIMandate/UPIMandate.js.map +1 -1
  465. package/dist/es-legacy/components/Vipps/Vipps.js.map +1 -1
  466. package/dist/es-legacy/components/WalletIN/index.js.map +1 -1
  467. package/dist/es-legacy/components/WeChat/WeChat.js.map +1 -1
  468. package/dist/es-legacy/components/helpers/IssuerListContainer/IssuerListContainer.js.map +1 -1
  469. package/dist/es-legacy/components/helpers/OpenInvoiceContainer/OpenInvoiceContainer.js.map +1 -1
  470. package/dist/es-legacy/components/helpers/QRLoaderContainer/QRLoaderContainer.js.map +1 -1
  471. package/dist/es-legacy/components/internal/Address/Address.js.map +1 -1
  472. package/dist/es-legacy/components/internal/Address/components/CountryField.js.map +1 -1
  473. package/dist/es-legacy/components/internal/Address/components/FieldContainer.js.map +1 -1
  474. package/dist/es-legacy/components/internal/Address/components/ReadOnlyAddress.js.map +1 -1
  475. package/dist/es-legacy/components/internal/Address/components/StateField.js.map +1 -1
  476. package/dist/es-legacy/components/internal/Alert/Alert.js.map +1 -1
  477. package/dist/es-legacy/components/internal/Await/Await.js.map +1 -1
  478. package/dist/es-legacy/components/internal/Await/components/AwaitFinalState.js.map +1 -1
  479. package/dist/es-legacy/components/internal/BaseElement/BaseElement.js.map +1 -1
  480. package/dist/es-legacy/components/internal/Brand/Brand.js.map +1 -1
  481. package/dist/es-legacy/components/internal/Button/CopyButton.js.map +1 -1
  482. package/dist/es-legacy/components/internal/Button/CopyIconButton.js.map +1 -1
  483. package/dist/es-legacy/components/internal/ClickToPay/ClickToPayComponent.js.map +1 -1
  484. package/dist/es-legacy/components/internal/ClickToPay/components/CtPBrand/CtPBrand.js.map +1 -1
  485. package/dist/es-legacy/components/internal/ClickToPay/components/CtPCards/CtPCards.js.map +1 -1
  486. package/dist/es-legacy/components/internal/ClickToPay/components/CtPCards/CtPCardsList/CtPCardsList.js.map +1 -1
  487. package/dist/es-legacy/components/internal/ClickToPay/components/CtPCards/CtPSingleCard/CtPSingleCard.js.map +1 -1
  488. package/dist/es-legacy/components/internal/ClickToPay/components/CtPInfo/CtPInfoModal/CtPInfoModal.js.map +1 -1
  489. package/dist/es-legacy/components/internal/ClickToPay/components/CtPLogin/CtPLoginInput.js.map +1 -1
  490. package/dist/es-legacy/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePassword.js.map +1 -1
  491. package/dist/es-legacy/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPOneTimePasswordInput.js.map +1 -1
  492. package/dist/es-legacy/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPResendOtpLink.js.map +1 -1
  493. package/dist/es-legacy/components/internal/ClickToPay/components/CtPSection/CtPSection.js.map +1 -1
  494. package/dist/es-legacy/components/internal/ClickToPay/context/ClickToPayProvider.js.map +1 -1
  495. package/dist/es-legacy/components/internal/ConsentCheckboxLabel/ConsentCheckboxLabel.js.map +1 -1
  496. package/dist/es-legacy/components/internal/ContentSeparator/ContentSeparator.js.map +1 -1
  497. package/dist/es-legacy/components/internal/Countdown/index.js.map +1 -1
  498. package/dist/es-legacy/components/internal/DisclaimerMessage/DisclaimerMessage.js.map +1 -1
  499. package/dist/es-legacy/components/internal/FormFields/Checkbox/Checkbox.js.map +1 -1
  500. package/dist/es-legacy/components/internal/FormFields/Field/Field.js.map +1 -1
  501. package/dist/es-legacy/components/internal/FormFields/InputDate/InputDate.js.map +1 -1
  502. package/dist/es-legacy/components/internal/FormFields/InputEmail.js.map +1 -1
  503. package/dist/es-legacy/components/internal/FormFields/InputText.js.map +1 -1
  504. package/dist/es-legacy/components/internal/FormFields/RadioGroup/RadioGroup.js.map +1 -1
  505. package/dist/es-legacy/components/internal/FormFields/RadioGroupExtended/RadioButtonIcon.js.map +1 -1
  506. package/dist/es-legacy/components/internal/FormFields/RadioGroupExtended/RadioGroupExtended.js.map +1 -1
  507. package/dist/es-legacy/components/internal/FormFields/Select/Select.js.map +1 -1
  508. package/dist/es-legacy/components/internal/FormFields/Select/components/SelectList.js.map +1 -1
  509. package/dist/es-legacy/components/internal/FormFields/Select/components/SelectListItem.js.map +1 -1
  510. package/dist/es-legacy/components/internal/IFrame/Iframe.js.map +1 -1
  511. package/dist/es-legacy/components/internal/IbanInput/IbanInput.js.map +1 -1
  512. package/dist/es-legacy/components/internal/Icon/Icon.js.map +1 -1
  513. package/dist/es-legacy/components/internal/Img/Img.js.map +1 -1
  514. package/dist/es-legacy/components/internal/IssuerList/IssuerButtonGroup/IssuerButton.js.map +1 -1
  515. package/dist/es-legacy/components/internal/IssuerList/IssuerButtonGroup/IssuerButtonGroup.js.map +1 -1
  516. package/dist/es-legacy/components/internal/IssuerList/IssuerList.js.map +1 -1
  517. package/dist/es-legacy/components/internal/Link/Link.js.map +1 -1
  518. package/dist/es-legacy/components/internal/LoadingWrapper/LoadingWrapper.js.map +1 -1
  519. package/dist/es-legacy/components/internal/Modal/Modal.js.map +1 -1
  520. package/dist/es-legacy/components/internal/OpenInvoice/OpenInvoice.js.map +1 -1
  521. package/dist/es-legacy/components/internal/PayButton/PayButton.js.map +1 -1
  522. package/dist/es-legacy/components/internal/PhoneInput/PhoneInputFields.js.map +1 -1
  523. package/dist/es-legacy/components/internal/PhoneInput/PhoneInputForm.js.map +1 -1
  524. package/dist/es-legacy/components/internal/QRLoader/QRLoaderDetailsProvider.js.map +1 -1
  525. package/dist/es-legacy/components/internal/QRLoader/components/QRCodeCopyButton.js.map +1 -1
  526. package/dist/es-legacy/components/internal/QRLoader/components/QRCountdown.js.map +1 -1
  527. package/dist/es-legacy/components/internal/QRLoader/components/QRFinalState.js.map +1 -1
  528. package/dist/es-legacy/components/internal/QRLoader/components/QRImage.js.map +1 -1
  529. package/dist/es-legacy/components/internal/QRLoader/components/QRIntructions.js.map +1 -1
  530. package/dist/es-legacy/components/internal/QRLoader/components/QRProgressbar.js.map +1 -1
  531. package/dist/es-legacy/components/internal/RedirectButton/RedirectButton.js.map +1 -1
  532. package/dist/es-legacy/components/internal/SecuredFields/SFP/SFPUtils.js +1 -1
  533. package/dist/es-legacy/components/internal/SecuredFields/SFP/SFPUtils.js.map +1 -1
  534. package/dist/es-legacy/components/internal/SecuredFields/SFP/SecuredFieldsProvider.js +1 -1
  535. package/dist/es-legacy/components/internal/SecuredFields/SFP/SecuredFieldsProvider.js.map +1 -1
  536. package/dist/es-legacy/components/internal/SecuredFields/SFP/SecuredFieldsProviderHandlers.js +1 -1
  537. package/dist/es-legacy/components/internal/SecuredFields/SFP/SecuredFieldsProviderHandlers.js.map +1 -1
  538. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/createSecuredFields.js +1 -1
  539. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/createSecuredFields.js.map +1 -1
  540. package/dist/es-legacy/components/internal/SecuredFields/lib/constants.js.map +1 -1
  541. package/dist/es-legacy/components/internal/SecuredFields/lib/securedField/utils/createIframe.js +1 -1
  542. package/dist/es-legacy/components/internal/SecuredFields/lib/securedField/utils/createIframe.js.map +1 -1
  543. package/dist/es-legacy/components/internal/SecuredFields/lib/securedField/utils/processAriaConfig.js +1 -1
  544. package/dist/es-legacy/components/internal/SecuredFields/lib/securedField/utils/processAriaConfig.js.map +1 -1
  545. package/dist/es-legacy/components/internal/SecuredFields/utils.js +1 -1
  546. package/dist/es-legacy/components/internal/SecuredFields/utils.js.map +1 -1
  547. package/dist/es-legacy/components/internal/SegmentedControl/SegmentedControl.js.map +1 -1
  548. package/dist/es-legacy/components/internal/SegmentedControl/SegmentedControlRegion.js.map +1 -1
  549. package/dist/es-legacy/components/internal/Spinner/Spinner.js.map +1 -1
  550. package/dist/es-legacy/components/internal/StoreDetails/StoreDetails.js.map +1 -1
  551. package/dist/es-legacy/components/internal/Timeline/Timeline.js.map +1 -1
  552. package/dist/es-legacy/components/internal/Timeline/TimelineWrapper.js.map +1 -1
  553. package/dist/es-legacy/components/internal/Toggle/Toggle.js.map +1 -1
  554. package/dist/es-legacy/components/internal/Tooltip/SingletonTooltipProvider.js.map +1 -1
  555. package/dist/es-legacy/components/internal/Tooltip/Tooltip.js.map +1 -1
  556. package/dist/es-legacy/components/internal/Tooltip/TooltipController.js.map +1 -1
  557. package/dist/es-legacy/components/internal/UIElement/UIElement.js.map +1 -1
  558. package/dist/es-legacy/core/Analytics/Analytics.js +1 -1
  559. package/dist/es-legacy/core/Analytics/Analytics.js.map +1 -1
  560. package/dist/es-legacy/core/Context/AmountProvider.js.map +1 -1
  561. package/dist/es-legacy/core/Context/CoreProvider.js.map +1 -1
  562. package/dist/es-legacy/core/Environment/Environment.js +1 -1
  563. package/dist/es-legacy/core/Environment/Environment.js.map +1 -1
  564. package/dist/es-legacy/core/Errors/AdyenCheckoutError.js.map +1 -1
  565. package/dist/es-legacy/core/Errors/SRMessages.js.map +1 -1
  566. package/dist/es-legacy/core/Errors/SRPanel.js.map +1 -1
  567. package/dist/es-legacy/core/Errors/SRPanelProvider.js.map +1 -1
  568. package/dist/es-legacy/core/Errors/utils.js +1 -1
  569. package/dist/es-legacy/core/ProcessResponse/PaymentMethods/PaymentMethods.js +1 -1
  570. package/dist/es-legacy/core/ProcessResponse/PaymentMethods/PaymentMethods.js.map +1 -1
  571. package/dist/es-legacy/core/RiskModule/RiskModule.js.map +1 -1
  572. package/dist/es-legacy/core/RiskModule/components/DeviceFingerprint/DeviceFingerprint.js.map +1 -1
  573. package/dist/es-legacy/core/config.js +1 -1
  574. package/dist/es-legacy/core/core.js +1 -1
  575. package/dist/es-legacy/core/core.js.map +1 -1
  576. package/dist/es-legacy/external/preact/compat/dist/compat.js +1 -1
  577. package/dist/es-legacy/external/preact/compat/dist/compat.js.map +1 -1
  578. package/dist/es-legacy/hooks/usePaymentStatusTimer/usePaymentStatusTimer.js.map +1 -1
  579. package/dist/es-legacy/index.js +1 -1
  580. package/dist/es-legacy/utils/getOrigin.js +1 -1
  581. package/package.json +18 -19
  582. package/dist/es/utils/getProp.js +0 -2
  583. package/dist/es/utils/getProp.js.map +0 -1
  584. package/dist/es-legacy/utils/getProp.js +0 -2
  585. package/dist/es-legacy/utils/getProp.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"SelectListItem.js","sources":["../../../../../../../src/components/internal/FormFields/Select/components/SelectListItem.tsx"],"sourcesContent":["import { h } from 'preact';\nimport cx from 'classnames';\nimport { SelectItemProps } from '../types';\nimport Img from '../../../Img';\nimport Icon from '../../../Icon';\nimport { PREFIX } from '../../../Icon/constants';\n\nconst SelectListItem = ({ item, active, selected, ...props }: SelectItemProps) => {\n return (\n /* eslint-disable jsx-a11y/click-events-have-key-events */\n <li\n aria-disabled={!!item.disabled}\n aria-selected={selected}\n className={cx([\n 'adyen-checkout__dropdown__element',\n {\n 'adyen-checkout__dropdown__element--active': active,\n 'adyen-checkout__dropdown__element--disabled': !!item.disabled\n }\n ])}\n // A change in Preact v10.11.1 means that all falsy values are assessed and set on data attributes.\n // In the case of data-disabled we only ever want it set if item.disabled is actually true, since the presence of the data-disabled attr,\n // regardless of its value, will disable the select list item\n data-disabled={item.disabled === true ? true : null}\n data-value={item.id}\n onClick={props.onSelect}\n onMouseEnter={props.onHover}\n /* eslint-disable-next-line jsx-a11y/no-noninteractive-element-to-interactive-role */\n role=\"option\"\n //tabIndex={-1}\n id={`listItem-${item.id}`}\n >\n {item.icon && <Img className=\"adyen-checkout__dropdown__element__icon\" alt={item.name} src={item.icon} />}\n <span className=\"adyen-checkout__dropdown__element__text\">{item.name}</span>\n {item.secondaryText && <span className=\"adyen-checkout__dropdown__element__secondary-text\">{item.secondaryText}</span>}\n {selected && <Icon type={`${PREFIX}checkmark_black`} height={14} width={14} />}\n </li>\n );\n};\n\nexport default SelectListItem;\n"],"names":["SelectListItem","item","active","selected","props","h","li","aria-disabled","disabled","aria-selected","className","cx","data-disabled","data-value","id","onClick","onSelect","onMouseEnter","onHover","role","icon","Img","alt","name","src","span","secondaryText","Icon","type","PREFIX","height","width"],"mappings":"0PAOA,MAAMA,EAAiB,EAAGC,OAAMC,SAAQC,cAAaC,KAG7CC,EAACC,KAAAA,CACGC,kBAAiBN,EAAKO,SACtBC,gBAAeN,EACfO,UAAWC,EAAG,CACV,oCACA,CACI,4CAA6CT,EAC7C,gDAAiDD,EAAKO,YAM9DI,iBAAiC,IAAlBX,EAAKO,UAA2B,KAC/CK,aAAYZ,EAAKa,GACjBC,QAASX,EAAMY,SACfC,aAAcb,EAAMc,QAEpBC,KAAK,SAELL,GAAI,YAAYb,EAAKa,MAEpBb,EAAKmB,MAAQf,EAACgB,EAAAA,CAAIX,UAAU,0CAA0CY,IAAKrB,EAAKsB,KAAMC,IAAKvB,EAAKmB,OACjGf,EAACoB,OAAAA,CAAKf,UAAU,2CAA2CT,EAAKsB,MAC/DtB,EAAKyB,eAAiBrB,EAACoB,OAAAA,CAAKf,UAAU,qDAAqDT,EAAKyB,eAChGvB,GAAYE,EAACsB,EAAAA,CAAKC,KAAM,GAAGC,mBAAyBC,OAAQ,GAAIC,MAAO"}
1
+ {"version":3,"file":"SelectListItem.js","sources":["../../../../../../../src/components/internal/FormFields/Select/components/SelectListItem.tsx"],"sourcesContent":["import { h } from 'preact';\nimport cx from 'classnames';\nimport { SelectItemProps } from '../types';\nimport Img from '../../../Img';\nimport Icon from '../../../Icon';\nimport { PREFIX } from '../../../Icon/constants';\n\nconst SelectListItem = ({ item, active, selected, ...props }: Readonly<SelectItemProps>) => {\n return (\n /* eslint-disable jsx-a11y/click-events-have-key-events */\n <li\n aria-disabled={!!item.disabled}\n aria-selected={selected}\n className={cx([\n 'adyen-checkout__dropdown__element',\n {\n 'adyen-checkout__dropdown__element--active': active,\n 'adyen-checkout__dropdown__element--disabled': !!item.disabled\n }\n ])}\n // A change in Preact v10.11.1 means that all falsy values are assessed and set on data attributes.\n // In the case of data-disabled we only ever want it set if item.disabled is actually true, since the presence of the data-disabled attr,\n // regardless of its value, will disable the select list item\n data-disabled={item.disabled === true ? true : null}\n data-value={item.id}\n onClick={props.onSelect}\n onMouseEnter={props.onHover}\n /* eslint-disable-next-line jsx-a11y/no-noninteractive-element-to-interactive-role */\n role=\"option\"\n //tabIndex={-1}\n id={`listItem-${item.id}`}\n >\n {item.icon && <Img className=\"adyen-checkout__dropdown__element__icon\" alt={item.name} src={item.icon} />}\n <span className=\"adyen-checkout__dropdown__element__text\">{item.name}</span>\n {item.secondaryText && <span className=\"adyen-checkout__dropdown__element__secondary-text\">{item.secondaryText}</span>}\n {selected && <Icon type={`${PREFIX}checkmark_black`} height={14} width={14} />}\n </li>\n );\n};\n\nexport default SelectListItem;\n"],"names":["SelectListItem","item","active","selected","props","h","li","aria-disabled","disabled","aria-selected","className","cx","data-disabled","data-value","id","onClick","onSelect","onMouseEnter","onHover","role","icon","Img","alt","name","src","span","secondaryText","Icon","type","PREFIX","height","width"],"mappings":"0PAOA,MAAMA,EAAiB,EAAGC,OAAMC,SAAQC,cAAaC,KAG7CC,EAACC,KAAAA,CACGC,kBAAiBN,EAAKO,SACtBC,gBAAeN,EACfO,UAAWC,EAAG,CACV,oCACA,CACI,4CAA6CT,EAC7C,gDAAiDD,EAAKO,YAM9DI,iBAAiC,IAAlBX,EAAKO,UAA2B,KAC/CK,aAAYZ,EAAKa,GACjBC,QAASX,EAAMY,SACfC,aAAcb,EAAMc,QAEpBC,KAAK,SAELL,GAAI,YAAYb,EAAKa,MAEpBb,EAAKmB,MAAQf,EAACgB,EAAAA,CAAIX,UAAU,0CAA0CY,IAAKrB,EAAKsB,KAAMC,IAAKvB,EAAKmB,OACjGf,EAACoB,OAAAA,CAAKf,UAAU,2CAA2CT,EAAKsB,MAC/DtB,EAAKyB,eAAiBrB,EAACoB,OAAAA,CAAKf,UAAU,qDAAqDT,EAAKyB,eAChGvB,GAAYE,EAACsB,EAAAA,CAAKC,KAAM,GAAGC,mBAAyBC,OAAQ,GAAIC,MAAO"}
@@ -1 +1 @@
1
- {"version":3,"file":"Iframe.js","sources":["../../../../../src/components/internal/IFrame/Iframe.tsx"],"sourcesContent":["import { Component, h } from 'preact';\nimport classNames from 'classnames';\nimport './Iframe.scss';\n\ninterface IframeProps {\n width?: string;\n height?: string;\n minWidth?: string;\n minHeight?: string;\n border?: string;\n src?: string;\n allow?: string;\n name?: string;\n title?: string;\n classNameModifiers?: string[];\n callback?: (contentWindow) => void;\n}\n\nclass Iframe extends Component<IframeProps> {\n public static defaultProps = {\n width: '0',\n height: '0',\n minWidth: '0',\n minHeight: '0',\n src: null,\n allow: null,\n title: 'components iframe',\n classNameModifiers: []\n };\n\n private iframeEl;\n\n iframeOnLoad() {\n if (this.props.callback && typeof this.props.callback === 'function') {\n this.props.callback(this.iframeEl.contentWindow);\n }\n }\n\n componentDidMount() {\n if (this.iframeEl.addEventListener) {\n this.iframeEl.addEventListener('load', this.iframeOnLoad.bind(this), false);\n } else if (this.iframeEl.attachEvent) {\n // IE fallback\n this.iframeEl.attachEvent('onload', this.iframeOnLoad.bind(this));\n } else {\n this.iframeEl.onload = this.iframeOnLoad.bind(this);\n }\n }\n\n componentWillUnmount() {\n if (this.iframeEl.removeEventListener) {\n this.iframeEl.removeEventListener('load', this.iframeOnLoad.bind(this), false);\n } else if (this.iframeEl.detachEvent) {\n // IE fallback\n this.iframeEl.detachEvent('onload', this.iframeOnLoad.bind(this));\n } else {\n this.iframeEl.onload = null;\n }\n }\n\n render({ name, src, width, height, minWidth, minHeight, allow, title, classNameModifiers }: IframeProps) {\n const validClassNameModifiers = classNameModifiers.filter(m => !!m);\n\n return (\n <iframe\n ref={ref => {\n this.iframeEl = ref;\n }}\n allow={allow}\n className={classNames(\n 'adyen-checkout__iframe',\n `adyen-checkout__iframe--${name}`,\n validClassNameModifiers.length && classNameModifiers.map(m => `adyen-checkout__iframe--${name}-${m}`)\n )}\n name={name}\n src={src}\n width={width}\n height={height}\n frameBorder=\"0\"\n title={title}\n /* eslint-disable react/no-unknown-property */\n referrerpolicy=\"origin\"\n min-width={minWidth}\n min-height={minHeight}\n /* eslint-enable react/no-unknown-property */\n />\n );\n }\n}\n\nexport default Iframe;\n"],"names":["Iframe","Component","iframeOnLoad","this","props","callback","iframeEl","contentWindow","componentDidMount","addEventListener","bind","attachEvent","onload","componentWillUnmount","removeEventListener","detachEvent","render","name","src","width","height","minWidth","minHeight","allow","title","classNameModifiers","validClassNameModifiers","filter","m","h","iframe","ref","className","classNames","length","map","frameBorder","referrerpolicy","min-width","min-height","super","args","_define_property","defaultProps"],"mappings":"yPAkBA,MAAMA,UAAeC,EAcjBC,YAAAA,GACQC,KAAKC,MAAMC,UAA2C,mBAAxBF,KAAKC,MAAMC,UACzCF,KAAKC,MAAMC,SAASF,KAAKG,SAASC,cAE1C,CAEAC,iBAAAA,GACQL,KAAKG,SAASG,iBACdN,KAAKG,SAASG,iBAAiB,OAAQN,KAAKD,aAAaQ,KAAKP,OAAO,GAC9DA,KAAKG,SAASK,YAErBR,KAAKG,SAASK,YAAY,SAAUR,KAAKD,aAAaQ,KAAKP,OAE3DA,KAAKG,SAASM,OAAST,KAAKD,aAAaQ,KAAKP,KAEtD,CAEAU,oBAAAA,GACQV,KAAKG,SAASQ,oBACdX,KAAKG,SAASQ,oBAAoB,OAAQX,KAAKD,aAAaQ,KAAKP,OAAO,GACjEA,KAAKG,SAASS,YAErBZ,KAAKG,SAASS,YAAY,SAAUZ,KAAKD,aAAaQ,KAAKP,OAE3DA,KAAKG,SAASM,OAAS,IAE/B,CAEAI,MAAAA,EAAOC,KAAEA,EAAIC,IAAEA,EAAGC,MAAEA,EAAKC,OAAEA,EAAMC,SAAEA,EAAQC,UAAEA,EAASC,MAAEA,EAAKC,MAAEA,EAAKC,mBAAEA,IAClE,MAAMC,EAA0BD,EAAmBE,OAAOC,KAAOA,GAEjE,OACIC,EAACC,SAAAA,CACGC,IAAKA,IACD5B,KAAKG,SAAWyB,GAEpBR,MAAOA,EACPS,UAAWC,EACP,yBACA,2BAA2BhB,IAC3BS,EAAwBQ,QAAUT,EAAmBU,IAAIP,GAAK,2BAA2BX,KAAQW,MAErGX,KAAMA,EACNC,IAAKA,EACLC,MAAOA,EACPC,OAAQA,EACRgB,YAAY,IACZZ,MAAOA,EAEPa,eAAe,SACfC,YAAWjB,EACXkB,aAAYjB,GAIxB,mBArEJkB,SAAAC,GAYIC,EAAAvC,KAAQG,oBAXRoC,EADE1C,EACY2C,eAAe,CACzBxB,MAAO,IACPC,OAAQ,IACRC,SAAU,IACVC,UAAW,IACXJ,IAAK,KACLK,MAAO,KACPC,MAAO,oBACPC,mBAAoB"}
1
+ {"version":3,"file":"Iframe.js","sources":["../../../../../src/components/internal/IFrame/Iframe.tsx"],"sourcesContent":["import { Component, h } from 'preact';\nimport classNames from 'classnames';\nimport './Iframe.scss';\n\ninterface IframeProps {\n width?: string;\n height?: string;\n minWidth?: string;\n minHeight?: string;\n border?: string;\n src?: string;\n allow?: string;\n name?: string;\n title?: string;\n classNameModifiers?: string[];\n callback?: (contentWindow) => void;\n}\n\nclass Iframe extends Component<Readonly<IframeProps>> {\n public static readonly defaultProps = {\n width: '0',\n height: '0',\n minWidth: '0',\n minHeight: '0',\n src: null,\n allow: null,\n title: 'components iframe',\n classNameModifiers: []\n };\n\n private iframeEl;\n\n iframeOnLoad() {\n if (this.props.callback && typeof this.props.callback === 'function') {\n this.props.callback(this.iframeEl.contentWindow);\n }\n }\n\n componentDidMount() {\n if (this.iframeEl.addEventListener) {\n this.iframeEl.addEventListener('load', this.iframeOnLoad.bind(this), false);\n } else if (this.iframeEl.attachEvent) {\n // IE fallback\n this.iframeEl.attachEvent('onload', this.iframeOnLoad.bind(this));\n } else {\n this.iframeEl.onload = this.iframeOnLoad.bind(this);\n }\n }\n\n componentWillUnmount() {\n if (this.iframeEl.removeEventListener) {\n this.iframeEl.removeEventListener('load', this.iframeOnLoad.bind(this), false);\n } else if (this.iframeEl.detachEvent) {\n // IE fallback\n this.iframeEl.detachEvent('onload', this.iframeOnLoad.bind(this));\n } else {\n this.iframeEl.onload = null;\n }\n }\n\n render({ name, src, width, height, minWidth, minHeight, allow, title, classNameModifiers }: IframeProps) {\n const validClassNameModifiers = classNameModifiers.filter(m => !!m);\n\n return (\n <iframe\n ref={ref => {\n this.iframeEl = ref;\n }}\n allow={allow}\n className={classNames(\n 'adyen-checkout__iframe',\n `adyen-checkout__iframe--${name}`,\n validClassNameModifiers.length && classNameModifiers.map(m => `adyen-checkout__iframe--${name}-${m}`)\n )}\n name={name}\n src={src}\n width={width}\n height={height}\n frameBorder=\"0\"\n title={title}\n /* eslint-disable react/no-unknown-property */\n referrerpolicy=\"origin\"\n min-width={minWidth}\n min-height={minHeight}\n /* eslint-enable react/no-unknown-property */\n />\n );\n }\n}\n\nexport default Iframe;\n"],"names":["Iframe","Component","iframeOnLoad","this","props","callback","iframeEl","contentWindow","componentDidMount","addEventListener","bind","attachEvent","onload","componentWillUnmount","removeEventListener","detachEvent","render","name","src","width","height","minWidth","minHeight","allow","title","classNameModifiers","validClassNameModifiers","filter","m","h","iframe","ref","className","classNames","length","map","frameBorder","referrerpolicy","min-width","min-height","super","args","_define_property","defaultProps"],"mappings":"yPAkBA,MAAMA,UAAeC,EAcjBC,YAAAA,GACQC,KAAKC,MAAMC,UAA2C,mBAAxBF,KAAKC,MAAMC,UACzCF,KAAKC,MAAMC,SAASF,KAAKG,SAASC,cAE1C,CAEAC,iBAAAA,GACQL,KAAKG,SAASG,iBACdN,KAAKG,SAASG,iBAAiB,OAAQN,KAAKD,aAAaQ,KAAKP,OAAO,GAC9DA,KAAKG,SAASK,YAErBR,KAAKG,SAASK,YAAY,SAAUR,KAAKD,aAAaQ,KAAKP,OAE3DA,KAAKG,SAASM,OAAST,KAAKD,aAAaQ,KAAKP,KAEtD,CAEAU,oBAAAA,GACQV,KAAKG,SAASQ,oBACdX,KAAKG,SAASQ,oBAAoB,OAAQX,KAAKD,aAAaQ,KAAKP,OAAO,GACjEA,KAAKG,SAASS,YAErBZ,KAAKG,SAASS,YAAY,SAAUZ,KAAKD,aAAaQ,KAAKP,OAE3DA,KAAKG,SAASM,OAAS,IAE/B,CAEAI,MAAAA,EAAOC,KAAEA,EAAIC,IAAEA,EAAGC,MAAEA,EAAKC,OAAEA,EAAMC,SAAEA,EAAQC,UAAEA,EAASC,MAAEA,EAAKC,MAAEA,EAAKC,mBAAEA,IAClE,MAAMC,EAA0BD,EAAmBE,OAAOC,KAAOA,GAEjE,OACIC,EAACC,SAAAA,CACGC,IAAKA,IACD5B,KAAKG,SAAWyB,GAEpBR,MAAOA,EACPS,UAAWC,EACP,yBACA,2BAA2BhB,IAC3BS,EAAwBQ,QAAUT,EAAmBU,IAAIP,GAAK,2BAA2BX,KAAQW,MAErGX,KAAMA,EACNC,IAAKA,EACLC,MAAOA,EACPC,OAAQA,EACRgB,YAAY,IACZZ,MAAOA,EAEPa,eAAe,SACfC,YAAWjB,EACXkB,aAAYjB,GAIxB,mBArEJkB,SAAAC,GAYIC,EAAAvC,KAAQG,oBAXRoC,EADE1C,EACqB2C,eAAe,CAClCxB,MAAO,IACPC,OAAQ,IACRC,SAAU,IACVC,UAAW,IACXJ,IAAK,KACLK,MAAO,KACPC,MAAO,oBACPC,mBAAoB"}
@@ -1 +1 @@
1
- {"version":3,"file":"IbanInput.js","sources":["../../../../../src/components/internal/IbanInput/IbanInput.tsx"],"sourcesContent":["import { Component, h } from 'preact';\nimport { useCoreContext } from '../../../core/Context/CoreProvider';\nimport Field from '../FormFields/Field';\nimport { checkIbanStatus, isValidHolder } from './validate';\nimport { electronicFormat, formatIban, getCountryCode, getNextCursorPosition } from './utils';\nimport Fieldset from '../FormFields/Fieldset';\nimport { GenericError } from '../../../core/Errors/types';\nimport InputText from '../FormFields/InputText';\n\ninterface IbanInputProps {\n holderName?: boolean;\n placeholders?: Omit<IbanData, 'countryCode'>;\n countryCode?: string;\n showPayButton?: boolean;\n payButton?: any;\n onChange: (data) => void;\n label: string;\n data: IbanData;\n}\n\ninterface IbanData {\n ownerName?: string;\n ibanNumber?: string;\n countryCode?: string;\n}\n\ninterface IbanInputState {\n data: any;\n errors: any;\n valid: any;\n status: string;\n isValid: boolean;\n cursor: number;\n}\n\nconst ibanHolderNameErrorObj: GenericError = {\n isValid: false,\n errorMessage: 'ach.accountHolderNameField.invalid', // TODO create bespoke translation key\n error: 'ach.accountHolderNameField.invalid'\n};\n\nconst ibanErrorObj: GenericError = {\n isValid: false,\n errorMessage: 'sepaDirectDebit.ibanField.invalid',\n error: 'sepaDirectDebit.ibanField.invalid'\n};\n\nclass IbanInput extends Component<IbanInputProps, IbanInputState> {\n private ibanNumber: HTMLInputElement;\n\n constructor(props) {\n super(props);\n\n this.state = {\n status: 'ready',\n data: {\n ownerName: props?.data?.ownerName || '',\n ibanNumber: props?.data?.ibanNumber || '',\n countryCode: props?.data?.countryCode || ''\n },\n isValid: false,\n cursor: 0,\n errors: {},\n valid: {}\n };\n\n if (this.state.data['ibanNumber']) {\n const electronicFormatIban = electronicFormat(this.state.data['ibanNumber']); // example: NL13TEST0123456789\n this.state.data['ibanNumber'] = formatIban(electronicFormatIban); // example: NL13 TEST 0123 4567 89\n }\n\n if (this.state.data['ibanNumber'] || this.state.data['ownerName']) {\n const holderNameValid = this.props.holderName ? isValidHolder(this.state.data['ownerName']) : '';\n const ibanValid = this.state.data['ibanNumber'] ? checkIbanStatus(this.state.data['ibanNumber']).status === 'valid' : '';\n const isValid = ibanValid && holderNameValid;\n const data = { data: this.state.data, isValid };\n\n this.props.onChange(data);\n }\n }\n\n public static defaultProps = {\n onChange: () => {},\n countryCode: null,\n holderName: true,\n placeholders: {},\n label: null\n };\n\n setStatus(status) {\n this.setState({ status });\n }\n\n onChange() {\n const holderNameValid = this.props.holderName ? isValidHolder(this.state.data['ownerName']) : true;\n const ibanValid = checkIbanStatus(this.state.data['ibanNumber']).status === 'valid';\n const isValid = ibanValid && holderNameValid;\n const data = { data: this.state.data, isValid, errors: this.state.errors };\n\n this.props.onChange(data);\n }\n\n public setData = (key, value, cb?) => {\n this.setState(prevState => ({ data: { ...prevState.data, [key]: value } }), cb);\n };\n\n public setError = (key, value, cb?) => {\n this.setState(prevState => ({ errors: { ...prevState.errors, [key]: value } }), cb);\n };\n\n public setValid = (key, value, cb?) => {\n this.setState(prevState => ({ valid: { ...prevState.valid, [key]: value } }), cb);\n };\n\n public handleHolderInput = holder => {\n this.setState(\n prevState => ({ data: { ...prevState.data, ownerName: holder } }),\n () => {\n const holderStatus = isValidHolder(this.state.data['ownerName']);\n const holderErr =\n holderStatus != null && !holderStatus // *don't* consider null, i.e. a value that has just been deleted, to be in error\n ? ibanHolderNameErrorObj\n : null;\n\n this.setError('holder', holderErr, this.onChange);\n }\n );\n };\n\n public handleIbanInput = e => {\n const inputValue = e.target.value;\n const electronicFormatIban = electronicFormat(inputValue); // example: NL13TEST0123456789\n const iban = formatIban(electronicFormatIban); // example: NL13 TEST 0123 4567 89\n const validationStatus = checkIbanStatus(iban).status;\n\n const countryCode = getCountryCode(electronicFormatIban);\n\n // calculate cursor's new position\n const cursor = e.target.selectionStart;\n const previousIban = this.state.data['ibanNumber'];\n const newCursorPosition = getNextCursorPosition(cursor, iban, previousIban);\n\n this.setState(\n prevState => ({\n data: { ...prevState.data, ibanNumber: iban, countryCode: countryCode },\n errors: {\n ...prevState.errors,\n iban: validationStatus === 'invalid' ? ibanErrorObj : null\n },\n valid: { ...prevState.valid, iban: validationStatus === 'valid' }\n }),\n () => {\n e.target.setSelectionRange(newCursorPosition, newCursorPosition);\n this.onChange();\n }\n );\n };\n\n public handleIbanBlur = e => {\n const currentIban = e.target.value;\n\n if (currentIban.length > 0) {\n const validationStatus = checkIbanStatus(currentIban).status;\n this.setError('iban', validationStatus !== 'valid' ? ibanErrorObj : null, this.onChange);\n } else {\n // Empty field is not in error\n this.setError('iban', null, this.onChange);\n }\n };\n\n showValidation() {\n const validationStatus = checkIbanStatus(this.state.data['ibanNumber']).status;\n const holderStatus = isValidHolder(this.state.data['ownerName']);\n this.setError('iban', validationStatus !== 'valid' ? ibanErrorObj : null);\n\n const holderErr = !holderStatus // *do* consider null, i.e. an empty field, to be in error\n ? ibanHolderNameErrorObj\n : null;\n\n this.setError('holder', holderErr, this.onChange); // add callback param to force propagation of state to parent comp\n }\n\n render({ placeholders }: IbanInputProps, { data, errors, valid }) {\n const { i18n } = useCoreContext();\n return (\n <Fieldset classNameModifiers={['iban-input']} label={this.props.label}>\n {this.props.holderName && (\n <Field\n className={'adyen-checkout__field--owner-name'}\n label={i18n.get('sepa.ownerName')}\n filled={data['ownerName'] && data['ownerName'].length}\n errorMessage={errors.holder ? i18n.get(errors.holder.error) : false}\n dir={'ltr'}\n i18n={i18n}\n name={'ownerName'}\n >\n <InputText\n name={'ownerName'}\n className={'adyen-checkout__iban-input__owner-name'}\n placeholder={placeholders?.ownerName}\n value={data['ownerName']}\n aria-invalid={!!this.state.errors.holder}\n aria-label={i18n.get('sepa.ownerName')}\n onInput={e => this.handleHolderInput((e.target as HTMLInputElement).value)}\n onBlur={e => this.handleHolderInput((e.target as HTMLInputElement).value)}\n />\n </Field>\n )}\n\n <Field\n className={'adyen-checkout__field--iban-number'}\n label={i18n.get('sepa.ibanNumber')}\n errorMessage={errors.iban ? i18n.get(errors.iban.error) : false}\n filled={data['ibanNumber'] && data['ibanNumber'].length}\n isValid={valid.iban}\n onBlur={this.handleIbanBlur}\n dir={'ltr'}\n i18n={i18n}\n name={'ibanNumber'}\n >\n <InputText\n setRef={ref => {\n this.ibanNumber = ref;\n }}\n name={'ibanNumber'}\n className={'adyen-checkout__iban-input__iban-number'}\n classNameModifiers={['large']}\n placeholder={placeholders?.ibanNumber}\n value={data['ibanNumber']}\n onInput={this.handleIbanInput}\n aria-invalid={!!this.state.errors.iban}\n aria-label={i18n.get('sepa.ibanNumber')}\n autocorrect={'off'}\n spellcheck={false}\n />\n </Field>\n\n {this.props.showPayButton && this.props.payButton({ status: this.state.status })}\n </Fieldset>\n );\n }\n}\n\nexport default IbanInput;\n"],"names":["ibanHolderNameErrorObj","isValid","errorMessage","error","ibanErrorObj","IbanInput","Component","setStatus","status","this","setState","onChange","holderNameValid","props","holderName","isValidHolder","state","data","checkIbanStatus","errors","showValidation","validationStatus","holderStatus","setError","holderErr","render","placeholders","valid","i18n","useCoreContext","h","Fieldset","classNameModifiers","label","Field","className","get","filled","length","holder","dir","name","InputText","placeholder","ownerName","value","aria-invalid","aria-label","onInput","e","handleHolderInput","target","onBlur","iban","handleIbanBlur","setRef","ref","ibanNumber","handleIbanInput","autocorrect","spellcheck","showPayButton","payButton","constructor","super","_define_property","setData","key","cb","prevState","setValid","inputValue","electronicFormatIban","electronicFormat","formatIban","countryCode","getCountryCode","cursor","selectionStart","previousIban","newCursorPosition","getNextCursorPosition","setSelectionRange","currentIban","defaultProps"],"mappings":"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"}
1
+ {"version":3,"file":"IbanInput.js","sources":["../../../../../src/components/internal/IbanInput/IbanInput.tsx"],"sourcesContent":["import { Component, h } from 'preact';\nimport { useCoreContext } from '../../../core/Context/CoreProvider';\nimport Field from '../FormFields/Field';\nimport { checkIbanStatus, isValidHolder } from './validate';\nimport { electronicFormat, formatIban, getCountryCode, getNextCursorPosition } from './utils';\nimport Fieldset from '../FormFields/Fieldset';\nimport { GenericError } from '../../../core/Errors/types';\nimport InputText from '../FormFields/InputText';\n\ninterface IbanInputProps {\n holderName?: boolean;\n placeholders?: Omit<IbanData, 'countryCode'>;\n countryCode?: string;\n showPayButton?: boolean;\n payButton?: any;\n onChange: (data) => void;\n label: string;\n data: IbanData;\n}\n\ninterface IbanData {\n ownerName?: string;\n ibanNumber?: string;\n countryCode?: string;\n}\n\ninterface IbanInputState {\n data: any;\n errors: any;\n valid: any;\n status: string;\n isValid: boolean;\n cursor: number;\n}\n\nconst ibanHolderNameErrorObj: GenericError = {\n isValid: false,\n errorMessage: 'ach.accountHolderNameField.invalid', // TODO create bespoke translation key\n error: 'ach.accountHolderNameField.invalid'\n};\n\nconst ibanErrorObj: GenericError = {\n isValid: false,\n errorMessage: 'sepaDirectDebit.ibanField.invalid',\n error: 'sepaDirectDebit.ibanField.invalid'\n};\n\nclass IbanInput extends Component<Readonly<IbanInputProps>, IbanInputState> {\n private ibanNumber: HTMLInputElement;\n\n constructor(props) {\n super(props);\n\n this.state = {\n status: 'ready',\n data: {\n ownerName: props?.data?.ownerName || '',\n ibanNumber: props?.data?.ibanNumber || '',\n countryCode: props?.data?.countryCode || ''\n },\n isValid: false,\n cursor: 0,\n errors: {},\n valid: {}\n };\n\n if (this.state.data['ibanNumber']) {\n const electronicFormatIban = electronicFormat(this.state.data['ibanNumber']); // example: NL13TEST0123456789\n this.state.data['ibanNumber'] = formatIban(electronicFormatIban); // example: NL13 TEST 0123 4567 89\n }\n\n if (this.state.data['ibanNumber'] || this.state.data['ownerName']) {\n const holderNameValid = this.props.holderName ? isValidHolder(this.state.data['ownerName']) : '';\n const ibanValid = this.state.data['ibanNumber'] ? checkIbanStatus(this.state.data['ibanNumber']).status === 'valid' : '';\n const isValid = ibanValid && holderNameValid;\n const data = { data: this.state.data, isValid };\n\n this.props.onChange(data);\n }\n }\n\n public static readonly defaultProps = {\n onChange: () => {},\n countryCode: null,\n holderName: true,\n placeholders: {},\n label: null\n };\n\n setStatus(status) {\n this.setState({ status });\n }\n\n onChange() {\n const holderNameValid = this.props.holderName ? isValidHolder(this.state.data['ownerName']) : true;\n const ibanValid = checkIbanStatus(this.state.data['ibanNumber']).status === 'valid';\n const isValid = ibanValid && holderNameValid;\n const data = { data: this.state.data, isValid, errors: this.state.errors };\n\n this.props.onChange(data);\n }\n\n public setData = (key, value, cb?) => {\n this.setState(prevState => ({ data: { ...prevState.data, [key]: value } }), cb);\n };\n\n public setError = (key, value, cb?) => {\n this.setState(prevState => ({ errors: { ...prevState.errors, [key]: value } }), cb);\n };\n\n public setValid = (key, value, cb?) => {\n this.setState(prevState => ({ valid: { ...prevState.valid, [key]: value } }), cb);\n };\n\n public handleHolderInput = holder => {\n this.setState(\n prevState => ({ data: { ...prevState.data, ownerName: holder } }),\n () => {\n const holderStatus = isValidHolder(this.state.data['ownerName']);\n const holderErr =\n holderStatus != null && !holderStatus // *don't* consider null, i.e. a value that has just been deleted, to be in error\n ? ibanHolderNameErrorObj\n : null;\n\n this.setError('holder', holderErr, this.onChange);\n }\n );\n };\n\n public handleIbanInput = e => {\n const inputValue = e.target.value;\n const electronicFormatIban = electronicFormat(inputValue); // example: NL13TEST0123456789\n const iban = formatIban(electronicFormatIban); // example: NL13 TEST 0123 4567 89\n const validationStatus = checkIbanStatus(iban).status;\n\n const countryCode = getCountryCode(electronicFormatIban);\n\n // calculate cursor's new position\n const cursor = e.target.selectionStart;\n const previousIban = this.state.data['ibanNumber'];\n const newCursorPosition = getNextCursorPosition(cursor, iban, previousIban);\n\n this.setState(\n prevState => ({\n data: { ...prevState.data, ibanNumber: iban, countryCode: countryCode },\n errors: {\n ...prevState.errors,\n iban: validationStatus === 'invalid' ? ibanErrorObj : null\n },\n valid: { ...prevState.valid, iban: validationStatus === 'valid' }\n }),\n () => {\n e.target.setSelectionRange(newCursorPosition, newCursorPosition);\n this.onChange();\n }\n );\n };\n\n public handleIbanBlur = e => {\n const currentIban = e.target.value;\n\n if (currentIban.length > 0) {\n const validationStatus = checkIbanStatus(currentIban).status;\n this.setError('iban', validationStatus !== 'valid' ? ibanErrorObj : null, this.onChange);\n } else {\n // Empty field is not in error\n this.setError('iban', null, this.onChange);\n }\n };\n\n showValidation() {\n const validationStatus = checkIbanStatus(this.state.data['ibanNumber']).status;\n const holderStatus = isValidHolder(this.state.data['ownerName']);\n this.setError('iban', validationStatus !== 'valid' ? ibanErrorObj : null);\n\n const holderErr = !holderStatus // *do* consider null, i.e. an empty field, to be in error\n ? ibanHolderNameErrorObj\n : null;\n\n this.setError('holder', holderErr, this.onChange); // add callback param to force propagation of state to parent comp\n }\n\n render({ placeholders }: IbanInputProps, { data, errors, valid }) {\n const { i18n } = useCoreContext();\n return (\n <Fieldset classNameModifiers={['iban-input']} label={this.props.label}>\n {this.props.holderName && (\n <Field\n className={'adyen-checkout__field--owner-name'}\n label={i18n.get('sepa.ownerName')}\n filled={data['ownerName'] && data['ownerName'].length}\n errorMessage={errors.holder ? i18n.get(errors.holder.error) : false}\n dir={'ltr'}\n i18n={i18n}\n name={'ownerName'}\n >\n <InputText\n name={'ownerName'}\n className={'adyen-checkout__iban-input__owner-name'}\n placeholder={placeholders?.ownerName}\n value={data['ownerName']}\n aria-invalid={!!this.state.errors.holder}\n aria-label={i18n.get('sepa.ownerName')}\n onInput={e => this.handleHolderInput((e.target as HTMLInputElement).value)}\n onBlur={e => this.handleHolderInput((e.target as HTMLInputElement).value)}\n />\n </Field>\n )}\n\n <Field\n className={'adyen-checkout__field--iban-number'}\n label={i18n.get('sepa.ibanNumber')}\n errorMessage={errors.iban ? i18n.get(errors.iban.error) : false}\n filled={data['ibanNumber'] && data['ibanNumber'].length}\n isValid={valid.iban}\n onBlur={this.handleIbanBlur}\n dir={'ltr'}\n i18n={i18n}\n name={'ibanNumber'}\n >\n <InputText\n setRef={ref => {\n this.ibanNumber = ref;\n }}\n name={'ibanNumber'}\n className={'adyen-checkout__iban-input__iban-number'}\n classNameModifiers={['large']}\n placeholder={placeholders?.ibanNumber}\n value={data['ibanNumber']}\n onInput={this.handleIbanInput}\n aria-invalid={!!this.state.errors.iban}\n aria-label={i18n.get('sepa.ibanNumber')}\n autocorrect={'off'}\n spellcheck={false}\n />\n </Field>\n\n {this.props.showPayButton && this.props.payButton({ status: this.state.status })}\n </Fieldset>\n );\n }\n}\n\nexport default IbanInput;\n"],"names":["ibanHolderNameErrorObj","isValid","errorMessage","error","ibanErrorObj","IbanInput","Component","setStatus","status","this","setState","onChange","holderNameValid","props","holderName","isValidHolder","state","data","checkIbanStatus","errors","showValidation","validationStatus","holderStatus","setError","holderErr","render","placeholders","valid","i18n","useCoreContext","h","Fieldset","classNameModifiers","label","Field","className","get","filled","length","holder","dir","name","InputText","placeholder","ownerName","value","aria-invalid","aria-label","onInput","e","handleHolderInput","target","onBlur","iban","handleIbanBlur","setRef","ref","ibanNumber","handleIbanInput","autocorrect","spellcheck","showPayButton","payButton","constructor","super","_define_property","setData","key","cb","prevState","setValid","inputValue","electronicFormatIban","electronicFormat","formatIban","countryCode","getCountryCode","cursor","selectionStart","previousIban","newCursorPosition","getNextCursorPosition","setSelectionRange","currentIban","defaultProps"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Icon.js","sources":["../../../../../src/components/internal/Icon/Icon.tsx"],"sourcesContent":["import { h } from 'preact';\nimport cx from 'classnames';\nimport useImage from '../../../core/Context/useImage';\nimport Img from '../Img';\n\ninterface IconProps {\n type: string;\n className?: string;\n alt?: string;\n height?: number;\n width?: number;\n}\n\nconst Icon = ({ type, className = '', alt = '', height, width }: IconProps) => {\n const getImage = useImage();\n const iconUrl = getImage({ imageFolder: 'components/' })?.(type);\n\n return <Img className={cx('adyen-checkout__icon', className)} alt={alt} src={iconUrl} height={height} width={width} />;\n};\n\nexport default Icon;\n"],"names":["Icon","type","className","alt","height","width","getImage","useImage","iconUrl","imageFolder","h","Img","cx","src"],"mappings":"gMAaA,MAAMA,EAAO,EAAGC,OAAMC,YAAY,GAAIC,MAAM,GAAIC,SAAQC,YACpD,MAAMC,EAAWC,IACXC,EAAUF,EAAS,CAAEG,YAAa,eAAxBH,GAA2CL,GAE3D,OAAOS,EAACC,EAAAA,CAAIT,UAAWU,EAAG,uBAAwBV,GAAYC,IAAKA,EAAKU,IAAKL,EAASJ,OAAQA,EAAQC,MAAOA"}
1
+ {"version":3,"file":"Icon.js","sources":["../../../../../src/components/internal/Icon/Icon.tsx"],"sourcesContent":["import { h } from 'preact';\nimport cx from 'classnames';\nimport useImage from '../../../core/Context/useImage';\nimport Img from '../Img';\n\ninterface IconProps {\n type: string;\n className?: string;\n alt?: string;\n height?: number;\n width?: number;\n}\n\nconst Icon = ({ type, className = '', alt = '', height, width }: Readonly<IconProps>) => {\n const getImage = useImage();\n const iconUrl = getImage({ imageFolder: 'components/' })?.(type);\n\n return <Img className={cx('adyen-checkout__icon', className)} alt={alt} src={iconUrl} height={height} width={width} />;\n};\n\nexport default Icon;\n"],"names":["Icon","type","className","alt","height","width","getImage","useImage","iconUrl","imageFolder","h","Img","cx","src"],"mappings":"gMAaA,MAAMA,EAAO,EAAGC,OAAMC,YAAY,GAAIC,MAAM,GAAIC,SAAQC,YACpD,MAAMC,EAAWC,IACXC,EAAUF,EAAS,CAAEG,YAAa,eAAxBH,GAA2CL,GAE3D,OAAOS,EAACC,EAAAA,CAAIT,UAAWU,EAAG,uBAAwBV,GAAYC,IAAKA,EAAKU,IAAKL,EAASJ,OAAQA,EAAQC,MAAOA"}
@@ -1 +1 @@
1
- {"version":3,"file":"Img.js","sources":["../../../../../src/components/internal/Img/Img.tsx"],"sourcesContent":["import { JSX } from 'preact';\nimport { useRef, useState, useEffect } from 'preact/hooks';\nimport cx from 'classnames';\nimport './Img.scss';\nimport { h } from 'preact';\nimport { ImgProps } from './types';\n\nexport default function Img(props: ImgProps) {\n const { backgroundUrl = '', className = '', classNameModifiers = [], src = '', alt = '', showOnError = false } = props;\n const [loaded, setLoaded] = useState(false);\n const imageRef = useRef(null);\n\n const handleLoad = () => {\n setLoaded(true);\n };\n\n const handleError = (e: JSX.TargetedEvent<HTMLImageElement, Event>) => {\n setLoaded(showOnError);\n props?.onError?.(e);\n };\n\n const classNames = cx(\n [className],\n 'adyen-checkout__image',\n { 'adyen-checkout__image--loaded': loaded },\n ...classNameModifiers.map(modifier => `adyen-checkout__image--${modifier}`)\n );\n\n useEffect(() => {\n const image = backgroundUrl ? new Image() : imageRef.current;\n image.src = backgroundUrl || src;\n image.onload = handleLoad;\n setLoaded(!!image.complete);\n }, []);\n\n if (backgroundUrl) {\n return <div data-testid=\"background\" style={{ backgroundUrl } as JSX.CSSProperties} {...props} className={classNames} />;\n }\n\n return <img {...props} alt={alt} ref={imageRef} className={classNames} onError={handleError} />;\n}\n"],"names":["Img","props","backgroundUrl","className","classNameModifiers","src","alt","showOnError","loaded","setLoaded","useState","imageRef","useRef","handleLoad","classNames","cx","map","modifier","useEffect","image","Image","current","onload","complete","h","div","data-testid","style","img","ref","onError","e"],"mappings":"qNAOe,SAASA,EAAIC,GACxB,MAAMC,cAAEA,EAAgB,GAAEC,UAAEA,EAAY,GAAEC,mBAAEA,EAAqB,GAAEC,IAAEA,EAAM,GAAEC,IAAEA,EAAM,GAAEC,YAAEA,GAAc,GAAUN,GAC1GO,EAAQC,GAAaC,GAAS,GAC/BC,EAAWC,EAAO,MAElBC,EAAa,KACfJ,GAAU,IAQRK,EAAaC,EACf,CAACZ,GACD,wBACA,CAAE,gCAAiCK,MAChCJ,EAAmBY,IAAIC,GAAY,0BAA0BA,MAUpE,OAPAC,EAAU,KACN,MAAMC,EAAQjB,EAAgB,IAAIkB,MAAUT,EAASU,QACrDF,EAAMd,IAAMH,GAAiBG,EAC7Bc,EAAMG,OAAST,EACfJ,IAAYU,EAAMI,WACnB,IAECrB,EACOsB,EAACC,MAAAA,CAAIC,cAAY,aAAaC,MAAO,CAAEzB,oBAA0CD,EAAOE,UAAWW,IAGvGU,EAACI,MAAAA,IAAQ3B,EAAOK,IAAKA,EAAKuB,IAAKlB,EAAUR,UAAWW,EAAYgB,QAvBlDC,IACjBtB,EAAUF,GACVN,GAAO6B,UAAUC,KAsBzB"}
1
+ {"version":3,"file":"Img.js","sources":["../../../../../src/components/internal/Img/Img.tsx"],"sourcesContent":["import { JSX } from 'preact';\nimport { useRef, useState, useEffect } from 'preact/hooks';\nimport cx from 'classnames';\nimport './Img.scss';\nimport { h } from 'preact';\nimport { ImgProps } from './types';\n\nexport default function Img(props: Readonly<ImgProps>) {\n const { backgroundUrl = '', className = '', classNameModifiers = [], src = '', alt = '', showOnError = false } = props;\n const [loaded, setLoaded] = useState(false);\n const imageRef = useRef(null);\n\n const handleLoad = () => {\n setLoaded(true);\n };\n\n const handleError = (e: JSX.TargetedEvent<HTMLImageElement, Event>) => {\n setLoaded(showOnError);\n props?.onError?.(e);\n };\n\n const classNames = cx(\n [className],\n 'adyen-checkout__image',\n { 'adyen-checkout__image--loaded': loaded },\n ...classNameModifiers.map(modifier => `adyen-checkout__image--${modifier}`)\n );\n\n useEffect(() => {\n const image = backgroundUrl ? new Image() : imageRef.current;\n image.src = backgroundUrl || src;\n image.onload = handleLoad;\n setLoaded(!!image.complete);\n }, []);\n\n if (backgroundUrl) {\n return <div data-testid=\"background\" style={{ backgroundUrl } as JSX.CSSProperties} {...props} className={classNames} />;\n }\n\n return <img {...props} alt={alt} ref={imageRef} className={classNames} onError={handleError} />;\n}\n"],"names":["Img","props","backgroundUrl","className","classNameModifiers","src","alt","showOnError","loaded","setLoaded","useState","imageRef","useRef","handleLoad","classNames","cx","map","modifier","useEffect","image","Image","current","onload","complete","h","div","data-testid","style","img","ref","onError","e"],"mappings":"qNAOe,SAASA,EAAIC,GACxB,MAAMC,cAAEA,EAAgB,GAAEC,UAAEA,EAAY,GAAEC,mBAAEA,EAAqB,GAAEC,IAAEA,EAAM,GAAEC,IAAEA,EAAM,GAAEC,YAAEA,GAAc,GAAUN,GAC1GO,EAAQC,GAAaC,GAAS,GAC/BC,EAAWC,EAAO,MAElBC,EAAa,KACfJ,GAAU,IAQRK,EAAaC,EACf,CAACZ,GACD,wBACA,CAAE,gCAAiCK,MAChCJ,EAAmBY,IAAIC,GAAY,0BAA0BA,MAUpE,OAPAC,EAAU,KACN,MAAMC,EAAQjB,EAAgB,IAAIkB,MAAUT,EAASU,QACrDF,EAAMd,IAAMH,GAAiBG,EAC7Bc,EAAMG,OAAST,EACfJ,IAAYU,EAAMI,WACnB,IAECrB,EACOsB,EAACC,MAAAA,CAAIC,cAAY,aAAaC,MAAO,CAAEzB,oBAA0CD,EAAOE,UAAWW,IAGvGU,EAACI,MAAAA,IAAQ3B,EAAOK,IAAKA,EAAKuB,IAAKlB,EAAUR,UAAWW,EAAYgB,QAvBlDC,IACjBtB,EAAUF,GACVN,GAAO6B,UAAUC,KAsBzB"}
@@ -1 +1 @@
1
- {"version":3,"file":"IssuerButton.js","sources":["../../../../../../src/components/internal/IssuerList/IssuerButtonGroup/IssuerButton.tsx"],"sourcesContent":["import { h } from 'preact';\nimport cx from 'classnames';\nimport Img from '../../Img';\nimport './IssuerButton.scss';\n\ninterface IssuerButtonProps {\n name: string;\n id: string;\n selected: boolean;\n onClick: (event: UIEvent) => void;\n icon?: string;\n}\n\nfunction IssuerButton({ name, id, icon, onClick, selected = false }: IssuerButtonProps) {\n return (\n <button\n type=\"button\"\n className={cx('adyen-checkout__issuer-button', { 'adyen-checkout__issuer-button--selected': selected })}\n aria-label={name}\n aria-pressed={selected}\n onClick={onClick}\n value={id}\n >\n {!!icon && <Img className=\"adyen-checkout__issuer-button-img\" alt={name} src={icon} />}\n <span className=\"adyen-checkout__issuer-button-text\">{name}</span>\n </button>\n );\n}\n\nexport default IssuerButton;\n"],"names":["IssuerButton","name","id","icon","onClick","selected","h","button","type","className","cx","aria-label","aria-pressed","value","Img","alt","src","span"],"mappings":"wJAaA,SAASA,GAAaC,KAAEA,EAAIC,GAAEA,EAAEC,KAAEA,EAAIC,QAAEA,EAAOC,SAAEA,GAAW,IACxD,OACIC,EAACC,SAAAA,CACGC,KAAK,SACLC,UAAWC,EAAG,gCAAiC,CAAE,0CAA2CL,IAC5FM,aAAYV,EACZW,eAAcP,EACdD,QAASA,EACTS,MAAOX,KAEJC,GAAQG,EAACQ,EAAAA,CAAIL,UAAU,oCAAoCM,IAAKd,EAAMe,IAAKb,IAC9EG,EAACW,OAAAA,CAAKR,UAAU,sCAAsCR,GAGlE"}
1
+ {"version":3,"file":"IssuerButton.js","sources":["../../../../../../src/components/internal/IssuerList/IssuerButtonGroup/IssuerButton.tsx"],"sourcesContent":["import { h } from 'preact';\nimport cx from 'classnames';\nimport Img from '../../Img';\nimport './IssuerButton.scss';\n\ninterface IssuerButtonProps {\n name: string;\n id: string;\n selected: boolean;\n onClick: (event: UIEvent) => void;\n icon?: string;\n}\n\nfunction IssuerButton({ name, id, icon, onClick, selected = false }: Readonly<IssuerButtonProps>) {\n return (\n <button\n type=\"button\"\n className={cx('adyen-checkout__issuer-button', { 'adyen-checkout__issuer-button--selected': selected })}\n aria-label={name}\n aria-pressed={selected}\n onClick={onClick}\n value={id}\n >\n {!!icon && <Img className=\"adyen-checkout__issuer-button-img\" alt={name} src={icon} />}\n <span className=\"adyen-checkout__issuer-button-text\">{name}</span>\n </button>\n );\n}\n\nexport default IssuerButton;\n"],"names":["IssuerButton","name","id","icon","onClick","selected","h","button","type","className","cx","aria-label","aria-pressed","value","Img","alt","src","span"],"mappings":"wJAaA,SAASA,GAAaC,KAAEA,EAAIC,GAAEA,EAAEC,KAAEA,EAAIC,QAAEA,EAAOC,SAAEA,GAAW,IACxD,OACIC,EAACC,SAAAA,CACGC,KAAK,SACLC,UAAWC,EAAG,gCAAiC,CAAE,0CAA2CL,IAC5FM,aAAYV,EACZW,eAAcP,EACdD,QAASA,EACTS,MAAOX,KAEJC,GAAQG,EAACQ,EAAAA,CAAIL,UAAU,oCAAoCM,IAAKd,EAAMe,IAAKb,IAC9EG,EAACW,OAAAA,CAAKR,UAAU,sCAAsCR,GAGlE"}
@@ -1 +1 @@
1
- {"version":3,"file":"IssuerButtonGroup.js","sources":["../../../../../../src/components/internal/IssuerList/IssuerButtonGroup/IssuerButtonGroup.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { useCallback } from 'preact/hooks';\nimport IssuerButton from './IssuerButton';\nimport { useCoreContext } from '../../../../core/Context/CoreProvider';\nimport './IssuerButtonGroup.scss';\nimport { IssuerItem } from '../types';\n\ninterface IssuerButtonGroupProps {\n items: IssuerItem[];\n selectedIssuerId: string;\n onChange: (event: UIEvent) => void;\n}\n\nconst IssuerButtonGroup = ({ items = [], selectedIssuerId, onChange }: IssuerButtonGroupProps) => {\n const { i18n } = useCoreContext();\n\n const handleClick = useCallback(\n (event: UIEvent) => {\n const value = (event.currentTarget as HTMLButtonElement).value;\n Object.defineProperty(event.target, 'value', { value });\n onChange(event);\n },\n [onChange]\n );\n\n return (\n <div className=\"adyen-checkout__issuer-button-group\" role=\"group\" aria-label={i18n.get('issuerList.selectField.contextualText')}>\n {items.map(issuer => (\n <IssuerButton key={issuer.id} {...issuer} selected={selectedIssuerId === issuer.id} onClick={handleClick} />\n ))}\n </div>\n );\n};\n\nexport default IssuerButtonGroup;\n"],"names":["IssuerButtonGroup","items","selectedIssuerId","onChange","i18n","useCoreContext","handleClick","useCallback","event","value","currentTarget","Object","defineProperty","target","h","div","className","role","aria-label","get","map","issuer","IssuerButton","key","id","selected","onClick"],"mappings":"oQAaA,MAAMA,EAAoB,EAAGC,QAAQ,GAAIC,mBAAkBC,eACvD,MAAMC,KAAEA,GAASC,IAEXC,EAAcC,EACfC,IACG,MAAMC,EAASD,EAAME,cAAoCD,MACzDE,OAAOC,eAAeJ,EAAMK,OAAQ,QAAS,CAAEJ,UAC/CN,EAASK,IAEb,CAACL,IAGL,OACIW,EAACC,MAAAA,CAAIC,UAAU,sCAAsCC,KAAK,QAAQC,aAAYd,EAAKe,IAAI,0CAClFlB,EAAMmB,IAAIC,GACPP,EAACQ,EAAAA,CAAaC,IAAKF,EAAOG,MAAQH,EAAQI,SAAUvB,IAAqBmB,EAAOG,GAAIE,QAASpB"}
1
+ {"version":3,"file":"IssuerButtonGroup.js","sources":["../../../../../../src/components/internal/IssuerList/IssuerButtonGroup/IssuerButtonGroup.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { useCallback } from 'preact/hooks';\nimport IssuerButton from './IssuerButton';\nimport { useCoreContext } from '../../../../core/Context/CoreProvider';\nimport './IssuerButtonGroup.scss';\nimport { IssuerItem } from '../types';\n\ninterface IssuerButtonGroupProps {\n items: IssuerItem[];\n selectedIssuerId: string;\n onChange: (event: UIEvent) => void;\n}\n\nconst IssuerButtonGroup = ({ items = [], selectedIssuerId, onChange }: Readonly<IssuerButtonGroupProps>) => {\n const { i18n } = useCoreContext();\n\n const handleClick = useCallback(\n (event: UIEvent) => {\n const value = (event.currentTarget as HTMLButtonElement).value;\n Object.defineProperty(event.target, 'value', { value });\n onChange(event);\n },\n [onChange]\n );\n\n return (\n <div className=\"adyen-checkout__issuer-button-group\" role=\"group\" aria-label={i18n.get('issuerList.selectField.contextualText')}>\n {items.map(issuer => (\n <IssuerButton key={issuer.id} {...issuer} selected={selectedIssuerId === issuer.id} onClick={handleClick} />\n ))}\n </div>\n );\n};\n\nexport default IssuerButtonGroup;\n"],"names":["IssuerButtonGroup","items","selectedIssuerId","onChange","i18n","useCoreContext","handleClick","useCallback","event","value","currentTarget","Object","defineProperty","target","h","div","className","role","aria-label","get","map","issuer","IssuerButton","key","id","selected","onClick"],"mappings":"oQAaA,MAAMA,EAAoB,EAAGC,QAAQ,GAAIC,mBAAkBC,eACvD,MAAMC,KAAEA,GAASC,IAEXC,EAAcC,EACfC,IACG,MAAMC,EAASD,EAAME,cAAoCD,MACzDE,OAAOC,eAAeJ,EAAMK,OAAQ,QAAS,CAAEJ,UAC/CN,EAASK,IAEb,CAACL,IAGL,OACIW,EAACC,MAAAA,CAAIC,UAAU,sCAAsCC,KAAK,QAAQC,aAAYd,EAAKe,IAAI,0CAClFlB,EAAMmB,IAAIC,GACPP,EAACQ,EAAAA,CAAaC,IAAKF,EAAOG,MAAQH,EAAQI,SAAUvB,IAAqBmB,EAAOG,GAAIE,QAASpB"}
@@ -1 +1 @@
1
- {"version":3,"file":"IssuerList.js","sources":["../../../../../src/components/internal/IssuerList/IssuerList.tsx"],"sourcesContent":["import { Fragment, h } from 'preact';\nimport { useState, useEffect, useCallback, useRef } from 'preact/hooks';\nimport useForm from '../../../utils/useForm';\nimport Field from '../FormFields/Field';\nimport IssuerButtonGroup from './IssuerButtonGroup';\nimport ContentSeparator from '../ContentSeparator';\nimport { useCoreContext } from '../../../core/Context/CoreProvider';\nimport { ValidatorRules } from '../../../utils/Validator/types';\nimport { IssuerListProps } from './types';\nimport './IssuerList.scss';\nimport useSRPanelContext from '../../../core/Errors/useSRPanelContext';\nimport { SetSRMessagesReturnFn } from '../../../core/Errors/SRPanelProvider';\nimport { SetSRMessagesReturnObject } from '../../../core/Errors/types';\nimport { ERROR_ACTION_FOCUS_FIELD } from '../../../core/Errors/constants';\nimport { setFocusOnField } from '../../../utils/setFocus';\nimport DisclaimerMessage from '../DisclaimerMessage';\nimport Select from '../FormFields/Select';\nimport { SelectTargetObject } from '../FormFields/Select/types';\nimport { ANALYTICS_SEARCH_DEBOUNCE_TIME } from '../../../core/Analytics/constants';\nimport { debounce } from '../../../utils/debounce';\nimport { AnalyticsInfoEvent, InfoEventType, UiTarget } from '../../../core/Analytics/events/AnalyticsInfoEvent';\n\nconst payButtonLabel = ({ issuer, items }, i18n): string => {\n const issuerName = items.find(i => i.id === issuer)?.name;\n if (!issuer || !issuerName) return i18n.get('continue');\n return `${i18n.get('continueTo')} ${issuerName}`;\n};\n\nconst schema = ['issuer'];\nconst validationRules: ValidatorRules = {\n issuer: {\n validate: issuer => !!issuer && issuer.length > 0,\n errorMessage: 'issuerList.selectField.contextualText',\n modes: ['blur']\n }\n};\n\nenum IssuerListInputTypes {\n ButtonGroup,\n Dropdown\n}\n\nfunction IssuerList({\n items,\n placeholder,\n issuer,\n highlightedIds = [],\n showContextualElement,\n contextualText,\n selectFieldLabel,\n ...props\n}: IssuerListProps) {\n const { i18n } = useCoreContext();\n const { handleChangeFor, triggerValidation, data, valid, errors, isValid } = useForm({\n schema,\n defaultData: { issuer },\n rules: validationRules\n });\n const [status, setStatus] = useState('ready');\n const [inputType, setInputType] = useState<IssuerListInputTypes>(IssuerListInputTypes.Dropdown);\n\n const { setSRMessagesFromObjects, shouldMoveFocusSR } = useSRPanelContext();\n const setSRMessages: SetSRMessagesReturnFn = setSRMessagesFromObjects?.({});\n\n const containerRef = useRef<HTMLDivElement>(null);\n\n const getErrorMessage = error => (error && error.errorMessage ? i18n.get(error.errorMessage) : !!error);\n\n this.setStatus = newStatus => {\n setStatus(newStatus);\n };\n\n const handleInputChange = useCallback(\n (type: IssuerListInputTypes) => (event: h.JSX.TargetedKeyboardEvent<HTMLInputElement>) => {\n const target = type === IssuerListInputTypes.Dropdown ? UiTarget.list : UiTarget.featuredIssuer;\n const issuerObj = items.find(issuer => issuer.id === (event.target as SelectTargetObject).value);\n\n const analyticsEvent = new AnalyticsInfoEvent({\n component: props.type,\n type: InfoEventType.selected,\n target,\n issuer: issuerObj.name\n });\n props.onSubmitAnalytics(analyticsEvent);\n\n setInputType(type);\n handleChangeFor('issuer')(event);\n },\n [handleChangeFor, props.type]\n );\n\n const handleListToggle = useCallback(\n (isOpen: boolean) => {\n if (isOpen) {\n const event = new AnalyticsInfoEvent({\n component: props.type,\n type: InfoEventType.displayed,\n target: UiTarget.list\n });\n props.onSubmitAnalytics(event);\n }\n },\n [props.type, props.onSubmitAnalytics]\n );\n\n const debounceSearchAnalytics = useRef(debounce(props.onSubmitAnalytics, ANALYTICS_SEARCH_DEBOUNCE_TIME));\n\n const handleSearch = useCallback(() => {\n debounceSearchAnalytics.current({ type: InfoEventType.input, target: UiTarget.listSearch });\n }, []);\n\n useEffect(() => {\n props.onChange({ data, valid, errors, isValid });\n\n const srPanelResp: SetSRMessagesReturnObject = setSRMessages?.({ errors, isValidating: true });\n if (srPanelResp?.action === ERROR_ACTION_FOCUS_FIELD) {\n // Focus field in error, if required\n if (shouldMoveFocusSR) setFocusOnField(containerRef.current, 'issuer-list');\n }\n }, [data, valid, errors, isValid]);\n\n this.showValidation = () => {\n triggerValidation();\n };\n\n const { highlightedItems } = items.reduce(\n (memo, item) => {\n if (highlightedIds.includes(item.id)) memo.highlightedItems.push({ ...item });\n return memo;\n },\n { highlightedItems: [] }\n );\n\n return (\n <div ref={containerRef} className=\"adyen-checkout__issuer-list\">\n {!!highlightedItems.length && (\n <Fragment>\n <IssuerButtonGroup\n selectedIssuerId={inputType === IssuerListInputTypes.ButtonGroup ? data['issuer'] : null}\n items={highlightedItems}\n onChange={handleInputChange(IssuerListInputTypes.ButtonGroup)}\n />\n <ContentSeparator />\n </Fragment>\n )}\n\n <Field\n label={selectFieldLabel ?? i18n.get('issuerList.selectField.label')}\n errorMessage={getErrorMessage(errors.issuer)}\n classNameModifiers={['issuer-list']}\n name={'issuer'}\n showContextualElement={showContextualElement}\n contextualText={contextualText}\n >\n <Select\n items={items}\n selectedValue={inputType === IssuerListInputTypes.Dropdown ? data['issuer'] : null}\n placeholder={placeholder}\n name={'issuer'}\n className={'adyen-checkout__issuer-list__dropdown'}\n onChange={handleInputChange(IssuerListInputTypes.Dropdown)}\n onListToggle={handleListToggle}\n onInput={handleSearch}\n />\n </Field>\n\n {props.termsAndConditions && (\n <div className=\"adyen-checkout__issuer-list__termsAndConditions\">\n <DisclaimerMessage message={i18n.get(props.termsAndConditions.translationKey)} urls={props.termsAndConditions.urls} />\n </div>\n )}\n\n {props.showPayButton &&\n props.payButton({\n status,\n label: payButtonLabel({ issuer: data['issuer'], items: [...items, ...highlightedItems] }, i18n)\n })}\n </div>\n );\n}\n\nIssuerList.defaultProps = {\n onChange: () => {}\n};\n\nexport default IssuerList;\n"],"names":["payButtonLabel","issuer","items","i18n","issuerName","find","i","id","name","get","schema","validationRules","validate","length","errorMessage","modes","IssuerList","placeholder","highlightedIds","showContextualElement","contextualText","selectFieldLabel","props","useCoreContext","handleChangeFor","triggerValidation","data","valid","errors","isValid","useForm","defaultData","rules","status","setStatus","useState","inputType","setInputType","setSRMessagesFromObjects","shouldMoveFocusSR","useSRPanelContext","setSRMessages","containerRef","useRef","this","newStatus","handleInputChange","useCallback","type","event","target","UiTarget","list","featuredIssuer","issuerObj","value","analyticsEvent","AnalyticsInfoEvent","component","InfoEventType","selected","onSubmitAnalytics","handleListToggle","isOpen","displayed","debounceSearchAnalytics","debounce","ANALYTICS_SEARCH_DEBOUNCE_TIME","handleSearch","current","input","listSearch","useEffect","onChange","srPanelResp","isValidating","action","ERROR_ACTION_FOCUS_FIELD","setFocusOnField","showValidation","highlightedItems","reduce","memo","item","includes","push","h","div","ref","className","Fragment","IssuerButtonGroup","selectedIssuerId","ContentSeparator","Field","label","error","classNameModifiers","Select","selectedValue","onListToggle","onInput","termsAndConditions","DisclaimerMessage","message","translationKey","urls","showPayButton","payButton","defaultProps"],"mappings":"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"}
1
+ {"version":3,"file":"IssuerList.js","sources":["../../../../../src/components/internal/IssuerList/IssuerList.tsx"],"sourcesContent":["import { Fragment, h } from 'preact';\nimport { useState, useEffect, useCallback, useRef } from 'preact/hooks';\nimport useForm from '../../../utils/useForm';\nimport Field from '../FormFields/Field';\nimport IssuerButtonGroup from './IssuerButtonGroup';\nimport ContentSeparator from '../ContentSeparator';\nimport { useCoreContext } from '../../../core/Context/CoreProvider';\nimport { ValidatorRules } from '../../../utils/Validator/types';\nimport { IssuerListProps } from './types';\nimport './IssuerList.scss';\nimport useSRPanelContext from '../../../core/Errors/useSRPanelContext';\nimport { SetSRMessagesReturnFn } from '../../../core/Errors/SRPanelProvider';\nimport { SetSRMessagesReturnObject } from '../../../core/Errors/types';\nimport { ERROR_ACTION_FOCUS_FIELD } from '../../../core/Errors/constants';\nimport { setFocusOnField } from '../../../utils/setFocus';\nimport DisclaimerMessage from '../DisclaimerMessage';\nimport Select from '../FormFields/Select';\nimport { SelectTargetObject } from '../FormFields/Select/types';\nimport { ANALYTICS_SEARCH_DEBOUNCE_TIME } from '../../../core/Analytics/constants';\nimport { debounce } from '../../../utils/debounce';\nimport { AnalyticsInfoEvent, InfoEventType, UiTarget } from '../../../core/Analytics/events/AnalyticsInfoEvent';\n\nconst payButtonLabel = ({ issuer, items }, i18n): string => {\n const issuerName = items.find(i => i.id === issuer)?.name;\n if (!issuer || !issuerName) return i18n.get('continue');\n return `${i18n.get('continueTo')} ${issuerName}`;\n};\n\nconst schema = ['issuer'];\nconst validationRules: ValidatorRules = {\n issuer: {\n validate: issuer => !!issuer && issuer.length > 0,\n errorMessage: 'issuerList.selectField.contextualText',\n modes: ['blur']\n }\n};\n\nenum IssuerListInputTypes {\n ButtonGroup,\n Dropdown\n}\n\nfunction IssuerList({\n items,\n placeholder,\n issuer,\n highlightedIds = [],\n showContextualElement,\n contextualText,\n selectFieldLabel,\n ...props\n}: Readonly<IssuerListProps>) {\n const { i18n } = useCoreContext();\n const { handleChangeFor, triggerValidation, data, valid, errors, isValid } = useForm({\n schema,\n defaultData: { issuer },\n rules: validationRules\n });\n const [status, setStatus] = useState('ready');\n const [inputType, setInputType] = useState<IssuerListInputTypes>(IssuerListInputTypes.Dropdown);\n\n const { setSRMessagesFromObjects, shouldMoveFocusSR } = useSRPanelContext();\n const setSRMessages: SetSRMessagesReturnFn = setSRMessagesFromObjects?.({});\n\n const containerRef = useRef<HTMLDivElement>(null);\n\n const getErrorMessage = error => (error && error.errorMessage ? i18n.get(error.errorMessage) : !!error);\n\n this.setStatus = newStatus => {\n setStatus(newStatus);\n };\n\n const handleInputChange = useCallback(\n (type: IssuerListInputTypes) => (event: h.JSX.TargetedKeyboardEvent<HTMLInputElement>) => {\n const target = type === IssuerListInputTypes.Dropdown ? UiTarget.list : UiTarget.featuredIssuer;\n const issuerObj = items.find(issuer => issuer.id === (event.target as SelectTargetObject).value);\n\n const analyticsEvent = new AnalyticsInfoEvent({\n component: props.type,\n type: InfoEventType.selected,\n target,\n issuer: issuerObj.name\n });\n props.onSubmitAnalytics(analyticsEvent);\n\n setInputType(type);\n handleChangeFor('issuer')(event);\n },\n [handleChangeFor, props.type]\n );\n\n const handleListToggle = useCallback(\n (isOpen: boolean) => {\n if (isOpen) {\n const event = new AnalyticsInfoEvent({\n component: props.type,\n type: InfoEventType.displayed,\n target: UiTarget.list\n });\n props.onSubmitAnalytics(event);\n }\n },\n [props.type, props.onSubmitAnalytics]\n );\n\n const debounceSearchAnalytics = useRef(debounce(props.onSubmitAnalytics, ANALYTICS_SEARCH_DEBOUNCE_TIME));\n\n const handleSearch = useCallback(() => {\n debounceSearchAnalytics.current({ type: InfoEventType.input, target: UiTarget.listSearch });\n }, []);\n\n useEffect(() => {\n props.onChange({ data, valid, errors, isValid });\n\n const srPanelResp: SetSRMessagesReturnObject = setSRMessages?.({ errors, isValidating: true });\n if (srPanelResp?.action === ERROR_ACTION_FOCUS_FIELD) {\n // Focus field in error, if required\n if (shouldMoveFocusSR) setFocusOnField(containerRef.current, 'issuer-list');\n }\n }, [data, valid, errors, isValid]);\n\n this.showValidation = () => {\n triggerValidation();\n };\n\n const { highlightedItems } = items.reduce(\n (memo, item) => {\n if (highlightedIds.includes(item.id)) memo.highlightedItems.push({ ...item });\n return memo;\n },\n { highlightedItems: [] }\n );\n\n return (\n <div ref={containerRef} className=\"adyen-checkout__issuer-list\">\n {!!highlightedItems.length && (\n <Fragment>\n <IssuerButtonGroup\n selectedIssuerId={inputType === IssuerListInputTypes.ButtonGroup ? data['issuer'] : null}\n items={highlightedItems}\n onChange={handleInputChange(IssuerListInputTypes.ButtonGroup)}\n />\n <ContentSeparator />\n </Fragment>\n )}\n\n <Field\n label={selectFieldLabel ?? i18n.get('issuerList.selectField.label')}\n errorMessage={getErrorMessage(errors.issuer)}\n classNameModifiers={['issuer-list']}\n name={'issuer'}\n showContextualElement={showContextualElement}\n contextualText={contextualText}\n >\n <Select\n items={items}\n selectedValue={inputType === IssuerListInputTypes.Dropdown ? data['issuer'] : null}\n placeholder={placeholder}\n name={'issuer'}\n className={'adyen-checkout__issuer-list__dropdown'}\n onChange={handleInputChange(IssuerListInputTypes.Dropdown)}\n onListToggle={handleListToggle}\n onInput={handleSearch}\n />\n </Field>\n\n {props.termsAndConditions && (\n <div className=\"adyen-checkout__issuer-list__termsAndConditions\">\n <DisclaimerMessage message={i18n.get(props.termsAndConditions.translationKey)} urls={props.termsAndConditions.urls} />\n </div>\n )}\n\n {props.showPayButton &&\n props.payButton({\n status,\n label: payButtonLabel({ issuer: data['issuer'], items: [...items, ...highlightedItems] }, i18n)\n })}\n </div>\n );\n}\n\nIssuerList.defaultProps = {\n onChange: () => {}\n};\n\nexport default IssuerList;\n"],"names":["payButtonLabel","issuer","items","i18n","issuerName","find","i","id","name","get","schema","validationRules","validate","length","errorMessage","modes","IssuerList","placeholder","highlightedIds","showContextualElement","contextualText","selectFieldLabel","props","useCoreContext","handleChangeFor","triggerValidation","data","valid","errors","isValid","useForm","defaultData","rules","status","setStatus","useState","inputType","setInputType","setSRMessagesFromObjects","shouldMoveFocusSR","useSRPanelContext","setSRMessages","containerRef","useRef","this","newStatus","handleInputChange","useCallback","type","event","target","UiTarget","list","featuredIssuer","issuerObj","value","analyticsEvent","AnalyticsInfoEvent","component","InfoEventType","selected","onSubmitAnalytics","handleListToggle","isOpen","displayed","debounceSearchAnalytics","debounce","ANALYTICS_SEARCH_DEBOUNCE_TIME","handleSearch","current","input","listSearch","useEffect","onChange","srPanelResp","isValidating","action","ERROR_ACTION_FOCUS_FIELD","setFocusOnField","showValidation","highlightedItems","reduce","memo","item","includes","push","h","div","ref","className","Fragment","IssuerButtonGroup","selectedIssuerId","ContentSeparator","Field","label","error","classNameModifiers","Select","selectedValue","onListToggle","onInput","termsAndConditions","DisclaimerMessage","message","translationKey","urls","showPayButton","payButton","defaultProps"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Link.js","sources":["../../../../../src/components/internal/Link/Link.tsx"],"sourcesContent":["import { h } from 'preact';\nimport type { ComponentChildren } from 'preact';\n\nimport './Link.scss';\n\n/**\n * Disclaimer: we don't follow Bento's design for Links. Checkout has its own colors\n */\n\ninterface LinkProps {\n to: string;\n children?: ComponentChildren;\n}\n\nconst Link = ({ to, children }: LinkProps) => {\n return (\n <a className=\"adyen-checkout-link\" href={to} target=\"_blank\" rel=\"noopener noreferrer\">\n {children}\n </a>\n );\n};\n\nexport default Link;\n"],"names":["Link","to","children","h","a","className","href","target","rel"],"mappings":"wEAcA,MAAMA,EAAO,EAAGC,KAAIC,cAEZC,EAACC,IAAAA,CAAEC,UAAU,sBAAsBC,KAAML,EAAIM,OAAO,SAASC,IAAI,uBAC5DN"}
1
+ {"version":3,"file":"Link.js","sources":["../../../../../src/components/internal/Link/Link.tsx"],"sourcesContent":["import { h } from 'preact';\nimport type { ComponentChildren } from 'preact';\n\nimport './Link.scss';\n\n/**\n * Disclaimer: we don't follow Bento's design for Links. Checkout has its own colors\n */\n\ninterface LinkProps {\n to: string;\n children?: ComponentChildren;\n}\n\nconst Link = ({ to, children }: Readonly<LinkProps>) => {\n return (\n <a className=\"adyen-checkout-link\" href={to} target=\"_blank\" rel=\"noopener noreferrer\">\n {children}\n </a>\n );\n};\n\nexport default Link;\n"],"names":["Link","to","children","h","a","className","href","target","rel"],"mappings":"wEAcA,MAAMA,EAAO,EAAGC,KAAIC,cAEZC,EAACC,IAAAA,CAAEC,UAAU,sBAAsBC,KAAML,EAAIM,OAAO,SAASC,IAAI,uBAC5DN"}
@@ -1 +1 @@
1
- {"version":3,"file":"LoadingWrapper.js","sources":["../../../../../src/components/internal/LoadingWrapper/LoadingWrapper.tsx"],"sourcesContent":["import { ComponentChildren, h } from 'preact';\nimport classNames from 'classnames';\nimport Spinner from '../../internal/Spinner';\nimport './LoadingWrapper.scss';\n\ninterface LoadingWrapperProps {\n status?: string;\n children?: ComponentChildren;\n}\n\nconst LoadingWrapper = ({ children, status }: LoadingWrapperProps) => {\n const wrapperClass = classNames('adyen-checkout__loading-input__form', 'loading-input__form', {\n 'loading-input__form--loading': status === 'loading'\n });\n\n const spinnerClass = classNames({\n 'loading-input__spinner': true,\n 'loading-input__spinner--active': status === 'loading'\n });\n\n return (\n <div style={{ position: 'relative' }}>\n <div className={spinnerClass}>\n <Spinner />\n </div>\n <div className={wrapperClass}>{children}</div>\n </div>\n );\n};\n\nexport default LoadingWrapper;\n"],"names":["LoadingWrapper","children","status","wrapperClass","classNames","spinnerClass","h","div","style","position","className","Spinner"],"mappings":"uJAUA,MAAMA,EAAiB,EAAGC,WAAUC,aAChC,MAAMC,EAAeC,EAAW,sCAAuC,sBAAuB,CAC1F,+BAA2C,YAAXF,IAG9BG,EAAeD,EAAW,CAC5B,0BAA0B,EAC1B,iCAA6C,YAAXF,IAGtC,OACII,EAACC,MAAAA,CAAIC,MAAO,CAAEC,SAAU,aACpBH,EAACC,MAAAA,CAAIG,UAAWL,GACZC,EAACK,SAELL,EAACC,MAAAA,CAAIG,UAAWP,GAAeF"}
1
+ {"version":3,"file":"LoadingWrapper.js","sources":["../../../../../src/components/internal/LoadingWrapper/LoadingWrapper.tsx"],"sourcesContent":["import { ComponentChildren, h } from 'preact';\nimport classNames from 'classnames';\nimport Spinner from '../../internal/Spinner';\nimport './LoadingWrapper.scss';\n\ninterface LoadingWrapperProps {\n status?: string;\n children?: ComponentChildren;\n}\n\nconst LoadingWrapper = ({ children, status }: Readonly<LoadingWrapperProps>) => {\n const wrapperClass = classNames('adyen-checkout__loading-input__form', 'loading-input__form', {\n 'loading-input__form--loading': status === 'loading'\n });\n\n const spinnerClass = classNames({\n 'loading-input__spinner': true,\n 'loading-input__spinner--active': status === 'loading'\n });\n\n return (\n <div style={{ position: 'relative' }}>\n <div className={spinnerClass}>\n <Spinner />\n </div>\n <div className={wrapperClass}>{children}</div>\n </div>\n );\n};\n\nexport default LoadingWrapper;\n"],"names":["LoadingWrapper","children","status","wrapperClass","classNames","spinnerClass","h","div","style","position","className","Spinner"],"mappings":"uJAUA,MAAMA,EAAiB,EAAGC,WAAUC,aAChC,MAAMC,EAAeC,EAAW,sCAAuC,sBAAuB,CAC1F,+BAA2C,YAAXF,IAG9BG,EAAeD,EAAW,CAC5B,0BAA0B,EAC1B,iCAA6C,YAAXF,IAGtC,OACII,EAACC,MAAAA,CAAIC,MAAO,CAAEC,SAAU,aACpBH,EAACC,MAAAA,CAAIG,UAAWL,GACZC,EAACK,SAELL,EAACC,MAAAA,CAAIG,UAAWP,GAAeF"}
@@ -1 +1 @@
1
- {"version":3,"file":"Modal.js","sources":["../../../../../src/components/internal/Modal/Modal.tsx"],"sourcesContent":["import { ComponentChildren, h } from 'preact';\nimport { useEffect, useRef } from 'preact/hooks';\nimport cx from 'classnames';\nimport './Modal.scss';\nimport { useModal } from './useModal';\n\ntype ModalRenderFnProps = {\n /**\n * Function used to properly trigger the Modal close mechanism. It takes into account the element that the Modal needs\n * to set focus when it is dismissed.\n */\n onCloseModal(): void;\n};\n\ntype ModalProps = {\n children: ({ onCloseModal }: ModalRenderFnProps) => ComponentChildren;\n classNameModifiers?: string[];\n onClose(): void;\n isOpen: boolean;\n isDismissible?: boolean;\n labelledBy: string;\n describedBy: string;\n /**\n * Reference to the element that should be focused when the modal is opened\n */\n focusFirst: HTMLElement;\n /**\n * Reference to the element that should be focused when the modal is closed\n */\n focusAfterClose: HTMLElement;\n};\n\nconst Modal = ({\n children,\n classNameModifiers = [],\n isOpen,\n onClose,\n isDismissible = true,\n labelledBy,\n describedBy,\n focusFirst,\n focusAfterClose,\n ...props\n}: ModalProps) => {\n const modalContainerRef = useRef<HTMLDivElement>();\n const { closeModal, handleClickOutside } = useModal({\n modalElement: modalContainerRef.current,\n isOpen,\n isDismissible,\n focusFirst,\n focusAfterClose,\n onClose\n });\n\n /**\n * It shouldn't propagate ENTER key event to the parent component. This effect suppress the event propagation\n * (e.g. ENTER key press might trigger the payment flow for Card)\n */\n useEffect(() => {\n if (!modalContainerRef.current) return;\n\n const suppressKeyPress = (event: KeyboardEvent) => {\n if (event.key === 'Enter' || event.code === 'Enter') event.stopPropagation();\n };\n\n modalContainerRef.current.addEventListener('keypress', suppressKeyPress, { capture: true });\n return () => {\n modalContainerRef.current.removeEventListener('keypress', suppressKeyPress);\n };\n }, [modalContainerRef.current]);\n\n return (\n // eslint-disable-next-line jsx-a11y/click-events-have-key-events,jsx-a11y/no-noninteractive-element-interactions\n <div\n className={cx(\n 'adyen-checkout__modal-wrapper',\n classNameModifiers.map(m => `adyen-checkout__modal-wrapper--${m}`),\n { 'adyen-checkout__modal-wrapper--open': isOpen }\n )}\n role=\"dialog\"\n aria-labelledby={labelledBy}\n aria-describedby={describedBy}\n aria-modal=\"true\"\n aria-hidden={!isOpen}\n onClick={handleClickOutside}\n {...props}\n >\n <div className=\"adyen-checkout__modal\" ref={modalContainerRef}>\n {children({ onCloseModal: closeModal })}\n </div>\n </div>\n );\n};\n\nexport { Modal };\n"],"names":["Modal","children","classNameModifiers","isOpen","onClose","isDismissible","labelledBy","describedBy","focusFirst","focusAfterClose","props","modalContainerRef","useRef","closeModal","handleClickOutside","useModal","modalElement","current","useEffect","suppressKeyPress","event","key","code","stopPropagation","addEventListener","capture","removeEventListener","h","div","className","cx","map","m","role","aria-labelledby","aria-describedby","aria-modal","aria-hidden","onClick","ref","onCloseModal"],"mappings":"gPAgCA,MAAMA,EAAQ,EACVC,WACAC,qBAAqB,GACrBC,SACAC,UACAC,iBAAgB,EAChBC,aACAC,cACAC,aACAC,qBACGC,MAEH,MAAMC,EAAoBC,KACpBC,WAAEA,EAAUC,mBAAEA,GAAuBC,EAAS,CAChDC,aAAcL,EAAkBM,QAChCd,SACAE,gBACAG,aACAC,kBACAL,YAoBJ,OAbAc,EAAU,KACN,IAAKP,EAAkBM,QAAS,OAEhC,MAAME,EAAoBC,IACJ,UAAdA,EAAMC,KAAkC,UAAfD,EAAME,MAAkBF,EAAMG,mBAI/D,OADAZ,EAAkBM,QAAQO,iBAAiB,WAAYL,EAAkB,CAAEM,SAAS,IAC7E,KACHd,EAAkBM,QAAQS,oBAAoB,WAAYP,KAE/D,CAACR,EAAkBM,UAIlBU,EAACC,MAAAA,CACGC,UAAWC,EACP,gCACA5B,EAAmB6B,IAAIC,GAAK,kCAAkCA,KAC9D,CAAE,sCAAuC7B,IAE7C8B,KAAK,SACLC,kBAAiB5B,EACjB6B,mBAAkB5B,EAClB6B,aAAW,OACXC,eAAclC,EACdmC,QAASxB,KACLJ,GAEJiB,EAACC,MAAAA,CAAIC,UAAU,wBAAwBU,IAAK5B,GACvCV,EAAS,CAAEuC,aAAc3B"}
1
+ {"version":3,"file":"Modal.js","sources":["../../../../../src/components/internal/Modal/Modal.tsx"],"sourcesContent":["import { ComponentChildren, h } from 'preact';\nimport { useEffect, useRef } from 'preact/hooks';\nimport cx from 'classnames';\nimport './Modal.scss';\nimport { useModal } from './useModal';\n\ntype ModalRenderFnProps = {\n /**\n * Function used to properly trigger the Modal close mechanism. It takes into account the element that the Modal needs\n * to set focus when it is dismissed.\n */\n onCloseModal(): void;\n};\n\ntype ModalProps = {\n children: ({ onCloseModal }: ModalRenderFnProps) => ComponentChildren;\n classNameModifiers?: string[];\n onClose(): void;\n isOpen: boolean;\n isDismissible?: boolean;\n labelledBy: string;\n describedBy: string;\n /**\n * Reference to the element that should be focused when the modal is opened\n */\n focusFirst: HTMLElement;\n /**\n * Reference to the element that should be focused when the modal is closed\n */\n focusAfterClose: HTMLElement;\n};\n\nconst Modal = ({\n children,\n classNameModifiers = [],\n isOpen,\n onClose,\n isDismissible = true,\n labelledBy,\n describedBy,\n focusFirst,\n focusAfterClose,\n ...props\n}: Readonly<ModalProps>) => {\n const modalContainerRef = useRef<HTMLDivElement>();\n const { closeModal, handleClickOutside } = useModal({\n modalElement: modalContainerRef.current,\n isOpen,\n isDismissible,\n focusFirst,\n focusAfterClose,\n onClose\n });\n\n /**\n * It shouldn't propagate ENTER key event to the parent component. This effect suppress the event propagation\n * (e.g. ENTER key press might trigger the payment flow for Card)\n */\n useEffect(() => {\n if (!modalContainerRef.current) return;\n\n const suppressKeyPress = (event: KeyboardEvent) => {\n if (event.key === 'Enter' || event.code === 'Enter') event.stopPropagation();\n };\n\n modalContainerRef.current.addEventListener('keypress', suppressKeyPress, { capture: true });\n return () => {\n modalContainerRef.current.removeEventListener('keypress', suppressKeyPress);\n };\n }, [modalContainerRef.current]);\n\n return (\n // eslint-disable-next-line jsx-a11y/click-events-have-key-events,jsx-a11y/no-noninteractive-element-interactions\n <div\n className={cx(\n 'adyen-checkout__modal-wrapper',\n classNameModifiers.map(m => `adyen-checkout__modal-wrapper--${m}`),\n { 'adyen-checkout__modal-wrapper--open': isOpen }\n )}\n role=\"dialog\"\n aria-labelledby={labelledBy}\n aria-describedby={describedBy}\n aria-modal=\"true\"\n aria-hidden={!isOpen}\n onClick={handleClickOutside}\n {...props}\n >\n <div className=\"adyen-checkout__modal\" ref={modalContainerRef}>\n {children({ onCloseModal: closeModal })}\n </div>\n </div>\n );\n};\n\nexport { Modal };\n"],"names":["Modal","children","classNameModifiers","isOpen","onClose","isDismissible","labelledBy","describedBy","focusFirst","focusAfterClose","props","modalContainerRef","useRef","closeModal","handleClickOutside","useModal","modalElement","current","useEffect","suppressKeyPress","event","key","code","stopPropagation","addEventListener","capture","removeEventListener","h","div","className","cx","map","m","role","aria-labelledby","aria-describedby","aria-modal","aria-hidden","onClick","ref","onCloseModal"],"mappings":"gPAgCA,MAAMA,EAAQ,EACVC,WACAC,qBAAqB,GACrBC,SACAC,UACAC,iBAAgB,EAChBC,aACAC,cACAC,aACAC,qBACGC,MAEH,MAAMC,EAAoBC,KACpBC,WAAEA,EAAUC,mBAAEA,GAAuBC,EAAS,CAChDC,aAAcL,EAAkBM,QAChCd,SACAE,gBACAG,aACAC,kBACAL,YAoBJ,OAbAc,EAAU,KACN,IAAKP,EAAkBM,QAAS,OAEhC,MAAME,EAAoBC,IACJ,UAAdA,EAAMC,KAAkC,UAAfD,EAAME,MAAkBF,EAAMG,mBAI/D,OADAZ,EAAkBM,QAAQO,iBAAiB,WAAYL,EAAkB,CAAEM,SAAS,IAC7E,KACHd,EAAkBM,QAAQS,oBAAoB,WAAYP,KAE/D,CAACR,EAAkBM,UAIlBU,EAACC,MAAAA,CACGC,UAAWC,EACP,gCACA5B,EAAmB6B,IAAIC,GAAK,kCAAkCA,KAC9D,CAAE,sCAAuC7B,IAE7C8B,KAAK,SACLC,kBAAiB5B,EACjB6B,mBAAkB5B,EAClB6B,aAAW,OACXC,eAAclC,EACdmC,QAASxB,KACLJ,GAEJiB,EAACC,MAAAA,CAAIC,UAAU,wBAAwBU,IAAK5B,GACvCV,EAAS,CAAEuC,aAAc3B"}
@@ -1 +1 @@
1
- {"version":3,"file":"OpenInvoice.js","sources":["../../../../../src/components/internal/OpenInvoice/OpenInvoice.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { useEffect, useRef, useState } from 'preact/hooks';\nimport { useCoreContext } from '../../../core/Context/CoreProvider';\nimport CompanyDetails from '../CompanyDetails';\nimport PersonalDetails from '../PersonalDetails';\nimport Address from '../Address';\nimport Checkbox from '../FormFields/Checkbox';\nimport ConsentCheckbox from '../FormFields/ConsentCheckbox';\nimport { getActiveFieldsData, getInitialActiveFieldsets, fieldsetsSchema } from './utils';\nimport {\n OpenInvoiceActiveFieldsets,\n OpenInvoiceFieldsetsRefs,\n OpenInvoiceProps,\n OpenInvoiceStateData,\n OpenInvoiceStateError,\n OpenInvoiceStateValid\n} from './types';\nimport './OpenInvoice.scss';\nimport IbanInput from '../IbanInput';\nimport { GenericError } from '../../../core/Errors/types';\nimport Field from '../FormFields/Field';\nimport FormInstruction from '../FormInstruction';\nimport { ComponentMethodsRef } from '../UIElement/types';\nimport useSRPanelForOpenInvoiceErrors from './useSRPanelForOpenInvoiceErrors';\nimport classNames from 'classnames';\n\nconst consentCBErrorObj: GenericError = {\n isValid: false,\n errorMessage: 'consent.checkbox.invalid',\n error: 'consent.checkbox.invalid'\n};\n\nexport default function OpenInvoice(props: OpenInvoiceProps) {\n const { countryCode, visibility } = props;\n const { i18n } = useCoreContext();\n\n /** An object by which to expose 'public' members to the parent UIElement */\n const openInvoiceRef = useRef<ComponentMethodsRef>({});\n // Just call once\n if (!Object.keys(openInvoiceRef.current).length) {\n props.setComponentRef?.(openInvoiceRef.current);\n }\n\n const isValidating = useRef(false);\n\n const initialActiveFieldsets: OpenInvoiceActiveFieldsets = getInitialActiveFieldsets(visibility, props.data);\n const [activeFieldsets, setActiveFieldsets] = useState<OpenInvoiceActiveFieldsets>(initialActiveFieldsets);\n\n const { current: fieldsetsRefs } = useRef<OpenInvoiceFieldsetsRefs>(\n fieldsetsSchema.reduce((acc, fieldset) => {\n acc[fieldset] = ref => {\n fieldsetsRefs[fieldset].current = ref;\n };\n return acc;\n }, {})\n );\n\n const checkFieldsets = () => Object.keys(activeFieldsets).every(fieldset => !activeFieldsets[fieldset] || !!valid[fieldset]);\n const hasConsentCheckbox = !!props.consentCheckboxLabel;\n const isStandAloneButton = !hasConsentCheckbox && Object.keys(activeFieldsets).every(key => !activeFieldsets[key]);\n const showSeparateDeliveryAddressCheckbox = visibility.deliveryAddress === 'editable' && visibility.billingAddress !== 'hidden';\n\n const [data, setData] = useState<OpenInvoiceStateData>({\n ...props.data,\n ...(hasConsentCheckbox && { consentCheckbox: false })\n });\n const [errors, setErrors] = useState<OpenInvoiceStateError>({});\n const [valid, setValid] = useState<OpenInvoiceStateValid>({});\n const [status, setStatus] = useState('ready');\n\n // Expose methods expected by parent\n openInvoiceRef.current.showValidation = () => {\n isValidating.current = true;\n fieldsetsSchema.forEach(fieldset => {\n if (fieldsetsRefs[fieldset].current) fieldsetsRefs[fieldset].current.showValidation();\n });\n\n setErrors({\n ...(hasConsentCheckbox && { consentCheckbox: data.consentCheckbox ? null : consentCBErrorObj })\n });\n };\n\n openInvoiceRef.current.setStatus = setStatus;\n\n useSRPanelForOpenInvoiceErrors({ errors, data, props, isValidating });\n\n useEffect(() => {\n const fieldsetsAreValid: boolean = checkFieldsets();\n const consentCheckboxValid: boolean = !hasConsentCheckbox || !!valid.consentCheckbox;\n const isValid: boolean = fieldsetsAreValid && consentCheckboxValid;\n const newData: OpenInvoiceStateData = getActiveFieldsData(activeFieldsets, data);\n props.onChange({ data: newData, errors, valid, isValid });\n }, [data, activeFieldsets]);\n\n const handleFieldset = key => state => {\n setData(prevData => ({ ...prevData, [key]: state.data }));\n setValid(prevValid => ({ ...prevValid, [key]: state.isValid }));\n setErrors(prevErrors => ({ ...prevErrors, [key]: state.errors }));\n };\n\n const handleSeparateDeliveryAddress = () => {\n setActiveFieldsets(prevActiveFields => ({\n ...prevActiveFields,\n deliveryAddress: !activeFieldsets.deliveryAddress\n }));\n };\n\n const handleConsentCheckbox = e => {\n const { checked } = e.target;\n setData(prevData => ({ ...prevData, consentCheckbox: checked }));\n setValid(prevValid => ({ ...prevValid, consentCheckbox: checked }));\n setErrors(prevErrors => ({ ...prevErrors, ...{ consentCheckbox: !checked ? consentCBErrorObj : null } }));\n };\n return (\n <div\n className={classNames({\n 'adyen-checkout__open-invoice': true,\n 'adyen-checkout__open-invoice--loading': status === 'loading'\n })}\n >\n <FormInstruction />\n\n {activeFieldsets.companyDetails && (\n <CompanyDetails\n data={props.data.companyDetails}\n label=\"companyDetails\"\n onChange={handleFieldset('companyDetails')}\n setComponentRef={fieldsetsRefs.companyDetails}\n visibility={visibility.companyDetails}\n />\n )}\n\n {activeFieldsets.personalDetails && (\n <PersonalDetails\n data={props.data.personalDetails}\n requiredFields={props.personalDetailsRequiredFields}\n label=\"personalDetails\"\n onChange={handleFieldset('personalDetails')}\n setComponentRef={fieldsetsRefs.personalDetails}\n visibility={visibility.personalDetails}\n />\n )}\n\n {activeFieldsets.bankAccount && (\n <IbanInput\n holderName={true}\n label=\"ach.bankAccount\"\n data={data.bankAccount}\n onChange={handleFieldset('bankAccount')}\n ref={fieldsetsRefs.bankAccount}\n />\n )}\n\n {activeFieldsets.billingAddress && (\n <Address\n allowedCountries={props?.billingAddressSpecification?.allowedCountries ?? props.allowedCountries}\n countryCode={countryCode}\n requiredFields={props.billingAddressRequiredFields}\n specifications={props.billingAddressSpecification}\n data={data.billingAddress}\n label=\"billingAddress\"\n onChange={handleFieldset('billingAddress')}\n setComponentRef={fieldsetsRefs.billingAddress}\n visibility={visibility.billingAddress}\n />\n )}\n\n {showSeparateDeliveryAddressCheckbox && (\n <Field\n classNameModifiers={['separateDeliveryAddress', 'consentCheckbox']}\n name={'separateDeliveryAddress'}\n useLabelElement={false}\n showErrorElement={false}\n >\n <Checkbox\n label={i18n.get('separateDeliveryAddress')}\n checked={activeFieldsets.deliveryAddress}\n classNameModifiers={['separateDeliveryAddress']}\n name={'separateDeliveryAddress'}\n onChange={handleSeparateDeliveryAddress}\n />\n </Field>\n )}\n\n {activeFieldsets.deliveryAddress && (\n <Address\n allowedCountries={props?.deliveryAddressSpecification?.allowedCountries ?? props.allowedCountries}\n countryCode={countryCode}\n requiredFields={props.deliveryAddressRequiredFields}\n specifications={props.deliveryAddressSpecification}\n data={data.deliveryAddress}\n label=\"deliveryAddress\"\n onChange={handleFieldset('deliveryAddress')}\n setComponentRef={fieldsetsRefs.deliveryAddress}\n visibility={visibility.deliveryAddress}\n />\n )}\n\n {hasConsentCheckbox && (\n <ConsentCheckbox\n data={data}\n errorMessage={!!errors.consentCheckbox}\n label={props.consentCheckboxLabel}\n onChange={handleConsentCheckbox}\n i18n={i18n}\n />\n )}\n\n {props.showPayButton &&\n props.payButton({\n status,\n classNameModifiers: [...(isStandAloneButton ? ['standalone'] : [])],\n label: i18n.get('confirmPurchase')\n })}\n </div>\n );\n}\n"],"names":["consentCBErrorObj","isValid","errorMessage","error","OpenInvoice","props","countryCode","visibility","i18n","useCoreContext","openInvoiceRef","useRef","Object","keys","current","length","setComponentRef","isValidating","initialActiveFieldsets","getInitialActiveFieldsets","data","activeFieldsets","setActiveFieldsets","useState","fieldsetsRefs","fieldsetsSchema","reduce","acc","fieldset","ref","hasConsentCheckbox","consentCheckboxLabel","isStandAloneButton","every","key","showSeparateDeliveryAddressCheckbox","deliveryAddress","billingAddress","setData","consentCheckbox","errors","setErrors","valid","setValid","status","setStatus","showValidation","forEach","useSRPanelForOpenInvoiceErrors","useEffect","fieldsetsAreValid","consentCheckboxValid","newData","getActiveFieldsData","onChange","handleFieldset","state","prevData","prevValid","prevErrors","h","div","className","classNames","FormInstruction","companyDetails","CompanyDetails","label","personalDetails","PersonalDetails","requiredFields","personalDetailsRequiredFields","bankAccount","IbanInput","holderName","Address","allowedCountries","billingAddressSpecification","billingAddressRequiredFields","specifications","Field","classNameModifiers","name","useLabelElement","showErrorElement","Checkbox","get","checked","prevActiveFields","deliveryAddressSpecification","deliveryAddressRequiredFields","ConsentCheckbox","e","target","showPayButton","payButton"],"mappings":"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"}
1
+ {"version":3,"file":"OpenInvoice.js","sources":["../../../../../src/components/internal/OpenInvoice/OpenInvoice.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { useEffect, useRef, useState } from 'preact/hooks';\nimport { useCoreContext } from '../../../core/Context/CoreProvider';\nimport CompanyDetails from '../CompanyDetails';\nimport PersonalDetails from '../PersonalDetails';\nimport Address from '../Address';\nimport Checkbox from '../FormFields/Checkbox';\nimport ConsentCheckbox from '../FormFields/ConsentCheckbox';\nimport { getActiveFieldsData, getInitialActiveFieldsets, fieldsetsSchema } from './utils';\nimport {\n OpenInvoiceActiveFieldsets,\n OpenInvoiceFieldsetsRefs,\n OpenInvoiceProps,\n OpenInvoiceStateData,\n OpenInvoiceStateError,\n OpenInvoiceStateValid\n} from './types';\nimport './OpenInvoice.scss';\nimport IbanInput from '../IbanInput';\nimport { GenericError } from '../../../core/Errors/types';\nimport Field from '../FormFields/Field';\nimport FormInstruction from '../FormInstruction';\nimport { ComponentMethodsRef } from '../UIElement/types';\nimport useSRPanelForOpenInvoiceErrors from './useSRPanelForOpenInvoiceErrors';\nimport classNames from 'classnames';\n\nconst consentCBErrorObj: GenericError = {\n isValid: false,\n errorMessage: 'consent.checkbox.invalid',\n error: 'consent.checkbox.invalid'\n};\n\nexport default function OpenInvoice(props: Readonly<OpenInvoiceProps>) {\n const { countryCode, visibility } = props;\n const { i18n } = useCoreContext();\n\n /** An object by which to expose 'public' members to the parent UIElement */\n const openInvoiceRef = useRef<ComponentMethodsRef>({});\n // Just call once\n if (!Object.keys(openInvoiceRef.current).length) {\n props.setComponentRef?.(openInvoiceRef.current);\n }\n\n const isValidating = useRef(false);\n\n const initialActiveFieldsets: OpenInvoiceActiveFieldsets = getInitialActiveFieldsets(visibility, props.data);\n const [activeFieldsets, setActiveFieldsets] = useState<OpenInvoiceActiveFieldsets>(initialActiveFieldsets);\n\n const { current: fieldsetsRefs } = useRef<OpenInvoiceFieldsetsRefs>(\n fieldsetsSchema.reduce((acc, fieldset) => {\n acc[fieldset] = ref => {\n fieldsetsRefs[fieldset].current = ref;\n };\n return acc;\n }, {})\n );\n\n const checkFieldsets = () => Object.keys(activeFieldsets).every(fieldset => !activeFieldsets[fieldset] || !!valid[fieldset]);\n const hasConsentCheckbox = !!props.consentCheckboxLabel;\n const isStandAloneButton = !hasConsentCheckbox && Object.keys(activeFieldsets).every(key => !activeFieldsets[key]);\n const showSeparateDeliveryAddressCheckbox = visibility.deliveryAddress === 'editable' && visibility.billingAddress !== 'hidden';\n\n const [data, setData] = useState<OpenInvoiceStateData>({\n ...props.data,\n ...(hasConsentCheckbox && { consentCheckbox: false })\n });\n const [errors, setErrors] = useState<OpenInvoiceStateError>({});\n const [valid, setValid] = useState<OpenInvoiceStateValid>({});\n const [status, setStatus] = useState('ready');\n\n // Expose methods expected by parent\n openInvoiceRef.current.showValidation = () => {\n isValidating.current = true;\n fieldsetsSchema.forEach(fieldset => {\n if (fieldsetsRefs[fieldset].current) fieldsetsRefs[fieldset].current.showValidation();\n });\n\n setErrors({\n ...(hasConsentCheckbox && { consentCheckbox: data.consentCheckbox ? null : consentCBErrorObj })\n });\n };\n\n openInvoiceRef.current.setStatus = setStatus;\n\n useSRPanelForOpenInvoiceErrors({ errors, data, props, isValidating });\n\n useEffect(() => {\n const fieldsetsAreValid: boolean = checkFieldsets();\n const consentCheckboxValid: boolean = !hasConsentCheckbox || !!valid.consentCheckbox;\n const isValid: boolean = fieldsetsAreValid && consentCheckboxValid;\n const newData: OpenInvoiceStateData = getActiveFieldsData(activeFieldsets, data);\n props.onChange({ data: newData, errors, valid, isValid });\n }, [data, activeFieldsets]);\n\n const handleFieldset = key => state => {\n setData(prevData => ({ ...prevData, [key]: state.data }));\n setValid(prevValid => ({ ...prevValid, [key]: state.isValid }));\n setErrors(prevErrors => ({ ...prevErrors, [key]: state.errors }));\n };\n\n const handleSeparateDeliveryAddress = () => {\n setActiveFieldsets(prevActiveFields => ({\n ...prevActiveFields,\n deliveryAddress: !activeFieldsets.deliveryAddress\n }));\n };\n\n const handleConsentCheckbox = e => {\n const { checked } = e.target;\n setData(prevData => ({ ...prevData, consentCheckbox: checked }));\n setValid(prevValid => ({ ...prevValid, consentCheckbox: checked }));\n setErrors(prevErrors => ({ ...prevErrors, ...{ consentCheckbox: !checked ? consentCBErrorObj : null } }));\n };\n return (\n <div\n className={classNames({\n 'adyen-checkout__open-invoice': true,\n 'adyen-checkout__open-invoice--loading': status === 'loading'\n })}\n >\n <FormInstruction />\n\n {activeFieldsets.companyDetails && (\n <CompanyDetails\n data={props.data.companyDetails}\n label=\"companyDetails\"\n onChange={handleFieldset('companyDetails')}\n setComponentRef={fieldsetsRefs.companyDetails}\n visibility={visibility.companyDetails}\n />\n )}\n\n {activeFieldsets.personalDetails && (\n <PersonalDetails\n data={props.data.personalDetails}\n requiredFields={props.personalDetailsRequiredFields}\n label=\"personalDetails\"\n onChange={handleFieldset('personalDetails')}\n setComponentRef={fieldsetsRefs.personalDetails}\n visibility={visibility.personalDetails}\n />\n )}\n\n {activeFieldsets.bankAccount && (\n <IbanInput\n holderName={true}\n label=\"ach.bankAccount\"\n data={data.bankAccount}\n onChange={handleFieldset('bankAccount')}\n ref={fieldsetsRefs.bankAccount}\n />\n )}\n\n {activeFieldsets.billingAddress && (\n <Address\n allowedCountries={props?.billingAddressSpecification?.allowedCountries ?? props.allowedCountries}\n countryCode={countryCode}\n requiredFields={props.billingAddressRequiredFields}\n specifications={props.billingAddressSpecification}\n data={data.billingAddress}\n label=\"billingAddress\"\n onChange={handleFieldset('billingAddress')}\n setComponentRef={fieldsetsRefs.billingAddress}\n visibility={visibility.billingAddress}\n />\n )}\n\n {showSeparateDeliveryAddressCheckbox && (\n <Field\n classNameModifiers={['separateDeliveryAddress', 'consentCheckbox']}\n name={'separateDeliveryAddress'}\n useLabelElement={false}\n showErrorElement={false}\n >\n <Checkbox\n label={i18n.get('separateDeliveryAddress')}\n checked={activeFieldsets.deliveryAddress}\n classNameModifiers={['separateDeliveryAddress']}\n name={'separateDeliveryAddress'}\n onChange={handleSeparateDeliveryAddress}\n />\n </Field>\n )}\n\n {activeFieldsets.deliveryAddress && (\n <Address\n allowedCountries={props?.deliveryAddressSpecification?.allowedCountries ?? props.allowedCountries}\n countryCode={countryCode}\n requiredFields={props.deliveryAddressRequiredFields}\n specifications={props.deliveryAddressSpecification}\n data={data.deliveryAddress}\n label=\"deliveryAddress\"\n onChange={handleFieldset('deliveryAddress')}\n setComponentRef={fieldsetsRefs.deliveryAddress}\n visibility={visibility.deliveryAddress}\n />\n )}\n\n {hasConsentCheckbox && (\n <ConsentCheckbox\n data={data}\n errorMessage={!!errors.consentCheckbox}\n label={props.consentCheckboxLabel}\n onChange={handleConsentCheckbox}\n i18n={i18n}\n />\n )}\n\n {props.showPayButton &&\n props.payButton({\n status,\n classNameModifiers: [...(isStandAloneButton ? ['standalone'] : [])],\n label: i18n.get('confirmPurchase')\n })}\n </div>\n );\n}\n"],"names":["consentCBErrorObj","isValid","errorMessage","error","OpenInvoice","props","countryCode","visibility","i18n","useCoreContext","openInvoiceRef","useRef","Object","keys","current","length","setComponentRef","isValidating","initialActiveFieldsets","getInitialActiveFieldsets","data","activeFieldsets","setActiveFieldsets","useState","fieldsetsRefs","fieldsetsSchema","reduce","acc","fieldset","ref","hasConsentCheckbox","consentCheckboxLabel","isStandAloneButton","every","key","showSeparateDeliveryAddressCheckbox","deliveryAddress","billingAddress","setData","consentCheckbox","errors","setErrors","valid","setValid","status","setStatus","showValidation","forEach","useSRPanelForOpenInvoiceErrors","useEffect","fieldsetsAreValid","consentCheckboxValid","newData","getActiveFieldsData","onChange","handleFieldset","state","prevData","prevValid","prevErrors","h","div","className","classNames","FormInstruction","companyDetails","CompanyDetails","label","personalDetails","PersonalDetails","requiredFields","personalDetailsRequiredFields","bankAccount","IbanInput","holderName","Address","allowedCountries","billingAddressSpecification","billingAddressRequiredFields","specifications","Field","classNameModifiers","name","useLabelElement","showErrorElement","Checkbox","get","checked","prevActiveFields","deliveryAddressSpecification","deliveryAddressRequiredFields","ConsentCheckbox","e","target","showPayButton","payButton"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"PayButton.js","sources":["../../../../../src/components/internal/PayButton/PayButton.tsx"],"sourcesContent":["import { h } from 'preact';\nimport Button from '../Button';\nimport { useCoreContext } from '../../../core/Context/CoreProvider';\nimport { ButtonProps } from '../Button/types';\nimport { createButtonLabel, createSecondaryLabel } from './utils';\nimport SecondaryButtonLabel from './components/SecondaryButtonLabel';\nimport { useAmount, useSecondaryAmount } from '../../../core/Context/AmountProvider';\nimport type { PaymentAmount } from '../../../types';\nimport { isAmountValid } from '../../../utils/amount-util';\n\nexport interface PayButtonProps extends ButtonProps {\n /**\n * Class name modifiers will be used as: `adyen-checkout__image--${modifier}`\n */\n classNameModifiers?: string[];\n /**\n * Custom amount that can be passed to the button.\n * This is useful when the amount is not available in the amount provider, such as Giftcard scenario where\n * we need to display the remaining amount\n */\n customAmount?: PaymentAmount;\n label?: string;\n status?: string;\n disabled?: boolean;\n icon?: string;\n onClick?: (e: h.JSX.TargetedMouseEvent<HTMLButtonElement>) => void;\n}\n\nconst PayButton = ({ customAmount, classNameModifiers = [], label, ...props }: PayButtonProps) => {\n const { amount, isZeroAuth } = useAmount();\n const { secondaryAmount } = useSecondaryAmount();\n const { i18n } = useCoreContext();\n\n const buttonLabel = createButtonLabel(i18n, label, amount, isZeroAuth, customAmount);\n const secondaryAmountLabel = createSecondaryLabel(i18n, secondaryAmount, isAmountValid(amount), isZeroAuth, label);\n\n const isDisabled = props.disabled || props.status === 'loading';\n\n return (\n <Button {...props} disabled={isDisabled} classNameModifiers={[...classNameModifiers, 'pay']} label={buttonLabel}>\n {secondaryAmountLabel && <SecondaryButtonLabel label={secondaryAmountLabel} />}\n </Button>\n );\n};\n\nexport default PayButton;\n"],"names":["PayButton","customAmount","classNameModifiers","label","props","amount","isZeroAuth","useAmount","secondaryAmount","useSecondaryAmount","i18n","useCoreContext","buttonLabel","createButtonLabel","secondaryAmountLabel","createSecondaryLabel","isAmountValid","isDisabled","disabled","status","h","Button","SecondaryButtonLabel"],"mappings":"ycA4BA,MAAMA,EAAY,EAAGC,eAAcC,qBAAqB,GAAIC,WAAUC,MAClE,MAAMC,OAAEA,EAAMC,WAAEA,GAAeC,KACzBC,gBAAEA,GAAoBC,KACtBC,KAAEA,GAASC,IAEXC,EAAcC,EAAkBH,EAAMP,EAAOE,EAAQC,EAAYL,GACjEa,EAAuBC,EAAqBL,EAAMF,EAAiBQ,EAAcX,GAASC,EAAYH,GAEtGc,EAAab,EAAMc,UAA6B,YAAjBd,EAAMe,OAE3C,OACIC,EAACC,EAAAA,IAAWjB,EAAOc,SAAUD,EAAYf,mBAAoB,IAAIA,EAAoB,OAAQC,MAAOS,GAC/FE,GAAwBM,EAACE,EAAAA,CAAqBnB,MAAOW"}
1
+ {"version":3,"file":"PayButton.js","sources":["../../../../../src/components/internal/PayButton/PayButton.tsx"],"sourcesContent":["import { h } from 'preact';\nimport Button from '../Button';\nimport { useCoreContext } from '../../../core/Context/CoreProvider';\nimport { ButtonProps } from '../Button/types';\nimport { createButtonLabel, createSecondaryLabel } from './utils';\nimport SecondaryButtonLabel from './components/SecondaryButtonLabel';\nimport { useAmount, useSecondaryAmount } from '../../../core/Context/AmountProvider';\nimport type { PaymentAmount } from '../../../types';\nimport { isAmountValid } from '../../../utils/amount-util';\n\nexport interface PayButtonProps extends ButtonProps {\n /**\n * Class name modifiers will be used as: `adyen-checkout__image--${modifier}`\n */\n classNameModifiers?: string[];\n /**\n * Custom amount that can be passed to the button.\n * This is useful when the amount is not available in the amount provider, such as Giftcard scenario where\n * we need to display the remaining amount\n */\n customAmount?: PaymentAmount;\n label?: string;\n status?: string;\n disabled?: boolean;\n icon?: string;\n onClick?: (e: h.JSX.TargetedMouseEvent<HTMLButtonElement>) => void;\n}\n\nconst PayButton = ({ customAmount, classNameModifiers = [], label, ...props }: Readonly<PayButtonProps>) => {\n const { amount, isZeroAuth } = useAmount();\n const { secondaryAmount } = useSecondaryAmount();\n const { i18n } = useCoreContext();\n\n const buttonLabel = createButtonLabel(i18n, label, amount, isZeroAuth, customAmount);\n const secondaryAmountLabel = createSecondaryLabel(i18n, secondaryAmount, isAmountValid(amount), isZeroAuth, label);\n\n const isDisabled = props.disabled || props.status === 'loading';\n\n return (\n <Button {...props} disabled={isDisabled} classNameModifiers={[...classNameModifiers, 'pay']} label={buttonLabel}>\n {secondaryAmountLabel && <SecondaryButtonLabel label={secondaryAmountLabel} />}\n </Button>\n );\n};\n\nexport default PayButton;\n"],"names":["PayButton","customAmount","classNameModifiers","label","props","amount","isZeroAuth","useAmount","secondaryAmount","useSecondaryAmount","i18n","useCoreContext","buttonLabel","createButtonLabel","secondaryAmountLabel","createSecondaryLabel","isAmountValid","isDisabled","disabled","status","h","Button","SecondaryButtonLabel"],"mappings":"ycA4BA,MAAMA,EAAY,EAAGC,eAAcC,qBAAqB,GAAIC,WAAUC,MAClE,MAAMC,OAAEA,EAAMC,WAAEA,GAAeC,KACzBC,gBAAEA,GAAoBC,KACtBC,KAAEA,GAASC,IAEXC,EAAcC,EAAkBH,EAAMP,EAAOE,EAAQC,EAAYL,GACjEa,EAAuBC,EAAqBL,EAAMF,EAAiBQ,EAAcX,GAASC,EAAYH,GAEtGc,EAAab,EAAMc,UAA6B,YAAjBd,EAAMe,OAE3C,OACIC,EAACC,EAAAA,IAAWjB,EAAOc,SAAUD,EAAYf,mBAAoB,IAAIA,EAAoB,OAAQC,MAAOS,GAC/FE,GAAwBM,EAACE,EAAAA,CAAqBnB,MAAOW"}
@@ -1 +1 @@
1
- {"version":3,"file":"PhoneInputFields.js","sources":["../../../../../src/components/internal/PhoneInput/PhoneInputFields.tsx"],"sourcesContent":["import { Fragment, h } from 'preact';\nimport { useEffect } from 'preact/hooks';\nimport Field from '../FormFields/Field';\nimport { useCoreContext } from '../../../core/Context/CoreProvider';\nimport './PhoneInput.scss';\nimport Select from '../FormFields/Select';\nimport { PhoneInputSchema } from './types';\nimport InputText from '../FormFields/InputText';\nimport { DataSet } from '../../../core/Services/data-set';\nimport { Form } from '../../../utils/useForm/types';\n\nexport interface PhoneInputFieldProps {\n items: DataSet;\n requiredFields?: string[];\n form: Form<PhoneInputSchema>;\n getError: (key: string) => string | boolean;\n phoneNumberKey?: string;\n phonePrefixErrorKey?: string;\n phoneNumberErrorKey?: string;\n placeholders?: PhoneInputSchema;\n showPrefix?: boolean;\n showNumber?: boolean;\n canSelectPrefix?: boolean;\n}\n/**\n *\n * @param PhoneInputFormProps\n * @constructor\n */\nexport default function PhoneInputFields({ getError, showNumber, showPrefix, form, canSelectPrefix = true, ...props }: PhoneInputFieldProps) {\n const { i18n } = useCoreContext();\n\n const { handleChangeFor, data, valid } = form;\n\n // Force re-validation of the phoneNumber when data.phonePrefix changes (since the validation rules will also change)\n useEffect((): void => {\n if (data.phoneNumber) {\n handleChangeFor('phoneNumber', 'blur')(data.phoneNumber);\n }\n }, [data.phonePrefix]);\n\n return (\n <Fragment>\n {showPrefix && (\n <Field\n className={'adyen-checkout-field--phone-prefix'}\n label={i18n.get('telephonePrefix')}\n errorMessage={getError('phonePrefix')}\n showValidIcon={false}\n isValid={valid.phonePrefix}\n dir={'ltr'}\n i18n={i18n}\n name={'phonePrefix'}\n >\n <Select\n readonly={!canSelectPrefix}\n className={'adyen-checkout-dropdown adyen-checkout-dropdown--countrycode-selector'}\n name={'phonePrefix'}\n items={props.items}\n onChange={handleChangeFor('phonePrefix')}\n placeholder={props?.placeholders?.phonePrefix}\n selectedValue={data.phonePrefix}\n />\n </Field>\n )}\n\n {showNumber && (\n <Field\n className={'adyen-checkout-field--phone-number'}\n label={props.phoneNumberKey ? i18n.get(props.phoneNumberKey) : i18n.get('telephoneNumber')}\n errorMessage={getError('phoneNumber')}\n isValid={valid.phoneNumber}\n filled={data?.phoneNumber?.length > 0}\n dir={'ltr'}\n i18n={i18n}\n name={'phoneNumber'}\n >\n <InputText\n className=\"adyen-checkout__input adyen-checkout-input adyen-checkout-input--phone-number\"\n type=\"tel\"\n name=\"phoneNumber\"\n value={data.phoneNumber}\n onInput={handleChangeFor('phoneNumber', 'input')}\n onBlur={handleChangeFor('phoneNumber', 'blur')}\n placeholder={props?.placeholders?.phoneNumber}\n autoCorrect=\"off\"\n required={true}\n />\n </Field>\n )}\n </Fragment>\n );\n}\n"],"names":["PhoneInputFields","getError","showNumber","showPrefix","form","canSelectPrefix","props","i18n","useCoreContext","handleChangeFor","data","valid","useEffect","phoneNumber","phonePrefix","h","Fragment","Field","className","label","get","errorMessage","showValidIcon","isValid","dir","name","Select","readonly","items","onChange","placeholder","placeholders","selectedValue","phoneNumberKey","filled","length","InputText","type","value","onInput","onBlur","autoCorrect","required"],"mappings":"0WA6Be,SAASA,GAAiBC,SAAEA,EAAQC,WAAEA,EAAUC,WAAEA,EAAUC,KAAEA,EAAIC,gBAAEA,GAAkB,KAASC,IAC1G,MAAMC,KAAEA,GAASC,KAEXC,gBAAEA,EAAeC,KAAEA,EAAIC,MAAEA,GAAUP,EASzC,OANAQ,EAAU,KACFF,EAAKG,aACLJ,EAAgB,cAAe,OAA/BA,CAAuCC,EAAKG,cAEjD,CAACH,EAAKI,cAGLC,EAACC,EAAAA,KACIb,GACGY,EAACE,EAAAA,CACGC,UAAW,qCACXC,MAAOZ,EAAKa,IAAI,mBAChBC,aAAcpB,EAAS,eACvBqB,eAAe,EACfC,QAASZ,EAAMG,YACfU,IAAK,MACLjB,KAAMA,EACNkB,KAAM,eAENV,EAACW,EAAAA,CACGC,UAAWtB,EACXa,UAAW,wEACXO,KAAM,cACNG,MAAOtB,EAAMsB,MACbC,SAAUpB,EAAgB,eAC1BqB,YAAaxB,GAAOyB,cAAcjB,YAClCkB,cAAetB,EAAKI,eAK/BZ,GACGa,EAACE,EAAAA,CACGC,UAAW,qCACXC,MAAOb,EAAM2B,eAAiB1B,EAAKa,IAAId,EAAM2B,gBAAkB1B,EAAKa,IAAI,mBACxEC,aAAcpB,EAAS,eACvBsB,QAASZ,EAAME,YACfqB,OAAQxB,GAAMG,aAAasB,OAAS,EACpCX,IAAK,MACLjB,KAAMA,EACNkB,KAAM,eAENV,EAACqB,EAAAA,CACGlB,UAAU,gFACVmB,KAAK,MACLZ,KAAK,cACLa,MAAO5B,EAAKG,YACZ0B,QAAS9B,EAAgB,cAAe,SACxC+B,OAAQ/B,EAAgB,cAAe,QACvCqB,YAAaxB,GAAOyB,cAAclB,YAClC4B,YAAY,MACZC,UAAU,KAMlC"}
1
+ {"version":3,"file":"PhoneInputFields.js","sources":["../../../../../src/components/internal/PhoneInput/PhoneInputFields.tsx"],"sourcesContent":["import { Fragment, h } from 'preact';\nimport { useEffect } from 'preact/hooks';\nimport Field from '../FormFields/Field';\nimport { useCoreContext } from '../../../core/Context/CoreProvider';\nimport './PhoneInput.scss';\nimport Select from '../FormFields/Select';\nimport { PhoneInputSchema } from './types';\nimport InputText from '../FormFields/InputText';\nimport { DataSet } from '../../../core/Services/data-set';\nimport { Form } from '../../../utils/useForm/types';\n\nexport interface PhoneInputFieldProps {\n items: DataSet;\n requiredFields?: string[];\n form: Form<PhoneInputSchema>;\n getError: (key: string) => string | boolean;\n phoneNumberKey?: string;\n phonePrefixErrorKey?: string;\n phoneNumberErrorKey?: string;\n placeholders?: PhoneInputSchema;\n showPrefix?: boolean;\n showNumber?: boolean;\n canSelectPrefix?: boolean;\n}\n/**\n *\n * @param PhoneInputFormProps\n * @constructor\n */\nexport default function PhoneInputFields({\n getError,\n showNumber,\n showPrefix,\n form,\n canSelectPrefix = true,\n ...props\n}: Readonly<PhoneInputFieldProps>) {\n const { i18n } = useCoreContext();\n\n const { handleChangeFor, data, valid } = form;\n\n // Force re-validation of the phoneNumber when data.phonePrefix changes (since the validation rules will also change)\n useEffect((): void => {\n if (data.phoneNumber) {\n handleChangeFor('phoneNumber', 'blur')(data.phoneNumber);\n }\n }, [data.phonePrefix]);\n\n return (\n <Fragment>\n {showPrefix && (\n <Field\n className={'adyen-checkout-field--phone-prefix'}\n label={i18n.get('telephonePrefix')}\n errorMessage={getError('phonePrefix')}\n showValidIcon={false}\n isValid={valid.phonePrefix}\n dir={'ltr'}\n i18n={i18n}\n name={'phonePrefix'}\n >\n <Select\n readonly={!canSelectPrefix}\n className={'adyen-checkout-dropdown adyen-checkout-dropdown--countrycode-selector'}\n name={'phonePrefix'}\n items={props.items}\n onChange={handleChangeFor('phonePrefix')}\n placeholder={props?.placeholders?.phonePrefix}\n selectedValue={data.phonePrefix}\n />\n </Field>\n )}\n\n {showNumber && (\n <Field\n className={'adyen-checkout-field--phone-number'}\n label={props.phoneNumberKey ? i18n.get(props.phoneNumberKey) : i18n.get('telephoneNumber')}\n errorMessage={getError('phoneNumber')}\n isValid={valid.phoneNumber}\n filled={data?.phoneNumber?.length > 0}\n dir={'ltr'}\n i18n={i18n}\n name={'phoneNumber'}\n >\n <InputText\n className=\"adyen-checkout__input adyen-checkout-input adyen-checkout-input--phone-number\"\n type=\"tel\"\n name=\"phoneNumber\"\n value={data.phoneNumber}\n onInput={handleChangeFor('phoneNumber', 'input')}\n onBlur={handleChangeFor('phoneNumber', 'blur')}\n placeholder={props?.placeholders?.phoneNumber}\n autoCorrect=\"off\"\n required={true}\n />\n </Field>\n )}\n </Fragment>\n );\n}\n"],"names":["PhoneInputFields","getError","showNumber","showPrefix","form","canSelectPrefix","props","i18n","useCoreContext","handleChangeFor","data","valid","useEffect","phoneNumber","phonePrefix","h","Fragment","Field","className","label","get","errorMessage","showValidIcon","isValid","dir","name","Select","readonly","items","onChange","placeholder","placeholders","selectedValue","phoneNumberKey","filled","length","InputText","type","value","onInput","onBlur","autoCorrect","required"],"mappings":"0WA6Be,SAASA,GAAiBC,SACrCA,EAAQC,WACRA,EAAUC,WACVA,EAAUC,KACVA,EAAIC,gBACJA,GAAkB,KACfC,IAEH,MAAMC,KAAEA,GAASC,KAEXC,gBAAEA,EAAeC,KAAEA,EAAIC,MAAEA,GAAUP,EASzC,OANAQ,EAAU,KACFF,EAAKG,aACLJ,EAAgB,cAAe,OAA/BA,CAAuCC,EAAKG,cAEjD,CAACH,EAAKI,cAGLC,EAACC,EAAAA,KACIb,GACGY,EAACE,EAAAA,CACGC,UAAW,qCACXC,MAAOZ,EAAKa,IAAI,mBAChBC,aAAcpB,EAAS,eACvBqB,eAAe,EACfC,QAASZ,EAAMG,YACfU,IAAK,MACLjB,KAAMA,EACNkB,KAAM,eAENV,EAACW,EAAAA,CACGC,UAAWtB,EACXa,UAAW,wEACXO,KAAM,cACNG,MAAOtB,EAAMsB,MACbC,SAAUpB,EAAgB,eAC1BqB,YAAaxB,GAAOyB,cAAcjB,YAClCkB,cAAetB,EAAKI,eAK/BZ,GACGa,EAACE,EAAAA,CACGC,UAAW,qCACXC,MAAOb,EAAM2B,eAAiB1B,EAAKa,IAAId,EAAM2B,gBAAkB1B,EAAKa,IAAI,mBACxEC,aAAcpB,EAAS,eACvBsB,QAASZ,EAAME,YACfqB,OAAQxB,GAAMG,aAAasB,OAAS,EACpCX,IAAK,MACLjB,KAAMA,EACNkB,KAAM,eAENV,EAACqB,EAAAA,CACGlB,UAAU,gFACVmB,KAAK,MACLZ,KAAK,cACLa,MAAO5B,EAAKG,YACZ0B,QAAS9B,EAAgB,cAAe,SACxC+B,OAAQ/B,EAAgB,cAAe,QACvCqB,YAAaxB,GAAOyB,cAAclB,YAClC4B,YAAY,MACZC,UAAU,KAMlC"}
@@ -1 +1 @@
1
- {"version":3,"file":"PhoneInputForm.js","sources":["../../../../../src/components/internal/PhoneInput/PhoneInputForm.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { useEffect, useCallback, useRef } from 'preact/hooks';\nimport useForm from '../../../utils/useForm';\nimport { useCoreContext } from '../../../core/Context/CoreProvider';\nimport './PhoneInput.scss';\nimport { phoneFormatters, phoneValidationRules } from './validate';\nimport { PhoneInputFormProps, PhoneInputSchema } from './types';\nimport Fieldset from '../FormFields/Fieldset';\nimport PhoneInputFields from './PhoneInputFields';\nimport { ComponentMethodsRef } from '../UIElement/types';\n\n/**\n *\n * @param PhoneInputFormProps\n * @constructor\n */\nfunction PhoneInputForm(props: PhoneInputFormProps) {\n const { i18n } = useCoreContext();\n\n const schema = props.requiredFields || [...(props?.items?.length ? ['phonePrefix'] : []), 'phoneNumber'];\n const showPrefix = schema.includes('phonePrefix') && !!props?.items?.length;\n const showNumber = schema.includes('phoneNumber');\n\n const form = useForm<PhoneInputSchema>({\n i18n,\n ...props,\n schema,\n defaultData: props.data,\n rules: phoneValidationRules,\n formatters: phoneFormatters\n });\n\n useEffect(() => {\n form.setSchema(schema);\n }, [schema.toString()]);\n\n const { data, valid, errors, isValid, triggerValidation } = form;\n\n useEffect(() => {\n props.onChange({ data, valid, errors, isValid });\n }, [data, valid, errors, isValid]);\n\n const componentRef = useRef<ComponentMethodsRef>({\n showValidation: triggerValidation\n });\n\n useEffect(() => {\n props.setComponentRef(componentRef.current);\n }, [props.setComponentRef]);\n\n // This is here for MBWay, prob should be moved up\n // MBWay has a weird way of loading its error messages\n // They come form the prop phoneNumberErrorKey: 'mobileNumber.invalid'\n // Strangely it's defined as invalidPhoneNumber in the validation rules\n const getPhoneFieldError = useCallback(\n (field: string) => {\n if (errors[field]) {\n const propsField = field === 'phoneNumber' ? 'phoneNumberErrorKey' : 'phonePrefixErrorKey';\n const key = props[propsField] ? props[propsField] : errors[field].errorMessage;\n return i18n.get(key) ?? null;\n }\n return null;\n },\n [errors]\n );\n\n return (\n <Fieldset classNameModifiers={['phone-input']}>\n <PhoneInputFields getError={getPhoneFieldError} showNumber={showNumber} showPrefix={showPrefix} form={form} {...props} />\n </Fieldset>\n );\n}\n\nPhoneInputForm.defaultProps = {\n phoneLabel: 'telephoneNumber'\n};\n\nexport default PhoneInputForm;\n"],"names":["PhoneInputForm","props","i18n","useCoreContext","schema","requiredFields","items","length","showPrefix","includes","showNumber","form","useForm","defaultData","data","rules","phoneValidationRules","formatters","phoneFormatters","useEffect","setSchema","toString","valid","errors","isValid","triggerValidation","onChange","componentRef","useRef","showValidation","setComponentRef","current","getPhoneFieldError","useCallback","field","propsField","key","errorMessage","get","h","Fieldset","classNameModifiers","PhoneInputFields","getError","defaultProps","phoneLabel"],"mappings":"ucAgBA,SAASA,EAAeC,GACpB,MAAMC,KAAEA,GAASC,IAEXC,EAASH,EAAMI,gBAAkB,IAAKJ,GAAOK,OAAOC,OAAS,CAAC,eAAiB,GAAK,eACpFC,EAAaJ,EAAOK,SAAS,kBAAoBR,GAAOK,OAAOC,OAC/DG,EAAaN,EAAOK,SAAS,eAE7BE,EAAOC,EAA0B,IAEhCX,EACHG,SACAS,YAAaZ,EAAMa,KACnBC,MAAOC,EACPC,WAAYC,IAGhBC,EAAU,KACNR,EAAKS,UAAUhB,IAChB,CAACA,EAAOiB,aAEX,MAAMP,KAAEA,EAAIQ,MAAEA,EAAKC,OAAEA,EAAMC,QAAEA,EAAOC,kBAAEA,GAAsBd,EAE5DQ,EAAU,KACNlB,EAAMyB,SAAS,CAAEZ,OAAMQ,QAAOC,SAAQC,aACvC,CAACV,EAAMQ,EAAOC,EAAQC,IAEzB,MAAMG,EAAeC,EAA4B,CAC7CC,eAAgBJ,IAGpBN,EAAU,KACNlB,EAAM6B,gBAAgBH,EAAaI,UACpC,CAAC9B,EAAM6B,kBAMV,MAAME,EAAqBC,EACtBC,IACG,GAAIX,EAAOW,GAAQ,CACf,MAAMC,EAAuB,gBAAVD,EAA0B,sBAAwB,sBAC/DE,EAAMnC,EAAMkC,GAAclC,EAAMkC,GAAcZ,EAAOW,GAAOG,aAClE,OAAOnC,EAAKoC,IAAIF,IAAQ,IAC5B,CACA,OAAO,MAEX,CAACb,IAGL,OACIgB,EAACC,EAAAA,CAASC,mBAAoB,CAAC,gBAC3BF,EAACG,EAAAA,CAAiBC,SAAUX,EAAoBtB,WAAYA,EAAYF,WAAYA,EAAYG,KAAMA,KAAUV,IAG5H,CAEAD,EAAe4C,aAAe,CAC1BC,WAAY"}
1
+ {"version":3,"file":"PhoneInputForm.js","sources":["../../../../../src/components/internal/PhoneInput/PhoneInputForm.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { useEffect, useCallback, useRef } from 'preact/hooks';\nimport useForm from '../../../utils/useForm';\nimport { useCoreContext } from '../../../core/Context/CoreProvider';\nimport './PhoneInput.scss';\nimport { phoneFormatters, phoneValidationRules } from './validate';\nimport { PhoneInputFormProps, PhoneInputSchema } from './types';\nimport Fieldset from '../FormFields/Fieldset';\nimport PhoneInputFields from './PhoneInputFields';\nimport { ComponentMethodsRef } from '../UIElement/types';\n\n/**\n *\n * @param PhoneInputFormProps\n * @constructor\n */\nfunction PhoneInputForm(props: Readonly<PhoneInputFormProps>) {\n const { i18n } = useCoreContext();\n\n const schema = props.requiredFields || [...(props?.items?.length ? ['phonePrefix'] : []), 'phoneNumber'];\n const showPrefix = schema.includes('phonePrefix') && !!props?.items?.length;\n const showNumber = schema.includes('phoneNumber');\n\n const form = useForm<PhoneInputSchema>({\n i18n,\n ...props,\n schema,\n defaultData: props.data,\n rules: phoneValidationRules,\n formatters: phoneFormatters\n });\n\n useEffect(() => {\n form.setSchema(schema);\n }, [schema.toString()]);\n\n const { data, valid, errors, isValid, triggerValidation } = form;\n\n useEffect(() => {\n props.onChange({ data, valid, errors, isValid });\n }, [data, valid, errors, isValid]);\n\n const componentRef = useRef<ComponentMethodsRef>({\n showValidation: triggerValidation\n });\n\n useEffect(() => {\n props.setComponentRef(componentRef.current);\n }, [props.setComponentRef]);\n\n // This is here for MBWay, prob should be moved up\n // MBWay has a weird way of loading its error messages\n // They come form the prop phoneNumberErrorKey: 'mobileNumber.invalid'\n // Strangely it's defined as invalidPhoneNumber in the validation rules\n const getPhoneFieldError = useCallback(\n (field: string) => {\n if (errors[field]) {\n const propsField = field === 'phoneNumber' ? 'phoneNumberErrorKey' : 'phonePrefixErrorKey';\n const key = props[propsField] ? props[propsField] : errors[field].errorMessage;\n return i18n.get(key) ?? null;\n }\n return null;\n },\n [errors]\n );\n\n return (\n <Fieldset classNameModifiers={['phone-input']}>\n <PhoneInputFields getError={getPhoneFieldError} showNumber={showNumber} showPrefix={showPrefix} form={form} {...props} />\n </Fieldset>\n );\n}\n\nPhoneInputForm.defaultProps = {\n phoneLabel: 'telephoneNumber'\n};\n\nexport default PhoneInputForm;\n"],"names":["PhoneInputForm","props","i18n","useCoreContext","schema","requiredFields","items","length","showPrefix","includes","showNumber","form","useForm","defaultData","data","rules","phoneValidationRules","formatters","phoneFormatters","useEffect","setSchema","toString","valid","errors","isValid","triggerValidation","onChange","componentRef","useRef","showValidation","setComponentRef","current","getPhoneFieldError","useCallback","field","propsField","key","errorMessage","get","h","Fieldset","classNameModifiers","PhoneInputFields","getError","defaultProps","phoneLabel"],"mappings":"ucAgBA,SAASA,EAAeC,GACpB,MAAMC,KAAEA,GAASC,IAEXC,EAASH,EAAMI,gBAAkB,IAAKJ,GAAOK,OAAOC,OAAS,CAAC,eAAiB,GAAK,eACpFC,EAAaJ,EAAOK,SAAS,kBAAoBR,GAAOK,OAAOC,OAC/DG,EAAaN,EAAOK,SAAS,eAE7BE,EAAOC,EAA0B,IAEhCX,EACHG,SACAS,YAAaZ,EAAMa,KACnBC,MAAOC,EACPC,WAAYC,IAGhBC,EAAU,KACNR,EAAKS,UAAUhB,IAChB,CAACA,EAAOiB,aAEX,MAAMP,KAAEA,EAAIQ,MAAEA,EAAKC,OAAEA,EAAMC,QAAEA,EAAOC,kBAAEA,GAAsBd,EAE5DQ,EAAU,KACNlB,EAAMyB,SAAS,CAAEZ,OAAMQ,QAAOC,SAAQC,aACvC,CAACV,EAAMQ,EAAOC,EAAQC,IAEzB,MAAMG,EAAeC,EAA4B,CAC7CC,eAAgBJ,IAGpBN,EAAU,KACNlB,EAAM6B,gBAAgBH,EAAaI,UACpC,CAAC9B,EAAM6B,kBAMV,MAAME,EAAqBC,EACtBC,IACG,GAAIX,EAAOW,GAAQ,CACf,MAAMC,EAAuB,gBAAVD,EAA0B,sBAAwB,sBAC/DE,EAAMnC,EAAMkC,GAAclC,EAAMkC,GAAcZ,EAAOW,GAAOG,aAClE,OAAOnC,EAAKoC,IAAIF,IAAQ,IAC5B,CACA,OAAO,MAEX,CAACb,IAGL,OACIgB,EAACC,EAAAA,CAASC,mBAAoB,CAAC,gBAC3BF,EAACG,EAAAA,CAAiBC,SAAUX,EAAoBtB,WAAYA,EAAYF,WAAYA,EAAYG,KAAMA,KAAUV,IAG5H,CAEAD,EAAe4C,aAAe,CAC1BC,WAAY"}
@@ -1 +1 @@
1
- {"version":3,"file":"QRLoaderDetailsProvider.js","sources":["../../../../../src/components/internal/QRLoader/QRLoaderDetailsProvider.tsx"],"sourcesContent":["import { h, createContext } from 'preact';\nimport type { ComponentChildren } from 'preact';\nimport { useContext } from 'preact/hooks';\nimport { CountdownTime } from '../Countdown/types';\n\ninterface QRLoaderDetailsProviderProps {\n type: string;\n qrCodeImage: string;\n qrCodeData: string;\n countdownTime: number;\n percentage: number;\n timeToPay: string;\n instructions?: string | (() => h.JSX.Element);\n copyBtn: boolean;\n onTick: (time: CountdownTime) => void;\n onQRCodeLoad: () => void;\n onTimeUp: () => void;\n handleCopy?: (e: h.JSX.TargetedMouseEvent<HTMLButtonElement>) => void;\n children: ComponentChildren;\n}\n\ntype QRLoaderDetailsContextValue = Omit<QRLoaderDetailsProviderProps, 'children'>;\n\nconst QRLoaderDetailsContext = createContext<QRLoaderDetailsContextValue | undefined>(undefined);\n\nconst QRLoaderDetailsProvider = ({ children, ...props }: QRLoaderDetailsProviderProps) => {\n return <QRLoaderDetailsContext.Provider value={{ ...props }}>{children}</QRLoaderDetailsContext.Provider>;\n};\n\nconst useQRLoaderDetails = (): QRLoaderDetailsContextValue => {\n const context = useContext(QRLoaderDetailsContext);\n\n if (context === undefined) {\n throw new Error('\"useQRLoaderDetails\" must be used within a QRLoaderDetailsContext');\n }\n\n return context;\n};\n\nexport { QRLoaderDetailsProvider, useQRLoaderDetails };\n"],"names":["QRLoaderDetailsContext","createContext","undefined","QRLoaderDetailsProvider","children","props","h","Provider","value","useQRLoaderDetails","context","useContext","Error"],"mappings":"qKAuBA,MAAMA,EAAyBC,OAAuDC,GAEhFC,EAA0B,EAAGC,cAAaC,KACrCC,EAACN,EAAuBO,SAAQ,CAACC,MAAO,IAAKH,IAAUD,GAG5DK,EAAqB,KACvB,MAAMC,EAAUC,EAAWX,GAE3B,QAAgBE,IAAZQ,EACA,MAAM,IAAIE,MAAM,qEAGpB,OAAOF"}
1
+ {"version":3,"file":"QRLoaderDetailsProvider.js","sources":["../../../../../src/components/internal/QRLoader/QRLoaderDetailsProvider.tsx"],"sourcesContent":["import { h, createContext } from 'preact';\nimport type { ComponentChildren } from 'preact';\nimport { useContext } from 'preact/hooks';\nimport { CountdownTime } from '../Countdown/types';\n\ninterface QRLoaderDetailsProviderProps {\n type: string;\n qrCodeImage: string;\n qrCodeData: string;\n countdownTime: number;\n percentage: number;\n timeToPay: string;\n instructions?: string | (() => h.JSX.Element);\n copyBtn: boolean;\n onTick: (time: CountdownTime) => void;\n onQRCodeLoad: () => void;\n onTimeUp: () => void;\n handleCopy?: (e: h.JSX.TargetedMouseEvent<HTMLButtonElement>) => void;\n children: ComponentChildren;\n}\n\ntype QRLoaderDetailsContextValue = Omit<QRLoaderDetailsProviderProps, 'children'>;\n\nconst QRLoaderDetailsContext = createContext<QRLoaderDetailsContextValue | undefined>(undefined);\n\nconst QRLoaderDetailsProvider = ({ children, ...props }: Readonly<QRLoaderDetailsProviderProps>) => {\n return <QRLoaderDetailsContext.Provider value={{ ...props }}>{children}</QRLoaderDetailsContext.Provider>;\n};\n\nconst useQRLoaderDetails = (): QRLoaderDetailsContextValue => {\n const context = useContext(QRLoaderDetailsContext);\n\n if (context === undefined) {\n throw new Error('\"useQRLoaderDetails\" must be used within a QRLoaderDetailsContext');\n }\n\n return context;\n};\n\nexport { QRLoaderDetailsProvider, useQRLoaderDetails };\n"],"names":["QRLoaderDetailsContext","createContext","undefined","QRLoaderDetailsProvider","children","props","h","Provider","value","useQRLoaderDetails","context","useContext","Error"],"mappings":"qKAuBA,MAAMA,EAAyBC,OAAuDC,GAEhFC,EAA0B,EAAGC,cAAaC,KACrCC,EAACN,EAAuBO,SAAQ,CAACC,MAAO,IAAKH,IAAUD,GAG5DK,EAAqB,KACvB,MAAMC,EAAUC,EAAWX,GAE3B,QAAgBE,IAAZQ,EACA,MAAM,IAAIE,MAAM,qEAGpB,OAAOF"}
@@ -1 +1 @@
1
- {"version":3,"file":"QRCodeCopyButton.js","sources":["../../../../../../src/components/internal/QRLoader/components/QRCodeCopyButton.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { CopyButton } from '../../Button/CopyButton';\n\ninterface QRCodeCopyButtonProps {\n text: string;\n copyLabel?: string;\n copiedLabel?: string;\n handleCopy?: (e: h.JSX.TargetedMouseEvent<HTMLButtonElement>) => void;\n}\n\nexport const QRCodeCopyButton = ({ text, copyLabel, copiedLabel, handleCopy }: QRCodeCopyButtonProps) => {\n return <CopyButton onClick={handleCopy} text={text} label={copyLabel} copiedLabel={copiedLabel} />;\n};\n"],"names":["QRCodeCopyButton","text","copyLabel","copiedLabel","handleCopy","h","CopyButton","onClick","label"],"mappings":"mIAUO,MAAMA,EAAmB,EAAGC,OAAMC,YAAWC,cAAaC,gBACtDC,EAACC,EAAAA,CAAWC,QAASH,EAAYH,KAAMA,EAAMO,MAAON,EAAWC,YAAaA"}
1
+ {"version":3,"file":"QRCodeCopyButton.js","sources":["../../../../../../src/components/internal/QRLoader/components/QRCodeCopyButton.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { CopyButton } from '../../Button/CopyButton';\n\ninterface QRCodeCopyButtonProps {\n text: string;\n copyLabel?: string;\n copiedLabel?: string;\n handleCopy?: (e: h.JSX.TargetedMouseEvent<HTMLButtonElement>) => void;\n}\n\nexport const QRCodeCopyButton = ({ text, copyLabel, copiedLabel, handleCopy }: Readonly<QRCodeCopyButtonProps>) => {\n return <CopyButton onClick={handleCopy} text={text} label={copyLabel} copiedLabel={copiedLabel} />;\n};\n"],"names":["QRCodeCopyButton","text","copyLabel","copiedLabel","handleCopy","h","CopyButton","onClick","label"],"mappings":"mIAUO,MAAMA,EAAmB,EAAGC,OAAMC,YAAWC,cAAaC,gBACtDC,EAACC,EAAAA,CAAWC,QAASH,EAAYH,KAAMA,EAAMO,MAAON,EAAWC,YAAaA"}
@@ -1 +1 @@
1
- {"version":3,"file":"QRCountdown.js","sources":["../../../../../../src/components/internal/QRLoader/components/QRCountdown.tsx"],"sourcesContent":["import { h } from 'preact';\nimport Countdown from '../../Countdown';\nimport { QRCountdownProps } from '../types';\nimport { useCoreContext } from '../../../../core/Context/CoreProvider';\n\nexport const QRCountdown = ({ countdownTime, timeToPay, onTick, onCompleted }: QRCountdownProps) => {\n const { i18n } = useCoreContext();\n\n const timeToPayString = i18n.get(timeToPay).split('%@');\n\n return (\n <span className=\"adyen-checkout__qr-loader__countdown\">\n {timeToPayString[0]}&nbsp;\n <Countdown minutesFromNow={countdownTime} onTick={onTick} onCompleted={onCompleted} />\n &nbsp;{timeToPayString[1]}\n </span>\n );\n};\n"],"names":["QRCountdown","countdownTime","timeToPay","onTick","onCompleted","i18n","useCoreContext","timeToPayString","get","split","h","span","className","Countdown","minutesFromNow"],"mappings":"6LAKO,MAAMA,EAAc,EAAGC,gBAAeC,YAAWC,SAAQC,kBAC5D,MAAMC,KAAEA,GAASC,IAEXC,EAAkBF,EAAKG,IAAIN,GAAWO,MAAM,MAElD,OACIC,EAACC,OAAAA,CAAKC,UAAU,wCACXL,EAAgB,GAAG,IACpBG,EAACG,EAAAA,CAAUC,eAAgBb,EAAeE,OAAQA,EAAQC,YAAaA,IAAe,IAC/EG,EAAgB"}
1
+ {"version":3,"file":"QRCountdown.js","sources":["../../../../../../src/components/internal/QRLoader/components/QRCountdown.tsx"],"sourcesContent":["import { h } from 'preact';\nimport Countdown from '../../Countdown';\nimport { QRCountdownProps } from '../types';\nimport { useCoreContext } from '../../../../core/Context/CoreProvider';\n\nexport const QRCountdown = ({ countdownTime, timeToPay, onTick, onCompleted }: Readonly<QRCountdownProps>) => {\n const { i18n } = useCoreContext();\n\n const timeToPayString = i18n.get(timeToPay).split('%@');\n\n return (\n <span className=\"adyen-checkout__qr-loader__countdown\">\n {timeToPayString[0]}&nbsp;\n <Countdown minutesFromNow={countdownTime} onTick={onTick} onCompleted={onCompleted} />\n &nbsp;{timeToPayString[1]}\n </span>\n );\n};\n"],"names":["QRCountdown","countdownTime","timeToPay","onTick","onCompleted","i18n","useCoreContext","timeToPayString","get","split","h","span","className","Countdown","minutesFromNow"],"mappings":"6LAKO,MAAMA,EAAc,EAAGC,gBAAeC,YAAWC,SAAQC,kBAC5D,MAAMC,KAAEA,GAASC,IAEXC,EAAkBF,EAAKG,IAAIN,GAAWO,MAAM,MAElD,OACIC,EAACC,OAAAA,CAAKC,UAAU,wCACXL,EAAgB,GAAG,IACpBG,EAACG,EAAAA,CAAUC,eAAgBb,EAAeE,OAAQA,EAAQC,YAAaA,IAAe,IAC/EG,EAAgB"}
@@ -1 +1 @@
1
- {"version":3,"file":"QRFinalState.js","sources":["../../../../../../src/components/internal/QRLoader/components/QRFinalState.tsx"],"sourcesContent":["import { h } from 'preact';\nimport useImage from '../../../../core/Context/useImage';\nimport { useA11yReporter } from '../../../../core/Errors/useA11yReporter';\n\nexport const QRFinalState = ({ image, message }: { image: string; message: string }) => {\n const getImage = useImage();\n\n useA11yReporter(message);\n\n return (\n <div className=\"adyen-checkout__qr-loader adyen-checkout__qr-loader--result\">\n <img\n className=\"adyen-checkout__qr-loader__icon adyen-checkout__qr-loader__icon--result\"\n src={getImage({ imageFolder: 'components/' })(image)}\n alt={message}\n />\n <p className=\"adyen-checkout__qr-loader__subtitle\">{message}</p>\n </div>\n );\n};\n"],"names":["QRFinalState","image","message","getImage","useImage","useA11yReporter","h","div","className","img","src","imageFolder","alt","p"],"mappings":"kNAIaA,EAAe,EAAGC,QAAOC,cAClC,MAAMC,EAAWC,IAIjB,OAFAC,EAAgBH,GAGZI,EAACC,MAAAA,CAAIC,UAAU,+DACXF,EAACG,MAAAA,CACGD,UAAU,0EACVE,IAAKP,EAAS,CAAEQ,YAAa,eAAxBR,CAAyCF,GAC9CW,IAAKV,IAETI,EAACO,IAAAA,CAAEL,UAAU,uCAAuCN"}
1
+ {"version":3,"file":"QRFinalState.js","sources":["../../../../../../src/components/internal/QRLoader/components/QRFinalState.tsx"],"sourcesContent":["import { h } from 'preact';\nimport useImage from '../../../../core/Context/useImage';\nimport { useA11yReporter } from '../../../../core/Errors/useA11yReporter';\n\nexport const QRFinalState = ({ image, message }: Readonly<{ image: string; message: string }>) => {\n const getImage = useImage();\n\n useA11yReporter(message);\n\n return (\n <div className=\"adyen-checkout__qr-loader adyen-checkout__qr-loader--result\">\n <img\n className=\"adyen-checkout__qr-loader__icon adyen-checkout__qr-loader__icon--result\"\n src={getImage({ imageFolder: 'components/' })(image)}\n alt={message}\n />\n <p className=\"adyen-checkout__qr-loader__subtitle\">{message}</p>\n </div>\n );\n};\n"],"names":["QRFinalState","image","message","getImage","useImage","useA11yReporter","h","div","className","img","src","imageFolder","alt","p"],"mappings":"kNAIaA,EAAe,EAAGC,QAAOC,cAClC,MAAMC,EAAWC,IAIjB,OAFAC,EAAgBH,GAGZI,EAACC,MAAAA,CAAIC,UAAU,+DACXF,EAACG,MAAAA,CACGD,UAAU,0EACVE,IAAKP,EAAS,CAAEQ,YAAa,eAAxBR,CAAyCF,GAC9CW,IAAKV,IAETI,EAACO,IAAAA,CAAEL,UAAU,uCAAuCN"}
@@ -1 +1 @@
1
- {"version":3,"file":"QRImage.js","sources":["../../../../../../src/components/internal/QRLoader/components/QRImage.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { QRImageProps } from '../types';\nimport { useCoreContext } from '../../../../core/Context/CoreProvider';\n\nexport const QRImage = ({ type, onLoad, src }: QRImageProps) => {\n const { i18n } = useCoreContext();\n\n return <img src={src} alt={i18n.get('wechatpay.scanqrcode')} onLoad={onLoad} data-testid={`${type}-qr-image`} />;\n};\n"],"names":["QRImage","type","onLoad","src","i18n","useCoreContext","h","img","alt","get","data-testid"],"mappings":"qJAIO,MAAMA,EAAU,EAAGC,OAAMC,SAAQC,UACpC,MAAMC,KAAEA,GAASC,IAEjB,OAAOC,EAACC,MAAAA,CAAIJ,IAAKA,EAAKK,IAAKJ,EAAKK,IAAI,wBAAyBP,OAAQA,EAAQQ,cAAa,GAAGT"}
1
+ {"version":3,"file":"QRImage.js","sources":["../../../../../../src/components/internal/QRLoader/components/QRImage.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { QRImageProps } from '../types';\nimport { useCoreContext } from '../../../../core/Context/CoreProvider';\n\nexport const QRImage = ({ type, onLoad, src }: Readonly<QRImageProps>) => {\n const { i18n } = useCoreContext();\n\n return <img src={src} alt={i18n.get('wechatpay.scanqrcode')} onLoad={onLoad} data-testid={`${type}-qr-image`} />;\n};\n"],"names":["QRImage","type","onLoad","src","i18n","useCoreContext","h","img","alt","get","data-testid"],"mappings":"qJAIO,MAAMA,EAAU,EAAGC,OAAMC,SAAQC,UACpC,MAAMC,KAAEA,GAASC,IAEjB,OAAOC,EAACC,MAAAA,CAAIJ,IAAKA,EAAKK,IAAKJ,EAAKK,IAAI,wBAAyBP,OAAQA,EAAQQ,cAAa,GAAGT"}
@@ -1 +1 @@
1
- {"version":3,"file":"QRIntructions.js","sources":["../../../../../../src/components/internal/QRLoader/components/QRIntructions.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { useCoreContext } from '../../../../core/Context/CoreProvider';\n\nexport const QRInstructions = ({ instructions }: { instructions: string | (() => h.JSX.Element) }) => {\n const { i18n } = useCoreContext();\n\n return <p className=\"adyen-checkout__qr-loader__instructions\">{typeof instructions === 'string' ? i18n.get(instructions) : instructions()}</p>;\n};\n"],"names":["QRInstructions","instructions","i18n","useCoreContext","h","p","className","get"],"mappings":"qJAGO,MAAMA,EAAiB,EAAGC,mBAC7B,MAAMC,KAAEA,GAASC,IAEjB,OAAOC,EAACC,IAAAA,CAAEC,UAAU,2CAAmE,iBAAjBL,EAA4BC,EAAKK,IAAIN,GAAgBA"}
1
+ {"version":3,"file":"QRIntructions.js","sources":["../../../../../../src/components/internal/QRLoader/components/QRIntructions.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { useCoreContext } from '../../../../core/Context/CoreProvider';\n\nexport const QRInstructions = ({ instructions }: Readonly<{ instructions: string | (() => h.JSX.Element) }>) => {\n const { i18n } = useCoreContext();\n\n return <p className=\"adyen-checkout__qr-loader__instructions\">{typeof instructions === 'string' ? i18n.get(instructions) : instructions()}</p>;\n};\n"],"names":["QRInstructions","instructions","i18n","useCoreContext","h","p","className","get"],"mappings":"qJAGO,MAAMA,EAAiB,EAAGC,mBAC7B,MAAMC,KAAEA,GAASC,IAEjB,OAAOC,EAACC,IAAAA,CAAEC,UAAU,2CAAmE,iBAAjBL,EAA4BC,EAAKK,IAAIN,GAAgBA"}
@@ -1 +1 @@
1
- {"version":3,"file":"QRProgressbar.js","sources":["../../../../../../src/components/internal/QRLoader/components/QRProgressbar.tsx"],"sourcesContent":["import { h } from 'preact';\n\nexport const QRProgressbar = ({ percentage }: { percentage: number }) => {\n return (\n <div className=\"adyen-checkout__qr-loader__progress\">\n <span className=\"adyen-checkout__qr-loader__percentage\" style={{ width: `${percentage}%` }} />\n </div>\n );\n};\n"],"names":["QRProgressbar","percentage","h","div","className","span","style","width"],"mappings":"2EAEO,MAAMA,EAAgB,EAAGC,gBAExBC,EAACC,MAAAA,CAAIC,UAAU,uCACXF,EAACG,OAAAA,CAAKD,UAAU,wCAAwCE,MAAO,CAAEC,MAAO,GAAGN"}
1
+ {"version":3,"file":"QRProgressbar.js","sources":["../../../../../../src/components/internal/QRLoader/components/QRProgressbar.tsx"],"sourcesContent":["import { h } from 'preact';\n\nexport const QRProgressbar = ({ percentage }: Readonly<{ percentage: number }>) => {\n return (\n <div className=\"adyen-checkout__qr-loader__progress\">\n <span className=\"adyen-checkout__qr-loader__percentage\" style={{ width: `${percentage}%` }} />\n </div>\n );\n};\n"],"names":["QRProgressbar","percentage","h","div","className","span","style","width"],"mappings":"2EAEO,MAAMA,EAAgB,EAAGC,gBAExBC,EAACC,MAAAA,CAAIC,UAAU,uCACXF,EAACG,OAAAA,CAAKD,UAAU,wCAAwCE,MAAO,CAAEC,MAAO,GAAGN"}
@@ -1 +1 @@
1
- {"version":3,"file":"RedirectButton.js","sources":["../../../../../src/components/internal/RedirectButton/RedirectButton.tsx"],"sourcesContent":["import { h, Fragment } from 'preact';\nimport { useCoreContext } from '../../../core/Context/CoreProvider';\nimport { useState } from 'preact/hooks';\nimport { useAmount } from '../../../core/Context/AmountProvider';\n\n// TODO this should ideally be remove but we need let prop propagate down\n// probably not worth changing this behaviour now\nexport interface RedirectButtonProps {\n label?: string;\n icon?: string;\n payButton: Function;\n onSubmit: Function;\n name: string;\n showPayButton: boolean;\n ref?: any;\n}\n\nfunction RedirectButton({ label = null, icon = null, payButton, onSubmit, name, showPayButton, ...props }: RedirectButtonProps) {\n const { i18n } = useCoreContext();\n const [status, setStatus] = useState('ready');\n const { amount } = useAmount();\n\n this.setStatus = newStatus => {\n setStatus(newStatus);\n };\n\n const payButtonLabel = () => {\n const isZeroAuth = amount && {}.hasOwnProperty.call(amount, 'value') && amount.value === 0;\n if (isZeroAuth) return `${i18n.get('preauthorizeWith')} ${name}`;\n return `${i18n.get('continueTo')} ${name}`;\n };\n\n if (!showPayButton) {\n return;\n }\n\n return (\n <Fragment>\n {payButton({\n ...props,\n status,\n icon,\n classNameModifiers: ['standalone'],\n label: label || payButtonLabel(),\n onClick: onSubmit\n })}\n </Fragment>\n );\n}\n\nexport default RedirectButton;\n"],"names":["RedirectButton","label","icon","payButton","onSubmit","name","showPayButton","props","i18n","useCoreContext","status","setStatus","useState","amount","useAmount","this","newStatus","h","Fragment","classNameModifiers","hasOwnProperty","call","value","get","onClick"],"mappings":"ySAiBA,SAASA,GAAeC,MAAEA,EAAQ,KAAIC,KAAEA,EAAO,KAAIC,UAAEA,EAASC,SAAEA,EAAQC,KAAEA,EAAIC,cAAEA,KAAkBC,IAC9F,MAAMC,KAAEA,GAASC,KACVC,EAAQC,GAAaC,EAAS,UAC/BC,OAAEA,GAAWC,IAEnBC,KAAKJ,UAAYK,IACbL,EAAUK,IASd,GAAKV,EAIL,OACIW,EAACC,OACIf,EAAU,IACJI,EACHG,SACAR,OACAiB,mBAAoB,CAAC,cACrBlB,MAAOA,IAhBIY,GAAU,CAAC,EAAEO,eAAeC,KAAKR,EAAQ,UAA6B,IAAjBA,EAAOS,MACxD,GAAGd,EAAKe,IAAI,uBAAuBlB,IACnD,GAAGG,EAAKe,IAAI,iBAAiBlB,KAe5BmB,QAASpB,IAIzB"}
1
+ {"version":3,"file":"RedirectButton.js","sources":["../../../../../src/components/internal/RedirectButton/RedirectButton.tsx"],"sourcesContent":["import { h, Fragment } from 'preact';\nimport { useCoreContext } from '../../../core/Context/CoreProvider';\nimport { useState } from 'preact/hooks';\nimport { useAmount } from '../../../core/Context/AmountProvider';\n\n// TODO this should ideally be remove but we need let prop propagate down\n// probably not worth changing this behaviour now\nexport interface RedirectButtonProps {\n label?: string;\n icon?: string;\n payButton: Function;\n onSubmit: Function;\n name: string;\n showPayButton: boolean;\n ref?: any;\n}\n\nfunction RedirectButton({ label = null, icon = null, payButton, onSubmit, name, showPayButton, ...props }: Readonly<RedirectButtonProps>) {\n const { i18n } = useCoreContext();\n const [status, setStatus] = useState('ready');\n const { amount } = useAmount();\n\n this.setStatus = newStatus => {\n setStatus(newStatus);\n };\n\n const payButtonLabel = () => {\n const isZeroAuth = amount && {}.hasOwnProperty.call(amount, 'value') && amount.value === 0;\n if (isZeroAuth) return `${i18n.get('preauthorizeWith')} ${name}`;\n return `${i18n.get('continueTo')} ${name}`;\n };\n\n if (!showPayButton) {\n return;\n }\n\n return (\n <Fragment>\n {payButton({\n ...props,\n status,\n icon,\n classNameModifiers: ['standalone'],\n label: label || payButtonLabel(),\n onClick: onSubmit\n })}\n </Fragment>\n );\n}\n\nexport default RedirectButton;\n"],"names":["RedirectButton","label","icon","payButton","onSubmit","name","showPayButton","props","i18n","useCoreContext","status","setStatus","useState","amount","useAmount","this","newStatus","h","Fragment","classNameModifiers","hasOwnProperty","call","value","get","onClick"],"mappings":"ySAiBA,SAASA,GAAeC,MAAEA,EAAQ,KAAIC,KAAEA,EAAO,KAAIC,UAAEA,EAASC,SAAEA,EAAQC,KAAEA,EAAIC,cAAEA,KAAkBC,IAC9F,MAAMC,KAAEA,GAASC,KACVC,EAAQC,GAAaC,EAAS,UAC/BC,OAAEA,GAAWC,IAEnBC,KAAKJ,UAAYK,IACbL,EAAUK,IASd,GAAKV,EAIL,OACIW,EAACC,OACIf,EAAU,IACJI,EACHG,SACAR,OACAiB,mBAAoB,CAAC,cACrBlB,MAAOA,IAhBIY,GAAU,CAAC,EAAEO,eAAeC,KAAKR,EAAQ,UAA6B,IAAjBA,EAAOS,MACxD,GAAGd,EAAKe,IAAI,uBAAuBlB,IACnD,GAAGG,EAAKe,IAAI,iBAAiBlB,KAe5BmB,QAASpB,IAIzB"}
@@ -1,2 +1,2 @@
1
- import{ENCRYPTED_EXPIRY_DATE as e,ENCRYPTED_EXPIRY_MONTH as r,ENCRYPTED_EXPIRY_YEAR as l,ENCRYPTED_SECURITY_CODE as i,CVC_POLICY_OPTIONAL as t,DATE_POLICY_OPTIONAL as o,CVC_POLICY_HIDDEN as s,DATE_POLICY_HIDDEN as c}from"../lib/constants.js";import d from"../../../../utils/getProp.js";import{EMPTY_FIELD_ERROR_MESSAGES as p}from"../../../../core/Errors/constants.js";const a=e=>e?Array.prototype.slice.call(e.querySelectorAll('[data-cse*="encrypted"]')).map(e=>e.getAttribute("data-cse")):[],y=(i,t)=>(t===e?(i[r]=!1,i[l]=!1):i[t]=!1,i),n=(d,p)=>(a,y)=>{let n=!0!==p.valid[y]?((i,t)=>1!==t||i!==r&&i!==l?i:e)(y,d):null;return n=((e,r,l)=>{const{isFieldOfType:d,fieldIsValid:p}=l.reduce((l,i)=>(l.isFieldOfType||(l.isFieldOfType=e===i,l.fieldIsValid=!r.errors[i]),l),{isFieldOfType:!1,fieldIsValid:!1}),a=e===i?"cvcPolicy":"expiryDatePolicy",y="cvcPolicy"===a?t:o,n="cvcPolicy"===a?s:c;return(r[a]===y||r[a]===n)&&p&&d?null:e})(n,p,[i,e,r,l]),n&&!a.includes(n)&&a.push(n),a},f=(e,r,l)=>({rootNode:r,fieldType:e,error:d(l,`errors.${e}`)||p[e],type:"card"});export{f as getErrorObject,n as getErrorReducer,a as getFields,y as validFieldsReducer};
1
+ import{ENCRYPTED_EXPIRY_DATE as e,ENCRYPTED_EXPIRY_MONTH as r,ENCRYPTED_EXPIRY_YEAR as l,ENCRYPTED_SECURITY_CODE as i,CVC_POLICY_OPTIONAL as t,DATE_POLICY_OPTIONAL as c,CVC_POLICY_HIDDEN as o,DATE_POLICY_HIDDEN as s}from"../lib/constants.js";import{EMPTY_FIELD_ERROR_MESSAGES as d}from"../../../../core/Errors/constants.js";const a=e=>e?Array.prototype.slice.call(e.querySelectorAll('[data-cse*="encrypted"]')).map(e=>e.getAttribute("data-cse")):[],p=(i,t)=>(t===e?(i[r]=!1,i[l]=!1):i[t]=!1,i),y=(d,a)=>(p,y)=>{let n=!0!==a.valid[y]?((i,t)=>1!==t||i!==r&&i!==l?i:e)(y,d):null;return n=((e,r,l)=>{const{isFieldOfType:d,fieldIsValid:a}=l.reduce((l,i)=>(l.isFieldOfType||(l.isFieldOfType=e===i,l.fieldIsValid=!r.errors[i]),l),{isFieldOfType:!1,fieldIsValid:!1}),p=e===i?"cvcPolicy":"expiryDatePolicy",y="cvcPolicy"===p?t:c,n="cvcPolicy"===p?o:s;return(r[p]===y||r[p]===n)&&a&&d?null:e})(n,a,[i,e,r,l]),n&&!p.includes(n)&&p.push(n),p},n=(e,r,l)=>({rootNode:r,fieldType:e,error:l.errors?.[e]||d[e],type:"card"});export{n as getErrorObject,y as getErrorReducer,a as getFields,p as validFieldsReducer};
2
2
  //# sourceMappingURL=SFPUtils.js.map