@adyen/adyen-web 6.0.0-beta.0 → 6.0.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 (691) hide show
  1. package/README.md +123 -182
  2. package/dist/cjs/adyen.css +15 -11
  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 +834 -847
  7. package/dist/es/adyen.css +15 -11
  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/Ach/Ach.js +1 -1
  12. package/dist/es/components/Ach/Ach.js.map +1 -1
  13. package/dist/es/components/Ach/components/AchInput/AchInput.js +1 -1
  14. package/dist/es/components/Ach/components/AchInput/AchInput.js.map +1 -1
  15. package/dist/es/components/Ach/components/AchInput/components/AchSFInput.js +1 -1
  16. package/dist/es/components/Ach/components/AchInput/components/AchSFInput.js.map +1 -1
  17. package/dist/es/components/AmazonPay/components/AmazonPayButton.js.map +1 -1
  18. package/dist/es/components/AmazonPay/components/AmazonPayComponent.js.map +1 -1
  19. package/dist/es/components/AmazonPay/components/SignOutButton.js.map +1 -1
  20. package/dist/es/components/ApplePay/ApplePayService.js.map +1 -1
  21. package/dist/es/components/ApplePay/components/ApplePayButton.js.map +1 -1
  22. package/dist/es/components/Card/Card.js +1 -1
  23. package/dist/es/components/Card/Card.js.map +1 -1
  24. package/dist/es/components/Card/components/CardInput/CardInput.js +1 -1
  25. package/dist/es/components/Card/components/CardInput/CardInput.js.map +1 -1
  26. package/dist/es/components/Card/components/CardInput/components/CVC.js +1 -1
  27. package/dist/es/components/Card/components/CardInput/components/CVC.js.map +1 -1
  28. package/dist/es/components/Card/components/CardInput/components/CVCHint.js.map +1 -1
  29. package/dist/es/components/Card/components/CardInput/components/CardNumber.js +1 -1
  30. package/dist/es/components/Card/components/CardInput/components/CardNumber.js.map +1 -1
  31. package/dist/es/components/Card/components/CardInput/components/DualBrandingIcon/DualBrandingIcon.js.map +1 -1
  32. package/dist/es/components/Card/components/CardInput/components/ExpirationDate.js +1 -1
  33. package/dist/es/components/Card/components/CardInput/components/ExpirationDate.js.map +1 -1
  34. package/dist/es/components/Card/components/CardInput/components/{IframeLabelAlternative.js → FieldLabelAlternative.js} +1 -1
  35. package/dist/es/components/Card/components/CardInput/components/FieldLabelAlternative.js.map +1 -0
  36. package/dist/es/components/Card/components/CardInput/components/Installments/Installments.js +1 -1
  37. package/dist/es/components/Card/components/CardInput/components/Installments/Installments.js.map +1 -1
  38. package/dist/es/components/Card/components/CardInput/components/KCPAuthentication.js +1 -1
  39. package/dist/es/components/Card/components/CardInput/components/KCPAuthentication.js.map +1 -1
  40. package/dist/es/components/Card/components/CardInput/defaultProps.js +1 -1
  41. package/dist/es/components/Card/components/CardInput/defaultProps.js.map +1 -1
  42. package/dist/es/components/Card/components/CardInput/handlers.js.map +1 -1
  43. package/dist/es/components/Card/components/CardInput/types.js.map +1 -1
  44. package/dist/es/components/Card/components/CardInput/utils.js +1 -1
  45. package/dist/es/components/Card/components/CardInput/utils.js.map +1 -1
  46. package/dist/es/components/CashAppPay/components/CashAppComponent.js.map +1 -1
  47. package/dist/es/components/CustomCard/CustomCard.js +1 -1
  48. package/dist/es/components/CustomCard/CustomCard.js.map +1 -1
  49. package/dist/es/components/CustomCard/CustomCardInput/CustomCardInput.js +1 -1
  50. package/dist/es/components/CustomCard/CustomCardInput/CustomCardInput.js.map +1 -1
  51. package/dist/es/components/Donation/components/CampaignContent.js +1 -1
  52. package/dist/es/components/Donation/components/CampaignContent.js.map +1 -1
  53. package/dist/es/components/Donation/components/DonationComponent.js +1 -1
  54. package/dist/es/components/Donation/components/DonationComponent.js.map +1 -1
  55. package/dist/es/components/Donation/components/FixedAmounts.js +2 -0
  56. package/dist/es/components/Donation/components/FixedAmounts.js.map +1 -0
  57. package/dist/es/components/Donation/components/Roundup.js +2 -0
  58. package/dist/es/components/Donation/components/Roundup.js.map +1 -0
  59. package/dist/es/components/Donation/components/utils.js +2 -0
  60. package/dist/es/components/Donation/components/utils.js.map +1 -0
  61. package/dist/es/components/Dropin/Dropin.js +1 -1
  62. package/dist/es/components/Dropin/Dropin.js.map +1 -1
  63. package/dist/es/components/Dropin/components/DropinComponent.js +1 -1
  64. package/dist/es/components/Dropin/components/DropinComponent.js.map +1 -1
  65. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodItem/PaymentMethodItem.js +1 -1
  66. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodItem/PaymentMethodItem.js.map +1 -1
  67. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodList.js +1 -1
  68. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodList.js.map +1 -1
  69. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodsContainer.js +1 -1
  70. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodsContainer.js.map +1 -1
  71. package/dist/es/components/Dropin/elements/createElements.js +1 -1
  72. package/dist/es/components/Dropin/elements/createElements.js.map +1 -1
  73. package/dist/es/components/Dropin/elements/filters.js +1 -1
  74. package/dist/es/components/Dropin/elements/filters.js.map +1 -1
  75. package/dist/es/components/Giftcard/Giftcard.js +1 -1
  76. package/dist/es/components/Giftcard/Giftcard.js.map +1 -1
  77. package/dist/es/components/Giftcard/components/GiftcardComponent.js +1 -1
  78. package/dist/es/components/Giftcard/components/GiftcardComponent.js.map +1 -1
  79. package/dist/es/components/Giftcard/components/GiftcardNumberField.js +1 -1
  80. package/dist/es/components/Giftcard/components/GiftcardNumberField.js.map +1 -1
  81. package/dist/es/components/Giftcard/components/GiftcardPinField.js +1 -1
  82. package/dist/es/components/Giftcard/components/GiftcardPinField.js.map +1 -1
  83. package/dist/es/components/GooglePay/GooglePay.js +1 -1
  84. package/dist/es/components/GooglePay/GooglePay.js.map +1 -1
  85. package/dist/es/components/GooglePay/GooglePayService.js.map +1 -1
  86. package/dist/es/components/GooglePay/components/GooglePayButton.js +1 -1
  87. package/dist/es/components/GooglePay/components/GooglePayButton.js.map +1 -1
  88. package/dist/es/components/GooglePay/requests.js.map +1 -1
  89. package/dist/es/components/Klarna/KlarnaPayments.js +1 -1
  90. package/dist/es/components/Klarna/KlarnaPayments.js.map +1 -1
  91. package/dist/es/components/Klarna/components/KlarnaWidget/KlarnaWidget.js +1 -1
  92. package/dist/es/components/Klarna/components/KlarnaWidget/KlarnaWidget.js.map +1 -1
  93. package/dist/es/components/MealVoucherFR/components/MealVoucherExpiryField.js +1 -1
  94. package/dist/es/components/MealVoucherFR/components/MealVoucherExpiryField.js.map +1 -1
  95. package/dist/es/components/Oxxo/Oxxo.js.map +1 -1
  96. package/dist/es/components/PayPal/Paypal.js +1 -1
  97. package/dist/es/components/PayPal/Paypal.js.map +1 -1
  98. package/dist/es/components/Redirect/components/RedirectShopper/RedirectShopper.js +1 -1
  99. package/dist/es/components/Redirect/components/RedirectShopper/RedirectShopper.js.map +1 -1
  100. package/dist/es/components/ThreeDS2/ThreeDS2Challenge.js +1 -1
  101. package/dist/es/components/ThreeDS2/ThreeDS2Challenge.js.map +1 -1
  102. package/dist/es/components/ThreeDS2/ThreeDS2DeviceFingerprint.js +1 -1
  103. package/dist/es/components/ThreeDS2/ThreeDS2DeviceFingerprint.js.map +1 -1
  104. package/dist/es/components/ThreeDS2/callSubmit3DS2Fingerprint.js +1 -1
  105. package/dist/es/components/ThreeDS2/callSubmit3DS2Fingerprint.js.map +1 -1
  106. package/dist/es/components/ThreeDS2/components/Challenge/DoChallenge3DS2.js.map +1 -1
  107. package/dist/es/components/ThreeDS2/components/DeviceFingerprint/DoFingerprint3DS2.js.map +1 -1
  108. package/dist/es/components/ThreeDS2/components/utils.js +1 -1
  109. package/dist/es/components/ThreeDS2/components/utils.js.map +1 -1
  110. package/dist/es/components/UPI/UPI.js +1 -1
  111. package/dist/es/components/UPI/UPI.js.map +1 -1
  112. package/dist/es/components/UPI/components/UPIComponent/UPIComponent.js +1 -1
  113. package/dist/es/components/UPI/components/UPIComponent/UPIComponent.js.map +1 -1
  114. package/dist/es/components/UPI/components/UPIComponent/constants.js +2 -0
  115. package/dist/es/components/UPI/components/UPIComponent/constants.js.map +1 -0
  116. package/dist/es/components/UPI/components/UPIComponent/useUpiSegmentedControlOptions.js +2 -0
  117. package/dist/es/components/UPI/components/UPIComponent/useUpiSegmentedControlOptions.js.map +1 -0
  118. package/dist/es/components/UPI/components/UPIIntentAppList/UPIIntentAppItem/UPIIntentAppItem.js +2 -0
  119. package/dist/es/components/UPI/components/UPIIntentAppList/UPIIntentAppItem/UPIIntentAppItem.js.map +1 -0
  120. package/dist/es/components/UPI/components/UPIIntentAppList/UPIIntentAppList.js +2 -0
  121. package/dist/es/components/UPI/components/UPIIntentAppList/UPIIntentAppList.js.map +1 -0
  122. package/dist/es/components/UPI/components/VpaInput/VpaInput.js +1 -1
  123. package/dist/es/components/UPI/components/VpaInput/VpaInput.js.map +1 -1
  124. package/dist/es/components/components-name-map.js +1 -1
  125. package/dist/es/components/components-name-map.js.map +1 -1
  126. package/dist/es/components/internal/Address/components/AddressSearch.js +1 -1
  127. package/dist/es/components/internal/Address/components/AddressSearch.js.map +1 -1
  128. package/dist/es/components/internal/Address/components/ReadOnlyAddress.js +1 -1
  129. package/dist/es/components/internal/Address/components/ReadOnlyAddress.js.map +1 -1
  130. package/dist/es/components/internal/Await/Await.js +1 -1
  131. package/dist/es/components/internal/Await/Await.js.map +1 -1
  132. package/dist/es/components/internal/BaseElement/BaseElement.js +1 -1
  133. package/dist/es/components/internal/BaseElement/BaseElement.js.map +1 -1
  134. package/dist/es/components/internal/ClickToPay/ClickToPayComponent.js.map +1 -1
  135. package/dist/es/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPOneTimePasswordInput.js.map +1 -1
  136. package/dist/es/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPResendOtpLink.js.map +1 -1
  137. package/dist/es/components/internal/ClickToPay/components/CtPSection/CtPLogoutLink.js.map +1 -1
  138. package/dist/es/components/internal/ClickToPay/errors/TimeoutError.js +1 -1
  139. package/dist/es/components/internal/ClickToPay/errors/TimeoutError.js.map +1 -1
  140. package/dist/es/components/internal/ClickToPay/services/ClickToPayService.js.map +1 -1
  141. package/dist/es/components/internal/ClickToPay/services/sdks/SrcSdkLoader.js.map +1 -1
  142. package/dist/es/components/internal/Countdown/index.js +1 -1
  143. package/dist/es/components/internal/Countdown/index.js.map +1 -1
  144. package/dist/es/components/internal/DisclaimerMessage/DisclaimerMessage.js +1 -1
  145. package/dist/es/components/internal/DisclaimerMessage/DisclaimerMessage.js.map +1 -1
  146. package/dist/es/components/internal/ExpandButton/ExpandButton.js +2 -0
  147. package/dist/es/components/internal/ExpandButton/ExpandButton.js.map +1 -0
  148. package/dist/es/components/internal/FormFields/ConsentCheckbox/ConsentCheckbox.js +1 -1
  149. package/dist/es/components/internal/FormFields/ConsentCheckbox/ConsentCheckbox.js.map +1 -1
  150. package/dist/es/components/internal/FormFields/Field/Field.js +1 -1
  151. package/dist/es/components/internal/FormFields/Field/Field.js.map +1 -1
  152. package/dist/es/components/internal/FormFields/InputBase.js.map +1 -1
  153. package/dist/es/components/internal/FormFields/RadioGroup/RadioGroup.js +1 -1
  154. package/dist/es/components/internal/FormFields/RadioGroup/RadioGroup.js.map +1 -1
  155. package/dist/es/components/internal/FormFields/Select/Select.js +1 -1
  156. package/dist/es/components/internal/FormFields/Select/Select.js.map +1 -1
  157. package/dist/es/components/internal/FormFields/Select/components/SelectButton.js +1 -1
  158. package/dist/es/components/internal/FormFields/Select/components/SelectButton.js.map +1 -1
  159. package/dist/es/components/internal/FormFields/Select/components/SelectList.js.map +1 -1
  160. package/dist/es/components/internal/FormFields/Select/components/SelectListItem.js.map +1 -1
  161. package/dist/es/components/internal/Modal/Modal.js.map +1 -1
  162. package/dist/es/components/internal/QRLoader/QRLoader.js +1 -1
  163. package/dist/es/components/internal/QRLoader/QRLoader.js.map +1 -1
  164. package/dist/es/components/internal/SecuredFields/SFP/SecuredFieldsProvider.js +1 -1
  165. package/dist/es/components/internal/SecuredFields/SFP/SecuredFieldsProvider.js.map +1 -1
  166. package/dist/es/components/internal/SecuredFields/SFP/SecuredFieldsProviderHandlers.js +1 -1
  167. package/dist/es/components/internal/SecuredFields/SFP/SecuredFieldsProviderHandlers.js.map +1 -1
  168. package/dist/es/components/internal/SecuredFields/SFP/defaultProps.js +1 -1
  169. package/dist/es/components/internal/SecuredFields/SFP/defaultProps.js.map +1 -1
  170. package/dist/es/components/internal/SecuredFields/binLookup/triggerBinLookUp.js.map +1 -1
  171. package/dist/es/components/internal/SecuredFields/lib/CSF/CSF.js +1 -1
  172. package/dist/es/components/internal/SecuredFields/lib/CSF/CSF.js.map +1 -1
  173. package/dist/es/components/internal/SecuredFields/lib/CSF/extensions/configureCallbacks.js +1 -1
  174. package/dist/es/components/internal/SecuredFields/lib/CSF/extensions/configureCallbacks.js.map +1 -1
  175. package/dist/es/components/internal/SecuredFields/lib/CSF/extensions/createSecuredFields.js +1 -1
  176. package/dist/es/components/internal/SecuredFields/lib/CSF/extensions/createSecuredFields.js.map +1 -1
  177. package/dist/es/components/internal/SecuredFields/lib/CSF/extensions/handleEncryption.js +1 -1
  178. package/dist/es/components/internal/SecuredFields/lib/CSF/extensions/handleEncryption.js.map +1 -1
  179. package/dist/es/components/internal/SecuredFields/lib/CSF/extensions/handleIOSTouchEvents.js +1 -1
  180. package/dist/es/components/internal/SecuredFields/lib/CSF/extensions/handleIOSTouchEvents.js.map +1 -1
  181. package/dist/es/components/internal/SecuredFields/lib/CSF/extensions/handleValidation.js +1 -1
  182. package/dist/es/components/internal/SecuredFields/lib/CSF/extensions/handleValidation.js.map +1 -1
  183. package/dist/es/components/internal/SecuredFields/lib/CSF/initCSF.js +1 -1
  184. package/dist/es/components/internal/SecuredFields/lib/CSF/initCSF.js.map +1 -1
  185. package/dist/es/components/internal/SecuredFields/lib/CSF/partials/processBrand.js +1 -1
  186. package/dist/es/components/internal/SecuredFields/lib/CSF/partials/processBrand.js.map +1 -1
  187. package/dist/es/components/internal/SecuredFields/lib/CSF/utils/cardType.js.map +1 -1
  188. package/dist/es/components/internal/SecuredFields/lib/CSF/utils/getCardGroupTypes.js +1 -1
  189. package/dist/es/components/internal/SecuredFields/lib/CSF/utils/getCardGroupTypes.js.map +1 -1
  190. package/dist/es/components/internal/SecuredFields/lib/CSF/utils/iframes/postMessageValidation.js +1 -1
  191. package/dist/es/components/internal/SecuredFields/lib/CSF/utils/iframes/postMessageValidation.js.map +1 -1
  192. package/dist/es/components/internal/SecuredFields/lib/constants.js +1 -1
  193. package/dist/es/components/internal/SecuredFields/lib/constants.js.map +1 -1
  194. package/dist/es/components/internal/SecuredFields/lib/securedField/AbstractSecuredField.js +1 -1
  195. package/dist/es/components/internal/SecuredFields/lib/securedField/AbstractSecuredField.js.map +1 -1
  196. package/dist/es/components/internal/SecuredFields/lib/securedField/SecuredField.js +1 -1
  197. package/dist/es/components/internal/SecuredFields/lib/securedField/SecuredField.js.map +1 -1
  198. package/dist/es/components/internal/SecuredFields/lib/utilities/commonUtils.js +1 -1
  199. package/dist/es/components/internal/SecuredFields/lib/utilities/commonUtils.js.map +1 -1
  200. package/dist/es/components/internal/SecuredFields/lib/utilities/dom.js +1 -1
  201. package/dist/es/components/internal/SecuredFields/lib/utilities/dom.js.map +1 -1
  202. package/dist/es/components/internal/SecuredFields/lib/utilities/logger.js.map +1 -1
  203. package/dist/es/components/internal/SecuredFields/utils.js +1 -1
  204. package/dist/es/components/internal/SecuredFields/utils.js.map +1 -1
  205. package/dist/es/components/internal/SocialSecurityNumberBrazil/SocialSecurityNumberBrazil.js +1 -1
  206. package/dist/es/components/internal/SocialSecurityNumberBrazil/SocialSecurityNumberBrazil.js.map +1 -1
  207. package/dist/es/components/internal/UIElement/UIElement.js +1 -1
  208. package/dist/es/components/internal/UIElement/UIElement.js.map +1 -1
  209. package/dist/es/components/tx-variants.js +1 -1
  210. package/dist/es/components/tx-variants.js.map +1 -1
  211. package/dist/es/core/Analytics/Analytics.js +1 -1
  212. package/dist/es/core/Analytics/Analytics.js.map +1 -1
  213. package/dist/es/core/Analytics/analyticsPreProcessor.js +1 -1
  214. package/dist/es/core/Analytics/analyticsPreProcessor.js.map +1 -1
  215. package/dist/es/core/Analytics/utils.js +1 -1
  216. package/dist/es/core/Analytics/utils.js.map +1 -1
  217. package/dist/es/core/Environment/Environment.js +1 -1
  218. package/dist/es/core/Environment/Environment.js.map +1 -1
  219. package/dist/es/core/Environment/constants.js +1 -1
  220. package/dist/es/core/Environment/constants.js.map +1 -1
  221. package/dist/es/core/RiskModule/RiskModule.js +1 -1
  222. package/dist/es/core/RiskModule/RiskModule.js.map +1 -1
  223. package/dist/es/core/RiskModule/components/DeviceFingerprint/GetDeviceFingerprint.js.map +1 -1
  224. package/dist/es/core/Services/analytics/collect-id.js +1 -1
  225. package/dist/es/core/Services/analytics/collect-id.js.map +1 -1
  226. package/dist/es/core/Services/get-translations.js +1 -1
  227. package/dist/es/core/Services/get-translations.js.map +1 -1
  228. package/dist/es/core/Services/http.js.map +1 -1
  229. package/dist/es/core/config.js +1 -1
  230. package/dist/es/core/config.js.map +1 -1
  231. package/dist/es/core/core.js +1 -1
  232. package/dist/es/core/core.js.map +1 -1
  233. package/dist/es/core/utils.js +1 -1
  234. package/dist/es/core/utils.js.map +1 -1
  235. package/dist/es/external/preact/dist/preact.js +1 -1
  236. package/dist/es/external/preact/dist/preact.js.map +1 -1
  237. package/dist/es/external/preact/hooks/dist/hooks.js +1 -1
  238. package/dist/es/external/preact/hooks/dist/hooks.js.map +1 -1
  239. package/dist/es/index.d.ts +834 -847
  240. package/dist/es/language/constants.js +1 -1
  241. package/dist/es/language/constants.js.map +1 -1
  242. package/dist/es/utils/amount-util.js.map +1 -1
  243. package/dist/es/utils/browserInfo.js +1 -1
  244. package/dist/es/utils/browserInfo.js.map +1 -1
  245. package/dist/es/utils/commonUtils.js +2 -0
  246. package/dist/es/utils/commonUtils.js.map +1 -0
  247. package/dist/es/utils/listenerUtils.js +2 -0
  248. package/dist/es/utils/listenerUtils.js.map +1 -0
  249. package/dist/es/utils/regex.js.map +1 -1
  250. package/dist/es-legacy/adyen.css +15 -11
  251. package/dist/es-legacy/adyen.css.map +1 -1
  252. package/dist/es-legacy/components/ANCV/ANCV.js +1 -1
  253. package/dist/es-legacy/components/ANCV/ANCV.js.map +1 -1
  254. package/dist/es-legacy/components/Ach/Ach.js +1 -1
  255. package/dist/es-legacy/components/Ach/Ach.js.map +1 -1
  256. package/dist/es-legacy/components/Ach/components/AchInput/AchInput.js +1 -1
  257. package/dist/es-legacy/components/Ach/components/AchInput/AchInput.js.map +1 -1
  258. package/dist/es-legacy/components/Ach/components/AchInput/components/AchSFInput.js +1 -1
  259. package/dist/es-legacy/components/Ach/components/AchInput/components/AchSFInput.js.map +1 -1
  260. package/dist/es-legacy/components/Address/Address.js +1 -1
  261. package/dist/es-legacy/components/Address/Address.js.map +1 -1
  262. package/dist/es-legacy/components/Affirm/Affirm.js +1 -1
  263. package/dist/es-legacy/components/Affirm/Affirm.js.map +1 -1
  264. package/dist/es-legacy/components/AfterPay/AfterPay.js +1 -1
  265. package/dist/es-legacy/components/AfterPay/AfterPay.js.map +1 -1
  266. package/dist/es-legacy/components/AfterPay/AfterPayB2B.js +1 -1
  267. package/dist/es-legacy/components/AfterPay/AfterPayB2B.js.map +1 -1
  268. package/dist/es-legacy/components/AmazonPay/AmazonPay.js +1 -1
  269. package/dist/es-legacy/components/AmazonPay/AmazonPay.js.map +1 -1
  270. package/dist/es-legacy/components/AmazonPay/components/AmazonPayButton.js +1 -1
  271. package/dist/es-legacy/components/AmazonPay/components/AmazonPayButton.js.map +1 -1
  272. package/dist/es-legacy/components/AmazonPay/components/AmazonPayComponent.js +1 -1
  273. package/dist/es-legacy/components/AmazonPay/components/AmazonPayComponent.js.map +1 -1
  274. package/dist/es-legacy/components/AmazonPay/components/SignOutButton.js.map +1 -1
  275. package/dist/es-legacy/components/AmazonPay/utils.js +1 -1
  276. package/dist/es-legacy/components/AmazonPay/utils.js.map +1 -1
  277. package/dist/es-legacy/components/ApplePay/ApplePay.js +1 -1
  278. package/dist/es-legacy/components/ApplePay/ApplePay.js.map +1 -1
  279. package/dist/es-legacy/components/ApplePay/ApplePayService.js.map +1 -1
  280. package/dist/es-legacy/components/ApplePay/components/ApplePayButton.js.map +1 -1
  281. package/dist/es-legacy/components/Atome/Atome.js +1 -1
  282. package/dist/es-legacy/components/Atome/Atome.js.map +1 -1
  283. package/dist/es-legacy/components/Atome/config.js +1 -1
  284. package/dist/es-legacy/components/Atome/config.js.map +1 -1
  285. package/dist/es-legacy/components/BacsDD/BacsDD.js +1 -1
  286. package/dist/es-legacy/components/BacsDD/BacsDD.js.map +1 -1
  287. package/dist/es-legacy/components/BankTransfer/BankTransfer.js +1 -1
  288. package/dist/es-legacy/components/BankTransfer/BankTransfer.js.map +1 -1
  289. package/dist/es-legacy/components/BillDesk/BillDeskOnline.js +1 -1
  290. package/dist/es-legacy/components/BillDesk/BillDeskOnline.js.map +1 -1
  291. package/dist/es-legacy/components/BillDesk/BillDeskWallet.js +1 -1
  292. package/dist/es-legacy/components/BillDesk/BillDeskWallet.js.map +1 -1
  293. package/dist/es-legacy/components/Blik/Blik.js +1 -1
  294. package/dist/es-legacy/components/Blik/Blik.js.map +1 -1
  295. package/dist/es-legacy/components/Boleto/Boleto.js +1 -1
  296. package/dist/es-legacy/components/Boleto/Boleto.js.map +1 -1
  297. package/dist/es-legacy/components/Boleto/components/BoletoInput/BoletoInput.js +1 -1
  298. package/dist/es-legacy/components/Boleto/components/BoletoInput/BoletoInput.js.map +1 -1
  299. package/dist/es-legacy/components/Card/Bancontact.js +1 -1
  300. package/dist/es-legacy/components/Card/Bancontact.js.map +1 -1
  301. package/dist/es-legacy/components/Card/Card.js +1 -1
  302. package/dist/es-legacy/components/Card/Card.js.map +1 -1
  303. package/dist/es-legacy/components/Card/components/CardInput/CardInput.js +1 -1
  304. package/dist/es-legacy/components/Card/components/CardInput/CardInput.js.map +1 -1
  305. package/dist/es-legacy/components/Card/components/CardInput/components/CVC.js +1 -1
  306. package/dist/es-legacy/components/Card/components/CardInput/components/CVC.js.map +1 -1
  307. package/dist/es-legacy/components/Card/components/CardInput/components/CVCHint.js.map +1 -1
  308. package/dist/es-legacy/components/Card/components/CardInput/components/CardNumber.js +1 -1
  309. package/dist/es-legacy/components/Card/components/CardInput/components/CardNumber.js.map +1 -1
  310. package/dist/es-legacy/components/Card/components/CardInput/components/DualBrandingIcon/DualBrandingIcon.js.map +1 -1
  311. package/dist/es-legacy/components/Card/components/CardInput/components/ExpirationDate.js +1 -1
  312. package/dist/es-legacy/components/Card/components/CardInput/components/ExpirationDate.js.map +1 -1
  313. package/dist/es-legacy/components/Card/components/CardInput/components/FieldLabelAlternative.js +2 -0
  314. package/dist/es-legacy/components/Card/components/CardInput/components/FieldLabelAlternative.js.map +1 -0
  315. package/dist/es-legacy/components/Card/components/CardInput/components/Installments/Installments.js +1 -1
  316. package/dist/es-legacy/components/Card/components/CardInput/components/Installments/Installments.js.map +1 -1
  317. package/dist/es-legacy/components/Card/components/CardInput/components/KCPAuthentication.js +1 -1
  318. package/dist/es-legacy/components/Card/components/CardInput/components/KCPAuthentication.js.map +1 -1
  319. package/dist/es-legacy/components/Card/components/CardInput/components/StoredCardFields.js +1 -1
  320. package/dist/es-legacy/components/Card/components/CardInput/components/StoredCardFields.js.map +1 -1
  321. package/dist/es-legacy/components/Card/components/CardInput/defaultProps.js +1 -1
  322. package/dist/es-legacy/components/Card/components/CardInput/defaultProps.js.map +1 -1
  323. package/dist/es-legacy/components/Card/components/CardInput/handlers.js.map +1 -1
  324. package/dist/es-legacy/components/Card/components/CardInput/types.js.map +1 -1
  325. package/dist/es-legacy/components/Card/components/CardInput/utils.js +1 -1
  326. package/dist/es-legacy/components/Card/components/CardInput/utils.js.map +1 -1
  327. package/dist/es-legacy/components/CashAppPay/CashAppPay.js +1 -1
  328. package/dist/es-legacy/components/CashAppPay/CashAppPay.js.map +1 -1
  329. package/dist/es-legacy/components/CashAppPay/components/CashAppComponent.js.map +1 -1
  330. package/dist/es-legacy/components/ClickToPay/ClickToPay.js +1 -1
  331. package/dist/es-legacy/components/ClickToPay/ClickToPay.js.map +1 -1
  332. package/dist/es-legacy/components/CustomCard/CustomCard.js +1 -1
  333. package/dist/es-legacy/components/CustomCard/CustomCard.js.map +1 -1
  334. package/dist/es-legacy/components/CustomCard/CustomCardInput/CustomCardInput.js +1 -1
  335. package/dist/es-legacy/components/CustomCard/CustomCardInput/CustomCardInput.js.map +1 -1
  336. package/dist/es-legacy/components/Doku/Doku.js +1 -1
  337. package/dist/es-legacy/components/Doku/Doku.js.map +1 -1
  338. package/dist/es-legacy/components/Donation/Donation.js +1 -1
  339. package/dist/es-legacy/components/Donation/Donation.js.map +1 -1
  340. package/dist/es-legacy/components/Donation/components/CampaignContent.js +1 -1
  341. package/dist/es-legacy/components/Donation/components/CampaignContent.js.map +1 -1
  342. package/dist/es-legacy/components/Donation/components/DonationComponent.js +1 -1
  343. package/dist/es-legacy/components/Donation/components/DonationComponent.js.map +1 -1
  344. package/dist/es-legacy/components/Donation/components/FixedAmounts.js +2 -0
  345. package/dist/es-legacy/components/Donation/components/FixedAmounts.js.map +1 -0
  346. package/dist/es-legacy/components/Donation/components/Roundup.js +2 -0
  347. package/dist/es-legacy/components/Donation/components/Roundup.js.map +1 -0
  348. package/dist/es-legacy/components/Donation/components/utils.js +2 -0
  349. package/dist/es-legacy/components/Donation/components/utils.js.map +1 -0
  350. package/dist/es-legacy/components/Dragonpay/Dragonpay.js +1 -1
  351. package/dist/es-legacy/components/Dragonpay/Dragonpay.js.map +1 -1
  352. package/dist/es-legacy/components/Dragonpay/components/DragonpayInput/DragonpayInput.js +1 -1
  353. package/dist/es-legacy/components/Dragonpay/components/DragonpayInput/DragonpayInput.js.map +1 -1
  354. package/dist/es-legacy/components/Dropin/Dropin.js +1 -1
  355. package/dist/es-legacy/components/Dropin/Dropin.js.map +1 -1
  356. package/dist/es-legacy/components/Dropin/components/DropinComponent.js +1 -1
  357. package/dist/es-legacy/components/Dropin/components/DropinComponent.js.map +1 -1
  358. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodItem/PaymentMethodItem.js +1 -1
  359. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodItem/PaymentMethodItem.js.map +1 -1
  360. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodList.js +1 -1
  361. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodList.js.map +1 -1
  362. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodsContainer.js +1 -1
  363. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodsContainer.js.map +1 -1
  364. package/dist/es-legacy/components/Dropin/elements/createElements.js +1 -1
  365. package/dist/es-legacy/components/Dropin/elements/createElements.js.map +1 -1
  366. package/dist/es-legacy/components/Dropin/elements/createInstantPaymentElements.js +1 -1
  367. package/dist/es-legacy/components/Dropin/elements/createInstantPaymentElements.js.map +1 -1
  368. package/dist/es-legacy/components/Dropin/elements/createStoredElements.js +1 -1
  369. package/dist/es-legacy/components/Dropin/elements/createStoredElements.js.map +1 -1
  370. package/dist/es-legacy/components/Dropin/elements/filters.js +1 -1
  371. package/dist/es-legacy/components/Dropin/elements/filters.js.map +1 -1
  372. package/dist/es-legacy/components/EPS/index.js +1 -1
  373. package/dist/es-legacy/components/EPS/index.js.map +1 -1
  374. package/dist/es-legacy/components/Econtext/Econtext.js +1 -1
  375. package/dist/es-legacy/components/Econtext/Econtext.js.map +1 -1
  376. package/dist/es-legacy/components/FacilyPay/FacilyPay10x.js +1 -1
  377. package/dist/es-legacy/components/FacilyPay/FacilyPay10x.js.map +1 -1
  378. package/dist/es-legacy/components/FacilyPay/FacilyPay12x.js +1 -1
  379. package/dist/es-legacy/components/FacilyPay/FacilyPay12x.js.map +1 -1
  380. package/dist/es-legacy/components/FacilyPay/FacilyPay3x.js +1 -1
  381. package/dist/es-legacy/components/FacilyPay/FacilyPay3x.js.map +1 -1
  382. package/dist/es-legacy/components/FacilyPay/FacilyPay4x.js +1 -1
  383. package/dist/es-legacy/components/FacilyPay/FacilyPay4x.js.map +1 -1
  384. package/dist/es-legacy/components/FacilyPay/FacilyPay6x.js +1 -1
  385. package/dist/es-legacy/components/FacilyPay/FacilyPay6x.js.map +1 -1
  386. package/dist/es-legacy/components/Giftcard/Giftcard.js +1 -1
  387. package/dist/es-legacy/components/Giftcard/Giftcard.js.map +1 -1
  388. package/dist/es-legacy/components/Giftcard/components/GiftcardComponent.js +1 -1
  389. package/dist/es-legacy/components/Giftcard/components/GiftcardComponent.js.map +1 -1
  390. package/dist/es-legacy/components/Giftcard/components/GiftcardFields.js +1 -1
  391. package/dist/es-legacy/components/Giftcard/components/GiftcardFields.js.map +1 -1
  392. package/dist/es-legacy/components/Giftcard/components/GiftcardNumberField.js +1 -1
  393. package/dist/es-legacy/components/Giftcard/components/GiftcardNumberField.js.map +1 -1
  394. package/dist/es-legacy/components/Giftcard/components/GiftcardPinField.js +1 -1
  395. package/dist/es-legacy/components/Giftcard/components/GiftcardPinField.js.map +1 -1
  396. package/dist/es-legacy/components/Giropay/Giropay.js +1 -1
  397. package/dist/es-legacy/components/Giropay/Giropay.js.map +1 -1
  398. package/dist/es-legacy/components/GooglePay/GooglePay.js +1 -1
  399. package/dist/es-legacy/components/GooglePay/GooglePay.js.map +1 -1
  400. package/dist/es-legacy/components/GooglePay/GooglePayService.js.map +1 -1
  401. package/dist/es-legacy/components/GooglePay/components/GooglePayButton.js +1 -1
  402. package/dist/es-legacy/components/GooglePay/components/GooglePayButton.js.map +1 -1
  403. package/dist/es-legacy/components/GooglePay/requests.js.map +1 -1
  404. package/dist/es-legacy/components/Klarna/KlarnaPayments.js +1 -1
  405. package/dist/es-legacy/components/Klarna/KlarnaPayments.js.map +1 -1
  406. package/dist/es-legacy/components/Klarna/components/KlarnaContainer/KlarnaContainer.js +1 -1
  407. package/dist/es-legacy/components/Klarna/components/KlarnaContainer/KlarnaContainer.js.map +1 -1
  408. package/dist/es-legacy/components/Klarna/components/KlarnaWidget/KlarnaWidget.js +1 -1
  409. package/dist/es-legacy/components/Klarna/components/KlarnaWidget/KlarnaWidget.js.map +1 -1
  410. package/dist/es-legacy/components/MBWay/MBWay.js +1 -1
  411. package/dist/es-legacy/components/MBWay/MBWay.js.map +1 -1
  412. package/dist/es-legacy/components/MBWay/components/MBWayInput/MBWayInput.js +1 -1
  413. package/dist/es-legacy/components/MBWay/components/MBWayInput/MBWayInput.js.map +1 -1
  414. package/dist/es-legacy/components/MealVoucherFR/MealVoucherFR.js +1 -1
  415. package/dist/es-legacy/components/MealVoucherFR/MealVoucherFR.js.map +1 -1
  416. package/dist/es-legacy/components/MealVoucherFR/components/MealVoucherExpiryField.js +1 -1
  417. package/dist/es-legacy/components/MealVoucherFR/components/MealVoucherExpiryField.js.map +1 -1
  418. package/dist/es-legacy/components/MealVoucherFR/components/MealVoucherFields.js +1 -1
  419. package/dist/es-legacy/components/MealVoucherFR/components/MealVoucherFields.js.map +1 -1
  420. package/dist/es-legacy/components/Multibanco/Multibanco.js +1 -1
  421. package/dist/es-legacy/components/Multibanco/Multibanco.js.map +1 -1
  422. package/dist/es-legacy/components/OnlineBankingCZ/index.js +1 -1
  423. package/dist/es-legacy/components/OnlineBankingCZ/index.js.map +1 -1
  424. package/dist/es-legacy/components/OnlineBankingIN/index.js +1 -1
  425. package/dist/es-legacy/components/OnlineBankingIN/index.js.map +1 -1
  426. package/dist/es-legacy/components/OnlineBankingPL/OnlineBankingPL.js +1 -1
  427. package/dist/es-legacy/components/OnlineBankingPL/OnlineBankingPL.js.map +1 -1
  428. package/dist/es-legacy/components/OnlineBankingSK/index.js +1 -1
  429. package/dist/es-legacy/components/OnlineBankingSK/index.js.map +1 -1
  430. package/dist/es-legacy/components/Oxxo/Oxxo.js +1 -1
  431. package/dist/es-legacy/components/Oxxo/Oxxo.js.map +1 -1
  432. package/dist/es-legacy/components/PayByBank/PayByBank.js +1 -1
  433. package/dist/es-legacy/components/PayByBank/PayByBank.js.map +1 -1
  434. package/dist/es-legacy/components/PayPal/Paypal.js +1 -1
  435. package/dist/es-legacy/components/PayPal/Paypal.js.map +1 -1
  436. package/dist/es-legacy/components/PayPal/components/PaypalButtons.js +1 -1
  437. package/dist/es-legacy/components/PayPal/components/PaypalButtons.js.map +1 -1
  438. package/dist/es-legacy/components/PayPal/components/PaypalComponent.js +1 -1
  439. package/dist/es-legacy/components/PayPal/components/PaypalComponent.js.map +1 -1
  440. package/dist/es-legacy/components/PayPal/utils/get-paypal-settings.js +1 -1
  441. package/dist/es-legacy/components/PayPal/utils/get-paypal-settings.js.map +1 -1
  442. package/dist/es-legacy/components/PayU/PayuCashcard.js +1 -1
  443. package/dist/es-legacy/components/PayU/PayuCashcard.js.map +1 -1
  444. package/dist/es-legacy/components/PayU/PayuNetBanking.js +1 -1
  445. package/dist/es-legacy/components/PayU/PayuNetBanking.js.map +1 -1
  446. package/dist/es-legacy/components/PersonalDetails/PersonalDetails.js +1 -1
  447. package/dist/es-legacy/components/PersonalDetails/PersonalDetails.js.map +1 -1
  448. package/dist/es-legacy/components/Pix/Pix.js +1 -1
  449. package/dist/es-legacy/components/Pix/Pix.js.map +1 -1
  450. package/dist/es-legacy/components/RatePay/RatePay.js +1 -1
  451. package/dist/es-legacy/components/RatePay/RatePay.js.map +1 -1
  452. package/dist/es-legacy/components/RatePay/RatePayDirectDebit.js +1 -1
  453. package/dist/es-legacy/components/RatePay/RatePayDirectDebit.js.map +1 -1
  454. package/dist/es-legacy/components/Redirect/Redirect.js +1 -1
  455. package/dist/es-legacy/components/Redirect/Redirect.js.map +1 -1
  456. package/dist/es-legacy/components/Redirect/components/RedirectShopper/RedirectShopper.js +1 -1
  457. package/dist/es-legacy/components/Redirect/components/RedirectShopper/RedirectShopper.js.map +1 -1
  458. package/dist/es-legacy/components/Riverty/Riverty.js +1 -1
  459. package/dist/es-legacy/components/Riverty/Riverty.js.map +1 -1
  460. package/dist/es-legacy/components/Sepa/Sepa.js +1 -1
  461. package/dist/es-legacy/components/Sepa/Sepa.js.map +1 -1
  462. package/dist/es-legacy/components/ThreeDS2/ThreeDS2Challenge.js +1 -1
  463. package/dist/es-legacy/components/ThreeDS2/ThreeDS2Challenge.js.map +1 -1
  464. package/dist/es-legacy/components/ThreeDS2/ThreeDS2DeviceFingerprint.js +1 -1
  465. package/dist/es-legacy/components/ThreeDS2/ThreeDS2DeviceFingerprint.js.map +1 -1
  466. package/dist/es-legacy/components/ThreeDS2/callSubmit3DS2Fingerprint.js +1 -1
  467. package/dist/es-legacy/components/ThreeDS2/callSubmit3DS2Fingerprint.js.map +1 -1
  468. package/dist/es-legacy/components/ThreeDS2/components/Challenge/DoChallenge3DS2.js.map +1 -1
  469. package/dist/es-legacy/components/ThreeDS2/components/Challenge/PrepareChallenge3DS2.js +1 -1
  470. package/dist/es-legacy/components/ThreeDS2/components/Challenge/PrepareChallenge3DS2.js.map +1 -1
  471. package/dist/es-legacy/components/ThreeDS2/components/DeviceFingerprint/DoFingerprint3DS2.js.map +1 -1
  472. package/dist/es-legacy/components/ThreeDS2/components/DeviceFingerprint/PrepareFingerprint3DS2.js +1 -1
  473. package/dist/es-legacy/components/ThreeDS2/components/DeviceFingerprint/PrepareFingerprint3DS2.js.map +1 -1
  474. package/dist/es-legacy/components/ThreeDS2/components/utils.js +1 -1
  475. package/dist/es-legacy/components/ThreeDS2/components/utils.js.map +1 -1
  476. package/dist/es-legacy/components/Trustly/Trustly.js +1 -1
  477. package/dist/es-legacy/components/Trustly/Trustly.js.map +1 -1
  478. package/dist/es-legacy/components/Twint/Twint.js +1 -1
  479. package/dist/es-legacy/components/Twint/Twint.js.map +1 -1
  480. package/dist/es-legacy/components/UPI/UPI.js +1 -1
  481. package/dist/es-legacy/components/UPI/UPI.js.map +1 -1
  482. package/dist/es-legacy/components/UPI/components/UPIComponent/UPIComponent.js +1 -1
  483. package/dist/es-legacy/components/UPI/components/UPIComponent/UPIComponent.js.map +1 -1
  484. package/dist/es-legacy/components/UPI/components/UPIComponent/constants.js +2 -0
  485. package/dist/es-legacy/components/UPI/components/UPIComponent/constants.js.map +1 -0
  486. package/dist/es-legacy/components/UPI/components/UPIComponent/useUpiSegmentedControlOptions.js +2 -0
  487. package/dist/es-legacy/components/UPI/components/UPIComponent/useUpiSegmentedControlOptions.js.map +1 -0
  488. package/dist/es-legacy/components/UPI/components/UPIIntentAppList/UPIIntentAppItem/UPIIntentAppItem.js +2 -0
  489. package/dist/es-legacy/components/UPI/components/UPIIntentAppList/UPIIntentAppItem/UPIIntentAppItem.js.map +1 -0
  490. package/dist/es-legacy/components/UPI/components/UPIIntentAppList/UPIIntentAppList.js +2 -0
  491. package/dist/es-legacy/components/UPI/components/UPIIntentAppList/UPIIntentAppList.js.map +1 -0
  492. package/dist/es-legacy/components/UPI/components/VpaInput/VpaInput.js +1 -1
  493. package/dist/es-legacy/components/UPI/components/VpaInput/VpaInput.js.map +1 -1
  494. package/dist/es-legacy/components/WalletIN/index.js +1 -1
  495. package/dist/es-legacy/components/WalletIN/index.js.map +1 -1
  496. package/dist/es-legacy/components/components-name-map.js +1 -1
  497. package/dist/es-legacy/components/components-name-map.js.map +1 -1
  498. package/dist/es-legacy/components/helpers/IssuerListContainer/IssuerListContainer.js +1 -1
  499. package/dist/es-legacy/components/helpers/IssuerListContainer/IssuerListContainer.js.map +1 -1
  500. package/dist/es-legacy/components/helpers/OpenInvoiceContainer/OpenInvoiceContainer.js +1 -1
  501. package/dist/es-legacy/components/helpers/OpenInvoiceContainer/OpenInvoiceContainer.js.map +1 -1
  502. package/dist/es-legacy/components/helpers/QRLoaderContainer/QRLoaderContainer.js +1 -1
  503. package/dist/es-legacy/components/helpers/QRLoaderContainer/QRLoaderContainer.js.map +1 -1
  504. package/dist/es-legacy/components/internal/Address/Address.js +1 -1
  505. package/dist/es-legacy/components/internal/Address/Address.js.map +1 -1
  506. package/dist/es-legacy/components/internal/Address/components/AddressSearch.js +1 -1
  507. package/dist/es-legacy/components/internal/Address/components/AddressSearch.js.map +1 -1
  508. package/dist/es-legacy/components/internal/Address/components/CountryField.js +1 -1
  509. package/dist/es-legacy/components/internal/Address/components/CountryField.js.map +1 -1
  510. package/dist/es-legacy/components/internal/Address/components/ReadOnlyAddress.js +1 -1
  511. package/dist/es-legacy/components/internal/Address/components/ReadOnlyAddress.js.map +1 -1
  512. package/dist/es-legacy/components/internal/Await/Await.js +1 -1
  513. package/dist/es-legacy/components/internal/Await/Await.js.map +1 -1
  514. package/dist/es-legacy/components/internal/BaseElement/BaseElement.js +1 -1
  515. package/dist/es-legacy/components/internal/BaseElement/BaseElement.js.map +1 -1
  516. package/dist/es-legacy/components/internal/ClickToPay/ClickToPayComponent.js.map +1 -1
  517. package/dist/es-legacy/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPOneTimePasswordInput.js.map +1 -1
  518. package/dist/es-legacy/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPResendOtpLink.js.map +1 -1
  519. package/dist/es-legacy/components/internal/ClickToPay/components/CtPSection/CtPLogoutLink.js.map +1 -1
  520. package/dist/es-legacy/components/internal/ClickToPay/errors/TimeoutError.js +1 -1
  521. package/dist/es-legacy/components/internal/ClickToPay/errors/TimeoutError.js.map +1 -1
  522. package/dist/es-legacy/components/internal/ClickToPay/services/ClickToPayService.js +1 -1
  523. package/dist/es-legacy/components/internal/ClickToPay/services/ClickToPayService.js.map +1 -1
  524. package/dist/es-legacy/components/internal/ClickToPay/services/sdks/MastercardSdk.js +1 -1
  525. package/dist/es-legacy/components/internal/ClickToPay/services/sdks/MastercardSdk.js.map +1 -1
  526. package/dist/es-legacy/components/internal/ClickToPay/services/sdks/SrcSdkLoader.js.map +1 -1
  527. package/dist/es-legacy/components/internal/ClickToPay/services/sdks/VisaSdk.js +1 -1
  528. package/dist/es-legacy/components/internal/ClickToPay/services/sdks/VisaSdk.js.map +1 -1
  529. package/dist/es-legacy/components/internal/CompanyDetails/CompanyDetails.js +1 -1
  530. package/dist/es-legacy/components/internal/CompanyDetails/CompanyDetails.js.map +1 -1
  531. package/dist/es-legacy/components/internal/Countdown/index.js +1 -1
  532. package/dist/es-legacy/components/internal/Countdown/index.js.map +1 -1
  533. package/dist/es-legacy/components/internal/DisclaimerMessage/DisclaimerMessage.js +1 -1
  534. package/dist/es-legacy/components/internal/DisclaimerMessage/DisclaimerMessage.js.map +1 -1
  535. package/dist/es-legacy/components/internal/ExpandButton/ExpandButton.js +2 -0
  536. package/dist/es-legacy/components/internal/ExpandButton/ExpandButton.js.map +1 -0
  537. package/dist/es-legacy/components/internal/FormFields/Checkbox/Checkbox.js +1 -1
  538. package/dist/es-legacy/components/internal/FormFields/Checkbox/Checkbox.js.map +1 -1
  539. package/dist/es-legacy/components/internal/FormFields/ConsentCheckbox/ConsentCheckbox.js +1 -1
  540. package/dist/es-legacy/components/internal/FormFields/ConsentCheckbox/ConsentCheckbox.js.map +1 -1
  541. package/dist/es-legacy/components/internal/FormFields/Field/Field.js +1 -1
  542. package/dist/es-legacy/components/internal/FormFields/Field/Field.js.map +1 -1
  543. package/dist/es-legacy/components/internal/FormFields/InputBase.js +1 -1
  544. package/dist/es-legacy/components/internal/FormFields/InputBase.js.map +1 -1
  545. package/dist/es-legacy/components/internal/FormFields/InputDate/InputDate.js +1 -1
  546. package/dist/es-legacy/components/internal/FormFields/InputDate/InputDate.js.map +1 -1
  547. package/dist/es-legacy/components/internal/FormFields/InputEmail.js +1 -1
  548. package/dist/es-legacy/components/internal/FormFields/InputEmail.js.map +1 -1
  549. package/dist/es-legacy/components/internal/FormFields/InputTelephone.js +1 -1
  550. package/dist/es-legacy/components/internal/FormFields/InputTelephone.js.map +1 -1
  551. package/dist/es-legacy/components/internal/FormFields/InputText.js +1 -1
  552. package/dist/es-legacy/components/internal/FormFields/InputText.js.map +1 -1
  553. package/dist/es-legacy/components/internal/FormFields/RadioGroup/RadioGroup.js +1 -1
  554. package/dist/es-legacy/components/internal/FormFields/RadioGroup/RadioGroup.js.map +1 -1
  555. package/dist/es-legacy/components/internal/FormFields/Select/Select.js +1 -1
  556. package/dist/es-legacy/components/internal/FormFields/Select/Select.js.map +1 -1
  557. package/dist/es-legacy/components/internal/FormFields/Select/components/SelectButton.js +1 -1
  558. package/dist/es-legacy/components/internal/FormFields/Select/components/SelectButton.js.map +1 -1
  559. package/dist/es-legacy/components/internal/FormFields/Select/components/SelectList.js.map +1 -1
  560. package/dist/es-legacy/components/internal/FormFields/Select/components/SelectListItem.js.map +1 -1
  561. package/dist/es-legacy/components/internal/IbanInput/IbanInput.js +1 -1
  562. package/dist/es-legacy/components/internal/IbanInput/IbanInput.js.map +1 -1
  563. package/dist/es-legacy/components/internal/Img/Img.js +1 -1
  564. package/dist/es-legacy/components/internal/Img/Img.js.map +1 -1
  565. package/dist/es-legacy/components/internal/IssuerList/IssuerButtonGroup/IssuerButtonGroup.js +1 -1
  566. package/dist/es-legacy/components/internal/IssuerList/IssuerButtonGroup/IssuerButtonGroup.js.map +1 -1
  567. package/dist/es-legacy/components/internal/Modal/Modal.js.map +1 -1
  568. package/dist/es-legacy/components/internal/OpenInvoice/OpenInvoice.js +1 -1
  569. package/dist/es-legacy/components/internal/OpenInvoice/OpenInvoice.js.map +1 -1
  570. package/dist/es-legacy/components/internal/PayButton/PayButton.js +1 -1
  571. package/dist/es-legacy/components/internal/PayButton/PayButton.js.map +1 -1
  572. package/dist/es-legacy/components/internal/PersonalDetails/PersonalDetails.js +1 -1
  573. package/dist/es-legacy/components/internal/PersonalDetails/PersonalDetails.js.map +1 -1
  574. package/dist/es-legacy/components/internal/PhoneInput/PhoneInput.js +1 -1
  575. package/dist/es-legacy/components/internal/PhoneInput/PhoneInput.js.map +1 -1
  576. package/dist/es-legacy/components/internal/QRLoader/QRLoader.js +1 -1
  577. package/dist/es-legacy/components/internal/QRLoader/QRLoader.js.map +1 -1
  578. package/dist/es-legacy/components/internal/RedirectButton/RedirectButton.js +1 -1
  579. package/dist/es-legacy/components/internal/RedirectButton/RedirectButton.js.map +1 -1
  580. package/dist/es-legacy/components/internal/SecuredFields/SFP/SecuredFieldsProvider.js +1 -1
  581. package/dist/es-legacy/components/internal/SecuredFields/SFP/SecuredFieldsProvider.js.map +1 -1
  582. package/dist/es-legacy/components/internal/SecuredFields/SFP/SecuredFieldsProviderHandlers.js +1 -1
  583. package/dist/es-legacy/components/internal/SecuredFields/SFP/SecuredFieldsProviderHandlers.js.map +1 -1
  584. package/dist/es-legacy/components/internal/SecuredFields/SFP/defaultProps.js +1 -1
  585. package/dist/es-legacy/components/internal/SecuredFields/SFP/defaultProps.js.map +1 -1
  586. package/dist/es-legacy/components/internal/SecuredFields/binLookup/triggerBinLookUp.js.map +1 -1
  587. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/CSF.js +1 -1
  588. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/CSF.js.map +1 -1
  589. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/configureCallbacks.js +1 -1
  590. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/configureCallbacks.js.map +1 -1
  591. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/createSecuredFields.js +1 -1
  592. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/createSecuredFields.js.map +1 -1
  593. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/handleBrandFromBinLookup.js +1 -1
  594. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/handleBrandFromBinLookup.js.map +1 -1
  595. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/handleEncryption.js +1 -1
  596. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/handleEncryption.js.map +1 -1
  597. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/handleIOSTouchEvents.js +1 -1
  598. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/handleIOSTouchEvents.js.map +1 -1
  599. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/handleValidation.js +1 -1
  600. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/handleValidation.js.map +1 -1
  601. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/initCSF.js +1 -1
  602. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/initCSF.js.map +1 -1
  603. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/partials/processBrand.js +1 -1
  604. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/partials/processBrand.js.map +1 -1
  605. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/utils/cardType.js.map +1 -1
  606. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/utils/getCardGroupTypes.js +1 -1
  607. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/utils/getCardGroupTypes.js.map +1 -1
  608. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/utils/iframes/postMessageValidation.js +1 -1
  609. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/utils/iframes/postMessageValidation.js.map +1 -1
  610. package/dist/es-legacy/components/internal/SecuredFields/lib/constants.js +1 -1
  611. package/dist/es-legacy/components/internal/SecuredFields/lib/constants.js.map +1 -1
  612. package/dist/es-legacy/components/internal/SecuredFields/lib/securedField/AbstractSecuredField.js +1 -1
  613. package/dist/es-legacy/components/internal/SecuredFields/lib/securedField/AbstractSecuredField.js.map +1 -1
  614. package/dist/es-legacy/components/internal/SecuredFields/lib/securedField/SecuredField.js +1 -1
  615. package/dist/es-legacy/components/internal/SecuredFields/lib/securedField/SecuredField.js.map +1 -1
  616. package/dist/es-legacy/components/internal/SecuredFields/lib/securedField/utils/processAriaConfig.js +1 -1
  617. package/dist/es-legacy/components/internal/SecuredFields/lib/securedField/utils/processAriaConfig.js.map +1 -1
  618. package/dist/es-legacy/components/internal/SecuredFields/lib/utilities/commonUtils.js +1 -1
  619. package/dist/es-legacy/components/internal/SecuredFields/lib/utilities/commonUtils.js.map +1 -1
  620. package/dist/es-legacy/components/internal/SecuredFields/lib/utilities/dom.js +1 -1
  621. package/dist/es-legacy/components/internal/SecuredFields/lib/utilities/dom.js.map +1 -1
  622. package/dist/es-legacy/components/internal/SecuredFields/lib/utilities/logger.js.map +1 -1
  623. package/dist/es-legacy/components/internal/SecuredFields/utils.js +1 -1
  624. package/dist/es-legacy/components/internal/SecuredFields/utils.js.map +1 -1
  625. package/dist/es-legacy/components/internal/SocialSecurityNumberBrazil/SocialSecurityNumberBrazil.js +1 -1
  626. package/dist/es-legacy/components/internal/SocialSecurityNumberBrazil/SocialSecurityNumberBrazil.js.map +1 -1
  627. package/dist/es-legacy/components/internal/UIElement/UIElement.js +1 -1
  628. package/dist/es-legacy/components/internal/UIElement/UIElement.js.map +1 -1
  629. package/dist/es-legacy/components/tx-variants.js +1 -1
  630. package/dist/es-legacy/components/tx-variants.js.map +1 -1
  631. package/dist/es-legacy/core/Analytics/Analytics.js +1 -1
  632. package/dist/es-legacy/core/Analytics/Analytics.js.map +1 -1
  633. package/dist/es-legacy/core/Analytics/analyticsPreProcessor.js +1 -1
  634. package/dist/es-legacy/core/Analytics/analyticsPreProcessor.js.map +1 -1
  635. package/dist/es-legacy/core/Analytics/utils.js +1 -1
  636. package/dist/es-legacy/core/Analytics/utils.js.map +1 -1
  637. package/dist/es-legacy/core/Context/Resources.js +1 -1
  638. package/dist/es-legacy/core/Context/Resources.js.map +1 -1
  639. package/dist/es-legacy/core/Environment/Environment.js +1 -1
  640. package/dist/es-legacy/core/Environment/Environment.js.map +1 -1
  641. package/dist/es-legacy/core/Environment/constants.js +1 -1
  642. package/dist/es-legacy/core/Environment/constants.js.map +1 -1
  643. package/dist/es-legacy/core/Errors/SRPanel.js +1 -1
  644. package/dist/es-legacy/core/Errors/SRPanel.js.map +1 -1
  645. package/dist/es-legacy/core/ProcessResponse/PaymentAction/actionTypes.js +1 -1
  646. package/dist/es-legacy/core/ProcessResponse/PaymentAction/actionTypes.js.map +1 -1
  647. package/dist/es-legacy/core/ProcessResponse/PaymentMethods/utils.js +1 -1
  648. package/dist/es-legacy/core/ProcessResponse/PaymentMethods/utils.js.map +1 -1
  649. package/dist/es-legacy/core/ProcessResponse/process-response.js +1 -1
  650. package/dist/es-legacy/core/ProcessResponse/process-response.js.map +1 -1
  651. package/dist/es-legacy/core/RiskModule/RiskModule.js +1 -1
  652. package/dist/es-legacy/core/RiskModule/RiskModule.js.map +1 -1
  653. package/dist/es-legacy/core/RiskModule/components/DeviceFingerprint/GetDeviceFingerprint.js.map +1 -1
  654. package/dist/es-legacy/core/Services/analytics/collect-id.js +1 -1
  655. package/dist/es-legacy/core/Services/analytics/collect-id.js.map +1 -1
  656. package/dist/es-legacy/core/Services/get-translations.js +1 -1
  657. package/dist/es-legacy/core/Services/get-translations.js.map +1 -1
  658. package/dist/es-legacy/core/Services/http.js +1 -1
  659. package/dist/es-legacy/core/Services/http.js.map +1 -1
  660. package/dist/es-legacy/core/config.js +1 -1
  661. package/dist/es-legacy/core/config.js.map +1 -1
  662. package/dist/es-legacy/core/core.js +1 -1
  663. package/dist/es-legacy/core/core.js.map +1 -1
  664. package/dist/es-legacy/core/core.registry.js +1 -1
  665. package/dist/es-legacy/core/core.registry.js.map +1 -1
  666. package/dist/es-legacy/core/utils.js +1 -1
  667. package/dist/es-legacy/core/utils.js.map +1 -1
  668. package/dist/es-legacy/external/preact/dist/preact.js +1 -1
  669. package/dist/es-legacy/external/preact/dist/preact.js.map +1 -1
  670. package/dist/es-legacy/external/preact/hooks/dist/hooks.js +1 -1
  671. package/dist/es-legacy/external/preact/hooks/dist/hooks.js.map +1 -1
  672. package/dist/es-legacy/language/constants.js +1 -1
  673. package/dist/es-legacy/language/constants.js.map +1 -1
  674. package/dist/es-legacy/utils/amount-util.js.map +1 -1
  675. package/dist/es-legacy/utils/browserInfo.js +1 -1
  676. package/dist/es-legacy/utils/browserInfo.js.map +1 -1
  677. package/dist/es-legacy/utils/commonUtils.js +2 -0
  678. package/dist/es-legacy/utils/commonUtils.js.map +1 -0
  679. package/dist/es-legacy/utils/listenerUtils.js +2 -0
  680. package/dist/es-legacy/utils/listenerUtils.js.map +1 -0
  681. package/dist/es-legacy/utils/regex.js.map +1 -1
  682. package/dist/es-legacy/utils/useForm/reducer.js +1 -1
  683. package/dist/es-legacy/utils/useForm/reducer.js.map +1 -1
  684. package/package.json +22 -18
  685. package/dist/es/components/Card/components/CardInput/components/IframeLabelAlternative.js.map +0 -1
  686. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodItem/ExpandButton.js +0 -2
  687. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodItem/ExpandButton.js.map +0 -1
  688. package/dist/es-legacy/components/Card/components/CardInput/components/IframeLabelAlternative.js +0 -2
  689. package/dist/es-legacy/components/Card/components/CardInput/components/IframeLabelAlternative.js.map +0 -1
  690. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodItem/ExpandButton.js +0 -2
  691. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodItem/ExpandButton.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"GooglePay.js","sources":["../../../../src/components/GooglePay/GooglePay.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport GooglePayService from './GooglePayService';\nimport GooglePayButton from './components/GooglePayButton';\nimport defaultProps from './defaultProps';\nimport { formatGooglePayContactToAdyenAddressFormat, getGooglePayLocale } from './utils';\nimport collectBrowserInfo from '../../utils/browserInfo';\nimport AdyenCheckoutError from '../../core/Errors/AdyenCheckoutError';\nimport { TxVariants } from '../tx-variants';\nimport { sanitizeResponse, verifyPaymentDidNotFail } from '../internal/UIElement/utils';\nimport { ANALYTICS_INSTANT_PAYMENT_BUTTON, ANALYTICS_SELECTED_STR } from '../../core/Analytics/constants';\nimport { SendAnalyticsObject } from '../../core/Analytics/types';\n\nimport type { AddressData, BrowserInfo, PaymentResponseData, RawPaymentResponse } from '../../types/global-types';\nimport type { GooglePayConfiguration } from './types';\nimport type { ICore } from '../../core/types';\n\nclass GooglePay extends UIElement<GooglePayConfiguration> {\n public static type = TxVariants.googlepay;\n public static txVariants = [TxVariants.googlepay, TxVariants.paywithgoogle];\n public static defaultProps = defaultProps;\n\n protected readonly googlePay;\n\n constructor(checkout: ICore, props?: GooglePayConfiguration) {\n super(checkout, props);\n this.handleAuthorization = this.handleAuthorization.bind(this);\n\n const { isExpress, paymentDataCallbacks } = this.props;\n\n if (isExpress === false && paymentDataCallbacks?.onPaymentDataChanged) {\n throw new AdyenCheckoutError(\n 'IMPLEMENTATION_ERROR',\n 'GooglePay - You must set \"isExpress\" flag to \"true\" in order to use \"onPaymentDataChanged\" callback'\n );\n }\n\n this.googlePay = new GooglePayService(this.props.environment, {\n ...(isExpress && paymentDataCallbacks?.onPaymentDataChanged && { onPaymentDataChanged: paymentDataCallbacks.onPaymentDataChanged }),\n onPaymentAuthorized: this.onPaymentAuthorized\n });\n }\n\n protected override formatProps(props): GooglePayConfiguration {\n const buttonSizeMode = props.buttonSizeMode ?? (props.isDropin ? 'fill' : 'static');\n const buttonLocale = getGooglePayLocale(props.buttonLocale ?? props.i18n?.locale);\n\n const callbackIntents: google.payments.api.CallbackIntent[] = [...props.callbackIntents, 'PAYMENT_AUTHORIZATION'];\n\n return {\n ...props,\n configuration: props.configuration,\n buttonSizeMode,\n buttonLocale,\n callbackIntents\n };\n }\n\n /**\n * Formats the component data output\n */\n protected override formatData() {\n const { googlePayCardNetwork, googlePayToken, billingAddress, deliveryAddress } = this.state;\n const { isExpress } = this.props;\n\n return {\n paymentMethod: {\n type: this.type,\n googlePayCardNetwork,\n googlePayToken,\n ...(isExpress && { subtype: 'express' })\n },\n browserInfo: this.browserInfo,\n origin: !!window && window.location.origin,\n ...(billingAddress && { billingAddress }),\n ...(deliveryAddress && { deliveryAddress })\n };\n }\n\n protected submitAnalytics(analyticsObj: SendAnalyticsObject) {\n // Analytics will need to know about this.props.isExpress & this.props.expressPage\n super.submitAnalytics({ ...analyticsObj }, this.props);\n }\n\n public override submit = () => {\n // Analytics\n if (this.props.isInstantPayment) {\n this.submitAnalytics({ type: ANALYTICS_SELECTED_STR, target: ANALYTICS_INSTANT_PAYMENT_BUTTON });\n }\n\n new Promise((resolve, reject) => this.props.onClick(resolve, reject))\n .then(() => this.googlePay.initiatePayment(this.props, this.core.options.countryCode))\n .catch((error: google.payments.api.PaymentsError) => {\n if (error.statusCode === 'CANCELED') {\n this.handleError(new AdyenCheckoutError('CANCEL', error.toString(), { cause: error }));\n } else {\n this.handleError(new AdyenCheckoutError('ERROR', error.toString(), { cause: error }));\n }\n });\n };\n\n /**\n * Method called when the payment is authorized in the payment sheet\n *\n * @see https://developers.google.com/pay/api/web/reference/client#onPaymentAuthorized\n **/\n private onPaymentAuthorized = async (paymentData: google.payments.api.PaymentData): Promise<google.payments.api.PaymentAuthorizationResult> => {\n const billingAddress: AddressData = formatGooglePayContactToAdyenAddressFormat(paymentData.paymentMethodData.info.billingAddress);\n const deliveryAddress: AddressData = formatGooglePayContactToAdyenAddressFormat(paymentData.shippingAddress, true);\n\n this.setState({\n authorizedEvent: paymentData,\n googlePayToken: paymentData.paymentMethodData.tokenizationData.token,\n googlePayCardNetwork: paymentData.paymentMethodData.info.cardNetwork,\n ...(billingAddress && { billingAddress }),\n ...(deliveryAddress && { deliveryAddress })\n });\n\n return new Promise<google.payments.api.PaymentAuthorizationResult>(resolve => {\n this.handleAuthorization()\n .then(this.makePaymentsCall)\n .then(sanitizeResponse)\n .then(verifyPaymentDidNotFail)\n .then((paymentResponse: PaymentResponseData) => {\n resolve({ transactionState: 'SUCCESS' });\n return paymentResponse;\n })\n .then(paymentResponse => {\n this.handleResponse(paymentResponse);\n })\n .catch((paymentResponse?: RawPaymentResponse) => {\n this.setElementStatus('ready');\n\n const googlePayError = paymentResponse?.error?.googlePayError;\n const fallbackMessage = this.props.i18n.get('error.subtitle.payment');\n\n const error: google.payments.api.PaymentDataError =\n typeof googlePayError === 'string' || undefined\n ? {\n intent: 'PAYMENT_AUTHORIZATION',\n reason: 'OTHER_ERROR',\n message: (googlePayError as string) || fallbackMessage\n }\n : {\n intent: googlePayError?.intent || 'PAYMENT_AUTHORIZATION',\n reason: googlePayError?.reason || 'OTHER_ERROR',\n message: googlePayError?.message || fallbackMessage\n };\n\n resolve({\n transactionState: 'ERROR',\n error\n });\n\n const responseWithError = {\n ...paymentResponse,\n error: {\n googlePayError: error\n }\n };\n\n this.handleFailedResult(responseWithError);\n });\n });\n };\n\n /**\n * Call the 'onAuthorized' callback if available.\n * Must be resolved/reject for the payment flow to continue\n */\n private async handleAuthorization(): Promise<void> {\n return new Promise<void>((resolve, reject) => {\n if (!this.props.onAuthorized) {\n resolve();\n }\n\n const { authorizedEvent, billingAddress, deliveryAddress } = this.state;\n\n this.props.onAuthorized(\n {\n authorizedEvent,\n ...(billingAddress && { billingAddress }),\n ...(deliveryAddress && { deliveryAddress })\n },\n { resolve, reject }\n );\n }).catch((error?: google.payments.api.PaymentDataError | string) => {\n // Format error in a way that the 'catch' of the 'onPaymentAuthorize' block accepts it\n const data = { error: { googlePayError: error } };\n return Promise.reject(data);\n });\n }\n\n /**\n * Validation\n */\n get isValid(): boolean {\n return !!this.state.googlePayToken;\n }\n\n /**\n * Determine a shopper's ability to return a form of payment from the Google Pay API.\n */\n public override async isAvailable(): Promise<void> {\n return this.isReadyToPay()\n .then(response => {\n if (!response.result) {\n throw new AdyenCheckoutError('ERROR', 'GooglePay is not available');\n }\n\n if (response.paymentMethodPresent === false) {\n throw new AdyenCheckoutError('ERROR', 'GooglePay - No paymentMethodPresent');\n }\n\n return Promise.resolve();\n })\n .catch(error => {\n return Promise.reject(error);\n });\n }\n\n /**\n * Determine a shopper's ability to return a form of payment from the Google Pay API.\n */\n public isReadyToPay = (): Promise<google.payments.api.IsReadyToPayResponse> => {\n return this.googlePay.isReadyToPay(this.props);\n };\n\n /**\n * Use this method to prefetch a PaymentDataRequest configuration to improve loadPaymentData execution time on later user interaction. No value is returned.\n */\n public prefetch = (): void => {\n return this.googlePay.prefetchPaymentData(this.props, this.core.options.countryCode);\n };\n\n get browserInfo(): BrowserInfo {\n return collectBrowserInfo();\n }\n\n get icon(): string {\n return this.props.icon ?? this.resources.getImage()('googlepay');\n }\n\n render() {\n if (this.props.showPayButton) {\n return (\n <GooglePayButton\n buttonColor={this.props.buttonColor}\n buttonType={this.props.buttonType}\n buttonSizeMode={this.props.buttonSizeMode}\n buttonLocale={this.props.buttonLocale}\n buttonRootNode={this.props.buttonRootNode}\n paymentsClient={this.googlePay.paymentsClient}\n onClick={this.submit}\n />\n );\n }\n\n return null;\n }\n}\n\nexport default GooglePay;\n"],"names":["GooglePay","UIElement","static","TxVariants","googlepay","paywithgoogle","defaultProps","googlePay","constructor","checkout","props","super","this","handleAuthorization","bind","isExpress","paymentDataCallbacks","onPaymentDataChanged","AdyenCheckoutError","GooglePayService","environment","onPaymentAuthorized","formatProps","buttonSizeMode","isDropin","buttonLocale","getGooglePayLocale","i18n","locale","callbackIntents","configuration","formatData","googlePayCardNetwork","googlePayToken","billingAddress","deliveryAddress","state","paymentMethod","type","subtype","browserInfo","origin","window","location","submitAnalytics","analyticsObj","submit","isInstantPayment","ANALYTICS_SELECTED_STR","target","ANALYTICS_INSTANT_PAYMENT_BUTTON","Promise","resolve","reject","onClick","then","initiatePayment","core","options","countryCode","catch","error","statusCode","handleError","toString","cause","async","paymentData","formatGooglePayContactToAdyenAddressFormat","paymentMethodData","info","shippingAddress","setState","authorizedEvent","tokenizationData","token","cardNetwork","makePaymentsCall","sanitizeResponse","verifyPaymentDidNotFail","paymentResponse","transactionState","handleResponse","setElementStatus","googlePayError","fallbackMessage","get","intent","reason","message","responseWithError","handleFailedResult","onAuthorized","data","isValid","isAvailable","isReadyToPay","response","result","paymentMethodPresent","prefetch","prefetchPaymentData","collectBrowserInfo","icon","resources","getImage","render","showPayButton","h","GooglePayButton","buttonColor","buttonType","buttonRootNode","paymentsClient"],"mappings":"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"}
1
+ {"version":3,"file":"GooglePay.js","sources":["../../../../src/components/GooglePay/GooglePay.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport GooglePayService from './GooglePayService';\nimport GooglePayButton from './components/GooglePayButton';\nimport defaultProps from './defaultProps';\nimport { formatGooglePayContactToAdyenAddressFormat, getGooglePayLocale } from './utils';\nimport collectBrowserInfo from '../../utils/browserInfo';\nimport AdyenCheckoutError from '../../core/Errors/AdyenCheckoutError';\nimport { TxVariants } from '../tx-variants';\nimport { sanitizeResponse, verifyPaymentDidNotFail } from '../internal/UIElement/utils';\nimport { ANALYTICS_INSTANT_PAYMENT_BUTTON, ANALYTICS_SELECTED_STR } from '../../core/Analytics/constants';\nimport { SendAnalyticsObject } from '../../core/Analytics/types';\n\nimport type { AddressData, BrowserInfo, PaymentResponseData, RawPaymentResponse } from '../../types/global-types';\nimport type { GooglePayConfiguration } from './types';\nimport type { ICore } from '../../core/types';\n\nclass GooglePay extends UIElement<GooglePayConfiguration> {\n public static type = TxVariants.googlepay;\n public static txVariants = [TxVariants.googlepay, TxVariants.paywithgoogle];\n public static defaultProps = defaultProps;\n\n protected readonly googlePay;\n\n constructor(checkout: ICore, props?: GooglePayConfiguration) {\n super(checkout, props);\n this.handleAuthorization = this.handleAuthorization.bind(this);\n\n const { isExpress, paymentDataCallbacks } = this.props;\n\n if (isExpress === false && paymentDataCallbacks?.onPaymentDataChanged) {\n throw new AdyenCheckoutError(\n 'IMPLEMENTATION_ERROR',\n 'GooglePay - You must set \"isExpress\" flag to \"true\" in order to use \"onPaymentDataChanged\" callback'\n );\n }\n\n this.googlePay = new GooglePayService(this.props.environment, {\n ...(isExpress && paymentDataCallbacks?.onPaymentDataChanged && { onPaymentDataChanged: paymentDataCallbacks.onPaymentDataChanged }),\n onPaymentAuthorized: this.onPaymentAuthorized\n });\n }\n\n protected override formatProps(props): GooglePayConfiguration {\n const buttonSizeMode = props.buttonSizeMode ?? (props.isDropin ? 'fill' : 'static');\n const buttonLocale = getGooglePayLocale(props.buttonLocale ?? props.i18n?.locale);\n\n const callbackIntents: google.payments.api.CallbackIntent[] = [...props.callbackIntents, 'PAYMENT_AUTHORIZATION'];\n\n return {\n ...props,\n configuration: props.configuration,\n buttonSizeMode,\n buttonLocale,\n callbackIntents\n };\n }\n\n /**\n * Formats the component data output\n */\n protected override formatData() {\n const { googlePayCardNetwork, googlePayToken, billingAddress, deliveryAddress } = this.state;\n const { isExpress } = this.props;\n\n return {\n paymentMethod: {\n type: this.type,\n googlePayCardNetwork,\n googlePayToken,\n ...(isExpress && { subtype: 'express' })\n },\n browserInfo: this.browserInfo,\n origin: !!window && window.location.origin,\n ...(billingAddress && { billingAddress }),\n ...(deliveryAddress && { deliveryAddress })\n };\n }\n\n protected submitAnalytics(analyticsObj: SendAnalyticsObject) {\n // Analytics will need to know about this.props.isExpress & this.props.expressPage\n super.submitAnalytics({ ...analyticsObj }, this.props);\n }\n\n public override submit = () => {\n // Analytics\n if (this.props.isInstantPayment) {\n this.submitAnalytics({ type: ANALYTICS_SELECTED_STR, target: ANALYTICS_INSTANT_PAYMENT_BUTTON });\n }\n\n new Promise((resolve, reject) => this.props.onClick(resolve, reject))\n .then(() => this.googlePay.initiatePayment(this.props, this.core.options.countryCode))\n .catch((error: google.payments.api.PaymentsError) => {\n if (error.statusCode === 'CANCELED') {\n // eslint-disable-next-line @typescript-eslint/no-base-to-string\n this.handleError(new AdyenCheckoutError('CANCEL', error.toString(), { cause: error }));\n } else {\n // eslint-disable-next-line @typescript-eslint/no-base-to-string\n this.handleError(new AdyenCheckoutError('ERROR', error.toString(), { cause: error }));\n }\n });\n };\n\n /**\n * Method called when the payment is authorized in the payment sheet\n *\n * @see https://developers.google.com/pay/api/web/reference/client#onPaymentAuthorized\n **/\n private onPaymentAuthorized = async (paymentData: google.payments.api.PaymentData): Promise<google.payments.api.PaymentAuthorizationResult> => {\n const billingAddress: AddressData = formatGooglePayContactToAdyenAddressFormat(paymentData.paymentMethodData.info.billingAddress);\n const deliveryAddress: AddressData = formatGooglePayContactToAdyenAddressFormat(paymentData.shippingAddress, true);\n\n this.setState({\n authorizedEvent: paymentData,\n googlePayToken: paymentData.paymentMethodData.tokenizationData.token,\n googlePayCardNetwork: paymentData.paymentMethodData.info.cardNetwork,\n ...(billingAddress && { billingAddress }),\n ...(deliveryAddress && { deliveryAddress })\n });\n\n return new Promise<google.payments.api.PaymentAuthorizationResult>(resolve => {\n this.handleAuthorization()\n .then(this.makePaymentsCall)\n .then(sanitizeResponse)\n .then(verifyPaymentDidNotFail)\n .then((paymentResponse: PaymentResponseData) => {\n resolve({ transactionState: 'SUCCESS' });\n return paymentResponse;\n })\n .then(paymentResponse => {\n this.handleResponse(paymentResponse);\n })\n .catch((paymentResponse?: RawPaymentResponse) => {\n this.setElementStatus('ready');\n\n const googlePayError = paymentResponse?.error?.googlePayError;\n const fallbackMessage = this.props.i18n.get('error.subtitle.payment');\n\n const error: google.payments.api.PaymentDataError =\n typeof googlePayError === 'string' || undefined\n ? {\n intent: 'PAYMENT_AUTHORIZATION',\n reason: 'OTHER_ERROR',\n message: (googlePayError as string) || fallbackMessage\n }\n : {\n intent: googlePayError?.intent || 'PAYMENT_AUTHORIZATION',\n reason: googlePayError?.reason || 'OTHER_ERROR',\n message: googlePayError?.message || fallbackMessage\n };\n\n resolve({\n transactionState: 'ERROR',\n error\n });\n\n const responseWithError = {\n ...paymentResponse,\n error: {\n googlePayError: error\n }\n };\n\n this.handleFailedResult(responseWithError);\n });\n });\n };\n\n /**\n * Call the 'onAuthorized' callback if available.\n * Must be resolved/reject for the payment flow to continue\n */\n private async handleAuthorization(): Promise<void> {\n return new Promise<void>((resolve, reject) => {\n if (!this.props.onAuthorized) {\n resolve();\n }\n\n const { authorizedEvent, billingAddress, deliveryAddress } = this.state;\n\n this.props.onAuthorized(\n {\n authorizedEvent,\n ...(billingAddress && { billingAddress }),\n ...(deliveryAddress && { deliveryAddress })\n },\n { resolve, reject }\n );\n }).catch((error?: google.payments.api.PaymentDataError | string) => {\n // Format error in a way that the 'catch' of the 'onPaymentAuthorize' block accepts it\n const data = { error: { googlePayError: error } };\n return Promise.reject(data);\n });\n }\n\n /**\n * Validation\n */\n get isValid(): boolean {\n return !!this.state.googlePayToken;\n }\n\n /**\n * Determine a shopper's ability to return a form of payment from the Google Pay API.\n */\n public override async isAvailable(): Promise<void> {\n return this.isReadyToPay()\n .then(response => {\n if (!response.result) {\n throw new AdyenCheckoutError('ERROR', 'GooglePay is not available');\n }\n\n if (response.paymentMethodPresent === false) {\n throw new AdyenCheckoutError('ERROR', 'GooglePay - No paymentMethodPresent');\n }\n\n return Promise.resolve();\n })\n .catch(error => {\n return Promise.reject(error);\n });\n }\n\n /**\n * Determine a shopper's ability to return a form of payment from the Google Pay API.\n */\n public isReadyToPay = (): Promise<google.payments.api.IsReadyToPayResponse> => {\n return this.googlePay.isReadyToPay(this.props);\n };\n\n /**\n * Use this method to prefetch a PaymentDataRequest configuration to improve loadPaymentData execution time on later user interaction. No value is returned.\n */\n public prefetch = (): void => {\n return this.googlePay.prefetchPaymentData(this.props, this.core.options.countryCode);\n };\n\n get browserInfo(): BrowserInfo {\n return collectBrowserInfo();\n }\n\n get icon(): string {\n return this.props.icon ?? this.resources.getImage()('googlepay');\n }\n\n render() {\n if (this.props.showPayButton) {\n return (\n <GooglePayButton\n buttonColor={this.props.buttonColor}\n buttonType={this.props.buttonType}\n buttonSizeMode={this.props.buttonSizeMode}\n buttonLocale={this.props.buttonLocale}\n buttonRootNode={this.props.buttonRootNode}\n buttonRadius={this.props.buttonRadius}\n paymentsClient={this.googlePay.paymentsClient}\n onClick={this.submit}\n />\n );\n }\n\n return null;\n }\n}\n\nexport default GooglePay;\n"],"names":["GooglePay","UIElement","static","TxVariants","googlepay","paywithgoogle","defaultProps","googlePay","constructor","checkout","props","super","this","handleAuthorization","bind","isExpress","paymentDataCallbacks","onPaymentDataChanged","AdyenCheckoutError","GooglePayService","environment","onPaymentAuthorized","formatProps","buttonSizeMode","isDropin","buttonLocale","getGooglePayLocale","i18n","locale","callbackIntents","configuration","formatData","googlePayCardNetwork","googlePayToken","billingAddress","deliveryAddress","state","paymentMethod","type","subtype","browserInfo","origin","window","location","submitAnalytics","analyticsObj","submit","isInstantPayment","ANALYTICS_SELECTED_STR","target","ANALYTICS_INSTANT_PAYMENT_BUTTON","Promise","resolve","reject","onClick","then","initiatePayment","core","options","countryCode","catch","error","statusCode","handleError","toString","cause","async","paymentData","formatGooglePayContactToAdyenAddressFormat","paymentMethodData","info","shippingAddress","setState","authorizedEvent","tokenizationData","token","cardNetwork","makePaymentsCall","sanitizeResponse","verifyPaymentDidNotFail","paymentResponse","transactionState","handleResponse","setElementStatus","googlePayError","fallbackMessage","get","intent","reason","message","responseWithError","handleFailedResult","onAuthorized","data","isValid","isAvailable","isReadyToPay","response","result","paymentMethodPresent","prefetch","prefetchPaymentData","collectBrowserInfo","icon","resources","getImage","render","showPayButton","h","GooglePayButton","buttonColor","buttonType","buttonRootNode","buttonRadius","paymentsClient"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"GooglePayService.js","sources":["../../../../src/components/GooglePay/GooglePayService.ts"],"sourcesContent":["import { isReadyToPayRequest, initiatePaymentRequest } from './requests';\nimport { resolveEnvironment } from './utils';\nimport Script from '../../utils/Script';\nimport config from './config';\nimport type { GooglePayConfiguration } from './types';\n\nclass GooglePayService {\n public readonly paymentsClient: Promise<google.payments.api.PaymentsClient>;\n\n constructor(environment: string, paymentDataCallbacks: google.payments.api.PaymentDataCallbacks) {\n const googlePayEnvironment = resolveEnvironment(environment);\n\n this.paymentsClient = this.getGooglePaymentsClient({\n environment: googlePayEnvironment,\n paymentDataCallbacks\n });\n }\n\n /**\n * Initialize a Google Pay API client\n *\n * @see {@link https://developers.google.com/pay/api/web/reference/client#PaymentsClient|PaymentsClient constructor}\n * @returns Google Pay API client\n */\n async getGooglePaymentsClient(paymentOptions: google.payments.api.PaymentOptions): Promise<google.payments.api.PaymentsClient> {\n if (!window.google?.payments) {\n const script = new Script(config.URL);\n await script.load();\n }\n\n return new google.payments.api.PaymentsClient(paymentOptions);\n }\n\n /**\n * Determine a shopper's ability to return a form of payment from the Google Pay API.\n * @see {@link https://developers.google.com/pay/api/web/reference/client#isReadyToPay|isReadyToPay}\n */\n isReadyToPay(props): Promise<google.payments.api.IsReadyToPayResponse> {\n if (!this.paymentsClient) return Promise.reject(new Error('Google Pay is not available'));\n\n return this.paymentsClient.then(client => client.isReadyToPay(isReadyToPayRequest(props)));\n }\n\n prefetchPaymentData(props: GooglePayConfiguration, countryCode: string): void {\n if (!this.paymentsClient) throw new Error('Google Pay is not available');\n\n const paymentDataRequest = initiatePaymentRequest(props, countryCode);\n this.paymentsClient.then(client => client.prefetchPaymentData(paymentDataRequest));\n }\n\n /**\n * Show Google Pay payment sheet when Google Pay payment button is clicked\n * @returns paymentData response from Google Pay API after user approves payment\n * @see {@link https://developers.google.com/pay/api/web/reference/object#PaymentData|PaymentData object reference}\n */\n initiatePayment(props: GooglePayConfiguration, countryCode: string): Promise<google.payments.api.PaymentData> {\n if (!this.paymentsClient) throw new Error('Google Pay is not available');\n\n const paymentDataRequest = initiatePaymentRequest(props, countryCode);\n return this.paymentsClient.then(client => client.loadPaymentData(paymentDataRequest));\n }\n}\n\nexport default GooglePayService;\n"],"names":["GooglePayService","paymentsClient","constructor","environment","paymentDataCallbacks","googlePayEnvironment","resolveEnvironment","this","getGooglePaymentsClient","paymentOptions","window","google","payments","script","Script","config","URL","load","api","PaymentsClient","isReadyToPay","props","then","client","isReadyToPayRequest","Promise","reject","Error","prefetchPaymentData","countryCode","paymentDataRequest","initiatePaymentRequest","initiatePayment","loadPaymentData"],"mappings":"gMAMA,MAAMA,EACcC,eAEhBC,WAAAA,CAAYC,EAAqBC,GAC7B,MAAMC,EAAuBC,EAAmBH,GAEhDI,KAAKN,eAAiBM,KAAKC,wBAAwB,CAC/CL,YAAaE,EACbD,wBAER,CAQA,6BAAMI,CAAwBC,GAC1B,IAAKC,OAAOC,QAAQC,SAAU,CAC1B,MAAMC,EAAS,IAAIC,EAAOC,EAAOC,WAC3BH,EAAOI,MACjB,CAEA,OAAO,IAAIN,OAAOC,SAASM,IAAIC,eAAeV,EAClD,CAMAW,YAAAA,CAAaC,GACT,OAAKd,KAAKN,eAEHM,KAAKN,eAAeqB,MAAKC,GAAUA,EAAOH,aAAaI,EAAoBH,MAFjDI,QAAQC,OAAO,IAAIC,MAAM,+BAG9D,CAEAC,mBAAAA,CAAoBP,EAA+BQ,GAC/C,IAAKtB,KAAKN,eAAgB,MAAM,IAAI0B,MAAM,+BAE1C,MAAMG,EAAqBC,EAAuBV,EAAOQ,GACzDtB,KAAKN,eAAeqB,MAAKC,GAAUA,EAAOK,oBAAoBE,IAClE,CAOAE,eAAAA,CAAgBX,EAA+BQ,GAC3C,IAAKtB,KAAKN,eAAgB,MAAM,IAAI0B,MAAM,+BAE1C,MAAMG,EAAqBC,EAAuBV,EAAOQ,GACzD,OAAOtB,KAAKN,eAAeqB,MAAKC,GAAUA,EAAOU,gBAAgBH,IACrE"}
1
+ {"version":3,"file":"GooglePayService.js","sources":["../../../../src/components/GooglePay/GooglePayService.ts"],"sourcesContent":["import { isReadyToPayRequest, initiatePaymentRequest } from './requests';\nimport { resolveEnvironment } from './utils';\nimport Script from '../../utils/Script';\nimport config from './config';\nimport type { GooglePayConfiguration } from './types';\n\nclass GooglePayService {\n public readonly paymentsClient: Promise<google.payments.api.PaymentsClient>;\n\n constructor(environment: string, paymentDataCallbacks: google.payments.api.PaymentDataCallbacks) {\n const googlePayEnvironment = resolveEnvironment(environment);\n\n this.paymentsClient = this.getGooglePaymentsClient({\n environment: googlePayEnvironment,\n paymentDataCallbacks\n });\n }\n\n /**\n * Initialize a Google Pay API client\n *\n * @see {@link https://developers.google.com/pay/api/web/reference/client#PaymentsClient|PaymentsClient constructor}\n * @returns Google Pay API client\n */\n async getGooglePaymentsClient(paymentOptions: google.payments.api.PaymentOptions): Promise<google.payments.api.PaymentsClient> {\n if (!window.google?.payments) {\n const script = new Script(config.URL);\n await script.load();\n }\n\n return new google.payments.api.PaymentsClient(paymentOptions);\n }\n\n /**\n * Determine a shopper's ability to return a form of payment from the Google Pay API.\n * @see {@link https://developers.google.com/pay/api/web/reference/client#isReadyToPay|isReadyToPay}\n */\n isReadyToPay(props): Promise<google.payments.api.IsReadyToPayResponse> {\n // eslint-disable-next-line @typescript-eslint/no-misused-promises\n if (!this.paymentsClient) return Promise.reject(new Error('Google Pay is not available'));\n\n return this.paymentsClient.then(client => client.isReadyToPay(isReadyToPayRequest(props)));\n }\n\n prefetchPaymentData(props: GooglePayConfiguration, countryCode: string): void {\n // eslint-disable-next-line @typescript-eslint/no-misused-promises\n if (!this.paymentsClient) throw new Error('Google Pay is not available');\n\n const paymentDataRequest = initiatePaymentRequest(props, countryCode);\n void this.paymentsClient.then(client => client.prefetchPaymentData(paymentDataRequest));\n }\n\n /**\n * Show Google Pay payment sheet when Google Pay payment button is clicked\n * @returns paymentData response from Google Pay API after user approves payment\n * @see {@link https://developers.google.com/pay/api/web/reference/object#PaymentData|PaymentData object reference}\n */\n initiatePayment(props: GooglePayConfiguration, countryCode: string): Promise<google.payments.api.PaymentData> {\n // eslint-disable-next-line @typescript-eslint/no-misused-promises\n if (!this.paymentsClient) throw new Error('Google Pay is not available');\n\n const paymentDataRequest = initiatePaymentRequest(props, countryCode);\n return this.paymentsClient.then(client => client.loadPaymentData(paymentDataRequest));\n }\n}\n\nexport default GooglePayService;\n"],"names":["GooglePayService","paymentsClient","constructor","environment","paymentDataCallbacks","googlePayEnvironment","resolveEnvironment","this","getGooglePaymentsClient","paymentOptions","window","google","payments","script","Script","config","URL","load","api","PaymentsClient","isReadyToPay","props","then","client","isReadyToPayRequest","Promise","reject","Error","prefetchPaymentData","countryCode","paymentDataRequest","initiatePaymentRequest","initiatePayment","loadPaymentData"],"mappings":"gMAMA,MAAMA,EACcC,eAEhBC,WAAAA,CAAYC,EAAqBC,GAC7B,MAAMC,EAAuBC,EAAmBH,GAEhDI,KAAKN,eAAiBM,KAAKC,wBAAwB,CAC/CL,YAAaE,EACbD,wBAER,CAQA,6BAAMI,CAAwBC,GAC1B,IAAKC,OAAOC,QAAQC,SAAU,CAC1B,MAAMC,EAAS,IAAIC,EAAOC,EAAOC,WAC3BH,EAAOI,MACjB,CAEA,OAAO,IAAIN,OAAOC,SAASM,IAAIC,eAAeV,EAClD,CAMAW,YAAAA,CAAaC,GAET,OAAKd,KAAKN,eAEHM,KAAKN,eAAeqB,MAAKC,GAAUA,EAAOH,aAAaI,EAAoBH,MAFjDI,QAAQC,OAAO,IAAIC,MAAM,+BAG9D,CAEAC,mBAAAA,CAAoBP,EAA+BQ,GAE/C,IAAKtB,KAAKN,eAAgB,MAAM,IAAI0B,MAAM,+BAE1C,MAAMG,EAAqBC,EAAuBV,EAAOQ,GACpDtB,KAAKN,eAAeqB,MAAKC,GAAUA,EAAOK,oBAAoBE,IACvE,CAOAE,eAAAA,CAAgBX,EAA+BQ,GAE3C,IAAKtB,KAAKN,eAAgB,MAAM,IAAI0B,MAAM,+BAE1C,MAAMG,EAAqBC,EAAuBV,EAAOQ,GACzD,OAAOtB,KAAKN,eAAeqB,MAAKC,GAAUA,EAAOU,gBAAgBH,IACrE"}
@@ -1,2 +1,2 @@
1
- import{createElement as t}from"../../../external/preact/dist/preact.js";import{useRef as o,useEffect as e}from"../../../external/preact/hooks/dist/hooks.js";const n=n=>{const a=o(void 0);return e((()=>{const{onClick:t,buttonColor:o,buttonType:e,buttonLocale:u,buttonSizeMode:r,buttonRootNode:c,paymentsClient:s}=n;s.then((n=>n.createButton({onClick:t,buttonType:e,buttonColor:o,buttonLocale:u,buttonSizeMode:r,buttonRootNode:c}))).then((t=>{a.current&&a.current.appendChild(t)}))}),[n.buttonColor,n.buttonType,n.buttonLocale,n.buttonSizeMode,n.buttonRootNode,n.paymentsClient]),t("div",{"data-testid":"googlepay-button-container",className:"adyen-checkout__paywithgoogle",ref:a})};export{n as default};
1
+ import{createElement as t}from"../../../external/preact/dist/preact.js";import{useRef as o,useEffect as e}from"../../../external/preact/hooks/dist/hooks.js";const n=n=>{const a=o(void 0);return e((()=>{const{onClick:t,buttonRadius:o,buttonColor:e,buttonType:u,buttonLocale:r,buttonSizeMode:s,buttonRootNode:c,paymentsClient:i}=n;i.then((n=>n.createButton({onClick:t,buttonType:u,buttonColor:e,buttonLocale:r,buttonSizeMode:s,buttonRootNode:c,...o&&{buttonRadius:o}}))).then((t=>{a.current&&a.current.appendChild(t)}))}),[n.buttonColor,n.buttonType,n.buttonLocale,n.buttonSizeMode,n.buttonRootNode,n.paymentsClient]),t("div",{"data-testid":"googlepay-button-container",className:"adyen-checkout__paywithgoogle",ref:a})};export{n as default};
2
2
  //# sourceMappingURL=GooglePayButton.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GooglePayButton.js","sources":["../../../../../src/components/GooglePay/components/GooglePayButton.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { useEffect, useRef } from 'preact/hooks';\nimport './GooglePayButton.scss';\n\ninterface GooglePayButtonProps {\n buttonColor: google.payments.api.ButtonColor;\n buttonType: google.payments.api.ButtonType;\n buttonSizeMode: google.payments.api.ButtonSizeMode;\n buttonLocale: string;\n buttonRootNode?: HTMLDocument | ShadowRoot;\n paymentsClient: Promise<google.payments.api.PaymentsClient>;\n onClick: (e: Event) => void;\n}\n\nconst GooglePayButton = (props: GooglePayButtonProps) => {\n const googlePayWrapperRef = useRef<HTMLDivElement | undefined>(undefined);\n\n useEffect(() => {\n const { onClick, buttonColor, buttonType, buttonLocale, buttonSizeMode, buttonRootNode, paymentsClient } = props;\n\n paymentsClient\n .then(client =>\n client.createButton({\n onClick,\n buttonType,\n buttonColor,\n buttonLocale,\n buttonSizeMode,\n buttonRootNode\n })\n )\n .then(googlePayButton => {\n if (googlePayWrapperRef.current) {\n googlePayWrapperRef.current.appendChild(googlePayButton);\n }\n });\n }, [props.buttonColor, props.buttonType, props.buttonLocale, props.buttonSizeMode, props.buttonRootNode, props.paymentsClient]);\n\n return <div data-testid=\"googlepay-button-container\" className={'adyen-checkout__paywithgoogle'} ref={googlePayWrapperRef} />;\n};\n\nexport default GooglePayButton;\n"],"names":["GooglePayButton","props","googlePayWrapperRef","useRef","undefined","useEffect","onClick","buttonColor","buttonType","buttonLocale","buttonSizeMode","buttonRootNode","paymentsClient","then","client","createButton","googlePayButton","current","appendChild","h","div","data-testid","className","ref"],"mappings":"6JAcA,MAAMA,EAAmBC,IACrB,MAAMC,EAAsBC,OAAmCC,GAuB/D,OArBAC,GAAU,KACN,MAAMC,QAAEA,EAAOC,YAAEA,EAAWC,WAAEA,EAAUC,aAAEA,EAAYC,eAAEA,EAAcC,eAAEA,EAAcC,eAAEA,GAAmBX,EAE3GW,EACKC,MAAKC,GACFA,EAAOC,aAAa,CAChBT,UACAE,aACAD,cACAE,eACAC,iBACAC,qBAGPE,MAAKG,IACEd,EAAoBe,SACpBf,EAAoBe,QAAQC,YAAYF,EAC5C,GACJ,GACL,CAACf,EAAMM,YAAaN,EAAMO,WAAYP,EAAMQ,aAAcR,EAAMS,eAAgBT,EAAMU,eAAgBV,EAAMW,iBAExGO,EAACC,MAAAA,CAAIC,cAAY,6BAA6BC,UAAW,gCAAiCC,IAAKrB"}
1
+ {"version":3,"file":"GooglePayButton.js","sources":["../../../../../src/components/GooglePay/components/GooglePayButton.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { useEffect, useRef } from 'preact/hooks';\nimport './GooglePayButton.scss';\n\ninterface GooglePayButtonProps {\n buttonColor: google.payments.api.ButtonColor;\n buttonType: google.payments.api.ButtonType;\n buttonSizeMode: google.payments.api.ButtonSizeMode;\n buttonLocale: string;\n buttonRadius?: number;\n buttonRootNode?: HTMLDocument | ShadowRoot;\n paymentsClient: Promise<google.payments.api.PaymentsClient>;\n onClick: (e: Event) => void;\n}\n\nconst GooglePayButton = (props: GooglePayButtonProps) => {\n const googlePayWrapperRef = useRef<HTMLDivElement | undefined>(undefined);\n\n useEffect(() => {\n const { onClick, buttonRadius, buttonColor, buttonType, buttonLocale, buttonSizeMode, buttonRootNode, paymentsClient } = props;\n\n void paymentsClient\n .then(client =>\n client.createButton({\n onClick,\n buttonType,\n buttonColor,\n buttonLocale,\n buttonSizeMode,\n buttonRootNode,\n ...(buttonRadius && { buttonRadius })\n })\n )\n .then(googlePayButton => {\n if (googlePayWrapperRef.current) {\n googlePayWrapperRef.current.appendChild(googlePayButton);\n }\n });\n }, [props.buttonColor, props.buttonType, props.buttonLocale, props.buttonSizeMode, props.buttonRootNode, props.paymentsClient]);\n\n return <div data-testid=\"googlepay-button-container\" className={'adyen-checkout__paywithgoogle'} ref={googlePayWrapperRef} />;\n};\n\nexport default GooglePayButton;\n"],"names":["GooglePayButton","props","googlePayWrapperRef","useRef","undefined","useEffect","onClick","buttonRadius","buttonColor","buttonType","buttonLocale","buttonSizeMode","buttonRootNode","paymentsClient","then","client","createButton","googlePayButton","current","appendChild","h","div","data-testid","className","ref"],"mappings":"6JAeA,MAAMA,EAAmBC,IACrB,MAAMC,EAAsBC,OAAmCC,GAwB/D,OAtBAC,GAAU,KACN,MAAMC,QAAEA,EAAOC,aAAEA,EAAYC,YAAEA,EAAWC,WAAEA,EAAUC,aAAEA,EAAYC,eAAEA,EAAcC,eAAEA,EAAcC,eAAEA,GAAmBZ,EAEpHY,EACAC,MAAKC,GACFA,EAAOC,aAAa,CAChBV,UACAG,aACAD,cACAE,eACAC,iBACAC,oBACIL,GAAgB,CAAEA,oBAG7BO,MAAKG,IACEf,EAAoBgB,SACpBhB,EAAoBgB,QAAQC,YAAYF,EAC5C,GACJ,GACL,CAAChB,EAAMO,YAAaP,EAAMQ,WAAYR,EAAMS,aAAcT,EAAMU,eAAgBV,EAAMW,eAAgBX,EAAMY,iBAExGO,EAACC,MAAAA,CAAIC,cAAY,6BAA6BC,UAAW,gCAAiCC,IAAKtB"}
@@ -1 +1 @@
1
- {"version":3,"file":"requests.js","sources":["../../../../src/components/GooglePay/requests.ts"],"sourcesContent":["import { getDecimalAmount } from '../../utils/amount-util';\nimport config from './config';\nimport { GooglePaymentDataRequest, GooglePayConfiguration } from './types';\n\n/**\n * Configure your site's support for payment methods supported by the Google Pay API.\n *\n * @see {@link https://developers.google.com/pay/api/web/reference/object#IsReadyToPayRequest|isReadyToPayRequest}\n * @returns Google Pay API version, payment methods supported by the site\n */\nexport function isReadyToPayRequest({\n allowedAuthMethods,\n allowedCardNetworks,\n existingPaymentMethodRequired = false\n}: Pick<\n GooglePayConfiguration,\n 'allowedAuthMethods' | 'allowedCardNetworks' | 'existingPaymentMethodRequired'\n>): google.payments.api.IsReadyToPayRequest {\n return {\n apiVersion: config.API_VERSION,\n apiVersionMinor: config.API_VERSION_MINOR,\n allowedPaymentMethods: [\n {\n type: 'CARD',\n parameters: {\n allowedAuthMethods,\n allowedCardNetworks\n },\n tokenizationSpecification: {\n type: 'PAYMENT_GATEWAY',\n parameters: {}\n }\n }\n ],\n existingPaymentMethodRequired\n };\n}\n\n/**\n * Provide Google Pay API with a payment amount, currency, and amount status\n *\n * @see {@link https://developers.google.com/pay/api/web/reference/object#TransactionInfo|TransactionInfo}\n * @returns transaction info, suitable for use as transactionInfo property of PaymentDataRequest\n */\nexport function getTransactionInfo({\n amount,\n countryCode = 'US',\n totalPriceStatus = 'FINAL',\n ...props\n}: GooglePayConfiguration): google.payments.api.TransactionInfo {\n const formattedPrice = String(getDecimalAmount(amount.value, amount.currency));\n\n return {\n countryCode,\n currencyCode: amount.currency,\n totalPrice: formattedPrice,\n totalPriceStatus: totalPriceStatus as google.payments.api.TotalPriceStatus,\n ...props.transactionInfo\n };\n}\n\nexport function initiatePaymentRequest({ configuration, ...props }: GooglePayConfiguration, countryCode: string): GooglePaymentDataRequest {\n return {\n apiVersion: config.API_VERSION,\n apiVersionMinor: config.API_VERSION_MINOR,\n transactionInfo: getTransactionInfo({ countryCode, ...props }),\n merchantInfo: {\n merchantId: configuration.merchantId,\n merchantName: configuration.merchantName,\n ...(configuration.merchantOrigin ? { merchantOrigin: configuration.merchantOrigin } : {}),\n ...(configuration.authJwt ? { authJwt: configuration.authJwt } : {})\n },\n allowedPaymentMethods: [\n {\n type: 'CARD',\n tokenizationSpecification: {\n type: 'PAYMENT_GATEWAY',\n parameters: {\n gateway: config.GATEWAY,\n gatewayMerchantId: configuration.gatewayMerchantId\n }\n },\n parameters: {\n allowedAuthMethods: props.allowedAuthMethods,\n allowedCardNetworks: props.allowedCardNetworks,\n assuranceDetailsRequired: props.assuranceDetailsRequired,\n allowPrepaidCards: props.allowPrepaidCards,\n allowCreditCards: props.allowCreditCards,\n billingAddressRequired: props.billingAddressRequired,\n billingAddressParameters: props.billingAddressParameters\n }\n }\n ],\n emailRequired: props.emailRequired,\n shippingAddressRequired: props.shippingAddressRequired,\n shippingAddressParameters: props.shippingAddressParameters,\n shippingOptionRequired: props.shippingOptionRequired,\n shippingOptionParameters: props.shippingOptionParameters,\n callbackIntents: props.callbackIntents\n };\n}\n"],"names":["isReadyToPayRequest","allowedAuthMethods","allowedCardNetworks","existingPaymentMethodRequired","apiVersion","config","API_VERSION","apiVersionMinor","API_VERSION_MINOR","allowedPaymentMethods","type","parameters","tokenizationSpecification","getTransactionInfo","amount","countryCode","totalPriceStatus","props","formattedPrice","String","getDecimalAmount","value","currency","currencyCode","totalPrice","transactionInfo","initiatePaymentRequest","configuration","merchantInfo","merchantId","merchantName","merchantOrigin","authJwt","gateway","GATEWAY","gatewayMerchantId","assuranceDetailsRequired","allowPrepaidCards","allowCreditCards","billingAddressRequired","billingAddressParameters","emailRequired","shippingAddressRequired","shippingAddressParameters","shippingOptionRequired","shippingOptionParameters","callbackIntents"],"mappings":"yFAUO,SAASA,GAAoBC,mBAChCA,EAAkBC,oBAClBA,EAAmBC,8BACnBA,GAAgC,IAKhC,MAAO,CACHC,WAAYC,EAAOC,YACnBC,gBAAiBF,EAAOG,kBACxBC,sBAAuB,CACnB,CACIC,KAAM,OACNC,WAAY,CACRV,qBACAC,uBAEJU,0BAA2B,CACvBF,KAAM,kBACNC,WAAY,CAAC,KAIzBR,gCAER,CAQO,SAASU,GAAmBC,OAC/BA,EAAMC,YACNA,EAAc,KAAIC,iBAClBA,EAAmB,WAChBC,IAEH,MAAMC,EAAiBC,OAAOC,EAAiBN,EAAOO,MAAOP,EAAOQ,WAEpE,MAAO,CACHP,cACAQ,aAAcT,EAAOQ,SACrBE,WAAYN,EACZF,iBAAkBA,KACfC,EAAMQ,gBAEjB,CAEO,SAASC,GAAuBC,cAAEA,KAAkBV,GAAiCF,GACxF,MAAO,CACHX,WAAYC,EAAOC,YACnBC,gBAAiBF,EAAOG,kBACxBiB,gBAAiBZ,EAAmB,CAAEE,iBAAgBE,IACtDW,aAAc,CACVC,WAAYF,EAAcE,WAC1BC,aAAcH,EAAcG,gBACxBH,EAAcI,eAAiB,CAAEA,eAAgBJ,EAAcI,gBAAmB,CAAE,KACpFJ,EAAcK,QAAU,CAAEA,QAASL,EAAcK,SAAY,CAAE,GAEvEvB,sBAAuB,CACnB,CACIC,KAAM,OACNE,0BAA2B,CACvBF,KAAM,kBACNC,WAAY,CACRsB,QAAS5B,EAAO6B,QAChBC,kBAAmBR,EAAcQ,oBAGzCxB,WAAY,CACRV,mBAAoBgB,EAAMhB,mBAC1BC,oBAAqBe,EAAMf,oBAC3BkC,yBAA0BnB,EAAMmB,yBAChCC,kBAAmBpB,EAAMoB,kBACzBC,iBAAkBrB,EAAMqB,iBACxBC,uBAAwBtB,EAAMsB,uBAC9BC,yBAA0BvB,EAAMuB,4BAI5CC,cAAexB,EAAMwB,cACrBC,wBAAyBzB,EAAMyB,wBAC/BC,0BAA2B1B,EAAM0B,0BACjCC,uBAAwB3B,EAAM2B,uBAC9BC,yBAA0B5B,EAAM4B,yBAChCC,gBAAiB7B,EAAM6B,gBAE/B"}
1
+ {"version":3,"file":"requests.js","sources":["../../../../src/components/GooglePay/requests.ts"],"sourcesContent":["import { getDecimalAmount } from '../../utils/amount-util';\nimport config from './config';\nimport { GooglePaymentDataRequest, GooglePayConfiguration } from './types';\n\n/**\n * Configure your site's support for payment methods supported by the Google Pay API.\n *\n * @see {@link https://developers.google.com/pay/api/web/reference/object#IsReadyToPayRequest|isReadyToPayRequest}\n * @returns Google Pay API version, payment methods supported by the site\n */\nexport function isReadyToPayRequest({\n allowedAuthMethods,\n allowedCardNetworks,\n existingPaymentMethodRequired = false\n}: Pick<\n GooglePayConfiguration,\n 'allowedAuthMethods' | 'allowedCardNetworks' | 'existingPaymentMethodRequired'\n>): google.payments.api.IsReadyToPayRequest {\n return {\n apiVersion: config.API_VERSION,\n apiVersionMinor: config.API_VERSION_MINOR,\n allowedPaymentMethods: [\n {\n type: 'CARD',\n parameters: {\n allowedAuthMethods,\n allowedCardNetworks\n },\n tokenizationSpecification: {\n type: 'PAYMENT_GATEWAY',\n parameters: {}\n }\n }\n ],\n existingPaymentMethodRequired\n };\n}\n\n/**\n * Provide Google Pay API with a payment amount, currency, and amount status\n *\n * @see {@link https://developers.google.com/pay/api/web/reference/object#TransactionInfo|TransactionInfo}\n * @returns transaction info, suitable for use as transactionInfo property of PaymentDataRequest\n */\nexport function getTransactionInfo({\n amount,\n countryCode = 'US',\n totalPriceStatus = 'FINAL',\n ...props\n}: GooglePayConfiguration): google.payments.api.TransactionInfo {\n const formattedPrice = String(getDecimalAmount(amount.value, amount.currency));\n\n return {\n countryCode,\n currencyCode: amount.currency,\n totalPrice: formattedPrice,\n totalPriceStatus: totalPriceStatus,\n ...props.transactionInfo\n };\n}\n\nexport function initiatePaymentRequest({ configuration, ...props }: GooglePayConfiguration, countryCode: string): GooglePaymentDataRequest {\n return {\n apiVersion: config.API_VERSION,\n apiVersionMinor: config.API_VERSION_MINOR,\n transactionInfo: getTransactionInfo({ countryCode, ...props }),\n merchantInfo: {\n merchantId: configuration.merchantId,\n merchantName: configuration.merchantName,\n ...(configuration.merchantOrigin ? { merchantOrigin: configuration.merchantOrigin } : {}),\n ...(configuration.authJwt ? { authJwt: configuration.authJwt } : {})\n },\n allowedPaymentMethods: [\n {\n type: 'CARD',\n tokenizationSpecification: {\n type: 'PAYMENT_GATEWAY',\n parameters: {\n gateway: config.GATEWAY,\n gatewayMerchantId: configuration.gatewayMerchantId\n }\n },\n parameters: {\n allowedAuthMethods: props.allowedAuthMethods,\n allowedCardNetworks: props.allowedCardNetworks,\n assuranceDetailsRequired: props.assuranceDetailsRequired,\n allowPrepaidCards: props.allowPrepaidCards,\n allowCreditCards: props.allowCreditCards,\n billingAddressRequired: props.billingAddressRequired,\n billingAddressParameters: props.billingAddressParameters\n }\n }\n ],\n emailRequired: props.emailRequired,\n shippingAddressRequired: props.shippingAddressRequired,\n shippingAddressParameters: props.shippingAddressParameters,\n shippingOptionRequired: props.shippingOptionRequired,\n shippingOptionParameters: props.shippingOptionParameters,\n callbackIntents: props.callbackIntents\n };\n}\n"],"names":["isReadyToPayRequest","allowedAuthMethods","allowedCardNetworks","existingPaymentMethodRequired","apiVersion","config","API_VERSION","apiVersionMinor","API_VERSION_MINOR","allowedPaymentMethods","type","parameters","tokenizationSpecification","getTransactionInfo","amount","countryCode","totalPriceStatus","props","formattedPrice","String","getDecimalAmount","value","currency","currencyCode","totalPrice","transactionInfo","initiatePaymentRequest","configuration","merchantInfo","merchantId","merchantName","merchantOrigin","authJwt","gateway","GATEWAY","gatewayMerchantId","assuranceDetailsRequired","allowPrepaidCards","allowCreditCards","billingAddressRequired","billingAddressParameters","emailRequired","shippingAddressRequired","shippingAddressParameters","shippingOptionRequired","shippingOptionParameters","callbackIntents"],"mappings":"yFAUO,SAASA,GAAoBC,mBAChCA,EAAkBC,oBAClBA,EAAmBC,8BACnBA,GAAgC,IAKhC,MAAO,CACHC,WAAYC,EAAOC,YACnBC,gBAAiBF,EAAOG,kBACxBC,sBAAuB,CACnB,CACIC,KAAM,OACNC,WAAY,CACRV,qBACAC,uBAEJU,0BAA2B,CACvBF,KAAM,kBACNC,WAAY,CAAC,KAIzBR,gCAER,CAQO,SAASU,GAAmBC,OAC/BA,EAAMC,YACNA,EAAc,KAAIC,iBAClBA,EAAmB,WAChBC,IAEH,MAAMC,EAAiBC,OAAOC,EAAiBN,EAAOO,MAAOP,EAAOQ,WAEpE,MAAO,CACHP,cACAQ,aAAcT,EAAOQ,SACrBE,WAAYN,EACZF,iBAAkBA,KACfC,EAAMQ,gBAEjB,CAEO,SAASC,GAAuBC,cAAEA,KAAkBV,GAAiCF,GACxF,MAAO,CACHX,WAAYC,EAAOC,YACnBC,gBAAiBF,EAAOG,kBACxBiB,gBAAiBZ,EAAmB,CAAEE,iBAAgBE,IACtDW,aAAc,CACVC,WAAYF,EAAcE,WAC1BC,aAAcH,EAAcG,gBACxBH,EAAcI,eAAiB,CAAEA,eAAgBJ,EAAcI,gBAAmB,CAAE,KACpFJ,EAAcK,QAAU,CAAEA,QAASL,EAAcK,SAAY,CAAE,GAEvEvB,sBAAuB,CACnB,CACIC,KAAM,OACNE,0BAA2B,CACvBF,KAAM,kBACNC,WAAY,CACRsB,QAAS5B,EAAO6B,QAChBC,kBAAmBR,EAAcQ,oBAGzCxB,WAAY,CACRV,mBAAoBgB,EAAMhB,mBAC1BC,oBAAqBe,EAAMf,oBAC3BkC,yBAA0BnB,EAAMmB,yBAChCC,kBAAmBpB,EAAMoB,kBACzBC,iBAAkBrB,EAAMqB,iBACxBC,uBAAwBtB,EAAMsB,uBAC9BC,yBAA0BvB,EAAMuB,4BAI5CC,cAAexB,EAAMwB,cACrBC,wBAAyBzB,EAAMyB,wBAC/BC,0BAA2B1B,EAAM0B,0BACjCC,uBAAwB3B,EAAM2B,uBAC9BC,yBAA0B5B,EAAM4B,yBAChCC,gBAAiB7B,EAAM6B,gBAE/B"}
@@ -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{CoreProvider as o}from"../../core/Context/CoreProvider.js";import i from"../internal/PayButton/PayButton.js";import{KlarnaContainer as n}from"./components/KlarnaContainer/KlarnaContainer.js";import{TxVariants as s}from"../tx-variants.js";class a extends e{static type=s.klarna;static txVariants=[s.klarna,s.klarna_account,s.klarna_paynow];static defaultProps={useKlarnaWidget:!1};constructor(t,e){super(t,e),this.onComplete=this.onComplete.bind(this),this.updateWithAction=this.updateWithAction.bind(this),this.submit=this.submit.bind(this),this.onLoaded=this.onLoaded.bind(this)}get isValid(){return!0}formatData(){return{paymentMethod:{type:this.type,...this.props.useKlarnaWidget?{subtype:"sdk"}:{}}}}payButton=e=>t(i,{amount:this.props.amount,onClick:this.submit,...e});updateWithAction(t){if(t.paymentMethodType!==this.type)throw new Error("Invalid Action");this.componentRef.setAction(t)}onLoaded(){this.setElementStatus("ready")}render(){return t(o,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},t(n,{...this.props,ref:t=>{this.componentRef=t},displayName:this.displayName,onComplete:t=>this.handleAdditionalDetails(t),onError:this.props.onError,payButton:this.payButton,onLoaded:this.onLoaded}))}}export{a as default};
1
+ import{createElement as t}from"../../external/preact/dist/preact.js";import{UIElement as e}from"../internal/UIElement/UIElement.js";import{CoreProvider as o}from"../../core/Context/CoreProvider.js";import n from"../internal/PayButton/PayButton.js";import{KlarnaContainer as i}from"./components/KlarnaContainer/KlarnaContainer.js";import{TxVariants as s}from"../tx-variants.js";class a extends e{static type=s.klarna;static txVariants=[s.klarna,s.klarna_account,s.klarna_paynow,s.klarna_b2b];static defaultProps={useKlarnaWidget:!1};constructor(t,e){super(t,e),this.onComplete=this.onComplete.bind(this),this.updateWithAction=this.updateWithAction.bind(this),this.submit=this.submit.bind(this),this.onLoaded=this.onLoaded.bind(this)}get isValid(){return!0}formatData(){return{paymentMethod:{type:this.type,...this.props.useKlarnaWidget?{subtype:"sdk"}:{}}}}payButton=e=>t(n,{amount:this.props.amount,onClick:this.submit,...e});updateWithAction(t){if(t.paymentMethodType!==this.type)throw new Error("Invalid Action");this.componentRef.setAction(t)}onLoaded(){this.setElementStatus("ready")}render(){return t(o,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},t(i,{...this.props,ref:t=>{this.componentRef=t},displayName:this.displayName,onComplete:t=>this.handleAdditionalDetails(t),onError:this.props.onError,payButton:this.payButton,onLoaded:this.onLoaded}))}}export{a as default};
2
2
  //# sourceMappingURL=KlarnaPayments.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"KlarnaPayments.js","sources":["../../../../src/components/Klarna/KlarnaPayments.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport { KlarnConfiguration } from './types';\nimport PayButton from '../internal/PayButton';\nimport { KlarnaContainer } from './components/KlarnaContainer/KlarnaContainer';\nimport { PaymentAction } from '../../types/global-types';\nimport { TxVariants } from '../tx-variants';\nimport type { ICore } from '../../core/types';\n\nclass KlarnaPayments extends UIElement<KlarnConfiguration> {\n public static type = TxVariants.klarna;\n public static txVariants = [TxVariants.klarna, TxVariants.klarna_account, TxVariants.klarna_paynow];\n\n protected static defaultProps = {\n useKlarnaWidget: false\n };\n\n constructor(checkout: ICore, props?: KlarnConfiguration) {\n super(checkout, props);\n\n this.onComplete = this.onComplete.bind(this);\n this.updateWithAction = this.updateWithAction.bind(this);\n this.submit = this.submit.bind(this);\n this.onLoaded = this.onLoaded.bind(this);\n }\n get isValid() {\n return true;\n }\n\n protected formatData() {\n return {\n paymentMethod: {\n type: this.type,\n ...(this.props.useKlarnaWidget ? { subtype: 'sdk' } : {})\n }\n };\n }\n\n public payButton = props => {\n return <PayButton amount={this.props.amount} onClick={this.submit} {...props} />;\n };\n\n updateWithAction(action: PaymentAction): void {\n if (action.paymentMethodType !== this.type) throw new Error('Invalid Action');\n this.componentRef.setAction(action);\n }\n\n onLoaded() {\n // When action/widget is loaded, set the 'drop-in' back to ready\n this.setElementStatus('ready');\n }\n\n render() {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <KlarnaContainer\n {...this.props}\n ref={ref => {\n this.componentRef = ref;\n }}\n displayName={this.displayName}\n onComplete={state => this.handleAdditionalDetails(state)}\n onError={this.props.onError}\n payButton={this.payButton}\n onLoaded={this.onLoaded}\n />\n </CoreProvider>\n );\n }\n}\n\nexport default KlarnaPayments;\n"],"names":["KlarnaPayments","UIElement","static","TxVariants","klarna","klarna_account","klarna_paynow","useKlarnaWidget","constructor","checkout","props","super","this","onComplete","bind","updateWithAction","submit","onLoaded","isValid","formatData","paymentMethod","type","subtype","payButton","h","PayButton","amount","onClick","action","paymentMethodType","Error","componentRef","setAction","setElementStatus","render","CoreProvider","i18n","loadingContext","resources","KlarnaContainer","ref","displayName","state","handleAdditionalDetails","onError"],"mappings":"yXAUA,MAAMA,UAAuBC,EACzBC,YAAqBC,EAAWC,OAChCF,kBAA2B,CAACC,EAAWC,OAAQD,EAAWE,eAAgBF,EAAWG,eAErFJ,oBAAgC,CAC5BK,iBAAiB,GAGrBC,WAAAA,CAAYC,EAAiBC,GACzBC,MAAMF,EAAUC,GAEhBE,KAAKC,WAAaD,KAAKC,WAAWC,KAAKF,MACvCA,KAAKG,iBAAmBH,KAAKG,iBAAiBD,KAAKF,MACnDA,KAAKI,OAASJ,KAAKI,OAAOF,KAAKF,MAC/BA,KAAKK,SAAWL,KAAKK,SAASH,KAAKF,KACvC,CACA,WAAIM,GACA,OAAO,CACX,CAEUC,UAAAA,GACN,MAAO,CACHC,cAAe,CACXC,KAAMT,KAAKS,QACPT,KAAKF,MAAMH,gBAAkB,CAAEe,QAAS,OAAU,CAAE,GAGpE,CAEOC,UAAYb,GACRc,EAACC,EAAAA,CAAUC,OAAQd,KAAKF,MAAMgB,OAAQC,QAASf,KAAKI,UAAYN,IAG3EK,gBAAAA,CAAiBa,GACb,GAAIA,EAAOC,oBAAsBjB,KAAKS,KAAM,MAAM,IAAIS,MAAM,kBAC5DlB,KAAKmB,aAAaC,UAAUJ,EAChC,CAEAX,QAAAA,GAEIL,KAAKqB,iBAAiB,QAC1B,CAEAC,MAAAA,GACI,OACIV,EAACW,EAAAA,CAAaC,KAAMxB,KAAKF,MAAM0B,KAAMC,eAAgBzB,KAAKF,MAAM2B,eAAgBC,UAAW1B,KAAK0B,WAC5Fd,EAACe,EAAAA,IACO3B,KAAKF,MACT8B,IAAKA,IACD5B,KAAKmB,aAAeS,CAAAA,EAExBC,YAAa7B,KAAK6B,YAClB5B,WAAY6B,GAAS9B,KAAK+B,wBAAwBD,GAClDE,QAAShC,KAAKF,MAAMkC,QACpBrB,UAAWX,KAAKW,UAChBN,SAAUL,KAAKK,WAI/B"}
1
+ {"version":3,"file":"KlarnaPayments.js","sources":["../../../../src/components/Klarna/KlarnaPayments.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport { KlarnConfiguration } from './types';\nimport PayButton from '../internal/PayButton';\nimport { KlarnaContainer } from './components/KlarnaContainer/KlarnaContainer';\nimport { PaymentAction } from '../../types/global-types';\nimport { TxVariants } from '../tx-variants';\nimport type { ICore } from '../../core/types';\n\nclass KlarnaPayments extends UIElement<KlarnConfiguration> {\n public static type = TxVariants.klarna;\n public static txVariants = [TxVariants.klarna, TxVariants.klarna_account, TxVariants.klarna_paynow, TxVariants.klarna_b2b];\n\n protected static defaultProps = {\n useKlarnaWidget: false\n };\n\n constructor(checkout: ICore, props?: KlarnConfiguration) {\n super(checkout, props);\n\n this.onComplete = this.onComplete.bind(this);\n this.updateWithAction = this.updateWithAction.bind(this);\n this.submit = this.submit.bind(this);\n this.onLoaded = this.onLoaded.bind(this);\n }\n get isValid() {\n return true;\n }\n\n protected formatData() {\n return {\n paymentMethod: {\n type: this.type,\n ...(this.props.useKlarnaWidget ? { subtype: 'sdk' } : {})\n }\n };\n }\n\n public payButton = props => {\n return <PayButton amount={this.props.amount} onClick={this.submit} {...props} />;\n };\n\n updateWithAction(action: PaymentAction): void {\n if (action.paymentMethodType !== this.type) throw new Error('Invalid Action');\n this.componentRef.setAction(action);\n }\n\n onLoaded() {\n // When action/widget is loaded, set the 'drop-in' back to ready\n this.setElementStatus('ready');\n }\n\n render() {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <KlarnaContainer\n {...this.props}\n ref={ref => {\n this.componentRef = ref;\n }}\n displayName={this.displayName}\n onComplete={state => this.handleAdditionalDetails(state)}\n onError={this.props.onError}\n payButton={this.payButton}\n onLoaded={this.onLoaded}\n />\n </CoreProvider>\n );\n }\n}\n\nexport default KlarnaPayments;\n"],"names":["KlarnaPayments","UIElement","static","TxVariants","klarna","klarna_account","klarna_paynow","klarna_b2b","useKlarnaWidget","constructor","checkout","props","super","this","onComplete","bind","updateWithAction","submit","onLoaded","isValid","formatData","paymentMethod","type","subtype","payButton","h","PayButton","amount","onClick","action","paymentMethodType","Error","componentRef","setAction","setElementStatus","render","CoreProvider","i18n","loadingContext","resources","KlarnaContainer","ref","displayName","state","handleAdditionalDetails","onError"],"mappings":"yXAUA,MAAMA,UAAuBC,EACzBC,YAAqBC,EAAWC,OAChCF,kBAA2B,CAACC,EAAWC,OAAQD,EAAWE,eAAgBF,EAAWG,cAAeH,EAAWI,YAE/GL,oBAAgC,CAC5BM,iBAAiB,GAGrBC,WAAAA,CAAYC,EAAiBC,GACzBC,MAAMF,EAAUC,GAEhBE,KAAKC,WAAaD,KAAKC,WAAWC,KAAKF,MACvCA,KAAKG,iBAAmBH,KAAKG,iBAAiBD,KAAKF,MACnDA,KAAKI,OAASJ,KAAKI,OAAOF,KAAKF,MAC/BA,KAAKK,SAAWL,KAAKK,SAASH,KAAKF,KACvC,CACA,WAAIM,GACA,OAAO,CACX,CAEUC,UAAAA,GACN,MAAO,CACHC,cAAe,CACXC,KAAMT,KAAKS,QACPT,KAAKF,MAAMH,gBAAkB,CAAEe,QAAS,OAAU,CAAE,GAGpE,CAEOC,UAAYb,GACRc,EAACC,EAAAA,CAAUC,OAAQd,KAAKF,MAAMgB,OAAQC,QAASf,KAAKI,UAAYN,IAG3EK,gBAAAA,CAAiBa,GACb,GAAIA,EAAOC,oBAAsBjB,KAAKS,KAAM,MAAM,IAAIS,MAAM,kBAC5DlB,KAAKmB,aAAaC,UAAUJ,EAChC,CAEAX,QAAAA,GAEIL,KAAKqB,iBAAiB,QAC1B,CAEAC,MAAAA,GACI,OACIV,EAACW,EAAAA,CAAaC,KAAMxB,KAAKF,MAAM0B,KAAMC,eAAgBzB,KAAKF,MAAM2B,eAAgBC,UAAW1B,KAAK0B,WAC5Fd,EAACe,EAAAA,IACO3B,KAAKF,MACT8B,IAAKA,IACD5B,KAAKmB,aAAeS,CAAAA,EAExBC,YAAa7B,KAAK6B,YAClB5B,WAAY6B,GAAS9B,KAAK+B,wBAAwBD,GAClDE,QAAShC,KAAKF,MAAMkC,QACpBrB,UAAWX,KAAKW,UAChBN,SAAUL,KAAKK,WAI/B"}
@@ -1,2 +1,2 @@
1
- import t from"../../../../utils/Script.js";import{useRef as a,useState as e,useEffect as o}from"../../../../external/preact/hooks/dist/hooks.js";import{createElement as n}from"../../../../external/preact/dist/preact.js";import{KLARNA_WIDGET_URL as r}from"../../constants.js";function s({sdkData:s,paymentMethodType:i,payButton:c,...d}){const m=a(null),[l,p]=e("ready"),y=()=>{p("error"),d.onComplete({data:{paymentData:d.paymentData,details:{}}})},u=()=>{p("loading");try{window.Klarna.Payments.authorize({payment_method_category:s.payment_method_category},(function(t){!0===t.approved&&!0===t.show_form?(p("success"),d.onComplete({data:{paymentData:d.paymentData,details:{token:t.authorization_token,authorization_token:t.authorization_token}}})):t.approved||!0!==t.show_form?y():(p("ready"),d.onError(t))}))}catch(t){y()}};return o((()=>{window.klarnaAsyncCallback=function(){window.Klarna.Payments.init({client_token:s.client_token}),window.Klarna.Payments.load({container:m.current,payment_method_category:s.payment_method_category},(function(t){!t.show_form||t.error?y():d.onLoaded()}))};const a=new t(r);return a.load(),()=>{a.remove()}}),[]),"error"!==l&&"success"!==l?n("div",{className:"adyen-checkout__klarna-widget"},n("div",{ref:m}),c({status:l,disabled:"loading"===l,onClick:u})):null}export{s as KlarnaWidget};
1
+ import t from"../../../../utils/Script.js";import{useRef as a,useState as e,useEffect as o}from"../../../../external/preact/hooks/dist/hooks.js";import{createElement as n}from"../../../../external/preact/dist/preact.js";import{KLARNA_WIDGET_URL as r}from"../../constants.js";function s({sdkData:s,paymentMethodType:i,payButton:c,...d}){const m=a(null),[l,p]=e("ready"),y=()=>{p("error"),d.onComplete({data:{paymentData:d.paymentData,details:{}}})},u=()=>{p("loading");try{window.Klarna.Payments.authorize({payment_method_category:s.payment_method_category},(function(t){!0===t.approved&&!0===t.show_form?(p("success"),d.onComplete({data:{paymentData:d.paymentData,details:{authorization_token:t.authorization_token}}})):t.approved||!0!==t.show_form?y():(p("ready"),d.onError(t))}))}catch(t){y()}};return o((()=>{window.klarnaAsyncCallback=function(){window.Klarna.Payments.init({client_token:s.client_token}),window.Klarna.Payments.load({container:m.current,payment_method_category:s.payment_method_category},(function(t){!t.show_form||t.error?y():d.onLoaded()}))};const a=new t(r);return a.load(),()=>{a.remove()}}),[]),"error"!==l&&"success"!==l?n("div",{className:"adyen-checkout__klarna-widget"},n("div",{ref:m}),c({status:l,disabled:"loading"===l,onClick:u})):null}export{s as KlarnaWidget};
2
2
  //# sourceMappingURL=KlarnaWidget.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"KlarnaWidget.js","sources":["../../../../../../src/components/Klarna/components/KlarnaWidget/KlarnaWidget.tsx"],"sourcesContent":["import Script from '../../../../utils/Script';\nimport { useEffect, useRef, useState } from 'preact/hooks';\nimport { h } from 'preact';\nimport { KlarnaWidgetAuthorizeResponse, KlarnaWidgetProps } from '../../types';\nimport { KLARNA_WIDGET_URL } from '../../constants';\nimport './KlarnaWidget.scss';\n\nexport function KlarnaWidget({ sdkData, paymentMethodType, payButton, ...props }: KlarnaWidgetProps) {\n const klarnaWidgetRef = useRef(null);\n const [status, setStatus] = useState('ready');\n\n const handleError = () => {\n setStatus('error');\n props.onComplete({\n data: {\n paymentData: props.paymentData,\n details: {}\n }\n });\n };\n\n const initializeKlarnaWidget = () => {\n window.Klarna.Payments.init({\n client_token: sdkData.client_token\n });\n\n window.Klarna.Payments.load(\n {\n container: klarnaWidgetRef.current,\n payment_method_category: sdkData.payment_method_category\n },\n function (res) {\n // If show_form: true is received together with an error, something fixable is wrong and the consumer\n // needs to take action before moving forward\n // If show_form: false, the payment method in the loaded widget will not be offered for this order\n // based on Klarna’s pre-assessment.\n if (!res.show_form || !!res.error) {\n handleError();\n } else {\n props.onLoaded();\n }\n }\n );\n };\n\n const authorizeKlarna = () => {\n setStatus('loading');\n try {\n window.Klarna.Payments.authorize(\n {\n payment_method_category: sdkData.payment_method_category\n },\n function (res: KlarnaWidgetAuthorizeResponse) {\n if (res.approved === true && res.show_form === true) {\n // Klarna has approved the authorization of credit for this order.\n setStatus('success');\n props.onComplete({\n data: {\n paymentData: props.paymentData,\n details: {\n // For the backward compatibility we need to pass both 'token' and 'authorization_token'\n token: res.authorization_token,\n authorization_token: res.authorization_token\n }\n }\n });\n } else if (!res.approved && res.show_form === true) {\n // Fixable error\n setStatus('ready');\n props.onError(res);\n } else {\n // The purchase is declined. The widget should be hidden and the user\n // should select another payment method.\n handleError();\n }\n }\n );\n } catch (e) {\n handleError();\n }\n };\n\n // Add Klarna Payments Widget SDK\n useEffect(() => {\n window.klarnaAsyncCallback = function () {\n initializeKlarnaWidget();\n };\n\n const script = new Script(KLARNA_WIDGET_URL);\n script.load();\n\n return () => {\n script.remove();\n };\n }, []);\n\n if (status !== 'error' && status !== 'success') {\n return (\n <div className=\"adyen-checkout__klarna-widget\">\n <div ref={klarnaWidgetRef} />\n {payButton({ status, disabled: status === 'loading', onClick: authorizeKlarna })}\n </div>\n );\n }\n\n return null;\n}\n"],"names":["KlarnaWidget","sdkData","paymentMethodType","payButton","props","klarnaWidgetRef","useRef","status","setStatus","useState","handleError","onComplete","data","paymentData","details","authorizeKlarna","window","Klarna","Payments","authorize","payment_method_category","res","approved","show_form","token","authorization_token","onError","e","useEffect","klarnaAsyncCallback","init","client_token","load","container","current","error","onLoaded","script","Script","KLARNA_WIDGET_URL","remove","h","div","className","ref","disabled","onClick"],"mappings":"mRAOO,SAASA,GAAaC,QAAEA,EAAOC,kBAAEA,EAAiBC,UAAEA,KAAcC,IACrE,MAAMC,EAAkBC,EAAO,OACxBC,EAAQC,GAAaC,EAAS,SAE/BC,EAAc,KAChBF,EAAU,SACVJ,EAAMO,WAAW,CACbC,KAAM,CACFC,YAAaT,EAAMS,YACnBC,QAAS,CAAC,IAElB,EA2BEC,EAAkB,KACpBP,EAAU,WACV,IACIQ,OAAOC,OAAOC,SAASC,UACnB,CACIC,wBAAyBnB,EAAQmB,0BAErC,SAAUC,IACe,IAAjBA,EAAIC,WAAuC,IAAlBD,EAAIE,WAE7Bf,EAAU,WACVJ,EAAMO,WAAW,CACbC,KAAM,CACFC,YAAaT,EAAMS,YACnBC,QAAS,CAELU,MAAOH,EAAII,oBACXA,oBAAqBJ,EAAII,yBAI7BJ,EAAIC,WAA8B,IAAlBD,EAAIE,UAO5Bb,KALAF,EAAU,SACVJ,EAAMsB,QAAQL,GAMtB,GAER,CAAE,MAAOM,GACLjB,GACJ,GAiBJ,OAbAkB,GAAU,KACNZ,OAAOa,oBAAsB,WA9D7Bb,OAAOC,OAAOC,SAASY,KAAK,CACxBC,aAAc9B,EAAQ8B,eAG1Bf,OAAOC,OAAOC,SAASc,KACnB,CACIC,UAAW5B,EAAgB6B,QAC3Bd,wBAAyBnB,EAAQmB,0BAErC,SAAUC,IAKDA,EAAIE,WAAeF,EAAIc,MACxBzB,IAEAN,EAAMgC,UAEd,GA6CJ,EAEA,MAAMC,EAAS,IAAIC,EAAOC,GAG1B,OAFAF,EAAOL,OAEA,KACHK,EAAOG,QAAM,CACjB,GACD,IAEY,UAAXjC,GAAiC,YAAXA,EAElBkC,EAACC,MAAAA,CAAIC,UAAU,iCACXF,EAACC,MAAAA,CAAIE,IAAKvC,IACTF,EAAU,CAAEI,SAAQsC,SAAqB,YAAXtC,EAAsBuC,QAAS/B,KAKnE,IACX"}
1
+ {"version":3,"file":"KlarnaWidget.js","sources":["../../../../../../src/components/Klarna/components/KlarnaWidget/KlarnaWidget.tsx"],"sourcesContent":["import Script from '../../../../utils/Script';\nimport { useEffect, useRef, useState } from 'preact/hooks';\nimport { h } from 'preact';\nimport { KlarnaWidgetAuthorizeResponse, KlarnaWidgetProps } from '../../types';\nimport { KLARNA_WIDGET_URL } from '../../constants';\nimport './KlarnaWidget.scss';\n\nexport function KlarnaWidget({ sdkData, paymentMethodType, payButton, ...props }: KlarnaWidgetProps) {\n const klarnaWidgetRef = useRef(null);\n const [status, setStatus] = useState('ready');\n\n const handleError = () => {\n setStatus('error');\n props.onComplete({\n data: {\n paymentData: props.paymentData,\n details: {}\n }\n });\n };\n\n const initializeKlarnaWidget = () => {\n window.Klarna.Payments.init({\n client_token: sdkData.client_token\n });\n\n window.Klarna.Payments.load(\n {\n container: klarnaWidgetRef.current,\n payment_method_category: sdkData.payment_method_category\n },\n function (res) {\n // If show_form: true is received together with an error, something fixable is wrong and the consumer\n // needs to take action before moving forward\n // If show_form: false, the payment method in the loaded widget will not be offered for this order\n // based on Klarna’s pre-assessment.\n if (!res.show_form || !!res.error) {\n handleError();\n } else {\n props.onLoaded();\n }\n }\n );\n };\n\n const authorizeKlarna = () => {\n setStatus('loading');\n try {\n window.Klarna.Payments.authorize(\n {\n payment_method_category: sdkData.payment_method_category\n },\n function (res: KlarnaWidgetAuthorizeResponse) {\n if (res.approved === true && res.show_form === true) {\n // Klarna has approved the authorization of credit for this order.\n setStatus('success');\n props.onComplete({\n data: {\n paymentData: props.paymentData,\n details: {\n authorization_token: res.authorization_token\n }\n }\n });\n } else if (!res.approved && res.show_form === true) {\n // Fixable error\n setStatus('ready');\n props.onError(res);\n } else {\n // The purchase is declined. The widget should be hidden and the user\n // should select another payment method.\n handleError();\n }\n }\n );\n } catch (e) {\n handleError();\n }\n };\n\n // Add Klarna Payments Widget SDK\n useEffect(() => {\n window.klarnaAsyncCallback = function () {\n initializeKlarnaWidget();\n };\n\n const script = new Script(KLARNA_WIDGET_URL);\n void script.load();\n\n return () => {\n script.remove();\n };\n }, []);\n\n if (status !== 'error' && status !== 'success') {\n return (\n <div className=\"adyen-checkout__klarna-widget\">\n <div ref={klarnaWidgetRef} />\n {payButton({ status, disabled: status === 'loading', onClick: authorizeKlarna })}\n </div>\n );\n }\n\n return null;\n}\n"],"names":["KlarnaWidget","sdkData","paymentMethodType","payButton","props","klarnaWidgetRef","useRef","status","setStatus","useState","handleError","onComplete","data","paymentData","details","authorizeKlarna","window","Klarna","Payments","authorize","payment_method_category","res","approved","show_form","authorization_token","onError","e","useEffect","klarnaAsyncCallback","init","client_token","load","container","current","error","onLoaded","script","Script","KLARNA_WIDGET_URL","remove","h","div","className","ref","disabled","onClick"],"mappings":"mRAOO,SAASA,GAAaC,QAAEA,EAAOC,kBAAEA,EAAiBC,UAAEA,KAAcC,IACrE,MAAMC,EAAkBC,EAAO,OACxBC,EAAQC,GAAaC,EAAS,SAE/BC,EAAc,KAChBF,EAAU,SACVJ,EAAMO,WAAW,CACbC,KAAM,CACFC,YAAaT,EAAMS,YACnBC,QAAS,CAAC,IAElB,EA2BEC,EAAkB,KACpBP,EAAU,WACV,IACIQ,OAAOC,OAAOC,SAASC,UACnB,CACIC,wBAAyBnB,EAAQmB,0BAErC,SAAUC,IACe,IAAjBA,EAAIC,WAAuC,IAAlBD,EAAIE,WAE7Bf,EAAU,WACVJ,EAAMO,WAAW,CACbC,KAAM,CACFC,YAAaT,EAAMS,YACnBC,QAAS,CACLU,oBAAqBH,EAAIG,yBAI7BH,EAAIC,WAA8B,IAAlBD,EAAIE,UAO5Bb,KALAF,EAAU,SACVJ,EAAMqB,QAAQJ,GAMtB,GAER,CAAE,MAAOK,GACLhB,GACJ,GAiBJ,OAbAiB,GAAU,KACNX,OAAOY,oBAAsB,WA5D7BZ,OAAOC,OAAOC,SAASW,KAAK,CACxBC,aAAc7B,EAAQ6B,eAG1Bd,OAAOC,OAAOC,SAASa,KACnB,CACIC,UAAW3B,EAAgB4B,QAC3Bb,wBAAyBnB,EAAQmB,0BAErC,SAAUC,IAKDA,EAAIE,WAAeF,EAAIa,MACxBxB,IAEAN,EAAM+B,UAEd,GA2CJ,EAEA,MAAMC,EAAS,IAAIC,EAAOC,GAG1B,OAFKF,EAAOL,OAEL,KACHK,EAAOG,QAAM,CACjB,GACD,IAEY,UAAXhC,GAAiC,YAAXA,EAElBiC,EAACC,MAAAA,CAAIC,UAAU,iCACXF,EAACC,MAAAA,CAAIE,IAAKtC,IACTF,EAAU,CAAEI,SAAQqC,SAAqB,YAAXrC,EAAsBsC,QAAS9B,KAKnE,IACX"}
@@ -1,2 +1,2 @@
1
- import e from"../../Card/components/CardInput/components/DataSfSpan.js";import r from"../../../external/classnames/index.js";import t from"../../internal/FormFields/Field/Field.js";import{createElement as a}from"../../../external/preact/dist/preact.js";import{alternativeLabelContent as n}from"../../Card/components/CardInput/components/IframeLabelAlternative.js";const p=({i18n:p,sfpState:c,focusedElement:i,setFocusOn:o})=>a(t,{label:p.get("giftcard.expiryDate.label"),classNameModifiers:["expireDate","50"],errorMessage:c.errors.encryptedExpiryDate&&p.get(c.errors.encryptedExpiryDate),focused:"encryptedExpiryDate"===i,onFocusField:()=>o("encryptedExpiryDate"),dir:"ltr",name:"encryptedExpiryDate",contextVisibleToScreenReader:!1,useLabelElement:!1,renderAlternativeToLabel:n},a(e,{encryptedFieldType:"encryptedExpiryDate",className:r("adyen-checkout__input","adyen-checkout__input--small","adyen-checkout__card__exp-date__input",{"adyen-checkout__input--error":c.errors.encryptedExpiryDate,"adyen-checkout__input--focus":"encryptedExpiryDate"===i,"adyen-checkout__input--valid":!!c.valid.encryptedExpiryMonth&&!!c.valid.encryptedExpiryYear})}));export{p as MealVoucherExpiryField};
1
+ import e from"../../Card/components/CardInput/components/DataSfSpan.js";import r from"../../../external/classnames/index.js";import t from"../../internal/FormFields/Field/Field.js";import{createElement as a}from"../../../external/preact/dist/preact.js";import{alternativeLabelContent as n}from"../../Card/components/CardInput/components/FieldLabelAlternative.js";const p=({i18n:p,sfpState:i,focusedElement:c,setFocusOn:o})=>a(t,{label:p.get("giftcard.expiryDate.label"),classNameModifiers:["expireDate","50"],errorMessage:i.errors.encryptedExpiryDate&&p.get(i.errors.encryptedExpiryDate),focused:"encryptedExpiryDate"===c,onFocusField:()=>o("encryptedExpiryDate"),dir:"ltr",name:"encryptedExpiryDate",contextVisibleToScreenReader:!1,useLabelElement:!1,renderAlternativeToLabel:n},a(e,{encryptedFieldType:"encryptedExpiryDate",className:r("adyen-checkout__input","adyen-checkout__input--small","adyen-checkout__card__exp-date__input",{"adyen-checkout__input--error":i.errors.encryptedExpiryDate,"adyen-checkout__input--focus":"encryptedExpiryDate"===c,"adyen-checkout__input--valid":!!i.valid.encryptedExpiryMonth&&!!i.valid.encryptedExpiryYear})}));export{p as MealVoucherExpiryField};
2
2
  //# sourceMappingURL=MealVoucherExpiryField.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MealVoucherExpiryField.js","sources":["../../../../../src/components/MealVoucherFR/components/MealVoucherExpiryField.tsx"],"sourcesContent":["import DataSfSpan from '../../Card/components/CardInput/components/DataSfSpan';\nimport classNames from 'classnames';\nimport Field from '../../internal/FormFields/Field';\nimport { h } from 'preact';\nimport { GiftcardFieldProps } from '../../Giftcard/components/types';\nimport { alternativeLabelContent } from '../../Card/components/CardInput/components/IframeLabelAlternative';\n\nexport const MealVoucherExpiryField = ({ i18n, sfpState, focusedElement, setFocusOn }: GiftcardFieldProps) => {\n return (\n <Field\n label={i18n.get('giftcard.expiryDate.label')}\n classNameModifiers={['expireDate', '50']}\n errorMessage={sfpState.errors.encryptedExpiryDate && i18n.get(sfpState.errors.encryptedExpiryDate)}\n focused={focusedElement === 'encryptedExpiryDate'}\n onFocusField={() => setFocusOn('encryptedExpiryDate')}\n dir={'ltr'}\n name={'encryptedExpiryDate'}\n contextVisibleToScreenReader={false}\n useLabelElement={false}\n renderAlternativeToLabel={alternativeLabelContent}\n >\n <DataSfSpan\n encryptedFieldType={'encryptedExpiryDate'}\n className={classNames('adyen-checkout__input', 'adyen-checkout__input--small', 'adyen-checkout__card__exp-date__input', {\n 'adyen-checkout__input--error': sfpState.errors.encryptedExpiryDate,\n 'adyen-checkout__input--focus': focusedElement === 'encryptedExpiryDate',\n 'adyen-checkout__input--valid': !!sfpState.valid.encryptedExpiryMonth && !!sfpState.valid.encryptedExpiryYear\n })}\n />\n </Field>\n );\n};\n"],"names":["MealVoucherExpiryField","i18n","sfpState","focusedElement","setFocusOn","h","Field","label","get","classNameModifiers","errorMessage","errors","encryptedExpiryDate","focused","onFocusField","dir","name","contextVisibleToScreenReader","useLabelElement","renderAlternativeToLabel","alternativeLabelContent","DataSfSpan","encryptedFieldType","className","classNames","valid","encryptedExpiryMonth","encryptedExpiryYear"],"mappings":"4WAOO,MAAMA,EAAyB,EAAGC,OAAMC,WAAUC,iBAAgBC,gBAEjEC,EAACC,EAAAA,CACGC,MAAON,EAAKO,IAAI,6BAChBC,mBAAoB,CAAC,aAAc,MACnCC,aAAcR,EAASS,OAAOC,qBAAuBX,EAAKO,IAAIN,EAASS,OAAOC,qBAC9EC,QAA4B,wBAAnBV,EACTW,aAAc,IAAMV,EAAW,uBAC/BW,IAAK,MACLC,KAAM,sBACNC,8BAA8B,EAC9BC,iBAAiB,EACjBC,yBAA0BC,GAE1Bf,EAACgB,EAAAA,CACGC,mBAAoB,sBACpBC,UAAWC,EAAW,wBAAyB,+BAAgC,wCAAyC,CACpH,+BAAgCtB,EAASS,OAAOC,oBAChD,+BAAmD,wBAAnBT,EAChC,iCAAkCD,EAASuB,MAAMC,wBAA0BxB,EAASuB,MAAME"}
1
+ {"version":3,"file":"MealVoucherExpiryField.js","sources":["../../../../../src/components/MealVoucherFR/components/MealVoucherExpiryField.tsx"],"sourcesContent":["import DataSfSpan from '../../Card/components/CardInput/components/DataSfSpan';\nimport classNames from 'classnames';\nimport Field from '../../internal/FormFields/Field';\nimport { h } from 'preact';\nimport { GiftcardFieldProps } from '../../Giftcard/components/types';\nimport { alternativeLabelContent } from '../../Card/components/CardInput/components/FieldLabelAlternative';\n\nexport const MealVoucherExpiryField = ({ i18n, sfpState, focusedElement, setFocusOn }: GiftcardFieldProps) => {\n return (\n <Field\n label={i18n.get('giftcard.expiryDate.label')}\n classNameModifiers={['expireDate', '50']}\n errorMessage={sfpState.errors.encryptedExpiryDate && i18n.get(sfpState.errors.encryptedExpiryDate)}\n focused={focusedElement === 'encryptedExpiryDate'}\n onFocusField={() => setFocusOn('encryptedExpiryDate')}\n dir={'ltr'}\n name={'encryptedExpiryDate'}\n contextVisibleToScreenReader={false}\n useLabelElement={false}\n renderAlternativeToLabel={alternativeLabelContent}\n >\n <DataSfSpan\n encryptedFieldType={'encryptedExpiryDate'}\n className={classNames('adyen-checkout__input', 'adyen-checkout__input--small', 'adyen-checkout__card__exp-date__input', {\n 'adyen-checkout__input--error': sfpState.errors.encryptedExpiryDate,\n 'adyen-checkout__input--focus': focusedElement === 'encryptedExpiryDate',\n 'adyen-checkout__input--valid': !!sfpState.valid.encryptedExpiryMonth && !!sfpState.valid.encryptedExpiryYear\n })}\n />\n </Field>\n );\n};\n"],"names":["MealVoucherExpiryField","i18n","sfpState","focusedElement","setFocusOn","h","Field","label","get","classNameModifiers","errorMessage","errors","encryptedExpiryDate","focused","onFocusField","dir","name","contextVisibleToScreenReader","useLabelElement","renderAlternativeToLabel","alternativeLabelContent","DataSfSpan","encryptedFieldType","className","classNames","valid","encryptedExpiryMonth","encryptedExpiryYear"],"mappings":"2WAOO,MAAMA,EAAyB,EAAGC,OAAMC,WAAUC,iBAAgBC,gBAEjEC,EAACC,EAAAA,CACGC,MAAON,EAAKO,IAAI,6BAChBC,mBAAoB,CAAC,aAAc,MACnCC,aAAcR,EAASS,OAAOC,qBAAuBX,EAAKO,IAAIN,EAASS,OAAOC,qBAC9EC,QAA4B,wBAAnBV,EACTW,aAAc,IAAMV,EAAW,uBAC/BW,IAAK,MACLC,KAAM,sBACNC,8BAA8B,EAC9BC,iBAAiB,EACjBC,yBAA0BC,GAE1Bf,EAACgB,EAAAA,CACGC,mBAAoB,sBACpBC,UAAWC,EAAW,wBAAyB,+BAAgC,wCAAyC,CACpH,+BAAgCtB,EAASS,OAAOC,oBAChD,+BAAmD,wBAAnBT,EAChC,iCAAkCD,EAASuB,MAAMC,wBAA0BxB,EAASuB,MAAME"}
@@ -1 +1 @@
1
- {"version":3,"file":"Oxxo.js","sources":["../../../../src/components/Oxxo/Oxxo.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport OxxoVoucherResult from './components/OxxoVoucherResult';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport { OxxoElementData } from './types';\nimport { TxVariants } from '../tx-variants';\nimport { VoucherConfiguration } from '../internal/Voucher/types';\n\nexport class OxxoElement extends UIElement<VoucherConfiguration> {\n public static type = TxVariants.oxxo;\n\n protected static defaultProps = {\n name: 'Oxxo'\n };\n\n get isValid(): boolean {\n return true;\n }\n\n formatData(): OxxoElementData {\n return {\n paymentMethod: {\n type: this.props.type || OxxoElement.type\n }\n };\n }\n\n private handleRef = ref => {\n this.componentRef = ref;\n };\n\n render() {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n {this.props.reference ? (\n <OxxoVoucherResult ref={this.handleRef} {...this.props} />\n ) : (\n this.props.showPayButton &&\n this.payButton({\n ...this.props,\n classNameModifiers: ['standalone'],\n label: `${this.props.i18n.get('continueTo')} ${this.props.name}`,\n onClick: this.submit\n })\n )}\n </CoreProvider>\n );\n }\n}\n\nexport default OxxoElement;\n"],"names":["OxxoElement","UIElement","static","TxVariants","oxxo","name","isValid","formatData","paymentMethod","type","this","props","handleRef","ref","componentRef","render","h","CoreProvider","i18n","loadingContext","resources","reference","OxxoVoucherResult","showPayButton","payButton","classNameModifiers","label","get","onClick","submit"],"mappings":"wTAQO,MAAMA,UAAoBC,EAC7BC,YAAqBC,EAAWC,KAEhCF,oBAAgC,CAC5BG,KAAM,QAGV,WAAIC,GACA,OAAO,CACX,CAEAC,UAAAA,GACI,MAAO,CACHC,cAAe,CACXC,KAAMC,KAAKC,MAAMF,MAAQT,EAAYS,MAGjD,CAEQG,UAAYC,IAChBH,KAAKI,aAAeD,CAAAA,EAGxBE,MAAAA,GACI,OACIC,EAACC,EAAAA,CAAaC,KAAMR,KAAKC,MAAMO,KAAMC,eAAgBT,KAAKC,MAAMQ,eAAgBC,UAAWV,KAAKU,WAC3FV,KAAKC,MAAMU,UACRL,EAACM,EAAAA,CAAkBT,IAAKH,KAAKE,aAAeF,KAAKC,QAEjDD,KAAKC,MAAMY,eACXb,KAAKc,UAAU,IACRd,KAAKC,MACRc,mBAAoB,CAAC,cACrBC,MAAO,GAAGhB,KAAKC,MAAMO,KAAKS,IAAI,iBAAiBjB,KAAKC,MAAMN,OAC1DuB,QAASlB,KAAKmB,SAKlC"}
1
+ {"version":3,"file":"Oxxo.js","sources":["../../../../src/components/Oxxo/Oxxo.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport OxxoVoucherResult from './components/OxxoVoucherResult';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport { TxVariants } from '../tx-variants';\nimport { VoucherConfiguration } from '../internal/Voucher/types';\n\nexport class OxxoElement extends UIElement<VoucherConfiguration> {\n public static type = TxVariants.oxxo;\n\n protected static defaultProps = {\n name: 'Oxxo'\n };\n\n get isValid(): boolean {\n return true;\n }\n\n formatData() {\n return {\n paymentMethod: {\n type: this.props.type || OxxoElement.type\n }\n };\n }\n\n private handleRef = ref => {\n this.componentRef = ref;\n };\n\n render() {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n {this.props.reference ? (\n <OxxoVoucherResult ref={this.handleRef} {...this.props} />\n ) : (\n this.props.showPayButton &&\n this.payButton({\n ...this.props,\n classNameModifiers: ['standalone'],\n label: `${this.props.i18n.get('continueTo')} ${this.props.name}`,\n onClick: this.submit\n })\n )}\n </CoreProvider>\n );\n }\n}\n\nexport default OxxoElement;\n"],"names":["OxxoElement","UIElement","static","TxVariants","oxxo","name","isValid","formatData","paymentMethod","type","this","props","handleRef","ref","componentRef","render","h","CoreProvider","i18n","loadingContext","resources","reference","OxxoVoucherResult","showPayButton","payButton","classNameModifiers","label","get","onClick","submit"],"mappings":"wTAOO,MAAMA,UAAoBC,EAC7BC,YAAqBC,EAAWC,KAEhCF,oBAAgC,CAC5BG,KAAM,QAGV,WAAIC,GACA,OAAO,CACX,CAEAC,UAAAA,GACI,MAAO,CACHC,cAAe,CACXC,KAAMC,KAAKC,MAAMF,MAAQT,EAAYS,MAGjD,CAEQG,UAAYC,IAChBH,KAAKI,aAAeD,CAAAA,EAGxBE,MAAAA,GACI,OACIC,EAACC,EAAAA,CAAaC,KAAMR,KAAKC,MAAMO,KAAMC,eAAgBT,KAAKC,MAAMQ,eAAgBC,UAAWV,KAAKU,WAC3FV,KAAKC,MAAMU,UACRL,EAACM,EAAAA,CAAkBT,IAAKH,KAAKE,aAAeF,KAAKC,QAEjDD,KAAKC,MAAMY,eACXb,KAAKc,UAAU,IACRd,KAAKC,MACRc,mBAAoB,CAAC,cACrBC,MAAO,GAAGhB,KAAKC,MAAMO,KAAKS,IAAI,iBAAiBjB,KAAKC,MAAMN,OAC1DuB,QAASlB,KAAKmB,SAKlC"}
@@ -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 n from"./components/PaypalComponent.js";import i from"./defaultProps.js";import{CoreProvider as r}from"../../core/Context/CoreProvider.js";import s from"../../core/Errors/AdyenCheckoutError.js";import{ERRORS as a}from"./constants.js";import{TxVariants as o}from"../tx-variants.js";import{formatPaypalOrderContactToAdyenFormat as h}from"./utils/format-paypal-order-contact-to-adyen-format.js";class p extends e{static type=o.paypal;static subtype="sdk";paymentData=null;resolve=null;reject=null;static defaultProps=i;constructor(t,e){super(t,e),this.handleSubmit=this.handleSubmit.bind(this),this.handleOnShippingAddressChange=this.handleOnShippingAddressChange.bind(this),this.handleOnShippingOptionsChange=this.handleOnShippingOptionsChange.bind(this)}formatProps(t){const e=t.configuration?.merchantId,n=t.configuration?.intent,i=0===t.amount?.value?"tokenize":t.intent||n,r="tokenize"===i||t.vault,s="continue"===t.userAction;return{...t,commit:!s&&t.commit,vault:r,configuration:{intent:i,merchantId:e}}}submitAnalytics(t){super.submitAnalytics({...t},this.props)}submit=()=>{this.handleError(new s("IMPLEMENTATION_ERROR",a.SUBMIT_NOT_SUPPORTED))};updatePaymentData(t){t||console.warn("PayPal - Updating payment data with an invalid value"),this.paymentData=t}formatData(){const{isExpress:t,userAction:e}=this.props;return{paymentMethod:{type:p.type,userAction:e,subtype:t?"express":p.subtype}}}handleAction=t=>this.updateWithAction(t);updateWithAction=t=>{if(t.paymentMethodType!==this.type)throw new Error("Invalid Action");return t.paymentData&&(this.paymentData=t.paymentData),t.sdkData&&t.sdkData.token?this.handleResolve(t.sdkData.token):this.handleReject(a.NO_TOKEN_PROVIDED),null};get isValid(){return!0}handleOnApprove=(t,e)=>{const{onAuthorized:n}=this.props,i={data:{details:t,paymentData:this.paymentData}};if(n)return e.order.get().then((t=>{const e=h(t?.payer),i=h(t?.purchase_units?.[0].shipping,!0);return this.setState({authorizedEvent:t,...e&&{billingAddress:e},...i&&{deliveryAddress:i}}),new Promise(((r,s)=>n({authorizedEvent:t,...e&&{billingAddress:e},...i&&{deliveryAddress:i}},{resolve:r,reject:s})))})).then((()=>this.handleAdditionalDetails(i))).catch((t=>this.handleError(new s("ERROR","Something went wrong while parsing PayPal Order",{cause:t}))));this.handleAdditionalDetails(i)};handleResolve(t){if(!this.resolve)return this.handleError(new s("ERROR",a.WRONG_INSTANCE));this.resolve(t)}handleReject(t){if(!this.reject)return this.handleError(new s("ERROR",a.WRONG_INSTANCE));this.reject(new Error(t))}handleSubmit(){return super.submit(),new Promise(((t,e)=>{this.resolve=t,this.reject=e}))}handleOnShippingAddressChange(t,e){return this.props.onShippingAddressChange(t,e,this)}handleOnShippingOptionsChange(t,e){return this.props.onShippingOptionsChange(t,e,this)}render(){if(!this.props.showPayButton)return null;const{onShippingAddressChange:e,onShippingOptionsChange:i,...a}=this.props;return t(r,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},t(n,{ref:t=>{this.componentRef=t},...a,...e&&{onShippingAddressChange:this.handleOnShippingAddressChange},...i&&{onShippingOptionsChange:this.handleOnShippingOptionsChange},onCancel:()=>this.handleError(new s("CANCEL")),onChange:this.setState,onApprove:this.handleOnApprove,onError:t=>{this.handleError(new s("ERROR",t.toString(),{cause:t}))},onScriptLoadFailure:t=>this.handleError(t),onSubmit:this.handleSubmit}))}}export{p as default};
1
+ import{createElement as t}from"../../external/preact/dist/preact.js";import{UIElement as e}from"../internal/UIElement/UIElement.js";import n from"./components/PaypalComponent.js";import i from"./defaultProps.js";import{CoreProvider as r}from"../../core/Context/CoreProvider.js";import s from"../../core/Errors/AdyenCheckoutError.js";import{ERRORS as a}from"./constants.js";import{TxVariants as o}from"../tx-variants.js";import{formatPaypalOrderContactToAdyenFormat as h}from"./utils/format-paypal-order-contact-to-adyen-format.js";class p extends e{static type=o.paypal;static subtype="sdk";paymentData=null;resolve=null;reject=null;static defaultProps=i;constructor(t,e){super(t,e),this.handleSubmit=this.handleSubmit.bind(this),this.handleOnShippingAddressChange=this.handleOnShippingAddressChange.bind(this),this.handleOnShippingOptionsChange=this.handleOnShippingOptionsChange.bind(this)}formatProps(t){const e=t.configuration?.merchantId,n=t.configuration?.intent,i=0===t.amount?.value?"tokenize":t.intent||n,r="tokenize"===i||t.vault,s="continue"===t.userAction;return{...t,commit:!s&&t.commit,vault:r,configuration:{intent:i,merchantId:e}}}submitAnalytics(t){super.submitAnalytics({...t},this.props)}submit=()=>{this.handleError(new s("IMPLEMENTATION_ERROR",a.SUBMIT_NOT_SUPPORTED))};updatePaymentData(t){t||console.warn("PayPal - Updating payment data with an invalid value"),this.paymentData=t}formatData(){const{isExpress:t,userAction:e}=this.props;return{paymentMethod:{type:p.type,userAction:e,subtype:t?"express":p.subtype}}}handleAction=t=>this.updateWithAction(t);updateWithAction=t=>{if(t.paymentMethodType!==this.type)throw new Error("Invalid Action");return t.paymentData&&(this.paymentData=t.paymentData),t.sdkData&&t.sdkData.token?this.handleResolve(t.sdkData.token):this.handleReject(a.NO_TOKEN_PROVIDED),null};get isValid(){return!0}handleOnApprove=(t,e)=>{const{onAuthorized:n}=this.props,i={data:{details:t,paymentData:this.paymentData}};if(n)return e.order.get().then((t=>{const e=h(t?.payer),i=h(t?.purchase_units?.[0].shipping,!0);return this.setState({authorizedEvent:t,...e&&{billingAddress:e},...i&&{deliveryAddress:i}}),new Promise(((r,s)=>n({authorizedEvent:t,...e&&{billingAddress:e},...i&&{deliveryAddress:i}},{resolve:r,reject:s})))})).then((()=>this.handleAdditionalDetails(i))).catch((t=>this.handleError(new s("ERROR","Something went wrong while parsing PayPal Order",{cause:t}))));this.handleAdditionalDetails(i)};handleResolve(t){if(!this.resolve)return this.handleError(new s("ERROR",a.WRONG_INSTANCE));this.resolve(t)}handleReject(t){if(!this.reject)return this.handleError(new s("ERROR",a.WRONG_INSTANCE));this.reject(new Error(t))}handleSubmit(){return super.submit(),new Promise(((t,e)=>{this.resolve=t,this.reject=e}))}handleOnShippingAddressChange(t,e){return this.props.onShippingAddressChange(t,e,this)}handleOnShippingOptionsChange(t,e){return this.props.onShippingOptionsChange(t,e,this)}render(){if(!this.props.showPayButton)return null;const{onShippingAddressChange:e,onShippingOptionsChange:i,...a}=this.props;return t(r,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},t(n,{ref:t=>{this.componentRef=t},...a,...e&&{onShippingAddressChange:this.handleOnShippingAddressChange},...i&&{onShippingOptionsChange:this.handleOnShippingOptionsChange},onCancel:()=>this.handleError(new s("CANCEL")),onChange:this.setState,onApprove:void this.handleOnApprove,onError:t=>{this.handleError(new s("ERROR",t.toString(),{cause:t}))},onScriptLoadFailure:t=>this.handleError(t),onSubmit:this.handleSubmit}))}}export{p as default};
2
2
  //# sourceMappingURL=Paypal.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Paypal.js","sources":["../../../../src/components/PayPal/Paypal.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport PaypalComponent from './components/PaypalComponent';\nimport defaultProps from './defaultProps';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport AdyenCheckoutError from '../../core/Errors/AdyenCheckoutError';\nimport { ERRORS } from './constants';\nimport { TxVariants } from '../tx-variants';\nimport { formatPaypalOrderContactToAdyenFormat } from './utils/format-paypal-order-contact-to-adyen-format';\n\nimport type { ICore } from '../../core/types';\nimport type { PaymentAction } from '../../types/global-types';\nimport type { Intent, PayPalConfiguration } from './types';\n\nimport './Paypal.scss';\nimport { SendAnalyticsObject } from '../../core/Analytics/types';\n\nclass PaypalElement extends UIElement<PayPalConfiguration> {\n public static type = TxVariants.paypal;\n public static subtype = 'sdk';\n\n public paymentData: string = null;\n\n private resolve = null;\n private reject = null;\n\n protected static defaultProps = defaultProps;\n\n constructor(checkout: ICore, props?: PayPalConfiguration) {\n super(checkout, props);\n this.handleSubmit = this.handleSubmit.bind(this);\n this.handleOnShippingAddressChange = this.handleOnShippingAddressChange.bind(this);\n this.handleOnShippingOptionsChange = this.handleOnShippingOptionsChange.bind(this);\n }\n\n formatProps(props: PayPalConfiguration): PayPalConfiguration {\n const merchantId = props.configuration?.merchantId;\n const intentFromConfig = props.configuration?.intent;\n const isZeroAuth = props.amount?.value === 0;\n const intent: Intent = isZeroAuth ? 'tokenize' : props.intent || intentFromConfig;\n const vault = intent === 'tokenize' || props.vault;\n\n const displayContinueToReviewPageButton = props.userAction === 'continue';\n\n return {\n ...props,\n commit: displayContinueToReviewPageButton ? false : props.commit,\n vault,\n configuration: {\n intent,\n merchantId\n }\n };\n }\n\n protected submitAnalytics(analyticsObj: SendAnalyticsObject) {\n // Analytics will need to know about this.props.isExpress & this.props.expressPage\n super.submitAnalytics({ ...analyticsObj }, this.props);\n }\n\n public submit = () => {\n this.handleError(new AdyenCheckoutError('IMPLEMENTATION_ERROR', ERRORS.SUBMIT_NOT_SUPPORTED));\n };\n\n /**\n * Updates the paymentData value. It must be used in the PayPal Express flow, when patching the amount\n * @param paymentData - Payment data value\n */\n public updatePaymentData(paymentData: string): void {\n if (!paymentData) console.warn('PayPal - Updating payment data with an invalid value');\n this.paymentData = paymentData;\n }\n\n /**\n * Formats the component data output\n */\n protected formatData() {\n const { isExpress, userAction } = this.props;\n\n return {\n paymentMethod: {\n type: PaypalElement.type,\n userAction,\n subtype: isExpress ? 'express' : PaypalElement.subtype\n }\n };\n }\n\n public handleAction = (action: PaymentAction) => {\n return this.updateWithAction(action);\n };\n\n public updateWithAction = (action: PaymentAction) => {\n if (action.paymentMethodType !== this.type) throw new Error('Invalid Action');\n\n if (action.paymentData) {\n this.paymentData = action.paymentData;\n }\n\n if (action.sdkData && action.sdkData.token) {\n this.handleResolve(action.sdkData.token);\n } else {\n this.handleReject(ERRORS.NO_TOKEN_PROVIDED);\n }\n\n return null;\n };\n\n /**\n * Dropin Validation\n *\n * @remarks\n * Paypal does not require any specific Dropin validation\n */\n get isValid() {\n return true;\n }\n\n private handleOnApprove = (data: any, actions: any): Promise<void> | void => {\n const { onAuthorized } = this.props;\n const state = { data: { details: data, paymentData: this.paymentData } };\n\n if (!onAuthorized) {\n this.handleAdditionalDetails(state);\n return;\n }\n\n return actions.order\n .get()\n .then((paypalOrder: any) => {\n const billingAddress = formatPaypalOrderContactToAdyenFormat(paypalOrder?.payer);\n const deliveryAddress = formatPaypalOrderContactToAdyenFormat(paypalOrder?.purchase_units?.[0].shipping, true);\n\n this.setState({\n authorizedEvent: paypalOrder,\n ...(billingAddress && { billingAddress }),\n ...(deliveryAddress && { deliveryAddress })\n });\n\n return new Promise<void>((resolve, reject) =>\n onAuthorized(\n {\n authorizedEvent: paypalOrder,\n ...(billingAddress && { billingAddress }),\n ...(deliveryAddress && { deliveryAddress })\n },\n { resolve, reject }\n )\n );\n })\n .then(() => this.handleAdditionalDetails(state))\n .catch(error => this.handleError(new AdyenCheckoutError('ERROR', 'Something went wrong while parsing PayPal Order', { cause: error })));\n };\n\n handleResolve(token: string) {\n if (!this.resolve) return this.handleError(new AdyenCheckoutError('ERROR', ERRORS.WRONG_INSTANCE));\n this.resolve(token);\n }\n\n handleReject(errorMessage: string) {\n if (!this.reject) return this.handleError(new AdyenCheckoutError('ERROR', ERRORS.WRONG_INSTANCE));\n this.reject(new Error(errorMessage));\n }\n\n private handleSubmit(): Promise<void> {\n super.submit();\n\n return new Promise((resolve, reject) => {\n this.resolve = resolve;\n this.reject = reject;\n });\n }\n\n /**\n * If the merchant provides the 'onShippingAddressChange' callback, then this method is used as a wrapper to it, in order\n * to expose to the merchant the 'component' instance. The merchant needs the 'component' in order to manipulate the\n * paymentData\n *\n * @param data - PayPal data\n * @param actions - PayPal actions.\n */\n private handleOnShippingAddressChange(data: any, actions: any): Promise<void> {\n return this.props.onShippingAddressChange(data, actions, this);\n }\n\n /**\n * If the merchant provides the 'onShippingOptionsChange' callback, then this method is used as a wrapper to it, in order\n * to expose to the merchant the 'component' instance. The merchant needs the 'component' in order to manipulate the\n * paymentData\n *\n * @param data - PayPal data\n * @param actions - PayPal actions.\n */\n private handleOnShippingOptionsChange(data: any, actions: any): Promise<void> {\n return this.props.onShippingOptionsChange(data, actions, this);\n }\n\n render() {\n if (!this.props.showPayButton) return null;\n\n const { onShippingAddressChange, onShippingOptionsChange, ...rest } = this.props;\n\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <PaypalComponent\n ref={ref => {\n this.componentRef = ref;\n }}\n {...rest}\n {...(onShippingAddressChange && { onShippingAddressChange: this.handleOnShippingAddressChange })}\n {...(onShippingOptionsChange && { onShippingOptionsChange: this.handleOnShippingOptionsChange })}\n onCancel={() => this.handleError(new AdyenCheckoutError('CANCEL'))}\n onChange={this.setState}\n onApprove={this.handleOnApprove}\n onError={error => {\n this.handleError(new AdyenCheckoutError('ERROR', error.toString(), { cause: error }));\n }}\n onScriptLoadFailure={error => this.handleError(error)}\n onSubmit={this.handleSubmit}\n />\n </CoreProvider>\n );\n }\n}\n\nexport default PaypalElement;\n"],"names":["PaypalElement","UIElement","static","TxVariants","paypal","paymentData","resolve","reject","defaultProps","constructor","checkout","props","super","this","handleSubmit","bind","handleOnShippingAddressChange","handleOnShippingOptionsChange","formatProps","merchantId","configuration","intentFromConfig","intent","amount","value","vault","displayContinueToReviewPageButton","userAction","commit","submitAnalytics","analyticsObj","submit","handleError","AdyenCheckoutError","ERRORS","SUBMIT_NOT_SUPPORTED","updatePaymentData","console","warn","formatData","isExpress","paymentMethod","type","subtype","handleAction","action","updateWithAction","paymentMethodType","Error","sdkData","token","handleResolve","handleReject","NO_TOKEN_PROVIDED","isValid","handleOnApprove","data","actions","onAuthorized","state","details","order","get","then","paypalOrder","billingAddress","formatPaypalOrderContactToAdyenFormat","payer","deliveryAddress","purchase_units","shipping","setState","authorizedEvent","Promise","handleAdditionalDetails","catch","error","cause","WRONG_INSTANCE","errorMessage","onShippingAddressChange","onShippingOptionsChange","render","showPayButton","rest","h","CoreProvider","i18n","loadingContext","resources","PaypalComponent","ref","componentRef","onCancel","onChange","onApprove","onError","toString","onScriptLoadFailure","onSubmit"],"mappings":"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"}
1
+ {"version":3,"file":"Paypal.js","sources":["../../../../src/components/PayPal/Paypal.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport PaypalComponent from './components/PaypalComponent';\nimport defaultProps from './defaultProps';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport AdyenCheckoutError from '../../core/Errors/AdyenCheckoutError';\nimport { ERRORS } from './constants';\nimport { TxVariants } from '../tx-variants';\nimport { formatPaypalOrderContactToAdyenFormat } from './utils/format-paypal-order-contact-to-adyen-format';\n\nimport type { ICore } from '../../core/types';\nimport type { PaymentAction } from '../../types/global-types';\nimport type { Intent, PayPalConfiguration } from './types';\n\nimport './Paypal.scss';\nimport { SendAnalyticsObject } from '../../core/Analytics/types';\n\nclass PaypalElement extends UIElement<PayPalConfiguration> {\n public static type = TxVariants.paypal;\n public static subtype = 'sdk';\n\n public paymentData: string = null;\n\n private resolve = null;\n private reject = null;\n\n protected static defaultProps = defaultProps;\n\n constructor(checkout: ICore, props?: PayPalConfiguration) {\n super(checkout, props);\n this.handleSubmit = this.handleSubmit.bind(this);\n this.handleOnShippingAddressChange = this.handleOnShippingAddressChange.bind(this);\n this.handleOnShippingOptionsChange = this.handleOnShippingOptionsChange.bind(this);\n }\n\n formatProps(props: PayPalConfiguration): PayPalConfiguration {\n const merchantId = props.configuration?.merchantId;\n const intentFromConfig = props.configuration?.intent;\n const isZeroAuth = props.amount?.value === 0;\n const intent: Intent = isZeroAuth ? 'tokenize' : props.intent || intentFromConfig;\n const vault = intent === 'tokenize' || props.vault;\n\n const displayContinueToReviewPageButton = props.userAction === 'continue';\n\n return {\n ...props,\n commit: displayContinueToReviewPageButton ? false : props.commit,\n vault,\n configuration: {\n intent,\n merchantId\n }\n };\n }\n\n protected submitAnalytics(analyticsObj: SendAnalyticsObject) {\n // Analytics will need to know about this.props.isExpress & this.props.expressPage\n super.submitAnalytics({ ...analyticsObj }, this.props);\n }\n\n public submit = () => {\n this.handleError(new AdyenCheckoutError('IMPLEMENTATION_ERROR', ERRORS.SUBMIT_NOT_SUPPORTED));\n };\n\n /**\n * Updates the paymentData value. It must be used in the PayPal Express flow, when patching the amount\n * @param paymentData - Payment data value\n */\n public updatePaymentData(paymentData: string): void {\n if (!paymentData) console.warn('PayPal - Updating payment data with an invalid value');\n this.paymentData = paymentData;\n }\n\n /**\n * Formats the component data output\n */\n protected formatData() {\n const { isExpress, userAction } = this.props;\n\n return {\n paymentMethod: {\n type: PaypalElement.type,\n userAction,\n subtype: isExpress ? 'express' : PaypalElement.subtype\n }\n };\n }\n\n public handleAction = (action: PaymentAction) => {\n return this.updateWithAction(action);\n };\n\n public updateWithAction = (action: PaymentAction) => {\n if (action.paymentMethodType !== this.type) throw new Error('Invalid Action');\n\n if (action.paymentData) {\n this.paymentData = action.paymentData;\n }\n\n if (action.sdkData && action.sdkData.token) {\n this.handleResolve(action.sdkData.token);\n } else {\n this.handleReject(ERRORS.NO_TOKEN_PROVIDED);\n }\n\n return null;\n };\n\n /**\n * Dropin Validation\n *\n * @remarks\n * Paypal does not require any specific Dropin validation\n */\n get isValid() {\n return true;\n }\n\n private handleOnApprove = (data: any, actions: any): Promise<void> | void => {\n const { onAuthorized } = this.props;\n const state = { data: { details: data, paymentData: this.paymentData } };\n\n if (!onAuthorized) {\n this.handleAdditionalDetails(state);\n return;\n }\n\n return actions.order\n .get()\n .then((paypalOrder: any) => {\n const billingAddress = formatPaypalOrderContactToAdyenFormat(paypalOrder?.payer);\n const deliveryAddress = formatPaypalOrderContactToAdyenFormat(paypalOrder?.purchase_units?.[0].shipping, true);\n\n this.setState({\n authorizedEvent: paypalOrder,\n ...(billingAddress && { billingAddress }),\n ...(deliveryAddress && { deliveryAddress })\n });\n\n return new Promise<void>((resolve, reject) =>\n onAuthorized(\n {\n authorizedEvent: paypalOrder,\n ...(billingAddress && { billingAddress }),\n ...(deliveryAddress && { deliveryAddress })\n },\n { resolve, reject }\n )\n );\n })\n .then(() => this.handleAdditionalDetails(state))\n .catch(error => this.handleError(new AdyenCheckoutError('ERROR', 'Something went wrong while parsing PayPal Order', { cause: error })));\n };\n\n handleResolve(token: string) {\n if (!this.resolve) return this.handleError(new AdyenCheckoutError('ERROR', ERRORS.WRONG_INSTANCE));\n this.resolve(token);\n }\n\n handleReject(errorMessage: string) {\n if (!this.reject) return this.handleError(new AdyenCheckoutError('ERROR', ERRORS.WRONG_INSTANCE));\n this.reject(new Error(errorMessage));\n }\n\n private handleSubmit(): Promise<void> {\n super.submit();\n\n return new Promise((resolve, reject) => {\n this.resolve = resolve;\n this.reject = reject;\n });\n }\n\n /**\n * If the merchant provides the 'onShippingAddressChange' callback, then this method is used as a wrapper to it, in order\n * to expose to the merchant the 'component' instance. The merchant needs the 'component' in order to manipulate the\n * paymentData\n *\n * @param data - PayPal data\n * @param actions - PayPal actions.\n */\n private handleOnShippingAddressChange(data: any, actions: any): Promise<void> {\n return this.props.onShippingAddressChange(data, actions, this);\n }\n\n /**\n * If the merchant provides the 'onShippingOptionsChange' callback, then this method is used as a wrapper to it, in order\n * to expose to the merchant the 'component' instance. The merchant needs the 'component' in order to manipulate the\n * paymentData\n *\n * @param data - PayPal data\n * @param actions - PayPal actions.\n */\n private handleOnShippingOptionsChange(data: any, actions: any): Promise<void> {\n return this.props.onShippingOptionsChange(data, actions, this);\n }\n\n render() {\n if (!this.props.showPayButton) return null;\n\n const { onShippingAddressChange, onShippingOptionsChange, ...rest } = this.props;\n\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <PaypalComponent\n ref={ref => {\n this.componentRef = ref;\n }}\n {...rest}\n {...(onShippingAddressChange && { onShippingAddressChange: this.handleOnShippingAddressChange })}\n {...(onShippingOptionsChange && { onShippingOptionsChange: this.handleOnShippingOptionsChange })}\n onCancel={() => this.handleError(new AdyenCheckoutError('CANCEL'))}\n onChange={this.setState}\n onApprove={void this.handleOnApprove}\n onError={error => {\n this.handleError(new AdyenCheckoutError('ERROR', error.toString(), { cause: error }));\n }}\n onScriptLoadFailure={error => this.handleError(error)}\n onSubmit={this.handleSubmit}\n />\n </CoreProvider>\n );\n }\n}\n\nexport default PaypalElement;\n"],"names":["PaypalElement","UIElement","static","TxVariants","paypal","paymentData","resolve","reject","defaultProps","constructor","checkout","props","super","this","handleSubmit","bind","handleOnShippingAddressChange","handleOnShippingOptionsChange","formatProps","merchantId","configuration","intentFromConfig","intent","amount","value","vault","displayContinueToReviewPageButton","userAction","commit","submitAnalytics","analyticsObj","submit","handleError","AdyenCheckoutError","ERRORS","SUBMIT_NOT_SUPPORTED","updatePaymentData","console","warn","formatData","isExpress","paymentMethod","type","subtype","handleAction","action","updateWithAction","paymentMethodType","Error","sdkData","token","handleResolve","handleReject","NO_TOKEN_PROVIDED","isValid","handleOnApprove","data","actions","onAuthorized","state","details","order","get","then","paypalOrder","billingAddress","formatPaypalOrderContactToAdyenFormat","payer","deliveryAddress","purchase_units","shipping","setState","authorizedEvent","Promise","handleAdditionalDetails","catch","error","cause","WRONG_INSTANCE","errorMessage","onShippingAddressChange","onShippingOptionsChange","render","showPayButton","rest","h","CoreProvider","i18n","loadingContext","resources","PaypalComponent","ref","componentRef","onCancel","onChange","onApprove","onError","toString","onScriptLoadFailure","onSubmit"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{Component as t,createElement as e}from"../../../../external/preact/dist/preact.js";import o from"../../../../utils/detectInIframeInSameOrigin.js";class r extends t{postForm;static defaultProps={beforeRedirect:t=>t(),method:"GET"};componentDidMount(){new Promise(((t,e)=>this.props.beforeRedirect(t,e,{url:this.props.url,method:this.props.method,...this.props.data?{data:this.props.data}:{}}))).then((()=>{this.postForm?this.postForm.submit():this.props.redirectFromTopWhenInIframe&&o()?window.top.location.assign?.(this.props.url):window.location.assign(this.props.url)})).catch((()=>{}))}render({url:t,method:r,data:s={}}){return"POST"===r?e("form",{method:"post",action:t,style:{display:"none"},ref:t=>{this.postForm=t},...this.props.redirectFromTopWhenInIframe&&o()&&{target:"_top"}},Object.keys(s).map((t=>e("input",{type:"hidden",name:t,key:t,value:s[t]})))):null}}export{r as default};
1
+ import{Component as t,createElement as e}from"../../../../external/preact/dist/preact.js";import o from"../../../../utils/detectInIframeInSameOrigin.js";class r extends t{postForm;static defaultProps={beforeRedirect:t=>t(),method:"GET"};componentDidMount(){new Promise(((t,e)=>{this.props.beforeRedirect(t,e,{url:this.props.url,method:this.props.method,...this.props.data?{data:this.props.data}:{}})})).then((()=>{this.postForm?this.postForm.submit():this.props.redirectFromTopWhenInIframe&&o()?window.top.location.assign?.(this.props.url):window.location.assign(this.props.url)})).catch((()=>{}))}render({url:t,method:r,data:s={}}){return"POST"===r?e("form",{method:"post",action:t,style:{display:"none"},ref:t=>{this.postForm=t},...this.props.redirectFromTopWhenInIframe&&o()&&{target:"_top"}},Object.keys(s).map((t=>e("input",{type:"hidden",name:t,key:t,value:s[t]})))):null}}export{r as default};
2
2
  //# sourceMappingURL=RedirectShopper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RedirectShopper.js","sources":["../../../../../../src/components/Redirect/components/RedirectShopper/RedirectShopper.tsx"],"sourcesContent":["import { Component, h } from 'preact';\nimport detectInIframeInSameOrigin from '../../../../utils/detectInIframeInSameOrigin';\n\ninterface RedirectShopperProps {\n beforeRedirect: (resolve, reject, url) => Promise<void>;\n url: string;\n method: 'GET' | 'POST';\n data?: any;\n redirectFromTopWhenInIframe?: boolean;\n}\n\nclass RedirectShopper extends Component<RedirectShopperProps> {\n private postForm;\n public static defaultProps = {\n beforeRedirect: resolve => resolve(),\n method: 'GET'\n };\n\n componentDidMount() {\n const doRedirect = () => {\n if (this.postForm) {\n this.postForm.submit();\n } else {\n if (this.props.redirectFromTopWhenInIframe && detectInIframeInSameOrigin()) {\n // if in an iframe and the config prop allows it - try to redirect from the top level window\n window.top.location.assign?.(this.props.url);\n } else {\n window.location.assign(this.props.url);\n }\n }\n };\n\n const dispatchEvent = new Promise((resolve, reject) =>\n this.props.beforeRedirect(resolve, reject, {\n url: this.props.url,\n method: this.props.method,\n ...(this.props.data ? { data: this.props.data } : {})\n })\n );\n\n dispatchEvent.then(doRedirect).catch(() => {});\n }\n\n render({ url, method, data = {} }) {\n if (method === 'POST') {\n return (\n <form\n method=\"post\"\n action={url}\n style={{ display: 'none' }}\n ref={ref => {\n this.postForm = ref;\n }}\n {...(this.props.redirectFromTopWhenInIframe && detectInIframeInSameOrigin() && { target: '_top' })}\n >\n {Object.keys(data).map(key => (\n <input type=\"hidden\" name={key} key={key} value={data[key]} />\n ))}\n </form>\n );\n }\n\n return null;\n }\n}\n\nexport default RedirectShopper;\n"],"names":["RedirectShopper","Component","postForm","static","beforeRedirect","resolve","method","componentDidMount","Promise","reject","this","props","url","data","then","submit","redirectFromTopWhenInIframe","detectInIframeInSameOrigin","window","top","location","assign","catch","render","h","form","action","style","display","ref","target","Object","keys","map","key","input","type","name","value"],"mappings":"yJAWA,MAAMA,UAAwBC,EAClBC,SACRC,oBAA6B,CACzBC,eAAgBC,GAAWA,IAC3BC,OAAQ,OAGZC,iBAAAA,GAc0B,IAAIC,SAAQ,CAACH,EAASI,IACxCC,KAAKC,MAAMP,eAAeC,EAASI,EAAQ,CACvCG,IAAKF,KAAKC,MAAMC,IAChBN,OAAQI,KAAKC,MAAML,UACfI,KAAKC,MAAME,KAAO,CAAEA,KAAMH,KAAKC,MAAME,MAAS,CAAE,MAI9CC,MArBK,KACXJ,KAAKR,SACLQ,KAAKR,SAASa,SAEVL,KAAKC,MAAMK,6BAA+BC,IAE1CC,OAAOC,IAAIC,SAASC,SAASX,KAAKC,MAAMC,KAExCM,OAAOE,SAASC,OAAOX,KAAKC,MAAMC,IAE1C,IAW2BU,OAAM,QACzC,CAEAC,MAAAA,EAAOX,IAAEA,EAAGN,OAAEA,EAAMO,KAAEA,EAAO,CAAE,IAC3B,MAAe,SAAXP,EAEIkB,EAACC,OAAAA,CACGnB,OAAO,OACPoB,OAAQd,EACRe,MAAO,CAAEC,QAAS,QAClBC,IAAKA,IACDnB,KAAKR,SAAW2B,CAAAA,KAEfnB,KAAKC,MAAMK,6BAA+BC,KAAgC,CAAEa,OAAQ,SAExFC,OAAOC,KAAKnB,GAAMoB,KAAIC,GACnBV,EAACW,QAAAA,CAAMC,KAAK,SAASC,KAAMH,EAAKA,IAAKA,EAAKI,MAAOzB,EAAKqB,QAM/D,IACX"}
1
+ {"version":3,"file":"RedirectShopper.js","sources":["../../../../../../src/components/Redirect/components/RedirectShopper/RedirectShopper.tsx"],"sourcesContent":["import { Component, h } from 'preact';\nimport detectInIframeInSameOrigin from '../../../../utils/detectInIframeInSameOrigin';\n\ninterface RedirectShopperProps {\n beforeRedirect: (resolve, reject, url) => Promise<void>;\n url: string;\n method: 'GET' | 'POST';\n data?: any;\n redirectFromTopWhenInIframe?: boolean;\n}\n\nclass RedirectShopper extends Component<RedirectShopperProps> {\n private postForm;\n public static defaultProps = {\n beforeRedirect: resolve => resolve(),\n method: 'GET'\n };\n\n componentDidMount() {\n const doRedirect = () => {\n if (this.postForm) {\n this.postForm.submit();\n } else {\n if (this.props.redirectFromTopWhenInIframe && detectInIframeInSameOrigin()) {\n // if in an iframe and the config prop allows it - try to redirect from the top level window\n window.top.location.assign?.(this.props.url);\n } else {\n window.location.assign(this.props.url);\n }\n }\n };\n\n const dispatchEvent = new Promise(\n (resolve, reject) =>\n void this.props.beforeRedirect(resolve, reject, {\n url: this.props.url,\n method: this.props.method,\n ...(this.props.data ? { data: this.props.data } : {})\n })\n );\n\n dispatchEvent.then(doRedirect).catch(() => {});\n }\n\n render({ url, method, data = {} }) {\n if (method === 'POST') {\n return (\n <form\n method=\"post\"\n action={url}\n style={{ display: 'none' }}\n ref={ref => {\n this.postForm = ref;\n }}\n {...(this.props.redirectFromTopWhenInIframe && detectInIframeInSameOrigin() && { target: '_top' })}\n >\n {Object.keys(data).map(key => (\n <input type=\"hidden\" name={key} key={key} value={data[key]} />\n ))}\n </form>\n );\n }\n\n return null;\n }\n}\n\nexport default RedirectShopper;\n"],"names":["RedirectShopper","Component","postForm","static","beforeRedirect","resolve","method","componentDidMount","Promise","reject","this","props","url","data","then","submit","redirectFromTopWhenInIframe","detectInIframeInSameOrigin","window","top","location","assign","catch","render","h","form","action","style","display","ref","target","Object","keys","map","key","input","type","name","value"],"mappings":"yJAWA,MAAMA,UAAwBC,EAClBC,SACRC,oBAA6B,CACzBC,eAAgBC,GAAWA,IAC3BC,OAAQ,OAGZC,iBAAAA,GAc0B,IAAIC,SACtB,CAACH,EAASI,KACDC,KAAKC,MAAMP,eAAeC,EAASI,EAAQ,CAC5CG,IAAKF,KAAKC,MAAMC,IAChBN,OAAQI,KAAKC,MAAML,UACfI,KAAKC,MAAME,KAAO,CAAEA,KAAMH,KAAKC,MAAME,MAAS,CAAE,GACxD,IAGMC,MAtBK,KACXJ,KAAKR,SACLQ,KAAKR,SAASa,SAEVL,KAAKC,MAAMK,6BAA+BC,IAE1CC,OAAOC,IAAIC,SAASC,SAASX,KAAKC,MAAMC,KAExCM,OAAOE,SAASC,OAAOX,KAAKC,MAAMC,IAE1C,IAY2BU,OAAM,QACzC,CAEAC,MAAAA,EAAOX,IAAEA,EAAGN,OAAEA,EAAMO,KAAEA,EAAO,CAAE,IAC3B,MAAe,SAAXP,EAEIkB,EAACC,OAAAA,CACGnB,OAAO,OACPoB,OAAQd,EACRe,MAAO,CAAEC,QAAS,QAClBC,IAAKA,IACDnB,KAAKR,SAAW2B,CAAAA,KAEfnB,KAAKC,MAAMK,6BAA+BC,KAAgC,CAAEa,OAAQ,SAExFC,OAAOC,KAAKnB,GAAMoB,KAAIC,GACnBV,EAACW,QAAAA,CAAMC,KAAK,SAASC,KAAMH,EAAKA,IAAKA,EAAKI,MAAOzB,EAAKqB,QAM/D,IACX"}
@@ -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 r from"./components/Challenge/PrepareChallenge3DS2.js";import{DEFAULT_CHALLENGE_WINDOW_SIZE as o,THREEDS2_CHALLENGE as s,THREEDS2_ERROR as i,THREEDS2_CHALLENGE_ERROR as n}from"./constants.js";import{existy as a}from"../internal/SecuredFields/lib/utilities/commonUtils.js";import{hasOwnProperty as p}from"../../utils/hasOwnProperty.js";import{TxVariants as m}from"../tx-variants.js";import l,{API_ERROR as c}from"../../core/Errors/AdyenCheckoutError.js";import{ANALYTICS_RENDERED_STR as h,Analytics3DS2Errors as u,ANALYTICS_API_ERROR as y}from"../../core/Analytics/constants.js";import{CoreProvider as d}from"../../core/Context/CoreProvider.js";class f extends e{static type=m.threeDS2Challenge;static defaultProps={dataKey:"threeDSResult",size:o,type:s};submitAnalytics=t=>{t.type!==h&&super.submitAnalytics(t)};onComplete(t){t&&super.onComplete(t),this.unmount()}render(){if(!a(this.props.paymentData)){const t=p(this.props,"isMDFlow")?"paymentData":"authorisationToken";return this.props.onError(new l(c,`No ${t} received. 3DS2 Challenge cannot proceed`)),this.submitAnalytics({type:i,code:u.ACTION_IS_MISSING_PAYMENT_DATA,errorType:y,message:`${n}: Missing 'paymentData' property from threeDS2 action`}),null}return t(d,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},t(r,{...this.props,onComplete:this.onComplete,onSubmitAnalytics:this.submitAnalytics,isMDFlow:this.props.paymentData.length<15}))}}export{f as default};
1
+ import{createElement as t}from"../../external/preact/dist/preact.js";import{UIElement as e}from"../internal/UIElement/UIElement.js";import r from"./components/Challenge/PrepareChallenge3DS2.js";import{DEFAULT_CHALLENGE_WINDOW_SIZE as o,THREEDS2_CHALLENGE as s,THREEDS2_ERROR as n,THREEDS2_CHALLENGE_ERROR as i}from"./constants.js";import{existy as a}from"../../utils/commonUtils.js";import{hasOwnProperty as p}from"../../utils/hasOwnProperty.js";import{TxVariants as m}from"../tx-variants.js";import l,{API_ERROR as c}from"../../core/Errors/AdyenCheckoutError.js";import{ANALYTICS_RENDERED_STR as h,Analytics3DS2Errors as u,ANALYTICS_API_ERROR as y}from"../../core/Analytics/constants.js";import{CoreProvider as f}from"../../core/Context/CoreProvider.js";class C extends e{static type=m.threeDS2Challenge;static defaultProps={dataKey:"threeDSResult",size:o,type:s};submitAnalytics=t=>{t.type!==h&&super.submitAnalytics(t)};onComplete(t){t&&super.onComplete(t),this.unmount()}render(){if(!a(this.props.paymentData)){const t=p(this.props,"isMDFlow")?"paymentData":"authorisationToken";return this.props.onError(new l(c,`No ${t} received. 3DS2 Challenge cannot proceed`)),this.submitAnalytics({type:n,code:u.ACTION_IS_MISSING_PAYMENT_DATA,errorType:y,message:`${i}: Missing 'paymentData' property from threeDS2 action`}),null}return t(f,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},t(r,{...this.props,onComplete:this.onComplete,onSubmitAnalytics:this.submitAnalytics,isMDFlow:this.props.paymentData.length<15}))}}export{C as default};
2
2
  //# sourceMappingURL=ThreeDS2Challenge.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ThreeDS2Challenge.js","sources":["../../../../src/components/ThreeDS2/ThreeDS2Challenge.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport PrepareChallenge from './components/Challenge';\nimport { DEFAULT_CHALLENGE_WINDOW_SIZE, THREEDS2_CHALLENGE, THREEDS2_CHALLENGE_ERROR, THREEDS2_ERROR } from './constants';\nimport { existy } from '../internal/SecuredFields/lib/utilities/commonUtils';\nimport { hasOwnProperty } from '../../utils/hasOwnProperty';\nimport { TxVariants } from '../tx-variants';\nimport { ThreeDS2ChallengeConfiguration } from './types';\nimport AdyenCheckoutError, { API_ERROR } from '../../core/Errors/AdyenCheckoutError';\nimport { ANALYTICS_API_ERROR, Analytics3DS2Errors, ANALYTICS_RENDERED_STR } from '../../core/Analytics/constants';\nimport { SendAnalyticsObject } from '../../core/Analytics/types';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\n\nclass ThreeDS2Challenge extends UIElement<ThreeDS2ChallengeConfiguration> {\n public static type = TxVariants.threeDS2Challenge;\n\n public static defaultProps = {\n dataKey: 'threeDSResult',\n size: DEFAULT_CHALLENGE_WINDOW_SIZE,\n type: THREEDS2_CHALLENGE\n };\n\n protected submitAnalytics = (aObj: SendAnalyticsObject) => {\n if (aObj.type === ANALYTICS_RENDERED_STR) return; // suppress the rendered event (it will have the same timestamp as the \"creq sent\" event)\n\n super.submitAnalytics(aObj);\n };\n\n onComplete(state) {\n /**\n * Equals a call to onAdditionalDetails (as set in actionTypes.ts) for the regular, \"native\" flow.\n * However, if the action to create this component came from the 3DS2InMDFlow process it will instead equal a call to the onComplete callback\n * (as defined in the 3DS2InMDFlow and passed in as a config prop).\n */\n if (state) super.onComplete(state);\n this.unmount(); // re. fixing issue around back to back challenge calls\n }\n\n render() {\n // existy used because threeds2InMDFlow will send empty string for paymentData and we should be allowed to proceed with this\n if (!existy(this.props.paymentData)) {\n /**\n * The presence of props.isMDFlow indicates the action to create this component came from the threeds2InMDFlow process which passes (an empty) paymentsData.\n * The regular, \"native\" flow uses the authorisationToken from the 3DS2 action, which actionTypes.ts assigns to a property called paymentData\n */\n const dataTypeForError = hasOwnProperty(this.props, 'isMDFlow') ? 'paymentData' : 'authorisationToken';\n\n this.props.onError(new AdyenCheckoutError(API_ERROR, `No ${dataTypeForError} received. 3DS2 Challenge cannot proceed`));\n\n this.submitAnalytics({\n type: THREEDS2_ERROR,\n code: Analytics3DS2Errors.ACTION_IS_MISSING_PAYMENT_DATA,\n errorType: ANALYTICS_API_ERROR,\n message: `${THREEDS2_CHALLENGE_ERROR}: Missing 'paymentData' property from threeDS2 action`\n });\n\n return null;\n }\n\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <PrepareChallenge\n {...this.props}\n onComplete={this.onComplete}\n onSubmitAnalytics={this.submitAnalytics}\n isMDFlow={this.props.paymentData.length < 15}\n />\n </CoreProvider>\n );\n }\n}\n\nexport default ThreeDS2Challenge;\n"],"names":["ThreeDS2Challenge","UIElement","static","TxVariants","threeDS2Challenge","dataKey","size","DEFAULT_CHALLENGE_WINDOW_SIZE","type","THREEDS2_CHALLENGE","submitAnalytics","aObj","ANALYTICS_RENDERED_STR","super","onComplete","state","this","unmount","render","existy","props","paymentData","dataTypeForError","hasOwnProperty","onError","AdyenCheckoutError","API_ERROR","THREEDS2_ERROR","code","Analytics3DS2Errors","ACTION_IS_MISSING_PAYMENT_DATA","errorType","ANALYTICS_API_ERROR","message","THREEDS2_CHALLENGE_ERROR","h","CoreProvider","i18n","loadingContext","resources","PrepareChallenge","onSubmitAnalytics","isMDFlow","length"],"mappings":"+wBAaA,MAAMA,UAA0BC,EAC5BC,YAAqBC,EAAWC,kBAEhCF,oBAA6B,CACzBG,QAAS,gBACTC,KAAMC,EACNC,KAAMC,GAGAC,gBAAmBC,IACrBA,EAAKH,OAASI,GAElBC,MAAMH,gBAAgBC,EAAAA,EAG1BG,UAAAA,CAAWC,GAMHA,GAAOF,MAAMC,WAAWC,GAC5BC,KAAKC,SACT,CAEAC,MAAAA,GAEI,IAAKC,EAAOH,KAAKI,MAAMC,aAAc,CAKjC,MAAMC,EAAmBC,EAAeP,KAAKI,MAAO,YAAc,cAAgB,qBAWlF,OATAJ,KAAKI,MAAMI,QAAQ,IAAIC,EAAmBC,EAAW,MAAMJ,8CAE3DN,KAAKN,gBAAgB,CACjBF,KAAMmB,EACNC,KAAMC,EAAoBC,+BAC1BC,UAAWC,EACXC,QAAS,GAAGC,2DAGT,IACX,CAEA,OACIC,EAACC,EAAAA,CAAaC,KAAMrB,KAAKI,MAAMiB,KAAMC,eAAgBtB,KAAKI,MAAMkB,eAAgBC,UAAWvB,KAAKuB,WAC5FJ,EAACK,EAAAA,IACOxB,KAAKI,MACTN,WAAYE,KAAKF,WACjB2B,kBAAmBzB,KAAKN,gBACxBgC,SAAU1B,KAAKI,MAAMC,YAAYsB,OAAS,KAI1D"}
1
+ {"version":3,"file":"ThreeDS2Challenge.js","sources":["../../../../src/components/ThreeDS2/ThreeDS2Challenge.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport PrepareChallenge from './components/Challenge';\nimport { DEFAULT_CHALLENGE_WINDOW_SIZE, THREEDS2_CHALLENGE, THREEDS2_CHALLENGE_ERROR, THREEDS2_ERROR } from './constants';\nimport { existy } from '../../utils/commonUtils';\nimport { hasOwnProperty } from '../../utils/hasOwnProperty';\nimport { TxVariants } from '../tx-variants';\nimport { ThreeDS2ChallengeConfiguration } from './types';\nimport AdyenCheckoutError, { API_ERROR } from '../../core/Errors/AdyenCheckoutError';\nimport { ANALYTICS_API_ERROR, Analytics3DS2Errors, ANALYTICS_RENDERED_STR } from '../../core/Analytics/constants';\nimport { SendAnalyticsObject } from '../../core/Analytics/types';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\n\nclass ThreeDS2Challenge extends UIElement<ThreeDS2ChallengeConfiguration> {\n public static type = TxVariants.threeDS2Challenge;\n\n public static defaultProps = {\n dataKey: 'threeDSResult',\n size: DEFAULT_CHALLENGE_WINDOW_SIZE,\n type: THREEDS2_CHALLENGE\n };\n\n protected submitAnalytics = (aObj: SendAnalyticsObject) => {\n if (aObj.type === ANALYTICS_RENDERED_STR) return; // suppress the rendered event (it will have the same timestamp as the \"creq sent\" event)\n\n super.submitAnalytics(aObj);\n };\n\n onComplete(state) {\n /**\n * Equals a call to onAdditionalDetails (as set in actionTypes.ts) for the regular, \"native\" flow.\n * However, if the action to create this component came from the 3DS2InMDFlow process it will instead equal a call to the onComplete callback\n * (as defined in the 3DS2InMDFlow and passed in as a config prop).\n */\n if (state) super.onComplete(state);\n this.unmount(); // re. fixing issue around back to back challenge calls\n }\n\n render() {\n // existy used because threeds2InMDFlow will send empty string for paymentData and we should be allowed to proceed with this\n if (!existy(this.props.paymentData)) {\n /**\n * The presence of props.isMDFlow indicates the action to create this component came from the threeds2InMDFlow process which passes (an empty) paymentsData.\n * The regular, \"native\" flow uses the authorisationToken from the 3DS2 action, which actionTypes.ts assigns to a property called paymentData\n */\n const dataTypeForError = hasOwnProperty(this.props, 'isMDFlow') ? 'paymentData' : 'authorisationToken';\n\n this.props.onError(new AdyenCheckoutError(API_ERROR, `No ${dataTypeForError} received. 3DS2 Challenge cannot proceed`));\n\n this.submitAnalytics({\n type: THREEDS2_ERROR,\n code: Analytics3DS2Errors.ACTION_IS_MISSING_PAYMENT_DATA,\n errorType: ANALYTICS_API_ERROR,\n message: `${THREEDS2_CHALLENGE_ERROR}: Missing 'paymentData' property from threeDS2 action`\n });\n\n return null;\n }\n\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <PrepareChallenge\n {...this.props}\n onComplete={this.onComplete}\n onSubmitAnalytics={this.submitAnalytics}\n isMDFlow={this.props.paymentData.length < 15}\n />\n </CoreProvider>\n );\n }\n}\n\nexport default ThreeDS2Challenge;\n"],"names":["ThreeDS2Challenge","UIElement","static","TxVariants","threeDS2Challenge","dataKey","size","DEFAULT_CHALLENGE_WINDOW_SIZE","type","THREEDS2_CHALLENGE","submitAnalytics","aObj","ANALYTICS_RENDERED_STR","super","onComplete","state","this","unmount","render","existy","props","paymentData","dataTypeForError","hasOwnProperty","onError","AdyenCheckoutError","API_ERROR","THREEDS2_ERROR","code","Analytics3DS2Errors","ACTION_IS_MISSING_PAYMENT_DATA","errorType","ANALYTICS_API_ERROR","message","THREEDS2_CHALLENGE_ERROR","h","CoreProvider","i18n","loadingContext","resources","PrepareChallenge","onSubmitAnalytics","isMDFlow","length"],"mappings":"mvBAaA,MAAMA,UAA0BC,EAC5BC,YAAqBC,EAAWC,kBAEhCF,oBAA6B,CACzBG,QAAS,gBACTC,KAAMC,EACNC,KAAMC,GAGAC,gBAAmBC,IACrBA,EAAKH,OAASI,GAElBC,MAAMH,gBAAgBC,EAAAA,EAG1BG,UAAAA,CAAWC,GAMHA,GAAOF,MAAMC,WAAWC,GAC5BC,KAAKC,SACT,CAEAC,MAAAA,GAEI,IAAKC,EAAOH,KAAKI,MAAMC,aAAc,CAKjC,MAAMC,EAAmBC,EAAeP,KAAKI,MAAO,YAAc,cAAgB,qBAWlF,OATAJ,KAAKI,MAAMI,QAAQ,IAAIC,EAAmBC,EAAW,MAAMJ,8CAE3DN,KAAKN,gBAAgB,CACjBF,KAAMmB,EACNC,KAAMC,EAAoBC,+BAC1BC,UAAWC,EACXC,QAAS,GAAGC,2DAGT,IACX,CAEA,OACIC,EAACC,EAAAA,CAAaC,KAAMrB,KAAKI,MAAMiB,KAAMC,eAAgBtB,KAAKI,MAAMkB,eAAgBC,UAAWvB,KAAKuB,WAC5FJ,EAACK,EAAAA,IACOxB,KAAKI,MACTN,WAAYE,KAAKF,WACjB2B,kBAAmBzB,KAAKN,gBACxBgC,SAAU1B,KAAKI,MAAMC,YAAYsB,OAAS,KAI1D"}
@@ -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 r from"./components/DeviceFingerprint/PrepareFingerprint3DS2.js";import i from"./callSubmit3DS2Fingerprint.js";import{existy as s}from"../internal/SecuredFields/lib/utilities/commonUtils.js";import{TxVariants as n}from"../tx-variants.js";import o,{API_ERROR as p}from"../../core/Errors/AdyenCheckoutError.js";import{ANALYTICS_RENDERED_STR as a,Analytics3DS2Errors as m,ANALYTICS_API_ERROR as l}from"../../core/Analytics/constants.js";import{THREEDS2_FINGERPRINT as c,THREEDS2_ERROR as u,THREEDS2_FINGERPRINT_ERROR as y}from"./constants.js";class h extends e{static type=n.threeDS2Fingerprint;static defaultProps={dataKey:"fingerprintResult",type:c};callSubmit3DS2Fingerprint=i.bind(this);submitAnalytics=t=>{t.type!==a&&super.submitAnalytics(t)};onComplete(t){super.onComplete(t),this.unmount()}render(){return s(this.props.paymentData)?t(r,{...this.props,onComplete:this.props.isMDFlow?this.onComplete:this.callSubmit3DS2Fingerprint,onSubmitAnalytics:this.submitAnalytics,isMDFlow:this.props.paymentData.length<15}):(this.props.onError(new o(p,"No paymentData received. 3DS2 Fingerprint cannot proceed")),this.submitAnalytics({type:u,code:m.ACTION_IS_MISSING_PAYMENT_DATA,errorType:l,message:`${y}: Missing 'paymentData' property from threeDS2 action`}),null)}}export{h as default};
1
+ import{createElement as t}from"../../external/preact/dist/preact.js";import{UIElement as r}from"../internal/UIElement/UIElement.js";import e from"./components/DeviceFingerprint/PrepareFingerprint3DS2.js";import i from"./callSubmit3DS2Fingerprint.js";import{existy as s}from"../../utils/commonUtils.js";import{TxVariants as n}from"../tx-variants.js";import o,{API_ERROR as p}from"../../core/Errors/AdyenCheckoutError.js";import{ANALYTICS_RENDERED_STR as a,Analytics3DS2Errors as m,ANALYTICS_API_ERROR as l}from"../../core/Analytics/constants.js";import{THREEDS2_FINGERPRINT as c,THREEDS2_ERROR as u,THREEDS2_FINGERPRINT_ERROR as y}from"./constants.js";class h extends r{static type=n.threeDS2Fingerprint;static defaultProps={dataKey:"fingerprintResult",type:c};callSubmit3DS2Fingerprint=i.bind(this);submitAnalytics=t=>{t.type!==a&&super.submitAnalytics(t)};onComplete(t){super.onComplete(t),this.unmount()}render(){return s(this.props.paymentData)?t(e,{...this.props,onComplete:this.props.isMDFlow?this.onComplete:this.callSubmit3DS2Fingerprint,onSubmitAnalytics:this.submitAnalytics,isMDFlow:this.props.paymentData.length<15}):(this.props.onError(new o(p,"No paymentData received. 3DS2 Fingerprint cannot proceed")),this.submitAnalytics({type:u,code:m.ACTION_IS_MISSING_PAYMENT_DATA,errorType:l,message:`${y}: Missing 'paymentData' property from threeDS2 action`}),null)}}export{h as default};
2
2
  //# sourceMappingURL=ThreeDS2DeviceFingerprint.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ThreeDS2DeviceFingerprint.js","sources":["../../../../src/components/ThreeDS2/ThreeDS2DeviceFingerprint.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport PrepareFingerprint from './components/DeviceFingerprint';\nimport callSubmit3DS2Fingerprint from './callSubmit3DS2Fingerprint';\nimport { existy } from '../internal/SecuredFields/lib/utilities/commonUtils';\nimport { TxVariants } from '../tx-variants';\nimport { ThreeDS2DeviceFingerprintConfiguration } from './types';\nimport AdyenCheckoutError, { API_ERROR } from '../../core/Errors/AdyenCheckoutError';\nimport { ANALYTICS_API_ERROR, Analytics3DS2Errors, ANALYTICS_RENDERED_STR } from '../../core/Analytics/constants';\nimport { SendAnalyticsObject } from '../../core/Analytics/types';\nimport { THREEDS2_ERROR, THREEDS2_FINGERPRINT, THREEDS2_FINGERPRINT_ERROR } from './constants';\n\nclass ThreeDS2DeviceFingerprint extends UIElement<ThreeDS2DeviceFingerprintConfiguration> {\n public static type = TxVariants.threeDS2Fingerprint;\n\n public static defaultProps = {\n dataKey: 'fingerprintResult',\n type: THREEDS2_FINGERPRINT\n };\n\n private callSubmit3DS2Fingerprint = callSubmit3DS2Fingerprint.bind(this); // New 3DS2 flow\n\n protected submitAnalytics = (aObj: SendAnalyticsObject) => {\n if (aObj.type === ANALYTICS_RENDERED_STR) return; // suppress the rendered event (it will have the same timestamp as the \"threeDSMethodData sent\" event)\n\n super.submitAnalytics(aObj);\n };\n\n onComplete(state) {\n super.onComplete(state);\n this.unmount(); // re. fixing issue around back to back fingerprinting calls\n }\n\n render() {\n /**\n * In the regular components (aka \"native\") flow we can't proceed because something has gone wrong with the payment if paymentData is missing from the threeDS2 action.\n * In the MDFlow the paymentData is always present (albeit an empty string, which is why we use 'existy' since we should be allowed to proceed with this)\n */\n if (!existy(this.props.paymentData)) {\n this.props.onError(new AdyenCheckoutError(API_ERROR, `No paymentData received. 3DS2 Fingerprint cannot proceed`));\n\n // TODO - check logs to see if this *ever* happens\n this.submitAnalytics({\n type: THREEDS2_ERROR,\n code: Analytics3DS2Errors.ACTION_IS_MISSING_PAYMENT_DATA,\n errorType: ANALYTICS_API_ERROR,\n message: `${THREEDS2_FINGERPRINT_ERROR}: Missing 'paymentData' property from threeDS2 action`\n });\n\n return null;\n }\n\n /**\n * this.props.isMDFlow indicates the action to create this component came from the 3DS2InMDFlow process and upon completion should call the\n * passed onComplete callback (as defined in the 3DS2InMDFlow) instead of the /submitThreeDS2Fingerprint endpoint for the regular, \"native\" flow\n */\n return (\n <PrepareFingerprint\n {...this.props}\n onComplete={this.props.isMDFlow ? this.onComplete : this.callSubmit3DS2Fingerprint}\n onSubmitAnalytics={this.submitAnalytics}\n isMDFlow={this.props.paymentData.length < 15}\n />\n );\n }\n}\n\nexport default ThreeDS2DeviceFingerprint;\n"],"names":["ThreeDS2DeviceFingerprint","UIElement","static","TxVariants","threeDS2Fingerprint","dataKey","type","THREEDS2_FINGERPRINT","callSubmit3DS2Fingerprint","bind","this","submitAnalytics","aObj","ANALYTICS_RENDERED_STR","super","onComplete","state","unmount","render","existy","props","paymentData","h","PrepareFingerprint","isMDFlow","onSubmitAnalytics","length","onError","AdyenCheckoutError","API_ERROR","THREEDS2_ERROR","code","Analytics3DS2Errors","ACTION_IS_MISSING_PAYMENT_DATA","errorType","ANALYTICS_API_ERROR","message","THREEDS2_FINGERPRINT_ERROR"],"mappings":"uqBAYA,MAAMA,UAAkCC,EACpCC,YAAqBC,EAAWC,oBAEhCF,oBAA6B,CACzBG,QAAS,oBACTC,KAAMC,GAGFC,0BAA4BA,EAA0BC,KAAKC,MAEzDC,gBAAmBC,IACrBA,EAAKN,OAASO,GAElBC,MAAMH,gBAAgBC,EAAAA,EAG1BG,UAAAA,CAAWC,GACPF,MAAMC,WAAWC,GACjBN,KAAKO,SACT,CAEAC,MAAAA,GAKI,OAAKC,EAAOT,KAAKU,MAAMC,aAmBnBC,EAACC,EAAAA,IACOb,KAAKU,MACTL,WAAYL,KAAKU,MAAMI,SAAWd,KAAKK,WAAaL,KAAKF,0BACzDiB,kBAAmBf,KAAKC,gBACxBa,SAAUd,KAAKU,MAAMC,YAAYK,OAAS,MAtB9ChB,KAAKU,MAAMO,QAAQ,IAAIC,EAAmBC,EAAW,6DAGrDnB,KAAKC,gBAAgB,CACjBL,KAAMwB,EACNC,KAAMC,EAAoBC,+BAC1BC,UAAWC,EACXC,QAAS,GAAGC,2DAGT,KAef"}
1
+ {"version":3,"file":"ThreeDS2DeviceFingerprint.js","sources":["../../../../src/components/ThreeDS2/ThreeDS2DeviceFingerprint.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport PrepareFingerprint from './components/DeviceFingerprint';\nimport callSubmit3DS2Fingerprint from './callSubmit3DS2Fingerprint';\nimport { existy } from '../../utils/commonUtils';\nimport { TxVariants } from '../tx-variants';\nimport { ThreeDS2DeviceFingerprintConfiguration } from './types';\nimport AdyenCheckoutError, { API_ERROR } from '../../core/Errors/AdyenCheckoutError';\nimport { ANALYTICS_API_ERROR, Analytics3DS2Errors, ANALYTICS_RENDERED_STR } from '../../core/Analytics/constants';\nimport { SendAnalyticsObject } from '../../core/Analytics/types';\nimport { THREEDS2_ERROR, THREEDS2_FINGERPRINT, THREEDS2_FINGERPRINT_ERROR } from './constants';\n\nclass ThreeDS2DeviceFingerprint extends UIElement<ThreeDS2DeviceFingerprintConfiguration> {\n public static type = TxVariants.threeDS2Fingerprint;\n\n public static defaultProps = {\n dataKey: 'fingerprintResult',\n type: THREEDS2_FINGERPRINT\n };\n\n private callSubmit3DS2Fingerprint = callSubmit3DS2Fingerprint.bind(this); // New 3DS2 flow\n\n protected submitAnalytics = (aObj: SendAnalyticsObject) => {\n if (aObj.type === ANALYTICS_RENDERED_STR) return; // suppress the rendered event (it will have the same timestamp as the \"threeDSMethodData sent\" event)\n\n super.submitAnalytics(aObj);\n };\n\n onComplete(state) {\n super.onComplete(state);\n this.unmount(); // re. fixing issue around back to back fingerprinting calls\n }\n\n render() {\n /**\n * In the regular components (aka \"native\") flow we can't proceed because something has gone wrong with the payment if paymentData is missing from the threeDS2 action.\n * In the MDFlow the paymentData is always present (albeit an empty string, which is why we use 'existy' since we should be allowed to proceed with this)\n */\n if (!existy(this.props.paymentData)) {\n this.props.onError(new AdyenCheckoutError(API_ERROR, `No paymentData received. 3DS2 Fingerprint cannot proceed`));\n\n // TODO - check logs to see if this *ever* happens\n this.submitAnalytics({\n type: THREEDS2_ERROR,\n code: Analytics3DS2Errors.ACTION_IS_MISSING_PAYMENT_DATA,\n errorType: ANALYTICS_API_ERROR,\n message: `${THREEDS2_FINGERPRINT_ERROR}: Missing 'paymentData' property from threeDS2 action`\n });\n\n return null;\n }\n\n /**\n * this.props.isMDFlow indicates the action to create this component came from the 3DS2InMDFlow process and upon completion should call the\n * passed onComplete callback (as defined in the 3DS2InMDFlow) instead of the /submitThreeDS2Fingerprint endpoint for the regular, \"native\" flow\n */\n return (\n <PrepareFingerprint\n {...this.props}\n onComplete={this.props.isMDFlow ? this.onComplete : this.callSubmit3DS2Fingerprint}\n onSubmitAnalytics={this.submitAnalytics}\n isMDFlow={this.props.paymentData.length < 15}\n />\n );\n }\n}\n\nexport default ThreeDS2DeviceFingerprint;\n"],"names":["ThreeDS2DeviceFingerprint","UIElement","static","TxVariants","threeDS2Fingerprint","dataKey","type","THREEDS2_FINGERPRINT","callSubmit3DS2Fingerprint","bind","this","submitAnalytics","aObj","ANALYTICS_RENDERED_STR","super","onComplete","state","unmount","render","existy","props","paymentData","h","PrepareFingerprint","isMDFlow","onSubmitAnalytics","length","onError","AdyenCheckoutError","API_ERROR","THREEDS2_ERROR","code","Analytics3DS2Errors","ACTION_IS_MISSING_PAYMENT_DATA","errorType","ANALYTICS_API_ERROR","message","THREEDS2_FINGERPRINT_ERROR"],"mappings":"2oBAYA,MAAMA,UAAkCC,EACpCC,YAAqBC,EAAWC,oBAEhCF,oBAA6B,CACzBG,QAAS,oBACTC,KAAMC,GAGFC,0BAA4BA,EAA0BC,KAAKC,MAEzDC,gBAAmBC,IACrBA,EAAKN,OAASO,GAElBC,MAAMH,gBAAgBC,EAAAA,EAG1BG,UAAAA,CAAWC,GACPF,MAAMC,WAAWC,GACjBN,KAAKO,SACT,CAEAC,MAAAA,GAKI,OAAKC,EAAOT,KAAKU,MAAMC,aAmBnBC,EAACC,EAAAA,IACOb,KAAKU,MACTL,WAAYL,KAAKU,MAAMI,SAAWd,KAAKK,WAAaL,KAAKF,0BACzDiB,kBAAmBf,KAAKC,gBACxBa,SAAUd,KAAKU,MAAMC,YAAYK,OAAS,MAtB9ChB,KAAKU,MAAMO,QAAQ,IAAIC,EAAmBC,EAAW,6DAGrDnB,KAAKC,gBAAgB,CACjBL,KAAMwB,EACNC,KAAMC,EAAoBC,+BAC1BC,UAAWC,EACXC,QAAS,GAAGC,2DAGT,KAef"}
@@ -1,2 +1,2 @@
1
- import{httpPost as e}from"../../core/Services/http.js";import{pick as t}from"../internal/SecuredFields/utils.js";import{THREEDS2_ERROR as n,THREEDS2_FINGERPRINT_SUBMIT as i}from"./constants.js";import{Analytics3DS2Errors as o,ANALYTICS_API_ERROR as r,ANALYTICS_SDK_ERROR as s}from"../../core/Analytics/constants.js";function a({data:a}){e({path:`v1/submitThreeDS2Fingerprint?token=${this.props.clientKey}`,loadingContext:this.props.loadingContext,errorLevel:"fatal"},{...a}).then((e=>{let a;if("completed"===e.type){const{details:t}=e;return e.details?this.onComplete({data:{details:t}}):(console.debug('Handled Error::callSubmit3DS2Fingerprint::FAILED:: no details object in a response indicating either a "frictionless" flow, or a "refused" response. resData=',e),a={type:n,code:o.NO_DETAILS_FOR_FRICTIONLESS_OR_REFUSED,errorType:r,message:`${i}: no details object in a response indicating either a "frictionless" flow, or a "refused" response`},void this.submitAnalytics(a))}if(!e.action)return console.debug('Handled Error::callSubmit3DS2Fingerprint::FAILED:: no action object in a response indicating a "challenge". resData=',e),a={type:n,code:o.NO_ACTION_FOR_CHALLENGE,errorType:r,message:`${i}: no action object in a response indicating a "challenge" flow`},void this.submitAnalytics(a);const c=this.props.elementRef??this;return c?"threeDS2"===e.action?.type?c.handleAction(e.action,t("challengeWindowSize").from(this.props)):"redirect"===e.action?.type?c.handleAction(e.action):void 0:(console.debug("Handled Error::callSubmit3DS2Fingerprint::FAILED:: no actionHandler"),a={type:n,code:o.NO_COMPONENT_FOR_ACTION,errorType:s,message:`${i}: no component defined to handle the action response`},void this.submitAnalytics(a))})).catch((e=>{this.handleError(e)}))}export{a as default};
1
+ import{httpPost as e}from"../../core/Services/http.js";import{pick as t}from"../../utils/commonUtils.js";import{THREEDS2_ERROR as o,THREEDS2_FINGERPRINT_SUBMIT as n}from"./constants.js";import{Analytics3DS2Errors as i,ANALYTICS_API_ERROR as r,ANALYTICS_SDK_ERROR as s}from"../../core/Analytics/constants.js";function a({data:a}){e({path:`v1/submitThreeDS2Fingerprint?token=${this.props.clientKey}`,loadingContext:this.props.loadingContext,errorLevel:"fatal"},{...a}).then((e=>{let a;if("completed"===e.type){const{details:t}=e;return e.details?this.onComplete({data:{details:t}}):(console.debug('Handled Error::callSubmit3DS2Fingerprint::FAILED:: no details object in a response indicating either a "frictionless" flow, or a "refused" response. resData=',e),a={type:o,code:i.NO_DETAILS_FOR_FRICTIONLESS_OR_REFUSED,errorType:r,message:`${n}: no details object in a response indicating either a "frictionless" flow, or a "refused" response`},void this.submitAnalytics(a))}if(!e.action)return console.debug('Handled Error::callSubmit3DS2Fingerprint::FAILED:: no action object in a response indicating a "challenge". resData=',e),a={type:o,code:i.NO_ACTION_FOR_CHALLENGE,errorType:r,message:`${n}: no action object in a response indicating a "challenge" flow`},void this.submitAnalytics(a);const c=this.props.elementRef??this;return c?"threeDS2"===e.action?.type?c.handleAction(e.action,t("challengeWindowSize").from(this.props)):"redirect"===e.action?.type?c.handleAction(e.action):void 0:(console.debug("Handled Error::callSubmit3DS2Fingerprint::FAILED:: no actionHandler"),a={type:o,code:i.NO_COMPONENT_FOR_ACTION,errorType:s,message:`${n}: no component defined to handle the action response`},void this.submitAnalytics(a))})).catch((e=>{this.handleError(e)}))}export{a as default};
2
2
  //# sourceMappingURL=callSubmit3DS2Fingerprint.js.map