@adyen/adyen-web 6.18.0 → 6.19.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 (1425) hide show
  1. package/README.md +1 -1
  2. package/dist/cjs/adyen.css +6 -3
  3. package/dist/cjs/adyen.css.map +1 -1
  4. package/dist/cjs/index.cjs +2 -2
  5. package/dist/cjs/index.cjs.map +1 -1
  6. package/dist/cjs/index.d.cts +14 -3
  7. package/dist/es/adyen.css +6 -3
  8. package/dist/es/adyen.css.map +1 -1
  9. package/dist/es/components/ANCV/ANCV.js +1 -1
  10. package/dist/es/components/ANCV/ANCV.js.map +1 -1
  11. package/dist/es/components/ANCV/components/ANCVAwait/config.js.map +1 -1
  12. package/dist/es/components/ANCV/components/ANCVInput.js +1 -1
  13. package/dist/es/components/ANCV/components/ANCVInput.js.map +1 -1
  14. package/dist/es/components/Ach/Ach.js.map +1 -1
  15. package/dist/es/components/Ach/components/AccountTypeSelector.js +1 -1
  16. package/dist/es/components/Ach/components/AccountTypeSelector.js.map +1 -1
  17. package/dist/es/components/Ach/components/AchComponent.js +1 -1
  18. package/dist/es/components/Ach/components/AchComponent.js.map +1 -1
  19. package/dist/es/components/Ach/components/useSRPanelForACHErrors.js +1 -1
  20. package/dist/es/components/Ach/components/useSRPanelForACHErrors.js.map +1 -1
  21. package/dist/es/components/Ach/components/validate.js.map +1 -1
  22. package/dist/es/components/AfterPay/AfterPayB2B.js.map +1 -1
  23. package/dist/es/components/AmazonPay/AmazonPay.js +1 -1
  24. package/dist/es/components/AmazonPay/AmazonPay.js.map +1 -1
  25. package/dist/es/components/AmazonPay/components/AmazonPayButton.js +1 -1
  26. package/dist/es/components/AmazonPay/components/AmazonPayButton.js.map +1 -1
  27. package/dist/es/components/AmazonPay/components/AmazonPayComponent.js +1 -1
  28. package/dist/es/components/AmazonPay/components/AmazonPayComponent.js.map +1 -1
  29. package/dist/es/components/AmazonPay/components/ChangePaymentDetailsButton.js +1 -1
  30. package/dist/es/components/AmazonPay/components/ChangePaymentDetailsButton.js.map +1 -1
  31. package/dist/es/components/AmazonPay/components/OrderButton.js +1 -1
  32. package/dist/es/components/AmazonPay/components/OrderButton.js.map +1 -1
  33. package/dist/es/components/AmazonPay/components/SignOutButton.js +1 -1
  34. package/dist/es/components/AmazonPay/components/SignOutButton.js.map +1 -1
  35. package/dist/es/components/AmazonPay/defaultProps.js.map +1 -1
  36. package/dist/es/components/ApplePay/ApplePay.js +1 -1
  37. package/dist/es/components/ApplePay/ApplePay.js.map +1 -1
  38. package/dist/es/components/ApplePay/components/ApplePayButton.js.map +1 -1
  39. package/dist/es/components/ApplePay/services/ApplePayService.js +1 -1
  40. package/dist/es/components/ApplePay/services/ApplePayService.js.map +1 -1
  41. package/dist/es/components/ApplePay/utils/map-adyen-brands-to-applepay-brands.js +1 -1
  42. package/dist/es/components/ApplePay/utils/map-adyen-brands-to-applepay-brands.js.map +1 -1
  43. package/dist/es/components/ApplePay/utils/payment-request.js.map +1 -1
  44. package/dist/es/components/Atome/config.js +1 -1
  45. package/dist/es/components/Atome/config.js.map +1 -1
  46. package/dist/es/components/BacsDD/BacsDD.js +1 -1
  47. package/dist/es/components/BacsDD/BacsDD.js.map +1 -1
  48. package/dist/es/components/BacsDD/components/BacsInput.js +1 -1
  49. package/dist/es/components/BacsDD/components/BacsInput.js.map +1 -1
  50. package/dist/es/components/BankTransfer/BankTransfer.js +1 -1
  51. package/dist/es/components/BankTransfer/BankTransfer.js.map +1 -1
  52. package/dist/es/components/BankTransfer/components/BankTransferInput/BankTransferInput.js +1 -1
  53. package/dist/es/components/BankTransfer/components/BankTransferInput/BankTransferInput.js.map +1 -1
  54. package/dist/es/components/BankTransfer/components/BankTransferInput/validationRule.js +2 -0
  55. package/dist/es/components/BankTransfer/components/BankTransferInput/validationRule.js.map +1 -0
  56. package/dist/es/components/BankTransfer/components/BankTransferResult/BankTransferResult.js +1 -1
  57. package/dist/es/components/BankTransfer/components/BankTransferResult/BankTransferResult.js.map +1 -1
  58. package/dist/es/components/BankTransfer/components/BankTransferResult/BankTransferResultInstructions.js +2 -0
  59. package/dist/es/components/BankTransfer/components/BankTransferResult/BankTransferResultInstructions.js.map +1 -0
  60. package/dist/es/components/BankTransfer/components/BankTransferResult/BankTransferVoucher.js +2 -0
  61. package/dist/es/components/BankTransfer/components/BankTransferResult/BankTransferVoucher.js.map +1 -0
  62. package/dist/es/components/BcmcMobile/config.js.map +1 -1
  63. package/dist/es/components/Blik/Blik.js.map +1 -1
  64. package/dist/es/components/Blik/components/BlikInput.js +1 -1
  65. package/dist/es/components/Blik/components/BlikInput.js.map +1 -1
  66. package/dist/es/components/Blik/config.js.map +1 -1
  67. package/dist/es/components/Boleto/Boleto.js +1 -1
  68. package/dist/es/components/Boleto/Boleto.js.map +1 -1
  69. package/dist/es/components/Boleto/components/BoletoInput/BoletoInput.js +1 -1
  70. package/dist/es/components/Boleto/components/BoletoInput/BoletoInput.js.map +1 -1
  71. package/dist/es/components/Card/Bancontact.js +1 -1
  72. package/dist/es/components/Card/Bancontact.js.map +1 -1
  73. package/dist/es/components/Card/Card.js +1 -1
  74. package/dist/es/components/Card/Card.js.map +1 -1
  75. package/dist/es/components/Card/components/CardInput/CardInput.js +1 -1
  76. package/dist/es/components/Card/components/CardInput/CardInput.js.map +1 -1
  77. package/dist/es/components/Card/components/CardInput/components/AvailableBrands/AvailableBrands.js +1 -1
  78. package/dist/es/components/Card/components/CardInput/components/AvailableBrands/AvailableBrands.js.map +1 -1
  79. package/dist/es/components/Card/components/CardInput/components/BrandIcon.js.map +1 -1
  80. package/dist/es/components/Card/components/CardInput/components/CVC.js.map +1 -1
  81. package/dist/es/components/Card/components/CardInput/components/CardFields.js +1 -1
  82. package/dist/es/components/Card/components/CardInput/components/CardFields.js.map +1 -1
  83. package/dist/es/components/Card/components/CardInput/components/CardFieldsWrapper.js +1 -1
  84. package/dist/es/components/Card/components/CardInput/components/CardFieldsWrapper.js.map +1 -1
  85. package/dist/es/components/Card/components/CardInput/components/CardNumber.js +1 -1
  86. package/dist/es/components/Card/components/CardInput/components/CardNumber.js.map +1 -1
  87. package/dist/es/components/Card/components/CardInput/components/DualBrandingIcon/DualBrandingIcon.js.map +1 -1
  88. package/dist/es/components/Card/components/CardInput/components/ExpirationDate.js.map +1 -1
  89. package/dist/es/components/Card/components/CardInput/components/Installments/Installments.js +1 -1
  90. package/dist/es/components/Card/components/CardInput/components/Installments/Installments.js.map +1 -1
  91. package/dist/es/components/Card/components/CardInput/components/KCPAuthentication.js +1 -1
  92. package/dist/es/components/Card/components/CardInput/components/KCPAuthentication.js.map +1 -1
  93. package/dist/es/components/Card/components/CardInput/components/StoredCardFieldsWrapper.js.map +1 -1
  94. package/dist/es/components/Card/components/CardInput/defaultProps.js.map +1 -1
  95. package/dist/es/components/Card/components/CardInput/handlers.js +1 -1
  96. package/dist/es/components/Card/components/CardInput/handlers.js.map +1 -1
  97. package/dist/es/components/Card/components/CardInput/useSRPanelForCardInputErrors.js +1 -1
  98. package/dist/es/components/Card/components/CardInput/useSRPanelForCardInputErrors.js.map +1 -1
  99. package/dist/es/components/Card/components/CardInput/utils.js +1 -1
  100. package/dist/es/components/Card/components/CardInput/utils.js.map +1 -1
  101. package/dist/es/components/Card/components/CardInput/validate.js +1 -1
  102. package/dist/es/components/Card/components/CardInput/validate.js.map +1 -1
  103. package/dist/es/components/Card/components/ClickToPayHolder.js +1 -1
  104. package/dist/es/components/Card/components/ClickToPayHolder.js.map +1 -1
  105. package/dist/es/components/Card/components/ClickToPayWrapper.js.map +1 -1
  106. package/dist/es/components/Card/components/Fastlane/FastlaneSignup.js +1 -1
  107. package/dist/es/components/Card/components/Fastlane/FastlaneSignup.js.map +1 -1
  108. package/dist/es/components/Card/components/Fastlane/InfoButton.js +1 -1
  109. package/dist/es/components/Card/components/Fastlane/InfoButton.js.map +1 -1
  110. package/dist/es/components/Card/components/Fastlane/InfoModal.js +1 -1
  111. package/dist/es/components/Card/components/Fastlane/InfoModal.js.map +1 -1
  112. package/dist/es/components/Card/components/Fastlane/USOnlyPhoneInput.js +1 -1
  113. package/dist/es/components/Card/components/Fastlane/USOnlyPhoneInput.js.map +1 -1
  114. package/dist/es/components/Card/components/Fastlane/utils/validate-configuration.js +1 -1
  115. package/dist/es/components/Card/components/Fastlane/utils/validate-configuration.js.map +1 -1
  116. package/dist/es/components/CashAppPay/CashAppPay.js +1 -1
  117. package/dist/es/components/CashAppPay/CashAppPay.js.map +1 -1
  118. package/dist/es/components/CashAppPay/components/CashAppComponent.js +1 -1
  119. package/dist/es/components/CashAppPay/components/CashAppComponent.js.map +1 -1
  120. package/dist/es/components/CashAppPay/defaultProps.js.map +1 -1
  121. package/dist/es/components/CashAppPay/services/CashAppService.js.map +1 -1
  122. package/dist/es/components/ClickToPay/ClickToPay.js +1 -1
  123. package/dist/es/components/ClickToPay/ClickToPay.js.map +1 -1
  124. package/dist/es/components/CustomCard/CustomCard.js +1 -1
  125. package/dist/es/components/CustomCard/CustomCard.js.map +1 -1
  126. package/dist/es/components/CustomCard/CustomCardInput/CustomCardInput.js +1 -1
  127. package/dist/es/components/CustomCard/CustomCardInput/CustomCardInput.js.map +1 -1
  128. package/dist/es/components/Doku/Doku.js.map +1 -1
  129. package/dist/es/components/Doku/components/DokuInput/DokuInput.js.map +1 -1
  130. package/dist/es/components/Donation/Donation.js +1 -1
  131. package/dist/es/components/Donation/Donation.js.map +1 -1
  132. package/dist/es/components/Donation/components/DonationComponent.js +1 -1
  133. package/dist/es/components/Donation/components/DonationComponent.js.map +1 -1
  134. package/dist/es/components/Donation/components/FixedAmounts.js +1 -1
  135. package/dist/es/components/Donation/components/FixedAmounts.js.map +1 -1
  136. package/dist/es/components/Dragonpay/Dragonpay.js +1 -1
  137. package/dist/es/components/Dragonpay/Dragonpay.js.map +1 -1
  138. package/dist/es/components/Dragonpay/components/DragonpayInput/DragonpayInput.js +1 -1
  139. package/dist/es/components/Dragonpay/components/DragonpayInput/DragonpayInput.js.map +1 -1
  140. package/dist/es/components/Dragonpay/components/DragonpayVoucherResult/DragonpayVoucherResult.js.map +1 -1
  141. package/dist/es/components/Dropin/Dropin.js +1 -1
  142. package/dist/es/components/Dropin/Dropin.js.map +1 -1
  143. package/dist/es/components/Dropin/components/DropinComponent.js +1 -1
  144. package/dist/es/components/Dropin/components/DropinComponent.js.map +1 -1
  145. package/dist/es/components/Dropin/components/PaymentMethod/DisableOneClickConfirmation.js.map +1 -1
  146. package/dist/es/components/Dropin/components/PaymentMethod/InstantPaymentMethods.js +1 -1
  147. package/dist/es/components/Dropin/components/PaymentMethod/InstantPaymentMethods.js.map +1 -1
  148. package/dist/es/components/Dropin/components/PaymentMethod/OrderPaymentMethods.js +1 -1
  149. package/dist/es/components/Dropin/components/PaymentMethod/OrderPaymentMethods.js.map +1 -1
  150. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodBrands/PaymentMethodBrands.js +1 -1
  151. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodBrands/PaymentMethodBrands.js.map +1 -1
  152. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodItem/PaymentMethodItem.js +1 -1
  153. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodItem/PaymentMethodItem.js.map +1 -1
  154. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodList.js +1 -1
  155. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodList.js.map +1 -1
  156. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodName.js.map +1 -1
  157. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodsContainer.js +1 -1
  158. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodsContainer.js.map +1 -1
  159. package/dist/es/components/Dropin/components/PaymentMethod/useBrandLogoConfiguration.js +1 -1
  160. package/dist/es/components/Dropin/components/PaymentMethod/useBrandLogoConfiguration.js.map +1 -1
  161. package/dist/es/components/Dropin/components/status/Error.js.map +1 -1
  162. package/dist/es/components/Dropin/components/status/Success.js.map +1 -1
  163. package/dist/es/components/Dropin/components/status/index.js.map +1 -1
  164. package/dist/es/components/Dropin/defaultProps.js.map +1 -1
  165. package/dist/es/components/Dropin/elements/createElements.js +1 -1
  166. package/dist/es/components/Dropin/elements/createElements.js.map +1 -1
  167. package/dist/es/components/Dropin/elements/filters.js +1 -1
  168. package/dist/es/components/Dropin/elements/filters.js.map +1 -1
  169. package/dist/es/components/Dropin/elements/getComponentConfiguration.js.map +1 -1
  170. package/dist/es/components/Dropin/elements/splitPaymentMethods.js +1 -1
  171. package/dist/es/components/Dropin/elements/splitPaymentMethods.js.map +1 -1
  172. package/dist/es/components/DuitNow/config.js.map +1 -1
  173. package/dist/es/components/Econtext/Econtext.js.map +1 -1
  174. package/dist/es/components/Econtext/components/EcontextInput/EcontextInput.js.map +1 -1
  175. package/dist/es/components/Giftcard/Giftcard.js +1 -1
  176. package/dist/es/components/Giftcard/Giftcard.js.map +1 -1
  177. package/dist/es/components/Giftcard/components/GiftcardComponent.js +1 -1
  178. package/dist/es/components/Giftcard/components/GiftcardComponent.js.map +1 -1
  179. package/dist/es/components/Giftcard/components/GiftcardNumberField.js.map +1 -1
  180. package/dist/es/components/Giftcard/components/useSRPanelForGiftcardErrors.js +1 -1
  181. package/dist/es/components/Giftcard/components/useSRPanelForGiftcardErrors.js.map +1 -1
  182. package/dist/es/components/Giropay/Giropay.js.map +1 -1
  183. package/dist/es/components/GooglePay/GooglePay.js +1 -1
  184. package/dist/es/components/GooglePay/GooglePay.js.map +1 -1
  185. package/dist/es/components/GooglePay/GooglePayService.js +1 -1
  186. package/dist/es/components/GooglePay/GooglePayService.js.map +1 -1
  187. package/dist/es/components/GooglePay/components/GooglePayButton.js +1 -1
  188. package/dist/es/components/GooglePay/components/GooglePayButton.js.map +1 -1
  189. package/dist/es/components/GooglePay/config.js.map +1 -1
  190. package/dist/es/components/GooglePay/requests.js.map +1 -1
  191. package/dist/es/components/Klarna/KlarnaPayments.js +1 -1
  192. package/dist/es/components/Klarna/KlarnaPayments.js.map +1 -1
  193. package/dist/es/components/Klarna/components/KlarnaContainer/KlarnaContainer.js +1 -1
  194. package/dist/es/components/Klarna/components/KlarnaContainer/KlarnaContainer.js.map +1 -1
  195. package/dist/es/components/Klarna/components/KlarnaWidget/KlarnaWidget.js +1 -1
  196. package/dist/es/components/Klarna/components/KlarnaWidget/KlarnaWidget.js.map +1 -1
  197. package/dist/es/components/MBWay/MBWay.js.map +1 -1
  198. package/dist/es/components/MBWay/components/MBWayAwait/config.js.map +1 -1
  199. package/dist/es/components/MBWay/components/MBWayInput/MBWayInput.js.map +1 -1
  200. package/dist/es/components/MealVoucherFR/MealVoucherFR.js.map +1 -1
  201. package/dist/es/components/Multibanco/Multibanco.js +1 -1
  202. package/dist/es/components/Multibanco/Multibanco.js.map +1 -1
  203. package/dist/es/components/OnlineBankingPL/OnlineBankingPL.js.map +1 -1
  204. package/dist/es/components/Oxxo/Oxxo.js +1 -1
  205. package/dist/es/components/Oxxo/Oxxo.js.map +1 -1
  206. package/dist/es/components/PayByBank/PayByBank.js.map +1 -1
  207. package/dist/es/components/PayByBankPix/PayByBankPix.js +1 -1
  208. package/dist/es/components/PayByBankPix/PayByBankPix.js.map +1 -1
  209. package/dist/es/components/PayByBankPix/components/Enrollment/Enrollment.js +1 -1
  210. package/dist/es/components/PayByBankPix/components/Enrollment/Enrollment.js.map +1 -1
  211. package/dist/es/components/PayByBankPix/components/Enrollment/components/AwaitLogoContainer.js +1 -1
  212. package/dist/es/components/PayByBankPix/components/Enrollment/components/AwaitLogoContainer.js.map +1 -1
  213. package/dist/es/components/PayByBankPix/components/Enrollment/useIssuerWithLogo.js +1 -1
  214. package/dist/es/components/PayByBankPix/components/Enrollment/useIssuerWithLogo.js.map +1 -1
  215. package/dist/es/components/PayByBankPix/components/StoredPayment/StoredPayment.js +1 -1
  216. package/dist/es/components/PayByBankPix/components/StoredPayment/StoredPayment.js.map +1 -1
  217. package/dist/es/components/PayByBankPix/services/PasskeyService.js +1 -1
  218. package/dist/es/components/PayByBankPix/services/PasskeyService.js.map +1 -1
  219. package/dist/es/components/PayByBankUS/PayByBankUS.js +1 -1
  220. package/dist/es/components/PayByBankUS/PayByBankUS.js.map +1 -1
  221. package/dist/es/components/PayMe/components/PayMeIntroduction.js.map +1 -1
  222. package/dist/es/components/PayNow/components/PayNowInstructions.js.map +1 -1
  223. package/dist/es/components/PayNow/components/PayNowIntroduction.js.map +1 -1
  224. package/dist/es/components/PayNow/config.js.map +1 -1
  225. package/dist/es/components/PayPal/Paypal.js +1 -1
  226. package/dist/es/components/PayPal/Paypal.js.map +1 -1
  227. package/dist/es/components/PayPal/components/PaypalButtons.js +1 -1
  228. package/dist/es/components/PayPal/components/PaypalButtons.js.map +1 -1
  229. package/dist/es/components/PayPal/components/PaypalComponent.js +1 -1
  230. package/dist/es/components/PayPal/components/PaypalComponent.js.map +1 -1
  231. package/dist/es/components/PayPal/utils/format-paypal-order-contact-to-adyen-format.js.map +1 -1
  232. package/dist/es/components/PayPal/utils/get-paypal-locale.js.map +1 -1
  233. package/dist/es/components/PayPal/utils/get-paypal-settings.js.map +1 -1
  234. package/dist/es/components/PayPal/utils/get-paypal-styles.js +1 -1
  235. package/dist/es/components/PayPal/utils/get-paypal-styles.js.map +1 -1
  236. package/dist/es/components/PayPal/utils/get-paypal-url.js +1 -1
  237. package/dist/es/components/PayPal/utils/get-paypal-url.js.map +1 -1
  238. package/dist/es/components/PayPalFastlane/Fastlane.js +1 -1
  239. package/dist/es/components/PayPalFastlane/Fastlane.js.map +1 -1
  240. package/dist/es/components/PayPalFastlane/FastlaneSDK.js.map +1 -1
  241. package/dist/es/components/PayPalFastlane/components/FastlaneComponent.js +1 -1
  242. package/dist/es/components/PayPalFastlane/components/FastlaneComponent.js.map +1 -1
  243. package/dist/es/components/PayTo/PayTo.js.map +1 -1
  244. package/dist/es/components/PayTo/components/BSBInput.js +1 -1
  245. package/dist/es/components/PayTo/components/BSBInput.js.map +1 -1
  246. package/dist/es/components/PayTo/components/IdentifierSelector.js +1 -1
  247. package/dist/es/components/PayTo/components/IdentifierSelector.js.map +1 -1
  248. package/dist/es/components/PayTo/components/MandateSummary.js +1 -1
  249. package/dist/es/components/PayTo/components/MandateSummary.js.map +1 -1
  250. package/dist/es/components/PayTo/components/PayIDInput.js +1 -1
  251. package/dist/es/components/PayTo/components/PayIDInput.js.map +1 -1
  252. package/dist/es/components/PayTo/components/PayToComponent.js +1 -1
  253. package/dist/es/components/PayTo/components/PayToComponent.js.map +1 -1
  254. package/dist/es/components/PayTo/components/PayToPhone.js +1 -1
  255. package/dist/es/components/PayTo/components/PayToPhone.js.map +1 -1
  256. package/dist/es/components/Pix/Pix.js.map +1 -1
  257. package/dist/es/components/Pix/PixInput/PixInput.js +1 -1
  258. package/dist/es/components/Pix/PixInput/PixInput.js.map +1 -1
  259. package/dist/es/components/PreAuthorizedDebitCanada/PreAuthorizedDebitCanada.js.map +1 -1
  260. package/dist/es/components/PreAuthorizedDebitCanada/components/PreAuthorizedDebitCanadaComponent.js +1 -1
  261. package/dist/es/components/PreAuthorizedDebitCanada/components/PreAuthorizedDebitCanadaComponent.js.map +1 -1
  262. package/dist/es/components/PreAuthorizedDebitCanada/components/SettlementInfo.js.map +1 -1
  263. package/dist/es/components/PromptPay/config.js.map +1 -1
  264. package/dist/es/components/Redirect/Redirect.js +1 -1
  265. package/dist/es/components/Redirect/Redirect.js.map +1 -1
  266. package/dist/es/components/Redirect/components/RedirectShopper/RedirectShopper.js +1 -1
  267. package/dist/es/components/Redirect/components/RedirectShopper/RedirectShopper.js.map +1 -1
  268. package/dist/es/components/Sepa/Sepa.js.map +1 -1
  269. package/dist/es/components/ThreeDS2/ThreeDS2Challenge.js +1 -1
  270. package/dist/es/components/ThreeDS2/ThreeDS2Challenge.js.map +1 -1
  271. package/dist/es/components/ThreeDS2/ThreeDS2DeviceFingerprint.js +1 -1
  272. package/dist/es/components/ThreeDS2/ThreeDS2DeviceFingerprint.js.map +1 -1
  273. package/dist/es/components/ThreeDS2/callSubmit3DS2Fingerprint.js +1 -1
  274. package/dist/es/components/ThreeDS2/callSubmit3DS2Fingerprint.js.map +1 -1
  275. package/dist/es/components/ThreeDS2/components/Challenge/DoChallenge3DS2.js +1 -1
  276. package/dist/es/components/ThreeDS2/components/Challenge/DoChallenge3DS2.js.map +1 -1
  277. package/dist/es/components/ThreeDS2/components/Challenge/PrepareChallenge3DS2.js +1 -1
  278. package/dist/es/components/ThreeDS2/components/Challenge/PrepareChallenge3DS2.js.map +1 -1
  279. package/dist/es/components/ThreeDS2/components/DeviceFingerprint/DoFingerprint3DS2.js +1 -1
  280. package/dist/es/components/ThreeDS2/components/DeviceFingerprint/DoFingerprint3DS2.js.map +1 -1
  281. package/dist/es/components/ThreeDS2/components/DeviceFingerprint/PrepareFingerprint3DS2.js +1 -1
  282. package/dist/es/components/ThreeDS2/components/DeviceFingerprint/PrepareFingerprint3DS2.js.map +1 -1
  283. package/dist/es/components/ThreeDS2/components/Form/ThreeDS2Form.js.map +1 -1
  284. package/dist/es/components/ThreeDS2/components/utils.js.map +1 -1
  285. package/dist/es/components/Trustly/Trustly.js.map +1 -1
  286. package/dist/es/components/Twint/Twint.js +1 -1
  287. package/dist/es/components/Twint/Twint.js.map +1 -1
  288. package/dist/es/components/UPI/UPI.js +1 -1
  289. package/dist/es/components/UPI/UPI.js.map +1 -1
  290. package/dist/es/components/UPI/components/UPIComponent/UPIComponent.js +1 -1
  291. package/dist/es/components/UPI/components/UPIComponent/UPIComponent.js.map +1 -1
  292. package/dist/es/components/UPI/components/UPIComponent/useUpiSegmentedControlOptions.js +1 -1
  293. package/dist/es/components/UPI/components/UPIComponent/useUpiSegmentedControlOptions.js.map +1 -1
  294. package/dist/es/components/UPI/components/UPIIntentAppList/UPIIntentAppItem/UPIIntentAppItem.js.map +1 -1
  295. package/dist/es/components/UPI/components/UPIIntentAppList/UPIIntentAppList.js +1 -1
  296. package/dist/es/components/UPI/components/UPIIntentAppList/UPIIntentAppList.js.map +1 -1
  297. package/dist/es/components/UPI/components/VpaInput/VpaInput.js +1 -1
  298. package/dist/es/components/UPI/components/VpaInput/VpaInput.js.map +1 -1
  299. package/dist/es/components/WeChat/config.js.map +1 -1
  300. package/dist/es/components/helpers/IssuerListContainer/IssuerListContainer.js +1 -1
  301. package/dist/es/components/helpers/IssuerListContainer/IssuerListContainer.js.map +1 -1
  302. package/dist/es/components/helpers/OpenInvoiceContainer/OpenInvoiceContainer.js.map +1 -1
  303. package/dist/es/components/helpers/QRLoaderContainer/QRLoaderContainer.js.map +1 -1
  304. package/dist/es/components/internal/Address/Address.js +1 -1
  305. package/dist/es/components/internal/Address/Address.js.map +1 -1
  306. package/dist/es/components/internal/Address/Specifications.js +1 -1
  307. package/dist/es/components/internal/Address/Specifications.js.map +1 -1
  308. package/dist/es/components/internal/Address/components/AddressSearch.js +1 -1
  309. package/dist/es/components/internal/Address/components/AddressSearch.js.map +1 -1
  310. package/dist/es/components/internal/Address/components/CountryField.js +1 -1
  311. package/dist/es/components/internal/Address/components/CountryField.js.map +1 -1
  312. package/dist/es/components/internal/Address/components/ReadOnlyAddress.js.map +1 -1
  313. package/dist/es/components/internal/Address/components/StateField.js +1 -1
  314. package/dist/es/components/internal/Address/components/StateField.js.map +1 -1
  315. package/dist/es/components/internal/Address/validate.formats.js.map +1 -1
  316. package/dist/es/components/internal/Address/validate.js.map +1 -1
  317. package/dist/es/components/internal/Await/Await.js +1 -1
  318. package/dist/es/components/internal/Await/Await.js.map +1 -1
  319. package/dist/es/components/internal/BaseElement/BaseElement.js +1 -1
  320. package/dist/es/components/internal/BaseElement/BaseElement.js.map +1 -1
  321. package/dist/es/components/internal/Button/Button.js +1 -1
  322. package/dist/es/components/internal/Button/Button.js.map +1 -1
  323. package/dist/es/components/internal/Button/CopyIconButton.js +2 -0
  324. package/dist/es/components/internal/Button/CopyIconButton.js.map +1 -0
  325. package/dist/es/components/internal/ButtonGroup/ButtonGroup.js +1 -1
  326. package/dist/es/components/internal/ButtonGroup/ButtonGroup.js.map +1 -1
  327. package/dist/es/components/internal/ClickToPay/ClickToPayComponent.js +1 -1
  328. package/dist/es/components/internal/ClickToPay/ClickToPayComponent.js.map +1 -1
  329. package/dist/es/components/internal/ClickToPay/components/CtPBrand/CtPBrand.js +1 -1
  330. package/dist/es/components/internal/ClickToPay/components/CtPBrand/CtPBrand.js.map +1 -1
  331. package/dist/es/components/internal/ClickToPay/components/CtPCards/CtPCards.js +1 -1
  332. package/dist/es/components/internal/ClickToPay/components/CtPCards/CtPCards.js.map +1 -1
  333. package/dist/es/components/internal/ClickToPay/components/CtPCards/CtPCardsList/CtPCardsList.js +1 -1
  334. package/dist/es/components/internal/ClickToPay/components/CtPCards/CtPCardsList/CtPCardsList.js.map +1 -1
  335. package/dist/es/components/internal/ClickToPay/components/CtPCards/CtPSingleCard/CtPSingleCard.js.map +1 -1
  336. package/dist/es/components/internal/ClickToPay/components/CtPInfo/CtPInfo.js +1 -1
  337. package/dist/es/components/internal/ClickToPay/components/CtPInfo/CtPInfo.js.map +1 -1
  338. package/dist/es/components/internal/ClickToPay/components/CtPInfo/CtPInfoModal/CtPInfoModal.js +1 -1
  339. package/dist/es/components/internal/ClickToPay/components/CtPInfo/CtPInfoModal/CtPInfoModal.js.map +1 -1
  340. package/dist/es/components/internal/ClickToPay/components/CtPLoader/CtPLoader.js.map +1 -1
  341. package/dist/es/components/internal/ClickToPay/components/CtPLogin/CtPLogin.js +1 -1
  342. package/dist/es/components/internal/ClickToPay/components/CtPLogin/CtPLogin.js.map +1 -1
  343. package/dist/es/components/internal/ClickToPay/components/CtPLogin/CtPLoginInput.js +1 -1
  344. package/dist/es/components/internal/ClickToPay/components/CtPLogin/CtPLoginInput.js.map +1 -1
  345. package/dist/es/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePassword.js +1 -1
  346. package/dist/es/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePassword.js.map +1 -1
  347. package/dist/es/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPOneTimePasswordInput.js +1 -1
  348. package/dist/es/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPOneTimePasswordInput.js.map +1 -1
  349. package/dist/es/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPResendOtpLink.js +1 -1
  350. package/dist/es/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPResendOtpLink.js.map +1 -1
  351. package/dist/es/components/internal/ClickToPay/components/CtPOneTimePassword/CtPSaveCookiesCheckbox/CtPSaveCookiesCheckbox.js +1 -1
  352. package/dist/es/components/internal/ClickToPay/components/CtPOneTimePassword/CtPSaveCookiesCheckbox/CtPSaveCookiesCheckbox.js.map +1 -1
  353. package/dist/es/components/internal/ClickToPay/components/CtPSection/CtPLogoutLink.js +1 -1
  354. package/dist/es/components/internal/ClickToPay/components/CtPSection/CtPLogoutLink.js.map +1 -1
  355. package/dist/es/components/internal/ClickToPay/components/CtPSection/CtPSection.js.map +1 -1
  356. package/dist/es/components/internal/ClickToPay/context/ClickToPayProvider.js +1 -1
  357. package/dist/es/components/internal/ClickToPay/context/ClickToPayProvider.js.map +1 -1
  358. package/dist/es/components/internal/ClickToPay/errors/TimeoutError.js.map +1 -1
  359. package/dist/es/components/internal/ClickToPay/models/ShopperCard.js.map +1 -1
  360. package/dist/es/components/internal/ClickToPay/services/ClickToPayService.js +1 -1
  361. package/dist/es/components/internal/ClickToPay/services/ClickToPayService.js.map +1 -1
  362. package/dist/es/components/internal/ClickToPay/services/create-clicktopay-service.js.map +1 -1
  363. package/dist/es/components/internal/ClickToPay/services/execute-with-timeout.js +1 -1
  364. package/dist/es/components/internal/ClickToPay/services/execute-with-timeout.js.map +1 -1
  365. package/dist/es/components/internal/ClickToPay/services/sdks/MastercardSdk.js.map +1 -1
  366. package/dist/es/components/internal/ClickToPay/services/sdks/SrcSdkLoader.js +1 -1
  367. package/dist/es/components/internal/ClickToPay/services/sdks/SrcSdkLoader.js.map +1 -1
  368. package/dist/es/components/internal/ClickToPay/services/sdks/SrciError.js.map +1 -1
  369. package/dist/es/components/internal/ClickToPay/services/sdks/VisaSdk.js.map +1 -1
  370. package/dist/es/components/internal/ClickToPay/services/sdks/config.js.map +1 -1
  371. package/dist/es/components/internal/ClickToPay/services/utils.js +1 -1
  372. package/dist/es/components/internal/ClickToPay/services/utils.js.map +1 -1
  373. package/dist/es/components/internal/CompanyDetails/CompanyDetails.js +1 -1
  374. package/dist/es/components/internal/CompanyDetails/CompanyDetails.js.map +1 -1
  375. package/dist/es/components/internal/CompanyDetails/ReadOnlyCompanyDetails.js.map +1 -1
  376. package/dist/es/components/internal/CompanyDetails/utils.js.map +1 -1
  377. package/dist/es/components/internal/ConsentCheckboxLabel/ConsentCheckboxLabel.js.map +1 -1
  378. package/dist/es/components/internal/Countdown/CountdownA11yReporter.js +1 -1
  379. package/dist/es/components/internal/Countdown/CountdownA11yReporter.js.map +1 -1
  380. package/dist/es/components/internal/Countdown/index.js +1 -1
  381. package/dist/es/components/internal/Countdown/index.js.map +1 -1
  382. package/dist/es/components/internal/Countdown/useCountdownA11yReporter.js +1 -1
  383. package/dist/es/components/internal/Countdown/useCountdownA11yReporter.js.map +1 -1
  384. package/dist/es/components/internal/Countdown/utils.js.map +1 -1
  385. package/dist/es/components/internal/DetailsTable/DetailsTable.js +1 -1
  386. package/dist/es/components/internal/DetailsTable/DetailsTable.js.map +1 -1
  387. package/dist/es/components/internal/DisclaimerMessage/DisclaimerMessage.js +1 -1
  388. package/dist/es/components/internal/DisclaimerMessage/DisclaimerMessage.js.map +1 -1
  389. package/dist/es/components/internal/ExpandButton/ExpandButton.js +1 -1
  390. package/dist/es/components/internal/ExpandButton/ExpandButton.js.map +1 -1
  391. package/dist/es/components/internal/FormFields/Checkbox/Checkbox.js +1 -1
  392. package/dist/es/components/internal/FormFields/Checkbox/Checkbox.js.map +1 -1
  393. package/dist/es/components/internal/FormFields/Field/Field.js +1 -1
  394. package/dist/es/components/internal/FormFields/Field/Field.js.map +1 -1
  395. package/dist/es/components/internal/FormFields/Fieldset/Fieldset.js +1 -1
  396. package/dist/es/components/internal/FormFields/Fieldset/Fieldset.js.map +1 -1
  397. package/dist/es/components/internal/FormFields/InputBase.js +1 -1
  398. package/dist/es/components/internal/FormFields/InputBase.js.map +1 -1
  399. package/dist/es/components/internal/FormFields/InputDate/InputDate.js.map +1 -1
  400. package/dist/es/components/internal/FormFields/InputDate/utils.js.map +1 -1
  401. package/dist/es/components/internal/FormFields/RadioGroup/RadioGroup.js +1 -1
  402. package/dist/es/components/internal/FormFields/RadioGroup/RadioGroup.js.map +1 -1
  403. package/dist/es/components/internal/FormFields/RadioGroupExtended/RadioButtonIcon.js.map +1 -1
  404. package/dist/es/components/internal/FormFields/RadioGroupExtended/RadioGroupExtended.js +1 -1
  405. package/dist/es/components/internal/FormFields/RadioGroupExtended/RadioGroupExtended.js.map +1 -1
  406. package/dist/es/components/internal/FormFields/Select/Select.js +1 -1
  407. package/dist/es/components/internal/FormFields/Select/Select.js.map +1 -1
  408. package/dist/es/components/internal/FormFields/Select/components/SelectButton.js +1 -1
  409. package/dist/es/components/internal/FormFields/Select/components/SelectButton.js.map +1 -1
  410. package/dist/es/components/internal/FormFields/Select/components/SelectList.js +1 -1
  411. package/dist/es/components/internal/FormFields/Select/components/SelectList.js.map +1 -1
  412. package/dist/es/components/internal/FormFields/Select/components/SelectListItem.js.map +1 -1
  413. package/dist/es/components/internal/FormFields/utils.js.map +1 -1
  414. package/dist/es/components/internal/FormInstruction/FormInstruction.js.map +1 -1
  415. package/dist/es/components/internal/IFrame/Iframe.js +1 -1
  416. package/dist/es/components/internal/IFrame/Iframe.js.map +1 -1
  417. package/dist/es/components/internal/IbanInput/IbanInput.js +1 -1
  418. package/dist/es/components/internal/IbanInput/IbanInput.js.map +1 -1
  419. package/dist/es/components/internal/IbanInput/utils.js +1 -1
  420. package/dist/es/components/internal/IbanInput/utils.js.map +1 -1
  421. package/dist/es/components/internal/IbanInput/validate.js.map +1 -1
  422. package/dist/es/components/internal/Img/Img.js +1 -1
  423. package/dist/es/components/internal/Img/Img.js.map +1 -1
  424. package/dist/es/components/internal/IssuerList/IssuerButtonGroup/IssuerButtonGroup.js +1 -1
  425. package/dist/es/components/internal/IssuerList/IssuerButtonGroup/IssuerButtonGroup.js.map +1 -1
  426. package/dist/es/components/internal/IssuerList/IssuerList.js +1 -1
  427. package/dist/es/components/internal/IssuerList/IssuerList.js.map +1 -1
  428. package/dist/es/components/internal/LoadingWrapper/LoadingWrapper.js.map +1 -1
  429. package/dist/es/components/internal/Modal/Modal.js +1 -1
  430. package/dist/es/components/internal/Modal/Modal.js.map +1 -1
  431. package/dist/es/components/internal/Modal/useModal.js +1 -1
  432. package/dist/es/components/internal/Modal/useModal.js.map +1 -1
  433. package/dist/es/components/internal/Modal/useTrapFocus.js +1 -1
  434. package/dist/es/components/internal/Modal/useTrapFocus.js.map +1 -1
  435. package/dist/es/components/internal/OpenInvoice/OpenInvoice.js +1 -1
  436. package/dist/es/components/internal/OpenInvoice/OpenInvoice.js.map +1 -1
  437. package/dist/es/components/internal/OpenInvoice/useSRPanelForOpenInvoiceErrors.js +1 -1
  438. package/dist/es/components/internal/OpenInvoice/useSRPanelForOpenInvoiceErrors.js.map +1 -1
  439. package/dist/es/components/internal/OpenInvoice/utils.js +1 -1
  440. package/dist/es/components/internal/OpenInvoice/utils.js.map +1 -1
  441. package/dist/es/components/internal/PayButton/utils.js.map +1 -1
  442. package/dist/es/components/internal/PersonalDetails/PersonalDetails.js +1 -1
  443. package/dist/es/components/internal/PersonalDetails/PersonalDetails.js.map +1 -1
  444. package/dist/es/components/internal/PersonalDetails/ReadOnlyPersonalDetails.js.map +1 -1
  445. package/dist/es/components/internal/PersonalDetails/utils.js.map +1 -1
  446. package/dist/es/components/internal/PhoneInput/PhoneInputFields.js +1 -1
  447. package/dist/es/components/internal/PhoneInput/PhoneInputFields.js.map +1 -1
  448. package/dist/es/components/internal/PhoneInput/PhoneInputForm.js +1 -1
  449. package/dist/es/components/internal/PhoneInput/PhoneInputForm.js.map +1 -1
  450. package/dist/es/components/internal/PhoneInput/usePhonePrefixes.js +1 -1
  451. package/dist/es/components/internal/PhoneInput/usePhonePrefixes.js.map +1 -1
  452. package/dist/es/components/internal/PhoneInput/validate.js.map +1 -1
  453. package/dist/es/components/internal/QRLoader/QRLoader.js +1 -1
  454. package/dist/es/components/internal/QRLoader/QRLoader.js.map +1 -1
  455. package/dist/es/components/internal/RedirectButton/RedirectButton.js.map +1 -1
  456. package/dist/es/components/internal/SecuredFields/SFP/SFPUtils.js +1 -1
  457. package/dist/es/components/internal/SecuredFields/SFP/SFPUtils.js.map +1 -1
  458. package/dist/es/components/internal/SecuredFields/SFP/SecuredFieldsProvider.js +1 -1
  459. package/dist/es/components/internal/SecuredFields/SFP/SecuredFieldsProvider.js.map +1 -1
  460. package/dist/es/components/internal/SecuredFields/SFP/SecuredFieldsProviderHandlers.js +1 -1
  461. package/dist/es/components/internal/SecuredFields/SFP/SecuredFieldsProviderHandlers.js.map +1 -1
  462. package/dist/es/components/internal/SecuredFields/SFP/defaultProps.js.map +1 -1
  463. package/dist/es/components/internal/SecuredFields/binLookup/extensions.js +1 -1
  464. package/dist/es/components/internal/SecuredFields/binLookup/extensions.js.map +1 -1
  465. package/dist/es/components/internal/SecuredFields/binLookup/triggerBinLookUp.js +1 -1
  466. package/dist/es/components/internal/SecuredFields/binLookup/triggerBinLookUp.js.map +1 -1
  467. package/dist/es/components/internal/SecuredFields/lib/CSF/AbstractCSF.js.map +1 -1
  468. package/dist/es/components/internal/SecuredFields/lib/CSF/CSF.js.map +1 -1
  469. package/dist/es/components/internal/SecuredFields/lib/CSF/extensions/createSecuredFields.js +1 -1
  470. package/dist/es/components/internal/SecuredFields/lib/CSF/extensions/createSecuredFields.js.map +1 -1
  471. package/dist/es/components/internal/SecuredFields/lib/CSF/extensions/handleBrandFromBinLookup.js +1 -1
  472. package/dist/es/components/internal/SecuredFields/lib/CSF/extensions/handleBrandFromBinLookup.js.map +1 -1
  473. package/dist/es/components/internal/SecuredFields/lib/CSF/extensions/handleConfig.js.map +1 -1
  474. package/dist/es/components/internal/SecuredFields/lib/CSF/extensions/handleIOSTouchEvents.js +1 -1
  475. package/dist/es/components/internal/SecuredFields/lib/CSF/extensions/handleIOSTouchEvents.js.map +1 -1
  476. package/dist/es/components/internal/SecuredFields/lib/CSF/extensions/handleTab.js.map +1 -1
  477. package/dist/es/components/internal/SecuredFields/lib/CSF/initCSF.js.map +1 -1
  478. package/dist/es/components/internal/SecuredFields/lib/CSF/partials/postMessageToAllIframes.js +1 -1
  479. package/dist/es/components/internal/SecuredFields/lib/CSF/partials/postMessageToAllIframes.js.map +1 -1
  480. package/dist/es/components/internal/SecuredFields/lib/CSF/partials/processAutoComplete.js +1 -1
  481. package/dist/es/components/internal/SecuredFields/lib/CSF/partials/processAutoComplete.js.map +1 -1
  482. package/dist/es/components/internal/SecuredFields/lib/CSF/partials/validateForm.js.map +1 -1
  483. package/dist/es/components/internal/SecuredFields/lib/CSF/utils/callbackUtils.js.map +1 -1
  484. package/dist/es/components/internal/SecuredFields/lib/CSF/utils/cardType.js +1 -1
  485. package/dist/es/components/internal/SecuredFields/lib/CSF/utils/cardType.js.map +1 -1
  486. package/dist/es/components/internal/SecuredFields/lib/CSF/utils/destroySecuredFields.js +1 -1
  487. package/dist/es/components/internal/SecuredFields/lib/CSF/utils/destroySecuredFields.js.map +1 -1
  488. package/dist/es/components/internal/SecuredFields/lib/CSF/utils/iframes/postMessageToIframe.js.map +1 -1
  489. package/dist/es/components/internal/SecuredFields/lib/CSF/utils/iframes/postMessageValidation.js.map +1 -1
  490. package/dist/es/components/internal/SecuredFields/lib/CSF/utils/processErrors.js.map +1 -1
  491. package/dist/es/components/internal/SecuredFields/lib/CSF/utils/tabbing/utils.js +1 -1
  492. package/dist/es/components/internal/SecuredFields/lib/CSF/utils/tabbing/utils.js.map +1 -1
  493. package/dist/es/components/internal/SecuredFields/lib/CSF/utils/userAgent.js.map +1 -1
  494. package/dist/es/components/internal/SecuredFields/lib/securedField/AbstractSecuredField.js.map +1 -1
  495. package/dist/es/components/internal/SecuredFields/lib/securedField/SecuredField.js.map +1 -1
  496. package/dist/es/components/internal/SecuredFields/lib/utilities/addContextTranslations.js.map +1 -1
  497. package/dist/es/components/internal/SecuredFields/lib/utilities/commonUtils.js +1 -1
  498. package/dist/es/components/internal/SecuredFields/lib/utilities/commonUtils.js.map +1 -1
  499. package/dist/es/components/internal/SecuredFields/lib/utilities/dom.js.map +1 -1
  500. package/dist/es/components/internal/SecuredFields/lib/utilities/logger.js.map +1 -1
  501. package/dist/es/components/internal/SecuredFields/utils.js.map +1 -1
  502. package/dist/es/components/internal/SegmentedControl/SegmentedControl.js +1 -1
  503. package/dist/es/components/internal/SegmentedControl/SegmentedControl.js.map +1 -1
  504. package/dist/es/components/internal/SendCopyToEmail/SendCopyToEmail.js.map +1 -1
  505. package/dist/es/components/internal/SocialSecurityNumberBrazil/SocialSecurityNumberBrazil.js.map +1 -1
  506. package/dist/es/components/internal/SocialSecurityNumberBrazil/utils.js +1 -1
  507. package/dist/es/components/internal/SocialSecurityNumberBrazil/utils.js.map +1 -1
  508. package/dist/es/components/internal/SocialSecurityNumberBrazil/validate.js.map +1 -1
  509. package/dist/es/components/internal/StoreDetails/StoreDetails.js +1 -1
  510. package/dist/es/components/internal/StoreDetails/StoreDetails.js.map +1 -1
  511. package/dist/es/components/internal/Timeline/Timeline.js +1 -1
  512. package/dist/es/components/internal/Timeline/Timeline.js.map +1 -1
  513. package/dist/es/components/internal/Toggle/Toggle.js +1 -1
  514. package/dist/es/components/internal/Toggle/Toggle.js.map +1 -1
  515. package/dist/es/components/internal/Tooltip/SingletonTooltipProvider.js +2 -0
  516. package/dist/es/components/internal/Tooltip/SingletonTooltipProvider.js.map +1 -0
  517. package/dist/es/components/internal/Tooltip/Tooltip.js +2 -0
  518. package/dist/es/components/internal/Tooltip/Tooltip.js.map +1 -0
  519. package/dist/es/components/internal/Tooltip/TooltipController.js +2 -0
  520. package/dist/es/components/internal/Tooltip/TooltipController.js.map +1 -0
  521. package/dist/es/components/internal/UIElement/UIElement.js +1 -1
  522. package/dist/es/components/internal/UIElement/UIElement.js.map +1 -1
  523. package/dist/es/components/internal/UIElement/utils.js +1 -1
  524. package/dist/es/components/internal/UIElement/utils.js.map +1 -1
  525. package/dist/es/components/internal/Voucher/Voucher.js.map +1 -1
  526. package/dist/es/components/internal/Voucher/utils.js.map +1 -1
  527. package/dist/es/core/AdyenCheckout.js.map +1 -1
  528. package/dist/es/core/Analytics/Analytics.js +1 -1
  529. package/dist/es/core/Analytics/Analytics.js.map +1 -1
  530. package/dist/es/core/Analytics/AnalyticsErrorEvent.js.map +1 -1
  531. package/dist/es/core/Analytics/AnalyticsEvent.js.map +1 -1
  532. package/dist/es/core/Analytics/AnalyticsInfoEvent.js.map +1 -1
  533. package/dist/es/core/Analytics/AnalyticsLogEvent.js.map +1 -1
  534. package/dist/es/core/Analytics/EventsQueue.js +1 -1
  535. package/dist/es/core/Analytics/EventsQueue.js.map +1 -1
  536. package/dist/es/core/Analytics/constants.js.map +1 -1
  537. package/dist/es/core/Analytics/utils.js +1 -1
  538. package/dist/es/core/Analytics/utils.js.map +1 -1
  539. package/dist/es/core/CheckoutSession/CheckoutSession.js +1 -1
  540. package/dist/es/core/CheckoutSession/CheckoutSession.js.map +1 -1
  541. package/dist/es/core/CheckoutSession/utils.js.map +1 -1
  542. package/dist/es/core/Context/CoreProvider.js +1 -1
  543. package/dist/es/core/Context/CoreProvider.js.map +1 -1
  544. package/dist/es/core/Context/Resources.js +1 -1
  545. package/dist/es/core/Context/Resources.js.map +1 -1
  546. package/dist/es/core/Context/useImage.js +1 -1
  547. package/dist/es/core/Context/useImage.js.map +1 -1
  548. package/dist/es/core/Environment/Environment.js.map +1 -1
  549. package/dist/es/core/Errors/AdyenCheckoutError.js.map +1 -1
  550. package/dist/es/core/Errors/CancelError.js.map +1 -1
  551. package/dist/es/core/Errors/SRMessages.js +1 -1
  552. package/dist/es/core/Errors/SRMessages.js.map +1 -1
  553. package/dist/es/core/Errors/SRPanel.js +1 -1
  554. package/dist/es/core/Errors/SRPanel.js.map +1 -1
  555. package/dist/es/core/Errors/SRPanelProvider.js.map +1 -1
  556. package/dist/es/core/Errors/useA11yReporter.js +1 -1
  557. package/dist/es/core/Errors/useA11yReporter.js.map +1 -1
  558. package/dist/es/core/Errors/utils.js +1 -1
  559. package/dist/es/core/Errors/utils.js.map +1 -1
  560. package/dist/es/core/ProcessResponse/PaymentAction/actionTypes.js.map +1 -1
  561. package/dist/es/core/ProcessResponse/PaymentMethods/PaymentMethods.js +1 -1
  562. package/dist/es/core/ProcessResponse/PaymentMethods/PaymentMethods.js.map +1 -1
  563. package/dist/es/core/ProcessResponse/PaymentMethods/filters.js.map +1 -1
  564. package/dist/es/core/ProcessResponse/PaymentMethods/utils.js.map +1 -1
  565. package/dist/es/core/ProcessResponse/process-response.js.map +1 -1
  566. package/dist/es/core/RiskModule/RiskModule.js +1 -1
  567. package/dist/es/core/RiskModule/RiskModule.js.map +1 -1
  568. package/dist/es/core/RiskModule/components/DeviceFingerprint/DeviceFingerprint.js +1 -1
  569. package/dist/es/core/RiskModule/components/DeviceFingerprint/DeviceFingerprint.js.map +1 -1
  570. package/dist/es/core/RiskModule/components/DeviceFingerprint/GetDeviceFingerprint.js +1 -1
  571. package/dist/es/core/RiskModule/components/DeviceFingerprint/GetDeviceFingerprint.js.map +1 -1
  572. package/dist/es/core/RiskModule/components/DeviceFingerprint/utils.js.map +1 -1
  573. package/dist/es/core/Services/analytics/collect-id.js +1 -1
  574. package/dist/es/core/Services/analytics/collect-id.js.map +1 -1
  575. package/dist/es/core/Services/http.js +1 -1
  576. package/dist/es/core/Services/http.js.map +1 -1
  577. package/dist/es/core/config.js.map +1 -1
  578. package/dist/es/core/core.js +1 -1
  579. package/dist/es/core/core.js.map +1 -1
  580. package/dist/es/core/core.registry.js +1 -1
  581. package/dist/es/core/core.registry.js.map +1 -1
  582. package/dist/es/core/utils.js +1 -1
  583. package/dist/es/core/utils.js.map +1 -1
  584. package/dist/es/external/classnames/index.js.map +1 -1
  585. package/dist/es/external/preact/compat/dist/compat.js +2 -0
  586. package/dist/es/external/preact/compat/dist/compat.js.map +1 -0
  587. package/dist/es/external/preact/dist/preact.js +1 -1
  588. package/dist/es/external/preact/dist/preact.js.map +1 -1
  589. package/dist/es/external/preact/hooks/dist/hooks.js +1 -1
  590. package/dist/es/external/preact/hooks/dist/hooks.js.map +1 -1
  591. package/dist/es/index.d.ts +14 -3
  592. package/dist/es/language/Language.js.map +1 -1
  593. package/dist/es/language/utils.js +1 -1
  594. package/dist/es/language/utils.js.map +1 -1
  595. package/dist/es/utils/Script.js +1 -1
  596. package/dist/es/utils/Script.js.map +1 -1
  597. package/dist/es/utils/Storage.js.map +1 -1
  598. package/dist/es/utils/Validator/ValidationRuleResult.js.map +1 -1
  599. package/dist/es/utils/Validator/Validator.js +1 -1
  600. package/dist/es/utils/Validator/Validator.js.map +1 -1
  601. package/dist/es/utils/Validator/defaultRules.js.map +1 -1
  602. package/dist/es/utils/amount-util.js.map +1 -1
  603. package/dist/es/utils/arrayUtils.js +1 -1
  604. package/dist/es/utils/arrayUtils.js.map +1 -1
  605. package/dist/es/utils/base64.js +1 -1
  606. package/dist/es/utils/base64.js.map +1 -1
  607. package/dist/es/utils/clipboard.js +1 -1
  608. package/dist/es/utils/clipboard.js.map +1 -1
  609. package/dist/es/utils/commonUtils.js +1 -1
  610. package/dist/es/utils/commonUtils.js.map +1 -1
  611. package/dist/es/utils/debounce.js +1 -1
  612. package/dist/es/utils/debounce.js.map +1 -1
  613. package/dist/es/utils/detectInIframe.js.map +1 -1
  614. package/dist/es/utils/get-issuer-image.js.map +1 -1
  615. package/dist/es/utils/get-process-message-handler.js.map +1 -1
  616. package/dist/es/utils/getErrorMessage.js.map +1 -1
  617. package/dist/es/utils/getOrigin.js.map +1 -1
  618. package/dist/es/utils/getProp.js +1 -1
  619. package/dist/es/utils/getProp.js.map +1 -1
  620. package/dist/es/utils/hasOwnProperty.js.map +1 -1
  621. package/dist/es/utils/hookUtils.js +1 -1
  622. package/dist/es/utils/hookUtils.js.map +1 -1
  623. package/dist/es/utils/idGenerator.js.map +1 -1
  624. package/dist/es/utils/isValidURL.js.map +1 -1
  625. package/dist/es/utils/promiseTimeout.js +1 -1
  626. package/dist/es/utils/promiseTimeout.js.map +1 -1
  627. package/dist/es/utils/regex.js.map +1 -1
  628. package/dist/es/utils/setFocus.js.map +1 -1
  629. package/dist/es/utils/useAutoFocus.js +1 -1
  630. package/dist/es/utils/useAutoFocus.js.map +1 -1
  631. package/dist/es/utils/useForm/reducer.js +1 -1
  632. package/dist/es/utils/useForm/reducer.js.map +1 -1
  633. package/dist/es/utils/useForm/useForm.js +1 -1
  634. package/dist/es/utils/useForm/useForm.js.map +1 -1
  635. package/dist/es/utils/useIsMobile.js +1 -1
  636. package/dist/es/utils/useIsMobile.js.map +1 -1
  637. package/dist/es/utils/uuid.js +1 -1
  638. package/dist/es/utils/uuid.js.map +1 -1
  639. package/dist/es/utils/validator-utils.js.map +1 -1
  640. package/dist/es-legacy/adyen.css +6 -3
  641. package/dist/es-legacy/adyen.css.map +1 -1
  642. package/dist/es-legacy/components/ANCV/ANCV.js +1 -1
  643. package/dist/es-legacy/components/ANCV/ANCV.js.map +1 -1
  644. package/dist/es-legacy/components/ANCV/components/ANCVAwait/config.js.map +1 -1
  645. package/dist/es-legacy/components/ANCV/components/ANCVInput.js +1 -1
  646. package/dist/es-legacy/components/ANCV/components/ANCVInput.js.map +1 -1
  647. package/dist/es-legacy/components/Ach/Ach.js +1 -1
  648. package/dist/es-legacy/components/Ach/Ach.js.map +1 -1
  649. package/dist/es-legacy/components/Ach/components/AccountTypeSelector.js +1 -1
  650. package/dist/es-legacy/components/Ach/components/AccountTypeSelector.js.map +1 -1
  651. package/dist/es-legacy/components/Ach/components/AchComponent.js +1 -1
  652. package/dist/es-legacy/components/Ach/components/AchComponent.js.map +1 -1
  653. package/dist/es-legacy/components/Ach/components/useSRPanelForACHErrors.js +1 -1
  654. package/dist/es-legacy/components/Ach/components/useSRPanelForACHErrors.js.map +1 -1
  655. package/dist/es-legacy/components/Ach/components/validate.js.map +1 -1
  656. package/dist/es-legacy/components/Address/Address.js +1 -1
  657. package/dist/es-legacy/components/Address/Address.js.map +1 -1
  658. package/dist/es-legacy/components/Affirm/Affirm.js +1 -1
  659. package/dist/es-legacy/components/Affirm/Affirm.js.map +1 -1
  660. package/dist/es-legacy/components/AfterPay/AfterPay.js +1 -1
  661. package/dist/es-legacy/components/AfterPay/AfterPay.js.map +1 -1
  662. package/dist/es-legacy/components/AfterPay/AfterPayB2B.js +1 -1
  663. package/dist/es-legacy/components/AfterPay/AfterPayB2B.js.map +1 -1
  664. package/dist/es-legacy/components/AmazonPay/AmazonPay.js +1 -1
  665. package/dist/es-legacy/components/AmazonPay/AmazonPay.js.map +1 -1
  666. package/dist/es-legacy/components/AmazonPay/components/AmazonPayButton.js +1 -1
  667. package/dist/es-legacy/components/AmazonPay/components/AmazonPayButton.js.map +1 -1
  668. package/dist/es-legacy/components/AmazonPay/components/AmazonPayComponent.js +1 -1
  669. package/dist/es-legacy/components/AmazonPay/components/AmazonPayComponent.js.map +1 -1
  670. package/dist/es-legacy/components/AmazonPay/components/ChangePaymentDetailsButton.js +1 -1
  671. package/dist/es-legacy/components/AmazonPay/components/ChangePaymentDetailsButton.js.map +1 -1
  672. package/dist/es-legacy/components/AmazonPay/components/OrderButton.js +1 -1
  673. package/dist/es-legacy/components/AmazonPay/components/OrderButton.js.map +1 -1
  674. package/dist/es-legacy/components/AmazonPay/components/SignOutButton.js +1 -1
  675. package/dist/es-legacy/components/AmazonPay/components/SignOutButton.js.map +1 -1
  676. package/dist/es-legacy/components/AmazonPay/defaultProps.js.map +1 -1
  677. package/dist/es-legacy/components/AmazonPay/utils.js +1 -1
  678. package/dist/es-legacy/components/AmazonPay/utils.js.map +1 -1
  679. package/dist/es-legacy/components/ApplePay/ApplePay.js +1 -1
  680. package/dist/es-legacy/components/ApplePay/ApplePay.js.map +1 -1
  681. package/dist/es-legacy/components/ApplePay/components/ApplePayButton.js.map +1 -1
  682. package/dist/es-legacy/components/ApplePay/services/ApplePayService.js +1 -1
  683. package/dist/es-legacy/components/ApplePay/services/ApplePayService.js.map +1 -1
  684. package/dist/es-legacy/components/ApplePay/utils/format-applepay-contact-to-adyen-format.js +1 -1
  685. package/dist/es-legacy/components/ApplePay/utils/format-applepay-contact-to-adyen-format.js.map +1 -1
  686. package/dist/es-legacy/components/ApplePay/utils/map-adyen-brands-to-applepay-brands.js +1 -1
  687. package/dist/es-legacy/components/ApplePay/utils/map-adyen-brands-to-applepay-brands.js.map +1 -1
  688. package/dist/es-legacy/components/ApplePay/utils/payment-request.js.map +1 -1
  689. package/dist/es-legacy/components/Atome/Atome.js +1 -1
  690. package/dist/es-legacy/components/Atome/Atome.js.map +1 -1
  691. package/dist/es-legacy/components/Atome/config.js +1 -1
  692. package/dist/es-legacy/components/Atome/config.js.map +1 -1
  693. package/dist/es-legacy/components/BacsDD/BacsDD.js +1 -1
  694. package/dist/es-legacy/components/BacsDD/BacsDD.js.map +1 -1
  695. package/dist/es-legacy/components/BacsDD/components/BacsInput.js +1 -1
  696. package/dist/es-legacy/components/BacsDD/components/BacsInput.js.map +1 -1
  697. package/dist/es-legacy/components/BacsDD/components/BacsResult.js +1 -1
  698. package/dist/es-legacy/components/BacsDD/components/BacsResult.js.map +1 -1
  699. package/dist/es-legacy/components/BankTransfer/BankTransfer.js +1 -1
  700. package/dist/es-legacy/components/BankTransfer/BankTransfer.js.map +1 -1
  701. package/dist/es-legacy/components/BankTransfer/components/BankTransferInput/BankTransferInput.js +1 -1
  702. package/dist/es-legacy/components/BankTransfer/components/BankTransferInput/BankTransferInput.js.map +1 -1
  703. package/dist/es-legacy/components/BankTransfer/components/BankTransferInput/validationRule.js +2 -0
  704. package/dist/es-legacy/components/BankTransfer/components/BankTransferInput/validationRule.js.map +1 -0
  705. package/dist/es-legacy/components/BankTransfer/components/BankTransferResult/BankTransferResult.js +1 -1
  706. package/dist/es-legacy/components/BankTransfer/components/BankTransferResult/BankTransferResult.js.map +1 -1
  707. package/dist/es-legacy/components/BankTransfer/components/BankTransferResult/BankTransferResultInstructions.js +2 -0
  708. package/dist/es-legacy/components/BankTransfer/components/BankTransferResult/BankTransferResultInstructions.js.map +1 -0
  709. package/dist/es-legacy/components/BankTransfer/components/BankTransferResult/BankTransferVoucher.js +2 -0
  710. package/dist/es-legacy/components/BankTransfer/components/BankTransferResult/BankTransferVoucher.js.map +1 -0
  711. package/dist/es-legacy/components/BcmcMobile/BcmcMobile.js +1 -1
  712. package/dist/es-legacy/components/BcmcMobile/BcmcMobile.js.map +1 -1
  713. package/dist/es-legacy/components/BcmcMobile/config.js.map +1 -1
  714. package/dist/es-legacy/components/BillDesk/BillDeskOnline.js +1 -1
  715. package/dist/es-legacy/components/BillDesk/BillDeskOnline.js.map +1 -1
  716. package/dist/es-legacy/components/BillDesk/BillDeskWallet.js +1 -1
  717. package/dist/es-legacy/components/BillDesk/BillDeskWallet.js.map +1 -1
  718. package/dist/es-legacy/components/Blik/Blik.js +1 -1
  719. package/dist/es-legacy/components/Blik/Blik.js.map +1 -1
  720. package/dist/es-legacy/components/Blik/components/BlikInput.js +1 -1
  721. package/dist/es-legacy/components/Blik/components/BlikInput.js.map +1 -1
  722. package/dist/es-legacy/components/Blik/config.js.map +1 -1
  723. package/dist/es-legacy/components/Boleto/Boleto.js +1 -1
  724. package/dist/es-legacy/components/Boleto/Boleto.js.map +1 -1
  725. package/dist/es-legacy/components/Boleto/components/BoletoInput/BoletoInput.js +1 -1
  726. package/dist/es-legacy/components/Boleto/components/BoletoInput/BoletoInput.js.map +1 -1
  727. package/dist/es-legacy/components/Boleto/components/BoletoVoucherResult/BoletoVoucherResult.js +1 -1
  728. package/dist/es-legacy/components/Boleto/components/BoletoVoucherResult/BoletoVoucherResult.js.map +1 -1
  729. package/dist/es-legacy/components/Card/Bancontact.js +1 -1
  730. package/dist/es-legacy/components/Card/Bancontact.js.map +1 -1
  731. package/dist/es-legacy/components/Card/Card.js +1 -1
  732. package/dist/es-legacy/components/Card/Card.js.map +1 -1
  733. package/dist/es-legacy/components/Card/components/CardInput/CardInput.js +1 -1
  734. package/dist/es-legacy/components/Card/components/CardInput/CardInput.js.map +1 -1
  735. package/dist/es-legacy/components/Card/components/CardInput/components/AvailableBrands/AvailableBrands.js +1 -1
  736. package/dist/es-legacy/components/Card/components/CardInput/components/AvailableBrands/AvailableBrands.js.map +1 -1
  737. package/dist/es-legacy/components/Card/components/CardInput/components/BrandIcon.js.map +1 -1
  738. package/dist/es-legacy/components/Card/components/CardInput/components/CVC.js.map +1 -1
  739. package/dist/es-legacy/components/Card/components/CardInput/components/CardFields.js +1 -1
  740. package/dist/es-legacy/components/Card/components/CardInput/components/CardFields.js.map +1 -1
  741. package/dist/es-legacy/components/Card/components/CardInput/components/CardFieldsWrapper.js +1 -1
  742. package/dist/es-legacy/components/Card/components/CardInput/components/CardFieldsWrapper.js.map +1 -1
  743. package/dist/es-legacy/components/Card/components/CardInput/components/CardNumber.js +1 -1
  744. package/dist/es-legacy/components/Card/components/CardInput/components/CardNumber.js.map +1 -1
  745. package/dist/es-legacy/components/Card/components/CardInput/components/DualBrandingIcon/DualBrandingIcon.js.map +1 -1
  746. package/dist/es-legacy/components/Card/components/CardInput/components/ExpirationDate.js.map +1 -1
  747. package/dist/es-legacy/components/Card/components/CardInput/components/FieldLabelAlternative.js +1 -1
  748. package/dist/es-legacy/components/Card/components/CardInput/components/FieldLabelAlternative.js.map +1 -1
  749. package/dist/es-legacy/components/Card/components/CardInput/components/Installments/Installments.js +1 -1
  750. package/dist/es-legacy/components/Card/components/CardInput/components/Installments/Installments.js.map +1 -1
  751. package/dist/es-legacy/components/Card/components/CardInput/components/KCPAuthentication.js +1 -1
  752. package/dist/es-legacy/components/Card/components/CardInput/components/KCPAuthentication.js.map +1 -1
  753. package/dist/es-legacy/components/Card/components/CardInput/components/StoredCardFields.js +1 -1
  754. package/dist/es-legacy/components/Card/components/CardInput/components/StoredCardFields.js.map +1 -1
  755. package/dist/es-legacy/components/Card/components/CardInput/components/StoredCardFieldsWrapper.js.map +1 -1
  756. package/dist/es-legacy/components/Card/components/CardInput/defaultProps.js.map +1 -1
  757. package/dist/es-legacy/components/Card/components/CardInput/handlers.js +1 -1
  758. package/dist/es-legacy/components/Card/components/CardInput/handlers.js.map +1 -1
  759. package/dist/es-legacy/components/Card/components/CardInput/useSRPanelForCardInputErrors.js +1 -1
  760. package/dist/es-legacy/components/Card/components/CardInput/useSRPanelForCardInputErrors.js.map +1 -1
  761. package/dist/es-legacy/components/Card/components/CardInput/utils.js +1 -1
  762. package/dist/es-legacy/components/Card/components/CardInput/utils.js.map +1 -1
  763. package/dist/es-legacy/components/Card/components/CardInput/validate.js +1 -1
  764. package/dist/es-legacy/components/Card/components/CardInput/validate.js.map +1 -1
  765. package/dist/es-legacy/components/Card/components/ClickToPayHolder.js +1 -1
  766. package/dist/es-legacy/components/Card/components/ClickToPayHolder.js.map +1 -1
  767. package/dist/es-legacy/components/Card/components/ClickToPayWrapper.js.map +1 -1
  768. package/dist/es-legacy/components/Card/components/Fastlane/FastlaneSignup.js +1 -1
  769. package/dist/es-legacy/components/Card/components/Fastlane/FastlaneSignup.js.map +1 -1
  770. package/dist/es-legacy/components/Card/components/Fastlane/InfoButton.js +1 -1
  771. package/dist/es-legacy/components/Card/components/Fastlane/InfoButton.js.map +1 -1
  772. package/dist/es-legacy/components/Card/components/Fastlane/InfoModal.js +1 -1
  773. package/dist/es-legacy/components/Card/components/Fastlane/InfoModal.js.map +1 -1
  774. package/dist/es-legacy/components/Card/components/Fastlane/USOnlyPhoneInput.js +1 -1
  775. package/dist/es-legacy/components/Card/components/Fastlane/USOnlyPhoneInput.js.map +1 -1
  776. package/dist/es-legacy/components/Card/components/Fastlane/utils/validate-configuration.js +1 -1
  777. package/dist/es-legacy/components/Card/components/Fastlane/utils/validate-configuration.js.map +1 -1
  778. package/dist/es-legacy/components/CashAppPay/CashAppPay.js +1 -1
  779. package/dist/es-legacy/components/CashAppPay/CashAppPay.js.map +1 -1
  780. package/dist/es-legacy/components/CashAppPay/components/CashAppComponent.js +1 -1
  781. package/dist/es-legacy/components/CashAppPay/components/CashAppComponent.js.map +1 -1
  782. package/dist/es-legacy/components/CashAppPay/defaultProps.js.map +1 -1
  783. package/dist/es-legacy/components/CashAppPay/services/CashAppService.js +1 -1
  784. package/dist/es-legacy/components/CashAppPay/services/CashAppService.js.map +1 -1
  785. package/dist/es-legacy/components/ClickToPay/ClickToPay.js +1 -1
  786. package/dist/es-legacy/components/ClickToPay/ClickToPay.js.map +1 -1
  787. package/dist/es-legacy/components/CustomCard/CustomCard.js +1 -1
  788. package/dist/es-legacy/components/CustomCard/CustomCard.js.map +1 -1
  789. package/dist/es-legacy/components/CustomCard/CustomCardInput/CustomCardInput.js +1 -1
  790. package/dist/es-legacy/components/CustomCard/CustomCardInput/CustomCardInput.js.map +1 -1
  791. package/dist/es-legacy/components/Doku/Doku.js +1 -1
  792. package/dist/es-legacy/components/Doku/Doku.js.map +1 -1
  793. package/dist/es-legacy/components/Doku/components/DokuInput/DokuInput.js.map +1 -1
  794. package/dist/es-legacy/components/Doku/components/DokuVoucherResult/DokuVoucherResult.js +1 -1
  795. package/dist/es-legacy/components/Doku/components/DokuVoucherResult/DokuVoucherResult.js.map +1 -1
  796. package/dist/es-legacy/components/Donation/Donation.js +1 -1
  797. package/dist/es-legacy/components/Donation/Donation.js.map +1 -1
  798. package/dist/es-legacy/components/Donation/components/DonationComponent.js +1 -1
  799. package/dist/es-legacy/components/Donation/components/DonationComponent.js.map +1 -1
  800. package/dist/es-legacy/components/Donation/components/FixedAmounts.js +1 -1
  801. package/dist/es-legacy/components/Donation/components/FixedAmounts.js.map +1 -1
  802. package/dist/es-legacy/components/Dragonpay/Dragonpay.js +1 -1
  803. package/dist/es-legacy/components/Dragonpay/Dragonpay.js.map +1 -1
  804. package/dist/es-legacy/components/Dragonpay/components/DragonpayInput/DragonpayInput.js +1 -1
  805. package/dist/es-legacy/components/Dragonpay/components/DragonpayInput/DragonpayInput.js.map +1 -1
  806. package/dist/es-legacy/components/Dragonpay/components/DragonpayVoucherResult/DragonpayVoucherResult.js +1 -1
  807. package/dist/es-legacy/components/Dragonpay/components/DragonpayVoucherResult/DragonpayVoucherResult.js.map +1 -1
  808. package/dist/es-legacy/components/Dropin/Dropin.js +1 -1
  809. package/dist/es-legacy/components/Dropin/Dropin.js.map +1 -1
  810. package/dist/es-legacy/components/Dropin/components/DropinComponent.js +1 -1
  811. package/dist/es-legacy/components/Dropin/components/DropinComponent.js.map +1 -1
  812. package/dist/es-legacy/components/Dropin/components/PaymentMethod/DisableOneClickConfirmation.js.map +1 -1
  813. package/dist/es-legacy/components/Dropin/components/PaymentMethod/InstantPaymentMethods.js +1 -1
  814. package/dist/es-legacy/components/Dropin/components/PaymentMethod/InstantPaymentMethods.js.map +1 -1
  815. package/dist/es-legacy/components/Dropin/components/PaymentMethod/OrderPaymentMethods.js +1 -1
  816. package/dist/es-legacy/components/Dropin/components/PaymentMethod/OrderPaymentMethods.js.map +1 -1
  817. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodBrands/PaymentMethodBrands.js +1 -1
  818. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodBrands/PaymentMethodBrands.js.map +1 -1
  819. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodItem/PaymentMethodItem.js +1 -1
  820. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodItem/PaymentMethodItem.js.map +1 -1
  821. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodList.js +1 -1
  822. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodList.js.map +1 -1
  823. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodName.js.map +1 -1
  824. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodsContainer.js +1 -1
  825. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodsContainer.js.map +1 -1
  826. package/dist/es-legacy/components/Dropin/components/PaymentMethod/useBrandLogoConfiguration.js +1 -1
  827. package/dist/es-legacy/components/Dropin/components/PaymentMethod/useBrandLogoConfiguration.js.map +1 -1
  828. package/dist/es-legacy/components/Dropin/components/status/Error.js.map +1 -1
  829. package/dist/es-legacy/components/Dropin/components/status/Success.js.map +1 -1
  830. package/dist/es-legacy/components/Dropin/components/status/index.js.map +1 -1
  831. package/dist/es-legacy/components/Dropin/defaultProps.js.map +1 -1
  832. package/dist/es-legacy/components/Dropin/elements/createElements.js +1 -1
  833. package/dist/es-legacy/components/Dropin/elements/createElements.js.map +1 -1
  834. package/dist/es-legacy/components/Dropin/elements/createInstantPaymentElements.js +1 -1
  835. package/dist/es-legacy/components/Dropin/elements/createInstantPaymentElements.js.map +1 -1
  836. package/dist/es-legacy/components/Dropin/elements/createStoredElements.js +1 -1
  837. package/dist/es-legacy/components/Dropin/elements/createStoredElements.js.map +1 -1
  838. package/dist/es-legacy/components/Dropin/elements/filters.js +1 -1
  839. package/dist/es-legacy/components/Dropin/elements/filters.js.map +1 -1
  840. package/dist/es-legacy/components/Dropin/elements/getComponentConfiguration.js.map +1 -1
  841. package/dist/es-legacy/components/Dropin/elements/splitPaymentMethods.js +1 -1
  842. package/dist/es-legacy/components/Dropin/elements/splitPaymentMethods.js.map +1 -1
  843. package/dist/es-legacy/components/DuitNow/DuitNow.js +1 -1
  844. package/dist/es-legacy/components/DuitNow/DuitNow.js.map +1 -1
  845. package/dist/es-legacy/components/DuitNow/config.js.map +1 -1
  846. package/dist/es-legacy/components/EPS/index.js +1 -1
  847. package/dist/es-legacy/components/EPS/index.js.map +1 -1
  848. package/dist/es-legacy/components/Econtext/Econtext.js +1 -1
  849. package/dist/es-legacy/components/Econtext/Econtext.js.map +1 -1
  850. package/dist/es-legacy/components/Econtext/components/EcontextInput/EcontextInput.js.map +1 -1
  851. package/dist/es-legacy/components/Econtext/components/EcontextVoucherResult/EcontextVoucherResult.js +1 -1
  852. package/dist/es-legacy/components/Econtext/components/EcontextVoucherResult/EcontextVoucherResult.js.map +1 -1
  853. package/dist/es-legacy/components/FacilyPay/FacilyPay10x.js +1 -1
  854. package/dist/es-legacy/components/FacilyPay/FacilyPay10x.js.map +1 -1
  855. package/dist/es-legacy/components/FacilyPay/FacilyPay12x.js +1 -1
  856. package/dist/es-legacy/components/FacilyPay/FacilyPay12x.js.map +1 -1
  857. package/dist/es-legacy/components/FacilyPay/FacilyPay3x.js +1 -1
  858. package/dist/es-legacy/components/FacilyPay/FacilyPay3x.js.map +1 -1
  859. package/dist/es-legacy/components/FacilyPay/FacilyPay4x.js +1 -1
  860. package/dist/es-legacy/components/FacilyPay/FacilyPay4x.js.map +1 -1
  861. package/dist/es-legacy/components/FacilyPay/FacilyPay6x.js +1 -1
  862. package/dist/es-legacy/components/FacilyPay/FacilyPay6x.js.map +1 -1
  863. package/dist/es-legacy/components/Giftcard/Giftcard.js +1 -1
  864. package/dist/es-legacy/components/Giftcard/Giftcard.js.map +1 -1
  865. package/dist/es-legacy/components/Giftcard/components/GiftcardComponent.js +1 -1
  866. package/dist/es-legacy/components/Giftcard/components/GiftcardComponent.js.map +1 -1
  867. package/dist/es-legacy/components/Giftcard/components/GiftcardFields.js +1 -1
  868. package/dist/es-legacy/components/Giftcard/components/GiftcardFields.js.map +1 -1
  869. package/dist/es-legacy/components/Giftcard/components/GiftcardNumberField.js.map +1 -1
  870. package/dist/es-legacy/components/Giftcard/components/useSRPanelForGiftcardErrors.js +1 -1
  871. package/dist/es-legacy/components/Giftcard/components/useSRPanelForGiftcardErrors.js.map +1 -1
  872. package/dist/es-legacy/components/Giropay/Giropay.js +1 -1
  873. package/dist/es-legacy/components/Giropay/Giropay.js.map +1 -1
  874. package/dist/es-legacy/components/GooglePay/GooglePay.js +1 -1
  875. package/dist/es-legacy/components/GooglePay/GooglePay.js.map +1 -1
  876. package/dist/es-legacy/components/GooglePay/GooglePayService.js +1 -1
  877. package/dist/es-legacy/components/GooglePay/GooglePayService.js.map +1 -1
  878. package/dist/es-legacy/components/GooglePay/components/GooglePayButton.js +1 -1
  879. package/dist/es-legacy/components/GooglePay/components/GooglePayButton.js.map +1 -1
  880. package/dist/es-legacy/components/GooglePay/config.js.map +1 -1
  881. package/dist/es-legacy/components/GooglePay/requests.js +1 -1
  882. package/dist/es-legacy/components/GooglePay/requests.js.map +1 -1
  883. package/dist/es-legacy/components/GooglePay/utils.js +1 -1
  884. package/dist/es-legacy/components/GooglePay/utils.js.map +1 -1
  885. package/dist/es-legacy/components/Klarna/KlarnaPayments.js +1 -1
  886. package/dist/es-legacy/components/Klarna/KlarnaPayments.js.map +1 -1
  887. package/dist/es-legacy/components/Klarna/components/KlarnaContainer/KlarnaContainer.js +1 -1
  888. package/dist/es-legacy/components/Klarna/components/KlarnaContainer/KlarnaContainer.js.map +1 -1
  889. package/dist/es-legacy/components/Klarna/components/KlarnaWidget/KlarnaWidget.js +1 -1
  890. package/dist/es-legacy/components/Klarna/components/KlarnaWidget/KlarnaWidget.js.map +1 -1
  891. package/dist/es-legacy/components/MBWay/MBWay.js +1 -1
  892. package/dist/es-legacy/components/MBWay/MBWay.js.map +1 -1
  893. package/dist/es-legacy/components/MBWay/components/MBWayAwait/config.js.map +1 -1
  894. package/dist/es-legacy/components/MBWay/components/MBWayInput/MBWayInput.js +1 -1
  895. package/dist/es-legacy/components/MBWay/components/MBWayInput/MBWayInput.js.map +1 -1
  896. package/dist/es-legacy/components/MealVoucherFR/MealVoucherFR.js +1 -1
  897. package/dist/es-legacy/components/MealVoucherFR/MealVoucherFR.js.map +1 -1
  898. package/dist/es-legacy/components/MealVoucherFR/components/MealVoucherFields.js +1 -1
  899. package/dist/es-legacy/components/MealVoucherFR/components/MealVoucherFields.js.map +1 -1
  900. package/dist/es-legacy/components/Multibanco/Multibanco.js +1 -1
  901. package/dist/es-legacy/components/Multibanco/Multibanco.js.map +1 -1
  902. package/dist/es-legacy/components/Multibanco/components/MultibancoVoucherResult/MultibancoVoucherResult.js +1 -1
  903. package/dist/es-legacy/components/Multibanco/components/MultibancoVoucherResult/MultibancoVoucherResult.js.map +1 -1
  904. package/dist/es-legacy/components/OnlineBankingCZ/index.js +1 -1
  905. package/dist/es-legacy/components/OnlineBankingCZ/index.js.map +1 -1
  906. package/dist/es-legacy/components/OnlineBankingIN/index.js +1 -1
  907. package/dist/es-legacy/components/OnlineBankingIN/index.js.map +1 -1
  908. package/dist/es-legacy/components/OnlineBankingPL/OnlineBankingPL.js +1 -1
  909. package/dist/es-legacy/components/OnlineBankingPL/OnlineBankingPL.js.map +1 -1
  910. package/dist/es-legacy/components/OnlineBankingSK/index.js +1 -1
  911. package/dist/es-legacy/components/OnlineBankingSK/index.js.map +1 -1
  912. package/dist/es-legacy/components/Oxxo/Oxxo.js +1 -1
  913. package/dist/es-legacy/components/Oxxo/Oxxo.js.map +1 -1
  914. package/dist/es-legacy/components/Oxxo/components/OxxoVoucherResult/OxxoVoucherResult.js +1 -1
  915. package/dist/es-legacy/components/Oxxo/components/OxxoVoucherResult/OxxoVoucherResult.js.map +1 -1
  916. package/dist/es-legacy/components/PayByBank/PayByBank.js +1 -1
  917. package/dist/es-legacy/components/PayByBank/PayByBank.js.map +1 -1
  918. package/dist/es-legacy/components/PayByBankPix/PayByBankPix.js +1 -1
  919. package/dist/es-legacy/components/PayByBankPix/PayByBankPix.js.map +1 -1
  920. package/dist/es-legacy/components/PayByBankPix/components/Enrollment/Enrollment.js +1 -1
  921. package/dist/es-legacy/components/PayByBankPix/components/Enrollment/Enrollment.js.map +1 -1
  922. package/dist/es-legacy/components/PayByBankPix/components/Enrollment/components/AwaitLogoContainer.js +1 -1
  923. package/dist/es-legacy/components/PayByBankPix/components/Enrollment/components/AwaitLogoContainer.js.map +1 -1
  924. package/dist/es-legacy/components/PayByBankPix/components/Enrollment/useIssuerWithLogo.js +1 -1
  925. package/dist/es-legacy/components/PayByBankPix/components/Enrollment/useIssuerWithLogo.js.map +1 -1
  926. package/dist/es-legacy/components/PayByBankPix/components/StoredPayment/StoredPayment.js +1 -1
  927. package/dist/es-legacy/components/PayByBankPix/components/StoredPayment/StoredPayment.js.map +1 -1
  928. package/dist/es-legacy/components/PayByBankPix/services/PasskeyService.js +1 -1
  929. package/dist/es-legacy/components/PayByBankPix/services/PasskeyService.js.map +1 -1
  930. package/dist/es-legacy/components/PayByBankUS/PayByBankUS.js +1 -1
  931. package/dist/es-legacy/components/PayByBankUS/PayByBankUS.js.map +1 -1
  932. package/dist/es-legacy/components/PayMe/PayMe.js +1 -1
  933. package/dist/es-legacy/components/PayMe/PayMe.js.map +1 -1
  934. package/dist/es-legacy/components/PayMe/components/PayMeIntroduction.js.map +1 -1
  935. package/dist/es-legacy/components/PayNow/PayNow.js +1 -1
  936. package/dist/es-legacy/components/PayNow/PayNow.js.map +1 -1
  937. package/dist/es-legacy/components/PayNow/components/PayNowInstructions.js.map +1 -1
  938. package/dist/es-legacy/components/PayNow/components/PayNowIntroduction.js.map +1 -1
  939. package/dist/es-legacy/components/PayNow/config.js.map +1 -1
  940. package/dist/es-legacy/components/PayPal/Paypal.js +1 -1
  941. package/dist/es-legacy/components/PayPal/Paypal.js.map +1 -1
  942. package/dist/es-legacy/components/PayPal/components/PaypalButtons.js +1 -1
  943. package/dist/es-legacy/components/PayPal/components/PaypalButtons.js.map +1 -1
  944. package/dist/es-legacy/components/PayPal/components/PaypalComponent.js +1 -1
  945. package/dist/es-legacy/components/PayPal/components/PaypalComponent.js.map +1 -1
  946. package/dist/es-legacy/components/PayPal/utils/format-paypal-order-contact-to-adyen-format.js +1 -1
  947. package/dist/es-legacy/components/PayPal/utils/format-paypal-order-contact-to-adyen-format.js.map +1 -1
  948. package/dist/es-legacy/components/PayPal/utils/get-paypal-locale.js.map +1 -1
  949. package/dist/es-legacy/components/PayPal/utils/get-paypal-settings.js +1 -1
  950. package/dist/es-legacy/components/PayPal/utils/get-paypal-settings.js.map +1 -1
  951. package/dist/es-legacy/components/PayPal/utils/get-paypal-styles.js +1 -1
  952. package/dist/es-legacy/components/PayPal/utils/get-paypal-styles.js.map +1 -1
  953. package/dist/es-legacy/components/PayPal/utils/get-paypal-url.js +1 -1
  954. package/dist/es-legacy/components/PayPal/utils/get-paypal-url.js.map +1 -1
  955. package/dist/es-legacy/components/PayPalFastlane/Fastlane.js +1 -1
  956. package/dist/es-legacy/components/PayPalFastlane/Fastlane.js.map +1 -1
  957. package/dist/es-legacy/components/PayPalFastlane/FastlaneSDK.js +1 -1
  958. package/dist/es-legacy/components/PayPalFastlane/FastlaneSDK.js.map +1 -1
  959. package/dist/es-legacy/components/PayPalFastlane/components/FastlaneComponent.js +1 -1
  960. package/dist/es-legacy/components/PayPalFastlane/components/FastlaneComponent.js.map +1 -1
  961. package/dist/es-legacy/components/PayTo/PayTo.js +1 -1
  962. package/dist/es-legacy/components/PayTo/PayTo.js.map +1 -1
  963. package/dist/es-legacy/components/PayTo/components/BSBInput.js +1 -1
  964. package/dist/es-legacy/components/PayTo/components/BSBInput.js.map +1 -1
  965. package/dist/es-legacy/components/PayTo/components/IdentifierSelector.js +1 -1
  966. package/dist/es-legacy/components/PayTo/components/IdentifierSelector.js.map +1 -1
  967. package/dist/es-legacy/components/PayTo/components/MandateSummary.js +1 -1
  968. package/dist/es-legacy/components/PayTo/components/MandateSummary.js.map +1 -1
  969. package/dist/es-legacy/components/PayTo/components/PayIDInput.js +1 -1
  970. package/dist/es-legacy/components/PayTo/components/PayIDInput.js.map +1 -1
  971. package/dist/es-legacy/components/PayTo/components/PayToComponent.js +1 -1
  972. package/dist/es-legacy/components/PayTo/components/PayToComponent.js.map +1 -1
  973. package/dist/es-legacy/components/PayTo/components/PayToPhone.js +1 -1
  974. package/dist/es-legacy/components/PayTo/components/PayToPhone.js.map +1 -1
  975. package/dist/es-legacy/components/PayU/PayuCashcard.js +1 -1
  976. package/dist/es-legacy/components/PayU/PayuCashcard.js.map +1 -1
  977. package/dist/es-legacy/components/PayU/PayuNetBanking.js +1 -1
  978. package/dist/es-legacy/components/PayU/PayuNetBanking.js.map +1 -1
  979. package/dist/es-legacy/components/PersonalDetails/PersonalDetails.js +1 -1
  980. package/dist/es-legacy/components/PersonalDetails/PersonalDetails.js.map +1 -1
  981. package/dist/es-legacy/components/Pix/Pix.js +1 -1
  982. package/dist/es-legacy/components/Pix/Pix.js.map +1 -1
  983. package/dist/es-legacy/components/Pix/PixInput/PixInput.js +1 -1
  984. package/dist/es-legacy/components/Pix/PixInput/PixInput.js.map +1 -1
  985. package/dist/es-legacy/components/PreAuthorizedDebitCanada/PreAuthorizedDebitCanada.js +1 -1
  986. package/dist/es-legacy/components/PreAuthorizedDebitCanada/PreAuthorizedDebitCanada.js.map +1 -1
  987. package/dist/es-legacy/components/PreAuthorizedDebitCanada/components/PreAuthorizedDebitCanadaComponent.js +1 -1
  988. package/dist/es-legacy/components/PreAuthorizedDebitCanada/components/PreAuthorizedDebitCanadaComponent.js.map +1 -1
  989. package/dist/es-legacy/components/PreAuthorizedDebitCanada/components/SettlementInfo.js.map +1 -1
  990. package/dist/es-legacy/components/PromptPay/PromptPay.js +1 -1
  991. package/dist/es-legacy/components/PromptPay/PromptPay.js.map +1 -1
  992. package/dist/es-legacy/components/PromptPay/config.js.map +1 -1
  993. package/dist/es-legacy/components/RatePay/RatePay.js +1 -1
  994. package/dist/es-legacy/components/RatePay/RatePay.js.map +1 -1
  995. package/dist/es-legacy/components/RatePay/RatePayDirectDebit.js +1 -1
  996. package/dist/es-legacy/components/RatePay/RatePayDirectDebit.js.map +1 -1
  997. package/dist/es-legacy/components/Redirect/Redirect.js +1 -1
  998. package/dist/es-legacy/components/Redirect/Redirect.js.map +1 -1
  999. package/dist/es-legacy/components/Redirect/components/RedirectShopper/RedirectShopper.js +1 -1
  1000. package/dist/es-legacy/components/Redirect/components/RedirectShopper/RedirectShopper.js.map +1 -1
  1001. package/dist/es-legacy/components/Sepa/Sepa.js +1 -1
  1002. package/dist/es-legacy/components/Sepa/Sepa.js.map +1 -1
  1003. package/dist/es-legacy/components/Swish/Swish.js +1 -1
  1004. package/dist/es-legacy/components/Swish/Swish.js.map +1 -1
  1005. package/dist/es-legacy/components/ThreeDS2/ThreeDS2Challenge.js +1 -1
  1006. package/dist/es-legacy/components/ThreeDS2/ThreeDS2Challenge.js.map +1 -1
  1007. package/dist/es-legacy/components/ThreeDS2/ThreeDS2DeviceFingerprint.js +1 -1
  1008. package/dist/es-legacy/components/ThreeDS2/ThreeDS2DeviceFingerprint.js.map +1 -1
  1009. package/dist/es-legacy/components/ThreeDS2/callSubmit3DS2Fingerprint.js +1 -1
  1010. package/dist/es-legacy/components/ThreeDS2/callSubmit3DS2Fingerprint.js.map +1 -1
  1011. package/dist/es-legacy/components/ThreeDS2/components/Challenge/DoChallenge3DS2.js +1 -1
  1012. package/dist/es-legacy/components/ThreeDS2/components/Challenge/DoChallenge3DS2.js.map +1 -1
  1013. package/dist/es-legacy/components/ThreeDS2/components/Challenge/PrepareChallenge3DS2.js +1 -1
  1014. package/dist/es-legacy/components/ThreeDS2/components/Challenge/PrepareChallenge3DS2.js.map +1 -1
  1015. package/dist/es-legacy/components/ThreeDS2/components/DeviceFingerprint/DoFingerprint3DS2.js +1 -1
  1016. package/dist/es-legacy/components/ThreeDS2/components/DeviceFingerprint/DoFingerprint3DS2.js.map +1 -1
  1017. package/dist/es-legacy/components/ThreeDS2/components/DeviceFingerprint/PrepareFingerprint3DS2.js +1 -1
  1018. package/dist/es-legacy/components/ThreeDS2/components/DeviceFingerprint/PrepareFingerprint3DS2.js.map +1 -1
  1019. package/dist/es-legacy/components/ThreeDS2/components/Form/ThreeDS2Form.js.map +1 -1
  1020. package/dist/es-legacy/components/ThreeDS2/components/utils.js.map +1 -1
  1021. package/dist/es-legacy/components/Trustly/Trustly.js +1 -1
  1022. package/dist/es-legacy/components/Trustly/Trustly.js.map +1 -1
  1023. package/dist/es-legacy/components/Twint/Twint.js +1 -1
  1024. package/dist/es-legacy/components/Twint/Twint.js.map +1 -1
  1025. package/dist/es-legacy/components/UPI/UPI.js +1 -1
  1026. package/dist/es-legacy/components/UPI/UPI.js.map +1 -1
  1027. package/dist/es-legacy/components/UPI/components/UPIComponent/UPIComponent.js +1 -1
  1028. package/dist/es-legacy/components/UPI/components/UPIComponent/UPIComponent.js.map +1 -1
  1029. package/dist/es-legacy/components/UPI/components/UPIComponent/useUpiSegmentedControlOptions.js +1 -1
  1030. package/dist/es-legacy/components/UPI/components/UPIComponent/useUpiSegmentedControlOptions.js.map +1 -1
  1031. package/dist/es-legacy/components/UPI/components/UPIIntentAppList/UPIIntentAppItem/UPIIntentAppItem.js.map +1 -1
  1032. package/dist/es-legacy/components/UPI/components/UPIIntentAppList/UPIIntentAppList.js +1 -1
  1033. package/dist/es-legacy/components/UPI/components/UPIIntentAppList/UPIIntentAppList.js.map +1 -1
  1034. package/dist/es-legacy/components/UPI/components/VpaInput/VpaInput.js +1 -1
  1035. package/dist/es-legacy/components/UPI/components/VpaInput/VpaInput.js.map +1 -1
  1036. package/dist/es-legacy/components/WalletIN/index.js +1 -1
  1037. package/dist/es-legacy/components/WalletIN/index.js.map +1 -1
  1038. package/dist/es-legacy/components/WeChat/WeChat.js +1 -1
  1039. package/dist/es-legacy/components/WeChat/WeChat.js.map +1 -1
  1040. package/dist/es-legacy/components/WeChat/config.js.map +1 -1
  1041. package/dist/es-legacy/components/helpers/IssuerListContainer/IssuerListContainer.js +1 -1
  1042. package/dist/es-legacy/components/helpers/IssuerListContainer/IssuerListContainer.js.map +1 -1
  1043. package/dist/es-legacy/components/helpers/OpenInvoiceContainer/OpenInvoiceContainer.js +1 -1
  1044. package/dist/es-legacy/components/helpers/OpenInvoiceContainer/OpenInvoiceContainer.js.map +1 -1
  1045. package/dist/es-legacy/components/helpers/QRLoaderContainer/QRLoaderContainer.js +1 -1
  1046. package/dist/es-legacy/components/helpers/QRLoaderContainer/QRLoaderContainer.js.map +1 -1
  1047. package/dist/es-legacy/components/internal/Address/Address.js +1 -1
  1048. package/dist/es-legacy/components/internal/Address/Address.js.map +1 -1
  1049. package/dist/es-legacy/components/internal/Address/Specifications.js +1 -1
  1050. package/dist/es-legacy/components/internal/Address/Specifications.js.map +1 -1
  1051. package/dist/es-legacy/components/internal/Address/components/AddressSearch.js +1 -1
  1052. package/dist/es-legacy/components/internal/Address/components/AddressSearch.js.map +1 -1
  1053. package/dist/es-legacy/components/internal/Address/components/CountryField.js +1 -1
  1054. package/dist/es-legacy/components/internal/Address/components/CountryField.js.map +1 -1
  1055. package/dist/es-legacy/components/internal/Address/components/FieldContainer.js.map +1 -1
  1056. package/dist/es-legacy/components/internal/Address/components/ReadOnlyAddress.js.map +1 -1
  1057. package/dist/es-legacy/components/internal/Address/components/StateField.js +1 -1
  1058. package/dist/es-legacy/components/internal/Address/components/StateField.js.map +1 -1
  1059. package/dist/es-legacy/components/internal/Address/validate.formats.js.map +1 -1
  1060. package/dist/es-legacy/components/internal/Address/validate.js.map +1 -1
  1061. package/dist/es-legacy/components/internal/Await/Await.js +1 -1
  1062. package/dist/es-legacy/components/internal/Await/Await.js.map +1 -1
  1063. package/dist/es-legacy/components/internal/BaseElement/BaseElement.js +1 -1
  1064. package/dist/es-legacy/components/internal/BaseElement/BaseElement.js.map +1 -1
  1065. package/dist/es-legacy/components/internal/Button/Button.js +1 -1
  1066. package/dist/es-legacy/components/internal/Button/Button.js.map +1 -1
  1067. package/dist/es-legacy/components/internal/Button/CopyIconButton.js +2 -0
  1068. package/dist/es-legacy/components/internal/Button/CopyIconButton.js.map +1 -0
  1069. package/dist/es-legacy/components/internal/ButtonGroup/ButtonGroup.js +1 -1
  1070. package/dist/es-legacy/components/internal/ButtonGroup/ButtonGroup.js.map +1 -1
  1071. package/dist/es-legacy/components/internal/ClickToPay/ClickToPayComponent.js +1 -1
  1072. package/dist/es-legacy/components/internal/ClickToPay/ClickToPayComponent.js.map +1 -1
  1073. package/dist/es-legacy/components/internal/ClickToPay/components/CtPBrand/CtPBrand.js +1 -1
  1074. package/dist/es-legacy/components/internal/ClickToPay/components/CtPBrand/CtPBrand.js.map +1 -1
  1075. package/dist/es-legacy/components/internal/ClickToPay/components/CtPCards/CtPCards.js +1 -1
  1076. package/dist/es-legacy/components/internal/ClickToPay/components/CtPCards/CtPCards.js.map +1 -1
  1077. package/dist/es-legacy/components/internal/ClickToPay/components/CtPCards/CtPCardsList/CtPCardsList.js +1 -1
  1078. package/dist/es-legacy/components/internal/ClickToPay/components/CtPCards/CtPCardsList/CtPCardsList.js.map +1 -1
  1079. package/dist/es-legacy/components/internal/ClickToPay/components/CtPCards/CtPSingleCard/CtPSingleCard.js.map +1 -1
  1080. package/dist/es-legacy/components/internal/ClickToPay/components/CtPInfo/CtPInfo.js +1 -1
  1081. package/dist/es-legacy/components/internal/ClickToPay/components/CtPInfo/CtPInfo.js.map +1 -1
  1082. package/dist/es-legacy/components/internal/ClickToPay/components/CtPInfo/CtPInfoModal/CtPInfoModal.js +1 -1
  1083. package/dist/es-legacy/components/internal/ClickToPay/components/CtPInfo/CtPInfoModal/CtPInfoModal.js.map +1 -1
  1084. package/dist/es-legacy/components/internal/ClickToPay/components/CtPLoader/CtPLoader.js.map +1 -1
  1085. package/dist/es-legacy/components/internal/ClickToPay/components/CtPLogin/CtPLogin.js +1 -1
  1086. package/dist/es-legacy/components/internal/ClickToPay/components/CtPLogin/CtPLogin.js.map +1 -1
  1087. package/dist/es-legacy/components/internal/ClickToPay/components/CtPLogin/CtPLoginInput.js +1 -1
  1088. package/dist/es-legacy/components/internal/ClickToPay/components/CtPLogin/CtPLoginInput.js.map +1 -1
  1089. package/dist/es-legacy/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePassword.js +1 -1
  1090. package/dist/es-legacy/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePassword.js.map +1 -1
  1091. package/dist/es-legacy/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPOneTimePasswordInput.js +1 -1
  1092. package/dist/es-legacy/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPOneTimePasswordInput.js.map +1 -1
  1093. package/dist/es-legacy/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPResendOtpLink.js +1 -1
  1094. package/dist/es-legacy/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPResendOtpLink.js.map +1 -1
  1095. package/dist/es-legacy/components/internal/ClickToPay/components/CtPOneTimePassword/CtPSaveCookiesCheckbox/CtPSaveCookiesCheckbox.js +1 -1
  1096. package/dist/es-legacy/components/internal/ClickToPay/components/CtPOneTimePassword/CtPSaveCookiesCheckbox/CtPSaveCookiesCheckbox.js.map +1 -1
  1097. package/dist/es-legacy/components/internal/ClickToPay/components/CtPSection/CtPLogoutLink.js +1 -1
  1098. package/dist/es-legacy/components/internal/ClickToPay/components/CtPSection/CtPLogoutLink.js.map +1 -1
  1099. package/dist/es-legacy/components/internal/ClickToPay/components/CtPSection/CtPSection.js.map +1 -1
  1100. package/dist/es-legacy/components/internal/ClickToPay/context/ClickToPayProvider.js +1 -1
  1101. package/dist/es-legacy/components/internal/ClickToPay/context/ClickToPayProvider.js.map +1 -1
  1102. package/dist/es-legacy/components/internal/ClickToPay/errors/TimeoutError.js.map +1 -1
  1103. package/dist/es-legacy/components/internal/ClickToPay/models/ShopperCard.js.map +1 -1
  1104. package/dist/es-legacy/components/internal/ClickToPay/services/ClickToPayService.js +1 -1
  1105. package/dist/es-legacy/components/internal/ClickToPay/services/ClickToPayService.js.map +1 -1
  1106. package/dist/es-legacy/components/internal/ClickToPay/services/create-clicktopay-service.js +1 -1
  1107. package/dist/es-legacy/components/internal/ClickToPay/services/create-clicktopay-service.js.map +1 -1
  1108. package/dist/es-legacy/components/internal/ClickToPay/services/execute-with-timeout.js +1 -1
  1109. package/dist/es-legacy/components/internal/ClickToPay/services/execute-with-timeout.js.map +1 -1
  1110. package/dist/es-legacy/components/internal/ClickToPay/services/sdks/MastercardSdk.js +1 -1
  1111. package/dist/es-legacy/components/internal/ClickToPay/services/sdks/MastercardSdk.js.map +1 -1
  1112. package/dist/es-legacy/components/internal/ClickToPay/services/sdks/SrcSdkLoader.js +1 -1
  1113. package/dist/es-legacy/components/internal/ClickToPay/services/sdks/SrcSdkLoader.js.map +1 -1
  1114. package/dist/es-legacy/components/internal/ClickToPay/services/sdks/SrciError.js.map +1 -1
  1115. package/dist/es-legacy/components/internal/ClickToPay/services/sdks/VisaSdk.js +1 -1
  1116. package/dist/es-legacy/components/internal/ClickToPay/services/sdks/VisaSdk.js.map +1 -1
  1117. package/dist/es-legacy/components/internal/ClickToPay/services/sdks/config.js.map +1 -1
  1118. package/dist/es-legacy/components/internal/ClickToPay/services/utils.js +1 -1
  1119. package/dist/es-legacy/components/internal/ClickToPay/services/utils.js.map +1 -1
  1120. package/dist/es-legacy/components/internal/CompanyDetails/CompanyDetails.js +1 -1
  1121. package/dist/es-legacy/components/internal/CompanyDetails/CompanyDetails.js.map +1 -1
  1122. package/dist/es-legacy/components/internal/CompanyDetails/ReadOnlyCompanyDetails.js.map +1 -1
  1123. package/dist/es-legacy/components/internal/CompanyDetails/utils.js +1 -1
  1124. package/dist/es-legacy/components/internal/CompanyDetails/utils.js.map +1 -1
  1125. package/dist/es-legacy/components/internal/ConsentCheckboxLabel/ConsentCheckboxLabel.js.map +1 -1
  1126. package/dist/es-legacy/components/internal/Countdown/CountdownA11yReporter.js +1 -1
  1127. package/dist/es-legacy/components/internal/Countdown/CountdownA11yReporter.js.map +1 -1
  1128. package/dist/es-legacy/components/internal/Countdown/index.js +1 -1
  1129. package/dist/es-legacy/components/internal/Countdown/index.js.map +1 -1
  1130. package/dist/es-legacy/components/internal/Countdown/useCountdownA11yReporter.js +1 -1
  1131. package/dist/es-legacy/components/internal/Countdown/useCountdownA11yReporter.js.map +1 -1
  1132. package/dist/es-legacy/components/internal/Countdown/utils.js.map +1 -1
  1133. package/dist/es-legacy/components/internal/DetailsTable/DetailsTable.js +1 -1
  1134. package/dist/es-legacy/components/internal/DetailsTable/DetailsTable.js.map +1 -1
  1135. package/dist/es-legacy/components/internal/DisclaimerMessage/DisclaimerMessage.js +1 -1
  1136. package/dist/es-legacy/components/internal/DisclaimerMessage/DisclaimerMessage.js.map +1 -1
  1137. package/dist/es-legacy/components/internal/ExpandButton/ExpandButton.js +1 -1
  1138. package/dist/es-legacy/components/internal/ExpandButton/ExpandButton.js.map +1 -1
  1139. package/dist/es-legacy/components/internal/FormFields/Checkbox/Checkbox.js +1 -1
  1140. package/dist/es-legacy/components/internal/FormFields/Checkbox/Checkbox.js.map +1 -1
  1141. package/dist/es-legacy/components/internal/FormFields/ConsentCheckbox/ConsentCheckbox.js.map +1 -1
  1142. package/dist/es-legacy/components/internal/FormFields/Field/Field.js +1 -1
  1143. package/dist/es-legacy/components/internal/FormFields/Field/Field.js.map +1 -1
  1144. package/dist/es-legacy/components/internal/FormFields/Fieldset/Fieldset.js +1 -1
  1145. package/dist/es-legacy/components/internal/FormFields/Fieldset/Fieldset.js.map +1 -1
  1146. package/dist/es-legacy/components/internal/FormFields/InputBase.js +1 -1
  1147. package/dist/es-legacy/components/internal/FormFields/InputBase.js.map +1 -1
  1148. package/dist/es-legacy/components/internal/FormFields/InputDate/InputDate.js +1 -1
  1149. package/dist/es-legacy/components/internal/FormFields/InputDate/InputDate.js.map +1 -1
  1150. package/dist/es-legacy/components/internal/FormFields/InputDate/utils.js.map +1 -1
  1151. package/dist/es-legacy/components/internal/FormFields/InputEmail.js +1 -1
  1152. package/dist/es-legacy/components/internal/FormFields/InputEmail.js.map +1 -1
  1153. package/dist/es-legacy/components/internal/FormFields/InputTelephone.js +1 -1
  1154. package/dist/es-legacy/components/internal/FormFields/InputTelephone.js.map +1 -1
  1155. package/dist/es-legacy/components/internal/FormFields/InputText.js +1 -1
  1156. package/dist/es-legacy/components/internal/FormFields/InputText.js.map +1 -1
  1157. package/dist/es-legacy/components/internal/FormFields/RadioGroup/RadioGroup.js +1 -1
  1158. package/dist/es-legacy/components/internal/FormFields/RadioGroup/RadioGroup.js.map +1 -1
  1159. package/dist/es-legacy/components/internal/FormFields/RadioGroupExtended/RadioButtonIcon.js.map +1 -1
  1160. package/dist/es-legacy/components/internal/FormFields/RadioGroupExtended/RadioGroupExtended.js +1 -1
  1161. package/dist/es-legacy/components/internal/FormFields/RadioGroupExtended/RadioGroupExtended.js.map +1 -1
  1162. package/dist/es-legacy/components/internal/FormFields/Select/Select.js +1 -1
  1163. package/dist/es-legacy/components/internal/FormFields/Select/Select.js.map +1 -1
  1164. package/dist/es-legacy/components/internal/FormFields/Select/components/SelectButton.js +1 -1
  1165. package/dist/es-legacy/components/internal/FormFields/Select/components/SelectButton.js.map +1 -1
  1166. package/dist/es-legacy/components/internal/FormFields/Select/components/SelectList.js +1 -1
  1167. package/dist/es-legacy/components/internal/FormFields/Select/components/SelectList.js.map +1 -1
  1168. package/dist/es-legacy/components/internal/FormFields/Select/components/SelectListItem.js.map +1 -1
  1169. package/dist/es-legacy/components/internal/FormFields/utils.js.map +1 -1
  1170. package/dist/es-legacy/components/internal/FormInstruction/FormInstruction.js.map +1 -1
  1171. package/dist/es-legacy/components/internal/IFrame/Iframe.js +1 -1
  1172. package/dist/es-legacy/components/internal/IFrame/Iframe.js.map +1 -1
  1173. package/dist/es-legacy/components/internal/IbanInput/IbanInput.js +1 -1
  1174. package/dist/es-legacy/components/internal/IbanInput/IbanInput.js.map +1 -1
  1175. package/dist/es-legacy/components/internal/IbanInput/utils.js +1 -1
  1176. package/dist/es-legacy/components/internal/IbanInput/utils.js.map +1 -1
  1177. package/dist/es-legacy/components/internal/IbanInput/validate.js.map +1 -1
  1178. package/dist/es-legacy/components/internal/Img/Img.js +1 -1
  1179. package/dist/es-legacy/components/internal/Img/Img.js.map +1 -1
  1180. package/dist/es-legacy/components/internal/IssuerList/IssuerButtonGroup/IssuerButtonGroup.js +1 -1
  1181. package/dist/es-legacy/components/internal/IssuerList/IssuerButtonGroup/IssuerButtonGroup.js.map +1 -1
  1182. package/dist/es-legacy/components/internal/IssuerList/IssuerList.js +1 -1
  1183. package/dist/es-legacy/components/internal/IssuerList/IssuerList.js.map +1 -1
  1184. package/dist/es-legacy/components/internal/LoadingWrapper/LoadingWrapper.js.map +1 -1
  1185. package/dist/es-legacy/components/internal/Modal/Modal.js +1 -1
  1186. package/dist/es-legacy/components/internal/Modal/Modal.js.map +1 -1
  1187. package/dist/es-legacy/components/internal/Modal/useModal.js +1 -1
  1188. package/dist/es-legacy/components/internal/Modal/useModal.js.map +1 -1
  1189. package/dist/es-legacy/components/internal/Modal/useTrapFocus.js +1 -1
  1190. package/dist/es-legacy/components/internal/Modal/useTrapFocus.js.map +1 -1
  1191. package/dist/es-legacy/components/internal/OpenInvoice/OpenInvoice.js +1 -1
  1192. package/dist/es-legacy/components/internal/OpenInvoice/OpenInvoice.js.map +1 -1
  1193. package/dist/es-legacy/components/internal/OpenInvoice/useSRPanelForOpenInvoiceErrors.js +1 -1
  1194. package/dist/es-legacy/components/internal/OpenInvoice/useSRPanelForOpenInvoiceErrors.js.map +1 -1
  1195. package/dist/es-legacy/components/internal/OpenInvoice/utils.js +1 -1
  1196. package/dist/es-legacy/components/internal/OpenInvoice/utils.js.map +1 -1
  1197. package/dist/es-legacy/components/internal/PayButton/PayButton.js +1 -1
  1198. package/dist/es-legacy/components/internal/PayButton/PayButton.js.map +1 -1
  1199. package/dist/es-legacy/components/internal/PayButton/utils.js.map +1 -1
  1200. package/dist/es-legacy/components/internal/PersonalDetails/PersonalDetails.js +1 -1
  1201. package/dist/es-legacy/components/internal/PersonalDetails/PersonalDetails.js.map +1 -1
  1202. package/dist/es-legacy/components/internal/PersonalDetails/ReadOnlyPersonalDetails.js.map +1 -1
  1203. package/dist/es-legacy/components/internal/PersonalDetails/utils.js +1 -1
  1204. package/dist/es-legacy/components/internal/PersonalDetails/utils.js.map +1 -1
  1205. package/dist/es-legacy/components/internal/PhoneInput/PhoneInputFields.js +1 -1
  1206. package/dist/es-legacy/components/internal/PhoneInput/PhoneInputFields.js.map +1 -1
  1207. package/dist/es-legacy/components/internal/PhoneInput/PhoneInputForm.js +1 -1
  1208. package/dist/es-legacy/components/internal/PhoneInput/PhoneInputForm.js.map +1 -1
  1209. package/dist/es-legacy/components/internal/PhoneInput/usePhonePrefixes.js +1 -1
  1210. package/dist/es-legacy/components/internal/PhoneInput/usePhonePrefixes.js.map +1 -1
  1211. package/dist/es-legacy/components/internal/PhoneInput/validate.js.map +1 -1
  1212. package/dist/es-legacy/components/internal/QRLoader/QRLoader.js +1 -1
  1213. package/dist/es-legacy/components/internal/QRLoader/QRLoader.js.map +1 -1
  1214. package/dist/es-legacy/components/internal/RedirectButton/RedirectButton.js +1 -1
  1215. package/dist/es-legacy/components/internal/RedirectButton/RedirectButton.js.map +1 -1
  1216. package/dist/es-legacy/components/internal/SecuredFields/SFP/SFPUtils.js +1 -1
  1217. package/dist/es-legacy/components/internal/SecuredFields/SFP/SFPUtils.js.map +1 -1
  1218. package/dist/es-legacy/components/internal/SecuredFields/SFP/SecuredFieldsProvider.js +1 -1
  1219. package/dist/es-legacy/components/internal/SecuredFields/SFP/SecuredFieldsProvider.js.map +1 -1
  1220. package/dist/es-legacy/components/internal/SecuredFields/SFP/SecuredFieldsProviderHandlers.js +1 -1
  1221. package/dist/es-legacy/components/internal/SecuredFields/SFP/SecuredFieldsProviderHandlers.js.map +1 -1
  1222. package/dist/es-legacy/components/internal/SecuredFields/SFP/defaultProps.js.map +1 -1
  1223. package/dist/es-legacy/components/internal/SecuredFields/binLookup/extensions.js +1 -1
  1224. package/dist/es-legacy/components/internal/SecuredFields/binLookup/extensions.js.map +1 -1
  1225. package/dist/es-legacy/components/internal/SecuredFields/binLookup/triggerBinLookUp.js +1 -1
  1226. package/dist/es-legacy/components/internal/SecuredFields/binLookup/triggerBinLookUp.js.map +1 -1
  1227. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/AbstractCSF.js.map +1 -1
  1228. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/CSF.js.map +1 -1
  1229. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/createSecuredFields.js +1 -1
  1230. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/createSecuredFields.js.map +1 -1
  1231. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/handleBrandFromBinLookup.js +1 -1
  1232. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/handleBrandFromBinLookup.js.map +1 -1
  1233. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/handleConfig.js.map +1 -1
  1234. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/handleIOSTouchEvents.js +1 -1
  1235. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/handleIOSTouchEvents.js.map +1 -1
  1236. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/handleTab.js.map +1 -1
  1237. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/initCSF.js +1 -1
  1238. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/initCSF.js.map +1 -1
  1239. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/partials/handleFocus.js +1 -1
  1240. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/partials/handleFocus.js.map +1 -1
  1241. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/partials/postMessageToAllIframes.js +1 -1
  1242. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/partials/postMessageToAllIframes.js.map +1 -1
  1243. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/partials/processAutoComplete.js +1 -1
  1244. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/partials/processAutoComplete.js.map +1 -1
  1245. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/partials/validateForm.js.map +1 -1
  1246. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/utils/callbackUtils.js.map +1 -1
  1247. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/utils/cardType.js +1 -1
  1248. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/utils/cardType.js.map +1 -1
  1249. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/utils/destroySecuredFields.js +1 -1
  1250. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/utils/destroySecuredFields.js.map +1 -1
  1251. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/utils/iframes/getIframeContentWin.js.map +1 -1
  1252. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/utils/iframes/postMessageToIframe.js.map +1 -1
  1253. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/utils/iframes/postMessageValidation.js.map +1 -1
  1254. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/utils/processErrors.js.map +1 -1
  1255. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/utils/tabbing/utils.js +1 -1
  1256. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/utils/tabbing/utils.js.map +1 -1
  1257. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/utils/userAgent.js.map +1 -1
  1258. package/dist/es-legacy/components/internal/SecuredFields/lib/securedField/AbstractSecuredField.js.map +1 -1
  1259. package/dist/es-legacy/components/internal/SecuredFields/lib/securedField/SecuredField.js +1 -1
  1260. package/dist/es-legacy/components/internal/SecuredFields/lib/securedField/SecuredField.js.map +1 -1
  1261. package/dist/es-legacy/components/internal/SecuredFields/lib/securedField/utils/processAriaConfig.js +1 -1
  1262. package/dist/es-legacy/components/internal/SecuredFields/lib/securedField/utils/processAriaConfig.js.map +1 -1
  1263. package/dist/es-legacy/components/internal/SecuredFields/lib/securedField/utils/processPlaceholders.js.map +1 -1
  1264. package/dist/es-legacy/components/internal/SecuredFields/lib/utilities/addContextTranslations.js +1 -1
  1265. package/dist/es-legacy/components/internal/SecuredFields/lib/utilities/addContextTranslations.js.map +1 -1
  1266. package/dist/es-legacy/components/internal/SecuredFields/lib/utilities/commonUtils.js +1 -1
  1267. package/dist/es-legacy/components/internal/SecuredFields/lib/utilities/commonUtils.js.map +1 -1
  1268. package/dist/es-legacy/components/internal/SecuredFields/lib/utilities/dom.js.map +1 -1
  1269. package/dist/es-legacy/components/internal/SecuredFields/lib/utilities/logger.js.map +1 -1
  1270. package/dist/es-legacy/components/internal/SecuredFields/utils.js.map +1 -1
  1271. package/dist/es-legacy/components/internal/SegmentedControl/SegmentedControl.js +1 -1
  1272. package/dist/es-legacy/components/internal/SegmentedControl/SegmentedControl.js.map +1 -1
  1273. package/dist/es-legacy/components/internal/SendCopyToEmail/SendCopyToEmail.js.map +1 -1
  1274. package/dist/es-legacy/components/internal/SocialSecurityNumberBrazil/SocialSecurityNumberBrazil.js.map +1 -1
  1275. package/dist/es-legacy/components/internal/SocialSecurityNumberBrazil/utils.js +1 -1
  1276. package/dist/es-legacy/components/internal/SocialSecurityNumberBrazil/utils.js.map +1 -1
  1277. package/dist/es-legacy/components/internal/SocialSecurityNumberBrazil/validate.js.map +1 -1
  1278. package/dist/es-legacy/components/internal/StoreDetails/StoreDetails.js +1 -1
  1279. package/dist/es-legacy/components/internal/StoreDetails/StoreDetails.js.map +1 -1
  1280. package/dist/es-legacy/components/internal/Timeline/Timeline.js +1 -1
  1281. package/dist/es-legacy/components/internal/Timeline/Timeline.js.map +1 -1
  1282. package/dist/es-legacy/components/internal/Toggle/Toggle.js +1 -1
  1283. package/dist/es-legacy/components/internal/Toggle/Toggle.js.map +1 -1
  1284. package/dist/es-legacy/components/internal/Tooltip/SingletonTooltipProvider.js +2 -0
  1285. package/dist/es-legacy/components/internal/Tooltip/SingletonTooltipProvider.js.map +1 -0
  1286. package/dist/es-legacy/components/internal/Tooltip/Tooltip.js +2 -0
  1287. package/dist/es-legacy/components/internal/Tooltip/Tooltip.js.map +1 -0
  1288. package/dist/es-legacy/components/internal/Tooltip/TooltipController.js +2 -0
  1289. package/dist/es-legacy/components/internal/Tooltip/TooltipController.js.map +1 -0
  1290. package/dist/es-legacy/components/internal/UIElement/UIElement.js +1 -1
  1291. package/dist/es-legacy/components/internal/UIElement/UIElement.js.map +1 -1
  1292. package/dist/es-legacy/components/internal/UIElement/utils.js +1 -1
  1293. package/dist/es-legacy/components/internal/UIElement/utils.js.map +1 -1
  1294. package/dist/es-legacy/components/internal/Voucher/Voucher.js.map +1 -1
  1295. package/dist/es-legacy/components/internal/Voucher/utils.js +1 -1
  1296. package/dist/es-legacy/components/internal/Voucher/utils.js.map +1 -1
  1297. package/dist/es-legacy/core/AdyenCheckout.js.map +1 -1
  1298. package/dist/es-legacy/core/Analytics/Analytics.js +1 -1
  1299. package/dist/es-legacy/core/Analytics/Analytics.js.map +1 -1
  1300. package/dist/es-legacy/core/Analytics/AnalyticsErrorEvent.js.map +1 -1
  1301. package/dist/es-legacy/core/Analytics/AnalyticsEvent.js.map +1 -1
  1302. package/dist/es-legacy/core/Analytics/AnalyticsInfoEvent.js.map +1 -1
  1303. package/dist/es-legacy/core/Analytics/AnalyticsLogEvent.js.map +1 -1
  1304. package/dist/es-legacy/core/Analytics/EventsQueue.js +1 -1
  1305. package/dist/es-legacy/core/Analytics/EventsQueue.js.map +1 -1
  1306. package/dist/es-legacy/core/Analytics/constants.js.map +1 -1
  1307. package/dist/es-legacy/core/Analytics/utils.js +1 -1
  1308. package/dist/es-legacy/core/Analytics/utils.js.map +1 -1
  1309. package/dist/es-legacy/core/CheckoutSession/CheckoutSession.js +1 -1
  1310. package/dist/es-legacy/core/CheckoutSession/CheckoutSession.js.map +1 -1
  1311. package/dist/es-legacy/core/CheckoutSession/utils.js +1 -1
  1312. package/dist/es-legacy/core/CheckoutSession/utils.js.map +1 -1
  1313. package/dist/es-legacy/core/Context/CoreProvider.js +1 -1
  1314. package/dist/es-legacy/core/Context/CoreProvider.js.map +1 -1
  1315. package/dist/es-legacy/core/Context/Resources.js +1 -1
  1316. package/dist/es-legacy/core/Context/Resources.js.map +1 -1
  1317. package/dist/es-legacy/core/Context/useImage.js +1 -1
  1318. package/dist/es-legacy/core/Context/useImage.js.map +1 -1
  1319. package/dist/es-legacy/core/Environment/Environment.js.map +1 -1
  1320. package/dist/es-legacy/core/Errors/AdyenCheckoutError.js.map +1 -1
  1321. package/dist/es-legacy/core/Errors/CancelError.js.map +1 -1
  1322. package/dist/es-legacy/core/Errors/SRMessages.js +1 -1
  1323. package/dist/es-legacy/core/Errors/SRMessages.js.map +1 -1
  1324. package/dist/es-legacy/core/Errors/SRPanel.js +1 -1
  1325. package/dist/es-legacy/core/Errors/SRPanel.js.map +1 -1
  1326. package/dist/es-legacy/core/Errors/SRPanelProvider.js.map +1 -1
  1327. package/dist/es-legacy/core/Errors/useA11yReporter.js +1 -1
  1328. package/dist/es-legacy/core/Errors/useA11yReporter.js.map +1 -1
  1329. package/dist/es-legacy/core/Errors/utils.js +1 -1
  1330. package/dist/es-legacy/core/Errors/utils.js.map +1 -1
  1331. package/dist/es-legacy/core/ProcessResponse/PaymentAction/actionTypes.js +1 -1
  1332. package/dist/es-legacy/core/ProcessResponse/PaymentAction/actionTypes.js.map +1 -1
  1333. package/dist/es-legacy/core/ProcessResponse/PaymentMethods/PaymentMethods.js +1 -1
  1334. package/dist/es-legacy/core/ProcessResponse/PaymentMethods/PaymentMethods.js.map +1 -1
  1335. package/dist/es-legacy/core/ProcessResponse/PaymentMethods/filters.js.map +1 -1
  1336. package/dist/es-legacy/core/ProcessResponse/PaymentMethods/utils.js +1 -1
  1337. package/dist/es-legacy/core/ProcessResponse/PaymentMethods/utils.js.map +1 -1
  1338. package/dist/es-legacy/core/ProcessResponse/process-response.js +1 -1
  1339. package/dist/es-legacy/core/ProcessResponse/process-response.js.map +1 -1
  1340. package/dist/es-legacy/core/RiskModule/RiskModule.js +1 -1
  1341. package/dist/es-legacy/core/RiskModule/RiskModule.js.map +1 -1
  1342. package/dist/es-legacy/core/RiskModule/components/DeviceFingerprint/DeviceFingerprint.js +1 -1
  1343. package/dist/es-legacy/core/RiskModule/components/DeviceFingerprint/DeviceFingerprint.js.map +1 -1
  1344. package/dist/es-legacy/core/RiskModule/components/DeviceFingerprint/GetDeviceFingerprint.js +1 -1
  1345. package/dist/es-legacy/core/RiskModule/components/DeviceFingerprint/GetDeviceFingerprint.js.map +1 -1
  1346. package/dist/es-legacy/core/RiskModule/components/DeviceFingerprint/utils.js.map +1 -1
  1347. package/dist/es-legacy/core/Services/analytics/collect-id.js +1 -1
  1348. package/dist/es-legacy/core/Services/analytics/collect-id.js.map +1 -1
  1349. package/dist/es-legacy/core/Services/http.js +1 -1
  1350. package/dist/es-legacy/core/Services/http.js.map +1 -1
  1351. package/dist/es-legacy/core/Services/sessions/check-balance.js +1 -1
  1352. package/dist/es-legacy/core/Services/sessions/check-balance.js.map +1 -1
  1353. package/dist/es-legacy/core/Services/sessions/make-payment.js +1 -1
  1354. package/dist/es-legacy/core/Services/sessions/make-payment.js.map +1 -1
  1355. package/dist/es-legacy/core/Services/sessions/setup-session.js +1 -1
  1356. package/dist/es-legacy/core/Services/sessions/setup-session.js.map +1 -1
  1357. package/dist/es-legacy/core/Services/sessions/submit-details.js +1 -1
  1358. package/dist/es-legacy/core/Services/sessions/submit-details.js.map +1 -1
  1359. package/dist/es-legacy/core/config.js.map +1 -1
  1360. package/dist/es-legacy/core/core.js +1 -1
  1361. package/dist/es-legacy/core/core.js.map +1 -1
  1362. package/dist/es-legacy/core/core.registry.js +1 -1
  1363. package/dist/es-legacy/core/core.registry.js.map +1 -1
  1364. package/dist/es-legacy/core/utils.js +1 -1
  1365. package/dist/es-legacy/core/utils.js.map +1 -1
  1366. package/dist/es-legacy/external/classnames/index.js.map +1 -1
  1367. package/dist/es-legacy/external/preact/compat/dist/compat.js +2 -0
  1368. package/dist/es-legacy/external/preact/compat/dist/compat.js.map +1 -0
  1369. package/dist/es-legacy/external/preact/dist/preact.js +1 -1
  1370. package/dist/es-legacy/external/preact/dist/preact.js.map +1 -1
  1371. package/dist/es-legacy/external/preact/hooks/dist/hooks.js +1 -1
  1372. package/dist/es-legacy/external/preact/hooks/dist/hooks.js.map +1 -1
  1373. package/dist/es-legacy/language/Language.js +1 -1
  1374. package/dist/es-legacy/language/Language.js.map +1 -1
  1375. package/dist/es-legacy/language/utils.js +1 -1
  1376. package/dist/es-legacy/language/utils.js.map +1 -1
  1377. package/dist/es-legacy/utils/Script.js +1 -1
  1378. package/dist/es-legacy/utils/Script.js.map +1 -1
  1379. package/dist/es-legacy/utils/Storage.js.map +1 -1
  1380. package/dist/es-legacy/utils/Validator/ValidationRuleResult.js.map +1 -1
  1381. package/dist/es-legacy/utils/Validator/Validator.js +1 -1
  1382. package/dist/es-legacy/utils/Validator/Validator.js.map +1 -1
  1383. package/dist/es-legacy/utils/Validator/defaultRules.js.map +1 -1
  1384. package/dist/es-legacy/utils/amount-util.js +1 -1
  1385. package/dist/es-legacy/utils/amount-util.js.map +1 -1
  1386. package/dist/es-legacy/utils/arrayUtils.js +1 -1
  1387. package/dist/es-legacy/utils/arrayUtils.js.map +1 -1
  1388. package/dist/es-legacy/utils/base64.js +1 -1
  1389. package/dist/es-legacy/utils/base64.js.map +1 -1
  1390. package/dist/es-legacy/utils/clipboard.js +1 -1
  1391. package/dist/es-legacy/utils/clipboard.js.map +1 -1
  1392. package/dist/es-legacy/utils/commonUtils.js +1 -1
  1393. package/dist/es-legacy/utils/commonUtils.js.map +1 -1
  1394. package/dist/es-legacy/utils/debounce.js +1 -1
  1395. package/dist/es-legacy/utils/debounce.js.map +1 -1
  1396. package/dist/es-legacy/utils/detectInIframe.js.map +1 -1
  1397. package/dist/es-legacy/utils/get-issuer-image.js +1 -1
  1398. package/dist/es-legacy/utils/get-issuer-image.js.map +1 -1
  1399. package/dist/es-legacy/utils/get-process-message-handler.js.map +1 -1
  1400. package/dist/es-legacy/utils/getErrorMessage.js.map +1 -1
  1401. package/dist/es-legacy/utils/getOrigin.js.map +1 -1
  1402. package/dist/es-legacy/utils/getProp.js +1 -1
  1403. package/dist/es-legacy/utils/getProp.js.map +1 -1
  1404. package/dist/es-legacy/utils/hasOwnProperty.js.map +1 -1
  1405. package/dist/es-legacy/utils/hookUtils.js +1 -1
  1406. package/dist/es-legacy/utils/hookUtils.js.map +1 -1
  1407. package/dist/es-legacy/utils/idGenerator.js.map +1 -1
  1408. package/dist/es-legacy/utils/isValidURL.js.map +1 -1
  1409. package/dist/es-legacy/utils/promiseTimeout.js +1 -1
  1410. package/dist/es-legacy/utils/promiseTimeout.js.map +1 -1
  1411. package/dist/es-legacy/utils/regex.js.map +1 -1
  1412. package/dist/es-legacy/utils/setFocus.js.map +1 -1
  1413. package/dist/es-legacy/utils/useAutoFocus.js +1 -1
  1414. package/dist/es-legacy/utils/useAutoFocus.js.map +1 -1
  1415. package/dist/es-legacy/utils/useForm/reducer.js +1 -1
  1416. package/dist/es-legacy/utils/useForm/reducer.js.map +1 -1
  1417. package/dist/es-legacy/utils/useForm/useForm.js +1 -1
  1418. package/dist/es-legacy/utils/useForm/useForm.js.map +1 -1
  1419. package/dist/es-legacy/utils/useIsMobile.js +1 -1
  1420. package/dist/es-legacy/utils/useIsMobile.js.map +1 -1
  1421. package/dist/es-legacy/utils/uuid.js +1 -1
  1422. package/dist/es-legacy/utils/uuid.js.map +1 -1
  1423. package/dist/es-legacy/utils/validator-utils.js.map +1 -1
  1424. package/package.json +7 -8
  1425. package/styles/adyen.css +6 -3
@@ -1 +1 @@
1
- {"version":3,"file":"callSubmit3DS2Fingerprint.js","sources":["../../../../src/components/ThreeDS2/callSubmit3DS2Fingerprint.ts"],"sourcesContent":["import { httpPost } from '../../core/Services/http';\nimport { pick } from '../../utils/commonUtils';\nimport { ThreeDS2FingerprintResponse } from './types';\nimport AdyenCheckoutError from '../../core/Errors/AdyenCheckoutError';\nimport { THREEDS2_FINGERPRINT_SUBMIT } from './constants';\nimport { ANALYTICS_ERROR_TYPE, Analytics3DS2Errors } from '../../core/Analytics/constants';\nimport { API_ERROR_CODE } from '../../core/Services/sessions/constants';\nimport { AnalyticsEvent } from '../../core/Analytics/AnalyticsEvent';\nimport { AnalyticsErrorEvent } from '../../core/Analytics/AnalyticsErrorEvent';\n\n/**\n * ThreeDS2DeviceFingerprint, onComplete, calls a new, internal, endpoint which\n * behaves like the /details endpoint but doesn't require the same credentials\n */\nexport default function callSubmit3DS2Fingerprint({ data }): void {\n httpPost<ThreeDS2FingerprintResponse>(\n {\n path: `v1/submitThreeDS2Fingerprint?token=${this.props.clientKey}`,\n loadingContext: this.props.loadingContext,\n errorLevel: 'fatal',\n errorCode: API_ERROR_CODE.submitThreeDS2Fingerprint\n },\n {\n ...data\n }\n )\n .then(resData => {\n let event: AnalyticsEvent;\n\n /**\n * Frictionless (no challenge) flow OR \"refused\" flow\n */\n if (resData.type === 'completed') {\n const { details } = resData;\n\n if (!resData.details) {\n console.debug(\n 'Handled Error::callSubmit3DS2Fingerprint::FAILED:: no details object in a response indicating either a \"frictionless\" flow, or a \"refused\" response. resData=',\n resData\n );\n\n event = new AnalyticsErrorEvent({\n code: Analytics3DS2Errors.NO_DETAILS_FOR_FRICTIONLESS_OR_REFUSED,\n errorType: ANALYTICS_ERROR_TYPE.apiError,\n message: `${THREEDS2_FINGERPRINT_SUBMIT}: no details object in a response indicating either a \"frictionless\" flow, or a \"refused\" response`\n });\n\n this.submitAnalytics(event);\n\n return;\n }\n\n return this.onComplete({ data: { details } });\n }\n\n /**\n * If we don't have a type: \"completed\", then we expect an action, because we must be in a Challenge or Redirect flow\n */\n if (!resData.action) {\n console.debug(\n 'Handled Error::callSubmit3DS2Fingerprint::FAILED:: no action object in a response indicating a \"challenge\". resData=',\n resData\n );\n\n event = new AnalyticsErrorEvent({\n code: Analytics3DS2Errors.NO_ACTION_FOR_CHALLENGE,\n errorType: ANALYTICS_ERROR_TYPE.apiError,\n message: `${THREEDS2_FINGERPRINT_SUBMIT}: no action object in a response indicating a \"challenge\" flow`\n });\n this.submitAnalytics(event);\n\n return;\n }\n\n // elementRef exists when the fingerprint component is created from the Dropin\n const actionHandler = this.props.elementRef ?? this;\n\n /**\n * We have an action but do we have a way to handle it?\n * TODO - check logs: do we ever *not* have an actionHandler?\n */\n if (!actionHandler) {\n console.debug('Handled Error::callSubmit3DS2Fingerprint::FAILED:: no actionHandler');\n\n event = new AnalyticsErrorEvent({\n code: Analytics3DS2Errors.NO_COMPONENT_FOR_ACTION,\n errorType: ANALYTICS_ERROR_TYPE.sdkError,\n message: `${THREEDS2_FINGERPRINT_SUBMIT}: no component defined to handle the action response`\n });\n\n this.submitAnalytics(event);\n\n return;\n }\n\n /**\n * Challenge flow\n */\n if (resData.action?.type === 'threeDS2') {\n // Ensure challengeWindowSize is propagated if there was a (merchant defined) handleAction call proceeding this one that had it set as an option\n return actionHandler.handleAction(resData.action, pick('challengeWindowSize').from(this.props));\n }\n\n /**\n * Redirect flow (usecase: we thought we could do 3DS2 but it turns out we can't)\n * TODO - check logs: does this ever happen, anymore?\n */\n if (resData.action?.type === 'redirect') {\n return actionHandler.handleAction(resData.action);\n }\n })\n .catch((error: AdyenCheckoutError) => {\n this.handleError(error);\n });\n}\n"],"names":["callSubmit3DS2Fingerprint","data","httpPost","path","this","props","clientKey","loadingContext","errorLevel","errorCode","API_ERROR_CODE","submitThreeDS2Fingerprint","then","resData","event","type","details","onComplete","console","debug","AnalyticsErrorEvent","code","Analytics3DS2Errors","NO_DETAILS_FOR_FRICTIONLESS_OR_REFUSED","errorType","ANALYTICS_ERROR_TYPE","apiError","message","THREEDS2_FINGERPRINT_SUBMIT","submitAnalytics","action","NO_ACTION_FOR_CHALLENGE","actionHandler","elementRef","handleAction","pick","from","NO_COMPONENT_FOR_ACTION","sdkError","catch","error","handleError"],"mappings":"qaAce,SAASA,GAA0BC,KAAEA,IAChDC,EACI,CACIC,KAAM,sCAAsCC,KAAKC,MAAMC,YACvDC,eAAgBH,KAAKC,MAAME,eAC3BC,WAAY,QACZC,UAAWC,EAAeC,2BAE9B,IACOV,IAGNW,MAAKC,IACF,IAAIC,EAKJ,GAAqB,cAAjBD,EAAQE,KAAsB,CAC9B,MAAMC,QAAEA,GAAYH,EAEpB,OAAKA,EAAQG,QAiBNZ,KAAKa,WAAW,CAAEhB,KAAM,CAAEe,cAhB7BE,QAAQC,MACJ,gKACAN,GAGJC,EAAQ,IAAIM,EAAoB,CAC5BC,KAAMC,EAAoBC,uCAC1BC,UAAWC,EAAqBC,SAChCC,QAAS,GAAGC,6GAGhBxB,KAAKyB,gBAAgBf,GAM7B,CAKA,IAAKD,EAAQiB,OAaT,OAZAZ,QAAQC,MACJ,uHACAN,GAGJC,EAAQ,IAAIM,EAAoB,CAC5BC,KAAMC,EAAoBS,wBAC1BP,UAAWC,EAAqBC,SAChCC,QAAS,GAAGC,yEAEhBxB,KAAKyB,gBAAgBf,GAMzB,MAAMkB,EAAgB5B,KAAKC,MAAM4B,YAAc7B,KAM/C,OAAK4B,EAiBwB,aAAzBnB,EAAQiB,QAAQf,KAETiB,EAAcE,aAAarB,EAAQiB,OAAQK,EAAK,uBAAuBC,KAAKhC,KAAKC,QAO/D,aAAzBQ,EAAQiB,QAAQf,KACTiB,EAAcE,aAAarB,EAAQiB,aAD9C,GAzBIZ,QAAQC,MAAM,uEAEdL,EAAQ,IAAIM,EAAoB,CAC5BC,KAAMC,EAAoBe,wBAC1Bb,UAAWC,EAAqBa,SAChCX,QAAS,GAAGC,+DAGhBxB,KAAKyB,gBAAgBf,GAmBzB,IAEHyB,OAAOC,IACJpC,KAAKqC,YAAYD,EAAAA,GAE7B"}
1
+ {"version":3,"file":"callSubmit3DS2Fingerprint.js","sources":["../../../../src/components/ThreeDS2/callSubmit3DS2Fingerprint.ts"],"sourcesContent":["import { httpPost } from '../../core/Services/http';\nimport { pick } from '../../utils/commonUtils';\nimport { ThreeDS2FingerprintResponse } from './types';\nimport AdyenCheckoutError from '../../core/Errors/AdyenCheckoutError';\nimport { THREEDS2_FINGERPRINT_SUBMIT } from './constants';\nimport { ANALYTICS_ERROR_TYPE, Analytics3DS2Errors } from '../../core/Analytics/constants';\nimport { API_ERROR_CODE } from '../../core/Services/sessions/constants';\nimport { AnalyticsEvent } from '../../core/Analytics/AnalyticsEvent';\nimport { AnalyticsErrorEvent } from '../../core/Analytics/AnalyticsErrorEvent';\n\n/**\n * ThreeDS2DeviceFingerprint, onComplete, calls a new, internal, endpoint which\n * behaves like the /details endpoint but doesn't require the same credentials\n */\nexport default function callSubmit3DS2Fingerprint({ data }): void {\n httpPost<ThreeDS2FingerprintResponse>(\n {\n path: `v1/submitThreeDS2Fingerprint?token=${this.props.clientKey}`,\n loadingContext: this.props.loadingContext,\n errorLevel: 'fatal',\n errorCode: API_ERROR_CODE.submitThreeDS2Fingerprint\n },\n {\n ...data\n }\n )\n .then(resData => {\n let event: AnalyticsEvent;\n\n /**\n * Frictionless (no challenge) flow OR \"refused\" flow\n */\n if (resData.type === 'completed') {\n const { details } = resData;\n\n if (!resData.details) {\n console.debug(\n 'Handled Error::callSubmit3DS2Fingerprint::FAILED:: no details object in a response indicating either a \"frictionless\" flow, or a \"refused\" response. resData=',\n resData\n );\n\n event = new AnalyticsErrorEvent({\n code: Analytics3DS2Errors.NO_DETAILS_FOR_FRICTIONLESS_OR_REFUSED,\n errorType: ANALYTICS_ERROR_TYPE.apiError,\n message: `${THREEDS2_FINGERPRINT_SUBMIT}: no details object in a response indicating either a \"frictionless\" flow, or a \"refused\" response`\n });\n\n this.submitAnalytics(event);\n\n return;\n }\n\n return this.onComplete({ data: { details } });\n }\n\n /**\n * If we don't have a type: \"completed\", then we expect an action, because we must be in a Challenge or Redirect flow\n */\n if (!resData.action) {\n console.debug(\n 'Handled Error::callSubmit3DS2Fingerprint::FAILED:: no action object in a response indicating a \"challenge\". resData=',\n resData\n );\n\n event = new AnalyticsErrorEvent({\n code: Analytics3DS2Errors.NO_ACTION_FOR_CHALLENGE,\n errorType: ANALYTICS_ERROR_TYPE.apiError,\n message: `${THREEDS2_FINGERPRINT_SUBMIT}: no action object in a response indicating a \"challenge\" flow`\n });\n this.submitAnalytics(event);\n\n return;\n }\n\n // elementRef exists when the fingerprint component is created from the Dropin\n const actionHandler = this.props.elementRef ?? this;\n\n /**\n * We have an action but do we have a way to handle it?\n * TODO - check logs: do we ever *not* have an actionHandler?\n */\n if (!actionHandler) {\n console.debug('Handled Error::callSubmit3DS2Fingerprint::FAILED:: no actionHandler');\n\n event = new AnalyticsErrorEvent({\n code: Analytics3DS2Errors.NO_COMPONENT_FOR_ACTION,\n errorType: ANALYTICS_ERROR_TYPE.sdkError,\n message: `${THREEDS2_FINGERPRINT_SUBMIT}: no component defined to handle the action response`\n });\n\n this.submitAnalytics(event);\n\n return;\n }\n\n /**\n * Challenge flow\n */\n if (resData.action?.type === 'threeDS2') {\n // Ensure challengeWindowSize is propagated if there was a (merchant defined) handleAction call proceeding this one that had it set as an option\n return actionHandler.handleAction(resData.action, pick('challengeWindowSize').from(this.props));\n }\n\n /**\n * Redirect flow (usecase: we thought we could do 3DS2 but it turns out we can't)\n * TODO - check logs: does this ever happen, anymore?\n */\n if (resData.action?.type === 'redirect') {\n return actionHandler.handleAction(resData.action);\n }\n })\n .catch((error: AdyenCheckoutError) => {\n this.handleError(error);\n });\n}\n"],"names":["callSubmit3DS2Fingerprint","data","httpPost","path","this","props","clientKey","loadingContext","errorLevel","errorCode","API_ERROR_CODE","submitThreeDS2Fingerprint","then","resData","event","type","details","onComplete","console","debug","AnalyticsErrorEvent","code","Analytics3DS2Errors","NO_DETAILS_FOR_FRICTIONLESS_OR_REFUSED","errorType","ANALYTICS_ERROR_TYPE","apiError","message","THREEDS2_FINGERPRINT_SUBMIT","submitAnalytics","action","NO_ACTION_FOR_CHALLENGE","actionHandler","elementRef","handleAction","pick","from","NO_COMPONENT_FOR_ACTION","sdkError","catch","error","handleError"],"mappings":"qaAce,SAASA,GAA0BC,KAAEA,IAChDC,EACI,CACIC,KAAM,sCAAsCC,KAAKC,MAAMC,YACvDC,eAAgBH,KAAKC,MAAME,eAC3BC,WAAY,QACZC,UAAWC,EAAeC,2BAE9B,IACOV,IAGNW,KAAKC,IACF,IAAIC,EAKJ,GAAqB,cAAjBD,EAAQE,KAAsB,CAC9B,MAAMC,QAAEA,GAAYH,EAEpB,OAAKA,EAAQG,QAiBNZ,KAAKa,WAAW,CAAEhB,KAAM,CAAEe,cAhB7BE,QAAQC,MACJ,gKACAN,GAGJC,EAAQ,IAAIM,EAAoB,CAC5BC,KAAMC,EAAoBC,uCAC1BC,UAAWC,EAAqBC,SAChCC,QAAS,GAAGC,6GAGhBxB,KAAKyB,gBAAgBf,GAM7B,CAKA,IAAKD,EAAQiB,OAaT,OAZAZ,QAAQC,MACJ,uHACAN,GAGJC,EAAQ,IAAIM,EAAoB,CAC5BC,KAAMC,EAAoBS,wBAC1BP,UAAWC,EAAqBC,SAChCC,QAAS,GAAGC,yEAEhBxB,KAAKyB,gBAAgBf,GAMzB,MAAMkB,EAAgB5B,KAAKC,MAAM4B,YAAc7B,KAM/C,OAAK4B,EAiBwB,aAAzBnB,EAAQiB,QAAQf,KAETiB,EAAcE,aAAarB,EAAQiB,OAAQK,EAAK,uBAAuBC,KAAKhC,KAAKC,QAO/D,aAAzBQ,EAAQiB,QAAQf,KACTiB,EAAcE,aAAarB,EAAQiB,aAD9C,GAzBIZ,QAAQC,MAAM,uEAEdL,EAAQ,IAAIM,EAAoB,CAC5BC,KAAMC,EAAoBe,wBAC1Bb,UAAWC,EAAqBa,SAChCX,QAAS,GAAGC,+DAGhBxB,KAAKyB,gBAAgBf,MAqB5ByB,MAAOC,IACJpC,KAAKqC,YAAYD,IAE7B"}
@@ -1,2 +1,2 @@
1
- import{Component as e,createElement as s}from"../../../../external/preact/dist/preact.js";import t from"../../../../_virtual/index.js";import r from"../../../internal/IFrame/Iframe.js";import a from"../../../internal/Spinner/Spinner.js";import n from"../Form/ThreeDS2Form.js";import i from"../../../../utils/get-process-message-handler.js";import{encodeBase64URL as o}from"../utils.js";import l from"../../../../utils/promiseTimeout.js";import{CHALLENGE_TIMEOUT as m,CHALLENGE_TIMEOUT_REJECT_OBJECT as c,THREEDS2_NUM as h}from"../../constants.js";function p(e,s,t){return s in e?Object.defineProperty(e,s,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[s]=t,e}const d="threeDSIframe";class g extends e{get3DS2ChallengePromise(){return new Promise(((e,s)=>{this.processMessageHandler=i(this.props.postMessageDomain,e,s,"challengeResult"),window.addEventListener("message",this.processMessageHandler)}))}componentDidMount(){this.challengePromise=l(m,this.get3DS2ChallengePromise(),c),this.challengePromise.promise.then((e=>{window.removeEventListener("message",this.processMessageHandler),this.props.onCompleteChallenge(e)})).catch((e=>{window.removeEventListener("message",this.processMessageHandler),this.props.onErrorChallenge(e)}))}componentWillUnmount(){this.challengePromise&&this.challengePromise.cancel(),window.removeEventListener("message",this.processMessageHandler)}render({acsURL:e,cReqData:i,iframeSizeArr:o,onFormSubmit:l},{base64URLencodedData:m,status:c}){const[h,p]=o;return s("div",{className:t(["adyen-checkout__threeds2__challenge",`adyen-checkout__threeds2__challenge--${i.challengeWindowSize}`])},"iframeLoaded"!==c&&s(a,null),s(r,{name:d,width:h,height:p,callback:this.iframeCallback}),s(n,{name:"cReqForm",action:e,target:d,inputName:"creq",inputValue:m,onFormSubmit:l}))}constructor(e){super(e),p(this,"processMessageHandler",void 0),p(this,"challengePromise",void 0),p(this,"iframeCallback",(()=>{this.setState({status:"iframeLoaded"}),"init"===this.state.status&&this.props.onActionHandled?.({componentType:"3DS2Challenge",actionDescription:`${h} challenge iframe loaded`})}));const s=JSON.stringify(this.props.cReqData),t=o(s);this.state={base64URLencodedData:t,status:"init"}}}export{g as default};
1
+ import{Component as e,createElement as s}from"../../../../external/preact/dist/preact.js";import t from"../../../../_virtual/index.js";import r from"../../../internal/IFrame/Iframe.js";import a from"../../../internal/Spinner/Spinner.js";import n from"../Form/ThreeDS2Form.js";import i from"../../../../utils/get-process-message-handler.js";import{encodeBase64URL as o}from"../utils.js";import l from"../../../../utils/promiseTimeout.js";import{CHALLENGE_TIMEOUT as m,CHALLENGE_TIMEOUT_REJECT_OBJECT as c,THREEDS2_NUM as h}from"../../constants.js";function p(e,s,t){return s in e?Object.defineProperty(e,s,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[s]=t,e}const d="threeDSIframe";class g extends e{get3DS2ChallengePromise(){return new Promise((e,s)=>{this.processMessageHandler=i(this.props.postMessageDomain,e,s,"challengeResult"),window.addEventListener("message",this.processMessageHandler)})}componentDidMount(){this.challengePromise=l(m,this.get3DS2ChallengePromise(),c),this.challengePromise.promise.then(e=>{window.removeEventListener("message",this.processMessageHandler),this.props.onCompleteChallenge(e)}).catch(e=>{window.removeEventListener("message",this.processMessageHandler),this.props.onErrorChallenge(e)})}componentWillUnmount(){this.challengePromise&&this.challengePromise.cancel(),window.removeEventListener("message",this.processMessageHandler)}render({acsURL:e,cReqData:i,iframeSizeArr:o,onFormSubmit:l},{base64URLencodedData:m,status:c}){const[h,p]=o;return s("div",{className:t(["adyen-checkout__threeds2__challenge",`adyen-checkout__threeds2__challenge--${i.challengeWindowSize}`])},"iframeLoaded"!==c&&s(a,null),s(r,{name:d,width:h,height:p,callback:this.iframeCallback}),s(n,{name:"cReqForm",action:e,target:d,inputName:"creq",inputValue:m,onFormSubmit:l}))}constructor(e){super(e),p(this,"processMessageHandler",void 0),p(this,"challengePromise",void 0),p(this,"iframeCallback",()=>{this.setState({status:"iframeLoaded"}),"init"===this.state.status&&this.props.onActionHandled?.({componentType:"3DS2Challenge",actionDescription:`${h} challenge iframe loaded`})});const s=JSON.stringify(this.props.cReqData),t=o(s);this.state={base64URLencodedData:t,status:"init"}}}export{g as default};
2
2
  //# sourceMappingURL=DoChallenge3DS2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DoChallenge3DS2.js","sources":["../../../../../../src/components/ThreeDS2/components/Challenge/DoChallenge3DS2.tsx"],"sourcesContent":["import { Component, h } from 'preact';\nimport classNames from 'classnames';\nimport Iframe from '../../../internal/IFrame';\nimport Spinner from '../../../internal/Spinner';\nimport ThreeDS2Form from '../Form';\nimport getProcessMessageHandler from '../../../../utils/get-process-message-handler';\nimport { encodeBase64URL } from '../utils';\nimport promiseTimeout from '../../../../utils/promiseTimeout';\nimport { CHALLENGE_TIMEOUT, CHALLENGE_TIMEOUT_REJECT_OBJECT, THREEDS2_NUM } from '../../constants';\nimport { DoChallenge3DS2Props, DoChallenge3DS2State } from './types';\nimport { ThreeDS2FlowObject } from '../../types';\n\nconst iframeName = 'threeDSIframe';\n\nclass DoChallenge3DS2 extends Component<DoChallenge3DS2Props, DoChallenge3DS2State> {\n private processMessageHandler;\n private challengePromise: { cancel: () => void; promise: Promise<any> };\n\n constructor(props) {\n super(props);\n\n /**\n * Create and Base64Url encode a JSON object containing the serverTransactionID & threeDSMethodNotificationURL\n */\n const jsonStr = JSON.stringify(this.props.cReqData);\n const base64URLencodedData = encodeBase64URL(jsonStr);\n this.state = { base64URLencodedData, status: 'init' };\n }\n\n private iframeCallback = () => {\n this.setState({ status: 'iframeLoaded' });\n // On Test - actually calls-back 3 times: once for challenge screen, once again as challenge.html reloads after the challenge is submitted, and once for redirect to threeDSNotificationURL.\n // But for the purposes of calling the merchant defined onActionHandled callback - we only want to do it once\n if (this.state.status === 'init') {\n this.props.onActionHandled?.({ componentType: '3DS2Challenge', actionDescription: `${THREEDS2_NUM} challenge iframe loaded` });\n }\n };\n\n private get3DS2ChallengePromise(): Promise<any> {\n return new Promise((resolve, reject) => {\n /**\n * Listen for postMessage responses from the notification url\n */\n this.processMessageHandler = getProcessMessageHandler(this.props.postMessageDomain, resolve, reject, 'challengeResult');\n\n window.addEventListener('message', this.processMessageHandler);\n });\n }\n\n componentDidMount() {\n // Render challenge\n this.challengePromise = promiseTimeout(CHALLENGE_TIMEOUT, this.get3DS2ChallengePromise(), CHALLENGE_TIMEOUT_REJECT_OBJECT);\n this.challengePromise.promise\n .then((resolveObject: ThreeDS2FlowObject) => {\n window.removeEventListener('message', this.processMessageHandler);\n this.props.onCompleteChallenge(resolveObject);\n })\n /** Catch, for when Challenge times-out */\n .catch((rejectObject: ThreeDS2FlowObject) => {\n window.removeEventListener('message', this.processMessageHandler);\n this.props.onErrorChallenge(rejectObject);\n });\n }\n\n componentWillUnmount() {\n if (this.challengePromise) this.challengePromise.cancel();\n window.removeEventListener('message', this.processMessageHandler);\n }\n\n render({ acsURL, cReqData, iframeSizeArr, onFormSubmit }, { base64URLencodedData, status }) {\n const [width, height] = iframeSizeArr;\n\n return (\n <div\n className={classNames([\n 'adyen-checkout__threeds2__challenge',\n `adyen-checkout__threeds2__challenge--${cReqData.challengeWindowSize}`\n ])}\n >\n {status !== 'iframeLoaded' && <Spinner />}\n\n <Iframe name={iframeName} width={width} height={height} callback={this.iframeCallback} />\n <ThreeDS2Form\n name={'cReqForm'}\n action={acsURL}\n target={iframeName}\n inputName={'creq'}\n inputValue={base64URLencodedData}\n onFormSubmit={onFormSubmit}\n />\n </div>\n );\n }\n}\n\nexport default DoChallenge3DS2;\n"],"names":["iframeName","DoChallenge3DS2","Component","get3DS2ChallengePromise","Promise","resolve","reject","this","processMessageHandler","getProcessMessageHandler","props","postMessageDomain","window","addEventListener","componentDidMount","challengePromise","promiseTimeout","CHALLENGE_TIMEOUT","CHALLENGE_TIMEOUT_REJECT_OBJECT","promise","then","resolveObject","removeEventListener","onCompleteChallenge","catch","rejectObject","onErrorChallenge","componentWillUnmount","cancel","render","acsURL","cReqData","iframeSizeArr","onFormSubmit","base64URLencodedData","status","width","height","h","div","className","classNames","challengeWindowSize","Spinner","Iframe","name","callback","iframeCallback","ThreeDS2Form","action","target","inputName","inputValue","constructor","super","_define_property","setState","state","onActionHandled","componentType","actionDescription","THREEDS2_NUM","jsonStr","JSON","stringify","encodeBase64URL"],"mappings":"2pBAYA,MAAMA,EAAa,gBAEnB,MAAMC,UAAwBC,EAwBlBC,uBAAAA,GACJ,OAAO,IAAIC,SAAQ,CAACC,EAASC,KAIzBC,KAAKC,sBAAwBC,EAAyBF,KAAKG,MAAMC,kBAAmBN,EAASC,EAAQ,mBAErGM,OAAOC,iBAAiB,UAAWN,KAAKC,sBAAqB,GAErE,CAEAM,iBAAAA,GAEIP,KAAKQ,iBAAmBC,EAAeC,EAAmBV,KAAKJ,0BAA2Be,GAC1FX,KAAKQ,iBAAiBI,QACjBC,MAAMC,IACHT,OAAOU,oBAAoB,UAAWf,KAAKC,uBAC3CD,KAAKG,MAAMa,oBAAoBF,EAAAA,IAGlCG,OAAOC,IACJb,OAAOU,oBAAoB,UAAWf,KAAKC,uBAC3CD,KAAKG,MAAMgB,iBAAiBD,EAAAA,GAExC,CAEAE,oBAAAA,GACQpB,KAAKQ,kBAAkBR,KAAKQ,iBAAiBa,SACjDhB,OAAOU,oBAAoB,UAAWf,KAAKC,sBAC/C,CAEAqB,MAAAA,EAAOC,OAAEA,EAAMC,SAAEA,EAAQC,cAAEA,EAAaC,aAAEA,IAAgBC,qBAAEA,EAAoBC,OAAEA,IAC9E,MAAOC,EAAOC,GAAUL,EAExB,OACIM,EAACC,MAAAA,CACGC,UAAWC,EAAW,CAClB,sCACA,wCAAwCV,EAASW,yBAGzC,iBAAXP,GAA6BG,EAACK,EAAAA,MAE/BL,EAACM,EAAAA,CAAOC,KAAM7C,EAAYoC,MAAOA,EAAOC,OAAQA,EAAQS,SAAUvC,KAAKwC,iBACvET,EAACU,EAAAA,CACGH,KAAM,WACNI,OAAQnB,EACRoB,OAAQlD,EACRmD,UAAW,OACXC,WAAYlB,EACZD,aAAcA,IAI9B,CA1EAoB,WAAAA,CAAY3C,GACR4C,MAAM5C,GAJV6C,EAAAhD,KAAQC,6BAAR,GACA+C,EAAAhD,KAAQQ,wBAAR,GAaAwC,EAAAhD,KAAQwC,kBAAiB,KACrBxC,KAAKiD,SAAS,CAAErB,OAAQ,iBAGE,SAAtB5B,KAAKkD,MAAMtB,QACX5B,KAAKG,MAAMgD,kBAAkB,CAAEC,cAAe,gBAAiBC,kBAAmB,GAAGC,6BACzF,IAXA,MAAMC,EAAUC,KAAKC,UAAUzD,KAAKG,MAAMqB,UACpCG,EAAuB+B,EAAgBH,GAC7CvD,KAAKkD,MAAQ,CAAEvB,uBAAsBC,OAAQ,OACjD"}
1
+ {"version":3,"file":"DoChallenge3DS2.js","sources":["../../../../../../src/components/ThreeDS2/components/Challenge/DoChallenge3DS2.tsx"],"sourcesContent":["import { Component, h } from 'preact';\nimport classNames from 'classnames';\nimport Iframe from '../../../internal/IFrame';\nimport Spinner from '../../../internal/Spinner';\nimport ThreeDS2Form from '../Form';\nimport getProcessMessageHandler from '../../../../utils/get-process-message-handler';\nimport { encodeBase64URL } from '../utils';\nimport promiseTimeout from '../../../../utils/promiseTimeout';\nimport { CHALLENGE_TIMEOUT, CHALLENGE_TIMEOUT_REJECT_OBJECT, THREEDS2_NUM } from '../../constants';\nimport { DoChallenge3DS2Props, DoChallenge3DS2State } from './types';\nimport { ThreeDS2FlowObject } from '../../types';\n\nconst iframeName = 'threeDSIframe';\n\nclass DoChallenge3DS2 extends Component<DoChallenge3DS2Props, DoChallenge3DS2State> {\n private processMessageHandler;\n private challengePromise: { cancel: () => void; promise: Promise<any> };\n\n constructor(props) {\n super(props);\n\n /**\n * Create and Base64Url encode a JSON object containing the serverTransactionID & threeDSMethodNotificationURL\n */\n const jsonStr = JSON.stringify(this.props.cReqData);\n const base64URLencodedData = encodeBase64URL(jsonStr);\n this.state = { base64URLencodedData, status: 'init' };\n }\n\n private iframeCallback = () => {\n this.setState({ status: 'iframeLoaded' });\n // On Test - actually calls-back 3 times: once for challenge screen, once again as challenge.html reloads after the challenge is submitted, and once for redirect to threeDSNotificationURL.\n // But for the purposes of calling the merchant defined onActionHandled callback - we only want to do it once\n if (this.state.status === 'init') {\n this.props.onActionHandled?.({ componentType: '3DS2Challenge', actionDescription: `${THREEDS2_NUM} challenge iframe loaded` });\n }\n };\n\n private get3DS2ChallengePromise(): Promise<any> {\n return new Promise((resolve, reject) => {\n /**\n * Listen for postMessage responses from the notification url\n */\n this.processMessageHandler = getProcessMessageHandler(this.props.postMessageDomain, resolve, reject, 'challengeResult');\n\n window.addEventListener('message', this.processMessageHandler);\n });\n }\n\n componentDidMount() {\n // Render challenge\n this.challengePromise = promiseTimeout(CHALLENGE_TIMEOUT, this.get3DS2ChallengePromise(), CHALLENGE_TIMEOUT_REJECT_OBJECT);\n this.challengePromise.promise\n .then((resolveObject: ThreeDS2FlowObject) => {\n window.removeEventListener('message', this.processMessageHandler);\n this.props.onCompleteChallenge(resolveObject);\n })\n /** Catch, for when Challenge times-out */\n .catch((rejectObject: ThreeDS2FlowObject) => {\n window.removeEventListener('message', this.processMessageHandler);\n this.props.onErrorChallenge(rejectObject);\n });\n }\n\n componentWillUnmount() {\n if (this.challengePromise) this.challengePromise.cancel();\n window.removeEventListener('message', this.processMessageHandler);\n }\n\n render({ acsURL, cReqData, iframeSizeArr, onFormSubmit }, { base64URLencodedData, status }) {\n const [width, height] = iframeSizeArr;\n\n return (\n <div\n className={classNames([\n 'adyen-checkout__threeds2__challenge',\n `adyen-checkout__threeds2__challenge--${cReqData.challengeWindowSize}`\n ])}\n >\n {status !== 'iframeLoaded' && <Spinner />}\n\n <Iframe name={iframeName} width={width} height={height} callback={this.iframeCallback} />\n <ThreeDS2Form\n name={'cReqForm'}\n action={acsURL}\n target={iframeName}\n inputName={'creq'}\n inputValue={base64URLencodedData}\n onFormSubmit={onFormSubmit}\n />\n </div>\n );\n }\n}\n\nexport default DoChallenge3DS2;\n"],"names":["iframeName","DoChallenge3DS2","Component","get3DS2ChallengePromise","Promise","resolve","reject","this","processMessageHandler","getProcessMessageHandler","props","postMessageDomain","window","addEventListener","componentDidMount","challengePromise","promiseTimeout","CHALLENGE_TIMEOUT","CHALLENGE_TIMEOUT_REJECT_OBJECT","promise","then","resolveObject","removeEventListener","onCompleteChallenge","catch","rejectObject","onErrorChallenge","componentWillUnmount","cancel","render","acsURL","cReqData","iframeSizeArr","onFormSubmit","base64URLencodedData","status","width","height","h","div","className","classNames","challengeWindowSize","Spinner","Iframe","name","callback","iframeCallback","ThreeDS2Form","action","target","inputName","inputValue","constructor","super","_define_property","setState","state","onActionHandled","componentType","actionDescription","THREEDS2_NUM","jsonStr","JSON","stringify","encodeBase64URL"],"mappings":"2pBAYA,MAAMA,EAAa,gBAEnB,MAAMC,UAAwBC,EAwBlBC,uBAAAA,GACJ,OAAO,IAAIC,QAAQ,CAACC,EAASC,KAIzBC,KAAKC,sBAAwBC,EAAyBF,KAAKG,MAAMC,kBAAmBN,EAASC,EAAQ,mBAErGM,OAAOC,iBAAiB,UAAWN,KAAKC,wBAEhD,CAEAM,iBAAAA,GAEIP,KAAKQ,iBAAmBC,EAAeC,EAAmBV,KAAKJ,0BAA2Be,GAC1FX,KAAKQ,iBAAiBI,QACjBC,KAAMC,IACHT,OAAOU,oBAAoB,UAAWf,KAAKC,uBAC3CD,KAAKG,MAAMa,oBAAoBF,KAGlCG,MAAOC,IACJb,OAAOU,oBAAoB,UAAWf,KAAKC,uBAC3CD,KAAKG,MAAMgB,iBAAiBD,IAExC,CAEAE,oBAAAA,GACQpB,KAAKQ,kBAAkBR,KAAKQ,iBAAiBa,SACjDhB,OAAOU,oBAAoB,UAAWf,KAAKC,sBAC/C,CAEAqB,MAAAA,EAAOC,OAAEA,EAAMC,SAAEA,EAAQC,cAAEA,EAAaC,aAAEA,IAAgBC,qBAAEA,EAAoBC,OAAEA,IAC9E,MAAOC,EAAOC,GAAUL,EAExB,OACIM,EAACC,MAAAA,CACGC,UAAWC,EAAW,CAClB,sCACA,wCAAwCV,EAASW,yBAGzC,iBAAXP,GAA6BG,EAACK,EAAAA,MAE/BL,EAACM,EAAAA,CAAOC,KAAM7C,EAAYoC,MAAOA,EAAOC,OAAQA,EAAQS,SAAUvC,KAAKwC,iBACvET,EAACU,EAAAA,CACGH,KAAM,WACNI,OAAQnB,EACRoB,OAAQlD,EACRmD,UAAW,OACXC,WAAYlB,EACZD,aAAcA,IAI9B,CA1EA,WAAAoB,CAAY3C,GACR4C,MAAM5C,GAJV6C,EAAAhD,KAAQC,6BAAR,GACA+C,EAAAhD,KAAQQ,wBAAR,GAaAwC,EAAAhD,KAAQwC,iBAAiB,KACrBxC,KAAKiD,SAAS,CAAErB,OAAQ,iBAGE,SAAtB5B,KAAKkD,MAAMtB,QACX5B,KAAKG,MAAMgD,kBAAkB,CAAEC,cAAe,gBAAiBC,kBAAmB,GAAGC,gCAVzF,MAAMC,EAAUC,KAAKC,UAAUzD,KAAKG,MAAMqB,UACpCG,EAAuB+B,EAAgBH,GAC7CvD,KAAKkD,MAAQ,CAAEvB,uBAAsBC,OAAQ,OACjD"}
@@ -1,2 +1,2 @@
1
- import{Component as e,createElement as r}from"../../../../external/preact/dist/preact.js";import t from"./DoChallenge3DS2.js";import{isErrorObject as s,createOldChallengeResolveData as o,createChallengeResolveData as n,prepareChallengeData as i}from"../utils.js";import a from"../../../internal/Img/Img.js";import{hasOwnProperty as l}from"../../../../utils/hasOwnProperty.js";import c from"../../../../core/Context/useImage.js";import p,{ERROR as h}from"../../../../core/Errors/AdyenCheckoutError.js";import{THREEDS2_CHALLENGE_ERROR as u,MISSING_TOKEN_IN_ACTION_MSG as m,THREEDS2_NUM as d,THREEDS2_FULL as g,THREEDS2_CHALLENGE as S}from"../../constants.js";import{isValidHttpUrl as E}from"../../../../utils/isValidURL.js";import{Analytics3DS2Errors as _,ANALYTICS_ERROR_TYPE as D,Analytics3DS2Events as C}from"../../../../core/Analytics/constants.js";import{AnalyticsLogEvent as I}from"../../../../core/Analytics/AnalyticsLogEvent.js";import{AnalyticsErrorEvent as f}from"../../../../core/Analytics/AnalyticsErrorEvent.js";function T(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}class b extends e{componentDidMount(){if(!s(this.state.challengeData)){const e="test"===this.props.environment&&this.props._environmentUrls?.api?.includes("http://localhost:8080"),{acsURL:r}=this.state.challengeData;if(!E(r,e)){this.setError({errorInfo:`${_.TOKEN_IS_MISSING_ACSURL}: ${this.props.i18n.get("err.gen.9102")}`},!0);const e=new f({code:_.TOKEN_IS_MISSING_ACSURL,errorType:D.apiError,message:`${u}: Decoded token is missing a valid acsURL property`});return this.props.onSubmitAnalytics(e),void console.debug("### PrepareChallenge3DS2::exiting:: no valid acsURL")}const{acsTransID:t,messageVersion:s,threeDSServerTransID:o}=this.state.challengeData.cReqData;if(!t||!s||!o){this.setError({errorInfo:`${_.TOKEN_IS_MISSING_OTHER_PROPS}: ${this.props.i18n.get("err.gen.9102")}`},!0);const e=new f({code:_.TOKEN_IS_MISSING_OTHER_PROPS,errorType:D.apiError,message:`${u}: Decoded token is missing one or more of the following properties (acsTransID | messageVersion | threeDSServerTransID)`});return this.props.onSubmitAnalytics(e),void console.debug("### PrepareChallenge3DS2::exiting:: missing one or more of the following properties (acsTransID | messageVersion | threeDSServerTransID)")}this.setState({status:"performingChallenge"})}else{const e=this.state.challengeData.error,r=e.indexOf(m)>-1?_.ACTION_IS_MISSING_TOKEN:_.TOKEN_DECODE_OR_PARSING_FAILED;this.setError({errorInfo:e.indexOf(m)>-1?`${_.ACTION_IS_MISSING_TOKEN}: ${this.props.i18n.get("err.gen.9102")}`:`${_.TOKEN_DECODE_OR_PARSING_FAILED}: ${this.props.i18n.get("err.gen.9102")}`},!0);const t=new f({code:r,errorType:D.apiError,message:`${u}: ${e}`});this.props.onSubmitAnalytics(t),console.debug("### PrepareChallenge3DS2::exiting:: no challengeData")}}setStatusComplete(e,r=null){this.setState({status:"complete"},(()=>{const t=(this.props.isMDFlow?o:n)(this.props.dataKey,e.transStatus,this.props.paymentData);let s;r&&console.debug("### PrepareChallenge3DS2::errorCodeObject::",r);const i=r||e;if(i.errorCode){const e={code:"timeout"===i.errorCode?_.THREEDS2_TIMEOUT:_.NO_TRANSSTATUS,errorType:"timeout"===i.errorCode?D.network:D.apiError};s=new f({message:i.message,...e}),this.props.onSubmitAnalytics(s)}let a;switch(e?.transStatus){case"Y":a="success";break;case"N":a="failed";break;case"U":a=r?"timeout":"cancelled"}e?.errorCode&&(a="noTransStatus"),s=new I({type:g,message:`${d} challenge has completed`,subType:C.CHALLENGE_COMPLETED,result:a}),this.props.onSubmitAnalytics(s),this.props.onComplete(t)}))}setError(e,r){this.setState({status:"error",errorInfo:e.errorInfo}),r&&this.props.onError(new p(h,e.errorInfo,{cause:e.errorObj}))}render(e,{challengeData:s}){const o=c();return"performingChallenge"===this.state.status?r(t,{onCompleteChallenge:e=>{let r=null;if(l(e.result,"errorCode")&&e.result.errorCode.length&&(r={errorCode:e.result.errorCode,message:`${u}: ${e.result.errorDescription?e.result.errorDescription:"no transStatus could be retrieved"}`},this.props.isMDFlow&&this.props.onError(new p(h,`${u}: ${e.result.errorDescription?e.result.errorDescription:"no transStatus could be retrieved"}`,{cause:e.result.errorCode}))),!e.result){this.setError({errorInfo:`${u}: ${this.props.i18n.get("3ds.chal.805",{values:{result:'"result"'}})}`,errorObj:e},!0);const r=new f({code:_.CHALLENGE_RESOLVED_WITHOUT_RESULT_PROP,errorType:D.apiError,message:`${u}: challenge resolved without a "result" object`});return this.props.onSubmitAnalytics(r),void console.debug('### PrepareChallenge3DS2::exiting:: challenge resolved without a "result" object')}this.setStatusComplete(e.result,r)},onErrorChallenge:e=>{if(l(e,"errorCode")){const r={errorCode:e.errorCode,message:`${S}: ${e.errorCode}`};return this.props.isMDFlow&&this.props.onError(new p(h,`${u}: '3DS2 challenge timed out'`,{cause:e.errorCode})),void this.setStatusComplete(e.result,r)}},...s,onActionHandled:this.props.onActionHandled,onFormSubmit:this.onFormSubmit}):"error"===this.state.status?r("div",{className:"adyen-checkout__threeds2-challenge-error"},r(a,{className:"adyen-checkout__status__icon adyen-checkout__status__icon--error",src:o({imageFolder:"components/"})("error"),alt:""}),r("div",{className:"adyen-checkout__status__text"},this.state.errorInfo?this.state.errorInfo:this.props.i18n.get("error.message.unknown"))):null}constructor(e){if(super(e),T(this,"onFormSubmit",(e=>{const r=new I({type:g,message:e,subType:C.CHALLENGE_DATA_SENT});this.props.onSubmitAnalytics(r)})),this.props.token){const e=i({token:this.props.token,size:this.props.challengeWindowSize||this.props.size});this.state={status:"init",challengeData:e}}else this.state={challengeData:{success:!1,error:m}},console.debug(`${u}: ${m}`)}}T(b,"defaultProps",{onComplete:()=>{},onError:()=>{},isMDFlow:!1});export{b as default};
1
+ import{Component as e,createElement as r}from"../../../../external/preact/dist/preact.js";import t from"./DoChallenge3DS2.js";import{isErrorObject as s,createOldChallengeResolveData as o,createChallengeResolveData as n,prepareChallengeData as i}from"../utils.js";import a from"../../../internal/Img/Img.js";import{hasOwnProperty as l}from"../../../../utils/hasOwnProperty.js";import c from"../../../../core/Context/useImage.js";import p,{ERROR as h}from"../../../../core/Errors/AdyenCheckoutError.js";import{THREEDS2_CHALLENGE_ERROR as u,MISSING_TOKEN_IN_ACTION_MSG as m,THREEDS2_NUM as d,THREEDS2_FULL as g,THREEDS2_CHALLENGE as S}from"../../constants.js";import{isValidHttpUrl as E}from"../../../../utils/isValidURL.js";import{Analytics3DS2Errors as _,ANALYTICS_ERROR_TYPE as D,Analytics3DS2Events as C}from"../../../../core/Analytics/constants.js";import{AnalyticsLogEvent as I}from"../../../../core/Analytics/AnalyticsLogEvent.js";import{AnalyticsErrorEvent as f}from"../../../../core/Analytics/AnalyticsErrorEvent.js";function T(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}class b extends e{componentDidMount(){if(!s(this.state.challengeData)){const e="test"===this.props.environment&&this.props._environmentUrls?.api?.includes("http://localhost:8080"),{acsURL:r}=this.state.challengeData;if(!E(r,e)){this.setError({errorInfo:`${_.TOKEN_IS_MISSING_ACSURL}: ${this.props.i18n.get("err.gen.9102")}`},!0);const e=new f({code:_.TOKEN_IS_MISSING_ACSURL,errorType:D.apiError,message:`${u}: Decoded token is missing a valid acsURL property`});return this.props.onSubmitAnalytics(e),void console.debug("### PrepareChallenge3DS2::exiting:: no valid acsURL")}const{acsTransID:t,messageVersion:s,threeDSServerTransID:o}=this.state.challengeData.cReqData;if(!t||!s||!o){this.setError({errorInfo:`${_.TOKEN_IS_MISSING_OTHER_PROPS}: ${this.props.i18n.get("err.gen.9102")}`},!0);const e=new f({code:_.TOKEN_IS_MISSING_OTHER_PROPS,errorType:D.apiError,message:`${u}: Decoded token is missing one or more of the following properties (acsTransID | messageVersion | threeDSServerTransID)`});return this.props.onSubmitAnalytics(e),void console.debug("### PrepareChallenge3DS2::exiting:: missing one or more of the following properties (acsTransID | messageVersion | threeDSServerTransID)")}this.setState({status:"performingChallenge"})}else{const e=this.state.challengeData.error,r=e.indexOf(m)>-1?_.ACTION_IS_MISSING_TOKEN:_.TOKEN_DECODE_OR_PARSING_FAILED;this.setError({errorInfo:e.indexOf(m)>-1?`${_.ACTION_IS_MISSING_TOKEN}: ${this.props.i18n.get("err.gen.9102")}`:`${_.TOKEN_DECODE_OR_PARSING_FAILED}: ${this.props.i18n.get("err.gen.9102")}`},!0);const t=new f({code:r,errorType:D.apiError,message:`${u}: ${e}`});this.props.onSubmitAnalytics(t),console.debug("### PrepareChallenge3DS2::exiting:: no challengeData")}}setStatusComplete(e,r=null){this.setState({status:"complete"},()=>{const t=(this.props.isMDFlow?o:n)(this.props.dataKey,e.transStatus,this.props.paymentData);let s;r&&console.debug("### PrepareChallenge3DS2::errorCodeObject::",r);const i=r||e;if(i.errorCode){const e={code:"timeout"===i.errorCode?_.THREEDS2_TIMEOUT:_.NO_TRANSSTATUS,errorType:"timeout"===i.errorCode?D.network:D.apiError};s=new f({message:i.message,...e}),this.props.onSubmitAnalytics(s)}let a;switch(e?.transStatus){case"Y":a="success";break;case"N":a="failed";break;case"U":a=r?"timeout":"cancelled"}e?.errorCode&&(a="noTransStatus"),s=new I({type:g,message:`${d} challenge has completed`,subType:C.CHALLENGE_COMPLETED,result:a}),this.props.onSubmitAnalytics(s),this.props.onComplete(t)})}setError(e,r){this.setState({status:"error",errorInfo:e.errorInfo}),r&&this.props.onError(new p(h,e.errorInfo,{cause:e.errorObj}))}render(e,{challengeData:s}){const o=c();return"performingChallenge"===this.state.status?r(t,{onCompleteChallenge:e=>{let r=null;if(l(e.result,"errorCode")&&e.result.errorCode.length&&(r={errorCode:e.result.errorCode,message:`${u}: ${e.result.errorDescription?e.result.errorDescription:"no transStatus could be retrieved"}`},this.props.isMDFlow&&this.props.onError(new p(h,`${u}: ${e.result.errorDescription?e.result.errorDescription:"no transStatus could be retrieved"}`,{cause:e.result.errorCode}))),!e.result){this.setError({errorInfo:`${u}: ${this.props.i18n.get("3ds.chal.805",{values:{result:'"result"'}})}`,errorObj:e},!0);const r=new f({code:_.CHALLENGE_RESOLVED_WITHOUT_RESULT_PROP,errorType:D.apiError,message:`${u}: challenge resolved without a "result" object`});return this.props.onSubmitAnalytics(r),void console.debug('### PrepareChallenge3DS2::exiting:: challenge resolved without a "result" object')}this.setStatusComplete(e.result,r)},onErrorChallenge:e=>{if(l(e,"errorCode")){const r={errorCode:e.errorCode,message:`${S}: ${e.errorCode}`};return this.props.isMDFlow&&this.props.onError(new p(h,`${u}: '3DS2 challenge timed out'`,{cause:e.errorCode})),void this.setStatusComplete(e.result,r)}},...s,onActionHandled:this.props.onActionHandled,onFormSubmit:this.onFormSubmit}):"error"===this.state.status?r("div",{className:"adyen-checkout__threeds2-challenge-error"},r(a,{className:"adyen-checkout__status__icon adyen-checkout__status__icon--error",src:o({imageFolder:"components/"})("error"),alt:""}),r("div",{className:"adyen-checkout__status__text"},this.state.errorInfo?this.state.errorInfo:this.props.i18n.get("error.message.unknown"))):null}constructor(e){if(super(e),T(this,"onFormSubmit",e=>{const r=new I({type:g,message:e,subType:C.CHALLENGE_DATA_SENT});this.props.onSubmitAnalytics(r)}),this.props.token){const e=i({token:this.props.token,size:this.props.challengeWindowSize||this.props.size});this.state={status:"init",challengeData:e}}else this.state={challengeData:{success:!1,error:m}},console.debug(`${u}: ${m}`)}}T(b,"defaultProps",{onComplete:()=>{},onError:()=>{},isMDFlow:!1});export{b as default};
2
2
  //# sourceMappingURL=PrepareChallenge3DS2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PrepareChallenge3DS2.js","sources":["../../../../../../src/components/ThreeDS2/components/Challenge/PrepareChallenge3DS2.tsx"],"sourcesContent":["import { Component, h } from 'preact';\nimport DoChallenge3DS2 from './DoChallenge3DS2';\nimport { createChallengeResolveData, prepareChallengeData, createOldChallengeResolveData, isErrorObject } from '../utils';\nimport { PrepareChallenge3DS2Props, PrepareChallenge3DS2State, StatusErrorInfoObject } from './types';\nimport { ChallengeData, ResultObject, ThreeDS2FlowObject, ErrorCodeObject } from '../../types';\nimport '../../ThreeDS2.scss';\nimport Img from '../../../internal/Img';\nimport './challenge.scss';\nimport { hasOwnProperty } from '../../../../utils/hasOwnProperty';\nimport useImage from '../../../../core/Context/useImage';\nimport AdyenCheckoutError, { ERROR } from '../../../../core/Errors/AdyenCheckoutError';\nimport { THREEDS2_CHALLENGE, THREEDS2_CHALLENGE_ERROR, THREEDS2_FULL, THREEDS2_NUM, MISSING_TOKEN_IN_ACTION_MSG } from '../../constants';\nimport { isValidHttpUrl } from '../../../../utils/isValidURL';\nimport { ANALYTICS_ERROR_TYPE, Analytics3DS2Errors, Analytics3DS2Events } from '../../../../core/Analytics/constants';\nimport { ErrorObject } from '../../../../core/Errors/types';\nimport { AnalyticsLogEvent } from '../../../../core/Analytics/AnalyticsLogEvent';\nimport { AnalyticsErrorEvent } from '../../../../core/Analytics/AnalyticsErrorEvent';\nimport { AnalyticsEvent } from '../../../../core/Analytics/AnalyticsEvent';\n\nclass PrepareChallenge3DS2 extends Component<PrepareChallenge3DS2Props, PrepareChallenge3DS2State> {\n public static defaultProps = {\n onComplete: () => {},\n onError: () => {},\n isMDFlow: false\n };\n\n constructor(props) {\n super(props);\n\n if (this.props.token) {\n const challengeData: ChallengeData | ErrorObject = prepareChallengeData({\n token: this.props.token,\n size: this.props.challengeWindowSize || this.props.size // TODO confirm that this.props.size is legacy and can be removed\n });\n\n this.state = {\n status: 'init',\n challengeData: challengeData as ChallengeData\n };\n } else {\n // Will be picked up in componentDidMount\n this.state = { challengeData: { success: false, error: MISSING_TOKEN_IN_ACTION_MSG } };\n\n console.debug(`${THREEDS2_CHALLENGE_ERROR}: ${MISSING_TOKEN_IN_ACTION_MSG}`);\n }\n }\n\n public onFormSubmit = (msg: string) => {\n const event = new AnalyticsLogEvent({\n type: THREEDS2_FULL,\n message: msg,\n subType: Analytics3DS2Events.CHALLENGE_DATA_SENT\n });\n\n this.props.onSubmitAnalytics(event);\n };\n\n componentDidMount() {\n const hasChallengeData = !isErrorObject(this.state.challengeData);\n\n if (hasChallengeData) {\n const shouldAllowHttpDomains =\n /** Allow http urls if in development and testing against localhost:8080 */\n (process.env.NODE_ENV === 'development' && process.env.__CLIENT_ENV__?.indexOf('localhost:8080') > -1) ||\n /**\n * Allows the checkoutshopper demo on localhost:8080 to work -\n * requires a configuration in localhost of environment: 'test', _environmentUrls: {api: 'http://localhost:8080/'}\n */\n (this.props.environment === 'test' && this.props._environmentUrls?.api?.includes('http://localhost:8080'));\n\n /**\n * Check the structure of the created challengeData\n */\n const { acsURL } = this.state.challengeData as ChallengeData;\n const hasValidAcsURL = isValidHttpUrl(acsURL, shouldAllowHttpDomains);\n\n // Only render component if we have an acsURL.\n if (!hasValidAcsURL) {\n // Set UI error & call onError callback\n this.setError(\n {\n errorInfo: `${Analytics3DS2Errors.TOKEN_IS_MISSING_ACSURL}: ${this.props.i18n.get('err.gen.9102')}` //\n },\n true\n );\n\n // Send error to analytics endpoint // TODO - check logs to see if this *ever* happens\n const event = new AnalyticsErrorEvent({\n code: Analytics3DS2Errors.TOKEN_IS_MISSING_ACSURL,\n errorType: ANALYTICS_ERROR_TYPE.apiError,\n message: `${THREEDS2_CHALLENGE_ERROR}: Decoded token is missing a valid acsURL property`\n });\n this.props.onSubmitAnalytics(event);\n\n console.debug('### PrepareChallenge3DS2::exiting:: no valid acsURL');\n return;\n }\n\n const { acsTransID, messageVersion, threeDSServerTransID } = (this.state.challengeData as ChallengeData).cReqData;\n\n // Only render component if we have a acsTransID, messageVersion & threeDSServerTransID\n if (!acsTransID || !messageVersion || !threeDSServerTransID) {\n // Set UI error & call onError callback\n this.setError(\n {\n errorInfo: `${Analytics3DS2Errors.TOKEN_IS_MISSING_OTHER_PROPS}: ${this.props.i18n.get('err.gen.9102')}`\n // errorObj: this.state.challengeData // TODO Decide if we want to expose this data\n },\n true\n );\n\n // Send error to analytics endpoint // TODO - check logs to see if this *ever* happens\n const event = new AnalyticsErrorEvent({\n code: Analytics3DS2Errors.TOKEN_IS_MISSING_OTHER_PROPS,\n errorType: ANALYTICS_ERROR_TYPE.apiError,\n message: `${THREEDS2_CHALLENGE_ERROR}: Decoded token is missing one or more of the following properties (acsTransID | messageVersion | threeDSServerTransID)`\n });\n this.props.onSubmitAnalytics(event);\n\n console.debug(\n '### PrepareChallenge3DS2::exiting:: missing one or more of the following properties (acsTransID | messageVersion | threeDSServerTransID)'\n );\n return;\n }\n\n // Proceed to allow component to render\n this.setState({ status: 'performingChallenge' });\n //\n } else {\n const errorMsg: string = (this.state.challengeData as ErrorObject).error;\n\n const errorCode =\n errorMsg.indexOf(MISSING_TOKEN_IN_ACTION_MSG) > -1\n ? Analytics3DS2Errors.ACTION_IS_MISSING_TOKEN\n : Analytics3DS2Errors.TOKEN_DECODE_OR_PARSING_FAILED;\n\n // Set UI error & call onError callback\n this.setError(\n {\n errorInfo:\n errorMsg.indexOf(MISSING_TOKEN_IN_ACTION_MSG) > -1\n ? `${Analytics3DS2Errors.ACTION_IS_MISSING_TOKEN}: ${this.props.i18n.get('err.gen.9102')}`\n : `${Analytics3DS2Errors.TOKEN_DECODE_OR_PARSING_FAILED}: ${this.props.i18n.get('err.gen.9102')}`\n // errorObj: this.state.challengeData // TODO Decide if we want to expose this data\n },\n true\n );\n\n // Send error to analytics endpoint // TODO - check logs to see if the base64 decoding errors *ever* happen\n const event = new AnalyticsErrorEvent({\n code: errorCode,\n errorType: ANALYTICS_ERROR_TYPE.apiError,\n message: `${THREEDS2_CHALLENGE_ERROR}: ${errorMsg}` // can be: 'Missing \"token\" property from threeDS2 action', 'not base64', 'malformed URI sequence' or 'Could not JSON parse token'\n });\n\n this.props.onSubmitAnalytics(event);\n\n console.debug('### PrepareChallenge3DS2::exiting:: no challengeData');\n }\n }\n\n setStatusComplete(resultObj: ResultObject, errorCodeObject: ErrorCodeObject = null) {\n this.setState({ status: 'complete' }, () => {\n /**\n * Create the data in the way that the /details endpoint expects.\n * This is different for the flow triggered by the threeds2InMDFlow process than for the new, v67, 'threeDS2' action\n */\n const resolveDataFunction = this.props.isMDFlow ? createOldChallengeResolveData : createChallengeResolveData;\n const data = resolveDataFunction(this.props.dataKey, resultObj.transStatus, this.props.paymentData);\n\n if (errorCodeObject) {\n console.debug('### PrepareChallenge3DS2::errorCodeObject::', errorCodeObject);\n }\n\n let event: AnalyticsEvent;\n\n /** Are we in an \"error\" i.e. timeout or no transStatus, scenario? If so, submit analytics about it */\n const finalResObject = errorCodeObject ? errorCodeObject : resultObj;\n if (finalResObject.errorCode) {\n const errorTypeAndCode = {\n code: finalResObject.errorCode === 'timeout' ? Analytics3DS2Errors.THREEDS2_TIMEOUT : Analytics3DS2Errors.NO_TRANSSTATUS,\n errorType: finalResObject.errorCode === 'timeout' ? ANALYTICS_ERROR_TYPE.network : ANALYTICS_ERROR_TYPE.apiError\n };\n\n // Challenge process has timed out,\n // or, It's an error reported by the backend 'cos no transStatus could be retrieved // TODO - check logs to see if this *ever* happens\n\n event = new AnalyticsErrorEvent({\n message: (finalResObject as ErrorCodeObject).message,\n ...errorTypeAndCode\n });\n\n // Send error to analytics endpoint\n this.props.onSubmitAnalytics(event);\n }\n\n /** Calculate \"result\" for analytics */\n let result: string;\n\n switch (resultObj?.transStatus) {\n case 'Y':\n result = 'success';\n break;\n case 'N':\n result = 'failed';\n break;\n case 'U':\n result = !errorCodeObject ? 'cancelled' : 'timeout';\n break;\n default:\n }\n if (resultObj?.errorCode) {\n result = 'noTransStatus';\n }\n\n /** Create log object - the process is completed, one way or another */\n\n event = new AnalyticsLogEvent({\n type: THREEDS2_FULL,\n message: `${THREEDS2_NUM} challenge has completed`,\n subType: Analytics3DS2Events.CHALLENGE_COMPLETED,\n result\n });\n\n // Send log to analytics endpoint\n this.props.onSubmitAnalytics(event);\n\n /**\n * Equals call to onAdditionalDetails (except for in 3DS2InMDFlow)\n */\n this.props.onComplete(data);\n });\n }\n\n /**\n * Display error in the UI,\n * and, optionally, decide whether to send any of these errors to the merchant defined onError callback\n *\n * @param errorInfoObj -\n * @param isFatal -\n */\n setError(errorInfoObj: StatusErrorInfoObject, isFatal: boolean) {\n this.setState({ status: 'error', errorInfo: errorInfoObj.errorInfo });\n\n // Decide whether to call this.props.onError\n if (isFatal) {\n this.props.onError(new AdyenCheckoutError(ERROR, errorInfoObj.errorInfo, { cause: errorInfoObj.errorObj }));\n }\n }\n\n render(_, { challengeData }) {\n const getImage = useImage();\n if (this.state.status === 'performingChallenge') {\n return (\n <DoChallenge3DS2\n onCompleteChallenge={(challenge: ThreeDS2FlowObject) => {\n let errorCodeObject: ErrorCodeObject = null;\n\n // Challenge has resulted in an error (no transStatus could be retrieved) - but we still treat this as a valid scenario\n if (hasOwnProperty(challenge.result, 'errorCode') && challenge.result.errorCode.length) {\n // Tell the merchant there's been an error\n errorCodeObject = {\n errorCode: challenge.result.errorCode,\n message: `${THREEDS2_CHALLENGE_ERROR}: ${\n challenge.result.errorDescription ? challenge.result.errorDescription : 'no transStatus could be retrieved'\n }`\n };\n\n /**\n * NOTE: we can now use this.props.isMDFlow to decide if we want to send any of these errors to the onError handler\n * - this is problematic in the regular flow since merchants tend to treat any calls to their onError handler as 'fatal',\n * but in the MDFlow we control what the onError handler does.\n */\n if (this.props.isMDFlow) {\n this.props.onError(\n new AdyenCheckoutError(\n ERROR,\n `${THREEDS2_CHALLENGE_ERROR}: ${\n challenge.result.errorDescription\n ? challenge.result.errorDescription\n : 'no transStatus could be retrieved'\n }`,\n { cause: challenge.result.errorCode }\n )\n );\n }\n }\n\n /**\n * An object has been returned, parsed & accepted as legit (according to the rules in getProcessMessageHandler),\n * but the result prop on that object is missing\n */\n if (!challenge.result) {\n this.setError(\n {\n errorInfo: `${THREEDS2_CHALLENGE_ERROR}: ${this.props.i18n.get('3ds.chal.805', {\n values: { result: '\"result\"' }\n })}`,\n errorObj: challenge as unknown as ErrorObject\n },\n true\n );\n\n // Send error to analytics endpoint\n const event = new AnalyticsErrorEvent({\n code: Analytics3DS2Errors.CHALLENGE_RESOLVED_WITHOUT_RESULT_PROP,\n errorType: ANALYTICS_ERROR_TYPE.apiError,\n message: `${THREEDS2_CHALLENGE_ERROR}: challenge resolved without a \"result\" object`\n });\n\n this.props.onSubmitAnalytics(event);\n\n console.debug('### PrepareChallenge3DS2::exiting:: challenge resolved without a \"result\" object');\n\n return;\n }\n\n // Proceed with call to onAdditionalDetails (except for in 3DS2InMDFlow)\n this.setStatusComplete(challenge.result, errorCodeObject);\n }}\n onErrorChallenge={(challenge: ThreeDS2FlowObject) => {\n /**\n * Called when challenge times-out (which is still a valid scenario)...\n */\n if (hasOwnProperty(challenge, 'errorCode')) {\n const timeoutObject: ErrorCodeObject = {\n errorCode: challenge.errorCode,\n message: `${THREEDS2_CHALLENGE}: ${challenge.errorCode}`\n };\n\n // see comment in onCompleteChallenge code block\n if (this.props.isMDFlow) {\n this.props.onError(\n new AdyenCheckoutError(ERROR, `${THREEDS2_CHALLENGE_ERROR}: '3DS2 challenge timed out'`, {\n cause: challenge.errorCode\n })\n );\n }\n\n this.setStatusComplete(challenge.result, timeoutObject);\n return;\n }\n }}\n {...challengeData}\n onActionHandled={this.props.onActionHandled}\n onFormSubmit={this.onFormSubmit}\n />\n );\n }\n\n if (this.state.status === 'error') {\n return (\n <div className=\"adyen-checkout__threeds2-challenge-error\">\n <Img\n className=\"adyen-checkout__status__icon adyen-checkout__status__icon--error\"\n src={getImage({\n imageFolder: 'components/'\n })('error')}\n alt={''}\n />\n <div className=\"adyen-checkout__status__text\">\n {this.state.errorInfo ? this.state.errorInfo : this.props.i18n.get('error.message.unknown')}\n </div>\n </div>\n );\n }\n\n return null;\n }\n}\n\nexport default PrepareChallenge3DS2;\n"],"names":["PrepareChallenge3DS2","Component","componentDidMount","isErrorObject","this","state","challengeData","shouldAllowHttpDomains","props","environment","_environmentUrls","api","includes","acsURL","isValidHttpUrl","setError","errorInfo","Analytics3DS2Errors","TOKEN_IS_MISSING_ACSURL","i18n","get","event","AnalyticsErrorEvent","code","errorType","ANALYTICS_ERROR_TYPE","apiError","message","THREEDS2_CHALLENGE_ERROR","onSubmitAnalytics","console","debug","acsTransID","messageVersion","threeDSServerTransID","cReqData","TOKEN_IS_MISSING_OTHER_PROPS","setState","status","errorMsg","error","errorCode","indexOf","MISSING_TOKEN_IN_ACTION_MSG","ACTION_IS_MISSING_TOKEN","TOKEN_DECODE_OR_PARSING_FAILED","setStatusComplete","resultObj","errorCodeObject","data","isMDFlow","createOldChallengeResolveData","createChallengeResolveData","dataKey","transStatus","paymentData","finalResObject","errorTypeAndCode","THREEDS2_TIMEOUT","NO_TRANSSTATUS","network","result","AnalyticsLogEvent","type","THREEDS2_FULL","THREEDS2_NUM","subType","Analytics3DS2Events","CHALLENGE_COMPLETED","onComplete","errorInfoObj","isFatal","onError","AdyenCheckoutError","ERROR","cause","errorObj","render","_","getImage","useImage","h","DoChallenge3DS2","onCompleteChallenge","challenge","hasOwnProperty","length","errorDescription","values","CHALLENGE_RESOLVED_WITHOUT_RESULT_PROP","onErrorChallenge","timeoutObject","THREEDS2_CHALLENGE","onActionHandled","onFormSubmit","div","className","Img","src","imageFolder","alt","constructor","super","_define_property","msg","CHALLENGE_DATA_SENT","token","prepareChallengeData","size","challengeWindowSize","success","defaultProps"],"mappings":"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"}
1
+ {"version":3,"file":"PrepareChallenge3DS2.js","sources":["../../../../../../src/components/ThreeDS2/components/Challenge/PrepareChallenge3DS2.tsx"],"sourcesContent":["import { Component, h } from 'preact';\nimport DoChallenge3DS2 from './DoChallenge3DS2';\nimport { createChallengeResolveData, prepareChallengeData, createOldChallengeResolveData, isErrorObject } from '../utils';\nimport { PrepareChallenge3DS2Props, PrepareChallenge3DS2State, StatusErrorInfoObject } from './types';\nimport { ChallengeData, ResultObject, ThreeDS2FlowObject, ErrorCodeObject } from '../../types';\nimport '../../ThreeDS2.scss';\nimport Img from '../../../internal/Img';\nimport './challenge.scss';\nimport { hasOwnProperty } from '../../../../utils/hasOwnProperty';\nimport useImage from '../../../../core/Context/useImage';\nimport AdyenCheckoutError, { ERROR } from '../../../../core/Errors/AdyenCheckoutError';\nimport { THREEDS2_CHALLENGE, THREEDS2_CHALLENGE_ERROR, THREEDS2_FULL, THREEDS2_NUM, MISSING_TOKEN_IN_ACTION_MSG } from '../../constants';\nimport { isValidHttpUrl } from '../../../../utils/isValidURL';\nimport { ANALYTICS_ERROR_TYPE, Analytics3DS2Errors, Analytics3DS2Events } from '../../../../core/Analytics/constants';\nimport { ErrorObject } from '../../../../core/Errors/types';\nimport { AnalyticsLogEvent } from '../../../../core/Analytics/AnalyticsLogEvent';\nimport { AnalyticsErrorEvent } from '../../../../core/Analytics/AnalyticsErrorEvent';\nimport { AnalyticsEvent } from '../../../../core/Analytics/AnalyticsEvent';\n\nclass PrepareChallenge3DS2 extends Component<PrepareChallenge3DS2Props, PrepareChallenge3DS2State> {\n public static defaultProps = {\n onComplete: () => {},\n onError: () => {},\n isMDFlow: false\n };\n\n constructor(props) {\n super(props);\n\n if (this.props.token) {\n const challengeData: ChallengeData | ErrorObject = prepareChallengeData({\n token: this.props.token,\n size: this.props.challengeWindowSize || this.props.size // TODO confirm that this.props.size is legacy and can be removed\n });\n\n this.state = {\n status: 'init',\n challengeData: challengeData as ChallengeData\n };\n } else {\n // Will be picked up in componentDidMount\n this.state = { challengeData: { success: false, error: MISSING_TOKEN_IN_ACTION_MSG } };\n\n console.debug(`${THREEDS2_CHALLENGE_ERROR}: ${MISSING_TOKEN_IN_ACTION_MSG}`);\n }\n }\n\n public onFormSubmit = (msg: string) => {\n const event = new AnalyticsLogEvent({\n type: THREEDS2_FULL,\n message: msg,\n subType: Analytics3DS2Events.CHALLENGE_DATA_SENT\n });\n\n this.props.onSubmitAnalytics(event);\n };\n\n componentDidMount() {\n const hasChallengeData = !isErrorObject(this.state.challengeData);\n\n if (hasChallengeData) {\n const shouldAllowHttpDomains =\n /** Allow http urls if in development and testing against localhost:8080 */\n (process.env.NODE_ENV === 'development' && process.env.__CLIENT_ENV__?.indexOf('localhost:8080') > -1) ||\n /**\n * Allows the checkoutshopper demo on localhost:8080 to work -\n * requires a configuration in localhost of environment: 'test', _environmentUrls: {api: 'http://localhost:8080/'}\n */\n (this.props.environment === 'test' && this.props._environmentUrls?.api?.includes('http://localhost:8080'));\n\n /**\n * Check the structure of the created challengeData\n */\n const { acsURL } = this.state.challengeData as ChallengeData;\n const hasValidAcsURL = isValidHttpUrl(acsURL, shouldAllowHttpDomains);\n\n // Only render component if we have an acsURL.\n if (!hasValidAcsURL) {\n // Set UI error & call onError callback\n this.setError(\n {\n errorInfo: `${Analytics3DS2Errors.TOKEN_IS_MISSING_ACSURL}: ${this.props.i18n.get('err.gen.9102')}` //\n },\n true\n );\n\n // Send error to analytics endpoint // TODO - check logs to see if this *ever* happens\n const event = new AnalyticsErrorEvent({\n code: Analytics3DS2Errors.TOKEN_IS_MISSING_ACSURL,\n errorType: ANALYTICS_ERROR_TYPE.apiError,\n message: `${THREEDS2_CHALLENGE_ERROR}: Decoded token is missing a valid acsURL property`\n });\n this.props.onSubmitAnalytics(event);\n\n console.debug('### PrepareChallenge3DS2::exiting:: no valid acsURL');\n return;\n }\n\n const { acsTransID, messageVersion, threeDSServerTransID } = (this.state.challengeData as ChallengeData).cReqData;\n\n // Only render component if we have a acsTransID, messageVersion & threeDSServerTransID\n if (!acsTransID || !messageVersion || !threeDSServerTransID) {\n // Set UI error & call onError callback\n this.setError(\n {\n errorInfo: `${Analytics3DS2Errors.TOKEN_IS_MISSING_OTHER_PROPS}: ${this.props.i18n.get('err.gen.9102')}`\n // errorObj: this.state.challengeData // TODO Decide if we want to expose this data\n },\n true\n );\n\n // Send error to analytics endpoint // TODO - check logs to see if this *ever* happens\n const event = new AnalyticsErrorEvent({\n code: Analytics3DS2Errors.TOKEN_IS_MISSING_OTHER_PROPS,\n errorType: ANALYTICS_ERROR_TYPE.apiError,\n message: `${THREEDS2_CHALLENGE_ERROR}: Decoded token is missing one or more of the following properties (acsTransID | messageVersion | threeDSServerTransID)`\n });\n this.props.onSubmitAnalytics(event);\n\n console.debug(\n '### PrepareChallenge3DS2::exiting:: missing one or more of the following properties (acsTransID | messageVersion | threeDSServerTransID)'\n );\n return;\n }\n\n // Proceed to allow component to render\n this.setState({ status: 'performingChallenge' });\n //\n } else {\n const errorMsg: string = (this.state.challengeData as ErrorObject).error;\n\n const errorCode =\n errorMsg.indexOf(MISSING_TOKEN_IN_ACTION_MSG) > -1\n ? Analytics3DS2Errors.ACTION_IS_MISSING_TOKEN\n : Analytics3DS2Errors.TOKEN_DECODE_OR_PARSING_FAILED;\n\n // Set UI error & call onError callback\n this.setError(\n {\n errorInfo:\n errorMsg.indexOf(MISSING_TOKEN_IN_ACTION_MSG) > -1\n ? `${Analytics3DS2Errors.ACTION_IS_MISSING_TOKEN}: ${this.props.i18n.get('err.gen.9102')}`\n : `${Analytics3DS2Errors.TOKEN_DECODE_OR_PARSING_FAILED}: ${this.props.i18n.get('err.gen.9102')}`\n // errorObj: this.state.challengeData // TODO Decide if we want to expose this data\n },\n true\n );\n\n // Send error to analytics endpoint // TODO - check logs to see if the base64 decoding errors *ever* happen\n const event = new AnalyticsErrorEvent({\n code: errorCode,\n errorType: ANALYTICS_ERROR_TYPE.apiError,\n message: `${THREEDS2_CHALLENGE_ERROR}: ${errorMsg}` // can be: 'Missing \"token\" property from threeDS2 action', 'not base64', 'malformed URI sequence' or 'Could not JSON parse token'\n });\n\n this.props.onSubmitAnalytics(event);\n\n console.debug('### PrepareChallenge3DS2::exiting:: no challengeData');\n }\n }\n\n setStatusComplete(resultObj: ResultObject, errorCodeObject: ErrorCodeObject = null) {\n this.setState({ status: 'complete' }, () => {\n /**\n * Create the data in the way that the /details endpoint expects.\n * This is different for the flow triggered by the threeds2InMDFlow process than for the new, v67, 'threeDS2' action\n */\n const resolveDataFunction = this.props.isMDFlow ? createOldChallengeResolveData : createChallengeResolveData;\n const data = resolveDataFunction(this.props.dataKey, resultObj.transStatus, this.props.paymentData);\n\n if (errorCodeObject) {\n console.debug('### PrepareChallenge3DS2::errorCodeObject::', errorCodeObject);\n }\n\n let event: AnalyticsEvent;\n\n /** Are we in an \"error\" i.e. timeout or no transStatus, scenario? If so, submit analytics about it */\n const finalResObject = errorCodeObject ? errorCodeObject : resultObj;\n if (finalResObject.errorCode) {\n const errorTypeAndCode = {\n code: finalResObject.errorCode === 'timeout' ? Analytics3DS2Errors.THREEDS2_TIMEOUT : Analytics3DS2Errors.NO_TRANSSTATUS,\n errorType: finalResObject.errorCode === 'timeout' ? ANALYTICS_ERROR_TYPE.network : ANALYTICS_ERROR_TYPE.apiError\n };\n\n // Challenge process has timed out,\n // or, It's an error reported by the backend 'cos no transStatus could be retrieved // TODO - check logs to see if this *ever* happens\n\n event = new AnalyticsErrorEvent({\n message: (finalResObject as ErrorCodeObject).message,\n ...errorTypeAndCode\n });\n\n // Send error to analytics endpoint\n this.props.onSubmitAnalytics(event);\n }\n\n /** Calculate \"result\" for analytics */\n let result: string;\n\n switch (resultObj?.transStatus) {\n case 'Y':\n result = 'success';\n break;\n case 'N':\n result = 'failed';\n break;\n case 'U':\n result = !errorCodeObject ? 'cancelled' : 'timeout';\n break;\n default:\n }\n if (resultObj?.errorCode) {\n result = 'noTransStatus';\n }\n\n /** Create log object - the process is completed, one way or another */\n\n event = new AnalyticsLogEvent({\n type: THREEDS2_FULL,\n message: `${THREEDS2_NUM} challenge has completed`,\n subType: Analytics3DS2Events.CHALLENGE_COMPLETED,\n result\n });\n\n // Send log to analytics endpoint\n this.props.onSubmitAnalytics(event);\n\n /**\n * Equals call to onAdditionalDetails (except for in 3DS2InMDFlow)\n */\n this.props.onComplete(data);\n });\n }\n\n /**\n * Display error in the UI,\n * and, optionally, decide whether to send any of these errors to the merchant defined onError callback\n *\n * @param errorInfoObj -\n * @param isFatal -\n */\n setError(errorInfoObj: StatusErrorInfoObject, isFatal: boolean) {\n this.setState({ status: 'error', errorInfo: errorInfoObj.errorInfo });\n\n // Decide whether to call this.props.onError\n if (isFatal) {\n this.props.onError(new AdyenCheckoutError(ERROR, errorInfoObj.errorInfo, { cause: errorInfoObj.errorObj }));\n }\n }\n\n render(_, { challengeData }) {\n const getImage = useImage();\n if (this.state.status === 'performingChallenge') {\n return (\n <DoChallenge3DS2\n onCompleteChallenge={(challenge: ThreeDS2FlowObject) => {\n let errorCodeObject: ErrorCodeObject = null;\n\n // Challenge has resulted in an error (no transStatus could be retrieved) - but we still treat this as a valid scenario\n if (hasOwnProperty(challenge.result, 'errorCode') && challenge.result.errorCode.length) {\n // Tell the merchant there's been an error\n errorCodeObject = {\n errorCode: challenge.result.errorCode,\n message: `${THREEDS2_CHALLENGE_ERROR}: ${\n challenge.result.errorDescription ? challenge.result.errorDescription : 'no transStatus could be retrieved'\n }`\n };\n\n /**\n * NOTE: we can now use this.props.isMDFlow to decide if we want to send any of these errors to the onError handler\n * - this is problematic in the regular flow since merchants tend to treat any calls to their onError handler as 'fatal',\n * but in the MDFlow we control what the onError handler does.\n */\n if (this.props.isMDFlow) {\n this.props.onError(\n new AdyenCheckoutError(\n ERROR,\n `${THREEDS2_CHALLENGE_ERROR}: ${\n challenge.result.errorDescription\n ? challenge.result.errorDescription\n : 'no transStatus could be retrieved'\n }`,\n { cause: challenge.result.errorCode }\n )\n );\n }\n }\n\n /**\n * An object has been returned, parsed & accepted as legit (according to the rules in getProcessMessageHandler),\n * but the result prop on that object is missing\n */\n if (!challenge.result) {\n this.setError(\n {\n errorInfo: `${THREEDS2_CHALLENGE_ERROR}: ${this.props.i18n.get('3ds.chal.805', {\n values: { result: '\"result\"' }\n })}`,\n errorObj: challenge as unknown as ErrorObject\n },\n true\n );\n\n // Send error to analytics endpoint\n const event = new AnalyticsErrorEvent({\n code: Analytics3DS2Errors.CHALLENGE_RESOLVED_WITHOUT_RESULT_PROP,\n errorType: ANALYTICS_ERROR_TYPE.apiError,\n message: `${THREEDS2_CHALLENGE_ERROR}: challenge resolved without a \"result\" object`\n });\n\n this.props.onSubmitAnalytics(event);\n\n console.debug('### PrepareChallenge3DS2::exiting:: challenge resolved without a \"result\" object');\n\n return;\n }\n\n // Proceed with call to onAdditionalDetails (except for in 3DS2InMDFlow)\n this.setStatusComplete(challenge.result, errorCodeObject);\n }}\n onErrorChallenge={(challenge: ThreeDS2FlowObject) => {\n /**\n * Called when challenge times-out (which is still a valid scenario)...\n */\n if (hasOwnProperty(challenge, 'errorCode')) {\n const timeoutObject: ErrorCodeObject = {\n errorCode: challenge.errorCode,\n message: `${THREEDS2_CHALLENGE}: ${challenge.errorCode}`\n };\n\n // see comment in onCompleteChallenge code block\n if (this.props.isMDFlow) {\n this.props.onError(\n new AdyenCheckoutError(ERROR, `${THREEDS2_CHALLENGE_ERROR}: '3DS2 challenge timed out'`, {\n cause: challenge.errorCode\n })\n );\n }\n\n this.setStatusComplete(challenge.result, timeoutObject);\n return;\n }\n }}\n {...challengeData}\n onActionHandled={this.props.onActionHandled}\n onFormSubmit={this.onFormSubmit}\n />\n );\n }\n\n if (this.state.status === 'error') {\n return (\n <div className=\"adyen-checkout__threeds2-challenge-error\">\n <Img\n className=\"adyen-checkout__status__icon adyen-checkout__status__icon--error\"\n src={getImage({\n imageFolder: 'components/'\n })('error')}\n alt={''}\n />\n <div className=\"adyen-checkout__status__text\">\n {this.state.errorInfo ? this.state.errorInfo : this.props.i18n.get('error.message.unknown')}\n </div>\n </div>\n );\n }\n\n return null;\n }\n}\n\nexport default PrepareChallenge3DS2;\n"],"names":["PrepareChallenge3DS2","Component","componentDidMount","isErrorObject","this","state","challengeData","shouldAllowHttpDomains","props","environment","_environmentUrls","api","includes","acsURL","isValidHttpUrl","setError","errorInfo","Analytics3DS2Errors","TOKEN_IS_MISSING_ACSURL","i18n","get","event","AnalyticsErrorEvent","code","errorType","ANALYTICS_ERROR_TYPE","apiError","message","THREEDS2_CHALLENGE_ERROR","onSubmitAnalytics","console","debug","acsTransID","messageVersion","threeDSServerTransID","cReqData","TOKEN_IS_MISSING_OTHER_PROPS","setState","status","errorMsg","error","errorCode","indexOf","MISSING_TOKEN_IN_ACTION_MSG","ACTION_IS_MISSING_TOKEN","TOKEN_DECODE_OR_PARSING_FAILED","setStatusComplete","resultObj","errorCodeObject","data","isMDFlow","createOldChallengeResolveData","createChallengeResolveData","dataKey","transStatus","paymentData","finalResObject","errorTypeAndCode","THREEDS2_TIMEOUT","NO_TRANSSTATUS","network","result","AnalyticsLogEvent","type","THREEDS2_FULL","THREEDS2_NUM","subType","Analytics3DS2Events","CHALLENGE_COMPLETED","onComplete","errorInfoObj","isFatal","onError","AdyenCheckoutError","ERROR","cause","errorObj","render","_","getImage","useImage","h","DoChallenge3DS2","onCompleteChallenge","challenge","hasOwnProperty","length","errorDescription","values","CHALLENGE_RESOLVED_WITHOUT_RESULT_PROP","onErrorChallenge","timeoutObject","THREEDS2_CHALLENGE","onActionHandled","onFormSubmit","div","className","Img","src","imageFolder","alt","constructor","super","_define_property","msg","CHALLENGE_DATA_SENT","token","prepareChallengeData","size","challengeWindowSize","success","defaultProps"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{Component as e,createElement as r}from"../../../../external/preact/dist/preact.js";import t from"../../../internal/IFrame/Iframe.js";import s from"../../../internal/Spinner/Spinner.js";import n from"../Form/ThreeDS2Form.js";import i from"../../../../utils/promiseTimeout.js";import o from"../../../../utils/get-process-message-handler.js";import{FAILED_METHOD_STATUS_RESOLVE_OBJECT_TIMEOUT as a,THREEDS_METHOD_TIMEOUT as m,THREEDS2_NUM as p}from"../../constants.js";import{encodeBase64URL as d}from"../utils.js";function h(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}const c="threeDSMethodIframe";class l extends e{get3DS2MethodPromise(){return new Promise(((e,r)=>{this.processMessageHandler=o(this.props.postMessageDomain,e,r,"fingerPrintResult"),window.addEventListener("message",this.processMessageHandler)}))}componentDidMount(){this.fingerPrintPromise=i(m,this.get3DS2MethodPromise(),a),this.fingerPrintPromise.promise.then((e=>{window.removeEventListener("message",this.processMessageHandler),this.props.onCompleteFingerprint(e)})).catch((e=>{window.removeEventListener("message",this.processMessageHandler),this.props.onErrorFingerprint(e)}))}componentWillUnmount(){this.fingerPrintPromise&&this.fingerPrintPromise.cancel(),window.removeEventListener("message",this.processMessageHandler)}render({threeDSMethodURL:e,onActionHandled:i,onFormSubmit:o},{base64URLencodedData:a}){return r("div",{className:"adyen-checkout__3ds2-device-fingerprint"},this.props.showSpinner&&r(s,null),r("div",{style:{display:"none"}},r(t,{name:c,callback:()=>{i?.({componentType:"3DS2Fingerprint",actionDescription:`${p} fingerprint iframe loaded`})}}),r(n,{name:"threeDSMethodForm",action:e,target:c,inputName:"threeDSMethodData",inputValue:a,onFormSubmit:o})))}constructor(e){super(e),h(this,"processMessageHandler",void 0),h(this,"fingerPrintPromise",void 0);const{threeDSServerTransID:r,threeDSMethodNotificationURL:t}=this.props,s=JSON.stringify({threeDSServerTransID:r,threeDSMethodNotificationURL:t}),n=d(s);this.state={base64URLencodedData:n}}}h(l,"defaultProps",{showSpinner:!0});export{l as default};
1
+ import{Component as e,createElement as r}from"../../../../external/preact/dist/preact.js";import t from"../../../internal/IFrame/Iframe.js";import s from"../../../internal/Spinner/Spinner.js";import n from"../Form/ThreeDS2Form.js";import i from"../../../../utils/promiseTimeout.js";import o from"../../../../utils/get-process-message-handler.js";import{FAILED_METHOD_STATUS_RESOLVE_OBJECT_TIMEOUT as a,THREEDS_METHOD_TIMEOUT as m,THREEDS2_NUM as p}from"../../constants.js";import{encodeBase64URL as d}from"../utils.js";function h(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}const c="threeDSMethodIframe";class l extends e{get3DS2MethodPromise(){return new Promise((e,r)=>{this.processMessageHandler=o(this.props.postMessageDomain,e,r,"fingerPrintResult"),window.addEventListener("message",this.processMessageHandler)})}componentDidMount(){this.fingerPrintPromise=i(m,this.get3DS2MethodPromise(),a),this.fingerPrintPromise.promise.then(e=>{window.removeEventListener("message",this.processMessageHandler),this.props.onCompleteFingerprint(e)}).catch(e=>{window.removeEventListener("message",this.processMessageHandler),this.props.onErrorFingerprint(e)})}componentWillUnmount(){this.fingerPrintPromise&&this.fingerPrintPromise.cancel(),window.removeEventListener("message",this.processMessageHandler)}render({threeDSMethodURL:e,onActionHandled:i,onFormSubmit:o},{base64URLencodedData:a}){return r("div",{className:"adyen-checkout__3ds2-device-fingerprint"},this.props.showSpinner&&r(s,null),r("div",{style:{display:"none"}},r(t,{name:c,callback:()=>{i?.({componentType:"3DS2Fingerprint",actionDescription:`${p} fingerprint iframe loaded`})}}),r(n,{name:"threeDSMethodForm",action:e,target:c,inputName:"threeDSMethodData",inputValue:a,onFormSubmit:o})))}constructor(e){super(e),h(this,"processMessageHandler",void 0),h(this,"fingerPrintPromise",void 0);const{threeDSServerTransID:r,threeDSMethodNotificationURL:t}=this.props,s=JSON.stringify({threeDSServerTransID:r,threeDSMethodNotificationURL:t}),n=d(s);this.state={base64URLencodedData:n}}}h(l,"defaultProps",{showSpinner:!0});export{l as default};
2
2
  //# sourceMappingURL=DoFingerprint3DS2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DoFingerprint3DS2.js","sources":["../../../../../../src/components/ThreeDS2/components/DeviceFingerprint/DoFingerprint3DS2.tsx"],"sourcesContent":["import { Component, h } from 'preact';\nimport Iframe from '../../../internal/IFrame';\nimport Spinner from '../../../internal/Spinner';\nimport ThreeDS2Form from '../Form';\nimport promiseTimeout from '../../../../utils/promiseTimeout';\nimport getProcessMessageHandler from '../../../../utils/get-process-message-handler';\nimport { THREEDS_METHOD_TIMEOUT, FAILED_METHOD_STATUS_RESOLVE_OBJECT_TIMEOUT, THREEDS2_NUM } from '../../constants';\nimport { encodeBase64URL } from '../utils';\nimport { DoFingerprint3DS2Props, DoFingerprint3DS2State } from './types';\n\nconst iframeName = 'threeDSMethodIframe';\n\n/**\n * Create and Base64URL encode a JSON object containing the serverTransactionID & threeDSMethodNotificationURL.\n * This Base64URL string will be added to the <form> in the ThreeDS2Form component.\n * The ThreeDS2Form component will submit the <form> when it mounts, using the ThreeDS2Iframe as the <form> target.\n * getProcessMessageHandler will listen for the postMessage response from the notificationURL and will settle the\n * promise accordingly causing this component to call the appropriate callback.\n * The callbacks exist in the parent component: ThreeDS2DeviceFingerprint where they ultimately call the onComplete\n * function passed as a prop when checkout.create('threeDS2DeviceFingerprint') is called.\n */\nclass DoFingerprint3DS2 extends Component<DoFingerprint3DS2Props, DoFingerprint3DS2State> {\n private processMessageHandler;\n private fingerPrintPromise: any;\n public static defaultProps = {\n showSpinner: true\n };\n\n constructor(props) {\n super(props);\n\n /**\n * Create and Base64URL encode a JSON object\n */\n const { threeDSServerTransID, threeDSMethodNotificationURL } = this.props;\n\n const jsonStr = JSON.stringify({\n threeDSServerTransID,\n threeDSMethodNotificationURL\n });\n const base64URLencodedData = encodeBase64URL(jsonStr);\n this.state = { base64URLencodedData };\n }\n\n get3DS2MethodPromise() {\n return new Promise((resolve, reject) => {\n /**\n * Listen for postMessage responses from the notification url\n */\n this.processMessageHandler = getProcessMessageHandler(this.props.postMessageDomain, resolve, reject, 'fingerPrintResult');\n\n window.addEventListener('message', this.processMessageHandler);\n });\n }\n\n componentDidMount() {\n // Check 3DS2 Device fingerprint\n this.fingerPrintPromise = promiseTimeout(THREEDS_METHOD_TIMEOUT, this.get3DS2MethodPromise(), FAILED_METHOD_STATUS_RESOLVE_OBJECT_TIMEOUT);\n this.fingerPrintPromise.promise\n .then(resolveObject => {\n window.removeEventListener('message', this.processMessageHandler);\n this.props.onCompleteFingerprint(resolveObject);\n })\n .catch(rejectObject => {\n window.removeEventListener('message', this.processMessageHandler);\n this.props.onErrorFingerprint(rejectObject);\n });\n }\n\n componentWillUnmount() {\n if (this.fingerPrintPromise) this.fingerPrintPromise.cancel();\n window.removeEventListener('message', this.processMessageHandler);\n }\n\n render({ threeDSMethodURL, onActionHandled, onFormSubmit }, { base64URLencodedData }) {\n return (\n <div className=\"adyen-checkout__3ds2-device-fingerprint\">\n {this.props.showSpinner && <Spinner />}\n <div style={{ display: 'none' }}>\n <Iframe\n name={iframeName}\n callback={() => {\n onActionHandled?.({ componentType: '3DS2Fingerprint', actionDescription: `${THREEDS2_NUM} fingerprint iframe loaded` });\n }}\n />\n <ThreeDS2Form\n name={'threeDSMethodForm'}\n action={threeDSMethodURL}\n target={iframeName}\n inputName={'threeDSMethodData'}\n inputValue={base64URLencodedData}\n onFormSubmit={onFormSubmit}\n />\n </div>\n </div>\n );\n }\n}\n\nexport default DoFingerprint3DS2;\n"],"names":["iframeName","DoFingerprint3DS2","Component","get3DS2MethodPromise","Promise","resolve","reject","this","processMessageHandler","getProcessMessageHandler","props","postMessageDomain","window","addEventListener","componentDidMount","fingerPrintPromise","promiseTimeout","THREEDS_METHOD_TIMEOUT","FAILED_METHOD_STATUS_RESOLVE_OBJECT_TIMEOUT","promise","then","resolveObject","removeEventListener","onCompleteFingerprint","catch","rejectObject","onErrorFingerprint","componentWillUnmount","cancel","render","threeDSMethodURL","onActionHandled","onFormSubmit","base64URLencodedData","h","div","className","showSpinner","Spinner","style","display","Iframe","name","callback","componentType","actionDescription","THREEDS2_NUM","ThreeDS2Form","action","target","inputName","inputValue","constructor","super","_define_property","threeDSServerTransID","threeDSMethodNotificationURL","jsonStr","JSON","stringify","encodeBase64URL","state","defaultProps"],"mappings":"+nBAUA,MAAMA,EAAa,sBAWnB,MAAMC,UAA0BC,EAuB5BC,oBAAAA,GACI,OAAO,IAAIC,SAAQ,CAACC,EAASC,KAIzBC,KAAKC,sBAAwBC,EAAyBF,KAAKG,MAAMC,kBAAmBN,EAASC,EAAQ,qBAErGM,OAAOC,iBAAiB,UAAWN,KAAKC,sBAAqB,GAErE,CAEAM,iBAAAA,GAEIP,KAAKQ,mBAAqBC,EAAeC,EAAwBV,KAAKJ,uBAAwBe,GAC9FX,KAAKQ,mBAAmBI,QACnBC,MAAKC,IACFT,OAAOU,oBAAoB,UAAWf,KAAKC,uBAC3CD,KAAKG,MAAMa,sBAAsBF,EAAAA,IAEpCG,OAAMC,IACHb,OAAOU,oBAAoB,UAAWf,KAAKC,uBAC3CD,KAAKG,MAAMgB,mBAAmBD,EAAAA,GAE1C,CAEAE,oBAAAA,GACQpB,KAAKQ,oBAAoBR,KAAKQ,mBAAmBa,SACrDhB,OAAOU,oBAAoB,UAAWf,KAAKC,sBAC/C,CAEAqB,MAAAA,EAAOC,iBAAEA,EAAgBC,gBAAEA,EAAeC,aAAEA,IAAgBC,qBAAEA,IAC1D,OACIC,EAACC,MAAAA,CAAIC,UAAU,2CACV7B,KAAKG,MAAM2B,aAAeH,EAACI,QAC5BJ,EAACC,MAAAA,CAAII,MAAO,CAAEC,QAAS,SACnBN,EAACO,EAAAA,CACGC,KAAM1C,EACN2C,SAAU,KACNZ,IAAkB,CAAEa,cAAe,kBAAmBC,kBAAmB,GAAGC,+BAAyC,IAG7HZ,EAACa,EAAAA,CACGL,KAAM,oBACNM,OAAQlB,EACRmB,OAAQjD,EACRkD,UAAW,oBACXC,WAAYlB,EACZD,aAAcA,KAKlC,CApEAoB,WAAAA,CAAY1C,GACR2C,MAAM3C,GAPV4C,EAAQ9C,KAAAA,6BAAR,GACA8C,EAAA/C,KAAQQ,0BAAR,GAWI,MAAMwC,qBAAEA,EAAoBC,6BAAEA,GAAiCjD,KAAKG,MAE9D+C,EAAUC,KAAKC,UAAU,CAC3BJ,uBACAC,iCAEEvB,EAAuB2B,EAAgBH,GAC7ClD,KAAKsD,MAAQ,CAAE5B,uBACnB,EAlBAqB,EAHErD,EAGY6D,eAAe,CACzBzB,aAAa"}
1
+ {"version":3,"file":"DoFingerprint3DS2.js","sources":["../../../../../../src/components/ThreeDS2/components/DeviceFingerprint/DoFingerprint3DS2.tsx"],"sourcesContent":["import { Component, h } from 'preact';\nimport Iframe from '../../../internal/IFrame';\nimport Spinner from '../../../internal/Spinner';\nimport ThreeDS2Form from '../Form';\nimport promiseTimeout from '../../../../utils/promiseTimeout';\nimport getProcessMessageHandler from '../../../../utils/get-process-message-handler';\nimport { THREEDS_METHOD_TIMEOUT, FAILED_METHOD_STATUS_RESOLVE_OBJECT_TIMEOUT, THREEDS2_NUM } from '../../constants';\nimport { encodeBase64URL } from '../utils';\nimport { DoFingerprint3DS2Props, DoFingerprint3DS2State } from './types';\n\nconst iframeName = 'threeDSMethodIframe';\n\n/**\n * Create and Base64URL encode a JSON object containing the serverTransactionID & threeDSMethodNotificationURL.\n * This Base64URL string will be added to the <form> in the ThreeDS2Form component.\n * The ThreeDS2Form component will submit the <form> when it mounts, using the ThreeDS2Iframe as the <form> target.\n * getProcessMessageHandler will listen for the postMessage response from the notificationURL and will settle the\n * promise accordingly causing this component to call the appropriate callback.\n * The callbacks exist in the parent component: ThreeDS2DeviceFingerprint where they ultimately call the onComplete\n * function passed as a prop when checkout.create('threeDS2DeviceFingerprint') is called.\n */\nclass DoFingerprint3DS2 extends Component<DoFingerprint3DS2Props, DoFingerprint3DS2State> {\n private processMessageHandler;\n private fingerPrintPromise: any;\n public static defaultProps = {\n showSpinner: true\n };\n\n constructor(props) {\n super(props);\n\n /**\n * Create and Base64URL encode a JSON object\n */\n const { threeDSServerTransID, threeDSMethodNotificationURL } = this.props;\n\n const jsonStr = JSON.stringify({\n threeDSServerTransID,\n threeDSMethodNotificationURL\n });\n const base64URLencodedData = encodeBase64URL(jsonStr);\n this.state = { base64URLencodedData };\n }\n\n get3DS2MethodPromise() {\n return new Promise((resolve, reject) => {\n /**\n * Listen for postMessage responses from the notification url\n */\n this.processMessageHandler = getProcessMessageHandler(this.props.postMessageDomain, resolve, reject, 'fingerPrintResult');\n\n window.addEventListener('message', this.processMessageHandler);\n });\n }\n\n componentDidMount() {\n // Check 3DS2 Device fingerprint\n this.fingerPrintPromise = promiseTimeout(THREEDS_METHOD_TIMEOUT, this.get3DS2MethodPromise(), FAILED_METHOD_STATUS_RESOLVE_OBJECT_TIMEOUT);\n this.fingerPrintPromise.promise\n .then(resolveObject => {\n window.removeEventListener('message', this.processMessageHandler);\n this.props.onCompleteFingerprint(resolveObject);\n })\n .catch(rejectObject => {\n window.removeEventListener('message', this.processMessageHandler);\n this.props.onErrorFingerprint(rejectObject);\n });\n }\n\n componentWillUnmount() {\n if (this.fingerPrintPromise) this.fingerPrintPromise.cancel();\n window.removeEventListener('message', this.processMessageHandler);\n }\n\n render({ threeDSMethodURL, onActionHandled, onFormSubmit }, { base64URLencodedData }) {\n return (\n <div className=\"adyen-checkout__3ds2-device-fingerprint\">\n {this.props.showSpinner && <Spinner />}\n <div style={{ display: 'none' }}>\n <Iframe\n name={iframeName}\n callback={() => {\n onActionHandled?.({ componentType: '3DS2Fingerprint', actionDescription: `${THREEDS2_NUM} fingerprint iframe loaded` });\n }}\n />\n <ThreeDS2Form\n name={'threeDSMethodForm'}\n action={threeDSMethodURL}\n target={iframeName}\n inputName={'threeDSMethodData'}\n inputValue={base64URLencodedData}\n onFormSubmit={onFormSubmit}\n />\n </div>\n </div>\n );\n }\n}\n\nexport default DoFingerprint3DS2;\n"],"names":["iframeName","DoFingerprint3DS2","Component","get3DS2MethodPromise","Promise","resolve","reject","this","processMessageHandler","getProcessMessageHandler","props","postMessageDomain","window","addEventListener","componentDidMount","fingerPrintPromise","promiseTimeout","THREEDS_METHOD_TIMEOUT","FAILED_METHOD_STATUS_RESOLVE_OBJECT_TIMEOUT","promise","then","resolveObject","removeEventListener","onCompleteFingerprint","catch","rejectObject","onErrorFingerprint","componentWillUnmount","cancel","render","threeDSMethodURL","onActionHandled","onFormSubmit","base64URLencodedData","h","div","className","showSpinner","Spinner","style","display","Iframe","name","callback","componentType","actionDescription","THREEDS2_NUM","ThreeDS2Form","action","target","inputName","inputValue","constructor","super","_define_property","threeDSServerTransID","threeDSMethodNotificationURL","jsonStr","JSON","stringify","encodeBase64URL","state","defaultProps"],"mappings":"+nBAUA,MAAMA,EAAa,sBAWnB,MAAMC,UAA0BC,EAuB5BC,oBAAAA,GACI,OAAO,IAAIC,QAAQ,CAACC,EAASC,KAIzBC,KAAKC,sBAAwBC,EAAyBF,KAAKG,MAAMC,kBAAmBN,EAASC,EAAQ,qBAErGM,OAAOC,iBAAiB,UAAWN,KAAKC,wBAEhD,CAEAM,iBAAAA,GAEIP,KAAKQ,mBAAqBC,EAAeC,EAAwBV,KAAKJ,uBAAwBe,GAC9FX,KAAKQ,mBAAmBI,QACnBC,KAAKC,IACFT,OAAOU,oBAAoB,UAAWf,KAAKC,uBAC3CD,KAAKG,MAAMa,sBAAsBF,KAEpCG,MAAMC,IACHb,OAAOU,oBAAoB,UAAWf,KAAKC,uBAC3CD,KAAKG,MAAMgB,mBAAmBD,IAE1C,CAEAE,oBAAAA,GACQpB,KAAKQ,oBAAoBR,KAAKQ,mBAAmBa,SACrDhB,OAAOU,oBAAoB,UAAWf,KAAKC,sBAC/C,CAEAqB,MAAAA,EAAOC,iBAAEA,EAAgBC,gBAAEA,EAAeC,aAAEA,IAAgBC,qBAAEA,IAC1D,OACIC,EAACC,MAAAA,CAAIC,UAAU,2CACV7B,KAAKG,MAAM2B,aAAeH,EAACI,QAC5BJ,EAACC,MAAAA,CAAII,MAAO,CAAEC,QAAS,SACnBN,EAACO,EAAAA,CACGC,KAAM1C,EACN2C,SAAU,KACNZ,IAAkB,CAAEa,cAAe,kBAAmBC,kBAAmB,GAAGC,mCAGpFZ,EAACa,EAAAA,CACGL,KAAM,oBACNM,OAAQlB,EACRmB,OAAQjD,EACRkD,UAAW,oBACXC,WAAYlB,EACZD,aAAcA,KAKlC,CApEA,WAAAoB,CAAY1C,GACR2C,MAAM3C,GAPV4C,EAAA/C,KAAQC,6BAAR,GACA8C,EAAA/C,KAAQQ,0BAAR,GAWI,MAAMwC,qBAAEA,EAAoBC,6BAAEA,GAAiCjD,KAAKG,MAE9D+C,EAAUC,KAAKC,UAAU,CAC3BJ,uBACAC,iCAEEvB,EAAuB2B,EAAgBH,GAC7ClD,KAAKsD,MAAQ,CAAE5B,uBACnB,EAlBAqB,EAHErD,EAGY6D,eAAe,CACzBzB,aAAa"}
@@ -1,2 +1,2 @@
1
- import{Component as e,createElement as t}from"../../../../external/preact/dist/preact.js";import r from"./DoFingerprint3DS2.js";import{isErrorObject as o,createOldFingerprintResolveData as s,createFingerprintResolveData as n,prepareFingerPrintData as i}from"../utils.js";import{isValidHttpUrl as a}from"../../../../utils/isValidURL.js";import{THREEDS2_FINGERPRINT_ERROR as p,MISSING_TOKEN_IN_ACTION_MSG as l,TIMEOUT as m,THREEDS2_NUM as c,THREEDS2_FULL as d,THREEDS2_FINGERPRINT as h}from"../../constants.js";import{Analytics3DS2Errors as S,ANALYTICS_ERROR_TYPE as D,Analytics3DS2Events as u}from"../../../../core/Analytics/constants.js";import{AnalyticsLogEvent as g}from"../../../../core/Analytics/AnalyticsLogEvent.js";import{AnalyticsErrorEvent as f}from"../../../../core/Analytics/AnalyticsErrorEvent.js";function C(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}class E extends e{componentDidMount(){if(!o(this.state.fingerPrintData)){const e="test"===this.props.environment&&this.props._environmentUrls?.api?.includes("http://localhost:8080"),{threeDSMethodURL:t,threeDSMethodNotificationURL:r,postMessageDomain:o,threeDSServerTransID:s}=this.state.fingerPrintData;if(!a(t,e))return this.setStatusComplete({threeDSCompInd:"U"},{errorCode:S.TOKEN_IS_MISSING_THREEDSMETHODURL,message:`${p}: Decoded token is missing a valid threeDSMethodURL property`}),void console.debug("### PrepareFingerprint3DS2::exiting:: no valid threeDSMethodURL");const n=a(r,e),i=a(o,e),l=s?.length;if(!n||!i||!l)return this.setStatusComplete({threeDSCompInd:"N"},{errorCode:S.TOKEN_IS_MISSING_OTHER_PROPS,message:`${p}: Decoded token is missing one or more of the following properties (threeDSMethodNotificationURL | postMessageDomain | threeDSServerTransID)`}),void console.debug("### PrepareFingerprint3DS2::exiting:: Decoded token is missing one or more of the following properties (threeDSMethodNotificationURL | postMessageDomain | threeDSServerTransID)");this.setState({status:"retrievingFingerPrint"})}else{const e=this.state.fingerPrintData.error,t=e.indexOf(l)>-1?S.ACTION_IS_MISSING_TOKEN:S.TOKEN_DECODE_OR_PARSING_FAILED;this.setStatusComplete({threeDSCompInd:"N"},{errorCode:t,message:`${p}: ${e}`}),console.debug("### PrepareFingerprint3DS2:: token does not exist or could not be base64 decoded &/or JSON.parsed")}}setStatusComplete(e,t=null){this.setState({status:"complete"},(()=>{const r=(this.props.isMDFlow?s:n)(this.props.dataKey,e,this.props.paymentData);let o;const i=t||e;if(i.errorCode){const e={code:i.errorCode===m?S.THREEDS2_TIMEOUT:i.errorCode,errorType:i.errorCode===m?D.network:D.apiError};o=new f({message:i.message,...e}),this.props.onSubmitAnalytics(o)}let a;switch(e?.threeDSCompInd){case"Y":a="success";break;case"N":a=t?t.errorCode===m?m:"failedInternal":"failed";break;case"U":a="noThreeDSMethodURL"}o=new g({type:d,message:`${c} fingerprinting has completed`,subType:u.FINGERPRINT_COMPLETED,result:a}),this.props.onSubmitAnalytics(o),this.props.onComplete(r)}))}render({showSpinner:e},{status:o,fingerPrintData:s}){return"retrievingFingerPrint"===o?t(r,{onCompleteFingerprint:e=>{this.setStatusComplete(e.result)},onErrorFingerprint:e=>{const t={errorCode:e.errorCode,message:`${h}: ${e.errorCode}`};this.setStatusComplete(e.result,t)},showSpinner:e,...s,onActionHandled:this.props.onActionHandled,onFormSubmit:this.onFormSubmit}):null}constructor(e){super(e),C(this,"onFormSubmit",(e=>{const t=new g({type:d,message:e,subType:u.FINGERPRINT_DATA_SENT});this.props.onSubmitAnalytics(t)}));const{token:t,notificationURL:r}=this.props;if(t){const e=i({token:t,notificationURL:r});this.state={status:"init",fingerPrintData:e}}else this.state={fingerPrintData:{success:!1,error:l}},console.debug(`${p}: ${l}`)}}C(E,"type","scheme"),C(E,"defaultProps",{onComplete:()=>{},onError:()=>{},paymentData:"",showSpinner:!0,isMDFlow:!1});export{E as default};
1
+ import{Component as e,createElement as t}from"../../../../external/preact/dist/preact.js";import r from"./DoFingerprint3DS2.js";import{isErrorObject as o,createOldFingerprintResolveData as s,createFingerprintResolveData as n,prepareFingerPrintData as i}from"../utils.js";import{isValidHttpUrl as a}from"../../../../utils/isValidURL.js";import{THREEDS2_FINGERPRINT_ERROR as p,MISSING_TOKEN_IN_ACTION_MSG as l,TIMEOUT as m,THREEDS2_NUM as c,THREEDS2_FULL as d,THREEDS2_FINGERPRINT as h}from"../../constants.js";import{Analytics3DS2Errors as S,ANALYTICS_ERROR_TYPE as D,Analytics3DS2Events as u}from"../../../../core/Analytics/constants.js";import{AnalyticsLogEvent as g}from"../../../../core/Analytics/AnalyticsLogEvent.js";import{AnalyticsErrorEvent as f}from"../../../../core/Analytics/AnalyticsErrorEvent.js";function C(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}class E extends e{componentDidMount(){if(!o(this.state.fingerPrintData)){const e="test"===this.props.environment&&this.props._environmentUrls?.api?.includes("http://localhost:8080"),{threeDSMethodURL:t,threeDSMethodNotificationURL:r,postMessageDomain:o,threeDSServerTransID:s}=this.state.fingerPrintData;if(!a(t,e))return this.setStatusComplete({threeDSCompInd:"U"},{errorCode:S.TOKEN_IS_MISSING_THREEDSMETHODURL,message:`${p}: Decoded token is missing a valid threeDSMethodURL property`}),void console.debug("### PrepareFingerprint3DS2::exiting:: no valid threeDSMethodURL");const n=a(r,e),i=a(o,e),l=s?.length;if(!n||!i||!l)return this.setStatusComplete({threeDSCompInd:"N"},{errorCode:S.TOKEN_IS_MISSING_OTHER_PROPS,message:`${p}: Decoded token is missing one or more of the following properties (threeDSMethodNotificationURL | postMessageDomain | threeDSServerTransID)`}),void console.debug("### PrepareFingerprint3DS2::exiting:: Decoded token is missing one or more of the following properties (threeDSMethodNotificationURL | postMessageDomain | threeDSServerTransID)");this.setState({status:"retrievingFingerPrint"})}else{const e=this.state.fingerPrintData.error,t=e.indexOf(l)>-1?S.ACTION_IS_MISSING_TOKEN:S.TOKEN_DECODE_OR_PARSING_FAILED;this.setStatusComplete({threeDSCompInd:"N"},{errorCode:t,message:`${p}: ${e}`}),console.debug("### PrepareFingerprint3DS2:: token does not exist or could not be base64 decoded &/or JSON.parsed")}}setStatusComplete(e,t=null){this.setState({status:"complete"},()=>{const r=(this.props.isMDFlow?s:n)(this.props.dataKey,e,this.props.paymentData);let o;const i=t||e;if(i.errorCode){const e={code:i.errorCode===m?S.THREEDS2_TIMEOUT:i.errorCode,errorType:i.errorCode===m?D.network:D.apiError};o=new f({message:i.message,...e}),this.props.onSubmitAnalytics(o)}let a;switch(e?.threeDSCompInd){case"Y":a="success";break;case"N":a=t?t.errorCode===m?m:"failedInternal":"failed";break;case"U":a="noThreeDSMethodURL"}o=new g({type:d,message:`${c} fingerprinting has completed`,subType:u.FINGERPRINT_COMPLETED,result:a}),this.props.onSubmitAnalytics(o),this.props.onComplete(r)})}render({showSpinner:e},{status:o,fingerPrintData:s}){return"retrievingFingerPrint"===o?t(r,{onCompleteFingerprint:e=>{this.setStatusComplete(e.result)},onErrorFingerprint:e=>{const t={errorCode:e.errorCode,message:`${h}: ${e.errorCode}`};this.setStatusComplete(e.result,t)},showSpinner:e,...s,onActionHandled:this.props.onActionHandled,onFormSubmit:this.onFormSubmit}):null}constructor(e){super(e),C(this,"onFormSubmit",e=>{const t=new g({type:d,message:e,subType:u.FINGERPRINT_DATA_SENT});this.props.onSubmitAnalytics(t)});const{token:t,notificationURL:r}=this.props;if(t){const e=i({token:t,notificationURL:r});this.state={status:"init",fingerPrintData:e}}else this.state={fingerPrintData:{success:!1,error:l}},console.debug(`${p}: ${l}`)}}C(E,"type","scheme"),C(E,"defaultProps",{onComplete:()=>{},onError:()=>{},paymentData:"",showSpinner:!0,isMDFlow:!1});export{E as default};
2
2
  //# sourceMappingURL=PrepareFingerprint3DS2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PrepareFingerprint3DS2.js","sources":["../../../../../../src/components/ThreeDS2/components/DeviceFingerprint/PrepareFingerprint3DS2.tsx"],"sourcesContent":["import { Component, h } from 'preact';\nimport DoFingerprint3DS2 from './DoFingerprint3DS2';\nimport { createFingerprintResolveData, createOldFingerprintResolveData, isErrorObject, prepareFingerPrintData } from '../utils';\nimport { PrepareFingerprint3DS2Props, PrepareFingerprint3DS2State } from './types';\nimport { FingerPrintData, ResultObject, ErrorCodeObject } from '../../types';\nimport { ErrorObject } from '../../../../core/Errors/types';\nimport { isValidHttpUrl } from '../../../../utils/isValidURL';\nimport { THREEDS2_FULL, THREEDS2_FINGERPRINT, THREEDS2_FINGERPRINT_ERROR, THREEDS2_NUM, MISSING_TOKEN_IN_ACTION_MSG, TIMEOUT } from '../../constants';\nimport { ANALYTICS_ERROR_TYPE, Analytics3DS2Errors, Analytics3DS2Events } from '../../../../core/Analytics/constants';\nimport { AnalyticsLogEvent } from '../../../../core/Analytics/AnalyticsLogEvent';\nimport { AnalyticsEvent } from '../../../../core/Analytics/AnalyticsEvent';\nimport { AnalyticsErrorEvent } from '../../../../core/Analytics/AnalyticsErrorEvent';\n\nclass PrepareFingerprint3DS2 extends Component<PrepareFingerprint3DS2Props, PrepareFingerprint3DS2State> {\n public static type = 'scheme';\n\n public static defaultProps = {\n onComplete: () => {},\n onError: () => {},\n paymentData: '',\n showSpinner: true,\n isMDFlow: false\n };\n\n constructor(props) {\n super(props);\n\n const { token, notificationURL } = this.props; // See comments on prepareFingerPrintData regarding notificationURL\n\n if (token) {\n const fingerPrintData: FingerPrintData | ErrorObject = prepareFingerPrintData({ token, notificationURL });\n\n this.state = {\n status: 'init',\n fingerPrintData: fingerPrintData as FingerPrintData\n };\n } else {\n // Will be picked up in componentDidMount\n this.state = { fingerPrintData: { success: false, error: MISSING_TOKEN_IN_ACTION_MSG } };\n\n console.debug(`${THREEDS2_FINGERPRINT_ERROR}: ${MISSING_TOKEN_IN_ACTION_MSG}`);\n }\n }\n\n public onFormSubmit = (msg: string) => {\n const event = new AnalyticsLogEvent({\n type: THREEDS2_FULL,\n message: msg,\n subType: Analytics3DS2Events.FINGERPRINT_DATA_SENT\n });\n\n this.props.onSubmitAnalytics(event);\n };\n\n componentDidMount() {\n const hasFingerPrintData = !isErrorObject(this.state.fingerPrintData);\n\n if (hasFingerPrintData) {\n const shouldAllowHttpDomains =\n /** Allow http urls if in development and testing against localhost:8080 */\n (process.env.NODE_ENV === 'development' && process.env.__CLIENT_ENV__?.indexOf('localhost:8080') > -1) ||\n /**\n * Allows the checkoutshopper demo on localhost:8080 to work -\n * requires a configuration in localhost of environment: 'test', _environmentUrls: {api: 'http://localhost:8080/'}\n */\n (this.props.environment === 'test' && this.props._environmentUrls?.api?.includes('http://localhost:8080'));\n\n /**\n * Check the structure of the created fingerPrintData\n */\n const { threeDSMethodURL, threeDSMethodNotificationURL, postMessageDomain, threeDSServerTransID } = this.state\n .fingerPrintData as FingerPrintData;\n\n const hasValid3DSMethodURL = isValidHttpUrl(threeDSMethodURL, shouldAllowHttpDomains);\n\n // Only render component if we have a threeDSMethodURL. Otherwise, exit with threeDSCompInd: 'U'\n if (!hasValid3DSMethodURL) {\n this.setStatusComplete(\n { threeDSCompInd: 'U' },\n {\n errorCode: Analytics3DS2Errors.TOKEN_IS_MISSING_THREEDSMETHODURL,\n message: `${THREEDS2_FINGERPRINT_ERROR}: Decoded token is missing a valid threeDSMethodURL property`\n }\n );\n\n /**\n * NOTE: we can now use this.props.isMDFlow to decide if we want to send any of these errors to the onError handler\n * - this is problematic in the regular flow since merchants tend to treat any calls to their onError handler as 'fatal',\n * but in the MDFlow we control what the onError handler does.\n */\n // if (this.props.isMDFlow) {}\n\n console.debug('### PrepareFingerprint3DS2::exiting:: no valid threeDSMethodURL');\n return;\n }\n\n const hasValid3DSMethodNotificationURL = isValidHttpUrl(threeDSMethodNotificationURL, shouldAllowHttpDomains);\n const hasValidPostMessageDomain = isValidHttpUrl(postMessageDomain, shouldAllowHttpDomains);\n const hasTransServerID = threeDSServerTransID?.length;\n\n if (!hasValid3DSMethodNotificationURL || !hasValidPostMessageDomain || !hasTransServerID) {\n /**\n * NOTE: EMVCo_3DS_CoreSpec_v2.3.1_20220831.pdf states that we should return: threeDSCompInd: 'N'\n * when the fingerprinting process \"Did not run or did not successfully complete\"\n */\n this.setStatusComplete(\n { threeDSCompInd: 'N' },\n {\n errorCode: Analytics3DS2Errors.TOKEN_IS_MISSING_OTHER_PROPS,\n message: `${THREEDS2_FINGERPRINT_ERROR}: Decoded token is missing one or more of the following properties (threeDSMethodNotificationURL | postMessageDomain | threeDSServerTransID)`\n }\n );\n\n console.debug(\n '### PrepareFingerprint3DS2::exiting:: Decoded token is missing one or more of the following properties (threeDSMethodNotificationURL | postMessageDomain | threeDSServerTransID)'\n );\n\n return;\n }\n\n // Proceed to allow component to render\n this.setState({ status: 'retrievingFingerPrint' });\n //\n } else {\n // Only render component if we have fingerPrintData. Otherwise, complete with threeDSCompInd: 'N'\n\n const errorMsg: string = (this.state.fingerPrintData as ErrorObject).error;\n\n const errorCode =\n errorMsg.indexOf(MISSING_TOKEN_IN_ACTION_MSG) > -1\n ? Analytics3DS2Errors.ACTION_IS_MISSING_TOKEN\n : Analytics3DS2Errors.TOKEN_DECODE_OR_PARSING_FAILED;\n\n this.setStatusComplete(\n { threeDSCompInd: 'N' },\n {\n errorCode,\n message: `${THREEDS2_FINGERPRINT_ERROR}: ${errorMsg}` // can be: 'Missing \"token\" property from threeDS2 action', 'not base64', 'malformed URI sequence' or 'Could not JSON parse token'\n }\n );\n\n console.debug('### PrepareFingerprint3DS2:: token does not exist or could not be base64 decoded &/or JSON.parsed');\n }\n }\n\n setStatusComplete(resultObj: ResultObject, errorCodeObject: ErrorCodeObject = null) {\n this.setState({ status: 'complete' }, () => {\n /**\n * Create the data in the way that the /details endpoint expects.\n * This is different for the flow triggered by the threeds2InMDFlow process than for the new, v67, 'threeDS2' action\n */\n const resolveDataFunction = this.props.isMDFlow ? createOldFingerprintResolveData : createFingerprintResolveData;\n const data = resolveDataFunction(this.props.dataKey, resultObj, this.props.paymentData);\n\n let event: AnalyticsEvent;\n\n /** Are we in an error scenario? If so, submit analytics about it */\n const finalResObject = errorCodeObject ? errorCodeObject : resultObj;\n if (finalResObject.errorCode) {\n const errorTypeAndCode = {\n code: finalResObject.errorCode === TIMEOUT ? Analytics3DS2Errors.THREEDS2_TIMEOUT : finalResObject.errorCode,\n errorType: finalResObject.errorCode === TIMEOUT ? ANALYTICS_ERROR_TYPE.network : ANALYTICS_ERROR_TYPE.apiError\n };\n\n /**\n * Timeout or data parsing problems:\n *\n * (threeDSCompInd:\"U\"):\n * - Decoded token is missing a valid threeDSMethodURL property,\n * or, (threeDSCompInd:\"N\"):\n * - Fingerprint process has timed out,\n * also, (threeDSCompInd:\"N\"):\n * - Missing \"token\" property from threeDS2 action\n * - or, decoded token is missing one or more of the following properties (threeDSMethodNotificationURL | postMessageDomain | threeDSServerTransID)\n * - or, token could not be base64 decoded &/or JSON.parsed\n */\n\n event = new AnalyticsErrorEvent({\n message: (finalResObject as ErrorCodeObject).message,\n ...errorTypeAndCode\n });\n\n // Send error to analytics endpoint\n this.props.onSubmitAnalytics(event);\n }\n\n /** Calculate \"result\" for analytics */\n let result: string;\n\n switch (resultObj?.threeDSCompInd) {\n case 'Y':\n result = 'success';\n break;\n case 'N': {\n if (!errorCodeObject) {\n result = 'failed'; // 'failed' is the result returned from the threeDSMethodURL\n } else {\n result = errorCodeObject.errorCode === TIMEOUT ? TIMEOUT : 'failedInternal'; // timed-out; or, 'failed' as a result of internal checks\n }\n break;\n }\n case 'U':\n result = 'noThreeDSMethodURL';\n break;\n default:\n }\n\n /**\n * The fingerprint process is completed, one way or another.\n * The resultObj will be {threeDSCompInd:\"Y\"} in the case of success,\n * else {threeDSCompInd:\"U\"} or {threeDSCompInd:\"N\"} - if we've had some kind of timeout or data parsing problem (as described above)\n */\n\n event = new AnalyticsLogEvent({\n type: THREEDS2_FULL,\n message: `${THREEDS2_NUM} fingerprinting has completed`,\n subType: Analytics3DS2Events.FINGERPRINT_COMPLETED,\n result\n });\n // Send log to analytics endpoint\n this.props.onSubmitAnalytics(event);\n\n /**\n * Equals call to callSubmit3DS2Fingerprint (except for in 3DS2InMDFlow)\n */\n this.props.onComplete(data);\n });\n }\n\n render({ showSpinner }, { status, fingerPrintData }) {\n if (status === 'retrievingFingerPrint') {\n return (\n <DoFingerprint3DS2\n onCompleteFingerprint={fingerprint => {\n this.setStatusComplete(fingerprint.result);\n }}\n onErrorFingerprint={fingerprint => {\n /**\n * Called when fingerprint times-out (which is still a valid scenario)...\n */\n const timeoutObject: ErrorCodeObject = {\n errorCode: fingerprint.errorCode, // 'timeout'\n message: `${THREEDS2_FINGERPRINT}: ${fingerprint.errorCode}`\n };\n\n this.setStatusComplete(fingerprint.result, timeoutObject); // fingerprint.result = threeDSCompInd: 'N'\n }}\n showSpinner={showSpinner}\n {...fingerPrintData}\n onActionHandled={this.props.onActionHandled}\n onFormSubmit={this.onFormSubmit}\n />\n );\n }\n\n return null;\n }\n}\n\nexport default PrepareFingerprint3DS2;\n"],"names":["PrepareFingerprint3DS2","Component","componentDidMount","isErrorObject","this","state","fingerPrintData","shouldAllowHttpDomains","props","environment","_environmentUrls","api","includes","threeDSMethodURL","threeDSMethodNotificationURL","postMessageDomain","threeDSServerTransID","isValidHttpUrl","setStatusComplete","threeDSCompInd","errorCode","Analytics3DS2Errors","TOKEN_IS_MISSING_THREEDSMETHODURL","message","THREEDS2_FINGERPRINT_ERROR","console","debug","hasValid3DSMethodNotificationURL","hasValidPostMessageDomain","hasTransServerID","length","TOKEN_IS_MISSING_OTHER_PROPS","setState","status","errorMsg","error","indexOf","MISSING_TOKEN_IN_ACTION_MSG","ACTION_IS_MISSING_TOKEN","TOKEN_DECODE_OR_PARSING_FAILED","resultObj","errorCodeObject","data","isMDFlow","createOldFingerprintResolveData","createFingerprintResolveData","dataKey","paymentData","event","finalResObject","errorTypeAndCode","code","TIMEOUT","THREEDS2_TIMEOUT","errorType","ANALYTICS_ERROR_TYPE","network","apiError","AnalyticsErrorEvent","onSubmitAnalytics","result","AnalyticsLogEvent","type","THREEDS2_FULL","THREEDS2_NUM","subType","Analytics3DS2Events","FINGERPRINT_COMPLETED","onComplete","render","showSpinner","h","DoFingerprint3DS2","onCompleteFingerprint","fingerprint","onErrorFingerprint","timeoutObject","THREEDS2_FINGERPRINT","onActionHandled","onFormSubmit","constructor","super","_define_property","msg","FINGERPRINT_DATA_SENT","token","notificationURL","prepareFingerPrintData","success","defaultProps","onError"],"mappings":"k6BAaA,MAAMA,UAA+BC,EAyCjCC,iBAAAA,GAGI,IAF4BC,EAAcC,KAAKC,MAAMC,iBAE7B,CACpB,MAAMC,EAO0B,SAA3BH,KAAKI,MAAMC,aAA0BL,KAAKI,MAAME,kBAAkBC,KAAKC,SAAS,0BAK/EC,iBAAEA,EAAgBC,6BAAEA,EAA4BC,kBAAEA,EAAiBC,qBAAEA,GAAyBZ,KAAKC,MACpGC,gBAKL,IAH6BW,EAAeJ,EAAkBN,GAoB1D,OAhBAH,KAAKc,kBACD,CAAEC,eAAgB,KAClB,CACIC,UAAWC,EAAoBC,kCAC/BC,QAAS,GAAGC,uEAWpBC,QAAQC,MAAM,mEAIlB,MAAMC,EAAmCV,EAAeH,EAA8BP,GAChFqB,EAA4BX,EAAeF,EAAmBR,GAC9DsB,EAAmBb,GAAsBc,OAE/C,IAAKH,IAAqCC,IAA8BC,EAiBpE,OAZAzB,KAAKc,kBACD,CAAEC,eAAgB,KAClB,CACIC,UAAWC,EAAoBU,6BAC/BR,QAAS,GAAGC,uJAIpBC,QAAQC,MACJ,oLAORtB,KAAK4B,SAAS,CAAEC,OAAQ,8BAErB,CAGH,MAAMC,EAAmB9B,KAAMC,MAAMC,gBAAgC6B,MAE/Df,EACFc,EAASE,QAAQC,IAA+B,EAC1ChB,EAAoBiB,wBACpBjB,EAAoBkB,+BAE9BnC,KAAKc,kBACD,CAAEC,eAAgB,KAClB,CACIC,YACAG,QAAS,GAAGC,MAA+BU,MAInDT,QAAQC,MAAM,oGAClB,CACJ,CAEAR,iBAAAA,CAAkBsB,EAAyBC,EAAmC,MAC1ErC,KAAK4B,SAAS,CAAEC,OAAQ,aAAc,KAKlC,MACMS,GADsBtC,KAAKI,MAAMmC,SAAWC,EAAkCC,GACnDzC,KAAKI,MAAMsC,QAASN,EAAWpC,KAAKI,MAAMuC,aAE3E,IAAIC,EAGJ,MAAMC,EAAiBR,GAAoCD,EAC3D,GAAIS,EAAe7B,UAAW,CAC1B,MAAM8B,EAAmB,CACrBC,KAAMF,EAAe7B,YAAcgC,EAAU/B,EAAoBgC,iBAAmBJ,EAAe7B,UACnGkC,UAAWL,EAAe7B,YAAcgC,EAAUG,EAAqBC,QAAUD,EAAqBE,UAgB1GT,EAAQ,IAAIU,EAAoB,CAC5BnC,QAAU0B,EAAmC1B,WAC1C2B,IAIP9C,KAAKI,MAAMmD,kBAAkBX,EACjC,CAGA,IAAIY,EAEJ,OAAQpB,GAAWrB,gBACf,IAAK,IACDyC,EAAS,UACT,MACJ,IAAK,IAIGA,EAHCnB,EAGQA,EAAgBrB,YAAcgC,EAAUA,EAAU,iBAFlD,SAIb,MAEJ,IAAK,IACDQ,EAAS,qBAWjBZ,EAAQ,IAAIa,EAAkB,CAC1BC,KAAMC,EACNxC,QAAS,GAAGyC,iCACZC,QAASC,EAAoBC,sBAC7BP,WAGJxD,KAAKI,MAAMmD,kBAAkBX,GAK7B5C,KAAKI,MAAM4D,WAAW1B,EAAAA,GAE9B,CAEA2B,MAAAA,EAAOC,YAAEA,IAAerC,OAAEA,EAAM3B,gBAAEA,IAC9B,MAAe,0BAAX2B,EAEIsC,EAACC,EAAAA,CACGC,sBAAuBC,IACnBtE,KAAKc,kBAAkBwD,EAAYd,OAAM,EAE7Ce,mBAAoBD,IAIhB,MAAME,EAAiC,CACnCxD,UAAWsD,EAAYtD,UACvBG,QAAS,GAAGsD,MAAyBH,EAAYtD,aAGrDhB,KAAKc,kBAAkBwD,EAAYd,OAAQgB,IAE/CN,YAAaA,KACThE,EACJwE,gBAAiB1E,KAAKI,MAAMsE,gBAC5BC,aAAc3E,KAAK2E,eAKxB,IACX,CAxOAC,WAAAA,CAAYxE,GACRyE,MAAMzE,GAmBV0E,EAAOH,KAAAA,gBAAgBI,IACnB,MAAMnC,EAAQ,IAAIa,EAAkB,CAChCC,KAAMC,EACNxC,QAAS4D,EACTlB,QAASC,EAAoBkB,wBAGjChF,KAAKI,MAAMmD,kBAAkBX,EAAAA,IAxB7B,MAAMqC,MAAEA,EAAKC,gBAAEA,GAAoBlF,KAAKI,MAExC,GAAI6E,EAAO,CACP,MAAM/E,EAAiDiF,EAAuB,CAAEF,QAAOC,oBAEvFlF,KAAKC,MAAQ,CACT4B,OAAQ,OACR3B,gBAAiBA,QAIrBF,KAAKC,MAAQ,CAAEC,gBAAiB,CAAEkF,SAAS,EAAOrD,MAAOE,IAEzDZ,QAAQC,MAAM,GAAGF,MAA+Ba,IAExD,EA5BA6C,EADElF,EACY8D,OAAO,UAErBoB,EAHElF,EAGYyF,eAAe,CACzBrB,WAAY,OACZsB,QAAS,OACT3C,YAAa,GACbuB,aAAa,EACb3B,UAAU"}
1
+ {"version":3,"file":"PrepareFingerprint3DS2.js","sources":["../../../../../../src/components/ThreeDS2/components/DeviceFingerprint/PrepareFingerprint3DS2.tsx"],"sourcesContent":["import { Component, h } from 'preact';\nimport DoFingerprint3DS2 from './DoFingerprint3DS2';\nimport { createFingerprintResolveData, createOldFingerprintResolveData, isErrorObject, prepareFingerPrintData } from '../utils';\nimport { PrepareFingerprint3DS2Props, PrepareFingerprint3DS2State } from './types';\nimport { FingerPrintData, ResultObject, ErrorCodeObject } from '../../types';\nimport { ErrorObject } from '../../../../core/Errors/types';\nimport { isValidHttpUrl } from '../../../../utils/isValidURL';\nimport { THREEDS2_FULL, THREEDS2_FINGERPRINT, THREEDS2_FINGERPRINT_ERROR, THREEDS2_NUM, MISSING_TOKEN_IN_ACTION_MSG, TIMEOUT } from '../../constants';\nimport { ANALYTICS_ERROR_TYPE, Analytics3DS2Errors, Analytics3DS2Events } from '../../../../core/Analytics/constants';\nimport { AnalyticsLogEvent } from '../../../../core/Analytics/AnalyticsLogEvent';\nimport { AnalyticsEvent } from '../../../../core/Analytics/AnalyticsEvent';\nimport { AnalyticsErrorEvent } from '../../../../core/Analytics/AnalyticsErrorEvent';\n\nclass PrepareFingerprint3DS2 extends Component<PrepareFingerprint3DS2Props, PrepareFingerprint3DS2State> {\n public static type = 'scheme';\n\n public static defaultProps = {\n onComplete: () => {},\n onError: () => {},\n paymentData: '',\n showSpinner: true,\n isMDFlow: false\n };\n\n constructor(props) {\n super(props);\n\n const { token, notificationURL } = this.props; // See comments on prepareFingerPrintData regarding notificationURL\n\n if (token) {\n const fingerPrintData: FingerPrintData | ErrorObject = prepareFingerPrintData({ token, notificationURL });\n\n this.state = {\n status: 'init',\n fingerPrintData: fingerPrintData as FingerPrintData\n };\n } else {\n // Will be picked up in componentDidMount\n this.state = { fingerPrintData: { success: false, error: MISSING_TOKEN_IN_ACTION_MSG } };\n\n console.debug(`${THREEDS2_FINGERPRINT_ERROR}: ${MISSING_TOKEN_IN_ACTION_MSG}`);\n }\n }\n\n public onFormSubmit = (msg: string) => {\n const event = new AnalyticsLogEvent({\n type: THREEDS2_FULL,\n message: msg,\n subType: Analytics3DS2Events.FINGERPRINT_DATA_SENT\n });\n\n this.props.onSubmitAnalytics(event);\n };\n\n componentDidMount() {\n const hasFingerPrintData = !isErrorObject(this.state.fingerPrintData);\n\n if (hasFingerPrintData) {\n const shouldAllowHttpDomains =\n /** Allow http urls if in development and testing against localhost:8080 */\n (process.env.NODE_ENV === 'development' && process.env.__CLIENT_ENV__?.indexOf('localhost:8080') > -1) ||\n /**\n * Allows the checkoutshopper demo on localhost:8080 to work -\n * requires a configuration in localhost of environment: 'test', _environmentUrls: {api: 'http://localhost:8080/'}\n */\n (this.props.environment === 'test' && this.props._environmentUrls?.api?.includes('http://localhost:8080'));\n\n /**\n * Check the structure of the created fingerPrintData\n */\n const { threeDSMethodURL, threeDSMethodNotificationURL, postMessageDomain, threeDSServerTransID } = this.state\n .fingerPrintData as FingerPrintData;\n\n const hasValid3DSMethodURL = isValidHttpUrl(threeDSMethodURL, shouldAllowHttpDomains);\n\n // Only render component if we have a threeDSMethodURL. Otherwise, exit with threeDSCompInd: 'U'\n if (!hasValid3DSMethodURL) {\n this.setStatusComplete(\n { threeDSCompInd: 'U' },\n {\n errorCode: Analytics3DS2Errors.TOKEN_IS_MISSING_THREEDSMETHODURL,\n message: `${THREEDS2_FINGERPRINT_ERROR}: Decoded token is missing a valid threeDSMethodURL property`\n }\n );\n\n /**\n * NOTE: we can now use this.props.isMDFlow to decide if we want to send any of these errors to the onError handler\n * - this is problematic in the regular flow since merchants tend to treat any calls to their onError handler as 'fatal',\n * but in the MDFlow we control what the onError handler does.\n */\n // if (this.props.isMDFlow) {}\n\n console.debug('### PrepareFingerprint3DS2::exiting:: no valid threeDSMethodURL');\n return;\n }\n\n const hasValid3DSMethodNotificationURL = isValidHttpUrl(threeDSMethodNotificationURL, shouldAllowHttpDomains);\n const hasValidPostMessageDomain = isValidHttpUrl(postMessageDomain, shouldAllowHttpDomains);\n const hasTransServerID = threeDSServerTransID?.length;\n\n if (!hasValid3DSMethodNotificationURL || !hasValidPostMessageDomain || !hasTransServerID) {\n /**\n * NOTE: EMVCo_3DS_CoreSpec_v2.3.1_20220831.pdf states that we should return: threeDSCompInd: 'N'\n * when the fingerprinting process \"Did not run or did not successfully complete\"\n */\n this.setStatusComplete(\n { threeDSCompInd: 'N' },\n {\n errorCode: Analytics3DS2Errors.TOKEN_IS_MISSING_OTHER_PROPS,\n message: `${THREEDS2_FINGERPRINT_ERROR}: Decoded token is missing one or more of the following properties (threeDSMethodNotificationURL | postMessageDomain | threeDSServerTransID)`\n }\n );\n\n console.debug(\n '### PrepareFingerprint3DS2::exiting:: Decoded token is missing one or more of the following properties (threeDSMethodNotificationURL | postMessageDomain | threeDSServerTransID)'\n );\n\n return;\n }\n\n // Proceed to allow component to render\n this.setState({ status: 'retrievingFingerPrint' });\n //\n } else {\n // Only render component if we have fingerPrintData. Otherwise, complete with threeDSCompInd: 'N'\n\n const errorMsg: string = (this.state.fingerPrintData as ErrorObject).error;\n\n const errorCode =\n errorMsg.indexOf(MISSING_TOKEN_IN_ACTION_MSG) > -1\n ? Analytics3DS2Errors.ACTION_IS_MISSING_TOKEN\n : Analytics3DS2Errors.TOKEN_DECODE_OR_PARSING_FAILED;\n\n this.setStatusComplete(\n { threeDSCompInd: 'N' },\n {\n errorCode,\n message: `${THREEDS2_FINGERPRINT_ERROR}: ${errorMsg}` // can be: 'Missing \"token\" property from threeDS2 action', 'not base64', 'malformed URI sequence' or 'Could not JSON parse token'\n }\n );\n\n console.debug('### PrepareFingerprint3DS2:: token does not exist or could not be base64 decoded &/or JSON.parsed');\n }\n }\n\n setStatusComplete(resultObj: ResultObject, errorCodeObject: ErrorCodeObject = null) {\n this.setState({ status: 'complete' }, () => {\n /**\n * Create the data in the way that the /details endpoint expects.\n * This is different for the flow triggered by the threeds2InMDFlow process than for the new, v67, 'threeDS2' action\n */\n const resolveDataFunction = this.props.isMDFlow ? createOldFingerprintResolveData : createFingerprintResolveData;\n const data = resolveDataFunction(this.props.dataKey, resultObj, this.props.paymentData);\n\n let event: AnalyticsEvent;\n\n /** Are we in an error scenario? If so, submit analytics about it */\n const finalResObject = errorCodeObject ? errorCodeObject : resultObj;\n if (finalResObject.errorCode) {\n const errorTypeAndCode = {\n code: finalResObject.errorCode === TIMEOUT ? Analytics3DS2Errors.THREEDS2_TIMEOUT : finalResObject.errorCode,\n errorType: finalResObject.errorCode === TIMEOUT ? ANALYTICS_ERROR_TYPE.network : ANALYTICS_ERROR_TYPE.apiError\n };\n\n /**\n * Timeout or data parsing problems:\n *\n * (threeDSCompInd:\"U\"):\n * - Decoded token is missing a valid threeDSMethodURL property,\n * or, (threeDSCompInd:\"N\"):\n * - Fingerprint process has timed out,\n * also, (threeDSCompInd:\"N\"):\n * - Missing \"token\" property from threeDS2 action\n * - or, decoded token is missing one or more of the following properties (threeDSMethodNotificationURL | postMessageDomain | threeDSServerTransID)\n * - or, token could not be base64 decoded &/or JSON.parsed\n */\n\n event = new AnalyticsErrorEvent({\n message: (finalResObject as ErrorCodeObject).message,\n ...errorTypeAndCode\n });\n\n // Send error to analytics endpoint\n this.props.onSubmitAnalytics(event);\n }\n\n /** Calculate \"result\" for analytics */\n let result: string;\n\n switch (resultObj?.threeDSCompInd) {\n case 'Y':\n result = 'success';\n break;\n case 'N': {\n if (!errorCodeObject) {\n result = 'failed'; // 'failed' is the result returned from the threeDSMethodURL\n } else {\n result = errorCodeObject.errorCode === TIMEOUT ? TIMEOUT : 'failedInternal'; // timed-out; or, 'failed' as a result of internal checks\n }\n break;\n }\n case 'U':\n result = 'noThreeDSMethodURL';\n break;\n default:\n }\n\n /**\n * The fingerprint process is completed, one way or another.\n * The resultObj will be {threeDSCompInd:\"Y\"} in the case of success,\n * else {threeDSCompInd:\"U\"} or {threeDSCompInd:\"N\"} - if we've had some kind of timeout or data parsing problem (as described above)\n */\n\n event = new AnalyticsLogEvent({\n type: THREEDS2_FULL,\n message: `${THREEDS2_NUM} fingerprinting has completed`,\n subType: Analytics3DS2Events.FINGERPRINT_COMPLETED,\n result\n });\n // Send log to analytics endpoint\n this.props.onSubmitAnalytics(event);\n\n /**\n * Equals call to callSubmit3DS2Fingerprint (except for in 3DS2InMDFlow)\n */\n this.props.onComplete(data);\n });\n }\n\n render({ showSpinner }, { status, fingerPrintData }) {\n if (status === 'retrievingFingerPrint') {\n return (\n <DoFingerprint3DS2\n onCompleteFingerprint={fingerprint => {\n this.setStatusComplete(fingerprint.result);\n }}\n onErrorFingerprint={fingerprint => {\n /**\n * Called when fingerprint times-out (which is still a valid scenario)...\n */\n const timeoutObject: ErrorCodeObject = {\n errorCode: fingerprint.errorCode, // 'timeout'\n message: `${THREEDS2_FINGERPRINT}: ${fingerprint.errorCode}`\n };\n\n this.setStatusComplete(fingerprint.result, timeoutObject); // fingerprint.result = threeDSCompInd: 'N'\n }}\n showSpinner={showSpinner}\n {...fingerPrintData}\n onActionHandled={this.props.onActionHandled}\n onFormSubmit={this.onFormSubmit}\n />\n );\n }\n\n return null;\n }\n}\n\nexport default PrepareFingerprint3DS2;\n"],"names":["PrepareFingerprint3DS2","Component","componentDidMount","isErrorObject","this","state","fingerPrintData","shouldAllowHttpDomains","props","environment","_environmentUrls","api","includes","threeDSMethodURL","threeDSMethodNotificationURL","postMessageDomain","threeDSServerTransID","isValidHttpUrl","setStatusComplete","threeDSCompInd","errorCode","Analytics3DS2Errors","TOKEN_IS_MISSING_THREEDSMETHODURL","message","THREEDS2_FINGERPRINT_ERROR","console","debug","hasValid3DSMethodNotificationURL","hasValidPostMessageDomain","hasTransServerID","length","TOKEN_IS_MISSING_OTHER_PROPS","setState","status","errorMsg","error","indexOf","MISSING_TOKEN_IN_ACTION_MSG","ACTION_IS_MISSING_TOKEN","TOKEN_DECODE_OR_PARSING_FAILED","resultObj","errorCodeObject","data","isMDFlow","createOldFingerprintResolveData","createFingerprintResolveData","dataKey","paymentData","event","finalResObject","errorTypeAndCode","code","TIMEOUT","THREEDS2_TIMEOUT","errorType","ANALYTICS_ERROR_TYPE","network","apiError","AnalyticsErrorEvent","onSubmitAnalytics","result","AnalyticsLogEvent","type","THREEDS2_FULL","THREEDS2_NUM","subType","Analytics3DS2Events","FINGERPRINT_COMPLETED","onComplete","render","showSpinner","h","DoFingerprint3DS2","onCompleteFingerprint","fingerprint","onErrorFingerprint","timeoutObject","THREEDS2_FINGERPRINT","onActionHandled","onFormSubmit","constructor","super","_define_property","msg","FINGERPRINT_DATA_SENT","token","notificationURL","prepareFingerPrintData","success","defaultProps","onError"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ThreeDS2Form.js","sources":["../../../../../../src/components/ThreeDS2/components/Form/ThreeDS2Form.tsx"],"sourcesContent":["import { Component, h } from 'preact';\nimport classNames from 'classnames';\n\ninterface ThreeDS2FormProps {\n name: string;\n action: string;\n target: string;\n inputName: string;\n inputValue: string;\n onFormSubmit: (msg: string) => void;\n}\n\nexport default class ThreeDS2Form extends Component<ThreeDS2FormProps> {\n protected formEl;\n\n componentDidMount() {\n this.formEl.submit();\n this.props.onFormSubmit(`${this.props.inputName} sent`);\n }\n\n render({ name, action, target, inputName, inputValue }) {\n return (\n <form\n ref={ref => {\n this.formEl = ref;\n }}\n method=\"POST\"\n className={classNames(['adyen-checkout__threeds2__form', `adyen-checkout__threeds2__form--${name}`])}\n name={name}\n action={action}\n target={target}\n style={{ display: 'none' }}\n >\n <input name={inputName} value={inputValue} />\n </form>\n );\n }\n}\n"],"names":["ThreeDS2Form","Component","componentDidMount","this","formEl","submit","props","onFormSubmit","inputName","render","name","action","target","inputValue","h","form","ref","method","className","classNames","style","display","input","value","super","args"],"mappings":"uIAYe,MAAMA,UAAqBC,EAGtCC,iBAAAA,GACIC,KAAKC,OAAOC,SACZF,KAAKG,MAAMC,aAAa,GAAGJ,KAAKG,MAAME,iBAC1C,CAEAC,MAAAA,EAAOC,KAAEA,EAAIC,OAAEA,EAAMC,OAAEA,EAAMJ,UAAEA,EAASK,WAAEA,IACtC,OACIC,EAACC,OAAAA,CACGC,IAAKA,IACDb,KAAKC,OAASY,CAAAA,EAElBC,OAAO,OACPC,UAAWC,EAAW,CAAC,iCAAkC,mCAAmCT,MAC5FA,KAAMA,EACNC,OAAQA,EACRC,OAAQA,EACRQ,MAAO,CAAEC,QAAS,SAElBP,EAACQ,QAAAA,CAAMZ,KAAMF,EAAWe,MAAOV,IAG3C,6BAxBWW,SACXC,UAAA,KAAUrB,cAAVD"}
1
+ {"version":3,"file":"ThreeDS2Form.js","sources":["../../../../../../src/components/ThreeDS2/components/Form/ThreeDS2Form.tsx"],"sourcesContent":["import { Component, h } from 'preact';\nimport classNames from 'classnames';\n\ninterface ThreeDS2FormProps {\n name: string;\n action: string;\n target: string;\n inputName: string;\n inputValue: string;\n onFormSubmit: (msg: string) => void;\n}\n\nexport default class ThreeDS2Form extends Component<ThreeDS2FormProps> {\n protected formEl;\n\n componentDidMount() {\n this.formEl.submit();\n this.props.onFormSubmit(`${this.props.inputName} sent`);\n }\n\n render({ name, action, target, inputName, inputValue }) {\n return (\n <form\n ref={ref => {\n this.formEl = ref;\n }}\n method=\"POST\"\n className={classNames(['adyen-checkout__threeds2__form', `adyen-checkout__threeds2__form--${name}`])}\n name={name}\n action={action}\n target={target}\n style={{ display: 'none' }}\n >\n <input name={inputName} value={inputValue} />\n </form>\n );\n }\n}\n"],"names":["ThreeDS2Form","Component","componentDidMount","this","formEl","submit","props","onFormSubmit","inputName","render","name","action","target","inputValue","h","form","ref","method","className","classNames","style","display","input","value","super","args"],"mappings":"uIAYe,MAAMA,UAAqBC,EAGtCC,iBAAAA,GACIC,KAAKC,OAAOC,SACZF,KAAKG,MAAMC,aAAa,GAAGJ,KAAKG,MAAME,iBAC1C,CAEAC,MAAAA,EAAOC,KAAEA,EAAIC,OAAEA,EAAMC,OAAEA,EAAMJ,UAAEA,EAASK,WAAEA,IACtC,OACIC,EAACC,OAAAA,CACGC,IAAKA,IACDb,KAAKC,OAASY,GAElBC,OAAO,OACPC,UAAWC,EAAW,CAAC,iCAAkC,mCAAmCT,MAC5FA,KAAMA,EACNC,OAAQA,EACRC,OAAQA,EACRQ,MAAO,CAAEC,QAAS,SAElBP,EAACQ,QAAAA,CAAMZ,KAAMF,EAAWe,MAAOV,IAG3C,6BAxBWW,SAAAC,UACX,KAAUrB,cAAVD"}
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sources":["../../../../../src/components/ThreeDS2/components/utils.ts"],"sourcesContent":["import { CHALLENGE_WINDOW_SIZES, DEFAULT_CHALLENGE_WINDOW_SIZE } from '../constants';\nimport { getOrigin } from '../../../utils/getOrigin';\nimport base64 from '../../../utils/base64';\nimport { ChallengeData, ThreeDS2Token, FingerPrintData, ResultObject, FingerprintResolveData, ChallengeResolveData } from '../types';\nimport { pick } from '../../../utils/commonUtils';\nimport { DecodeObject } from '../../../types/global-types';\nimport { ErrorObject } from '../../../core/Errors/types';\n\n/**\n * Check if we have been passed an ErrorObject because either base64 decoding or JSON.parse failed\n * @param obj -\n */\nexport const isErrorObject = (obj: ErrorObject | ThreeDS2Token): boolean => {\n return 'success' in obj && !obj.success;\n};\n\nexport const decodeAndParseToken = (token: string): ThreeDS2Token | ErrorObject => {\n const decodedToken: DecodeObject = base64.decode(token);\n if (decodedToken.success) {\n try {\n return JSON.parse(decodedToken.data) as ThreeDS2Token;\n } catch (e) {\n return {\n success: false,\n error: 'Could not JSON parse token'\n };\n }\n }\n\n // base64.decode failed - object will contain error msg: 'not base64' or 'malformed URI sequence'\n return decodedToken as ErrorObject;\n};\n\n/**\n * Performs JSON.stringify on passed object & and base64 encodes result\n * @param obj -\n * @returns encoded result\n */\nexport const encodeObject = obj => {\n if (!obj || !Object.keys(obj).length) {\n throw new Error('No (populated) data object to encode');\n }\n return base64.encode(JSON.stringify(obj));\n};\n\n/**\n * Accepts a size string for the challenge window & returns it if it is valid else returns a default value\n * @param sizeStr - the size string to check the validity of\n * @returns a valid size string\n */\nexport const validateChallengeWindowSize = (sizeStr: string): string => {\n const sizeString = sizeStr.length === 1 ? `0${sizeStr}` : sizeStr;\n const hasSize = Object.prototype.hasOwnProperty.call(CHALLENGE_WINDOW_SIZES, sizeString);\n return hasSize ? sizeString : DEFAULT_CHALLENGE_WINDOW_SIZE;\n};\n\n/**\n * Accepts a size string for the challenge window & returns the corresponding array of w/h values\n * @param sizeStr -\n */\nexport const getChallengeWindowSize = (sizeStr: string): string[] => CHALLENGE_WINDOW_SIZES[validateChallengeWindowSize(sizeStr)];\n\n/**\n * prepareChallengeData\n *\n * Requires an object containing the challenge parameters:\n * @param token - challengeToken string received from /submitThreeDS2Fingerprint, /details or /payments call: contains acsTransID, acsURL, messageVersion,\n * threeDSNotificationURL and threeDSServerTransID\n * @param size - one of five possible challenge window sizes\n */\nexport const prepareChallengeData = ({ token, size }): ChallengeData | ErrorObject => {\n const decodedChallengeToken = decodeAndParseToken(token);\n\n if (isErrorObject(decodedChallengeToken)) {\n return decodedChallengeToken as ErrorObject;\n }\n\n const { acsTransID, acsURL, messageVersion, threeDSNotificationURL, threeDSServerTransID } = decodedChallengeToken as ThreeDS2Token;\n const notificationURLOrigin = getOrigin(threeDSNotificationURL);\n\n return {\n acsURL,\n cReqData: {\n acsTransID,\n messageVersion,\n threeDSServerTransID,\n messageType: 'CReq',\n challengeWindowSize: validateChallengeWindowSize(size)\n },\n iframeSizeArr: getChallengeWindowSize(size),\n postMessageDomain: notificationURLOrigin\n } as ChallengeData;\n};\n\n/**\n * prepareFingerPrintData\n *\n * Requires an object containing the fingerprint parameters:\n * @param token - fingerprintToken string received from /payments call: contains threeDSMethodNotificationURL, threeDSMethodUrl and\n * threeDSServerTransID\n * @param notificationURL - the URL that the final notification is expected to be postMessaged from.\n *\n * NOTE: we don't expect merchants to alter the default by passing in a notificationURL of their own via props;\n * and if 3DS2 is being done via createFromAction or handleAction we won't accept it.\n * But if the merchant is using checkout.create('threeDS2DeviceFingerprint') we still support the fact that they might want to set their own\n * notificationURL (aka threeDSMethodNotificationURL)\n */\nexport const prepareFingerPrintData = ({ token, notificationURL }): FingerPrintData | ErrorObject => {\n const decodedFingerPrintToken = decodeAndParseToken(token);\n\n if (isErrorObject(decodedFingerPrintToken)) {\n return decodedFingerPrintToken as ErrorObject;\n }\n\n const { threeDSMethodNotificationURL, threeDSMethodUrl: threeDSMethodURL, threeDSServerTransID } = decodedFingerPrintToken as ThreeDS2Token;\n const receivedNotificationURL = notificationURL || threeDSMethodNotificationURL;\n const notificationURLOrigin = getOrigin(receivedNotificationURL);\n\n return {\n threeDSServerTransID,\n threeDSMethodURL,\n threeDSMethodNotificationURL: receivedNotificationURL,\n postMessageDomain: notificationURLOrigin\n } as FingerPrintData;\n};\n\nexport const createFingerprintResolveData = (dataKey: string, resultObj: ResultObject, paymentData: string): FingerprintResolveData => ({\n data: {\n [dataKey]: encodeObject({ threeDSCompInd: resultObj.threeDSCompInd }),\n paymentData\n }\n});\n\n// Old 3DS2 flow\nexport const createOldFingerprintResolveData = (dataKey: string, resultObj: ResultObject, paymentData: string): any => ({\n data: {\n details: { 'threeds2.fingerprint': encodeObject(resultObj) },\n paymentData\n }\n});\n\nexport const createChallengeResolveData = (dataKey: string, transStatus: string, authorisationToken: string): ChallengeResolveData => ({\n data: {\n details: { [dataKey]: encodeObject({ transStatus, authorisationToken }) }\n }\n});\n\n// Needed for old 3DS2 flow & threeds2InMDFlow\nexport const createOldChallengeResolveData = (dataKey: string, transStatus: string, authorisationToken: string): any => ({\n data: {\n details: { 'threeds2.challengeResult': encodeObject({ transStatus }) },\n paymentData: authorisationToken\n }\n});\n\n/**\n *\n * Takes a string and encodes it as a base64url string\n * (https://en.wikipedia.org/wiki/Base64#URL_applications)\n * (See also https://tools.ietf.org/html/rfc7515)\n *\n * @example\n * ```\n * const jsonStr = JSON.stringify( {name:'john', surname:'smith'} );\n * const base64url = encodeBase64URL(jsonStr);\n * ```\n *\n * @param dataStr - data, as a string, to be encoded\n *\n * @returns base64URL - a base64url encoded string\n */\nexport const encodeBase64URL = (dataStr: string): string => {\n const base64Data = window.btoa(dataStr);\n let base64url = base64Data.split('=')[0]; // Remove any trailing '='s\n\n base64url = base64url.replace(/\\+/g, '-'); // 62nd char of encoding\n base64url = base64url.replace(/\\//g, '_'); // 63rd char of encoding\n\n return base64url;\n};\n\nconst fingerprintFlowPropsDropin = ['elementRef'];\n\n/**\n * Must contain all props needed for the challenge stage since, in the new 3DS2 flow, the fingerprint component will be the \"component\" reference\n * if the /submitThreeDS2Fingerprint response dictates we \"handleAction\" to create a challenge\n */\nconst fingerprintFlowProps = ['createFromAction', 'onAdditionalDetails'];\n\n/**\n * Add props specifically needed for the type of 3DS2 flow: fingerprint or challenge\n *\n * @param actionSubtype - 3DS2 flow type: fingerprint or challenge\n * @param props - object from which to extract particular properties\n */\nexport const get3DS2FlowProps = (actionSubtype, props) => {\n if (actionSubtype === 'fingerprint') {\n // elementRef exists when the fingerprint component is created from the Dropin\n const fingerprintProps = props.elementRef ? fingerprintFlowPropsDropin : fingerprintFlowProps;\n const rtnObj = pick(fingerprintProps).from(props);\n rtnObj.showSpinner = !props.isDropin;\n rtnObj.statusType = 'loading';\n return rtnObj;\n }\n\n // Challenge\n return {\n statusType: 'custom',\n i18n: props.i18n\n };\n};\n"],"names":["isErrorObject","obj","success","decodeAndParseToken","token","decodedToken","base64","decode","JSON","parse","data","e","error","encodeObject","Object","keys","length","Error","encode","stringify","validateChallengeWindowSize","sizeStr","sizeString","prototype","hasOwnProperty","call","CHALLENGE_WINDOW_SIZES","DEFAULT_CHALLENGE_WINDOW_SIZE","getChallengeWindowSize","prepareChallengeData","size","decodedChallengeToken","acsTransID","acsURL","messageVersion","threeDSNotificationURL","threeDSServerTransID","notificationURLOrigin","getOrigin","cReqData","messageType","challengeWindowSize","iframeSizeArr","postMessageDomain","prepareFingerPrintData","notificationURL","decodedFingerPrintToken","threeDSMethodNotificationURL","threeDSMethodUrl","threeDSMethodURL","receivedNotificationURL","createFingerprintResolveData","dataKey","resultObj","paymentData","threeDSCompInd","createOldFingerprintResolveData","details","createChallengeResolveData","transStatus","authorisationToken","createOldChallengeResolveData","encodeBase64URL","dataStr","base64url","window","btoa","split","replace","fingerprintFlowPropsDropin","fingerprintFlowProps","get3DS2FlowProps","actionSubtype","props","fingerprintProps","elementRef","rtnObj","pick","from","showSpinner","isDropin","statusType","i18n"],"mappings":"iPAYaA,MAAAA,EAAiBC,GACnB,YAAaA,IAAQA,EAAIC,QAGvBC,EAAuBC,IAChC,MAAMC,EAA6BC,EAAOC,OAAOH,GACjD,GAAIC,EAAaH,QACb,IACI,OAAOM,KAAKC,MAAMJ,EAAaK,KACnC,CAAE,MAAOC,GACL,MAAO,CACHT,SAAS,EACTU,MAAO,6BAEf,CAIJ,OAAOP,CAAAA,EAQEQ,EAAeZ,IACxB,IAAKA,IAAQa,OAAOC,KAAKd,GAAKe,OAC1B,MAAM,IAAIC,MAAM,wCAEpB,OAAOX,EAAOY,OAAOV,KAAKW,UAAUlB,GAAAA,EAQ3BmB,EAA+BC,IACxC,MAAMC,EAAgC,IAAnBD,EAAQL,OAAe,IAAIK,IAAYA,EAE1D,OADgBP,OAAOS,UAAUC,eAAeC,KAAKC,EAAwBJ,GAC5DA,EAAaK,CAAAA,EAOrBC,EAA0BP,GAA8BK,EAAuBN,EAA4BC,IAU3GQ,EAAuB,EAAGzB,QAAO0B,WAC1C,MAAMC,EAAwB5B,EAAoBC,GAElD,GAAIJ,EAAc+B,GACd,OAAOA,EAGX,MAAMC,WAAEA,EAAUC,OAAEA,EAAMC,eAAEA,EAAcC,uBAAEA,EAAsBC,qBAAEA,GAAyBL,EACvFM,EAAwBC,EAAUH,GAExC,MAAO,CACHF,SACAM,SAAU,CACNP,aACAE,iBACAE,uBACAI,YAAa,OACbC,oBAAqBrB,EAA4BU,IAErDY,cAAed,EAAuBE,GACtCa,kBAAmBN,EACvB,EAgBSO,EAAyB,EAAGxC,QAAOyC,sBAC5C,MAAMC,EAA0B3C,EAAoBC,GAEpD,GAAIJ,EAAc8C,GACd,OAAOA,EAGX,MAAMC,6BAAEA,EAA8BC,iBAAkBC,EAAgBb,qBAAEA,GAAyBU,EAC7FI,EAA0BL,GAAmBE,EAGnD,MAAO,CACHX,uBACAa,mBACAF,6BAA8BG,EAC9BP,kBAN0BL,EAAUY,GAOxC,EAGSC,EAA+B,CAACC,EAAiBC,EAAyBC,KAAiD,CACpI5C,KAAM,CACF0C,CAACA,GAAUvC,EAAa,CAAE0C,eAAgBF,EAAUE,iBACpDD,iBAKKE,EAAkC,CAACJ,EAAiBC,EAAyBC,KAA8B,CACpH5C,KAAM,CACF+C,QAAS,CAAE,uBAAwB5C,EAAawC,IAChDC,iBAIKI,EAA6B,CAACN,EAAiBO,EAAqBC,KAAsD,CACnIlD,KAAM,CACF+C,QAAS,CAAEL,CAACA,GAAUvC,EAAa,CAAE8C,cAAaC,2BAK7CC,EAAgC,CAACT,EAAiBO,EAAqBC,KAAqC,CACrHlD,KAAM,CACF+C,QAAS,CAAE,2BAA4B5C,EAAa,CAAE8C,iBACtDL,YAAaM,KAoBRE,EAAmBC,IAE5B,IAAIC,EADeC,OAAOC,KAAKH,GACJI,MAAM,KAAK,GAKtC,OAHAH,EAAYA,EAAUI,QAAQ,MAAO,KACrCJ,EAAYA,EAAUI,QAAQ,MAAO,KAE9BJ,CAAAA,EAGLK,EAA6B,CAAC,cAM9BC,EAAuB,CAAC,mBAAoB,uBAQrCC,EAAmB,CAACC,EAAeC,KAC5C,GAAsB,gBAAlBD,EAAiC,CAEjC,MAAME,EAAmBD,EAAME,WAAaN,EAA6BC,EACnEM,EAASC,EAAKH,GAAkBI,KAAKL,GAG3C,OAFAG,EAAOG,aAAeN,EAAMO,SAC5BJ,EAAOK,WAAa,UACbL,CACX,CAGA,MAAO,CACHK,WAAY,SACZC,KAAMT,EAAMS,KAChB"}
1
+ {"version":3,"file":"utils.js","sources":["../../../../../src/components/ThreeDS2/components/utils.ts"],"sourcesContent":["import { CHALLENGE_WINDOW_SIZES, DEFAULT_CHALLENGE_WINDOW_SIZE } from '../constants';\nimport { getOrigin } from '../../../utils/getOrigin';\nimport base64 from '../../../utils/base64';\nimport { ChallengeData, ThreeDS2Token, FingerPrintData, ResultObject, FingerprintResolveData, ChallengeResolveData } from '../types';\nimport { pick } from '../../../utils/commonUtils';\nimport { DecodeObject } from '../../../types/global-types';\nimport { ErrorObject } from '../../../core/Errors/types';\n\n/**\n * Check if we have been passed an ErrorObject because either base64 decoding or JSON.parse failed\n * @param obj -\n */\nexport const isErrorObject = (obj: ErrorObject | ThreeDS2Token): boolean => {\n return 'success' in obj && !obj.success;\n};\n\nexport const decodeAndParseToken = (token: string): ThreeDS2Token | ErrorObject => {\n const decodedToken: DecodeObject = base64.decode(token);\n if (decodedToken.success) {\n try {\n return JSON.parse(decodedToken.data) as ThreeDS2Token;\n } catch (e) {\n return {\n success: false,\n error: 'Could not JSON parse token'\n };\n }\n }\n\n // base64.decode failed - object will contain error msg: 'not base64' or 'malformed URI sequence'\n return decodedToken as ErrorObject;\n};\n\n/**\n * Performs JSON.stringify on passed object & and base64 encodes result\n * @param obj -\n * @returns encoded result\n */\nexport const encodeObject = obj => {\n if (!obj || !Object.keys(obj).length) {\n throw new Error('No (populated) data object to encode');\n }\n return base64.encode(JSON.stringify(obj));\n};\n\n/**\n * Accepts a size string for the challenge window & returns it if it is valid else returns a default value\n * @param sizeStr - the size string to check the validity of\n * @returns a valid size string\n */\nexport const validateChallengeWindowSize = (sizeStr: string): string => {\n const sizeString = sizeStr.length === 1 ? `0${sizeStr}` : sizeStr;\n const hasSize = Object.prototype.hasOwnProperty.call(CHALLENGE_WINDOW_SIZES, sizeString);\n return hasSize ? sizeString : DEFAULT_CHALLENGE_WINDOW_SIZE;\n};\n\n/**\n * Accepts a size string for the challenge window & returns the corresponding array of w/h values\n * @param sizeStr -\n */\nexport const getChallengeWindowSize = (sizeStr: string): string[] => CHALLENGE_WINDOW_SIZES[validateChallengeWindowSize(sizeStr)];\n\n/**\n * prepareChallengeData\n *\n * Requires an object containing the challenge parameters:\n * @param token - challengeToken string received from /submitThreeDS2Fingerprint, /details or /payments call: contains acsTransID, acsURL, messageVersion,\n * threeDSNotificationURL and threeDSServerTransID\n * @param size - one of five possible challenge window sizes\n */\nexport const prepareChallengeData = ({ token, size }): ChallengeData | ErrorObject => {\n const decodedChallengeToken = decodeAndParseToken(token);\n\n if (isErrorObject(decodedChallengeToken)) {\n return decodedChallengeToken as ErrorObject;\n }\n\n const { acsTransID, acsURL, messageVersion, threeDSNotificationURL, threeDSServerTransID } = decodedChallengeToken as ThreeDS2Token;\n const notificationURLOrigin = getOrigin(threeDSNotificationURL);\n\n return {\n acsURL,\n cReqData: {\n acsTransID,\n messageVersion,\n threeDSServerTransID,\n messageType: 'CReq',\n challengeWindowSize: validateChallengeWindowSize(size)\n },\n iframeSizeArr: getChallengeWindowSize(size),\n postMessageDomain: notificationURLOrigin\n } as ChallengeData;\n};\n\n/**\n * prepareFingerPrintData\n *\n * Requires an object containing the fingerprint parameters:\n * @param token - fingerprintToken string received from /payments call: contains threeDSMethodNotificationURL, threeDSMethodUrl and\n * threeDSServerTransID\n * @param notificationURL - the URL that the final notification is expected to be postMessaged from.\n *\n * NOTE: we don't expect merchants to alter the default by passing in a notificationURL of their own via props;\n * and if 3DS2 is being done via createFromAction or handleAction we won't accept it.\n * But if the merchant is using checkout.create('threeDS2DeviceFingerprint') we still support the fact that they might want to set their own\n * notificationURL (aka threeDSMethodNotificationURL)\n */\nexport const prepareFingerPrintData = ({ token, notificationURL }): FingerPrintData | ErrorObject => {\n const decodedFingerPrintToken = decodeAndParseToken(token);\n\n if (isErrorObject(decodedFingerPrintToken)) {\n return decodedFingerPrintToken as ErrorObject;\n }\n\n const { threeDSMethodNotificationURL, threeDSMethodUrl: threeDSMethodURL, threeDSServerTransID } = decodedFingerPrintToken as ThreeDS2Token;\n const receivedNotificationURL = notificationURL || threeDSMethodNotificationURL;\n const notificationURLOrigin = getOrigin(receivedNotificationURL);\n\n return {\n threeDSServerTransID,\n threeDSMethodURL,\n threeDSMethodNotificationURL: receivedNotificationURL,\n postMessageDomain: notificationURLOrigin\n } as FingerPrintData;\n};\n\nexport const createFingerprintResolveData = (dataKey: string, resultObj: ResultObject, paymentData: string): FingerprintResolveData => ({\n data: {\n [dataKey]: encodeObject({ threeDSCompInd: resultObj.threeDSCompInd }),\n paymentData\n }\n});\n\n// Old 3DS2 flow\nexport const createOldFingerprintResolveData = (dataKey: string, resultObj: ResultObject, paymentData: string): any => ({\n data: {\n details: { 'threeds2.fingerprint': encodeObject(resultObj) },\n paymentData\n }\n});\n\nexport const createChallengeResolveData = (dataKey: string, transStatus: string, authorisationToken: string): ChallengeResolveData => ({\n data: {\n details: { [dataKey]: encodeObject({ transStatus, authorisationToken }) }\n }\n});\n\n// Needed for old 3DS2 flow & threeds2InMDFlow\nexport const createOldChallengeResolveData = (dataKey: string, transStatus: string, authorisationToken: string): any => ({\n data: {\n details: { 'threeds2.challengeResult': encodeObject({ transStatus }) },\n paymentData: authorisationToken\n }\n});\n\n/**\n *\n * Takes a string and encodes it as a base64url string\n * (https://en.wikipedia.org/wiki/Base64#URL_applications)\n * (See also https://tools.ietf.org/html/rfc7515)\n *\n * @example\n * ```\n * const jsonStr = JSON.stringify( {name:'john', surname:'smith'} );\n * const base64url = encodeBase64URL(jsonStr);\n * ```\n *\n * @param dataStr - data, as a string, to be encoded\n *\n * @returns base64URL - a base64url encoded string\n */\nexport const encodeBase64URL = (dataStr: string): string => {\n const base64Data = window.btoa(dataStr);\n let base64url = base64Data.split('=')[0]; // Remove any trailing '='s\n\n base64url = base64url.replace(/\\+/g, '-'); // 62nd char of encoding\n base64url = base64url.replace(/\\//g, '_'); // 63rd char of encoding\n\n return base64url;\n};\n\nconst fingerprintFlowPropsDropin = ['elementRef'];\n\n/**\n * Must contain all props needed for the challenge stage since, in the new 3DS2 flow, the fingerprint component will be the \"component\" reference\n * if the /submitThreeDS2Fingerprint response dictates we \"handleAction\" to create a challenge\n */\nconst fingerprintFlowProps = ['createFromAction', 'onAdditionalDetails'];\n\n/**\n * Add props specifically needed for the type of 3DS2 flow: fingerprint or challenge\n *\n * @param actionSubtype - 3DS2 flow type: fingerprint or challenge\n * @param props - object from which to extract particular properties\n */\nexport const get3DS2FlowProps = (actionSubtype, props) => {\n if (actionSubtype === 'fingerprint') {\n // elementRef exists when the fingerprint component is created from the Dropin\n const fingerprintProps = props.elementRef ? fingerprintFlowPropsDropin : fingerprintFlowProps;\n const rtnObj = pick(fingerprintProps).from(props);\n rtnObj.showSpinner = !props.isDropin;\n rtnObj.statusType = 'loading';\n return rtnObj;\n }\n\n // Challenge\n return {\n statusType: 'custom',\n i18n: props.i18n\n };\n};\n"],"names":["isErrorObject","obj","success","decodeAndParseToken","token","decodedToken","base64","decode","JSON","parse","data","e","error","encodeObject","Object","keys","length","Error","encode","stringify","validateChallengeWindowSize","sizeStr","sizeString","prototype","hasOwnProperty","call","CHALLENGE_WINDOW_SIZES","DEFAULT_CHALLENGE_WINDOW_SIZE","getChallengeWindowSize","prepareChallengeData","size","decodedChallengeToken","acsTransID","acsURL","messageVersion","threeDSNotificationURL","threeDSServerTransID","notificationURLOrigin","getOrigin","cReqData","messageType","challengeWindowSize","iframeSizeArr","postMessageDomain","prepareFingerPrintData","notificationURL","decodedFingerPrintToken","threeDSMethodNotificationURL","threeDSMethodUrl","threeDSMethodURL","receivedNotificationURL","createFingerprintResolveData","dataKey","resultObj","paymentData","threeDSCompInd","createOldFingerprintResolveData","details","createChallengeResolveData","transStatus","authorisationToken","createOldChallengeResolveData","encodeBase64URL","dataStr","base64url","window","btoa","split","replace","fingerprintFlowPropsDropin","fingerprintFlowProps","get3DS2FlowProps","actionSubtype","props","fingerprintProps","elementRef","rtnObj","pick","from","showSpinner","isDropin","statusType","i18n"],"mappings":"iPAYO,MAAMA,EAAiBC,GACnB,YAAaA,IAAQA,EAAIC,QAGvBC,EAAuBC,IAChC,MAAMC,EAA6BC,EAAOC,OAAOH,GACjD,GAAIC,EAAaH,QACb,IACI,OAAOM,KAAKC,MAAMJ,EAAaK,KACnC,CAAE,MAAOC,GACL,MAAO,CACHT,SAAS,EACTU,MAAO,6BAEf,CAIJ,OAAOP,GAQEQ,EAAeZ,IACxB,IAAKA,IAAQa,OAAOC,KAAKd,GAAKe,OAC1B,MAAM,IAAIC,MAAM,wCAEpB,OAAOX,EAAOY,OAAOV,KAAKW,UAAUlB,KAQ3BmB,EAA+BC,IACxC,MAAMC,EAAgC,IAAnBD,EAAQL,OAAe,IAAIK,IAAYA,EAE1D,OADgBP,OAAOS,UAAUC,eAAeC,KAAKC,EAAwBJ,GAC5DA,EAAaK,GAOrBC,EAA0BP,GAA8BK,EAAuBN,EAA4BC,IAU3GQ,EAAuB,EAAGzB,QAAO0B,WAC1C,MAAMC,EAAwB5B,EAAoBC,GAElD,GAAIJ,EAAc+B,GACd,OAAOA,EAGX,MAAMC,WAAEA,EAAUC,OAAEA,EAAMC,eAAEA,EAAcC,uBAAEA,EAAsBC,qBAAEA,GAAyBL,EACvFM,EAAwBC,EAAUH,GAExC,MAAO,CACHF,SACAM,SAAU,CACNP,aACAE,iBACAE,uBACAI,YAAa,OACbC,oBAAqBrB,EAA4BU,IAErDY,cAAed,EAAuBE,GACtCa,kBAAmBN,IAiBdO,EAAyB,EAAGxC,QAAOyC,sBAC5C,MAAMC,EAA0B3C,EAAoBC,GAEpD,GAAIJ,EAAc8C,GACd,OAAOA,EAGX,MAAMC,6BAAEA,EAA8BC,iBAAkBC,EAAgBb,qBAAEA,GAAyBU,EAC7FI,EAA0BL,GAAmBE,EAGnD,MAAO,CACHX,uBACAa,mBACAF,6BAA8BG,EAC9BP,kBAN0BL,EAAUY,KAU/BC,EAA+B,CAACC,EAAiBC,EAAyBC,MACnF5C,KAAM,CACF0C,CAACA,GAAUvC,EAAa,CAAE0C,eAAgBF,EAAUE,iBACpDD,iBAKKE,EAAkC,CAACJ,EAAiBC,EAAyBC,MACtF5C,KAAM,CACF+C,QAAS,CAAE,uBAAwB5C,EAAawC,IAChDC,iBAIKI,EAA6B,CAACN,EAAiBO,EAAqBC,MAC7ElD,KAAM,CACF+C,QAAS,CAAEL,CAACA,GAAUvC,EAAa,CAAE8C,cAAaC,2BAK7CC,EAAgC,CAACT,EAAiBO,EAAqBC,MAChFlD,KAAM,CACF+C,QAAS,CAAE,2BAA4B5C,EAAa,CAAE8C,iBACtDL,YAAaM,KAoBRE,EAAmBC,IAE5B,IAAIC,EADeC,OAAOC,KAAKH,GACJI,MAAM,KAAK,GAKtC,OAHAH,EAAYA,EAAUI,QAAQ,MAAO,KACrCJ,EAAYA,EAAUI,QAAQ,MAAO,KAE9BJ,GAGLK,EAA6B,CAAC,cAM9BC,EAAuB,CAAC,mBAAoB,uBAQrCC,EAAmB,CAACC,EAAeC,KAC5C,GAAsB,gBAAlBD,EAAiC,CAEjC,MAAME,EAAmBD,EAAME,WAAaN,EAA6BC,EACnEM,EAASC,EAAKH,GAAkBI,KAAKL,GAG3C,OAFAG,EAAOG,aAAeN,EAAMO,SAC5BJ,EAAOK,WAAa,UACbL,CACX,CAGA,MAAO,CACHK,WAAY,SACZC,KAAMT,EAAMS"}
@@ -1 +1 @@
1
- {"version":3,"file":"Trustly.js","sources":["../../../../src/components/Trustly/Trustly.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport RedirectElement from '../Redirect';\nimport RedirectButton from '../internal/RedirectButton';\nimport { TxVariants } from '../tx-variants';\nimport './Trustly.scss';\n\nclass TrustlyElement extends RedirectElement {\n public static type = TxVariants.trustly;\n\n get displayName() {\n return this.props.name || this.constructor['type'];\n }\n\n render() {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <div className=\"adyen-checkout-trustly\">\n <p className=\"adyen-checkout-trustly__descriptor\">{this.props.i18n.get('trustly.descriptor')}</p>\n <ul className=\"adyen-checkout-trustly__description-list\">\n <li>{this.props.i18n.get('trustly.description1')}</li>\n <li>{this.props.i18n.get('trustly.description2')}</li>\n </ul>\n </div>\n\n {this.props.showPayButton && (\n <RedirectButton\n {...this.props}\n showPayButton={this.props.showPayButton}\n name={this.displayName}\n onSubmit={this.submit}\n payButton={this.payButton}\n ref={ref => {\n this.componentRef = ref;\n }}\n />\n )}\n </CoreProvider>\n );\n }\n}\n\nexport default TrustlyElement;\n"],"names":["TrustlyElement","RedirectElement","displayName","this","props","name","constructor","render","h","CoreProvider","i18n","loadingContext","resources","div","className","p","get","ul","li","showPayButton","RedirectButton","onSubmit","submit","payButton","ref","componentRef","type","TxVariants","trustly"],"mappings":"yRAOA,MAAMA,UAAuBC,EAGzB,eAAIC,GACA,OAAOC,KAAKC,MAAMC,MAAQF,KAAKG,YAAmB,IACtD,CAEAC,MAAAA,GACI,OACIC,EAACC,EAAAA,CAAaC,KAAMP,KAAKC,MAAMM,KAAMC,eAAgBR,KAAKC,MAAMO,eAAgBC,UAAWT,KAAKS,WAC5FJ,EAACK,MAAAA,CAAIC,UAAU,0BACXN,EAACO,IAAAA,CAAED,UAAU,sCAAsCX,KAAKC,MAAMM,KAAKM,IAAI,uBACvER,EAACS,KAAAA,CAAGH,UAAU,4CACVN,EAACU,KAAAA,KAAIf,KAAKC,MAAMM,KAAKM,IAAI,yBACzBR,EAACU,KAAI,KAAAf,KAAKC,MAAMM,KAAKM,IAAI,2BAIhCb,KAAKC,MAAMe,eACRX,EAACY,EAAAA,IACOjB,KAAKC,MACTe,cAAehB,KAAKC,MAAMe,cAC1Bd,KAAMF,KAAKD,YACXmB,SAAUlB,KAAKmB,OACfC,UAAWpB,KAAKoB,UAChBC,IAAKA,IACDrB,KAAKsB,aAAeD,CAAAA,IAM5C,cAhCExB,IACY0B,SAAOC,EAAWC"}
1
+ {"version":3,"file":"Trustly.js","sources":["../../../../src/components/Trustly/Trustly.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport RedirectElement from '../Redirect';\nimport RedirectButton from '../internal/RedirectButton';\nimport { TxVariants } from '../tx-variants';\nimport './Trustly.scss';\n\nclass TrustlyElement extends RedirectElement {\n public static type = TxVariants.trustly;\n\n get displayName() {\n return this.props.name || this.constructor['type'];\n }\n\n render() {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <div className=\"adyen-checkout-trustly\">\n <p className=\"adyen-checkout-trustly__descriptor\">{this.props.i18n.get('trustly.descriptor')}</p>\n <ul className=\"adyen-checkout-trustly__description-list\">\n <li>{this.props.i18n.get('trustly.description1')}</li>\n <li>{this.props.i18n.get('trustly.description2')}</li>\n </ul>\n </div>\n\n {this.props.showPayButton && (\n <RedirectButton\n {...this.props}\n showPayButton={this.props.showPayButton}\n name={this.displayName}\n onSubmit={this.submit}\n payButton={this.payButton}\n ref={ref => {\n this.componentRef = ref;\n }}\n />\n )}\n </CoreProvider>\n );\n }\n}\n\nexport default TrustlyElement;\n"],"names":["TrustlyElement","RedirectElement","displayName","this","props","name","constructor","render","h","CoreProvider","i18n","loadingContext","resources","div","className","p","get","ul","li","showPayButton","RedirectButton","onSubmit","submit","payButton","ref","componentRef","type","TxVariants","trustly"],"mappings":"yRAOA,MAAMA,UAAuBC,EAGzB,eAAIC,GACA,OAAOC,KAAKC,MAAMC,MAAQF,KAAKG,YAAY,IAC/C,CAEAC,MAAAA,GACI,OACIC,EAACC,EAAAA,CAAaC,KAAMP,KAAKC,MAAMM,KAAMC,eAAgBR,KAAKC,MAAMO,eAAgBC,UAAWT,KAAKS,WAC5FJ,EAACK,MAAAA,CAAIC,UAAU,0BACXN,EAACO,IAAAA,CAAED,UAAU,sCAAsCX,KAAKC,MAAMM,KAAKM,IAAI,uBACvER,EAACS,KAAAA,CAAGH,UAAU,4CACVN,EAACU,KAAAA,KAAIf,KAAKC,MAAMM,KAAKM,IAAI,yBACzBR,EAACU,KAAAA,KAAIf,KAAKC,MAAMM,KAAKM,IAAI,2BAIhCb,KAAKC,MAAMe,eACRX,EAACY,EAAAA,IACOjB,KAAKC,MACTe,cAAehB,KAAKC,MAAMe,cAC1Bd,KAAMF,KAAKD,YACXmB,SAAUlB,KAAKmB,OACfC,UAAWpB,KAAKoB,UAChBC,IAAKA,IACDrB,KAAKsB,aAAeD,KAM5C,cAhCExB,IACY0B,SAAOC,EAAWC"}
@@ -1,2 +1,2 @@
1
- import t from"../Redirect/Redirect.js";import e from"../internal/PayButton/PayButton.js";import{createElement as n}from"../../external/preact/dist/preact.js";import{TxVariants as r}from"../tx-variants.js";import{payAmountLabel as o}from"../internal/PayButton/utils.js";function a(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}class i extends t{get displayName(){const{i18n:t,name:e,isStoredPaymentMethod:n}=this.props;return n?`${e} ${t.get("twint.saved")}`:e||this.constructor.type}payButtonLabel(){const{i18n:t,amount:e,isStoredPaymentMethod:n,name:r}=this.props;return n?o(t,e):`${t.get("continueTo")} ${r}`}constructor(...t){super(...t),a(this,"payButton",(t=>n(e,{...t,label:this.payButtonLabel(),onClick:this.submit})))}}a(i,"type",r.twint),a(i,"defaultProps",{type:i.type,name:"Twint"});export{i as default};
1
+ import t from"../Redirect/Redirect.js";import e from"../internal/PayButton/PayButton.js";import{createElement as n}from"../../external/preact/dist/preact.js";import{TxVariants as r}from"../tx-variants.js";import{payAmountLabel as o}from"../internal/PayButton/utils.js";function a(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}class i extends t{get displayName(){const{i18n:t,name:e,isStoredPaymentMethod:n}=this.props;return n?`${e} ${t.get("twint.saved")}`:e||this.constructor.type}payButtonLabel(){const{i18n:t,amount:e,isStoredPaymentMethod:n,name:r}=this.props;return n?o(t,e):`${t.get("continueTo")} ${r}`}constructor(...t){super(...t),a(this,"payButton",t=>n(e,{...t,label:this.payButtonLabel(),onClick:this.submit}))}}a(i,"type",r.twint),a(i,"defaultProps",{type:i.type,name:"Twint"});export{i as default};
2
2
  //# sourceMappingURL=Twint.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Twint.js","sources":["../../../../src/components/Twint/Twint.tsx"],"sourcesContent":["import RedirectElement from '../Redirect';\nimport PayButton, { payAmountLabel } from '../internal/PayButton';\nimport { h } from 'preact';\nimport { TxVariants } from '../tx-variants';\n\nclass TwintElement extends RedirectElement {\n public static type = TxVariants.twint;\n\n public static defaultProps = {\n type: TwintElement.type,\n name: 'Twint'\n };\n /**\n * Get the element displayable name\n */\n get displayName(): string {\n const { i18n, name, isStoredPaymentMethod } = this.props;\n return isStoredPaymentMethod ? `${name} ${i18n.get('twint.saved')}` : name || this.constructor['type'];\n }\n\n public payButtonLabel() {\n const { i18n, amount, isStoredPaymentMethod, name } = this.props;\n if (isStoredPaymentMethod) return payAmountLabel(i18n, amount);\n return `${i18n.get('continueTo')} ${name}`;\n }\n\n /**\n * Overrides RedirectElement default payButton behaviour to use label\n * @param props - props\n */\n public payButton = props => {\n return <PayButton {...props} label={this.payButtonLabel()} onClick={this.submit} />;\n };\n}\n\nexport default TwintElement;\n"],"names":["TwintElement","RedirectElement","displayName","i18n","name","isStoredPaymentMethod","this","props","get","constructor","payButtonLabel","amount","payAmountLabel","super","args","_define_property","payButton","h","PayButton","label","onClick","submit","type","TxVariants","twint","defaultProps"],"mappings":"qYAKA,MAAMA,UAAqBC,EAUvB,eAAIC,GACA,MAAMC,KAAEA,EAAIC,KAAEA,EAAIC,sBAAEA,GAA0BC,KAAKC,MACnD,OAAOF,EAAwB,GAAGD,KAAQD,EAAKK,IAAI,iBAAmBJ,GAAQE,KAAKG,YAAmB,IAC1G,CAEOC,cAAAA,GACH,MAAMP,KAAEA,EAAIQ,OAAEA,EAAMN,sBAAEA,EAAqBD,KAAEA,GAASE,KAAKC,MAC3D,OAAIF,EAA8BO,EAAeT,EAAMQ,GAChD,GAAGR,EAAKK,IAAI,iBAAiBJ,GACxC,mBAnBJS,SAqBIC,GAIAC,EAAAT,KAAOU,aAAYT,GACRU,EAACC,EAAAA,IAAcX,EAAOY,MAAOb,KAAKI,iBAAkBU,QAASd,KAAKe,YAzB7EN,EADEf,EACYsB,OAAOC,EAAWC,OAEhCT,EAHEf,EAGYyB,eAAe,CACzBH,KAAMtB,EAAasB,KACnBlB,KAAM"}
1
+ {"version":3,"file":"Twint.js","sources":["../../../../src/components/Twint/Twint.tsx"],"sourcesContent":["import RedirectElement from '../Redirect';\nimport PayButton, { payAmountLabel } from '../internal/PayButton';\nimport { h } from 'preact';\nimport { TxVariants } from '../tx-variants';\n\nclass TwintElement extends RedirectElement {\n public static type = TxVariants.twint;\n\n public static defaultProps = {\n type: TwintElement.type,\n name: 'Twint'\n };\n /**\n * Get the element displayable name\n */\n get displayName(): string {\n const { i18n, name, isStoredPaymentMethod } = this.props;\n return isStoredPaymentMethod ? `${name} ${i18n.get('twint.saved')}` : name || this.constructor['type'];\n }\n\n public payButtonLabel() {\n const { i18n, amount, isStoredPaymentMethod, name } = this.props;\n if (isStoredPaymentMethod) return payAmountLabel(i18n, amount);\n return `${i18n.get('continueTo')} ${name}`;\n }\n\n /**\n * Overrides RedirectElement default payButton behaviour to use label\n * @param props - props\n */\n public payButton = props => {\n return <PayButton {...props} label={this.payButtonLabel()} onClick={this.submit} />;\n };\n}\n\nexport default TwintElement;\n"],"names":["TwintElement","RedirectElement","displayName","i18n","name","isStoredPaymentMethod","this","props","get","constructor","payButtonLabel","amount","payAmountLabel","super","args","_define_property","payButton","h","PayButton","label","onClick","submit","type","TxVariants","twint","defaultProps"],"mappings":"qYAKA,MAAMA,UAAqBC,EAUvB,eAAIC,GACA,MAAMC,KAAEA,EAAIC,KAAEA,EAAIC,sBAAEA,GAA0BC,KAAKC,MACnD,OAAOF,EAAwB,GAAGD,KAAQD,EAAKK,IAAI,iBAAmBJ,GAAQE,KAAKG,YAAY,IACnG,CAEOC,cAAAA,GACH,MAAMP,KAAEA,EAAIQ,OAAEA,EAAMN,sBAAEA,EAAqBD,KAAEA,GAASE,KAAKC,MAC3D,OAAIF,EAA8BO,EAAeT,EAAMQ,GAChD,GAAGR,EAAKK,IAAI,iBAAiBJ,GACxC,mBAnBJS,SAAAC,GAyBIC,EAAAT,KAAOU,YAAYT,GACRU,EAACC,EAAAA,IAAcX,EAAOY,MAAOb,KAAKI,iBAAkBU,QAASd,KAAKe,WAzB7EN,EADEf,EACYsB,OAAOC,EAAWC,OAEhCT,EAHEf,EAGYyB,eAAe,CACzBH,KAAMtB,EAAasB,KACnBlB,KAAM"}
@@ -1,2 +1,2 @@
1
- import{createElement as t}from"../../external/preact/dist/preact.js";import{UIElement as e}from"../internal/UIElement/UIElement.js";import o from"./components/UPIComponent/UPIComponent.js";import{CoreProvider as r}from"../../core/Context/CoreProvider.js";import n from"../internal/Await/Await.js";import i from"../internal/QRLoader/QRLoader.js";import s from"../../core/Errors/SRPanelProvider.js";import{TxVariants as p}from"../tx-variants.js";import a from"../../utils/isMobile.js";function d(t,e,o){return e in t?Object.defineProperty(t,e,{value:o,enumerable:!0,configurable:!0,writable:!0}):t[e]=o,t}class l extends e{formatProps(t){if(!a())return{...super.formatProps(t),defaultMode:t?.defaultMode??"qrCode",apps:[]};const e=t.apps?.length>0,o=e?"intent":"vpa",r=[o,"qrCode"],n={id:"vpa",name:t.i18n.get("upi.collect.dropdown.label"),type:p.upi_collect},i=e?[...t.apps.map((t=>({...t,type:p.upi_intent}))),n]:[];return{...super.formatProps(t),defaultMode:r.includes(t?.defaultMode)?t.defaultMode:o,apps:i}}get isValid(){return this.state.isValid}formatData(){const{virtualPaymentAddress:t,app:e}=this.state.data||{};return{paymentMethod:{...this.paymentType&&{type:this.paymentType},...this.paymentType===p.upi_collect&&t&&{virtualPaymentAddress:t},...this.paymentType===p.upi_intent&&e?.id&&{appId:e.id}}}}get paymentType(){return"qrCode"===this.selectedMode?p.upi_qr:"vpa"===this.selectedMode?p.upi_collect:this.state.data?.app?.type}renderContent(e,r,s){switch(e){case"qrCode":return t(i,{ref:t=>{this.componentRef=t},...this.props,qrCodeData:this.props.qrCodeData?encodeURIComponent(this.props.qrCodeData):null,type:p.upi_qr,brandLogo:this.props.brandLogo||this.icon,onComplete:this.onComplete,introduction:this.props.i18n.get("upi.qrCodeWaitingMessage"),countdownTime:5,onActionHandled:this.onActionHandled});case"await":return t(n,{ref:t=>{this.componentRef=t},url:r,type:s,showCountdownTimer:!0,shouldRedirectAutomatically:!0,countdownTime:5,clientKey:this.props.clientKey,paymentData:this.props.paymentData,onActionHandled:this.onActionHandled,onError:this.props.onError,messageText:this.props.i18n.get("upi.vpaWaitingMessage"),awaitText:this.props.i18n.get("await.waitForConfirmation"),onComplete:this.onComplete,brandLogo:this.icon});default:return t(o,{ref:t=>{this.componentRef=t},payButton:this.payButton,onChange:this.setState,onUpdateMode:this.onUpdateMode,apps:this.props.apps,defaultMode:this.props.defaultMode,showPayButton:this.props.showPayButton})}}render(){const{type:e,url:o,paymentMethodType:n}=this.props;return t(r,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},t(s,{srPanel:this.props.modules.srPanel},this.renderContent(e,o,n)))}constructor(t,e){super(t,e),d(this,"selectedMode",void 0),d(this,"onUpdateMode",(t=>{this.selectedMode=t})),this.selectedMode=this.props.defaultMode}}d(l,"type",p.upi),d(l,"txVariants",[p.upi,p.upi_qr,p.upi_collect,p.upi_intent]);export{l as default};
1
+ import{createElement as t}from"../../external/preact/dist/preact.js";import{UIElement as e}from"../internal/UIElement/UIElement.js";import o from"./components/UPIComponent/UPIComponent.js";import{CoreProvider as r}from"../../core/Context/CoreProvider.js";import n from"../internal/Await/Await.js";import i from"../internal/QRLoader/QRLoader.js";import s from"../../core/Errors/SRPanelProvider.js";import{TxVariants as p}from"../tx-variants.js";import a from"../../utils/isMobile.js";function d(t,e,o){return e in t?Object.defineProperty(t,e,{value:o,enumerable:!0,configurable:!0,writable:!0}):t[e]=o,t}class l extends e{formatProps(t){if(!a())return{...super.formatProps(t),defaultMode:t?.defaultMode??"qrCode",apps:[]};const e=t.apps?.length>0,o=e?"intent":"vpa",r=[o,"qrCode"],n={id:"vpa",name:t.i18n.get("upi.collect.dropdown.label"),type:p.upi_collect},i=e?[...t.apps.map(t=>({...t,type:p.upi_intent})),n]:[];return{...super.formatProps(t),defaultMode:r.includes(t?.defaultMode)?t.defaultMode:o,apps:i}}get isValid(){return this.state.isValid}formatData(){const{virtualPaymentAddress:t,app:e}=this.state.data||{};return{paymentMethod:{...this.paymentType&&{type:this.paymentType},...this.paymentType===p.upi_collect&&t&&{virtualPaymentAddress:t},...this.paymentType===p.upi_intent&&e?.id&&{appId:e.id}}}}get paymentType(){return"qrCode"===this.selectedMode?p.upi_qr:"vpa"===this.selectedMode?p.upi_collect:this.state.data?.app?.type}renderContent(e,r,s){switch(e){case"qrCode":return t(i,{ref:t=>{this.componentRef=t},...this.props,qrCodeData:this.props.qrCodeData?encodeURIComponent(this.props.qrCodeData):null,type:p.upi_qr,brandLogo:this.props.brandLogo||this.icon,onComplete:this.onComplete,introduction:this.props.i18n.get("upi.qrCodeWaitingMessage"),countdownTime:5,onActionHandled:this.onActionHandled});case"await":return t(n,{ref:t=>{this.componentRef=t},url:r,type:s,showCountdownTimer:!0,shouldRedirectAutomatically:!0,countdownTime:5,clientKey:this.props.clientKey,paymentData:this.props.paymentData,onActionHandled:this.onActionHandled,onError:this.props.onError,messageText:this.props.i18n.get("upi.vpaWaitingMessage"),awaitText:this.props.i18n.get("await.waitForConfirmation"),onComplete:this.onComplete,brandLogo:this.icon});default:return t(o,{ref:t=>{this.componentRef=t},payButton:this.payButton,onChange:this.setState,onUpdateMode:this.onUpdateMode,apps:this.props.apps,defaultMode:this.props.defaultMode,showPayButton:this.props.showPayButton})}}render(){const{type:e,url:o,paymentMethodType:n}=this.props;return t(r,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},t(s,{srPanel:this.props.modules.srPanel},this.renderContent(e,o,n)))}constructor(t,e){super(t,e),d(this,"selectedMode",void 0),d(this,"onUpdateMode",t=>{this.selectedMode=t}),this.selectedMode=this.props.defaultMode}}d(l,"type",p.upi),d(l,"txVariants",[p.upi,p.upi_qr,p.upi_collect,p.upi_intent]);export{l as default};
2
2
  //# sourceMappingURL=UPI.js.map