@adyen/adyen-web 6.8.0 → 6.10.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 (440) hide show
  1. package/dist/cjs/adyen.css +21 -17
  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 +265 -71
  6. package/dist/es/_virtual/index.js +1 -1
  7. package/dist/es/_virtual/index2.js +2 -0
  8. package/dist/es/_virtual/index2.js.map +1 -0
  9. package/dist/es/adyen.css +21 -17
  10. package/dist/es/adyen.css.map +1 -1
  11. package/dist/es/components/Ach/components/AchInput/AchInput.js +1 -1
  12. package/dist/es/components/Ach/components/AchInput/AchInput.js.map +1 -1
  13. package/dist/es/components/Ach/components/AchInput/components/AchSFInput.js +1 -1
  14. package/dist/es/components/Ach/components/AchInput/components/AchSFInput.js.map +1 -1
  15. package/dist/es/components/ApplePay/ApplePay.js +1 -1
  16. package/dist/es/components/ApplePay/ApplePay.js.map +1 -1
  17. package/dist/es/components/ApplePay/components/ApplePayButton.js +1 -1
  18. package/dist/es/components/ApplePay/components/ApplePayButton.js.map +1 -1
  19. package/dist/es/components/ApplePay/defaultProps.js +1 -1
  20. package/dist/es/components/ApplePay/defaultProps.js.map +1 -1
  21. package/dist/es/components/ApplePay/services/ApplePaySdkLoader.js +2 -0
  22. package/dist/es/components/ApplePay/services/ApplePaySdkLoader.js.map +1 -0
  23. package/dist/es/components/ApplePay/services/ApplePayService.js.map +1 -0
  24. package/dist/es/components/ApplePay/utils/format-applepay-contact-to-adyen-format.js +2 -0
  25. package/dist/es/components/ApplePay/utils/format-applepay-contact-to-adyen-format.js.map +1 -0
  26. package/dist/es/components/ApplePay/utils/map-adyen-brands-to-applepay-brands.js +2 -0
  27. package/dist/es/components/ApplePay/utils/map-adyen-brands-to-applepay-brands.js.map +1 -0
  28. package/dist/es/components/ApplePay/utils/payment-request.js +2 -0
  29. package/dist/es/components/ApplePay/utils/payment-request.js.map +1 -0
  30. package/dist/es/components/ApplePay/utils/resolve-supported-version.js +2 -0
  31. package/dist/es/components/ApplePay/utils/resolve-supported-version.js.map +1 -0
  32. package/dist/es/components/BacsDD/components/BacsInput.js +1 -1
  33. package/dist/es/components/BacsDD/components/BacsInput.js.map +1 -1
  34. package/dist/es/components/Boleto/Boleto.js.map +1 -1
  35. package/dist/es/components/Card/components/CardInput/CardInput.js +1 -1
  36. package/dist/es/components/Card/components/CardInput/CardInput.js.map +1 -1
  37. package/dist/es/components/Card/components/CardInput/components/AvailableBrands/AvailableBrands.js +1 -1
  38. package/dist/es/components/Card/components/CardInput/components/AvailableBrands/AvailableBrands.js.map +1 -1
  39. package/dist/es/components/Card/components/CardInput/components/BrandIcon.js +1 -1
  40. package/dist/es/components/Card/components/CardInput/components/BrandIcon.js.map +1 -1
  41. package/dist/es/components/Card/components/CardInput/components/CVC.js +1 -1
  42. package/dist/es/components/Card/components/CardInput/components/CVC.js.map +1 -1
  43. package/dist/es/components/Card/components/CardInput/components/CVCHint.js +1 -1
  44. package/dist/es/components/Card/components/CardInput/components/CVCHint.js.map +1 -1
  45. package/dist/es/components/Card/components/CardInput/components/CardFields.js +1 -1
  46. package/dist/es/components/Card/components/CardInput/components/CardFields.js.map +1 -1
  47. package/dist/es/components/Card/components/CardInput/components/CardNumber.js +1 -1
  48. package/dist/es/components/Card/components/CardInput/components/CardNumber.js.map +1 -1
  49. package/dist/es/components/Card/components/CardInput/components/ExpirationDate.js +1 -1
  50. package/dist/es/components/Card/components/CardInput/components/ExpirationDate.js.map +1 -1
  51. package/dist/es/components/Card/components/CardInput/components/KCPAuthentication.js +1 -1
  52. package/dist/es/components/Card/components/CardInput/components/KCPAuthentication.js.map +1 -1
  53. package/dist/es/components/Dropin/components/PaymentMethod/DisableOneClickConfirmation.js +1 -1
  54. package/dist/es/components/Dropin/components/PaymentMethod/DisableOneClickConfirmation.js.map +1 -1
  55. package/dist/es/components/Dropin/components/PaymentMethod/InstantPaymentMethods.js +1 -1
  56. package/dist/es/components/Dropin/components/PaymentMethod/InstantPaymentMethods.js.map +1 -1
  57. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodIcon.js +1 -1
  58. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodIcon.js.map +1 -1
  59. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodItem/PaymentMethodItem.js +1 -1
  60. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodItem/PaymentMethodItem.js.map +1 -1
  61. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodList.js +1 -1
  62. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodList.js.map +1 -1
  63. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodName.js +1 -1
  64. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodName.js.map +1 -1
  65. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodsContainer.js +1 -1
  66. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodsContainer.js.map +1 -1
  67. package/dist/es/components/Giftcard/Giftcard.js +1 -1
  68. package/dist/es/components/Giftcard/Giftcard.js.map +1 -1
  69. package/dist/es/components/Giftcard/components/GiftcardComponent.js +1 -1
  70. package/dist/es/components/Giftcard/components/GiftcardComponent.js.map +1 -1
  71. package/dist/es/components/Giftcard/components/GiftcardNumberField.js +1 -1
  72. package/dist/es/components/Giftcard/components/GiftcardNumberField.js.map +1 -1
  73. package/dist/es/components/Giftcard/components/GiftcardPinField.js +1 -1
  74. package/dist/es/components/Giftcard/components/GiftcardPinField.js.map +1 -1
  75. package/dist/es/components/Giftcard/components/GiftcardResult.js +1 -1
  76. package/dist/es/components/Giftcard/components/GiftcardResult.js.map +1 -1
  77. package/dist/es/components/GooglePay/GooglePay.js +1 -1
  78. package/dist/es/components/GooglePay/GooglePay.js.map +1 -1
  79. package/dist/es/components/MBWay/MBWay.js +1 -1
  80. package/dist/es/components/MBWay/MBWay.js.map +1 -1
  81. package/dist/es/components/MBWay/components/MBWayInput/MBWayInput.js +1 -1
  82. package/dist/es/components/MBWay/components/MBWayInput/MBWayInput.js.map +1 -1
  83. package/dist/es/components/MealVoucherFR/components/MealVoucherExpiryField.js +1 -1
  84. package/dist/es/components/MealVoucherFR/components/MealVoucherExpiryField.js.map +1 -1
  85. package/dist/es/components/PayPal/components/PaypalButtons.js +1 -1
  86. package/dist/es/components/PayPal/components/PaypalButtons.js.map +1 -1
  87. package/dist/es/components/PayTo/PayTo.js +2 -0
  88. package/dist/es/components/PayTo/PayTo.js.map +1 -0
  89. package/dist/es/components/PayTo/components/BSBInput.js +2 -0
  90. package/dist/es/components/PayTo/components/BSBInput.js.map +1 -0
  91. package/dist/es/components/PayTo/components/IdentifierSelector.js +2 -0
  92. package/dist/es/components/PayTo/components/IdentifierSelector.js.map +1 -0
  93. package/dist/es/components/PayTo/components/MandateSummary.js +2 -0
  94. package/dist/es/components/PayTo/components/MandateSummary.js.map +1 -0
  95. package/dist/es/components/PayTo/components/PayIDInput.js +2 -0
  96. package/dist/es/components/PayTo/components/PayIDInput.js.map +1 -0
  97. package/dist/es/components/PayTo/components/PayToComponent.js +2 -0
  98. package/dist/es/components/PayTo/components/PayToComponent.js.map +1 -0
  99. package/dist/es/components/PayTo/components/PayToInstructions.js +2 -0
  100. package/dist/es/components/PayTo/components/PayToInstructions.js.map +1 -0
  101. package/dist/es/components/PayTo/components/PayToNameFields.js +2 -0
  102. package/dist/es/components/PayTo/components/PayToNameFields.js.map +1 -0
  103. package/dist/es/components/PayTo/components/PayToPhone.js +2 -0
  104. package/dist/es/components/PayTo/components/PayToPhone.js.map +1 -0
  105. package/dist/es/components/PayTo/components/validate.js +2 -0
  106. package/dist/es/components/PayTo/components/validate.js.map +1 -0
  107. package/dist/es/components/ThreeDS2/components/Challenge/DoChallenge3DS2.js +1 -1
  108. package/dist/es/components/ThreeDS2/components/Challenge/DoChallenge3DS2.js.map +1 -1
  109. package/dist/es/components/ThreeDS2/components/Form/ThreeDS2Form.js +1 -1
  110. package/dist/es/components/ThreeDS2/components/Form/ThreeDS2Form.js.map +1 -1
  111. package/dist/es/components/UPI/components/UPIComponent/useUpiSegmentedControlOptions.js.map +1 -1
  112. package/dist/es/components/UPI/components/UPIIntentAppList/UPIIntentAppItem/UPIIntentAppItem.js +1 -1
  113. package/dist/es/components/UPI/components/UPIIntentAppList/UPIIntentAppItem/UPIIntentAppItem.js.map +1 -1
  114. package/dist/es/components/UPI/components/UPIIntentAppList/UPIIntentAppList.js +1 -1
  115. package/dist/es/components/UPI/components/UPIIntentAppList/UPIIntentAppList.js.map +1 -1
  116. package/dist/es/components/components-name-map.js +1 -1
  117. package/dist/es/components/components-name-map.js.map +1 -1
  118. package/dist/es/components/index.js +1 -1
  119. package/dist/es/components/internal/Alert/Alert.js +1 -1
  120. package/dist/es/components/internal/Alert/Alert.js.map +1 -1
  121. package/dist/es/components/internal/Await/Await.js +1 -1
  122. package/dist/es/components/internal/Await/Await.js.map +1 -1
  123. package/dist/es/components/internal/Button/Button.js +1 -1
  124. package/dist/es/components/internal/Button/Button.js.map +1 -1
  125. package/dist/es/components/internal/ButtonGroup/ButtonGroup.js +1 -1
  126. package/dist/es/components/internal/ButtonGroup/ButtonGroup.js.map +1 -1
  127. package/dist/es/components/internal/ClickToPay/components/CtPBrand/CtPBrand.js +1 -1
  128. package/dist/es/components/internal/ClickToPay/components/CtPBrand/CtPBrand.js.map +1 -1
  129. package/dist/es/components/internal/ClickToPay/components/CtPCards/CtPSingleCard/CtPSingleCard.js +1 -1
  130. package/dist/es/components/internal/ClickToPay/components/CtPCards/CtPSingleCard/CtPSingleCard.js.map +1 -1
  131. package/dist/es/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPResendOtpLink.js +1 -1
  132. package/dist/es/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPResendOtpLink.js.map +1 -1
  133. package/dist/es/components/internal/ClickToPay/components/CtPOneTimePassword/CtPSaveCookiesCheckbox/CtPSaveCookiesCheckbox.js +1 -1
  134. package/dist/es/components/internal/ClickToPay/components/CtPOneTimePassword/CtPSaveCookiesCheckbox/CtPSaveCookiesCheckbox.js.map +1 -1
  135. package/dist/es/components/internal/ClickToPay/components/CtPSection/CtPLogoutLink.js +1 -1
  136. package/dist/es/components/internal/ClickToPay/components/CtPSection/CtPLogoutLink.js.map +1 -1
  137. package/dist/es/components/internal/ClickToPay/components/CtPSection/CtPSection.js +1 -1
  138. package/dist/es/components/internal/ClickToPay/components/CtPSection/CtPSection.js.map +1 -1
  139. package/dist/es/components/internal/CompanyDetails/CompanyDetails.js.map +1 -1
  140. package/dist/es/components/internal/ContentSeparator/ContentSeparator.js +1 -1
  141. package/dist/es/components/internal/ContentSeparator/ContentSeparator.js.map +1 -1
  142. package/dist/es/components/internal/DetailsTable/DetailsTable.js +2 -0
  143. package/dist/es/components/internal/DetailsTable/DetailsTable.js.map +1 -0
  144. package/dist/es/components/internal/ExpandButton/ExpandButton.js +1 -1
  145. package/dist/es/components/internal/ExpandButton/ExpandButton.js.map +1 -1
  146. package/dist/es/components/internal/FormFields/Checkbox/Checkbox.js +1 -1
  147. package/dist/es/components/internal/FormFields/Checkbox/Checkbox.js.map +1 -1
  148. package/dist/es/components/internal/FormFields/Field/Field.js +1 -1
  149. package/dist/es/components/internal/FormFields/Field/Field.js.map +1 -1
  150. package/dist/es/components/internal/FormFields/Fieldset/Fieldset.js +1 -1
  151. package/dist/es/components/internal/FormFields/Fieldset/Fieldset.js.map +1 -1
  152. package/dist/es/components/internal/FormFields/InputBase.js +1 -1
  153. package/dist/es/components/internal/FormFields/InputBase.js.map +1 -1
  154. package/dist/es/components/internal/FormFields/RadioGroup/RadioGroup.js +1 -1
  155. package/dist/es/components/internal/FormFields/RadioGroup/RadioGroup.js.map +1 -1
  156. package/dist/es/components/internal/FormFields/Select/Select.js +1 -1
  157. package/dist/es/components/internal/FormFields/Select/Select.js.map +1 -1
  158. package/dist/es/components/internal/FormFields/Select/components/SelectButton.js +1 -1
  159. package/dist/es/components/internal/FormFields/Select/components/SelectButton.js.map +1 -1
  160. package/dist/es/components/internal/FormFields/Select/components/SelectList.js +1 -1
  161. package/dist/es/components/internal/FormFields/Select/components/SelectList.js.map +1 -1
  162. package/dist/es/components/internal/FormFields/Select/components/SelectListItem.js +1 -1
  163. package/dist/es/components/internal/FormFields/Select/components/SelectListItem.js.map +1 -1
  164. package/dist/es/components/internal/IFrame/Iframe.js +1 -1
  165. package/dist/es/components/internal/IFrame/Iframe.js.map +1 -1
  166. package/dist/es/components/internal/Icon/Icon.js +1 -1
  167. package/dist/es/components/internal/Icon/Icon.js.map +1 -1
  168. package/dist/es/components/internal/Img/Img.js +1 -1
  169. package/dist/es/components/internal/Img/Img.js.map +1 -1
  170. package/dist/es/components/internal/IssuerList/IssuerButtonGroup/IssuerButton.js +1 -1
  171. package/dist/es/components/internal/IssuerList/IssuerButtonGroup/IssuerButton.js.map +1 -1
  172. package/dist/es/components/internal/LoadingWrapper/LoadingWrapper.js +1 -1
  173. package/dist/es/components/internal/LoadingWrapper/LoadingWrapper.js.map +1 -1
  174. package/dist/es/components/internal/Modal/Modal.js +1 -1
  175. package/dist/es/components/internal/Modal/Modal.js.map +1 -1
  176. package/dist/es/components/internal/OpenInvoice/OpenInvoice.js +1 -1
  177. package/dist/es/components/internal/OpenInvoice/OpenInvoice.js.map +1 -1
  178. package/dist/es/components/internal/PersonalDetails/PersonalDetails.js.map +1 -1
  179. package/dist/es/components/internal/PhoneInput/PhoneInputFields.js +2 -0
  180. package/dist/es/components/internal/PhoneInput/PhoneInputFields.js.map +1 -0
  181. package/dist/es/components/internal/PhoneInput/PhoneInputForm.js +2 -0
  182. package/dist/es/components/internal/PhoneInput/PhoneInputForm.js.map +1 -0
  183. package/dist/es/components/internal/PhoneInput/validate.js +1 -1
  184. package/dist/es/components/internal/SecuredFields/lib/CSF/partials/isConfigured.js +1 -1
  185. package/dist/es/components/internal/SecuredFields/lib/CSF/partials/isConfigured.js.map +1 -1
  186. package/dist/es/components/internal/SecuredFields/lib/CSF/utils/cardType.js +1 -1
  187. package/dist/es/components/internal/SecuredFields/lib/CSF/utils/cardType.js.map +1 -1
  188. package/dist/es/components/internal/SegmentedControl/SegmentedControl.js +1 -1
  189. package/dist/es/components/internal/SegmentedControl/SegmentedControl.js.map +1 -1
  190. package/dist/es/components/internal/SendCopyToEmail/SendCopyToEmail.js +1 -1
  191. package/dist/es/components/internal/SendCopyToEmail/SendCopyToEmail.js.map +1 -1
  192. package/dist/es/components/internal/UIElement/UIElement.js.map +1 -1
  193. package/dist/es/components/internal/Voucher/Voucher.js +1 -1
  194. package/dist/es/components/internal/Voucher/Voucher.js.map +1 -1
  195. package/dist/es/components/tx-variants.js +1 -1
  196. package/dist/es/components/tx-variants.js.map +1 -1
  197. package/dist/es/core/ProcessResponse/PaymentMethods/filters.js +1 -1
  198. package/dist/es/core/ProcessResponse/PaymentMethods/filters.js.map +1 -1
  199. package/dist/es/core/Services/analytics/collect-id.js +1 -1
  200. package/dist/es/core/Services/analytics/collect-id.js.map +1 -1
  201. package/dist/es/core/core.js +1 -1
  202. package/dist/es/core/core.js.map +1 -1
  203. package/dist/es/core/utils.js +1 -1
  204. package/dist/es/core/utils.js.map +1 -1
  205. package/dist/es/external/classnames/index.js +2 -2
  206. package/dist/es/external/classnames/index.js.map +1 -1
  207. package/dist/es/index.d.ts +265 -71
  208. package/dist/es/index.js +1 -1
  209. package/dist/es/utils/Validator/ValidationRuleResult.js.map +1 -1
  210. package/dist/es/utils/Validator/Validator.js.map +1 -1
  211. package/dist/es/utils/inIframe.js +2 -0
  212. package/dist/es/utils/inIframe.js.map +1 -0
  213. package/dist/es-legacy/_virtual/index.js +1 -1
  214. package/dist/es-legacy/_virtual/index2.js +2 -0
  215. package/dist/es-legacy/_virtual/index2.js.map +1 -0
  216. package/dist/es-legacy/adyen.css +21 -17
  217. package/dist/es-legacy/adyen.css.map +1 -1
  218. package/dist/es-legacy/components/Ach/components/AchInput/AchInput.js +1 -1
  219. package/dist/es-legacy/components/Ach/components/AchInput/AchInput.js.map +1 -1
  220. package/dist/es-legacy/components/Ach/components/AchInput/components/AchSFInput.js +1 -1
  221. package/dist/es-legacy/components/Ach/components/AchInput/components/AchSFInput.js.map +1 -1
  222. package/dist/es-legacy/components/ApplePay/ApplePay.js +1 -1
  223. package/dist/es-legacy/components/ApplePay/ApplePay.js.map +1 -1
  224. package/dist/es-legacy/components/ApplePay/components/ApplePayButton.js +1 -1
  225. package/dist/es-legacy/components/ApplePay/components/ApplePayButton.js.map +1 -1
  226. package/dist/es-legacy/components/ApplePay/defaultProps.js +1 -1
  227. package/dist/es-legacy/components/ApplePay/defaultProps.js.map +1 -1
  228. package/dist/es-legacy/components/ApplePay/services/ApplePaySdkLoader.js +2 -0
  229. package/dist/es-legacy/components/ApplePay/services/ApplePaySdkLoader.js.map +1 -0
  230. package/dist/es-legacy/components/ApplePay/services/ApplePayService.js.map +1 -0
  231. package/dist/es-legacy/components/ApplePay/utils/format-applepay-contact-to-adyen-format.js +2 -0
  232. package/dist/es-legacy/components/ApplePay/utils/format-applepay-contact-to-adyen-format.js.map +1 -0
  233. package/dist/es-legacy/components/ApplePay/utils/map-adyen-brands-to-applepay-brands.js +2 -0
  234. package/dist/es-legacy/components/ApplePay/utils/map-adyen-brands-to-applepay-brands.js.map +1 -0
  235. package/dist/es-legacy/components/ApplePay/utils/payment-request.js +2 -0
  236. package/dist/es-legacy/components/ApplePay/utils/payment-request.js.map +1 -0
  237. package/dist/es-legacy/components/ApplePay/utils/resolve-supported-version.js +2 -0
  238. package/dist/es-legacy/components/ApplePay/utils/resolve-supported-version.js.map +1 -0
  239. package/dist/es-legacy/components/BacsDD/components/BacsInput.js +1 -1
  240. package/dist/es-legacy/components/BacsDD/components/BacsInput.js.map +1 -1
  241. package/dist/es-legacy/components/Boleto/Boleto.js.map +1 -1
  242. package/dist/es-legacy/components/Card/components/CardInput/CardInput.js +1 -1
  243. package/dist/es-legacy/components/Card/components/CardInput/CardInput.js.map +1 -1
  244. package/dist/es-legacy/components/Card/components/CardInput/components/AvailableBrands/AvailableBrands.js +1 -1
  245. package/dist/es-legacy/components/Card/components/CardInput/components/AvailableBrands/AvailableBrands.js.map +1 -1
  246. package/dist/es-legacy/components/Card/components/CardInput/components/BrandIcon.js +1 -1
  247. package/dist/es-legacy/components/Card/components/CardInput/components/BrandIcon.js.map +1 -1
  248. package/dist/es-legacy/components/Card/components/CardInput/components/CVC.js +1 -1
  249. package/dist/es-legacy/components/Card/components/CardInput/components/CVC.js.map +1 -1
  250. package/dist/es-legacy/components/Card/components/CardInput/components/CVCHint.js +1 -1
  251. package/dist/es-legacy/components/Card/components/CardInput/components/CVCHint.js.map +1 -1
  252. package/dist/es-legacy/components/Card/components/CardInput/components/CardFields.js +1 -1
  253. package/dist/es-legacy/components/Card/components/CardInput/components/CardFields.js.map +1 -1
  254. package/dist/es-legacy/components/Card/components/CardInput/components/CardNumber.js +1 -1
  255. package/dist/es-legacy/components/Card/components/CardInput/components/CardNumber.js.map +1 -1
  256. package/dist/es-legacy/components/Card/components/CardInput/components/ExpirationDate.js +1 -1
  257. package/dist/es-legacy/components/Card/components/CardInput/components/ExpirationDate.js.map +1 -1
  258. package/dist/es-legacy/components/Card/components/CardInput/components/KCPAuthentication.js +1 -1
  259. package/dist/es-legacy/components/Card/components/CardInput/components/KCPAuthentication.js.map +1 -1
  260. package/dist/es-legacy/components/Dropin/components/PaymentMethod/DisableOneClickConfirmation.js +1 -1
  261. package/dist/es-legacy/components/Dropin/components/PaymentMethod/DisableOneClickConfirmation.js.map +1 -1
  262. package/dist/es-legacy/components/Dropin/components/PaymentMethod/InstantPaymentMethods.js +1 -1
  263. package/dist/es-legacy/components/Dropin/components/PaymentMethod/InstantPaymentMethods.js.map +1 -1
  264. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodIcon.js +1 -1
  265. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodIcon.js.map +1 -1
  266. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodItem/PaymentMethodItem.js +1 -1
  267. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodItem/PaymentMethodItem.js.map +1 -1
  268. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodList.js +1 -1
  269. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodList.js.map +1 -1
  270. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodName.js +1 -1
  271. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodName.js.map +1 -1
  272. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodsContainer.js +1 -1
  273. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodsContainer.js.map +1 -1
  274. package/dist/es-legacy/components/Giftcard/Giftcard.js +1 -1
  275. package/dist/es-legacy/components/Giftcard/Giftcard.js.map +1 -1
  276. package/dist/es-legacy/components/Giftcard/components/GiftcardComponent.js +1 -1
  277. package/dist/es-legacy/components/Giftcard/components/GiftcardComponent.js.map +1 -1
  278. package/dist/es-legacy/components/Giftcard/components/GiftcardNumberField.js +1 -1
  279. package/dist/es-legacy/components/Giftcard/components/GiftcardNumberField.js.map +1 -1
  280. package/dist/es-legacy/components/Giftcard/components/GiftcardPinField.js +1 -1
  281. package/dist/es-legacy/components/Giftcard/components/GiftcardPinField.js.map +1 -1
  282. package/dist/es-legacy/components/Giftcard/components/GiftcardResult.js +1 -1
  283. package/dist/es-legacy/components/Giftcard/components/GiftcardResult.js.map +1 -1
  284. package/dist/es-legacy/components/GooglePay/GooglePay.js +1 -1
  285. package/dist/es-legacy/components/GooglePay/GooglePay.js.map +1 -1
  286. package/dist/es-legacy/components/MBWay/MBWay.js +1 -1
  287. package/dist/es-legacy/components/MBWay/MBWay.js.map +1 -1
  288. package/dist/es-legacy/components/MBWay/components/MBWayInput/MBWayInput.js +1 -1
  289. package/dist/es-legacy/components/MBWay/components/MBWayInput/MBWayInput.js.map +1 -1
  290. package/dist/es-legacy/components/MealVoucherFR/components/MealVoucherExpiryField.js +1 -1
  291. package/dist/es-legacy/components/MealVoucherFR/components/MealVoucherExpiryField.js.map +1 -1
  292. package/dist/es-legacy/components/PayPal/components/PaypalButtons.js +1 -1
  293. package/dist/es-legacy/components/PayPal/components/PaypalButtons.js.map +1 -1
  294. package/dist/es-legacy/components/PayTo/PayTo.js +2 -0
  295. package/dist/es-legacy/components/PayTo/PayTo.js.map +1 -0
  296. package/dist/es-legacy/components/PayTo/components/BSBInput.js +2 -0
  297. package/dist/es-legacy/components/PayTo/components/BSBInput.js.map +1 -0
  298. package/dist/es-legacy/components/PayTo/components/IdentifierSelector.js +2 -0
  299. package/dist/es-legacy/components/PayTo/components/IdentifierSelector.js.map +1 -0
  300. package/dist/es-legacy/components/PayTo/components/MandateSummary.js +2 -0
  301. package/dist/es-legacy/components/PayTo/components/MandateSummary.js.map +1 -0
  302. package/dist/es-legacy/components/PayTo/components/PayIDInput.js +2 -0
  303. package/dist/es-legacy/components/PayTo/components/PayIDInput.js.map +1 -0
  304. package/dist/es-legacy/components/PayTo/components/PayToComponent.js +2 -0
  305. package/dist/es-legacy/components/PayTo/components/PayToComponent.js.map +1 -0
  306. package/dist/es-legacy/components/PayTo/components/PayToInstructions.js +2 -0
  307. package/dist/es-legacy/components/PayTo/components/PayToInstructions.js.map +1 -0
  308. package/dist/es-legacy/components/PayTo/components/PayToNameFields.js +2 -0
  309. package/dist/es-legacy/components/PayTo/components/PayToNameFields.js.map +1 -0
  310. package/dist/es-legacy/components/PayTo/components/PayToPhone.js +2 -0
  311. package/dist/es-legacy/components/PayTo/components/PayToPhone.js.map +1 -0
  312. package/dist/es-legacy/components/PayTo/components/validate.js +2 -0
  313. package/dist/es-legacy/components/PayTo/components/validate.js.map +1 -0
  314. package/dist/es-legacy/components/ThreeDS2/components/Challenge/DoChallenge3DS2.js +1 -1
  315. package/dist/es-legacy/components/ThreeDS2/components/Challenge/DoChallenge3DS2.js.map +1 -1
  316. package/dist/es-legacy/components/ThreeDS2/components/Form/ThreeDS2Form.js +1 -1
  317. package/dist/es-legacy/components/ThreeDS2/components/Form/ThreeDS2Form.js.map +1 -1
  318. package/dist/es-legacy/components/UPI/components/UPIComponent/useUpiSegmentedControlOptions.js.map +1 -1
  319. package/dist/es-legacy/components/UPI/components/UPIIntentAppList/UPIIntentAppItem/UPIIntentAppItem.js +1 -1
  320. package/dist/es-legacy/components/UPI/components/UPIIntentAppList/UPIIntentAppItem/UPIIntentAppItem.js.map +1 -1
  321. package/dist/es-legacy/components/UPI/components/UPIIntentAppList/UPIIntentAppList.js +1 -1
  322. package/dist/es-legacy/components/UPI/components/UPIIntentAppList/UPIIntentAppList.js.map +1 -1
  323. package/dist/es-legacy/components/components-name-map.js +1 -1
  324. package/dist/es-legacy/components/components-name-map.js.map +1 -1
  325. package/dist/es-legacy/components/index.js +1 -1
  326. package/dist/es-legacy/components/internal/Alert/Alert.js +1 -1
  327. package/dist/es-legacy/components/internal/Alert/Alert.js.map +1 -1
  328. package/dist/es-legacy/components/internal/Await/Await.js +1 -1
  329. package/dist/es-legacy/components/internal/Await/Await.js.map +1 -1
  330. package/dist/es-legacy/components/internal/Button/Button.js +1 -1
  331. package/dist/es-legacy/components/internal/Button/Button.js.map +1 -1
  332. package/dist/es-legacy/components/internal/ButtonGroup/ButtonGroup.js +1 -1
  333. package/dist/es-legacy/components/internal/ButtonGroup/ButtonGroup.js.map +1 -1
  334. package/dist/es-legacy/components/internal/ClickToPay/components/CtPBrand/CtPBrand.js +1 -1
  335. package/dist/es-legacy/components/internal/ClickToPay/components/CtPBrand/CtPBrand.js.map +1 -1
  336. package/dist/es-legacy/components/internal/ClickToPay/components/CtPCards/CtPSingleCard/CtPSingleCard.js +1 -1
  337. package/dist/es-legacy/components/internal/ClickToPay/components/CtPCards/CtPSingleCard/CtPSingleCard.js.map +1 -1
  338. package/dist/es-legacy/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPResendOtpLink.js +1 -1
  339. package/dist/es-legacy/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPResendOtpLink.js.map +1 -1
  340. package/dist/es-legacy/components/internal/ClickToPay/components/CtPOneTimePassword/CtPSaveCookiesCheckbox/CtPSaveCookiesCheckbox.js +1 -1
  341. package/dist/es-legacy/components/internal/ClickToPay/components/CtPOneTimePassword/CtPSaveCookiesCheckbox/CtPSaveCookiesCheckbox.js.map +1 -1
  342. package/dist/es-legacy/components/internal/ClickToPay/components/CtPSection/CtPLogoutLink.js +1 -1
  343. package/dist/es-legacy/components/internal/ClickToPay/components/CtPSection/CtPLogoutLink.js.map +1 -1
  344. package/dist/es-legacy/components/internal/ClickToPay/components/CtPSection/CtPSection.js +1 -1
  345. package/dist/es-legacy/components/internal/ClickToPay/components/CtPSection/CtPSection.js.map +1 -1
  346. package/dist/es-legacy/components/internal/CompanyDetails/CompanyDetails.js.map +1 -1
  347. package/dist/es-legacy/components/internal/ContentSeparator/ContentSeparator.js +1 -1
  348. package/dist/es-legacy/components/internal/ContentSeparator/ContentSeparator.js.map +1 -1
  349. package/dist/es-legacy/components/internal/DetailsTable/DetailsTable.js +2 -0
  350. package/dist/es-legacy/components/internal/DetailsTable/DetailsTable.js.map +1 -0
  351. package/dist/es-legacy/components/internal/ExpandButton/ExpandButton.js +1 -1
  352. package/dist/es-legacy/components/internal/ExpandButton/ExpandButton.js.map +1 -1
  353. package/dist/es-legacy/components/internal/FormFields/Checkbox/Checkbox.js +1 -1
  354. package/dist/es-legacy/components/internal/FormFields/Checkbox/Checkbox.js.map +1 -1
  355. package/dist/es-legacy/components/internal/FormFields/Field/Field.js +1 -1
  356. package/dist/es-legacy/components/internal/FormFields/Field/Field.js.map +1 -1
  357. package/dist/es-legacy/components/internal/FormFields/Fieldset/Fieldset.js +1 -1
  358. package/dist/es-legacy/components/internal/FormFields/Fieldset/Fieldset.js.map +1 -1
  359. package/dist/es-legacy/components/internal/FormFields/InputBase.js +1 -1
  360. package/dist/es-legacy/components/internal/FormFields/InputBase.js.map +1 -1
  361. package/dist/es-legacy/components/internal/FormFields/RadioGroup/RadioGroup.js +1 -1
  362. package/dist/es-legacy/components/internal/FormFields/RadioGroup/RadioGroup.js.map +1 -1
  363. package/dist/es-legacy/components/internal/FormFields/Select/Select.js +1 -1
  364. package/dist/es-legacy/components/internal/FormFields/Select/Select.js.map +1 -1
  365. package/dist/es-legacy/components/internal/FormFields/Select/components/SelectButton.js +1 -1
  366. package/dist/es-legacy/components/internal/FormFields/Select/components/SelectButton.js.map +1 -1
  367. package/dist/es-legacy/components/internal/FormFields/Select/components/SelectList.js +1 -1
  368. package/dist/es-legacy/components/internal/FormFields/Select/components/SelectList.js.map +1 -1
  369. package/dist/es-legacy/components/internal/FormFields/Select/components/SelectListItem.js +1 -1
  370. package/dist/es-legacy/components/internal/FormFields/Select/components/SelectListItem.js.map +1 -1
  371. package/dist/es-legacy/components/internal/IFrame/Iframe.js +1 -1
  372. package/dist/es-legacy/components/internal/IFrame/Iframe.js.map +1 -1
  373. package/dist/es-legacy/components/internal/Icon/Icon.js +1 -1
  374. package/dist/es-legacy/components/internal/Icon/Icon.js.map +1 -1
  375. package/dist/es-legacy/components/internal/Img/Img.js +1 -1
  376. package/dist/es-legacy/components/internal/Img/Img.js.map +1 -1
  377. package/dist/es-legacy/components/internal/IssuerList/IssuerButtonGroup/IssuerButton.js +1 -1
  378. package/dist/es-legacy/components/internal/IssuerList/IssuerButtonGroup/IssuerButton.js.map +1 -1
  379. package/dist/es-legacy/components/internal/LoadingWrapper/LoadingWrapper.js +1 -1
  380. package/dist/es-legacy/components/internal/LoadingWrapper/LoadingWrapper.js.map +1 -1
  381. package/dist/es-legacy/components/internal/Modal/Modal.js +1 -1
  382. package/dist/es-legacy/components/internal/Modal/Modal.js.map +1 -1
  383. package/dist/es-legacy/components/internal/OpenInvoice/OpenInvoice.js +1 -1
  384. package/dist/es-legacy/components/internal/OpenInvoice/OpenInvoice.js.map +1 -1
  385. package/dist/es-legacy/components/internal/PersonalDetails/PersonalDetails.js.map +1 -1
  386. package/dist/es-legacy/components/internal/PhoneInput/PhoneInputFields.js +2 -0
  387. package/dist/es-legacy/components/internal/PhoneInput/PhoneInputFields.js.map +1 -0
  388. package/dist/es-legacy/components/internal/PhoneInput/PhoneInputForm.js +2 -0
  389. package/dist/es-legacy/components/internal/PhoneInput/PhoneInputForm.js.map +1 -0
  390. package/dist/es-legacy/components/internal/PhoneInput/validate.js +1 -1
  391. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/partials/isConfigured.js +1 -1
  392. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/partials/isConfigured.js.map +1 -1
  393. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/utils/cardType.js +1 -1
  394. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/utils/cardType.js.map +1 -1
  395. package/dist/es-legacy/components/internal/SegmentedControl/SegmentedControl.js +1 -1
  396. package/dist/es-legacy/components/internal/SegmentedControl/SegmentedControl.js.map +1 -1
  397. package/dist/es-legacy/components/internal/SendCopyToEmail/SendCopyToEmail.js +1 -1
  398. package/dist/es-legacy/components/internal/SendCopyToEmail/SendCopyToEmail.js.map +1 -1
  399. package/dist/es-legacy/components/internal/UIElement/UIElement.js.map +1 -1
  400. package/dist/es-legacy/components/internal/Voucher/Voucher.js +1 -1
  401. package/dist/es-legacy/components/internal/Voucher/Voucher.js.map +1 -1
  402. package/dist/es-legacy/components/tx-variants.js +1 -1
  403. package/dist/es-legacy/components/tx-variants.js.map +1 -1
  404. package/dist/es-legacy/core/ProcessResponse/PaymentMethods/filters.js +1 -1
  405. package/dist/es-legacy/core/ProcessResponse/PaymentMethods/filters.js.map +1 -1
  406. package/dist/es-legacy/core/Services/analytics/collect-id.js +1 -1
  407. package/dist/es-legacy/core/Services/analytics/collect-id.js.map +1 -1
  408. package/dist/es-legacy/core/core.js +1 -1
  409. package/dist/es-legacy/core/core.js.map +1 -1
  410. package/dist/es-legacy/core/utils.js +1 -1
  411. package/dist/es-legacy/core/utils.js.map +1 -1
  412. package/dist/es-legacy/external/classnames/index.js +2 -2
  413. package/dist/es-legacy/external/classnames/index.js.map +1 -1
  414. package/dist/es-legacy/index.js +1 -1
  415. package/dist/es-legacy/utils/Validator/ValidationRuleResult.js.map +1 -1
  416. package/dist/es-legacy/utils/Validator/Validator.js.map +1 -1
  417. package/dist/es-legacy/utils/inIframe.js +2 -0
  418. package/dist/es-legacy/utils/inIframe.js.map +1 -0
  419. package/package.json +29 -23
  420. package/styles/adyen.css +21 -17
  421. package/dist/es/components/ApplePay/ApplePayService.js.map +0 -1
  422. package/dist/es/components/ApplePay/config.js +0 -2
  423. package/dist/es/components/ApplePay/config.js.map +0 -1
  424. package/dist/es/components/ApplePay/payment-request.js +0 -2
  425. package/dist/es/components/ApplePay/payment-request.js.map +0 -1
  426. package/dist/es/components/ApplePay/utils.js +0 -2
  427. package/dist/es/components/ApplePay/utils.js.map +0 -1
  428. package/dist/es/components/internal/PhoneInput/PhoneInput.js +0 -2
  429. package/dist/es/components/internal/PhoneInput/PhoneInput.js.map +0 -1
  430. package/dist/es-legacy/components/ApplePay/ApplePayService.js.map +0 -1
  431. package/dist/es-legacy/components/ApplePay/config.js +0 -2
  432. package/dist/es-legacy/components/ApplePay/config.js.map +0 -1
  433. package/dist/es-legacy/components/ApplePay/payment-request.js +0 -2
  434. package/dist/es-legacy/components/ApplePay/payment-request.js.map +0 -1
  435. package/dist/es-legacy/components/ApplePay/utils.js +0 -2
  436. package/dist/es-legacy/components/ApplePay/utils.js.map +0 -1
  437. package/dist/es-legacy/components/internal/PhoneInput/PhoneInput.js +0 -2
  438. package/dist/es-legacy/components/internal/PhoneInput/PhoneInput.js.map +0 -1
  439. /package/dist/es/components/ApplePay/{ApplePayService.js → services/ApplePayService.js} +0 -0
  440. /package/dist/es-legacy/components/ApplePay/{ApplePayService.js → services/ApplePayService.js} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"DisableOneClickConfirmation.js","sources":["../../../../../../src/components/Dropin/components/PaymentMethod/DisableOneClickConfirmation.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { useCoreContext } from '../../../../core/Context/CoreProvider';\nimport classNames from 'classnames';\nimport './DisableOneClickConfirmation.scss';\n\nconst DisableOneClickConfirmation = ({ id, open, onDisable, onCancel }) => {\n const { i18n } = useCoreContext();\n return (\n <div\n id={id}\n aria-hidden={!open}\n className={classNames({\n 'adyen-checkout__payment-method__disable-confirmation': true,\n 'adyen-checkout__payment-method__disable-confirmation--open': open\n })}\n >\n <div className=\"adyen-checkout__payment-method__disable-confirmation__content\">\n {i18n.get('storedPaymentMethod.disable.confirmation')}\n <div className=\"adyen-checkout__payment-method__disable-confirmation__buttons\">\n <button\n type=\"button\"\n className={classNames(\n 'adyen-checkout__button',\n 'adyen-checkout__payment-method__disable-confirmation__button',\n 'adyen-checkout__payment-method__disable-confirmation__button--remove'\n )}\n disabled={!open}\n onClick={onDisable}\n >\n {i18n.get('storedPaymentMethod.disable.confirmButton')}\n </button>\n <button\n type=\"button\"\n className={classNames(\n 'adyen-checkout__button',\n 'adyen-checkout__payment-method__disable-confirmation__button',\n 'adyen-checkout__payment-method__disable-confirmation__button--cancel'\n )}\n disabled={!open}\n onClick={onCancel}\n >\n {i18n.get('storedPaymentMethod.disable.cancelButton')}\n </button>\n </div>\n </div>\n </div>\n );\n};\n\nexport default DisableOneClickConfirmation;\n"],"names":["DisableOneClickConfirmation","id","open","onDisable","onCancel","i18n","useCoreContext","h","div","aria-hidden","className","classNames","get","button","type","disabled","onClick"],"mappings":"6MAKMA,MAAAA,EAA8B,EAAGC,KAAIC,OAAMC,YAAWC,eACxD,MAAMC,KAAEA,GAASC,IACjB,OACIC,EAACC,MAAAA,CACGP,GAAIA,EACJQ,eAAcP,EACdQ,UAAWC,EAAW,CAClB,wDAAwD,EACxD,6DAA8DT,KAGlEK,EAACC,MAAAA,CAAIE,UAAU,iEACVL,EAAKO,IAAI,4CACVL,EAACC,MAAAA,CAAIE,UAAU,iEACXH,EAACM,SAAAA,CACGC,KAAK,SACLJ,UAAWC,EACP,yBACA,+DACA,wEAEJI,UAAWb,EACXc,QAASb,GAERE,EAAKO,IAAI,8CAEdL,EAACM,SAAAA,CACGC,KAAK,SACLJ,UAAWC,EACP,yBACA,+DACA,wEAEJI,UAAWb,EACXc,QAASZ,GAERC,EAAKO,IAAI,+CAAA"}
1
+ {"version":3,"file":"DisableOneClickConfirmation.js","sources":["../../../../../../src/components/Dropin/components/PaymentMethod/DisableOneClickConfirmation.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { useCoreContext } from '../../../../core/Context/CoreProvider';\nimport classNames from 'classnames';\nimport './DisableOneClickConfirmation.scss';\n\nconst DisableOneClickConfirmation = ({ id, open, onDisable, onCancel }) => {\n const { i18n } = useCoreContext();\n return (\n <div\n id={id}\n aria-hidden={!open}\n className={classNames({\n 'adyen-checkout__payment-method__disable-confirmation': true,\n 'adyen-checkout__payment-method__disable-confirmation--open': open\n })}\n >\n <div className=\"adyen-checkout__payment-method__disable-confirmation__content\">\n {i18n.get('storedPaymentMethod.disable.confirmation')}\n <div className=\"adyen-checkout__payment-method__disable-confirmation__buttons\">\n <button\n type=\"button\"\n className={classNames(\n 'adyen-checkout__button',\n 'adyen-checkout__payment-method__disable-confirmation__button',\n 'adyen-checkout__payment-method__disable-confirmation__button--remove'\n )}\n disabled={!open}\n onClick={onDisable}\n >\n {i18n.get('storedPaymentMethod.disable.confirmButton')}\n </button>\n <button\n type=\"button\"\n className={classNames(\n 'adyen-checkout__button',\n 'adyen-checkout__payment-method__disable-confirmation__button',\n 'adyen-checkout__payment-method__disable-confirmation__button--cancel'\n )}\n disabled={!open}\n onClick={onCancel}\n >\n {i18n.get('storedPaymentMethod.disable.cancelButton')}\n </button>\n </div>\n </div>\n </div>\n );\n};\n\nexport default DisableOneClickConfirmation;\n"],"names":["DisableOneClickConfirmation","id","open","onDisable","onCancel","i18n","useCoreContext","h","div","aria-hidden","className","classNames","get","button","type","disabled","onClick"],"mappings":"kMAKMA,MAAAA,EAA8B,EAAGC,KAAIC,OAAMC,YAAWC,eACxD,MAAMC,KAAEA,GAASC,IACjB,OACIC,EAACC,MAAAA,CACGP,GAAIA,EACJQ,eAAcP,EACdQ,UAAWC,EAAW,CAClB,wDAAwD,EACxD,6DAA8DT,KAGlEK,EAACC,MAAAA,CAAIE,UAAU,iEACVL,EAAKO,IAAI,4CACVL,EAACC,MAAAA,CAAIE,UAAU,iEACXH,EAACM,SAAAA,CACGC,KAAK,SACLJ,UAAWC,EACP,yBACA,+DACA,wEAEJI,UAAWb,EACXc,QAASb,GAERE,EAAKO,IAAI,8CAEdL,EAACM,SAAAA,CACGC,KAAK,SACLJ,UAAWC,EACP,yBACA,+DACA,wEAEJI,UAAWb,EACXc,QAASZ,GAERC,EAAKO,IAAI,+CAAA"}
@@ -1,2 +1,2 @@
1
- import{createElement as e,Fragment as t}from"../../../../external/preact/dist/preact.js";function a({paymentMethods:a}){return e(t,null,e("ul",{className:"adyen-checkout__instant-payment-methods-list"},a.map((t=>e("li",{key:t.type},t.render())))))}export{a as default};
1
+ import{createElement as e}from"../../../../external/preact/dist/preact.js";function t({paymentMethods:t,onSelect:a}){return e("ul",{className:"adyen-checkout__instant-payment-methods-list"},t.map((t=>e("li",{key:t._id,"data-testid":t.type,onClick:()=>a(t)},t.render()))))}export{t as default};
2
2
  //# sourceMappingURL=InstantPaymentMethods.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"InstantPaymentMethods.js","sources":["../../../../../../src/components/Dropin/components/PaymentMethod/InstantPaymentMethods.tsx"],"sourcesContent":["import { Fragment, h } from 'preact';\nimport UIElement from '../../../internal/UIElement/UIElement';\nimport './InstantPaymentMethods.scss';\n\ninterface InstantPaymentMethodsProps {\n paymentMethods: UIElement[];\n}\n\nfunction InstantPaymentMethods({ paymentMethods }: InstantPaymentMethodsProps) {\n return (\n <Fragment>\n <ul className=\"adyen-checkout__instant-payment-methods-list\">\n {paymentMethods.map(pm => (\n <li key={pm.type}>{pm.render()}</li>\n ))}\n </ul>\n </Fragment>\n );\n}\n\nexport default InstantPaymentMethods;\n"],"names":["InstantPaymentMethods","paymentMethods","h","Fragment","ul","className","map","pm","li","key","type","render"],"mappings":"yFAQA,SAASA,GAAsBC,eAAEA,IAC7B,OACIC,EAACC,OACGD,EAACE,KAAAA,CAAGC,UAAU,gDACTJ,EAAeK,KAAIC,GAChBL,EAACM,KAAAA,CAAGC,IAAKF,EAAGG,MAAOH,EAAGI,aAK1C"}
1
+ {"version":3,"file":"InstantPaymentMethods.js","sources":["../../../../../../src/components/Dropin/components/PaymentMethod/InstantPaymentMethods.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../../../internal/UIElement/UIElement';\nimport './InstantPaymentMethods.scss';\n\ninterface InstantPaymentMethodsProps {\n paymentMethods: UIElement[];\n onSelect: (paymentMethod: UIElement) => void;\n}\n\nfunction InstantPaymentMethods({ paymentMethods, onSelect }: InstantPaymentMethodsProps) {\n return (\n <ul className=\"adyen-checkout__instant-payment-methods-list\">\n {paymentMethods.map(pm => (\n // eslint-disable-next-line jsx-a11y/click-events-have-key-events, jsx-a11y/no-noninteractive-element-interactions\n <li key={pm._id} data-testid={pm.type} onClick={() => onSelect(pm)}>\n {pm.render()}\n </li>\n ))}\n </ul>\n );\n}\n\nexport default InstantPaymentMethods;\n"],"names":["InstantPaymentMethods","paymentMethods","onSelect","h","ul","className","map","pm","li","key","_id","data-testid","type","onClick","render"],"mappings":"2EASA,SAASA,GAAsBC,eAAEA,EAAcC,SAAEA,IAC7C,OACIC,EAACC,KAAAA,CAAGC,UAAU,gDACTJ,EAAeK,KAAIC,GAEhBJ,EAACK,KAAAA,CAAGC,IAAKF,EAAGG,IAAKC,cAAaJ,EAAGK,KAAMC,QAAS,IAAMX,EAASK,IAC1DA,EAAGO,YAKxB"}
@@ -1,2 +1,2 @@
1
- import{createElement as e}from"../../../../external/preact/dist/preact.js";import a from"../../../internal/Img/Img.js";import t from"../../../../external/classnames/index.js";const m=["googlepay","paywithgoogle"],o=({src:o,altDescription:r,type:_,disabled:p=!1})=>e("span",{className:t("adyen-checkout__payment-method__image__wrapper",{"adyen-checkout__payment-method__image__wrapper--outline":!m.includes(_),"adyen-checkout__payment-method__image__wrapper--disabled":!!p})},e(a,{className:"adyen-checkout__payment-method__image",src:o,alt:r}));export{o as default};
1
+ import{createElement as e}from"../../../../external/preact/dist/preact.js";import a from"../../../internal/Img/Img.js";import t from"../../../../_virtual/index.js";const m=["googlepay","paywithgoogle"],_=({src:_,altDescription:o,type:r,disabled:p=!1})=>e("span",{className:t("adyen-checkout__payment-method__image__wrapper",{"adyen-checkout__payment-method__image__wrapper--outline":!m.includes(r),"adyen-checkout__payment-method__image__wrapper--disabled":!!p})},e(a,{className:"adyen-checkout__payment-method__image",src:_,alt:o}));export{_ as default};
2
2
  //# sourceMappingURL=PaymentMethodIcon.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PaymentMethodIcon.js","sources":["../../../../../../src/components/Dropin/components/PaymentMethod/PaymentMethodIcon.tsx"],"sourcesContent":["import { h } from 'preact';\nimport Img from '../../../internal/Img';\nimport classNames from 'classnames';\n\ninterface PaymentMethodIconProps {\n /** URL to the payment method icon */\n src: string;\n\n /** Alt description of payment method used of a11y */\n altDescription: string;\n\n /** Type of the payment method*/\n type: string;\n\n disabled?: boolean;\n}\n\nconst paymentMethodsWithoutBorder = ['googlepay', 'paywithgoogle'];\n\nconst PaymentMethodIcon = ({ src, altDescription, type, disabled = false }: PaymentMethodIconProps) => {\n return (\n <span\n className={classNames('adyen-checkout__payment-method__image__wrapper', {\n 'adyen-checkout__payment-method__image__wrapper--outline': !paymentMethodsWithoutBorder.includes(type),\n 'adyen-checkout__payment-method__image__wrapper--disabled': !!disabled\n })}\n >\n <Img className=\"adyen-checkout__payment-method__image\" src={src} alt={altDescription} />\n </span>\n );\n};\n\nexport default PaymentMethodIcon;\n"],"names":["paymentMethodsWithoutBorder","PaymentMethodIcon","src","altDescription","type","disabled","h","span","className","classNames","includes","Img","alt"],"mappings":"+KAiBA,MAAMA,EAA8B,CAAC,YAAa,iBAE5CC,EAAoB,EAAGC,MAAKC,iBAAgBC,OAAMC,YAAW,KAE3DC,EAACC,OAAAA,CACGC,UAAWC,EAAW,iDAAkD,CACpE,2DAA4DT,EAA4BU,SAASN,GACjG,6DAA8DC,KAGlEC,EAACK,EAAAA,CAAIH,UAAU,wCAAwCN,IAAKA,EAAKU,IAAKT"}
1
+ {"version":3,"file":"PaymentMethodIcon.js","sources":["../../../../../../src/components/Dropin/components/PaymentMethod/PaymentMethodIcon.tsx"],"sourcesContent":["import { h } from 'preact';\nimport Img from '../../../internal/Img';\nimport classNames from 'classnames';\n\ninterface PaymentMethodIconProps {\n /** URL to the payment method icon */\n src: string;\n\n /** Alt description of payment method used of a11y */\n altDescription: string;\n\n /** Type of the payment method*/\n type: string;\n\n disabled?: boolean;\n}\n\nconst paymentMethodsWithoutBorder = ['googlepay', 'paywithgoogle'];\n\nconst PaymentMethodIcon = ({ src, altDescription, type, disabled = false }: PaymentMethodIconProps) => {\n return (\n <span\n className={classNames('adyen-checkout__payment-method__image__wrapper', {\n 'adyen-checkout__payment-method__image__wrapper--outline': !paymentMethodsWithoutBorder.includes(type),\n 'adyen-checkout__payment-method__image__wrapper--disabled': !!disabled\n })}\n >\n <Img className=\"adyen-checkout__payment-method__image\" src={src} alt={altDescription} />\n </span>\n );\n};\n\nexport default PaymentMethodIcon;\n"],"names":["paymentMethodsWithoutBorder","PaymentMethodIcon","src","altDescription","type","disabled","h","span","className","classNames","includes","Img","alt"],"mappings":"oKAiBA,MAAMA,EAA8B,CAAC,YAAa,iBAE5CC,EAAoB,EAAGC,MAAKC,iBAAgBC,OAAMC,YAAW,KAE3DC,EAACC,OAAAA,CACGC,UAAWC,EAAW,iDAAkD,CACpE,2DAA4DT,EAA4BU,SAASN,GACjG,6DAA8DC,KAGlEC,EAACK,EAAAA,CAAIH,UAAU,wCAAwCN,IAAKA,EAAKU,IAAKT"}
@@ -1,2 +1,2 @@
1
- import{Component as e,createElement as t}from"../../../../../external/preact/dist/preact.js";import o from"../../../../../external/classnames/index.js";import n from"../PaymentMethodDetails.js";import a from"../PaymentMethodIcon.js";import i from"../DisableOneClickConfirmation.js";import s from"../PaymentMethodBrands/PaymentMethodBrands.js";import{BRAND_ICON_UI_EXCLUSION_LIST as d}from"../../../../internal/SecuredFields/lib/constants.js";import r from"../PaymentMethodName.js";import{useCoreContext as m}from"../../../../../core/Context/CoreProvider.js";import h from"../../../../internal/ExpandButton/ExpandButton.js";function l(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}class p extends e{render({paymentMethod:e,isSelected:l,isDisablingPaymentMethod:p,isLoaded:c,isLoading:y,standalone:u,showRadioButton:b}){const{i18n:f}=m();if(!e)return null;const _="card"===e.props.type||"scheme"===e.props.type,k=o({"adyen-checkout__payment-method":!0,[`adyen-checkout__payment-method--${e.props.type}`]:!0,..._&&{[`adyen-checkout__payment-method--${e.props.fundingSource??"credit"}`]:!0},"adyen-checkout__payment-method--selected":l,"adyen-checkout__payment-method--loading":y,"adyen-checkout__payment-method--disabling":p,"adyen-checkout__payment-method--confirming":this.state.showDisableStoredPaymentMethodConfirmation,"adyen-checkout__payment-method--standalone":u,[e._id]:!0,[this.props.className]:!0}),C=this.props.showRemovePaymentMethodButton&&e.props.oneClick&&l,M=`remove-${e._id}`,P=`container-${e._id}`,D=`button-${e._id}`,S=!e.props.oneClick&&e.brands&&e.brands.length>0;return t("div",{key:e._id,className:k,onClick:this.handleOnListItemClick},t("div",{className:"adyen-checkout__payment-method__header"},t(h,{buttonId:D,showRadioButton:b,isSelected:l,expandContentId:P},t(a,{...e.props.oneClick&&{altDescription:e.props.name},type:e.type,src:e.icon}),t(r,{displayName:e.displayName,isSelected:l,additionalInfo:e.additionalInfo})),C&&t("button",{type:"button",className:"adyen-checkout__button adyen-checkout__button--inline adyen-checkout__button--link",onClick:this.toggleDisableConfirmation,"aria-expanded":this.state.showDisableStoredPaymentMethodConfirmation,"aria-controls":M},f.get("storedPaymentMethod.disable.button")),S&&t(s,{showOtherInsteafOfNumber:e.props.showOtherInsteafOfNumber,keepBrandsVisible:e.props.keepBrandsVisible,brands:e.brands,excludedUIBrands:d,isPaymentMethodSelected:l})),t("div",{className:"adyen-checkout-pm-details-wrapper","aria-hidden":!l},t("div",{className:"adyen-checkout__payment-method__details",id:P},C&&t(i,{id:M,open:this.state.showDisableStoredPaymentMethodConfirmation,onDisable:this.onDisableStoredPaymentMethod,onCancel:this.toggleDisableConfirmation}),t(n,{paymentMethodComponent:e.render(),isLoaded:c}))))}constructor(...e){super(...e),l(this,"state",{showDisableStoredPaymentMethodConfirmation:!1}),l(this,"toggleDisableConfirmation",(()=>{this.setState({showDisableStoredPaymentMethodConfirmation:!this.state.showDisableStoredPaymentMethodConfirmation})})),l(this,"onDisableStoredPaymentMethod",(()=>{this.props.onDisableStoredPaymentMethod(this.props.paymentMethod),this.toggleDisableConfirmation()})),l(this,"handleOnListItemClick",(()=>{const{onSelect:e,paymentMethod:t}=this.props;e(t)}))}}l(p,"defaultProps",{paymentMethod:null,isSelected:!1,isLoaded:!1,isLoading:!1,showDisableStoredPaymentMethodConfirmation:!1,showRadioButton:!1});export{p as default};
1
+ import{Component as e,createElement as t}from"../../../../../external/preact/dist/preact.js";import o from"../../../../../_virtual/index.js";import n from"../PaymentMethodDetails.js";import a from"../PaymentMethodIcon.js";import i from"../DisableOneClickConfirmation.js";import s from"../PaymentMethodBrands/PaymentMethodBrands.js";import{BRAND_ICON_UI_EXCLUSION_LIST as d}from"../../../../internal/SecuredFields/lib/constants.js";import r from"../PaymentMethodName.js";import{useCoreContext as m}from"../../../../../core/Context/CoreProvider.js";import h from"../../../../internal/ExpandButton/ExpandButton.js";function l(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}class p extends e{render({paymentMethod:e,isSelected:l,isDisablingPaymentMethod:p,isLoaded:c,isLoading:y,standalone:u,showRadioButton:b}){const{i18n:f}=m();if(!e)return null;const _="card"===e.props.type||"scheme"===e.props.type,k=o({"adyen-checkout__payment-method":!0,[`adyen-checkout__payment-method--${e.props.type}`]:!0,..._&&{[`adyen-checkout__payment-method--${e.props.fundingSource??"credit"}`]:!0},"adyen-checkout__payment-method--selected":l,"adyen-checkout__payment-method--loading":y,"adyen-checkout__payment-method--disabling":p,"adyen-checkout__payment-method--confirming":this.state.showDisableStoredPaymentMethodConfirmation,"adyen-checkout__payment-method--standalone":u,[e._id]:!0,[this.props.className]:!0}),C=this.props.showRemovePaymentMethodButton&&e.props.oneClick&&l,M=`remove-${e._id}`,P=`container-${e._id}`,D=`button-${e._id}`,S=!e.props.oneClick&&e.brands&&e.brands.length>0;return t("div",{key:e._id,className:k,onClick:this.handleOnListItemClick},t("div",{className:"adyen-checkout__payment-method__header"},t(h,{buttonId:D,showRadioButton:b,isSelected:l,expandContentId:P},t(a,{...e.props.oneClick&&{altDescription:e.props.name},type:e.type,src:e.icon}),t(r,{displayName:e.displayName,isSelected:l,additionalInfo:e.additionalInfo})),C&&t("button",{type:"button",className:"adyen-checkout__button adyen-checkout__button--inline adyen-checkout__button--link",onClick:this.toggleDisableConfirmation,"aria-expanded":this.state.showDisableStoredPaymentMethodConfirmation,"aria-controls":M},f.get("storedPaymentMethod.disable.button")),S&&t(s,{showOtherInsteafOfNumber:e.props.showOtherInsteafOfNumber,keepBrandsVisible:e.props.keepBrandsVisible,brands:e.brands,excludedUIBrands:d,isPaymentMethodSelected:l})),t("div",{className:"adyen-checkout-pm-details-wrapper","aria-hidden":!l},t("div",{className:"adyen-checkout__payment-method__details",id:P},C&&t(i,{id:M,open:this.state.showDisableStoredPaymentMethodConfirmation,onDisable:this.onDisableStoredPaymentMethod,onCancel:this.toggleDisableConfirmation}),t(n,{paymentMethodComponent:e.render(),isLoaded:c}))))}constructor(...e){super(...e),l(this,"state",{showDisableStoredPaymentMethodConfirmation:!1}),l(this,"toggleDisableConfirmation",(()=>{this.setState({showDisableStoredPaymentMethodConfirmation:!this.state.showDisableStoredPaymentMethodConfirmation})})),l(this,"onDisableStoredPaymentMethod",(()=>{this.props.onDisableStoredPaymentMethod(this.props.paymentMethod),this.toggleDisableConfirmation()})),l(this,"handleOnListItemClick",(()=>{const{onSelect:e,paymentMethod:t}=this.props;e(t)}))}}l(p,"defaultProps",{paymentMethod:null,isSelected:!1,isLoaded:!1,isLoading:!1,showDisableStoredPaymentMethodConfirmation:!1,showRadioButton:!1});export{p as default};
2
2
  //# sourceMappingURL=PaymentMethodItem.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PaymentMethodItem.js","sources":["../../../../../../../src/components/Dropin/components/PaymentMethod/PaymentMethodItem/PaymentMethodItem.tsx"],"sourcesContent":["import { Component, h } from 'preact';\nimport classNames from 'classnames';\nimport PaymentMethodDetails from '../PaymentMethodDetails';\nimport PaymentMethodIcon from '../PaymentMethodIcon';\nimport DisableOneClickConfirmation from '../DisableOneClickConfirmation';\nimport './PaymentMethodItem.scss';\nimport UIElement from '../../../../internal/UIElement/UIElement';\nimport PaymentMethodBrands from '../PaymentMethodBrands/PaymentMethodBrands';\nimport { BRAND_ICON_UI_EXCLUSION_LIST } from '../../../../internal/SecuredFields/lib/constants';\nimport PaymentMethodName from '../PaymentMethodName';\nimport { useCoreContext } from '../../../../../core/Context/CoreProvider';\nimport ExpandButton from '../../../../internal/ExpandButton';\n\nexport interface PaymentMethodItemProps {\n paymentMethod: UIElement;\n isSelected?: boolean;\n isLoaded?: boolean;\n isLoading?: boolean;\n isDisablingPaymentMethod: boolean;\n showRemovePaymentMethodButton: boolean;\n onDisableStoredPaymentMethod: (paymentMethod) => void;\n onSelect: (paymentMethod: UIElement) => void;\n standalone: boolean;\n className?: string;\n showRadioButton?: boolean;\n}\n\nclass PaymentMethodItem extends Component<PaymentMethodItemProps> {\n public static defaultProps = {\n paymentMethod: null,\n isSelected: false,\n isLoaded: false,\n isLoading: false,\n showDisableStoredPaymentMethodConfirmation: false,\n showRadioButton: false\n };\n\n public state = {\n showDisableStoredPaymentMethodConfirmation: false\n };\n\n public toggleDisableConfirmation = () => {\n this.setState({ showDisableStoredPaymentMethodConfirmation: !this.state.showDisableStoredPaymentMethodConfirmation });\n };\n\n public onDisableStoredPaymentMethod = () => {\n this.props.onDisableStoredPaymentMethod(this.props.paymentMethod);\n this.toggleDisableConfirmation();\n };\n\n private handleOnListItemClick = (): void => {\n const { onSelect, paymentMethod } = this.props;\n onSelect(paymentMethod);\n };\n\n // @ts-ignore need to refine the type for paymentMethod\n render({ paymentMethod, isSelected, isDisablingPaymentMethod, isLoaded, isLoading, standalone, showRadioButton }) {\n const { i18n } = useCoreContext();\n\n if (!paymentMethod) {\n return null;\n }\n\n const isCard = paymentMethod.props.type === 'card' || paymentMethod.props.type === 'scheme';\n\n const paymentMethodClassnames = classNames({\n 'adyen-checkout__payment-method': true,\n [`adyen-checkout__payment-method--${paymentMethod.props.type}`]: true,\n ...(isCard && { [`adyen-checkout__payment-method--${paymentMethod.props.fundingSource ?? 'credit'}`]: true }),\n 'adyen-checkout__payment-method--selected': isSelected,\n 'adyen-checkout__payment-method--loading': isLoading,\n 'adyen-checkout__payment-method--disabling': isDisablingPaymentMethod,\n 'adyen-checkout__payment-method--confirming': this.state.showDisableStoredPaymentMethodConfirmation,\n 'adyen-checkout__payment-method--standalone': standalone,\n [paymentMethod._id]: true,\n [this.props.className]: true\n });\n\n const showRemovePaymentMethodButton = this.props.showRemovePaymentMethodButton && paymentMethod.props.oneClick && isSelected;\n const disableConfirmationId = `remove-${paymentMethod._id}`;\n const containerId = `container-${paymentMethod._id}`;\n const buttonId = `button-${paymentMethod._id}`;\n\n const showBrands = !paymentMethod.props.oneClick && paymentMethod.brands && paymentMethod.brands.length > 0;\n\n return (\n // eslint-disable-next-line jsx-a11y/click-events-have-key-events,jsx-a11y/no-static-element-interactions\n <div key={paymentMethod._id} className={paymentMethodClassnames} onClick={this.handleOnListItemClick}>\n <div className=\"adyen-checkout__payment-method__header\">\n <ExpandButton buttonId={buttonId} showRadioButton={showRadioButton} isSelected={isSelected} expandContentId={containerId}>\n <PaymentMethodIcon\n // Only add alt attribute to storedPaymentMethods (to avoid SR reading the PM name twice)\n {...(paymentMethod.props.oneClick && { altDescription: paymentMethod.props.name })}\n type={paymentMethod.type}\n src={paymentMethod.icon}\n />\n\n <PaymentMethodName\n displayName={paymentMethod.displayName}\n isSelected={isSelected}\n additionalInfo={paymentMethod.additionalInfo}\n />\n </ExpandButton>\n\n {showRemovePaymentMethodButton && (\n <button\n type=\"button\"\n className=\"adyen-checkout__button adyen-checkout__button--inline adyen-checkout__button--link\"\n onClick={this.toggleDisableConfirmation}\n aria-expanded={this.state.showDisableStoredPaymentMethodConfirmation}\n aria-controls={disableConfirmationId}\n >\n {i18n.get('storedPaymentMethod.disable.button')}\n </button>\n )}\n\n {showBrands && (\n <PaymentMethodBrands\n showOtherInsteafOfNumber={paymentMethod.props.showOtherInsteafOfNumber}\n keepBrandsVisible={paymentMethod.props.keepBrandsVisible}\n brands={paymentMethod.brands}\n excludedUIBrands={BRAND_ICON_UI_EXCLUSION_LIST}\n isPaymentMethodSelected={isSelected}\n />\n )}\n </div>\n\n <div className=\"adyen-checkout-pm-details-wrapper\" aria-hidden={!isSelected}>\n <div className=\"adyen-checkout__payment-method__details\" id={containerId}>\n {showRemovePaymentMethodButton && (\n <DisableOneClickConfirmation\n id={disableConfirmationId}\n open={this.state.showDisableStoredPaymentMethodConfirmation}\n onDisable={this.onDisableStoredPaymentMethod}\n onCancel={this.toggleDisableConfirmation}\n />\n )}\n\n <PaymentMethodDetails paymentMethodComponent={paymentMethod.render()} isLoaded={isLoaded} />\n </div>\n </div>\n </div>\n );\n }\n}\n\nexport default PaymentMethodItem;\n"],"names":["PaymentMethodItem","Component","render","paymentMethod","isSelected","isDisablingPaymentMethod","isLoaded","isLoading","standalone","showRadioButton","i18n","useCoreContext","isCard","props","type","paymentMethodClassnames","classNames","fundingSource","this","state","showDisableStoredPaymentMethodConfirmation","_id","className","showRemovePaymentMethodButton","oneClick","disableConfirmationId","containerId","buttonId","showBrands","brands","length","h","div","key","onClick","handleOnListItemClick","ExpandButton","expandContentId","PaymentMethodIcon","altDescription","name","src","icon","PaymentMethodName","displayName","additionalInfo","button","toggleDisableConfirmation","aria-expanded","aria-controls","get","PaymentMethodBrands","showOtherInsteafOfNumber","keepBrandsVisible","excludedUIBrands","BRAND_ICON_UI_EXCLUSION_LIST","isPaymentMethodSelected","aria-hidden","id","DisableOneClickConfirmation","open","onDisable","onDisableStoredPaymentMethod","onCancel","PaymentMethodDetails","paymentMethodComponent","super","args","_define_property","setState","onSelect","defaultProps"],"mappings":"uuBA2BA,MAAMA,UAA0BC,EA6B5BC,MAAAA,EAAOC,cAAEA,EAAaC,WAAEA,EAAUC,yBAAEA,EAAwBC,SAAEA,EAAQC,UAAEA,EAASC,WAAEA,EAAUC,gBAAEA,IAC3F,MAAMC,KAAEA,GAASC,IAEjB,IAAKR,EACD,OAAO,KAGX,MAAMS,EAAsC,SAA7BT,EAAcU,MAAMC,MAAgD,WAA7BX,EAAcU,MAAMC,KAEpEC,EAA0BC,EAAW,CACvC,kCAAkC,EAClC,CAAC,mCAAmCb,EAAcU,MAAMC,SAAS,KAC7DF,GAAU,CAAE,CAAC,mCAAmCT,EAAcU,MAAMI,eAAiB,aAAa,GACtG,2CAA4Cb,EAC5C,0CAA2CG,EAC3C,4CAA6CF,EAC7C,6CAA8Ca,KAAKC,MAAMC,2CACzD,6CAA8CZ,EAC9C,CAACL,EAAckB,MAAM,EACrB,CAACH,KAAKL,MAAMS,YAAY,IAGtBC,EAAgCL,KAAKL,MAAMU,+BAAiCpB,EAAcU,MAAMW,UAAYpB,EAC5GqB,EAAwB,UAAUtB,EAAckB,MAChDK,EAAc,aAAavB,EAAckB,MACzCM,EAAW,UAAUxB,EAAckB,MAEnCO,GAAczB,EAAcU,MAAMW,UAAYrB,EAAc0B,QAAU1B,EAAc0B,OAAOC,OAAS,EAE1G,OAEIC,EAACC,MAAAA,CAAIC,IAAK9B,EAAckB,IAAKC,UAAWP,EAAyBmB,QAAShB,KAAKiB,uBAC3EJ,EAACC,MAAAA,CAAIV,UAAU,0CACXS,EAACK,EAAAA,CAAaT,SAAUA,EAAUlB,gBAAiBA,EAAiBL,WAAYA,EAAYiC,gBAAiBX,GACzGK,EAACO,EAAAA,IAEQnC,EAAcU,MAAMW,UAAY,CAAEe,eAAgBpC,EAAcU,MAAM2B,MAC3E1B,KAAMX,EAAcW,KACpB2B,IAAKtC,EAAcuC,OAGvBX,EAACY,EAAAA,CACGC,YAAazC,EAAcyC,YAC3BxC,WAAYA,EACZyC,eAAgB1C,EAAc0C,kBAIrCtB,GACGQ,EAACe,SAAAA,CACGhC,KAAK,SACLQ,UAAU,qFACVY,QAAShB,KAAK6B,0BACdC,gBAAe9B,KAAKC,MAAMC,2CAC1B6B,gBAAexB,GAEdf,EAAKwC,IAAI,uCAIjBtB,GACGG,EAACoB,EAAAA,CACGC,yBAA0BjD,EAAcU,MAAMuC,yBAC9CC,kBAAmBlD,EAAcU,MAAMwC,kBACvCxB,OAAQ1B,EAAc0B,OACtByB,iBAAkBC,EAClBC,wBAAyBpD,KAKrC2B,EAACC,MAAAA,CAAIV,UAAU,oCAAoCmC,eAAcrD,GAC7D2B,EAACC,MAAAA,CAAIV,UAAU,0CAA0CoC,GAAIhC,GACxDH,GACGQ,EAAC4B,EAAAA,CACGD,GAAIjC,EACJmC,KAAM1C,KAAKC,MAAMC,2CACjByC,UAAW3C,KAAK4C,6BAChBC,SAAU7C,KAAK6B,4BAIvBhB,EAACiC,EAAAA,CAAqBC,uBAAwB9D,EAAcD,SAAUI,SAAUA,MAKpG,mBApHJ4D,SAAAC,GAUIC,OAAOjD,QAAQ,CACXC,4CAA4C,IAGhDgD,OAAOrB,6BAA4B,KAC/B7B,KAAKmD,SAAS,CAAEjD,4CAA6CF,KAAKC,MAAMC,4CAA2C,IAGvHgD,OAAON,gCAA+B,KAClC5C,KAAKL,MAAMiD,6BAA6B5C,KAAKL,MAAMV,eACnDe,KAAK6B,2BAAyB,IAGlCqB,OAAQjC,yBAAwB,KAC5B,MAAMmC,SAAEA,EAAQnE,cAAEA,GAAkBe,KAAKL,MACzCyD,EAASnE,EAAAA,KAxBbiE,EADEpE,EACYuE,eAAe,CACzBpE,cAAe,KACfC,YAAY,EACZE,UAAU,EACVC,WAAW,EACXa,4CAA4C,EAC5CX,iBAAiB"}
1
+ {"version":3,"file":"PaymentMethodItem.js","sources":["../../../../../../../src/components/Dropin/components/PaymentMethod/PaymentMethodItem/PaymentMethodItem.tsx"],"sourcesContent":["import { Component, h } from 'preact';\nimport classNames from 'classnames';\nimport PaymentMethodDetails from '../PaymentMethodDetails';\nimport PaymentMethodIcon from '../PaymentMethodIcon';\nimport DisableOneClickConfirmation from '../DisableOneClickConfirmation';\nimport './PaymentMethodItem.scss';\nimport UIElement from '../../../../internal/UIElement/UIElement';\nimport PaymentMethodBrands from '../PaymentMethodBrands/PaymentMethodBrands';\nimport { BRAND_ICON_UI_EXCLUSION_LIST } from '../../../../internal/SecuredFields/lib/constants';\nimport PaymentMethodName from '../PaymentMethodName';\nimport { useCoreContext } from '../../../../../core/Context/CoreProvider';\nimport ExpandButton from '../../../../internal/ExpandButton';\n\nexport interface PaymentMethodItemProps {\n paymentMethod: UIElement;\n isSelected?: boolean;\n isLoaded?: boolean;\n isLoading?: boolean;\n isDisablingPaymentMethod: boolean;\n showRemovePaymentMethodButton: boolean;\n onDisableStoredPaymentMethod: (paymentMethod) => void;\n onSelect: (paymentMethod: UIElement) => void;\n standalone: boolean;\n className?: string;\n showRadioButton?: boolean;\n}\n\nclass PaymentMethodItem extends Component<PaymentMethodItemProps> {\n public static defaultProps = {\n paymentMethod: null,\n isSelected: false,\n isLoaded: false,\n isLoading: false,\n showDisableStoredPaymentMethodConfirmation: false,\n showRadioButton: false\n };\n\n public state = {\n showDisableStoredPaymentMethodConfirmation: false\n };\n\n public toggleDisableConfirmation = () => {\n this.setState({ showDisableStoredPaymentMethodConfirmation: !this.state.showDisableStoredPaymentMethodConfirmation });\n };\n\n public onDisableStoredPaymentMethod = () => {\n this.props.onDisableStoredPaymentMethod(this.props.paymentMethod);\n this.toggleDisableConfirmation();\n };\n\n private handleOnListItemClick = (): void => {\n const { onSelect, paymentMethod } = this.props;\n onSelect(paymentMethod);\n };\n\n // @ts-ignore need to refine the type for paymentMethod\n render({ paymentMethod, isSelected, isDisablingPaymentMethod, isLoaded, isLoading, standalone, showRadioButton }) {\n const { i18n } = useCoreContext();\n\n if (!paymentMethod) {\n return null;\n }\n\n const isCard = paymentMethod.props.type === 'card' || paymentMethod.props.type === 'scheme';\n\n const paymentMethodClassnames = classNames({\n 'adyen-checkout__payment-method': true,\n [`adyen-checkout__payment-method--${paymentMethod.props.type}`]: true,\n ...(isCard && { [`adyen-checkout__payment-method--${paymentMethod.props.fundingSource ?? 'credit'}`]: true }),\n 'adyen-checkout__payment-method--selected': isSelected,\n 'adyen-checkout__payment-method--loading': isLoading,\n 'adyen-checkout__payment-method--disabling': isDisablingPaymentMethod,\n 'adyen-checkout__payment-method--confirming': this.state.showDisableStoredPaymentMethodConfirmation,\n 'adyen-checkout__payment-method--standalone': standalone,\n [paymentMethod._id]: true,\n [this.props.className]: true\n });\n\n const showRemovePaymentMethodButton = this.props.showRemovePaymentMethodButton && paymentMethod.props.oneClick && isSelected;\n const disableConfirmationId = `remove-${paymentMethod._id}`;\n const containerId = `container-${paymentMethod._id}`;\n const buttonId = `button-${paymentMethod._id}`;\n\n const showBrands = !paymentMethod.props.oneClick && paymentMethod.brands && paymentMethod.brands.length > 0;\n\n return (\n // eslint-disable-next-line jsx-a11y/click-events-have-key-events,jsx-a11y/no-static-element-interactions\n <div key={paymentMethod._id} className={paymentMethodClassnames} onClick={this.handleOnListItemClick}>\n <div className=\"adyen-checkout__payment-method__header\">\n <ExpandButton buttonId={buttonId} showRadioButton={showRadioButton} isSelected={isSelected} expandContentId={containerId}>\n <PaymentMethodIcon\n // Only add alt attribute to storedPaymentMethods (to avoid SR reading the PM name twice)\n {...(paymentMethod.props.oneClick && { altDescription: paymentMethod.props.name })}\n type={paymentMethod.type}\n src={paymentMethod.icon}\n />\n\n <PaymentMethodName\n displayName={paymentMethod.displayName}\n isSelected={isSelected}\n additionalInfo={paymentMethod.additionalInfo}\n />\n </ExpandButton>\n\n {showRemovePaymentMethodButton && (\n <button\n type=\"button\"\n className=\"adyen-checkout__button adyen-checkout__button--inline adyen-checkout__button--link\"\n onClick={this.toggleDisableConfirmation}\n aria-expanded={this.state.showDisableStoredPaymentMethodConfirmation}\n aria-controls={disableConfirmationId}\n >\n {i18n.get('storedPaymentMethod.disable.button')}\n </button>\n )}\n\n {showBrands && (\n <PaymentMethodBrands\n showOtherInsteafOfNumber={paymentMethod.props.showOtherInsteafOfNumber}\n keepBrandsVisible={paymentMethod.props.keepBrandsVisible}\n brands={paymentMethod.brands}\n excludedUIBrands={BRAND_ICON_UI_EXCLUSION_LIST}\n isPaymentMethodSelected={isSelected}\n />\n )}\n </div>\n\n <div className=\"adyen-checkout-pm-details-wrapper\" aria-hidden={!isSelected}>\n <div className=\"adyen-checkout__payment-method__details\" id={containerId}>\n {showRemovePaymentMethodButton && (\n <DisableOneClickConfirmation\n id={disableConfirmationId}\n open={this.state.showDisableStoredPaymentMethodConfirmation}\n onDisable={this.onDisableStoredPaymentMethod}\n onCancel={this.toggleDisableConfirmation}\n />\n )}\n\n <PaymentMethodDetails paymentMethodComponent={paymentMethod.render()} isLoaded={isLoaded} />\n </div>\n </div>\n </div>\n );\n }\n}\n\nexport default PaymentMethodItem;\n"],"names":["PaymentMethodItem","Component","render","paymentMethod","isSelected","isDisablingPaymentMethod","isLoaded","isLoading","standalone","showRadioButton","i18n","useCoreContext","isCard","props","type","paymentMethodClassnames","classNames","fundingSource","this","state","showDisableStoredPaymentMethodConfirmation","_id","className","showRemovePaymentMethodButton","oneClick","disableConfirmationId","containerId","buttonId","showBrands","brands","length","h","div","key","onClick","handleOnListItemClick","ExpandButton","expandContentId","PaymentMethodIcon","altDescription","name","src","icon","PaymentMethodName","displayName","additionalInfo","button","toggleDisableConfirmation","aria-expanded","aria-controls","get","PaymentMethodBrands","showOtherInsteafOfNumber","keepBrandsVisible","excludedUIBrands","BRAND_ICON_UI_EXCLUSION_LIST","isPaymentMethodSelected","aria-hidden","id","DisableOneClickConfirmation","open","onDisable","onDisableStoredPaymentMethod","onCancel","PaymentMethodDetails","paymentMethodComponent","super","args","_define_property","setState","onSelect","defaultProps"],"mappings":"4tBA2BA,MAAMA,UAA0BC,EA6B5BC,MAAAA,EAAOC,cAAEA,EAAaC,WAAEA,EAAUC,yBAAEA,EAAwBC,SAAEA,EAAQC,UAAEA,EAASC,WAAEA,EAAUC,gBAAEA,IAC3F,MAAMC,KAAEA,GAASC,IAEjB,IAAKR,EACD,OAAO,KAGX,MAAMS,EAAsC,SAA7BT,EAAcU,MAAMC,MAAgD,WAA7BX,EAAcU,MAAMC,KAEpEC,EAA0BC,EAAW,CACvC,kCAAkC,EAClC,CAAC,mCAAmCb,EAAcU,MAAMC,SAAS,KAC7DF,GAAU,CAAE,CAAC,mCAAmCT,EAAcU,MAAMI,eAAiB,aAAa,GACtG,2CAA4Cb,EAC5C,0CAA2CG,EAC3C,4CAA6CF,EAC7C,6CAA8Ca,KAAKC,MAAMC,2CACzD,6CAA8CZ,EAC9C,CAACL,EAAckB,MAAM,EACrB,CAACH,KAAKL,MAAMS,YAAY,IAGtBC,EAAgCL,KAAKL,MAAMU,+BAAiCpB,EAAcU,MAAMW,UAAYpB,EAC5GqB,EAAwB,UAAUtB,EAAckB,MAChDK,EAAc,aAAavB,EAAckB,MACzCM,EAAW,UAAUxB,EAAckB,MAEnCO,GAAczB,EAAcU,MAAMW,UAAYrB,EAAc0B,QAAU1B,EAAc0B,OAAOC,OAAS,EAE1G,OAEIC,EAACC,MAAAA,CAAIC,IAAK9B,EAAckB,IAAKC,UAAWP,EAAyBmB,QAAShB,KAAKiB,uBAC3EJ,EAACC,MAAAA,CAAIV,UAAU,0CACXS,EAACK,EAAAA,CAAaT,SAAUA,EAAUlB,gBAAiBA,EAAiBL,WAAYA,EAAYiC,gBAAiBX,GACzGK,EAACO,EAAAA,IAEQnC,EAAcU,MAAMW,UAAY,CAAEe,eAAgBpC,EAAcU,MAAM2B,MAC3E1B,KAAMX,EAAcW,KACpB2B,IAAKtC,EAAcuC,OAGvBX,EAACY,EAAAA,CACGC,YAAazC,EAAcyC,YAC3BxC,WAAYA,EACZyC,eAAgB1C,EAAc0C,kBAIrCtB,GACGQ,EAACe,SAAAA,CACGhC,KAAK,SACLQ,UAAU,qFACVY,QAAShB,KAAK6B,0BACdC,gBAAe9B,KAAKC,MAAMC,2CAC1B6B,gBAAexB,GAEdf,EAAKwC,IAAI,uCAIjBtB,GACGG,EAACoB,EAAAA,CACGC,yBAA0BjD,EAAcU,MAAMuC,yBAC9CC,kBAAmBlD,EAAcU,MAAMwC,kBACvCxB,OAAQ1B,EAAc0B,OACtByB,iBAAkBC,EAClBC,wBAAyBpD,KAKrC2B,EAACC,MAAAA,CAAIV,UAAU,oCAAoCmC,eAAcrD,GAC7D2B,EAACC,MAAAA,CAAIV,UAAU,0CAA0CoC,GAAIhC,GACxDH,GACGQ,EAAC4B,EAAAA,CACGD,GAAIjC,EACJmC,KAAM1C,KAAKC,MAAMC,2CACjByC,UAAW3C,KAAK4C,6BAChBC,SAAU7C,KAAK6B,4BAIvBhB,EAACiC,EAAAA,CAAqBC,uBAAwB9D,EAAcD,SAAUI,SAAUA,MAKpG,mBApHJ4D,SAAAC,GAUIC,OAAOjD,QAAQ,CACXC,4CAA4C,IAGhDgD,OAAOrB,6BAA4B,KAC/B7B,KAAKmD,SAAS,CAAEjD,4CAA6CF,KAAKC,MAAMC,4CAA2C,IAGvHgD,OAAON,gCAA+B,KAClC5C,KAAKL,MAAMiD,6BAA6B5C,KAAKL,MAAMV,eACnDe,KAAK6B,2BAAyB,IAGlCqB,OAAQjC,yBAAwB,KAC5B,MAAMmC,SAAEA,EAAQnE,cAAEA,GAAkBe,KAAKL,MACzCyD,EAASnE,EAAAA,KAxBbiE,EADEpE,EACYuE,eAAe,CACzBpE,cAAe,KACfC,YAAY,EACZE,UAAU,EACVC,WAAW,EACXa,4CAA4C,EAC5CX,iBAAiB"}
@@ -1,2 +1,2 @@
1
- import{createElement as e,Fragment as t}from"../../../../external/preact/dist/preact.js";import o from"../../../../utils/getProp.js";import{OrderPaymentMethods as r}from"./OrderPaymentMethods.js";import n from"./InstantPaymentMethods.js";import{useCoreContext as s}from"../../../../core/Context/CoreProvider.js";import{useBrandLogoConfiguration as a}from"./useBrandLogoConfiguration.js";import m from"./PaymentMethodsContainer.js";import{useEffect as d}from"../../../../external/preact/hooks/dist/hooks.js";const i=({paymentMethods:i=[],instantPaymentMethods:p=[],storedPaymentMethods:l=[],openFirstStoredPaymentMethod:y,openFirstPaymentMethod:h,openPaymentMethod:f,order:c,orderStatus:M=null,onOrderCancel:u,onSelect:P=()=>{},...g})=>{const{i18n:j}=s(),C=a(i),S=p.length>0,b=l.length>0,x=S||b?j.get("paymentMethodsList.otherPayments.label"):"";return d((()=>{if(f?.type){const e=i.find((e=>e.type===f?.type));if(e)return void P(e);console.warn(`Drop-in: payment method type "${f?.type}" not found`)}const e=l[0],t=i[0];if(e||t){if(y&&!0===o(e,"props.oneClick"))return void P(e);h&&P(t)}}),[l,i,y,h,f]),e(t,null,M&&e(r,{order:c,orderStatus:M,onOrderCancel:u,brandLogoConfiguration:C}),S&&e(n,{paymentMethods:p}),b&&e(m,{...g,label:j.get("paymentMethodsList.storedPayments.label"),classNameModifiers:["storedPayments"],paymentMethods:l,onSelect:P}),!!i.length&&e(m,{...g,label:x,classNameModifiers:["otherPayments"],paymentMethods:i,onSelect:P}))};export{i as default};
1
+ import{createElement as e,Fragment as t}from"../../../../external/preact/dist/preact.js";import o from"../../../../utils/getProp.js";import{OrderPaymentMethods as n}from"./OrderPaymentMethods.js";import r from"./InstantPaymentMethods.js";import{useCoreContext as s}from"../../../../core/Context/CoreProvider.js";import{useBrandLogoConfiguration as a}from"./useBrandLogoConfiguration.js";import m from"./PaymentMethodsContainer.js";import{useEffect as d}from"../../../../external/preact/hooks/dist/hooks.js";const i=({paymentMethods:i=[],instantPaymentMethods:p=[],storedPaymentMethods:l=[],openFirstStoredPaymentMethod:y,openFirstPaymentMethod:h,openPaymentMethod:f,order:c,orderStatus:M=null,onOrderCancel:u,onSelect:P=()=>{},...g})=>{const{i18n:j}=s(),C=a(i),S=p.length>0,b=l.length>0,x=S||b?j.get("paymentMethodsList.otherPayments.label"):"";return d((()=>{if(f?.type){const e=i.find((e=>e.type===f?.type));if(e)return void P(e);console.warn(`Drop-in: payment method type "${f?.type}" not found`)}const e=l[0],t=i[0];if(e||t){if(y&&!0===o(e,"props.oneClick"))return void P(e);h&&P(t)}}),[l,i,y,h,f]),e(t,null,M&&e(n,{order:c,orderStatus:M,onOrderCancel:u,brandLogoConfiguration:C}),S&&e(r,{paymentMethods:p,onSelect:P}),b&&e(m,{...g,label:j.get("paymentMethodsList.storedPayments.label"),classNameModifiers:["storedPayments"],paymentMethods:l,onSelect:P}),!!i.length&&e(m,{...g,label:x,classNameModifiers:["otherPayments"],paymentMethods:i,onSelect:P}))};export{i as default};
2
2
  //# sourceMappingURL=PaymentMethodList.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PaymentMethodList.js","sources":["../../../../../../src/components/Dropin/components/PaymentMethod/PaymentMethodList.tsx"],"sourcesContent":["import { Fragment, h } from 'preact';\nimport getProp from '../../../../utils/getProp';\nimport UIElement from '../../../internal/UIElement/UIElement';\nimport { Order, OrderStatus } from '../../../../types/global-types';\nimport OrderPaymentMethods from './OrderPaymentMethods';\nimport InstantPaymentMethods from './InstantPaymentMethods';\nimport { useCoreContext } from '../../../../core/Context/CoreProvider';\nimport { useBrandLogoConfiguration } from './useBrandLogoConfiguration';\nimport PaymentMethodsContainer, { PaymentMethodsContainerProps } from './PaymentMethodsContainer';\nimport { useEffect } from 'preact/hooks';\n\ninterface PaymentMethodListProps extends Omit<PaymentMethodsContainerProps, 'label' | 'classNameModifiers'> {\n instantPaymentMethods?: UIElement[];\n storedPaymentMethods?: UIElement[];\n openFirstStoredPaymentMethod?: boolean;\n openFirstPaymentMethod?: boolean;\n openPaymentMethod?: {\n type: string;\n };\n order?: Order;\n orderStatus?: OrderStatus;\n onOrderCancel?: (order) => void;\n}\n\nconst PaymentMethodList = ({\n paymentMethods = [], // Non-stored payments\n instantPaymentMethods = [],\n storedPaymentMethods = [],\n openFirstStoredPaymentMethod,\n openFirstPaymentMethod,\n openPaymentMethod,\n order,\n orderStatus = null,\n onOrderCancel,\n onSelect = () => {},\n ...rest\n}: PaymentMethodListProps) => {\n const { i18n } = useCoreContext();\n const brandLogoConfiguration = useBrandLogoConfiguration(paymentMethods);\n const hasInstantPaymentMethods = instantPaymentMethods.length > 0;\n const hasStoredPaymentMethods = storedPaymentMethods.length > 0;\n const pmListLabel = hasInstantPaymentMethods || hasStoredPaymentMethods ? i18n.get('paymentMethodsList.otherPayments.label') : '';\n\n useEffect(() => {\n if (openPaymentMethod?.type) {\n const paymentMethod = paymentMethods.find(paymentMethod => paymentMethod.type === openPaymentMethod?.type);\n if (!paymentMethod) {\n console.warn(`Drop-in: payment method type \"${openPaymentMethod?.type}\" not found`);\n } else {\n onSelect(paymentMethod);\n return;\n }\n }\n\n // Open first PaymentMethodItem\n const firstStoredPayment = storedPaymentMethods[0];\n const firstNonStoredPayment = paymentMethods[0];\n\n if (firstStoredPayment || firstNonStoredPayment) {\n const shouldOpenFirstStored = openFirstStoredPaymentMethod && getProp(firstStoredPayment, 'props.oneClick') === true;\n if (shouldOpenFirstStored) {\n onSelect(firstStoredPayment);\n return;\n }\n\n if (openFirstPaymentMethod) {\n onSelect(firstNonStoredPayment);\n }\n }\n }, [storedPaymentMethods, paymentMethods, openFirstStoredPaymentMethod, openFirstPaymentMethod, openPaymentMethod]);\n\n return (\n <Fragment>\n {orderStatus && (\n <OrderPaymentMethods\n order={order}\n orderStatus={orderStatus}\n onOrderCancel={onOrderCancel}\n brandLogoConfiguration={brandLogoConfiguration}\n />\n )}\n\n {hasInstantPaymentMethods && <InstantPaymentMethods paymentMethods={instantPaymentMethods} />}\n\n {hasStoredPaymentMethods && (\n <PaymentMethodsContainer\n {...rest}\n label={i18n.get('paymentMethodsList.storedPayments.label')}\n classNameModifiers={['storedPayments']}\n paymentMethods={storedPaymentMethods}\n onSelect={onSelect}\n ></PaymentMethodsContainer>\n )}\n\n {!!paymentMethods.length && (\n <PaymentMethodsContainer\n {...rest}\n label={pmListLabel}\n classNameModifiers={['otherPayments']}\n paymentMethods={paymentMethods}\n onSelect={onSelect}\n ></PaymentMethodsContainer>\n )}\n </Fragment>\n );\n};\n\nexport default PaymentMethodList;\n"],"names":["PaymentMethodList","paymentMethods","instantPaymentMethods","storedPaymentMethods","openFirstStoredPaymentMethod","openFirstPaymentMethod","openPaymentMethod","order","orderStatus","onOrderCancel","onSelect","rest","i18n","useCoreContext","brandLogoConfiguration","useBrandLogoConfiguration","hasInstantPaymentMethods","length","hasStoredPaymentMethods","pmListLabel","get","useEffect","type","paymentMethod","find","console","warn","firstStoredPayment","firstNonStoredPayment","getProp","h","Fragment","OrderPaymentMethods","InstantPaymentMethods","PaymentMethodsContainer","label","classNameModifiers"],"mappings":"2fAwBA,MAAMA,EAAoB,EACtBC,iBAAiB,GACjBC,wBAAwB,GACxBC,uBAAuB,GACvBC,+BACAC,yBACAC,oBACAC,QACAC,cAAc,KACdC,gBACAC,WAAW,UACRC,MAEH,MAAMC,KAAEA,GAASC,IACXC,EAAyBC,EAA0Bd,GACnDe,EAA2Bd,EAAsBe,OAAS,EAC1DC,EAA0Bf,EAAqBc,OAAS,EACxDE,EAAcH,GAA4BE,EAA0BN,EAAKQ,IAAI,0CAA4C,GA8B/H,OA5BAC,GAAU,KACN,GAAIf,GAAmBgB,KAAM,CACzB,MAAMC,EAAgBtB,EAAeuB,MAAKD,GAAiBA,EAAcD,OAAShB,GAAmBgB,OACrG,GAAKC,EAID,YADAb,EAASa,GAFTE,QAAQC,KAAK,iCAAiCpB,GAAmBgB,kBAKzE,CAGA,MAAMK,EAAqBxB,EAAqB,GAC1CyB,EAAwB3B,EAAe,GAE7C,GAAI0B,GAAsBC,EAAuB,CAE7C,GAD8BxB,IAAkF,IAAlDyB,EAAQF,EAAoB,kBAGtF,YADAjB,EAASiB,GAITtB,GACAK,EAASkB,EAEjB,IACD,CAACzB,EAAsBF,EAAgBG,EAA8BC,EAAwBC,IAG5FwB,EAACC,EACIvB,KAAAA,GACGsB,EAACE,EAAAA,CACGzB,MAAOA,EACPC,YAAaA,EACbC,cAAeA,EACfK,uBAAwBA,IAI/BE,GAA4Bc,EAACG,EAAAA,CAAsBhC,eAAgBC,IAEnEgB,GACGY,EAACI,EAAAA,IACOvB,EACJwB,MAAOvB,EAAKQ,IAAI,2CAChBgB,mBAAoB,CAAC,kBACrBnC,eAAgBE,EAChBO,SAAUA,MAIfT,EAAegB,QACda,EAACI,EAAAA,IACOvB,EACJwB,MAAOhB,EACPiB,mBAAoB,CAAC,iBACrBnC,eAAgBA,EAChBS,SAAUA"}
1
+ {"version":3,"file":"PaymentMethodList.js","sources":["../../../../../../src/components/Dropin/components/PaymentMethod/PaymentMethodList.tsx"],"sourcesContent":["import { Fragment, h } from 'preact';\nimport getProp from '../../../../utils/getProp';\nimport UIElement from '../../../internal/UIElement/UIElement';\nimport { Order, OrderStatus } from '../../../../types/global-types';\nimport OrderPaymentMethods from './OrderPaymentMethods';\nimport InstantPaymentMethods from './InstantPaymentMethods';\nimport { useCoreContext } from '../../../../core/Context/CoreProvider';\nimport { useBrandLogoConfiguration } from './useBrandLogoConfiguration';\nimport PaymentMethodsContainer, { PaymentMethodsContainerProps } from './PaymentMethodsContainer';\nimport { useEffect } from 'preact/hooks';\n\ninterface PaymentMethodListProps extends Omit<PaymentMethodsContainerProps, 'label' | 'classNameModifiers'> {\n instantPaymentMethods?: UIElement[];\n storedPaymentMethods?: UIElement[];\n openFirstStoredPaymentMethod?: boolean;\n openFirstPaymentMethod?: boolean;\n openPaymentMethod?: {\n type: string;\n };\n order?: Order;\n orderStatus?: OrderStatus;\n onOrderCancel?: (order) => void;\n}\n\nconst PaymentMethodList = ({\n paymentMethods = [], // Non-stored payments\n instantPaymentMethods = [],\n storedPaymentMethods = [],\n openFirstStoredPaymentMethod,\n openFirstPaymentMethod,\n openPaymentMethod,\n order,\n orderStatus = null,\n onOrderCancel,\n onSelect = () => {},\n ...rest\n}: PaymentMethodListProps) => {\n const { i18n } = useCoreContext();\n const brandLogoConfiguration = useBrandLogoConfiguration(paymentMethods);\n const hasInstantPaymentMethods = instantPaymentMethods.length > 0;\n const hasStoredPaymentMethods = storedPaymentMethods.length > 0;\n const pmListLabel = hasInstantPaymentMethods || hasStoredPaymentMethods ? i18n.get('paymentMethodsList.otherPayments.label') : '';\n\n useEffect(() => {\n if (openPaymentMethod?.type) {\n const paymentMethod = paymentMethods.find(paymentMethod => paymentMethod.type === openPaymentMethod?.type);\n if (!paymentMethod) {\n console.warn(`Drop-in: payment method type \"${openPaymentMethod?.type}\" not found`);\n } else {\n onSelect(paymentMethod);\n return;\n }\n }\n\n // Open first PaymentMethodItem\n const firstStoredPayment = storedPaymentMethods[0];\n const firstNonStoredPayment = paymentMethods[0];\n\n if (firstStoredPayment || firstNonStoredPayment) {\n const shouldOpenFirstStored = openFirstStoredPaymentMethod && getProp(firstStoredPayment, 'props.oneClick') === true;\n if (shouldOpenFirstStored) {\n onSelect(firstStoredPayment);\n return;\n }\n\n if (openFirstPaymentMethod) {\n onSelect(firstNonStoredPayment);\n }\n }\n }, [storedPaymentMethods, paymentMethods, openFirstStoredPaymentMethod, openFirstPaymentMethod, openPaymentMethod]);\n\n return (\n <Fragment>\n {orderStatus && (\n <OrderPaymentMethods\n order={order}\n orderStatus={orderStatus}\n onOrderCancel={onOrderCancel}\n brandLogoConfiguration={brandLogoConfiguration}\n />\n )}\n\n {hasInstantPaymentMethods && <InstantPaymentMethods paymentMethods={instantPaymentMethods} onSelect={onSelect} />}\n\n {hasStoredPaymentMethods && (\n <PaymentMethodsContainer\n {...rest}\n label={i18n.get('paymentMethodsList.storedPayments.label')}\n classNameModifiers={['storedPayments']}\n paymentMethods={storedPaymentMethods}\n onSelect={onSelect}\n ></PaymentMethodsContainer>\n )}\n\n {!!paymentMethods.length && (\n <PaymentMethodsContainer\n {...rest}\n label={pmListLabel}\n classNameModifiers={['otherPayments']}\n paymentMethods={paymentMethods}\n onSelect={onSelect}\n ></PaymentMethodsContainer>\n )}\n </Fragment>\n );\n};\n\nexport default PaymentMethodList;\n"],"names":["PaymentMethodList","paymentMethods","instantPaymentMethods","storedPaymentMethods","openFirstStoredPaymentMethod","openFirstPaymentMethod","openPaymentMethod","order","orderStatus","onOrderCancel","onSelect","rest","i18n","useCoreContext","brandLogoConfiguration","useBrandLogoConfiguration","hasInstantPaymentMethods","length","hasStoredPaymentMethods","pmListLabel","get","useEffect","type","paymentMethod","find","console","warn","firstStoredPayment","firstNonStoredPayment","getProp","h","Fragment","OrderPaymentMethods","InstantPaymentMethods","PaymentMethodsContainer","label","classNameModifiers"],"mappings":"2fAwBA,MAAMA,EAAoB,EACtBC,iBAAiB,GACjBC,wBAAwB,GACxBC,uBAAuB,GACvBC,+BACAC,yBACAC,oBACAC,QACAC,cAAc,KACdC,gBACAC,WAAW,UACRC,MAEH,MAAMC,KAAEA,GAASC,IACXC,EAAyBC,EAA0Bd,GACnDe,EAA2Bd,EAAsBe,OAAS,EAC1DC,EAA0Bf,EAAqBc,OAAS,EACxDE,EAAcH,GAA4BE,EAA0BN,EAAKQ,IAAI,0CAA4C,GA8B/H,OA5BAC,GAAU,KACN,GAAIf,GAAmBgB,KAAM,CACzB,MAAMC,EAAgBtB,EAAeuB,MAAKD,GAAiBA,EAAcD,OAAShB,GAAmBgB,OACrG,GAAKC,EAID,YADAb,EAASa,GAFTE,QAAQC,KAAK,iCAAiCpB,GAAmBgB,kBAKzE,CAGA,MAAMK,EAAqBxB,EAAqB,GAC1CyB,EAAwB3B,EAAe,GAE7C,GAAI0B,GAAsBC,EAAuB,CAE7C,GAD8BxB,IAAkF,IAAlDyB,EAAQF,EAAoB,kBAGtF,YADAjB,EAASiB,GAITtB,GACAK,EAASkB,EAEjB,IACD,CAACzB,EAAsBF,EAAgBG,EAA8BC,EAAwBC,IAG5FwB,EAACC,EACIvB,KAAAA,GACGsB,EAACE,EAAAA,CACGzB,MAAOA,EACPC,YAAaA,EACbC,cAAeA,EACfK,uBAAwBA,IAI/BE,GAA4Bc,EAACG,EAAAA,CAAsBhC,eAAgBC,EAAuBQ,SAAUA,IAEpGQ,GACGY,EAACI,EAAAA,IACOvB,EACJwB,MAAOvB,EAAKQ,IAAI,2CAChBgB,mBAAoB,CAAC,kBACrBnC,eAAgBE,EAChBO,SAAUA,MAIfT,EAAegB,QACda,EAACI,EAAAA,IACOvB,EACJwB,MAAOhB,EACPiB,mBAAoB,CAAC,iBACrBnC,eAAgBA,EAChBS,SAAUA"}
@@ -1,2 +1,2 @@
1
- import e from"../../../../external/classnames/index.js";import{createElement as a}from"../../../../external/preact/dist/preact.js";const t=({displayName:t,additionalInfo:n,isSelected:d})=>a("span",{className:"adyen-checkout__payment-method__name_wrapper"},a("span",{className:e({"adyen-checkout__payment-method__name":!0,"adyen-checkout__payment-method__name--selected":d})},t),n&&a("span",{className:e({"adyen-checkout__payment-method__additional-info":!0,"adyen-checkout__payment-method__additional-info--selected":d})},n));export{t as default};
1
+ import e from"../../../../_virtual/index.js";import{createElement as a}from"../../../../external/preact/dist/preact.js";const t=({displayName:t,additionalInfo:n,isSelected:d})=>a("span",{className:"adyen-checkout__payment-method__name_wrapper"},a("span",{className:e({"adyen-checkout__payment-method__name":!0,"adyen-checkout__payment-method__name--selected":d})},t),n&&a("span",{className:e({"adyen-checkout__payment-method__additional-info":!0,"adyen-checkout__payment-method__additional-info--selected":d})},n));export{t as default};
2
2
  //# sourceMappingURL=PaymentMethodName.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PaymentMethodName.js","sources":["../../../../../../src/components/Dropin/components/PaymentMethod/PaymentMethodName.tsx"],"sourcesContent":["import classNames from 'classnames';\nimport { h } from 'preact';\nimport './PaymentMethodName.scss';\n\nconst PaymentMethodName = ({ displayName, additionalInfo, isSelected }) => (\n <span className={'adyen-checkout__payment-method__name_wrapper'}>\n <span\n className={classNames({\n 'adyen-checkout__payment-method__name': true,\n 'adyen-checkout__payment-method__name--selected': isSelected\n })}\n >\n {displayName}\n </span>\n\n {additionalInfo && (\n <span\n className={classNames({\n 'adyen-checkout__payment-method__additional-info': true,\n 'adyen-checkout__payment-method__additional-info--selected': isSelected\n })}\n >\n {additionalInfo}\n </span>\n )}\n </span>\n);\n\nexport default PaymentMethodName;\n"],"names":["PaymentMethodName","displayName","additionalInfo","isSelected","h","span","className","classNames"],"mappings":"mIAIMA,MAAAA,EAAoB,EAAGC,cAAaC,iBAAgBC,gBACtDC,EAACC,OAAAA,CAAKC,UAAW,gDACbF,EAACC,OAAAA,CACGC,UAAWC,EAAW,CAClB,wCAAwC,EACxC,iDAAkDJ,KAGrDF,GAGJC,GACGE,EAACC,OAAAA,CACGC,UAAWC,EAAW,CAClB,mDAAmD,EACnD,4DAA6DJ,KAGhED"}
1
+ {"version":3,"file":"PaymentMethodName.js","sources":["../../../../../../src/components/Dropin/components/PaymentMethod/PaymentMethodName.tsx"],"sourcesContent":["import classNames from 'classnames';\nimport { h } from 'preact';\nimport './PaymentMethodName.scss';\n\nconst PaymentMethodName = ({ displayName, additionalInfo, isSelected }) => (\n <span className={'adyen-checkout__payment-method__name_wrapper'}>\n <span\n className={classNames({\n 'adyen-checkout__payment-method__name': true,\n 'adyen-checkout__payment-method__name--selected': isSelected\n })}\n >\n {displayName}\n </span>\n\n {additionalInfo && (\n <span\n className={classNames({\n 'adyen-checkout__payment-method__additional-info': true,\n 'adyen-checkout__payment-method__additional-info--selected': isSelected\n })}\n >\n {additionalInfo}\n </span>\n )}\n </span>\n);\n\nexport default PaymentMethodName;\n"],"names":["PaymentMethodName","displayName","additionalInfo","isSelected","h","span","className","classNames"],"mappings":"wHAIMA,MAAAA,EAAoB,EAAGC,cAAaC,iBAAgBC,gBACtDC,EAACC,OAAAA,CAAKC,UAAW,gDACbF,EAACC,OAAAA,CACGC,UAAWC,EAAW,CAClB,wCAAwC,EACxC,iDAAkDJ,KAGrDF,GAGJC,GACGE,EAACC,OAAAA,CACGC,UAAWC,EAAW,CAClB,mDAAmD,EACnD,4DAA6DJ,KAGhED"}
@@ -1,2 +1,2 @@
1
- import{createElement as e}from"../../../../external/preact/dist/preact.js";import t from"./PaymentMethodItem/PaymentMethodItem.js";import{useCoreContext as o}from"../../../../core/Context/CoreProvider.js";import{useMemo as a}from"../../../../external/preact/hooks/dist/hooks.js";import n from"../../../../utils/uuid.js";import s from"../../../../external/classnames/index.js";function d({label:d,classNameModifiers:i=[],paymentMethods:m=[],activePaymentMethod:l=null,cachedPaymentMethods:r={},isLoading:c=!1,isDisablingPaymentMethod:h=!1,showRemovePaymentMethodButton:y,onDisableStoredPaymentMethod:p=()=>{},onSelect:u,showRadioButton:M}){const{i18n:_}=o(),P=a((()=>`select-${n()}`),[]),b=s(["adyen-checkout__payment-methods-list",{"adyen-checkout__payment-methods-list--loading":c},...i.map((e=>`adyen-checkout__payment-methods-list--${e}`))]);return e("div",{className:"adyen-checkout-payment-methods-container"},!!d.length&&e("label",{htmlFor:P,className:"adyen-checkout-payment-methods-list-label"},d),e("div",{id:P,className:b,role:"radiogroup","aria-label":_.get("paymentMethodsList.aria.label"),required:!0},m.map(((o,a,n)=>{const d=l&&l._id===o._id,i=o._id in r,_=l&&n[a+1]&&l._id===n[a+1]._id;return e(t,{className:s({"adyen-checkout__payment-method--next-selected":_}),standalone:1===m.length,paymentMethod:o,isSelected:d,isDisablingPaymentMethod:d&&h,isLoaded:i,isLoading:c,onSelect:u,key:o._id,showRemovePaymentMethodButton:y,showRadioButton:M,onDisableStoredPaymentMethod:p})}))))}export{d as default};
1
+ import{createElement as e}from"../../../../external/preact/dist/preact.js";import t from"./PaymentMethodItem/PaymentMethodItem.js";import{useCoreContext as o}from"../../../../core/Context/CoreProvider.js";import{useMemo as a}from"../../../../external/preact/hooks/dist/hooks.js";import n from"../../../../utils/uuid.js";import s from"../../../../_virtual/index.js";function d({label:d,classNameModifiers:i=[],paymentMethods:m=[],activePaymentMethod:l=null,cachedPaymentMethods:r={},isLoading:h=!1,isDisablingPaymentMethod:c=!1,showRemovePaymentMethodButton:y,onDisableStoredPaymentMethod:p=()=>{},onSelect:u,showRadioButton:M}){const{i18n:_}=o(),P=a((()=>`select-${n()}`),[]),b=s(["adyen-checkout__payment-methods-list",{"adyen-checkout__payment-methods-list--loading":h},...i.map((e=>`adyen-checkout__payment-methods-list--${e}`))]);return e("div",{className:"adyen-checkout-payment-methods-container"},!!d.length&&e("label",{htmlFor:P,className:"adyen-checkout-payment-methods-list-label"},d),e("div",{id:P,className:b,role:"radiogroup","aria-label":_.get("paymentMethodsList.aria.label"),required:!0},m.map(((o,a,n)=>{const d=l&&l._id===o._id,i=o._id in r,_=l&&n[a+1]&&l._id===n[a+1]._id;return e(t,{className:s({"adyen-checkout__payment-method--next-selected":_}),standalone:1===m.length,paymentMethod:o,isSelected:d,isDisablingPaymentMethod:d&&c,isLoaded:i,isLoading:h,onSelect:u,key:o._id,showRemovePaymentMethodButton:y,showRadioButton:M,onDisableStoredPaymentMethod:p})}))))}export{d as default};
2
2
  //# sourceMappingURL=PaymentMethodsContainer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PaymentMethodsContainer.js","sources":["../../../../../../src/components/Dropin/components/PaymentMethod/PaymentMethodsContainer.tsx"],"sourcesContent":["import { h } from 'preact';\nimport PaymentMethodItem from './PaymentMethodItem/PaymentMethodItem';\nimport { useCoreContext } from '../../../../core/Context/CoreProvider';\nimport { useMemo } from 'preact/hooks';\nimport uuid from '../../../../utils/uuid';\nimport classNames from 'classnames';\nimport UIElement from '../../../internal/UIElement';\n\nexport interface PaymentMethodsContainerProps {\n label: string;\n classNameModifiers?: string[];\n paymentMethods: UIElement[];\n activePaymentMethod?: UIElement;\n /**\n * Map that keeps track of which Payment methods (UIElements) already got rendered in the UI\n */\n cachedPaymentMethods: Record<string, boolean>;\n showRemovePaymentMethodButton?: boolean;\n onSelect?: (paymentMethod: UIElement) => void;\n onDisableStoredPaymentMethod?: (storedPaymentMethod) => void;\n isDisablingPaymentMethod?: boolean;\n isLoading: boolean;\n showRadioButton?: boolean;\n}\n\nfunction PaymentMethodsContainer({\n label,\n classNameModifiers = [],\n paymentMethods = [],\n activePaymentMethod = null,\n cachedPaymentMethods = {},\n isLoading = false,\n isDisablingPaymentMethod = false,\n showRemovePaymentMethodButton,\n onDisableStoredPaymentMethod = () => {},\n onSelect,\n showRadioButton\n}: Readonly<PaymentMethodsContainerProps>) {\n const { i18n } = useCoreContext();\n const selectListId: string = useMemo(() => `select-${uuid()}`, []);\n const paymentMethodListClassnames = classNames([\n 'adyen-checkout__payment-methods-list',\n { 'adyen-checkout__payment-methods-list--loading': isLoading },\n ...classNameModifiers.map(m => `adyen-checkout__payment-methods-list--${m}`)\n ]);\n\n return (\n <div className=\"adyen-checkout-payment-methods-container\">\n {!!label.length && (\n <label htmlFor={selectListId} className=\"adyen-checkout-payment-methods-list-label\">\n {label}\n </label>\n )}\n <div\n id={selectListId}\n className={paymentMethodListClassnames}\n role=\"radiogroup\"\n aria-label={i18n.get('paymentMethodsList.aria.label')}\n required\n >\n {paymentMethods.map((paymentMethod, index, paymentMethodsCollection) => {\n const isSelected = activePaymentMethod && activePaymentMethod._id === paymentMethod._id;\n const isLoaded = paymentMethod._id in cachedPaymentMethods;\n const isNextOneSelected =\n activePaymentMethod &&\n paymentMethodsCollection[index + 1] &&\n activePaymentMethod._id === paymentMethodsCollection[index + 1]._id;\n\n return (\n <PaymentMethodItem\n className={classNames({ 'adyen-checkout__payment-method--next-selected': isNextOneSelected })}\n standalone={paymentMethods.length === 1}\n paymentMethod={paymentMethod}\n isSelected={isSelected}\n isDisablingPaymentMethod={isSelected && isDisablingPaymentMethod}\n isLoaded={isLoaded}\n isLoading={isLoading}\n onSelect={onSelect}\n key={paymentMethod._id}\n showRemovePaymentMethodButton={showRemovePaymentMethodButton}\n showRadioButton={showRadioButton}\n onDisableStoredPaymentMethod={onDisableStoredPaymentMethod}\n />\n );\n })}\n </div>\n </div>\n );\n}\n\nexport default PaymentMethodsContainer;\n"],"names":["PaymentMethodsContainer","label","classNameModifiers","paymentMethods","activePaymentMethod","cachedPaymentMethods","isLoading","isDisablingPaymentMethod","showRemovePaymentMethodButton","onDisableStoredPaymentMethod","onSelect","showRadioButton","i18n","useCoreContext","selectListId","useMemo","uuid","paymentMethodListClassnames","classNames","map","m","h","div","className","length","htmlFor","id","role","aria-label","get","required","paymentMethod","index","paymentMethodsCollection","isSelected","_id","isLoaded","isNextOneSelected","PaymentMethodItem","standalone","key"],"mappings":"wXAyBA,SAASA,GAAwBC,MAC7BA,EAAKC,mBACLA,EAAqB,GAAEC,eACvBA,EAAiB,GAAEC,oBACnBA,EAAsB,KAAIC,qBAC1BA,EAAuB,CAAA,EAAEC,UACzBA,GAAY,EAAKC,yBACjBA,GAA2B,EAAKC,8BAChCA,EAA6BC,6BAC7BA,EAA+B,OAAQC,SACvCA,EAAQC,gBACRA,IAEA,MAAMC,KAAEA,GAASC,IACXC,EAAuBC,GAAQ,IAAM,UAAUC,OAAU,IACzDC,EAA8BC,EAAW,CAC3C,uCACA,CAAE,gDAAiDZ,MAChDJ,EAAmBiB,KAAIC,GAAK,yCAAyCA,QAG5E,OACIC,EAACC,MAAAA,CAAIC,UAAU,8CACRtB,EAAMuB,QACLH,EAACpB,QAAAA,CAAMwB,QAASX,EAAcS,UAAU,6CACnCtB,GAGToB,EAACC,MAAAA,CACGI,GAAIZ,EACJS,UAAWN,EACXU,KAAK,aACLC,aAAYhB,EAAKiB,IAAI,iCACrBC,UAAAA,GAEC3B,EAAegB,KAAI,CAACY,EAAeC,EAAOC,KACvC,MAAMC,EAAa9B,GAAuBA,EAAoB+B,MAAQJ,EAAcI,IAC9EC,EAAWL,EAAcI,OAAO9B,EAChCgC,EACFjC,GACA6B,EAAyBD,EAAQ,IACjC5B,EAAoB+B,MAAQF,EAAyBD,EAAQ,GAAGG,IAEpE,OACId,EAACiB,EAAAA,CACGf,UAAWL,EAAW,CAAE,gDAAiDmB,IACzEE,WAAsC,IAA1BpC,EAAeqB,OAC3BO,cAAeA,EACfG,WAAYA,EACZ3B,yBAA0B2B,GAAc3B,EACxC6B,SAAUA,EACV9B,UAAWA,EACXI,SAAUA,EACV8B,IAAKT,EAAcI,IACnB3B,8BAA+BA,EAC/BG,gBAAiBA,EACjBF,6BAA8BA,QAO1D"}
1
+ {"version":3,"file":"PaymentMethodsContainer.js","sources":["../../../../../../src/components/Dropin/components/PaymentMethod/PaymentMethodsContainer.tsx"],"sourcesContent":["import { h } from 'preact';\nimport PaymentMethodItem from './PaymentMethodItem/PaymentMethodItem';\nimport { useCoreContext } from '../../../../core/Context/CoreProvider';\nimport { useMemo } from 'preact/hooks';\nimport uuid from '../../../../utils/uuid';\nimport classNames from 'classnames';\nimport UIElement from '../../../internal/UIElement';\n\nexport interface PaymentMethodsContainerProps {\n label: string;\n classNameModifiers?: string[];\n paymentMethods: UIElement[];\n activePaymentMethod?: UIElement;\n /**\n * Map that keeps track of which Payment methods (UIElements) already got rendered in the UI\n */\n cachedPaymentMethods: Record<string, boolean>;\n showRemovePaymentMethodButton?: boolean;\n onSelect?: (paymentMethod: UIElement) => void;\n onDisableStoredPaymentMethod?: (storedPaymentMethod) => void;\n isDisablingPaymentMethod?: boolean;\n isLoading: boolean;\n showRadioButton?: boolean;\n}\n\nfunction PaymentMethodsContainer({\n label,\n classNameModifiers = [],\n paymentMethods = [],\n activePaymentMethod = null,\n cachedPaymentMethods = {},\n isLoading = false,\n isDisablingPaymentMethod = false,\n showRemovePaymentMethodButton,\n onDisableStoredPaymentMethod = () => {},\n onSelect,\n showRadioButton\n}: Readonly<PaymentMethodsContainerProps>) {\n const { i18n } = useCoreContext();\n const selectListId: string = useMemo(() => `select-${uuid()}`, []);\n const paymentMethodListClassnames = classNames([\n 'adyen-checkout__payment-methods-list',\n { 'adyen-checkout__payment-methods-list--loading': isLoading },\n ...classNameModifiers.map(m => `adyen-checkout__payment-methods-list--${m}`)\n ]);\n\n return (\n <div className=\"adyen-checkout-payment-methods-container\">\n {!!label.length && (\n <label htmlFor={selectListId} className=\"adyen-checkout-payment-methods-list-label\">\n {label}\n </label>\n )}\n <div\n id={selectListId}\n className={paymentMethodListClassnames}\n role=\"radiogroup\"\n aria-label={i18n.get('paymentMethodsList.aria.label')}\n required\n >\n {paymentMethods.map((paymentMethod, index, paymentMethodsCollection) => {\n const isSelected = activePaymentMethod && activePaymentMethod._id === paymentMethod._id;\n const isLoaded = paymentMethod._id in cachedPaymentMethods;\n const isNextOneSelected =\n activePaymentMethod &&\n paymentMethodsCollection[index + 1] &&\n activePaymentMethod._id === paymentMethodsCollection[index + 1]._id;\n\n return (\n <PaymentMethodItem\n className={classNames({ 'adyen-checkout__payment-method--next-selected': isNextOneSelected })}\n standalone={paymentMethods.length === 1}\n paymentMethod={paymentMethod}\n isSelected={isSelected}\n isDisablingPaymentMethod={isSelected && isDisablingPaymentMethod}\n isLoaded={isLoaded}\n isLoading={isLoading}\n onSelect={onSelect}\n key={paymentMethod._id}\n showRemovePaymentMethodButton={showRemovePaymentMethodButton}\n showRadioButton={showRadioButton}\n onDisableStoredPaymentMethod={onDisableStoredPaymentMethod}\n />\n );\n })}\n </div>\n </div>\n );\n}\n\nexport default PaymentMethodsContainer;\n"],"names":["PaymentMethodsContainer","label","classNameModifiers","paymentMethods","activePaymentMethod","cachedPaymentMethods","isLoading","isDisablingPaymentMethod","showRemovePaymentMethodButton","onDisableStoredPaymentMethod","onSelect","showRadioButton","i18n","useCoreContext","selectListId","useMemo","uuid","paymentMethodListClassnames","classNames","map","m","h","div","className","length","htmlFor","id","role","aria-label","get","required","paymentMethod","index","paymentMethodsCollection","isSelected","_id","isLoaded","isNextOneSelected","PaymentMethodItem","standalone","key"],"mappings":"6WAyBA,SAASA,GAAwBC,MAC7BA,EAAKC,mBACLA,EAAqB,GAAEC,eACvBA,EAAiB,GAAEC,oBACnBA,EAAsB,KAAIC,qBAC1BA,EAAuB,CAAA,EAAEC,UACzBA,GAAY,EAAKC,yBACjBA,GAA2B,EAAKC,8BAChCA,EAA6BC,6BAC7BA,EAA+B,OAAQC,SACvCA,EAAQC,gBACRA,IAEA,MAAMC,KAAEA,GAASC,IACXC,EAAuBC,GAAQ,IAAM,UAAUC,OAAU,IACzDC,EAA8BC,EAAW,CAC3C,uCACA,CAAE,gDAAiDZ,MAChDJ,EAAmBiB,KAAIC,GAAK,yCAAyCA,QAG5E,OACIC,EAACC,MAAAA,CAAIC,UAAU,8CACRtB,EAAMuB,QACLH,EAACpB,QAAAA,CAAMwB,QAASX,EAAcS,UAAU,6CACnCtB,GAGToB,EAACC,MAAAA,CACGI,GAAIZ,EACJS,UAAWN,EACXU,KAAK,aACLC,aAAYhB,EAAKiB,IAAI,iCACrBC,UAAAA,GAEC3B,EAAegB,KAAI,CAACY,EAAeC,EAAOC,KACvC,MAAMC,EAAa9B,GAAuBA,EAAoB+B,MAAQJ,EAAcI,IAC9EC,EAAWL,EAAcI,OAAO9B,EAChCgC,EACFjC,GACA6B,EAAyBD,EAAQ,IACjC5B,EAAoB+B,MAAQF,EAAyBD,EAAQ,GAAGG,IAEpE,OACId,EAACiB,EAAAA,CACGf,UAAWL,EAAW,CAAE,gDAAiDmB,IACzEE,WAAsC,IAA1BpC,EAAeqB,OAC3BO,cAAeA,EACfG,WAAYA,EACZ3B,yBAA0B2B,GAAc3B,EACxC6B,SAAUA,EACV9B,UAAWA,EACXI,SAAUA,EACV8B,IAAKT,EAAcI,IACnB3B,8BAA+BA,EAC/BG,gBAAiBA,EACjBF,6BAA8BA,QAO1D"}
@@ -1,2 +1,2 @@
1
- import{createElement as t}from"../../external/preact/dist/preact.js";import{UIElement as e}from"../internal/UIElement/UIElement.js";import r from"./components/GiftcardComponent.js";import{CoreProvider as s}from"../../core/Context/CoreProvider.js";import n from"../internal/PayButton/PayButton.js";import o from"../../core/Errors/AdyenCheckoutError.js";import{TxVariants as i}from"../tx-variants.js";function a(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}class p extends e{formatProps(t){return{...t?.configuration,...t}}formatData(){return{paymentMethod:{type:this.constructor.type,brand:this.props.brand,encryptedCardNumber:this.state.data?.encryptedCardNumber,encryptedSecurityCode:this.state.data?.encryptedSecurityCode}}}get isValid(){return!!this.state.isValid}get icon(){return this.props.brandsConfiguration[this.props.brand]?.icon||this.props.icon||this.resources.getImage()(this.props.brand)}get displayName(){return this.props.brandsConfiguration[this.props.brand]?.name||this.props.name}balanceCheck(){return this.onBalanceCheck()}submit(){if(!this.isValid)return this.showValidation(),!1;this.balanceCheck()}render(){return t(s,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},t(r,{ref:t=>{this.componentRef=t},...this.props,handleKeyPress:this.handleKeyPress,showPayButton:this.props.showPayButton,onChange:this.setState,onBalanceCheck:this.onBalanceCheck,onSubmit:this.submit,payButton:this.payButton}))}constructor(...e){super(...e),a(this,"handleBalanceCheck",(t=>this.props.onBalanceCheck?new Promise(((e,r)=>{this.props.onBalanceCheck(e,r,t)})):this.props.session?this.props.session.checkBalance(t):void 0)),a(this,"onOrderRequest",(t=>this.props.onOrderRequest?new Promise(((e,r)=>{this.props.onOrderRequest(e,r,t)})):this.props.session?this.props.session.createOrder():void 0)),a(this,"onBalanceCheck",(()=>{if(!(this.props.session||this.props.onBalanceCheck))return super.submit();this.setStatus("loading"),this.handleBalanceCheck(this.formatData()).then((({balance:t,transactionLimit:e={}})=>{if(!t)throw new Error("card-error");if(t?.currency!==this.props.amount?.currency)throw new Error("currency-error");if(t?.value<=0)throw new Error("no-balance");return this.componentRef.setBalance({balance:t,transactionLimit:e}),this.props.amount.value>t.value||this.props.amount.value>e.value?this.props.order?super.submit():this.onOrderRequest(this.data).then((t=>(this.setState({order:{orderData:t.orderData,pspReference:t.pspReference}}),super.submit()))):this.handleOnRequiringConfirmation().then((()=>super.submit()))})).catch((t=>{this.setStatus(t?.message||"error"),this.props.onError&&(t instanceof o?this.handleError(t):this.handleError(new o("ERROR",t)))}))})),a(this,"handleOnRequiringConfirmation",(()=>{if(this.props.onRequiringConfirmation)return new Promise(((t,e)=>{this.props.onRequiringConfirmation(t,e)}))})),a(this,"payButton",(e=>t(n,e)))}}a(p,"type",i.giftcard),a(p,"defaultProps",{brandsConfiguration:{}});export{p as GiftcardElement,p as default};
1
+ import{createElement as t}from"../../external/preact/dist/preact.js";import{UIElement as e}from"../internal/UIElement/UIElement.js";import r from"./components/GiftcardComponent.js";import{CoreProvider as s}from"../../core/Context/CoreProvider.js";import n from"../internal/PayButton/PayButton.js";import o from"../../core/Errors/AdyenCheckoutError.js";import{TxVariants as i}from"../tx-variants.js";function a(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}class h extends e{formatProps(t){return{...t?.configuration,...t}}formatData(){return{paymentMethod:{type:this.constructor.type,brand:this.props.brand,encryptedCardNumber:this.state.data?.encryptedCardNumber,encryptedSecurityCode:this.state.data?.encryptedSecurityCode}}}get isValid(){return!!this.state.isValid}get icon(){return this.props.brandsConfiguration[this.props.brand]?.icon||this.props.icon||this.resources.getImage()(this.props.brand)}get displayName(){return this.props.brandsConfiguration[this.props.brand]?.name||this.props.name}balanceCheck(){return this.onBalanceCheck()}submit(){if(!this.isValid)return this.showValidation(),!1;this.balanceCheck()}makeSubmitCall(){super.submit()}render(){return t(s,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},t(r,{ref:t=>{this.componentRef=t},...this.props,handleKeyPress:this.handleKeyPress,showPayButton:this.props.showPayButton,onChange:this.setState,makeBalanceCheck:()=>this.onBalanceCheck(),makePayment:()=>this.makeSubmitCall(),payButton:this.payButton}))}constructor(...e){super(...e),a(this,"handleBalanceCheck",(t=>this.props.onBalanceCheck?new Promise(((e,r)=>{this.props.onBalanceCheck(e,r,t)})):this.props.session?this.props.session.checkBalance(t):void 0)),a(this,"onOrderRequest",(t=>this.props.onOrderRequest?new Promise(((e,r)=>{this.props.onOrderRequest(e,r,t)})):this.props.session?this.props.session.createOrder():void 0)),a(this,"onBalanceCheck",(()=>{if(!(this.props.session||this.props.onBalanceCheck))return super.submit();this.setStatus("loading"),this.handleBalanceCheck(this.formatData()).then((({balance:t,transactionLimit:e={}})=>{if(!t)throw new Error("card-error");if(t?.currency!==this.props.amount?.currency)throw new Error("currency-error");if(t?.value<=0)throw new Error("no-balance");return this.props.amount.value>t.value||this.props.amount.value>e.value?this.props.order?this.makeSubmitCall():this.onOrderRequest(this.data).then((t=>(this.setState({order:{orderData:t.orderData,pspReference:t.pspReference}}),this.makeSubmitCall()))):this.handleOnRequiringConfirmation(t,e)})).catch((t=>{this.setStatus(t?.message||"error"),this.props.onError&&(t instanceof o?this.handleError(t):this.handleError(new o("ERROR",t)))}))})),a(this,"handleOnRequiringConfirmation",((t,e)=>{if(this.componentRef.setBalance({balance:t,transactionLimit:e}),this.setStatus("ready"),!this.props.showPayButton){if(!this.props.onRequiringConfirmation)throw new o("IMPLEMENTATION_ERROR","onRequiringConfirmation must be provided");return new Promise(((t,e)=>{this.props.onRequiringConfirmation(t,e)})).then((()=>this.makeSubmitCall())).catch((()=>{}))}})),a(this,"payButton",(e=>t(n,e)))}}a(h,"type",i.giftcard),a(h,"defaultProps",{brandsConfiguration:{}});export{h as GiftcardElement,h as default};
2
2
  //# sourceMappingURL=Giftcard.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Giftcard.js","sources":["../../../../src/components/Giftcard/Giftcard.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport GiftcardComponent from './components/GiftcardComponent';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport PayButton from '../internal/PayButton';\nimport AdyenCheckoutError from '../../core/Errors/AdyenCheckoutError';\nimport { PaymentAmount } from '../../types/global-types';\nimport { GiftCardElementData, GiftCardConfiguration, balanceCheckResponseType } from './types';\nimport { TxVariants } from '../tx-variants';\n\nexport class GiftcardElement extends UIElement<GiftCardConfiguration> {\n public static type = TxVariants.giftcard;\n\n protected static defaultProps = {\n brandsConfiguration: {}\n };\n\n formatProps(props) {\n return {\n ...props?.configuration,\n ...props\n };\n }\n\n formatData(): GiftCardElementData {\n return {\n paymentMethod: {\n type: this.constructor['type'],\n brand: this.props.brand,\n encryptedCardNumber: this.state.data?.encryptedCardNumber,\n encryptedSecurityCode: this.state.data?.encryptedSecurityCode\n }\n };\n }\n\n get isValid() {\n return !!this.state.isValid;\n }\n\n get icon() {\n return this.props.brandsConfiguration[this.props.brand]?.icon || this.props.icon || this.resources.getImage()(this.props.brand);\n }\n\n get displayName() {\n return this.props.brandsConfiguration[this.props.brand]?.name || this.props.name;\n }\n\n private handleBalanceCheck = (data: GiftCardElementData): Promise<balanceCheckResponseType> => {\n if (this.props.onBalanceCheck) {\n return new Promise((resolve, reject) => {\n void this.props.onBalanceCheck(resolve, reject, data);\n });\n }\n\n if (this.props.session) {\n return this.props.session.checkBalance(data);\n }\n };\n\n private onOrderRequest = data => {\n if (this.props.onOrderRequest)\n return new Promise((resolve, reject) => {\n void this.props.onOrderRequest(resolve, reject, data);\n });\n if (this.props.session) {\n return this.props.session.createOrder();\n }\n };\n\n public balanceCheck() {\n return this.onBalanceCheck();\n }\n\n private onBalanceCheck = (): void => {\n // skip balance check if no onBalanceCheck event has been defined\n const hasBalanceCheck = this.props.session || this.props.onBalanceCheck;\n if (!hasBalanceCheck) return super.submit();\n\n this.setStatus('loading');\n\n this.handleBalanceCheck(this.formatData())\n .then(({ balance, transactionLimit = {} as PaymentAmount }) => {\n if (!balance) throw new Error('card-error'); // card doesn't exist\n if (balance?.currency !== this.props.amount?.currency) throw new Error('currency-error');\n if (balance?.value <= 0) throw new Error('no-balance');\n\n this.componentRef.setBalance({ balance, transactionLimit });\n\n if (this.props.amount.value > balance.value || this.props.amount.value > transactionLimit.value) {\n if (this.props.order) {\n return super.submit();\n }\n\n return this.onOrderRequest(this.data).then((order: { orderData: string; pspReference: string }) => {\n this.setState({ order: { orderData: order.orderData, pspReference: order.pspReference } });\n return super.submit();\n });\n } else {\n return this.handleOnRequiringConfirmation().then(() => super.submit());\n }\n })\n .catch(error => {\n this.setStatus(error?.message || 'error');\n if (this.props.onError) {\n if (error instanceof AdyenCheckoutError) {\n this.handleError(error);\n } else {\n this.handleError(new AdyenCheckoutError('ERROR', error));\n }\n }\n });\n };\n\n private handleOnRequiringConfirmation = (): Promise<any> => {\n if (this.props.onRequiringConfirmation) {\n return new Promise<void>((resolve, reject) => {\n void this.props.onRequiringConfirmation(resolve, reject);\n });\n }\n };\n\n public submit() {\n if (!this.isValid) {\n this.showValidation();\n return false;\n }\n\n this.balanceCheck();\n }\n\n // Giftcards override the regular payButton flow\n public payButton = props => {\n return <PayButton {...props} />;\n };\n\n render() {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <GiftcardComponent\n ref={ref => {\n this.componentRef = ref;\n }}\n {...this.props}\n handleKeyPress={this.handleKeyPress}\n showPayButton={this.props.showPayButton}\n onChange={this.setState}\n onBalanceCheck={this.onBalanceCheck}\n onSubmit={this.submit}\n payButton={this.payButton}\n />\n </CoreProvider>\n );\n }\n}\n\nexport default GiftcardElement;\n"],"names":["GiftcardElement","UIElement","formatProps","props","configuration","formatData","paymentMethod","type","this","constructor","brand","encryptedCardNumber","state","data","encryptedSecurityCode","isValid","icon","brandsConfiguration","resources","getImage","displayName","name","balanceCheck","onBalanceCheck","submit","showValidation","render","h","CoreProvider","i18n","loadingContext","GiftcardComponent","ref","componentRef","handleKeyPress","showPayButton","onChange","setState","onSubmit","payButton","super","args","_define_property","handleBalanceCheck","Promise","resolve","reject","session","checkBalance","onOrderRequest","createOrder","setStatus","then","balance","transactionLimit","Error","currency","amount","value","setBalance","order","orderData","pspReference","handleOnRequiringConfirmation","catch","error","message","onError","AdyenCheckoutError","handleError","onRequiringConfirmation","PayButton","TxVariants","giftcard","defaultProps"],"mappings":"ugBAUO,MAAMA,UAAwBC,EAOjCC,WAAAA,CAAYC,GACR,MAAO,IACAA,GAAOC,iBACPD,EAEX,CAEAE,UAAAA,GACI,MAAO,CACHC,cAAe,CACXC,KAAMC,KAAKC,YAAmB,KAC9BC,MAAOF,KAAKL,MAAMO,MAClBC,oBAAqBH,KAAKI,MAAMC,MAAMF,oBACtCG,sBAAuBN,KAAKI,MAAMC,MAAMC,uBAGpD,CAEA,WAAIC,GACA,QAASP,KAAKI,MAAMG,OACxB,CAEA,QAAIC,GACA,OAAOR,KAAKL,MAAMc,oBAAoBT,KAAKL,MAAMO,QAAQM,MAAQR,KAAKL,MAAMa,MAAQR,KAAKU,UAAUC,UAAfX,CAA0BA,KAAKL,MAAMO,MAC7H,CAEA,eAAIU,GACA,OAAOZ,KAAKL,MAAMc,oBAAoBT,KAAKL,MAAMO,QAAQW,MAAQb,KAAKL,MAAMkB,IAChF,CAwBOC,YAAAA,GACH,OAAOd,KAAKe,gBAChB,CAkDOC,MAAAA,GACH,IAAKhB,KAAKO,QAEN,OADAP,KAAKiB,kBACE,EAGXjB,KAAKc,cACT,CAOAI,MAAAA,GACI,OACIC,EAACC,EAAAA,CAAaC,KAAMrB,KAAKL,MAAM0B,KAAMC,eAAgBtB,KAAKL,MAAM2B,eAAgBZ,UAAWV,KAAKU,WAC5FS,EAACI,EAAAA,CACGC,IAAKA,IACDxB,KAAKyB,aAAeD,CAAAA,KAEpBxB,KAAKL,MACT+B,eAAgB1B,KAAK0B,eACrBC,cAAe3B,KAAKL,MAAMgC,cAC1BC,SAAU5B,KAAK6B,SACfd,eAAgBf,KAAKe,eACrBe,SAAU9B,KAAKgB,OACfe,UAAW/B,KAAK+B,YAIhC,mBA9IGC,SAqCHC,GAAAC,EAAAlC,KAAQmC,sBAAsB9B,GACtBL,KAAKL,MAAMoB,eACJ,IAAIqB,SAAQ,CAACC,EAASC,KACpBtC,KAAKL,MAAMoB,eAAesB,EAASC,EAAQjC,EAAAA,IAIpDL,KAAKL,MAAM4C,QACJvC,KAAKL,MAAM4C,QAAQC,aAAanC,QAD3C,IAKJ6B,EAAAlC,KAAQyC,kBAAiBpC,GACjBL,KAAKL,MAAM8C,eACJ,IAAIL,SAAQ,CAACC,EAASC,KACpBtC,KAAKL,MAAM8C,eAAeJ,EAASC,EAAQjC,EAAAA,IAEpDL,KAAKL,MAAM4C,QACJvC,KAAKL,MAAM4C,QAAQG,mBAD9B,IASJR,OAAQnB,kBAAiB,KAGrB,KADwBf,KAAKL,MAAM4C,SAAWvC,KAAKL,MAAMoB,gBACnC,OAAOiB,MAAMhB,SAEnChB,KAAK2C,UAAU,WAEf3C,KAAKmC,mBAAmBnC,KAAKH,cACxB+C,MAAK,EAAGC,UAASC,mBAAmB,CAAA,MACjC,IAAKD,EAAS,MAAM,IAAIE,MAAM,cAC9B,GAAIF,GAASG,WAAahD,KAAKL,MAAMsD,QAAQD,SAAU,MAAM,IAAID,MAAM,kBACvE,GAAIF,GAASK,OAAS,EAAG,MAAM,IAAIH,MAAM,cAIzC,OAFA/C,KAAKyB,aAAa0B,WAAW,CAAEN,UAASC,qBAEpC9C,KAAKL,MAAMsD,OAAOC,MAAQL,EAAQK,OAASlD,KAAKL,MAAMsD,OAAOC,MAAQJ,EAAiBI,MAClFlD,KAAKL,MAAMyD,MACJpB,MAAMhB,SAGVhB,KAAKyC,eAAezC,KAAKK,MAAMuC,MAAMQ,IACxCpD,KAAK6B,SAAS,CAAEuB,MAAO,CAAEC,UAAWD,EAAMC,UAAWC,aAAcF,EAAME,gBAClEtB,MAAMhB,YAGVhB,KAAKuD,gCAAgCX,MAAK,IAAMZ,MAAMhB,UACjE,IAEHwC,OAAMC,IACHzD,KAAK2C,UAAUc,GAAOC,SAAW,SAC7B1D,KAAKL,MAAMgE,UACPF,aAAiBG,EACjB5D,KAAK6D,YAAYJ,GAEjBzD,KAAK6D,YAAY,IAAID,EAAmB,QAASH,IAEzD,GACJ,IAGRvB,OAAQqB,iCAAgC,KACpC,GAAIvD,KAAKL,MAAMmE,wBACX,OAAO,IAAI1B,SAAc,CAACC,EAASC,KAC1BtC,KAAKL,MAAMmE,wBAAwBzB,EAASC,EAAAA,GAEzD,IAaJJ,EAAAlC,KAAO+B,aAAYpC,GACRwB,EAAC4C,EAAcpE,MAzH1BuC,EADS1C,EACKO,OAAOiE,EAAWC,UAEhC/B,EAHS1C,EAGQ0E,eAAe,CAC5BzD,oBAAqB,CAAA"}
1
+ {"version":3,"file":"Giftcard.js","sources":["../../../../src/components/Giftcard/Giftcard.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport GiftcardComponent from './components/GiftcardComponent';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport PayButton from '../internal/PayButton';\nimport AdyenCheckoutError from '../../core/Errors/AdyenCheckoutError';\nimport { PaymentAmount } from '../../types/global-types';\nimport { GiftCardElementData, GiftCardConfiguration, balanceCheckResponseType } from './types';\nimport { TxVariants } from '../tx-variants';\n\nexport class GiftcardElement extends UIElement<GiftCardConfiguration> {\n public static type = TxVariants.giftcard;\n\n protected static defaultProps = {\n brandsConfiguration: {}\n };\n\n formatProps(props) {\n return {\n ...props?.configuration,\n ...props\n };\n }\n\n formatData(): GiftCardElementData {\n return {\n paymentMethod: {\n type: this.constructor['type'],\n brand: this.props.brand,\n encryptedCardNumber: this.state.data?.encryptedCardNumber,\n encryptedSecurityCode: this.state.data?.encryptedSecurityCode\n }\n };\n }\n\n get isValid() {\n return !!this.state.isValid;\n }\n\n get icon() {\n return this.props.brandsConfiguration[this.props.brand]?.icon || this.props.icon || this.resources.getImage()(this.props.brand);\n }\n\n get displayName() {\n return this.props.brandsConfiguration[this.props.brand]?.name || this.props.name;\n }\n\n private handleBalanceCheck = (data: GiftCardElementData): Promise<balanceCheckResponseType> => {\n if (this.props.onBalanceCheck) {\n return new Promise((resolve, reject) => {\n void this.props.onBalanceCheck(resolve, reject, data);\n });\n }\n\n if (this.props.session) {\n return this.props.session.checkBalance(data);\n }\n };\n\n private onOrderRequest = data => {\n if (this.props.onOrderRequest)\n return new Promise((resolve, reject) => {\n void this.props.onOrderRequest(resolve, reject, data);\n });\n if (this.props.session) {\n return this.props.session.createOrder();\n }\n };\n\n public balanceCheck() {\n return this.onBalanceCheck();\n }\n\n private onBalanceCheck = (): void => {\n // skip balance check if no onBalanceCheck event has been defined\n const hasBalanceCheck = this.props.session || this.props.onBalanceCheck;\n if (!hasBalanceCheck) return super.submit();\n\n this.setStatus('loading');\n\n this.handleBalanceCheck(this.formatData())\n .then(({ balance, transactionLimit = {} as PaymentAmount }) => {\n if (!balance) throw new Error('card-error'); // card doesn't exist\n if (balance?.currency !== this.props.amount?.currency) throw new Error('currency-error');\n if (balance?.value <= 0) throw new Error('no-balance');\n\n if (this.props.amount.value > balance.value || this.props.amount.value > transactionLimit.value) {\n if (this.props.order) {\n return this.makeSubmitCall();\n }\n\n return this.onOrderRequest(this.data).then((order: { orderData: string; pspReference: string }) => {\n this.setState({ order: { orderData: order.orderData, pspReference: order.pspReference } });\n return this.makeSubmitCall();\n });\n } else {\n return this.handleOnRequiringConfirmation(balance, transactionLimit);\n }\n })\n .catch(error => {\n this.setStatus(error?.message || 'error');\n if (this.props.onError) {\n if (error instanceof AdyenCheckoutError) {\n this.handleError(error);\n } else {\n this.handleError(new AdyenCheckoutError('ERROR', error));\n }\n }\n });\n };\n\n /**\n * Check if it should call onRequiringConfirmation\n */\n private handleOnRequiringConfirmation = (balance, transactionLimit): Promise<any> => {\n this.componentRef.setBalance({ balance, transactionLimit });\n this.setStatus('ready');\n\n // 1. if we show pay button we don't need to ask for confirmation\n if (this.props.showPayButton) {\n return;\n }\n // 2. there's no callback, we throw error\n if (!this.props.onRequiringConfirmation) {\n throw new AdyenCheckoutError('IMPLEMENTATION_ERROR', 'onRequiringConfirmation must be provided');\n }\n // 3. success case if in case of custom pay button\n return (\n new Promise<void>((resolve, reject) => {\n void this.props.onRequiringConfirmation(resolve, reject);\n })\n //when this resolve passed to onRequiringConfirmation gets resolved make payments call\n .then(() => this.makeSubmitCall())\n //when it gets rejected handle cancellation\n .catch(() => {})\n );\n };\n\n public submit() {\n // for simplicity of the merchant we always only expose .submit()\n // however to make the actual payment call we call makeSubmitCall\n if (!this.isValid) {\n this.showValidation();\n return false;\n }\n\n this.balanceCheck();\n }\n\n // this makes the payment, as .submit is used by the merchant to trigger the payButton action\n private makeSubmitCall() {\n super.submit();\n }\n\n // Giftcards override the regular payButton flow\n public payButton = props => {\n return <PayButton {...props} />;\n };\n\n render() {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <GiftcardComponent\n ref={ref => {\n this.componentRef = ref;\n }}\n {...this.props}\n handleKeyPress={this.handleKeyPress}\n showPayButton={this.props.showPayButton}\n onChange={this.setState}\n makeBalanceCheck={() => this.onBalanceCheck()}\n makePayment={() => this.makeSubmitCall()}\n payButton={this.payButton}\n />\n </CoreProvider>\n );\n }\n}\n\nexport default GiftcardElement;\n"],"names":["GiftcardElement","UIElement","formatProps","props","configuration","formatData","paymentMethod","type","this","constructor","brand","encryptedCardNumber","state","data","encryptedSecurityCode","isValid","icon","brandsConfiguration","resources","getImage","displayName","name","balanceCheck","onBalanceCheck","submit","showValidation","makeSubmitCall","super","render","h","CoreProvider","i18n","loadingContext","GiftcardComponent","ref","componentRef","handleKeyPress","showPayButton","onChange","setState","makeBalanceCheck","makePayment","payButton","args","_define_property","handleBalanceCheck","Promise","resolve","reject","session","checkBalance","onOrderRequest","createOrder","setStatus","then","balance","transactionLimit","Error","currency","amount","value","order","orderData","pspReference","handleOnRequiringConfirmation","catch","error","message","onError","AdyenCheckoutError","handleError","setBalance","onRequiringConfirmation","PayButton","TxVariants","giftcard","defaultProps"],"mappings":"ugBAUO,MAAMA,UAAwBC,EAOjCC,WAAAA,CAAYC,GACR,MAAO,IACAA,GAAOC,iBACPD,EAEX,CAEAE,UAAAA,GACI,MAAO,CACHC,cAAe,CACXC,KAAMC,KAAKC,YAAmB,KAC9BC,MAAOF,KAAKL,MAAMO,MAClBC,oBAAqBH,KAAKI,MAAMC,MAAMF,oBACtCG,sBAAuBN,KAAKI,MAAMC,MAAMC,uBAGpD,CAEA,WAAIC,GACA,QAASP,KAAKI,MAAMG,OACxB,CAEA,QAAIC,GACA,OAAOR,KAAKL,MAAMc,oBAAoBT,KAAKL,MAAMO,QAAQM,MAAQR,KAAKL,MAAMa,MAAQR,KAAKU,UAAUC,UAAfX,CAA0BA,KAAKL,MAAMO,MAC7H,CAEA,eAAIU,GACA,OAAOZ,KAAKL,MAAMc,oBAAoBT,KAAKL,MAAMO,QAAQW,MAAQb,KAAKL,MAAMkB,IAChF,CAwBOC,YAAAA,GACH,OAAOd,KAAKe,gBAChB,CAmEOC,MAAAA,GAGH,IAAKhB,KAAKO,QAEN,OADAP,KAAKiB,kBACE,EAGXjB,KAAKc,cACT,CAGQI,cAAAA,GACJC,MAAMH,QACV,CAOAI,MAAAA,GACI,OACIC,EAACC,EAAAA,CAAaC,KAAMvB,KAAKL,MAAM4B,KAAMC,eAAgBxB,KAAKL,MAAM6B,eAAgBd,UAAWV,KAAKU,WAC5FW,EAACI,EAAAA,CACGC,IAAKA,IACD1B,KAAK2B,aAAeD,CAAAA,KAEpB1B,KAAKL,MACTiC,eAAgB5B,KAAK4B,eACrBC,cAAe7B,KAAKL,MAAMkC,cAC1BC,SAAU9B,KAAK+B,SACfC,iBAAkB,IAAMhC,KAAKe,iBAC7BkB,YAAa,IAAMjC,KAAKkB,iBACxBgB,UAAWlC,KAAKkC,YAIhC,mBAtKGf,SAqCHgB,GAAAC,EAAApC,KAAQqC,sBAAsBhC,GACtBL,KAAKL,MAAMoB,eACJ,IAAIuB,SAAQ,CAACC,EAASC,KACpBxC,KAAKL,MAAMoB,eAAewB,EAASC,EAAQnC,EAAAA,IAIpDL,KAAKL,MAAM8C,QACJzC,KAAKL,MAAM8C,QAAQC,aAAarC,QAD3C,IAKJ+B,EAAApC,KAAQ2C,kBAAiBtC,GACjBL,KAAKL,MAAMgD,eACJ,IAAIL,SAAQ,CAACC,EAASC,KACpBxC,KAAKL,MAAMgD,eAAeJ,EAASC,EAAQnC,EAAAA,IAEpDL,KAAKL,MAAM8C,QACJzC,KAAKL,MAAM8C,QAAQG,mBAD9B,IASJR,OAAQrB,kBAAiB,KAGrB,KADwBf,KAAKL,MAAM8C,SAAWzC,KAAKL,MAAMoB,gBACnC,OAAOI,MAAMH,SAEnChB,KAAK6C,UAAU,WAEf7C,KAAKqC,mBAAmBrC,KAAKH,cACxBiD,MAAK,EAAGC,UAASC,mBAAmB,CAAA,MACjC,IAAKD,EAAS,MAAM,IAAIE,MAAM,cAC9B,GAAIF,GAASG,WAAalD,KAAKL,MAAMwD,QAAQD,SAAU,MAAM,IAAID,MAAM,kBACvE,GAAIF,GAASK,OAAS,EAAG,MAAM,IAAIH,MAAM,cAEzC,OAAIjD,KAAKL,MAAMwD,OAAOC,MAAQL,EAAQK,OAASpD,KAAKL,MAAMwD,OAAOC,MAAQJ,EAAiBI,MAClFpD,KAAKL,MAAM0D,MACJrD,KAAKkB,iBAGTlB,KAAK2C,eAAe3C,KAAKK,MAAMyC,MAAMO,IACxCrD,KAAK+B,SAAS,CAAEsB,MAAO,CAAEC,UAAWD,EAAMC,UAAWC,aAAcF,EAAME,gBAClEvD,KAAKkB,oBAGTlB,KAAKwD,8BAA8BT,EAASC,EACvD,IAEHS,OAAMC,IACH1D,KAAK6C,UAAUa,GAAOC,SAAW,SAC7B3D,KAAKL,MAAMiE,UACPF,aAAiBG,EACjB7D,KAAK8D,YAAYJ,GAEjB1D,KAAK8D,YAAY,IAAID,EAAmB,QAASH,IAEzD,GACJ,IAMRtB,EAAApC,KAAQwD,iCAAgC,CAACT,EAASC,KAK9C,GAJAhD,KAAK2B,aAAaoC,WAAW,CAAEhB,UAASC,qBACxChD,KAAK6C,UAAU,UAGX7C,KAAKL,MAAMkC,cAAf,CAIA,IAAK7B,KAAKL,MAAMqE,wBACZ,MAAM,IAAIH,EAAmB,uBAAwB,4CAGzD,OACI,IAAIvB,SAAc,CAACC,EAASC,KACnBxC,KAAKL,MAAMqE,wBAAwBzB,EAASC,EAAAA,IAGhDM,MAAK,IAAM9C,KAAKkB,mBAEhBuC,OAAM,QAbf,CAasB,IAqB1BrB,EAAApC,KAAOkC,aAAYvC,GACR0B,EAAC4C,EAActE,MAjJ1ByC,EADS5C,EACKO,OAAOmE,EAAWC,UAEhC/B,EAHS5C,EAGQ4E,eAAe,CAC5B3D,oBAAqB,CAAA"}
@@ -1,2 +1,2 @@
1
- import{Component as t,createElement as e}from"../../../external/preact/dist/preact.js";import r from"../../internal/SecuredFields/SFP/SecuredFieldsProvider.js";import s from"../../internal/Alert/Alert.js";import a from"./GiftcardResult.js";import{useCoreContext as o}from"../../../core/Context/CoreProvider.js";import{GIFT_CARD as n}from"../../internal/SecuredFields/lib/constants.js";import{GiftCardFields as i}from"./GiftcardFields.js";function c(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}class u extends t{setStatus(t){this.setState({status:t})}render(t,{focusedElement:i,balance:c,transactionLimit:u}){const{i18n:l}=o(),d=u?.value<c?.value?u:c,p=d?.value>=this.props.amount?.value;if(d&&p)return e(a,{balance:c,transactionLimit:u,onSubmit:t.onSubmit,...t});const h=t=>{if(t.errors.encryptedCardNumber)return l.get(t.errors.encryptedCardNumber);switch(this.state.status){case"no-balance":return l.get("error.giftcard.no-balance");case"card-error":return l.get("error.giftcard.card-error");case"currency-error":return l.get("error.giftcard.currency-error");default:return null}};return e("div",{className:"adyen-checkout__giftcard"},"error"===this.state.status&&e(s,{icon:"cross"},l.get("error.message.unknown")),e(r,{...this.props,ref:t=>{this.sfp=t},onChange:this.onChange,onFocus:this.handleFocus,type:n,render:({setRootNode:t,setFocusOn:e},r)=>this.props.fieldsLayoutComponent({i18n:l,pinRequired:this.props.pinRequired,focusedElement:i,getCardErrorMessage:h,setRootNode:t,setFocusOn:e,sfpState:r})}),this.props.showPayButton&&this.props.payButton({status:this.state.status,onClick:this.props.onSubmit,label:l.get("applyGiftcard")}))}constructor(...t){super(...t),c(this,"state",{status:"ready",data:{},balance:null,transactionLimit:null,focusedElement:!1,isValid:!1}),c(this,"sfp",void 0),c(this,"onChange",(t=>{this.props.onChange({data:t.data,isValid:t.isSfpValid})})),c(this,"showValidation",(()=>{this.sfp.showValidation()})),c(this,"handleFocus",(t=>{this.setState({focusedElement:t.currentFocusObject});!0===t.focus?this.props.onFocus(t):this.props.onBlur(t)})),c(this,"setBalance",(({balance:t,transactionLimit:e})=>{this.setState({balance:t,transactionLimit:e})}))}}c(u,"defaultProps",{pinRequired:!0,expiryDateRequired:!1,onChange:()=>{},onFocus:()=>{},onBlur:()=>{},fieldsLayoutComponent:i});export{u as default};
1
+ import{Component as t,createElement as e}from"../../../external/preact/dist/preact.js";import r from"../../internal/SecuredFields/SFP/SecuredFieldsProvider.js";import s from"../../internal/Alert/Alert.js";import a from"./GiftcardResult.js";import{useCoreContext as o}from"../../../core/Context/CoreProvider.js";import{GIFT_CARD as n}from"../../internal/SecuredFields/lib/constants.js";import{GiftCardFields as i}from"./GiftcardFields.js";function u(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}class c extends t{setStatus(t){this.setState({status:t})}render(t,{focusedElement:i,balance:u,transactionLimit:c}){const{i18n:l}=o(),p=c?.value<u?.value?c:u,d=p?.value>=this.props.amount?.value;if(p&&d)return e(a,{amount:this.props.amount,balance:u,transactionLimit:c,makePayment:t.makePayment,status:this.state.status,showPayButton:this.props.showPayButton,payButton:this.props.payButton});const h=t=>{if(t.errors.encryptedCardNumber)return l.get(t.errors.encryptedCardNumber);switch(this.state.status){case"no-balance":return l.get("error.giftcard.no-balance");case"card-error":return l.get("error.giftcard.card-error");case"currency-error":return l.get("error.giftcard.currency-error");default:return null}};return e("div",{className:"adyen-checkout__giftcard"},"error"===this.state.status&&e(s,{icon:"cross"},l.get("error.message.unknown")),e(r,{...this.props,ref:t=>{this.sfp=t},onChange:this.onChange,onFocus:this.handleFocus,type:n,render:({setRootNode:t,setFocusOn:e},r)=>this.props.fieldsLayoutComponent({i18n:l,pinRequired:this.props.pinRequired,focusedElement:i,getCardErrorMessage:h,setRootNode:t,setFocusOn:e,sfpState:r})}),this.props.showPayButton&&this.props.payButton({status:this.state.status,onClick:this.props.makeBalanceCheck,label:l.get("applyGiftcard")}))}constructor(...t){super(...t),u(this,"state",{status:"ready",data:{},balance:null,transactionLimit:null,focusedElement:!1,isValid:!1}),u(this,"sfp",void 0),u(this,"onChange",(t=>{this.props.onChange({data:t.data,isValid:t.isSfpValid})})),u(this,"showValidation",(()=>{this.sfp.showValidation()})),u(this,"handleFocus",(t=>{this.setState({focusedElement:t.currentFocusObject});!0===t.focus?this.props.onFocus(t):this.props.onBlur(t)})),u(this,"setBalance",(({balance:t,transactionLimit:e})=>{this.setState({balance:t,transactionLimit:e})}))}}u(c,"defaultProps",{pinRequired:!0,expiryDateRequired:!1,onChange:()=>{},onFocus:()=>{},onBlur:()=>{},fieldsLayoutComponent:i});export{c as default};
2
2
  //# sourceMappingURL=GiftcardComponent.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GiftcardComponent.js","sources":["../../../../../src/components/Giftcard/components/GiftcardComponent.tsx"],"sourcesContent":["import { Component, FunctionComponent, h } from 'preact';\nimport SecuredFieldsProvider from '../../internal/SecuredFields/SFP/SecuredFieldsProvider';\nimport Alert from '../../internal/Alert';\nimport GiftcardResult from './GiftcardResult';\nimport { useCoreContext } from '../../../core/Context/CoreProvider';\nimport { PaymentAmount } from '../../../types/global-types';\nimport { GIFT_CARD } from '../../internal/SecuredFields/lib/constants';\nimport { GiftCardFields } from './GiftcardFields';\nimport { GiftcardFieldsProps, Placeholders } from './types';\n\ninterface GiftcardComponentProps {\n onChange: (state) => void;\n onFocus: (event) => void;\n onBlur: (event) => void;\n onSubmit: (event) => void;\n onBalanceCheck: (event) => void;\n\n amount?: PaymentAmount;\n showPayButton: boolean;\n payButton: (config) => any;\n\n pinRequired: boolean;\n expiryDateRequired?: boolean;\n fieldsLayoutComponent: FunctionComponent<GiftcardFieldsProps>;\n placeholders?: Placeholders;\n handleKeyPress?: (o: KeyboardEvent) => void;\n}\n\nclass Giftcard extends Component<GiftcardComponentProps> {\n public state = {\n status: 'ready',\n data: {},\n balance: null,\n transactionLimit: null,\n focusedElement: false,\n isValid: false\n };\n\n public static defaultProps = {\n pinRequired: true,\n expiryDateRequired: false,\n onChange: () => {},\n onFocus: () => {},\n onBlur: () => {},\n fieldsLayoutComponent: GiftCardFields\n };\n\n public sfp;\n\n public onChange = sfpState => {\n this.props.onChange({\n data: sfpState.data,\n isValid: sfpState.isSfpValid\n });\n };\n\n public showValidation = () => {\n this.sfp.showValidation();\n };\n\n setStatus(status) {\n this.setState({ status });\n }\n\n public handleFocus = e => {\n this.setState({ focusedElement: e.currentFocusObject });\n\n const isFocused = e.focus === true;\n if (isFocused) {\n this.props.onFocus(e);\n } else {\n this.props.onBlur(e);\n }\n };\n\n public setBalance = ({ balance, transactionLimit }) => {\n this.setState({ balance, transactionLimit });\n };\n\n render(props, { focusedElement, balance, transactionLimit }) {\n const { i18n } = useCoreContext();\n\n const transactionAmount = transactionLimit?.value < balance?.value ? transactionLimit : balance;\n const hasEnoughBalance = transactionAmount?.value >= this.props.amount?.value;\n\n if (transactionAmount && hasEnoughBalance) {\n return <GiftcardResult balance={balance} transactionLimit={transactionLimit} onSubmit={props.onSubmit} {...props} />;\n }\n\n const getCardErrorMessage = sfpState => {\n if (sfpState.errors.encryptedCardNumber) return i18n.get(sfpState.errors.encryptedCardNumber);\n\n switch (this.state.status) {\n case 'no-balance':\n return i18n.get('error.giftcard.no-balance');\n case 'card-error':\n return i18n.get('error.giftcard.card-error');\n case 'currency-error':\n return i18n.get('error.giftcard.currency-error');\n default:\n return null;\n }\n };\n\n return (\n <div className=\"adyen-checkout__giftcard\">\n {this.state.status === 'error' && <Alert icon={'cross'}>{i18n.get('error.message.unknown')}</Alert>}\n\n <SecuredFieldsProvider\n {...this.props}\n ref={ref => {\n this.sfp = ref;\n }}\n onChange={this.onChange}\n onFocus={this.handleFocus}\n type={GIFT_CARD}\n render={({ setRootNode, setFocusOn }, sfpState) =>\n this.props.fieldsLayoutComponent({\n i18n: i18n,\n pinRequired: this.props.pinRequired,\n focusedElement: focusedElement,\n getCardErrorMessage: getCardErrorMessage,\n setRootNode: setRootNode,\n setFocusOn: setFocusOn,\n sfpState: sfpState\n })\n }\n />\n\n {this.props.showPayButton &&\n this.props.payButton({\n status: this.state.status,\n onClick: this.props.onSubmit,\n label: i18n.get('applyGiftcard')\n })}\n </div>\n );\n }\n}\n\nexport default Giftcard;\n"],"names":["Giftcard","Component","setStatus","status","this","setState","render","props","focusedElement","balance","transactionLimit","i18n","useCoreContext","transactionAmount","value","hasEnoughBalance","amount","h","GiftcardResult","onSubmit","getCardErrorMessage","sfpState","errors","encryptedCardNumber","get","state","div","className","Alert","icon","SecuredFieldsProvider","ref","sfp","onChange","onFocus","handleFocus","type","GIFT_CARD","setRootNode","setFocusOn","fieldsLayoutComponent","pinRequired","showPayButton","payButton","onClick","label","super","args","_define_property","data","isValid","isSfpValid","showValidation","e","currentFocusObject","focus","onBlur","setBalance","defaultProps","expiryDateRequired","GiftCardFields"],"mappings":"8iBA4BA,MAAMA,UAAiBC,EAgCnBC,SAAAA,CAAUC,GACNC,KAAKC,SAAS,CAAEF,UACpB,CAiBAG,MAAAA,CAAOC,GAAOC,eAAEA,EAAcC,QAAEA,EAAOC,iBAAEA,IACrC,MAAMC,KAAEA,GAASC,IAEXC,EAAoBH,GAAkBI,MAAQL,GAASK,MAAQJ,EAAmBD,EAClFM,EAAmBF,GAAmBC,OAASV,KAAKG,MAAMS,QAAQF,MAExE,GAAID,GAAqBE,EACrB,OAAOE,EAACC,EAAAA,CAAeT,QAASA,EAASC,iBAAkBA,EAAkBS,SAAUZ,EAAMY,YAAcZ,IAG/G,MAAMa,EAAsBC,IACxB,GAAIA,EAASC,OAAOC,oBAAqB,OAAOZ,EAAKa,IAAIH,EAASC,OAAOC,qBAEzE,OAAQnB,KAAKqB,MAAMtB,QACf,IAAK,aACD,OAAOQ,EAAKa,IAAI,6BACpB,IAAK,aACD,OAAOb,EAAKa,IAAI,6BACpB,IAAK,iBACD,OAAOb,EAAKa,IAAI,iCACpB,QACI,OAAO,KACf,EAGJ,OACIP,EAACS,MAAAA,CAAIC,UAAU,4BACY,UAAtBvB,KAAKqB,MAAMtB,QAAsBc,EAACW,EAAAA,CAAMC,KAAM,SAAUlB,EAAKa,IAAI,0BAElEP,EAACa,EAAAA,IACO1B,KAAKG,MACTwB,IAAKA,IACD3B,KAAK4B,IAAMD,CAAAA,EAEfE,SAAU7B,KAAK6B,SACfC,QAAS9B,KAAK+B,YACdC,KAAMC,EACN/B,OAAQ,EAAGgC,cAAaC,cAAclB,IAClCjB,KAAKG,MAAMiC,sBAAsB,CAC7B7B,KAAMA,EACN8B,YAAarC,KAAKG,MAAMkC,YACxBjC,eAAgBA,EAChBY,oBAAqBA,EACrBkB,YAAaA,EACbC,WAAYA,EACZlB,SAAUA,MAKrBjB,KAAKG,MAAMmC,eACRtC,KAAKG,MAAMoC,UAAU,CACjBxC,OAAQC,KAAKqB,MAAMtB,OACnByC,QAASxC,KAAKG,MAAMY,SACpB0B,MAAOlC,EAAKa,IAAI,mBAIpC,mBA7GJsB,SAAAC,GACIC,OAAOvB,QAAQ,CACXtB,OAAQ,QACR8C,KAAM,CAAC,EACPxC,QAAS,KACTC,iBAAkB,KAClBF,gBAAgB,EAChB0C,SAAS,IAYbF,OAAOhB,WAAP,GAEAgB,EAAA5C,KAAO6B,YAAWZ,IACdjB,KAAKG,MAAM0B,SAAS,CAChBgB,KAAM5B,EAAS4B,KACfC,QAAS7B,EAAS8B,YACtB,IAGJH,OAAOI,kBAAiB,KACpBhD,KAAK4B,IAAIoB,gBAAc,IAO3BJ,EAAA5C,KAAO+B,eAAckB,IACjBjD,KAAKC,SAAS,CAAEG,eAAgB6C,EAAEC,sBAEJ,IAAZD,EAAEE,MAEhBnD,KAAKG,MAAM2B,QAAQmB,GAEnBjD,KAAKG,MAAMiD,OAAOH,EACtB,IAGJL,OAAOS,cAAa,EAAGhD,UAASC,uBAC5BN,KAAKC,SAAS,CAAEI,UAASC,oBAAiB,KAtC9CsC,EAVEhD,EAUY0D,eAAe,CACzBjB,aAAa,EACbkB,oBAAoB,EACpB1B,SAAU,OACVC,QAAS,OACTsB,OAAQ,OACRhB,sBAAuBoB"}
1
+ {"version":3,"file":"GiftcardComponent.js","sources":["../../../../../src/components/Giftcard/components/GiftcardComponent.tsx"],"sourcesContent":["import { Component, FunctionComponent, h } from 'preact';\nimport SecuredFieldsProvider from '../../internal/SecuredFields/SFP/SecuredFieldsProvider';\nimport Alert from '../../internal/Alert';\nimport GiftcardResult from './GiftcardResult';\nimport { useCoreContext } from '../../../core/Context/CoreProvider';\nimport { PaymentAmount } from '../../../types/global-types';\nimport { GIFT_CARD } from '../../internal/SecuredFields/lib/constants';\nimport { GiftCardFields } from './GiftcardFields';\nimport { GiftcardFieldsProps, Placeholders } from './types';\n\ninterface GiftcardComponentProps {\n onChange: (state) => void;\n onFocus: (event) => void;\n onBlur: (event) => void;\n\n makeBalanceCheck: (event) => void;\n makePayment: (event) => void;\n\n amount?: PaymentAmount;\n showPayButton: boolean;\n payButton: (config) => any;\n\n pinRequired: boolean;\n expiryDateRequired?: boolean;\n fieldsLayoutComponent: FunctionComponent<GiftcardFieldsProps>;\n placeholders?: Placeholders;\n handleKeyPress?: (o: KeyboardEvent) => void;\n}\n\nclass Giftcard extends Component<GiftcardComponentProps> {\n public state = {\n status: 'ready',\n data: {},\n balance: null,\n transactionLimit: null,\n focusedElement: false,\n isValid: false\n };\n\n public static defaultProps = {\n pinRequired: true,\n expiryDateRequired: false,\n onChange: () => {},\n onFocus: () => {},\n onBlur: () => {},\n fieldsLayoutComponent: GiftCardFields\n };\n\n public sfp;\n\n public onChange = sfpState => {\n this.props.onChange({\n data: sfpState.data,\n isValid: sfpState.isSfpValid\n });\n };\n\n public showValidation = () => {\n this.sfp.showValidation();\n };\n\n setStatus(status) {\n this.setState({ status });\n }\n\n public handleFocus = e => {\n this.setState({ focusedElement: e.currentFocusObject });\n\n const isFocused = e.focus === true;\n if (isFocused) {\n this.props.onFocus(e);\n } else {\n this.props.onBlur(e);\n }\n };\n\n public setBalance = ({ balance, transactionLimit }) => {\n this.setState({ balance, transactionLimit });\n };\n\n render(props, { focusedElement, balance, transactionLimit }) {\n const { i18n } = useCoreContext();\n\n const transactionAmount = transactionLimit?.value < balance?.value ? transactionLimit : balance;\n const hasEnoughBalance = transactionAmount?.value >= this.props.amount?.value;\n\n if (transactionAmount && hasEnoughBalance) {\n return (\n <GiftcardResult\n amount={this.props.amount}\n balance={balance}\n transactionLimit={transactionLimit}\n makePayment={props.makePayment}\n status={this.state.status}\n showPayButton={this.props.showPayButton}\n payButton={this.props.payButton}\n />\n );\n }\n\n const getCardErrorMessage = sfpState => {\n if (sfpState.errors.encryptedCardNumber) return i18n.get(sfpState.errors.encryptedCardNumber);\n\n switch (this.state.status) {\n case 'no-balance':\n return i18n.get('error.giftcard.no-balance');\n case 'card-error':\n return i18n.get('error.giftcard.card-error');\n case 'currency-error':\n return i18n.get('error.giftcard.currency-error');\n default:\n return null;\n }\n };\n\n return (\n <div className=\"adyen-checkout__giftcard\">\n {this.state.status === 'error' && <Alert icon={'cross'}>{i18n.get('error.message.unknown')}</Alert>}\n\n <SecuredFieldsProvider\n {...this.props}\n ref={ref => {\n this.sfp = ref;\n }}\n onChange={this.onChange}\n onFocus={this.handleFocus}\n type={GIFT_CARD}\n render={({ setRootNode, setFocusOn }, sfpState) =>\n this.props.fieldsLayoutComponent({\n i18n: i18n,\n pinRequired: this.props.pinRequired,\n focusedElement: focusedElement,\n getCardErrorMessage: getCardErrorMessage,\n setRootNode: setRootNode,\n setFocusOn: setFocusOn,\n sfpState: sfpState\n })\n }\n />\n\n {this.props.showPayButton &&\n this.props.payButton({\n status: this.state.status,\n onClick: this.props.makeBalanceCheck,\n label: i18n.get('applyGiftcard')\n })}\n </div>\n );\n }\n}\n\nexport default Giftcard;\n"],"names":["Giftcard","Component","setStatus","status","this","setState","render","props","focusedElement","balance","transactionLimit","i18n","useCoreContext","transactionAmount","value","hasEnoughBalance","amount","h","GiftcardResult","makePayment","state","showPayButton","payButton","getCardErrorMessage","sfpState","errors","encryptedCardNumber","get","div","className","Alert","icon","SecuredFieldsProvider","ref","sfp","onChange","onFocus","handleFocus","type","GIFT_CARD","setRootNode","setFocusOn","fieldsLayoutComponent","pinRequired","onClick","makeBalanceCheck","label","super","args","_define_property","data","isValid","isSfpValid","showValidation","e","currentFocusObject","focus","onBlur","setBalance","defaultProps","expiryDateRequired","GiftCardFields"],"mappings":"8iBA6BA,MAAMA,UAAiBC,EAgCnBC,SAAAA,CAAUC,GACNC,KAAKC,SAAS,CAAEF,UACpB,CAiBAG,MAAAA,CAAOC,GAAOC,eAAEA,EAAcC,QAAEA,EAAOC,iBAAEA,IACrC,MAAMC,KAAEA,GAASC,IAEXC,EAAoBH,GAAkBI,MAAQL,GAASK,MAAQJ,EAAmBD,EAClFM,EAAmBF,GAAmBC,OAASV,KAAKG,MAAMS,QAAQF,MAExE,GAAID,GAAqBE,EACrB,OACIE,EAACC,EAAAA,CACGF,OAAQZ,KAAKG,MAAMS,OACnBP,QAASA,EACTC,iBAAkBA,EAClBS,YAAaZ,EAAMY,YACnBhB,OAAQC,KAAKgB,MAAMjB,OACnBkB,cAAejB,KAAKG,MAAMc,cAC1BC,UAAWlB,KAAKG,MAAMe,YAKlC,MAAMC,EAAsBC,IACxB,GAAIA,EAASC,OAAOC,oBAAqB,OAAOf,EAAKgB,IAAIH,EAASC,OAAOC,qBAEzE,OAAQtB,KAAKgB,MAAMjB,QACf,IAAK,aACD,OAAOQ,EAAKgB,IAAI,6BACpB,IAAK,aACD,OAAOhB,EAAKgB,IAAI,6BACpB,IAAK,iBACD,OAAOhB,EAAKgB,IAAI,iCACpB,QACI,OAAO,KACf,EAGJ,OACIV,EAACW,MAAAA,CAAIC,UAAU,4BACY,UAAtBzB,KAAKgB,MAAMjB,QAAsBc,EAACa,EAAAA,CAAMC,KAAM,SAAUpB,EAAKgB,IAAI,0BAElEV,EAACe,EAAAA,IACO5B,KAAKG,MACT0B,IAAKA,IACD7B,KAAK8B,IAAMD,CAAAA,EAEfE,SAAU/B,KAAK+B,SACfC,QAAShC,KAAKiC,YACdC,KAAMC,EACNjC,OAAQ,EAAGkC,cAAaC,cAAcjB,IAClCpB,KAAKG,MAAMmC,sBAAsB,CAC7B/B,KAAMA,EACNgC,YAAavC,KAAKG,MAAMoC,YACxBnC,eAAgBA,EAChBe,oBAAqBA,EACrBiB,YAAaA,EACbC,WAAYA,EACZjB,SAAUA,MAKrBpB,KAAKG,MAAMc,eACRjB,KAAKG,MAAMe,UAAU,CACjBnB,OAAQC,KAAKgB,MAAMjB,OACnByC,QAASxC,KAAKG,MAAMsC,iBACpBC,MAAOnC,EAAKgB,IAAI,mBAIpC,mBAvHJoB,SAAAC,GACIC,OAAO7B,QAAQ,CACXjB,OAAQ,QACR+C,KAAM,CAAC,EACPzC,QAAS,KACTC,iBAAkB,KAClBF,gBAAgB,EAChB2C,SAAS,IAYbF,OAAOf,WAAP,GAEAe,EAAA7C,KAAO+B,YAAWX,IACdpB,KAAKG,MAAM4B,SAAS,CAChBe,KAAM1B,EAAS0B,KACfC,QAAS3B,EAAS4B,YACtB,IAGJH,OAAOI,kBAAiB,KACpBjD,KAAK8B,IAAImB,gBAAc,IAO3BJ,EAAA7C,KAAOiC,eAAciB,IACjBlD,KAAKC,SAAS,CAAEG,eAAgB8C,EAAEC,sBAEJ,IAAZD,EAAEE,MAEhBpD,KAAKG,MAAM6B,QAAQkB,GAEnBlD,KAAKG,MAAMkD,OAAOH,EACtB,IAGJL,OAAOS,cAAa,EAAGjD,UAASC,uBAC5BN,KAAKC,SAAS,CAAEI,UAASC,oBAAiB,KAtC9CuC,EAVEjD,EAUY2D,eAAe,CACzBhB,aAAa,EACbiB,oBAAoB,EACpBzB,SAAU,OACVC,QAAS,OACTqB,OAAQ,OACRf,sBAAuBmB"}
@@ -1,2 +1,2 @@
1
- import e from"../../Card/components/CardInput/components/DataSfSpan.js";import r from"../../../external/classnames/index.js";import t from"../../internal/FormFields/Field/Field.js";import{createElement as a}from"../../../external/preact/dist/preact.js";import{alternativeLabelContent as n}from"../../Card/components/CardInput/components/FieldLabelAlternative.js";const d=({i18n:d,classNameModifiers:o,sfpState:c,getCardErrorMessage:s,focusedElement:m,setFocusOn:i})=>a(t,{label:d.get("giftcard.cardNumber.label"),classNameModifiers:["number",...o],errorMessage:s(c),focused:"encryptedCardNumber"===m,onFocusField:()=>i("encryptedCardNumber"),dir:"ltr",name:"encryptedCardNumber",contextVisibleToScreenReader:!1,useLabelElement:!1,renderAlternativeToLabel:n},a(e,{encryptedFieldType:"encryptedCardNumber","data-info":'{"length":"15-32", "maskInterval":4}',className:r({"adyen-checkout__input":!0,"adyen-checkout__input--large":!0,"adyen-checkout__card__cardNumber__input":!0,"adyen-checkout__input--error":s(c),"adyen-checkout__input--focus":"encryptedCardNumber"===m})}));export{d as GiftcardNumberField};
1
+ import e from"../../Card/components/CardInput/components/DataSfSpan.js";import r from"../../../_virtual/index.js";import t from"../../internal/FormFields/Field/Field.js";import{createElement as a}from"../../../external/preact/dist/preact.js";import{alternativeLabelContent as n}from"../../Card/components/CardInput/components/FieldLabelAlternative.js";const d=({i18n:d,classNameModifiers:o,sfpState:c,getCardErrorMessage:s,focusedElement:i,setFocusOn:m})=>a(t,{label:d.get("giftcard.cardNumber.label"),classNameModifiers:["number",...o],errorMessage:s(c),focused:"encryptedCardNumber"===i,onFocusField:()=>m("encryptedCardNumber"),dir:"ltr",name:"encryptedCardNumber",contextVisibleToScreenReader:!1,useLabelElement:!1,renderAlternativeToLabel:n},a(e,{encryptedFieldType:"encryptedCardNumber","data-info":'{"length":"15-32", "maskInterval":4}',className:r({"adyen-checkout__input":!0,"adyen-checkout__input--large":!0,"adyen-checkout__card__cardNumber__input":!0,"adyen-checkout__input--error":s(c),"adyen-checkout__input--focus":"encryptedCardNumber"===i})}));export{d as GiftcardNumberField};
2
2
  //# sourceMappingURL=GiftcardNumberField.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GiftcardNumberField.js","sources":["../../../../../src/components/Giftcard/components/GiftcardNumberField.tsx"],"sourcesContent":["import DataSfSpan from '../../Card/components/CardInput/components/DataSfSpan';\nimport classNames from 'classnames';\nimport Field from '../../internal/FormFields/Field';\nimport { h } from 'preact';\nimport { GiftcardFieldProps } from './types';\nimport { alternativeLabelContent } from '../../Card/components/CardInput/components/FieldLabelAlternative';\n\nexport const GiftcardNumberField = ({ i18n, classNameModifiers, sfpState, getCardErrorMessage, focusedElement, setFocusOn }: GiftcardFieldProps) => {\n return (\n <Field\n label={i18n.get('giftcard.cardNumber.label')}\n classNameModifiers={['number', ...classNameModifiers]}\n errorMessage={getCardErrorMessage(sfpState)}\n focused={focusedElement === 'encryptedCardNumber'}\n onFocusField={() => setFocusOn('encryptedCardNumber')}\n dir={'ltr'}\n name={'encryptedCardNumber'}\n contextVisibleToScreenReader={false}\n useLabelElement={false}\n renderAlternativeToLabel={alternativeLabelContent}\n >\n <DataSfSpan\n encryptedFieldType=\"encryptedCardNumber\"\n data-info='{\"length\":\"15-32\", \"maskInterval\":4}'\n className={classNames({\n 'adyen-checkout__input': true,\n 'adyen-checkout__input--large': true,\n 'adyen-checkout__card__cardNumber__input': true,\n 'adyen-checkout__input--error': getCardErrorMessage(sfpState),\n 'adyen-checkout__input--focus': focusedElement === 'encryptedCardNumber'\n })}\n />\n </Field>\n );\n};\n"],"names":["GiftcardNumberField","i18n","classNameModifiers","sfpState","getCardErrorMessage","focusedElement","setFocusOn","h","Field","label","get","errorMessage","focused","onFocusField","dir","name","contextVisibleToScreenReader","useLabelElement","renderAlternativeToLabel","alternativeLabelContent","DataSfSpan","encryptedFieldType","data-info","className","classNames"],"mappings":"2WAOaA,MAAAA,EAAsB,EAAGC,OAAMC,qBAAoBC,WAAUC,sBAAqBC,iBAAgBC,gBAEvGC,EAACC,EAAAA,CACGC,MAAOR,EAAKS,IAAI,6BAChBR,mBAAoB,CAAC,YAAaA,GAClCS,aAAcP,EAAoBD,GAClCS,QAA4B,wBAAnBP,EACTQ,aAAc,IAAMP,EAAW,uBAC/BQ,IAAK,MACLC,KAAM,sBACNC,8BAA8B,EAC9BC,iBAAiB,EACjBC,yBAA0BC,GAE1BZ,EAACa,EAAAA,CACGC,mBAAmB,sBACnBC,YAAU,uCACVC,UAAWC,EAAW,CAClB,yBAAyB,EACzB,gCAAgC,EAChC,2CAA2C,EAC3C,+BAAgCpB,EAAoBD,GACpD,+BAAmD,wBAAnBE"}
1
+ {"version":3,"file":"GiftcardNumberField.js","sources":["../../../../../src/components/Giftcard/components/GiftcardNumberField.tsx"],"sourcesContent":["import DataSfSpan from '../../Card/components/CardInput/components/DataSfSpan';\nimport classNames from 'classnames';\nimport Field from '../../internal/FormFields/Field';\nimport { h } from 'preact';\nimport { GiftcardFieldProps } from './types';\nimport { alternativeLabelContent } from '../../Card/components/CardInput/components/FieldLabelAlternative';\n\nexport const GiftcardNumberField = ({ i18n, classNameModifiers, sfpState, getCardErrorMessage, focusedElement, setFocusOn }: GiftcardFieldProps) => {\n return (\n <Field\n label={i18n.get('giftcard.cardNumber.label')}\n classNameModifiers={['number', ...classNameModifiers]}\n errorMessage={getCardErrorMessage(sfpState)}\n focused={focusedElement === 'encryptedCardNumber'}\n onFocusField={() => setFocusOn('encryptedCardNumber')}\n dir={'ltr'}\n name={'encryptedCardNumber'}\n contextVisibleToScreenReader={false}\n useLabelElement={false}\n renderAlternativeToLabel={alternativeLabelContent}\n >\n <DataSfSpan\n encryptedFieldType=\"encryptedCardNumber\"\n data-info='{\"length\":\"15-32\", \"maskInterval\":4}'\n className={classNames({\n 'adyen-checkout__input': true,\n 'adyen-checkout__input--large': true,\n 'adyen-checkout__card__cardNumber__input': true,\n 'adyen-checkout__input--error': getCardErrorMessage(sfpState),\n 'adyen-checkout__input--focus': focusedElement === 'encryptedCardNumber'\n })}\n />\n </Field>\n );\n};\n"],"names":["GiftcardNumberField","i18n","classNameModifiers","sfpState","getCardErrorMessage","focusedElement","setFocusOn","h","Field","label","get","errorMessage","focused","onFocusField","dir","name","contextVisibleToScreenReader","useLabelElement","renderAlternativeToLabel","alternativeLabelContent","DataSfSpan","encryptedFieldType","data-info","className","classNames"],"mappings":"gWAOaA,MAAAA,EAAsB,EAAGC,OAAMC,qBAAoBC,WAAUC,sBAAqBC,iBAAgBC,gBAEvGC,EAACC,EAAAA,CACGC,MAAOR,EAAKS,IAAI,6BAChBR,mBAAoB,CAAC,YAAaA,GAClCS,aAAcP,EAAoBD,GAClCS,QAA4B,wBAAnBP,EACTQ,aAAc,IAAMP,EAAW,uBAC/BQ,IAAK,MACLC,KAAM,sBACNC,8BAA8B,EAC9BC,iBAAiB,EACjBC,yBAA0BC,GAE1BZ,EAACa,EAAAA,CACGC,mBAAmB,sBACnBC,YAAU,uCACVC,UAAWC,EAAW,CAClB,yBAAyB,EACzB,gCAAgC,EAChC,2CAA2C,EAC3C,+BAAgCpB,EAAoBD,GACpD,+BAAmD,wBAAnBE"}
@@ -1,2 +1,2 @@
1
- import e from"../../Card/components/CardInput/components/DataSfSpan.js";import r from"../../../external/classnames/index.js";import t from"../../internal/FormFields/Field/Field.js";import{createElement as n}from"../../../external/preact/dist/preact.js";import{alternativeLabelContent as o}from"../../Card/components/CardInput/components/FieldLabelAlternative.js";const c=({i18n:c,classNameModifiers:a,sfpState:d,focusedElement:i,setFocusOn:s,label:p=c.get("creditCard.pin.label")})=>n(t,{label:p,classNameModifiers:["pin",...a],errorMessage:d.errors.encryptedSecurityCode&&c.get(d.errors.encryptedSecurityCode),focused:"encryptedSecurityCode"===i,onFocusField:()=>s("encryptedSecurityCode"),dir:"ltr",name:"encryptedSecurityCode",contextVisibleToScreenReader:!1,useLabelElement:!1,renderAlternativeToLabel:o},n(e,{encryptedFieldType:"encryptedSecurityCode","data-info":'{"length":"3-10", "maskInterval": 0}',className:r({"adyen-checkout__input":!0,"adyen-checkout__input--large":!0,"adyen-checkout__card__cvc__input":!0,"adyen-checkout__input--error":d.errors.encryptedSecurityCode,"adyen-checkout__input--focus":"encryptedSecurityCode"===i})}));export{c as GiftcardPinField};
1
+ import e from"../../Card/components/CardInput/components/DataSfSpan.js";import r from"../../../_virtual/index.js";import t from"../../internal/FormFields/Field/Field.js";import{createElement as n}from"../../../external/preact/dist/preact.js";import{alternativeLabelContent as o}from"../../Card/components/CardInput/components/FieldLabelAlternative.js";const c=({i18n:c,classNameModifiers:d,sfpState:a,focusedElement:i,setFocusOn:s,label:p=c.get("creditCard.pin.label")})=>n(t,{label:p,classNameModifiers:["pin",...d],errorMessage:a.errors.encryptedSecurityCode&&c.get(a.errors.encryptedSecurityCode),focused:"encryptedSecurityCode"===i,onFocusField:()=>s("encryptedSecurityCode"),dir:"ltr",name:"encryptedSecurityCode",contextVisibleToScreenReader:!1,useLabelElement:!1,renderAlternativeToLabel:o},n(e,{encryptedFieldType:"encryptedSecurityCode","data-info":'{"length":"3-10", "maskInterval": 0}',className:r({"adyen-checkout__input":!0,"adyen-checkout__input--large":!0,"adyen-checkout__card__cvc__input":!0,"adyen-checkout__input--error":a.errors.encryptedSecurityCode,"adyen-checkout__input--focus":"encryptedSecurityCode"===i})}));export{c as GiftcardPinField};
2
2
  //# sourceMappingURL=GiftcardPinField.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GiftcardPinField.js","sources":["../../../../../src/components/Giftcard/components/GiftcardPinField.tsx"],"sourcesContent":["import DataSfSpan from '../../Card/components/CardInput/components/DataSfSpan';\nimport classNames from 'classnames';\nimport Field from '../../internal/FormFields/Field';\nimport { h } from 'preact';\nimport { GiftcardFieldProps } from './types';\nimport { alternativeLabelContent } from '../../Card/components/CardInput/components/FieldLabelAlternative';\n\nexport const GiftcardPinField = ({\n i18n,\n classNameModifiers,\n sfpState,\n focusedElement,\n setFocusOn,\n label = i18n.get('creditCard.pin.label')\n}: GiftcardFieldProps) => {\n return (\n <Field\n label={label}\n classNameModifiers={['pin', ...classNameModifiers]}\n errorMessage={sfpState.errors.encryptedSecurityCode && i18n.get(sfpState.errors.encryptedSecurityCode)}\n focused={focusedElement === 'encryptedSecurityCode'}\n onFocusField={() => setFocusOn('encryptedSecurityCode')}\n dir={'ltr'}\n name={'encryptedSecurityCode'}\n contextVisibleToScreenReader={false}\n useLabelElement={false}\n renderAlternativeToLabel={alternativeLabelContent}\n >\n <DataSfSpan\n encryptedFieldType=\"encryptedSecurityCode\"\n data-info='{\"length\":\"3-10\", \"maskInterval\": 0}'\n className={classNames({\n 'adyen-checkout__input': true,\n 'adyen-checkout__input--large': true,\n 'adyen-checkout__card__cvc__input': true,\n 'adyen-checkout__input--error': sfpState.errors.encryptedSecurityCode,\n 'adyen-checkout__input--focus': focusedElement === 'encryptedSecurityCode'\n })}\n />\n </Field>\n );\n};\n"],"names":["GiftcardPinField","i18n","classNameModifiers","sfpState","focusedElement","setFocusOn","label","get","h","Field","errorMessage","errors","encryptedSecurityCode","focused","onFocusField","dir","name","contextVisibleToScreenReader","useLabelElement","renderAlternativeToLabel","alternativeLabelContent","DataSfSpan","encryptedFieldType","data-info","className","classNames"],"mappings":"iXAOaA,EAAmB,EAC5BC,OACAC,qBACAC,WACAC,iBACAC,aACAC,QAAQL,EAAKM,IAAI,2BAGbC,EAACC,EAAAA,CACGH,MAAOA,EACPJ,mBAAoB,CAAC,SAAUA,GAC/BQ,aAAcP,EAASQ,OAAOC,uBAAyBX,EAAKM,IAAIJ,EAASQ,OAAOC,uBAChFC,QAA4B,0BAAnBT,EACTU,aAAc,IAAMT,EAAW,yBAC/BU,IAAK,MACLC,KAAM,wBACNC,8BAA8B,EAC9BC,iBAAiB,EACjBC,yBAA0BC,GAE1BZ,EAACa,EAAAA,CACGC,mBAAmB,wBACnBC,YAAU,uCACVC,UAAWC,EAAW,CAClB,yBAAyB,EACzB,gCAAgC,EAChC,oCAAoC,EACpC,+BAAgCtB,EAASQ,OAAOC,sBAChD,+BAAmD,0BAAnBR"}
1
+ {"version":3,"file":"GiftcardPinField.js","sources":["../../../../../src/components/Giftcard/components/GiftcardPinField.tsx"],"sourcesContent":["import DataSfSpan from '../../Card/components/CardInput/components/DataSfSpan';\nimport classNames from 'classnames';\nimport Field from '../../internal/FormFields/Field';\nimport { h } from 'preact';\nimport { GiftcardFieldProps } from './types';\nimport { alternativeLabelContent } from '../../Card/components/CardInput/components/FieldLabelAlternative';\n\nexport const GiftcardPinField = ({\n i18n,\n classNameModifiers,\n sfpState,\n focusedElement,\n setFocusOn,\n label = i18n.get('creditCard.pin.label')\n}: GiftcardFieldProps) => {\n return (\n <Field\n label={label}\n classNameModifiers={['pin', ...classNameModifiers]}\n errorMessage={sfpState.errors.encryptedSecurityCode && i18n.get(sfpState.errors.encryptedSecurityCode)}\n focused={focusedElement === 'encryptedSecurityCode'}\n onFocusField={() => setFocusOn('encryptedSecurityCode')}\n dir={'ltr'}\n name={'encryptedSecurityCode'}\n contextVisibleToScreenReader={false}\n useLabelElement={false}\n renderAlternativeToLabel={alternativeLabelContent}\n >\n <DataSfSpan\n encryptedFieldType=\"encryptedSecurityCode\"\n data-info='{\"length\":\"3-10\", \"maskInterval\": 0}'\n className={classNames({\n 'adyen-checkout__input': true,\n 'adyen-checkout__input--large': true,\n 'adyen-checkout__card__cvc__input': true,\n 'adyen-checkout__input--error': sfpState.errors.encryptedSecurityCode,\n 'adyen-checkout__input--focus': focusedElement === 'encryptedSecurityCode'\n })}\n />\n </Field>\n );\n};\n"],"names":["GiftcardPinField","i18n","classNameModifiers","sfpState","focusedElement","setFocusOn","label","get","h","Field","errorMessage","errors","encryptedSecurityCode","focused","onFocusField","dir","name","contextVisibleToScreenReader","useLabelElement","renderAlternativeToLabel","alternativeLabelContent","DataSfSpan","encryptedFieldType","data-info","className","classNames"],"mappings":"sWAOaA,EAAmB,EAC5BC,OACAC,qBACAC,WACAC,iBACAC,aACAC,QAAQL,EAAKM,IAAI,2BAGbC,EAACC,EAAAA,CACGH,MAAOA,EACPJ,mBAAoB,CAAC,SAAUA,GAC/BQ,aAAcP,EAASQ,OAAOC,uBAAyBX,EAAKM,IAAIJ,EAASQ,OAAOC,uBAChFC,QAA4B,0BAAnBT,EACTU,aAAc,IAAMT,EAAW,yBAC/BU,IAAK,MACLC,KAAM,wBACNC,8BAA8B,EAC9BC,iBAAiB,EACjBC,yBAA0BC,GAE1BZ,EAACa,EAAAA,CACGC,mBAAmB,wBACnBC,YAAU,uCACVC,UAAWC,EAAW,CAClB,yBAAyB,EACzB,gCAAgC,EAChC,oCAAoC,EACpC,+BAAgCtB,EAASQ,OAAOC,sBAChD,+BAAmD,0BAAnBR"}
@@ -1,2 +1,2 @@
1
- import{createElement as a}from"../../../external/preact/dist/preact.js";import{useCoreContext as e}from"../../../core/Context/CoreProvider.js";function t({brand:t,amount:c,balance:n,transactionLimit:l,...r}){const{i18n:_}=e(),u=c.value>l?.value?l:c,s=n?.value-u?.value;return a("div",{className:"adyen-checkout__giftcard-result"},a("ul",{className:"adyen-checkout__giftcard-result__balance"},a("li",{className:"adyen-checkout__giftcard-result__balance__item"},a("span",{className:"adyen-checkout__giftcard-result__balance__title"},_.get("giftcardBalance")),a("span",{className:"adyen-checkout__giftcard-result__balance__value adyen-checkout__giftcard-result__balance__value--amount"},_.amount(n.value,n.currency))),l&&l.value&&a("li",{className:"adyen-checkout__giftcard-result__balance__item"},a("span",{className:"adyen-checkout__giftcard-result__balance__title adyen-checkout__giftcard-result__balance__title--transactionLimit"},_.get("giftcardTransactionLimit",{values:{amount:_.amount(l.value,l.currency)}})))),this.props.showPayButton&&this.props.payButton({amount:u,status:r.status,onClick:r.onSubmit}),a("p",{className:"adyen-checkout__giftcard-result__remaining-balance"},_.get("partialPayment.remainingBalance",{values:{amount:_.amount(s,n.currency)}})))}export{t as default};
1
+ import{createElement as a}from"../../../external/preact/dist/preact.js";import{useCoreContext as e}from"../../../core/Context/CoreProvider.js";function t({amount:t,balance:c,transactionLimit:n,status:l,makePayment:_,showPayButton:u,payButton:r}){const{i18n:s}=e(),i=t.value>n?.value?n:t,o=c?.value-i?.value;return a("div",{className:"adyen-checkout__giftcard-result"},a("ul",{className:"adyen-checkout__giftcard-result__balance"},a("li",{className:"adyen-checkout__giftcard-result__balance__item"},a("span",{className:"adyen-checkout__giftcard-result__balance__title"},s.get("giftcardBalance")),a("span",{className:"adyen-checkout__giftcard-result__balance__value adyen-checkout__giftcard-result__balance__value--amount"},s.amount(c.value,c.currency))),n&&n.value&&a("li",{className:"adyen-checkout__giftcard-result__balance__item"},a("span",{className:"adyen-checkout__giftcard-result__balance__title adyen-checkout__giftcard-result__balance__title--transactionLimit"},s.get("giftcardTransactionLimit",{values:{amount:s.amount(n.value,n.currency)}})))),u&&r({amount:i,status:l,onClick:_}),a("p",{className:"adyen-checkout__giftcard-result__remaining-balance"},s.get("partialPayment.remainingBalance",{values:{amount:s.amount(o,c.currency)}})))}export{t as default};
2
2
  //# sourceMappingURL=GiftcardResult.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GiftcardResult.js","sources":["../../../../../src/components/Giftcard/components/GiftcardResult.tsx"],"sourcesContent":["import { h } from 'preact';\nimport './GiftcardResult.scss';\nimport { useCoreContext } from '../../../core/Context/CoreProvider';\n\nfunction GiftcardResult({ brand, amount, balance, transactionLimit, ...props }) {\n const { i18n } = useCoreContext();\n const transactionAmount = amount.value > transactionLimit?.value ? transactionLimit : amount;\n const remainingBalance = balance?.value - transactionAmount?.value;\n\n return (\n <div className=\"adyen-checkout__giftcard-result\">\n <ul className=\"adyen-checkout__giftcard-result__balance\">\n <li className=\"adyen-checkout__giftcard-result__balance__item\">\n <span className=\"adyen-checkout__giftcard-result__balance__title\">{i18n.get('giftcardBalance')}</span>\n <span className=\"adyen-checkout__giftcard-result__balance__value adyen-checkout__giftcard-result__balance__value--amount\">\n {i18n.amount(balance.value, balance.currency)}\n </span>\n </li>\n {transactionLimit && transactionLimit.value && (\n <li className=\"adyen-checkout__giftcard-result__balance__item\">\n <span className=\"adyen-checkout__giftcard-result__balance__title adyen-checkout__giftcard-result__balance__title--transactionLimit\">\n {i18n.get('giftcardTransactionLimit', {\n values: { amount: i18n.amount(transactionLimit.value, transactionLimit.currency) }\n })}\n </span>\n </li>\n )}\n </ul>\n\n {this.props.showPayButton &&\n this.props.payButton({\n amount: transactionAmount,\n status: props.status,\n onClick: props.onSubmit\n })}\n\n <p className=\"adyen-checkout__giftcard-result__remaining-balance\">\n {i18n.get('partialPayment.remainingBalance', {\n values: { amount: i18n.amount(remainingBalance, balance.currency) }\n })}\n </p>\n </div>\n );\n}\n\nexport default GiftcardResult;\n"],"names":["GiftcardResult","brand","amount","balance","transactionLimit","props","i18n","useCoreContext","transactionAmount","value","remainingBalance","h","div","className","ul","li","span","get","currency","values","this","showPayButton","payButton","status","onClick","onSubmit","p"],"mappings":"+IAIA,SAASA,GAAeC,MAAEA,EAAKC,OAAEA,EAAMC,QAAEA,EAAOC,iBAAEA,KAAqBC,IACnE,MAAMC,KAAEA,GAASC,IACXC,EAAoBN,EAAOO,MAAQL,GAAkBK,MAAQL,EAAmBF,EAChFQ,EAAmBP,GAASM,MAAQD,GAAmBC,MAE7D,OACIE,EAACC,MAAAA,CAAIC,UAAU,mCACXF,EAACG,KAAAA,CAAGD,UAAU,4CACVF,EAACI,KAAAA,CAAGF,UAAU,kDACVF,EAACK,OAAAA,CAAKH,UAAU,mDAAmDP,EAAKW,IAAI,oBAC5EN,EAACK,OAAAA,CAAKH,UAAU,2GACXP,EAAKJ,OAAOC,EAAQM,MAAON,EAAQe,YAG3Cd,GAAoBA,EAAiBK,OAClCE,EAACI,KAAAA,CAAGF,UAAU,kDACVF,EAACK,OAAAA,CAAKH,UAAU,qHACXP,EAAKW,IAAI,2BAA4B,CAClCE,OAAQ,CAAEjB,OAAQI,EAAKJ,OAAOE,EAAiBK,MAAOL,EAAiBc,gBAO1FE,KAAKf,MAAMgB,eACRD,KAAKf,MAAMiB,UAAU,CACjBpB,OAAQM,EACRe,OAAQlB,EAAMkB,OACdC,QAASnB,EAAMoB,WAGvBd,EAACe,IAAAA,CAAEb,UAAU,sDACRP,EAAKW,IAAI,kCAAmC,CACzCE,OAAQ,CAAEjB,OAAQI,EAAKJ,OAAOQ,EAAkBP,EAAQe,cAK5E"}
1
+ {"version":3,"file":"GiftcardResult.js","sources":["../../../../../src/components/Giftcard/components/GiftcardResult.tsx"],"sourcesContent":["import { h } from 'preact';\nimport './GiftcardResult.scss';\nimport { useCoreContext } from '../../../core/Context/CoreProvider';\nimport { PaymentAmount } from '../../../types/global-types';\nimport { PayButtonProps } from '../../internal/PayButton/PayButton';\n\ninterface GiftcardResultProps {\n amount: PaymentAmount;\n balance: PaymentAmount;\n transactionLimit: PaymentAmount;\n status: string;\n makePayment: () => void;\n showPayButton: boolean;\n payButton(props?: PayButtonProps): h.JSX.Element;\n}\n\nfunction GiftcardResult({ amount, balance, transactionLimit, status, makePayment, showPayButton, payButton }: GiftcardResultProps) {\n const { i18n } = useCoreContext();\n const transactionAmount = amount.value > transactionLimit?.value ? transactionLimit : amount;\n const remainingBalance = balance?.value - transactionAmount?.value;\n\n return (\n <div className=\"adyen-checkout__giftcard-result\">\n <ul className=\"adyen-checkout__giftcard-result__balance\">\n <li className=\"adyen-checkout__giftcard-result__balance__item\">\n <span className=\"adyen-checkout__giftcard-result__balance__title\">{i18n.get('giftcardBalance')}</span>\n <span className=\"adyen-checkout__giftcard-result__balance__value adyen-checkout__giftcard-result__balance__value--amount\">\n {i18n.amount(balance.value, balance.currency)}\n </span>\n </li>\n {transactionLimit && transactionLimit.value && (\n <li className=\"adyen-checkout__giftcard-result__balance__item\">\n <span className=\"adyen-checkout__giftcard-result__balance__title adyen-checkout__giftcard-result__balance__title--transactionLimit\">\n {i18n.get('giftcardTransactionLimit', {\n values: { amount: i18n.amount(transactionLimit.value, transactionLimit.currency) }\n })}\n </span>\n </li>\n )}\n </ul>\n\n {showPayButton &&\n payButton({\n amount: transactionAmount,\n status: status,\n onClick: makePayment\n })}\n\n <p className=\"adyen-checkout__giftcard-result__remaining-balance\">\n {i18n.get('partialPayment.remainingBalance', {\n values: { amount: i18n.amount(remainingBalance, balance.currency) }\n })}\n </p>\n </div>\n );\n}\n\nexport default GiftcardResult;\n"],"names":["GiftcardResult","amount","balance","transactionLimit","status","makePayment","showPayButton","payButton","i18n","useCoreContext","transactionAmount","value","remainingBalance","h","div","className","ul","li","span","get","currency","values","onClick","p"],"mappings":"+IAgBA,SAASA,GAAeC,OAAEA,EAAMC,QAAEA,EAAOC,iBAAEA,EAAgBC,OAAEA,EAAMC,YAAEA,EAAWC,cAAEA,EAAaC,UAAEA,IAC7F,MAAMC,KAAEA,GAASC,IACXC,EAAoBT,EAAOU,MAAQR,GAAkBQ,MAAQR,EAAmBF,EAChFW,EAAmBV,GAASS,MAAQD,GAAmBC,MAE7D,OACIE,EAACC,MAAAA,CAAIC,UAAU,mCACXF,EAACG,KAAAA,CAAGD,UAAU,4CACVF,EAACI,KAAAA,CAAGF,UAAU,kDACVF,EAACK,OAAAA,CAAKH,UAAU,mDAAmDP,EAAKW,IAAI,oBAC5EN,EAACK,OAAAA,CAAKH,UAAU,2GACXP,EAAKP,OAAOC,EAAQS,MAAOT,EAAQkB,YAG3CjB,GAAoBA,EAAiBQ,OAClCE,EAACI,KAAAA,CAAGF,UAAU,kDACVF,EAACK,OAAAA,CAAKH,UAAU,qHACXP,EAAKW,IAAI,2BAA4B,CAClCE,OAAQ,CAAEpB,OAAQO,EAAKP,OAAOE,EAAiBQ,MAAOR,EAAiBiB,gBAO1Fd,GACGC,EAAU,CACNN,OAAQS,EACRN,OAAQA,EACRkB,QAASjB,IAGjBQ,EAACU,IAAAA,CAAER,UAAU,sDACRP,EAAKW,IAAI,kCAAmC,CACzCE,OAAQ,CAAEpB,OAAQO,EAAKP,OAAOW,EAAkBV,EAAQkB,cAK5E"}
@@ -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"./GooglePayService.js";import s from"./components/GooglePayButton.js";import r from"./defaultProps.js";import{getGooglePayLocale as n,formatGooglePayContactToAdyenAddressFormat as i}from"./utils.js";import a from"../../utils/browserInfo.js";import l from"../../core/Errors/AdyenCheckoutError.js";import{TxVariants as h}from"../tx-variants.js";import{sanitizeResponse as p,verifyPaymentDidNotFail as d}from"../internal/UIElement/utils.js";import{ANALYTICS_SELECTED_STR as u,ANALYTICS_INSTANT_PAYMENT_BUTTON as y}from"../../core/Analytics/constants.js";function g(t,e,o){return e in t?Object.defineProperty(t,e,{value:o,enumerable:!0,configurable:!0,writable:!0}):t[e]=o,t}class c extends e{formatProps(t){const e=t.buttonSizeMode??(t.isDropin?"fill":"static"),o=n(t.buttonLocale??t.i18n?.locale),s=[...t.callbackIntents,"PAYMENT_AUTHORIZATION"];return{...t,configuration:t.configuration,buttonSizeMode:e,buttonLocale:o,callbackIntents:s}}formatData(){const{googlePayCardNetwork:t,googlePayToken:e,billingAddress:o,deliveryAddress:s}=this.state,{isExpress:r}=this.props;return{paymentMethod:{type:this.type,googlePayCardNetwork:t,googlePayToken:e,...r&&{subtype:"express"}},browserInfo:this.browserInfo,origin:!!window&&window.location.origin,...o&&{billingAddress:o},...s&&{deliveryAddress:s}}}submitAnalytics(t){super.submitAnalytics({...t},this.props)}async handleAuthorization(){return new Promise(((t,e)=>{this.props.onAuthorized||t();const{authorizedEvent:o,billingAddress:s,deliveryAddress:r}=this.state;this.props.onAuthorized({authorizedEvent:o,...s&&{billingAddress:s},...r&&{deliveryAddress:r}},{resolve:t,reject:e})})).catch((t=>{const e={error:{googlePayError:t}};return Promise.reject(e)}))}get isValid(){return!!this.state.googlePayToken}async isAvailable(){return this.isReadyToPay().then((t=>{if(!t.result)throw new l("ERROR","GooglePay is not available");if(!1===t.paymentMethodPresent)throw new l("ERROR","GooglePay - No paymentMethodPresent");return Promise.resolve()})).catch((t=>Promise.reject(t)))}get browserInfo(){return a()}get icon(){return this.props.icon??this.resources.getImage()("googlepay")}render(){return this.props.showPayButton?t(s,{buttonColor:this.props.buttonColor,buttonType:this.props.buttonType,buttonSizeMode:this.props.buttonSizeMode,buttonLocale:this.props.buttonLocale,buttonRootNode:this.props.buttonRootNode,buttonRadius:this.props.buttonRadius,paymentsClient:this.googlePay.paymentsClient,onClick:this.submit}):null}constructor(t,e){super(t,e),g(this,"googlePay",void 0),g(this,"submit",(()=>{this.props.isInstantPayment&&this.submitAnalytics({type:u,target:y}),new Promise(((t,e)=>this.props.onClick(t,e))).then((()=>this.googlePay.initiatePayment(this.props,this.core.options.countryCode))).catch((t=>{"CANCELED"===t.statusCode?this.handleError(new l("CANCEL",t.toString(),{cause:t})):this.handleError(new l("ERROR",t.toString(),{cause:t}))}))})),g(this,"onPaymentAuthorized",(async t=>{const e=i(t.paymentMethodData.info.billingAddress),o=i(t.shippingAddress,!0);return this.setState({authorizedEvent:t,googlePayToken:t.paymentMethodData.tokenizationData.token,googlePayCardNetwork:t.paymentMethodData.info.cardNetwork,...e&&{billingAddress:e},...o&&{deliveryAddress:o}}),new Promise((t=>{this.handleAuthorization().then(this.makePaymentsCall).then(p).then(d).then((e=>(t({transactionState:"SUCCESS"}),e))).then((t=>{this.handleResponse(t)})).catch((e=>{this.setElementStatus("ready");const o=e?.error?.googlePayError,s=this.props.i18n.get("error.subtitle.payment"),r="string"==typeof o?{intent:"PAYMENT_AUTHORIZATION",reason:"OTHER_ERROR",message:o||s}:{intent:o?.intent||"PAYMENT_AUTHORIZATION",reason:o?.reason||"OTHER_ERROR",message:o?.message||s};t({transactionState:"ERROR",error:r});const n={...e,error:{googlePayError:r}};this.handleFailedResult(n)}))}))})),g(this,"isReadyToPay",(()=>this.googlePay.isReadyToPay(this.props))),g(this,"prefetch",(()=>this.googlePay.prefetchPaymentData(this.props,this.core.options.countryCode))),this.handleAuthorization=this.handleAuthorization.bind(this);const{isExpress:s,paymentDataCallbacks:r}=this.props;if(!1===s&&r?.onPaymentDataChanged)throw new l("IMPLEMENTATION_ERROR",'GooglePay - You must set "isExpress" flag to "true" in order to use "onPaymentDataChanged" callback');this.googlePay=new o(this.props.environment,{...s&&r?.onPaymentDataChanged&&{onPaymentDataChanged:r.onPaymentDataChanged},onPaymentAuthorized:this.onPaymentAuthorized})}}g(c,"type",h.googlepay),g(c,"txVariants",[h.googlepay,h.paywithgoogle]),g(c,"defaultProps",r);export{c as default};
1
+ import{createElement as t}from"../../external/preact/dist/preact.js";import{UIElement as e}from"../internal/UIElement/UIElement.js";import o from"./GooglePayService.js";import s from"./components/GooglePayButton.js";import r from"./defaultProps.js";import{getGooglePayLocale as n,formatGooglePayContactToAdyenAddressFormat as i}from"./utils.js";import a from"../../utils/browserInfo.js";import h from"../../core/Errors/AdyenCheckoutError.js";import{TxVariants as l}from"../tx-variants.js";import{sanitizeResponse as p,verifyPaymentDidNotFail as d}from"../internal/UIElement/utils.js";import{ANALYTICS_SELECTED_STR as y,ANALYTICS_INSTANT_PAYMENT_BUTTON as u}from"../../core/Analytics/constants.js";function g(t,e,o){return e in t?Object.defineProperty(t,e,{value:o,enumerable:!0,configurable:!0,writable:!0}):t[e]=o,t}class c extends e{formatProps(t){const e=t.buttonSizeMode??(t.isDropin?"fill":"static"),o=n(t.buttonLocale??t.i18n?.locale),s=[...t.callbackIntents,"PAYMENT_AUTHORIZATION"];return{...t,configuration:t.configuration,buttonSizeMode:e,buttonLocale:o,callbackIntents:s}}formatData(){const{googlePayCardNetwork:t,googlePayToken:e,billingAddress:o,deliveryAddress:s}=this.state,{isExpress:r}=this.props;return{paymentMethod:{type:this.type,googlePayCardNetwork:t,googlePayToken:e,...r&&{subtype:"express"}},browserInfo:this.browserInfo,origin:!!window&&window.location.origin,...o&&{billingAddress:o},...s&&{deliveryAddress:s}}}submitAnalytics(t){super.submitAnalytics({...t},this.props)}showGooglePayPaymentSheet(){this.googlePay.initiatePayment(this.props,this.core.options.countryCode).catch((t=>{this.handleError(new h("CANCELED"===t.statusCode?"CANCEL":"ERROR",t.toString(),{cause:t}))}))}async handleAuthorization(){return new Promise(((t,e)=>{this.props.onAuthorized||t();const{authorizedEvent:o,billingAddress:s,deliveryAddress:r}=this.state;this.props.onAuthorized({authorizedEvent:o,...s&&{billingAddress:s},...r&&{deliveryAddress:r}},{resolve:t,reject:e})})).catch((t=>{const e={error:{googlePayError:t}};return Promise.reject(e)}))}get isValid(){return!!this.state.googlePayToken}async isAvailable(){return this.isReadyToPay().then((t=>{if(!t.result)throw new h("ERROR","GooglePay is not available");if(!1===t.paymentMethodPresent)throw new h("ERROR","GooglePay - No paymentMethodPresent");return Promise.resolve()})).catch((t=>Promise.reject(t)))}get browserInfo(){return a()}get icon(){return this.props.icon??this.resources.getImage()("googlepay")}render(){return this.props.showPayButton?t(s,{buttonColor:this.props.buttonColor,buttonType:this.props.buttonType,buttonSizeMode:this.props.buttonSizeMode,buttonLocale:this.props.buttonLocale,buttonRootNode:this.props.buttonRootNode,buttonRadius:this.props.buttonRadius,paymentsClient:this.googlePay.paymentsClient,onClick:this.submit}):null}constructor(t,e){super(t,e),g(this,"googlePay",void 0),g(this,"submit",(()=>{this.props.isInstantPayment&&this.submitAnalytics({type:y,target:u}),new Promise(((t,e)=>this.props.onClick(t,e))).then(this.showGooglePayPaymentSheet).catch((()=>{}))})),g(this,"onPaymentAuthorized",(async t=>{const e=i(t.paymentMethodData.info.billingAddress),o=i(t.shippingAddress,!0);return this.setState({authorizedEvent:t,googlePayToken:t.paymentMethodData.tokenizationData.token,googlePayCardNetwork:t.paymentMethodData.info.cardNetwork,...e&&{billingAddress:e},...o&&{deliveryAddress:o}}),new Promise((t=>{this.handleAuthorization().then(this.makePaymentsCall).then(p).then(d).then((e=>(t({transactionState:"SUCCESS"}),e))).then((t=>{this.handleResponse(t)})).catch((e=>{this.setElementStatus("ready");const o=e?.error?.googlePayError,s=this.props.i18n.get("error.subtitle.payment"),r="string"==typeof o?{intent:"PAYMENT_AUTHORIZATION",reason:"OTHER_ERROR",message:o||s}:{intent:o?.intent||"PAYMENT_AUTHORIZATION",reason:o?.reason||"OTHER_ERROR",message:o?.message||s};t({transactionState:"ERROR",error:r});const n={...e,error:{googlePayError:r}};this.handleFailedResult(n)}))}))})),g(this,"isReadyToPay",(()=>this.googlePay.isReadyToPay(this.props))),g(this,"prefetch",(()=>this.googlePay.prefetchPaymentData(this.props,this.core.options.countryCode))),this.handleAuthorization=this.handleAuthorization.bind(this),this.showGooglePayPaymentSheet=this.showGooglePayPaymentSheet.bind(this);const{isExpress:s,paymentDataCallbacks:r}=this.props;if(!1===s&&r?.onPaymentDataChanged)throw new h("IMPLEMENTATION_ERROR",'GooglePay - You must set "isExpress" flag to "true" in order to use "onPaymentDataChanged" callback');if(!this.props.configuration.merchantId)throw new h("IMPLEMENTATION_ERROR","GooglePay - Missing merchantId. Please ensure that it is correctly configured in your customer area.");this.googlePay=new o(this.props.environment,{...s&&r?.onPaymentDataChanged&&{onPaymentDataChanged:r.onPaymentDataChanged},onPaymentAuthorized:this.onPaymentAuthorized})}}g(c,"type",l.googlepay),g(c,"txVariants",[l.googlepay,l.paywithgoogle]),g(c,"defaultProps",r);export{c as default};
2
2
  //# sourceMappingURL=GooglePay.js.map