@adyen/adyen-web 6.25.1 → 6.26.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (580) hide show
  1. package/dist/cjs/adyen.css +14 -11
  2. package/dist/cjs/adyen.css.map +1 -1
  3. package/dist/cjs/index.cjs +2 -2
  4. package/dist/cjs/index.cjs.map +1 -1
  5. package/dist/cjs/index.d.cts +2257 -2222
  6. package/dist/es/adyen.css +14 -11
  7. package/dist/es/adyen.css.map +1 -1
  8. package/dist/es/components/ANCV/ANCV.js +1 -1
  9. package/dist/es/components/ANCV/ANCV.js.map +1 -1
  10. package/dist/es/components/Ach/Ach.js +1 -1
  11. package/dist/es/components/Ach/Ach.js.map +1 -1
  12. package/dist/es/components/Address/Address.js +1 -1
  13. package/dist/es/components/Address/Address.js.map +1 -1
  14. package/dist/es/components/AmazonPay/AmazonPay.js +1 -1
  15. package/dist/es/components/AmazonPay/AmazonPay.js.map +1 -1
  16. package/dist/es/components/ApplePay/ApplePay.js +1 -1
  17. package/dist/es/components/ApplePay/ApplePay.js.map +1 -1
  18. package/dist/es/components/ApplePay/services/ApplePaySdkLoader.js.map +1 -1
  19. package/dist/es/components/ApplePay/utils/resolve-supported-version.js +1 -1
  20. package/dist/es/components/ApplePay/utils/resolve-supported-version.js.map +1 -1
  21. package/dist/es/components/BacsDD/BacsDD.js +1 -1
  22. package/dist/es/components/BacsDD/BacsDD.js.map +1 -1
  23. package/dist/es/components/BankTransfer/BankTransfer.js +1 -1
  24. package/dist/es/components/BankTransfer/BankTransfer.js.map +1 -1
  25. package/dist/es/components/Blik/Blik.js +1 -1
  26. package/dist/es/components/Blik/Blik.js.map +1 -1
  27. package/dist/es/components/Boleto/Boleto.js +1 -1
  28. package/dist/es/components/Boleto/Boleto.js.map +1 -1
  29. package/dist/es/components/Card/Card.js +1 -1
  30. package/dist/es/components/Card/Card.js.map +1 -1
  31. package/dist/es/components/Card/components/CardInput/CardInput.js +1 -1
  32. package/dist/es/components/Card/components/CardInput/CardInput.js.map +1 -1
  33. package/dist/es/components/Card/components/CardInput/components/AvailableBrands/AvailableBrands.js +1 -1
  34. package/dist/es/components/Card/components/CardInput/components/AvailableBrands/AvailableBrands.js.map +1 -1
  35. package/dist/es/components/Card/components/CardInput/components/BrandIcon.js +1 -1
  36. package/dist/es/components/Card/components/CardInput/components/BrandIcon.js.map +1 -1
  37. package/dist/es/components/Card/components/CardInput/components/CVC.js +1 -1
  38. package/dist/es/components/Card/components/CardInput/components/CVC.js.map +1 -1
  39. package/dist/es/components/Card/components/CardInput/components/CVCHint.js +1 -1
  40. package/dist/es/components/Card/components/CardInput/components/CVCHint.js.map +1 -1
  41. package/dist/es/components/Card/components/CardInput/components/CardNumber.js +1 -1
  42. package/dist/es/components/Card/components/CardInput/components/CardNumber.js.map +1 -1
  43. package/dist/es/components/Card/components/CardInput/components/ExpirationDate.js +1 -1
  44. package/dist/es/components/Card/components/CardInput/components/ExpirationDate.js.map +1 -1
  45. package/dist/es/components/Card/components/CardInput/types.js.map +1 -1
  46. package/dist/es/components/Card/components/CardInput/utils.js +1 -1
  47. package/dist/es/components/Card/components/CardInput/utils.js.map +1 -1
  48. package/dist/es/components/Card/components/Fastlane/FastlaneSignup.js +1 -1
  49. package/dist/es/components/Card/components/Fastlane/FastlaneSignup.js.map +1 -1
  50. package/dist/es/components/Card/components/Fastlane/InfoButton.js +1 -1
  51. package/dist/es/components/Card/components/Fastlane/InfoButton.js.map +1 -1
  52. package/dist/es/components/Card/components/Fastlane/InfoModal.js +1 -1
  53. package/dist/es/components/Card/components/Fastlane/InfoModal.js.map +1 -1
  54. package/dist/es/components/CashAppPay/CashAppPay.js +1 -1
  55. package/dist/es/components/CashAppPay/CashAppPay.js.map +1 -1
  56. package/dist/es/components/CashAppPay/services/CashAppSdkLoader.js.map +1 -1
  57. package/dist/es/components/ClickToPay/ClickToPay.js +1 -1
  58. package/dist/es/components/ClickToPay/ClickToPay.js.map +1 -1
  59. package/dist/es/components/CustomCard/CustomCard.js +1 -1
  60. package/dist/es/components/CustomCard/CustomCard.js.map +1 -1
  61. package/dist/es/components/Doku/Doku.js +1 -1
  62. package/dist/es/components/Doku/Doku.js.map +1 -1
  63. package/dist/es/components/Donation/Donation.js +1 -1
  64. package/dist/es/components/Donation/Donation.js.map +1 -1
  65. package/dist/es/components/Dragonpay/Dragonpay.js +1 -1
  66. package/dist/es/components/Dragonpay/Dragonpay.js.map +1 -1
  67. package/dist/es/components/Dropin/Dropin.js +1 -1
  68. package/dist/es/components/Dropin/Dropin.js.map +1 -1
  69. package/dist/es/components/Dropin/components/DropinComponent.js +1 -1
  70. package/dist/es/components/Dropin/components/DropinComponent.js.map +1 -1
  71. package/dist/es/components/Dropin/components/PaymentMethod/InstantPaymentMethods.js +1 -1
  72. package/dist/es/components/Dropin/components/PaymentMethod/InstantPaymentMethods.js.map +1 -1
  73. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodBrands/PaymentMethodBrands.js +1 -1
  74. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodBrands/PaymentMethodBrands.js.map +1 -1
  75. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodDetails.js +1 -1
  76. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodDetails.js.map +1 -1
  77. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodIcon.js +1 -1
  78. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodIcon.js.map +1 -1
  79. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodItem/PaymentMethodItem.js +1 -1
  80. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodItem/PaymentMethodItem.js.map +1 -1
  81. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodList.js +1 -1
  82. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodList.js.map +1 -1
  83. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodsContainer.js +1 -1
  84. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodsContainer.js.map +1 -1
  85. package/dist/es/components/Dropin/elements/createElements.js +1 -1
  86. package/dist/es/components/Dropin/elements/createElements.js.map +1 -1
  87. package/dist/es/components/Dropin/elements/createInstantPaymentElements.js +1 -1
  88. package/dist/es/components/Dropin/elements/createInstantPaymentElements.js.map +1 -1
  89. package/dist/es/components/Dropin/elements/createStoredElements.js.map +1 -1
  90. package/dist/es/components/Dropin/elements/filters.js.map +1 -1
  91. package/dist/es/components/Dropin/elements/splitPaymentMethods.js.map +1 -1
  92. package/dist/es/components/Econtext/Econtext.js +1 -1
  93. package/dist/es/components/Econtext/Econtext.js.map +1 -1
  94. package/dist/es/components/Giftcard/Giftcard.js +1 -1
  95. package/dist/es/components/Giftcard/Giftcard.js.map +1 -1
  96. package/dist/es/components/Giropay/Giropay.js +1 -1
  97. package/dist/es/components/Giropay/Giropay.js.map +1 -1
  98. package/dist/es/components/GooglePay/GooglePay.js +1 -1
  99. package/dist/es/components/GooglePay/GooglePay.js.map +1 -1
  100. package/dist/es/components/GooglePay/GooglePayService.js.map +1 -1
  101. package/dist/es/components/Klarna/KlarnaPayments.js +1 -1
  102. package/dist/es/components/Klarna/KlarnaPayments.js.map +1 -1
  103. package/dist/es/components/MBWay/MBWay.js +1 -1
  104. package/dist/es/components/MBWay/MBWay.js.map +1 -1
  105. package/dist/es/components/Multibanco/Multibanco.js +1 -1
  106. package/dist/es/components/Multibanco/Multibanco.js.map +1 -1
  107. package/dist/es/components/Oxxo/Oxxo.js +1 -1
  108. package/dist/es/components/Oxxo/Oxxo.js.map +1 -1
  109. package/dist/es/components/PayByBankPix/PayByBankPix.js +1 -1
  110. package/dist/es/components/PayByBankPix/PayByBankPix.js.map +1 -1
  111. package/dist/es/components/PayByBankPix/components/Enrollment/Enrollment.js +1 -1
  112. package/dist/es/components/PayByBankPix/components/Enrollment/Enrollment.js.map +1 -1
  113. package/dist/es/components/PayByBankPix/components/Enrollment/components/PayByBankPixAwait.js +1 -1
  114. package/dist/es/components/PayByBankPix/components/Enrollment/components/PayByBankPixAwait.js.map +1 -1
  115. package/dist/es/components/PayByBankPix/services/PasskeySdkLoader.js.map +1 -1
  116. package/dist/es/components/PayByBankPix/services/PasskeyService.js.map +1 -1
  117. package/dist/es/components/PayByBankUS/PayByBankUS.js +1 -1
  118. package/dist/es/components/PayByBankUS/PayByBankUS.js.map +1 -1
  119. package/dist/es/components/PayPal/Paypal.js +1 -1
  120. package/dist/es/components/PayPal/Paypal.js.map +1 -1
  121. package/dist/es/components/PayPalFastlane/Fastlane.js +1 -1
  122. package/dist/es/components/PayPalFastlane/Fastlane.js.map +1 -1
  123. package/dist/es/components/PayPalFastlane/FastlaneSDK.js +1 -1
  124. package/dist/es/components/PayPalFastlane/FastlaneSDK.js.map +1 -1
  125. package/dist/es/components/PayTo/PayTo.js +1 -1
  126. package/dist/es/components/PayTo/PayTo.js.map +1 -1
  127. package/dist/es/components/PersonalDetails/PersonalDetails.js +1 -1
  128. package/dist/es/components/PersonalDetails/PersonalDetails.js.map +1 -1
  129. package/dist/es/components/Pix/Pix.js +1 -1
  130. package/dist/es/components/Pix/Pix.js.map +1 -1
  131. package/dist/es/components/Pix/components/PixQRDetails.js +1 -1
  132. package/dist/es/components/Pix/components/PixQRDetails.js.map +1 -1
  133. package/dist/es/components/PreAuthorizedDebitCanada/PreAuthorizedDebitCanada.js +1 -1
  134. package/dist/es/components/PreAuthorizedDebitCanada/PreAuthorizedDebitCanada.js.map +1 -1
  135. package/dist/es/components/Redirect/Redirect.js +1 -1
  136. package/dist/es/components/Redirect/Redirect.js.map +1 -1
  137. package/dist/es/components/Sepa/Sepa.js +1 -1
  138. package/dist/es/components/Sepa/Sepa.js.map +1 -1
  139. package/dist/es/components/ThreeDS2/ThreeDS2Challenge.js +1 -1
  140. package/dist/es/components/ThreeDS2/ThreeDS2Challenge.js.map +1 -1
  141. package/dist/es/components/ThreeDS2/ThreeDS2DeviceFingerprint.js +1 -1
  142. package/dist/es/components/ThreeDS2/ThreeDS2DeviceFingerprint.js.map +1 -1
  143. package/dist/es/components/ThreeDS2/callSubmit3DS2Fingerprint.js +1 -1
  144. package/dist/es/components/ThreeDS2/callSubmit3DS2Fingerprint.js.map +1 -1
  145. package/dist/es/components/ThreeDS2/components/Challenge/PrepareChallenge3DS2.js +1 -1
  146. package/dist/es/components/ThreeDS2/components/Challenge/PrepareChallenge3DS2.js.map +1 -1
  147. package/dist/es/components/ThreeDS2/components/DeviceFingerprint/PrepareFingerprint3DS2.js +1 -1
  148. package/dist/es/components/ThreeDS2/components/DeviceFingerprint/PrepareFingerprint3DS2.js.map +1 -1
  149. package/dist/es/components/Trustly/Trustly.js +1 -1
  150. package/dist/es/components/Trustly/Trustly.js.map +1 -1
  151. package/dist/es/components/UPI/UPI.js +1 -1
  152. package/dist/es/components/UPI/UPI.js.map +1 -1
  153. package/dist/es/components/UPI/components/VpaInput/VpaInput.js +1 -1
  154. package/dist/es/components/UPI/components/VpaInput/VpaInput.js.map +1 -1
  155. package/dist/es/components/UPI/components/VpaInput/validate.js +1 -1
  156. package/dist/es/components/UPI/components/VpaInput/validate.js.map +1 -1
  157. package/dist/es/components/WeChat/WeChat.js +1 -1
  158. package/dist/es/components/WeChat/WeChat.js.map +1 -1
  159. package/dist/es/components/helpers/IssuerListContainer/IssuerListContainer.js +1 -1
  160. package/dist/es/components/helpers/IssuerListContainer/IssuerListContainer.js.map +1 -1
  161. package/dist/es/components/helpers/OpenInvoiceContainer/OpenInvoiceContainer.js +1 -1
  162. package/dist/es/components/helpers/OpenInvoiceContainer/OpenInvoiceContainer.js.map +1 -1
  163. package/dist/es/components/helpers/QRLoaderContainer/QRLoaderContainer.js +1 -1
  164. package/dist/es/components/helpers/QRLoaderContainer/QRLoaderContainer.js.map +1 -1
  165. package/dist/es/components/internal/Await/Await.js +1 -1
  166. package/dist/es/components/internal/Await/Await.js.map +1 -1
  167. package/dist/es/components/internal/Await/components/AwaitFinalState.js +2 -0
  168. package/dist/es/components/internal/Await/components/AwaitFinalState.js.map +1 -0
  169. package/dist/es/components/internal/BaseElement/BaseElement.js +1 -1
  170. package/dist/es/components/internal/BaseElement/BaseElement.js.map +1 -1
  171. package/dist/es/components/internal/Brand/Brand.js +2 -0
  172. package/dist/es/components/internal/Brand/Brand.js.map +1 -0
  173. package/dist/es/components/internal/ClickToPay/components/CtPCards/CtPCards.js +1 -1
  174. package/dist/es/components/internal/ClickToPay/components/CtPCards/CtPCards.js.map +1 -1
  175. package/dist/es/components/internal/ClickToPay/components/CtPCards/CtPCardsList/CtPCardsList.js +1 -1
  176. package/dist/es/components/internal/ClickToPay/components/CtPCards/CtPCardsList/CtPCardsList.js.map +1 -1
  177. package/dist/es/components/internal/ClickToPay/components/CtPInfo/CtPInfo.js +1 -1
  178. package/dist/es/components/internal/ClickToPay/components/CtPInfo/CtPInfo.js.map +1 -1
  179. package/dist/es/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPOneTimePasswordInput.js +1 -1
  180. package/dist/es/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPOneTimePasswordInput.js.map +1 -1
  181. package/dist/es/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPResendOtpLink.js +1 -1
  182. package/dist/es/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPResendOtpLink.js.map +1 -1
  183. package/dist/es/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/validate.js +1 -1
  184. package/dist/es/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/validate.js.map +1 -1
  185. package/dist/es/components/internal/ClickToPay/services/ClickToPayService.js.map +1 -1
  186. package/dist/es/components/internal/ClickToPay/services/create-clicktopay-service.js.map +1 -1
  187. package/dist/es/components/internal/ClickToPay/services/sdks/AbstractSrcInitiator.js.map +1 -1
  188. package/dist/es/components/internal/ClickToPay/services/sdks/MastercardSdk.js.map +1 -1
  189. package/dist/es/components/internal/ClickToPay/services/sdks/SrcSdkLoader.js.map +1 -1
  190. package/dist/es/components/internal/ClickToPay/services/sdks/VisaSdk.js.map +1 -1
  191. package/dist/es/components/internal/FormFields/Field/Field.js +1 -1
  192. package/dist/es/components/internal/FormFields/Field/Field.js.map +1 -1
  193. package/dist/es/components/internal/FormFields/InputBase.js.map +1 -1
  194. package/dist/es/components/internal/FormFields/RadioGroupExtended/RadioGroupExtended.js +1 -1
  195. package/dist/es/components/internal/FormFields/RadioGroupExtended/RadioGroupExtended.js.map +1 -1
  196. package/dist/es/components/internal/FormFields/Select/components/SelectListItem.js +1 -1
  197. package/dist/es/components/internal/FormFields/Select/components/SelectListItem.js.map +1 -1
  198. package/dist/es/components/internal/Icon/Icon.js +1 -1
  199. package/dist/es/components/internal/Icon/Icon.js.map +1 -1
  200. package/dist/es/components/internal/Img/Img.js +1 -1
  201. package/dist/es/components/internal/Img/Img.js.map +1 -1
  202. package/dist/es/components/internal/IssuerList/IssuerList.js +1 -1
  203. package/dist/es/components/internal/IssuerList/IssuerList.js.map +1 -1
  204. package/dist/es/components/internal/PersonalDetails/PersonalDetails.js +1 -1
  205. package/dist/es/components/internal/PersonalDetails/PersonalDetails.js.map +1 -1
  206. package/dist/es/components/internal/PersonalDetails/utils.js +1 -1
  207. package/dist/es/components/internal/PersonalDetails/utils.js.map +1 -1
  208. package/dist/es/components/internal/PersonalDetails/validate.js +1 -1
  209. package/dist/es/components/internal/PersonalDetails/validate.js.map +1 -1
  210. package/dist/es/components/internal/QRLoader/QRLoader.js +1 -1
  211. package/dist/es/components/internal/QRLoader/QRLoader.js.map +1 -1
  212. package/dist/es/components/internal/QRLoader/components/QRCodeCopyButton.js +1 -1
  213. package/dist/es/components/internal/QRLoader/components/QRCodeCopyButton.js.map +1 -1
  214. package/dist/es/components/internal/QRLoader/components/QRCountdown.js +1 -1
  215. package/dist/es/components/internal/QRLoader/components/QRCountdown.js.map +1 -1
  216. package/dist/es/components/internal/QRLoader/components/QRDetails.js +1 -1
  217. package/dist/es/components/internal/QRLoader/components/QRDetails.js.map +1 -1
  218. package/dist/es/components/internal/QRLoader/components/QRImage.js +1 -1
  219. package/dist/es/components/internal/QRLoader/components/QRImage.js.map +1 -1
  220. package/dist/es/components/internal/QRLoader/components/QRIntructions.js +1 -1
  221. package/dist/es/components/internal/QRLoader/components/QRIntructions.js.map +1 -1
  222. package/dist/es/components/internal/QRLoader/components/QRProgressbar.js +1 -1
  223. package/dist/es/components/internal/QRLoader/components/QRProgressbar.js.map +1 -1
  224. package/dist/es/components/internal/UIElement/UIElement.js +1 -1
  225. package/dist/es/components/internal/UIElement/UIElement.js.map +1 -1
  226. package/dist/es/components/internal/UIElement/utils.js.map +1 -1
  227. package/dist/es/core/Analytics/Analytics.js +1 -1
  228. package/dist/es/core/Analytics/Analytics.js.map +1 -1
  229. package/dist/es/core/Analytics/AnalyticsEventQueue.js +2 -0
  230. package/dist/es/core/Analytics/AnalyticsEventQueue.js.map +1 -0
  231. package/dist/es/core/Analytics/AnalyticsService.js +2 -0
  232. package/dist/es/core/Analytics/AnalyticsService.js.map +1 -0
  233. package/dist/es/core/Analytics/constants.js +1 -1
  234. package/dist/es/core/Analytics/constants.js.map +1 -1
  235. package/dist/es/core/Analytics/events/AbstractAnalyticsEvent.js +2 -0
  236. package/dist/es/core/Analytics/events/AbstractAnalyticsEvent.js.map +1 -0
  237. package/dist/es/core/Analytics/events/AnalyticsErrorEvent.js +2 -0
  238. package/dist/es/core/Analytics/events/AnalyticsErrorEvent.js.map +1 -0
  239. package/dist/es/core/Analytics/events/AnalyticsInfoEvent.js +2 -0
  240. package/dist/es/core/Analytics/events/AnalyticsInfoEvent.js.map +1 -0
  241. package/dist/es/core/Analytics/events/AnalyticsLogEvent.js +2 -0
  242. package/dist/es/core/Analytics/events/AnalyticsLogEvent.js.map +1 -0
  243. package/dist/es/core/Analytics/utils.js +1 -1
  244. package/dist/es/core/Analytics/utils.js.map +1 -1
  245. package/dist/es/core/Context/CoreProvider.js +1 -1
  246. package/dist/es/core/Context/CoreProvider.js.map +1 -1
  247. package/dist/es/core/ProcessResponse/PaymentAction/actionTypes.js.map +1 -1
  248. package/dist/es/core/ProcessResponse/PaymentMethods/PaymentMethods.js +1 -1
  249. package/dist/es/core/ProcessResponse/PaymentMethods/PaymentMethods.js.map +1 -1
  250. package/dist/es/core/ProcessResponse/PaymentMethods/utils.js +1 -1
  251. package/dist/es/core/ProcessResponse/PaymentMethods/utils.js.map +1 -1
  252. package/dist/es/core/ProcessResponse/{process-response.js → PaymentStatus/PaymentStatus.js} +2 -2
  253. package/dist/es/core/ProcessResponse/PaymentStatus/PaymentStatus.js.map +1 -0
  254. package/dist/es/core/Services/http.js +1 -1
  255. package/dist/es/core/Services/http.js.map +1 -1
  256. package/dist/es/core/Services/payment-status.js.map +1 -1
  257. package/dist/es/core/config.js +1 -1
  258. package/dist/es/core/core.js +1 -1
  259. package/dist/es/core/core.js.map +1 -1
  260. package/dist/es/external/preact/compat/dist/compat.js +1 -1
  261. package/dist/es/external/preact/compat/dist/compat.js.map +1 -1
  262. package/dist/es/hooks/usePaymentStatusTimer/constants.js +2 -0
  263. package/dist/es/hooks/usePaymentStatusTimer/constants.js.map +1 -0
  264. package/dist/es/hooks/usePaymentStatusTimer/usePaymentStatusTimer.js +2 -0
  265. package/dist/es/hooks/usePaymentStatusTimer/usePaymentStatusTimer.js.map +1 -0
  266. package/dist/es/index.d.ts +2257 -2222
  267. package/dist/es/utils/Script.js +1 -1
  268. package/dist/es/utils/Script.js.map +1 -1
  269. package/dist/es/utils/amount-util.js.map +1 -1
  270. package/dist/es/utils/commonUtils.js +1 -1
  271. package/dist/es/utils/commonUtils.js.map +1 -1
  272. package/dist/es/utils/getErrorMessage.js +1 -1
  273. package/dist/es/utils/getErrorMessage.js.map +1 -1
  274. package/dist/es/utils/urls.js +2 -0
  275. package/dist/es/utils/urls.js.map +1 -0
  276. package/dist/es-legacy/adyen.css +14 -11
  277. package/dist/es-legacy/adyen.css.map +1 -1
  278. package/dist/es-legacy/components/ANCV/ANCV.js +1 -1
  279. package/dist/es-legacy/components/ANCV/ANCV.js.map +1 -1
  280. package/dist/es-legacy/components/Ach/Ach.js +1 -1
  281. package/dist/es-legacy/components/Ach/Ach.js.map +1 -1
  282. package/dist/es-legacy/components/Address/Address.js +1 -1
  283. package/dist/es-legacy/components/Address/Address.js.map +1 -1
  284. package/dist/es-legacy/components/AmazonPay/AmazonPay.js +1 -1
  285. package/dist/es-legacy/components/AmazonPay/AmazonPay.js.map +1 -1
  286. package/dist/es-legacy/components/ApplePay/ApplePay.js +1 -1
  287. package/dist/es-legacy/components/ApplePay/ApplePay.js.map +1 -1
  288. package/dist/es-legacy/components/ApplePay/services/ApplePaySdkLoader.js.map +1 -1
  289. package/dist/es-legacy/components/ApplePay/utils/resolve-supported-version.js +1 -1
  290. package/dist/es-legacy/components/ApplePay/utils/resolve-supported-version.js.map +1 -1
  291. package/dist/es-legacy/components/BacsDD/BacsDD.js +1 -1
  292. package/dist/es-legacy/components/BacsDD/BacsDD.js.map +1 -1
  293. package/dist/es-legacy/components/BankTransfer/BankTransfer.js +1 -1
  294. package/dist/es-legacy/components/BankTransfer/BankTransfer.js.map +1 -1
  295. package/dist/es-legacy/components/Blik/Blik.js +1 -1
  296. package/dist/es-legacy/components/Blik/Blik.js.map +1 -1
  297. package/dist/es-legacy/components/Boleto/Boleto.js +1 -1
  298. package/dist/es-legacy/components/Boleto/Boleto.js.map +1 -1
  299. package/dist/es-legacy/components/Card/Card.js +1 -1
  300. package/dist/es-legacy/components/Card/Card.js.map +1 -1
  301. package/dist/es-legacy/components/Card/components/CardInput/CardInput.js +1 -1
  302. package/dist/es-legacy/components/Card/components/CardInput/CardInput.js.map +1 -1
  303. package/dist/es-legacy/components/Card/components/CardInput/components/AvailableBrands/AvailableBrands.js +1 -1
  304. package/dist/es-legacy/components/Card/components/CardInput/components/AvailableBrands/AvailableBrands.js.map +1 -1
  305. package/dist/es-legacy/components/Card/components/CardInput/components/BrandIcon.js +1 -1
  306. package/dist/es-legacy/components/Card/components/CardInput/components/BrandIcon.js.map +1 -1
  307. package/dist/es-legacy/components/Card/components/CardInput/components/CVC.js +1 -1
  308. package/dist/es-legacy/components/Card/components/CardInput/components/CVC.js.map +1 -1
  309. package/dist/es-legacy/components/Card/components/CardInput/components/CVCHint.js +1 -1
  310. package/dist/es-legacy/components/Card/components/CardInput/components/CVCHint.js.map +1 -1
  311. package/dist/es-legacy/components/Card/components/CardInput/components/CardNumber.js +1 -1
  312. package/dist/es-legacy/components/Card/components/CardInput/components/CardNumber.js.map +1 -1
  313. package/dist/es-legacy/components/Card/components/CardInput/components/ExpirationDate.js +1 -1
  314. package/dist/es-legacy/components/Card/components/CardInput/components/ExpirationDate.js.map +1 -1
  315. package/dist/es-legacy/components/Card/components/CardInput/types.js.map +1 -1
  316. package/dist/es-legacy/components/Card/components/CardInput/utils.js +1 -1
  317. package/dist/es-legacy/components/Card/components/CardInput/utils.js.map +1 -1
  318. package/dist/es-legacy/components/Card/components/Fastlane/FastlaneSignup.js +1 -1
  319. package/dist/es-legacy/components/Card/components/Fastlane/FastlaneSignup.js.map +1 -1
  320. package/dist/es-legacy/components/Card/components/Fastlane/InfoButton.js +1 -1
  321. package/dist/es-legacy/components/Card/components/Fastlane/InfoButton.js.map +1 -1
  322. package/dist/es-legacy/components/Card/components/Fastlane/InfoModal.js +1 -1
  323. package/dist/es-legacy/components/Card/components/Fastlane/InfoModal.js.map +1 -1
  324. package/dist/es-legacy/components/CashAppPay/CashAppPay.js +1 -1
  325. package/dist/es-legacy/components/CashAppPay/CashAppPay.js.map +1 -1
  326. package/dist/es-legacy/components/CashAppPay/services/CashAppSdkLoader.js.map +1 -1
  327. package/dist/es-legacy/components/ClickToPay/ClickToPay.js +1 -1
  328. package/dist/es-legacy/components/ClickToPay/ClickToPay.js.map +1 -1
  329. package/dist/es-legacy/components/CustomCard/CustomCard.js +1 -1
  330. package/dist/es-legacy/components/CustomCard/CustomCard.js.map +1 -1
  331. package/dist/es-legacy/components/Doku/Doku.js +1 -1
  332. package/dist/es-legacy/components/Doku/Doku.js.map +1 -1
  333. package/dist/es-legacy/components/Donation/Donation.js +1 -1
  334. package/dist/es-legacy/components/Donation/Donation.js.map +1 -1
  335. package/dist/es-legacy/components/Dragonpay/Dragonpay.js +1 -1
  336. package/dist/es-legacy/components/Dragonpay/Dragonpay.js.map +1 -1
  337. package/dist/es-legacy/components/Dropin/Dropin.js +1 -1
  338. package/dist/es-legacy/components/Dropin/Dropin.js.map +1 -1
  339. package/dist/es-legacy/components/Dropin/components/DropinComponent.js +1 -1
  340. package/dist/es-legacy/components/Dropin/components/DropinComponent.js.map +1 -1
  341. package/dist/es-legacy/components/Dropin/components/PaymentMethod/InstantPaymentMethods.js +1 -1
  342. package/dist/es-legacy/components/Dropin/components/PaymentMethod/InstantPaymentMethods.js.map +1 -1
  343. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodBrands/PaymentMethodBrands.js +1 -1
  344. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodBrands/PaymentMethodBrands.js.map +1 -1
  345. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodDetails.js +1 -1
  346. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodDetails.js.map +1 -1
  347. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodIcon.js +1 -1
  348. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodIcon.js.map +1 -1
  349. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodItem/PaymentMethodItem.js +1 -1
  350. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodItem/PaymentMethodItem.js.map +1 -1
  351. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodList.js +1 -1
  352. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodList.js.map +1 -1
  353. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodsContainer.js +1 -1
  354. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodsContainer.js.map +1 -1
  355. package/dist/es-legacy/components/Dropin/elements/createElements.js +1 -1
  356. package/dist/es-legacy/components/Dropin/elements/createElements.js.map +1 -1
  357. package/dist/es-legacy/components/Dropin/elements/createInstantPaymentElements.js +1 -1
  358. package/dist/es-legacy/components/Dropin/elements/createInstantPaymentElements.js.map +1 -1
  359. package/dist/es-legacy/components/Dropin/elements/createStoredElements.js.map +1 -1
  360. package/dist/es-legacy/components/Dropin/elements/filters.js.map +1 -1
  361. package/dist/es-legacy/components/Dropin/elements/splitPaymentMethods.js.map +1 -1
  362. package/dist/es-legacy/components/Econtext/Econtext.js +1 -1
  363. package/dist/es-legacy/components/Econtext/Econtext.js.map +1 -1
  364. package/dist/es-legacy/components/Giftcard/Giftcard.js +1 -1
  365. package/dist/es-legacy/components/Giftcard/Giftcard.js.map +1 -1
  366. package/dist/es-legacy/components/Giropay/Giropay.js +1 -1
  367. package/dist/es-legacy/components/Giropay/Giropay.js.map +1 -1
  368. package/dist/es-legacy/components/GooglePay/GooglePay.js +1 -1
  369. package/dist/es-legacy/components/GooglePay/GooglePay.js.map +1 -1
  370. package/dist/es-legacy/components/GooglePay/GooglePayService.js.map +1 -1
  371. package/dist/es-legacy/components/Klarna/KlarnaPayments.js +1 -1
  372. package/dist/es-legacy/components/Klarna/KlarnaPayments.js.map +1 -1
  373. package/dist/es-legacy/components/MBWay/MBWay.js +1 -1
  374. package/dist/es-legacy/components/MBWay/MBWay.js.map +1 -1
  375. package/dist/es-legacy/components/Multibanco/Multibanco.js +1 -1
  376. package/dist/es-legacy/components/Multibanco/Multibanco.js.map +1 -1
  377. package/dist/es-legacy/components/Oxxo/Oxxo.js +1 -1
  378. package/dist/es-legacy/components/Oxxo/Oxxo.js.map +1 -1
  379. package/dist/es-legacy/components/PayByBankPix/PayByBankPix.js +1 -1
  380. package/dist/es-legacy/components/PayByBankPix/PayByBankPix.js.map +1 -1
  381. package/dist/es-legacy/components/PayByBankPix/components/Enrollment/Enrollment.js +1 -1
  382. package/dist/es-legacy/components/PayByBankPix/components/Enrollment/Enrollment.js.map +1 -1
  383. package/dist/es-legacy/components/PayByBankPix/components/Enrollment/components/PayByBankPixAwait.js +1 -1
  384. package/dist/es-legacy/components/PayByBankPix/components/Enrollment/components/PayByBankPixAwait.js.map +1 -1
  385. package/dist/es-legacy/components/PayByBankPix/services/PasskeySdkLoader.js.map +1 -1
  386. package/dist/es-legacy/components/PayByBankPix/services/PasskeyService.js.map +1 -1
  387. package/dist/es-legacy/components/PayByBankUS/PayByBankUS.js +1 -1
  388. package/dist/es-legacy/components/PayByBankUS/PayByBankUS.js.map +1 -1
  389. package/dist/es-legacy/components/PayPal/Paypal.js +1 -1
  390. package/dist/es-legacy/components/PayPal/Paypal.js.map +1 -1
  391. package/dist/es-legacy/components/PayPalFastlane/Fastlane.js +1 -1
  392. package/dist/es-legacy/components/PayPalFastlane/Fastlane.js.map +1 -1
  393. package/dist/es-legacy/components/PayPalFastlane/FastlaneSDK.js +1 -1
  394. package/dist/es-legacy/components/PayPalFastlane/FastlaneSDK.js.map +1 -1
  395. package/dist/es-legacy/components/PayTo/PayTo.js +1 -1
  396. package/dist/es-legacy/components/PayTo/PayTo.js.map +1 -1
  397. package/dist/es-legacy/components/PersonalDetails/PersonalDetails.js +1 -1
  398. package/dist/es-legacy/components/PersonalDetails/PersonalDetails.js.map +1 -1
  399. package/dist/es-legacy/components/Pix/Pix.js +1 -1
  400. package/dist/es-legacy/components/Pix/Pix.js.map +1 -1
  401. package/dist/es-legacy/components/Pix/components/PixQRDetails.js +1 -1
  402. package/dist/es-legacy/components/Pix/components/PixQRDetails.js.map +1 -1
  403. package/dist/es-legacy/components/PreAuthorizedDebitCanada/PreAuthorizedDebitCanada.js +1 -1
  404. package/dist/es-legacy/components/PreAuthorizedDebitCanada/PreAuthorizedDebitCanada.js.map +1 -1
  405. package/dist/es-legacy/components/Redirect/Redirect.js +1 -1
  406. package/dist/es-legacy/components/Redirect/Redirect.js.map +1 -1
  407. package/dist/es-legacy/components/Sepa/Sepa.js +1 -1
  408. package/dist/es-legacy/components/Sepa/Sepa.js.map +1 -1
  409. package/dist/es-legacy/components/ThreeDS2/ThreeDS2Challenge.js +1 -1
  410. package/dist/es-legacy/components/ThreeDS2/ThreeDS2Challenge.js.map +1 -1
  411. package/dist/es-legacy/components/ThreeDS2/ThreeDS2DeviceFingerprint.js +1 -1
  412. package/dist/es-legacy/components/ThreeDS2/ThreeDS2DeviceFingerprint.js.map +1 -1
  413. package/dist/es-legacy/components/ThreeDS2/callSubmit3DS2Fingerprint.js +1 -1
  414. package/dist/es-legacy/components/ThreeDS2/callSubmit3DS2Fingerprint.js.map +1 -1
  415. package/dist/es-legacy/components/ThreeDS2/components/Challenge/PrepareChallenge3DS2.js +1 -1
  416. package/dist/es-legacy/components/ThreeDS2/components/Challenge/PrepareChallenge3DS2.js.map +1 -1
  417. package/dist/es-legacy/components/ThreeDS2/components/DeviceFingerprint/PrepareFingerprint3DS2.js +1 -1
  418. package/dist/es-legacy/components/ThreeDS2/components/DeviceFingerprint/PrepareFingerprint3DS2.js.map +1 -1
  419. package/dist/es-legacy/components/Trustly/Trustly.js +1 -1
  420. package/dist/es-legacy/components/Trustly/Trustly.js.map +1 -1
  421. package/dist/es-legacy/components/UPI/UPI.js +1 -1
  422. package/dist/es-legacy/components/UPI/UPI.js.map +1 -1
  423. package/dist/es-legacy/components/UPI/components/VpaInput/VpaInput.js +1 -1
  424. package/dist/es-legacy/components/UPI/components/VpaInput/VpaInput.js.map +1 -1
  425. package/dist/es-legacy/components/UPI/components/VpaInput/validate.js +1 -1
  426. package/dist/es-legacy/components/UPI/components/VpaInput/validate.js.map +1 -1
  427. package/dist/es-legacy/components/WeChat/WeChat.js +1 -1
  428. package/dist/es-legacy/components/WeChat/WeChat.js.map +1 -1
  429. package/dist/es-legacy/components/helpers/IssuerListContainer/IssuerListContainer.js +1 -1
  430. package/dist/es-legacy/components/helpers/IssuerListContainer/IssuerListContainer.js.map +1 -1
  431. package/dist/es-legacy/components/helpers/OpenInvoiceContainer/OpenInvoiceContainer.js +1 -1
  432. package/dist/es-legacy/components/helpers/OpenInvoiceContainer/OpenInvoiceContainer.js.map +1 -1
  433. package/dist/es-legacy/components/helpers/QRLoaderContainer/QRLoaderContainer.js +1 -1
  434. package/dist/es-legacy/components/helpers/QRLoaderContainer/QRLoaderContainer.js.map +1 -1
  435. package/dist/es-legacy/components/internal/Await/Await.js +1 -1
  436. package/dist/es-legacy/components/internal/Await/Await.js.map +1 -1
  437. package/dist/es-legacy/components/internal/Await/components/AwaitFinalState.js +2 -0
  438. package/dist/es-legacy/components/internal/Await/components/AwaitFinalState.js.map +1 -0
  439. package/dist/es-legacy/components/internal/BaseElement/BaseElement.js +1 -1
  440. package/dist/es-legacy/components/internal/BaseElement/BaseElement.js.map +1 -1
  441. package/dist/es-legacy/components/internal/Brand/Brand.js +2 -0
  442. package/dist/es-legacy/components/internal/Brand/Brand.js.map +1 -0
  443. package/dist/es-legacy/components/internal/ClickToPay/components/CtPCards/CtPCards.js +1 -1
  444. package/dist/es-legacy/components/internal/ClickToPay/components/CtPCards/CtPCards.js.map +1 -1
  445. package/dist/es-legacy/components/internal/ClickToPay/components/CtPCards/CtPCardsList/CtPCardsList.js +1 -1
  446. package/dist/es-legacy/components/internal/ClickToPay/components/CtPCards/CtPCardsList/CtPCardsList.js.map +1 -1
  447. package/dist/es-legacy/components/internal/ClickToPay/components/CtPInfo/CtPInfo.js +1 -1
  448. package/dist/es-legacy/components/internal/ClickToPay/components/CtPInfo/CtPInfo.js.map +1 -1
  449. package/dist/es-legacy/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPOneTimePasswordInput.js +1 -1
  450. package/dist/es-legacy/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPOneTimePasswordInput.js.map +1 -1
  451. package/dist/es-legacy/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPResendOtpLink.js +1 -1
  452. package/dist/es-legacy/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPResendOtpLink.js.map +1 -1
  453. package/dist/es-legacy/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/validate.js +1 -1
  454. package/dist/es-legacy/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/validate.js.map +1 -1
  455. package/dist/es-legacy/components/internal/ClickToPay/services/ClickToPayService.js.map +1 -1
  456. package/dist/es-legacy/components/internal/ClickToPay/services/create-clicktopay-service.js.map +1 -1
  457. package/dist/es-legacy/components/internal/ClickToPay/services/sdks/AbstractSrcInitiator.js.map +1 -1
  458. package/dist/es-legacy/components/internal/ClickToPay/services/sdks/MastercardSdk.js.map +1 -1
  459. package/dist/es-legacy/components/internal/ClickToPay/services/sdks/SrcSdkLoader.js.map +1 -1
  460. package/dist/es-legacy/components/internal/ClickToPay/services/sdks/VisaSdk.js.map +1 -1
  461. package/dist/es-legacy/components/internal/FormFields/Field/Field.js +1 -1
  462. package/dist/es-legacy/components/internal/FormFields/Field/Field.js.map +1 -1
  463. package/dist/es-legacy/components/internal/FormFields/InputBase.js.map +1 -1
  464. package/dist/es-legacy/components/internal/FormFields/RadioGroupExtended/RadioGroupExtended.js +1 -1
  465. package/dist/es-legacy/components/internal/FormFields/RadioGroupExtended/RadioGroupExtended.js.map +1 -1
  466. package/dist/es-legacy/components/internal/FormFields/Select/components/SelectListItem.js +1 -1
  467. package/dist/es-legacy/components/internal/FormFields/Select/components/SelectListItem.js.map +1 -1
  468. package/dist/es-legacy/components/internal/Icon/Icon.js +1 -1
  469. package/dist/es-legacy/components/internal/Icon/Icon.js.map +1 -1
  470. package/dist/es-legacy/components/internal/Img/Img.js +1 -1
  471. package/dist/es-legacy/components/internal/Img/Img.js.map +1 -1
  472. package/dist/es-legacy/components/internal/IssuerList/IssuerList.js +1 -1
  473. package/dist/es-legacy/components/internal/IssuerList/IssuerList.js.map +1 -1
  474. package/dist/es-legacy/components/internal/PersonalDetails/PersonalDetails.js +1 -1
  475. package/dist/es-legacy/components/internal/PersonalDetails/PersonalDetails.js.map +1 -1
  476. package/dist/es-legacy/components/internal/PersonalDetails/utils.js +1 -1
  477. package/dist/es-legacy/components/internal/PersonalDetails/utils.js.map +1 -1
  478. package/dist/es-legacy/components/internal/PersonalDetails/validate.js +1 -1
  479. package/dist/es-legacy/components/internal/PersonalDetails/validate.js.map +1 -1
  480. package/dist/es-legacy/components/internal/QRLoader/QRLoader.js +1 -1
  481. package/dist/es-legacy/components/internal/QRLoader/QRLoader.js.map +1 -1
  482. package/dist/es-legacy/components/internal/QRLoader/components/QRCodeCopyButton.js +1 -1
  483. package/dist/es-legacy/components/internal/QRLoader/components/QRCodeCopyButton.js.map +1 -1
  484. package/dist/es-legacy/components/internal/QRLoader/components/QRCountdown.js +1 -1
  485. package/dist/es-legacy/components/internal/QRLoader/components/QRCountdown.js.map +1 -1
  486. package/dist/es-legacy/components/internal/QRLoader/components/QRDetails.js +1 -1
  487. package/dist/es-legacy/components/internal/QRLoader/components/QRDetails.js.map +1 -1
  488. package/dist/es-legacy/components/internal/QRLoader/components/QRImage.js +1 -1
  489. package/dist/es-legacy/components/internal/QRLoader/components/QRImage.js.map +1 -1
  490. package/dist/es-legacy/components/internal/QRLoader/components/QRIntructions.js +1 -1
  491. package/dist/es-legacy/components/internal/QRLoader/components/QRIntructions.js.map +1 -1
  492. package/dist/es-legacy/components/internal/QRLoader/components/QRProgressbar.js +1 -1
  493. package/dist/es-legacy/components/internal/QRLoader/components/QRProgressbar.js.map +1 -1
  494. package/dist/es-legacy/components/internal/UIElement/UIElement.js +1 -1
  495. package/dist/es-legacy/components/internal/UIElement/UIElement.js.map +1 -1
  496. package/dist/es-legacy/components/internal/UIElement/utils.js.map +1 -1
  497. package/dist/es-legacy/core/Analytics/Analytics.js +1 -1
  498. package/dist/es-legacy/core/Analytics/Analytics.js.map +1 -1
  499. package/dist/es-legacy/core/Analytics/AnalyticsEventQueue.js +2 -0
  500. package/dist/es-legacy/core/Analytics/AnalyticsEventQueue.js.map +1 -0
  501. package/dist/es-legacy/core/Analytics/AnalyticsService.js +2 -0
  502. package/dist/es-legacy/core/Analytics/AnalyticsService.js.map +1 -0
  503. package/dist/es-legacy/core/Analytics/constants.js +1 -1
  504. package/dist/es-legacy/core/Analytics/constants.js.map +1 -1
  505. package/dist/es-legacy/core/Analytics/events/AbstractAnalyticsEvent.js +2 -0
  506. package/dist/es-legacy/core/Analytics/events/AbstractAnalyticsEvent.js.map +1 -0
  507. package/dist/es-legacy/core/Analytics/events/AnalyticsErrorEvent.js +2 -0
  508. package/dist/es-legacy/core/Analytics/events/AnalyticsErrorEvent.js.map +1 -0
  509. package/dist/es-legacy/core/Analytics/events/AnalyticsInfoEvent.js +2 -0
  510. package/dist/es-legacy/core/Analytics/events/AnalyticsInfoEvent.js.map +1 -0
  511. package/dist/es-legacy/core/Analytics/events/AnalyticsLogEvent.js +2 -0
  512. package/dist/es-legacy/core/Analytics/events/AnalyticsLogEvent.js.map +1 -0
  513. package/dist/es-legacy/core/Analytics/utils.js +1 -1
  514. package/dist/es-legacy/core/Analytics/utils.js.map +1 -1
  515. package/dist/es-legacy/core/Context/CoreProvider.js +1 -1
  516. package/dist/es-legacy/core/Context/CoreProvider.js.map +1 -1
  517. package/dist/es-legacy/core/ProcessResponse/PaymentAction/actionTypes.js.map +1 -1
  518. package/dist/es-legacy/core/ProcessResponse/PaymentMethods/PaymentMethods.js +1 -1
  519. package/dist/es-legacy/core/ProcessResponse/PaymentMethods/PaymentMethods.js.map +1 -1
  520. package/dist/es-legacy/core/ProcessResponse/PaymentMethods/utils.js +1 -1
  521. package/dist/es-legacy/core/ProcessResponse/PaymentMethods/utils.js.map +1 -1
  522. package/dist/es-legacy/core/ProcessResponse/{process-response.js → PaymentStatus/PaymentStatus.js} +2 -2
  523. package/dist/es-legacy/core/ProcessResponse/PaymentStatus/PaymentStatus.js.map +1 -0
  524. package/dist/es-legacy/core/Services/http.js +1 -1
  525. package/dist/es-legacy/core/Services/http.js.map +1 -1
  526. package/dist/es-legacy/core/Services/payment-status.js.map +1 -1
  527. package/dist/es-legacy/core/config.js +1 -1
  528. package/dist/es-legacy/core/core.js +1 -1
  529. package/dist/es-legacy/core/core.js.map +1 -1
  530. package/dist/es-legacy/external/preact/compat/dist/compat.js +1 -1
  531. package/dist/es-legacy/external/preact/compat/dist/compat.js.map +1 -1
  532. package/dist/es-legacy/hooks/usePaymentStatusTimer/constants.js +2 -0
  533. package/dist/es-legacy/hooks/usePaymentStatusTimer/constants.js.map +1 -0
  534. package/dist/es-legacy/hooks/usePaymentStatusTimer/usePaymentStatusTimer.js +2 -0
  535. package/dist/es-legacy/hooks/usePaymentStatusTimer/usePaymentStatusTimer.js.map +1 -0
  536. package/dist/es-legacy/utils/Script.js +1 -1
  537. package/dist/es-legacy/utils/Script.js.map +1 -1
  538. package/dist/es-legacy/utils/amount-util.js.map +1 -1
  539. package/dist/es-legacy/utils/commonUtils.js +1 -1
  540. package/dist/es-legacy/utils/commonUtils.js.map +1 -1
  541. package/dist/es-legacy/utils/getErrorMessage.js +1 -1
  542. package/dist/es-legacy/utils/getErrorMessage.js.map +1 -1
  543. package/dist/es-legacy/utils/urls.js +2 -0
  544. package/dist/es-legacy/utils/urls.js.map +1 -0
  545. package/package.json +22 -24
  546. package/styles/adyen.css +14 -11
  547. package/dist/es/components/Card/components/CardInput/components/DualBrandingIcon/DualBrandingIcon.js +0 -2
  548. package/dist/es/components/Card/components/CardInput/components/DualBrandingIcon/DualBrandingIcon.js.map +0 -1
  549. package/dist/es/components/Dropin/components/utils.js +0 -2
  550. package/dist/es/components/Dropin/components/utils.js.map +0 -1
  551. package/dist/es/core/Analytics/AnalyticsErrorEvent.js +0 -2
  552. package/dist/es/core/Analytics/AnalyticsErrorEvent.js.map +0 -1
  553. package/dist/es/core/Analytics/AnalyticsEvent.js +0 -2
  554. package/dist/es/core/Analytics/AnalyticsEvent.js.map +0 -1
  555. package/dist/es/core/Analytics/AnalyticsInfoEvent.js +0 -2
  556. package/dist/es/core/Analytics/AnalyticsInfoEvent.js.map +0 -1
  557. package/dist/es/core/Analytics/AnalyticsLogEvent.js +0 -2
  558. package/dist/es/core/Analytics/AnalyticsLogEvent.js.map +0 -1
  559. package/dist/es/core/Analytics/EventsQueue.js +0 -2
  560. package/dist/es/core/Analytics/EventsQueue.js.map +0 -1
  561. package/dist/es/core/ProcessResponse/process-response.js.map +0 -1
  562. package/dist/es/core/Services/analytics/collect-id.js +0 -2
  563. package/dist/es/core/Services/analytics/collect-id.js.map +0 -1
  564. package/dist/es-legacy/components/Card/components/CardInput/components/DualBrandingIcon/DualBrandingIcon.js +0 -2
  565. package/dist/es-legacy/components/Card/components/CardInput/components/DualBrandingIcon/DualBrandingIcon.js.map +0 -1
  566. package/dist/es-legacy/components/Dropin/components/utils.js +0 -2
  567. package/dist/es-legacy/components/Dropin/components/utils.js.map +0 -1
  568. package/dist/es-legacy/core/Analytics/AnalyticsErrorEvent.js +0 -2
  569. package/dist/es-legacy/core/Analytics/AnalyticsErrorEvent.js.map +0 -1
  570. package/dist/es-legacy/core/Analytics/AnalyticsEvent.js +0 -2
  571. package/dist/es-legacy/core/Analytics/AnalyticsEvent.js.map +0 -1
  572. package/dist/es-legacy/core/Analytics/AnalyticsInfoEvent.js +0 -2
  573. package/dist/es-legacy/core/Analytics/AnalyticsInfoEvent.js.map +0 -1
  574. package/dist/es-legacy/core/Analytics/AnalyticsLogEvent.js +0 -2
  575. package/dist/es-legacy/core/Analytics/AnalyticsLogEvent.js.map +0 -1
  576. package/dist/es-legacy/core/Analytics/EventsQueue.js +0 -2
  577. package/dist/es-legacy/core/Analytics/EventsQueue.js.map +0 -1
  578. package/dist/es-legacy/core/ProcessResponse/process-response.js.map +0 -1
  579. package/dist/es-legacy/core/Services/analytics/collect-id.js +0 -2
  580. package/dist/es-legacy/core/Services/analytics/collect-id.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 {\n ANALYTICS_EXPRESS_PAGES_ARRAY,\n ANALYTICS_INSTANT_PAYMENT_BUTTON,\n ANALYTICS_RENDERED_STR,\n ANALYTICS_SELECTED_STR\n} from '../../core/Analytics/constants';\n\nimport type { AddressData, BrowserInfo, PaymentMethod, PaymentResponseData, RawPaymentResponse } from '../../types/global-types';\nimport type { GooglePayConfiguration } from './types';\nimport type { ICore } from '../../core/types';\nimport { AnalyticsInfoEvent } from '../../core/Analytics/AnalyticsInfoEvent';\nimport { AnalyticsEvent } from '../../core/Analytics/AnalyticsEvent';\nimport { mapGooglePayBrands } from './utils/map-adyen-brands-to-googlepay-brands';\n\nconst DEFAULT_ALLOWED_CARD_NETWORKS: google.payments.api.CardNetwork[] = ['AMEX', 'DISCOVER', 'JCB', 'MASTERCARD', 'VISA'];\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 this.showGooglePayPaymentSheet = this.showGooglePayPaymentSheet.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 if (!this.props.configuration.merchantId) {\n throw new AdyenCheckoutError(\n 'IMPLEMENTATION_ERROR',\n 'GooglePay - Missing merchantId. Please ensure that it is correctly configured in your customer area.'\n );\n }\n\n this.googlePay = new GooglePayService(this.props.environment, this.analytics, {\n ...(isExpress && paymentDataCallbacks?.onPaymentDataChanged && { onPaymentDataChanged: paymentDataCallbacks.onPaymentDataChanged }),\n onPaymentAuthorized: this.onPaymentAuthorized\n });\n }\n\n /**\n * Google Pay requires custom logic due to supporting two Tx variants that lead to the same payment method.\n * If the merchant creates a standalone Google Pay component, we need to verify if the payment method is available using both tx variants\n *\n * @param type\n * @returns\n */\n protected override getPaymentMethodFromPaymentMethodsResponse(type?: string): PaymentMethod {\n return (\n this.core.paymentMethodsResponse.find(type || this.constructor['type']) || this.core.paymentMethodsResponse.find(TxVariants.paywithgoogle)\n );\n }\n\n protected override formatProps(props: GooglePayConfiguration): 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 const allowedCardNetworks = this.createAllowedCardNetworksValues({\n allowedCardNetworks: props.allowedCardNetworks,\n brands: props.brands\n });\n\n return {\n ...props,\n allowedCardNetworks,\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 /**\n * Generate the 'allowedCardNetworks' value used by Google Pay\n *\n * If the 'allowedCardNetworks' is defined in the Component configuration, it will be used. Otherwise we fallback\n * to use the 'brands' returned by the backoffice. It can be that 'brands' is not returned, which in this case we\n * set default values\n *\n * @param {object} brandsConfig\n * @param brandsConfig.allowedCardNetworks - Brands set in the component config\n * @param brandsConfig.brands - Brands returned by backend\n * @private\n */\n private createAllowedCardNetworksValues({\n allowedCardNetworks,\n brands\n }: {\n allowedCardNetworks?: google.payments.api.CardNetwork[];\n brands?: string[];\n }): google.payments.api.CardNetwork[] {\n if (allowedCardNetworks?.length > 0) return allowedCardNetworks;\n if (brands?.length > 0) return mapGooglePayBrands(brands);\n\n return DEFAULT_ALLOWED_CARD_NETWORKS;\n }\n\n protected submitAnalytics(analyticsObj: AnalyticsEvent) {\n // Analytics will need to know about this.props.isExpress & this.props.expressPage\n if (analyticsObj instanceof AnalyticsInfoEvent && analyticsObj.type === ANALYTICS_RENDERED_STR) {\n const { isExpress, expressPage } = this.props;\n const hasExpressPage = expressPage && ANALYTICS_EXPRESS_PAGES_ARRAY.includes(expressPage);\n\n if (typeof isExpress === 'boolean') {\n analyticsObj.isExpress = isExpress;\n }\n\n if (isExpress === true && hasExpressPage) {\n analyticsObj.expressPage = expressPage; // We only care about the expressPage value if isExpress is true\n }\n }\n\n super.submitAnalytics(analyticsObj);\n }\n\n /**\n * Displays the Google Pay payment sheet overlay\n */\n private showGooglePayPaymentSheet() {\n this.googlePay.initiatePayment(this.props, this.core.options.countryCode).catch((error: google.payments.api.PaymentsError) => {\n // eslint-disable-next-line @typescript-eslint/no-base-to-string\n this.handleError(new AdyenCheckoutError(error.statusCode === 'CANCELED' ? 'CANCEL' : 'ERROR', error.toString(), { cause: error }));\n });\n }\n\n public override submit = () => {\n if (this.props.isInstantPayment) {\n const event = new AnalyticsInfoEvent({\n type: ANALYTICS_SELECTED_STR,\n target: ANALYTICS_INSTANT_PAYMENT_BUTTON\n });\n\n this.submitAnalytics(event);\n }\n\n new Promise<void>((resolve, reject) => this.props.onClick(resolve, reject)).then(this.showGooglePayPaymentSheet).catch(() => {\n // Swallow exception triggered by onClick reject\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 public get isValid(): boolean {\n return true;\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":["DEFAULT_ALLOWED_CARD_NETWORKS","GooglePay","UIElement","getPaymentMethodFromPaymentMethodsResponse","type","this","core","paymentMethodsResponse","find","constructor","TxVariants","paywithgoogle","formatProps","props","buttonSizeMode","isDropin","buttonLocale","getGooglePayLocale","i18n","locale","callbackIntents","allowedCardNetworks","createAllowedCardNetworksValues","brands","configuration","formatData","googlePayCardNetwork","googlePayToken","billingAddress","deliveryAddress","state","isExpress","paymentMethod","subtype","browserInfo","origin","window","location","length","mapGooglePayBrands","submitAnalytics","analyticsObj","AnalyticsInfoEvent","ANALYTICS_RENDERED_STR","expressPage","hasExpressPage","ANALYTICS_EXPRESS_PAGES_ARRAY","includes","super","showGooglePayPaymentSheet","googlePay","initiatePayment","options","countryCode","catch","error","handleError","AdyenCheckoutError","statusCode","toString","cause","handleAuthorization","Promise","resolve","reject","onAuthorized","authorizedEvent","data","googlePayError","isValid","isAvailable","isReadyToPay","then","response","result","paymentMethodPresent","collectBrowserInfo","icon","resources","getImage","render","showPayButton","h","GooglePayButton","buttonColor","buttonType","buttonRootNode","buttonRadius","paymentsClient","onClick","submit","checkout","_define_property","isInstantPayment","event","ANALYTICS_SELECTED_STR","target","ANALYTICS_INSTANT_PAYMENT_BUTTON","onPaymentAuthorized","async","paymentData","formatGooglePayContactToAdyenAddressFormat","paymentMethodData","info","shippingAddress","setState","tokenizationData","token","cardNetwork","makePaymentsCall","sanitizeResponse","verifyPaymentDidNotFail","paymentResponse","transactionState","handleResponse","setElementStatus","fallbackMessage","get","intent","reason","message","responseWithError","handleFailedResult","prefetch","prefetchPaymentData","bind","paymentDataCallbacks","onPaymentDataChanged","merchantId","GooglePayService","environment","analytics","googlepay","txVariants","defaultProps"],"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';\n\nimport type { AddressData, BrowserInfo, RawPaymentMethod, PaymentResponseData, RawPaymentResponse } from '../../types/global-types';\nimport type { GooglePayConfiguration } from './types';\nimport type { ICore } from '../../core/types';\nimport { AnalyticsInfoEvent, InfoEventType, UiTarget } from '../../core/Analytics/events/AnalyticsInfoEvent';\nimport { mapGooglePayBrands } from './utils/map-adyen-brands-to-googlepay-brands';\n\nconst DEFAULT_ALLOWED_CARD_NETWORKS: google.payments.api.CardNetwork[] = ['AMEX', 'DISCOVER', 'JCB', 'MASTERCARD', 'VISA'];\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 this.showGooglePayPaymentSheet = this.showGooglePayPaymentSheet.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 if (!this.props.configuration.merchantId) {\n throw new AdyenCheckoutError(\n 'IMPLEMENTATION_ERROR',\n 'GooglePay - Missing merchantId. Please ensure that it is correctly configured in your customer area.'\n );\n }\n\n this.googlePay = new GooglePayService(this.props.environment, this.analytics, {\n ...(isExpress && paymentDataCallbacks?.onPaymentDataChanged && { onPaymentDataChanged: paymentDataCallbacks.onPaymentDataChanged }),\n onPaymentAuthorized: this.onPaymentAuthorized\n });\n }\n\n /**\n * Google Pay requires custom logic due to supporting two Tx variants that lead to the same payment method.\n * If the merchant creates a standalone Google Pay component, we need to verify if the payment method is available using both tx variants\n *\n * @param type\n * @param paymentMethodId - Unique internal payment method ID\n * @returns\n */\n protected override getPaymentMethodFromPaymentMethodsResponse(type?: string, paymentMethodId?: string): RawPaymentMethod {\n if (paymentMethodId) return this.core.paymentMethodsResponse.findById(paymentMethodId);\n\n return (\n this.core.paymentMethodsResponse.find(type || this.constructor['type']) || this.core.paymentMethodsResponse.find(TxVariants.paywithgoogle)\n );\n }\n\n protected override formatProps(props: GooglePayConfiguration): 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 const allowedCardNetworks = this.createAllowedCardNetworksValues({\n allowedCardNetworks: props.allowedCardNetworks,\n brands: props.brands\n });\n\n return {\n ...props,\n allowedCardNetworks,\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 /**\n * Generate the 'allowedCardNetworks' value used by Google Pay\n *\n * If the 'allowedCardNetworks' is defined in the Component configuration, it will be used. Otherwise we fallback\n * to use the 'brands' returned by the backoffice. It can be that 'brands' is not returned, which in this case we\n * set default values\n *\n * @param {object} brandsConfig\n * @param brandsConfig.allowedCardNetworks - Brands set in the component config\n * @param brandsConfig.brands - Brands returned by backend\n * @private\n */\n private createAllowedCardNetworksValues({\n allowedCardNetworks,\n brands\n }: {\n allowedCardNetworks?: google.payments.api.CardNetwork[];\n brands?: string[];\n }): google.payments.api.CardNetwork[] {\n if (allowedCardNetworks?.length > 0) return allowedCardNetworks;\n if (brands?.length > 0) return mapGooglePayBrands(brands);\n\n return DEFAULT_ALLOWED_CARD_NETWORKS;\n }\n\n protected override beforeRender(configSetByMerchant?: GooglePayConfiguration) {\n // We don't send 'rendered' events when rendering actions\n if (configSetByMerchant?.originalAction) {\n return;\n }\n\n const event = new AnalyticsInfoEvent({\n type: InfoEventType.rendered,\n component: this.type,\n configData: { ...configSetByMerchant, showPayButton: this.props.showPayButton },\n ...(configSetByMerchant?.isExpress && { isExpress: configSetByMerchant.isExpress }),\n ...(configSetByMerchant?.expressPage && { expressPage: configSetByMerchant.expressPage })\n });\n\n this.analytics.sendAnalytics(event);\n }\n\n /**\n * Displays the Google Pay payment sheet overlay\n */\n private showGooglePayPaymentSheet() {\n this.googlePay.initiatePayment(this.props, this.core.options.countryCode).catch((error: google.payments.api.PaymentsError) => {\n // eslint-disable-next-line @typescript-eslint/no-base-to-string\n this.handleError(new AdyenCheckoutError(error.statusCode === 'CANCELED' ? 'CANCEL' : 'ERROR', error.toString(), { cause: error }));\n });\n }\n\n public override submit = () => {\n if (this.props.isInstantPayment) {\n const event = new AnalyticsInfoEvent({\n component: this.type,\n type: InfoEventType.selected,\n target: UiTarget.instantPaymentButton\n });\n\n this.submitAnalytics(event);\n }\n\n new Promise<void>((resolve, reject) => this.props.onClick(resolve, reject)).then(this.showGooglePayPaymentSheet).catch(() => {\n // Swallow exception triggered by onClick reject\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 public get isValid(): boolean {\n return true;\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 protected override componentToRender(): h.JSX.Element {\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":["DEFAULT_ALLOWED_CARD_NETWORKS","GooglePay","UIElement","getPaymentMethodFromPaymentMethodsResponse","type","paymentMethodId","this","core","paymentMethodsResponse","findById","find","constructor","TxVariants","paywithgoogle","formatProps","props","buttonSizeMode","isDropin","buttonLocale","getGooglePayLocale","i18n","locale","callbackIntents","allowedCardNetworks","createAllowedCardNetworksValues","brands","configuration","formatData","googlePayCardNetwork","googlePayToken","billingAddress","deliveryAddress","state","isExpress","paymentMethod","subtype","browserInfo","origin","window","location","length","mapGooglePayBrands","beforeRender","configSetByMerchant","originalAction","event","AnalyticsInfoEvent","InfoEventType","rendered","component","configData","showPayButton","expressPage","analytics","sendAnalytics","showGooglePayPaymentSheet","googlePay","initiatePayment","options","countryCode","catch","error","handleError","AdyenCheckoutError","statusCode","toString","cause","handleAuthorization","Promise","resolve","reject","onAuthorized","authorizedEvent","data","googlePayError","isValid","isAvailable","isReadyToPay","then","response","result","paymentMethodPresent","collectBrowserInfo","icon","resources","getImage","componentToRender","h","GooglePayButton","buttonColor","buttonType","buttonRootNode","buttonRadius","paymentsClient","onClick","submit","checkout","super","_define_property","isInstantPayment","selected","target","UiTarget","instantPaymentButton","submitAnalytics","onPaymentAuthorized","async","paymentData","formatGooglePayContactToAdyenAddressFormat","paymentMethodData","info","shippingAddress","setState","tokenizationData","token","cardNetwork","makePaymentsCall","sanitizeResponse","verifyPaymentDidNotFail","paymentResponse","transactionState","handleResponse","setElementStatus","fallbackMessage","get","intent","reason","message","responseWithError","handleFailedResult","prefetch","prefetchPaymentData","bind","paymentDataCallbacks","onPaymentDataChanged","merchantId","GooglePayService","environment","googlepay","txVariants","defaultProps"],"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';\nimport { AnalyticsModule } from '../../types/global-types';\n\nclass GooglePayService {\n private readonly analytics: AnalyticsModule;\n\n public readonly paymentsClient: Promise<google.payments.api.PaymentsClient>;\n\n constructor(environment: string, analytics: AnalyticsModule, paymentDataCallbacks: google.payments.api.PaymentDataCallbacks) {\n const googlePayEnvironment = resolveEnvironment(environment);\n\n this.analytics = analytics;\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({ src: config.URL, component: 'googlepay', analytics: this.analytics });\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","getGooglePaymentsClient","paymentOptions","window","google","payments","script","Script","src","config","URL","component","analytics","this","load","api","PaymentsClient","isReadyToPay","props","paymentsClient","then","client","isReadyToPayRequest","Promise","reject","Error","prefetchPaymentData","countryCode","paymentDataRequest","initiatePaymentRequest","initiatePayment","loadPaymentData","constructor","environment","paymentDataCallbacks","_define_property","googlePayEnvironment","resolveEnvironment"],"mappings":"wTAOA,MAAMA,EAqBF,6BAAMC,CAAwBC,GAC1B,IAAKC,OAAOC,QAAQC,SAAU,CAC1B,MAAMC,EAAS,IAAIC,EAAO,CAAEC,IAAKC,EAAOC,IAAKC,UAAW,YAAaC,UAAWC,KAAKD,kBAC/EN,EAAOQ,MACjB,CAEA,OAAO,IAAIV,OAAOC,SAASU,IAAIC,eAAed,EAClD,CAMAe,YAAAA,CAAaC,GAET,OAAKL,KAAKM,eAEHN,KAAKM,eAAeC,KAAKC,GAAUA,EAAOJ,aAAaK,EAAoBJ,KAFjDK,QAAQC,OAAO,IAAIC,MAAM,+BAG9D,CAEAC,mBAAAA,CAAoBR,EAA+BS,GAE/C,IAAKd,KAAKM,eAAgB,MAAM,IAAIM,MAAM,+BAE1C,MAAMG,EAAqBC,EAAuBX,EAAOS,GACpDd,KAAKM,eAAeC,KAAKC,GAAUA,EAAOK,oBAAoBE,GACvE,CAOAE,eAAAA,CAAgBZ,EAA+BS,GAE3C,IAAKd,KAAKM,eAAgB,MAAM,IAAIM,MAAM,+BAE1C,MAAMG,EAAqBC,EAAuBX,EAAOS,GACzD,OAAOd,KAAKM,eAAeC,KAAKC,GAAUA,EAAOU,gBAAgBH,GACrE,CAvDA,WAAAI,CAAYC,EAAqBrB,EAA4BsB,GAJ7DC,EAAAtB,KAAiBD,iBAAjB,GAEAuB,EAAAtB,KAAgBM,sBAAhB,GAGI,MAAMiB,EAAuBC,EAAmBJ,GAEhDpB,KAAKD,UAAYA,EACjBC,KAAKM,eAAiBN,KAAKZ,wBAAwB,CAC/CgC,YAAaG,EACbF,wBAER"}
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';\nimport type { IAnalytics } from '../../core/Analytics/Analytics';\n\nclass GooglePayService {\n private readonly analytics: IAnalytics;\n\n public readonly paymentsClient: Promise<google.payments.api.PaymentsClient>;\n\n constructor(environment: string, analytics: IAnalytics, paymentDataCallbacks: google.payments.api.PaymentDataCallbacks) {\n const googlePayEnvironment = resolveEnvironment(environment);\n\n this.analytics = analytics;\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({ src: config.URL, component: 'googlepay', analytics: this.analytics });\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","getGooglePaymentsClient","paymentOptions","window","google","payments","script","Script","src","config","URL","component","analytics","this","load","api","PaymentsClient","isReadyToPay","props","paymentsClient","then","client","isReadyToPayRequest","Promise","reject","Error","prefetchPaymentData","countryCode","paymentDataRequest","initiatePaymentRequest","initiatePayment","loadPaymentData","constructor","environment","paymentDataCallbacks","_define_property","googlePayEnvironment","resolveEnvironment"],"mappings":"wTAOA,MAAMA,EAqBF,6BAAMC,CAAwBC,GAC1B,IAAKC,OAAOC,QAAQC,SAAU,CAC1B,MAAMC,EAAS,IAAIC,EAAO,CAAEC,IAAKC,EAAOC,IAAKC,UAAW,YAAaC,UAAWC,KAAKD,kBAC/EN,EAAOQ,MACjB,CAEA,OAAO,IAAIV,OAAOC,SAASU,IAAIC,eAAed,EAClD,CAMAe,YAAAA,CAAaC,GAET,OAAKL,KAAKM,eAEHN,KAAKM,eAAeC,KAAKC,GAAUA,EAAOJ,aAAaK,EAAoBJ,KAFjDK,QAAQC,OAAO,IAAIC,MAAM,+BAG9D,CAEAC,mBAAAA,CAAoBR,EAA+BS,GAE/C,IAAKd,KAAKM,eAAgB,MAAM,IAAIM,MAAM,+BAE1C,MAAMG,EAAqBC,EAAuBX,EAAOS,GACpDd,KAAKM,eAAeC,KAAKC,GAAUA,EAAOK,oBAAoBE,GACvE,CAOAE,eAAAA,CAAgBZ,EAA+BS,GAE3C,IAAKd,KAAKM,eAAgB,MAAM,IAAIM,MAAM,+BAE1C,MAAMG,EAAqBC,EAAuBX,EAAOS,GACzD,OAAOd,KAAKM,eAAeC,KAAKC,GAAUA,EAAOU,gBAAgBH,GACrE,CAvDA,WAAAI,CAAYC,EAAqBrB,EAAuBsB,GAJxDC,EAAAtB,KAAiBD,iBAAjB,GAEAuB,EAAAtB,KAAgBM,sBAAhB,GAGI,MAAMiB,EAAuBC,EAAmBJ,GAEhDpB,KAAKD,UAAYA,EACjBC,KAAKM,eAAiBN,KAAKZ,wBAAwB,CAC/CgC,YAAaG,EACbF,wBAER"}
@@ -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 n}from"../../core/Context/CoreProvider.js";import o from"../internal/PayButton/PayButton.js";import{KlarnaContainer as i}from"./components/KlarnaContainer/KlarnaContainer.js";import{TxVariants as s}from"../tx-variants.js";function a(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}class r extends e{get isValid(){return!0}formatData(){return{paymentMethod:{type:this.type,...this.props.useKlarnaWidget?{subtype:"sdk"}:{}}}}handleAction(t,e={}){if("sdk"!==t.type)return super.handleAction(t,e);this.updateWithAction(t)}updateWithAction(t){if(t.paymentMethodType!==this.type)throw new Error("Invalid Action");this.componentRef.setAction(t)}onLoaded(){this.setElementStatus("ready")}activate(){this.componentRef.reinitializeWidget()}onComplete(t){this.handleAdditionalDetails(t)}render(){return t(n,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources,analytics:this.analytics},t(i,{...this.props,setComponentRef:this.setComponentRef,displayName:this.displayName,onComplete:this.onComplete,onError:this.props.onError,payButton:this.payButton,onLoaded:this.onLoaded,showPayButton:this.props.showPayButton,onActionHandled:this.onActionHandled,type:this.props.type}))}constructor(e,n){super(e,n),a(this,"componentRef",void 0),a(this,"payButton",e=>t(o,{amount:this.props.amount,onClick:this.submit,...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)}}a(r,"type",s.klarna),a(r,"txVariants",[s.klarna,s.klarna_account,s.klarna_paynow,s.klarna_b2b]),a(r,"defaultProps",{useKlarnaWidget:!1});export{r 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"../internal/PayButton/PayButton.js";import{KlarnaContainer as o}from"./components/KlarnaContainer/KlarnaContainer.js";import{TxVariants as i}from"../tx-variants.js";function a(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}class s extends e{get isValid(){return!0}formatData(){return{paymentMethod:{type:this.type,...this.props.useKlarnaWidget?{subtype:"sdk"}:{}}}}handleAction(t,e={}){if("sdk"!==t.type)return super.handleAction(t,e);this.updateWithAction(t)}updateWithAction(t){if(t.paymentMethodType!==this.type)throw new Error("Invalid Action");this.componentRef.setAction(t)}onLoaded(){this.setElementStatus("ready")}activate(){this.componentRef.reinitializeWidget()}onComplete(t){this.handleAdditionalDetails(t)}componentToRender(){return t(o,{...this.props,setComponentRef:this.setComponentRef,displayName:this.displayName,onComplete:this.onComplete,onError:this.props.onError,payButton:this.payButton,onLoaded:this.onLoaded,showPayButton:this.props.showPayButton,onActionHandled:this.onActionHandled,type:this.props.type})}constructor(e,o){super(e,o),a(this,"componentRef",void 0),a(this,"payButton",e=>t(n,{amount:this.props.amount,onClick:this.submit,...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)}}a(s,"type",i.klarna),a(s,"txVariants",[i.klarna,i.klarna_account,i.klarna_paynow,i.klarna_b2b]),a(s,"defaultProps",{useKlarnaWidget:!1});export{s 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 PayButton from '../internal/PayButton';\nimport { KlarnaContainer } from './components/KlarnaContainer/KlarnaContainer';\nimport { TxVariants } from '../tx-variants';\nimport type { KlarnaAction, KlarnaAdditionalDetailsData, KlarnaComponentRef, KlarnaConfiguration } from './types';\nimport type { ICore } from '../../core/types';\nimport { PayButtonFunctionProps } from '../internal/UIElement/types';\n\nclass KlarnaPayments extends UIElement<KlarnaConfiguration> {\n public static type = TxVariants.klarna;\n public static txVariants = [TxVariants.klarna, TxVariants.klarna_account, TxVariants.klarna_paynow, TxVariants.klarna_b2b];\n\n public componentRef: KlarnaComponentRef;\n\n protected static defaultProps = {\n useKlarnaWidget: false\n };\n\n constructor(checkout: ICore, props?: KlarnaConfiguration) {\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: PayButtonFunctionProps) => {\n return <PayButton amount={this.props.amount} onClick={this.submit} {...props} />;\n };\n\n public override handleAction(action: KlarnaAction, props = {}): UIElement | null {\n if (action.type === 'sdk') {\n this.updateWithAction(action);\n return;\n }\n return super.handleAction(action, props);\n }\n\n updateWithAction(action: KlarnaAction): void {\n if (action.paymentMethodType !== this.type) throw new Error('Invalid Action');\n this.componentRef.setAction(action);\n }\n\n private onLoaded() {\n // When action/widget is loaded, set the 'drop-in' back to ready\n this.setElementStatus('ready');\n }\n\n public override activate() {\n this.componentRef.reinitializeWidget();\n }\n\n protected onComplete(details: KlarnaAdditionalDetailsData): void {\n this.handleAdditionalDetails(details);\n }\n\n render() {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources} analytics={this.analytics}>\n <KlarnaContainer\n {...this.props}\n setComponentRef={this.setComponentRef}\n displayName={this.displayName}\n onComplete={this.onComplete}\n onError={this.props.onError}\n payButton={this.payButton}\n onLoaded={this.onLoaded}\n showPayButton={this.props.showPayButton}\n onActionHandled={this.onActionHandled}\n type={this.props.type}\n />\n </CoreProvider>\n );\n }\n}\n\nexport default KlarnaPayments;\n"],"names":["KlarnaPayments","UIElement","isValid","formatData","paymentMethod","type","this","props","useKlarnaWidget","subtype","handleAction","action","super","updateWithAction","paymentMethodType","Error","componentRef","setAction","onLoaded","setElementStatus","activate","reinitializeWidget","onComplete","details","handleAdditionalDetails","render","h","CoreProvider","i18n","loadingContext","resources","analytics","KlarnaContainer","setComponentRef","displayName","onError","payButton","showPayButton","onActionHandled","constructor","checkout","_define_property","PayButton","amount","onClick","submit","bind","TxVariants","klarna","txVariants","klarna_account","klarna_paynow","klarna_b2b","defaultProps"],"mappings":"ifAUA,MAAMA,UAAuBC,EAkBzB,WAAIC,GACA,OAAO,CACX,CAEUC,UAAAA,GACN,MAAO,CACHC,cAAe,CACXC,KAAMC,KAAKD,QACPC,KAAKC,MAAMC,gBAAkB,CAAEC,QAAS,OAAU,CAAA,GAGlE,CAMgBC,YAAAA,CAAaC,EAAsBJ,EAAQ,IACvD,GAAoB,QAAhBI,EAAON,KAIX,OAAOO,MAAMF,aAAaC,EAAQJ,GAH9BD,KAAKO,iBAAiBF,EAI9B,CAEAE,gBAAAA,CAAiBF,GACb,GAAIA,EAAOG,oBAAsBR,KAAKD,KAAM,MAAM,IAAIU,MAAM,kBAC5DT,KAAKU,aAAaC,UAAUN,EAChC,CAEQO,QAAAA,GAEJZ,KAAKa,iBAAiB,QAC1B,CAEgBC,QAAAA,GACZd,KAAKU,aAAaK,oBACtB,CAEUC,UAAAA,CAAWC,GACjBjB,KAAKkB,wBAAwBD,EACjC,CAEAE,MAAAA,GACI,OACIC,EAACC,EAAAA,CAAaC,KAAMtB,KAAKC,MAAMqB,KAAMC,eAAgBvB,KAAKC,MAAMsB,eAAgBC,UAAWxB,KAAKwB,UAAWC,UAAWzB,KAAKyB,WACvHL,EAACM,EAAAA,IACO1B,KAAKC,MACT0B,gBAAiB3B,KAAK2B,gBACtBC,YAAa5B,KAAK4B,YAClBZ,WAAYhB,KAAKgB,WACjBa,QAAS7B,KAAKC,MAAM4B,QACpBC,UAAW9B,KAAK8B,UAChBlB,SAAUZ,KAAKY,SACfmB,cAAe/B,KAAKC,MAAM8B,cAC1BC,gBAAiBhC,KAAKgC,gBACtBjC,KAAMC,KAAKC,MAAMF,OAIjC,CApEA,WAAAkC,CAAYC,EAAiBjC,GACzBK,MAAM4B,EAAUjC,GAPpBkC,EAAAnC,KAAOU,oBAAP,GA2BAyB,EAAAnC,KAAO8B,YAAa7B,GACTmB,EAACgB,EAAAA,CAAUC,OAAQrC,KAAKC,MAAMoC,OAAQC,QAAStC,KAAKuC,UAAYtC,KAnBvED,KAAKgB,WAAahB,KAAKgB,WAAWwB,KAAKxC,MACvCA,KAAKO,iBAAmBP,KAAKO,iBAAiBiC,KAAKxC,MACnDA,KAAKuC,OAASvC,KAAKuC,OAAOC,KAAKxC,MAC/BA,KAAKY,SAAWZ,KAAKY,SAAS4B,KAAKxC,KACvC,EAhBAmC,EADEzC,EACYK,OAAO0C,EAAWC,QAChCP,EAFEzC,EAEYiD,aAAa,CAACF,EAAWC,OAAQD,EAAWG,eAAgBH,EAAWI,cAAeJ,EAAWK,aAI/GX,EANEzC,EAMeqD,eAAe,CAC5B7C,iBAAiB"}
1
+ {"version":3,"file":"KlarnaPayments.js","sources":["../../../../src/components/Klarna/KlarnaPayments.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport PayButton from '../internal/PayButton';\nimport { KlarnaContainer } from './components/KlarnaContainer/KlarnaContainer';\nimport { TxVariants } from '../tx-variants';\nimport type { KlarnaAction, KlarnaAdditionalDetailsData, KlarnaComponentRef, KlarnaConfiguration } from './types';\nimport type { ICore } from '../../core/types';\nimport { PayButtonFunctionProps } from '../internal/UIElement/types';\n\nclass KlarnaPayments extends UIElement<KlarnaConfiguration> {\n public static type = TxVariants.klarna;\n public static txVariants = [TxVariants.klarna, TxVariants.klarna_account, TxVariants.klarna_paynow, TxVariants.klarna_b2b];\n\n public componentRef: KlarnaComponentRef;\n\n protected static defaultProps = {\n useKlarnaWidget: false\n };\n\n constructor(checkout: ICore, props?: KlarnaConfiguration) {\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: PayButtonFunctionProps) => {\n return <PayButton amount={this.props.amount} onClick={this.submit} {...props} />;\n };\n\n public override handleAction(action: KlarnaAction, props = {}): UIElement | null {\n if (action.type === 'sdk') {\n this.updateWithAction(action);\n return;\n }\n return super.handleAction(action, props);\n }\n\n updateWithAction(action: KlarnaAction): void {\n if (action.paymentMethodType !== this.type) throw new Error('Invalid Action');\n this.componentRef.setAction(action);\n }\n\n private onLoaded() {\n // When action/widget is loaded, set the 'drop-in' back to ready\n this.setElementStatus('ready');\n }\n\n public override activate() {\n this.componentRef.reinitializeWidget();\n }\n\n protected onComplete(details: KlarnaAdditionalDetailsData): void {\n this.handleAdditionalDetails(details);\n }\n\n protected override componentToRender(): h.JSX.Element {\n return (\n <KlarnaContainer\n {...this.props}\n setComponentRef={this.setComponentRef}\n displayName={this.displayName}\n onComplete={this.onComplete}\n onError={this.props.onError}\n payButton={this.payButton}\n onLoaded={this.onLoaded}\n showPayButton={this.props.showPayButton}\n onActionHandled={this.onActionHandled}\n type={this.props.type}\n />\n );\n }\n}\n\nexport default KlarnaPayments;\n"],"names":["KlarnaPayments","UIElement","isValid","formatData","paymentMethod","type","this","props","useKlarnaWidget","subtype","handleAction","action","super","updateWithAction","paymentMethodType","Error","componentRef","setAction","onLoaded","setElementStatus","activate","reinitializeWidget","onComplete","details","handleAdditionalDetails","componentToRender","h","KlarnaContainer","setComponentRef","displayName","onError","payButton","showPayButton","onActionHandled","constructor","checkout","_define_property","PayButton","amount","onClick","submit","bind","TxVariants","klarna","txVariants","klarna_account","klarna_paynow","klarna_b2b","defaultProps"],"mappings":"+aASA,MAAMA,UAAuBC,EAkBzB,WAAIC,GACA,OAAO,CACX,CAEUC,UAAAA,GACN,MAAO,CACHC,cAAe,CACXC,KAAMC,KAAKD,QACPC,KAAKC,MAAMC,gBAAkB,CAAEC,QAAS,OAAU,CAAA,GAGlE,CAMgBC,YAAAA,CAAaC,EAAsBJ,EAAQ,IACvD,GAAoB,QAAhBI,EAAON,KAIX,OAAOO,MAAMF,aAAaC,EAAQJ,GAH9BD,KAAKO,iBAAiBF,EAI9B,CAEAE,gBAAAA,CAAiBF,GACb,GAAIA,EAAOG,oBAAsBR,KAAKD,KAAM,MAAM,IAAIU,MAAM,kBAC5DT,KAAKU,aAAaC,UAAUN,EAChC,CAEQO,QAAAA,GAEJZ,KAAKa,iBAAiB,QAC1B,CAEgBC,QAAAA,GACZd,KAAKU,aAAaK,oBACtB,CAEUC,UAAAA,CAAWC,GACjBjB,KAAKkB,wBAAwBD,EACjC,CAEmBE,iBAAAA,GACf,OACIC,EAACC,EAAAA,IACOrB,KAAKC,MACTqB,gBAAiBtB,KAAKsB,gBACtBC,YAAavB,KAAKuB,YAClBP,WAAYhB,KAAKgB,WACjBQ,QAASxB,KAAKC,MAAMuB,QACpBC,UAAWzB,KAAKyB,UAChBb,SAAUZ,KAAKY,SACfc,cAAe1B,KAAKC,MAAMyB,cAC1BC,gBAAiB3B,KAAK2B,gBACtB5B,KAAMC,KAAKC,MAAMF,MAG7B,CAlEA,WAAA6B,CAAYC,EAAiB5B,GACzBK,MAAMuB,EAAU5B,GAPpB6B,EAAA9B,KAAOU,oBAAP,GA2BAoB,EAAA9B,KAAOyB,YAAaxB,GACTmB,EAACW,EAAAA,CAAUC,OAAQhC,KAAKC,MAAM+B,OAAQC,QAASjC,KAAKkC,UAAYjC,KAnBvED,KAAKgB,WAAahB,KAAKgB,WAAWmB,KAAKnC,MACvCA,KAAKO,iBAAmBP,KAAKO,iBAAiB4B,KAAKnC,MACnDA,KAAKkC,OAASlC,KAAKkC,OAAOC,KAAKnC,MAC/BA,KAAKY,SAAWZ,KAAKY,SAASuB,KAAKnC,KACvC,EAhBA8B,EADEpC,EACYK,OAAOqC,EAAWC,QAChCP,EAFEpC,EAEY4C,aAAa,CAACF,EAAWC,OAAQD,EAAWG,eAAgBH,EAAWI,cAAeJ,EAAWK,aAI/GX,EANEpC,EAMegD,eAAe,CAC5BxC,iBAAiB"}
@@ -1,2 +1,2 @@
1
- import{createElement as e}from"../../external/preact/dist/preact.js";import{UIElement as t}from"../internal/UIElement/UIElement.js";import o from"./components/MBWayInput/MBWayInput.js";import{CoreProvider as r}from"../../core/Context/CoreProvider.js";import n from"./components/MBWayAwait/config.js";import s from"../internal/Await/Await.js";import a from"../../core/Errors/SRPanelProvider.js";import{TxVariants as i}from"../tx-variants.js";class p extends t{formatProps(e){const{data:t={},placeholders:o={}}=e;return{...e,data:{phoneNumber:t.telephoneNumber||t.phoneNumber,phonePrefix:t.phonePrefix||"+351"},placeholders:{phoneNumber:o.telephoneNumber||o.phoneNumber}}}formatData(){return{paymentMethod:{type:p.type,...this.state.data?.phoneNumber&&{telephoneNumber:this.state.data.phonePrefix+this.state.data.phoneNumber}}}}get isValid(){return!!this.state.isValid}get displayName(){return this.props.name}render(){return this.props.paymentData?e(r,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},e(a,{srPanel:this.props.modules.srPanel},e(s,{clientKey:this.props.clientKey,paymentData:this.props.paymentData,onError:this.props.onError,onComplete:this.onComplete,brandLogo:this.icon,type:n.type,messageText:this.props.i18n.get(n.messageTextId),awaitText:this.props.i18n.get(n.awaitTextId),showCountdownTimer:n.showCountdownTimer,delay:n.STATUS_INTERVAL,countdownTime:n.COUNTDOWN_MINUTES,throttleTime:n.THROTTLE_TIME,throttleInterval:n.THROTTLE_INTERVAL,onActionHandled:this.onActionHandled}))):e(r,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},e(o,{ref:e=>{this.componentRef=e},...this.props,setComponentRef:this.setComponentRef,onChange:this.setState,onSubmit:this.submit,payButton:this.payButton}))}}var m,h,l;m=p,h="type",l=i.mbway,h in m?Object.defineProperty(m,h,{value:l,enumerable:!0,configurable:!0,writable:!0}):m[h]=l;export{p as MBWayElement,p as default};
1
+ import{createElement as e}from"../../external/preact/dist/preact.js";import{UIElement as t}from"../internal/UIElement/UIElement.js";import o from"./components/MBWayInput/MBWayInput.js";import r from"./components/MBWayAwait/config.js";import{Await as n}from"../internal/Await/Await.js";import a from"../../core/Errors/SRPanelProvider.js";import{TxVariants as s}from"../tx-variants.js";class p extends t{formatProps(e){const{data:t={},placeholders:o={}}=e;return{...e,data:{phoneNumber:t.telephoneNumber||t.phoneNumber,phonePrefix:t.phonePrefix||"+351"},placeholders:{phoneNumber:o.telephoneNumber||o.phoneNumber}}}formatData(){return{paymentMethod:{type:p.type,...this.state.data?.phoneNumber&&{telephoneNumber:this.state.data.phonePrefix+this.state.data.phoneNumber}}}}get isValid(){return!!this.state.isValid}get displayName(){return this.props.name}componentToRender(){return this.props.paymentData?e(a,{srPanel:this.props.modules.srPanel},e(n,{clientKey:this.props.clientKey,paymentData:this.props.paymentData,onError:this.props.onError,onComplete:this.onComplete,brandLogo:this.icon,type:r.type,messageText:this.props.i18n.get(r.messageTextId),awaitText:this.props.i18n.get(r.awaitTextId),showCountdownTimer:r.showCountdownTimer,delay:r.STATUS_INTERVAL,countdownTime:r.COUNTDOWN_MINUTES,throttleTime:r.THROTTLE_TIME,throttleInterval:r.THROTTLE_INTERVAL,onActionHandled:this.onActionHandled})):e(o,{ref:e=>{this.componentRef=e},...this.props,setComponentRef:this.setComponentRef,onChange:this.setState,onSubmit:this.submit,payButton:this.payButton})}}var i,m,h;i=p,m="type",h=s.mbway,m in i?Object.defineProperty(i,m,{value:h,enumerable:!0,configurable:!0,writable:!0}):i[m]=h;export{p as MBWayElement,p as default};
2
2
  //# sourceMappingURL=MBWay.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MBWay.js","sources":["../../../../src/components/MBWay/MBWay.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport MBWayInput from './components/MBWayInput';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport config from './components/MBWayAwait/config';\nimport Await from '../../components/internal/Await';\nimport SRPanelProvider from '../../core/Errors/SRPanelProvider';\nimport { TxVariants } from '../tx-variants';\nimport { AwaitConfiguration } from '../internal/Await/types';\n\nexport class MBWayElement extends UIElement<AwaitConfiguration> {\n public static type = TxVariants.mbway;\n\n formatProps(props) {\n const { data = {}, placeholders = {} } = props;\n\n return {\n ...props,\n data: {\n phoneNumber: data.telephoneNumber || data.phoneNumber,\n phonePrefix: data.phonePrefix || '+351' // if not specified default to Portuguese country code\n },\n placeholders: {\n phoneNumber: placeholders.telephoneNumber || placeholders.phoneNumber\n }\n };\n }\n\n /**\n * Formats the component data output\n */\n formatData(): object {\n return {\n paymentMethod: {\n type: MBWayElement.type,\n ...(this.state.data?.phoneNumber && { telephoneNumber: this.state.data.phonePrefix + this.state.data.phoneNumber })\n }\n };\n }\n\n get isValid(): boolean {\n return !!this.state.isValid;\n }\n\n get displayName(): string {\n return this.props.name;\n }\n\n render() {\n if (this.props.paymentData) {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <SRPanelProvider srPanel={this.props.modules.srPanel}>\n <Await\n clientKey={this.props.clientKey}\n paymentData={this.props.paymentData}\n onError={this.props.onError}\n onComplete={this.onComplete}\n brandLogo={this.icon}\n type={config.type}\n messageText={this.props.i18n.get(config.messageTextId)}\n awaitText={this.props.i18n.get(config.awaitTextId)}\n showCountdownTimer={config.showCountdownTimer}\n delay={config.STATUS_INTERVAL}\n countdownTime={config.COUNTDOWN_MINUTES}\n throttleTime={config.THROTTLE_TIME}\n throttleInterval={config.THROTTLE_INTERVAL}\n onActionHandled={this.onActionHandled}\n />\n </SRPanelProvider>\n </CoreProvider>\n );\n }\n\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <MBWayInput\n /* @ts-ignore ref handled internally by Component */\n ref={ref => {\n this.componentRef = ref;\n }}\n {...this.props}\n setComponentRef={this.setComponentRef}\n onChange={this.setState}\n onSubmit={this.submit}\n payButton={this.payButton}\n />\n </CoreProvider>\n );\n }\n}\n\nexport default MBWayElement;\n"],"names":["MBWayElement","UIElement","formatProps","props","data","placeholders","phoneNumber","telephoneNumber","phonePrefix","formatData","paymentMethod","type","this","state","isValid","displayName","name","render","paymentData","h","CoreProvider","i18n","loadingContext","resources","SRPanelProvider","srPanel","modules","Await","clientKey","onError","onComplete","brandLogo","icon","config","messageText","get","messageTextId","awaitText","awaitTextId","showCountdownTimer","delay","STATUS_INTERVAL","countdownTime","COUNTDOWN_MINUTES","throttleTime","THROTTLE_TIME","throttleInterval","THROTTLE_INTERVAL","onActionHandled","MBWayInput","ref","componentRef","setComponentRef","onChange","setState","onSubmit","submit","payButton","TxVariants","mbway"],"mappings":"ybAUO,MAAMA,UAAqBC,EAG9BC,WAAAA,CAAYC,GACR,MAAMC,KAAEA,EAAO,CAAA,EAAEC,aAAEA,EAAe,CAAA,GAAOF,EAEzC,MAAO,IACAA,EACHC,KAAM,CACFE,YAAaF,EAAKG,iBAAmBH,EAAKE,YAC1CE,YAAaJ,EAAKI,aAAe,QAErCH,aAAc,CACVC,YAAaD,EAAaE,iBAAmBF,EAAaC,aAGtE,CAKAG,UAAAA,GACI,MAAO,CACHC,cAAe,CACXC,KAAMX,EAAaW,QACfC,KAAKC,MAAMT,MAAME,aAAe,CAAEC,gBAAiBK,KAAKC,MAAMT,KAAKI,YAAcI,KAAKC,MAAMT,KAAKE,cAGjH,CAEA,WAAIQ,GACA,QAASF,KAAKC,MAAMC,OACxB,CAEA,eAAIC,GACA,OAAOH,KAAKT,MAAMa,IACtB,CAEAC,MAAAA,GACI,OAAIL,KAAKT,MAAMe,YAEPC,EAACC,EAAAA,CAAaC,KAAMT,KAAKT,MAAMkB,KAAMC,eAAgBV,KAAKT,MAAMmB,eAAgBC,UAAWX,KAAKW,WAC5FJ,EAACK,EAAAA,CAAgBC,QAASb,KAAKT,MAAMuB,QAAQD,SACzCN,EAACQ,EAAAA,CACGC,UAAWhB,KAAKT,MAAMyB,UACtBV,YAAaN,KAAKT,MAAMe,YACxBW,QAASjB,KAAKT,MAAM0B,QACpBC,WAAYlB,KAAKkB,WACjBC,UAAWnB,KAAKoB,KAChBrB,KAAMsB,EAAOtB,KACbuB,YAAatB,KAAKT,MAAMkB,KAAKc,IAAIF,EAAOG,eACxCC,UAAWzB,KAAKT,MAAMkB,KAAKc,IAAIF,EAAOK,aACtCC,mBAAoBN,EAAOM,mBAC3BC,MAAOP,EAAOQ,gBACdC,cAAeT,EAAOU,kBACtBC,aAAcX,EAAOY,cACrBC,iBAAkBb,EAAOc,kBACzBC,gBAAiBpC,KAAKoC,oBAQtC7B,EAACC,EAAAA,CAAaC,KAAMT,KAAKT,MAAMkB,KAAMC,eAAgBV,KAAKT,MAAMmB,eAAgBC,UAAWX,KAAKW,WAC5FJ,EAAC8B,EAAAA,CAEGC,IAAKA,IACDtC,KAAKuC,aAAeD,MAEpBtC,KAAKT,MACTiD,gBAAiBxC,KAAKwC,gBACtBC,SAAUzC,KAAK0C,SACfC,SAAU3C,KAAK4C,OACfC,UAAW7C,KAAK6C,YAIhC,cA/ESzD,IACKW,SAAO+C,EAAWC"}
1
+ {"version":3,"file":"MBWay.js","sources":["../../../../src/components/MBWay/MBWay.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport MBWayInput from './components/MBWayInput';\nimport config from './components/MBWayAwait/config';\nimport { Await } from '../../components/internal/Await';\nimport SRPanelProvider from '../../core/Errors/SRPanelProvider';\nimport { TxVariants } from '../tx-variants';\nimport { AwaitConfiguration } from '../internal/Await/types';\n\nexport class MBWayElement extends UIElement<AwaitConfiguration> {\n public static type = TxVariants.mbway;\n\n formatProps(props) {\n const { data = {}, placeholders = {} } = props;\n\n return {\n ...props,\n data: {\n phoneNumber: data.telephoneNumber || data.phoneNumber,\n phonePrefix: data.phonePrefix || '+351' // if not specified default to Portuguese country code\n },\n placeholders: {\n phoneNumber: placeholders.telephoneNumber || placeholders.phoneNumber\n }\n };\n }\n\n /**\n * Formats the component data output\n */\n formatData(): object {\n return {\n paymentMethod: {\n type: MBWayElement.type,\n ...(this.state.data?.phoneNumber && { telephoneNumber: this.state.data.phonePrefix + this.state.data.phoneNumber })\n }\n };\n }\n\n get isValid(): boolean {\n return !!this.state.isValid;\n }\n\n get displayName(): string {\n return this.props.name;\n }\n\n protected override componentToRender(): h.JSX.Element {\n if (this.props.paymentData) {\n return (\n <SRPanelProvider srPanel={this.props.modules.srPanel}>\n <Await\n clientKey={this.props.clientKey}\n paymentData={this.props.paymentData}\n onError={this.props.onError}\n onComplete={this.onComplete}\n brandLogo={this.icon}\n type={config.type}\n messageText={this.props.i18n.get(config.messageTextId)}\n awaitText={this.props.i18n.get(config.awaitTextId)}\n showCountdownTimer={config.showCountdownTimer}\n delay={config.STATUS_INTERVAL}\n countdownTime={config.COUNTDOWN_MINUTES}\n throttleTime={config.THROTTLE_TIME}\n throttleInterval={config.THROTTLE_INTERVAL}\n onActionHandled={this.onActionHandled}\n />\n </SRPanelProvider>\n );\n }\n\n return (\n <MBWayInput\n /* @ts-ignore ref handled internally by Component */\n ref={ref => {\n this.componentRef = ref;\n }}\n {...this.props}\n setComponentRef={this.setComponentRef}\n onChange={this.setState}\n onSubmit={this.submit}\n payButton={this.payButton}\n />\n );\n }\n}\n\nexport default MBWayElement;\n"],"names":["MBWayElement","UIElement","formatProps","props","data","placeholders","phoneNumber","telephoneNumber","phonePrefix","formatData","paymentMethod","type","this","state","isValid","displayName","name","componentToRender","paymentData","h","SRPanelProvider","srPanel","modules","Await","clientKey","onError","onComplete","brandLogo","icon","config","messageText","i18n","get","messageTextId","awaitText","awaitTextId","showCountdownTimer","delay","STATUS_INTERVAL","countdownTime","COUNTDOWN_MINUTES","throttleTime","THROTTLE_TIME","throttleInterval","THROTTLE_INTERVAL","onActionHandled","MBWayInput","ref","componentRef","setComponentRef","onChange","setState","onSubmit","submit","payButton","TxVariants","mbway"],"mappings":"gYASO,MAAMA,UAAqBC,EAG9BC,WAAAA,CAAYC,GACR,MAAMC,KAAEA,EAAO,CAAA,EAAEC,aAAEA,EAAe,CAAA,GAAOF,EAEzC,MAAO,IACAA,EACHC,KAAM,CACFE,YAAaF,EAAKG,iBAAmBH,EAAKE,YAC1CE,YAAaJ,EAAKI,aAAe,QAErCH,aAAc,CACVC,YAAaD,EAAaE,iBAAmBF,EAAaC,aAGtE,CAKAG,UAAAA,GACI,MAAO,CACHC,cAAe,CACXC,KAAMX,EAAaW,QACfC,KAAKC,MAAMT,MAAME,aAAe,CAAEC,gBAAiBK,KAAKC,MAAMT,KAAKI,YAAcI,KAAKC,MAAMT,KAAKE,cAGjH,CAEA,WAAIQ,GACA,QAASF,KAAKC,MAAMC,OACxB,CAEA,eAAIC,GACA,OAAOH,KAAKT,MAAMa,IACtB,CAEmBC,iBAAAA,GACf,OAAIL,KAAKT,MAAMe,YAEPC,EAACC,EAAAA,CAAgBC,QAAST,KAAKT,MAAMmB,QAAQD,SACzCF,EAACI,EAAAA,CACGC,UAAWZ,KAAKT,MAAMqB,UACtBN,YAAaN,KAAKT,MAAMe,YACxBO,QAASb,KAAKT,MAAMsB,QACpBC,WAAYd,KAAKc,WACjBC,UAAWf,KAAKgB,KAChBjB,KAAMkB,EAAOlB,KACbmB,YAAalB,KAAKT,MAAM4B,KAAKC,IAAIH,EAAOI,eACxCC,UAAWtB,KAAKT,MAAM4B,KAAKC,IAAIH,EAAOM,aACtCC,mBAAoBP,EAAOO,mBAC3BC,MAAOR,EAAOS,gBACdC,cAAeV,EAAOW,kBACtBC,aAAcZ,EAAOa,cACrBC,iBAAkBd,EAAOe,kBACzBC,gBAAiBjC,KAAKiC,mBAOlC1B,EAAC2B,EAAAA,CAEGC,IAAKA,IACDnC,KAAKoC,aAAeD,MAEpBnC,KAAKT,MACT8C,gBAAiBrC,KAAKqC,gBACtBC,SAAUtC,KAAKuC,SACfC,SAAUxC,KAAKyC,OACfC,UAAW1C,KAAK0C,WAG5B,cA3EStD,IACKW,SAAO4C,EAAWC"}
@@ -1,2 +1,2 @@
1
- import{createElement as t}from"../../external/preact/dist/preact.js";import{UIElement as e}from"../internal/UIElement/UIElement.js";import o from"./components/MultibancoVoucherResult/MultibancoVoucherResult.js";import{CoreProvider as r}from"../../core/Context/CoreProvider.js";import n from"../internal/RedirectButton/RedirectButton.js";import{TxVariants as s}from"../tx-variants.js";function i(t,e,o){return e in t?Object.defineProperty(t,e,{value:o,enumerable:!0,configurable:!0,writable:!0}):t[e]=o,t}class a extends e{get isValid(){return!0}formatProps(t){return{...t,name:t.name||"Multibanco"}}formatData(){return{paymentMethod:{type:this.props.type||a.type}}}render(){return this.props.reference?t(r,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},t(o,{ref:this.handleRef,...this.props,onActionHandled:this.onActionHandled})):this.props.showPayButton?t(r,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},t(n,{showPayButton:this.props.showPayButton,name:this.displayName,amount:this.props.amount,payButton:this.payButton,onSubmit:this.submit,ref:t=>{this.componentRef=t}})):null}constructor(...t){super(...t),i(this,"handleRef",t=>{this.componentRef=t})}}i(a,"type",s.multibanco);export{a as MultibancoElement,a 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/MultibancoVoucherResult/MultibancoVoucherResult.js";import o from"../internal/RedirectButton/RedirectButton.js";import{TxVariants as r}from"../tx-variants.js";function s(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}class a extends e{get isValid(){return!0}formatProps(t){return{...t,name:t.name||"Multibanco"}}formatData(){return{paymentMethod:{type:this.props.type||a.type}}}componentToRender(){return this.props.reference?t(n,{ref:this.handleRef,...this.props,onActionHandled:this.onActionHandled}):this.props.showPayButton?t(o,{showPayButton:this.props.showPayButton,name:this.displayName,amount:this.props.amount,payButton:this.payButton,onSubmit:this.submit,ref:t=>{this.componentRef=t}}):null}constructor(...t){super(...t),s(this,"handleRef",t=>{this.componentRef=t})}}s(a,"type",r.multibanco);export{a as MultibancoElement,a as default};
2
2
  //# sourceMappingURL=Multibanco.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Multibanco.js","sources":["../../../../src/components/Multibanco/Multibanco.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport MultibancoVoucherResult from './components/MultibancoVoucherResult';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport RedirectButton from '../internal/RedirectButton';\nimport { TxVariants } from '../tx-variants';\nimport { VoucherConfiguration } from '../internal/Voucher/types';\n\nexport class MultibancoElement extends UIElement<VoucherConfiguration> {\n public static type = TxVariants.multibanco;\n\n get isValid() {\n return true;\n }\n\n formatProps(props) {\n return {\n ...props,\n name: props.name || 'Multibanco'\n };\n }\n\n /**\n * Formats the component data output\n */\n formatData() {\n return {\n paymentMethod: {\n type: this.props.type || MultibancoElement.type\n }\n };\n }\n\n private handleRef = ref => {\n this.componentRef = ref;\n };\n\n render() {\n if (this.props.reference) {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <MultibancoVoucherResult ref={this.handleRef} {...this.props} onActionHandled={this.onActionHandled} />\n </CoreProvider>\n );\n }\n\n if (this.props.showPayButton) {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <RedirectButton\n showPayButton={this.props.showPayButton}\n name={this.displayName}\n amount={this.props.amount}\n payButton={this.payButton}\n onSubmit={this.submit}\n ref={ref => {\n this.componentRef = ref;\n }}\n />\n </CoreProvider>\n );\n }\n\n return null;\n }\n}\n\nexport default MultibancoElement;\n"],"names":["MultibancoElement","UIElement","isValid","formatProps","props","name","formatData","paymentMethod","type","this","render","reference","h","CoreProvider","i18n","loadingContext","resources","MultibancoVoucherResult","ref","handleRef","onActionHandled","showPayButton","RedirectButton","displayName","amount","payButton","onSubmit","submit","componentRef","super","args","_define_property","TxVariants","multibanco"],"mappings":"wfAQO,MAAMA,UAA0BC,EAGnC,WAAIC,GACA,OAAO,CACX,CAEAC,WAAAA,CAAYC,GACR,MAAO,IACAA,EACHC,KAAMD,EAAMC,MAAQ,aAE5B,CAKAC,UAAAA,GACI,MAAO,CACHC,cAAe,CACXC,KAAMC,KAAKL,MAAMI,MAAQR,EAAkBQ,MAGvD,CAMAE,MAAAA,GACI,OAAID,KAAKL,MAAMO,UAEPC,EAACC,EAAAA,CAAaC,KAAML,KAAKL,MAAMU,KAAMC,eAAgBN,KAAKL,MAAMW,eAAgBC,UAAWP,KAAKO,WAC5FJ,EAACK,EAAAA,CAAwBC,IAAKT,KAAKU,aAAeV,KAAKL,MAAOgB,gBAAiBX,KAAKW,mBAK5FX,KAAKL,MAAMiB,cAEPT,EAACC,EAAAA,CAAaC,KAAML,KAAKL,MAAMU,KAAMC,eAAgBN,KAAKL,MAAMW,eAAgBC,UAAWP,KAAKO,WAC5FJ,EAACU,EAAAA,CACGD,cAAeZ,KAAKL,MAAMiB,cAC1BhB,KAAMI,KAAKc,YACXC,OAAQf,KAAKL,MAAMoB,OACnBC,UAAWhB,KAAKgB,UAChBC,SAAUjB,KAAKkB,OACfT,IAAKA,IACDT,KAAKmB,aAAeV,MAOjC,IACX,mBAxDGW,SAAAC,GAyBHC,EAAAtB,KAAQU,YAAYD,IAChBT,KAAKmB,aAAeV,KAzBxBa,EADS/B,EACKQ,OAAOwB,EAAWC"}
1
+ {"version":3,"file":"Multibanco.js","sources":["../../../../src/components/Multibanco/Multibanco.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport MultibancoVoucherResult from './components/MultibancoVoucherResult';\nimport RedirectButton from '../internal/RedirectButton';\nimport { TxVariants } from '../tx-variants';\nimport { VoucherConfiguration } from '../internal/Voucher/types';\n\nexport class MultibancoElement extends UIElement<VoucherConfiguration> {\n public static type = TxVariants.multibanco;\n\n get isValid() {\n return true;\n }\n\n formatProps(props) {\n return {\n ...props,\n name: props.name || 'Multibanco'\n };\n }\n\n /**\n * Formats the component data output\n */\n formatData() {\n return {\n paymentMethod: {\n type: this.props.type || MultibancoElement.type\n }\n };\n }\n\n private handleRef = ref => {\n this.componentRef = ref;\n };\n\n protected override componentToRender(): h.JSX.Element {\n if (this.props.reference) {\n return <MultibancoVoucherResult ref={this.handleRef} {...this.props} onActionHandled={this.onActionHandled} />;\n }\n\n if (this.props.showPayButton) {\n return (\n <RedirectButton\n showPayButton={this.props.showPayButton}\n name={this.displayName}\n amount={this.props.amount}\n payButton={this.payButton}\n onSubmit={this.submit}\n ref={ref => {\n this.componentRef = ref;\n }}\n />\n );\n }\n\n return null;\n }\n}\n\nexport default MultibancoElement;\n"],"names":["MultibancoElement","UIElement","isValid","formatProps","props","name","formatData","paymentMethod","type","this","componentToRender","reference","h","MultibancoVoucherResult","ref","handleRef","onActionHandled","showPayButton","RedirectButton","displayName","amount","payButton","onSubmit","submit","componentRef","super","args","_define_property","TxVariants","multibanco"],"mappings":"sbAOO,MAAMA,UAA0BC,EAGnC,WAAIC,GACA,OAAO,CACX,CAEAC,WAAAA,CAAYC,GACR,MAAO,IACAA,EACHC,KAAMD,EAAMC,MAAQ,aAE5B,CAKAC,UAAAA,GACI,MAAO,CACHC,cAAe,CACXC,KAAMC,KAAKL,MAAMI,MAAQR,EAAkBQ,MAGvD,CAMmBE,iBAAAA,GACf,OAAID,KAAKL,MAAMO,UACJC,EAACC,EAAAA,CAAwBC,IAAKL,KAAKM,aAAeN,KAAKL,MAAOY,gBAAiBP,KAAKO,kBAG3FP,KAAKL,MAAMa,cAEPL,EAACM,EAAAA,CACGD,cAAeR,KAAKL,MAAMa,cAC1BZ,KAAMI,KAAKU,YACXC,OAAQX,KAAKL,MAAMgB,OACnBC,UAAWZ,KAAKY,UAChBC,SAAUb,KAAKc,OACfT,IAAKA,IACDL,KAAKe,aAAeV,KAM7B,IACX,mBAlDGW,SAAAC,GAyBHC,EAAAlB,KAAQM,YAAYD,IAChBL,KAAKe,aAAeV,KAzBxBa,EADS3B,EACKQ,OAAOoB,EAAWC"}
@@ -1,2 +1,2 @@
1
- import{createElement as e}from"../../external/preact/dist/preact.js";import{UIElement as t}from"../internal/UIElement/UIElement.js";import o from"./components/OxxoVoucherResult/OxxoVoucherResult.js";import{CoreProvider as r}from"../../core/Context/CoreProvider.js";import{TxVariants as s}from"../tx-variants.js";function n(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}class i extends t{get isValid(){return!0}formatData(){return{paymentMethod:{type:this.props.type||i.type}}}render(){return e(r,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},this.props.reference?e(o,{ref:this.handleRef,...this.props,onActionHandled:this.onActionHandled}):this.props.showPayButton&&this.payButton({...this.props,classNameModifiers:["standalone"],label:`${this.props.i18n.get("continueTo")} ${this.props.name}`,onClick:this.submit}))}constructor(...e){super(...e),n(this,"handleRef",e=>{this.componentRef=e})}}n(i,"type",s.oxxo),n(i,"defaultProps",{name:"Oxxo"});export{i as OxxoElement,i as default};
1
+ import{createElement as e}from"../../external/preact/dist/preact.js";import{UIElement as t}from"../internal/UIElement/UIElement.js";import o from"./components/OxxoVoucherResult/OxxoVoucherResult.js";import{TxVariants as r}from"../tx-variants.js";function n(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}class s extends t{get isValid(){return!0}formatData(){return{paymentMethod:{type:this.props.type||s.type}}}componentToRender(){return this.props.reference?e(o,{ref:this.handleRef,...this.props,onActionHandled:this.onActionHandled}):this.props.showPayButton&&this.payButton({...this.props,classNameModifiers:["standalone"],label:`${this.props.i18n.get("continueTo")} ${this.props.name}`,onClick:this.submit})}constructor(...e){super(...e),n(this,"handleRef",e=>{this.componentRef=e})}}n(s,"type",r.oxxo),n(s,"defaultProps",{name:"Oxxo"});export{s as OxxoElement,s as default};
2
2
  //# sourceMappingURL=Oxxo.js.map
@@ -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 { 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} onActionHandled={this.onActionHandled} />\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","isValid","formatData","paymentMethod","type","this","props","render","h","CoreProvider","i18n","loadingContext","resources","reference","OxxoVoucherResult","ref","handleRef","onActionHandled","showPayButton","payButton","classNameModifiers","label","get","name","onClick","submit","super","args","_define_property","componentRef","TxVariants","oxxo","defaultProps"],"mappings":"gbAOO,MAAMA,UAAoBC,EAO7B,WAAIC,GACA,OAAO,CACX,CAEAC,UAAAA,GACI,MAAO,CACHC,cAAe,CACXC,KAAMC,KAAKC,MAAMF,MAAQL,EAAYK,MAGjD,CAMAG,MAAAA,GACI,OACIC,EAACC,EAAAA,CAAaC,KAAML,KAAKC,MAAMI,KAAMC,eAAgBN,KAAKC,MAAMK,eAAgBC,UAAWP,KAAKO,WAC3FP,KAAKC,MAAMO,UACRL,EAACM,EAAAA,CAAkBC,IAAKV,KAAKW,aAAeX,KAAKC,MAAOW,gBAAiBZ,KAAKY,kBAE9EZ,KAAKC,MAAMY,eACXb,KAAKc,UAAU,IACRd,KAAKC,MACRc,mBAAoB,CAAC,cACrBC,MAAO,GAAGhB,KAAKC,MAAMI,KAAKY,IAAI,iBAAiBjB,KAAKC,MAAMiB,OAC1DC,QAASnB,KAAKoB,SAKlC,mBAvCGC,SAAAC,GAmBHC,EAAAvB,KAAQW,YAAYD,IAChBV,KAAKwB,aAAed,KAnBxBa,EADS7B,EACKK,OAAO0B,EAAWC,MAEhCH,EAHS7B,EAGQiC,eAAe,CAC5BT,KAAM"}
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 { 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 protected override componentToRender(): h.JSX.Element {\n return this.props.reference ? (\n <OxxoVoucherResult ref={this.handleRef} {...this.props} onActionHandled={this.onActionHandled} />\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 }\n}\n\nexport default OxxoElement;\n"],"names":["OxxoElement","UIElement","isValid","formatData","paymentMethod","type","this","props","componentToRender","reference","h","OxxoVoucherResult","ref","handleRef","onActionHandled","showPayButton","payButton","classNameModifiers","label","i18n","get","name","onClick","submit","super","args","_define_property","componentRef","TxVariants","oxxo","defaultProps"],"mappings":"8WAMO,MAAMA,UAAoBC,EAO7B,WAAIC,GACA,OAAO,CACX,CAEAC,UAAAA,GACI,MAAO,CACHC,cAAe,CACXC,KAAMC,KAAKC,MAAMF,MAAQL,EAAYK,MAGjD,CAMmBG,iBAAAA,GACf,OAAOF,KAAKC,MAAME,UACdC,EAACC,EAAAA,CAAkBC,IAAKN,KAAKO,aAAeP,KAAKC,MAAOO,gBAAiBR,KAAKQ,kBAE9ER,KAAKC,MAAMQ,eACPT,KAAKU,UAAU,IACRV,KAAKC,MACRU,mBAAoB,CAAC,cACrBC,MAAO,GAAGZ,KAAKC,MAAMY,KAAKC,IAAI,iBAAiBd,KAAKC,MAAMc,OAC1DC,QAAShB,KAAKiB,QAG9B,mBAnCGC,SAAAC,GAmBHC,EAAApB,KAAQO,YAAYD,IAChBN,KAAKqB,aAAef,KAnBxBc,EADS1B,EACKK,OAAOuB,EAAWC,MAEhCH,EAHS1B,EAGQ8B,eAAe,CAC5BT,KAAM"}
@@ -1,2 +1,2 @@
1
- import{createElement as t}from"../../external/preact/dist/preact.js";import{CoreProvider as e}from"../../core/Context/CoreProvider.js";import{TxVariants as s}from"../tx-variants.js";import{UIElement as n}from"../internal/UIElement/UIElement.js";import i from"../../core/Errors/SRPanelProvider.js";import r from"../internal/RedirectButton/RedirectButton.js";import o,{ERROR as a}from"../../core/Errors/AdyenCheckoutError.js";import{PasskeyService as p}from"./services/PasskeyService.js";import{authorizeEnrollment as d}from"./services/authorizeEnrollment.js";import{authorizePayment as h}from"./services/authorizePayment.js";import l from"./components/StoredPayment/StoredPayment.js";import c from"./components/Enrollment/Enrollment.js";function m(t,e,s){return e in t?Object.defineProperty(t,e,{value:s,enumerable:!0,configurable:!0,writable:!0}):t[e]=s,t}class y extends n{get isValid(){return!(this.props._isAdyenHosted&&!this.props.storedPaymentMethodId)||!!this.state?.isValid}get additionalInfo(){return this.props.storedPaymentMethodId?this.props.i18n.get("paybybankpix.storedPayment.additionalLabel",{values:{receiver:this.props?.payByBankPixDetails?.receiver}}):""}get icon(){return this.props.storedPaymentMethodId?this.resources.getImage({parentFolder:`${y.type}/`})(this.props?.payByBankPixDetails?.ispb):super.icon}async isAvailable(){const t=await this.passkeyService.getWebAuthnUnsupportedReason();if(t)return Promise.reject(new o(a,t));if(!this.props._isAdyenHosted)return Promise.resolve();try{if(await this.passkeyService.initialize(),this.props.storedPaymentMethodId){return await this.passkeyService.canUseStoredCredential()?Promise.resolve():Promise.reject(new o("ERROR","The stored payment method is not available on this device"))}return Promise.resolve()}catch(t){return Promise.reject(t instanceof Error?t?.message:"Unknown error")}}handleAction(t,e={}){const s=this.core.createFromAction(t,{...this.elementRef.props,...e,onAdditionalDetails:this.handleAdditionalDetails});return s?(this.unmount(),s.isAvailable().then(()=>{s.mount(this._node)}),s):null}formatData(){if(!this.props._isAdyenHosted)return{paymentMethod:{type:s.paybybank_pix}};const t=null==this.props.storedPaymentMethodId;return{paymentMethod:{type:s.paybybank_pix,...this.state.data},...t?{storePaymentMethod:!0}:{}}}render(){return this.props._isAdyenHosted?t(e,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},t(i,{srPanel:this.props.modules.srPanel},null!=this.props.storedPaymentMethodId?t(l,{txVariant:y.type,type:this.props.type,clientKey:this.props.clientKey,amount:this.props.amount,enrollmentId:this.props.paymentMethodData?.enrollmentId,initiationId:this.props.paymentMethodData?.initiationId,setComponentRef:this.setComponentRef,onPay:this.payWithStoredPayment,onAuthorize:this.authorizePayment}):t(c,{onError:this.handleError,txVariant:y.type,type:this.props.type,clientKey:this.props.clientKey,enrollmentId:this.props.paymentMethodData?.enrollmentId,countdownTime:this.props.countdownTime,onEnroll:this.authorizeEnrollment,issuers:this.props.issuers,payButton:this.payButton,onChange:this.onIssuerSelected,onSubmitAnalytics:this.submitAnalytics,setComponentRef:this.setComponentRef}))):t(e,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},t(i,{srPanel:this.props.modules.srPanel},t(r,{showPayButton:this.props.showPayButton,name:this.displayName,label:this.props.i18n.get("paybybankpix.redirectBtn.label"),amount:this.props.amount,payButton:this.payButton,onSubmit:this.submit,ref:t=>{this.componentRef=t}})))}constructor(t,e){super(t,e),m(this,"passkeyService",void 0),m(this,"onIssuerSelected",async t=>{try{const{data:e={}}=t;if(!e.issuer)return;const{deviceId:s,...n}=await this.passkeyService.captureRiskSignalsEnrollment();this.setState({...t,data:{...e,riskSignals:n,deviceId:s}})}catch(t){const e=t instanceof Error?t.message:"Unknown error in the onIssuerSelected";this.handleError(t instanceof o?t:new o(a,e))}}),m(this,"authorizeEnrollment",async t=>{try{const e=await this.passkeyService.createCredentialForEnrollment(t),s={enrollmentId:this.props.paymentMethodData?.enrollmentId,fidoAssertion:e},{redirectResult:n}=await d({enrollment:s,clientKey:this.props.clientKey,loadingContext:this.props.loadingContext});this.handleAdditionalDetails({data:{details:{redirectResult:n}}})}catch(t){const e=t instanceof Error?t.message:"Unknown error in the authorizeEnrollment";this.handleError(t instanceof o?t:new o(a,e))}}),m(this,"payWithStoredPayment",async()=>{try{const{deviceId:t,...e}=await this.passkeyService.captureRiskSignalsAuthentication();this.state={...this.state,data:{storedPaymentMethodId:this.props.storedPaymentMethodId,riskSignals:e,deviceId:t}},super.submit()}catch(t){const e=t instanceof Error?t.message:"Unknown error in the payWithStoredPayment";this.handleError(t instanceof o?t:new o(a,e))}}),m(this,"authorizePayment",async t=>{try{const e=await this.passkeyService.authenticateWithCredential(t),s={enrollmentId:this.props.paymentMethodData?.enrollmentId,initiationId:this.props.paymentMethodData?.initiationId,fidoAssertion:e},{redirectResult:n}=await h({payment:s,clientKey:this.props.clientKey,loadingContext:this.props.loadingContext});this.handleAdditionalDetails({data:{details:{redirectResult:n}}})}catch(t){const e=t instanceof Error?t.message:"Unknown error in the authorizePayment";this.handleError(t instanceof o?t:new o(a,e))}});const s=this.props.storedPaymentMethodId?this.props?.payByBankPixDetails?.deviceId:this.props.deviceId;this.passkeyService=new p({environment:this.props.environment,deviceId:s},this.analytics),this.props._isAdyenHosted&&this.passkeyService.initialize()}}m(y,"type",s.paybybank_pix),m(y,"TIMEOUT_MINUTES",1),m(y,"defaultProps",{showPayButton:!0,_isAdyenHosted:(()=>{try{return new URL(window.location.href).hostname.endsWith(".adyen.com")}catch(t){return!1}})(),countdownTime:y.TIMEOUT_MINUTES});export{y as default};
1
+ import{createElement as t}from"../../external/preact/dist/preact.js";import{TxVariants as e}from"../tx-variants.js";import{UIElement as s}from"../internal/UIElement/UIElement.js";import n from"../../core/Errors/SRPanelProvider.js";import i from"../internal/RedirectButton/RedirectButton.js";import r,{ERROR as o}from"../../core/Errors/AdyenCheckoutError.js";import{PasskeyService as a}from"./services/PasskeyService.js";import{authorizeEnrollment as p}from"./services/authorizeEnrollment.js";import{authorizePayment as d}from"./services/authorizePayment.js";import h from"./components/StoredPayment/StoredPayment.js";import l from"./components/Enrollment/Enrollment.js";function c(t,e,s){return e in t?Object.defineProperty(t,e,{value:s,enumerable:!0,configurable:!0,writable:!0}):t[e]=s,t}class m extends s{get isValid(){return!(this.props._isAdyenHosted&&!this.props.storedPaymentMethodId)||!!this.state?.isValid}get additionalInfo(){return this.props.storedPaymentMethodId?this.props.i18n.get("paybybankpix.storedPayment.additionalLabel",{values:{receiver:this.props?.payByBankPixDetails?.receiver}}):""}get icon(){return this.props.storedPaymentMethodId?this.resources.getImage({parentFolder:`${m.type}/`})(this.props?.payByBankPixDetails?.ispb):super.icon}async isAvailable(){const t=await this.passkeyService.getWebAuthnUnsupportedReason();if(t)return Promise.reject(new r(o,t));if(!this.props._isAdyenHosted)return Promise.resolve();try{if(await this.passkeyService.initialize(),this.props.storedPaymentMethodId){return await this.passkeyService.canUseStoredCredential()?Promise.resolve():Promise.reject(new r("ERROR","The stored payment method is not available on this device"))}return Promise.resolve()}catch(t){return Promise.reject(t instanceof Error?t?.message:"Unknown error")}}handleAction(t,e={}){const s=this.core.createFromAction(t,{...this.elementRef.props,...e,onAdditionalDetails:this.handleAdditionalDetails});return s?(this.unmount(),s.isAvailable().then(()=>{s.mount(this._node)}),s):null}formatData(){if(!this.props._isAdyenHosted)return{paymentMethod:{type:e.paybybank_pix}};const t=null==this.props.storedPaymentMethodId;return{paymentMethod:{type:e.paybybank_pix,...this.state.data},...t?{storePaymentMethod:!0}:{}}}componentToRender(){return this.props._isAdyenHosted?t(n,{srPanel:this.srPanel},null!=this.props.storedPaymentMethodId?t(h,{txVariant:m.type,type:this.props.type,clientKey:this.props.clientKey,amount:this.props.amount,enrollmentId:this.props.paymentMethodData?.enrollmentId,initiationId:this.props.paymentMethodData?.initiationId,setComponentRef:this.setComponentRef,onPay:this.payWithStoredPayment,onAuthorize:this.authorizePayment}):t(l,{onError:this.handleError,txVariant:m.type,type:this.props.type,clientKey:this.props.clientKey,enrollmentId:this.props.paymentMethodData?.enrollmentId,countdownTime:this.props.countdownTime,onEnroll:this.authorizeEnrollment,issuers:this.props.issuers,payButton:this.payButton,onChange:this.onIssuerSelected,onSubmitAnalytics:this.submitAnalytics,setComponentRef:this.setComponentRef})):t(n,{srPanel:this.srPanel},t(i,{showPayButton:this.props.showPayButton,name:this.displayName,label:this.props.i18n.get("paybybankpix.redirectBtn.label"),amount:this.props.amount,payButton:this.payButton,onSubmit:this.submit,ref:t=>{this.componentRef=t}}))}constructor(t,e){super(t,e),c(this,"passkeyService",void 0),c(this,"onIssuerSelected",async t=>{try{const{data:e={}}=t;if(!e.issuer)return;const{deviceId:s,...n}=await this.passkeyService.captureRiskSignalsEnrollment();this.setState({...t,data:{...e,riskSignals:n,deviceId:s}})}catch(t){const e=t instanceof Error?t.message:"Unknown error in the onIssuerSelected";this.handleError(t instanceof r?t:new r(o,e))}}),c(this,"authorizeEnrollment",async t=>{try{const e=await this.passkeyService.createCredentialForEnrollment(t),s={enrollmentId:this.props.paymentMethodData?.enrollmentId,fidoAssertion:e},{redirectResult:n}=await p({enrollment:s,clientKey:this.props.clientKey,loadingContext:this.props.loadingContext});this.handleAdditionalDetails({data:{details:{redirectResult:n}}})}catch(t){const e=t instanceof Error?t.message:"Unknown error in the authorizeEnrollment";this.handleError(t instanceof r?t:new r(o,e))}}),c(this,"payWithStoredPayment",async()=>{try{const{deviceId:t,...e}=await this.passkeyService.captureRiskSignalsAuthentication();this.state={...this.state,data:{storedPaymentMethodId:this.props.storedPaymentMethodId,riskSignals:e,deviceId:t}},super.submit()}catch(t){const e=t instanceof Error?t.message:"Unknown error in the payWithStoredPayment";this.handleError(t instanceof r?t:new r(o,e))}}),c(this,"authorizePayment",async t=>{try{const e=await this.passkeyService.authenticateWithCredential(t),s={enrollmentId:this.props.paymentMethodData?.enrollmentId,initiationId:this.props.paymentMethodData?.initiationId,fidoAssertion:e},{redirectResult:n}=await d({payment:s,clientKey:this.props.clientKey,loadingContext:this.props.loadingContext});this.handleAdditionalDetails({data:{details:{redirectResult:n}}})}catch(t){const e=t instanceof Error?t.message:"Unknown error in the authorizePayment";this.handleError(t instanceof r?t:new r(o,e))}});const s=this.props.storedPaymentMethodId?this.props?.payByBankPixDetails?.deviceId:this.props.deviceId;this.passkeyService=new a({environment:this.props.environment,deviceId:s},this.analytics),this.props._isAdyenHosted&&this.passkeyService.initialize()}}c(m,"type",e.paybybank_pix),c(m,"TIMEOUT_MINUTES",1),c(m,"defaultProps",{showPayButton:!0,_isAdyenHosted:(()=>{try{return new URL(window.location.href).hostname.endsWith(".adyen.com")}catch(t){return!1}})(),countdownTime:m.TIMEOUT_MINUTES});export{m as default};
2
2
  //# sourceMappingURL=PayByBankPix.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PayByBankPix.js","sources":["../../../../src/components/PayByBankPix/PayByBankPix.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport { PayByBankPixData, PayByBankPixConfiguration } from './types';\nimport { TxVariants } from '../tx-variants';\nimport UIElement from '../internal/UIElement';\nimport SRPanelProvider from '../../core/Errors/SRPanelProvider';\nimport RedirectButton from '../internal/RedirectButton';\nimport AdyenCheckoutError, { ERROR } from '../../core/Errors/AdyenCheckoutError';\nimport { PasskeyService } from './services/PasskeyService';\nimport { authorizeEnrollment } from './services/authorizeEnrollment';\nimport { authorizePayment } from './services/authorizePayment';\nimport StoredPayment from './components/StoredPayment';\nimport Enrollment from './components/Enrollment';\nimport { PaymentAction } from '../../types/global-types';\nimport type { ICore } from '../../core/types';\n\nconst isAdyenHosted = () => {\n try {\n const currentUrl = new URL(window.location.href);\n return currentUrl.hostname.endsWith('.adyen.com');\n } catch (e) {\n // SSR, or it fails to parse the full url\n return false;\n }\n};\nclass PayByBankPixElement extends UIElement<PayByBankPixConfiguration> {\n public static readonly type = TxVariants.paybybank_pix;\n private static readonly TIMEOUT_MINUTES = 1;\n private readonly passkeyService: PasskeyService;\n\n public static readonly defaultProps: PayByBankPixConfiguration = {\n showPayButton: true,\n _isAdyenHosted: isAdyenHosted(),\n countdownTime: PayByBankPixElement.TIMEOUT_MINUTES\n };\n\n constructor(checkout: ICore, props?: PayByBankPixConfiguration) {\n super(checkout, props);\n const deviceId = this.props.storedPaymentMethodId ? this.props?.payByBankPixDetails?.deviceId : this.props.deviceId;\n\n this.passkeyService = new PasskeyService(\n {\n environment: this.props.environment,\n deviceId\n },\n this.analytics\n );\n\n if (this.props._isAdyenHosted) {\n void this.passkeyService.initialize();\n }\n }\n\n get isValid(): boolean {\n // Always true for non-hosted page or stored payment\n if (!this.props._isAdyenHosted || this.props.storedPaymentMethodId) {\n return true;\n }\n return !!this.state?.isValid;\n }\n\n /**\n * Display in the drop-in\n */\n get additionalInfo() {\n return this.props.storedPaymentMethodId\n ? this.props.i18n.get('paybybankpix.storedPayment.additionalLabel', { values: { receiver: this.props?.payByBankPixDetails?.receiver } })\n : '';\n }\n\n /**\n * Display in the drop-in\n */\n public override get icon() {\n return this.props.storedPaymentMethodId\n ? this.resources.getImage({ parentFolder: `${PayByBankPixElement.type}/` })(this.props?.payByBankPixDetails?.ispb)\n : super.icon;\n }\n\n /**\n * Method used to let the merchant know if the shopper's device supports WebAuthn APIs: https://featuredetect.passkeys.dev/\n */\n public override async isAvailable(): Promise<void> {\n const unsupportedReason = await this.passkeyService.getWebAuthnUnsupportedReason();\n if (unsupportedReason) {\n return Promise.reject(new AdyenCheckoutError(ERROR, unsupportedReason));\n }\n if (!this.props._isAdyenHosted) {\n return Promise.resolve();\n }\n\n // Load passkey sdk on the hosted page\n try {\n await this.passkeyService.initialize();\n\n if (this.props.storedPaymentMethodId) {\n // If the provided deviceId from the server does not match the localstorage deviceId, do not render the stored payment component.\n const shouldShowStoredPaymentMethod = await this.passkeyService.canUseStoredCredential();\n return shouldShowStoredPaymentMethod\n ? Promise.resolve()\n : Promise.reject(new AdyenCheckoutError('ERROR', 'The stored payment method is not available on this device'));\n }\n\n return Promise.resolve();\n } catch (error) {\n return Promise.reject(error instanceof Error ? error?.message : 'Unknown error');\n }\n }\n\n /**\n * Make sure the await action UIElement is available before mounting\n */\n public override handleAction(action: PaymentAction, props: {} = {}): UIElement | null {\n const paymentAction = this.core.createFromAction(action, {\n ...this.elementRef.props,\n ...props,\n onAdditionalDetails: this.handleAdditionalDetails\n });\n if (paymentAction) {\n this.unmount();\n void paymentAction.isAvailable().then(() => {\n paymentAction.mount(this._node);\n });\n return paymentAction;\n }\n\n return null;\n }\n\n formatData(): PayByBankPixData {\n if (!this.props._isAdyenHosted) {\n return {\n paymentMethod: { type: TxVariants.paybybank_pix }\n };\n }\n\n const isEnrollment = this.props.storedPaymentMethodId == null;\n return {\n paymentMethod: { type: TxVariants.paybybank_pix, ...this.state.data },\n // Always store the payment method for the enrollment flow.\n ...(isEnrollment ? { storePaymentMethod: true } : {})\n };\n }\n\n /**\n * There are 3 endpoints (stages) we need to call for the enrollment flow.\n * The first one is the regular payments call on issuer selection - we indicate to store the payment token for the selected issuer.\n * The second one is to poll the enrollment eligibility - we poll the server to get the enrollment challenge in the `getEnrollmentStatus` function.\n * The third one is in the `authorizeEnrollment` function - we create passkeys and authorize the enrollment with shopper's passkey.\n */\n private readonly onIssuerSelected = async payload => {\n try {\n const { data = {} } = payload;\n if (!data.issuer) {\n return;\n }\n\n const { deviceId, ...riskSignals } = await this.passkeyService.captureRiskSignalsEnrollment();\n this.setState({ ...payload, data: { ...data, riskSignals, deviceId } });\n } catch (error) {\n const errorMsg = error instanceof Error ? error.message : 'Unknown error in the onIssuerSelected';\n this.handleError(error instanceof AdyenCheckoutError ? error : new AdyenCheckoutError(ERROR, errorMsg));\n }\n };\n\n private readonly authorizeEnrollment = async (registrationOptions: string): Promise<void> => {\n try {\n const fidoAssertion = await this.passkeyService.createCredentialForEnrollment(registrationOptions); // Create passkey and trigger biometrics\n const enrollment = { enrollmentId: this.props.paymentMethodData?.enrollmentId, fidoAssertion };\n const { redirectResult } = await authorizeEnrollment({\n enrollment,\n clientKey: this.props.clientKey,\n loadingContext: this.props.loadingContext\n });\n // Make paymentDetails call to finalize the enrollment.\n this.handleAdditionalDetails({ data: { details: { redirectResult } } });\n } catch (error) {\n const errorMsg = error instanceof Error ? error.message : 'Unknown error in the authorizeEnrollment';\n this.handleError(error instanceof AdyenCheckoutError ? error : new AdyenCheckoutError(ERROR, errorMsg));\n }\n };\n\n /**\n * There are 3 endpoints (stages) we need to call for the payment flow.\n * The first one `payWithStoredPayment` is the regular payments call - we attempt to pay with the stored payment token.\n * The second one is to poll the authorization options - we poll the server to get the challenge in the `getAuthorizationStatus` function.\n * The third one is in the `authorizePayment` function - we authorize the payment with shopper's passkey.\n */\n private readonly payWithStoredPayment = async () => {\n try {\n const { deviceId, ...riskSignals } = await this.passkeyService.captureRiskSignalsAuthentication();\n this.state = { ...this.state, ...{ data: { storedPaymentMethodId: this.props.storedPaymentMethodId, riskSignals, deviceId } } };\n super.submit();\n } catch (error) {\n const errorMsg = error instanceof Error ? error.message : 'Unknown error in the payWithStoredPayment';\n this.handleError(error instanceof AdyenCheckoutError ? error : new AdyenCheckoutError(ERROR, errorMsg));\n }\n };\n\n private readonly authorizePayment = async (authenticationOptions: string): Promise<void> => {\n try {\n const fidoAssertion = await this.passkeyService.authenticateWithCredential(authenticationOptions);\n const payment = {\n enrollmentId: this.props.paymentMethodData?.enrollmentId,\n initiationId: this.props.paymentMethodData?.initiationId,\n fidoAssertion\n };\n const { redirectResult } = await authorizePayment({\n payment,\n clientKey: this.props.clientKey,\n loadingContext: this.props.loadingContext\n });\n this.handleAdditionalDetails({ data: { details: { redirectResult } } });\n } catch (error) {\n const errorMsg = error instanceof Error ? error.message : 'Unknown error in the authorizePayment';\n this.handleError(error instanceof AdyenCheckoutError ? error : new AdyenCheckoutError(ERROR, errorMsg));\n }\n };\n\n render() {\n // Always render the redirect button on the merchant's page\n if (!this.props._isAdyenHosted) {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <SRPanelProvider srPanel={this.props.modules.srPanel}>\n <RedirectButton\n showPayButton={this.props.showPayButton}\n name={this.displayName}\n label={this.props.i18n.get('paybybankpix.redirectBtn.label')}\n amount={this.props.amount}\n payButton={this.payButton}\n onSubmit={this.submit}\n ref={ref => {\n this.componentRef = ref;\n }}\n />\n </SRPanelProvider>\n </CoreProvider>\n );\n }\n\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <SRPanelProvider srPanel={this.props.modules.srPanel}>\n {this.props.storedPaymentMethodId != null ? (\n <StoredPayment\n txVariant={PayByBankPixElement.type}\n type={this.props.type}\n clientKey={this.props.clientKey}\n amount={this.props.amount}\n enrollmentId={this.props.paymentMethodData?.enrollmentId}\n initiationId={this.props.paymentMethodData?.initiationId}\n setComponentRef={this.setComponentRef}\n onPay={this.payWithStoredPayment}\n onAuthorize={this.authorizePayment}\n />\n ) : (\n <Enrollment\n onError={this.handleError}\n txVariant={PayByBankPixElement.type}\n // Await\n type={this.props.type}\n clientKey={this.props.clientKey}\n enrollmentId={this.props.paymentMethodData?.enrollmentId}\n countdownTime={this.props.countdownTime}\n onEnroll={this.authorizeEnrollment}\n // Issuer List\n issuers={this.props.issuers}\n payButton={this.payButton}\n onChange={this.onIssuerSelected}\n onSubmitAnalytics={this.submitAnalytics}\n setComponentRef={this.setComponentRef}\n />\n )}\n </SRPanelProvider>\n </CoreProvider>\n );\n }\n}\n//\nexport default PayByBankPixElement;\n"],"names":["PayByBankPixElement","UIElement","isValid","this","props","_isAdyenHosted","storedPaymentMethodId","state","additionalInfo","i18n","get","values","receiver","payByBankPixDetails","icon","resources","getImage","parentFolder","type","ispb","super","isAvailable","unsupportedReason","passkeyService","getWebAuthnUnsupportedReason","Promise","reject","AdyenCheckoutError","ERROR","resolve","initialize","canUseStoredCredential","error","Error","message","handleAction","action","paymentAction","core","createFromAction","elementRef","onAdditionalDetails","handleAdditionalDetails","unmount","then","mount","_node","formatData","paymentMethod","TxVariants","paybybank_pix","isEnrollment","data","storePaymentMethod","render","h","CoreProvider","loadingContext","SRPanelProvider","srPanel","modules","StoredPayment","txVariant","clientKey","amount","enrollmentId","paymentMethodData","initiationId","setComponentRef","onPay","payWithStoredPayment","onAuthorize","authorizePayment","Enrollment","onError","handleError","countdownTime","onEnroll","authorizeEnrollment","issuers","payButton","onChange","onIssuerSelected","onSubmitAnalytics","submitAnalytics","RedirectButton","showPayButton","name","displayName","label","onSubmit","submit","ref","componentRef","constructor","checkout","_define_property","async","payload","issuer","deviceId","riskSignals","captureRiskSignalsEnrollment","setState","errorMsg","registrationOptions","fidoAssertion","createCredentialForEnrollment","enrollment","redirectResult","details","captureRiskSignalsAuthentication","authenticationOptions","authenticateWithCredential","payment","PasskeyService","environment","analytics","TIMEOUT_MINUTES","defaultProps","URL","window","location","href","hostname","endsWith","e","isAdyenHosted"],"mappings":"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"}
1
+ {"version":3,"file":"PayByBankPix.js","sources":["../../../../src/components/PayByBankPix/PayByBankPix.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { PayByBankPixData, PayByBankPixConfiguration } from './types';\nimport { TxVariants } from '../tx-variants';\nimport UIElement from '../internal/UIElement';\nimport SRPanelProvider from '../../core/Errors/SRPanelProvider';\nimport RedirectButton from '../internal/RedirectButton';\nimport AdyenCheckoutError, { ERROR } from '../../core/Errors/AdyenCheckoutError';\nimport { PasskeyService } from './services/PasskeyService';\nimport { authorizeEnrollment } from './services/authorizeEnrollment';\nimport { authorizePayment } from './services/authorizePayment';\nimport StoredPayment from './components/StoredPayment';\nimport Enrollment from './components/Enrollment';\nimport { PaymentAction } from '../../types/global-types';\nimport type { ICore } from '../../core/types';\n\nconst isAdyenHosted = () => {\n try {\n const currentUrl = new URL(window.location.href);\n return currentUrl.hostname.endsWith('.adyen.com');\n } catch (e) {\n // SSR, or it fails to parse the full url\n return false;\n }\n};\nclass PayByBankPixElement extends UIElement<PayByBankPixConfiguration> {\n public static readonly type = TxVariants.paybybank_pix;\n private static readonly TIMEOUT_MINUTES = 1;\n private readonly passkeyService: PasskeyService;\n\n public static readonly defaultProps: PayByBankPixConfiguration = {\n showPayButton: true,\n _isAdyenHosted: isAdyenHosted(),\n countdownTime: PayByBankPixElement.TIMEOUT_MINUTES\n };\n\n constructor(checkout: ICore, props?: PayByBankPixConfiguration) {\n super(checkout, props);\n const deviceId = this.props.storedPaymentMethodId ? this.props?.payByBankPixDetails?.deviceId : this.props.deviceId;\n\n this.passkeyService = new PasskeyService(\n {\n environment: this.props.environment,\n deviceId\n },\n this.analytics\n );\n\n if (this.props._isAdyenHosted) {\n void this.passkeyService.initialize();\n }\n }\n\n get isValid(): boolean {\n // Always true for non-hosted page or stored payment\n if (!this.props._isAdyenHosted || this.props.storedPaymentMethodId) {\n return true;\n }\n return !!this.state?.isValid;\n }\n\n /**\n * Display in the drop-in\n */\n get additionalInfo() {\n return this.props.storedPaymentMethodId\n ? this.props.i18n.get('paybybankpix.storedPayment.additionalLabel', { values: { receiver: this.props?.payByBankPixDetails?.receiver } })\n : '';\n }\n\n /**\n * Display in the drop-in\n */\n public override get icon() {\n return this.props.storedPaymentMethodId\n ? this.resources.getImage({ parentFolder: `${PayByBankPixElement.type}/` })(this.props?.payByBankPixDetails?.ispb)\n : super.icon;\n }\n\n /**\n * Method used to let the merchant know if the shopper's device supports WebAuthn APIs: https://featuredetect.passkeys.dev/\n */\n public override async isAvailable(): Promise<void> {\n const unsupportedReason = await this.passkeyService.getWebAuthnUnsupportedReason();\n if (unsupportedReason) {\n return Promise.reject(new AdyenCheckoutError(ERROR, unsupportedReason));\n }\n if (!this.props._isAdyenHosted) {\n return Promise.resolve();\n }\n\n // Load passkey sdk on the hosted page\n try {\n await this.passkeyService.initialize();\n\n if (this.props.storedPaymentMethodId) {\n // If the provided deviceId from the server does not match the localstorage deviceId, do not render the stored payment component.\n const shouldShowStoredPaymentMethod = await this.passkeyService.canUseStoredCredential();\n return shouldShowStoredPaymentMethod\n ? Promise.resolve()\n : Promise.reject(new AdyenCheckoutError('ERROR', 'The stored payment method is not available on this device'));\n }\n\n return Promise.resolve();\n } catch (error) {\n return Promise.reject(error instanceof Error ? error?.message : 'Unknown error');\n }\n }\n\n /**\n * Make sure the await action UIElement is available before mounting\n */\n public override handleAction(action: PaymentAction, props: {} = {}): UIElement | null {\n const paymentAction = this.core.createFromAction(action, {\n ...this.elementRef.props,\n ...props,\n onAdditionalDetails: this.handleAdditionalDetails\n });\n if (paymentAction) {\n this.unmount();\n void paymentAction.isAvailable().then(() => {\n paymentAction.mount(this._node);\n });\n return paymentAction;\n }\n\n return null;\n }\n\n formatData(): PayByBankPixData {\n if (!this.props._isAdyenHosted) {\n return {\n paymentMethod: { type: TxVariants.paybybank_pix }\n };\n }\n\n const isEnrollment = this.props.storedPaymentMethodId == null;\n return {\n paymentMethod: { type: TxVariants.paybybank_pix, ...this.state.data },\n // Always store the payment method for the enrollment flow.\n ...(isEnrollment ? { storePaymentMethod: true } : {})\n };\n }\n\n /**\n * There are 3 endpoints (stages) we need to call for the enrollment flow.\n * The first one is the regular payments call on issuer selection - we indicate to store the payment token for the selected issuer.\n * The second one is to poll the enrollment eligibility - we poll the server to get the enrollment challenge in the `getEnrollmentStatus` function.\n * The third one is in the `authorizeEnrollment` function - we create passkeys and authorize the enrollment with shopper's passkey.\n */\n private readonly onIssuerSelected = async payload => {\n try {\n const { data = {} } = payload;\n if (!data.issuer) {\n return;\n }\n\n const { deviceId, ...riskSignals } = await this.passkeyService.captureRiskSignalsEnrollment();\n this.setState({ ...payload, data: { ...data, riskSignals, deviceId } });\n } catch (error) {\n const errorMsg = error instanceof Error ? error.message : 'Unknown error in the onIssuerSelected';\n this.handleError(error instanceof AdyenCheckoutError ? error : new AdyenCheckoutError(ERROR, errorMsg));\n }\n };\n\n private readonly authorizeEnrollment = async (registrationOptions: string): Promise<void> => {\n try {\n const fidoAssertion = await this.passkeyService.createCredentialForEnrollment(registrationOptions); // Create passkey and trigger biometrics\n const enrollment = { enrollmentId: this.props.paymentMethodData?.enrollmentId, fidoAssertion };\n const { redirectResult } = await authorizeEnrollment({\n enrollment,\n clientKey: this.props.clientKey,\n loadingContext: this.props.loadingContext\n });\n // Make paymentDetails call to finalize the enrollment.\n this.handleAdditionalDetails({ data: { details: { redirectResult } } });\n } catch (error) {\n const errorMsg = error instanceof Error ? error.message : 'Unknown error in the authorizeEnrollment';\n this.handleError(error instanceof AdyenCheckoutError ? error : new AdyenCheckoutError(ERROR, errorMsg));\n }\n };\n\n /**\n * There are 3 endpoints (stages) we need to call for the payment flow.\n * The first one `payWithStoredPayment` is the regular payments call - we attempt to pay with the stored payment token.\n * The second one is to poll the authorization options - we poll the server to get the challenge in the `getAuthorizationStatus` function.\n * The third one is in the `authorizePayment` function - we authorize the payment with shopper's passkey.\n */\n private readonly payWithStoredPayment = async () => {\n try {\n const { deviceId, ...riskSignals } = await this.passkeyService.captureRiskSignalsAuthentication();\n this.state = { ...this.state, ...{ data: { storedPaymentMethodId: this.props.storedPaymentMethodId, riskSignals, deviceId } } };\n super.submit();\n } catch (error) {\n const errorMsg = error instanceof Error ? error.message : 'Unknown error in the payWithStoredPayment';\n this.handleError(error instanceof AdyenCheckoutError ? error : new AdyenCheckoutError(ERROR, errorMsg));\n }\n };\n\n private readonly authorizePayment = async (authenticationOptions: string): Promise<void> => {\n try {\n const fidoAssertion = await this.passkeyService.authenticateWithCredential(authenticationOptions);\n const payment = {\n enrollmentId: this.props.paymentMethodData?.enrollmentId,\n initiationId: this.props.paymentMethodData?.initiationId,\n fidoAssertion\n };\n const { redirectResult } = await authorizePayment({\n payment,\n clientKey: this.props.clientKey,\n loadingContext: this.props.loadingContext\n });\n this.handleAdditionalDetails({ data: { details: { redirectResult } } });\n } catch (error) {\n const errorMsg = error instanceof Error ? error.message : 'Unknown error in the authorizePayment';\n this.handleError(error instanceof AdyenCheckoutError ? error : new AdyenCheckoutError(ERROR, errorMsg));\n }\n };\n\n protected override componentToRender(): h.JSX.Element {\n // Always render the redirect button on the merchant's page\n if (!this.props._isAdyenHosted) {\n return (\n <SRPanelProvider srPanel={this.srPanel}>\n <RedirectButton\n showPayButton={this.props.showPayButton}\n name={this.displayName}\n label={this.props.i18n.get('paybybankpix.redirectBtn.label')}\n amount={this.props.amount}\n payButton={this.payButton}\n onSubmit={this.submit}\n ref={ref => {\n this.componentRef = ref;\n }}\n />\n </SRPanelProvider>\n );\n }\n\n return (\n <SRPanelProvider srPanel={this.srPanel}>\n {this.props.storedPaymentMethodId != null ? (\n <StoredPayment\n txVariant={PayByBankPixElement.type}\n type={this.props.type}\n clientKey={this.props.clientKey}\n amount={this.props.amount}\n enrollmentId={this.props.paymentMethodData?.enrollmentId}\n initiationId={this.props.paymentMethodData?.initiationId}\n setComponentRef={this.setComponentRef}\n onPay={this.payWithStoredPayment}\n onAuthorize={this.authorizePayment}\n />\n ) : (\n <Enrollment\n onError={this.handleError}\n txVariant={PayByBankPixElement.type}\n // Await\n type={this.props.type}\n clientKey={this.props.clientKey}\n enrollmentId={this.props.paymentMethodData?.enrollmentId}\n countdownTime={this.props.countdownTime}\n onEnroll={this.authorizeEnrollment}\n // Issuer List\n issuers={this.props.issuers}\n payButton={this.payButton}\n onChange={this.onIssuerSelected}\n onSubmitAnalytics={this.submitAnalytics}\n setComponentRef={this.setComponentRef}\n />\n )}\n </SRPanelProvider>\n );\n }\n}\n//\nexport default PayByBankPixElement;\n"],"names":["PayByBankPixElement","UIElement","isValid","this","props","_isAdyenHosted","storedPaymentMethodId","state","additionalInfo","i18n","get","values","receiver","payByBankPixDetails","icon","resources","getImage","parentFolder","type","ispb","super","isAvailable","unsupportedReason","passkeyService","getWebAuthnUnsupportedReason","Promise","reject","AdyenCheckoutError","ERROR","resolve","initialize","canUseStoredCredential","error","Error","message","handleAction","action","paymentAction","core","createFromAction","elementRef","onAdditionalDetails","handleAdditionalDetails","unmount","then","mount","_node","formatData","paymentMethod","TxVariants","paybybank_pix","isEnrollment","data","storePaymentMethod","componentToRender","h","SRPanelProvider","srPanel","StoredPayment","txVariant","clientKey","amount","enrollmentId","paymentMethodData","initiationId","setComponentRef","onPay","payWithStoredPayment","onAuthorize","authorizePayment","Enrollment","onError","handleError","countdownTime","onEnroll","authorizeEnrollment","issuers","payButton","onChange","onIssuerSelected","onSubmitAnalytics","submitAnalytics","RedirectButton","showPayButton","name","displayName","label","onSubmit","submit","ref","componentRef","constructor","checkout","_define_property","async","payload","issuer","deviceId","riskSignals","captureRiskSignalsEnrollment","setState","errorMsg","registrationOptions","fidoAssertion","createCredentialForEnrollment","enrollment","redirectResult","loadingContext","details","captureRiskSignalsAuthentication","authenticationOptions","authenticateWithCredential","payment","PasskeyService","environment","analytics","TIMEOUT_MINUTES","defaultProps","URL","window","location","href","hostname","endsWith","e","isAdyenHosted"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{createElement as t}from"../../../../external/preact/dist/preact.js";import{useRef as e,useState as n,useEffect as a}from"../../../../external/preact/hooks/dist/hooks.js";import{useCoreContext as o}from"../../../../core/Context/CoreProvider.js";import i from"../../../internal/IssuerList/IssuerList.js";import{useIssuerWithLogo as s}from"./useIssuerWithLogo.js";import r from"./getEnrollmentStatus.js";import l from"./components/IssuerListIntroduction.js";import m from"./components/PayByBankPixAwait.js";import p from"../../../../core/Context/useImage.js";import{LabelOnlyDisclaimerMessage as c}from"../../../internal/DisclaimerMessage/DisclaimerMessage.js";function u(u){const{i18n:y,loadingContext:d}=o(),g=p(),w=e(null),[b,x]=n(null),f=[{name:"open-finance",alt:y.get("paybybankpix.await.logoAlt.openFinance"),src:`${g({parentFolder:`${u.txVariant}/`})("open-finance")}`},{name:"arrow-down",alt:y.get("paybybankpix.await.logoAlt.arrowDown"),src:`${g({imageFolder:"components/"})("arrow_down")}`},{name:"bank",alt:y.get("paybybankpix.await.logoAlt.bank"),src:`${g({imageFolder:"components/"})("bank")}`}],k=e({showValidation:()=>{w?.current?.showValidation()},setStatus:t=>{w?.current?.setStatus(t)}});return a(()=>{u.setComponentRef(k.current)},[u.setComponentRef]),a(()=>{b&&u.onEnroll(b)},[b]),t("div",{className:"adyen-checkout-pix-enrollment"},(t=>"await"===t.type)(u)?t(m,{logos:f,type:u.txVariant,countdownTime:u.countdownTime,clientKey:u.clientKey,onError:u.onError,awaitText:y.get("paybybankpix.await.waitForConfirmation"),instructions:y.get("paybybankpix.await.timeToPay",{values:{numberOfMin:u.countdownTime}}),pollStatus:async()=>{if(b)return;const{enrollmentId:t,clientKey:e}=u,n=await r({enrollmentId:t,clientKey:e,loadingContext:d});return n.registrationOptions&&x(n.registrationOptions),n},endSlot:()=>t("span",null,y.get("paybybankpix.await.withOpenFinance"))}):t("div",{className:"adyen-checkout-pix-enrollment-issuer-list"},t(l,{txVariant:u.txVariant}),t(i,{items:s({issuers:u.issuers,txVariant:u.txVariant}),selectFieldLabel:y.get("paybybankpix.issuerList.selectField.label"),onSubmitAnalytics:u.onSubmitAnalytics,onChange:u.onChange,payButton:u.payButton,showPayButton:!0,ref:w}),t("span",{className:"adyen-checkout-disclaimer__label"},t(c,{message:y.get("paybybankpix.issuerList.disclaimer"),urls:["https://www.adyen.com/pt_BR/legal/termo-de-consentimento-br"]}))))}export{u as default};
1
+ import{createElement as t}from"../../../../external/preact/dist/preact.js";import{useRef as e,useState as n,useEffect as a}from"../../../../external/preact/hooks/dist/hooks.js";import{useCoreContext as o}from"../../../../core/Context/CoreProvider.js";import i from"../../../internal/IssuerList/IssuerList.js";import{useIssuerWithLogo as s}from"./useIssuerWithLogo.js";import r from"./getEnrollmentStatus.js";import l from"./components/IssuerListIntroduction.js";import m from"./components/PayByBankPixAwait.js";import p from"../../../../core/Context/useImage.js";import{LabelOnlyDisclaimerMessage as c}from"../../../internal/DisclaimerMessage/DisclaimerMessage.js";import{TxVariants as u}from"../../../tx-variants.js";function y(y){const{i18n:d,loadingContext:b}=o(),g=p(),w=e(null),[x,f]=n(null),k=[{name:"open-finance",alt:d.get("paybybankpix.await.logoAlt.openFinance"),src:`${g({parentFolder:`${y.txVariant}/`})("open-finance")}`},{name:"arrow-down",alt:d.get("paybybankpix.await.logoAlt.arrowDown"),src:`${g({imageFolder:"components/"})("arrow_down")}`},{name:"bank",alt:d.get("paybybankpix.await.logoAlt.bank"),src:`${g({imageFolder:"components/"})("bank")}`}],h=e({showValidation:()=>{w?.current?.showValidation()},setStatus:t=>{w?.current?.setStatus(t)}});return a(()=>{y.setComponentRef(h.current)},[y.setComponentRef]),a(()=>{x&&y.onEnroll(x)},[x]),t("div",{className:"adyen-checkout-pix-enrollment"},(t=>"await"===t.type)(y)?t(m,{logos:k,type:y.txVariant,countdownTime:y.countdownTime,clientKey:y.clientKey,onError:y.onError,awaitText:d.get("paybybankpix.await.waitForConfirmation"),instructions:d.get("paybybankpix.await.timeToPay",{values:{numberOfMin:y.countdownTime}}),pollStatus:async()=>{if(x)return;const{enrollmentId:t,clientKey:e}=y,n=await r({enrollmentId:t,clientKey:e,loadingContext:b});return n.registrationOptions&&f(n.registrationOptions),n},endSlot:()=>t("span",null,d.get("paybybankpix.await.withOpenFinance"))}):t("div",{className:"adyen-checkout-pix-enrollment-issuer-list"},t(l,{txVariant:y.txVariant}),t(i,{items:s({issuers:y.issuers,txVariant:y.txVariant}),selectFieldLabel:d.get("paybybankpix.issuerList.selectField.label"),onSubmitAnalytics:y.onSubmitAnalytics,onChange:y.onChange,payButton:y.payButton,showPayButton:!0,ref:w,type:u.paybybank_pix}),t("span",{className:"adyen-checkout-disclaimer__label"},t(c,{message:d.get("paybybankpix.issuerList.disclaimer"),urls:["https://www.adyen.com/pt_BR/legal/termo-de-consentimento-br"]}))))}export{y as default};
2
2
  //# sourceMappingURL=Enrollment.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Enrollment.js","sources":["../../../../../../src/components/PayByBankPix/components/Enrollment/Enrollment.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { useRef, useState, useEffect } from 'preact/hooks';\nimport { AwaitProps, EnrollmentProps } from './types';\nimport { useCoreContext } from '../../../../core/Context/CoreProvider';\nimport IssuerList from '../../../internal/IssuerList';\nimport { useIssuerWithLogo } from './useIssuerWithLogo';\nimport getEnrollmentStatus from './getEnrollmentStatus';\nimport IssuerListIntroduction from './components/IssuerListIntroduction';\nimport PayByBankPixAwait from './components/PayByBankPixAwait';\nimport useImage from '../../../../core/Context/useImage';\nimport './Enrollment.scss';\nimport { LabelOnlyDisclaimerMessage } from '../../../internal/DisclaimerMessage/DisclaimerMessage';\nimport { ComponentMethodsRef, UIElementStatus } from '../../../internal/UIElement/types';\n\nconst TERMS_CONDITIONS_URL = 'https://www.adyen.com/pt_BR/legal/termo-de-consentimento-br';\n\nfunction Enrollment(props: EnrollmentProps) {\n const { i18n, loadingContext } = useCoreContext();\n const getImage = useImage();\n const issuerListRef = useRef<ComponentMethodsRef>(null);\n const [registrationOptions, setRegistrationOptions] = useState<string>(null);\n const logos = [\n {\n name: 'open-finance',\n alt: i18n.get('paybybankpix.await.logoAlt.openFinance'),\n src: `${getImage({ parentFolder: `${props.txVariant}/` })('open-finance')}`\n },\n {\n name: 'arrow-down',\n alt: i18n.get('paybybankpix.await.logoAlt.arrowDown'),\n src: `${getImage({ imageFolder: 'components/' })('arrow_down')}`\n },\n { name: 'bank', alt: i18n.get('paybybankpix.await.logoAlt.bank'), src: `${getImage({ imageFolder: 'components/' })('bank')}` }\n ];\n const self = useRef({\n showValidation: () => {\n issuerListRef?.current?.showValidation();\n },\n setStatus: (newStatus: UIElementStatus) => {\n issuerListRef?.current?.setStatus(newStatus);\n }\n });\n\n const pollStatus = async () => {\n if (registrationOptions) return;\n\n const { enrollmentId, clientKey } = props as AwaitProps;\n const response = await getEnrollmentStatus({ enrollmentId, clientKey, loadingContext });\n if (response.registrationOptions) {\n setRegistrationOptions(response.registrationOptions);\n }\n return response;\n };\n // Assist typescript to narrow down the type.\n const isAwait = (props: EnrollmentProps): props is AwaitProps => props.type === 'await';\n const awaitEndSlot = () => <span>{i18n.get('paybybankpix.await.withOpenFinance')}</span>;\n\n useEffect(() => {\n props.setComponentRef(self.current);\n }, [props.setComponentRef]);\n\n useEffect(() => {\n if (registrationOptions) {\n props.onEnroll(registrationOptions);\n }\n }, [registrationOptions]);\n\n return (\n <div className={'adyen-checkout-pix-enrollment'}>\n {isAwait(props) ? (\n <PayByBankPixAwait\n logos={logos}\n type={props.txVariant}\n countdownTime={props.countdownTime}\n clientKey={props.clientKey}\n onError={props.onError}\n awaitText={i18n.get('paybybankpix.await.waitForConfirmation')}\n instructions={i18n.get('paybybankpix.await.timeToPay', {\n values: { numberOfMin: props.countdownTime }\n })}\n pollStatus={pollStatus}\n endSlot={awaitEndSlot}\n ></PayByBankPixAwait>\n ) : (\n <div className=\"adyen-checkout-pix-enrollment-issuer-list\">\n <IssuerListIntroduction txVariant={props.txVariant} />\n <IssuerList\n items={useIssuerWithLogo({ issuers: props.issuers, txVariant: props.txVariant })}\n selectFieldLabel={i18n.get('paybybankpix.issuerList.selectField.label')}\n onSubmitAnalytics={props.onSubmitAnalytics}\n onChange={props.onChange}\n payButton={props.payButton}\n showPayButton={true}\n ref={issuerListRef}\n ></IssuerList>\n <span className=\"adyen-checkout-disclaimer__label\">\n <LabelOnlyDisclaimerMessage message={i18n.get('paybybankpix.issuerList.disclaimer')} urls={[TERMS_CONDITIONS_URL]} />\n </span>\n </div>\n )}\n </div>\n );\n}\n\nexport default Enrollment;\n"],"names":["Enrollment","props","i18n","loadingContext","useCoreContext","getImage","useImage","issuerListRef","useRef","registrationOptions","setRegistrationOptions","useState","logos","name","alt","get","src","parentFolder","txVariant","imageFolder","self","showValidation","current","setStatus","newStatus","useEffect","setComponentRef","onEnroll","h","div","className","type","isAwait","PayByBankPixAwait","countdownTime","clientKey","onError","awaitText","instructions","values","numberOfMin","pollStatus","async","enrollmentId","response","getEnrollmentStatus","endSlot","span","IssuerListIntroduction","IssuerList","items","useIssuerWithLogo","issuers","selectFieldLabel","onSubmitAnalytics","onChange","payButton","showPayButton","ref","LabelOnlyDisclaimerMessage","message","urls"],"mappings":"ypBAgBA,SAASA,EAAWC,GAChB,MAAMC,KAAEA,EAAIC,eAAEA,GAAmBC,IAC3BC,EAAWC,IACXC,EAAgBC,EAA4B,OAC3CC,EAAqBC,GAA0BC,EAAiB,MACjEC,EAAQ,CACV,CACIC,KAAM,eACNC,IAAKZ,EAAKa,IAAI,0CACdC,IAAK,GAAGX,EAAS,CAAEY,aAAc,GAAGhB,EAAMiB,cAAlCb,CAAkD,mBAE9D,CACIQ,KAAM,aACNC,IAAKZ,EAAKa,IAAI,wCACdC,IAAK,GAAGX,EAAS,CAAEc,YAAa,eAAxBd,CAAyC,iBAErD,CAAEQ,KAAM,OAAQC,IAAKZ,EAAKa,IAAI,mCAAoCC,IAAK,GAAGX,EAAS,CAAEc,YAAa,eAAxBd,CAAyC,YAEjHe,EAAOZ,EAAO,CAChBa,eAAgB,KACZd,GAAee,SAASD,kBAE5BE,UAAYC,IACRjB,GAAee,SAASC,UAAUC,MA4B1C,OAVAC,EAAU,KACNxB,EAAMyB,gBAAgBN,EAAKE,UAC5B,CAACrB,EAAMyB,kBAEVD,EAAU,KACFhB,GACAR,EAAM0B,SAASlB,IAEpB,CAACA,IAGAmB,EAACC,MAAAA,CAAIC,UAAW,iCAdJ,CAAC7B,GAA+D,UAAfA,EAAM8B,KAe9DC,CAAQ/B,GACL2B,EAACK,EAAAA,CACGrB,MAAOA,EACPmB,KAAM9B,EAAMiB,UACZgB,cAAejC,EAAMiC,cACrBC,UAAWlC,EAAMkC,UACjBC,QAASnC,EAAMmC,QACfC,UAAWnC,EAAKa,IAAI,0CACpBuB,aAAcpC,EAAKa,IAAI,+BAAgC,CACnDwB,OAAQ,CAAEC,YAAavC,EAAMiC,iBAEjCO,WArCGC,UACf,GAAIjC,EAAqB,OAEzB,MAAMkC,aAAEA,EAAYR,UAAEA,GAAclC,EAC9B2C,QAAiBC,EAAoB,CAAEF,eAAcR,YAAWhC,mBAItE,OAHIyC,EAASnC,qBACTC,EAAuBkC,EAASnC,qBAE7BmC,GA8BKE,QA1BK,IAAMlB,EAACmB,OAAAA,KAAM7C,EAAKa,IAAI,yCA6B/Ba,EAACC,MAAAA,CAAIC,UAAU,6CACXF,EAACoB,EAAAA,CAAuB9B,UAAWjB,EAAMiB,YACzCU,EAACqB,EAAAA,CACGC,MAAOC,EAAkB,CAAEC,QAASnD,EAAMmD,QAASlC,UAAWjB,EAAMiB,YACpEmC,iBAAkBnD,EAAKa,IAAI,6CAC3BuC,kBAAmBrD,EAAMqD,kBACzBC,SAAUtD,EAAMsD,SAChBC,UAAWvD,EAAMuD,UACjBC,eAAe,EACfC,IAAKnD,IAETqB,EAACmB,OAAAA,CAAKjB,UAAU,oCACZF,EAAC+B,EAAAA,CAA2BC,QAAS1D,EAAKa,IAAI,sCAAuC8C,KAAM,CAlFtF,mEAwF7B"}
1
+ {"version":3,"file":"Enrollment.js","sources":["../../../../../../src/components/PayByBankPix/components/Enrollment/Enrollment.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { useRef, useState, useEffect } from 'preact/hooks';\nimport { AwaitProps, EnrollmentProps } from './types';\nimport { useCoreContext } from '../../../../core/Context/CoreProvider';\nimport IssuerList from '../../../internal/IssuerList';\nimport { useIssuerWithLogo } from './useIssuerWithLogo';\nimport getEnrollmentStatus from './getEnrollmentStatus';\nimport IssuerListIntroduction from './components/IssuerListIntroduction';\nimport PayByBankPixAwait from './components/PayByBankPixAwait';\nimport useImage from '../../../../core/Context/useImage';\nimport './Enrollment.scss';\nimport { LabelOnlyDisclaimerMessage } from '../../../internal/DisclaimerMessage/DisclaimerMessage';\nimport { ComponentMethodsRef, UIElementStatus } from '../../../internal/UIElement/types';\nimport { TxVariants } from '../../../tx-variants';\n\nconst TERMS_CONDITIONS_URL = 'https://www.adyen.com/pt_BR/legal/termo-de-consentimento-br';\n\nfunction Enrollment(props: EnrollmentProps) {\n const { i18n, loadingContext } = useCoreContext();\n const getImage = useImage();\n const issuerListRef = useRef<ComponentMethodsRef>(null);\n const [registrationOptions, setRegistrationOptions] = useState<string>(null);\n const logos = [\n {\n name: 'open-finance',\n alt: i18n.get('paybybankpix.await.logoAlt.openFinance'),\n src: `${getImage({ parentFolder: `${props.txVariant}/` })('open-finance')}`\n },\n {\n name: 'arrow-down',\n alt: i18n.get('paybybankpix.await.logoAlt.arrowDown'),\n src: `${getImage({ imageFolder: 'components/' })('arrow_down')}`\n },\n { name: 'bank', alt: i18n.get('paybybankpix.await.logoAlt.bank'), src: `${getImage({ imageFolder: 'components/' })('bank')}` }\n ];\n const self = useRef({\n showValidation: () => {\n issuerListRef?.current?.showValidation();\n },\n setStatus: (newStatus: UIElementStatus) => {\n issuerListRef?.current?.setStatus(newStatus);\n }\n });\n\n const pollStatus = async () => {\n if (registrationOptions) return;\n\n const { enrollmentId, clientKey } = props as AwaitProps;\n const response = await getEnrollmentStatus({ enrollmentId, clientKey, loadingContext });\n if (response.registrationOptions) {\n setRegistrationOptions(response.registrationOptions);\n }\n return response;\n };\n // Assist typescript to narrow down the type.\n const isAwait = (props: EnrollmentProps): props is AwaitProps => props.type === 'await';\n const awaitEndSlot = () => <span>{i18n.get('paybybankpix.await.withOpenFinance')}</span>;\n\n useEffect(() => {\n props.setComponentRef(self.current);\n }, [props.setComponentRef]);\n\n useEffect(() => {\n if (registrationOptions) {\n props.onEnroll(registrationOptions);\n }\n }, [registrationOptions]);\n\n return (\n <div className={'adyen-checkout-pix-enrollment'}>\n {isAwait(props) ? (\n <PayByBankPixAwait\n logos={logos}\n type={props.txVariant}\n countdownTime={props.countdownTime}\n clientKey={props.clientKey}\n onError={props.onError}\n awaitText={i18n.get('paybybankpix.await.waitForConfirmation')}\n instructions={i18n.get('paybybankpix.await.timeToPay', {\n values: { numberOfMin: props.countdownTime }\n })}\n pollStatus={pollStatus}\n endSlot={awaitEndSlot}\n ></PayByBankPixAwait>\n ) : (\n <div className=\"adyen-checkout-pix-enrollment-issuer-list\">\n <IssuerListIntroduction txVariant={props.txVariant} />\n <IssuerList\n items={useIssuerWithLogo({ issuers: props.issuers, txVariant: props.txVariant })}\n selectFieldLabel={i18n.get('paybybankpix.issuerList.selectField.label')}\n onSubmitAnalytics={props.onSubmitAnalytics}\n onChange={props.onChange}\n payButton={props.payButton}\n showPayButton={true}\n ref={issuerListRef}\n type={TxVariants.paybybank_pix}\n ></IssuerList>\n <span className=\"adyen-checkout-disclaimer__label\">\n <LabelOnlyDisclaimerMessage message={i18n.get('paybybankpix.issuerList.disclaimer')} urls={[TERMS_CONDITIONS_URL]} />\n </span>\n </div>\n )}\n </div>\n );\n}\n\nexport default Enrollment;\n"],"names":["Enrollment","props","i18n","loadingContext","useCoreContext","getImage","useImage","issuerListRef","useRef","registrationOptions","setRegistrationOptions","useState","logos","name","alt","get","src","parentFolder","txVariant","imageFolder","self","showValidation","current","setStatus","newStatus","useEffect","setComponentRef","onEnroll","h","div","className","type","isAwait","PayByBankPixAwait","countdownTime","clientKey","onError","awaitText","instructions","values","numberOfMin","pollStatus","async","enrollmentId","response","getEnrollmentStatus","endSlot","span","IssuerListIntroduction","IssuerList","items","useIssuerWithLogo","issuers","selectFieldLabel","onSubmitAnalytics","onChange","payButton","showPayButton","ref","TxVariants","paybybank_pix","LabelOnlyDisclaimerMessage","message","urls"],"mappings":"8sBAiBA,SAASA,EAAWC,GAChB,MAAMC,KAAEA,EAAIC,eAAEA,GAAmBC,IAC3BC,EAAWC,IACXC,EAAgBC,EAA4B,OAC3CC,EAAqBC,GAA0BC,EAAiB,MACjEC,EAAQ,CACV,CACIC,KAAM,eACNC,IAAKZ,EAAKa,IAAI,0CACdC,IAAK,GAAGX,EAAS,CAAEY,aAAc,GAAGhB,EAAMiB,cAAlCb,CAAkD,mBAE9D,CACIQ,KAAM,aACNC,IAAKZ,EAAKa,IAAI,wCACdC,IAAK,GAAGX,EAAS,CAAEc,YAAa,eAAxBd,CAAyC,iBAErD,CAAEQ,KAAM,OAAQC,IAAKZ,EAAKa,IAAI,mCAAoCC,IAAK,GAAGX,EAAS,CAAEc,YAAa,eAAxBd,CAAyC,YAEjHe,EAAOZ,EAAO,CAChBa,eAAgB,KACZd,GAAee,SAASD,kBAE5BE,UAAYC,IACRjB,GAAee,SAASC,UAAUC,MA4B1C,OAVAC,EAAU,KACNxB,EAAMyB,gBAAgBN,EAAKE,UAC5B,CAACrB,EAAMyB,kBAEVD,EAAU,KACFhB,GACAR,EAAM0B,SAASlB,IAEpB,CAACA,IAGAmB,EAACC,MAAAA,CAAIC,UAAW,iCAdJ,CAAC7B,GAA+D,UAAfA,EAAM8B,KAe9DC,CAAQ/B,GACL2B,EAACK,EAAAA,CACGrB,MAAOA,EACPmB,KAAM9B,EAAMiB,UACZgB,cAAejC,EAAMiC,cACrBC,UAAWlC,EAAMkC,UACjBC,QAASnC,EAAMmC,QACfC,UAAWnC,EAAKa,IAAI,0CACpBuB,aAAcpC,EAAKa,IAAI,+BAAgC,CACnDwB,OAAQ,CAAEC,YAAavC,EAAMiC,iBAEjCO,WArCGC,UACf,GAAIjC,EAAqB,OAEzB,MAAMkC,aAAEA,EAAYR,UAAEA,GAAclC,EAC9B2C,QAAiBC,EAAoB,CAAEF,eAAcR,YAAWhC,mBAItE,OAHIyC,EAASnC,qBACTC,EAAuBkC,EAASnC,qBAE7BmC,GA8BKE,QA1BK,IAAMlB,EAACmB,OAAAA,KAAM7C,EAAKa,IAAI,yCA6B/Ba,EAACC,MAAAA,CAAIC,UAAU,6CACXF,EAACoB,EAAAA,CAAuB9B,UAAWjB,EAAMiB,YACzCU,EAACqB,EAAAA,CACGC,MAAOC,EAAkB,CAAEC,QAASnD,EAAMmD,QAASlC,UAAWjB,EAAMiB,YACpEmC,iBAAkBnD,EAAKa,IAAI,6CAC3BuC,kBAAmBrD,EAAMqD,kBACzBC,SAAUtD,EAAMsD,SAChBC,UAAWvD,EAAMuD,UACjBC,eAAe,EACfC,IAAKnD,EACLwB,KAAM4B,EAAWC,gBAErBhC,EAACmB,OAAAA,CAAKjB,UAAU,oCACZF,EAACiC,EAAAA,CAA2BC,QAAS5D,EAAKa,IAAI,sCAAuCgD,KAAM,CAnFtF,mEAyF7B"}
@@ -1,2 +1,2 @@
1
- import{createElement as t}from"../../../../../external/preact/dist/preact.js";import o from"./AwaitLogoContainer.js";import e from"../../../../internal/Await/Await.js";function n(n){return t("div",{className:"adyen-checkout-pay-by-bank-pix-await"},n.logos?.length>0&&t(o,{logos:n.logos}),t(e,{showCountdownTimer:!0,type:n.type,countdownTime:n.countdownTime,clientKey:n.clientKey,onError:n.onError,awaitText:n.awaitText,instructions:n.instructions,pollStatus:n.pollStatus,endSlot:n.endSlot}))}export{n as default};
1
+ import{createElement as t}from"../../../../../external/preact/dist/preact.js";import o from"./AwaitLogoContainer.js";import{Await as e}from"../../../../internal/Await/Await.js";function n(n){return t("div",{className:"adyen-checkout-pay-by-bank-pix-await"},n.logos?.length>0&&t(o,{logos:n.logos}),t(e,{showCountdownTimer:!0,type:n.type,countdownTime:n.countdownTime,clientKey:n.clientKey,onError:n.onError,awaitText:n.awaitText,instructions:n.instructions,pollStatus:n.pollStatus,endSlot:n.endSlot}))}export{n as default};
2
2
  //# sourceMappingURL=PayByBankPixAwait.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PayByBankPixAwait.js","sources":["../../../../../../../src/components/PayByBankPix/components/Enrollment/components/PayByBankPixAwait.tsx"],"sourcesContent":["import { h } from 'preact';\nimport AwaitLogoContainer, { IAwaitLogoContainer } from './AwaitLogoContainer';\nimport Await from '../../../../internal/Await';\nimport './PayBankBankPixAwait.scss';\nimport { AwaitComponentProps } from '../../../../internal/Await/types';\n\nexport interface IPayByBankPixAwait extends Partial<AwaitComponentProps>, Partial<IAwaitLogoContainer> {}\n\nfunction PayByBankPixAwait(props: IPayByBankPixAwait) {\n return (\n <div className={'adyen-checkout-pay-by-bank-pix-await'}>\n {props.logos?.length > 0 && <AwaitLogoContainer logos={props.logos}></AwaitLogoContainer>}\n <Await\n // We want the countdown capability but the adyen-checkout__await__countdown-holder is visually hidden.\n showCountdownTimer={true}\n type={props.type}\n countdownTime={props.countdownTime}\n clientKey={props.clientKey}\n onError={props.onError}\n awaitText={props.awaitText}\n instructions={props.instructions}\n pollStatus={props.pollStatus}\n endSlot={props.endSlot}\n />\n </div>\n );\n}\n\nexport default PayByBankPixAwait;\n"],"names":["PayByBankPixAwait","props","h","div","className","logos","length","AwaitLogoContainer","Await","showCountdownTimer","type","countdownTime","clientKey","onError","awaitText","instructions","pollStatus","endSlot"],"mappings":"wKAQA,SAASA,EAAkBC,GACvB,OACIC,EAACC,MAAAA,CAAIC,UAAW,wCACXH,EAAMI,OAAOC,OAAS,GAAKJ,EAACK,EAAAA,CAAmBF,MAAOJ,EAAMI,QAC7DH,EAACM,EAAAA,CAEGC,oBAAoB,EACpBC,KAAMT,EAAMS,KACZC,cAAeV,EAAMU,cACrBC,UAAWX,EAAMW,UACjBC,QAASZ,EAAMY,QACfC,UAAWb,EAAMa,UACjBC,aAAcd,EAAMc,aACpBC,WAAYf,EAAMe,WAClBC,QAAShB,EAAMgB,UAI/B"}
1
+ {"version":3,"file":"PayByBankPixAwait.js","sources":["../../../../../../../src/components/PayByBankPix/components/Enrollment/components/PayByBankPixAwait.tsx"],"sourcesContent":["import { h } from 'preact';\nimport AwaitLogoContainer, { IAwaitLogoContainer } from './AwaitLogoContainer';\nimport { Await } from '../../../../internal/Await';\nimport './PayBankBankPixAwait.scss';\nimport { AwaitComponentProps } from '../../../../internal/Await/types';\n\nexport interface IPayByBankPixAwait extends Partial<AwaitComponentProps>, Partial<IAwaitLogoContainer> {}\n\nfunction PayByBankPixAwait(props: IPayByBankPixAwait) {\n return (\n <div className={'adyen-checkout-pay-by-bank-pix-await'}>\n {props.logos?.length > 0 && <AwaitLogoContainer logos={props.logos}></AwaitLogoContainer>}\n <Await\n // We want the countdown capability but the adyen-checkout__await__countdown-holder is visually hidden.\n showCountdownTimer={true}\n type={props.type}\n countdownTime={props.countdownTime}\n clientKey={props.clientKey}\n onError={props.onError}\n awaitText={props.awaitText}\n instructions={props.instructions}\n pollStatus={props.pollStatus}\n endSlot={props.endSlot}\n />\n </div>\n );\n}\n\nexport default PayByBankPixAwait;\n"],"names":["PayByBankPixAwait","props","h","div","className","logos","length","AwaitLogoContainer","Await","showCountdownTimer","type","countdownTime","clientKey","onError","awaitText","instructions","pollStatus","endSlot"],"mappings":"iLAQA,SAASA,EAAkBC,GACvB,OACIC,EAACC,MAAAA,CAAIC,UAAW,wCACXH,EAAMI,OAAOC,OAAS,GAAKJ,EAACK,EAAAA,CAAmBF,MAAOJ,EAAMI,QAC7DH,EAACM,EAAAA,CAEGC,oBAAoB,EACpBC,KAAMT,EAAMS,KACZC,cAAeV,EAAMU,cACrBC,UAAWX,EAAMW,UACjBC,QAASZ,EAAMY,QACfC,UAAWb,EAAMa,UACjBC,aAAcd,EAAMc,aACpBC,WAAYf,EAAMe,WAClBC,QAAShB,EAAMgB,UAI/B"}
@@ -1 +1 @@
1
- {"version":3,"file":"PasskeySdkLoader.js","sources":["../../../../../src/components/PayByBankPix/services/PasskeySdkLoader.ts"],"sourcesContent":["import { IAdyenPasskey } from './types';\nimport { getUrlFromMap } from '../../../core/Environment/Environment';\nimport type { CoreConfiguration } from '../../../core/types';\nimport { CDN_ENVIRONMENTS } from '../../../core/Environment/constants';\nimport AdyenCheckoutError from '../../../core/Errors/AdyenCheckoutError';\nimport Script from '../../../utils/Script';\nimport { AnalyticsModule } from '../../../types/global-types';\n\nexport interface IPasskeySdkLoader {\n load(environment: CoreConfiguration['environment'], analytics: AnalyticsModule): Promise<IAdyenPasskey>;\n}\n\nclass PasskeySdkLoader implements IPasskeySdkLoader {\n private static readonly PASSKEY_SDK_URL = 'js/adyenpasskey/1.1.0/adyen-passkey.js';\n private AdyenPasskey: IAdyenPasskey;\n\n private readonly analytics: AnalyticsModule;\n private readonly environment: string;\n\n constructor({ analytics, environment }: { analytics: AnalyticsModule; environment: string }) {\n this.analytics = analytics;\n this.environment = environment;\n }\n\n private isAvailable(): boolean {\n return this.AdyenPasskey != null;\n }\n\n public async load(): Promise<IAdyenPasskey> {\n if (this.isAvailable()) {\n return this.AdyenPasskey;\n }\n\n try {\n const cdnUrl = getUrlFromMap(this.environment as CoreConfiguration['environment'], CDN_ENVIRONMENTS);\n const url = `${cdnUrl}${PasskeySdkLoader.PASSKEY_SDK_URL}`;\n\n const scriptElement = new Script({\n src: url,\n component: 'paybybank_pix',\n analytics: this.analytics\n });\n\n await scriptElement.load();\n this.AdyenPasskey = window.AdyenPasskey?.default;\n return this.AdyenPasskey;\n } catch (e: unknown) {\n throw new AdyenCheckoutError(\n 'SCRIPT_ERROR',\n `Unable to load script. Message: ${e instanceof Error ? e.message : 'Unknown error loading Passkey sdk'}`\n );\n }\n }\n}\n\nexport { PasskeySdkLoader };\n"],"names":["PasskeySdkLoader","isAvailable","this","AdyenPasskey","load","cdnUrl","getUrlFromMap","environment","CDN_ENVIRONMENTS","scriptElement","Script","src","PASSKEY_SDK_URL","component","analytics","window","default","e","AdyenCheckoutError","Error","message","constructor","_define_property"],"mappings":"6WAYA,MAAMA,EAYMC,WAAAA,GACJ,OAA4B,MAArBC,KAAKC,YAChB,CAEA,UAAaC,GACT,GAAIF,KAAKD,cACL,OAAOC,KAAKC,aAGhB,IACI,MAAME,EAASC,EAAcJ,KAAKK,YAAiDC,GAG7EC,EAAgB,IAAIC,EAAO,CAC7BC,IAHQ,GAAGN,IAASL,EAAiBY,kBAIrCC,UAAW,gBACXC,UAAWZ,KAAKY,YAKpB,aAFML,EAAcL,OACpBF,KAAKC,aAAeY,OAAOZ,cAAca,QAClCd,KAAKC,YAChB,CAAE,MAAOc,GACL,MAAM,IAAIC,EACN,eACA,mCAAmCD,aAAaE,MAAQF,EAAEG,QAAU,sCAE5E,CACJ,CAjCA,WAAAC,EAAYP,UAAEA,EAASP,YAAEA,IALzBe,EAAApB,KAAQC,oBAAR,GAEAmB,EAAApB,KAAiBY,iBAAjB,GACAQ,EAAApB,KAAiBK,mBAAjB,GAGIL,KAAKY,UAAYA,EACjBZ,KAAKK,YAAcA,CACvB,EATAe,EADEtB,EACsBY,kBAAkB"}
1
+ {"version":3,"file":"PasskeySdkLoader.js","sources":["../../../../../src/components/PayByBankPix/services/PasskeySdkLoader.ts"],"sourcesContent":["import { IAdyenPasskey } from './types';\nimport { getUrlFromMap } from '../../../core/Environment/Environment';\nimport type { CoreConfiguration } from '../../../core/types';\nimport { CDN_ENVIRONMENTS } from '../../../core/Environment/constants';\nimport AdyenCheckoutError from '../../../core/Errors/AdyenCheckoutError';\nimport Script from '../../../utils/Script';\nimport { IAnalytics } from '../../../core/Analytics/Analytics';\n\nexport interface IPasskeySdkLoader {\n load(environment: CoreConfiguration['environment'], analytics: IAnalytics): Promise<IAdyenPasskey>;\n}\n\nclass PasskeySdkLoader implements IPasskeySdkLoader {\n private static readonly PASSKEY_SDK_URL = 'js/adyenpasskey/1.1.0/adyen-passkey.js';\n private AdyenPasskey: IAdyenPasskey;\n\n private readonly analytics: IAnalytics;\n private readonly environment: string;\n\n constructor({ analytics, environment }: { analytics: IAnalytics; environment: string }) {\n this.analytics = analytics;\n this.environment = environment;\n }\n\n private isAvailable(): boolean {\n return this.AdyenPasskey != null;\n }\n\n public async load(): Promise<IAdyenPasskey> {\n if (this.isAvailable()) {\n return this.AdyenPasskey;\n }\n\n try {\n const cdnUrl = getUrlFromMap(this.environment as CoreConfiguration['environment'], CDN_ENVIRONMENTS);\n const url = `${cdnUrl}${PasskeySdkLoader.PASSKEY_SDK_URL}`;\n\n const scriptElement = new Script({\n src: url,\n component: 'paybybank_pix',\n analytics: this.analytics\n });\n\n await scriptElement.load();\n this.AdyenPasskey = window.AdyenPasskey?.default;\n return this.AdyenPasskey;\n } catch (e: unknown) {\n throw new AdyenCheckoutError(\n 'SCRIPT_ERROR',\n `Unable to load script. Message: ${e instanceof Error ? e.message : 'Unknown error loading Passkey sdk'}`\n );\n }\n }\n}\n\nexport { PasskeySdkLoader };\n"],"names":["PasskeySdkLoader","isAvailable","this","AdyenPasskey","load","cdnUrl","getUrlFromMap","environment","CDN_ENVIRONMENTS","scriptElement","Script","src","PASSKEY_SDK_URL","component","analytics","window","default","e","AdyenCheckoutError","Error","message","constructor","_define_property"],"mappings":"6WAYA,MAAMA,EAYMC,WAAAA,GACJ,OAA4B,MAArBC,KAAKC,YAChB,CAEA,UAAaC,GACT,GAAIF,KAAKD,cACL,OAAOC,KAAKC,aAGhB,IACI,MAAME,EAASC,EAAcJ,KAAKK,YAAiDC,GAG7EC,EAAgB,IAAIC,EAAO,CAC7BC,IAHQ,GAAGN,IAASL,EAAiBY,kBAIrCC,UAAW,gBACXC,UAAWZ,KAAKY,YAKpB,aAFML,EAAcL,OACpBF,KAAKC,aAAeY,OAAOZ,cAAca,QAClCd,KAAKC,YAChB,CAAE,MAAOc,GACL,MAAM,IAAIC,EACN,eACA,mCAAmCD,aAAaE,MAAQF,EAAEG,QAAU,sCAE5E,CACJ,CAjCA,WAAAC,EAAYP,UAAEA,EAASP,YAAEA,IALzBe,EAAApB,KAAQC,oBAAR,GAEAmB,EAAApB,KAAiBY,iBAAjB,GACAQ,EAAApB,KAAiBK,mBAAjB,GAGIL,KAAKY,UAAYA,EACjBZ,KAAKK,YAAcA,CACvB,EATAe,EADEtB,EACsBY,kBAAkB"}