// ignore: unused_import
import 'package:intl/intl.dart' as intl;
import 'app_localizations.dart';

// ignore_for_file: type=lint

/// The translations for French (`fr`).
class AppLocalizationsFr extends AppLocalizations {
  AppLocalizationsFr([String locale = 'fr']) : super(locale);

  @override
  String photoCount(int count) {
    String _temp0 = intl.Intl.pluralLogic(
      count,
      locale: localeName,
      other: 'Photos',
      one: 'Photo',
    );
    return '$_temp0';
  }

  @override
  String mediaCount(int count) {
    String _temp0 = intl.Intl.pluralLogic(
      count,
      locale: localeName,
      other: 'Médias',
      one: 'Média',
    );
    return '$_temp0';
  }

  @override
  String get appTitle => 'White Noise';

  @override
  String get sloganFull => 'Décentralisé, Incensurable,\nMessagerie Sécurisée.';

  @override
  String get sloganDecentralized => 'Décentralisé';

  @override
  String get sloganUncensorable => 'Incensurable';

  @override
  String get sloganSecureMessaging => 'Messagerie Sécurisée';

  @override
  String get login => 'Connexion';

  @override
  String get signUp => 'S\'inscrire';

  @override
  String get loginTitle => 'Entrez votre clé privée';

  @override
  String get enterPrivateKey => 'Entrez votre clé privée';

  @override
  String get nsecPlaceholder => 'nsec...';

  @override
  String get setupProfile => 'Configurer le profil';

  @override
  String get createProfile => 'Créer le profil';

  @override
  String get chooseName => 'Nom';

  @override
  String get enterYourName => 'Entrez votre nom';

  @override
  String get introduceYourself => 'À propos';

  @override
  String get writeSomethingAboutYourself => 'Présentez-vous';

  @override
  String get profilePrivacyDescription =>
      'Le nom, la photo et la bio sont visibles sur le réseau mondial de Nostr. Utilisez ce que vous êtes à l\'aise de partager.';

  @override
  String get cancel => 'Annuler';

  @override
  String get profileReady => 'Votre profil est prêt !';

  @override
  String get startConversationHint =>
      'Démarrez une conversation en ajoutant des amis ou en partageant votre profil.';

  @override
  String get share => 'Partager';

  @override
  String get shareYourProfile => 'Partager votre profil';

  @override
  String get startChat => 'Démarrer une discussion';

  @override
  String get settings => 'Paramètres';

  @override
  String get shareAndConnect => 'Partager et connecter';

  @override
  String get switchProfile => 'Changer de profil';

  @override
  String get addNewProfile => 'Ajouter un nouveau profil';

  @override
  String get editProfile => 'Modifier le profil';

  @override
  String get profileKeys => 'Clés du profil';

  @override
  String get networkRelays => 'Relais réseau';

  @override
  String get appearance => 'Apparence';

  @override
  String get privacySecurity => 'Confidentialité et sécurité';

  @override
  String get donateToWhiteNoise => 'Faire un don à White Noise';

  @override
  String get developerSettings => 'Paramètres développeur';

  @override
  String get signOut => 'Déconnexion';

  @override
  String get appearanceTitle => 'Apparence';

  @override
  String get privacySecurityTitle => 'Confidentialité et sécurité';

  @override
  String get deleteAllAppData => 'Supprimer Toutes les Données de l\'App';

  @override
  String get deleteAppData => 'Supprimer les données de l\'app';

  @override
  String get deleteAllAppDataDescription =>
      'Effacer tous les profils, clés, chats et fichiers locaux de cet appareil.';

  @override
  String get deleteAllAppDataConfirmation => 'Supprimer toutes les données de l\'app ?';

  @override
  String get deleteAllAppDataWarning =>
      'Cela effacera tous les profils, clés, chats et fichiers locaux de cet appareil. Cette action est irréversible.';

  @override
  String get theme => 'Thème';

  @override
  String get themeSystem => 'Système';

  @override
  String get themeLight => 'Clair';

  @override
  String get themeDark => 'Sombre';

  @override
  String get profileKeysTitle => 'Clés du profil';

  @override
  String get publicKey => 'Clé publique';

  @override
  String get publicKeyCopied => 'Clé publique copiée dans le presse-papiers';

  @override
  String get publicKeyDescription =>
      'Votre clé publique (npub) peut être partagée avec d\'autres. Elle est utilisée pour vous identifier sur le réseau.';

  @override
  String get privateKey => 'Clé privée';

  @override
  String get privateKeyCopied => 'Clé privée copiée dans le presse-papiers';

  @override
  String get privateKeyDescription =>
      'Votre clé privée (nsec) doit rester secrète. Toute personne y ayant accès peut contrôler votre compte.';

  @override
  String get keepPrivateKeySecure => 'Gardez votre clé privée en sécurité';

  @override
  String get privateKeyWarning =>
      'Ne partagez pas votre clé privée publiquement et utilisez-la uniquement pour vous connecter à d\'autres apps Nostr.';

  @override
  String get nsecOnExternalSigner => 'La clé privée est stockée dans un signataire externe';

  @override
  String get nsecOnExternalSignerDescription =>
      'Votre clé privée n\'est pas disponible dans White Noise. Ouvrez votre signataire pour la consulter ou la gérer.';

  @override
  String get editProfileTitle => 'Modifier le profil';

  @override
  String get profileName => 'Nom du profil';

  @override
  String get nostrAddress => 'Adresse Nostr';

  @override
  String get nostrAddressPlaceholder => 'exemple@whitenoise.chat';

  @override
  String get aboutYou => 'À propos de vous';

  @override
  String get profileIsPublic => 'Le profil est public';

  @override
  String get profilePublicDescription =>
      'Les informations de votre profil seront visibles par tous sur le réseau.';

  @override
  String get discard => 'Annuler';

  @override
  String get discardChanges => 'Annuler les modifications';

  @override
  String get save => 'Enregistrer';

  @override
  String get profileUpdatedSuccessfully => 'Profil mis à jour avec succès';

  @override
  String errorLoadingProfile(String error) {
    return 'Erreur lors du chargement du profil : $error';
  }

  @override
  String error(String error) {
    return 'Erreur : $error';
  }

  @override
  String get profileLoadError => 'Impossible de charger le profil. Veuillez réessayer.';

  @override
  String get failedToLoadPrivateKey => 'Impossible de charger la clé privée. Veuillez réessayer.';

  @override
  String get profileSaveError => 'Impossible d\'enregistrer le profil. Veuillez réessayer.';

  @override
  String get networkRelaysTitle => 'Relais Réseau';

  @override
  String get myRelays => 'Mes Relais';

  @override
  String get myRelaysHelp =>
      'Relais que vous avez définis pour une utilisation dans toutes vos applications Nostr.';

  @override
  String get inboxRelays => 'Relais de Boîte de Réception';

  @override
  String get inboxRelaysHelp =>
      'Relais utilisés pour recevoir des invitations et démarrer des conversations sécurisées avec de nouveaux utilisateurs.';

  @override
  String get keyPackageRelays => 'Relais de Paquet de Clés';

  @override
  String get keyPackageRelaysHelp =>
      'Relais qui stockent votre clé sécurisée pour que d\'autres puissent vous inviter à des conversations chiffrées.';

  @override
  String get errorLoadingRelays => 'Erreur lors du chargement des relais';

  @override
  String get noRelaysConfigured => 'Aucun relais configuré';

  @override
  String get donateTitle => 'Faire un don à White Noise';

  @override
  String get donateDescription =>
      'En tant qu\'organisation à but non lucratif, White Noise existe uniquement pour votre vie privée et votre liberté, pas pour le profit. Votre soutien nous maintient indépendants et sans compromis.';

  @override
  String get donateContributionAcknowledgmentTitle => 'Attestation de contribution';

  @override
  String get donateContributionLetterBefore =>
      'Si vous avez besoin d\'une attestation de don, contactez-nous à ';

  @override
  String get donateContributionLetterAfter => '';

  @override
  String get lightningAddress => 'Adresse Lightning';

  @override
  String get bitcoinSilentPayment => 'Paiement Silencieux Bitcoin';

  @override
  String get copiedToClipboardThankYou => 'Copié dans le presse-papiers. Merci !';

  @override
  String get shareProfileTitle => 'Partager et connecter';

  @override
  String get scanToConnect => 'Scanner pour se connecter';

  @override
  String get signOutTitle => 'Déconnexion';

  @override
  String get signOutConfirmation => 'Êtes-vous sûr de vouloir vous déconnecter ?';

  @override
  String get signOutWarning =>
      'Lorsque vous vous déconnectez de White Noise, vos discussions seront supprimées de cet appareil et ne pourront pas être restaurées sur un autre appareil.';

  @override
  String get signOutWarningBackupKey =>
      'Si vous n\'avez pas sauvegardé votre clé privée, vous ne pourrez pas utiliser ce profil sur un autre service Nostr.';

  @override
  String get signOutCalloutTitle => 'Sauvegardez votre clé privée';

  @override
  String get signOutCalloutDescription =>
      'Lorsque vous vous déconnectez de White Noise, vos discussions seront supprimées de cet appareil et ne pourront pas être restaurées.\n\nCopiez et stockez votre clé privée en lieu sûr si vous souhaitez accéder à nouveau à votre compte. Sans elle, vous perdrez l\'accès définitivement.';

  @override
  String get signOutCalloutDescriptionBefore =>
      'Assurez-vous d\'avoir sauvegardé votre clé privée dans ';

  @override
  String get signOutCalloutDescriptionLink => 'Paramètres → Clés de profil';

  @override
  String get signOutCalloutDescriptionAfter => '. Sans elle, vous ne pourrez plus vous connecter.';

  @override
  String get backUpPrivateKey => 'Sauvegardez votre clé privée';

  @override
  String get copyPrivateKeyHint =>
      'Copiez votre clé privée pour restaurer votre compte sur un autre appareil.';

  @override
  String get publicKeyCopyError => 'Échec de la copie de la clé publique. Veuillez réessayer.';

  @override
  String get noChatsYet => 'Pas encore de discussions';

  @override
  String get startConversation => 'Démarrer une conversation';

  @override
  String get welcomeNoticeTitle => 'Votre profil est prêt';

  @override
  String welcomeNoticeDescription(String findPeople, String shareProfile, String startANewChat) {
    return 'Appuyez sur $findPeople pour trouver vos amis. $shareProfile pour vous connecter avec des gens que vous connaissez, ou $startANewChat avec l\'icône de chat.';
  }

  @override
  String get findPeople => 'Trouver des personnes';

  @override
  String get startANewChat => 'démarrez une nouvelle discussion';

  @override
  String get noMessagesYet => 'Pas encore de messages';

  @override
  String get messagePlaceholder => 'Message';

  @override
  String get failedToSendMessage => 'Échec de l\'envoi du message. Veuillez réessayer.';

  @override
  String get invitedToSecureChat => 'Vous êtes invité à une discussion sécurisée';

  @override
  String get invitedYouToChatSuffix => ' vous a invité à discuter';

  @override
  String get decline => 'Refuser';

  @override
  String get accept => 'Accepter';

  @override
  String get failedToAcceptInvitation =>
      'Échec de l\'acceptation de l\'invitation. Veuillez réessayer.';

  @override
  String get failedToDeclineInvitation => 'Échec du refus de l\'invitation. Veuillez réessayer.';

  @override
  String get startNewChat => 'Nouvelle discussion';

  @override
  String get noResults => 'Aucun résultat';

  @override
  String get noFollowsYet => 'Pas encore d\'abonnements';

  @override
  String get searchByNameOrNpub => 'Nom ou npub1...';

  @override
  String get developerSettingsTitle => 'Paramètres développeur';

  @override
  String get keyPackageManagementTitle => 'Gestion des paquets de clés';

  @override
  String get keyPackageManagementDescription =>
      'Publier, actualiser et supprimer les paquets de clés du compte';

  @override
  String get relayStateTitle => 'État des relais';

  @override
  String get relayStateDescription => 'Inspecter les plans de contrôle des relais actifs';

  @override
  String get relayControlStateDumpLabel => 'debug_relay_control_state:';

  @override
  String get relayControlStateSnapshotDescription =>
      'Instantané des plans actifs de découverte des relais, de boîte de réception et de groupe.';

  @override
  String get relayControlStateLoading => 'Chargement...';

  @override
  String get relayControlStateRefreshButton => 'Actualiser l\'export';

  @override
  String get relayControlStateCopyButton => 'Copier l\'export';

  @override
  String get publishNewKeyPackage => 'Publier un Nouveau Paquet de Clés';

  @override
  String get refreshKeyPackages => 'Actualiser les Paquets de Clés';

  @override
  String get deleteLegacyKeyPackages => 'Supprimer les Paquets de Clés Obsolètes';

  @override
  String get deleteAllKeyPackages => 'Supprimer tous les paquets de clés';

  @override
  String keyPackagesCount(int count) {
    return 'Paquets de Clés ($count)';
  }

  @override
  String keyPackageDTagLabel(String dTag) {
    return 'd-tag: $dTag';
  }

  @override
  String get noKeyPackagesFound => 'Aucun paquet de clés trouvé';

  @override
  String get keyPackagePublished => 'Paquet de clés publié';

  @override
  String get keyPackagesRefreshed => 'Paquets de clés actualisés';

  @override
  String get legacyKeyPackagesDeleted => 'Paquets de clés obsolètes supprimés';

  @override
  String get allKeyPackagesDeleted => 'Tous les paquets de clés supprimés';

  @override
  String get keyPackageDeleted => 'Paquet de clés supprimé';

  @override
  String get keyPackageFetchFailed =>
      'Impossible de rafraîchir les paquets de clés. Veuillez réessayer.';

  @override
  String get keyPackagePublishFailed =>
      'Impossible de publier le paquet de clés. Veuillez réessayer.';

  @override
  String get keyPackageDeleteFailed =>
      'Impossible de supprimer le paquet de clés. Veuillez réessayer.';

  @override
  String get legacyKeyPackageDeleteFailed =>
      'Impossible de supprimer les paquets de clés obsolètes. Veuillez réessayer.';

  @override
  String get allKeyPackageDeleteFailed =>
      'Impossible de supprimer tous les paquets de clés. Veuillez réessayer.';

  @override
  String get legacyLabel => 'Obsolète';

  @override
  String packageNumber(int number) {
    return 'Paquet $number';
  }

  @override
  String get goBack => 'Retour';

  @override
  String get createGroup => 'Créer un groupe';

  @override
  String get newGroupChat => 'Nouvelle discussion de groupe';

  @override
  String get selectMembers => 'Sélectionner les Membres';

  @override
  String selectedCount(int count) {
    return '$count sélectionnés';
  }

  @override
  String get clearSelection => 'Effacer';

  @override
  String get continueButton => 'Continuer';

  @override
  String get setUpGroup => 'Configurer le groupe';

  @override
  String get groupName => 'Nom du Groupe';

  @override
  String get groupNamePlaceholder => 'Entrez le nom du groupe';

  @override
  String get groupDescription => 'Description du Groupe';

  @override
  String get description => 'Description';

  @override
  String get groupDescriptionPlaceholder => 'À quoi sert ce groupe ?';

  @override
  String members(int count) {
    return '$count membres';
  }

  @override
  String invitingMembers(int count) {
    String _temp0 = intl.Intl.pluralLogic(
      count,
      locale: localeName,
      other: 'Invitation de membres :',
      one: 'Invitation de membre :',
    );
    return '$_temp0';
  }

  @override
  String get usersWithoutKeyPackages =>
      'Utilisateurs sans paquets de clés (ne peuvent pas être ajoutés)';

  @override
  String usersNotOnWhiteNoise(int count) {
    String _temp0 = intl.Intl.pluralLogic(
      count,
      locale: localeName,
      other: 'Ces utilisateurs ne sont pas sur White Noise',
      one: 'Cet utilisateur n\'est pas sur White Noise',
    );
    return '$_temp0';
  }

  @override
  String usersNotOnWhiteNoiseDescription(int count) {
    String _temp0 = intl.Intl.pluralLogic(
      count,
      locale: localeName,
      other:
          'Ces utilisateurs ne peuvent pas être ajoutés au groupe car ils n\'ont pas White Noise installé ou n\'ont pas encore publié leurs paquets de clés.',
      one:
          'Cet utilisateur ne peut pas être ajouté au groupe car il n\'a pas White Noise installé ou n\'a pas encore publié son paquet de clés.',
    );
    return '$_temp0';
  }

  @override
  String get uploadingImage => 'Téléchargement de l\'image...';

  @override
  String get creatingGroup => 'Création du groupe...';

  @override
  String get groupNameRequired => 'Le nom du groupe est requis';

  @override
  String get noUsersWithKeyPackages => 'Aucun utilisateur avec des paquets de clés à ajouter';

  @override
  String get createGroupFailed => 'Échec de la création du groupe';

  @override
  String get reportError => 'Signaler une erreur';

  @override
  String get wipMessage =>
      'Nous travaillons sur cette fonctionnalité. Pour soutenir le développement, faites un don à White Noise';

  @override
  String get donate => 'Faire un don';

  @override
  String get chatWithSupport => 'Discuter avec le support';

  @override
  String get supportChatWelcomeMessage =>
      'Bonjour ! Dites-nous ce qui vous préoccupe - questions, bugs ou commentaires. Nous répondons généralement en quelques heures.';

  @override
  String get addRelay => 'Ajouter un Relais';

  @override
  String get restoreDefaultRelays => 'Restaurer les relais par défaut';

  @override
  String get restoreDefaultRelaysConfirmationTitle => 'Restaurer les relais par défaut ?';

  @override
  String get restoreDefaultRelaysConfirmationMessage =>
      'Êtes-vous sûr de vouloir restaurer les relais par défaut de l\'application ? Cela effacera et remplacera vos relais actuels.';

  @override
  String get restoreDefaultRelaysError =>
      'Échec de la restauration des relais par défaut. Veuillez réessayer.';

  @override
  String get addMyRelay => 'Ajouter mon relais';

  @override
  String get addInboxRelay => 'Ajouter un relais de boîte de réception';

  @override
  String get addKeyPackageRelay => 'Ajouter un relais de paquet de clés';

  @override
  String get enterRelayAddress => 'Entrez l\'adresse du relais';

  @override
  String get relayAddressPlaceholder => 'wss://relay.example.com';

  @override
  String get removeRelay => 'Supprimer le Relais ?';

  @override
  String get removeRelayConfirmation =>
      'Êtes-vous sûr de vouloir supprimer ce relais ? Cette action ne peut pas être annulée.';

  @override
  String get remove => 'Supprimer';

  @override
  String get messageActions => 'Actions du message';

  @override
  String get reply => 'Répondre';

  @override
  String get copyMessage => 'Copier';

  @override
  String get delete => 'Supprimer';

  @override
  String get failedToDeleteMessage => 'Échec de la suppression du message. Veuillez réessayer.';

  @override
  String get failedToSendReaction => 'Échec de l\'envoi de la réaction. Veuillez réessayer.';

  @override
  String get failedToRemoveReaction =>
      'Échec de la suppression de la réaction. Veuillez réessayer.';

  @override
  String get unknownUser => 'Utilisateur inconnu';

  @override
  String get noName => 'Sans nom';

  @override
  String get unknownGroup => 'Groupe inconnu';

  @override
  String get hasInvitedYouToSecureChat => 'Vous a invité à une discussion sécurisée';

  @override
  String userInvitedYouToSecureChat(String name) {
    return '$name vous a invité à une discussion sécurisée';
  }

  @override
  String get youHaveBeenInvitedToSecureChat => 'Vous avez été invité à une discussion sécurisée';

  @override
  String get language => 'Langue';

  @override
  String get languageSystem => 'Système';

  @override
  String get languageUpdateFailed =>
      'Échec de l\'enregistrement de la préférence linguistique. Veuillez réessayer.';

  @override
  String get timeJustNow => 'à l\'instant';

  @override
  String timeMinutesAgo(int count) {
    String _temp0 = intl.Intl.pluralLogic(
      count,
      locale: localeName,
      other: 'il y a $count minutes',
      one: 'il y a 1 minute',
    );
    return '$_temp0';
  }

  @override
  String timeHoursAgo(int count) {
    String _temp0 = intl.Intl.pluralLogic(
      count,
      locale: localeName,
      other: 'il y a $count heures',
      one: 'il y a 1 heure',
    );
    return '$_temp0';
  }

  @override
  String timeDaysAgo(int count) {
    String _temp0 = intl.Intl.pluralLogic(
      count,
      locale: localeName,
      other: 'il y a $count jours',
      one: 'hier',
    );
    return '$_temp0';
  }

  @override
  String get profile => 'Profil';

  @override
  String get follow => 'Suivre';

  @override
  String get unfollow => 'Ne plus suivre';

  @override
  String chatSearchMatchCount(int current, int total) {
    String _temp0 = intl.Intl.pluralLogic(
      total,
      locale: localeName,
      other: '$total résultats',
      one: '1 résultat',
    );
    return '$current sur $_temp0';
  }

  @override
  String get failedToStartChat => 'Échec du démarrage de la discussion. Veuillez réessayer.';

  @override
  String get inviteToWhiteNoise => 'Inviter sur White Noise';

  @override
  String inviteToWhiteNoiseDescription(String name) {
    return '$name n\'est pas encore sur White Noise. Partagez l\'application pour démarrer une discussion sécurisée.';
  }

  @override
  String get inviteMessage =>
      'Rejoignez-moi sur White Noise. Pas de numéro de téléphone. Pas de surveillance. Juste une vraie confidentialité. Téléchargez ici : https://www.whitenoise.chat/download';

  @override
  String get failedToUpdateFollow =>
      'Échec de la mise à jour du statut de suivi. Veuillez réessayer.';

  @override
  String get imagePickerError => 'Échec de la sélection de l\'image. Veuillez réessayer.';

  @override
  String get scanNsec => 'Scanner le code QR';

  @override
  String get scanNsecHint => 'Scannez le code QR de votre clé privée pour vous connecter.';

  @override
  String get cameraPermissionDenied => 'Autorisation caméra refusée';

  @override
  String get somethingWentWrong => 'Une erreur s\'est produite';

  @override
  String get scanNpub => 'Scanner le code QR';

  @override
  String get scanNpubHint => 'Scannez le code QR d\'un contact.';

  @override
  String get invalidNpub => 'Clé publique invalide. Veuillez réessayer.';

  @override
  String get you => 'Vous';

  @override
  String get timestampNow => 'Maintenant';

  @override
  String timestampMinutes(int count) {
    return '${count}m';
  }

  @override
  String timestampHours(int count) {
    return '${count}h';
  }

  @override
  String get timestampYesterday => 'Hier';

  @override
  String get weekdayMonday => 'Lundi';

  @override
  String get weekdayTuesday => 'Mardi';

  @override
  String get weekdayWednesday => 'Mercredi';

  @override
  String get weekdayThursday => 'Jeudi';

  @override
  String get weekdayFriday => 'Vendredi';

  @override
  String get weekdaySaturday => 'Samedi';

  @override
  String get weekdaySunday => 'Dimanche';

  @override
  String get monthJanShort => 'Jan';

  @override
  String get monthFebShort => 'Fév';

  @override
  String get monthMarShort => 'Mar';

  @override
  String get monthAprShort => 'Avr';

  @override
  String get monthMayShort => 'Mai';

  @override
  String get monthJunShort => 'Juin';

  @override
  String get monthJulShort => 'Juil';

  @override
  String get monthAugShort => 'Août';

  @override
  String get monthSepShort => 'Sep';

  @override
  String get monthOctShort => 'Oct';

  @override
  String get monthNovShort => 'Nov';

  @override
  String get monthDecShort => 'Déc';

  @override
  String get loginWithAmber => 'Se connecter avec Amber';

  @override
  String get signerConnectionError => 'Impossible de se connecter au signer. Veuillez réessayer.';

  @override
  String get search => 'Rechercher';

  @override
  String get filterChats => 'Discussions';

  @override
  String get filterArchive => 'Archives';

  @override
  String get signerErrorUserRejected => 'Connexion annulée';

  @override
  String get signerErrorNotConnected => 'Non connecté au signer. Veuillez réessayer.';

  @override
  String get signerErrorNoSigner =>
      'Aucune application signer trouvée. Veuillez installer un signer compatible NIP-55.';

  @override
  String get signerErrorNoResponse => 'Aucune réponse du signer. Veuillez réessayer.';

  @override
  String get signerErrorNoPubkey => 'Impossible d\'obtenir la clé publique du signer.';

  @override
  String get signerErrorNoResult => 'Le signer n\'a renvoyé aucun résultat.';

  @override
  String get signerErrorNoEvent => 'Le signer n\'a renvoyé aucun événement signé.';

  @override
  String get signerErrorRequestInProgress => 'Une autre requête est en cours. Veuillez patienter.';

  @override
  String get signerErrorNoActivity => 'Impossible de lancer le signer. Veuillez réessayer.';

  @override
  String get signerErrorLaunchError => 'Échec du lancement de l\'application signer.';

  @override
  String get signerErrorUnknown => 'Une erreur s\'est produite avec le signer. Veuillez réessayer.';

  @override
  String get messageNotFound => 'Message introuvable';

  @override
  String get pin => 'Épingler';

  @override
  String get unpin => 'Désépingler';

  @override
  String get mute => 'Muet';

  @override
  String get archive => 'Archiver';

  @override
  String get unarchive => 'Désarchiver';

  @override
  String get failedToArchiveChat => 'Échec de l\'archivage de la discussion. Veuillez réessayer.';

  @override
  String get failedToUnarchiveChat => 'Échec du désarchivage de la discussion. Veuillez réessayer.';

  @override
  String get archivedChatsEmpty => 'Aucune discussion archivée';

  @override
  String get failedToPinChat => 'Échec de l\'épinglage. Veuillez réessayer.';

  @override
  String get carouselPrivacyTitle => 'Confidentialité et sécurité';

  @override
  String get carouselPrivacyDescription =>
      'Gardez vos conversations privées. Même en cas de violation, vos messages restent sécurisés.';

  @override
  String get carouselIdentityTitle => 'Choisissez votre identité';

  @override
  String get carouselIdentityDescription =>
      'Discutez sans révéler votre numéro de téléphone ou votre e-mail. Choisissez votre identité : nom réel, pseudonyme ou anonyme.';

  @override
  String get carouselDecentralizedTitle => 'Décentralisé et sans permission';

  @override
  String get carouselDecentralizedDescription =>
      'Aucune autorité centrale ne contrôle votre communication – pas de permissions nécessaires, pas de censure possible.';

  @override
  String get learnMore => 'En savoir plus';

  @override
  String get backToSignUp => 'Retour à l\'inscription';

  @override
  String get deleteAllData => 'Supprimer Toutes les Données';

  @override
  String get deleteAllDataConfirmation => 'Supprimer toutes les données ?';

  @override
  String get deleteAllDataWarning =>
      'Cela supprimera définitivement tous vos chats, messages et paramètres de cet appareil. Cette action ne peut pas être annulée.';

  @override
  String get deleteAllDataError =>
      'Échec de la suppression de toutes les données. Veuillez réessayer.';

  @override
  String get chatInformation => 'Informations du chat';

  @override
  String get addToGroup => 'Ajouter à un groupe';

  @override
  String get blockUser => 'Bloquer l\'utilisateur';

  @override
  String get unblockUser => 'Débloquer l\'utilisateur';

  @override
  String get unblock => 'Débloquer';

  @override
  String get failedToBlockUser => 'Impossible de bloquer l\'utilisateur. Veuillez réessayer.';

  @override
  String get failedToUnblockUser => 'Impossible de débloquer l\'utilisateur. Veuillez réessayer.';

  @override
  String get userIsBlocked => 'Vous avez bloqué cet utilisateur';

  @override
  String get userIsBlockedDescription =>
      'Vous ne recevrez pas de nouveaux messages tant que vous ne le débloquez pas.';

  @override
  String get addToAnotherGroup => 'Ajouter à un autre groupe';

  @override
  String get relayResolutionTitle => 'Configuration du relais';

  @override
  String get relayResolutionDescription =>
      'Nous n\'avons pas trouvé vos listes de relais sur le réseau. Vous pouvez fournir un relais où vos listes sont publiées ou utiliser nos relais par défaut pour commencer.';

  @override
  String get relayResolutionUseDefaults => 'Utiliser les relais par défaut';

  @override
  String get relayResolutionTryRelay => 'Rechercher un relais';

  @override
  String get relayResolutionRelayPlaceholder => 'wss://relais.exemple.com';

  @override
  String get relayResolutionRelayLabel => 'URL du relais';

  @override
  String get relayResolutionNotFound =>
      'Aucune liste de relais trouvée sur ce relais. Essayez un autre ou utilisez les valeurs par défaut.';

  @override
  String get loginErrorInvalidKey => 'nsec invalide. Assurez-vous de l\'avoir saisi correctement.';

  @override
  String get loginErrorNoRelayConnections =>
      'Impossible de se connecter à des relais. Vérifiez votre connexion et réessayez.';

  @override
  String get loginErrorTimeout => 'La connexion a expiré. Veuillez réessayer.';

  @override
  String get loginErrorGeneric =>
      'Une erreur est survenue lors de la connexion. Veuillez réessayer.';

  @override
  String get loginErrorNoLoginInProgress => 'Aucune connexion en cours. Veuillez recommencer.';

  @override
  String get loginErrorInternal => 'Une erreur interne est survenue. Veuillez réessayer.';

  @override
  String get loginPasteNothingToPaste => 'Rien à coller';

  @override
  String get loginPasteFailed => 'Échec du collage depuis le presse-papiers';

  @override
  String get openSettings => 'Ouvrir les paramètres';

  @override
  String get scannerError => 'Erreur du scanner';

  @override
  String get scannerErrorDescription =>
      'Une erreur s\'est produite avec le scanner. Veuillez réessayer.';

  @override
  String get cameraPermissionDeniedDescription =>
      'Veuillez activer l\'accès à la caméra dans les paramètres de votre appareil pour scanner les codes QR.';

  @override
  String get retry => 'Réessayer';

  @override
  String get groupInformation => 'Informations du groupe';

  @override
  String get editGroup => 'Modifier le groupe';

  @override
  String get editGroupAction => 'Modifier le groupe';

  @override
  String get groupNameLabel => 'Nom';

  @override
  String get groupDescriptionLabel => 'À propos';

  @override
  String membersCount(int count) {
    String _temp0 = intl.Intl.pluralLogic(
      count,
      locale: localeName,
      other: '$count Membres',
      one: '1 Membre',
    );
    return '$_temp0';
  }

  @override
  String get adminBadge => 'Admin';

  @override
  String get membersLabel => 'Membres :';

  @override
  String get memberBadge => 'Membre';

  @override
  String get sendMessage => 'Envoyer un message';

  @override
  String get makeAdmin => 'Rendre admin';

  @override
  String get removeAdminRole => 'Retirer admin';

  @override
  String get removeFromGroup => 'Retirer du groupe';

  @override
  String get removeFromGroupConfirmation => 'Retirer du groupe ?';

  @override
  String get removeFromGroupWarning =>
      'Ce membre sera retiré du groupe et ne pourra plus voir les nouveaux messages.';

  @override
  String get makeAdminConfirmation => 'Rendre admin ?';

  @override
  String get makeAdminWarning =>
      'Ce membre pourra gérer le groupe, ajouter ou retirer des membres et modifier les paramètres du groupe.';

  @override
  String get removeAdminConfirmation => 'Retirer admin ?';

  @override
  String get removeAdminWarning =>
      'Ce membre ne pourra plus gérer le groupe, ajouter ou retirer des membres ni modifier les paramètres du groupe.';

  @override
  String get failedToRemoveFromGroup => 'Impossible de retirer le membre. Veuillez réessayer.';

  @override
  String get failedToMakeAdmin => 'Impossible de rendre admin. Veuillez réessayer.';

  @override
  String get failedToRemoveAdmin => 'Impossible de retirer admin. Veuillez réessayer.';

  @override
  String get groupUpdatedSuccessfully => 'Groupe mis à jour avec succès';

  @override
  String get groupLoadError => 'Impossible de charger le groupe. Veuillez réessayer.';

  @override
  String get groupSaveError => 'Impossible de sauvegarder le groupe. Veuillez réessayer.';

  @override
  String get failedToFetchGroupMembers =>
      'Impossible de charger les membres du groupe. Veuillez réessayer.';

  @override
  String get failedToAddMembers => 'Impossible d\'ajouter des membres. Veuillez réessayer.';

  @override
  String get addMembers => 'Ajouter des membres';

  @override
  String get groupImageUploadFailed => 'Groupe créé, mais le téléchargement de l\'image a échoué.';

  @override
  String updateNeeded(String name) {
    return '$name doit mettre à jour';
  }

  @override
  String updateNeededDescription(String name) {
    return 'Vous ne pouvez pas encore démarrer une discussion sécurisée avec $name. Cette personne doit mettre à jour White Noise avant que la messagerie sécurisée ne fonctionne.';
  }

  @override
  String addToGroupConfirmation(String userName, String groupName) {
    return 'Ajouter $userName à $groupName ?';
  }

  @override
  String get unknownInviteToWhiteNoiseDescription =>
      'Cet utilisateur n\'est pas encore sur White Noise. Partagez l\'application pour démarrer une discussion sécurisée.';

  @override
  String get unknownUserNeedsUpdate => 'L\'utilisateur doit mettre à jour';

  @override
  String get unknownUserNeedsUpdateDescription =>
      'Vous ne pouvez pas encore démarrer une discussion sécurisée avec cet utilisateur. Cette personne doit mettre à jour White Noise avant que la messagerie sécurisée ne fonctionne.';

  @override
  String get add => 'Ajouter';

  @override
  String get noGroupsAvailable => 'Aucun groupe disponible';

  @override
  String get noAdminGroupsAvailable =>
      'Vous n\'êtes encore admin dans aucun groupe. Créez un groupe pour ajouter des personnes.';

  @override
  String get profilesTitle => 'Profils';

  @override
  String get noAccountsAvailable => 'Aucun compte disponible';

  @override
  String get connectAnotherProfile => 'Connecter un autre profil';

  @override
  String get rawDebugView => 'Mode débogage';

  @override
  String get rawDebugViewDescription => 'Afficher les données brutes des messages dans le chat';

  @override
  String get rawDebugViewTitle => 'Mode Débogage';

  @override
  String get rawDebugViewGroupId => 'ID du Groupe';

  @override
  String rawDebugViewMessageCount(int count) {
    String _temp0 = intl.Intl.pluralLogic(
      count,
      locale: localeName,
      other: '$count messages',
      one: '1 message',
    );
    return '$_temp0';
  }

  @override
  String get rawDebugViewCopied => 'Copié dans le presse-papiers';

  @override
  String get rawDebugViewCopyDeepLink => 'Copier le lien profond';

  @override
  String get appLogsTitle => 'Journaux de l\'application';

  @override
  String get appLogsViewLogs => 'Voir les journaux';

  @override
  String get appLogsViewLogsDescription =>
      'Afficher toutes les sorties du journal de l\'application';

  @override
  String get appLogsClear => 'Effacer';

  @override
  String get appLogsEraseAll => 'Tout effacer';

  @override
  String get appLogsEmpty => 'Aucun journal pour le moment';

  @override
  String get appLogsSearchPlaceholder => 'Rechercher dans les journaux...';

  @override
  String get appLogsAddPatternPlaceholder => 'Ajouter un filtre';

  @override
  String get appLogsIgnore => 'Ignorer';

  @override
  String get appLogsShow => 'Afficher';

  @override
  String get appLogsClearFilters => 'Effacer les filtres';

  @override
  String get appLogsLive => 'En direct';

  @override
  String appLogsFilteredCount(int shown, int total) {
    return '$shown sur $total';
  }

  @override
  String get appLogsCopyAll => 'Tout copier';

  @override
  String get invalidRelayUrlScheme => 'L\'URL doit commencer par wss:// ou ws://';

  @override
  String get invalidRelayUrl => 'URL de relais invalide';

  @override
  String get thisMessageWasDeleted => 'Ce message a été supprimé.';

  @override
  String get youDeletedThisMessage => 'Tu as supprimé ce message.';

  @override
  String get relayControlStateLoadError =>
      'Échec du chargement de l\'état de contrôle du relais. Veuillez réessayer.';

  @override
  String get updateAvailableTitle => 'Mise à jour disponible';

  @override
  String updateAvailableDescription(String version) {
    return 'La version $version est disponible sur Zapstore.';
  }

  @override
  String get updateNow => 'Mettre à jour';

  @override
  String get fatalErrorCopyError => 'Copier l\'erreur';

  @override
  String get fatalErrorErrorCopied => 'Erreur copiée dans le presse-papiers';

  @override
  String get fatalErrorTitle => 'Oh non !';

  @override
  String get fatalErrorDescription =>
      'Nous avons eu un problème lors du chargement de l\'app. Ce n\'est pas de votre faute, c\'est la nôtre et nous nous excusons.\n\nAidez-nous à résoudre ce problème. Appuyez ci-dessous pour envoyer cette erreur à notre équipe.';

  @override
  String get reportBug => 'Signaler un bug';

  @override
  String get reportBugDescription =>
      'Aidez-nous à améliorer White Noise en décrivant le problème rencontré.';

  @override
  String get reportBugWhatWentWrong => 'Que s\'est-il passé ?';

  @override
  String get reportBugWhatWentWrongPlaceholder => 'Décrivez le problème rencontré...';

  @override
  String get reportBugStepsToReproduce => 'Étapes pour reproduire';

  @override
  String get reportBugStepsToReproducePlaceholder =>
      '1. Aller à...\n2. Appuyer sur...\n3. Voir l\'erreur';

  @override
  String get reportBugFrequency => 'À quelle fréquence cela se produit-il ?';

  @override
  String get reportBugFrequencyOnce => 'Une fois';

  @override
  String get reportBugFrequencyAlways => 'Toujours';

  @override
  String get reportBugFrequencySometimes => 'Parfois';

  @override
  String get reportBugIncludeNpub => 'Inclure votre npub';

  @override
  String get reportBugIncludeNpubDescription =>
      'Nous permet de vous recontacter si nécessaire ; laisser désactivé garantit l\'anonymat de votre signalement.';

  @override
  String get reportBugSend => 'Envoyer le rapport';

  @override
  String get reportBugSuccess => 'Rapport de bug envoyé. Merci !';

  @override
  String get reportBugError => 'Échec de l\'envoi du rapport. Veuillez réessayer.';

  @override
  String get reportBugWhatWentWrongRequired => 'Veuillez décrire ce qui s\'est passé.';

  @override
  String get failedToStartSupportChat => 'Échec du démarrage du chat avec le support';

  @override
  String get removedFromGroup => 'Vous avez été retiré de ce groupe';

  @override
  String get youLeftThisGroup => 'Vous avez quitté ce groupe';

  @override
  String get removedFromGroupDescription =>
      'Vous pouvez toujours consulter les messages enregistrés, mais vous ne pouvez plus en envoyer ni en recevoir. Vous pouvez archiver la discussion à tout moment.';

  @override
  String get notificationSettings => 'Notifications';

  @override
  String get notificationSettingsTitle => 'Notifications';

  @override
  String get notifications => 'Notifications';

  @override
  String get notificationsDescription =>
      'Recevoir des notifications push pour les nouveaux messages';

  @override
  String get notificationsSettingsLoadError =>
      'Impossible de charger les paramètres de notifications. Veuillez réessayer.';

  @override
  String get notificationsSettingsUpdateError =>
      'Impossible de mettre à jour les paramètres de notifications. Veuillez réessayer.';

  @override
  String get waitingForInternet => 'En attente de connexion internet';

  @override
  String get shareError => 'Échec du partage';

  @override
  String get leave => 'Quitter';

  @override
  String get leaveGroup => 'Quitter le groupe';

  @override
  String get leaveGroupWarning =>
      'Êtes-vous sûr de vouloir quitter ce groupe ? La discussion restera dans votre liste si vous ne la supprimez pas, mais vous ne pourrez ni envoyer ni recevoir de nouveaux messages à moins que quelqu\'un ne vous invite à nouveau.';

  @override
  String get leaveGroupLastAdminWarning =>
      'Vous êtes le seul administrateur de ce groupe. Promouvez au moins un membre en tant qu\'administrateur avant de pouvoir quitter.';

  @override
  String get leaveGroupNoCapabilitiesWarning =>
      'Ce groupe a été créé avec une ancienne version et ne prend pas en charge le départ. Les administrateurs peuvent mettre à niveau les capacités du groupe une fois que tous les membres utilisent une version qui prend en charge le départ.';

  @override
  String get leaveGroupFetchError =>
      'Une erreur s\'est produite lors du chargement des infos du groupe. Vous ne pourrez pas quitter pour l\'instant.';

  @override
  String get failedToLeaveGroup => 'Impossible de quitter le groupe. Veuillez réessayer.';

  @override
  String get youLeftTheGroup => 'Vous avez quitté le groupe';

  @override
  String get unsupportedDeepLinkTitle => 'Lien non pris en charge';

  @override
  String get unsupportedDeepLinkMessage =>
      'Ce lien White Noise ne peut pas être ouvert. Vous devrez peut-être mettre à jour l\'application.';
}
