@adyen/kyc-components 3.92.1 → 3.93.0-beta.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.
Files changed (411) hide show
  1. package/dist/{AcceptTermsOfServiceComponent-Cc5TwxYd.js → AcceptTermsOfServiceComponent-B4fXz2Mj.js} +17 -16
  2. package/dist/{Accordion-CAqKHAj9.js → Accordion-B9ASz7oD.js} +2 -2
  3. package/dist/{AccountSetupRejected-C9FCwunF.js → AccountSetupRejected-BsYzF0XW.js} +3 -3
  4. package/dist/{ActionBar-C1rqfjkV.js → ActionBar-Gbat0LF-.js} +1 -1
  5. package/dist/{Address-C8Kqz-2b.js → Address-Bu9zOvAM.js} +15 -15
  6. package/dist/{Alert-E_a_csSs.js → Alert-0L9Okc_j.js} +3 -3
  7. package/dist/{Avatar-wQ0mYsYL.js → Avatar-C2jFofpv.js} +2 -2
  8. package/dist/{BusinessFinancingComponent-ReMZLbjX.js → BusinessFinancingComponent-C12Xnx_y.js} +5 -5
  9. package/dist/{BusinessFinancingDropin-DtSERjsb.js → BusinessFinancingDropin-BYwivstT.js} +29 -28
  10. package/dist/{BusinessFinancingPage-DqSCsrPJ.js → BusinessFinancingPage-CUeLDq8J.js} +4 -4
  11. package/dist/{BusinessTypeSelectionPage-zzDSHomI.js → BusinessTypeSelectionPage-BQ1yBBhx.js} +9 -9
  12. package/dist/Card-OQuFzmxm.js +90 -0
  13. package/dist/{Checkbox-Bp4HrJKI.js → Checkbox-DBN0bHrR.js} +2 -2
  14. package/dist/{Confirm-Ba5lqFqd.js → Confirm-DvCDgyAD.js} +3 -3
  15. package/dist/{ConstitutionalDocument-DD5CB7gM.js → ConstitutionalDocument-BXepv2HE.js} +18 -18
  16. package/dist/{validate-CIuB6JUT.js → ContactDetails-D84L456z.js} +21 -20
  17. package/dist/{ContextGuidance-aACh9e6u.js → ContextGuidance-CyvagjSm.js} +3 -3
  18. package/dist/{CountryField-B0daMnwW.js → CountryField-DelOJ_90.js} +4 -4
  19. package/dist/{CreateIndividualComponent-pLTW4M3J.js → CreateIndividualComponent-B56tad3f.js} +6 -12
  20. package/dist/{CreateTransferInstrumentComponent-DlSD28ga.js → CreateTransferInstrumentComponent-DAIYbzea.js} +4 -4
  21. package/dist/{Currency-DXgu9MoR.js → Currency-DARtu8dS.js} +11 -8
  22. package/dist/{CustomerSupport-eNBxns8l.js → CustomerSupport-HpsRjJyl.js} +12 -11
  23. package/dist/{DebugModal-jvulkSEe.js → DebugModal-DEYa0E-D.js} +12 -10
  24. package/dist/{DecisionMakerDetailsPage-IV32QvAq.js → DecisionMakerDetailsPage-CmvZWgoB.js} +12 -18
  25. package/dist/{DecisionMakers-CNxYaQOO.js → DecisionMakers-eOsvlawr.js} +21 -22
  26. package/dist/{Dropzone-CJTj99Jm.js → Dropzone-BgrGUcIm.js} +16 -10
  27. package/dist/{EmbeddedStatus-BytQYrC_.js → EmbeddedStatus-CGIXkUXu.js} +3 -3
  28. package/dist/{EndStateLayout-DlvjAj-7.js → EndStateLayout-DhaJTPGG.js} +2 -2
  29. package/dist/EntityAssociation-oAuDZDjG.js +166 -0
  30. package/dist/{EntityGuidanceStatus-D9aXAd7N.js → EntityGuidanceStatus-BfJcqJTt.js} +3 -3
  31. package/dist/{ErrorPanel-DNtK56tD.js → ErrorPanel-CQ5mK5uz.js} +3 -3
  32. package/dist/{Field-BEoeMy3u.js → Field-QQ5BBCkn.js} +2 -3
  33. package/dist/{FormNavigation-Ci1LhKvo.js → FormNavigation-Cl5fnGKp.js} +3 -3
  34. package/dist/{FormWrapper-BCkcULLO.js → FormWrapper-BXCADDZ_.js} +9 -9
  35. package/dist/{Header-87H731cQ.js → Header-DVxe8YCk.js} +2 -2
  36. package/dist/{Image-Dv-RB-a6.js → Image-D2r8auP6.js} +4 -9
  37. package/dist/{rules-CovTg5rc.js → Individual.rules-nvOffGHU.js} +165 -117
  38. package/dist/{IndividualOnfidoDropin-HK_0jjJH.js → IndividualDropin-Ou29J7Dx.js} +1188 -3959
  39. package/dist/{InputDate-BcSMepXz.js → InputDate-DplEveci.js} +1 -1
  40. package/dist/{InputText-D0zIJLdp.js → InputText-V4X24bPM.js} +2 -2
  41. package/dist/{Introduction-D_Zv9G9d.js → Introduction-kVYYqDhe.js} +4 -4
  42. package/dist/{JpAddress-C0Q47X_G.js → JpAddress-BKT0w3jl.js} +11 -10
  43. package/dist/{LandingLayout-oK1JT5Lv.js → LandingLayout-DZt1EtCP.js} +2 -2
  44. package/dist/{LegalRepresentativeDetailsPage-BrBQg06_.js → LegalRepresentativeDetailsPage-BuOPrCAO.js} +6 -11
  45. package/dist/{Link-BTTClZw-.js → Link-s00fWIPD.js} +2 -2
  46. package/dist/{ListItem-BJYQ6BfN.js → ListItem-BOjfMtNh.js} +3 -3
  47. package/dist/{LoaderWrapper-Dl2oV2v2.js → LoaderWrapper-lbUTZxip.js} +1 -1
  48. package/dist/ManageIndividualComponent-C80dv903.js +46 -0
  49. package/dist/{ManageTermsOfServiceComponent-Qpzy5iZg.js → ManageTermsOfServiceComponent-8sW0ubtp.js} +4 -4
  50. package/dist/{ManageTransferInstrumentComponent-CvTD7JqX.js → ManageTransferInstrumentComponent-Djr3hDnm.js} +15 -14
  51. package/dist/{MaskedInput-Bet0abik.js → MaskedInput-Dtui0pFL.js} +17 -9
  52. package/dist/{MaybeModal-Bk3WmK24.js → MaybeModal-DAmEe4LX.js} +2 -2
  53. package/dist/{Modal-1Hv5tfNy.js → Modal-DjqZRXyy.js} +5 -5
  54. package/dist/{makeSelectItemForRole-B1DAxBZ_.js → Name-2lTBQb7g.js} +5 -57
  55. package/dist/{OnboardingDropinComponent-tQW1hXKP.js → OnboardingDropinComponent-Druuv3sE.js} +156 -125
  56. package/dist/{PayoutDetailsDropin-BEoP-NR0.js → PayoutDetailsDropin-B7LtRa1B.js} +91 -87
  57. package/dist/{RadioGroup-Bg_8BEDn.js → RadioGroup-DUYNpTgM.js} +7 -5
  58. package/dist/{RadioGroupCard-NRR-OqqG.js → RadioGroupCard-pMlnbEEB.js} +5 -3
  59. package/dist/{Review-DbX6GFkR.js → Review-_FUu7r2a.js} +8 -7
  60. package/dist/{RootBusinessDetailsPage-BWewaAOg.js → RootBusinessDetailsPage-yrq_AuhE.js} +9 -8
  61. package/dist/{RootBusinessLinesPage-CJ9jECx0.js → RootBusinessLinesPage-Cl18f4sM.js} +82 -55
  62. package/dist/{RootIndividualDetailsPage-CvQ2742R.js → RootIndividualDetailsPage-DCBlFXBW.js} +8 -18
  63. package/dist/{Select-DglmHz2C.js → Select-mBoYJnAZ.js} +16 -8
  64. package/dist/{SignPCIComponent-C6vCs_hW.js → SignPCIComponent-Kf3AvaVB.js} +13 -12
  65. package/dist/{SingpassSelection-Dv7obY3Y.js → SingpassSelection-CfWMbH3h.js} +6 -6
  66. package/dist/{SoleProprietorshipPage-BBaiVx9A.js → SoleProprietorshipPage-5Zy5JrB-.js} +5 -4
  67. package/dist/{SourceOfFundsPage-y4UhFduk.js → SourceOfFundsPage-CzUTeF1S.js} +195 -431
  68. package/dist/{StepProgressIndicator-zp8q1OzD.js → StepProgressIndicator-BE9LWSk0.js} +2 -2
  69. package/dist/{StoreProvider-BY1HQxMn.js → StoreProvider-D5FOVv9p.js} +170 -3243
  70. package/dist/{Summary-Dt4LcwGJ.js → Summary-v4P9Y5kQ.js} +6 -6
  71. package/dist/{TaskVerificationStatus-D7Yyt06M.js → TaskVerificationStatus-5hk86s25.js} +2 -2
  72. package/dist/{TaxInformationField-jCqBsFve.js → TaxInformationField-AcI4laLZ.js} +1469 -1475
  73. package/dist/{TaxReportingDropin-PYjxhlen.js → TaxReportingDropin-ZzpWS0S-.js} +35 -37
  74. package/dist/{TextArea-DaEM1LmR.js → TextArea-DeNjm7Gm.js} +2 -2
  75. package/dist/{TileGroup-B9NP0xL_.js → TileGroup-CZWfBoyM.js} +4 -4
  76. package/dist/{TrustDetailsPage-CcSVv1MP.js → TrustDetailsPage--gTP7acy.js} +41 -35
  77. package/dist/{TrustMemberCompanyPage-f7sbolBK.js → TrustMemberCompanyPage-Bmqb5sgh.js} +6 -5
  78. package/dist/{TrustMemberIndividualPage-BlkZ5WtP.js → TrustMemberIndividualPage-BJ7a5vEO.js} +6 -11
  79. package/dist/{TrustMemberRoleAndTypePage-DCsR7Tdy.js → TrustMemberRoleAndTypePage-eGQ7qNwo.js} +78 -22
  80. package/dist/{TrustMembersOverview-BhDqS5F-.js → TrustMembersOverview-C9VGJyIN.js} +12 -12
  81. package/dist/{UnincorporatedPartnershipIndividualPage-BbprnGI_.js → UnincorporatedPartnershipIndividualPage-DY8NWGLK.js} +6 -11
  82. package/dist/{UnincorporatedPartnershipMemberCompanyPage-BxpxNdg6.js → UnincorporatedPartnershipMemberCompanyPage-CxGb07CR.js} +6 -5
  83. package/dist/{UnincorporatedPartnershipMemberRoleAndTypePage-3xUvx9l-.js → UnincorporatedPartnershipMemberRoleAndTypePage-CP88Xvoy.js} +12 -11
  84. package/dist/{UnincorporatedPartnershipMembersOverview-BpZbRr_e.js → UnincorporatedPartnershipMembersOverview-CtJIWCek.js} +9 -9
  85. package/dist/{VerificationErrorAlert-7DNyS4C_.js → VerificationErrorAlert-DAmWLDTw.js} +5 -4
  86. package/dist/{ViewVerificationStatusComponent-urVZF63U.js → ViewVerificationStatusComponent-BKvZhB3Q.js} +5 -4
  87. package/dist/adyen-business-financing.js +6 -3
  88. package/dist/adyen-individual-configuration.js +6 -3
  89. package/dist/adyen-individual-status.js +2 -2
  90. package/dist/adyen-kyc-components.js +19 -19
  91. package/dist/adyen-onboarding.js +6 -3
  92. package/dist/adyen-terms-of-service-management.js +6 -3
  93. package/dist/adyen-terms-of-service-status.js +2 -2
  94. package/dist/adyen-transfer-instrument-configuration.js +6 -3
  95. package/dist/adyen-transfer-instrument-management.js +2 -2
  96. package/dist/adyen-verification-status.js +6 -3
  97. package/dist/{bafinUtils-BROXAx5r.js → bafinUtils-D-iUsb1z.js} +19 -69
  98. package/dist/{bg-BG-DVjwfSz4.js → bg-BG-BMe54km9.js} +2 -2
  99. package/dist/{commonValidators-B7eyF3yt.js → commonValidators-CalwJK5h.js} +2 -2
  100. package/dist/{cs-CZ-CLY9qYTs.js → cs-CZ-BwiHrdav.js} +2 -2
  101. package/dist/{da-DK-uHPPFvD-.js → da-DK-D3nwkjjZ.js} +2 -2
  102. package/dist/{de-DE-SMf6w4NJ.js → de-DE-ZU2Hsp38.js} +2 -2
  103. package/dist/{dropinUtils-DqJ1Ds6F.js → dropinUtils-D59ldyqp.js} +4 -4
  104. package/dist/{el-GR-wv99Y9Yf.js → el-GR-DbOICeSZ.js} +2 -2
  105. package/dist/{es-ES-BqpvBqmR.js → es-ES-diRragkx.js} +2 -2
  106. package/dist/{et-EE-CAuCY0qn.js → et-EE--PzlaQkR.js} +2 -2
  107. package/dist/{fi-FI-DPegZzTc.js → fi-FI-D0_0MXLR.js} +2 -2
  108. package/dist/{fieldConfig-DVdDkF4v.js → fieldConfig-1wEVw6MW.js} +6 -6
  109. package/dist/{formUtils-6n_sAj9f.js → formUtils-BUyxO4Zy.js} +3 -3
  110. package/dist/{fr-FR-BPGwsLDa.js → fr-FR-CbjzHhqH.js} +2 -2
  111. package/dist/{getName-2kWqXhZa.js → getName-BCGuaRKD.js} +2 -2
  112. package/dist/{hr-HR-DdqNL1pQ.js → hr-HR-CDuWrX1x.js} +2 -2
  113. package/dist/{hu-HU-C1LJENXO.js → hu-HU-CXB62KSV.js} +2 -2
  114. package/dist/{iframeWidget-BHiCu3PY.js → iframeWidget-CxqD-Z9-.js} +4 -4
  115. package/dist/{isEmpty-COLZr49P.js → isEmpty-BCB0E6W3.js} +2 -2
  116. package/dist/{it-IT-B1eJg9RL.js → it-IT-BbW5PMj0.js} +2 -2
  117. package/dist/ja-JP-D8-geaup.js +13 -0
  118. package/dist/{japanSupportUtils-DHTmTrsj.js → japanSupportUtils-CNwDfN86.js} +3 -3
  119. package/dist/{localizeDateString-tOyK52gO.js → localizeDateString-DnJ6n3p4.js} +2 -2
  120. package/dist/{lt-LT-BmRnIfWs.js → lt-LT-BCusE8Fe.js} +2 -2
  121. package/dist/{lv-LV-CX9j9Dtv.js → lv-LV-D_D39wup.js} +2 -2
  122. package/dist/{mapExistingFile-Bz4_d6_m.js → mapExistingFile-DF8ylI3D.js} +4 -4
  123. package/dist/{mapJpAddressSchemaToAddressLocalizations-COA1bDNt.js → mapJpAddressSchemaToAddressLocalizations-Y24lCOu6.js} +38 -38
  124. package/dist/{mapLegalEntityToIndividualOnfidoSchema-CdLLvb8F.js → mapLegalEntityToIndividualSchema-BfluetfB.js} +4 -4
  125. package/dist/{mapTransferInstrumentToPayoutAccount-CPpBX8oM.js → mapTransferInstrumentToPayoutAccount-DGEME7Zv.js} +3 -2
  126. package/dist/{nl-NL-cVVIDG7s.js → nl-NL-Z2ifhzHq.js} +2 -2
  127. package/dist/{no-NO-C_tmZ39d.js → no-NO-D09wFbmU.js} +2 -2
  128. package/dist/{patternValidators-DSKvrLlO.js → patternValidators-DbUGFIUU.js} +2 -2
  129. package/dist/{pl-PL-DFZFSKZX.js → pl-PL-uU0uFIWi.js} +2 -2
  130. package/dist/{process-field-configurations-2fq1Bq8j.js → process-field-configurations-DGERpLQI.js} +4 -4
  131. package/dist/{pt-BR-CMiGlY3k.js → pt-BR-DzLl_fGR.js} +2 -2
  132. package/dist/{pt-PT-DmdQxN_1.js → pt-PT-Czix42gf.js} +2 -2
  133. package/dist/{resolveEnvironment-DPBuIa7_.js → resolveEnvironment-S2KpSjit.js} +3 -3
  134. package/dist/{ro-RO-B0slmyWK.js → ro-RO-BmHGZmbO.js} +2 -2
  135. package/dist/{roleMetadata-steXST1L.js → roleMetadata-CKgUDBXU.js} +2 -2
  136. package/dist/{sk-SK-BptPuon4.js → sk-SK-hx3DmG_3.js} +2 -2
  137. package/dist/{sl-SI-C3nGkfNb.js → sl-SI-D06jZL__.js} +2 -2
  138. package/dist/style.css +272 -295
  139. package/dist/styles-CLV89_hH.js +272 -295
  140. package/dist/{sv-SE-CXn28ybc.js → sv-SE-eJgjc6iG.js} +2 -2
  141. package/dist/types/api/address/useAddressCleanse.d.ts +1 -1
  142. package/dist/types/api/address/useRetrieveAddress.d.ts +1 -1
  143. package/dist/types/api/address/useRetrieveFromPostcodeJp.d.ts +1 -1
  144. package/dist/types/api/address/useSearchAddress.d.ts +1 -2
  145. package/dist/types/api/businessLines/useBusinessLines.d.ts +2 -2
  146. package/dist/types/api/businessLines/useCreateBusinessLine.d.ts +1 -1
  147. package/dist/types/api/businessLines/useDeleteBusinessLine.d.ts +1 -1
  148. package/dist/types/api/businessLines/useUpdateBusinessLines.d.ts +1 -1
  149. package/dist/types/api/businessLines/useUpdateSourceOfFunds.d.ts +1 -1
  150. package/dist/types/api/check/useCheck.d.ts +1 -2
  151. package/dist/types/api/companyDataSet/useClearCompanyData.d.ts +1 -1
  152. package/dist/types/api/companySearch/useCompanySearch.d.ts +1 -2
  153. package/dist/types/api/companySelection/useCompanySelection.d.ts +1 -1
  154. package/dist/types/api/configurations/useScenarios.d.ts +2 -160
  155. package/dist/types/api/configurations/useSupportedCountries.d.ts +1 -1
  156. package/dist/types/api/configurations/useTaskTypes.d.ts +1 -1
  157. package/dist/types/api/configurations/useVersionConfiguration.d.ts +1 -1
  158. package/dist/types/api/createLegalEntity/useCreateLegalEntity.d.ts +1 -1
  159. package/dist/types/api/datasets/useLegalForms.d.ts +1 -1
  160. package/dist/types/api/datasets/useNaceCodes.d.ts +1 -1
  161. package/dist/types/api/datasets/useSourceOfFundsTypes.d.ts +1 -1
  162. package/dist/types/api/documentValidation/useDocumentValidate.d.ts +1 -3
  163. package/dist/types/api/documents/useCreateDocument.d.ts +1 -1
  164. package/dist/types/api/documents/useDeleteDocument.d.ts +1 -1
  165. package/dist/types/api/documents/useDocument.d.ts +1 -1
  166. package/dist/types/api/documents/useDocuments.d.ts +1 -1
  167. package/dist/types/api/documents/useUpdateDocument.d.ts +1 -1
  168. package/dist/types/api/entityVerifications/useVerifyIdNumber.d.ts +1 -1
  169. package/dist/types/api/idNowProvider/useIdNowProvider.d.ts +3 -4
  170. package/dist/types/api/idVerificationProviders/idVerificationStartCheck.d.ts +1 -1
  171. package/dist/types/api/idVerificationProviders/useExtractDocumentInformation.d.ts +1 -1
  172. package/dist/types/api/idVerificationProviders/useIdVerificationToken.d.ts +2 -2
  173. package/dist/types/api/industryCodes/useIndustryCodes.d.ts +1 -2
  174. package/dist/types/api/legalEntity/useConfirmReview.d.ts +1 -1
  175. package/dist/types/api/legalEntity/useLegalEntity.d.ts +8 -389
  176. package/dist/types/api/legalEntity/useUpdateLegalEntity.d.ts +1 -1
  177. package/dist/types/api/onboardingStatus/useGenerateOnboardingLink.d.ts +1 -1
  178. package/dist/types/api/onboardingStatus/useOnboardingStatus.d.ts +1 -1
  179. package/dist/types/api/openId/useOpenIdAuthorizationLink.d.ts +1 -2
  180. package/dist/types/api/pci/usePciQuestionnaireList.d.ts +1 -1
  181. package/dist/types/api/pci/usePciStatus.d.ts +1 -1
  182. package/dist/types/api/pci/usePciTemplate.d.ts +1 -1
  183. package/dist/types/api/pci/useSignPci.d.ts +1 -1
  184. package/dist/types/api/providersConfiguration/useProviderStatus.d.ts +1 -1
  185. package/dist/types/api/queryKeys.d.ts +1 -1
  186. package/dist/types/api/taskStatus/useTaskStatus.d.ts +1 -1
  187. package/dist/types/api/taxClassification/useTaxClassification.d.ts +1 -1
  188. package/dist/types/api/termsOfService/useAcceptTermsOfService.d.ts +1 -2
  189. package/dist/types/api/termsOfService/useAcceptedTermsOfService.d.ts +1 -7
  190. package/dist/types/api/termsOfService/useTermsOfService.d.ts +1 -1
  191. package/dist/types/api/termsOfService/useTermsOfServiceAcceptanceInfos.d.ts +1 -1
  192. package/dist/types/api/termsOfService/useTermsOfServiceStatus.d.ts +1 -1
  193. package/dist/types/api/tinVerification/useVerifyTin.d.ts +1 -1
  194. package/dist/types/api/transferInstruments/useBankVerificationProviders.d.ts +1 -1
  195. package/dist/types/api/transferInstruments/useCreateTrustedTransferInstrument.d.ts +1 -1
  196. package/dist/types/api/transferInstruments/useDeleteTransferInstrument.d.ts +1 -1
  197. package/dist/types/api/transferInstruments/useHandleBankVerificationError.d.ts +1 -1
  198. package/dist/types/api/transferInstruments/useTransferInstrument.d.ts +2 -2
  199. package/dist/types/api/transferInstruments/useTransferInstruments.d.ts +1 -1
  200. package/dist/types/api/transferInstruments/useUpdateTransferInstrument.d.ts +1 -1
  201. package/dist/types/api/transferInstruments/useUpdateTrustedTransferInstrument.d.ts +1 -1
  202. package/dist/types/api/types.d.ts +1 -1
  203. package/dist/types/api/uiAnalytics/useAnalyticsSession.d.ts +1 -1
  204. package/dist/types/api/uiAnalytics/usePushAnalyticEvent.d.ts +1 -1
  205. package/dist/types/api/validation/useValidateAccountIdentification.d.ts +1 -2
  206. package/dist/types/api/validation/useValidatePhoneNumber.d.ts +1 -1
  207. package/dist/types/components/BankAccount/forms/BankDocument/BankDocumentClassification.d.ts +1 -2
  208. package/dist/types/components/Business/forms/AdditionalInformation/AdditionalInformation.d.ts +0 -2
  209. package/dist/types/components/Business/forms/BusinessDetails/forms.d.ts +2 -1
  210. package/dist/types/components/Business/forms/BusinessSelection/BusinessInformationCard/BusinessInformationCard.d.ts +1 -1
  211. package/dist/types/components/Business/forms/rules.d.ts +3 -3
  212. package/dist/types/components/Business/mapping/businessDetails/mapBusinessDetailsSchemaToLegalEntity.d.ts +2 -1
  213. package/dist/types/components/Business/mapping/businessDetails/mapLegalEntityToBusinessDetailsSchema.d.ts +8 -1
  214. package/dist/types/components/Business/tasks/BusinessDetailsDropin/utils.d.ts +0 -1
  215. package/dist/types/components/Business/utils/companyUtil.d.ts +0 -9
  216. package/dist/types/components/BusinessLines/constants.d.ts +2 -0
  217. package/dist/types/components/BusinessLines/tasks/BusinessLines/BusinessLineModal/BusinessLineModal.d.ts +2 -1
  218. package/dist/types/components/BusinessLines/tasks/utils.d.ts +4 -2
  219. package/dist/types/components/BusinessLines/tasks/validate.d.ts +0 -2
  220. package/dist/types/components/EFP/tasks/SourceOfFundsDropin/types.d.ts +20 -21
  221. package/dist/types/components/EFP/tasks/SourceOfFundsDropin/utils.d.ts +5 -2
  222. package/dist/types/components/EmbeddedDropins/CreateIndividualComponent/CreateIndividualComponent.d.ts +2 -2
  223. package/dist/types/components/Individual/fields/DriversLicense/DriversLicense.types.d.ts +1 -1
  224. package/dist/types/components/Individual/fields/IdentityNumber/fieldConfig.d.ts +4 -3
  225. package/dist/types/components/Individual/forms/AdditionalPersonalDetails/AdditionalPersonalDetails.types.d.ts +29 -0
  226. package/dist/types/components/Individual/forms/{IndividualOnfido/AdditionalPersonalDetails → AdditionalPersonalDetails}/Identity/Identity.types.d.ts +3 -3
  227. package/dist/types/components/Individual/forms/{IndividualOnfido/AdditionalPersonalDetails → AdditionalPersonalDetails}/Identity/TypeOfIdentity/index.d.ts +2 -2
  228. package/dist/types/components/Individual/forms/AdditionalPersonalDetails/Identity/validate.d.ts +4 -0
  229. package/dist/types/components/Individual/forms/{IndividualOnfido/AdditionalPersonalDetails → AdditionalPersonalDetails}/validate.d.ts +8 -8
  230. package/dist/types/components/Individual/forms/BasicDetails/BasicDetails.types.d.ts +22 -0
  231. package/dist/types/components/Individual/forms/BasicDetails/validate.d.ts +9 -0
  232. package/dist/types/components/Individual/forms/{IndividualOnfido/DataConflictsModal → DataConflictsModal}/ConflictRow.d.ts +1 -1
  233. package/dist/types/components/Individual/forms/{IndividualOnfido/DataConflictsModal → DataConflictsModal}/DataConflictsModal.d.ts +1 -1
  234. package/dist/types/components/Individual/forms/{Individual/IdDocumentUpload → IdDocumentUpload}/types.d.ts +5 -15
  235. package/dist/types/components/Individual/forms/{Individual/IdDocumentUpload → IdDocumentUpload}/utils.d.ts +1 -1
  236. package/dist/types/components/Individual/forms/IdNowVerificationModal/isIdNowModalOpen.d.ts +18 -0
  237. package/dist/types/components/Individual/forms/{IndividualOnfido/IdVerificationMethod → IdVerificationMethod}/IdVerificationMethod.types.d.ts +3 -3
  238. package/dist/types/components/Individual/forms/{IndividualOnfido/IdVerificationMethod → IdVerificationMethod}/OnfidoVerificationModal/OnfidoVerificationModal.d.ts +1 -1
  239. package/dist/types/components/Individual/forms/{IndividualOnfido/IdVerificationMethod → IdVerificationMethod}/UploadedDocument/UploadedDocument.d.ts +1 -1
  240. package/dist/types/components/Individual/forms/{IndividualOnfido/IdVerificationMethod → IdVerificationMethod}/individualOnfidoConflictsSchema.d.ts +5 -5
  241. package/dist/types/components/Individual/forms/IdVerificationMethod/mapExtractionResultToSchema.d.ts +4 -0
  242. package/dist/types/components/Individual/forms/{IndividualOnfido/IdVerificationMethod → IdVerificationMethod}/validateExtractionResult.d.ts +3 -3
  243. package/dist/types/components/Individual/forms/{IndividualOnfido/IndividualOnfido.d.ts → Individual.d.ts} +6 -2
  244. package/dist/types/components/Individual/forms/{IndividualOnfido/IndividualOnfido.rules.d.ts → Individual.rules.d.ts} +5 -6
  245. package/dist/types/components/Individual/forms/{IndividualOnfido/IndividualOnfido.types.d.ts → Individual.types.d.ts} +15 -15
  246. package/dist/types/components/Individual/forms/{Individual/ProofOfRelationship → ProofOfRelationship}/types.d.ts +1 -1
  247. package/dist/types/components/Individual/forms/{Individual/ProofOfResidency → ProofOfResidency}/types.d.ts +1 -1
  248. package/dist/types/components/Individual/forms/{IndividualOnfido/SignatoryQuestionnaire → SignatoryQuestionnaire}/SignatoryQuestionnaire.types.d.ts +1 -1
  249. package/dist/types/components/Individual/forms/{IndividualOnfido/UboQuestionnaire → UboQuestionnaire}/UboQuestionnaire.types.d.ts +2 -2
  250. package/dist/types/components/Individual/forms/{IndividualOnfido/UboQuestionnaire → UboQuestionnaire}/UboQuestionnaireModalContent.d.ts +1 -1
  251. package/dist/types/components/Individual/helpers/bafinUtils.d.ts +3 -2
  252. package/dist/types/components/Individual/helpers/mandateIdVerificationForMotionCapture.d.ts +2 -3
  253. package/dist/types/components/Individual/helpers/roleUtils.d.ts +1 -1
  254. package/dist/types/components/Individual/mapping/adjustOnfidoIdentificationData.d.ts +1 -1
  255. package/dist/types/components/Individual/mapping/getOnfidoIdentityTypeToApiIdentityTypeMap.d.ts +1 -1
  256. package/dist/types/components/Individual/mapping/individualKeyMappings.d.ts +6 -12
  257. package/dist/types/components/Individual/mapping/mapApiDocumentToIndividualDocuments.d.ts +2 -2
  258. package/dist/types/components/Individual/mapping/mapIndividualDocumentToApiDocument.d.ts +2 -3
  259. package/dist/types/components/Individual/mapping/{mapIndividualOnfidoSchemaToLegalEntity.d.ts → mapIndividualSchemaToLegalEntity.d.ts} +1 -1
  260. package/dist/types/components/Individual/mapping/{mapLegalEntityToIndividualOnfidoSchema.d.ts → mapLegalEntityToIndividualSchema.d.ts} +1 -1
  261. package/dist/types/components/Individual/pages/DecisionMakerDetailsPage.d.ts +3 -4
  262. package/dist/types/components/Individual/pages/LegalRepresentativeDetailsPage.d.ts +2 -2
  263. package/dist/types/components/Individual/pages/RootIndividualDetailsPage.d.ts +2 -2
  264. package/dist/types/components/Individual/tasks/DecisionMakers/DecisionMakerDetails/utils.d.ts +1 -13
  265. package/dist/types/components/Individual/tasks/DecisionMakers/RemediationAlerts/remediation.config.d.ts +0 -2
  266. package/dist/types/components/Individual/tasks/DecisionMakers/types.d.ts +8 -0
  267. package/dist/types/components/Individual/tasks/IndividualDropin/IndividualDropin.d.ts +2 -2
  268. package/dist/types/components/Individual/tasks/IndividualDropin/individualFormConfig.d.ts +3 -3
  269. package/dist/types/components/{Individual → Shared}/fields/LocalizedNameFields/types.d.ts +2 -2
  270. package/dist/types/components/Shared/fields/LocalizedNameFields/validate.d.ts +4 -0
  271. package/dist/types/components/Shared/forms/Address/utils.d.ts +1 -1
  272. package/dist/types/components/Shared/tasks/TaskList/utils.d.ts +0 -2
  273. package/dist/types/components/Trust/pages/TrustMemberIndividualPage.d.ts +2 -2
  274. package/dist/types/components/Trust/tasks/TrustDropin/TrustMultiform.d.ts +2 -1
  275. package/dist/types/components/UnincorporatedPartnership/pages/UnincorporatedPartnershipIndividualPage.d.ts +2 -2
  276. package/dist/types/components/ui/atoms/Card/Card.d.ts +19 -0
  277. package/dist/types/context/ExperimentContext/types.d.ts +0 -36
  278. package/dist/types/context/QueryContext/QueryClient.d.ts +1 -1
  279. package/dist/types/context/StateContext/types.d.ts +2 -3
  280. package/dist/types/core/models/api/instant-id-verification.d.ts +1 -1
  281. package/dist/types/core/models/api/legal-entity-association.d.ts +1 -1
  282. package/dist/types/core/user-events.d.ts +3 -2
  283. package/dist/types/embeds/baseEmbedProps.d.ts +0 -21
  284. package/dist/types/embeds/business-financing/adyen-business-financing.d.ts +2 -1
  285. package/dist/types/embeds/individual-configuration/adyen-individual-configuration.d.ts +5 -1
  286. package/dist/types/embeds/individual-configuration/adyen-individual-configuration.types.d.ts +2 -2
  287. package/dist/types/embeds/onboarding/adyen-onboarding.d.ts +2 -1
  288. package/dist/types/embeds/terms-of-service-management/adyen-terms-of-service-management.d.ts +5 -1
  289. package/dist/types/embeds/transfer-instrument-configuration/adyen-transfer-instrument-configuration.d.ts +2 -1
  290. package/dist/types/embeds/verification-status/adyen-verification-status.d.ts +2 -1
  291. package/dist/types/hooks/useAssociatedLegalEntity.d.ts +1 -1
  292. package/dist/types/hooks/useUboQuestionnaire.d.ts +2 -2
  293. package/dist/types/stores/formState.d.ts +1 -1
  294. package/dist/types/utils/addLinkedFields.d.ts +0 -2
  295. package/dist/types/utils/api/processCapabilitites.d.ts +2 -3
  296. package/dist/types/utils/birthDateUtils.d.ts +0 -17
  297. package/dist/types/utils/entityAssociationUtil.d.ts +3 -4
  298. package/dist/types/utils/entityStatusUtil.d.ts +1 -1
  299. package/dist/types/utils/getFieldsWithExistingData.d.ts +2 -3
  300. package/dist/types/utils/logger.d.ts +0 -1
  301. package/dist/types/utils/performance.d.ts +64 -0
  302. package/dist/types/utils/verification/helpers/verifyIdNumber.d.ts +3 -2
  303. package/dist/{types-2lh4v1NS.js → types-CUp2kEQJ.js} +1 -1
  304. package/dist/{types-Dk94b8kx.js → types-DY4_Oje-.js} +1 -37
  305. package/dist/{types-MoVpdFbr.js → types-DgF4O5ru.js} +2 -2
  306. package/dist/{types-CGYmPCYj.js → types-vqz1MZ1F.js} +2 -2
  307. package/dist/{useAssociatedLegalEntity-BufOLUsc.js → useAssociatedLegalEntity-C8wrPYHO.js} +3 -2
  308. package/dist/{useBusinessDetailsData-D4EbMk7x.js → useBusinessDetailsData-nW3yfjoJ.js} +253 -183
  309. package/dist/{useCreateLegalEntity-CmZ_Xs5Y.js → useCreateLegalEntity-DEc1Kwc9.js} +3 -2
  310. package/dist/{useDataset-BRi4mlWJ.js → useDataset-CLceNuVk.js} +2 -2
  311. package/dist/{useForm-DpYu-ydO.js → useForm-C6Y--Xun.js} +3 -3
  312. package/dist/{useFormContext-03qTwgil.js → useFormContext-7UjLuyeC.js} +7 -7
  313. package/dist/{useGlobalData-Dk70ESMH.js → useGlobalData-DS2ZGdGI.js} +2 -2
  314. package/dist/{useMultiForm-BNwZbeFz.js → useMultiForm-B3D5YMQv.js} +5 -5
  315. package/dist/{useOnboardingStatus-D6f5Kt_w.js → useOnboardingStatus-pO-8haat.js} +3 -2
  316. package/dist/{useScenarios-BQO76Qbs.js → useScenarios-BeYCbuMy.js} +5 -3
  317. package/dist/{useTermsOfServiceStatus-pQ-OjZcj.js → useTermsOfServiceStatus-a9HTnF2t.js} +3 -2
  318. package/dist/{useToastContext-BG3cHfke.js → useToastContext-CY5gBg6O.js} +3 -2
  319. package/dist/{useUnincorporatedPartnershipMembers-DumGMdhZ.js → useUnincorporatedPartnershipMembers-BFoyyohQ.js} +4 -4
  320. package/dist/{useUpdateBusinessLines-BWk0eCVS.js → useUpdateBusinessLines-Ca6VPudz.js} +20 -17
  321. package/dist/{useUpdateLegalEntity-DJomQK33.js → useUpdateLegalEntity-CV9zKmhh.js} +4 -3
  322. package/dist/{utils-DkGVdk7W.js → utils-9A5Vx0Md.js} +25 -21
  323. package/dist/{utils-B5nzpIMU.js → utils-DJ11eWHJ.js} +6 -6
  324. package/dist/{utils-Cm0vPCdA.js → utils-DW7BsBmK.js} +1 -1
  325. package/dist/{utils-DtmnCXcG.js → utils-DkD_AO7r.js} +2 -2
  326. package/dist/{utils-CANy0Arr.js → utils-kwRyi0uY.js} +2 -2
  327. package/dist/{validate-DUJOPfMa.js → validate-BjjltZlf.js} +2 -2
  328. package/dist/{validate-D5t_i90f.js → validate-CDvp3PSV.js} +4 -3
  329. package/dist/{validationError-BkGOdtDT.js → validationError-BSalUIny.js} +3 -3
  330. package/package.json +56 -49
  331. package/dist/Card-BSfGetza.js +0 -82
  332. package/dist/EntityAssociation-Bl1NeRHI.js +0 -159
  333. package/dist/ManageIndividualComponent-C7zwlJuO.js +0 -46
  334. package/dist/hasDataChanged-DzGl3k7N.js +0 -19
  335. package/dist/id-verification-instant-Byt4Oul6.js +0 -58
  336. package/dist/id-verification-manual-CvcTkOSY.js +0 -55
  337. package/dist/ja-JP-PnqAHl14.js +0 -13
  338. package/dist/types/components/Business/tasks/BusinessDetailsDropin/mandatoryFields.d.ts +0 -3
  339. package/dist/types/components/Individual/fields/DecisionMakerRole/DecisionMakerRole.d.ts +0 -3
  340. package/dist/types/components/Individual/fields/DecisionMakerRole/NomineeDecisionMakerRole.d.ts +0 -10
  341. package/dist/types/components/Individual/fields/DecisionMakerRole/types.d.ts +0 -23
  342. package/dist/types/components/Individual/fields/NameFields/validate.d.ts +0 -4
  343. package/dist/types/components/Individual/forms/Individual/IdDocumentUpload/IdDocumentAlreadyUpload.d.ts +0 -2
  344. package/dist/types/components/Individual/forms/Individual/IdDocumentUpload/IdDocumentInstantVerification.d.ts +0 -3
  345. package/dist/types/components/Individual/forms/Individual/IdDocumentUpload/IdDocumentUpload.d.ts +0 -3
  346. package/dist/types/components/Individual/forms/Individual/IdVerificationMethod/IdVerificationMethod.d.ts +0 -3
  347. package/dist/types/components/Individual/forms/Individual/IdVerificationMethod/idVerificationMethodMetadata.d.ts +0 -15
  348. package/dist/types/components/Individual/forms/Individual/IdVerificationMethod/types.d.ts +0 -14
  349. package/dist/types/components/Individual/forms/Individual/Individual.d.ts +0 -47
  350. package/dist/types/components/Individual/forms/Individual/PersonalDetails/Identity/Identity.d.ts +0 -2
  351. package/dist/types/components/Individual/forms/Individual/PersonalDetails/Identity/IdentityAu/IdentityAu.d.ts +0 -2
  352. package/dist/types/components/Individual/forms/Individual/PersonalDetails/Identity/IdentityAu/validate.d.ts +0 -3
  353. package/dist/types/components/Individual/forms/Individual/PersonalDetails/Identity/IdentityHK/IdentityHK.d.ts +0 -2
  354. package/dist/types/components/Individual/forms/Individual/PersonalDetails/Identity/IdentityHK/validate.d.ts +0 -3
  355. package/dist/types/components/Individual/forms/Individual/PersonalDetails/Identity/IdentityNZ/IdentityNZ.d.ts +0 -2
  356. package/dist/types/components/Individual/forms/Individual/PersonalDetails/Identity/IdentityNZ/validate.d.ts +0 -3
  357. package/dist/types/components/Individual/forms/Individual/PersonalDetails/Identity/TypeOfIdentity/index.d.ts +0 -11
  358. package/dist/types/components/Individual/forms/Individual/PersonalDetails/Identity/identityUS/IdentityUS.d.ts +0 -4
  359. package/dist/types/components/Individual/forms/Individual/PersonalDetails/Identity/types.d.ts +0 -14
  360. package/dist/types/components/Individual/forms/Individual/PersonalDetails/PersonalDetails.d.ts +0 -3
  361. package/dist/types/components/Individual/forms/Individual/PersonalDetails/types.d.ts +0 -41
  362. package/dist/types/components/Individual/forms/Individual/PersonalDetails/validate.d.ts +0 -21
  363. package/dist/types/components/Individual/forms/Individual/form-ids.d.ts +0 -2
  364. package/dist/types/components/Individual/forms/Individual/rules.d.ts +0 -40
  365. package/dist/types/components/Individual/forms/Individual/types.d.ts +0 -50
  366. package/dist/types/components/Individual/forms/IndividualOnfido/AdditionalPersonalDetails/AdditionalPersonalDetails.types.d.ts +0 -29
  367. package/dist/types/components/Individual/forms/IndividualOnfido/AdditionalPersonalDetails/Identity/validate.d.ts +0 -4
  368. package/dist/types/components/Individual/forms/IndividualOnfido/BasicDetails/BasicDetails.types.d.ts +0 -22
  369. package/dist/types/components/Individual/forms/IndividualOnfido/BasicDetails/validate.d.ts +0 -6
  370. package/dist/types/components/Individual/forms/IndividualOnfido/IdNowVerificationModal/isIdNowModalOpen.d.ts +0 -17
  371. package/dist/types/components/Individual/forms/IndividualOnfido/IdVerificationMethod/mapExtractionResultToSchema.d.ts +0 -4
  372. package/dist/types/components/Individual/helpers/isOnfidoAutofillFlowEnabled.d.ts +0 -4
  373. package/dist/types/components/Individual/mapping/adjustIdentificationData.d.ts +0 -3
  374. package/dist/types/components/Individual/mapping/getIdentityTypeToApiIdentityTypeMap.d.ts +0 -3
  375. package/dist/types/components/Individual/mapping/individualOnfidoKeyMappings.d.ts +0 -8
  376. package/dist/types/components/Individual/mapping/mapIndividualToLegalEntity.d.ts +0 -3
  377. package/dist/types/components/Individual/mapping/mapLegalEntityToIndividual.d.ts +0 -3
  378. package/dist/types/components/Individual/tasks/IndividualOnfidoDropin/IndividualOnfidoDropin.d.ts +0 -2
  379. package/dist/types/components/Individual/tasks/IndividualOnfidoDropin/individualOnfidoFormConfig.d.ts +0 -4
  380. package/dist/types/components/ui/molecules/Card/Card.d.ts +0 -3
  381. package/dist/types/components/ui/molecules/Card/types.d.ts +0 -26
  382. package/dist/types/embeds/EmbedBaseElement.d.ts +0 -41
  383. package/dist/types/embeds/EmbedCore.d.ts +0 -22
  384. package/dist/types/embeds/business-financing/AdyenBusinessFinancing.d.ts +0 -14
  385. package/dist/types/embeds/individual-configuration/AdyenIndividual.d.ts +0 -12
  386. package/dist/types/embeds/individual-status/AdyenManageIndividual.d.ts +0 -12
  387. package/dist/types/embeds/onboarding/AdyenOnboarding.d.ts +0 -12
  388. package/dist/types/embeds/terms-of-service-management/AdyenTermsOfService.d.ts +0 -12
  389. package/dist/types/embeds/terms-of-service-status/AdyenManageTermsOfService.d.ts +0 -12
  390. package/dist/types/embeds/transfer-instrument-configuration/AdyenTransferInstrument.d.ts +0 -16
  391. package/dist/types/embeds/transfer-instrument-management/AdyenManageTransferInstrument.d.ts +0 -14
  392. package/dist/types/embeds/verification-status/AdyenVerificationStatus.d.ts +0 -20
  393. /package/dist/types/components/Individual/forms/{IndividualOnfido/AdditionalPersonalDetails → AdditionalPersonalDetails}/AdditionalPersonalDetails.d.ts +0 -0
  394. /package/dist/types/components/Individual/forms/{IndividualOnfido/AdditionalPersonalDetails → AdditionalPersonalDetails}/Identity/Identity.d.ts +0 -0
  395. /package/dist/types/components/Individual/forms/{IndividualOnfido/BasicDetails → BasicDetails}/BasicDetails.d.ts +0 -0
  396. /package/dist/types/components/Individual/forms/{IndividualOnfido/GuidanceQuestion → GuidanceQuestion}/GuidanceQuestion.d.ts +0 -0
  397. /package/dist/types/components/Individual/forms/{Individual/IdDocumentUpload → IdDocumentUpload}/IdDocumentManualUpload.d.ts +0 -0
  398. /package/dist/types/components/Individual/forms/{IndividualOnfido/IdNowVerificationModal → IdNowVerificationModal}/IdNowVerificationModal.d.ts +0 -0
  399. /package/dist/types/components/Individual/forms/{Individual/IdVerification → IdVerification}/IdVerification.d.ts +0 -0
  400. /package/dist/types/components/Individual/forms/{Individual/IdVerification → IdVerification}/idVerificationProviderId.d.ts +0 -0
  401. /package/dist/types/components/Individual/forms/{Individual/IdVerification → IdVerification}/types.d.ts +0 -0
  402. /package/dist/types/components/Individual/forms/{IndividualOnfido/IdVerificationMethod → IdVerificationMethod}/IdVerificationMethod.d.ts +0 -0
  403. /package/dist/types/components/Individual/forms/{IndividualOnfido/ManualIdUpload → ManualIdUpload}/ManualIdUpload.d.ts +0 -0
  404. /package/dist/types/components/Individual/forms/{Individual/ProofOfRelationship → ProofOfRelationship}/index.d.ts +0 -0
  405. /package/dist/types/components/Individual/forms/{Individual/ProofOfResidency → ProofOfResidency}/ProofOfResidency.d.ts +0 -0
  406. /package/dist/types/components/Individual/forms/{IndividualOnfido/SignatoryQuestionnaire → SignatoryQuestionnaire}/SignatoryQuestionnaire.d.ts +0 -0
  407. /package/dist/types/components/Individual/forms/{IndividualOnfido/SignatoryQuestionnaire → SignatoryQuestionnaire}/SignatoryQuestionnaireModalContent.d.ts +0 -0
  408. /package/dist/types/components/Individual/forms/{IndividualOnfido/UboQuestionnaire → UboQuestionnaire}/UboQuestionnaire.d.ts +0 -0
  409. /package/dist/types/components/Individual/forms/{IndividualOnfido/form-ids.d.ts → form-ids.d.ts} +0 -0
  410. /package/dist/types/components/Individual/tasks/{IndividualOnfidoDropin/IndividualOnfidoStore.d.ts → IndividualDropin/IndividualStore.d.ts} +0 -0
  411. /package/dist/types/components/{Individual → Shared}/fields/LocalizedNameFields/LocalizedNameFields.d.ts +0 -0
@@ -2,35 +2,35 @@
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] = "9434fd69-df2d-4086-8d65-3e5e7db70d53", e._sentryDebugIdIdentifier = "sentry-dbid-9434fd69-df2d-4086-8d65-3e5e7db70d53");
5
+ n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "184b60fd-ec8a-4382-9e57-e3bac4ebc209", e._sentryDebugIdIdentifier = "sentry-dbid-184b60fd-ec8a-4382-9e57-e3bac4ebc209");
6
6
  } catch (e) {
7
7
  }
8
8
  }
9
9
  ;
10
- import { bn as getNestedPropertyKeys, ad as objectsDeepEqual, u as useTranslation, c as useLegalEntity, R as ROOT_LE, C as CountryCodes, r as LegalEntityTypes, U as TaskTypes, b0 as keysOf, Z as useExperimentsContext, N as useAccountHolder } from "./StoreProvider-BY1HQxMn.js";
10
+ import { bb as getNestedPropertyKeys, C as CountryCodes, q as LegalEntityTypes, aa as objectsDeepEqual, u as useTranslation, c as useLegalEntity, R as ROOT_LE, O as TaskTypes, aG as keysOf, W as useExperimentsContext, K as useAccountHolder } from "./StoreProvider-D5FOVv9p.js";
11
11
  import { jsxs, jsx, Fragment } from "preact/jsx-runtime";
12
12
  import { memo } from "preact/compat";
13
13
  import { useState, useRef, useEffect, useCallback, useMemo } from "preact/hooks";
14
- import { F as Field } from "./Field-BEoeMy3u.js";
15
- import { H as Header } from "./Header-87H731cQ.js";
16
- import { S as Select } from "./Select-DglmHz2C.js";
17
- import { T as TextArea } from "./TextArea-DaEM1LmR.js";
18
- import { S as StateContextSetter } from "./validate-D5t_i90f.js";
19
- import { u as useForm } from "./useForm-DpYu-ydO.js";
20
- import { D as DocumentGuidance, u as uppercase } from "./mapExistingFile-Bz4_d6_m.js";
21
- import { D as Dropzone } from "./Dropzone-CJTj99Jm.js";
22
- import { E as ErrorPanel } from "./ErrorPanel-DNtK56tD.js";
23
- import { c as createFormUtils } from "./formUtils-6n_sAj9f.js";
24
- import { C as Checkbox } from "./Checkbox-Bp4HrJKI.js";
25
- import { C as CompanyTypesValues } from "./bafinUtils-BROXAx5r.js";
26
- import { m as makeMask, n as numericInputs, a as nonInputs, d as alphanumericInputs, c as customInputs, b as alphaInputs, s as spacer, M as MaskedInput } from "./MaskedInput-Bet0abik.js";
27
- import { S as SettingNames } from "./TaskVerificationStatus-D7Yyt06M.js";
28
- import { C as COUNTRIES_WITH_STATES_DATASET } from "./utils-CANy0Arr.js";
14
+ import { F as Field } from "./Field-QQ5BBCkn.js";
15
+ import { H as Header } from "./Header-DVxe8YCk.js";
16
+ import { S as Select } from "./Select-mBoYJnAZ.js";
17
+ import { T as TextArea } from "./TextArea-DeNjm7Gm.js";
18
+ import { S as StateContextSetter } from "./validate-CDvp3PSV.js";
19
+ import { u as useForm } from "./useForm-C6Y--Xun.js";
20
+ import { u as uppercase, D as DocumentGuidance } from "./mapExistingFile-DF8ylI3D.js";
21
+ import { D as Dropzone } from "./Dropzone-BgrGUcIm.js";
22
+ import { E as ErrorPanel } from "./ErrorPanel-CQ5mK5uz.js";
23
+ import { c as createFormUtils } from "./formUtils-BUyxO4Zy.js";
24
+ import { C as Checkbox } from "./Checkbox-DBN0bHrR.js";
25
+ import { C as CompanyTypesValues } from "./bafinUtils-D-iUsb1z.js";
26
+ import { m as makeMask, n as numericInputs, a as nonInputs, d as alphanumericInputs, c as customInputs, b as alphaInputs, s as spacer, M as MaskedInput } from "./MaskedInput-Dtui0pFL.js";
27
+ import { S as SettingNames } from "./TaskVerificationStatus-5hk86s25.js";
28
+ import { C as COUNTRIES_WITH_STATES_DATASET } from "./utils-kwRyi0uY.js";
29
29
  import { c as createFormRules } from "./form-rules-DhbF2mY4.js";
30
- import { i as isCompatibleJapanVersion } from "./japanSupportUtils-DHTmTrsj.js";
31
- import { i as isDateOlderThanAYear } from "./Address-C8Kqz-2b.js";
32
- import { v as validatePatternOnBlur, a as validateNotEmptyOnBlur } from "./patternValidators-DSKvrLlO.js";
33
- import { R as RadioGroup } from "./RadioGroup-Bg_8BEDn.js";
30
+ import { i as isCompatibleJapanVersion } from "./japanSupportUtils-CNwDfN86.js";
31
+ import { i as isDateOlderThanAYear } from "./Address-Bu9zOvAM.js";
32
+ import { v as validatePatternOnBlur, a as validateNotEmptyOnBlur } from "./patternValidators-DbUGFIUU.js";
33
+ import { R as RadioGroup } from "./RadioGroup-DUYNpTgM.js";
34
34
  const getFieldsWithExistingData = (legalEntity, keyMapping, documentMapping, knownProblematicFields = []) => {
35
35
  const apiFieldsWithExistingData = getNestedPropertyKeys(legalEntity);
36
36
  const nonDocumentFields = apiFieldsWithExistingData.map((field) => keyMapping[field]).filter(Boolean).filter((field) => !knownProblematicFields.includes(field));
@@ -40,632 +40,6 @@ const getFieldsWithExistingData = (legalEntity, keyMapping, documentMapping, kno
40
40
  }
41
41
  return nonDocumentFields;
42
42
  };
43
- const descriptionField = "adyen-kyc-description-field";
44
- const styles = {
45
- descriptionField
46
- };
47
- const DESCRIPTION_CHARACTERS_LIMIT = 200;
48
- function DocumentUpload({
49
- documentType,
50
- documentField,
51
- guidanceHeader,
52
- documentTypeSelect,
53
- guidanceContent,
54
- handleFieldChange,
55
- requiredFields,
56
- data: dataProp,
57
- valid: validProp,
58
- errors: errorProp,
59
- fieldValidationErrors: propFieldValidationErrors,
60
- supportsMultipleUploads,
61
- maxNumberOfFiles = 1,
62
- label,
63
- extraDropzoneDescription,
64
- hidePageCount,
65
- ...props
66
- }) {
67
- const { t } = useTranslation("common");
68
- const [document, setDocument] = useState();
69
- const form = useForm({
70
- ...props,
71
- schema: ["description"],
72
- defaultData: dataProp,
73
- rules: props.validators,
74
- fieldProblems: propFieldValidationErrors
75
- });
76
- const { handleChangeFor, triggerValidation, setData } = form;
77
- let { data, errors, valid, fieldProblems } = form;
78
- const formUtils = createFormUtils(props, t);
79
- const stateRef = useRef({ setState: null });
80
- const isOptional = !(props?.formVerificationErrors && Object.keys(props?.formVerificationErrors)?.length === 0);
81
- useEffect(() => {
82
- if (isOptional) {
83
- triggerValidation();
84
- }
85
- }, [dataProp]);
86
- useEffect(() => {
87
- stateRef.current.setState?.({
88
- type: "addToState",
89
- value: {
90
- data,
91
- valid,
92
- errors,
93
- fieldProblems,
94
- dataStoreId: props.id,
95
- schema: requiredFields
96
- }
97
- });
98
- }, [data, valid, errors, fieldProblems]);
99
- useEffect(() => {
100
- setDocument({
101
- [documentField]: dataProp?.[documentField]
102
- });
103
- setData("description", dataProp?.description);
104
- triggerValidation();
105
- }, [dataProp]);
106
- if (handleFieldChange && requiredFields && propFieldValidationErrors) {
107
- data = dataProp ?? {};
108
- errors = errorProp;
109
- valid = validProp;
110
- fieldProblems = propFieldValidationErrors;
111
- }
112
- const handleInput = (e) => {
113
- handleChangeFor("description")(e);
114
- if (handleFieldChange) {
115
- handleFieldChange?.("description")(e);
116
- }
117
- };
118
- return /* @__PURE__ */ jsxs(
119
- "div",
120
- {
121
- className: `adyen-kyc-company-document-upload adyen-kyc-company-document-upload--${documentField}`,
122
- children: [
123
- /* @__PURE__ */ jsx(StateContextSetter, { owner: props.id, stateRef }),
124
- props.heading && /* @__PURE__ */ jsx(Header, { title: props.heading, description: props.description }),
125
- /* @__PURE__ */ jsx(
126
- ErrorPanel,
127
- {
128
- verificationErrors: props?.formVerificationErrors,
129
- validationErrors: propFieldValidationErrors,
130
- formUtils,
131
- id: "ariaErrorField"
132
- }
133
- ),
134
- formUtils.isRequiredField(documentField) && /* @__PURE__ */ jsxs(Fragment, { children: [
135
- guidanceHeader,
136
- documentTypeSelect && /* @__PURE__ */ jsx(Field, { name: "documentType", label: t(($) => $["selectDocumentType"]), children: (childProps) => /* @__PURE__ */ jsx(
137
- Select,
138
- {
139
- ...childProps,
140
- onChange: (e) => documentTypeSelect.setSelectedType(e.target.value),
141
- name: "documentType",
142
- placeholder: t(($) => $["selectDocument"]),
143
- selected: documentTypeSelect.selectedType,
144
- items: documentTypeSelect.options.map(({ id, name }) => ({
145
- id,
146
- name: t(($) => $[name])
147
- }))
148
- }
149
- ) }),
150
- /* @__PURE__ */ jsx("div", { children: guidanceContent }),
151
- /* @__PURE__ */ jsx(DocumentGuidance, { type: documentType, className: "adyen-kyc-u-margin-bottom-24" }),
152
- /* @__PURE__ */ jsx(
153
- Dropzone,
154
- {
155
- defaultData: document ?? data,
156
- id: props.id,
157
- isOptional: isOptional || formUtils.isOptionalField(documentField),
158
- maxSize: documentType === "constitutionalDocument" ? 31457280 : void 0,
159
- name: documentField,
160
- shouldValidate: props.shouldValidate,
161
- handleFieldChange,
162
- errors,
163
- fieldValidationErrors: fieldProblems,
164
- valid,
165
- multiple: supportsMultipleUploads,
166
- maxNumberOfFiles: maxNumberOfFiles ?? 1,
167
- label,
168
- extraDropzoneDescription,
169
- hidePageCount
170
- }
171
- )
172
- ] }),
173
- formUtils.isRequiredField("description") && /* @__PURE__ */ jsx("div", { className: styles.descriptionField, children: /* @__PURE__ */ jsx(
174
- Field,
175
- {
176
- name: "description",
177
- label: formUtils.getLabel("descriptionOptional"),
178
- errorMessage: formUtils.getErrorMessage("description", errors, fieldProblems),
179
- isValid: valid.description,
180
- children: (childProps) => /* @__PURE__ */ jsx(
181
- TextArea,
182
- {
183
- ...childProps,
184
- name: "description",
185
- value: data.description,
186
- maxLength: DESCRIPTION_CHARACTERS_LIMIT,
187
- onInput: handleInput,
188
- "aria-invalid": !valid.description,
189
- handleFieldChange: handleInput,
190
- errors,
191
- fieldValidationErrors: fieldProblems,
192
- valid
193
- }
194
- )
195
- }
196
- ) })
197
- ]
198
- }
199
- );
200
- }
201
- const MemoizedDocumentUpload = memo(
202
- DocumentUpload,
203
- (prevProps, nextProps) => prevProps.shouldValidate === nextProps.shouldValidate && objectsDeepEqual(prevProps.requiredFields, nextProps.requiredFields) && objectsDeepEqual(prevProps.errors, nextProps.errors) && objectsDeepEqual(prevProps.optionalFields, nextProps.optionalFields) && objectsDeepEqual(prevProps.data, nextProps.data) && objectsDeepEqual(prevProps.formVerificationErrors, nextProps.formVerificationErrors) && objectsDeepEqual(prevProps.fieldValidationErrors, nextProps.fieldValidationErrors) && objectsDeepEqual(prevProps.documentTypeSelect, nextProps.documentTypeSelect) && prevProps.documentField === nextProps.documentField && prevProps.name === nextProps.name && prevProps.country === nextProps.country && prevProps.companyType === nextProps.companyType
204
- );
205
- const useCapabilities = () => {
206
- const { data: rootLegalEntity } = useLegalEntity(ROOT_LE);
207
- return rootLegalEntity?.capabilities;
208
- };
209
- const companyRegistrationNumberOptions = {
210
- [CountryCodes.Australia]: [
211
- {
212
- id: "incorporatedAssociationRegistrationNumber",
213
- name: "incorporatedAssociationRegistrationNumber",
214
- applicableOnlyFor: [CompanyTypesValues.INCORPORATED_ASSOCIATION]
215
- },
216
- {
217
- id: "australianBusinessNumberAcn",
218
- name: "australianBusinessNumberAcn",
219
- applicableOnlyFor: [
220
- CompanyTypesValues.PRIVATE_COMPANY,
221
- CompanyTypesValues.PUBLIC_COMPANY,
222
- CompanyTypesValues.UNLISTED_PUBLIC_COMPANY,
223
- CompanyTypesValues.UNINCORPORATED_PARTNERSHIP,
224
- CompanyTypesValues.INCORPORATED_PARTNERSHIP,
225
- CompanyTypesValues.GOVERNMENTAL_ORGANIZATION,
226
- CompanyTypesValues.NON_PROFIT_OR_CHARITABLE,
227
- CompanyTypesValues.SOLE_PROPRIETORSHIP
228
- ]
229
- }
230
- ],
231
- [CountryCodes.Austria]: [
232
- {
233
- id: "firmenbuchnummer",
234
- name: "firmenbuchnummer"
235
- },
236
- {
237
- id: "ZVR",
238
- name: "zentralesVereinsregisterId",
239
- applicableOnlyFor: [
240
- CompanyTypesValues.NON_PROFIT_OR_CHARITABLE,
241
- CompanyTypesValues.INCORPORATED_ASSOCIATION
242
- ]
243
- }
244
- ],
245
- [CountryCodes.Croatia]: [
246
- { id: "MBO", name: "MBO", applicableOnlyFor: [CompanyTypesValues.SOLE_PROPRIETORSHIP] },
247
- {
248
- id: "MBS",
249
- name: "MBS",
250
- applicableOnlyFor: [
251
- CompanyTypesValues.PRIVATE_COMPANY,
252
- CompanyTypesValues.PUBLIC_COMPANY,
253
- CompanyTypesValues.UNLISTED_PUBLIC_COMPANY,
254
- CompanyTypesValues.UNINCORPORATED_PARTNERSHIP,
255
- CompanyTypesValues.INCORPORATED_PARTNERSHIP,
256
- CompanyTypesValues.GOVERNMENTAL_ORGANIZATION,
257
- CompanyTypesValues.NON_PROFIT_OR_CHARITABLE
258
- ]
259
- }
260
- ],
261
- [CountryCodes.France]: [
262
- {
263
- id: "SIRET",
264
- name: "siret"
265
- },
266
- {
267
- id: "RNA",
268
- name: "rnaNumber",
269
- applicableOnlyFor: [CompanyTypesValues.NON_PROFIT_OR_CHARITABLE]
270
- }
271
- ],
272
- [CountryCodes.Hungary]: [
273
- {
274
- id: "nyilvantartasiSzam",
275
- name: "huRegistrationNumberForSoleProp",
276
- applicableOnlyFor: [CompanyTypesValues.SOLE_PROPRIETORSHIP]
277
- }
278
- ],
279
- [CountryCodes.Italy]: [
280
- {
281
- id: "partitaIVA",
282
- name: "codiceFiscalePartitaIVA"
283
- },
284
- {
285
- id: "CCIAA",
286
- name: "CCIAA"
287
- }
288
- ],
289
- [CountryCodes.Monaco]: [
290
- {
291
- id: "mcRegistrationNumberSoleProp",
292
- name: "mcRegistrationNumberSoleProp",
293
- applicableOnlyFor: [CompanyTypesValues.SOLE_PROPRIETORSHIP]
294
- },
295
- {
296
- id: "mcRegistrationNumber",
297
- name: "mcRegistrationNumber",
298
- applicableOnlyFor: [
299
- CompanyTypesValues.PRIVATE_COMPANY,
300
- CompanyTypesValues.GOVERNMENTAL_ORGANIZATION,
301
- CompanyTypesValues.INCORPORATED_ASSOCIATION,
302
- CompanyTypesValues.INCORPORATED_PARTNERSHIP,
303
- CompanyTypesValues.NON_PROFIT_OR_CHARITABLE,
304
- CompanyTypesValues.UNINCORPORATED_PARTNERSHIP,
305
- CompanyTypesValues.UNLISTED_PUBLIC_COMPANY
306
- ]
307
- }
308
- ],
309
- [CountryCodes.NewZealand]: [
310
- {
311
- id: "NZBN",
312
- name: "NZBN"
313
- },
314
- {
315
- id: "companyNumberNZ",
316
- name: "companyNumberNZ",
317
- applicableOnlyFor: [
318
- CompanyTypesValues.PRIVATE_COMPANY,
319
- CompanyTypesValues.PUBLIC_COMPANY,
320
- CompanyTypesValues.UNLISTED_PUBLIC_COMPANY
321
- ]
322
- }
323
- ],
324
- [CountryCodes.Romania]: [
325
- {
326
- id: "roRegNumberNewFormat",
327
- name: "roRegNumberNewFormat_label"
328
- },
329
- {
330
- id: "roRegNumberOldFormat",
331
- name: "roRegNumberOldFormat_label"
332
- }
333
- ],
334
- [CountryCodes.Poland]: [
335
- {
336
- id: "regon",
337
- name: "regon"
338
- },
339
- {
340
- id: "krsNumber",
341
- name: "krsNumber"
342
- }
343
- ],
344
- [CountryCodes.UnitedKingdom]: [
345
- {
346
- id: "charity",
347
- name: "charityNumber",
348
- applicableOnlyFor: [CompanyTypesValues.NON_PROFIT_OR_CHARITABLE]
349
- },
350
- {
351
- id: "companyNumber",
352
- name: "companyNumber",
353
- applicableOnlyFor: [
354
- CompanyTypesValues.PRIVATE_COMPANY,
355
- CompanyTypesValues.GOVERNMENTAL_ORGANIZATION,
356
- CompanyTypesValues.INCORPORATED_ASSOCIATION,
357
- CompanyTypesValues.INCORPORATED_PARTNERSHIP,
358
- CompanyTypesValues.NON_PROFIT_OR_CHARITABLE,
359
- CompanyTypesValues.UNINCORPORATED_PARTNERSHIP,
360
- CompanyTypesValues.UNLISTED_PUBLIC_COMPANY,
361
- CompanyTypesValues.PUBLIC_COMPANY
362
- ]
363
- }
364
- ]
365
- };
366
- const getCompanyRegistrationNumberOptions = (country, companyType) => {
367
- const optionsForCountry = companyRegistrationNumberOptions[country];
368
- if (!companyType || !optionsForCountry) return optionsForCountry;
369
- return optionsForCountry.filter(
370
- (option) => option.applicableOnlyFor?.includes(companyType) ?? true
371
- );
372
- };
373
- const individualIdNumberOptions = {
374
- [CountryCodes.Spain]: [
375
- {
376
- id: "dni",
377
- name: "dni"
378
- },
379
- {
380
- id: "nie",
381
- name: "nie"
382
- }
383
- ]
384
- };
385
- const additionallIdNumberOptions = {
386
- [CountryCodes.NewZealand]: [
387
- {
388
- id: "driversLicense",
389
- name: "driversLicense"
390
- },
391
- {
392
- id: "passport",
393
- name: "passportNumber"
394
- }
395
- ],
396
- [CountryCodes.HongKong]: [
397
- {
398
- id: "proofOfIdentityCard",
399
- name: "stateIssuedProofOfIdentityCard"
400
- },
401
- {
402
- id: "driversLicense",
403
- name: "driversLicense"
404
- },
405
- {
406
- id: "passport",
407
- name: "passportNumber"
408
- }
409
- ],
410
- [CountryCodes.Australia]: [
411
- {
412
- id: "driversLicense",
413
- name: "driversLicense"
414
- },
415
- {
416
- id: "passport",
417
- name: "passportNumber"
418
- }
419
- ]
420
- };
421
- const taxIdNumberOptions = {
422
- [CountryCodes.Australia]: [
423
- {
424
- id: "ABN",
425
- name: "australianBusinessNumberAbn"
426
- }
427
- ],
428
- [CountryCodes.Belgium]: [
429
- {
430
- id: "BUSINESS_NUMMER",
431
- name: "businessNumber",
432
- applicableOnlyFor: [
433
- CompanyTypesValues.SOLE_PROPRIETORSHIP,
434
- CompanyTypesValues.PRIVATE_COMPANY,
435
- CompanyTypesValues.GOVERNMENTAL_ORGANIZATION,
436
- CompanyTypesValues.INCORPORATED_ASSOCIATION,
437
- CompanyTypesValues.INCORPORATED_PARTNERSHIP,
438
- CompanyTypesValues.NON_PROFIT_OR_CHARITABLE,
439
- CompanyTypesValues.UNINCORPORATED_PARTNERSHIP,
440
- CompanyTypesValues.UNLISTED_PUBLIC_COMPANY
441
- ]
442
- },
443
- {
444
- id: "NUMERO_NATIONAL",
445
- name: "taxInformationNumber__BE_Individual",
446
- applicableOnlyFor: [LegalEntityTypes.INDIVIDUAL]
447
- }
448
- ],
449
- [CountryCodes.Brazil]: [{ id: "CNPJ", name: "CNPJ" }],
450
- [CountryCodes.Canada]: [{ id: "BUSINESS_NUMBER", name: "businessNumber" }],
451
- [CountryCodes.Germany]: [
452
- {
453
- id: "STEUERNUMMER",
454
- name: "taxInformationNumber__DE",
455
- applicableOnlyFor: [
456
- CompanyTypesValues.SOLE_PROPRIETORSHIP,
457
- CompanyTypesValues.PRIVATE_COMPANY,
458
- CompanyTypesValues.GOVERNMENTAL_ORGANIZATION,
459
- CompanyTypesValues.INCORPORATED_ASSOCIATION,
460
- CompanyTypesValues.INCORPORATED_PARTNERSHIP,
461
- CompanyTypesValues.NON_PROFIT_OR_CHARITABLE,
462
- CompanyTypesValues.UNINCORPORATED_PARTNERSHIP,
463
- CompanyTypesValues.UNLISTED_PUBLIC_COMPANY
464
- ]
465
- },
466
- {
467
- id: "IDNR",
468
- name: "taxInformationNumber__DE_Individual",
469
- applicableOnlyFor: [LegalEntityTypes.INDIVIDUAL]
470
- }
471
- ],
472
- [CountryCodes.Gibraltar]: [
473
- { id: "GI_TAXPAYER_REFERENCE_NUMBER", name: "taxpayerReferenceNumber" }
474
- ],
475
- [CountryCodes.Guernsey]: [
476
- { id: "GG_REGISTRATION_NUMBER", name: "taxInformationNumber" },
477
- {
478
- id: "TIN_GG",
479
- name: "nationalInsuranceNumber",
480
- applicableOnlyFor: [CompanyTypesValues.SOLE_PROPRIETORSHIP]
481
- }
482
- ],
483
- [CountryCodes.HongKong]: [
484
- {
485
- id: "BRN",
486
- name: "taxInformationNumber__HK"
487
- }
488
- ],
489
- [CountryCodes.Ireland]: [
490
- {
491
- id: "TRN",
492
- name: "trnNumber",
493
- applicableOnlyFor: [CompanyTypesValues.UNINCORPORATED_PARTNERSHIP]
494
- }
495
- ],
496
- [CountryCodes.IsleOfMan]: [{ id: "IM_TAX_REFERENCE_NUMBER", name: "taxReferenceNumber" }],
497
- [CountryCodes.Japan]: [{ id: "CORPORATE_NUMBER", name: "taxInformationNumber" }],
498
- [CountryCodes.Jersey]: [
499
- {
500
- id: "TIN_JE",
501
- name: "taxIdentificationNumber"
502
- },
503
- {
504
- id: "SSN",
505
- name: "socialSecurityNumber",
506
- applicableOnlyFor: [CompanyTypesValues.SOLE_PROPRIETORSHIP]
507
- }
508
- ],
509
- [CountryCodes.Netherlands]: [
510
- {
511
- id: "RSIN",
512
- name: "rsinNumber",
513
- applicableOnlyFor: [
514
- CompanyTypesValues.PRIVATE_COMPANY,
515
- CompanyTypesValues.GOVERNMENTAL_ORGANIZATION,
516
- CompanyTypesValues.INCORPORATED_ASSOCIATION,
517
- CompanyTypesValues.INCORPORATED_PARTNERSHIP,
518
- CompanyTypesValues.NON_PROFIT_OR_CHARITABLE,
519
- CompanyTypesValues.UNINCORPORATED_PARTNERSHIP,
520
- CompanyTypesValues.UNLISTED_PUBLIC_COMPANY
521
- ]
522
- },
523
- {
524
- id: "BSN",
525
- name: "bsnNumber",
526
- applicableOnlyFor: [LegalEntityTypes.INDIVIDUAL]
527
- }
528
- ],
529
- [CountryCodes.NewZealand]: [
530
- {
531
- id: "IRD",
532
- name: "irdNumber"
533
- }
534
- ],
535
- [CountryCodes.PuertoRico]: [
536
- {
537
- id: "EIN",
538
- name: "ein"
539
- }
540
- ],
541
- [CountryCodes.Singapore]: [
542
- {
543
- id: "GST",
544
- name: "gst"
545
- },
546
- {
547
- id: "UEN",
548
- name: "uen"
549
- }
550
- ],
551
- [CountryCodes.Spain]: [
552
- {
553
- id: "dni",
554
- name: "dni",
555
- applicableOnlyFor: [LegalEntityTypes.INDIVIDUAL]
556
- },
557
- {
558
- id: "nie",
559
- name: "nie",
560
- applicableOnlyFor: [LegalEntityTypes.INDIVIDUAL]
561
- }
562
- ],
563
- [CountryCodes.UnitedKingdom]: [
564
- {
565
- id: "UTR",
566
- name: "utr"
567
- },
568
- {
569
- id: "NINO",
570
- name: "nationalInsuranceNumber",
571
- applicableOnlyFor: [LegalEntityTypes.INDIVIDUAL]
572
- }
573
- ],
574
- [CountryCodes.UnitedStates]: [
575
- {
576
- id: "EIN",
577
- name: "ein"
578
- }
579
- ]
580
- };
581
- const vatNumberOptions = {
582
- [CountryCodes.Austria]: [{ id: "UST-ID", name: "UST-ID" }],
583
- [CountryCodes.Belgium]: [{ id: "euVatNumber", name: "euVatNumber" }],
584
- [CountryCodes.Bulgaria]: [{ id: "identifikacionenNomerDDS", name: "identifikacionenNomerDDS" }],
585
- [CountryCodes.Croatia]: [{ id: "PDVIdBrojOIB", name: "PDVIdBrojOIB" }],
586
- [CountryCodes.Cyprus]: [{ id: "arithmosEngraphes", name: "arithmosEngraphes" }],
587
- [CountryCodes.CzechRepublic]: [{ id: "DIC", name: "DIC" }],
588
- [CountryCodes.Denmark]: [
589
- {
590
- id: "momsregistreringsnummerCVR",
591
- name: "momsregistreringsnummerCVR"
592
- },
593
- {
594
- id: "stamregister",
595
- name: "stamregister"
596
- }
597
- ],
598
- [CountryCodes.Estonia]: [
599
- { id: "kaibemaksukohustuslaseNumber", name: "kaibemaksukohustuslaseNumber" }
600
- ],
601
- [CountryCodes.Finland]: [
602
- {
603
- id: "arvonlisaveronumeroMervardesskattenummer",
604
- name: "arvonlisaveronumeroMervardesskattenummer"
605
- }
606
- ],
607
- [CountryCodes.France]: [
608
- {
609
- id: "numeroDIdentificationALATaxe",
610
- name: "numeroDIdentificationALATaxe"
611
- },
612
- {
613
- id: "NumeroDeTVA",
614
- name: "NumeroDeTVA"
615
- }
616
- ],
617
- [CountryCodes.Germany]: [{ id: "USt-IdNr", name: "USt-IdNr" }],
618
- [CountryCodes.Greece]: [{ id: "grTaxId", name: "grTaxId" }],
619
- [CountryCodes.Hungary]: [{ id: "huTaxId", name: "huTaxId" }],
620
- [CountryCodes.Ireland]: [{ id: "vatNumber", name: "vatNumber" }],
621
- [CountryCodes.Italy]: [{ id: "partitaIVA", name: "partitaIVA" }],
622
- [CountryCodes.Latvia]: [{ id: "lvTaxId", name: "lvTaxId" }],
623
- [CountryCodes.Liechtenstein]: [{ id: "vatRegistrationNumber", name: "vatRegistrationNumber" }],
624
- [CountryCodes.Lithuania]: [{ id: "PVMmoketojoKodas", name: "PVMmoketojoKodas" }],
625
- [CountryCodes.Luxembourg]: [
626
- { id: "numeroDIdentificationALATaxe", name: "numeroDIdentificationALATaxe" }
627
- ],
628
- [CountryCodes.Malaysia]: [{ id: "SST", name: "SST" }],
629
- [CountryCodes.Malta]: [{ id: "vatNumber", name: "vatNumber" }],
630
- [CountryCodes.Monaco]: [
631
- { id: "numeroDIdentificationALATaxe", name: "numeroDIdentificationALATaxe" }
632
- ],
633
- [CountryCodes.Netherlands]: [{ id: "btwNummer", name: "btwNummer" }],
634
- [CountryCodes.Norway]: [{ id: "mvanummer", name: "mvanummer" }],
635
- [CountryCodes.Poland]: [{ id: "NIP", name: "NIP" }],
636
- [CountryCodes.Portugal]: [{ id: "numerodeIVA", name: "numerodeIVA" }],
637
- [CountryCodes.Romania]: [
638
- { id: "codulDeIdentificareFiscala", name: "codulDeIdentificareFiscala" }
639
- ],
640
- [CountryCodes.Slovakia]: [{ id: "skTaxId", name: "skTaxId" }],
641
- [CountryCodes.Slovenia]: [{ id: "siTaxId", name: "siTaxId" }],
642
- [CountryCodes.Spain]: [{ id: "NIFdeIVA", name: "NIFdeIVA" }],
643
- [CountryCodes.Sweden]: [
644
- {
645
- id: "vatNummerMomsregistreringsnummerOrMomsnummer",
646
- name: "vatNummerMomsregistreringsnummerOrMomsnummer"
647
- }
648
- ],
649
- [CountryCodes.Switzerland]: [{ id: "Mehrwertsteuernummer", name: "Mehrwertsteuernummer" }],
650
- [CountryCodes.UnitedArabEmirates]: [
651
- { id: "vatRegistrationNumber", name: "vatRegistrationNumber" }
652
- ],
653
- [CountryCodes.UnitedKingdom]: [{ id: "vatRegistrationNumber", name: "vatRegistrationNumber" }]
654
- };
655
- const getTaxIdNumberOptions = (country, companyType) => {
656
- const optionsForCountry = taxIdNumberOptions[country];
657
- if (!companyType || !optionsForCountry) return optionsForCountry;
658
- return optionsForCountry.filter(
659
- (option) => option.applicableOnlyFor?.includes(companyType) ?? true
660
- );
661
- };
662
- const getVatNumberOptions = (country, companyType) => {
663
- const optionsForCountry = vatNumberOptions[country];
664
- if (!companyType || !optionsForCountry) return optionsForCountry;
665
- return optionsForCountry.filter(
666
- (option) => option.applicableOnlyFor?.includes(companyType) ?? true
667
- );
668
- };
669
43
  const StateCodesUS = {
670
44
  Alabama: "AL",
671
45
  Alaska: "AK",
@@ -1422,931 +796,1557 @@ const stateFormatGuidanceText = {
1422
796
  example: "123456 ID"
1423
797
  }
1424
798
  },
1425
- [StateCodesUS.Illinois]: {
799
+ [StateCodesUS.Illinois]: {
800
+ key: "enterNDigitsForExample",
801
+ values: {
802
+ numDigits: "8",
803
+ example: "12345678 IL"
804
+ }
805
+ },
806
+ [StateCodesUS.Indiana]: {
807
+ key: "enterNDigitsForExample",
808
+ values: {
809
+ numDigits: "10",
810
+ example: "1234567890 IN"
811
+ }
812
+ },
813
+ [StateCodesUS.Iowa]: {
814
+ key: "enterXToYDigitsForExample",
815
+ values: {
816
+ minDigits: "6",
817
+ maxDigits: "8",
818
+ example: "12345678 IA"
819
+ }
820
+ },
821
+ [StateCodesUS.Kansas]: {
822
+ key: "enterXToYDigitsForExample",
823
+ values: {
824
+ minDigits: "7",
825
+ maxDigits: "9",
826
+ example: "1234567890 KS"
827
+ }
828
+ },
829
+ [StateCodesUS.Kentucky]: {
830
+ key: "enterXToYDigitsForExample",
831
+ values: {
832
+ minDigits: "9",
833
+ maxDigits: "10",
834
+ example: "1234567890 KY"
835
+ }
836
+ },
837
+ [StateCodesUS.Louisiana]: {
838
+ key: "enterXToYDigitsForExample",
839
+ values: {
840
+ minDigits: "9",
841
+ maxDigits: "10",
842
+ example: "1234567890 LA"
843
+ }
844
+ },
845
+ [StateCodesUS.Maine]: {
846
+ key: "enterNDigitsForExample",
847
+ values: {
848
+ numDigits: "8",
849
+ example: "12345678 ME"
850
+ }
851
+ },
852
+ [StateCodesUS.Maryland]: {
853
+ key: "enterNDigitsForExample",
854
+ values: {
855
+ numDigits: "8",
856
+ example: "12345678 MD"
857
+ }
858
+ },
859
+ [StateCodesUS.Massachusetts]: {
860
+ key: "enterNDigitsForExample",
861
+ values: {
862
+ numDigits: "10",
863
+ example: "1234567890 MA"
864
+ }
865
+ },
866
+ [StateCodesUS.Michigan]: {
867
+ key: "enterXOrYDigitsForExample",
868
+ values: {
869
+ xDigits: "6",
870
+ yDigits: "9",
871
+ example: "123456 MI"
872
+ }
873
+ },
874
+ [StateCodesUS.Minnesota]: {
875
+ key: "enterNDigitsForExample",
876
+ values: {
877
+ numDigits: "7",
878
+ example: "1234567 MN"
879
+ }
880
+ },
881
+ [StateCodesUS.Mississippi]: {
882
+ key: "enterXToYDigitsForExample",
883
+ values: {
884
+ minDigits: "7",
885
+ maxDigits: "10",
886
+ example: "1234567 MS"
887
+ }
888
+ },
889
+ [StateCodesUS.Missouri]: {
890
+ key: "enterNDigitsForExample",
891
+ values: {
892
+ numDigits: "10",
893
+ example: "1234567890 MO"
894
+ }
895
+ },
896
+ [StateCodesUS.Montana]: {
897
+ key: "enterNDigitsForExample",
898
+ values: {
899
+ numDigits: "7",
900
+ example: "1234567 MT"
901
+ }
902
+ },
903
+ [StateCodesUS.Nebraska]: {
904
+ key: "enterXToYDigitsForExample",
905
+ values: {
906
+ minDigits: "9",
907
+ maxDigits: "11",
908
+ example: "123456789 NE"
909
+ }
910
+ },
911
+ [StateCodesUS.Nevada]: {
912
+ key: "enterXToYDigitsForExample",
913
+ values: {
914
+ minDigits: "9",
915
+ maxDigits: "11",
916
+ example: "123456789 NV"
917
+ }
918
+ },
919
+ [StateCodesUS.NewHampshire]: {
920
+ key: "enterNDigitsForExample",
921
+ values: {
922
+ numDigits: "9",
923
+ example: "123456789 NH"
924
+ }
925
+ },
926
+ [StateCodesUS.NewJersey]: {
927
+ key: "enterNDigitsForExample",
928
+ values: {
929
+ numDigits: "10",
930
+ example: "1234567890 NJ"
931
+ }
932
+ },
933
+ [StateCodesUS.NewMexico]: {
934
+ key: "enterNDigitsForExample",
935
+ values: {
936
+ numDigits: "6",
937
+ example: "123456 NM"
938
+ }
939
+ },
940
+ [StateCodesUS.NewYork]: {
941
+ key: "enterNDigitsForExample",
942
+ values: {
943
+ numDigits: "7",
944
+ example: "1234567 NY"
945
+ }
946
+ },
947
+ [StateCodesUS.NorthCarolina]: {
948
+ key: "enterNDigitsForExample",
949
+ values: {
950
+ numDigits: "7",
951
+ example: "1234567 NC"
952
+ }
953
+ },
954
+ [StateCodesUS.NorthDakota]: {
955
+ key: "enterXToYDigitsForExample",
956
+ values: {
957
+ minDigits: "7",
958
+ maxDigits: "10",
959
+ example: "1234567 ND"
960
+ }
961
+ },
962
+ [StateCodesUS.Ohio]: {
963
+ key: "enterNDigitsForExample",
964
+ values: {
965
+ numDigits: "10",
966
+ example: "1234567890 OH"
967
+ }
968
+ },
969
+ [StateCodesUS.Oklahoma]: {
970
+ key: "enterNDigitsForExample",
971
+ values: {
972
+ numDigits: "10",
973
+ example: "1234567890 OK"
974
+ }
975
+ },
976
+ [StateCodesUS.Oregon]: {
977
+ key: "enterNDigitsForExample",
978
+ values: {
979
+ numDigits: "9",
980
+ example: "123456789 OR"
981
+ }
982
+ },
983
+ [StateCodesUS.Pennsylvania]: {
984
+ key: "enterNDigitsForExample",
985
+ values: {
986
+ numDigits: "7",
987
+ example: "1234567 PA"
988
+ }
989
+ },
990
+ [StateCodesUS.RhodeIsland]: {
991
+ key: "enterNDigitsForExample",
992
+ values: {
993
+ numDigits: "7",
994
+ example: "1234567 RI"
995
+ }
996
+ },
997
+ [StateCodesUS.SouthCarolina]: {
998
+ key: "enterNDigitsForExample",
999
+ values: {
1000
+ numDigits: "7",
1001
+ example: "1234567 SC"
1002
+ }
1003
+ },
1004
+ [StateCodesUS.SouthDakota]: {
1005
+ key: "enterNDigitsForExample",
1006
+ values: {
1007
+ numDigits: "7",
1008
+ example: "1234567 SD"
1009
+ }
1010
+ },
1011
+ [StateCodesUS.Tennessee]: {
1426
1012
  key: "enterNDigitsForExample",
1427
1013
  values: {
1428
- numDigits: "8",
1429
- example: "12345678 IL"
1014
+ numDigits: "6",
1015
+ example: "123456 TN"
1430
1016
  }
1431
1017
  },
1432
- [StateCodesUS.Indiana]: {
1018
+ [StateCodesUS.Texas]: {
1433
1019
  key: "enterNDigitsForExample",
1434
1020
  values: {
1435
1021
  numDigits: "10",
1436
- example: "1234567890 IN"
1022
+ example: "1234567890 TX"
1437
1023
  }
1438
1024
  },
1439
- [StateCodesUS.Iowa]: {
1440
- key: "enterXToYDigitsForExample",
1025
+ [StateCodesUS.Utah]: {
1026
+ key: "enterNDigitsForExample",
1441
1027
  values: {
1442
- minDigits: "6",
1443
- maxDigits: "8",
1444
- example: "12345678 IA"
1028
+ numDigits: "7",
1029
+ example: "1234567 UT"
1445
1030
  }
1446
1031
  },
1447
- [StateCodesUS.Kansas]: {
1448
- key: "enterXToYDigitsForExample",
1032
+ [StateCodesUS.Vermont]: {
1033
+ key: "enterNDigitsForExample",
1449
1034
  values: {
1450
- minDigits: "7",
1451
- maxDigits: "9",
1452
- example: "1234567890 KS"
1035
+ numDigits: "6",
1036
+ example: "123456 VT"
1453
1037
  }
1454
1038
  },
1455
- [StateCodesUS.Kentucky]: {
1456
- key: "enterXToYDigitsForExample",
1039
+ [StateCodesUS.Virginia]: {
1040
+ key: "enterNDigitsForExample",
1457
1041
  values: {
1458
- minDigits: "9",
1459
- maxDigits: "10",
1460
- example: "1234567890 KY"
1042
+ numDigits: "7",
1043
+ example: "1234567 VA"
1461
1044
  }
1462
1045
  },
1463
- [StateCodesUS.Louisiana]: {
1464
- key: "enterXToYDigitsForExample",
1046
+ [StateCodesUS.Washington]: {
1047
+ key: "enterNDigitsForExample",
1465
1048
  values: {
1466
- minDigits: "9",
1467
- maxDigits: "10",
1468
- example: "1234567890 LA"
1049
+ numDigits: "9",
1050
+ example: "123456789 WA"
1469
1051
  }
1470
1052
  },
1471
- [StateCodesUS.Maine]: {
1053
+ [StateCodesUS.WestVirginia]: {
1472
1054
  key: "enterNDigitsForExample",
1473
1055
  values: {
1474
- numDigits: "8",
1475
- example: "12345678 ME"
1056
+ numDigits: "6",
1057
+ example: "123456 WV"
1476
1058
  }
1477
1059
  },
1478
- [StateCodesUS.Maryland]: {
1060
+ [StateCodesUS.Wisconsin]: {
1479
1061
  key: "enterNDigitsForExample",
1480
1062
  values: {
1481
- numDigits: "8",
1482
- example: "12345678 MD"
1063
+ numDigits: "6",
1064
+ example: "123456 WI"
1483
1065
  }
1484
1066
  },
1485
- [StateCodesUS.Massachusetts]: {
1067
+ [StateCodesUS.Wyoming]: {
1486
1068
  key: "enterNDigitsForExample",
1487
1069
  values: {
1488
- numDigits: "10",
1489
- example: "1234567890 MA"
1070
+ numDigits: "6",
1071
+ example: "123456 WY"
1490
1072
  }
1491
1073
  },
1492
- [StateCodesUS.Michigan]: {
1493
- key: "enterXOrYDigitsForExample",
1074
+ [StateCodesUS.DistrictOfColumbia]: {
1075
+ key: "enterNDigitsForExample",
1494
1076
  values: {
1495
- xDigits: "6",
1496
- yDigits: "9",
1497
- example: "123456 MI"
1077
+ numDigits: "9",
1078
+ example: "123456789"
1498
1079
  }
1499
1080
  },
1500
- [StateCodesUS.Minnesota]: {
1081
+ default: {
1501
1082
  key: "enterNDigitsForExample",
1502
1083
  values: {
1503
- numDigits: "7",
1504
- example: "1234567 MN"
1084
+ numDigits: "9",
1085
+ example: "123456789"
1086
+ }
1087
+ }
1088
+ };
1089
+ const businessRegistrationNumberPatterns = {
1090
+ [CountryCodes.Australia]: { default: /^\d{9}$/, associationIncorporated: /^[a-zA-Z0-9]{3,20}$/ },
1091
+ [CountryCodes.Austria]: {
1092
+ firmenbuchnummer: /^(FN|T)\d{3,6}[a-z]$/,
1093
+ ZVR: /^(AT-ZVR-)\d{9,10}$/
1094
+ },
1095
+ [CountryCodes.Belgium]: { default: /^\d{10}$/ },
1096
+ [CountryCodes.Brazil]: { default: /^\d{14}$/ },
1097
+ [CountryCodes.Bulgaria]: { default: /^\d{9}$/ },
1098
+ [CountryCodes.Canada]: { default: /^[a-zA-Z0-9]{5,10}$/ },
1099
+ [CountryCodes.Croatia]: { default: /^\d{9}$/, soleProprietorship: /^\d{8}$/ },
1100
+ [CountryCodes.Cyprus]: { default: /^[COP]{1}\d{1,8}$/ },
1101
+ [CountryCodes.CzechRepublic]: { default: /^\d{8,10}$/ },
1102
+ [CountryCodes.Denmark]: { default: /^\d{8}$/ },
1103
+ [CountryCodes.Estonia]: { default: /^\d{8}$/ },
1104
+ [CountryCodes.Finland]: { default: /^\d{7}-?\d$/ },
1105
+ [CountryCodes.France]: {
1106
+ SIRET: /^\d{9}-?\d{5}$/,
1107
+ RNA: /^W(\d{9}|\d[A-Za-z]\d{7})$/
1108
+ },
1109
+ [CountryCodes.Gibraltar]: { default: /^[a-zA-Z0-9]{1,8}$/ },
1110
+ [CountryCodes.Germany]: { default: /^[A-Z]{2,3}\d{1,6}[A-Z]{0,5}(?:-[A-Z]\d{4})?$/ },
1111
+ [CountryCodes.Greece]: { default: /^\d{12}$/ },
1112
+ [CountryCodes.Guernsey]: { default: /^\d{1,9}$/ },
1113
+ [CountryCodes.HongKong]: { default: /^\d{7}$/ },
1114
+ [CountryCodes.Hungary]: { default: /^\d{10}$/, nyilvantartasiSzam: /^\d{7,10}$/ },
1115
+ [CountryCodes.Iceland]: { default: /^\d{10}$/ },
1116
+ [CountryCodes.India]: { default: /^\d{21}$/ },
1117
+ [CountryCodes.Indonesia]: { default: /^\d{12}$/ },
1118
+ [CountryCodes.Ireland]: { default: /^[1-9]\d{1,7}$/ },
1119
+ [CountryCodes.IsleOfMan]: { default: /^\d{6}[A-Z]$/ },
1120
+ [CountryCodes.Italy]: { partitaIVA: /^\d{11}$/, CCIAA: /^[a-zA-Z]{2}\d{6,7}$/ },
1121
+ [CountryCodes.Japan]: { default: /^\d{12}$/ },
1122
+ [CountryCodes.Jersey]: { default: /^[a-zA-Z0-9]{1,9}$/ },
1123
+ [CountryCodes.Korea]: { default: /^\d{10}$/ },
1124
+ [CountryCodes.Latvia]: { default: /^\d{11}$/ },
1125
+ [CountryCodes.Liechtenstein]: { default: /FL-[0-9]{4}[.][0-9]{3}[.][0-9]{3}-[0-9]$/ },
1126
+ [CountryCodes.Lithuania]: { default: /^\d{6,9}$/ },
1127
+ [CountryCodes.Luxembourg]: { default: /^[a-zA-Z]\d{1,9}$/ },
1128
+ [CountryCodes.Malaysia]: { default: /^\d{7}$|^\d{12}$/ },
1129
+ [CountryCodes.Malta]: { default: /^[CP]\s?\d{4,6}$/ },
1130
+ [CountryCodes.Mexico]: { default: /^\D{3}\d{6}\w{3}$/ },
1131
+ [CountryCodes.Monaco]: {
1132
+ default: /^[0-9]{2}[A-Z]{1,3}[0-9]{5}$/,
1133
+ soleProprietorship: /^\d{2,4}[A-Z]\d{5}$/
1134
+ },
1135
+ [CountryCodes.Netherlands]: { default: /^\d{8}$/ },
1136
+ [CountryCodes.NewZealand]: { NZBN: /^\d{13}$/, companyNumberNZ: /^\d{7}$/ },
1137
+ [CountryCodes.Norway]: { default: /^\d{9}$/ },
1138
+ [CountryCodes.Poland]: { krsNumber: /^\d{10}$/, regon: /^\d{9}$/ },
1139
+ [CountryCodes.Portugal]: { default: /^\d{9}$/ },
1140
+ [CountryCodes.Romania]: {
1141
+ roRegNumberOldFormat: /^[A-Z]\d{1,2}\/\d{1,9}\/\d{4}$/,
1142
+ roRegNumberNewFormat: /^[JFC]\d{13}$/
1143
+ },
1144
+ [CountryCodes.Singapore]: { default: /^[a-zA-Z0-9]{9,10}$/ },
1145
+ [CountryCodes.Slovakia]: { default: /^\d{8}$/ },
1146
+ [CountryCodes.Slovenia]: { default: /^\d{10}$/ },
1147
+ [CountryCodes.Spain]: { default: /^[a-zA-Z][a-zA-Z0-9]{8}$/ },
1148
+ [CountryCodes.Sweden]: { default: /^\d{10}$/ },
1149
+ [CountryCodes.Switzerland]: { default: /^CHE\d{9}$|^CH\d{11}$/ },
1150
+ [CountryCodes.UnitedKingdom]: {
1151
+ default: /^[a-zA-Z0-9]{8}$/,
1152
+ nonProfit: /^(?:(?:[A-Z]{2})?\d{6}|\d{6,8}|\d{6}-\d)$/
1153
+ },
1154
+ [CountryCodes.UnitedStates]: {
1155
+ [StateCodesUS.Alabama]: /^\d{9}$/,
1156
+ [StateCodesUS.Alaska]: /^\d{8}$/,
1157
+ [StateCodesUS.Arizona]: /^\d{8}$/,
1158
+ [StateCodesUS.Arkansas]: /^8\d{8}$/,
1159
+ [StateCodesUS.California]: /^\d{7}$|^\d{12}$/,
1160
+ [StateCodesUS.Colorado]: /^\d{11}$/,
1161
+ [StateCodesUS.Connecticut]: /^\d{7}$/,
1162
+ [StateCodesUS.Delaware]: /^\d{7}$/,
1163
+ [StateCodesUS.Florida]: /^\d{6}$|^\d{12}$/,
1164
+ [StateCodesUS.Georgia]: /^\d{8}$/,
1165
+ [StateCodesUS.Hawaii]: /^\d{5,8}(C1|C2|C3|C4|C5|D1|D2|D3|D4|F1|F2|L1|L2|N1|N2|P1|P2|T1|T2|T3|T4|T5|T6|T7|T8|ZZ)$/,
1166
+ [StateCodesUS.Idaho]: /^\d{6}$/,
1167
+ [StateCodesUS.Illinois]: /^\d{8}$/,
1168
+ [StateCodesUS.Indiana]: /^\d{10}$/,
1169
+ [StateCodesUS.Iowa]: /^\d{6,8}$/,
1170
+ [StateCodesUS.Kansas]: /^\d{7,9}$/,
1171
+ [StateCodesUS.Kentucky]: /^\d{9,10}$/,
1172
+ [StateCodesUS.Louisiana]: /^\d{9,10}$/,
1173
+ [StateCodesUS.Maine]: /^\d{8}$/,
1174
+ [StateCodesUS.Maryland]: /^\d{8}$/,
1175
+ [StateCodesUS.Massachusetts]: /^\d{10}$/,
1176
+ [StateCodesUS.Michigan]: /^\d{6}$|^\d{9}$/,
1177
+ [StateCodesUS.Minnesota]: /^\d{7}$/,
1178
+ [StateCodesUS.Mississippi]: /^\d{7,10}$/,
1179
+ [StateCodesUS.Missouri]: /^\d{10}$/,
1180
+ [StateCodesUS.Montana]: /^\d{7}$/,
1181
+ [StateCodesUS.Nebraska]: /^\d{9,11}$/,
1182
+ [StateCodesUS.Nevada]: /^\d{9,11}$/,
1183
+ [StateCodesUS.NewHampshire]: /^\d{9}$/,
1184
+ [StateCodesUS.NewJersey]: /^\d{10}$/,
1185
+ [StateCodesUS.NewMexico]: /^\d{6}$/,
1186
+ [StateCodesUS.NewYork]: /^\d{7}$/,
1187
+ [StateCodesUS.NorthCarolina]: /^\d{7}$/,
1188
+ [StateCodesUS.NorthDakota]: /^\d{7,10}$/,
1189
+ [StateCodesUS.Ohio]: /^\d{10}$/,
1190
+ [StateCodesUS.Oklahoma]: /^\d{10}$/,
1191
+ [StateCodesUS.Oregon]: /^\d{9}$/,
1192
+ [StateCodesUS.Pennsylvania]: /^\d{7}$/,
1193
+ [StateCodesUS.RhodeIsland]: /^\d{7}$/,
1194
+ [StateCodesUS.SouthCarolina]: /^\d{7}$/,
1195
+ [StateCodesUS.SouthDakota]: /^\d{7}$/,
1196
+ [StateCodesUS.Tennessee]: /^\d{6}$/,
1197
+ [StateCodesUS.Texas]: /^\d{10}$/,
1198
+ [StateCodesUS.Utah]: /^\d{7}$/,
1199
+ [StateCodesUS.Vermont]: /^\d{6}$/,
1200
+ [StateCodesUS.Virginia]: /^\d{7}$/,
1201
+ [StateCodesUS.Washington]: /^\d{9}$/,
1202
+ [StateCodesUS.WestVirginia]: /^\d{6}$/,
1203
+ [StateCodesUS.Wisconsin]: /^\d{6}$/,
1204
+ [StateCodesUS.Wyoming]: /^\d{6}$/,
1205
+ [StateCodesUS.DistrictOfColumbia]: /^\d{9}$/,
1206
+ default: /^\d{9}$/
1207
+ }
1208
+ };
1209
+ const taxInformationDefaultFieldMetadata = {
1210
+ label: "taxId"
1211
+ };
1212
+ const exemptedFromTaxDefaultFieldMetadata = {
1213
+ label: "iDontHaveATaxId"
1214
+ };
1215
+ const mapValidators = (validators, country) => {
1216
+ return validators.map(
1217
+ (validator) => ({
1218
+ ...validator,
1219
+ validate: (taxInformation) => {
1220
+ const taxInfo = taxInformation?.find((taxId) => country === taxId.country);
1221
+ if (taxInfo?.numberAbsent) return true;
1222
+ return taxInfo?.number ? validator.validate(taxInfo.number) : false;
1223
+ }
1224
+ })
1225
+ );
1226
+ };
1227
+ const taxInformationDefaultFieldConfig = {
1228
+ [CountryCodes.Australia]: {
1229
+ label: "australianBusinessNumberAbn",
1230
+ validators: mapValidators([validatePatternOnBlur(/^\d{11}$/)], CountryCodes.Australia),
1231
+ mask: {
1232
+ mask: makeMask(
1233
+ ...numericInputs(2),
1234
+ spacer,
1235
+ ...numericInputs(3),
1236
+ spacer,
1237
+ ...numericInputs(3),
1238
+ spacer,
1239
+ ...numericInputs(3)
1240
+ )
1241
+ },
1242
+ guidanceText: {
1243
+ key: "enterNDigitsForExample",
1244
+ values: {
1245
+ numDigits: "11",
1246
+ example: "51 824 753 556"
1247
+ }
1248
+ }
1249
+ },
1250
+ [CountryCodes.Belgium]: ({ companyType }) => {
1251
+ switch (companyType) {
1252
+ case LegalEntityTypes.INDIVIDUAL:
1253
+ return {
1254
+ label: "taxInformationNumber__BE_Individual",
1255
+ placeholder: "taxInformationNumber__placeHolder__BE_Individual",
1256
+ validators: mapValidators([validatePatternOnBlur(/^\d{11}$/)], CountryCodes.Belgium),
1257
+ mask: { mask: makeMask(...numericInputs(11)) },
1258
+ guidanceText: {
1259
+ key: "validationPleaseEnterAValidIdNumberWithExample",
1260
+ values: {
1261
+ example: "99999999999",
1262
+ idType: "Numeró National"
1263
+ }
1264
+ }
1265
+ };
1266
+ default:
1267
+ return {
1268
+ label: "taxInformationNumber__BE",
1269
+ placeholder: "taxInformationNumber__placeHolder__BE",
1270
+ validators: mapValidators([validatePatternOnBlur(/^\d{10}$/)], CountryCodes.Belgium),
1271
+ mask: { mask: makeMask(...numericInputs(10)) },
1272
+ guidanceText: {
1273
+ key: "validationPleaseEnterAValidIdNumberWithExample",
1274
+ values: {
1275
+ example: "0123321123",
1276
+ idType: "Business nummer"
1277
+ }
1278
+ }
1279
+ };
1505
1280
  }
1506
1281
  },
1507
- [StateCodesUS.Mississippi]: {
1508
- key: "enterXToYDigitsForExample",
1509
- values: {
1510
- minDigits: "7",
1511
- maxDigits: "10",
1512
- example: "1234567 MS"
1282
+ [CountryCodes.Canada]: {
1283
+ label: "businessNumber",
1284
+ validators: mapValidators([validatePatternOnBlur(/^\d{9}$/)], CountryCodes.Canada),
1285
+ mask: { mask: makeMask(...numericInputs(9)) },
1286
+ guidanceText: {
1287
+ key: "enterNDigitsForExample",
1288
+ values: {
1289
+ numDigits: "9",
1290
+ example: "123456789"
1291
+ }
1513
1292
  }
1514
1293
  },
1515
- [StateCodesUS.Missouri]: {
1516
- key: "enterNDigitsForExample",
1517
- values: {
1518
- numDigits: "10",
1519
- example: "1234567890 MO"
1294
+ [CountryCodes.France]: {
1295
+ label: "taxInformationNumber__FR",
1296
+ placeholder: "taxInformationNumber__placeHolder__FR",
1297
+ validators: mapValidators([validatePatternOnBlur(/^\s*(\d\s*){13}$/)], CountryCodes.France),
1298
+ mask: {
1299
+ mask: makeMask(
1300
+ ...numericInputs(2),
1301
+ spacer,
1302
+ ...numericInputs(2),
1303
+ spacer,
1304
+ ...numericInputs(3),
1305
+ spacer,
1306
+ ...numericInputs(3),
1307
+ spacer,
1308
+ ...numericInputs(3)
1309
+ )
1310
+ },
1311
+ guidanceText: {
1312
+ key: "validationPleaseEnterAValidIdNumberWithExample",
1313
+ values: {
1314
+ example: "30 23 217 600 053",
1315
+ idType: "Numéro SPI"
1316
+ }
1520
1317
  }
1521
1318
  },
1522
- [StateCodesUS.Montana]: {
1523
- key: "enterNDigitsForExample",
1524
- values: {
1525
- numDigits: "7",
1526
- example: "1234567 MT"
1319
+ [CountryCodes.Germany]: ({ companyType }) => {
1320
+ switch (companyType) {
1321
+ case LegalEntityTypes.INDIVIDUAL:
1322
+ return {
1323
+ label: "taxInformationNumber__DE_Individual",
1324
+ placeholder: "taxInformationNumber__placeHolder__DE_Individual",
1325
+ validators: mapValidators([validatePatternOnBlur(/^\d{11}$/)], CountryCodes.Germany),
1326
+ mask: { mask: makeMask(...numericInputs(11)) },
1327
+ guidanceText: {
1328
+ key: "validationPleaseEnterAValidIdNumberWithExample",
1329
+ values: {
1330
+ example: "26954371827",
1331
+ idType: "IdNr"
1332
+ }
1333
+ }
1334
+ };
1335
+ default:
1336
+ return {
1337
+ label: "taxInformationNumber__DE",
1338
+ placeholder: "taxInformationNumber__placeHolder__DE",
1339
+ validators: mapValidators([validatePatternOnBlur(/^\d{10,11}$/)], CountryCodes.Germany),
1340
+ mask: { mask: makeMask(...numericInputs(11)) },
1341
+ guidanceText: {
1342
+ key: "validationPleaseEnterAValidIdNumberWithExample",
1343
+ values: {
1344
+ example: "14310260208",
1345
+ idType: "Steuernummer"
1346
+ }
1347
+ }
1348
+ };
1527
1349
  }
1528
1350
  },
1529
- [StateCodesUS.Nebraska]: {
1530
- key: "enterXToYDigitsForExample",
1531
- values: {
1532
- minDigits: "9",
1533
- maxDigits: "11",
1534
- example: "123456789 NE"
1351
+ [CountryCodes.Gibraltar]: {
1352
+ label: "taxpayerReferenceNumber",
1353
+ validators: mapValidators([validatePatternOnBlur(/^\d{1,7}$/)], CountryCodes.Gibraltar),
1354
+ mask: {
1355
+ mask: makeMask(...numericInputs(1), ...numericInputs(6, true))
1356
+ },
1357
+ guidanceText: {
1358
+ key: "enterAMaximumOfNDigitsForExample",
1359
+ values: {
1360
+ maxDigits: "7",
1361
+ example: "123456"
1362
+ }
1535
1363
  }
1536
1364
  },
1537
- [StateCodesUS.Nevada]: {
1538
- key: "enterXToYDigitsForExample",
1539
- values: {
1540
- minDigits: "9",
1541
- maxDigits: "11",
1542
- example: "123456789 NV"
1365
+ [CountryCodes.Guernsey]: ({ companyType }) => {
1366
+ switch (companyType) {
1367
+ case CompanyTypesValues.SOLE_PROPRIETORSHIP:
1368
+ return {
1369
+ label: "nationalInsuranceNumber",
1370
+ validators: mapValidators(
1371
+ [validatePatternOnBlur(/^GY\d{6}[A-D]$/)],
1372
+ CountryCodes.Guernsey
1373
+ ),
1374
+ mask: {
1375
+ mask: makeMask(
1376
+ ...nonInputs("GY", { includeInValue: true }),
1377
+ spacer,
1378
+ ...numericInputs(2),
1379
+ spacer,
1380
+ ...numericInputs(2),
1381
+ spacer,
1382
+ ...numericInputs(2),
1383
+ spacer,
1384
+ {
1385
+ type: "input",
1386
+ allow: /[A-D]/
1387
+ }
1388
+ ),
1389
+ transformOnType: uppercase
1390
+ },
1391
+ guidanceText: {
1392
+ key: "enterTheRemainingNCharactersForExample",
1393
+ values: {
1394
+ numChars: "7",
1395
+ example: "GY 12 34 56 A"
1396
+ }
1397
+ }
1398
+ };
1399
+ default:
1400
+ return {
1401
+ label: "taxInformationNumber",
1402
+ mask: businessRegistrationNumberMasks[CountryCodes.Guernsey].default,
1403
+ validators: mapValidators(
1404
+ [
1405
+ validatePatternOnBlur(
1406
+ businessRegistrationNumberPatterns[CountryCodes.Guernsey].default
1407
+ )
1408
+ ],
1409
+ CountryCodes.Guernsey
1410
+ ),
1411
+ guidanceText: {
1412
+ key: "enterAMaximumOfNDigitsForExample",
1413
+ values: {
1414
+ maxDigits: "9",
1415
+ example: "123456"
1416
+ }
1417
+ }
1418
+ };
1543
1419
  }
1544
1420
  },
1545
- [StateCodesUS.NewHampshire]: {
1546
- key: "enterNDigitsForExample",
1547
- values: {
1548
- numDigits: "9",
1549
- example: "123456789 NH"
1421
+ [CountryCodes.HongKong]: {
1422
+ label: "taxInformationNumber__HK",
1423
+ validators: mapValidators([validatePatternOnBlur(/^\d{8}$/)], CountryCodes.HongKong),
1424
+ mask: { mask: makeMask(...numericInputs(8)) },
1425
+ guidanceText: {
1426
+ key: "enterNDigitsForExample",
1427
+ values: {
1428
+ numDigits: "8",
1429
+ example: "70569713"
1430
+ }
1550
1431
  }
1551
1432
  },
1552
- [StateCodesUS.NewJersey]: {
1553
- key: "enterNDigitsForExample",
1554
- values: {
1555
- numDigits: "10",
1556
- example: "1234567890 NJ"
1433
+ [CountryCodes.Jersey]: ({ taxIdNumberType, companyType }) => {
1434
+ switch (taxIdNumberType) {
1435
+ case "SSN":
1436
+ return {
1437
+ label: "socialSecurityNumber",
1438
+ validators: mapValidators(
1439
+ [validatePatternOnBlur(/^[A-Z]{2}\d{6}[A-Z]$/)],
1440
+ CountryCodes.Jersey
1441
+ ),
1442
+ mask: {
1443
+ mask: makeMask(...alphaInputs(2), ...numericInputs(6), ...alphaInputs(1)),
1444
+ transformOnType: uppercase
1445
+ },
1446
+ guidanceText: {
1447
+ key: "enterNCharactersForExample",
1448
+ values: {
1449
+ numChars: "9",
1450
+ example: "JY000000A"
1451
+ }
1452
+ }
1453
+ };
1454
+ case "TIN_JE":
1455
+ default:
1456
+ switch (companyType) {
1457
+ case CompanyTypesValues.SOLE_PROPRIETORSHIP:
1458
+ return {
1459
+ label: "taxIdentificationNumber",
1460
+ validators: mapValidators([validatePatternOnBlur(/^\d{10}$/)], CountryCodes.Jersey),
1461
+ mask: {
1462
+ mask: makeMask(
1463
+ ...numericInputs(3),
1464
+ ...nonInputs(" - "),
1465
+ ...numericInputs(3),
1466
+ ...nonInputs(" - "),
1467
+ ...numericInputs(4)
1468
+ )
1469
+ },
1470
+ guidanceText: {
1471
+ key: "enterNDigitsForExample",
1472
+ values: {
1473
+ numDigits: "10",
1474
+ example: "100-100-1000"
1475
+ }
1476
+ }
1477
+ };
1478
+ default:
1479
+ return {
1480
+ label: "taxIdentificationNumber",
1481
+ validators: mapValidators(
1482
+ [validatePatternOnBlur(/^[A-Z]{2}\d{5}$/)],
1483
+ CountryCodes.Jersey
1484
+ ),
1485
+ mask: {
1486
+ mask: makeMask(...alphaInputs(2), ...numericInputs(5)),
1487
+ transformOnType: uppercase
1488
+ },
1489
+ guidanceText: {
1490
+ key: "enterNCharactersForExample",
1491
+ values: {
1492
+ numChars: "7",
1493
+ example: "CC17261"
1494
+ }
1495
+ }
1496
+ };
1497
+ }
1557
1498
  }
1558
1499
  },
1559
- [StateCodesUS.NewMexico]: {
1560
- key: "enterNDigitsForExample",
1561
- values: {
1562
- numDigits: "6",
1563
- example: "123456 NM"
1500
+ [CountryCodes.Ireland]: {
1501
+ label: "trnNumber",
1502
+ validators: mapValidators(
1503
+ [validatePatternOnBlur(/^(\d{7})([a-zA-Z])([a-zA-Z]?)$/)],
1504
+ CountryCodes.Ireland
1505
+ ),
1506
+ mask: {
1507
+ mask: makeMask(...numericInputs(7), ...alphaInputs(1), ...alphaInputs(1, true))
1508
+ },
1509
+ guidanceText: {
1510
+ key: "enterXDigitsThenXToYLettersForExample",
1511
+ values: {
1512
+ numDigits: "7",
1513
+ minLetters: "1",
1514
+ maxLetters: "2",
1515
+ example: "1497955KA"
1516
+ }
1564
1517
  }
1565
1518
  },
1566
- [StateCodesUS.NewYork]: {
1567
- key: "enterNDigitsForExample",
1568
- values: {
1569
- numDigits: "7",
1570
- example: "1234567 NY"
1519
+ [CountryCodes.IsleOfMan]: {
1520
+ label: "taxReferenceNumber",
1521
+ validators: mapValidators([validatePatternOnBlur(/^[HCX]\d{8}$/)], CountryCodes.IsleOfMan),
1522
+ mask: {
1523
+ mask: makeMask(
1524
+ {
1525
+ type: "input",
1526
+ allow: /[HCX]/
1527
+ },
1528
+ ...numericInputs(6),
1529
+ ...nonInputs(" - "),
1530
+ ...numericInputs(2)
1531
+ ),
1532
+ transformOnType: uppercase
1533
+ },
1534
+ guidanceText: {
1535
+ key: "enterNCharactersForExample",
1536
+ values: {
1537
+ numChars: "9",
1538
+ example: "C155673-79"
1539
+ }
1571
1540
  }
1572
1541
  },
1573
- [StateCodesUS.NorthCarolina]: {
1574
- key: "enterNDigitsForExample",
1575
- values: {
1576
- numDigits: "7",
1577
- example: "1234567 NC"
1542
+ [CountryCodes.Netherlands]: ({ companyType }) => {
1543
+ switch (companyType) {
1544
+ case LegalEntityTypes.INDIVIDUAL:
1545
+ return {
1546
+ label: "bsnNumber",
1547
+ placeholder: "taxInformationNumber__placeHolder__NL",
1548
+ validators: mapValidators([validatePatternOnBlur(/^\d{9}$/)], CountryCodes.Netherlands),
1549
+ mask: { mask: makeMask(...numericInputs(9)) },
1550
+ guidanceText: {
1551
+ key: "validationPleaseEnterAValidIdNumberWithExample",
1552
+ values: {
1553
+ example: "999999999",
1554
+ idType: "BSN"
1555
+ }
1556
+ }
1557
+ };
1558
+ default:
1559
+ return {
1560
+ label: "rsinNumber",
1561
+ placeholder: "taxInformationNumber__placeHolder__NL",
1562
+ validators: mapValidators([validatePatternOnBlur(/^\d{9}$/)], CountryCodes.Netherlands),
1563
+ mask: { mask: makeMask(...numericInputs(9)) },
1564
+ guidanceText: {
1565
+ key: "validationPleaseEnterAValidIdNumberWithExample",
1566
+ values: {
1567
+ example: "811786523",
1568
+ idType: "RSIN"
1569
+ }
1570
+ }
1571
+ };
1578
1572
  }
1579
1573
  },
1580
- [StateCodesUS.NorthDakota]: {
1581
- key: "enterXToYDigitsForExample",
1582
- values: {
1583
- minDigits: "7",
1584
- maxDigits: "10",
1585
- example: "1234567 ND"
1574
+ [CountryCodes.NewZealand]: {
1575
+ label: "irdNumber",
1576
+ validators: mapValidators([validatePatternOnBlur(/^\d{8,9}$/)], CountryCodes.NewZealand),
1577
+ mask: {
1578
+ mask: makeMask(...numericInputs(8), ...numericInputs(1, true))
1579
+ },
1580
+ guidanceText: {
1581
+ key: "enterXToYDigitsForExample",
1582
+ values: {
1583
+ minDigits: "8",
1584
+ maxDigits: "9",
1585
+ example: "12345678"
1586
+ }
1586
1587
  }
1587
1588
  },
1588
- [StateCodesUS.Ohio]: {
1589
- key: "enterNDigitsForExample",
1590
- values: {
1591
- numDigits: "10",
1592
- example: "1234567890 OH"
1589
+ // Special case for SG in which we also save the registration number as the TaxID if that selection has been made
1590
+ [CountryCodes.Singapore]: {
1591
+ label: "gst",
1592
+ validators: mapValidators([validatePatternOnBlur(/^[A-Z0-9]{9,10}$/)], CountryCodes.Singapore),
1593
+ mask: {
1594
+ mask: makeMask(
1595
+ ...alphanumericInputs(2),
1596
+ ...nonInputs(" - "),
1597
+ ...alphanumericInputs(7),
1598
+ ...nonInputs(" - "),
1599
+ ...alphanumericInputs(1)
1600
+ ),
1601
+ transformOnType: uppercase
1602
+ },
1603
+ guidanceText: {
1604
+ key: "enterNCharactersForExample",
1605
+ values: {
1606
+ numChars: "10",
1607
+ example: "M212345678"
1608
+ }
1593
1609
  }
1594
1610
  },
1595
- [StateCodesUS.Oklahoma]: {
1596
- key: "enterNDigitsForExample",
1597
- values: {
1598
- numDigits: "10",
1599
- example: "1234567890 OK"
1611
+ [CountryCodes.PuertoRico]: {
1612
+ // should exactly match CountryCodes.UnitedStates
1613
+ label: "taxInformationNumber__US",
1614
+ helperText: "taxInformationNumber__helperText__US",
1615
+ placeholder: "taxInformationNumber__placeHolder__US",
1616
+ validators: mapValidators([validatePatternOnBlur(/^\d{9}$/)], CountryCodes.PuertoRico),
1617
+ mask: {
1618
+ mask: makeMask(...numericInputs(2), ...nonInputs(" - "), ...numericInputs(7))
1619
+ },
1620
+ guidanceText: {
1621
+ key: "validationPleaseEnterAValidEINWithFormat",
1622
+ values: {
1623
+ format: "XX-XXXXXXX",
1624
+ example: "98-7654321"
1625
+ }
1600
1626
  }
1601
1627
  },
1602
- [StateCodesUS.Oregon]: {
1603
- key: "enterNDigitsForExample",
1604
- values: {
1605
- numDigits: "9",
1606
- example: "123456789 OR"
1628
+ [CountryCodes.UnitedKingdom]: ({ taxIdNumberType, companyType }) => {
1629
+ switch (companyType) {
1630
+ case LegalEntityTypes.INDIVIDUAL:
1631
+ switch (taxIdNumberType) {
1632
+ case "NINO":
1633
+ return {
1634
+ label: "nationalInsuranceNumber",
1635
+ placeholder: "taxInformationNumber__placeHolder__GB",
1636
+ validators: mapValidators(
1637
+ [validatePatternOnBlur(/^[A-Z]{2}\d{6}[A-D]$/)],
1638
+ CountryCodes.UnitedKingdom
1639
+ ),
1640
+ guidanceText: {
1641
+ key: "validationPleaseEnterAValidIdNumberWithExample",
1642
+ values: {
1643
+ example: "AA123456C",
1644
+ idType: "NINO"
1645
+ }
1646
+ }
1647
+ };
1648
+ default:
1649
+ return {
1650
+ label: "utr",
1651
+ placeholder: "taxInformationNumber__placeHolder__GB",
1652
+ validators: mapValidators(
1653
+ [validatePatternOnBlur(/^\d{10}$/)],
1654
+ CountryCodes.UnitedKingdom
1655
+ ),
1656
+ mask: { mask: makeMask(...numericInputs(10)) },
1657
+ guidanceText: {
1658
+ key: "validationPleaseEnterAValidIdNumberWithExample",
1659
+ values: {
1660
+ example: "6669863459",
1661
+ idType: "UTR"
1662
+ }
1663
+ }
1664
+ };
1665
+ }
1666
+ default:
1667
+ return {
1668
+ label: "utr",
1669
+ placeholder: "taxInformationNumber__placeHolder__GB",
1670
+ validators: mapValidators(
1671
+ [validatePatternOnBlur(/^\d{10}$/)],
1672
+ CountryCodes.UnitedKingdom
1673
+ ),
1674
+ mask: { mask: makeMask(...numericInputs(10)) },
1675
+ guidanceText: {
1676
+ key: "validationPleaseEnterAValidIdNumberWithExample",
1677
+ values: {
1678
+ example: "6669863459",
1679
+ idType: "UTR"
1680
+ }
1681
+ }
1682
+ };
1607
1683
  }
1608
1684
  },
1609
- [StateCodesUS.Pennsylvania]: {
1610
- key: "enterNDigitsForExample",
1611
- values: {
1612
- numDigits: "7",
1613
- example: "1234567 PA"
1685
+ [CountryCodes.UnitedStates]: {
1686
+ label: "taxInformationNumber__US",
1687
+ helperText: "taxInformationNumber__helperText__US",
1688
+ placeholder: "taxInformationNumber__placeHolder__US",
1689
+ validators: mapValidators(
1690
+ [validateNotEmptyOnBlur, validatePatternOnBlur(/^\d{9}$/)],
1691
+ CountryCodes.UnitedStates
1692
+ ),
1693
+ mask: {
1694
+ mask: makeMask(...numericInputs(2), ...nonInputs(" - "), ...numericInputs(7))
1695
+ },
1696
+ guidanceText: {
1697
+ key: "validationPleaseEnterAValidEINWithFormat",
1698
+ values: {
1699
+ format: "XX-XXXXXXX",
1700
+ example: "98-7654321"
1701
+ }
1614
1702
  }
1615
1703
  },
1616
- [StateCodesUS.RhodeIsland]: {
1617
- key: "enterNDigitsForExample",
1618
- values: {
1619
- numDigits: "7",
1620
- example: "1234567 RI"
1621
- }
1704
+ /**
1705
+ * NOT YET SUPPORTED
1706
+ * These are brought over from the old pattern files. We have no idea if they are accurate or not.
1707
+ * See https://en.wikipedia.org/wiki/VAT_identification_number
1708
+ */
1709
+ [CountryCodes.India]: {
1710
+ validators: mapValidators([validatePatternOnBlur(/^[A-Z0-9]{15}$/)], CountryCodes.India)
1622
1711
  },
1623
- [StateCodesUS.SouthCarolina]: {
1624
- key: "enterNDigitsForExample",
1625
- values: {
1626
- numDigits: "7",
1627
- example: "1234567 SC"
1628
- }
1712
+ [CountryCodes.Japan]: {
1713
+ label: "taxInformationNumber__JP",
1714
+ validators: mapValidators([validatePatternOnBlur(/^\d{13}$/)], CountryCodes.Japan)
1629
1715
  },
1630
- [StateCodesUS.SouthDakota]: {
1631
- key: "enterNDigitsForExample",
1632
- values: {
1633
- numDigits: "7",
1634
- example: "1234567 SD"
1716
+ [CountryCodes.Philippines]: {
1717
+ validators: mapValidators([validatePatternOnBlur(/^\d{12}$/)], CountryCodes.Philippines)
1718
+ }
1719
+ };
1720
+ const exemptedFromTaxDefaultFieldConfig = {
1721
+ [CountryCodes.Australia]: {
1722
+ label: "doNotHaveAbn"
1723
+ }
1724
+ };
1725
+ const descriptionField = "adyen-kyc-description-field";
1726
+ const styles = {
1727
+ descriptionField
1728
+ };
1729
+ const DESCRIPTION_CHARACTERS_LIMIT = 200;
1730
+ function DocumentUpload({
1731
+ documentType,
1732
+ documentField,
1733
+ guidanceHeader,
1734
+ documentTypeSelect,
1735
+ guidanceContent,
1736
+ handleFieldChange,
1737
+ requiredFields,
1738
+ data: dataProp,
1739
+ valid: validProp,
1740
+ errors: errorProp,
1741
+ fieldValidationErrors: propFieldValidationErrors,
1742
+ supportsMultipleUploads,
1743
+ maxNumberOfFiles = 1,
1744
+ label,
1745
+ extraDropzoneDescription,
1746
+ hidePageCount,
1747
+ ...props
1748
+ }) {
1749
+ const { t } = useTranslation("common");
1750
+ const [document, setDocument] = useState();
1751
+ const form = useForm({
1752
+ ...props,
1753
+ schema: ["description"],
1754
+ defaultData: dataProp,
1755
+ rules: props.validators,
1756
+ fieldProblems: propFieldValidationErrors
1757
+ });
1758
+ const { handleChangeFor, triggerValidation, setData } = form;
1759
+ let { data, errors, valid, fieldProblems } = form;
1760
+ const formUtils = createFormUtils(props, t);
1761
+ const stateRef = useRef({ setState: null });
1762
+ const isOptional = !(props?.formVerificationErrors && Object.keys(props?.formVerificationErrors)?.length === 0);
1763
+ useEffect(() => {
1764
+ if (isOptional) {
1765
+ triggerValidation();
1635
1766
  }
1636
- },
1637
- [StateCodesUS.Tennessee]: {
1638
- key: "enterNDigitsForExample",
1639
- values: {
1640
- numDigits: "6",
1641
- example: "123456 TN"
1767
+ }, [dataProp]);
1768
+ useEffect(() => {
1769
+ stateRef.current.setState?.({
1770
+ type: "addToState",
1771
+ value: {
1772
+ data,
1773
+ valid,
1774
+ errors,
1775
+ fieldProblems,
1776
+ dataStoreId: props.id,
1777
+ schema: requiredFields
1778
+ }
1779
+ });
1780
+ }, [data, valid, errors, fieldProblems]);
1781
+ useEffect(() => {
1782
+ setDocument({
1783
+ [documentField]: dataProp?.[documentField]
1784
+ });
1785
+ setData("description", dataProp?.description);
1786
+ triggerValidation();
1787
+ }, [dataProp]);
1788
+ if (handleFieldChange && requiredFields && propFieldValidationErrors) {
1789
+ data = dataProp ?? {};
1790
+ errors = errorProp;
1791
+ valid = validProp;
1792
+ fieldProblems = propFieldValidationErrors;
1793
+ }
1794
+ const handleInput = (e) => {
1795
+ handleChangeFor("description")(e);
1796
+ if (handleFieldChange) {
1797
+ handleFieldChange?.("description")(e);
1642
1798
  }
1643
- },
1644
- [StateCodesUS.Texas]: {
1645
- key: "enterNDigitsForExample",
1646
- values: {
1647
- numDigits: "10",
1648
- example: "1234567890 TX"
1799
+ };
1800
+ return /* @__PURE__ */ jsxs(
1801
+ "div",
1802
+ {
1803
+ className: `adyen-kyc-company-document-upload adyen-kyc-company-document-upload--${documentField}`,
1804
+ children: [
1805
+ /* @__PURE__ */ jsx(StateContextSetter, { owner: props.id, stateRef }),
1806
+ props.heading && /* @__PURE__ */ jsx(Header, { title: props.heading, description: props.description }),
1807
+ /* @__PURE__ */ jsx(
1808
+ ErrorPanel,
1809
+ {
1810
+ verificationErrors: props?.formVerificationErrors,
1811
+ validationErrors: propFieldValidationErrors,
1812
+ formUtils,
1813
+ id: "ariaErrorField"
1814
+ }
1815
+ ),
1816
+ formUtils.isRequiredField(documentField) && /* @__PURE__ */ jsxs(Fragment, { children: [
1817
+ guidanceHeader,
1818
+ documentTypeSelect && /* @__PURE__ */ jsx(Field, { name: "documentType", label: t(($) => $["selectDocumentType"]), children: (childProps) => /* @__PURE__ */ jsx(
1819
+ Select,
1820
+ {
1821
+ ...childProps,
1822
+ onChange: (e) => documentTypeSelect.setSelectedType(e.target.value),
1823
+ name: "documentType",
1824
+ placeholder: t(($) => $["selectDocument"]),
1825
+ selected: documentTypeSelect.selectedType,
1826
+ items: documentTypeSelect.options.map(({ id, name }) => ({
1827
+ id,
1828
+ name: t(($) => $[name])
1829
+ }))
1830
+ }
1831
+ ) }),
1832
+ /* @__PURE__ */ jsx("div", { children: guidanceContent }),
1833
+ /* @__PURE__ */ jsx(DocumentGuidance, { type: documentType, className: "adyen-kyc-u-margin-bottom-24" }),
1834
+ /* @__PURE__ */ jsx(
1835
+ Dropzone,
1836
+ {
1837
+ defaultData: document ?? data,
1838
+ id: props.id,
1839
+ isOptional: isOptional || formUtils.isOptionalField(documentField),
1840
+ maxSize: documentType === "constitutionalDocument" ? 31457280 : void 0,
1841
+ name: documentField,
1842
+ shouldValidate: props.shouldValidate,
1843
+ handleFieldChange,
1844
+ errors,
1845
+ fieldValidationErrors: fieldProblems,
1846
+ valid,
1847
+ multiple: supportsMultipleUploads,
1848
+ maxNumberOfFiles: maxNumberOfFiles ?? 1,
1849
+ label,
1850
+ extraDropzoneDescription,
1851
+ hidePageCount
1852
+ }
1853
+ )
1854
+ ] }),
1855
+ formUtils.isRequiredField("description") && /* @__PURE__ */ jsx("div", { className: styles.descriptionField, children: /* @__PURE__ */ jsx(
1856
+ Field,
1857
+ {
1858
+ name: "description",
1859
+ label: formUtils.getLabel("descriptionOptional"),
1860
+ errorMessage: formUtils.getErrorMessage("description", errors, fieldProblems),
1861
+ isValid: valid.description,
1862
+ children: (childProps) => /* @__PURE__ */ jsx(
1863
+ TextArea,
1864
+ {
1865
+ ...childProps,
1866
+ name: "description",
1867
+ value: data.description,
1868
+ maxLength: DESCRIPTION_CHARACTERS_LIMIT,
1869
+ onInput: handleInput,
1870
+ "aria-invalid": !valid.description,
1871
+ handleFieldChange: handleInput,
1872
+ errors,
1873
+ fieldValidationErrors: fieldProblems,
1874
+ valid
1875
+ }
1876
+ )
1877
+ }
1878
+ ) })
1879
+ ]
1649
1880
  }
1650
- },
1651
- [StateCodesUS.Utah]: {
1652
- key: "enterNDigitsForExample",
1653
- values: {
1654
- numDigits: "7",
1655
- example: "1234567 UT"
1881
+ );
1882
+ }
1883
+ const MemoizedDocumentUpload = memo(
1884
+ DocumentUpload,
1885
+ (prevProps, nextProps) => prevProps.shouldValidate === nextProps.shouldValidate && objectsDeepEqual(prevProps.requiredFields, nextProps.requiredFields) && objectsDeepEqual(prevProps.errors, nextProps.errors) && objectsDeepEqual(prevProps.optionalFields, nextProps.optionalFields) && objectsDeepEqual(prevProps.data, nextProps.data) && objectsDeepEqual(prevProps.formVerificationErrors, nextProps.formVerificationErrors) && objectsDeepEqual(prevProps.fieldValidationErrors, nextProps.fieldValidationErrors) && objectsDeepEqual(prevProps.documentTypeSelect, nextProps.documentTypeSelect) && prevProps.documentField === nextProps.documentField && prevProps.name === nextProps.name && prevProps.country === nextProps.country && prevProps.companyType === nextProps.companyType
1886
+ );
1887
+ const useCapabilities = () => {
1888
+ const { data: rootLegalEntity } = useLegalEntity(ROOT_LE);
1889
+ return rootLegalEntity?.capabilities;
1890
+ };
1891
+ const companyRegistrationNumberOptions = {
1892
+ [CountryCodes.Australia]: [
1893
+ {
1894
+ id: "incorporatedAssociationRegistrationNumber",
1895
+ name: "incorporatedAssociationRegistrationNumber",
1896
+ applicableOnlyFor: [CompanyTypesValues.INCORPORATED_ASSOCIATION]
1897
+ },
1898
+ {
1899
+ id: "australianBusinessNumberAcn",
1900
+ name: "australianBusinessNumberAcn",
1901
+ applicableOnlyFor: [
1902
+ CompanyTypesValues.PRIVATE_COMPANY,
1903
+ CompanyTypesValues.PUBLIC_COMPANY,
1904
+ CompanyTypesValues.UNLISTED_PUBLIC_COMPANY,
1905
+ CompanyTypesValues.UNINCORPORATED_PARTNERSHIP,
1906
+ CompanyTypesValues.INCORPORATED_PARTNERSHIP,
1907
+ CompanyTypesValues.GOVERNMENTAL_ORGANIZATION,
1908
+ CompanyTypesValues.NON_PROFIT_OR_CHARITABLE,
1909
+ CompanyTypesValues.SOLE_PROPRIETORSHIP
1910
+ ]
1656
1911
  }
1657
- },
1658
- [StateCodesUS.Vermont]: {
1659
- key: "enterNDigitsForExample",
1660
- values: {
1661
- numDigits: "6",
1662
- example: "123456 VT"
1912
+ ],
1913
+ [CountryCodes.Austria]: [
1914
+ {
1915
+ id: "firmenbuchnummer",
1916
+ name: "firmenbuchnummer"
1917
+ },
1918
+ {
1919
+ id: "ZVR",
1920
+ name: "zentralesVereinsregisterId",
1921
+ applicableOnlyFor: [
1922
+ CompanyTypesValues.NON_PROFIT_OR_CHARITABLE,
1923
+ CompanyTypesValues.INCORPORATED_ASSOCIATION
1924
+ ]
1663
1925
  }
1664
- },
1665
- [StateCodesUS.Virginia]: {
1666
- key: "enterNDigitsForExample",
1667
- values: {
1668
- numDigits: "7",
1669
- example: "1234567 VA"
1926
+ ],
1927
+ [CountryCodes.Croatia]: [
1928
+ { id: "MBO", name: "MBO", applicableOnlyFor: [CompanyTypesValues.SOLE_PROPRIETORSHIP] },
1929
+ {
1930
+ id: "MBS",
1931
+ name: "MBS",
1932
+ applicableOnlyFor: [
1933
+ CompanyTypesValues.PRIVATE_COMPANY,
1934
+ CompanyTypesValues.PUBLIC_COMPANY,
1935
+ CompanyTypesValues.UNLISTED_PUBLIC_COMPANY,
1936
+ CompanyTypesValues.UNINCORPORATED_PARTNERSHIP,
1937
+ CompanyTypesValues.INCORPORATED_PARTNERSHIP,
1938
+ CompanyTypesValues.GOVERNMENTAL_ORGANIZATION,
1939
+ CompanyTypesValues.NON_PROFIT_OR_CHARITABLE
1940
+ ]
1941
+ }
1942
+ ],
1943
+ [CountryCodes.France]: [
1944
+ {
1945
+ id: "SIRET",
1946
+ name: "siret"
1947
+ },
1948
+ {
1949
+ id: "RNA",
1950
+ name: "rnaNumber",
1951
+ applicableOnlyFor: [CompanyTypesValues.NON_PROFIT_OR_CHARITABLE]
1670
1952
  }
1671
- },
1672
- [StateCodesUS.Washington]: {
1673
- key: "enterNDigitsForExample",
1674
- values: {
1675
- numDigits: "9",
1676
- example: "123456789 WA"
1953
+ ],
1954
+ [CountryCodes.Hungary]: [
1955
+ {
1956
+ id: "nyilvantartasiSzam",
1957
+ name: "huRegistrationNumberForSoleProp",
1958
+ applicableOnlyFor: [CompanyTypesValues.SOLE_PROPRIETORSHIP]
1677
1959
  }
1678
- },
1679
- [StateCodesUS.WestVirginia]: {
1680
- key: "enterNDigitsForExample",
1681
- values: {
1682
- numDigits: "6",
1683
- example: "123456 WV"
1960
+ ],
1961
+ [CountryCodes.Italy]: [
1962
+ {
1963
+ id: "partitaIVA",
1964
+ name: "codiceFiscalePartitaIVA"
1965
+ },
1966
+ {
1967
+ id: "CCIAA",
1968
+ name: "CCIAA"
1684
1969
  }
1685
- },
1686
- [StateCodesUS.Wisconsin]: {
1687
- key: "enterNDigitsForExample",
1688
- values: {
1689
- numDigits: "6",
1690
- example: "123456 WI"
1970
+ ],
1971
+ [CountryCodes.Monaco]: [
1972
+ {
1973
+ id: "mcRegistrationNumberSoleProp",
1974
+ name: "mcRegistrationNumberSoleProp",
1975
+ applicableOnlyFor: [CompanyTypesValues.SOLE_PROPRIETORSHIP]
1976
+ },
1977
+ {
1978
+ id: "mcRegistrationNumber",
1979
+ name: "mcRegistrationNumber",
1980
+ applicableOnlyFor: [
1981
+ CompanyTypesValues.PRIVATE_COMPANY,
1982
+ CompanyTypesValues.GOVERNMENTAL_ORGANIZATION,
1983
+ CompanyTypesValues.INCORPORATED_ASSOCIATION,
1984
+ CompanyTypesValues.INCORPORATED_PARTNERSHIP,
1985
+ CompanyTypesValues.NON_PROFIT_OR_CHARITABLE,
1986
+ CompanyTypesValues.UNINCORPORATED_PARTNERSHIP,
1987
+ CompanyTypesValues.UNLISTED_PUBLIC_COMPANY
1988
+ ]
1691
1989
  }
1692
- },
1693
- [StateCodesUS.Wyoming]: {
1694
- key: "enterNDigitsForExample",
1695
- values: {
1696
- numDigits: "6",
1697
- example: "123456 WY"
1990
+ ],
1991
+ [CountryCodes.NewZealand]: [
1992
+ {
1993
+ id: "NZBN",
1994
+ name: "NZBN"
1995
+ },
1996
+ {
1997
+ id: "companyNumberNZ",
1998
+ name: "companyNumberNZ",
1999
+ applicableOnlyFor: [
2000
+ CompanyTypesValues.PRIVATE_COMPANY,
2001
+ CompanyTypesValues.PUBLIC_COMPANY,
2002
+ CompanyTypesValues.UNLISTED_PUBLIC_COMPANY
2003
+ ]
1698
2004
  }
1699
- },
1700
- [StateCodesUS.DistrictOfColumbia]: {
1701
- key: "enterNDigitsForExample",
1702
- values: {
1703
- numDigits: "9",
1704
- example: "123456789"
2005
+ ],
2006
+ [CountryCodes.Romania]: [
2007
+ {
2008
+ id: "roRegNumberNewFormat",
2009
+ name: "roRegNumberNewFormat_label"
2010
+ },
2011
+ {
2012
+ id: "roRegNumberOldFormat",
2013
+ name: "roRegNumberOldFormat_label"
1705
2014
  }
1706
- },
1707
- default: {
1708
- key: "enterNDigitsForExample",
1709
- values: {
1710
- numDigits: "9",
1711
- example: "123456789"
2015
+ ],
2016
+ [CountryCodes.Poland]: [
2017
+ {
2018
+ id: "regon",
2019
+ name: "regon"
2020
+ },
2021
+ {
2022
+ id: "krsNumber",
2023
+ name: "krsNumber"
1712
2024
  }
1713
- }
1714
- };
1715
- const businessRegistrationNumberPatterns = {
1716
- [CountryCodes.Australia]: { default: /^\d{9}$/, associationIncorporated: /^[a-zA-Z0-9]{3,20}$/ },
1717
- [CountryCodes.Austria]: {
1718
- firmenbuchnummer: /^(FN|T)\d{3,6}[a-z]$/,
1719
- ZVR: /^(AT-ZVR-)\d{9,10}$/
1720
- },
1721
- [CountryCodes.Belgium]: { default: /^\d{10}$/ },
1722
- [CountryCodes.Brazil]: { default: /^\d{14}$/ },
1723
- [CountryCodes.Bulgaria]: { default: /^\d{9}$/ },
1724
- [CountryCodes.Canada]: { default: /^[a-zA-Z0-9]{5,10}$/ },
1725
- [CountryCodes.Croatia]: { default: /^\d{9}$/, soleProprietorship: /^\d{8}$/ },
1726
- [CountryCodes.Cyprus]: { default: /^[COP]{1}\d{1,8}$/ },
1727
- [CountryCodes.CzechRepublic]: { default: /^\d{8,10}$/ },
1728
- [CountryCodes.Denmark]: { default: /^\d{8}$/ },
1729
- [CountryCodes.Estonia]: { default: /^\d{8}$/ },
1730
- [CountryCodes.Finland]: { default: /^\d{7}-?\d$/ },
1731
- [CountryCodes.France]: {
1732
- SIRET: /^\d{9}-?\d{5}$/,
1733
- RNA: /^W(\d{9}|\d[A-Za-z]\d{7})$/
1734
- },
1735
- [CountryCodes.Gibraltar]: { default: /^[a-zA-Z0-9]{1,8}$/ },
1736
- [CountryCodes.Germany]: { default: /^[A-Z]{2,3}\d{1,6}[A-Z]{0,5}(?:-[A-Z]\d{4})?$/ },
1737
- [CountryCodes.Greece]: { default: /^\d{12}$/ },
1738
- [CountryCodes.Guernsey]: { default: /^\d{1,9}$/ },
1739
- [CountryCodes.HongKong]: { default: /^\d{7}$/ },
1740
- [CountryCodes.Hungary]: { default: /^\d{10}$/, nyilvantartasiSzam: /^\d{7,10}$/ },
1741
- [CountryCodes.Iceland]: { default: /^\d{10}$/ },
1742
- [CountryCodes.India]: { default: /^\d{21}$/ },
1743
- [CountryCodes.Indonesia]: { default: /^\d{12}$/ },
1744
- [CountryCodes.Ireland]: { default: /^[1-9]\d{1,7}$/ },
1745
- [CountryCodes.IsleOfMan]: { default: /^\d{6}[A-Z]$/ },
1746
- [CountryCodes.Italy]: { partitaIVA: /^\d{11}$/, CCIAA: /^[a-zA-Z]{2}\d{6,7}$/ },
1747
- [CountryCodes.Japan]: { default: /^\d{12}$/ },
1748
- [CountryCodes.Jersey]: { default: /^[a-zA-Z0-9]{1,9}$/ },
1749
- [CountryCodes.Korea]: { default: /^\d{10}$/ },
1750
- [CountryCodes.Latvia]: { default: /^\d{11}$/ },
1751
- [CountryCodes.Liechtenstein]: { default: /FL-[0-9]{4}[.][0-9]{3}[.][0-9]{3}-[0-9]$/ },
1752
- [CountryCodes.Lithuania]: { default: /^\d{6,9}$/ },
1753
- [CountryCodes.Luxembourg]: { default: /^[a-zA-Z]\d{1,9}$/ },
1754
- [CountryCodes.Malaysia]: { default: /^\d{7}$|^\d{12}$/ },
1755
- [CountryCodes.Malta]: { default: /^[CP]\s?\d{4,6}$/ },
1756
- [CountryCodes.Mexico]: { default: /^\D{3}\d{6}\w{3}$/ },
1757
- [CountryCodes.Monaco]: {
1758
- default: /^[0-9]{2}[A-Z]{1,3}[0-9]{5}$/,
1759
- soleProprietorship: /^\d{2,4}[A-Z]\d{5}$/
1760
- },
1761
- [CountryCodes.Netherlands]: { default: /^\d{8}$/ },
1762
- [CountryCodes.NewZealand]: { NZBN: /^\d{13}$/, companyNumberNZ: /^\d{7}$/ },
1763
- [CountryCodes.Norway]: { default: /^\d{9}$/ },
1764
- [CountryCodes.Poland]: { krsNumber: /^\d{10}$/, regon: /^\d{9}$/ },
1765
- [CountryCodes.Portugal]: { default: /^\d{9}$/ },
1766
- [CountryCodes.Romania]: {
1767
- roRegNumberOldFormat: /^[A-Z]\d{1,2}\/\d{1,9}\/\d{4}$/,
1768
- roRegNumberNewFormat: /^[JFC]\d{13}$/
1769
- },
1770
- [CountryCodes.Singapore]: { default: /^[a-zA-Z0-9]{9,10}$/ },
1771
- [CountryCodes.Slovakia]: { default: /^\d{8}$/ },
1772
- [CountryCodes.Slovenia]: { default: /^\d{10}$/ },
1773
- [CountryCodes.Spain]: { default: /^[a-zA-Z][a-zA-Z0-9]{8}$/ },
1774
- [CountryCodes.Sweden]: { default: /^\d{10}$/ },
1775
- [CountryCodes.Switzerland]: { default: /^CHE\d{9}$|^CH\d{11}$/ },
1776
- [CountryCodes.UnitedKingdom]: {
1777
- default: /^[a-zA-Z0-9]{8}$/,
1778
- nonProfit: /^(?:(?:[A-Z]{2})?\d{6}|\d{6,8}|\d{6}-\d)$/
1779
- },
1780
- [CountryCodes.UnitedStates]: {
1781
- [StateCodesUS.Alabama]: /^\d{9}$/,
1782
- [StateCodesUS.Alaska]: /^\d{8}$/,
1783
- [StateCodesUS.Arizona]: /^\d{8}$/,
1784
- [StateCodesUS.Arkansas]: /^8\d{8}$/,
1785
- [StateCodesUS.California]: /^\d{7}$|^\d{12}$/,
1786
- [StateCodesUS.Colorado]: /^\d{11}$/,
1787
- [StateCodesUS.Connecticut]: /^\d{7}$/,
1788
- [StateCodesUS.Delaware]: /^\d{7}$/,
1789
- [StateCodesUS.Florida]: /^\d{6}$|^\d{12}$/,
1790
- [StateCodesUS.Georgia]: /^\d{8}$/,
1791
- [StateCodesUS.Hawaii]: /^\d{5,8}(C1|C2|C3|C4|C5|D1|D2|D3|D4|F1|F2|L1|L2|N1|N2|P1|P2|T1|T2|T3|T4|T5|T6|T7|T8|ZZ)$/,
1792
- [StateCodesUS.Idaho]: /^\d{6}$/,
1793
- [StateCodesUS.Illinois]: /^\d{8}$/,
1794
- [StateCodesUS.Indiana]: /^\d{10}$/,
1795
- [StateCodesUS.Iowa]: /^\d{6,8}$/,
1796
- [StateCodesUS.Kansas]: /^\d{7,9}$/,
1797
- [StateCodesUS.Kentucky]: /^\d{9,10}$/,
1798
- [StateCodesUS.Louisiana]: /^\d{9,10}$/,
1799
- [StateCodesUS.Maine]: /^\d{8}$/,
1800
- [StateCodesUS.Maryland]: /^\d{8}$/,
1801
- [StateCodesUS.Massachusetts]: /^\d{10}$/,
1802
- [StateCodesUS.Michigan]: /^\d{6}$|^\d{9}$/,
1803
- [StateCodesUS.Minnesota]: /^\d{7}$/,
1804
- [StateCodesUS.Mississippi]: /^\d{7,10}$/,
1805
- [StateCodesUS.Missouri]: /^\d{10}$/,
1806
- [StateCodesUS.Montana]: /^\d{7}$/,
1807
- [StateCodesUS.Nebraska]: /^\d{9,11}$/,
1808
- [StateCodesUS.Nevada]: /^\d{9,11}$/,
1809
- [StateCodesUS.NewHampshire]: /^\d{9}$/,
1810
- [StateCodesUS.NewJersey]: /^\d{10}$/,
1811
- [StateCodesUS.NewMexico]: /^\d{6}$/,
1812
- [StateCodesUS.NewYork]: /^\d{7}$/,
1813
- [StateCodesUS.NorthCarolina]: /^\d{7}$/,
1814
- [StateCodesUS.NorthDakota]: /^\d{7,10}$/,
1815
- [StateCodesUS.Ohio]: /^\d{10}$/,
1816
- [StateCodesUS.Oklahoma]: /^\d{10}$/,
1817
- [StateCodesUS.Oregon]: /^\d{9}$/,
1818
- [StateCodesUS.Pennsylvania]: /^\d{7}$/,
1819
- [StateCodesUS.RhodeIsland]: /^\d{7}$/,
1820
- [StateCodesUS.SouthCarolina]: /^\d{7}$/,
1821
- [StateCodesUS.SouthDakota]: /^\d{7}$/,
1822
- [StateCodesUS.Tennessee]: /^\d{6}$/,
1823
- [StateCodesUS.Texas]: /^\d{10}$/,
1824
- [StateCodesUS.Utah]: /^\d{7}$/,
1825
- [StateCodesUS.Vermont]: /^\d{6}$/,
1826
- [StateCodesUS.Virginia]: /^\d{7}$/,
1827
- [StateCodesUS.Washington]: /^\d{9}$/,
1828
- [StateCodesUS.WestVirginia]: /^\d{6}$/,
1829
- [StateCodesUS.Wisconsin]: /^\d{6}$/,
1830
- [StateCodesUS.Wyoming]: /^\d{6}$/,
1831
- [StateCodesUS.DistrictOfColumbia]: /^\d{9}$/,
1832
- default: /^\d{9}$/
1833
- }
1834
- };
1835
- const taxInformationDefaultFieldMetadata = {
1836
- label: "taxId"
1837
- };
1838
- const exemptedFromTaxDefaultFieldMetadata = {
1839
- label: "iDontHaveATaxId"
2025
+ ],
2026
+ [CountryCodes.UnitedKingdom]: [
2027
+ {
2028
+ id: "charity",
2029
+ name: "charityNumber",
2030
+ applicableOnlyFor: [CompanyTypesValues.NON_PROFIT_OR_CHARITABLE]
2031
+ },
2032
+ {
2033
+ id: "companyNumber",
2034
+ name: "companyNumber",
2035
+ applicableOnlyFor: [
2036
+ CompanyTypesValues.PRIVATE_COMPANY,
2037
+ CompanyTypesValues.GOVERNMENTAL_ORGANIZATION,
2038
+ CompanyTypesValues.INCORPORATED_ASSOCIATION,
2039
+ CompanyTypesValues.INCORPORATED_PARTNERSHIP,
2040
+ CompanyTypesValues.NON_PROFIT_OR_CHARITABLE,
2041
+ CompanyTypesValues.UNINCORPORATED_PARTNERSHIP,
2042
+ CompanyTypesValues.UNLISTED_PUBLIC_COMPANY,
2043
+ CompanyTypesValues.PUBLIC_COMPANY
2044
+ ]
2045
+ }
2046
+ ]
1840
2047
  };
1841
- const mapValidators = (validators, country) => {
1842
- return validators.map(
1843
- (validator) => ({
1844
- ...validator,
1845
- validate: (taxInformation) => {
1846
- const taxInfo = taxInformation?.find((taxId) => country === taxId.country);
1847
- if (taxInfo?.numberAbsent) return true;
1848
- return taxInfo?.number ? validator.validate(taxInfo.number) : false;
1849
- }
1850
- })
2048
+ const getCompanyRegistrationNumberOptions = (country, companyType) => {
2049
+ const optionsForCountry = companyRegistrationNumberOptions[country];
2050
+ if (!companyType || !optionsForCountry) return optionsForCountry;
2051
+ return optionsForCountry.filter(
2052
+ (option) => option.applicableOnlyFor?.includes(companyType) ?? true
1851
2053
  );
1852
2054
  };
1853
- const taxInformationDefaultFieldConfig = {
1854
- [CountryCodes.Australia]: {
1855
- label: "australianBusinessNumberAbn",
1856
- validators: mapValidators([validatePatternOnBlur(/^\d{11}$/)], CountryCodes.Australia),
1857
- mask: {
1858
- mask: makeMask(
1859
- ...numericInputs(2),
1860
- spacer,
1861
- ...numericInputs(3),
1862
- spacer,
1863
- ...numericInputs(3),
1864
- spacer,
1865
- ...numericInputs(3)
1866
- )
2055
+ const individualIdNumberOptions = {
2056
+ [CountryCodes.Spain]: [
2057
+ {
2058
+ id: "dni",
2059
+ name: "dni"
1867
2060
  },
1868
- guidanceText: {
1869
- key: "enterNDigitsForExample",
1870
- values: {
1871
- numDigits: "11",
1872
- example: "51 824 753 556"
1873
- }
1874
- }
1875
- },
1876
- [CountryCodes.Belgium]: ({ companyType }) => {
1877
- switch (companyType) {
1878
- case LegalEntityTypes.INDIVIDUAL:
1879
- return {
1880
- label: "taxInformationNumber__BE_Individual",
1881
- placeholder: "taxInformationNumber__placeHolder__BE_Individual",
1882
- validators: mapValidators([validatePatternOnBlur(/^\d{11}$/)], CountryCodes.Belgium),
1883
- mask: { mask: makeMask(...numericInputs(11)) },
1884
- guidanceText: {
1885
- key: "validationPleaseEnterAValidIdNumberWithExample",
1886
- values: {
1887
- example: "99999999999",
1888
- idType: "Numeró National"
1889
- }
1890
- }
1891
- };
1892
- default:
1893
- return {
1894
- label: "taxInformationNumber__BE",
1895
- placeholder: "taxInformationNumber__placeHolder__BE",
1896
- validators: mapValidators([validatePatternOnBlur(/^\d{10}$/)], CountryCodes.Belgium),
1897
- mask: { mask: makeMask(...numericInputs(10)) },
1898
- guidanceText: {
1899
- key: "validationPleaseEnterAValidIdNumberWithExample",
1900
- values: {
1901
- example: "0123321123",
1902
- idType: "Business nummer"
1903
- }
1904
- }
1905
- };
1906
- }
1907
- },
1908
- [CountryCodes.Canada]: {
1909
- label: "businessNumber",
1910
- validators: mapValidators([validatePatternOnBlur(/^\d{9}$/)], CountryCodes.Canada),
1911
- mask: { mask: makeMask(...numericInputs(9)) },
1912
- guidanceText: {
1913
- key: "enterNDigitsForExample",
1914
- values: {
1915
- numDigits: "9",
1916
- example: "123456789"
1917
- }
2061
+ {
2062
+ id: "nie",
2063
+ name: "nie"
1918
2064
  }
1919
- },
1920
- [CountryCodes.France]: {
1921
- label: "taxInformationNumber__FR",
1922
- placeholder: "taxInformationNumber__placeHolder__FR",
1923
- validators: mapValidators([validatePatternOnBlur(/^\s*(\d\s*){13}$/)], CountryCodes.France),
1924
- mask: {
1925
- mask: makeMask(
1926
- ...numericInputs(2),
1927
- spacer,
1928
- ...numericInputs(2),
1929
- spacer,
1930
- ...numericInputs(3),
1931
- spacer,
1932
- ...numericInputs(3),
1933
- spacer,
1934
- ...numericInputs(3)
1935
- )
2065
+ ]
2066
+ };
2067
+ const additionallIdNumberOptions = {
2068
+ [CountryCodes.NewZealand]: [
2069
+ {
2070
+ id: "driversLicense",
2071
+ name: "driversLicense"
1936
2072
  },
1937
- guidanceText: {
1938
- key: "validationPleaseEnterAValidIdNumberWithExample",
1939
- values: {
1940
- example: "30 23 217 600 053",
1941
- idType: "Numéro SPI"
1942
- }
2073
+ {
2074
+ id: "passport",
2075
+ name: "passportNumber"
1943
2076
  }
1944
- },
1945
- [CountryCodes.Germany]: ({ companyType }) => {
1946
- switch (companyType) {
1947
- case LegalEntityTypes.INDIVIDUAL:
1948
- return {
1949
- label: "taxInformationNumber__DE_Individual",
1950
- placeholder: "taxInformationNumber__placeHolder__DE_Individual",
1951
- validators: mapValidators([validatePatternOnBlur(/^\d{11}$/)], CountryCodes.Germany),
1952
- mask: { mask: makeMask(...numericInputs(11)) },
1953
- guidanceText: {
1954
- key: "validationPleaseEnterAValidIdNumberWithExample",
1955
- values: {
1956
- example: "26954371827",
1957
- idType: "IdNr"
1958
- }
1959
- }
1960
- };
1961
- default:
1962
- return {
1963
- label: "taxInformationNumber__DE",
1964
- placeholder: "taxInformationNumber__placeHolder__DE",
1965
- validators: mapValidators([validatePatternOnBlur(/^\d{10,11}$/)], CountryCodes.Germany),
1966
- mask: { mask: makeMask(...numericInputs(11)) },
1967
- guidanceText: {
1968
- key: "validationPleaseEnterAValidIdNumberWithExample",
1969
- values: {
1970
- example: "14310260208",
1971
- idType: "Steuernummer"
1972
- }
1973
- }
1974
- };
2077
+ ],
2078
+ [CountryCodes.HongKong]: [
2079
+ {
2080
+ id: "proofOfIdentityCard",
2081
+ name: "stateIssuedProofOfIdentityCard"
2082
+ },
2083
+ {
2084
+ id: "driversLicense",
2085
+ name: "driversLicense"
2086
+ },
2087
+ {
2088
+ id: "passport",
2089
+ name: "passportNumber"
1975
2090
  }
1976
- },
1977
- [CountryCodes.Gibraltar]: {
1978
- label: "taxpayerReferenceNumber",
1979
- validators: mapValidators([validatePatternOnBlur(/^\d{1,7}$/)], CountryCodes.Gibraltar),
1980
- mask: {
1981
- mask: makeMask(...numericInputs(1), ...numericInputs(6, true))
2091
+ ],
2092
+ [CountryCodes.Australia]: [
2093
+ {
2094
+ id: "driversLicense",
2095
+ name: "driversLicense"
1982
2096
  },
1983
- guidanceText: {
1984
- key: "enterAMaximumOfNDigitsForExample",
1985
- values: {
1986
- maxDigits: "7",
1987
- example: "123456"
1988
- }
2097
+ {
2098
+ id: "passport",
2099
+ name: "passportNumber"
1989
2100
  }
1990
- },
1991
- [CountryCodes.Guernsey]: ({ companyType }) => {
1992
- switch (companyType) {
1993
- case CompanyTypesValues.SOLE_PROPRIETORSHIP:
1994
- return {
1995
- label: "nationalInsuranceNumber",
1996
- validators: mapValidators(
1997
- [validatePatternOnBlur(/^GY\d{6}[A-D]$/)],
1998
- CountryCodes.Guernsey
1999
- ),
2000
- mask: {
2001
- mask: makeMask(
2002
- ...nonInputs("GY", { includeInValue: true }),
2003
- spacer,
2004
- ...numericInputs(2),
2005
- spacer,
2006
- ...numericInputs(2),
2007
- spacer,
2008
- ...numericInputs(2),
2009
- spacer,
2010
- {
2011
- type: "input",
2012
- allow: /[A-D]/
2013
- }
2014
- ),
2015
- transformOnType: uppercase
2016
- },
2017
- guidanceText: {
2018
- key: "enterTheRemainingNCharactersForExample",
2019
- values: {
2020
- numChars: "7",
2021
- example: "GY 12 34 56 A"
2022
- }
2023
- }
2024
- };
2025
- default:
2026
- return {
2027
- label: "taxInformationNumber",
2028
- mask: businessRegistrationNumberMasks[CountryCodes.Guernsey].default,
2029
- validators: mapValidators(
2030
- [
2031
- validatePatternOnBlur(
2032
- businessRegistrationNumberPatterns[CountryCodes.Guernsey].default
2033
- )
2034
- ],
2035
- CountryCodes.Guernsey
2036
- ),
2037
- guidanceText: {
2038
- key: "enterAMaximumOfNDigitsForExample",
2039
- values: {
2040
- maxDigits: "9",
2041
- example: "123456"
2042
- }
2043
- }
2044
- };
2101
+ ]
2102
+ };
2103
+ const taxIdNumberOptions = {
2104
+ [CountryCodes.Australia]: [
2105
+ {
2106
+ id: "ABN",
2107
+ name: "australianBusinessNumberAbn"
2108
+ }
2109
+ ],
2110
+ [CountryCodes.Belgium]: [
2111
+ {
2112
+ id: "BUSINESS_NUMMER",
2113
+ name: "businessNumber",
2114
+ applicableOnlyFor: [
2115
+ CompanyTypesValues.SOLE_PROPRIETORSHIP,
2116
+ CompanyTypesValues.PRIVATE_COMPANY,
2117
+ CompanyTypesValues.GOVERNMENTAL_ORGANIZATION,
2118
+ CompanyTypesValues.INCORPORATED_ASSOCIATION,
2119
+ CompanyTypesValues.INCORPORATED_PARTNERSHIP,
2120
+ CompanyTypesValues.NON_PROFIT_OR_CHARITABLE,
2121
+ CompanyTypesValues.UNINCORPORATED_PARTNERSHIP,
2122
+ CompanyTypesValues.UNLISTED_PUBLIC_COMPANY
2123
+ ]
2124
+ },
2125
+ {
2126
+ id: "NUMERO_NATIONAL",
2127
+ name: "taxInformationNumber__BE_Individual",
2128
+ applicableOnlyFor: [LegalEntityTypes.INDIVIDUAL]
2045
2129
  }
2046
- },
2047
- [CountryCodes.HongKong]: {
2048
- label: "taxInformationNumber__HK",
2049
- validators: mapValidators([validatePatternOnBlur(/^\d{8}$/)], CountryCodes.HongKong),
2050
- mask: { mask: makeMask(...numericInputs(8)) },
2051
- guidanceText: {
2052
- key: "enterNDigitsForExample",
2053
- values: {
2054
- numDigits: "8",
2055
- example: "70569713"
2056
- }
2130
+ ],
2131
+ [CountryCodes.Brazil]: [{ id: "CNPJ", name: "CNPJ" }],
2132
+ [CountryCodes.Canada]: [{ id: "BUSINESS_NUMBER", name: "businessNumber" }],
2133
+ [CountryCodes.Germany]: [
2134
+ {
2135
+ id: "STEUERNUMMER",
2136
+ name: "taxInformationNumber__DE",
2137
+ applicableOnlyFor: [
2138
+ CompanyTypesValues.SOLE_PROPRIETORSHIP,
2139
+ CompanyTypesValues.PRIVATE_COMPANY,
2140
+ CompanyTypesValues.GOVERNMENTAL_ORGANIZATION,
2141
+ CompanyTypesValues.INCORPORATED_ASSOCIATION,
2142
+ CompanyTypesValues.INCORPORATED_PARTNERSHIP,
2143
+ CompanyTypesValues.NON_PROFIT_OR_CHARITABLE,
2144
+ CompanyTypesValues.UNINCORPORATED_PARTNERSHIP,
2145
+ CompanyTypesValues.UNLISTED_PUBLIC_COMPANY
2146
+ ]
2147
+ },
2148
+ {
2149
+ id: "IDNR",
2150
+ name: "taxInformationNumber__DE_Individual",
2151
+ applicableOnlyFor: [LegalEntityTypes.INDIVIDUAL]
2057
2152
  }
2058
- },
2059
- [CountryCodes.Jersey]: ({ taxIdNumberType, companyType }) => {
2060
- switch (taxIdNumberType) {
2061
- case "SSN":
2062
- return {
2063
- label: "socialSecurityNumber",
2064
- validators: mapValidators(
2065
- [validatePatternOnBlur(/^[A-Z]{2}\d{6}[A-Z]$/)],
2066
- CountryCodes.Jersey
2067
- ),
2068
- mask: {
2069
- mask: makeMask(...alphaInputs(2), ...numericInputs(6), ...alphaInputs(1)),
2070
- transformOnType: uppercase
2071
- },
2072
- guidanceText: {
2073
- key: "enterNCharactersForExample",
2074
- values: {
2075
- numChars: "9",
2076
- example: "JY000000A"
2077
- }
2078
- }
2079
- };
2080
- case "TIN_JE":
2081
- default:
2082
- switch (companyType) {
2083
- case CompanyTypesValues.SOLE_PROPRIETORSHIP:
2084
- return {
2085
- label: "taxIdentificationNumber",
2086
- validators: mapValidators([validatePatternOnBlur(/^\d{10}$/)], CountryCodes.Jersey),
2087
- mask: {
2088
- mask: makeMask(
2089
- ...numericInputs(3),
2090
- ...nonInputs(" - "),
2091
- ...numericInputs(3),
2092
- ...nonInputs(" - "),
2093
- ...numericInputs(4)
2094
- )
2095
- },
2096
- guidanceText: {
2097
- key: "enterNDigitsForExample",
2098
- values: {
2099
- numDigits: "10",
2100
- example: "100-100-1000"
2101
- }
2102
- }
2103
- };
2104
- default:
2105
- return {
2106
- label: "taxIdentificationNumber",
2107
- validators: mapValidators(
2108
- [validatePatternOnBlur(/^[A-Z]{2}\d{5}$/)],
2109
- CountryCodes.Jersey
2110
- ),
2111
- mask: {
2112
- mask: makeMask(...alphaInputs(2), ...numericInputs(5)),
2113
- transformOnType: uppercase
2114
- },
2115
- guidanceText: {
2116
- key: "enterNCharactersForExample",
2117
- values: {
2118
- numChars: "7",
2119
- example: "CC17261"
2120
- }
2121
- }
2122
- };
2123
- }
2153
+ ],
2154
+ [CountryCodes.Gibraltar]: [
2155
+ { id: "GI_TAXPAYER_REFERENCE_NUMBER", name: "taxpayerReferenceNumber" }
2156
+ ],
2157
+ [CountryCodes.Guernsey]: [
2158
+ { id: "GG_REGISTRATION_NUMBER", name: "taxInformationNumber" },
2159
+ {
2160
+ id: "TIN_GG",
2161
+ name: "nationalInsuranceNumber",
2162
+ applicableOnlyFor: [CompanyTypesValues.SOLE_PROPRIETORSHIP]
2124
2163
  }
2125
- },
2126
- [CountryCodes.Ireland]: {
2127
- label: "trnNumber",
2128
- validators: mapValidators(
2129
- [validatePatternOnBlur(/^(\d{7})([a-zA-Z])([a-zA-Z]?)$/)],
2130
- CountryCodes.Ireland
2131
- ),
2132
- mask: {
2133
- mask: makeMask(...numericInputs(7), ...alphaInputs(1), ...alphaInputs(1, true))
2164
+ ],
2165
+ [CountryCodes.HongKong]: [
2166
+ {
2167
+ id: "BRN",
2168
+ name: "taxInformationNumber__HK"
2169
+ }
2170
+ ],
2171
+ [CountryCodes.Ireland]: [
2172
+ {
2173
+ id: "TRN",
2174
+ name: "trnNumber",
2175
+ applicableOnlyFor: [CompanyTypesValues.UNINCORPORATED_PARTNERSHIP]
2176
+ }
2177
+ ],
2178
+ [CountryCodes.IsleOfMan]: [{ id: "IM_TAX_REFERENCE_NUMBER", name: "taxReferenceNumber" }],
2179
+ [CountryCodes.Japan]: [{ id: "CORPORATE_NUMBER", name: "taxInformationNumber" }],
2180
+ [CountryCodes.Jersey]: [
2181
+ {
2182
+ id: "TIN_JE",
2183
+ name: "taxIdentificationNumber"
2134
2184
  },
2135
- guidanceText: {
2136
- key: "enterXDigitsThenXToYLettersForExample",
2137
- values: {
2138
- numDigits: "7",
2139
- minLetters: "1",
2140
- maxLetters: "2",
2141
- example: "1497955KA"
2142
- }
2185
+ {
2186
+ id: "SSN",
2187
+ name: "socialSecurityNumber",
2188
+ applicableOnlyFor: [CompanyTypesValues.SOLE_PROPRIETORSHIP]
2143
2189
  }
2144
- },
2145
- [CountryCodes.IsleOfMan]: {
2146
- label: "taxReferenceNumber",
2147
- validators: mapValidators([validatePatternOnBlur(/^[HCX]\d{8}$/)], CountryCodes.IsleOfMan),
2148
- mask: {
2149
- mask: makeMask(
2150
- {
2151
- type: "input",
2152
- allow: /[HCX]/
2153
- },
2154
- ...numericInputs(6),
2155
- ...nonInputs(" - "),
2156
- ...numericInputs(2)
2157
- ),
2158
- transformOnType: uppercase
2190
+ ],
2191
+ [CountryCodes.Netherlands]: [
2192
+ {
2193
+ id: "RSIN",
2194
+ name: "rsinNumber",
2195
+ applicableOnlyFor: [
2196
+ CompanyTypesValues.PRIVATE_COMPANY,
2197
+ CompanyTypesValues.GOVERNMENTAL_ORGANIZATION,
2198
+ CompanyTypesValues.INCORPORATED_ASSOCIATION,
2199
+ CompanyTypesValues.INCORPORATED_PARTNERSHIP,
2200
+ CompanyTypesValues.NON_PROFIT_OR_CHARITABLE,
2201
+ CompanyTypesValues.UNINCORPORATED_PARTNERSHIP,
2202
+ CompanyTypesValues.UNLISTED_PUBLIC_COMPANY
2203
+ ]
2159
2204
  },
2160
- guidanceText: {
2161
- key: "enterNCharactersForExample",
2162
- values: {
2163
- numChars: "9",
2164
- example: "C155673-79"
2165
- }
2205
+ {
2206
+ id: "BSN",
2207
+ name: "bsnNumber",
2208
+ applicableOnlyFor: [LegalEntityTypes.INDIVIDUAL]
2166
2209
  }
2167
- },
2168
- [CountryCodes.Netherlands]: ({ companyType }) => {
2169
- switch (companyType) {
2170
- case LegalEntityTypes.INDIVIDUAL:
2171
- return {
2172
- label: "bsnNumber",
2173
- placeholder: "taxInformationNumber__placeHolder__NL",
2174
- validators: mapValidators([validatePatternOnBlur(/^\d{9}$/)], CountryCodes.Netherlands),
2175
- mask: { mask: makeMask(...numericInputs(9)) },
2176
- guidanceText: {
2177
- key: "validationPleaseEnterAValidIdNumberWithExample",
2178
- values: {
2179
- example: "999999999",
2180
- idType: "BSN"
2181
- }
2182
- }
2183
- };
2184
- default:
2185
- return {
2186
- label: "rsinNumber",
2187
- placeholder: "taxInformationNumber__placeHolder__NL",
2188
- validators: mapValidators([validatePatternOnBlur(/^\d{9}$/)], CountryCodes.Netherlands),
2189
- mask: { mask: makeMask(...numericInputs(9)) },
2190
- guidanceText: {
2191
- key: "validationPleaseEnterAValidIdNumberWithExample",
2192
- values: {
2193
- example: "811786523",
2194
- idType: "RSIN"
2195
- }
2196
- }
2197
- };
2210
+ ],
2211
+ [CountryCodes.NewZealand]: [
2212
+ {
2213
+ id: "IRD",
2214
+ name: "irdNumber"
2215
+ }
2216
+ ],
2217
+ [CountryCodes.PuertoRico]: [
2218
+ {
2219
+ id: "EIN",
2220
+ name: "ein"
2221
+ }
2222
+ ],
2223
+ [CountryCodes.Singapore]: [
2224
+ {
2225
+ id: "GST",
2226
+ name: "gst"
2227
+ },
2228
+ {
2229
+ id: "UEN",
2230
+ name: "uen"
2198
2231
  }
2199
- },
2200
- [CountryCodes.NewZealand]: {
2201
- label: "irdNumber",
2202
- validators: mapValidators([validatePatternOnBlur(/^\d{8,9}$/)], CountryCodes.NewZealand),
2203
- mask: {
2204
- mask: makeMask(...numericInputs(8), ...numericInputs(1, true))
2232
+ ],
2233
+ [CountryCodes.Spain]: [
2234
+ {
2235
+ id: "dni",
2236
+ name: "dni",
2237
+ applicableOnlyFor: [LegalEntityTypes.INDIVIDUAL]
2205
2238
  },
2206
- guidanceText: {
2207
- key: "enterXToYDigitsForExample",
2208
- values: {
2209
- minDigits: "8",
2210
- maxDigits: "9",
2211
- example: "12345678"
2212
- }
2239
+ {
2240
+ id: "nie",
2241
+ name: "nie",
2242
+ applicableOnlyFor: [LegalEntityTypes.INDIVIDUAL]
2213
2243
  }
2214
- },
2215
- // Special case for SG in which we also save the registration number as the TaxID if that selection has been made
2216
- [CountryCodes.Singapore]: {
2217
- label: "gst",
2218
- validators: mapValidators([validatePatternOnBlur(/^[A-Z0-9]{9,10}$/)], CountryCodes.Singapore),
2219
- mask: {
2220
- mask: makeMask(
2221
- ...alphanumericInputs(2),
2222
- ...nonInputs(" - "),
2223
- ...alphanumericInputs(7),
2224
- ...nonInputs(" - "),
2225
- ...alphanumericInputs(1)
2226
- ),
2227
- transformOnType: uppercase
2244
+ ],
2245
+ [CountryCodes.UnitedKingdom]: [
2246
+ {
2247
+ id: "UTR",
2248
+ name: "utr"
2228
2249
  },
2229
- guidanceText: {
2230
- key: "enterNCharactersForExample",
2231
- values: {
2232
- numChars: "10",
2233
- example: "M212345678"
2234
- }
2250
+ {
2251
+ id: "NINO",
2252
+ name: "nationalInsuranceNumber",
2253
+ applicableOnlyFor: [LegalEntityTypes.INDIVIDUAL]
2235
2254
  }
2236
- },
2237
- [CountryCodes.PuertoRico]: {
2238
- // should exactly match CountryCodes.UnitedStates
2239
- label: "taxInformationNumber__US",
2240
- helperText: "taxInformationNumber__helperText__US",
2241
- placeholder: "taxInformationNumber__placeHolder__US",
2242
- validators: mapValidators([validatePatternOnBlur(/^\d{9}$/)], CountryCodes.PuertoRico),
2243
- mask: {
2244
- mask: makeMask(...numericInputs(2), ...nonInputs(" - "), ...numericInputs(7))
2255
+ ],
2256
+ [CountryCodes.UnitedStates]: [
2257
+ {
2258
+ id: "EIN",
2259
+ name: "ein"
2260
+ }
2261
+ ]
2262
+ };
2263
+ const vatNumberOptions = {
2264
+ [CountryCodes.Austria]: [{ id: "UST-ID", name: "UST-ID" }],
2265
+ [CountryCodes.Belgium]: [{ id: "euVatNumber", name: "euVatNumber" }],
2266
+ [CountryCodes.Bulgaria]: [{ id: "identifikacionenNomerDDS", name: "identifikacionenNomerDDS" }],
2267
+ [CountryCodes.Croatia]: [{ id: "PDVIdBrojOIB", name: "PDVIdBrojOIB" }],
2268
+ [CountryCodes.Cyprus]: [{ id: "arithmosEngraphes", name: "arithmosEngraphes" }],
2269
+ [CountryCodes.CzechRepublic]: [{ id: "DIC", name: "DIC" }],
2270
+ [CountryCodes.Denmark]: [
2271
+ {
2272
+ id: "momsregistreringsnummerCVR",
2273
+ name: "momsregistreringsnummerCVR"
2245
2274
  },
2246
- guidanceText: {
2247
- key: "validationPleaseEnterAValidEINWithFormat",
2248
- values: {
2249
- format: "XX-XXXXXXX",
2250
- example: "98-7654321"
2251
- }
2275
+ {
2276
+ id: "stamregister",
2277
+ name: "stamregister"
2252
2278
  }
2253
- },
2254
- [CountryCodes.UnitedKingdom]: ({ taxIdNumberType, companyType }) => {
2255
- switch (companyType) {
2256
- case LegalEntityTypes.INDIVIDUAL:
2257
- switch (taxIdNumberType) {
2258
- case "NINO":
2259
- return {
2260
- label: "nationalInsuranceNumber",
2261
- placeholder: "taxInformationNumber__placeHolder__GB",
2262
- validators: mapValidators(
2263
- [validatePatternOnBlur(/^[A-Z]{2}\d{6}[A-D]$/)],
2264
- CountryCodes.UnitedKingdom
2265
- ),
2266
- guidanceText: {
2267
- key: "validationPleaseEnterAValidIdNumberWithExample",
2268
- values: {
2269
- example: "AA123456C",
2270
- idType: "NINO"
2271
- }
2272
- }
2273
- };
2274
- default:
2275
- return {
2276
- label: "utr",
2277
- placeholder: "taxInformationNumber__placeHolder__GB",
2278
- validators: mapValidators(
2279
- [validatePatternOnBlur(/^\d{10}$/)],
2280
- CountryCodes.UnitedKingdom
2281
- ),
2282
- mask: { mask: makeMask(...numericInputs(10)) },
2283
- guidanceText: {
2284
- key: "validationPleaseEnterAValidIdNumberWithExample",
2285
- values: {
2286
- example: "6669863459",
2287
- idType: "UTR"
2288
- }
2289
- }
2290
- };
2291
- }
2292
- default:
2293
- return {
2294
- label: "utr",
2295
- placeholder: "taxInformationNumber__placeHolder__GB",
2296
- validators: mapValidators(
2297
- [validatePatternOnBlur(/^\d{10}$/)],
2298
- CountryCodes.UnitedKingdom
2299
- ),
2300
- mask: { mask: makeMask(...numericInputs(10)) },
2301
- guidanceText: {
2302
- key: "validationPleaseEnterAValidIdNumberWithExample",
2303
- values: {
2304
- example: "6669863459",
2305
- idType: "UTR"
2306
- }
2307
- }
2308
- };
2279
+ ],
2280
+ [CountryCodes.Estonia]: [
2281
+ { id: "kaibemaksukohustuslaseNumber", name: "kaibemaksukohustuslaseNumber" }
2282
+ ],
2283
+ [CountryCodes.Finland]: [
2284
+ {
2285
+ id: "arvonlisaveronumeroMervardesskattenummer",
2286
+ name: "arvonlisaveronumeroMervardesskattenummer"
2309
2287
  }
2310
- },
2311
- [CountryCodes.UnitedStates]: {
2312
- label: "taxInformationNumber__US",
2313
- helperText: "taxInformationNumber__helperText__US",
2314
- placeholder: "taxInformationNumber__placeHolder__US",
2315
- validators: mapValidators(
2316
- [validateNotEmptyOnBlur, validatePatternOnBlur(/^\d{9}$/)],
2317
- CountryCodes.UnitedStates
2318
- ),
2319
- mask: {
2320
- mask: makeMask(...numericInputs(2), ...nonInputs(" - "), ...numericInputs(7))
2288
+ ],
2289
+ [CountryCodes.France]: [
2290
+ {
2291
+ id: "numeroDIdentificationALATaxe",
2292
+ name: "numeroDIdentificationALATaxe"
2321
2293
  },
2322
- guidanceText: {
2323
- key: "validationPleaseEnterAValidEINWithFormat",
2324
- values: {
2325
- format: "XX-XXXXXXX",
2326
- example: "98-7654321"
2327
- }
2294
+ {
2295
+ id: "NumeroDeTVA",
2296
+ name: "NumeroDeTVA"
2328
2297
  }
2329
- },
2330
- /**
2331
- * NOT YET SUPPORTED
2332
- * These are brought over from the old pattern files. We have no idea if they are accurate or not.
2333
- * See https://en.wikipedia.org/wiki/VAT_identification_number
2334
- */
2335
- [CountryCodes.India]: {
2336
- validators: mapValidators([validatePatternOnBlur(/^[A-Z0-9]{15}$/)], CountryCodes.India)
2337
- },
2338
- [CountryCodes.Japan]: {
2339
- label: "taxInformationNumber__JP",
2340
- validators: mapValidators([validatePatternOnBlur(/^\d{13}$/)], CountryCodes.Japan)
2341
- },
2342
- [CountryCodes.Philippines]: {
2343
- validators: mapValidators([validatePatternOnBlur(/^\d{12}$/)], CountryCodes.Philippines)
2344
- }
2298
+ ],
2299
+ [CountryCodes.Germany]: [{ id: "USt-IdNr", name: "USt-IdNr" }],
2300
+ [CountryCodes.Greece]: [{ id: "grTaxId", name: "grTaxId" }],
2301
+ [CountryCodes.Hungary]: [{ id: "huTaxId", name: "huTaxId" }],
2302
+ [CountryCodes.Ireland]: [{ id: "vatNumber", name: "vatNumber" }],
2303
+ [CountryCodes.Italy]: [{ id: "partitaIVA", name: "partitaIVA" }],
2304
+ [CountryCodes.Latvia]: [{ id: "lvTaxId", name: "lvTaxId" }],
2305
+ [CountryCodes.Liechtenstein]: [{ id: "vatRegistrationNumber", name: "vatRegistrationNumber" }],
2306
+ [CountryCodes.Lithuania]: [{ id: "PVMmoketojoKodas", name: "PVMmoketojoKodas" }],
2307
+ [CountryCodes.Luxembourg]: [
2308
+ { id: "numeroDIdentificationALATaxe", name: "numeroDIdentificationALATaxe" }
2309
+ ],
2310
+ [CountryCodes.Malaysia]: [{ id: "SST", name: "SST" }],
2311
+ [CountryCodes.Malta]: [{ id: "vatNumber", name: "vatNumber" }],
2312
+ [CountryCodes.Monaco]: [
2313
+ { id: "numeroDIdentificationALATaxe", name: "numeroDIdentificationALATaxe" }
2314
+ ],
2315
+ [CountryCodes.Netherlands]: [{ id: "btwNummer", name: "btwNummer" }],
2316
+ [CountryCodes.Norway]: [{ id: "mvanummer", name: "mvanummer" }],
2317
+ [CountryCodes.Poland]: [{ id: "NIP", name: "NIP" }],
2318
+ [CountryCodes.Portugal]: [{ id: "numerodeIVA", name: "numerodeIVA" }],
2319
+ [CountryCodes.Romania]: [
2320
+ { id: "codulDeIdentificareFiscala", name: "codulDeIdentificareFiscala" }
2321
+ ],
2322
+ [CountryCodes.Slovakia]: [{ id: "skTaxId", name: "skTaxId" }],
2323
+ [CountryCodes.Slovenia]: [{ id: "siTaxId", name: "siTaxId" }],
2324
+ [CountryCodes.Spain]: [{ id: "NIFdeIVA", name: "NIFdeIVA" }],
2325
+ [CountryCodes.Sweden]: [
2326
+ {
2327
+ id: "vatNummerMomsregistreringsnummerOrMomsnummer",
2328
+ name: "vatNummerMomsregistreringsnummerOrMomsnummer"
2329
+ }
2330
+ ],
2331
+ [CountryCodes.Switzerland]: [{ id: "Mehrwertsteuernummer", name: "Mehrwertsteuernummer" }],
2332
+ [CountryCodes.UnitedArabEmirates]: [
2333
+ { id: "vatRegistrationNumber", name: "vatRegistrationNumber" }
2334
+ ],
2335
+ [CountryCodes.UnitedKingdom]: [{ id: "vatRegistrationNumber", name: "vatRegistrationNumber" }]
2345
2336
  };
2346
- const exemptedFromTaxDefaultFieldConfig = {
2347
- [CountryCodes.Australia]: {
2348
- label: "doNotHaveAbn"
2349
- }
2337
+ const getTaxIdNumberOptions = (country, companyType) => {
2338
+ const optionsForCountry = taxIdNumberOptions[country];
2339
+ if (!companyType || !optionsForCountry) return optionsForCountry;
2340
+ return optionsForCountry.filter(
2341
+ (option) => option.applicableOnlyFor?.includes(companyType) ?? true
2342
+ );
2343
+ };
2344
+ const getVatNumberOptions = (country, companyType) => {
2345
+ const optionsForCountry = vatNumberOptions[country];
2346
+ if (!companyType || !optionsForCountry) return optionsForCountry;
2347
+ return optionsForCountry.filter(
2348
+ (option) => option.applicableOnlyFor?.includes(companyType) ?? true
2349
+ );
2350
2350
  };
2351
2351
  const countryToTaxInfoTypeMap = {
2352
2352
  US: "EIN",
@@ -2480,6 +2480,9 @@ const TAX_ID_REQUIRED_COUNTRIES_ORGANIZATION = [
2480
2480
  CountryCodes.Germany,
2481
2481
  CountryCodes.Belgium
2482
2482
  ];
2483
+ function isUsingCompanySearch(country, taskType) {
2484
+ return taskType === TaskTypes.BUSINESS_DETAILS && COUNTRIES_USING_COMPANY_SEARCH.includes(country);
2485
+ }
2483
2486
  const isRegistrationNumberAbsentStateV4Scenario = (country, entityType) => {
2484
2487
  return country === CountryCodes.Australia && (entityType === CompanyTypesValues.GOVERNMENTAL_ORGANIZATION || entityType === CompanyTypesValues.INCORPORATED_PARTNERSHIP) || country === CountryCodes.NewZealand;
2485
2488
  };
@@ -2547,7 +2550,7 @@ const rules = ({
2547
2550
  const isExemptFromTax = Boolean(
2548
2551
  data.basicInformation?.exemptedFromTax ?? data.additionalInformation?.exemptedFromTax
2549
2552
  );
2550
- if (isExperimentEnabled("EnableTaxIdRequiredForBusinessAccountsScenarios") && TAX_ID_REQUIRED_COUNTRIES_ORGANIZATION.includes(country) && rootLegalEntity?.type === "organization" && // SOE-5931 - TODO: investigate L scenario returned to show this on the backend
2553
+ if (TAX_ID_REQUIRED_COUNTRIES_ORGANIZATION.includes(country) && rootLegalEntity?.type === "organization" && // SOE-5931 - TODO: investigate L scenario returned to show this on the backend
2551
2554
  keysOf(rootLegalEntity?.capabilities ?? {}).includes("issueBankAccount")) {
2552
2555
  return isExemptFromTax ? "OPTIONAL" : "REQUIRED";
2553
2556
  }
@@ -2660,12 +2663,8 @@ const rules = ({
2660
2663
  }
2661
2664
  }
2662
2665
  },
2663
- // TODO: This should be renamed due to the additional conditionals
2664
- countryUsingCompanySearch: () => {
2665
- if (taskType === TaskTypes.SOLE_PROPRIETOR_COMPANY || taskType === TaskTypes.TRUST_MEMBER_COMPANY || taskType === TaskTypes.UNINCORPORATED_PARTNERSHIP_MEMBER_COMPANY) {
2666
- return;
2667
- }
2668
- if (COUNTRIES_USING_COMPANY_SEARCH.includes(country)) {
2666
+ usingCompanySearch: () => {
2667
+ if (isUsingCompanySearch(country, taskType)) {
2669
2668
  return "REQUIRED";
2670
2669
  }
2671
2670
  },
@@ -2725,11 +2724,6 @@ const rules = ({
2725
2724
  if (isCompatibleJapanVersion(country, version)) {
2726
2725
  return "REQUIRED";
2727
2726
  }
2728
- },
2729
- requireBusinessSelection: () => {
2730
- if (taskType !== TaskTypes.SOLE_PROPRIETOR_COMPANY && taskType !== TaskTypes.UNINCORPORATED_PARTNERSHIP_MEMBER_COMPANY && taskType !== TaskTypes.TRUST_MEMBER_COMPANY && COUNTRIES_USING_COMPANY_SEARCH.includes(country)) {
2731
- return "REQUIRED";
2732
- }
2733
2727
  }
2734
2728
  });
2735
2729
  };
@@ -3109,11 +3103,11 @@ export {
3109
3103
  MemoizedDocumentUpload as M,
3110
3104
  StateCodesUS as S,
3111
3105
  TaxInformationField as T,
3112
- additionallIdNumberOptions as a,
3113
- taxInformationDefaultFieldConfig as b,
3106
+ taxInformationDefaultFieldConfig as a,
3107
+ additionallIdNumberOptions as b,
3114
3108
  TAX_INFORMATION_FIELD as c,
3115
3109
  requestingIssuing as d,
3116
- COUNTRIES_USING_COMPANY_SEARCH as e,
3110
+ isUsingCompanySearch as e,
3117
3111
  isRegistrationNumberAbsentStateV4Scenario as f,
3118
3112
  getFieldsWithExistingData as g,
3119
3113
  COUNTRIES_THAT_USE_TAX_ID_INSTEAD_OF_VAT as h,