From 8986ec2543605046af4993cea1e62a69b034fc66 Mon Sep 17 00:00:00 2001 From: Philipp Kunz Date: Mon, 2 Dec 2024 15:20:57 +0100 Subject: [PATCH] feat(translation): Add French and Italian translations for document interface --- changelog.md | 7 +++++ ts/00_commitinfo_data.ts | 2 +- ts/shared/translation.ts | 50 +++++++++++++++++++++++++++++++++--- ts_web/00_commitinfo_data.ts | 2 +- 4 files changed, 55 insertions(+), 6 deletions(-) diff --git a/changelog.md b/changelog.md index 3082280..3f15f14 100644 --- a/changelog.md +++ b/changelog.md @@ -1,5 +1,12 @@ # 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) Minor updates and optimizations in the output PDF formatting process. diff --git a/ts/00_commitinfo_data.ts b/ts/00_commitinfo_data.ts index ac9ef4f..8033d5a 100644 --- a/ts/00_commitinfo_data.ts +++ b/ts/00_commitinfo_data.ts @@ -3,6 +3,6 @@ */ export const commitinfo = { 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.' } diff --git a/ts/shared/translation.ts b/ts/shared/translation.ts index 68de73c..6bbe7db 100644 --- a/ts/shared/translation.ts +++ b/ts/shared/translation.ts @@ -40,7 +40,7 @@ export const DE_translations: TTranslationImplementation = { yourCustomerId: 'Ihre Kundennummer:', yourVatId: 'Ihre Umsatzsteuer-ID:', continuesOnPage: 'Fortsetzung auf Seite', - finalPageStatement: 'Diese ist die letzte Seite einer Dokumente.', + finalPageStatement: 'Dies ist die letzte Seite dieses Dokuments.', page: 'Seite', }; @@ -53,21 +53,63 @@ export const ES_translations: TTranslationImplementation = { itemPos: 'Pos.', quantity: 'Cantidad', 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', unitNetPrice: 'Precio unitario neto', unitType: 'Tipo de unidad', yourCustomerId: 'Su número de cliente:', yourVatId: 'Su ID de IVA:', - continuesOnPage: 'Continues on page', - finalPageStatement: 'This is the final page of this document.', + continuesOnPage: 'Continúa en la página', + 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', }; +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 = { 'DE': DE_translations, 'EN': EN_translations, 'ES': ES_translations, + 'FR': FR_translations, + 'IT': IT_translations, }; export type TLanguageCode = keyof typeof languageCodeMap; diff --git a/ts_web/00_commitinfo_data.ts b/ts_web/00_commitinfo_data.ts index ac9ef4f..8033d5a 100644 --- a/ts_web/00_commitinfo_data.ts +++ b/ts_web/00_commitinfo_data.ts @@ -3,6 +3,6 @@ */ export const commitinfo = { 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.' }