@adyen/adyen-web 6.24.0 → 6.25.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 (76) hide show
  1. package/dist/cjs/adyen.css +13 -12
  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 +215 -4
  6. package/dist/es/adyen.css +13 -12
  7. package/dist/es/adyen.css.map +1 -1
  8. package/dist/es/components/ANCV/ANCV.js +1 -1
  9. package/dist/es/components/ANCV/ANCV.js.map +1 -1
  10. package/dist/es/components/Blik/Blik.js +1 -1
  11. package/dist/es/components/Blik/Blik.js.map +1 -1
  12. package/dist/es/components/Card/components/CardInput/components/StoredCardFields.js.map +1 -1
  13. package/dist/es/components/Giftcard/Giftcard.js +1 -1
  14. package/dist/es/components/Giftcard/Giftcard.js.map +1 -1
  15. package/dist/es/components/Giftcard/components/GiftcardComponent.js +1 -1
  16. package/dist/es/components/Giftcard/components/GiftcardComponent.js.map +1 -1
  17. package/dist/es/components/MBWay/MBWay.js +1 -1
  18. package/dist/es/components/MBWay/MBWay.js.map +1 -1
  19. package/dist/es/components/PayByBankPix/components/Enrollment/components/PayByBankPixAwait.js.map +1 -1
  20. package/dist/es/components/PayTo/PayTo.js +1 -1
  21. package/dist/es/components/PayTo/PayTo.js.map +1 -1
  22. package/dist/es/components/Pix/Pix.js +1 -1
  23. package/dist/es/components/Pix/Pix.js.map +1 -1
  24. package/dist/es/components/PreAuthorizedDebitCanada/components/SettlementInfo.js +1 -1
  25. package/dist/es/components/PreAuthorizedDebitCanada/components/SettlementInfo.js.map +1 -1
  26. package/dist/es/components/UPI/UPI.js +1 -1
  27. package/dist/es/components/UPI/UPI.js.map +1 -1
  28. package/dist/es/components/helpers/QRLoaderContainer/QRLoaderContainer.js +1 -1
  29. package/dist/es/components/helpers/QRLoaderContainer/QRLoaderContainer.js.map +1 -1
  30. package/dist/es/components/internal/Await/Await.js +1 -1
  31. package/dist/es/components/internal/Await/Await.js.map +1 -1
  32. package/dist/es/components/internal/Button/Button.js.map +1 -1
  33. package/dist/es/components/internal/QRLoader/QRLoader.js +1 -1
  34. package/dist/es/components/internal/QRLoader/QRLoader.js.map +1 -1
  35. package/dist/es/components/internal/QRLoader/components/QRCountdown.js +1 -1
  36. package/dist/es/components/internal/QRLoader/components/QRCountdown.js.map +1 -1
  37. package/dist/es/components/internal/QRLoader/components/QRFinalState.js +2 -0
  38. package/dist/es/components/internal/QRLoader/components/QRFinalState.js.map +1 -0
  39. package/dist/es/core/config.js +1 -1
  40. package/dist/es/index.d.ts +215 -4
  41. package/dist/es-legacy/adyen.css +13 -12
  42. package/dist/es-legacy/adyen.css.map +1 -1
  43. package/dist/es-legacy/components/ANCV/ANCV.js +1 -1
  44. package/dist/es-legacy/components/ANCV/ANCV.js.map +1 -1
  45. package/dist/es-legacy/components/Blik/Blik.js +1 -1
  46. package/dist/es-legacy/components/Blik/Blik.js.map +1 -1
  47. package/dist/es-legacy/components/Card/components/CardInput/components/StoredCardFields.js.map +1 -1
  48. package/dist/es-legacy/components/Giftcard/Giftcard.js +1 -1
  49. package/dist/es-legacy/components/Giftcard/Giftcard.js.map +1 -1
  50. package/dist/es-legacy/components/Giftcard/components/GiftcardComponent.js +1 -1
  51. package/dist/es-legacy/components/Giftcard/components/GiftcardComponent.js.map +1 -1
  52. package/dist/es-legacy/components/MBWay/MBWay.js +1 -1
  53. package/dist/es-legacy/components/MBWay/MBWay.js.map +1 -1
  54. package/dist/es-legacy/components/PayByBankPix/components/Enrollment/components/PayByBankPixAwait.js.map +1 -1
  55. package/dist/es-legacy/components/PayTo/PayTo.js +1 -1
  56. package/dist/es-legacy/components/PayTo/PayTo.js.map +1 -1
  57. package/dist/es-legacy/components/Pix/Pix.js +1 -1
  58. package/dist/es-legacy/components/Pix/Pix.js.map +1 -1
  59. package/dist/es-legacy/components/PreAuthorizedDebitCanada/components/SettlementInfo.js +1 -1
  60. package/dist/es-legacy/components/PreAuthorizedDebitCanada/components/SettlementInfo.js.map +1 -1
  61. package/dist/es-legacy/components/UPI/UPI.js +1 -1
  62. package/dist/es-legacy/components/UPI/UPI.js.map +1 -1
  63. package/dist/es-legacy/components/helpers/QRLoaderContainer/QRLoaderContainer.js +1 -1
  64. package/dist/es-legacy/components/helpers/QRLoaderContainer/QRLoaderContainer.js.map +1 -1
  65. package/dist/es-legacy/components/internal/Await/Await.js +1 -1
  66. package/dist/es-legacy/components/internal/Await/Await.js.map +1 -1
  67. package/dist/es-legacy/components/internal/Button/Button.js.map +1 -1
  68. package/dist/es-legacy/components/internal/QRLoader/QRLoader.js +1 -1
  69. package/dist/es-legacy/components/internal/QRLoader/QRLoader.js.map +1 -1
  70. package/dist/es-legacy/components/internal/QRLoader/components/QRCountdown.js +1 -1
  71. package/dist/es-legacy/components/internal/QRLoader/components/QRCountdown.js.map +1 -1
  72. package/dist/es-legacy/components/internal/QRLoader/components/QRFinalState.js +2 -0
  73. package/dist/es-legacy/components/internal/QRLoader/components/QRFinalState.js.map +1 -0
  74. package/dist/es-legacy/core/config.js +1 -1
  75. package/package.json +3 -3
  76. package/styles/adyen.css +13 -12
@@ -1,2 +1,2 @@
1
- import{createElement as t}from"../../external/preact/dist/preact.js";import{UIElement as e}from"../internal/UIElement/UIElement.js";import r from"./components/ANCVInput.js";import{CoreProvider as s}from"../../core/Context/CoreProvider.js";import o from"./components/ANCVAwait/config.js";import n from"../internal/Await/Await.js";import i from"../../core/Errors/SRPanelProvider.js";import a from"../../core/Errors/AdyenCheckoutError.js";import p from"../internal/PayButton/PayButton.js";import{sanitizeResponse as h,verifyPaymentDidNotFail as m}from"../internal/UIElement/utils.js";function l(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}class d extends e{formatData(){return{paymentMethod:{type:d.type,beneficiaryId:this.state.data?.beneficiaryId}}}submit(){if(!this.isValid)return this.showValidation(),!1;this.createOrder().then(this.makePaymentsCall).then(h).then(m).then(this.handleResponse).catch(this.handleFailedResult)}get isValid(){return!!this.state.isValid}get displayName(){return this.props.name}render(){return this.props.paymentData?t(s,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},t(i,{srPanel:this.props.modules.srPanel},t(n,{ref:t=>{this.componentRef=t},clientKey:this.props.clientKey,paymentData:this.props.paymentData,onError:this.props.onError,onComplete:this.onComplete,brandLogo:this.icon,type:this.constructor.type,messageText:this.props.i18n.get("ancv.confirmPayment"),awaitText:this.props.i18n.get("await.waitForConfirmation"),showCountdownTimer:o.showCountdownTimer,throttleTime:o.THROTTLE_TIME,throttleInterval:o.THROTTLE_INTERVAL,onActionHandled:this.onActionHandled}))):t(s,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},t(r,{ref:t=>{this.componentRef=t},...this.props,onSubmit:this.submit,onChange:this.setState,payButton:this.payButton,showPayButton:this.props.showPayButton}))}constructor(...e){super(...e),l(this,"onOrderRequest",t=>this.props.onOrderRequest?new Promise((e,r)=>{this.props.onOrderRequest(e,r,t)}):this.props.session?this.props.session.createOrder():void 0),l(this,"createOrder",()=>(this.setStatus("loading"),this.props.order?Promise.resolve():this.onOrderRequest(this.data).then(t=>{const e={order:{orderData:t.orderData,pspReference:t.pspReference}};return this.setState(e),Promise.resolve()}).catch(t=>{this.setStatus(t?.message||"error"),this.props.onError&&(t instanceof a?this.handleError(t):this.handleError(new a("ERROR",t)))}))),l(this,"payButton",e=>t(p,e))}}l(d,"type","ancv");export{d as ANCVElement,d as default};
1
+ import{createElement as t}from"../../external/preact/dist/preact.js";import{UIElement as e}from"../internal/UIElement/UIElement.js";import r from"./components/ANCVInput.js";import{CoreProvider as o}from"../../core/Context/CoreProvider.js";import s from"./components/ANCVAwait/config.js";import n from"../internal/Await/Await.js";import i from"../../core/Errors/SRPanelProvider.js";import a from"../../core/Errors/AdyenCheckoutError.js";import p from"../internal/PayButton/PayButton.js";import{sanitizeResponse as h,verifyPaymentDidNotFail as m}from"../internal/UIElement/utils.js";function l(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}class d extends e{formatData(){return{paymentMethod:{type:d.type,beneficiaryId:this.state.data?.beneficiaryId}}}submit(){if(!this.isValid)return this.showValidation(),!1;this.createOrder().then(this.makePaymentsCall).then(h).then(m).then(this.handleResponse).catch(this.handleFailedResult)}get isValid(){return!!this.state.isValid}get displayName(){return this.props.name}render(){return this.props.paymentData?t(o,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},t(i,{srPanel:this.props.modules.srPanel},t(n,{clientKey:this.props.clientKey,paymentData:this.props.paymentData,onError:this.props.onError,onComplete:this.onComplete,brandLogo:this.icon,type:this.constructor.type,messageText:this.props.i18n.get("ancv.confirmPayment"),awaitText:this.props.i18n.get("await.waitForConfirmation"),showCountdownTimer:s.showCountdownTimer,throttleTime:s.THROTTLE_TIME,throttleInterval:s.THROTTLE_INTERVAL,onActionHandled:this.onActionHandled}))):t(o,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},t(r,{ref:t=>{this.componentRef=t},...this.props,onSubmit:this.submit,onChange:this.setState,payButton:this.payButton,showPayButton:this.props.showPayButton}))}constructor(...e){super(...e),l(this,"onOrderRequest",t=>this.props.onOrderRequest?new Promise((e,r)=>{this.props.onOrderRequest(e,r,t)}):this.props.session?this.props.session.createOrder():void 0),l(this,"createOrder",()=>(this.setStatus("loading"),this.props.order?Promise.resolve():this.onOrderRequest(this.data).then(t=>{const e={order:{orderData:t.orderData,pspReference:t.pspReference}};return this.setState(e),Promise.resolve()}).catch(t=>{t instanceof a?this.handleError(t):this.handleError(new a("ERROR",t))}))),l(this,"payButton",e=>t(p,e))}}l(d,"type","ancv");export{d as ANCVElement,d as default};
2
2
  //# sourceMappingURL=ANCV.js.map
@@ -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) {\n if (error instanceof AdyenCheckoutError) {\n this.handleError(error);\n } else {\n this.handleError(new AdyenCheckoutError('ERROR', error));\n }\n }\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","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","AdyenCheckoutError","handleError","PayButton"],"mappings":"6rBAYO,MAAMA,UAAoBC,EAM7BC,UAAAA,GACI,MAAO,CACHC,cAAe,CACXC,KAAMJ,EAAYI,KAClBC,cAAeC,KAAKC,MAAMC,MAAMH,eAG5C,CA2COI,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,GAExBE,UAAW9B,KAAKe,MAAMe,UACtBZ,YAAalB,KAAKe,MAAMG,YACxBa,QAAS/B,KAAKe,MAAMgB,QACpBC,WAAYhC,KAAKgC,WACjBC,UAAWjC,KAAKkC,KAChBpC,KAAME,KAAKmC,YAAY,KACvBC,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,CACGlB,IAAKA,IACD5B,KAAK6B,aAAeD,MAEpB5B,KAAKe,MACTgC,SAAU/C,KAAKG,OACf6C,SAAUhD,KAAKiD,SACfC,UAAWlD,KAAKkD,UAChBC,cAAenD,KAAKe,MAAMoC,gBAI1C,mBA5HGC,SAAAC,GAeHC,EAAAtD,KAAQuD,iBAAiBrD,GACjBF,KAAKe,MAAMwC,eACJ,IAAIC,QAAQ,CAACC,EAASC,KACzB1D,KAAKe,MAAMwC,eAAeE,EAASC,EAAQxD,KAG/CF,KAAKe,MAAM4C,QACJ3D,KAAKe,MAAM4C,QAAQrD,mBAD9B,GASJgD,OAAOhD,cAAc,KACjBN,KAAK4D,UAAU,WAGX5D,KAAKe,MAAM8C,MACJL,QAAQC,UAGZzD,KAAKuD,eAAevD,KAAKE,MAC3BK,KAAMsD,IACH,MAAMC,EAAa,CAAED,MAAO,CAAEE,UAAWF,EAAME,UAAWC,aAAcH,EAAMG,eAE9E,OADAhE,KAAKiD,SAASa,GACPN,QAAQC,YAElB7C,MAAMqD,IACHjE,KAAK4D,UAAUK,GAAOC,SAAW,SAC7BlE,KAAKe,MAAMgB,UACPkC,aAAiBE,EACjBnE,KAAKoE,YAAYH,GAEjBjE,KAAKoE,YAAY,IAAID,EAAmB,QAASF,SAqBrEX,EAAAtD,KAAOkD,YAAYnC,GACRI,EAACkD,EAActD,KAvE1BuC,EADS5D,EACKI,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 if (error instanceof AdyenCheckoutError) {\n this.handleError(error);\n } else {\n this.handleError(new AdyenCheckoutError('ERROR', error));\n }\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 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","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","clientKey","onError","onComplete","brandLogo","icon","constructor","messageText","get","awaitText","showCountdownTimer","config","throttleTime","THROTTLE_TIME","throttleInterval","THROTTLE_INTERVAL","onActionHandled","ANCVInput","ref","componentRef","onSubmit","onChange","setState","payButton","showPayButton","super","args","_define_property","onOrderRequest","Promise","resolve","reject","session","setStatus","order","stateOrder","orderData","pspReference","error","AdyenCheckoutError","handleError","PayButton"],"mappings":"6rBAYO,MAAMA,UAAoBC,EAM7BC,UAAAA,GACI,MAAO,CACHC,cAAe,CACXC,KAAMJ,EAAYI,KAClBC,cAAeC,KAAKC,MAAMC,MAAMH,eAG5C,CAwCOI,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,UAAW5B,KAAKe,MAAMa,UACtBV,YAAalB,KAAKe,MAAMG,YACxBW,QAAS7B,KAAKe,MAAMc,QACpBC,WAAY9B,KAAK8B,WACjBC,UAAW/B,KAAKgC,KAChBlC,KAAME,KAAKiC,YAAY,KACvBC,YAAalC,KAAKe,MAAMM,KAAKc,IAAI,uBACjCC,UAAWpC,KAAKe,MAAMM,KAAKc,IAAI,6BAC/BE,mBAAoBC,EAAOD,mBAC3BE,aAAcD,EAAOE,cACrBC,iBAAkBH,EAAOI,kBACzBC,gBAAiB3C,KAAK2C,oBAQtCxB,EAACC,EAAAA,CAAaC,KAAMrB,KAAKe,MAAMM,KAAMC,eAAgBtB,KAAKe,MAAMO,eAAgBC,UAAWvB,KAAKuB,WAC5FJ,EAACyB,EAAAA,CACGC,IAAKA,IACD7C,KAAK8C,aAAeD,MAEpB7C,KAAKe,MACTgC,SAAU/C,KAAKG,OACf6C,SAAUhD,KAAKiD,SACfC,UAAWlD,KAAKkD,UAChBC,cAAenD,KAAKe,MAAMoC,gBAI1C,mBAtHGC,SAAAC,GAeHC,EAAAtD,KAAQuD,iBAAiBrD,GACjBF,KAAKe,MAAMwC,eACJ,IAAIC,QAAQ,CAACC,EAASC,KACzB1D,KAAKe,MAAMwC,eAAeE,EAASC,EAAQxD,KAG/CF,KAAKe,MAAM4C,QACJ3D,KAAKe,MAAM4C,QAAQrD,mBAD9B,GASJgD,OAAOhD,cAAc,KACjBN,KAAK4D,UAAU,WAGX5D,KAAKe,MAAM8C,MACJL,QAAQC,UAGZzD,KAAKuD,eAAevD,KAAKE,MAC3BK,KAAMsD,IACH,MAAMC,EAAa,CAAED,MAAO,CAAEE,UAAWF,EAAME,UAAWC,aAAcH,EAAMG,eAE9E,OADAhE,KAAKiD,SAASa,GACPN,QAAQC,YAElB7C,MAAMqD,IACCA,aAAiBC,EACjBlE,KAAKmE,YAAYF,GAEjBjE,KAAKmE,YAAY,IAAID,EAAmB,QAASD,QAoBjEX,EAAAtD,KAAOkD,YAAYnC,GACRI,EAACiD,EAAcrD,KApE1BuC,EADS5D,EACKI,OAAO"}
@@ -1,2 +1,2 @@
1
- import{createElement as t}from"../../external/preact/dist/preact.js";import{UIElement as e}from"../internal/UIElement/UIElement.js";import o from"./components/BlikInput.js";import s from"../internal/Await/Await.js";import{CoreProvider as r}from"../../core/Context/CoreProvider.js";import i from"./config.js";import n from"../internal/RedirectButton/RedirectButton.js";import a from"../../core/Errors/SRPanelProvider.js";import{TxVariants as p}from"../tx-variants.js";class m extends e{formatData(){const t=!!this.props.storedPaymentMethodId;return{paymentMethod:{type:m.type,...!t&&{blikCode:this.state?.data?.blikCode},...t&&{storedPaymentMethodId:this.props.storedPaymentMethodId}}}}get isValid(){return!!this.props.storedPaymentMethodId||!!this.state.isValid}get displayName(){return this.props.storedPaymentMethodId&&this.props.label?this.props.label:this.props.name}get additionalInfo(){return this.props.storedPaymentMethodId&&this.props.label?this.props.name:null}render(){return this.props.paymentData?t(r,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},t(a,{srPanel:this.props.modules.srPanel},t(s,{ref:t=>{this.componentRef=t},clientKey:this.props.clientKey,paymentData:this.props.paymentData,onError:this.handleError,onComplete:this.onComplete,brandLogo:this.icon,type:i.type,messageText:this.props.i18n.get(i.messageTextId),awaitText:this.props.i18n.get(i.awaitTextId),showCountdownTimer:i.showCountdownTimer,delay:i.STATUS_INTERVAL,countdownTime:i.COUNTDOWN_MINUTES,throttleTime:i.THROTTLE_TIME,throttleInterval:i.THROTTLE_INTERVAL,onActionHandled:this.onActionHandled}))):t(r,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},this.props.storedPaymentMethodId?t(n,{showPayButton:this.props.showPayButton,name:this.displayName,amount:this.props.amount,payButton:this.payButton,onSubmit:this.submit,ref:t=>{this.componentRef=t}}):t(o,{ref:t=>{this.componentRef=t},...this.props,onChange:this.setState,onSubmit:this.submit,payButton:this.payButton}))}}var d,h,l;d=m,h="type",l=p.blik,h in d?Object.defineProperty(d,h,{value:l,enumerable:!0,configurable:!0,writable:!0}):d[h]=l;export{m as default};
1
+ import{createElement as t}from"../../external/preact/dist/preact.js";import{UIElement as e}from"../internal/UIElement/UIElement.js";import o from"./components/BlikInput.js";import s from"../internal/Await/Await.js";import{CoreProvider as r}from"../../core/Context/CoreProvider.js";import i from"./config.js";import n from"../internal/RedirectButton/RedirectButton.js";import a from"../../core/Errors/SRPanelProvider.js";import{TxVariants as p}from"../tx-variants.js";class d extends e{formatData(){const t=!!this.props.storedPaymentMethodId;return{paymentMethod:{type:d.type,...!t&&{blikCode:this.state?.data?.blikCode},...t&&{storedPaymentMethodId:this.props.storedPaymentMethodId}}}}get isValid(){return!!this.props.storedPaymentMethodId||!!this.state.isValid}get displayName(){return this.props.storedPaymentMethodId&&this.props.label?this.props.label:this.props.name}get additionalInfo(){return this.props.storedPaymentMethodId&&this.props.label?this.props.name:null}render(){return this.props.paymentData?t(r,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},t(a,{srPanel:this.props.modules.srPanel},t(s,{clientKey:this.props.clientKey,paymentData:this.props.paymentData,onError:this.handleError,onComplete:this.onComplete,brandLogo:this.icon,type:i.type,messageText:this.props.i18n.get(i.messageTextId),awaitText:this.props.i18n.get(i.awaitTextId),showCountdownTimer:i.showCountdownTimer,delay:i.STATUS_INTERVAL,countdownTime:i.COUNTDOWN_MINUTES,throttleTime:i.THROTTLE_TIME,throttleInterval:i.THROTTLE_INTERVAL,onActionHandled:this.onActionHandled}))):t(r,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},this.props.storedPaymentMethodId?t(n,{showPayButton:this.props.showPayButton,name:this.displayName,amount:this.props.amount,payButton:this.payButton,onSubmit:this.submit,ref:t=>{this.componentRef=t}}):t(o,{ref:t=>{this.componentRef=t},...this.props,onChange:this.setState,onSubmit:this.submit,payButton:this.payButton}))}}var m,h,l;m=d,h="type",l=p.blik,h in m?Object.defineProperty(m,h,{value:l,enumerable:!0,configurable:!0,writable:!0}):m[h]=l;export{d as default};
2
2
  //# sourceMappingURL=Blik.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Blik.js","sources":["../../../../src/components/Blik/Blik.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport BlikInput from '../../components/Blik/components/BlikInput';\nimport Await from '../internal/Await';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport config from './config';\nimport RedirectButton from '../../components/internal/RedirectButton';\nimport SRPanelProvider from '../../core/Errors/SRPanelProvider';\nimport { TxVariants } from '../tx-variants';\nimport { AwaitConfiguration } from '../internal/Await/types';\n\ninterface BlikElementData {\n paymentMethod: {\n type: string;\n blikCode: string;\n };\n}\n\nclass BlikElement extends UIElement<AwaitConfiguration> {\n public static type = TxVariants.blik;\n\n formatData(): BlikElementData {\n const recurringPayment = !!this.props.storedPaymentMethodId;\n\n return {\n paymentMethod: {\n type: BlikElement.type,\n ...(!recurringPayment && { blikCode: this.state?.data?.blikCode }),\n ...(recurringPayment && { storedPaymentMethodId: this.props.storedPaymentMethodId })\n }\n };\n }\n\n get isValid(): boolean {\n if (this.props.storedPaymentMethodId) {\n return true;\n }\n\n return !!this.state.isValid;\n }\n\n get displayName() {\n if (this.props.storedPaymentMethodId && this.props.label) {\n return this.props.label;\n }\n return this.props.name;\n }\n\n get additionalInfo() {\n if (this.props.storedPaymentMethodId && this.props.label) {\n return this.props.name;\n }\n return null;\n }\n\n /**\n * NOTE: for future reference:\n * this.props.onComplete (which is called from this.onComplete) equates to the merchant defined onAdditionalDetails callback\n * (the initial /payments response defines an \"await\" action, actionTypes.ts translates this to \"onComplete: props.onAdditionalDetails\")\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.handleError}\n onComplete={this.onComplete}\n brandLogo={this.icon}\n type={config.type}\n messageText={this.props.i18n.get(config.messageTextId)}\n awaitText={this.props.i18n.get(config.awaitTextId)}\n showCountdownTimer={config.showCountdownTimer}\n delay={config.STATUS_INTERVAL}\n countdownTime={config.COUNTDOWN_MINUTES}\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 {this.props.storedPaymentMethodId ? (\n <RedirectButton\n showPayButton={this.props.showPayButton}\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 <BlikInput\n // @ts-ignore Ref is used by preact component\n ref={ref => {\n this.componentRef = ref;\n }}\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 BlikElement;\n"],"names":["BlikElement","UIElement","formatData","recurringPayment","this","props","storedPaymentMethodId","paymentMethod","type","blikCode","state","data","isValid","displayName","label","name","additionalInfo","render","paymentData","h","CoreProvider","i18n","loadingContext","resources","SRPanelProvider","srPanel","modules","Await","ref","componentRef","clientKey","onError","handleError","onComplete","brandLogo","icon","config","messageText","get","messageTextId","awaitText","awaitTextId","showCountdownTimer","delay","STATUS_INTERVAL","countdownTime","COUNTDOWN_MINUTES","throttleTime","THROTTLE_TIME","throttleInterval","THROTTLE_INTERVAL","onActionHandled","RedirectButton","showPayButton","amount","payButton","onSubmit","submit","BlikInput","onChange","setState","TxVariants","blik"],"mappings":"mdAkBA,MAAMA,UAAoBC,EAGtBC,UAAAA,GACI,MAAMC,IAAqBC,KAAKC,MAAMC,sBAEtC,MAAO,CACHC,cAAe,CACXC,KAAMR,EAAYQ,SACbL,GAAoB,CAAEM,SAAUL,KAAKM,OAAOC,MAAMF,aACnDN,GAAoB,CAAEG,sBAAuBF,KAAKC,MAAMC,wBAGxE,CAEA,WAAIM,GACA,QAAIR,KAAKC,MAAMC,yBAINF,KAAKM,MAAME,OACxB,CAEA,eAAIC,GACA,OAAIT,KAAKC,MAAMC,uBAAyBF,KAAKC,MAAMS,MACxCV,KAAKC,MAAMS,MAEfV,KAAKC,MAAMU,IACtB,CAEA,kBAAIC,GACA,OAAIZ,KAAKC,MAAMC,uBAAyBF,KAAKC,MAAMS,MACxCV,KAAKC,MAAMU,KAEf,IACX,CAOAE,MAAAA,GACI,OAAIb,KAAKC,MAAMa,YAEPC,EAACC,EAAAA,CAAaC,KAAMjB,KAAKC,MAAMgB,KAAMC,eAAgBlB,KAAKC,MAAMiB,eAAgBC,UAAWnB,KAAKmB,WAC5FJ,EAACK,EAAAA,CAAgBC,QAASrB,KAAKC,MAAMqB,QAAQD,SACzCN,EAACQ,EAAAA,CACGC,IAAKA,IACDxB,KAAKyB,aAAeD,GAExBE,UAAW1B,KAAKC,MAAMyB,UACtBZ,YAAad,KAAKC,MAAMa,YACxBa,QAAS3B,KAAK4B,YACdC,WAAY7B,KAAK6B,WACjBC,UAAW9B,KAAK+B,KAChB3B,KAAM4B,EAAO5B,KACb6B,YAAajC,KAAKC,MAAMgB,KAAKiB,IAAIF,EAAOG,eACxCC,UAAWpC,KAAKC,MAAMgB,KAAKiB,IAAIF,EAAOK,aACtCC,mBAAoBN,EAAOM,mBAC3BC,MAAOP,EAAOQ,gBACdC,cAAeT,EAAOU,kBACtBC,aAAcX,EAAOY,cACrBC,iBAAkBb,EAAOc,kBACzBC,gBAAiB/C,KAAK+C,oBAQtChC,EAACC,EAAAA,CAAaC,KAAMjB,KAAKC,MAAMgB,KAAMC,eAAgBlB,KAAKC,MAAMiB,eAAgBC,UAAWnB,KAAKmB,WAC3FnB,KAAKC,MAAMC,sBACRa,EAACiC,EAAAA,CACGC,cAAejD,KAAKC,MAAMgD,cAC1BtC,KAAMX,KAAKS,YACXyC,OAAQlD,KAAKC,MAAMiD,OACnBC,UAAWnD,KAAKmD,UAChBC,SAAUpD,KAAKqD,OACf7B,IAAKA,IACDxB,KAAKyB,aAAeD,KAI5BT,EAACuC,EAAAA,CAEG9B,IAAKA,IACDxB,KAAKyB,aAAeD,MAEpBxB,KAAKC,MACTsD,SAAUvD,KAAKwD,SACfJ,SAAUpD,KAAKqD,OACfF,UAAWnD,KAAKmD,YAKpC,cAlGEvD,IACYQ,SAAOqD,EAAWC"}
1
+ {"version":3,"file":"Blik.js","sources":["../../../../src/components/Blik/Blik.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport BlikInput from '../../components/Blik/components/BlikInput';\nimport Await from '../internal/Await';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport config from './config';\nimport RedirectButton from '../../components/internal/RedirectButton';\nimport SRPanelProvider from '../../core/Errors/SRPanelProvider';\nimport { TxVariants } from '../tx-variants';\nimport { AwaitConfiguration } from '../internal/Await/types';\n\ninterface BlikElementData {\n paymentMethod: {\n type: string;\n blikCode: string;\n };\n}\n\nclass BlikElement extends UIElement<AwaitConfiguration> {\n public static type = TxVariants.blik;\n\n formatData(): BlikElementData {\n const recurringPayment = !!this.props.storedPaymentMethodId;\n\n return {\n paymentMethod: {\n type: BlikElement.type,\n ...(!recurringPayment && { blikCode: this.state?.data?.blikCode }),\n ...(recurringPayment && { storedPaymentMethodId: this.props.storedPaymentMethodId })\n }\n };\n }\n\n get isValid(): boolean {\n if (this.props.storedPaymentMethodId) {\n return true;\n }\n\n return !!this.state.isValid;\n }\n\n get displayName() {\n if (this.props.storedPaymentMethodId && this.props.label) {\n return this.props.label;\n }\n return this.props.name;\n }\n\n get additionalInfo() {\n if (this.props.storedPaymentMethodId && this.props.label) {\n return this.props.name;\n }\n return null;\n }\n\n /**\n * NOTE: for future reference:\n * this.props.onComplete (which is called from this.onComplete) equates to the merchant defined onAdditionalDetails callback\n * (the initial /payments response defines an \"await\" action, actionTypes.ts translates this to \"onComplete: props.onAdditionalDetails\")\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 clientKey={this.props.clientKey}\n paymentData={this.props.paymentData}\n onError={this.handleError}\n onComplete={this.onComplete}\n brandLogo={this.icon}\n type={config.type}\n messageText={this.props.i18n.get(config.messageTextId)}\n awaitText={this.props.i18n.get(config.awaitTextId)}\n showCountdownTimer={config.showCountdownTimer}\n delay={config.STATUS_INTERVAL}\n countdownTime={config.COUNTDOWN_MINUTES}\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 {this.props.storedPaymentMethodId ? (\n <RedirectButton\n showPayButton={this.props.showPayButton}\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 <BlikInput\n // @ts-ignore Ref is used by preact component\n ref={ref => {\n this.componentRef = ref;\n }}\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 BlikElement;\n"],"names":["BlikElement","UIElement","formatData","recurringPayment","this","props","storedPaymentMethodId","paymentMethod","type","blikCode","state","data","isValid","displayName","label","name","additionalInfo","render","paymentData","h","CoreProvider","i18n","loadingContext","resources","SRPanelProvider","srPanel","modules","Await","clientKey","onError","handleError","onComplete","brandLogo","icon","config","messageText","get","messageTextId","awaitText","awaitTextId","showCountdownTimer","delay","STATUS_INTERVAL","countdownTime","COUNTDOWN_MINUTES","throttleTime","THROTTLE_TIME","throttleInterval","THROTTLE_INTERVAL","onActionHandled","RedirectButton","showPayButton","amount","payButton","onSubmit","submit","ref","componentRef","BlikInput","onChange","setState","TxVariants","blik"],"mappings":"mdAkBA,MAAMA,UAAoBC,EAGtBC,UAAAA,GACI,MAAMC,IAAqBC,KAAKC,MAAMC,sBAEtC,MAAO,CACHC,cAAe,CACXC,KAAMR,EAAYQ,SACbL,GAAoB,CAAEM,SAAUL,KAAKM,OAAOC,MAAMF,aACnDN,GAAoB,CAAEG,sBAAuBF,KAAKC,MAAMC,wBAGxE,CAEA,WAAIM,GACA,QAAIR,KAAKC,MAAMC,yBAINF,KAAKM,MAAME,OACxB,CAEA,eAAIC,GACA,OAAIT,KAAKC,MAAMC,uBAAyBF,KAAKC,MAAMS,MACxCV,KAAKC,MAAMS,MAEfV,KAAKC,MAAMU,IACtB,CAEA,kBAAIC,GACA,OAAIZ,KAAKC,MAAMC,uBAAyBF,KAAKC,MAAMS,MACxCV,KAAKC,MAAMU,KAEf,IACX,CAOAE,MAAAA,GACI,OAAIb,KAAKC,MAAMa,YAEPC,EAACC,EAAAA,CAAaC,KAAMjB,KAAKC,MAAMgB,KAAMC,eAAgBlB,KAAKC,MAAMiB,eAAgBC,UAAWnB,KAAKmB,WAC5FJ,EAACK,EAAAA,CAAgBC,QAASrB,KAAKC,MAAMqB,QAAQD,SACzCN,EAACQ,EAAAA,CACGC,UAAWxB,KAAKC,MAAMuB,UACtBV,YAAad,KAAKC,MAAMa,YACxBW,QAASzB,KAAK0B,YACdC,WAAY3B,KAAK2B,WACjBC,UAAW5B,KAAK6B,KAChBzB,KAAM0B,EAAO1B,KACb2B,YAAa/B,KAAKC,MAAMgB,KAAKe,IAAIF,EAAOG,eACxCC,UAAWlC,KAAKC,MAAMgB,KAAKe,IAAIF,EAAOK,aACtCC,mBAAoBN,EAAOM,mBAC3BC,MAAOP,EAAOQ,gBACdC,cAAeT,EAAOU,kBACtBC,aAAcX,EAAOY,cACrBC,iBAAkBb,EAAOc,kBACzBC,gBAAiB7C,KAAK6C,oBAQtC9B,EAACC,EAAAA,CAAaC,KAAMjB,KAAKC,MAAMgB,KAAMC,eAAgBlB,KAAKC,MAAMiB,eAAgBC,UAAWnB,KAAKmB,WAC3FnB,KAAKC,MAAMC,sBACRa,EAAC+B,EAAAA,CACGC,cAAe/C,KAAKC,MAAM8C,cAC1BpC,KAAMX,KAAKS,YACXuC,OAAQhD,KAAKC,MAAM+C,OACnBC,UAAWjD,KAAKiD,UAChBC,SAAUlD,KAAKmD,OACfC,IAAKA,IACDpD,KAAKqD,aAAeD,KAI5BrC,EAACuC,EAAAA,CAEGF,IAAKA,IACDpD,KAAKqD,aAAeD,MAEpBpD,KAAKC,MACTsD,SAAUvD,KAAKwD,SACfN,SAAUlD,KAAKmD,OACfF,UAAWjD,KAAKiD,YAKpC,cA/FErD,IACYQ,SAAOqD,EAAWC"}
@@ -1 +1 @@
1
- {"version":3,"file":"StoredCardFields.js","sources":["../../../../../../../src/components/Card/components/CardInput/components/StoredCardFields.tsx"],"sourcesContent":["import { h } from 'preact';\nimport CVC from './CVC';\nimport Field from '../../../../internal/FormFields/Field';\nimport { useCoreContext } from '../../../../../core/Context/CoreProvider';\nimport { StoredCardFieldsProps } from './types';\nimport { ENCRYPTED_SECURITY_CODE } from '../../../../internal/SecuredFields/lib/constants';\nimport InputText from '../../../../internal/FormFields/InputText';\nimport Fieldset from '../../../../internal/FormFields/Fieldset';\n\nexport default function StoredCardFields({\n brand,\n hasCVC,\n onFocusField,\n errors,\n valid,\n cvcPolicy,\n focusedElement,\n lastFour,\n expiryMonth,\n expiryYear,\n showContextualElement\n}: StoredCardFieldsProps) {\n const { i18n } = useCoreContext();\n const storedCardDescription = i18n.get('creditCard.storedCard.description.ariaLabel').replace('%@', lastFour);\n const storedCardDescriptionSuffix = expiryMonth && expiryYear ? ` ${i18n.get('creditCard.expiryDate.label')} ${expiryMonth}/${expiryYear}` : '';\n const ariaLabel = `${storedCardDescription}${storedCardDescriptionSuffix}`;\n const isAmex = brand === 'amex';\n const cvcContextualText = isAmex\n ? i18n.get('creditCard.securityCode.contextualText.4digits')\n : i18n.get('creditCard.securityCode.contextualText.3digits');\n\n const getError = (errors, fieldType) => {\n return errors[fieldType] ? i18n.get(errors[fieldType]) : null;\n };\n\n return (\n <div className=\"adyen-checkout__card__form adyen-checkout__card__form--oneClick\" aria-label={ariaLabel}>\n <Fieldset classNamesFields={['adyen-checkout__card__exp-cvc']}>\n {expiryMonth && expiryYear && (\n <Field\n label={i18n.get('creditCard.expiryDate.label')}\n classNameModifiers={['col-50', 'storedCard']}\n name={'expiryDateField'}\n disabled\n >\n <InputText\n name={'expiryDateField'}\n className={'adyen-checkout__input adyen-checkout__input--disabled adyen-checkout__card__exp-date__input--oneclick'}\n value={`${expiryMonth} / ${expiryYear}`}\n disabled={true}\n dir={'ltr'}\n />\n </Field>\n )}\n\n {hasCVC && (\n <CVC\n cvcPolicy={cvcPolicy}\n error={getError(errors, ENCRYPTED_SECURITY_CODE)}\n focused={focusedElement === 'encryptedSecurityCode'}\n filled={!!valid.encryptedSecurityCode || !!errors.encryptedSecurityCode}\n isValid={!!valid.encryptedSecurityCode}\n label={i18n.get('creditCard.securityCode.label')}\n onFocusField={onFocusField}\n classNameModifiers={[...(expiryMonth && expiryYear ? ['col-50', 'storedCard'] : ['storedCard'])]}\n frontCVC={isAmex}\n showContextualElement={showContextualElement}\n contextualText={cvcContextualText}\n />\n )}\n </Fieldset>\n </div>\n );\n}\n"],"names":["StoredCardFields","brand","hasCVC","onFocusField","errors","valid","cvcPolicy","focusedElement","lastFour","expiryMonth","expiryYear","showContextualElement","i18n","useCoreContext","ariaLabel","get","replace","isAmex","cvcContextualText","h","div","className","aria-label","Fieldset","classNamesFields","Field","label","classNameModifiers","name","disabled","InputText","value","dir","CVC","error","fieldType","getError","ENCRYPTED_SECURITY_CODE","focused","filled","encryptedSecurityCode","isValid","frontCVC","contextualText"],"mappings":"+cASe,SAASA,GAAiBC,MACrCA,EAAKC,OACLA,EAAMC,aACNA,EAAYC,OACZA,EAAMC,MACNA,EAAKC,UACLA,EAASC,eACTA,EAAcC,SACdA,EAAQC,YACRA,EAAWC,WACXA,EAAUC,sBACVA,IAEA,MAAMC,KAAEA,GAASC,IAGXC,EAAY,GAFYF,EAAKG,IAAI,+CAA+CC,QAAQ,KAAMR,KAChEC,GAAeC,EAAa,IAAIE,EAAKG,IAAI,kCAAkCN,KAAeC,IAAe,KAEvIO,EAAmB,SAAVhB,EACTiB,EAAoBD,EACpBL,EAAKG,IAAI,kDACTH,EAAKG,IAAI,kDAMf,OACII,EAACC,MAAAA,CAAIC,UAAU,kEAAkEC,aAAYR,GACzFK,EAACI,EAAAA,CAASC,iBAAkB,CAAC,kCACxBf,GAAeC,GACZS,EAACM,EAAAA,CACGC,MAAOd,EAAKG,IAAI,+BAChBY,mBAAoB,CAAC,SAAU,cAC/BC,KAAM,kBACNC,UAAAA,GAEAV,EAACW,EAAAA,CACGF,KAAM,kBACNP,UAAW,wGACXU,MAAO,GAAGtB,OAAiBC,IAC3BmB,UAAU,EACVG,IAAK,SAKhB9B,GACGiB,EAACc,EAAAA,CACG3B,UAAWA,EACX4B,MA3BH,EAAC9B,EAAQ+B,IACf/B,EAAO+B,GAAavB,EAAKG,IAAIX,EAAO+B,IAAc,KA0BlCC,CAAShC,EAAQiC,GACxBC,QAA4B,0BAAnB/B,EACTgC,SAAUlC,EAAMmC,yBAA2BpC,EAAOoC,sBAClDC,UAAWpC,EAAMmC,sBACjBd,MAAOd,EAAKG,IAAI,iCAChBZ,aAAcA,EACdwB,mBAAoB,IAAKlB,GAAeC,EAAa,CAAC,SAAU,cAAgB,CAAC,eACjFgC,SAAUzB,EACVN,sBAAuBA,EACvBgC,eAAgBzB,KAMxC"}
1
+ {"version":3,"file":"StoredCardFields.js","sources":["../../../../../../../src/components/Card/components/CardInput/components/StoredCardFields.tsx"],"sourcesContent":["import { h } from 'preact';\nimport CVC from './CVC';\nimport Field from '../../../../internal/FormFields/Field';\nimport { useCoreContext } from '../../../../../core/Context/CoreProvider';\nimport { StoredCardFieldsProps } from './types';\nimport { ENCRYPTED_SECURITY_CODE } from '../../../../internal/SecuredFields/lib/constants';\nimport InputText from '../../../../internal/FormFields/InputText';\nimport Fieldset from '../../../../internal/FormFields/Fieldset';\nimport './StoredCardFields.scss';\n\nexport default function StoredCardFields({\n brand,\n hasCVC,\n onFocusField,\n errors,\n valid,\n cvcPolicy,\n focusedElement,\n lastFour,\n expiryMonth,\n expiryYear,\n showContextualElement\n}: StoredCardFieldsProps) {\n const { i18n } = useCoreContext();\n const storedCardDescription = i18n.get('creditCard.storedCard.description.ariaLabel').replace('%@', lastFour);\n const storedCardDescriptionSuffix = expiryMonth && expiryYear ? ` ${i18n.get('creditCard.expiryDate.label')} ${expiryMonth}/${expiryYear}` : '';\n const ariaLabel = `${storedCardDescription}${storedCardDescriptionSuffix}`;\n const isAmex = brand === 'amex';\n const cvcContextualText = isAmex\n ? i18n.get('creditCard.securityCode.contextualText.4digits')\n : i18n.get('creditCard.securityCode.contextualText.3digits');\n\n const getError = (errors, fieldType) => {\n return errors[fieldType] ? i18n.get(errors[fieldType]) : null;\n };\n\n return (\n <div className=\"adyen-checkout__card__form adyen-checkout__card__form--oneClick\" aria-label={ariaLabel}>\n <Fieldset classNamesFields={['adyen-checkout__card__exp-cvc']}>\n {expiryMonth && expiryYear && (\n <Field\n label={i18n.get('creditCard.expiryDate.label')}\n classNameModifiers={['col-50', 'storedCard']}\n name={'expiryDateField'}\n disabled\n >\n <InputText\n name={'expiryDateField'}\n className={'adyen-checkout__input adyen-checkout__input--disabled adyen-checkout__card__exp-date__input--oneclick'}\n value={`${expiryMonth} / ${expiryYear}`}\n disabled={true}\n dir={'ltr'}\n />\n </Field>\n )}\n\n {hasCVC && (\n <CVC\n cvcPolicy={cvcPolicy}\n error={getError(errors, ENCRYPTED_SECURITY_CODE)}\n focused={focusedElement === 'encryptedSecurityCode'}\n filled={!!valid.encryptedSecurityCode || !!errors.encryptedSecurityCode}\n isValid={!!valid.encryptedSecurityCode}\n label={i18n.get('creditCard.securityCode.label')}\n onFocusField={onFocusField}\n classNameModifiers={[...(expiryMonth && expiryYear ? ['col-50', 'storedCard'] : ['storedCard'])]}\n frontCVC={isAmex}\n showContextualElement={showContextualElement}\n contextualText={cvcContextualText}\n />\n )}\n </Fieldset>\n </div>\n );\n}\n"],"names":["StoredCardFields","brand","hasCVC","onFocusField","errors","valid","cvcPolicy","focusedElement","lastFour","expiryMonth","expiryYear","showContextualElement","i18n","useCoreContext","ariaLabel","get","replace","isAmex","cvcContextualText","h","div","className","aria-label","Fieldset","classNamesFields","Field","label","classNameModifiers","name","disabled","InputText","value","dir","CVC","error","fieldType","getError","ENCRYPTED_SECURITY_CODE","focused","filled","encryptedSecurityCode","isValid","frontCVC","contextualText"],"mappings":"+cAUe,SAASA,GAAiBC,MACrCA,EAAKC,OACLA,EAAMC,aACNA,EAAYC,OACZA,EAAMC,MACNA,EAAKC,UACLA,EAASC,eACTA,EAAcC,SACdA,EAAQC,YACRA,EAAWC,WACXA,EAAUC,sBACVA,IAEA,MAAMC,KAAEA,GAASC,IAGXC,EAAY,GAFYF,EAAKG,IAAI,+CAA+CC,QAAQ,KAAMR,KAChEC,GAAeC,EAAa,IAAIE,EAAKG,IAAI,kCAAkCN,KAAeC,IAAe,KAEvIO,EAAmB,SAAVhB,EACTiB,EAAoBD,EACpBL,EAAKG,IAAI,kDACTH,EAAKG,IAAI,kDAMf,OACII,EAACC,MAAAA,CAAIC,UAAU,kEAAkEC,aAAYR,GACzFK,EAACI,EAAAA,CAASC,iBAAkB,CAAC,kCACxBf,GAAeC,GACZS,EAACM,EAAAA,CACGC,MAAOd,EAAKG,IAAI,+BAChBY,mBAAoB,CAAC,SAAU,cAC/BC,KAAM,kBACNC,UAAAA,GAEAV,EAACW,EAAAA,CACGF,KAAM,kBACNP,UAAW,wGACXU,MAAO,GAAGtB,OAAiBC,IAC3BmB,UAAU,EACVG,IAAK,SAKhB9B,GACGiB,EAACc,EAAAA,CACG3B,UAAWA,EACX4B,MA3BH,EAAC9B,EAAQ+B,IACf/B,EAAO+B,GAAavB,EAAKG,IAAIX,EAAO+B,IAAc,KA0BlCC,CAAShC,EAAQiC,GACxBC,QAA4B,0BAAnB/B,EACTgC,SAAUlC,EAAMmC,yBAA2BpC,EAAOoC,sBAClDC,UAAWpC,EAAMmC,sBACjBd,MAAOd,EAAKG,IAAI,iCAChBZ,aAAcA,EACdwB,mBAAoB,IAAKlB,GAAeC,EAAa,CAAC,SAAU,cAAgB,CAAC,eACjFgC,SAAUzB,EACVN,sBAAuBA,EACvBgC,eAAgBzB,KAMxC"}
@@ -1,2 +1,2 @@
1
- import{createElement as t}from"../../external/preact/dist/preact.js";import{UIElement as e}from"../internal/UIElement/UIElement.js";import r from"./components/GiftcardComponent.js";import{CoreProvider as s}from"../../core/Context/CoreProvider.js";import o from"../internal/PayButton/PayButton.js";import n from"../../core/Errors/AdyenCheckoutError.js";import{TxVariants as i}from"../tx-variants.js";import a from"../../core/Errors/SRPanelProvider.js";function h(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}class p extends e{formatProps(t){return{...t?.configuration,...t}}formatData(){return{paymentMethod:{type:this.constructor.type,brand:this.props.brand,encryptedCardNumber:this.state.data?.encryptedCardNumber,encryptedSecurityCode:this.state.data?.encryptedSecurityCode}}}get isValid(){return!!this.state.isValid}get icon(){return this.props.brandsConfiguration[this.props.brand]?.icon||this.props.icon||this.resources.getImage()(this.props.brand)}get displayName(){return this.props.brandsConfiguration[this.props.brand]?.name||this.props.name}balanceCheck(){return this.onBalanceCheck()}submit(){this.balanceCheck()}makeSubmitCall(){super.submit()}render(){return t(s,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},t(a,{srPanel:this.props.modules.srPanel},t(r,{ref:t=>{this.componentRef=t},...this.props,handleKeyPress:this.handleKeyPress,showPayButton:this.props.showPayButton,onChange:this.setState,makeBalanceCheck:()=>this.onBalanceCheck(),makePayment:()=>this.makeSubmitCall(),payButton:this.payButton})))}constructor(...e){super(...e),h(this,"handleBalanceCheck",t=>this.props.onBalanceCheck?new Promise((e,r)=>{this.props.onBalanceCheck(e,r,t)}):this.props.session?this.props.session.checkBalance(t):void 0),h(this,"onOrderRequest",t=>this.props.onOrderRequest?new Promise((e,r)=>{this.props.onOrderRequest(e,r,t)}):this.props.session?this.props.session.createOrder():void 0),h(this,"onBalanceCheck",()=>{if(!this.isValid)return void this.showValidation();if(!(this.props.session||this.props.onBalanceCheck))return super.submit();this.setStatus("loading"),this.handleBalanceCheck(this.formatData()).then(({balance:t,transactionLimit:e={}})=>{if(!t)throw new Error("card-error");if(t?.currency!==this.props.amount?.currency)throw new Error("currency-error");if(t?.value<=0)throw new Error("no-balance");return this.props.amount.value>t.value||this.props.amount.value>e.value?this.props.order?this.makeSubmitCall():this.onOrderRequest(this.data).then(t=>(this.setState({order:{orderData:t.orderData,pspReference:t.pspReference}}),this.makeSubmitCall())):this.handleOnRequiringConfirmation(t,e)}).catch(t=>{this.setStatus(t?.message||"error"),this.props.onError&&(t instanceof n?this.handleError(t):this.handleError(new n("ERROR",t)))})}),h(this,"handleOnRequiringConfirmation",(t,e)=>{if(this.componentRef.setBalance({balance:t,transactionLimit:e}),this.setStatus("ready"),!this.props.showPayButton){if(!this.props.onRequiringConfirmation)throw new n("IMPLEMENTATION_ERROR","onRequiringConfirmation must be provided");return new Promise((t,e)=>{this.props.onRequiringConfirmation(t,e)}).then(()=>this.makeSubmitCall()).catch(()=>{})}}),h(this,"payButton",e=>t(o,e))}}h(p,"type",i.giftcard),h(p,"defaultProps",{brandsConfiguration:{}});export{p as GiftcardElement,p as default};
1
+ import{createElement as e}from"../../external/preact/dist/preact.js";import{UIElement as t}from"../internal/UIElement/UIElement.js";import r from"./components/GiftcardComponent.js";import{CoreProvider as s}from"../../core/Context/CoreProvider.js";import n from"../internal/PayButton/PayButton.js";import o from"../../core/Errors/AdyenCheckoutError.js";import{TxVariants as i}from"../tx-variants.js";import a from"../../core/Errors/SRPanelProvider.js";function h(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}class p extends t{formatProps(e){return{...e?.configuration,...e}}formatData(){return{paymentMethod:{type:this.constructor.type,brand:this.props.brand,encryptedCardNumber:this.state.data?.encryptedCardNumber,encryptedSecurityCode:this.state.data?.encryptedSecurityCode}}}get isValid(){return!!this.state.isValid}get icon(){return this.props.brandsConfiguration[this.props.brand]?.icon||this.props.icon||this.resources.getImage()(this.props.brand)}get displayName(){return this.props.brandsConfiguration[this.props.brand]?.name||this.props.name}setBalanceCheckError(e){this.componentRef?.setBalanceCheckErrors?.(e)}balanceCheck(){return this.onBalanceCheck()}submit(){this.balanceCheck()}makeSubmitCall(){super.submit()}render(){return e(s,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},e(a,{srPanel:this.props.modules.srPanel},e(r,{ref:e=>{this.componentRef=e},...this.props,handleKeyPress:this.handleKeyPress,showPayButton:this.props.showPayButton,onChange:this.setState,makeBalanceCheck:()=>this.onBalanceCheck(),makePayment:()=>this.makeSubmitCall(),payButton:this.payButton})))}constructor(...t){super(...t),h(this,"componentRef",void 0),h(this,"handleBalanceCheck",e=>this.props.onBalanceCheck?new Promise((t,r)=>{this.props.onBalanceCheck(t,r,e)}):this.props.session?this.props.session.checkBalance(e):void 0),h(this,"onOrderRequest",e=>this.props.onOrderRequest?new Promise((t,r)=>{this.props.onOrderRequest(t,r,e)}):this.props.session?this.props.session.createOrder():void 0),h(this,"onBalanceCheck",()=>{if(!this.isValid)return void this.showValidation();if(!(this.props.session||this.props.onBalanceCheck))return super.submit();this.setStatus("loading"),this.handleBalanceCheck(this.formatData()).then(({balance:e,transactionLimit:t={}})=>{if(this.setBalanceCheckError(null),!e)throw new Error("card-error");if(e?.currency!==this.props.amount?.currency)throw new Error("currency-error");if(e?.value<=0)throw new Error("no-balance");return this.props.amount.value>e.value||this.props.amount.value>t.value?this.props.order?this.makeSubmitCall():this.onOrderRequest(this.data).then(e=>(this.setState({order:{orderData:e.orderData,pspReference:e.pspReference}}),this.makeSubmitCall())):this.handleOnRequiringConfirmation(e,t)}).catch(e=>{this.setBalanceCheckError(e?.message),e instanceof o?this.handleError(e):this.handleError(new o("ERROR",e))})}),h(this,"handleOnRequiringConfirmation",(e,t)=>{if(this.componentRef.setBalance({balance:e,transactionLimit:t}),this.setStatus("ready"),!this.props.showPayButton){if(!this.props.onRequiringConfirmation)throw new o("IMPLEMENTATION_ERROR","onRequiringConfirmation must be provided");return new Promise((e,t)=>{this.props.onRequiringConfirmation(e,t)}).then(()=>this.makeSubmitCall()).catch(()=>{})}}),h(this,"payButton",t=>e(n,t))}}h(p,"type",i.giftcard),h(p,"defaultProps",{brandsConfiguration:{}});export{p as GiftcardElement,p as default};
2
2
  //# sourceMappingURL=Giftcard.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Giftcard.js","sources":["../../../../src/components/Giftcard/Giftcard.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport GiftcardComponent from './components/GiftcardComponent';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport PayButton from '../internal/PayButton';\nimport AdyenCheckoutError from '../../core/Errors/AdyenCheckoutError';\nimport { PaymentAmount } from '../../types/global-types';\nimport { GiftCardElementData, GiftCardConfiguration, balanceCheckResponseType } from './types';\nimport { TxVariants } from '../tx-variants';\nimport SRPanelProvider from '../../core/Errors/SRPanelProvider';\n\nexport class GiftcardElement extends UIElement<GiftCardConfiguration> {\n public static type = TxVariants.giftcard;\n\n protected static defaultProps = {\n brandsConfiguration: {}\n };\n\n formatProps(props) {\n return {\n ...props?.configuration,\n ...props\n };\n }\n\n formatData(): GiftCardElementData {\n return {\n paymentMethod: {\n type: this.constructor['type'],\n brand: this.props.brand,\n encryptedCardNumber: this.state.data?.encryptedCardNumber,\n encryptedSecurityCode: this.state.data?.encryptedSecurityCode\n }\n };\n }\n\n get isValid() {\n return !!this.state.isValid;\n }\n\n get icon() {\n return this.props.brandsConfiguration[this.props.brand]?.icon || this.props.icon || this.resources.getImage()(this.props.brand);\n }\n\n get displayName() {\n return this.props.brandsConfiguration[this.props.brand]?.name || this.props.name;\n }\n\n private handleBalanceCheck = (data: GiftCardElementData): Promise<balanceCheckResponseType> => {\n if (this.props.onBalanceCheck) {\n return new Promise((resolve, reject) => {\n void this.props.onBalanceCheck(resolve, reject, data);\n });\n }\n\n if (this.props.session) {\n return this.props.session.checkBalance(data);\n }\n };\n\n private onOrderRequest = data => {\n if (this.props.onOrderRequest)\n return new Promise((resolve, reject) => {\n void this.props.onOrderRequest(resolve, reject, data);\n });\n if (this.props.session) {\n return this.props.session.createOrder();\n }\n };\n\n public balanceCheck() {\n return this.onBalanceCheck();\n }\n\n private onBalanceCheck = (): void => {\n if (!this.isValid) {\n this.showValidation();\n return;\n }\n\n // skip balance check if no onBalanceCheck event has been defined\n const hasBalanceCheck = this.props.session || this.props.onBalanceCheck;\n if (!hasBalanceCheck) return super.submit();\n\n this.setStatus('loading');\n\n this.handleBalanceCheck(this.formatData())\n .then(({ balance, transactionLimit = {} as PaymentAmount }) => {\n if (!balance) throw new Error('card-error'); // card doesn't exist\n if (balance?.currency !== this.props.amount?.currency) throw new Error('currency-error');\n if (balance?.value <= 0) throw new Error('no-balance');\n\n if (this.props.amount.value > balance.value || this.props.amount.value > transactionLimit.value) {\n if (this.props.order) {\n return this.makeSubmitCall();\n }\n\n return this.onOrderRequest(this.data).then((order: { orderData: string; pspReference: string }) => {\n this.setState({ order: { orderData: order.orderData, pspReference: order.pspReference } });\n return this.makeSubmitCall();\n });\n } else {\n return this.handleOnRequiringConfirmation(balance, transactionLimit);\n }\n })\n .catch(error => {\n this.setStatus(error?.message || 'error');\n if (this.props.onError) {\n if (error instanceof AdyenCheckoutError) {\n this.handleError(error);\n } else {\n this.handleError(new AdyenCheckoutError('ERROR', error));\n }\n }\n });\n };\n\n /**\n * Check if it should call onRequiringConfirmation\n */\n private handleOnRequiringConfirmation = (balance, transactionLimit): Promise<any> => {\n this.componentRef.setBalance({ balance, transactionLimit });\n this.setStatus('ready');\n\n // 1. if we show pay button we don't need to ask for confirmation\n if (this.props.showPayButton) {\n return;\n }\n // 2. there's no callback, we throw error\n if (!this.props.onRequiringConfirmation) {\n throw new AdyenCheckoutError('IMPLEMENTATION_ERROR', 'onRequiringConfirmation must be provided');\n }\n // 3. success case if in case of custom pay button\n return (\n new Promise<void>((resolve, reject) => {\n void this.props.onRequiringConfirmation(resolve, reject);\n })\n //when this resolve passed to onRequiringConfirmation gets resolved make payments call\n .then(() => this.makeSubmitCall())\n //when it gets rejected handle cancellation\n .catch(() => {})\n );\n };\n\n public submit() {\n // for simplicity of the merchant we always only expose .submit()\n // however to make the actual payment call we call makeSubmitCall\n this.balanceCheck();\n }\n\n // this makes the payment, as .submit is used by the merchant to trigger the payButton action\n private makeSubmitCall() {\n super.submit();\n }\n\n // Giftcards override the regular payButton flow\n public payButton = props => {\n return <PayButton {...props} />;\n };\n\n render() {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <SRPanelProvider srPanel={this.props.modules.srPanel}>\n <GiftcardComponent\n ref={ref => {\n this.componentRef = ref;\n }}\n {...this.props}\n handleKeyPress={this.handleKeyPress}\n showPayButton={this.props.showPayButton}\n onChange={this.setState}\n makeBalanceCheck={() => this.onBalanceCheck()}\n makePayment={() => this.makeSubmitCall()}\n payButton={this.payButton}\n />\n </SRPanelProvider>\n </CoreProvider>\n );\n }\n}\n\nexport default GiftcardElement;\n"],"names":["GiftcardElement","UIElement","formatProps","props","configuration","formatData","paymentMethod","type","this","constructor","brand","encryptedCardNumber","state","data","encryptedSecurityCode","isValid","icon","brandsConfiguration","resources","getImage","displayName","name","balanceCheck","onBalanceCheck","submit","makeSubmitCall","super","render","h","CoreProvider","i18n","loadingContext","SRPanelProvider","srPanel","modules","GiftcardComponent","ref","componentRef","handleKeyPress","showPayButton","onChange","setState","makeBalanceCheck","makePayment","payButton","args","_define_property","handleBalanceCheck","Promise","resolve","reject","session","checkBalance","onOrderRequest","createOrder","showValidation","setStatus","then","balance","transactionLimit","Error","currency","amount","value","order","orderData","pspReference","handleOnRequiringConfirmation","catch","error","message","onError","AdyenCheckoutError","handleError","setBalance","onRequiringConfirmation","PayButton","TxVariants","giftcard","defaultProps"],"mappings":"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"}
1
+ {"version":3,"file":"Giftcard.js","sources":["../../../../src/components/Giftcard/Giftcard.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport GiftcardComponent from './components/GiftcardComponent';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport PayButton from '../internal/PayButton';\nimport AdyenCheckoutError from '../../core/Errors/AdyenCheckoutError';\nimport { PaymentAmount } from '../../types/global-types';\nimport { GiftCardElementData, GiftCardConfiguration, balanceCheckResponseType, GiftCardBalanceCheckErrorType } from './types';\nimport { TxVariants } from '../tx-variants';\nimport SRPanelProvider from '../../core/Errors/SRPanelProvider';\n\nexport class GiftcardElement extends UIElement<GiftCardConfiguration> {\n public static type = TxVariants.giftcard;\n\n protected componentRef: GiftcardComponent | undefined;\n\n protected static defaultProps = {\n brandsConfiguration: {}\n };\n\n formatProps(props) {\n return {\n ...props?.configuration,\n ...props\n };\n }\n\n formatData(): GiftCardElementData {\n return {\n paymentMethod: {\n type: this.constructor['type'],\n brand: this.props.brand,\n encryptedCardNumber: this.state.data?.encryptedCardNumber,\n encryptedSecurityCode: this.state.data?.encryptedSecurityCode\n }\n };\n }\n\n get isValid() {\n return !!this.state.isValid;\n }\n\n get icon() {\n return this.props.brandsConfiguration[this.props.brand]?.icon || this.props.icon || this.resources.getImage()(this.props.brand);\n }\n\n get displayName() {\n return this.props.brandsConfiguration[this.props.brand]?.name || this.props.name;\n }\n\n private setBalanceCheckError(errorMessage: GiftCardBalanceCheckErrorType | null): void {\n this.componentRef?.setBalanceCheckErrors?.(errorMessage);\n }\n\n private handleBalanceCheck = (data: GiftCardElementData): Promise<balanceCheckResponseType> => {\n if (this.props.onBalanceCheck) {\n return new Promise((resolve, reject) => {\n void this.props.onBalanceCheck(resolve, reject, data);\n });\n }\n\n if (this.props.session) {\n return this.props.session.checkBalance(data);\n }\n };\n\n private onOrderRequest = data => {\n if (this.props.onOrderRequest)\n return new Promise((resolve, reject) => {\n void this.props.onOrderRequest(resolve, reject, data);\n });\n if (this.props.session) {\n return this.props.session.createOrder();\n }\n };\n\n public balanceCheck() {\n return this.onBalanceCheck();\n }\n\n private onBalanceCheck = (): void => {\n if (!this.isValid) {\n this.showValidation();\n return;\n }\n\n // skip balance check if no onBalanceCheck event has been defined\n const hasBalanceCheck = this.props.session || this.props.onBalanceCheck;\n if (!hasBalanceCheck) return super.submit();\n\n this.setStatus('loading');\n\n this.handleBalanceCheck(this.formatData())\n .then(({ balance, transactionLimit = {} as PaymentAmount }) => {\n // Clear any previous balance check errors on success\n this.setBalanceCheckError(null);\n\n // We still need to throw these errors, otherwise it would be a breaking changing\n if (!balance) throw new Error('card-error'); // card doesn't exist\n if (balance?.currency !== this.props.amount?.currency) throw new Error('currency-error');\n if (balance?.value <= 0) throw new Error('no-balance');\n\n if (this.props.amount.value > balance.value || this.props.amount.value > transactionLimit.value) {\n if (this.props.order) {\n return this.makeSubmitCall();\n }\n\n return this.onOrderRequest(this.data).then((order: { orderData: string; pspReference: string }) => {\n this.setState({ order: { orderData: order.orderData, pspReference: order.pspReference } });\n return this.makeSubmitCall();\n });\n } else {\n return this.handleOnRequiringConfirmation(balance, transactionLimit);\n }\n })\n .catch(error => {\n // Simply pass the raw error message to setBalanceCheckError\n this.setBalanceCheckError(error?.message);\n\n // Still call handleError for other side effects (analytics, onError callback)\n if (error instanceof AdyenCheckoutError) {\n this.handleError(error);\n } else {\n this.handleError(new AdyenCheckoutError('ERROR', error));\n }\n });\n };\n\n /**\n * Check if it should call onRequiringConfirmation\n */\n private handleOnRequiringConfirmation = (balance, transactionLimit): Promise<any> => {\n this.componentRef.setBalance({ balance, transactionLimit });\n this.setStatus('ready');\n\n // 1. if we show pay button we don't need to ask for confirmation\n if (this.props.showPayButton) {\n return;\n }\n // 2. there's no callback, we throw error\n if (!this.props.onRequiringConfirmation) {\n throw new AdyenCheckoutError('IMPLEMENTATION_ERROR', 'onRequiringConfirmation must be provided');\n }\n // 3. success case if in case of custom pay button\n return (\n new Promise<void>((resolve, reject) => {\n void this.props.onRequiringConfirmation(resolve, reject);\n })\n //when this resolve passed to onRequiringConfirmation gets resolved make payments call\n .then(() => this.makeSubmitCall())\n //when it gets rejected handle cancellation\n .catch(() => {})\n );\n };\n\n public submit() {\n // for simplicity of the merchant we always only expose .submit()\n // however to make the actual payment call we call makeSubmitCall\n this.balanceCheck();\n }\n\n // this makes the payment, as .submit is used by the merchant to trigger the payButton action\n private makeSubmitCall() {\n super.submit();\n }\n\n // Giftcards override the regular payButton flow\n public payButton = props => {\n return <PayButton {...props} />;\n };\n\n render() {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <SRPanelProvider srPanel={this.props.modules.srPanel}>\n <GiftcardComponent\n ref={ref => {\n this.componentRef = ref;\n }}\n {...this.props}\n handleKeyPress={this.handleKeyPress}\n showPayButton={this.props.showPayButton}\n onChange={this.setState}\n makeBalanceCheck={() => this.onBalanceCheck()}\n makePayment={() => this.makeSubmitCall()}\n payButton={this.payButton}\n />\n </SRPanelProvider>\n </CoreProvider>\n );\n }\n}\n\nexport default GiftcardElement;\n"],"names":["GiftcardElement","UIElement","formatProps","props","configuration","formatData","paymentMethod","type","this","constructor","brand","encryptedCardNumber","state","data","encryptedSecurityCode","isValid","icon","brandsConfiguration","resources","getImage","displayName","name","setBalanceCheckError","errorMessage","componentRef","setBalanceCheckErrors","balanceCheck","onBalanceCheck","submit","makeSubmitCall","super","render","h","CoreProvider","i18n","loadingContext","SRPanelProvider","srPanel","modules","GiftcardComponent","ref","handleKeyPress","showPayButton","onChange","setState","makeBalanceCheck","makePayment","payButton","args","_define_property","handleBalanceCheck","Promise","resolve","reject","session","checkBalance","onOrderRequest","createOrder","showValidation","setStatus","then","balance","transactionLimit","Error","currency","amount","value","order","orderData","pspReference","handleOnRequiringConfirmation","catch","error","message","AdyenCheckoutError","handleError","setBalance","onRequiringConfirmation","PayButton","TxVariants","giftcard","defaultProps"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{Component as t,createElement as e}from"../../../external/preact/dist/preact.js";import r from"../../internal/SecuredFields/SFP/SecuredFieldsProvider.js";import s from"../../internal/Alert/Alert.js";import a from"./GiftcardResult.js";import{useCoreContext as o}from"../../../core/Context/CoreProvider.js";import{GIFT_CARD as i}from"../../internal/SecuredFields/lib/constants.js";import{GiftCardFields as n}from"./GiftcardFields.js";import{useSRPanelForGiftcardErrors as c}from"./useSRPanelForGiftcardErrors.js";function u(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}class l extends t{render(t,{focusedElement:n,balance:u,transactionLimit:l,isValidating:p,transformedErrors:d}){const{i18n:h}=o();c({errors:d,isValidating:p,sfp:this.sfp});const m=l?.value<u?.value?l:u,f=m?.value>=this.props.amount?.value;if(m&&f)return e(a,{amount:this.props.amount,balance:u,transactionLimit:l,makePayment:t.makePayment,status:this.state.status,makeBalanceCheck:t.makeBalanceCheck,showPayButton:this.props.showPayButton,payButton:this.props.payButton});const g=t=>{if(t.errors.encryptedCardNumber)return h.get(t.errors.encryptedCardNumber);switch(this.state.status){case"no-balance":return h.get("error.giftcard.no-balance");case"card-error":return h.get("error.giftcard.card-error");case"currency-error":return h.get("error.giftcard.currency-error");default:return null}};return e("div",{className:"adyen-checkout__giftcard"},"error"===this.state.status&&e(s,{icon:"cross"},h.get("error.message.unknown")),e(r,{...this.props,ref:t=>{this.sfp=t},onChange:this.onChange,onFocus:this.handleFocus,type:i,render:({setRootNode:t,setFocusOn:e},r)=>this.props.fieldsLayoutComponent({i18n:h,pinRequired:this.props.pinRequired,focusedElement:n,getCardErrorMessage:g,setRootNode:t,setFocusOn:e,sfpState:r})}),this.props.showPayButton&&this.props.payButton({status:this.state.status,onClick:this.props.makeBalanceCheck,label:h.get("applyGiftcard")}))}constructor(...t){super(...t),u(this,"state",{status:"ready",data:{},balance:null,transactionLimit:null,focusedElement:!1,isValid:!1,sfpState:{},isValidating:!1,transformedErrors:{}}),u(this,"sfp",void 0),u(this,"mapErrorsToValidationObjects",()=>this.sfp?this.sfp.mapErrorsToValidationRuleResult():{}),u(this,"onChange",t=>{const e=this.mapErrorsToValidationObjects();this.setState({sfpState:t,transformedErrors:e}),this.props.onChange({data:t.data,isValid:t.isSfpValid})}),u(this,"handleFocus",t=>{this.setState({focusedElement:t.currentFocusObject});!0===t.focus?this.props.onFocus(t):this.props.onBlur(t)}),u(this,"setBalance",({balance:t,transactionLimit:e})=>{this.setState({balance:t,transactionLimit:e})}),u(this,"showValidation",()=>{this.setState({isValidating:!0}),this.sfp?.showValidation()})}}u(l,"defaultProps",{pinRequired:!0,expiryDateRequired:!1,onChange:()=>{},onFocus:()=>{},onBlur:()=>{},fieldsLayoutComponent:n});export{l as default};
1
+ import{Component as t,createElement as e}from"../../../external/preact/dist/preact.js";import r from"../../internal/SecuredFields/SFP/SecuredFieldsProvider.js";import s from"../../internal/Alert/Alert.js";import a from"./GiftcardResult.js";import{useCoreContext as o}from"../../../core/Context/CoreProvider.js";import{GIFT_CARD as n}from"../../internal/SecuredFields/lib/constants.js";import{GiftCardFields as i}from"./GiftcardFields.js";import{useSRPanelForGiftcardErrors as c}from"./useSRPanelForGiftcardErrors.js";function l(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}class d extends t{generateBalanceCheckErrors(t){const e={};return null===t||(e.encryptedCardNumber={isValid:!1,errorMessage:`error.giftcard.${t}`,error:t}),e}isBalanceCheckError(t){return["no-balance","card-error","currency-error"].includes(t)}render(t,{focusedElement:i,balance:l,transactionLimit:d,isValidating:u,transformedErrors:p}){const{i18n:h}=o();c({errors:p,isValidating:u,sfp:this.sfp});const m=d?.value<l?.value?d:l,f=m?.value>=this.props.amount?.value;if(m&&f)return e(a,{amount:this.props.amount,balance:l,transactionLimit:d,makePayment:t.makePayment,status:this.state.status,makeBalanceCheck:t.makeBalanceCheck,showPayButton:this.props.showPayButton,payButton:this.props.payButton});const C=t=>t.errors.encryptedCardNumber?h.get(t.errors.encryptedCardNumber):p.encryptedCardNumber?h.get(p.encryptedCardNumber.errorMessage):null;return e("div",{className:"adyen-checkout__giftcard"},"error"===this.state.status&&e(s,{icon:"cross"},h.get("error.message.unknown")),e(r,{...this.props,ref:t=>{this.sfp=t},onChange:this.onChange,onFocus:this.handleFocus,type:n,render:({setRootNode:t,setFocusOn:e},r)=>this.props.fieldsLayoutComponent({i18n:h,pinRequired:this.props.pinRequired,focusedElement:i,getCardErrorMessage:C,setRootNode:t,setFocusOn:e,sfpState:r})}),this.props.showPayButton&&this.props.payButton({status:this.state.status,onClick:this.props.makeBalanceCheck,label:h.get("applyGiftcard")}))}constructor(...t){super(...t),l(this,"state",{status:"ready",data:{},balance:null,transactionLimit:null,focusedElement:!1,isValid:!1,sfpState:{},isValidating:!1,transformedErrors:{}}),l(this,"sfp",void 0),l(this,"mapErrorsToValidationObjects",()=>this.sfp?this.sfp.mapErrorsToValidationRuleResult():{}),l(this,"updateTransformedErrors",t=>{const e={...this.mapErrorsToValidationObjects(),...t};this.setState({transformedErrors:e})}),l(this,"onChange",t=>{this.setState({sfpState:t},()=>this.updateTransformedErrors()),this.props.onChange({data:t.data,isValid:t.isSfpValid})}),l(this,"handleFocus",t=>{this.setState({focusedElement:t.currentFocusObject});!0===t.focus?this.props.onFocus(t):this.props.onBlur(t)}),l(this,"setBalance",({balance:t,transactionLimit:e})=>{this.setState({balance:t,transactionLimit:e})}),l(this,"setBalanceCheckErrors",t=>{if(this.isBalanceCheckError(t)){const e=this.generateBalanceCheckErrors(t);this.updateTransformedErrors(e)}}),l(this,"showValidation",()=>{this.setState({isValidating:!0}),this.sfp?.showValidation()})}}l(d,"defaultProps",{pinRequired:!0,expiryDateRequired:!1,onChange:()=>{},onFocus:()=>{},onBlur:()=>{},fieldsLayoutComponent:i});export{d as default};
2
2
  //# sourceMappingURL=GiftcardComponent.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GiftcardComponent.js","sources":["../../../../../src/components/Giftcard/components/GiftcardComponent.tsx"],"sourcesContent":["import { Component, FunctionComponent, h } from 'preact';\nimport SecuredFieldsProvider from '../../internal/SecuredFields/SFP/SecuredFieldsProvider';\nimport Alert from '../../internal/Alert';\nimport GiftcardResult from './GiftcardResult';\nimport { useCoreContext } from '../../../core/Context/CoreProvider';\nimport { PaymentAmount } from '../../../types/global-types';\nimport { GIFT_CARD } from '../../internal/SecuredFields/lib/constants';\nimport { GiftCardFields } from './GiftcardFields';\nimport { GiftcardFieldsProps, Placeholders } from './types';\nimport { useSRPanelForGiftcardErrors } from './useSRPanelForGiftcardErrors';\n\ninterface GiftcardComponentProps {\n onChange: (state) => void;\n onFocus: (event) => void;\n onBlur: (event) => void;\n\n makeBalanceCheck: (event) => void;\n makePayment: (event) => void;\n\n amount?: PaymentAmount;\n showPayButton: boolean;\n payButton: (config) => any;\n\n pinRequired: boolean;\n expiryDateRequired?: boolean;\n fieldsLayoutComponent: FunctionComponent<GiftcardFieldsProps>;\n placeholders?: Placeholders;\n handleKeyPress?: (o: KeyboardEvent) => void;\n}\n\nclass Giftcard extends Component<GiftcardComponentProps> {\n public state = {\n status: 'ready',\n data: {},\n balance: null,\n transactionLimit: null,\n focusedElement: false,\n isValid: false,\n sfpState: {},\n isValidating: false,\n transformedErrors: {}\n };\n\n public static defaultProps = {\n pinRequired: true,\n expiryDateRequired: false,\n onChange: () => {},\n onFocus: () => {},\n onBlur: () => {},\n fieldsLayoutComponent: GiftCardFields\n };\n\n public sfp;\n\n /**\n * Maps string error codes from SecuredFields to validation rule objects\n */\n public mapErrorsToValidationObjects = () => {\n // Use the sfp reference to call mapErrorsToValidationRuleResult\n if (!this.sfp) return {};\n return this.sfp.mapErrorsToValidationRuleResult();\n };\n\n public onChange = sfpState => {\n // Add transformed errors to the state\n const transformedErrors = this.mapErrorsToValidationObjects();\n\n this.setState({\n sfpState,\n transformedErrors\n });\n\n this.props.onChange({\n data: sfpState.data,\n isValid: sfpState.isSfpValid\n });\n };\n\n public handleFocus = e => {\n this.setState({ focusedElement: e.currentFocusObject });\n\n const isFocused = e.focus === true;\n if (isFocused) {\n this.props.onFocus(e);\n } else {\n this.props.onBlur(e);\n }\n };\n\n public setBalance = ({ balance, transactionLimit }) => {\n this.setState({ balance, transactionLimit });\n };\n\n public showValidation = () => {\n this.setState({ isValidating: true });\n\n // Validate SecuredFields\n this.sfp?.showValidation();\n };\n\n render(props, { focusedElement, balance, transactionLimit, isValidating, transformedErrors }) {\n const { i18n } = useCoreContext();\n\n // Handle SRPanel errors in render with transformed error objects\n useSRPanelForGiftcardErrors({\n errors: transformedErrors,\n isValidating,\n sfp: this.sfp\n });\n\n const transactionAmount = transactionLimit?.value < balance?.value ? transactionLimit : balance;\n const hasEnoughBalance = transactionAmount?.value >= this.props.amount?.value;\n\n if (transactionAmount && hasEnoughBalance) {\n return (\n <GiftcardResult\n amount={this.props.amount}\n balance={balance}\n transactionLimit={transactionLimit}\n makePayment={props.makePayment}\n status={this.state.status}\n makeBalanceCheck={props.makeBalanceCheck}\n showPayButton={this.props.showPayButton}\n payButton={this.props.payButton}\n />\n );\n }\n\n const getCardErrorMessage = sfpState => {\n if (sfpState.errors.encryptedCardNumber) return i18n.get(sfpState.errors.encryptedCardNumber);\n\n switch (this.state.status) {\n case 'no-balance':\n return i18n.get('error.giftcard.no-balance');\n case 'card-error':\n return i18n.get('error.giftcard.card-error');\n case 'currency-error':\n return i18n.get('error.giftcard.currency-error');\n default:\n return null;\n }\n };\n\n return (\n <div className=\"adyen-checkout__giftcard\">\n {this.state.status === 'error' && <Alert icon={'cross'}>{i18n.get('error.message.unknown')}</Alert>}\n\n <SecuredFieldsProvider\n {...this.props}\n ref={ref => {\n this.sfp = ref;\n }}\n onChange={this.onChange}\n onFocus={this.handleFocus}\n type={GIFT_CARD}\n render={({ setRootNode, setFocusOn }, sfpState) =>\n this.props.fieldsLayoutComponent({\n i18n: i18n,\n pinRequired: this.props.pinRequired,\n focusedElement: focusedElement,\n getCardErrorMessage: getCardErrorMessage,\n setRootNode: setRootNode,\n setFocusOn: setFocusOn,\n sfpState: sfpState\n })\n }\n />\n\n {this.props.showPayButton &&\n this.props.payButton({\n status: this.state.status,\n onClick: this.props.makeBalanceCheck,\n label: i18n.get('applyGiftcard')\n })}\n </div>\n );\n }\n}\n\nexport default Giftcard;\n"],"names":["Giftcard","Component","render","props","focusedElement","balance","transactionLimit","isValidating","transformedErrors","i18n","useCoreContext","useSRPanelForGiftcardErrors","errors","sfp","this","transactionAmount","value","hasEnoughBalance","amount","h","GiftcardResult","makePayment","status","state","makeBalanceCheck","showPayButton","payButton","getCardErrorMessage","sfpState","encryptedCardNumber","get","div","className","Alert","icon","SecuredFieldsProvider","ref","onChange","onFocus","handleFocus","type","GIFT_CARD","setRootNode","setFocusOn","fieldsLayoutComponent","pinRequired","onClick","label","super","args","_define_property","data","isValid","mapErrorsToValidationObjects","mapErrorsToValidationRuleResult","setState","isSfpValid","e","currentFocusObject","focus","onBlur","setBalance","showValidation","defaultProps","expiryDateRequired","GiftCardFields"],"mappings":"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"}
1
+ {"version":3,"file":"GiftcardComponent.js","sources":["../../../../../src/components/Giftcard/components/GiftcardComponent.tsx"],"sourcesContent":["import { Component, FunctionComponent, h } from 'preact';\nimport SecuredFieldsProvider from '../../internal/SecuredFields/SFP/SecuredFieldsProvider';\nimport Alert from '../../internal/Alert';\nimport GiftcardResult from './GiftcardResult';\nimport { useCoreContext } from '../../../core/Context/CoreProvider';\nimport { PaymentAmount } from '../../../types/global-types';\nimport { GIFT_CARD } from '../../internal/SecuredFields/lib/constants';\nimport { GiftCardFields } from './GiftcardFields';\nimport { GiftcardFieldsProps, Placeholders } from './types';\nimport { useSRPanelForGiftcardErrors } from './useSRPanelForGiftcardErrors';\nimport { GiftCardBalanceCheckErrorType } from '../types';\n\ninterface GiftcardComponentProps {\n onChange: (state) => void;\n onFocus: (event) => void;\n onBlur: (event) => void;\n\n makeBalanceCheck: (event) => void;\n makePayment: (event) => void;\n\n amount?: PaymentAmount;\n showPayButton: boolean;\n payButton: (config) => any;\n\n pinRequired: boolean;\n expiryDateRequired?: boolean;\n fieldsLayoutComponent: FunctionComponent<GiftcardFieldsProps>;\n placeholders?: Placeholders;\n handleKeyPress?: (o: KeyboardEvent) => void;\n}\n\nclass Giftcard extends Component<GiftcardComponentProps> {\n public state = {\n status: 'ready',\n data: {},\n balance: null,\n transactionLimit: null,\n focusedElement: false,\n isValid: false,\n sfpState: {},\n isValidating: false,\n transformedErrors: {}\n };\n\n public static defaultProps = {\n pinRequired: true,\n expiryDateRequired: false,\n onChange: () => {},\n onFocus: () => {},\n onBlur: () => {},\n fieldsLayoutComponent: GiftCardFields\n };\n\n public sfp: SecuredFieldsProvider;\n\n /**\n * Maps string error codes from SecuredFields to validation rule objects\n */\n public mapErrorsToValidationObjects = () => {\n // Use the sfp reference to call mapErrorsToValidationRuleResult\n if (!this.sfp) return {};\n return this.sfp.mapErrorsToValidationRuleResult();\n };\n\n private updateTransformedErrors = (balanceCheckErrors?: Record<string, any>) => {\n const transformedErrors = this.mapErrorsToValidationObjects();\n\n const mergedErrors = { ...transformedErrors, ...balanceCheckErrors };\n\n this.setState({ transformedErrors: mergedErrors });\n };\n\n public onChange = sfpState => {\n this.setState({ sfpState }, () => this.updateTransformedErrors());\n\n this.props.onChange({\n data: sfpState.data,\n isValid: sfpState.isSfpValid\n });\n };\n\n public handleFocus = e => {\n this.setState({ focusedElement: e.currentFocusObject });\n\n const isFocused = e.focus === true;\n if (isFocused) {\n this.props.onFocus(e);\n } else {\n this.props.onBlur(e);\n }\n };\n\n public setBalance = ({ balance, transactionLimit }) => {\n this.setState({ balance, transactionLimit });\n };\n\n /**\n * Generates balance check errors in the same format as SFP errors\n * Compatible with the transformedErrors structure\n */\n private generateBalanceCheckErrors(errorType?: GiftCardBalanceCheckErrorType | null): Record<string, any> {\n const balanceCheckErrors: Record<string, any> = {};\n\n // This is the field that the error is associated with, only used for SR logic\n const fieldToAnnounce = 'encryptedCardNumber';\n\n // If errorType is null, clear errors\n if (errorType === null) {\n return balanceCheckErrors;\n }\n\n // Create error in the same format as SFP errors for consistency\n balanceCheckErrors[fieldToAnnounce] = {\n isValid: false,\n errorMessage: `error.giftcard.${errorType}`,\n error: errorType\n };\n\n return balanceCheckErrors;\n }\n\n /**\n * Checks if a status represents a balance check error\n */\n private isBalanceCheckError(status: string): boolean {\n return ['no-balance', 'card-error', 'currency-error'].includes(status);\n }\n\n /**\n * Method called by GiftcardElement to set balance check errors only\n */\n public setBalanceCheckErrors = (errorType: GiftCardBalanceCheckErrorType | null): void => {\n // Check if the errors should be displayed\n if (this.isBalanceCheckError(errorType)) {\n // Generate balance check errors in the style of useForm\n // This is usefull because then we can use the same logic for SF and balance check errors\n // Also we can use the same logic for SRPanel errors\n const balanceCheckErrors = this.generateBalanceCheckErrors(errorType);\n this.updateTransformedErrors(balanceCheckErrors);\n }\n };\n\n public showValidation = () => {\n this.setState({ isValidating: true });\n\n // Validate SecuredFields\n this.sfp?.showValidation();\n };\n\n render(props, { focusedElement, balance, transactionLimit, isValidating, transformedErrors }) {\n const { i18n } = useCoreContext();\n\n // Handle SRPanel errors in render with transformed error objects\n useSRPanelForGiftcardErrors({\n errors: transformedErrors,\n isValidating,\n sfp: this.sfp\n });\n\n const transactionAmount = transactionLimit?.value < balance?.value ? transactionLimit : balance;\n const hasEnoughBalance = transactionAmount?.value >= this.props.amount?.value;\n\n if (transactionAmount && hasEnoughBalance) {\n return (\n <GiftcardResult\n amount={this.props.amount}\n balance={balance}\n transactionLimit={transactionLimit}\n makePayment={props.makePayment}\n status={this.state.status}\n makeBalanceCheck={props.makeBalanceCheck}\n showPayButton={this.props.showPayButton}\n payButton={this.props.payButton}\n />\n );\n }\n\n const getCardErrorMessage = sfpState => {\n if (sfpState.errors.encryptedCardNumber) return i18n.get(sfpState.errors.encryptedCardNumber);\n\n // This logic is a bit of a hack, but it's the only way to get the error message for balance check errors\n // In the future we should move this logic to useForm\n if (transformedErrors.encryptedCardNumber) {\n return i18n.get(transformedErrors.encryptedCardNumber.errorMessage);\n }\n\n return null;\n };\n\n return (\n <div className=\"adyen-checkout__giftcard\">\n {this.state.status === 'error' && <Alert icon={'cross'}>{i18n.get('error.message.unknown')}</Alert>}\n\n <SecuredFieldsProvider\n {...this.props}\n ref={ref => {\n this.sfp = ref;\n }}\n onChange={this.onChange}\n onFocus={this.handleFocus}\n type={GIFT_CARD}\n render={({ setRootNode, setFocusOn }, sfpState) =>\n this.props.fieldsLayoutComponent({\n i18n: i18n,\n pinRequired: this.props.pinRequired,\n focusedElement: focusedElement,\n getCardErrorMessage: getCardErrorMessage,\n setRootNode: setRootNode,\n setFocusOn: setFocusOn,\n sfpState: sfpState\n })\n }\n />\n\n {this.props.showPayButton &&\n this.props.payButton({\n status: this.state.status,\n onClick: this.props.makeBalanceCheck,\n label: i18n.get('applyGiftcard')\n })}\n </div>\n );\n }\n}\n\nexport default Giftcard;\n"],"names":["Giftcard","Component","generateBalanceCheckErrors","errorType","balanceCheckErrors","isValid","errorMessage","error","isBalanceCheckError","status","includes","render","props","focusedElement","balance","transactionLimit","isValidating","transformedErrors","i18n","useCoreContext","useSRPanelForGiftcardErrors","errors","sfp","this","transactionAmount","value","hasEnoughBalance","amount","h","GiftcardResult","makePayment","state","makeBalanceCheck","showPayButton","payButton","getCardErrorMessage","sfpState","encryptedCardNumber","get","div","className","Alert","icon","SecuredFieldsProvider","ref","onChange","onFocus","handleFocus","type","GIFT_CARD","setRootNode","setFocusOn","fieldsLayoutComponent","pinRequired","onClick","label","super","args","_define_property","data","mapErrorsToValidationObjects","mapErrorsToValidationRuleResult","updateTransformedErrors","mergedErrors","setState","isSfpValid","e","currentFocusObject","focus","onBlur","setBalance","setBalanceCheckErrors","showValidation","defaultProps","expiryDateRequired","GiftCardFields"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{createElement as e}from"../../external/preact/dist/preact.js";import{UIElement as t}from"../internal/UIElement/UIElement.js";import o from"./components/MBWayInput/MBWayInput.js";import{CoreProvider as r}from"../../core/Context/CoreProvider.js";import n from"./components/MBWayAwait/config.js";import s from"../internal/Await/Await.js";import a from"../../core/Errors/SRPanelProvider.js";import{TxVariants as i}from"../tx-variants.js";class p extends t{formatProps(e){const{data:t={},placeholders:o={}}=e;return{...e,data:{phoneNumber:t.telephoneNumber||t.phoneNumber,phonePrefix:t.phonePrefix||"+351"},placeholders:{phoneNumber:o.telephoneNumber||o.phoneNumber}}}formatData(){return{paymentMethod:{type:p.type,...this.state.data?.phoneNumber&&{telephoneNumber:this.state.data.phonePrefix+this.state.data.phoneNumber}}}}get isValid(){return!!this.state.isValid}get displayName(){return this.props.name}render(){return this.props.paymentData?e(r,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},e(a,{srPanel:this.props.modules.srPanel},e(s,{ref:e=>{this.componentRef=e},clientKey:this.props.clientKey,paymentData:this.props.paymentData,onError:this.props.onError,onComplete:this.onComplete,brandLogo:this.icon,type:n.type,messageText:this.props.i18n.get(n.messageTextId),awaitText:this.props.i18n.get(n.awaitTextId),showCountdownTimer:n.showCountdownTimer,delay:n.STATUS_INTERVAL,countdownTime:n.COUNTDOWN_MINUTES,throttleTime:n.THROTTLE_TIME,throttleInterval:n.THROTTLE_INTERVAL,onActionHandled:this.onActionHandled}))):e(r,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},e(o,{ref:e=>{this.componentRef=e},...this.props,setComponentRef:this.setComponentRef,onChange:this.setState,onSubmit:this.submit,payButton:this.payButton}))}}var m,h,l;m=p,h="type",l=i.mbway,h in m?Object.defineProperty(m,h,{value:l,enumerable:!0,configurable:!0,writable:!0}):m[h]=l;export{p as MBWayElement,p as default};
1
+ import{createElement as e}from"../../external/preact/dist/preact.js";import{UIElement as t}from"../internal/UIElement/UIElement.js";import o from"./components/MBWayInput/MBWayInput.js";import{CoreProvider as r}from"../../core/Context/CoreProvider.js";import n from"./components/MBWayAwait/config.js";import s from"../internal/Await/Await.js";import a from"../../core/Errors/SRPanelProvider.js";import{TxVariants as i}from"../tx-variants.js";class p extends t{formatProps(e){const{data:t={},placeholders:o={}}=e;return{...e,data:{phoneNumber:t.telephoneNumber||t.phoneNumber,phonePrefix:t.phonePrefix||"+351"},placeholders:{phoneNumber:o.telephoneNumber||o.phoneNumber}}}formatData(){return{paymentMethod:{type:p.type,...this.state.data?.phoneNumber&&{telephoneNumber:this.state.data.phonePrefix+this.state.data.phoneNumber}}}}get isValid(){return!!this.state.isValid}get displayName(){return this.props.name}render(){return this.props.paymentData?e(r,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},e(a,{srPanel:this.props.modules.srPanel},e(s,{clientKey:this.props.clientKey,paymentData:this.props.paymentData,onError:this.props.onError,onComplete:this.onComplete,brandLogo:this.icon,type:n.type,messageText:this.props.i18n.get(n.messageTextId),awaitText:this.props.i18n.get(n.awaitTextId),showCountdownTimer:n.showCountdownTimer,delay:n.STATUS_INTERVAL,countdownTime:n.COUNTDOWN_MINUTES,throttleTime:n.THROTTLE_TIME,throttleInterval:n.THROTTLE_INTERVAL,onActionHandled:this.onActionHandled}))):e(r,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},e(o,{ref:e=>{this.componentRef=e},...this.props,setComponentRef:this.setComponentRef,onChange:this.setState,onSubmit:this.submit,payButton:this.payButton}))}}var m,h,l;m=p,h="type",l=i.mbway,h in m?Object.defineProperty(m,h,{value:l,enumerable:!0,configurable:!0,writable:!0}):m[h]=l;export{p as MBWayElement,p as default};
2
2
  //# sourceMappingURL=MBWay.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MBWay.js","sources":["../../../../src/components/MBWay/MBWay.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport MBWayInput from './components/MBWayInput';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport config from './components/MBWayAwait/config';\nimport Await from '../../components/internal/Await';\nimport SRPanelProvider from '../../core/Errors/SRPanelProvider';\nimport { TxVariants } from '../tx-variants';\nimport { AwaitConfiguration } from '../internal/Await/types';\n\nexport class MBWayElement extends UIElement<AwaitConfiguration> {\n public static type = TxVariants.mbway;\n\n formatProps(props) {\n const { data = {}, placeholders = {} } = props;\n\n return {\n ...props,\n data: {\n phoneNumber: data.telephoneNumber || data.phoneNumber,\n phonePrefix: data.phonePrefix || '+351' // if not specified default to Portuguese country code\n },\n placeholders: {\n phoneNumber: placeholders.telephoneNumber || placeholders.phoneNumber\n }\n };\n }\n\n /**\n * Formats the component data output\n */\n formatData(): object {\n return {\n paymentMethod: {\n type: MBWayElement.type,\n ...(this.state.data?.phoneNumber && { telephoneNumber: this.state.data.phonePrefix + this.state.data.phoneNumber })\n }\n };\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={config.type}\n messageText={this.props.i18n.get(config.messageTextId)}\n awaitText={this.props.i18n.get(config.awaitTextId)}\n showCountdownTimer={config.showCountdownTimer}\n delay={config.STATUS_INTERVAL}\n countdownTime={config.COUNTDOWN_MINUTES}\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 <MBWayInput\n /* @ts-ignore ref handled internally by Component */\n ref={ref => {\n this.componentRef = ref;\n }}\n {...this.props}\n setComponentRef={this.setComponentRef}\n onChange={this.setState}\n onSubmit={this.submit}\n payButton={this.payButton}\n />\n </CoreProvider>\n );\n }\n}\n\nexport default MBWayElement;\n"],"names":["MBWayElement","UIElement","formatProps","props","data","placeholders","phoneNumber","telephoneNumber","phonePrefix","formatData","paymentMethod","type","this","state","isValid","displayName","name","render","paymentData","h","CoreProvider","i18n","loadingContext","resources","SRPanelProvider","srPanel","modules","Await","ref","componentRef","clientKey","onError","onComplete","brandLogo","icon","config","messageText","get","messageTextId","awaitText","awaitTextId","showCountdownTimer","delay","STATUS_INTERVAL","countdownTime","COUNTDOWN_MINUTES","throttleTime","THROTTLE_TIME","throttleInterval","THROTTLE_INTERVAL","onActionHandled","MBWayInput","setComponentRef","onChange","setState","onSubmit","submit","payButton","TxVariants","mbway"],"mappings":"ybAUO,MAAMA,UAAqBC,EAG9BC,WAAAA,CAAYC,GACR,MAAMC,KAAEA,EAAO,CAAA,EAAEC,aAAEA,EAAe,CAAA,GAAOF,EAEzC,MAAO,IACAA,EACHC,KAAM,CACFE,YAAaF,EAAKG,iBAAmBH,EAAKE,YAC1CE,YAAaJ,EAAKI,aAAe,QAErCH,aAAc,CACVC,YAAaD,EAAaE,iBAAmBF,EAAaC,aAGtE,CAKAG,UAAAA,GACI,MAAO,CACHC,cAAe,CACXC,KAAMX,EAAaW,QACfC,KAAKC,MAAMT,MAAME,aAAe,CAAEC,gBAAiBK,KAAKC,MAAMT,KAAKI,YAAcI,KAAKC,MAAMT,KAAKE,cAGjH,CAEA,WAAIQ,GACA,QAASF,KAAKC,MAAMC,OACxB,CAEA,eAAIC,GACA,OAAOH,KAAKT,MAAMa,IACtB,CAEAC,MAAAA,GACI,OAAIL,KAAKT,MAAMe,YAEPC,EAACC,EAAAA,CAAaC,KAAMT,KAAKT,MAAMkB,KAAMC,eAAgBV,KAAKT,MAAMmB,eAAgBC,UAAWX,KAAKW,WAC5FJ,EAACK,EAAAA,CAAgBC,QAASb,KAAKT,MAAMuB,QAAQD,SACzCN,EAACQ,EAAAA,CACGC,IAAKA,IACDhB,KAAKiB,aAAeD,GAExBE,UAAWlB,KAAKT,MAAM2B,UACtBZ,YAAaN,KAAKT,MAAMe,YACxBa,QAASnB,KAAKT,MAAM4B,QACpBC,WAAYpB,KAAKoB,WACjBC,UAAWrB,KAAKsB,KAChBvB,KAAMwB,EAAOxB,KACbyB,YAAaxB,KAAKT,MAAMkB,KAAKgB,IAAIF,EAAOG,eACxCC,UAAW3B,KAAKT,MAAMkB,KAAKgB,IAAIF,EAAOK,aACtCC,mBAAoBN,EAAOM,mBAC3BC,MAAOP,EAAOQ,gBACdC,cAAeT,EAAOU,kBACtBC,aAAcX,EAAOY,cACrBC,iBAAkBb,EAAOc,kBACzBC,gBAAiBtC,KAAKsC,oBAQtC/B,EAACC,EAAAA,CAAaC,KAAMT,KAAKT,MAAMkB,KAAMC,eAAgBV,KAAKT,MAAMmB,eAAgBC,UAAWX,KAAKW,WAC5FJ,EAACgC,EAAAA,CAEGvB,IAAKA,IACDhB,KAAKiB,aAAeD,MAEpBhB,KAAKT,MACTiD,gBAAiBxC,KAAKwC,gBACtBC,SAAUzC,KAAK0C,SACfC,SAAU3C,KAAK4C,OACfC,UAAW7C,KAAK6C,YAIhC,cAlFSzD,IACKW,SAAO+C,EAAWC"}
1
+ {"version":3,"file":"MBWay.js","sources":["../../../../src/components/MBWay/MBWay.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport MBWayInput from './components/MBWayInput';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport config from './components/MBWayAwait/config';\nimport Await from '../../components/internal/Await';\nimport SRPanelProvider from '../../core/Errors/SRPanelProvider';\nimport { TxVariants } from '../tx-variants';\nimport { AwaitConfiguration } from '../internal/Await/types';\n\nexport class MBWayElement extends UIElement<AwaitConfiguration> {\n public static type = TxVariants.mbway;\n\n formatProps(props) {\n const { data = {}, placeholders = {} } = props;\n\n return {\n ...props,\n data: {\n phoneNumber: data.telephoneNumber || data.phoneNumber,\n phonePrefix: data.phonePrefix || '+351' // if not specified default to Portuguese country code\n },\n placeholders: {\n phoneNumber: placeholders.telephoneNumber || placeholders.phoneNumber\n }\n };\n }\n\n /**\n * Formats the component data output\n */\n formatData(): object {\n return {\n paymentMethod: {\n type: MBWayElement.type,\n ...(this.state.data?.phoneNumber && { telephoneNumber: this.state.data.phonePrefix + this.state.data.phoneNumber })\n }\n };\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 clientKey={this.props.clientKey}\n paymentData={this.props.paymentData}\n onError={this.props.onError}\n onComplete={this.onComplete}\n brandLogo={this.icon}\n type={config.type}\n messageText={this.props.i18n.get(config.messageTextId)}\n awaitText={this.props.i18n.get(config.awaitTextId)}\n showCountdownTimer={config.showCountdownTimer}\n delay={config.STATUS_INTERVAL}\n countdownTime={config.COUNTDOWN_MINUTES}\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 <MBWayInput\n /* @ts-ignore ref handled internally by Component */\n ref={ref => {\n this.componentRef = ref;\n }}\n {...this.props}\n setComponentRef={this.setComponentRef}\n onChange={this.setState}\n onSubmit={this.submit}\n payButton={this.payButton}\n />\n </CoreProvider>\n );\n }\n}\n\nexport default MBWayElement;\n"],"names":["MBWayElement","UIElement","formatProps","props","data","placeholders","phoneNumber","telephoneNumber","phonePrefix","formatData","paymentMethod","type","this","state","isValid","displayName","name","render","paymentData","h","CoreProvider","i18n","loadingContext","resources","SRPanelProvider","srPanel","modules","Await","clientKey","onError","onComplete","brandLogo","icon","config","messageText","get","messageTextId","awaitText","awaitTextId","showCountdownTimer","delay","STATUS_INTERVAL","countdownTime","COUNTDOWN_MINUTES","throttleTime","THROTTLE_TIME","throttleInterval","THROTTLE_INTERVAL","onActionHandled","MBWayInput","ref","componentRef","setComponentRef","onChange","setState","onSubmit","submit","payButton","TxVariants","mbway"],"mappings":"ybAUO,MAAMA,UAAqBC,EAG9BC,WAAAA,CAAYC,GACR,MAAMC,KAAEA,EAAO,CAAA,EAAEC,aAAEA,EAAe,CAAA,GAAOF,EAEzC,MAAO,IACAA,EACHC,KAAM,CACFE,YAAaF,EAAKG,iBAAmBH,EAAKE,YAC1CE,YAAaJ,EAAKI,aAAe,QAErCH,aAAc,CACVC,YAAaD,EAAaE,iBAAmBF,EAAaC,aAGtE,CAKAG,UAAAA,GACI,MAAO,CACHC,cAAe,CACXC,KAAMX,EAAaW,QACfC,KAAKC,MAAMT,MAAME,aAAe,CAAEC,gBAAiBK,KAAKC,MAAMT,KAAKI,YAAcI,KAAKC,MAAMT,KAAKE,cAGjH,CAEA,WAAIQ,GACA,QAASF,KAAKC,MAAMC,OACxB,CAEA,eAAIC,GACA,OAAOH,KAAKT,MAAMa,IACtB,CAEAC,MAAAA,GACI,OAAIL,KAAKT,MAAMe,YAEPC,EAACC,EAAAA,CAAaC,KAAMT,KAAKT,MAAMkB,KAAMC,eAAgBV,KAAKT,MAAMmB,eAAgBC,UAAWX,KAAKW,WAC5FJ,EAACK,EAAAA,CAAgBC,QAASb,KAAKT,MAAMuB,QAAQD,SACzCN,EAACQ,EAAAA,CACGC,UAAWhB,KAAKT,MAAMyB,UACtBV,YAAaN,KAAKT,MAAMe,YACxBW,QAASjB,KAAKT,MAAM0B,QACpBC,WAAYlB,KAAKkB,WACjBC,UAAWnB,KAAKoB,KAChBrB,KAAMsB,EAAOtB,KACbuB,YAAatB,KAAKT,MAAMkB,KAAKc,IAAIF,EAAOG,eACxCC,UAAWzB,KAAKT,MAAMkB,KAAKc,IAAIF,EAAOK,aACtCC,mBAAoBN,EAAOM,mBAC3BC,MAAOP,EAAOQ,gBACdC,cAAeT,EAAOU,kBACtBC,aAAcX,EAAOY,cACrBC,iBAAkBb,EAAOc,kBACzBC,gBAAiBpC,KAAKoC,oBAQtC7B,EAACC,EAAAA,CAAaC,KAAMT,KAAKT,MAAMkB,KAAMC,eAAgBV,KAAKT,MAAMmB,eAAgBC,UAAWX,KAAKW,WAC5FJ,EAAC8B,EAAAA,CAEGC,IAAKA,IACDtC,KAAKuC,aAAeD,MAEpBtC,KAAKT,MACTiD,gBAAiBxC,KAAKwC,gBACtBC,SAAUzC,KAAK0C,SACfC,SAAU3C,KAAK4C,OACfC,UAAW7C,KAAK6C,YAIhC,cA/ESzD,IACKW,SAAO+C,EAAWC"}
@@ -1 +1 @@
1
- {"version":3,"file":"PayByBankPixAwait.js","sources":["../../../../../../../src/components/PayByBankPix/components/Enrollment/components/PayByBankPixAwait.tsx"],"sourcesContent":["import { h } from 'preact';\nimport AwaitLogoContainer, { IAwaitLogoContainer } from './AwaitLogoContainer';\nimport Await from '../../../../internal/Await';\nimport './PayBankBankPixAwait.scss';\nimport { AwaitComponentProps } from '../../../../internal/Await/types';\n\nexport interface IPayByBankPixAwait extends Partial<AwaitComponentProps>, Partial<IAwaitLogoContainer> {}\n\nfunction PayByBankPixAwait(props: IPayByBankPixAwait) {\n return (\n <div className={'adyen-checkout-pay-by-bank-pix-await'}>\n {props.logos?.length > 0 && <AwaitLogoContainer logos={props.logos}></AwaitLogoContainer>}\n <Await\n // We want the countdown capability but the adyen-checkout__await__countdown-holder is visually hidden.\n showCountdownTimer={true}\n type={props.type}\n countdownTime={props.countdownTime}\n clientKey={props.clientKey}\n onError={props.onError}\n awaitText={props.awaitText}\n instructions={props.instructions}\n pollStatus={props.pollStatus}\n endSlot={props.endSlot}\n ></Await>\n </div>\n );\n}\n\nexport default PayByBankPixAwait;\n"],"names":["PayByBankPixAwait","props","h","div","className","logos","length","AwaitLogoContainer","Await","showCountdownTimer","type","countdownTime","clientKey","onError","awaitText","instructions","pollStatus","endSlot"],"mappings":"wKAQA,SAASA,EAAkBC,GACvB,OACIC,EAACC,MAAAA,CAAIC,UAAW,wCACXH,EAAMI,OAAOC,OAAS,GAAKJ,EAACK,EAAAA,CAAmBF,MAAOJ,EAAMI,QAC7DH,EAACM,EAAAA,CAEGC,oBAAoB,EACpBC,KAAMT,EAAMS,KACZC,cAAeV,EAAMU,cACrBC,UAAWX,EAAMW,UACjBC,QAASZ,EAAMY,QACfC,UAAWb,EAAMa,UACjBC,aAAcd,EAAMc,aACpBC,WAAYf,EAAMe,WAClBC,QAAShB,EAAMgB,UAI/B"}
1
+ {"version":3,"file":"PayByBankPixAwait.js","sources":["../../../../../../../src/components/PayByBankPix/components/Enrollment/components/PayByBankPixAwait.tsx"],"sourcesContent":["import { h } from 'preact';\nimport AwaitLogoContainer, { IAwaitLogoContainer } from './AwaitLogoContainer';\nimport Await from '../../../../internal/Await';\nimport './PayBankBankPixAwait.scss';\nimport { AwaitComponentProps } from '../../../../internal/Await/types';\n\nexport interface IPayByBankPixAwait extends Partial<AwaitComponentProps>, Partial<IAwaitLogoContainer> {}\n\nfunction PayByBankPixAwait(props: IPayByBankPixAwait) {\n return (\n <div className={'adyen-checkout-pay-by-bank-pix-await'}>\n {props.logos?.length > 0 && <AwaitLogoContainer logos={props.logos}></AwaitLogoContainer>}\n <Await\n // We want the countdown capability but the adyen-checkout__await__countdown-holder is visually hidden.\n showCountdownTimer={true}\n type={props.type}\n countdownTime={props.countdownTime}\n clientKey={props.clientKey}\n onError={props.onError}\n awaitText={props.awaitText}\n instructions={props.instructions}\n pollStatus={props.pollStatus}\n endSlot={props.endSlot}\n />\n </div>\n );\n}\n\nexport default PayByBankPixAwait;\n"],"names":["PayByBankPixAwait","props","h","div","className","logos","length","AwaitLogoContainer","Await","showCountdownTimer","type","countdownTime","clientKey","onError","awaitText","instructions","pollStatus","endSlot"],"mappings":"wKAQA,SAASA,EAAkBC,GACvB,OACIC,EAACC,MAAAA,CAAIC,UAAW,wCACXH,EAAMI,OAAOC,OAAS,GAAKJ,EAACK,EAAAA,CAAmBF,MAAOJ,EAAMI,QAC7DH,EAACM,EAAAA,CAEGC,oBAAoB,EACpBC,KAAMT,EAAMS,KACZC,cAAeV,EAAMU,cACrBC,UAAWX,EAAMW,UACjBC,QAASZ,EAAMY,QACfC,UAAWb,EAAMa,UACjBC,aAAcd,EAAMc,aACpBC,WAAYf,EAAMe,WAClBC,QAAShB,EAAMgB,UAI/B"}
@@ -1,2 +1,2 @@
1
- import{createElement as t}from"../../external/preact/dist/preact.js";import{UIElement as e}from"../internal/UIElement/UIElement.js";import{CoreProvider as o}from"../../core/Context/CoreProvider.js";import s from"../internal/Await/Await.js";import r from"../../core/Errors/SRPanelProvider.js";import{TxVariants as n}from"../tx-variants.js";import{PayToIdentifierEnum as a}from"./components/IdentifierSelector.js";import i from"./components/PayToComponent.js";import{PayToInstructions as p}from"./components/PayToInstructions.js";import m from"./components/MandateSummary.js";import h from"../internal/PayButton/PayButton.js";import{payAmountLabel as d}from"../internal/PayButton/utils.js";function l(t,e,o){return e in t?Object.defineProperty(t,e,{value:o,enumerable:!0,configurable:!0,writable:!0}):t[e]=o,t}const u=6e4,c=1e4,y=!1,f=t=>{if("bsb-option"===t.selectedInput)return`${t.bsb}-${t.bankAccountNumber}`;if("payid-option"===t.selectedInput)switch(t.selectedIdentifier){case a.email:return t.email;case a.abn:return t.abn;case a.orgid:return t.orgid;case a.phone:return`${t.phonePrefix}-${t.phoneNumber}`}};class P extends e{formatProps(t){return{...t,data:{...t.data,phonePrefix:"+61"}}}formatData(){return this.props.storedPaymentMethodId?{paymentMethod:{type:P.type,storedPaymentMethodId:this.props.storedPaymentMethodId}}:{paymentMethod:{type:P.type,shopperAccountIdentifier:f(this.state.data)},shopperName:{firstName:this.state.data.firstName,lastName:this.state.data.lastName}}}get isValid(){return!!this.props.storedPaymentMethodId||!!this.state.isValid}get displayName(){return this.props.storedPaymentMethodId&&this.props.label?this.props.label:this.props.name}get additionalInfo(){return this.props.storedPaymentMethodId?this.props.name:""}render(){return this.props.storedPaymentMethodId?t(o,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},this.props.showPayButton&&t(h,{...this.props,classNameModifiers:["standalone"],amount:this.props.amount,label:d(this.props.i18n,this.props.amount),onClick:this.submit})):this.props.paymentData?t(o,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},t(r,{srPanel:this.props.modules.srPanel},t(s,{ref:t=>{this.componentRef=t},amount:this.props.amount,showAmount:!0,instructions:p,clientKey:this.props.clientKey,paymentData:this.props.paymentData,onError:this.props.onError,onComplete:this.onComplete,brandLogo:this.icon,type:this.constructor.type,messageText:this.props.i18n.get("payto.confirmPayment"),awaitText:this.props.i18n.get("payto.await.waitForConfirmation"),showCountdownTimer:y,throttleTime:u,throttleInterval:c,onActionHandled:this.onActionHandled,endSlot:()=>!!this.props.mandate&&t(m,{mandate:this.props.mandate,payee:this.props.payee,currencyCode:this.props.amount.currency})}))):t(o,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},t(i,{data:this.props.data,placeholders:this.props.placeholders,setComponentRef:this.setComponentRef,onChange:this.setState,payButton:this.payButton,showPayButton:this.props.showPayButton}))}}l(P,"type",n.payto),l(P,"defaultProps",{placeholders:{}});export{P as PayToElement,P as default};
1
+ import{createElement as t}from"../../external/preact/dist/preact.js";import{UIElement as e}from"../internal/UIElement/UIElement.js";import{CoreProvider as o}from"../../core/Context/CoreProvider.js";import s from"../internal/Await/Await.js";import r from"../../core/Errors/SRPanelProvider.js";import{TxVariants as n}from"../tx-variants.js";import{PayToIdentifierEnum as a}from"./components/IdentifierSelector.js";import i from"./components/PayToComponent.js";import{PayToInstructions as p}from"./components/PayToInstructions.js";import m from"./components/MandateSummary.js";import h from"../internal/PayButton/PayButton.js";import{payAmountLabel as d}from"../internal/PayButton/utils.js";function l(t,e,o){return e in t?Object.defineProperty(t,e,{value:o,enumerable:!0,configurable:!0,writable:!0}):t[e]=o,t}const u=6e4,c=1e4,y=!1,f=t=>{if("bsb-option"===t.selectedInput)return`${t.bsb}-${t.bankAccountNumber}`;if("payid-option"===t.selectedInput)switch(t.selectedIdentifier){case a.email:return t.email;case a.abn:return t.abn;case a.orgid:return t.orgid;case a.phone:return`${t.phonePrefix}-${t.phoneNumber}`}};class P extends e{formatProps(t){return{...t,data:{...t.data,phonePrefix:"+61"}}}formatData(){return this.props.storedPaymentMethodId?{paymentMethod:{type:P.type,storedPaymentMethodId:this.props.storedPaymentMethodId}}:{paymentMethod:{type:P.type,shopperAccountIdentifier:f(this.state.data)},shopperName:{firstName:this.state.data.firstName,lastName:this.state.data.lastName}}}get isValid(){return!!this.props.storedPaymentMethodId||!!this.state.isValid}get displayName(){return this.props.storedPaymentMethodId&&this.props.label?this.props.label:this.props.name}get additionalInfo(){return this.props.storedPaymentMethodId?this.props.name:""}render(){return this.props.storedPaymentMethodId?t(o,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},this.props.showPayButton&&t(h,{...this.props,classNameModifiers:["standalone"],amount:this.props.amount,label:d(this.props.i18n,this.props.amount),onClick:this.submit})):this.props.paymentData?t(o,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},t(r,{srPanel:this.props.modules.srPanel},t(s,{amount:this.props.amount,showAmount:!0,instructions:p,clientKey:this.props.clientKey,paymentData:this.props.paymentData,onError:this.props.onError,onComplete:this.onComplete,brandLogo:this.icon,type:this.constructor.type,messageText:this.props.i18n.get("payto.confirmPayment"),awaitText:this.props.i18n.get("payto.await.waitForConfirmation"),showCountdownTimer:y,throttleTime:u,throttleInterval:c,onActionHandled:this.onActionHandled,endSlot:()=>!!this.props.mandate&&t(m,{mandate:this.props.mandate,payee:this.props.payee,currencyCode:this.props.amount.currency})}))):t(o,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},t(i,{data:this.props.data,placeholders:this.props.placeholders,setComponentRef:this.setComponentRef,onChange:this.setState,payButton:this.payButton,showPayButton:this.props.showPayButton}))}}l(P,"type",n.payto),l(P,"defaultProps",{placeholders:{}});export{P as PayToElement,P as default};
2
2
  //# sourceMappingURL=PayTo.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PayTo.js","sources":["../../../../src/components/PayTo/PayTo.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport Await from '../../components/internal/Await';\nimport SRPanelProvider from '../../core/Errors/SRPanelProvider';\nimport { TxVariants } from '../tx-variants';\nimport { PayToIdentifierEnum } from './components/IdentifierSelector';\nimport PayToComponent from './components/PayToComponent';\nimport { PayToInstructions } from './components/PayToInstructions';\nimport MandateSummary from './components/MandateSummary';\nimport { PayToConfiguration, PayToData } from './types';\nimport PayButton, { payAmountLabel } from '../internal/PayButton';\n\n/*\nAwait Config (previously in its own file)\n */\nconst COUNTDOWN_MINUTES = 15; // min\nconst THROTTLE_TIME = 60000; // ms\nconst THROTTLE_INTERVAL = 10000; // ms\n\nconst config = {\n COUNTDOWN_MINUTES,\n THROTTLE_TIME,\n THROTTLE_INTERVAL,\n showCountdownTimer: false\n};\n\nconst getAccountIdentifier = (state: PayToData) => {\n // if it's BSB Input type merge bankAccount with BSB\n if (state.selectedInput === 'bsb-option') {\n return `${state.bsb}-${state.bankAccountNumber}`;\n } else if (state.selectedInput === 'payid-option') {\n // otherwise use the option in the dropdown\n switch (state.selectedIdentifier) {\n case PayToIdentifierEnum.email:\n return state.email;\n case PayToIdentifierEnum.abn:\n return state.abn;\n case PayToIdentifierEnum.orgid:\n return state.orgid;\n case PayToIdentifierEnum.phone:\n // merge the phone prefix and number - see comment in ticket\n return `${state.phonePrefix}-${state.phoneNumber}`;\n }\n }\n};\n/**\n *\n */\nexport class PayToElement extends UIElement<PayToConfiguration> {\n public static readonly type = TxVariants.payto;\n\n protected static defaultProps = {\n placeholders: {}\n };\n\n formatProps(props: PayToConfiguration) {\n return {\n ...props,\n data: {\n ...props.data,\n phonePrefix: '+61' // hardcode +61\n }\n };\n }\n\n /**\n * Formats the component data output\n */\n formatData() {\n if (this.props.storedPaymentMethodId) {\n return {\n paymentMethod: {\n type: PayToElement.type,\n storedPaymentMethodId: this.props.storedPaymentMethodId\n }\n };\n }\n\n return {\n paymentMethod: {\n type: PayToElement.type,\n shopperAccountIdentifier: getAccountIdentifier(this.state.data)\n },\n shopperName: {\n firstName: this.state.data.firstName,\n lastName: this.state.data.lastName\n }\n };\n }\n\n get isValid(): boolean {\n if (this.props.storedPaymentMethodId) {\n return true;\n }\n\n return !!this.state.isValid;\n }\n\n get displayName() {\n if (this.props.storedPaymentMethodId && this.props.label) {\n return this.props.label;\n }\n return this.props.name;\n }\n\n get additionalInfo() {\n return this.props.storedPaymentMethodId ? this.props.name : '';\n }\n\n render() {\n // Stored\n if (this.props.storedPaymentMethodId) {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n {this.props.showPayButton && (\n <PayButton\n {...this.props}\n classNameModifiers={['standalone']}\n amount={this.props.amount}\n label={payAmountLabel(this.props.i18n, this.props.amount)}\n onClick={this.submit}\n />\n )}\n </CoreProvider>\n );\n }\n // Await\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 amount={this.props.amount}\n showAmount={true}\n instructions={PayToInstructions}\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('payto.confirmPayment')}\n awaitText={this.props.i18n.get('payto.await.waitForConfirmation')}\n showCountdownTimer={config.showCountdownTimer}\n throttleTime={config.THROTTLE_TIME}\n throttleInterval={config.THROTTLE_INTERVAL}\n onActionHandled={this.onActionHandled}\n endSlot={() =>\n !!this.props.mandate && (\n <MandateSummary mandate={this.props.mandate} payee={this.props.payee} currencyCode={this.props.amount.currency} />\n )\n }\n />\n </SRPanelProvider>\n </CoreProvider>\n );\n }\n // Input\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <PayToComponent\n data={this.props.data}\n placeholders={this.props.placeholders}\n setComponentRef={this.setComponentRef}\n onChange={this.setState}\n payButton={this.payButton}\n showPayButton={this.props.showPayButton}\n />\n </CoreProvider>\n );\n }\n}\n\nexport default PayToElement;\n"],"names":["config","getAccountIdentifier","state","selectedInput","bsb","bankAccountNumber","selectedIdentifier","PayToIdentifierEnum","email","abn","orgid","phone","phonePrefix","phoneNumber","PayToElement","UIElement","formatProps","props","data","formatData","this","storedPaymentMethodId","paymentMethod","type","shopperAccountIdentifier","shopperName","firstName","lastName","isValid","displayName","label","name","additionalInfo","render","h","CoreProvider","i18n","loadingContext","resources","showPayButton","PayButton","classNameModifiers","amount","payAmountLabel","onClick","submit","paymentData","SRPanelProvider","srPanel","modules","Await","ref","componentRef","showAmount","instructions","PayToInstructions","clientKey","onError","onComplete","brandLogo","icon","constructor","messageText","get","awaitText","showCountdownTimer","throttleTime","throttleInterval","onActionHandled","endSlot","mandate","MandateSummary","payee","currencyCode","currency","PayToComponent","placeholders","setComponentRef","onChange","setState","payButton","_define_property","TxVariants","payto","defaultProps"],"mappings":"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"}
1
+ {"version":3,"file":"PayTo.js","sources":["../../../../src/components/PayTo/PayTo.tsx"],"sourcesContent":["import { h } from 'preact';\nimport UIElement from '../internal/UIElement/UIElement';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport Await from '../../components/internal/Await';\nimport SRPanelProvider from '../../core/Errors/SRPanelProvider';\nimport { TxVariants } from '../tx-variants';\nimport { PayToIdentifierEnum } from './components/IdentifierSelector';\nimport PayToComponent from './components/PayToComponent';\nimport { PayToInstructions } from './components/PayToInstructions';\nimport MandateSummary from './components/MandateSummary';\nimport { PayToConfiguration, PayToData } from './types';\nimport PayButton, { payAmountLabel } from '../internal/PayButton';\n\n/*\nAwait Config (previously in its own file)\n */\nconst COUNTDOWN_MINUTES = 15; // min\nconst THROTTLE_TIME = 60000; // ms\nconst THROTTLE_INTERVAL = 10000; // ms\n\nconst config = {\n COUNTDOWN_MINUTES,\n THROTTLE_TIME,\n THROTTLE_INTERVAL,\n showCountdownTimer: false\n};\n\nconst getAccountIdentifier = (state: PayToData) => {\n // if it's BSB Input type merge bankAccount with BSB\n if (state.selectedInput === 'bsb-option') {\n return `${state.bsb}-${state.bankAccountNumber}`;\n } else if (state.selectedInput === 'payid-option') {\n // otherwise use the option in the dropdown\n switch (state.selectedIdentifier) {\n case PayToIdentifierEnum.email:\n return state.email;\n case PayToIdentifierEnum.abn:\n return state.abn;\n case PayToIdentifierEnum.orgid:\n return state.orgid;\n case PayToIdentifierEnum.phone:\n // merge the phone prefix and number - see comment in ticket\n return `${state.phonePrefix}-${state.phoneNumber}`;\n }\n }\n};\n/**\n *\n */\nexport class PayToElement extends UIElement<PayToConfiguration> {\n public static readonly type = TxVariants.payto;\n\n protected static defaultProps = {\n placeholders: {}\n };\n\n formatProps(props: PayToConfiguration) {\n return {\n ...props,\n data: {\n ...props.data,\n phonePrefix: '+61' // hardcode +61\n }\n };\n }\n\n /**\n * Formats the component data output\n */\n formatData() {\n if (this.props.storedPaymentMethodId) {\n return {\n paymentMethod: {\n type: PayToElement.type,\n storedPaymentMethodId: this.props.storedPaymentMethodId\n }\n };\n }\n\n return {\n paymentMethod: {\n type: PayToElement.type,\n shopperAccountIdentifier: getAccountIdentifier(this.state.data)\n },\n shopperName: {\n firstName: this.state.data.firstName,\n lastName: this.state.data.lastName\n }\n };\n }\n\n get isValid(): boolean {\n if (this.props.storedPaymentMethodId) {\n return true;\n }\n\n return !!this.state.isValid;\n }\n\n get displayName() {\n if (this.props.storedPaymentMethodId && this.props.label) {\n return this.props.label;\n }\n return this.props.name;\n }\n\n get additionalInfo() {\n return this.props.storedPaymentMethodId ? this.props.name : '';\n }\n\n render() {\n // Stored\n if (this.props.storedPaymentMethodId) {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n {this.props.showPayButton && (\n <PayButton\n {...this.props}\n classNameModifiers={['standalone']}\n amount={this.props.amount}\n label={payAmountLabel(this.props.i18n, this.props.amount)}\n onClick={this.submit}\n />\n )}\n </CoreProvider>\n );\n }\n // Await\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 amount={this.props.amount}\n showAmount={true}\n instructions={PayToInstructions}\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('payto.confirmPayment')}\n awaitText={this.props.i18n.get('payto.await.waitForConfirmation')}\n showCountdownTimer={config.showCountdownTimer}\n throttleTime={config.THROTTLE_TIME}\n throttleInterval={config.THROTTLE_INTERVAL}\n onActionHandled={this.onActionHandled}\n endSlot={() =>\n !!this.props.mandate && (\n <MandateSummary mandate={this.props.mandate} payee={this.props.payee} currencyCode={this.props.amount.currency} />\n )\n }\n />\n </SRPanelProvider>\n </CoreProvider>\n );\n }\n // Input\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <PayToComponent\n data={this.props.data}\n placeholders={this.props.placeholders}\n setComponentRef={this.setComponentRef}\n onChange={this.setState}\n payButton={this.payButton}\n showPayButton={this.props.showPayButton}\n />\n </CoreProvider>\n );\n }\n}\n\nexport default PayToElement;\n"],"names":["config","getAccountIdentifier","state","selectedInput","bsb","bankAccountNumber","selectedIdentifier","PayToIdentifierEnum","email","abn","orgid","phone","phonePrefix","phoneNumber","PayToElement","UIElement","formatProps","props","data","formatData","this","storedPaymentMethodId","paymentMethod","type","shopperAccountIdentifier","shopperName","firstName","lastName","isValid","displayName","label","name","additionalInfo","render","h","CoreProvider","i18n","loadingContext","resources","showPayButton","PayButton","classNameModifiers","amount","payAmountLabel","onClick","submit","paymentData","SRPanelProvider","srPanel","modules","Await","showAmount","instructions","PayToInstructions","clientKey","onError","onComplete","brandLogo","icon","constructor","messageText","get","awaitText","showCountdownTimer","throttleTime","throttleInterval","onActionHandled","endSlot","mandate","MandateSummary","payee","currencyCode","currency","PayToComponent","placeholders","setComponentRef","onChange","setState","payButton","_define_property","TxVariants","payto","defaultProps"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{createElement as t}from"../../external/preact/dist/preact.js";import e from"../helpers/QRLoaderContainer/QRLoaderContainer.js";import{CoreProvider as r}from"../../core/Context/CoreProvider.js";import o from"./components/PixInput/PixInput.js";import{cleanCPFCNPJ as s}from"../internal/SocialSecurityNumberBrazil/utils.js";import{TxVariants as i}from"../tx-variants.js";import"../../external/preact/hooks/dist/hooks.js";import"../../core/Errors/AdyenCheckoutError.js";import"../../core/Errors/SRPanelContext.js";import"../internal/Button/Button.js";import n from"../internal/QRLoader/QRLoader.js";import"../internal/QRLoader/QRLoaderDetailsProvider.js";import a from"../../core/Errors/SRPanelProvider.js";import p from"./components/PixQRDetails.js";function l(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}class m extends e{get isValid(){return!!this.state.isValid}formatProps(t){return{copyBtn:!0,introduction:"pix.instructions",...super.formatProps(t)}}formatData(){const{data:t={}}=this.state,{firstName:e,lastName:r,socialSecurityNumber:o=""}=t;return{paymentMethod:{type:this.props.type||this.constructor.type},...e&&r&&{shopperName:{firstName:e,lastName:r}},...o&&{socialSecurityNumber:s(o)}}}renderQRCode(){return t(r,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},t(a,{srPanel:this.props.modules.srPanel},t(n,{ref:t=>{this.componentRef=t},...this.props,type:this.constructor.type,brandLogo:this.props.brandLogo||this.icon,onComplete:this.onComplete,onActionHandled:this.onActionHandled,brandName:this.displayName,onSubmitAnalytics:this.submitAnalytics},t(p,null))))}render(){return this.props.paymentData?this.renderQRCode():t(r,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},t(o,{ref:t=>{this.componentRef=t},...this.props,showPayButton:this.props.showPayButton,personalDetailsRequired:this.props.personalDetailsRequired,name:this.displayName,onChange:this.setState,payButton:this.payButton}))}}l(m,"type",i.pix),l(m,"defaultProps",{personalDetailsRequired:!1,countdownTime:15,delay:2e3,...e.defaultProps});export{m as default};
1
+ import{createElement as t}from"../../external/preact/dist/preact.js";import r from"../helpers/QRLoaderContainer/QRLoaderContainer.js";import{CoreProvider as e}from"../../core/Context/CoreProvider.js";import o from"./components/PixInput/PixInput.js";import{cleanCPFCNPJ as s}from"../internal/SocialSecurityNumberBrazil/utils.js";import{TxVariants as i}from"../tx-variants.js";import"../../external/preact/hooks/dist/hooks.js";import"../../core/Errors/AdyenCheckoutError.js";import"../../core/Errors/SRPanelContext.js";import"../internal/Button/Button.js";import n from"../internal/QRLoader/QRLoader.js";import"../internal/QRLoader/QRLoaderDetailsProvider.js";import a from"../../core/Errors/SRPanelProvider.js";import p from"./components/PixQRDetails.js";function l(t,r,e){return r in t?Object.defineProperty(t,r,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[r]=e,t}class m extends r{get isValid(){return!!this.state.isValid}formatProps(t){return{copyBtn:!0,introduction:"pix.instructions",...super.formatProps(t)}}formatData(){const{data:t={}}=this.state,{firstName:r,lastName:e,socialSecurityNumber:o=""}=t;return{paymentMethod:{type:this.props.type||this.constructor.type},...r&&e&&{shopperName:{firstName:r,lastName:e}},...o&&{socialSecurityNumber:s(o)}}}renderQRCode(){return t(e,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},t(a,{srPanel:this.props.modules.srPanel},t(n,{...this.props,type:this.constructor.type,brandLogo:this.props.brandLogo||this.icon,onComplete:this.onComplete,onActionHandled:this.onActionHandled,brandName:this.displayName,onSubmitAnalytics:this.submitAnalytics},t(p,null))))}render(){return this.props.paymentData?this.renderQRCode():t(e,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},t(o,{ref:t=>{this.componentRef=t},...this.props,showPayButton:this.props.showPayButton,personalDetailsRequired:this.props.personalDetailsRequired,name:this.displayName,onChange:this.setState,payButton:this.payButton}))}}l(m,"type",i.pix),l(m,"defaultProps",{personalDetailsRequired:!1,countdownTime:15,delay:2e3,...r.defaultProps});export{m as default};
2
2
  //# sourceMappingURL=Pix.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Pix.js","sources":["../../../../src/components/Pix/Pix.tsx"],"sourcesContent":["import { h } from 'preact';\nimport QRLoaderContainer from '../helpers/QRLoaderContainer/QRLoaderContainer';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport PixInput from './components/PixInput';\nimport { cleanCPFCNPJ } from '../internal/SocialSecurityNumberBrazil/utils';\nimport { PixElementData, PixConfiguration } from './types';\nimport { TxVariants } from '../tx-variants';\nimport QRLoader from '../internal/QRLoader';\nimport SRPanelProvider from '../../core/Errors/SRPanelProvider';\nimport PixQRDetails from './components/PixQRDetails';\nimport './Pix.scss';\n\nclass PixElement extends QRLoaderContainer<PixConfiguration> {\n public static type = TxVariants.pix;\n\n public static defaultProps = {\n personalDetailsRequired: false,\n countdownTime: 15,\n delay: 2000,\n ...QRLoaderContainer.defaultProps\n };\n\n get isValid(): boolean {\n return !!this.state.isValid;\n }\n\n formatProps(props: PixConfiguration): PixConfiguration {\n return {\n copyBtn: true,\n introduction: 'pix.instructions',\n ...super.formatProps(props)\n };\n }\n\n formatData(): PixElementData {\n const { data = {} } = this.state;\n const { firstName, lastName, socialSecurityNumber = '' } = data;\n\n return {\n paymentMethod: {\n type: this.props.type || this.constructor['type']\n },\n ...(firstName && lastName && { shopperName: { firstName, lastName } }),\n ...(socialSecurityNumber && { socialSecurityNumber: cleanCPFCNPJ(socialSecurityNumber) })\n };\n }\n\n renderQRCode() {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <SRPanelProvider srPanel={this.props.modules.srPanel}>\n <QRLoader\n ref={ref => {\n this.componentRef = ref;\n }}\n {...this.props}\n type={this.constructor['type']}\n brandLogo={this.props.brandLogo || this.icon}\n onComplete={this.onComplete}\n onActionHandled={this.onActionHandled}\n brandName={this.displayName}\n onSubmitAnalytics={this.submitAnalytics}\n >\n <PixQRDetails />\n </QRLoader>\n </SRPanelProvider>\n </CoreProvider>\n );\n }\n\n render() {\n if (this.props.paymentData) {\n return this.renderQRCode();\n }\n\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <PixInput\n ref={ref => {\n this.componentRef = ref;\n }}\n {...this.props}\n showPayButton={this.props.showPayButton}\n personalDetailsRequired={this.props.personalDetailsRequired}\n name={this.displayName}\n onChange={this.setState}\n payButton={this.payButton}\n />\n </CoreProvider>\n );\n }\n}\n\nexport default PixElement;\n"],"names":["PixElement","QRLoaderContainer","isValid","this","state","formatProps","props","copyBtn","introduction","super","formatData","data","firstName","lastName","socialSecurityNumber","paymentMethod","type","constructor","shopperName","cleanCPFCNPJ","renderQRCode","h","CoreProvider","i18n","loadingContext","resources","SRPanelProvider","srPanel","modules","QRLoader","ref","componentRef","brandLogo","icon","onComplete","onActionHandled","brandName","displayName","onSubmitAnalytics","submitAnalytics","PixQRDetails","render","paymentData","PixInput","showPayButton","personalDetailsRequired","name","onChange","setState","payButton","_define_property","TxVariants","pix","defaultProps","countdownTime","delay"],"mappings":"02BAYA,MAAMA,UAAmBC,EAUrB,WAAIC,GACA,QAASC,KAAKC,MAAMF,OACxB,CAEAG,WAAAA,CAAYC,GACR,MAAO,CACHC,SAAS,EACTC,aAAc,sBACXC,MAAMJ,YAAYC,GAE7B,CAEAI,UAAAA,GACI,MAAMC,KAAEA,EAAO,IAAOR,KAAKC,OACrBQ,UAAEA,EAASC,SAAEA,EAAQC,qBAAEA,EAAuB,IAAOH,EAE3D,MAAO,CACHI,cAAe,CACXC,KAAMb,KAAKG,MAAMU,MAAQb,KAAKc,YAAY,SAE1CL,GAAaC,GAAY,CAAEK,YAAa,CAAEN,YAAWC,gBACrDC,GAAwB,CAAEA,qBAAsBK,EAAaL,IAEzE,CAEAM,YAAAA,GACI,OACIC,EAACC,EAAAA,CAAaC,KAAMpB,KAAKG,MAAMiB,KAAMC,eAAgBrB,KAAKG,MAAMkB,eAAgBC,UAAWtB,KAAKsB,WAC5FJ,EAACK,EAAAA,CAAgBC,QAASxB,KAAKG,MAAMsB,QAAQD,SACzCN,EAACQ,EAAAA,CACGC,IAAKA,IACD3B,KAAK4B,aAAeD,MAEpB3B,KAAKG,MACTU,KAAMb,KAAKc,YAAY,KACvBe,UAAW7B,KAAKG,MAAM0B,WAAa7B,KAAK8B,KACxCC,WAAY/B,KAAK+B,WACjBC,gBAAiBhC,KAAKgC,gBACtBC,UAAWjC,KAAKkC,YAChBC,kBAAmBnC,KAAKoC,iBAExBlB,EAACmB,EAAAA,QAKrB,CAEAC,MAAAA,GACI,OAAItC,KAAKG,MAAMoC,YACJvC,KAAKiB,eAIZC,EAACC,EAAAA,CAAaC,KAAMpB,KAAKG,MAAMiB,KAAMC,eAAgBrB,KAAKG,MAAMkB,eAAgBC,UAAWtB,KAAKsB,WAC5FJ,EAACsB,EAAAA,CACGb,IAAKA,IACD3B,KAAK4B,aAAeD,MAEpB3B,KAAKG,MACTsC,cAAezC,KAAKG,MAAMsC,cAC1BC,wBAAyB1C,KAAKG,MAAMuC,wBACpCC,KAAM3C,KAAKkC,YACXU,SAAU5C,KAAK6C,SACfC,UAAW9C,KAAK8C,YAIhC,EA7EAC,EADElD,EACYgB,OAAOmC,EAAWC,KAEhCF,EAHElD,EAGYqD,eAAe,CACzBR,yBAAyB,EACzBS,cAAe,GACfC,MAAO,OACJtD,EAAkBoD"}
1
+ {"version":3,"file":"Pix.js","sources":["../../../../src/components/Pix/Pix.tsx"],"sourcesContent":["import { h } from 'preact';\nimport QRLoaderContainer from '../helpers/QRLoaderContainer/QRLoaderContainer';\nimport { CoreProvider } from '../../core/Context/CoreProvider';\nimport PixInput from './components/PixInput';\nimport { cleanCPFCNPJ } from '../internal/SocialSecurityNumberBrazil/utils';\nimport { PixElementData, PixConfiguration } from './types';\nimport { TxVariants } from '../tx-variants';\nimport QRLoader from '../internal/QRLoader';\nimport SRPanelProvider from '../../core/Errors/SRPanelProvider';\nimport PixQRDetails from './components/PixQRDetails';\nimport './Pix.scss';\n\nclass PixElement extends QRLoaderContainer<PixConfiguration> {\n public static type = TxVariants.pix;\n\n public static defaultProps = {\n personalDetailsRequired: false,\n countdownTime: 15,\n delay: 2000,\n ...QRLoaderContainer.defaultProps\n };\n\n get isValid(): boolean {\n return !!this.state.isValid;\n }\n\n formatProps(props: PixConfiguration): PixConfiguration {\n return {\n copyBtn: true,\n introduction: 'pix.instructions',\n ...super.formatProps(props)\n };\n }\n\n formatData(): PixElementData {\n const { data = {} } = this.state;\n const { firstName, lastName, socialSecurityNumber = '' } = data;\n\n return {\n paymentMethod: {\n type: this.props.type || this.constructor['type']\n },\n ...(firstName && lastName && { shopperName: { firstName, lastName } }),\n ...(socialSecurityNumber && { socialSecurityNumber: cleanCPFCNPJ(socialSecurityNumber) })\n };\n }\n\n renderQRCode() {\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <SRPanelProvider srPanel={this.props.modules.srPanel}>\n <QRLoader\n {...this.props}\n type={this.constructor['type']}\n brandLogo={this.props.brandLogo || this.icon}\n onComplete={this.onComplete}\n onActionHandled={this.onActionHandled}\n brandName={this.displayName}\n onSubmitAnalytics={this.submitAnalytics}\n >\n <PixQRDetails />\n </QRLoader>\n </SRPanelProvider>\n </CoreProvider>\n );\n }\n\n render() {\n if (this.props.paymentData) {\n return this.renderQRCode();\n }\n\n return (\n <CoreProvider i18n={this.props.i18n} loadingContext={this.props.loadingContext} resources={this.resources}>\n <PixInput\n ref={ref => {\n this.componentRef = ref;\n }}\n {...this.props}\n showPayButton={this.props.showPayButton}\n personalDetailsRequired={this.props.personalDetailsRequired}\n name={this.displayName}\n onChange={this.setState}\n payButton={this.payButton}\n />\n </CoreProvider>\n );\n }\n}\n\nexport default PixElement;\n"],"names":["PixElement","QRLoaderContainer","isValid","this","state","formatProps","props","copyBtn","introduction","super","formatData","data","firstName","lastName","socialSecurityNumber","paymentMethod","type","constructor","shopperName","cleanCPFCNPJ","renderQRCode","h","CoreProvider","i18n","loadingContext","resources","SRPanelProvider","srPanel","modules","QRLoader","brandLogo","icon","onComplete","onActionHandled","brandName","displayName","onSubmitAnalytics","submitAnalytics","PixQRDetails","render","paymentData","PixInput","ref","componentRef","showPayButton","personalDetailsRequired","name","onChange","setState","payButton","_define_property","TxVariants","pix","defaultProps","countdownTime","delay"],"mappings":"02BAYA,MAAMA,UAAmBC,EAUrB,WAAIC,GACA,QAASC,KAAKC,MAAMF,OACxB,CAEAG,WAAAA,CAAYC,GACR,MAAO,CACHC,SAAS,EACTC,aAAc,sBACXC,MAAMJ,YAAYC,GAE7B,CAEAI,UAAAA,GACI,MAAMC,KAAEA,EAAO,IAAOR,KAAKC,OACrBQ,UAAEA,EAASC,SAAEA,EAAQC,qBAAEA,EAAuB,IAAOH,EAE3D,MAAO,CACHI,cAAe,CACXC,KAAMb,KAAKG,MAAMU,MAAQb,KAAKc,YAAY,SAE1CL,GAAaC,GAAY,CAAEK,YAAa,CAAEN,YAAWC,gBACrDC,GAAwB,CAAEA,qBAAsBK,EAAaL,IAEzE,CAEAM,YAAAA,GACI,OACIC,EAACC,EAAAA,CAAaC,KAAMpB,KAAKG,MAAMiB,KAAMC,eAAgBrB,KAAKG,MAAMkB,eAAgBC,UAAWtB,KAAKsB,WAC5FJ,EAACK,EAAAA,CAAgBC,QAASxB,KAAKG,MAAMsB,QAAQD,SACzCN,EAACQ,EAAAA,IACO1B,KAAKG,MACTU,KAAMb,KAAKc,YAAY,KACvBa,UAAW3B,KAAKG,MAAMwB,WAAa3B,KAAK4B,KACxCC,WAAY7B,KAAK6B,WACjBC,gBAAiB9B,KAAK8B,gBACtBC,UAAW/B,KAAKgC,YAChBC,kBAAmBjC,KAAKkC,iBAExBhB,EAACiB,EAAAA,QAKrB,CAEAC,MAAAA,GACI,OAAIpC,KAAKG,MAAMkC,YACJrC,KAAKiB,eAIZC,EAACC,EAAAA,CAAaC,KAAMpB,KAAKG,MAAMiB,KAAMC,eAAgBrB,KAAKG,MAAMkB,eAAgBC,UAAWtB,KAAKsB,WAC5FJ,EAACoB,EAAAA,CACGC,IAAKA,IACDvC,KAAKwC,aAAeD,MAEpBvC,KAAKG,MACTsC,cAAezC,KAAKG,MAAMsC,cAC1BC,wBAAyB1C,KAAKG,MAAMuC,wBACpCC,KAAM3C,KAAKgC,YACXY,SAAU5C,KAAK6C,SACfC,UAAW9C,KAAK8C,YAIhC,EA1EAC,EADElD,EACYgB,OAAOmC,EAAWC,KAEhCF,EAHElD,EAGYqD,eAAe,CACzBR,yBAAyB,EACzBS,cAAe,GACfC,MAAO,OACJtD,EAAkBoD"}
@@ -1,2 +1,2 @@
1
- import{createElement as e}from"../../../external/preact/dist/preact.js";import{useCoreContext as t}from"../../../core/Context/CoreProvider.js";import o from"../../../core/Context/useImage.js";import r from"../../internal/Img/Img.js";const a=()=>{const{i18n:a}=t(),n=o();return e("div",{className:"adyen-checkout__eftpad-canada-info"},e(r,{height:"18",width:"18",src:n({imageFolder:"components/"})("info_black"),alt:"",ariaHidden:!0}),e("div",null,a.get("eftpad-canada.settlement-info")))};export{a as SettlementInfo};
1
+ import{createElement as e}from"../../../external/preact/dist/preact.js";import{useCoreContext as t}from"../../../core/Context/CoreProvider.js";import r from"../../internal/Alert/Alert.js";const n=()=>{const{i18n:n}=t();return e(r,{classNames:["adyen-checkout__eftpad-canada-info"],icon:"info_black",type:"info"},e("div",null,n.get("eftpad-canada.settlement-info")))};export{n as SettlementInfo};
2
2
  //# sourceMappingURL=SettlementInfo.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SettlementInfo.js","sources":["../../../../../src/components/PreAuthorizedDebitCanada/components/SettlementInfo.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { useCoreContext } from '../../../core/Context/CoreProvider';\nimport useImage from '../../../core/Context/useImage';\nimport Img from '../../internal/Img';\n\nexport const SettlementInfo = () => {\n const { i18n } = useCoreContext();\n const getImage = useImage();\n\n return (\n <div className=\"adyen-checkout__eftpad-canada-info\">\n <Img height=\"18\" width=\"18\" src={getImage({ imageFolder: 'components/' })('info_black')} alt=\"\" ariaHidden={true} />\n <div>{i18n.get('eftpad-canada.settlement-info')}</div>\n </div>\n );\n};\n"],"names":["SettlementInfo","i18n","useCoreContext","getImage","useImage","h","div","className","Img","height","width","src","imageFolder","alt","ariaHidden","get"],"mappings":"+OAKaA,EAAiB,KAC1B,MAAMC,KAAEA,GAASC,IACXC,EAAWC,IAEjB,OACIC,EAACC,MAAAA,CAAIC,UAAU,sCACXF,EAACG,EAAAA,CAAIC,OAAO,KAAKC,MAAM,KAAKC,IAAKR,EAAS,CAAES,YAAa,eAAxBT,CAAyC,cAAeU,IAAI,GAAGC,YAAY,IAC5GT,EAACC,MAAAA,KAAKL,EAAKc,IAAI"}
1
+ {"version":3,"file":"SettlementInfo.js","sources":["../../../../../src/components/PreAuthorizedDebitCanada/components/SettlementInfo.tsx"],"sourcesContent":["import { h } from 'preact';\nimport { useCoreContext } from '../../../core/Context/CoreProvider';\nimport Alert from '../../internal/Alert';\n\nexport const SettlementInfo = () => {\n const { i18n } = useCoreContext();\n\n return (\n <Alert classNames={['adyen-checkout__eftpad-canada-info']} icon=\"info_black\" type=\"info\">\n <div>{i18n.get('eftpad-canada.settlement-info')}</div>\n </Alert>\n );\n};\n"],"names":["SettlementInfo","i18n","useCoreContext","h","Alert","classNames","icon","type","div","get"],"mappings":"kMAIaA,EAAiB,KAC1B,MAAMC,KAAEA,GAASC,IAEjB,OACIC,EAACC,EAAAA,CAAMC,WAAY,CAAC,sCAAuCC,KAAK,aAAaC,KAAK,QAC9EJ,EAACK,MAAAA,KAAKP,EAAKQ,IAAI"}
@@ -1,2 +1,2 @@
1
- import{createElement as t}from"../../external/preact/dist/preact.js";import{UIElement as e}from"../internal/UIElement/UIElement.js";import o from"./components/UPIComponent/UPIComponent.js";import{CoreProvider as n}from"../../core/Context/CoreProvider.js";import r from"../internal/Await/Await.js";import"../../external/preact/hooks/dist/hooks.js";import"../../core/Errors/AdyenCheckoutError.js";import"../../core/Errors/SRPanelContext.js";import"../internal/Button/Button.js";import s from"../internal/QRLoader/QRLoader.js";import"../internal/QRLoader/QRLoaderDetailsProvider.js";import i from"../../core/Errors/SRPanelProvider.js";import{TxVariants as p}from"../tx-variants.js";import a from"../../utils/isMobile.js";import{getQrOption as d,getVpaOption as m,getIntentOption as l}from"./constants.js";function u(t,e,o){return e in t?Object.defineProperty(t,e,{value:o,enumerable:!0,configurable:!0,writable:!0}):t[e]=o,t}class h extends e{formatProps(t){if(!a())return{...super.formatProps(t),defaultMode:["qrCode","vpa"].includes(t?.defaultMode)?t.defaultMode:"qrCode",apps:[],segmentedControlOptions:[d(t.i18n),m(t.i18n)]};const{i18n:e,apps:o=[]}=t;if(o.length>0){const n=["intent","vpa"].includes(t.defaultMode)?t.defaultMode:"intent";return{...super.formatProps(t),defaultMode:n,apps:o,segmentedControlOptions:[l(e),m(e)]}}return{...super.formatProps(t),defaultMode:"vpa",apps:[],segmentedControlOptions:[]}}get isValid(){return this.state.isValid}formatData(){const{virtualPaymentAddress:t,app:e}=this.state.data||{};return{paymentMethod:{type:this.paymentType,...this.paymentType===p.upi_collect&&t&&{virtualPaymentAddress:t},...this.paymentType===p.upi_intent&&e?.id&&{appId:e.id}}}}get paymentType(){return"qrCode"===this.selectedMode?p.upi_qr:"vpa"===this.selectedMode?p.upi_collect:p.upi_intent}renderContent(e,n,i){const a=!!this.props.mandate;switch(e){case"qrCode":return t(s,{ref:t=>{this.componentRef=t},...this.props,qrCodeData:this.props.qrCodeData?encodeURIComponent(this.props.qrCodeData):null,type:p.upi_qr,brandLogo:this.props.brandLogo||this.icon,onComplete:this.onComplete,introduction:this.props.i18n.get("upi.qrCodeWaitingMessage"),countdownTime:this.props.countdownTime??5,onActionHandled:this.onActionHandled,showAmount:!a});case"await":return t(r,{ref:t=>{this.componentRef=t},url:n,type:i,showCountdownTimer:!0,shouldRedirectAutomatically:!0,showAmount:!a,countdownTime:this.props.countdownTime??5,clientKey:this.props.clientKey,paymentData:this.props.paymentData,onActionHandled:this.onActionHandled,onError:this.props.onError,messageText:this.props.i18n.get("upi.vpaWaitingMessage"),awaitText:this.props.i18n.get("await.waitForConfirmation"),onComplete:this.onComplete,brandLogo:this.icon,amount:this.props.amount});default:return t(o,{ref:t=>{this.componentRef=t},payButton:this.payButton,onChange:this.setState,onUpdateMode:this.onUpdateMode,apps:this.props.apps,segmentedControlOptions:this.props.segmentedControlOptions,defaultMode:this.props.defaultMode,showPayButton:this.props.showPayButton,amount:this.props.amount,mandate:this.props.mandate})}}render(){const{type:e,url:o,paymentMethodType:r}=this.props;return t(n,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},t(i,{srPanel:this.props.modules.srPanel},this.renderContent(e,o,r)))}constructor(t,e){super(t,e),u(this,"selectedMode",void 0),u(this,"onUpdateMode",t=>{this.selectedMode=t}),this.selectedMode=this.props.defaultMode}}u(h,"type",p.upi),u(h,"txVariants",[p.upi,p.upi_qr,p.upi_collect,p.upi_intent]);export{h as default};
1
+ import{createElement as t}from"../../external/preact/dist/preact.js";import{UIElement as e}from"../internal/UIElement/UIElement.js";import o from"./components/UPIComponent/UPIComponent.js";import{CoreProvider as r}from"../../core/Context/CoreProvider.js";import n from"../internal/Await/Await.js";import"../../external/preact/hooks/dist/hooks.js";import"../../core/Errors/AdyenCheckoutError.js";import"../../core/Errors/SRPanelContext.js";import"../internal/Button/Button.js";import s from"../internal/QRLoader/QRLoader.js";import"../internal/QRLoader/QRLoaderDetailsProvider.js";import i from"../../core/Errors/SRPanelProvider.js";import{TxVariants as p}from"../tx-variants.js";import a from"../../utils/isMobile.js";import{getQrOption as d,getVpaOption as l,getIntentOption as u}from"./constants.js";function m(t,e,o){return e in t?Object.defineProperty(t,e,{value:o,enumerable:!0,configurable:!0,writable:!0}):t[e]=o,t}class h extends e{formatProps(t){if(!a())return{...super.formatProps(t),defaultMode:["qrCode","vpa"].includes(t?.defaultMode)?t.defaultMode:"qrCode",apps:[],segmentedControlOptions:[d(t.i18n),l(t.i18n)]};const{i18n:e,apps:o=[]}=t;if(o.length>0){const r=["intent","vpa"].includes(t.defaultMode)?t.defaultMode:"intent";return{...super.formatProps(t),defaultMode:r,apps:o,segmentedControlOptions:[u(e),l(e)]}}return{...super.formatProps(t),defaultMode:"vpa",apps:[],segmentedControlOptions:[]}}get isValid(){return this.state.isValid}formatData(){const{virtualPaymentAddress:t,app:e}=this.state.data||{};return{paymentMethod:{type:this.paymentType,...this.paymentType===p.upi_collect&&t&&{virtualPaymentAddress:t},...this.paymentType===p.upi_intent&&e?.id&&{appId:e.id}}}}get paymentType(){return"qrCode"===this.selectedMode?p.upi_qr:"vpa"===this.selectedMode?p.upi_collect:p.upi_intent}renderContent(e,r,i){const a=!!this.props.mandate;switch(e){case"qrCode":return t(s,{...this.props,qrCodeData:this.props.qrCodeData?encodeURIComponent(this.props.qrCodeData):null,type:p.upi_qr,brandLogo:this.props.brandLogo||this.icon,onComplete:this.onComplete,introduction:this.props.i18n.get("upi.qrCodeWaitingMessage"),countdownTime:this.props.countdownTime??5,onActionHandled:this.onActionHandled,showAmount:!a});case"await":return t(n,{url:r,type:i,showCountdownTimer:!0,shouldRedirectAutomatically:!0,showAmount:!a,countdownTime:this.props.countdownTime??5,clientKey:this.props.clientKey,paymentData:this.props.paymentData,onActionHandled:this.onActionHandled,onError:this.props.onError,messageText:this.props.i18n.get("upi.vpaWaitingMessage"),awaitText:this.props.i18n.get("await.waitForConfirmation"),onComplete:this.onComplete,brandLogo:this.icon,amount:this.props.amount});default:return t(o,{ref:t=>{this.componentRef=t},payButton:this.payButton,onChange:this.setState,onUpdateMode:this.onUpdateMode,apps:this.props.apps,segmentedControlOptions:this.props.segmentedControlOptions,defaultMode:this.props.defaultMode,showPayButton:this.props.showPayButton,amount:this.props.amount,mandate:this.props.mandate})}}render(){const{type:e,url:o,paymentMethodType:n}=this.props;return t(r,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources},t(i,{srPanel:this.props.modules.srPanel},this.renderContent(e,o,n)))}constructor(t,e){super(t,e),m(this,"selectedMode",void 0),m(this,"onUpdateMode",t=>{this.selectedMode=t}),this.selectedMode=this.props.defaultMode}}m(h,"type",p.upi),m(h,"txVariants",[p.upi,p.upi_qr,p.upi_collect,p.upi_intent]);export{h as default};
2
2
  //# sourceMappingURL=UPI.js.map