Files
meshcore-sar_android/lib/l10n/app_localizations_fr.dart
2026-03-08 20:38:41 +01:00

1744 lines
42 KiB
Dart

// 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 get appTitle => 'MeshCore SAR';
@override
String get messages => 'Messages';
@override
String get contacts => 'Contacts';
@override
String get map => 'Carte';
@override
String get settings => 'Paramètres';
@override
String get connect => 'Connecter';
@override
String get disconnect => 'Déconnecter';
@override
String get noDevicesFound => 'Aucun appareil trouvé';
@override
String get scanAgain => 'Rechercher à nouveau';
@override
String get tapToConnect => 'Appuyez pour connecter';
@override
String get deviceNotConnected => 'Appareil non connecté';
@override
String get locationPermissionDenied => 'Permission de localisation refusée';
@override
String get locationPermissionPermanentlyDenied =>
'Permission de localisation définitivement refusée. Veuillez l\'activer dans les Paramètres.';
@override
String get locationPermissionRequired =>
'La permission de localisation est requise pour le suivi GPS et la coordination d\'équipe. Vous pouvez l\'activer plus tard dans les Paramètres.';
@override
String get locationServicesDisabled =>
'Les services de localisation sont désactivés. Veuillez les activer dans les Paramètres.';
@override
String get failedToGetGpsLocation =>
'Échec de l\'obtention de la position GPS';
@override
String failedToAdvertise(String error) {
return 'Échec de l\'annonce : $error';
}
@override
String get cancelReconnection => 'Annuler la reconnexion';
@override
String get general => 'Général';
@override
String get theme => 'Thème';
@override
String get chooseTheme => 'Choisir le thème';
@override
String get light => 'Clair';
@override
String get dark => 'Sombre';
@override
String get blueLightTheme => 'Thème bleu clair';
@override
String get blueDarkTheme => 'Thème bleu sombre';
@override
String get sarRed => 'SAR Rouge';
@override
String get alertEmergencyMode => 'Mode alerte/urgence';
@override
String get sarGreen => 'SAR Vert';
@override
String get safeAllClearMode => 'Mode sécurisé/dégagé';
@override
String get autoSystem => 'Auto (Système)';
@override
String get followSystemTheme => 'Suivre le thème du système';
@override
String get showRxTxIndicators => 'Afficher les indicateurs RX/TX';
@override
String get displayPacketActivity =>
'Afficher les indicateurs d\'activité des paquets dans la barre supérieure';
@override
String get disableMap => 'Désactiver la carte';
@override
String get disableMapDescription =>
'Masquer l\'onglet carte pour réduire la consommation de batterie';
@override
String get language => 'Langue';
@override
String get chooseLanguage => 'Choisir la langue';
@override
String get save => 'Enregistrer';
@override
String get cancel => 'Annuler';
@override
String get close => 'Fermer';
@override
String get about => 'À propos';
@override
String get appVersion => 'Version de l\'application';
@override
String get appName => 'Nom de l\'application';
@override
String get aboutMeshCoreSar => 'À propos de MeshCore SAR';
@override
String get aboutDescription =>
'Une application de recherche et sauvetage conçue pour les équipes d\'intervention d\'urgence. Les fonctionnalités incluent :\n\n• Réseau maillé BLE pour communication appareil à appareil\n• Cartes hors ligne avec options de couches multiples\n• Suivi en temps réel des membres de l\'équipe\n• Marqueurs tactiques SAR (personne trouvée, feu, zone de rassemblement)\n• Gestion des contacts et messagerie\n• Suivi GPS avec cap du compas\n• Mise en cache des tuiles de carte pour utilisation hors ligne';
@override
String get technologiesUsed => 'Technologies utilisées :';
@override
String get technologiesList =>
'• Flutter pour le développement multiplateforme\n• BLE (Bluetooth Low Energy) pour réseau maillé\n• OpenStreetMap pour la cartographie\n• Provider pour la gestion d\'état\n• SharedPreferences pour le stockage local';
@override
String get moreInfo => 'Plus d\'infos';
@override
String get packageName => 'Nom du package';
@override
String get sampleData => 'Données d\'exemple';
@override
String get sampleDataDescription =>
'Charger ou effacer les contacts d\'exemple, les messages de canal et les marqueurs SAR pour les tests';
@override
String get loadSampleData => 'Charger des données d\'exemple';
@override
String get clearAllData => 'Effacer toutes les données';
@override
String get clearAllDataConfirmTitle => 'Effacer toutes les données';
@override
String get clearAllDataConfirmMessage =>
'Cela effacera tous les contacts et marqueurs SAR. Êtes-vous sûr ?';
@override
String get clear => 'Effacer';
@override
String loadedSampleData(
int teamCount,
int channelCount,
int sarCount,
int messageCount,
) {
return 'Chargé $teamCount membres d\'équipe, $channelCount canaux, $sarCount marqueurs SAR, $messageCount messages';
}
@override
String failedToLoadSampleData(String error) {
return 'Échec du chargement des données d\'exemple : $error';
}
@override
String get allDataCleared => 'Toutes les données effacées';
@override
String get failedToStartBackgroundTracking =>
'Échec du démarrage du suivi en arrière-plan. Vérifiez les permissions et la connexion BLE.';
@override
String locationBroadcast(String latitude, String longitude) {
return 'Diffusion de position : $latitude, $longitude';
}
@override
String get defaultPinInfo =>
'Le code PIN par défaut pour les appareils sans écran est 123456. Problèmes d\'appairage ? Oubliez l\'appareil Bluetooth dans les paramètres système.';
@override
String get noMessagesYet => 'Aucun message pour le moment';
@override
String get pullDownToSync =>
'Tirez vers le bas pour synchroniser les messages';
@override
String get deleteContact => 'Supprimer le contact';
@override
String get delete => 'Supprimer';
@override
String get viewOnMap => 'Voir sur la carte';
@override
String get refresh => 'Actualiser';
@override
String get resetPath => 'Réinitialiser le chemin (Re-router)';
@override
String get publicKeyCopied => 'Clé publique copiée dans le presse-papiers';
@override
String copiedToClipboard(String label) {
return '$label copié dans le presse-papiers';
}
@override
String get pleaseEnterPassword => 'Veuillez saisir un mot de passe';
@override
String failedToSyncContacts(String error) {
return 'Échec de la synchronisation des contacts : $error';
}
@override
String get loggedInSuccessfully =>
'Connexion réussie ! En attente des messages du salon...';
@override
String get loginFailed => 'Échec de la connexion - mot de passe incorrect';
@override
String loggingIn(String roomName) {
return 'Connexion à $roomName...';
}
@override
String failedToSendLogin(String error) {
return 'Échec de l\'envoi de la connexion : $error';
}
@override
String get lowLocationAccuracy => 'Précision de localisation faible';
@override
String get continue_ => 'Continuer';
@override
String get sendSarMarker => 'Envoyer un marqueur SAR';
@override
String get deleteDrawing => 'Supprimer le dessin';
@override
String get drawingTools => 'Outils de Dessin';
@override
String get drawLine => 'Tracer une ligne';
@override
String get drawLineDesc => 'Tracer une ligne à main levée sur la carte';
@override
String get drawRectangle => 'Tracer un rectangle';
@override
String get drawRectangleDesc => 'Tracer une zone rectangulaire sur la carte';
@override
String get measureDistance => 'Mesurer la distance';
@override
String get measureDistanceDesc => 'Appui long sur deux points pour mesurer';
@override
String get clearMeasurement => 'Effacer la mesure';
@override
String distanceLabel(String distance) {
return 'Distance : $distance';
}
@override
String get longPressForSecondPoint => 'Appui long pour le deuxième point';
@override
String get longPressToStartMeasurement =>
'Appui long pour définir le premier point';
@override
String get longPressToStartNewMeasurement =>
'Appui long pour nouvelle mesure';
@override
String get shareDrawings => 'Partager les dessins';
@override
String get clearAllDrawings => 'Effacer tous les dessins';
@override
String get completeLine => 'Terminer la ligne';
@override
String broadcastDrawingsToTeam(int count, String plural) {
return 'Diffuser $count dessin$plural à l\'équipe';
}
@override
String removeAllDrawings(int count, String plural) {
return 'Supprimer tous les $count dessin$plural';
}
@override
String deleteAllDrawingsConfirm(int count, String plural) {
return 'Supprimer tous les $count dessin$plural de la carte ?';
}
@override
String get drawing => 'Dessin';
@override
String shareDrawingsCount(int count, String plural) {
return 'Partager $count dessin$plural';
}
@override
String get showReceivedDrawings => 'Afficher les dessins reçus';
@override
String get showingAllDrawings => 'Affichage de tous les dessins';
@override
String get showingOnlyYourDrawings => 'Affichage uniquement de vos dessins';
@override
String get showSarMarkers => 'Afficher les marqueurs SAR';
@override
String get showingSarMarkers => 'Affichage des marqueurs SAR';
@override
String get hidingSarMarkers => 'Masquage des marqueurs SAR';
@override
String get clearAll => 'Tout effacer';
@override
String get publicChannel => 'Canal public';
@override
String get broadcastToAll =>
'Diffuser à tous les nœuds à proximité (éphémère)';
@override
String get storedPermanently => 'Stocké de manière permanente dans le salon';
@override
String get notConnectedToDevice => 'Non connecté à l\'appareil';
@override
String get typeYourMessage => 'Saisissez votre message...';
@override
String get quickLocationMarker => 'Marqueur de position rapide';
@override
String get markerType => 'Type de marqueur';
@override
String get sendTo => 'Envoyer à';
@override
String get noDestinationsAvailable => 'Aucune destination disponible.';
@override
String get selectDestination => 'Sélectionner la destination...';
@override
String get ephemeralBroadcastInfo =>
'Éphémère : Diffusion par ondes uniquement. Non stocké - les nœuds doivent être en ligne.';
@override
String get persistentRoomInfo =>
'Persistant : Stocké de manière immuable dans le salon. Synchronisé automatiquement et préservé hors ligne.';
@override
String get location => 'Position';
@override
String get fromMap => 'Depuis la carte';
@override
String get gettingLocation => 'Obtention de la position...';
@override
String get locationError => 'Erreur de localisation';
@override
String get retry => 'Réessayer';
@override
String get refreshLocation => 'Actualiser la position';
@override
String accuracyMeters(int accuracy) {
return 'Précision : ±${accuracy}m';
}
@override
String get notesOptional => 'Notes (facultatives)';
@override
String get addAdditionalInformation =>
'Ajouter des informations supplémentaires...';
@override
String lowAccuracyWarning(int accuracy) {
return 'La précision de localisation est de ±${accuracy}m. Cela peut ne pas être assez précis pour les opérations SAR.\n\nContinuer quand même ?';
}
@override
String get loginToRoom => 'Se connecter au salon';
@override
String get enterPasswordInfo =>
'Entrez le mot de passe pour accéder à ce salon. Le mot de passe sera enregistré pour une utilisation future.';
@override
String get password => 'Mot de passe';
@override
String get enterRoomPassword => 'Entrez le mot de passe du salon';
@override
String get loggingInDots => 'Connexion...';
@override
String get login => 'Se connecter';
@override
String failedToAddRoom(String error) {
return 'Échec de l\'ajout du salon à l\'appareil : $error\n\nLe salon n\'a peut-être pas encore été annoncé.\nEssayez d\'attendre que le salon diffuse.';
}
@override
String get direct => 'Direct';
@override
String get flood => 'Inondation';
@override
String get loggedIn => 'Connecté';
@override
String get noGpsData => 'Aucune donnée GPS';
@override
String get distance => 'Distance';
@override
String directPingTimeout(String name) {
return 'Délai d\'attente du ping direct - nouvelle tentative de $name avec inondation...';
}
@override
String pingFailed(String name) {
return 'Échec du ping vers $name - aucune réponse reçue';
}
@override
String deleteContactConfirmation(String name) {
return 'Êtes-vous sûr de vouloir supprimer \"$name\" ?\n\nCela supprimera le contact de l\'application et de l\'appareil radio compagnon.';
}
@override
String failedToRemoveContact(String error) {
return 'Échec de la suppression du contact : $error';
}
@override
String get type => 'Type';
@override
String get publicKey => 'Clé publique';
@override
String get lastSeen => 'Dernière vue';
@override
String get roomStatus => 'État du salon';
@override
String get loginStatus => 'État de connexion';
@override
String get notLoggedIn => 'Non connecté';
@override
String get adminAccess => 'Accès administrateur';
@override
String get yes => 'Oui';
@override
String get no => 'Non';
@override
String get permissions => 'Permissions';
@override
String get passwordSaved => 'Mot de passe enregistré';
@override
String get locationColon => 'Position :';
@override
String get telemetry => 'Télémétrie';
@override
String get voltage => 'Tension';
@override
String get battery => 'Batterie';
@override
String get temperature => 'Température';
@override
String get humidity => 'Humidité';
@override
String get pressure => 'Pression';
@override
String get gpsTelemetry => 'GPS (Télémétrie)';
@override
String get updated => 'Mis à jour';
@override
String pathResetInfo(String name) {
return 'Chemin réinitialisé pour $name. Le prochain message trouvera un nouvel itinéraire.';
}
@override
String get reLoginToRoom => 'Se reconnecter au salon';
@override
String get heading => 'Cap';
@override
String get elevation => 'Élévation';
@override
String get accuracy => 'Précision';
@override
String get bearing => 'Relèvement';
@override
String get direction => 'Direction';
@override
String get filterMarkers => 'Filtrer les marqueurs';
@override
String get filterMarkersTooltip => 'Filtrer les marqueurs';
@override
String get contactsFilter => 'Contacts';
@override
String get repeatersFilter => 'Répéteurs';
@override
String get sarMarkers => 'Marqueurs SAR';
@override
String get foundPerson => 'Personne trouvée';
@override
String get fire => 'Feu';
@override
String get stagingArea => 'Zone de rassemblement';
@override
String get showAll => 'Tout afficher';
@override
String get locationUnavailable => 'Position non disponible';
@override
String get ahead => 'devant';
@override
String degreesRight(int degrees) {
return '$degrees° à droite';
}
@override
String degreesLeft(int degrees) {
return '$degrees° à gauche';
}
@override
String latLonFormat(String latitude, String longitude) {
return 'Lat : $latitude Lon : $longitude';
}
@override
String get noContactsYet => 'Aucun contact pour le moment';
@override
String get connectToDeviceToLoadContacts =>
'Connectez-vous à un appareil pour charger les contacts';
@override
String get teamMembers => 'Membres de l\'équipe';
@override
String get repeaters => 'Répéteurs';
@override
String get rooms => 'Salons';
@override
String get channels => 'Canaux';
@override
String get selectMapLayer => 'Sélectionner la couche de carte';
@override
String get openStreetMap => 'OpenStreetMap';
@override
String get openTopoMap => 'OpenTopoMap';
@override
String get esriSatellite => 'Satellite ESRI';
@override
String get googleHybrid => 'Google Hybride';
@override
String get googleRoadmap => 'Google Carte Routière';
@override
String get googleTerrain => 'Google Terrain';
@override
String get dragToPosition => 'Faire glisser vers la position';
@override
String get createSarMarker => 'Créer un marqueur SAR';
@override
String get compass => 'Boussole';
@override
String get navigationAndContacts => 'Navigation et contacts';
@override
String get sarAlert => 'ALERTE SAR';
@override
String get textCopiedToClipboard => 'Texte copié dans le presse-papiers';
@override
String get cannotReplySenderMissing =>
'Impossible de répondre : informations sur l\'expéditeur manquantes';
@override
String get cannotReplyContactNotFound =>
'Impossible de répondre : contact non trouvé';
@override
String get copyText => 'Copier le texte';
@override
String get saveAsTemplate => 'Enregistrer comme Modèle';
@override
String get templateSaved => 'Modèle enregistré avec succès';
@override
String get templateAlreadyExists => 'Un modèle avec cet emoji existe déjà';
@override
String get deleteMessage => 'Supprimer le message';
@override
String get deleteMessageConfirmation =>
'Êtes-vous sûr de vouloir supprimer ce message?';
@override
String get shareLocation => 'Partager la position';
@override
String shareLocationText(
String markerInfo,
String lat,
String lon,
String url,
) {
return '$markerInfo\n\nCoordonnées: $lat, $lon\n\nGoogle Maps: $url';
}
@override
String get sarLocationShare => 'Position SAR';
@override
String get justNow => 'À l\'instant';
@override
String minutesAgo(int minutes) {
return 'Il y a ${minutes}m';
}
@override
String hoursAgo(int hours) {
return 'Il y a ${hours}h';
}
@override
String daysAgo(int days) {
return 'Il y a ${days}j';
}
@override
String secondsAgo(int seconds) {
return 'Il y a ${seconds}s';
}
@override
String get sending => 'Envoi...';
@override
String get sent => 'Envoyé';
@override
String get delivered => 'Livré';
@override
String deliveredWithTime(int time) {
return 'Livré (${time}ms)';
}
@override
String get failed => 'Échec';
@override
String get broadcast => 'Diffusion';
@override
String deliveredToContacts(int delivered, int total) {
return 'Livré à $delivered/$total contacts';
}
@override
String get allDelivered => 'Tout livré';
@override
String get recipientDetails => 'Détails des destinataires';
@override
String get pending => 'En attente';
@override
String get sarMarkerFoundPerson => 'Personne trouvée';
@override
String get sarMarkerFire => 'Lieu de feu';
@override
String get sarMarkerStagingArea => 'Zone de rassemblement';
@override
String get sarMarkerObject => 'Objet trouvé';
@override
String get from => 'De';
@override
String get coordinates => 'Coordonnées';
@override
String get tapToViewOnMap => 'Appuyez pour voir sur la carte';
@override
String get radioSettings => 'Paramètres radio';
@override
String get frequencyMHz => 'Fréquence (MHz)';
@override
String get frequencyExample => 'ex. : 869,618';
@override
String get bandwidth => 'Bande passante';
@override
String get spreadingFactor => 'Facteur d\'étalement';
@override
String get codingRate => 'Taux de codage';
@override
String get txPowerDbm => 'Puissance TX (dBm)';
@override
String maxPowerDbm(int power) {
return 'Max : $power dBm';
}
@override
String get you => 'Vous';
@override
String exportFailed(String error) {
return 'Echec de l\'exportation : $error';
}
@override
String importFailed(String error) {
return 'Echec de l\'importation : $error';
}
@override
String get unknown => 'Inconnu';
@override
String get onlineLayers => 'Couches en ligne';
@override
String get locationTrail => 'Trace de déplacement';
@override
String get showTrailOnMap => 'Afficher la trace sur la carte';
@override
String get trailVisible => 'La trace est visible sur la carte';
@override
String get trailHiddenRecording =>
'La trace est masquée (enregistrement en cours)';
@override
String get duration => 'Durée';
@override
String get points => 'Points';
@override
String get clearTrail => 'Effacer la trace';
@override
String get clearTrailQuestion => 'Effacer la trace ?';
@override
String get clearTrailConfirmation =>
'Êtes-vous sûr de vouloir effacer la trace de déplacement actuelle ? Cette action ne peut pas être annulée.';
@override
String get noTrailRecorded => 'Aucune trace enregistrée pour le moment';
@override
String get startTrackingToRecord =>
'Démarrez le suivi de position pour enregistrer votre trace';
@override
String get trailControls => 'Contrôles de la trace';
@override
String get contactTrails => 'Traces des contacts';
@override
String get showAllContactTrails => 'Afficher toutes les traces des contacts';
@override
String get noContactsWithLocationHistory =>
'Aucun contact avec historique de localisation';
@override
String showingTrailsForContacts(int count) {
return 'Affichage des traces pour $count contacts';
}
@override
String get individualContactTrails => 'Traces individuelles des contacts';
@override
String get deviceInformation => 'Informations sur l\'appareil';
@override
String get bleName => 'Nom BLE';
@override
String get meshName => 'Nom du maillage';
@override
String get notSet => 'Non défini';
@override
String get model => 'Modèle';
@override
String get version => 'Version';
@override
String get buildDate => 'Date de compilation';
@override
String get firmware => 'Micrologiciel';
@override
String get maxContacts => 'Contacts max';
@override
String get maxChannels => 'Canaux max';
@override
String get publicInfo => 'Informations publiques';
@override
String get meshNetworkName => 'Nom du réseau maillé';
@override
String get nameBroadcastInMesh => 'Nom diffusé dans les annonces du maillage';
@override
String get telemetryAndLocationSharing => 'Télémétrie et partage de position';
@override
String get lat => 'Lat';
@override
String get lon => 'Lon';
@override
String get useCurrentLocation => 'Utiliser la position actuelle';
@override
String get noneUnknown => 'Aucun/Inconnu';
@override
String get chatNode => 'Nœud de discussion';
@override
String get repeater => 'Répéteur';
@override
String get roomChannel => 'Salon/Canal';
@override
String typeNumber(int number) {
return 'Type $number';
}
@override
String copiedToClipboardShort(String label) {
return '$label copié dans le presse-papiers';
}
@override
String failedToSave(String error) {
return 'Échec de l\'enregistrement : $error';
}
@override
String failedToGetLocation(String error) {
return 'Échec de l\'obtention de la position : $error';
}
@override
String get sarTemplates => 'Modèles SAR';
@override
String get manageSarTemplates => 'Gérer les modèles SAR';
@override
String get addTemplate => 'Ajouter un modèle';
@override
String get editTemplate => 'Modifier le modèle';
@override
String get deleteTemplate => 'Supprimer le modèle';
@override
String get templateName => 'Nom du modèle';
@override
String get templateNameHint => 'p. ex. Personne trouvee';
@override
String get templateEmoji => 'Emoji';
@override
String get emojiRequired => 'Emoji est requis';
@override
String get nameRequired => 'Nom est requis';
@override
String get templateDescription => 'Description (facultative)';
@override
String get templateDescriptionHint => 'Ajoutez un contexte supplementaire...';
@override
String get templateColor => 'Couleur';
@override
String get previewFormat => 'Apercu (format de message SAR)';
@override
String get importFromClipboard => 'Importer';
@override
String get exportToClipboard => 'Exporter';
@override
String deleteTemplateConfirmation(String name) {
return 'Supprimer le modele \'$name\' ?';
}
@override
String get templateAdded => 'Modele ajoute';
@override
String get templateUpdated => 'Modele mis a jour';
@override
String get templateDeleted => 'Modele supprime';
@override
String templatesImported(int count) {
String _temp0 = intl.Intl.pluralLogic(
count,
locale: localeName,
other: '$count modeles importes',
one: '1 modele importe',
zero: 'Aucun modele importe',
);
return '$_temp0';
}
@override
String templatesExported(int count) {
String _temp0 = intl.Intl.pluralLogic(
count,
locale: localeName,
other: '$count modeles exportes vers le presse-papiers',
one: '1 modele exporte vers le presse-papiers',
);
return '$_temp0';
}
@override
String get resetToDefaults => 'Réinitialiser aux valeurs par défaut';
@override
String get resetToDefaultsConfirmation =>
'Cela supprimera tous les modèles personnalisés et restaurera les 4 modèles par défaut. Continuer?';
@override
String get reset => 'Réinitialiser';
@override
String get resetComplete => 'Modèles réinitialisés aux valeurs par défaut';
@override
String get noTemplates => 'Aucun modele disponible';
@override
String get tapAddToCreate => 'Appuyez sur + pour creer votre premier modele';
@override
String get ok => 'OK';
@override
String get permissionsSection => 'Autorisations';
@override
String get locationPermission => 'Autorisation de localisation';
@override
String get checking => 'Vérification...';
@override
String get locationPermissionGrantedAlways => 'Accordée (Toujours)';
@override
String get locationPermissionGrantedWhileInUse =>
'Accordée (En cours d\'utilisation)';
@override
String get locationPermissionDeniedTapToRequest =>
'Refusée - Appuyez pour demander';
@override
String get locationPermissionPermanentlyDeniedOpenSettings =>
'Refusée définitivement - Ouvrir les paramètres';
@override
String get locationPermissionDialogContent =>
'L\'autorisation de localisation est définitivement refusée. Veuillez l\'activer dans les paramètres de votre appareil pour utiliser le suivi GPS et le partage de localisation.';
@override
String get openSettings => 'Ouvrir les paramètres';
@override
String get locationPermissionGranted =>
'Autorisation de localisation accordée !';
@override
String get locationPermissionRequiredForGps =>
'L\'autorisation de localisation est nécessaire pour le suivi GPS et le partage de localisation.';
@override
String get locationPermissionAlreadyGranted =>
'L\'autorisation de localisation est déjà accordée.';
@override
String get sarNavyBlue => 'SAR Bleu Marine';
@override
String get sarNavyBlueDescription => 'Mode Professionnel/Opérations';
@override
String get selectRecipient => 'Sélectionner le destinataire';
@override
String get broadcastToAllNearby => 'Diffuser à tous à proximité';
@override
String get searchRecipients => 'Rechercher des destinataires...';
@override
String get noContactsFound => 'Aucun contact trouvé';
@override
String get noRoomsFound => 'Aucune salle trouvée';
@override
String get noRecipientsAvailable => 'Aucun destinataire disponible';
@override
String get noChannelsFound => 'Aucun canal trouvé';
@override
String get newMessage => 'Nouveau message';
@override
String get channel => 'Canal';
@override
String get samplePoliceLead => 'Chef de Police';
@override
String get sampleDroneOperator => 'Opérateur de Drone';
@override
String get sampleFirefighterAlpha => 'Pompier';
@override
String get sampleMedicCharlie => 'Médecin';
@override
String get sampleCommandDelta => 'Commandement';
@override
String get sampleFireEngine => 'Camion de Pompiers';
@override
String get sampleAirSupport => 'Soutien Aérien';
@override
String get sampleBaseCoordinator => 'Coordinateur de Base';
@override
String get channelEmergency => 'Urgence';
@override
String get channelCoordination => 'Coordination';
@override
String get channelUpdates => 'Mises à jour';
@override
String get sampleTeamMember => 'Membre d\'Équipe Exemple';
@override
String get sampleScout => 'Éclaireur Exemple';
@override
String get sampleBase => 'Base Exemple';
@override
String get sampleSearcher => 'Chercheur Exemple';
@override
String get sampleObjectBackpack => ' Sac à dos trouvé - couleur bleue';
@override
String get sampleObjectVehicle =>
' Véhicule abandonné - vérifier le propriétaire';
@override
String get sampleObjectCamping => ' Équipement de camping découvert';
@override
String get sampleObjectTrailMarker => ' Balise de sentier trouvée hors piste';
@override
String get sampleMsgAllTeamsCheckIn => 'Toutes les équipes se signaler';
@override
String get sampleMsgWeatherUpdate =>
'Mise à jour météo : Ciel dégagé, temp 18°C';
@override
String get sampleMsgBaseCamp =>
'Camp de base établi à la zone de rassemblement';
@override
String get sampleMsgTeamAlpha => 'Équipe se déplaçant vers le secteur 2';
@override
String get sampleMsgRadioCheck =>
'Test radio - toutes les stations répondent';
@override
String get sampleMsgWaterSupply =>
'Approvisionnement en eau disponible au point de contrôle 3';
@override
String get sampleMsgTeamBravo => 'Équipe signale : secteur 1 dégagé';
@override
String get sampleMsgEtaRallyPoint =>
'ETA au point de ralliement : 15 minutes';
@override
String get sampleMsgSupplyDrop =>
'Largage de ravitaillement confirmé pour 14h00';
@override
String get sampleMsgDroneSurvey =>
'Surveillance par drone terminée - aucune découverte';
@override
String get sampleMsgTeamCharlie => 'Équipe demande du renfort';
@override
String get sampleMsgRadioDiscipline =>
'Toutes les unités : maintenir la discipline radio';
@override
String get sampleMsgUrgentMedical =>
'URGENT : Assistance médicale nécessaire au secteur 4';
@override
String get sampleMsgAdultMale => ' Homme adulte, conscient';
@override
String get sampleMsgFireSpotted => 'Feu repéré - coordonnées à venir';
@override
String get sampleMsgSpreadingRapidly => ' Se propage rapidement !';
@override
String get sampleMsgPriorityHelicopter =>
'PRIORITÉ : Besoin de soutien hélicoptère';
@override
String get sampleMsgMedicalTeamEnRoute =>
'Équipe médicale en route vers votre position';
@override
String get sampleMsgEvacHelicopter =>
'Hélicoptère d\'évacuation ETA 10 minutes';
@override
String get sampleMsgEmergencyResolved => 'Urgence résolue - tout est clair';
@override
String get sampleMsgEmergencyStagingArea =>
' Zone de rassemblement d\'urgence';
@override
String get sampleMsgEmergencyServices =>
'Services d\'urgence notifiés et en réponse';
@override
String get sampleAlphaTeamLead => 'Chef d\'Équipe';
@override
String get sampleBravoScout => 'Éclaireur';
@override
String get sampleCharlieMedic => 'Médecin';
@override
String get sampleDeltaNavigator => 'Navigateur';
@override
String get sampleEchoSupport => 'Soutien';
@override
String get sampleBaseCommand => 'Commandement de Base';
@override
String get sampleFieldCoordinator => 'Coordinateur de Terrain';
@override
String get sampleMedicalTeam => 'Équipe Médicale';
@override
String get mapDrawing => 'Dessin de Carte';
@override
String get navigateToDrawing => 'Naviguer vers le Dessin';
@override
String get copyCoordinates => 'Copier les Coordonnées';
@override
String get hideFromMap => 'Masquer de la Carte';
@override
String get lineDrawing => 'Ligne';
@override
String get rectangleDrawing => 'Rectangle';
@override
String get manualCoordinates => 'Coordonnées Manuelles';
@override
String get enterCoordinatesManually => 'Entrer les coordonnées manuellement';
@override
String get latitudeLabel => 'Latitude';
@override
String get longitudeLabel => 'Longitude';
@override
String get exampleCoordinates => 'Exemple: 46.0569, 14.5058';
@override
String get shareDrawing => 'Partager le Dessin';
@override
String get shareWithAllNearbyDevices =>
'Partager avec tous les appareils à proximité';
@override
String get shareToRoom => 'Partager dans la Salle';
@override
String get sendToPersistentStorage =>
'Envoyer au stockage persistant de la salle';
@override
String get deleteDrawingConfirm =>
'Êtes-vous sûr de vouloir supprimer ce dessin?';
@override
String get drawingDeleted => 'Dessin supprimé';
@override
String yourDrawingsCount(int count) {
return 'Vos Dessins ($count)';
}
@override
String get shared => 'Partagé';
@override
String get line => 'Ligne';
@override
String get rectangle => 'Rectangle';
@override
String get updateAvailable => 'Mise à Jour Disponible';
@override
String get currentVersion => 'Actuelle';
@override
String get latestVersion => 'Dernière';
@override
String get downloadUpdate => 'Télécharger';
@override
String get updateLater => 'Plus Tard';
@override
String get cadastralParcels => 'Parcelles Cadastrales';
@override
String get forestRoads => 'Chemins Forestiers';
@override
String get wmsOverlays => 'Superpositions WMS';
@override
String get hikingTrails => 'Sentiers de Randonnée';
@override
String get mainRoads => 'Routes Principales';
@override
String get houseNumbers => 'Numéros de Maison';
@override
String get fireHazardZones => 'Zones à Risque d\'Incendie';
@override
String get historicalFires => 'Incendies Historiques';
@override
String get firebreaks => 'Coupe-feu';
@override
String get krasFireZones => 'Zones d\'Incendie Kras';
@override
String get placeNames => 'Noms de Lieux';
@override
String get municipalityBorders => 'Limites Municipales';
@override
String get topographicMap => 'Carte Topographique 1:25000';
@override
String get recentMessages => 'Messages Récents';
@override
String get addChannel => 'Ajouter un Canal';
@override
String get channelName => 'Nom du Canal';
@override
String get channelNameHint => 'par ex. Équipe de Sauvetage Alpha';
@override
String get channelSecret => 'Mot de Passe du Canal';
@override
String get channelSecretHint => 'Mot de passe partagé pour ce canal';
@override
String get channelSecretHelp =>
'Ce mot de passe doit être partagé avec tous les membres de l\'équipe qui ont besoin d\'accéder à ce canal';
@override
String get channelTypesInfo =>
'Canaux hash (#équipe) : Mot de passe généré automatiquement à partir du nom. Même nom = même canal sur tous les appareils.\n\nCanaux privés : Utilisez un mot de passe explicite. Seuls ceux qui ont le mot de passe peuvent rejoindre.';
@override
String get hashChannelInfo =>
'Canal hash : Le mot de passe sera automatiquement généré à partir du nom du canal. Toute personne utilisant le même nom rejoindra le même canal.';
@override
String get channelNameRequired => 'Le nom du canal est requis';
@override
String get channelNameTooLong =>
'Le nom du canal doit contenir 31 caractères ou moins';
@override
String get channelSecretRequired => 'Le mot de passe du canal est requis';
@override
String get channelSecretTooLong =>
'Le mot de passe du canal doit contenir 32 caractères ou moins';
@override
String get invalidAsciiCharacters =>
'Seuls les caractères ASCII sont autorisés';
@override
String get channelCreatedSuccessfully => 'Canal créé avec succès';
@override
String channelCreationFailed(String error) {
return 'Échec de la création du canal : $error';
}
@override
String get deleteChannel => 'Supprimer le Canal';
@override
String deleteChannelConfirmation(String channelName) {
return 'Êtes-vous sûr de vouloir supprimer le canal \"$channelName\" ? Cette action ne peut pas être annulée.';
}
@override
String get channelDeletedSuccessfully => 'Canal supprimé avec succès';
@override
String channelDeletionFailed(String error) {
return 'Échec de la suppression du canal : $error';
}
@override
String get createChannel => 'Créer un Canal';
@override
String get wizardBack => 'Retour';
@override
String get wizardSkip => 'Passer';
@override
String get wizardNext => 'Suivant';
@override
String get wizardGetStarted => 'Commencer';
@override
String get wizardWelcomeTitle => 'Bienvenue dans MeshCore SAR';
@override
String get wizardWelcomeDescription =>
'Un outil de communication hors ligne puissant pour les opérations de recherche et de sauvetage. Connectez-vous avec votre équipe en utilisant la technologie radio maillée lorsque les réseaux traditionnels ne sont pas disponibles.';
@override
String get wizardConnectingTitle => 'Connexion à votre Radio';
@override
String get wizardConnectingDescription =>
'Connectez votre smartphone à un appareil radio MeshCore via Bluetooth pour commencer à communiquer hors ligne.';
@override
String get wizardConnectingFeature1 =>
'Rechercher les appareils MeshCore à proximité';
@override
String get wizardConnectingFeature2 =>
'Coupler avec votre radio via Bluetooth';
@override
String get wizardConnectingFeature3 =>
'Fonctionne entièrement hors ligne - aucun internet requis';
@override
String get wizardChannelTitle => 'Canaux';
@override
String get wizardChannelDescription =>
'Diffusez des messages à tous sur un canal, parfait pour les annonces et la coordination de toute l\'équipe.';
@override
String get wizardChannelFeature1 =>
'Canal public pour la communication générale de l\'équipe';
@override
String get wizardChannelFeature2 =>
'Créer des canaux personnalisés pour des groupes spécifiques';
@override
String get wizardChannelFeature3 =>
'Les messages sont automatiquement relayés par le maillage';
@override
String get wizardContactsTitle => 'Contacts';
@override
String get wizardContactsDescription =>
'Les membres de votre équipe apparaissent automatiquement lorsqu\'ils rejoignent le réseau maillé. Envoyez-leur des messages directs ou consultez leur emplacement.';
@override
String get wizardContactsFeature1 => 'Contacts découverts automatiquement';
@override
String get wizardContactsFeature2 => 'Envoyer des messages directs privés';
@override
String get wizardContactsFeature3 =>
'Voir le niveau de batterie et l\'heure de dernière vue';
@override
String get wizardMapTitle => 'Carte & Localisation';
@override
String get wizardMapDescription =>
'Suivez votre équipe en temps réel et marquez les emplacements importants pour les opérations de recherche et de sauvetage.';
@override
String get wizardMapFeature1 =>
'Marqueurs SAR pour les personnes retrouvées, les incendies et les zones de rassemblement';
@override
String get wizardMapFeature2 =>
'Suivi GPS en temps réel des membres de l\'équipe';
@override
String get wizardMapFeature3 =>
'Télécharger des cartes hors ligne pour les zones éloignées';
@override
String get wizardMapFeature4 =>
'Dessiner des formes et partager des informations tactiques';
@override
String get viewWelcomeTutorial => 'Voir le tutoriel de bienvenue';
@override
String get allTeamContacts => 'Tous les contacts de l\'équipe';
@override
String directMessagesInfo(int count) {
return 'Messages directs avec confirmations. Envoyé à $count membres de l\'équipe.';
}
@override
String sarMarkerSentToContacts(int count) {
return 'Marqueur SAR envoyé à $count contacts';
}
@override
String get noContactsAvailable => 'Aucun contact d\'équipe disponible';
@override
String get reply => 'Répondre';
@override
String get technicalDetails => 'Détails techniques';
@override
String get messageTechnicalDetails => 'Détails techniques du message';
@override
String get linkQuality => 'Qualité du lien';
@override
String get delivery => 'Livraison';
@override
String get status => 'Statut';
@override
String get expectedAckTag => 'Balise ACK attendue';
@override
String get roundTrip => 'Aller-retour';
@override
String get retryAttempt => 'Tentative de renvoi';
@override
String get floodFallback => 'Repli inondation';
@override
String get identity => 'Identité';
@override
String get messageId => 'ID du message';
@override
String get sender => 'Expéditeur';
@override
String get senderKey => 'Clé de l\'expéditeur';
@override
String get recipient => 'Destinataire';
@override
String get recipientKey => 'Clé du destinataire';
@override
String get voice => 'Voix';
@override
String get voiceId => 'ID vocal';
@override
String get envelope => 'Enveloppe';
@override
String get sessionProgress => 'Progression de session';
@override
String get complete => 'Complet';
@override
String get rawDump => 'Vidage brut';
@override
String get cannotRetryMissingRecipient =>
'Impossible de réessayer : informations du destinataire manquantes';
@override
String get voiceUnavailable => 'Voix indisponible pour le moment';
@override
String get requestingVoice => 'Demande de voix';
}