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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (691) hide show
  1. package/README.md +123 -182
  2. package/dist/cjs/adyen.css +15 -11
  3. package/dist/cjs/adyen.css.map +1 -1
  4. package/dist/cjs/index.cjs +2 -2
  5. package/dist/cjs/index.cjs.map +1 -1
  6. package/dist/cjs/index.d.cts +834 -847
  7. package/dist/es/adyen.css +15 -11
  8. package/dist/es/adyen.css.map +1 -1
  9. package/dist/es/components/ANCV/ANCV.js +1 -1
  10. package/dist/es/components/ANCV/ANCV.js.map +1 -1
  11. package/dist/es/components/Ach/Ach.js +1 -1
  12. package/dist/es/components/Ach/Ach.js.map +1 -1
  13. package/dist/es/components/Ach/components/AchInput/AchInput.js +1 -1
  14. package/dist/es/components/Ach/components/AchInput/AchInput.js.map +1 -1
  15. package/dist/es/components/Ach/components/AchInput/components/AchSFInput.js +1 -1
  16. package/dist/es/components/Ach/components/AchInput/components/AchSFInput.js.map +1 -1
  17. package/dist/es/components/AmazonPay/components/AmazonPayButton.js.map +1 -1
  18. package/dist/es/components/AmazonPay/components/AmazonPayComponent.js.map +1 -1
  19. package/dist/es/components/AmazonPay/components/SignOutButton.js.map +1 -1
  20. package/dist/es/components/ApplePay/ApplePayService.js.map +1 -1
  21. package/dist/es/components/ApplePay/components/ApplePayButton.js.map +1 -1
  22. package/dist/es/components/Card/Card.js +1 -1
  23. package/dist/es/components/Card/Card.js.map +1 -1
  24. package/dist/es/components/Card/components/CardInput/CardInput.js +1 -1
  25. package/dist/es/components/Card/components/CardInput/CardInput.js.map +1 -1
  26. package/dist/es/components/Card/components/CardInput/components/CVC.js +1 -1
  27. package/dist/es/components/Card/components/CardInput/components/CVC.js.map +1 -1
  28. package/dist/es/components/Card/components/CardInput/components/CVCHint.js.map +1 -1
  29. package/dist/es/components/Card/components/CardInput/components/CardNumber.js +1 -1
  30. package/dist/es/components/Card/components/CardInput/components/CardNumber.js.map +1 -1
  31. package/dist/es/components/Card/components/CardInput/components/DualBrandingIcon/DualBrandingIcon.js.map +1 -1
  32. package/dist/es/components/Card/components/CardInput/components/ExpirationDate.js +1 -1
  33. package/dist/es/components/Card/components/CardInput/components/ExpirationDate.js.map +1 -1
  34. package/dist/es/components/Card/components/CardInput/components/{IframeLabelAlternative.js → FieldLabelAlternative.js} +1 -1
  35. package/dist/es/components/Card/components/CardInput/components/FieldLabelAlternative.js.map +1 -0
  36. package/dist/es/components/Card/components/CardInput/components/Installments/Installments.js +1 -1
  37. package/dist/es/components/Card/components/CardInput/components/Installments/Installments.js.map +1 -1
  38. package/dist/es/components/Card/components/CardInput/components/KCPAuthentication.js +1 -1
  39. package/dist/es/components/Card/components/CardInput/components/KCPAuthentication.js.map +1 -1
  40. package/dist/es/components/Card/components/CardInput/defaultProps.js +1 -1
  41. package/dist/es/components/Card/components/CardInput/defaultProps.js.map +1 -1
  42. package/dist/es/components/Card/components/CardInput/handlers.js.map +1 -1
  43. package/dist/es/components/Card/components/CardInput/types.js.map +1 -1
  44. package/dist/es/components/Card/components/CardInput/utils.js +1 -1
  45. package/dist/es/components/Card/components/CardInput/utils.js.map +1 -1
  46. package/dist/es/components/CashAppPay/components/CashAppComponent.js.map +1 -1
  47. package/dist/es/components/CustomCard/CustomCard.js +1 -1
  48. package/dist/es/components/CustomCard/CustomCard.js.map +1 -1
  49. package/dist/es/components/CustomCard/CustomCardInput/CustomCardInput.js +1 -1
  50. package/dist/es/components/CustomCard/CustomCardInput/CustomCardInput.js.map +1 -1
  51. package/dist/es/components/Donation/components/CampaignContent.js +1 -1
  52. package/dist/es/components/Donation/components/CampaignContent.js.map +1 -1
  53. package/dist/es/components/Donation/components/DonationComponent.js +1 -1
  54. package/dist/es/components/Donation/components/DonationComponent.js.map +1 -1
  55. package/dist/es/components/Donation/components/FixedAmounts.js +2 -0
  56. package/dist/es/components/Donation/components/FixedAmounts.js.map +1 -0
  57. package/dist/es/components/Donation/components/Roundup.js +2 -0
  58. package/dist/es/components/Donation/components/Roundup.js.map +1 -0
  59. package/dist/es/components/Donation/components/utils.js +2 -0
  60. package/dist/es/components/Donation/components/utils.js.map +1 -0
  61. package/dist/es/components/Dropin/Dropin.js +1 -1
  62. package/dist/es/components/Dropin/Dropin.js.map +1 -1
  63. package/dist/es/components/Dropin/components/DropinComponent.js +1 -1
  64. package/dist/es/components/Dropin/components/DropinComponent.js.map +1 -1
  65. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodItem/PaymentMethodItem.js +1 -1
  66. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodItem/PaymentMethodItem.js.map +1 -1
  67. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodList.js +1 -1
  68. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodList.js.map +1 -1
  69. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodsContainer.js +1 -1
  70. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodsContainer.js.map +1 -1
  71. package/dist/es/components/Dropin/elements/createElements.js +1 -1
  72. package/dist/es/components/Dropin/elements/createElements.js.map +1 -1
  73. package/dist/es/components/Dropin/elements/filters.js +1 -1
  74. package/dist/es/components/Dropin/elements/filters.js.map +1 -1
  75. package/dist/es/components/Giftcard/Giftcard.js +1 -1
  76. package/dist/es/components/Giftcard/Giftcard.js.map +1 -1
  77. package/dist/es/components/Giftcard/components/GiftcardComponent.js +1 -1
  78. package/dist/es/components/Giftcard/components/GiftcardComponent.js.map +1 -1
  79. package/dist/es/components/Giftcard/components/GiftcardNumberField.js +1 -1
  80. package/dist/es/components/Giftcard/components/GiftcardNumberField.js.map +1 -1
  81. package/dist/es/components/Giftcard/components/GiftcardPinField.js +1 -1
  82. package/dist/es/components/Giftcard/components/GiftcardPinField.js.map +1 -1
  83. package/dist/es/components/GooglePay/GooglePay.js +1 -1
  84. package/dist/es/components/GooglePay/GooglePay.js.map +1 -1
  85. package/dist/es/components/GooglePay/GooglePayService.js.map +1 -1
  86. package/dist/es/components/GooglePay/components/GooglePayButton.js +1 -1
  87. package/dist/es/components/GooglePay/components/GooglePayButton.js.map +1 -1
  88. package/dist/es/components/GooglePay/requests.js.map +1 -1
  89. package/dist/es/components/Klarna/KlarnaPayments.js +1 -1
  90. package/dist/es/components/Klarna/KlarnaPayments.js.map +1 -1
  91. package/dist/es/components/Klarna/components/KlarnaWidget/KlarnaWidget.js +1 -1
  92. package/dist/es/components/Klarna/components/KlarnaWidget/KlarnaWidget.js.map +1 -1
  93. package/dist/es/components/MealVoucherFR/components/MealVoucherExpiryField.js +1 -1
  94. package/dist/es/components/MealVoucherFR/components/MealVoucherExpiryField.js.map +1 -1
  95. package/dist/es/components/Oxxo/Oxxo.js.map +1 -1
  96. package/dist/es/components/PayPal/Paypal.js +1 -1
  97. package/dist/es/components/PayPal/Paypal.js.map +1 -1
  98. package/dist/es/components/Redirect/components/RedirectShopper/RedirectShopper.js +1 -1
  99. package/dist/es/components/Redirect/components/RedirectShopper/RedirectShopper.js.map +1 -1
  100. package/dist/es/components/ThreeDS2/ThreeDS2Challenge.js +1 -1
  101. package/dist/es/components/ThreeDS2/ThreeDS2Challenge.js.map +1 -1
  102. package/dist/es/components/ThreeDS2/ThreeDS2DeviceFingerprint.js +1 -1
  103. package/dist/es/components/ThreeDS2/ThreeDS2DeviceFingerprint.js.map +1 -1
  104. package/dist/es/components/ThreeDS2/callSubmit3DS2Fingerprint.js +1 -1
  105. package/dist/es/components/ThreeDS2/callSubmit3DS2Fingerprint.js.map +1 -1
  106. package/dist/es/components/ThreeDS2/components/Challenge/DoChallenge3DS2.js.map +1 -1
  107. package/dist/es/components/ThreeDS2/components/DeviceFingerprint/DoFingerprint3DS2.js.map +1 -1
  108. package/dist/es/components/ThreeDS2/components/utils.js +1 -1
  109. package/dist/es/components/ThreeDS2/components/utils.js.map +1 -1
  110. package/dist/es/components/UPI/UPI.js +1 -1
  111. package/dist/es/components/UPI/UPI.js.map +1 -1
  112. package/dist/es/components/UPI/components/UPIComponent/UPIComponent.js +1 -1
  113. package/dist/es/components/UPI/components/UPIComponent/UPIComponent.js.map +1 -1
  114. package/dist/es/components/UPI/components/UPIComponent/constants.js +2 -0
  115. package/dist/es/components/UPI/components/UPIComponent/constants.js.map +1 -0
  116. package/dist/es/components/UPI/components/UPIComponent/useUpiSegmentedControlOptions.js +2 -0
  117. package/dist/es/components/UPI/components/UPIComponent/useUpiSegmentedControlOptions.js.map +1 -0
  118. package/dist/es/components/UPI/components/UPIIntentAppList/UPIIntentAppItem/UPIIntentAppItem.js +2 -0
  119. package/dist/es/components/UPI/components/UPIIntentAppList/UPIIntentAppItem/UPIIntentAppItem.js.map +1 -0
  120. package/dist/es/components/UPI/components/UPIIntentAppList/UPIIntentAppList.js +2 -0
  121. package/dist/es/components/UPI/components/UPIIntentAppList/UPIIntentAppList.js.map +1 -0
  122. package/dist/es/components/UPI/components/VpaInput/VpaInput.js +1 -1
  123. package/dist/es/components/UPI/components/VpaInput/VpaInput.js.map +1 -1
  124. package/dist/es/components/components-name-map.js +1 -1
  125. package/dist/es/components/components-name-map.js.map +1 -1
  126. package/dist/es/components/internal/Address/components/AddressSearch.js +1 -1
  127. package/dist/es/components/internal/Address/components/AddressSearch.js.map +1 -1
  128. package/dist/es/components/internal/Address/components/ReadOnlyAddress.js +1 -1
  129. package/dist/es/components/internal/Address/components/ReadOnlyAddress.js.map +1 -1
  130. package/dist/es/components/internal/Await/Await.js +1 -1
  131. package/dist/es/components/internal/Await/Await.js.map +1 -1
  132. package/dist/es/components/internal/BaseElement/BaseElement.js +1 -1
  133. package/dist/es/components/internal/BaseElement/BaseElement.js.map +1 -1
  134. package/dist/es/components/internal/ClickToPay/ClickToPayComponent.js.map +1 -1
  135. package/dist/es/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPOneTimePasswordInput.js.map +1 -1
  136. package/dist/es/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPResendOtpLink.js.map +1 -1
  137. package/dist/es/components/internal/ClickToPay/components/CtPSection/CtPLogoutLink.js.map +1 -1
  138. package/dist/es/components/internal/ClickToPay/errors/TimeoutError.js +1 -1
  139. package/dist/es/components/internal/ClickToPay/errors/TimeoutError.js.map +1 -1
  140. package/dist/es/components/internal/ClickToPay/services/ClickToPayService.js.map +1 -1
  141. package/dist/es/components/internal/ClickToPay/services/sdks/SrcSdkLoader.js.map +1 -1
  142. package/dist/es/components/internal/Countdown/index.js +1 -1
  143. package/dist/es/components/internal/Countdown/index.js.map +1 -1
  144. package/dist/es/components/internal/DisclaimerMessage/DisclaimerMessage.js +1 -1
  145. package/dist/es/components/internal/DisclaimerMessage/DisclaimerMessage.js.map +1 -1
  146. package/dist/es/components/internal/ExpandButton/ExpandButton.js +2 -0
  147. package/dist/es/components/internal/ExpandButton/ExpandButton.js.map +1 -0
  148. package/dist/es/components/internal/FormFields/ConsentCheckbox/ConsentCheckbox.js +1 -1
  149. package/dist/es/components/internal/FormFields/ConsentCheckbox/ConsentCheckbox.js.map +1 -1
  150. package/dist/es/components/internal/FormFields/Field/Field.js +1 -1
  151. package/dist/es/components/internal/FormFields/Field/Field.js.map +1 -1
  152. package/dist/es/components/internal/FormFields/InputBase.js.map +1 -1
  153. package/dist/es/components/internal/FormFields/RadioGroup/RadioGroup.js +1 -1
  154. package/dist/es/components/internal/FormFields/RadioGroup/RadioGroup.js.map +1 -1
  155. package/dist/es/components/internal/FormFields/Select/Select.js +1 -1
  156. package/dist/es/components/internal/FormFields/Select/Select.js.map +1 -1
  157. package/dist/es/components/internal/FormFields/Select/components/SelectButton.js +1 -1
  158. package/dist/es/components/internal/FormFields/Select/components/SelectButton.js.map +1 -1
  159. package/dist/es/components/internal/FormFields/Select/components/SelectList.js.map +1 -1
  160. package/dist/es/components/internal/FormFields/Select/components/SelectListItem.js.map +1 -1
  161. package/dist/es/components/internal/Modal/Modal.js.map +1 -1
  162. package/dist/es/components/internal/QRLoader/QRLoader.js +1 -1
  163. package/dist/es/components/internal/QRLoader/QRLoader.js.map +1 -1
  164. package/dist/es/components/internal/SecuredFields/SFP/SecuredFieldsProvider.js +1 -1
  165. package/dist/es/components/internal/SecuredFields/SFP/SecuredFieldsProvider.js.map +1 -1
  166. package/dist/es/components/internal/SecuredFields/SFP/SecuredFieldsProviderHandlers.js +1 -1
  167. package/dist/es/components/internal/SecuredFields/SFP/SecuredFieldsProviderHandlers.js.map +1 -1
  168. package/dist/es/components/internal/SecuredFields/SFP/defaultProps.js +1 -1
  169. package/dist/es/components/internal/SecuredFields/SFP/defaultProps.js.map +1 -1
  170. package/dist/es/components/internal/SecuredFields/binLookup/triggerBinLookUp.js.map +1 -1
  171. package/dist/es/components/internal/SecuredFields/lib/CSF/CSF.js +1 -1
  172. package/dist/es/components/internal/SecuredFields/lib/CSF/CSF.js.map +1 -1
  173. package/dist/es/components/internal/SecuredFields/lib/CSF/extensions/configureCallbacks.js +1 -1
  174. package/dist/es/components/internal/SecuredFields/lib/CSF/extensions/configureCallbacks.js.map +1 -1
  175. package/dist/es/components/internal/SecuredFields/lib/CSF/extensions/createSecuredFields.js +1 -1
  176. package/dist/es/components/internal/SecuredFields/lib/CSF/extensions/createSecuredFields.js.map +1 -1
  177. package/dist/es/components/internal/SecuredFields/lib/CSF/extensions/handleEncryption.js +1 -1
  178. package/dist/es/components/internal/SecuredFields/lib/CSF/extensions/handleEncryption.js.map +1 -1
  179. package/dist/es/components/internal/SecuredFields/lib/CSF/extensions/handleIOSTouchEvents.js +1 -1
  180. package/dist/es/components/internal/SecuredFields/lib/CSF/extensions/handleIOSTouchEvents.js.map +1 -1
  181. package/dist/es/components/internal/SecuredFields/lib/CSF/extensions/handleValidation.js +1 -1
  182. package/dist/es/components/internal/SecuredFields/lib/CSF/extensions/handleValidation.js.map +1 -1
  183. package/dist/es/components/internal/SecuredFields/lib/CSF/initCSF.js +1 -1
  184. package/dist/es/components/internal/SecuredFields/lib/CSF/initCSF.js.map +1 -1
  185. package/dist/es/components/internal/SecuredFields/lib/CSF/partials/processBrand.js +1 -1
  186. package/dist/es/components/internal/SecuredFields/lib/CSF/partials/processBrand.js.map +1 -1
  187. package/dist/es/components/internal/SecuredFields/lib/CSF/utils/cardType.js.map +1 -1
  188. package/dist/es/components/internal/SecuredFields/lib/CSF/utils/getCardGroupTypes.js +1 -1
  189. package/dist/es/components/internal/SecuredFields/lib/CSF/utils/getCardGroupTypes.js.map +1 -1
  190. package/dist/es/components/internal/SecuredFields/lib/CSF/utils/iframes/postMessageValidation.js +1 -1
  191. package/dist/es/components/internal/SecuredFields/lib/CSF/utils/iframes/postMessageValidation.js.map +1 -1
  192. package/dist/es/components/internal/SecuredFields/lib/constants.js +1 -1
  193. package/dist/es/components/internal/SecuredFields/lib/constants.js.map +1 -1
  194. package/dist/es/components/internal/SecuredFields/lib/securedField/AbstractSecuredField.js +1 -1
  195. package/dist/es/components/internal/SecuredFields/lib/securedField/AbstractSecuredField.js.map +1 -1
  196. package/dist/es/components/internal/SecuredFields/lib/securedField/SecuredField.js +1 -1
  197. package/dist/es/components/internal/SecuredFields/lib/securedField/SecuredField.js.map +1 -1
  198. package/dist/es/components/internal/SecuredFields/lib/utilities/commonUtils.js +1 -1
  199. package/dist/es/components/internal/SecuredFields/lib/utilities/commonUtils.js.map +1 -1
  200. package/dist/es/components/internal/SecuredFields/lib/utilities/dom.js +1 -1
  201. package/dist/es/components/internal/SecuredFields/lib/utilities/dom.js.map +1 -1
  202. package/dist/es/components/internal/SecuredFields/lib/utilities/logger.js.map +1 -1
  203. package/dist/es/components/internal/SecuredFields/utils.js +1 -1
  204. package/dist/es/components/internal/SecuredFields/utils.js.map +1 -1
  205. package/dist/es/components/internal/SocialSecurityNumberBrazil/SocialSecurityNumberBrazil.js +1 -1
  206. package/dist/es/components/internal/SocialSecurityNumberBrazil/SocialSecurityNumberBrazil.js.map +1 -1
  207. package/dist/es/components/internal/UIElement/UIElement.js +1 -1
  208. package/dist/es/components/internal/UIElement/UIElement.js.map +1 -1
  209. package/dist/es/components/tx-variants.js +1 -1
  210. package/dist/es/components/tx-variants.js.map +1 -1
  211. package/dist/es/core/Analytics/Analytics.js +1 -1
  212. package/dist/es/core/Analytics/Analytics.js.map +1 -1
  213. package/dist/es/core/Analytics/analyticsPreProcessor.js +1 -1
  214. package/dist/es/core/Analytics/analyticsPreProcessor.js.map +1 -1
  215. package/dist/es/core/Analytics/utils.js +1 -1
  216. package/dist/es/core/Analytics/utils.js.map +1 -1
  217. package/dist/es/core/Environment/Environment.js +1 -1
  218. package/dist/es/core/Environment/Environment.js.map +1 -1
  219. package/dist/es/core/Environment/constants.js +1 -1
  220. package/dist/es/core/Environment/constants.js.map +1 -1
  221. package/dist/es/core/RiskModule/RiskModule.js +1 -1
  222. package/dist/es/core/RiskModule/RiskModule.js.map +1 -1
  223. package/dist/es/core/RiskModule/components/DeviceFingerprint/GetDeviceFingerprint.js.map +1 -1
  224. package/dist/es/core/Services/analytics/collect-id.js +1 -1
  225. package/dist/es/core/Services/analytics/collect-id.js.map +1 -1
  226. package/dist/es/core/Services/get-translations.js +1 -1
  227. package/dist/es/core/Services/get-translations.js.map +1 -1
  228. package/dist/es/core/Services/http.js.map +1 -1
  229. package/dist/es/core/config.js +1 -1
  230. package/dist/es/core/config.js.map +1 -1
  231. package/dist/es/core/core.js +1 -1
  232. package/dist/es/core/core.js.map +1 -1
  233. package/dist/es/core/utils.js +1 -1
  234. package/dist/es/core/utils.js.map +1 -1
  235. package/dist/es/external/preact/dist/preact.js +1 -1
  236. package/dist/es/external/preact/dist/preact.js.map +1 -1
  237. package/dist/es/external/preact/hooks/dist/hooks.js +1 -1
  238. package/dist/es/external/preact/hooks/dist/hooks.js.map +1 -1
  239. package/dist/es/index.d.ts +834 -847
  240. package/dist/es/language/constants.js +1 -1
  241. package/dist/es/language/constants.js.map +1 -1
  242. package/dist/es/utils/amount-util.js.map +1 -1
  243. package/dist/es/utils/browserInfo.js +1 -1
  244. package/dist/es/utils/browserInfo.js.map +1 -1
  245. package/dist/es/utils/commonUtils.js +2 -0
  246. package/dist/es/utils/commonUtils.js.map +1 -0
  247. package/dist/es/utils/listenerUtils.js +2 -0
  248. package/dist/es/utils/listenerUtils.js.map +1 -0
  249. package/dist/es/utils/regex.js.map +1 -1
  250. package/dist/es-legacy/adyen.css +15 -11
  251. package/dist/es-legacy/adyen.css.map +1 -1
  252. package/dist/es-legacy/components/ANCV/ANCV.js +1 -1
  253. package/dist/es-legacy/components/ANCV/ANCV.js.map +1 -1
  254. package/dist/es-legacy/components/Ach/Ach.js +1 -1
  255. package/dist/es-legacy/components/Ach/Ach.js.map +1 -1
  256. package/dist/es-legacy/components/Ach/components/AchInput/AchInput.js +1 -1
  257. package/dist/es-legacy/components/Ach/components/AchInput/AchInput.js.map +1 -1
  258. package/dist/es-legacy/components/Ach/components/AchInput/components/AchSFInput.js +1 -1
  259. package/dist/es-legacy/components/Ach/components/AchInput/components/AchSFInput.js.map +1 -1
  260. package/dist/es-legacy/components/Address/Address.js +1 -1
  261. package/dist/es-legacy/components/Address/Address.js.map +1 -1
  262. package/dist/es-legacy/components/Affirm/Affirm.js +1 -1
  263. package/dist/es-legacy/components/Affirm/Affirm.js.map +1 -1
  264. package/dist/es-legacy/components/AfterPay/AfterPay.js +1 -1
  265. package/dist/es-legacy/components/AfterPay/AfterPay.js.map +1 -1
  266. package/dist/es-legacy/components/AfterPay/AfterPayB2B.js +1 -1
  267. package/dist/es-legacy/components/AfterPay/AfterPayB2B.js.map +1 -1
  268. package/dist/es-legacy/components/AmazonPay/AmazonPay.js +1 -1
  269. package/dist/es-legacy/components/AmazonPay/AmazonPay.js.map +1 -1
  270. package/dist/es-legacy/components/AmazonPay/components/AmazonPayButton.js +1 -1
  271. package/dist/es-legacy/components/AmazonPay/components/AmazonPayButton.js.map +1 -1
  272. package/dist/es-legacy/components/AmazonPay/components/AmazonPayComponent.js +1 -1
  273. package/dist/es-legacy/components/AmazonPay/components/AmazonPayComponent.js.map +1 -1
  274. package/dist/es-legacy/components/AmazonPay/components/SignOutButton.js.map +1 -1
  275. package/dist/es-legacy/components/AmazonPay/utils.js +1 -1
  276. package/dist/es-legacy/components/AmazonPay/utils.js.map +1 -1
  277. package/dist/es-legacy/components/ApplePay/ApplePay.js +1 -1
  278. package/dist/es-legacy/components/ApplePay/ApplePay.js.map +1 -1
  279. package/dist/es-legacy/components/ApplePay/ApplePayService.js.map +1 -1
  280. package/dist/es-legacy/components/ApplePay/components/ApplePayButton.js.map +1 -1
  281. package/dist/es-legacy/components/Atome/Atome.js +1 -1
  282. package/dist/es-legacy/components/Atome/Atome.js.map +1 -1
  283. package/dist/es-legacy/components/Atome/config.js +1 -1
  284. package/dist/es-legacy/components/Atome/config.js.map +1 -1
  285. package/dist/es-legacy/components/BacsDD/BacsDD.js +1 -1
  286. package/dist/es-legacy/components/BacsDD/BacsDD.js.map +1 -1
  287. package/dist/es-legacy/components/BankTransfer/BankTransfer.js +1 -1
  288. package/dist/es-legacy/components/BankTransfer/BankTransfer.js.map +1 -1
  289. package/dist/es-legacy/components/BillDesk/BillDeskOnline.js +1 -1
  290. package/dist/es-legacy/components/BillDesk/BillDeskOnline.js.map +1 -1
  291. package/dist/es-legacy/components/BillDesk/BillDeskWallet.js +1 -1
  292. package/dist/es-legacy/components/BillDesk/BillDeskWallet.js.map +1 -1
  293. package/dist/es-legacy/components/Blik/Blik.js +1 -1
  294. package/dist/es-legacy/components/Blik/Blik.js.map +1 -1
  295. package/dist/es-legacy/components/Boleto/Boleto.js +1 -1
  296. package/dist/es-legacy/components/Boleto/Boleto.js.map +1 -1
  297. package/dist/es-legacy/components/Boleto/components/BoletoInput/BoletoInput.js +1 -1
  298. package/dist/es-legacy/components/Boleto/components/BoletoInput/BoletoInput.js.map +1 -1
  299. package/dist/es-legacy/components/Card/Bancontact.js +1 -1
  300. package/dist/es-legacy/components/Card/Bancontact.js.map +1 -1
  301. package/dist/es-legacy/components/Card/Card.js +1 -1
  302. package/dist/es-legacy/components/Card/Card.js.map +1 -1
  303. package/dist/es-legacy/components/Card/components/CardInput/CardInput.js +1 -1
  304. package/dist/es-legacy/components/Card/components/CardInput/CardInput.js.map +1 -1
  305. package/dist/es-legacy/components/Card/components/CardInput/components/CVC.js +1 -1
  306. package/dist/es-legacy/components/Card/components/CardInput/components/CVC.js.map +1 -1
  307. package/dist/es-legacy/components/Card/components/CardInput/components/CVCHint.js.map +1 -1
  308. package/dist/es-legacy/components/Card/components/CardInput/components/CardNumber.js +1 -1
  309. package/dist/es-legacy/components/Card/components/CardInput/components/CardNumber.js.map +1 -1
  310. package/dist/es-legacy/components/Card/components/CardInput/components/DualBrandingIcon/DualBrandingIcon.js.map +1 -1
  311. package/dist/es-legacy/components/Card/components/CardInput/components/ExpirationDate.js +1 -1
  312. package/dist/es-legacy/components/Card/components/CardInput/components/ExpirationDate.js.map +1 -1
  313. package/dist/es-legacy/components/Card/components/CardInput/components/FieldLabelAlternative.js +2 -0
  314. package/dist/es-legacy/components/Card/components/CardInput/components/FieldLabelAlternative.js.map +1 -0
  315. package/dist/es-legacy/components/Card/components/CardInput/components/Installments/Installments.js +1 -1
  316. package/dist/es-legacy/components/Card/components/CardInput/components/Installments/Installments.js.map +1 -1
  317. package/dist/es-legacy/components/Card/components/CardInput/components/KCPAuthentication.js +1 -1
  318. package/dist/es-legacy/components/Card/components/CardInput/components/KCPAuthentication.js.map +1 -1
  319. package/dist/es-legacy/components/Card/components/CardInput/components/StoredCardFields.js +1 -1
  320. package/dist/es-legacy/components/Card/components/CardInput/components/StoredCardFields.js.map +1 -1
  321. package/dist/es-legacy/components/Card/components/CardInput/defaultProps.js +1 -1
  322. package/dist/es-legacy/components/Card/components/CardInput/defaultProps.js.map +1 -1
  323. package/dist/es-legacy/components/Card/components/CardInput/handlers.js.map +1 -1
  324. package/dist/es-legacy/components/Card/components/CardInput/types.js.map +1 -1
  325. package/dist/es-legacy/components/Card/components/CardInput/utils.js +1 -1
  326. package/dist/es-legacy/components/Card/components/CardInput/utils.js.map +1 -1
  327. package/dist/es-legacy/components/CashAppPay/CashAppPay.js +1 -1
  328. package/dist/es-legacy/components/CashAppPay/CashAppPay.js.map +1 -1
  329. package/dist/es-legacy/components/CashAppPay/components/CashAppComponent.js.map +1 -1
  330. package/dist/es-legacy/components/ClickToPay/ClickToPay.js +1 -1
  331. package/dist/es-legacy/components/ClickToPay/ClickToPay.js.map +1 -1
  332. package/dist/es-legacy/components/CustomCard/CustomCard.js +1 -1
  333. package/dist/es-legacy/components/CustomCard/CustomCard.js.map +1 -1
  334. package/dist/es-legacy/components/CustomCard/CustomCardInput/CustomCardInput.js +1 -1
  335. package/dist/es-legacy/components/CustomCard/CustomCardInput/CustomCardInput.js.map +1 -1
  336. package/dist/es-legacy/components/Doku/Doku.js +1 -1
  337. package/dist/es-legacy/components/Doku/Doku.js.map +1 -1
  338. package/dist/es-legacy/components/Donation/Donation.js +1 -1
  339. package/dist/es-legacy/components/Donation/Donation.js.map +1 -1
  340. package/dist/es-legacy/components/Donation/components/CampaignContent.js +1 -1
  341. package/dist/es-legacy/components/Donation/components/CampaignContent.js.map +1 -1
  342. package/dist/es-legacy/components/Donation/components/DonationComponent.js +1 -1
  343. package/dist/es-legacy/components/Donation/components/DonationComponent.js.map +1 -1
  344. package/dist/es-legacy/components/Donation/components/FixedAmounts.js +2 -0
  345. package/dist/es-legacy/components/Donation/components/FixedAmounts.js.map +1 -0
  346. package/dist/es-legacy/components/Donation/components/Roundup.js +2 -0
  347. package/dist/es-legacy/components/Donation/components/Roundup.js.map +1 -0
  348. package/dist/es-legacy/components/Donation/components/utils.js +2 -0
  349. package/dist/es-legacy/components/Donation/components/utils.js.map +1 -0
  350. package/dist/es-legacy/components/Dragonpay/Dragonpay.js +1 -1
  351. package/dist/es-legacy/components/Dragonpay/Dragonpay.js.map +1 -1
  352. package/dist/es-legacy/components/Dragonpay/components/DragonpayInput/DragonpayInput.js +1 -1
  353. package/dist/es-legacy/components/Dragonpay/components/DragonpayInput/DragonpayInput.js.map +1 -1
  354. package/dist/es-legacy/components/Dropin/Dropin.js +1 -1
  355. package/dist/es-legacy/components/Dropin/Dropin.js.map +1 -1
  356. package/dist/es-legacy/components/Dropin/components/DropinComponent.js +1 -1
  357. package/dist/es-legacy/components/Dropin/components/DropinComponent.js.map +1 -1
  358. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodItem/PaymentMethodItem.js +1 -1
  359. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodItem/PaymentMethodItem.js.map +1 -1
  360. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodList.js +1 -1
  361. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodList.js.map +1 -1
  362. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodsContainer.js +1 -1
  363. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodsContainer.js.map +1 -1
  364. package/dist/es-legacy/components/Dropin/elements/createElements.js +1 -1
  365. package/dist/es-legacy/components/Dropin/elements/createElements.js.map +1 -1
  366. package/dist/es-legacy/components/Dropin/elements/createInstantPaymentElements.js +1 -1
  367. package/dist/es-legacy/components/Dropin/elements/createInstantPaymentElements.js.map +1 -1
  368. package/dist/es-legacy/components/Dropin/elements/createStoredElements.js +1 -1
  369. package/dist/es-legacy/components/Dropin/elements/createStoredElements.js.map +1 -1
  370. package/dist/es-legacy/components/Dropin/elements/filters.js +1 -1
  371. package/dist/es-legacy/components/Dropin/elements/filters.js.map +1 -1
  372. package/dist/es-legacy/components/EPS/index.js +1 -1
  373. package/dist/es-legacy/components/EPS/index.js.map +1 -1
  374. package/dist/es-legacy/components/Econtext/Econtext.js +1 -1
  375. package/dist/es-legacy/components/Econtext/Econtext.js.map +1 -1
  376. package/dist/es-legacy/components/FacilyPay/FacilyPay10x.js +1 -1
  377. package/dist/es-legacy/components/FacilyPay/FacilyPay10x.js.map +1 -1
  378. package/dist/es-legacy/components/FacilyPay/FacilyPay12x.js +1 -1
  379. package/dist/es-legacy/components/FacilyPay/FacilyPay12x.js.map +1 -1
  380. package/dist/es-legacy/components/FacilyPay/FacilyPay3x.js +1 -1
  381. package/dist/es-legacy/components/FacilyPay/FacilyPay3x.js.map +1 -1
  382. package/dist/es-legacy/components/FacilyPay/FacilyPay4x.js +1 -1
  383. package/dist/es-legacy/components/FacilyPay/FacilyPay4x.js.map +1 -1
  384. package/dist/es-legacy/components/FacilyPay/FacilyPay6x.js +1 -1
  385. package/dist/es-legacy/components/FacilyPay/FacilyPay6x.js.map +1 -1
  386. package/dist/es-legacy/components/Giftcard/Giftcard.js +1 -1
  387. package/dist/es-legacy/components/Giftcard/Giftcard.js.map +1 -1
  388. package/dist/es-legacy/components/Giftcard/components/GiftcardComponent.js +1 -1
  389. package/dist/es-legacy/components/Giftcard/components/GiftcardComponent.js.map +1 -1
  390. package/dist/es-legacy/components/Giftcard/components/GiftcardFields.js +1 -1
  391. package/dist/es-legacy/components/Giftcard/components/GiftcardFields.js.map +1 -1
  392. package/dist/es-legacy/components/Giftcard/components/GiftcardNumberField.js +1 -1
  393. package/dist/es-legacy/components/Giftcard/components/GiftcardNumberField.js.map +1 -1
  394. package/dist/es-legacy/components/Giftcard/components/GiftcardPinField.js +1 -1
  395. package/dist/es-legacy/components/Giftcard/components/GiftcardPinField.js.map +1 -1
  396. package/dist/es-legacy/components/Giropay/Giropay.js +1 -1
  397. package/dist/es-legacy/components/Giropay/Giropay.js.map +1 -1
  398. package/dist/es-legacy/components/GooglePay/GooglePay.js +1 -1
  399. package/dist/es-legacy/components/GooglePay/GooglePay.js.map +1 -1
  400. package/dist/es-legacy/components/GooglePay/GooglePayService.js.map +1 -1
  401. package/dist/es-legacy/components/GooglePay/components/GooglePayButton.js +1 -1
  402. package/dist/es-legacy/components/GooglePay/components/GooglePayButton.js.map +1 -1
  403. package/dist/es-legacy/components/GooglePay/requests.js.map +1 -1
  404. package/dist/es-legacy/components/Klarna/KlarnaPayments.js +1 -1
  405. package/dist/es-legacy/components/Klarna/KlarnaPayments.js.map +1 -1
  406. package/dist/es-legacy/components/Klarna/components/KlarnaContainer/KlarnaContainer.js +1 -1
  407. package/dist/es-legacy/components/Klarna/components/KlarnaContainer/KlarnaContainer.js.map +1 -1
  408. package/dist/es-legacy/components/Klarna/components/KlarnaWidget/KlarnaWidget.js +1 -1
  409. package/dist/es-legacy/components/Klarna/components/KlarnaWidget/KlarnaWidget.js.map +1 -1
  410. package/dist/es-legacy/components/MBWay/MBWay.js +1 -1
  411. package/dist/es-legacy/components/MBWay/MBWay.js.map +1 -1
  412. package/dist/es-legacy/components/MBWay/components/MBWayInput/MBWayInput.js +1 -1
  413. package/dist/es-legacy/components/MBWay/components/MBWayInput/MBWayInput.js.map +1 -1
  414. package/dist/es-legacy/components/MealVoucherFR/MealVoucherFR.js +1 -1
  415. package/dist/es-legacy/components/MealVoucherFR/MealVoucherFR.js.map +1 -1
  416. package/dist/es-legacy/components/MealVoucherFR/components/MealVoucherExpiryField.js +1 -1
  417. package/dist/es-legacy/components/MealVoucherFR/components/MealVoucherExpiryField.js.map +1 -1
  418. package/dist/es-legacy/components/MealVoucherFR/components/MealVoucherFields.js +1 -1
  419. package/dist/es-legacy/components/MealVoucherFR/components/MealVoucherFields.js.map +1 -1
  420. package/dist/es-legacy/components/Multibanco/Multibanco.js +1 -1
  421. package/dist/es-legacy/components/Multibanco/Multibanco.js.map +1 -1
  422. package/dist/es-legacy/components/OnlineBankingCZ/index.js +1 -1
  423. package/dist/es-legacy/components/OnlineBankingCZ/index.js.map +1 -1
  424. package/dist/es-legacy/components/OnlineBankingIN/index.js +1 -1
  425. package/dist/es-legacy/components/OnlineBankingIN/index.js.map +1 -1
  426. package/dist/es-legacy/components/OnlineBankingPL/OnlineBankingPL.js +1 -1
  427. package/dist/es-legacy/components/OnlineBankingPL/OnlineBankingPL.js.map +1 -1
  428. package/dist/es-legacy/components/OnlineBankingSK/index.js +1 -1
  429. package/dist/es-legacy/components/OnlineBankingSK/index.js.map +1 -1
  430. package/dist/es-legacy/components/Oxxo/Oxxo.js +1 -1
  431. package/dist/es-legacy/components/Oxxo/Oxxo.js.map +1 -1
  432. package/dist/es-legacy/components/PayByBank/PayByBank.js +1 -1
  433. package/dist/es-legacy/components/PayByBank/PayByBank.js.map +1 -1
  434. package/dist/es-legacy/components/PayPal/Paypal.js +1 -1
  435. package/dist/es-legacy/components/PayPal/Paypal.js.map +1 -1
  436. package/dist/es-legacy/components/PayPal/components/PaypalButtons.js +1 -1
  437. package/dist/es-legacy/components/PayPal/components/PaypalButtons.js.map +1 -1
  438. package/dist/es-legacy/components/PayPal/components/PaypalComponent.js +1 -1
  439. package/dist/es-legacy/components/PayPal/components/PaypalComponent.js.map +1 -1
  440. package/dist/es-legacy/components/PayPal/utils/get-paypal-settings.js +1 -1
  441. package/dist/es-legacy/components/PayPal/utils/get-paypal-settings.js.map +1 -1
  442. package/dist/es-legacy/components/PayU/PayuCashcard.js +1 -1
  443. package/dist/es-legacy/components/PayU/PayuCashcard.js.map +1 -1
  444. package/dist/es-legacy/components/PayU/PayuNetBanking.js +1 -1
  445. package/dist/es-legacy/components/PayU/PayuNetBanking.js.map +1 -1
  446. package/dist/es-legacy/components/PersonalDetails/PersonalDetails.js +1 -1
  447. package/dist/es-legacy/components/PersonalDetails/PersonalDetails.js.map +1 -1
  448. package/dist/es-legacy/components/Pix/Pix.js +1 -1
  449. package/dist/es-legacy/components/Pix/Pix.js.map +1 -1
  450. package/dist/es-legacy/components/RatePay/RatePay.js +1 -1
  451. package/dist/es-legacy/components/RatePay/RatePay.js.map +1 -1
  452. package/dist/es-legacy/components/RatePay/RatePayDirectDebit.js +1 -1
  453. package/dist/es-legacy/components/RatePay/RatePayDirectDebit.js.map +1 -1
  454. package/dist/es-legacy/components/Redirect/Redirect.js +1 -1
  455. package/dist/es-legacy/components/Redirect/Redirect.js.map +1 -1
  456. package/dist/es-legacy/components/Redirect/components/RedirectShopper/RedirectShopper.js +1 -1
  457. package/dist/es-legacy/components/Redirect/components/RedirectShopper/RedirectShopper.js.map +1 -1
  458. package/dist/es-legacy/components/Riverty/Riverty.js +1 -1
  459. package/dist/es-legacy/components/Riverty/Riverty.js.map +1 -1
  460. package/dist/es-legacy/components/Sepa/Sepa.js +1 -1
  461. package/dist/es-legacy/components/Sepa/Sepa.js.map +1 -1
  462. package/dist/es-legacy/components/ThreeDS2/ThreeDS2Challenge.js +1 -1
  463. package/dist/es-legacy/components/ThreeDS2/ThreeDS2Challenge.js.map +1 -1
  464. package/dist/es-legacy/components/ThreeDS2/ThreeDS2DeviceFingerprint.js +1 -1
  465. package/dist/es-legacy/components/ThreeDS2/ThreeDS2DeviceFingerprint.js.map +1 -1
  466. package/dist/es-legacy/components/ThreeDS2/callSubmit3DS2Fingerprint.js +1 -1
  467. package/dist/es-legacy/components/ThreeDS2/callSubmit3DS2Fingerprint.js.map +1 -1
  468. package/dist/es-legacy/components/ThreeDS2/components/Challenge/DoChallenge3DS2.js.map +1 -1
  469. package/dist/es-legacy/components/ThreeDS2/components/Challenge/PrepareChallenge3DS2.js +1 -1
  470. package/dist/es-legacy/components/ThreeDS2/components/Challenge/PrepareChallenge3DS2.js.map +1 -1
  471. package/dist/es-legacy/components/ThreeDS2/components/DeviceFingerprint/DoFingerprint3DS2.js.map +1 -1
  472. package/dist/es-legacy/components/ThreeDS2/components/DeviceFingerprint/PrepareFingerprint3DS2.js +1 -1
  473. package/dist/es-legacy/components/ThreeDS2/components/DeviceFingerprint/PrepareFingerprint3DS2.js.map +1 -1
  474. package/dist/es-legacy/components/ThreeDS2/components/utils.js +1 -1
  475. package/dist/es-legacy/components/ThreeDS2/components/utils.js.map +1 -1
  476. package/dist/es-legacy/components/Trustly/Trustly.js +1 -1
  477. package/dist/es-legacy/components/Trustly/Trustly.js.map +1 -1
  478. package/dist/es-legacy/components/Twint/Twint.js +1 -1
  479. package/dist/es-legacy/components/Twint/Twint.js.map +1 -1
  480. package/dist/es-legacy/components/UPI/UPI.js +1 -1
  481. package/dist/es-legacy/components/UPI/UPI.js.map +1 -1
  482. package/dist/es-legacy/components/UPI/components/UPIComponent/UPIComponent.js +1 -1
  483. package/dist/es-legacy/components/UPI/components/UPIComponent/UPIComponent.js.map +1 -1
  484. package/dist/es-legacy/components/UPI/components/UPIComponent/constants.js +2 -0
  485. package/dist/es-legacy/components/UPI/components/UPIComponent/constants.js.map +1 -0
  486. package/dist/es-legacy/components/UPI/components/UPIComponent/useUpiSegmentedControlOptions.js +2 -0
  487. package/dist/es-legacy/components/UPI/components/UPIComponent/useUpiSegmentedControlOptions.js.map +1 -0
  488. package/dist/es-legacy/components/UPI/components/UPIIntentAppList/UPIIntentAppItem/UPIIntentAppItem.js +2 -0
  489. package/dist/es-legacy/components/UPI/components/UPIIntentAppList/UPIIntentAppItem/UPIIntentAppItem.js.map +1 -0
  490. package/dist/es-legacy/components/UPI/components/UPIIntentAppList/UPIIntentAppList.js +2 -0
  491. package/dist/es-legacy/components/UPI/components/UPIIntentAppList/UPIIntentAppList.js.map +1 -0
  492. package/dist/es-legacy/components/UPI/components/VpaInput/VpaInput.js +1 -1
  493. package/dist/es-legacy/components/UPI/components/VpaInput/VpaInput.js.map +1 -1
  494. package/dist/es-legacy/components/WalletIN/index.js +1 -1
  495. package/dist/es-legacy/components/WalletIN/index.js.map +1 -1
  496. package/dist/es-legacy/components/components-name-map.js +1 -1
  497. package/dist/es-legacy/components/components-name-map.js.map +1 -1
  498. package/dist/es-legacy/components/helpers/IssuerListContainer/IssuerListContainer.js +1 -1
  499. package/dist/es-legacy/components/helpers/IssuerListContainer/IssuerListContainer.js.map +1 -1
  500. package/dist/es-legacy/components/helpers/OpenInvoiceContainer/OpenInvoiceContainer.js +1 -1
  501. package/dist/es-legacy/components/helpers/OpenInvoiceContainer/OpenInvoiceContainer.js.map +1 -1
  502. package/dist/es-legacy/components/helpers/QRLoaderContainer/QRLoaderContainer.js +1 -1
  503. package/dist/es-legacy/components/helpers/QRLoaderContainer/QRLoaderContainer.js.map +1 -1
  504. package/dist/es-legacy/components/internal/Address/Address.js +1 -1
  505. package/dist/es-legacy/components/internal/Address/Address.js.map +1 -1
  506. package/dist/es-legacy/components/internal/Address/components/AddressSearch.js +1 -1
  507. package/dist/es-legacy/components/internal/Address/components/AddressSearch.js.map +1 -1
  508. package/dist/es-legacy/components/internal/Address/components/CountryField.js +1 -1
  509. package/dist/es-legacy/components/internal/Address/components/CountryField.js.map +1 -1
  510. package/dist/es-legacy/components/internal/Address/components/ReadOnlyAddress.js +1 -1
  511. package/dist/es-legacy/components/internal/Address/components/ReadOnlyAddress.js.map +1 -1
  512. package/dist/es-legacy/components/internal/Await/Await.js +1 -1
  513. package/dist/es-legacy/components/internal/Await/Await.js.map +1 -1
  514. package/dist/es-legacy/components/internal/BaseElement/BaseElement.js +1 -1
  515. package/dist/es-legacy/components/internal/BaseElement/BaseElement.js.map +1 -1
  516. package/dist/es-legacy/components/internal/ClickToPay/ClickToPayComponent.js.map +1 -1
  517. package/dist/es-legacy/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPOneTimePasswordInput.js.map +1 -1
  518. package/dist/es-legacy/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPResendOtpLink.js.map +1 -1
  519. package/dist/es-legacy/components/internal/ClickToPay/components/CtPSection/CtPLogoutLink.js.map +1 -1
  520. package/dist/es-legacy/components/internal/ClickToPay/errors/TimeoutError.js +1 -1
  521. package/dist/es-legacy/components/internal/ClickToPay/errors/TimeoutError.js.map +1 -1
  522. package/dist/es-legacy/components/internal/ClickToPay/services/ClickToPayService.js +1 -1
  523. package/dist/es-legacy/components/internal/ClickToPay/services/ClickToPayService.js.map +1 -1
  524. package/dist/es-legacy/components/internal/ClickToPay/services/sdks/MastercardSdk.js +1 -1
  525. package/dist/es-legacy/components/internal/ClickToPay/services/sdks/MastercardSdk.js.map +1 -1
  526. package/dist/es-legacy/components/internal/ClickToPay/services/sdks/SrcSdkLoader.js.map +1 -1
  527. package/dist/es-legacy/components/internal/ClickToPay/services/sdks/VisaSdk.js +1 -1
  528. package/dist/es-legacy/components/internal/ClickToPay/services/sdks/VisaSdk.js.map +1 -1
  529. package/dist/es-legacy/components/internal/CompanyDetails/CompanyDetails.js +1 -1
  530. package/dist/es-legacy/components/internal/CompanyDetails/CompanyDetails.js.map +1 -1
  531. package/dist/es-legacy/components/internal/Countdown/index.js +1 -1
  532. package/dist/es-legacy/components/internal/Countdown/index.js.map +1 -1
  533. package/dist/es-legacy/components/internal/DisclaimerMessage/DisclaimerMessage.js +1 -1
  534. package/dist/es-legacy/components/internal/DisclaimerMessage/DisclaimerMessage.js.map +1 -1
  535. package/dist/es-legacy/components/internal/ExpandButton/ExpandButton.js +2 -0
  536. package/dist/es-legacy/components/internal/ExpandButton/ExpandButton.js.map +1 -0
  537. package/dist/es-legacy/components/internal/FormFields/Checkbox/Checkbox.js +1 -1
  538. package/dist/es-legacy/components/internal/FormFields/Checkbox/Checkbox.js.map +1 -1
  539. package/dist/es-legacy/components/internal/FormFields/ConsentCheckbox/ConsentCheckbox.js +1 -1
  540. package/dist/es-legacy/components/internal/FormFields/ConsentCheckbox/ConsentCheckbox.js.map +1 -1
  541. package/dist/es-legacy/components/internal/FormFields/Field/Field.js +1 -1
  542. package/dist/es-legacy/components/internal/FormFields/Field/Field.js.map +1 -1
  543. package/dist/es-legacy/components/internal/FormFields/InputBase.js +1 -1
  544. package/dist/es-legacy/components/internal/FormFields/InputBase.js.map +1 -1
  545. package/dist/es-legacy/components/internal/FormFields/InputDate/InputDate.js +1 -1
  546. package/dist/es-legacy/components/internal/FormFields/InputDate/InputDate.js.map +1 -1
  547. package/dist/es-legacy/components/internal/FormFields/InputEmail.js +1 -1
  548. package/dist/es-legacy/components/internal/FormFields/InputEmail.js.map +1 -1
  549. package/dist/es-legacy/components/internal/FormFields/InputTelephone.js +1 -1
  550. package/dist/es-legacy/components/internal/FormFields/InputTelephone.js.map +1 -1
  551. package/dist/es-legacy/components/internal/FormFields/InputText.js +1 -1
  552. package/dist/es-legacy/components/internal/FormFields/InputText.js.map +1 -1
  553. package/dist/es-legacy/components/internal/FormFields/RadioGroup/RadioGroup.js +1 -1
  554. package/dist/es-legacy/components/internal/FormFields/RadioGroup/RadioGroup.js.map +1 -1
  555. package/dist/es-legacy/components/internal/FormFields/Select/Select.js +1 -1
  556. package/dist/es-legacy/components/internal/FormFields/Select/Select.js.map +1 -1
  557. package/dist/es-legacy/components/internal/FormFields/Select/components/SelectButton.js +1 -1
  558. package/dist/es-legacy/components/internal/FormFields/Select/components/SelectButton.js.map +1 -1
  559. package/dist/es-legacy/components/internal/FormFields/Select/components/SelectList.js.map +1 -1
  560. package/dist/es-legacy/components/internal/FormFields/Select/components/SelectListItem.js.map +1 -1
  561. package/dist/es-legacy/components/internal/IbanInput/IbanInput.js +1 -1
  562. package/dist/es-legacy/components/internal/IbanInput/IbanInput.js.map +1 -1
  563. package/dist/es-legacy/components/internal/Img/Img.js +1 -1
  564. package/dist/es-legacy/components/internal/Img/Img.js.map +1 -1
  565. package/dist/es-legacy/components/internal/IssuerList/IssuerButtonGroup/IssuerButtonGroup.js +1 -1
  566. package/dist/es-legacy/components/internal/IssuerList/IssuerButtonGroup/IssuerButtonGroup.js.map +1 -1
  567. package/dist/es-legacy/components/internal/Modal/Modal.js.map +1 -1
  568. package/dist/es-legacy/components/internal/OpenInvoice/OpenInvoice.js +1 -1
  569. package/dist/es-legacy/components/internal/OpenInvoice/OpenInvoice.js.map +1 -1
  570. package/dist/es-legacy/components/internal/PayButton/PayButton.js +1 -1
  571. package/dist/es-legacy/components/internal/PayButton/PayButton.js.map +1 -1
  572. package/dist/es-legacy/components/internal/PersonalDetails/PersonalDetails.js +1 -1
  573. package/dist/es-legacy/components/internal/PersonalDetails/PersonalDetails.js.map +1 -1
  574. package/dist/es-legacy/components/internal/PhoneInput/PhoneInput.js +1 -1
  575. package/dist/es-legacy/components/internal/PhoneInput/PhoneInput.js.map +1 -1
  576. package/dist/es-legacy/components/internal/QRLoader/QRLoader.js +1 -1
  577. package/dist/es-legacy/components/internal/QRLoader/QRLoader.js.map +1 -1
  578. package/dist/es-legacy/components/internal/RedirectButton/RedirectButton.js +1 -1
  579. package/dist/es-legacy/components/internal/RedirectButton/RedirectButton.js.map +1 -1
  580. package/dist/es-legacy/components/internal/SecuredFields/SFP/SecuredFieldsProvider.js +1 -1
  581. package/dist/es-legacy/components/internal/SecuredFields/SFP/SecuredFieldsProvider.js.map +1 -1
  582. package/dist/es-legacy/components/internal/SecuredFields/SFP/SecuredFieldsProviderHandlers.js +1 -1
  583. package/dist/es-legacy/components/internal/SecuredFields/SFP/SecuredFieldsProviderHandlers.js.map +1 -1
  584. package/dist/es-legacy/components/internal/SecuredFields/SFP/defaultProps.js +1 -1
  585. package/dist/es-legacy/components/internal/SecuredFields/SFP/defaultProps.js.map +1 -1
  586. package/dist/es-legacy/components/internal/SecuredFields/binLookup/triggerBinLookUp.js.map +1 -1
  587. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/CSF.js +1 -1
  588. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/CSF.js.map +1 -1
  589. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/configureCallbacks.js +1 -1
  590. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/configureCallbacks.js.map +1 -1
  591. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/createSecuredFields.js +1 -1
  592. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/createSecuredFields.js.map +1 -1
  593. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/handleBrandFromBinLookup.js +1 -1
  594. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/handleBrandFromBinLookup.js.map +1 -1
  595. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/handleEncryption.js +1 -1
  596. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/handleEncryption.js.map +1 -1
  597. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/handleIOSTouchEvents.js +1 -1
  598. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/handleIOSTouchEvents.js.map +1 -1
  599. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/handleValidation.js +1 -1
  600. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/extensions/handleValidation.js.map +1 -1
  601. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/initCSF.js +1 -1
  602. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/initCSF.js.map +1 -1
  603. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/partials/processBrand.js +1 -1
  604. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/partials/processBrand.js.map +1 -1
  605. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/utils/cardType.js.map +1 -1
  606. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/utils/getCardGroupTypes.js +1 -1
  607. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/utils/getCardGroupTypes.js.map +1 -1
  608. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/utils/iframes/postMessageValidation.js +1 -1
  609. package/dist/es-legacy/components/internal/SecuredFields/lib/CSF/utils/iframes/postMessageValidation.js.map +1 -1
  610. package/dist/es-legacy/components/internal/SecuredFields/lib/constants.js +1 -1
  611. package/dist/es-legacy/components/internal/SecuredFields/lib/constants.js.map +1 -1
  612. package/dist/es-legacy/components/internal/SecuredFields/lib/securedField/AbstractSecuredField.js +1 -1
  613. package/dist/es-legacy/components/internal/SecuredFields/lib/securedField/AbstractSecuredField.js.map +1 -1
  614. package/dist/es-legacy/components/internal/SecuredFields/lib/securedField/SecuredField.js +1 -1
  615. package/dist/es-legacy/components/internal/SecuredFields/lib/securedField/SecuredField.js.map +1 -1
  616. package/dist/es-legacy/components/internal/SecuredFields/lib/securedField/utils/processAriaConfig.js +1 -1
  617. package/dist/es-legacy/components/internal/SecuredFields/lib/securedField/utils/processAriaConfig.js.map +1 -1
  618. package/dist/es-legacy/components/internal/SecuredFields/lib/utilities/commonUtils.js +1 -1
  619. package/dist/es-legacy/components/internal/SecuredFields/lib/utilities/commonUtils.js.map +1 -1
  620. package/dist/es-legacy/components/internal/SecuredFields/lib/utilities/dom.js +1 -1
  621. package/dist/es-legacy/components/internal/SecuredFields/lib/utilities/dom.js.map +1 -1
  622. package/dist/es-legacy/components/internal/SecuredFields/lib/utilities/logger.js.map +1 -1
  623. package/dist/es-legacy/components/internal/SecuredFields/utils.js +1 -1
  624. package/dist/es-legacy/components/internal/SecuredFields/utils.js.map +1 -1
  625. package/dist/es-legacy/components/internal/SocialSecurityNumberBrazil/SocialSecurityNumberBrazil.js +1 -1
  626. package/dist/es-legacy/components/internal/SocialSecurityNumberBrazil/SocialSecurityNumberBrazil.js.map +1 -1
  627. package/dist/es-legacy/components/internal/UIElement/UIElement.js +1 -1
  628. package/dist/es-legacy/components/internal/UIElement/UIElement.js.map +1 -1
  629. package/dist/es-legacy/components/tx-variants.js +1 -1
  630. package/dist/es-legacy/components/tx-variants.js.map +1 -1
  631. package/dist/es-legacy/core/Analytics/Analytics.js +1 -1
  632. package/dist/es-legacy/core/Analytics/Analytics.js.map +1 -1
  633. package/dist/es-legacy/core/Analytics/analyticsPreProcessor.js +1 -1
  634. package/dist/es-legacy/core/Analytics/analyticsPreProcessor.js.map +1 -1
  635. package/dist/es-legacy/core/Analytics/utils.js +1 -1
  636. package/dist/es-legacy/core/Analytics/utils.js.map +1 -1
  637. package/dist/es-legacy/core/Context/Resources.js +1 -1
  638. package/dist/es-legacy/core/Context/Resources.js.map +1 -1
  639. package/dist/es-legacy/core/Environment/Environment.js +1 -1
  640. package/dist/es-legacy/core/Environment/Environment.js.map +1 -1
  641. package/dist/es-legacy/core/Environment/constants.js +1 -1
  642. package/dist/es-legacy/core/Environment/constants.js.map +1 -1
  643. package/dist/es-legacy/core/Errors/SRPanel.js +1 -1
  644. package/dist/es-legacy/core/Errors/SRPanel.js.map +1 -1
  645. package/dist/es-legacy/core/ProcessResponse/PaymentAction/actionTypes.js +1 -1
  646. package/dist/es-legacy/core/ProcessResponse/PaymentAction/actionTypes.js.map +1 -1
  647. package/dist/es-legacy/core/ProcessResponse/PaymentMethods/utils.js +1 -1
  648. package/dist/es-legacy/core/ProcessResponse/PaymentMethods/utils.js.map +1 -1
  649. package/dist/es-legacy/core/ProcessResponse/process-response.js +1 -1
  650. package/dist/es-legacy/core/ProcessResponse/process-response.js.map +1 -1
  651. package/dist/es-legacy/core/RiskModule/RiskModule.js +1 -1
  652. package/dist/es-legacy/core/RiskModule/RiskModule.js.map +1 -1
  653. package/dist/es-legacy/core/RiskModule/components/DeviceFingerprint/GetDeviceFingerprint.js.map +1 -1
  654. package/dist/es-legacy/core/Services/analytics/collect-id.js +1 -1
  655. package/dist/es-legacy/core/Services/analytics/collect-id.js.map +1 -1
  656. package/dist/es-legacy/core/Services/get-translations.js +1 -1
  657. package/dist/es-legacy/core/Services/get-translations.js.map +1 -1
  658. package/dist/es-legacy/core/Services/http.js +1 -1
  659. package/dist/es-legacy/core/Services/http.js.map +1 -1
  660. package/dist/es-legacy/core/config.js +1 -1
  661. package/dist/es-legacy/core/config.js.map +1 -1
  662. package/dist/es-legacy/core/core.js +1 -1
  663. package/dist/es-legacy/core/core.js.map +1 -1
  664. package/dist/es-legacy/core/core.registry.js +1 -1
  665. package/dist/es-legacy/core/core.registry.js.map +1 -1
  666. package/dist/es-legacy/core/utils.js +1 -1
  667. package/dist/es-legacy/core/utils.js.map +1 -1
  668. package/dist/es-legacy/external/preact/dist/preact.js +1 -1
  669. package/dist/es-legacy/external/preact/dist/preact.js.map +1 -1
  670. package/dist/es-legacy/external/preact/hooks/dist/hooks.js +1 -1
  671. package/dist/es-legacy/external/preact/hooks/dist/hooks.js.map +1 -1
  672. package/dist/es-legacy/language/constants.js +1 -1
  673. package/dist/es-legacy/language/constants.js.map +1 -1
  674. package/dist/es-legacy/utils/amount-util.js.map +1 -1
  675. package/dist/es-legacy/utils/browserInfo.js +1 -1
  676. package/dist/es-legacy/utils/browserInfo.js.map +1 -1
  677. package/dist/es-legacy/utils/commonUtils.js +2 -0
  678. package/dist/es-legacy/utils/commonUtils.js.map +1 -0
  679. package/dist/es-legacy/utils/listenerUtils.js +2 -0
  680. package/dist/es-legacy/utils/listenerUtils.js.map +1 -0
  681. package/dist/es-legacy/utils/regex.js.map +1 -1
  682. package/dist/es-legacy/utils/useForm/reducer.js +1 -1
  683. package/dist/es-legacy/utils/useForm/reducer.js.map +1 -1
  684. package/package.json +22 -18
  685. package/dist/es/components/Card/components/CardInput/components/IframeLabelAlternative.js.map +0 -1
  686. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodItem/ExpandButton.js +0 -2
  687. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodItem/ExpandButton.js.map +0 -1
  688. package/dist/es-legacy/components/Card/components/CardInput/components/IframeLabelAlternative.js +0 -2
  689. package/dist/es-legacy/components/Card/components/CardInput/components/IframeLabelAlternative.js.map +0 -1
  690. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodItem/ExpandButton.js +0 -2
  691. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodItem/ExpandButton.js.map +0 -1
@@ -1,2 +1,2 @@
1
- import{createElement as e}from"../../../external/preact/dist/preact.js";import{useCallback as r}from"../../../external/preact/hooks/dist/hooks.js";import t from"../../../external/classnames/index.js";import{ARIA_ERROR_SUFFIX as n,ARIA_CONTEXT_SUFFIX as o}from"../../../core/Errors/constants.js";function l(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function a(e,r){return r=null!=r?r:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):function(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t}(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})),e}function i(e,r){if(null==e)return{};var t,n,o=function(e,r){if(null==e)return{};var t,n,o={},l=Object.keys(e);for(n=0;n<l.length;n++)t=l[n],r.indexOf(t)>=0||(o[t]=e[t]);return o}(e,r);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n<l.length;n++)t=l[n],r.indexOf(t)>=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(o[t]=e[t])}return o}function u(u){var{setRef:c}=u,s=i(u,["setRef"]);const{autoCorrect:p,classNameModifiers:d,isInvalid:y,isValid:f,readonly:b=null,spellCheck:O,type:m,uniqueId:v,disabled:j}=s,h=s.className;Object.prototype.hasOwnProperty.call(s,"onChange")&&console.error("Error: Form fields that rely on InputBase may not have an onChange property");const P=r((e=>{s.onInput(e)}),[s.onInput]),g=r((e=>{(null==s?void 0:s.onKeyPress)&&s.onKeyPress(e)}),[null==s?void 0:s.onKeyPress]),k=r((e=>{(null==s?void 0:s.onKeyUp)&&s.onKeyUp(e)}),[null==s?void 0:s.onKeyUp]),w=r((e=>{var r,t;null==s||null===(r=s.onBlurHandler)||void 0===r||r.call(s,e),s.trimOnBlur&&(e.target.value=e.target.value.trim()),null==s||null===(t=s.onBlur)||void 0===t||t.call(s,e)}),[s.onBlur,s.onBlurHandler]),_=r((e=>{var r;null==s||null===(r=s.onFocusHandler)||void 0===r||r.call(s,e)}),[s.onFocusHandler]),x=t("adyen-checkout__input",[`adyen-checkout__input--${m}`],h,{"adyen-checkout__input--invalid":y,"adyen-checkout__input--valid":f},d.map((e=>`adyen-checkout__input--${e}`))),I=i(s,["classNameModifiers","uniqueId","isInvalid","isValid","addContextualElement"]);return e("input",a(function(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{},n=Object.keys(t);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(t).filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})))),n.forEach((function(r){l(e,r,t[r])}))}return e}({id:v},I),{"aria-required":I.required,type:m,className:x,readOnly:b,spellCheck:O,autoCorrect:p,"aria-describedby":`${v}${y?n:o}`,"aria-invalid":y,onInput:P,onBlur:w,onFocus:_,onKeyUp:k,onKeyPress:g,disabled:j,ref:c}))}u.defaultProps={type:"text",classNameModifiers:[]};export{u as default};
1
+ import{createElement as e}from"../../../external/preact/dist/preact.js";import{useCallback as r}from"../../../external/preact/hooks/dist/hooks.js";import t from"../../../external/classnames/index.js";import{ARIA_ERROR_SUFFIX as n,ARIA_CONTEXT_SUFFIX as o}from"../../../core/Errors/constants.js";function l(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function a(e,r){return r=null!=r?r:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):function(e){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(e);r.push.apply(r,t)}return r}(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})),e}function i(e,r){if(null==e)return{};var t,n,o=function(e,r){if(null==e)return{};var t,n,o={},l=Object.keys(e);for(n=0;n<l.length;n++)t=l[n],r.indexOf(t)>=0||(o[t]=e[t]);return o}(e,r);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n<l.length;n++)t=l[n],r.indexOf(t)>=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(o[t]=e[t])}return o}function u(u){var{setRef:c}=u,s=i(u,["setRef"]);const{autoCorrect:p,classNameModifiers:d,isInvalid:y,isValid:f,readonly:b=null,spellCheck:O,type:m,uniqueId:v,disabled:j}=s,h=s.className;Object.prototype.hasOwnProperty.call(s,"onChange")&&console.error("Error: Form fields that rely on InputBase may not have an onChange property");const P=r((e=>{s.onInput(e)}),[s.onInput]),g=r((e=>{(null==s?void 0:s.onKeyPress)&&s.onKeyPress(e)}),[null==s?void 0:s.onKeyPress]),k=r((e=>{(null==s?void 0:s.onKeyUp)&&s.onKeyUp(e)}),[null==s?void 0:s.onKeyUp]),w=r((e=>{var r,t;null==s||null===(r=s.onBlurHandler)||void 0===r||r.call(s,e),s.trimOnBlur&&(e.target.value=e.target.value.trim()),null==s||null===(t=s.onBlur)||void 0===t||t.call(s,e)}),[s.onBlur,s.onBlurHandler]),_=r((e=>{var r;null==s||null===(r=s.onFocusHandler)||void 0===r||r.call(s,e)}),[s.onFocusHandler]),x=t("adyen-checkout__input",[`adyen-checkout__input--${m}`],h,{"adyen-checkout__input--invalid":y,"adyen-checkout__input--valid":f},d.map((e=>`adyen-checkout__input--${e}`))),I=i(s,["classNameModifiers","uniqueId","isInvalid","isValid","addContextualElement"]);return e("input",a(function(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{},n=Object.keys(t);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(t).filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})))),n.forEach((function(r){l(e,r,t[r])}))}return e}({id:v},I),{"aria-required":I.required,type:m,className:x,readOnly:b,spellCheck:O,autoCorrect:p,"aria-describedby":`${v}${y?n:o}`,"aria-invalid":y,onInput:P,onBlur:w,onFocus:_,onKeyUp:k,onKeyPress:g,disabled:j,ref:c}))}u.defaultProps={type:"text",classNameModifiers:[]};export{u as default};
2
2
  //# sourceMappingURL=InputBase.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"InputBase.js","sources":["../../../../../src/components/internal/FormFields/InputBase.tsx"],"sourcesContent":["import { h, RefCallback } from 'preact';\nimport { useCallback } from 'preact/hooks';\nimport classNames from 'classnames';\nimport { ARIA_CONTEXT_SUFFIX, ARIA_ERROR_SUFFIX } from '../../../core/Errors/constants';\nimport Language from '../../../language';\nimport './FormFields.scss';\n\nexport interface InputBaseProps extends h.JSX.HTMLAttributes {\n classNameModifiers?: string[];\n isInvalid?: boolean;\n isValid?: boolean;\n readonly?: boolean;\n uniqueId?: string;\n disabled?: boolean;\n className?: string;\n placeholder?: string;\n value?: string;\n name?: string;\n checked?: boolean;\n setRef?: RefCallback<HTMLInputElement>;\n trimOnBlur?: boolean;\n i18n?: Language;\n label?: string;\n onBlurHandler?: h.JSX.GenericEventHandler<HTMLInputElement>;\n onFocusHandler?: h.JSX.GenericEventHandler<HTMLInputElement>;\n maxlength?: number | null;\n addContextualElement?: boolean;\n}\n\nexport default function InputBase({ setRef, ...props }: InputBaseProps) {\n const { autoCorrect, classNameModifiers, isInvalid, isValid, readonly = null, spellCheck, type, uniqueId, disabled } = props;\n const className = props.className as string;\n\n /**\n * To avoid confusion with misplaced/misdirected onChange handlers - InputBase only accepts onInput, onBlur & onFocus handlers.\n * The first 2 being the means by which we expect useForm--handleChangeFor validation functionality to be applied.\n */\n if (Object.prototype.hasOwnProperty.call(props, 'onChange')) {\n console.error('Error: Form fields that rely on InputBase may not have an onChange property');\n }\n\n const handleInput = useCallback(\n (event: h.JSX.TargetedInputEvent<HTMLInputElement>) => {\n props.onInput(event);\n },\n [props.onInput]\n );\n\n const handleKeyPress = useCallback(\n (event: h.JSX.TargetedKeyboardEvent<HTMLInputElement>) => {\n if (props?.onKeyPress) props.onKeyPress(event);\n },\n [props?.onKeyPress]\n );\n\n const handleKeyUp = useCallback(\n (event: h.JSX.TargetedKeyboardEvent<HTMLInputElement>) => {\n if (props?.onKeyUp) props.onKeyUp(event);\n },\n [props?.onKeyUp]\n );\n\n const handleBlur = useCallback(\n (event: h.JSX.TargetedFocusEvent<HTMLInputElement>) => {\n props?.onBlurHandler?.(event); // From Field component\n\n if (props.trimOnBlur) {\n (event.target as HTMLInputElement).value = (event.target as HTMLInputElement).value.trim(); // needed to trim trailing spaces in field (leading spaces can be done via formatting)\n }\n\n props?.onBlur?.(event);\n },\n [props.onBlur, props.onBlurHandler]\n );\n\n const handleFocus = useCallback(\n (event: h.JSX.TargetedEvent<HTMLInputElement>) => {\n props?.onFocusHandler?.(event); // From Field component\n },\n [props.onFocusHandler]\n );\n\n const inputClassNames = classNames(\n 'adyen-checkout__input',\n [`adyen-checkout__input--${type}`],\n className,\n {\n 'adyen-checkout__input--invalid': isInvalid,\n 'adyen-checkout__input--valid': isValid\n },\n classNameModifiers.map(m => `adyen-checkout__input--${m}`)\n );\n\n // Don't spread classNameModifiers etc to input element (it ends up as an attribute on the element itself)\n const { classNameModifiers: cnm, uniqueId: uid, isInvalid: iiv, isValid: iv, addContextualElement: ace, ...newProps } = props;\n\n return (\n <input\n id={uniqueId}\n {...newProps}\n aria-required={newProps.required}\n type={type}\n className={inputClassNames}\n readOnly={readonly}\n spellCheck={spellCheck}\n autoCorrect={autoCorrect}\n aria-describedby={`${uniqueId}${isInvalid ? ARIA_ERROR_SUFFIX : ARIA_CONTEXT_SUFFIX}`}\n aria-invalid={isInvalid}\n onInput={handleInput}\n onBlur={handleBlur}\n onFocus={handleFocus}\n onKeyUp={handleKeyUp}\n onKeyPress={handleKeyPress}\n disabled={disabled}\n ref={setRef}\n />\n );\n}\n\nInputBase.defaultProps = {\n type: 'text',\n classNameModifiers: []\n};\n"],"names":["InputBase","_param","setRef","props","_object_without_properties","autoCorrect","classNameModifiers","isInvalid","isValid","readonly","spellCheck","type","uniqueId","disabled","className","Object","prototype","hasOwnProperty","call","console","error","handleInput","useCallback","event","onInput","handleKeyPress","onKeyPress","handleKeyUp","onKeyUp","handleBlur","onBlurHandler","trimOnBlur","target","value","trim","onBlur","handleFocus","onFocusHandler","inputClassNames","classNames","map","m","newProps","addContextualElement","h","input","id","aria-required","required","readOnly","aria-describedby","ARIA_ERROR_SUFFIX","ARIA_CONTEXT_SUFFIX","aria-invalid","onFocus","ref","defaultProps"],"mappings":"ooCA6Be,SAASA,EAAUC,GAAA,IAAAC,OAAEA,GAAFD,EAAaE,EAAbC,EAAAH,EAAA,CAAEC,WAChC,MAAMG,YAAEA,EAAWC,mBAAEA,EAAkBC,UAAEA,EAASC,QAAEA,EAAOC,SAAEA,EAAW,KAAIC,WAAEA,EAAUC,KAAEA,EAAIC,SAAEA,EAAQC,SAAEA,GAAaV,EACjHW,EAAYX,EAAMW,UAMpBC,OAAOC,UAAUC,eAAeC,KAAKf,EAAO,aAC5CgB,QAAQC,MAAM,+EAGlB,MAAMC,EAAcC,GACfC,IACGpB,EAAMqB,QAAQD,EAAAA,GAElB,CAACpB,EAAMqB,UAGLC,EAAiBH,GAClBC,KACOpB,aAAAA,EAAAA,EAAOuB,aAAYvB,EAAMuB,WAAWH,EAAAA,GAE5C,CAACpB,aAAAA,EAAAA,EAAOuB,aAGNC,EAAcL,GACfC,KACOpB,aAAAA,EAAAA,EAAOyB,UAASzB,EAAMyB,QAAQL,EAAAA,GAEtC,CAACpB,aAAAA,EAAAA,EAAOyB,UAGNC,EAAaP,GACdC,QACGpB,EAMAA,EANAA,iBAAAA,EAAAA,EAAO2B,qBAAP3B,IAAAA,GAAAA,EAAAA,KAAAA,EAAuBoB,GAEnBpB,EAAM4B,aACLR,EAAMS,OAA4BC,MAAQV,EAAOS,OAA4BC,MAAMC,QAGxF/B,SAAAA,QAAAA,EAAAA,EAAOgC,cAAPhC,IAAAA,GAAAA,OAAAA,EAAgBoB,EAAAA,GAEpB,CAACpB,EAAMgC,OAAQhC,EAAM2B,gBAGnBM,EAAcd,GACfC,IACGpB,IAAAA,EAAAA,iBAAAA,EAAAA,EAAOkC,sBAAPlC,IAAAA,GAAAA,EAAAA,KAAAA,EAAwBoB,EAAAA,GAE5B,CAACpB,EAAMkC,iBAGLC,EAAkBC,EACpB,wBACA,CAAC,0BAA0B5B,KAC3BG,EACA,CACI,iCAAkCP,EAClC,+BAAgCC,GAEpCF,EAAmBkC,KAAIC,GAAK,0BAA0BA,OAIiDC,EAAavC,EAAAA,EAAAA,CAAhHG,qBAAyBM,WAAeL,YAAgBC,UAAamC,yBAE7E,OACIC,EAACC,QAAAA,wUAAAA,CAAAA,CACGC,GAAIlC,GACA8B,GAAAA,CACJK,gBAAeL,EAASM,SACxBrC,KAAMA,EACNG,UAAWwB,EACXW,SAAUxC,EACVC,WAAYA,EACZL,YAAaA,EACb6C,mBAAkB,GAAGtC,IAAWL,EAAY4C,EAAoBC,IAChEC,eAAc9C,EACdiB,QAASH,EACTc,OAAQN,EACRyB,QAASlB,EACTR,QAASD,EACTD,WAAYD,EACZZ,SAAUA,EACV0C,IAAKrD,IAGjB,CAEAF,EAAUwD,aAAe,CACrB7C,KAAM,OACNL,mBAAoB"}
1
+ {"version":3,"file":"InputBase.js","sources":["../../../../../src/components/internal/FormFields/InputBase.tsx"],"sourcesContent":["import { h, RefCallback } from 'preact';\nimport { useCallback } from 'preact/hooks';\nimport classNames from 'classnames';\nimport { ARIA_CONTEXT_SUFFIX, ARIA_ERROR_SUFFIX } from '../../../core/Errors/constants';\nimport Language from '../../../language';\nimport './FormFields.scss';\n\nexport interface InputBaseProps extends h.JSX.HTMLAttributes {\n classNameModifiers?: string[];\n isInvalid?: boolean;\n isValid?: boolean;\n readonly?: boolean;\n uniqueId?: string;\n disabled?: boolean;\n className?: string;\n placeholder?: string;\n value?: string;\n name?: string;\n checked?: boolean;\n setRef?: RefCallback<HTMLInputElement>;\n trimOnBlur?: boolean;\n i18n?: Language;\n label?: string;\n onBlurHandler?: h.JSX.GenericEventHandler<HTMLInputElement>;\n onFocusHandler?: h.JSX.GenericEventHandler<HTMLInputElement>;\n maxlength?: number | null;\n addContextualElement?: boolean;\n type?: string;\n}\n\nexport default function InputBase({ setRef, ...props }: InputBaseProps) {\n const { autoCorrect, classNameModifiers, isInvalid, isValid, readonly = null, spellCheck, type, uniqueId, disabled } = props;\n const className = props.className;\n\n /**\n * To avoid confusion with misplaced/misdirected onChange handlers - InputBase only accepts onInput, onBlur & onFocus handlers.\n * The first 2 being the means by which we expect useForm--handleChangeFor validation functionality to be applied.\n */\n if (Object.prototype.hasOwnProperty.call(props, 'onChange')) {\n console.error('Error: Form fields that rely on InputBase may not have an onChange property');\n }\n\n const handleInput = useCallback(\n (event: h.JSX.TargetedInputEvent<HTMLInputElement>) => {\n props.onInput(event);\n },\n [props.onInput]\n );\n\n const handleKeyPress = useCallback(\n (event: h.JSX.TargetedKeyboardEvent<HTMLInputElement>) => {\n if (props?.onKeyPress) props.onKeyPress(event);\n },\n [props?.onKeyPress]\n );\n\n const handleKeyUp = useCallback(\n (event: h.JSX.TargetedKeyboardEvent<HTMLInputElement>) => {\n if (props?.onKeyUp) props.onKeyUp(event);\n },\n [props?.onKeyUp]\n );\n\n const handleBlur = useCallback(\n (event: h.JSX.TargetedFocusEvent<HTMLInputElement>) => {\n props?.onBlurHandler?.(event); // From Field component\n\n if (props.trimOnBlur) {\n (event.target as HTMLInputElement).value = (event.target as HTMLInputElement).value.trim(); // needed to trim trailing spaces in field (leading spaces can be done via formatting)\n }\n\n props?.onBlur?.(event);\n },\n [props.onBlur, props.onBlurHandler]\n );\n\n const handleFocus = useCallback(\n (event: h.JSX.TargetedEvent<HTMLInputElement>) => {\n props?.onFocusHandler?.(event); // From Field component\n },\n [props.onFocusHandler]\n );\n\n const inputClassNames = classNames(\n 'adyen-checkout__input',\n [`adyen-checkout__input--${type}`],\n className,\n {\n 'adyen-checkout__input--invalid': isInvalid,\n 'adyen-checkout__input--valid': isValid\n },\n classNameModifiers.map(m => `adyen-checkout__input--${m}`)\n );\n\n // Don't spread classNameModifiers etc to input element (it ends up as an attribute on the element itself)\n const { classNameModifiers: cnm, uniqueId: uid, isInvalid: iiv, isValid: iv, addContextualElement: ace, ...newProps } = props;\n\n return (\n <input\n id={uniqueId}\n {...newProps}\n aria-required={newProps.required}\n type={type}\n className={inputClassNames}\n readOnly={readonly}\n spellCheck={spellCheck}\n autoCorrect={autoCorrect}\n aria-describedby={`${uniqueId}${isInvalid ? ARIA_ERROR_SUFFIX : ARIA_CONTEXT_SUFFIX}`}\n aria-invalid={isInvalid}\n onInput={handleInput}\n onBlur={handleBlur}\n onFocus={handleFocus}\n onKeyUp={handleKeyUp}\n onKeyPress={handleKeyPress}\n disabled={disabled}\n ref={setRef}\n />\n );\n}\n\nInputBase.defaultProps = {\n type: 'text',\n classNameModifiers: []\n};\n"],"names":["InputBase","_param","setRef","props","_object_without_properties","autoCorrect","classNameModifiers","isInvalid","isValid","readonly","spellCheck","type","uniqueId","disabled","className","Object","prototype","hasOwnProperty","call","console","error","handleInput","useCallback","event","onInput","handleKeyPress","onKeyPress","handleKeyUp","onKeyUp","handleBlur","onBlurHandler","trimOnBlur","target","value","trim","onBlur","handleFocus","onFocusHandler","inputClassNames","classNames","map","m","newProps","addContextualElement","h","input","id","aria-required","required","readOnly","aria-describedby","ARIA_ERROR_SUFFIX","ARIA_CONTEXT_SUFFIX","aria-invalid","onFocus","ref","defaultProps"],"mappings":"koCA8Be,SAASA,EAAUC,GAAA,IAAAC,OAAEA,GAAFD,EAAaE,EAAbC,EAAAH,EAAA,CAAEC,WAChC,MAAMG,YAAEA,EAAWC,mBAAEA,EAAkBC,UAAEA,EAASC,QAAEA,EAAOC,SAAEA,EAAW,KAAIC,WAAEA,EAAUC,KAAEA,EAAIC,SAAEA,EAAQC,SAAEA,GAAaV,EACjHW,EAAYX,EAAMW,UAMpBC,OAAOC,UAAUC,eAAeC,KAAKf,EAAO,aAC5CgB,QAAQC,MAAM,+EAGlB,MAAMC,EAAcC,GACfC,IACGpB,EAAMqB,QAAQD,EAAAA,GAElB,CAACpB,EAAMqB,UAGLC,EAAiBH,GAClBC,KACOpB,aAAAA,EAAAA,EAAOuB,aAAYvB,EAAMuB,WAAWH,EAAAA,GAE5C,CAACpB,aAAAA,EAAAA,EAAOuB,aAGNC,EAAcL,GACfC,KACOpB,aAAAA,EAAAA,EAAOyB,UAASzB,EAAMyB,QAAQL,EAAAA,GAEtC,CAACpB,aAAAA,EAAAA,EAAOyB,UAGNC,EAAaP,GACdC,QACGpB,EAMAA,EANAA,iBAAAA,EAAAA,EAAO2B,qBAAP3B,IAAAA,GAAAA,EAAAA,KAAAA,EAAuBoB,GAEnBpB,EAAM4B,aACLR,EAAMS,OAA4BC,MAAQV,EAAOS,OAA4BC,MAAMC,QAGxF/B,SAAAA,QAAAA,EAAAA,EAAOgC,cAAPhC,IAAAA,GAAAA,OAAAA,EAAgBoB,EAAAA,GAEpB,CAACpB,EAAMgC,OAAQhC,EAAM2B,gBAGnBM,EAAcd,GACfC,IACGpB,IAAAA,EAAAA,iBAAAA,EAAAA,EAAOkC,sBAAPlC,IAAAA,GAAAA,EAAAA,KAAAA,EAAwBoB,EAAAA,GAE5B,CAACpB,EAAMkC,iBAGLC,EAAkBC,EACpB,wBACA,CAAC,0BAA0B5B,KAC3BG,EACA,CACI,iCAAkCP,EAClC,+BAAgCC,GAEpCF,EAAmBkC,KAAIC,GAAK,0BAA0BA,OAIiDC,EAAavC,EAAAA,EAAAA,CAAhHG,qBAAyBM,WAAeL,YAAgBC,UAAamC,yBAE7E,OACIC,EAACC,QAAAA,wUAAAA,CAAAA,CACGC,GAAIlC,GACA8B,GAAAA,CACJK,gBAAeL,EAASM,SACxBrC,KAAMA,EACNG,UAAWwB,EACXW,SAAUxC,EACVC,WAAYA,EACZL,YAAaA,EACb6C,mBAAkB,GAAGtC,IAAWL,EAAY4C,EAAoBC,IAChEC,eAAc9C,EACdiB,QAASH,EACTc,OAAQN,EACRyB,QAASlB,EACTR,QAASD,EACTD,WAAYD,EACZZ,SAAUA,EACV0C,IAAKrD,IAGjB,CAEAF,EAAUwD,aAAe,CACrB7C,KAAM,OACNL,mBAAoB"}
@@ -1,2 +1,2 @@
1
- import{createElement as e}from"../../../../external/preact/dist/preact.js";import{useMemo as t}from"../../../../external/preact/hooks/dist/hooks.js";import r from"../InputBase.js";import{checkDateInputSupport as n,formatDate as o}from"./utils.js";function c(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function p(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){c(e,t,r[t])}))}return e}function a(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r.push.apply(r,n)}return r}(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})),e}function s(c){const s=t(n,[]);return e(r,a(p({},c),s?{type:"date"}:{onInput:e=>{const{value:t}=e.target;e.target.value=o(t),c.onInput(e)},maxLength:10}))}export{s as default};
1
+ import{createElement as e}from"../../../../external/preact/dist/preact.js";import{useMemo as t}from"../../../../external/preact/hooks/dist/hooks.js";import r from"../InputBase.js";import{checkDateInputSupport as n,formatDate as o}from"./utils.js";function c(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function p(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){c(e,t,r[t])}))}return e}function a(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t}(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})),e}function s(c){const s=t(n,[]);return e(r,a(p({},c),s?{type:"date"}:{onInput:e=>{const{value:t}=e.target;e.target.value=o(t),c.onInput(e)},maxLength:10}))}export{s as default};
2
2
  //# sourceMappingURL=InputDate.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"InputDate.js","sources":["../../../../../../src/components/internal/FormFields/InputDate/InputDate.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { useMemo } from 'preact/hooks';\nimport InputBase, { InputBaseProps } from '../InputBase';\nimport { checkDateInputSupport, formatDate } from './utils';\n\ninterface InputDateProps extends InputBaseProps {\n onInput?: (e) => void;\n}\n\nexport default function InputDate(props: InputDateProps) {\n const isDateInputSupported = useMemo(checkDateInputSupport, []);\n\n const handleInput = e => {\n const { value } = e.target;\n e.target.value = formatDate(value);\n props.onInput(e);\n };\n\n if (isDateInputSupported) {\n return <InputBase {...props} type=\"date\" />;\n }\n\n return <InputBase {...props} onInput={handleInput} maxLength={10} />;\n}\n"],"names":["InputDate","props","isDateInputSupported","useMemo","checkDateInputSupport","h","InputBase","type","onInput","e","value","target","formatDate","maxLength"],"mappings":"wiCASe,SAASA,EAAUC,GAC9B,MAAMC,EAAuBC,EAAQC,EAAuB,IAQ5D,OACWC,EAACC,EAAcL,EAAAA,EAAAA,CAAAA,EAAAA,GADtBC,EACsBD,CAAOM,KAAK,QAGhBN,CAAOO,QAVTC,IAChB,MAAMC,MAAEA,GAAUD,EAAEE,OACpBF,EAAEE,OAAOD,MAAQE,EAAWF,GAC5BT,EAAMO,QAAQC,EAAAA,EAOiCI,UAAW,KAClE"}
1
+ {"version":3,"file":"InputDate.js","sources":["../../../../../../src/components/internal/FormFields/InputDate/InputDate.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { useMemo } from 'preact/hooks';\nimport InputBase, { InputBaseProps } from '../InputBase';\nimport { checkDateInputSupport, formatDate } from './utils';\n\ninterface InputDateProps extends InputBaseProps {\n onInput?: (e) => void;\n}\n\nexport default function InputDate(props: InputDateProps) {\n const isDateInputSupported = useMemo(checkDateInputSupport, []);\n\n const handleInput = e => {\n const { value } = e.target;\n e.target.value = formatDate(value);\n props.onInput(e);\n };\n\n if (isDateInputSupported) {\n return <InputBase {...props} type=\"date\" />;\n }\n\n return <InputBase {...props} onInput={handleInput} maxLength={10} />;\n}\n"],"names":["InputDate","props","isDateInputSupported","useMemo","checkDateInputSupport","h","InputBase","type","onInput","e","value","target","formatDate","maxLength"],"mappings":"siCASe,SAASA,EAAUC,GAC9B,MAAMC,EAAuBC,EAAQC,EAAuB,IAQ5D,OACWC,EAACC,EAAcL,EAAAA,EAAAA,CAAAA,EAAAA,GADtBC,EACsBD,CAAOM,KAAK,QAGhBN,CAAOO,QAVTC,IAChB,MAAMC,MAAEA,GAAUD,EAAEE,OACpBF,EAAEE,OAAOD,MAAQE,EAAWF,GAC5BT,EAAMO,QAAQC,EAAAA,EAOiCI,UAAW,KAClE"}
@@ -1,2 +1,2 @@
1
- import{createElement as e}from"../../../external/preact/dist/preact.js";import t from"./InputBase.js";function r(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function n(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r.push.apply(r,n)}return r}(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})),e}function o(o){return e(t,n(function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},o=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),o.forEach((function(t){r(e,t,n[t])}))}return e}({},o),{type:"email",autoCapitalize:"off"}))}export{o as default};
1
+ import{createElement as e}from"../../../external/preact/dist/preact.js";import t from"./InputBase.js";function r(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function n(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t}(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})),e}function o(o){return e(t,n(function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},o=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),o.forEach((function(t){r(e,t,n[t])}))}return e}({},o),{type:"email",autoCapitalize:"off"}))}export{o as default};
2
2
  //# sourceMappingURL=InputEmail.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"InputEmail.js","sources":["../../../../../src/components/internal/FormFields/InputEmail.tsx"],"sourcesContent":["import { h } from 'preact';\nimport InputBase, { InputBaseProps } from './InputBase';\n\nexport default function InputEmail(props: InputBaseProps) {\n return <InputBase {...props} type=\"email\" autoCapitalize=\"off\" />;\n}\n"],"names":["InputEmail","props","h","InputBase","type","autoCapitalize"],"mappings":"+kBAGe,SAASA,EAAWC,GAC/B,OAAOC,EAACC,EAAcF,wUAAAA,CAAAA,CAAAA,EAAAA,GAAAA,CAAOG,KAAK,QAAQC,eAAe,QAC7D"}
1
+ {"version":3,"file":"InputEmail.js","sources":["../../../../../src/components/internal/FormFields/InputEmail.tsx"],"sourcesContent":["import { h } from 'preact';\nimport InputBase, { InputBaseProps } from './InputBase';\n\nexport default function InputEmail(props: InputBaseProps) {\n return <InputBase {...props} type=\"email\" autoCapitalize=\"off\" />;\n}\n"],"names":["InputEmail","props","h","InputBase","type","autoCapitalize"],"mappings":"6kBAGe,SAASA,EAAWC,GAC/B,OAAOC,EAACC,EAAcF,wUAAAA,CAAAA,CAAAA,EAAAA,GAAAA,CAAOG,KAAK,QAAQC,eAAe,QAC7D"}
@@ -1,2 +1,2 @@
1
- import{createElement as e}from"../../../external/preact/dist/preact.js";import t from"./InputBase.js";function r(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function n(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r.push.apply(r,n)}return r}(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})),e}function o(o){return e(t,n(function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},o=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),o.forEach((function(t){r(e,t,n[t])}))}return e}({},o),{type:"tel"}))}export{o as default};
1
+ import{createElement as e}from"../../../external/preact/dist/preact.js";import t from"./InputBase.js";function r(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function n(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t}(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})),e}function o(o){return e(t,n(function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},o=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),o.forEach((function(t){r(e,t,n[t])}))}return e}({},o),{type:"tel"}))}export{o as default};
2
2
  //# sourceMappingURL=InputTelephone.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"InputTelephone.js","sources":["../../../../../src/components/internal/FormFields/InputTelephone.tsx"],"sourcesContent":["import { h } from 'preact';\nimport InputBase from './InputBase';\n\nexport default function InputTelephone(props) {\n return <InputBase {...props} type=\"tel\" />;\n}\n"],"names":["InputTelephone","props","h","InputBase","type"],"mappings":"+kBAGe,SAASA,EAAeC,GACnC,OAAOC,EAACC,EAAcF,wUAAAA,CAAAA,CAAAA,EAAAA,GAAAA,CAAOG,KAAK,QACtC"}
1
+ {"version":3,"file":"InputTelephone.js","sources":["../../../../../src/components/internal/FormFields/InputTelephone.tsx"],"sourcesContent":["import { h } from 'preact';\nimport InputBase from './InputBase';\n\nexport default function InputTelephone(props) {\n return <InputBase {...props} type=\"tel\" />;\n}\n"],"names":["InputTelephone","props","h","InputBase","type"],"mappings":"6kBAGe,SAASA,EAAeC,GACnC,OAAOC,EAACC,EAAcF,wUAAAA,CAAAA,CAAAA,EAAAA,GAAAA,CAAOG,KAAK,QACtC"}
@@ -1,2 +1,2 @@
1
- import{createElement as e}from"../../../external/preact/dist/preact.js";import t from"./InputBase.js";function r(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function n(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r.push.apply(r,n)}return r}(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})),e}function o(o){return e(t,n(function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},o=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),o.forEach((function(t){r(e,t,n[t])}))}return e}({classNameModifiers:["large"]},o),{"aria-required":o.required,type:"text"}))}export{o as default};
1
+ import{createElement as e}from"../../../external/preact/dist/preact.js";import t from"./InputBase.js";function r(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function n(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t}(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})),e}function o(o){return e(t,n(function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},o=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),o.forEach((function(t){r(e,t,n[t])}))}return e}({classNameModifiers:["large"]},o),{"aria-required":o.required,type:"text"}))}export{o as default};
2
2
  //# sourceMappingURL=InputText.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"InputText.js","sources":["../../../../../src/components/internal/FormFields/InputText.tsx"],"sourcesContent":["import { h } from 'preact';\nimport InputBase, { InputBaseProps } from './InputBase';\n\nexport default function InputText(props: InputBaseProps) {\n /* Type of input base is always text, which is combined with using inputmode to change mobile keyboards.\n * This gives the most consistent and performant mobile input experience.\n */\n return <InputBase classNameModifiers={['large']} {...props} aria-required={props.required} type=\"text\" />;\n}\n"],"names":["InputText","props","h","InputBase","classNameModifiers","aria-required","required","type"],"mappings":"+kBAGe,SAASA,EAAUC,GAI9B,OAAOC,EAACC,EAAAA,wUAAAA,CAAAA,CAAUC,mBAAoB,CAAC,UAAcH,GAAAA,CAAOI,gBAAeJ,EAAMK,SAAUC,KAAK,SACpG"}
1
+ {"version":3,"file":"InputText.js","sources":["../../../../../src/components/internal/FormFields/InputText.tsx"],"sourcesContent":["import { h } from 'preact';\nimport InputBase, { InputBaseProps } from './InputBase';\n\nexport default function InputText(props: InputBaseProps) {\n /* Type of input base is always text, which is combined with using inputmode to change mobile keyboards.\n * This gives the most consistent and performant mobile input experience.\n */\n return <InputBase classNameModifiers={['large']} {...props} aria-required={props.required} type=\"text\" />;\n}\n"],"names":["InputText","props","h","InputBase","classNameModifiers","aria-required","required","type"],"mappings":"6kBAGe,SAASA,EAAUC,GAI9B,OAAOC,EAACC,EAAAA,wUAAAA,CAAAA,CAAUC,mBAAoB,CAAC,UAAcH,GAAAA,CAAOI,gBAAeJ,EAAMK,SAAUC,KAAK,SACpG"}
@@ -1,2 +1,2 @@
1
- import{createElement as e}from"../../../../external/preact/dist/preact.js";import a from"../../../../external/classnames/index.js";import{getUniqueId as o}from"../../../../utils/idGenerator.js";import{useCoreContext as r}from"../../../../core/Context/CoreProvider.js";function t(t){const{items:n,name:i,onChange:d,value:l,isInvalid:s,uniqueId:c}=t,{i18n:_}=r(),u=null==c?void 0:c.replace(/[0-9]/g,"").substring(0,c.lastIndexOf("-"));return e("div",{className:"adyen-checkout__radio_group"},n.map((r=>{const n=o(u);return e("div",{key:r.id,className:"adyen-checkout__radio_group__input-wrapper"},e("input",{id:n,type:"radio",checked:l===r.id,className:"adyen-checkout__radio_group__input",name:i,onChange:d,onClick:d,value:r.id}),e("label",{className:a(["adyen-checkout__label__text","adyen-checkout__radio_group__label",t.className,{"adyen-checkout__radio_group__label--invalid":s}]),htmlFor:n},_.get(r.name)))})))}t.defaultProps={onChange:()=>{},items:[]};export{t as default};
1
+ import{createElement as e}from"../../../../external/preact/dist/preact.js";import r from"../../../../external/classnames/index.js";import{getUniqueId as a}from"../../../../utils/idGenerator.js";import{useCoreContext as t}from"../../../../core/Context/CoreProvider.js";function n(e,r,a){return r in e?Object.defineProperty(e,r,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[r]=a,e}function o(o){const{items:i,name:l,onChange:c,value:u,isInvalid:s,uniqueId:d,ariaLabel:p}=o,{i18n:_}=t(),m=null==d?void 0:d.replace(/[0-9]/g,"").substring(0,d.lastIndexOf("-"));return e("div",function(e){for(var r=1;r<arguments.length;r++){var a=null!=arguments[r]?arguments[r]:{},t=Object.keys(a);"function"==typeof Object.getOwnPropertySymbols&&(t=t.concat(Object.getOwnPropertySymbols(a).filter((function(e){return Object.getOwnPropertyDescriptor(a,e).enumerable})))),t.forEach((function(r){n(e,r,a[r])}))}return e}({className:"adyen-checkout__radio_group",role:"radiogroup"},p&&{"aria-label":p}),i.map((t=>{const n=a(m);return e("div",{key:t.id,className:"adyen-checkout__radio_group__input-wrapper"},e("input",{id:n,type:"radio",checked:u===t.id,className:"adyen-checkout__radio_group__input",name:l,onChange:c,onClick:c,value:t.id}),e("label",{className:r(["adyen-checkout__label__text","adyen-checkout__radio_group__label",o.className,{"adyen-checkout__radio_group__label--invalid":s}]),htmlFor:n},_.get(t.name)))})))}o.defaultProps={onChange:()=>{},items:[]};export{o as default};
2
2
  //# sourceMappingURL=RadioGroup.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RadioGroup.js","sources":["../../../../../../src/components/internal/FormFields/RadioGroup/RadioGroup.tsx"],"sourcesContent":["import { h } from 'preact';\nimport cx from 'classnames';\nimport './RadioGroup.scss';\nimport { RadioGroupProps } from './types';\nimport { getUniqueId } from '../../../../utils/idGenerator';\nimport { useCoreContext } from '../../../../core/Context/CoreProvider';\n\nexport default function RadioGroup(props: RadioGroupProps) {\n const { items, name, onChange, value, isInvalid, uniqueId } = props;\n\n const { i18n } = useCoreContext();\n const uniqueIdBase = uniqueId?.replace(/[0-9]/g, '').substring(0, uniqueId.lastIndexOf('-'));\n\n return (\n <div className=\"adyen-checkout__radio_group\">\n {items.map(item => {\n const uniqueId = getUniqueId(uniqueIdBase);\n return (\n <div key={item.id} className=\"adyen-checkout__radio_group__input-wrapper\">\n <input\n id={uniqueId}\n type=\"radio\"\n checked={value === item.id}\n className=\"adyen-checkout__radio_group__input\"\n name={name}\n onChange={onChange}\n onClick={onChange}\n value={item.id}\n />\n <label\n className={cx([\n 'adyen-checkout__label__text',\n 'adyen-checkout__radio_group__label',\n props.className,\n { 'adyen-checkout__radio_group__label--invalid': isInvalid }\n ])}\n htmlFor={uniqueId}\n >\n {i18n.get(item.name)}\n </label>\n </div>\n );\n })}\n </div>\n );\n}\n\nRadioGroup.defaultProps = {\n onChange: () => {},\n items: []\n};\n"],"names":["RadioGroup","props","items","name","onChange","value","isInvalid","uniqueId","i18n","useCoreContext","uniqueIdBase","replace","substring","lastIndexOf","h","div","className","map","item","getUniqueId","key","id","input","type","checked","onClick","label","cx","htmlFor","get","defaultProps"],"mappings":"4QAOe,SAASA,EAAWC,GAC/B,MAAMC,MAAEA,EAAKC,KAAEA,EAAIC,SAAEA,EAAQC,MAAEA,EAAKC,UAAEA,EAASC,SAAEA,GAAaN,GAExDO,KAAEA,GAASC,IACXC,EAAeH,aAAAA,EAAAA,EAAUI,QAAQ,SAAU,IAAIC,UAAU,EAAGL,EAASM,YAAY,MAEvF,OACIC,EAACC,MAAAA,CAAIC,UAAU,+BACVd,EAAMe,KAAIC,IACP,MAAMX,EAAWY,EAAYT,GAC7B,OACII,EAACC,MAAAA,CAAIK,IAAKF,EAAKG,GAAIL,UAAU,8CACzBF,EAACQ,QAAAA,CACGD,GAAId,EACJgB,KAAK,QACLC,QAASnB,IAAUa,EAAKG,GACxBL,UAAU,qCACVb,KAAMA,EACNC,SAAUA,EACVqB,QAASrB,EACTC,MAAOa,EAAKG,KAEhBP,EAACY,QAAAA,CACGV,UAAWW,EAAG,CACV,8BACA,qCACA1B,EAAMe,UACN,CAAE,8CAA+CV,KAErDsB,QAASrB,GAERC,EAAKqB,IAAIX,EAAKf,OAAI,IAO/C,CAEAH,EAAW8B,aAAe,CACtB1B,SAAU,OACVF,MAAO"}
1
+ {"version":3,"file":"RadioGroup.js","sources":["../../../../../../src/components/internal/FormFields/RadioGroup/RadioGroup.tsx"],"sourcesContent":["import { h } from 'preact';\nimport cx from 'classnames';\nimport './RadioGroup.scss';\nimport { RadioGroupProps } from './types';\nimport { getUniqueId } from '../../../../utils/idGenerator';\nimport { useCoreContext } from '../../../../core/Context/CoreProvider';\n\nexport default function RadioGroup(props: RadioGroupProps) {\n const { items, name, onChange, value, isInvalid, uniqueId, ariaLabel } = props;\n\n const { i18n } = useCoreContext();\n const uniqueIdBase = uniqueId?.replace(/[0-9]/g, '').substring(0, uniqueId.lastIndexOf('-'));\n\n return (\n <div className=\"adyen-checkout__radio_group\" role={'radiogroup'} {...(ariaLabel && { ['aria-label']: ariaLabel })}>\n {items.map(item => {\n const uniqueId = getUniqueId(uniqueIdBase);\n return (\n <div key={item.id} className=\"adyen-checkout__radio_group__input-wrapper\">\n <input\n id={uniqueId}\n type=\"radio\"\n checked={value === item.id}\n className=\"adyen-checkout__radio_group__input\"\n name={name}\n onChange={onChange}\n onClick={onChange}\n value={item.id}\n />\n <label\n className={cx([\n 'adyen-checkout__label__text',\n 'adyen-checkout__radio_group__label',\n props.className,\n { 'adyen-checkout__radio_group__label--invalid': isInvalid }\n ])}\n htmlFor={uniqueId}\n >\n {i18n.get(item.name)}\n </label>\n </div>\n );\n })}\n </div>\n );\n}\n\nRadioGroup.defaultProps = {\n onChange: () => {},\n items: []\n};\n"],"names":["RadioGroup","props","items","name","onChange","value","isInvalid","uniqueId","ariaLabel","i18n","useCoreContext","uniqueIdBase","replace","substring","lastIndexOf","h","div","className","role","map","item","getUniqueId","key","id","input","type","checked","onClick","label","cx","htmlFor","get","defaultProps"],"mappings":"oYAOe,SAASA,EAAWC,GAC/B,MAAMC,MAAEA,EAAKC,KAAEA,EAAIC,SAAEA,EAAQC,MAAEA,EAAKC,UAAEA,EAASC,SAAEA,EAAQC,UAAEA,GAAcP,GAEnEQ,KAAEA,GAASC,IACXC,EAAeJ,aAAAA,EAAAA,EAAUK,QAAQ,SAAU,IAAIC,UAAU,EAAGN,EAASO,YAAY,MAEvF,OACIC,EAACC,4UAAAA,CAAAA,CAAIC,UAAU,8BAA8BC,KAAM,cAAmBV,GAAa,CAAE,aAAgBA,IAChGN,EAAMiB,KAAIC,IACP,MAAMb,EAAWc,EAAYV,GAC7B,OACII,EAACC,MAAAA,CAAIM,IAAKF,EAAKG,GAAIN,UAAU,8CACzBF,EAACS,QAAAA,CACGD,GAAIhB,EACJkB,KAAK,QACLC,QAASrB,IAAUe,EAAKG,GACxBN,UAAU,qCACVd,KAAMA,EACNC,SAAUA,EACVuB,QAASvB,EACTC,MAAOe,EAAKG,KAEhBR,EAACa,QAAAA,CACGX,UAAWY,EAAG,CACV,8BACA,qCACA5B,EAAMgB,UACN,CAAE,8CAA+CX,KAErDwB,QAASvB,GAERE,EAAKsB,IAAIX,EAAKjB,OAAI,IAO/C,CAEAH,EAAWgC,aAAe,CACtB5B,SAAU,OACVF,MAAO"}
@@ -1,2 +1,2 @@
1
- import{createElement as e}from"../../../../external/preact/dist/preact.js";import{useRef as t,useState as n,useMemo as r,useEffect as s}from"../../../../external/preact/hooks/dist/hooks.js";import l from"../../../../external/classnames/index.js";import o from"./components/SelectButton.js";import a from"./components/SelectList.js";import i from"../../../../utils/uuid.js";import{keys as c}from"./constants.js";import{ARIA_ERROR_SUFFIX as u,ARIA_CONTEXT_SUFFIX as d}from"../../../../core/Errors/constants.js";import{simulateFocusScroll as m}from"../utils.js";function f({items:f=[],className:p="",classNameModifiers:g=[],filterable:h=!0,readonly:v=!1,onChange:b=(()=>{}),onInput:y,selectedValue:k,name:w,isInvalid:I,isValid:L,placeholder:D,uniqueId:j,disabled:x,disableTextFilter:E,clearOnSelect:T,blurOnClose:B,onListToggle:C}){const N=t(null),S=t(null),$=t(null),M=t(null),[R,_]=n(null),[P,V]=n(!1),A=r((()=>`select-${i()}`),[]),F=f.find((e=>e.id===k))||{},[H,K]=n(),[O,U]=n(F),q=F,z=E?f:f.filter((e=>!R||e.name.toLowerCase().includes(R.toLowerCase()))),G=j?`${j}${I?u:d}`:null,J=e=>{if(!e)return;const t=document.getElementById(`listItem-${e.id}`);m(t)},Q=()=>{B&&N.current.blur(),V(!1)},W=()=>{V(!0)},X=e=>{const t=e.currentTarget.getAttribute("data-value");return z.find((e=>e.id==t))},Y=e=>{let t;e.preventDefault(),t=e.currentTarget instanceof HTMLElement&&"option"===e.currentTarget.getAttribute("role")?X(e):O.id&&z.some((e=>e.id===O.id))?O:R?z[0]:{id:k},t&&!t.disabled&&(b({target:{value:t.id,name:w}}),T&&K(null),Q())},Z=e=>{switch(e.key){case c.space:case c.enter:Y(e);break;case c.arrowDown:e.preventDefault(),(()=>{if(!z||z.length<1)return;const e=z.findIndex((e=>e===O))+1,t=e<z.length?e:0,n=z[t];J(n),U(n)})();break;case c.arrowUp:e.preventDefault(),(()=>{if(!z||z.length<1)return;const e=z.findIndex((e=>e===O))-1,t=e<0?z.length-1:e,n=z[t];J(n),U(n)})()}};return s((()=>{P?K(null):_(null)}),[P]),s((()=>{P&&h&&N.current&&N.current.focus(),null==C||C(P)}),[P]),s((()=>{function e(e){(e.composedPath?!e.composedPath().includes(S.current):!S.current.contains(e.target))&&Q()}return document.addEventListener("click",e,!1),()=>{document.removeEventListener("click",e,!1)}}),[S]),e("div",{className:l(["adyen-checkout__dropdown",p,...g.map((e=>`adyen-checkout__dropdown--${e}`))]),ref:S},e(o,{inputText:H,id:null!=j?j:null,active:O,selected:q,filterInputRef:N,filterable:h,isInvalid:I,isValid:L,onButtonKeyDown:e=>{e.key===c.enter&&h&&P&&R?Y(e):e.key===c.escape?Q():![c.arrowUp,c.arrowDown,c.enter].includes(e.key)&&(e.key!==c.space||h&&P)?(e.shiftKey&&e.key===c.tab||e.key===c.tab)&&Q():(e.preventDefault(),P?Z(e):W())},onFocus:W,onInput:e=>{const t=e.target.value;K(t),_(t),y&&y(t)},placeholder:D,readonly:v,selectListId:A,showList:P,toggleButtonRef:$,toggleList:e=>{e.preventDefault(),P?(K(q.name),Q()):(K(null),W())},disabled:x,ariaDescribedBy:G}),e(a,{active:O,filteredItems:z,onHover:e=>{e.preventDefault();const t=X(e);U(t)},onSelect:Y,selected:q,selectListId:A,selectListRef:M,showList:P}))}f.defaultProps={className:"",classNameModifiers:[],filterable:!0,items:[],readonly:!1,onChange:()=>{}};export{f as default};
1
+ import{createElement as e}from"../../../../external/preact/dist/preact.js";import{useRef as t,useState as n,useMemo as r,useEffect as l}from"../../../../external/preact/hooks/dist/hooks.js";import s from"../../../../external/classnames/index.js";import o from"./components/SelectButton.js";import a from"./components/SelectList.js";import i from"../../../../utils/uuid.js";import{keys as c}from"./constants.js";import{ARIA_ERROR_SUFFIX as u,ARIA_CONTEXT_SUFFIX as d}from"../../../../core/Errors/constants.js";import{simulateFocusScroll as m}from"../utils.js";function f({items:f=[],className:p="",classNameModifiers:g=[],filterable:h=!0,readonly:v=!1,onChange:b=()=>{},onInput:w,selectedValue:y,name:k,isInvalid:I,isValid:L,placeholder:D,uniqueId:j,disabled:x,disableTextFilter:B,clearOnSelect:E,blurOnClose:T,onListToggle:C,allowIdOnButton:N=!1}){const S=t(null),$=t(null),M=t(null),O=t(null),[R,_]=n(null),[P,V]=n(!1),A=r((()=>`select-${i()}`),[]),F=f.find((e=>e.id===y))||{},[H,K]=n(),[U,q]=n(F),z=F,G=B?f:f.filter((e=>!R||e.name.toLowerCase().includes(R.toLowerCase()))),J=j?`${j}${I?u:d}`:null,Q=e=>{if(!e)return;const t=document.getElementById(`listItem-${e.id}`);m(t)},W=()=>{T&&S.current.blur(),V(!1)},X=()=>{V(!0)},Y=e=>{const t=e.currentTarget.getAttribute("data-value");return G.find((e=>e.id==t))},Z=e=>{let t;e.preventDefault(),t=e.currentTarget instanceof HTMLElement&&"option"===e.currentTarget.getAttribute("role")?Y(e):U.id&&G.some((e=>e.id===U.id))?U:R?G[0]:{id:y},t&&!t.disabled&&(b({target:{value:t.id,name:k}}),E&&K(null),W())},ee=e=>{switch(e.key){case c.space:case c.enter:Z(e);break;case c.arrowDown:e.preventDefault(),(()=>{if(!G||G.length<1)return;const e=G.findIndex((e=>e===U))+1,t=e<G.length?e:0,n=G[t];Q(n),q(n)})();break;case c.arrowUp:e.preventDefault(),(()=>{if(!G||G.length<1)return;const e=G.findIndex((e=>e===U))-1,t=e<0?G.length-1:e,n=G[t];Q(n),q(n)})()}};return l((()=>{P?K(null):_(null)}),[P]),l((()=>{P&&h&&S.current&&S.current.focus(),null==C||C(P)}),[P]),l((()=>{function e(e){(e.composedPath?!e.composedPath().includes($.current):!$.current.contains(e.target))&&W()}return document.addEventListener("click",e,!1),()=>{document.removeEventListener("click",e,!1)}}),[$]),e("div",{className:s(["adyen-checkout__dropdown",p,...g.map((e=>`adyen-checkout__dropdown--${e}`))]),ref:$},e(o,{inputText:H,id:null!=j?j:null,active:U,selected:z,filterInputRef:S,filterable:h,isInvalid:I,isValid:L,onButtonKeyDown:e=>{e.key===c.enter&&h&&P&&R?Z(e):e.key===c.escape?W():![c.arrowUp,c.arrowDown,c.enter].includes(e.key)&&(e.key!==c.space||h&&P)?(e.shiftKey&&e.key===c.tab||e.key===c.tab)&&W():(e.preventDefault(),P?ee(e):X())},onFocus:X,onInput:e=>{const t=e.target.value;K(t),_(t),w&&w(t)},placeholder:D,readonly:v,selectListId:A,showList:P,toggleButtonRef:M,toggleList:e=>{e.preventDefault(),P?(K(z.name),W()):(K(null),X())},disabled:x,ariaDescribedBy:J,allowIdOnButton:N}),e(a,{active:U,filteredItems:G,onHover:e=>{e.preventDefault();const t=Y(e);q(t)},onSelect:Z,selected:z,selectListId:A,selectListRef:O,showList:P}))}f.defaultProps={className:"",classNameModifiers:[],filterable:!0,items:[],readonly:!1,onChange:()=>{}};export{f as default};
2
2
  //# sourceMappingURL=Select.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Select.js","sources":["../../../../../../src/components/internal/FormFields/Select/Select.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { useEffect, useMemo, useRef, useState } from 'preact/hooks';\nimport cx from 'classnames';\nimport SelectButton from './components/SelectButton';\nimport SelectList from './components/SelectList';\nimport uuid from '../../../../utils/uuid';\nimport { keys } from './constants';\nimport { SelectItem, SelectProps } from './types';\nimport './Select.scss';\nimport { ARIA_CONTEXT_SUFFIX, ARIA_ERROR_SUFFIX } from '../../../../core/Errors/constants';\nimport { simulateFocusScroll } from '../utils';\n\nfunction Select({\n items = [],\n className = '',\n classNameModifiers = [],\n filterable = true,\n readonly = false,\n onChange = () => {},\n onInput,\n selectedValue,\n name,\n isInvalid,\n isValid,\n placeholder,\n uniqueId,\n disabled,\n disableTextFilter,\n clearOnSelect,\n blurOnClose,\n onListToggle\n}: SelectProps) {\n const filterInputRef = useRef(null);\n const selectContainerRef = useRef(null);\n const toggleButtonRef = useRef(null);\n const selectListRef = useRef(null);\n const [textFilter, setTextFilter] = useState<string>(null);\n const [showList, setShowList] = useState<boolean>(false);\n const selectListId: string = useMemo(() => `select-${uuid()}`, []);\n\n const active: SelectItem = items.find(i => i.id === selectedValue) || ({} as SelectItem);\n\n const [inputText, setInputText] = useState<string>();\n\n const [activeOption, setActiveOption] = useState<SelectItem>(active);\n\n const selectedOption = active;\n\n const filteredItems = disableTextFilter ? items : items.filter(item => !textFilter || item.name.toLowerCase().includes(textFilter.toLowerCase()));\n\n const suffix = isInvalid ? ARIA_ERROR_SUFFIX : ARIA_CONTEXT_SUFFIX;\n const ariaDescribedBy = uniqueId ? `${uniqueId}${suffix}` : null;\n\n const setNextActive = () => {\n if (!filteredItems || filteredItems.length < 1) return;\n const possibleNextIndex = filteredItems.findIndex(listItem => listItem === activeOption) + 1;\n const nextIndex = possibleNextIndex < filteredItems.length ? possibleNextIndex : 0;\n const nextItem = filteredItems[nextIndex];\n scrollToItem(nextItem);\n setActiveOption(nextItem);\n };\n\n const setPreviousActive = () => {\n if (!filteredItems || filteredItems.length < 1) return;\n const possibleNextIndex = filteredItems.findIndex(listItem => listItem === activeOption) - 1;\n const nextIndex = possibleNextIndex < 0 ? filteredItems.length - 1 : possibleNextIndex;\n const nextItem = filteredItems[nextIndex];\n scrollToItem(nextItem);\n setActiveOption(nextItem);\n };\n\n const scrollToItem = (item: SelectItem) => {\n if (!item) return;\n const nextElement = document.getElementById(`listItem-${item.id}`);\n simulateFocusScroll(nextElement);\n };\n\n /**\n * Closes the selectList, empties the text filter and focuses the button element\n */\n const closeList = () => {\n //blurs the field when the list is closed, makes for a better UX for most users, needs more testing\n blurOnClose && filterInputRef.current.blur();\n setShowList(false);\n };\n\n const openList = () => {\n setShowList(true);\n };\n\n const extractItemFromEvent = (e: Event): SelectItem => {\n const value = (e.currentTarget as HTMLInputElement).getAttribute('data-value') as string;\n return filteredItems.find(listItem => listItem.id == value);\n };\n\n /**\n * Closes the select list and fires an onChange\n * @param e - Event\n */\n const handleSelect = (e: Event) => {\n e.preventDefault();\n\n // We use a local variable here since writing and if statement is cleaner then a long ternary\n let valueToEmit;\n\n if (e.currentTarget instanceof HTMLElement && e.currentTarget.getAttribute('role') === 'option') {\n // This is the main scenario when clicking and item in the list\n // Item comes from the event\n valueToEmit = extractItemFromEvent(e);\n } else if (activeOption.id && filteredItems.some(item => item.id === activeOption.id)) {\n // This is the scenario where a user is using the keyboard to navigate\n // In the case item comes from the visually select item\n valueToEmit = activeOption;\n } else {\n // This is the scenario the user didn't select anything\n if (textFilter) {\n // if we filtering for something then select the first option\n valueToEmit = filteredItems[0];\n } else {\n // This will happen when we want to keep an already chosen option\n // If no active option we should just emit again with the value that was already selected\n valueToEmit = { id: selectedValue };\n }\n }\n\n if (valueToEmit && !valueToEmit.disabled) {\n onChange({ target: { value: valueToEmit.id, name: name } });\n\n if (clearOnSelect) setInputText(null);\n\n closeList();\n }\n };\n\n /**\n * Handles hovering and directions\n * @param e - Event\n */\n const handleHover = (e: Event) => {\n e.preventDefault();\n const item = extractItemFromEvent(e);\n setActiveOption(item);\n };\n\n /**\n * Handle keyDown events on the selectList button\n * Responsible for opening and closing the list\n * @param e - KeyboardEvent\n */\n const handleButtonKeyDown = (e: KeyboardEvent) => {\n if (e.key === keys.enter && filterable && showList && textFilter) {\n handleSelect(e);\n } else if (e.key === keys.escape) {\n // When user has focused Select button but not yet moved into Select list - close list and keep focus on the Select Button re. a11y guidelines\n // https://w3c.github.io/aria-practices/examples/disclosure/disclosure-navigation.html\n closeList();\n } else if ([keys.arrowUp, keys.arrowDown, keys.enter].includes(e.key) || (e.key === keys.space && (!filterable || !showList))) {\n e.preventDefault();\n if (!showList) {\n openList();\n } else {\n handleNavigationKeys(e);\n }\n } else if (e.shiftKey && e.key === keys.tab) {\n // Shift-Tab out of Select - close list re. a11y guidelines (above)\n closeList();\n } else if (e.key === keys.tab) {\n closeList();\n }\n };\n\n /**\n * Handles movement with navigation keys and enter\n * Navigates through the list, or select an element, or focus the filter input, or close the menu.\n * @param e - KeyDownEvent\n */\n const handleNavigationKeys = (e: KeyboardEvent) => {\n switch (e.key) {\n case keys.space:\n case keys.enter:\n handleSelect(e);\n break;\n case keys.arrowDown:\n e.preventDefault();\n setNextActive();\n break;\n case keys.arrowUp:\n e.preventDefault();\n setPreviousActive();\n break;\n default:\n }\n };\n\n /**\n * Updates the state with the current text filter value\n * @param e - KeyboardEvent\n */\n const handleTextFilter = (e: KeyboardEvent) => {\n const value: string = (e.target as HTMLInputElement).value;\n setInputText(value);\n setTextFilter(value);\n if (onInput) {\n onInput(value);\n }\n };\n\n /**\n * Toggles the selectList and focuses in either the filter input or in the selectList button\n * @param e - Event\n */\n const toggleList = (e: Event) => {\n e.preventDefault();\n if (!showList) {\n setInputText(null);\n openList();\n } else {\n setInputText(selectedOption.name);\n closeList();\n }\n };\n\n useEffect(() => {\n if (showList) {\n setInputText(null);\n } else {\n setTextFilter(null);\n }\n }, [showList]);\n\n /**\n * Focus on the input if filterable\n */\n useEffect(() => {\n if (showList && filterable && filterInputRef.current) {\n filterInputRef.current.focus();\n }\n onListToggle?.(showList);\n }, [showList]);\n\n useEffect(() => {\n /**\n * Close the select list when clicking outside the list\n * @param e - MouseEvent\n */\n function handleClickOutside(e: MouseEvent) {\n // use composedPath so it can also check when inside a web component\n // if composedPath is not available fallback to e.target\n const clickIsOutside = e.composedPath\n ? !e.composedPath().includes(selectContainerRef.current)\n : !selectContainerRef.current.contains(e.target);\n if (clickIsOutside) {\n closeList();\n }\n }\n\n document.addEventListener('click', handleClickOutside, false);\n\n return () => {\n document.removeEventListener('click', handleClickOutside, false);\n };\n }, [selectContainerRef]);\n\n return (\n <div\n className={cx(['adyen-checkout__dropdown', className, ...classNameModifiers.map(m => `adyen-checkout__dropdown--${m}`)])}\n ref={selectContainerRef}\n >\n <SelectButton\n inputText={inputText}\n id={uniqueId ?? null}\n active={activeOption}\n selected={selectedOption}\n filterInputRef={filterInputRef}\n filterable={filterable}\n isInvalid={isInvalid}\n isValid={isValid}\n onButtonKeyDown={handleButtonKeyDown}\n onFocus={openList}\n onInput={handleTextFilter}\n placeholder={placeholder}\n readonly={readonly}\n selectListId={selectListId}\n showList={showList}\n toggleButtonRef={toggleButtonRef}\n toggleList={toggleList}\n disabled={disabled}\n ariaDescribedBy={ariaDescribedBy}\n />\n <SelectList\n active={activeOption}\n filteredItems={filteredItems}\n onHover={handleHover}\n onSelect={handleSelect}\n selected={selectedOption}\n selectListId={selectListId}\n selectListRef={selectListRef}\n showList={showList}\n />\n </div>\n );\n}\n\nSelect.defaultProps = {\n className: '',\n classNameModifiers: [],\n filterable: true,\n items: [],\n readonly: false,\n onChange: () => {}\n};\n\nexport default Select;\n"],"names":["Select","items","className","classNameModifiers","filterable","readonly","onChange","onInput","selectedValue","name","isInvalid","isValid","placeholder","uniqueId","disabled","disableTextFilter","clearOnSelect","blurOnClose","onListToggle","filterInputRef","useRef","selectContainerRef","toggleButtonRef","selectListRef","textFilter","setTextFilter","useState","showList","setShowList","selectListId","useMemo","uuid","active","find","i","id","inputText","setInputText","activeOption","setActiveOption","selectedOption","filteredItems","filter","item","toLowerCase","includes","ariaDescribedBy","ARIA_ERROR_SUFFIX","ARIA_CONTEXT_SUFFIX","scrollToItem","nextElement","document","getElementById","simulateFocusScroll","closeList","current","blur","openList","extractItemFromEvent","e","value","currentTarget","getAttribute","listItem","handleSelect","valueToEmit","preventDefault","HTMLElement","some","target","handleNavigationKeys","key","keys","space","enter","arrowDown","length","possibleNextIndex","findIndex","nextIndex","nextItem","setNextActive","arrowUp","setPreviousActive","useEffect","focus","handleClickOutside","composedPath","contains","addEventListener","removeEventListener","h","div","cx","map","m","ref","SelectButton","selected","onButtonKeyDown","escape","shiftKey","tab","onFocus","toggleList","SelectList","onHover","onSelect","defaultProps"],"mappings":"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"}
1
+ {"version":3,"file":"Select.js","sources":["../../../../../../src/components/internal/FormFields/Select/Select.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { useEffect, useMemo, useRef, useState } from 'preact/hooks';\nimport cx from 'classnames';\nimport SelectButton from './components/SelectButton';\nimport SelectList from './components/SelectList';\nimport uuid from '../../../../utils/uuid';\nimport { keys } from './constants';\nimport { SelectItem, SelectProps } from './types';\nimport './Select.scss';\nimport { ARIA_CONTEXT_SUFFIX, ARIA_ERROR_SUFFIX } from '../../../../core/Errors/constants';\nimport { simulateFocusScroll } from '../utils';\n\nfunction Select({\n items = [],\n className = '',\n classNameModifiers = [],\n filterable = true,\n readonly = false,\n onChange = () => {},\n onInput,\n selectedValue,\n name,\n isInvalid,\n isValid,\n placeholder,\n uniqueId,\n disabled,\n disableTextFilter,\n clearOnSelect,\n blurOnClose,\n onListToggle,\n allowIdOnButton = false\n}: SelectProps) {\n const filterInputRef = useRef(null);\n const selectContainerRef = useRef(null);\n const toggleButtonRef = useRef(null);\n const selectListRef = useRef(null);\n const [textFilter, setTextFilter] = useState<string>(null);\n const [showList, setShowList] = useState<boolean>(false);\n const selectListId: string = useMemo(() => `select-${uuid()}`, []);\n\n const active: SelectItem = items.find(i => i.id === selectedValue) || ({} as SelectItem);\n\n const [inputText, setInputText] = useState<string>();\n\n const [activeOption, setActiveOption] = useState<SelectItem>(active);\n\n const selectedOption = active;\n\n const filteredItems = disableTextFilter ? items : items.filter(item => !textFilter || item.name.toLowerCase().includes(textFilter.toLowerCase()));\n\n const suffix = isInvalid ? ARIA_ERROR_SUFFIX : ARIA_CONTEXT_SUFFIX;\n const ariaDescribedBy = uniqueId ? `${uniqueId}${suffix}` : null;\n\n const setNextActive = () => {\n if (!filteredItems || filteredItems.length < 1) return;\n const possibleNextIndex = filteredItems.findIndex(listItem => listItem === activeOption) + 1;\n const nextIndex = possibleNextIndex < filteredItems.length ? possibleNextIndex : 0;\n const nextItem = filteredItems[nextIndex];\n scrollToItem(nextItem);\n setActiveOption(nextItem);\n };\n\n const setPreviousActive = () => {\n if (!filteredItems || filteredItems.length < 1) return;\n const possibleNextIndex = filteredItems.findIndex(listItem => listItem === activeOption) - 1;\n const nextIndex = possibleNextIndex < 0 ? filteredItems.length - 1 : possibleNextIndex;\n const nextItem = filteredItems[nextIndex];\n scrollToItem(nextItem);\n setActiveOption(nextItem);\n };\n\n const scrollToItem = (item: SelectItem) => {\n if (!item) return;\n const nextElement = document.getElementById(`listItem-${item.id}`);\n simulateFocusScroll(nextElement);\n };\n\n /**\n * Closes the selectList, empties the text filter and focuses the button element\n */\n const closeList = () => {\n //blurs the field when the list is closed, makes for a better UX for most users, needs more testing\n blurOnClose && filterInputRef.current.blur();\n setShowList(false);\n };\n\n const openList = () => {\n setShowList(true);\n };\n\n const extractItemFromEvent = (e: Event): SelectItem => {\n const value = (e.currentTarget as HTMLInputElement).getAttribute('data-value');\n return filteredItems.find(listItem => listItem.id == value);\n };\n\n /**\n * Closes the select list and fires an onChange\n * @param e - Event\n */\n const handleSelect = (e: Event) => {\n e.preventDefault();\n\n // We use a local variable here since writing and if statement is cleaner then a long ternary\n let valueToEmit;\n\n if (e.currentTarget instanceof HTMLElement && e.currentTarget.getAttribute('role') === 'option') {\n // This is the main scenario when clicking and item in the list\n // Item comes from the event\n valueToEmit = extractItemFromEvent(e);\n } else if (activeOption.id && filteredItems.some(item => item.id === activeOption.id)) {\n // This is the scenario where a user is using the keyboard to navigate\n // In the case item comes from the visually select item\n valueToEmit = activeOption;\n } else {\n // This is the scenario the user didn't select anything\n if (textFilter) {\n // if we filtering for something then select the first option\n valueToEmit = filteredItems[0];\n } else {\n // This will happen when we want to keep an already chosen option\n // If no active option we should just emit again with the value that was already selected\n valueToEmit = { id: selectedValue };\n }\n }\n\n if (valueToEmit && !valueToEmit.disabled) {\n onChange({ target: { value: valueToEmit.id, name: name } });\n\n if (clearOnSelect) setInputText(null);\n\n closeList();\n }\n };\n\n /**\n * Handles hovering and directions\n * @param e - Event\n */\n const handleHover = (e: Event) => {\n e.preventDefault();\n const item = extractItemFromEvent(e);\n setActiveOption(item);\n };\n\n /**\n * Handle keyDown events on the selectList button\n * Responsible for opening and closing the list\n * @param e - KeyboardEvent\n */\n const handleButtonKeyDown = (e: KeyboardEvent) => {\n if (e.key === keys.enter && filterable && showList && textFilter) {\n handleSelect(e);\n } else if (e.key === keys.escape) {\n // When user has focused Select button but not yet moved into Select list - close list and keep focus on the Select Button re. a11y guidelines\n // https://w3c.github.io/aria-practices/examples/disclosure/disclosure-navigation.html\n closeList();\n } else if ([keys.arrowUp, keys.arrowDown, keys.enter].includes(e.key) || (e.key === keys.space && (!filterable || !showList))) {\n e.preventDefault();\n if (!showList) {\n openList();\n } else {\n handleNavigationKeys(e);\n }\n } else if (e.shiftKey && e.key === keys.tab) {\n // Shift-Tab out of Select - close list re. a11y guidelines (above)\n closeList();\n } else if (e.key === keys.tab) {\n closeList();\n }\n };\n\n /**\n * Handles movement with navigation keys and enter\n * Navigates through the list, or select an element, or focus the filter input, or close the menu.\n * @param e - KeyDownEvent\n */\n const handleNavigationKeys = (e: KeyboardEvent) => {\n switch (e.key) {\n case keys.space:\n case keys.enter:\n handleSelect(e);\n break;\n case keys.arrowDown:\n e.preventDefault();\n setNextActive();\n break;\n case keys.arrowUp:\n e.preventDefault();\n setPreviousActive();\n break;\n default:\n }\n };\n\n /**\n * Updates the state with the current text filter value\n * @param e - KeyboardEvent\n */\n const handleTextFilter = (e: KeyboardEvent) => {\n const value: string = (e.target as HTMLInputElement).value;\n setInputText(value);\n setTextFilter(value);\n if (onInput) {\n onInput(value);\n }\n };\n\n /**\n * Toggles the selectList and focuses in either the filter input or in the selectList button\n * @param e - Event\n */\n const toggleList = (e: Event) => {\n e.preventDefault();\n if (!showList) {\n setInputText(null);\n openList();\n } else {\n setInputText(selectedOption.name);\n closeList();\n }\n };\n\n useEffect(() => {\n if (showList) {\n setInputText(null);\n } else {\n setTextFilter(null);\n }\n }, [showList]);\n\n /**\n * Focus on the input if filterable\n */\n useEffect(() => {\n if (showList && filterable && filterInputRef.current) {\n filterInputRef.current.focus();\n }\n onListToggle?.(showList);\n }, [showList]);\n\n useEffect(() => {\n /**\n * Close the select list when clicking outside the list\n * @param e - MouseEvent\n */\n function handleClickOutside(e: MouseEvent) {\n // use composedPath so it can also check when inside a web component\n // if composedPath is not available fallback to e.target\n const clickIsOutside = e.composedPath\n ? !e.composedPath().includes(selectContainerRef.current)\n : !selectContainerRef.current.contains(e.target);\n if (clickIsOutside) {\n closeList();\n }\n }\n\n document.addEventListener('click', handleClickOutside, false);\n\n return () => {\n document.removeEventListener('click', handleClickOutside, false);\n };\n }, [selectContainerRef]);\n\n return (\n <div\n className={cx(['adyen-checkout__dropdown', className, ...classNameModifiers.map(m => `adyen-checkout__dropdown--${m}`)])}\n ref={selectContainerRef}\n >\n <SelectButton\n inputText={inputText}\n id={uniqueId ?? null}\n active={activeOption}\n selected={selectedOption}\n filterInputRef={filterInputRef}\n filterable={filterable}\n isInvalid={isInvalid}\n isValid={isValid}\n onButtonKeyDown={handleButtonKeyDown}\n onFocus={openList}\n onInput={handleTextFilter}\n placeholder={placeholder}\n readonly={readonly}\n selectListId={selectListId}\n showList={showList}\n toggleButtonRef={toggleButtonRef}\n toggleList={toggleList}\n disabled={disabled}\n ariaDescribedBy={ariaDescribedBy}\n allowIdOnButton={allowIdOnButton}\n />\n <SelectList\n active={activeOption}\n filteredItems={filteredItems}\n onHover={handleHover}\n onSelect={handleSelect}\n selected={selectedOption}\n selectListId={selectListId}\n selectListRef={selectListRef}\n showList={showList}\n />\n </div>\n );\n}\n\nSelect.defaultProps = {\n className: '',\n classNameModifiers: [],\n filterable: true,\n items: [],\n readonly: false,\n onChange: () => {}\n};\n\nexport default Select;\n"],"names":["Select","items","className","classNameModifiers","filterable","readonly","onChange","onInput","selectedValue","name","isInvalid","isValid","placeholder","uniqueId","disabled","disableTextFilter","clearOnSelect","blurOnClose","onListToggle","allowIdOnButton","filterInputRef","useRef","selectContainerRef","toggleButtonRef","selectListRef","textFilter","setTextFilter","useState","showList","setShowList","selectListId","useMemo","uuid","active","find","i","id","inputText","setInputText","activeOption","setActiveOption","selectedOption","filteredItems","filter","item","toLowerCase","includes","ariaDescribedBy","ARIA_ERROR_SUFFIX","ARIA_CONTEXT_SUFFIX","scrollToItem","nextElement","document","getElementById","simulateFocusScroll","closeList","current","blur","openList","extractItemFromEvent","e","value","currentTarget","getAttribute","listItem","handleSelect","valueToEmit","preventDefault","HTMLElement","some","target","handleNavigationKeys","key","keys","space","enter","arrowDown","length","possibleNextIndex","findIndex","nextIndex","nextItem","setNextActive","arrowUp","setPreviousActive","useEffect","focus","handleClickOutside","composedPath","contains","addEventListener","removeEventListener","h","div","cx","map","m","ref","SelectButton","selected","onButtonKeyDown","escape","shiftKey","tab","onFocus","toggleList","SelectList","onHover","onSelect","defaultProps"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{createElement as e,Fragment as t}from"../../../../../external/preact/dist/preact.js";import n from"../../../../../external/classnames/index.js";import o from"../../../Img/Img.js";function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},o=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),o.forEach((function(t){r(e,t,n[t])}))}return e}function c(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n.push.apply(n,o)}return n}(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})),e}function l(e,t){if(null==e)return{};var n,o,r=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o<a.length;o++)n=a[o],t.indexOf(n)>=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o<a.length;o++)n=a[o],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function i(t){var{filterable:n,toggleButtonRef:o}=t,r=l(t,["filterable","toggleButtonRef"]);return n?e("div",c(a({},r),{ref:o})):e("button",c(a({id:r.id,"aria-describedby":r.ariaDescribedBy,type:"button"},r),{ref:o}))}function u(r){const{active:a,selected:c,inputText:l,readonly:u,showList:d}=r,s=c.selectedOptionName||c.name||r.placeholder||"",p=d?l:s,b=u?null:r.filterable?e=>{e.preventDefault(),document.activeElement===r.filterInputRef.current?r.showList||r.toggleList(e):r.filterInputRef.current&&r.filterInputRef.current.focus()}:r.toggleList,f=u?null:r.onFocus,_=a.id?`listItem-${a.id}`:"";return e(i,{className:n({"adyen-checkout__dropdown__button":!0,"adyen-checkout__dropdown__button--readonly":u,"adyen-checkout__dropdown__button--active":d,"adyen-checkout__dropdown__button--invalid":r.isInvalid,"adyen-checkout__dropdown__button--valid":r.isValid,"adyen-checkout__dropdown__button--disabled":c.disabled}),disabled:r.disabled,filterable:r.filterable,onClick:b,onKeyDown:u?null:r.onButtonKeyDown,toggleButtonRef:r.toggleButtonRef},r.filterable?e(t,null,!d&&c.icon&&e(o,{className:"adyen-checkout__dropdown__button__icon",src:c.icon,alt:c.name}),e("input",{value:p,"aria-autocomplete":"list","aria-controls":r.selectListId,"aria-expanded":d,"aria-owns":r.selectListId,autoComplete:"off",className:"adyen-checkout__filter-input",onInput:r.onInput,onFocus:f,ref:r.filterInputRef,role:"combobox","aria-activedescendant":_,type:"text",readOnly:r.readonly,id:r.id,"aria-describedby":r.ariaDescribedBy}),!d&&c.secondaryText&&e("span",{className:"adyen-checkout__dropdown__button__secondary-text"},c.secondaryText)):e(t,null,c.icon&&e(o,{className:"adyen-checkout__dropdown__button__icon",src:c.icon,alt:c.name}),e("span",{className:"adyen-checkout__dropdown__button__text"},s),c.secondaryText&&e("span",{className:"adyen-checkout__dropdown__button__secondary-text"},c.secondaryText)))}export{u as default};
1
+ import{createElement as e,Fragment as t}from"../../../../../external/preact/dist/preact.js";import n from"../../../../../external/classnames/index.js";import o from"../../../Img/Img.js";function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},o=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),o.forEach((function(t){r(e,t,n[t])}))}return e}function c(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t}(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})),e}function i(e,t){if(null==e)return{};var n,o,r=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o<a.length;o++)n=a[o],t.indexOf(n)>=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o<a.length;o++)n=a[o],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function l(t){var{filterable:n,toggleButtonRef:o}=t,r=i(t,["filterable","toggleButtonRef"]);if(n){const t=i(r,["id"]);return e("div",c(a({},t),{ref:o}))}return e("button",c(a({id:r.id,"aria-describedby":r.ariaDescribedBy,type:"button"},r),{ref:o}))}function d(r){const{active:c,selected:i,inputText:d,readonly:u,showList:s}=r,p=i.selectedOptionName||i.name||r.placeholder||"",b=s?d:p,f=u?null:r.filterable?e=>{e.preventDefault(),document.activeElement===r.filterInputRef.current?r.showList||r.toggleList(e):r.filterInputRef.current&&r.filterInputRef.current.focus()}:r.toggleList,_=u?null:r.onFocus,y=c.id?`listItem-${c.id}`:"";return e(l,a({className:n({"adyen-checkout__dropdown__button":!0,"adyen-checkout__dropdown__button--readonly":u,"adyen-checkout__dropdown__button--active":s,"adyen-checkout__dropdown__button--invalid":r.isInvalid,"adyen-checkout__dropdown__button--valid":r.isValid,"adyen-checkout__dropdown__button--disabled":i.disabled}),disabled:r.disabled,filterable:r.filterable,onClick:f,onKeyDown:u?null:r.onButtonKeyDown,toggleButtonRef:r.toggleButtonRef},r.allowIdOnButton&&r.id&&{id:r.id}),r.filterable?e(t,null,!s&&i.icon&&e(o,{className:"adyen-checkout__dropdown__button__icon",src:i.icon,alt:i.name}),e("input",{value:b,"aria-autocomplete":"list","aria-controls":r.selectListId,"aria-expanded":s,"aria-owns":r.selectListId,autoComplete:"off",className:"adyen-checkout__filter-input",onInput:r.onInput,onFocus:_,ref:r.filterInputRef,role:"combobox","aria-activedescendant":y,type:"text",readOnly:r.readonly,id:r.id,"aria-describedby":r.ariaDescribedBy}),!s&&i.secondaryText&&e("span",{className:"adyen-checkout__dropdown__button__secondary-text"},i.secondaryText)):e(t,null,i.icon&&e(o,{className:"adyen-checkout__dropdown__button__icon",src:i.icon,alt:i.name}),e("span",{className:"adyen-checkout__dropdown__button__text"},p),i.secondaryText&&e("span",{className:"adyen-checkout__dropdown__button__secondary-text"},i.secondaryText)))}export{d as default};
2
2
  //# sourceMappingURL=SelectButton.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SelectButton.js","sources":["../../../../../../../src/components/internal/FormFields/Select/components/SelectButton.tsx"],"sourcesContent":["import { h, Fragment } from 'preact';\nimport cx from 'classnames';\nimport { SelectButtonProps } from '../types';\nimport Img from '../../../Img';\n\nfunction SelectButtonElement({ filterable, toggleButtonRef, ...props }) {\n if (filterable) return <div {...props} ref={toggleButtonRef} />;\n\n return <button id={props.id} aria-describedby={props.ariaDescribedBy} type={'button'} {...props} ref={toggleButtonRef} />;\n}\n\nfunction SelectButton(props: Readonly<SelectButtonProps>) {\n const { active, selected, inputText, readonly, showList } = props;\n\n // display fallback order\n const displayText = selected.selectedOptionName || selected.name || props.placeholder || '';\n // displayInputText only used for the text input for the filter\n // display the \"typed\" filter text when showing the dropdown,\n // hide it and show the \"selected\" value when collapsed\n const displayInputText = showList ? inputText : displayText;\n\n const setFocus = (e: Event) => {\n e.preventDefault();\n if (document.activeElement === props.filterInputRef.current) {\n if (!props.showList) {\n props.toggleList(e);\n }\n } else if (props.filterInputRef.current) props.filterInputRef.current.focus();\n };\n\n // 1. If readonly we ignore the click action\n // 2. If filterable we want to show the list and focus on the input\n // 3. Otherwise we just toggle the list\n const onClickHandler = readonly ? null : props.filterable ? setFocus : props.toggleList;\n\n const onFocusHandler = readonly ? null : props.onFocus;\n\n // check COWEB-1301 [Investigate] Drop-in Accessibility - ADA Compliance questions\n const currentSelectedItemId = active.id ? `listItem-${active.id}` : '';\n\n return (\n <SelectButtonElement\n className={cx({\n 'adyen-checkout__dropdown__button': true,\n 'adyen-checkout__dropdown__button--readonly': readonly,\n 'adyen-checkout__dropdown__button--active': showList,\n 'adyen-checkout__dropdown__button--invalid': props.isInvalid,\n 'adyen-checkout__dropdown__button--valid': props.isValid,\n 'adyen-checkout__dropdown__button--disabled': selected.disabled\n })}\n disabled={props.disabled}\n filterable={props.filterable}\n onClick={onClickHandler}\n onKeyDown={!readonly ? props.onButtonKeyDown : null}\n toggleButtonRef={props.toggleButtonRef}\n >\n {!props.filterable ? (\n <Fragment>\n {selected.icon && <Img className=\"adyen-checkout__dropdown__button__icon\" src={selected.icon} alt={selected.name} />}\n <span className=\"adyen-checkout__dropdown__button__text\">{displayText}</span>\n {selected.secondaryText && <span className=\"adyen-checkout__dropdown__button__secondary-text\">{selected.secondaryText}</span>}\n </Fragment>\n ) : (\n <Fragment>\n {!showList && selected.icon && <Img className=\"adyen-checkout__dropdown__button__icon\" src={selected.icon} alt={selected.name} />}\n <input\n value={displayInputText}\n aria-autocomplete=\"list\"\n aria-controls={props.selectListId}\n aria-expanded={showList}\n aria-owns={props.selectListId}\n autoComplete=\"off\"\n className=\"adyen-checkout__filter-input\"\n onInput={props.onInput}\n onFocus={onFocusHandler}\n ref={props.filterInputRef}\n role=\"combobox\"\n aria-activedescendant={currentSelectedItemId}\n type=\"text\"\n readOnly={props.readonly}\n id={props.id}\n aria-describedby={props.ariaDescribedBy}\n />\n {!showList && selected.secondaryText && (\n <span className=\"adyen-checkout__dropdown__button__secondary-text\">{selected.secondaryText}</span>\n )}\n </Fragment>\n )}\n </SelectButtonElement>\n );\n}\n\nexport default SelectButton;\n"],"names":["SelectButtonElement","_param","filterable","toggleButtonRef","props","_object_without_properties","h","div","ref","button","id","aria-describedby","ariaDescribedBy","type","SelectButton","active","selected","inputText","readonly","showList","displayText","selectedOptionName","name","placeholder","displayInputText","onClickHandler","e","preventDefault","document","activeElement","filterInputRef","current","toggleList","focus","onFocusHandler","onFocus","currentSelectedItemId","className","cx","isInvalid","isValid","disabled","onClick","onKeyDown","onButtonKeyDown","Fragment","icon","Img","src","alt","input","value","aria-autocomplete","aria-controls","selectListId","aria-expanded","aria-owns","autoComplete","onInput","role","aria-activedescendant","readOnly","secondaryText","span"],"mappings":"+1CAKA,SAASA,EAAoBC,GAAA,IAAAC,WAAEA,EAAUC,gBAAEA,GAAdF,EAAkCG,EAAlCC,EAAAJ,EAAA,CAAEC,aAAYC,oBACvC,OAAID,EAAmBI,EAACC,MAAQH,EAAAA,EAAAA,CAAAA,EAAAA,GAAAA,CAAOI,IAAKL,KAErCG,EAACG,SAAAA,EAAAA,EAAAA,CAAOC,GAAIN,EAAMM,GAAIC,mBAAkBP,EAAMQ,gBAAiBC,KAAM,UAAcT,GAAAA,CAAOI,IAAKL,IAC1G,CAEA,SAASW,EAAaV,GAClB,MAAMW,OAAEA,EAAMC,SAAEA,EAAQC,UAAEA,EAASC,SAAEA,EAAQC,SAAEA,GAAaf,EAGtDgB,EAAcJ,EAASK,oBAAsBL,EAASM,MAAQlB,EAAMmB,aAAe,GAInFC,EAAmBL,EAAWF,EAAYG,EAc1CK,EAAiBP,EAAW,KAAOd,EAAMF,WAZ7BwB,IACdA,EAAEC,iBACEC,SAASC,gBAAkBzB,EAAM0B,eAAeC,QAC3C3B,EAAMe,UACPf,EAAM4B,WAAWN,GAEdtB,EAAM0B,eAAeC,SAAS3B,EAAM0B,eAAeC,QAAQE,OAAK,EAMR7B,EAAM4B,WAEvEE,EAAiBhB,EAAW,KAAOd,EAAM+B,QAGzCC,EAAwBrB,EAAOL,GAAK,YAAYK,EAAOL,KAAO,GAEpE,OACIJ,EAACN,EAAAA,CACGqC,UAAWC,EAAG,CACV,oCAAoC,EACpC,6CAA8CpB,EAC9C,2CAA4CC,EAC5C,4CAA6Cf,EAAMmC,UACnD,0CAA2CnC,EAAMoC,QACjD,6CAA8CxB,EAASyB,WAE3DA,SAAUrC,EAAMqC,SAChBvC,WAAYE,EAAMF,WAClBwC,QAASjB,EACTkB,UAAYzB,EAAmC,KAAxBd,EAAMwC,gBAC7BzC,gBAAiBC,EAAMD,iBAErBC,EAAMF,WAOJI,EAACuC,EAAAA,MACK1B,GAAYH,EAAS8B,MAAQxC,EAACyC,EAAAA,CAAIV,UAAU,yCAAyCW,IAAKhC,EAAS8B,KAAMG,IAAKjC,EAASM,OACzHhB,EAAC4C,QAAAA,CACGC,MAAO3B,EACP4B,oBAAkB,OAClBC,gBAAejD,EAAMkD,aACrBC,gBAAepC,EACfqC,YAAWpD,EAAMkD,aACjBG,aAAa,MACbpB,UAAU,+BACVqB,QAAStD,EAAMsD,QACfvB,QAASD,EACT1B,IAAKJ,EAAM0B,eACX6B,KAAK,WACLC,wBAAuBxB,EACvBvB,KAAK,OACLgD,SAAUzD,EAAMc,SAChBR,GAAIN,EAAMM,GACVC,mBAAkBP,EAAMQ,mBAE1BO,GAAYH,EAAS8C,eACnBxD,EAACyD,OAAAA,CAAK1B,UAAU,oDAAoDrB,EAAS8C,gBA3BrFxD,EAACuC,OACI7B,EAAS8B,MAAQxC,EAACyC,EAAAA,CAAIV,UAAU,yCAAyCW,IAAKhC,EAAS8B,KAAMG,IAAKjC,EAASM,OAC5GhB,EAACyD,OAAAA,CAAK1B,UAAU,0CAA0CjB,GACzDJ,EAAS8C,eAAiBxD,EAACyD,OAAAA,CAAK1B,UAAU,oDAAoDrB,EAAS8C,gBA8B5H"}
1
+ {"version":3,"file":"SelectButton.js","sources":["../../../../../../../src/components/internal/FormFields/Select/components/SelectButton.tsx"],"sourcesContent":["import { h, Fragment } from 'preact';\nimport cx from 'classnames';\nimport { SelectButtonProps } from '../types';\nimport Img from '../../../Img';\n\nfunction SelectButtonElement({ filterable, toggleButtonRef, ...props }) {\n if (filterable) {\n // Even if passed, we can't add an id to this div since it is not allowed to associate a div with a label element\n const { id, ...strippedProps } = props;\n return <div {...strippedProps} ref={toggleButtonRef} />;\n }\n\n return <button id={props.id} aria-describedby={props.ariaDescribedBy} type={'button'} {...props} ref={toggleButtonRef} />;\n}\n\nfunction SelectButton(props: Readonly<SelectButtonProps>) {\n const { active, selected, inputText, readonly, showList } = props;\n\n // display fallback order\n const displayText = selected.selectedOptionName || selected.name || props.placeholder || '';\n // displayInputText only used for the text input for the filter\n // display the \"typed\" filter text when showing the dropdown,\n // hide it and show the \"selected\" value when collapsed\n const displayInputText = showList ? inputText : displayText;\n\n const setFocus = (e: Event) => {\n e.preventDefault();\n if (document.activeElement === props.filterInputRef.current) {\n if (!props.showList) {\n props.toggleList(e);\n }\n } else if (props.filterInputRef.current) props.filterInputRef.current.focus();\n };\n\n // 1. If readonly we ignore the click action\n // 2. If filterable we want to show the list and focus on the input\n // 3. Otherwise we just toggle the list\n const onClickHandler = readonly ? null : props.filterable ? setFocus : props.toggleList;\n\n const onFocusHandler = readonly ? null : props.onFocus;\n\n // check COWEB-1301 [Investigate] Drop-in Accessibility - ADA Compliance questions\n const currentSelectedItemId = active.id ? `listItem-${active.id}` : '';\n\n return (\n <SelectButtonElement\n className={cx({\n 'adyen-checkout__dropdown__button': true,\n 'adyen-checkout__dropdown__button--readonly': readonly,\n 'adyen-checkout__dropdown__button--active': showList,\n 'adyen-checkout__dropdown__button--invalid': props.isInvalid,\n 'adyen-checkout__dropdown__button--valid': props.isValid,\n 'adyen-checkout__dropdown__button--disabled': selected.disabled\n })}\n disabled={props.disabled}\n filterable={props.filterable}\n onClick={onClickHandler}\n onKeyDown={!readonly ? props.onButtonKeyDown : null}\n toggleButtonRef={props.toggleButtonRef}\n // Only for some dropdowns e.g. the one found in installments when it is just in the form of a single dropdown, do we want to add an id that links to a label's for attr\n // If we allow an id to be added to the buttons in CtPCardsList, for example, unit tests start failing because it seems a button with an id no longer has a name property that can be used\n // as a qualifier in findByRole\n {...(props.allowIdOnButton && props.id && { id: props.id })}\n >\n {!props.filterable ? (\n <Fragment>\n {selected.icon && <Img className=\"adyen-checkout__dropdown__button__icon\" src={selected.icon} alt={selected.name} />}\n <span className=\"adyen-checkout__dropdown__button__text\">{displayText}</span>\n {selected.secondaryText && <span className=\"adyen-checkout__dropdown__button__secondary-text\">{selected.secondaryText}</span>}\n </Fragment>\n ) : (\n <Fragment>\n {!showList && selected.icon && <Img className=\"adyen-checkout__dropdown__button__icon\" src={selected.icon} alt={selected.name} />}\n <input\n value={displayInputText}\n aria-autocomplete=\"list\"\n aria-controls={props.selectListId}\n aria-expanded={showList}\n aria-owns={props.selectListId}\n autoComplete=\"off\"\n className=\"adyen-checkout__filter-input\"\n onInput={props.onInput}\n onFocus={onFocusHandler}\n ref={props.filterInputRef}\n role=\"combobox\"\n aria-activedescendant={currentSelectedItemId}\n type=\"text\"\n readOnly={props.readonly}\n id={props.id}\n aria-describedby={props.ariaDescribedBy}\n />\n {!showList && selected.secondaryText && (\n <span className=\"adyen-checkout__dropdown__button__secondary-text\">{selected.secondaryText}</span>\n )}\n </Fragment>\n )}\n </SelectButtonElement>\n );\n}\n\nexport default SelectButton;\n"],"names":["SelectButtonElement","_param","filterable","toggleButtonRef","props","_object_without_properties","strippedProps","id","h","div","ref","button","aria-describedby","ariaDescribedBy","type","SelectButton","active","selected","inputText","readonly","showList","displayText","selectedOptionName","name","placeholder","displayInputText","onClickHandler","e","preventDefault","document","activeElement","filterInputRef","current","toggleList","focus","onFocusHandler","onFocus","currentSelectedItemId","className","cx","isInvalid","isValid","disabled","onClick","onKeyDown","onButtonKeyDown","allowIdOnButton","Fragment","icon","Img","src","alt","input","value","aria-autocomplete","aria-controls","selectListId","aria-expanded","aria-owns","autoComplete","onInput","role","aria-activedescendant","readOnly","secondaryText","span"],"mappings":"61CAKA,SAASA,EAAoBC,GAAA,IAAAC,WAAEA,EAAUC,gBAAEA,GAAdF,EAAkCG,EAAlCC,EAAAJ,EAAA,CAAEC,aAAYC,oBACvC,GAAID,EAAY,CAEZ,MAAeI,EAAkBF,EAAAA,EAAAA,CAAzBG,OACR,OAAOC,EAACC,MAAQH,EAAAA,EAAAA,CAAAA,EAAAA,GAAAA,CAAeI,IAAKP,IACxC,CAEA,OAAOK,EAACG,SAAAA,EAAAA,EAAAA,CAAOJ,GAAIH,EAAMG,GAAIK,mBAAkBR,EAAMS,gBAAiBC,KAAM,UAAcV,GAAAA,CAAOM,IAAKP,IAC1G,CAEA,SAASY,EAAaX,GAClB,MAAMY,OAAEA,EAAMC,SAAEA,EAAQC,UAAEA,EAASC,SAAEA,EAAQC,SAAEA,GAAahB,EAGtDiB,EAAcJ,EAASK,oBAAsBL,EAASM,MAAQnB,EAAMoB,aAAe,GAInFC,EAAmBL,EAAWF,EAAYG,EAc1CK,EAAiBP,EAAW,KAAOf,EAAMF,WAZ7ByB,IACdA,EAAEC,iBACEC,SAASC,gBAAkB1B,EAAM2B,eAAeC,QAC3C5B,EAAMgB,UACPhB,EAAM6B,WAAWN,GAEdvB,EAAM2B,eAAeC,SAAS5B,EAAM2B,eAAeC,QAAQE,OAAK,EAMR9B,EAAM6B,WAEvEE,EAAiBhB,EAAW,KAAOf,EAAMgC,QAGzCC,EAAwBrB,EAAOT,GAAK,YAAYS,EAAOT,KAAO,GAEpE,OACIC,EAACR,EAAAA,EAAAA,CACGsC,UAAWC,EAAG,CACV,oCAAoC,EACpC,6CAA8CpB,EAC9C,2CAA4CC,EAC5C,4CAA6ChB,EAAMoC,UACnD,0CAA2CpC,EAAMqC,QACjD,6CAA8CxB,EAASyB,WAE3DA,SAAUtC,EAAMsC,SAChBxC,WAAYE,EAAMF,WAClByC,QAASjB,EACTkB,UAAYzB,EAAmC,KAAxBf,EAAMyC,gBAC7B1C,gBAAiBC,EAAMD,iBAIlBC,EAAM0C,iBAAmB1C,EAAMG,IAAM,CAAEA,GAAIH,EAAMG,KAEpDH,EAAMF,WAOJM,EAACuC,EAAAA,MACK3B,GAAYH,EAAS+B,MAAQxC,EAACyC,EAAAA,CAAIX,UAAU,yCAAyCY,IAAKjC,EAAS+B,KAAMG,IAAKlC,EAASM,OACzHf,EAAC4C,QAAAA,CACGC,MAAO5B,EACP6B,oBAAkB,OAClBC,gBAAenD,EAAMoD,aACrBC,gBAAerC,EACfsC,YAAWtD,EAAMoD,aACjBG,aAAa,MACbrB,UAAU,+BACVsB,QAASxD,EAAMwD,QACfxB,QAASD,EACTzB,IAAKN,EAAM2B,eACX8B,KAAK,WACLC,wBAAuBzB,EACvBvB,KAAK,OACLiD,SAAU3D,EAAMe,SAChBZ,GAAIH,EAAMG,GACVK,mBAAkBR,EAAMS,mBAE1BO,GAAYH,EAAS+C,eACnBxD,EAACyD,OAAAA,CAAK3B,UAAU,oDAAoDrB,EAAS+C,gBA3BrFxD,EAACuC,EACI9B,KAAAA,EAAS+B,MAAQxC,EAACyC,EAAAA,CAAIX,UAAU,yCAAyCY,IAAKjC,EAAS+B,KAAMG,IAAKlC,EAASM,OAC5Gf,EAACyD,OAAAA,CAAK3B,UAAU,0CAA0CjB,GACzDJ,EAAS+C,eAAiBxD,EAACyD,OAAAA,CAAK3B,UAAU,oDAAoDrB,EAAS+C,gBA8B5H"}
@@ -1 +1 @@
1
- {"version":3,"file":"SelectList.js","sources":["../../../../../../../src/components/internal/FormFields/Select/components/SelectList.tsx"],"sourcesContent":["import { h } from 'preact';\nimport cx from 'classnames';\nimport SelectListItem from './SelectListItem';\nimport { useCoreContext } from '../../../../../core/Context/CoreProvider';\nimport { SelectListProps } from '../types';\n\nfunction SelectList({ selected, active, filteredItems, showList, ...props }: SelectListProps) {\n const { i18n } = useCoreContext();\n\n return (\n <ul\n className={cx({\n 'adyen-checkout__dropdown__list': true,\n 'adyen-checkout__dropdown__list--active': showList\n })}\n id={props.selectListId}\n ref={props.selectListRef}\n role=\"listbox\"\n >\n {filteredItems.length ? (\n filteredItems.map(item => (\n <SelectListItem\n active={item.id === active.id}\n item={item}\n key={item.id}\n onSelect={props.onSelect}\n onHover={props.onHover}\n selected={item.id === selected.id}\n />\n ))\n ) : (\n <div className=\"adyen-checkout__dropdown__element adyen-checkout__dropdown__element--no-options\">\n {i18n.get('select.noOptionsFound')}\n </div>\n )}\n </ul>\n );\n}\n\nexport default SelectList;\n"],"names":["SelectList","_param","selected","active","filteredItems","showList","props","_object_without_properties","i18n","useCoreContext","h","ul","className","cx","id","selectListId","ref","selectListRef","role","length","map","item","SelectListItem","key","onSelect","onHover","div","get"],"mappings":"6mBAMA,SAASA,EAAWC,OAAAC,SAAEA,EAAQC,OAAEA,EAAMC,cAAEA,EAAaC,SAAEA,GAAnCJ,EAAgDK,EAAhDC,EAAAN,EAAA,CAAEC,WAAUC,SAAQC,gBAAeC,aACnD,MAAMG,KAAEA,GAASC,IAEjB,OACIC,EAACC,KAAAA,CACGC,UAAWC,EAAG,CACV,kCAAkC,EAClC,yCAA0CR,IAE9CS,GAAIR,EAAMS,aACVC,IAAKV,EAAMW,cACXC,KAAK,WAEJd,EAAce,OACXf,EAAcgB,KAAIC,GACdX,EAACY,EAAAA,CACGnB,OAAQkB,EAAKP,KAAOX,EAAOW,GAC3BO,KAAMA,EACNE,IAAKF,EAAKP,GACVU,SAAUlB,EAAMkB,SAChBC,QAASnB,EAAMmB,QACfvB,SAAUmB,EAAKP,KAAOZ,EAASY,OAIvCJ,EAACgB,MAAAA,CAAId,UAAU,mFACVJ,EAAKmB,IAAI,0BAK9B"}
1
+ {"version":3,"file":"SelectList.js","sources":["../../../../../../../src/components/internal/FormFields/Select/components/SelectList.tsx"],"sourcesContent":["import { h } from 'preact';\nimport cx from 'classnames';\nimport SelectListItem from './SelectListItem';\nimport { useCoreContext } from '../../../../../core/Context/CoreProvider';\nimport { SelectListProps } from '../types';\n\nfunction SelectList({ selected, active, filteredItems, showList, ...props }: SelectListProps) {\n const { i18n } = useCoreContext();\n\n return (\n /* eslint-disable jsx-a11y/no-noninteractive-element-to-interactive-role */\n <ul\n className={cx({\n 'adyen-checkout__dropdown__list': true,\n 'adyen-checkout__dropdown__list--active': showList\n })}\n id={props.selectListId}\n ref={props.selectListRef}\n role=\"listbox\"\n >\n {filteredItems.length ? (\n filteredItems.map(item => (\n <SelectListItem\n active={item.id === active.id}\n item={item}\n key={item.id}\n onSelect={props.onSelect}\n onHover={props.onHover}\n selected={item.id === selected.id}\n />\n ))\n ) : (\n <div className=\"adyen-checkout__dropdown__element adyen-checkout__dropdown__element--no-options\">\n {i18n.get('select.noOptionsFound')}\n </div>\n )}\n </ul>\n );\n}\n\nexport default SelectList;\n"],"names":["SelectList","_param","selected","active","filteredItems","showList","props","_object_without_properties","i18n","useCoreContext","h","ul","className","cx","id","selectListId","ref","selectListRef","role","length","map","item","SelectListItem","key","onSelect","onHover","div","get"],"mappings":"6mBAMA,SAASA,EAAWC,OAAAC,SAAEA,EAAQC,OAAEA,EAAMC,cAAEA,EAAaC,SAAEA,GAAnCJ,EAAgDK,EAAhDC,EAAAN,EAAA,CAAEC,WAAUC,SAAQC,gBAAeC,aACnD,MAAMG,KAAEA,GAASC,IAEjB,OAEIC,EAACC,KAAAA,CACGC,UAAWC,EAAG,CACV,kCAAkC,EAClC,yCAA0CR,IAE9CS,GAAIR,EAAMS,aACVC,IAAKV,EAAMW,cACXC,KAAK,WAEJd,EAAce,OACXf,EAAcgB,KAAIC,GACdX,EAACY,EAAAA,CACGnB,OAAQkB,EAAKP,KAAOX,EAAOW,GAC3BO,KAAMA,EACNE,IAAKF,EAAKP,GACVU,SAAUlB,EAAMkB,SAChBC,QAASnB,EAAMmB,QACfvB,SAAUmB,EAAKP,KAAOZ,EAASY,OAIvCJ,EAACgB,MAAAA,CAAId,UAAU,mFACVJ,EAAKmB,IAAI,0BAK9B"}
@@ -1 +1 @@
1
- {"version":3,"file":"SelectListItem.js","sources":["../../../../../../../src/components/internal/FormFields/Select/components/SelectListItem.tsx"],"sourcesContent":["import { h } from 'preact';\nimport cx from 'classnames';\nimport { SelectItemProps } from '../types';\nimport Img from '../../../Img';\nimport Icon from '../../../Icon';\nimport { PREFIX } from '../../../Icon/constants';\n\nconst SelectListItem = ({ item, active, selected, ...props }: SelectItemProps) => {\n return (\n <li\n aria-disabled={!!item.disabled}\n aria-selected={selected}\n className={cx([\n 'adyen-checkout__dropdown__element',\n {\n 'adyen-checkout__dropdown__element--active': active,\n 'adyen-checkout__dropdown__element--disabled': !!item.disabled\n }\n ])}\n // A change in Preact v10.11.1 means that all falsy values are assessed and set on data attributes.\n // In the case of data-disabled we only ever want it set if item.disabled is actually true, since the presence of the data-disabled attr,\n // regardless of its value, will disable the select list item\n data-disabled={item.disabled === true ? true : null}\n data-value={item.id}\n onClick={props.onSelect}\n onMouseEnter={props.onHover}\n role=\"option\"\n //tabIndex={-1}\n id={`listItem-${item.id}`}\n >\n {item.icon && <Img className=\"adyen-checkout__dropdown__element__icon\" alt={item.name} src={item.icon} />}\n <span className=\"adyen-checkout__dropdown__element__text\">{item.name}</span>\n {item.secondaryText && <span className=\"adyen-checkout__dropdown__element__secondary-text\">{item.secondaryText}</span>}\n {selected && <Icon type={`${PREFIX}checkmark`} height={14} width={14} />}\n </li>\n );\n};\n\nexport default SelectListItem;\n"],"names":["SelectListItem","_param","item","active","selected","props","h","li","aria-disabled","disabled","aria-selected","className","cx","data-disabled","data-value","id","onClick","onSelect","onMouseEnter","onHover","role","icon","Img","alt","name","src","span","secondaryText","Icon","type","PREFIX","height","width"],"mappings":"ynBAOA,MAAMA,EAAiBC,IAAC,IAAAC,KAAEA,EAAIC,OAAEA,EAAMC,SAAEA,GAAaC,EAAAA,EAAAA,EAAAA,EAAAA,CAA3BH,OAAMC,SAAQC,aACpC,OACIE,EAACC,KAAAA,CACGC,kBAAiBN,EAAKO,SACtBC,gBAAeN,EACfO,UAAWC,EAAG,CACV,oCACA,CACI,4CAA6CT,EAC7C,gDAAiDD,EAAKO,YAM9DI,iBAAiC,IAAlBX,EAAKO,UAA2B,KAC/CK,aAAYZ,EAAKa,GACjBC,QAASX,EAAMY,SACfC,aAAcb,EAAMc,QACpBC,KAAK,SAELL,GAAI,YAAYb,EAAKa,MAEpBb,EAAKmB,MAAQf,EAACgB,EAAAA,CAAIX,UAAU,0CAA0CY,IAAKrB,EAAKsB,KAAMC,IAAKvB,EAAKmB,OACjGf,EAACoB,OAAAA,CAAKf,UAAU,2CAA2CT,EAAKsB,MAC/DtB,EAAKyB,eAAiBrB,EAACoB,OAAAA,CAAKf,UAAU,qDAAqDT,EAAKyB,eAChGvB,GAAYE,EAACsB,EAAAA,CAAKC,KAAM,GAAGC,aAAmBC,OAAQ,GAAIC,MAAO"}
1
+ {"version":3,"file":"SelectListItem.js","sources":["../../../../../../../src/components/internal/FormFields/Select/components/SelectListItem.tsx"],"sourcesContent":["import { h } from 'preact';\nimport cx from 'classnames';\nimport { SelectItemProps } from '../types';\nimport Img from '../../../Img';\nimport Icon from '../../../Icon';\nimport { PREFIX } from '../../../Icon/constants';\n\nconst SelectListItem = ({ item, active, selected, ...props }: SelectItemProps) => {\n return (\n /* eslint-disable jsx-a11y/click-events-have-key-events */\n <li\n aria-disabled={!!item.disabled}\n aria-selected={selected}\n className={cx([\n 'adyen-checkout__dropdown__element',\n {\n 'adyen-checkout__dropdown__element--active': active,\n 'adyen-checkout__dropdown__element--disabled': !!item.disabled\n }\n ])}\n // A change in Preact v10.11.1 means that all falsy values are assessed and set on data attributes.\n // In the case of data-disabled we only ever want it set if item.disabled is actually true, since the presence of the data-disabled attr,\n // regardless of its value, will disable the select list item\n data-disabled={item.disabled === true ? true : null}\n data-value={item.id}\n onClick={props.onSelect}\n onMouseEnter={props.onHover}\n /* eslint-disable-next-line jsx-a11y/no-noninteractive-element-to-interactive-role */\n role=\"option\"\n //tabIndex={-1}\n id={`listItem-${item.id}`}\n >\n {item.icon && <Img className=\"adyen-checkout__dropdown__element__icon\" alt={item.name} src={item.icon} />}\n <span className=\"adyen-checkout__dropdown__element__text\">{item.name}</span>\n {item.secondaryText && <span className=\"adyen-checkout__dropdown__element__secondary-text\">{item.secondaryText}</span>}\n {selected && <Icon type={`${PREFIX}checkmark`} height={14} width={14} />}\n </li>\n );\n};\n\nexport default SelectListItem;\n"],"names":["SelectListItem","_param","item","active","selected","props","h","li","aria-disabled","disabled","aria-selected","className","cx","data-disabled","data-value","id","onClick","onSelect","onMouseEnter","onHover","role","icon","Img","alt","name","src","span","secondaryText","Icon","type","PREFIX","height","width"],"mappings":"ynBAOA,MAAMA,EAAiBC,IAAC,IAAAC,KAAEA,EAAIC,OAAEA,EAAMC,SAAEA,GAAaC,EAAAA,EAAAA,EAAAA,EAAAA,CAA3BH,OAAMC,SAAQC,aACpC,OAEIE,EAACC,KAAAA,CACGC,kBAAiBN,EAAKO,SACtBC,gBAAeN,EACfO,UAAWC,EAAG,CACV,oCACA,CACI,4CAA6CT,EAC7C,gDAAiDD,EAAKO,YAM9DI,iBAAiC,IAAlBX,EAAKO,UAA2B,KAC/CK,aAAYZ,EAAKa,GACjBC,QAASX,EAAMY,SACfC,aAAcb,EAAMc,QAEpBC,KAAK,SAELL,GAAI,YAAYb,EAAKa,MAEpBb,EAAKmB,MAAQf,EAACgB,EAAAA,CAAIX,UAAU,0CAA0CY,IAAKrB,EAAKsB,KAAMC,IAAKvB,EAAKmB,OACjGf,EAACoB,OAAAA,CAAKf,UAAU,2CAA2CT,EAAKsB,MAC/DtB,EAAKyB,eAAiBrB,EAACoB,OAAAA,CAAKf,UAAU,qDAAqDT,EAAKyB,eAChGvB,GAAYE,EAACsB,EAAAA,CAAKC,KAAM,GAAGC,aAAmBC,OAAQ,GAAIC,MAAO"}
@@ -1,2 +1,2 @@
1
- import{Component as e,createElement as t}from"../../../external/preact/dist/preact.js";import{useCoreContext as a}from"../../../core/Context/CoreProvider.js";import r from"../FormFields/Field/Field.js";import{isValidHolder as s,checkIbanStatus as i}from"./validate.js";import{electronicFormat as n,formatIban as o,getCountryCode as l,getNextCursorPosition as d}from"./utils.js";import u from"../FormFields/Fieldset/Fieldset.js";import h from"../FormFields/InputText.js";function b(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function c(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{},r=Object.keys(a);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(a).filter((function(e){return Object.getOwnPropertyDescriptor(a,e).enumerable})))),r.forEach((function(t){b(e,t,a[t])}))}return e}function m(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);a.push.apply(a,r)}return a}(Object(t)).forEach((function(a){Object.defineProperty(e,a,Object.getOwnPropertyDescriptor(t,a))})),e}const p={isValid:!1,errorMessage:"ach.accountHolderNameField.invalid",error:"ach.accountHolderNameField.invalid"},N={isValid:!1,errorMessage:"sepaDirectDebit.ibanField.invalid",error:"sepaDirectDebit.ibanField.invalid"};class v extends e{setStatus(e){this.setState({status:e})}onChange(){const e=!this.props.holderName||s(this.state.data.ownerName),t="valid"===i(this.state.data.ibanNumber).status&&e,a={data:this.state.data,isValid:t,errors:this.state.errors};this.props.onChange(a)}showValidation(){const e=i(this.state.data.ibanNumber).status,t=s(this.state.data.ownerName);this.setError("iban","valid"!==e?N:null);const a=t?null:p;this.setError("holder",a,this.onChange)}render({placeholders:e},{data:s,errors:i,valid:n}){const{i18n:o}=a();return t(u,{classNameModifiers:["iban-input"],label:this.props.label},this.props.holderName&&t(r,{className:"adyen-checkout__field--owner-name",label:o.get("sepa.ownerName"),filled:s.ownerName&&s.ownerName.length,errorMessage:!!i.holder&&o.get(i.holder.error),dir:"ltr",i18n:o,name:"ownerName"},t(h,{name:"ownerName",className:"adyen-checkout__iban-input__owner-name",placeholder:null==e?void 0:e.ownerName,value:s.ownerName,"aria-invalid":!!this.state.errors.holder,"aria-label":o.get("sepa.ownerName"),onInput:e=>this.handleHolderInput(e.target.value),onBlur:e=>this.handleHolderInput(e.target.value)})),t(r,{className:"adyen-checkout__field--iban-number",label:o.get("sepa.ibanNumber"),errorMessage:!!i.iban&&o.get(i.iban.error),filled:s.ibanNumber&&s.ibanNumber.length,isValid:n.iban,onBlur:this.handleIbanBlur,dir:"ltr",i18n:o,name:"ibanNumber"},t(h,{setRef:e=>{this.ibanNumber=e},name:"ibanNumber",className:"adyen-checkout__iban-input__iban-number",classNameModifiers:["large"],placeholder:null==e?void 0:e.ibanNumber,value:s.ibanNumber,onInput:this.handleIbanInput,"aria-invalid":!!this.state.errors.iban,"aria-label":o.get("sepa.ibanNumber"),autocorrect:"off",spellcheck:!1})),this.props.showPayButton&&this.props.payButton({status:this.state.status}))}constructor(e){var t,a,r;if(super(e),b(this,"ibanNumber",void 0),b(this,"setData",((e,t,a)=>{this.setState((a=>({data:m(c({},a.data),{[e]:t})})),a)})),b(this,"setError",((e,t,a)=>{this.setState((a=>({errors:m(c({},a.errors),{[e]:t})})),a)})),b(this,"setValid",((e,t,a)=>{this.setState((a=>({valid:m(c({},a.valid),{[e]:t})})),a)})),b(this,"handleHolderInput",(e=>{this.setState((t=>({data:m(c({},t.data),{ownerName:e})})),(()=>{const e=s(this.state.data.ownerName),t=null==e||e?null:p;this.setError("holder",t,this.onChange)}))})),b(this,"handleIbanInput",(e=>{const t=e.target.value,a=n(t),r=o(a),s=i(r).status,u=l(a),h=e.target.selectionStart,b=this.state.data.ibanNumber,p=d(h,r,b);this.setState((e=>({data:m(c({},e.data),{ibanNumber:r,countryCode:u}),errors:m(c({},e.errors),{iban:"invalid"===s?N:null}),valid:m(c({},e.valid),{iban:"valid"===s})})),(()=>{e.target.setSelectionRange(p,p),this.onChange()}))})),b(this,"handleIbanBlur",(e=>{const t=e.target.value;if(t.length>0){const e=i(t).status;this.setError("iban","valid"!==e?N:null,this.onChange)}else this.setError("iban",null,this.onChange)})),this.state={status:"ready",data:{ownerName:(null==e||null===(t=e.data)||void 0===t?void 0:t.ownerName)||"",ibanNumber:(null==e||null===(a=e.data)||void 0===a?void 0:a.ibanNumber)||"",countryCode:(null==e||null===(r=e.data)||void 0===r?void 0:r.countryCode)||""},isValid:!1,cursor:0,errors:{},valid:{}},this.state.data.ibanNumber){const e=n(this.state.data.ibanNumber);this.state.data.ibanNumber=o(e)}if(this.state.data.ibanNumber||this.state.data.ownerName){const e=this.props.holderName?s(this.state.data.ownerName):"",t=(this.state.data.ibanNumber?"valid"===i(this.state.data.ibanNumber).status:"")&&e,a={data:this.state.data,isValid:t};this.props.onChange(a)}}}b(v,"defaultProps",{onChange:()=>{},countryCode:null,holderName:!0,placeholders:{},label:null});export{v as default};
1
+ import{Component as e,createElement as t}from"../../../external/preact/dist/preact.js";import{useCoreContext as a}from"../../../core/Context/CoreProvider.js";import r from"../FormFields/Field/Field.js";import{isValidHolder as s,checkIbanStatus as i}from"./validate.js";import{electronicFormat as n,formatIban as o,getCountryCode as l,getNextCursorPosition as d}from"./utils.js";import u from"../FormFields/Fieldset/Fieldset.js";import h from"../FormFields/InputText.js";function b(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function c(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{},r=Object.keys(a);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(a).filter((function(e){return Object.getOwnPropertyDescriptor(a,e).enumerable})))),r.forEach((function(t){b(e,t,a[t])}))}return e}function m(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t.push.apply(t,a)}return t}(Object(t)).forEach((function(a){Object.defineProperty(e,a,Object.getOwnPropertyDescriptor(t,a))})),e}const p={isValid:!1,errorMessage:"ach.accountHolderNameField.invalid",error:"ach.accountHolderNameField.invalid"},N={isValid:!1,errorMessage:"sepaDirectDebit.ibanField.invalid",error:"sepaDirectDebit.ibanField.invalid"};class v extends e{setStatus(e){this.setState({status:e})}onChange(){const e=!this.props.holderName||s(this.state.data.ownerName),t="valid"===i(this.state.data.ibanNumber).status&&e,a={data:this.state.data,isValid:t,errors:this.state.errors};this.props.onChange(a)}showValidation(){const e=i(this.state.data.ibanNumber).status,t=s(this.state.data.ownerName);this.setError("iban","valid"!==e?N:null);const a=t?null:p;this.setError("holder",a,this.onChange)}render({placeholders:e},{data:s,errors:i,valid:n}){const{i18n:o}=a();return t(u,{classNameModifiers:["iban-input"],label:this.props.label},this.props.holderName&&t(r,{className:"adyen-checkout__field--owner-name",label:o.get("sepa.ownerName"),filled:s.ownerName&&s.ownerName.length,errorMessage:!!i.holder&&o.get(i.holder.error),dir:"ltr",i18n:o,name:"ownerName"},t(h,{name:"ownerName",className:"adyen-checkout__iban-input__owner-name",placeholder:null==e?void 0:e.ownerName,value:s.ownerName,"aria-invalid":!!this.state.errors.holder,"aria-label":o.get("sepa.ownerName"),onInput:e=>this.handleHolderInput(e.target.value),onBlur:e=>this.handleHolderInput(e.target.value)})),t(r,{className:"adyen-checkout__field--iban-number",label:o.get("sepa.ibanNumber"),errorMessage:!!i.iban&&o.get(i.iban.error),filled:s.ibanNumber&&s.ibanNumber.length,isValid:n.iban,onBlur:this.handleIbanBlur,dir:"ltr",i18n:o,name:"ibanNumber"},t(h,{setRef:e=>{this.ibanNumber=e},name:"ibanNumber",className:"adyen-checkout__iban-input__iban-number",classNameModifiers:["large"],placeholder:null==e?void 0:e.ibanNumber,value:s.ibanNumber,onInput:this.handleIbanInput,"aria-invalid":!!this.state.errors.iban,"aria-label":o.get("sepa.ibanNumber"),autocorrect:"off",spellcheck:!1})),this.props.showPayButton&&this.props.payButton({status:this.state.status}))}constructor(e){var t,a,r;if(super(e),b(this,"ibanNumber",void 0),b(this,"setData",((e,t,a)=>{this.setState((a=>({data:m(c({},a.data),{[e]:t})})),a)})),b(this,"setError",((e,t,a)=>{this.setState((a=>({errors:m(c({},a.errors),{[e]:t})})),a)})),b(this,"setValid",((e,t,a)=>{this.setState((a=>({valid:m(c({},a.valid),{[e]:t})})),a)})),b(this,"handleHolderInput",(e=>{this.setState((t=>({data:m(c({},t.data),{ownerName:e})})),(()=>{const e=s(this.state.data.ownerName),t=null==e||e?null:p;this.setError("holder",t,this.onChange)}))})),b(this,"handleIbanInput",(e=>{const t=e.target.value,a=n(t),r=o(a),s=i(r).status,u=l(a),h=e.target.selectionStart,b=this.state.data.ibanNumber,p=d(h,r,b);this.setState((e=>({data:m(c({},e.data),{ibanNumber:r,countryCode:u}),errors:m(c({},e.errors),{iban:"invalid"===s?N:null}),valid:m(c({},e.valid),{iban:"valid"===s})})),(()=>{e.target.setSelectionRange(p,p),this.onChange()}))})),b(this,"handleIbanBlur",(e=>{const t=e.target.value;if(t.length>0){const e=i(t).status;this.setError("iban","valid"!==e?N:null,this.onChange)}else this.setError("iban",null,this.onChange)})),this.state={status:"ready",data:{ownerName:(null==e||null===(t=e.data)||void 0===t?void 0:t.ownerName)||"",ibanNumber:(null==e||null===(a=e.data)||void 0===a?void 0:a.ibanNumber)||"",countryCode:(null==e||null===(r=e.data)||void 0===r?void 0:r.countryCode)||""},isValid:!1,cursor:0,errors:{},valid:{}},this.state.data.ibanNumber){const e=n(this.state.data.ibanNumber);this.state.data.ibanNumber=o(e)}if(this.state.data.ibanNumber||this.state.data.ownerName){const e=this.props.holderName?s(this.state.data.ownerName):"",t=(this.state.data.ibanNumber?"valid"===i(this.state.data.ibanNumber).status:"")&&e,a={data:this.state.data,isValid:t};this.props.onChange(a)}}}b(v,"defaultProps",{onChange:()=>{},countryCode:null,holderName:!0,placeholders:{},label:null});export{v as default};
2
2
  //# sourceMappingURL=IbanInput.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"IbanInput.js","sources":["../../../../../src/components/internal/IbanInput/IbanInput.tsx"],"sourcesContent":["import { Component, h } from 'preact';\nimport { useCoreContext } from '../../../core/Context/CoreProvider';\nimport Field from '../FormFields/Field';\nimport { checkIbanStatus, isValidHolder } from './validate';\nimport { electronicFormat, formatIban, getCountryCode, getNextCursorPosition } from './utils';\nimport Fieldset from '../FormFields/Fieldset';\nimport { GenericError } from '../../../core/Errors/types';\nimport InputText from '../FormFields/InputText';\n\ninterface IbanInputProps {\n holderName?: boolean;\n placeholders?: Omit<IbanData, 'countryCode'>;\n countryCode?: string;\n showPayButton?: boolean;\n payButton?: any;\n onChange: (data) => void;\n label: string;\n data: IbanData;\n}\n\ninterface IbanData {\n ownerName?: string;\n ibanNumber?: string;\n countryCode?: string;\n}\n\ninterface IbanInputState {\n data: any;\n errors: any;\n valid: any;\n status: string;\n isValid: boolean;\n cursor: number;\n}\n\nconst ibanHolderNameErrorObj: GenericError = {\n isValid: false,\n errorMessage: 'ach.accountHolderNameField.invalid', // TODO create bespoke translation key\n error: 'ach.accountHolderNameField.invalid'\n};\n\nconst ibanErrorObj: GenericError = {\n isValid: false,\n errorMessage: 'sepaDirectDebit.ibanField.invalid',\n error: 'sepaDirectDebit.ibanField.invalid'\n};\n\nclass IbanInput extends Component<IbanInputProps, IbanInputState> {\n private ibanNumber: HTMLInputElement;\n\n constructor(props) {\n super(props);\n\n this.state = {\n status: 'ready',\n data: {\n ownerName: props?.data?.ownerName || '',\n ibanNumber: props?.data?.ibanNumber || '',\n countryCode: props?.data?.countryCode || ''\n },\n isValid: false,\n cursor: 0,\n errors: {},\n valid: {}\n };\n\n if (this.state.data['ibanNumber']) {\n const electronicFormatIban = electronicFormat(this.state.data['ibanNumber']); // example: NL13TEST0123456789\n this.state.data['ibanNumber'] = formatIban(electronicFormatIban); // example: NL13 TEST 0123 4567 89\n }\n\n if (this.state.data['ibanNumber'] || this.state.data['ownerName']) {\n const holderNameValid = this.props.holderName ? isValidHolder(this.state.data['ownerName']) : '';\n const ibanValid = this.state.data['ibanNumber'] ? checkIbanStatus(this.state.data['ibanNumber']).status === 'valid' : '';\n const isValid = ibanValid && holderNameValid;\n const data = { data: this.state.data, isValid };\n\n this.props.onChange(data);\n }\n }\n\n public static defaultProps = {\n onChange: () => {},\n countryCode: null,\n holderName: true,\n placeholders: {},\n label: null\n };\n\n setStatus(status) {\n this.setState({ status });\n }\n\n onChange() {\n const holderNameValid = this.props.holderName ? isValidHolder(this.state.data['ownerName']) : true;\n const ibanValid = checkIbanStatus(this.state.data['ibanNumber']).status === 'valid';\n const isValid = ibanValid && holderNameValid;\n const data = { data: this.state.data, isValid, errors: this.state.errors };\n\n this.props.onChange(data);\n }\n\n public setData = (key, value, cb?) => {\n this.setState(prevState => ({ data: { ...prevState.data, [key]: value } }), cb);\n };\n\n public setError = (key, value, cb?) => {\n this.setState(prevState => ({ errors: { ...prevState.errors, [key]: value } }), cb);\n };\n\n public setValid = (key, value, cb?) => {\n this.setState(prevState => ({ valid: { ...prevState.valid, [key]: value } }), cb);\n };\n\n public handleHolderInput = holder => {\n this.setState(\n prevState => ({ data: { ...prevState.data, ownerName: holder } }),\n () => {\n const holderStatus = isValidHolder(this.state.data['ownerName']);\n const holderErr =\n holderStatus != null && !holderStatus // *don't* consider null, i.e. a value that has just been deleted, to be in error\n ? ibanHolderNameErrorObj\n : null;\n\n this.setError('holder', holderErr, this.onChange);\n }\n );\n };\n\n public handleIbanInput = e => {\n const inputValue = e.target.value;\n const electronicFormatIban = electronicFormat(inputValue); // example: NL13TEST0123456789\n const iban = formatIban(electronicFormatIban); // example: NL13 TEST 0123 4567 89\n const validationStatus = checkIbanStatus(iban).status;\n\n const countryCode = getCountryCode(electronicFormatIban);\n\n // calculate cursor's new position\n const cursor = e.target.selectionStart;\n const previousIban = this.state.data['ibanNumber'];\n const newCursorPosition = getNextCursorPosition(cursor, iban, previousIban);\n\n this.setState(\n prevState => ({\n data: { ...prevState.data, ibanNumber: iban, countryCode: countryCode },\n errors: {\n ...prevState.errors,\n iban: validationStatus === 'invalid' ? ibanErrorObj : null\n },\n valid: { ...prevState.valid, iban: validationStatus === 'valid' }\n }),\n () => {\n e.target.setSelectionRange(newCursorPosition, newCursorPosition);\n this.onChange();\n }\n );\n };\n\n public handleIbanBlur = e => {\n const currentIban = e.target.value;\n\n if (currentIban.length > 0) {\n const validationStatus = checkIbanStatus(currentIban).status;\n this.setError('iban', validationStatus !== 'valid' ? ibanErrorObj : null, this.onChange);\n } else {\n // Empty field is not in error\n this.setError('iban', null, this.onChange);\n }\n };\n\n showValidation() {\n const validationStatus = checkIbanStatus(this.state.data['ibanNumber']).status;\n const holderStatus = isValidHolder(this.state.data['ownerName']);\n this.setError('iban', validationStatus !== 'valid' ? ibanErrorObj : null);\n\n const holderErr = !holderStatus // *do* consider null, i.e. an empty field, to be in error\n ? ibanHolderNameErrorObj\n : null;\n\n this.setError('holder', holderErr, this.onChange); // add callback param to force propagation of state to parent comp\n }\n\n render({ placeholders }: IbanInputProps, { data, errors, valid }) {\n const { i18n } = useCoreContext();\n return (\n <Fieldset classNameModifiers={['iban-input']} label={this.props.label}>\n {this.props.holderName && (\n <Field\n className={'adyen-checkout__field--owner-name'}\n label={i18n.get('sepa.ownerName')}\n filled={data['ownerName'] && data['ownerName'].length}\n errorMessage={errors.holder ? i18n.get(errors.holder.error) : false}\n dir={'ltr'}\n i18n={i18n}\n name={'ownerName'}\n >\n <InputText\n name={'ownerName'}\n className={'adyen-checkout__iban-input__owner-name'}\n placeholder={placeholders?.ownerName}\n value={data['ownerName']}\n aria-invalid={!!this.state.errors.holder}\n aria-label={i18n.get('sepa.ownerName')}\n onInput={e => this.handleHolderInput((e.target as HTMLInputElement).value)}\n onBlur={e => this.handleHolderInput((e.target as HTMLInputElement).value)}\n />\n </Field>\n )}\n\n <Field\n className={'adyen-checkout__field--iban-number'}\n label={i18n.get('sepa.ibanNumber')}\n errorMessage={errors.iban ? i18n.get(errors.iban.error) : false}\n filled={data['ibanNumber'] && data['ibanNumber'].length}\n isValid={valid.iban}\n onBlur={this.handleIbanBlur}\n dir={'ltr'}\n i18n={i18n}\n name={'ibanNumber'}\n >\n <InputText\n setRef={ref => {\n this.ibanNumber = ref;\n }}\n name={'ibanNumber'}\n className={'adyen-checkout__iban-input__iban-number'}\n classNameModifiers={['large']}\n placeholder={placeholders?.ibanNumber}\n value={data['ibanNumber']}\n onInput={this.handleIbanInput}\n aria-invalid={!!this.state.errors.iban}\n aria-label={i18n.get('sepa.ibanNumber')}\n autocorrect={'off'}\n spellcheck={false}\n />\n </Field>\n\n {this.props.showPayButton && this.props.payButton({ status: this.state.status })}\n </Fieldset>\n );\n }\n}\n\nexport default IbanInput;\n"],"names":["ibanHolderNameErrorObj","isValid","errorMessage","error","ibanErrorObj","IbanInput","Component","setStatus","status","this","setState","onChange","holderNameValid","props","holderName","isValidHolder","state","data","checkIbanStatus","errors","showValidation","validationStatus","holderStatus","setError","holderErr","render","placeholders","valid","i18n","useCoreContext","h","Fieldset","classNameModifiers","label","Field","className","get","filled","length","holder","dir","name","InputText","placeholder","ownerName","value","aria-invalid","aria-label","onInput","e","handleHolderInput","target","onBlur","iban","handleIbanBlur","setRef","ref","ibanNumber","handleIbanInput","autocorrect","spellcheck","showPayButton","payButton","constructor","super","_define_property","setData","key","cb","prevState","_object_spread_props","_object_spread","setValid","inputValue","electronicFormatIban","electronicFormat","formatIban","countryCode","getCountryCode","cursor","selectionStart","previousIban","newCursorPosition","getNextCursorPosition","setSelectionRange","currentIban","defaultProps"],"mappings":"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"}
1
+ {"version":3,"file":"IbanInput.js","sources":["../../../../../src/components/internal/IbanInput/IbanInput.tsx"],"sourcesContent":["import { Component, h } from 'preact';\nimport { useCoreContext } from '../../../core/Context/CoreProvider';\nimport Field from '../FormFields/Field';\nimport { checkIbanStatus, isValidHolder } from './validate';\nimport { electronicFormat, formatIban, getCountryCode, getNextCursorPosition } from './utils';\nimport Fieldset from '../FormFields/Fieldset';\nimport { GenericError } from '../../../core/Errors/types';\nimport InputText from '../FormFields/InputText';\n\ninterface IbanInputProps {\n holderName?: boolean;\n placeholders?: Omit<IbanData, 'countryCode'>;\n countryCode?: string;\n showPayButton?: boolean;\n payButton?: any;\n onChange: (data) => void;\n label: string;\n data: IbanData;\n}\n\ninterface IbanData {\n ownerName?: string;\n ibanNumber?: string;\n countryCode?: string;\n}\n\ninterface IbanInputState {\n data: any;\n errors: any;\n valid: any;\n status: string;\n isValid: boolean;\n cursor: number;\n}\n\nconst ibanHolderNameErrorObj: GenericError = {\n isValid: false,\n errorMessage: 'ach.accountHolderNameField.invalid', // TODO create bespoke translation key\n error: 'ach.accountHolderNameField.invalid'\n};\n\nconst ibanErrorObj: GenericError = {\n isValid: false,\n errorMessage: 'sepaDirectDebit.ibanField.invalid',\n error: 'sepaDirectDebit.ibanField.invalid'\n};\n\nclass IbanInput extends Component<IbanInputProps, IbanInputState> {\n private ibanNumber: HTMLInputElement;\n\n constructor(props) {\n super(props);\n\n this.state = {\n status: 'ready',\n data: {\n ownerName: props?.data?.ownerName || '',\n ibanNumber: props?.data?.ibanNumber || '',\n countryCode: props?.data?.countryCode || ''\n },\n isValid: false,\n cursor: 0,\n errors: {},\n valid: {}\n };\n\n if (this.state.data['ibanNumber']) {\n const electronicFormatIban = electronicFormat(this.state.data['ibanNumber']); // example: NL13TEST0123456789\n this.state.data['ibanNumber'] = formatIban(electronicFormatIban); // example: NL13 TEST 0123 4567 89\n }\n\n if (this.state.data['ibanNumber'] || this.state.data['ownerName']) {\n const holderNameValid = this.props.holderName ? isValidHolder(this.state.data['ownerName']) : '';\n const ibanValid = this.state.data['ibanNumber'] ? checkIbanStatus(this.state.data['ibanNumber']).status === 'valid' : '';\n const isValid = ibanValid && holderNameValid;\n const data = { data: this.state.data, isValid };\n\n this.props.onChange(data);\n }\n }\n\n public static defaultProps = {\n onChange: () => {},\n countryCode: null,\n holderName: true,\n placeholders: {},\n label: null\n };\n\n setStatus(status) {\n this.setState({ status });\n }\n\n onChange() {\n const holderNameValid = this.props.holderName ? isValidHolder(this.state.data['ownerName']) : true;\n const ibanValid = checkIbanStatus(this.state.data['ibanNumber']).status === 'valid';\n const isValid = ibanValid && holderNameValid;\n const data = { data: this.state.data, isValid, errors: this.state.errors };\n\n this.props.onChange(data);\n }\n\n public setData = (key, value, cb?) => {\n this.setState(prevState => ({ data: { ...prevState.data, [key]: value } }), cb);\n };\n\n public setError = (key, value, cb?) => {\n this.setState(prevState => ({ errors: { ...prevState.errors, [key]: value } }), cb);\n };\n\n public setValid = (key, value, cb?) => {\n this.setState(prevState => ({ valid: { ...prevState.valid, [key]: value } }), cb);\n };\n\n public handleHolderInput = holder => {\n this.setState(\n prevState => ({ data: { ...prevState.data, ownerName: holder } }),\n () => {\n const holderStatus = isValidHolder(this.state.data['ownerName']);\n const holderErr =\n holderStatus != null && !holderStatus // *don't* consider null, i.e. a value that has just been deleted, to be in error\n ? ibanHolderNameErrorObj\n : null;\n\n this.setError('holder', holderErr, this.onChange);\n }\n );\n };\n\n public handleIbanInput = e => {\n const inputValue = e.target.value;\n const electronicFormatIban = electronicFormat(inputValue); // example: NL13TEST0123456789\n const iban = formatIban(electronicFormatIban); // example: NL13 TEST 0123 4567 89\n const validationStatus = checkIbanStatus(iban).status;\n\n const countryCode = getCountryCode(electronicFormatIban);\n\n // calculate cursor's new position\n const cursor = e.target.selectionStart;\n const previousIban = this.state.data['ibanNumber'];\n const newCursorPosition = getNextCursorPosition(cursor, iban, previousIban);\n\n this.setState(\n prevState => ({\n data: { ...prevState.data, ibanNumber: iban, countryCode: countryCode },\n errors: {\n ...prevState.errors,\n iban: validationStatus === 'invalid' ? ibanErrorObj : null\n },\n valid: { ...prevState.valid, iban: validationStatus === 'valid' }\n }),\n () => {\n e.target.setSelectionRange(newCursorPosition, newCursorPosition);\n this.onChange();\n }\n );\n };\n\n public handleIbanBlur = e => {\n const currentIban = e.target.value;\n\n if (currentIban.length > 0) {\n const validationStatus = checkIbanStatus(currentIban).status;\n this.setError('iban', validationStatus !== 'valid' ? ibanErrorObj : null, this.onChange);\n } else {\n // Empty field is not in error\n this.setError('iban', null, this.onChange);\n }\n };\n\n showValidation() {\n const validationStatus = checkIbanStatus(this.state.data['ibanNumber']).status;\n const holderStatus = isValidHolder(this.state.data['ownerName']);\n this.setError('iban', validationStatus !== 'valid' ? ibanErrorObj : null);\n\n const holderErr = !holderStatus // *do* consider null, i.e. an empty field, to be in error\n ? ibanHolderNameErrorObj\n : null;\n\n this.setError('holder', holderErr, this.onChange); // add callback param to force propagation of state to parent comp\n }\n\n render({ placeholders }: IbanInputProps, { data, errors, valid }) {\n const { i18n } = useCoreContext();\n return (\n <Fieldset classNameModifiers={['iban-input']} label={this.props.label}>\n {this.props.holderName && (\n <Field\n className={'adyen-checkout__field--owner-name'}\n label={i18n.get('sepa.ownerName')}\n filled={data['ownerName'] && data['ownerName'].length}\n errorMessage={errors.holder ? i18n.get(errors.holder.error) : false}\n dir={'ltr'}\n i18n={i18n}\n name={'ownerName'}\n >\n <InputText\n name={'ownerName'}\n className={'adyen-checkout__iban-input__owner-name'}\n placeholder={placeholders?.ownerName}\n value={data['ownerName']}\n aria-invalid={!!this.state.errors.holder}\n aria-label={i18n.get('sepa.ownerName')}\n onInput={e => this.handleHolderInput((e.target as HTMLInputElement).value)}\n onBlur={e => this.handleHolderInput((e.target as HTMLInputElement).value)}\n />\n </Field>\n )}\n\n <Field\n className={'adyen-checkout__field--iban-number'}\n label={i18n.get('sepa.ibanNumber')}\n errorMessage={errors.iban ? i18n.get(errors.iban.error) : false}\n filled={data['ibanNumber'] && data['ibanNumber'].length}\n isValid={valid.iban}\n onBlur={this.handleIbanBlur}\n dir={'ltr'}\n i18n={i18n}\n name={'ibanNumber'}\n >\n <InputText\n setRef={ref => {\n this.ibanNumber = ref;\n }}\n name={'ibanNumber'}\n className={'adyen-checkout__iban-input__iban-number'}\n classNameModifiers={['large']}\n placeholder={placeholders?.ibanNumber}\n value={data['ibanNumber']}\n onInput={this.handleIbanInput}\n aria-invalid={!!this.state.errors.iban}\n aria-label={i18n.get('sepa.ibanNumber')}\n autocorrect={'off'}\n spellcheck={false}\n />\n </Field>\n\n {this.props.showPayButton && this.props.payButton({ status: this.state.status })}\n </Fieldset>\n );\n }\n}\n\nexport default IbanInput;\n"],"names":["ibanHolderNameErrorObj","isValid","errorMessage","error","ibanErrorObj","IbanInput","Component","setStatus","status","this","setState","onChange","holderNameValid","props","holderName","isValidHolder","state","data","checkIbanStatus","errors","showValidation","validationStatus","holderStatus","setError","holderErr","render","placeholders","valid","i18n","useCoreContext","h","Fieldset","classNameModifiers","label","Field","className","get","filled","length","holder","dir","name","InputText","placeholder","ownerName","value","aria-invalid","aria-label","onInput","e","handleHolderInput","target","onBlur","iban","handleIbanBlur","setRef","ref","ibanNumber","handleIbanInput","autocorrect","spellcheck","showPayButton","payButton","constructor","super","_define_property","setData","key","cb","prevState","_object_spread_props","_object_spread","setValid","inputValue","electronicFormatIban","electronicFormat","formatIban","countryCode","getCountryCode","cursor","selectionStart","previousIban","newCursorPosition","getNextCursorPosition","setSelectionRange","currentIban","defaultProps"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{useState as e,useRef as t,useEffect as r}from"../../../external/preact/hooks/dist/hooks.js";import n from"../../../external/classnames/index.js";import{createElement as o}from"../../../external/preact/dist/preact.js";function c(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){c(e,t,r[t])}))}return e}function s(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r.push.apply(r,n)}return r}(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})),e}function i(c){const{backgroundUrl:i="",className:l="",classNameModifiers:u=[],src:f="",alt:p="",showOnError:b=!1}=c,[m,O]=e(!1),y=t(null),d=()=>{O(!0)},g=n([l],"adyen-checkout__image",{"adyen-checkout__image--loaded":m},...u.map((e=>`adyen-checkout__image--${e}`)));return r((()=>{const e=i?new Image:y.current;e.src=i||f,e.onload=d,O(!!e.complete)}),[]),i?o("div",s(a({"data-testid":"background",style:{backgroundUrl:i}},c),{className:g})):o("img",s(a({},c),{alt:p,ref:y,className:g,onError:()=>{O(b)}}))}export{i as default};
1
+ import{useState as e,useRef as t,useEffect as r}from"../../../external/preact/hooks/dist/hooks.js";import n from"../../../external/classnames/index.js";import{createElement as o}from"../../../external/preact/dist/preact.js";function c(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){c(e,t,r[t])}))}return e}function s(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t}(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})),e}function i(c){const{backgroundUrl:i="",className:l="",classNameModifiers:u=[],src:f="",alt:p="",showOnError:b=!1}=c,[m,O]=e(!1),y=t(null),d=()=>{O(!0)},g=n([l],"adyen-checkout__image",{"adyen-checkout__image--loaded":m},...u.map((e=>`adyen-checkout__image--${e}`)));return r((()=>{const e=i?new Image:y.current;e.src=i||f,e.onload=d,O(!!e.complete)}),[]),i?o("div",s(a({"data-testid":"background",style:{backgroundUrl:i}},c),{className:g})):o("img",s(a({},c),{alt:p,ref:y,className:g,onError:()=>{O(b)}}))}export{i as default};
2
2
  //# sourceMappingURL=Img.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Img.js","sources":["../../../../../src/components/internal/Img/Img.tsx"],"sourcesContent":["import { JSX } from 'preact';\nimport { useRef, useState, useEffect } from 'preact/hooks';\nimport cx from 'classnames';\nimport './Img.scss';\nimport { h } from 'preact';\nimport { ImgProps } from './types';\n\nexport default function Img(props: ImgProps) {\n const { backgroundUrl = '', className = '', classNameModifiers = [], src = '', alt = '', showOnError = false } = props;\n const [loaded, setLoaded] = useState(false);\n const imageRef = useRef(null);\n\n const handleLoad = () => {\n setLoaded(true);\n };\n\n const handleError = () => {\n setLoaded(showOnError);\n };\n\n const classNames = cx(\n [className],\n 'adyen-checkout__image',\n { 'adyen-checkout__image--loaded': loaded },\n ...classNameModifiers.map(modifier => `adyen-checkout__image--${modifier}`)\n );\n\n useEffect(() => {\n const image = backgroundUrl ? new Image() : imageRef.current;\n image.src = backgroundUrl || src;\n image.onload = handleLoad;\n setLoaded(!!image.complete);\n }, []);\n\n if (backgroundUrl) {\n return <div data-testid=\"background\" style={{ backgroundUrl } as JSX.CSSProperties} {...props} className={classNames} />;\n }\n\n return <img {...props} alt={alt} ref={imageRef} className={classNames} onError={handleError} />;\n}\n"],"names":["Img","props","backgroundUrl","className","classNameModifiers","src","alt","showOnError","loaded","setLoaded","useState","imageRef","useRef","handleLoad","classNames","cx","map","modifier","useEffect","image","Image","current","onload","complete","h","div","data-testid","style","img","ref","onError"],"mappings":"ihCAOe,SAASA,EAAIC,GACxB,MAAMC,cAAEA,EAAgB,GAAEC,UAAEA,EAAY,GAAEC,mBAAEA,EAAqB,GAAEC,IAAEA,EAAM,GAAEC,IAAEA,EAAM,GAAEC,YAAEA,GAAc,GAAUN,GAC1GO,EAAQC,GAAaC,GAAS,GAC/BC,EAAWC,EAAO,MAElBC,EAAa,KACfJ,GAAU,EAAA,EAORK,EAAaC,EACf,CAACZ,GACD,wBACA,CAAE,gCAAiCK,MAChCJ,EAAmBY,KAAIC,GAAY,0BAA0BA,OAUpE,OAPAC,GAAU,KACN,MAAMC,EAAQjB,EAAgB,IAAIkB,MAAUT,EAASU,QACrDF,EAAMd,IAAMH,GAAiBG,EAC7Bc,EAAMG,OAAST,EACfJ,IAAYU,EAAMI,SAAQ,GAC3B,IAECrB,EACOsB,EAACC,MAAAA,EAAAA,EAAAA,CAAIC,cAAY,aAAaC,MAAO,CAAEzB,kBAA0CD,GAAAA,CAAOE,UAAWW,KAGvGU,EAACI,MAAQ3B,EAAAA,EAAAA,CAAAA,EAAAA,GAAAA,CAAOK,IAAKA,EAAKuB,IAAKlB,EAAUR,UAAWW,EAAYgB,QAtBnD,KAChBrB,EAAUF,EAAAA,IAsBlB"}
1
+ {"version":3,"file":"Img.js","sources":["../../../../../src/components/internal/Img/Img.tsx"],"sourcesContent":["import { JSX } from 'preact';\nimport { useRef, useState, useEffect } from 'preact/hooks';\nimport cx from 'classnames';\nimport './Img.scss';\nimport { h } from 'preact';\nimport { ImgProps } from './types';\n\nexport default function Img(props: ImgProps) {\n const { backgroundUrl = '', className = '', classNameModifiers = [], src = '', alt = '', showOnError = false } = props;\n const [loaded, setLoaded] = useState(false);\n const imageRef = useRef(null);\n\n const handleLoad = () => {\n setLoaded(true);\n };\n\n const handleError = () => {\n setLoaded(showOnError);\n };\n\n const classNames = cx(\n [className],\n 'adyen-checkout__image',\n { 'adyen-checkout__image--loaded': loaded },\n ...classNameModifiers.map(modifier => `adyen-checkout__image--${modifier}`)\n );\n\n useEffect(() => {\n const image = backgroundUrl ? new Image() : imageRef.current;\n image.src = backgroundUrl || src;\n image.onload = handleLoad;\n setLoaded(!!image.complete);\n }, []);\n\n if (backgroundUrl) {\n return <div data-testid=\"background\" style={{ backgroundUrl } as JSX.CSSProperties} {...props} className={classNames} />;\n }\n\n return <img {...props} alt={alt} ref={imageRef} className={classNames} onError={handleError} />;\n}\n"],"names":["Img","props","backgroundUrl","className","classNameModifiers","src","alt","showOnError","loaded","setLoaded","useState","imageRef","useRef","handleLoad","classNames","cx","map","modifier","useEffect","image","Image","current","onload","complete","h","div","data-testid","style","img","ref","onError"],"mappings":"+gCAOe,SAASA,EAAIC,GACxB,MAAMC,cAAEA,EAAgB,GAAEC,UAAEA,EAAY,GAAEC,mBAAEA,EAAqB,GAAEC,IAAEA,EAAM,GAAEC,IAAEA,EAAM,GAAEC,YAAEA,GAAc,GAAUN,GAC1GO,EAAQC,GAAaC,GAAS,GAC/BC,EAAWC,EAAO,MAElBC,EAAa,KACfJ,GAAU,EAAA,EAORK,EAAaC,EACf,CAACZ,GACD,wBACA,CAAE,gCAAiCK,MAChCJ,EAAmBY,KAAIC,GAAY,0BAA0BA,OAUpE,OAPAC,GAAU,KACN,MAAMC,EAAQjB,EAAgB,IAAIkB,MAAUT,EAASU,QACrDF,EAAMd,IAAMH,GAAiBG,EAC7Bc,EAAMG,OAAST,EACfJ,IAAYU,EAAMI,SAAQ,GAC3B,IAECrB,EACOsB,EAACC,MAAAA,EAAAA,EAAAA,CAAIC,cAAY,aAAaC,MAAO,CAAEzB,kBAA0CD,GAAAA,CAAOE,UAAWW,KAGvGU,EAACI,MAAQ3B,EAAAA,EAAAA,CAAAA,EAAAA,GAAAA,CAAOK,IAAKA,EAAKuB,IAAKlB,EAAUR,UAAWW,EAAYgB,QAtBnD,KAChBrB,EAAUF,EAAAA,IAsBlB"}
@@ -1,2 +1,2 @@
1
- import{createElement as e}from"../../../../external/preact/dist/preact.js";import{useCallback as t}from"../../../../external/preact/hooks/dist/hooks.js";import r from"./IssuerButton.js";import{useCoreContext as o}from"../../../../core/Context/CoreProvider.js";function n(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function c(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r.push.apply(r,o)}return r}(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})),e}const s=({items:s=[],selectedIssuerId:i,onChange:a})=>{const{i18n:u}=o(),l=t((e=>{const t=e.currentTarget.value;Object.defineProperty(e.target,"value",{value:t}),a(e)}),[a]);return e("div",{className:"adyen-checkout__issuer-button-group",role:"group","aria-label":u.get("issuerList.selectField.contextualText")},s.map((t=>e(r,c(function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},o=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),o.forEach((function(t){n(e,t,r[t])}))}return e}({key:t.id},t),{selected:i===t.id,onClick:l})))))};export{s as default};
1
+ import{createElement as e}from"../../../../external/preact/dist/preact.js";import{useCallback as t}from"../../../../external/preact/hooks/dist/hooks.js";import r from"./IssuerButton.js";import{useCoreContext as o}from"../../../../core/Context/CoreProvider.js";function n(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function c(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t}(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})),e}const s=({items:s=[],selectedIssuerId:i,onChange:a})=>{const{i18n:u}=o(),l=t((e=>{const t=e.currentTarget.value;Object.defineProperty(e.target,"value",{value:t}),a(e)}),[a]);return e("div",{className:"adyen-checkout__issuer-button-group",role:"group","aria-label":u.get("issuerList.selectField.contextualText")},s.map((t=>e(r,c(function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},o=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),o.forEach((function(t){n(e,t,r[t])}))}return e}({key:t.id},t),{selected:i===t.id,onClick:l})))))};export{s as default};
2
2
  //# sourceMappingURL=IssuerButtonGroup.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"IssuerButtonGroup.js","sources":["../../../../../../src/components/internal/IssuerList/IssuerButtonGroup/IssuerButtonGroup.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { useCallback } from 'preact/hooks';\nimport IssuerButton from './IssuerButton';\nimport { useCoreContext } from '../../../../core/Context/CoreProvider';\nimport './IssuerButtonGroup.scss';\nimport { IssuerItem } from '../types';\n\ninterface IssuerButtonGroupProps {\n items: IssuerItem[];\n selectedIssuerId: string;\n onChange: (event: UIEvent) => void;\n}\n\nconst IssuerButtonGroup = ({ items = [], selectedIssuerId, onChange }: IssuerButtonGroupProps) => {\n const { i18n } = useCoreContext();\n\n const handleClick = useCallback(\n (event: UIEvent) => {\n const value = (event.currentTarget as HTMLButtonElement).value;\n Object.defineProperty(event.target, 'value', { value });\n onChange(event);\n },\n [onChange]\n );\n\n return (\n <div className=\"adyen-checkout__issuer-button-group\" role=\"group\" aria-label={i18n.get('issuerList.selectField.contextualText')}>\n {items.map(issuer => (\n <IssuerButton key={issuer.id} {...issuer} selected={selectedIssuerId === issuer.id} onClick={handleClick} />\n ))}\n </div>\n );\n};\n\nexport default IssuerButtonGroup;\n"],"names":["IssuerButtonGroup","items","selectedIssuerId","onChange","i18n","useCoreContext","handleClick","useCallback","event","value","currentTarget","Object","defineProperty","target","h","div","className","role","aria-label","get","map","issuer","IssuerButton","key","id","selected","onClick"],"mappings":"6uBAaMA,MAAAA,EAAoB,EAAGC,QAAQ,GAAIC,mBAAkBC,eACvD,MAAMC,KAAEA,GAASC,IAEXC,EAAcC,GACfC,IACG,MAAMC,EAASD,EAAME,cAAoCD,MACzDE,OAAOC,eAAeJ,EAAMK,OAAQ,QAAS,CAAEJ,UAC/CN,EAASK,EAAAA,GAEb,CAACL,IAGL,OACIW,EAACC,MAAAA,CAAIC,UAAU,sCAAsCC,KAAK,QAAQC,aAAYd,EAAKe,IAAI,0CAClFlB,EAAMmB,KAAIC,GACPP,EAACQ,EAAAA,wUAAAA,CAAAA,CAAaC,IAAKF,EAAOG,IAAQH,GAAAA,CAAQI,SAAUvB,IAAqBmB,EAAOG,GAAIE,QAASpB"}
1
+ {"version":3,"file":"IssuerButtonGroup.js","sources":["../../../../../../src/components/internal/IssuerList/IssuerButtonGroup/IssuerButtonGroup.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { useCallback } from 'preact/hooks';\nimport IssuerButton from './IssuerButton';\nimport { useCoreContext } from '../../../../core/Context/CoreProvider';\nimport './IssuerButtonGroup.scss';\nimport { IssuerItem } from '../types';\n\ninterface IssuerButtonGroupProps {\n items: IssuerItem[];\n selectedIssuerId: string;\n onChange: (event: UIEvent) => void;\n}\n\nconst IssuerButtonGroup = ({ items = [], selectedIssuerId, onChange }: IssuerButtonGroupProps) => {\n const { i18n } = useCoreContext();\n\n const handleClick = useCallback(\n (event: UIEvent) => {\n const value = (event.currentTarget as HTMLButtonElement).value;\n Object.defineProperty(event.target, 'value', { value });\n onChange(event);\n },\n [onChange]\n );\n\n return (\n <div className=\"adyen-checkout__issuer-button-group\" role=\"group\" aria-label={i18n.get('issuerList.selectField.contextualText')}>\n {items.map(issuer => (\n <IssuerButton key={issuer.id} {...issuer} selected={selectedIssuerId === issuer.id} onClick={handleClick} />\n ))}\n </div>\n );\n};\n\nexport default IssuerButtonGroup;\n"],"names":["IssuerButtonGroup","items","selectedIssuerId","onChange","i18n","useCoreContext","handleClick","useCallback","event","value","currentTarget","Object","defineProperty","target","h","div","className","role","aria-label","get","map","issuer","IssuerButton","key","id","selected","onClick"],"mappings":"2uBAaMA,MAAAA,EAAoB,EAAGC,QAAQ,GAAIC,mBAAkBC,eACvD,MAAMC,KAAEA,GAASC,IAEXC,EAAcC,GACfC,IACG,MAAMC,EAASD,EAAME,cAAoCD,MACzDE,OAAOC,eAAeJ,EAAMK,OAAQ,QAAS,CAAEJ,UAC/CN,EAASK,EAAAA,GAEb,CAACL,IAGL,OACIW,EAACC,MAAAA,CAAIC,UAAU,sCAAsCC,KAAK,QAAQC,aAAYd,EAAKe,IAAI,0CAClFlB,EAAMmB,KAAIC,GACPP,EAACQ,EAAAA,wUAAAA,CAAAA,CAAaC,IAAKF,EAAOG,IAAQH,GAAAA,CAAQI,SAAUvB,IAAqBmB,EAAOG,GAAIE,QAASpB"}