Prechádzať zdrojové kódy

Merge branch 'main' into bloc_test

appflowy 3 rokov pred
rodič
commit
c9424c5d55

+ 145 - 0
frontend/app_flowy/assets/translations/fr.json

@@ -0,0 +1,145 @@
+{
+  "appName": "AppFlowy",
+  "defaultUsername": "Moi",
+  "welcomeText": "Bienvenue à @:appName",
+  "githubStarText": "Favorier sur GitHub",
+  "subscribeNewsletterText": "S'inscrire à la Bulletin",
+  "letsGoButtonText": "Allons-y",
+  "title": "Titre",
+  "signUp": {
+    "buttonText": "S'inscrire",
+    "title": "Inscrivez-vous pour @:appName",
+    "getStartedText": "Commencer",
+    "emptyPasswordError": "Mot de passe ne peut pas être vide",
+    "repeatPasswordEmptyError": "Le mot de passe de répétition ne peut pas être vide",
+    "unmatchedPasswordError": "Le mot de passe de répétition n'est pas le même que le mot de passe",
+    "alreadyHaveAnAccount": "Vous avez déjà un compte?",
+    "emailHint": "Email",
+    "passwordHint": "Mot de passe",
+    "repeatPasswordHint": "Répéter le mot de passe"
+  },
+  "signIn": {
+    "loginTitle": "Connexion à @:appName",
+    "loginButtonText": "Connexion",
+    "buttonText": "Se connecter",
+    "forgotPassword": "Mot de passe oublié?",
+    "emailHint": "Email",
+    "passwordHint": "Mot de passe",
+    "dontHaveAnAccount": "Don't have an account?",
+    "repeatPasswordEmptyError": "Le mot de passe de répétition ne peut pas être vide",
+    "unmatchedPasswordError": "Le mot de passe de répétition n'est pas le même que le mot de passe"
+  },
+  "workspace": {
+    "create": "Créer un espace de travail",
+    "hint": "espace de travail",
+    "notFoundError": "L'espace de travail pas trouvé"
+  },
+  "shareAction": {
+    "buttonText": "Partager",
+    "workInProgress": "Bientôt disponible",
+    "markdown": "Markdown",
+    "copyLink": "Copier Lien"
+  },
+  "disclosureAction": {
+    "rename": "Renommer",
+    "delete": "Supprimer",
+    "duplicate": "Dupliquer"
+  },
+  "blankPageTitle": "Page vierge",
+  "newPageText": "Nouvelle page",
+  "trash": {
+    "text": "Corbeille",
+    "restoreAll": "Restaurer Tout",
+    "deleteAll": "Supprimer Tout",
+    "pageHeader": {
+      "fileName": "Nom de fichier",
+      "lastModified": "Dernière Modification",
+      "created": "Créé"
+    }
+  },
+  "deletePagePrompt": {
+    "text": "Cette page est dans la corbeille",
+    "restore": "Restaurer la page",
+    "deletePermanent": "Supprimer définitivement"
+  },
+  "dialogCreatePageNameHint": "Nom de la page",
+  "questionBubble": {
+    "whatsNew": "Nouveautés",
+    "help": "Aide et Support",
+    "debug": {
+      "name": "Informations de Débogage",
+      "success": "Informations de débogage copiées dans le presse-papiers!",
+      "fail": "Impossible de copier informations de débogage dans le presse-papiers"
+    }
+  },
+  "menuAppHeader": {
+    "addPageTooltip": "Ajoutez rapidement une page à l'intérieur",
+    "defaultNewPageName": "Sans-titre",
+    "renameDialog": "Renommer"
+  },
+  "toolbar": {
+    "undo": "Annuler",
+    "redo": "Rétablir",
+    "bold": "Gras",
+    "italic": "Italique",
+    "underline": "Souligner",
+    "strike": "Barré",
+    "numList": "Liste Numérotée",
+    "bulletList": "Liste à Puces",
+    "checkList": "Liste de Contrôle",
+    "inlineCode": "Code en Ligne",
+    "quote": "Bloc Citation",
+    "header": "En-tête",
+    "highlight": "Surligner"
+  },
+  "tooltip": {
+    "lightMode": "Passer en Mode Clair",
+    "darkMode": "Passer en Mode Sombre"
+  },
+  "contactsPage": {
+    "title": "Contacts",
+    "whatsHappening": "Que se passe-t-il cette semaine?",
+    "addContact": "Ajouter un contact",
+    "editContact": "Modifier le contact"
+  },
+  "button": {
+    "OK": "OK",
+    "Cancel": "Annuler",
+    "signIn": "Se Connecter",
+    "signOut": "Se Déconnecter",
+    "complete": "Complêt",
+    "save": "Enregistrer"
+  },
+  "label": {
+    "welcome": "Bienvenue!",
+    "firstName": "Prénom",
+    "middleName": "Deuxième prénom",
+    "lastName": "Nom",
+    "stepX": "Étape {X}"
+  },
+  "oAuth": {
+    "err": {
+      "failedTitle": "Impossible de se connecter à votre compte.",
+      "failedMsg": "Assurez-vous d'avoir terminé le processus de connexion dans votre navigateur."
+    },
+    "google": {
+      "title": "CONNEXION GOOGLE",
+      "instruction1": "Pour importer vos contacts Google, vous devez autoriser cette application à l'aide de votre navigateur web.",
+      "instruction2": "Copiez ce code dans votre presse-papiers en cliquant sur l'icône ou en sélectionnant le texte:",
+      "instruction3": "Accédez au lien suivant dans votre navigateur web et saisissez le code ci-dessus:",
+      "instruction4": "Appuyez sur le bouton ci-dessous lorsque vous avez terminé votre inscription:"
+    }
+  },
+  "settings": {
+    "title": "Paramètres",
+    "menu": {
+      "appearance": "Apparence",
+      "language": "Langue",
+      "open": "Ouvrir les Paramètres"
+    },
+    "appearance": {
+      "lightLabel": "Mode Clair",
+      "darkLabel": "Mode Sombre"
+    }
+  }
+}

+ 1 - 0
frontend/app_flowy/lib/startup/tasks/app_widget.dart

@@ -31,6 +31,7 @@ class ApplicationWidgetTask extends LaunchTask {
               // In alphabetical order
               Locale('en'),
               Locale('es', 'VE'),
+              Locale('fr'),
               Locale('fr', 'CA'),
               Locale('it', 'IT'),
               Locale('ru', 'RU'),