From 402c83d40d44a35948637c9c2a9a7d160ac148f1 Mon Sep 17 00:00:00 2001 From: tristan Date: Tue, 2 Jun 2026 09:37:49 +0000 Subject: [PATCH] feat(front) : i18n + cles M1 repertoire clients (#43) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ERP-61 (1.8) — Socle i18n du module M1 Repertoire clients. ## Perimetre - Ajout du sous-objet `commercial.clients` dans `frontend/i18n/locales/fr.json` : title, add, export, empty, column.* (6), tab.* (8), action.* (3), toast.* (5), validation.* (9 messages miroirs RG-1.04/1.10/1.11/1.12/1.13/1.14/1.20/1.21/1.29). - Item sidebar deja porte par le back (`config/sidebar.php`, route /clients, permission commercial.clients.view) — aucun code front en dur. Usine sans `view` => item masque automatiquement. - Cles existantes (sidebar.commercial.clients, commercial.title/welcome) non dupliquees. ## Verifications - JSON valide, indentation 4 espaces, aucune cle dupliquee. - `make nuxt-test` : 103/103 OK (usePermissions / useSidebar verts). - Pas de E2E (regle n7). Pre-requis de 1.9 (ERP-62). Reviewed-on: https://gitea.malio.fr/MALIO-DEV/Starseed/pulls/43 Co-authored-by: tristan Co-committed-by: tristan --- frontend/i18n/locales/fr.json | 49 ++++++++++++++++++++++++++++++++++- 1 file changed, 48 insertions(+), 1 deletion(-) diff --git a/frontend/i18n/locales/fr.json b/frontend/i18n/locales/fr.json index af8d223..9ff45c5 100644 --- a/frontend/i18n/locales/fr.json +++ b/frontend/i18n/locales/fr.json @@ -44,7 +44,54 @@ }, "commercial": { "title": "Commercial", - "welcome": "Module Commercial" + "welcome": "Module Commercial", + "clients": { + "title": "Répertoire clients", + "add": "Ajouter", + "export": "Exporter", + "empty": "Aucun client pour l'instant.", + "column": { + "companyName": "Nom entreprise", + "contact": "Contact principal", + "phone": "Téléphone principal", + "email": "Email principal", + "categories": "Catégories", + "sites": "Site(s)" + }, + "tab": { + "information": "Information", + "contact": "Contact", + "address": "Adresse", + "transport": "Transport", + "accounting": "Comptabilité", + "statistics": "Statistiques", + "reports": "Rapports", + "exchanges": "Échanges" + }, + "action": { + "edit": "Modifier", + "archive": "Archiver", + "restore": "Restaurer" + }, + "toast": { + "createSuccess": "Client créé avec succès", + "updateSuccess": "Client mis à jour avec succès", + "archiveSuccess": "Client archivé avec succès", + "restoreSuccess": "Client restauré avec succès", + "error": "Une erreur est survenue. Réessayez." + }, + "validation": { + "informationRequiredForCommercial": "Les informations de l'entreprise sont obligatoires pour le rôle Commerciale.", + "contactRequired": "Au moins un contact (nom ou prénom) est obligatoire.", + "siteRequired": "Au moins un site Starseed doit être rattaché à l'adresse.", + "billingEmailRequired": "L'email de facturation est obligatoire pour une adresse de facturation.", + "bankRequiredForTransfer": "La banque est obligatoire pour un règlement par virement.", + "ribRequiredForLcr": "Au moins un RIB complet est obligatoire pour un règlement par LCR.", + "phoneFormat": "Format de téléphone invalide (attendu : XX XX XX XX XX).", + "emailFormat": "Format d'email invalide.", + "addressCategoryForbidden": "Une catégorie « Distributeur » ou « Courtier » ne peut pas qualifier une adresse." + } + } }, "auth": { "login": "Connexion",