@swan-io/shared-business 4.8.1 → 4.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +3 -1
- package/src/locales/de.json +1 -0
- package/src/locales/en.json +1 -0
- package/src/locales/es.json +1 -0
- package/src/locales/fi.json +1 -0
- package/src/locales/fr.json +1 -0
- package/src/locales/it.json +1 -0
- package/src/locales/nl.json +1 -0
- package/src/locales/pt.json +1 -0
- package/src/utils/validation.d.ts +2 -0
- package/src/utils/validation.js +7 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@swan-io/shared-business",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.9.0",
|
|
4
4
|
"engines": {
|
|
5
5
|
"node": ">=18.0.0",
|
|
6
6
|
"yarn": "^1.22.0"
|
|
@@ -34,6 +34,7 @@
|
|
|
34
34
|
"@placekit/client-js": "^2.2.0",
|
|
35
35
|
"@swan-io/boxed": "^2.0.0",
|
|
36
36
|
"dayjs": "^1.11.10",
|
|
37
|
+
"iban": "^0.0.14",
|
|
37
38
|
"react": "^18.2.0",
|
|
38
39
|
"react-atomic-state": "^2.0.0",
|
|
39
40
|
"react-dom": "^18.2.0",
|
|
@@ -49,6 +50,7 @@
|
|
|
49
50
|
"@swan-io/lake": "*",
|
|
50
51
|
"@testing-library/react": "^14.2.1",
|
|
51
52
|
"@testing-library/user-event": "^14.5.2",
|
|
53
|
+
"@types/iban": "0.0.35",
|
|
52
54
|
"@types/react": "^18.2.55",
|
|
53
55
|
"@types/react-dom": "^18.2.19",
|
|
54
56
|
"@types/react-native": "^0.72.8",
|
package/src/locales/de.json
CHANGED
|
@@ -81,6 +81,7 @@
|
|
|
81
81
|
"datePicker.month.previous": "Vorheriger Monat",
|
|
82
82
|
"datePicker.month.september": "September",
|
|
83
83
|
"error.generic": "Ein Fehler ist aufgetreten",
|
|
84
|
+
"error.iban.invalid": "Diese IBAN ist ungültig. Bitte versuchen Sie es erneut.",
|
|
84
85
|
"error.network.500": "Interner Serverfehler",
|
|
85
86
|
"error.network.503": "Dienst nicht verfügbar",
|
|
86
87
|
"error.requiredField": "Das ist ein Pflichtfeld",
|
package/src/locales/en.json
CHANGED
|
@@ -83,6 +83,7 @@
|
|
|
83
83
|
"datePicker.month.previous": "Previous month",
|
|
84
84
|
"datePicker.month.september": "September",
|
|
85
85
|
"error.generic": "An error occurred",
|
|
86
|
+
"error.iban.invalid": "This IBAN doesn't look right. Trying entering it again.",
|
|
86
87
|
"error.network.500": "Internal server error",
|
|
87
88
|
"error.network.503": "Service unavailable",
|
|
88
89
|
"error.requiredField": "This field is required",
|
package/src/locales/es.json
CHANGED
|
@@ -81,6 +81,7 @@
|
|
|
81
81
|
"datePicker.month.previous": "Mes anterior",
|
|
82
82
|
"datePicker.month.september": "Septiembre",
|
|
83
83
|
"error.generic": "Ha ocurrido un error",
|
|
84
|
+
"error.iban.invalid": "Este IBAN no es correcto. Inténtalo de nuevo.",
|
|
84
85
|
"error.network.500": "Error de servidor interno",
|
|
85
86
|
"error.network.503": "Servicio no disponible",
|
|
86
87
|
"error.requiredField": "Este campo es obligatorio",
|
package/src/locales/fi.json
CHANGED
|
@@ -81,6 +81,7 @@
|
|
|
81
81
|
"datePicker.month.previous": "Edellinen kuukausi",
|
|
82
82
|
"datePicker.month.september": "Syyskuu",
|
|
83
83
|
"error.generic": "Virhe tapahtui",
|
|
84
|
+
"error.iban.invalid": "IBAN-tilinumero ei näytä olevan oikein. Yritä syöttää se uudelleen.",
|
|
84
85
|
"error.network.500": "Sisäinen palvelinvirhe",
|
|
85
86
|
"error.network.503": "Palvelua ei saatavilla",
|
|
86
87
|
"error.requiredField": "Vaadittu kenttä",
|
package/src/locales/fr.json
CHANGED
|
@@ -81,6 +81,7 @@
|
|
|
81
81
|
"datePicker.month.previous": "Mois précédent",
|
|
82
82
|
"datePicker.month.september": "Septembre",
|
|
83
83
|
"error.generic": "Une erreur est survenue",
|
|
84
|
+
"error.iban.invalid": "Cet IBAN ne semble pas correct. Veuillez le saisir à nouveau.",
|
|
84
85
|
"error.network.500": "Erreur de serveur interne",
|
|
85
86
|
"error.network.503": "Service indisponible",
|
|
86
87
|
"error.requiredField": "Ce champ est requis",
|
package/src/locales/it.json
CHANGED
|
@@ -81,6 +81,7 @@
|
|
|
81
81
|
"datePicker.month.previous": "Mese precedente",
|
|
82
82
|
"datePicker.month.september": "Settembre",
|
|
83
83
|
"error.generic": "Si è verificato un errore",
|
|
84
|
+
"error.iban.invalid": "Questo IBAN non sembra corretto. Provi a inserirlo di nuovo.",
|
|
84
85
|
"error.network.500": "Errore interno del server",
|
|
85
86
|
"error.network.503": "Servizio non disponibile",
|
|
86
87
|
"error.requiredField": "Questo campo è obbligatorio",
|
package/src/locales/nl.json
CHANGED
|
@@ -81,6 +81,7 @@
|
|
|
81
81
|
"datePicker.month.previous": "Vorige maand",
|
|
82
82
|
"datePicker.month.september": "September",
|
|
83
83
|
"error.generic": "Er is een fout opgetreden",
|
|
84
|
+
"error.iban.invalid": "Deze IBAN lijkt niet juist. Probeer het nog eens.",
|
|
84
85
|
"error.network.500": "Interne Server Fout",
|
|
85
86
|
"error.network.503": "Dienst niet beschikbaar",
|
|
86
87
|
"error.requiredField": "Dit veld is verplicht",
|
package/src/locales/pt.json
CHANGED
|
@@ -81,6 +81,7 @@
|
|
|
81
81
|
"datePicker.month.previous": "Mês anterior",
|
|
82
82
|
"datePicker.month.september": "Setembro",
|
|
83
83
|
"error.generic": "Ocorreu um erro",
|
|
84
|
+
"error.iban.invalid": "Este IBAN não parece correto. Tente inserir novamente.",
|
|
84
85
|
"error.network.500": "Erro interno do servidor",
|
|
85
86
|
"error.network.503": "Serviço indisponível",
|
|
86
87
|
"error.requiredField": "Este campo é obrigatório",
|
|
@@ -7,3 +7,5 @@ export declare const validateRequired: Validator<string>;
|
|
|
7
7
|
export declare const validateBooleanRequired: Validator<boolean | undefined>;
|
|
8
8
|
export declare const validateIndividualTaxNumber: (accountCountry: AccountCountry) => Validator<string | undefined>;
|
|
9
9
|
export declare const validateCompanyTaxNumber: (accountCountry: AccountCountry) => Validator<string | undefined>;
|
|
10
|
+
export { printFormat as printIbanFormat } from "iban";
|
|
11
|
+
export declare const validateIban: (iban: string) => string | undefined;
|
package/src/utils/validation.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { noop } from "@swan-io/lake/src/utils/function";
|
|
2
|
+
import { isValid as isValidIban } from "iban";
|
|
2
3
|
import { match } from "ts-pattern";
|
|
3
4
|
import { t } from "./i18n";
|
|
4
5
|
const EMAIL_REGEX = /^[A-Z0-9_+.-]*[A-Z0-9_+-]@([A-Z0-9][A-Z0-9-]*\.)+[A-Z]{2,}$/i;
|
|
@@ -89,3 +90,9 @@ export const validateCompanyTaxNumber = (accountCountry) => value => {
|
|
|
89
90
|
})
|
|
90
91
|
.otherwise(noop);
|
|
91
92
|
};
|
|
93
|
+
export { printFormat as printIbanFormat } from "iban";
|
|
94
|
+
export const validateIban = (iban) => {
|
|
95
|
+
if (!isValidIban(iban)) {
|
|
96
|
+
return t("error.iban.invalid");
|
|
97
|
+
}
|
|
98
|
+
};
|