UNPKG

@adyen/kyc-components

Version:

This guide assumes that you have already an account with Adyen. A legalEntity needs to be created, and you need to have a `legalEntityId` to instatiate a Component.

1,539 lines (1,538 loc) 102 kB
try { let e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack; n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "5dc2480f-f1a9-4605-9f81-a62ec3db13e9", e._sentryDebugIdIdentifier = "sentry-dbid-5dc2480f-f1a9-4605-9f81-a62ec3db13e9"); } catch (e) {} import { a as Icon, r as useTranslation } from "./translation-BFxyJ1c5.js"; import { t as LegalEntityTypes } from "./legal-entity-type-VIfNYnJP.js"; import { t as useAccountHolder } from "./useAccountHolder-ClppK4-L.js"; import { c as objectsDeepEqual, d as keysOf } from "./useAnalyticsContext-BVFDMrVE.js"; import { t as useToggleContext } from "./useToggleContext-DaQUBF8O.js"; import { a as translateTranslatable } from "./utils-B807QaDx.js"; import { t as Header } from "./Header-CPmJyuoP.js"; import { t as CountryCodes } from "./country-code-CX5KqMBr.js"; import { p as TaskTypes } from "./entityAssociationUtil-BEzUdPbm.js"; import { t as getNestedPropertyKeys } from "./getNestedPropertyKeys-CVAsNBJ8.js"; import { t as SettingNames } from "./types-CNZsK2dZ.js"; import { t as CompanyTypesValues } from "./company-types-value-BYTAKfjo.js"; import { t as Image } from "./Image-BEzOZ1tt.js"; import { s as isDateOlderThanAYear } from "./Address-D5EL-3iQ.js"; import { t as ErrorPanel } from "./ErrorPanel-B536hgSc.js"; import { t as createFormUtils } from "./formUtils-DCvL3uZG.js"; import { i as uppercase } from "./mapExistingFile-wp3Nf1-m.js"; import { a as alphanumericInputs, c as nonInputs, i as alphaInputs, l as numericInputs, o as customInputs, s as makeMask, t as MaskedInput, u as spacer } from "./MaskedInput-BFPSwRto.js"; import { c as COUNTRIES_WITH_STATES_DATASET } from "./utils-CfTVU2Hq.js"; import { a as StateContextSetter } from "./validate-DDKy88ac.js"; import { t as isJapanLocalizationEnabled } from "./japanSupportUtils-DcDqwV81.js"; import { a as validateNotEmptyOnBlur, o as validatePatternOnBlur } from "./patternValidators-BaQxw3ki.js"; import { t as resolveFieldMetadata } from "./fieldConfigurations-m7oWP1DZ.js"; import { t as Field } from "./Field-pcJkjIG_.js"; import { t as Select } from "./Select-CcSRI-H0.js"; import { t as Checkbox } from "./Checkbox-BCYjFPa4.js"; import { t as TextArea } from "./TextArea-CRLeP4x6.js"; import { t as useForm } from "./useForm-pUkvCLc9.js"; import { t as Dropzone } from "./Dropzone-68UX-Puq.js"; import { t as RadioGroup } from "./RadioGroup-7g7Xv9rl.js"; import { t as createFormRules } from "./form-rules-ZiRm6ke_.js"; import { lazy, memo } from "preact/compat"; import { useCallback as useCallback$1, useEffect as useEffect$1, useMemo as useMemo$1, useRef as useRef$1, useState as useState$1 } from "preact/hooks"; import cx from "classnames"; import { Fragment as Fragment$1, jsx, jsxs } from "preact/jsx-runtime"; //#region src/utils/getFieldsWithExistingData.ts var getFieldsWithExistingData = (legalEntity, keyMapping, documentMapping, knownProblematicFields = []) => { const nonDocumentFields = getNestedPropertyKeys(legalEntity).map((field) => keyMapping[field]).filter(Boolean).filter((field) => !knownProblematicFields.includes(field)); if (documentMapping && legalEntity.documentDetails?.length) { const documentFields = legalEntity.documentDetails.map((document) => documentMapping[document.type]).filter(Boolean); return [...nonDocumentFields, ...documentFields]; } return nonDocumentFields; }; //#endregion //#region src/types/datasets/state-code.ts var StateCodesUS = { Alabama: "AL", Alaska: "AK", Arizona: "AZ", Arkansas: "AR", California: "CA", Colorado: "CO", Connecticut: "CT", Delaware: "DE", DistrictOfColumbia: "DC", Florida: "FL", Georgia: "GA", Hawaii: "HI", Idaho: "ID", Illinois: "IL", Indiana: "IN", Iowa: "IA", Kansas: "KS", Kentucky: "KY", Louisiana: "LA", Maine: "ME", Maryland: "MD", Massachusetts: "MA", Michigan: "MI", Minnesota: "MN", Mississippi: "MS", Missouri: "MO", Montana: "MT", Nebraska: "NE", Nevada: "NV", NewHampshire: "NH", NewJersey: "NJ", NewMexico: "NM", NewYork: "NY", NorthCarolina: "NC", NorthDakota: "ND", Ohio: "OH", Oklahoma: "OK", Oregon: "OR", Pennsylvania: "PA", RhodeIsland: "RI", SouthCarolina: "SC", SouthDakota: "SD", Tennessee: "TN", Texas: "TX", Utah: "UT", Vermont: "VT", Virginia: "VA", Washington: "WA", WestVirginia: "WV", Wisconsin: "WI", Wyoming: "WY" }; //#endregion //#region src/utils/masking/masks/businessRegistrationNumberMasks.ts var businessRegistrationNumberMasks = { [CountryCodes.Austria]: { firmenbuchnummer: { mask: makeMask({ type: "input", allow: /[TF]/ }, { type: "input", allow: /N/, optional: true }, ...numericInputs(3), ...numericInputs(3, true), { type: "input", allow: /[a-z]/ }) }, ZVR: { mask: makeMask(...nonInputs("AT", { includeInValue: true }), spacer, ...nonInputs("-", { includeInValue: true }), spacer, ...nonInputs("ZVR", { includeInValue: true }), spacer, ...nonInputs("-", { includeInValue: true }), spacer, ...numericInputs(9), ...numericInputs(1, true)) } }, [CountryCodes.Australia]: { default: { mask: makeMask(...numericInputs(3), spacer, ...numericInputs(3), spacer, ...numericInputs(3)) }, associationIncorporated: { mask: makeMask(...alphanumericInputs(3), ...alphanumericInputs(20, true)), transformOnType: uppercase } }, [CountryCodes.Belgium]: { default: { mask: makeMask(...numericInputs(10)) } }, [CountryCodes.Brazil]: { default: { mask: makeMask(...numericInputs(2), ...nonInputs(" . "), ...numericInputs(3), ...nonInputs(" . "), ...numericInputs(3), ...nonInputs(" / "), ...numericInputs(4), ...nonInputs(" - "), ...numericInputs(2)) } }, [CountryCodes.Bulgaria]: { default: { mask: makeMask(...numericInputs(9)) } }, [CountryCodes.Canada]: { default: { mask: makeMask(...alphanumericInputs(5), ...alphanumericInputs(5, true)), transformOnType: uppercase } }, [CountryCodes.Croatia]: { default: { mask: makeMask(...numericInputs(9)) }, [CompanyTypesValues.SOLE_PROPRIETORSHIP]: { mask: makeMask(...numericInputs(8)) } }, [CountryCodes.Cyprus]: { default: { mask: makeMask(...customInputs(1, /^[COP]$/), ...numericInputs(1), ...numericInputs(7, true)), transformOnType: uppercase } }, [CountryCodes.CzechRepublic]: { default: { mask: makeMask(...numericInputs(8), ...numericInputs(2, true)) } }, [CountryCodes.Denmark]: { default: { mask: makeMask(...numericInputs(8)) } }, [CountryCodes.Estonia]: { default: { mask: makeMask(...numericInputs(8)) } }, [CountryCodes.Finland]: { default: { mask: makeMask(...numericInputs(7), spacer, ...nonInputs("-", { includeInValue: true }), spacer, ...numericInputs(1)) } }, [CountryCodes.France]: { SIRET: { mask: makeMask(...numericInputs(9), ...nonInputs(" - "), ...numericInputs(5)) }, RNA: { mask: makeMask(...nonInputs("W", { includeInValue: true }), ...numericInputs(1), ...alphanumericInputs(1), ...numericInputs(7)) } }, [CountryCodes.Germany]: { default: { mask: makeMask(...alphanumericInputs(3), ...customInputs(17, /[A-Z0-9-]/, true)), transformOnType: uppercase } }, [CountryCodes.Gibraltar]: { default: { mask: makeMask(...alphanumericInputs(1), ...alphanumericInputs(7, true)), transformOnType: uppercase } }, [CountryCodes.Greece]: { default: { mask: makeMask(...numericInputs(12)) } }, [CountryCodes.Guernsey]: { default: { mask: makeMask(...numericInputs(1), ...numericInputs(8, true)) } }, [CountryCodes.HongKong]: { default: { mask: makeMask(...numericInputs(7)) } }, [CountryCodes.Hungary]: { default: { mask: makeMask(...numericInputs(2), ...nonInputs(" - "), ...numericInputs(2), ...nonInputs(" - "), ...numericInputs(6)) }, nyilvantartasiSzam: { mask: makeMask(...numericInputs(10)) } }, [CountryCodes.Ireland]: { default: { mask: makeMask(...numericInputs(1), ...numericInputs(7, true)) } }, [CountryCodes.IsleOfMan]: { default: { mask: makeMask(...numericInputs(6), ...alphaInputs(1)), transformOnType: uppercase } }, [CountryCodes.Italy]: { partitaIVA: { mask: makeMask(...numericInputs(11)) }, CCIAA: { mask: makeMask(...alphaInputs(2), ...numericInputs(6), ...numericInputs(1, true)), transformOnType: uppercase } }, [CountryCodes.Japan]: { default: { mask: makeMask(...numericInputs(12)) } }, [CountryCodes.Jersey]: { default: { mask: makeMask(...alphanumericInputs(1), ...alphanumericInputs(8, true)), transformOnType: uppercase } }, [CountryCodes.Latvia]: { default: { mask: makeMask(...numericInputs(11)) } }, [CountryCodes.Liechtenstein]: { default: { mask: makeMask(...nonInputs("FL", { includeInValue: true }), spacer, ...nonInputs("-", { includeInValue: true }), spacer, ...numericInputs(4), spacer, ...nonInputs(".", { includeInValue: true }), spacer, ...numericInputs(3), spacer, ...nonInputs(".", { includeInValue: true }), spacer, ...numericInputs(3), spacer, ...nonInputs("-", { includeInValue: true }), spacer, ...numericInputs(1)) } }, [CountryCodes.Lithuania]: { default: { mask: makeMask(...numericInputs(6), ...numericInputs(3, true)) } }, [CountryCodes.Luxembourg]: { default: { mask: makeMask(...alphaInputs(1), ...numericInputs(9, true)), transformOnType: uppercase } }, [CountryCodes.Malaysia]: { default: { mask: makeMask(...numericInputs(7), ...numericInputs(5, true)) } }, [CountryCodes.Malta]: { default: { mask: makeMask(...customInputs(1, /[CP]/), spacer, ...numericInputs(4), ...numericInputs(2, true)), transformOnType: uppercase } }, [CountryCodes.Mexico]: { default: { mask: makeMask(...alphanumericInputs(12)) } }, [CountryCodes.Monaco]: { default: { mask: makeMask(...alphanumericInputs(8), ...alphanumericInputs(3, true)), transformOnType: uppercase }, [CompanyTypesValues.SOLE_PROPRIETORSHIP]: { mask: makeMask(...alphanumericInputs(8), ...alphanumericInputs(3, true)), transformOnType: uppercase } }, [CountryCodes.Netherlands]: { default: { mask: makeMask(...numericInputs(8)) } }, [CountryCodes.NewZealand]: { NZBN: { mask: makeMask(...numericInputs(13)) }, companyNumberNZ: { mask: makeMask(...numericInputs(7)) } }, [CountryCodes.Norway]: { default: { mask: makeMask(...numericInputs(9)) } }, [CountryCodes.Poland]: { krsNumber: { mask: makeMask(...numericInputs(10)) }, regon: { mask: makeMask(...numericInputs(9)) } }, [CountryCodes.Portugal]: { default: { mask: makeMask(...numericInputs(9)) } }, [CountryCodes.Romania]: { roRegNumberOldFormat: { mask: makeMask(...alphaInputs(1), ...numericInputs(1), ...numericInputs(1, true), ...customInputs(1, /[/]/), ...numericInputs(1), ...numericInputs(8, true), ...customInputs(1, /[/]/), ...numericInputs(4)), transformOnType: uppercase }, roRegNumberNewFormat: { mask: makeMask({ type: "input", allow: /[JFC]/ }, ...numericInputs(13)), transformOnType: uppercase } }, [CountryCodes.Singapore]: { default: { mask: makeMask(...alphanumericInputs(9), ...alphanumericInputs(1, true)), transformOnType: uppercase } }, [CountryCodes.Slovakia]: { default: { mask: makeMask(...numericInputs(8)) } }, [CountryCodes.Slovenia]: { default: { mask: makeMask(...numericInputs(10)) } }, [CountryCodes.Spain]: { default: { mask: makeMask(...alphaInputs(1), ...alphanumericInputs(8)), transformOnType: uppercase } }, [CountryCodes.Sweden]: { default: { mask: makeMask(...numericInputs(6), ...nonInputs(" - "), ...numericInputs(4)) } }, [CountryCodes.Switzerland]: { default: { mask: makeMask(...nonInputs("CHE", { includeInValue: true }), ...nonInputs(" - "), ...numericInputs(3), ...nonInputs(" . "), ...numericInputs(3), ...nonInputs(" . "), ...numericInputs(3)) } }, [CountryCodes.UnitedKingdom]: { default: { mask: makeMask(...alphanumericInputs(8)), transformOnType: uppercase }, nonProfit: { mask: makeMask(...alphanumericInputs(6), ...customInputs(1, /[a-zA-Z0-9-]/, true), ...alphanumericInputs(1, true)), transformOnType: uppercase } }, [CountryCodes.UnitedStates]: { [StateCodesUS.Alabama]: { mask: makeMask(...numericInputs(9), ...nonInputs(" "), ...nonInputs(StateCodesUS.Alabama)), transformOnType: uppercase }, [StateCodesUS.Alaska]: { mask: makeMask(...numericInputs(8), ...nonInputs(" "), ...nonInputs(StateCodesUS.Alaska)), transformOnType: uppercase }, [StateCodesUS.Arizona]: { mask: makeMask(...numericInputs(8), ...nonInputs(" "), ...nonInputs(StateCodesUS.Arizona)), transformOnType: uppercase }, [StateCodesUS.Arkansas]: { mask: makeMask({ type: "input", allow: /[8]/ }, ...numericInputs(8), ...nonInputs(" "), ...nonInputs(StateCodesUS.Arkansas)), transformOnType: uppercase }, [StateCodesUS.California]: { mask: makeMask(...numericInputs(7), ...numericInputs(5, true), ...nonInputs(" "), ...nonInputs(StateCodesUS.California)), transformOnType: uppercase }, [StateCodesUS.Colorado]: { mask: makeMask(...numericInputs(11), ...nonInputs(" "), ...nonInputs(StateCodesUS.Colorado)), transformOnType: uppercase }, [StateCodesUS.Connecticut]: { mask: makeMask(...numericInputs(7), ...nonInputs(" "), ...nonInputs(StateCodesUS.Connecticut)), transformOnType: uppercase }, [StateCodesUS.Delaware]: { mask: makeMask(...numericInputs(7), ...nonInputs(" "), ...nonInputs(StateCodesUS.Delaware)), transformOnType: uppercase }, [StateCodesUS.Florida]: { mask: makeMask(...numericInputs(6), ...numericInputs(6, true), ...nonInputs(" "), ...nonInputs(StateCodesUS.Florida)), transformOnType: uppercase }, [StateCodesUS.Georgia]: { mask: makeMask(...numericInputs(8), ...nonInputs(" "), ...nonInputs(StateCodesUS.Georgia)), transformOnType: uppercase }, [StateCodesUS.Hawaii]: { mask: makeMask(...numericInputs(5), ...numericInputs(3, true), { type: "input", allow: /[CDFLNPTZ]/ }, { type: "input", allow: /[1-8Z]/ }, ...nonInputs(" "), ...nonInputs(StateCodesUS.Hawaii)), transformOnType: uppercase }, [StateCodesUS.Idaho]: { mask: makeMask(...numericInputs(6), ...nonInputs(" "), ...nonInputs(StateCodesUS.Idaho)), transformOnType: uppercase }, [StateCodesUS.Illinois]: { mask: makeMask(...numericInputs(8), ...nonInputs(" "), ...nonInputs(StateCodesUS.Illinois)), transformOnType: uppercase }, [StateCodesUS.Indiana]: { mask: makeMask(...numericInputs(10), ...nonInputs(" "), ...nonInputs(StateCodesUS.Indiana)), transformOnType: uppercase }, [StateCodesUS.Iowa]: { mask: makeMask(...numericInputs(6), ...numericInputs(2, true), ...nonInputs(" "), ...nonInputs(StateCodesUS.Iowa)), transformOnType: uppercase }, [StateCodesUS.Kansas]: { mask: makeMask(...numericInputs(7), ...numericInputs(2, true), ...nonInputs(" "), ...nonInputs(StateCodesUS.Kansas)), transformOnType: uppercase }, [StateCodesUS.Kentucky]: { mask: makeMask(...numericInputs(9), ...numericInputs(1, true), ...nonInputs(" "), ...nonInputs(StateCodesUS.Kentucky)), transformOnType: uppercase }, [StateCodesUS.Louisiana]: { mask: makeMask(...numericInputs(9), ...numericInputs(1, true), ...nonInputs(" "), ...nonInputs(StateCodesUS.Louisiana)), transformOnType: uppercase }, [StateCodesUS.Maine]: { mask: makeMask(...numericInputs(8), ...nonInputs(" "), ...nonInputs(StateCodesUS.Maine)), transformOnType: uppercase }, [StateCodesUS.Maryland]: { mask: makeMask(...numericInputs(8), ...nonInputs(" "), ...nonInputs(StateCodesUS.Maryland)), transformOnType: uppercase }, [StateCodesUS.Massachusetts]: { mask: makeMask(...numericInputs(10), ...nonInputs(" "), ...nonInputs(StateCodesUS.Massachusetts)), transformOnType: uppercase }, [StateCodesUS.Michigan]: { mask: makeMask(...numericInputs(6), ...numericInputs(3, true), ...nonInputs(" "), ...nonInputs(StateCodesUS.Michigan)), transformOnType: uppercase }, [StateCodesUS.Minnesota]: { mask: makeMask(...numericInputs(7), ...nonInputs(" "), ...nonInputs(StateCodesUS.Minnesota)), transformOnType: uppercase }, [StateCodesUS.Mississippi]: { mask: makeMask(...numericInputs(7), ...numericInputs(3, true), ...nonInputs(" "), ...nonInputs(StateCodesUS.Mississippi)), transformOnType: uppercase }, [StateCodesUS.Missouri]: { mask: makeMask(...numericInputs(10), ...nonInputs(" "), ...nonInputs(StateCodesUS.Missouri)), transformOnType: uppercase }, [StateCodesUS.Montana]: { mask: makeMask(...numericInputs(7), ...nonInputs(" "), ...nonInputs(StateCodesUS.Montana)), transformOnType: uppercase }, [StateCodesUS.Nebraska]: { mask: makeMask(...numericInputs(9), ...numericInputs(2, true), ...nonInputs(" "), ...nonInputs(StateCodesUS.Nebraska)), transformOnType: uppercase }, [StateCodesUS.Nevada]: { mask: makeMask(...numericInputs(9), ...numericInputs(2, true), ...nonInputs(" "), ...nonInputs(StateCodesUS.Nevada)), transformOnType: uppercase }, [StateCodesUS.NewHampshire]: { mask: makeMask(...numericInputs(9), ...nonInputs(" "), ...nonInputs(StateCodesUS.NewHampshire)), transformOnType: uppercase }, [StateCodesUS.NewJersey]: { mask: makeMask(...numericInputs(10), ...nonInputs(" "), ...nonInputs(StateCodesUS.NewJersey)), transformOnType: uppercase }, [StateCodesUS.NewMexico]: { mask: makeMask(...numericInputs(6), ...nonInputs(" "), ...nonInputs(StateCodesUS.NewMexico)), transformOnType: uppercase }, [StateCodesUS.NewYork]: { mask: makeMask(...numericInputs(7), ...nonInputs(" "), ...nonInputs(StateCodesUS.NewYork)), transformOnType: uppercase }, [StateCodesUS.NorthCarolina]: { mask: makeMask(...numericInputs(7), ...nonInputs(" "), ...nonInputs(StateCodesUS.NorthCarolina)), transformOnType: uppercase }, [StateCodesUS.NorthDakota]: { mask: makeMask(...numericInputs(7), ...numericInputs(3, true), ...nonInputs(" "), ...nonInputs(StateCodesUS.NorthDakota)), transformOnType: uppercase }, [StateCodesUS.Ohio]: { mask: makeMask(...numericInputs(10), ...nonInputs(" "), ...nonInputs(StateCodesUS.Ohio)), transformOnType: uppercase }, [StateCodesUS.Oklahoma]: { mask: makeMask(...numericInputs(10), ...nonInputs(" "), ...nonInputs(StateCodesUS.Oklahoma)), transformOnType: uppercase }, [StateCodesUS.Oregon]: { mask: makeMask(...numericInputs(9), ...nonInputs(" "), ...nonInputs(StateCodesUS.Oregon)), transformOnType: uppercase }, [StateCodesUS.Pennsylvania]: { mask: makeMask(...numericInputs(7), ...nonInputs(" "), ...nonInputs(StateCodesUS.Pennsylvania)), transformOnType: uppercase }, [StateCodesUS.RhodeIsland]: { mask: makeMask(...numericInputs(7), ...nonInputs(" "), ...nonInputs(StateCodesUS.RhodeIsland)), transformOnType: uppercase }, [StateCodesUS.SouthCarolina]: { mask: makeMask(...numericInputs(7), ...nonInputs(" "), ...nonInputs(StateCodesUS.SouthCarolina)), transformOnType: uppercase }, [StateCodesUS.SouthDakota]: { mask: makeMask(...numericInputs(7), ...nonInputs(" "), ...nonInputs(StateCodesUS.SouthDakota)), transformOnType: uppercase }, [StateCodesUS.Tennessee]: { mask: makeMask(...numericInputs(6), ...nonInputs(" "), ...nonInputs(StateCodesUS.Tennessee)), transformOnType: uppercase }, [StateCodesUS.Texas]: { mask: makeMask(...numericInputs(10), ...nonInputs(" "), ...nonInputs(StateCodesUS.Texas)), transformOnType: uppercase }, [StateCodesUS.Utah]: { mask: makeMask(...numericInputs(7), ...nonInputs(" "), ...nonInputs(StateCodesUS.Utah)), transformOnType: uppercase }, [StateCodesUS.Vermont]: { mask: makeMask(...numericInputs(6), ...nonInputs(" "), ...nonInputs(StateCodesUS.Vermont)), transformOnType: uppercase }, [StateCodesUS.Virginia]: { mask: makeMask(...numericInputs(7), ...nonInputs(" "), ...nonInputs(StateCodesUS.Virginia)), transformOnType: uppercase }, [StateCodesUS.Washington]: { mask: makeMask(...numericInputs(9), ...nonInputs(" "), ...nonInputs(StateCodesUS.Washington)), transformOnType: uppercase }, [StateCodesUS.WestVirginia]: { mask: makeMask(...numericInputs(6), ...nonInputs(" "), ...nonInputs(StateCodesUS.WestVirginia)), transformOnType: uppercase }, [StateCodesUS.Wisconsin]: { mask: makeMask(...numericInputs(6), ...nonInputs(" "), ...nonInputs(StateCodesUS.Wisconsin)), transformOnType: uppercase }, [StateCodesUS.Wyoming]: { mask: makeMask(...numericInputs(6), ...nonInputs(" "), ...nonInputs(StateCodesUS.Wyoming)), transformOnType: uppercase }, [StateCodesUS.DistrictOfColumbia]: { mask: makeMask(...numericInputs(9)), transformOnType: uppercase }, default: { mask: makeMask(...numericInputs(9)), transformOnType: uppercase } } }; var stateFormatGuidanceText = { [StateCodesUS.Alabama]: { key: "enterNDigitsForExample", values: { numDigits: "9", example: "123456789 AL" } }, [StateCodesUS.Alaska]: { key: "enterNDigitsForExample", values: { numDigits: "8", example: "12345678 AK" } }, [StateCodesUS.Arizona]: { key: "enterNDigitsForExample", values: { numDigits: "8", example: "12345678 AZ" } }, [StateCodesUS.Arkansas]: { key: "enterTheRemainingNDigitsForExample", values: { numDigits: "8", example: "800000001 AR" } }, [StateCodesUS.California]: { key: "enterXOrYDigitsForExample", values: { xDigits: "8", yDigits: "12", example: "12345678 CA" } }, [StateCodesUS.Colorado]: { key: "enterNDigitsForExample", values: { numDigits: "11", example: "12345678901 CO" } }, [StateCodesUS.Connecticut]: { key: "enterNDigitsForExample", values: { numDigits: "7", example: "1234567 CT" } }, [StateCodesUS.Delaware]: { key: "enterNDigitsForExample", values: { numDigits: "7", example: "1234567 DE" } }, [StateCodesUS.Florida]: { key: "enterXOrYDigitsForExample", values: { xDigits: "6", yDigits: "12", example: "123456789012 FL" } }, [StateCodesUS.Georgia]: { key: "enterNDigitsForExample", values: { numDigits: "8", example: "12345678 GA" } }, [StateCodesUS.Hawaii]: { key: "validationPleaseEnterAValidBusinessRegistrationNumberWithFormat", values: { example: "12345678ZZ HI" } }, [StateCodesUS.Idaho]: { key: "enterNDigitsForExample", values: { numDigits: "6", example: "123456 ID" } }, [StateCodesUS.Illinois]: { key: "enterNDigitsForExample", values: { numDigits: "8", example: "12345678 IL" } }, [StateCodesUS.Indiana]: { key: "enterNDigitsForExample", values: { numDigits: "10", example: "1234567890 IN" } }, [StateCodesUS.Iowa]: { key: "enterXToYDigitsForExample", values: { minDigits: "6", maxDigits: "8", example: "12345678 IA" } }, [StateCodesUS.Kansas]: { key: "enterXToYDigitsForExample", values: { minDigits: "7", maxDigits: "9", example: "1234567890 KS" } }, [StateCodesUS.Kentucky]: { key: "enterXToYDigitsForExample", values: { minDigits: "9", maxDigits: "10", example: "1234567890 KY" } }, [StateCodesUS.Louisiana]: { key: "enterXToYDigitsForExample", values: { minDigits: "9", maxDigits: "10", example: "1234567890 LA" } }, [StateCodesUS.Maine]: { key: "enterNDigitsForExample", values: { numDigits: "8", example: "12345678 ME" } }, [StateCodesUS.Maryland]: { key: "enterNDigitsForExample", values: { numDigits: "8", example: "12345678 MD" } }, [StateCodesUS.Massachusetts]: { key: "enterNDigitsForExample", values: { numDigits: "10", example: "1234567890 MA" } }, [StateCodesUS.Michigan]: { key: "enterXOrYDigitsForExample", values: { xDigits: "6", yDigits: "9", example: "123456 MI" } }, [StateCodesUS.Minnesota]: { key: "enterNDigitsForExample", values: { numDigits: "7", example: "1234567 MN" } }, [StateCodesUS.Mississippi]: { key: "enterXToYDigitsForExample", values: { minDigits: "7", maxDigits: "10", example: "1234567 MS" } }, [StateCodesUS.Missouri]: { key: "enterNDigitsForExample", values: { numDigits: "10", example: "1234567890 MO" } }, [StateCodesUS.Montana]: { key: "enterNDigitsForExample", values: { numDigits: "7", example: "1234567 MT" } }, [StateCodesUS.Nebraska]: { key: "enterXToYDigitsForExample", values: { minDigits: "9", maxDigits: "11", example: "123456789 NE" } }, [StateCodesUS.Nevada]: { key: "enterXToYDigitsForExample", values: { minDigits: "9", maxDigits: "11", example: "123456789 NV" } }, [StateCodesUS.NewHampshire]: { key: "enterNDigitsForExample", values: { numDigits: "9", example: "123456789 NH" } }, [StateCodesUS.NewJersey]: { key: "enterNDigitsForExample", values: { numDigits: "10", example: "1234567890 NJ" } }, [StateCodesUS.NewMexico]: { key: "enterNDigitsForExample", values: { numDigits: "6", example: "123456 NM" } }, [StateCodesUS.NewYork]: { key: "enterNDigitsForExample", values: { numDigits: "7", example: "1234567 NY" } }, [StateCodesUS.NorthCarolina]: { key: "enterNDigitsForExample", values: { numDigits: "7", example: "1234567 NC" } }, [StateCodesUS.NorthDakota]: { key: "enterXToYDigitsForExample", values: { minDigits: "7", maxDigits: "10", example: "1234567 ND" } }, [StateCodesUS.Ohio]: { key: "enterNDigitsForExample", values: { numDigits: "10", example: "1234567890 OH" } }, [StateCodesUS.Oklahoma]: { key: "enterNDigitsForExample", values: { numDigits: "10", example: "1234567890 OK" } }, [StateCodesUS.Oregon]: { key: "enterNDigitsForExample", values: { numDigits: "9", example: "123456789 OR" } }, [StateCodesUS.Pennsylvania]: { key: "enterNDigitsForExample", values: { numDigits: "7", example: "1234567 PA" } }, [StateCodesUS.RhodeIsland]: { key: "enterNDigitsForExample", values: { numDigits: "7", example: "1234567 RI" } }, [StateCodesUS.SouthCarolina]: { key: "enterNDigitsForExample", values: { numDigits: "7", example: "1234567 SC" } }, [StateCodesUS.SouthDakota]: { key: "enterNDigitsForExample", values: { numDigits: "7", example: "1234567 SD" } }, [StateCodesUS.Tennessee]: { key: "enterNDigitsForExample", values: { numDigits: "6", example: "123456 TN" } }, [StateCodesUS.Texas]: { key: "enterNDigitsForExample", values: { numDigits: "10", example: "1234567890 TX" } }, [StateCodesUS.Utah]: { key: "enterNDigitsForExample", values: { numDigits: "7", example: "1234567 UT" } }, [StateCodesUS.Vermont]: { key: "enterNDigitsForExample", values: { numDigits: "6", example: "123456 VT" } }, [StateCodesUS.Virginia]: { key: "enterNDigitsForExample", values: { numDigits: "7", example: "1234567 VA" } }, [StateCodesUS.Washington]: { key: "enterNDigitsForExample", values: { numDigits: "9", example: "123456789 WA" } }, [StateCodesUS.WestVirginia]: { key: "enterNDigitsForExample", values: { numDigits: "6", example: "123456 WV" } }, [StateCodesUS.Wisconsin]: { key: "enterNDigitsForExample", values: { numDigits: "6", example: "123456 WI" } }, [StateCodesUS.Wyoming]: { key: "enterNDigitsForExample", values: { numDigits: "6", example: "123456 WY" } }, [StateCodesUS.DistrictOfColumbia]: { key: "enterNDigitsForExample", values: { numDigits: "9", example: "123456789" } }, default: { key: "enterNDigitsForExample", values: { numDigits: "9", example: "123456789" } } }; //#endregion //#region src/utils/regex/businessRegistrationNumberPatterns.ts var businessRegistrationNumberPatterns = { [CountryCodes.Australia]: { default: /^\d{9}$/, associationIncorporated: /^[a-zA-Z0-9]{3,20}$/ }, [CountryCodes.Austria]: { firmenbuchnummer: /^(FN|T)\d{3,6}[a-z]$/, ZVR: /^(AT-ZVR-)\d{9,10}$/ }, [CountryCodes.Belgium]: { default: /^\d{10}$/ }, [CountryCodes.Brazil]: { default: /^\d{14}$/ }, [CountryCodes.Bulgaria]: { default: /^\d{9}$/ }, [CountryCodes.Canada]: { default: /^[a-zA-Z0-9]{5,10}$/ }, [CountryCodes.Croatia]: { default: /^\d{9}$/, soleProprietorship: /^\d{8}$/ }, [CountryCodes.Cyprus]: { default: /^[COP]{1}\d{1,8}$/ }, [CountryCodes.CzechRepublic]: { default: /^\d{8,10}$/ }, [CountryCodes.Denmark]: { default: /^\d{8}$/ }, [CountryCodes.Estonia]: { default: /^\d{8}$/ }, [CountryCodes.Finland]: { default: /^\d{7}-?\d$/ }, [CountryCodes.France]: { SIRET: /^\d{9}-?\d{5}$/, RNA: /^W(\d{9}|\d[A-Za-z]\d{7})$/ }, [CountryCodes.Gibraltar]: { default: /^[a-zA-Z0-9]{1,8}$/ }, [CountryCodes.Germany]: { default: /^[A-Z]{2,3}\d{1,6}[A-Z]{0,5}(?:-[A-Z]\d{4})?$/ }, [CountryCodes.Greece]: { default: /^\d{12}$/ }, [CountryCodes.Guernsey]: { default: /^\d{1,9}$/ }, [CountryCodes.HongKong]: { default: /^\d{7}$/ }, [CountryCodes.Hungary]: { default: /^\d{10}$/, nyilvantartasiSzam: /^\d{7,10}$/ }, [CountryCodes.Iceland]: { default: /^\d{10}$/ }, [CountryCodes.India]: { default: /^\d{21}$/ }, [CountryCodes.Indonesia]: { default: /^\d{12}$/ }, [CountryCodes.Ireland]: { default: /^[1-9]\d{1,7}$/ }, [CountryCodes.IsleOfMan]: { default: /^\d{6}[A-Z]$/ }, [CountryCodes.Italy]: { partitaIVA: /^\d{11}$/, CCIAA: /^[a-zA-Z]{2}\d{6,7}$/ }, [CountryCodes.Japan]: { default: /^\d{12}$/ }, [CountryCodes.Jersey]: { default: /^[a-zA-Z0-9]{1,9}$/ }, [CountryCodes.Korea]: { default: /^\d{10}$/ }, [CountryCodes.Latvia]: { default: /^\d{11}$/ }, [CountryCodes.Liechtenstein]: { default: /FL-[0-9]{4}[.][0-9]{3}[.][0-9]{3}-[0-9]$/ }, [CountryCodes.Lithuania]: { default: /^\d{6,9}$/ }, [CountryCodes.Luxembourg]: { default: /^[a-zA-Z]\d{1,9}$/ }, [CountryCodes.Malaysia]: { default: /^\d{7}$|^\d{12}$/ }, [CountryCodes.Malta]: { default: /^[CP]\s?\d{4,6}$/ }, [CountryCodes.Mexico]: { default: /^\D{3}\d{6}\w{3}$/ }, [CountryCodes.Monaco]: { default: /^[0-9]{2}[A-Z]{1,3}[0-9]{5}$/, soleProprietorship: /^\d{2,4}[A-Z]\d{5}$/ }, [CountryCodes.Netherlands]: { default: /^\d{8}$/ }, [CountryCodes.NewZealand]: { NZBN: /^\d{13}$/, companyNumberNZ: /^\d{7}$/ }, [CountryCodes.Norway]: { default: /^\d{9}$/ }, [CountryCodes.Poland]: { krsNumber: /^\d{10}$/, regon: /^\d{9}$/ }, [CountryCodes.Portugal]: { default: /^\d{9}$/ }, [CountryCodes.Romania]: { roRegNumberOldFormat: /^[A-Z]\d{1,2}\/\d{1,9}\/\d{4}$/, roRegNumberNewFormat: /^[JFC]\d{13}$/ }, [CountryCodes.Singapore]: { default: /^[a-zA-Z0-9]{9,10}$/ }, [CountryCodes.Slovakia]: { default: /^\d{8}$/ }, [CountryCodes.Slovenia]: { default: /^\d{10}$/ }, [CountryCodes.Spain]: { default: /^[a-zA-Z][a-zA-Z0-9]{8}$/ }, [CountryCodes.Sweden]: { default: /^\d{10}$/ }, [CountryCodes.Switzerland]: { default: /^CHE\d{9}$|^CH\d{11}$/ }, [CountryCodes.UnitedKingdom]: { default: /^[a-zA-Z0-9]{8}$/, nonProfit: /^(?:(?:[A-Z]{2})?\d{6}|\d{6,8}|\d{6}-\d)$/ }, [CountryCodes.UnitedStates]: { [StateCodesUS.Alabama]: /^\d{9}$/, [StateCodesUS.Alaska]: /^\d{8}$/, [StateCodesUS.Arizona]: /^\d{8}$/, [StateCodesUS.Arkansas]: /^8\d{8}$/, [StateCodesUS.California]: /^\d{7}$|^\d{12}$/, [StateCodesUS.Colorado]: /^\d{11}$/, [StateCodesUS.Connecticut]: /^\d{7}$/, [StateCodesUS.Delaware]: /^\d{7}$/, [StateCodesUS.Florida]: /^\d{6}$|^\d{12}$/, [StateCodesUS.Georgia]: /^\d{8}$/, [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)$/, [StateCodesUS.Idaho]: /^\d{6}$/, [StateCodesUS.Illinois]: /^\d{8}$/, [StateCodesUS.Indiana]: /^\d{10}$/, [StateCodesUS.Iowa]: /^\d{6,8}$/, [StateCodesUS.Kansas]: /^\d{7,9}$/, [StateCodesUS.Kentucky]: /^\d{9,10}$/, [StateCodesUS.Louisiana]: /^\d{9,10}$/, [StateCodesUS.Maine]: /^\d{8}$/, [StateCodesUS.Maryland]: /^\d{8}$/, [StateCodesUS.Massachusetts]: /^\d{10}$/, [StateCodesUS.Michigan]: /^\d{6}$|^\d{9}$/, [StateCodesUS.Minnesota]: /^\d{7}$/, [StateCodesUS.Mississippi]: /^\d{7,10}$/, [StateCodesUS.Missouri]: /^\d{10}$/, [StateCodesUS.Montana]: /^\d{7}$/, [StateCodesUS.Nebraska]: /^\d{9,11}$/, [StateCodesUS.Nevada]: /^\d{9,11}$/, [StateCodesUS.NewHampshire]: /^\d{9}$/, [StateCodesUS.NewJersey]: /^\d{10}$/, [StateCodesUS.NewMexico]: /^\d{6}$/, [StateCodesUS.NewYork]: /^\d{7}$/, [StateCodesUS.NorthCarolina]: /^\d{7}$/, [StateCodesUS.NorthDakota]: /^\d{7,10}$/, [StateCodesUS.Ohio]: /^\d{10}$/, [StateCodesUS.Oklahoma]: /^\d{10}$/, [StateCodesUS.Oregon]: /^\d{9}$/, [StateCodesUS.Pennsylvania]: /^\d{7}$/, [StateCodesUS.RhodeIsland]: /^\d{7}$/, [StateCodesUS.SouthCarolina]: /^\d{7}$/, [StateCodesUS.SouthDakota]: /^\d{7}$/, [StateCodesUS.Tennessee]: /^\d{6}$/, [StateCodesUS.Texas]: /^\d{10}$/, [StateCodesUS.Utah]: /^\d{7}$/, [StateCodesUS.Vermont]: /^\d{6}$/, [StateCodesUS.Virginia]: /^\d{7}$/, [StateCodesUS.Washington]: /^\d{9}$/, [StateCodesUS.WestVirginia]: /^\d{6}$/, [StateCodesUS.Wisconsin]: /^\d{6}$/, [StateCodesUS.Wyoming]: /^\d{6}$/, [StateCodesUS.DistrictOfColumbia]: /^\d{9}$/, default: /^\d{9}$/ } }; //#endregion //#region src/components/Shared/fields/TaxInformationField/fieldConfig.ts var taxInformationDefaultFieldMetadata = { label: "taxId" }; var exemptedFromTaxDefaultFieldMetadata = { label: "iDontHaveATaxId" }; /** * Mapping function to parse TaxInformation schemas to validate the string for TaxInformation.number * * @param validators - String validators for the TaxInformation.number * @param country - Country in the fieldConfig */ var mapValidators = (validators, country) => { return validators.map((validator) => ({ ...validator, validate: (taxInformation) => { const taxInfo = taxInformation?.find((taxId) => country === taxId.country); if (taxInfo?.numberAbsent) return true; return taxInfo?.number ? validator.validate(taxInfo.number) : false; } })); }; var taxInformationDefaultFieldConfig = { [CountryCodes.Australia]: { label: "australianBusinessNumberAbn", validators: mapValidators([validatePatternOnBlur(/^\d{11}$/)], CountryCodes.Australia), mask: { mask: makeMask(...numericInputs(2), spacer, ...numericInputs(3), spacer, ...numericInputs(3), spacer, ...numericInputs(3)) }, guidanceText: { key: "enterNDigitsForExample", values: { numDigits: "11", example: "51 824 753 556" } } }, [CountryCodes.Austria]: { label: "taxInformationNumber__AT", validators: mapValidators([validatePatternOnBlur(/^(?=(?:[^0-9]*\d){9}[^0-9]*$)[\d\-/]+$/)], CountryCodes.Austria), mask: { mask: makeMask(...numericInputs(2), { type: "input", allow: /[-/]/, optional: true }, ...numericInputs(3), { type: "input", allow: /[-/]/, optional: true }, ...numericInputs(4)) }, guidanceText: { key: "enterNDigitsForExample", values: { numDigits: "9", example: "931736581" } } }, [CountryCodes.Belgium]: ({ taxIdNumberType }) => { switch (taxIdNumberType) { case "NUMERO_NATIONAL": return { label: "taxInformationNumber__BE_Individual", validators: mapValidators([validatePatternOnBlur(/^\d{11}$/)], CountryCodes.Belgium), mask: { mask: makeMask(...numericInputs(11)) }, guidanceText: { key: "validationPleaseEnterAValidIdNumberWithExample", values: { example: "99999999999", idType: "Numeró National" } } }; default: return { label: "taxInformationNumber__BE", validators: mapValidators([validatePatternOnBlur(/^\d{10}$/)], CountryCodes.Belgium), mask: { mask: makeMask(...numericInputs(10)) }, guidanceText: { key: "validationPleaseEnterAValidIdNumberWithExample", values: { example: "0123321123", idType: "Business nummer" } } }; } }, [CountryCodes.Canada]: { label: "businessNumber", validators: mapValidators([validatePatternOnBlur(/^\d{9}$/)], CountryCodes.Canada), mask: { mask: makeMask(...numericInputs(9)) }, guidanceText: { key: "enterNDigitsForExample", values: { numDigits: "9", example: "123456789" } } }, [CountryCodes.Croatia]: { label: "taxInformationNumber__HR", validators: mapValidators([validatePatternOnBlur(/^\d{11}$/)], CountryCodes.Croatia), mask: { mask: makeMask(...numericInputs(11)) }, guidanceText: { key: "validationPleaseEnterAValidIdNumberWithExample", values: { example: "94577403194", idType: "OIB" } } }, [CountryCodes.Cyprus]: { label: "taxInformationNumber__CY", validators: mapValidators([validatePatternOnBlur(/^\d{8,9}[A-Z]$/)], CountryCodes.Cyprus), mask: { mask: makeMask(...numericInputs(8), ...numericInputs(1, true), ...alphaInputs(1)), transformOnType: uppercase }, guidanceText: { key: "validationPleaseEnterAValidIdNumberWithExample", values: { example: "00123123T", idType: "TIC" } } }, [CountryCodes.Estonia]: { label: "taxInformationNumber__ET_Individual", validators: mapValidators([validatePatternOnBlur(/^\d{11}$/)], CountryCodes.Estonia), mask: { mask: makeMask(...numericInputs(11)) }, guidanceText: { key: "validationPleaseEnterAValidIdNumberWithExample", values: { example: "32708101201", idType: "Isikukood" } } }, [CountryCodes.Finland]: { label: "taxInformationNumber__FI", validators: mapValidators([validatePatternOnBlur(/^\d{6}[+\-A]\d{3}[0-9A-Y]$/)], CountryCodes.Finland), mask: { mask: makeMask(...numericInputs(6), { type: "input", allow: /[+\-A]/ }, ...numericInputs(3), { type: "input", allow: /[0-9A-Y]/ }), transformOnType: uppercase }, guidanceText: { key: "validationPleaseEnterAValidIdNumberWithExample", values: { example: "131052-308T", idType: "Henkilötunnus" } } }, [CountryCodes.France]: { label: "taxInformationNumber__FR", validators: mapValidators([validatePatternOnBlur(/^\s*(\d\s*){13}$/)], CountryCodes.France), mask: { mask: makeMask(...numericInputs(2), spacer, ...numericInputs(2), spacer, ...numericInputs(3), spacer, ...numericInputs(3), spacer, ...numericInputs(3)) }, guidanceText: { key: "validationPleaseEnterAValidIdNumberWithExample", values: { example: "30 23 217 600 053", idType: "Numéro SPI" } } }, [CountryCodes.Germany]: ({ taxIdNumberType }) => { switch (taxIdNumberType) { case "IDNR": return { label: "taxInformationNumber__DE_Individual", validators: mapValidators([validatePatternOnBlur(/^\d{11}$/)], CountryCodes.Germany), mask: { mask: makeMask(...numericInputs(11)) }, guidanceText: { key: "validationPleaseEnterAValidIdNumberWithExample", values: { example: "26954371827", idType: "IdNr" } } }; default: return { label: "taxInformationNumber__DE", validators: mapValidators([validatePatternOnBlur(/^\d{10}$|^\d{11}$|^\d{13}$/)], CountryCodes.Germany), mask: { mask: makeMask(...numericInputs(10), ...numericInputs(3, true)) }, guidanceText: { key: "validationPleaseEnterAValidIdNumberWithExample", values: { example: "14310260208", idType: "Steuernummer" } } }; } }, [CountryCodes.Gibraltar]: { label: "taxpayerReferenceNumber", validators: mapValidators([validatePatternOnBlur(/^\d{1,7}$/)], CountryCodes.Gibraltar), mask: { mask: makeMask(...numericInputs(1), ...numericInputs(6, true)) }, guidanceText: { key: "enterAMaximumOfNDigitsForExample", values: { maxDigits: "7", example: "123456" } } }, [CountryCodes.Greece]: { label: "taxInformationNumber__GR", validators: mapValidators([validatePatternOnBlur(/^\d{9}$/)], CountryCodes.Greece), mask: { mask: makeMask(...numericInputs(9)) }, guidanceText: { key: "validationPleaseEnterAValidIdNumberWithExample", values: { example: "244709851", idType: "AFM" } } }, [CountryCodes.Guernsey]: ({ taxIdNumberType }) => { switch (taxIdNumberType) { case "TIN_GG": return { label: "nationalInsuranceNumber", validators: mapValidators([validatePatternOnBlur(/^GY\d{6}[A-D]$/)], CountryCodes.Guernsey), mask: { mask: makeMask(...nonInputs("GY", { includeInValue: true }), spacer, ...numericInputs(2), spacer, ...numericInputs(2), spacer, ...numericInputs(2), spacer, { type: "input", allow: /[A-D]/ }), transformOnType: uppercase }, guidanceText: { key: "enterTheRemainingNCharactersForExample", values: { numChars: "7", example: "GY 12 34 56 A" } } }; default: return { label: "taxInformationNumber", mask: businessRegistrationNumberMasks[CountryCodes.Guernsey].default, validators: mapValidators([validatePatternOnBlur(businessRegistrationNumberPatterns[CountryCodes.Guernsey].default)], CountryCodes.Guernsey), guidanceText: { key: "enterAMaximumOfNDigitsForExample", values: { maxDigits: "9", example: "123456" } } }; } }, [CountryCodes.HongKong]: { label: "taxInformationNumber__HK", validators: mapValidators([validatePatternOnBlur(/^\d{8}$/)], CountryCodes.HongKong), mask: { mask: makeMask(...numericInputs(8)) }, guidanceText: { key: "enterNDigitsForExample", values: { numDigits: "8", example: "70569713" } } }, [CountryCodes.Ireland]: ({ taxIdNumberType }) => { switch (taxIdNumberType) { case "PERSONAL_PUBLIC_SERVICE_NUMBER": return { label: "taxInformationNumber__IE_Individual", validators: mapValidators([validatePatternOnBlur(/^\d{7}[A-Z]$|^\d{7}[A-Z]{2}$/)], CountryCodes.Ireland), mask: { mask: makeMask(...numericInputs(7), ...alphaInputs(1), ...alphaInputs(1, true)), transformOnType: uppercase }, guidanceText: { key: "validationPleaseEnterAValidIdNumberWithExample", values: { example: "1234567T", idType: "Personal Public Service Number" } } }; default: return { label: "trnNumber", validators: mapValidators([validatePatternOnBlur(/^\d{7}[A-Z]$|^\d{7}[A-Z]{2}$/)], CountryCodes.Ireland), mask: { mask: makeMask(...numericInputs(7), ...alphaInputs(1), ...alphaInputs(1, true)), transformOnType: uppercase }, guidanceText: { key: "enterXDigitsThenXToYLettersForExample", values: { numDigits: "7", minLetters: "1", maxLetters: "2", example: "1497955KA" } } }; } }, [CountryCodes.Italy]: { label: "codiceFiscale", mask: { mask: makeMask(...numericInputs(11)) }, validators: mapValidators([validatePatternOnBlur(/^\d{11}$/)], CountryCodes.Italy), guidanceText: { key: "enterNDigitsForExample", values: { numDigits: "11", example: "12345678901" } } }, [CountryCodes.IsleOfMan]: { label: "taxReferenceNumber", validators: mapValidators([validatePatternOnBlur(/^[HCX]\d{8}$/)], CountryCodes.IsleOfMan), mask: { mask: makeMask({ type: "input", allow: /[HCX]/ }, ...numericInputs(6), ...nonInputs(" - "), ...numericInputs(2)), transformOnType: uppercase }, guidanceText: { key: "enterNCharactersForExample", values: { numChars: "9", example: "C155673-79" } } }, [CountryCodes.Jersey]: ({ taxIdNumberType, companyType }) => { switch (taxIdNumberType) { case "SSN": return { label: "socialSecurityNumber", validators: mapValidators([validatePatternOnBlur(/^[A-Z]{2}\d{6}[A-Z]$/)], CountryCodes.Jersey), mask: { mask: makeMask(...alphaInputs(2), ...numericInputs(6), ...alphaInputs(1)), transformOnType: uppercase }, guidanceText: { key: "enterNCharactersForExample", values: { numChars: "9", example: "JY000000A" } } }; default: switch (companyType) { case CompanyTypesValues.SOLE_PROPRIETORSHIP: return { label: "taxIdentificationNumber", validators: mapValidators([validatePatternOnBlur(/^\d{10}$/)], CountryCodes.Jersey), mask: { mask: makeMask(...numericInputs(3), ...nonInputs(" - "), ...numericInputs(3), ...nonInputs(" - "), ...numericInputs(4)) }, guidanceText: { key: "enterNDigitsForExample", values: { numDigits: "10", example: "100-100-1000" } } }; default: return { label: "taxIdentificationNumber", validators: mapValidators([validatePatternOnBlur(/^[A-Z]{2}\d{5}$/)], CountryCodes.Jersey), mask: { mask: makeMask(...alphaInputs(2), ...numericInputs(5)), transformOnType: uppercase }, guidanceText: { key: "enterNCharactersForExample", values: { numChars: "7", example: "CC17261" } } }; } } }, [CountryCodes.Latvia]: { label: "taxInformationNumber__LV", validators: mapValidators([validatePatternOnBlur(/^\d{11}$/)], CountryCodes.Latvia), mask: { mask: makeMask(...numericInputs(11)) }, guidanceText: { key: "validationPleaseEnterAValidIdNumberWithExample", values: { example: "32532963606", idType: "Personas kods" } } }, [CountryCodes.Lithuania]: { label: "taxInformationNumber__LT", validators: mapValidators([validatePatternOnBlur(/^\d{11}$/)], CountryCodes.Lithuania), mask: { mask: makeMask(...numericInputs(11)) }, guidanceText: { key: "validationPleaseEnterAValidIdNumberWithExample", values: { example: "33309240064", idType: "Asmens kodas" } } }, [CountryCodes.Luxembourg]: ({ companyType }) => { switch (companyType) { case LegalEntityTypes.INDIVIDUAL: return { label: "taxInformationNumber__LU_Individual", validators: mapValidators([validatePatternOnBlur(/^\d{13}$/)], CountryCodes.Luxembourg), mask: { mask: makeMask(...numericInputs(13)) }, guidanceText: { key: "enterNCharactersForExample", values: { numChars: "13", example: "1893120105732" } } }; default: return { label: "taxInformationNumber__LU_Org", validators: mapValidators([validatePatternOnBlur(/^\d{11}$/)], CountryCodes.Luxembourg), mask: { mask: makeMask(...numericInputs(11)) }, guidanceText: { key: "enterNCharactersForExample", values: { numChars: "11", example: "19991201001" } } }; } }, [CountryCodes.Malta]: ({ taxIdNumberType }) => { switch (taxIdNumberType) { case "IDENTITY_CARD_NUMBER": return { label: "taxInformationNumber__MT_Individual", validators: mapValidators([validatePatternOnBlur(/^\d{7}[A-Z]$|^\d{9}$/)], CountryCodes.Malta), mask: { mask: makeMask(...numericInputs(7), ...alphanumericInputs(2)), transformOnType: uppercase }, guidanceText: { key: "validationPleaseEnterAValidIdNumberWithExample", values: { example: "1234567A", idType: "Identity card number or unique taxpayer reference number (Maltese nationals)" } } }; case "NRU": return { label: "taxInformationNumber__MT_NRU_Individual", validators: mapValidators([validatePatternOnBlur(/^\d{9}$/)], CountryCodes.Malta), mask: { mask: makeMask(...numericInputs(9)) }, guidanceText: { key: "validationPleaseEnterAValidIdNumberWithExample", values: { example: "999999999", idType: "NRU (Non-Maltese nationals)" } } }; default: return { label: "taxInformationNumber__MT_Org", validators: mapValidators([validatePatternOnBlur(/^\d{9}$/)], CountryCodes.Malta), mask: { mask: makeMask(...numericInputs(9)) }, guidanceText: { key: "validationPleaseEnterAValidIdNumberWithExample", values: { example: "123456789", idType: "Income Tax Registration Number" } } }; } }, [CountryCodes.Netherlands]: ({ companyType }) => { switch (companyType) { case LegalEntityTypes.INDIVIDUAL: return { label: "bsnNumber", validators: mapValidators([validatePatternOnBlur(/^\d{9}$/)], CountryCodes.Netherlands), mask: { mask: makeMask(...numericInputs(9)) }, guidanceText: { key: "validationPleaseEnterAValidIdNumberWithExample", values: { example: "999999999", idType: "BSN" } } }; default: return { label: "rsinNumber", validators: mapValidators([validatePatternOnBlur(/^\d{9}$/)], CountryCodes.Netherlands), mask: { mask: makeMask(...numericInputs(9)) }, guidanceText: { key: "validationPleaseEnterAValidIdNumberWithExample", values: { example: "811786523", idType: "RSIN" } } }; } }, [CountryCodes.NewZealand]: { label: "irdNumber", validators: mapValidators([validatePatternOnBlur(/^\d{8,9}$/)], CountryCodes.NewZealand), mask: { mask: makeMask(...numericInputs(8), ...numericInputs(1, true)) }, guidanceText: { key: "enterXToYDigitsForExample", values: { minDigits: "8", maxDigits: "9", example: "12345678" } } }, [CountryCodes.Portugal]: { label: "taxInformationNumber__PT", validators: mapValidators([validatePatternOnBlur(/^\d{9}$/)], CountryCodes.Portugal), mask: { mask: makeMask(...numericInputs(9)) }, guidanceText: { key: "validationPleaseEnterAValidIdNumberWithExample", values: { example: "299999998", idType: "Numéro ID Civil" } } }, [CountryCodes.PuertoRico]: { label: "taxInformationNumber__US", validators: mapValidators([validatePatternOnBlur(/^\d{9}$/)], CountryCodes.PuertoRico), mask: { mask: makeMask(...numericInputs(2), ...nonInputs(" - "), ...numericInputs(7)) }, guidanceText: { key: "validationPleaseEnterAValidEINWithFormat", values: { format: "XX-XXXXXXX", example: "98-7654321" } } }, [CountryCodes.Singapore]: { label: "gst", validators: mapValidators([validatePatternOnBlur(/^[A-Z0-9]{9,10}$/)], CountryCodes.Singapore), mask: { mask: makeMask(...alphanumericInputs(2), ...nonInputs(" - "), ...alphanumericInputs(7), ...nonInputs(" - "), ...alphanumericInputs(1)), transformOnType: uppercase }, guidanceText: { key: "enterNCharactersForExample", values: { numChars: "10", example: "M212345678" } } }, [CountryCodes.Slovakia]: ({ companyType }) => {