@swan-io/shared-business 13.1.4 → 13.1.6
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 -3
- package/src/components/CreditStatement.d.ts +7 -6
- package/src/components/CreditStatement.js +40 -65
- package/src/locales/de.json +3 -0
- package/src/locales/en.json +3 -0
- package/src/locales/es.json +3 -0
- package/src/locales/fi.json +3 -0
- package/src/locales/fr.json +3 -0
- package/src/locales/it.json +3 -0
- package/src/locales/nl.json +3 -0
- package/src/locales/pt.json +3 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@swan-io/shared-business",
|
|
3
|
-
"version": "13.1.
|
|
3
|
+
"version": "13.1.6",
|
|
4
4
|
"engines": {
|
|
5
5
|
"node": "^22.12.0"
|
|
6
6
|
},
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
],
|
|
26
26
|
"license": "MIT",
|
|
27
27
|
"peerDependencies": {
|
|
28
|
-
"@swan-io/lake": "13.1.
|
|
28
|
+
"@swan-io/lake": "13.1.6"
|
|
29
29
|
},
|
|
30
30
|
"dependencies": {
|
|
31
31
|
"@formatjs/intl": "^3.1.6",
|
|
@@ -50,6 +50,6 @@
|
|
|
50
50
|
"@types/react-dom": "^19.1.7",
|
|
51
51
|
"@types/react-native": "^0.72.8",
|
|
52
52
|
"type-fest": "^4.41.0",
|
|
53
|
-
"@swan-io/lake": "13.1.
|
|
53
|
+
"@swan-io/lake": "13.1.6"
|
|
54
54
|
}
|
|
55
55
|
}
|
|
@@ -20,6 +20,8 @@ type Transaction = {
|
|
|
20
20
|
transactionType: TransactionType;
|
|
21
21
|
transactionSide: "Credit" | "Debit";
|
|
22
22
|
transactionAmount: Amount;
|
|
23
|
+
counterparty: string;
|
|
24
|
+
maskedPan?: string;
|
|
23
25
|
};
|
|
24
26
|
type CreditStatementV1Props = {
|
|
25
27
|
version: "v1";
|
|
@@ -32,14 +34,13 @@ type CreditStatementV1Props = {
|
|
|
32
34
|
bic: string;
|
|
33
35
|
openingDate: string;
|
|
34
36
|
closingDate: string;
|
|
35
|
-
openingBalance: Amount;
|
|
36
37
|
transactions: Transaction[];
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
38
|
+
issueDate: string;
|
|
39
|
+
issuerName: string;
|
|
40
|
+
siret: string;
|
|
41
|
+
repaymentDate: string;
|
|
41
42
|
};
|
|
42
|
-
export declare const CreditStatementV1: ({ partnerLogoUrl, accountHolderType, accountHolderName, accountHolderAddress, iban, bic, openingDate, closingDate,
|
|
43
|
+
export declare const CreditStatementV1: ({ partnerLogoUrl, accountHolderType, accountHolderName, accountHolderAddress, iban, bic, openingDate, closingDate, transactions, issueDate, issuerName, siret, repaymentDate, }: CreditStatementV1Props) => import("react/jsx-runtime").JSX.Element;
|
|
43
44
|
export type CreditStatementProps = CreditStatementV1Props;
|
|
44
45
|
export declare const CreditStatement: (props: CreditStatementProps) => import("react/jsx-runtime").JSX.Element;
|
|
45
46
|
export {};
|
|
@@ -1,70 +1,60 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { Box } from "@swan-io/lake/src/components/Box";
|
|
3
|
+
import { LakeText } from "@swan-io/lake/src/components/LakeText";
|
|
3
4
|
import { Separator } from "@swan-io/lake/src/components/Separator";
|
|
4
5
|
import { Space } from "@swan-io/lake/src/components/Space";
|
|
5
6
|
import { SwanLogo } from "@swan-io/lake/src/components/SwanLogo";
|
|
6
|
-
import { colors,
|
|
7
|
+
import { colors, invariantColors, spacings } from "@swan-io/lake/src/constants/design";
|
|
7
8
|
import { isNotNullish, isNotNullishOrEmpty } from "@swan-io/lake/src/utils/nullish";
|
|
8
|
-
import
|
|
9
|
+
import dayjs from "dayjs";
|
|
10
|
+
import { printFormat } from "iban";
|
|
11
|
+
import { StyleSheet } from "react-native";
|
|
9
12
|
import { match } from "ts-pattern";
|
|
10
13
|
import { getCountryName } from "../constants/countries";
|
|
11
|
-
import {
|
|
14
|
+
import { formatNestedMessage, locale, t } from "../utils/i18n";
|
|
12
15
|
const LOGO_MAX_HEIGHT = 24;
|
|
13
16
|
const LOGO_MAX_WIDTH = 150;
|
|
14
|
-
const getTextStyle = (type, fontSize) => ({
|
|
15
|
-
...(type === "mono" ? { fontFamily: fonts.iban } : primaryFontStyle),
|
|
16
|
-
color: colors.gray[900],
|
|
17
|
-
fontSize,
|
|
18
|
-
lineHeight: fontSize * 1.25,
|
|
19
|
-
fontWeight: "400",
|
|
20
|
-
});
|
|
21
17
|
const styles = StyleSheet.create({
|
|
22
18
|
container: {
|
|
23
19
|
width: 793,
|
|
24
20
|
padding: 56,
|
|
25
21
|
backgroundColor: invariantColors.white,
|
|
26
22
|
},
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
23
|
+
address: {
|
|
24
|
+
fontSize: 13,
|
|
25
|
+
},
|
|
26
|
+
smallText: {
|
|
27
|
+
fontSize: 12,
|
|
28
|
+
},
|
|
29
|
+
mediumText: {
|
|
30
|
+
fontSize: 14,
|
|
31
|
+
},
|
|
32
|
+
subtitle: {
|
|
33
|
+
fontSize: 18,
|
|
34
|
+
fontWeight: "400",
|
|
30
35
|
},
|
|
31
36
|
pageTitle: {
|
|
32
|
-
|
|
37
|
+
fontSize: 20,
|
|
33
38
|
color: colors.swan[500],
|
|
34
39
|
fontWeight: "600",
|
|
35
40
|
},
|
|
36
41
|
sectionTitle: {
|
|
37
|
-
|
|
42
|
+
fontSize: 18,
|
|
38
43
|
color: colors.swan[500],
|
|
39
44
|
fontWeight: "600",
|
|
40
45
|
lineHeight: 24,
|
|
41
46
|
},
|
|
42
|
-
totalAmount: {
|
|
43
|
-
...getTextStyle("sans", 20),
|
|
44
|
-
lineHeight: 28,
|
|
45
|
-
fontWeight: "600",
|
|
46
|
-
},
|
|
47
47
|
titleColumn: {
|
|
48
|
-
|
|
49
|
-
fontWeight: "
|
|
48
|
+
fontSize: 14,
|
|
49
|
+
fontWeight: "600",
|
|
50
50
|
paddingVertical: spacings[4],
|
|
51
51
|
minWidth: spacings[96],
|
|
52
52
|
lineHeight: 24,
|
|
53
53
|
},
|
|
54
|
-
openingBalanceText: {
|
|
55
|
-
...getTextStyle("sans", 14),
|
|
56
|
-
textAlign: "right",
|
|
57
|
-
},
|
|
58
|
-
textColumn: {
|
|
59
|
-
...getTextStyle("sans", 14),
|
|
60
|
-
color: "colors.gray[700]",
|
|
61
|
-
// lineHeight: 20,
|
|
62
|
-
paddingVertical: spacings[4],
|
|
63
|
-
},
|
|
64
54
|
text: {
|
|
65
|
-
|
|
66
|
-
color: colors.gray[700],
|
|
55
|
+
fontSize: 13,
|
|
67
56
|
lineHeight: 24,
|
|
57
|
+
textAlign: "right",
|
|
68
58
|
},
|
|
69
59
|
row: {
|
|
70
60
|
textAlign: "right",
|
|
@@ -72,16 +62,6 @@ const styles = StyleSheet.create({
|
|
|
72
62
|
fontWeight: "600",
|
|
73
63
|
width: "20%",
|
|
74
64
|
},
|
|
75
|
-
closingBalanceRow: {
|
|
76
|
-
...getTextStyle("sans", 14),
|
|
77
|
-
backgroundColor: colors.gray[50],
|
|
78
|
-
width: "50%",
|
|
79
|
-
},
|
|
80
|
-
footer: {
|
|
81
|
-
...getTextStyle("sans", 10),
|
|
82
|
-
color: colors.gray[500],
|
|
83
|
-
fontWeight: "300",
|
|
84
|
-
},
|
|
85
65
|
defaultLogo: {
|
|
86
66
|
height: LOGO_MAX_HEIGHT,
|
|
87
67
|
width: (45 / 10) * LOGO_MAX_HEIGHT,
|
|
@@ -92,14 +72,8 @@ const styles = StyleSheet.create({
|
|
|
92
72
|
position: "relative",
|
|
93
73
|
top: 0.5,
|
|
94
74
|
},
|
|
75
|
+
rightColumnContent: { width: "15%", textAlign: "right", fontWeight: "400" },
|
|
95
76
|
});
|
|
96
|
-
const Title = ({ text, align = "left", style, }) => (_jsx(Text, { style: [
|
|
97
|
-
styles.titleColumn,
|
|
98
|
-
style,
|
|
99
|
-
{
|
|
100
|
-
textAlign: align,
|
|
101
|
-
},
|
|
102
|
-
], children: text }));
|
|
103
77
|
const translateTransaction = (transaction) => {
|
|
104
78
|
return match(transaction)
|
|
105
79
|
.with("Card", () => t("accountStatement.card"))
|
|
@@ -113,20 +87,21 @@ const logoStyle = {
|
|
|
113
87
|
objectFit: "contain",
|
|
114
88
|
objectPosition: "left",
|
|
115
89
|
};
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
90
|
+
const formatMaskedPan = (value) => `••${value.slice(-4)}`;
|
|
91
|
+
export const CreditStatementV1 = ({ partnerLogoUrl, accountHolderType, accountHolderName, accountHolderAddress, iban, bic, openingDate, closingDate, transactions, issueDate, issuerName, siret, repaymentDate, }) => {
|
|
92
|
+
return (_jsxs(Box, { style: styles.container, direction: "column", justifyContent: "spaceBetween", children: [_jsxs(Box, { direction: "row", justifyContent: "spaceBetween", alignItems: "start", children: [_jsxs(Box, { direction: "row", alignItems: "center", children: [isNotNullishOrEmpty(partnerLogoUrl) ? (_jsx("img", { src: partnerLogoUrl, style: logoStyle })) : (_jsx(SwanLogo, { style: styles.defaultLogo })), _jsx(Separator, { horizontal: true, space: 8 }), _jsx(LakeText, { style: styles.mediumText, children: t("accountStatement.partnership") }), _jsx(Space, { width: 4 }), _jsx(SwanLogo, { color: colors.gray[900], style: styles.swanLogo })] }), _jsxs(Box, { children: [_jsx(LakeText, { style: styles.pageTitle, children: t("creditStatement.titleDocument") }), _jsx(LakeText, { style: styles.text, color: colors.gray[700], children: accountHolderType === "Company"
|
|
93
|
+
? t("accountStatement.titleDocument.companyDescription")
|
|
94
|
+
: t("accountStatement.titleDocument.individualDescription") }), _jsx(LakeText, { align: "right", style: styles.smallText, children: t("creditStatement.issueDate", {
|
|
95
|
+
issueDate: dayjs(issueDate).format(locale.dateFormat),
|
|
96
|
+
}) })] })] }), _jsx(Space, { height: 12 }), _jsxs(Box, { direction: "column", children: [_jsx(LakeText, { style: styles.sectionTitle, children: accountHolderName }), _jsx(Space, { height: 16 }), _jsx(LakeText, { style: styles.address, children: accountHolderAddress.addressLine1 }), isNotNullish(accountHolderAddress.addressLine2) && (_jsx(LakeText, { children: accountHolderAddress.addressLine2 })), _jsx(LakeText, { style: styles.address, children: `${accountHolderAddress.postalCode} ${accountHolderAddress.city}, ${getCountryName(accountHolderAddress.country)}` })] }), _jsx(Space, { height: 12 }), _jsxs(Box, { direction: "row", children: [_jsxs(Box, { direction: "column", grow: 1, children: [_jsxs(Box, { direction: "row", alignItems: "center", children: [_jsx(LakeText, { variant: "semibold", style: styles.mediumText, color: colors.gray[900], children: t("accountStatement.iban") }), _jsx(Space, { width: 4 }), _jsx(LakeText, { color: colors.gray[500], style: styles.mediumText, children: printFormat(iban) })] }), _jsx(Space, { height: 4 }), _jsxs(Box, { direction: "row", alignItems: "center", children: [_jsx(LakeText, { variant: "semibold", style: styles.mediumText, color: colors.gray[900], children: t("accountStatement.bic") }), _jsx(Space, { width: 4 }), _jsx(LakeText, { color: colors.gray[500], style: styles.mediumText, children: bic })] })] }), _jsxs(Box, { direction: "column", grow: 1, children: [_jsx(LakeText, { variant: "semibold", style: styles.mediumText, color: colors.gray[900], children: issuerName }), _jsx(Space, { height: 4 }), _jsxs(Box, { direction: "row", alignItems: "center", children: [_jsx(LakeText, { variant: "semibold", style: styles.mediumText, children: t("creditStatement.siret") }), _jsx(Space, { width: 4 }), _jsx(LakeText, { color: colors.gray[500], style: styles.mediumText, children: siret })] })] })] }), _jsx(Space, { height: 24 }), _jsx(LakeText, { color: colors.gray[500], style: styles.smallText, children: formatNestedMessage("creditStatement.additionalDetails", {
|
|
97
|
+
bold: chunk => (_jsx(LakeText, { color: colors.gray[900], variant: "semibold", style: { fontSize: 12 }, children: chunk })),
|
|
98
|
+
openingDate: dayjs(openingDate).format(locale.dateFormat),
|
|
99
|
+
closingDate: dayjs(closingDate).format(locale.dateFormat),
|
|
100
|
+
repaymentDate: dayjs(repaymentDate).format(locale.dateFormat),
|
|
101
|
+
}) }), _jsx(Space, { height: 24 }), _jsx(Box, { direction: "row", justifyContent: "spaceBetween", children: _jsx(Box, { direction: "column", justifyContent: "end", children: _jsx(LakeText, { style: styles.subtitle, color: colors.gray[900], children: t("accountStatement.date", {
|
|
102
|
+
openingDate: dayjs(openingDate).format(locale.dateFormat),
|
|
103
|
+
closingDate: dayjs(closingDate).format(locale.dateFormat),
|
|
104
|
+
}) }) }) }), _jsx(Space, { height: 16 }), _jsxs(_Fragment, { children: [_jsxs(Box, { direction: "row", children: [_jsx(LakeText, { style: [styles.titleColumn, { width: "15%" }], color: colors.gray[700], children: t("accountStatement.column.date") }), _jsx(LakeText, { style: [styles.titleColumn, { width: "55%" }], color: colors.gray[700], children: t("accountStatement.column.description") }), _jsx(LakeText, { style: [styles.titleColumn, { width: "15%", textAlign: "right" }], color: colors.gray[700], children: t("creditStatement.column.debit") }), _jsx(LakeText, { style: [styles.titleColumn, { width: "15%", textAlign: "right" }], color: colors.gray[700], children: t("creditStatement.column.credit") })] }), _jsx(Space, { height: 12 }), _jsx(Box, { direction: "column", children: transactions.map(({ transactionAmount, transactionDate, transactionLabel, transactionSide, transactionType, transactionId, counterparty, maskedPan, }) => (_jsxs(_Fragment, { children: [_jsxs(Box, { direction: "row", children: [_jsx(LakeText, { style: [styles.smallText, { width: "15%" }], color: colors.gray[700], children: dayjs(transactionDate).format(locale.dateFormat) }), _jsxs(Box, { direction: "column", style: { width: "55%" }, children: [_jsx(LakeText, { style: styles.smallText, color: colors.gray[700], children: `${translateTransaction(transactionType)} ${transactionLabel}` }), _jsx(LakeText, { style: styles.smallText, color: colors.gray[500], children: `${counterparty} ${maskedPan ? formatMaskedPan(maskedPan) : ""}` })] }), _jsx(LakeText, { color: colors.gray[700], style: [styles.smallText, styles.rightColumnContent], children: transactionSide === "Debit" ? `- ${transactionAmount.value}` : "" }), _jsx(LakeText, { color: colors.gray[700], style: [styles.smallText, styles.rightColumnContent], children: transactionSide === "Credit" ? transactionAmount.value : "" })] }, transactionId), _jsx(Space, { height: 8 })] }))) })] }), _jsx(Space, { height: 24 })] }));
|
|
130
105
|
};
|
|
131
106
|
export const CreditStatement = (props) => match(props)
|
|
132
107
|
.with({ version: "v1" }, props => _jsx(CreditStatementV1, { ...props }))
|
package/src/locales/de.json
CHANGED
|
@@ -67,8 +67,11 @@
|
|
|
67
67
|
"common.skipToContent": "Zum Inhalt springen",
|
|
68
68
|
"copyButton.copiedTooltip": "In die Zwischenablage kopiert",
|
|
69
69
|
"copyButton.copyTooltip": "Zum Kopieren anklicken",
|
|
70
|
+
"creditStatement.additionalDetails": "Der Kontoauszug vom <bold>{openingDate}</bold> bis <bold>{closingDate}</bold> enthält alle Gebühren und erhaltenen Zahlungen bis zum {closingDate}. Ihre nächste automatische Lastschrift erfolgt ab {repaymentDate}.\n\nIm Falle einer abgelehnten Bankabbuchung aufgrund unzureichender Mittel können wir diese Abbuchung mindestens <bold>3 bis 4 Tage</bold> nach der Benachrichtigung durch Ihre Bank erneut einreichen.",
|
|
70
71
|
"creditStatement.column.credit": "Gutschrift",
|
|
71
72
|
"creditStatement.column.debit": "Lastschrift",
|
|
73
|
+
"creditStatement.issueDate": "Ausgabedatum {issueDate}",
|
|
74
|
+
"creditStatement.siret": "SIRET",
|
|
72
75
|
"creditStatement.titleDocument": "Rückzahlungsaufstellung",
|
|
73
76
|
"datePicker.day": "Tag",
|
|
74
77
|
"datePicker.day.friday": "Freitag",
|
package/src/locales/en.json
CHANGED
|
@@ -24,6 +24,9 @@
|
|
|
24
24
|
"creditStatement.titleDocument": "Repayment statement",
|
|
25
25
|
"creditStatement.column.credit": "Credit",
|
|
26
26
|
"creditStatement.column.debit": "Debit",
|
|
27
|
+
"creditStatement.issueDate": "Issue date {issueDate}",
|
|
28
|
+
"creditStatement.siret": "SIRET",
|
|
29
|
+
"creditStatement.additionalDetails": "The statement from <bold>{openingDate}</bold> to <bold>{closingDate}</bold> includes all fees and payments received up to {closingDate}. Your next automatic debit will occur starting from {repaymentDate}.\n\nIn the event of a rejected bank withdrawal due to insufficient funds, we may represent this withdrawal at least <bold>3 to 4 days</bold> after the rejection notified by your bank.",
|
|
27
30
|
"addressFormPart.addressLabel": "Type your address",
|
|
28
31
|
"addressFormPart.cityLabel": "City",
|
|
29
32
|
"addressFormPart.placeholder": "Start typing…",
|
package/src/locales/es.json
CHANGED
|
@@ -67,8 +67,11 @@
|
|
|
67
67
|
"common.skipToContent": "Saltar al contenido",
|
|
68
68
|
"copyButton.copiedTooltip": "Copiado al portapapeles",
|
|
69
69
|
"copyButton.copyTooltip": "Haz clic para copiar",
|
|
70
|
+
"creditStatement.additionalDetails": "El estado de cuenta desde <bold>{openingDate}</bold> hasta <bold>{closingDate}</bold> incluye todas las comisiones y pagos recibidos hasta el {closingDate}. Tu próximo débito automático se realizará a partir del {repaymentDate}.\n\nEn caso de un rechazo de retiro bancario debido a fondos insuficientes, podemos representar este retiro al menos <bold>3 a 4 días</bold> después del rechazo notificado por tu banco.",
|
|
70
71
|
"creditStatement.column.credit": "Crédito",
|
|
71
72
|
"creditStatement.column.debit": "Débito",
|
|
73
|
+
"creditStatement.issueDate": "Fecha de emisión {issueDate}",
|
|
74
|
+
"creditStatement.siret": "SIRET",
|
|
72
75
|
"creditStatement.titleDocument": "Estado de reembolso",
|
|
73
76
|
"datePicker.day": "Día",
|
|
74
77
|
"datePicker.day.friday": "Viernes",
|
package/src/locales/fi.json
CHANGED
|
@@ -67,8 +67,11 @@
|
|
|
67
67
|
"common.skipToContent": "Ohita ja siirry sisältöön",
|
|
68
68
|
"copyButton.copiedTooltip": "Kopioitu leikepöydälle",
|
|
69
69
|
"copyButton.copyTooltip": "Kopioi napsauttamalla",
|
|
70
|
+
"creditStatement.additionalDetails": "Tiliote ajalta <bold>{openingDate}</bold> - <bold>{closingDate}</bold> sisältää kaikki maksut ja saapuneet maksut {closingDate} asti. Seuraava automaattinen veloitus tapahtuu {repaymentDate} alkaen.\n\nJos pankkisiirto hylätään riittämättömien varojen vuoksi, voimme edustaa tätä siirtoa vähintään <bold>3-4 päivää</bold> hylkäyksen jälkeen, jonka pankkisi on ilmoittanut.",
|
|
70
71
|
"creditStatement.column.credit": "Hyvitys",
|
|
71
72
|
"creditStatement.column.debit": "Velka",
|
|
73
|
+
"creditStatement.issueDate": "Päiväys {issueDate}",
|
|
74
|
+
"creditStatement.siret": "SIRET",
|
|
72
75
|
"creditStatement.titleDocument": "Takaisinmaksuilmoitus",
|
|
73
76
|
"datePicker.day": "Päivä",
|
|
74
77
|
"datePicker.day.friday": "Perjantai",
|
package/src/locales/fr.json
CHANGED
|
@@ -67,8 +67,11 @@
|
|
|
67
67
|
"common.skipToContent": "Aller au contenu",
|
|
68
68
|
"copyButton.copiedTooltip": "Copié dans le presse-papier",
|
|
69
69
|
"copyButton.copyTooltip": "Cliquez pour copier",
|
|
70
|
+
"creditStatement.additionalDetails": "Le relevé du <bold>{openingDate}</bold> au <bold>{closingDate}</bold> inclut tous les frais et paiements reçus jusqu'au {closingDate}. Votre prochain prélèvement automatique débutera à partir du {repaymentDate}.\n\nEn cas de rejet de prélèvement bancaire pour insuffisance de fonds, nous pouvons représenter ce prélèvement au moins <bold>3 à 4 jours</bold> après le rejet notifié par votre banque.",
|
|
70
71
|
"creditStatement.column.credit": "Crédit",
|
|
71
72
|
"creditStatement.column.debit": "Débit",
|
|
73
|
+
"creditStatement.issueDate": "Date d'émission {issueDate}",
|
|
74
|
+
"creditStatement.siret": "SIRET",
|
|
72
75
|
"creditStatement.titleDocument": "Relevé de remboursement",
|
|
73
76
|
"datePicker.day": "Jour",
|
|
74
77
|
"datePicker.day.friday": "Vendredi",
|
package/src/locales/it.json
CHANGED
|
@@ -67,8 +67,11 @@
|
|
|
67
67
|
"common.skipToContent": "Salta al contenuto",
|
|
68
68
|
"copyButton.copiedTooltip": "Copiato negli appunti",
|
|
69
69
|
"copyButton.copyTooltip": "Clicca per copiare",
|
|
70
|
+
"creditStatement.additionalDetails": "Il rendiconto dal <bold>{openingDate}</bold> al <bold>{closingDate}</bold> include tutte le commissioni e i pagamenti ricevuti fino al {closingDate}. Il prossimo addebito automatico avverrà a partire dal {repaymentDate}.\n\nIn caso di mancato prelievo bancario a causa di fondi insufficienti, potremmo rappresentare questo prelievo almeno <bold>3 o 4 giorni</bold> dopo il rifiuto comunicato dalla tua banca.",
|
|
70
71
|
"creditStatement.column.credit": "Credito",
|
|
71
72
|
"creditStatement.column.debit": "Addebito",
|
|
73
|
+
"creditStatement.issueDate": "Data di emissione {issueDate}",
|
|
74
|
+
"creditStatement.siret": "SIRET",
|
|
72
75
|
"creditStatement.titleDocument": "Riepilogo dei rimborsi",
|
|
73
76
|
"datePicker.day": "Giorno",
|
|
74
77
|
"datePicker.day.friday": "Venerdì",
|
package/src/locales/nl.json
CHANGED
|
@@ -67,8 +67,11 @@
|
|
|
67
67
|
"common.skipToContent": "Doorgaan naar artikel",
|
|
68
68
|
"copyButton.copiedTooltip": "Gekopieerd naar klembord",
|
|
69
69
|
"copyButton.copyTooltip": "Klik om te kopiëren",
|
|
70
|
+
"creditStatement.additionalDetails": "Het overzicht van <bold>{openingDate}</bold> tot <bold>{closingDate}</bold> omvat alle kosten en ontvangen betalingen tot {closingDate}. Uw volgende automatische incasso zal starten vanaf {repaymentDate}.\n\nBij een geweigerde bankafschrijving wegens onvoldoende saldo, kunnen wij deze afschrijving op zijn vroegst <bold>3 tot 4 dagen</bold> na de melding van uw bank opnieuw aanbieden.",
|
|
70
71
|
"creditStatement.column.credit": "Credit",
|
|
71
72
|
"creditStatement.column.debit": "Debit",
|
|
73
|
+
"creditStatement.issueDate": "Uitgiftedatum {issueDate}",
|
|
74
|
+
"creditStatement.siret": "SIRET",
|
|
72
75
|
"creditStatement.titleDocument": "Terugbetalingsverklaring",
|
|
73
76
|
"datePicker.day": "Dag",
|
|
74
77
|
"datePicker.day.friday": "Vrijdag",
|
package/src/locales/pt.json
CHANGED
|
@@ -67,8 +67,11 @@
|
|
|
67
67
|
"common.skipToContent": "Saltar para o conteúdo",
|
|
68
68
|
"copyButton.copiedTooltip": "Copiado para a área de transferência",
|
|
69
69
|
"copyButton.copyTooltip": "Clique para copiar",
|
|
70
|
+
"creditStatement.additionalDetails": "O extrato de <bold>{openingDate}</bold> a <bold>{closingDate}</bold> inclui todas as taxas e pagamentos recebidos até {closingDate}. Seu próximo débito automático ocorrerá a partir de {repaymentDate}.\n\nNo caso de uma retirada bancária rejeitada devido a fundos insuficientes, podemos representar esta retirada pelo menos <bold>3 a 4 dias</bold> após a rejeição notificada pelo seu banco.",
|
|
70
71
|
"creditStatement.column.credit": "Crédito",
|
|
71
72
|
"creditStatement.column.debit": "Débito",
|
|
73
|
+
"creditStatement.issueDate": "Data de emissão {issueDate}",
|
|
74
|
+
"creditStatement.siret": "SIRET",
|
|
72
75
|
"creditStatement.titleDocument": "Declaração de reembolso",
|
|
73
76
|
"datePicker.day": "Dia",
|
|
74
77
|
"datePicker.day.friday": "Sexta-feira",
|