feat(translation): Add French and Italian translations for document interface

This commit is contained in:
Philipp Kunz 2024-12-02 15:20:57 +01:00
parent 49c15a98e4
commit 8986ec2543
4 changed files with 55 additions and 6 deletions

View File

@ -1,5 +1,12 @@
# Changelog # Changelog
## 2024-12-02 - 1.4.0 - feat(translation)
Add French and Italian translations for document interface
- Expanded translation support by adding French and Italian language translations
- Fixed duplicated text in German final page statement
- Improved Spanish translation of reverse VAT note and final page statement
## 2024-12-02 - 1.3.2 - fix(core) ## 2024-12-02 - 1.3.2 - fix(core)
Minor updates and optimizations in the output PDF formatting process. Minor updates and optimizations in the output PDF formatting process.

View File

@ -3,6 +3,6 @@
*/ */
export const commitinfo = { export const commitinfo = {
name: '@design.estate/dees-document', name: '@design.estate/dees-document',
version: '1.3.2', version: '1.4.0',
description: 'A sophisticated framework for dynamically generating and rendering business documents like invoices with modern web technologies, featuring PDF creation, templating, and automation.' description: 'A sophisticated framework for dynamically generating and rendering business documents like invoices with modern web technologies, featuring PDF creation, templating, and automation.'
} }

View File

@ -40,7 +40,7 @@ export const DE_translations: TTranslationImplementation = {
yourCustomerId: 'Ihre Kundennummer:', yourCustomerId: 'Ihre Kundennummer:',
yourVatId: 'Ihre Umsatzsteuer-ID:', yourVatId: 'Ihre Umsatzsteuer-ID:',
continuesOnPage: 'Fortsetzung auf Seite', continuesOnPage: 'Fortsetzung auf Seite',
finalPageStatement: 'Diese ist die letzte Seite einer Dokumente.', finalPageStatement: 'Dies ist die letzte Seite dieses Dokuments.',
page: 'Seite', page: 'Seite',
}; };
@ -53,21 +53,63 @@ export const ES_translations: TTranslationImplementation = {
itemPos: 'Pos.', itemPos: 'Pos.',
quantity: 'Cantidad', quantity: 'Cantidad',
registrationInfo: 'Información de registro', registrationInfo: 'Información de registro',
reverseVatNote: 'La declaración de IVA se aplica en base a la factura de venta, y se paga por el cliente.', reverseVatNote: 'El IVA se aplica por inversión del sujeto pasivo y debe ser pagado por el cliente.',
totalNetPrice: 'Precio total neto', totalNetPrice: 'Precio total neto',
unitNetPrice: 'Precio unitario neto', unitNetPrice: 'Precio unitario neto',
unitType: 'Tipo de unidad', unitType: 'Tipo de unidad',
yourCustomerId: 'Su número de cliente:', yourCustomerId: 'Su número de cliente:',
yourVatId: 'Su ID de IVA:', yourVatId: 'Su ID de IVA:',
continuesOnPage: 'Continues on page', continuesOnPage: 'Continúa en la página',
finalPageStatement: 'This is the final page of this document.', finalPageStatement: 'Esta es la última página de este documento.',
page: 'Página',
};
export const FR_translations: TTranslationImplementation = {
address: 'Adresse',
bankConnection: 'Coordonnées bancaires',
contactInfo: 'Informations de contact',
description: 'Description',
invoice: 'Facture',
itemPos: 'Position',
quantity: 'Quantité',
registrationInfo: 'Informations d\'enregistrement',
reverseVatNote: 'La TVA s\'applique selon le mécanisme d\'autoliquidation et est à payer par le client.',
totalNetPrice: 'Prix net total',
unitNetPrice: 'Prix unitaire net',
unitType: 'Type d\'unité',
yourCustomerId: 'Votre numéro de client :',
yourVatId: 'Votre numéro de TVA :',
continuesOnPage: 'Continue sur la page',
finalPageStatement: 'Ceci est la dernière page de ce document.',
page: 'Page', page: 'Page',
}; };
export const IT_translations: TTranslationImplementation = {
address: 'Indirizzo',
bankConnection: 'Coordinate bancarie',
contactInfo: 'Informazioni di contatto',
description: 'Descrizione',
invoice: 'Fattura',
itemPos: 'Pos.',
quantity: 'Quantità',
registrationInfo: 'Informazioni di registrazione',
reverseVatNote: 'L\'IVA è applicata con inversione contabile ed è a carico del cliente.',
totalNetPrice: 'Prezzo netto totale',
unitNetPrice: 'Prezzo netto unitario',
unitType: 'Tipo di unità',
yourCustomerId: 'Il tuo numero cliente:',
yourVatId: 'Il tuo numero di partita IVA:',
continuesOnPage: 'Continua alla pagina',
finalPageStatement: 'Questa è l\'ultima pagina di questo documento.',
page: 'Pagina',
};
export const languageCodeMap = { export const languageCodeMap = {
'DE': DE_translations, 'DE': DE_translations,
'EN': EN_translations, 'EN': EN_translations,
'ES': ES_translations, 'ES': ES_translations,
'FR': FR_translations,
'IT': IT_translations,
}; };
export type TLanguageCode = keyof typeof languageCodeMap; export type TLanguageCode = keyof typeof languageCodeMap;

View File

@ -3,6 +3,6 @@
*/ */
export const commitinfo = { export const commitinfo = {
name: '@design.estate/dees-document', name: '@design.estate/dees-document',
version: '1.3.2', version: '1.4.0',
description: 'A sophisticated framework for dynamically generating and rendering business documents like invoices with modern web technologies, featuring PDF creation, templating, and automation.' description: 'A sophisticated framework for dynamically generating and rendering business documents like invoices with modern web technologies, featuring PDF creation, templating, and automation.'
} }