diff --git a/src/i18n/locales/fr.ts b/src/i18n/locales/fr.ts new file mode 100644 index 00000000..b8759d2b --- /dev/null +++ b/src/i18n/locales/fr.ts @@ -0,0 +1,288 @@ +import { LanguageMetadata } from '../types'; + +export const fr = { + translation: { + menu: { + file: { + file: 'Fichier', + new: 'Nouveau', + open: 'Ouvrir', + save: 'Enregistrer', + import_database: 'Importer Base de Données', + export_sql: 'Exporter SQL', + export_as: 'Exporter en tant que', + delete_diagram: 'Supprimer le Diagramme', + exit: 'Quitter', + }, + edit: { + edit: 'Éditer', + undo: 'Annuler', + redo: 'Rétablir', + clear: 'Effacer', + }, + view: { + view: 'Affichage', + show_sidebar: 'Afficher la Barre Latérale', + hide_sidebar: 'Cacher la Barre Latérale', + hide_cardinality: 'Cacher la Cardinalité', + show_cardinality: 'Afficher la Cardinalité', + zoom_on_scroll: 'Zoom sur le Défilement', + theme: 'Thème', + change_language: 'Langue', + }, + help: { + help: 'Aide', + visit_website: 'Visiter ChartDB', + join_discord: 'Rejoignez-nous sur Discord', + schedule_a_call: 'Parlez avec nous !', + }, + }, + + delete_diagram_alert: { + title: 'Supprimer le Diagramme', + description: + 'Cette action est irréversible. Cela supprimera définitivement le diagramme.', + cancel: 'Annuler', + delete: 'Supprimer', + }, + + clear_diagram_alert: { + title: 'Effacer le Diagramme', + description: + 'Cette action est irréversible. Cela supprimera définitivement toutes les données dans le diagramme.', + cancel: 'Annuler', + clear: 'Effacer', + }, + + reorder_diagram_alert: { + title: 'Réorganiser le Diagramme', + description: + 'Cette action réorganisera toutes les tables dans le diagramme. Voulez-vous continuer ?', + reorder: 'Réorganiser', + cancel: 'Annuler', + }, + + theme: { + system: 'Système', + light: 'Clair', + dark: 'Sombre', + }, + + zoom: { + on: 'Activé', + off: 'Désactivé', + }, + + last_saved: 'Dernière sauvegarde', + saved: 'Enregistré', + diagrams: 'Diagrammes', + loading_diagram: 'Chargement du diagramme...', + deselect_all: 'Tout désélectionner', + select_all: 'Tout sélectionner', + clear: 'Effacer', + show_more: 'Afficher Plus', + show_less: 'Afficher Moins', + + side_panel: { + schema: 'Schéma:', + filter_by_schema: 'Filtrer par schéma', + search_schema: 'Rechercher un schéma...', + no_schemas_found: 'Aucun schéma trouvé.', + view_all_options: 'Voir toutes les Options...', + tables_section: { + tables: 'Tables', + add_table: 'Ajouter une Table', + filter: 'Filtrer', + collapse: 'Réduire Tout', + + table: { + fields: 'Champs', + nullable: 'Nullable?', + primary_key: 'Clé Primaire', + indexes: 'Index', + comments: 'Commentaires', + no_comments: 'Pas de commentaires', + add_field: 'Ajouter un Champ', + add_index: 'Ajouter un Index', + index_select_fields: 'Sélectionner des champs', + no_types_found: 'Aucun type trouvé', + field_name: 'Nom', + field_type: 'Type', + field_actions: { + title: 'Attributs du Champ', + unique: 'Unique', + comments: 'Commentaires', + no_comments: 'Pas de commentaires', + delete_field: 'Supprimer le Champ', + }, + index_actions: { + title: 'Attributs de l\'Index', + name: 'Nom', + unique: 'Unique', + delete_index: 'Supprimer l\'Index', + }, + table_actions: { + title: 'Actions de la Table', + add_field: 'Ajouter un Champ', + add_index: 'Ajouter un Index', + delete_table: 'Supprimer la Table', + }, + }, + empty_state: { + title: 'Aucune table', + description: 'Créez une table pour commencer', + }, + }, + relationships_section: { + relationships: 'Relations', + filter: 'Filtrer', + add_relationship: 'Ajouter une Relation', + collapse: 'Réduire Tout', + relationship: { + primary: 'Table Principale', + foreign: 'Table Référencée', + cardinality: 'Cardinalité', + delete_relationship: 'Supprimer', + relationship_actions: { + title: 'Actions', + delete_relationship: 'Supprimer', + }, + }, + empty_state: { + title: 'Aucune relation', + description: 'Créez une relation pour connecter les tables', + }, + }, + }, + + toolbar: { + zoom_in: 'Zoom Avant', + zoom_out: 'Zoom Arrière', + save: 'Enregistrer', + show_all: 'Afficher Tout', + undo: 'Annuler', + redo: 'Rétablir', + reorder_diagram: 'Réorganiser le Diagramme', + }, + + new_diagram_dialog: { + database_selection: { + title: 'Quelle est votre Base de Données ?', + description: + 'Chaque base de données a ses propres fonctionnalités et capacités uniques.', + check_examples_long: 'Voir les Exemples', + check_examples_short: 'Exemples', + }, + + import_database: { + title: 'Importer votre Base de Données', + database_edition: 'Édition de la Base de Données:', + step_1: 'Exécutez ce script dans votre base de données:', + step_2: 'Collez le résultat du script ici:', + script_results_placeholder: 'Résultats du script ici...', + ssms_instructions: { + button_text: 'Instructions SSMS', + title: 'Instructions', + step_1: 'Allez dans Outils > Options > Résultats des Requêtes > SQL Server.', + step_2: 'Si vous utilisez "Résultats en Grille", changez le nombre maximum de caractères récupérés pour les données non-XML (définir à 9999999).', + }, + }, + + cancel: 'Annuler', + back: 'Retour', + empty_diagram: 'Diagramme vide', + continue: 'Continuer', + import: 'Importer', + }, + + open_diagram_dialog: { + title: 'Ouvrir Diagramme', + description: 'Sélectionnez un diagramme à ouvrir dans la liste ci-dessous.', + table_columns: { + name: 'Nom', + created_at: 'Créé le', + last_modified: 'Dernière modification', + tables_count: 'Tables', + }, + cancel: 'Annuler', + open: 'Ouvrir', + }, + + export_sql_dialog: { + title: 'Exporter SQL', + description: + 'Exportez le schéma de votre diagramme en script {{databaseType}}', + close: 'Fermer', + loading: { + text: 'L\'IA génère un SQL pour {{databaseType}}...', + description: 'Cela devrait prendre jusqu\'à 30 secondes.', + }, + error: { + message: + 'Erreur lors de la génération du script SQL. Veuillez réessayer plus tard ou <0>contactez-nous.', + description: + 'N\'hésitez pas à utiliser votre OPENAI_TOKEN, voir le manuel <0>ici.', + }, + }, + + create_relationship_dialog: { + title: 'Créer une Relation', + primary_table: 'Table Principale', + primary_field: 'Champ Principal', + referenced_table: 'Table Référencée', + referenced_field: 'Champ Référencé', + primary_table_placeholder: 'Sélectionner une table', + primary_field_placeholder: 'Sélectionner un champ', + referenced_table_placeholder: 'Sélectionner une table', + referenced_field_placeholder: 'Sélectionner un champ', + no_tables_found: 'Aucune table trouvée', + no_fields_found: 'Aucun champ trouvé', + create: 'Créer', + cancel: 'Annuler', + }, + + import_database_dialog: { + title: 'Importer dans le Diagramme Actuel', + override_alert: { + title: 'Importer Base de Données', + content: { + alert: 'L\'importation de ce diagramme affectera les tables et relations existantes.', + new_tables: + '{{newTablesNumber}} nouvelles tables seront ajoutées.', + new_relationships: + '{{newRelationshipsNumber}} nouvelles relations seront créées.', + tables_override: + '{{tablesOverrideNumber}} tables seront écrasées.', + proceed: 'Voulez-vous continuer ?', + }, + import: 'Importer', + cancel: 'Annuler', + }, + }, + + relationship_type: { + one_to_one: 'Un à Un', + one_to_many: 'Un à Plusieurs', + many_to_one: 'Plusieurs à Un', + many_to_many: 'Plusieurs à Plusieurs', + }, + + canvas_context_menu: { + new_table: 'Nouvelle Table', + new_relationship: 'Nouvelle Relation', + }, + + table_node_context_menu: { + edit_table: 'Éditer la Table', + delete_table: 'Supprimer la Table', + }, + }, +}; + +export const frMetadata: LanguageMetadata = { + name: 'Français', + code: 'fr', +}; + + +