@adyen/adyen-web 6.5.1 → 6.6.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 (230) hide show
  1. package/dist/cjs/adyen.css +2 -2
  2. package/dist/cjs/adyen.css.map +1 -1
  3. package/dist/cjs/index.cjs +2 -2
  4. package/dist/cjs/index.cjs.map +1 -1
  5. package/dist/cjs/index.d.cts +68 -30
  6. package/dist/es/adyen.css +2 -2
  7. package/dist/es/adyen.css.map +1 -1
  8. package/dist/es/components/ANCV/ANCV.js.map +1 -1
  9. package/dist/es/components/Ach/components/AchInput/defaultProps.js +1 -1
  10. package/dist/es/components/Ach/components/AchInput/defaultProps.js.map +1 -1
  11. package/dist/es/components/BacsDD/BacsDD.js.map +1 -1
  12. package/dist/es/components/Boleto/Boleto.js.map +1 -1
  13. package/dist/es/components/Boleto/components/BoletoVoucherResult/BoletoVoucherResult.js +1 -1
  14. package/dist/es/components/Boleto/components/BoletoVoucherResult/BoletoVoucherResult.js.map +1 -1
  15. package/dist/es/components/Card/Card.js.map +1 -1
  16. package/dist/es/components/Card/components/CardInput/components/BrandIcon.js +1 -1
  17. package/dist/es/components/Card/components/CardInput/components/BrandIcon.js.map +1 -1
  18. package/dist/es/components/Card/components/CardInput/types.js +1 -1
  19. package/dist/es/components/Card/components/CardInput/types.js.map +1 -1
  20. package/dist/es/components/CashAppPay/CashAppPay.js.map +1 -1
  21. package/dist/es/components/CashAppPay/services/types.js +1 -1
  22. package/dist/es/components/CashAppPay/services/types.js.map +1 -1
  23. package/dist/es/components/CustomCard/CustomCard.js.map +1 -1
  24. package/dist/es/components/Donation/components/CampaignContent.js +1 -1
  25. package/dist/es/components/Donation/components/CampaignContent.js.map +1 -1
  26. package/dist/es/components/Donation/components/CampaignInfo.js +2 -0
  27. package/dist/es/components/Donation/components/CampaignInfo.js.map +1 -0
  28. package/dist/es/components/Donation/components/DonationComponent.js +1 -1
  29. package/dist/es/components/Donation/components/DonationComponent.js.map +1 -1
  30. package/dist/es/components/Dropin/components/DropinComponent.js +1 -1
  31. package/dist/es/components/Dropin/components/DropinComponent.js.map +1 -1
  32. package/dist/es/components/Dropin/components/PaymentMethod/PaymentMethodItem/PaymentMethodItem.js.map +1 -1
  33. package/dist/es/components/Giftcard/Giftcard.js.map +1 -1
  34. package/dist/es/components/Giftcard/components/GiftcardComponent.js.map +1 -1
  35. package/dist/es/components/GooglePay/GooglePay.js.map +1 -1
  36. package/dist/es/components/Klarna/KlarnaPayments.js +1 -1
  37. package/dist/es/components/Klarna/KlarnaPayments.js.map +1 -1
  38. package/dist/es/components/Klarna/components/KlarnaContainer/KlarnaContainer.js +1 -1
  39. package/dist/es/components/Klarna/components/KlarnaContainer/KlarnaContainer.js.map +1 -1
  40. package/dist/es/components/Klarna/components/KlarnaWidget/KlarnaWidget.js +1 -1
  41. package/dist/es/components/Klarna/components/KlarnaWidget/KlarnaWidget.js.map +1 -1
  42. package/dist/es/components/Multibanco/Multibanco.js.map +1 -1
  43. package/dist/es/components/OnlineBankingCZ/index.js +1 -1
  44. package/dist/es/components/OnlineBankingCZ/index.js.map +1 -1
  45. package/dist/es/components/OnlineBankingSK/index.js +1 -1
  46. package/dist/es/components/OnlineBankingSK/index.js.map +1 -1
  47. package/dist/es/components/Oxxo/Oxxo.js.map +1 -1
  48. package/dist/es/components/Oxxo/components/OxxoVoucherResult/OxxoVoucherResult.js +1 -1
  49. package/dist/es/components/Oxxo/components/OxxoVoucherResult/OxxoVoucherResult.js.map +1 -1
  50. package/dist/es/components/PayPal/Paypal.js.map +1 -1
  51. package/dist/es/components/Redirect/Redirect.js +1 -1
  52. package/dist/es/components/Redirect/Redirect.js.map +1 -1
  53. package/dist/es/components/Redirect/components/RedirectShopper/RedirectShopper.js +1 -1
  54. package/dist/es/components/Redirect/components/RedirectShopper/RedirectShopper.js.map +1 -1
  55. package/dist/es/components/ThreeDS2/ThreeDS2Challenge.js +1 -1
  56. package/dist/es/components/ThreeDS2/ThreeDS2Challenge.js.map +1 -1
  57. package/dist/es/components/ThreeDS2/ThreeDS2DeviceFingerprint.js +1 -1
  58. package/dist/es/components/ThreeDS2/ThreeDS2DeviceFingerprint.js.map +1 -1
  59. package/dist/es/components/ThreeDS2/callSubmit3DS2Fingerprint.js +1 -1
  60. package/dist/es/components/ThreeDS2/callSubmit3DS2Fingerprint.js.map +1 -1
  61. package/dist/es/components/ThreeDS2/components/Challenge/PrepareChallenge3DS2.js +1 -1
  62. package/dist/es/components/ThreeDS2/components/Challenge/PrepareChallenge3DS2.js.map +1 -1
  63. package/dist/es/components/ThreeDS2/components/DeviceFingerprint/DoFingerprint3DS2.js.map +1 -1
  64. package/dist/es/components/ThreeDS2/components/DeviceFingerprint/PrepareFingerprint3DS2.js +1 -1
  65. package/dist/es/components/ThreeDS2/components/DeviceFingerprint/PrepareFingerprint3DS2.js.map +1 -1
  66. package/dist/es/components/ThreeDS2/components/Form/ThreeDS2Form.js.map +1 -1
  67. package/dist/es/components/Twint/Twint.js.map +1 -1
  68. package/dist/es/components/UPI/UPI.js.map +1 -1
  69. package/dist/es/components/internal/Address/components/CountryField.js +1 -1
  70. package/dist/es/components/internal/Address/components/CountryField.js.map +1 -1
  71. package/dist/es/components/internal/Address/components/FieldContainer.js +1 -1
  72. package/dist/es/components/internal/Address/components/FieldContainer.js.map +1 -1
  73. package/dist/es/components/internal/Address/components/ReadOnlyAddress.js.map +1 -1
  74. package/dist/es/components/internal/Address/components/StateField.js +1 -1
  75. package/dist/es/components/internal/Address/components/StateField.js.map +1 -1
  76. package/dist/es/components/internal/BaseElement/BaseElement.js +1 -1
  77. package/dist/es/components/internal/BaseElement/BaseElement.js.map +1 -1
  78. package/dist/es/components/internal/Button/Button.js.map +1 -1
  79. package/dist/es/components/internal/ClickToPay/errors/TimeoutError.js.map +1 -1
  80. package/dist/es/components/internal/ClickToPay/services/ClickToPayService.js +1 -1
  81. package/dist/es/components/internal/ClickToPay/services/ClickToPayService.js.map +1 -1
  82. package/dist/es/components/internal/ClickToPay/services/sdks/SrciError.js.map +1 -1
  83. package/dist/es/components/internal/FormFields/Select/Select.js +1 -1
  84. package/dist/es/components/internal/FormFields/Select/Select.js.map +1 -1
  85. package/dist/es/components/internal/FormFields/Select/components/SelectButton.js +1 -1
  86. package/dist/es/components/internal/FormFields/Select/components/SelectButton.js.map +1 -1
  87. package/dist/es/components/internal/IFrame/Iframe.js.map +1 -1
  88. package/dist/es/components/internal/IssuerList/IssuerList.js +1 -1
  89. package/dist/es/components/internal/IssuerList/IssuerList.js.map +1 -1
  90. package/dist/es/components/internal/PersonalDetails/ReadOnlyPersonalDetails.js.map +1 -1
  91. package/dist/es/components/internal/QRLoader/QRLoader.js +1 -1
  92. package/dist/es/components/internal/QRLoader/QRLoader.js.map +1 -1
  93. package/dist/es/components/internal/SecuredFields/SFP/SecuredFieldsProvider.js.map +1 -1
  94. package/dist/es/components/internal/UIElement/UIElement.js +1 -1
  95. package/dist/es/components/internal/UIElement/UIElement.js.map +1 -1
  96. package/dist/es/components/tx-variants.js +1 -1
  97. package/dist/es/components/tx-variants.js.map +1 -1
  98. package/dist/es/core/Analytics/Analytics.js +1 -1
  99. package/dist/es/core/Analytics/Analytics.js.map +1 -1
  100. package/dist/es/core/Analytics/EventsQueue.js.map +1 -1
  101. package/dist/es/core/Analytics/analyticsPreProcessor.js +1 -1
  102. package/dist/es/core/Analytics/analyticsPreProcessor.js.map +1 -1
  103. package/dist/es/core/Analytics/constants.js +1 -1
  104. package/dist/es/core/Analytics/constants.js.map +1 -1
  105. package/dist/es/core/Errors/AdyenCheckoutError.js.map +1 -1
  106. package/dist/es/core/Errors/SRPanel.js.map +1 -1
  107. package/dist/es/core/Errors/constants.js +1 -1
  108. package/dist/es/core/Errors/constants.js.map +1 -1
  109. package/dist/es/core/Errors/utils.js +1 -1
  110. package/dist/es/core/RiskModule/RiskModule.js.map +1 -1
  111. package/dist/es/core/RiskModule/components/DeviceFingerprint/GetDeviceFingerprint.js.map +1 -1
  112. package/dist/es/core/Services/analytics/collect-id.js +1 -1
  113. package/dist/es/core/core.js +1 -1
  114. package/dist/es/index.d.ts +68 -30
  115. package/dist/es-legacy/adyen.css +2 -2
  116. package/dist/es-legacy/adyen.css.map +1 -1
  117. package/dist/es-legacy/components/ANCV/ANCV.js.map +1 -1
  118. package/dist/es-legacy/components/Ach/components/AchInput/defaultProps.js +1 -1
  119. package/dist/es-legacy/components/Ach/components/AchInput/defaultProps.js.map +1 -1
  120. package/dist/es-legacy/components/BacsDD/BacsDD.js.map +1 -1
  121. package/dist/es-legacy/components/Boleto/Boleto.js.map +1 -1
  122. package/dist/es-legacy/components/Boleto/components/BoletoVoucherResult/BoletoVoucherResult.js +1 -1
  123. package/dist/es-legacy/components/Boleto/components/BoletoVoucherResult/BoletoVoucherResult.js.map +1 -1
  124. package/dist/es-legacy/components/Card/Card.js.map +1 -1
  125. package/dist/es-legacy/components/Card/components/CardInput/components/BrandIcon.js +1 -1
  126. package/dist/es-legacy/components/Card/components/CardInput/components/BrandIcon.js.map +1 -1
  127. package/dist/es-legacy/components/Card/components/CardInput/types.js +1 -1
  128. package/dist/es-legacy/components/Card/components/CardInput/types.js.map +1 -1
  129. package/dist/es-legacy/components/CashAppPay/CashAppPay.js.map +1 -1
  130. package/dist/es-legacy/components/CashAppPay/services/types.js +1 -1
  131. package/dist/es-legacy/components/CashAppPay/services/types.js.map +1 -1
  132. package/dist/es-legacy/components/CustomCard/CustomCard.js.map +1 -1
  133. package/dist/es-legacy/components/Donation/components/CampaignContent.js +1 -1
  134. package/dist/es-legacy/components/Donation/components/CampaignContent.js.map +1 -1
  135. package/dist/es-legacy/components/Donation/components/CampaignInfo.js +2 -0
  136. package/dist/es-legacy/components/Donation/components/CampaignInfo.js.map +1 -0
  137. package/dist/es-legacy/components/Donation/components/DonationComponent.js +1 -1
  138. package/dist/es-legacy/components/Donation/components/DonationComponent.js.map +1 -1
  139. package/dist/es-legacy/components/Dropin/components/DropinComponent.js +1 -1
  140. package/dist/es-legacy/components/Dropin/components/DropinComponent.js.map +1 -1
  141. package/dist/es-legacy/components/Dropin/components/PaymentMethod/PaymentMethodItem/PaymentMethodItem.js.map +1 -1
  142. package/dist/es-legacy/components/Giftcard/Giftcard.js.map +1 -1
  143. package/dist/es-legacy/components/Giftcard/components/GiftcardComponent.js.map +1 -1
  144. package/dist/es-legacy/components/GooglePay/GooglePay.js.map +1 -1
  145. package/dist/es-legacy/components/Klarna/KlarnaPayments.js +1 -1
  146. package/dist/es-legacy/components/Klarna/KlarnaPayments.js.map +1 -1
  147. package/dist/es-legacy/components/Klarna/components/KlarnaContainer/KlarnaContainer.js +1 -1
  148. package/dist/es-legacy/components/Klarna/components/KlarnaContainer/KlarnaContainer.js.map +1 -1
  149. package/dist/es-legacy/components/Klarna/components/KlarnaWidget/KlarnaWidget.js +1 -1
  150. package/dist/es-legacy/components/Klarna/components/KlarnaWidget/KlarnaWidget.js.map +1 -1
  151. package/dist/es-legacy/components/Multibanco/Multibanco.js.map +1 -1
  152. package/dist/es-legacy/components/OnlineBankingCZ/index.js +1 -1
  153. package/dist/es-legacy/components/OnlineBankingCZ/index.js.map +1 -1
  154. package/dist/es-legacy/components/OnlineBankingSK/index.js +1 -1
  155. package/dist/es-legacy/components/OnlineBankingSK/index.js.map +1 -1
  156. package/dist/es-legacy/components/Oxxo/Oxxo.js.map +1 -1
  157. package/dist/es-legacy/components/Oxxo/components/OxxoVoucherResult/OxxoVoucherResult.js +1 -1
  158. package/dist/es-legacy/components/Oxxo/components/OxxoVoucherResult/OxxoVoucherResult.js.map +1 -1
  159. package/dist/es-legacy/components/PayPal/Paypal.js.map +1 -1
  160. package/dist/es-legacy/components/Redirect/Redirect.js +1 -1
  161. package/dist/es-legacy/components/Redirect/Redirect.js.map +1 -1
  162. package/dist/es-legacy/components/Redirect/components/RedirectShopper/RedirectShopper.js +1 -1
  163. package/dist/es-legacy/components/Redirect/components/RedirectShopper/RedirectShopper.js.map +1 -1
  164. package/dist/es-legacy/components/ThreeDS2/ThreeDS2Challenge.js +1 -1
  165. package/dist/es-legacy/components/ThreeDS2/ThreeDS2Challenge.js.map +1 -1
  166. package/dist/es-legacy/components/ThreeDS2/ThreeDS2DeviceFingerprint.js +1 -1
  167. package/dist/es-legacy/components/ThreeDS2/ThreeDS2DeviceFingerprint.js.map +1 -1
  168. package/dist/es-legacy/components/ThreeDS2/callSubmit3DS2Fingerprint.js +1 -1
  169. package/dist/es-legacy/components/ThreeDS2/callSubmit3DS2Fingerprint.js.map +1 -1
  170. package/dist/es-legacy/components/ThreeDS2/components/Challenge/PrepareChallenge3DS2.js +1 -1
  171. package/dist/es-legacy/components/ThreeDS2/components/Challenge/PrepareChallenge3DS2.js.map +1 -1
  172. package/dist/es-legacy/components/ThreeDS2/components/DeviceFingerprint/DoFingerprint3DS2.js.map +1 -1
  173. package/dist/es-legacy/components/ThreeDS2/components/DeviceFingerprint/PrepareFingerprint3DS2.js +1 -1
  174. package/dist/es-legacy/components/ThreeDS2/components/DeviceFingerprint/PrepareFingerprint3DS2.js.map +1 -1
  175. package/dist/es-legacy/components/ThreeDS2/components/Form/ThreeDS2Form.js.map +1 -1
  176. package/dist/es-legacy/components/Twint/Twint.js.map +1 -1
  177. package/dist/es-legacy/components/UPI/UPI.js.map +1 -1
  178. package/dist/es-legacy/components/internal/Address/components/CountryField.js +1 -1
  179. package/dist/es-legacy/components/internal/Address/components/CountryField.js.map +1 -1
  180. package/dist/es-legacy/components/internal/Address/components/FieldContainer.js +1 -1
  181. package/dist/es-legacy/components/internal/Address/components/FieldContainer.js.map +1 -1
  182. package/dist/es-legacy/components/internal/Address/components/ReadOnlyAddress.js.map +1 -1
  183. package/dist/es-legacy/components/internal/Address/components/StateField.js +1 -1
  184. package/dist/es-legacy/components/internal/Address/components/StateField.js.map +1 -1
  185. package/dist/es-legacy/components/internal/BaseElement/BaseElement.js +1 -1
  186. package/dist/es-legacy/components/internal/BaseElement/BaseElement.js.map +1 -1
  187. package/dist/es-legacy/components/internal/Button/Button.js.map +1 -1
  188. package/dist/es-legacy/components/internal/ClickToPay/components/CtPCards/CtPCards.js.map +1 -1
  189. package/dist/es-legacy/components/internal/ClickToPay/errors/TimeoutError.js.map +1 -1
  190. package/dist/es-legacy/components/internal/ClickToPay/services/ClickToPayService.js +1 -1
  191. package/dist/es-legacy/components/internal/ClickToPay/services/ClickToPayService.js.map +1 -1
  192. package/dist/es-legacy/components/internal/ClickToPay/services/sdks/SrciError.js.map +1 -1
  193. package/dist/es-legacy/components/internal/FormFields/Select/Select.js +1 -1
  194. package/dist/es-legacy/components/internal/FormFields/Select/Select.js.map +1 -1
  195. package/dist/es-legacy/components/internal/FormFields/Select/components/SelectButton.js +1 -1
  196. package/dist/es-legacy/components/internal/FormFields/Select/components/SelectButton.js.map +1 -1
  197. package/dist/es-legacy/components/internal/IFrame/Iframe.js.map +1 -1
  198. package/dist/es-legacy/components/internal/IssuerList/IssuerList.js +1 -1
  199. package/dist/es-legacy/components/internal/IssuerList/IssuerList.js.map +1 -1
  200. package/dist/es-legacy/components/internal/PersonalDetails/ReadOnlyPersonalDetails.js.map +1 -1
  201. package/dist/es-legacy/components/internal/QRLoader/QRLoader.js +1 -1
  202. package/dist/es-legacy/components/internal/QRLoader/QRLoader.js.map +1 -1
  203. package/dist/es-legacy/components/internal/SecuredFields/SFP/SecuredFieldsProvider.js.map +1 -1
  204. package/dist/es-legacy/components/internal/UIElement/UIElement.js +1 -1
  205. package/dist/es-legacy/components/internal/UIElement/UIElement.js.map +1 -1
  206. package/dist/es-legacy/components/tx-variants.js +1 -1
  207. package/dist/es-legacy/components/tx-variants.js.map +1 -1
  208. package/dist/es-legacy/core/Analytics/Analytics.js +1 -1
  209. package/dist/es-legacy/core/Analytics/Analytics.js.map +1 -1
  210. package/dist/es-legacy/core/Analytics/EventsQueue.js.map +1 -1
  211. package/dist/es-legacy/core/Analytics/analyticsPreProcessor.js +1 -1
  212. package/dist/es-legacy/core/Analytics/analyticsPreProcessor.js.map +1 -1
  213. package/dist/es-legacy/core/Analytics/constants.js +1 -1
  214. package/dist/es-legacy/core/Analytics/constants.js.map +1 -1
  215. package/dist/es-legacy/core/Analytics/utils.js.map +1 -1
  216. package/dist/es-legacy/core/Errors/AdyenCheckoutError.js.map +1 -1
  217. package/dist/es-legacy/core/Errors/SRPanel.js.map +1 -1
  218. package/dist/es-legacy/core/Errors/constants.js +1 -1
  219. package/dist/es-legacy/core/Errors/constants.js.map +1 -1
  220. package/dist/es-legacy/core/Errors/utils.js +1 -1
  221. package/dist/es-legacy/core/RiskModule/RiskModule.js.map +1 -1
  222. package/dist/es-legacy/core/RiskModule/components/DeviceFingerprint/GetDeviceFingerprint.js.map +1 -1
  223. package/dist/es-legacy/core/Services/analytics/collect-id.js +1 -1
  224. package/dist/es-legacy/core/core.js +1 -1
  225. package/package.json +12 -12
  226. package/styles/adyen.css +2 -2
  227. package/dist/es/components/Donation/components/CampaignContainer.js +0 -2
  228. package/dist/es/components/Donation/components/CampaignContainer.js.map +0 -1
  229. package/dist/es-legacy/components/Donation/components/CampaignContainer.js +0 -2
  230. package/dist/es-legacy/components/Donation/components/CampaignContainer.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ANCV.js","sources":["../../../../src/components/ANCV/ANCV.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport ANCVInput from './components/ANCVInput';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport config from './components/ANCVAwait/config';\nimport Await from '../../components/internal/Await';\nimport SRPanelProvider from '../../core/Errors/SRPanelProvider';\nimport AdyenCheckoutError from '../../core/Errors/AdyenCheckoutError';\nimport PayButton from '../internal/PayButton';\nimport { ANCVConfiguration } from './types';\nimport { sanitizeResponse, verifyPaymentDidNotFail } from '../internal/UIElement/utils';\n\nexport class ANCVElement extends UIElement<ANCVConfiguration> {\n public static type = 'ancv';\n\n /**\n * Formats the component data output\n */\n formatData() {\n return {\n paymentMethod: {\n type: ANCVElement.type,\n beneficiaryId: this.state.data?.beneficiaryId\n }\n };\n }\n\n private onOrderRequest = data => {\n if (this.props.onOrderRequest)\n return new Promise((resolve, reject) => {\n this.props.onOrderRequest(resolve, reject, data);\n });\n\n if (this.props.session) {\n return this.props.session.createOrder();\n }\n };\n\n /**\n * Check if order exists, if it does Resolve.\n * Otherwise createOrder and then Resolve.\n */\n public createOrder = (): Promise<void> => {\n this.setStatus('loading');\n\n // allow for multiple ANCV payments, follow giftcard logic and just use order if it exists\n if (this.props.order) {\n return Promise.resolve();\n }\n\n return this.onOrderRequest(this.data)\n .then((order: { orderData: string; pspReference: string }) => {\n const stateOrder = { order: { orderData: order.orderData, pspReference: order.pspReference } };\n this.setState(stateOrder);\n return Promise.resolve();\n })\n .catch(error => {\n this.setStatus(error?.message || 'error');\n if (this.props.onError) this.handleError(new AdyenCheckoutError('ERROR', error));\n });\n };\n\n public submit() {\n if (!this.isValid) {\n this.showValidation();\n return false;\n }\n\n this.createOrder()\n .then(this.makePaymentsCall)\n .then(sanitizeResponse)\n .then(verifyPaymentDidNotFail)\n .then(this.handleResponse)\n .catch(this.handleFailedResult);\n }\n\n // Reimplement payButton similar to GiftCard to allow to set onClick\n public payButton = props => {\n return <PayButton {...props} />;\n };\n\n get isValid(): boolean {\n return !!this.state.isValid;\n }\n\n get displayName(): string {\n return this.props.name;\n }\n\n render() {\n if (this.props.paymentData) {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <SRPanelProvider srPanel={this.props.modules.srPanel}>\n <Await\n ref={ref => {\n this.componentRef = ref;\n }}\n clientKey={this.props.clientKey}\n paymentData={this.props.paymentData}\n onError={this.props.onError}\n onComplete={this.onComplete}\n brandLogo={this.icon}\n type={this.constructor['type']}\n messageText={this.props.i18n.get('ancv.confirmPayment')}\n awaitText={this.props.i18n.get('await.waitForConfirmation')}\n showCountdownTimer={config.showCountdownTimer}\n throttleTime={config.THROTTLE_TIME}\n throttleInterval={config.THROTTLE_INTERVAL}\n onActionHandled={this.onActionHandled}\n />\n </SRPanelProvider>\n </CoreProvider>\n );\n }\n\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <ANCVInput\n ref={ref => {\n this.componentRef = ref;\n }}\n {...this.props}\n onSubmit={this.submit}\n onChange={this.setState}\n payButton={this.payButton}\n showPayButton={this.props.showPayButton}\n />\n </CoreProvider>\n );\n }\n}\n\nexport default ANCVElement;\n"],"names":["ANCVElement","UIElement","formatData","_this_state_data","paymentMethod","type","beneficiaryId","this","state","data","submit","isValid","showValidation","createOrder","then","makePaymentsCall","sanitizeResponse","verifyPaymentDidNotFail","handleResponse","catch","handleFailedResult","displayName","props","name","render","paymentData","h","CoreProvider","i18n","loadingContext","resources","SRPanelProvider","srPanel","modules","Await","ref","componentRef","clientKey","onError","onComplete","brandLogo","icon","constructor","messageText","get","awaitText","showCountdownTimer","config","throttleTime","THROTTLE_TIME","throttleInterval","THROTTLE_INTERVAL","onActionHandled","ANCVInput","onSubmit","onChange","setState","payButton","showPayButton","_define_property","onOrderRequest","Promise","resolve","reject","session","setStatus","order","stateOrder","orderData","pspReference","error","message","handleError","AdyenCheckoutError","PayButton"],"mappings":"4iCAYO,MAAMA,UAAoBC,EAM7BC,UAAAA,GAI2B,IAAAC,EAHvB,MAAO,CACHC,cAAe,CACXC,KAAML,EAAYK,KAClBC,cAA8B,QAAfH,EAAAI,KAAKC,MAAMC,YAAX,IAAAN,OAAA,EAAAA,EAAiBG,eAG5C,CAqCOI,MAAAA,GACH,IAAKH,KAAKI,QAEN,OADAJ,KAAKK,kBACE,EAGXL,KAAKM,cACAC,KAAKP,KAAKQ,kBACVD,KAAKE,GACLF,KAAKG,GACLH,KAAKP,KAAKW,gBACVC,MAAMZ,KAAKa,mBACpB,CAOA,WAAIT,GACA,QAASJ,KAAKC,MAAMG,OACxB,CAEA,eAAIU,GACA,OAAOd,KAAKe,MAAMC,IACtB,CAEAC,MAAAA,GACI,OAAIjB,KAAKe,MAAMG,YAEPC,EAACC,EAAAA,CAAaC,KAAMrB,KAAKe,MAAMM,KAAMC,eAAgBtB,KAAKe,MAAMO,eAAgBC,UAAWvB,KAAKuB,WAC5FJ,EAACK,EAAAA,CAAgBC,QAASzB,KAAKe,MAAMW,QAAQD,SACzCN,EAACQ,EAAAA,CACGC,IAAKA,IACD5B,KAAK6B,aAAeD,CAAAA,EAExBE,UAAW9B,KAAKe,MAAMe,UACtBZ,YAAalB,KAAKe,MAAMG,YACxBa,QAAS/B,KAAKe,MAAMgB,QACpBC,WAAYhC,KAAKgC,WACjBC,UAAWjC,KAAKkC,KAChBpC,KAAME,KAAKmC,YAAmB,KAC9BC,YAAapC,KAAKe,MAAMM,KAAKgB,IAAI,uBACjCC,UAAWtC,KAAKe,MAAMM,KAAKgB,IAAI,6BAC/BE,mBAAoBC,EAAOD,mBAC3BE,aAAcD,EAAOE,cACrBC,iBAAkBH,EAAOI,kBACzBC,gBAAiB7C,KAAK6C,oBAQtC1B,EAACC,EAAAA,CAAaC,KAAMrB,KAAKe,MAAMM,KAAMC,eAAgBtB,KAAKe,MAAMO,eAAgBC,UAAWvB,KAAKuB,WAC5FJ,EAAC2B,EAAAA,wUAAAA,CAAAA,CACGlB,IAAKA,IACD5B,KAAK6B,aAAeD,CAAAA,GAEpB5B,KAAKe,OAAK,CACdgC,SAAU/C,KAAKG,OACf6C,SAAUhD,KAAKiD,SACfC,UAAWlD,KAAKkD,UAChBC,cAAenD,KAAKe,MAAMoC,iBAI1C,+BAvGAC,EAAApD,KAAQqD,kBAAiBnD,GACjBF,KAAKe,MAAMsC,eACJ,IAAIC,SAAQ,CAACC,EAASC,KACzBxD,KAAKe,MAAMsC,eAAeE,EAASC,EAAQtD,EAAAA,IAG/CF,KAAKe,MAAM0C,QACJzD,KAAKe,MAAM0C,QAAQnD,mBAD9B,IASJ8C,OAAO9C,eAAc,KACjBN,KAAK0D,UAAU,WAGX1D,KAAKe,MAAM4C,MACJL,QAAQC,UAGZvD,KAAKqD,eAAerD,KAAKE,MAC3BK,MAAMoD,IACH,MAAMC,EAAa,CAAED,MAAO,CAAEE,UAAWF,EAAME,UAAWC,aAAcH,EAAMG,eAE9E,OADA9D,KAAKiD,SAASW,GACPN,QAAQC,SAAO,IAEzB3C,OAAMmD,IACH/D,KAAK0D,WAAUK,aAAAA,EAAAA,EAAOC,UAAW,SAC7BhE,KAAKe,MAAMgB,SAAS/B,KAAKiE,YAAY,IAAIC,EAAmB,QAASH,GAAAA,OAmBrFX,EAAApD,KAAOkD,aAAYnC,GACRI,EAACgD,EAAcpD,MAjE1BqC,EADS3D,EACKK,OAAO"}
1
+ {"version":3,"file":"ANCV.js","sources":["../../../../src/components/ANCV/ANCV.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport ANCVInput from './components/ANCVInput';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport config from './components/ANCVAwait/config';\nimport Await from '../../components/internal/Await';\nimport SRPanelProvider from '../../core/Errors/SRPanelProvider';\nimport AdyenCheckoutError from '../../core/Errors/AdyenCheckoutError';\nimport PayButton from '../internal/PayButton';\nimport { ANCVConfiguration } from './types';\nimport { sanitizeResponse, verifyPaymentDidNotFail } from '../internal/UIElement/utils';\n\nexport class ANCVElement extends UIElement<ANCVConfiguration> {\n public static type = 'ancv';\n\n /**\n * Formats the component data output\n */\n formatData() {\n return {\n paymentMethod: {\n type: ANCVElement.type,\n beneficiaryId: this.state.data?.beneficiaryId\n }\n };\n }\n\n private onOrderRequest = data => {\n if (this.props.onOrderRequest)\n return new Promise((resolve, reject) => {\n this.props.onOrderRequest(resolve, reject, data);\n });\n\n if (this.props.session) {\n return this.props.session.createOrder();\n }\n };\n\n /**\n * Check if order exists, if it does Resolve.\n * Otherwise createOrder and then Resolve.\n */\n public createOrder = (): Promise<void> => {\n this.setStatus('loading');\n\n // allow for multiple ANCV payments, follow giftcard logic and just use order if it exists\n if (this.props.order) {\n return Promise.resolve();\n }\n\n return this.onOrderRequest(this.data)\n .then((order: { orderData: string; pspReference: string }) => {\n const stateOrder = { order: { orderData: order.orderData, pspReference: order.pspReference } };\n this.setState(stateOrder);\n return Promise.resolve();\n })\n .catch(error => {\n this.setStatus(error?.message || 'error');\n if (this.props.onError) this.handleError(new AdyenCheckoutError('ERROR', error));\n });\n };\n\n public submit() {\n if (!this.isValid) {\n this.showValidation();\n return false;\n }\n\n this.createOrder()\n .then(this.makePaymentsCall)\n .then(sanitizeResponse)\n .then(verifyPaymentDidNotFail)\n .then(this.handleResponse)\n .catch(this.handleFailedResult);\n }\n\n // Reimplement payButton similar to GiftCard to allow to set onClick\n public payButton = props => {\n return <PayButton {...props} />;\n };\n\n get isValid(): boolean {\n return !!this.state.isValid;\n }\n\n get displayName(): string {\n return this.props.name;\n }\n\n render() {\n if (this.props.paymentData) {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <SRPanelProvider srPanel={this.props.modules.srPanel}>\n <Await\n ref={ref => {\n this.componentRef = ref;\n }}\n clientKey={this.props.clientKey}\n paymentData={this.props.paymentData}\n onError={this.props.onError}\n onComplete={this.onComplete}\n brandLogo={this.icon}\n type={this.constructor['type']}\n messageText={this.props.i18n.get('ancv.confirmPayment')}\n awaitText={this.props.i18n.get('await.waitForConfirmation')}\n showCountdownTimer={config.showCountdownTimer}\n throttleTime={config.THROTTLE_TIME}\n throttleInterval={config.THROTTLE_INTERVAL}\n onActionHandled={this.onActionHandled}\n />\n </SRPanelProvider>\n </CoreProvider>\n );\n }\n\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <ANCVInput\n ref={ref => {\n this.componentRef = ref;\n }}\n {...this.props}\n onSubmit={this.submit}\n onChange={this.setState}\n payButton={this.payButton}\n showPayButton={this.props.showPayButton}\n />\n </CoreProvider>\n );\n }\n}\n\nexport default ANCVElement;\n"],"names":["ANCVElement","UIElement","formatData","_this_state_data","paymentMethod","type","beneficiaryId","this","state","data","submit","isValid","showValidation","createOrder","then","makePaymentsCall","sanitizeResponse","verifyPaymentDidNotFail","handleResponse","catch","handleFailedResult","displayName","props","name","render","paymentData","h","CoreProvider","i18n","loadingContext","resources","SRPanelProvider","srPanel","modules","Await","ref","componentRef","clientKey","onError","onComplete","brandLogo","icon","constructor","messageText","get","awaitText","showCountdownTimer","config","throttleTime","THROTTLE_TIME","throttleInterval","THROTTLE_INTERVAL","onActionHandled","ANCVInput","onSubmit","onChange","setState","payButton","showPayButton","super","args","_define_property","onOrderRequest","Promise","resolve","reject","session","setStatus","order","stateOrder","orderData","pspReference","error","message","handleError","AdyenCheckoutError","PayButton"],"mappings":"4iCAYO,MAAMA,UAAoBC,EAM7BC,UAAAA,GAI2B,IAAAC,EAHvB,MAAO,CACHC,cAAe,CACXC,KAAML,EAAYK,KAClBC,cAA8B,QAAfH,EAAAI,KAAKC,MAAMC,YAAX,IAAAN,OAAA,EAAAA,EAAiBG,eAG5C,CAqCOI,MAAAA,GACH,IAAKH,KAAKI,QAEN,OADAJ,KAAKK,kBACE,EAGXL,KAAKM,cACAC,KAAKP,KAAKQ,kBACVD,KAAKE,GACLF,KAAKG,GACLH,KAAKP,KAAKW,gBACVC,MAAMZ,KAAKa,mBACpB,CAOA,WAAIT,GACA,QAASJ,KAAKC,MAAMG,OACxB,CAEA,eAAIU,GACA,OAAOd,KAAKe,MAAMC,IACtB,CAEAC,MAAAA,GACI,OAAIjB,KAAKe,MAAMG,YAEPC,EAACC,EAAAA,CAAaC,KAAMrB,KAAKe,MAAMM,KAAMC,eAAgBtB,KAAKe,MAAMO,eAAgBC,UAAWvB,KAAKuB,WAC5FJ,EAACK,EAAAA,CAAgBC,QAASzB,KAAKe,MAAMW,QAAQD,SACzCN,EAACQ,EAAAA,CACGC,IAAKA,IACD5B,KAAK6B,aAAeD,CAAAA,EAExBE,UAAW9B,KAAKe,MAAMe,UACtBZ,YAAalB,KAAKe,MAAMG,YACxBa,QAAS/B,KAAKe,MAAMgB,QACpBC,WAAYhC,KAAKgC,WACjBC,UAAWjC,KAAKkC,KAChBpC,KAAME,KAAKmC,YAAmB,KAC9BC,YAAapC,KAAKe,MAAMM,KAAKgB,IAAI,uBACjCC,UAAWtC,KAAKe,MAAMM,KAAKgB,IAAI,6BAC/BE,mBAAoBC,EAAOD,mBAC3BE,aAAcD,EAAOE,cACrBC,iBAAkBH,EAAOI,kBACzBC,gBAAiB7C,KAAK6C,oBAQtC1B,EAACC,EAAAA,CAAaC,KAAMrB,KAAKe,MAAMM,KAAMC,eAAgBtB,KAAKe,MAAMO,eAAgBC,UAAWvB,KAAKuB,WAC5FJ,EAAC2B,EAAAA,wUAAAA,CAAAA,CACGlB,IAAKA,IACD5B,KAAK6B,aAAeD,CAAAA,GAEpB5B,KAAKe,OAAK,CACdgC,SAAU/C,KAAKG,OACf6C,SAAUhD,KAAKiD,SACfC,UAAWlD,KAAKkD,UAChBC,cAAenD,KAAKe,MAAMoC,iBAI1C,mBAvGAC,SAAAC,GAAAC,EAAAtD,KAAQuD,kBAAiBrD,GACjBF,KAAKe,MAAMwC,eACJ,IAAIC,SAAQ,CAACC,EAASC,KACzB1D,KAAKe,MAAMwC,eAAeE,EAASC,EAAQxD,EAAAA,IAG/CF,KAAKe,MAAM4C,QACJ3D,KAAKe,MAAM4C,QAAQrD,mBAD9B,IASJgD,OAAOhD,eAAc,KACjBN,KAAK4D,UAAU,WAGX5D,KAAKe,MAAM8C,MACJL,QAAQC,UAGZzD,KAAKuD,eAAevD,KAAKE,MAC3BK,MAAMsD,IACH,MAAMC,EAAa,CAAED,MAAO,CAAEE,UAAWF,EAAME,UAAWC,aAAcH,EAAMG,eAE9E,OADAhE,KAAKiD,SAASa,GACPN,QAAQC,SAAO,IAEzB7C,OAAMqD,IACHjE,KAAK4D,WAAUK,aAAAA,EAAAA,EAAOC,UAAW,SAC7BlE,KAAKe,MAAMgB,SAAS/B,KAAKmE,YAAY,IAAIC,EAAmB,QAASH,GAAAA,OAmBrFX,EAAAtD,KAAOkD,aAAYnC,GACRI,EAACkD,EAActD,MAjE1BuC,EADS7D,EACKK,OAAO"}
@@ -1,2 +1,2 @@
1
- var e={type:"ach",hasHolderName:!0,holderNameRequired:!0,billingAddressRequired:!0,billingAddressAllowedCountries:["US","PR"],showContextualElement:!0,onLoad:()=>{},onConfigSuccess:()=>{},onAllValid:()=>{},onFieldValid:()=>{},onError:()=>{},onBlur:()=>{},onFocus:()=>{},onChange:()=>{},holderName:"",data:{holderName:"",billingAddress:{}},styles:{},placeholders:{}};export{e as default};
1
+ var e={type:"ach",hasHolderName:!0,holderNameRequired:!0,billingAddressRequired:!0,billingAddressAllowedCountries:["US","PR"],showContextualElement:!1,onLoad:()=>{},onConfigSuccess:()=>{},onAllValid:()=>{},onFieldValid:()=>{},onError:()=>{},onBlur:()=>{},onFocus:()=>{},onChange:()=>{},holderName:"",data:{holderName:"",billingAddress:{}},styles:{},placeholders:{}};export{e as default};
2
2
  //# sourceMappingURL=defaultProps.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"defaultProps.js","sources":["../../../../../../src/components/Ach/components/AchInput/defaultProps.ts"],"sourcesContent":["export default {\n type: 'ach',\n\n // Settings\n hasHolderName: true,\n holderNameRequired: true,\n billingAddressRequired: true,\n billingAddressAllowedCountries: ['US', 'PR'],\n showContextualElement: true,\n\n // Events\n onLoad: () => {},\n onConfigSuccess: () => {},\n onAllValid: () => {},\n onFieldValid: () => {},\n onError: () => {},\n onBlur: () => {},\n onFocus: () => {},\n onChange: () => {},\n\n // Values\n holderName: '',\n data: {\n holderName: '',\n billingAddress: {}\n },\n\n // Customization\n styles: {},\n placeholders: {}\n};\n"],"names":["defaultProps","type","hasHolderName","holderNameRequired","billingAddressRequired","billingAddressAllowedCountries","showContextualElement","onLoad","onConfigSuccess","onAllValid","onFieldValid","onError","onBlur","onFocus","onChange","holderName","data","billingAddress","styles","placeholders"],"mappings":"AAAA,IAAeA,EAAA,CACXC,KAAM,MAGNC,eAAe,EACfC,oBAAoB,EACpBC,wBAAwB,EACxBC,+BAAgC,CAAC,KAAM,MACvCC,uBAAuB,EAGvBC,OAAQ,OACRC,gBAAiB,OACjBC,WAAY,OACZC,aAAc,OACdC,QAAS,OACTC,OAAQ,OACRC,QAAS,OACTC,SAAU,OAGVC,WAAY,GACZC,KAAM,CACFD,WAAY,GACZE,eAAgB,CAAC,GAIrBC,OAAQ,CAAC,EACTC,aAAc,CAAC"}
1
+ {"version":3,"file":"defaultProps.js","sources":["../../../../../../src/components/Ach/components/AchInput/defaultProps.ts"],"sourcesContent":["export default {\n type: 'ach',\n\n // Settings\n hasHolderName: true,\n holderNameRequired: true,\n billingAddressRequired: true,\n billingAddressAllowedCountries: ['US', 'PR'],\n showContextualElement: false,\n\n // Events\n onLoad: () => {},\n onConfigSuccess: () => {},\n onAllValid: () => {},\n onFieldValid: () => {},\n onError: () => {},\n onBlur: () => {},\n onFocus: () => {},\n onChange: () => {},\n\n // Values\n holderName: '',\n data: {\n holderName: '',\n billingAddress: {}\n },\n\n // Customization\n styles: {},\n placeholders: {}\n};\n"],"names":["defaultProps","type","hasHolderName","holderNameRequired","billingAddressRequired","billingAddressAllowedCountries","showContextualElement","onLoad","onConfigSuccess","onAllValid","onFieldValid","onError","onBlur","onFocus","onChange","holderName","data","billingAddress","styles","placeholders"],"mappings":"AAAA,IAAeA,EAAA,CACXC,KAAM,MAGNC,eAAe,EACfC,oBAAoB,EACpBC,wBAAwB,EACxBC,+BAAgC,CAAC,KAAM,MACvCC,uBAAuB,EAGvBC,OAAQ,OACRC,gBAAiB,OACjBC,WAAY,OACZC,aAAc,OACdC,QAAS,OACTC,OAAQ,OACRC,QAAS,OACTC,SAAU,OAGVC,WAAY,GACZC,KAAM,CACFD,WAAY,GACZE,eAAgB,CAAC,GAIrBC,OAAQ,CAAC,EACTC,aAAc,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"BacsDD.js","sources":["../../../../src/components/BacsDD/BacsDD.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport BacsInput from './components/BacsInput';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport BacsResult from './components/BacsResult';\nimport PayButton from '../internal/PayButton';\nimport { TxVariants } from '../tx-variants';\nimport { VoucherConfiguration } from '../internal/Voucher/types';\nimport { BacsElementData } from './types';\n\nclass BacsElement extends UIElement<VoucherConfiguration> {\n public static type = TxVariants.directdebit_GB;\n\n formatData(): BacsElementData {\n return {\n paymentMethod: {\n type: BacsElement.type,\n ...(this.state.data?.holderName && { holderName: this.state.data.holderName }),\n ...(this.state.data?.bankAccountNumber && { bankAccountNumber: this.state.data.bankAccountNumber }),\n ...(this.state.data?.bankLocationId && { bankLocationId: this.state.data.bankLocationId })\n },\n ...(this.state.data?.shopperEmail && { shopperEmail: this.state.data.shopperEmail })\n };\n }\n\n get isValid(): boolean {\n return !!this.state.isValid;\n }\n\n public payButton = props => {\n return <PayButton amount={this.props.amount} onClick={this.submit} {...props} />;\n };\n\n render() {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n {this.props.url ? (\n <BacsResult\n ref={ref => {\n this.componentRef = ref;\n }}\n icon={this.icon}\n url={this.props.url}\n paymentMethodType={this.props.paymentMethodType}\n onActionHandled={this.onActionHandled}\n // originalAction={this.props.originalAction}\n />\n ) : (\n <BacsInput\n // @ts-ignore ref is internal from the Component\n ref={ref => {\n this.componentRef = ref;\n }}\n {...this.props}\n onChange={this.setState}\n payButton={this.payButton}\n onSubmit={this.submit}\n />\n )}\n </CoreProvider>\n );\n }\n}\n\nexport default BacsElement;\n"],"names":["BacsElement","UIElement","formatData","_this_state_data","_this_state_data1","_this_state_data2","_this_state_data3","_object_spread","paymentMethod","type","this","state","data","holderName","bankAccountNumber","bankLocationId","shopperEmail","isValid","render","h","CoreProvider","i18n","props","loadingContext","resources","url","BacsResult","ref","componentRef","icon","paymentMethodType","onActionHandled","BacsInput","onChange","setState","payButton","onSubmit","submit","_define_property","PayButton","amount","onClick","TxVariants","directdebit_GB"],"mappings":"yqCAUA,MAAMA,UAAoBC,EAGtBC,UAAAA,GAIgB,IAAAC,EACAC,EACAC,EAEJC,EAPR,OAAOC,EAAA,CACHC,cAAeD,EAAA,CACXE,KAAMT,EAAYS,OACd,QAAAN,EAAAO,KAAKC,MAAMC,YAAX,IAAAT,OAAA,EAAAA,EAAiBU,aAAc,CAAEA,WAAYH,KAAKC,MAAMC,KAAKC,aAC7D,QAAAT,EAAAM,KAAKC,MAAMC,YAAX,IAAAR,OAAA,EAAAA,EAAiBU,oBAAqB,CAAEA,kBAAmBJ,KAAKC,MAAMC,KAAKE,oBAC3E,QAAAT,EAAAK,KAAKC,MAAMC,YAAX,IAAAP,OAAA,EAAAA,EAAiBU,iBAAkB,CAAEA,eAAgBL,KAAKC,MAAMC,KAAKG,mBAEzE,QAAAT,EAAAI,KAAKC,MAAMC,YAAX,IAAAN,OAAA,EAAAA,EAAiBU,eAAgB,CAAEA,aAAcN,KAAKC,MAAMC,KAAKI,cAE7E,CAEA,WAAIC,GACA,QAASP,KAAKC,MAAMM,OACxB,CAMAC,MAAAA,GACI,OACIC,EAACC,EAAAA,CAAaC,KAAMX,KAAKY,MAAMD,KAAME,eAAgBb,KAAKY,MAAMC,eAAgBC,UAAWd,KAAKc,WAC3Fd,KAAKY,MAAMG,IACRN,EAACO,EAAAA,CACGC,IAAKA,IACDjB,KAAKkB,aAAeD,CAAAA,EAExBE,KAAMnB,KAAKmB,KACXJ,IAAKf,KAAKY,MAAMG,IAChBK,kBAAmBpB,KAAKY,MAAMQ,kBAC9BC,gBAAiBrB,KAAKqB,kBAI1BZ,EAACa,EAAAA,EAAAA,EAAAA,CAEGL,IAAKA,IACDjB,KAAKkB,aAAeD,CAAAA,GAEpBjB,KAAKY,OAAK,CACdW,SAAUvB,KAAKwB,SACfC,UAAWzB,KAAKyB,UAChBC,SAAU1B,KAAK2B,UAKnC,+BAhCAC,EAAA5B,KAAOyB,aAAYb,GACRH,EAACoB,EAAAA,EAAAA,CAAUC,OAAQ9B,KAAKY,MAAMkB,OAAQC,QAAS/B,KAAK2B,QAAYf,OAnB3EgB,EADEtC,EACYS,OAAOiC,EAAWC"}
1
+ {"version":3,"file":"BacsDD.js","sources":["../../../../src/components/BacsDD/BacsDD.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport BacsInput from './components/BacsInput';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport BacsResult from './components/BacsResult';\nimport PayButton from '../internal/PayButton';\nimport { TxVariants } from '../tx-variants';\nimport { VoucherConfiguration } from '../internal/Voucher/types';\nimport { BacsElementData } from './types';\n\nclass BacsElement extends UIElement<VoucherConfiguration> {\n public static type = TxVariants.directdebit_GB;\n\n formatData(): BacsElementData {\n return {\n paymentMethod: {\n type: BacsElement.type,\n ...(this.state.data?.holderName && { holderName: this.state.data.holderName }),\n ...(this.state.data?.bankAccountNumber && { bankAccountNumber: this.state.data.bankAccountNumber }),\n ...(this.state.data?.bankLocationId && { bankLocationId: this.state.data.bankLocationId })\n },\n ...(this.state.data?.shopperEmail && { shopperEmail: this.state.data.shopperEmail })\n };\n }\n\n get isValid(): boolean {\n return !!this.state.isValid;\n }\n\n public payButton = props => {\n return <PayButton amount={this.props.amount} onClick={this.submit} {...props} />;\n };\n\n render() {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n {this.props.url ? (\n <BacsResult\n ref={ref => {\n this.componentRef = ref;\n }}\n icon={this.icon}\n url={this.props.url}\n paymentMethodType={this.props.paymentMethodType}\n onActionHandled={this.onActionHandled}\n // originalAction={this.props.originalAction}\n />\n ) : (\n <BacsInput\n // @ts-ignore ref is internal from the Component\n ref={ref => {\n this.componentRef = ref;\n }}\n {...this.props}\n onChange={this.setState}\n payButton={this.payButton}\n onSubmit={this.submit}\n />\n )}\n </CoreProvider>\n );\n }\n}\n\nexport default BacsElement;\n"],"names":["BacsElement","UIElement","formatData","_this_state_data","_this_state_data1","_this_state_data2","_this_state_data3","_object_spread","paymentMethod","type","this","state","data","holderName","bankAccountNumber","bankLocationId","shopperEmail","isValid","render","h","CoreProvider","i18n","props","loadingContext","resources","url","BacsResult","ref","componentRef","icon","paymentMethodType","onActionHandled","BacsInput","onChange","setState","payButton","onSubmit","submit","super","args","_define_property","PayButton","amount","onClick","TxVariants","directdebit_GB"],"mappings":"yqCAUA,MAAMA,UAAoBC,EAGtBC,UAAAA,GAIgB,IAAAC,EACAC,EACAC,EAEJC,EAPR,OAAOC,EAAA,CACHC,cAAeD,EAAA,CACXE,KAAMT,EAAYS,OACd,QAAAN,EAAAO,KAAKC,MAAMC,YAAX,IAAAT,OAAA,EAAAA,EAAiBU,aAAc,CAAEA,WAAYH,KAAKC,MAAMC,KAAKC,aAC7D,QAAAT,EAAAM,KAAKC,MAAMC,YAAX,IAAAR,OAAA,EAAAA,EAAiBU,oBAAqB,CAAEA,kBAAmBJ,KAAKC,MAAMC,KAAKE,oBAC3E,QAAAT,EAAAK,KAAKC,MAAMC,YAAX,IAAAP,OAAA,EAAAA,EAAiBU,iBAAkB,CAAEA,eAAgBL,KAAKC,MAAMC,KAAKG,mBAEzE,QAAAT,EAAAI,KAAKC,MAAMC,YAAX,IAAAN,OAAA,EAAAA,EAAiBU,eAAgB,CAAEA,aAAcN,KAAKC,MAAMC,KAAKI,cAE7E,CAEA,WAAIC,GACA,QAASP,KAAKC,MAAMM,OACxB,CAMAC,MAAAA,GACI,OACIC,EAACC,EAAAA,CAAaC,KAAMX,KAAKY,MAAMD,KAAME,eAAgBb,KAAKY,MAAMC,eAAgBC,UAAWd,KAAKc,WAC3Fd,KAAKY,MAAMG,IACRN,EAACO,EAAAA,CACGC,IAAKA,IACDjB,KAAKkB,aAAeD,CAAAA,EAExBE,KAAMnB,KAAKmB,KACXJ,IAAKf,KAAKY,MAAMG,IAChBK,kBAAmBpB,KAAKY,MAAMQ,kBAC9BC,gBAAiBrB,KAAKqB,kBAI1BZ,EAACa,EAAAA,EAAAA,EAAAA,CAEGL,IAAKA,IACDjB,KAAKkB,aAAeD,CAAAA,GAEpBjB,KAAKY,OAAK,CACdW,SAAUvB,KAAKwB,SACfC,UAAWzB,KAAKyB,UAChBC,SAAU1B,KAAK2B,UAKnC,mBAhCAC,SAAAC,GAAAC,EAAA9B,KAAOyB,aAAYb,GACRH,EAACsB,EAAAA,EAAAA,CAAUC,OAAQhC,KAAKY,MAAMoB,OAAQC,QAASjC,KAAK2B,QAAYf,OAnB3EkB,EADExC,EACYS,OAAOmC,EAAWC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Boleto.js","sources":["../../../../src/components/Boleto/Boleto.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport BoletoInput from './components/BoletoInput';\nimport { cleanCPFCNPJ } from '../internal/SocialSecurityNumberBrazil/utils';\nimport BoletoVoucherResult from './components/BoletoVoucherResult';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport { TxVariants } from '../tx-variants';\nimport { VoucherConfiguration } from '../internal/Voucher/types';\n\nexport class BoletoElement extends UIElement<VoucherConfiguration> {\n public static type = TxVariants.boletobancario;\n\n public static txVariants = [\n TxVariants.boletobancario,\n TxVariants.boletobancario_itau,\n TxVariants.boletobancario_santander,\n TxVariants.primeiropay_boleto\n ];\n\n get isValid() {\n return !!this.state.isValid;\n }\n\n /**\n * Formats the component data output\n */\n formatData() {\n const { data = {} } = this.state;\n const { billingAddress, shopperEmail, firstName, lastName, socialSecurityNumber = '' } = data;\n\n return {\n paymentMethod: {\n type: this.type\n },\n ...(billingAddress && { billingAddress }),\n ...(shopperEmail && { shopperEmail }),\n ...(firstName && lastName && { shopperName: { firstName, lastName } }),\n ...(socialSecurityNumber && { socialSecurityNumber: cleanCPFCNPJ(socialSecurityNumber) })\n };\n }\n\n private handleRef = ref => {\n this.componentRef = ref;\n };\n\n render() {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n {this.props.reference ? (\n <BoletoVoucherResult ref={this.handleRef} icon={this.icon} {...this.props} onActionHandled={this.onActionHandled} />\n ) : (\n <BoletoInput\n setComponentRef={this.handleRef}\n {...this.props}\n onChange={this.setState}\n onSubmit={this.submit}\n payButton={this.payButton}\n />\n )}\n </CoreProvider>\n );\n }\n}\n\nexport default BoletoElement;\n"],"names":["BoletoElement","UIElement","isValid","this","state","formatData","data","billingAddress","shopperEmail","firstName","lastName","socialSecurityNumber","_object_spread","paymentMethod","type","shopperName","cleanCPFCNPJ","render","h","CoreProvider","i18n","props","loadingContext","resources","reference","BoletoVoucherResult","ref","handleRef","icon","onActionHandled","BoletoInput","setComponentRef","onChange","setState","onSubmit","submit","payButton","_define_property","componentRef","TxVariants","boletobancario","txVariants","boletobancario_itau","boletobancario_santander","primeiropay_boleto"],"mappings":"ivCASO,MAAMA,UAAsBC,EAU/B,WAAIC,GACA,QAASC,KAAKC,MAAMF,OACxB,CAKAG,UAAAA,GACI,MAAMC,KAAEA,EAAO,CAAA,GAAOH,KAAKC,OACrBG,eAAEA,EAAcC,aAAEA,EAAYC,UAAEA,EAASC,SAAEA,EAAQC,qBAAEA,EAAuB,IAAOL,EAEzF,OAAOM,EAAA,CACHC,cAAe,CACXC,KAAMX,KAAKW,OAEXP,GAAkB,CAAEA,kBACpBC,GAAgB,CAAEA,gBAClBC,GAAaC,GAAY,CAAEK,YAAa,CAAEN,YAAWC,aACrDC,GAAwB,CAAEA,qBAAsBK,EAAaL,IAEzE,CAMAM,MAAAA,GACI,OACIC,EAACC,EAAAA,CAAaC,KAAMjB,KAAKkB,MAAMD,KAAME,eAAgBnB,KAAKkB,MAAMC,eAAgBC,UAAWpB,KAAKoB,WAC3FpB,KAAKkB,MAAMG,UACRN,EAACO,EAAAA,EAAAA,EAAAA,CAAoBC,IAAKvB,KAAKwB,UAAWC,KAAMzB,KAAKyB,MAAUzB,KAAKkB,OAAK,CAAEQ,gBAAiB1B,KAAK0B,mBAEjGX,EAACY,EAAAA,EAAAA,EAAAA,CACGC,gBAAiB5B,KAAKwB,WAClBxB,KAAKkB,OAAK,CACdW,SAAU7B,KAAK8B,SACfC,SAAU/B,KAAKgC,OACfC,UAAWjC,KAAKiC,aAKpC,+BApBAC,EAAAlC,KAAQwB,aAAYD,IAChBvB,KAAKmC,aAAeZ,CAAAA,KAhCxBW,EADSrC,EACKc,OAAOyB,EAAWC,gBAEhCH,EAHSrC,EAGKyC,aAAa,CACvBF,EAAWC,eACXD,EAAWG,oBACXH,EAAWI,yBACXJ,EAAWK"}
1
+ {"version":3,"file":"Boleto.js","sources":["../../../../src/components/Boleto/Boleto.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport BoletoInput from './components/BoletoInput';\nimport { cleanCPFCNPJ } from '../internal/SocialSecurityNumberBrazil/utils';\nimport BoletoVoucherResult from './components/BoletoVoucherResult';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport { TxVariants } from '../tx-variants';\nimport { VoucherConfiguration } from '../internal/Voucher/types';\n\nexport class BoletoElement extends UIElement<VoucherConfiguration> {\n public static type = TxVariants.boletobancario;\n\n public static txVariants = [\n TxVariants.boletobancario,\n TxVariants.boletobancario_itau,\n TxVariants.boletobancario_santander,\n TxVariants.primeiropay_boleto\n ];\n\n get isValid() {\n return !!this.state.isValid;\n }\n\n /**\n * Formats the component data output\n */\n formatData() {\n const { data = {} } = this.state;\n const { billingAddress, shopperEmail, firstName, lastName, socialSecurityNumber = '' } = data;\n\n return {\n paymentMethod: {\n type: this.type\n },\n ...(billingAddress && { billingAddress }),\n ...(shopperEmail && { shopperEmail }),\n ...(firstName && lastName && { shopperName: { firstName, lastName } }),\n ...(socialSecurityNumber && { socialSecurityNumber: cleanCPFCNPJ(socialSecurityNumber) })\n };\n }\n\n private handleRef = ref => {\n this.componentRef = ref;\n };\n\n render() {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n {this.props.reference ? (\n <BoletoVoucherResult ref={this.handleRef} icon={this.icon} {...this.props} onActionHandled={this.onActionHandled} />\n ) : (\n <BoletoInput\n setComponentRef={this.handleRef}\n {...this.props}\n onChange={this.setState}\n onSubmit={this.submit}\n payButton={this.payButton}\n />\n )}\n </CoreProvider>\n );\n }\n}\n\nexport default BoletoElement;\n"],"names":["BoletoElement","UIElement","isValid","this","state","formatData","data","billingAddress","shopperEmail","firstName","lastName","socialSecurityNumber","_object_spread","paymentMethod","type","shopperName","cleanCPFCNPJ","render","h","CoreProvider","i18n","props","loadingContext","resources","reference","BoletoVoucherResult","ref","handleRef","icon","onActionHandled","BoletoInput","setComponentRef","onChange","setState","onSubmit","submit","payButton","super","args","_define_property","componentRef","TxVariants","boletobancario","txVariants","boletobancario_itau","boletobancario_santander","primeiropay_boleto"],"mappings":"ivCASO,MAAMA,UAAsBC,EAU/B,WAAIC,GACA,QAASC,KAAKC,MAAMF,OACxB,CAKAG,UAAAA,GACI,MAAMC,KAAEA,EAAO,CAAA,GAAOH,KAAKC,OACrBG,eAAEA,EAAcC,aAAEA,EAAYC,UAAEA,EAASC,SAAEA,EAAQC,qBAAEA,EAAuB,IAAOL,EAEzF,OAAOM,EAAA,CACHC,cAAe,CACXC,KAAMX,KAAKW,OAEXP,GAAkB,CAAEA,kBACpBC,GAAgB,CAAEA,gBAClBC,GAAaC,GAAY,CAAEK,YAAa,CAAEN,YAAWC,aACrDC,GAAwB,CAAEA,qBAAsBK,EAAaL,IAEzE,CAMAM,MAAAA,GACI,OACIC,EAACC,EAAAA,CAAaC,KAAMjB,KAAKkB,MAAMD,KAAME,eAAgBnB,KAAKkB,MAAMC,eAAgBC,UAAWpB,KAAKoB,WAC3FpB,KAAKkB,MAAMG,UACRN,EAACO,EAAAA,EAAAA,EAAAA,CAAoBC,IAAKvB,KAAKwB,UAAWC,KAAMzB,KAAKyB,MAAUzB,KAAKkB,OAAK,CAAEQ,gBAAiB1B,KAAK0B,mBAEjGX,EAACY,EAAAA,EAAAA,EAAAA,CACGC,gBAAiB5B,KAAKwB,WAClBxB,KAAKkB,OAAK,CACdW,SAAU7B,KAAK8B,SACfC,SAAU/B,KAAKgC,OACfC,UAAWjC,KAAKiC,aAKpC,mBApBAC,SAAAC,GAAAC,EAAApC,KAAQwB,aAAYD,IAChBvB,KAAKqC,aAAed,CAAAA,KAhCxBa,EADSvC,EACKc,OAAO2B,EAAWC,gBAEhCH,EAHSvC,EAGK2C,aAAa,CACvBF,EAAWC,eACXD,EAAWG,oBACXH,EAAWI,yBACXJ,EAAWK"}
@@ -1,2 +1,2 @@
1
- import{createElement as e}from"../../../../external/preact/dist/preact.js";import r from"../../../internal/Voucher/Voucher.js";import{useCoreContext as t}from"../../../../core/Context/CoreProvider.js";import o from"../../../../core/Context/useImage.js";import{extractCommonPropsForVoucher as n}from"../../../internal/Voucher/utils.js";function c(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){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{},o=Object.keys(t);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(t).filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})))),o.forEach((function(r){c(e,r,t[r])}))}return e}function i(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}const p=c=>{const{i18n:p,loadingContext:l}=t(),u=o(),{reference:s,expiresAt:b,downloadUrl:d}=c,f=`${l}barcode.shtml?data=${s.replace(/[^\d]/g,"").replace(/^(\d{4})(\d{5})\d{1}(\d{10})\d{1}(\d{10})\d{1}(\d{15})$/,"$1$5$2$3$4")}&barcodeType=BT_Int2of5A&fileType=png`;return e(r,i(a({},n({props:i(a({},c),{paymentMethodType:"boletobancario"}),i18n:p,introKey:"voucher.introduction",getImage:u()})),{barcode:f,voucherDetails:[{label:p.get("voucher.expirationDate"),value:p.date(b)}],downloadUrl:d,copyBtn:!0}))};export{p as default};
1
+ import{createElement as e}from"../../../../external/preact/dist/preact.js";import t from"../../../internal/Voucher/Voucher.js";import{useCoreContext as r}from"../../../../core/Context/CoreProvider.js";import o from"../../../../core/Context/useImage.js";import{extractCommonPropsForVoucher as n}from"../../../internal/Voucher/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 i(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){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}const p=c=>{const{i18n:p,loadingContext:l}=r(),u=o(),{reference:s,expiresAt:b,downloadUrl:d}=c,f=`${l}utility/v1/barcode.png?data=${s.replace(/[^\d]/g,"").replace(/^(\d{4})(\d{5})\d{1}(\d{10})\d{1}(\d{10})\d{1}(\d{15})$/,"$1$5$2$3$4")}&type=itf&clientKey=${c.clientKey}`;return e(t,a(i({},n({props:a(i({},c),{paymentMethodType:"boletobancario"}),i18n:p,introKey:"voucher.introduction",getImage:u()})),{barcode:f,voucherDetails:[{label:p.get("voucher.expirationDate"),value:p.date(b)}],downloadUrl:d,copyBtn:!0}))};export{p as default};
2
2
  //# sourceMappingURL=BoletoVoucherResult.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BoletoVoucherResult.js","sources":["../../../../../../src/components/Boleto/components/BoletoVoucherResult/BoletoVoucherResult.tsx"],"sourcesContent":["import { h } from 'preact';\nimport Voucher from '../../../internal/Voucher';\n\nimport { useCoreContext } from '../../../../core/Context/CoreProvider';\nimport './BoletoVoucherResult.scss';\nimport { VoucherDetail } from '../../../internal/Voucher/types';\nimport useImage from '../../../../core/Context/useImage';\nimport { extractCommonPropsForVoucher } from '../../../internal/Voucher/utils';\n\nconst BoletoVoucherResult = props => {\n const { i18n, loadingContext } = useCoreContext();\n const getImage = useImage();\n const { reference, expiresAt, downloadUrl } = props;\n const barcodeReference = reference.replace(/[^\\d]/g, '').replace(/^(\\d{4})(\\d{5})\\d{1}(\\d{10})\\d{1}(\\d{10})\\d{1}(\\d{15})$/, '$1$5$2$3$4');\n const barcodeUrl = `${loadingContext}barcode.shtml?data=${barcodeReference}&barcodeType=BT_Int2of5A&fileType=png`;\n\n const paymentMethodType = 'boletobancario'; // overwrite the bank specific type of boleto, e.g. 'boletobancario_santander', to a more generic form\n\n return (\n <Voucher\n {...extractCommonPropsForVoucher({\n props: { ...props, paymentMethodType },\n i18n,\n introKey: 'voucher.introduction',\n getImage: getImage()\n })}\n barcode={barcodeUrl}\n voucherDetails={[{ label: i18n.get('voucher.expirationDate'), value: i18n.date(expiresAt) }] as VoucherDetail[]}\n downloadUrl={downloadUrl}\n copyBtn\n />\n );\n};\n\nexport default BoletoVoucherResult;\n"],"names":["BoletoVoucherResult","props","i18n","loadingContext","useCoreContext","getImage","useImage","reference","expiresAt","downloadUrl","barcodeUrl","replace","h","Voucher","extractCommonPropsForVoucher","_object_spread_props","paymentMethodType","introKey","barcode","voucherDetails","label","get","value","date","copyBtn"],"mappings":"8nCASA,MAAMA,EAAsBC,IACxB,MAAMC,KAAEA,EAAIC,eAAEA,GAAmBC,IAC3BC,EAAWC,KACXC,UAAEA,EAASC,UAAEA,EAASC,YAAEA,GAAgBR,EAExCS,EAAa,GAAGP,uBADGI,EAAUI,QAAQ,SAAU,IAAIA,QAAQ,0DAA2D,qDAK5H,OACIC,EAACC,SACOC,EAA6B,CAC7Bb,MAAOc,EAAKd,EAAAA,CAAAA,EAAAA,GAAAA,CAAOe,kBALL,mBAMdd,OACAe,SAAU,uBACVZ,SAAUA,OACd,CACAa,QAASR,EACTS,eAAgB,CAAC,CAAEC,MAAOlB,EAAKmB,IAAI,0BAA2BC,MAAOpB,EAAKqB,KAAKf,KAC/EC,YAAaA,EACbe,SAAAA"}
1
+ {"version":3,"file":"BoletoVoucherResult.js","sources":["../../../../../../src/components/Boleto/components/BoletoVoucherResult/BoletoVoucherResult.tsx"],"sourcesContent":["import { h } from 'preact';\nimport Voucher from '../../../internal/Voucher';\n\nimport { useCoreContext } from '../../../../core/Context/CoreProvider';\nimport './BoletoVoucherResult.scss';\nimport { VoucherDetail } from '../../../internal/Voucher/types';\nimport useImage from '../../../../core/Context/useImage';\nimport { extractCommonPropsForVoucher } from '../../../internal/Voucher/utils';\n\nconst BoletoVoucherResult = props => {\n const { i18n, loadingContext } = useCoreContext();\n const getImage = useImage();\n const { reference, expiresAt, downloadUrl } = props;\n const barcodeReference = reference.replace(/[^\\d]/g, '').replace(/^(\\d{4})(\\d{5})\\d{1}(\\d{10})\\d{1}(\\d{10})\\d{1}(\\d{15})$/, '$1$5$2$3$4');\n const barcodeUrl = `${loadingContext}utility/v1/barcode.png?data=${barcodeReference}&type=itf&clientKey=${props.clientKey}`;\n\n const paymentMethodType = 'boletobancario'; // overwrite the bank specific type of boleto, e.g. 'boletobancario_santander', to a more generic form\n\n return (\n <Voucher\n {...extractCommonPropsForVoucher({\n props: { ...props, paymentMethodType },\n i18n,\n introKey: 'voucher.introduction',\n getImage: getImage()\n })}\n barcode={barcodeUrl}\n voucherDetails={[{ label: i18n.get('voucher.expirationDate'), value: i18n.date(expiresAt) }] as VoucherDetail[]}\n downloadUrl={downloadUrl}\n copyBtn\n />\n );\n};\n\nexport default BoletoVoucherResult;\n"],"names":["BoletoVoucherResult","props","i18n","loadingContext","useCoreContext","getImage","useImage","reference","expiresAt","downloadUrl","barcodeUrl","replace","clientKey","h","Voucher","extractCommonPropsForVoucher","_object_spread_props","paymentMethodType","introKey","barcode","voucherDetails","label","get","value","date","copyBtn"],"mappings":"8nCASA,MAAMA,EAAsBC,IACxB,MAAMC,KAAEA,EAAIC,eAAEA,GAAmBC,IAC3BC,EAAWC,KACXC,UAAEA,EAASC,UAAEA,EAASC,YAAEA,GAAgBR,EAExCS,EAAa,GAAGP,gCADGI,EAAUI,QAAQ,SAAU,IAAIA,QAAQ,0DAA2D,oCAClBV,EAAMW,YAIhH,OACIC,EAACC,SACOC,EAA6B,CAC7Bd,MAAOe,EAAKf,EAAAA,CAAAA,EAAAA,GAAAA,CAAOgB,kBALL,mBAMdf,OACAgB,SAAU,uBACVb,SAAUA,OACd,CACAc,QAAST,EACTU,eAAgB,CAAC,CAAEC,MAAOnB,EAAKoB,IAAI,0BAA2BC,MAAOrB,EAAKsB,KAAKhB,KAC/EC,YAAaA,EACbgB,SAAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"Card.js","sources":["../../../../src/components/Card/Card.tsx"],"sourcesContent":["import { h } from 'preact';\nimport CardInput from './components/CardInput';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport collectBrowserInfo from '../../utils/browserInfo';\nimport { BinLookupResponse, CardElementData, CardConfiguration } from './types';\nimport triggerBinLookUp from '../internal/SecuredFields/binLookup/triggerBinLookUp';\nimport { CbObjOnBinLookup, CbObjOnConfigSuccess, CbObjOnFocus } from '../internal/SecuredFields/lib/types';\nimport { fieldTypeToSnakeCase } from '../internal/SecuredFields/utils';\nimport { reject } from '../../utils/commonUtils';\nimport { hasValidInstallmentsObject } from './components/CardInput/utils';\nimport createClickToPayService from '../internal/ClickToPay/services/create-clicktopay-service';\nimport { ClickToPayCheckoutPayload, IClickToPayService } from '../internal/ClickToPay/services/types';\nimport ClickToPayWrapper from './components/ClickToPayWrapper';\nimport { ComponentFocusObject } from '../../types/global-types';\nimport SRPanelProvider from '../../core/Errors/SRPanelProvider';\nimport { TxVariants } from '../tx-variants';\nimport type { PayButtonFunctionProps, UIElementStatus } from '../internal/UIElement/types';\nimport UIElement from '../internal/UIElement';\nimport PayButton from '../internal/PayButton';\nimport type { ICore } from '../../core/types';\nimport {\n ANALYTICS_FOCUS_STR,\n ANALYTICS_CONFIGURED_STR,\n ANALYTICS_UNFOCUS_STR,\n ANALYTICS_VALIDATION_ERROR_STR,\n ANALYTICS_RENDERED_STR\n} from '../../core/Analytics/constants';\nimport { ALL_SECURED_FIELDS } from '../internal/SecuredFields/lib/constants';\nimport { FieldErrorAnalyticsObject, SendAnalyticsObject } from '../../core/Analytics/types';\nimport { hasOwnProperty } from '../../utils/hasOwnProperty';\nimport AdyenCheckoutError, { IMPLEMENTATION_ERROR } from '../../core/Errors/AdyenCheckoutError';\nimport { getErrorMessageFromCode } from '../../core/Errors/utils';\nimport { SF_ErrorCodes } from '../../core/Errors/constants';\nimport CardInputDefaultProps from './components/CardInput/defaultProps';\n\nexport class CardElement extends UIElement<CardConfiguration> {\n public static type = TxVariants.scheme;\n\n private readonly clickToPayService: IClickToPayService | null;\n\n /**\n * Reference to the 'ClickToPayComponent'\n */\n private clickToPayRef = null;\n\n constructor(checkout: ICore, props?: CardConfiguration) {\n super(checkout, props);\n\n if (props && !props._disableClickToPay) {\n this.clickToPayService = createClickToPayService(this.props.configuration, this.props.clickToPayConfiguration, this.props.environment);\n void this.clickToPayService?.initialize();\n }\n }\n\n protected static defaultProps = {\n showFormInstruction: true,\n _disableClickToPay: false,\n doBinLookup: true,\n // Merge most of CardInput's defaultProps\n ...reject(['type', 'setComponentRef']).from(CardInputDefaultProps)\n };\n\n public setStatus(status: UIElementStatus, props?): this {\n if (this.componentRef?.setStatus) {\n this.componentRef.setStatus(status, props);\n }\n if (this.clickToPayRef?.setStatus) {\n this.clickToPayRef.setStatus(status, props);\n }\n return this;\n }\n\n private setClickToPayRef = ref => {\n this.clickToPayRef = ref;\n };\n\n formatProps(props: CardConfiguration): CardConfiguration {\n // The value from a session should be used, before falling back to the merchant configuration\n const enableStoreDetails = props.session?.configuration?.enableStoreDetails ?? props.enableStoreDetails;\n\n const isZeroAuth = props.amount?.value === 0;\n const showStoreDetailsCheckbox = isZeroAuth ? false : enableStoreDetails;\n\n const storedCardID = props.storedPaymentMethodId || props.id; // check if we've been passed a (checkout) processed storedCard or one that merchant has pulled from the PMs response\n const isEcommerceStoredCard = storedCardID && props?.supportedShopperInteractions?.includes('Ecommerce'); // If we have a storedCard does it support Ecommerce (it might not if the merchant has pulled it from the PMs response)\n\n // If we have a storedPM but it doesn't support Ecommerce - we can't make a storedCard component from it\n if (storedCardID && !isEcommerceStoredCard) {\n // TODO - Decide if an error is too severe? Would a console.warning suffice?\n throw new AdyenCheckoutError(\n IMPLEMENTATION_ERROR,\n 'You are trying to create a storedCard from a stored PM that does not support Ecommerce interactions'\n );\n }\n\n return {\n ...props,\n // Mismatch between hasHolderName & holderNameRequired which can mean card can never be valid\n holderNameRequired: !props.hasHolderName ? false : props.holderNameRequired,\n // False for *stored* BCMC cards & if merchant explicitly wants to hide the CVC field\n hasCVC: !((props.brand && props.brand === 'bcmc') || props.hideCVC),\n // billingAddressRequired only available for non-stored cards\n billingAddressRequired: props.storedPaymentMethodId ? false : props.billingAddressRequired,\n // edge case where merchant has defined both an onAddressLookup callback AND set billingAddressMode: 'partial' - which leads to some strange behaviour in the address UI\n billingAddressMode: props.onAddressLookup ? CardInputDefaultProps.billingAddressMode : props.billingAddressMode,\n /** props.brand will be specified in the case of a StoredCard or a Bancontact component, for a regular Card we default it to 'card' */\n brand: props.brand ?? TxVariants.card,\n countryCode: props.countryCode ? props.countryCode.toLowerCase() : null,\n // Required for transition period (until configuration object becomes the norm)\n // - if merchant has defined value directly in props, use this instead\n configuration: {\n ...props.configuration,\n socialSecurityNumberMode: props.configuration?.socialSecurityNumberMode ?? 'auto'\n },\n brandsConfiguration: props.brandsConfiguration || props.configuration?.brandsConfiguration || {},\n icon: props.icon || props.configuration?.icon,\n // installmentOptions of a session should be used before falling back to the merchant configuration\n installmentOptions: props.session?.configuration?.installmentOptions || props.installmentOptions,\n enableStoreDetails,\n showStoreDetailsCheckbox,\n /**\n * Click to Pay configuration\n * - If email is set explicitly in the configuration, then it can override the one used in the session creation\n */\n clickToPayConfiguration: {\n ...props.clickToPayConfiguration,\n disableOtpAutoFocus: props.clickToPayConfiguration?.disableOtpAutoFocus || false,\n shopperEmail: props.clickToPayConfiguration?.shopperEmail || this.core.options?.session?.shopperEmail,\n telephoneNumber: props.clickToPayConfiguration?.telephoneNumber || this.core.options?.session?.telephoneNumber,\n locale: props.clickToPayConfiguration?.locale || props.i18n?.locale?.replace('-', '_')\n },\n ...(storedCardID && { storedPaymentMethodId: storedCardID })\n };\n }\n\n /**\n * Formats the component data output\n */\n formatData(): CardElementData {\n /**\n * this.state.selectedBrandValue will be set when:\n * - /binLookup detects a single brand,\n * - when /binLookup detects a dual-branded card and the shopper makes a brand selection\n * - or, in the case of a storedCard\n */\n const cardBrand = this.state.selectedBrandValue;\n\n return {\n paymentMethod: {\n type: CardElement.type,\n ...this.state.data,\n ...(this.props.storedPaymentMethodId && {\n storedPaymentMethodId: this.props.storedPaymentMethodId,\n holderName: this.props.holderName ?? ''\n }),\n ...(cardBrand && { brand: cardBrand }),\n ...(this.props.fundingSource && { fundingSource: this.props.fundingSource })\n },\n ...(this.state.billingAddress && { billingAddress: this.state.billingAddress }),\n ...(this.state.socialSecurityNumber && { socialSecurityNumber: this.state.socialSecurityNumber }),\n ...this.storePaymentMethodPayload,\n ...(hasValidInstallmentsObject(this.state.installments) && { installments: this.state.installments }),\n browserInfo: this.browserInfo,\n origin: !!window && window.location.origin\n };\n }\n\n updateStyles(stylesObj) {\n if (this.componentRef?.updateStyles) this.componentRef.updateStyles(stylesObj);\n return this;\n }\n\n setFocusOn(fieldName) {\n if (this.componentRef?.setFocusOn) this.componentRef.setFocusOn(fieldName);\n return this;\n }\n\n public onBrand = event => {\n this.props.onBrand?.(event);\n };\n\n processBinLookupResponse(binLookupResponse: BinLookupResponse, isReset = false) {\n if (this.componentRef?.processBinLookupResponse) this.componentRef.processBinLookupResponse(binLookupResponse, isReset);\n return this;\n }\n\n handleUnsupportedCard(errObj) {\n if (this.componentRef?.handleUnsupportedCard) this.componentRef.handleUnsupportedCard(errObj);\n return this;\n }\n\n private handleClickToPaySubmit = (payload: ClickToPayCheckoutPayload) => {\n this.setState({ data: { ...payload }, valid: {}, errors: {}, isValid: true });\n this.submit();\n };\n\n onBinLookup(obj: CbObjOnBinLookup) {\n // Handler for regular card comp doesn't need this 'raw' data or to know about 'resets'\n if (!obj.isReset) {\n const nuObj = reject('supportedBrandsRaw').from(obj);\n this.props.onBinLookup?.(nuObj);\n }\n }\n\n protected submitAnalytics(analyticsObj: SendAnalyticsObject) {\n const { type } = analyticsObj;\n\n if (type === ANALYTICS_RENDERED_STR || type === ANALYTICS_CONFIGURED_STR) {\n // Check if it's a storedCard\n if (this.constructor['type'] === 'scheme') {\n if (hasOwnProperty(this.props, 'supportedShopperInteractions')) {\n analyticsObj.isStoredPaymentMethod = true;\n analyticsObj.brand = this.props.brand;\n }\n }\n }\n\n super.submitAnalytics(analyticsObj, this.props);\n }\n\n private onConfigSuccess = (obj: CbObjOnConfigSuccess) => {\n this.submitAnalytics({\n type: ANALYTICS_CONFIGURED_STR\n });\n\n this.props.onConfigSuccess?.(obj);\n };\n\n private onFocus = (obj: ComponentFocusObject) => {\n this.submitAnalytics({\n type: ANALYTICS_FOCUS_STR,\n target: fieldTypeToSnakeCase(obj.fieldType)\n });\n\n // Call merchant defined callback\n if (ALL_SECURED_FIELDS.includes(obj.fieldType)) {\n this.props.onFocus?.(obj.event as CbObjOnFocus);\n } else {\n this.props.onFocus?.(obj);\n }\n };\n\n private onBlur = (obj: ComponentFocusObject) => {\n this.submitAnalytics({\n type: ANALYTICS_UNFOCUS_STR,\n target: fieldTypeToSnakeCase(obj.fieldType)\n });\n\n // Call merchant defined callback\n if (ALL_SECURED_FIELDS.includes(obj.fieldType)) {\n this.props.onBlur?.(obj.event as CbObjOnFocus);\n } else {\n this.props.onBlur?.(obj);\n }\n };\n\n private onValidationErrorAnalytics = (obj: FieldErrorAnalyticsObject) => {\n this.submitAnalytics({\n type: ANALYTICS_VALIDATION_ERROR_STR,\n target: fieldTypeToSnakeCase(obj.fieldType),\n validationErrorCode: obj.errorCode,\n validationErrorMessage: getErrorMessageFromCode(obj.errorCode, SF_ErrorCodes)\n });\n };\n\n public onBinValue = triggerBinLookUp(this);\n\n get storePaymentMethodPayload() {\n const isStoredCard = this.props.storedPaymentMethodId?.length > 0;\n if (isStoredCard) {\n return {};\n }\n\n /**\n * For regular card, zero auth payments, we store the payment method, *if* the configuration says we should:\n * - For sessions, this means if the session has been created with storePaymentMethodMode: 'askForConsent'\n * - For the advanced flow, this means if the merchant has still set enableStoreDetails: true\n *\n * What we are doing is.. if for a normal payment we would show the \"Save for my next payment\" checkbox,\n * for a zero-auth payment we effectively click the checkbox on behalf of the shopper.\n */\n const isZeroAuth = this.props.amount?.value === 0;\n if (isZeroAuth) {\n return this.props.enableStoreDetails ? { storePaymentMethod: true } : {};\n }\n\n // For regular card, non-zero auth payments, we store the payment method based on the checkbox value.\n const includeStorePaymentMethod = this.props.showStoreDetailsCheckbox && typeof this.state.storePaymentMethod !== 'undefined';\n return includeStorePaymentMethod ? { storePaymentMethod: Boolean(this.state.storePaymentMethod) } : {};\n }\n\n get isValid() {\n return !!this.state.isValid;\n }\n\n get icon() {\n return this.props.icon ?? this.resources.getImage()(this.props.brand);\n }\n\n get brands(): { icon: any; name: string }[] {\n const { brands, brandsConfiguration } = this.props;\n if (brands) {\n return brands.map(brand => {\n const brandIcon = brandsConfiguration[brand]?.icon ?? this.props.modules.resources.getImage()(brand);\n return { icon: brandIcon, name: brand };\n });\n }\n\n return [];\n }\n\n get displayName(): string {\n if (this.props.storedPaymentMethodId) {\n return `•••• ${this.props.lastFour}`;\n }\n\n return this.props.name || CardElement.type;\n }\n\n get accessibleName(): string {\n // Use display name, unless it's a stored payment method, there inform user\n return (\n (this.props.name || CardElement.type) +\n (this.props.storedPaymentMethodId\n ? ' ' + this.props.i18n.get('creditCard.storedCard.description.ariaLabel').replace('%@', this.props.lastFour)\n : '')\n );\n }\n\n get browserInfo() {\n return collectBrowserInfo();\n }\n\n protected override payButton = (props: PayButtonFunctionProps) => {\n const isZeroAuth = this.props.amount?.value === 0;\n const isStoredCard = this.props.storedPaymentMethodId?.length > 0;\n return (\n <PayButton\n {...props}\n amount={this.props.amount}\n secondaryAmount={this.props.secondaryAmount}\n label={isZeroAuth && !isStoredCard ? this.props.i18n.get('payButton.saveDetails') : ''}\n onClick={this.submit}\n />\n );\n };\n\n private renderCardInput(isCardPrimaryInput = true): h.JSX.Element {\n return (\n <CardInput\n setComponentRef={this.setComponentRef}\n {...this.props}\n {...this.state}\n onChange={this.setState}\n onSubmit={this.submit}\n handleKeyPress={this.handleKeyPress}\n payButton={this.payButton}\n onBrand={this.onBrand}\n onBinValue={this.onBinValue}\n brand={this.props.brand}\n brandsIcons={this.brands}\n isPayButtonPrimaryVariant={isCardPrimaryInput}\n resources={this.resources}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n onValidationErrorAnalytics={this.onValidationErrorAnalytics}\n onConfigSuccess={this.onConfigSuccess}\n />\n );\n }\n\n render() {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <SRPanelProvider srPanel={this.props.modules.srPanel}>\n <ClickToPayWrapper\n amount={this.props.amount}\n configuration={this.props.clickToPayConfiguration}\n clickToPayService={this.clickToPayService}\n isStandaloneComponent={false}\n setClickToPayRef={this.setClickToPayRef}\n onSetStatus={this.setElementStatus}\n onSubmit={this.handleClickToPaySubmit}\n onError={this.handleError}\n >\n {isCardPrimaryInput => this.renderCardInput(isCardPrimaryInput)}\n </ClickToPayWrapper>\n </SRPanelProvider>\n </CoreProvider>\n );\n }\n}\n\nexport default CardElement;\n"],"names":["CardElement","UIElement","setStatus","status","props","_this_componentRef","_this_clickToPayRef","this","componentRef","clickToPayRef","formatProps","_this_core_options_session","_this_core_options","_this_core_options_session1","_this_core_options1","enableStoreDetails","session","configuration","showStoreDetailsCheckbox","amount","value","storedCardID","storedPaymentMethodId","id","isEcommerceStoredCard","supportedShopperInteractions","includes","AdyenCheckoutError","IMPLEMENTATION_ERROR","_object_spread","holderNameRequired","hasHolderName","hasCVC","brand","hideCVC","billingAddressRequired","billingAddressMode","onAddressLookup","CardInputDefaultProps","TxVariants","card","countryCode","toLowerCase","_object_spread_props","socialSecurityNumberMode","brandsConfiguration","icon","installmentOptions","clickToPayConfiguration","disableOtpAutoFocus","shopperEmail","core","options","telephoneNumber","locale","i18n","replace","formatData","cardBrand","state","selectedBrandValue","_this_props_holderName","paymentMethod","type","data","holderName","fundingSource","billingAddress","socialSecurityNumber","storePaymentMethodPayload","hasValidInstallmentsObject","installments","browserInfo","origin","window","location","updateStyles","stylesObj","setFocusOn","fieldName","processBinLookupResponse","binLookupResponse","isReset","handleUnsupportedCard","errObj","onBinLookup","obj","_this_props_onBinLookup","_this_props","nuObj","reject","from","call","submitAnalytics","analyticsObj","ANALYTICS_RENDERED_STR","ANALYTICS_CONFIGURED_STR","constructor","hasOwnProperty","isStoredPaymentMethod","super","_this_props_storedPaymentMethodId","_this_props_amount","length","storePaymentMethod","Boolean","isValid","_this_props_icon","resources","getImage","brands","map","modules","name","displayName","lastFour","accessibleName","get","collectBrowserInfo","renderCardInput","isCardPrimaryInput","h","CardInput","setComponentRef","onChange","setState","onSubmit","submit","handleKeyPress","payButton","onBrand","onBinValue","brandsIcons","isPayButtonPrimaryVariant","onFocus","onBlur","onValidationErrorAnalytics","onConfigSuccess","render","CoreProvider","loadingContext","SRPanelProvider","srPanel","ClickToPayWrapper","clickToPayService","isStandaloneComponent","setClickToPayRef","onSetStatus","setElementStatus","handleClickToPaySubmit","onError","handleError","checkout","_this_clickToPayService","_define_property","ref","event","_this_props_onBrand","payload","valid","errors","_this_props_onConfigSuccess","_this_props_onFocus","_this_props_onFocus1","_this_props1","ANALYTICS_FOCUS_STR","target","fieldTypeToSnakeCase","fieldType","ALL_SECURED_FIELDS","_this_props_onBlur","_this_props_onBlur1","ANALYTICS_UNFOCUS_STR","ANALYTICS_VALIDATION_ERROR_STR","validationErrorCode","errorCode","validationErrorMessage","getErrorMessageFromCode","SF_ErrorCodes","triggerBinLookUp","isZeroAuth","isStoredCard","PayButton","secondaryAmount","label","onClick","_disableClickToPay","createClickToPayService","environment","initialize","scheme","defaultProps","showFormInstruction","doBinLookup"],"mappings":"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"}
1
+ {"version":3,"file":"Card.js","sources":["../../../../src/components/Card/Card.tsx"],"sourcesContent":["import { h } from 'preact';\nimport CardInput from './components/CardInput';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport collectBrowserInfo from '../../utils/browserInfo';\nimport { BinLookupResponse, CardElementData, CardConfiguration } from './types';\nimport triggerBinLookUp from '../internal/SecuredFields/binLookup/triggerBinLookUp';\nimport { CbObjOnBinLookup, CbObjOnConfigSuccess, CbObjOnFocus } from '../internal/SecuredFields/lib/types';\nimport { fieldTypeToSnakeCase } from '../internal/SecuredFields/utils';\nimport { reject } from '../../utils/commonUtils';\nimport { hasValidInstallmentsObject } from './components/CardInput/utils';\nimport createClickToPayService from '../internal/ClickToPay/services/create-clicktopay-service';\nimport { ClickToPayCheckoutPayload, IClickToPayService } from '../internal/ClickToPay/services/types';\nimport ClickToPayWrapper from './components/ClickToPayWrapper';\nimport { ComponentFocusObject } from '../../types/global-types';\nimport SRPanelProvider from '../../core/Errors/SRPanelProvider';\nimport { TxVariants } from '../tx-variants';\nimport type { PayButtonFunctionProps, UIElementStatus } from '../internal/UIElement/types';\nimport UIElement from '../internal/UIElement';\nimport PayButton from '../internal/PayButton';\nimport type { ICore } from '../../core/types';\nimport {\n ANALYTICS_FOCUS_STR,\n ANALYTICS_CONFIGURED_STR,\n ANALYTICS_UNFOCUS_STR,\n ANALYTICS_VALIDATION_ERROR_STR,\n ANALYTICS_RENDERED_STR\n} from '../../core/Analytics/constants';\nimport { ALL_SECURED_FIELDS } from '../internal/SecuredFields/lib/constants';\nimport { FieldErrorAnalyticsObject, SendAnalyticsObject } from '../../core/Analytics/types';\nimport { hasOwnProperty } from '../../utils/hasOwnProperty';\nimport AdyenCheckoutError, { IMPLEMENTATION_ERROR } from '../../core/Errors/AdyenCheckoutError';\nimport { getErrorMessageFromCode } from '../../core/Errors/utils';\nimport { SF_ErrorCodes } from '../../core/Errors/constants';\nimport CardInputDefaultProps from './components/CardInput/defaultProps';\n\nexport class CardElement extends UIElement<CardConfiguration> {\n public static type = TxVariants.scheme;\n\n private readonly clickToPayService: IClickToPayService | null;\n\n /**\n * Reference to the 'ClickToPayComponent'\n */\n private clickToPayRef = null;\n\n constructor(checkout: ICore, props?: CardConfiguration) {\n super(checkout, props);\n\n if (props && !props._disableClickToPay) {\n this.clickToPayService = createClickToPayService(this.props.configuration, this.props.clickToPayConfiguration, this.props.environment);\n void this.clickToPayService?.initialize();\n }\n }\n\n protected static defaultProps = {\n showFormInstruction: true,\n _disableClickToPay: false,\n doBinLookup: true,\n // Merge most of CardInput's defaultProps\n ...reject(['type', 'setComponentRef']).from(CardInputDefaultProps)\n };\n\n public setStatus(status: UIElementStatus, props?): this {\n if (this.componentRef?.setStatus) {\n this.componentRef.setStatus(status, props);\n }\n if (this.clickToPayRef?.setStatus) {\n this.clickToPayRef.setStatus(status, props);\n }\n return this;\n }\n\n private setClickToPayRef = ref => {\n this.clickToPayRef = ref;\n };\n\n formatProps(props: CardConfiguration): CardConfiguration {\n // The value from a session should be used, before falling back to the merchant configuration\n const enableStoreDetails = props.session?.configuration?.enableStoreDetails ?? props.enableStoreDetails;\n\n const isZeroAuth = props.amount?.value === 0;\n const showStoreDetailsCheckbox = isZeroAuth ? false : enableStoreDetails;\n\n const storedCardID = props.storedPaymentMethodId || props.id; // check if we've been passed a (checkout) processed storedCard or one that merchant has pulled from the PMs response\n const isEcommerceStoredCard = storedCardID && props?.supportedShopperInteractions?.includes('Ecommerce'); // If we have a storedCard does it support Ecommerce (it might not if the merchant has pulled it from the PMs response)\n\n // If we have a storedPM but it doesn't support Ecommerce - we can't make a storedCard component from it\n if (storedCardID && !isEcommerceStoredCard) {\n // TODO - Decide if an error is too severe? Would a console.warning suffice?\n throw new AdyenCheckoutError(\n IMPLEMENTATION_ERROR,\n 'You are trying to create a storedCard from a stored PM that does not support Ecommerce interactions'\n );\n }\n\n return {\n ...props,\n // Mismatch between hasHolderName & holderNameRequired which can mean card can never be valid\n holderNameRequired: !props.hasHolderName ? false : props.holderNameRequired,\n // False for *stored* BCMC cards & if merchant explicitly wants to hide the CVC field\n hasCVC: !((props.brand && props.brand === 'bcmc') || props.hideCVC),\n // billingAddressRequired only available for non-stored cards\n billingAddressRequired: props.storedPaymentMethodId ? false : props.billingAddressRequired,\n // edge case where merchant has defined both an onAddressLookup callback AND set billingAddressMode: 'partial' - which leads to some strange behaviour in the address UI\n billingAddressMode: props.onAddressLookup ? CardInputDefaultProps.billingAddressMode : props.billingAddressMode,\n /** props.brand will be specified in the case of a StoredCard or a Bancontact component, for a regular Card we default it to 'card' */\n brand: props.brand ?? TxVariants.card,\n countryCode: props.countryCode ? props.countryCode.toLowerCase() : null,\n // Required for transition period (until configuration object becomes the norm)\n // - if merchant has defined value directly in props, use this instead\n configuration: {\n ...props.configuration,\n socialSecurityNumberMode: props.configuration?.socialSecurityNumberMode ?? 'auto'\n },\n brandsConfiguration: props.brandsConfiguration || props.configuration?.brandsConfiguration || {},\n icon: props.icon || props.configuration?.icon,\n // installmentOptions of a session should be used before falling back to the merchant configuration\n installmentOptions: props.session?.configuration?.installmentOptions || props.installmentOptions,\n enableStoreDetails,\n showStoreDetailsCheckbox,\n /**\n * Click to Pay configuration\n * - If email is set explicitly in the configuration, then it can override the one used in the session creation\n */\n clickToPayConfiguration: {\n ...props.clickToPayConfiguration,\n disableOtpAutoFocus: props.clickToPayConfiguration?.disableOtpAutoFocus || false,\n shopperEmail: props.clickToPayConfiguration?.shopperEmail || this.core.options?.session?.shopperEmail,\n telephoneNumber: props.clickToPayConfiguration?.telephoneNumber || this.core.options?.session?.telephoneNumber,\n locale: props.clickToPayConfiguration?.locale || props.i18n?.locale?.replace('-', '_')\n },\n ...(storedCardID && { storedPaymentMethodId: storedCardID })\n };\n }\n\n /**\n * Formats the component data output\n */\n formatData(): CardElementData {\n /**\n * this.state.selectedBrandValue will be set when:\n * - /binLookup detects a single brand,\n * - when /binLookup detects a dual-branded card and the shopper makes a brand selection\n * - or, in the case of a storedCard\n */\n const cardBrand = this.state.selectedBrandValue;\n\n return {\n paymentMethod: {\n type: CardElement.type,\n ...this.state.data,\n ...(this.props.storedPaymentMethodId && {\n storedPaymentMethodId: this.props.storedPaymentMethodId,\n holderName: this.props.holderName ?? ''\n }),\n ...(cardBrand && { brand: cardBrand }),\n ...(this.props.fundingSource && { fundingSource: this.props.fundingSource })\n },\n ...(this.state.billingAddress && { billingAddress: this.state.billingAddress }),\n ...(this.state.socialSecurityNumber && { socialSecurityNumber: this.state.socialSecurityNumber }),\n ...this.storePaymentMethodPayload,\n ...(hasValidInstallmentsObject(this.state.installments) && { installments: this.state.installments }),\n browserInfo: this.browserInfo,\n origin: !!window && window.location.origin\n };\n }\n\n updateStyles(stylesObj) {\n if (this.componentRef?.updateStyles) this.componentRef.updateStyles(stylesObj);\n return this;\n }\n\n setFocusOn(fieldName) {\n if (this.componentRef?.setFocusOn) this.componentRef.setFocusOn(fieldName);\n return this;\n }\n\n public onBrand = event => {\n this.props.onBrand?.(event);\n };\n\n processBinLookupResponse(binLookupResponse: BinLookupResponse, isReset = false) {\n if (this.componentRef?.processBinLookupResponse) this.componentRef.processBinLookupResponse(binLookupResponse, isReset);\n return this;\n }\n\n handleUnsupportedCard(errObj) {\n if (this.componentRef?.handleUnsupportedCard) this.componentRef.handleUnsupportedCard(errObj);\n return this;\n }\n\n private handleClickToPaySubmit = (payload: ClickToPayCheckoutPayload) => {\n this.setState({ data: { ...payload }, valid: {}, errors: {}, isValid: true });\n this.submit();\n };\n\n onBinLookup(obj: CbObjOnBinLookup) {\n // Handler for regular card comp doesn't need this 'raw' data or to know about 'resets'\n if (!obj.isReset) {\n const nuObj = reject('supportedBrandsRaw').from(obj);\n this.props.onBinLookup?.(nuObj);\n }\n }\n\n protected submitAnalytics(analyticsObj: SendAnalyticsObject) {\n const { type } = analyticsObj;\n\n if (type === ANALYTICS_RENDERED_STR || type === ANALYTICS_CONFIGURED_STR) {\n // Check if it's a storedCard\n if (this.constructor['type'] === 'scheme') {\n if (hasOwnProperty(this.props, 'supportedShopperInteractions')) {\n analyticsObj.isStoredPaymentMethod = true;\n analyticsObj.brand = this.props.brand;\n }\n }\n }\n\n super.submitAnalytics(analyticsObj, this.props);\n }\n\n private onConfigSuccess = (obj: CbObjOnConfigSuccess) => {\n this.submitAnalytics({\n type: ANALYTICS_CONFIGURED_STR\n });\n\n this.props.onConfigSuccess?.(obj);\n };\n\n private onFocus = (obj: ComponentFocusObject) => {\n this.submitAnalytics({\n type: ANALYTICS_FOCUS_STR,\n target: fieldTypeToSnakeCase(obj.fieldType)\n });\n\n // Call merchant defined callback\n if (ALL_SECURED_FIELDS.includes(obj.fieldType)) {\n this.props.onFocus?.(obj.event as CbObjOnFocus);\n } else {\n this.props.onFocus?.(obj);\n }\n };\n\n private onBlur = (obj: ComponentFocusObject) => {\n this.submitAnalytics({\n type: ANALYTICS_UNFOCUS_STR,\n target: fieldTypeToSnakeCase(obj.fieldType)\n });\n\n // Call merchant defined callback\n if (ALL_SECURED_FIELDS.includes(obj.fieldType)) {\n this.props.onBlur?.(obj.event as CbObjOnFocus);\n } else {\n this.props.onBlur?.(obj);\n }\n };\n\n private onValidationErrorAnalytics = (obj: FieldErrorAnalyticsObject) => {\n this.submitAnalytics({\n type: ANALYTICS_VALIDATION_ERROR_STR,\n target: fieldTypeToSnakeCase(obj.fieldType),\n validationErrorCode: obj.errorCode,\n validationErrorMessage: getErrorMessageFromCode(obj.errorCode, SF_ErrorCodes)\n });\n };\n\n public onBinValue = triggerBinLookUp(this);\n\n get storePaymentMethodPayload() {\n const isStoredCard = this.props.storedPaymentMethodId?.length > 0;\n if (isStoredCard) {\n return {};\n }\n\n /**\n * For regular card, zero auth payments, we store the payment method, *if* the configuration says we should:\n * - For sessions, this means if the session has been created with storePaymentMethodMode: 'askForConsent'\n * - For the advanced flow, this means if the merchant has still set enableStoreDetails: true\n *\n * What we are doing is.. if for a normal payment we would show the \"Save for my next payment\" checkbox,\n * for a zero-auth payment we effectively click the checkbox on behalf of the shopper.\n */\n const isZeroAuth = this.props.amount?.value === 0;\n if (isZeroAuth) {\n return this.props.enableStoreDetails ? { storePaymentMethod: true } : {};\n }\n\n // For regular card, non-zero auth payments, we store the payment method based on the checkbox value.\n const includeStorePaymentMethod = this.props.showStoreDetailsCheckbox && typeof this.state.storePaymentMethod !== 'undefined';\n return includeStorePaymentMethod ? { storePaymentMethod: Boolean(this.state.storePaymentMethod) } : {};\n }\n\n get isValid() {\n return !!this.state.isValid;\n }\n\n get icon() {\n return this.props.icon ?? this.resources.getImage()(this.props.brand);\n }\n\n get brands(): { icon: any; name: string }[] {\n const { brands, brandsConfiguration } = this.props;\n if (brands) {\n return brands.map(brand => {\n const brandIcon = brandsConfiguration[brand]?.icon ?? this.props.modules.resources.getImage()(brand);\n return { icon: brandIcon, name: brand };\n });\n }\n\n return [];\n }\n\n get displayName(): string {\n if (this.props.storedPaymentMethodId) {\n return `•••• ${this.props.lastFour}`;\n }\n\n return this.props.name || CardElement.type;\n }\n\n get accessibleName(): string {\n // Use display name, unless it's a stored payment method, there inform user\n return (\n (this.props.name || CardElement.type) +\n (this.props.storedPaymentMethodId\n ? ' ' + this.props.i18n.get('creditCard.storedCard.description.ariaLabel').replace('%@', this.props.lastFour)\n : '')\n );\n }\n\n get browserInfo() {\n return collectBrowserInfo();\n }\n\n protected override payButton = (props: PayButtonFunctionProps) => {\n const isZeroAuth = this.props.amount?.value === 0;\n const isStoredCard = this.props.storedPaymentMethodId?.length > 0;\n return (\n <PayButton\n {...props}\n amount={this.props.amount}\n secondaryAmount={this.props.secondaryAmount}\n label={isZeroAuth && !isStoredCard ? this.props.i18n.get('payButton.saveDetails') : ''}\n onClick={this.submit}\n />\n );\n };\n\n private renderCardInput(isCardPrimaryInput = true): h.JSX.Element {\n return (\n <CardInput\n setComponentRef={this.setComponentRef}\n {...this.props}\n {...this.state}\n onChange={this.setState}\n onSubmit={this.submit}\n handleKeyPress={this.handleKeyPress}\n payButton={this.payButton}\n onBrand={this.onBrand}\n onBinValue={this.onBinValue}\n brand={this.props.brand}\n brandsIcons={this.brands}\n isPayButtonPrimaryVariant={isCardPrimaryInput}\n resources={this.resources}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n onValidationErrorAnalytics={this.onValidationErrorAnalytics}\n onConfigSuccess={this.onConfigSuccess}\n />\n );\n }\n\n render() {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <SRPanelProvider srPanel={this.props.modules.srPanel}>\n <ClickToPayWrapper\n amount={this.props.amount}\n configuration={this.props.clickToPayConfiguration}\n clickToPayService={this.clickToPayService}\n isStandaloneComponent={false}\n setClickToPayRef={this.setClickToPayRef}\n onSetStatus={this.setElementStatus}\n onSubmit={this.handleClickToPaySubmit}\n onError={this.handleError}\n >\n {isCardPrimaryInput => this.renderCardInput(isCardPrimaryInput)}\n </ClickToPayWrapper>\n </SRPanelProvider>\n </CoreProvider>\n );\n }\n}\n\nexport default CardElement;\n"],"names":["CardElement","UIElement","setStatus","status","props","_this_componentRef","_this_clickToPayRef","this","componentRef","clickToPayRef","formatProps","_this_core_options_session","_this_core_options","_this_core_options_session1","_this_core_options1","enableStoreDetails","session","configuration","showStoreDetailsCheckbox","amount","value","storedCardID","storedPaymentMethodId","id","isEcommerceStoredCard","supportedShopperInteractions","includes","AdyenCheckoutError","IMPLEMENTATION_ERROR","_object_spread","holderNameRequired","hasHolderName","hasCVC","brand","hideCVC","billingAddressRequired","billingAddressMode","onAddressLookup","CardInputDefaultProps","TxVariants","card","countryCode","toLowerCase","_object_spread_props","socialSecurityNumberMode","brandsConfiguration","icon","installmentOptions","clickToPayConfiguration","disableOtpAutoFocus","shopperEmail","core","options","telephoneNumber","locale","i18n","replace","formatData","cardBrand","state","selectedBrandValue","_this_props_holderName","paymentMethod","type","data","holderName","fundingSource","billingAddress","socialSecurityNumber","storePaymentMethodPayload","hasValidInstallmentsObject","installments","browserInfo","origin","window","location","updateStyles","stylesObj","setFocusOn","fieldName","processBinLookupResponse","binLookupResponse","isReset","handleUnsupportedCard","errObj","onBinLookup","obj","_this_props_onBinLookup","_this_props","nuObj","reject","from","call","submitAnalytics","analyticsObj","ANALYTICS_RENDERED_STR","ANALYTICS_CONFIGURED_STR","constructor","hasOwnProperty","isStoredPaymentMethod","super","_this_props_storedPaymentMethodId","_this_props_amount","length","storePaymentMethod","Boolean","isValid","_this_props_icon","resources","getImage","brands","map","modules","name","displayName","lastFour","accessibleName","get","collectBrowserInfo","renderCardInput","isCardPrimaryInput","h","CardInput","setComponentRef","onChange","setState","onSubmit","submit","handleKeyPress","payButton","onBrand","onBinValue","brandsIcons","isPayButtonPrimaryVariant","onFocus","onBlur","onValidationErrorAnalytics","onConfigSuccess","render","CoreProvider","loadingContext","SRPanelProvider","srPanel","ClickToPayWrapper","clickToPayService","isStandaloneComponent","setClickToPayRef","onSetStatus","setElementStatus","handleClickToPaySubmit","onError","handleError","checkout","_this_clickToPayService","_define_property","ref","event","_this_props_onBrand","payload","valid","errors","_this_props_onConfigSuccess","_this_props_onFocus","_this_props_onFocus1","_this_props1","ANALYTICS_FOCUS_STR","target","fieldTypeToSnakeCase","fieldType","ALL_SECURED_FIELDS","_this_props_onBlur","_this_props_onBlur1","ANALYTICS_UNFOCUS_STR","ANALYTICS_VALIDATION_ERROR_STR","validationErrorCode","errorCode","validationErrorMessage","getErrorMessageFromCode","SF_ErrorCodes","triggerBinLookUp","isZeroAuth","isStoredCard","PayButton","secondaryAmount","label","onClick","_disableClickToPay","createClickToPayService","environment","initialize","scheme","defaultProps","showFormInstruction","doBinLookup"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{createElement as r}from"../../../../../external/preact/dist/preact.js";import{getCardImageUrl as t,getFullBrandName as a}from"../utils.js";import o from"../../../../../core/Context/useImage.js";function e({brand:e,brandsConfiguration:n={}}){var c;const s=o(),d="card"===e?"nocard":e;var i;const l=null!==(i=null===(c=n[e])||void 0===c?void 0:c.icon)&&void 0!==i?i:t(d,s);return r("img",{className:"adyen-checkout-card-input__icon adyen-checkout__card__cardNumber__brandIcon",onError:r=>{r.target.style.cssText="display: none"},alt:a(e),src:l})}export{e as default};
1
+ import{createElement as r}from"../../../../../external/preact/dist/preact.js";import{getCardImageUrl as o,getFullBrandName as a}from"../utils.js";import e from"../../../../../core/Context/useImage.js";import{useState as t}from"../../../../../external/preact/hooks/dist/hooks.js";import n from"../../../../../external/classnames/index.js";function c({brand:c,brandsConfiguration:s={}}){var d;const i=e(),m="card"===c?"nocard":c;var u;const l=null!==(u=null===(d=s[c])||void 0===d?void 0:d.icon)&&void 0!==u?u:o(m,i),[p,_]=t(!1),f=n({"adyen-checkout-card-input__icon":!0,"adyen-checkout__card__cardNumber__brandIcon":!0,"adyen-checkout-card-input__icon--hidden":!p});return r("img",{className:f,onLoad:()=>{_(!0)},onError:()=>{_(!1)},alt:a(c),src:l})}export{c as default};
2
2
  //# sourceMappingURL=BrandIcon.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BrandIcon.js","sources":["../../../../../../../src/components/Card/components/CardInput/components/BrandIcon.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { getCardImageUrl, getFullBrandName } from '../utils';\nimport { BrandIconProps } from './types';\nimport useImage from '../../../../../core/Context/useImage';\n\nexport default function BrandIcon({ brand, brandsConfiguration = {} }: BrandIconProps) {\n const getImage = useImage();\n const imageName = brand === 'card' ? 'nocard' : brand;\n const imageUrl = brandsConfiguration[brand]?.icon ?? getCardImageUrl(imageName, getImage);\n const handleError = e => {\n e.target.style.cssText = 'display: none';\n };\n\n return (\n <img\n className=\"adyen-checkout-card-input__icon adyen-checkout__card__cardNumber__brandIcon\"\n onError={handleError}\n alt={getFullBrandName(brand)}\n src={imageUrl}\n />\n );\n}\n"],"names":["BrandIcon","brand","brandsConfiguration","getImage","useImage","imageName","imageUrl","icon","getCardImageUrl","h","img","className","onError","e","target","style","cssText","alt","getFullBrandName","src"],"mappings":"yMAKe,SAASA,GAAUC,MAAEA,EAAKC,oBAAEA,EAAsB,CAAE,IAG9CA,IAAAA,EAFjB,MAAMC,EAAWC,IACXC,EAAsB,SAAVJ,EAAmB,SAAWA,EAC/BC,IAAAA,EAAjB,MAAMI,EAA2C,QAAhCJ,EAAAA,QAAAA,EAAAA,EAAoBD,UAApBC,IAAAA,OAAAA,EAAAA,EAA4BK,YAA5BL,IAAAA,EAAAA,EAAoCM,EAAgBH,EAAWF,GAKhF,OACIM,EAACC,MAAAA,CACGC,UAAU,8EACVC,QAPYC,IAChBA,EAAEC,OAAOC,MAAMC,QAAU,eAAA,EAOrBC,IAAKC,EAAiBjB,GACtBkB,IAAKb,GAGjB"}
1
+ {"version":3,"file":"BrandIcon.js","sources":["../../../../../../../src/components/Card/components/CardInput/components/BrandIcon.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { getCardImageUrl, getFullBrandName } from '../utils';\nimport { BrandIconProps } from './types';\nimport useImage from '../../../../../core/Context/useImage';\nimport { useState } from 'preact/hooks';\nimport classNames from 'classnames';\n\nexport default function BrandIcon({ brand, brandsConfiguration = {} }: BrandIconProps) {\n const getImage = useImage();\n const imageName = brand === 'card' ? 'nocard' : brand;\n const imageUrl = brandsConfiguration[brand]?.icon ?? getCardImageUrl(imageName, getImage);\n\n const [hasLoaded, setHasLoaded] = useState(false);\n\n const handleError = () => {\n setHasLoaded(false);\n };\n\n const handleLoad = () => {\n setHasLoaded(true);\n };\n\n const fieldClassnames = classNames({\n 'adyen-checkout-card-input__icon': true,\n 'adyen-checkout__card__cardNumber__brandIcon': true,\n 'adyen-checkout-card-input__icon--hidden': !hasLoaded\n });\n\n return <img className={fieldClassnames} onLoad={handleLoad} onError={handleError} alt={getFullBrandName(brand)} src={imageUrl} />;\n}\n"],"names":["BrandIcon","brand","brandsConfiguration","getImage","useImage","imageName","imageUrl","icon","getCardImageUrl","hasLoaded","setHasLoaded","useState","fieldClassnames","classNames","h","img","className","onLoad","onError","alt","getFullBrandName","src"],"mappings":"kVAOe,SAASA,GAAUC,MAAEA,EAAKC,oBAAEA,EAAsB,CAAE,IAG9CA,IAAAA,EAFjB,MAAMC,EAAWC,IACXC,EAAsB,SAAVJ,EAAmB,SAAWA,EAC/BC,IAAAA,EAAjB,MAAMI,EAA2C,QAAhCJ,EAAAA,QAAAA,EAAAA,EAAoBD,UAApBC,IAAAA,OAAAA,EAAAA,EAA4BK,YAA5BL,IAAAA,EAAAA,EAAoCM,EAAgBH,EAAWF,IAEzEM,EAAWC,GAAgBC,GAAS,GAUrCC,EAAkBC,EAAW,CAC/B,mCAAmC,EACnC,+CAA+C,EAC/C,2CAA4CJ,IAGhD,OAAOK,EAACC,MAAAA,CAAIC,UAAWJ,EAAiBK,OAVrB,KACfP,GAAa,EAAA,EAS2CQ,QAdxC,KAChBR,GAAa,EAAA,EAaiES,IAAKC,EAAiBnB,GAAQoB,IAAKf,GACzH"}
@@ -1,2 +1,2 @@
1
- var l;!function(l){l.full="full",l.partial="partial",l.none="none"}(l||(l={}));export{l as AddressModeOptions};
1
+ var n=function(n){return n.full="full",n.partial="partial",n.none="none",n}({});export{n as AddressModeOptions};
2
2
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sources":["../../../../../../src/components/Card/components/CardInput/types.ts"],"sourcesContent":["import Language from '../../../../language/Language';\nimport { BinLookupResponse, BrandConfiguration, CardBrandsConfiguration, CardBackendConfiguration, DualBrandSelectElement } from '../../types';\nimport { InstallmentOptions } from './components/types';\nimport { ValidationResult } from '../../../internal/PersonalDetails/types';\nimport { CVCPolicyType, DatePolicyType } from '../../../internal/SecuredFields/lib/types';\nimport Specifications from '../../../internal/Address/Specifications';\nimport { AddressSchema } from '../../../internal/Address/types';\nimport { CbObjOnError, StylesObject } from '../../../internal/SecuredFields/lib/types';\nimport { Resources } from '../../../../core/Context/Resources';\nimport { SRPanel } from '../../../../core/Errors/SRPanel';\nimport RiskElement from '../../../../core/RiskModule';\nimport { DisclaimerMsgObject } from '../../../internal/DisclaimerMessage/DisclaimerMessage';\nimport { OnAddressLookupType, OnAddressSelectedType } from '../../../internal/Address/components/AddressSearch';\nimport { ComponentMethodsRef } from '../../../internal/UIElement/types';\nimport { AddressData, PaymentAmount } from '../../../../types/global-types';\nimport { AnalyticsModule } from '../../../../types/global-types';\nimport { FieldErrorAnalyticsObject } from '../../../../core/Analytics/types';\n\nexport interface CardInputValidState {\n holderName?: boolean;\n billingAddress?: boolean;\n socialSecurityNumber?: boolean;\n encryptedCardNumber?: boolean;\n encryptedExpiryMonth?: boolean;\n encryptedExpiryYear?: boolean;\n encryptedSecurityCode?: boolean;\n taxNumber?: boolean;\n encryptedPassword?: boolean;\n}\n\nexport interface CardInputErrorState {\n holderName?: ValidationResult;\n billingAddress?: ValidationResult;\n socialSecurityNumber?: ValidationResult;\n encryptedCardNumber?: boolean;\n encryptedExpiryDate?: boolean;\n encryptedSecurityCode?: boolean;\n taxNumber?: ValidationResult;\n encryptedPassword?: boolean;\n}\n\nexport interface CardInputDataState {\n holderName?: string;\n billingAddress?: AddressData;\n socialSecurityNumber?: string;\n taxNumber?: string;\n}\n\ntype PlaceholderKeys =\n | 'holderName'\n | 'cardNumber'\n | 'expiryDate'\n | 'expiryMonth'\n | 'expiryYear'\n | 'securityCodeThreeDigits'\n | 'securityCodeFourDigits'\n | 'password';\nexport type Placeholders = Partial<Record<PlaceholderKeys, string>>;\n\n/**\n * Should be the subset of the props sent to CardInput that are *actually* used by CardInput\n * - either in the comp itself or are passed on to its children\n */\nexport interface CardInputProps {\n amount?: PaymentAmount;\n isPayButtonPrimaryVariant?: boolean;\n autoFocus?: boolean;\n billingAddressAllowedCountries?: string[];\n billingAddressRequired?: boolean;\n billingAddressRequiredFields?: string[];\n billingAddressMode?: AddressModeOptions;\n brand?: string;\n brands?: string[];\n brandsConfiguration?: CardBrandsConfiguration;\n brandsIcons: Array<BrandConfiguration>;\n clientKey: string;\n configuration?: CardBackendConfiguration;\n countryCode?: string;\n cvcPolicy?: CVCPolicyType;\n data?: CardInputDataState;\n disableIOSArrowKeys?: boolean;\n enableStoreDetails?: boolean;\n expiryMonth?: string;\n expiryYear?: string;\n forceCompat?: boolean;\n fundingSource?: 'debit' | 'credit';\n hasCVC?: boolean;\n hasHolderName?: boolean;\n holderName?: string;\n holderNameRequired?: boolean;\n i18n?: Language;\n implementationType?: string;\n installmentOptions?: InstallmentOptions;\n keypadFix?: boolean;\n lastFour?: string;\n loadingContext: string;\n legacyInputMode?: boolean;\n minimumExpiryDate?: string;\n modules?: {\n srPanel: SRPanel;\n analytics: AnalyticsModule;\n risk: RiskElement;\n resources: Resources;\n };\n onAdditionalSFConfig?: () => {};\n onAdditionalSFRemoved?: () => {};\n onAllValid?: () => {};\n onAutoComplete?: () => {};\n onBinValue?: () => {};\n onBlur?: (e) => {};\n onBrand?: () => {};\n onConfigSuccess?: () => {};\n onChange?: (state) => {};\n onError?: () => {};\n onFieldValid?: () => {};\n onFocus?: (e) => {};\n onLoad?: () => {};\n handleKeyPress?: (obj: KeyboardEvent) => void;\n onAddressLookup?: OnAddressLookupType;\n onAddressSelected?: OnAddressSelectedType;\n addressSearchDebounceMs?: number;\n payButton?: (obj) => {};\n placeholders?: Placeholders;\n positionHolderNameOnTop?: boolean;\n resources: Resources;\n setComponentRef?: (ref) => void;\n showBrandIcon?: boolean;\n showInstallmentAmounts?: boolean;\n showPayButton: boolean;\n showStoreDetailsCheckbox?: boolean;\n showWarnings?: boolean;\n showContextualElement?: boolean;\n specifications?: Specifications;\n storedPaymentMethodId?: string;\n styles?: StylesObject;\n trimTrailingSeparator?: boolean;\n type?: string;\n maskSecurityCode?: boolean;\n exposeExpiryDate?: boolean;\n disclaimerMessage?: DisclaimerMsgObject;\n onValidationErrorAnalytics?: (obj: FieldErrorAnalyticsObject) => {};\n}\n\nexport interface CardInputState {\n dualBrandSelectElements: DualBrandSelectElement[];\n selectedBrandValue: string;\n billingAddress: object;\n brand?: string;\n data?: object;\n errors?: object;\n focusedElement: string;\n cvcPolicy: CVCPolicyType;\n expiryDatePolicy: DatePolicyType;\n isValid: boolean;\n status: string;\n valid?: object;\n issuingCountryCode: string;\n showSocialSecurityNumber?: boolean;\n}\n\n// An interface for the members exposed by CardInput to its parent Card/UIElement\nexport interface CardInputRef extends ComponentMethodsRef {\n sfp?: any;\n setFocusOn?: (who) => void;\n processBinLookupResponse?: (binLookupResponse: BinLookupResponse, isReset: boolean) => void;\n updateStyles?: (stylesObj: StylesObject) => void;\n handleUnsupportedCard?: (errObj: CbObjOnError) => boolean;\n}\n\nexport interface FieldError {\n errorMessage?: string;\n errorI18n?: string;\n}\n\nexport interface SFError {\n isValid?: boolean;\n errorMessage?: string;\n errorI18n?: string;\n error: string;\n rootNode: HTMLElement;\n detectedBrands?: string[];\n}\n\nexport interface SFStateErrorObj {\n [key: string]: SFError;\n}\n\nexport interface LayoutObj {\n props: CardInputProps;\n showKCP: boolean;\n showBrazilianSSN: boolean;\n countrySpecificSchemas: AddressSchema;\n billingAddressRequiredFields?: string[];\n}\n\nexport enum AddressModeOptions {\n full = 'full',\n partial = 'partial',\n none = 'none'\n}\n"],"names":["AddressModeOptions"],"mappings":"OAmMYA,SAAAA,mDAAAA,CAAAA,IAAAA,EAAAA,CAAAA"}
1
+ {"version":3,"file":"types.js","sources":["../../../../../../src/components/Card/components/CardInput/types.ts"],"sourcesContent":["import Language from '../../../../language/Language';\nimport { BinLookupResponse, BrandConfiguration, CardBrandsConfiguration, CardBackendConfiguration, DualBrandSelectElement } from '../../types';\nimport { InstallmentOptions } from './components/types';\nimport { ValidationResult } from '../../../internal/PersonalDetails/types';\nimport { CVCPolicyType, DatePolicyType } from '../../../internal/SecuredFields/lib/types';\nimport Specifications from '../../../internal/Address/Specifications';\nimport { AddressSchema } from '../../../internal/Address/types';\nimport { CbObjOnError, StylesObject } from '../../../internal/SecuredFields/lib/types';\nimport { Resources } from '../../../../core/Context/Resources';\nimport { SRPanel } from '../../../../core/Errors/SRPanel';\nimport RiskElement from '../../../../core/RiskModule';\nimport { DisclaimerMsgObject } from '../../../internal/DisclaimerMessage/DisclaimerMessage';\nimport { OnAddressLookupType, OnAddressSelectedType } from '../../../internal/Address/components/AddressSearch';\nimport { ComponentMethodsRef } from '../../../internal/UIElement/types';\nimport { AddressData, PaymentAmount } from '../../../../types/global-types';\nimport { AnalyticsModule } from '../../../../types/global-types';\nimport { FieldErrorAnalyticsObject } from '../../../../core/Analytics/types';\n\nexport interface CardInputValidState {\n holderName?: boolean;\n billingAddress?: boolean;\n socialSecurityNumber?: boolean;\n encryptedCardNumber?: boolean;\n encryptedExpiryMonth?: boolean;\n encryptedExpiryYear?: boolean;\n encryptedSecurityCode?: boolean;\n taxNumber?: boolean;\n encryptedPassword?: boolean;\n}\n\nexport interface CardInputErrorState {\n holderName?: ValidationResult;\n billingAddress?: ValidationResult;\n socialSecurityNumber?: ValidationResult;\n encryptedCardNumber?: boolean;\n encryptedExpiryDate?: boolean;\n encryptedSecurityCode?: boolean;\n taxNumber?: ValidationResult;\n encryptedPassword?: boolean;\n}\n\nexport interface CardInputDataState {\n holderName?: string;\n billingAddress?: AddressData;\n socialSecurityNumber?: string;\n taxNumber?: string;\n}\n\ntype PlaceholderKeys =\n | 'holderName'\n | 'cardNumber'\n | 'expiryDate'\n | 'expiryMonth'\n | 'expiryYear'\n | 'securityCodeThreeDigits'\n | 'securityCodeFourDigits'\n | 'password';\nexport type Placeholders = Partial<Record<PlaceholderKeys, string>>;\n\n/**\n * Should be the subset of the props sent to CardInput that are *actually* used by CardInput\n * - either in the comp itself or are passed on to its children\n */\nexport interface CardInputProps {\n amount?: PaymentAmount;\n isPayButtonPrimaryVariant?: boolean;\n autoFocus?: boolean;\n billingAddressAllowedCountries?: string[];\n billingAddressRequired?: boolean;\n billingAddressRequiredFields?: string[];\n billingAddressMode?: AddressModeOptions;\n brand?: string;\n brands?: string[];\n brandsConfiguration?: CardBrandsConfiguration;\n brandsIcons: Array<BrandConfiguration>;\n clientKey: string;\n configuration?: CardBackendConfiguration;\n countryCode?: string;\n cvcPolicy?: CVCPolicyType;\n data?: CardInputDataState;\n disableIOSArrowKeys?: boolean;\n enableStoreDetails?: boolean;\n expiryMonth?: string;\n expiryYear?: string;\n forceCompat?: boolean;\n fundingSource?: 'debit' | 'credit';\n hasCVC?: boolean;\n hasHolderName?: boolean;\n holderName?: string;\n holderNameRequired?: boolean;\n i18n?: Language;\n implementationType?: string;\n installmentOptions?: InstallmentOptions;\n keypadFix?: boolean;\n lastFour?: string;\n loadingContext: string;\n legacyInputMode?: boolean;\n minimumExpiryDate?: string;\n modules?: {\n srPanel: SRPanel;\n analytics: AnalyticsModule;\n risk: RiskElement;\n resources: Resources;\n };\n onAdditionalSFConfig?: () => {};\n onAdditionalSFRemoved?: () => {};\n onAllValid?: () => {};\n onAutoComplete?: () => {};\n onBinValue?: () => {};\n onBlur?: (e) => {};\n onBrand?: () => {};\n onConfigSuccess?: () => {};\n onChange?: (state) => {};\n onError?: () => {};\n onFieldValid?: () => {};\n onFocus?: (e) => {};\n onLoad?: () => {};\n handleKeyPress?: (obj: KeyboardEvent) => void;\n onAddressLookup?: OnAddressLookupType;\n onAddressSelected?: OnAddressSelectedType;\n addressSearchDebounceMs?: number;\n payButton?: (obj) => {};\n placeholders?: Placeholders;\n positionHolderNameOnTop?: boolean;\n resources: Resources;\n setComponentRef?: (ref) => void;\n showBrandIcon?: boolean;\n showInstallmentAmounts?: boolean;\n showPayButton: boolean;\n showStoreDetailsCheckbox?: boolean;\n showWarnings?: boolean;\n showContextualElement?: boolean;\n specifications?: Specifications;\n storedPaymentMethodId?: string;\n styles?: StylesObject;\n trimTrailingSeparator?: boolean;\n type?: string;\n maskSecurityCode?: boolean;\n exposeExpiryDate?: boolean;\n disclaimerMessage?: DisclaimerMsgObject;\n onValidationErrorAnalytics?: (obj: FieldErrorAnalyticsObject) => {};\n}\n\nexport interface CardInputState {\n dualBrandSelectElements: DualBrandSelectElement[];\n selectedBrandValue: string;\n billingAddress: object;\n brand?: string;\n data?: object;\n errors?: object;\n focusedElement: string;\n cvcPolicy: CVCPolicyType;\n expiryDatePolicy: DatePolicyType;\n isValid: boolean;\n status: string;\n valid?: object;\n issuingCountryCode: string;\n showSocialSecurityNumber?: boolean;\n}\n\n// An interface for the members exposed by CardInput to its parent Card/UIElement\nexport interface CardInputRef extends ComponentMethodsRef {\n sfp?: any;\n setFocusOn?: (who) => void;\n processBinLookupResponse?: (binLookupResponse: BinLookupResponse, isReset: boolean) => void;\n updateStyles?: (stylesObj: StylesObject) => void;\n handleUnsupportedCard?: (errObj: CbObjOnError) => boolean;\n}\n\nexport interface FieldError {\n errorMessage?: string;\n errorI18n?: string;\n}\n\nexport interface SFError {\n isValid?: boolean;\n errorMessage?: string;\n errorI18n?: string;\n error: string;\n rootNode: HTMLElement;\n detectedBrands?: string[];\n}\n\nexport interface SFStateErrorObj {\n [key: string]: SFError;\n}\n\nexport interface LayoutObj {\n props: CardInputProps;\n showKCP: boolean;\n showBrazilianSSN: boolean;\n countrySpecificSchemas: AddressSchema;\n billingAddressRequiredFields?: string[];\n}\n\nexport enum AddressModeOptions {\n full = 'full',\n partial = 'partial',\n none = 'none'\n}\n"],"names":["AddressModeOptions"],"mappings":"AAmMO,IAAAA,EAAKA,SAAAA,GAAAA,uDAAAA,CAIX,CAJWA,CAIX,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"CashAppPay.js","sources":["../../../../src/components/CashAppPay/CashAppPay.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport { CashAppComponent } from './components/CashAppComponent';\nimport CashAppService from './services/CashAppService';\nimport { CashAppSdkLoader } from './services/CashAppSdkLoader';\nimport { CashAppPayElementData, CashAppPayConfiguration, CashAppPayEventData } from './types';\nimport { ICashAppService } from './services/types';\nimport defaultProps from './defaultProps';\nimport RedirectButton from '../internal/RedirectButton';\nimport { payAmountLabel } from '../internal/PayButton';\nimport { TxVariants } from '../tx-variants';\nimport type { ICore } from '../../core/types';\nimport { PREFIX } from '../internal/Icon/constants';\n\nexport class CashAppPay extends UIElement<CashAppPayConfiguration> {\n public static type = TxVariants.cashapp;\n\n private readonly cashAppService: ICashAppService | undefined;\n\n protected static defaultProps = defaultProps;\n\n constructor(checkout: ICore, props?: CashAppPayConfiguration) {\n super(checkout, props);\n\n if (this.props.enableStoreDetails && this.props.storePaymentMethod) {\n console.warn(\n 'CashAppPay: enableStoreDetails AND storePaymentMethod configuration properties should not be used together. That can lead to undesired behavior.'\n );\n }\n\n if (this.props.storedPaymentMethodId) {\n return;\n }\n\n this.cashAppService = new CashAppService(new CashAppSdkLoader(), {\n storePaymentMethod: this.props.storePaymentMethod,\n useCashAppButtonUi: this.props.showPayButton,\n environment: this.props.environment,\n amount: this.props.amount,\n redirectURL: this.props.redirectURL,\n clientId: this.props.configuration?.clientId,\n scopeId: this.props.configuration?.scopeId,\n button: this.props.button,\n referenceId: this.props.referenceId\n });\n }\n\n public formatProps(props: CashAppPayConfiguration) {\n return {\n ...props,\n enableStoreDetails: props.session?.configuration?.enableStoreDetails || props.enableStoreDetails\n };\n }\n\n public formatData(): CashAppPayElementData {\n const { shopperWantsToStore, grantId, onFileGrantId, cashTag, customerId } = this.state.data || {};\n const { storePaymentMethod: storePaymentMethodSetByMerchant, storedPaymentMethodId } = this.props;\n\n /**\n * We include 'storePaymentMethod' flag if we either Display the Checkbox OR if it is non-sessions flow AND the merchant wants to store the payment method\n */\n const includeStorePaymentMethod = this.props.enableStoreDetails || (!this.props.session && storePaymentMethodSetByMerchant);\n\n if (storedPaymentMethodId) {\n return {\n paymentMethod: {\n type: CashAppPay.type,\n storedPaymentMethodId\n }\n };\n }\n\n const shouldAddOnFileProperties = onFileGrantId && cashTag;\n\n return {\n paymentMethod: {\n type: CashAppPay.type,\n ...(grantId && { grantId }),\n ...(customerId && { customerId }),\n ...(shouldAddOnFileProperties && { onFileGrantId, cashtag: cashTag })\n },\n ...(includeStorePaymentMethod && { storePaymentMethod: storePaymentMethodSetByMerchant || shopperWantsToStore })\n };\n }\n\n get displayName() {\n if (this.props.storedPaymentMethodId && this.props.cashtag) {\n return this.props.cashtag;\n }\n return this.props.name;\n }\n\n get additionalInfo() {\n return this.props.storedPaymentMethodId ? 'Cash App Pay' : '';\n }\n\n public submit = () => {\n const { onClick, storedPaymentMethodId } = this.props;\n\n if (storedPaymentMethodId) {\n super.submit();\n return;\n }\n\n let onClickPromiseRejected = false;\n\n new Promise<void>((resolve, reject) => onClick({ resolve, reject }))\n .catch(() => {\n onClickPromiseRejected = true;\n throw Error('onClick rejected');\n })\n .then(() => {\n return this.cashAppService.createCustomerRequest();\n })\n .then(() => {\n this.cashAppService.begin();\n })\n .catch(error => {\n if (onClickPromiseRejected) {\n // Swallow exception triggered by onClick reject\n return;\n }\n this.handleError(error);\n });\n };\n\n public get isValid(): boolean {\n return true;\n }\n\n private handleOnChangeStoreDetails = (storePayment: boolean) => {\n const data = { ...this.state.data, shopperWantsToStore: storePayment };\n this.setState({ data });\n };\n\n private handleAuthorize = (cashAppPaymentData: CashAppPayEventData): void => {\n const data = { ...this.state.data, ...cashAppPaymentData };\n this.setState({ data, valid: {}, errors: {}, isValid: true });\n super.submit();\n };\n\n render() {\n return (\n <CoreProvider i18n={this.props.i18n} resources={this.resources} loadingContext={this.props.loadingContext}>\n {this.props.storedPaymentMethodId ? (\n <RedirectButton\n showPayButton={this.props.showPayButton}\n label={payAmountLabel(this.props.i18n, this.props.amount)}\n icon={this.resources?.getImage({ imageFolder: 'components/' })(`${PREFIX}lock`)}\n name={this.displayName}\n amount={this.props.amount}\n payButton={this.payButton}\n onSubmit={this.submit}\n ref={ref => {\n this.componentRef = ref;\n }}\n />\n ) : (\n <CashAppComponent\n ref={ref => {\n this.componentRef = ref;\n }}\n enableStoreDetails={this.props.enableStoreDetails}\n cashAppService={this.cashAppService}\n onChangeStoreDetails={this.handleOnChangeStoreDetails}\n onError={this.handleError}\n onClick={this.submit}\n onAuthorize={this.handleAuthorize}\n />\n )}\n </CoreProvider>\n );\n }\n}\n\nexport default CashAppPay;\n"],"names":["CashAppPay","UIElement","formatProps","props","_object_spread_props","enableStoreDetails","session","configuration","formatData","shopperWantsToStore","grantId","onFileGrantId","cashTag","customerId","this","state","data","storePaymentMethod","storePaymentMethodSetByMerchant","storedPaymentMethodId","includeStorePaymentMethod","paymentMethod","type","_object_spread","cashtag","displayName","name","additionalInfo","isValid","render","_this_resources","h","CoreProvider","i18n","resources","loadingContext","RedirectButton","showPayButton","label","payAmountLabel","amount","icon","getImage","imageFolder","PREFIX","payButton","onSubmit","submit","ref","componentRef","CashAppComponent","cashAppService","onChangeStoreDetails","handleOnChangeStoreDetails","onError","handleError","onClick","onAuthorize","handleAuthorize","constructor","checkout","_this_props_configuration","_this_props_configuration1","super","_define_property","onClickPromiseRejected","Promise","resolve","reject","catch","Error","then","createCustomerRequest","begin","error","storePayment","setState","cashAppPaymentData","valid","errors","console","warn","CashAppService","CashAppSdkLoader","useCashAppButtonUi","environment","redirectURL","clientId","scopeId","button","referenceId","TxVariants","cashapp","defaultProps"],"mappings":"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"}
1
+ {"version":3,"file":"CashAppPay.js","sources":["../../../../src/components/CashAppPay/CashAppPay.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport { CashAppComponent } from './components/CashAppComponent';\nimport CashAppService from './services/CashAppService';\nimport { CashAppSdkLoader } from './services/CashAppSdkLoader';\nimport { CashAppPayElementData, CashAppPayConfiguration, CashAppPayEventData } from './types';\nimport { ICashAppService } from './services/types';\nimport defaultProps from './defaultProps';\nimport RedirectButton from '../internal/RedirectButton';\nimport { payAmountLabel } from '../internal/PayButton';\nimport { TxVariants } from '../tx-variants';\nimport type { ICore } from '../../core/types';\nimport { PREFIX } from '../internal/Icon/constants';\n\nexport class CashAppPay extends UIElement<CashAppPayConfiguration> {\n public static type = TxVariants.cashapp;\n\n private readonly cashAppService: ICashAppService | undefined;\n\n protected static defaultProps = defaultProps;\n\n constructor(checkout: ICore, props?: CashAppPayConfiguration) {\n super(checkout, props);\n\n if (this.props.enableStoreDetails && this.props.storePaymentMethod) {\n console.warn(\n 'CashAppPay: enableStoreDetails AND storePaymentMethod configuration properties should not be used together. That can lead to undesired behavior.'\n );\n }\n\n if (this.props.storedPaymentMethodId) {\n return;\n }\n\n this.cashAppService = new CashAppService(new CashAppSdkLoader(), {\n storePaymentMethod: this.props.storePaymentMethod,\n useCashAppButtonUi: this.props.showPayButton,\n environment: this.props.environment,\n amount: this.props.amount,\n redirectURL: this.props.redirectURL,\n clientId: this.props.configuration?.clientId,\n scopeId: this.props.configuration?.scopeId,\n button: this.props.button,\n referenceId: this.props.referenceId\n });\n }\n\n public formatProps(props: CashAppPayConfiguration) {\n return {\n ...props,\n enableStoreDetails: props.session?.configuration?.enableStoreDetails || props.enableStoreDetails\n };\n }\n\n public formatData(): CashAppPayElementData {\n const { shopperWantsToStore, grantId, onFileGrantId, cashTag, customerId } = this.state.data || {};\n const { storePaymentMethod: storePaymentMethodSetByMerchant, storedPaymentMethodId } = this.props;\n\n /**\n * We include 'storePaymentMethod' flag if we either Display the Checkbox OR if it is non-sessions flow AND the merchant wants to store the payment method\n */\n const includeStorePaymentMethod = this.props.enableStoreDetails || (!this.props.session && storePaymentMethodSetByMerchant);\n\n if (storedPaymentMethodId) {\n return {\n paymentMethod: {\n type: CashAppPay.type,\n storedPaymentMethodId\n }\n };\n }\n\n const shouldAddOnFileProperties = onFileGrantId && cashTag;\n\n return {\n paymentMethod: {\n type: CashAppPay.type,\n ...(grantId && { grantId }),\n ...(customerId && { customerId }),\n ...(shouldAddOnFileProperties && { onFileGrantId, cashtag: cashTag })\n },\n ...(includeStorePaymentMethod && { storePaymentMethod: storePaymentMethodSetByMerchant || shopperWantsToStore })\n };\n }\n\n get displayName() {\n if (this.props.storedPaymentMethodId && this.props.cashtag) {\n return this.props.cashtag;\n }\n return this.props.name;\n }\n\n get additionalInfo() {\n return this.props.storedPaymentMethodId ? 'Cash App Pay' : '';\n }\n\n public submit = () => {\n const { onClick, storedPaymentMethodId } = this.props;\n\n if (storedPaymentMethodId) {\n super.submit();\n return;\n }\n\n let onClickPromiseRejected = false;\n\n new Promise<void>((resolve, reject) => onClick({ resolve, reject }))\n .catch(() => {\n onClickPromiseRejected = true;\n throw Error('onClick rejected');\n })\n .then(() => {\n return this.cashAppService.createCustomerRequest();\n })\n .then(() => {\n this.cashAppService.begin();\n })\n .catch(error => {\n if (onClickPromiseRejected) {\n // Swallow exception triggered by onClick reject\n return;\n }\n this.handleError(error);\n });\n };\n\n public get isValid(): boolean {\n return true;\n }\n\n private handleOnChangeStoreDetails = (storePayment: boolean) => {\n const data = { ...this.state.data, shopperWantsToStore: storePayment };\n this.setState({ data });\n };\n\n private handleAuthorize = (cashAppPaymentData: CashAppPayEventData): void => {\n const data = { ...this.state.data, ...cashAppPaymentData };\n this.setState({ data, valid: {}, errors: {}, isValid: true });\n super.submit();\n };\n\n render() {\n return (\n <CoreProvider i18n={this.props.i18n} resources={this.resources} loadingContext={this.props.loadingContext}>\n {this.props.storedPaymentMethodId ? (\n <RedirectButton\n showPayButton={this.props.showPayButton}\n label={payAmountLabel(this.props.i18n, this.props.amount)}\n icon={this.resources?.getImage({ imageFolder: 'components/' })(`${PREFIX}lock`)}\n name={this.displayName}\n amount={this.props.amount}\n payButton={this.payButton}\n onSubmit={this.submit}\n ref={ref => {\n this.componentRef = ref;\n }}\n />\n ) : (\n <CashAppComponent\n ref={ref => {\n this.componentRef = ref;\n }}\n enableStoreDetails={this.props.enableStoreDetails}\n cashAppService={this.cashAppService}\n onChangeStoreDetails={this.handleOnChangeStoreDetails}\n onError={this.handleError}\n onClick={this.submit}\n onAuthorize={this.handleAuthorize}\n />\n )}\n </CoreProvider>\n );\n }\n}\n\nexport default CashAppPay;\n"],"names":["CashAppPay","UIElement","formatProps","props","_object_spread_props","enableStoreDetails","session","configuration","formatData","shopperWantsToStore","grantId","onFileGrantId","cashTag","customerId","this","state","data","storePaymentMethod","storePaymentMethodSetByMerchant","storedPaymentMethodId","includeStorePaymentMethod","paymentMethod","type","_object_spread","cashtag","displayName","name","additionalInfo","isValid","render","_this_resources","h","CoreProvider","i18n","resources","loadingContext","RedirectButton","showPayButton","label","payAmountLabel","amount","icon","getImage","imageFolder","PREFIX","payButton","onSubmit","submit","ref","componentRef","CashAppComponent","cashAppService","onChangeStoreDetails","handleOnChangeStoreDetails","onError","handleError","onClick","onAuthorize","handleAuthorize","constructor","checkout","_this_props_configuration","_this_props_configuration1","super","_define_property","onClickPromiseRejected","Promise","resolve","reject","catch","Error","then","createCustomerRequest","begin","error","storePayment","setState","cashAppPaymentData","valid","errors","console","warn","CashAppService","CashAppSdkLoader","useCashAppButtonUi","environment","redirectURL","clientId","scopeId","button","referenceId","TxVariants","cashapp","defaultProps"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- var e;!function(e){e.CustomerDismissed="CUSTOMER_DISMISSED",e.CustomerRequestApproved="CUSTOMER_REQUEST_APPROVED",e.CustomerRequestDeclined="CUSTOMER_REQUEST_DECLINED",e.CustomerRequestFailed="CUSTOMER_REQUEST_FAILED"}(e||(e={}));export{e as CashAppPayEvents};
1
+ var e=function(e){return e.CustomerDismissed="CUSTOMER_DISMISSED",e.CustomerRequestApproved="CUSTOMER_REQUEST_APPROVED",e.CustomerRequestDeclined="CUSTOMER_REQUEST_DECLINED",e.CustomerRequestFailed="CUSTOMER_REQUEST_FAILED",e}({});export{e as CashAppPayEvents};
2
2
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sources":["../../../../../src/components/CashAppPay/services/types.ts"],"sourcesContent":["import { PaymentAmount } from '../../../types/global-types';\n\nexport interface ICashAppWindowObject {\n pay({ clientId }: { clientId: string }): Promise<ICashAppSDK>;\n}\n\n/**\n * https://developers.cash.app/docs/api/technical-documentation/sdks/pay-kit/technical-reference\n */\nexport interface ICashAppSDK {\n render(target: string | HTMLElement, options?: any): Promise<{ begin?: () => void }>;\n addEventListener(eventType: CashAppPayEvents, callback: Function): void;\n removeEventListener(eventType: CashAppPayEvents, callback: Function): void;\n customerRequest(customerRequest: any): Promise<void>;\n restart(): Promise<void>;\n}\n\nexport enum CashAppPayEvents {\n CustomerDismissed = 'CUSTOMER_DISMISSED',\n CustomerRequestApproved = 'CUSTOMER_REQUEST_APPROVED',\n CustomerRequestDeclined = 'CUSTOMER_REQUEST_DECLINED',\n CustomerRequestFailed = 'CUSTOMER_REQUEST_FAILED'\n}\n\nexport interface ICashAppService {\n begin(): void;\n initialize(): Promise<void>;\n setStorePaymentMethod(store: boolean): void;\n renderButton(target: HTMLElement): Promise<void>;\n restart(): Promise<void>;\n createCustomerRequest(): Promise<void>;\n subscribeToEvent(eventType: CashAppPayEvents, callback: Function): Function;\n}\n\nexport type CashAppServiceConfig = {\n useCashAppButtonUi: boolean;\n storePaymentMethod: boolean;\n environment: string;\n clientId: string;\n scopeId: string;\n amount: PaymentAmount;\n referenceId?: string;\n redirectURL?: string;\n button?: {\n shape?: 'semiround' | 'round';\n size?: 'medium' | 'small';\n theme?: 'dark' | 'light';\n width?: 'static' | 'full';\n };\n};\n"],"names":["CashAppPayEvents"],"mappings":"OAiBYA,SAAAA,0MAAAA,CAAAA,IAAAA,EAAAA,CAAAA"}
1
+ {"version":3,"file":"types.js","sources":["../../../../../src/components/CashAppPay/services/types.ts"],"sourcesContent":["import { PaymentAmount } from '../../../types/global-types';\n\nexport interface ICashAppWindowObject {\n pay({ clientId }: { clientId: string }): Promise<ICashAppSDK>;\n}\n\n/**\n * https://developers.cash.app/docs/api/technical-documentation/sdks/pay-kit/technical-reference\n */\nexport interface ICashAppSDK {\n render(target: string | HTMLElement, options?: any): Promise<{ begin?: () => void }>;\n addEventListener(eventType: CashAppPayEvents, callback: Function): void;\n removeEventListener(eventType: CashAppPayEvents, callback: Function): void;\n customerRequest(customerRequest: any): Promise<void>;\n restart(): Promise<void>;\n}\n\nexport enum CashAppPayEvents {\n CustomerDismissed = 'CUSTOMER_DISMISSED',\n CustomerRequestApproved = 'CUSTOMER_REQUEST_APPROVED',\n CustomerRequestDeclined = 'CUSTOMER_REQUEST_DECLINED',\n CustomerRequestFailed = 'CUSTOMER_REQUEST_FAILED'\n}\n\nexport interface ICashAppService {\n begin(): void;\n initialize(): Promise<void>;\n setStorePaymentMethod(store: boolean): void;\n renderButton(target: HTMLElement): Promise<void>;\n restart(): Promise<void>;\n createCustomerRequest(): Promise<void>;\n subscribeToEvent(eventType: CashAppPayEvents, callback: Function): Function;\n}\n\nexport type CashAppServiceConfig = {\n useCashAppButtonUi: boolean;\n storePaymentMethod: boolean;\n environment: string;\n clientId: string;\n scopeId: string;\n amount: PaymentAmount;\n referenceId?: string;\n redirectURL?: string;\n button?: {\n shape?: 'semiround' | 'round';\n size?: 'medium' | 'small';\n theme?: 'dark' | 'light';\n width?: 'static' | 'full';\n };\n};\n"],"names":["CashAppPayEvents"],"mappings":"AAiBO,IAAAA,EAAKA,SAAAA,GAAAA,8MAAAA,CAKX,CALWA,CAKX,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"CustomCard.js","sources":["../../../../src/components/CustomCard/CustomCard.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement';\nimport CustomCardInput from './CustomCardInput';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport collectBrowserInfo from '../../utils/browserInfo';\nimport triggerBinLookUp from '../internal/SecuredFields/binLookup/triggerBinLookUp';\nimport { CbObjOnBinLookup, CbObjOnFocus } from '../internal/SecuredFields/lib/types';\nimport { BrandObject } from '../Card/types';\nimport { getCardImageUrl, fieldTypeToSnakeCase } from '../internal/SecuredFields/utils';\nimport { TxVariants } from '../tx-variants';\nimport { CustomCardConfiguration } from './types';\nimport { ANALYTICS_FOCUS_STR, ANALYTICS_UNFOCUS_STR } from '../../core/Analytics/constants';\nimport { SendAnalyticsObject } from '../../core/Analytics/types';\n\n// TODO questions about\n// brand - does a merchant ever make a custom stored card?\n// type\n// countryCode\n\nexport class CustomCard extends UIElement<CustomCardConfiguration> {\n public static type = TxVariants.customCard;\n\n public static analyticsType = 'custom-scheme';\n\n protected static defaultProps = {\n onBinLookup: () => {},\n brandsConfiguration: {}\n };\n\n formatProps(props: CustomCardConfiguration) {\n return {\n ...props,\n type: TxVariants.customCard,\n brand: TxVariants.card\n };\n }\n\n /**\n * Formats the component data output\n */\n formatData() {\n const sfBrand = this.state.selectedBrandValue;\n return {\n paymentMethod: {\n type: 'scheme',\n ...this.state.data,\n ...(sfBrand && { brand: sfBrand })\n },\n browserInfo: this.browserInfo,\n origin: !!window && window.location.origin\n };\n }\n\n protected submitAnalytics(analyticsObj: SendAnalyticsObject) {\n super.submitAnalytics(analyticsObj, this.props);\n }\n\n updateStyles(stylesObj) {\n if (this.componentRef?.updateStyles) this.componentRef.updateStyles(stylesObj);\n return this;\n }\n\n setFocusOn(frame) {\n if (this.componentRef?.setFocusOn) this.componentRef.setFocusOn(frame);\n return this;\n }\n\n processBinLookupResponse(binLookupResponse) {\n if (this.componentRef?.processBinLookupResponse) this.componentRef.processBinLookupResponse(binLookupResponse);\n return this;\n }\n\n dualBrandingChangeHandler(e: Event | string) {\n if (this.componentRef?.dualBrandingChangeHandler) this.componentRef.dualBrandingChangeHandler(e);\n return this;\n }\n\n handleUnsupportedCard(errObj) {\n if (this.componentRef?.handleUnsupportedCard) this.componentRef.handleUnsupportedCard(errObj);\n return this;\n }\n\n onBinLookup(obj: CbObjOnBinLookup) {\n const nuObj = { ...obj };\n nuObj.rootNode = this._node;\n\n if (!nuObj.isReset) {\n // Add brandImage urls, first checking if the merchant has configured their own one for the brand\n nuObj.supportedBrandsRaw = obj.supportedBrandsRaw?.map((item: BrandObject) => {\n item.brandImageUrl = this.props.brandsConfiguration[item.brand]?.icon ?? getCardImageUrl(item.brand, this.resources);\n return item;\n });\n }\n\n this.props.onBinLookup(nuObj);\n }\n\n public onBinValue = triggerBinLookUp(this);\n\n get isValid() {\n return !!this.state.isValid;\n }\n\n get browserInfo() {\n return collectBrowserInfo();\n }\n\n private onFocus = (obj: CbObjOnFocus) => {\n this.submitAnalytics({\n type: obj.focus === true ? ANALYTICS_FOCUS_STR : ANALYTICS_UNFOCUS_STR,\n target: fieldTypeToSnakeCase(obj.fieldType)\n });\n\n // Call merchant defined callback\n this.props.onFocus?.(obj);\n };\n\n protected onEnterKeyPressed = (activeElement: Element, component: UIElement) => {\n this.props.onEnterKeyPressed?.(activeElement, component);\n };\n\n render() {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <CustomCardInput\n ref={ref => {\n this.componentRef = ref;\n }}\n {...this.props}\n {...this.state}\n handleKeyPress={this.handleKeyPress}\n rootNode={this._node}\n onChange={this.setState}\n onBinValue={this.onBinValue}\n implementationType={'custom'}\n resources={this.resources}\n brand={this.props.brand}\n onFocus={this.onFocus}\n />\n </CoreProvider>\n );\n }\n}\n\nexport default CustomCard;\n"],"names":["CustomCard","UIElement","formatProps","props","_object_spread_props","type","TxVariants","customCard","brand","card","formatData","sfBrand","this","state","selectedBrandValue","paymentMethod","_object_spread","data","browserInfo","origin","window","location","submitAnalytics","analyticsObj","super","updateStyles","stylesObj","_this_componentRef","componentRef","setFocusOn","frame","processBinLookupResponse","binLookupResponse","dualBrandingChangeHandler","e","handleUnsupportedCard","errObj","onBinLookup","obj","nuObj","rootNode","_node","isReset","supportedBrandsRaw","map","item","_this_props_brandsConfiguration_item_brand","_this_props_brandsConfiguration_item_brand_icon","brandImageUrl","brandsConfiguration","icon","getCardImageUrl","resources","isValid","collectBrowserInfo","render","h","CoreProvider","i18n","loadingContext","CustomCardInput","ref","handleKeyPress","onChange","setState","onBinValue","implementationType","onFocus","_define_property","triggerBinLookUp","_this_props_onFocus","_this_props","focus","ANALYTICS_FOCUS_STR","ANALYTICS_UNFOCUS_STR","target","fieldTypeToSnakeCase","fieldType","call","onEnterKeyPressed","activeElement","component","_this_props_onEnterKeyPressed","analyticsType","defaultProps"],"mappings":"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"}
1
+ {"version":3,"file":"CustomCard.js","sources":["../../../../src/components/CustomCard/CustomCard.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement';\nimport CustomCardInput from './CustomCardInput';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport collectBrowserInfo from '../../utils/browserInfo';\nimport triggerBinLookUp from '../internal/SecuredFields/binLookup/triggerBinLookUp';\nimport { CbObjOnBinLookup, CbObjOnFocus } from '../internal/SecuredFields/lib/types';\nimport { BrandObject } from '../Card/types';\nimport { getCardImageUrl, fieldTypeToSnakeCase } from '../internal/SecuredFields/utils';\nimport { TxVariants } from '../tx-variants';\nimport { CustomCardConfiguration } from './types';\nimport { ANALYTICS_FOCUS_STR, ANALYTICS_UNFOCUS_STR } from '../../core/Analytics/constants';\nimport { SendAnalyticsObject } from '../../core/Analytics/types';\n\n// TODO questions about\n// brand - does a merchant ever make a custom stored card?\n// type\n// countryCode\n\nexport class CustomCard extends UIElement<CustomCardConfiguration> {\n public static type = TxVariants.customCard;\n\n public static analyticsType = 'custom-scheme';\n\n protected static defaultProps = {\n onBinLookup: () => {},\n brandsConfiguration: {}\n };\n\n formatProps(props: CustomCardConfiguration) {\n return {\n ...props,\n type: TxVariants.customCard,\n brand: TxVariants.card\n };\n }\n\n /**\n * Formats the component data output\n */\n formatData() {\n const sfBrand = this.state.selectedBrandValue;\n return {\n paymentMethod: {\n type: 'scheme',\n ...this.state.data,\n ...(sfBrand && { brand: sfBrand })\n },\n browserInfo: this.browserInfo,\n origin: !!window && window.location.origin\n };\n }\n\n protected submitAnalytics(analyticsObj: SendAnalyticsObject) {\n super.submitAnalytics(analyticsObj, this.props);\n }\n\n updateStyles(stylesObj) {\n if (this.componentRef?.updateStyles) this.componentRef.updateStyles(stylesObj);\n return this;\n }\n\n setFocusOn(frame) {\n if (this.componentRef?.setFocusOn) this.componentRef.setFocusOn(frame);\n return this;\n }\n\n processBinLookupResponse(binLookupResponse) {\n if (this.componentRef?.processBinLookupResponse) this.componentRef.processBinLookupResponse(binLookupResponse);\n return this;\n }\n\n dualBrandingChangeHandler(e: Event | string) {\n if (this.componentRef?.dualBrandingChangeHandler) this.componentRef.dualBrandingChangeHandler(e);\n return this;\n }\n\n handleUnsupportedCard(errObj) {\n if (this.componentRef?.handleUnsupportedCard) this.componentRef.handleUnsupportedCard(errObj);\n return this;\n }\n\n onBinLookup(obj: CbObjOnBinLookup) {\n const nuObj = { ...obj };\n nuObj.rootNode = this._node;\n\n if (!nuObj.isReset) {\n // Add brandImage urls, first checking if the merchant has configured their own one for the brand\n nuObj.supportedBrandsRaw = obj.supportedBrandsRaw?.map((item: BrandObject) => {\n item.brandImageUrl = this.props.brandsConfiguration[item.brand]?.icon ?? getCardImageUrl(item.brand, this.resources);\n return item;\n });\n }\n\n this.props.onBinLookup(nuObj);\n }\n\n public onBinValue = triggerBinLookUp(this);\n\n get isValid() {\n return !!this.state.isValid;\n }\n\n get browserInfo() {\n return collectBrowserInfo();\n }\n\n private onFocus = (obj: CbObjOnFocus) => {\n this.submitAnalytics({\n type: obj.focus === true ? ANALYTICS_FOCUS_STR : ANALYTICS_UNFOCUS_STR,\n target: fieldTypeToSnakeCase(obj.fieldType)\n });\n\n // Call merchant defined callback\n this.props.onFocus?.(obj);\n };\n\n protected onEnterKeyPressed = (activeElement: Element, component: UIElement) => {\n this.props.onEnterKeyPressed?.(activeElement, component);\n };\n\n render() {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <CustomCardInput\n ref={ref => {\n this.componentRef = ref;\n }}\n {...this.props}\n {...this.state}\n handleKeyPress={this.handleKeyPress}\n rootNode={this._node}\n onChange={this.setState}\n onBinValue={this.onBinValue}\n implementationType={'custom'}\n resources={this.resources}\n brand={this.props.brand}\n onFocus={this.onFocus}\n />\n </CoreProvider>\n );\n }\n}\n\nexport default CustomCard;\n"],"names":["CustomCard","UIElement","formatProps","props","_object_spread_props","type","TxVariants","customCard","brand","card","formatData","sfBrand","this","state","selectedBrandValue","paymentMethod","_object_spread","data","browserInfo","origin","window","location","submitAnalytics","analyticsObj","super","updateStyles","stylesObj","_this_componentRef","componentRef","setFocusOn","frame","processBinLookupResponse","binLookupResponse","dualBrandingChangeHandler","e","handleUnsupportedCard","errObj","onBinLookup","obj","nuObj","rootNode","_node","isReset","supportedBrandsRaw","map","item","_this_props_brandsConfiguration_item_brand","_this_props_brandsConfiguration_item_brand_icon","brandImageUrl","brandsConfiguration","icon","getCardImageUrl","resources","isValid","collectBrowserInfo","render","h","CoreProvider","i18n","loadingContext","CustomCardInput","ref","handleKeyPress","onChange","setState","onBinValue","implementationType","onFocus","args","_define_property","triggerBinLookUp","_this_props_onFocus","_this_props","focus","ANALYTICS_FOCUS_STR","ANALYTICS_UNFOCUS_STR","target","fieldTypeToSnakeCase","fieldType","call","onEnterKeyPressed","activeElement","component","_this_props_onEnterKeyPressed","analyticsType","defaultProps"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{createElement as a}from"../../../external/preact/dist/preact.js";import e from"../../internal/Img/Img.js";function c({logoUrl:c="",nonprofitDescription:n="",nonprofitName:t="",causeName:i="",nonprofitUrl:o="",bannerUrl:r=""}){return a("div",{className:"adyen-checkout__campaign-container"},a(e,{className:"adyen-checkout__campaign-background-image",style:{backgroundImage:`linear-gradient(0, #000, #0003), url(${r})`},backgroundUrl:r}),a("div",{className:"adyen-checkout__campaign-content"},c&&a("img",{src:c,className:"adyen-checkout__campaign-logo",alt:t}),t&&a("div",{className:"adyen-checkout__campaign-title"},t),i&&a("div",{className:"adyen-checkout__campaign-cause"},i),n&&a("div",{className:"adyen-checkout__campaign-description"},n,o&&" ›")))}export{c as default};
1
+ import{createElement as e}from"../../../external/preact/dist/preact.js";import a from"./CampaignInfo.js";function n({logoUrl:n="",nonprofitDescription:r="",nonprofitName:o="",causeName:t="",nonprofitUrl:c="",bannerUrl:i=""}){return e("div",{className:"adyen-checkout__campaign"},c?e("a",{href:c,className:"adyen-checkout__campaign-link",target:"_blank",rel:"noopener noreferrer"},e(a,{logoUrl:n,nonprofitName:o,causeName:t,bannerUrl:i})):e(a,{logoUrl:n,nonprofitName:o,causeName:t,bannerUrl:i}),r&&e("div",{className:"adyen-checkout__campaign-description"},r))}export{n as default};
2
2
  //# sourceMappingURL=CampaignContent.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CampaignContent.js","sources":["../../../../../src/components/Donation/components/CampaignContent.tsx"],"sourcesContent":["import { h } from 'preact';\nimport Img from '../../internal/Img';\n\nexport interface CampaignContentProps {\n logoUrl?: string;\n nonprofitDescription?: string;\n nonprofitName?: string;\n causeName?: string;\n nonprofitUrl?: string;\n bannerUrl?: string;\n}\n\nexport default function CampaignContent({\n logoUrl = '',\n nonprofitDescription = '',\n nonprofitName = '',\n causeName = '',\n nonprofitUrl = '',\n bannerUrl = ''\n}: CampaignContentProps) {\n const backgroundImage = `linear-gradient(0, #000, #0003), url(${bannerUrl})`;\n\n return (\n <div className=\"adyen-checkout__campaign-container\">\n <Img className=\"adyen-checkout__campaign-background-image\" style={{ backgroundImage }} backgroundUrl={bannerUrl} />\n\n <div className=\"adyen-checkout__campaign-content\">\n {logoUrl && <img src={logoUrl} className=\"adyen-checkout__campaign-logo\" alt={nonprofitName} />}\n {nonprofitName && <div className=\"adyen-checkout__campaign-title\">{nonprofitName}</div>}\n {causeName && <div className=\"adyen-checkout__campaign-cause\">{causeName}</div>}\n {nonprofitDescription && (\n <div className=\"adyen-checkout__campaign-description\">\n {nonprofitDescription}\n {nonprofitUrl && ' ›'}\n </div>\n )}\n </div>\n </div>\n );\n}\n"],"names":["CampaignContent","logoUrl","nonprofitDescription","nonprofitName","causeName","nonprofitUrl","bannerUrl","h","div","className","Img","style","backgroundImage","backgroundUrl","img","src","alt"],"mappings":"iHAYe,SAASA,GAAgBC,QACpCA,EAAU,GAAEC,qBACZA,EAAuB,GAAEC,cACzBA,EAAgB,GAAEC,UAClBA,EAAY,GAAEC,aACdA,EAAe,GAAEC,UACjBA,EAAY,KAIZ,OACIC,EAACC,MAAAA,CAAIC,UAAU,sCACXF,EAACG,EAAAA,CAAID,UAAU,4CAA4CE,MAAO,CAAEC,gBAJpD,wCAAwCN,MAI+BO,cAAeP,IAEtGC,EAACC,MAAAA,CAAIC,UAAU,oCACVR,GAAWM,EAACO,MAAAA,CAAIC,IAAKd,EAASQ,UAAU,gCAAgCO,IAAKb,IAC7EA,GAAiBI,EAACC,MAAAA,CAAIC,UAAU,kCAAkCN,GAClEC,GAAaG,EAACC,MAAAA,CAAIC,UAAU,kCAAkCL,GAC9DF,GACGK,EAACC,MAAAA,CAAIC,UAAU,wCACVP,EACAG,GAAgB,OAMzC"}
1
+ {"version":3,"file":"CampaignContent.js","sources":["../../../../../src/components/Donation/components/CampaignContent.tsx"],"sourcesContent":["import { h } from 'preact';\nimport CampaignInfo from './CampaignInfo';\n\nexport interface CampaignContentProps {\n logoUrl?: string;\n nonprofitDescription?: string;\n nonprofitName?: string;\n causeName?: string;\n nonprofitUrl?: string;\n bannerUrl?: string;\n}\n\nexport default function CampaignContent({\n logoUrl = '',\n nonprofitDescription = '',\n nonprofitName = '',\n causeName = '',\n nonprofitUrl = '',\n bannerUrl = ''\n}: CampaignContentProps) {\n return (\n <div className=\"adyen-checkout__campaign\">\n {nonprofitUrl ? (\n <a href={nonprofitUrl} className=\"adyen-checkout__campaign-link\" target=\"_blank\" rel=\"noopener noreferrer\">\n <CampaignInfo logoUrl={logoUrl} nonprofitName={nonprofitName} causeName={causeName} bannerUrl={bannerUrl} />\n </a>\n ) : (\n <CampaignInfo logoUrl={logoUrl} nonprofitName={nonprofitName} causeName={causeName} bannerUrl={bannerUrl} />\n )}\n\n {nonprofitDescription && <div className=\"adyen-checkout__campaign-description\">{nonprofitDescription}</div>}\n </div>\n );\n}\n"],"names":["CampaignContent","logoUrl","nonprofitDescription","nonprofitName","causeName","nonprofitUrl","bannerUrl","h","div","className","a","href","target","rel","CampaignInfo"],"mappings":"yGAYe,SAASA,GAAgBC,QACpCA,EAAU,GAAEC,qBACZA,EAAuB,GAAEC,cACzBA,EAAgB,GAAEC,UAClBA,EAAY,GAAEC,aACdA,EAAe,GAAEC,UACjBA,EAAY,KAEZ,OACIC,EAACC,MAAAA,CAAIC,UAAU,4BACVJ,EACGE,EAACG,IAAAA,CAAEC,KAAMN,EAAcI,UAAU,gCAAgCG,OAAO,SAASC,IAAI,uBACjFN,EAACO,EAAAA,CAAab,QAASA,EAASE,cAAeA,EAAeC,UAAWA,EAAWE,UAAWA,KAGnGC,EAACO,EAAAA,CAAab,QAASA,EAASE,cAAeA,EAAeC,UAAWA,EAAWE,UAAWA,IAGlGJ,GAAwBK,EAACC,MAAAA,CAAIC,UAAU,wCAAwCP,GAG5F"}
@@ -0,0 +1,2 @@
1
+ import{createElement as a,Fragment as e}from"../../../external/preact/dist/preact.js";import c from"../../internal/Img/Img.js";function n({logoUrl:n="",nonprofitName:t="",causeName:m="",bannerUrl:r=""}){return a(e,null,a(c,{className:"adyen-checkout__campaign-background-image",style:{backgroundImage:`url(${r})`},backgroundUrl:r}),a("div",{className:"adyen-checkout__campaign-content"},n&&a("img",{src:n,className:"adyen-checkout__campaign-logo",alt:t}),a("div",null,t&&a("div",{className:"adyen-checkout__campaign-title"},t),m&&a("div",{className:"adyen-checkout__campaign-cause"},m))))}export{n as default};
2
+ //# sourceMappingURL=CampaignInfo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CampaignInfo.js","sources":["../../../../../src/components/Donation/components/CampaignInfo.tsx"],"sourcesContent":["import { Fragment, h } from 'preact';\nimport Img from '../../internal/Img';\n\nexport interface CampaignInfoProps {\n logoUrl?: string;\n nonprofitName?: string;\n causeName?: string;\n bannerUrl?: string;\n}\n\nexport default function CampaignInfo({ logoUrl = '', nonprofitName = '', causeName = '', bannerUrl = '' }: CampaignInfoProps) {\n const backgroundImage = `url(${bannerUrl})`;\n\n return (\n <Fragment>\n <Img className=\"adyen-checkout__campaign-background-image\" style={{ backgroundImage }} backgroundUrl={bannerUrl} />\n\n <div className=\"adyen-checkout__campaign-content\">\n {logoUrl && <img src={logoUrl} className=\"adyen-checkout__campaign-logo\" alt={nonprofitName} />}\n <div>\n {nonprofitName && <div className=\"adyen-checkout__campaign-title\">{nonprofitName}</div>}\n {causeName && <div className=\"adyen-checkout__campaign-cause\">{causeName}</div>}\n </div>\n </div>\n </Fragment>\n );\n}\n"],"names":["CampaignInfo","logoUrl","nonprofitName","causeName","bannerUrl","h","Fragment","Img","className","style","backgroundImage","backgroundUrl","div","img","src","alt"],"mappings":"+HAUe,SAASA,GAAaC,QAAEA,EAAU,GAAEC,cAAEA,EAAgB,GAAEC,UAAEA,EAAY,GAAEC,UAAEA,EAAY,KAGjG,OACIC,EAACC,OACGD,EAACE,EAAAA,CAAIC,UAAU,4CAA4CC,MAAO,CAAEC,gBAJpD,OAAON,MAIgEO,cAAeP,IAEtGC,EAACO,MAAAA,CAAIJ,UAAU,oCACVP,GAAWI,EAACQ,MAAAA,CAAIC,IAAKb,EAASO,UAAU,gCAAgCO,IAAKb,IAC9EG,EAACO,MAAAA,KACIV,GAAiBG,EAACO,MAAAA,CAAIJ,UAAU,kCAAkCN,GAClEC,GAAaE,EAACO,MAAAA,CAAIJ,UAAU,kCAAkCL,KAKnF"}
@@ -1,2 +1,2 @@
1
- import{createElement as e}from"../../../external/preact/dist/preact.js";import{useState as t,useEffect as n}from"../../../external/preact/hooks/dist/hooks.js";import o from"./CampaignContainer.js";import r from"../../internal/Button/Button.js";import a from"../../internal/Img/Img.js";import{useCoreContext as s}from"../../../core/Context/CoreProvider.js";import c from"../../internal/DisclaimerMessage/DisclaimerMessage.js";import u from"../../../core/Context/useImage.js";import i from"./FixedAmounts.js";import m from"./Roundup.js";import{getRoundupAmount as l,getRoundupAmountLabel as d,getAmountLabel as p}from"./utils.js";function g(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function y(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 f(f){const{donation:_,commercialTxAmount:h,onCancel:j,onDonate:b,showCancelButton:v=!0,termsAndConditionsUrl:O}=f,{i18n:k}=s(),C=u(),{currency:w,type:P}=_,x="roundup"===P,[A,D]=t("ready"),[N,S]=t(x),[B,F]=t({currency:w,value:x?l(_.maxRoundupAmount,h):null});this.setStatus=e=>{D(e)};const E=()=>{D("loading"),b({data:{amount:B}})};return n((()=>{f.onChange({data:{amount:B},isValid:N})}),[B,N]),"error"===A?e("div",{className:"adyen-checkout__adyen-giving"},e(a,{className:"adyen-checkout__status__icon adyen-checkout__status__icon--error",src:C({imageFolder:"components/"})("error"),alt:k.get("error.message.unknown")}),e("div",{className:"adyen-checkout__status__text"},k.get("error.message.unknown"))):"success"===A?e("div",{className:"adyen-checkout__adyen-giving"},e(a,{className:"adyen-checkout__status__icon adyen-checkout__status__icon--success",src:C({imageFolder:"components/"})("heart"),alt:k.get("thanksForYourSupport")}),e("div",{className:"adyen-checkout__status__text"},k.get("thanksForYourSupport"))):e("div",{className:"adyen-checkout__adyen-giving"},e(o,f),e("div",{className:"adyen-checkout__adyen-giving-actions"},O&&e(c,{message:k.get("donationTermsCondition"),urls:[O]}),x?e(m,{donationAmount:d(k,{maxRoundupAmount:_.maxRoundupAmount,commercialTxAmount:h,currency:w}),originalPaymentAmount:p(k,{value:h,currency:w}),status:A,onDonateButtonClicked:E}):e(i,{selectedAmount:B.value,values:_.values,currency:w,status:A,onAmountSelected:({target:e})=>{const t=parseInt(e.value,10);S(!0),F((e=>y(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){g(e,t,n[t])}))}return e}({},e),{value:t})))},onDonateButtonClicked:E}),v&&e(r,{classNameModifiers:["decline"],variant:"ghost",onClick:()=>{D("ready"),j({data:{amount:B},isValid:N})},disabled:"loading"===A,label:`${k.get("notNowButton")} ›`})))}f.defaultProps={onCancel:()=>{},onChange:()=>{},onDonate:()=>{},donation:{},showCancelButton:!0};export{f as default};
1
+ import{createElement as e}from"../../../external/preact/dist/preact.js";import{useState as t,useEffect as n}from"../../../external/preact/hooks/dist/hooks.js";import o from"./CampaignContent.js";import r from"../../internal/Button/Button.js";import a from"../../internal/Img/Img.js";import{useCoreContext as s}from"../../../core/Context/CoreProvider.js";import c from"../../internal/DisclaimerMessage/DisclaimerMessage.js";import u from"../../../core/Context/useImage.js";import i from"./FixedAmounts.js";import m from"./Roundup.js";import{getRoundupAmount as l,getRoundupAmountLabel as d,getAmountLabel as p}from"./utils.js";function g(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function y(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 f(f){const{donation:_,commercialTxAmount:h,onCancel:j,onDonate:b,showCancelButton:v=!0,termsAndConditionsUrl:O}=f,{i18n:k}=s(),C=u(),{currency:w,type:P}=_,x="roundup"===P,[A,D]=t("ready"),[N,S]=t(x),[B,F]=t({currency:w,value:x?l(_.maxRoundupAmount,h):null});this.setStatus=e=>{D(e)};const E=()=>{D("loading"),b({data:{amount:B}})};return n((()=>{f.onChange({data:{amount:B},isValid:N})}),[B,N]),"error"===A?e("div",{className:"adyen-checkout__adyen-giving"},e(a,{className:"adyen-checkout__status__icon adyen-checkout__status__icon--error",src:C({imageFolder:"components/"})("error"),alt:k.get("error.message.unknown")}),e("div",{className:"adyen-checkout__status__text"},k.get("error.message.unknown"))):"success"===A?e("div",{className:"adyen-checkout__adyen-giving"},e(a,{className:"adyen-checkout__status__icon adyen-checkout__status__icon--success",src:C({imageFolder:"components/"})("heart"),alt:k.get("thanksForYourSupport")}),e("div",{className:"adyen-checkout__status__text"},k.get("thanksForYourSupport"))):e("div",{className:"adyen-checkout__adyen-giving"},e(o,f),e("div",{className:"adyen-checkout__adyen-giving-actions"},O&&e(c,{message:k.get("donationTermsCondition"),urls:[O]}),x?e(m,{donationAmount:d(k,{maxRoundupAmount:_.maxRoundupAmount,commercialTxAmount:h,currency:w}),originalPaymentAmount:p(k,{value:h,currency:w}),status:A,onDonateButtonClicked:E}):e(i,{selectedAmount:B.value,values:_.values,currency:w,status:A,onAmountSelected:({target:e})=>{const t=parseInt(e.value,10);S(!0),F((e=>y(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){g(e,t,n[t])}))}return e}({},e),{value:t})))},onDonateButtonClicked:E}),v&&e(r,{classNameModifiers:["decline"],variant:"ghost",onClick:()=>{D("ready"),j({data:{amount:B},isValid:N})},disabled:"loading"===A,label:`${k.get("notNowButton")} ›`})))}f.defaultProps={onCancel:()=>{},onChange:()=>{},onDonate:()=>{},donation:{},showCancelButton:!0};export{f as default};
2
2
  //# sourceMappingURL=DonationComponent.js.map