@adyen/adyen-web 6.0.0-beta.1 → 6.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (532) hide show
  1. package/README.md +1 -1
  2. package/dist/cjs/adyen.css +9 -5
  3. package/dist/cjs/adyen.css.map +1 -1
  4. package/dist/cjs/index.cjs +2 -2
  5. package/dist/cjs/index.cjs.map +1 -1
  6. package/dist/cjs/index.d.cts +802 -849
  7. package/dist/es/adyen.css +9 -5
  8. package/dist/es/adyen.css.map +1 -1
  9. package/dist/es/components/ANCV/ANCV.js +1 -1
  10. package/dist/es/components/ANCV/ANCV.js.map +1 -1
  11. package/dist/es/components/Ach/components/AchInput/components/AchSFInput.js +1 -1
  12. package/dist/es/components/Ach/components/AchInput/components/AchSFInput.js.map +1 -1
  13. package/dist/es/components/Card/Card.js +1 -1
  14. package/dist/es/components/Card/Card.js.map +1 -1
  15. package/dist/es/components/Card/components/CardInput/CardInput.js +1 -1
  16. package/dist/es/components/Card/components/CardInput/CardInput.js.map +1 -1
  17. package/dist/es/components/Card/components/CardInput/components/CVC.js +1 -1
  18. package/dist/es/components/Card/components/CardInput/components/CVC.js.map +1 -1
  19. package/dist/es/components/Card/components/CardInput/components/CardNumber.js +1 -1
  20. package/dist/es/components/Card/components/CardInput/components/CardNumber.js.map +1 -1
  21. package/dist/es/components/Card/components/CardInput/components/ExpirationDate.js +1 -1
  22. package/dist/es/components/Card/components/CardInput/components/ExpirationDate.js.map +1 -1
  23. package/dist/es/components/Card/components/CardInput/components/{IframeLabelAlternative.js → FieldLabelAlternative.js} +1 -1
  24. package/dist/es/components/Card/components/CardInput/components/FieldLabelAlternative.js.map +1 -0
  25. package/dist/es/components/Card/components/CardInput/components/Installments/Installments.js +1 -1
  26. package/dist/es/components/Card/components/CardInput/components/Installments/Installments.js.map +1 -1
  27. package/dist/es/components/Card/components/CardInput/components/KCPAuthentication.js +1 -1
  28. package/dist/es/components/Card/components/CardInput/components/KCPAuthentication.js.map +1 -1
  29. package/dist/es/components/Card/components/CardInput/defaultProps.js +1 -1
  30. package/dist/es/components/Card/components/CardInput/defaultProps.js.map +1 -1
  31. package/dist/es/components/CustomCard/CustomCard.js +1 -1
  32. package/dist/es/components/CustomCard/CustomCard.js.map +1 -1
  33. package/dist/es/components/Donation/components/CampaignContent.js +1 -1
  34. package/dist/es/components/Donation/components/CampaignContent.js.map +1 -1
  35. package/dist/es/components/Donation/components/DonationComponent.js +1 -1
  36. package/dist/es/components/Donation/components/DonationComponent.js.map +1 -1
  37. package/dist/es/components/Donation/components/FixedAmounts.js +2 -0
  38. package/dist/es/components/Donation/components/FixedAmounts.js.map +1 -0
  39. package/dist/es/components/Donation/components/Roundup.js +2 -0
  40. package/dist/es/components/Donation/components/Roundup.js.map +1 -0
  41. package/dist/es/components/Donation/components/utils.js +2 -0
  42. package/dist/es/components/Donation/components/utils.js.map +1 -0
  43. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodItem/PaymentMethodItem.js +1 -1
  44. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodItem/PaymentMethodItem.js.map +1 -1
  45. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodList.js +1 -1
  46. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodList.js.map +1 -1
  47. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodsContainer.js +1 -1
  48. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodsContainer.js.map +1 -1
  49. package/dist/es/components/Dropin/elements/createElements.js +1 -1
  50. package/dist/es/components/Dropin/elements/createElements.js.map +1 -1
  51. package/dist/es/components/Dropin/elements/filters.js +1 -1
  52. package/dist/es/components/Dropin/elements/filters.js.map +1 -1
  53. package/dist/es/components/Giftcard/Giftcard.js.map +1 -1
  54. package/dist/es/components/Giftcard/components/GiftcardNumberField.js +1 -1
  55. package/dist/es/components/Giftcard/components/GiftcardNumberField.js.map +1 -1
  56. package/dist/es/components/Giftcard/components/GiftcardPinField.js +1 -1
  57. package/dist/es/components/Giftcard/components/GiftcardPinField.js.map +1 -1
  58. package/dist/es/components/GooglePay/GooglePay.js +1 -1
  59. package/dist/es/components/GooglePay/GooglePay.js.map +1 -1
  60. package/dist/es/components/GooglePay/components/GooglePayButton.js +1 -1
  61. package/dist/es/components/GooglePay/components/GooglePayButton.js.map +1 -1
  62. package/dist/es/components/MealVoucherFR/components/MealVoucherExpiryField.js +1 -1
  63. package/dist/es/components/MealVoucherFR/components/MealVoucherExpiryField.js.map +1 -1
  64. package/dist/es/components/ThreeDS2/ThreeDS2Challenge.js +1 -1
  65. package/dist/es/components/ThreeDS2/ThreeDS2Challenge.js.map +1 -1
  66. package/dist/es/components/ThreeDS2/ThreeDS2DeviceFingerprint.js +1 -1
  67. package/dist/es/components/ThreeDS2/ThreeDS2DeviceFingerprint.js.map +1 -1
  68. package/dist/es/components/ThreeDS2/callSubmit3DS2Fingerprint.js +1 -1
  69. package/dist/es/components/ThreeDS2/callSubmit3DS2Fingerprint.js.map +1 -1
  70. package/dist/es/components/ThreeDS2/components/utils.js +1 -1
  71. package/dist/es/components/ThreeDS2/components/utils.js.map +1 -1
  72. package/dist/es/components/UPI/UPI.js +1 -1
  73. package/dist/es/components/UPI/UPI.js.map +1 -1
  74. package/dist/es/components/UPI/components/UPIComponent/UPIComponent.js +1 -1
  75. package/dist/es/components/UPI/components/UPIComponent/UPIComponent.js.map +1 -1
  76. package/dist/es/components/UPI/components/UPIComponent/constants.js +2 -0
  77. package/dist/es/components/UPI/components/UPIComponent/constants.js.map +1 -0
  78. package/dist/es/components/UPI/components/UPIComponent/useUpiSegmentedControlOptions.js +2 -0
  79. package/dist/es/components/UPI/components/UPIComponent/useUpiSegmentedControlOptions.js.map +1 -0
  80. package/dist/es/components/UPI/components/UPIIntentAppList/UPIIntentAppItem/UPIIntentAppItem.js +2 -0
  81. package/dist/es/components/UPI/components/UPIIntentAppList/UPIIntentAppItem/UPIIntentAppItem.js.map +1 -0
  82. package/dist/es/components/UPI/components/UPIIntentAppList/UPIIntentAppList.js +2 -0
  83. package/dist/es/components/UPI/components/UPIIntentAppList/UPIIntentAppList.js.map +1 -0
  84. package/dist/es/components/UPI/components/VpaInput/VpaInput.js +1 -1
  85. package/dist/es/components/UPI/components/VpaInput/VpaInput.js.map +1 -1
  86. package/dist/es/components/components-name-map.js +1 -1
  87. package/dist/es/components/components-name-map.js.map +1 -1
  88. package/dist/es/components/internal/Address/components/ReadOnlyAddress.js +1 -1
  89. package/dist/es/components/internal/Address/components/ReadOnlyAddress.js.map +1 -1
  90. package/dist/es/components/internal/Await/Await.js +1 -1
  91. package/dist/es/components/internal/Await/Await.js.map +1 -1
  92. package/dist/es/components/internal/Countdown/index.js +1 -1
  93. package/dist/es/components/internal/Countdown/index.js.map +1 -1
  94. package/dist/es/components/internal/DisclaimerMessage/DisclaimerMessage.js +1 -1
  95. package/dist/es/components/internal/DisclaimerMessage/DisclaimerMessage.js.map +1 -1
  96. package/dist/es/components/internal/ExpandButton/ExpandButton.js +2 -0
  97. package/dist/es/components/internal/ExpandButton/ExpandButton.js.map +1 -0
  98. package/dist/es/components/internal/FormFields/ConsentCheckbox/ConsentCheckbox.js +1 -1
  99. package/dist/es/components/internal/FormFields/ConsentCheckbox/ConsentCheckbox.js.map +1 -1
  100. package/dist/es/components/internal/FormFields/Field/Field.js +1 -1
  101. package/dist/es/components/internal/FormFields/Field/Field.js.map +1 -1
  102. package/dist/es/components/internal/FormFields/RadioGroup/RadioGroup.js +1 -1
  103. package/dist/es/components/internal/FormFields/RadioGroup/RadioGroup.js.map +1 -1
  104. package/dist/es/components/internal/FormFields/Select/Select.js +1 -1
  105. package/dist/es/components/internal/FormFields/Select/Select.js.map +1 -1
  106. package/dist/es/components/internal/FormFields/Select/components/SelectButton.js +1 -1
  107. package/dist/es/components/internal/FormFields/Select/components/SelectButton.js.map +1 -1
  108. package/dist/es/components/internal/SecuredFields/SFP/SecuredFieldsProviderHandlers.js +1 -1
  109. package/dist/es/components/internal/SecuredFields/SFP/SecuredFieldsProviderHandlers.js.map +1 -1
  110. package/dist/es/components/internal/SecuredFields/lib/CSF/extensions/createSecuredFields.js +1 -1
  111. package/dist/es/components/internal/SecuredFields/lib/CSF/extensions/createSecuredFields.js.map +1 -1
  112. package/dist/es/components/internal/SecuredFields/lib/CSF/extensions/handleEncryption.js +1 -1
  113. package/dist/es/components/internal/SecuredFields/lib/CSF/extensions/handleEncryption.js.map +1 -1
  114. package/dist/es/components/internal/SecuredFields/lib/CSF/extensions/handleValidation.js +1 -1
  115. package/dist/es/components/internal/SecuredFields/lib/CSF/extensions/handleValidation.js.map +1 -1
  116. package/dist/es/components/internal/SecuredFields/lib/CSF/initCSF.js +1 -1
  117. package/dist/es/components/internal/SecuredFields/lib/CSF/initCSF.js.map +1 -1
  118. package/dist/es/components/internal/SecuredFields/lib/CSF/partials/processBrand.js +1 -1
  119. package/dist/es/components/internal/SecuredFields/lib/CSF/partials/processBrand.js.map +1 -1
  120. package/dist/es/components/internal/SecuredFields/lib/CSF/utils/getCardGroupTypes.js +1 -1
  121. package/dist/es/components/internal/SecuredFields/lib/CSF/utils/getCardGroupTypes.js.map +1 -1
  122. package/dist/es/components/internal/SecuredFields/lib/securedField/SecuredField.js +1 -1
  123. package/dist/es/components/internal/SecuredFields/lib/securedField/SecuredField.js.map +1 -1
  124. package/dist/es/components/internal/SecuredFields/lib/utilities/commonUtils.js +1 -1
  125. package/dist/es/components/internal/SecuredFields/lib/utilities/commonUtils.js.map +1 -1
  126. package/dist/es/components/internal/SecuredFields/utils.js +1 -1
  127. package/dist/es/components/internal/SecuredFields/utils.js.map +1 -1
  128. package/dist/es/components/tx-variants.js +1 -1
  129. package/dist/es/components/tx-variants.js.map +1 -1
  130. package/dist/es/core/Analytics/analyticsPreProcessor.js +1 -1
  131. package/dist/es/core/Analytics/analyticsPreProcessor.js.map +1 -1
  132. package/dist/es/core/Analytics/utils.js +1 -1
  133. package/dist/es/core/Analytics/utils.js.map +1 -1
  134. package/dist/es/core/Environment/constants.js +1 -1
  135. package/dist/es/core/Environment/constants.js.map +1 -1
  136. package/dist/es/core/RiskModule/RiskModule.js +1 -1
  137. package/dist/es/core/RiskModule/RiskModule.js.map +1 -1
  138. package/dist/es/core/Services/analytics/collect-id.js +1 -1
  139. package/dist/es/core/Services/analytics/collect-id.js.map +1 -1
  140. package/dist/es/core/Services/get-translations.js +1 -1
  141. package/dist/es/core/Services/get-translations.js.map +1 -1
  142. package/dist/es/core/config.js +1 -1
  143. package/dist/es/core/config.js.map +1 -1
  144. package/dist/es/core/core.js +1 -1
  145. package/dist/es/core/core.js.map +1 -1
  146. package/dist/es/external/preact/dist/preact.js +1 -1
  147. package/dist/es/external/preact/dist/preact.js.map +1 -1
  148. package/dist/es/external/preact/hooks/dist/hooks.js +1 -1
  149. package/dist/es/external/preact/hooks/dist/hooks.js.map +1 -1
  150. package/dist/es/index.d.ts +802 -849
  151. package/dist/es/language/constants.js +1 -1
  152. package/dist/es/language/constants.js.map +1 -1
  153. package/dist/es/utils/amount-util.js.map +1 -1
  154. package/dist/es/utils/commonUtils.js +2 -0
  155. package/dist/es/utils/commonUtils.js.map +1 -0
  156. package/dist/es-legacy/adyen.css +9 -5
  157. package/dist/es-legacy/adyen.css.map +1 -1
  158. package/dist/es-legacy/components/ANCV/ANCV.js +1 -1
  159. package/dist/es-legacy/components/ANCV/ANCV.js.map +1 -1
  160. package/dist/es-legacy/components/Ach/Ach.js +1 -1
  161. package/dist/es-legacy/components/Ach/Ach.js.map +1 -1
  162. package/dist/es-legacy/components/Ach/components/AchInput/AchInput.js +1 -1
  163. package/dist/es-legacy/components/Ach/components/AchInput/AchInput.js.map +1 -1
  164. package/dist/es-legacy/components/Ach/components/AchInput/components/AchSFInput.js +1 -1
  165. package/dist/es-legacy/components/Ach/components/AchInput/components/AchSFInput.js.map +1 -1
  166. package/dist/es-legacy/components/Address/Address.js +1 -1
  167. package/dist/es-legacy/components/Address/Address.js.map +1 -1
  168. package/dist/es-legacy/components/Affirm/Affirm.js +1 -1
  169. package/dist/es-legacy/components/Affirm/Affirm.js.map +1 -1
  170. package/dist/es-legacy/components/AfterPay/AfterPay.js +1 -1
  171. package/dist/es-legacy/components/AfterPay/AfterPay.js.map +1 -1
  172. package/dist/es-legacy/components/AfterPay/AfterPayB2B.js +1 -1
  173. package/dist/es-legacy/components/AfterPay/AfterPayB2B.js.map +1 -1
  174. package/dist/es-legacy/components/AmazonPay/AmazonPay.js +1 -1
  175. package/dist/es-legacy/components/AmazonPay/AmazonPay.js.map +1 -1
  176. package/dist/es-legacy/components/AmazonPay/components/AmazonPayButton.js +1 -1
  177. package/dist/es-legacy/components/AmazonPay/components/AmazonPayButton.js.map +1 -1
  178. package/dist/es-legacy/components/AmazonPay/components/AmazonPayComponent.js +1 -1
  179. package/dist/es-legacy/components/AmazonPay/components/AmazonPayComponent.js.map +1 -1
  180. package/dist/es-legacy/components/AmazonPay/utils.js +1 -1
  181. package/dist/es-legacy/components/AmazonPay/utils.js.map +1 -1
  182. package/dist/es-legacy/components/ApplePay/ApplePay.js +1 -1
  183. package/dist/es-legacy/components/ApplePay/ApplePay.js.map +1 -1
  184. package/dist/es-legacy/components/Atome/Atome.js +1 -1
  185. package/dist/es-legacy/components/Atome/Atome.js.map +1 -1
  186. package/dist/es-legacy/components/Atome/config.js +1 -1
  187. package/dist/es-legacy/components/Atome/config.js.map +1 -1
  188. package/dist/es-legacy/components/BacsDD/BacsDD.js +1 -1
  189. package/dist/es-legacy/components/BacsDD/BacsDD.js.map +1 -1
  190. package/dist/es-legacy/components/BankTransfer/BankTransfer.js +1 -1
  191. package/dist/es-legacy/components/BankTransfer/BankTransfer.js.map +1 -1
  192. package/dist/es-legacy/components/BillDesk/BillDeskOnline.js +1 -1
  193. package/dist/es-legacy/components/BillDesk/BillDeskOnline.js.map +1 -1
  194. package/dist/es-legacy/components/BillDesk/BillDeskWallet.js +1 -1
  195. package/dist/es-legacy/components/BillDesk/BillDeskWallet.js.map +1 -1
  196. package/dist/es-legacy/components/Blik/Blik.js +1 -1
  197. package/dist/es-legacy/components/Blik/Blik.js.map +1 -1
  198. package/dist/es-legacy/components/Boleto/Boleto.js +1 -1
  199. package/dist/es-legacy/components/Boleto/Boleto.js.map +1 -1
  200. package/dist/es-legacy/components/Boleto/components/BoletoInput/BoletoInput.js +1 -1
  201. package/dist/es-legacy/components/Boleto/components/BoletoInput/BoletoInput.js.map +1 -1
  202. package/dist/es-legacy/components/Card/Bancontact.js +1 -1
  203. package/dist/es-legacy/components/Card/Bancontact.js.map +1 -1
  204. package/dist/es-legacy/components/Card/Card.js +1 -1
  205. package/dist/es-legacy/components/Card/Card.js.map +1 -1
  206. package/dist/es-legacy/components/Card/components/CardInput/CardInput.js +1 -1
  207. package/dist/es-legacy/components/Card/components/CardInput/CardInput.js.map +1 -1
  208. package/dist/es-legacy/components/Card/components/CardInput/components/CVC.js +1 -1
  209. package/dist/es-legacy/components/Card/components/CardInput/components/CVC.js.map +1 -1
  210. package/dist/es-legacy/components/Card/components/CardInput/components/CardNumber.js +1 -1
  211. package/dist/es-legacy/components/Card/components/CardInput/components/CardNumber.js.map +1 -1
  212. package/dist/es-legacy/components/Card/components/CardInput/components/ExpirationDate.js +1 -1
  213. package/dist/es-legacy/components/Card/components/CardInput/components/ExpirationDate.js.map +1 -1
  214. package/dist/es-legacy/components/Card/components/CardInput/components/FieldLabelAlternative.js +2 -0
  215. package/dist/es-legacy/components/Card/components/CardInput/components/FieldLabelAlternative.js.map +1 -0
  216. package/dist/es-legacy/components/Card/components/CardInput/components/Installments/Installments.js +1 -1
  217. package/dist/es-legacy/components/Card/components/CardInput/components/Installments/Installments.js.map +1 -1
  218. package/dist/es-legacy/components/Card/components/CardInput/components/KCPAuthentication.js +1 -1
  219. package/dist/es-legacy/components/Card/components/CardInput/components/KCPAuthentication.js.map +1 -1
  220. package/dist/es-legacy/components/Card/components/CardInput/components/StoredCardFields.js +1 -1
  221. package/dist/es-legacy/components/Card/components/CardInput/components/StoredCardFields.js.map +1 -1
  222. package/dist/es-legacy/components/Card/components/CardInput/defaultProps.js +1 -1
  223. package/dist/es-legacy/components/Card/components/CardInput/defaultProps.js.map +1 -1
  224. package/dist/es-legacy/components/CashAppPay/CashAppPay.js +1 -1
  225. package/dist/es-legacy/components/CashAppPay/CashAppPay.js.map +1 -1
  226. package/dist/es-legacy/components/ClickToPay/ClickToPay.js +1 -1
  227. package/dist/es-legacy/components/ClickToPay/ClickToPay.js.map +1 -1
  228. package/dist/es-legacy/components/CustomCard/CustomCard.js +1 -1
  229. package/dist/es-legacy/components/CustomCard/CustomCard.js.map +1 -1
  230. package/dist/es-legacy/components/CustomCard/CustomCardInput/CustomCardInput.js +1 -1
  231. package/dist/es-legacy/components/CustomCard/CustomCardInput/CustomCardInput.js.map +1 -1
  232. package/dist/es-legacy/components/Doku/Doku.js +1 -1
  233. package/dist/es-legacy/components/Doku/Doku.js.map +1 -1
  234. package/dist/es-legacy/components/Donation/Donation.js +1 -1
  235. package/dist/es-legacy/components/Donation/Donation.js.map +1 -1
  236. package/dist/es-legacy/components/Donation/components/CampaignContent.js +1 -1
  237. package/dist/es-legacy/components/Donation/components/CampaignContent.js.map +1 -1
  238. package/dist/es-legacy/components/Donation/components/DonationComponent.js +1 -1
  239. package/dist/es-legacy/components/Donation/components/DonationComponent.js.map +1 -1
  240. package/dist/es-legacy/components/Donation/components/FixedAmounts.js +2 -0
  241. package/dist/es-legacy/components/Donation/components/FixedAmounts.js.map +1 -0
  242. package/dist/es-legacy/components/Donation/components/Roundup.js +2 -0
  243. package/dist/es-legacy/components/Donation/components/Roundup.js.map +1 -0
  244. package/dist/es-legacy/components/Donation/components/utils.js +2 -0
  245. package/dist/es-legacy/components/Donation/components/utils.js.map +1 -0
  246. package/dist/es-legacy/components/Dragonpay/Dragonpay.js +1 -1
  247. package/dist/es-legacy/components/Dragonpay/Dragonpay.js.map +1 -1
  248. package/dist/es-legacy/components/Dragonpay/components/DragonpayInput/DragonpayInput.js +1 -1
  249. package/dist/es-legacy/components/Dragonpay/components/DragonpayInput/DragonpayInput.js.map +1 -1
  250. package/dist/es-legacy/components/Dropin/Dropin.js +1 -1
  251. package/dist/es-legacy/components/Dropin/Dropin.js.map +1 -1
  252. package/dist/es-legacy/components/Dropin/components/DropinComponent.js +1 -1
  253. package/dist/es-legacy/components/Dropin/components/DropinComponent.js.map +1 -1
  254. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodItem/PaymentMethodItem.js +1 -1
  255. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodItem/PaymentMethodItem.js.map +1 -1
  256. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodList.js +1 -1
  257. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodList.js.map +1 -1
  258. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodsContainer.js +1 -1
  259. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodsContainer.js.map +1 -1
  260. package/dist/es-legacy/components/Dropin/elements/createElements.js +1 -1
  261. package/dist/es-legacy/components/Dropin/elements/createElements.js.map +1 -1
  262. package/dist/es-legacy/components/Dropin/elements/createInstantPaymentElements.js +1 -1
  263. package/dist/es-legacy/components/Dropin/elements/createInstantPaymentElements.js.map +1 -1
  264. package/dist/es-legacy/components/Dropin/elements/createStoredElements.js +1 -1
  265. package/dist/es-legacy/components/Dropin/elements/createStoredElements.js.map +1 -1
  266. package/dist/es-legacy/components/Dropin/elements/filters.js +1 -1
  267. package/dist/es-legacy/components/Dropin/elements/filters.js.map +1 -1
  268. package/dist/es-legacy/components/EPS/index.js +1 -1
  269. package/dist/es-legacy/components/EPS/index.js.map +1 -1
  270. package/dist/es-legacy/components/Econtext/Econtext.js +1 -1
  271. package/dist/es-legacy/components/Econtext/Econtext.js.map +1 -1
  272. package/dist/es-legacy/components/FacilyPay/FacilyPay10x.js +1 -1
  273. package/dist/es-legacy/components/FacilyPay/FacilyPay10x.js.map +1 -1
  274. package/dist/es-legacy/components/FacilyPay/FacilyPay12x.js +1 -1
  275. package/dist/es-legacy/components/FacilyPay/FacilyPay12x.js.map +1 -1
  276. package/dist/es-legacy/components/FacilyPay/FacilyPay3x.js +1 -1
  277. package/dist/es-legacy/components/FacilyPay/FacilyPay3x.js.map +1 -1
  278. package/dist/es-legacy/components/FacilyPay/FacilyPay4x.js +1 -1
  279. package/dist/es-legacy/components/FacilyPay/FacilyPay4x.js.map +1 -1
  280. package/dist/es-legacy/components/FacilyPay/FacilyPay6x.js +1 -1
  281. package/dist/es-legacy/components/FacilyPay/FacilyPay6x.js.map +1 -1
  282. package/dist/es-legacy/components/Giftcard/Giftcard.js +1 -1
  283. package/dist/es-legacy/components/Giftcard/Giftcard.js.map +1 -1
  284. package/dist/es-legacy/components/Giftcard/components/GiftcardComponent.js +1 -1
  285. package/dist/es-legacy/components/Giftcard/components/GiftcardComponent.js.map +1 -1
  286. package/dist/es-legacy/components/Giftcard/components/GiftcardFields.js +1 -1
  287. package/dist/es-legacy/components/Giftcard/components/GiftcardFields.js.map +1 -1
  288. package/dist/es-legacy/components/Giftcard/components/GiftcardNumberField.js +1 -1
  289. package/dist/es-legacy/components/Giftcard/components/GiftcardNumberField.js.map +1 -1
  290. package/dist/es-legacy/components/Giftcard/components/GiftcardPinField.js +1 -1
  291. package/dist/es-legacy/components/Giftcard/components/GiftcardPinField.js.map +1 -1
  292. package/dist/es-legacy/components/Giropay/Giropay.js +1 -1
  293. package/dist/es-legacy/components/Giropay/Giropay.js.map +1 -1
  294. package/dist/es-legacy/components/GooglePay/GooglePay.js +1 -1
  295. package/dist/es-legacy/components/GooglePay/GooglePay.js.map +1 -1
  296. package/dist/es-legacy/components/GooglePay/components/GooglePayButton.js +1 -1
  297. package/dist/es-legacy/components/GooglePay/components/GooglePayButton.js.map +1 -1
  298. package/dist/es-legacy/components/Klarna/KlarnaPayments.js +1 -1
  299. package/dist/es-legacy/components/Klarna/KlarnaPayments.js.map +1 -1
  300. package/dist/es-legacy/components/Klarna/components/KlarnaContainer/KlarnaContainer.js +1 -1
  301. package/dist/es-legacy/components/Klarna/components/KlarnaContainer/KlarnaContainer.js.map +1 -1
  302. package/dist/es-legacy/components/MBWay/MBWay.js +1 -1
  303. package/dist/es-legacy/components/MBWay/MBWay.js.map +1 -1
  304. package/dist/es-legacy/components/MBWay/components/MBWayInput/MBWayInput.js +1 -1
  305. package/dist/es-legacy/components/MBWay/components/MBWayInput/MBWayInput.js.map +1 -1
  306. package/dist/es-legacy/components/MealVoucherFR/MealVoucherFR.js +1 -1
  307. package/dist/es-legacy/components/MealVoucherFR/MealVoucherFR.js.map +1 -1
  308. package/dist/es-legacy/components/MealVoucherFR/components/MealVoucherExpiryField.js +1 -1
  309. package/dist/es-legacy/components/MealVoucherFR/components/MealVoucherExpiryField.js.map +1 -1
  310. package/dist/es-legacy/components/MealVoucherFR/components/MealVoucherFields.js +1 -1
  311. package/dist/es-legacy/components/MealVoucherFR/components/MealVoucherFields.js.map +1 -1
  312. package/dist/es-legacy/components/Multibanco/Multibanco.js +1 -1
  313. package/dist/es-legacy/components/Multibanco/Multibanco.js.map +1 -1
  314. package/dist/es-legacy/components/OnlineBankingCZ/index.js +1 -1
  315. package/dist/es-legacy/components/OnlineBankingCZ/index.js.map +1 -1
  316. package/dist/es-legacy/components/OnlineBankingIN/index.js +1 -1
  317. package/dist/es-legacy/components/OnlineBankingIN/index.js.map +1 -1
  318. package/dist/es-legacy/components/OnlineBankingPL/OnlineBankingPL.js +1 -1
  319. package/dist/es-legacy/components/OnlineBankingPL/OnlineBankingPL.js.map +1 -1
  320. package/dist/es-legacy/components/OnlineBankingSK/index.js +1 -1
  321. package/dist/es-legacy/components/OnlineBankingSK/index.js.map +1 -1
  322. package/dist/es-legacy/components/Oxxo/Oxxo.js +1 -1
  323. package/dist/es-legacy/components/Oxxo/Oxxo.js.map +1 -1
  324. package/dist/es-legacy/components/PayByBank/PayByBank.js +1 -1
  325. package/dist/es-legacy/components/PayByBank/PayByBank.js.map +1 -1
  326. package/dist/es-legacy/components/PayPal/Paypal.js +1 -1
  327. package/dist/es-legacy/components/PayPal/Paypal.js.map +1 -1
  328. package/dist/es-legacy/components/PayPal/components/PaypalButtons.js +1 -1
  329. package/dist/es-legacy/components/PayPal/components/PaypalButtons.js.map +1 -1
  330. package/dist/es-legacy/components/PayPal/components/PaypalComponent.js +1 -1
  331. package/dist/es-legacy/components/PayPal/components/PaypalComponent.js.map +1 -1
  332. package/dist/es-legacy/components/PayPal/utils/get-paypal-settings.js +1 -1
  333. package/dist/es-legacy/components/PayPal/utils/get-paypal-settings.js.map +1 -1
  334. package/dist/es-legacy/components/PayU/PayuCashcard.js +1 -1
  335. package/dist/es-legacy/components/PayU/PayuCashcard.js.map +1 -1
  336. package/dist/es-legacy/components/PayU/PayuNetBanking.js +1 -1
  337. package/dist/es-legacy/components/PayU/PayuNetBanking.js.map +1 -1
  338. package/dist/es-legacy/components/PersonalDetails/PersonalDetails.js +1 -1
  339. package/dist/es-legacy/components/PersonalDetails/PersonalDetails.js.map +1 -1
  340. package/dist/es-legacy/components/Pix/Pix.js +1 -1
  341. package/dist/es-legacy/components/Pix/Pix.js.map +1 -1
  342. package/dist/es-legacy/components/RatePay/RatePay.js +1 -1
  343. package/dist/es-legacy/components/RatePay/RatePay.js.map +1 -1
  344. package/dist/es-legacy/components/RatePay/RatePayDirectDebit.js +1 -1
  345. package/dist/es-legacy/components/RatePay/RatePayDirectDebit.js.map +1 -1
  346. package/dist/es-legacy/components/Redirect/Redirect.js +1 -1
  347. package/dist/es-legacy/components/Redirect/Redirect.js.map +1 -1
  348. package/dist/es-legacy/components/Riverty/Riverty.js +1 -1
  349. package/dist/es-legacy/components/Riverty/Riverty.js.map +1 -1
  350. package/dist/es-legacy/components/Sepa/Sepa.js +1 -1
  351. package/dist/es-legacy/components/Sepa/Sepa.js.map +1 -1
  352. package/dist/es-legacy/components/ThreeDS2/ThreeDS2Challenge.js +1 -1
  353. package/dist/es-legacy/components/ThreeDS2/ThreeDS2Challenge.js.map +1 -1
  354. package/dist/es-legacy/components/ThreeDS2/ThreeDS2DeviceFingerprint.js +1 -1
  355. package/dist/es-legacy/components/ThreeDS2/ThreeDS2DeviceFingerprint.js.map +1 -1
  356. package/dist/es-legacy/components/ThreeDS2/callSubmit3DS2Fingerprint.js +1 -1
  357. package/dist/es-legacy/components/ThreeDS2/callSubmit3DS2Fingerprint.js.map +1 -1
  358. package/dist/es-legacy/components/ThreeDS2/components/Challenge/PrepareChallenge3DS2.js +1 -1
  359. package/dist/es-legacy/components/ThreeDS2/components/Challenge/PrepareChallenge3DS2.js.map +1 -1
  360. package/dist/es-legacy/components/ThreeDS2/components/DeviceFingerprint/PrepareFingerprint3DS2.js +1 -1
  361. package/dist/es-legacy/components/ThreeDS2/components/DeviceFingerprint/PrepareFingerprint3DS2.js.map +1 -1
  362. package/dist/es-legacy/components/ThreeDS2/components/utils.js +1 -1
  363. package/dist/es-legacy/components/ThreeDS2/components/utils.js.map +1 -1
  364. package/dist/es-legacy/components/Trustly/Trustly.js +1 -1
  365. package/dist/es-legacy/components/Trustly/Trustly.js.map +1 -1
  366. package/dist/es-legacy/components/Twint/Twint.js +1 -1
  367. package/dist/es-legacy/components/Twint/Twint.js.map +1 -1
  368. package/dist/es-legacy/components/UPI/UPI.js +1 -1
  369. package/dist/es-legacy/components/UPI/UPI.js.map +1 -1
  370. package/dist/es-legacy/components/UPI/components/UPIComponent/UPIComponent.js +1 -1
  371. package/dist/es-legacy/components/UPI/components/UPIComponent/UPIComponent.js.map +1 -1
  372. package/dist/es-legacy/components/UPI/components/UPIComponent/constants.js +2 -0
  373. package/dist/es-legacy/components/UPI/components/UPIComponent/constants.js.map +1 -0
  374. package/dist/es-legacy/components/UPI/components/UPIComponent/useUpiSegmentedControlOptions.js +2 -0
  375. package/dist/es-legacy/components/UPI/components/UPIComponent/useUpiSegmentedControlOptions.js.map +1 -0
  376. package/dist/es-legacy/components/UPI/components/UPIIntentAppList/UPIIntentAppItem/UPIIntentAppItem.js +2 -0
  377. package/dist/es-legacy/components/UPI/components/UPIIntentAppList/UPIIntentAppItem/UPIIntentAppItem.js.map +1 -0
  378. package/dist/es-legacy/components/UPI/components/UPIIntentAppList/UPIIntentAppList.js +2 -0
  379. package/dist/es-legacy/components/UPI/components/UPIIntentAppList/UPIIntentAppList.js.map +1 -0
  380. package/dist/es-legacy/components/UPI/components/VpaInput/VpaInput.js +1 -1
  381. package/dist/es-legacy/components/UPI/components/VpaInput/VpaInput.js.map +1 -1
  382. package/dist/es-legacy/components/WalletIN/index.js +1 -1
  383. package/dist/es-legacy/components/WalletIN/index.js.map +1 -1
  384. package/dist/es-legacy/components/components-name-map.js +1 -1
  385. package/dist/es-legacy/components/components-name-map.js.map +1 -1
  386. package/dist/es-legacy/components/helpers/IssuerListContainer/IssuerListContainer.js +1 -1
  387. package/dist/es-legacy/components/helpers/IssuerListContainer/IssuerListContainer.js.map +1 -1
  388. package/dist/es-legacy/components/helpers/OpenInvoiceContainer/OpenInvoiceContainer.js +1 -1
  389. package/dist/es-legacy/components/helpers/OpenInvoiceContainer/OpenInvoiceContainer.js.map +1 -1
  390. package/dist/es-legacy/components/helpers/QRLoaderContainer/QRLoaderContainer.js +1 -1
  391. package/dist/es-legacy/components/helpers/QRLoaderContainer/QRLoaderContainer.js.map +1 -1
  392. package/dist/es-legacy/components/internal/Address/Address.js +1 -1
  393. package/dist/es-legacy/components/internal/Address/Address.js.map +1 -1
  394. package/dist/es-legacy/components/internal/Address/components/CountryField.js +1 -1
  395. package/dist/es-legacy/components/internal/Address/components/CountryField.js.map +1 -1
  396. package/dist/es-legacy/components/internal/Address/components/ReadOnlyAddress.js +1 -1
  397. package/dist/es-legacy/components/internal/Address/components/ReadOnlyAddress.js.map +1 -1
  398. package/dist/es-legacy/components/internal/Await/Await.js +1 -1
  399. package/dist/es-legacy/components/internal/Await/Await.js.map +1 -1
  400. package/dist/es-legacy/components/internal/BaseElement/BaseElement.js +1 -1
  401. package/dist/es-legacy/components/internal/BaseElement/BaseElement.js.map +1 -1
  402. package/dist/es-legacy/components/internal/ClickToPay/services/ClickToPayService.js +1 -1
  403. package/dist/es-legacy/components/internal/ClickToPay/services/ClickToPayService.js.map +1 -1
  404. package/dist/es-legacy/components/internal/ClickToPay/services/sdks/MastercardSdk.js +1 -1
  405. package/dist/es-legacy/components/internal/ClickToPay/services/sdks/MastercardSdk.js.map +1 -1
  406. package/dist/es-legacy/components/internal/ClickToPay/services/sdks/VisaSdk.js +1 -1
  407. package/dist/es-legacy/components/internal/ClickToPay/services/sdks/VisaSdk.js.map +1 -1
  408. package/dist/es-legacy/components/internal/CompanyDetails/CompanyDetails.js +1 -1
  409. package/dist/es-legacy/components/internal/CompanyDetails/CompanyDetails.js.map +1 -1
  410. package/dist/es-legacy/components/internal/Countdown/index.js +1 -1
  411. package/dist/es-legacy/components/internal/Countdown/index.js.map +1 -1
  412. package/dist/es-legacy/components/internal/DisclaimerMessage/DisclaimerMessage.js +1 -1
  413. package/dist/es-legacy/components/internal/DisclaimerMessage/DisclaimerMessage.js.map +1 -1
  414. package/dist/es-legacy/components/internal/ExpandButton/ExpandButton.js +2 -0
  415. package/dist/es-legacy/components/internal/ExpandButton/ExpandButton.js.map +1 -0
  416. package/dist/es-legacy/components/internal/FormFields/Checkbox/Checkbox.js +1 -1
  417. package/dist/es-legacy/components/internal/FormFields/Checkbox/Checkbox.js.map +1 -1
  418. package/dist/es-legacy/components/internal/FormFields/ConsentCheckbox/ConsentCheckbox.js +1 -1
  419. package/dist/es-legacy/components/internal/FormFields/ConsentCheckbox/ConsentCheckbox.js.map +1 -1
  420. package/dist/es-legacy/components/internal/FormFields/Field/Field.js +1 -1
  421. package/dist/es-legacy/components/internal/FormFields/Field/Field.js.map +1 -1
  422. package/dist/es-legacy/components/internal/FormFields/InputBase.js +1 -1
  423. package/dist/es-legacy/components/internal/FormFields/InputBase.js.map +1 -1
  424. package/dist/es-legacy/components/internal/FormFields/InputDate/InputDate.js +1 -1
  425. package/dist/es-legacy/components/internal/FormFields/InputDate/InputDate.js.map +1 -1
  426. package/dist/es-legacy/components/internal/FormFields/InputEmail.js +1 -1
  427. package/dist/es-legacy/components/internal/FormFields/InputEmail.js.map +1 -1
  428. package/dist/es-legacy/components/internal/FormFields/InputTelephone.js +1 -1
  429. package/dist/es-legacy/components/internal/FormFields/InputTelephone.js.map +1 -1
  430. package/dist/es-legacy/components/internal/FormFields/InputText.js +1 -1
  431. package/dist/es-legacy/components/internal/FormFields/InputText.js.map +1 -1
  432. package/dist/es-legacy/components/internal/FormFields/RadioGroup/RadioGroup.js +1 -1
  433. package/dist/es-legacy/components/internal/FormFields/RadioGroup/RadioGroup.js.map +1 -1
  434. package/dist/es-legacy/components/internal/FormFields/Select/Select.js +1 -1
  435. package/dist/es-legacy/components/internal/FormFields/Select/Select.js.map +1 -1
  436. package/dist/es-legacy/components/internal/FormFields/Select/components/SelectButton.js +1 -1
  437. package/dist/es-legacy/components/internal/FormFields/Select/components/SelectButton.js.map +1 -1
  438. package/dist/es-legacy/components/internal/IbanInput/IbanInput.js +1 -1
  439. package/dist/es-legacy/components/internal/IbanInput/IbanInput.js.map +1 -1
  440. package/dist/es-legacy/components/internal/Img/Img.js +1 -1
  441. package/dist/es-legacy/components/internal/Img/Img.js.map +1 -1
  442. package/dist/es-legacy/components/internal/IssuerList/IssuerButtonGroup/IssuerButtonGroup.js +1 -1
  443. package/dist/es-legacy/components/internal/IssuerList/IssuerButtonGroup/IssuerButtonGroup.js.map +1 -1
  444. package/dist/es-legacy/components/internal/OpenInvoice/OpenInvoice.js +1 -1
  445. package/dist/es-legacy/components/internal/OpenInvoice/OpenInvoice.js.map +1 -1
  446. package/dist/es-legacy/components/internal/PayButton/PayButton.js +1 -1
  447. package/dist/es-legacy/components/internal/PayButton/PayButton.js.map +1 -1
  448. package/dist/es-legacy/components/internal/PersonalDetails/PersonalDetails.js +1 -1
  449. package/dist/es-legacy/components/internal/PersonalDetails/PersonalDetails.js.map +1 -1
  450. package/dist/es-legacy/components/internal/PhoneInput/PhoneInput.js +1 -1
  451. package/dist/es-legacy/components/internal/PhoneInput/PhoneInput.js.map +1 -1
  452. package/dist/es-legacy/components/internal/RedirectButton/RedirectButton.js +1 -1
  453. package/dist/es-legacy/components/internal/RedirectButton/RedirectButton.js.map +1 -1
  454. package/dist/es-legacy/components/internal/SecuredFields/SFP/SecuredFieldsProvider.js +1 -1
  455. package/dist/es-legacy/components/internal/SecuredFields/SFP/SecuredFieldsProvider.js.map +1 -1
  456. package/dist/es-legacy/components/internal/SecuredFields/SFP/SecuredFieldsProviderHandlers.js +1 -1
  457. package/dist/es-legacy/components/internal/SecuredFields/SFP/SecuredFieldsProviderHandlers.js.map +1 -1
  458. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/createSecuredFields.js +1 -1
  459. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/createSecuredFields.js.map +1 -1
  460. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/handleBrandFromBinLookup.js +1 -1
  461. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/handleBrandFromBinLookup.js.map +1 -1
  462. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/handleEncryption.js +1 -1
  463. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/handleEncryption.js.map +1 -1
  464. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/handleValidation.js +1 -1
  465. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/handleValidation.js.map +1 -1
  466. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/initCSF.js +1 -1
  467. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/initCSF.js.map +1 -1
  468. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/partials/processBrand.js +1 -1
  469. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/partials/processBrand.js.map +1 -1
  470. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/utils/getCardGroupTypes.js +1 -1
  471. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/utils/getCardGroupTypes.js.map +1 -1
  472. package/dist/es-legacy/components/internal/SecuredFields/lib/securedField/SecuredField.js +1 -1
  473. package/dist/es-legacy/components/internal/SecuredFields/lib/securedField/SecuredField.js.map +1 -1
  474. package/dist/es-legacy/components/internal/SecuredFields/lib/securedField/utils/processAriaConfig.js +1 -1
  475. package/dist/es-legacy/components/internal/SecuredFields/lib/securedField/utils/processAriaConfig.js.map +1 -1
  476. package/dist/es-legacy/components/internal/SecuredFields/lib/utilities/commonUtils.js +1 -1
  477. package/dist/es-legacy/components/internal/SecuredFields/lib/utilities/commonUtils.js.map +1 -1
  478. package/dist/es-legacy/components/internal/SecuredFields/utils.js +1 -1
  479. package/dist/es-legacy/components/internal/SecuredFields/utils.js.map +1 -1
  480. package/dist/es-legacy/components/internal/UIElement/UIElement.js +1 -1
  481. package/dist/es-legacy/components/internal/UIElement/UIElement.js.map +1 -1
  482. package/dist/es-legacy/components/tx-variants.js +1 -1
  483. package/dist/es-legacy/components/tx-variants.js.map +1 -1
  484. package/dist/es-legacy/core/Analytics/analyticsPreProcessor.js +1 -1
  485. package/dist/es-legacy/core/Analytics/analyticsPreProcessor.js.map +1 -1
  486. package/dist/es-legacy/core/Analytics/utils.js +1 -1
  487. package/dist/es-legacy/core/Analytics/utils.js.map +1 -1
  488. package/dist/es-legacy/core/Context/Resources.js +1 -1
  489. package/dist/es-legacy/core/Context/Resources.js.map +1 -1
  490. package/dist/es-legacy/core/Environment/constants.js +1 -1
  491. package/dist/es-legacy/core/Environment/constants.js.map +1 -1
  492. package/dist/es-legacy/core/Errors/SRPanel.js +1 -1
  493. package/dist/es-legacy/core/Errors/SRPanel.js.map +1 -1
  494. package/dist/es-legacy/core/ProcessResponse/PaymentAction/actionTypes.js +1 -1
  495. package/dist/es-legacy/core/ProcessResponse/PaymentAction/actionTypes.js.map +1 -1
  496. package/dist/es-legacy/core/ProcessResponse/PaymentMethods/utils.js +1 -1
  497. package/dist/es-legacy/core/ProcessResponse/PaymentMethods/utils.js.map +1 -1
  498. package/dist/es-legacy/core/ProcessResponse/process-response.js +1 -1
  499. package/dist/es-legacy/core/ProcessResponse/process-response.js.map +1 -1
  500. package/dist/es-legacy/core/RiskModule/RiskModule.js +1 -1
  501. package/dist/es-legacy/core/RiskModule/RiskModule.js.map +1 -1
  502. package/dist/es-legacy/core/Services/analytics/collect-id.js +1 -1
  503. package/dist/es-legacy/core/Services/analytics/collect-id.js.map +1 -1
  504. package/dist/es-legacy/core/Services/get-translations.js +1 -1
  505. package/dist/es-legacy/core/Services/get-translations.js.map +1 -1
  506. package/dist/es-legacy/core/Services/http.js +1 -1
  507. package/dist/es-legacy/core/Services/http.js.map +1 -1
  508. package/dist/es-legacy/core/config.js +1 -1
  509. package/dist/es-legacy/core/config.js.map +1 -1
  510. package/dist/es-legacy/core/core.js +1 -1
  511. package/dist/es-legacy/core/core.js.map +1 -1
  512. package/dist/es-legacy/core/core.registry.js +1 -1
  513. package/dist/es-legacy/core/core.registry.js.map +1 -1
  514. package/dist/es-legacy/external/preact/dist/preact.js +1 -1
  515. package/dist/es-legacy/external/preact/dist/preact.js.map +1 -1
  516. package/dist/es-legacy/external/preact/hooks/dist/hooks.js +1 -1
  517. package/dist/es-legacy/external/preact/hooks/dist/hooks.js.map +1 -1
  518. package/dist/es-legacy/language/constants.js +1 -1
  519. package/dist/es-legacy/language/constants.js.map +1 -1
  520. package/dist/es-legacy/utils/amount-util.js.map +1 -1
  521. package/dist/es-legacy/utils/commonUtils.js +2 -0
  522. package/dist/es-legacy/utils/commonUtils.js.map +1 -0
  523. package/dist/es-legacy/utils/useForm/reducer.js +1 -1
  524. package/dist/es-legacy/utils/useForm/reducer.js.map +1 -1
  525. package/package.json +20 -20
  526. package/dist/es/components/Card/components/CardInput/components/IframeLabelAlternative.js.map +0 -1
  527. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodItem/ExpandButton.js +0 -2
  528. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodItem/ExpandButton.js.map +0 -1
  529. package/dist/es-legacy/components/Card/components/CardInput/components/IframeLabelAlternative.js +0 -2
  530. package/dist/es-legacy/components/Card/components/CardInput/components/IframeLabelAlternative.js.map +0 -1
  531. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodItem/ExpandButton.js +0 -2
  532. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodItem/ExpandButton.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sources":["../../../../../src/components/ThreeDS2/components/utils.ts"],"sourcesContent":["import { CHALLENGE_WINDOW_SIZES, DEFAULT_CHALLENGE_WINDOW_SIZE } from '../constants';\nimport { getOrigin } from '../../../utils/getOrigin';\nimport base64 from '../../../utils/base64';\nimport { ChallengeData, ThreeDS2Token, FingerPrintData, ResultObject, FingerprintResolveData, ChallengeResolveData } from '../types';\nimport { pick } from '../../internal/SecuredFields/utils';\nimport { DecodeObject } from '../../../types/global-types';\nimport { ErrorObject } from '../../../core/Errors/types';\n\n/**\n * Check if we have been passed an ErrorObject because either base64 decoding or JSON.parse failed\n * @param obj -\n */\nexport const isErrorObject = (obj: ErrorObject | ThreeDS2Token): boolean => {\n return 'success' in obj && !obj.success;\n};\n\nexport const decodeAndParseToken = (token: string): ThreeDS2Token | ErrorObject => {\n const decodedToken: DecodeObject = base64.decode(token);\n if (decodedToken.success) {\n try {\n return JSON.parse(decodedToken.data) as ThreeDS2Token;\n } catch (e) {\n return {\n success: false,\n error: 'Could not JSON parse token'\n };\n }\n }\n\n // base64.decode failed - object will contain error msg: 'not base64' or 'malformed URI sequence'\n return decodedToken as ErrorObject;\n};\n\n/**\n * Performs JSON.stringify on passed object & and base64 encodes result\n * @param obj -\n * @returns encoded result\n */\nexport const encodeObject = obj => {\n if (!obj || !Object.keys(obj).length) {\n throw new Error('No (populated) data object to encode');\n }\n return base64.encode(JSON.stringify(obj));\n};\n\n/**\n * Accepts a size string for the challenge window & returns it if it is valid else returns a default value\n * @param sizeStr - the size string to check the validity of\n * @returns a valid size string\n */\nexport const validateChallengeWindowSize = (sizeStr: string): string => {\n const sizeString = sizeStr.length === 1 ? `0${sizeStr}` : sizeStr;\n const hasSize = Object.prototype.hasOwnProperty.call(CHALLENGE_WINDOW_SIZES, sizeString);\n return hasSize ? sizeString : DEFAULT_CHALLENGE_WINDOW_SIZE;\n};\n\n/**\n * Accepts a size string for the challenge window & returns the corresponding array of w/h values\n * @param sizeStr -\n */\nexport const getChallengeWindowSize = (sizeStr: string): string[] => CHALLENGE_WINDOW_SIZES[validateChallengeWindowSize(sizeStr)];\n\n/**\n * prepareChallengeData\n *\n * Requires an object containing the challenge parameters:\n * @param token - challengeToken string received from /submitThreeDS2Fingerprint, /details or /payments call: contains acsTransID, acsURL, messageVersion,\n * threeDSNotificationURL and threeDSServerTransID\n * @param size - one of five possible challenge window sizes\n */\nexport const prepareChallengeData = ({ token, size }): ChallengeData | ErrorObject => {\n const decodedChallengeToken = decodeAndParseToken(token);\n\n if (isErrorObject(decodedChallengeToken)) {\n return decodedChallengeToken as ErrorObject;\n }\n\n const { acsTransID, acsURL, messageVersion, threeDSNotificationURL, threeDSServerTransID } = decodedChallengeToken as ThreeDS2Token;\n const notificationURLOrigin = getOrigin(threeDSNotificationURL);\n\n return {\n acsURL,\n cReqData: {\n acsTransID,\n messageVersion,\n threeDSServerTransID,\n messageType: 'CReq',\n challengeWindowSize: validateChallengeWindowSize(size)\n },\n iframeSizeArr: getChallengeWindowSize(size),\n postMessageDomain: notificationURLOrigin\n } as ChallengeData;\n};\n\n/**\n * prepareFingerPrintData\n *\n * Requires an object containing the fingerprint parameters:\n * @param token - fingerprintToken string received from /payments call: contains threeDSMethodNotificationURL, threeDSMethodUrl and\n * threeDSServerTransID\n * @param notificationURL - the URL that the final notification is expected to be postMessaged from.\n *\n * NOTE: we don't expect merchants to alter the default by passing in a notificationURL of their own via props;\n * and if 3DS2 is being done via createFromAction or handleAction we won't accept it.\n * But if the merchant is using checkout.create('threeDS2DeviceFingerprint') we still support the fact that they might want to set their own\n * notificationURL (aka threeDSMethodNotificationURL)\n */\nexport const prepareFingerPrintData = ({ token, notificationURL }): FingerPrintData | ErrorObject => {\n const decodedFingerPrintToken = decodeAndParseToken(token);\n\n if (isErrorObject(decodedFingerPrintToken)) {\n return decodedFingerPrintToken as ErrorObject;\n }\n\n const { threeDSMethodNotificationURL, threeDSMethodUrl: threeDSMethodURL, threeDSServerTransID } = decodedFingerPrintToken as ThreeDS2Token;\n const receivedNotificationURL = notificationURL || threeDSMethodNotificationURL;\n const notificationURLOrigin = getOrigin(receivedNotificationURL);\n\n return {\n threeDSServerTransID,\n threeDSMethodURL,\n threeDSMethodNotificationURL: receivedNotificationURL,\n postMessageDomain: notificationURLOrigin\n } as FingerPrintData;\n};\n\nexport const createFingerprintResolveData = (dataKey: string, resultObj: ResultObject, paymentData: string): FingerprintResolveData => ({\n data: {\n [dataKey]: encodeObject({ threeDSCompInd: resultObj.threeDSCompInd }),\n paymentData\n }\n});\n\n// Old 3DS2 flow\nexport const createOldFingerprintResolveData = (dataKey: string, resultObj: ResultObject, paymentData: string): any => ({\n data: {\n details: { 'threeds2.fingerprint': encodeObject(resultObj) },\n paymentData\n }\n});\n\nexport const createChallengeResolveData = (dataKey: string, transStatus: string, authorisationToken: string): ChallengeResolveData => ({\n data: {\n details: { [dataKey]: encodeObject({ transStatus, authorisationToken }) }\n }\n});\n\n// Needed for old 3DS2 flow & threeds2InMDFlow\nexport const createOldChallengeResolveData = (dataKey: string, transStatus: string, authorisationToken: string): any => ({\n data: {\n details: { 'threeds2.challengeResult': encodeObject({ transStatus }) },\n paymentData: authorisationToken\n }\n});\n\n/**\n *\n * Takes a string and encodes it as a base64url string\n * (https://en.wikipedia.org/wiki/Base64#URL_applications)\n * (See also https://tools.ietf.org/html/rfc7515)\n *\n * @example\n * ```\n * const jsonStr = JSON.stringify( {name:'john', surname:'smith'} );\n * const base64url = encodeBase64URL(jsonStr);\n * ```\n *\n * @param dataStr - data, as a string, to be encoded\n *\n * @returns base64URL - a base64url encoded string\n */\nexport const encodeBase64URL = (dataStr: string): string => {\n const base64Data = window.btoa(dataStr);\n let base64url = base64Data.split('=')[0]; // Remove any trailing '='s\n\n base64url = base64url.replace(/\\+/g, '-'); // 62nd char of encoding\n base64url = base64url.replace(/\\//g, '_'); // 63rd char of encoding\n\n return base64url;\n};\n\nconst fingerprintFlowPropsDropin = ['elementRef'];\n\n/**\n * Must contain all props needed for the challenge stage since, in the new 3DS2 flow, the fingerprint component will be the \"component\" reference\n * if the /submitThreeDS2Fingerprint response dictates we \"handleAction\" to create a challenge\n */\nconst fingerprintFlowProps = ['createFromAction', 'onAdditionalDetails'];\n\n/**\n * Add props specifically needed for the type of 3DS2 flow: fingerprint or challenge\n *\n * @param actionSubtype - 3DS2 flow type: fingerprint or challenge\n * @param props - object from which to extract particular properties\n */\nexport const get3DS2FlowProps = (actionSubtype, props) => {\n if (actionSubtype === 'fingerprint') {\n // elementRef exists when the fingerprint component is created from the Dropin\n const fingerprintProps = props.elementRef ? fingerprintFlowPropsDropin : fingerprintFlowProps;\n const rtnObj = pick(fingerprintProps).from(props);\n rtnObj.showSpinner = !props.isDropin;\n rtnObj.statusType = 'loading';\n return rtnObj;\n }\n\n // Challenge\n return {\n statusType: 'custom',\n i18n: props.i18n\n };\n};\n"],"names":["isErrorObject","obj","success","decodeAndParseToken","token","decodedToken","base64","decode","JSON","parse","data","e","error","encodeObject","Object","keys","length","Error","encode","stringify","validateChallengeWindowSize","sizeStr","sizeString","prototype","hasOwnProperty","call","CHALLENGE_WINDOW_SIZES","DEFAULT_CHALLENGE_WINDOW_SIZE","getChallengeWindowSize","prepareChallengeData","size","decodedChallengeToken","acsTransID","acsURL","messageVersion","threeDSNotificationURL","threeDSServerTransID","notificationURLOrigin","getOrigin","cReqData","messageType","challengeWindowSize","iframeSizeArr","postMessageDomain","prepareFingerPrintData","notificationURL","decodedFingerPrintToken","threeDSMethodNotificationURL","threeDSMethodUrl","threeDSMethodURL","receivedNotificationURL","createFingerprintResolveData","dataKey","resultObj","paymentData","threeDSCompInd","createOldFingerprintResolveData","details","createChallengeResolveData","transStatus","authorisationToken","createOldChallengeResolveData","encodeBase64URL","dataStr","base64url","window","btoa","split","replace","fingerprintFlowPropsDropin","fingerprintFlowProps","get3DS2FlowProps","actionSubtype","props","fingerprintProps","elementRef","rtnObj","pick","from","showSpinner","isDropin","statusType","i18n"],"mappings":"yPAYaA,MAAAA,EAAiBC,GACnB,YAAaA,IAAQA,EAAIC,QAGvBC,EAAuBC,IAChC,MAAMC,EAA6BC,EAAOC,OAAOH,GACjD,GAAIC,EAAaH,QACb,IACI,OAAOM,KAAKC,MAAMJ,EAAaK,KACnC,CAAE,MAAOC,GACL,MAAO,CACHT,SAAS,EACTU,MAAO,6BAEf,CAIJ,OAAOP,CAAAA,EAQEQ,EAAeZ,IACxB,IAAKA,IAAQa,OAAOC,KAAKd,GAAKe,OAC1B,MAAM,IAAIC,MAAM,wCAEpB,OAAOX,EAAOY,OAAOV,KAAKW,UAAUlB,GAAAA,EAQ3BmB,EAA+BC,IACxC,MAAMC,EAAgC,IAAnBD,EAAQL,OAAe,IAAIK,IAAYA,EAE1D,OADgBP,OAAOS,UAAUC,eAAeC,KAAKC,EAAwBJ,GAC5DA,EAAaK,CAAAA,EAOrBC,EAA0BP,GAA8BK,EAAuBN,EAA4BC,IAU3GQ,EAAuB,EAAGzB,QAAO0B,WAC1C,MAAMC,EAAwB5B,EAAoBC,GAElD,GAAIJ,EAAc+B,GACd,OAAOA,EAGX,MAAMC,WAAEA,EAAUC,OAAEA,EAAMC,eAAEA,EAAcC,uBAAEA,EAAsBC,qBAAEA,GAAyBL,EACvFM,EAAwBC,EAAUH,GAExC,MAAO,CACHF,SACAM,SAAU,CACNP,aACAE,iBACAE,uBACAI,YAAa,OACbC,oBAAqBrB,EAA4BU,IAErDY,cAAed,EAAuBE,GACtCa,kBAAmBN,EACvB,EAgBSO,EAAyB,EAAGxC,QAAOyC,sBAC5C,MAAMC,EAA0B3C,EAAoBC,GAEpD,GAAIJ,EAAc8C,GACd,OAAOA,EAGX,MAAMC,6BAAEA,EAA8BC,iBAAkBC,EAAgBb,qBAAEA,GAAyBU,EAC7FI,EAA0BL,GAAmBE,EAGnD,MAAO,CACHX,uBACAa,mBACAF,6BAA8BG,EAC9BP,kBAN0BL,EAAUY,GAOxC,EAGSC,EAA+B,CAACC,EAAiBC,EAAyBC,KAAiD,CACpI5C,KAAM,CACF0C,CAACA,GAAUvC,EAAa,CAAE0C,eAAgBF,EAAUE,iBACpDD,iBAKKE,EAAkC,CAACJ,EAAiBC,EAAyBC,KAA8B,CACpH5C,KAAM,CACF+C,QAAS,CAAE,uBAAwB5C,EAAawC,IAChDC,iBAIKI,EAA6B,CAACN,EAAiBO,EAAqBC,KAAsD,CACnIlD,KAAM,CACF+C,QAAS,CAAEL,CAACA,GAAUvC,EAAa,CAAE8C,cAAaC,2BAK7CC,EAAgC,CAACT,EAAiBO,EAAqBC,KAAqC,CACrHlD,KAAM,CACF+C,QAAS,CAAE,2BAA4B5C,EAAa,CAAE8C,iBACtDL,YAAaM,KAoBRE,EAAmBC,IAE5B,IAAIC,EADeC,OAAOC,KAAKH,GACJI,MAAM,KAAK,GAKtC,OAHAH,EAAYA,EAAUI,QAAQ,MAAO,KACrCJ,EAAYA,EAAUI,QAAQ,MAAO,KAE9BJ,CAAAA,EAGLK,EAA6B,CAAC,cAM9BC,EAAuB,CAAC,mBAAoB,uBAQrCC,EAAmB,CAACC,EAAeC,KAC5C,GAAsB,gBAAlBD,EAAiC,CAEjC,MAAME,EAAmBD,EAAME,WAAaN,EAA6BC,EACnEM,EAASC,EAAKH,GAAkBI,KAAKL,GAG3C,OAFAG,EAAOG,aAAeN,EAAMO,SAC5BJ,EAAOK,WAAa,UACbL,CACX,CAGA,MAAO,CACHK,WAAY,SACZC,KAAMT,EAAMS,KAChB"}
1
+ {"version":3,"file":"utils.js","sources":["../../../../../src/components/ThreeDS2/components/utils.ts"],"sourcesContent":["import { CHALLENGE_WINDOW_SIZES, DEFAULT_CHALLENGE_WINDOW_SIZE } from '../constants';\nimport { getOrigin } from '../../../utils/getOrigin';\nimport base64 from '../../../utils/base64';\nimport { ChallengeData, ThreeDS2Token, FingerPrintData, ResultObject, FingerprintResolveData, ChallengeResolveData } from '../types';\nimport { pick } from '../../../utils/commonUtils';\nimport { DecodeObject } from '../../../types/global-types';\nimport { ErrorObject } from '../../../core/Errors/types';\n\n/**\n * Check if we have been passed an ErrorObject because either base64 decoding or JSON.parse failed\n * @param obj -\n */\nexport const isErrorObject = (obj: ErrorObject | ThreeDS2Token): boolean => {\n return 'success' in obj && !obj.success;\n};\n\nexport const decodeAndParseToken = (token: string): ThreeDS2Token | ErrorObject => {\n const decodedToken: DecodeObject = base64.decode(token);\n if (decodedToken.success) {\n try {\n return JSON.parse(decodedToken.data) as ThreeDS2Token;\n } catch (e) {\n return {\n success: false,\n error: 'Could not JSON parse token'\n };\n }\n }\n\n // base64.decode failed - object will contain error msg: 'not base64' or 'malformed URI sequence'\n return decodedToken as ErrorObject;\n};\n\n/**\n * Performs JSON.stringify on passed object & and base64 encodes result\n * @param obj -\n * @returns encoded result\n */\nexport const encodeObject = obj => {\n if (!obj || !Object.keys(obj).length) {\n throw new Error('No (populated) data object to encode');\n }\n return base64.encode(JSON.stringify(obj));\n};\n\n/**\n * Accepts a size string for the challenge window & returns it if it is valid else returns a default value\n * @param sizeStr - the size string to check the validity of\n * @returns a valid size string\n */\nexport const validateChallengeWindowSize = (sizeStr: string): string => {\n const sizeString = sizeStr.length === 1 ? `0${sizeStr}` : sizeStr;\n const hasSize = Object.prototype.hasOwnProperty.call(CHALLENGE_WINDOW_SIZES, sizeString);\n return hasSize ? sizeString : DEFAULT_CHALLENGE_WINDOW_SIZE;\n};\n\n/**\n * Accepts a size string for the challenge window & returns the corresponding array of w/h values\n * @param sizeStr -\n */\nexport const getChallengeWindowSize = (sizeStr: string): string[] => CHALLENGE_WINDOW_SIZES[validateChallengeWindowSize(sizeStr)];\n\n/**\n * prepareChallengeData\n *\n * Requires an object containing the challenge parameters:\n * @param token - challengeToken string received from /submitThreeDS2Fingerprint, /details or /payments call: contains acsTransID, acsURL, messageVersion,\n * threeDSNotificationURL and threeDSServerTransID\n * @param size - one of five possible challenge window sizes\n */\nexport const prepareChallengeData = ({ token, size }): ChallengeData | ErrorObject => {\n const decodedChallengeToken = decodeAndParseToken(token);\n\n if (isErrorObject(decodedChallengeToken)) {\n return decodedChallengeToken as ErrorObject;\n }\n\n const { acsTransID, acsURL, messageVersion, threeDSNotificationURL, threeDSServerTransID } = decodedChallengeToken as ThreeDS2Token;\n const notificationURLOrigin = getOrigin(threeDSNotificationURL);\n\n return {\n acsURL,\n cReqData: {\n acsTransID,\n messageVersion,\n threeDSServerTransID,\n messageType: 'CReq',\n challengeWindowSize: validateChallengeWindowSize(size)\n },\n iframeSizeArr: getChallengeWindowSize(size),\n postMessageDomain: notificationURLOrigin\n } as ChallengeData;\n};\n\n/**\n * prepareFingerPrintData\n *\n * Requires an object containing the fingerprint parameters:\n * @param token - fingerprintToken string received from /payments call: contains threeDSMethodNotificationURL, threeDSMethodUrl and\n * threeDSServerTransID\n * @param notificationURL - the URL that the final notification is expected to be postMessaged from.\n *\n * NOTE: we don't expect merchants to alter the default by passing in a notificationURL of their own via props;\n * and if 3DS2 is being done via createFromAction or handleAction we won't accept it.\n * But if the merchant is using checkout.create('threeDS2DeviceFingerprint') we still support the fact that they might want to set their own\n * notificationURL (aka threeDSMethodNotificationURL)\n */\nexport const prepareFingerPrintData = ({ token, notificationURL }): FingerPrintData | ErrorObject => {\n const decodedFingerPrintToken = decodeAndParseToken(token);\n\n if (isErrorObject(decodedFingerPrintToken)) {\n return decodedFingerPrintToken as ErrorObject;\n }\n\n const { threeDSMethodNotificationURL, threeDSMethodUrl: threeDSMethodURL, threeDSServerTransID } = decodedFingerPrintToken as ThreeDS2Token;\n const receivedNotificationURL = notificationURL || threeDSMethodNotificationURL;\n const notificationURLOrigin = getOrigin(receivedNotificationURL);\n\n return {\n threeDSServerTransID,\n threeDSMethodURL,\n threeDSMethodNotificationURL: receivedNotificationURL,\n postMessageDomain: notificationURLOrigin\n } as FingerPrintData;\n};\n\nexport const createFingerprintResolveData = (dataKey: string, resultObj: ResultObject, paymentData: string): FingerprintResolveData => ({\n data: {\n [dataKey]: encodeObject({ threeDSCompInd: resultObj.threeDSCompInd }),\n paymentData\n }\n});\n\n// Old 3DS2 flow\nexport const createOldFingerprintResolveData = (dataKey: string, resultObj: ResultObject, paymentData: string): any => ({\n data: {\n details: { 'threeds2.fingerprint': encodeObject(resultObj) },\n paymentData\n }\n});\n\nexport const createChallengeResolveData = (dataKey: string, transStatus: string, authorisationToken: string): ChallengeResolveData => ({\n data: {\n details: { [dataKey]: encodeObject({ transStatus, authorisationToken }) }\n }\n});\n\n// Needed for old 3DS2 flow & threeds2InMDFlow\nexport const createOldChallengeResolveData = (dataKey: string, transStatus: string, authorisationToken: string): any => ({\n data: {\n details: { 'threeds2.challengeResult': encodeObject({ transStatus }) },\n paymentData: authorisationToken\n }\n});\n\n/**\n *\n * Takes a string and encodes it as a base64url string\n * (https://en.wikipedia.org/wiki/Base64#URL_applications)\n * (See also https://tools.ietf.org/html/rfc7515)\n *\n * @example\n * ```\n * const jsonStr = JSON.stringify( {name:'john', surname:'smith'} );\n * const base64url = encodeBase64URL(jsonStr);\n * ```\n *\n * @param dataStr - data, as a string, to be encoded\n *\n * @returns base64URL - a base64url encoded string\n */\nexport const encodeBase64URL = (dataStr: string): string => {\n const base64Data = window.btoa(dataStr);\n let base64url = base64Data.split('=')[0]; // Remove any trailing '='s\n\n base64url = base64url.replace(/\\+/g, '-'); // 62nd char of encoding\n base64url = base64url.replace(/\\//g, '_'); // 63rd char of encoding\n\n return base64url;\n};\n\nconst fingerprintFlowPropsDropin = ['elementRef'];\n\n/**\n * Must contain all props needed for the challenge stage since, in the new 3DS2 flow, the fingerprint component will be the \"component\" reference\n * if the /submitThreeDS2Fingerprint response dictates we \"handleAction\" to create a challenge\n */\nconst fingerprintFlowProps = ['createFromAction', 'onAdditionalDetails'];\n\n/**\n * Add props specifically needed for the type of 3DS2 flow: fingerprint or challenge\n *\n * @param actionSubtype - 3DS2 flow type: fingerprint or challenge\n * @param props - object from which to extract particular properties\n */\nexport const get3DS2FlowProps = (actionSubtype, props) => {\n if (actionSubtype === 'fingerprint') {\n // elementRef exists when the fingerprint component is created from the Dropin\n const fingerprintProps = props.elementRef ? fingerprintFlowPropsDropin : fingerprintFlowProps;\n const rtnObj = pick(fingerprintProps).from(props);\n rtnObj.showSpinner = !props.isDropin;\n rtnObj.statusType = 'loading';\n return rtnObj;\n }\n\n // Challenge\n return {\n statusType: 'custom',\n i18n: props.i18n\n };\n};\n"],"names":["isErrorObject","obj","success","decodeAndParseToken","token","decodedToken","base64","decode","JSON","parse","data","e","error","encodeObject","Object","keys","length","Error","encode","stringify","validateChallengeWindowSize","sizeStr","sizeString","prototype","hasOwnProperty","call","CHALLENGE_WINDOW_SIZES","DEFAULT_CHALLENGE_WINDOW_SIZE","getChallengeWindowSize","prepareChallengeData","size","decodedChallengeToken","acsTransID","acsURL","messageVersion","threeDSNotificationURL","threeDSServerTransID","notificationURLOrigin","getOrigin","cReqData","messageType","challengeWindowSize","iframeSizeArr","postMessageDomain","prepareFingerPrintData","notificationURL","decodedFingerPrintToken","threeDSMethodNotificationURL","threeDSMethodUrl","threeDSMethodURL","receivedNotificationURL","createFingerprintResolveData","dataKey","resultObj","paymentData","threeDSCompInd","createOldFingerprintResolveData","details","createChallengeResolveData","transStatus","authorisationToken","createOldChallengeResolveData","encodeBase64URL","dataStr","base64url","window","btoa","split","replace","fingerprintFlowPropsDropin","fingerprintFlowProps","get3DS2FlowProps","actionSubtype","props","fingerprintProps","elementRef","rtnObj","pick","from","showSpinner","isDropin","statusType","i18n"],"mappings":"iPAYaA,MAAAA,EAAiBC,GACnB,YAAaA,IAAQA,EAAIC,QAGvBC,EAAuBC,IAChC,MAAMC,EAA6BC,EAAOC,OAAOH,GACjD,GAAIC,EAAaH,QACb,IACI,OAAOM,KAAKC,MAAMJ,EAAaK,KACnC,CAAE,MAAOC,GACL,MAAO,CACHT,SAAS,EACTU,MAAO,6BAEf,CAIJ,OAAOP,CAAAA,EAQEQ,EAAeZ,IACxB,IAAKA,IAAQa,OAAOC,KAAKd,GAAKe,OAC1B,MAAM,IAAIC,MAAM,wCAEpB,OAAOX,EAAOY,OAAOV,KAAKW,UAAUlB,GAAAA,EAQ3BmB,EAA+BC,IACxC,MAAMC,EAAgC,IAAnBD,EAAQL,OAAe,IAAIK,IAAYA,EAE1D,OADgBP,OAAOS,UAAUC,eAAeC,KAAKC,EAAwBJ,GAC5DA,EAAaK,CAAAA,EAOrBC,EAA0BP,GAA8BK,EAAuBN,EAA4BC,IAU3GQ,EAAuB,EAAGzB,QAAO0B,WAC1C,MAAMC,EAAwB5B,EAAoBC,GAElD,GAAIJ,EAAc+B,GACd,OAAOA,EAGX,MAAMC,WAAEA,EAAUC,OAAEA,EAAMC,eAAEA,EAAcC,uBAAEA,EAAsBC,qBAAEA,GAAyBL,EACvFM,EAAwBC,EAAUH,GAExC,MAAO,CACHF,SACAM,SAAU,CACNP,aACAE,iBACAE,uBACAI,YAAa,OACbC,oBAAqBrB,EAA4BU,IAErDY,cAAed,EAAuBE,GACtCa,kBAAmBN,EACvB,EAgBSO,EAAyB,EAAGxC,QAAOyC,sBAC5C,MAAMC,EAA0B3C,EAAoBC,GAEpD,GAAIJ,EAAc8C,GACd,OAAOA,EAGX,MAAMC,6BAAEA,EAA8BC,iBAAkBC,EAAgBb,qBAAEA,GAAyBU,EAC7FI,EAA0BL,GAAmBE,EAGnD,MAAO,CACHX,uBACAa,mBACAF,6BAA8BG,EAC9BP,kBAN0BL,EAAUY,GAOxC,EAGSC,EAA+B,CAACC,EAAiBC,EAAyBC,KAAiD,CACpI5C,KAAM,CACF0C,CAACA,GAAUvC,EAAa,CAAE0C,eAAgBF,EAAUE,iBACpDD,iBAKKE,EAAkC,CAACJ,EAAiBC,EAAyBC,KAA8B,CACpH5C,KAAM,CACF+C,QAAS,CAAE,uBAAwB5C,EAAawC,IAChDC,iBAIKI,EAA6B,CAACN,EAAiBO,EAAqBC,KAAsD,CACnIlD,KAAM,CACF+C,QAAS,CAAEL,CAACA,GAAUvC,EAAa,CAAE8C,cAAaC,2BAK7CC,EAAgC,CAACT,EAAiBO,EAAqBC,KAAqC,CACrHlD,KAAM,CACF+C,QAAS,CAAE,2BAA4B5C,EAAa,CAAE8C,iBACtDL,YAAaM,KAoBRE,EAAmBC,IAE5B,IAAIC,EADeC,OAAOC,KAAKH,GACJI,MAAM,KAAK,GAKtC,OAHAH,EAAYA,EAAUI,QAAQ,MAAO,KACrCJ,EAAYA,EAAUI,QAAQ,MAAO,KAE9BJ,CAAAA,EAGLK,EAA6B,CAAC,cAM9BC,EAAuB,CAAC,mBAAoB,uBAQrCC,EAAmB,CAACC,EAAeC,KAC5C,GAAsB,gBAAlBD,EAAiC,CAEjC,MAAME,EAAmBD,EAAME,WAAaN,EAA6BC,EACnEM,EAASC,EAAKH,GAAkBI,KAAKL,GAG3C,OAFAG,EAAOG,aAAeN,EAAMO,SAC5BJ,EAAOK,WAAa,UACbL,CACX,CAGA,MAAO,CACHK,WAAY,SACZC,KAAMT,EAAMS,KAChB"}
@@ -1,2 +1,2 @@
1
- import{createElement as t}from"../../external/preact/dist/preact.js";import{UIElement as e}from"../internal/UIElement/UIElement.js";import o from"./components/UPIComponent/UPIComponent.js";import{CoreProvider as r}from"../../core/Context/CoreProvider.js";import s from"../internal/Await/Await.js";import i from"../internal/QRLoader/QRLoader.js";import n from"../../core/Errors/SRPanelProvider.js";import{TxVariants as a}from"../tx-variants.js";class p extends e{static type=a.upi;static txVariants=[a.upi,a.upi_qr,a.upi_collect];useQrCodeVariant;static defaultProps={defaultMode:"vpa"};get isValid(){return this.useQrCodeVariant||!!this.state.isValid}formatData(){const{virtualPaymentAddress:t}=this.state.data;return{paymentMethod:{type:this.useQrCodeVariant?a.upi_qr:a.upi_collect,...t&&!this.useQrCodeVariant&&{virtualPaymentAddress:t}}}}onUpdateMode=t=>{"qrCode"===t?(this.useQrCodeVariant=!0,this.setState({data:{},valid:{},errors:{},isValid:!0})):this.useQrCodeVariant=!1};renderContent(e){switch(e){case"qrCode":return t(i,{ref:t=>{this.componentRef=t},...this.props,qrCodeData:this.props.qrCodeData?encodeURIComponent(this.props.qrCodeData):null,type:a.upi_qr,brandLogo:this.props.brandLogo||this.icon,onComplete:this.onComplete,introduction:this.props.i18n.get("upi.qrCodeWaitingMessage"),countdownTime:5,onActionHandled:this.props.onActionHandled});case"await":return t(s,{ref:t=>{this.componentRef=t},onError:this.props.onError,clientKey:this.props.clientKey,paymentData:this.props.paymentData,onComplete:this.onComplete,brandLogo:this.icon,type:a.upi_collect,messageText:this.props.i18n.get("upi.vpaWaitingMessage"),awaitText:this.props.i18n.get("await.waitForConfirmation"),showCountdownTimer:!0,countdownTime:5,onActionHandled:this.props.onActionHandled});default:return t(o,{ref:t=>{this.componentRef=t},payButton:this.payButton,onChange:this.setState,onUpdateMode:this.onUpdateMode,defaultMode:this.props.defaultMode,showPayButton:this.props.showPayButton})}}render(){const{type:e}=this.props;return t(r,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},t(n,{srPanel:this.props.modules.srPanel},this.renderContent(e)))}}export{p as default};
1
+ import{createElement as t}from"../../external/preact/dist/preact.js";import{UIElement as e}from"../internal/UIElement/UIElement.js";import o from"./components/UPIComponent/UPIComponent.js";import{CoreProvider as s}from"../../core/Context/CoreProvider.js";import r from"../internal/Await/Await.js";import p from"../internal/QRLoader/QRLoader.js";import n from"../../core/Errors/SRPanelProvider.js";import{TxVariants as i}from"../tx-variants.js";import a from"../../utils/isMobile.js";class d extends e{static type=i.upi;static txVariants=[i.upi,i.upi_qr,i.upi_collect,i.upi_intent];selectedMode;constructor(t,e){super(t,e),this.selectedMode=this.props.defaultMode}formatProps(t){if(!a())return{...super.formatProps(t),defaultMode:t?.defaultMode??"qrCode",apps:[]};const e=t.apps?.length>0,o=e?"intent":"vpa",s=[o,"qrCode"],r={id:"vpa",name:t.i18n.get("upi.collect.dropdown.label"),type:i.upi_collect},p=e?[...t.apps.map((t=>({...t,type:i.upi_intent}))),r]:[];return{...super.formatProps(t),defaultMode:s.includes(t?.defaultMode)?t.defaultMode:o,apps:p}}get isValid(){return this.state.isValid}formatData(){const{virtualPaymentAddress:t,app:e}=this.state.data||{};return{paymentMethod:{...this.paymentType&&{type:this.paymentType},...this.paymentType===i.upi_collect&&t&&{virtualPaymentAddress:t},...this.paymentType===i.upi_intent&&e?.id&&{appId:e.id}}}}get paymentType(){return"qrCode"===this.selectedMode?i.upi_qr:"vpa"===this.selectedMode?i.upi_collect:this.state.data?.app?.type}onUpdateMode=t=>{this.selectedMode=t};renderContent(e,s,n){switch(e){case"qrCode":return t(p,{ref:t=>{this.componentRef=t},...this.props,qrCodeData:this.props.qrCodeData?encodeURIComponent(this.props.qrCodeData):null,type:i.upi_qr,brandLogo:this.props.brandLogo||this.icon,onComplete:this.onComplete,introduction:this.props.i18n.get("upi.qrCodeWaitingMessage"),countdownTime:5,onActionHandled:this.props.onActionHandled});case"await":return t(r,{ref:t=>{this.componentRef=t},url:s,type:n,showCountdownTimer:!0,shouldRedirectAutomatically:!0,countdownTime:5,clientKey:this.props.clientKey,paymentData:this.props.paymentData,onActionHandled:this.props.onActionHandled,onError:this.props.onError,messageText:this.props.i18n.get("upi.vpaWaitingMessage"),awaitText:this.props.i18n.get("await.waitForConfirmation"),onComplete:this.onComplete,brandLogo:this.icon});default:return t(o,{ref:t=>{this.componentRef=t},payButton:this.payButton,onChange:this.setState,onUpdateMode:this.onUpdateMode,apps:this.props.apps,defaultMode:this.props.defaultMode,showPayButton:this.props.showPayButton})}}render(){const{type:e,url:o,paymentMethodType:r}=this.props;return t(s,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},t(n,{srPanel:this.props.modules.srPanel},this.renderContent(e,o,r)))}}export{d as default};
2
2
  //# sourceMappingURL=UPI.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"UPI.js","sources":["../../../../src/components/UPI/UPI.tsx"],"sourcesContent":["import { h, RefObject } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport UPIComponent from './components/UPIComponent';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport Await from '../internal/Await';\nimport QRLoader from '../internal/QRLoader';\nimport { UPIConfiguration, UpiMode, UpiPaymentData } from './types';\nimport SRPanelProvider from '../../core/Errors/SRPanelProvider';\nimport { TxVariants } from '../tx-variants';\n\nclass UPI extends UIElement<UPIConfiguration> {\n public static type = TxVariants.upi;\n public static txVariants = [TxVariants.upi, TxVariants.upi_qr, TxVariants.upi_collect];\n\n private useQrCodeVariant: boolean;\n\n protected static defaultProps = {\n defaultMode: 'vpa'\n };\n\n public get isValid(): boolean {\n return this.useQrCodeVariant || !!this.state.isValid;\n }\n\n public formatData(): UpiPaymentData {\n const { virtualPaymentAddress } = this.state.data;\n return {\n paymentMethod: {\n type: this.useQrCodeVariant ? TxVariants.upi_qr : TxVariants.upi_collect,\n ...(virtualPaymentAddress && !this.useQrCodeVariant && { virtualPaymentAddress })\n }\n };\n }\n\n private onUpdateMode = (mode: UpiMode): void => {\n if (mode === 'qrCode') {\n this.useQrCodeVariant = true;\n /**\n * When selecting QR code mode, we need to clear the state data and trigger the 'onChange'.\n */\n this.setState({ data: {}, valid: {}, errors: {}, isValid: true });\n } else {\n this.useQrCodeVariant = false;\n }\n };\n\n private renderContent(type: string): h.JSX.Element {\n switch (type) {\n case 'qrCode':\n return (\n <QRLoader\n ref={ref => {\n this.componentRef = ref;\n }}\n {...this.props}\n qrCodeData={this.props.qrCodeData ? encodeURIComponent(this.props.qrCodeData) : null}\n type={TxVariants.upi_qr}\n brandLogo={this.props.brandLogo || this.icon}\n onComplete={this.onComplete}\n introduction={this.props.i18n.get('upi.qrCodeWaitingMessage')}\n countdownTime={5}\n onActionHandled={this.props.onActionHandled}\n />\n );\n case 'await':\n return (\n <Await\n ref={ref => {\n this.componentRef = ref;\n }}\n onError={this.props.onError}\n clientKey={this.props.clientKey}\n paymentData={this.props.paymentData}\n onComplete={this.onComplete}\n brandLogo={this.icon}\n type={TxVariants.upi_collect}\n messageText={this.props.i18n.get('upi.vpaWaitingMessage')}\n awaitText={this.props.i18n.get('await.waitForConfirmation')}\n showCountdownTimer\n countdownTime={5}\n onActionHandled={this.props.onActionHandled}\n />\n );\n default:\n return (\n <UPIComponent\n ref={(ref: RefObject<typeof UPIComponent>) => {\n this.componentRef = ref;\n }}\n payButton={this.payButton}\n onChange={this.setState}\n onUpdateMode={this.onUpdateMode}\n defaultMode={this.props.defaultMode}\n showPayButton={this.props.showPayButton}\n />\n );\n }\n }\n\n public render(): h.JSX.Element {\n const { type } = this.props;\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <SRPanelProvider srPanel={this.props.modules.srPanel}>{this.renderContent(type)}</SRPanelProvider>\n </CoreProvider>\n );\n }\n}\n\nexport default UPI;\n"],"names":["UPI","UIElement","static","TxVariants","upi","upi_qr","upi_collect","useQrCodeVariant","defaultMode","isValid","this","state","formatData","virtualPaymentAddress","data","paymentMethod","type","onUpdateMode","mode","setState","valid","errors","renderContent","h","QRLoader","ref","componentRef","props","qrCodeData","encodeURIComponent","brandLogo","icon","onComplete","introduction","i18n","get","countdownTime","onActionHandled","Await","onError","clientKey","paymentData","messageText","awaitText","showCountdownTimer","UPIComponent","payButton","onChange","showPayButton","render","CoreProvider","loadingContext","resources","SRPanelProvider","srPanel","modules"],"mappings":"4bAUA,MAAMA,UAAYC,EACdC,YAAqBC,EAAWC,IAChCF,kBAA2B,CAACC,EAAWC,IAAKD,EAAWE,OAAQF,EAAWG,aAElEC,iBAERL,oBAAgC,CAC5BM,YAAa,OAGjB,WAAWC,GACP,OAAOC,KAAKH,oBAAsBG,KAAKC,MAAMF,OACjD,CAEOG,UAAAA,GACH,MAAMC,sBAAEA,GAA0BH,KAAKC,MAAMG,KAC7C,MAAO,CACHC,cAAe,CACXC,KAAMN,KAAKH,iBAAmBJ,EAAWE,OAASF,EAAWG,eACzDO,IAA0BH,KAAKH,kBAAoB,CAAEM,0BAGrE,CAEQI,aAAgBC,IACP,WAATA,GACAR,KAAKH,kBAAmB,EAIxBG,KAAKS,SAAS,CAAEL,KAAM,CAAC,EAAGM,MAAO,CAAC,EAAGC,OAAQ,CAAC,EAAGZ,SAAS,KAE1DC,KAAKH,kBAAmB,CAC5B,EAGIe,aAAAA,CAAcN,GAClB,OAAQA,GACJ,IAAK,SACD,OACIO,EAACC,EAAAA,CACGC,IAAKA,IACDf,KAAKgB,aAAeD,CAAAA,KAEpBf,KAAKiB,MACTC,WAAYlB,KAAKiB,MAAMC,WAAaC,mBAAmBnB,KAAKiB,MAAMC,YAAc,KAChFZ,KAAMb,EAAWE,OACjByB,UAAWpB,KAAKiB,MAAMG,WAAapB,KAAKqB,KACxCC,WAAYtB,KAAKsB,WACjBC,aAAcvB,KAAKiB,MAAMO,KAAKC,IAAI,4BAClCC,cAAe,EACfC,gBAAiB3B,KAAKiB,MAAMU,kBAGxC,IAAK,QACD,OACId,EAACe,EAAAA,CACGb,IAAKA,IACDf,KAAKgB,aAAeD,CAAAA,EAExBc,QAAS7B,KAAKiB,MAAMY,QACpBC,UAAW9B,KAAKiB,MAAMa,UACtBC,YAAa/B,KAAKiB,MAAMc,YACxBT,WAAYtB,KAAKsB,WACjBF,UAAWpB,KAAKqB,KAChBf,KAAMb,EAAWG,YACjBoC,YAAahC,KAAKiB,MAAMO,KAAKC,IAAI,yBACjCQ,UAAWjC,KAAKiB,MAAMO,KAAKC,IAAI,6BAC/BS,oBAAAA,EACAR,cAAe,EACfC,gBAAiB3B,KAAKiB,MAAMU,kBAGxC,QACI,OACId,EAACsB,EAAAA,CACGpB,IAAMA,IACFf,KAAKgB,aAAeD,CAAAA,EAExBqB,UAAWpC,KAAKoC,UAChBC,SAAUrC,KAAKS,SACfF,aAAcP,KAAKO,aACnBT,YAAaE,KAAKiB,MAAMnB,YACxBwC,cAAetC,KAAKiB,MAAMqB,gBAI9C,CAEOC,MAAAA,GACH,MAAMjC,KAAEA,GAASN,KAAKiB,MACtB,OACIJ,EAAC2B,EAAAA,CAAahB,KAAMxB,KAAKiB,MAAMO,KAAMiB,eAAgBzC,KAAKiB,MAAMwB,eAAgBC,UAAW1C,KAAK0C,WAC5F7B,EAAC8B,EAAAA,CAAgBC,QAAS5C,KAAKiB,MAAM4B,QAAQD,SAAU5C,KAAKY,cAAcN,IAGtF"}
1
+ {"version":3,"file":"UPI.js","sources":["../../../../src/components/UPI/UPI.tsx"],"sourcesContent":["import { h, RefObject } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport UPIComponent from './components/UPIComponent';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport Await from '../internal/Await';\nimport QRLoader from '../internal/QRLoader';\nimport { UPIConfiguration, UpiMode, UpiPaymentData, UpiType } from './types';\nimport SRPanelProvider from '../../core/Errors/SRPanelProvider';\nimport { TxVariants } from '../tx-variants';\nimport isMobile from '../../utils/isMobile';\nimport type { ICore } from '../../core/types';\n\n/**\n * For mobile:\n * We should show upi_collect or upi_intent depending on if `apps` are returned in /paymentMethods response\n * The upi_qr should always be on the second tab\n *\n * For non-mobile:\n * We should never show the upi_intent (ignore `apps` in /paymentMethods response)\n * The upi_qr should be on the first tab and the upi_collect should be on second tab\n */\n\nclass UPI extends UIElement<UPIConfiguration> {\n public static type = TxVariants.upi;\n public static txVariants = [TxVariants.upi, TxVariants.upi_qr, TxVariants.upi_collect, TxVariants.upi_intent];\n\n private selectedMode: UpiMode;\n\n constructor(checkout: ICore, props: UPIConfiguration) {\n super(checkout, props);\n this.selectedMode = this.props.defaultMode;\n }\n\n // @ts-ignore fix later\n formatProps(props: UPIConfiguration) {\n if (!isMobile()) {\n return {\n ...super.formatProps(props),\n defaultMode: props?.defaultMode ?? 'qrCode',\n // For large screen, ignore the apps\n apps: []\n };\n }\n\n const hasIntentApps = props.apps?.length > 0;\n const fallbackDefaultMode = hasIntentApps ? 'intent' : 'vpa';\n const allowedModes = [fallbackDefaultMode, 'qrCode'];\n const upiCollectApp = {\n id: 'vpa',\n name: props.i18n.get('upi.collect.dropdown.label'),\n type: TxVariants.upi_collect\n };\n const apps = hasIntentApps ? [...props.apps.map(app => ({ ...app, type: TxVariants.upi_intent })), upiCollectApp] : [];\n return {\n ...super.formatProps(props),\n defaultMode: allowedModes.includes(props?.defaultMode) ? props.defaultMode : fallbackDefaultMode,\n apps\n };\n }\n\n public get isValid(): boolean {\n return this.state.isValid;\n }\n\n public formatData(): UpiPaymentData {\n const { virtualPaymentAddress, app } = this.state.data || {};\n\n return {\n paymentMethod: {\n ...(this.paymentType && { type: this.paymentType }),\n ...(this.paymentType === TxVariants.upi_collect && virtualPaymentAddress && { virtualPaymentAddress }),\n ...(this.paymentType === TxVariants.upi_intent && app?.id && { appId: app.id })\n }\n };\n }\n\n get paymentType(): UpiType {\n if (this.selectedMode === 'qrCode') {\n return TxVariants.upi_qr;\n }\n if (this.selectedMode === 'vpa') {\n return TxVariants.upi_collect;\n }\n return this.state.data?.app?.type;\n }\n\n private onUpdateMode = (mode: UpiMode): void => {\n this.selectedMode = mode;\n };\n\n private renderContent(type: string, url: string, paymentMethodType: string): h.JSX.Element {\n switch (type) {\n case 'qrCode':\n return (\n <QRLoader\n ref={ref => {\n this.componentRef = ref;\n }}\n {...this.props}\n qrCodeData={this.props.qrCodeData ? encodeURIComponent(this.props.qrCodeData) : null}\n type={TxVariants.upi_qr}\n brandLogo={this.props.brandLogo || this.icon}\n onComplete={this.onComplete}\n introduction={this.props.i18n.get('upi.qrCodeWaitingMessage')}\n countdownTime={5}\n onActionHandled={this.props.onActionHandled}\n />\n );\n case 'await':\n return (\n <Await\n ref={ref => {\n this.componentRef = ref;\n }}\n url={url}\n type={paymentMethodType}\n showCountdownTimer\n shouldRedirectAutomatically\n countdownTime={5}\n clientKey={this.props.clientKey}\n paymentData={this.props.paymentData}\n onActionHandled={this.props.onActionHandled}\n onError={this.props.onError}\n messageText={this.props.i18n.get('upi.vpaWaitingMessage')}\n awaitText={this.props.i18n.get('await.waitForConfirmation')}\n onComplete={this.onComplete}\n brandLogo={this.icon}\n />\n );\n default:\n return (\n <UPIComponent\n ref={(ref: RefObject<typeof UPIComponent>) => {\n this.componentRef = ref;\n }}\n payButton={this.payButton}\n onChange={this.setState}\n onUpdateMode={this.onUpdateMode}\n apps={this.props.apps}\n defaultMode={this.props.defaultMode}\n showPayButton={this.props.showPayButton}\n />\n );\n }\n }\n\n public render(): h.JSX.Element {\n const { type, url, paymentMethodType } = this.props;\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <SRPanelProvider srPanel={this.props.modules.srPanel}>{this.renderContent(type, url, paymentMethodType)}</SRPanelProvider>\n </CoreProvider>\n );\n }\n}\n\nexport default UPI;\n"],"names":["UPI","UIElement","static","TxVariants","upi","upi_qr","upi_collect","upi_intent","selectedMode","constructor","checkout","props","super","this","defaultMode","formatProps","isMobile","apps","hasIntentApps","length","fallbackDefaultMode","allowedModes","upiCollectApp","id","name","i18n","get","type","map","app","includes","isValid","state","formatData","virtualPaymentAddress","data","paymentMethod","paymentType","appId","onUpdateMode","mode","renderContent","url","paymentMethodType","h","QRLoader","ref","componentRef","qrCodeData","encodeURIComponent","brandLogo","icon","onComplete","introduction","countdownTime","onActionHandled","Await","showCountdownTimer","shouldRedirectAutomatically","clientKey","paymentData","onError","messageText","awaitText","UPIComponent","payButton","onChange","setState","showPayButton","render","CoreProvider","loadingContext","resources","SRPanelProvider","srPanel","modules"],"mappings":"meAsBA,MAAMA,UAAYC,EACdC,YAAqBC,EAAWC,IAChCF,kBAA2B,CAACC,EAAWC,IAAKD,EAAWE,OAAQF,EAAWG,YAAaH,EAAWI,YAE1FC,aAERC,WAAAA,CAAYC,EAAiBC,GACzBC,MAAMF,EAAUC,GAChBE,KAAKL,aAAeK,KAAKF,MAAMG,WACnC,CAGAC,WAAAA,CAAYJ,GACR,IAAKK,IACD,MAAO,IACAJ,MAAMG,YAAYJ,GACrBG,YAAaH,GAAOG,aAAe,SAEnCG,KAAM,IAId,MAAMC,EAAgBP,EAAMM,MAAME,OAAS,EACrCC,EAAsBF,EAAgB,SAAW,MACjDG,EAAe,CAACD,EAAqB,UACrCE,EAAgB,CAClBC,GAAI,MACJC,KAAMb,EAAMc,KAAKC,IAAI,8BACrBC,KAAMxB,EAAWG,aAEfW,EAAOC,EAAgB,IAAIP,EAAMM,KAAKW,KAAIC,IAAQ,IAAKA,EAAKF,KAAMxB,EAAWI,eAAgBe,GAAiB,GACpH,MAAO,IACAV,MAAMG,YAAYJ,GACrBG,YAAaO,EAAaS,SAASnB,GAAOG,aAAeH,EAAMG,YAAcM,EAC7EH,OAER,CAEA,WAAWc,GACP,OAAOlB,KAAKmB,MAAMD,OACtB,CAEOE,UAAAA,GACH,MAAMC,sBAAEA,EAAqBL,IAAEA,GAAQhB,KAAKmB,MAAMG,MAAQ,GAE1D,MAAO,CACHC,cAAe,IACPvB,KAAKwB,aAAe,CAAEV,KAAMd,KAAKwB,gBACjCxB,KAAKwB,cAAgBlC,EAAWG,aAAe4B,GAAyB,CAAEA,4BAC1ErB,KAAKwB,cAAgBlC,EAAWI,YAAcsB,GAAKN,IAAM,CAAEe,MAAOT,EAAIN,KAGtF,CAEA,eAAIc,GACA,MAA0B,WAAtBxB,KAAKL,aACEL,EAAWE,OAEI,QAAtBQ,KAAKL,aACEL,EAAWG,YAEfO,KAAKmB,MAAMG,MAAMN,KAAKF,IACjC,CAEQY,aAAgBC,IACpB3B,KAAKL,aAAegC,CAAAA,EAGhBC,aAAAA,CAAcd,EAAce,EAAaC,GAC7C,OAAQhB,GACJ,IAAK,SACD,OACIiB,EAACC,EAAAA,CACGC,IAAKA,IACDjC,KAAKkC,aAAeD,CAAAA,KAEpBjC,KAAKF,MACTqC,WAAYnC,KAAKF,MAAMqC,WAAaC,mBAAmBpC,KAAKF,MAAMqC,YAAc,KAChFrB,KAAMxB,EAAWE,OACjB6C,UAAWrC,KAAKF,MAAMuC,WAAarC,KAAKsC,KACxCC,WAAYvC,KAAKuC,WACjBC,aAAcxC,KAAKF,MAAMc,KAAKC,IAAI,4BAClC4B,cAAe,EACfC,gBAAiB1C,KAAKF,MAAM4C,kBAGxC,IAAK,QACD,OACIX,EAACY,EAAAA,CACGV,IAAKA,IACDjC,KAAKkC,aAAeD,CAAAA,EAExBJ,IAAKA,EACLf,KAAMgB,EACNc,oBAAAA,EACAC,6BAAAA,EACAJ,cAAe,EACfK,UAAW9C,KAAKF,MAAMgD,UACtBC,YAAa/C,KAAKF,MAAMiD,YACxBL,gBAAiB1C,KAAKF,MAAM4C,gBAC5BM,QAAShD,KAAKF,MAAMkD,QACpBC,YAAajD,KAAKF,MAAMc,KAAKC,IAAI,yBACjCqC,UAAWlD,KAAKF,MAAMc,KAAKC,IAAI,6BAC/B0B,WAAYvC,KAAKuC,WACjBF,UAAWrC,KAAKsC,OAG5B,QACI,OACIP,EAACoB,EAAAA,CACGlB,IAAMA,IACFjC,KAAKkC,aAAeD,CAAAA,EAExBmB,UAAWpD,KAAKoD,UAChBC,SAAUrD,KAAKsD,SACf5B,aAAc1B,KAAK0B,aACnBtB,KAAMJ,KAAKF,MAAMM,KACjBH,YAAaD,KAAKF,MAAMG,YACxBsD,cAAevD,KAAKF,MAAMyD,gBAI9C,CAEOC,MAAAA,GACH,MAAM1C,KAAEA,EAAIe,IAAEA,EAAGC,kBAAEA,GAAsB9B,KAAKF,MAC9C,OACIiC,EAAC0B,EAAAA,CAAa7C,KAAMZ,KAAKF,MAAMc,KAAM8C,eAAgB1D,KAAKF,MAAM4D,eAAgBC,UAAW3D,KAAK2D,WAC5F5B,EAAC6B,EAAAA,CAAgBC,QAAS7D,KAAKF,MAAMgE,QAAQD,SAAU7D,KAAK4B,cAAcd,EAAMe,EAAKC,IAGjG"}
@@ -1,2 +1,2 @@
1
- import{createElement as e,Fragment as t}from"../../../../external/preact/dist/preact.js";import{useState as a,useCallback as o}from"../../../../external/preact/hooks/dist/hooks.js";import{useCoreContext as r}from"../../../../core/Context/CoreProvider.js";import n from"../VpaInput/VpaInput.js";import d from"../../../internal/SegmentedControl/SegmentedControl.js";import i from"../../../../utils/isMobile.js";import l from"../../../../core/Context/useImage.js";const s={ButtonId:{VPA:"upi-button-vpa",QR:"upi-button-qrCode"},AreaId:{VPA:"upi-area-vpa",QR:"upi-area-qrCode"}};function u({defaultMode:u,onChange:p,onUpdateMode:m,payButton:c,showPayButton:g}){const{i18n:b}=r(),C=l(),[I,A]=a(null),[h,P]=a("ready"),[V,f]=a(u);this.setStatus=e=>{P(e)},this.showValidation=()=>{I.validateInput()};const v=o((e=>{A(e)}),[]),x=o((e=>{f(e),m(e)}),[m]);return e(t,null,e("p",{className:"adyen-checkout_upi-mode-selection-text"},b.get("upi.modeSelection")),e(d,{onChange:x,selectedValue:V,disabled:"loading"===h,classNameModifiers:["upi-margin-bottom"],options:[{label:i()?"VPA":"Virtual Payment Address",value:"vpa",htmlProps:{id:s.ButtonId.VPA,"aria-expanded":"vpa"===V,"aria-controls":s.AreaId.VPA}},{label:"QR Code",value:"qrCode",htmlProps:{id:s.ButtonId.QR,"aria-expanded":"qrCode"===V,"aria-controls":s.AreaId.QR}}]}),"vpa"===V?e("div",{id:s.AreaId.VPA,"aria-labelledby":s.ButtonId.VPA,role:"region"},e(n,{disabled:"loading"===h,onChange:p,onSetInputHandlers:v}),g&&c({label:b.get("continue"),status:h})):e("div",{id:s.AreaId.QR,"aria-labelledby":s.ButtonId.QR,role:"region"},g&&c({label:b.get("generateQRCode"),icon:C({imageFolder:"components/"})("qr"),status:h})))}export{u as default};
1
+ import{createElement as e,Fragment as t}from"../../../../external/preact/dist/preact.js";import{useState as a,useCallback as o,useEffect as n}from"../../../../external/preact/hooks/dist/hooks.js";import r from"../VpaInput/VpaInput.js";import i from"../../../../core/Context/useImage.js";import s from"./useUpiSegmentedControlOptions.js";import{A11Y as l}from"./constants.js";import d from"../../../internal/SegmentedControl/SegmentedControl.js";import p from"../../../internal/ContentSeparator/ContentSeparator.js";import u from"../UPIIntentAppList/UPIIntentAppList.js";import{useCoreContext as m}from"../../../../core/Context/CoreProvider.js";function c({defaultMode:c,onChange:g,onUpdateMode:I,payButton:b,showPayButton:f,apps:C=[]}){const{i18n:h}=m(),y=i(),[v,A]=a("ready"),[S,j]=a(!0),[V,N]=a(c),[P,k]=a(""),[x,B]=a(null),[q,E]=a(null),[T,U]=a(null),[M,Q]=a(null),R=s(C,V);this.setStatus=e=>{A(e)},this.showValidation=()=>{x?.validateInput()};const w=o((e=>{B(e)}),[]),F=o((e=>{N(e),I(e)}),[I]),H=o((e=>{e?.id!==q?.id&&(E(e),j(!0))}),[q]),L=o((({data:{virtualPaymentAddress:e},errors:t,valid:a,isValid:o})=>{k(e),Q(t),U(a),j(o)}),[]);return n((()=>{g("qrCode"!==V?{data:{...P&&{virtualPaymentAddress:P},...q&&{app:q}},errors:M,valid:T,isValid:S}:{data:{},valid:{},errors:{},isValid:!0})}),[P,q,M,T,S,V]),e(t,null,e("p",{className:"adyen-checkout_upi-mode-selection-text"},h.get("upi.modeSelection")),e(d,{onChange:F,selectedValue:V,disabled:"loading"===v,classNameModifiers:["upi-margin-bottom"],options:R}),e(p,{label:h.get("upi.completePayment")}),"intent"===V&&e("div",{id:l.AreaId.INTENT,"aria-labelledby":l.ButtonId.INTENT,className:"adyen-checkout-upi-area-intent",role:"region"},e(u,{disabled:"loading"===v,apps:C,selectedAppId:q?.id,onAppSelect:H,onVpaInputChange:L,onSetInputHandlers:w}),f&&b({label:h.get("continue"),status:v,disabled:null==q})),"vpa"===V&&e("div",{id:l.AreaId.VPA,"aria-labelledby":l.ButtonId.VPA,className:"adyen-checkout-upi-area-vpa",role:"region"},e(r,{disabled:"loading"===v,onChange:g,onSetInputHandlers:w}),f&&b({label:h.get("continue"),status:v})),"qrCode"===V&&e("div",{id:l.AreaId.QR,"aria-labelledby":l.ButtonId.QR,className:"adyen-checkout-upi-area-qr-code",role:"region"},f&&b({label:h.get("generateQRCode"),icon:y({imageFolder:"components/"})("qr"),status:v})))}export{c as default};
2
2
  //# sourceMappingURL=UPIComponent.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"UPIComponent.js","sources":["../../../../../../src/components/UPI/components/UPIComponent/UPIComponent.tsx"],"sourcesContent":["import { Fragment, h, RefObject } from 'preact';\nimport { useCallback, useState } from 'preact/hooks';\nimport { useCoreContext } from '../../../../core/Context/CoreProvider';\nimport { VpaInputDataState, VpaInputHandlers } from '../VpaInput/VpaInput';\nimport VpaInput from '../VpaInput';\nimport SegmentedControl from '../../../internal/SegmentedControl';\nimport { UpiMode } from '../../types';\nimport './UPIComponent.scss';\nimport isMobile from '../../../../utils/isMobile';\nimport useImage from '../../../../core/Context/useImage';\nimport { PayButtonFunctionProps, UIElementStatus } from '../../../internal/UIElement/types';\n\ntype OnChangeProps = { data: VpaInputDataState; valid; errors; isValid: boolean };\n\ninterface UPIComponentProps {\n defaultMode: UpiMode;\n showPayButton: boolean;\n ref(ref: RefObject<typeof UPIComponent>): void;\n payButton(props: PayButtonFunctionProps): h.JSX.Element;\n onChange({ data, valid, errors, isValid }: OnChangeProps): void;\n onUpdateMode(mode: UpiMode): void;\n}\n\nconst A11Y = {\n ButtonId: {\n VPA: `upi-button-vpa`,\n QR: `upi-button-qrCode`\n },\n AreaId: {\n VPA: `upi-area-vpa`,\n QR: `upi-area-qrCode`\n }\n};\n\nexport default function UPIComponent({ defaultMode, onChange, onUpdateMode, payButton, showPayButton }: UPIComponentProps): h.JSX.Element {\n const { i18n } = useCoreContext();\n const getImage = useImage();\n const [vpaInputHandlers, setVpaInputHandlers] = useState<VpaInputHandlers>(null);\n const [status, setStatus] = useState<UIElementStatus>('ready');\n const [mode, setMode] = useState<UpiMode>(defaultMode);\n\n this.setStatus = (status: UIElementStatus) => {\n setStatus(status);\n };\n\n this.showValidation = () => {\n vpaInputHandlers.validateInput();\n };\n\n const onSetVpaInputHandlers = useCallback((handlers: VpaInputHandlers) => {\n setVpaInputHandlers(handlers);\n }, []);\n\n const onChangeUpiMode = useCallback(\n (newMode: UpiMode) => {\n setMode(newMode);\n onUpdateMode(newMode);\n },\n [onUpdateMode]\n );\n\n return (\n <Fragment>\n <p className=\"adyen-checkout_upi-mode-selection-text\">{i18n.get('upi.modeSelection')}</p>\n\n <SegmentedControl\n onChange={onChangeUpiMode}\n selectedValue={mode}\n disabled={status === 'loading'}\n classNameModifiers={['upi-margin-bottom']}\n options={[\n {\n label: isMobile() ? 'VPA' : 'Virtual Payment Address',\n value: 'vpa',\n htmlProps: {\n id: A11Y.ButtonId.VPA,\n 'aria-expanded': mode === 'vpa',\n 'aria-controls': A11Y.AreaId.VPA\n }\n },\n {\n label: 'QR Code',\n value: 'qrCode',\n htmlProps: {\n id: A11Y.ButtonId.QR,\n 'aria-expanded': mode === 'qrCode',\n 'aria-controls': A11Y.AreaId.QR\n }\n }\n ]}\n />\n\n {mode === 'vpa' ? (\n <div id={A11Y.AreaId.VPA} aria-labelledby={A11Y.ButtonId.VPA} role=\"region\">\n <VpaInput disabled={status === 'loading'} onChange={onChange} onSetInputHandlers={onSetVpaInputHandlers} />\n\n {showPayButton &&\n payButton({\n label: i18n.get('continue'),\n status\n })}\n </div>\n ) : (\n <div id={A11Y.AreaId.QR} aria-labelledby={A11Y.ButtonId.QR} role=\"region\">\n {showPayButton &&\n payButton({\n label: i18n.get('generateQRCode'),\n icon: getImage({ imageFolder: 'components/' })('qr'),\n status\n })}\n </div>\n )}\n </Fragment>\n );\n}\n"],"names":["A11Y","ButtonId","VPA","QR","AreaId","UPIComponent","defaultMode","onChange","onUpdateMode","payButton","showPayButton","i18n","useCoreContext","getImage","useImage","vpaInputHandlers","setVpaInputHandlers","useState","status","setStatus","mode","setMode","this","showValidation","validateInput","onSetVpaInputHandlers","useCallback","handlers","onChangeUpiMode","newMode","h","Fragment","p","className","get","SegmentedControl","selectedValue","disabled","classNameModifiers","options","label","isMobile","value","htmlProps","id","div","aria-labelledby","role","VpaInput","onSetInputHandlers","icon","imageFolder"],"mappings":"6cAuBA,MAAMA,EAAO,CACTC,SAAU,CACNC,IAAK,iBACLC,GAAI,qBAERC,OAAQ,CACJF,IAAK,eACLC,GAAI,oBAIG,SAASE,GAAaC,YAAEA,EAAWC,SAAEA,EAAQC,aAAEA,EAAYC,UAAEA,EAASC,cAAEA,IACnF,MAAMC,KAAEA,GAASC,IACXC,EAAWC,KACVC,EAAkBC,GAAuBC,EAA2B,OACpEC,EAAQC,GAAaF,EAA0B,UAC/CG,EAAMC,GAAWJ,EAAkBX,GAE1CgB,KAAKH,UAAaD,IACdC,EAAUD,EAAAA,EAGdI,KAAKC,eAAiB,KAClBR,EAAiBS,eAAa,EAGlC,MAAMC,EAAwBC,GAAaC,IACvCX,EAAoBW,EAAAA,GACrB,IAEGC,EAAkBF,GACnBG,IACGR,EAAQQ,GACRrB,EAAaqB,EAAAA,GAEjB,CAACrB,IAGL,OACIsB,EAACC,OACGD,EAACE,IAAAA,CAAEC,UAAU,0CAA0CtB,EAAKuB,IAAI,sBAEhEJ,EAACK,EAAAA,CACG5B,SAAUqB,EACVQ,cAAehB,EACfiB,SAAqB,YAAXnB,EACVoB,mBAAoB,CAAC,qBACrBC,QAAS,CACL,CACIC,MAAOC,IAAa,MAAQ,0BAC5BC,MAAO,MACPC,UAAW,CACPC,GAAI5C,EAAKC,SAASC,IAClB,gBAA0B,QAATkB,EACjB,gBAAiBpB,EAAKI,OAAOF,MAGrC,CACIsC,MAAO,UACPE,MAAO,SACPC,UAAW,CACPC,GAAI5C,EAAKC,SAASE,GAClB,gBAA0B,WAATiB,EACjB,gBAAiBpB,EAAKI,OAAOD,QAMnC,QAATiB,EACGU,EAACe,MAAAA,CAAID,GAAI5C,EAAKI,OAAOF,IAAK4C,kBAAiB9C,EAAKC,SAASC,IAAK6C,KAAK,UAC/DjB,EAACkB,EAAAA,CAASX,SAAqB,YAAXnB,EAAsBX,SAAUA,EAAU0C,mBAAoBxB,IAEjFf,GACGD,EAAU,CACN+B,MAAO7B,EAAKuB,IAAI,YAChBhB,YAIZY,EAACe,MAAAA,CAAID,GAAI5C,EAAKI,OAAOD,GAAI2C,kBAAiB9C,EAAKC,SAASE,GAAI4C,KAAK,UAC5DrC,GACGD,EAAU,CACN+B,MAAO7B,EAAKuB,IAAI,kBAChBgB,KAAMrC,EAAS,CAAEsC,YAAa,eAAxBtC,CAAyC,MAC/CK,YAM5B"}
1
+ {"version":3,"file":"UPIComponent.js","sources":["../../../../../../src/components/UPI/components/UPIComponent/UPIComponent.tsx"],"sourcesContent":["import { Fragment, h, RefObject } from 'preact';\nimport { useCallback, useEffect, useState } from 'preact/hooks';\nimport { PayButtonFunctionProps, UIElementStatus } from '../../../types';\nimport VpaInput, { VpaInputHandlers } from '../VpaInput/VpaInput';\nimport { App, UpiMode } from '../../types';\nimport useImage from '../../../../core/Context/useImage';\nimport useUpiSegmentedControlOptions from './useUpiSegmentedControlOptions';\nimport { A11Y } from './constants';\nimport './UPIComponent.scss';\nimport SegmentedControl from '../../../internal/SegmentedControl';\nimport ContentSeparator from '../../../internal/ContentSeparator';\nimport UPIIntentAppList from '../UPIIntentAppList';\nimport { useCoreContext } from '../../../../core/Context/CoreProvider';\n\ntype UpiData = { app?: App; virtualPaymentAddress?: string };\n\ntype OnChangeProps = { data: UpiData; valid; errors; isValid: boolean };\n\ninterface UPIComponentProps {\n defaultMode: UpiMode;\n showPayButton: boolean;\n apps?: Array<App>;\n\n ref?(ref: RefObject<typeof UPIComponent>): void;\n\n payButton?(props: PayButtonFunctionProps): h.JSX.Element;\n\n onChange({ data, valid, errors, isValid }: OnChangeProps): void;\n\n onUpdateMode?(mode: UpiMode): void;\n}\n\nexport default function UPIComponent({ defaultMode, onChange, onUpdateMode, payButton, showPayButton, apps = [] }: UPIComponentProps): h.JSX.Element {\n const { i18n } = useCoreContext();\n const getImage = useImage();\n const [status, setStatus] = useState<UIElementStatus>('ready');\n const [isValid, setIsValid] = useState<boolean>(true);\n const [mode, setMode] = useState<UpiMode>(defaultMode);\n const [vpa, setVpa] = useState<string>('');\n const [vpaInputHandlers, setVpaInputHandlers] = useState<VpaInputHandlers>(null);\n const [selectedApp, setSelectedApp] = useState<App>(null);\n const [valid, setValid] = useState(null);\n const [errors, setErrors] = useState(null);\n const segmentedControlOptions = useUpiSegmentedControlOptions(apps, mode);\n\n this.setStatus = (status: UIElementStatus) => {\n setStatus(status);\n };\n\n this.showValidation = () => {\n vpaInputHandlers?.validateInput();\n };\n\n const onSetVpaInputHandlers = useCallback((handlers: VpaInputHandlers) => {\n setVpaInputHandlers(handlers);\n }, []);\n\n const onChangeUpiMode = useCallback(\n (newMode: UpiMode) => {\n setMode(newMode);\n onUpdateMode(newMode);\n },\n [onUpdateMode]\n );\n\n const handleAppSelect = useCallback(\n (app: App) => {\n if (app?.id === selectedApp?.id) return;\n\n setSelectedApp(app);\n setIsValid(true);\n },\n [selectedApp]\n );\n\n const handleVpaInputChange = useCallback(({ data: { virtualPaymentAddress }, errors, valid, isValid }: OnChangeProps) => {\n setVpa(virtualPaymentAddress);\n setErrors(errors);\n setValid(valid);\n setIsValid(isValid);\n }, []);\n\n useEffect(() => {\n if (mode !== 'qrCode') {\n onChange({\n data: { ...(vpa && { virtualPaymentAddress: vpa }), ...(selectedApp && { app: selectedApp }) },\n errors,\n valid,\n isValid\n });\n } else {\n /**\n * When selecting QR code mode, we need to clear the state data and trigger the 'onChange'.\n */\n onChange({ data: {}, valid: {}, errors: {}, isValid: true });\n }\n }, [vpa, selectedApp, errors, valid, isValid, mode]);\n\n return (\n <Fragment>\n <p className=\"adyen-checkout_upi-mode-selection-text\">{i18n.get('upi.modeSelection')}</p>\n <SegmentedControl\n onChange={onChangeUpiMode}\n selectedValue={mode}\n disabled={status === 'loading'}\n classNameModifiers={['upi-margin-bottom']}\n options={segmentedControlOptions}\n />\n <ContentSeparator label={i18n.get('upi.completePayment')} />\n {mode === 'intent' && (\n <div id={A11Y.AreaId.INTENT} aria-labelledby={A11Y.ButtonId.INTENT} className=\"adyen-checkout-upi-area-intent\" role=\"region\">\n <UPIIntentAppList\n disabled={status === 'loading'}\n apps={apps}\n selectedAppId={selectedApp?.id}\n onAppSelect={handleAppSelect}\n onVpaInputChange={handleVpaInputChange}\n onSetInputHandlers={onSetVpaInputHandlers}\n />\n\n {showPayButton &&\n payButton({\n label: i18n.get('continue'),\n status,\n disabled: selectedApp == null\n })}\n </div>\n )}\n {mode === 'vpa' && (\n <div id={A11Y.AreaId.VPA} aria-labelledby={A11Y.ButtonId.VPA} className=\"adyen-checkout-upi-area-vpa\" role=\"region\">\n <VpaInput disabled={status === 'loading'} onChange={onChange} onSetInputHandlers={onSetVpaInputHandlers} />\n\n {showPayButton &&\n payButton({\n label: i18n.get('continue'),\n status\n })}\n </div>\n )}\n {mode === 'qrCode' && (\n <div id={A11Y.AreaId.QR} aria-labelledby={A11Y.ButtonId.QR} className=\"adyen-checkout-upi-area-qr-code\" role=\"region\">\n {showPayButton &&\n payButton({\n label: i18n.get('generateQRCode'),\n icon: getImage({ imageFolder: 'components/' })('qr'),\n status\n })}\n </div>\n )}\n </Fragment>\n );\n}\n"],"names":["UPIComponent","defaultMode","onChange","onUpdateMode","payButton","showPayButton","apps","i18n","useCoreContext","getImage","useImage","status","setStatus","useState","isValid","setIsValid","mode","setMode","vpa","setVpa","vpaInputHandlers","setVpaInputHandlers","selectedApp","setSelectedApp","valid","setValid","errors","setErrors","segmentedControlOptions","useUpiSegmentedControlOptions","this","showValidation","validateInput","onSetVpaInputHandlers","useCallback","handlers","onChangeUpiMode","newMode","handleAppSelect","app","id","handleVpaInputChange","data","virtualPaymentAddress","useEffect","h","Fragment","p","className","get","SegmentedControl","selectedValue","disabled","classNameModifiers","options","ContentSeparator","label","div","A11Y","AreaId","INTENT","aria-labelledby","ButtonId","role","UPIIntentAppList","selectedAppId","onAppSelect","onVpaInputChange","onSetInputHandlers","VPA","VpaInput","QR","icon","imageFolder"],"mappings":"ooBAgCe,SAASA,GAAaC,YAAEA,EAAWC,SAAEA,EAAQC,aAAEA,EAAYC,UAAEA,EAASC,cAAEA,EAAaC,KAAEA,EAAO,KACzG,MAAMC,KAAEA,GAASC,IACXC,EAAWC,KACVC,EAAQC,GAAaC,EAA0B,UAC/CC,EAASC,GAAcF,GAAkB,IACzCG,EAAMC,GAAWJ,EAAkBZ,IACnCiB,EAAKC,GAAUN,EAAiB,KAChCO,EAAkBC,GAAuBR,EAA2B,OACpES,EAAaC,GAAkBV,EAAc,OAC7CW,EAAOC,GAAYZ,EAAS,OAC5Ba,EAAQC,GAAad,EAAS,MAC/Be,EAA0BC,EAA8BvB,EAAMU,GAEpEc,KAAKlB,UAAaD,IACdC,EAAUD,EAAAA,EAGdmB,KAAKC,eAAiB,KAClBX,GAAkBY,eAAAA,EAGtB,MAAMC,EAAwBC,GAAaC,IACvCd,EAAoBc,EAAAA,GACrB,IAEGC,EAAkBF,GACnBG,IACGpB,EAAQoB,GACRlC,EAAakC,EAAAA,GAEjB,CAAClC,IAGCmC,EAAkBJ,GACnBK,IACOA,GAAKC,KAAOlB,GAAakB,KAE7BjB,EAAegB,GACfxB,GAAW,GAAA,GAEf,CAACO,IAGCmB,EAAuBP,GAAY,EAAGQ,MAAQC,yBAAyBjB,SAAQF,QAAOV,cACxFK,EAAOwB,GACPhB,EAAUD,GACVD,EAASD,GACTT,EAAWD,EAAAA,GACZ,IAkBH,OAhBA8B,GAAU,KAEF1C,EADS,WAATc,EACS,CACL0B,KAAM,IAAMxB,GAAO,CAAEyB,sBAAuBzB,MAAYI,GAAe,CAAEiB,IAAKjB,IAC9EI,SACAF,QACAV,WAMK,CAAE4B,KAAM,CAAC,EAAGlB,MAAO,CAAC,EAAGE,OAAQ,CAAC,EAAGZ,SAAS,GACzD,GACD,CAACI,EAAKI,EAAaI,EAAQF,EAAOV,EAASE,IAG1C6B,EAACC,OACGD,EAACE,IAAAA,CAAEC,UAAU,0CAA0CzC,EAAK0C,IAAI,sBAChEJ,EAACK,EAAAA,CACGhD,SAAUkC,EACVe,cAAenC,EACfoC,SAAqB,YAAXzC,EACV0C,mBAAoB,CAAC,qBACrBC,QAAS1B,IAEbiB,EAACU,EAAAA,CAAiBC,MAAOjD,EAAK0C,IAAI,yBACxB,WAATjC,GACG6B,EAACY,MAAAA,CAAIjB,GAAIkB,EAAKC,OAAOC,OAAQC,kBAAiBH,EAAKI,SAASF,OAAQZ,UAAU,iCAAiCe,KAAK,UAChHlB,EAACmB,EAAAA,CACGZ,SAAqB,YAAXzC,EACVL,KAAMA,EACN2D,cAAe3C,GAAakB,GAC5B0B,YAAa5B,EACb6B,iBAAkB1B,EAClB2B,mBAAoBnC,IAGvB5B,GACGD,EAAU,CACNoD,MAAOjD,EAAK0C,IAAI,YAChBtC,SACAyC,SAAyB,MAAf9B,KAIhB,QAATN,GACG6B,EAACY,MAAAA,CAAIjB,GAAIkB,EAAKC,OAAOU,IAAKR,kBAAiBH,EAAKI,SAASO,IAAKrB,UAAU,8BAA8Be,KAAK,UACvGlB,EAACyB,EAAAA,CAASlB,SAAqB,YAAXzC,EAAsBT,SAAUA,EAAUkE,mBAAoBnC,IAEjF5B,GACGD,EAAU,CACNoD,MAAOjD,EAAK0C,IAAI,YAChBtC,YAIN,WAATK,GACG6B,EAACY,MAAAA,CAAIjB,GAAIkB,EAAKC,OAAOY,GAAIV,kBAAiBH,EAAKI,SAASS,GAAIvB,UAAU,kCAAkCe,KAAK,UACxG1D,GACGD,EAAU,CACNoD,MAAOjD,EAAK0C,IAAI,kBAChBuB,KAAM/D,EAAS,CAAEgE,YAAa,eAAxBhE,CAAyC,MAC/CE,YAM5B"}
@@ -0,0 +1,2 @@
1
+ const t={ButtonId:{VPA:"upi-button-vpa",QR:"upi-button-qrCode",INTENT:"upi-button-intent"},AreaId:{VPA:"upi-area-vpa",QR:"upi-area-qrCode",INTENT:"upi-area-intent"}};export{t as A11Y};
2
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sources":["../../../../../../src/components/UPI/components/UPIComponent/constants.ts"],"sourcesContent":["export const A11Y = {\n ButtonId: {\n VPA: 'upi-button-vpa',\n QR: 'upi-button-qrCode',\n INTENT: 'upi-button-intent'\n },\n AreaId: {\n VPA: 'upi-area-vpa',\n QR: 'upi-area-qrCode',\n INTENT: 'upi-area-intent'\n }\n};\n"],"names":["A11Y","ButtonId","VPA","QR","INTENT","AreaId"],"mappings":"MAAaA,EAAO,CAChBC,SAAU,CACNC,IAAK,iBACLC,GAAI,oBACJC,OAAQ,qBAEZC,OAAQ,CACJH,IAAK,eACLC,GAAI,kBACJC,OAAQ"}
@@ -0,0 +1,2 @@
1
+ import{useMemo as e}from"../../../../external/preact/hooks/dist/hooks.js";import{A11Y as o}from"./constants.js";import r from"../../../../utils/isMobile.js";import{useCoreContext as t}from"../../../../core/Context/CoreProvider.js";function a(a,i){const{i18n:n}=t();return e((()=>{const e={label:n.get("upi.mode.payByAnyUpi"),value:"intent",htmlProps:{id:o.ButtonId.INTENT,"aria-expanded":"intent"===i,"aria-controls":o.AreaId.INTENT}},t={label:n.get("upi.mode.enterUpiId"),value:"vpa",htmlProps:{id:o.ButtonId.VPA,"aria-expanded":"vpa"===i,"aria-controls":o.AreaId.VPA}},d={label:n.get("upi.mode.qrCode"),value:"qrCode",htmlProps:{id:o.ButtonId.QR,"aria-expanded":"qrCode"===i,"aria-controls":o.AreaId.QR}},l=a.length>0,s=r()?1:0,p=new Array(2).fill(l?e:t);return p[s]=d,p}),[a,i])}export{a as default};
2
+ //# sourceMappingURL=useUpiSegmentedControlOptions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useUpiSegmentedControlOptions.js","sources":["../../../../../../src/components/UPI/components/UPIComponent/useUpiSegmentedControlOptions.ts"],"sourcesContent":["import { useMemo } from 'preact/hooks';\nimport { App, UpiMode } from '../../types';\nimport { A11Y } from './constants';\nimport isMobile from '../../../../utils/isMobile';\nimport { useCoreContext } from '../../../../core/Context/CoreProvider';\n\ninterface SegmentedControlOption {\n label: string;\n value: UpiMode;\n htmlProps: {\n id: string;\n 'aria-expanded': boolean;\n 'aria-controls': string;\n };\n}\n\nfunction useUpiSegmentedControlOptions(apps: Array<App>, mode: UpiMode): Array<SegmentedControlOption> {\n const { i18n } = useCoreContext();\n\n return useMemo(() => {\n const intentOption: SegmentedControlOption = {\n label: i18n.get('upi.mode.payByAnyUpi'),\n value: 'intent',\n htmlProps: {\n id: A11Y.ButtonId.INTENT,\n 'aria-expanded': mode === 'intent',\n 'aria-controls': A11Y.AreaId.INTENT\n }\n };\n const vpaOption: SegmentedControlOption = {\n label: i18n.get('upi.mode.enterUpiId'),\n value: 'vpa',\n htmlProps: {\n id: A11Y.ButtonId.VPA,\n 'aria-expanded': mode === 'vpa',\n 'aria-controls': A11Y.AreaId.VPA\n }\n };\n const qrOption: SegmentedControlOption = {\n label: i18n.get('upi.mode.qrCode'),\n value: 'qrCode',\n htmlProps: {\n id: A11Y.ButtonId.QR,\n 'aria-expanded': mode === 'qrCode',\n 'aria-controls': A11Y.AreaId.QR\n }\n };\n\n const shouldShowUpiIntent = apps.length > 0;\n const positionOfQrOption = isMobile() ? 1 : 0;\n const segmentedControlOptions = new Array(2).fill(shouldShowUpiIntent ? intentOption : vpaOption);\n segmentedControlOptions[positionOfQrOption] = qrOption;\n return segmentedControlOptions;\n }, [apps, mode]);\n}\n\nexport default useUpiSegmentedControlOptions;\n"],"names":["useUpiSegmentedControlOptions","apps","mode","i18n","useCoreContext","useMemo","intentOption","label","get","value","htmlProps","id","A11Y","ButtonId","INTENT","AreaId","vpaOption","VPA","qrOption","QR","shouldShowUpiIntent","length","positionOfQrOption","isMobile","segmentedControlOptions","Array","fill"],"mappings":"uOAgBA,SAASA,EAA8BC,EAAkBC,GACrD,MAAMC,KAAEA,GAASC,IAEjB,OAAOC,GAAQ,KACX,MAAMC,EAAuC,CACzCC,MAAOJ,EAAKK,IAAI,wBAChBC,MAAO,SACPC,UAAW,CACPC,GAAIC,EAAKC,SAASC,OAClB,gBAA0B,WAATZ,EACjB,gBAAiBU,EAAKG,OAAOD,SAG/BE,EAAoC,CACtCT,MAAOJ,EAAKK,IAAI,uBAChBC,MAAO,MACPC,UAAW,CACPC,GAAIC,EAAKC,SAASI,IAClB,gBAA0B,QAATf,EACjB,gBAAiBU,EAAKG,OAAOE,MAG/BC,EAAmC,CACrCX,MAAOJ,EAAKK,IAAI,mBAChBC,MAAO,SACPC,UAAW,CACPC,GAAIC,EAAKC,SAASM,GAClB,gBAA0B,WAATjB,EACjB,gBAAiBU,EAAKG,OAAOI,KAI/BC,EAAsBnB,EAAKoB,OAAS,EACpCC,EAAqBC,IAAa,EAAI,EACtCC,EAA0B,IAAIC,MAAM,GAAGC,KAAKN,EAAsBd,EAAeU,GAEvF,OADAQ,EAAwBF,GAAsBJ,EACvCM,CAAAA,GACR,CAACvB,EAAMC,GACd"}
@@ -0,0 +1,2 @@
1
+ import{createElement as e}from"../../../../../external/preact/dist/preact.js";import t from"../../../../../external/classnames/index.js";import a from"../../../../Dropin/components/PaymentMethod/PaymentMethodIcon.js";import i from"../../../../internal/ExpandButton/ExpandButton.js";const p=({app:p,imgSrc:n,isSelected:c,onSelect:o=()=>{},children:d})=>{const s=`adyen-checkout-upi-app-item-button-${p.id}`,m=`adyen-checkout-upi-app-${p.id}`;return e("li",{className:t({"adyen-checkout-upi-app-item":!0,"adyen-checkout-upi-app-item--selected":c}),onClick:()=>(e=>{o(e)})(p)},e("div",{className:"adyen-checkout-upi-app-item-header"},e(i,{classNameModifiers:["upi-app-item"],buttonId:s,isSelected:c,expandContentId:m},e(a,{src:n,altDescription:p.name,type:p.id}),e("label",{className:"adyen-checkout-upi-app-item__label",htmlFor:s},p.name))),c&&d&&e("div",{className:"adyen-checkout-upi-app-item-details",id:m},d))};export{p as default};
2
+ //# sourceMappingURL=UPIIntentAppItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UPIIntentAppItem.js","sources":["../../../../../../../src/components/UPI/components/UPIIntentAppList/UPIIntentAppItem/UPIIntentAppItem.tsx"],"sourcesContent":["import { ComponentChildren, h } from 'preact';\nimport cx from 'classnames';\nimport { App } from '../../../types';\nimport PaymentMethodIcon from '../../../../Dropin/components/PaymentMethod/PaymentMethodIcon';\nimport ExpandButton from '../../../../internal/ExpandButton';\nimport './UPIIntentAppItem.scss';\n\ninterface UPIIntentAppItemProps {\n app: App;\n imgSrc: string;\n isSelected: boolean;\n onSelect?: Function;\n children?: ComponentChildren;\n}\n\nconst UPIIntentAppItem = ({ app, imgSrc, isSelected, onSelect = () => {}, children }: UPIIntentAppItemProps): h.JSX.Element => {\n const buttonId = `adyen-checkout-upi-app-item-button-${app.id}`;\n const containerId = `adyen-checkout-upi-app-${app.id}`;\n const handleAppSelected = (app: App) => {\n onSelect(app);\n };\n\n return (\n // eslint-disable-next-line jsx-a11y/click-events-have-key-events,jsx-a11y/no-noninteractive-element-interactions\n <li\n className={cx({\n 'adyen-checkout-upi-app-item': true,\n 'adyen-checkout-upi-app-item--selected': isSelected\n })}\n onClick={() => handleAppSelected(app)}\n >\n <div className=\"adyen-checkout-upi-app-item-header\">\n <ExpandButton classNameModifiers={['upi-app-item']} buttonId={buttonId} isSelected={isSelected} expandContentId={containerId}>\n <PaymentMethodIcon src={imgSrc} altDescription={app.name} type={app.id}></PaymentMethodIcon>\n <label className=\"adyen-checkout-upi-app-item__label\" htmlFor={buttonId}>\n {app.name}\n </label>\n </ExpandButton>\n </div>\n {isSelected && children && (\n <div className=\"adyen-checkout-upi-app-item-details\" id={containerId}>\n {children}\n </div>\n )}\n </li>\n );\n};\n\nexport default UPIIntentAppItem;\n"],"names":["UPIIntentAppItem","app","imgSrc","isSelected","onSelect","children","buttonId","id","containerId","h","li","className","cx","onClick","handleAppSelected","div","ExpandButton","classNameModifiers","expandContentId","PaymentMethodIcon","src","altDescription","name","type","label","htmlFor"],"mappings":"0RAeA,MAAMA,EAAmB,EAAGC,MAAKC,SAAQC,aAAYC,WAAW,OAAUC,eACtE,MAAMC,EAAW,sCAAsCL,EAAIM,KACrDC,EAAc,0BAA0BP,EAAIM,KAKlD,OAEIE,EAACC,KAAAA,CACGC,UAAWC,EAAG,CACV,+BAA+B,EAC/B,wCAAyCT,IAE7CU,QAAS,IAXS,CAACZ,IACvBG,EAASH,EAAAA,EAUUa,CAAkBb,IAEjCQ,EAACM,MAAAA,CAAIJ,UAAU,sCACXF,EAACO,EAAAA,CAAaC,mBAAoB,CAAC,gBAAiBX,SAAUA,EAAUH,WAAYA,EAAYe,gBAAiBV,GAC7GC,EAACU,EAAAA,CAAkBC,IAAKlB,EAAQmB,eAAgBpB,EAAIqB,KAAMC,KAAMtB,EAAIM,KACpEE,EAACe,QAAAA,CAAMb,UAAU,qCAAqCc,QAASnB,GAC1DL,EAAIqB,QAIhBnB,GAAcE,GACXI,EAACM,MAAAA,CAAIJ,UAAU,sCAAsCJ,GAAIC,GACpDH,GAAAA"}
@@ -0,0 +1,2 @@
1
+ import{createElement as e}from"../../../../external/preact/dist/preact.js";import t from"../../../../external/classnames/index.js";import p from"./UPIIntentAppItem/UPIIntentAppItem.js";import a from"../VpaInput/VpaInput.js";import o from"../../../../core/Context/useImage.js";import{useCoreContext as r}from"../../../../core/Context/CoreProvider.js";const n=({apps:n,selectedAppId:i,disabled:s,onAppSelect:d=()=>{},onVpaInputChange:l=()=>{},onSetInputHandlers:m=()=>{}})=>{const{i18n:c}=r(),u=o();return e("ul",{className:t({"adyen-checkout-upi-app-list":!0,"adyen-checkout-upi-app-list--loading":s}),role:"radiogroup","aria-label":c.get("paymentMethodsList.aria.label"),required:!0},n.map((t=>{const o=`adyen-checkout-upi-app-item-${t.id}}`,r=i===t.id,n="vpa"===t.id,c=n?"upi":`upi/${t.id}`,I=u()(c.toLowerCase());return e(p,{key:o,app:t,imgSrc:I,isSelected:r,onSelect:d},n&&e(a,{disabled:s,onChange:l,onSetInputHandlers:m}))})))};export{n as default};
2
+ //# sourceMappingURL=UPIIntentAppList.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UPIIntentAppList.js","sources":["../../../../../../src/components/UPI/components/UPIIntentAppList/UPIIntentAppList.tsx"],"sourcesContent":["import { h } from 'preact';\nimport classNames from 'classnames';\nimport { App } from '../../types';\nimport UPIIntentAppItem from './UPIIntentAppItem';\nimport VpaInput from '../VpaInput';\nimport { OnChangeProps, VpaInputHandlers } from '../VpaInput/VpaInput';\nimport useImage from '../../../../core/Context/useImage';\nimport './UPIIntentAppList.scss';\nimport { useCoreContext } from '../../../../core/Context/CoreProvider';\n\ninterface UPIIntentAppListProps {\n apps: Array<App>;\n selectedAppId?: string;\n disabled?: boolean;\n onAppSelect?: Function;\n onVpaInputChange?({ data, valid, errors, isValid }: OnChangeProps): void;\n onSetInputHandlers?(handlers: VpaInputHandlers): void;\n}\n\nconst UPIIntentAppList = ({\n apps,\n selectedAppId,\n disabled,\n onAppSelect = () => {},\n onVpaInputChange = () => {},\n onSetInputHandlers = () => {}\n}: UPIIntentAppListProps): h.JSX.Element => {\n const { i18n } = useCoreContext();\n const getImage = useImage();\n\n return (\n /* eslint-disable jsx-a11y/no-noninteractive-element-to-interactive-role */\n <ul\n className={classNames({\n 'adyen-checkout-upi-app-list': true,\n 'adyen-checkout-upi-app-list--loading': disabled\n })}\n role=\"radiogroup\"\n aria-label={i18n.get('paymentMethodsList.aria.label')}\n required\n >\n {apps.map(app => {\n const key = `adyen-checkout-upi-app-item-${app.id}}`;\n const isSelected = selectedAppId === app.id;\n\n const showUpiCollectInput = app.id === 'vpa';\n const imgName = showUpiCollectInput ? 'upi' : `upi/${app.id}`;\n const imgSrc = getImage()(imgName.toLowerCase());\n\n return (\n <UPIIntentAppItem key={key} app={app} imgSrc={imgSrc} isSelected={isSelected} onSelect={onAppSelect}>\n {showUpiCollectInput && <VpaInput disabled={disabled} onChange={onVpaInputChange} onSetInputHandlers={onSetInputHandlers} />}\n </UPIIntentAppItem>\n );\n })}\n </ul>\n );\n};\n\nexport default UPIIntentAppList;\n"],"names":["UPIIntentAppList","apps","selectedAppId","disabled","onAppSelect","onVpaInputChange","onSetInputHandlers","i18n","useCoreContext","getImage","useImage","h","ul","className","classNames","role","aria-label","get","required","map","app","key","id","isSelected","showUpiCollectInput","imgName","imgSrc","toLowerCase","UPIIntentAppItem","onSelect","VpaInput","onChange"],"mappings":"8VAmBMA,MAAAA,EAAmB,EACrBC,OACAC,gBACAC,WACAC,cAAc,OACdC,mBAAmB,OACnBC,qBAAqB,WAErB,MAAMC,KAAEA,GAASC,IACXC,EAAWC,IAEjB,OAEIC,EAACC,KAAAA,CACGC,UAAWC,EAAW,CAClB,+BAA+B,EAC/B,uCAAwCX,IAE5CY,KAAK,aACLC,aAAYT,EAAKU,IAAI,iCACrBC,UAAAA,GAECjB,EAAKkB,KAAIC,IACN,MAAMC,EAAM,+BAA+BD,EAAIE,MACzCC,EAAarB,IAAkBkB,EAAIE,GAEnCE,EAAiC,QAAXJ,EAAIE,GAC1BG,EAAUD,EAAsB,MAAQ,OAAOJ,EAAIE,KACnDI,EAASjB,IAAWgB,EAAQE,eAElC,OACIhB,EAACiB,EAAAA,CAAiBP,IAAKA,EAAKD,IAAKA,EAAKM,OAAQA,EAAQH,WAAYA,EAAYM,SAAUzB,GACnFoB,GAAuBb,EAACmB,EAAAA,CAAS3B,SAAUA,EAAU4B,SAAU1B,EAAkBC,mBAAoBA,QAGlH"}
@@ -1,2 +1,2 @@
1
- import{createElement as e}from"../../../../external/preact/dist/preact.js";import{useRef as a,useCallback as r,useEffect as t}from"../../../../external/preact/hooks/dist/hooks.js";import s from"../../../internal/FormFields/Field/Field.js";import l from"../../../../utils/useForm/useForm.js";import{vpaValidationRules as d}from"./validate.js";import n from"../../../internal/FormFields/InputText.js";const i=i=>{const{handleChangeFor:o,triggerValidation:u,data:m,valid:p,errors:c,isValid:f}=l({schema:["virtualPaymentAddress"],defaultData:i.data,rules:d}),v=a({validateInput:null}),F=r((()=>{u()}),[u]);return t((()=>{v.current.validateInput=F,i.onSetInputHandlers(v.current)}),[F,i.onSetInputHandlers]),t((()=>{i.onChange({data:m,valid:p,errors:c,isValid:f})}),[m,p,c,f]),e(s,{label:"Virtual Payment Address",errorMessage:!!c.virtualPaymentAddress,classNameModifiers:["vpa"],name:"virtualPaymentAddress"},e(n,{name:"virtualPaymentAddress",autocorrect:"off",spellcheck:!1,disabled:i.disabled,value:m.virtualPaymentAddress,onInput:o("virtualPaymentAddress","input"),onBlur:o("virtualPaymentAddress","blur")}))};export{i as default};
1
+ import{createElement as e}from"../../../../external/preact/dist/preact.js";import{useRef as r,useCallback as a,useEffect as t}from"../../../../external/preact/hooks/dist/hooks.js";import{vpaValidationRules as s}from"./validate.js";import l from"../../../internal/FormFields/InputText.js";import{useCoreContext as i}from"../../../../core/Context/CoreProvider.js";import o from"../../../../utils/useForm/useForm.js";import d from"../../../internal/FormFields/Field/Field.js";const n=n=>{const{i18n:u}=i(),{handleChangeFor:m,triggerValidation:p,data:c,valid:f,errors:v,isValid:F}=o({schema:["virtualPaymentAddress"],defaultData:n.data,rules:s}),P=r({validateInput:null}),h=a((()=>{p()}),[p]);return t((()=>{P.current.validateInput=h,n.onSetInputHandlers(P.current)}),[h,n.onSetInputHandlers]),t((()=>{n.onChange({data:c,valid:f,errors:v,isValid:F})}),[c,f,v,F]),e(d,{label:u.get("upi.collect.field.label"),errorMessage:!!v.virtualPaymentAddress,classNameModifiers:["vpa"],name:"virtualPaymentAddress"},e(l,{name:"virtualPaymentAddress",autocorrect:"off",spellcheck:!1,disabled:n.disabled,value:c.virtualPaymentAddress,onInput:m("virtualPaymentAddress","input"),onBlur:m("virtualPaymentAddress","blur")}))};export{n as default};
2
2
  //# sourceMappingURL=VpaInput.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"VpaInput.js","sources":["../../../../../../src/components/UPI/components/VpaInput/VpaInput.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { useCallback, useEffect, useRef } from 'preact/hooks';\nimport Field from '../../../internal/FormFields/Field';\nimport useForm from '../../../../utils/useForm';\nimport { vpaValidationRules } from './validate';\nimport './VpaInput.scss';\nimport InputText from '../../../internal/FormFields/InputText';\n\ntype OnChangeProps = { data: VpaInputDataState; valid; errors; isValid: boolean };\n\ninterface VpaInputProps {\n data?: {};\n disabled?: boolean;\n onChange({ data, valid, errors, isValid }: OnChangeProps): void;\n onSetInputHandlers(handlers: VpaInputHandlers): void;\n}\n\nexport interface VpaInputDataState {\n virtualPaymentAddress?: string;\n}\n\nexport type VpaInputHandlers = {\n validateInput(): void;\n};\n\nconst VpaInput = (props: VpaInputProps): h.JSX.Element => {\n const formSchema = ['virtualPaymentAddress'];\n const { handleChangeFor, triggerValidation, data, valid, errors, isValid } = useForm<VpaInputDataState>({\n schema: formSchema,\n defaultData: props.data,\n rules: vpaValidationRules\n });\n const vpaInputHandlersRef = useRef<VpaInputHandlers>({ validateInput: null });\n\n const validateInput = useCallback(() => {\n triggerValidation();\n }, [triggerValidation]);\n\n useEffect(() => {\n vpaInputHandlersRef.current.validateInput = validateInput;\n props.onSetInputHandlers(vpaInputHandlersRef.current);\n }, [validateInput, props.onSetInputHandlers]);\n\n useEffect(() => {\n props.onChange({ data, valid, errors, isValid });\n }, [data, valid, errors, isValid]);\n\n return (\n <Field\n label=\"Virtual Payment Address\"\n errorMessage={!!errors.virtualPaymentAddress}\n classNameModifiers={['vpa']}\n name=\"virtualPaymentAddress\"\n >\n <InputText\n name={'virtualPaymentAddress'}\n autocorrect={'off'}\n spellcheck={false}\n disabled={props.disabled}\n value={data.virtualPaymentAddress}\n onInput={handleChangeFor('virtualPaymentAddress', 'input')}\n onBlur={handleChangeFor('virtualPaymentAddress', 'blur')}\n />\n </Field>\n );\n};\n\nexport default VpaInput;\n"],"names":["VpaInput","props","handleChangeFor","triggerValidation","data","valid","errors","isValid","useForm","schema","defaultData","rules","vpaValidationRules","vpaInputHandlersRef","useRef","validateInput","useCallback","useEffect","current","onSetInputHandlers","onChange","h","Field","label","errorMessage","virtualPaymentAddress","classNameModifiers","name","InputText","autocorrect","spellcheck","disabled","value","onInput","onBlur"],"mappings":"+YAyBA,MAAMA,EAAYC,IACd,MACMC,gBAAEA,EAAeC,kBAAEA,EAAiBC,KAAEA,EAAIC,MAAEA,EAAKC,OAAEA,EAAMC,QAAEA,GAAYC,EAA2B,CACpGC,OAFe,CAAC,yBAGhBC,YAAaT,EAAMG,KACnBO,MAAOC,IAELC,EAAsBC,EAAyB,CAAEC,cAAe,OAEhEA,EAAgBC,GAAY,KAC9Bb,GAAAA,GACD,CAACA,IAWJ,OATAc,GAAU,KACNJ,EAAoBK,QAAQH,cAAgBA,EAC5Cd,EAAMkB,mBAAmBN,EAAoBK,QAAO,GACrD,CAACH,EAAed,EAAMkB,qBAEzBF,GAAU,KACNhB,EAAMmB,SAAS,CAAEhB,OAAMC,QAAOC,SAAQC,WAAQ,GAC/C,CAACH,EAAMC,EAAOC,EAAQC,IAGrBc,EAACC,EAAAA,CACGC,MAAM,0BACNC,eAAgBlB,EAAOmB,sBACvBC,mBAAoB,CAAC,OACrBC,KAAK,yBAELN,EAACO,EAAAA,CACGD,KAAM,wBACNE,YAAa,MACbC,YAAY,EACZC,SAAU9B,EAAM8B,SAChBC,MAAO5B,EAAKqB,sBACZQ,QAAS/B,EAAgB,wBAAyB,SAClDgC,OAAQhC,EAAgB,wBAAyB"}
1
+ {"version":3,"file":"VpaInput.js","sources":["../../../../../../src/components/UPI/components/VpaInput/VpaInput.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { useCallback, useEffect, useRef } from 'preact/hooks';\nimport { vpaValidationRules } from './validate';\nimport './VpaInput.scss';\nimport InputText from '../../../internal/FormFields/InputText';\nimport { useCoreContext } from '../../../../core/Context/CoreProvider';\nimport useForm from '../../../../utils/useForm';\nimport Field from '../../../internal/FormFields/Field';\n\nexport type OnChangeProps = { data: VpaInputDataState; valid; errors; isValid: boolean };\n\ninterface VpaInputProps {\n data?: {};\n disabled?: boolean;\n onChange({ data, valid, errors, isValid }: OnChangeProps): void;\n onSetInputHandlers(handlers: VpaInputHandlers): void;\n}\n\nexport interface VpaInputDataState {\n virtualPaymentAddress?: string;\n}\n\nexport type VpaInputHandlers = {\n validateInput(): void;\n};\n\nconst VpaInput = (props: VpaInputProps): h.JSX.Element => {\n const { i18n } = useCoreContext();\n const formSchema = ['virtualPaymentAddress'];\n const { handleChangeFor, triggerValidation, data, valid, errors, isValid } = useForm<VpaInputDataState>({\n schema: formSchema,\n defaultData: props.data,\n rules: vpaValidationRules\n });\n const vpaInputHandlersRef = useRef<VpaInputHandlers>({ validateInput: null });\n\n const validateInput = useCallback(() => {\n triggerValidation();\n }, [triggerValidation]);\n\n useEffect(() => {\n vpaInputHandlersRef.current.validateInput = validateInput;\n props.onSetInputHandlers(vpaInputHandlersRef.current);\n }, [validateInput, props.onSetInputHandlers]);\n\n useEffect(() => {\n props.onChange({ data, valid, errors, isValid });\n }, [data, valid, errors, isValid]);\n\n return (\n <Field\n label={i18n.get('upi.collect.field.label')}\n errorMessage={!!errors.virtualPaymentAddress}\n classNameModifiers={['vpa']}\n name=\"virtualPaymentAddress\"\n >\n <InputText\n name={'virtualPaymentAddress'}\n autocorrect={'off'}\n spellcheck={false}\n disabled={props.disabled}\n value={data.virtualPaymentAddress}\n onInput={handleChangeFor('virtualPaymentAddress', 'input')}\n onBlur={handleChangeFor('virtualPaymentAddress', 'blur')}\n />\n </Field>\n );\n};\n\nexport default VpaInput;\n"],"names":["VpaInput","props","i18n","useCoreContext","handleChangeFor","triggerValidation","data","valid","errors","isValid","useForm","schema","defaultData","rules","vpaValidationRules","vpaInputHandlersRef","useRef","validateInput","useCallback","useEffect","current","onSetInputHandlers","onChange","h","Field","label","get","errorMessage","virtualPaymentAddress","classNameModifiers","name","InputText","autocorrect","spellcheck","disabled","value","onInput","onBlur"],"mappings":"ydA0BA,MAAMA,EAAYC,IACd,MAAMC,KAAEA,GAASC,KAEXC,gBAAEA,EAAeC,kBAAEA,EAAiBC,KAAEA,EAAIC,MAAEA,EAAKC,OAAEA,EAAMC,QAAEA,GAAYC,EAA2B,CACpGC,OAFe,CAAC,yBAGhBC,YAAaX,EAAMK,KACnBO,MAAOC,IAELC,EAAsBC,EAAyB,CAAEC,cAAe,OAEhEA,EAAgBC,GAAY,KAC9Bb,GAAAA,GACD,CAACA,IAWJ,OATAc,GAAU,KACNJ,EAAoBK,QAAQH,cAAgBA,EAC5ChB,EAAMoB,mBAAmBN,EAAoBK,QAAO,GACrD,CAACH,EAAehB,EAAMoB,qBAEzBF,GAAU,KACNlB,EAAMqB,SAAS,CAAEhB,OAAMC,QAAOC,SAAQC,WAAQ,GAC/C,CAACH,EAAMC,EAAOC,EAAQC,IAGrBc,EAACC,EAAAA,CACGC,MAAOvB,EAAKwB,IAAI,2BAChBC,eAAgBnB,EAAOoB,sBACvBC,mBAAoB,CAAC,OACrBC,KAAK,yBAELP,EAACQ,EAAAA,CACGD,KAAM,wBACNE,YAAa,MACbC,YAAY,EACZC,SAAUjC,EAAMiC,SAChBC,MAAO7B,EAAKsB,sBACZQ,QAAShC,EAAgB,wBAAyB,SAClDiC,OAAQjC,EAAgB,wBAAyB"}
@@ -1,2 +1,2 @@
1
- import{TxVariants as a}from"./tx-variants.js";const o={[a.address]:"Address",[a.bankTransfer_IBAN]:"BankTransfer",[a.donation]:"Donation",[a.personal_details]:"PersonalDetails",[a.bcmc]:"Bancontact",[a.card]:"Card",[a.scheme]:"Card",[a.storedCard]:"Card",[a.customCard]:"CustomCard",[a.ach]:"Ach",[a.directdebit_GB]:"BacsDD",[a.sepadirectdebit]:"Sepa",[a.affirm]:"Affirm",[a.afterpay]:"AfterPay",[a.afterpay_default]:"AfterPay",[a.afterpay_b2b]:"AfterPayB2B",[a.atome]:"Atome",[a.facilypay_3x]:"FacilyPay3x",[a.facilypay_4x]:"FacilyPay4x",[a.facilypay_6x]:"FacilyPay6x",[a.facilypay_10x]:"FacilyPay10x",[a.facilypay_12x]:"FacilyPay12x",[a.ratepay]:"RatePay",[a.ratepay_directdebit]:"RatePayDirectDebit",[a.riverty]:"Riverty",[a.amazonpay]:"AmazonPay",[a.applepay]:"ApplePay",[a.cashapp]:"CashAppPay",[a.clicktopay]:"ClickToPay",[a.googlepay]:"GooglePay",[a.paypal]:"PayPal",[a.paywithgoogle]:"GooglePay",[a.boletobancario]:"Boleto",[a.boletobancario_itau]:"Boleto",[a.boletobancario_santander]:"Boleto",[a.doku]:"Doku",[a.doku_alfamart]:"Doku",[a.doku_permata_lite_atm]:"Doku",[a.doku_indomaret]:"Doku",[a.doku_atm_mandiri_va]:"Doku",[a.doku_sinarmas_va]:"Doku",[a.doku_mandiri_va]:"Doku",[a.doku_cimb_va]:"Doku",[a.doku_danamon_va]:"Doku",[a.doku_bri_va]:"Doku",[a.doku_bni_va]:"Doku",[a.doku_bca_va]:"Doku",[a.doku_wallet]:"Doku",[a.oxxo]:"Oxxo",[a.primeiropay_boleto]:"Boleto",[a.billdesk_online]:"BillDeskOnline",[a.billdesk_wallet]:"BillDeskWallet",[a.dotpay]:"Dotpay",[a.eps]:"Eps",[a.molpay_ebanking_fpx_MY]:"MolPayEBankingMY",[a.molpay_ebanking_TH]:"MolPayEBankingTH",[a.molpay_ebanking_VN]:"MolPayEBankingVN",[a.onlineBanking_CZ]:"OnlineBankingCZ",[a.onlinebanking_IN]:"OnlineBankingIN",[a.onlineBanking_PL]:"OnlineBankingPL",[a.onlineBanking_SK]:"OnlineBankingSK",[a.paybybank]:"PayByBank",[a.payu_IN_cashcard]:"PayuCashcard",[a.payu_IN_nb]:"PayuNetBanking",[a.wallet_IN]:"WalletINElement",[a.dragonpay_ebanking]:"Dragonpay",[a.dragonpay_otc_banking]:"Dragonpay",[a.dragonpay_otc_non_banking]:"Dragonpay",[a.dragonpay_otc_philippines]:"Dragonpay",[a.econtext_atm]:"Econtext",[a.econtext_online]:"Econtext",[a.econtext_seven_eleven]:"Econtext",[a.econtext_stores]:"Econtext",[a.giropay]:"Giropay",[a.multibanco]:"Multibanco",[a.redirect]:"Redirect",[a.twint]:"Twint",[a.vipps]:"Vipps",[a.trustly]:"Trustly",[a.klarna]:"Klarna",[a.klarna_account]:"Klarna",[a.klarna_paynow]:"Klarna",[a.klarna_b2b]:"Klarna",[a.bcmc_mobile]:"BcmcMobile",[a.bcmc_mobile_QR]:"BcmcMobile",[a.pix]:"Pix",[a.swish]:"Swish",[a.wechatpay]:"WeChat",[a.wechatpayQR]:"WeChat",[a.promptpay]:"PromptPay",[a.paynow]:"PayNow",[a.duitnow]:"Duitnow",[a.blik]:"Blik",[a.mbway]:"MBWay",[a.ancv]:"ANCV",[a.upi]:"UPI",[a.upi_qr]:"UPI",[a.upi_collect]:"UPI",[a.giftcard]:"Giftcard",[a.mealVoucher_FR_natixis]:"MealVoucherFR",[a.mealVoucher_FR_sodexo]:"MealVoucherFR",[a.mealVoucher_FR_groupeup]:"MealVoucherFR"};function n(a){return o[a]}export{n as default};
1
+ import{TxVariants as a}from"./tx-variants.js";const o={[a.address]:"Address",[a.bankTransfer_IBAN]:"BankTransfer",[a.donation]:"Donation",[a.personal_details]:"PersonalDetails",[a.bcmc]:"Bancontact",[a.card]:"Card",[a.scheme]:"Card",[a.storedCard]:"Card",[a.customCard]:"CustomCard",[a.ach]:"Ach",[a.directdebit_GB]:"BacsDD",[a.sepadirectdebit]:"Sepa",[a.affirm]:"Affirm",[a.afterpay]:"AfterPay",[a.afterpay_default]:"AfterPay",[a.afterpay_b2b]:"AfterPayB2B",[a.atome]:"Atome",[a.facilypay_3x]:"FacilyPay3x",[a.facilypay_4x]:"FacilyPay4x",[a.facilypay_6x]:"FacilyPay6x",[a.facilypay_10x]:"FacilyPay10x",[a.facilypay_12x]:"FacilyPay12x",[a.ratepay]:"RatePay",[a.ratepay_directdebit]:"RatePayDirectDebit",[a.riverty]:"Riverty",[a.amazonpay]:"AmazonPay",[a.applepay]:"ApplePay",[a.cashapp]:"CashAppPay",[a.clicktopay]:"ClickToPay",[a.googlepay]:"GooglePay",[a.paypal]:"PayPal",[a.paywithgoogle]:"GooglePay",[a.boletobancario]:"Boleto",[a.boletobancario_itau]:"Boleto",[a.boletobancario_santander]:"Boleto",[a.doku]:"Doku",[a.doku_alfamart]:"Doku",[a.doku_permata_lite_atm]:"Doku",[a.doku_indomaret]:"Doku",[a.doku_atm_mandiri_va]:"Doku",[a.doku_sinarmas_va]:"Doku",[a.doku_mandiri_va]:"Doku",[a.doku_cimb_va]:"Doku",[a.doku_danamon_va]:"Doku",[a.doku_bri_va]:"Doku",[a.doku_bni_va]:"Doku",[a.doku_bca_va]:"Doku",[a.doku_wallet]:"Doku",[a.oxxo]:"Oxxo",[a.primeiropay_boleto]:"Boleto",[a.billdesk_online]:"BillDeskOnline",[a.billdesk_wallet]:"BillDeskWallet",[a.dotpay]:"Dotpay",[a.eps]:"Eps",[a.molpay_ebanking_fpx_MY]:"MolPayEBankingMY",[a.molpay_ebanking_TH]:"MolPayEBankingTH",[a.molpay_ebanking_VN]:"MolPayEBankingVN",[a.onlineBanking_CZ]:"OnlineBankingCZ",[a.onlinebanking_IN]:"OnlineBankingIN",[a.onlineBanking_PL]:"OnlineBankingPL",[a.onlineBanking_SK]:"OnlineBankingSK",[a.paybybank]:"PayByBank",[a.payu_IN_cashcard]:"PayuCashcard",[a.payu_IN_nb]:"PayuNetBanking",[a.wallet_IN]:"WalletINElement",[a.dragonpay_ebanking]:"Dragonpay",[a.dragonpay_otc_banking]:"Dragonpay",[a.dragonpay_otc_non_banking]:"Dragonpay",[a.dragonpay_otc_philippines]:"Dragonpay",[a.econtext_atm]:"Econtext",[a.econtext_online]:"Econtext",[a.econtext_seven_eleven]:"Econtext",[a.econtext_stores]:"Econtext",[a.giropay]:"Giropay",[a.multibanco]:"Multibanco",[a.redirect]:"Redirect",[a.twint]:"Twint",[a.vipps]:"Vipps",[a.trustly]:"Trustly",[a.klarna]:"Klarna",[a.klarna_account]:"Klarna",[a.klarna_paynow]:"Klarna",[a.klarna_b2b]:"Klarna",[a.bcmc_mobile]:"BcmcMobile",[a.bcmc_mobile_QR]:"BcmcMobile",[a.pix]:"Pix",[a.swish]:"Swish",[a.wechatpay]:"WeChat",[a.wechatpayQR]:"WeChat",[a.promptpay]:"PromptPay",[a.paynow]:"PayNow",[a.duitnow]:"Duitnow",[a.blik]:"Blik",[a.mbway]:"MBWay",[a.ancv]:"ANCV",[a.upi]:"UPI",[a.upi_qr]:"UPI",[a.upi_collect]:"UPI",[a.upi_intent]:"UPI",[a.giftcard]:"Giftcard",[a.mealVoucher_FR_natixis]:"MealVoucherFR",[a.mealVoucher_FR_sodexo]:"MealVoucherFR",[a.mealVoucher_FR_groupeup]:"MealVoucherFR"};function n(a){return o[a]}export{n as default};
2
2
  //# sourceMappingURL=components-name-map.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"components-name-map.js","sources":["../../../src/components/components-name-map.ts"],"sourcesContent":["import { TxVariants } from './tx-variants';\n\n/**\n * Maps each payment type with the string name of its Component element.\n *\n * It is used to give nicer error messages when creating components using Drop-in.\n * Example: paymentMethods response contains blik, but Blik component is not configured. So it warns that 'Blik' must be imported and added to the Drop-in configuration.\n */\nconst ComponentsNameMap = {\n /** internal */\n [TxVariants.address]: 'Address',\n [TxVariants.bankTransfer_IBAN]: 'BankTransfer',\n [TxVariants.donation]: 'Donation',\n [TxVariants.personal_details]: 'PersonalDetails',\n /** internal */\n\n /** Card */\n [TxVariants.bcmc]: 'Bancontact',\n [TxVariants.card]: 'Card',\n [TxVariants.scheme]: 'Card',\n [TxVariants.storedCard]: 'Card',\n [TxVariants.customCard]: 'CustomCard',\n /** Card */\n\n /** Direct debit */\n [TxVariants.ach]: 'Ach',\n [TxVariants.directdebit_GB]: 'BacsDD',\n [TxVariants.sepadirectdebit]: 'Sepa',\n /** Direct debit */\n\n /** Open Invoice */\n [TxVariants.affirm]: 'Affirm',\n [TxVariants.afterpay]: 'AfterPay',\n [TxVariants.afterpay_default]: 'AfterPay',\n [TxVariants.afterpay_b2b]: 'AfterPayB2B',\n [TxVariants.atome]: 'Atome',\n [TxVariants.facilypay_3x]: 'FacilyPay3x',\n [TxVariants.facilypay_4x]: 'FacilyPay4x',\n [TxVariants.facilypay_6x]: 'FacilyPay6x',\n [TxVariants.facilypay_10x]: 'FacilyPay10x',\n [TxVariants.facilypay_12x]: 'FacilyPay12x',\n [TxVariants.ratepay]: 'RatePay',\n [TxVariants.ratepay_directdebit]: 'RatePayDirectDebit',\n [TxVariants.riverty]: 'Riverty',\n /** Open Invoice */\n\n /** Wallets */\n [TxVariants.amazonpay]: 'AmazonPay',\n [TxVariants.applepay]: 'ApplePay',\n [TxVariants.cashapp]: 'CashAppPay',\n [TxVariants.clicktopay]: 'ClickToPay',\n [TxVariants.googlepay]: 'GooglePay',\n [TxVariants.paypal]: 'PayPal',\n [TxVariants.paywithgoogle]: 'GooglePay',\n /** Wallets */\n\n /** Voucher */\n [TxVariants.boletobancario]: 'Boleto',\n [TxVariants.boletobancario_itau]: 'Boleto',\n [TxVariants.boletobancario_santander]: 'Boleto',\n [TxVariants.doku]: 'Doku',\n [TxVariants.doku_alfamart]: 'Doku',\n [TxVariants.doku_permata_lite_atm]: 'Doku',\n [TxVariants.doku_indomaret]: 'Doku',\n [TxVariants.doku_atm_mandiri_va]: 'Doku',\n [TxVariants.doku_sinarmas_va]: 'Doku',\n [TxVariants.doku_mandiri_va]: 'Doku',\n [TxVariants.doku_cimb_va]: 'Doku',\n [TxVariants.doku_danamon_va]: 'Doku',\n [TxVariants.doku_bri_va]: 'Doku',\n [TxVariants.doku_bni_va]: 'Doku',\n [TxVariants.doku_bca_va]: 'Doku',\n [TxVariants.doku_wallet]: 'Doku',\n [TxVariants.oxxo]: 'Oxxo',\n [TxVariants.primeiropay_boleto]: 'Boleto',\n /** Voucher */\n\n /** issuerList */\n [TxVariants.billdesk_online]: 'BillDeskOnline',\n [TxVariants.billdesk_wallet]: 'BillDeskWallet',\n [TxVariants.dotpay]: 'Dotpay',\n [TxVariants.eps]: 'Eps',\n [TxVariants.molpay_ebanking_fpx_MY]: 'MolPayEBankingMY',\n [TxVariants.molpay_ebanking_TH]: 'MolPayEBankingTH',\n [TxVariants.molpay_ebanking_VN]: 'MolPayEBankingVN',\n [TxVariants.onlineBanking_CZ]: 'OnlineBankingCZ',\n [TxVariants.onlinebanking_IN]: 'OnlineBankingIN', // NOTE: the txVariant does have a lowercase \"b\"\n [TxVariants.onlineBanking_PL]: 'OnlineBankingPL',\n [TxVariants.onlineBanking_SK]: 'OnlineBankingSK',\n [TxVariants.paybybank]: 'PayByBank',\n [TxVariants.payu_IN_cashcard]: 'PayuCashcard',\n [TxVariants.payu_IN_nb]: 'PayuNetBanking',\n [TxVariants.wallet_IN]: 'WalletINElement',\n /** issuerList */\n\n /** Dragonpay */\n [TxVariants.dragonpay_ebanking]: 'Dragonpay',\n [TxVariants.dragonpay_otc_banking]: 'Dragonpay',\n [TxVariants.dragonpay_otc_non_banking]: 'Dragonpay',\n [TxVariants.dragonpay_otc_philippines]: 'Dragonpay',\n /** Dragonpay */\n\n /** Econtext */\n [TxVariants.econtext_atm]: 'Econtext',\n [TxVariants.econtext_online]: 'Econtext',\n [TxVariants.econtext_seven_eleven]: 'Econtext',\n [TxVariants.econtext_stores]: 'Econtext',\n /** Econtext */\n\n /** Redirect */\n [TxVariants.giropay]: 'Giropay',\n [TxVariants.multibanco]: 'Multibanco',\n [TxVariants.redirect]: 'Redirect',\n [TxVariants.twint]: 'Twint',\n [TxVariants.vipps]: 'Vipps',\n [TxVariants.trustly]: 'Trustly',\n /** Redirect */\n\n /** Klarna */\n [TxVariants.klarna]: 'Klarna',\n [TxVariants.klarna_account]: 'Klarna',\n [TxVariants.klarna_paynow]: 'Klarna',\n [TxVariants.klarna_b2b]: 'Klarna',\n /** Klarna */\n\n /** QRLoader */\n [TxVariants.bcmc_mobile]: 'BcmcMobile',\n [TxVariants.bcmc_mobile_QR]: 'BcmcMobile',\n [TxVariants.pix]: 'Pix',\n [TxVariants.swish]: 'Swish',\n [TxVariants.wechatpay]: 'WeChat',\n [TxVariants.wechatpayQR]: 'WeChat',\n [TxVariants.promptpay]: 'PromptPay',\n [TxVariants.paynow]: 'PayNow',\n [TxVariants.duitnow]: 'Duitnow',\n /** QRLoader */\n\n /** Await */\n [TxVariants.blik]: 'Blik',\n [TxVariants.mbway]: 'MBWay',\n [TxVariants.ancv]: 'ANCV',\n [TxVariants.upi]: 'UPI', // also QR\n [TxVariants.upi_qr]: 'UPI', // also QR\n [TxVariants.upi_collect]: 'UPI', // also QR\n /** Await */\n\n /** Giftcard */\n [TxVariants.giftcard]: 'Giftcard',\n [TxVariants.mealVoucher_FR_natixis]: 'MealVoucherFR',\n [TxVariants.mealVoucher_FR_sodexo]: 'MealVoucherFR',\n [TxVariants.mealVoucher_FR_groupeup]: 'MealVoucherFR'\n /** Giftcard */\n};\n\n/**\n * Returns the Component name based on the payment type\n * @param paymentType\n */\nfunction getComponentNameOfPaymentType(paymentType: string): string {\n return ComponentsNameMap[paymentType];\n}\n\nexport default getComponentNameOfPaymentType;\n"],"names":["ComponentsNameMap","TxVariants","address","bankTransfer_IBAN","donation","personal_details","bcmc","card","scheme","storedCard","customCard","ach","directdebit_GB","sepadirectdebit","affirm","afterpay","afterpay_default","afterpay_b2b","atome","facilypay_3x","facilypay_4x","facilypay_6x","facilypay_10x","facilypay_12x","ratepay","ratepay_directdebit","riverty","amazonpay","applepay","cashapp","clicktopay","googlepay","paypal","paywithgoogle","boletobancario","boletobancario_itau","boletobancario_santander","doku","doku_alfamart","doku_permata_lite_atm","doku_indomaret","doku_atm_mandiri_va","doku_sinarmas_va","doku_mandiri_va","doku_cimb_va","doku_danamon_va","doku_bri_va","doku_bni_va","doku_bca_va","doku_wallet","oxxo","primeiropay_boleto","billdesk_online","billdesk_wallet","dotpay","eps","molpay_ebanking_fpx_MY","molpay_ebanking_TH","molpay_ebanking_VN","onlineBanking_CZ","onlinebanking_IN","onlineBanking_PL","onlineBanking_SK","paybybank","payu_IN_cashcard","payu_IN_nb","wallet_IN","dragonpay_ebanking","dragonpay_otc_banking","dragonpay_otc_non_banking","dragonpay_otc_philippines","econtext_atm","econtext_online","econtext_seven_eleven","econtext_stores","giropay","multibanco","redirect","twint","vipps","trustly","klarna","klarna_account","klarna_paynow","klarna_b2b","bcmc_mobile","bcmc_mobile_QR","pix","swish","wechatpay","wechatpayQR","promptpay","paynow","duitnow","blik","mbway","ancv","upi","upi_qr","upi_collect","giftcard","mealVoucher_FR_natixis","mealVoucher_FR_sodexo","mealVoucher_FR_groupeup","getComponentNameOfPaymentType","paymentType"],"mappings":"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"}
1
+ {"version":3,"file":"components-name-map.js","sources":["../../../src/components/components-name-map.ts"],"sourcesContent":["import { TxVariants } from './tx-variants';\n\n/**\n * Maps each payment type with the string name of its Component element.\n *\n * It is used to give nicer error messages when creating components using Drop-in.\n * Example: paymentMethods response contains blik, but Blik component is not configured. So it warns that 'Blik' must be imported and added to the Drop-in configuration.\n */\nconst ComponentsNameMap = {\n /** internal */\n [TxVariants.address]: 'Address',\n [TxVariants.bankTransfer_IBAN]: 'BankTransfer',\n [TxVariants.donation]: 'Donation',\n [TxVariants.personal_details]: 'PersonalDetails',\n /** internal */\n\n /** Card */\n [TxVariants.bcmc]: 'Bancontact',\n [TxVariants.card]: 'Card',\n [TxVariants.scheme]: 'Card',\n [TxVariants.storedCard]: 'Card',\n [TxVariants.customCard]: 'CustomCard',\n /** Card */\n\n /** Direct debit */\n [TxVariants.ach]: 'Ach',\n [TxVariants.directdebit_GB]: 'BacsDD',\n [TxVariants.sepadirectdebit]: 'Sepa',\n /** Direct debit */\n\n /** Open Invoice */\n [TxVariants.affirm]: 'Affirm',\n [TxVariants.afterpay]: 'AfterPay',\n [TxVariants.afterpay_default]: 'AfterPay',\n [TxVariants.afterpay_b2b]: 'AfterPayB2B',\n [TxVariants.atome]: 'Atome',\n [TxVariants.facilypay_3x]: 'FacilyPay3x',\n [TxVariants.facilypay_4x]: 'FacilyPay4x',\n [TxVariants.facilypay_6x]: 'FacilyPay6x',\n [TxVariants.facilypay_10x]: 'FacilyPay10x',\n [TxVariants.facilypay_12x]: 'FacilyPay12x',\n [TxVariants.ratepay]: 'RatePay',\n [TxVariants.ratepay_directdebit]: 'RatePayDirectDebit',\n [TxVariants.riverty]: 'Riverty',\n /** Open Invoice */\n\n /** Wallets */\n [TxVariants.amazonpay]: 'AmazonPay',\n [TxVariants.applepay]: 'ApplePay',\n [TxVariants.cashapp]: 'CashAppPay',\n [TxVariants.clicktopay]: 'ClickToPay',\n [TxVariants.googlepay]: 'GooglePay',\n [TxVariants.paypal]: 'PayPal',\n [TxVariants.paywithgoogle]: 'GooglePay',\n /** Wallets */\n\n /** Voucher */\n [TxVariants.boletobancario]: 'Boleto',\n [TxVariants.boletobancario_itau]: 'Boleto',\n [TxVariants.boletobancario_santander]: 'Boleto',\n [TxVariants.doku]: 'Doku',\n [TxVariants.doku_alfamart]: 'Doku',\n [TxVariants.doku_permata_lite_atm]: 'Doku',\n [TxVariants.doku_indomaret]: 'Doku',\n [TxVariants.doku_atm_mandiri_va]: 'Doku',\n [TxVariants.doku_sinarmas_va]: 'Doku',\n [TxVariants.doku_mandiri_va]: 'Doku',\n [TxVariants.doku_cimb_va]: 'Doku',\n [TxVariants.doku_danamon_va]: 'Doku',\n [TxVariants.doku_bri_va]: 'Doku',\n [TxVariants.doku_bni_va]: 'Doku',\n [TxVariants.doku_bca_va]: 'Doku',\n [TxVariants.doku_wallet]: 'Doku',\n [TxVariants.oxxo]: 'Oxxo',\n [TxVariants.primeiropay_boleto]: 'Boleto',\n /** Voucher */\n\n /** issuerList */\n [TxVariants.billdesk_online]: 'BillDeskOnline',\n [TxVariants.billdesk_wallet]: 'BillDeskWallet',\n [TxVariants.dotpay]: 'Dotpay',\n [TxVariants.eps]: 'Eps',\n [TxVariants.molpay_ebanking_fpx_MY]: 'MolPayEBankingMY',\n [TxVariants.molpay_ebanking_TH]: 'MolPayEBankingTH',\n [TxVariants.molpay_ebanking_VN]: 'MolPayEBankingVN',\n [TxVariants.onlineBanking_CZ]: 'OnlineBankingCZ',\n [TxVariants.onlinebanking_IN]: 'OnlineBankingIN', // NOTE: the txVariant does have a lowercase \"b\"\n [TxVariants.onlineBanking_PL]: 'OnlineBankingPL',\n [TxVariants.onlineBanking_SK]: 'OnlineBankingSK',\n [TxVariants.paybybank]: 'PayByBank',\n [TxVariants.payu_IN_cashcard]: 'PayuCashcard',\n [TxVariants.payu_IN_nb]: 'PayuNetBanking',\n [TxVariants.wallet_IN]: 'WalletINElement',\n /** issuerList */\n\n /** Dragonpay */\n [TxVariants.dragonpay_ebanking]: 'Dragonpay',\n [TxVariants.dragonpay_otc_banking]: 'Dragonpay',\n [TxVariants.dragonpay_otc_non_banking]: 'Dragonpay',\n [TxVariants.dragonpay_otc_philippines]: 'Dragonpay',\n /** Dragonpay */\n\n /** Econtext */\n [TxVariants.econtext_atm]: 'Econtext',\n [TxVariants.econtext_online]: 'Econtext',\n [TxVariants.econtext_seven_eleven]: 'Econtext',\n [TxVariants.econtext_stores]: 'Econtext',\n /** Econtext */\n\n /** Redirect */\n [TxVariants.giropay]: 'Giropay',\n [TxVariants.multibanco]: 'Multibanco',\n [TxVariants.redirect]: 'Redirect',\n [TxVariants.twint]: 'Twint',\n [TxVariants.vipps]: 'Vipps',\n [TxVariants.trustly]: 'Trustly',\n /** Redirect */\n\n /** Klarna */\n [TxVariants.klarna]: 'Klarna',\n [TxVariants.klarna_account]: 'Klarna',\n [TxVariants.klarna_paynow]: 'Klarna',\n [TxVariants.klarna_b2b]: 'Klarna',\n /** Klarna */\n\n /** QRLoader */\n [TxVariants.bcmc_mobile]: 'BcmcMobile',\n [TxVariants.bcmc_mobile_QR]: 'BcmcMobile',\n [TxVariants.pix]: 'Pix',\n [TxVariants.swish]: 'Swish',\n [TxVariants.wechatpay]: 'WeChat',\n [TxVariants.wechatpayQR]: 'WeChat',\n [TxVariants.promptpay]: 'PromptPay',\n [TxVariants.paynow]: 'PayNow',\n [TxVariants.duitnow]: 'Duitnow',\n /** QRLoader */\n\n /** Await */\n [TxVariants.blik]: 'Blik',\n [TxVariants.mbway]: 'MBWay',\n [TxVariants.ancv]: 'ANCV',\n [TxVariants.upi]: 'UPI', // also QR\n [TxVariants.upi_qr]: 'UPI', // also QR\n [TxVariants.upi_collect]: 'UPI', // also QR\n [TxVariants.upi_intent]: 'UPI',\n /** Await */\n\n /** Giftcard */\n [TxVariants.giftcard]: 'Giftcard',\n [TxVariants.mealVoucher_FR_natixis]: 'MealVoucherFR',\n [TxVariants.mealVoucher_FR_sodexo]: 'MealVoucherFR',\n [TxVariants.mealVoucher_FR_groupeup]: 'MealVoucherFR'\n /** Giftcard */\n};\n\n/**\n * Returns the Component name based on the payment type\n * @param paymentType\n */\nfunction getComponentNameOfPaymentType(paymentType: string): string {\n return ComponentsNameMap[paymentType];\n}\n\nexport default getComponentNameOfPaymentType;\n"],"names":["ComponentsNameMap","TxVariants","address","bankTransfer_IBAN","donation","personal_details","bcmc","card","scheme","storedCard","customCard","ach","directdebit_GB","sepadirectdebit","affirm","afterpay","afterpay_default","afterpay_b2b","atome","facilypay_3x","facilypay_4x","facilypay_6x","facilypay_10x","facilypay_12x","ratepay","ratepay_directdebit","riverty","amazonpay","applepay","cashapp","clicktopay","googlepay","paypal","paywithgoogle","boletobancario","boletobancario_itau","boletobancario_santander","doku","doku_alfamart","doku_permata_lite_atm","doku_indomaret","doku_atm_mandiri_va","doku_sinarmas_va","doku_mandiri_va","doku_cimb_va","doku_danamon_va","doku_bri_va","doku_bni_va","doku_bca_va","doku_wallet","oxxo","primeiropay_boleto","billdesk_online","billdesk_wallet","dotpay","eps","molpay_ebanking_fpx_MY","molpay_ebanking_TH","molpay_ebanking_VN","onlineBanking_CZ","onlinebanking_IN","onlineBanking_PL","onlineBanking_SK","paybybank","payu_IN_cashcard","payu_IN_nb","wallet_IN","dragonpay_ebanking","dragonpay_otc_banking","dragonpay_otc_non_banking","dragonpay_otc_philippines","econtext_atm","econtext_online","econtext_seven_eleven","econtext_stores","giropay","multibanco","redirect","twint","vipps","trustly","klarna","klarna_account","klarna_paynow","klarna_b2b","bcmc_mobile","bcmc_mobile_QR","pix","swish","wechatpay","wechatpayQR","promptpay","paynow","duitnow","blik","mbway","ancv","upi","upi_qr","upi_collect","upi_intent","giftcard","mealVoucher_FR_natixis","mealVoucher_FR_sodexo","mealVoucher_FR_groupeup","getComponentNameOfPaymentType","paymentType"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{createElement as e,Fragment as t}from"../../../../external/preact/dist/preact.js";import a from"../../FormFields/Fieldset/Fieldset.js";import{FALLBACK_VALUE as r}from"../constants.js";const s=({firstName:a,lastName:r})=>e(t,null,a&&`${a} `,r&&`${r}`,e("br",null)),l=({data:t,label:l})=>{const{street:m,houseNumberOrName:o,city:i,postalCode:n,stateOrProvince:c,country:d,firstName:N,lastName:f}=t;return e(a,{classNameModifiers:[l],label:l,readonly:!0},(N||f)&&e(s,{firstName:N,lastName:f}),!!m&&m,o&&`, ${o},`,e("br",null),n&&`${n}`,i&&`, ${i}`,c&&c!==r&&`, ${c}`,d&&`, ${d} `)};export{l as default};
1
+ import{createElement as e,Fragment as t}from"../../../../external/preact/dist/preact.js";import a from"../../FormFields/Fieldset/Fieldset.js";import{FALLBACK_VALUE as r}from"../constants.js";const s=({firstName:a,lastName:r})=>e(t,null,a&&`${a} `,r&&`${r}`,e("br",null)),l=({data:l,label:m})=>{const{street:o,houseNumberOrName:n,city:i,postalCode:c,stateOrProvince:d,country:u,firstName:N,lastName:f}=l;return e(a,{classNameModifiers:[m],label:m,readonly:!0},e(t,null,(N||f)&&e(s,{firstName:N,lastName:f}),!!o&&o,n&&`, ${n},`,e("br",null),c&&`${c}`,i&&`, ${i}`,d&&d!==r&&`, ${d}`,u&&`, ${u} `))};export{l as default};
2
2
  //# sourceMappingURL=ReadOnlyAddress.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ReadOnlyAddress.js","sources":["../../../../../../src/components/internal/Address/components/ReadOnlyAddress.tsx"],"sourcesContent":["import { Fragment, h } from 'preact';\nimport Fieldset from '../../FormFields/Fieldset';\nimport { ReadOnlyAddressProps } from '../types';\nimport { FALLBACK_VALUE } from '../constants';\n\nconst FullName = ({ firstName, lastName }) => {\n return (\n <Fragment>\n {firstName && `${firstName} `}\n {lastName && `${lastName}`}\n <br />\n </Fragment>\n );\n};\n\nconst ReadOnlyAddress = ({ data, label }: ReadOnlyAddressProps) => {\n const { street, houseNumberOrName, city, postalCode, stateOrProvince, country, firstName, lastName } = data;\n const hasName = firstName || lastName;\n\n return (\n <Fieldset classNameModifiers={[label]} label={label} readonly>\n {hasName && <FullName firstName={firstName} lastName={lastName}></FullName>}\n {!!street && street}\n {houseNumberOrName && `, ${houseNumberOrName},`}\n <br />\n {postalCode && `${postalCode}`}\n {city && `, ${city}`}\n {stateOrProvince && stateOrProvince !== FALLBACK_VALUE && `, ${stateOrProvince}`}\n {country && `, ${country} `}\n </Fieldset>\n );\n};\n\nexport default ReadOnlyAddress;\n"],"names":["FullName","firstName","lastName","h","Fragment","br","ReadOnlyAddress","data","label","street","houseNumberOrName","city","postalCode","stateOrProvince","country","Fieldset","classNameModifiers","readonly","FALLBACK_VALUE"],"mappings":"+LAKA,MAAMA,EAAW,EAAGC,YAAWC,cAEvBC,EAACC,EAAAA,KACIH,GAAa,GAAGA,KAChBC,GAAY,GAAGA,IAChBC,EAACE,KAAAA,OAKPC,EAAkB,EAAGC,OAAMC,YAC7B,MAAMC,OAAEA,EAAMC,kBAAEA,EAAiBC,KAAEA,EAAIC,WAAEA,EAAUC,gBAAEA,EAAeC,QAAEA,EAAOb,UAAEA,EAASC,SAAEA,GAAaK,EAGvG,OACIJ,EAACY,EAAAA,CAASC,mBAAoB,CAACR,GAAQA,MAAOA,EAAOS,UAAAA,IAHzChB,GAAaC,IAITC,EAACH,EAAAA,CAASC,UAAWA,EAAWC,SAAUA,MACnDO,GAAUA,EACZC,GAAqB,KAAKA,KAC3BP,EAACE,KACAO,MAAAA,GAAc,GAAGA,IACjBD,GAAQ,KAAKA,IACbE,GAAmBA,IAAoBK,GAAkB,KAAKL,IAC9DC,GAAW,KAAKA,KAAU"}
1
+ {"version":3,"file":"ReadOnlyAddress.js","sources":["../../../../../../src/components/internal/Address/components/ReadOnlyAddress.tsx"],"sourcesContent":["import { Fragment, h } from 'preact';\nimport Fieldset from '../../FormFields/Fieldset';\nimport { ReadOnlyAddressProps } from '../types';\nimport { FALLBACK_VALUE } from '../constants';\n\nconst FullName = ({ firstName, lastName }) => {\n return (\n <Fragment>\n {firstName && `${firstName} `}\n {lastName && `${lastName}`}\n <br />\n </Fragment>\n );\n};\n\nconst ReadOnlyAddress = ({ data, label }: ReadOnlyAddressProps) => {\n const { street, houseNumberOrName, city, postalCode, stateOrProvince, country, firstName, lastName } = data;\n const hasName = firstName || lastName;\n\n return (\n <Fieldset classNameModifiers={[label]} label={label} readonly>\n <Fragment>\n {hasName && <FullName firstName={firstName} lastName={lastName}></FullName>}\n {!!street && street}\n {houseNumberOrName && `, ${houseNumberOrName},`}\n <br />\n {postalCode && `${postalCode}`}\n {city && `, ${city}`}\n {stateOrProvince && stateOrProvince !== FALLBACK_VALUE && `, ${stateOrProvince}`}\n {country && `, ${country} `}\n </Fragment>\n </Fieldset>\n );\n};\n\nexport default ReadOnlyAddress;\n"],"names":["FullName","firstName","lastName","h","Fragment","br","ReadOnlyAddress","data","label","street","houseNumberOrName","city","postalCode","stateOrProvince","country","Fieldset","classNameModifiers","readonly","FALLBACK_VALUE"],"mappings":"+LAKA,MAAMA,EAAW,EAAGC,YAAWC,cAEvBC,EAACC,EAAAA,KACIH,GAAa,GAAGA,KAChBC,GAAY,GAAGA,IAChBC,EAACE,KAAAA,OAKPC,EAAkB,EAAGC,OAAMC,YAC7B,MAAMC,OAAEA,EAAMC,kBAAEA,EAAiBC,KAAEA,EAAIC,WAAEA,EAAUC,gBAAEA,EAAeC,QAAEA,EAAOb,UAAEA,EAASC,SAAEA,GAAaK,EAGvG,OACIJ,EAACY,EAAAA,CAASC,mBAAoB,CAACR,GAAQA,MAAOA,EAAOS,UAAAA,GACjDd,EAACC,EAAAA,MAJOH,GAAaC,IAKLC,EAACH,EAAAA,CAASC,UAAWA,EAAWC,SAAUA,MACnDO,GAAUA,EACZC,GAAqB,KAAKA,KAC3BP,EAACE,KACAO,MAAAA,GAAc,GAAGA,IACjBD,GAAQ,KAAKA,IACbE,GAAmBA,IAAoBK,GAAkB,KAAKL,IAC9DC,GAAW,KAAKA,MAAU"}
@@ -1,2 +1,2 @@
1
- import{createElement as e}from"../../../external/preact/dist/preact.js";import{useState as t,useEffect as a}from"../../../external/preact/hooks/dist/hooks.js";import o from"../../../external/classnames/index.js";import r from"../../../core/Services/payment-status.js";import{processResponse as n}from"../../../core/ProcessResponse/process-response.js";import s from"../Spinner/Spinner.js";import i from"../Countdown/index.js";import c from"../Button/Button.js";import{useCoreContext as l}from"../../../core/Context/CoreProvider.js";import d from"../../../core/Errors/AdyenCheckoutError.js";import m from"../ContentSeparator/ContentSeparator.js";import p from"../../../core/Context/useImage.js";function u(u){const{i18n:_,loadingContext:y}=l(),w=p(),[h,f]=t(!1),[k,g]=t(!1),[N,v]=t(!0),[C,T]=t(!1),[b,x]=t(u.delay),[j,E]=t(100),[R,D]=t(0),[S,A]=t(!1),[I,L]=t(null),P=e=>{if(e.props.payload){f(!0);const t={data:{details:{payload:e.props.payload},paymentData:u.paymentData}};return u.onComplete(t,this)}g(!0),u.onError(new d("ERROR","successful result, but no payload in response"))},M=e=>{if(g(!0),e.props.payload){const t={data:{details:{payload:e.props.payload},paymentData:u.paymentData}};return u.onComplete(t,this)}u.onError(new d("ERROR","error result with no payload in response"))},O=()=>{const{paymentData:e,clientKey:t,throttleInterval:a}=u;C||(u.onActionHandled({componentType:u.type,actionDescription:"polling-started"}),T(!0)),r(e,t,y,a).then(n).catch((({message:e,...t})=>({type:"network-error",props:{...e&&{message:_.get(e)},...t}}))).then((e=>{switch(e.type){case"success":P(e);break;case"error":M(e);break;default:v(!1)}}))};a((()=>(O(),()=>{clearTimeout(I)})),[]),a((()=>{if(k)return clearTimeout(I);if(h)return clearTimeout(I);if(!N){L(setTimeout((()=>{O();const e=R+b;D(e),e>=u.throttleTime&&!S&&(x(u.throttleInterval),A(!0))}),b))}}),[N,k,h,R]);const $=(t,a)=>e("div",{className:"adyen-checkout__await adyen-checkout__await--result"},e("img",{className:"adyen-checkout__await__icon adyen-checkout__await__icon--result",src:w({imageFolder:"components/"})(t),alt:_.get(a)}),e("div",{className:"adyen-checkout__await__subtitle adyen-checkout__await__subtitle--result"},_.get(a)));if(k)return $("error","error.subtitle.payment");if(h)return $("success","creditCard.success");if(N)return e("div",{className:"adyen-checkout__await"},u.brandLogo&&e("img",{src:u.brandLogo,alt:u.type,className:"adyen-checkout__await__brand-logo"}),e(s,{inline:!1,size:"large"}));const z=_.get("wechatpay.timetopay").split("%@");return e("div",{className:o("adyen-checkout__await",`adyen-checkout__await--${u.type}`,u.classNameModifiers.map((e=>`adyen-checkout__await--${e}`)))},u.brandLogo&&e("img",{src:u.brandLogo,alt:u.type,className:"adyen-checkout__await__brand-logo"}),e("div",{className:"adyen-checkout__await__subtitle"},u.messageText),e("div",{className:"adyen-checkout__await__indicator-holder"},e("div",{className:"adyen-checkout__await__indicator-spinner"},e(s,{inline:!1,size:"medium"})),e("div",{className:"adyen-checkout__await__indicator-text"},u.awaitText)),u.showCountdownTimer&&e("div",{className:"adyen-checkout__await__countdown-holder"},e("div",{className:"adyen-checkout__await__progress"},e("span",{className:"adyen-checkout__await__percentage",style:{width:`${j}%`}})),e("div",{className:"adyen-checkout__await__countdown"},z[0]," ",e(i,{minutesFromNow:u.countdownTime,onTick:e=>{E(e.percentage)},onCompleted:()=>{g(!0),clearTimeout(I),u.onError(new d("ERROR","Payment Expired"))}})," ",z[1])),u.url&&e("div",{className:"adyen-checkout__await__app-link"},e(m,null),e(c,{classNameModifiers:["await"],onClick:()=>{return e=u.url,void window.location.assign(e);var e},label:_.get("openApp")})))}u.defaultProps={countdownTime:15,onError:()=>{},onComplete:()=>{},onActionHandled:()=>{},delay:2e3,throttleTime:6e4,throttleInterval:1e4,showCountdownTimer:!0,classNameModifiers:[],url:null};export{u as default};
1
+ import{createElement as e}from"../../../external/preact/dist/preact.js";import{useState as t,useEffect as a}from"../../../external/preact/hooks/dist/hooks.js";import o from"../../../external/classnames/index.js";import r from"../../../core/Services/payment-status.js";import{processResponse as n}from"../../../core/ProcessResponse/process-response.js";import s from"../Spinner/Spinner.js";import i from"../Countdown/index.js";import c from"../Button/Button.js";import{useCoreContext as l}from"../../../core/Context/CoreProvider.js";import d from"../../../core/Errors/AdyenCheckoutError.js";import m from"../ContentSeparator/ContentSeparator.js";import u from"../../../core/Context/useImage.js";function p(p){const{i18n:_,loadingContext:y}=l(),h=u(),[w,f]=t(!1),[k,g]=t(!1),[N,v]=t(!0),[C,T]=t(!1),[b,x]=t(p.delay),[R,j]=t(100),[E,A]=t(0),[D,S]=t(!1),[I,L]=t(null),P=e=>{if(e.props.payload){f(!0);const t={data:{details:{payload:e.props.payload},paymentData:p.paymentData}};return p.onComplete(t,this)}g(!0),p.onError(new d("ERROR","successful result, but no payload in response"))},M=e=>{if(g(!0),e.props.payload){const t={data:{details:{payload:e.props.payload},paymentData:p.paymentData}};return p.onComplete(t,this)}p.onError(new d("ERROR","error result with no payload in response"))},O=()=>{const{paymentData:e,clientKey:t,throttleInterval:a}=p;C||(p.onActionHandled({componentType:p.type,actionDescription:"polling-started"}),T(!0)),r(e,t,y,a).then(n).catch((({message:e,...t})=>({type:"network-error",props:{...e&&{message:_.get(e)},...t}}))).then((e=>{switch(e.type){case"success":P(e);break;case"error":M(e);break;default:v(!1)}}))},$=e=>{window.location.assign(e)};a((()=>{p.shouldRedirectAutomatically&&p.url&&$(p.url)}),[p.shouldRedirectAutomatically,p.url]),a((()=>(O(),()=>{clearTimeout(I)})),[]),a((()=>{if(k)return clearTimeout(I);if(w)return clearTimeout(I);if(!N){L(setTimeout((()=>{O();const e=E+b;A(e),e>=p.throttleTime&&!D&&(x(p.throttleInterval),S(!0))}),b))}}),[N,k,w,E]);const z=(t,a)=>e("div",{className:"adyen-checkout__await adyen-checkout__await--result"},e("img",{className:"adyen-checkout__await__icon adyen-checkout__await__icon--result",src:h({imageFolder:"components/"})(t),alt:_.get(a)}),e("div",{className:"adyen-checkout__await__subtitle adyen-checkout__await__subtitle--result"},_.get(a)));if(k)return z("error","error.subtitle.payment");if(w)return z("success","creditCard.success");if(N)return e("div",{className:"adyen-checkout__await"},p.brandLogo&&e("img",{src:p.brandLogo,alt:p.type,className:"adyen-checkout__await__brand-logo"}),e(s,{inline:!1,size:"large"}));const B=_.get("wechatpay.timetopay").split("%@");return e("div",{className:o("adyen-checkout__await",`adyen-checkout__await--${p.type}`,p.classNameModifiers.map((e=>`adyen-checkout__await--${e}`)))},p.brandLogo&&e("img",{src:p.brandLogo,alt:p.type,className:"adyen-checkout__await__brand-logo"}),e("div",{className:"adyen-checkout__await__subtitle"},p.messageText),e("div",{className:"adyen-checkout__await__indicator-holder"},e("div",{className:"adyen-checkout__await__indicator-spinner"},e(s,{inline:!1,size:"medium"})),e("div",{className:"adyen-checkout__await__indicator-text"},p.awaitText)),p.showCountdownTimer&&e("div",{className:"adyen-checkout__await__countdown-holder"},e("div",{className:"adyen-checkout__await__progress"},e("span",{className:"adyen-checkout__await__percentage",style:{width:`${R}%`}})),e("div",{className:"adyen-checkout__await__countdown"},B[0]," ",e(i,{minutesFromNow:p.countdownTime,onTick:e=>{j(e.percentage)},onCompleted:()=>{g(!0),clearTimeout(I),p.onError(new d("ERROR","Payment Expired"))}})," ",B[1])),p.url&&!p.shouldRedirectAutomatically&&e("div",{className:"adyen-checkout__await__app-link"},e(m,null),e(c,{classNameModifiers:["await"],onClick:()=>$(p.url),label:_.get("openApp")})))}p.defaultProps={countdownTime:15,onError:()=>{},onComplete:()=>{},onActionHandled:()=>{},delay:2e3,throttleTime:6e4,throttleInterval:1e4,showCountdownTimer:!0,classNameModifiers:[],url:null};export{p as default};
2
2
  //# sourceMappingURL=Await.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Await.js","sources":["../../../../../src/components/internal/Await/Await.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { useState, useEffect } from 'preact/hooks';\nimport classnames from 'classnames';\nimport checkPaymentStatus from '../../../core/Services/payment-status';\nimport processResponse from '../../../core/ProcessResponse';\n\nimport Spinner from '../../internal/Spinner';\nimport Countdown from '../Countdown';\nimport Button from '../Button';\nimport { useCoreContext } from '../../../core/Context/CoreProvider';\nimport { AwaitComponentProps, StatusObject } from './types';\nimport './Await.scss';\nimport AdyenCheckoutError from '../../../core/Errors/AdyenCheckoutError';\nimport ContentSeparator from '../ContentSeparator';\nimport useImage from '../../../core/Context/useImage';\n\nfunction Await(props: AwaitComponentProps) {\n const { i18n, loadingContext } = useCoreContext();\n const getImage = useImage();\n const [completed, setCompleted] = useState(false);\n const [expired, setExpired] = useState(false);\n const [loading, setLoading] = useState(true);\n const [hasCalledActionHandled, setHasCalledActionHandled] = useState(false);\n const [delay, setDelay] = useState(props.delay);\n const [percentage, setPercentage] = useState(100);\n const [timePassed, setTimePassed] = useState(0);\n const [hasAdjustedTime, setHasAdjustedTime] = useState(false);\n const [storedTimeout, setStoredTimeout] = useState(null);\n\n const onTimeUp = (): void => {\n setExpired(true);\n clearTimeout(storedTimeout);\n props.onError(new AdyenCheckoutError('ERROR', 'Payment Expired'));\n };\n\n const onTick = (time): void => {\n setPercentage(time.percentage);\n };\n\n const onComplete = (status: StatusObject): void => {\n // Only make details call if we have a payload\n if (status.props.payload) {\n setCompleted(true);\n const state = {\n data: {\n details: { payload: status.props.payload },\n paymentData: props.paymentData\n }\n };\n // Send success response to onAdditionalDetails\n return props.onComplete(state, this);\n }\n\n // Show error state & call merchant defined error callback if we do not have a payload\n setExpired(true);\n props.onError(new AdyenCheckoutError('ERROR', 'successful result, but no payload in response'));\n };\n\n const onError = (status: StatusObject): void => {\n setExpired(true);\n\n // Only make details call if we have a payload\n if (status.props.payload) {\n const state = {\n data: {\n details: { payload: status.props.payload },\n paymentData: props.paymentData\n }\n };\n // Send error response to onAdditionalDetails\n return props.onComplete(state, this);\n }\n\n // Call merchant defined error callback if we do not have a payload\n props.onError(new AdyenCheckoutError('ERROR', 'error result with no payload in response'));\n };\n\n const checkStatus = (): void => {\n const { paymentData, clientKey, throttleInterval } = props;\n\n if (!hasCalledActionHandled) {\n props.onActionHandled({ componentType: props.type, actionDescription: 'polling-started' });\n setHasCalledActionHandled(true);\n }\n\n void checkPaymentStatus(paymentData, clientKey, loadingContext, throttleInterval)\n .then(processResponse)\n .catch(({ message, ...response }) => ({\n type: 'network-error',\n props: {\n ...(message && { message: i18n.get(message) }),\n ...response\n }\n }))\n .then((status: StatusObject) => {\n switch (status.type) {\n case 'success':\n onComplete(status);\n break;\n\n case 'error':\n onError(status);\n break;\n\n default:\n setLoading(false);\n }\n });\n };\n\n const redirectToApp = (url): void => {\n window.location.assign(url);\n };\n\n useEffect(() => {\n checkStatus();\n return (): void => {\n clearTimeout(storedTimeout);\n };\n }, []);\n\n useEffect(() => {\n if (expired) return clearTimeout(storedTimeout);\n\n if (completed) return clearTimeout(storedTimeout);\n\n if (!loading) {\n // Retry until getting a complete response from the server OR it times out\n // Changes setTimeout time to new value (throttleInterval) after a certain amount of time (throttleTime) has passed\n const statusInterval = (): void => {\n checkStatus();\n\n const actualTimePassed = timePassed + delay;\n // timePassed is the value that is the main \"engine\" that drives this useEffect/polling\n setTimePassed(actualTimePassed);\n\n if (actualTimePassed >= props.throttleTime && !hasAdjustedTime) {\n setDelay(props.throttleInterval);\n setHasAdjustedTime(true);\n }\n };\n\n // Create (another) interval to poll for a result\n setStoredTimeout(setTimeout(statusInterval, delay));\n }\n }, [loading, expired, completed, timePassed]);\n\n const finalState = (image, message) => (\n <div className=\"adyen-checkout__await adyen-checkout__await--result\">\n <img\n className=\"adyen-checkout__await__icon adyen-checkout__await__icon--result\"\n src={getImage({ imageFolder: 'components/' })(image)}\n alt={i18n.get(message)}\n />\n <div className=\"adyen-checkout__await__subtitle adyen-checkout__await__subtitle--result\">{i18n.get(message)}</div>\n </div>\n );\n\n if (expired) {\n return finalState('error', 'error.subtitle.payment');\n }\n\n if (completed) {\n return finalState('success', 'creditCard.success');\n }\n\n if (loading) {\n return (\n <div className=\"adyen-checkout__await\">\n {props.brandLogo && <img src={props.brandLogo} alt={props.type} className=\"adyen-checkout__await__brand-logo\" />}\n <Spinner inline={false} size=\"large\" />\n </div>\n );\n }\n\n const timeToPayString = i18n.get('wechatpay.timetopay').split('%@');\n\n return (\n <div\n className={classnames(\n 'adyen-checkout__await',\n `adyen-checkout__await--${props.type}`,\n props.classNameModifiers.map(m => `adyen-checkout__await--${m}`)\n )}\n >\n {props.brandLogo && <img src={props.brandLogo} alt={props.type} className=\"adyen-checkout__await__brand-logo\" />}\n\n <div className=\"adyen-checkout__await__subtitle\">{props.messageText}</div>\n\n <div className=\"adyen-checkout__await__indicator-holder\">\n <div className=\"adyen-checkout__await__indicator-spinner\">\n <Spinner inline={false} size=\"medium\" />\n </div>\n <div className=\"adyen-checkout__await__indicator-text\">{props.awaitText}</div>\n </div>\n\n {props.showCountdownTimer && (\n <div className=\"adyen-checkout__await__countdown-holder\">\n <div className=\"adyen-checkout__await__progress\">\n <span className=\"adyen-checkout__await__percentage\" style={{ width: `${percentage}%` }} />\n </div>\n\n <div className=\"adyen-checkout__await__countdown\">\n {timeToPayString[0]}&nbsp;\n <Countdown minutesFromNow={props.countdownTime} onTick={onTick} onCompleted={onTimeUp} />\n &nbsp;{timeToPayString[1]}\n </div>\n </div>\n )}\n\n {props.url && (\n <div className=\"adyen-checkout__await__app-link\">\n <ContentSeparator />\n <Button classNameModifiers={['await']} onClick={() => redirectToApp(props.url)} label={i18n.get('openApp')} />\n </div>\n )}\n </div>\n );\n}\n\nAwait.defaultProps = {\n countdownTime: 15,\n onError: () => {},\n onComplete: () => {},\n onActionHandled: () => {},\n delay: 2000,\n throttleTime: 60000,\n throttleInterval: 10000,\n showCountdownTimer: true,\n classNameModifiers: [],\n url: null\n};\n\nexport default Await;\n"],"names":["Await","props","i18n","loadingContext","useCoreContext","getImage","useImage","completed","setCompleted","useState","expired","setExpired","loading","setLoading","hasCalledActionHandled","setHasCalledActionHandled","delay","setDelay","percentage","setPercentage","timePassed","setTimePassed","hasAdjustedTime","setHasAdjustedTime","storedTimeout","setStoredTimeout","onComplete","status","payload","state","data","details","paymentData","this","onError","AdyenCheckoutError","checkStatus","clientKey","throttleInterval","onActionHandled","componentType","type","actionDescription","checkPaymentStatus","then","processResponse","catch","message","response","get","useEffect","clearTimeout","setTimeout","actualTimePassed","throttleTime","finalState","image","h","div","className","img","src","imageFolder","alt","brandLogo","Spinner","inline","size","timeToPayString","split","classnames","classNameModifiers","map","m","messageText","awaitText","showCountdownTimer","span","style","width","Countdown","minutesFromNow","countdownTime","onTick","time","onCompleted","url","ContentSeparator","Button","onClick","redirectToApp","window","location","assign","label","defaultProps"],"mappings":"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"}
1
+ {"version":3,"file":"Await.js","sources":["../../../../../src/components/internal/Await/Await.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { useState, useEffect } from 'preact/hooks';\nimport classnames from 'classnames';\nimport checkPaymentStatus from '../../../core/Services/payment-status';\nimport processResponse from '../../../core/ProcessResponse';\n\nimport Spinner from '../../internal/Spinner';\nimport Countdown from '../Countdown';\nimport Button from '../Button';\nimport { useCoreContext } from '../../../core/Context/CoreProvider';\nimport { AwaitComponentProps, StatusObject } from './types';\nimport './Await.scss';\nimport AdyenCheckoutError from '../../../core/Errors/AdyenCheckoutError';\nimport ContentSeparator from '../ContentSeparator';\nimport useImage from '../../../core/Context/useImage';\n\nfunction Await(props: AwaitComponentProps) {\n const { i18n, loadingContext } = useCoreContext();\n const getImage = useImage();\n const [completed, setCompleted] = useState(false);\n const [expired, setExpired] = useState(false);\n const [loading, setLoading] = useState(true);\n const [hasCalledActionHandled, setHasCalledActionHandled] = useState(false);\n const [delay, setDelay] = useState(props.delay);\n const [percentage, setPercentage] = useState(100);\n const [timePassed, setTimePassed] = useState(0);\n const [hasAdjustedTime, setHasAdjustedTime] = useState(false);\n const [storedTimeout, setStoredTimeout] = useState(null);\n\n const onTimeUp = (): void => {\n setExpired(true);\n clearTimeout(storedTimeout);\n props.onError(new AdyenCheckoutError('ERROR', 'Payment Expired'));\n };\n\n const onTick = (time): void => {\n setPercentage(time.percentage);\n };\n\n const onComplete = (status: StatusObject): void => {\n // Only make details call if we have a payload\n if (status.props.payload) {\n setCompleted(true);\n const state = {\n data: {\n details: { payload: status.props.payload },\n paymentData: props.paymentData\n }\n };\n // Send success response to onAdditionalDetails\n return props.onComplete(state, this);\n }\n\n // Show error state & call merchant defined error callback if we do not have a payload\n setExpired(true);\n props.onError(new AdyenCheckoutError('ERROR', 'successful result, but no payload in response'));\n };\n\n const onError = (status: StatusObject): void => {\n setExpired(true);\n\n // Only make details call if we have a payload\n if (status.props.payload) {\n const state = {\n data: {\n details: { payload: status.props.payload },\n paymentData: props.paymentData\n }\n };\n // Send error response to onAdditionalDetails\n return props.onComplete(state, this);\n }\n\n // Call merchant defined error callback if we do not have a payload\n props.onError(new AdyenCheckoutError('ERROR', 'error result with no payload in response'));\n };\n\n const checkStatus = (): void => {\n const { paymentData, clientKey, throttleInterval } = props;\n\n if (!hasCalledActionHandled) {\n props.onActionHandled({ componentType: props.type, actionDescription: 'polling-started' });\n setHasCalledActionHandled(true);\n }\n\n void checkPaymentStatus(paymentData, clientKey, loadingContext, throttleInterval)\n .then(processResponse)\n .catch(({ message, ...response }) => ({\n type: 'network-error',\n props: {\n ...(message && { message: i18n.get(message) }),\n ...response\n }\n }))\n .then((status: StatusObject) => {\n switch (status.type) {\n case 'success':\n onComplete(status);\n break;\n\n case 'error':\n onError(status);\n break;\n\n default:\n setLoading(false);\n }\n });\n };\n\n const redirectToApp = (url): void => {\n window.location.assign(url);\n };\n\n useEffect(() => {\n if (props.shouldRedirectAutomatically && props.url) {\n redirectToApp(props.url);\n }\n }, [props.shouldRedirectAutomatically, props.url]);\n\n useEffect(() => {\n checkStatus();\n return (): void => {\n clearTimeout(storedTimeout);\n };\n }, []);\n\n useEffect(() => {\n if (expired) return clearTimeout(storedTimeout);\n\n if (completed) return clearTimeout(storedTimeout);\n\n if (!loading) {\n // Retry until getting a complete response from the server OR it times out\n // Changes setTimeout time to new value (throttleInterval) after a certain amount of time (throttleTime) has passed\n const statusInterval = (): void => {\n checkStatus();\n\n const actualTimePassed = timePassed + delay;\n // timePassed is the value that is the main \"engine\" that drives this useEffect/polling\n setTimePassed(actualTimePassed);\n\n if (actualTimePassed >= props.throttleTime && !hasAdjustedTime) {\n setDelay(props.throttleInterval);\n setHasAdjustedTime(true);\n }\n };\n\n // Create (another) interval to poll for a result\n setStoredTimeout(setTimeout(statusInterval, delay));\n }\n }, [loading, expired, completed, timePassed]);\n\n const finalState = (image, message) => (\n <div className=\"adyen-checkout__await adyen-checkout__await--result\">\n <img\n className=\"adyen-checkout__await__icon adyen-checkout__await__icon--result\"\n src={getImage({ imageFolder: 'components/' })(image)}\n alt={i18n.get(message)}\n />\n <div className=\"adyen-checkout__await__subtitle adyen-checkout__await__subtitle--result\">{i18n.get(message)}</div>\n </div>\n );\n\n if (expired) {\n return finalState('error', 'error.subtitle.payment');\n }\n\n if (completed) {\n return finalState('success', 'creditCard.success');\n }\n\n if (loading) {\n return (\n <div className=\"adyen-checkout__await\">\n {props.brandLogo && <img src={props.brandLogo} alt={props.type} className=\"adyen-checkout__await__brand-logo\" />}\n <Spinner inline={false} size=\"large\" />\n </div>\n );\n }\n\n const timeToPayString = i18n.get('wechatpay.timetopay').split('%@');\n\n return (\n <div\n className={classnames(\n 'adyen-checkout__await',\n `adyen-checkout__await--${props.type}`,\n props.classNameModifiers.map(m => `adyen-checkout__await--${m}`)\n )}\n >\n {props.brandLogo && <img src={props.brandLogo} alt={props.type} className=\"adyen-checkout__await__brand-logo\" />}\n\n <div className=\"adyen-checkout__await__subtitle\">{props.messageText}</div>\n\n <div className=\"adyen-checkout__await__indicator-holder\">\n <div className=\"adyen-checkout__await__indicator-spinner\">\n <Spinner inline={false} size=\"medium\" />\n </div>\n <div className=\"adyen-checkout__await__indicator-text\">{props.awaitText}</div>\n </div>\n\n {props.showCountdownTimer && (\n <div className=\"adyen-checkout__await__countdown-holder\">\n <div className=\"adyen-checkout__await__progress\">\n <span className=\"adyen-checkout__await__percentage\" style={{ width: `${percentage}%` }} />\n </div>\n\n <div className=\"adyen-checkout__await__countdown\">\n {timeToPayString[0]}&nbsp;\n <Countdown minutesFromNow={props.countdownTime} onTick={onTick} onCompleted={onTimeUp} />\n &nbsp;{timeToPayString[1]}\n </div>\n </div>\n )}\n\n {props.url && !props.shouldRedirectAutomatically && (\n <div className=\"adyen-checkout__await__app-link\">\n <ContentSeparator />\n <Button classNameModifiers={['await']} onClick={() => redirectToApp(props.url)} label={i18n.get('openApp')} />\n </div>\n )}\n </div>\n );\n}\n\nAwait.defaultProps = {\n countdownTime: 15,\n onError: () => {},\n onComplete: () => {},\n onActionHandled: () => {},\n delay: 2000,\n throttleTime: 60000,\n throttleInterval: 10000,\n showCountdownTimer: true,\n classNameModifiers: [],\n url: null\n};\n\nexport default Await;\n"],"names":["Await","props","i18n","loadingContext","useCoreContext","getImage","useImage","completed","setCompleted","useState","expired","setExpired","loading","setLoading","hasCalledActionHandled","setHasCalledActionHandled","delay","setDelay","percentage","setPercentage","timePassed","setTimePassed","hasAdjustedTime","setHasAdjustedTime","storedTimeout","setStoredTimeout","onComplete","status","payload","state","data","details","paymentData","this","onError","AdyenCheckoutError","checkStatus","clientKey","throttleInterval","onActionHandled","componentType","type","actionDescription","checkPaymentStatus","then","processResponse","catch","message","response","get","redirectToApp","url","window","location","assign","useEffect","shouldRedirectAutomatically","clearTimeout","setTimeout","actualTimePassed","throttleTime","finalState","image","h","div","className","img","src","imageFolder","alt","brandLogo","Spinner","inline","size","timeToPayString","split","classnames","classNameModifiers","map","m","messageText","awaitText","showCountdownTimer","span","style","width","Countdown","minutesFromNow","countdownTime","onTick","time","onCompleted","ContentSeparator","Button","onClick","label","defaultProps"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{createElement as e}from"../../../external/preact/dist/preact.js";import{getTimeDifference as t}from"./utils.js";import{useRef as s,useState as n,useEffect as o}from"../../../external/preact/hooks/dist/hooks.js";import{useCountdownA11yReporter as a}from"./useCountdownA11yReporter.js";function r({minutesFromNow:r,onTick:c=(()=>{}),onCompleted:m=(()=>{})}){const u=s((e=>{const t=6e4*e,s=(new Date).getTime();return{startTime:new Date(s),endTime:new Date(s+t)}})(r)),{startTime:i,endTime:d}=u.current,[p,l]=n({minutes:"-",seconds:"-"});return a(p),o((()=>{const e=setInterval((()=>{const{minutes:e,seconds:s,percentage:n,completed:o}=t(i,d);if(o)m();else{const t={minutes:e,seconds:s,percentage:n};l(t),c(t)}}),1e3);return()=>{clearInterval(e)}}),[]),e("span",{className:"adyen-checkout__countdown",role:"timer"},e("span",{className:"countdown__minutes"},p.minutes),e("span",{className:"countdown__separator"},":"),e("span",{className:"countdown__seconds"},p.seconds))}export{r as default};
1
+ import{createElement as e}from"../../../external/preact/dist/preact.js";import{getTimeDifference as t}from"./utils.js";import{useRef as s,useState as n,useEffect as o}from"../../../external/preact/hooks/dist/hooks.js";import{useCountdownA11yReporter as a}from"./useCountdownA11yReporter.js";function r({minutesFromNow:r,onTick:c=()=>{},onCompleted:m=()=>{}}){const u=s((e=>{const t=6e4*e,s=(new Date).getTime();return{startTime:new Date(s),endTime:new Date(s+t)}})(r)),{startTime:i,endTime:d}=u.current,[p,l]=n({minutes:"-",seconds:"-"});return a(p),o((()=>{const e=setInterval((()=>{const{minutes:e,seconds:s,percentage:n,completed:o}=t(i,d);if(o)m();else{const t={minutes:e,seconds:s,percentage:n};l(t),c(t)}}),1e3);return()=>{clearInterval(e)}}),[]),e("span",{className:"adyen-checkout__countdown",role:"timer"},e("span",{className:"countdown__minutes"},p.minutes),e("span",{className:"countdown__separator"},":"),e("span",{className:"countdown__seconds"},p.seconds))}export{r as default};
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../src/components/internal/Countdown/index.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { getTimeDifference } from './utils';\nimport { useEffect, useRef, useState } from 'preact/hooks';\nimport { CountdownProps, CountdownTime } from './types';\nimport { useCountdownA11yReporter } from './useCountdownA11yReporter';\n\nconst calculateStartAndEndTime = (minutesFromNow: number) => {\n const secondsFromNow = minutesFromNow * 60000;\n const nowTime = new Date().getTime();\n return { startTime: new Date(nowTime), endTime: new Date(nowTime + secondsFromNow) };\n};\n\nfunction Countdown({ minutesFromNow, onTick = () => {}, onCompleted = () => {} }: CountdownProps) {\n const startAndEndTime = useRef(calculateStartAndEndTime(minutesFromNow));\n const { startTime, endTime } = startAndEndTime.current;\n const [time, setTime] = useState<CountdownTime>({\n minutes: '-',\n seconds: '-'\n });\n useCountdownA11yReporter(time);\n\n useEffect(() => {\n const tick = () => {\n const { minutes, seconds, percentage, completed } = getTimeDifference(startTime, endTime);\n if (completed) {\n onCompleted();\n } else {\n const timeLeft = { minutes, seconds, percentage };\n setTime(timeLeft);\n onTick(timeLeft);\n }\n };\n const interval = setInterval(tick, 1000);\n\n return () => {\n clearInterval(interval);\n };\n }, []);\n\n return (\n <span className=\"adyen-checkout__countdown\" role=\"timer\">\n <span className=\"countdown__minutes\">{time.minutes}</span>\n <span className=\"countdown__separator\">:</span>\n <span className=\"countdown__seconds\">{time.seconds}</span>\n </span>\n );\n}\n\nexport default Countdown;\n"],"names":["Countdown","minutesFromNow","onTick","onCompleted","startAndEndTime","useRef","secondsFromNow","nowTime","Date","getTime","startTime","endTime","calculateStartAndEndTime","current","time","setTime","useState","minutes","seconds","useCountdownA11yReporter","useEffect","interval","setInterval","percentage","completed","getTimeDifference","timeLeft","clearInterval","h","span","className","role"],"mappings":"mSAYA,SAASA,GAAUC,eAAEA,EAAcC,OAAEA,EAAS,SAAQC,YAAEA,EAAc,WAClE,MAAMC,EAAkBC,EAPK,CAACJ,IAC9B,MAAMK,EAAkC,IAAjBL,EACjBM,GAAU,IAAIC,MAAOC,UAC3B,MAAO,CAAEC,UAAW,IAAIF,KAAKD,GAAUI,QAAS,IAAIH,KAAKD,EAAUD,GAAgB,EAIpDM,CAAyBX,KAClDS,UAAEA,EAASC,QAAEA,GAAYP,EAAgBS,SACxCC,EAAMC,GAAWC,EAAwB,CAC5CC,QAAS,IACTC,QAAS,MAsBb,OApBAC,EAAyBL,GAEzBM,GAAU,KACN,MAUMC,EAAWC,aAVJ,KACT,MAAML,QAAEA,EAAOC,QAAEA,EAAOK,WAAEA,EAAUC,UAAEA,GAAcC,EAAkBf,EAAWC,GACjF,GAAIa,EACArB,QACG,CACH,MAAMuB,EAAW,CAAET,UAASC,UAASK,cACrCR,EAAQW,GACRxB,EAAOwB,EACX,IAE+B,KAEnC,MAAO,KACHC,cAAcN,EAAAA,CAClB,GACD,IAGCO,EAACC,OAAAA,CAAKC,UAAU,4BAA4BC,KAAK,SAC7CH,EAACC,OAAAA,CAAKC,UAAU,sBAAsBhB,EAAKG,SAC3CW,EAACC,OAAAA,CAAKC,UAAU,wBAAuB,KACvCF,EAACC,OAAAA,CAAKC,UAAU,sBAAsBhB,EAAKI,SAGvD"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../src/components/internal/Countdown/index.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { getTimeDifference } from './utils';\nimport { useEffect, useRef, useState } from 'preact/hooks';\nimport { CountdownProps, CountdownTime } from './types';\nimport { useCountdownA11yReporter } from './useCountdownA11yReporter';\n\nconst calculateStartAndEndTime = (minutesFromNow: number) => {\n const secondsFromNow = minutesFromNow * 60000;\n const nowTime = new Date().getTime();\n return { startTime: new Date(nowTime), endTime: new Date(nowTime + secondsFromNow) };\n};\n\nfunction Countdown({ minutesFromNow, onTick = () => {}, onCompleted = () => {} }: CountdownProps) {\n const startAndEndTime = useRef(calculateStartAndEndTime(minutesFromNow));\n const { startTime, endTime } = startAndEndTime.current;\n const [time, setTime] = useState<CountdownTime>({\n minutes: '-',\n seconds: '-'\n });\n useCountdownA11yReporter(time);\n\n useEffect(() => {\n const tick = () => {\n const { minutes, seconds, percentage, completed } = getTimeDifference(startTime, endTime);\n if (completed) {\n onCompleted();\n } else {\n const timeLeft = { minutes, seconds, percentage };\n setTime(timeLeft);\n onTick(timeLeft);\n }\n };\n const interval = setInterval(tick, 1000);\n\n return () => {\n clearInterval(interval);\n };\n }, []);\n\n return (\n <span className=\"adyen-checkout__countdown\" role=\"timer\">\n <span className=\"countdown__minutes\">{time.minutes}</span>\n <span className=\"countdown__separator\">:</span>\n <span className=\"countdown__seconds\">{time.seconds}</span>\n </span>\n );\n}\n\nexport default Countdown;\n"],"names":["Countdown","minutesFromNow","onTick","onCompleted","startAndEndTime","useRef","secondsFromNow","nowTime","Date","getTime","startTime","endTime","calculateStartAndEndTime","current","time","setTime","useState","minutes","seconds","useCountdownA11yReporter","useEffect","interval","setInterval","percentage","completed","getTimeDifference","timeLeft","clearInterval","h","span","className","role"],"mappings":"mSAYA,SAASA,GAAUC,eAAEA,EAAcC,OAAEA,EAAS,OAAQC,YAAEA,EAAc,SAClE,MAAMC,EAAkBC,EAPK,CAACJ,IAC9B,MAAMK,EAAkC,IAAjBL,EACjBM,GAAU,IAAIC,MAAOC,UAC3B,MAAO,CAAEC,UAAW,IAAIF,KAAKD,GAAUI,QAAS,IAAIH,KAAKD,EAAUD,GAAgB,EAIpDM,CAAyBX,KAClDS,UAAEA,EAASC,QAAEA,GAAYP,EAAgBS,SACxCC,EAAMC,GAAWC,EAAwB,CAC5CC,QAAS,IACTC,QAAS,MAsBb,OApBAC,EAAyBL,GAEzBM,GAAU,KACN,MAUMC,EAAWC,aAVJ,KACT,MAAML,QAAEA,EAAOC,QAAEA,EAAOK,WAAEA,EAAUC,UAAEA,GAAcC,EAAkBf,EAAWC,GACjF,GAAIa,EACArB,QACG,CACH,MAAMuB,EAAW,CAAET,UAASC,UAASK,cACrCR,EAAQW,GACRxB,EAAOwB,EACX,IAE+B,KAEnC,MAAO,KACHC,cAAcN,EAAAA,CAClB,GACD,IAGCO,EAACC,OAAAA,CAAKC,UAAU,4BAA4BC,KAAK,SAC7CH,EAACC,OAAAA,CAAKC,UAAU,sBAAsBhB,EAAKG,SAC3CW,EAACC,OAAAA,CAAKC,UAAU,wBAAuB,KACvCF,EAACC,OAAAA,CAAKC,UAAU,sBAAsBhB,EAAKI,SAGvD"}