Presupuestador_web/client/src/locales/fr.json

662 lines
26 KiB
JSON
Raw Normal View History

{
"translation": {
2026-10-13 16:20:06 +00:00
"app_update": {
"available": "Une nouvelle version est disponible.",
"load_error": "Une partie de l’application n’a pas pu être chargée. Rechargez pour réessayer.",
"save_first": "Enregistrez les modifications en attente avant de recharger.",
"reload": "Recharger"
},
"common": {
"required": "obligatoire",
"cancel": "Annuler",
"no": "Non",
"yes": "Oui",
"save": "Enregistrer",
"save_close": "Enregistrer et fermer",
"discard": "Abandonner",
"hide": "Masquer",
"back": "Retour",
"upload": "Téléverser",
"continue": "Continuer",
"close": "Fermer",
"more": "Plus",
"pagination": "Pagination",
2026-10-14 10:00:19 +00:00
"breadcrumb": "Fil d’Ariane",
"previous": "Précédent",
"next": "Suivant",
2026-10-14 10:00:19 +00:00
"more_pages": "Plus de pages",
"previous_slide": "Diapositive précédente",
"next_slide": "Diapositive suivante",
"add": "Ajouter",
"submit": "Envoyer",
"download": "Télécharger",
"help": "Aide",
2026-10-14 10:00:19 +00:00
"select_all": "Tout sélectionner",
"select_row": "Sélectionner la ligne",
"sort_asc": "Croissant",
"sort_asc_description": "Ordre croissant. Cliquez pour trier par ordre décroissant.",
"sort_desc": "Décroissant",
"sort_desc_description": "Ordre décroissant. Cliquez pour trier par ordre croissant.",
"sort_none_description": "Aucun tri. Cliquez pour trier par ordre croissant.",
"rows_selected": "{{count}} ligne(s) sélectionnée(s).",
"rows_selected_of_total": "{{count}} ligne(s) sélectionnée(s) sur {{total}}.",
"rows_per_page": "Lignes par page",
"num_page_of_total": "Page {{count}} sur {{total}}",
"go_to_first_page": "Aller à la première page",
"go_to_prev_page": "Aller à la page précédente",
"go_to_next_page": "Aller à la page suivante",
"go_to_last_page": "Aller à la dernière page",
"error": "Erreur",
"actions": "Actions",
2026-10-14 10:00:19 +00:00
"open_menu": "Ouvrir le menu",
"duplicate_row": "Dupliquer",
"duplicate_selected_rows": "Dupliquer",
"duplicate_selected_rows_tooltip": "Dupliquer les lignes sélectionnées",
"append_empty_row": "Ajouter une ligne",
"append_empty_row_tooltip": "Ajouter une ligne vide",
"append_article": "Ajouter un article",
"append_article_tooltip": "Choisir un article du catalogue et l’ajouter",
"append_block": "Ajouter un bloc de texte",
"append_block_tooltip": "Choisir un bloc de texte et l’ajouter",
"move_row": "Déplacer la ligne",
"remove_row": "Supprimer",
"remove_selected_rows": "Supprimer",
"remove_selected_rows_tooltip": "Supprimer les lignes sélectionnées",
"reset_selected_rows": "Désélectionner",
"reset_selected_rows_tooltip": "Désélectionner les lignes sélectionnées",
"insert_row_above": "Insérer une ligne au-dessus",
"insert_row_below": "Insérer une ligne en dessous",
"pick_date": "Choisir une date",
"today": "Aujourd’hui",
"required_field": "Ce champ est obligatoire",
"edit": "Modifier",
"remove": "Supprimer",
"archive": "Archiver",
"duplicate": "Dupliquer",
2026-10-14 10:00:19 +00:00
"disable_preview": "Masquer l’aperçu",
"enable_preview": "Afficher l’aperçu",
"filter": {
"reset_filter": "Réinitialiser le filtre",
"badget_remove_tooltip": "Retirer ce terme du filtre",
"input_placeholder": "Saisissez du texte pour filtrer…",
"button_add_term": "Ajouter un terme au filtre",
"button_add_term_tooltip": "Ajouter un terme au filtre (ou appuyer sur Entrée)",
"help_text": "Appuyez sur Entrée ou cliquez sur le bouton + pour ajouter un terme au filtre. Utilisez plusieurs termes pour élargir la recherche."
},
"company": "Entreprise",
"phone": "Téléphone",
"name": "Nom",
"identifier": "Identifiant",
"confirmation": "Confirmation",
"product_image": "Image du produit"
},
"components": {
"loading_indicator": {
"title": "Chargement…"
},
"loading_overlay": {
"title": "Chargement…",
"subtitle": "Cela peut prendre quelques secondes. Veuillez ne pas fermer cette page."
},
"error_overlay": {
"title": "Une erreur s’est produite",
"go_home": "Aller à l’accueil"
},
"empty_state": {
"title": "C’est très vide ici",
"subtitle": "Commencez par demander le chargement du catalogue",
"button": "Demander le chargement du catalogue"
},
"data_table": {
"columns": "Colonnes",
"no_results": "Aucun résultat trouvé.",
"clear_filters": "Effacer les filtres",
"selected_count": "{{count}} sélectionné(s)"
2026-10-14 10:00:19 +00:00
},
"sortable_data_table": {
"snooze": "Reporter",
"snooze_until": "Reporter jusqu’à",
"later_today": "Plus tard aujourd’hui",
"tomorrow": "Demain",
"this_weekend": "Ce week-end",
"next_week": "La semaine prochaine",
"reply": "Répondre",
"reply_all": "Répondre à tous",
"forward": "Transférer"
}
},
"hooks": {
"use_unsaved_changes_notifier": {
"title": "Des modifications ont été détectées",
"subtitle": "Attention, des modifications ne sont pas enregistrées sur cette page.\nSi vous continuez, vous les perdrez.",
"confirm_text": "Continuer",
"cancel_text": "Ne pas continuer"
}
},
"main_menu": {
"toggle_navigation": "Basculer le menu de navigation",
"settings": "Paramètres",
"catalog": "Catalogue",
"quotes": "Devis",
"search_placeholder": "Rechercher des produits, devis, etc.",
"user": {
"user_menu": "Menu utilisateur",
"my_account": "Mon compte",
"profile": "Profil",
"settings": "Paramètres",
"support": "Assistance",
"logout": "Se déconnecter"
},
"logout_dialog": {
"title": "Se déconnecter",
"description": "Voulez-vous vous déconnecter ?",
"confirm_label": "Se déconnecter",
"cancel_label": "Annuler"
}
},
"login_page": {
"title": "Outil de devis pour distributeurs",
"description": "Saisissez votre adresse e-mail et votre mot de passe pour accéder",
"email_label": "E-mail",
"email_placeholder": "monemail@exemple.com",
"password_label": "Mot de passe",
"forgotten_password": "Mot de passe oublié ?",
"become_dealer": "Vous souhaitez devenir distributeur Uecko ?",
"contact_us": "Contactez-nous",
2026-10-14 10:00:19 +00:00
"login": "Se connecter",
"invalid_credentials": "L’adresse e-mail ou le mot de passe est incorrect.",
"validation": {
"email_required": "L’adresse e-mail est obligatoire.",
"email_invalid": "Saisissez une adresse e-mail valide.",
"password_required": "Le mot de passe est obligatoire.",
"password_min": "Le mot de passe doit contenir au moins {{count}} caractères.",
"password_alphanum": "Le mot de passe ne peut contenir que des lettres et des chiffres."
}
},
"dashboard": {
"welcome": "Bienvenue"
},
"catalog": {
"list": {
"title": "Catalogue d’articles",
"empty_state": {
"subtitle": "Commencez par charger les articles du catalogue"
},
"columns": {
"description": "Description",
"points": "Points",
"retail_price": "Prix public",
"quantity": "Quantité"
}
}
},
"quotes": {
"list": {
"title": "Devis",
"subtitle": "",
"tabs_title": "États",
"select_status": "Sélectionner un état",
"preview_aria": "Afficher l’aperçu du devis",
"empty_state": {
"subtitle": "Commencez par créer un devis"
},
2026-10-14 10:00:19 +00:00
"status_help": {
"title": "Aide sur le statut des devis",
"intro": "Le statut d’un devis indique sa position actuelle dans le processus commercial.",
"possible": "Les statuts possibles sont :",
"outro": "Utilisez ces statuts pour suivre efficacement vos devis et optimiser votre processus de vente. Le statut Archivé permet de conserver l’historique sans interférer avec les devis actifs."
},
"tabs": {
"all": "Tous",
"draft": "Brouillons",
"ready": "Prêts",
"delivered": "Livrés",
"accepted": "Acceptés",
"rejected": "Refusés",
"archived": "Archivés"
},
"columns": {
"date": "Date",
"date_sent": "Envoyé à Uecko",
"reference": "Référence",
"status": "État",
"customer_reference": "Réf. client",
"customer_information": "Client",
"total_price": "Montant total"
},
"resume": {
"title": "Devis",
"tabs": {
"resume": "Résumé",
"preview": "Aperçu"
},
"quote_information": "Informations",
"customer_information": "Client",
"price_information": "Montants",
"select_quote": "Sélectionnez un devis"
}
},
"notifications": {
"created": "Devis créé",
"saved": "Devis enregistré",
"saving": "Enregistrement du devis"
},
"pdf_generation": {
"title": "Génération du PDF",
"error": "Erreur lors de la génération du PDF",
"progress": "Progression : {{percentage}}%",
"elapsed": "Temps écoulé : {{elapsed}} secondes",
"remaining": "Temps restant estimé : {{estimatedTime}} secondes",
"cancel": "Annuler la génération"
},
"create": {
"title": "Nouveau devis",
"form_groups": {
"general": {
"title": "Données générales",
"desc": "Données générales et client auquel le devis est destiné"
},
"status": {
"title": "État",
"desc": "État du devis"
},
"documents": {
"title": "Documents",
"desc": "Ajoutez à votre devis des documents tels que photos, plans, croquis, etc.",
"images": "Images"
}
}
},
"edit": {
"title": "Devis",
"buttons": {
"save_quote": "Enregistrer le devis"
}
},
"duplicate_action": {
"toast_success": "Devis dupliqué"
},
"downloading_dialog": {
"title": "Téléchargement du devis",
"description": "Veuillez patienter pendant la génération et le téléchargement du devis au format PDF…",
"progress": {
"label": "Le téléchargement est {{status}}",
"status_in_progress": "en cours",
"status_stopped": "arrêté"
},
"cancel_button": "Annuler le téléchargement",
2026-10-14 10:00:19 +00:00
"toast_success": "Devis téléchargé",
"error": "Le devis n’a pas pu être téléchargé. Veuillez réessayer."
},
"catalog_picker_dialog": {
"title": "Sélectionner des articles du catalogue",
"description": "Pour compléter votre devis, vous pouvez ajouter des articles du catalogue.",
"toast_article_added": "Article du catalogue ajouté :"
},
"blocks_picker_dialog": {
"title": "Sélectionner des blocs de texte",
"description": "Pour vous aider à compléter le devis, vous pouvez ajouter des blocs de texte prédéfinis de cette liste.",
"toast_article_added": "Bloc de texte ajouté :"
},
"quote_sent_to_editor": {
"trigger_button": "Envoyer à Uecko",
"title": "Envoyer le devis à Uecko",
"description": "Voulez-vous envoyer ce devis à Uecko ? Cette action est irréversible.",
"toast_status_changed": "Devis envoyé à Uecko"
},
2026-10-14 10:00:19 +00:00
"quote_status_editor": {
"trigger_button": "Changer le statut",
"title": "Changer le statut du devis",
"status": {
"draft": {
"title": "Brouillon",
"description": "Le devis est en cours de création."
},
"ready": {
"title": "Prêt",
"description": "Le devis est complet et prêt à être envoyé au client."
},
"delivered": {
"title": "Envoyé",
"description": "Le devis a été envoyé au client et une réponse est attendue."
},
"accepted": {
"title": "Accepté",
"description": "Le client a approuvé le devis."
},
"rejected": {
"title": "Refusé",
"description": "Le client n’a pas accepté le devis."
},
"archived": {
"title": "Archivé",
"description": "Le devis a été conservé pour référence future."
}
},
"submit_button": "Changer le statut",
"toast_status_changed": "Statut du devis modifié : {{newStatus}}"
},
"discount_column": {
"label": "Afficher la colonne de remise",
"description": "Afficher ou masquer la colonne de remise dans les lignes.",
"confirmation": {
"title": "Masquer les remises par ligne",
"description": "Certaines lignes comportent une remise. Masquer la colonne ne supprimera pas ces remises : elles continueront à être prises en compte dans le montant du devis, mais ne seront plus affichées dans les lignes ni dans le PDF.",
"confirm": "Masquer la colonne"
}
},
"additional_currency": {
"title": "Devise supplémentaire",
"description": "Afficher, si nécessaire, le montant total du devis dans une autre devise.",
"enabled": "Afficher dans une autre devise",
"currency": "Devise",
"date": "Date du taux de change",
"rate": "Taux de change (1 EUR = …)",
"refresh": "Actualiser le taux de change",
"total": "Total en {{code}}"
},
"inline_row_actions": {
"delete_confirmation": {
"title": "Supprimer la ligne",
"description": "Voulez-vous vraiment supprimer cette ligne ? Cette action est irréversible.",
"confirm": "Supprimer la ligne"
}
},
"status": {
"draft": "Brouillon",
"ready": "Prêt",
"delivered": "Livré",
"accepted": "Accepté",
"rejected": "Refusé",
"archived": "Archivé"
},
"form_fields": {
"date": {
"label": "Date",
"desc": "Date de ce devis",
"placeholder": ""
},
"reference": {
"label": "Référence",
"desc": "Référence de ce devis",
"placeholder": ""
},
"lang_code": {
"label": "Langue du document",
"desc": "Langue utilisée pour générer le devis au format PDF",
"placeholder": "",
"options": {
"es": "Espagnol",
"en": "Anglais",
"fr": "Français"
}
},
"currency_code": {
"label": "Devise",
"desc": "Devise du devis",
"placeholder": ""
},
"customer_reference": {
"label": "Référence client",
"desc": "Référence client de ce devis",
"placeholder": ""
},
"customer_information": {
"label": "Informations client",
"desc": "Indiquez le nom, l’adresse, le code postal et la ville du client.",
"placeholder": "Nom et prénom\nRue et numéro\nCode postal et ville…"
},
"payment_method": {
"label": "Mode de paiement",
"placeholder": "",
"desc": "Mode de paiement utilisé pour ce devis"
},
"notes": {
"label": "Notes",
"placeholder": "",
"desc": "Notes à inclure dans le devis"
},
"validity": {
"label": "Validité du devis",
"placeholder": "",
"desc": "Validité de ce devis"
},
"subtotal_price": {
"label": "Montant net",
"placeholder": "",
2026-10-14 10:00:19 +00:00
"desc": "Sous-total du devis"
},
"discount": {
"label": "Remise (%)",
"placeholder": "",
"desc": "Pourcentage de remise"
},
2026-10-14 10:00:19 +00:00
"discount_value": {
"label": "Remise ({{value}}%)",
"placeholder": "",
"desc": "Pourcentage de remise"
},
"discount_price": {
"label": "Montant de la remise",
"placeholder": "",
"desc": "Montant de la remise"
},
"before_tax_price": {
"label": "Base imposable",
"placeholder": "",
2026-10-14 10:00:19 +00:00
"desc": "Base imposable"
},
"tax": {
"label": "Taxe (%)",
"placeholder": "",
"desc": "Pourcentage de taxe"
},
2026-10-14 10:00:19 +00:00
"tax_value": {
"label": "{{label}} ({{value}}%)",
"placeholder": "",
"desc": "Pourcentage de taxe"
},
"tax_price": {
"label": "Montant de la taxe",
"placeholder": "",
"desc": "Montant de la taxe"
},
"total_price": {
"label": "Montant total",
"placeholder": "",
"desc": "Montant total"
},
"items": {
"quantity": {
"label": "Quantité",
"placeholder": "",
"desc": ""
},
"description": {
"label": "Description",
"placeholder": "",
"desc": ""
},
"unit_price": {
"label": "Prix unitaire",
"placeholder": "",
"desc": "Prix unitaire de l’article"
},
"subtotal_price": {
"label": "Sous-total",
"placeholder": "",
"desc": ""
},
"discount": {
"label": "Remise (%)",
"placeholder": "",
"desc": "Pourcentage de remise"
},
"total_price": {
"label": "Montant total",
"placeholder": "",
"desc": "Montant total après application de la remise"
}
}
2026-10-19 11:55:16 +00:00
},
"empty_details": {
"title": "Ce devis ne contient encore aucune ligne",
"description": "Ajoutez une ligne vide, choisissez des articles du catalogue ou insérez un bloc de texte."
},
2026-10-19 11:55:16 +00:00
"chapters": {
"add": "Ajouter un chapitre",
"create_description": "La création du premier chapitre regroupe tous les détails existants.",
"description": "Description",
"title": "Titre du chapitre {{number}}",
"title_required": "La description du chapitre est obligatoire.",
"select": "Sélectionner le chapitre {{number}}",
"folder_help": "Faites glisser pour déplacer tout le chapitre. Clic ou Entrée pour replier/déplier ; Espace pour déplacer au clavier.",
2026-10-19 11:55:16 +00:00
"move": "Déplacer le chapitre {{number}}",
"collapse": "Replier le chapitre {{number}}",
"expand": "Déplier le chapitre {{number}}",
"duplicate": "Dupliquer le chapitre {{number}}",
"remove": "Supprimer le chapitre {{number}}",
"subtotal": "Sous-total du chapitre {{number}}. {{description}}",
"empty_title": "Ce chapitre ne contient aucun détail",
"empty": "Ajoutez une ligne, des articles ou un bloc de texte, ou glissez des détails ici.",
"select_details": "Sélectionner les détails du chapitre {{number}}",
"show_amounts": "Montants par ligne en PDF",
2026-10-19 11:55:16 +00:00
"mixed_selection": "Pour déplacer la sélection, sélectionnez uniquement des chapitres ou uniquement des détails.",
"drag_instructions": "Appuyez sur espace pour commencer, utilisez les flèches haut et bas, puis appuyez à nouveau sur espace pour déposer. Échap annule.",
"drag_start": "Déplacement commencé.",
"drag_over": "Destination du déplacement mise à jour.",
"drag_end": "Déplacement terminé.",
"drag_cancel": "Déplacement annulé.",
"delete_chapter_title": "Supprimer le chapitre",
"delete_chapter_description": "Lignes concernées : {{details}}. Choisissez de les conserver ou de les supprimer.",
"delete_details_description": "Lignes sélectionnées : {{details}}. Seules ces lignes seront supprimées ; leurs chapitres seront conservés.",
"keep_details_title": "Conserver les lignes",
"choose_destination": "Sélectionnez un autre chapitre",
"transfer_description": "Le chapitre sera retiré. Ses lignes seront déplacées vers la destination choisie et conserveront leurs montants.",
"transfer_action": "Déplacer les lignes et retirer le chapitre",
"keep_ungroup_description": "C’est le dernier chapitre. En le retirant, ses lignes ne seront plus regroupées et conserveront leurs montants.",
"keep_ungroup_action": "Retirer le chapitre et conserver les lignes",
"delete_all_title": "Supprimer le chapitre et ses lignes",
"delete_all_description": "Le chapitre et toutes ses lignes seront supprimés du devis.",
2026-10-19 11:55:16 +00:00
"delete_title": "Supprimer la sélection",
"delete_description": "La sélection concerne {{chapters}} chapitres et {{details}} détails. Vous pouvez supprimer le contenu ou le conserver en retirant un chapitre.",
"destination": "Chapitre de destination",
"transfer": "Déplacer et conserver les détails",
"ungroup": "Retirer tous les chapitres",
"ungroup_keep": "Retirer les chapitres et conserver les détails",
"delete_content": "Supprimer le contenu sélectionné",
"ungroup_description": "Tous les chapitres seront retirés. Les détails, leurs montants et leur ordre seront conservés."
}
},
"settings": {
"edit": {
"title": "Paramètres",
"tabs": {
"profile": "Paramètres du profil",
"quotes": "Paramètres des devis",
"legal": "Paramètres juridiques"
}
},
"form_fields": {
"language": {
"label": "Langue",
"placeholder": "Sélectionnez une langue",
"desc": "Langue préférée de l’interface",
"options": {
"es": "Espagnol",
"en": "Anglais",
"fr": "Français"
}
},
"logo": {
"label": "Logo",
"desc": "Ce logo apparaîtra dans les propositions exportées au format PDF",
"requirements": "Les fichiers JPG ou PNG sont acceptés.",
"upload": "Téléverser le logo",
"invalid_format": "Seuls les fichiers JPG ou PNG sont acceptés",
"invalid_dimensions": "Les dimensions du logo sont invalides."
},
"contact_information": {
"label": "Informations de contact",
"placeholder": "",
"desc": "Ces coordonnées apparaîtront dans les devis remis à vos clients."
},
"default_tax": {
"label": "Taxe par défaut (%)",
"placeholder": "",
"desc": "Pourcentage de taxe par défaut dans les devis"
},
"default_tax_label": {
"placeholder": "% TVA",
"desc": "Libellé affiché à côté de la taxe"
},
"default_show_line_discount_column": {
"label": "Afficher la colonne de remise par défaut",
"desc": "Les nouveaux devis afficheront initialement la colonne de remise."
},
"default_legal_terms": {
"label": "Clauses juridiques",
"placeholder": "",
"desc": "Texte juridique à inclure dans les nouveaux devis"
},
"default_payment_method": {
"label": "Mode de paiement",
"placeholder": "",
"desc": "Texte utilisé dans les nouveaux devis"
},
"default_notes": {
"label": "Notes",
"placeholder": "",
"desc": "Notes à inclure dans les nouveaux devis"
},
"default_quote_validity": {
"label": "Validité par défaut",
"placeholder": "",
"desc": "Durée de validité du devis"
}
},
"notifications": {
"saved": "Paramètres enregistrés",
"saving": "Enregistrement des paramètres"
}
},
"support": {
"modal": {
"title": "Envoyer une incidence",
"subtitle": "Utilisez ce formulaire pour signaler un problème rencontré pendant l’utilisation de l’application.",
"open": "Ouvrir la fenêtre d’assistance",
"placeholder": "Décrivez l’incidence ici…",
"submit": "Envoyer l’incidence",
"validation": {
"empty": "Vous devez écrire quelque chose avant d’envoyer",
"min": "Le texte est trop court.",
"max": "Le texte est trop long.",
"required": "La description est obligatoire"
},
"notifications": {
"sent_title": "Incident envoyé",
"sent_description": "L’incident a été envoyé correctement",
"error_title": "Erreur d’envoi",
"error_description": "L’incident n’a pas pu être envoyé. Veuillez réessayer."
},
"cancel_confirmation": {
"title": "Voulez-vous annuler ?",
"description": "Vous perdrez les modifications non enregistrées.",
"back": "Retour au formulaire",
"confirm": "Oui, fermer"
}
},
"form_fields": {}
2026-10-14 10:00:19 +00:00
},
"app": {
"title": "Outil de devis Uecko",
"javascript_required": "Vous devez activer JavaScript pour utiliser cette application."
},
"error_page": {
"title": "Page introuvable",
"description": "La page que vous recherchez n’existe pas ou a été déplacée.",
"go_home": "Aller à l’accueil"
}
}
}