Files
Oxicloud/static/locales/fr.json
T
Jared Wolff 53e4f5afe6 feat(photos): add Photos timeline view with lightbox and infinite scroll
Backend: new GET /api/photos endpoint with cursor-based pagination that
queries image/video files sorted by EXIF captured_at (falling back to
created_at), joining file_metadata for sort dates.

Frontend: dense photo grid grouped by day with lazy-loaded thumbnails,
IntersectionObserver infinite scroll, multi-select with batch
download/delete, and a full-screen lightbox with prev/next navigation,
EXIF metadata display, and download/favorite/delete toolbar.

Includes navigation wiring, CSS (with dark theme), and i18n translations
for all 9 locales.
2026-03-05 17:32:28 -05:00

367 lines
14 KiB
JSON
Executable File

{
"app": {
"title": "OxiCloud",
"description": "Système de stockage cloud minimaliste"
},
"nav": {
"files": "Fichiers",
"shared": "Partagés",
"recent": "Récents",
"favorites": "Favoris",
"photos": "Photos",
"trash": "Corbeille"
},
"photos": {
"empty_state": "Pas encore de photos",
"empty_hint": "Téléchargez des images ou des vidéos pour les voir ici",
"items_selected": "sélectionnés"
},
"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",
"upload.uploading": "Envoi en cours...",
"upload.complete": "{count} / {total} envoyés",
"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",
"spreadsheet": "Tableur",
"presentation": "Présentation",
"archive": "Archive",
"installer": "Installateur",
"code": "Code"
}
},
"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",
"or": "ou",
"sso_login": "Se connecter avec SSO",
"sso_login_provider": "Se connecter avec {{provider}}"
},
"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",
"added_title": "Ajouté aux favoris",
"added_msg": "ajouté aux favoris",
"removed_title": "Retiré des favoris",
"removed_msg": "retiré 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"
},
"batch": {
"one_selected": "1 élément sélectionné",
"n_selected": "{{count}} éléments sélectionnés",
"confirm_delete": "Voulez-vous vraiment déplacer {{count}} éléments vers la corbeille ?",
"move_title": "Déplacer {{count}} élément(s)",
"add_favorites": "Ajouter aux favoris",
"move_copy": "Déplacer ou copier"
}
}