diff --git a/src/locales/fr.json b/src/locales/fr.json new file mode 100644 index 0000000..0e2460a --- /dev/null +++ b/src/locales/fr.json @@ -0,0 +1,71 @@ +{ + "locale_name": "Français", + "invariants": { + "controls": { + "cancel": "Annuler", + "close": "Fermer", + "copy": "Copier", + "delete": "Supprimer" + } + }, + "navbar": { + "addAccount": "Nouveau compte", + "manageAccounts": "Comptes", + "config": "Préférences", + "about": "À propos" + }, + "about": { + "title": "À propos", + "name": "Sub-Address KEy (SAKE) app", + "version": "Version : {version}", + "license": "Licence : {mit} ou {apache}", + "repository": "Dépôt : {url}", + "close": "@:invariants.controls.close" + }, + "addAccount": { + "title": "Nouveau compte", + "localPart": "Partie locale", + "separator": "Séparateur", + "domainName": "Nom de domaine", + "privateKey": "Clé privée", + "scan": "Scanner", + "addAccount": "Ajouter", + "cancel": "@:invariants.controls.cancel", + "error": { + "invalidBase64": "La clé doit être une chaîne de caractère en base64.", + "invalidSeparator": "La séparateur doit être un unique caractère.", + "cameraNotAllowed": "L'accès à la caméra n'a pas été autorisé.", + "cameraNotFound": "Aucune caméra détectée.", + "cameraInsecureContext": "Impossible d'accéder à la caméra depuis une liaison non-sécurisée.", + "cameraNotReadable": "Caméra inaccessible (potentiellement déjà utilisée).", + "cameraOverconstrained": "Les caméras détectées ne sont pas compatibles.", + "cameraStreamApiNotSupported": "L'API du flux de données vidéo n'est pas supportée par ce navigateur.", + "unknown": "Erreur inconnue." + } + }, + "config": { + "title": "Préférences", + "language": "Langue", + "close": "@:invariants.controls.close" + }, + "deleteAccount": { + "title": "Supprimer le compte", + "account": "Vous êtes sur le point de supprimer le compte suivant :", + "confirm": "Souhaitez-vous vraiment continuer ?", + "delete": "@:invariants.controls.delete", + "cancel": "@:invariants.controls.cancel" + }, + "main": { + "title": "Nouvelle adresse", + "account": "Compte", + "name": "Nom", + "input": "Nom dédié", + "address": "Adresse", + "copy": "@:invariants.controls.copy" + }, + "manageAccounts": { + "title": "Comptes", + "delete": "@:invariants.controls.delete", + "close": "@:invariants.controls.close" + } +} diff --git a/src/main.js b/src/main.js index c7b114b..a82ee82 100644 --- a/src/main.js +++ b/src/main.js @@ -7,6 +7,7 @@ import App from './App.vue'; import router from './router'; import msg_en from './locales/en.json'; +import msg_fr from './locales/fr.json'; const default_locale = 'en' const stored_locale = useStorage('sake-locale', ''); @@ -16,6 +17,7 @@ if (!stored_locale.value) { const messages = { en: msg_en, + fr: msg_fr, }; const i18n = createI18n({ locale: stored_locale.value,