feat: add admin/profile UI, i18n (fr/de/pt), fix CI pipelines
- Add admin panel link and profile modal in user menu dropdown - Add French, German and Portuguese locale support (full translations) - Register new locales across JS frontend and Rust backend - Create CI pipeline (fmt, clippy, test, audit, build) - Fix docker-build.yml (cache, real tests, reduced timeout) - Fix docker-publish.yml (multi-arch via QEMU, latest tag, pre-publish tests) - Add dependabot.yml for automated dependency updates
This commit is contained in:
@@ -0,0 +1,338 @@
|
||||
{
|
||||
"app": {
|
||||
"title": "OxiCloud",
|
||||
"description": "Système de stockage cloud minimaliste"
|
||||
},
|
||||
"nav": {
|
||||
"files": "Fichiers",
|
||||
"shared": "Partagés",
|
||||
"recent": "Récents",
|
||||
"favorites": "Favoris",
|
||||
"trash": "Corbeille"
|
||||
},
|
||||
"actions": {
|
||||
"search": "Rechercher des fichiers...",
|
||||
"new_folder": "Nouveau dossier",
|
||||
"upload": "Téléverser",
|
||||
"upload_files": "Téléverser des fichiers",
|
||||
"upload_folder": "Téléverser un dossier",
|
||||
"rename": "Renommer",
|
||||
"move": "Déplacer vers...",
|
||||
"move_to": "Déplacer vers",
|
||||
"delete": "Supprimer",
|
||||
"download": "Télécharger",
|
||||
"view": "Afficher",
|
||||
"cancel": "Annuler",
|
||||
"confirm": "Confirmer",
|
||||
"share": "Partager",
|
||||
"favorite": "Ajouter aux favoris",
|
||||
"unfavorite": "Retirer des favoris",
|
||||
"copy": "Copier",
|
||||
"notify": "Notifier",
|
||||
"send": "Envoyer",
|
||||
"clear_recent": "Effacer les récents",
|
||||
"logout": "Se déconnecter",
|
||||
"create": "Créer",
|
||||
"search_btn": "Rechercher",
|
||||
"close": "Fermer",
|
||||
"delete_permanently": "Supprimer définitivement",
|
||||
"empty_trash": "Vider la corbeille"
|
||||
},
|
||||
"user_menu": {
|
||||
"appearance": "Apparence",
|
||||
"about": "À propos d'OxiCloud",
|
||||
"about_description": "Plateforme de stockage cloud construite avec Rust et Architecture Propre. Rapide, sécurisée et privée.",
|
||||
"admin_panel": "Panneau d'administration",
|
||||
"profile": "Mon profil",
|
||||
"role_user": "Utilisateur"
|
||||
},
|
||||
"share": {
|
||||
"dialogTitle": "Lien de partage",
|
||||
"linkLabel": "Lien partagé :",
|
||||
"copyLink": "Copier",
|
||||
"permissions": "Permissions :",
|
||||
"permissionRead": "Lecture",
|
||||
"permissionWrite": "Écriture",
|
||||
"permissionReshare": "Repartager",
|
||||
"password": "Protection par mot de passe :",
|
||||
"generatePassword": "Générer",
|
||||
"expiration": "Date d'expiration :",
|
||||
"update": "Mettre à jour le partage",
|
||||
"remove": "Supprimer le partage",
|
||||
"notifyTitle": "Envoyer une notification",
|
||||
"notifyEmailLabel": "Adresse e-mail :",
|
||||
"notifyMessageLabel": "Message (facultatif) :",
|
||||
"notifySend": "Envoyer la notification",
|
||||
"shareWithOthers": "Partager avec d'autres",
|
||||
"sharePublicly": "Partager publiquement",
|
||||
"shareSettings": "Paramètres de partage",
|
||||
"shareCopied": "Lien copié dans le presse-papiers",
|
||||
"shareCreated": "Lien de partage créé avec succès",
|
||||
"shareUpdated": "Paramètres de partage mis à jour",
|
||||
"shareRemoved": "Partage supprimé avec succès"
|
||||
},
|
||||
"share_dialogTitle": "Lien de partage",
|
||||
"share_linkLabel": "Lien partagé :",
|
||||
"share_copyLink": "Copier",
|
||||
"share_permissions": "Permissions :",
|
||||
"share_permissionRead": "Lecture",
|
||||
"share_permissionWrite": "Écriture",
|
||||
"share_permissionReshare": "Repartager",
|
||||
"share_password": "Protection par mot de passe :",
|
||||
"share_generatePassword": "Générer",
|
||||
"share_expiration": "Date d'expiration :",
|
||||
"share_update": "Mettre à jour le partage",
|
||||
"share_remove": "Supprimer le partage",
|
||||
"share_notifyTitle": "Envoyer une notification",
|
||||
"share_notifyEmailLabel": "Adresse e-mail :",
|
||||
"share_notifyMessageLabel": "Message (facultatif) :",
|
||||
"share_notifySend": "Envoyer la notification",
|
||||
"shared": {
|
||||
"backToFiles": "Retour aux fichiers",
|
||||
"pageTitle": "Ressources partagées",
|
||||
"pageDescription": "Gérez vos fichiers et dossiers partagés",
|
||||
"filterType": "Type :",
|
||||
"filterAll": "Tous",
|
||||
"filterFiles": "Fichiers",
|
||||
"filterFolders": "Dossiers",
|
||||
"sortBy": "Trier par :",
|
||||
"sortByName": "Nom",
|
||||
"sortByDate": "Date de partage",
|
||||
"sortByExpiration": "Expiration",
|
||||
"search": "Rechercher",
|
||||
"colName": "Nom",
|
||||
"colType": "Type",
|
||||
"colDateShared": "Date de partage",
|
||||
"colExpiration": "Expiration",
|
||||
"colPermissions": "Permissions",
|
||||
"colPassword": "Mot de passe",
|
||||
"colActions": "Actions",
|
||||
"emptyStateTitle": "Aucune ressource partagée",
|
||||
"emptyStateDesc": "Lorsque vous partagerez des fichiers ou dossiers, ils apparaîtront ici",
|
||||
"goToFiles": "Aller aux fichiers",
|
||||
"typeFile": "Fichier",
|
||||
"typeFolder": "Dossier",
|
||||
"noExpiration": "Sans expiration",
|
||||
"hasPassword": "Oui",
|
||||
"noPassword": "Non",
|
||||
"editShare": "Modifier le partage",
|
||||
"notifyShare": "Notifier quelqu'un",
|
||||
"copyLink": "Copier le lien",
|
||||
"removeShare": "Supprimer le partage",
|
||||
"linkCopied": "Lien copié dans le presse-papiers !",
|
||||
"linkCopyFailed": "Erreur lors de la copie du lien",
|
||||
"itemUpdated": "Paramètres de partage mis à jour",
|
||||
"itemRemoved": "Partage supprimé avec succès",
|
||||
"invalidEmail": "Veuillez entrer une adresse e-mail valide",
|
||||
"notificationSent": "Notification envoyée avec succès",
|
||||
"notificationFailed": "Erreur lors de l'envoi de la notification"
|
||||
},
|
||||
"shared_backToFiles": "Retour aux fichiers",
|
||||
"shared_pageTitle": "Ressources partagées",
|
||||
"shared_pageDescription": "Gérez vos fichiers et dossiers partagés",
|
||||
"shared_filterType": "Type :",
|
||||
"shared_filterAll": "Tous",
|
||||
"shared_filterFiles": "Fichiers",
|
||||
"shared_filterFolders": "Dossiers",
|
||||
"shared_sortBy": "Trier par :",
|
||||
"shared_sortByName": "Nom",
|
||||
"shared_sortByDate": "Date de partage",
|
||||
"shared_sortByExpiration": "Expiration",
|
||||
"shared_search": "Rechercher",
|
||||
"shared_colName": "Nom",
|
||||
"shared_colType": "Type",
|
||||
"shared_colDateShared": "Date de partage",
|
||||
"shared_colExpiration": "Expiration",
|
||||
"shared_colPermissions": "Permissions",
|
||||
"shared_colPassword": "Mot de passe",
|
||||
"shared_colActions": "Actions",
|
||||
"shared_emptyStateTitle": "Aucune ressource partagée",
|
||||
"shared_emptyStateDesc": "Lorsque vous partagerez des fichiers ou dossiers, ils apparaîtront ici",
|
||||
"shared_goToFiles": "Aller aux fichiers",
|
||||
"shared_typeFile": "Fichier",
|
||||
"shared_typeFolder": "Dossier",
|
||||
"shared_noExpiration": "Sans expiration",
|
||||
"shared_hasPassword": "Oui",
|
||||
"shared_noPassword": "Non",
|
||||
"shared_editShare": "Modifier le partage",
|
||||
"shared_notifyShare": "Notifier quelqu'un",
|
||||
"shared_copyLink": "Copier le lien",
|
||||
"shared_removeShare": "Supprimer le partage",
|
||||
"shared_linkCopied": "Lien copié dans le presse-papiers !",
|
||||
"shared_linkCopyFailed": "Erreur lors de la copie du lien",
|
||||
"shared_itemUpdated": "Paramètres de partage mis à jour",
|
||||
"shared_itemRemoved": "Partage supprimé avec succès",
|
||||
"shared_invalidEmail": "Veuillez entrer une adresse e-mail valide",
|
||||
"shared_notificationSent": "Notification envoyée avec succès",
|
||||
"shared_notificationFailed": "Erreur lors de l'envoi de la notification",
|
||||
"files": {
|
||||
"name": "Nom",
|
||||
"type": "Type",
|
||||
"size": "Taille",
|
||||
"modified": "Modifié",
|
||||
"no_files": "Aucun fichier dans ce dossier",
|
||||
"loading": "Chargement des fichiers…",
|
||||
"view_grid": "Vue en grille",
|
||||
"view_list": "Vue en liste",
|
||||
"file_types": {
|
||||
"document": "Document",
|
||||
"image": "Image",
|
||||
"video": "Vidéo",
|
||||
"audio": "Audio",
|
||||
"pdf": "PDF",
|
||||
"text": "Texte",
|
||||
"folder": "Dossier"
|
||||
}
|
||||
},
|
||||
"dialogs": {
|
||||
"rename_folder": "Renommer le dossier",
|
||||
"rename_file": "Renommer le fichier",
|
||||
"new_name": "Nouveau nom",
|
||||
"new_folder_title": "Nouveau dossier",
|
||||
"folder_name": "Nom du dossier",
|
||||
"folder_placeholder": "Mon dossier",
|
||||
"rename_title": "Renommer",
|
||||
"move_file": "Déplacer le fichier",
|
||||
"move_folder": "Déplacer le dossier",
|
||||
"select_destination": "Sélectionnez le dossier de destination :",
|
||||
"root": "Racine",
|
||||
"delete_confirmation": "Êtes-vous sûr de vouloir supprimer",
|
||||
"and_contents": "et tout son contenu",
|
||||
"no_undo": "Cette action est irréversible",
|
||||
"confirm_title": "Confirmer l'action",
|
||||
"confirm_delete": "Déplacer vers la corbeille",
|
||||
"confirm_delete_file": "Êtes-vous sûr de vouloir déplacer le fichier « {{name}} » vers la corbeille ?",
|
||||
"confirm_delete_folder": "Êtes-vous sûr de vouloir déplacer le dossier « {{name}} » et tout son contenu vers la corbeille ?",
|
||||
"confirm_permanent_delete": "Supprimer définitivement",
|
||||
"confirm_permanent_delete_msg": "Êtes-vous sûr de vouloir supprimer définitivement cet élément ? Cette action est irréversible.",
|
||||
"confirm_empty_trash": "Vider la corbeille",
|
||||
"confirm_delete_share": "Supprimer le lien de partage",
|
||||
"confirm_delete_share_msg": "Êtes-vous sûr de vouloir supprimer ce lien de partage ?",
|
||||
"share_file": "Partager le fichier",
|
||||
"existing_shares": "Partages existants",
|
||||
"share_options": "Options de partage",
|
||||
"password": "Mot de passe",
|
||||
"expiration": "Expiration",
|
||||
"permissions": "Permissions",
|
||||
"generated_link": "Lien généré",
|
||||
"notify": "Envoyer une notification",
|
||||
"recipient": "Destinataire",
|
||||
"message": "Message"
|
||||
},
|
||||
"dropzone": {
|
||||
"drag_files": "Glissez des fichiers ici ou cliquez pour sélectionner",
|
||||
"drop_files": "Déposez les fichiers pour téléverser"
|
||||
},
|
||||
"permissions": {
|
||||
"read": "Lecture",
|
||||
"write": "Écriture",
|
||||
"reshare": "Repartager"
|
||||
},
|
||||
"errors": {
|
||||
"file_not_found": "Fichier introuvable",
|
||||
"folder_not_found": "Dossier introuvable",
|
||||
"delete_error": "Erreur lors de la suppression",
|
||||
"upload_error": "Erreur lors du téléversement",
|
||||
"rename_error": "Erreur lors du renommage",
|
||||
"move_error": "Erreur lors du déplacement",
|
||||
"empty_name": "Le nom ne peut pas être vide",
|
||||
"name_exists": "Un fichier ou dossier portant ce nom existe déjà",
|
||||
"generic_error": "Une erreur est survenue"
|
||||
},
|
||||
"breadcrumb": {
|
||||
"home": "Accueil"
|
||||
},
|
||||
"trash": {
|
||||
"empty_trash": "Vider la corbeille",
|
||||
"empty_state": "La corbeille est vide",
|
||||
"original_location": "Emplacement d'origine",
|
||||
"deleted_date": "Date de suppression",
|
||||
"actions": "Actions",
|
||||
"restore": "Restaurer",
|
||||
"delete_permanently": "Supprimer définitivement",
|
||||
"empty_confirm": "Êtes-vous sûr de vouloir vider la corbeille ? Tous les éléments seront définitivement supprimés."
|
||||
},
|
||||
"auth": {
|
||||
"login_title": "Se connecter",
|
||||
"username": "Nom d'utilisateur",
|
||||
"username_placeholder": "Entrez votre nom d'utilisateur",
|
||||
"password": "Mot de passe",
|
||||
"password_placeholder": "Entrez votre mot de passe",
|
||||
"login_button": "Se connecter",
|
||||
"no_account": "Vous n'avez pas de compte ?",
|
||||
"register": "S'inscrire",
|
||||
"admin_setup": "Première fois ?",
|
||||
"setup": "Configurer l'administrateur",
|
||||
"register_title": "Créer un compte",
|
||||
"email": "E-mail",
|
||||
"email_placeholder": "Entrez votre e-mail",
|
||||
"confirm_password": "Confirmer le mot de passe",
|
||||
"confirm_password_placeholder": "Confirmez votre mot de passe",
|
||||
"register_button": "Créer un compte",
|
||||
"have_account": "Vous avez déjà un compte ?",
|
||||
"login": "Se connecter",
|
||||
"setup_title": "Configuration initiale",
|
||||
"setup_step1": "Admin",
|
||||
"setup_step2": "Système",
|
||||
"setup_step3": "Terminé",
|
||||
"admin_username": "Nom d'utilisateur administrateur",
|
||||
"admin_email": "E-mail administrateur",
|
||||
"admin_password": "Mot de passe administrateur",
|
||||
"create_admin": "Créer l'administrateur",
|
||||
"back_to_login": "Déjà configuré ?",
|
||||
"admin_success": "Compte administrateur créé avec succès ! Vous pouvez maintenant vous connecter.",
|
||||
"account_success": "Compte créé avec succès ! Vous pouvez maintenant vous connecter.",
|
||||
"passwords_mismatch": "Les mots de passe ne correspondent pas",
|
||||
"admin_create_error": "Erreur lors de la création du compte administrateur"
|
||||
},
|
||||
"storage": {
|
||||
"title": "Stockage",
|
||||
"calculating": "Calcul en cours...",
|
||||
"used": "{{percentage}}% utilisé ({{used}} / {{total}})"
|
||||
},
|
||||
"viewer": {
|
||||
"unsupported_file": "Ce type de fichier ne peut pas être prévisualisé.",
|
||||
"download_file": "Télécharger le fichier",
|
||||
"zoom_in": "Zoom avant",
|
||||
"zoom_out": "Zoom arrière",
|
||||
"zoom_reset": "Réinitialiser le zoom"
|
||||
},
|
||||
"language_selector": {
|
||||
"title": "Bienvenue sur OxiCloud",
|
||||
"subtitle": "Veuillez sélectionner votre langue",
|
||||
"continue": "Continuer",
|
||||
"languages": {
|
||||
"en": "English",
|
||||
"es": "Español",
|
||||
"zh": "中文",
|
||||
"fa": "فارسی",
|
||||
"fr": "Français",
|
||||
"de": "Deutsch",
|
||||
"pt": "Português"
|
||||
}
|
||||
},
|
||||
"favorites": {
|
||||
"empty_state": "Aucun favori pour le moment",
|
||||
"empty_hint": "Marquez des fichiers ou dossiers avec une étoile pour les ajouter à vos favoris",
|
||||
"add": "Ajouter aux favoris",
|
||||
"remove": "Retirer des favoris"
|
||||
},
|
||||
"recent": {
|
||||
"title": "Récents",
|
||||
"clear": "Effacer les récents",
|
||||
"accessed": "Consulté",
|
||||
"empty_state": "Aucun fichier récent",
|
||||
"empty_hint": "Les fichiers que vous ouvrez apparaîtront ici"
|
||||
},
|
||||
"notifications": {
|
||||
"file_renamed": "Fichier renommé",
|
||||
"file_renamed_to": "Fichier renommé en « {{name}} »",
|
||||
"folder_renamed": "Dossier renommé",
|
||||
"folder_renamed_to": "Dossier renommé en « {{name}} »",
|
||||
"file_uploaded": "Fichier téléversé",
|
||||
"file_deleted": "Fichier déplacé vers la corbeille",
|
||||
"folder_deleted": "Dossier déplacé vers la corbeille",
|
||||
"item_deleted_permanently": "Élément supprimé définitivement",
|
||||
"trash_emptied": "Corbeille vidée avec succès"
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user