@adyen/adyen-web 6.0.0-alpha.2 → 6.0.0-alpha.3

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 (322) hide show
  1. package/README.md +166 -0
  2. package/dist/cjs/adyen.css +2 -2
  3. package/dist/cjs/index.cjs +2 -2
  4. package/dist/cjs/index.cjs.map +1 -1
  5. package/dist/cjs/index.d.cts +1932 -1968
  6. package/dist/es/adyen.css +2 -2
  7. package/dist/es/components/AmazonPay/AmazonPay.js +1 -1
  8. package/dist/es/components/AmazonPay/AmazonPay.js.map +1 -1
  9. package/dist/es/components/AmazonPay/components/AmazonPayComponent.js +1 -1
  10. package/dist/es/components/AmazonPay/components/AmazonPayComponent.js.map +1 -1
  11. package/dist/es/components/ApplePay/ApplePay.js +1 -1
  12. package/dist/es/components/ApplePay/ApplePay.js.map +1 -1
  13. package/dist/es/components/ApplePay/defaultProps.js +1 -1
  14. package/dist/es/components/ApplePay/defaultProps.js.map +1 -1
  15. package/dist/es/components/ApplePay/payment-request.js.map +1 -1
  16. package/dist/es/components/Boleto/components/BoletoInput/validate.js +1 -1
  17. package/dist/es/components/Boleto/components/BoletoInput/validate.js.map +1 -1
  18. package/dist/es/components/Card/Card.js +1 -1
  19. package/dist/es/components/Card/Card.js.map +1 -1
  20. package/dist/es/components/Card/components/CardInput/CardInput.js +1 -1
  21. package/dist/es/components/Card/components/CardInput/CardInput.js.map +1 -1
  22. package/dist/es/components/Card/components/CardInput/components/CardFieldsWrapper.js +1 -1
  23. package/dist/es/components/Card/components/CardInput/components/CardFieldsWrapper.js.map +1 -1
  24. package/dist/es/components/Card/components/CardInput/components/CardHolderName.js +1 -1
  25. package/dist/es/components/Card/components/CardInput/components/CardHolderName.js.map +1 -1
  26. package/dist/es/components/Card/components/CardInput/components/KCPAuthentication.js +1 -1
  27. package/dist/es/components/Card/components/CardInput/components/KCPAuthentication.js.map +1 -1
  28. package/dist/es/components/Card/components/CardInput/types.js.map +1 -1
  29. package/dist/es/components/Card/components/CardInput/utils.js +1 -1
  30. package/dist/es/components/Card/components/CardInput/utils.js.map +1 -1
  31. package/dist/es/components/Card/components/CardInput/validate.js +1 -1
  32. package/dist/es/components/Card/components/CardInput/validate.js.map +1 -1
  33. package/dist/es/components/CashAppPay/defaultProps.js +1 -1
  34. package/dist/es/components/CashAppPay/defaultProps.js.map +1 -1
  35. package/dist/es/components/Donation/Donation.js.map +1 -1
  36. package/dist/es/components/Dragonpay/Dragonpay.js +1 -1
  37. package/dist/es/components/Dragonpay/Dragonpay.js.map +1 -1
  38. package/dist/es/components/Dropin/components/DropinComponent.js +1 -1
  39. package/dist/es/components/Dropin/components/DropinComponent.js.map +1 -1
  40. package/dist/es/components/Econtext/Econtext.js +1 -1
  41. package/dist/es/components/Econtext/Econtext.js.map +1 -1
  42. package/dist/es/components/Econtext/components/EcontextInput/EcontextInput.js.map +1 -1
  43. package/dist/es/components/Giftcard/Giftcard.js +1 -1
  44. package/dist/es/components/Giftcard/Giftcard.js.map +1 -1
  45. package/dist/es/components/Giftcard/components/GiftcardComponent.js.map +1 -1
  46. package/dist/es/components/Giropay/Giropay.js +1 -1
  47. package/dist/es/components/Giropay/Giropay.js.map +1 -1
  48. package/dist/es/components/GooglePay/GooglePay.js +1 -1
  49. package/dist/es/components/GooglePay/GooglePay.js.map +1 -1
  50. package/dist/es/components/GooglePay/GooglePayService.js +1 -1
  51. package/dist/es/components/GooglePay/GooglePayService.js.map +1 -1
  52. package/dist/es/components/GooglePay/defaultProps.js +1 -1
  53. package/dist/es/components/GooglePay/defaultProps.js.map +1 -1
  54. package/dist/es/components/GooglePay/requests.js.map +1 -1
  55. package/dist/es/components/Multibanco/Multibanco.js +1 -1
  56. package/dist/es/components/Multibanco/Multibanco.js.map +1 -1
  57. package/dist/es/components/Pix/Pix.js +1 -1
  58. package/dist/es/components/Pix/Pix.js.map +1 -1
  59. package/dist/es/components/Pix/PixInput/PixInput.js +1 -1
  60. package/dist/es/components/Pix/PixInput/PixInput.js.map +1 -1
  61. package/dist/es/components/ThreeDS2/ThreeDS2DeviceFingerprint.js +1 -1
  62. package/dist/es/components/ThreeDS2/ThreeDS2DeviceFingerprint.js.map +1 -1
  63. package/dist/es/components/ThreeDS2/components/Challenge/DoChallenge3DS2.js +1 -1
  64. package/dist/es/components/ThreeDS2/components/Challenge/DoChallenge3DS2.js.map +1 -1
  65. package/dist/es/components/ThreeDS2/components/Challenge/PrepareChallenge3DS2.js +1 -1
  66. package/dist/es/components/ThreeDS2/components/Challenge/PrepareChallenge3DS2.js.map +1 -1
  67. package/dist/es/components/ThreeDS2/components/DeviceFingerprint/PrepareFingerprint3DS2.js.map +1 -1
  68. package/dist/es/components/ThreeDS2/components/utils.js +1 -1
  69. package/dist/es/components/ThreeDS2/components/utils.js.map +1 -1
  70. package/dist/es/components/helpers/IssuerListContainer/IssuerListContainer.js +1 -1
  71. package/dist/es/components/helpers/IssuerListContainer/IssuerListContainer.js.map +1 -1
  72. package/dist/es/components/internal/Address/Address.js +1 -1
  73. package/dist/es/components/internal/Address/Address.js.map +1 -1
  74. package/dist/es/components/internal/Address/validate.js +1 -1
  75. package/dist/es/components/internal/Address/validate.js.map +1 -1
  76. package/dist/es/components/internal/BaseElement/BaseElement.js +1 -1
  77. package/dist/es/components/internal/BaseElement/BaseElement.js.map +1 -1
  78. package/dist/es/components/internal/CompanyDetails/validate.js +1 -1
  79. package/dist/es/components/internal/CompanyDetails/validate.js.map +1 -1
  80. package/dist/es/components/internal/IbanInput/IbanInput.js.map +1 -1
  81. package/dist/es/components/internal/Img/Img.js +1 -1
  82. package/dist/es/components/internal/Img/Img.js.map +1 -1
  83. package/dist/es/components/internal/PersonalDetails/PersonalDetails.js +1 -1
  84. package/dist/es/components/internal/PersonalDetails/PersonalDetails.js.map +1 -1
  85. package/dist/es/components/internal/PersonalDetails/validate.js +1 -1
  86. package/dist/es/components/internal/PersonalDetails/validate.js.map +1 -1
  87. package/dist/es/components/internal/SecuredFields/SFP/SFPUtils.js +1 -1
  88. package/dist/es/components/internal/SecuredFields/SFP/SFPUtils.js.map +1 -1
  89. package/dist/es/components/internal/SecuredFields/SFP/SecuredFieldsProvider.js +1 -1
  90. package/dist/es/components/internal/SecuredFields/SFP/SecuredFieldsProvider.js.map +1 -1
  91. package/dist/es/components/internal/SecuredFields/binLookup/triggerBinLookUp.js +1 -1
  92. package/dist/es/components/internal/SecuredFields/binLookup/triggerBinLookUp.js.map +1 -1
  93. package/dist/es/components/internal/SecuredFields/lib/CSF/extensions/createSecuredFields.js.map +1 -1
  94. package/dist/es/components/internal/SecuredFields/lib/CSF/utils/cardType.js +1 -1
  95. package/dist/es/components/internal/SecuredFields/lib/CSF/utils/cardType.js.map +1 -1
  96. package/dist/es/components/internal/SecuredFields/lib/CSF/utils/processErrors.js +1 -1
  97. package/dist/es/components/internal/SecuredFields/lib/CSF/utils/processErrors.js.map +1 -1
  98. package/dist/es/components/internal/SecuredFields/lib/configuration/constants.js +1 -1
  99. package/dist/es/components/internal/SecuredFields/lib/configuration/constants.js.map +1 -1
  100. package/dist/es/components/internal/SecuredFields/lib/securedField/AbstractSecuredField.js.map +1 -1
  101. package/dist/es/components/internal/SecuredFields/lib/securedField/SecuredField.js.map +1 -1
  102. package/dist/es/components/internal/SecuredFields/lib/securedField/utils/processAriaConfig.js.map +1 -1
  103. package/dist/es/components/internal/SecuredFields/lib/securedField/utils/processPlaceholders.js.map +1 -1
  104. package/dist/es/components/internal/SecuredFields/lib/utilities/addContextTranslations.js.map +1 -1
  105. package/dist/es/components/internal/SegmentedControl/SegmentedControl.js +1 -1
  106. package/dist/es/components/internal/SegmentedControl/SegmentedControl.js.map +1 -1
  107. package/dist/es/components/internal/UIElement/UIElement.js +1 -1
  108. package/dist/es/components/internal/UIElement/UIElement.js.map +1 -1
  109. package/dist/es/components/internal/UIElement/utils.js +1 -1
  110. package/dist/es/components/internal/UIElement/utils.js.map +1 -1
  111. package/dist/es/core/Analytics/Analytics.js +1 -1
  112. package/dist/es/core/Analytics/Analytics.js.map +1 -1
  113. package/dist/es/core/Analytics/constants.js +1 -1
  114. package/dist/es/core/Analytics/constants.js.map +1 -1
  115. package/dist/es/core/Analytics/utils.js +1 -1
  116. package/dist/es/core/Analytics/utils.js.map +1 -1
  117. package/dist/es/core/Errors/constants.js +1 -1
  118. package/dist/es/core/Errors/constants.js.map +1 -1
  119. package/dist/es/core/Errors/utils.js +1 -1
  120. package/dist/es/core/Errors/utils.js.map +1 -1
  121. package/dist/es/core/ProcessResponse/PaymentAction/actionTypes.js +1 -1
  122. package/dist/es/core/ProcessResponse/PaymentAction/actionTypes.js.map +1 -1
  123. package/dist/es/core/Services/analytics/collect-id.js +1 -1
  124. package/dist/es/core/Services/analytics/log-event.js +1 -1
  125. package/dist/es/core/core.js +1 -1
  126. package/dist/es/core/core.js.map +1 -1
  127. package/dist/es/core/utils.js +1 -1
  128. package/dist/es/core/utils.js.map +1 -1
  129. package/dist/es/index.d.ts +1932 -1968
  130. package/dist/es/language/locales/ar.json.js +1 -1
  131. package/dist/es/language/locales/cs-CZ.json.js +1 -1
  132. package/dist/es/language/locales/da-DK.json.js +1 -1
  133. package/dist/es/language/locales/de-DE.json.js +1 -1
  134. package/dist/es/language/locales/el-GR.json.js +1 -1
  135. package/dist/es/language/locales/en-US.json.js +1 -1
  136. package/dist/es/language/locales/es-ES.json.js +1 -1
  137. package/dist/es/language/locales/fi-FI.json.js +1 -1
  138. package/dist/es/language/locales/fr-FR.json.js +1 -1
  139. package/dist/es/language/locales/hr-HR.json.js +1 -1
  140. package/dist/es/language/locales/hu-HU.json.js +1 -1
  141. package/dist/es/language/locales/it-IT.json.js +1 -1
  142. package/dist/es/language/locales/ja-JP.json.js +1 -1
  143. package/dist/es/language/locales/ko-KR.json.js +1 -1
  144. package/dist/es/language/locales/nl-NL.json.js +1 -1
  145. package/dist/es/language/locales/no-NO.json.js +1 -1
  146. package/dist/es/language/locales/pl-PL.json.js +1 -1
  147. package/dist/es/language/locales/pt-BR.json.js +1 -1
  148. package/dist/es/language/locales/pt-PT.json.js +1 -1
  149. package/dist/es/language/locales/ro-RO.json.js +1 -1
  150. package/dist/es/language/locales/ru-RU.json.js +1 -1
  151. package/dist/es/language/locales/sk-SK.json.js +1 -1
  152. package/dist/es/language/locales/sl-SI.json.js +1 -1
  153. package/dist/es/language/locales/sv-SE.json.js +1 -1
  154. package/dist/es/language/locales/zh-CN.json.js +1 -1
  155. package/dist/es/language/locales/zh-TW.json.js +1 -1
  156. package/dist/es/utils/Formatters/formatters.js.map +1 -1
  157. package/dist/es/utils/Validator/defaultRules.js +1 -1
  158. package/dist/es/utils/Validator/defaultRules.js.map +1 -1
  159. package/dist/es/utils/base64.js +1 -1
  160. package/dist/es/utils/base64.js.map +1 -1
  161. package/dist/es/utils/getErrorMessage.js +1 -1
  162. package/dist/es/utils/getErrorMessage.js.map +1 -1
  163. package/dist/es-legacy/adyen.css +2 -2
  164. package/dist/es-legacy/components/AmazonPay/AmazonPay.js +1 -1
  165. package/dist/es-legacy/components/AmazonPay/AmazonPay.js.map +1 -1
  166. package/dist/es-legacy/components/AmazonPay/components/AmazonPayComponent.js +1 -1
  167. package/dist/es-legacy/components/AmazonPay/components/AmazonPayComponent.js.map +1 -1
  168. package/dist/es-legacy/components/ApplePay/ApplePay.js +1 -1
  169. package/dist/es-legacy/components/ApplePay/ApplePay.js.map +1 -1
  170. package/dist/es-legacy/components/ApplePay/defaultProps.js +1 -1
  171. package/dist/es-legacy/components/ApplePay/defaultProps.js.map +1 -1
  172. package/dist/es-legacy/components/ApplePay/payment-request.js.map +1 -1
  173. package/dist/es-legacy/components/Boleto/components/BoletoInput/validate.js +1 -1
  174. package/dist/es-legacy/components/Boleto/components/BoletoInput/validate.js.map +1 -1
  175. package/dist/es-legacy/components/Card/Card.js +1 -1
  176. package/dist/es-legacy/components/Card/Card.js.map +1 -1
  177. package/dist/es-legacy/components/Card/components/CardInput/CardInput.js +1 -1
  178. package/dist/es-legacy/components/Card/components/CardInput/CardInput.js.map +1 -1
  179. package/dist/es-legacy/components/Card/components/CardInput/components/CardFieldsWrapper.js +1 -1
  180. package/dist/es-legacy/components/Card/components/CardInput/components/CardFieldsWrapper.js.map +1 -1
  181. package/dist/es-legacy/components/Card/components/CardInput/components/CardHolderName.js +1 -1
  182. package/dist/es-legacy/components/Card/components/CardInput/components/CardHolderName.js.map +1 -1
  183. package/dist/es-legacy/components/Card/components/CardInput/components/KCPAuthentication.js +1 -1
  184. package/dist/es-legacy/components/Card/components/CardInput/components/KCPAuthentication.js.map +1 -1
  185. package/dist/es-legacy/components/Card/components/CardInput/types.js.map +1 -1
  186. package/dist/es-legacy/components/Card/components/CardInput/utils.js +1 -1
  187. package/dist/es-legacy/components/Card/components/CardInput/utils.js.map +1 -1
  188. package/dist/es-legacy/components/Card/components/CardInput/validate.js +1 -1
  189. package/dist/es-legacy/components/Card/components/CardInput/validate.js.map +1 -1
  190. package/dist/es-legacy/components/CashAppPay/defaultProps.js +1 -1
  191. package/dist/es-legacy/components/CashAppPay/defaultProps.js.map +1 -1
  192. package/dist/es-legacy/components/Donation/Donation.js.map +1 -1
  193. package/dist/es-legacy/components/Dragonpay/Dragonpay.js +1 -1
  194. package/dist/es-legacy/components/Dragonpay/Dragonpay.js.map +1 -1
  195. package/dist/es-legacy/components/Dropin/components/DropinComponent.js +1 -1
  196. package/dist/es-legacy/components/Dropin/components/DropinComponent.js.map +1 -1
  197. package/dist/es-legacy/components/Econtext/Econtext.js +1 -1
  198. package/dist/es-legacy/components/Econtext/Econtext.js.map +1 -1
  199. package/dist/es-legacy/components/Econtext/components/EcontextInput/EcontextInput.js.map +1 -1
  200. package/dist/es-legacy/components/Giftcard/Giftcard.js +1 -1
  201. package/dist/es-legacy/components/Giftcard/Giftcard.js.map +1 -1
  202. package/dist/es-legacy/components/Giftcard/components/GiftcardComponent.js.map +1 -1
  203. package/dist/es-legacy/components/Giropay/Giropay.js +1 -1
  204. package/dist/es-legacy/components/Giropay/Giropay.js.map +1 -1
  205. package/dist/es-legacy/components/GooglePay/GooglePay.js +1 -1
  206. package/dist/es-legacy/components/GooglePay/GooglePay.js.map +1 -1
  207. package/dist/es-legacy/components/GooglePay/GooglePayService.js +1 -1
  208. package/dist/es-legacy/components/GooglePay/GooglePayService.js.map +1 -1
  209. package/dist/es-legacy/components/GooglePay/defaultProps.js +1 -1
  210. package/dist/es-legacy/components/GooglePay/defaultProps.js.map +1 -1
  211. package/dist/es-legacy/components/GooglePay/requests.js.map +1 -1
  212. package/dist/es-legacy/components/Multibanco/Multibanco.js +1 -1
  213. package/dist/es-legacy/components/Multibanco/Multibanco.js.map +1 -1
  214. package/dist/es-legacy/components/Pix/Pix.js +1 -1
  215. package/dist/es-legacy/components/Pix/Pix.js.map +1 -1
  216. package/dist/es-legacy/components/Pix/PixInput/PixInput.js +1 -1
  217. package/dist/es-legacy/components/Pix/PixInput/PixInput.js.map +1 -1
  218. package/dist/es-legacy/components/ThreeDS2/ThreeDS2DeviceFingerprint.js +1 -1
  219. package/dist/es-legacy/components/ThreeDS2/ThreeDS2DeviceFingerprint.js.map +1 -1
  220. package/dist/es-legacy/components/ThreeDS2/components/Challenge/DoChallenge3DS2.js +1 -1
  221. package/dist/es-legacy/components/ThreeDS2/components/Challenge/DoChallenge3DS2.js.map +1 -1
  222. package/dist/es-legacy/components/ThreeDS2/components/Challenge/PrepareChallenge3DS2.js +1 -1
  223. package/dist/es-legacy/components/ThreeDS2/components/Challenge/PrepareChallenge3DS2.js.map +1 -1
  224. package/dist/es-legacy/components/ThreeDS2/components/DeviceFingerprint/PrepareFingerprint3DS2.js.map +1 -1
  225. package/dist/es-legacy/components/ThreeDS2/components/utils.js +1 -1
  226. package/dist/es-legacy/components/ThreeDS2/components/utils.js.map +1 -1
  227. package/dist/es-legacy/components/helpers/IssuerListContainer/IssuerListContainer.js +1 -1
  228. package/dist/es-legacy/components/helpers/IssuerListContainer/IssuerListContainer.js.map +1 -1
  229. package/dist/es-legacy/components/internal/Address/Address.js +1 -1
  230. package/dist/es-legacy/components/internal/Address/Address.js.map +1 -1
  231. package/dist/es-legacy/components/internal/Address/validate.js +1 -1
  232. package/dist/es-legacy/components/internal/Address/validate.js.map +1 -1
  233. package/dist/es-legacy/components/internal/BaseElement/BaseElement.js +1 -1
  234. package/dist/es-legacy/components/internal/BaseElement/BaseElement.js.map +1 -1
  235. package/dist/es-legacy/components/internal/CompanyDetails/validate.js +1 -1
  236. package/dist/es-legacy/components/internal/CompanyDetails/validate.js.map +1 -1
  237. package/dist/es-legacy/components/internal/IbanInput/IbanInput.js.map +1 -1
  238. package/dist/es-legacy/components/internal/Img/Img.js +1 -1
  239. package/dist/es-legacy/components/internal/Img/Img.js.map +1 -1
  240. package/dist/es-legacy/components/internal/PersonalDetails/PersonalDetails.js +1 -1
  241. package/dist/es-legacy/components/internal/PersonalDetails/PersonalDetails.js.map +1 -1
  242. package/dist/es-legacy/components/internal/PersonalDetails/validate.js +1 -1
  243. package/dist/es-legacy/components/internal/PersonalDetails/validate.js.map +1 -1
  244. package/dist/es-legacy/components/internal/SecuredFields/SFP/SFPUtils.js +1 -1
  245. package/dist/es-legacy/components/internal/SecuredFields/SFP/SFPUtils.js.map +1 -1
  246. package/dist/es-legacy/components/internal/SecuredFields/SFP/SecuredFieldsProvider.js +1 -1
  247. package/dist/es-legacy/components/internal/SecuredFields/SFP/SecuredFieldsProvider.js.map +1 -1
  248. package/dist/es-legacy/components/internal/SecuredFields/binLookup/triggerBinLookUp.js +1 -1
  249. package/dist/es-legacy/components/internal/SecuredFields/binLookup/triggerBinLookUp.js.map +1 -1
  250. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/createSecuredFields.js.map +1 -1
  251. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/utils/cardType.js +1 -1
  252. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/utils/cardType.js.map +1 -1
  253. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/utils/processErrors.js +1 -1
  254. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/utils/processErrors.js.map +1 -1
  255. package/dist/es-legacy/components/internal/SecuredFields/lib/configuration/constants.js +1 -1
  256. package/dist/es-legacy/components/internal/SecuredFields/lib/configuration/constants.js.map +1 -1
  257. package/dist/es-legacy/components/internal/SecuredFields/lib/securedField/AbstractSecuredField.js.map +1 -1
  258. package/dist/es-legacy/components/internal/SecuredFields/lib/securedField/SecuredField.js.map +1 -1
  259. package/dist/es-legacy/components/internal/SecuredFields/lib/securedField/utils/processAriaConfig.js.map +1 -1
  260. package/dist/es-legacy/components/internal/SecuredFields/lib/securedField/utils/processPlaceholders.js.map +1 -1
  261. package/dist/es-legacy/components/internal/SecuredFields/lib/utilities/addContextTranslations.js.map +1 -1
  262. package/dist/es-legacy/components/internal/SegmentedControl/SegmentedControl.js +1 -1
  263. package/dist/es-legacy/components/internal/SegmentedControl/SegmentedControl.js.map +1 -1
  264. package/dist/es-legacy/components/internal/UIElement/UIElement.js +1 -1
  265. package/dist/es-legacy/components/internal/UIElement/UIElement.js.map +1 -1
  266. package/dist/es-legacy/components/internal/UIElement/utils.js +1 -1
  267. package/dist/es-legacy/components/internal/UIElement/utils.js.map +1 -1
  268. package/dist/es-legacy/core/Analytics/Analytics.js +1 -1
  269. package/dist/es-legacy/core/Analytics/Analytics.js.map +1 -1
  270. package/dist/es-legacy/core/Analytics/constants.js +1 -1
  271. package/dist/es-legacy/core/Analytics/constants.js.map +1 -1
  272. package/dist/es-legacy/core/Analytics/utils.js +1 -1
  273. package/dist/es-legacy/core/Analytics/utils.js.map +1 -1
  274. package/dist/es-legacy/core/Errors/constants.js +1 -1
  275. package/dist/es-legacy/core/Errors/constants.js.map +1 -1
  276. package/dist/es-legacy/core/Errors/utils.js +1 -1
  277. package/dist/es-legacy/core/Errors/utils.js.map +1 -1
  278. package/dist/es-legacy/core/ProcessResponse/PaymentAction/actionTypes.js +1 -1
  279. package/dist/es-legacy/core/ProcessResponse/PaymentAction/actionTypes.js.map +1 -1
  280. package/dist/es-legacy/core/Services/analytics/collect-id.js +1 -1
  281. package/dist/es-legacy/core/Services/analytics/log-event.js +1 -1
  282. package/dist/es-legacy/core/core.js +1 -1
  283. package/dist/es-legacy/core/core.js.map +1 -1
  284. package/dist/es-legacy/core/utils.js +1 -1
  285. package/dist/es-legacy/core/utils.js.map +1 -1
  286. package/dist/es-legacy/language/locales/ar.json.js +1 -1
  287. package/dist/es-legacy/language/locales/cs-CZ.json.js +1 -1
  288. package/dist/es-legacy/language/locales/da-DK.json.js +1 -1
  289. package/dist/es-legacy/language/locales/de-DE.json.js +1 -1
  290. package/dist/es-legacy/language/locales/el-GR.json.js +1 -1
  291. package/dist/es-legacy/language/locales/en-US.json.js +1 -1
  292. package/dist/es-legacy/language/locales/es-ES.json.js +1 -1
  293. package/dist/es-legacy/language/locales/fi-FI.json.js +1 -1
  294. package/dist/es-legacy/language/locales/fr-FR.json.js +1 -1
  295. package/dist/es-legacy/language/locales/hr-HR.json.js +1 -1
  296. package/dist/es-legacy/language/locales/hu-HU.json.js +1 -1
  297. package/dist/es-legacy/language/locales/it-IT.json.js +1 -1
  298. package/dist/es-legacy/language/locales/ja-JP.json.js +1 -1
  299. package/dist/es-legacy/language/locales/ko-KR.json.js +1 -1
  300. package/dist/es-legacy/language/locales/nl-NL.json.js +1 -1
  301. package/dist/es-legacy/language/locales/no-NO.json.js +1 -1
  302. package/dist/es-legacy/language/locales/pl-PL.json.js +1 -1
  303. package/dist/es-legacy/language/locales/pt-BR.json.js +1 -1
  304. package/dist/es-legacy/language/locales/pt-PT.json.js +1 -1
  305. package/dist/es-legacy/language/locales/ro-RO.json.js +1 -1
  306. package/dist/es-legacy/language/locales/ru-RU.json.js +1 -1
  307. package/dist/es-legacy/language/locales/sk-SK.json.js +1 -1
  308. package/dist/es-legacy/language/locales/sl-SI.json.js +1 -1
  309. package/dist/es-legacy/language/locales/sv-SE.json.js +1 -1
  310. package/dist/es-legacy/language/locales/zh-CN.json.js +1 -1
  311. package/dist/es-legacy/language/locales/zh-TW.json.js +1 -1
  312. package/dist/es-legacy/utils/Formatters/formatters.js.map +1 -1
  313. package/dist/es-legacy/utils/Validator/defaultRules.js +1 -1
  314. package/dist/es-legacy/utils/Validator/defaultRules.js.map +1 -1
  315. package/dist/es-legacy/utils/base64.js +1 -1
  316. package/dist/es-legacy/utils/base64.js.map +1 -1
  317. package/dist/es-legacy/utils/getErrorMessage.js +1 -1
  318. package/dist/es-legacy/utils/getErrorMessage.js.map +1 -1
  319. package/dist/umd/adyen.css +2 -2
  320. package/dist/umd/adyen.js +2 -2
  321. package/dist/umd/adyen.js.map +1 -1
  322. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"validate.js","sources":["../../../../../../src/components/Card/components/CardInput/validate.ts"],"sourcesContent":["import { ValidatorRules } from '../../../../utils/Validator/types';\nimport { formatCPFCNPJ } from '../../../internal/SocialSecurityNumberBrazil/utils';\nimport validateSSN from '../../../internal/SocialSecurityNumberBrazil/validate';\nimport { isEmpty } from '../../../../utils/validator-utils';\n\nexport const cardInputFormatters = {\n socialSecurityNumber: formatCPFCNPJ\n};\n\nexport const cardInputValidationRules: ValidatorRules = {\n socialSecurityNumber: [\n {\n modes: ['blur'],\n validate: value => {\n if (isEmpty(value)) return null;\n return validateSSN(value);\n },\n errorMessage: 'boleto.socialSecurityNumber.invalid'\n }\n ],\n taxNumber: [\n {\n modes: ['blur'],\n validate: value => (isEmpty(value) ? null : value?.length === 6 || value?.length === 10),\n errorMessage: 'creditCard.taxNumber.invalid'\n }\n ],\n holderName: [\n {\n // Will fire at startup and when triggerValidation is called and also applies as text is input\n modes: ['blur'],\n validate: value => (isEmpty(value) ? null : true), // true, if there are chars other than spaces\n errorMessage: 'creditCard.holderName.invalid'\n }\n ],\n default: [\n {\n modes: ['blur'],\n // ensuring we don't try to run this against objects e.g. billingAddress\n validate: value => !!value && typeof value === 'string' && value.trim().length > 0\n }\n ]\n};\n\nexport const getRuleByNameAndMode = (name, mode) => {\n const ruleArr = cardInputValidationRules[name] as any[];\n const rule = ruleArr.reduce((acc, elem) => {\n if (!acc.length) {\n if (elem.modes.includes(mode)) {\n acc.push(elem.validate);\n }\n }\n return acc;\n }, []);\n return rule[0];\n};\n"],"names":["cardInputFormatters","socialSecurityNumber","formatCPFCNPJ","cardInputValidationRules","modes","validate","value","isEmpty","validateSSN","errorMessage","taxNumber","length","holderName","default","trim","getRuleByNameAndMode","name","mode","reduce","acc","elem","includes","push"],"mappings":"mOAKaA,EAAsB,CAC/BC,qBAAsBC,GAGbC,EAA2C,CACpDF,qBAAsB,CAClB,CACIG,MAAO,CAAC,QACRC,SAAUC,GACFC,EAAQD,GAAe,KACpBE,EAAYF,GAEvBG,aAAc,wCAGtBC,UAAW,CACP,CACIN,MAAO,CAAC,QACRC,SAAUC,GAAUC,EAAQD,GAAS,KAAyB,IAAlBA,GAAOK,QAAkC,KAAlBL,GAAOK,OAC1EF,aAAc,iCAGtBG,WAAY,CACR,CAEIR,MAAO,CAAC,QACRC,SAAUC,IAAUC,EAAQD,IAAS,KACrCG,aAAc,kCAGtBI,QAAS,CACL,CACIT,MAAO,CAAC,QAERC,SAAUC,KAAWA,GAA0B,iBAAVA,GAAsBA,EAAMQ,OAAOH,OAAS,KAKhFI,EAAuB,CAACC,EAAMC,IACvBd,EAAyBa,GACpBE,QAAO,CAACC,EAAKC,KACzBD,EAAIR,QACDS,EAAKhB,MAAMiB,SAASJ,IACpBE,EAAIG,KAAKF,EAAKf,UAGfc,IACR,IACS"}
1
+ {"version":3,"file":"validate.js","sources":["../../../../../../src/components/Card/components/CardInput/validate.ts"],"sourcesContent":["import { ValidatorRules } from '../../../../utils/Validator/types';\nimport { formatCPFCNPJ } from '../../../internal/SocialSecurityNumberBrazil/utils';\nimport validateSSN from '../../../internal/SocialSecurityNumberBrazil/validate';\nimport { isEmpty } from '../../../../utils/validator-utils';\nimport {\n BOLETO_SOCIAL_SECURITY_NUMBER_INVALID,\n CREDITCARD_HOLDER_NAME_INVALID,\n CREDITCARD_TAX_NUMBER_INVALID\n} from '../../../../core/Errors/constants';\n\nexport const cardInputFormatters = {\n socialSecurityNumber: formatCPFCNPJ\n};\n\nexport const cardInputValidationRules: ValidatorRules = {\n socialSecurityNumber: [\n {\n modes: ['blur'],\n validate: value => {\n if (isEmpty(value)) return null;\n return validateSSN(value);\n },\n errorMessage: BOLETO_SOCIAL_SECURITY_NUMBER_INVALID\n }\n ],\n taxNumber: [\n {\n modes: ['blur'],\n validate: value => (isEmpty(value) ? null : value?.length === 6 || value?.length === 10),\n errorMessage: CREDITCARD_TAX_NUMBER_INVALID\n }\n ],\n holderName: [\n {\n // Will fire at startup and when triggerValidation is called and also applies as text is input\n modes: ['blur'],\n validate: value => (isEmpty(value) ? null : true), // true, if there are chars other than spaces\n errorMessage: CREDITCARD_HOLDER_NAME_INVALID\n }\n ],\n default: [\n {\n modes: ['blur'],\n // ensuring we don't try to run this against objects e.g. billingAddress\n validate: value => !!value && typeof value === 'string' && value.trim().length > 0\n }\n ]\n};\n\nexport const getRuleByNameAndMode = (name, mode) => {\n const ruleArr = cardInputValidationRules[name] as any[];\n const rule = ruleArr.reduce((acc, elem) => {\n if (!acc.length) {\n if (elem.modes.includes(mode)) {\n acc.push(elem.validate);\n }\n }\n return acc;\n }, []);\n return rule[0];\n};\n"],"names":["cardInputFormatters","socialSecurityNumber","formatCPFCNPJ","cardInputValidationRules","modes","validate","value","isEmpty","validateSSN","errorMessage","BOLETO_SOCIAL_SECURITY_NUMBER_INVALID","taxNumber","length","CREDITCARD_TAX_NUMBER_INVALID","holderName","CREDITCARD_HOLDER_NAME_INVALID","default","trim","getRuleByNameAndMode","name","mode","reduce","acc","elem","includes","push"],"mappings":"uYAUaA,EAAsB,CAC/BC,qBAAsBC,GAGbC,EAA2C,CACpDF,qBAAsB,CAClB,CACIG,MAAO,CAAC,QACRC,SAAUC,GACFC,EAAQD,GAAe,KACpBE,EAAYF,GAEvBG,aAAcC,IAGtBC,UAAW,CACP,CACIP,MAAO,CAAC,QACRC,SAAUC,GAAUC,EAAQD,GAAS,KAAyB,IAAlBA,GAAOM,QAAkC,KAAlBN,GAAOM,OAC1EH,aAAcI,IAGtBC,WAAY,CACR,CAEIV,MAAO,CAAC,QACRC,SAAUC,IAAUC,EAAQD,IAAS,KACrCG,aAAcM,IAGtBC,QAAS,CACL,CACIZ,MAAO,CAAC,QAERC,SAAUC,KAAWA,GAA0B,iBAAVA,GAAsBA,EAAMW,OAAOL,OAAS,KAKhFM,EAAuB,CAACC,EAAMC,IACvBjB,EAAyBgB,GACpBE,QAAO,CAACC,EAAKC,KACzBD,EAAIV,QACDW,EAAKnB,MAAMoB,SAASJ,IACpBE,EAAIG,KAAKF,EAAKlB,UAGfiB,IACR,IACS"}
@@ -1,2 +1,2 @@
1
- var e={onClick:e=>{e.resolve()},showPayButton:!0,enableStoreDetails:!1,storePaymentMethod:!1};export{e as default};
1
+ var e={onClick:e=>{e.resolve()},enableStoreDetails:!1,storePaymentMethod:!1};export{e as default};
2
2
  //# sourceMappingURL=defaultProps.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"defaultProps.js","sources":["../../../../src/components/CashAppPay/defaultProps.ts"],"sourcesContent":["export default {\n onClick: actions => {\n actions.resolve();\n },\n showPayButton: true,\n enableStoreDetails: false,\n storePaymentMethod: false\n};\n"],"names":["defaultProps","onClick","actions","resolve","showPayButton","enableStoreDetails","storePaymentMethod"],"mappings":"AAAA,IAAeA,EAAA,CACXC,QAASC,IACLA,EAAQC,SAAO,EAEnBC,eAAe,EACfC,oBAAoB,EACpBC,oBAAoB"}
1
+ {"version":3,"file":"defaultProps.js","sources":["../../../../src/components/CashAppPay/defaultProps.ts"],"sourcesContent":["export default {\n onClick: actions => {\n actions.resolve();\n },\n enableStoreDetails: false,\n storePaymentMethod: false\n};\n"],"names":["defaultProps","onClick","actions","resolve","enableStoreDetails","storePaymentMethod"],"mappings":"AAAA,IAAeA,EAAA,CACXC,QAASC,IACLA,EAAQC,SAAO,EAEnBC,oBAAoB,EACpBC,oBAAoB"}
@@ -1 +1 @@
1
- {"version":3,"file":"Donation.js","sources":["../../../../src/components/Donation/Donation.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport CoreProvider from '../../core/Context/CoreProvider';\nimport DonationComponent from './components/DonationComponent';\nimport { TxVariants } from '../tx-variants';\nimport type { ICore } from '../../core/types';\nimport type { DonationConfiguration } from './types';\n\nclass DonationElement extends UIElement<DonationConfiguration> {\n public static type = TxVariants.donation;\n\n constructor(checkout: ICore, props?: DonationConfiguration) {\n super(checkout, props);\n this.donate = this.donate.bind(this);\n }\n\n public static defaultProps = {\n onCancel: () => {},\n onDonate: () => {}\n };\n\n /**\n * Returns the component payment data ready to submit to the Checkout API\n */\n get data() {\n return this.state.data;\n }\n\n /**\n * Returns whether the component state is valid or not\n */\n get isValid() {\n return this.state.isValid;\n }\n\n setState(newState) {\n this.state = { ...this.state, ...newState };\n }\n\n donate() {\n const { data, isValid } = this;\n this.props.onDonate({ data, isValid }, this);\n }\n\n public handleRef = ref => {\n this.componentRef = ref;\n };\n\n render() {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n {/* @ts-ignore ref handled by Preact internally */}\n <DonationComponent {...this.props} ref={this.handleRef} onChange={this.setState} onDonate={this.donate} />\n </CoreProvider>\n );\n }\n}\n\nexport default DonationElement;\n"],"names":["DonationElement","UIElement","static","TxVariants","donation","constructor","checkout","props","super","this","donate","bind","onCancel","onDonate","data","state","isValid","setState","newState","handleRef","ref","componentRef","render","h","CoreProvider","i18n","loadingContext","resources","DonationComponent","onChange"],"mappings":"sRAQA,MAAMA,UAAwBC,EAC1BC,YAAqBC,EAAWC,SAEhCC,WAAAA,CAAYC,EAAiBC,GACzBC,MAAMF,EAAUC,GAChBE,KAAKC,OAASD,KAAKC,OAAOC,KAAKF,KACnC,CAEAP,oBAA6B,CACzBU,SAAU,OACVC,SAAU,QAMd,QAAIC,GACA,OAAOL,KAAKM,MAAMD,IACtB,CAKA,WAAIE,GACA,OAAOP,KAAKM,MAAMC,OACtB,CAEAC,QAAAA,CAASC,GACLT,KAAKM,MAAQ,IAAKN,KAAKM,SAAUG,EACrC,CAEAR,MAAAA,GACI,MAAMI,KAAEA,EAAIE,QAAEA,GAAYP,KAC1BA,KAAKF,MAAMM,SAAS,CAAEC,OAAME,WAAWP,KAC3C,CAEOU,UAAYC,IACfX,KAAKY,aAAeD,CAAAA,EAGxBE,MAAAA,GACI,OACIC,EAACC,EAAAA,CAAaC,KAAMhB,KAAKF,MAAMkB,KAAMC,eAAgBjB,KAAKF,MAAMmB,eAAgBC,UAAWlB,KAAKkB,WAE5FJ,EAACK,EAAAA,IAAsBnB,KAAKF,MAAOa,IAAKX,KAAKU,UAAWU,SAAUpB,KAAKQ,SAAUJ,SAAUJ,KAAKC,SAG5G"}
1
+ {"version":3,"file":"Donation.js","sources":["../../../../src/components/Donation/Donation.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport CoreProvider from '../../core/Context/CoreProvider';\nimport DonationComponent from './components/DonationComponent';\nimport { TxVariants } from '../tx-variants';\nimport type { ICore } from '../../core/types';\nimport type { DonationConfiguration } from './types';\n\nclass DonationElement extends UIElement<DonationConfiguration> {\n public static type = TxVariants.donation;\n\n constructor(checkout: ICore, props?: DonationConfiguration) {\n super(checkout, props);\n this.donate = this.donate.bind(this);\n }\n\n public static defaultProps = {\n onCancel: () => {},\n onDonate: () => {}\n };\n\n /**\n * Returns the component payment data ready to submit to the Checkout API\n */\n get data() {\n return this.state.data;\n }\n\n /**\n * Returns whether the component state is valid or not\n */\n get isValid() {\n return this.state.isValid;\n }\n\n setState(newState) {\n this.state = { ...this.state, ...newState };\n }\n\n donate() {\n const { data, isValid } = this;\n this.props.onDonate({ data, isValid }, this);\n }\n\n public handleRef = ref => {\n this.componentRef = ref;\n };\n\n render() {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n {/*@ts-ignore ref*/}\n <DonationComponent {...this.props} ref={this.handleRef} onChange={this.setState} onDonate={this.donate} />\n </CoreProvider>\n );\n }\n}\n\nexport default DonationElement;\n"],"names":["DonationElement","UIElement","static","TxVariants","donation","constructor","checkout","props","super","this","donate","bind","onCancel","onDonate","data","state","isValid","setState","newState","handleRef","ref","componentRef","render","h","CoreProvider","i18n","loadingContext","resources","DonationComponent","onChange"],"mappings":"sRAQA,MAAMA,UAAwBC,EAC1BC,YAAqBC,EAAWC,SAEhCC,WAAAA,CAAYC,EAAiBC,GACzBC,MAAMF,EAAUC,GAChBE,KAAKC,OAASD,KAAKC,OAAOC,KAAKF,KACnC,CAEAP,oBAA6B,CACzBU,SAAU,OACVC,SAAU,QAMd,QAAIC,GACA,OAAOL,KAAKM,MAAMD,IACtB,CAKA,WAAIE,GACA,OAAOP,KAAKM,MAAMC,OACtB,CAEAC,QAAAA,CAASC,GACLT,KAAKM,MAAQ,IAAKN,KAAKM,SAAUG,EACrC,CAEAR,MAAAA,GACI,MAAMI,KAAEA,EAAIE,QAAEA,GAAYP,KAC1BA,KAAKF,MAAMM,SAAS,CAAEC,OAAME,WAAWP,KAC3C,CAEOU,UAAYC,IACfX,KAAKY,aAAeD,CAAAA,EAGxBE,MAAAA,GACI,OACIC,EAACC,EAAAA,CAAaC,KAAMhB,KAAKF,MAAMkB,KAAMC,eAAgBjB,KAAKF,MAAMmB,eAAgBC,UAAWlB,KAAKkB,WAE5FJ,EAACK,EAAAA,IAAsBnB,KAAKF,MAAOa,IAAKX,KAAKU,UAAWU,SAAUpB,KAAKQ,SAAUJ,SAAUJ,KAAKC,SAG5G"}
@@ -1,2 +1,2 @@
1
- import{createElement as t}from"../../external/preact/dist/preact.js";import{UIElement as s}from"../internal/UIElement/UIElement.js";import e from"./components/DragonpayInput/DragonpayInput.js";import r from"./components/DragonpayVoucherResult/DragonpayVoucherResult.js";import o from"../../core/Context/CoreProvider.js";import{TxVariants as n}from"../tx-variants.js";class i extends s{static type=n.dragonpay;static txVariants=[n.dragonpay,n.dragonpay_ebanking,n.dragonpay_otc_banking,n.dragonpay_otc_non_banking,n.dragonpay_otc_philippines];get isValid(){return!!this.state.isValid}formatData(){const{issuer:t,shopperEmail:s}=this.state.data;return{...s&&{shopperEmail:s},paymentMethod:{...t&&{issuer:t},type:this.type}}}formatProps(t){return{...t,issuers:t.details?.find((t=>"issuer"===t.key))?.items??t.issuers}}render(){return t(o,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},this.props.reference?t(r,{ref:t=>{this.componentRef=t},icon:this.icon,...this.props}):t(e,{ref:t=>{this.componentRef=t},items:this.props.issuers,...this.props,onChange:this.setState,onSubmit:this.submit,payButton:this.payButton}))}}export{i as DragonpayElement,i as default};
1
+ import{createElement as t}from"../../external/preact/dist/preact.js";import{UIElement as s}from"../internal/UIElement/UIElement.js";import e from"./components/DragonpayInput/DragonpayInput.js";import r from"./components/DragonpayVoucherResult/DragonpayVoucherResult.js";import o from"../../core/Context/CoreProvider.js";import{TxVariants as n}from"../tx-variants.js";class a extends s{static type=n.dragonpay;static txVariants=[n.dragonpay,n.dragonpay_ebanking,n.dragonpay_otc_banking,n.dragonpay_otc_non_banking,n.dragonpay_otc_philippines];get isValid(){return!!this.state.isValid}formatData(){const{issuer:t,shopperEmail:s}=this.state.data;return{...s&&{shopperEmail:s},paymentMethod:{...t&&{issuer:t},type:this.type}}}formatProps(t){return{...t,issuers:t.details?.find((t=>"issuer"===t.key))?.items??t.issuers}}render(){return t(o,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},this.props.reference?t(r,{ref:t=>{this.componentRef=t},icon:this.icon,...this.props}):t(e,{ref:t=>{this.componentRef=t},items:this.props.issuers,...this.props,showPayButton:this.props.showPayButton,onChange:this.setState,onSubmit:this.submit,payButton:this.payButton}))}}export{a as DragonpayElement,a as default};
2
2
  //# sourceMappingURL=Dragonpay.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Dragonpay.js","sources":["../../../../src/components/Dragonpay/Dragonpay.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport DragonpayInput from './components/DragonpayInput';\nimport DragonpayVoucherResult from './components/DragonpayVoucherResult';\nimport CoreProvider from '../../core/Context/CoreProvider';\nimport { DragonpayConfiguraton } from './types';\nimport { TxVariants } from '../tx-variants';\n\nexport class DragonpayElement extends UIElement<DragonpayConfiguraton> {\n public static type = TxVariants.dragonpay;\n\n public static txVariants = [\n TxVariants.dragonpay,\n TxVariants.dragonpay_ebanking,\n TxVariants.dragonpay_otc_banking,\n TxVariants.dragonpay_otc_non_banking,\n TxVariants.dragonpay_otc_philippines\n ];\n\n get isValid() {\n return !!this.state.isValid;\n }\n\n /**\n * Formats the component data output\n */\n formatData() {\n const { issuer, shopperEmail } = this.state.data;\n\n return {\n ...(shopperEmail && { shopperEmail }),\n paymentMethod: {\n ...(issuer && { issuer }),\n type: this.type\n }\n };\n }\n\n protected formatProps(props: DragonpayConfiguraton) {\n return {\n ...props,\n issuers: props.details?.find(detail => detail.key === 'issuer')?.items ?? props.issuers\n };\n }\n\n render() {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n {this.props.reference ? (\n <DragonpayVoucherResult\n ref={ref => {\n this.componentRef = ref;\n }}\n icon={this.icon}\n {...this.props}\n />\n ) : (\n <DragonpayInput\n ref={ref => {\n this.componentRef = ref;\n }}\n items={this.props.issuers}\n {...this.props}\n onChange={this.setState}\n onSubmit={this.submit}\n payButton={this.payButton}\n />\n )}\n </CoreProvider>\n );\n }\n}\n\nexport default DragonpayElement;\n"],"names":["DragonpayElement","UIElement","static","TxVariants","dragonpay","dragonpay_ebanking","dragonpay_otc_banking","dragonpay_otc_non_banking","dragonpay_otc_philippines","isValid","this","state","formatData","issuer","shopperEmail","data","paymentMethod","type","formatProps","props","issuers","details","find","detail","key","items","render","h","CoreProvider","i18n","loadingContext","resources","reference","DragonpayVoucherResult","ref","componentRef","icon","DragonpayInput","onChange","setState","onSubmit","submit","payButton"],"mappings":"+WAQO,MAAMA,UAAyBC,EAClCC,YAAqBC,EAAWC,UAEhCF,kBAA2B,CACvBC,EAAWC,UACXD,EAAWE,mBACXF,EAAWG,sBACXH,EAAWI,0BACXJ,EAAWK,2BAGf,WAAIC,GACA,QAASC,KAAKC,MAAMF,OACxB,CAKAG,UAAAA,GACI,MAAMC,OAAEA,EAAMC,aAAEA,GAAiBJ,KAAKC,MAAMI,KAE5C,MAAO,IACCD,GAAgB,CAAEA,gBACtBE,cAAe,IACPH,GAAU,CAAEA,UAChBI,KAAMP,KAAKO,MAGvB,CAEUC,WAAAA,CAAYC,GAClB,MAAO,IACAA,EACHC,QAASD,EAAME,SAASC,MAAKC,GAAyB,WAAfA,EAAOC,OAAmBC,OAASN,EAAMC,QAExF,CAEAM,MAAAA,GACI,OACIC,EAACC,EAAAA,CAAaC,KAAMnB,KAAKS,MAAMU,KAAMC,eAAgBpB,KAAKS,MAAMW,eAAgBC,UAAWrB,KAAKqB,WAC3FrB,KAAKS,MAAMa,UACRL,EAACM,EAAAA,CACGC,IAAKA,IACDxB,KAAKyB,aAAeD,CAAAA,EAExBE,KAAM1B,KAAK0B,QACP1B,KAAKS,QAGbQ,EAACU,EAAAA,CACGH,IAAKA,IACDxB,KAAKyB,aAAeD,CAAAA,EAExBT,MAAOf,KAAKS,MAAMC,WACdV,KAAKS,MACTmB,SAAU5B,KAAK6B,SACfC,SAAU9B,KAAK+B,OACfC,UAAWhC,KAAKgC,YAKpC"}
1
+ {"version":3,"file":"Dragonpay.js","sources":["../../../../src/components/Dragonpay/Dragonpay.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport DragonpayInput from './components/DragonpayInput';\nimport DragonpayVoucherResult from './components/DragonpayVoucherResult';\nimport CoreProvider from '../../core/Context/CoreProvider';\nimport { DragonpayConfiguraton } from './types';\nimport { TxVariants } from '../tx-variants';\n\nexport class DragonpayElement extends UIElement<DragonpayConfiguraton> {\n public static type = TxVariants.dragonpay;\n\n public static txVariants = [\n TxVariants.dragonpay,\n TxVariants.dragonpay_ebanking,\n TxVariants.dragonpay_otc_banking,\n TxVariants.dragonpay_otc_non_banking,\n TxVariants.dragonpay_otc_philippines\n ];\n\n get isValid() {\n return !!this.state.isValid;\n }\n\n /**\n * Formats the component data output\n */\n formatData() {\n const { issuer, shopperEmail } = this.state.data;\n\n return {\n ...(shopperEmail && { shopperEmail }),\n paymentMethod: {\n ...(issuer && { issuer }),\n type: this.type\n }\n };\n }\n\n protected formatProps(props: DragonpayConfiguraton) {\n return {\n ...props,\n issuers: props.details?.find(detail => detail.key === 'issuer')?.items ?? props.issuers\n };\n }\n\n render() {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n {this.props.reference ? (\n <DragonpayVoucherResult\n ref={ref => {\n this.componentRef = ref;\n }}\n icon={this.icon}\n {...this.props}\n />\n ) : (\n <DragonpayInput\n ref={ref => {\n this.componentRef = ref;\n }}\n items={this.props.issuers}\n {...this.props}\n showPayButton={this.props.showPayButton}\n onChange={this.setState}\n onSubmit={this.submit}\n payButton={this.payButton}\n />\n )}\n </CoreProvider>\n );\n }\n}\n\nexport default DragonpayElement;\n"],"names":["DragonpayElement","UIElement","static","TxVariants","dragonpay","dragonpay_ebanking","dragonpay_otc_banking","dragonpay_otc_non_banking","dragonpay_otc_philippines","isValid","this","state","formatData","issuer","shopperEmail","data","paymentMethod","type","formatProps","props","issuers","details","find","detail","key","items","render","h","CoreProvider","i18n","loadingContext","resources","reference","DragonpayVoucherResult","ref","componentRef","icon","DragonpayInput","showPayButton","onChange","setState","onSubmit","submit","payButton"],"mappings":"+WAQO,MAAMA,UAAyBC,EAClCC,YAAqBC,EAAWC,UAEhCF,kBAA2B,CACvBC,EAAWC,UACXD,EAAWE,mBACXF,EAAWG,sBACXH,EAAWI,0BACXJ,EAAWK,2BAGf,WAAIC,GACA,QAASC,KAAKC,MAAMF,OACxB,CAKAG,UAAAA,GACI,MAAMC,OAAEA,EAAMC,aAAEA,GAAiBJ,KAAKC,MAAMI,KAE5C,MAAO,IACCD,GAAgB,CAAEA,gBACtBE,cAAe,IACPH,GAAU,CAAEA,UAChBI,KAAMP,KAAKO,MAGvB,CAEUC,WAAAA,CAAYC,GAClB,MAAO,IACAA,EACHC,QAASD,EAAME,SAASC,MAAKC,GAAyB,WAAfA,EAAOC,OAAmBC,OAASN,EAAMC,QAExF,CAEAM,MAAAA,GACI,OACIC,EAACC,EAAAA,CAAaC,KAAMnB,KAAKS,MAAMU,KAAMC,eAAgBpB,KAAKS,MAAMW,eAAgBC,UAAWrB,KAAKqB,WAC3FrB,KAAKS,MAAMa,UACRL,EAACM,EAAAA,CACGC,IAAKA,IACDxB,KAAKyB,aAAeD,CAAAA,EAExBE,KAAM1B,KAAK0B,QACP1B,KAAKS,QAGbQ,EAACU,EAAAA,CACGH,IAAKA,IACDxB,KAAKyB,aAAeD,CAAAA,EAExBT,MAAOf,KAAKS,MAAMC,WACdV,KAAKS,MACTmB,cAAe5B,KAAKS,MAAMmB,cAC1BC,SAAU7B,KAAK8B,SACfC,SAAU/B,KAAKgC,OACfC,UAAWjC,KAAKiC,YAKpC"}
@@ -1,2 +1,2 @@
1
- import{Component as t,createElement as e}from"../../../external/preact/dist/preact.js";import s from"./PaymentMethod/PaymentMethodList.js";import n from"./status/index.js";import o from"../../../core/Services/order-status.js";import{ANALYTICS_RENDERED_STR as a}from"../../../core/Analytics/constants.js";class r extends t{state={elements:[],instantPaymentElements:[],storedPaymentElements:[],orderStatus:null,isDisabling:!1,status:{type:"loading",props:void 0},activePaymentMethod:null,cachedPaymentMethods:{}};componentDidMount(){this.prepareDropinData()}prepareDropinData=()=>{const{order:t,clientKey:e,loadingContext:s}=this.props,[n,r,i]=this.props.onCreateElements(),d=t?o({clientKey:e,loadingContext:s},t):null;Promise.all([n,r,i,d]).then((([t,e,s,n])=>{this.setState({instantPaymentElements:s,elements:e,storedPaymentElements:t,orderStatus:n}),this.setStatus("ready"),this.props.modules?.analytics.sendAnalytics("dropin",{type:a})})),this.onOrderCancel=this.getOnOrderCancel()};setStatus=(t,e={})=>{this.setState({status:{type:t,props:e}})};setActivePaymentMethod=t=>{this.setState((e=>({activePaymentMethod:t,cachedPaymentMethods:{...e.cachedPaymentMethods,[t._id]:!0}})))};componentDidUpdate(t,e){e.status.type!==this.state.status.type&&this.state.activePaymentMethod&&this.state.activePaymentMethod.setStatus(this.state.status.type),"ready"===this.state.status.type&&"ready"!==e.status.type&&this.props.onReady&&this.props.onReady()}handleOnSelectPaymentMethod=t=>{const{activePaymentMethod:e}=this.state;this.setActivePaymentMethod(t),(e&&e._id!==t._id||!e)&&(this.props.onSelect?.(t),t.submitAnalytics({type:a}))};handleDisableStoredPaymentMethod=t=>{this.setState({isDisabling:!0}),new Promise(((e,s)=>this.props.onDisableStoredPaymentMethod(t.props.storedPaymentMethodId,e,s))).then((()=>{this.setState((e=>({elements:e.elements.filter((e=>e._id!==t._id))}))),this.setState({isDisabling:!1})})).catch((()=>{this.setState({isDisabling:!1})}))};closeActivePaymentMethod(){this.setState({activePaymentMethod:null})}getOnOrderCancel=()=>this.props.onOrderCancel?t=>{this.props.onOrderCancel(t)}:this.props.session?t=>this.props.session.cancelOrder(t).then((()=>this.props.core.update({order:null}))).catch((t=>this.setStatus(t?.message||"error"))):null;onOrderCancel;render(t,{elements:o,instantPaymentElements:a,storedPaymentElements:r,status:i,activePaymentMethod:d,cachedPaymentMethods:h}){const p="loading"===i.type,m="redirect"===i.type,c=o?.length||a?.length||r?.length;switch(i.type){case"success":return e(n.Success,{message:0===t?.amount?.value?"resultMessages.preauthorized":i.props?.message});case"error":return e(n.Error,{message:i.props?.message});case"custom":return i.props?.component?.render();default:return e("div",{className:`adyen-checkout__dropin adyen-checkout__dropin--${i.type}`},m&&i.props.component&&i.props.component.render(),p&&i.props&&i.props.component&&i.props.component.render(),c&&e(s,{isLoading:p||m,isDisablingPaymentMethod:this.state.isDisabling,paymentMethods:o,instantPaymentMethods:a,storedPaymentMethods:r,activePaymentMethod:d,cachedPaymentMethods:h,order:this.props.order,orderStatus:this.state.orderStatus,onOrderCancel:this.onOrderCancel,onSelect:this.handleOnSelectPaymentMethod,openFirstPaymentMethod:this.props.openFirstPaymentMethod,openFirstStoredPaymentMethod:this.props.openFirstStoredPaymentMethod,onDisableStoredPaymentMethod:this.handleDisableStoredPaymentMethod,showRemovePaymentMethodButton:this.props.showRemovePaymentMethodButton,showRadioButton:this.props.showRadioButton}))}}}export{r as DropinComponent,r as default};
1
+ import{Component as e,createElement as t}from"../../../external/preact/dist/preact.js";import s from"./PaymentMethod/PaymentMethodList.js";import o from"./status/index.js";import n from"../../../core/Services/order-status.js";import{sanitizeOrder as a}from"../../internal/UIElement/utils.js";import{ANALYTICS_RENDERED_STR as r}from"../../../core/Analytics/constants.js";import i from"../../../core/Errors/AdyenCheckoutError.js";class d extends e{state={elements:[],instantPaymentElements:[],storedPaymentElements:[],orderStatus:null,isDisabling:!1,status:{type:"loading",props:void 0},activePaymentMethod:null,cachedPaymentMethods:{}};componentDidMount(){this.prepareDropinData()}prepareDropinData=()=>{const{order:e,clientKey:t,loadingContext:s}=this.props,[o,a,i]=this.props.onCreateElements(),d=e?n({clientKey:t,loadingContext:s},e):null;Promise.all([o,a,i,d]).then((([e,t,s,o])=>{this.setState({instantPaymentElements:s,elements:t,storedPaymentElements:e,orderStatus:o}),this.setStatus("ready"),this.props.modules?.analytics.sendAnalytics("dropin",{type:r})})),this.onOrderCancel=this.getOnOrderCancel()};setStatus=(e,t={})=>{this.setState({status:{type:e,props:t}})};setActivePaymentMethod=e=>{this.setState((t=>({activePaymentMethod:e,cachedPaymentMethods:{...t.cachedPaymentMethods,[e._id]:!0}})))};componentDidUpdate(e,t){t.status.type!==this.state.status.type&&this.state.activePaymentMethod&&this.state.activePaymentMethod.setStatus(this.state.status.type),"ready"===this.state.status.type&&"ready"!==t.status.type&&this.props.onReady&&this.props.onReady()}handleOnSelectPaymentMethod=e=>{const{activePaymentMethod:t}=this.state;this.setActivePaymentMethod(e),(t&&t._id!==e._id||!t)&&(this.props.onSelect?.(e),e.submitAnalytics({type:r}))};handleDisableStoredPaymentMethod=e=>{this.setState({isDisabling:!0}),new Promise(((t,s)=>this.props.onDisableStoredPaymentMethod(e.props.storedPaymentMethodId,t,s))).then((()=>{this.setState((t=>({elements:t.elements.filter((t=>t._id!==e._id))}))),this.setState({isDisabling:!1})})).catch((()=>{this.setState({isDisabling:!1})}))};closeActivePaymentMethod(){this.setState({activePaymentMethod:null})}getOnOrderCancel=()=>this.props.onOrderCancel?e=>{const t=a(e.order);new Promise(((e,s)=>{this.props.onOrderCancel({order:t},{resolve:e,reject:s})})).then((({amount:e})=>this.props.elementRef.handleAdvanceFlowPaymentMethodsUpdate(null,e))).catch((e=>{throw new i("NETWORK_ERROR",e)}))}:this.props.session?e=>this.props.session.cancelOrder(e).then((()=>this.props.core.update({order:null}))).catch((e=>{console.error(e),this.setStatus(e?.message||"error")})):null;onOrderCancel;render(e,{elements:n,instantPaymentElements:a,storedPaymentElements:r,status:i,activePaymentMethod:d,cachedPaymentMethods:h}){const p="loading"===i.type,m="redirect"===i.type,c=n?.length||a?.length||r?.length;switch(i.type){case"success":return t(o.Success,{message:0===e?.amount?.value?"resultMessages.preauthorized":i.props?.message});case"error":return t(o.Error,{message:i.props?.message});case"custom":return i.props?.component?.render();default:return t("div",{className:`adyen-checkout__dropin adyen-checkout__dropin--${i.type}`},m&&i.props.component&&i.props.component.render(),p&&i.props&&i.props.component&&i.props.component.render(),c&&t(s,{isLoading:p||m,isDisablingPaymentMethod:this.state.isDisabling,paymentMethods:n,instantPaymentMethods:a,storedPaymentMethods:r,activePaymentMethod:d,cachedPaymentMethods:h,order:this.props.order,orderStatus:this.state.orderStatus,onOrderCancel:this.onOrderCancel,onSelect:this.handleOnSelectPaymentMethod,openFirstPaymentMethod:this.props.openFirstPaymentMethod,openFirstStoredPaymentMethod:this.props.openFirstStoredPaymentMethod,onDisableStoredPaymentMethod:this.handleDisableStoredPaymentMethod,showRemovePaymentMethodButton:this.props.showRemovePaymentMethodButton,showRadioButton:this.props.showRadioButton}))}}}export{d as DropinComponent,d as default};
2
2
  //# sourceMappingURL=DropinComponent.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DropinComponent.js","sources":["../../../../../src/components/Dropin/components/DropinComponent.tsx"],"sourcesContent":["import { Component, h } from 'preact';\nimport PaymentMethodList from './PaymentMethod/PaymentMethodList';\nimport Status from './status';\nimport getOrderStatus from '../../../core/Services/order-status';\nimport { DropinComponentProps, DropinComponentState, DropinStatusProps, onOrderCancelData } from '../types';\nimport './DropinComponent.scss';\nimport { UIElementStatus } from '../../internal/UIElement/types';\nimport { ANALYTICS_RENDERED_STR } from '../../../core/Analytics/constants';\n\nexport class DropinComponent extends Component<DropinComponentProps, DropinComponentState> {\n public state: DropinComponentState = {\n elements: [],\n instantPaymentElements: [],\n storedPaymentElements: [],\n orderStatus: null,\n isDisabling: false,\n status: { type: 'loading', props: undefined },\n activePaymentMethod: null,\n cachedPaymentMethods: {}\n };\n\n componentDidMount() {\n this.prepareDropinData();\n }\n\n public prepareDropinData = () => {\n const { order, clientKey, loadingContext } = this.props;\n const [storedElementsPromises, elementsPromises, instantPaymentsPromises] = this.props.onCreateElements();\n const orderStatusPromise = order ? getOrderStatus({ clientKey, loadingContext }, order) : null;\n\n Promise.all([storedElementsPromises, elementsPromises, instantPaymentsPromises, orderStatusPromise]).then(\n ([storedPaymentElements, elements, instantPaymentElements, orderStatus]) => {\n this.setState({ instantPaymentElements, elements, storedPaymentElements, orderStatus });\n this.setStatus('ready');\n\n this.props.modules?.analytics.sendAnalytics('dropin', { type: ANALYTICS_RENDERED_STR });\n }\n );\n\n this.onOrderCancel = this.getOnOrderCancel();\n };\n\n public setStatus = (status: UIElementStatus, props: DropinStatusProps = {}) => {\n this.setState({ status: { type: status, props } });\n };\n\n private setActivePaymentMethod = paymentMethod => {\n this.setState(prevState => ({\n activePaymentMethod: paymentMethod,\n cachedPaymentMethods: { ...prevState.cachedPaymentMethods, [paymentMethod._id]: true }\n }));\n };\n\n componentDidUpdate(prevProps, prevState) {\n if (prevState.status.type !== this.state.status.type && this.state.activePaymentMethod) {\n this.state.activePaymentMethod.setStatus(this.state.status.type);\n }\n\n if (this.state.status.type === 'ready' && prevState.status.type !== 'ready' && this.props.onReady) {\n this.props.onReady();\n }\n }\n\n private handleOnSelectPaymentMethod = paymentMethod => {\n const { activePaymentMethod } = this.state;\n\n this.setActivePaymentMethod(paymentMethod);\n\n // onSelect event\n if ((activePaymentMethod && activePaymentMethod._id !== paymentMethod._id) || !activePaymentMethod) {\n this.props.onSelect?.(paymentMethod);\n\n paymentMethod.submitAnalytics({ type: ANALYTICS_RENDERED_STR });\n }\n };\n\n private handleDisableStoredPaymentMethod = storedPaymentMethod => {\n this.setState({ isDisabling: true });\n\n new Promise((resolve, reject) => this.props.onDisableStoredPaymentMethod(storedPaymentMethod.props.storedPaymentMethodId, resolve, reject))\n .then(() => {\n this.setState(prevState => ({ elements: prevState.elements.filter(pm => pm._id !== storedPaymentMethod._id) }));\n this.setState({ isDisabling: false });\n })\n .catch(() => {\n this.setState({ isDisabling: false });\n });\n };\n\n closeActivePaymentMethod() {\n this.setState({ activePaymentMethod: null });\n }\n\n /**\n * getOnOrderCancel decides which onOrderCancel logic should be used, manual or sessions\n */\n private getOnOrderCancel = () => {\n if (this.props.onOrderCancel) {\n return (data: onOrderCancelData) => {\n this.props.onOrderCancel(data);\n };\n }\n if (this.props.session) {\n return (data: onOrderCancelData) =>\n this.props.session\n .cancelOrder(data)\n .then(() => this.props.core.update({ order: null }))\n .catch(error => this.setStatus(error?.message || 'error'));\n }\n return null;\n };\n\n private onOrderCancel: (data: onOrderCancelData) => void;\n\n render(props, { elements, instantPaymentElements, storedPaymentElements, status, activePaymentMethod, cachedPaymentMethods }) {\n const isLoading = status.type === 'loading';\n const isRedirecting = status.type === 'redirect';\n const hasPaymentMethodsToBeDisplayed = elements?.length || instantPaymentElements?.length || storedPaymentElements?.length;\n\n switch (status.type) {\n case 'success':\n return <Status.Success message={props?.amount?.value === 0 ? 'resultMessages.preauthorized' : status.props?.message} />;\n\n case 'error':\n return <Status.Error message={status.props?.message} />;\n\n case 'custom':\n return status.props?.component?.render();\n\n default:\n return (\n <div className={`adyen-checkout__dropin adyen-checkout__dropin--${status.type}`}>\n {isRedirecting && status.props.component && status.props.component.render()}\n {isLoading && status.props && status.props.component && status.props.component.render()}\n {hasPaymentMethodsToBeDisplayed && (\n <PaymentMethodList\n isLoading={isLoading || isRedirecting}\n isDisablingPaymentMethod={this.state.isDisabling}\n paymentMethods={elements}\n instantPaymentMethods={instantPaymentElements}\n storedPaymentMethods={storedPaymentElements}\n activePaymentMethod={activePaymentMethod}\n cachedPaymentMethods={cachedPaymentMethods}\n order={this.props.order}\n orderStatus={this.state.orderStatus}\n onOrderCancel={this.onOrderCancel}\n onSelect={this.handleOnSelectPaymentMethod}\n openFirstPaymentMethod={this.props.openFirstPaymentMethod}\n openFirstStoredPaymentMethod={this.props.openFirstStoredPaymentMethod}\n onDisableStoredPaymentMethod={this.handleDisableStoredPaymentMethod}\n showRemovePaymentMethodButton={this.props.showRemovePaymentMethodButton}\n showRadioButton={this.props.showRadioButton}\n />\n )}\n </div>\n );\n }\n }\n}\n\nexport default DropinComponent;\n"],"names":["DropinComponent","Component","state","elements","instantPaymentElements","storedPaymentElements","orderStatus","isDisabling","status","type","props","undefined","activePaymentMethod","cachedPaymentMethods","componentDidMount","this","prepareDropinData","order","clientKey","loadingContext","storedElementsPromises","elementsPromises","instantPaymentsPromises","onCreateElements","orderStatusPromise","getOrderStatus","Promise","all","then","setState","setStatus","modules","analytics","sendAnalytics","ANALYTICS_RENDERED_STR","onOrderCancel","getOnOrderCancel","setActivePaymentMethod","paymentMethod","prevState","_id","componentDidUpdate","prevProps","onReady","handleOnSelectPaymentMethod","onSelect","submitAnalytics","handleDisableStoredPaymentMethod","storedPaymentMethod","resolve","reject","onDisableStoredPaymentMethod","storedPaymentMethodId","filter","pm","catch","closeActivePaymentMethod","data","session","cancelOrder","core","update","error","message","render","isLoading","isRedirecting","hasPaymentMethodsToBeDisplayed","length","h","Status","Success","amount","value","Error","component","div","className","PaymentMethodList","isDisablingPaymentMethod","paymentMethods","instantPaymentMethods","storedPaymentMethods","openFirstPaymentMethod","openFirstStoredPaymentMethod","showRemovePaymentMethodButton","showRadioButton"],"mappings":"gTASO,MAAMA,UAAwBC,EAC1BC,MAA8B,CACjCC,SAAU,GACVC,uBAAwB,GACxBC,sBAAuB,GACvBC,YAAa,KACbC,aAAa,EACbC,OAAQ,CAAEC,KAAM,UAAWC,WAAOC,GAClCC,oBAAqB,KACrBC,qBAAsB,CAAC,GAG3BC,iBAAAA,GACIC,KAAKC,mBACT,CAEOA,kBAAoB,KACvB,MAAMC,MAAEA,EAAKC,UAAEA,EAASC,eAAEA,GAAmBJ,KAAKL,OAC3CU,EAAwBC,EAAkBC,GAA2BP,KAAKL,MAAMa,mBACjFC,EAAqBP,EAAQQ,EAAe,CAAEP,YAAWC,kBAAkBF,GAAS,KAE1FS,QAAQC,IAAI,CAACP,EAAwBC,EAAkBC,EAAyBE,IAAqBI,MACjG,EAAEvB,EAAuBF,EAAUC,EAAwBE,MACvDS,KAAKc,SAAS,CAAEzB,yBAAwBD,WAAUE,wBAAuBC,gBACzES,KAAKe,UAAU,SAEff,KAAKL,MAAMqB,SAASC,UAAUC,cAAc,SAAU,CAAExB,KAAMyB,GAAuB,IAI7FnB,KAAKoB,cAAgBpB,KAAKqB,kBAAgB,EAGvCN,UAAY,CAACtB,EAAyBE,EAA2B,MACpEK,KAAKc,SAAS,CAAErB,OAAQ,CAAEC,KAAMD,EAAQE,UAAQ,EAG5C2B,uBAAyBC,IAC7BvB,KAAKc,UAASU,IAAc,CACxB3B,oBAAqB0B,EACrBzB,qBAAsB,IAAK0B,EAAU1B,qBAAsB,CAACyB,EAAcE,MAAM,MACpF,EAGJC,kBAAAA,CAAmBC,EAAWH,GACtBA,EAAU/B,OAAOC,OAASM,KAAKb,MAAMM,OAAOC,MAAQM,KAAKb,MAAMU,qBAC/DG,KAAKb,MAAMU,oBAAoBkB,UAAUf,KAAKb,MAAMM,OAAOC,MAGhC,UAA3BM,KAAKb,MAAMM,OAAOC,MAA8C,UAA1B8B,EAAU/B,OAAOC,MAAoBM,KAAKL,MAAMiC,SACtF5B,KAAKL,MAAMiC,SAEnB,CAEQC,4BAA8BN,IAClC,MAAM1B,oBAAEA,GAAwBG,KAAKb,MAErCa,KAAKsB,uBAAuBC,IAGvB1B,GAAuBA,EAAoB4B,MAAQF,EAAcE,MAAS5B,KAC3EG,KAAKL,MAAMmC,WAAWP,GAEtBA,EAAcQ,gBAAgB,CAAErC,KAAMyB,IAC1C,EAGIa,iCAAmCC,IACvCjC,KAAKc,SAAS,CAAEtB,aAAa,IAE7B,IAAImB,SAAQ,CAACuB,EAASC,IAAWnC,KAAKL,MAAMyC,6BAA6BH,EAAoBtC,MAAM0C,sBAAuBH,EAASC,KAC9HtB,MAAK,KACFb,KAAKc,UAASU,IAAc,CAAEpC,SAAUoC,EAAUpC,SAASkD,QAAOC,GAAMA,EAAGd,MAAQQ,EAAoBR,UACvGzB,KAAKc,SAAS,CAAEtB,aAAa,GAAM,IAEtCgD,OAAM,KACHxC,KAAKc,SAAS,CAAEtB,aAAa,GAAM,GACvC,EAGRiD,wBAAAA,GACIzC,KAAKc,SAAS,CAAEjB,oBAAqB,MACzC,CAKAwB,iBAA2B,IACnBrB,KAAKL,MAAMyB,cACHsB,IACJ1C,KAAKL,MAAMyB,cAAcsB,EAAAA,EAG7B1C,KAAKL,MAAMgD,QACHD,GACJ1C,KAAKL,MAAMgD,QACNC,YAAYF,GACZ7B,MAAK,IAAMb,KAAKL,MAAMkD,KAAKC,OAAO,CAAE5C,MAAO,SAC3CsC,OAAMO,GAAS/C,KAAKe,UAAUgC,GAAOC,SAAW,WAEtD,KAGH5B,cAER6B,MAAAA,CAAOtD,GAAOP,SAAEA,EAAQC,uBAAEA,EAAsBC,sBAAEA,EAAqBG,OAAEA,EAAMI,oBAAEA,EAAmBC,qBAAEA,IAClG,MAAMoD,EAA4B,YAAhBzD,EAAOC,KACnByD,EAAgC,aAAhB1D,EAAOC,KACvB0D,EAAiChE,GAAUiE,QAAUhE,GAAwBgE,QAAU/D,GAAuB+D,OAEpH,OAAQ5D,EAAOC,MACX,IAAK,UACD,OAAO4D,EAACC,EAAOC,QAAO,CAACR,QAAkC,IAAzBrD,GAAO8D,QAAQC,MAAc,+BAAiCjE,EAAOE,OAAOqD,UAEhH,IAAK,QACD,OAAOM,EAACC,EAAOI,MAAK,CAACX,QAASvD,EAAOE,OAAOqD,UAEhD,IAAK,SACD,OAAOvD,EAAOE,OAAOiE,WAAWX,SAEpC,QACI,OACIK,EAACO,MAAAA,CAAIC,UAAW,kDAAkDrE,EAAOC,QACpEyD,GAAiB1D,EAAOE,MAAMiE,WAAanE,EAAOE,MAAMiE,UAAUX,SAClEC,GAAazD,EAAOE,OAASF,EAAOE,MAAMiE,WAAanE,EAAOE,MAAMiE,UAAUX,SAC9EG,GACGE,EAACS,EAAAA,CACGb,UAAWA,GAAaC,EACxBa,yBAA0BhE,KAAKb,MAAMK,YACrCyE,eAAgB7E,EAChB8E,sBAAuB7E,EACvB8E,qBAAsB7E,EACtBO,oBAAqBA,EACrBC,qBAAsBA,EACtBI,MAAOF,KAAKL,MAAMO,MAClBX,YAAaS,KAAKb,MAAMI,YACxB6B,cAAepB,KAAKoB,cACpBU,SAAU9B,KAAK6B,4BACfuC,uBAAwBpE,KAAKL,MAAMyE,uBACnCC,6BAA8BrE,KAAKL,MAAM0E,6BACzCjC,6BAA8BpC,KAAKgC,iCACnCsC,8BAA+BtE,KAAKL,MAAM2E,8BAC1CC,gBAAiBvE,KAAKL,MAAM4E,mBAMxD"}
1
+ {"version":3,"file":"DropinComponent.js","sources":["../../../../../src/components/Dropin/components/DropinComponent.tsx"],"sourcesContent":["import { Component, h } from 'preact';\nimport PaymentMethodList from './PaymentMethod/PaymentMethodList';\nimport Status from './status';\nimport getOrderStatus from '../../../core/Services/order-status';\nimport { DropinComponentProps, DropinComponentState, DropinStatusProps, onOrderCancelData } from '../types';\nimport './DropinComponent.scss';\nimport { UIElementStatus } from '../../internal/UIElement/types';\nimport { sanitizeOrder } from '../../internal/UIElement/utils';\nimport { PaymentAmount } from '../../../types/global-types';\nimport { ANALYTICS_RENDERED_STR } from '../../../core/Analytics/constants';\nimport AdyenCheckoutError from '../../../core/Errors/AdyenCheckoutError';\n\nexport class DropinComponent extends Component<DropinComponentProps, DropinComponentState> {\n public state: DropinComponentState = {\n elements: [],\n instantPaymentElements: [],\n storedPaymentElements: [],\n orderStatus: null,\n isDisabling: false,\n status: { type: 'loading', props: undefined },\n activePaymentMethod: null,\n cachedPaymentMethods: {}\n };\n\n componentDidMount() {\n this.prepareDropinData();\n }\n\n public prepareDropinData = () => {\n const { order, clientKey, loadingContext } = this.props;\n const [storedElementsPromises, elementsPromises, instantPaymentsPromises] = this.props.onCreateElements();\n const orderStatusPromise = order ? getOrderStatus({ clientKey, loadingContext }, order) : null;\n\n Promise.all([storedElementsPromises, elementsPromises, instantPaymentsPromises, orderStatusPromise]).then(\n ([storedPaymentElements, elements, instantPaymentElements, orderStatus]) => {\n this.setState({ instantPaymentElements, elements, storedPaymentElements, orderStatus });\n this.setStatus('ready');\n\n this.props.modules?.analytics.sendAnalytics('dropin', { type: ANALYTICS_RENDERED_STR });\n }\n );\n\n this.onOrderCancel = this.getOnOrderCancel();\n };\n\n public setStatus = (status: UIElementStatus, props: DropinStatusProps = {}) => {\n this.setState({ status: { type: status, props } });\n };\n\n private setActivePaymentMethod = paymentMethod => {\n this.setState(prevState => ({\n activePaymentMethod: paymentMethod,\n cachedPaymentMethods: { ...prevState.cachedPaymentMethods, [paymentMethod._id]: true }\n }));\n };\n\n componentDidUpdate(prevProps, prevState) {\n if (prevState.status.type !== this.state.status.type && this.state.activePaymentMethod) {\n this.state.activePaymentMethod.setStatus(this.state.status.type);\n }\n\n if (this.state.status.type === 'ready' && prevState.status.type !== 'ready' && this.props.onReady) {\n this.props.onReady();\n }\n }\n\n private handleOnSelectPaymentMethod = paymentMethod => {\n const { activePaymentMethod } = this.state;\n\n this.setActivePaymentMethod(paymentMethod);\n\n // onSelect event\n if ((activePaymentMethod && activePaymentMethod._id !== paymentMethod._id) || !activePaymentMethod) {\n this.props.onSelect?.(paymentMethod);\n\n paymentMethod.submitAnalytics({ type: ANALYTICS_RENDERED_STR });\n }\n };\n\n private handleDisableStoredPaymentMethod = storedPaymentMethod => {\n this.setState({ isDisabling: true });\n\n new Promise((resolve, reject) => this.props.onDisableStoredPaymentMethod(storedPaymentMethod.props.storedPaymentMethodId, resolve, reject))\n .then(() => {\n this.setState(prevState => ({ elements: prevState.elements.filter(pm => pm._id !== storedPaymentMethod._id) }));\n this.setState({ isDisabling: false });\n })\n .catch(() => {\n this.setState({ isDisabling: false });\n });\n };\n\n closeActivePaymentMethod() {\n this.setState({ activePaymentMethod: null });\n }\n\n /**\n * getOnOrderCancel decides which onOrderCancel logic should be used, manual or sessions\n */\n private getOnOrderCancel = () => {\n if (this.props.onOrderCancel) {\n return (data: onOrderCancelData) => {\n const order = sanitizeOrder(data.order);\n new Promise<{ amount: PaymentAmount }>((resolve, reject) => {\n this.props.onOrderCancel({ order }, { resolve, reject });\n })\n .then(({ amount }) => this.props.elementRef.handleAdvanceFlowPaymentMethodsUpdate(null, amount))\n .catch(error => {\n throw new AdyenCheckoutError('NETWORK_ERROR', error);\n });\n };\n }\n if (this.props.session) {\n return (data: onOrderCancelData) =>\n this.props.session\n .cancelOrder(data)\n .then(() => this.props.core.update({ order: null }))\n .catch(error => {\n console.error(error);\n this.setStatus(error?.message || 'error');\n });\n }\n return null;\n };\n\n private onOrderCancel: (data: onOrderCancelData) => void;\n\n render(props, { elements, instantPaymentElements, storedPaymentElements, status, activePaymentMethod, cachedPaymentMethods }) {\n const isLoading = status.type === 'loading';\n const isRedirecting = status.type === 'redirect';\n const hasPaymentMethodsToBeDisplayed = elements?.length || instantPaymentElements?.length || storedPaymentElements?.length;\n\n switch (status.type) {\n case 'success':\n return <Status.Success message={props?.amount?.value === 0 ? 'resultMessages.preauthorized' : status.props?.message} />;\n\n case 'error':\n return <Status.Error message={status.props?.message} />;\n\n case 'custom':\n return status.props?.component?.render();\n\n default:\n return (\n <div className={`adyen-checkout__dropin adyen-checkout__dropin--${status.type}`}>\n {isRedirecting && status.props.component && status.props.component.render()}\n {isLoading && status.props && status.props.component && status.props.component.render()}\n {hasPaymentMethodsToBeDisplayed && (\n <PaymentMethodList\n isLoading={isLoading || isRedirecting}\n isDisablingPaymentMethod={this.state.isDisabling}\n paymentMethods={elements}\n instantPaymentMethods={instantPaymentElements}\n storedPaymentMethods={storedPaymentElements}\n activePaymentMethod={activePaymentMethod}\n cachedPaymentMethods={cachedPaymentMethods}\n order={this.props.order}\n orderStatus={this.state.orderStatus}\n onOrderCancel={this.onOrderCancel}\n onSelect={this.handleOnSelectPaymentMethod}\n openFirstPaymentMethod={this.props.openFirstPaymentMethod}\n openFirstStoredPaymentMethod={this.props.openFirstStoredPaymentMethod}\n onDisableStoredPaymentMethod={this.handleDisableStoredPaymentMethod}\n showRemovePaymentMethodButton={this.props.showRemovePaymentMethodButton}\n showRadioButton={this.props.showRadioButton}\n />\n )}\n </div>\n );\n }\n }\n}\n\nexport default DropinComponent;\n"],"names":["DropinComponent","Component","state","elements","instantPaymentElements","storedPaymentElements","orderStatus","isDisabling","status","type","props","undefined","activePaymentMethod","cachedPaymentMethods","componentDidMount","this","prepareDropinData","order","clientKey","loadingContext","storedElementsPromises","elementsPromises","instantPaymentsPromises","onCreateElements","orderStatusPromise","getOrderStatus","Promise","all","then","setState","setStatus","modules","analytics","sendAnalytics","ANALYTICS_RENDERED_STR","onOrderCancel","getOnOrderCancel","setActivePaymentMethod","paymentMethod","prevState","_id","componentDidUpdate","prevProps","onReady","handleOnSelectPaymentMethod","onSelect","submitAnalytics","handleDisableStoredPaymentMethod","storedPaymentMethod","resolve","reject","onDisableStoredPaymentMethod","storedPaymentMethodId","filter","pm","catch","closeActivePaymentMethod","data","sanitizeOrder","amount","elementRef","handleAdvanceFlowPaymentMethodsUpdate","error","AdyenCheckoutError","session","cancelOrder","core","update","console","message","render","isLoading","isRedirecting","hasPaymentMethodsToBeDisplayed","length","h","Status","Success","value","Error","component","div","className","PaymentMethodList","isDisablingPaymentMethod","paymentMethods","instantPaymentMethods","storedPaymentMethods","openFirstPaymentMethod","openFirstStoredPaymentMethod","showRemovePaymentMethodButton","showRadioButton"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{createElement as t}from"../../external/preact/dist/preact.js";import{UIElement as e}from"../internal/UIElement/UIElement.js";import o from"./components/EcontextInput/EcontextInput.js";import s from"./components/EcontextVoucherResult/EcontextVoucherResult.js";import n from"../../core/Context/CoreProvider.js";import{TxVariants as r}from"../tx-variants.js";class i extends e{static type=r.econtext;static txVariants=[r.econtext,r.econtext_atm,r.econtext_online,r.econtext_seven_eleven,r.econtext_stores];static defaultProps={personalDetailsRequired:!0,showFormInstruction:!0};get isValid(){return!this.props.personalDetailsRequired||!!this.state.isValid}formatData(){return{...this.state.data,paymentMethod:{type:this.type}}}render(){return t(n,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},this.props.reference?t(s,{ref:t=>{this.componentRef=t},...this.props}):t(o,{setComponentRef:this.setComponentRef,...this.props,onChange:this.setState,onSubmit:this.submit,payButton:this.payButton}))}}export{i as EcontextElement,i as default};
1
+ import{createElement as t}from"../../external/preact/dist/preact.js";import{UIElement as e}from"../internal/UIElement/UIElement.js";import o from"./components/EcontextInput/EcontextInput.js";import s from"./components/EcontextVoucherResult/EcontextVoucherResult.js";import n from"../../core/Context/CoreProvider.js";import{TxVariants as r}from"../tx-variants.js";class i extends e{static type=r.econtext;static txVariants=[r.econtext,r.econtext_atm,r.econtext_online,r.econtext_seven_eleven,r.econtext_stores];static defaultProps={personalDetailsRequired:!0,showFormInstruction:!0};get isValid(){return!this.props.personalDetailsRequired||!!this.state.isValid}formatData(){return{...this.state.data,paymentMethod:{type:this.type}}}render(){return t(n,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},this.props.reference?t(s,{ref:t=>{this.componentRef=t},...this.props}):t(o,{setComponentRef:this.setComponentRef,...this.props,showPayButton:this.props.showPayButton,onChange:this.setState,onSubmit:this.submit,payButton:this.payButton}))}}export{i as EcontextElement,i as default};
2
2
  //# sourceMappingURL=Econtext.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Econtext.js","sources":["../../../../src/components/Econtext/Econtext.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport EcontextInput from './components/EcontextInput';\nimport EcontextVoucherResult from './components/EcontextVoucherResult';\nimport CoreProvider from '../../core/Context/CoreProvider';\nimport { TxVariants } from '../tx-variants';\nimport { EcontextConfiguration } from './types';\n\nexport class EcontextElement extends UIElement<EcontextConfiguration> {\n public static type = TxVariants.econtext;\n public static txVariants = [\n TxVariants.econtext,\n TxVariants.econtext_atm,\n TxVariants.econtext_online,\n TxVariants.econtext_seven_eleven,\n TxVariants.econtext_stores\n ];\n\n protected static defaultProps = {\n personalDetailsRequired: true,\n showFormInstruction: true\n };\n\n get isValid() {\n if (!this.props.personalDetailsRequired) {\n return true;\n }\n return !!this.state.isValid;\n }\n\n /**\n * Formats the component data output\n */\n formatData() {\n return {\n ...this.state.data,\n paymentMethod: {\n type: this.type\n }\n };\n }\n\n render() {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n {this.props.reference ? (\n <EcontextVoucherResult\n ref={ref => {\n this.componentRef = ref;\n }}\n {...this.props}\n />\n ) : (\n <EcontextInput\n setComponentRef={this.setComponentRef}\n {...this.props}\n onChange={this.setState}\n onSubmit={this.submit}\n payButton={this.payButton}\n />\n )}\n </CoreProvider>\n );\n }\n}\n\nexport default EcontextElement;\n"],"names":["EcontextElement","UIElement","static","TxVariants","econtext","econtext_atm","econtext_online","econtext_seven_eleven","econtext_stores","personalDetailsRequired","showFormInstruction","isValid","this","props","state","formatData","data","paymentMethod","type","render","h","CoreProvider","i18n","loadingContext","resources","reference","EcontextVoucherResult","ref","componentRef","EcontextInput","setComponentRef","onChange","setState","onSubmit","submit","payButton"],"mappings":"2WAQO,MAAMA,UAAwBC,EACjCC,YAAqBC,EAAWC,SAChCF,kBAA2B,CACvBC,EAAWC,SACXD,EAAWE,aACXF,EAAWG,gBACXH,EAAWI,sBACXJ,EAAWK,iBAGfN,oBAAgC,CAC5BO,yBAAyB,EACzBC,qBAAqB,GAGzB,WAAIC,GACA,OAAKC,KAAKC,MAAMJ,2BAGPG,KAAKE,MAAMH,OACxB,CAKAI,UAAAA,GACI,MAAO,IACAH,KAAKE,MAAME,KACdC,cAAe,CACXC,KAAMN,KAAKM,MAGvB,CAEAC,MAAAA,GACI,OACIC,EAACC,EAAAA,CAAaC,KAAMV,KAAKC,MAAMS,KAAMC,eAAgBX,KAAKC,MAAMU,eAAgBC,UAAWZ,KAAKY,WAC3FZ,KAAKC,MAAMY,UACRL,EAACM,EAAAA,CACGC,IAAKA,IACDf,KAAKgB,aAAeD,CAAAA,KAEpBf,KAAKC,QAGbO,EAACS,EAAAA,CACGC,gBAAiBlB,KAAKkB,mBAClBlB,KAAKC,MACTkB,SAAUnB,KAAKoB,SACfC,SAAUrB,KAAKsB,OACfC,UAAWvB,KAAKuB,YAKpC"}
1
+ {"version":3,"file":"Econtext.js","sources":["../../../../src/components/Econtext/Econtext.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport EcontextInput from './components/EcontextInput';\nimport EcontextVoucherResult from './components/EcontextVoucherResult';\nimport CoreProvider from '../../core/Context/CoreProvider';\nimport { TxVariants } from '../tx-variants';\nimport { EcontextConfiguration } from './types';\n\nexport class EcontextElement extends UIElement<EcontextConfiguration> {\n public static type = TxVariants.econtext;\n public static txVariants = [\n TxVariants.econtext,\n TxVariants.econtext_atm,\n TxVariants.econtext_online,\n TxVariants.econtext_seven_eleven,\n TxVariants.econtext_stores\n ];\n\n protected static defaultProps = {\n personalDetailsRequired: true,\n showFormInstruction: true\n };\n\n get isValid() {\n if (!this.props.personalDetailsRequired) {\n return true;\n }\n return !!this.state.isValid;\n }\n\n /**\n * Formats the component data output\n */\n formatData() {\n return {\n ...this.state.data,\n paymentMethod: {\n type: this.type\n }\n };\n }\n\n render() {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n {this.props.reference ? (\n <EcontextVoucherResult\n ref={ref => {\n this.componentRef = ref;\n }}\n {...this.props}\n />\n ) : (\n <EcontextInput\n setComponentRef={this.setComponentRef}\n {...this.props}\n showPayButton={this.props.showPayButton}\n onChange={this.setState}\n onSubmit={this.submit}\n payButton={this.payButton}\n />\n )}\n </CoreProvider>\n );\n }\n}\n\nexport default EcontextElement;\n"],"names":["EcontextElement","UIElement","static","TxVariants","econtext","econtext_atm","econtext_online","econtext_seven_eleven","econtext_stores","personalDetailsRequired","showFormInstruction","isValid","this","props","state","formatData","data","paymentMethod","type","render","h","CoreProvider","i18n","loadingContext","resources","reference","EcontextVoucherResult","ref","componentRef","EcontextInput","setComponentRef","showPayButton","onChange","setState","onSubmit","submit","payButton"],"mappings":"2WAQO,MAAMA,UAAwBC,EACjCC,YAAqBC,EAAWC,SAChCF,kBAA2B,CACvBC,EAAWC,SACXD,EAAWE,aACXF,EAAWG,gBACXH,EAAWI,sBACXJ,EAAWK,iBAGfN,oBAAgC,CAC5BO,yBAAyB,EACzBC,qBAAqB,GAGzB,WAAIC,GACA,OAAKC,KAAKC,MAAMJ,2BAGPG,KAAKE,MAAMH,OACxB,CAKAI,UAAAA,GACI,MAAO,IACAH,KAAKE,MAAME,KACdC,cAAe,CACXC,KAAMN,KAAKM,MAGvB,CAEAC,MAAAA,GACI,OACIC,EAACC,EAAAA,CAAaC,KAAMV,KAAKC,MAAMS,KAAMC,eAAgBX,KAAKC,MAAMU,eAAgBC,UAAWZ,KAAKY,WAC3FZ,KAAKC,MAAMY,UACRL,EAACM,EAAAA,CACGC,IAAKA,IACDf,KAAKgB,aAAeD,CAAAA,KAEpBf,KAAKC,QAGbO,EAACS,EAAAA,CACGC,gBAAiBlB,KAAKkB,mBAClBlB,KAAKC,MACTkB,cAAenB,KAAKC,MAAMkB,cAC1BC,SAAUpB,KAAKqB,SACfC,SAAUtB,KAAKuB,OACfC,UAAWxB,KAAKwB,YAKpC"}
@@ -1 +1 @@
1
- {"version":3,"file":"EcontextInput.js","sources":["../../../../../../src/components/Econtext/components/EcontextInput/EcontextInput.tsx"],"sourcesContent":["import { h, VNode } from 'preact';\nimport { useRef, useState } from 'preact/hooks';\nimport PersonalDetails from '../../../internal/PersonalDetails/PersonalDetails';\nimport useCoreContext from '../../../../core/Context/useCoreContext';\nimport { econtextValidationRules } from '../../validate';\nimport { PersonalDetailsSchema } from '../../../../types/global-types';\nimport './EcontextInput.scss';\nimport FormInstruction from '../../../internal/FormInstruction';\nimport { ComponentMethodsRef } from '../../../internal/UIElement/types';\n\ninterface EcontextInputProps {\n personalDetailsRequired?: boolean;\n showFormInstruction?: boolean;\n data?: PersonalDetailsSchema;\n showPayButton?: boolean;\n payButton(config: any): VNode;\n onChange?(data: any): void;\n onSubmit?(state: any, component: any): void;\n [key: string]: any;\n}\n\nexport default function EcontextInput({ personalDetailsRequired = true, data, onChange, showPayButton, payButton, ...props }: EcontextInputProps) {\n const personalDetailsRef = useRef(null);\n const setPersonalDetailsRef = ref => {\n personalDetailsRef.current = ref;\n };\n const { i18n } = useCoreContext();\n\n const [status, setStatus] = useState('ready');\n\n /** An object by which to expose 'public' members to the parent UIElement */\n const econtextRef = useRef<ComponentMethodsRef>({});\n // Just call once\n if (!Object.keys(econtextRef.current).length) {\n props.setComponentRef?.(econtextRef.current);\n }\n\n econtextRef.current.showValidation = () => {\n personalDetailsRef.current?.showValidation();\n };\n\n econtextRef.current.setStatus = setStatus;\n\n const showFormInstruction = personalDetailsRequired && props.showFormInstruction;\n\n return (\n <div className=\"adyen-checkout__econtext-input__field\">\n {showFormInstruction && <FormInstruction />}\n {personalDetailsRequired && (\n <PersonalDetails\n data={data}\n requiredFields={['firstName', 'lastName', 'telephoneNumber', 'shopperEmail']}\n onChange={onChange}\n namePrefix=\"econtext\"\n setComponentRef={setPersonalDetailsRef}\n validationRules={econtextValidationRules}\n />\n )}\n {showPayButton && payButton({ status, label: i18n.get('confirmPurchase') })}\n </div>\n );\n}\n"],"names":["EcontextInput","personalDetailsRequired","data","onChange","showPayButton","payButton","props","personalDetailsRef","useRef","i18n","useCoreContext","status","setStatus","useState","econtextRef","Object","keys","current","length","setComponentRef","showValidation","showFormInstruction","h","div","className","FormInstruction","PersonalDetails","requiredFields","namePrefix","ref","validationRules","econtextValidationRules","label","get"],"mappings":"gaAqBe,SAASA,GAAcC,wBAAEA,GAA0B,EAAIC,KAAEA,EAAIC,SAAEA,EAAQC,cAAEA,EAAaC,UAAEA,KAAcC,IACjH,MAAMC,EAAqBC,EAAO,OAI5BC,KAAEA,GAASC,KAEVC,EAAQC,GAAaC,EAAS,SAG/BC,EAAcN,EAA4B,CAAA,GAE3CO,OAAOC,KAAKF,EAAYG,SAASC,QAClCZ,EAAMa,kBAAkBL,EAAYG,SAGxCH,EAAYG,QAAQG,eAAiB,KACjCb,EAAmBU,SAASG,gBAAAA,EAGhCN,EAAYG,QAAQL,UAAYA,EAEhC,MAAMS,EAAsBpB,GAA2BK,EAAMe,oBAE7D,OACIC,EAACC,MAAAA,CAAIC,UAAU,yCACVH,GAAuBC,EAACG,EACxBxB,MAAAA,GACGqB,EAACI,EAAAA,CACGxB,KAAMA,EACNyB,eAAgB,CAAC,YAAa,WAAY,kBAAmB,gBAC7DxB,SAAUA,EACVyB,WAAW,WACXT,gBA/BcU,IAC1BtB,EAAmBU,QAAUY,CAAAA,EA+BjBC,gBAAiBC,IAGxB3B,GAAiBC,EAAU,CAAEM,SAAQqB,MAAOvB,EAAKwB,IAAI,qBAGlE"}
1
+ {"version":3,"file":"EcontextInput.js","sources":["../../../../../../src/components/Econtext/components/EcontextInput/EcontextInput.tsx"],"sourcesContent":["import { h, VNode } from 'preact';\nimport { useRef, useState } from 'preact/hooks';\nimport PersonalDetails from '../../../internal/PersonalDetails/PersonalDetails';\nimport useCoreContext from '../../../../core/Context/useCoreContext';\nimport { econtextValidationRules } from '../../validate';\nimport { PersonalDetailsSchema } from '../../../../types/global-types';\nimport './EcontextInput.scss';\nimport FormInstruction from '../../../internal/FormInstruction';\nimport { ComponentMethodsRef } from '../../../internal/UIElement/types';\n\ninterface EcontextInputProps {\n personalDetailsRequired?: boolean;\n showFormInstruction?: boolean;\n data?: PersonalDetailsSchema;\n showPayButton: boolean;\n payButton(config: any): VNode;\n onChange?(data: any): void;\n onSubmit?(state: any, component: any): void;\n [key: string]: any;\n}\n\nexport default function EcontextInput({ personalDetailsRequired = true, data, onChange, showPayButton, payButton, ...props }: EcontextInputProps) {\n const personalDetailsRef = useRef(null);\n const setPersonalDetailsRef = ref => {\n personalDetailsRef.current = ref;\n };\n const { i18n } = useCoreContext();\n\n const [status, setStatus] = useState('ready');\n\n /** An object by which to expose 'public' members to the parent UIElement */\n const econtextRef = useRef<ComponentMethodsRef>({});\n // Just call once\n if (!Object.keys(econtextRef.current).length) {\n props.setComponentRef?.(econtextRef.current);\n }\n\n econtextRef.current.showValidation = () => {\n personalDetailsRef.current?.showValidation();\n };\n\n econtextRef.current.setStatus = setStatus;\n\n const showFormInstruction = personalDetailsRequired && props.showFormInstruction;\n\n return (\n <div className=\"adyen-checkout__econtext-input__field\">\n {showFormInstruction && <FormInstruction />}\n {personalDetailsRequired && (\n <PersonalDetails\n data={data}\n requiredFields={['firstName', 'lastName', 'telephoneNumber', 'shopperEmail']}\n onChange={onChange}\n namePrefix=\"econtext\"\n setComponentRef={setPersonalDetailsRef}\n validationRules={econtextValidationRules}\n />\n )}\n {showPayButton && payButton({ status, label: i18n.get('confirmPurchase') })}\n </div>\n );\n}\n"],"names":["EcontextInput","personalDetailsRequired","data","onChange","showPayButton","payButton","props","personalDetailsRef","useRef","i18n","useCoreContext","status","setStatus","useState","econtextRef","Object","keys","current","length","setComponentRef","showValidation","showFormInstruction","h","div","className","FormInstruction","PersonalDetails","requiredFields","namePrefix","ref","validationRules","econtextValidationRules","label","get"],"mappings":"gaAqBe,SAASA,GAAcC,wBAAEA,GAA0B,EAAIC,KAAEA,EAAIC,SAAEA,EAAQC,cAAEA,EAAaC,UAAEA,KAAcC,IACjH,MAAMC,EAAqBC,EAAO,OAI5BC,KAAEA,GAASC,KAEVC,EAAQC,GAAaC,EAAS,SAG/BC,EAAcN,EAA4B,CAAA,GAE3CO,OAAOC,KAAKF,EAAYG,SAASC,QAClCZ,EAAMa,kBAAkBL,EAAYG,SAGxCH,EAAYG,QAAQG,eAAiB,KACjCb,EAAmBU,SAASG,gBAAAA,EAGhCN,EAAYG,QAAQL,UAAYA,EAEhC,MAAMS,EAAsBpB,GAA2BK,EAAMe,oBAE7D,OACIC,EAACC,MAAAA,CAAIC,UAAU,yCACVH,GAAuBC,EAACG,EACxBxB,MAAAA,GACGqB,EAACI,EAAAA,CACGxB,KAAMA,EACNyB,eAAgB,CAAC,YAAa,WAAY,kBAAmB,gBAC7DxB,SAAUA,EACVyB,WAAW,WACXT,gBA/BcU,IAC1BtB,EAAmBU,QAAUY,CAAAA,EA+BjBC,gBAAiBC,IAGxB3B,GAAiBC,EAAU,CAAEM,SAAQqB,MAAOvB,EAAKwB,IAAI,qBAGlE"}
@@ -1,2 +1,2 @@
1
- import{createElement as t}from"../../external/preact/dist/preact.js";import{UIElement as r}from"../internal/UIElement/UIElement.js";import e from"./components/GiftcardComponent.js";import s from"../../core/Context/CoreProvider.js";import o from"../internal/PayButton/PayButton.js";import n from"../../core/Errors/AdyenCheckoutError.js";import{TxVariants as i}from"../tx-variants.js";class a extends r{static type=i.giftcard;static defaultProps={brandsConfiguration:{}};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}handleBalanceCheck=t=>this.props.onBalanceCheck?new Promise(((r,e)=>{this.props.onBalanceCheck(r,e,t)})):this.props.session?this.props.session.checkBalance(t):void 0;onOrderRequest=t=>this.props.onOrderRequest?new Promise(((r,e)=>{this.props.onOrderRequest(r,e,t)})):this.props.session?this.props.session.createOrder():void 0;balanceCheck(){return this.onBalanceCheck()}onBalanceCheck=()=>this.props.session||this.props.onBalanceCheck?this.isValid?(this.setStatus("loading"),void this.handleBalanceCheck(this.formatData()).then((({balance:t,transactionLimit:r={}})=>{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");if(this.componentRef.setBalance({balance:t,transactionLimit:r}),this.props.amount.value>t.value||this.props.amount.value>r.value)return this.props.order?this.submit():this.onOrderRequest(this.data).then((t=>{this.setState({order:{orderData:t.orderData,pspReference:t.pspReference}}),this.submit()}));this.props.onRequiringConfirmation&&this.props.onRequiringConfirmation()})).catch((t=>{this.setStatus(t?.message||"error"),this.props.onError&&this.handleError(new n("ERROR",t))}))):(this.showValidation(),!1):this.submit();payButton=r=>t(o,r);render(){return t(s,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},t(e,{ref:t=>{this.componentRef=t},...this.props,onChange:this.setState,onBalanceCheck:this.onBalanceCheck,onSubmit:this.submit,payButton:this.payButton}))}}export{a as GiftcardElement,a as default};
1
+ import{createElement as t}from"../../external/preact/dist/preact.js";import{UIElement as r}from"../internal/UIElement/UIElement.js";import e from"./components/GiftcardComponent.js";import s from"../../core/Context/CoreProvider.js";import o from"../internal/PayButton/PayButton.js";import n from"../../core/Errors/AdyenCheckoutError.js";import{TxVariants as i}from"../tx-variants.js";class a extends r{static type=i.giftcard;static defaultProps={brandsConfiguration:{}};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}handleBalanceCheck=t=>this.props.onBalanceCheck?new Promise(((r,e)=>{this.props.onBalanceCheck(r,e,t)})):this.props.session?this.props.session.checkBalance(t):void 0;onOrderRequest=t=>this.props.onOrderRequest?new Promise(((r,e)=>{this.props.onOrderRequest(r,e,t)})):this.props.session?this.props.session.createOrder():void 0;balanceCheck(){return this.onBalanceCheck()}onBalanceCheck=()=>this.props.session||this.props.onBalanceCheck?this.isValid?(this.setStatus("loading"),void this.handleBalanceCheck(this.formatData()).then((({balance:t,transactionLimit:r={}})=>{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");if(this.componentRef.setBalance({balance:t,transactionLimit:r}),this.props.amount.value>t.value||this.props.amount.value>r.value)return this.props.order?this.submit():this.onOrderRequest(this.data).then((t=>{this.setState({order:{orderData:t.orderData,pspReference:t.pspReference}}),this.submit()}));this.props.onRequiringConfirmation&&this.props.onRequiringConfirmation()})).catch((t=>{this.setStatus(t?.message||"error"),this.props.onError&&this.handleError(new n("ERROR",t))}))):(this.showValidation(),!1):this.submit();payButton=r=>t(o,r);render(){return t(s,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},t(e,{ref:t=>{this.componentRef=t},...this.props,showPayButton:this.props.showPayButton,onChange:this.setState,onBalanceCheck:this.onBalanceCheck,onSubmit:this.submit,payButton:this.payButton}))}}export{a as GiftcardElement,a 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 } 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 => {\n if (this.props.onBalanceCheck) {\n return new Promise((resolve, reject) => {\n 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 this.props.onOrderRequest(resolve, reject, data);\n });\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 public onBalanceCheck = () => {\n // skip balance check if no onBalanceCheck event has been defined\n const hasBalanceCheck = this.props.session || this.props.onBalanceCheck;\n if (!hasBalanceCheck) return this.submit();\n\n if (!this.isValid) {\n this.showValidation();\n return false;\n }\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 this.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 this.submit();\n });\n } else {\n if (this.props.onRequiringConfirmation) {\n this.props.onRequiringConfirmation();\n }\n }\n })\n .catch(error => {\n this.setStatus(error?.message || 'error');\n if (this.props.onError) this.handleError(new AdyenCheckoutError('ERROR', error));\n });\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 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","static","TxVariants","giftcard","brandsConfiguration","formatProps","props","configuration","formatData","paymentMethod","type","this","constructor","brand","encryptedCardNumber","state","data","encryptedSecurityCode","isValid","icon","resources","getImage","displayName","name","handleBalanceCheck","onBalanceCheck","Promise","resolve","reject","session","checkBalance","onOrderRequest","createOrder","balanceCheck","setStatus","then","balance","transactionLimit","Error","currency","amount","value","componentRef","setBalance","order","submit","setState","orderData","pspReference","onRequiringConfirmation","catch","error","message","onError","handleError","AdyenCheckoutError","showValidation","payButton","h","PayButton","render","CoreProvider","i18n","loadingContext","GiftcardComponent","ref","onChange","onSubmit"],"mappings":"+XAUO,MAAMA,UAAwBC,EACjCC,YAAqBC,EAAWC,SAEhCF,oBAAgC,CAC5BG,oBAAqB,CAAC,GAG1BC,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,MAAMF,oBAAoBO,KAAKL,MAAMO,QAAQM,MAAQR,KAAKL,MAAMa,MAAQR,KAAKS,UAAUC,UAAfV,CAA0BA,KAAKL,MAAMO,MAC7H,CAEA,eAAIS,GACA,OAAOX,KAAKL,MAAMF,oBAAoBO,KAAKL,MAAMO,QAAQU,MAAQZ,KAAKL,MAAMiB,IAChF,CAEQC,mBAAqBR,GACrBL,KAAKL,MAAMmB,eACJ,IAAIC,SAAQ,CAACC,EAASC,KACzBjB,KAAKL,MAAMmB,eAAeE,EAASC,EAAQZ,EAAAA,IAI/CL,KAAKL,MAAMuB,QACJlB,KAAKL,MAAMuB,QAAQC,aAAad,QAD3C,EAKIe,eAAiBf,GACjBL,KAAKL,MAAMyB,eACJ,IAAIL,SAAQ,CAACC,EAASC,KACzBjB,KAAKL,MAAMyB,eAAeJ,EAASC,EAAQZ,EAAAA,IAG/CL,KAAKL,MAAMuB,QACJlB,KAAKL,MAAMuB,QAAQG,mBAD9B,EAKGC,YAAAA,GACH,OAAOtB,KAAKc,gBAChB,CAEOA,eAAiB,IAEId,KAAKL,MAAMuB,SAAWlB,KAAKL,MAAMmB,eAGpDd,KAAKO,SAKVP,KAAKuB,UAAU,gBAEfvB,KAAKa,mBAAmBb,KAAKH,cACxB2B,MAAK,EAAGC,UAASC,mBAAmB,CAAA,MACjC,IAAKD,EAAS,MAAM,IAAIE,MAAM,cAC9B,GAAIF,GAASG,WAAa5B,KAAKL,MAAMkC,QAAQD,SAAU,MAAM,IAAID,MAAM,kBACvE,GAAIF,GAASK,OAAS,EAAG,MAAM,IAAIH,MAAM,cAIzC,GAFA3B,KAAK+B,aAAaC,WAAW,CAAEP,UAASC,qBAEpC1B,KAAKL,MAAMkC,OAAOC,MAAQL,EAAQK,OAAS9B,KAAKL,MAAMkC,OAAOC,MAAQJ,EAAiBI,MACtF,OAAI9B,KAAKL,MAAMsC,MACJjC,KAAKkC,SAGTlC,KAAKoB,eAAepB,KAAKK,MAAMmB,MAAMS,IACxCjC,KAAKmC,SAAS,CAAEF,MAAO,CAAEG,UAAWH,EAAMG,UAAWC,aAAcJ,EAAMI,gBACzErC,KAAKkC,QAAM,IAGXlC,KAAKL,MAAM2C,yBACXtC,KAAKL,MAAM2C,yBAEnB,IAEHC,OAAMC,IACHxC,KAAKuB,UAAUiB,GAAOC,SAAW,SAC7BzC,KAAKL,MAAM+C,SAAS1C,KAAK2C,YAAY,IAAIC,EAAmB,QAASJ,GAAAA,MA/B7ExC,KAAK6C,kBACE,GAJkB7C,KAAKkC,SAuC/BY,UAAYnD,GACRoD,EAACC,EAAcrD,GAG1BsD,MAAAA,GACI,OACIF,EAACG,EAAAA,CAAaC,KAAMnD,KAAKL,MAAMwD,KAAMC,eAAgBpD,KAAKL,MAAMyD,eAAgB3C,UAAWT,KAAKS,WAC5FsC,EAACM,EAAAA,CACGC,IAAKA,IACDtD,KAAK+B,aAAeuB,CAAAA,KAEpBtD,KAAKL,MACT4D,SAAUvD,KAAKmC,SACfrB,eAAgBd,KAAKc,eACrB0C,SAAUxD,KAAKkC,OACfY,UAAW9C,KAAK8C,YAIhC"}
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 } 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 => {\n if (this.props.onBalanceCheck) {\n return new Promise((resolve, reject) => {\n 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 this.props.onOrderRequest(resolve, reject, data);\n });\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 public onBalanceCheck = () => {\n // skip balance check if no onBalanceCheck event has been defined\n const hasBalanceCheck = this.props.session || this.props.onBalanceCheck;\n if (!hasBalanceCheck) return this.submit();\n\n if (!this.isValid) {\n this.showValidation();\n return false;\n }\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 this.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 this.submit();\n });\n } else {\n if (this.props.onRequiringConfirmation) {\n this.props.onRequiringConfirmation();\n }\n }\n })\n .catch(error => {\n this.setStatus(error?.message || 'error');\n if (this.props.onError) this.handleError(new AdyenCheckoutError('ERROR', error));\n });\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 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","static","TxVariants","giftcard","brandsConfiguration","formatProps","props","configuration","formatData","paymentMethod","type","this","constructor","brand","encryptedCardNumber","state","data","encryptedSecurityCode","isValid","icon","resources","getImage","displayName","name","handleBalanceCheck","onBalanceCheck","Promise","resolve","reject","session","checkBalance","onOrderRequest","createOrder","balanceCheck","setStatus","then","balance","transactionLimit","Error","currency","amount","value","componentRef","setBalance","order","submit","setState","orderData","pspReference","onRequiringConfirmation","catch","error","message","onError","handleError","AdyenCheckoutError","showValidation","payButton","h","PayButton","render","CoreProvider","i18n","loadingContext","GiftcardComponent","ref","showPayButton","onChange","onSubmit"],"mappings":"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"}
@@ -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/useCoreContext';\nimport { PaymentAmount } from '../../../types/global-types';\nimport { GIFT_CARD } from '../../internal/SecuredFields/lib/configuration/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}\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.onBalanceCheck,\n label: i18n.get('applyGiftcard')\n })}\n </div>\n );\n }\n}\n\nexport default Giftcard;\n"],"names":["Giftcard","Component","state","status","data","balance","transactionLimit","focusedElement","isValid","static","pinRequired","expiryDateRequired","onChange","onFocus","onBlur","fieldsLayoutComponent","GiftCardFields","sfp","sfpState","this","props","isSfpValid","showValidation","setStatus","setState","handleFocus","e","currentFocusObject","focus","setBalance","render","i18n","useCoreContext","transactionAmount","value","hasEnoughBalance","amount","h","GiftcardResult","onSubmit","getCardErrorMessage","errors","encryptedCardNumber","get","div","className","Alert","icon","SecuredFieldsProvider","ref","type","GIFT_CARD","setRootNode","setFocusOn","showPayButton","payButton","onClick","onBalanceCheck","label"],"mappings":"obA2BA,MAAMA,UAAiBC,EACZC,MAAQ,CACXC,OAAQ,QACRC,KAAM,CAAC,EACPC,QAAS,KACTC,iBAAkB,KAClBC,gBAAgB,EAChBC,SAAS,GAGbC,oBAA6B,CACzBC,aAAa,EACbC,oBAAoB,EACpBC,SAAU,OACVC,QAAS,OACTC,OAAQ,OACRC,sBAAuBC,GAGpBC,IAEAL,SAAWM,IACdC,KAAKC,MAAMR,SAAS,CAChBR,KAAMc,EAASd,KACfI,QAASU,EAASG,YACtB,EAGGC,eAAiB,KACpBH,KAAKF,IAAIK,gBAAc,EAG3BC,SAAAA,CAAUpB,GACNgB,KAAKK,SAAS,CAAErB,UACpB,CAEOsB,YAAcC,IACjBP,KAAKK,SAAS,CAAEjB,eAAgBmB,EAAEC,sBAEJ,IAAZD,EAAEE,MAEhBT,KAAKC,MAAMP,QAAQa,GAEnBP,KAAKC,MAAMN,OAAOY,EACtB,EAGGG,WAAa,EAAGxB,UAASC,uBAC5Ba,KAAKK,SAAS,CAAEnB,UAASC,oBAAiB,EAG9CwB,MAAAA,CAAOV,GAAOb,eAAEA,EAAcF,QAAEA,EAAOC,iBAAEA,IACrC,MAAMyB,KAAEA,GAASC,IAEXC,EAAoB3B,GAAkB4B,MAAQ7B,GAAS6B,MAAQ5B,EAAmBD,EAClF8B,EAAmBF,GAAmBC,OAASf,KAAKC,MAAMgB,QAAQF,MAExE,GAAID,GAAqBE,EACrB,OAAOE,EAACC,EAAAA,CAAejC,QAASA,EAASC,iBAAkBA,EAAkBiC,SAAUnB,EAAMmB,YAAcnB,IAG/G,MAAMoB,EAAsBtB,IACxB,GAAIA,EAASuB,OAAOC,oBAAqB,OAAOX,EAAKY,IAAIzB,EAASuB,OAAOC,qBAEzE,OAAQvB,KAAKjB,MAAMC,QACf,IAAK,aACD,OAAO4B,EAAKY,IAAI,6BACpB,IAAK,aACD,OAAOZ,EAAKY,IAAI,6BACpB,IAAK,iBACD,OAAOZ,EAAKY,IAAI,iCACpB,QACI,OAAO,KACf,EAGJ,OACIN,EAACO,MAAAA,CAAIC,UAAU,4BACY,UAAtB1B,KAAKjB,MAAMC,QAAsBkC,EAACS,EAAAA,CAAMC,KAAM,SAAUhB,EAAKY,IAAI,0BAElEN,EAACW,EAAAA,IACO7B,KAAKC,MACT6B,IAAKA,IACD9B,KAAKF,IAAMgC,CAAAA,EAEfrC,SAAUO,KAAKP,SACfC,QAASM,KAAKM,YACdyB,KAAMC,EACNrB,OAAQ,EAAGsB,cAAaC,cAAcnC,IAClCC,KAAKC,MAAML,sBAAsB,CAC7BgB,KAAMA,EACNrB,YAAaS,KAAKC,MAAMV,YACxBH,eAAgBA,EAChBiC,oBAAqBA,EACrBY,YAAaA,EACbC,WAAYA,EACZnC,SAAUA,MAKrBC,KAAKC,MAAMkC,eACRnC,KAAKC,MAAMmC,UAAU,CACjBpD,OAAQgB,KAAKjB,MAAMC,OACnBqD,QAASrC,KAAKC,MAAMqC,eACpBC,MAAO3B,EAAKY,IAAI,mBAIpC"}
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/useCoreContext';\nimport { PaymentAmount } from '../../../types/global-types';\nimport { GIFT_CARD } from '../../internal/SecuredFields/lib/configuration/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}\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.onBalanceCheck,\n label: i18n.get('applyGiftcard')\n })}\n </div>\n );\n }\n}\n\nexport default Giftcard;\n"],"names":["Giftcard","Component","state","status","data","balance","transactionLimit","focusedElement","isValid","static","pinRequired","expiryDateRequired","onChange","onFocus","onBlur","fieldsLayoutComponent","GiftCardFields","sfp","sfpState","this","props","isSfpValid","showValidation","setStatus","setState","handleFocus","e","currentFocusObject","focus","setBalance","render","i18n","useCoreContext","transactionAmount","value","hasEnoughBalance","amount","h","GiftcardResult","onSubmit","getCardErrorMessage","errors","encryptedCardNumber","get","div","className","Alert","icon","SecuredFieldsProvider","ref","type","GIFT_CARD","setRootNode","setFocusOn","showPayButton","payButton","onClick","onBalanceCheck","label"],"mappings":"obA2BA,MAAMA,UAAiBC,EACZC,MAAQ,CACXC,OAAQ,QACRC,KAAM,CAAC,EACPC,QAAS,KACTC,iBAAkB,KAClBC,gBAAgB,EAChBC,SAAS,GAGbC,oBAA6B,CACzBC,aAAa,EACbC,oBAAoB,EACpBC,SAAU,OACVC,QAAS,OACTC,OAAQ,OACRC,sBAAuBC,GAGpBC,IAEAL,SAAWM,IACdC,KAAKC,MAAMR,SAAS,CAChBR,KAAMc,EAASd,KACfI,QAASU,EAASG,YACtB,EAGGC,eAAiB,KACpBH,KAAKF,IAAIK,gBAAc,EAG3BC,SAAAA,CAAUpB,GACNgB,KAAKK,SAAS,CAAErB,UACpB,CAEOsB,YAAcC,IACjBP,KAAKK,SAAS,CAAEjB,eAAgBmB,EAAEC,sBAEJ,IAAZD,EAAEE,MAEhBT,KAAKC,MAAMP,QAAQa,GAEnBP,KAAKC,MAAMN,OAAOY,EACtB,EAGGG,WAAa,EAAGxB,UAASC,uBAC5Ba,KAAKK,SAAS,CAAEnB,UAASC,oBAAiB,EAG9CwB,MAAAA,CAAOV,GAAOb,eAAEA,EAAcF,QAAEA,EAAOC,iBAAEA,IACrC,MAAMyB,KAAEA,GAASC,IAEXC,EAAoB3B,GAAkB4B,MAAQ7B,GAAS6B,MAAQ5B,EAAmBD,EAClF8B,EAAmBF,GAAmBC,OAASf,KAAKC,MAAMgB,QAAQF,MAExE,GAAID,GAAqBE,EACrB,OAAOE,EAACC,EAAAA,CAAejC,QAASA,EAASC,iBAAkBA,EAAkBiC,SAAUnB,EAAMmB,YAAcnB,IAG/G,MAAMoB,EAAsBtB,IACxB,GAAIA,EAASuB,OAAOC,oBAAqB,OAAOX,EAAKY,IAAIzB,EAASuB,OAAOC,qBAEzE,OAAQvB,KAAKjB,MAAMC,QACf,IAAK,aACD,OAAO4B,EAAKY,IAAI,6BACpB,IAAK,aACD,OAAOZ,EAAKY,IAAI,6BACpB,IAAK,iBACD,OAAOZ,EAAKY,IAAI,iCACpB,QACI,OAAO,KACf,EAGJ,OACIN,EAACO,MAAAA,CAAIC,UAAU,4BACY,UAAtB1B,KAAKjB,MAAMC,QAAsBkC,EAACS,EAAAA,CAAMC,KAAM,SAAUhB,EAAKY,IAAI,0BAElEN,EAACW,EAAAA,IACO7B,KAAKC,MACT6B,IAAKA,IACD9B,KAAKF,IAAMgC,CAAAA,EAEfrC,SAAUO,KAAKP,SACfC,QAASM,KAAKM,YACdyB,KAAMC,EACNrB,OAAQ,EAAGsB,cAAaC,cAAcnC,IAClCC,KAAKC,MAAML,sBAAsB,CAC7BgB,KAAMA,EACNrB,YAAaS,KAAKC,MAAMV,YACxBH,eAAgBA,EAChBiC,oBAAqBA,EACrBY,YAAaA,EACbC,WAAYA,EACZnC,SAAUA,MAKrBC,KAAKC,MAAMkC,eACRnC,KAAKC,MAAMmC,UAAU,CACjBpD,OAAQgB,KAAKjB,MAAMC,OACnBqD,QAASrC,KAAKC,MAAMqC,eACpBC,MAAO3B,EAAKY,IAAI,mBAIpC"}
@@ -1,2 +1,2 @@
1
- import{createElement as t}from"../../external/preact/dist/preact.js";import r from"../../core/Context/CoreProvider.js";import e from"../Redirect/Redirect.js";import o from"../internal/RedirectButton/RedirectButton.js";import{TxVariants as s}from"../tx-variants.js";class i extends e{static type=s.giropay;formatProps(t){return{...t,showPayButton:t.showButton??t.showPayButton}}get displayName(){return this.props.name||this.constructor.type}render(){return this.props.showPayButton?t(r,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},t(o,{...this.props,name:this.displayName,onSubmit:this.submit,payButton:this.payButton,ref:t=>{this.componentRef=t}})):null}}export{i as default};
1
+ import{createElement as t}from"../../external/preact/dist/preact.js";import e from"../../core/Context/CoreProvider.js";import r from"../Redirect/Redirect.js";import o from"../internal/RedirectButton/RedirectButton.js";import{TxVariants as s}from"../tx-variants.js";class i extends r{static type=s.giropay;get displayName(){return this.props.name||this.constructor.type}render(){return this.props.showPayButton?t(e,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},t(o,{...this.props,name:this.displayName,onSubmit:this.submit,payButton:this.payButton,ref:t=>{this.componentRef=t}})):null}}export{i as default};
2
2
  //# sourceMappingURL=Giropay.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Giropay.js","sources":["../../../../src/components/Giropay/Giropay.tsx"],"sourcesContent":["import { h } from 'preact';\nimport CoreProvider from '../../core/Context/CoreProvider';\nimport RedirectElement from '../Redirect';\nimport RedirectButton from '../internal/RedirectButton';\nimport { TxVariants } from '../tx-variants';\n\nclass GiropayElement extends RedirectElement {\n public static type = TxVariants.giropay;\n\n formatProps(props) {\n return {\n ...props,\n showPayButton: props.showButton ?? props.showPayButton\n };\n }\n\n get displayName() {\n return this.props.name || this.constructor['type'];\n }\n\n render() {\n if (this.props.showPayButton) {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <RedirectButton\n {...this.props}\n name={this.displayName}\n onSubmit={this.submit}\n payButton={this.payButton}\n ref={ref => {\n this.componentRef = ref;\n }}\n />\n </CoreProvider>\n );\n }\n\n return null;\n }\n}\n\nexport default GiropayElement;\n"],"names":["GiropayElement","RedirectElement","static","TxVariants","giropay","formatProps","props","showPayButton","showButton","displayName","this","name","constructor","render","h","CoreProvider","i18n","loadingContext","resources","RedirectButton","onSubmit","submit","payButton","ref","componentRef"],"mappings":"yQAMA,MAAMA,UAAuBC,EACzBC,YAAqBC,EAAWC,QAEhCC,WAAAA,CAAYC,GACR,MAAO,IACAA,EACHC,cAAeD,EAAME,YAAcF,EAAMC,cAEjD,CAEA,eAAIE,GACA,OAAOC,KAAKJ,MAAMK,MAAQD,KAAKE,YAAmB,IACtD,CAEAC,MAAAA,GACI,OAAIH,KAAKJ,MAAMC,cAEPO,EAACC,EAAAA,CAAaC,KAAMN,KAAKJ,MAAMU,KAAMC,eAAgBP,KAAKJ,MAAMW,eAAgBC,UAAWR,KAAKQ,WAC5FJ,EAACK,EAAAA,IACOT,KAAKJ,MACTK,KAAMD,KAAKD,YACXW,SAAUV,KAAKW,OACfC,UAAWZ,KAAKY,UAChBC,IAAKA,IACDb,KAAKc,aAAeD,CAAAA,KAOjC,IACX"}
1
+ {"version":3,"file":"Giropay.js","sources":["../../../../src/components/Giropay/Giropay.tsx"],"sourcesContent":["import { h } from 'preact';\nimport CoreProvider from '../../core/Context/CoreProvider';\nimport RedirectElement from '../Redirect';\nimport RedirectButton from '../internal/RedirectButton';\nimport { TxVariants } from '../tx-variants';\n\nclass GiropayElement extends RedirectElement {\n public static type = TxVariants.giropay;\n\n get displayName() {\n return this.props.name || this.constructor['type'];\n }\n\n render() {\n if (this.props.showPayButton) {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <RedirectButton\n {...this.props}\n name={this.displayName}\n onSubmit={this.submit}\n payButton={this.payButton}\n ref={ref => {\n this.componentRef = ref;\n }}\n />\n </CoreProvider>\n );\n }\n\n return null;\n }\n}\n\nexport default GiropayElement;\n"],"names":["GiropayElement","RedirectElement","static","TxVariants","giropay","displayName","this","props","name","constructor","render","showPayButton","h","CoreProvider","i18n","loadingContext","resources","RedirectButton","onSubmit","submit","payButton","ref","componentRef"],"mappings":"yQAMA,MAAMA,UAAuBC,EACzBC,YAAqBC,EAAWC,QAEhC,eAAIC,GACA,OAAOC,KAAKC,MAAMC,MAAQF,KAAKG,YAAmB,IACtD,CAEAC,MAAAA,GACI,OAAIJ,KAAKC,MAAMI,cAEPC,EAACC,EAAAA,CAAaC,KAAMR,KAAKC,MAAMO,KAAMC,eAAgBT,KAAKC,MAAMQ,eAAgBC,UAAWV,KAAKU,WAC5FJ,EAACK,EAAAA,IACOX,KAAKC,MACTC,KAAMF,KAAKD,YACXa,SAAUZ,KAAKa,OACfC,UAAWd,KAAKc,UAChBC,IAAKA,IACDf,KAAKgB,aAAeD,CAAAA,KAOjC,IACX"}
@@ -1,2 +1,2 @@
1
- import{createElement as t}from"../../external/preact/dist/preact.js";import{UIElement as e}from"../internal/UIElement/UIElement.js";import o from"./GooglePayService.js";import r from"./components/GooglePayButton.js";import s 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 y,ANALYTICS_INSTANT_PAYMENT_BUTTON as c}from"../../core/Analytics/constants.js";class g extends e{static type=h.googlepay;static txVariants=[h.googlepay,h.paywithgoogle];static defaultProps=s;googlePay;constructor(t,e){super(t,e),this.handleAuthorization=this.handleAuthorization.bind(this),this.googlePay=new o({...this.props,paymentDataCallbacks:{...this.props.paymentDataCallbacks,onPaymentAuthorized:this.onPaymentAuthorized}})}formatProps(t){const e=t.buttonSizeMode??(t.isDropin?"fill":"static"),o=n(t.buttonLocale??t.i18n?.locale),r=[...t.callbackIntents,"PAYMENT_AUTHORIZATION"];return{...t,configuration:t.configuration,buttonSizeMode:e,buttonLocale:o,callbackIntents:r}}formatData(){const{googlePayCardNetwork:t,googlePayToken:e,billingAddress:o,deliveryAddress:r}=this.state;return{paymentMethod:{type:this.type,googlePayCardNetwork:t,googlePayToken:e},browserInfo:this.browserInfo,origin:!!window&&window.location.origin,...o&&{billingAddress:o},...r&&{deliveryAddress:r}}}submit=()=>{this.props.isInstantPayment&&this.submitAnalytics({type:y,target:c}),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}))}))};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,r=this.props.i18n.get("error.subtitle.payment"),s="string"==typeof o?{intent:"PAYMENT_AUTHORIZATION",reason:"OTHER_ERROR",message:o||r}:{intent:o?.intent||"PAYMENT_AUTHORIZATION",reason:o?.reason||"OTHER_ERROR",message:o?.message||r};t({transactionState:"ERROR",error:s});const n={...e,error:{googlePayError:s}};this.handleFailedResult(n)}))}))};async handleAuthorization(){return new Promise(((t,e)=>{this.props.onAuthorized||t();const{authorizedEvent:o,billingAddress:r,deliveryAddress:s}=this.state;this.props.onAuthorized({authorizedEvent:o,...r&&{billingAddress:r},...s&&{deliveryAddress:s}},{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)))}isReadyToPay=()=>this.googlePay.isReadyToPay(this.props);prefetch=()=>this.googlePay.prefetchPaymentData(this.props,this.core.options.countryCode);get browserInfo(){return a()}get icon(){return this.props.icon??this.resources.getImage()("googlepay")}render(){return this.props.showPayButton?t(r,{buttonColor:this.props.buttonColor,buttonType:this.props.buttonType,buttonSizeMode:this.props.buttonSizeMode,buttonLocale:this.props.buttonLocale,buttonRootNode:this.props.buttonRootNode,paymentsClient:this.googlePay.paymentsClient,onClick:this.submit}):null}}export{g 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 a}from"./utils.js";import i 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 y,ANALYTICS_INSTANT_PAYMENT_BUTTON as g}from"../../core/Analytics/constants.js";class c extends e{static type=h.googlepay;static txVariants=[h.googlepay,h.paywithgoogle];static defaultProps=r;googlePay;constructor(t,e){super(t,e),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})}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}}}submit=()=>{this.props.isInstantPayment&&this.submitAnalytics({type:y,target:g}),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}))}))};onPaymentAuthorized=async t=>{const e=a(t.paymentMethodData.info.billingAddress),o=a(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)}))}))};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)))}isReadyToPay=()=>this.googlePay.isReadyToPay(this.props);prefetch=()=>this.googlePay.prefetchPaymentData(this.props,this.core.options.countryCode);get browserInfo(){return i()}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,paymentsClient:this.googlePay.paymentsClient,onClick:this.submit}):null}}export{c as default};
2
2
  //# sourceMappingURL=GooglePay.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GooglePay.js","sources":["../../../../src/components/GooglePay/GooglePay.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport GooglePayService from './GooglePayService';\nimport GooglePayButton from './components/GooglePayButton';\nimport defaultProps from './defaultProps';\nimport { formatGooglePayContactToAdyenAddressFormat, getGooglePayLocale } from './utils';\nimport collectBrowserInfo from '../../utils/browserInfo';\nimport AdyenCheckoutError from '../../core/Errors/AdyenCheckoutError';\nimport { TxVariants } from '../tx-variants';\nimport { sanitizeResponse, verifyPaymentDidNotFail } from '../internal/UIElement/utils';\nimport { ANALYTICS_INSTANT_PAYMENT_BUTTON, ANALYTICS_SELECTED_STR } from '../../core/Analytics/constants';\nimport type { AddressData, PaymentResponseData, RawPaymentResponse } from '../../types/global-types';\nimport type { GooglePayConfiguration } from './types';\nimport type { ICore } from '../../core/types';\n\nclass GooglePay extends UIElement<GooglePayConfiguration> {\n public static type = TxVariants.googlepay;\n public static txVariants = [TxVariants.googlepay, TxVariants.paywithgoogle];\n public static defaultProps = defaultProps;\n\n protected readonly googlePay;\n\n constructor(checkout: ICore, props?: GooglePayConfiguration) {\n super(checkout, props);\n this.handleAuthorization = this.handleAuthorization.bind(this);\n\n this.googlePay = new GooglePayService({\n ...this.props,\n paymentDataCallbacks: {\n ...this.props.paymentDataCallbacks,\n onPaymentAuthorized: this.onPaymentAuthorized\n }\n });\n }\n\n formatProps(props): GooglePayConfiguration {\n const buttonSizeMode = props.buttonSizeMode ?? (props.isDropin ? 'fill' : 'static');\n const buttonLocale = getGooglePayLocale(props.buttonLocale ?? props.i18n?.locale);\n\n const callbackIntents: google.payments.api.CallbackIntent[] = [...props.callbackIntents, 'PAYMENT_AUTHORIZATION'];\n\n return {\n ...props,\n configuration: props.configuration,\n buttonSizeMode,\n buttonLocale,\n callbackIntents\n };\n }\n\n /**\n * Formats the component data output\n */\n formatData() {\n const { googlePayCardNetwork, googlePayToken, billingAddress, deliveryAddress } = this.state;\n\n return {\n paymentMethod: {\n type: this.type,\n googlePayCardNetwork,\n googlePayToken\n },\n browserInfo: this.browserInfo,\n origin: !!window && window.location.origin,\n ...(billingAddress && { billingAddress }),\n ...(deliveryAddress && { deliveryAddress })\n };\n }\n\n public override submit = () => {\n // Analytics\n if (this.props.isInstantPayment) {\n this.submitAnalytics({ type: ANALYTICS_SELECTED_STR, target: ANALYTICS_INSTANT_PAYMENT_BUTTON });\n }\n\n new Promise((resolve, reject) => this.props.onClick(resolve, reject))\n .then(() => this.googlePay.initiatePayment(this.props, this.core.options.countryCode))\n .catch((error: google.payments.api.PaymentsError) => {\n if (error.statusCode === 'CANCELED') {\n this.handleError(new AdyenCheckoutError('CANCEL', error.toString(), { cause: error }));\n } else {\n this.handleError(new AdyenCheckoutError('ERROR', error.toString(), { cause: error }));\n }\n });\n };\n\n /**\n * Method called when the payment is authorized in the payment sheet\n *\n * @see https://developers.google.com/pay/api/web/reference/client#onPaymentAuthorized\n **/\n private onPaymentAuthorized = async (paymentData: google.payments.api.PaymentData): Promise<google.payments.api.PaymentAuthorizationResult> => {\n const billingAddress: AddressData = formatGooglePayContactToAdyenAddressFormat(paymentData.paymentMethodData.info.billingAddress);\n const deliveryAddress: AddressData = formatGooglePayContactToAdyenAddressFormat(paymentData.shippingAddress, true);\n\n this.setState({\n authorizedEvent: paymentData,\n googlePayToken: paymentData.paymentMethodData.tokenizationData.token,\n googlePayCardNetwork: paymentData.paymentMethodData.info.cardNetwork,\n ...(billingAddress && { billingAddress }),\n ...(deliveryAddress && { deliveryAddress })\n });\n\n return new Promise<google.payments.api.PaymentAuthorizationResult>(resolve => {\n this.handleAuthorization()\n .then(this.makePaymentsCall)\n .then(sanitizeResponse)\n .then(verifyPaymentDidNotFail)\n .then((paymentResponse: PaymentResponseData) => {\n resolve({ transactionState: 'SUCCESS' });\n return paymentResponse;\n })\n .then(paymentResponse => {\n this.handleResponse(paymentResponse);\n })\n .catch((paymentResponse?: RawPaymentResponse) => {\n this.setElementStatus('ready');\n\n const googlePayError = paymentResponse?.error?.googlePayError;\n const fallbackMessage = this.props.i18n.get('error.subtitle.payment');\n\n const error: google.payments.api.PaymentDataError =\n typeof googlePayError === 'string' || undefined\n ? {\n intent: 'PAYMENT_AUTHORIZATION',\n reason: 'OTHER_ERROR',\n message: (googlePayError as string) || fallbackMessage\n }\n : {\n intent: googlePayError?.intent || 'PAYMENT_AUTHORIZATION',\n reason: googlePayError?.reason || 'OTHER_ERROR',\n message: googlePayError?.message || fallbackMessage\n };\n\n resolve({\n transactionState: 'ERROR',\n error\n });\n\n const responseWithError = {\n ...paymentResponse,\n error: {\n googlePayError: error\n }\n };\n\n this.handleFailedResult(responseWithError);\n });\n });\n };\n\n /**\n * Call the 'onAuthorized' callback if available.\n * Must be resolved/reject for the payment flow to continue\n */\n private async handleAuthorization(): Promise<void> {\n return new Promise<void>((resolve, reject) => {\n if (!this.props.onAuthorized) {\n resolve();\n }\n\n const { authorizedEvent, billingAddress, deliveryAddress } = this.state;\n\n this.props.onAuthorized(\n {\n authorizedEvent,\n ...(billingAddress && { billingAddress }),\n ...(deliveryAddress && { deliveryAddress })\n },\n { resolve, reject }\n );\n }).catch((error?: google.payments.api.PaymentDataError | string) => {\n // Format error in a way that the 'catch' of the 'onPaymentAuthorize' block accepts it\n const data = { error: { googlePayError: error } };\n return Promise.reject(data);\n });\n }\n\n /**\n * Validation\n */\n get isValid(): boolean {\n return !!this.state.googlePayToken;\n }\n\n /**\n * Determine a shopper's ability to return a form of payment from the Google Pay API.\n */\n public override async isAvailable(): Promise<void> {\n return this.isReadyToPay()\n .then(response => {\n if (!response.result) {\n throw new AdyenCheckoutError('ERROR', 'GooglePay is not available');\n }\n\n if (response.paymentMethodPresent === false) {\n throw new AdyenCheckoutError('ERROR', 'GooglePay - No paymentMethodPresent');\n }\n\n return Promise.resolve();\n })\n .catch(error => {\n return Promise.reject(error);\n });\n }\n\n /**\n * Determine a shopper's ability to return a form of payment from the Google Pay API.\n */\n public isReadyToPay = (): Promise<google.payments.api.IsReadyToPayResponse> => {\n return this.googlePay.isReadyToPay(this.props);\n };\n\n /**\n * Use this method to prefetch a PaymentDataRequest configuration to improve loadPaymentData execution time on later user interaction. No value is returned.\n */\n public prefetch = (): void => {\n return this.googlePay.prefetchPaymentData(this.props, this.core.options.countryCode);\n };\n\n get browserInfo() {\n return collectBrowserInfo();\n }\n\n get icon(): string {\n return this.props.icon ?? this.resources.getImage()('googlepay');\n }\n\n render() {\n if (this.props.showPayButton) {\n return (\n <GooglePayButton\n buttonColor={this.props.buttonColor}\n buttonType={this.props.buttonType}\n buttonSizeMode={this.props.buttonSizeMode}\n buttonLocale={this.props.buttonLocale}\n buttonRootNode={this.props.buttonRootNode}\n paymentsClient={this.googlePay.paymentsClient}\n onClick={this.submit}\n />\n );\n }\n\n return null;\n }\n}\n\nexport default GooglePay;\n"],"names":["GooglePay","UIElement","static","TxVariants","googlepay","paywithgoogle","defaultProps","googlePay","constructor","checkout","props","super","this","handleAuthorization","bind","GooglePayService","paymentDataCallbacks","onPaymentAuthorized","formatProps","buttonSizeMode","isDropin","buttonLocale","getGooglePayLocale","i18n","locale","callbackIntents","configuration","formatData","googlePayCardNetwork","googlePayToken","billingAddress","deliveryAddress","state","paymentMethod","type","browserInfo","origin","window","location","submit","isInstantPayment","submitAnalytics","ANALYTICS_SELECTED_STR","target","ANALYTICS_INSTANT_PAYMENT_BUTTON","Promise","resolve","reject","onClick","then","initiatePayment","core","options","countryCode","catch","error","statusCode","handleError","AdyenCheckoutError","toString","cause","async","paymentData","formatGooglePayContactToAdyenAddressFormat","paymentMethodData","info","shippingAddress","setState","authorizedEvent","tokenizationData","token","cardNetwork","makePaymentsCall","sanitizeResponse","verifyPaymentDidNotFail","paymentResponse","transactionState","handleResponse","setElementStatus","googlePayError","fallbackMessage","get","intent","reason","message","responseWithError","handleFailedResult","onAuthorized","data","isValid","isAvailable","isReadyToPay","response","result","paymentMethodPresent","prefetch","prefetchPaymentData","collectBrowserInfo","icon","resources","getImage","render","showPayButton","h","GooglePayButton","buttonColor","buttonType","buttonRootNode","paymentsClient"],"mappings":"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"}
1
+ {"version":3,"file":"GooglePay.js","sources":["../../../../src/components/GooglePay/GooglePay.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport GooglePayService from './GooglePayService';\nimport GooglePayButton from './components/GooglePayButton';\nimport defaultProps from './defaultProps';\nimport { formatGooglePayContactToAdyenAddressFormat, getGooglePayLocale } from './utils';\nimport collectBrowserInfo from '../../utils/browserInfo';\nimport AdyenCheckoutError from '../../core/Errors/AdyenCheckoutError';\nimport { TxVariants } from '../tx-variants';\nimport { sanitizeResponse, verifyPaymentDidNotFail } from '../internal/UIElement/utils';\nimport { ANALYTICS_INSTANT_PAYMENT_BUTTON, ANALYTICS_SELECTED_STR } from '../../core/Analytics/constants';\n\nimport type { AddressData, PaymentResponseData, RawPaymentResponse } from '../../types/global-types';\nimport type { GooglePayConfiguration } from './types';\nimport type { ICore } from '../../core/types';\n\nclass GooglePay extends UIElement<GooglePayConfiguration> {\n public static type = TxVariants.googlepay;\n public static txVariants = [TxVariants.googlepay, TxVariants.paywithgoogle];\n public static defaultProps = defaultProps;\n\n protected readonly googlePay;\n\n constructor(checkout: ICore, props?: GooglePayConfiguration) {\n super(checkout, props);\n this.handleAuthorization = this.handleAuthorization.bind(this);\n\n const { isExpress, paymentDataCallbacks } = this.props;\n\n if (isExpress === false && paymentDataCallbacks?.onPaymentDataChanged) {\n throw new AdyenCheckoutError(\n 'IMPLEMENTATION_ERROR',\n 'GooglePay - You must set \"isExpress\" flag to \"true\" in order to use \"onPaymentDataChanged\" callback'\n );\n }\n\n this.googlePay = new GooglePayService(this.props.environment, {\n ...(isExpress && paymentDataCallbacks?.onPaymentDataChanged && { onPaymentDataChanged: paymentDataCallbacks.onPaymentDataChanged }),\n onPaymentAuthorized: this.onPaymentAuthorized\n });\n }\n\n protected override formatProps(props): GooglePayConfiguration {\n const buttonSizeMode = props.buttonSizeMode ?? (props.isDropin ? 'fill' : 'static');\n const buttonLocale = getGooglePayLocale(props.buttonLocale ?? props.i18n?.locale);\n\n const callbackIntents: google.payments.api.CallbackIntent[] = [...props.callbackIntents, 'PAYMENT_AUTHORIZATION'];\n\n return {\n ...props,\n configuration: props.configuration,\n buttonSizeMode,\n buttonLocale,\n callbackIntents\n };\n }\n\n /**\n * Formats the component data output\n */\n protected override formatData() {\n const { googlePayCardNetwork, googlePayToken, billingAddress, deliveryAddress } = this.state;\n const { isExpress } = this.props;\n\n return {\n paymentMethod: {\n type: this.type,\n googlePayCardNetwork,\n googlePayToken,\n ...(isExpress && { subtype: 'express' })\n },\n browserInfo: this.browserInfo,\n origin: !!window && window.location.origin,\n ...(billingAddress && { billingAddress }),\n ...(deliveryAddress && { deliveryAddress })\n };\n }\n\n public override submit = () => {\n // Analytics\n if (this.props.isInstantPayment) {\n this.submitAnalytics({ type: ANALYTICS_SELECTED_STR, target: ANALYTICS_INSTANT_PAYMENT_BUTTON });\n }\n\n new Promise((resolve, reject) => this.props.onClick(resolve, reject))\n .then(() => this.googlePay.initiatePayment(this.props, this.core.options.countryCode))\n .catch((error: google.payments.api.PaymentsError) => {\n if (error.statusCode === 'CANCELED') {\n this.handleError(new AdyenCheckoutError('CANCEL', error.toString(), { cause: error }));\n } else {\n this.handleError(new AdyenCheckoutError('ERROR', error.toString(), { cause: error }));\n }\n });\n };\n\n /**\n * Method called when the payment is authorized in the payment sheet\n *\n * @see https://developers.google.com/pay/api/web/reference/client#onPaymentAuthorized\n **/\n private onPaymentAuthorized = async (paymentData: google.payments.api.PaymentData): Promise<google.payments.api.PaymentAuthorizationResult> => {\n const billingAddress: AddressData = formatGooglePayContactToAdyenAddressFormat(paymentData.paymentMethodData.info.billingAddress);\n const deliveryAddress: AddressData = formatGooglePayContactToAdyenAddressFormat(paymentData.shippingAddress, true);\n\n this.setState({\n authorizedEvent: paymentData,\n googlePayToken: paymentData.paymentMethodData.tokenizationData.token,\n googlePayCardNetwork: paymentData.paymentMethodData.info.cardNetwork,\n ...(billingAddress && { billingAddress }),\n ...(deliveryAddress && { deliveryAddress })\n });\n\n return new Promise<google.payments.api.PaymentAuthorizationResult>(resolve => {\n this.handleAuthorization()\n .then(this.makePaymentsCall)\n .then(sanitizeResponse)\n .then(verifyPaymentDidNotFail)\n .then((paymentResponse: PaymentResponseData) => {\n resolve({ transactionState: 'SUCCESS' });\n return paymentResponse;\n })\n .then(paymentResponse => {\n this.handleResponse(paymentResponse);\n })\n .catch((paymentResponse?: RawPaymentResponse) => {\n this.setElementStatus('ready');\n\n const googlePayError = paymentResponse?.error?.googlePayError;\n const fallbackMessage = this.props.i18n.get('error.subtitle.payment');\n\n const error: google.payments.api.PaymentDataError =\n typeof googlePayError === 'string' || undefined\n ? {\n intent: 'PAYMENT_AUTHORIZATION',\n reason: 'OTHER_ERROR',\n message: (googlePayError as string) || fallbackMessage\n }\n : {\n intent: googlePayError?.intent || 'PAYMENT_AUTHORIZATION',\n reason: googlePayError?.reason || 'OTHER_ERROR',\n message: googlePayError?.message || fallbackMessage\n };\n\n resolve({\n transactionState: 'ERROR',\n error\n });\n\n const responseWithError = {\n ...paymentResponse,\n error: {\n googlePayError: error\n }\n };\n\n this.handleFailedResult(responseWithError);\n });\n });\n };\n\n /**\n * Call the 'onAuthorized' callback if available.\n * Must be resolved/reject for the payment flow to continue\n */\n private async handleAuthorization(): Promise<void> {\n return new Promise<void>((resolve, reject) => {\n if (!this.props.onAuthorized) {\n resolve();\n }\n\n const { authorizedEvent, billingAddress, deliveryAddress } = this.state;\n\n this.props.onAuthorized(\n {\n authorizedEvent,\n ...(billingAddress && { billingAddress }),\n ...(deliveryAddress && { deliveryAddress })\n },\n { resolve, reject }\n );\n }).catch((error?: google.payments.api.PaymentDataError | string) => {\n // Format error in a way that the 'catch' of the 'onPaymentAuthorize' block accepts it\n const data = { error: { googlePayError: error } };\n return Promise.reject(data);\n });\n }\n\n /**\n * Validation\n */\n get isValid(): boolean {\n return !!this.state.googlePayToken;\n }\n\n /**\n * Determine a shopper's ability to return a form of payment from the Google Pay API.\n */\n public override async isAvailable(): Promise<void> {\n return this.isReadyToPay()\n .then(response => {\n if (!response.result) {\n throw new AdyenCheckoutError('ERROR', 'GooglePay is not available');\n }\n\n if (response.paymentMethodPresent === false) {\n throw new AdyenCheckoutError('ERROR', 'GooglePay - No paymentMethodPresent');\n }\n\n return Promise.resolve();\n })\n .catch(error => {\n return Promise.reject(error);\n });\n }\n\n /**\n * Determine a shopper's ability to return a form of payment from the Google Pay API.\n */\n public isReadyToPay = (): Promise<google.payments.api.IsReadyToPayResponse> => {\n return this.googlePay.isReadyToPay(this.props);\n };\n\n /**\n * Use this method to prefetch a PaymentDataRequest configuration to improve loadPaymentData execution time on later user interaction. No value is returned.\n */\n public prefetch = (): void => {\n return this.googlePay.prefetchPaymentData(this.props, this.core.options.countryCode);\n };\n\n get browserInfo() {\n return collectBrowserInfo();\n }\n\n get icon(): string {\n return this.props.icon ?? this.resources.getImage()('googlepay');\n }\n\n render() {\n if (this.props.showPayButton) {\n return (\n <GooglePayButton\n buttonColor={this.props.buttonColor}\n buttonType={this.props.buttonType}\n buttonSizeMode={this.props.buttonSizeMode}\n buttonLocale={this.props.buttonLocale}\n buttonRootNode={this.props.buttonRootNode}\n paymentsClient={this.googlePay.paymentsClient}\n onClick={this.submit}\n />\n );\n }\n\n return null;\n }\n}\n\nexport default GooglePay;\n"],"names":["GooglePay","UIElement","static","TxVariants","googlepay","paywithgoogle","defaultProps","googlePay","constructor","checkout","props","super","this","handleAuthorization","bind","isExpress","paymentDataCallbacks","onPaymentDataChanged","AdyenCheckoutError","GooglePayService","environment","onPaymentAuthorized","formatProps","buttonSizeMode","isDropin","buttonLocale","getGooglePayLocale","i18n","locale","callbackIntents","configuration","formatData","googlePayCardNetwork","googlePayToken","billingAddress","deliveryAddress","state","paymentMethod","type","subtype","browserInfo","origin","window","location","submit","isInstantPayment","submitAnalytics","ANALYTICS_SELECTED_STR","target","ANALYTICS_INSTANT_PAYMENT_BUTTON","Promise","resolve","reject","onClick","then","initiatePayment","core","options","countryCode","catch","error","statusCode","handleError","toString","cause","async","paymentData","formatGooglePayContactToAdyenAddressFormat","paymentMethodData","info","shippingAddress","setState","authorizedEvent","tokenizationData","token","cardNetwork","makePaymentsCall","sanitizeResponse","verifyPaymentDidNotFail","paymentResponse","transactionState","handleResponse","setElementStatus","googlePayError","fallbackMessage","get","intent","reason","message","responseWithError","handleFailedResult","onAuthorized","data","isValid","isAvailable","isReadyToPay","response","result","paymentMethodPresent","prefetch","prefetchPaymentData","collectBrowserInfo","icon","resources","getImage","render","showPayButton","h","GooglePayButton","buttonColor","buttonType","buttonRootNode","paymentsClient"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{isReadyToPayRequest as t,initiatePaymentRequest as e}from"./requests.js";import{resolveEnvironment as a}from"./utils.js";import n from"../../utils/Script.js";import i from"./config.js";class o{paymentsClient;constructor(t){const e=a(t.environment);this.paymentsClient=this.getGooglePaymentsClient({environment:e,paymentDataCallbacks:t.paymentDataCallbacks})}async getGooglePaymentsClient(t){if(!window.google?.payments){const t=new n(i.URL);await t.load()}return new google.payments.api.PaymentsClient(t)}isReadyToPay(e){return this.paymentsClient?this.paymentsClient.then((a=>a.isReadyToPay(t(e)))):Promise.reject(new Error("Google Pay is not available"))}prefetchPaymentData(t,a){if(!this.paymentsClient)throw new Error("Google Pay is not available");const n=e(t,a);this.paymentsClient.then((t=>t.prefetchPaymentData(n)))}initiatePayment(t,a){if(!this.paymentsClient)throw new Error("Google Pay is not available");const n=e(t,a);return this.paymentsClient.then((t=>t.loadPaymentData(n)))}}export{o as default};
1
+ import{isReadyToPayRequest as t,initiatePaymentRequest as e}from"./requests.js";import{resolveEnvironment as n}from"./utils.js";import a from"../../utils/Script.js";import i from"./config.js";class o{paymentsClient;constructor(t,e){const a=n(t);this.paymentsClient=this.getGooglePaymentsClient({environment:a,paymentDataCallbacks:e})}async getGooglePaymentsClient(t){if(!window.google?.payments){const t=new a(i.URL);await t.load()}return new google.payments.api.PaymentsClient(t)}isReadyToPay(e){return this.paymentsClient?this.paymentsClient.then((n=>n.isReadyToPay(t(e)))):Promise.reject(new Error("Google Pay is not available"))}prefetchPaymentData(t,n){if(!this.paymentsClient)throw new Error("Google Pay is not available");const a=e(t,n);this.paymentsClient.then((t=>t.prefetchPaymentData(a)))}initiatePayment(t,n){if(!this.paymentsClient)throw new Error("Google Pay is not available");const a=e(t,n);return this.paymentsClient.then((t=>t.loadPaymentData(a)))}}export{o as default};
2
2
  //# sourceMappingURL=GooglePayService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GooglePayService.js","sources":["../../../../src/components/GooglePay/GooglePayService.ts"],"sourcesContent":["import { isReadyToPayRequest, initiatePaymentRequest } from './requests';\nimport { resolveEnvironment } from './utils';\nimport Script from '../../utils/Script';\nimport config from './config';\nimport type { GooglePayConfiguration } from './types';\n\nclass GooglePayService {\n public readonly paymentsClient: Promise<google.payments.api.PaymentsClient>;\n\n constructor(props: GooglePayConfiguration) {\n const environment = resolveEnvironment(props.environment);\n if (environment === 'TEST' && process.env.NODE_ENV === 'development') {\n console.warn('Google Pay initiated in TEST mode. Request non-chargeable payment methods suitable for testing.');\n }\n\n this.paymentsClient = this.getGooglePaymentsClient({\n environment,\n paymentDataCallbacks: props.paymentDataCallbacks\n });\n }\n\n /**\n * Initialize a Google Pay API client\n *\n * @see {@link https://developers.google.com/pay/api/web/reference/client#PaymentsClient|PaymentsClient constructor}\n * @returns Google Pay API client\n */\n async getGooglePaymentsClient(paymentOptions: google.payments.api.PaymentOptions): Promise<google.payments.api.PaymentsClient> {\n if (!window.google?.payments) {\n const script = new Script(config.URL);\n await script.load();\n }\n\n return new google.payments.api.PaymentsClient(paymentOptions);\n }\n\n /**\n * Determine a shopper's ability to return a form of payment from the Google Pay API.\n * @see {@link https://developers.google.com/pay/api/web/reference/client#isReadyToPay|isReadyToPay}\n */\n isReadyToPay(props): Promise<google.payments.api.IsReadyToPayResponse> {\n if (!this.paymentsClient) return Promise.reject(new Error('Google Pay is not available'));\n\n return this.paymentsClient.then(client => client.isReadyToPay(isReadyToPayRequest(props)));\n }\n\n prefetchPaymentData(props: GooglePayConfiguration, countryCode: string): void {\n if (!this.paymentsClient) throw new Error('Google Pay is not available');\n\n const paymentDataRequest = initiatePaymentRequest(props, countryCode);\n this.paymentsClient.then(client => client.prefetchPaymentData(paymentDataRequest));\n }\n\n /**\n * Show Google Pay payment sheet when Google Pay payment button is clicked\n * @returns paymentData response from Google Pay API after user approves payment\n * @see {@link https://developers.google.com/pay/api/web/reference/object#PaymentData|PaymentData object reference}\n */\n initiatePayment(props: GooglePayConfiguration, countryCode: string): Promise<google.payments.api.PaymentData> {\n if (!this.paymentsClient) throw new Error('Google Pay is not available');\n\n const paymentDataRequest = initiatePaymentRequest(props, countryCode);\n return this.paymentsClient.then(client => client.loadPaymentData(paymentDataRequest));\n }\n}\n\nexport default GooglePayService;\n"],"names":["GooglePayService","paymentsClient","constructor","props","environment","resolveEnvironment","this","getGooglePaymentsClient","paymentDataCallbacks","paymentOptions","window","google","payments","script","Script","config","URL","load","api","PaymentsClient","isReadyToPay","then","client","isReadyToPayRequest","Promise","reject","Error","prefetchPaymentData","countryCode","paymentDataRequest","initiatePaymentRequest","initiatePayment","loadPaymentData"],"mappings":"gMAMA,MAAMA,EACcC,eAEhBC,WAAAA,CAAYC,GACR,MAAMC,EAAcC,EAAmBF,EAAMC,aAK7CE,KAAKL,eAAiBK,KAAKC,wBAAwB,CAC/CH,cACAI,qBAAsBL,EAAMK,sBAEpC,CAQA,6BAAMD,CAAwBE,GAC1B,IAAKC,OAAOC,QAAQC,SAAU,CAC1B,MAAMC,EAAS,IAAIC,EAAOC,EAAOC,WAC3BH,EAAOI,MACjB,CAEA,OAAO,IAAIN,OAAOC,SAASM,IAAIC,eAAeV,EAClD,CAMAW,YAAAA,CAAajB,GACT,OAAKG,KAAKL,eAEHK,KAAKL,eAAeoB,MAAKC,GAAUA,EAAOF,aAAaG,EAAoBpB,MAFjDqB,QAAQC,OAAO,IAAIC,MAAM,+BAG9D,CAEAC,mBAAAA,CAAoBxB,EAA+ByB,GAC/C,IAAKtB,KAAKL,eAAgB,MAAM,IAAIyB,MAAM,+BAE1C,MAAMG,EAAqBC,EAAuB3B,EAAOyB,GACzDtB,KAAKL,eAAeoB,MAAKC,GAAUA,EAAOK,oBAAoBE,IAClE,CAOAE,eAAAA,CAAgB5B,EAA+ByB,GAC3C,IAAKtB,KAAKL,eAAgB,MAAM,IAAIyB,MAAM,+BAE1C,MAAMG,EAAqBC,EAAuB3B,EAAOyB,GACzD,OAAOtB,KAAKL,eAAeoB,MAAKC,GAAUA,EAAOU,gBAAgBH,IACrE"}
1
+ {"version":3,"file":"GooglePayService.js","sources":["../../../../src/components/GooglePay/GooglePayService.ts"],"sourcesContent":["import { isReadyToPayRequest, initiatePaymentRequest } from './requests';\nimport { resolveEnvironment } from './utils';\nimport Script from '../../utils/Script';\nimport config from './config';\nimport type { GooglePayConfiguration } from './types';\n\nclass GooglePayService {\n public readonly paymentsClient: Promise<google.payments.api.PaymentsClient>;\n\n constructor(environment: string, paymentDataCallbacks: google.payments.api.PaymentDataCallbacks) {\n const googlePayEnvironment = resolveEnvironment(environment);\n\n this.paymentsClient = this.getGooglePaymentsClient({\n environment: googlePayEnvironment,\n paymentDataCallbacks\n });\n }\n\n /**\n * Initialize a Google Pay API client\n *\n * @see {@link https://developers.google.com/pay/api/web/reference/client#PaymentsClient|PaymentsClient constructor}\n * @returns Google Pay API client\n */\n async getGooglePaymentsClient(paymentOptions: google.payments.api.PaymentOptions): Promise<google.payments.api.PaymentsClient> {\n if (!window.google?.payments) {\n const script = new Script(config.URL);\n await script.load();\n }\n\n return new google.payments.api.PaymentsClient(paymentOptions);\n }\n\n /**\n * Determine a shopper's ability to return a form of payment from the Google Pay API.\n * @see {@link https://developers.google.com/pay/api/web/reference/client#isReadyToPay|isReadyToPay}\n */\n isReadyToPay(props): Promise<google.payments.api.IsReadyToPayResponse> {\n if (!this.paymentsClient) return Promise.reject(new Error('Google Pay is not available'));\n\n return this.paymentsClient.then(client => client.isReadyToPay(isReadyToPayRequest(props)));\n }\n\n prefetchPaymentData(props: GooglePayConfiguration, countryCode: string): void {\n if (!this.paymentsClient) throw new Error('Google Pay is not available');\n\n const paymentDataRequest = initiatePaymentRequest(props, countryCode);\n this.paymentsClient.then(client => client.prefetchPaymentData(paymentDataRequest));\n }\n\n /**\n * Show Google Pay payment sheet when Google Pay payment button is clicked\n * @returns paymentData response from Google Pay API after user approves payment\n * @see {@link https://developers.google.com/pay/api/web/reference/object#PaymentData|PaymentData object reference}\n */\n initiatePayment(props: GooglePayConfiguration, countryCode: string): Promise<google.payments.api.PaymentData> {\n if (!this.paymentsClient) throw new Error('Google Pay is not available');\n\n const paymentDataRequest = initiatePaymentRequest(props, countryCode);\n return this.paymentsClient.then(client => client.loadPaymentData(paymentDataRequest));\n }\n}\n\nexport default GooglePayService;\n"],"names":["GooglePayService","paymentsClient","constructor","environment","paymentDataCallbacks","googlePayEnvironment","resolveEnvironment","this","getGooglePaymentsClient","paymentOptions","window","google","payments","script","Script","config","URL","load","api","PaymentsClient","isReadyToPay","props","then","client","isReadyToPayRequest","Promise","reject","Error","prefetchPaymentData","countryCode","paymentDataRequest","initiatePaymentRequest","initiatePayment","loadPaymentData"],"mappings":"gMAMA,MAAMA,EACcC,eAEhBC,WAAAA,CAAYC,EAAqBC,GAC7B,MAAMC,EAAuBC,EAAmBH,GAEhDI,KAAKN,eAAiBM,KAAKC,wBAAwB,CAC/CL,YAAaE,EACbD,wBAER,CAQA,6BAAMI,CAAwBC,GAC1B,IAAKC,OAAOC,QAAQC,SAAU,CAC1B,MAAMC,EAAS,IAAIC,EAAOC,EAAOC,WAC3BH,EAAOI,MACjB,CAEA,OAAO,IAAIN,OAAOC,SAASM,IAAIC,eAAeV,EAClD,CAMAW,YAAAA,CAAaC,GACT,OAAKd,KAAKN,eAEHM,KAAKN,eAAeqB,MAAKC,GAAUA,EAAOH,aAAaI,EAAoBH,MAFjDI,QAAQC,OAAO,IAAIC,MAAM,+BAG9D,CAEAC,mBAAAA,CAAoBP,EAA+BQ,GAC/C,IAAKtB,KAAKN,eAAgB,MAAM,IAAI0B,MAAM,+BAE1C,MAAMG,EAAqBC,EAAuBV,EAAOQ,GACzDtB,KAAKN,eAAeqB,MAAKC,GAAUA,EAAOK,oBAAoBE,IAClE,CAOAE,eAAAA,CAAgBX,EAA+BQ,GAC3C,IAAKtB,KAAKN,eAAgB,MAAM,IAAI0B,MAAM,+BAE1C,MAAMG,EAAqBC,EAAuBV,EAAOQ,GACzD,OAAOtB,KAAKN,eAAeqB,MAAKC,GAAUA,EAAOU,gBAAgBH,IACrE"}
@@ -1,2 +1,2 @@
1
- var e={environment:"TEST",existingPaymentMethodRequired:!1,buttonColor:"default",buttonType:"long",buttonSizeMode:void 0,configuration:{gatewayMerchantId:"",merchantId:"",merchantName:""},amount:{value:0,currency:"USD"},totalPriceStatus:"FINAL",onClick:e=>e(),allowedAuthMethods:["PAN_ONLY","CRYPTOGRAM_3DS"],allowedCardNetworks:["AMEX","DISCOVER","JCB","MASTERCARD","VISA"],allowCreditCards:!0,allowPrepaidCards:!0,billingAddressRequired:!1,billingAddressParameters:void 0,assuranceDetailsRequired:!1,emailRequired:!1,shippingAddressRequired:!1,shippingAddressParameters:void 0,shippingOptionRequired:!1,shippingOptionParameters:void 0,paymentMethods:[],callbackIntents:[]};export{e as default};
1
+ const e={isExpress:!1,existingPaymentMethodRequired:!1,buttonColor:"default",buttonType:"long",buttonSizeMode:void 0,configuration:{gatewayMerchantId:"",merchantId:"",merchantName:""},amount:{value:0,currency:"USD"},totalPriceStatus:"FINAL",onClick:e=>e(),allowedAuthMethods:["PAN_ONLY","CRYPTOGRAM_3DS"],allowedCardNetworks:["AMEX","DISCOVER","JCB","MASTERCARD","VISA"],allowCreditCards:!0,allowPrepaidCards:!0,billingAddressRequired:!1,billingAddressParameters:void 0,assuranceDetailsRequired:!1,emailRequired:!1,shippingAddressRequired:!1,shippingAddressParameters:void 0,shippingOptionRequired:!1,shippingOptionParameters:void 0,callbackIntents:[]};export{e as default};
2
2
  //# sourceMappingURL=defaultProps.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"defaultProps.js","sources":["../../../../src/components/GooglePay/defaultProps.ts"],"sourcesContent":["export default {\n environment: 'TEST',\n\n // isReadyToPayRequest\n existingPaymentMethodRequired: false,\n\n // ButtonOptions\n // https://developers.google.com/pay/api/web/reference/object#ButtonOptions\n buttonColor: 'default' as google.payments.api.ButtonColor, // default/black/white\n buttonType: 'long' as google.payments.api.ButtonType, // long/short\n buttonSizeMode: undefined,\n\n // PaymentDataRequest\n configuration: {\n // Adyen's merchant account\n gatewayMerchantId: '', // E.g TestMerchant\n\n // https://developers.google.com/pay/api/web/reference/object#MerchantInfo\n merchantId: '', // E.g 039484839309\n merchantName: '' // E.g Example Merchant,\n },\n\n // Payment\n amount: {\n value: 0,\n currency: 'USD'\n },\n\n totalPriceStatus: 'FINAL' as google.payments.api.TotalPriceStatus,\n\n // Callbacks\n onClick: resolve => resolve(),\n\n // CardParameters\n // https://developers.google.com/pay/api/web/reference/object#CardParameters\n allowedAuthMethods: ['PAN_ONLY', 'CRYPTOGRAM_3DS'] as google.payments.api.CardAuthMethod[],\n allowedCardNetworks: ['AMEX', 'DISCOVER', 'JCB', 'MASTERCARD', 'VISA'] as google.payments.api.CardNetwork[],\n allowCreditCards: true, // Set to false if you don't support credit cards.\n allowPrepaidCards: true, // Set to false if you don't support prepaid cards.\n billingAddressRequired: false, // A billing address should only be requested if it's required to process the transaction.\n billingAddressParameters: undefined, // The expected fields returned if billingAddressRequired is set to true.\n assuranceDetailsRequired: false, // https://developers.google.com/pay/api/web/reference/response-objects#assurance-details-specifications\n\n emailRequired: false,\n shippingAddressRequired: false,\n shippingAddressParameters: undefined, // https://developers.google.com/pay/api/web/reference/object#ShippingAddressParameters\n shippingOptionRequired: false,\n shippingOptionParameters: undefined,\n paymentMethods: [],\n\n callbackIntents: []\n};\n"],"names":["defaultProps","environment","existingPaymentMethodRequired","buttonColor","buttonType","buttonSizeMode","undefined","configuration","gatewayMerchantId","merchantId","merchantName","amount","value","currency","totalPriceStatus","onClick","resolve","allowedAuthMethods","allowedCardNetworks","allowCreditCards","allowPrepaidCards","billingAddressRequired","billingAddressParameters","assuranceDetailsRequired","emailRequired","shippingAddressRequired","shippingAddressParameters","shippingOptionRequired","shippingOptionParameters","paymentMethods","callbackIntents"],"mappings":"AAAA,IAAeA,EAAA,CACXC,YAAa,OAGbC,+BAA+B,EAI/BC,YAAa,UACbC,WAAY,OACZC,oBAAgBC,EAGhBC,cAAe,CAEXC,kBAAmB,GAGnBC,WAAY,GACZC,aAAc,IAIlBC,OAAQ,CACJC,MAAO,EACPC,SAAU,OAGdC,iBAAkB,QAGlBC,QAASC,GAAWA,IAIpBC,mBAAoB,CAAC,WAAY,kBACjCC,oBAAqB,CAAC,OAAQ,WAAY,MAAO,aAAc,QAC/DC,kBAAkB,EAClBC,mBAAmB,EACnBC,wBAAwB,EACxBC,8BAA0BhB,EAC1BiB,0BAA0B,EAE1BC,eAAe,EACfC,yBAAyB,EACzBC,+BAA2BpB,EAC3BqB,wBAAwB,EACxBC,8BAA0BtB,EAC1BuB,eAAgB,GAEhBC,gBAAiB"}
1
+ {"version":3,"file":"defaultProps.js","sources":["../../../../src/components/GooglePay/defaultProps.ts"],"sourcesContent":["import { GooglePayConfiguration } from './types';\n\nconst defaultProps: GooglePayConfiguration = {\n isExpress: false,\n\n // isReadyToPayRequest\n existingPaymentMethodRequired: false,\n\n // ButtonOptions\n // https://developers.google.com/pay/api/web/reference/object#ButtonOptions\n buttonColor: 'default' as google.payments.api.ButtonColor, // default/black/white\n buttonType: 'long' as google.payments.api.ButtonType, // long/short\n buttonSizeMode: undefined,\n\n // PaymentDataRequest\n configuration: {\n // Adyen's merchant account\n gatewayMerchantId: '', // E.g TestMerchant\n\n // https://developers.google.com/pay/api/web/reference/object#MerchantInfo\n merchantId: '', // E.g 039484839309\n merchantName: '' // E.g Example Merchant,\n },\n\n // Payment\n amount: {\n value: 0,\n currency: 'USD'\n },\n\n totalPriceStatus: 'FINAL' as google.payments.api.TotalPriceStatus,\n\n // Callbacks\n onClick: resolve => resolve(),\n\n // CardParameters\n // https://developers.google.com/pay/api/web/reference/object#CardParameters\n allowedAuthMethods: ['PAN_ONLY', 'CRYPTOGRAM_3DS'] as google.payments.api.CardAuthMethod[],\n allowedCardNetworks: ['AMEX', 'DISCOVER', 'JCB', 'MASTERCARD', 'VISA'] as google.payments.api.CardNetwork[],\n allowCreditCards: true, // Set to false if you don't support credit cards.\n allowPrepaidCards: true, // Set to false if you don't support prepaid cards.\n billingAddressRequired: false, // A billing address should only be requested if it's required to process the transaction.\n billingAddressParameters: undefined, // The expected fields returned if billingAddressRequired is set to true.\n assuranceDetailsRequired: false, // https://developers.google.com/pay/api/web/reference/response-objects#assurance-details-specifications\n\n emailRequired: false,\n shippingAddressRequired: false,\n shippingAddressParameters: undefined, // https://developers.google.com/pay/api/web/reference/object#ShippingAddressParameters\n shippingOptionRequired: false,\n shippingOptionParameters: undefined,\n callbackIntents: []\n};\n\nexport default defaultProps;\n"],"names":["defaultProps","isExpress","existingPaymentMethodRequired","buttonColor","buttonType","buttonSizeMode","undefined","configuration","gatewayMerchantId","merchantId","merchantName","amount","value","currency","totalPriceStatus","onClick","resolve","allowedAuthMethods","allowedCardNetworks","allowCreditCards","allowPrepaidCards","billingAddressRequired","billingAddressParameters","assuranceDetailsRequired","emailRequired","shippingAddressRequired","shippingAddressParameters","shippingOptionRequired","shippingOptionParameters","callbackIntents"],"mappings":"AAEA,MAAMA,EAAuC,CACzCC,WAAW,EAGXC,+BAA+B,EAI/BC,YAAa,UACbC,WAAY,OACZC,oBAAgBC,EAGhBC,cAAe,CAEXC,kBAAmB,GAGnBC,WAAY,GACZC,aAAc,IAIlBC,OAAQ,CACJC,MAAO,EACPC,SAAU,OAGdC,iBAAkB,QAGlBC,QAASC,GAAWA,IAIpBC,mBAAoB,CAAC,WAAY,kBACjCC,oBAAqB,CAAC,OAAQ,WAAY,MAAO,aAAc,QAC/DC,kBAAkB,EAClBC,mBAAmB,EACnBC,wBAAwB,EACxBC,8BAA0BhB,EAC1BiB,0BAA0B,EAE1BC,eAAe,EACfC,yBAAyB,EACzBC,+BAA2BpB,EAC3BqB,wBAAwB,EACxBC,8BAA0BtB,EAC1BuB,gBAAiB"}