@adyen/kyc-components 4.0.0-compact.1 → 4.0.0-compact.2
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.
- package/dist/4-people-BzyXLUF9.js +24 -0
- package/dist/{AD-CyP5INSp.js → AD-BQAadLyG.js} +2 -2
- package/dist/{AT-DJLlevck.js → AT-BI8ju2NH.js} +2 -2
- package/dist/{AcceptTermsOfServiceComponent-Ddtg_ZHH.js → AcceptTermsOfServiceComponent-CNbcTHZy.js} +51 -66
- package/dist/Accordion-Bjer1DF8.js +88 -0
- package/dist/{AccountSetupRejected-CvdEsdWe.js → AccountSetupRejected-Cn672qPs.js} +6 -6
- package/dist/ActionBar-_ItKVS6X.js +31 -0
- package/dist/{Address-YjoUtTTT.js → Address-brlyMNsL.js} +292 -51
- package/dist/{Alert-C_-UwoDE.js → Alert-BjepSgqS.js} +7 -79
- package/dist/{Avatar-CeHhAxxR.js → Avatar-YKRRWtuD.js} +2 -2
- package/dist/{BE-B-m_4F41.js → BE-nWHKW0xQ.js} +2 -2
- package/dist/{BG-BVR5ytc-.js → BG-HKzabLqZ.js} +3 -3
- package/dist/BusinessDetailsDropin-Be43Lz8z.js +2359 -0
- package/dist/BusinessFinancingComponent-DaXrEiOK.js +55 -0
- package/dist/{BusinessFinancingDropin-B6Vpswcj.js → BusinessFinancingDropin-CxvdCIOR.js} +186 -154
- package/dist/BusinessFinancingPage-DR8f57Zt.js +43 -0
- package/dist/{BusinessTypeSelectionPage-CQxhI1B6.js → BusinessTypeSelectionPage-5VrdC33B.js} +13 -13
- package/dist/{CH-CesIKOYy.js → CH-TX4BTE2y.js} +2 -2
- package/dist/{CY-BnJ7k_mN.js → CY-D59Nypl7.js} +2 -2
- package/dist/{CZ-BiPeoA9G.js → CZ-B6iI1GbE.js} +3 -3
- package/dist/Card-DTRTgvkU.js +82 -0
- package/dist/ConstitutionalDocument-LzfYJniz.js +143 -0
- package/dist/{CountryField-50Iboayh.js → CountryField-BKLmbhSX.js} +195 -216
- package/dist/CreateIndividualComponent-BLXGgGyY.js +71 -0
- package/dist/CreateTransferInstrumentComponent-DVckBQQm.js +63 -0
- package/dist/{Currency-D-0ToVpS.js → Currency-MPPfYpO2.js} +10 -65
- package/dist/{CustomerSupport-DTw357Bq.js → CustomerSupport-By2yaM5E.js} +23 -11
- package/dist/{DE-DdcbG-CC.js → DE-CsuX_tSL.js} +2 -2
- package/dist/{DK-DA8qRrzq.js → DK-oQEFrF6o.js} +3 -3
- package/dist/{DebugModal-Dc6JIQeF.js → DebugModal-DCHlUTNW.js} +128 -43
- package/dist/DecisionMakerDetailsPage-tc-XK5oy.js +106 -0
- package/dist/DecisionMakers-DU88cxZJ.js +842 -0
- package/dist/DropinLayout-CBP_cHLC.js +17 -0
- package/dist/{EE-CaXoPgZz.js → EE-3WZV5Ejt.js} +2 -2
- package/dist/{ES-Bt_oaIaf.js → ES-NfxpqbC2.js} +2 -2
- package/dist/{EmbeddedStatus-DQXq53qv.js → EmbeddedStatus-Dyw4tZGv.js} +15 -16
- package/dist/{EndStateLayout-BPsmcrN3.js → EndStateLayout-Dyji8Wu9.js} +2 -2
- package/dist/EntityAssociation-Dj13mqhr.js +159 -0
- package/dist/EntityGuidanceStatus-B-VLjG9P.js +105 -0
- package/dist/{FI-C5V3lLuN.js → FI-CHQIvHa-.js} +2 -2
- package/dist/{FR-Bc1tLIC4.js → FR-MWZyWX3x.js} +2 -2
- package/dist/FormFlow-KgmudcUf.js +186 -0
- package/dist/{FormNavigation-29vpexO6.js → FormNavigation-CFIXqopX.js} +6 -24
- package/dist/{useGlobalData-TJeJM5fq.js → FormWrapper-CCyMspMC.js} +12 -82
- package/dist/{GG-BGuqxplU.js → GG-CPoMVQPc.js} +3 -3
- package/dist/{GI-CROkpYrU.js → GI-DxmBwVD_.js} +3 -3
- package/dist/{GR-B9c2boG8.js → GR-Rk0pXlNw.js} +2 -2
- package/dist/{HR-p4luVYpu.js → HR-WapHW2fw.js} +2 -2
- package/dist/{HU-D8vJYkDH.js → HU-DCOMuOhe.js} +3 -3
- package/dist/{IE-Cli_j7Al.js → IE-BkgtVgDi.js} +2 -2
- package/dist/{IM-mpIyBn16.js → IM-Wr4iDT94.js} +3 -3
- package/dist/{IS-02zCAdvq.js → IS-C-Cgc6zp.js} +2 -2
- package/dist/{IT-CzURFhrK.js → IT-CXekiddL.js} +2 -2
- package/dist/{IndividualOnfidoDropin-XYcD-6sb.js → IndividualOnfido-DGWs87Bu.js} +8212 -6455
- package/dist/IndividualOnfidoDropin-CUY4R6Np.js +2569 -0
- package/dist/{InputText-CnEQJihB.js → InputText-DXkZ7fwq.js} +101 -13
- package/dist/{Introduction-BkGNoXvo.js → Introduction-CjaMyLeR.js} +7 -11
- package/dist/{JE-MFwIYti7.js → JE-B4gj54Hg.js} +3 -3
- package/dist/JpAddress-DSZyw5JH.js +271 -0
- package/dist/{LI-DA06W10W.js → LI-L0ZAALRT.js} +2 -2
- package/dist/{LT-DuU6E2Ct.js → LT-Ao2uagV9.js} +2 -2
- package/dist/{LU-BQHhNpDy.js → LU-B7LRUuc6.js} +2 -2
- package/dist/{LV-DN7wckbP.js → LV-DZeGjA2G.js} +2 -2
- package/dist/{LegalRepresentativeDetailsPage-D3Ld1xg7.js → LegalRepresentativeDetailsPage-L1HAsU01.js} +6 -7
- package/dist/ListItem-COe1T6IG.js +69 -0
- package/dist/{MC-DtSWC4jS.js → MC-EDVNGWhy.js} +2 -2
- package/dist/{MT-DeDMQ1f_.js → MT-B9my7RlP.js} +2 -2
- package/dist/ManageIndividualComponent-ySaPJphf.js +46 -0
- package/dist/ManageTermsOfServiceComponent-ClF1MHMK.js +52 -0
- package/dist/{ManageTransferInstrumentComponent-D8e5YRiK.js → ManageTransferInstrumentComponent-D26m3iJX.js} +19 -26
- package/dist/{MaybeModal-D6lc_yUc.js → MaybeModal-BPq0SmbE.js} +15 -4
- package/dist/{Modal-ltKHtBfL.js → Modal-qvqrnkl9.js} +19 -6
- package/dist/{NL-aVL0NAp-.js → NL-VXAFOhV5.js} +2 -2
- package/dist/{NO-D7EOiQA1.js → NO-Cx1VSh2W.js} +3 -3
- package/dist/OnboardingDropinComponent-CAowzo5z.js +7617 -0
- package/dist/{PL-Bg7axKQA.js → PL-BZW1hGvD.js} +3 -3
- package/dist/{PT-hB1HnBM2.js → PT-OpU4MU3L.js} +2 -2
- package/dist/{PayoutDetailsDropin-Ba4z1H8Y.js → PayoutDetailsDropin-CElcAZkT.js} +1530 -384
- package/dist/ProgressBar-B7gTQncy.js +47 -0
- package/dist/{RO-BLlC4CKq.js → RO-Cz6Sh0ls.js} +2 -2
- package/dist/{Review-QGTwsuVG.js → Review-BsSmYJ0Z.js} +9 -8
- package/dist/RootBusinessDetailsPage-DfaUd-dT.js +46 -0
- package/dist/RootBusinessLinesPage-BUU93N7l.js +1484 -0
- package/dist/RootIndividualDetailsPage-pNQ9v0Cg.js +71 -0
- package/dist/{SE-q25Qt85B.js → SE-B5K-FkQd.js} +3 -3
- package/dist/{SI-BzA-ozn6.js → SI-BOGTNLPa.js} +2 -2
- package/dist/{SK-DOTdLJPw.js → SK-BOVrp_Av.js} +2 -2
- package/dist/{SM-B4BIgmhk.js → SM-meowwILA.js} +2 -2
- package/dist/{SignPCIComponent-BvOwbwCX.js → SignPCIComponent-DA9HTJcn.js} +29 -19
- package/dist/{SingpassSelection-CfMjudRn.js → SingpassSelection-CWJuYh4-.js} +10 -10
- package/dist/SoleProprietorshipPage-p5JwimAo.js +46 -0
- package/dist/{SourceOfFundsPage-BOFtbQbF.js → SourceOfFundsPage-CG0pItrl.js} +238 -956
- package/dist/{MaskedInput-Cr4BEARC.js → Spacer-BcPESwGJ.js} +641 -24
- package/dist/{StepProgressIndicator-D8I0VtoT.js → StepProgressIndicator-BG5uNVKJ.js} +2 -2
- package/dist/{StoreProvider-D4cRWOo4.js → StoreProvider-D0o_745u.js} +1195 -560
- package/dist/Summary-DfChUS-N.js +204 -0
- package/dist/{TaxReportingDropin-CDqErRkl.js → TaxReportingDropin-BhFHPYrV.js} +76 -74
- package/dist/TrustDetailsPage-UI7Qhogx.js +2149 -0
- package/dist/TrustMemberCompanyPage-Cvq23-mG.js +57 -0
- package/dist/TrustMemberIndividualPage-9eQ_yj88.js +66 -0
- package/dist/TrustMemberRoleAndTypePage-C5X4yQcZ.js +985 -0
- package/dist/TrustMembersOverview-DS3F2gW9.js +438 -0
- package/dist/{UnincorporatedPartnershipIndividualPage-Dx1qdgZL.js → UnincorporatedPartnershipIndividualPage-B9EMaXkA.js} +6 -7
- package/dist/{UnincorporatedPartnershipMemberCompanyPage-B89QmXFf.js → UnincorporatedPartnershipMemberCompanyPage-DqpxNM8J.js} +7 -11
- package/dist/UnincorporatedPartnershipMemberRoleAndTypePage-DuWERJIv.js +281 -0
- package/dist/UnincorporatedPartnershipMembersOverview-CXIrEXgp.js +172 -0
- package/dist/{VA-bPXdCnwD.js → VA-DXsYTCoh.js} +2 -2
- package/dist/VerificationErrorAlert-Cwea2nvk.js +79 -0
- package/dist/{ViewVerificationStatusComponent-2jYPePEI.js → ViewVerificationStatusComponent-C5rBiaSa.js} +16 -13
- package/dist/adyen-business-financing.js +10 -7
- package/dist/adyen-individual-configuration.js +5 -6
- package/dist/adyen-individual-status.js +5 -6
- package/dist/adyen-kyc-components.js +38 -33
- package/dist/adyen-onboarding.js +4 -5
- package/dist/adyen-terms-of-service-management.js +5 -6
- package/dist/adyen-terms-of-service-status.js +5 -6
- package/dist/adyen-transfer-instrument-configuration.js +5 -6
- package/dist/adyen-transfer-instrument-management.js +5 -6
- package/dist/adyen-verification-status.js +5 -6
- package/dist/{arrow-right-D_mdkZmE.js → arrow-right-KxA3SvQj.js} +2 -2
- package/dist/{bag-DpxmyXfR.js → bag-BPumznWh.js} +2 -2
- package/dist/{bank-gyBvaSp4.js → bank-D6FiNBhs.js} +2 -2
- package/dist/bin-Bz6KOIeE.js +18 -0
- package/dist/capital-GVQ3svwN.js +17 -0
- package/dist/{cash-stack-Ds76Du8m.js → cash-stack-D9AoDDwt.js} +3 -3
- package/dist/{certificate-D6xjhThs.js → certificate-CdEWgHQf.js} +3 -3
- package/dist/{checkmark-tfEAu7lj.js → checkmark-Q7x6tGhy.js} +2 -2
- package/dist/checkmark-circle-fill-CsvN5_PL.js +17 -0
- package/dist/{checkmark-circle-nACBJ24q.js → checkmark-circle-x7dzbp3I.js} +3 -3
- package/dist/{checkmark-small-63w5fAxg.js → checkmark-small-D35myntq.js} +2 -2
- package/dist/{chevron-down-CkQS-knD.js → chevron-down-C2iDorpW.js} +2 -2
- package/dist/{chevron-left-CBCMdMx6.js → chevron-left-ztPO84q-.js} +2 -2
- package/dist/{chevron-right-dIVWvPJu.js → chevron-right-C_JN0oDt.js} +2 -2
- package/dist/{chevron-up-D93IGU9z.js → chevron-up-CgG8n25g.js} +2 -2
- package/dist/circle-Bt3Nlr3q.js +17 -0
- package/dist/circle-small-filled-YMzP6yQU.js +14 -0
- package/dist/clock-BZHremOA.js +20 -0
- package/dist/coins-fkAk6dCo.js +17 -0
- package/dist/{contract-DI03_xrF.js → contract-BTa4HltT.js} +2 -2
- package/dist/{cross-o4n5KXxG.js → cross-Cn09MtQ_.js} +2 -2
- package/dist/cross-circle-fill-maan7Z5S.js +17 -0
- package/dist/{cross-circle-fill-small-CHMDaA3q.js → cross-circle-fill-small-DCz52AuN.js} +2 -2
- package/dist/da-DK-BlU1EczG.js +30 -0
- package/dist/da-DK-DCJhV2qS.js +32 -0
- package/dist/da-DK-DEdQ-QPp.js +13 -0
- package/dist/da-DK-DWA8uOd8.js +24 -0
- package/dist/{da-DK-BoQic3Gy.js → da-DK-DYpfNZdP.js} +5 -1
- package/dist/da-DK-DZwlENGe.js +13 -0
- package/dist/da-DK-Dc0QYG8m.js +68 -0
- package/dist/da-DK-DqkN5oIu.js +13 -0
- package/dist/da-DK-DvZ431fC.js +13 -0
- package/dist/{da-DK-B45X2VaJ.js → da-DK-JHZnsI59.js} +24 -4
- package/dist/da-DK-gnPgzwrG.js +27 -0
- package/dist/da-DK-h8DYQ_Iq.js +13 -0
- package/dist/da-DK-jK7c9UL0.js +57 -0
- package/dist/de-DE-0uSzhWg5.js +13 -0
- package/dist/{de-DE-Dwagawx1.js → de-DE-BXt1K0Tr.js} +5 -1
- package/dist/de-DE-COuUdtao.js +13 -0
- package/dist/de-DE-D3lLuF8z.js +27 -0
- package/dist/de-DE-D50lGOJE.js +24 -0
- package/dist/de-DE-DXR3EpEc.js +13 -0
- package/dist/de-DE-DrSSblam.js +13 -0
- package/dist/de-DE-DwOQKCuU.js +32 -0
- package/dist/de-DE-Dz2OsS1F.js +68 -0
- package/dist/de-DE-LQE_LFFL.js +13 -0
- package/dist/{de-DE-CWvgMDqU.js → de-DE-VGGEkxUT.js} +24 -4
- package/dist/de-DE-s0B-XZyp.js +30 -0
- package/dist/de-DE-wmerDL2e.js +57 -0
- package/dist/debouncedInputEvent-DbzJEMPo.js +109 -0
- package/dist/{form-rules-DhbF2mY4.js → debugStore-BvbyN1Oi.js} +4 -3
- package/dist/{document-1-DsCi9vmX.js → document-1-C08ut-Dt.js} +2 -2
- package/dist/document-person-vxlA6C5f.js +20 -0
- package/dist/documentUtils-Cc83Q1S6.js +218 -0
- package/dist/download-Drhk9k1f.js +17 -0
- package/dist/{dropinUtils-CXnvPFZN.js → dropinUtils-D0iun-Wp.js} +32 -24
- package/dist/edit-1-CFoDTMvQ.js +14 -0
- package/dist/en-US-AgtwE4Fl.js +63 -0
- package/dist/en-US-B96dpVon.js +27 -0
- package/dist/en-US-BQZhzROc.js +32 -0
- package/dist/en-US-CozY33On.js +13 -0
- package/dist/{en-US-DIdQJky-.js → en-US-CzEL6t1W.js} +24 -4
- package/dist/en-US-D-B35AoN.js +68 -0
- package/dist/en-US-D2yrwtzT.js +24 -0
- package/dist/{en-US-BbAzROHT.js → en-US-Dg505Oh3.js} +2 -1
- package/dist/en-US-d4WBvUW7.js +118 -0
- package/dist/en-US-fyGPkcqX.js +13 -0
- package/dist/en-US-gsp7CD_E.js +57 -0
- package/dist/en-US-h0JneJJl.js +13 -0
- package/dist/es-ES-B7dt4cn7.js +13 -0
- package/dist/es-ES-BI_jdT67.js +68 -0
- package/dist/es-ES-BOoPqnPI.js +32 -0
- package/dist/{es-ES-Bsoco8Fj.js → es-ES-BhNhIf08.js} +5 -1
- package/dist/{es-ES-DKCCgVF8.js → es-ES-Bn9_0wK0.js} +24 -4
- package/dist/es-ES-CXDJLKAI.js +27 -0
- package/dist/es-ES-DF_L5EDd.js +24 -0
- package/dist/es-ES-DNGEW6V_.js +13 -0
- package/dist/es-ES-DdGmXdxO.js +13 -0
- package/dist/es-ES-Qnc0Q6JH.js +57 -0
- package/dist/es-ES-ShWaSuJd.js +13 -0
- package/dist/es-ES-esfwvKwz.js +30 -0
- package/dist/es-ES-yMXcOjDL.js +13 -0
- package/dist/{external-link-BjladU3E.js → external-link-DCMYUMfW.js} +2 -2
- package/dist/fi-FI-CIYa9SyS.js +13 -0
- package/dist/fi-FI-ChApf7lf.js +13 -0
- package/dist/fi-FI-CjB6QC01.js +30 -0
- package/dist/fi-FI-CoI_94Fv.js +13 -0
- package/dist/fi-FI-DH6jpo9K.js +24 -0
- package/dist/fi-FI-Dn2MC8uW.js +57 -0
- package/dist/{fi-FI-Hhku9Lmc.js → fi-FI-PVFqd5Ra.js} +24 -4
- package/dist/fi-FI-REMsyTSr.js +13 -0
- package/dist/fi-FI-bZzNB1WB.js +32 -0
- package/dist/fi-FI-fArobrt5.js +27 -0
- package/dist/fi-FI-hwzizPnr.js +68 -0
- package/dist/fi-FI-xqnQ38yC.js +13 -0
- package/dist/{fi-FI-ClnsYt3L.js → fi-FI-ysUrBilO.js} +5 -1
- package/dist/{fr-FR-CJI0bIig.js → fr-FR-BSvSKazD.js} +5 -1
- package/dist/fr-FR-BSynpexF.js +13 -0
- package/dist/fr-FR-BWX14yb7.js +57 -0
- package/dist/fr-FR-BnblnBsx.js +24 -0
- package/dist/fr-FR-Br7OeDIe.js +13 -0
- package/dist/fr-FR-C1XqLftn.js +30 -0
- package/dist/fr-FR-CYZXbwc9.js +68 -0
- package/dist/fr-FR-CiwkAb3E.js +27 -0
- package/dist/fr-FR-CvHWmim-.js +13 -0
- package/dist/fr-FR-Q3urMjbl.js +13 -0
- package/dist/fr-FR-cTKcuHqX.js +32 -0
- package/dist/fr-FR-l5z31r7i.js +13 -0
- package/dist/{fr-FR-BYuKsZIb.js → fr-FR-mJK4hjwD.js} +24 -4
- package/dist/getFieldsWithExistingData-2sKn11MH.js +22 -0
- package/dist/{getName-BsaU8Hqr.js → getName-DhbqyTuj.js} +2 -2
- package/dist/gift-CQ_DEma7.js +14 -0
- package/dist/{graph-DwYwlplw.js → graph-BJmqglH2.js} +3 -3
- package/dist/{graph-up-DpbCSPbc.js → graph-up-Bq6adtlX.js} +6 -6
- package/dist/{hasDataChanged-CA7cMLCV.js → hasDataChanged-ZEmm9mgZ.js} +2 -2
- package/dist/headquarter-DNYyuuFq.js +21 -0
- package/dist/{hotel-JX0bjsSA.js → hotel-BuNql78Z.js} +3 -3
- package/dist/{iframeWidget-BPBJSJJt.js → iframeWidget-DhidmNAp.js} +4 -4
- package/dist/image-BSihO8lR.js +17 -0
- package/dist/info-filled-SQotHmT9.js +17 -0
- package/dist/info-vHTZWoJ7.js +21 -0
- package/dist/it-IT-B0YGvVgW.js +57 -0
- package/dist/it-IT-BAvmkEF8.js +13 -0
- package/dist/it-IT-BAvsF2TB.js +13 -0
- package/dist/{it-IT-Nl57jui-.js → it-IT-BTWkWSJq.js} +24 -4
- package/dist/it-IT-BeX7-OcD.js +13 -0
- package/dist/it-IT-C_651bEP.js +13 -0
- package/dist/it-IT-C_YDqVNT.js +30 -0
- package/dist/it-IT-Ckv8Ce4e.js +24 -0
- package/dist/it-IT-DERflsUd.js +32 -0
- package/dist/it-IT-DIbH-udG.js +27 -0
- package/dist/it-IT-Erh1DIlj.js +68 -0
- package/dist/{it-IT-BeC2Y1F8.js → it-IT-Qfzc8jnW.js} +5 -1
- package/dist/it-IT-vdMlF0Ha.js +13 -0
- package/dist/{localizeDateString-cCOzCBvl.js → localizeDateString-DYxbMJdq.js} +2 -2
- package/dist/location-Q4oKvnkl.js +17 -0
- package/dist/mail-BOdyoVqB.js +14 -0
- package/dist/mapAddressLocalizationToJpAddressSchema-vJWbpAyq.js +56 -0
- package/dist/{mapExistingFile-B1UL2lZR.js → mapExistingFile-DGRyOBjp.js} +5 -80
- package/dist/mapFinancialReportsToFinancialInformation-DBdQzrBs.js +67 -0
- package/dist/mapJpAddressSchemaToAddressLocalizations-uwuFlYx9.js +63 -0
- package/dist/mapLegalEntityToIndividualOnfidoSchema-C6mqHFxh.js +146 -0
- package/dist/{mapTransferInstrumentToPayoutAccount-BdPUh-FT.js → mapTransferInstrumentToPayoutAccount-CrO59de3.js} +6 -3
- package/dist/{minus-circle-filled-BGKeHaxJ.js → minus-circle-filled-kC2IUvKz.js} +3 -3
- package/dist/nl-NL-BMUYBqlF.js +57 -0
- package/dist/nl-NL-BwKrj-29.js +13 -0
- package/dist/nl-NL-Bx5p0nXL.js +24 -0
- package/dist/nl-NL-C3YJkSIj.js +13 -0
- package/dist/nl-NL-CM5U8ODq.js +13 -0
- package/dist/{nl-NL-BHkRnVrj.js → nl-NL-CTf7zH4M.js} +24 -4
- package/dist/nl-NL-Cjlmc0Ii.js +32 -0
- package/dist/{nl-NL-Cysslsh2.js → nl-NL-D7gBNWEY.js} +5 -1
- package/dist/nl-NL-DV4NqPVW.js +13 -0
- package/dist/nl-NL-DyeSX0PH.js +30 -0
- package/dist/nl-NL-JChnFdCY.js +13 -0
- package/dist/nl-NL-NlkjOSYi.js +27 -0
- package/dist/nl-NL-O9GCHMDA.js +68 -0
- package/dist/no-NO--OoWld_l.js +13 -0
- package/dist/no-NO-B6OPS2CA.js +13 -0
- package/dist/no-NO-B9618F4_.js +13 -0
- package/dist/no-NO-BQL_M1pn.js +13 -0
- package/dist/no-NO-Bs3-6MDM.js +24 -0
- package/dist/{no-NO-zSnPtrDi.js → no-NO-C-gCYc9q.js} +5 -1
- package/dist/no-NO-CA1aR6Wh.js +68 -0
- package/dist/no-NO-CY_XHrYd.js +32 -0
- package/dist/no-NO-Crlsj6HG.js +27 -0
- package/dist/no-NO-D4BECLky.js +130 -0
- package/dist/no-NO-DKbWxgF-.js +57 -0
- package/dist/no-NO-DPRsAb_o.js +30 -0
- package/dist/{no-NO-kaAdT9B8.js → no-NO-RfTK9KAV.js} +24 -4
- package/dist/{options-horizontal-nJ9-ButA.js → options-horizontal-CBmbNv7R.js} +4 -4
- package/dist/partner-CPjsrePY.js +18 -0
- package/dist/pay-by-link-plane-BVZndh67.js +22 -0
- package/dist/{payout-iEmHhgQ4.js → payout-ChUEoLjt.js} +6 -6
- package/dist/payout-verification-instant-5u-wvFKv.js +41 -0
- package/dist/payout-verification-manual-BH2mu0UW.js +90 -0
- package/dist/person-DGjUU4S4.js +17 -0
- package/dist/{plus-CwLva7fq.js → plus-CWXA5wdX.js} +2 -2
- package/dist/plus-circle-filled-CbC0u2Y1.js +17 -0
- package/dist/process-field-configurations-IsZZTbcC.js +324 -0
- package/dist/pt-BR--kaJvtE6.js +57 -0
- package/dist/pt-BR-AZ3roErF.js +13 -0
- package/dist/pt-BR-BKQRvAfq.js +13 -0
- package/dist/pt-BR-BbFJsIVX.js +55 -0
- package/dist/pt-BR-BfxgHKY4.js +27 -0
- package/dist/pt-BR-C-C4ZJ9x.js +30 -0
- package/dist/pt-BR-C0I_kTQ6.js +13 -0
- package/dist/pt-BR-CBAe0SnK.js +32 -0
- package/dist/pt-BR-DSENwwGu.js +24 -0
- package/dist/pt-BR-NtLaWlnZ.js +68 -0
- package/dist/pt-BR-gh27BC86.js +13 -0
- package/dist/pt-BR-nU_2Wbo5.js +54 -0
- package/dist/pt-BR-ur86nRrK.js +37 -0
- package/dist/pt-BR-zuqB_CBf.js +13 -0
- package/dist/{pt-PT-Xm-pm3mb.js → pt-PT-B4F_5NWi.js} +24 -4
- package/dist/pt-PT-BZ5ZZm6G.js +57 -0
- package/dist/pt-PT-Bf4IV7wp.js +13 -0
- package/dist/pt-PT-CFY1O_K0.js +13 -0
- package/dist/pt-PT-CIo3mlXL.js +24 -0
- package/dist/{pt-PT-CjsyP_OK.js → pt-PT-CVNEcs32.js} +5 -1
- package/dist/pt-PT-D2Xe-OdG.js +13 -0
- package/dist/pt-PT-DSxxVA0f.js +68 -0
- package/dist/pt-PT-DVKtHjIY.js +13 -0
- package/dist/pt-PT-DYihdcJx.js +13 -0
- package/dist/pt-PT-Dm5DRDrd.js +32 -0
- package/dist/pt-PT-LbneTcRx.js +30 -0
- package/dist/pt-PT-TKg5FLat.js +27 -0
- package/dist/recurring-CkL4cCM2.js +17 -0
- package/dist/{reporting-DlRoibD7.js → reporting-DerosUNm.js} +1 -2
- package/dist/resolveEnvironment-CM4-oCnd.js +164 -0
- package/dist/revenue-accelerate-Dp4Ns_5c.js +17 -0
- package/dist/{rules-CkD4bHtQ.js → rules-BFaDNVc6.js} +14 -8
- package/dist/save-Fgy7EDid.js +14 -0
- package/dist/search-C4GZ-Rc1.js +17 -0
- package/dist/{show-uL6I-rMo.js → show-yPjPmEf8.js} +3 -3
- package/dist/sl-SI-59OQIZ3f.js +13 -0
- package/dist/sl-SI-8SzKx7XD.js +30 -0
- package/dist/sl-SI-C-C-KJCX.js +27 -0
- package/dist/sl-SI-C0wSbuau.js +13 -0
- package/dist/{sl-SI-Br0UEUPL.js → sl-SI-CUCrzJQv.js} +5 -1
- package/dist/sl-SI-DdjgSySI.js +13 -0
- package/dist/sl-SI-DtdGMD6i.js +57 -0
- package/dist/{solution-payments-DTAuLSWF.js → solution-payments-CNAat9h7.js} +2 -2
- package/dist/store-IuAkDRAp.js +14 -0
- package/dist/style.css +2655 -2214
- package/dist/styles-CLV89_hH.js +2670 -2229
- package/dist/sv-SE-B7cpKp1l.js +30 -0
- package/dist/sv-SE-BHfydid5.js +27 -0
- package/dist/sv-SE-BHkYspm-.js +130 -0
- package/dist/{sv-SE-BtXmvxx4.js → sv-SE-C6uPh9g5.js} +5 -1
- package/dist/sv-SE-CQWBP7n1.js +13 -0
- package/dist/sv-SE-CRBRuE8Z.js +32 -0
- package/dist/sv-SE-CXaMlJCI.js +24 -0
- package/dist/{sv-SE-B3zoXMuH.js → sv-SE-DGpvVvWj.js} +24 -4
- package/dist/sv-SE-DsPdegWB.js +13 -0
- package/dist/sv-SE-DtKjf4Go.js +13 -0
- package/dist/sv-SE-K1QT1cOt.js +68 -0
- package/dist/sv-SE-kR514dO1.js +57 -0
- package/dist/sv-SE-zTiw1bUU.js +13 -0
- package/dist/terminal-1-_me9J9h0.js +18 -0
- package/dist/trackNavigation-db_h46BT.js +28 -0
- package/dist/types/api/address/useAddressCleanse.d.ts +6 -2
- package/dist/types/api/address/useRetrieveAddress.d.ts +3 -1
- package/dist/types/api/address/useRetrieveFromPostcodeJp.d.ts +18 -0
- package/dist/types/api/businessLines/businessLines.types.d.ts +21 -0
- package/dist/types/api/businessLines/useBusinessLines.d.ts +4 -2
- package/dist/types/api/businessLines/useCreateBusinessLine.d.ts +7 -0
- package/dist/types/api/businessLines/useDeleteBusinessLine.d.ts +5 -0
- package/dist/types/api/businessLines/useUpdateBusinessLines.d.ts +7 -0
- package/dist/types/api/businessLines/useUpdateSourceOfFunds.d.ts +1 -0
- package/dist/types/api/companySearch/useCompanySearch.d.ts +1 -0
- package/dist/types/api/companySelection/useCompanySelection.d.ts +2 -18
- package/dist/types/api/configurations/useScenarios.d.ts +12 -12
- package/dist/types/api/documentValidation/useDocumentValidate.d.ts +15 -0
- package/dist/types/api/industryCodes/industryCodes.types.d.ts +2 -1
- package/dist/types/api/industryCodes/useIndustryCodes.d.ts +3 -3
- package/dist/types/api/legalEntity/useLegalEntity.d.ts +16 -16
- package/dist/types/api/{pciTemplate/pciTemplate.types.d.ts → pci/pci.types.d.ts} +9 -1
- package/dist/types/api/{pciTemplate → pci}/usePciQuestionnaire.d.ts +1 -1
- package/dist/types/api/{pciTemplate → pci}/usePciQuestionnaireList.d.ts +1 -1
- package/dist/types/api/{pciTemplate → pci}/usePciStatus.d.ts +1 -1
- package/dist/types/api/pci/usePciTemplate.d.ts +8 -0
- package/dist/types/api/queryKeys.d.ts +5 -4
- package/dist/types/components/BankAccount/fields/BankAccountFormat/types.d.ts +2 -1
- package/dist/types/components/BankAccount/fields/PreferredCurrency/PreferredCurrency.d.ts +10 -0
- package/dist/types/components/BankAccount/forms/BankDocument/BankDocumentClassification.d.ts +5 -0
- package/dist/types/components/BankAccount/forms/BankDocument/BankDocumentRequirementsModal.d.ts +6 -0
- package/dist/types/components/BankAccount/forms/BankDocument/types.d.ts +2 -2
- package/dist/types/components/BankAccount/forms/BankDocument/validate.d.ts +3 -0
- package/dist/types/components/BankAccount/forms/BankVerification/BankVerification.d.ts +1 -1
- package/dist/types/components/BankAccount/forms/BankVerification/types.d.ts +7 -0
- package/dist/types/components/BankAccount/forms/BankVerification/verification/overlay/BankVerificationOverlay.d.ts +3 -0
- package/dist/types/components/BankAccount/forms/PayoutAccount/payoutAccountFormat.d.ts +1 -1
- package/dist/types/components/BankAccount/forms/PayoutAccount/types.d.ts +2 -0
- package/dist/types/components/BankAccount/forms/PayoutCountryDetails/PayoutCountryDetails.d.ts +3 -0
- package/dist/types/components/BankAccount/forms/PayoutCountryDetails/PayoutRequirementsModal.d.ts +8 -0
- package/dist/types/components/BankAccount/forms/PayoutCountryDetails/types.d.ts +13 -0
- package/dist/types/components/BankAccount/forms/PayoutDetails/PayoutDetails.d.ts +6 -1
- package/dist/types/components/BankAccount/forms/PayoutDetails/rules.d.ts +1 -1
- package/dist/types/components/BankAccount/forms/PayoutDetails/types.d.ts +2 -0
- package/dist/types/components/BankAccount/forms/PayoutVerificationMethod/PayoutVerificationMethod.d.ts +1 -2
- package/dist/types/components/BankAccount/forms/PayoutVerificationMethod/payoutVerificationMethodMetadata.d.ts +5 -5
- package/dist/types/components/BankAccount/forms/PayoutVerificationMethod/utils.d.ts +2 -0
- package/dist/types/components/BankAccount/mapping/mapPayoutAccountSchemaToApiBankAccount.d.ts +3 -2
- package/dist/types/components/BankAccount/mapping/mapPayoutDetailsToTransferInstrument.d.ts +2 -1
- package/dist/types/components/BankAccount/mapping/mapTransferInstrumentToPayoutAccount.d.ts +1 -1
- package/dist/types/components/BankAccount/mapping/payoutKeyMappings.d.ts +1052 -642
- package/dist/types/components/BankAccount/pages/PayoutDetailsPage.d.ts +1 -1
- package/dist/types/components/BankAccount/tasks/PayoutDetailsDropin/PayoutDetailsDropin.d.ts +1 -0
- package/dist/types/components/BankAccount/tasks/PayoutDetailsDropin/payoutDetailsFormConfig.d.ts +1 -1
- package/dist/types/components/BankAccount/tasks/PayoutDetailsDropin/utils.d.ts +3 -3
- package/dist/types/components/BankAccount/utils/payoutAccountUtil.d.ts +5 -4
- package/dist/types/components/Business/forms/AdditionalInformation/AdditionalInformation.d.ts +1 -2
- package/dist/types/components/Business/forms/AdditionalInformation/{VerifiedBusinessCard.d.ts → VerifiedBusinessCard/VerifiedBusinessCard.d.ts} +2 -3
- package/dist/types/components/Business/forms/AdditionalInformation/types.d.ts +6 -7
- package/dist/types/components/Business/forms/BasicInformation/BasicInformation.d.ts +1 -4
- package/dist/types/components/Business/forms/BasicInformation/types.d.ts +5 -18
- package/dist/types/components/Business/{tasks/BusinessDetailsMultiformDropin → forms/BusinessDetails}/BusinessDetailsMultiform.d.ts +2 -1
- package/dist/types/components/Business/forms/BusinessDetails/forms.d.ts +0 -35
- package/dist/types/components/Business/forms/BusinessDetails/types.d.ts +0 -21
- package/dist/types/components/Business/forms/BusinessSelection/BusinessInformationCard/BusinessInformationCard.d.ts +0 -1
- package/dist/types/components/Business/forms/BusinessSelection/BusinessSelection.d.ts +13 -3
- package/dist/types/components/Business/forms/BusinessSelection/types.d.ts +0 -11
- package/dist/types/components/Business/forms/CompanyStructure/CompanyStructure.d.ts +3 -3
- package/dist/types/components/Business/forms/CompanyStructure/types.d.ts +0 -6
- package/dist/types/components/Business/forms/ProofOfDirectorDocument/ProofOfDirectorDocument.d.ts +1 -1
- package/dist/types/components/Business/forms/ProofOfDirectorDocument/types.d.ts +0 -3
- package/dist/types/components/Business/forms/ProofOfOwnershipDocument/ProofOfOwnershipDocument.d.ts +1 -1
- package/dist/types/components/Business/forms/ProofOfOwnershipDocument/types.d.ts +0 -3
- package/dist/types/components/Business/forms/ProofOfSignatoryDocument/ProofOfSignatoryDocument.d.ts +1 -1
- package/dist/types/components/Business/forms/ProofOfSignatoryDocument/types.d.ts +0 -3
- package/dist/types/components/Business/forms/RegistrationDocument/RegistrationDocument.d.ts +1 -1
- package/dist/types/components/Business/forms/RegistrationDocument/types.d.ts +3 -5
- package/dist/types/components/Business/forms/TaxDocument/TaxDocument.d.ts +1 -1
- package/dist/types/components/Business/forms/TaxDocument/types.d.ts +3 -5
- package/dist/types/components/Business/forms/forms.types.d.ts +0 -3
- package/dist/types/components/Business/forms/rules.d.ts +3 -1
- package/dist/types/components/Business/mapping/businessDetails/mapLegalEntityToBusinessDetailsSchema.d.ts +1 -2
- package/dist/types/components/Business/pages/RootBusinessDetailsPage.d.ts +1 -1
- package/dist/types/components/Business/tasks/BusinessDetailsDropin/BusinessDetailsDropin.d.ts +3 -3
- package/dist/types/components/Business/tasks/BusinessDetailsDropin/businessDetailsStore.d.ts +5 -4
- package/dist/types/components/Business/tasks/BusinessDetailsDropin/types.d.ts +16 -10
- package/dist/types/components/Business/tasks/BusinessDetailsDropin/utils.d.ts +26 -5
- package/dist/types/components/Business/utils/applyVerifiedBusinessData.d.ts +5 -0
- package/dist/types/components/Business/utils/companyTypeMetadata.d.ts +3 -3
- package/dist/types/components/Business/utils/requestingCapabilities.d.ts +3 -0
- package/dist/types/components/BusinessLines/constants.d.ts +31 -0
- package/dist/types/components/BusinessLines/fields/Carousel/Carousel.d.ts +30 -0
- package/dist/types/components/BusinessLines/fields/SalesChannels/SalesChannels.d.ts +2 -0
- package/dist/types/components/BusinessLines/fields/SalesChannels/types.d.ts +6 -0
- package/dist/types/components/BusinessLines/fields/SctaField/SctaField.d.ts +2 -0
- package/dist/types/components/BusinessLines/fields/SctaField/types.d.ts +6 -0
- package/dist/types/components/BusinessLines/fields/WebDataField/WebDataField.d.ts +2 -0
- package/dist/types/components/BusinessLines/fields/WebDataField/types.d.ts +6 -0
- package/dist/types/components/BusinessLines/forms/IndustryCodesForm/IndustryCodesForm.d.ts +2 -0
- package/dist/types/components/BusinessLines/forms/IndustryCodesForm/types.d.ts +2 -0
- package/dist/types/components/BusinessLines/forms/SalesChannelsForm/SalesChannelsForm.d.ts +2 -0
- package/dist/types/components/BusinessLines/forms/SalesChannelsForm/types.d.ts +3 -0
- package/dist/types/components/BusinessLines/forms/SctaForm/SctaForm.d.ts +2 -0
- package/dist/types/components/BusinessLines/forms/SctaForm/SctaInfoModal.d.ts +3 -0
- package/dist/types/components/BusinessLines/forms/SctaForm/types.d.ts +2 -0
- package/dist/types/components/BusinessLines/forms/rules.d.ts +6 -0
- package/dist/types/components/BusinessLines/tasks/BusinessLines/BusinessLineModal/BusinessLineModal.d.ts +6 -0
- package/dist/types/components/BusinessLines/tasks/BusinessLines/BusinessLines.d.ts +9 -0
- package/dist/types/components/BusinessLines/tasks/BusinessLines/BusinessLinesDropin.d.ts +2 -0
- package/dist/types/components/BusinessLines/tasks/BusinessLines/BusinessLinesStore.d.ts +3 -0
- package/dist/types/components/BusinessLines/tasks/BusinessLines/ExistingBusinessLines/ExistingBusinessLines.d.ts +8 -0
- package/dist/types/components/BusinessLines/tasks/types.d.ts +19 -0
- package/dist/types/components/BusinessLines/tasks/utils.d.ts +40 -0
- package/dist/types/components/BusinessLines/tasks/validate.d.ts +11 -0
- package/dist/types/components/Contract/hooks/useSalesChannels.d.ts +2 -0
- package/dist/types/components/Contract/tasks/ServiceAgreementDropin/ServiceAgreementDropin.d.ts +1 -1
- package/dist/types/components/Contract/tasks/ServiceAgreementDropin/types.d.ts +2 -2
- package/dist/types/components/EFP/mapping/businessFinancingKeyMappings.d.ts +1328 -758
- package/dist/types/components/EFP/tasks/BusinessFinancingDropin/BusinessFinancingBasicCompanyInformation.d.ts +0 -1
- package/dist/types/components/EFP/tasks/BusinessFinancingDropin/BusinessFinancingBusinessInformation.d.ts +0 -1
- package/dist/types/components/EFP/tasks/BusinessFinancingDropin/BusinessFinancingFinancialInformation.d.ts +0 -1
- package/dist/types/components/EFP/tasks/BusinessFinancingDropin/BusinessFinancingOwnershipStructure.d.ts +0 -1
- package/dist/types/components/EFP/tasks/BusinessFinancingDropin/BusinessFinancingRegisteredAddress.d.ts +0 -1
- package/dist/types/components/EFP/tasks/BusinessFinancingDropin/types.d.ts +7 -5
- package/dist/types/components/EFP/tasks/SourceOfFundsDropin/SourceOfFundsType.d.ts +3 -0
- package/dist/types/components/EFP/tasks/SourceOfFundsDropin/sofStore.d.ts +1 -1
- package/dist/types/components/EFP/tasks/SourceOfFundsDropin/utils.d.ts +14 -13
- package/dist/types/components/EFP/tasks/TaxReportingDropin/taxClassificationStore.d.ts +1 -1
- package/dist/types/components/EFP/tasks/TaxReportingDropin/utils.d.ts +6 -6
- package/dist/types/components/EmbeddedDropins/BusinessFinancingComponent/BusinessFinancingComponent.d.ts +1 -1
- package/dist/types/components/EmbeddedDropins/BusinessFinancingComponent/utils.d.ts +3 -3
- package/dist/types/components/EmbeddedDropins/SignPCIComponent/SignPCIComponent.d.ts +3 -1
- package/dist/types/components/EmbeddedDropins/ViewVerificationStatus/content.d.ts +3 -3
- package/dist/types/components/Individual/fields/NameFields/NameFields.d.ts +3 -0
- package/dist/types/components/Individual/forms/Individual/IdVerification/idVerificationProviderId.d.ts +1 -1
- package/dist/types/components/Individual/forms/Individual/IdVerificationMethod/idVerificationMethodMetadata.d.ts +3 -3
- package/dist/types/components/Individual/forms/Individual/PersonalDetails/types.d.ts +2 -0
- package/dist/types/components/Individual/forms/Individual/rules.d.ts +1 -1
- package/dist/types/components/Individual/forms/IndividualOnfido/AdditionalPersonalDetails/AdditionalPersonalDetails.types.d.ts +2 -1
- package/dist/types/components/Individual/forms/IndividualOnfido/IdNowVerificationModal/isIdNowModalOpen.d.ts +3 -3
- package/dist/types/components/Individual/forms/IndividualOnfido/IndividualOnfido.rules.d.ts +2 -2
- package/dist/types/components/Individual/forms/IndividualOnfido/UboQuestionnaire/UboQuestionnaire.types.d.ts +4 -1
- package/dist/types/components/Individual/forms/IndividualOnfido/UboQuestionnaire/UboQuestionnaireModalContent.d.ts +3 -1
- package/dist/types/components/Individual/helpers/shouldShowMotionCapture.d.ts +2 -2
- package/dist/types/components/Individual/pages/DecisionMakerDetailsPage.d.ts +2 -8
- package/dist/types/components/Individual/pages/RootIndividualDetailsPage.d.ts +2 -6
- package/dist/types/components/Individual/tasks/DecisionMakers/DecisionMakerDetails/DecisionMakerDetails.d.ts +1 -1
- package/dist/types/components/Individual/tasks/DecisionMakers/DecisionMakerDetails/DecisionMakerDetails.types.d.ts +2 -0
- package/dist/types/components/Individual/tasks/DecisionMakers/DecisionMakerDetails/utils.d.ts +57 -0
- package/dist/types/components/Individual/tasks/DecisionMakers/RemediationAlerts/RemediationAlerts.d.ts +7 -0
- package/dist/types/components/Individual/tasks/DecisionMakers/RemediationAlerts/remediation.config.d.ts +19 -0
- package/dist/types/components/Individual/tasks/DecisionMakers/types.d.ts +0 -2
- package/dist/types/components/Individual/tasks/DecisionMakers/utils.d.ts +3 -0
- package/dist/types/components/Individual/tasks/IndividualOnfidoDropin/IndividualOnfidoStore.d.ts +1 -1
- package/dist/types/components/Shared/EntityAssociation/EntityAssociation.d.ts +1 -1
- package/dist/types/components/Shared/EntityAssociation/types.d.ts +2 -4
- package/dist/types/components/Shared/FormFlow/FormFlow.d.ts +1 -1
- package/dist/types/components/Shared/FormFlow/FormFlow.types.d.ts +0 -2
- package/dist/types/components/Shared/FormNavigation/FormNavigation.d.ts +1 -1
- package/dist/types/components/Shared/FormNavigation/types.d.ts +0 -2
- package/dist/types/components/Shared/FormWrapper/FormWrapper.d.ts +1 -3
- package/dist/types/components/Shared/Introduction/copy.d.ts +2 -2
- package/dist/types/components/Shared/Summary/Summary.d.ts +1 -1
- package/dist/types/components/Shared/Summary/types.d.ts +1 -2
- package/dist/types/components/Shared/TaskVerificationStatus/TaskVerificationStatus.d.ts +18 -0
- package/dist/types/components/Shared/devex/DebugListener/DebugFormData.d.ts +1 -0
- package/dist/types/components/Shared/devex/DebugListener/debugStore.d.ts +5 -0
- package/dist/types/components/Shared/fields/IdFieldTypeSelector/VatNumberTypeSelector.d.ts +1 -1
- package/dist/types/components/Shared/fields/IdFieldTypeSelector/countryIdNumberTypes.d.ts +1 -0
- package/dist/types/components/Shared/fields/IndustryCodeField/IndustryCodeField.d.ts +4 -0
- package/dist/types/components/Shared/fields/IndustryCodeField/fieldConfig.d.ts +3 -0
- package/dist/types/components/Shared/fields/IndustryCodeField/types.d.ts +22 -0
- package/dist/types/components/Shared/fields/IndustryCodeField/validate.d.ts +3 -0
- package/dist/types/components/Shared/fields/LocalizedLegalCompanyNameField/fieldConfig.d.ts +4 -4
- package/dist/types/components/Shared/forms/Address/localized/jp/JpAddress.d.ts +7 -0
- package/dist/types/components/Shared/forms/Address/localized/jp/ReadonlyTextField.d.ts +7 -0
- package/dist/types/components/Shared/forms/Address/localized/jp/jpAddressSchema.d.ts +5 -0
- package/dist/types/components/Shared/forms/Address/localized/jp/mapAddressLocalizationToJpAddressSchema.d.ts +3 -0
- package/dist/types/components/Shared/forms/Address/localized/jp/mapJpAddressSchemaToAddressLocalizations.d.ts +3 -0
- package/dist/types/components/Shared/forms/Address/localized/jp/mapJpAddressSummary.d.ts +4 -0
- package/dist/types/components/Shared/forms/Address/utils.d.ts +3 -2
- package/dist/types/components/Shared/forms/FinancialInformation/formatFinancialInformationSummary.d.ts +1 -2
- package/dist/types/components/Shared/forms/RegistrationAddress/RegistrationAddressMultiform.d.ts +3 -0
- package/dist/types/components/Shared/forms/RegistrationAddress/types.d.ts +3 -2
- package/dist/types/components/Shared/tasks/CustomerSupport/mapping/customerSupportKeyMapping.d.ts +4 -0
- package/dist/types/components/Shared/tasks/TaskList/TaskList.d.ts +3 -1
- package/dist/types/components/Shared/tasks/TaskList/TaskListItem.d.ts +1 -1
- package/dist/types/components/Shared/tasks/TaskList/types.d.ts +4 -12
- package/dist/types/components/Shared/tasks/TaskList/utils.d.ts +1 -1
- package/dist/types/components/SoleProprietorship/pages/SoleProprietorshipPage.d.ts +1 -2
- package/dist/types/components/Trust/forms/TrustRegistrationDetails/TrustRegistrationDetailsMultiform.d.ts +2 -0
- package/dist/types/components/Trust/hooks/useTrustMemberNavigation.hook.d.ts +1 -16
- package/dist/types/components/Trust/pages/TrustMemberCompanyPage.d.ts +1 -2
- package/dist/types/components/Trust/tasks/RoleAndTypeDropin/formatRoleAndEntityTypeSummary.d.ts +2 -2
- package/dist/types/components/Trust/tasks/TrustDropin/TrustMultiform.d.ts +21 -0
- package/dist/types/components/Trust/tasks/TrustDropin/TrustMultiformDropin.d.ts +2 -0
- package/dist/types/components/Trust/tasks/TrustDropin/validate.d.ts +5 -0
- package/dist/types/components/UnincorporatedPartnership/pages/UnincorporatedPartnershipMemberCompanyPage.d.ts +1 -2
- package/dist/types/components/ui/atoms/Header/Header.d.ts +12 -0
- package/dist/types/components/ui/atoms/Link/Link.types.d.ts +1 -1
- package/dist/types/components/ui/atoms/ListItem/ListItem.d.ts +1 -2
- package/dist/types/components/ui/atoms/Loader/Loader.d.ts +1 -5
- package/dist/types/components/ui/atoms/Modal/MaybeModal.d.ts +1 -1
- package/dist/types/components/ui/atoms/RadioCard/RadioCard.d.ts +1 -0
- package/dist/types/components/ui/atoms/RadioGroup/RadioGroup.d.ts +1 -1
- package/dist/types/components/ui/atoms/RadioGroupCard/RadioGroupCard.d.ts +4 -4
- package/dist/types/components/ui/atoms/RadioGroupCard/RadioGroupCard.types.d.ts +8 -9
- package/dist/types/components/ui/atoms/Status/Status.d.ts +9 -3
- package/dist/types/components/ui/atoms/Svg/svgs.d.ts +10 -0
- package/dist/types/components/ui/atoms/TileGroup/TileGroup.d.ts +3 -1
- package/dist/types/components/ui/atoms/Typography/Typography.types.d.ts +1 -1
- package/dist/types/components/ui/layout/StackLayout/StackLayout.d.ts +29 -7
- package/dist/types/components/ui/molecules/Card/Card.d.ts +1 -1
- package/dist/types/components/ui/molecules/Card/types.d.ts +1 -0
- package/dist/types/components/ui/molecules/DocumentGuidance/DocumentGuidance.types.d.ts +1 -2
- package/dist/types/components/ui/molecules/Dropzone/FilePicker.d.ts +2 -1
- package/dist/types/components/ui/molecules/Dropzone/types.d.ts +1 -0
- package/dist/types/components/ui/molecules/EmbeddedStatus/EmbeddedStatus.d.ts +2 -23
- package/dist/types/components/ui/molecules/EmbeddedStatus/statusToTag.d.ts +3 -3
- package/dist/types/components/ui/molecules/EmbeddedStatus/types.d.ts +23 -0
- package/dist/types/context/ExperimentContext/types.d.ts +24 -23
- package/dist/types/context/I18nProvider/I18nContext.d.ts +3 -0
- package/dist/types/context/SettingsContext/SettingsProvider.d.ts +1 -1
- package/dist/types/context/SettingsContext/types.d.ts +3 -0
- package/dist/types/context/StateContext/types.d.ts +2 -1
- package/dist/types/core/errorMapping.d.ts +4 -1
- package/dist/types/core/models/api/address.d.ts +5 -0
- package/dist/types/core/models/api/capability.d.ts +20 -0
- package/dist/types/core/models/api/legal-entity-association.d.ts +1 -1
- package/dist/types/core/models/api/source-of-funds.d.ts +5 -0
- package/dist/types/core/models/api/transfer-instrument.d.ts +2 -0
- package/dist/types/core/process-field-configurations.d.ts +4 -1
- package/dist/types/core/user-events.d.ts +22 -11
- package/dist/types/datasets/generators/getAccountFormatForCountry.d.ts +1 -0
- package/dist/types/hooks/singpass/useSingpassMyInfoLogin.d.ts +2 -6
- package/dist/types/hooks/{useAnalytics.d.ts → useAnalytics/useAnalytics.d.ts} +1 -7
- package/dist/types/hooks/useLegalCompanyNameField/useLegalCompanyNameField.d.ts +6 -8
- package/dist/types/hooks/useUboQuestionnaire.d.ts +25 -0
- package/dist/types/language/Language.d.ts +10 -0
- package/dist/types/language/types.d.ts +21 -7
- package/dist/types/language/utils.d.ts +2 -2
- package/dist/types/stores/formState.d.ts +2 -0
- package/dist/types/stores/globalStore/taskTypes.d.ts +1 -1
- package/dist/types/types/datasets/currency.d.ts +0 -1
- package/dist/types/types/form-rules.d.ts +3 -0
- package/dist/types/types/form.d.ts +0 -2
- package/dist/types/utils/addLinkedFields.d.ts +26 -2
- package/dist/types/utils/analytics/convertToEmbeddedEvent.d.ts +9 -0
- package/dist/types/utils/analytics/debouncedInputEvent.d.ts +30 -0
- package/dist/types/utils/analytics/getAnalyticsAssociatedEntityDetails.d.ts +13 -0
- package/dist/types/utils/{trackNavigation.d.ts → analytics/trackNavigation.d.ts} +1 -1
- package/dist/types/utils/api/documentUtils.d.ts +1 -0
- package/dist/types/utils/customerSupportUtils.d.ts +3 -0
- package/dist/types/utils/entityStatusUtil.d.ts +1 -1
- package/dist/types/utils/filterProblemsByTaskForms.d.ts +12 -0
- package/dist/types/utils/getName.d.ts +1 -1
- package/dist/types/utils/getSSNType.d.ts +1 -0
- package/dist/types/utils/getTrustedFields.d.ts +9 -0
- package/dist/types/utils/japanSupportUtils.d.ts +2 -0
- package/dist/types/utils/textTransformation/toFullWidth.d.ts +6 -0
- package/dist/types/utils/translation.d.ts +3 -2
- package/dist/types/utils/validatorUtils.d.ts +1 -0
- package/dist/{types-BZdZSp82.js → types-BXl6V78E.js} +27 -4
- package/dist/types-CoA3qKLi.js +34 -0
- package/dist/{types-CX7rD7X4.js → types-DFkJwAG7.js} +2 -2
- package/dist/{types-CAznNNSI.js → types-Dk94b8kx.js} +27 -26
- package/dist/upload-BF65P4KM.js +17 -0
- package/dist/{useAssociatedLegalEntity-DD2ldSE1.js → useAssociatedLegalEntity-BXXTCq2H.js} +2 -2
- package/dist/useCreateLegalEntity-BNSFNiHp.js +31 -0
- package/dist/{useDataset-B8uRm9G9.js → useDataset-CLPw5wNd.js} +102 -2
- package/dist/{useForm-Bikkn7wR.js → useForm-BkgSiM1i.js} +16 -86
- package/dist/useGlobalData-BeYozqdQ.js +68 -0
- package/dist/{useMultiForm-BvLkXMC6.js → useMultiForm-2sO8cnmJ.js} +4 -4
- package/dist/{useOnboardingStatus-CHvOF6oX.js → useOnboardingStatus-DX9R5XKU.js} +2 -2
- package/dist/{useScenarios-uUD1GHMT.js → useScenarios-CVql9dlu.js} +2 -2
- package/dist/{useTermsOfServiceStatus-_0VSQK9K.js → useTermsOfServiceStatus-D1yYDEeh.js} +2 -2
- package/dist/{useToastContext-kLS15CCB.js → useToastContext-CbM0O-ZH.js} +17 -8
- package/dist/{useUnincorporatedPartnershipMembers-pxytkrwW.js → useUnincorporatedPartnershipMembers-BpDu4QKJ.js} +5 -5
- package/dist/useUpdateBusinessLines-DSH6ZmMJ.js +46 -0
- package/dist/useUpdateLegalEntity-DnbryhbN.js +39 -0
- package/dist/utils-BwrYpRdV.js +774 -0
- package/dist/{utils-BI6oHlaw.js → utils-m640rX-u.js} +6 -46
- package/dist/validate-B8aB6l_3.js +41 -0
- package/dist/{validate-DGgXfXyg.js → validate-Cf-TAdac.js} +2 -2
- package/dist/{validationError-CpKFQv28.js → validationError-BVdpr3ww.js} +2 -2
- package/dist/warning-circle-fill-CEN1WL7A.js +17 -0
- package/dist/warning-diamond-filled-BfXMlVrG.js +17 -0
- package/dist/webinar-DqjqrNEv.js +22 -0
- package/package.json +77 -78
- package/dist/4-people-CCqdlDEw.js +0 -24
- package/dist/BusinessDetailsDropin-Be1nkzWx.js +0 -5088
- package/dist/BusinessFinancingComponent-BiFxtiME.js +0 -45
- package/dist/BusinessFinancingPage-C_3W8tC9.js +0 -40
- package/dist/Card-D0gduObT.js +0 -145
- package/dist/Confirm-DyWhqxmU.js +0 -64
- package/dist/CreateIndividualComponent-9-TP2x1D.js +0 -72
- package/dist/CreateTransferInstrumentComponent-U_HRSoZx.js +0 -67
- package/dist/DecisionMakerDetailsPage-vWtfPycT.js +0 -100
- package/dist/DecisionMakers-2aN_F-vt.js +0 -591
- package/dist/Dropzone-Cp2PTdED.js +0 -218
- package/dist/FormFlow-C95V54gu.js +0 -216
- package/dist/InputDate-DX90XEmr.js +0 -43
- package/dist/InputGroup-WBfGDV5F.js +0 -32
- package/dist/Link-Bn9pt52z.js +0 -35
- package/dist/ManageIndividualComponent-C5Epqe2I.js +0 -47
- package/dist/ManageTermsOfServiceComponent-zcuZm98f.js +0 -47
- package/dist/OnboardingDropinComponent-BgFPF-FG.js +0 -4301
- package/dist/RadioGroup-htJh3Lz5.js +0 -143
- package/dist/RegistrationAddress-DiVxWv-x.js +0 -2334
- package/dist/RootBusinessDetailsPage-DNGDa-xd.js +0 -1870
- package/dist/RootIndividualDetailsPage-DyWuruIM.js +0 -77
- package/dist/SoleProprietorshipPage-CYz0fHew.js +0 -50
- package/dist/Spacer-BK3jDget.js +0 -18
- package/dist/StructuredList-DaepaiVE.js +0 -38
- package/dist/TaskItemStatus-lQuiqU1e.js +0 -125
- package/dist/TaskStatusIndicator-8ug09mhu.js +0 -69
- package/dist/TaxInformationField-BfyN5nzh.js +0 -3062
- package/dist/TileGroup-CTesI0Vt.js +0 -174
- package/dist/TrustDetailsPage-CjG99ca_.js +0 -1205
- package/dist/TrustMemberCompanyPage-CiA3B0Ro.js +0 -60
- package/dist/TrustMemberIndividualPage-J1-6IFlZ.js +0 -66
- package/dist/analytics-Cg99WKif.js +0 -61
- package/dist/bafinUtils-Sy6B6Lec.js +0 -457
- package/dist/bin-Bgdj6KzC.js +0 -18
- package/dist/capital-CF9_Ev99.js +0 -17
- package/dist/checkmark-circle-fill-BhvuqTl9.js +0 -17
- package/dist/circle-Dgfa7GUy.js +0 -17
- package/dist/coins-CFu331p2.js +0 -17
- package/dist/commonValidators-cnXbus2a.js +0 -24
- package/dist/currency-BGwQyxBo.js +0 -36
- package/dist/da-DK-BJ7aTPir.js +0 -13
- package/dist/da-DK-BTpZzEgA.js +0 -15
- package/dist/da-DK-CeNMXUfE.js +0 -23
- package/dist/da-DK-D0N1TVVU.js +0 -58
- package/dist/da-DK-D4H69PX3.js +0 -30
- package/dist/da-DK-DStNe471.js +0 -22
- package/dist/da-DK-q2b_1elr.js +0 -35
- package/dist/de-DE-C78RLE2G.js +0 -13
- package/dist/de-DE-CGoBPCPv.js +0 -22
- package/dist/de-DE-D2ByeIZs.js +0 -35
- package/dist/de-DE-DjOUNvp6.js +0 -15
- package/dist/de-DE-Dtuu-nE7.js +0 -58
- package/dist/de-DE-JI-7mvxy.js +0 -23
- package/dist/de-DE-wp5-H-ov.js +0 -30
- package/dist/document-person-DBlLin9u.js +0 -20
- package/dist/download-B8_c4ARV.js +0 -17
- package/dist/edit-1-D6f6zk9p.js +0 -14
- package/dist/en-US-546hB2Wn.js +0 -60
- package/dist/en-US-BQpgt41j.js +0 -37
- package/dist/en-US-BTYdAWXp.js +0 -15
- package/dist/en-US-CAm3meB1.js +0 -30
- package/dist/en-US-CQ3angjM.js +0 -22
- package/dist/en-US-DHq7VYFs.js +0 -23
- package/dist/es-ES-BsQpwaPN.js +0 -58
- package/dist/es-ES-BtUSEzkE.js +0 -13
- package/dist/es-ES-CKMfS8Yy.js +0 -22
- package/dist/es-ES-Cj7q7fWO.js +0 -15
- package/dist/es-ES-DOVPTeyf.js +0 -23
- package/dist/es-ES-Ds3-DtqZ.js +0 -30
- package/dist/es-ES-WWftn3JX.js +0 -35
- package/dist/fi-FI-BJ9RzrL3.js +0 -58
- package/dist/fi-FI-BNcnKrJ9.js +0 -15
- package/dist/fi-FI-Cvar63RH.js +0 -13
- package/dist/fi-FI-D522KHGk.js +0 -23
- package/dist/fi-FI-D9E_KaJi.js +0 -35
- package/dist/fi-FI-DPNeTsJS.js +0 -30
- package/dist/fi-FI-REYOX46I.js +0 -22
- package/dist/fieldConfigurations-kDKvJ6je.js +0 -458
- package/dist/formatCurrency-CMOSdJMB.js +0 -29
- package/dist/fr-FR-B5543Fe-.js +0 -13
- package/dist/fr-FR-Bn3D6mmY.js +0 -15
- package/dist/fr-FR-CNR5-s9g.js +0 -58
- package/dist/fr-FR-ChmNQciP.js +0 -30
- package/dist/fr-FR-Cv0k-3Xc.js +0 -35
- package/dist/fr-FR-D9qaP6nx.js +0 -22
- package/dist/fr-FR-DInQKkTd.js +0 -23
- package/dist/gift-SdNY6AqI.js +0 -14
- package/dist/headquarter-C6AsewcP.js +0 -21
- package/dist/image-eUqBiRX_.js +0 -17
- package/dist/info-Wao3PEQK.js +0 -21
- package/dist/isEmpty-C9y5I8Tl.js +0 -23
- package/dist/it-IT-BV9K87FK.js +0 -58
- package/dist/it-IT-Biduphjt.js +0 -22
- package/dist/it-IT-C_fNHhjE.js +0 -35
- package/dist/it-IT-CjEYONJg.js +0 -23
- package/dist/it-IT-Dd6xGSe-.js +0 -13
- package/dist/it-IT-DvM-9LpM.js +0 -15
- package/dist/it-IT-eCrTB65E.js +0 -30
- package/dist/keys-BpNgnAsD.js +0 -23
- package/dist/location-YXhcBMDy.js +0 -17
- package/dist/mail-Z_IE_hkw.js +0 -14
- package/dist/mapScriptLocalization-B4Be11Tx.js +0 -72
- package/dist/nl-NL-BHqiO21q.js +0 -15
- package/dist/nl-NL-D2QKudfh.js +0 -30
- package/dist/nl-NL-DLedC3mO.js +0 -35
- package/dist/nl-NL-DVENFpd5.js +0 -13
- package/dist/nl-NL-DywVQ9km.js +0 -58
- package/dist/nl-NL-G1wVnmzT.js +0 -22
- package/dist/nl-NL-Zcq0bXd-.js +0 -23
- package/dist/no-NO-B8oxqfNI.js +0 -58
- package/dist/no-NO-BTtAuqCb.js +0 -22
- package/dist/no-NO-BxReX6oF.js +0 -23
- package/dist/no-NO-CKT9kLAH.js +0 -15
- package/dist/no-NO-C_snYWBc.js +0 -30
- package/dist/no-NO-CpVal4cV.js +0 -35
- package/dist/no-NO-Dn2UkdoI.js +0 -13
- package/dist/partner-COG2_Erh.js +0 -21
- package/dist/pay-by-link-plane-Pv7Babgn.js +0 -22
- package/dist/person-CdGfItMU.js +0 -17
- package/dist/plus-circle-filled-Cnf1oJTm.js +0 -17
- package/dist/pt-PT-BkvMsoK4.js +0 -35
- package/dist/pt-PT-BvK00TeI.js +0 -58
- package/dist/pt-PT-C-hbNnsB.js +0 -30
- package/dist/pt-PT-D2elvnDU.js +0 -15
- package/dist/pt-PT-Dk48OVtf.js +0 -22
- package/dist/pt-PT-N0njcfLO.js +0 -23
- package/dist/pt-PT-_o5xgnxS.js +0 -13
- package/dist/resolveEnvironment-Il1uuuaq.js +0 -84
- package/dist/revenue-accelerate-rtXA-8EE.js +0 -17
- package/dist/save-BofgDbDX.js +0 -14
- package/dist/search-BjMkvQh0.js +0 -17
- package/dist/sl-SI-BB7iVcFI.js +0 -22
- package/dist/sl-SI-BhVTSmhQ.js +0 -30
- package/dist/sl-SI-BylvpF-X.js +0 -15
- package/dist/sl-SI-Cth2Qa5T.js +0 -35
- package/dist/sl-SI-D_rqR0D7.js +0 -35
- package/dist/sl-SI-MZoDApq9.js +0 -23
- package/dist/sl-SI-NI2OJAvm.js +0 -58
- package/dist/store-CkhgQMl0.js +0 -14
- package/dist/sv-SE-66rqYTxi.js +0 -30
- package/dist/sv-SE-BUfESAQK.js +0 -13
- package/dist/sv-SE-CAZpDX9G.js +0 -58
- package/dist/sv-SE-DCFSf4Oj.js +0 -23
- package/dist/sv-SE-DbI-1JqN.js +0 -22
- package/dist/sv-SE-Dwz1yTrB.js +0 -15
- package/dist/sv-SE-OPOHtqtP.js +0 -35
- package/dist/terminal-1-ewywjFJI.js +0 -18
- package/dist/toCapitalized-Bq7laD0b.js +0 -13
- package/dist/translation-RPPT5Bll.js +0 -472
- package/dist/types/api/pciTemplate/usePciTemplate.d.ts +0 -14
- package/dist/types/components/Business/forms/AdditionalInformation/AdditionalInformationMultiform.d.ts +0 -9
- package/dist/types/components/Business/forms/BasicInformation/BasicInformationMultiform.d.ts +0 -9
- package/dist/types/components/Business/forms/BusinessDetails/BusinessDetails.d.ts +0 -3
- package/dist/types/components/Business/forms/BusinessSelection/BusinessSelectionMultiform.d.ts +0 -14
- package/dist/types/components/Business/forms/CompanyStructure/CompanyStructureMultiform.d.ts +0 -4
- package/dist/types/components/Business/tasks/BusinessDetailsMultiformDropin/BusinessDetailsMultiformDropin.d.ts +0 -5
- package/dist/types/components/Business/tasks/BusinessDetailsMultiformDropin/types.d.ts +0 -2
- package/dist/types/components/Business/tasks/BusinessDetailsMultiformDropin/utils.d.ts +0 -21
- package/dist/types/components/BusinessLines/tasks/BusinessLinesDropin.d.ts +0 -5
- package/dist/types/components/Contract/hooks/useSalesChannelsSettings.d.ts +0 -3
- package/dist/types/components/Shared/tasks/TaskList/TaskItemStatus.d.ts +0 -2
- package/dist/types/components/ui/atoms/FormHeader/FormHeader.d.ts +0 -8
- package/dist/types/components/ui/atoms/Remove/Remove.d.ts +0 -2
- package/dist/types/components/ui/atoms/Remove/Remove.types.d.ts +0 -9
- package/dist/types/components/ui/atoms/Status/Status.types.d.ts +0 -8
- package/dist/types/components/ui/atoms/TaskStatusIndicator/TaskStatusIndicator.d.ts +0 -11
- package/dist/types/components/ui/molecules/Card/CardGroup.d.ts +0 -3
- package/dist/types/core/analytics.d.ts +0 -31
- package/dist/types/utils/bankVerification/animation.d.ts +0 -2
- package/dist/upload-XDhHhAHV.js +0 -17
- package/dist/useFormContext-beqGS11A.js +0 -23
- package/dist/utils-B7kcMyYW.js +0 -159
- package/dist/utils-DvAaNu7U.js +0 -29
- package/dist/validate-DxfuzxT4.js +0 -382
- package/dist/validate-Dz7xvgxq.js +0 -605
- package/dist/warning-circle-fill-DADaWT65.js +0 -17
- package/dist/warning-filled-BfAQN-BF.js +0 -14
- package/dist/webinar-BJWDRK2H.js +0 -22
- /package/dist/types/api/{pciTemplate → pci}/useSignPci.d.ts +0 -0
- /package/dist/types/components/Business/tasks/{BusinessDetailsMultiformDropin → BusinessDetailsDropin}/validate.d.ts +0 -0
- /package/dist/types/components/BusinessLines/tasks/{BusinessLinesGettingStarted → BusinessLines}/BusinessLinesGettingStarted.d.ts +0 -0
|
@@ -2,48 +2,48 @@
|
|
|
2
2
|
{
|
|
3
3
|
try {
|
|
4
4
|
let e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
|
|
5
|
-
n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "
|
|
5
|
+
n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "69d90c0e-4c77-421f-a21f-a81bf86c211b", e._sentryDebugIdIdentifier = "sentry-dbid-69d90c0e-4c77-421f-a21f-a81bf86c211b");
|
|
6
6
|
} catch (e) {
|
|
7
7
|
}
|
|
8
8
|
}
|
|
9
9
|
;
|
|
10
10
|
import { jsx, jsxs, Fragment } from "preact/jsx-runtime";
|
|
11
|
+
import { signal } from "@preact/signals";
|
|
11
12
|
import { useState, useEffect, useRef, useMemo, useCallback, useContext } from "preact/hooks";
|
|
12
|
-
import { b as useApiContext, j as useQuery, k as httpPost,
|
|
13
|
-
import { u as useTransferInstrument, m as mapTransferInstrumentToPayoutAccount } from "./mapTransferInstrumentToPayoutAccount-
|
|
14
|
-
import {
|
|
15
|
-
import { E as ExperimentNames } from "./types-
|
|
16
|
-
import { I as InputText, S as SettingNames } from "./InputText-
|
|
17
|
-
import { u as useGlobalDataSlice, a as useGlobalData, b as useResetGlobalData, c as useStateContext
|
|
18
|
-
import {
|
|
19
|
-
import {
|
|
20
|
-
import { g as getRequiredForms, a as addValidityToForms, u as useFormComposer } from "./dropinUtils-
|
|
21
|
-
import {
|
|
22
|
-
import { C as Confirm } from "./
|
|
23
|
-
import { c as currencyByCountry } from "./types-
|
|
24
|
-
import {
|
|
25
|
-
import {
|
|
26
|
-
import {
|
|
27
|
-
import {
|
|
13
|
+
import { b as useApiContext, j as useQuery, k as httpPost, m as httpGet, $ as useMutation, a1 as useQueryClient, P as createLogger, C as CountryCodes, u as useTranslation, c as useLegalEntity, R as ROOT_LE, r as LegalEntityTypes, a as addResourceBundles, L as Loader, M as EntityTypes, _ as __variableDynamicImportRuntimeHelper, a2 as useAnalyticsContext, a3 as Icon, G as Typography, B as Button, aj as objectsDeepEqual, aV as doArraysMatch, W as isEmpty, X as useExperimentsContext, bg as getSdkToken, H as hasOwnEntityAssociationOfType, K as useAccountHolder, o as useSettingsContext, g as getLegalEntityCountry, an as Trans, bh as EEA_Countries, bi as isAccountIdentifierObscured, bj as hasEmptyFields, bk as extractFieldName, bl as concatenateFieldNames, ap as keysOf, aA as getCapabilityProblems, O as TaskTypes, aB as cloneObject, w as skipToken } from "./StoreProvider-D0o_745u.js";
|
|
14
|
+
import { u as useTransferInstrument, m as mapTransferInstrumentToPayoutAccount } from "./mapTransferInstrumentToPayoutAccount-CrO59de3.js";
|
|
15
|
+
import { u as useForm, F as Field, S as Select, L as LoaderWrapper } from "./useForm-BkgSiM1i.js";
|
|
16
|
+
import { E as ExperimentNames } from "./types-Dk94b8kx.js";
|
|
17
|
+
import { I as InputText, S as SettingNames } from "./InputText-DXkZ7fwq.js";
|
|
18
|
+
import { u as useGlobalDataSlice, a as useGlobalData, b as useResetGlobalData, c as useStateContext } from "./useGlobalData-BeYozqdQ.js";
|
|
19
|
+
import { c as useInvalidateRootLegalEntity, a as useToastContext } from "./useToastContext-CbM0O-ZH.js";
|
|
20
|
+
import { a as augmentWithCountryConfigs, g as getPropsFromConfigurations } from "./process-field-configurations-IsZZTbcC.js";
|
|
21
|
+
import { g as getRequiredForms, a as addValidityToForms, u as useFormComposer } from "./dropinUtils-D0iun-Wp.js";
|
|
22
|
+
import { A as AdyenKycSdkError, p as payoutAccountFormat, m as mapExistingFile, g as getPageName, u as useScenarioConfiguration, b as useUnifyLoadingStatus } from "./mapExistingFile-DGRyOBjp.js";
|
|
23
|
+
import { u as useDataset, d as datasetIdentifier, C as Confirm, a as datasetUtilities } from "./useDataset-CLPw5wNd.js";
|
|
24
|
+
import { c as currencyByCountry, C as Currencies } from "./types-BXl6V78E.js";
|
|
25
|
+
import { F as FormWrapper } from "./FormWrapper-CCyMspMC.js";
|
|
26
|
+
import { i as isValidationError, p as processValidationErrors, b as isIdDocumentUploadError, c as isBankStatementUploadError, a as isMaintenanceModeError, m as mapCreateOrUpdateTransferInstrumentErrorMessageToTranslatable } from "./validationError-BVdpr3ww.js";
|
|
27
|
+
import { f as fileToBase64, a as getDocument, c as createDocumentRequest, d as documentApiUtils, b as getFileExtention } from "./documentUtils-Cc83Q1S6.js";
|
|
28
|
+
import { g as getLegalEntityNameBasedOnType, b as getPayoutAccountHolderName } from "./getName-DhbqyTuj.js";
|
|
29
|
+
import { I as IFrameWidget, o as omitObscuredFieldsIfUnchanged } from "./iframeWidget-DhidmNAp.js";
|
|
28
30
|
import { Show } from "@preact/signals/utils";
|
|
29
|
-
import {
|
|
30
|
-
import { a as
|
|
31
|
-
import {
|
|
32
|
-
import { u as
|
|
33
|
-
import { b as useCapabilityProblems, g as getProblemsForEntity, T as TextArea, f as validatePatternOnBlur, r as resolveFieldMetadata, a as useAccountHolder, I as Image, R as RadioGroupCard, C as ContextGuidance } from "./fieldConfigurations-kDKvJ6je.js";
|
|
34
|
-
import { c as createFormRules } from "./form-rules-DhbF2mY4.js";
|
|
35
|
-
import { memo, lazy } from "preact/compat";
|
|
36
|
-
import { u as useUnincorporatedPartnershipMembers } from "./useUnincorporatedPartnershipMembers-pxytkrwW.js";
|
|
31
|
+
import { s as summaryStep } from "./Summary-DfChUS-N.js";
|
|
32
|
+
import { c as createFormUtils, H as Header, E as ErrorPanel, S as StackLayout, e as isNotEmptyValidator, m as mergeFieldMetadataIntoProps, d as getFieldProps, C as CountryField, a as Link, g as getFormProps, s as summaryItem } from "./CountryField-BKLmbhSX.js";
|
|
33
|
+
import { u as useAssociatedLegalEntity } from "./useAssociatedLegalEntity-BXXTCq2H.js";
|
|
34
|
+
import { i as useCapabilityProblems, j as getProblemsForEntity, D as DropzoneFile, p as bytesToSize, l as defaultFileValidationOptions, o as fileValidationRules, S as StateContextSetter, q as DocumentGuidance, t as TextArea, m as makeMask, n as numericInputs, d as nonInputs, s as spacer, k as customInputs, v as validatePatternOnBlur, r as resolveFieldMetadata, M as MaskedInput, b as alphanumericInputs, u as uppercase, c as alphaInputs, I as Image, R as RadioGroupCard, C as ContextGuidance, x as createFormRules } from "./Spacer-BcPESwGJ.js";
|
|
37
35
|
import cx from "classnames";
|
|
36
|
+
import { memo, useRef as useRef$1, useState as useState$1, useMemo as useMemo$1, useEffect as useEffect$1, lazy } from "preact/compat";
|
|
37
|
+
import { u as useUnincorporatedPartnershipMembers } from "./useUnincorporatedPartnershipMembers-BpDu4QKJ.js";
|
|
38
38
|
import { b as bankStatementDescriptionPattern } from "./basePatterns-BwdnMQxI.js";
|
|
39
|
+
import { M as Modal } from "./Modal-qvqrnkl9.js";
|
|
40
|
+
import { E as EndStateLayout } from "./EndStateLayout-Dyji8Wu9.js";
|
|
39
41
|
import { createContext } from "preact";
|
|
40
|
-
import { a as Alert } from "./Alert-
|
|
41
|
-
import { A as ActionBar } from "./
|
|
42
|
+
import { a as Alert } from "./Alert-BjepSgqS.js";
|
|
43
|
+
import { A as ActionBar } from "./ActionBar-_ItKVS6X.js";
|
|
42
44
|
import OpenBankingSDK from "@adyen/openbankingsdk";
|
|
43
|
-
import {
|
|
44
|
-
import {
|
|
45
|
-
import { C as Currencies } from "./currency-BGwQyxBo.js";
|
|
46
|
-
import { L as Link } from "./Link-Bn9pt52z.js";
|
|
45
|
+
import { T as Tag } from "./Tag-DdkVScyr.js";
|
|
46
|
+
import { C as Card } from "./Card-DTRTgvkU.js";
|
|
47
47
|
const getCheck = async (legalEntityId, baseUrl, data) => {
|
|
48
48
|
return httpPost(
|
|
49
49
|
{
|
|
@@ -135,13 +135,21 @@ const useUpdateTransferInstrument = (options) => {
|
|
|
135
135
|
...options
|
|
136
136
|
});
|
|
137
137
|
};
|
|
138
|
-
const accountFormatsImports = /* @__PURE__ */ Object.assign({ "../accountFormats/AD.json": () => import("./AD-
|
|
138
|
+
const accountFormatsImports = /* @__PURE__ */ Object.assign({ "../accountFormats/AD.json": () => import("./AD-BQAadLyG.js"), "../accountFormats/AE.json": () => import("./AE-mIZ12t47.js"), "../accountFormats/AI.json": () => import("./AI-CYOqGKk2.js"), "../accountFormats/AL.json": () => import("./AL-BX1fEo1A.js"), "../accountFormats/AR.json": () => import("./AR-C9kMRnHG.js"), "../accountFormats/AS.json": () => import("./AS-B0TMZQ6o.js"), "../accountFormats/AT.json": () => import("./AT-BI8ju2NH.js"), "../accountFormats/AU.json": () => import("./AU-B5LSe4bo.js"), "../accountFormats/AX.json": () => import("./AX-Z6f6EnJc.js"), "../accountFormats/AZ.json": () => import("./AZ-BqrKjWMH.js"), "../accountFormats/BA.json": () => import("./BA-BbP72Tn6.js"), "../accountFormats/BE.json": () => import("./BE-nWHKW0xQ.js"), "../accountFormats/BG.json": () => import("./BG-HKzabLqZ.js"), "../accountFormats/BH.json": () => import("./BH-Ded1Eyrc.js"), "../accountFormats/BM.json": () => import("./BM-CBl-UQUl.js"), "../accountFormats/BR.json": () => import("./BR-DsY9PZVZ.js"), "../accountFormats/BS.json": () => import("./BS-dBfArxRw.js"), "../accountFormats/BV.json": () => import("./BV-D0QBsH7-.js"), "../accountFormats/BY.json": () => import("./BY-BsQUo3fM.js"), "../accountFormats/CA.json": () => import("./CA-DT4cmOOe.js"), "../accountFormats/CH.json": () => import("./CH-TX4BTE2y.js"), "../accountFormats/CN.json": () => import("./CN-BV-5PSpq.js"), "../accountFormats/CR.json": () => import("./CR-Dtv-rXg9.js"), "../accountFormats/CY.json": () => import("./CY-D59Nypl7.js"), "../accountFormats/CZ.json": () => import("./CZ-B6iI1GbE.js"), "../accountFormats/DE.json": () => import("./DE-CsuX_tSL.js"), "../accountFormats/DK.json": () => import("./DK-oQEFrF6o.js"), "../accountFormats/DO.json": () => import("./DO-B1BWc3Iy.js"), "../accountFormats/EC.json": () => import("./EC-DbNXe71-.js"), "../accountFormats/EE.json": () => import("./EE-3WZV5Ejt.js"), "../accountFormats/ES.json": () => import("./ES-NfxpqbC2.js"), "../accountFormats/FI.json": () => import("./FI-CHQIvHa-.js"), "../accountFormats/FJ.json": () => import("./FJ-CBdbPf5l.js"), "../accountFormats/FO.json": () => import("./FO-1pD1p939.js"), "../accountFormats/FR.json": () => import("./FR-MWZyWX3x.js"), "../accountFormats/GB.json": () => import("./GB-CCYHTagl.js"), "../accountFormats/GE.json": () => import("./GE-Deog1a3Z.js"), "../accountFormats/GF.json": () => import("./GF-Cda8N7A4.js"), "../accountFormats/GG.json": () => import("./GG-CPoMVQPc.js"), "../accountFormats/GI.json": () => import("./GI-DxmBwVD_.js"), "../accountFormats/GL.json": () => import("./GL-0vO9Of9c.js"), "../accountFormats/GP.json": () => import("./GP-za-3opp-.js"), "../accountFormats/GR.json": () => import("./GR-Rk0pXlNw.js"), "../accountFormats/GT.json": () => import("./GT-C1jhs-Dx.js"), "../accountFormats/GU.json": () => import("./GU-CALV5vh1.js"), "../accountFormats/HK.json": () => import("./HK-BB3PIq-Z.js"), "../accountFormats/HR.json": () => import("./HR-WapHW2fw.js"), "../accountFormats/HU.json": () => import("./HU-DCOMuOhe.js"), "../accountFormats/ID.json": () => import("./ID-BcOv4SXj.js"), "../accountFormats/IE.json": () => import("./IE-BkgtVgDi.js"), "../accountFormats/IL.json": () => import("./IL-CQ0yHRRe.js"), "../accountFormats/IM.json": () => import("./IM-Wr4iDT94.js"), "../accountFormats/IN.json": () => import("./IN-BhEI9o7G.js"), "../accountFormats/IS.json": () => import("./IS-C-Cgc6zp.js"), "../accountFormats/IT.json": () => import("./IT-CXekiddL.js"), "../accountFormats/JE.json": () => import("./JE-B4gj54Hg.js"), "../accountFormats/JM.json": () => import("./JM-BMGgBK6y.js"), "../accountFormats/JO.json": () => import("./JO-rY8A8f9C.js"), "../accountFormats/JP.json": () => import("./JP-BQG5dF1Y.js"), "../accountFormats/KR.json": () => import("./KR-74SwXHka.js"), "../accountFormats/KW.json": () => import("./KW-CcVPOJ8B.js"), "../accountFormats/KY.json": () => import("./KY-DXCeltYA.js"), "../accountFormats/KZ.json": () => import("./KZ-CZNjdp22.js"), "../accountFormats/LB.json": () => import("./LB-DZ5YfAsO.js"), "../accountFormats/LI.json": () => import("./LI-L0ZAALRT.js"), "../accountFormats/LT.json": () => import("./LT-Ao2uagV9.js"), "../accountFormats/LU.json": () => import("./LU-B7LRUuc6.js"), "../accountFormats/LV.json": () => import("./LV-DZeGjA2G.js"), "../accountFormats/MC.json": () => import("./MC-EDVNGWhy.js"), "../accountFormats/MD.json": () => import("./MD-DVc0183a.js"), "../accountFormats/ME.json": () => import("./ME-DiJhSuli.js"), "../accountFormats/MK.json": () => import("./MK-BZxslBTS.js"), "../accountFormats/MP.json": () => import("./MP-7IpnbfCj.js"), "../accountFormats/MQ.json": () => import("./MQ-DusG_no1.js"), "../accountFormats/MR.json": () => import("./MR-DaBVNHqN.js"), "../accountFormats/MT.json": () => import("./MT-B9my7RlP.js"), "../accountFormats/MU.json": () => import("./MU-D3gGVu1R.js"), "../accountFormats/MX.json": () => import("./MX-CZVOFg3D.js"), "../accountFormats/MY.json": () => import("./MY-ym71svTa.js"), "../accountFormats/NC.json": () => import("./NC-xzMvjp9-.js"), "../accountFormats/NL.json": () => import("./NL-VXAFOhV5.js"), "../accountFormats/NO.json": () => import("./NO-Cx1VSh2W.js"), "../accountFormats/NZ.json": () => import("./NZ-BP7_Q9Om.js"), "../accountFormats/PE.json": () => import("./PE-CdxgPh3v.js"), "../accountFormats/PF.json": () => import("./PF-CstaOd9Z.js"), "../accountFormats/PH.json": () => import("./PH-BYgMDYIH.js"), "../accountFormats/PK.json": () => import("./PK-bLhtgsEk.js"), "../accountFormats/PL.json": () => import("./PL-BZW1hGvD.js"), "../accountFormats/PM.json": () => import("./PM-BWbxAh4u.js"), "../accountFormats/PR.json": () => import("./PR-CFPKXEXp.js"), "../accountFormats/PS.json": () => import("./PS-B8obOOWY.js"), "../accountFormats/PT.json": () => import("./PT-OpU4MU3L.js"), "../accountFormats/QA.json": () => import("./QA-CSfx-mvb.js"), "../accountFormats/RE.json": () => import("./RE-BApq1FJ6.js"), "../accountFormats/RO.json": () => import("./RO-Cz6Sh0ls.js"), "../accountFormats/RS.json": () => import("./RS-BCenke-W.js"), "../accountFormats/RU.json": () => import("./RU-D27RC7dq.js"), "../accountFormats/SA.json": () => import("./SA-C9VgxCgm.js"), "../accountFormats/SE.json": () => import("./SE-B5K-FkQd.js"), "../accountFormats/SG.json": () => import("./SG-DoCqjlFi.js"), "../accountFormats/SI.json": () => import("./SI-BOGTNLPa.js"), "../accountFormats/SJ.json": () => import("./SJ-Z9jwQQlz.js"), "../accountFormats/SK.json": () => import("./SK-BOVrp_Av.js"), "../accountFormats/SM.json": () => import("./SM-meowwILA.js"), "../accountFormats/TF.json": () => import("./TF-BOWng-Dz.js"), "../accountFormats/TH.json": () => import("./TH-CvyXLcZK.js"), "../accountFormats/TL.json": () => import("./TL-BWslydRz.js"), "../accountFormats/TN.json": () => import("./TN-Cjd3bM_V.js"), "../accountFormats/TR.json": () => import("./TR-BBx5CuWS.js"), "../accountFormats/TT.json": () => import("./TT-D4-z5BA-.js"), "../accountFormats/TW.json": () => import("./TW-BC8YpnMr.js"), "../accountFormats/UA.json": () => import("./UA-DrXUnAe6.js"), "../accountFormats/US.json": () => import("./US-D8dI5_i1.js"), "../accountFormats/UY.json": () => import("./UY-DEHqLXhX.js"), "../accountFormats/VA.json": () => import("./VA-DXsYTCoh.js"), "../accountFormats/VG.json": () => import("./VG-DnKAVCsi.js"), "../accountFormats/VI.json": () => import("./VI-CU9MA9ux.js"), "../accountFormats/VN.json": () => import("./VN-CTSqsmB6.js"), "../accountFormats/WF.json": () => import("./WF-CwHbsjtJ.js"), "../accountFormats/YT.json": () => import("./YT-BCyAAbo7.js"), "../accountFormats/ZA.json": () => import("./ZA-NU7slima.js") });
|
|
139
139
|
const getAccountFormatsForCountry = async (country) => {
|
|
140
140
|
const importForCountry = accountFormatsImports[`../accountFormats/${country}.json`];
|
|
141
141
|
if (!importForCountry) {
|
|
142
142
|
throw Error(`No account formats available for ${country}`);
|
|
143
143
|
}
|
|
144
|
-
|
|
144
|
+
const countryBankFormats = (await importForCountry()).default;
|
|
145
|
+
const expandedBankFormats = {
|
|
146
|
+
...countryBankFormats,
|
|
147
|
+
numberAndBic: {
|
|
148
|
+
bankStatementRequirement: "OPTIONAL",
|
|
149
|
+
fields: ["bankAccountNumber", "swiftCode"]
|
|
150
|
+
}
|
|
151
|
+
};
|
|
152
|
+
return expandedBankFormats;
|
|
145
153
|
};
|
|
146
154
|
const validateAccountIdentification = async (baseUrl, data) => {
|
|
147
155
|
return httpPost(
|
|
@@ -194,12 +202,20 @@ const useAsyncAccountDetailsValidationRules = (payload, hasEmptyFields2, isAccou
|
|
|
194
202
|
return accountValidationData;
|
|
195
203
|
};
|
|
196
204
|
const logger = createLogger();
|
|
197
|
-
const getAccountIdentificationFromPayoutAccountSchema = (payoutAccount, bankCountry) => {
|
|
198
|
-
if ("iban" in payoutAccount && payoutAccount.iban)
|
|
205
|
+
const getAccountIdentificationFromPayoutAccountSchema = (payoutAccount, bankCountry, enabledCrossBorderPayouts) => {
|
|
206
|
+
if ("iban" in payoutAccount && payoutAccount.iban) {
|
|
199
207
|
return {
|
|
200
208
|
type: "iban",
|
|
201
209
|
iban: payoutAccount.iban
|
|
202
210
|
};
|
|
211
|
+
}
|
|
212
|
+
if (enabledCrossBorderPayouts && "bankAccountNumber" in payoutAccount && payoutAccount.bankAccountNumber && "swiftCode" in payoutAccount && payoutAccount.swiftCode) {
|
|
213
|
+
return {
|
|
214
|
+
type: "numberAndBic",
|
|
215
|
+
bic: payoutAccount.swiftCode,
|
|
216
|
+
accountNumber: payoutAccount.bankAccountNumber
|
|
217
|
+
};
|
|
218
|
+
}
|
|
203
219
|
switch (bankCountry) {
|
|
204
220
|
case CountryCodes.Australia:
|
|
205
221
|
return {
|
|
@@ -287,11 +303,13 @@ const getAccountIdentificationFromPayoutAccountSchema = (payoutAccount, bankCoun
|
|
|
287
303
|
};
|
|
288
304
|
}
|
|
289
305
|
};
|
|
290
|
-
const mapPayoutAccountSchemaToApiBankAccount = (payoutAccount, bankCountry) => ({
|
|
306
|
+
const mapPayoutAccountSchemaToApiBankAccount = (payoutAccount, bankCountry, preferredCurrency, enabledCrossBorderPayouts) => ({
|
|
291
307
|
accountIdentification: getAccountIdentificationFromPayoutAccountSchema(
|
|
292
308
|
payoutAccount,
|
|
293
|
-
bankCountry
|
|
309
|
+
bankCountry,
|
|
310
|
+
enabledCrossBorderPayouts
|
|
294
311
|
),
|
|
312
|
+
preferredCurrencyCode: preferredCurrency,
|
|
295
313
|
countryCode: bankCountry,
|
|
296
314
|
bankName: payoutAccount.bankName
|
|
297
315
|
});
|
|
@@ -315,8 +333,8 @@ function PayoutDetailsPage({
|
|
|
315
333
|
]
|
|
316
334
|
);
|
|
317
335
|
const capabilityProblems = useCapabilityProblems();
|
|
318
|
-
addResourceBundles(i18n,
|
|
319
|
-
{ ns: "banking", importFn: () => __variableDynamicImportRuntimeHelper(/* @__PURE__ */ Object.assign({ "../language/da-DK.json": () => import("./da-DK-
|
|
336
|
+
addResourceBundles(i18n, [
|
|
337
|
+
{ ns: "banking", importFn: (lang) => __variableDynamicImportRuntimeHelper(/* @__PURE__ */ Object.assign({ "../language/da-DK.json": () => import("./da-DK-h8DYQ_Iq.js"), "../language/de-DE.json": () => import("./de-DE-LQE_LFFL.js"), "../language/en-US.json": () => import("./en-US-h0JneJJl.js"), "../language/es-ES.json": () => import("./es-ES-DdGmXdxO.js"), "../language/fi-FI.json": () => import("./fi-FI-CIYa9SyS.js"), "../language/fr-FR.json": () => import("./fr-FR-l5z31r7i.js"), "../language/it-IT.json": () => import("./it-IT-BAvmkEF8.js"), "../language/nl-NL.json": () => import("./nl-NL-DV4NqPVW.js"), "../language/no-NO.json": () => import("./no-NO-B9618F4_.js"), "../language/pt-BR.json": () => import("./pt-BR-zuqB_CBf.js"), "../language/pt-PT.json": () => import("./pt-PT-CFY1O_K0.js"), "../language/sl-SI.json": () => import("./sl-SI-59OQIZ3f.js"), "../language/sv-SE.json": () => import("./sv-SE-CQWBP7n1.js") }), `../language/${lang}.json`, 3) }
|
|
320
338
|
]);
|
|
321
339
|
if (!rootLe || associatedLeIsLoading) {
|
|
322
340
|
return /* @__PURE__ */ jsx(Loader, {});
|
|
@@ -354,6 +372,7 @@ function FilePicker({
|
|
|
354
372
|
iconPrefix = "generic-document",
|
|
355
373
|
enableTracking = false,
|
|
356
374
|
id,
|
|
375
|
+
loading,
|
|
357
376
|
// file validation options
|
|
358
377
|
allowedFileTypes,
|
|
359
378
|
maxSize,
|
|
@@ -363,7 +382,7 @@ function FilePicker({
|
|
|
363
382
|
"aria-describedby": ariaDescribedBy,
|
|
364
383
|
"aria-labelledby": ariaLabelledBy
|
|
365
384
|
}) {
|
|
366
|
-
const { t } = useTranslation("
|
|
385
|
+
const { t } = useTranslation("ui");
|
|
367
386
|
const userEvents = useAnalyticsContext();
|
|
368
387
|
const fileInput = useRef(null);
|
|
369
388
|
const [dragged, setDragged] = useState(false);
|
|
@@ -392,7 +411,7 @@ function FilePicker({
|
|
|
392
411
|
setDragged(false);
|
|
393
412
|
};
|
|
394
413
|
const handleFilesChosen = (e) => {
|
|
395
|
-
const fileInput2 = e.
|
|
414
|
+
const fileInput2 = e.currentTarget;
|
|
396
415
|
if (fileInput2.files) addFiles(fileInput2.files);
|
|
397
416
|
};
|
|
398
417
|
const addFiles = (newFiles) => {
|
|
@@ -421,7 +440,8 @@ function FilePicker({
|
|
|
421
440
|
file,
|
|
422
441
|
onDelete: () => handleFileDelete(file),
|
|
423
442
|
errorMessage,
|
|
424
|
-
iconPrefix
|
|
443
|
+
iconPrefix,
|
|
444
|
+
loading
|
|
425
445
|
},
|
|
426
446
|
file
|
|
427
447
|
)),
|
|
@@ -470,13 +490,17 @@ function FilePicker({
|
|
|
470
490
|
] });
|
|
471
491
|
}
|
|
472
492
|
const bankDocument = "adyen-kyc-bank-document";
|
|
473
|
-
const
|
|
474
|
-
|
|
493
|
+
const bankDocumentDocumentUpload = "adyen-kyc-bank-document-document-upload";
|
|
494
|
+
const bankDocumentDocumentDescription = "adyen-kyc-bank-document-document-description";
|
|
495
|
+
const styles$5 = {
|
|
496
|
+
bankDocument,
|
|
497
|
+
bankDocumentDocumentUpload,
|
|
498
|
+
bankDocumentDocumentDescription
|
|
475
499
|
};
|
|
476
|
-
const documentRequirements = "adyen-kyc-document-requirements";
|
|
500
|
+
const documentRequirements$1 = "adyen-kyc-document-requirements";
|
|
477
501
|
const documentRequirementsSubtitle = "adyen-kyc-document-requirements-subtitle";
|
|
478
|
-
const styles$
|
|
479
|
-
documentRequirements,
|
|
502
|
+
const styles$4 = {
|
|
503
|
+
documentRequirements: documentRequirements$1,
|
|
480
504
|
documentRequirementsSubtitle
|
|
481
505
|
};
|
|
482
506
|
const BankDocumentTypes = {
|
|
@@ -560,7 +584,7 @@ const applyNamedModifiers = (country, documentModifiers) => {
|
|
|
560
584
|
switch (documentModifiers.associatedEntityType) {
|
|
561
585
|
case LegalEntityTypes.TRUST:
|
|
562
586
|
return {
|
|
563
|
-
key: accountNameRequirementWithLegalArrangement[LegalEntityTypes.INDIVIDUAL][LegalEntityTypes.TRUST]?.[country] ?? accountNameRequirementWithLegalArrangement[LegalEntityTypes.INDIVIDUAL][LegalEntityTypes.TRUST]
|
|
587
|
+
key: accountNameRequirementWithLegalArrangement[LegalEntityTypes.INDIVIDUAL][LegalEntityTypes.TRUST]?.[country] ?? accountNameRequirementWithLegalArrangement[LegalEntityTypes.INDIVIDUAL][LegalEntityTypes.TRUST].default,
|
|
564
588
|
options: {
|
|
565
589
|
values: {
|
|
566
590
|
trusteeName: documentModifiers.rootEntityLegalName,
|
|
@@ -571,7 +595,7 @@ const applyNamedModifiers = (country, documentModifiers) => {
|
|
|
571
595
|
};
|
|
572
596
|
case LegalEntityTypes.UNINCORPORATED_PARTNERSHIP:
|
|
573
597
|
return {
|
|
574
|
-
key: accountNameRequirementWithLegalArrangement[LegalEntityTypes.INDIVIDUAL][LegalEntityTypes.UNINCORPORATED_PARTNERSHIP]?.[country] ?? accountNameRequirementWithLegalArrangement[LegalEntityTypes.INDIVIDUAL][LegalEntityTypes.UNINCORPORATED_PARTNERSHIP]
|
|
598
|
+
key: accountNameRequirementWithLegalArrangement[LegalEntityTypes.INDIVIDUAL][LegalEntityTypes.UNINCORPORATED_PARTNERSHIP]?.[country] ?? accountNameRequirementWithLegalArrangement[LegalEntityTypes.INDIVIDUAL][LegalEntityTypes.UNINCORPORATED_PARTNERSHIP].default,
|
|
575
599
|
options: {
|
|
576
600
|
values: {
|
|
577
601
|
partnerNames: documentModifiers.unincorporatedPartnershipMembers || "",
|
|
@@ -582,7 +606,7 @@ const applyNamedModifiers = (country, documentModifiers) => {
|
|
|
582
606
|
case LegalEntityTypes.SOLE_PROPRIETORSHIP:
|
|
583
607
|
default:
|
|
584
608
|
return {
|
|
585
|
-
key: accountNameRequirementWithLegalArrangement[LegalEntityTypes.INDIVIDUAL][LegalEntityTypes.SOLE_PROPRIETORSHIP]
|
|
609
|
+
key: accountNameRequirementWithLegalArrangement[LegalEntityTypes.INDIVIDUAL][LegalEntityTypes.SOLE_PROPRIETORSHIP].default,
|
|
586
610
|
options: {
|
|
587
611
|
values: {
|
|
588
612
|
individualLegalName: documentModifiers.rootEntityLegalName,
|
|
@@ -596,7 +620,7 @@ const applyNamedModifiers = (country, documentModifiers) => {
|
|
|
596
620
|
switch (documentModifiers.associatedEntityType) {
|
|
597
621
|
case LegalEntityTypes.TRUST:
|
|
598
622
|
return {
|
|
599
|
-
key: accountNameRequirementWithLegalArrangement[LegalEntityTypes.ORGANIZATION][LegalEntityTypes.TRUST]?.[country] ?? accountNameRequirementWithLegalArrangement[LegalEntityTypes.ORGANIZATION][LegalEntityTypes.TRUST]
|
|
623
|
+
key: accountNameRequirementWithLegalArrangement[LegalEntityTypes.ORGANIZATION][LegalEntityTypes.TRUST]?.[country] ?? accountNameRequirementWithLegalArrangement[LegalEntityTypes.ORGANIZATION][LegalEntityTypes.TRUST].default,
|
|
600
624
|
options: {
|
|
601
625
|
values: {
|
|
602
626
|
trusteeName: documentModifiers.rootEntityLegalName,
|
|
@@ -607,7 +631,7 @@ const applyNamedModifiers = (country, documentModifiers) => {
|
|
|
607
631
|
};
|
|
608
632
|
case LegalEntityTypes.UNINCORPORATED_PARTNERSHIP:
|
|
609
633
|
return {
|
|
610
|
-
key: accountNameRequirementWithLegalArrangement[LegalEntityTypes.ORGANIZATION][LegalEntityTypes.UNINCORPORATED_PARTNERSHIP]?.[country] ?? accountNameRequirementWithLegalArrangement[LegalEntityTypes.ORGANIZATION][LegalEntityTypes.UNINCORPORATED_PARTNERSHIP]
|
|
634
|
+
key: accountNameRequirementWithLegalArrangement[LegalEntityTypes.ORGANIZATION][LegalEntityTypes.UNINCORPORATED_PARTNERSHIP]?.[country] ?? accountNameRequirementWithLegalArrangement[LegalEntityTypes.ORGANIZATION][LegalEntityTypes.UNINCORPORATED_PARTNERSHIP].default,
|
|
611
635
|
options: {
|
|
612
636
|
values: {
|
|
613
637
|
partnerNames: documentModifiers.unincorporatedPartnershipMembers || "",
|
|
@@ -653,25 +677,40 @@ const BankDocumentRequirements = ({
|
|
|
653
677
|
documentType,
|
|
654
678
|
documentModifiers
|
|
655
679
|
}) => {
|
|
656
|
-
const {
|
|
680
|
+
const { t } = useTranslation("banking");
|
|
681
|
+
const { t: commonT } = useTranslation("common");
|
|
657
682
|
const documentRequirements2 = getBankDocumentRequirements(
|
|
658
683
|
country,
|
|
659
684
|
documentType,
|
|
660
685
|
documentModifiers
|
|
661
686
|
);
|
|
662
|
-
return /* @__PURE__ */ jsxs("div", { className: styles$
|
|
663
|
-
/* @__PURE__ */ jsx("strong", { className: styles$
|
|
664
|
-
/* @__PURE__ */ jsx("ul", { children: documentRequirements2.map(({ key, options }, i) => /* @__PURE__ */ jsx("li", { "data-testid": key, children:
|
|
687
|
+
return /* @__PURE__ */ jsxs("div", { className: styles$4.documentRequirements, children: [
|
|
688
|
+
/* @__PURE__ */ jsx("strong", { className: styles$4.documentRequirementsSubtitle, children: commonT(($) => $["documentRequirements"]) }),
|
|
689
|
+
/* @__PURE__ */ jsx("ul", { children: documentRequirements2.map(({ key, options }, i) => /* @__PURE__ */ jsx("li", { "data-testid": key, children: t(($) => $[key], options?.values) }, i)) })
|
|
665
690
|
] });
|
|
666
691
|
};
|
|
667
692
|
const bankDocumentValidationRules = {
|
|
668
693
|
description: {
|
|
669
694
|
modes: ["blur"],
|
|
670
|
-
validate: (
|
|
695
|
+
validate: (description2) => description2 ? bankStatementDescriptionPattern.test(description2) : true,
|
|
671
696
|
errorMessage: "invalidFormatBankStatementDescription"
|
|
672
697
|
}
|
|
673
698
|
};
|
|
674
|
-
const
|
|
699
|
+
const getValidationIssuesKeys = (validationResponse) => {
|
|
700
|
+
const issues2 = [];
|
|
701
|
+
const { blurryOrLowQuality, documentType } = validationResponse;
|
|
702
|
+
if (blurryOrLowQuality) {
|
|
703
|
+
issues2.push("documentIsntReadable");
|
|
704
|
+
}
|
|
705
|
+
if (documentType === "other" || documentType !== "bankDocument") {
|
|
706
|
+
issues2.push("documentIsNotBankDocument");
|
|
707
|
+
}
|
|
708
|
+
if (!documentType || documentType === "other") {
|
|
709
|
+
issues2.push("documentNameMissing");
|
|
710
|
+
}
|
|
711
|
+
return issues2;
|
|
712
|
+
};
|
|
713
|
+
const CHARACTERS_LIMIT$1 = 200;
|
|
675
714
|
const bankDocumentFields = [
|
|
676
715
|
"documentType",
|
|
677
716
|
"bankStatementDocument",
|
|
@@ -686,16 +725,17 @@ function BankDocument(props) {
|
|
|
686
725
|
validators,
|
|
687
726
|
data: bankData,
|
|
688
727
|
id,
|
|
689
|
-
description,
|
|
728
|
+
description: description2,
|
|
690
729
|
heading,
|
|
691
730
|
formIsActive,
|
|
692
731
|
fieldValidationErrors,
|
|
693
732
|
shouldValidate
|
|
694
733
|
} = props;
|
|
695
|
-
const { t } = useTranslation("
|
|
734
|
+
const { t } = useTranslation("banking");
|
|
735
|
+
const { t: commonT } = useTranslation("common");
|
|
696
736
|
const stateRef = useRef({ setState: null });
|
|
697
737
|
const isBankStatementOptional = optionalFields?.includes("bankStatementDocument") ?? false;
|
|
698
|
-
const formUtils = createFormUtils(props,
|
|
738
|
+
const formUtils = createFormUtils(props, commonT);
|
|
699
739
|
const bankStatementValidationOptions = useMemo(
|
|
700
740
|
() => ({
|
|
701
741
|
...defaultFileValidationOptions,
|
|
@@ -768,9 +808,9 @@ function BankDocument(props) {
|
|
|
768
808
|
}),
|
|
769
809
|
[legalEntity, associatedLegalArrangement, unincorporatedPartnershipMembers]
|
|
770
810
|
);
|
|
771
|
-
return /* @__PURE__ */ jsxs("form", { className: styles$
|
|
811
|
+
return /* @__PURE__ */ jsxs("form", { className: styles$5.bankDocument, children: [
|
|
772
812
|
/* @__PURE__ */ jsx(StateContextSetter, { owner: id, stateRef }),
|
|
773
|
-
/* @__PURE__ */ jsx(
|
|
813
|
+
heading && /* @__PURE__ */ jsx(Header, { title: heading, description: description2 }),
|
|
774
814
|
/* @__PURE__ */ jsx(
|
|
775
815
|
ErrorPanel,
|
|
776
816
|
{
|
|
@@ -793,7 +833,7 @@ function BankDocument(props) {
|
|
|
793
833
|
...childProps,
|
|
794
834
|
onChange: handleChangeFor("documentType"),
|
|
795
835
|
name: "documentType",
|
|
796
|
-
placeholder:
|
|
836
|
+
placeholder: commonT(($) => $["selectDocument"]),
|
|
797
837
|
isInvalid: false,
|
|
798
838
|
items: getBankDocumentOptions(),
|
|
799
839
|
selected: data.documentType
|
|
@@ -815,7 +855,7 @@ function BankDocument(props) {
|
|
|
815
855
|
data.documentType || usingExistingUploadedDocuments ? /* @__PURE__ */ jsx(
|
|
816
856
|
Field,
|
|
817
857
|
{
|
|
818
|
-
className: "adyen-kyc-
|
|
858
|
+
className: cx(styles$5.bankDocumentDocumentUpload, "adyen-kyc-upload-field"),
|
|
819
859
|
name: "bankStatementDocument",
|
|
820
860
|
isValid: valid.bankStatementDocument,
|
|
821
861
|
children: (childProps) => /* @__PURE__ */ jsx(
|
|
@@ -836,7 +876,7 @@ function BankDocument(props) {
|
|
|
836
876
|
data.documentType || usingExistingUploadedDocuments ? /* @__PURE__ */ jsx(
|
|
837
877
|
Field,
|
|
838
878
|
{
|
|
839
|
-
className:
|
|
879
|
+
className: cx(styles$5.bankDocumentDocumentDescription),
|
|
840
880
|
name: "description",
|
|
841
881
|
label: formUtils.getLabel("bankDocumentFileDescription"),
|
|
842
882
|
errorMessage: formUtils.getErrorMessage("description", errors, fieldProblems),
|
|
@@ -847,7 +887,7 @@ function BankDocument(props) {
|
|
|
847
887
|
...childProps,
|
|
848
888
|
name: "description",
|
|
849
889
|
value: data.description,
|
|
850
|
-
maxLength: CHARACTERS_LIMIT,
|
|
890
|
+
maxLength: CHARACTERS_LIMIT$1,
|
|
851
891
|
onInput: handleChangeFor("description"),
|
|
852
892
|
"aria-invalid": !valid.description
|
|
853
893
|
}
|
|
@@ -860,6 +900,456 @@ const MemoizedBankDocument = memo(
|
|
|
860
900
|
BankDocument,
|
|
861
901
|
(prevProps, nextProps) => objectsDeepEqual(prevProps.requiredFields, nextProps.requiredFields) && objectsDeepEqual(prevProps.optionalFields, nextProps.optionalFields) && objectsDeepEqual(prevProps.data, nextProps.data) && objectsDeepEqual(prevProps.formVerificationErrors, nextProps.formVerificationErrors) && objectsDeepEqual(prevProps.fieldValidationErrors, nextProps.fieldValidationErrors) && prevProps.country === nextProps.country && prevProps.shouldValidate === nextProps.shouldValidate && prevProps.heading === nextProps.heading && prevProps.formIsActive === nextProps.formIsActive
|
|
862
902
|
);
|
|
903
|
+
const validateDocument = async (context, document2) => {
|
|
904
|
+
const { baseUrl, rootLegalEntityId } = context;
|
|
905
|
+
return httpPost(
|
|
906
|
+
{
|
|
907
|
+
baseUrl,
|
|
908
|
+
path: `legalEntities/${rootLegalEntityId}/genai/classify`
|
|
909
|
+
},
|
|
910
|
+
document2
|
|
911
|
+
);
|
|
912
|
+
};
|
|
913
|
+
const useValidateDocument = (options) => {
|
|
914
|
+
const { rootLegalEntityId, baseUrl } = useApiContext();
|
|
915
|
+
return useMutation({
|
|
916
|
+
mutationFn: (payload) => validateDocument(
|
|
917
|
+
{ rootLegalEntityId: rootLegalEntityId.value, baseUrl: baseUrl.value },
|
|
918
|
+
payload
|
|
919
|
+
),
|
|
920
|
+
retry: 0,
|
|
921
|
+
...options
|
|
922
|
+
});
|
|
923
|
+
};
|
|
924
|
+
const bankDocumentClassification = "adyen-kyc-bank-document-classification";
|
|
925
|
+
const requirementsList = "adyen-kyc-requirements-list";
|
|
926
|
+
const filePickerDisabled = "adyen-kyc-file-picker-disabled";
|
|
927
|
+
const reviewModal = "adyen-kyc-review-modal";
|
|
928
|
+
const preview = "adyen-kyc-preview";
|
|
929
|
+
const previewImage = "adyen-kyc-preview-image";
|
|
930
|
+
const content = "adyen-kyc-content";
|
|
931
|
+
const actions = "adyen-kyc-actions";
|
|
932
|
+
const title$1 = "adyen-kyc-title";
|
|
933
|
+
const description = "adyen-kyc-description";
|
|
934
|
+
const issues = "adyen-kyc-issues";
|
|
935
|
+
const confirmationModal = "adyen-kyc-confirmation-modal";
|
|
936
|
+
const styles$3 = {
|
|
937
|
+
bankDocumentClassification,
|
|
938
|
+
requirementsList,
|
|
939
|
+
filePickerDisabled,
|
|
940
|
+
reviewModal,
|
|
941
|
+
preview,
|
|
942
|
+
previewImage,
|
|
943
|
+
content,
|
|
944
|
+
actions,
|
|
945
|
+
title: title$1,
|
|
946
|
+
description,
|
|
947
|
+
issues,
|
|
948
|
+
confirmationModal
|
|
949
|
+
};
|
|
950
|
+
function RequirementsSection({ titleKey, requirementKeys }) {
|
|
951
|
+
const { t } = useTranslation("banking");
|
|
952
|
+
return /* @__PURE__ */ jsxs("div", { children: [
|
|
953
|
+
/* @__PURE__ */ jsx(Typography, { variant: "body-stronger", el: "h4", className: "adyen-kyc-u-margin-bottom-8", children: t(($) => $[titleKey]) }),
|
|
954
|
+
/* @__PURE__ */ jsx("ul", { children: requirementKeys.map((key) => /* @__PURE__ */ jsx("li", { children: t(($) => $[key]) }, key)) })
|
|
955
|
+
] });
|
|
956
|
+
}
|
|
957
|
+
const commonRequirementsKeys = [
|
|
958
|
+
"bankAccountInYourName",
|
|
959
|
+
"includesFullOrPartialAccountNumber",
|
|
960
|
+
"includesBankLogoOrName"
|
|
961
|
+
];
|
|
962
|
+
const documentRequirements = [
|
|
963
|
+
{
|
|
964
|
+
titleKey: "bankStatements",
|
|
965
|
+
additionalKeys: ["datedInLast12Months"]
|
|
966
|
+
},
|
|
967
|
+
{
|
|
968
|
+
titleKey: "depositSlips"
|
|
969
|
+
},
|
|
970
|
+
{
|
|
971
|
+
titleKey: "onlineBankingScreenshots"
|
|
972
|
+
},
|
|
973
|
+
{
|
|
974
|
+
titleKey: "lettersFromBank",
|
|
975
|
+
additionalKeys: ["datedInLast12Months"]
|
|
976
|
+
},
|
|
977
|
+
{
|
|
978
|
+
titleKey: "checks",
|
|
979
|
+
additionalKeys: ["highResolutionImageFullCheck"]
|
|
980
|
+
}
|
|
981
|
+
];
|
|
982
|
+
function BankDocumentRequirementsModal({
|
|
983
|
+
isOpen,
|
|
984
|
+
onClose
|
|
985
|
+
}) {
|
|
986
|
+
const { t } = useTranslation("banking");
|
|
987
|
+
if (!isOpen) return null;
|
|
988
|
+
return /* @__PURE__ */ jsx(Modal, { ariaLabel: t(($) => $["moreAboutBankDocuments"]), onClose, size: "medium", inset: true, children: /* @__PURE__ */ jsxs(StackLayout, { gap: "large", children: [
|
|
989
|
+
/* @__PURE__ */ jsx(Typography, { variant: "title-l", el: "h1", children: t(($) => $["moreAboutBankDocuments"]) }),
|
|
990
|
+
/* @__PURE__ */ jsxs("div", { children: [
|
|
991
|
+
/* @__PURE__ */ jsx(Typography, { variant: "body-stronger", el: "h3", className: "adyen-kyc-u-margin-bottom-8", children: t(($) => $["whyDoIHaveToUploadBankDocument"]) }),
|
|
992
|
+
/* @__PURE__ */ jsx(Typography, { variant: "body", children: t(($) => $["bankDocumentFraudPrevention"]) })
|
|
993
|
+
] }),
|
|
994
|
+
/* @__PURE__ */ jsxs("div", { children: [
|
|
995
|
+
/* @__PURE__ */ jsx(Typography, { variant: "body-stronger", el: "h3", className: "adyen-kyc-u-margin-bottom-8", children: t(($) => $["whatAreDocumentRequirements"]) }),
|
|
996
|
+
/* @__PURE__ */ jsx(Typography, { variant: "body", children: t(($) => $["bankDocumentRequirementsIntro"]) })
|
|
997
|
+
] }),
|
|
998
|
+
documentRequirements.map(({ titleKey, additionalKeys }) => /* @__PURE__ */ jsx(
|
|
999
|
+
RequirementsSection,
|
|
1000
|
+
{
|
|
1001
|
+
titleKey,
|
|
1002
|
+
requirementKeys: commonRequirementsKeys.concat(additionalKeys || [])
|
|
1003
|
+
},
|
|
1004
|
+
titleKey
|
|
1005
|
+
))
|
|
1006
|
+
] }) });
|
|
1007
|
+
}
|
|
1008
|
+
const CHARACTERS_LIMIT = 200;
|
|
1009
|
+
const bankDocumentClassificationFields = [
|
|
1010
|
+
"bankStatementDocument",
|
|
1011
|
+
"description"
|
|
1012
|
+
];
|
|
1013
|
+
function BankDocumentClassification(props) {
|
|
1014
|
+
const {
|
|
1015
|
+
legalEntity,
|
|
1016
|
+
optionalFields,
|
|
1017
|
+
validators,
|
|
1018
|
+
data: bankData,
|
|
1019
|
+
id,
|
|
1020
|
+
formIsActive,
|
|
1021
|
+
fieldValidationErrors,
|
|
1022
|
+
formVerificationErrors,
|
|
1023
|
+
shouldValidate
|
|
1024
|
+
} = props;
|
|
1025
|
+
const { t } = useTranslation("banking");
|
|
1026
|
+
const { t: commonT } = useTranslation("common");
|
|
1027
|
+
const stateRef = useRef$1({ setState: null });
|
|
1028
|
+
const [showReviewModal, setShowReviewModal] = useState$1(false);
|
|
1029
|
+
const [showConfirmationModal, setShowConfirmationModal] = useState$1(false);
|
|
1030
|
+
const [showRequirementsModal, setShowRequirementsModal] = useState$1(false);
|
|
1031
|
+
const [validationResponse, setValidationResponse] = useState$1(
|
|
1032
|
+
null
|
|
1033
|
+
);
|
|
1034
|
+
const [showEndState, setShowEndState] = useState$1(false);
|
|
1035
|
+
const inputRef = useRef$1(null);
|
|
1036
|
+
const logger2 = createLogger();
|
|
1037
|
+
const userEvents = useAnalyticsContext();
|
|
1038
|
+
const isBankStatementOptional = optionalFields?.includes("bankStatementDocument") ?? false;
|
|
1039
|
+
const formUtils = createFormUtils(props, commonT);
|
|
1040
|
+
const bankStatementValidationOptions = useMemo$1(
|
|
1041
|
+
() => ({
|
|
1042
|
+
...defaultFileValidationOptions,
|
|
1043
|
+
isOptional: isBankStatementOptional
|
|
1044
|
+
}),
|
|
1045
|
+
[isBankStatementOptional]
|
|
1046
|
+
);
|
|
1047
|
+
const rules2 = useMemo$1(
|
|
1048
|
+
() => ({
|
|
1049
|
+
...validators || bankDocumentValidationRules,
|
|
1050
|
+
bankStatementDocument: fileValidationRules(bankStatementValidationOptions)
|
|
1051
|
+
}),
|
|
1052
|
+
[bankStatementValidationOptions, validators]
|
|
1053
|
+
);
|
|
1054
|
+
const { handleChangeFor, data, setData, valid, fieldProblems, errors, triggerValidation } = useForm({
|
|
1055
|
+
...props,
|
|
1056
|
+
schema: bankDocumentClassificationFields,
|
|
1057
|
+
defaultData: bankData,
|
|
1058
|
+
rules: rules2,
|
|
1059
|
+
fieldProblems: fieldValidationErrors,
|
|
1060
|
+
shouldValidate
|
|
1061
|
+
});
|
|
1062
|
+
const validateDocumentMutation = useValidateDocument({
|
|
1063
|
+
onSuccess: (response) => {
|
|
1064
|
+
setValidationResponse(response);
|
|
1065
|
+
if (response?.blurryOrLowQuality || response?.documentType === "other" || response?.documentType !== "bankDocument") {
|
|
1066
|
+
userEvents.addEvent("Opened modal", {
|
|
1067
|
+
actionType: "open",
|
|
1068
|
+
actionLevel: "journey",
|
|
1069
|
+
label: "bankDocumentClassification"
|
|
1070
|
+
});
|
|
1071
|
+
setShowReviewModal(true);
|
|
1072
|
+
} else {
|
|
1073
|
+
setShowEndState(true);
|
|
1074
|
+
userEvents.addEvent("Success", {
|
|
1075
|
+
actionType: "upload",
|
|
1076
|
+
actionLevel: "journey",
|
|
1077
|
+
label: "bankDocumentClassification"
|
|
1078
|
+
});
|
|
1079
|
+
setTimeout(() => {
|
|
1080
|
+
setShowEndState(false);
|
|
1081
|
+
setShowReviewModal(false);
|
|
1082
|
+
}, 2e3);
|
|
1083
|
+
}
|
|
1084
|
+
},
|
|
1085
|
+
onError: (error) => {
|
|
1086
|
+
userEvents.addEvent("Encountered error", {
|
|
1087
|
+
actionType: "upload",
|
|
1088
|
+
actionLevel: "journey",
|
|
1089
|
+
label: "bankDocumentClassification"
|
|
1090
|
+
});
|
|
1091
|
+
logger2.error("Document validation failed:", error);
|
|
1092
|
+
setShowReviewModal(false);
|
|
1093
|
+
setValidationResponse(null);
|
|
1094
|
+
}
|
|
1095
|
+
});
|
|
1096
|
+
const handleDocumentUpload = async (files) => {
|
|
1097
|
+
setData("bankStatementDocument", files);
|
|
1098
|
+
triggerValidation();
|
|
1099
|
+
if (files.length > 0) {
|
|
1100
|
+
const file = files[0];
|
|
1101
|
+
if (file && file instanceof File) {
|
|
1102
|
+
try {
|
|
1103
|
+
const base64Content = await fileToBase64(file);
|
|
1104
|
+
const document2 = {
|
|
1105
|
+
documentType: "bankStatement",
|
|
1106
|
+
fileName: file.name,
|
|
1107
|
+
sessionId: legalEntity.id,
|
|
1108
|
+
attachments: [
|
|
1109
|
+
{
|
|
1110
|
+
content: base64Content,
|
|
1111
|
+
pageName: file.name
|
|
1112
|
+
}
|
|
1113
|
+
]
|
|
1114
|
+
};
|
|
1115
|
+
validateDocumentMutation.mutate(document2);
|
|
1116
|
+
} catch (error) {
|
|
1117
|
+
logger2.error("Error processing document:", error);
|
|
1118
|
+
}
|
|
1119
|
+
}
|
|
1120
|
+
}
|
|
1121
|
+
};
|
|
1122
|
+
useEffect$1(() => {
|
|
1123
|
+
if (formIsActive && isBankStatementOptional) {
|
|
1124
|
+
triggerValidation();
|
|
1125
|
+
}
|
|
1126
|
+
}, [formIsActive, isBankStatementOptional, triggerValidation]);
|
|
1127
|
+
const alreadyUploadedDocuments = useMemo$1(
|
|
1128
|
+
() => bankData?.bankStatementDocument ?? [],
|
|
1129
|
+
[bankData?.bankStatementDocument]
|
|
1130
|
+
);
|
|
1131
|
+
useEffect$1(() => {
|
|
1132
|
+
if (alreadyUploadedDocuments.length > 0) {
|
|
1133
|
+
setData("bankStatementDocument", alreadyUploadedDocuments);
|
|
1134
|
+
if (bankData?.description) setData("description", bankData.description);
|
|
1135
|
+
triggerValidation();
|
|
1136
|
+
}
|
|
1137
|
+
}, [alreadyUploadedDocuments, bankData?.description, setData, triggerValidation]);
|
|
1138
|
+
useEffect$1(() => {
|
|
1139
|
+
stateRef.current?.setState?.({
|
|
1140
|
+
type: "addToState",
|
|
1141
|
+
value: {
|
|
1142
|
+
data,
|
|
1143
|
+
valid,
|
|
1144
|
+
errors,
|
|
1145
|
+
fieldProblems,
|
|
1146
|
+
dataStoreId: id,
|
|
1147
|
+
schema: bankDocumentClassificationFields
|
|
1148
|
+
}
|
|
1149
|
+
});
|
|
1150
|
+
}, [data, valid, errors, fieldProblems, id]);
|
|
1151
|
+
const documentsModifiers = useMemo$1(
|
|
1152
|
+
() => ({
|
|
1153
|
+
rootEntityType: legalEntity.type,
|
|
1154
|
+
rootEntityLegalName: getLegalEntityNameBasedOnType(legalEntity)
|
|
1155
|
+
}),
|
|
1156
|
+
[legalEntity]
|
|
1157
|
+
);
|
|
1158
|
+
const handleUploadNewDocument = () => {
|
|
1159
|
+
userEvents.addEvent("Clicked button", {
|
|
1160
|
+
actionType: "next",
|
|
1161
|
+
actionLevel: "journey",
|
|
1162
|
+
label: "bankDocumentClassificationUploadNewDocument"
|
|
1163
|
+
});
|
|
1164
|
+
inputRef.current?.click();
|
|
1165
|
+
};
|
|
1166
|
+
const handleContinueAnyway = () => {
|
|
1167
|
+
setShowConfirmationModal(true);
|
|
1168
|
+
};
|
|
1169
|
+
const handleConfirmationCancel = () => {
|
|
1170
|
+
setShowConfirmationModal(false);
|
|
1171
|
+
};
|
|
1172
|
+
const handleUseDocument = () => {
|
|
1173
|
+
setShowConfirmationModal(false);
|
|
1174
|
+
setShowReviewModal(false);
|
|
1175
|
+
userEvents.addEvent("Clicked button", {
|
|
1176
|
+
actionType: "next",
|
|
1177
|
+
actionLevel: "journey",
|
|
1178
|
+
label: "bankDocumentClassificationContinueAnyway"
|
|
1179
|
+
});
|
|
1180
|
+
};
|
|
1181
|
+
const documentPreview = useMemo$1(() => {
|
|
1182
|
+
if (!data.bankStatementDocument?.[0] || !showReviewModal) return null;
|
|
1183
|
+
const file = data.bankStatementDocument?.[0];
|
|
1184
|
+
return file.type === "application/pdf" || file.name.toLowerCase().endsWith(".pdf") ? /* @__PURE__ */ jsx(
|
|
1185
|
+
"object",
|
|
1186
|
+
{
|
|
1187
|
+
width: "100%",
|
|
1188
|
+
height: "100%",
|
|
1189
|
+
data: URL.createObjectURL(file),
|
|
1190
|
+
type: "application/pdf",
|
|
1191
|
+
"aria-label": t(($) => $["reviewDocument"]),
|
|
1192
|
+
"data-testid": "pdf-preview"
|
|
1193
|
+
}
|
|
1194
|
+
) : /* @__PURE__ */ jsx("img", { src: URL.createObjectURL(file), alt: t(($) => $["reviewDocument"]) });
|
|
1195
|
+
}, [data?.bankStatementDocument, showReviewModal, t]);
|
|
1196
|
+
return /* @__PURE__ */ jsxs("div", { className: styles$3.bankDocumentPage, children: [
|
|
1197
|
+
/* @__PURE__ */ jsxs("form", { className: styles$3.bankDocumentClassification, children: [
|
|
1198
|
+
/* @__PURE__ */ jsx(StateContextSetter, { owner: id, stateRef }),
|
|
1199
|
+
/* @__PURE__ */ jsx(
|
|
1200
|
+
Header,
|
|
1201
|
+
{
|
|
1202
|
+
title: t(
|
|
1203
|
+
($) => $[isBankStatementOptional ? "uploadABankDocumentOptional" : "uploadABankDocument"]
|
|
1204
|
+
),
|
|
1205
|
+
description: t(($) => $["toVerifyYourBankAccountDetails"]),
|
|
1206
|
+
children: /* @__PURE__ */ jsx(Button, { slot: "actions", variant: "link", onClick: () => setShowRequirementsModal(true), children: commonT(($) => $["learnMore"]) })
|
|
1207
|
+
}
|
|
1208
|
+
),
|
|
1209
|
+
/* @__PURE__ */ jsx(
|
|
1210
|
+
ErrorPanel,
|
|
1211
|
+
{
|
|
1212
|
+
verificationErrors: formVerificationErrors,
|
|
1213
|
+
validationErrors: fieldValidationErrors,
|
|
1214
|
+
formUtils,
|
|
1215
|
+
id: "ariaErrorField"
|
|
1216
|
+
}
|
|
1217
|
+
),
|
|
1218
|
+
/* @__PURE__ */ jsxs("div", { children: [
|
|
1219
|
+
/* @__PURE__ */ jsx("h3", { className: styles$3.requirementsList, children: t(($) => $["documentRequirements"]) }),
|
|
1220
|
+
/* @__PURE__ */ jsxs("ul", { className: styles$3.requirementsList, children: [
|
|
1221
|
+
/* @__PURE__ */ jsx("li", { children: t(($) => $["documentRequirementNameOrBusiness"], {
|
|
1222
|
+
businessName: documentsModifiers.rootEntityLegalName
|
|
1223
|
+
}) }),
|
|
1224
|
+
/* @__PURE__ */ jsx("li", { children: t(($) => $["documentRequirementAccountNumber"]) }),
|
|
1225
|
+
/* @__PURE__ */ jsx("li", { children: t(($) => $["documentRequirementBankInfo"]) })
|
|
1226
|
+
] })
|
|
1227
|
+
] }),
|
|
1228
|
+
/* @__PURE__ */ jsx(
|
|
1229
|
+
Field,
|
|
1230
|
+
{
|
|
1231
|
+
className: cx("adyen-kyc-upload-field"),
|
|
1232
|
+
name: "bankStatementDocument",
|
|
1233
|
+
isValid: valid.bankStatementDocument,
|
|
1234
|
+
children: (childProps) => /* @__PURE__ */ jsx("div", { className: validateDocumentMutation.isPending ? styles$3.filePickerDisabled : "", children: /* @__PURE__ */ jsx(
|
|
1235
|
+
FilePicker,
|
|
1236
|
+
{
|
|
1237
|
+
...childProps,
|
|
1238
|
+
name: "bankStatementDocument",
|
|
1239
|
+
files: data.bankStatementDocument ?? [],
|
|
1240
|
+
setFiles: handleDocumentUpload,
|
|
1241
|
+
isValid: valid.bankStatementDocument ?? isBankStatementOptional,
|
|
1242
|
+
errorMessage: errors.bankStatementDocument?.errorMessage,
|
|
1243
|
+
loading: validateDocumentMutation.isPending,
|
|
1244
|
+
...bankStatementValidationOptions
|
|
1245
|
+
}
|
|
1246
|
+
) })
|
|
1247
|
+
}
|
|
1248
|
+
),
|
|
1249
|
+
data.bankStatementDocument?.length ? /* @__PURE__ */ jsx(
|
|
1250
|
+
Field,
|
|
1251
|
+
{
|
|
1252
|
+
className: "adyen-kyc-document-description",
|
|
1253
|
+
name: "description",
|
|
1254
|
+
label: formUtils.getLabel("bankDocumentFileDescription"),
|
|
1255
|
+
errorMessage: formUtils.getErrorMessage("description", errors, fieldProblems),
|
|
1256
|
+
isValid: valid.description,
|
|
1257
|
+
children: (childProps) => /* @__PURE__ */ jsx(
|
|
1258
|
+
TextArea,
|
|
1259
|
+
{
|
|
1260
|
+
...childProps,
|
|
1261
|
+
name: "description",
|
|
1262
|
+
value: data.description,
|
|
1263
|
+
maxLength: CHARACTERS_LIMIT,
|
|
1264
|
+
onInput: handleChangeFor("description"),
|
|
1265
|
+
"aria-invalid": !valid.description
|
|
1266
|
+
}
|
|
1267
|
+
)
|
|
1268
|
+
}
|
|
1269
|
+
) : void 0
|
|
1270
|
+
] }),
|
|
1271
|
+
showReviewModal && /* @__PURE__ */ jsx(
|
|
1272
|
+
Modal,
|
|
1273
|
+
{
|
|
1274
|
+
ariaLabel: t(($) => $["reviewDocument"]),
|
|
1275
|
+
size: showEndState ? "small" : "medium",
|
|
1276
|
+
inset: showEndState,
|
|
1277
|
+
showCloseButton: !showEndState,
|
|
1278
|
+
onClose: !showEndState ? handleContinueAnyway : void 0,
|
|
1279
|
+
children: showEndState ? /* @__PURE__ */ jsx(EndStateLayout, { title: t(($) => $["documentUploaded"]) }) : /* @__PURE__ */ jsxs("div", { className: styles$3.reviewModal, children: [
|
|
1280
|
+
/* @__PURE__ */ jsx("div", { className: styles$3.preview, children: /* @__PURE__ */ jsx("div", { className: styles$3.previewImage, children: documentPreview }) }),
|
|
1281
|
+
/* @__PURE__ */ jsxs("div", { className: styles$3.content, children: [
|
|
1282
|
+
/* @__PURE__ */ jsx("h2", { className: styles$3.title, children: t(($) => $["reviewDocument"]) }),
|
|
1283
|
+
/* @__PURE__ */ jsx("p", { className: styles$3.description, children: t(($) => $["reviewDocumentDescription"]) }),
|
|
1284
|
+
/* @__PURE__ */ jsx(Button, { variant: "link", onClick: () => setShowRequirementsModal(true), children: commonT(($) => $["learnMore"]) }),
|
|
1285
|
+
/* @__PURE__ */ jsx("ul", { className: styles$3.issues, children: validationResponse && getValidationIssuesKeys(validationResponse).map((issue, index) => /* @__PURE__ */ jsx("li", { children: t(($) => $[issue]) }, index)) }),
|
|
1286
|
+
/* @__PURE__ */ jsxs("div", { className: styles$3.actions, children: [
|
|
1287
|
+
/* @__PURE__ */ jsx(
|
|
1288
|
+
Button,
|
|
1289
|
+
{
|
|
1290
|
+
variant: "secondary",
|
|
1291
|
+
disabled: validateDocumentMutation.isPending,
|
|
1292
|
+
onClick: handleContinueAnyway,
|
|
1293
|
+
children: commonT(($) => $["continue"])
|
|
1294
|
+
}
|
|
1295
|
+
),
|
|
1296
|
+
/* @__PURE__ */ jsx(
|
|
1297
|
+
Button,
|
|
1298
|
+
{
|
|
1299
|
+
loading: validateDocumentMutation.isPending,
|
|
1300
|
+
variant: "primary",
|
|
1301
|
+
onClick: handleUploadNewDocument,
|
|
1302
|
+
children: t(($) => $["uploadNewDocument"])
|
|
1303
|
+
}
|
|
1304
|
+
)
|
|
1305
|
+
] })
|
|
1306
|
+
] })
|
|
1307
|
+
] })
|
|
1308
|
+
}
|
|
1309
|
+
),
|
|
1310
|
+
showConfirmationModal && /* @__PURE__ */ jsx(
|
|
1311
|
+
Modal,
|
|
1312
|
+
{
|
|
1313
|
+
ariaLabel: t(($) => $["useThisDocument"]),
|
|
1314
|
+
size: "small",
|
|
1315
|
+
onClose: handleConfirmationCancel,
|
|
1316
|
+
children: /* @__PURE__ */ jsxs("div", { className: styles$3.confirmationModal, children: [
|
|
1317
|
+
/* @__PURE__ */ jsx("h2", { className: styles$3.title, children: t(($) => $["useThisDocument"]) }),
|
|
1318
|
+
/* @__PURE__ */ jsx("p", { className: styles$3.description, children: t(($) => $["thisDocumentNeedstoBeReviewedManually"]) }),
|
|
1319
|
+
/* @__PURE__ */ jsxs("div", { className: styles$3.actions, children: [
|
|
1320
|
+
/* @__PURE__ */ jsx(Button, { variant: "secondary", onClick: handleConfirmationCancel, children: commonT(($) => $["cancel"]) }),
|
|
1321
|
+
/* @__PURE__ */ jsx(Button, { variant: "primary", onClick: handleUseDocument, children: t(($) => $["useDocument"]) })
|
|
1322
|
+
] })
|
|
1323
|
+
] })
|
|
1324
|
+
}
|
|
1325
|
+
),
|
|
1326
|
+
/* @__PURE__ */ jsx(
|
|
1327
|
+
BankDocumentRequirementsModal,
|
|
1328
|
+
{
|
|
1329
|
+
isOpen: showRequirementsModal,
|
|
1330
|
+
onClose: () => setShowRequirementsModal(false)
|
|
1331
|
+
}
|
|
1332
|
+
),
|
|
1333
|
+
/* @__PURE__ */ jsx(
|
|
1334
|
+
"input",
|
|
1335
|
+
{
|
|
1336
|
+
id,
|
|
1337
|
+
ref: inputRef,
|
|
1338
|
+
className: "adyen-kyc-dropzone__input",
|
|
1339
|
+
onChange: (e) => {
|
|
1340
|
+
const fileInput = e.currentTarget;
|
|
1341
|
+
if (fileInput?.files?.length) handleDocumentUpload([...fileInput.files]);
|
|
1342
|
+
},
|
|
1343
|
+
type: "file",
|
|
1344
|
+
accept: defaultFileValidationOptions.allowedFileTypes.join(", ")
|
|
1345
|
+
}
|
|
1346
|
+
)
|
|
1347
|
+
] });
|
|
1348
|
+
}
|
|
1349
|
+
const MemoizedBankDocumentClassification = memo(
|
|
1350
|
+
BankDocumentClassification,
|
|
1351
|
+
(prevProps, nextProps) => objectsDeepEqual(prevProps.requiredFields, nextProps.requiredFields) && objectsDeepEqual(prevProps.optionalFields, nextProps.optionalFields) && objectsDeepEqual(prevProps.data, nextProps.data) && objectsDeepEqual(prevProps.formVerificationErrors, nextProps.formVerificationErrors) && objectsDeepEqual(prevProps.fieldValidationErrors, nextProps.fieldValidationErrors) && prevProps.country === nextProps.country && prevProps.shouldValidate === nextProps.shouldValidate && prevProps.heading === nextProps.heading && prevProps.formIsActive === nextProps.formIsActive
|
|
1352
|
+
);
|
|
863
1353
|
const bankVerificationValidationRules = {
|
|
864
1354
|
verifiedAccountHolder: {
|
|
865
1355
|
modes: ["blur"],
|
|
@@ -903,21 +1393,149 @@ const useHandleBankVerificationError = (options) => {
|
|
|
903
1393
|
...options
|
|
904
1394
|
});
|
|
905
1395
|
};
|
|
906
|
-
const addAnimationStartListener = (element, listener) => {
|
|
907
|
-
element.addEventListener("animationstart", listener, false);
|
|
908
|
-
};
|
|
909
|
-
const removeAnimationStartListener = (element, listener) => {
|
|
910
|
-
element.removeEventListener("animationstart", listener, false);
|
|
911
|
-
};
|
|
912
1396
|
const VerificationWidgetCallbackActions = {
|
|
913
1397
|
HANDLE_EXCEPTION: "handle_exception",
|
|
914
1398
|
VERIFICATION_SUCCESS: "verification_success",
|
|
915
1399
|
RETRY_VERIFICATION: "retry_verification",
|
|
916
1400
|
HANDLE_EVENT: "handle_event"
|
|
917
1401
|
};
|
|
1402
|
+
const WIDGET_CONTAINER_CLASS$1 = `adyen-kyc-bank-verification-widget-container`;
|
|
1403
|
+
function BankVerificationOverlay({
|
|
1404
|
+
url,
|
|
1405
|
+
setBankVerificationError,
|
|
1406
|
+
onBack,
|
|
1407
|
+
retrieveBankAccountInfo,
|
|
1408
|
+
createTrustedTransferInstrument: createTrustedTransferInstrument2
|
|
1409
|
+
}) {
|
|
1410
|
+
const { t } = useTranslation("banking");
|
|
1411
|
+
const userEvents = useAnalyticsContext();
|
|
1412
|
+
const widgetContainerRef = useRef(null);
|
|
1413
|
+
const { mutateAsync: handleBankVerificationError2 } = useHandleBankVerificationError();
|
|
1414
|
+
const trackVerificationError = (returnValue) => {
|
|
1415
|
+
userEvents.addPageEvent("Encountered error", {
|
|
1416
|
+
actionType: "add",
|
|
1417
|
+
returnType: "sdk error",
|
|
1418
|
+
returnValue
|
|
1419
|
+
});
|
|
1420
|
+
};
|
|
1421
|
+
const DEFAULT_ERROR = {
|
|
1422
|
+
error: "UNKNOWN_ERROR",
|
|
1423
|
+
message: t(($) => $["weCouldntCompleteTheAccountCheck"])
|
|
1424
|
+
};
|
|
1425
|
+
useEffect(() => {
|
|
1426
|
+
setBankVerificationError(null);
|
|
1427
|
+
}, [setBankVerificationError]);
|
|
1428
|
+
const widgetCallback = useCallback(
|
|
1429
|
+
(payload) => {
|
|
1430
|
+
const errorContent = t(($) => $["tryAgainOrManualAccountDetails"]);
|
|
1431
|
+
switch (payload.action) {
|
|
1432
|
+
case VerificationWidgetCallbackActions.HANDLE_EXCEPTION: {
|
|
1433
|
+
let errorTitle;
|
|
1434
|
+
const { err } = payload;
|
|
1435
|
+
switch (!(err instanceof Error) && err?.error) {
|
|
1436
|
+
case "USER_CANCELLED":
|
|
1437
|
+
errorTitle = "";
|
|
1438
|
+
break;
|
|
1439
|
+
case "CONNECTION_ERROR":
|
|
1440
|
+
errorTitle = t(($) => $["couldNotEstablishBankConnection"]);
|
|
1441
|
+
break;
|
|
1442
|
+
case "GENERIC_ERROR":
|
|
1443
|
+
errorTitle = t(($) => $["ranIntoTechnicalError"]);
|
|
1444
|
+
break;
|
|
1445
|
+
case "UNKNOWN_ERROR":
|
|
1446
|
+
default: {
|
|
1447
|
+
errorTitle = t(($) => $["couldNotCompleteAccountCheck"]);
|
|
1448
|
+
break;
|
|
1449
|
+
}
|
|
1450
|
+
}
|
|
1451
|
+
if (errorTitle) {
|
|
1452
|
+
setBankVerificationError({ title: errorTitle, content: errorContent });
|
|
1453
|
+
}
|
|
1454
|
+
showInstantVerificationPayoutModal.value = false;
|
|
1455
|
+
onBack?.();
|
|
1456
|
+
break;
|
|
1457
|
+
}
|
|
1458
|
+
case VerificationWidgetCallbackActions.RETRY_VERIFICATION:
|
|
1459
|
+
setBankVerificationError({
|
|
1460
|
+
title: t(($) => $["failedInitializeInstantVerification"]),
|
|
1461
|
+
content: errorContent
|
|
1462
|
+
});
|
|
1463
|
+
onBack?.();
|
|
1464
|
+
break;
|
|
1465
|
+
case VerificationWidgetCallbackActions.HANDLE_EVENT: {
|
|
1466
|
+
const { name, provider } = payload.event;
|
|
1467
|
+
if (name === "institution_selected" && provider === "plaid") {
|
|
1468
|
+
widgetContainerRef.current?.classList.add(`${WIDGET_CONTAINER_CLASS$1}--plaid-modal`);
|
|
1469
|
+
}
|
|
1470
|
+
break;
|
|
1471
|
+
}
|
|
1472
|
+
case VerificationWidgetCallbackActions.VERIFICATION_SUCCESS: {
|
|
1473
|
+
const { accounts } = payload.result;
|
|
1474
|
+
if (accounts) retrieveBankAccountInfo(accounts[0]);
|
|
1475
|
+
}
|
|
1476
|
+
}
|
|
1477
|
+
},
|
|
1478
|
+
[t, retrieveBankAccountInfo, onBack, setBankVerificationError]
|
|
1479
|
+
);
|
|
1480
|
+
useEffect(() => {
|
|
1481
|
+
const container = widgetContainerRef.current;
|
|
1482
|
+
if (!container) return;
|
|
1483
|
+
const openBanking = OpenBankingSDK.create({
|
|
1484
|
+
divElement: container,
|
|
1485
|
+
link: url,
|
|
1486
|
+
successHandler: (code, state) => {
|
|
1487
|
+
createTrustedTransferInstrument2?.(code, state).then((res) => {
|
|
1488
|
+
userEvents.addPageEvent("Success", { actionType: "add" });
|
|
1489
|
+
if (res) {
|
|
1490
|
+
widgetCallback({
|
|
1491
|
+
action: VerificationWidgetCallbackActions.VERIFICATION_SUCCESS,
|
|
1492
|
+
result: res
|
|
1493
|
+
});
|
|
1494
|
+
}
|
|
1495
|
+
}).catch(() => {
|
|
1496
|
+
trackVerificationError(DEFAULT_ERROR.error);
|
|
1497
|
+
widgetCallback({
|
|
1498
|
+
action: VerificationWidgetCallbackActions.HANDLE_EXCEPTION,
|
|
1499
|
+
err: DEFAULT_ERROR
|
|
1500
|
+
});
|
|
1501
|
+
});
|
|
1502
|
+
},
|
|
1503
|
+
errorHandler: (errorCode, errorMessage, state, metadata) => {
|
|
1504
|
+
trackVerificationError(errorCode);
|
|
1505
|
+
handleBankVerificationError2?.({
|
|
1506
|
+
errorCode,
|
|
1507
|
+
errorMessage,
|
|
1508
|
+
state,
|
|
1509
|
+
metadata: metadata && Object.fromEntries(metadata)
|
|
1510
|
+
}).then(
|
|
1511
|
+
(error) => widgetCallback({
|
|
1512
|
+
action: VerificationWidgetCallbackActions.HANDLE_EXCEPTION,
|
|
1513
|
+
err: error
|
|
1514
|
+
})
|
|
1515
|
+
).catch(
|
|
1516
|
+
() => widgetCallback({
|
|
1517
|
+
action: VerificationWidgetCallbackActions.HANDLE_EXCEPTION,
|
|
1518
|
+
err: DEFAULT_ERROR
|
|
1519
|
+
})
|
|
1520
|
+
);
|
|
1521
|
+
},
|
|
1522
|
+
eventHandler: (eventName, provider) => {
|
|
1523
|
+
widgetCallback({
|
|
1524
|
+
action: VerificationWidgetCallbackActions.HANDLE_EVENT,
|
|
1525
|
+
event: { name: eventName, provider }
|
|
1526
|
+
});
|
|
1527
|
+
}
|
|
1528
|
+
});
|
|
1529
|
+
openBanking.open();
|
|
1530
|
+
container.classList.add(WIDGET_CONTAINER_CLASS$1, `${WIDGET_CONTAINER_CLASS$1}--fullscreen`);
|
|
1531
|
+
return () => {
|
|
1532
|
+
openBanking?.destroy();
|
|
1533
|
+
};
|
|
1534
|
+
}, []);
|
|
1535
|
+
return /* @__PURE__ */ jsx("div", { ref: widgetContainerRef });
|
|
1536
|
+
}
|
|
918
1537
|
const WIDGET_IFRAME_CLASS = "adyen-kyc-bank-verification-widget";
|
|
919
1538
|
const WIDGET_CONTAINER_CLASS = `${WIDGET_IFRAME_CLASS}-container`;
|
|
920
|
-
const EMPTY_WIDGET_CONTAINER_ANIMATION = "adyen-kyc-empty-bank-verification-widget-container";
|
|
921
1539
|
function BankVerificationWidget({
|
|
922
1540
|
url,
|
|
923
1541
|
vendor,
|
|
@@ -928,8 +1546,9 @@ function BankVerificationWidget({
|
|
|
928
1546
|
createTrustedTransferInstrument: createTrustedTransferInstrument2,
|
|
929
1547
|
fullscreen
|
|
930
1548
|
}) {
|
|
931
|
-
const {
|
|
1549
|
+
const { t } = useTranslation("banking");
|
|
932
1550
|
const userEvents = useAnalyticsContext();
|
|
1551
|
+
const { isExperimentEnabled } = useExperimentsContext();
|
|
933
1552
|
const widgetContainerRef = useRef(null);
|
|
934
1553
|
const sdkToken = getSdkToken();
|
|
935
1554
|
const { mutateAsync: handleBankVerificationError2 } = useHandleBankVerificationError();
|
|
@@ -942,12 +1561,12 @@ function BankVerificationWidget({
|
|
|
942
1561
|
};
|
|
943
1562
|
const DEFAULT_ERROR = {
|
|
944
1563
|
error: "UNKNOWN_ERROR",
|
|
945
|
-
message:
|
|
1564
|
+
message: t(($) => $["weCouldntCompleteTheAccountCheck"])
|
|
946
1565
|
};
|
|
947
1566
|
setBankVerificationError(null);
|
|
948
1567
|
const widgetCallback = useCallback(
|
|
949
1568
|
(payload) => {
|
|
950
|
-
const errorContent =
|
|
1569
|
+
const errorContent = t(($) => $["tryAgainOrManualAccountDetails"]);
|
|
951
1570
|
switch (payload.action) {
|
|
952
1571
|
case VerificationWidgetCallbackActions.HANDLE_EXCEPTION: {
|
|
953
1572
|
let errorTitle;
|
|
@@ -957,14 +1576,14 @@ function BankVerificationWidget({
|
|
|
957
1576
|
errorTitle = "";
|
|
958
1577
|
break;
|
|
959
1578
|
case "CONNECTION_ERROR":
|
|
960
|
-
errorTitle =
|
|
1579
|
+
errorTitle = t(($) => $["couldNotEstablishBankConnection"]);
|
|
961
1580
|
break;
|
|
962
1581
|
case "GENERIC_ERROR":
|
|
963
|
-
errorTitle =
|
|
1582
|
+
errorTitle = t(($) => $["ranIntoTechnicalError"]);
|
|
964
1583
|
break;
|
|
965
1584
|
case "UNKNOWN_ERROR":
|
|
966
1585
|
default: {
|
|
967
|
-
errorTitle =
|
|
1586
|
+
errorTitle = t(($) => $["couldNotCompleteAccountCheck"]);
|
|
968
1587
|
break;
|
|
969
1588
|
}
|
|
970
1589
|
}
|
|
@@ -972,12 +1591,15 @@ function BankVerificationWidget({
|
|
|
972
1591
|
setBankVerificationError({ title: errorTitle, content: errorContent });
|
|
973
1592
|
}
|
|
974
1593
|
setHideVerificationWidget(true);
|
|
1594
|
+
if (isExperimentEnabled(ExperimentNames.EnablePayoutVerificationMethodPageRedesign)) {
|
|
1595
|
+
showInstantVerificationPayoutModal.value = false;
|
|
1596
|
+
}
|
|
975
1597
|
onBack?.();
|
|
976
1598
|
break;
|
|
977
1599
|
}
|
|
978
1600
|
case VerificationWidgetCallbackActions.RETRY_VERIFICATION:
|
|
979
1601
|
setBankVerificationError({
|
|
980
|
-
title:
|
|
1602
|
+
title: t(($) => $["failedInitializeInstantVerification"]),
|
|
981
1603
|
content: errorContent
|
|
982
1604
|
});
|
|
983
1605
|
setHideVerificationWidget(true);
|
|
@@ -997,117 +1619,109 @@ function BankVerificationWidget({
|
|
|
997
1619
|
}
|
|
998
1620
|
}
|
|
999
1621
|
},
|
|
1000
|
-
[
|
|
1622
|
+
[t, retrieveBankAccountInfo, onBack, setBankVerificationError, setHideVerificationWidget]
|
|
1001
1623
|
);
|
|
1002
1624
|
useEffect(
|
|
1003
1625
|
() => {
|
|
1004
1626
|
const container = widgetContainerRef.current;
|
|
1005
|
-
if (!container)
|
|
1006
|
-
return;
|
|
1007
|
-
}
|
|
1627
|
+
if (!container) return;
|
|
1008
1628
|
let iFrame;
|
|
1009
1629
|
let iFrameWidget;
|
|
1010
1630
|
let openBanking;
|
|
1011
|
-
|
|
1012
|
-
|
|
1013
|
-
|
|
1014
|
-
|
|
1015
|
-
|
|
1016
|
-
|
|
1017
|
-
|
|
1018
|
-
|
|
1019
|
-
createTrustedTransferInstrument2(code, state).then((res) => {
|
|
1020
|
-
userEvents.addPageEvent("Success", { actionType: "add" });
|
|
1021
|
-
if (res) {
|
|
1022
|
-
widgetCallback({
|
|
1023
|
-
action: VerificationWidgetCallbackActions.VERIFICATION_SUCCESS,
|
|
1024
|
-
result: res
|
|
1025
|
-
});
|
|
1026
|
-
}
|
|
1027
|
-
}).catch(() => {
|
|
1028
|
-
trackVerificationError(DEFAULT_ERROR.error);
|
|
1029
|
-
widgetCallback({
|
|
1030
|
-
action: VerificationWidgetCallbackActions.HANDLE_EXCEPTION,
|
|
1031
|
-
err: DEFAULT_ERROR
|
|
1032
|
-
});
|
|
1033
|
-
});
|
|
1034
|
-
},
|
|
1035
|
-
errorHandler: (errorCode, errorMessage, state, metadata) => {
|
|
1036
|
-
trackVerificationError(errorCode);
|
|
1037
|
-
handleBankVerificationError2?.({
|
|
1038
|
-
errorCode,
|
|
1039
|
-
errorMessage,
|
|
1040
|
-
state,
|
|
1041
|
-
metadata: metadata && Object.fromEntries(metadata)
|
|
1042
|
-
}).then(
|
|
1043
|
-
(error) => widgetCallback({
|
|
1044
|
-
action: VerificationWidgetCallbackActions.HANDLE_EXCEPTION,
|
|
1045
|
-
err: error
|
|
1046
|
-
})
|
|
1047
|
-
).catch(
|
|
1048
|
-
() => widgetCallback({
|
|
1049
|
-
action: VerificationWidgetCallbackActions.HANDLE_EXCEPTION,
|
|
1050
|
-
err: DEFAULT_ERROR
|
|
1051
|
-
})
|
|
1052
|
-
);
|
|
1053
|
-
},
|
|
1054
|
-
eventHandler: (eventName, provider) => {
|
|
1631
|
+
if (createTrustedTransferInstrument2) {
|
|
1632
|
+
openBanking = OpenBankingSDK.create({
|
|
1633
|
+
divElement: container,
|
|
1634
|
+
link: url,
|
|
1635
|
+
successHandler: (code, state) => {
|
|
1636
|
+
createTrustedTransferInstrument2(code, state).then((res) => {
|
|
1637
|
+
userEvents.addPageEvent("Success", { actionType: "add" });
|
|
1638
|
+
if (res) {
|
|
1055
1639
|
widgetCallback({
|
|
1056
|
-
action: VerificationWidgetCallbackActions.
|
|
1057
|
-
|
|
1640
|
+
action: VerificationWidgetCallbackActions.VERIFICATION_SUCCESS,
|
|
1641
|
+
result: res
|
|
1058
1642
|
});
|
|
1059
1643
|
}
|
|
1644
|
+
}).catch(() => {
|
|
1645
|
+
trackVerificationError(DEFAULT_ERROR.error);
|
|
1646
|
+
widgetCallback({
|
|
1647
|
+
action: VerificationWidgetCallbackActions.HANDLE_EXCEPTION,
|
|
1648
|
+
err: DEFAULT_ERROR
|
|
1649
|
+
});
|
|
1060
1650
|
});
|
|
1061
|
-
|
|
1062
|
-
|
|
1063
|
-
|
|
1064
|
-
|
|
1065
|
-
|
|
1066
|
-
|
|
1067
|
-
|
|
1068
|
-
|
|
1069
|
-
|
|
1070
|
-
|
|
1071
|
-
|
|
1072
|
-
|
|
1073
|
-
|
|
1074
|
-
|
|
1075
|
-
|
|
1076
|
-
|
|
1077
|
-
|
|
1078
|
-
|
|
1079
|
-
|
|
1080
|
-
|
|
1081
|
-
|
|
1082
|
-
|
|
1083
|
-
|
|
1084
|
-
|
|
1085
|
-
|
|
1086
|
-
|
|
1087
|
-
|
|
1088
|
-
|
|
1089
|
-
|
|
1090
|
-
|
|
1091
|
-
|
|
1092
|
-
|
|
1093
|
-
|
|
1094
|
-
|
|
1095
|
-
|
|
1096
|
-
|
|
1097
|
-
|
|
1098
|
-
|
|
1099
|
-
|
|
1100
|
-
|
|
1101
|
-
|
|
1102
|
-
|
|
1103
|
-
|
|
1104
|
-
|
|
1105
|
-
|
|
1651
|
+
},
|
|
1652
|
+
errorHandler: (errorCode, errorMessage, state, metadata) => {
|
|
1653
|
+
trackVerificationError(errorCode);
|
|
1654
|
+
handleBankVerificationError2?.({
|
|
1655
|
+
errorCode,
|
|
1656
|
+
errorMessage,
|
|
1657
|
+
state,
|
|
1658
|
+
metadata: metadata && Object.fromEntries(metadata)
|
|
1659
|
+
}).then(
|
|
1660
|
+
(error) => widgetCallback({
|
|
1661
|
+
action: VerificationWidgetCallbackActions.HANDLE_EXCEPTION,
|
|
1662
|
+
err: error
|
|
1663
|
+
})
|
|
1664
|
+
).catch(
|
|
1665
|
+
() => widgetCallback({
|
|
1666
|
+
action: VerificationWidgetCallbackActions.HANDLE_EXCEPTION,
|
|
1667
|
+
err: DEFAULT_ERROR
|
|
1668
|
+
})
|
|
1669
|
+
);
|
|
1670
|
+
},
|
|
1671
|
+
eventHandler: (eventName, provider) => {
|
|
1672
|
+
widgetCallback({
|
|
1673
|
+
action: VerificationWidgetCallbackActions.HANDLE_EVENT,
|
|
1674
|
+
event: { name: eventName, provider }
|
|
1675
|
+
});
|
|
1676
|
+
}
|
|
1677
|
+
});
|
|
1678
|
+
openBanking.open();
|
|
1679
|
+
} else {
|
|
1680
|
+
iFrame = document.createElement("iframe");
|
|
1681
|
+
iFrame.setAttribute("allowFullscreen", "true");
|
|
1682
|
+
iFrame.classList.add(WIDGET_IFRAME_CLASS);
|
|
1683
|
+
container.appendChild(iFrame);
|
|
1684
|
+
requestAnimationFrame(async () => {
|
|
1685
|
+
try {
|
|
1686
|
+
iFrameWidget = new IFrameWidget(iFrame, url, vendor, sdkToken);
|
|
1687
|
+
const result = await iFrameWidget.mountAndWaitForResponse();
|
|
1688
|
+
widgetCallback({
|
|
1689
|
+
action: VerificationWidgetCallbackActions.VERIFICATION_SUCCESS,
|
|
1690
|
+
result
|
|
1691
|
+
});
|
|
1692
|
+
userEvents.addPageEvent("Success", { actionType: "add" });
|
|
1693
|
+
} catch (err) {
|
|
1694
|
+
if (err instanceof AdyenKycSdkError) {
|
|
1695
|
+
switch (err.message) {
|
|
1696
|
+
case "WIDGET_ACCOUNT_COMMIT_FAILURE":
|
|
1697
|
+
return widgetCallback({
|
|
1698
|
+
action: VerificationWidgetCallbackActions.HANDLE_EXCEPTION,
|
|
1699
|
+
err: err.sourceError
|
|
1700
|
+
});
|
|
1701
|
+
case "WIDGET_LAUNCH_FAILED":
|
|
1702
|
+
case "WIDGET_URL_MALFORMED":
|
|
1703
|
+
case "WIDGET_TIMEOUT":
|
|
1704
|
+
return widgetCallback({
|
|
1705
|
+
action: VerificationWidgetCallbackActions.RETRY_VERIFICATION
|
|
1706
|
+
});
|
|
1707
|
+
default:
|
|
1708
|
+
return widgetCallback({
|
|
1709
|
+
action: VerificationWidgetCallbackActions.HANDLE_EXCEPTION,
|
|
1710
|
+
err: {
|
|
1711
|
+
error: err?.name ?? VerificationWidgetCallbackActions.HANDLE_EXCEPTION,
|
|
1712
|
+
message: err.sourceError?.message ?? VerificationWidgetCallbackActions.HANDLE_EXCEPTION
|
|
1713
|
+
}
|
|
1714
|
+
});
|
|
1106
1715
|
}
|
|
1716
|
+
}
|
|
1717
|
+
trackVerificationError(err instanceof AdyenKycSdkError ? err.message : "sdk error");
|
|
1718
|
+
return widgetCallback({
|
|
1719
|
+
action: VerificationWidgetCallbackActions.HANDLE_EXCEPTION,
|
|
1720
|
+
err
|
|
1107
1721
|
});
|
|
1108
1722
|
}
|
|
1109
1723
|
});
|
|
1110
|
-
}
|
|
1724
|
+
}
|
|
1111
1725
|
container.classList.add(WIDGET_CONTAINER_CLASS);
|
|
1112
1726
|
if (fullscreen) {
|
|
1113
1727
|
container.classList.add(`${WIDGET_CONTAINER_CLASS}--fullscreen`);
|
|
@@ -1171,11 +1785,16 @@ function BankVerification(props) {
|
|
|
1171
1785
|
id,
|
|
1172
1786
|
fieldValidationErrors
|
|
1173
1787
|
} = props;
|
|
1174
|
-
const {
|
|
1788
|
+
const { t } = useTranslation("banking");
|
|
1789
|
+
const { t: commonT } = useTranslation("common");
|
|
1790
|
+
const { isExperimentEnabled } = useExperimentsContext();
|
|
1175
1791
|
const invalidateRootLegalEntity = useInvalidateRootLegalEntity();
|
|
1176
1792
|
const schema = accountVerificationFields;
|
|
1177
1793
|
const stateRef = useRef({ setState: null });
|
|
1178
1794
|
const [hideVerificationWidget, setHideVerificationWidget] = useState(false);
|
|
1795
|
+
const isPayoutVerificationMethodPageRedesignEnabled = isExperimentEnabled(
|
|
1796
|
+
ExperimentNames.EnablePayoutVerificationMethodPageRedesign
|
|
1797
|
+
);
|
|
1179
1798
|
const { handleChangeFor, data, valid, errors, isValid, triggerValidation, fieldProblems } = useForm({
|
|
1180
1799
|
...props,
|
|
1181
1800
|
schema,
|
|
@@ -1199,6 +1818,9 @@ function BankVerification(props) {
|
|
|
1199
1818
|
hideSidebar?.(false);
|
|
1200
1819
|
triggerValidation();
|
|
1201
1820
|
await invalidateRootLegalEntity();
|
|
1821
|
+
if (isPayoutVerificationMethodPageRedesignEnabled) {
|
|
1822
|
+
showInstantVerificationPayoutModal.value = false;
|
|
1823
|
+
}
|
|
1202
1824
|
};
|
|
1203
1825
|
const handleOnBack = () => {
|
|
1204
1826
|
setHideVerificationWidget(false);
|
|
@@ -1218,14 +1840,34 @@ function BankVerification(props) {
|
|
|
1218
1840
|
});
|
|
1219
1841
|
}, [data, valid, errors, isValid]);
|
|
1220
1842
|
useEffect(() => {
|
|
1221
|
-
|
|
1222
|
-
|
|
1843
|
+
if (!isPayoutVerificationMethodPageRedesignEnabled) {
|
|
1844
|
+
hideSidebar?.(formIsActive && !bankInfoValidated);
|
|
1845
|
+
return () => hideSidebar?.(false);
|
|
1846
|
+
}
|
|
1223
1847
|
}, [bankInfoValidated, formIsActive]);
|
|
1848
|
+
if (isPayoutVerificationMethodPageRedesignEnabled && provider) {
|
|
1849
|
+
if (bankInfoValidated) {
|
|
1850
|
+
return null;
|
|
1851
|
+
}
|
|
1852
|
+
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
1853
|
+
/* @__PURE__ */ jsx(StateContextSetter, { owner: id, stateRef }),
|
|
1854
|
+
/* @__PURE__ */ jsx(
|
|
1855
|
+
BankVerificationOverlay,
|
|
1856
|
+
{
|
|
1857
|
+
url: provider.redirectUrl,
|
|
1858
|
+
setBankVerificationError,
|
|
1859
|
+
onBack: handleOnBack,
|
|
1860
|
+
retrieveBankAccountInfo,
|
|
1861
|
+
createTrustedTransferInstrument: createTrustedTransferInstrument2
|
|
1862
|
+
}
|
|
1863
|
+
)
|
|
1864
|
+
] });
|
|
1865
|
+
}
|
|
1224
1866
|
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
1225
1867
|
/* @__PURE__ */ jsx(StateContextSetter, { owner: id, stateRef }),
|
|
1226
1868
|
bankInfoValidated && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
1227
|
-
/* @__PURE__ */ jsx(
|
|
1228
|
-
/* @__PURE__ */ jsx(Alert, { title:
|
|
1869
|
+
heading && /* @__PURE__ */ jsx(Header, { title: heading }),
|
|
1870
|
+
/* @__PURE__ */ jsx(Alert, { title: t(($) => $["youSuccessfullyVerifiedAccount"]), variant: "success" })
|
|
1229
1871
|
] }),
|
|
1230
1872
|
provider && formIsActive && !bankInfoValidated && /* @__PURE__ */ jsx("div", { className: "adyen-kyc-bank-verification-container", children: /* @__PURE__ */ jsx("form", { className: "adyen-kyc-bank-verification", children: !hideVerificationWidget ? /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
1231
1873
|
/* @__PURE__ */ jsx(
|
|
@@ -1240,30 +1882,30 @@ function BankVerification(props) {
|
|
|
1240
1882
|
createTrustedTransferInstrument: createTrustedTransferInstrument2
|
|
1241
1883
|
}
|
|
1242
1884
|
),
|
|
1243
|
-
/* @__PURE__ */ jsx(ActionBar, { onBack: handleOnBack, backButtonLabel:
|
|
1885
|
+
/* @__PURE__ */ jsx(ActionBar, { onBack: handleOnBack, backButtonLabel: commonT(($) => $["goBack"]) })
|
|
1244
1886
|
] }) : void 0 }) })
|
|
1245
1887
|
] });
|
|
1246
1888
|
}
|
|
1247
1889
|
function BankAccountFormat(props) {
|
|
1248
|
-
const {
|
|
1890
|
+
const { t } = useTranslation(["banking"]);
|
|
1249
1891
|
const { bankAccountFormat, handleAccountFormatChange } = props;
|
|
1250
1892
|
const bankFormatOptions = [
|
|
1251
1893
|
{
|
|
1252
1894
|
id: "iban",
|
|
1253
|
-
name:
|
|
1895
|
+
name: t(($) => $["ibanFormat"])
|
|
1254
1896
|
},
|
|
1255
1897
|
{
|
|
1256
1898
|
id: "local",
|
|
1257
|
-
name:
|
|
1899
|
+
name: t(($) => $["localFormat"])
|
|
1258
1900
|
}
|
|
1259
1901
|
];
|
|
1260
|
-
return /* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsx(Field, { name: "bankAccountFormat", label:
|
|
1902
|
+
return /* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsx(Field, { name: "bankAccountFormat", label: t(($) => $["bankAccountFormat"]), children: (childProps) => /* @__PURE__ */ jsx(
|
|
1261
1903
|
Select,
|
|
1262
1904
|
{
|
|
1263
1905
|
...childProps,
|
|
1264
1906
|
onChange: (e) => handleAccountFormatChange?.(e?.target?.value),
|
|
1265
1907
|
name: "bankAccountFormat",
|
|
1266
|
-
placeholder:
|
|
1908
|
+
placeholder: t(($) => $["localFormat"]),
|
|
1267
1909
|
selected: bankAccountFormat,
|
|
1268
1910
|
items: bankFormatOptions
|
|
1269
1911
|
}
|
|
@@ -2120,7 +2762,7 @@ function SwiftCode(props) {
|
|
|
2120
2762
|
}
|
|
2121
2763
|
);
|
|
2122
2764
|
}
|
|
2123
|
-
const
|
|
2765
|
+
const countriesWithMultiplePayoutCurrencies = /* @__PURE__ */ new Set([
|
|
2124
2766
|
CountryCodes.Bulgaria,
|
|
2125
2767
|
CountryCodes.Canada,
|
|
2126
2768
|
CountryCodes.Croatia,
|
|
@@ -2150,8 +2792,8 @@ const payoutCurrencySupport = {
|
|
|
2150
2792
|
};
|
|
2151
2793
|
const shouldShowCheckGuidance = (country) => country === "US";
|
|
2152
2794
|
const shouldShowPayoutAccountFormatSelector = (country) => countriesWithLocalFormat.has(country);
|
|
2153
|
-
const shouldShowPayoutAlert = (country) => shouldShowPayoutAccountFormatSelector(country) ||
|
|
2154
|
-
const getSupportedCurrencyGuidance = (
|
|
2795
|
+
const shouldShowPayoutAlert = (country) => shouldShowPayoutAccountFormatSelector(country) || countriesWithMultiplePayoutCurrencies.has(country);
|
|
2796
|
+
const getSupportedCurrencyGuidance = (t, country, requiredFields) => {
|
|
2155
2797
|
const format = requiredFields.includes("iban") ? "iban" : "local";
|
|
2156
2798
|
if (!shouldShowPayoutAlert(country)) {
|
|
2157
2799
|
return;
|
|
@@ -2160,11 +2802,10 @@ const getSupportedCurrencyGuidance = (i18n, country, requiredFields) => {
|
|
|
2160
2802
|
if (!supportedCurrencies) {
|
|
2161
2803
|
return;
|
|
2162
2804
|
}
|
|
2163
|
-
return supportedCurrencies.length > 1 ?
|
|
2164
|
-
|
|
2165
|
-
|
|
2166
|
-
|
|
2167
|
-
});
|
|
2805
|
+
return supportedCurrencies.length > 1 ? t(($) => $["payoutIn_Or_"], {
|
|
2806
|
+
currencyOne: supportedCurrencies[0],
|
|
2807
|
+
currencyTwo: supportedCurrencies[1]
|
|
2808
|
+
}) : t(($) => $["payoutInOnly_"], { currency: supportedCurrencies[0] });
|
|
2168
2809
|
};
|
|
2169
2810
|
const getSupportedCurrenciesPerFormat = (country, format) => {
|
|
2170
2811
|
const supportedCurrencies = payoutCurrencySupport[country];
|
|
@@ -2173,14 +2814,25 @@ const getSupportedCurrenciesPerFormat = (country, format) => {
|
|
|
2173
2814
|
if (!defaultCurrency) {
|
|
2174
2815
|
return;
|
|
2175
2816
|
}
|
|
2176
|
-
|
|
2817
|
+
if (format === "iban" && defaultCurrency !== Currencies.EUR) {
|
|
2818
|
+
return [Currencies.EUR, defaultCurrency];
|
|
2819
|
+
} else {
|
|
2820
|
+
return [defaultCurrency];
|
|
2821
|
+
}
|
|
2177
2822
|
}
|
|
2178
2823
|
return supportedCurrencies[format];
|
|
2179
2824
|
};
|
|
2825
|
+
const isLocalCurrency = (country, currency) => {
|
|
2826
|
+
if (!country || !currency) {
|
|
2827
|
+
return false;
|
|
2828
|
+
}
|
|
2829
|
+
const supportedCurrencies = currencyByCountry[country];
|
|
2830
|
+
return supportedCurrencies?.includes(currency) ?? false;
|
|
2831
|
+
};
|
|
2180
2832
|
const AccountHolderDescriptionFragment = ({
|
|
2181
2833
|
legalEntityResponse
|
|
2182
2834
|
}) => {
|
|
2183
|
-
const {
|
|
2835
|
+
const { t } = useTranslation("banking");
|
|
2184
2836
|
const hasSolePropEntityAssociations = hasOwnEntityAssociationOfType(
|
|
2185
2837
|
LegalEntityTypes.SOLE_PROPRIETORSHIP,
|
|
2186
2838
|
legalEntityResponse.entityAssociations,
|
|
@@ -2194,7 +2846,7 @@ const AccountHolderDescriptionFragment = ({
|
|
|
2194
2846
|
);
|
|
2195
2847
|
const { individual: individual2 } = legalEntityResponse;
|
|
2196
2848
|
return /* @__PURE__ */ jsxs(Typography, { children: [
|
|
2197
|
-
`${
|
|
2849
|
+
`${t(($) => $["bankAccountHasToBeInYourName"])} `,
|
|
2198
2850
|
/* @__PURE__ */ jsx(
|
|
2199
2851
|
Typography,
|
|
2200
2852
|
{
|
|
@@ -2203,7 +2855,7 @@ const AccountHolderDescriptionFragment = ({
|
|
|
2203
2855
|
children: `${individual2?.name.firstName} ${individual2?.name.lastName}`
|
|
2204
2856
|
}
|
|
2205
2857
|
),
|
|
2206
|
-
` ${
|
|
2858
|
+
` ${t(($) => $["orSoleProprietorshipName"])} `,
|
|
2207
2859
|
" ",
|
|
2208
2860
|
/* @__PURE__ */ jsx(Typography, { el: "span", variant: "body-stronger", children: `${soleProp?.name ?? ""}` })
|
|
2209
2861
|
] });
|
|
@@ -2217,29 +2869,23 @@ const AccountHolderDescriptionFragment = ({
|
|
|
2217
2869
|
const trust = legalEntityResponse.entityAssociations?.find((ea) => ea.entityType === "trust");
|
|
2218
2870
|
if (legalEntityResponse.type === LegalEntityTypes.INDIVIDUAL) {
|
|
2219
2871
|
return /* @__PURE__ */ jsxs(Typography, { children: [
|
|
2220
|
-
`${
|
|
2221
|
-
/* @__PURE__ */ jsx(Typography, { el: "span", variant: "body-stronger", children:
|
|
2222
|
-
|
|
2223
|
-
|
|
2224
|
-
trustName: trust?.name ?? ""
|
|
2225
|
-
}
|
|
2872
|
+
`${t(($) => $["bankAccountToHaveSameNameAsTrust"])} `,
|
|
2873
|
+
/* @__PURE__ */ jsx(Typography, { el: "span", variant: "body-stronger", children: t(($) => $["trusteeAsTrusteeForTrust"], {
|
|
2874
|
+
trusteeName: `${legalEntityResponse?.individual?.name.firstName} ${legalEntityResponse?.individual?.name.lastName}`,
|
|
2875
|
+
trustName: trust?.name ?? ""
|
|
2226
2876
|
}) })
|
|
2227
2877
|
] });
|
|
2228
2878
|
}
|
|
2229
|
-
const companyTrusteeBankAccountName = legalEntityResponse?.organization?.legalName !== legalEntityResponse?.organization?.doingBusinessAs ?
|
|
2230
|
-
|
|
2231
|
-
|
|
2232
|
-
|
|
2233
|
-
|
|
2234
|
-
|
|
2235
|
-
|
|
2236
|
-
values: {
|
|
2237
|
-
trusteeName: legalEntityResponse?.organization?.legalName ?? "",
|
|
2238
|
-
trustName: trust?.name ?? ""
|
|
2239
|
-
}
|
|
2879
|
+
const companyTrusteeBankAccountName = legalEntityResponse?.organization?.legalName !== legalEntityResponse?.organization?.doingBusinessAs ? t(($) => $["trusteeAsTrusteeForTrustDoingBusinessAs"], {
|
|
2880
|
+
trusteeName: legalEntityResponse?.organization?.legalName ?? "",
|
|
2881
|
+
trustName: trust?.name ?? "",
|
|
2882
|
+
tradingName: legalEntityResponse?.organization?.doingBusinessAs
|
|
2883
|
+
}) : t(($) => $["trusteeAsTrusteeForTrust"], {
|
|
2884
|
+
trusteeName: legalEntityResponse?.organization?.legalName ?? "",
|
|
2885
|
+
trustName: trust?.name ?? ""
|
|
2240
2886
|
});
|
|
2241
2887
|
return /* @__PURE__ */ jsxs(Typography, { children: [
|
|
2242
|
-
`${
|
|
2888
|
+
`${t(($) => $["bankAccountToHaveSameNameAsTrust"])} `,
|
|
2243
2889
|
/* @__PURE__ */ jsx(Typography, { el: "span", variant: "body-stronger", children: companyTrusteeBankAccountName })
|
|
2244
2890
|
] });
|
|
2245
2891
|
}
|
|
@@ -2253,22 +2899,20 @@ const AccountHolderDescriptionFragment = ({
|
|
|
2253
2899
|
(ea) => ea.entityType === "unincorporatedPartnership"
|
|
2254
2900
|
);
|
|
2255
2901
|
const partnerNames = unincorporatedPartnershipMembers?.map((member) => member?.name)?.sort();
|
|
2256
|
-
return /* @__PURE__ */ jsx(Typography, { children: `${
|
|
2257
|
-
|
|
2258
|
-
|
|
2259
|
-
partnershipName: unincorporatedPartnership?.name ?? ""
|
|
2260
|
-
}
|
|
2902
|
+
return /* @__PURE__ */ jsx(Typography, { children: `${t(($) => $["bankAccountToHaveSameNameAsUnincorporatedPartnership"], {
|
|
2903
|
+
partnerNames: `${partnerNames?.join(", ")}`,
|
|
2904
|
+
partnershipName: unincorporatedPartnership?.name ?? ""
|
|
2261
2905
|
})} ` });
|
|
2262
2906
|
}
|
|
2263
2907
|
if (legalEntityResponse.type === LegalEntityTypes.ORGANIZATION) {
|
|
2264
2908
|
return /* @__PURE__ */ jsxs(Typography, { children: [
|
|
2265
|
-
`${
|
|
2909
|
+
`${t(($) => $["bankAccountHasToBeInYourCompanyName"])} `,
|
|
2266
2910
|
/* @__PURE__ */ jsx(Typography, { el: "span", variant: "body-stronger", children: legalEntityResponse?.organization?.legalName })
|
|
2267
2911
|
] });
|
|
2268
2912
|
}
|
|
2269
2913
|
const { individual } = legalEntityResponse;
|
|
2270
2914
|
return /* @__PURE__ */ jsxs(Typography, { children: [
|
|
2271
|
-
`${
|
|
2915
|
+
`${t(($) => $["bankAccountHasToBeInYourName"])} `,
|
|
2272
2916
|
/* @__PURE__ */ jsx(
|
|
2273
2917
|
Typography,
|
|
2274
2918
|
{
|
|
@@ -2283,7 +2927,7 @@ const checkGuidance = "adyen-kyc-check-guidance";
|
|
|
2283
2927
|
const checkGuidanceImage = "adyen-kyc-check-guidance-image";
|
|
2284
2928
|
const checkGuidanceAnnotated = "adyen-kyc-check-guidance-annotated";
|
|
2285
2929
|
const checkGuidanceInactive = "adyen-kyc-check-guidance-inactive";
|
|
2286
|
-
const styles = {
|
|
2930
|
+
const styles$2 = {
|
|
2287
2931
|
checkGuidance,
|
|
2288
2932
|
checkGuidanceImage,
|
|
2289
2933
|
checkGuidanceAnnotated,
|
|
@@ -2293,13 +2937,13 @@ const usCheckAccount = lazy(() => import("./us-check-account-number-C7KE5YzX.js"
|
|
|
2293
2937
|
const usCheckRouting = lazy(() => import("./us-check-routing-number-DUbhsYAR.js"));
|
|
2294
2938
|
const usCheck = lazy(() => import("./us-check-CYY6Crhr.js"));
|
|
2295
2939
|
const CheckGuidance = ({ annotated }) => {
|
|
2296
|
-
return /* @__PURE__ */ jsxs("div", { className: styles.checkGuidance, children: [
|
|
2940
|
+
return /* @__PURE__ */ jsxs("div", { className: styles$2.checkGuidance, children: [
|
|
2297
2941
|
/* @__PURE__ */ jsx(
|
|
2298
2942
|
Image,
|
|
2299
2943
|
{
|
|
2300
2944
|
lazyLoadedImage: usCheckAccount,
|
|
2301
|
-
className: cx(styles.checkGuidanceImage, styles.checkGuidanceAnnotated, {
|
|
2302
|
-
[styles.checkGuidanceInactive]: annotated !== "account"
|
|
2945
|
+
className: cx(styles$2.checkGuidanceImage, styles$2.checkGuidanceAnnotated, {
|
|
2946
|
+
[styles$2.checkGuidanceInactive]: annotated !== "account"
|
|
2303
2947
|
})
|
|
2304
2948
|
}
|
|
2305
2949
|
),
|
|
@@ -2307,12 +2951,12 @@ const CheckGuidance = ({ annotated }) => {
|
|
|
2307
2951
|
Image,
|
|
2308
2952
|
{
|
|
2309
2953
|
lazyLoadedImage: usCheckRouting,
|
|
2310
|
-
className: cx(styles.checkGuidanceImage, styles.checkGuidanceAnnotated, {
|
|
2311
|
-
[styles.checkGuidanceInactive]: annotated !== "routing"
|
|
2954
|
+
className: cx(styles$2.checkGuidanceImage, styles$2.checkGuidanceAnnotated, {
|
|
2955
|
+
[styles$2.checkGuidanceInactive]: annotated !== "routing"
|
|
2312
2956
|
})
|
|
2313
2957
|
}
|
|
2314
2958
|
),
|
|
2315
|
-
/* @__PURE__ */ jsx(Image, { lazyLoadedImage: usCheck, className: styles.checkGuidanceImage })
|
|
2959
|
+
/* @__PURE__ */ jsx(Image, { lazyLoadedImage: usCheck, className: styles$2.checkGuidanceImage })
|
|
2316
2960
|
] });
|
|
2317
2961
|
};
|
|
2318
2962
|
const payoutAccountFields = [
|
|
@@ -2324,13 +2968,13 @@ const payoutAccountFields = [
|
|
|
2324
2968
|
...bankNameFields,
|
|
2325
2969
|
...bankCodeFields
|
|
2326
2970
|
];
|
|
2327
|
-
const defaultArray = [];
|
|
2328
2971
|
function PayoutAccount(props) {
|
|
2329
2972
|
const accountFormat = payoutAccountFormat.value;
|
|
2330
2973
|
const { t } = useTranslation("banking");
|
|
2331
2974
|
const { t: commonT } = useTranslation("common");
|
|
2332
|
-
const { i18n } = useI18nContext();
|
|
2333
2975
|
const [checkAnnotation, setCheckAnnotation] = useState();
|
|
2976
|
+
const { isExperimentEnabled } = useExperimentsContext();
|
|
2977
|
+
const isCrossBorderPayoutsEnabled = isExperimentEnabled("EnableCrossBorderPayouts");
|
|
2334
2978
|
const { isSettingEnabled } = useSettingsContext();
|
|
2335
2979
|
const bankAccountFormatSelectionAllowed = isSettingEnabled(
|
|
2336
2980
|
SettingNames.AllowBankAccountFormatSelection
|
|
@@ -2340,11 +2984,12 @@ function PayoutAccount(props) {
|
|
|
2340
2984
|
country,
|
|
2341
2985
|
id,
|
|
2342
2986
|
legalEntityResponse,
|
|
2343
|
-
requiredFields =
|
|
2987
|
+
requiredFields = [],
|
|
2344
2988
|
arePayoutAccountDetailsInvalid,
|
|
2345
2989
|
invalidFieldNames,
|
|
2346
2990
|
formVerificationErrors,
|
|
2347
|
-
fieldValidationErrors
|
|
2991
|
+
fieldValidationErrors,
|
|
2992
|
+
preferredCurrencyCode
|
|
2348
2993
|
} = props;
|
|
2349
2994
|
const showCheckGuidance = shouldShowCheckGuidance(country);
|
|
2350
2995
|
const formUtils = createFormUtils({ ...props, requiredFields }, commonT);
|
|
@@ -2365,8 +3010,22 @@ function PayoutAccount(props) {
|
|
|
2365
3010
|
clearStateSlice();
|
|
2366
3011
|
payoutAccountFormat.value = accountFormat2;
|
|
2367
3012
|
};
|
|
3013
|
+
const localCurrency = isCrossBorderPayoutsEnabled ? isLocalCurrency(country, preferredCurrencyCode) : true;
|
|
3014
|
+
const isEUR = preferredCurrencyCode === "EUR";
|
|
3015
|
+
useEffect(() => {
|
|
3016
|
+
if (!isCrossBorderPayoutsEnabled) {
|
|
3017
|
+
return;
|
|
3018
|
+
}
|
|
3019
|
+
if (isEUR && localCurrency) {
|
|
3020
|
+
handleAccountFormatChange?.("iban");
|
|
3021
|
+
return;
|
|
3022
|
+
}
|
|
3023
|
+
if (!localCurrency) {
|
|
3024
|
+
handleAccountFormatChange?.("numberAndBic");
|
|
3025
|
+
}
|
|
3026
|
+
}, [country, preferredCurrencyCode]);
|
|
2368
3027
|
return /* @__PURE__ */ jsxs("form", { className: "adyen-kyc-individual__payout-account", "aria-describedby": "ariaErrorField", children: [
|
|
2369
|
-
/* @__PURE__ */ jsx(
|
|
3028
|
+
heading && /* @__PURE__ */ jsx(Header, { title: heading, children: /* @__PURE__ */ jsx(
|
|
2370
3029
|
AccountHolderDescriptionFragment,
|
|
2371
3030
|
{
|
|
2372
3031
|
slot: "description",
|
|
@@ -2383,7 +3042,7 @@ function PayoutAccount(props) {
|
|
|
2383
3042
|
}
|
|
2384
3043
|
),
|
|
2385
3044
|
showCheckGuidance ? /* @__PURE__ */ jsx(CheckGuidance, { annotated: checkAnnotation }) : void 0,
|
|
2386
|
-
bankAccountFormatSelectionAllowed && shouldShowPayoutAccountFormatSelector(country) && accountFormat && /* @__PURE__ */ jsx(
|
|
3045
|
+
bankAccountFormatSelectionAllowed && shouldShowPayoutAccountFormatSelector(country) && accountFormat && localCurrency && !isEUR && /* @__PURE__ */ jsx(
|
|
2387
3046
|
BankAccountFormat,
|
|
2388
3047
|
{
|
|
2389
3048
|
bankAccountFormat: accountFormat,
|
|
@@ -2415,14 +3074,14 @@ function PayoutAccount(props) {
|
|
|
2415
3074
|
formUtils.isRequiredField("bankName") && /* @__PURE__ */ jsx(BankName, { ...bankNameProps, dataStoreId: id }),
|
|
2416
3075
|
formUtils.isRequiredField("bankCode") && /* @__PURE__ */ jsx(BankCode, { ...bankCodeProps, country, dataStoreId: id }),
|
|
2417
3076
|
formUtils.isRequiredField("bankCity") && /* @__PURE__ */ jsx(BankCity, { ...bankCityProps, dataStoreId: id }),
|
|
2418
|
-
shouldShowPayoutAlert(country) && /* @__PURE__ */ jsx(
|
|
3077
|
+
shouldShowPayoutAlert(country) && !isCrossBorderPayoutsEnabled && /* @__PURE__ */ jsx(
|
|
2419
3078
|
Alert,
|
|
2420
3079
|
{
|
|
2421
|
-
title: getSupportedCurrencyGuidance(
|
|
3080
|
+
title: getSupportedCurrencyGuidance(t, country, requiredFields),
|
|
2422
3081
|
className: "adyen-kyc-u-margin-bottom-8"
|
|
2423
3082
|
}
|
|
2424
3083
|
),
|
|
2425
|
-
/* @__PURE__ */ jsx(Typography, { variant: "caption", color: "tertiary", children: t(($) => $["thisAccountWillBeVerifiedToPrevent"]) }),
|
|
3084
|
+
!isCrossBorderPayoutsEnabled && /* @__PURE__ */ jsx(Typography, { variant: "caption", color: "tertiary", children: t(($) => $["thisAccountWillBeVerifiedToPrevent"]) }),
|
|
2426
3085
|
arePayoutAccountDetailsInvalid && /* @__PURE__ */ jsx(
|
|
2427
3086
|
Alert,
|
|
2428
3087
|
{
|
|
@@ -2435,6 +3094,266 @@ function PayoutAccount(props) {
|
|
|
2435
3094
|
)
|
|
2436
3095
|
] });
|
|
2437
3096
|
}
|
|
3097
|
+
const currenciesDataset = /* @__PURE__ */ JSON.parse('[{"currencyCode":"AED","description":"UAE Dirham","exponent":2,"symbol":""},{"currencyCode":"ALL","description":"Albanian Lek","exponent":2,"symbol":"L"},{"currencyCode":"AMD","description":"Armenian Dram","exponent":2,"symbol":""},{"currencyCode":"ANG","description":"Antillian Guilder","exponent":2,"symbol":"Naƒ"},{"currencyCode":"AOA","description":"Angolan kwanza","exponent":2,"symbol":""},{"currencyCode":"ARS","description":"Nuevo Argentine Peso","exponent":2,"symbol":"$"},{"currencyCode":"AUD","description":"Australian Dollar","exponent":2,"symbol":"A$"},{"currencyCode":"AWG","description":"Aruban Guilder","exponent":2,"symbol":""},{"currencyCode":"AZN","description":"Azerbaijani manat","exponent":2,"symbol":"man"},{"currencyCode":"BAM","description":"Bosnia and Herzegovina Convertible Marks","exponent":2,"symbol":""},{"currencyCode":"BBD","description":"Barbados Dollar","exponent":2,"symbol":""},{"currencyCode":"BDT","description":"Bangladesh Taka","exponent":2,"symbol":""},{"currencyCode":"BGL","description":"Bulgaria Lev","exponent":2,"symbol":""},{"currencyCode":"BHD","description":"Bahraini Dinar","exponent":3,"symbol":""},{"currencyCode":"BMD","description":"Bermudian Dollar","exponent":2,"symbol":""},{"currencyCode":"BND","description":"Brunei Dollar","exponent":2,"symbol":""},{"currencyCode":"BOB","description":"Bolivia Boliviano","exponent":2,"symbol":""},{"currencyCode":"BRL","description":"Brazilian Real","exponent":2,"symbol":"R$"},{"currencyCode":"BSD","description":"Bahamian Dollar","exponent":2,"symbol":""},{"currencyCode":"BTN","description":"Bhutan Ngultrum","exponent":2,"symbol":"Nu."},{"currencyCode":"BWP","description":"Botswana Pula","exponent":2,"symbol":""},{"currencyCode":"BYN","description":"Belarusian Ruble","exponent":2,"symbol":"Br"},{"currencyCode":"BYR","description":"Belarusian Ruble","exponent":0,"symbol":"Br"},{"currencyCode":"BZD","description":"Belize Dollar","exponent":2,"symbol":""},{"currencyCode":"CAD","description":"Canadian Dollar","exponent":2,"symbol":"$"},{"currencyCode":"CHF","description":"Swiss Franc","exponent":2,"symbol":""},{"currencyCode":"CLP","description":"Chilean Peso","exponent":2,"symbol":"$"},{"currencyCode":"CNY","description":"Yuan Renminbi","exponent":2,"symbol":"¥"},{"currencyCode":"COP","description":"Colombian Peso","exponent":2,"symbol":"₱"},{"currencyCode":"CRC","description":"Costa Rican Colon","exponent":2,"symbol":""},{"currencyCode":"CSD","description":"Serbian Dinar","exponent":2,"symbol":""},{"currencyCode":"CUP","description":"Cuban Peso","exponent":2,"symbol":""},{"currencyCode":"CVE","description":"Cape Verdi Escudo","exponent":0,"symbol":""},{"currencyCode":"CZK","description":"Czech Koruna","exponent":2,"symbol":""},{"currencyCode":"DJF","description":"Djibouti Franc","exponent":0,"symbol":""},{"currencyCode":"DKK","description":"Danish Krone","exponent":2,"symbol":"kr"},{"currencyCode":"DOP","description":"Dominican Republic Peso","exponent":2,"symbol":""},{"currencyCode":"DZD","description":"Algerian Dinar","exponent":2,"symbol":""},{"currencyCode":"EEK","description":"Estonian Krone","exponent":2,"symbol":""},{"currencyCode":"EGP","description":"Egyptian Pound","exponent":2,"symbol":"£"},{"currencyCode":"ETB","description":"Ethiopian Birr","exponent":2,"symbol":""},{"currencyCode":"EUR","description":"Euro","exponent":2,"symbol":"€"},{"currencyCode":"FJD","description":"Fiji Dollar","exponent":2,"symbol":"$"},{"currencyCode":"FKP","description":"Falkland Islands Pound","exponent":2,"symbol":""},{"currencyCode":"GBP","description":"Pound Sterling","exponent":2,"symbol":"£"},{"currencyCode":"GEL","description":"Georgian Lari","exponent":2,"symbol":""},{"currencyCode":"GHC","description":"Ghanaian Cedi (2nd)","exponent":0,"symbol":""},{"currencyCode":"GHS","description":"Ghanaian Cedi (3rd)","exponent":2,"symbol":"GH₵"},{"currencyCode":"GIP","description":"Gibraltar Pound","exponent":2,"symbol":""},{"currencyCode":"GMD","description":"Gambia Delasi","exponent":2,"symbol":""},{"currencyCode":"GNF","description":"Guinea Franc","exponent":0,"symbol":""},{"currencyCode":"GTQ","description":"Guatemala Quetzal","exponent":2,"symbol":""},{"currencyCode":"GYD","description":"Guyanese Dollar","exponent":2,"symbol":""},{"currencyCode":"HKD","description":"Hong Kong Dollar","exponent":2,"symbol":"$"},{"currencyCode":"HNL","description":"Honduras Lempira","exponent":2,"symbol":""},{"currencyCode":"HRK","description":"Croatia Kuna","exponent":2,"symbol":""},{"currencyCode":"HTG","description":"Haitian Gourde","exponent":2,"symbol":""},{"currencyCode":"HUF","description":"Hungarian Forint","exponent":2,"symbol":"Ft"},{"currencyCode":"IDR","description":"Indonesian Rupiah","exponent":0,"symbol":""},{"currencyCode":"ILS","description":"New Israeli Scheqel","exponent":2,"symbol":"₪"},{"currencyCode":"INR","description":"Indian Rupee","exponent":2,"symbol":"₨"},{"currencyCode":"IQD","description":"Iraqi Dinar","exponent":3,"symbol":""},{"currencyCode":"ISK","description":"Iceland Krona","exponent":2,"symbol":""},{"currencyCode":"JMD","description":"Jamaican Dollar","exponent":2,"symbol":""},{"currencyCode":"JOD","description":"Jordanian Dinar","exponent":3,"symbol":""},{"currencyCode":"JPY","description":"Japanese Yen","exponent":0,"symbol":"¥"},{"currencyCode":"KES","description":"Kenyan Shilling","exponent":2,"symbol":""},{"currencyCode":"KGS","description":"Kyrgyzstan Som","exponent":2,"symbol":""},{"currencyCode":"KHR","description":"Cambodia Riel","exponent":2,"symbol":""},{"currencyCode":"KMF","description":"Comoro Franc","exponent":0,"symbol":""},{"currencyCode":"KRW","description":"South-Korean Won","exponent":0,"symbol":"₩"},{"currencyCode":"KWD","description":"Kuwaiti Dinar","exponent":3,"symbol":""},{"currencyCode":"KYD","description":"Cayman Islands Dollar","exponent":2,"symbol":""},{"currencyCode":"KZT","description":"Kazakhstani Tenge","exponent":2,"symbol":"8"},{"currencyCode":"LAK","description":"Laos Kip","exponent":2,"symbol":""},{"currencyCode":"LBP","description":"Lebanese Pound","exponent":2,"symbol":"£"},{"currencyCode":"LKR","description":"Sri Lanka Rupee","exponent":2,"symbol":"₨"},{"currencyCode":"LTL","description":"Lithunianian Litas","exponent":2,"symbol":""},{"currencyCode":"LVL","description":"Latvian Lats","exponent":2,"symbol":""},{"currencyCode":"LYD","description":"Libyan Dinar","exponent":3,"symbol":""},{"currencyCode":"MAD","description":"Moroccan Dirham","exponent":2,"symbol":""},{"currencyCode":"MDL","description":"Moldovia Leu","exponent":2,"symbol":""},{"currencyCode":"MKD","description":"Macedonian Denar","exponent":2,"symbol":"ден"},{"currencyCode":"MMK","description":"Myanmar Kyat","exponent":2,"symbol":""},{"currencyCode":"MNT","description":"Mongolia Tugrik","exponent":2,"symbol":""},{"currencyCode":"MOP","description":"Macau Pataca","exponent":2,"symbol":""},{"currencyCode":"MRO","description":"Mauritania Ouguiya","exponent":1,"symbol":""},{"currencyCode":"MRU","description":"Mauritania Ouguiya","exponent":2,"symbol":""},{"currencyCode":"MUR","description":"Mauritius Rupee","exponent":2,"symbol":""},{"currencyCode":"MVR","description":"Maldives Rufiyaa","exponent":2,"symbol":""},{"currencyCode":"MWK","description":"Malawi Kwacha","exponent":2,"symbol":""},{"currencyCode":"MXN","description":"Mexican Peso","exponent":2,"symbol":"$"},{"currencyCode":"MXP","description":"Mexican Peso","exponent":2,"symbol":""},{"currencyCode":"MYR","description":"Malaysian Ringgit","exponent":2,"symbol":""},{"currencyCode":"MZN","description":"Mozambican Metical","exponent":2,"symbol":""},{"currencyCode":"NAD","description":"Namibian Dollar","exponent":2,"symbol":"$"},{"currencyCode":"NGN","description":"Nigerian naira","exponent":2,"symbol":"&"},{"currencyCode":"NIO","description":"Nicaragua Cordoba Oro","exponent":2,"symbol":""},{"currencyCode":"NOK","description":"Norwegian Krone","exponent":2,"symbol":""},{"currencyCode":"NPR","description":"Nepalese Rupee","exponent":2,"symbol":""},{"currencyCode":"NZD","description":"New Zealand Dollar","exponent":2,"symbol":"$"},{"currencyCode":"OMR","description":"Rial Omani","exponent":3,"symbol":"﷼"},{"currencyCode":"PAB","description":"Panamanian Balboa","exponent":2,"symbol":""},{"currencyCode":"PEN","description":"Peruvian Nuevo Sol","exponent":2,"symbol":"S/."},{"currencyCode":"PGK","description":"New Guinea Kina","exponent":2,"symbol":""},{"currencyCode":"PHP","description":"Philippine Peso","exponent":2,"symbol":"₱"},{"currencyCode":"PKR","description":"Pakistan Rupee","exponent":2,"symbol":"₨"},{"currencyCode":"PLN","description":"New Polish Zloty","exponent":2,"symbol":""},{"currencyCode":"PYG","description":"Paraguay Guarani","exponent":0,"symbol":""},{"currencyCode":"QAR","description":"Qatari Rial","exponent":2,"symbol":"﷼"},{"currencyCode":"ROL","description":"Romanian Lei","exponent":2,"symbol":""},{"currencyCode":"RON","description":"New Romanian Lei","exponent":2,"symbol":""},{"currencyCode":"RSD","description":"Serbian Dinar","exponent":2,"symbol":"РСД"},{"currencyCode":"RUB","description":"Russian Ruble","exponent":2,"symbol":"руб"},{"currencyCode":"RWF","description":"Rwanda Franc","exponent":0,"symbol":""},{"currencyCode":"SAR","description":"Saudi Riyal","exponent":2,"symbol":"﷼"},{"currencyCode":"SBD","description":"Solomon Island Dollar","exponent":2,"symbol":""},{"currencyCode":"SCR","description":"Seychelles Rupee","exponent":2,"symbol":""},{"currencyCode":"SEK","description":"Swedish Krone","exponent":2,"symbol":"kr"},{"currencyCode":"SGD","description":"Singapore Dollar","exponent":2,"symbol":"$"},{"currencyCode":"SHP","description":"St. Helena Pound","exponent":2,"symbol":""},{"currencyCode":"SKK","description":"Slovak Koruna","exponent":2,"symbol":""},{"currencyCode":"SLE","description":"Sierra Leone Leone","exponent":2,"symbol":"Le"},{"currencyCode":"SLL","description":"Sierra Leone Leone","exponent":2,"symbol":""},{"currencyCode":"SOS","description":"Somalia Shilling","exponent":2,"symbol":""},{"currencyCode":"SRD","description":"Surinamese dollar","exponent":2,"symbol":"Sr$"},{"currencyCode":"STD","description":"Sao Tome & Principe Dobra","exponent":2,"symbol":""},{"currencyCode":"STN","description":"Sao Tome & Principe Dobra","exponent":2,"symbol":""},{"currencyCode":"SVC","description":"El Salvador Colón","exponent":2,"symbol":"₡"},{"currencyCode":"SZL","description":"Swaziland Lilangeni","exponent":2,"symbol":""},{"currencyCode":"THB","description":"Thai Baht","exponent":2,"symbol":"฿"},{"currencyCode":"TND","description":"Tunisian Dinar","exponent":3,"symbol":""},{"currencyCode":"TOP","description":"Tonga Pa’anga","exponent":2,"symbol":""},{"currencyCode":"TRY","description":"New Turkish Lira","exponent":2,"symbol":"₤"},{"currencyCode":"TTD","description":"Trinidad & Tobago Dollar","exponent":2,"symbol":""},{"currencyCode":"TWD","description":"New Taiwan Dollar","exponent":2,"symbol":"元"},{"currencyCode":"TZS","description":"Tanzanian Shilling","exponent":2,"symbol":""},{"currencyCode":"UAH","description":"Ukraine Hryvnia","exponent":2,"symbol":""},{"currencyCode":"UGX","description":"Uganda Shilling","exponent":0,"symbol":""},{"currencyCode":"USD","description":"US Dollars","exponent":2,"symbol":"$"},{"currencyCode":"UYU","description":"Peso Uruguayo","exponent":2,"symbol":"₱"},{"currencyCode":"UZS","description":"Uzbekistani Som","exponent":2,"symbol":"som"},{"currencyCode":"VEF","description":"Venezuelan Bolívar","exponent":2,"symbol":"Bs.F."},{"currencyCode":"VND","description":"Vietnamese New Dong","exponent":0,"symbol":"₫"},{"currencyCode":"VUV","description":"Vanuatu Vatu","exponent":0,"symbol":""},{"currencyCode":"WST","description":"Samoan Tala","exponent":2,"symbol":""},{"currencyCode":"XAF","description":"CFA Franc BEAC","exponent":0,"symbol":""},{"currencyCode":"XCD","description":"East Carribean Dollar","exponent":2,"symbol":"EC$"},{"currencyCode":"XOF","description":"CFA Franc BCEAO","exponent":0,"symbol":""},{"currencyCode":"XPF","description":"CFP Franc","exponent":0,"symbol":""},{"currencyCode":"YER","description":"Yemeni Rial","exponent":2,"symbol":""},{"currencyCode":"ZAR","description":"South African Rand","exponent":2,"symbol":"R"},{"currencyCode":"ZMK","description":"Zambia Kwacha","exponent":2,"symbol":""},{"currencyCode":"ZMW","description":"Zambian Kwacha","exponent":2,"symbol":""}]');
|
|
3098
|
+
const ALLOWED_PAYOUT_CURRENCIES = Object.keys(Currencies);
|
|
3099
|
+
const PreferredCurrency = (props) => {
|
|
3100
|
+
const { country, preferredCurrency, handleChangeFor } = props;
|
|
3101
|
+
const { t } = useTranslation(["common", "banking"]);
|
|
3102
|
+
const currencyDescriptionByCode = new Map(
|
|
3103
|
+
currenciesDataset.map((currency) => [currency.currencyCode, currency.description])
|
|
3104
|
+
);
|
|
3105
|
+
const getPrioritizedCurrencies = () => {
|
|
3106
|
+
const countryPreferredCurrencies = currencyByCountry[country] || [];
|
|
3107
|
+
const allowedCountryCurrencies = countryPreferredCurrencies.filter(
|
|
3108
|
+
(currency) => ALLOWED_PAYOUT_CURRENCIES.includes(currency)
|
|
3109
|
+
);
|
|
3110
|
+
const otherAllowedCurrencies = ALLOWED_PAYOUT_CURRENCIES.filter(
|
|
3111
|
+
(currency) => !allowedCountryCurrencies.includes(currency)
|
|
3112
|
+
);
|
|
3113
|
+
if (allowedCountryCurrencies.length > 0 && otherAllowedCurrencies.length > 0) {
|
|
3114
|
+
return [...allowedCountryCurrencies, null, ...otherAllowedCurrencies];
|
|
3115
|
+
}
|
|
3116
|
+
return [...allowedCountryCurrencies, ...otherAllowedCurrencies];
|
|
3117
|
+
};
|
|
3118
|
+
const prioritizedCurrencies = getPrioritizedCurrencies();
|
|
3119
|
+
const currenciesAsOptions = prioritizedCurrencies.map((currency) => {
|
|
3120
|
+
if (currency === null) {
|
|
3121
|
+
return {
|
|
3122
|
+
id: "separator",
|
|
3123
|
+
name: " ",
|
|
3124
|
+
disabled: true
|
|
3125
|
+
};
|
|
3126
|
+
}
|
|
3127
|
+
const description2 = currencyDescriptionByCode.get(currency);
|
|
3128
|
+
const label = description2 ? `${description2} (${currency})` : currency;
|
|
3129
|
+
return {
|
|
3130
|
+
id: currency,
|
|
3131
|
+
name: label
|
|
3132
|
+
};
|
|
3133
|
+
});
|
|
3134
|
+
const selectCurrency = (e) => {
|
|
3135
|
+
if (e.id === "separator") {
|
|
3136
|
+
return;
|
|
3137
|
+
}
|
|
3138
|
+
handleChangeFor("preferredCurrency")(e.id);
|
|
3139
|
+
};
|
|
3140
|
+
return /* @__PURE__ */ jsx(
|
|
3141
|
+
Field,
|
|
3142
|
+
{
|
|
3143
|
+
name: "preferredCurrency",
|
|
3144
|
+
label: t(($) => $["preferredPayoutCurrency"], { ns: "banking" }),
|
|
3145
|
+
helper: t(($) => $["ifYouChooseAPayoutCurrencyThatDoesntMatchYourBankAccount"], {
|
|
3146
|
+
ns: "banking"
|
|
3147
|
+
}),
|
|
3148
|
+
helperPosition: "below",
|
|
3149
|
+
children: (childProps) => /* @__PURE__ */ jsx(
|
|
3150
|
+
Select,
|
|
3151
|
+
{
|
|
3152
|
+
...childProps,
|
|
3153
|
+
onSelect: selectCurrency,
|
|
3154
|
+
name: "preferredPayoutCurrency",
|
|
3155
|
+
placeholder: t(($) => $["localFormat"], { ns: "banking" }),
|
|
3156
|
+
selected: preferredCurrency,
|
|
3157
|
+
items: currenciesAsOptions || []
|
|
3158
|
+
}
|
|
3159
|
+
)
|
|
3160
|
+
}
|
|
3161
|
+
);
|
|
3162
|
+
};
|
|
3163
|
+
const getMustHaveSameAccountHolderNameTransKey = (legalEntityType) => {
|
|
3164
|
+
switch (legalEntityType) {
|
|
3165
|
+
case "individual":
|
|
3166
|
+
case "soleProprietorship":
|
|
3167
|
+
return "theBankAccountHolderMustBeInYourName";
|
|
3168
|
+
case "organization":
|
|
3169
|
+
case "trust":
|
|
3170
|
+
case "unincorporatedPartnership":
|
|
3171
|
+
return "theBankAccountHolderMustHaveTheSameNameAsYourCompany";
|
|
3172
|
+
default:
|
|
3173
|
+
return "theBankAccountHolderMustHaveTheSameNameAsYourCompany";
|
|
3174
|
+
}
|
|
3175
|
+
};
|
|
3176
|
+
const payoutModalContent = "adyen-kyc-payout-modal-content";
|
|
3177
|
+
const title = "adyen-kyc-title";
|
|
3178
|
+
const section = "adyen-kyc-section";
|
|
3179
|
+
const sectionTitle = "adyen-kyc-section-title";
|
|
3180
|
+
const sectionText = "adyen-kyc-section-text";
|
|
3181
|
+
const simplerTermsBox = "adyen-kyc-simpler-terms-box";
|
|
3182
|
+
const simplerTermsTitle = "adyen-kyc-simpler-terms-title";
|
|
3183
|
+
const bulletList = "adyen-kyc-bullet-list";
|
|
3184
|
+
const styles$1 = {
|
|
3185
|
+
payoutModalContent,
|
|
3186
|
+
title,
|
|
3187
|
+
section,
|
|
3188
|
+
sectionTitle,
|
|
3189
|
+
sectionText,
|
|
3190
|
+
simplerTermsBox,
|
|
3191
|
+
simplerTermsTitle,
|
|
3192
|
+
bulletList
|
|
3193
|
+
};
|
|
3194
|
+
function PayoutRequirementsModal({
|
|
3195
|
+
isOpen,
|
|
3196
|
+
onClose,
|
|
3197
|
+
provider
|
|
3198
|
+
}) {
|
|
3199
|
+
const { t } = useTranslation("banking");
|
|
3200
|
+
if (!isOpen) return null;
|
|
3201
|
+
return /* @__PURE__ */ jsx(
|
|
3202
|
+
Modal,
|
|
3203
|
+
{
|
|
3204
|
+
ariaLabel: t(($) => $["aboutPayoutBankAccounts"]),
|
|
3205
|
+
onClose,
|
|
3206
|
+
size: "medium",
|
|
3207
|
+
showCloseButton: true,
|
|
3208
|
+
inset: true,
|
|
3209
|
+
children: /* @__PURE__ */ jsxs("div", { className: styles$1.payoutModalContent, children: [
|
|
3210
|
+
/* @__PURE__ */ jsx(Typography, { variant: "title-m", el: "h1", className: styles$1.title, children: t(($) => $["aboutPayoutBankAccounts"]) }),
|
|
3211
|
+
/* @__PURE__ */ jsxs("div", { className: styles$1.section, children: [
|
|
3212
|
+
/* @__PURE__ */ jsx(Typography, { variant: "body-strongest", el: "h3", className: styles$1.sectionTitle, children: t(($) => $["doesMyBankAccountNeedToBeInSameCountry"]) }),
|
|
3213
|
+
/* @__PURE__ */ jsx(Typography, { variant: "body", className: styles$1.sectionText, children: t(($) => $["countryDependsExplanation"]) })
|
|
3214
|
+
] }),
|
|
3215
|
+
/* @__PURE__ */ jsxs("div", { className: styles$1.section, children: [
|
|
3216
|
+
/* @__PURE__ */ jsx(Typography, { variant: "body-strongest", el: "h3", className: styles$1.sectionTitle, children: t(($) => $["whichPayoutCurrencyShouldIChoose"]) }),
|
|
3217
|
+
/* @__PURE__ */ jsx(Typography, { variant: "body", className: styles$1.sectionText, children: t(($) => $["currencyRecommendation"]) }),
|
|
3218
|
+
/* @__PURE__ */ jsxs("div", { className: styles$1.simplerTermsBox, children: [
|
|
3219
|
+
/* @__PURE__ */ jsx(Typography, { variant: "body-strongest", el: "h4", className: styles$1.simplerTermsTitle, children: t(($) => $["inSimplerTerms"]) }),
|
|
3220
|
+
/* @__PURE__ */ jsx(Typography, { variant: "body", children: t(($) => $["currencySimplerTerms"]) })
|
|
3221
|
+
] })
|
|
3222
|
+
] }),
|
|
3223
|
+
provider && /* @__PURE__ */ jsxs("div", { className: styles$1.section, children: [
|
|
3224
|
+
/* @__PURE__ */ jsx(Typography, { variant: "body-strongest", el: "h3", className: styles$1.sectionTitle, children: t(($) => $["howDoesVerificationWithOurPartnerWork"], {
|
|
3225
|
+
provider: provider?.name
|
|
3226
|
+
}) }),
|
|
3227
|
+
/* @__PURE__ */ jsx(Typography, { className: styles$1.sectionText, children: t(($) => $["isOurTrustedPartnerHelpingSpeedUpSetup"], {
|
|
3228
|
+
provider: provider?.name
|
|
3229
|
+
}) }),
|
|
3230
|
+
/* @__PURE__ */ jsxs("ul", { className: styles$1.bulletList, children: [
|
|
3231
|
+
/* @__PURE__ */ jsx("li", { children: t(($) => $["selectTheBankToReceivePayouts"]) }),
|
|
3232
|
+
/* @__PURE__ */ jsx("li", { children: t(($) => $["loginIntoYourBankingEnvironment"]) }),
|
|
3233
|
+
/* @__PURE__ */ jsx("li", { children: t(($) => $["yourBankWillConfirmYourAccountDetails"]) })
|
|
3234
|
+
] }),
|
|
3235
|
+
/* @__PURE__ */ jsx(Typography, { children: t(($) => $["adyenWillOnlyGetTemporaryAccess"]) })
|
|
3236
|
+
] })
|
|
3237
|
+
] })
|
|
3238
|
+
}
|
|
3239
|
+
);
|
|
3240
|
+
}
|
|
3241
|
+
const payoutCountryDetailsFields = [
|
|
3242
|
+
"bankCountry",
|
|
3243
|
+
"preferredCurrency"
|
|
3244
|
+
];
|
|
3245
|
+
const DEFAULT_CURRENCY_FALLBACK = "USD";
|
|
3246
|
+
const getDefaultCurrencyForCountry = (country) => currencyByCountry[country]?.[0] ?? DEFAULT_CURRENCY_FALLBACK;
|
|
3247
|
+
const getCountryCodeFromEvent = (event) => event?.target?.value;
|
|
3248
|
+
function PayoutCountryDetails(props) {
|
|
3249
|
+
const { legalEntityResponse, data: propData, provider } = props;
|
|
3250
|
+
const { t: commonT } = useTranslation("common");
|
|
3251
|
+
const { t } = useTranslation("banking");
|
|
3252
|
+
const { isSettingEnabled } = useSettingsContext();
|
|
3253
|
+
const country = getLegalEntityCountry(legalEntityResponse);
|
|
3254
|
+
const [isModalOpen, setIsModalOpen] = useState(false);
|
|
3255
|
+
const legalEntityType = legalEntityResponse.type;
|
|
3256
|
+
const defaultCurrency = getDefaultCurrencyForCountry(country);
|
|
3257
|
+
const { handleChangeFor, data, valid, errors, fieldProblems } = useForm({
|
|
3258
|
+
...props,
|
|
3259
|
+
schema: payoutCountryDetailsFields,
|
|
3260
|
+
defaultData: {
|
|
3261
|
+
bankCountry: propData?.bankCountry ?? country,
|
|
3262
|
+
preferredCurrency: propData?.preferredCurrency ?? defaultCurrency
|
|
3263
|
+
},
|
|
3264
|
+
shouldValidate: true
|
|
3265
|
+
});
|
|
3266
|
+
const formUtils = createFormUtils(props, commonT);
|
|
3267
|
+
const allowedBankCountries = Object.keys(currencyByCountry);
|
|
3268
|
+
const canChangeEntityType = isSettingEnabled(SettingNames.AllowLegalEntityTypeChange);
|
|
3269
|
+
const accountHolder = getPayoutAccountHolderName(legalEntityResponse, t);
|
|
3270
|
+
const description2 = canChangeEntityType ? /* @__PURE__ */ jsx(AccountHolderDescriptionFragment, { legalEntityResponse }) : /* @__PURE__ */ jsxs(Typography, { children: [
|
|
3271
|
+
t(($) => $["forYouToReceiveYourPayouts"]),
|
|
3272
|
+
" ",
|
|
3273
|
+
/* @__PURE__ */ jsx(
|
|
3274
|
+
Trans,
|
|
3275
|
+
{
|
|
3276
|
+
t,
|
|
3277
|
+
ns: "banking",
|
|
3278
|
+
i18nKey: ($) => $[getMustHaveSameAccountHolderNameTransKey(legalEntityType)],
|
|
3279
|
+
values: { name: accountHolder, companyName: accountHolder }
|
|
3280
|
+
}
|
|
3281
|
+
)
|
|
3282
|
+
] });
|
|
3283
|
+
const descriptionExtra = /* @__PURE__ */ jsx("div", { className: "adyen-kyc-u-margin-bottom-12", children: /* @__PURE__ */ jsx(
|
|
3284
|
+
Trans,
|
|
3285
|
+
{
|
|
3286
|
+
t,
|
|
3287
|
+
ns: "banking",
|
|
3288
|
+
i18nKey: ($) => $["payoutAccountsMustMeetSomeRequirements"],
|
|
3289
|
+
components: {
|
|
3290
|
+
requirementsLink: /* @__PURE__ */ jsx(
|
|
3291
|
+
"button",
|
|
3292
|
+
{
|
|
3293
|
+
type: "button",
|
|
3294
|
+
onClick: () => setIsModalOpen(true),
|
|
3295
|
+
style: {
|
|
3296
|
+
background: "none",
|
|
3297
|
+
border: "none",
|
|
3298
|
+
color: "inherit",
|
|
3299
|
+
textDecoration: "underline",
|
|
3300
|
+
cursor: "pointer",
|
|
3301
|
+
padding: 0,
|
|
3302
|
+
font: "inherit"
|
|
3303
|
+
}
|
|
3304
|
+
}
|
|
3305
|
+
)
|
|
3306
|
+
}
|
|
3307
|
+
}
|
|
3308
|
+
) });
|
|
3309
|
+
const { updateStateSlice } = useGlobalDataSlice(
|
|
3310
|
+
"payoutCountryDetails"
|
|
3311
|
+
);
|
|
3312
|
+
useEffect(() => {
|
|
3313
|
+
updateStateSlice({ data, valid, errors, fieldProblems });
|
|
3314
|
+
}, [data, valid, errors, updateStateSlice, fieldProblems]);
|
|
3315
|
+
const updateCountryField = (event) => {
|
|
3316
|
+
const updatedCountry = getCountryCodeFromEvent(event);
|
|
3317
|
+
handleChangeFor("bankCountry", "input")(updatedCountry);
|
|
3318
|
+
handleChangeFor("preferredCurrency", "input")(getDefaultCurrencyForCountry(updatedCountry));
|
|
3319
|
+
};
|
|
3320
|
+
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
3321
|
+
/* @__PURE__ */ jsxs("form", { style: { minHeight: "480px" }, children: [
|
|
3322
|
+
/* @__PURE__ */ jsx(Header, { title: t(($) => $["payoutBankAccount"]), children: /* @__PURE__ */ jsxs("div", { slot: "description", className: "adyen-kyc-form-header__description", children: [
|
|
3323
|
+
description2,
|
|
3324
|
+
descriptionExtra
|
|
3325
|
+
] }) }),
|
|
3326
|
+
/* @__PURE__ */ jsx(
|
|
3327
|
+
CountryField,
|
|
3328
|
+
{
|
|
3329
|
+
data: { country: data.bankCountry },
|
|
3330
|
+
valid: { country: valid?.bankCountry },
|
|
3331
|
+
errors: { country: formUtils.getErrorMessage("bankCountry", errors, fieldProblems) },
|
|
3332
|
+
labels: { country: t(($) => $["bankAccountCountryRegion"]) },
|
|
3333
|
+
readonly: false,
|
|
3334
|
+
allowedCountries: allowedBankCountries,
|
|
3335
|
+
handleChangeFor: () => updateCountryField
|
|
3336
|
+
}
|
|
3337
|
+
),
|
|
3338
|
+
/* @__PURE__ */ jsx(
|
|
3339
|
+
PreferredCurrency,
|
|
3340
|
+
{
|
|
3341
|
+
country: data.bankCountry,
|
|
3342
|
+
preferredCurrency: data.preferredCurrency ?? defaultCurrency,
|
|
3343
|
+
handleChangeFor
|
|
3344
|
+
}
|
|
3345
|
+
)
|
|
3346
|
+
] }),
|
|
3347
|
+
/* @__PURE__ */ jsx(
|
|
3348
|
+
PayoutRequirementsModal,
|
|
3349
|
+
{
|
|
3350
|
+
isOpen: isModalOpen,
|
|
3351
|
+
onClose: () => setIsModalOpen(false),
|
|
3352
|
+
provider
|
|
3353
|
+
}
|
|
3354
|
+
)
|
|
3355
|
+
] });
|
|
3356
|
+
}
|
|
2438
3357
|
const regions = {
|
|
2439
3358
|
europe: [
|
|
2440
3359
|
...EEA_Countries,
|
|
@@ -2456,6 +3375,12 @@ const instantVerificationImage = lazy(
|
|
|
2456
3375
|
const manualVerificationImage = lazy(
|
|
2457
3376
|
() => import("./manual-verification-BvZWqA00.js")
|
|
2458
3377
|
);
|
|
3378
|
+
const instantVerificationImageNew = lazy(
|
|
3379
|
+
() => import("./payout-verification-instant-5u-wvFKv.js")
|
|
3380
|
+
);
|
|
3381
|
+
const manualVerificationImageNew = lazy(
|
|
3382
|
+
() => import("./payout-verification-manual-BH2mu0UW.js")
|
|
3383
|
+
);
|
|
2459
3384
|
const getProviderIconName = (providerName) => {
|
|
2460
3385
|
switch (providerName?.toLowerCase()) {
|
|
2461
3386
|
case "tink":
|
|
@@ -2468,12 +3393,12 @@ const getProviderIconName = (providerName) => {
|
|
|
2468
3393
|
return void 0;
|
|
2469
3394
|
}
|
|
2470
3395
|
};
|
|
2471
|
-
const makePayoutVerificationMethodsMetadata = (instantVerificationProviderName) => ({
|
|
3396
|
+
const makePayoutVerificationMethodsMetadata = (instantVerificationProviderName, makePayoutVerificationMethodsMetadata2) => ({
|
|
2472
3397
|
instantVerification: {
|
|
2473
3398
|
name: "verifyViaMobileBankingAppOrWebsite",
|
|
2474
3399
|
subtitle: "instant",
|
|
3400
|
+
svgImport: makePayoutVerificationMethodsMetadata2 ? instantVerificationImageNew : instantVerificationImage,
|
|
2475
3401
|
description: "instantVerificationDescription",
|
|
2476
|
-
svgImport: instantVerificationImage,
|
|
2477
3402
|
provider: instantVerificationProviderName ? {
|
|
2478
3403
|
name: instantVerificationProviderName,
|
|
2479
3404
|
svgImport: getProviderIconName(instantVerificationProviderName)
|
|
@@ -2483,39 +3408,109 @@ const makePayoutVerificationMethodsMetadata = (instantVerificationProviderName)
|
|
|
2483
3408
|
name: "uploadABankStatement",
|
|
2484
3409
|
subtitle: "mayTakeAFewDays",
|
|
2485
3410
|
description: "manualVerificationDescription",
|
|
2486
|
-
svgImport: manualVerificationImage
|
|
3411
|
+
svgImport: makePayoutVerificationMethodsMetadata2 ? manualVerificationImageNew : manualVerificationImage
|
|
2487
3412
|
}
|
|
2488
3413
|
});
|
|
2489
3414
|
const payoutVerificationMethods = ["instantVerification", "manualVerification"];
|
|
2490
|
-
const
|
|
3415
|
+
const fieldVerificationMethods = "adyen-kyc-field-verification-methods";
|
|
3416
|
+
const fieldVerificationMethodsCard = "adyen-kyc-field-verification-methods-card";
|
|
3417
|
+
const fieldVerificationMethodsFooter = "adyen-kyc-field-verification-methods-footer";
|
|
3418
|
+
const fieldVerificationMethodsLogo = "adyen-kyc-field-verification-methods-logo";
|
|
3419
|
+
const radioGroupCardIllustration = "adyen-kyc-radio-group-card-illustration";
|
|
3420
|
+
const instantVerificationError = "adyen-kyc-instant-verification-error";
|
|
3421
|
+
const payoutVerificationMethodCard = "adyen-kyc-payout-verification-method-card";
|
|
3422
|
+
const payoutVerificationMethodCardDisabled = "adyen-kyc-payout-verification-method-card-disabled";
|
|
3423
|
+
const payoutVerificationMethodCardImage = "adyen-kyc-payout-verification-method-card-image";
|
|
3424
|
+
const payoutVerificationMethodCardContent = "adyen-kyc-payout-verification-method-card-content";
|
|
3425
|
+
const payoutVerificationMethodCardTitle = "adyen-kyc-payout-verification-method-card-title";
|
|
3426
|
+
const payoutVerificationMethodCardSubtitle = "adyen-kyc-payout-verification-method-card-subtitle";
|
|
3427
|
+
const payoutVerificationMethodCardBody = "adyen-kyc-payout-verification-method-card-body";
|
|
3428
|
+
const payoutVerificationMethodCardImageContainer = "adyen-kyc-payout-verification-method-card-image-container";
|
|
3429
|
+
const styles = {
|
|
3430
|
+
fieldVerificationMethods,
|
|
3431
|
+
fieldVerificationMethodsCard,
|
|
3432
|
+
fieldVerificationMethodsFooter,
|
|
3433
|
+
fieldVerificationMethodsLogo,
|
|
3434
|
+
radioGroupCardIllustration,
|
|
3435
|
+
instantVerificationError,
|
|
3436
|
+
payoutVerificationMethodCard,
|
|
3437
|
+
payoutVerificationMethodCardDisabled,
|
|
3438
|
+
payoutVerificationMethodCardImage,
|
|
3439
|
+
payoutVerificationMethodCardContent,
|
|
3440
|
+
payoutVerificationMethodCardTitle,
|
|
3441
|
+
payoutVerificationMethodCardSubtitle,
|
|
3442
|
+
payoutVerificationMethodCardBody,
|
|
3443
|
+
payoutVerificationMethodCardImageContainer
|
|
3444
|
+
};
|
|
3445
|
+
const PayoutVerificationMethodOptionIcon = ({
|
|
2491
3446
|
method,
|
|
2492
3447
|
methodsMetadata
|
|
2493
3448
|
}) => {
|
|
2494
|
-
const {
|
|
2495
|
-
|
|
2496
|
-
return provider ? /* @__PURE__ */ jsxs(Typography, { variant: "caption", className: "adyen-kyc-field-verification-methods__footer", children: [
|
|
2497
|
-
i18n.get("poweredBy"),
|
|
2498
|
-
provider.svgImport ? /* @__PURE__ */ jsx(
|
|
2499
|
-
Image,
|
|
2500
|
-
{
|
|
2501
|
-
className: "adyen-kyc-field-verification-methods__logo",
|
|
2502
|
-
lazyLoadedImage: provider.svgImport
|
|
2503
|
-
}
|
|
2504
|
-
) : ` ${provider.name}`
|
|
2505
|
-
] }) : null;
|
|
3449
|
+
const { svgImport } = methodsMetadata[method];
|
|
3450
|
+
return /* @__PURE__ */ jsx(Image, { className: styles.payoutVerificationMethodCardImage, lazyLoadedImage: svgImport });
|
|
2506
3451
|
};
|
|
2507
|
-
const
|
|
2508
|
-
|
|
2509
|
-
|
|
2510
|
-
|
|
2511
|
-
|
|
2512
|
-
|
|
2513
|
-
|
|
2514
|
-
|
|
2515
|
-
|
|
2516
|
-
|
|
2517
|
-
|
|
3452
|
+
const PayoutVerificationMethodOptionCard = ({
|
|
3453
|
+
payoutMethod,
|
|
3454
|
+
title: title2,
|
|
3455
|
+
subtitle,
|
|
3456
|
+
tag,
|
|
3457
|
+
selectVerificationMethod,
|
|
3458
|
+
payoutVerificationMethod,
|
|
3459
|
+
methodsMetadata,
|
|
3460
|
+
bankInfoValidated,
|
|
3461
|
+
instantVerificationAvailable,
|
|
3462
|
+
enabledUnbiasedSelectionOnCardClick
|
|
3463
|
+
}) => {
|
|
3464
|
+
const isInstantVerificationCard = payoutMethod === "instantVerification";
|
|
3465
|
+
const isCardDisabled = bankInfoValidated || isInstantVerificationCard && !instantVerificationAvailable;
|
|
3466
|
+
return /* @__PURE__ */ jsxs(
|
|
3467
|
+
Card,
|
|
3468
|
+
{
|
|
3469
|
+
className: cx(styles.payoutVerificationMethodCard, {
|
|
3470
|
+
"adyen-kyc-u-margin-bottom-8": isInstantVerificationCard,
|
|
3471
|
+
[styles.payoutVerificationMethodCardDisabled]: isCardDisabled
|
|
3472
|
+
}),
|
|
3473
|
+
bodyClassName: styles.payoutVerificationMethodCardBody,
|
|
3474
|
+
onClick: () => selectVerificationMethod(payoutMethod),
|
|
3475
|
+
stateful: !enabledUnbiasedSelectionOnCardClick,
|
|
3476
|
+
active: payoutMethod === payoutVerificationMethod,
|
|
3477
|
+
disabled: isCardDisabled,
|
|
3478
|
+
children: [
|
|
3479
|
+
/* @__PURE__ */ jsx("div", { className: styles.payoutVerificationMethodCardImageContainer, children: /* @__PURE__ */ jsx(
|
|
3480
|
+
PayoutVerificationMethodOptionIcon,
|
|
3481
|
+
{
|
|
3482
|
+
method: payoutMethod,
|
|
3483
|
+
methodsMetadata
|
|
3484
|
+
}
|
|
3485
|
+
) }),
|
|
3486
|
+
/* @__PURE__ */ jsxs("div", { className: styles.payoutVerificationMethodCardContent, children: [
|
|
3487
|
+
tag,
|
|
3488
|
+
/* @__PURE__ */ jsx(
|
|
3489
|
+
Typography,
|
|
3490
|
+
{
|
|
3491
|
+
el: "h4",
|
|
3492
|
+
variant: "body-strongest",
|
|
3493
|
+
className: styles.payoutVerificationMethodCardTitle,
|
|
3494
|
+
children: title2
|
|
3495
|
+
}
|
|
3496
|
+
),
|
|
3497
|
+
/* @__PURE__ */ jsx(
|
|
3498
|
+
Typography,
|
|
3499
|
+
{
|
|
3500
|
+
el: "p",
|
|
3501
|
+
variant: "body",
|
|
3502
|
+
color: "secondary",
|
|
3503
|
+
className: styles.payoutVerificationMethodCardSubtitle,
|
|
3504
|
+
children: subtitle
|
|
3505
|
+
}
|
|
3506
|
+
)
|
|
3507
|
+
] })
|
|
3508
|
+
]
|
|
3509
|
+
},
|
|
3510
|
+
payoutMethod
|
|
3511
|
+
);
|
|
2518
3512
|
};
|
|
3513
|
+
const payoutVerificationMethodFields = ["payoutVerificationMethod", "bankCountry", ...accountVerificationFields];
|
|
2519
3514
|
function PayoutVerificationMethod(props) {
|
|
2520
3515
|
const {
|
|
2521
3516
|
heading,
|
|
@@ -2534,16 +3529,20 @@ function PayoutVerificationMethod(props) {
|
|
|
2534
3529
|
const { type: legalEntityType } = legalEntityResponse;
|
|
2535
3530
|
const { t } = useTranslation("banking");
|
|
2536
3531
|
const { t: commonT } = useTranslation("common");
|
|
2537
|
-
const
|
|
3532
|
+
const instantVerificationError2 = useContext(InstantVerificationErrorContext);
|
|
2538
3533
|
const { isSettingEnabled } = useSettingsContext();
|
|
2539
3534
|
const { isExperimentEnabled } = useExperimentsContext();
|
|
2540
3535
|
const canChangeEntityType = isSettingEnabled(SettingNames.AllowLegalEntityTypeChange);
|
|
3536
|
+
const isPayoutVerificationMethodPageRedesignEnabled = isExperimentEnabled(
|
|
3537
|
+
ExperimentNames.EnablePayoutVerificationMethodPageRedesign
|
|
3538
|
+
);
|
|
2541
3539
|
const intraRegionCrossBorderPayoutsAllowed = isSettingEnabled(
|
|
2542
3540
|
SettingNames.AllowIntraRegionCrossBorderPayout
|
|
2543
3541
|
);
|
|
2544
|
-
const
|
|
2545
|
-
|
|
3542
|
+
const enabledUnbiasedSelectionOnCardClick = isExperimentEnabled(
|
|
3543
|
+
ExperimentNames.BankVerificationMethodAutonomy_UnbiasedSelectionOnCardClick
|
|
2546
3544
|
);
|
|
3545
|
+
const enabledUnbiasedVerificationMethod = enabledUnbiasedSelectionOnCardClick || isExperimentEnabled(ExperimentNames.BankVerificationMethodAutonomy_UnbiasedSelectionOnContinue);
|
|
2547
3546
|
const [hasSelectedMethod, setHasSelectedMethod] = useState(false);
|
|
2548
3547
|
const { handleChangeFor, data, valid, errors, fieldProblems } = useForm({
|
|
2549
3548
|
...props,
|
|
@@ -2569,7 +3568,27 @@ function PayoutVerificationMethod(props) {
|
|
|
2569
3568
|
() => updateStateSlice({ data: { ...sliceData, ...data }, errors, valid, fieldProblems }),
|
|
2570
3569
|
[data, errors, fieldProblems, valid]
|
|
2571
3570
|
);
|
|
2572
|
-
const methodsMetadata = makePayoutVerificationMethodsMetadata(
|
|
3571
|
+
const methodsMetadata = makePayoutVerificationMethodsMetadata(
|
|
3572
|
+
provider?.name,
|
|
3573
|
+
isPayoutVerificationMethodPageRedesignEnabled
|
|
3574
|
+
);
|
|
3575
|
+
const PayoutVerificationMethodOptionFooter = ({
|
|
3576
|
+
method,
|
|
3577
|
+
methodsMetadata: methodsMetadata2
|
|
3578
|
+
}) => {
|
|
3579
|
+
const { t: t2 } = useTranslation("common");
|
|
3580
|
+
const { provider: provider2 } = methodsMetadata2[method];
|
|
3581
|
+
return provider2 ? /* @__PURE__ */ jsxs(Typography, { el: "div", variant: "caption", className: styles.fieldVerificationMethodsFooter, children: [
|
|
3582
|
+
t2(($) => $["poweredBy"]),
|
|
3583
|
+
provider2.svgImport ? /* @__PURE__ */ jsx(
|
|
3584
|
+
Image,
|
|
3585
|
+
{
|
|
3586
|
+
className: styles.fieldVerificationMethodsLogo,
|
|
3587
|
+
lazyLoadedImage: provider2.svgImport
|
|
3588
|
+
}
|
|
3589
|
+
) : ` ${provider2.name}`
|
|
3590
|
+
] }) : null;
|
|
3591
|
+
};
|
|
2573
3592
|
const selectVerificationMethod = (method) => {
|
|
2574
3593
|
setHasSelectedMethod(true);
|
|
2575
3594
|
handleChangeFor("payoutVerificationMethod")(method);
|
|
@@ -2598,7 +3617,7 @@ function PayoutVerificationMethod(props) {
|
|
|
2598
3617
|
data: { country: data.bankCountry },
|
|
2599
3618
|
valid: { country: valid?.bankCountry },
|
|
2600
3619
|
errors: { country: formUtils.getErrorMessage("bankCountry", errors, fieldProblems) },
|
|
2601
|
-
labels: { country:
|
|
3620
|
+
labels: { country: t(($) => $["bankAccountCountryRegion"]) },
|
|
2602
3621
|
readonly: !intraRegionCrossBorderPayoutsAllowed || allowedBankCountries.length === 1 || bankInfoValidated,
|
|
2603
3622
|
allowedCountries: allowedBankCountries,
|
|
2604
3623
|
handleChangeFor: () => (e) => {
|
|
@@ -2612,7 +3631,7 @@ function PayoutVerificationMethod(props) {
|
|
|
2612
3631
|
}
|
|
2613
3632
|
}
|
|
2614
3633
|
);
|
|
2615
|
-
const
|
|
3634
|
+
const description2 = canChangeEntityType ? /* @__PURE__ */ jsx(AccountHolderDescriptionFragment, { legalEntityResponse }) : /* @__PURE__ */ jsxs(Typography, { children: [
|
|
2616
3635
|
t(($) => $["forYouToReceiveYourPayouts"]),
|
|
2617
3636
|
" ",
|
|
2618
3637
|
/* @__PURE__ */ jsx(
|
|
@@ -2625,18 +3644,18 @@ function PayoutVerificationMethod(props) {
|
|
|
2625
3644
|
}
|
|
2626
3645
|
)
|
|
2627
3646
|
] });
|
|
2628
|
-
return /* @__PURE__ */ jsxs("form", { className:
|
|
2629
|
-
/* @__PURE__ */ jsx(
|
|
2630
|
-
|
|
3647
|
+
return /* @__PURE__ */ jsxs("form", { className: styles.payoutVerificationMethod, children: [
|
|
3648
|
+
heading && /* @__PURE__ */ jsx(Header, { title: heading, children: /* @__PURE__ */ jsx("template", { slot: "description", children: description2 }) }),
|
|
3649
|
+
instantVerificationError2 && /* @__PURE__ */ jsx(
|
|
2631
3650
|
Alert,
|
|
2632
3651
|
{
|
|
2633
3652
|
variant: "error",
|
|
2634
|
-
className:
|
|
2635
|
-
title:
|
|
2636
|
-
children:
|
|
3653
|
+
className: styles.instantVerificationError,
|
|
3654
|
+
title: instantVerificationError2.title,
|
|
3655
|
+
children: instantVerificationError2.content && /* @__PURE__ */ jsx("p", { className: "adyen-kyc-u-margin-0", children: instantVerificationError2.content })
|
|
2637
3656
|
}
|
|
2638
3657
|
),
|
|
2639
|
-
countryField,
|
|
3658
|
+
!isExperimentEnabled(ExperimentNames.EnableCrossBorderPayouts) && countryField,
|
|
2640
3659
|
/* @__PURE__ */ jsx(
|
|
2641
3660
|
Field,
|
|
2642
3661
|
{
|
|
@@ -2647,7 +3666,35 @@ function PayoutVerificationMethod(props) {
|
|
|
2647
3666
|
helper: instantVerificationAvailable ? void 0 : t(($) => $["weDoNotYetSupportInstantVerificationForBankAccountsIn"], {
|
|
2648
3667
|
countryName: bankCountryName
|
|
2649
3668
|
}),
|
|
2650
|
-
children: (childProps) => /* @__PURE__ */
|
|
3669
|
+
children: (childProps) => isPayoutVerificationMethodPageRedesignEnabled ? /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
3670
|
+
/* @__PURE__ */ jsx(
|
|
3671
|
+
PayoutVerificationMethodOptionCard,
|
|
3672
|
+
{
|
|
3673
|
+
payoutMethod: "instantVerification",
|
|
3674
|
+
title: t(($) => $["logInWithYourBank"]),
|
|
3675
|
+
subtitle: t(($) => $["theFastestWayToVerifyYourAccount"]),
|
|
3676
|
+
tag: /* @__PURE__ */ jsx(Tag, { variant: "blue", className: "adyen-kyc-u-margin-bottom-8", children: t(($) => $["recommended"]) }),
|
|
3677
|
+
selectVerificationMethod,
|
|
3678
|
+
methodsMetadata,
|
|
3679
|
+
payoutVerificationMethod: data.payoutVerificationMethod,
|
|
3680
|
+
instantVerificationAvailable,
|
|
3681
|
+
bankInfoValidated,
|
|
3682
|
+
enabledUnbiasedSelectionOnCardClick
|
|
3683
|
+
}
|
|
3684
|
+
),
|
|
3685
|
+
/* @__PURE__ */ jsx(
|
|
3686
|
+
PayoutVerificationMethodOptionCard,
|
|
3687
|
+
{
|
|
3688
|
+
payoutMethod: "manualVerification",
|
|
3689
|
+
title: t(($) => $["verifyManually"]),
|
|
3690
|
+
subtitle: t(($) => $["enterYourAccountsDetailsOnYourOwn"]),
|
|
3691
|
+
selectVerificationMethod,
|
|
3692
|
+
methodsMetadata,
|
|
3693
|
+
payoutVerificationMethod: data.payoutVerificationMethod,
|
|
3694
|
+
enabledUnbiasedSelectionOnCardClick
|
|
3695
|
+
}
|
|
3696
|
+
)
|
|
3697
|
+
] }) : /* @__PURE__ */ jsx(
|
|
2651
3698
|
RadioGroupCard,
|
|
2652
3699
|
{
|
|
2653
3700
|
...childProps,
|
|
@@ -2656,15 +3703,21 @@ function PayoutVerificationMethod(props) {
|
|
|
2656
3703
|
onSelect: selectVerificationMethod,
|
|
2657
3704
|
selected: data.payoutVerificationMethod,
|
|
2658
3705
|
optionId: (method) => method,
|
|
2659
|
-
optionName: (method) => methodsMetadata[method].name,
|
|
2660
|
-
optionDescription: (method) => methodsMetadata[method].description,
|
|
2661
|
-
optionSubtitle: (method) => methodsMetadata[method].subtitle,
|
|
2662
|
-
className:
|
|
3706
|
+
optionName: (method) => t(($) => $[methodsMetadata[method].name]),
|
|
3707
|
+
optionDescription: (method) => t(($) => $[methodsMetadata[method].description]),
|
|
3708
|
+
optionSubtitle: (method) => t(($) => $[methodsMetadata[method].subtitle]),
|
|
3709
|
+
className: styles.fieldVerificationMethods,
|
|
2663
3710
|
optionClassNames: () => ({
|
|
2664
|
-
label:
|
|
3711
|
+
label: styles.fieldVerificationMethodsCard
|
|
2665
3712
|
}),
|
|
2666
3713
|
isOptionDisabled: (option) => bankInfoValidated || option === "instantVerification" && !instantVerificationAvailable,
|
|
2667
|
-
renderOptionIcon: (method) => /* @__PURE__ */ jsx("div", { className:
|
|
3714
|
+
renderOptionIcon: (method) => /* @__PURE__ */ jsx("div", { className: styles.radioGroupCardIllustration, children: /* @__PURE__ */ jsx(
|
|
3715
|
+
PayoutVerificationMethodOptionIcon,
|
|
3716
|
+
{
|
|
3717
|
+
method,
|
|
3718
|
+
methodsMetadata
|
|
3719
|
+
}
|
|
3720
|
+
) }),
|
|
2668
3721
|
renderOptionFooter: (method) => /* @__PURE__ */ jsx(
|
|
2669
3722
|
PayoutVerificationMethodOptionFooter,
|
|
2670
3723
|
{
|
|
@@ -2674,7 +3727,7 @@ function PayoutVerificationMethod(props) {
|
|
|
2674
3727
|
),
|
|
2675
3728
|
floatingRadio: true
|
|
2676
3729
|
}
|
|
2677
|
-
)
|
|
3730
|
+
)
|
|
2678
3731
|
}
|
|
2679
3732
|
),
|
|
2680
3733
|
/* @__PURE__ */ jsx(
|
|
@@ -2711,6 +3764,11 @@ function PayoutVerificationMethod(props) {
|
|
|
2711
3764
|
] });
|
|
2712
3765
|
}
|
|
2713
3766
|
const payoutSteps = {
|
|
3767
|
+
payoutCountryDetails: {
|
|
3768
|
+
formId: "payoutCountryDetails",
|
|
3769
|
+
formName: "payoutCountryDetails",
|
|
3770
|
+
fields: payoutCountryDetailsFields
|
|
3771
|
+
},
|
|
2714
3772
|
payoutVerificationMethod: {
|
|
2715
3773
|
formId: "payoutVerificationMethod",
|
|
2716
3774
|
formName: "verificationMethod",
|
|
@@ -2725,7 +3783,6 @@ const payoutSteps = {
|
|
|
2725
3783
|
formId: "payoutAccountDocuments",
|
|
2726
3784
|
formName: "bankDocument",
|
|
2727
3785
|
formHeader: "bankDocumentHeader",
|
|
2728
|
-
formDescription: "bankDocumentDescription",
|
|
2729
3786
|
fields: bankDocumentFields
|
|
2730
3787
|
},
|
|
2731
3788
|
payoutAccountVerification: {
|
|
@@ -2734,6 +3791,7 @@ const payoutSteps = {
|
|
|
2734
3791
|
fields: accountVerificationFields
|
|
2735
3792
|
}
|
|
2736
3793
|
};
|
|
3794
|
+
const PayoutCountryDetailsFormID = payoutSteps.payoutCountryDetails.formId;
|
|
2737
3795
|
const PayoutVerificationMethodFormID = payoutSteps.payoutVerificationMethod.formId;
|
|
2738
3796
|
const PayoutAccountDocumentsFormID = payoutSteps.payoutAccountDocuments.formId;
|
|
2739
3797
|
const PayoutAccountVerificationFormID = payoutSteps.payoutAccountVerification.formId;
|
|
@@ -2757,12 +3815,14 @@ function PayoutDetails(props) {
|
|
|
2757
3815
|
onBack,
|
|
2758
3816
|
trustedTransferInstrumentId
|
|
2759
3817
|
} = props;
|
|
2760
|
-
const [
|
|
3818
|
+
const [instantVerificationError2, setInstantVerificationError] = useInstantVerificationErrorNotification(1e4);
|
|
3819
|
+
const payoutCountryDetailsFormProps = getFormProps(props, PayoutCountryDetailsFormID);
|
|
2761
3820
|
const verificationMethodFormProps = getFormProps(props, PayoutVerificationMethodFormID);
|
|
2762
3821
|
const accountVerificationFormProps = getFormProps(props, PayoutAccountVerificationFormID);
|
|
2763
3822
|
const payoutAccountFormProps = getFormProps(props, payoutSteps.payoutAccountDetails.formId);
|
|
2764
3823
|
const bankDocumentFormProps = getFormProps(props, PayoutAccountDocumentsFormID);
|
|
2765
|
-
const
|
|
3824
|
+
const { isExperimentEnabled } = useExperimentsContext();
|
|
3825
|
+
const isCrossBorderPayoutsEnabled = isExperimentEnabled("EnableCrossBorderPayouts");
|
|
2766
3826
|
const isBankStatementDocumentOptional = createFormUtils(
|
|
2767
3827
|
bankDocumentFormProps ?? {},
|
|
2768
3828
|
commonT
|
|
@@ -2771,10 +3831,7 @@ function PayoutDetails(props) {
|
|
|
2771
3831
|
const data = isEmpty(globalData) || propData?.payoutAccountDetails?.transferInstrumentId ? propData : globalData;
|
|
2772
3832
|
const resetData = useResetGlobalData();
|
|
2773
3833
|
const verifyInstantly = data?.payoutVerificationMethod?.payoutVerificationMethod === "instantVerification";
|
|
2774
|
-
const bankCountry = data?.payoutVerificationMethod?.bankCountry ?? country;
|
|
2775
|
-
const bankDocumentDescription = t(
|
|
2776
|
-
($) => $[legalEntityResponse.type === "individual" ? "toHelpVerifyYourBankDetailsIndividual" : "toHelpVerifyYourBankDetailsBusiness"]
|
|
2777
|
-
);
|
|
3834
|
+
const bankCountry = (isExperimentEnabled(ExperimentNames.EnableCrossBorderPayouts) ? data?.payoutCountryDetails?.bankCountry : data?.payoutVerificationMethod?.bankCountry) ?? country;
|
|
2778
3835
|
useEffect(() => resetData(), [resetData]);
|
|
2779
3836
|
useEffect(() => {
|
|
2780
3837
|
if (activeForm?.formId === summaryStep.formId && verifyInstantly && trustedTransferInstrumentId) {
|
|
@@ -2785,7 +3842,11 @@ function PayoutDetails(props) {
|
|
|
2785
3842
|
const [arePayoutAccountDetailsInvalid, setArePayoutAccountDetailsInvalid] = useState(false);
|
|
2786
3843
|
const [invalidFieldNames, setInvalidFieldNames] = useState("");
|
|
2787
3844
|
const payload = useMemo(
|
|
2788
|
-
() => bankCountry && accountDetailsFromInput ? getAccountIdentificationFromPayoutAccountSchema(
|
|
3845
|
+
() => bankCountry && accountDetailsFromInput ? getAccountIdentificationFromPayoutAccountSchema(
|
|
3846
|
+
accountDetailsFromInput,
|
|
3847
|
+
bankCountry,
|
|
3848
|
+
isCrossBorderPayoutsEnabled
|
|
3849
|
+
) : {},
|
|
2789
3850
|
[accountDetailsFromInput, bankCountry]
|
|
2790
3851
|
);
|
|
2791
3852
|
const validateAccountDetails = useAsyncAccountDetailsValidationRules(
|
|
@@ -2808,16 +3869,30 @@ function PayoutDetails(props) {
|
|
|
2808
3869
|
}
|
|
2809
3870
|
}, [t, validateAccountDetails]);
|
|
2810
3871
|
return /* @__PURE__ */ jsxs("div", { className: "adyen-kyc-payout", children: [
|
|
3872
|
+
/* @__PURE__ */ jsx(
|
|
3873
|
+
"div",
|
|
3874
|
+
{
|
|
3875
|
+
className: activeForm?.formId !== "payoutCountryDetails" ? "adyen-kyc-form-wrapper adyen-kyc-form-wrapper--hidden" : "adyen-kyc-form-wrapper",
|
|
3876
|
+
children: /* @__PURE__ */ jsx(
|
|
3877
|
+
PayoutCountryDetails,
|
|
3878
|
+
{
|
|
3879
|
+
...payoutCountryDetailsFormProps,
|
|
3880
|
+
legalEntityResponse,
|
|
3881
|
+
provider
|
|
3882
|
+
}
|
|
3883
|
+
)
|
|
3884
|
+
}
|
|
3885
|
+
),
|
|
2811
3886
|
/* @__PURE__ */ jsx(
|
|
2812
3887
|
"div",
|
|
2813
3888
|
{
|
|
2814
3889
|
className: activeForm?.formId !== PayoutVerificationMethodFormID ? "adyen-kyc-form-wrapper adyen-kyc-form-wrapper--hidden" : "adyen-kyc-form-wrapper",
|
|
2815
|
-
children: /* @__PURE__ */ jsx(InstantVerificationErrorContext.Provider, { value:
|
|
3890
|
+
children: /* @__PURE__ */ jsx(InstantVerificationErrorContext.Provider, { value: instantVerificationError2, children: /* @__PURE__ */ jsx(
|
|
2816
3891
|
PayoutVerificationMethod,
|
|
2817
3892
|
{
|
|
2818
3893
|
...verificationMethodFormProps,
|
|
2819
3894
|
id: PayoutVerificationMethodFormID,
|
|
2820
|
-
heading:
|
|
3895
|
+
heading: t(($) => $["addABankAccountForPayouts"]),
|
|
2821
3896
|
country,
|
|
2822
3897
|
accountHolder,
|
|
2823
3898
|
legalEntityResponse,
|
|
@@ -2860,12 +3935,13 @@ function PayoutDetails(props) {
|
|
|
2860
3935
|
PayoutAccount,
|
|
2861
3936
|
{
|
|
2862
3937
|
...payoutAccountFormProps,
|
|
2863
|
-
heading:
|
|
3938
|
+
heading: t(($) => $["addABankAccountForPayouts"]),
|
|
2864
3939
|
id: payoutSteps.payoutAccountDetails.formId,
|
|
2865
3940
|
country: bankCountry,
|
|
2866
3941
|
legalEntityResponse,
|
|
2867
3942
|
arePayoutAccountDetailsInvalid,
|
|
2868
|
-
invalidFieldNames
|
|
3943
|
+
invalidFieldNames,
|
|
3944
|
+
preferredCurrencyCode: globalData?.payoutCountryDetails?.preferredCurrency
|
|
2869
3945
|
}
|
|
2870
3946
|
)
|
|
2871
3947
|
}
|
|
@@ -2874,14 +3950,26 @@ function PayoutDetails(props) {
|
|
|
2874
3950
|
"div",
|
|
2875
3951
|
{
|
|
2876
3952
|
className: activeForm?.formId !== PayoutAccountDocumentsFormID ? "adyen-kyc-form-wrapper adyen-kyc-form-wrapper--hidden" : "adyen-kyc-form-wrapper",
|
|
2877
|
-
children: /* @__PURE__ */ jsx(
|
|
3953
|
+
children: isExperimentEnabled(ExperimentNames.EnableBankDocumentClassification) ? /* @__PURE__ */ jsx(
|
|
3954
|
+
MemoizedBankDocumentClassification,
|
|
3955
|
+
{
|
|
3956
|
+
...bankDocumentFormProps,
|
|
3957
|
+
id: PayoutAccountDocumentsFormID,
|
|
3958
|
+
legalEntity: legalEntityResponse,
|
|
3959
|
+
associatedLegalArrangement,
|
|
3960
|
+
country: bankCountry,
|
|
3961
|
+
formIsActive: activeForm?.formId === PayoutAccountDocumentsFormID
|
|
3962
|
+
}
|
|
3963
|
+
) : /* @__PURE__ */ jsx(
|
|
2878
3964
|
MemoizedBankDocument,
|
|
2879
3965
|
{
|
|
2880
3966
|
...bankDocumentFormProps,
|
|
2881
3967
|
heading: t(
|
|
2882
3968
|
($) => $[isBankStatementDocumentOptional ? "uploadABankDocumentOptional" : "uploadABankDocument"]
|
|
2883
3969
|
),
|
|
2884
|
-
description:
|
|
3970
|
+
description: t(
|
|
3971
|
+
($) => $[legalEntityResponse.type === "individual" ? "toHelpVerifyYourBankDetailsIndividual" : "toHelpVerifyYourBankDetailsBusiness"]
|
|
3972
|
+
),
|
|
2885
3973
|
id: PayoutAccountDocumentsFormID,
|
|
2886
3974
|
legalEntity: legalEntityResponse,
|
|
2887
3975
|
associatedLegalArrangement,
|
|
@@ -2902,14 +3990,27 @@ function PayoutDetails(props) {
|
|
|
2902
3990
|
showPayoutVerificationMethodError.value = false;
|
|
2903
3991
|
}
|
|
2904
3992
|
}
|
|
3993
|
+
) }),
|
|
3994
|
+
/* @__PURE__ */ jsx(Show, { when: showInstantVerificationPayoutModal, children: /* @__PURE__ */ jsx(
|
|
3995
|
+
BankVerification,
|
|
3996
|
+
{
|
|
3997
|
+
...accountVerificationFormProps,
|
|
3998
|
+
heading: t(($) => $["bankAccountVerification"]),
|
|
3999
|
+
id: PayoutAccountVerificationFormID,
|
|
4000
|
+
provider,
|
|
4001
|
+
country: bankCountry,
|
|
4002
|
+
onBack,
|
|
4003
|
+
hideSidebar: setHideSidebar,
|
|
4004
|
+
setBankVerificationError: setInstantVerificationError,
|
|
4005
|
+
bankInfoValidated,
|
|
4006
|
+
setBankInfoValidated,
|
|
4007
|
+
formIsActive: activeForm?.formId === PayoutVerificationMethodFormID,
|
|
4008
|
+
createTrustedTransferInstrument: createTrustedTransferInstrument2
|
|
4009
|
+
}
|
|
2905
4010
|
) })
|
|
2906
4011
|
] });
|
|
2907
4012
|
}
|
|
2908
|
-
const rules = ({
|
|
2909
|
-
data,
|
|
2910
|
-
requiredFields,
|
|
2911
|
-
isExperimentEnabled
|
|
2912
|
-
}) => createFormRules({
|
|
4013
|
+
const rules = ({ data, requiredFields }) => createFormRules({
|
|
2913
4014
|
whenUsingManualVerification: () => {
|
|
2914
4015
|
if (!data.payoutVerificationMethod) return;
|
|
2915
4016
|
if (data?.payoutVerificationMethod?.payoutVerificationMethod === "manualVerification") {
|
|
@@ -2930,9 +4031,6 @@ const rules = ({
|
|
|
2930
4031
|
}
|
|
2931
4032
|
},
|
|
2932
4033
|
bankStatementRequirement: () => {
|
|
2933
|
-
if (data?.payoutVerificationMethod?.payoutVerificationMethod !== "instantVerification" && (isExperimentEnabled?.("EnableCheckOnCreateBankAccount") || isExperimentEnabled?.("BankVerificationFlowOptimization_CAASIntegration"))) {
|
|
2934
|
-
return "REQUIRED";
|
|
2935
|
-
}
|
|
2936
4034
|
if (data?.payoutVerificationMethod?.payoutVerificationMethod === "manualVerification") {
|
|
2937
4035
|
return requiredFields?.bankStatementRequirement;
|
|
2938
4036
|
}
|
|
@@ -2954,22 +4052,30 @@ const mapApiDocumentToPayoutDocuments = (entityId) => {
|
|
|
2954
4052
|
};
|
|
2955
4053
|
const mapPayoutDetailsToTransferInstrument = ({
|
|
2956
4054
|
data,
|
|
2957
|
-
legalEntity
|
|
4055
|
+
legalEntity,
|
|
4056
|
+
enabledCrossBorderPayouts
|
|
2958
4057
|
}) => {
|
|
2959
4058
|
if (!data.payoutAccountDetails || !data.payoutVerificationMethod) {
|
|
2960
4059
|
throw new Error("Missing payout details data");
|
|
2961
4060
|
}
|
|
4061
|
+
if (enabledCrossBorderPayouts && !data.payoutCountryDetails) {
|
|
4062
|
+
throw new Error("Missing payout details data");
|
|
4063
|
+
}
|
|
4064
|
+
const bankCountry = enabledCrossBorderPayouts ? data.payoutCountryDetails?.bankCountry : data.payoutVerificationMethod?.bankCountry;
|
|
4065
|
+
const preferredCurrency = enabledCrossBorderPayouts ? data.payoutCountryDetails?.preferredCurrency : void 0;
|
|
2962
4066
|
return {
|
|
2963
4067
|
bankAccount: mapPayoutAccountSchemaToApiBankAccount(
|
|
2964
4068
|
data.payoutAccountDetails,
|
|
2965
|
-
|
|
4069
|
+
bankCountry,
|
|
4070
|
+
preferredCurrency,
|
|
4071
|
+
enabledCrossBorderPayouts
|
|
2966
4072
|
),
|
|
2967
4073
|
legalEntityId: legalEntity.id,
|
|
2968
4074
|
type: "bankAccount"
|
|
2969
4075
|
};
|
|
2970
4076
|
};
|
|
2971
4077
|
const mapPayoutDocumentsToApiDocuments = async (data, entityId) => {
|
|
2972
|
-
const { bankStatementDocument, description } = data.payoutAccountDocuments ?? {};
|
|
4078
|
+
const { bankStatementDocument, description: description2 } = data.payoutAccountDocuments ?? {};
|
|
2973
4079
|
if (!bankStatementDocument) {
|
|
2974
4080
|
throw new Error("Bank statement document missing");
|
|
2975
4081
|
}
|
|
@@ -2983,7 +4089,7 @@ const mapPayoutDocumentsToApiDocuments = async (data, entityId) => {
|
|
|
2983
4089
|
entityType: "bankAccount",
|
|
2984
4090
|
documentType: "bankStatement",
|
|
2985
4091
|
page1,
|
|
2986
|
-
description,
|
|
4092
|
+
description: description2,
|
|
2987
4093
|
existingDocument
|
|
2988
4094
|
});
|
|
2989
4095
|
};
|
|
@@ -3076,17 +4182,19 @@ function parsePayoutScenarios({
|
|
|
3076
4182
|
}
|
|
3077
4183
|
return augmentWithCountryConfigs(payoutDetailsCountryConfig[country], formConfig);
|
|
3078
4184
|
}
|
|
3079
|
-
const getAppropriatePayoutDetailsSteps = (isEditing, instantVerificationAvailable, canChangeCountry) => {
|
|
4185
|
+
const getAppropriatePayoutDetailsSteps = (isEditing, instantVerificationAvailable, canChangeCountry, isCrossBorderEnabled) => {
|
|
3080
4186
|
const dependentSteps = {
|
|
4187
|
+
payoutCountryDetails: payoutSteps.payoutCountryDetails,
|
|
4188
|
+
payoutVerificationMethod: payoutSteps.payoutVerificationMethod,
|
|
3081
4189
|
payoutAccountDetails: payoutSteps.payoutAccountDetails,
|
|
3082
4190
|
payoutAccountDocuments: payoutSteps.payoutAccountDocuments,
|
|
3083
4191
|
payoutAccountVerification: payoutSteps.payoutAccountVerification
|
|
3084
4192
|
};
|
|
3085
|
-
if (!
|
|
3086
|
-
|
|
3087
|
-
|
|
3088
|
-
|
|
3089
|
-
|
|
4193
|
+
if (!isCrossBorderEnabled) {
|
|
4194
|
+
delete dependentSteps["payoutCountryDetails"];
|
|
4195
|
+
}
|
|
4196
|
+
if (isEditing || !instantVerificationAvailable && !canChangeCountry) {
|
|
4197
|
+
delete dependentSteps["payoutVerificationMethod"];
|
|
3090
4198
|
}
|
|
3091
4199
|
return dependentSteps;
|
|
3092
4200
|
};
|
|
@@ -3137,6 +4245,7 @@ const getPayoutVerificationMethod = (transferInstrument, instantVerificationEnab
|
|
|
3137
4245
|
return enabledUnbiasedVerificationMethod || !instantVerificationEnabled ? void 0 : "instantVerification";
|
|
3138
4246
|
}
|
|
3139
4247
|
};
|
|
4248
|
+
const showInstantVerificationPayoutModal = signal(false);
|
|
3140
4249
|
function PayoutDetailsDropin({
|
|
3141
4250
|
legalEntityResponse,
|
|
3142
4251
|
associatedLegalArrangement,
|
|
@@ -3168,22 +4277,26 @@ function PayoutDetailsDropin({
|
|
|
3168
4277
|
const [previousTrustedInstrumentStatus, setPreviousTrustedInstrumentStatus] = useState(
|
|
3169
4278
|
createTrustedTransferInstrumentStatus
|
|
3170
4279
|
);
|
|
3171
|
-
const { t, i18n: i18next } = useTranslation("
|
|
3172
|
-
const {
|
|
4280
|
+
const { t, i18n: i18next } = useTranslation("banking");
|
|
4281
|
+
const { t: commonT } = useTranslation("common");
|
|
3173
4282
|
const userEvents = useAnalyticsContext();
|
|
3174
4283
|
const { showToast, clearToasts } = useToastContext();
|
|
3175
4284
|
const { isExperimentEnabled } = useExperimentsContext();
|
|
3176
4285
|
const { isSettingEnabled } = useSettingsContext();
|
|
4286
|
+
const enabledCrossBorderPayouts = isExperimentEnabled(ExperimentNames.EnableCrossBorderPayouts);
|
|
3177
4287
|
const defaultPayoutCountry = getLegalEntityCountry(legalEntityResponse);
|
|
3178
4288
|
const existingPayoutDetails = useMemo(
|
|
3179
|
-
() => transferInstrument ? mapTransferInstrumentToPayoutAccount(transferInstrument) : void 0,
|
|
4289
|
+
() => transferInstrument ? mapTransferInstrumentToPayoutAccount(transferInstrument, enabledCrossBorderPayouts) : void 0,
|
|
3180
4290
|
[transferInstrument]
|
|
3181
4291
|
);
|
|
3182
4292
|
const [documents, setDocuments] = useState();
|
|
3183
4293
|
const [isCaasCalled, setIsCaasCalled] = useState(false);
|
|
3184
|
-
const
|
|
3185
|
-
|
|
3186
|
-
|
|
4294
|
+
const enabledUnbiasedSelectionOnCardClick = isExperimentEnabled(
|
|
4295
|
+
ExperimentNames.BankVerificationMethodAutonomy_UnbiasedSelectionOnCardClick
|
|
4296
|
+
);
|
|
4297
|
+
const enabledUnbiasedVerificationMethod = enabledUnbiasedSelectionOnCardClick || isExperimentEnabled(ExperimentNames.BankVerificationMethodAutonomy_UnbiasedSelectionOnContinue);
|
|
4298
|
+
const isPayoutVerificationMethodPageRedesignEnabled = isExperimentEnabled(
|
|
4299
|
+
ExperimentNames.EnablePayoutVerificationMethodPageRedesign
|
|
3187
4300
|
);
|
|
3188
4301
|
const accountHolder = getPayoutAccountHolderName(legalEntityResponse, t);
|
|
3189
4302
|
const fallbackCurrency = currencyByCountry[defaultPayoutCountry]?.[0];
|
|
@@ -3194,6 +4307,10 @@ function PayoutDetailsDropin({
|
|
|
3194
4307
|
const taskType = propTaskType ?? TaskTypes.PAYOUT;
|
|
3195
4308
|
const [trustedTransferInstrumentId, setTrustedTransferInstrumentId] = useState();
|
|
3196
4309
|
const prefilledData = {
|
|
4310
|
+
payoutCountryDetails: {
|
|
4311
|
+
bankCountry: existingPayoutDetails?.payoutCountryDetails?.bankCountry ?? defaultPayoutCountry,
|
|
4312
|
+
preferredCurrency: existingPayoutDetails?.payoutCountryDetails?.preferredCurrency
|
|
4313
|
+
},
|
|
3197
4314
|
payoutAccountDetails: {
|
|
3198
4315
|
accountHolder: accountHolderName,
|
|
3199
4316
|
currency: fallbackCurrency,
|
|
@@ -3222,7 +4339,7 @@ function PayoutDetailsDropin({
|
|
|
3222
4339
|
state: { currentState }
|
|
3223
4340
|
} = useStateContext();
|
|
3224
4341
|
const formValidity = currentState.validityByForm;
|
|
3225
|
-
const bankAccountCountry = currentState?.data?.payoutVerificationMethod?.bankCountry ?? defaultPayoutCountry;
|
|
4342
|
+
const bankAccountCountry = (enabledCrossBorderPayouts ? currentState?.data?.payoutCountryDetails?.bankCountry : currentState?.data?.payoutVerificationMethod?.bankCountry) ?? defaultPayoutCountry;
|
|
3226
4343
|
const [hideFooterAndSidebar, setHideFooterAndSidebar] = useState(false);
|
|
3227
4344
|
const [skipSubmit, setSkipSubmit] = useState(false);
|
|
3228
4345
|
const [loadingStatus, setLoadingStatus] = useState("loading");
|
|
@@ -3236,16 +4353,11 @@ function PayoutDetailsDropin({
|
|
|
3236
4353
|
prefilledData.payoutAccountDetails
|
|
3237
4354
|
);
|
|
3238
4355
|
const isMaskedBankAccountNumber = data.payoutAccountDetails?.bankAccountNumber?.includes("*") || data.payoutAccountDetails?.iban?.includes("*");
|
|
3239
|
-
const existingBankAccountFormat = transferInstrument ? existingPayoutDetails?.payoutAccountDetails?.iban ? "iban" : "local" : void 0;
|
|
3240
|
-
const checkAsAServiceAnalyticsProps = {
|
|
3241
|
-
"Experiment name": ExperimentNames.BankVerificationFlowOptimization_CAASIntegration,
|
|
3242
|
-
"Experiment value": enableCheckOnCreateBankAccount ? "TREATMENT" : "CONTROL"
|
|
3243
|
-
};
|
|
4356
|
+
const existingBankAccountFormat = transferInstrument ? transferInstrument?.bankAccount?.accountIdentification?.type === "numberAndBic" ? "numberAndBic" : existingPayoutDetails?.payoutAccountDetails?.iban ? "iban" : "local" : void 0;
|
|
3244
4357
|
useEffect(() => {
|
|
3245
4358
|
userEvents.updateBaseTrackingPayload({ task: taskType });
|
|
3246
4359
|
userEvents.addTaskEvent("Landed on page", {
|
|
3247
|
-
actionType: "start"
|
|
3248
|
-
...checkAsAServiceAnalyticsProps
|
|
4360
|
+
actionType: "start"
|
|
3249
4361
|
});
|
|
3250
4362
|
}, []);
|
|
3251
4363
|
useEffect(() => {
|
|
@@ -3292,8 +4404,7 @@ function PayoutDetailsDropin({
|
|
|
3292
4404
|
const fieldsFromCustomRules = useMemo(
|
|
3293
4405
|
() => rules({
|
|
3294
4406
|
data,
|
|
3295
|
-
requiredFields
|
|
3296
|
-
isExperimentEnabled
|
|
4407
|
+
requiredFields
|
|
3297
4408
|
}),
|
|
3298
4409
|
[bankAccountCountry, data, taskType, isExperimentEnabled]
|
|
3299
4410
|
);
|
|
@@ -3311,25 +4422,21 @@ function PayoutDetailsDropin({
|
|
|
3311
4422
|
});
|
|
3312
4423
|
const checkAsAServiceResultStatus = checkAsAServiceData?.status;
|
|
3313
4424
|
const checkAsAServiceResultErrors = checkAsAServiceData?.errors;
|
|
4425
|
+
const provider = providers?.[0];
|
|
4426
|
+
const isInstantVerificationFlow = data.payoutVerificationMethod?.payoutVerificationMethod === "instantVerification";
|
|
3314
4427
|
const [isModalOpen, setIsModalOpen] = useState(false);
|
|
3315
4428
|
const payoutDetailsSteps = useMemo(() => {
|
|
3316
4429
|
const appropriatePayoutDetailsSteps = getAppropriatePayoutDetailsSteps(
|
|
3317
4430
|
Boolean(prefilledData?.payoutAccountDetails?.transferInstrumentId),
|
|
3318
4431
|
instantVerificationAvailable,
|
|
3319
|
-
isSettingEnabled(SettingNames.AllowIntraRegionCrossBorderPayout)
|
|
4432
|
+
isSettingEnabled(SettingNames.AllowIntraRegionCrossBorderPayout),
|
|
4433
|
+
enabledCrossBorderPayouts
|
|
3320
4434
|
);
|
|
3321
|
-
|
|
3322
|
-
|
|
3323
|
-
return restOfAppropriatePayoutDetailsSteps;
|
|
4435
|
+
if (!isCheckAsAServiceError && (checkAsAServiceResultStatus === "VALID" || checkAsAServiceResultStatus === void 0) && !isMaskedBankAccountNumber) {
|
|
4436
|
+
delete appropriatePayoutDetailsSteps[payoutSteps.payoutAccountDocuments.formId];
|
|
3324
4437
|
}
|
|
3325
4438
|
return appropriatePayoutDetailsSteps;
|
|
3326
|
-
}, [
|
|
3327
|
-
providers,
|
|
3328
|
-
enableCheckOnCreateBankAccount,
|
|
3329
|
-
checkAsAServiceResultStatus,
|
|
3330
|
-
isCheckAsAServiceError,
|
|
3331
|
-
isMaskedBankAccountNumber
|
|
3332
|
-
]);
|
|
4439
|
+
}, [providers, checkAsAServiceResultStatus, isCheckAsAServiceError, isMaskedBankAccountNumber]);
|
|
3333
4440
|
const derivedProps = useMemo(() => {
|
|
3334
4441
|
return getPropsFromConfigurations({
|
|
3335
4442
|
scenarioConfiguration: fieldConfigurations,
|
|
@@ -3369,7 +4476,10 @@ function PayoutDetailsDropin({
|
|
|
3369
4476
|
documentUtils.fetchDocuments(transferInstrument.documentDetails, transferInstrument.id).then(() => {
|
|
3370
4477
|
setDocuments(mapApiDocumentToPayoutDocuments(transferInstrument.id));
|
|
3371
4478
|
}).catch(() => {
|
|
3372
|
-
showToast({
|
|
4479
|
+
showToast({
|
|
4480
|
+
label: commonT(($) => $["failedToFetchRelevantDocuments"]),
|
|
4481
|
+
variant: "error"
|
|
4482
|
+
});
|
|
3373
4483
|
});
|
|
3374
4484
|
}
|
|
3375
4485
|
}, [transferInstrument?.documentDetails]);
|
|
@@ -3395,7 +4505,7 @@ function PayoutDetailsDropin({
|
|
|
3395
4505
|
actionType: "upload",
|
|
3396
4506
|
documentType: dataSubmitted.payoutAccountDocuments?.documentType ?? document2.type,
|
|
3397
4507
|
// tracks BankDocumentTypes
|
|
3398
|
-
fileExtention: document2.attachments?.map((item) => getFileExtention(item.pageName ?? "")).filter((item) => item !== void 0) ??
|
|
4508
|
+
fileExtention: document2.attachments?.map((item) => getFileExtention(item.pageName ?? "")).filter((item) => item !== void 0) ?? void 0
|
|
3399
4509
|
});
|
|
3400
4510
|
});
|
|
3401
4511
|
} catch {
|
|
@@ -3405,7 +4515,7 @@ function PayoutDetailsDropin({
|
|
|
3405
4515
|
payoutAccountDocuments: { bankStatementDocument: true }
|
|
3406
4516
|
}
|
|
3407
4517
|
});
|
|
3408
|
-
throw new Error(
|
|
4518
|
+
throw new Error(commonT(($) => $["remediationMessage_1_704"]));
|
|
3409
4519
|
} finally {
|
|
3410
4520
|
await refetchTransferInstrument?.();
|
|
3411
4521
|
}
|
|
@@ -3428,7 +4538,8 @@ function PayoutDetailsDropin({
|
|
|
3428
4538
|
};
|
|
3429
4539
|
let transferInstrumentFromInput = mapPayoutDetailsToTransferInstrument({
|
|
3430
4540
|
data: dataSubmitted,
|
|
3431
|
-
legalEntity: legalEntityResponse
|
|
4541
|
+
legalEntity: legalEntityResponse,
|
|
4542
|
+
enabledCrossBorderPayouts
|
|
3432
4543
|
});
|
|
3433
4544
|
transferInstrumentFromInput = omitObscuredFieldsIfUnchanged(
|
|
3434
4545
|
["bankAccount.accountIdentification.accountNumber", "bankAccount.accountIdentification.iban"],
|
|
@@ -3447,8 +4558,7 @@ function PayoutDetailsDropin({
|
|
|
3447
4558
|
));
|
|
3448
4559
|
setCurrentTransferInstrumentId?.(response?.id);
|
|
3449
4560
|
userEvents.addTaskEvent("Success", {
|
|
3450
|
-
...baseTracking
|
|
3451
|
-
...checkAsAServiceAnalyticsProps
|
|
4561
|
+
...baseTracking
|
|
3452
4562
|
});
|
|
3453
4563
|
try {
|
|
3454
4564
|
await submitDocuments({ forms, transferInstrument: response, dataSubmitted });
|
|
@@ -3464,25 +4574,24 @@ function PayoutDetailsDropin({
|
|
|
3464
4574
|
const validationErrors = processValidationErrors(e, taskType);
|
|
3465
4575
|
setProblems({ ...problems, validationErrors });
|
|
3466
4576
|
} else if (isIdDocumentUploadError(e)) {
|
|
3467
|
-
showToast({ label:
|
|
4577
|
+
showToast({ label: t(($) => $["idDocumentAlreadyUploaded"]), variant: "error" });
|
|
3468
4578
|
} else if (isBankStatementUploadError(e)) {
|
|
3469
|
-
showToast({ label:
|
|
4579
|
+
showToast({ label: t(($) => $["bankStatementAlreadyUploaded"]), variant: "error" });
|
|
3470
4580
|
} else if (isMaintenanceModeError(e)) {
|
|
3471
4581
|
showToast({
|
|
3472
|
-
label:
|
|
4582
|
+
label: commonT(($) => $["maintenanceModeMessage"]),
|
|
3473
4583
|
variant: "error",
|
|
3474
4584
|
duration: "indefinite"
|
|
3475
4585
|
});
|
|
3476
4586
|
} else {
|
|
3477
4587
|
const errorTranslatable = mapCreateOrUpdateTransferInstrumentErrorMessageToTranslatable(e);
|
|
3478
|
-
showToast({ label:
|
|
4588
|
+
showToast({ label: commonT(($) => $[errorTranslatable]), variant: "error" });
|
|
3479
4589
|
}
|
|
3480
4590
|
setIsSubmitting(false);
|
|
3481
4591
|
userEvents.addTaskEvent("Encountered error", {
|
|
3482
4592
|
...baseTracking,
|
|
3483
4593
|
returnType: e?.errorCode || "backend",
|
|
3484
|
-
returnValue: e?.title || e?.message
|
|
3485
|
-
...checkAsAServiceAnalyticsProps
|
|
4594
|
+
returnValue: e?.title || e?.message
|
|
3486
4595
|
});
|
|
3487
4596
|
}
|
|
3488
4597
|
};
|
|
@@ -3490,13 +4599,13 @@ function PayoutDetailsDropin({
|
|
|
3490
4599
|
const formatFileSummaryData = (bankDocuments) => {
|
|
3491
4600
|
const bankStatementDocument = bankDocuments?.bankStatementDocument?.[0];
|
|
3492
4601
|
return {
|
|
3493
|
-
|
|
3494
|
-
|
|
3495
|
-
|
|
4602
|
+
documentType: bankDocuments?.documentType && commonT(($) => $[bankDocuments?.documentType]),
|
|
4603
|
+
fileName: bankStatementDocument?.name,
|
|
4604
|
+
description: bankDocuments?.description
|
|
3496
4605
|
};
|
|
3497
4606
|
};
|
|
3498
4607
|
const canSubmit = () => {
|
|
3499
|
-
if (
|
|
4608
|
+
if (isInstantVerificationFlow) {
|
|
3500
4609
|
return false;
|
|
3501
4610
|
}
|
|
3502
4611
|
const bankDetails = data.payoutAccountDetails;
|
|
@@ -3512,9 +4621,7 @@ function PayoutDetailsDropin({
|
|
|
3512
4621
|
);
|
|
3513
4622
|
}
|
|
3514
4623
|
if (summaryData.payoutAccountDocuments) {
|
|
3515
|
-
summaryData.payoutAccountDocuments
|
|
3516
|
-
data?.payoutAccountDocuments
|
|
3517
|
-
);
|
|
4624
|
+
summaryData.payoutAccountDocuments = formatFileSummaryData(data?.payoutAccountDocuments);
|
|
3518
4625
|
}
|
|
3519
4626
|
summaryData.payoutAccountVerification = formatAccountVerificationSummary(
|
|
3520
4627
|
data.payoutAccountVerification
|
|
@@ -3535,7 +4642,7 @@ function PayoutDetailsDropin({
|
|
|
3535
4642
|
refetchBankVerificationProviders();
|
|
3536
4643
|
const errorTranslatable = mapCreateOrUpdateTransferInstrumentErrorMessageToTranslatable(e);
|
|
3537
4644
|
if (errorTranslatable === "transferInstrumentLimitHasAlreadyBeenMet") {
|
|
3538
|
-
showToast({ label:
|
|
4645
|
+
showToast({ label: commonT(($) => $[errorTranslatable]), variant: "error" });
|
|
3539
4646
|
}
|
|
3540
4647
|
throw e;
|
|
3541
4648
|
}
|
|
@@ -3551,10 +4658,24 @@ function PayoutDetailsDropin({
|
|
|
3551
4658
|
problems,
|
|
3552
4659
|
forms,
|
|
3553
4660
|
externalBackClick,
|
|
3554
|
-
|
|
3555
|
-
|
|
3556
|
-
|
|
3557
|
-
|
|
4661
|
+
onSubmit: skipSubmit ? async () => {
|
|
4662
|
+
if (enabledCrossBorderPayouts && trustedTransferInstrumentId) {
|
|
4663
|
+
try {
|
|
4664
|
+
await handleUpdateTransferInstrument({
|
|
4665
|
+
transferInstrument: {
|
|
4666
|
+
legalEntityId: rootLegalEntityId.value,
|
|
4667
|
+
bankAccount: {
|
|
4668
|
+
preferredCurrencyCode: data.payoutCountryDetails?.preferredCurrency,
|
|
4669
|
+
trustedSource: true
|
|
4670
|
+
},
|
|
4671
|
+
type: "bankAccount"
|
|
4672
|
+
},
|
|
4673
|
+
transferInstrumentId: trustedTransferInstrumentId
|
|
4674
|
+
});
|
|
4675
|
+
} catch {
|
|
4676
|
+
showToast({ label: commonT(($) => $["failedToUpdateDetails"]), variant: "error" });
|
|
4677
|
+
}
|
|
4678
|
+
}
|
|
3558
4679
|
if (trustedTransferInstrumentId) {
|
|
3559
4680
|
externalOnSubmit?.({ ...data, id: trustedTransferInstrumentId });
|
|
3560
4681
|
}
|
|
@@ -3566,7 +4687,7 @@ function PayoutDetailsDropin({
|
|
|
3566
4687
|
});
|
|
3567
4688
|
useEffect(() => {
|
|
3568
4689
|
if (isCaasCalled && forms) {
|
|
3569
|
-
if (checkAsAServiceResultStatus !== "VALID") {
|
|
4690
|
+
if (checkAsAServiceResultStatus !== "VALID" && checkAsAServiceResultStatus !== "INCOMPLETE_INPUT") {
|
|
3570
4691
|
const formIndex = forms.findIndex((f) => f.formId === "payoutAccountDocuments");
|
|
3571
4692
|
if (formIndex > -1) {
|
|
3572
4693
|
gotoFormByFormIndex(formIndex);
|
|
@@ -3579,18 +4700,24 @@ function PayoutDetailsDropin({
|
|
|
3579
4700
|
setIsCaasCalled(false);
|
|
3580
4701
|
}, [forms, checkAsAServiceResultStatus, isCaasCalled]);
|
|
3581
4702
|
const handleFormNextClick = async () => {
|
|
3582
|
-
if (
|
|
4703
|
+
if (isPayoutVerificationMethodPageRedesignEnabled && activeForm.formId === "payoutVerificationMethod") {
|
|
4704
|
+
if (isInstantVerificationFlow) {
|
|
4705
|
+
showInstantVerificationPayoutModal.value = true;
|
|
4706
|
+
return;
|
|
4707
|
+
} else {
|
|
4708
|
+
handleNextClick();
|
|
4709
|
+
}
|
|
4710
|
+
}
|
|
4711
|
+
if (!data?.payoutVerificationMethod?.payoutVerificationMethod && !enabledUnbiasedSelectionOnCardClick) {
|
|
3583
4712
|
showPayoutVerificationMethodError.value = true;
|
|
3584
4713
|
return;
|
|
3585
4714
|
}
|
|
3586
|
-
if (
|
|
4715
|
+
if (activeForm.formId === "payoutAccountDetails" && activeForm.isValid && data.payoutAccountDetails && !isMaskedBankAccountNumber) {
|
|
3587
4716
|
try {
|
|
3588
4717
|
const { data: response } = await refetchCheckAsAService();
|
|
3589
4718
|
setIsCaasCalled(true);
|
|
3590
4719
|
if (response?.status === "INCOMPLETE_INPUT") {
|
|
3591
4720
|
setIsModalOpen(true);
|
|
3592
|
-
} else {
|
|
3593
|
-
handleNextClick();
|
|
3594
4721
|
}
|
|
3595
4722
|
} catch {
|
|
3596
4723
|
handleNextClick();
|
|
@@ -3604,25 +4731,43 @@ function PayoutDetailsDropin({
|
|
|
3604
4731
|
handleNextClick();
|
|
3605
4732
|
setPreviousTrustedInstrumentStatus(createTrustedTransferInstrumentStatus);
|
|
3606
4733
|
}
|
|
4734
|
+
if (isExperimentEnabled(ExperimentNames.EnablePayoutVerificationMethodPageRedesign) && activeForm.formId === "payoutVerificationMethod" && createTrustedTransferInstrumentStatus === "success") {
|
|
4735
|
+
gotoFormByFormIndex(forms.length - 1);
|
|
4736
|
+
setPreviousTrustedInstrumentStatus(createTrustedTransferInstrumentStatus);
|
|
4737
|
+
}
|
|
3607
4738
|
}
|
|
3608
4739
|
const omittedForms = data?.payoutVerificationMethod?.payoutVerificationMethod === "instantVerification" ? [] : [payoutSteps.payoutVerificationMethod.formId];
|
|
3609
4740
|
const { header: invalidFieldHeader, content: invalidFieldContent } = getInvalidFieldsErrorMessage(
|
|
3610
4741
|
checkAsAServiceResultErrors ?? []
|
|
3611
4742
|
);
|
|
4743
|
+
const prevPayoutVerificationMethodRef = useRef(
|
|
4744
|
+
data.payoutVerificationMethod?.payoutVerificationMethod
|
|
4745
|
+
);
|
|
4746
|
+
useEffect(() => {
|
|
4747
|
+
const payoutVerificationMethod = data.payoutVerificationMethod?.payoutVerificationMethod;
|
|
4748
|
+
if (payoutVerificationMethod && enabledUnbiasedSelectionOnCardClick && payoutVerificationMethod !== prevPayoutVerificationMethodRef.current) {
|
|
4749
|
+
prevPayoutVerificationMethodRef.current = payoutVerificationMethod;
|
|
4750
|
+
handleFormNextClick();
|
|
4751
|
+
}
|
|
4752
|
+
}, [
|
|
4753
|
+
data.payoutVerificationMethod?.payoutVerificationMethod,
|
|
4754
|
+
enabledUnbiasedSelectionOnCardClick,
|
|
4755
|
+
handleFormNextClick
|
|
4756
|
+
]);
|
|
3612
4757
|
return /* @__PURE__ */ jsxs(
|
|
3613
4758
|
LoaderWrapper,
|
|
3614
4759
|
{
|
|
3615
4760
|
showSpinner: true,
|
|
3616
|
-
status: isCheckAsAServiceLoading || isModalOpen ? "loading" : "success",
|
|
4761
|
+
status: isCheckAsAServiceLoading || isModalOpen || createTrustedTransferInstrumentStatus === "pending" ? "loading" : "success",
|
|
3617
4762
|
formOpacityWhenLoading: 0.3,
|
|
3618
4763
|
children: [
|
|
3619
4764
|
isModalOpen && /* @__PURE__ */ jsx(
|
|
3620
4765
|
Confirm,
|
|
3621
4766
|
{
|
|
3622
|
-
title:
|
|
3623
|
-
description:
|
|
3624
|
-
cancelText:
|
|
3625
|
-
confirmText:
|
|
4767
|
+
title: t(($) => $[invalidFieldHeader]),
|
|
4768
|
+
description: t(($) => $[invalidFieldContent]),
|
|
4769
|
+
cancelText: commonT(($) => $["editDetails"]),
|
|
4770
|
+
confirmText: t(($) => $["continueAnyway"]),
|
|
3626
4771
|
onConfirm: () => {
|
|
3627
4772
|
handleNextClick();
|
|
3628
4773
|
setIsModalOpen(false);
|
|
@@ -3646,7 +4791,7 @@ function PayoutDetailsDropin({
|
|
|
3646
4791
|
summaryEditButton: ["payoutVerificationMethod"]
|
|
3647
4792
|
}
|
|
3648
4793
|
},
|
|
3649
|
-
handleBackClick,
|
|
4794
|
+
handleBackClick: !isPayoutVerificationMethodPageRedesignEnabled || activeForm.formId !== "summary" ? handleBackClick : void 0,
|
|
3650
4795
|
handleNextClick: handleFormNextClick,
|
|
3651
4796
|
handleHomeClick,
|
|
3652
4797
|
handleCloseClick,
|
|
@@ -3661,6 +4806,7 @@ function PayoutDetailsDropin({
|
|
|
3661
4806
|
canSubmit: canSubmit(),
|
|
3662
4807
|
problems,
|
|
3663
4808
|
steps,
|
|
4809
|
+
hideNextButton: enabledUnbiasedSelectionOnCardClick && activeForm.formId === "payoutVerificationMethod",
|
|
3664
4810
|
children: (!isTransferInstrumentLoading || isSubmitting) && /* @__PURE__ */ jsx(
|
|
3665
4811
|
PayoutDetails,
|
|
3666
4812
|
{
|
|
@@ -3674,7 +4820,7 @@ function PayoutDetailsDropin({
|
|
|
3674
4820
|
setSkipSubmit,
|
|
3675
4821
|
legalEntityResponse,
|
|
3676
4822
|
associatedLegalArrangement,
|
|
3677
|
-
provider
|
|
4823
|
+
provider,
|
|
3678
4824
|
bankVendorsLoadingStatus,
|
|
3679
4825
|
instantVerificationAvailable,
|
|
3680
4826
|
createTrustedTransferInstrument: createTrustedTransferInstrumentHandler,
|