@nice2dev/i18n 1.2.1 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -7974,7 +7974,3063 @@ OU : Artiste;Titre;Version`,
7974
7974
  "importExport.created": "Créé",
7975
7975
  "importExport.download": "Télécharger",
7976
7976
  "importExport.title": "Import / export",
7977
- "roundList.addRound": "+ Ajouter une manche"
7977
+ "roundList.addRound": "+ Ajouter une manche",
7978
+ // ── Licensing ──
7979
+ "usageAnalyticsDashboard.n24Hours": "24 heures",
7980
+ "usageAnalyticsDashboard.n7Days": "7 jours",
7981
+ "usageAnalyticsDashboard.n30Days": "30 jours",
7982
+ "usageAnalyticsDashboard.n90Days": "90 jours",
7983
+ "usageAnalyticsDashboard.n1Year": "1 an",
7984
+ "usageAnalyticsDashboard.allTime": "Toute la période",
7985
+ "usageAnalyticsDashboard.featureUsage": "Utilisation des fonctionnalités",
7986
+ "usageAnalyticsDashboard.feature": "Fonctionnalité",
7987
+ "usageAnalyticsDashboard.totalUses": "Utilisations totales",
7988
+ "usageAnalyticsDashboard.users2": "Utilisateurs",
7989
+ "usageAnalyticsDashboard.avgUser": "Moy./utilisateur",
7990
+ "usageAnalyticsDashboard.trend": "Tendance",
7991
+ "usageAnalyticsDashboard.loading": "Chargement...",
7992
+ "usageAnalyticsDashboard.noDataAvailable": "Aucune donnée disponible",
7993
+ "usageAnalyticsDashboard.topActiveUsers": "Utilisateurs les plus actifs",
7994
+ "usageAnalyticsDashboard.user": "Utilisateur",
7995
+ "usageAnalyticsDashboard.sessions": "Sessions",
7996
+ "usageAnalyticsDashboard.duration": "Durée",
7997
+ "usageAnalyticsDashboard.features": "Fonctionnalités",
7998
+ "usageAnalyticsDashboard.lastActive": "Dernière activité",
7999
+ "usageAnalyticsDashboard.licenseUtilization": "Utilisation des licences",
8000
+ "usageAnalyticsDashboard.noLicenses": "Aucune licence",
8001
+ "usageAnalyticsDashboard.seats": "{usedSeats}/{totalSeats} postes",
8002
+ "usageAnalyticsDashboard.usageAnalytics": "Analyse d'utilisation",
8003
+ "usageAnalyticsDashboard.monitorLicenseUsageAndFeature": "Surveillez l'utilisation des licences et l'adoption des fonctionnalités",
8004
+ "usageAnalyticsDashboard.refresh": "Actualiser",
8005
+ "usageAnalyticsDashboard.export": "Exporter",
8006
+ "usageAnalyticsDashboard.activeLicenses": "Licences actives",
8007
+ "usageAnalyticsDashboard.activeUsers": "Utilisateurs actifs",
8008
+ "usageAnalyticsDashboard.featureUses": "Utilisations des fonctionnalités",
8009
+ "usageAnalyticsDashboard.avgSession": "Session moy.",
8010
+ "usageAnalyticsDashboard.utilization": "Utilisation",
8011
+ "usageAnalyticsDashboard.geographicDistribution": "Répartition géographique",
8012
+ "usageAnalyticsDashboard.users": "{users} utilisateurs",
8013
+ "activationWizard.licenseKeyFormatIsInvalid": "Le format de la clé de licence est invalide. Format attendu : XXXX-XXXX-XXXX-XXXX-XXXX",
8014
+ "activationWizard.licenseKeyValidationFailed": "Échec de la validation de la clé de licence",
8015
+ "activationWizard.maximumHardwareActivationsReached": "Nombre maximal d'activations matérielles atteint",
8016
+ "activationWizard.pleaseAcceptTheTermsOf": "Veuillez accepter les conditions d'utilisation pour continuer",
8017
+ "activationWizard.enterKey": "Saisir la clé",
8018
+ "activationWizard.validate": "Valider",
8019
+ "activationWizard.hardware": "Matériel",
8020
+ "activationWizard.terms": "Conditions",
8021
+ "activationWizard.activate": "Activer",
8022
+ "activationWizard.done": "Terminé",
8023
+ "activationWizard.activateLicense": "Activer la licence",
8024
+ "activationWizard.followTheStepsToActivate": "Suivez les étapes pour activer votre licence Nice2Dev",
8025
+ "activationWizard.activationFailed": "Échec de l'activation",
8026
+ "activationWizard.pleaseContactSupportAt": "Veuillez contacter le support :",
8027
+ "activationWizard.tryAgain": "Réessayer",
8028
+ "activationWizard.startOver": "Recommencer",
8029
+ "activationWizard.licenseKey": "Clé de licence",
8030
+ "activationWizard.enterTheLicenseKeyYou": "Saisissez la clé de licence reçue lors de l'achat",
8031
+ "activationWizard.machineNameOptional": "Nom de la machine (facultatif)",
8032
+ "activationWizard.myWorkPc": "Mon PC de travail",
8033
+ "activationWizard.continue": "Continuer",
8034
+ "activationWizard.cancel": "Annuler",
8035
+ "activationWizard.activateOffline": "Activer hors ligne",
8036
+ "activationWizard.validatingLicense": "Validation de la licence...",
8037
+ "activationWizard.checkingHardware": "Vérification du matériel...",
8038
+ "activationWizard.verifyingYourLicenseKeyWith": "Vérification de votre clé de licence auprès du serveur",
8039
+ "activationWizard.collectingHardwareInformationForActivati": "Collecte des informations matérielles pour l'activation",
8040
+ "activationWizard.licenseDetails": "Détails de la licence",
8041
+ "activationWizard.tier": "Formule :",
8042
+ "activationWizard.licensee": "Titulaire :",
8043
+ "activationWizard.maxMachines": "Machines max. :",
8044
+ "activationWizard.thisMachine": "Cette machine :",
8045
+ "activationWizard.termsOfService": "Conditions d'utilisation",
8046
+ "activationWizard.byActivatingThisLicenseYou": "En activant cette licence, vous acceptez le contrat de licence du logiciel Nice2Dev. Cette licence vous autorise à utiliser le logiciel sur le nombre de machines indiqué, selon votre formule de licence. Toute redistribution non autorisée, rétro-ingénierie ou violation de ces conditions peut entraîner la révocation de la licence.",
8047
+ "activationWizard.iAcceptThe": "J'accepte les",
8048
+ "activationWizard.and": "et la",
8049
+ "activationWizard.privacyPolicy": "Politique de confidentialité",
8050
+ "activationWizard.back": "Retour",
8051
+ "activationWizard.activatingLicense": "Activation de la licence...",
8052
+ "activationWizard.pleaseWaitWhileWeActivate": "Veuillez patienter pendant l'activation de votre licence",
8053
+ "activationWizard.licenseActivated": "Licence activée !",
8054
+ "activationWizard.yourLicenseHasBeenSuccessfully": "Votre licence a été activée avec succès sur cette machine.",
8055
+ "activationWizard.licenseKey2": "Clé de licence :",
8056
+ "activationWizard.machine": "Machine :",
8057
+ "activationWizard.expires": "Expire le :",
8058
+ "activationWizard.offlineActivation": "Activation hors ligne",
8059
+ "activationWizard.challengeCodeSendThisTo": "Code de défi (à envoyer au support) :",
8060
+ "activationWizard.responseCodeFromSupport": "Code de réponse (fourni par le support) :",
8061
+ "activationWizard.pasteTheResponseCodeHere": "Collez le code de réponse ici...",
8062
+ "licensePortal.seats": "Postes",
8063
+ "licensePortal.licensee": "Titulaire : {licensee}",
8064
+ "licensePortal.email": "E-mail : {email}",
8065
+ "licensePortal.expiresInDays": "Expire dans {daysRemaining} jours ({expiresAt})",
8066
+ "licensePortal.expiresToday": "Expire aujourd'hui",
8067
+ "licensePortal.expired": "Expirée le {expiresAt}",
8068
+ "licensePortal.activate": "Activer",
8069
+ "licensePortal.deactivate": "Désactiver",
8070
+ "licensePortal.loadingLicenses": "Chargement des licences...",
8071
+ "licensePortal.errorLoadingLicenses": "Erreur lors du chargement des licences",
8072
+ "licensePortal.retry": "Réessayer",
8073
+ "licensePortal.overview": "Vue d'ensemble",
8074
+ "licensePortal.licenses": "Licences",
8075
+ "licensePortal.seatManagement": "Gestion des postes",
8076
+ "licensePortal.billing": "Facturation",
8077
+ "licensePortal.analytics": "Analyses",
8078
+ "licensePortal.settings": "Paramètres",
8079
+ "licensePortal.licensePortal": "Portail des licences",
8080
+ "licensePortal.manageYourNice2devLicensesAnd": "Gérez vos licences et abonnements Nice2Dev",
8081
+ "licensePortal.totalLicenses": "Licences au total",
8082
+ "licensePortal.active": "Actives",
8083
+ "licensePortal.seatsUsed": "Postes utilisés",
8084
+ "licensePortal.expiringSoon": "Expirent bientôt",
8085
+ "licensePortal.licensesExpiringSoon": "Licences expirant bientôt",
8086
+ "licensePortal.daysRemainingCount": "{days} jours restants",
8087
+ "licensePortal.recentActivity": "Activité récente",
8088
+ "licensePortal.noRecentActivity": "Aucune activité récente",
8089
+ "licensePortal.noLicensesFoundContactSupport": "Aucune licence trouvée. Contactez le support pour acheter une licence.",
8090
+ "licensePortal.currentSubscription": "Abonnement actuel",
8091
+ "licensePortal.plan": "Formule",
8092
+ "licensePortal.status": "Statut",
8093
+ "licensePortal.currentPeriod": "Période en cours",
8094
+ "licensePortal.invoices": "Factures",
8095
+ "licensePortal.download": "Télécharger",
8096
+ "licensePortal.noInvoices": "Aucune facture",
8097
+ "licensePortal.selectALicenseToManage": "Sélectionnez une licence pour gérer l'attribution des postes.",
8098
+ "licensePortal.portalSettings": "Paramètres du portail",
8099
+ "licenseTransfer.pleaseConfirmLicenseDeactivation": "Veuillez confirmer la désactivation de la licence",
8100
+ "licenseTransfer.transferLicense": "Transférer la licence",
8101
+ "licenseTransfer.transferALicenseToAnother": "Transférer une licence à un autre utilisateur ou une autre organisation",
8102
+ "licenseTransfer.selectALicenseToTransfer": "Sélectionnez la licence à transférer",
8103
+ "licenseTransfer.noTransferableLicensesFound": "Aucune licence transférable trouvée",
8104
+ "licenseTransfer.seatsUsed": "{activeSeats}/{maxSeats} postes utilisés",
8105
+ "licenseTransfer.transferringLicense": "Licence transférée :",
8106
+ "licenseTransfer.recipientEmail": "E-mail du destinataire",
8107
+ "licenseTransfer.recipientCompanyCom": "destinataire@entreprise.fr",
8108
+ "licenseTransfer.validate": "Vérifier",
8109
+ "licenseTransfer.validRecipient": "Destinataire valide",
8110
+ "licenseTransfer.invalidRecipient": "Destinataire non valide",
8111
+ "licenseTransfer.externalOrganization": "(Organisation externe)",
8112
+ "licenseTransfer.recipientName": "Nom du destinataire",
8113
+ "licenseTransfer.johnDoe": "Jean Dupont",
8114
+ "licenseTransfer.transferReason": "Motif du transfert",
8115
+ "licenseTransfer.notesOptional": "Remarques (facultatif)",
8116
+ "licenseTransfer.anyAdditionalInformation": "Informations complémentaires...",
8117
+ "licenseTransfer.back": "Retour",
8118
+ "licenseTransfer.reviewTransfer": "Vérifier le transfert",
8119
+ "licenseTransfer.reviewTransferDetails": "Vérifier les détails du transfert",
8120
+ "licenseTransfer.licenseKey": "Clé de licence :",
8121
+ "licenseTransfer.currentLicensee": "Titulaire actuel :",
8122
+ "licenseTransfer.tier": "Formule :",
8123
+ "licenseTransfer.transferTo": "Transférer à :",
8124
+ "licenseTransfer.recipientEmail2": "E-mail du destinataire :",
8125
+ "licenseTransfer.reason": "Motif :",
8126
+ "licenseTransfer.notes": "Remarques :",
8127
+ "licenseTransfer.important": "Important",
8128
+ "licenseTransfer.onceTheTransferIsCompleted": "Une fois le transfert terminé, cette licence sera désactivée sur toutes vos machines et le nouveau titulaire devra l'activer.",
8129
+ "licenseTransfer.iUnderstandThatThisLicense": "Je comprends que cette licence sera désactivée et transférée au destinataire. Cette action ne peut pas être annulée sans l'intervention d'un administrateur.",
8130
+ "licenseTransfer.processing": "Traitement...",
8131
+ "licenseTransfer.initiateTransfer": "Lancer le transfert",
8132
+ "licenseTransfer.processingTransfer": "Traitement du transfert...",
8133
+ "licenseTransfer.pleaseWaitWhileWeProcess": "Veuillez patienter pendant le traitement de votre demande de transfert",
8134
+ "licenseTransfer.transferInitiated": "Transfert lancé",
8135
+ "licenseTransfer.yourTransferRequestHasBeen": "Votre demande de transfert a été soumise pour approbation.",
8136
+ "licenseTransfer.anEmailHasBeenSent": "Un e-mail contenant les instructions pour accepter le transfert a été envoyé au destinataire.",
8137
+ "licenseTransfer.transferId": "ID du transfert :",
8138
+ "licenseTransfer.status": "Statut :",
8139
+ "licenseTransfer.expires": "Expire le :",
8140
+ "licenseTransfer.done": "Terminé",
8141
+ "licensing.checkingLicense": "Vérification de la licence...",
8142
+ "licensing.noLicense": "Aucune licence",
8143
+ "licensing.gracePeriod": "(Période de grâce)",
8144
+ "licensing.daysRemaining": "{daysRemaining} jours restants",
8145
+ "licensing.activationFailed": "Échec de l'activation",
8146
+ "licensing.enterLicenseKey": "Saisir la clé de licence",
8147
+ "licensing.activating": "Activation...",
8148
+ "licensing.activateLicense": "Activer la licence",
8149
+ "licensing.upgradeTo": "Passer à {targetTier}",
8150
+ "licensing.moreFeatures": "+{missingFeatures} autres fonctionnalités",
8151
+ "licensing.upgradeNow": "Mettre à niveau",
8152
+ "licensing.recommended": "Recommandé",
8153
+ "licensing.perMonth": "/mois",
8154
+ "licensing.currentPlan": "Formule actuelle",
8155
+ "licensing.select": "Choisir",
8156
+ "licensing.overview": "Vue d'ensemble",
8157
+ "licensing.activation": "Activation",
8158
+ "licensing.seats": "Postes",
8159
+ "licensing.features": "Fonctionnalités",
8160
+ "licensing.plans": "Formules",
8161
+ "licensing.loadingLicenseInformation": "Chargement des informations de licence...",
8162
+ "licensing.licensee": "Titulaire",
8163
+ "licensing.email": "E-mail",
8164
+ "licensing.expires": "Expire le",
8165
+ "licensing.perpetual": "Perpétuelle",
8166
+ "licensing.refreshing": "Actualisation...",
8167
+ "licensing.refresh": "Actualiser",
8168
+ "licensing.deactivate": "Désactiver",
8169
+ "licensing.noActiveLicenseGoTo": "Aucune licence active. Accédez à l'onglet Activation pour saisir votre clé de licence.",
8170
+ "licensing.of": "sur",
8171
+ "licensing.seatsInUse": "postes utilisés",
8172
+ "licensing.floating": "({floatingSeats} flottants)",
8173
+ "licensing.machinesBound": "Machines liées : {boundMachines} / {maxMachines}",
8174
+ "licensing.activateALicenseToView": "Activez une licence pour afficher les informations sur les postes.",
8175
+ "licensing.noExplicitFeaturesTierBased": "Aucune fonctionnalité explicite — l'accès dépend de la formule.",
8176
+ "licensing.activateALicenseToView2": "Activez une licence pour afficher les fonctionnalités.",
8177
+ "licensing.licenseManager": "Gestionnaire de licences",
8178
+ "licensing.searchLicenses": "Rechercher des licences...",
8179
+ "licensing.generate": "+ Générer",
8180
+ "licensing.noLicensesMatchYourSearch": "Aucune licence ne correspond à votre recherche.",
8181
+ "licensing.noLicensesFound": "Aucune licence trouvée.",
8182
+ "licensing.issued": "Émise",
8183
+ "licensing.enabled": "{features} activées",
8184
+ "licensing.extend1Year": "Prolonger d'1 an",
8185
+ "licensing.n5Seats": "+5 postes",
8186
+ "licensing.revoke": "Révoquer",
8187
+ "licensing.licenseCountOne": "{count} licence",
8188
+ "licensing.licenseCountMany": "{count} licences",
8189
+ "licensing.matching": " correspondant à « {search} »",
8190
+ "licensing.activeCount": "{count} actives",
8191
+ "licensePortal.status.valid": "Valide",
8192
+ "licensePortal.status.expired": "Expirée",
8193
+ "licensePortal.status.revoked": "Révoquée",
8194
+ "licensePortal.status.invalid": "Invalide",
8195
+ "licensePortal.status.grace": "Période de grâce",
8196
+ "licensePortal.status.pending": "En attente",
8197
+ "licensing.tier.trial": "Essai",
8198
+ "licensing.tier.personal": "Personnel",
8199
+ "licensing.tier.team": "Équipe",
8200
+ "licensing.tier.enterprise": "Entreprise",
8201
+ "licensing.tier.site": "Licence de site",
8202
+ "licensing.tier.oem": "OEM",
8203
+ "licenseTransfer.status.pending": "En attente d'acceptation",
8204
+ "licenseTransfer.status.pending_approval": "En attente d'approbation",
8205
+ "licenseTransfer.status.approved": "Approuvé",
8206
+ "licenseTransfer.status.rejected": "Refusé",
8207
+ "licenseTransfer.status.completed": "Terminé",
8208
+ "licenseTransfer.status.cancelled": "Annulé",
8209
+ "licenseTransfer.status.expired": "Expiré",
8210
+ "licenseTransfer.reason.employee_change": "Départ ou arrivée d'un employé",
8211
+ "licenseTransfer.reason.department_transfer": "Changement de service",
8212
+ "licenseTransfer.reason.organization_sale": "Vente ou fusion de l'organisation",
8213
+ "licenseTransfer.reason.other": "Autre",
8214
+ "licensing.feature.core": "Composants de base",
8215
+ "licensing.feature.basic-components": "Composants simples",
8216
+ "licensing.feature.advanced-components": "Composants avancés",
8217
+ "licensing.feature.theming": "Thèmes personnalisés",
8218
+ "licensing.feature.i18n": "Internationalisation",
8219
+ "licensing.feature.collaboration": "Collaboration",
8220
+ "licensing.feature.analytics": "Analyses",
8221
+ "licensing.feature.priority-support": "Support prioritaire",
8222
+ "licensing.feature.white-label": "Marque blanche",
8223
+ "licensing.feature.sso": "Authentification unique (SSO)",
8224
+ "licensing.feature.audit-log": "Journal d'audit",
8225
+ "licensing.feature.custom-branding": "Image de marque personnalisée",
8226
+ "licensing.feature.api-access": "Accès à l'API",
8227
+ "licensing.feature.unlimited-seats": "Postes illimités",
8228
+ "licensing.feature.source-code-access": "Accès au code source",
8229
+ "licensing.feature.dedicated-support": "Support dédié",
8230
+ "licensing.feature.redistribution": "Droits de redistribution",
8231
+ "licensing.feature.custom-licensing": "Licences personnalisées",
8232
+ "licensing.feature.trial-watermark": "Filigrane d'essai",
8233
+ "licensing.feature.game-editor": "Éditeur de jeux",
8234
+ "licensing.feature.game-export": "Export de jeux",
8235
+ "licensing.feature.game-multiplayer": "Multijoueur",
8236
+ "licensing.feature.game-build-cloud": "Compilation dans le cloud",
8237
+ "licensing.feature.spatial-editor": "Éditeur spatial",
8238
+ "licensing.feature.spatial-3d": "Visualisation 3D",
8239
+ "licensing.feature.spatial-bim": "Intégration BIM",
8240
+ "licensing.plan.trial.name": "Essai",
8241
+ "licensing.plan.trial.description": "Essai gratuit de 14 jours avec toutes les fonctionnalités",
8242
+ "licensing.plan.trial.highlight0": "Toutes les fonctionnalités pendant 14 jours",
8243
+ "licensing.plan.trial.highlight1": "Aucune carte bancaire requise",
8244
+ "licensing.plan.personal.name": "Personnel",
8245
+ "licensing.plan.personal.description": "Pour les développeurs indépendants",
8246
+ "licensing.plan.personal.highlight0": "Tous les composants UI",
8247
+ "licensing.plan.personal.highlight1": "Thèmes personnalisés",
8248
+ "licensing.plan.personal.highlight2": "Support par e-mail",
8249
+ "licensing.plan.team.name": "Équipe",
8250
+ "licensing.plan.team.description": "Pour les petites et moyennes équipes",
8251
+ "licensing.plan.team.highlight0": "Jusqu'à 10 postes",
8252
+ "licensing.plan.team.highlight1": "Outils de collaboration",
8253
+ "licensing.plan.team.highlight2": "Support prioritaire",
8254
+ "licensing.plan.enterprise.name": "Entreprise",
8255
+ "licensing.plan.enterprise.description": "Pour les grandes organisations",
8256
+ "licensing.plan.enterprise.highlight0": "Jusqu'à 50 postes",
8257
+ "licensing.plan.enterprise.highlight1": "SSO et SAML",
8258
+ "licensing.plan.enterprise.highlight2": "Marque blanche",
8259
+ "licensing.plan.enterprise.highlight3": "Accès à l'API",
8260
+ "licensing.plan.site.name": "Licence de site",
8261
+ "licensing.plan.site.description": "Utilisation illimitée pour votre organisation",
8262
+ "licensing.plan.site.highlight0": "Postes illimités",
8263
+ "licensing.plan.site.highlight1": "Accès au code source",
8264
+ "licensing.plan.site.highlight2": "Ingénieur support dédié",
8265
+ "licensing.plan.oem.name": "OEM",
8266
+ "licensing.plan.oem.description": "Intégrez-le à vos produits",
8267
+ "licensing.plan.oem.highlight0": "Droits de redistribution",
8268
+ "licensing.plan.oem.highlight1": "Licences personnalisées",
8269
+ "licensing.plan.oem.highlight2": "Support complet",
8270
+ "licensing.free": "Gratuit",
8271
+ // ── Templates ──
8272
+ "health.overview": "Vue d'ensemble",
8273
+ "health.workouts": "Entraînements",
8274
+ "health.nutrition": "Nutrition",
8275
+ "health.sleep": "Sommeil",
8276
+ "health.medical": "Médical",
8277
+ "health.medications": "Médicaments",
8278
+ "health.healthOverview": "Aperçu de la santé",
8279
+ "health.thisWeeksWorkouts": "Entraînements de la semaine",
8280
+ "health.minutes": "Minutes",
8281
+ "health.calories": "Calories",
8282
+ "health.sleep7DayAverage": "Sommeil (moyenne sur 7 jours)",
8283
+ "health.perNight": "Par nuit",
8284
+ "health.quality4": "Qualité : {avgQuality}/4",
8285
+ "health.todaysNutrition": "Nutrition du jour",
8286
+ "health.latestVitals": "Dernières constantes",
8287
+ "health.kg": "kg",
8288
+ "health.weight": "Poids",
8289
+ "health.bloodPressure": "Tension artérielle",
8290
+ "health.heartRate": "Fréquence cardiaque",
8291
+ "health.noVitalsRecorded": "Aucune constante enregistrée",
8292
+ "health.todaysMedications": "Médicaments du jour",
8293
+ "health.noMedicationsScheduled": "Aucun médicament prévu",
8294
+ "health.taken": "Pris",
8295
+ "health.pending": "En attente",
8296
+ "health.workouts30Days": "Entraînements (30 jours)",
8297
+ "health.totalMinutes": "Minutes au total",
8298
+ "health.caloriesBurned": "Calories brûlées",
8299
+ "health.recentWorkouts": "Entraînements récents",
8300
+ "health.noWorkoutsLoggedYet": "Aucun entraînement enregistré",
8301
+ "health.minCal": "{date} • {duration} min • {caloriesBurned} kcal",
8302
+ "health.protein": "Protéines",
8303
+ "health.carbs": "Glucides",
8304
+ "health.fat": "Lipides",
8305
+ "health.todaysMeals": "Repas du jour",
8306
+ "health.noMealsLoggedToday": "Aucun repas enregistré aujourd'hui",
8307
+ "health.calPGCG": "{totalCalories} kcal • P:{totalProtein} g G:{totalCarbs} g L:{totalFat} g",
8308
+ "health.sleepTracking": "Suivi du sommeil",
8309
+ "health.avgSleep7Days": "Sommeil moy. (7 jours)",
8310
+ "health.avgQuality": "Qualité moy.",
8311
+ "health.sleepHistory": "Historique du sommeil",
8312
+ "health.noSleepDataLogged": "Aucune donnée de sommeil enregistrée",
8313
+ "health.hours": "{duration} heures",
8314
+ "health.appt": "RDV",
8315
+ "health.lab": "Labo",
8316
+ "health.vacc": "Vacc.",
8317
+ "health.rx": "Ordo.",
8318
+ "health.proc": "Interv.",
8319
+ "health.dx": "Diag.",
8320
+ "health.note": "Note",
8321
+ "health.medicalRecords": "Dossier médical",
8322
+ "health.upcomingFollowUps": "Suivis à venir",
8323
+ "health.allRecords": "Tous les dossiers",
8324
+ "health.noMedicalRecords": "Aucun dossier médical",
8325
+ "health.todaysSchedule": "Programme du jour",
8326
+ "health.markTaken": "Marquer comme pris",
8327
+ "health.activeMedications": "Médicaments actifs",
8328
+ "health.noActiveMedications": "Aucun médicament actif",
8329
+ "lifeDashboard.lifeDashboard": "Tableau de bord de vie",
8330
+ "lifeDashboard.personalKpis": "KPI personnels",
8331
+ "lifeDashboard.noKpisDefinedYet": "Aucun KPI défini",
8332
+ "lifeDashboard.activeGoals": "Objectifs actifs",
8333
+ "lifeDashboard.noActiveGoals": "Aucun objectif actif",
8334
+ "lifeDashboard.due": "Échéance : {targetDate}",
8335
+ "lifeDashboard.todaysHabits": "Habitudes du jour",
8336
+ "lifeDashboard.noHabitsTrackedYet": "Aucune habitude suivie",
8337
+ "lifeDashboard.done": "Fait",
8338
+ "lifeDashboard.dayStreak": "{count}/{targetPerPeriod} • série de {streak} jours",
8339
+ "lifeDashboard.financeOverview": "Aperçu financier",
8340
+ "lifeDashboard.netWorth": "Patrimoine net",
8341
+ "lifeDashboard.monthlyIncome": "Revenus mensuels",
8342
+ "lifeDashboard.monthlyExpenses": "Dépenses mensuelles",
8343
+ "lifeDashboard.savingsRate": "Taux d'épargne",
8344
+ "lifeDashboard.financeHealth": "Santé financière",
8345
+ "lifeDashboard.moodHealth": "Humeur et santé",
8346
+ "lifeDashboard.avgMood7d": "Humeur moy. (7 j)",
8347
+ "lifeDashboard.avgSleep7d": "Sommeil moy. (7 j)",
8348
+ "personalFinance.netWorth": "Patrimoine net",
8349
+ "personalFinance.accounts": "Comptes",
8350
+ "personalFinance.financialOverview": "Aperçu financier",
8351
+ "personalFinance.thisMonth": "Ce mois-ci",
8352
+ "personalFinance.income": "Revenus",
8353
+ "personalFinance.expenses": "Dépenses",
8354
+ "personalFinance.savingsRate": "Taux d'épargne",
8355
+ "personalFinance.budgetStatus": "État du budget",
8356
+ "personalFinance.used": "Utilisé",
8357
+ "personalFinance.categoriesOverBudget": "{overBudget} catégories hors budget",
8358
+ "personalFinance.upcomingBills14Days": "Factures à venir (14 jours)",
8359
+ "personalFinance.noUpcomingBills": "Aucune facture à venir",
8360
+ "personalFinance.spendingByCategory": "Dépenses par catégorie",
8361
+ "personalFinance.assets": "Actifs",
8362
+ "personalFinance.liabilities": "Passifs",
8363
+ "personalFinance.transactions": "Transactions",
8364
+ "personalFinance.noTransactions": "Aucune transaction",
8365
+ "personalFinance.budgets": "Budgets",
8366
+ "personalFinance.noBudgetsSet": "Aucun budget défini",
8367
+ "personalFinance.overBy": "Dépassement de {amount}",
8368
+ "personalFinance.remaining": "{spent} restants",
8369
+ "personalFinance.billsSubscriptions": "Factures et abonnements",
8370
+ "personalFinance.monthlyBillsTotal": "Total des factures mensuelles",
8371
+ "personalFinance.noBillsTracked": "Aucune facture suivie",
8372
+ "personalFinance.dueOn": "Échéance : le {day}",
8373
+ "personalFinance.autoPay": " • Prélèvement automatique",
8374
+ "personalFinance.investments": "Investissements",
8375
+ "personalFinance.portfolioValue": "Valeur du portefeuille",
8376
+ "personalFinance.totalGainLoss": "Gain/perte total",
8377
+ "personalFinance.assetAllocation": "Répartition des actifs",
8378
+ "personalFinance.holdings": "Positions",
8379
+ "personalFinance.noInvestmentsTracked": "Aucun investissement suivi",
8380
+ "personalFinance.shares": "{shares} actions @ {currentPrice}",
8381
+ "taskManager.inbox": "Boîte de réception",
8382
+ "taskManager.today": "Aujourd'hui",
8383
+ "taskManager.upcoming": "À venir",
8384
+ "taskManager.priorityMatrix": "Matrice des priorités",
8385
+ "taskManager.allTasks": "Toutes les tâches",
8386
+ "taskManager.overdue": "En retard",
8387
+ "taskManager.projects": "Projets",
8388
+ "taskManager.completed": "{completed}/{total} terminées",
8389
+ "taskManager.quickAddTaskEG": "Ajout rapide de tâche (ex. 'Buy groceries tomorrow #shopping !')",
8390
+ "taskManager.noTasksHere": "Aucune tâche ici !",
8391
+ "taskManager.min": "{estimatedMinutes} min",
8392
+ "taskManager.repeats": "Récurrente",
8393
+ "taskManager.empty": "Vide",
8394
+ "torrentUI.downloading": "Téléchargement",
8395
+ "torrentUI.seeding": "Partage",
8396
+ "torrentUI.paused": "En pause",
8397
+ "torrentUI.checking": "Vérification",
8398
+ "torrentUI.error": "Erreur",
8399
+ "torrentUI.queued": "En file d'attente",
8400
+ "torrentUI.noTorrentsFound": "Aucun torrent trouvé",
8401
+ "torrentUI.all": "Tous",
8402
+ "torrentUI.completed": "Terminés",
8403
+ "torrentUI.active": "Actifs",
8404
+ "torrentUI.searchTorrents": "Rechercher des torrents...",
8405
+ "torrentUI.files": "Fichiers ({files})",
8406
+ "torrentUI.peers": "Pairs ({peers})",
8407
+ "torrentUI.trackers": "Trackers ({trackers})",
8408
+ "torrentUI.info": "Infos",
8409
+ "torrentUI.noPeersConnected": "Aucun pair connecté",
8410
+ "torrentUI.tp": "µTP",
8411
+ "torrentUI.enc": "enc",
8412
+ "torrentUI.unknown": "Inconnu",
8413
+ "torrentUI.name": "Nom",
8414
+ "torrentUI.infoHash": "Hash d'info",
8415
+ "torrentUI.size": "Taille",
8416
+ "torrentUI.pieces": "Pièces",
8417
+ "torrentUI.downloads": "Téléchargé",
8418
+ "torrentUI.uploaded": "Envoyé",
8419
+ "torrentUI.ratio": "Ratio",
8420
+ "torrentUI.availability": "Disponibilité",
8421
+ "torrentUI.wasted": "Gaspillé",
8422
+ "torrentUI.hashFails": "Échecs de hash",
8423
+ "torrentUI.added": "Ajouté",
8424
+ "torrentUI.comment": "Commentaire",
8425
+ "torrentUI.private": "Privé",
8426
+ "torrentUI.addTorrent": "Ajouter un torrent",
8427
+ "torrentUI.magnetUriOrTorrentFile": "URI magnet ou chemin du fichier .torrent",
8428
+ "torrentUI.magnetXtUrnBtihOr": "magnet:?xt=urn:btih:... ou C:\\path\\to\\file.torrent",
8429
+ "torrentUI.saveLocation": "Emplacement d'enregistrement",
8430
+ "torrentUI.leaveEmptyForDefault": "Laisser vide pour la valeur par défaut",
8431
+ "torrentUI.startPaused": "Démarrer en pause",
8432
+ "torrentUI.cancel": "Annuler",
8433
+ "torrentUI.addTorrent2": "+ Ajouter un torrent",
8434
+ "lifeDashboard.mood.1": "Très bas",
8435
+ "lifeDashboard.mood.2": "Bas",
8436
+ "lifeDashboard.mood.3": "Neutre",
8437
+ "lifeDashboard.mood.4": "Bon",
8438
+ "lifeDashboard.mood.5": "Excellent",
8439
+ "personalFinance.frequency.weekly": "hebdomadaire",
8440
+ "personalFinance.frequency.bi-weekly": "toutes les deux semaines",
8441
+ "personalFinance.frequency.monthly": "mensuel",
8442
+ "personalFinance.frequency.quarterly": "trimestriel",
8443
+ "personalFinance.frequency.yearly": "annuel",
8444
+ "taskManager.quadrant.doFirst.name": "À faire en premier",
8445
+ "taskManager.quadrant.doFirst.description": "Urgent et important",
8446
+ "taskManager.quadrant.schedule.name": "Planifier",
8447
+ "taskManager.quadrant.schedule.description": "Important mais pas urgent",
8448
+ "taskManager.quadrant.delegate.name": "Déléguer",
8449
+ "taskManager.quadrant.delegate.description": "Urgent mais pas important",
8450
+ "taskManager.quadrant.eliminate.name": "Éliminer",
8451
+ "taskManager.quadrant.eliminate.description": "Ni urgent ni important",
8452
+ "torrentUI.column.name": "Nom",
8453
+ "torrentUI.column.size": "Taille",
8454
+ "torrentUI.column.progress": "Progression",
8455
+ "torrentUI.column.status": "Statut",
8456
+ "torrentUI.column.seeds": "Sources",
8457
+ "torrentUI.column.peers": "Pairs",
8458
+ "torrentUI.column.downloadSpeed": "Récep.",
8459
+ "torrentUI.column.uploadSpeed": "Envoi",
8460
+ "torrentUI.column.eta": "Temps restant",
8461
+ "torrentUI.column.ratio": "Ratio",
8462
+ "personalFinance.tab.overview": "Vue d'ensemble",
8463
+ "personalFinance.tab.accounts": "Comptes",
8464
+ "personalFinance.tab.transactions": "Transactions",
8465
+ "personalFinance.tab.budgets": "Budgets",
8466
+ "personalFinance.tab.bills": "Factures",
8467
+ "personalFinance.tab.investments": "Investissements",
8468
+ "personalFinance.assetType.stock": "Actions",
8469
+ "personalFinance.assetType.etf": "ETF",
8470
+ "personalFinance.assetType.mutual-fund": "Fonds commun de placement",
8471
+ "personalFinance.assetType.bond": "Obligations",
8472
+ "personalFinance.assetType.crypto": "Crypto",
8473
+ "personalFinance.assetType.other": "Autre",
8474
+ "health.exerciseType.cardio": "Cardio",
8475
+ "health.exerciseType.strength": "Force",
8476
+ "health.exerciseType.flexibility": "Souplesse",
8477
+ "health.exerciseType.balance": "Équilibre",
8478
+ "health.exerciseType.hiit": "HIIT",
8479
+ "health.exerciseType.sports": "Sport",
8480
+ "health.exerciseType.other": "Autre",
8481
+ "health.mealType.breakfast": "Petit-déjeuner",
8482
+ "health.mealType.lunch": "Déjeuner",
8483
+ "health.mealType.dinner": "Dîner",
8484
+ "health.mealType.snack": "Collation",
8485
+ "health.sleepQuality.poor": "Mauvaise",
8486
+ "health.sleepQuality.fair": "Moyenne",
8487
+ "health.sleepQuality.good": "Bonne",
8488
+ "health.sleepQuality.excellent": "Excellente",
8489
+ // ── Icons — tool components ──
8490
+ "desktopIconExporter.preview": "Aperçu",
8491
+ "desktopIconExporter.configuration": "Configuration",
8492
+ "desktopIconExporter.iconName": "Nom de l'icône :",
8493
+ "desktopIconExporter.fillColor": "Couleur de remplissage :",
8494
+ "desktopIconExporter.background": "Arrière-plan :",
8495
+ "desktopIconExporter.transparent": "Transparent",
8496
+ "desktopIconExporter.padding": "Marge intérieure : {padding} %",
8497
+ "desktopIconExporter.windowsIco": "Windows (.ico)",
8498
+ "desktopIconExporter.macosIconset": "macOS (.iconset)",
8499
+ "desktopIconExporter.linuxHicolor": "Linux (hicolor)",
8500
+ "desktopIconExporter.hidpiRetina2x3x": "HiDPI/Retina (@2x, @3x)",
8501
+ "desktopIconExporter.sizes": "Tailles :",
8502
+ "desktopIconExporter.exporting": "Exportation... {progress} %",
8503
+ "desktopIconExporter.generateIcons": "Générer les icônes",
8504
+ "desktopIconExporter.downloadAllZip": "Tout télécharger (ZIP)",
8505
+ "desktopIconExporter.generatedIcons": "Icônes générées ({icons})",
8506
+ "desktopIconExporter.download": "Télécharger",
8507
+ "faviconGenerator.manifestConfiguration": "Configuration du manifeste",
8508
+ "faviconGenerator.appName": "Nom de l'application",
8509
+ "faviconGenerator.shortName": "Nom court",
8510
+ "faviconGenerator.themeColor": "Couleur du thème",
8511
+ "faviconGenerator.backgroundColor": "Couleur d'arrière-plan",
8512
+ "faviconGenerator.displayMode": "Mode d'affichage",
8513
+ "faviconGenerator.standalone": "Autonome",
8514
+ "faviconGenerator.fullscreen": "Plein écran",
8515
+ "faviconGenerator.minimalUi": "Interface minimale",
8516
+ "faviconGenerator.browser": "Navigateur",
8517
+ "faviconGenerator.startUrl": "URL de démarrage",
8518
+ "faviconGenerator.generating": "Génération...",
8519
+ "faviconGenerator.generateFavicons": "Générer les favicons",
8520
+ "faviconGenerator.downloadAll": "Tout télécharger",
8521
+ "faviconGenerator.preview": "Aperçu",
8522
+ "faviconGenerator.htmlTags": "Balises HTML",
8523
+ "faviconGenerator.download": "Télécharger {filename}",
8524
+ "faviconGenerator.faviconSizesReference": "Référence des tailles de favicon",
8525
+ "faviconGenerator.file": "Fichier",
8526
+ "faviconGenerator.size": "Taille",
8527
+ "faviconGenerator.purpose": "Usage",
8528
+ "iconPicker.iconsSelected": "{count} icônes sélectionnées",
8529
+ "iconPicker.selectIcon": "Choisir une icône…",
8530
+ "iconPicker.searchIcons": "Rechercher des icônes…",
8531
+ "iconPicker.searchIcons2": "Rechercher des icônes",
8532
+ "iconPicker.all": "Toutes",
8533
+ "iconPicker.favorites": "Favoris",
8534
+ "iconPicker.recentlyUsed": "Récemment utilisées",
8535
+ "iconPicker.recent": "Récentes",
8536
+ "iconPicker.noFavoritesYetClickThe": "Aucun favori pour l'instant. Cliquez sur l'étoile pour en ajouter.",
8537
+ "iconPicker.noRecentIcons": "Aucune icône récente.",
8538
+ "iconPicker.noIconsFound": "Aucune icône trouvée",
8539
+ "iconPicker.removeFromFavorites": "Retirer des favoris",
8540
+ "iconPicker.addToFavorites": "Ajouter aux favoris",
8541
+ "iconPicker.iconCountOne": "{count} icône",
8542
+ "iconPicker.iconCountMany": "{count} icônes",
8543
+ "iconPicker.selected": "• {selectedValues} sélectionnées",
8544
+ "iconPicker.max": "(max. {maxSelections})",
8545
+ "iconPicker.clearAll": "Tout effacer",
8546
+ "iconPicker.clearSelection": "Effacer la sélection",
8547
+ "iconPicker.done": "Terminé",
8548
+ "iconPreview.animation": "Animation :",
8549
+ "iconPreview.none": "Aucune",
8550
+ "iconPreview.lightMode": "Mode clair",
8551
+ "iconPreview.darkMode": "Mode sombre",
8552
+ "iconPreview.gradientBackground": "Arrière-plan en dégradé",
8553
+ "iconPreview.light": "Clair",
8554
+ "iconPreview.dark": "Sombre",
8555
+ "iconSetCreator.iconSetCreator": "Créateur de jeu d'icônes",
8556
+ "iconSetCreator.iconsSelected": "{selectedCount} / {items} icônes sélectionnées",
8557
+ "iconSetCreator.configuration": "Configuration",
8558
+ "iconSetCreator.setName": "Nom du jeu",
8559
+ "iconSetCreator.packageName": "Nom du paquet",
8560
+ "iconSetCreator.description": "Description",
8561
+ "iconSetCreator.version": "Version",
8562
+ "iconSetCreator.license": "Licence",
8563
+ "iconSetCreator.exportFormat": "Format d'export",
8564
+ "iconSetCreator.esModules": "Modules ES",
8565
+ "iconSetCreator.both": "Les deux",
8566
+ "iconSetCreator.generateTypescriptTypes": "Générer les types TypeScript",
8567
+ "iconSetCreator.treeShakingFriendly": "Compatible avec le tree-shaking",
8568
+ "iconSetCreator.includeMetadata": "Inclure les métadonnées",
8569
+ "iconSetCreator.previewExport": "Aperçu de l'export",
8570
+ "iconSetCreator.downloadFiles": "Télécharger les fichiers",
8571
+ "iconSetCreator.searchIcons": "Rechercher des icônes...",
8572
+ "iconSetCreator.allCategories": "Toutes les catégories",
8573
+ "iconSetCreator.selectAll": "Tout sélectionner",
8574
+ "iconSetCreator.deselectAll": "Tout désélectionner",
8575
+ "iconSetCreator.exportPreview": "Aperçu de l'export",
8576
+ "ntdIconBadge.notifications": "{count} notifications",
8577
+ "ntdIconBadge.status": "Statut : {status}",
8578
+ "ntdIconMorph.icon": "Icône {pair}",
8579
+ "ntdIconBadge.statusValue.online": "en ligne",
8580
+ "ntdIconBadge.statusValue.offline": "hors ligne",
8581
+ "ntdIconBadge.statusValue.busy": "occupé",
8582
+ "ntdIconBadge.statusValue.away": "absent",
8583
+ "ntdIconBadge.statusValue.dnd": "ne pas déranger",
8584
+ "ntdIconBadge.statusValue.invisible": "invisible",
8585
+ // ── Science ──
8586
+ "plot3d.resetView": "Réinitialiser la vue",
8587
+ "citation.collections": "Collections",
8588
+ "citation.items": "{citationCount} éléments",
8589
+ "citation.searchReferences": "Rechercher des références...",
8590
+ "citation.apa": "APA",
8591
+ "citation.mla": "MLA",
8592
+ "citation.chicago": "Chicago",
8593
+ "citation.harvard": "Harvard",
8594
+ "citation.ieee": "IEEE",
8595
+ "citation.vancouver": "Vancouver",
8596
+ "citation.noReferencesFound": "Aucune référence trouvée",
8597
+ "citation.addReference": "+ Ajouter une référence",
8598
+ "citation.addReferenceByDoi": "Ajouter une référence par DOI",
8599
+ "citation.enterDoiEG10": "Saisissez le DOI (ex. 10.1000/xyz123)",
8600
+ "citation.cancel": "Annuler",
8601
+ "citation.loading": "Chargement...",
8602
+ "citation.add": "Ajouter",
8603
+ "citation.formatted": "Mise en forme ({citationStyle})",
8604
+ "citation.copied": "Copié !",
8605
+ "citation.copy": "Copier",
8606
+ "citation.journal": "Revue :",
8607
+ "citation.year": "Année :",
8608
+ "citation.volume": "Volume :",
8609
+ "citation.pages": "Pages :",
8610
+ "citation.doi": "DOI :",
8611
+ "citation.pmid": "PMID :",
8612
+ "citation.abstract": "Résumé :",
8613
+ "dataAnalysis.importData": "Importer des données",
8614
+ "dataAnalysis.selectDataset": "Sélectionner un jeu de données...",
8615
+ "dataAnalysis.rows": "{name} ({rowCount} lignes)",
8616
+ "dataAnalysis.importADatasetOrSelect": "Importez un jeu de données ou sélectionnez-en un existant pour commencer",
8617
+ "dataAnalysis.null": "null",
8618
+ "dataAnalysis.first": "Première",
8619
+ "dataAnalysis.prev": "Préc.",
8620
+ "dataAnalysis.pageOf": "Page {page} sur {totalPages}",
8621
+ "dataAnalysis.next": "Suiv.",
8622
+ "dataAnalysis.last": "Dernière",
8623
+ "dataAnalysis.descriptiveStatistics": "Statistiques descriptives",
8624
+ "dataAnalysis.correlationMatrix": "Matrice de corrélation",
8625
+ "dataAnalysis.distributionAnalysis": "Analyse de distribution",
8626
+ "dataAnalysis.runAnalysis": "Lancer l'analyse",
8627
+ "dataAnalysis.resultsMs": "Résultats ({executionTimeMs} ms)",
8628
+ "geographicMap.km": "{scaleKm} km",
8629
+ "geographicMap.layers": "Calques",
8630
+ "geographicMap.equirectangular": "Équirectangulaire",
8631
+ "geographicMap.mercator": "Mercator",
8632
+ "geographicMap.orthographic": "Orthographique",
8633
+ "geographicMap.robinson": "Robinson",
8634
+ "geographicMap.resetView": "Réinitialiser la vue",
8635
+ "labNotebook.labNotebooks": "Cahiers de laboratoire",
8636
+ "labNotebook.entries": "{entries} entrées",
8637
+ "labNotebook.notebookName": "Nom du cahier",
8638
+ "labNotebook.create": "Créer",
8639
+ "labNotebook.cancel": "Annuler",
8640
+ "labNotebook.newNotebook": "+ Nouveau cahier",
8641
+ "labNotebook.selectANotebookToGet": "Sélectionnez un cahier pour commencer",
8642
+ "labNotebook.untitledEntry": "Entrée sans titre",
8643
+ "labNotebook.newEntry": "+ Nouvelle entrée",
8644
+ "labNotebook.selectAnEntryOrCreate": "Sélectionnez une entrée ou créez-en une",
8645
+ "labNotebook.save": "Enregistrer",
8646
+ "labNotebook.edit": "Modifier",
8647
+ "labNotebook.sign": "Signer",
8648
+ "labNotebook.title": "Titre",
8649
+ "labNotebook.objective": "Objectif",
8650
+ "labNotebook.methods": "Méthodes",
8651
+ "labNotebook.results": "Résultats",
8652
+ "labNotebook.conclusions": "Conclusions",
8653
+ "labNotebook.hypothesis": "Hypothèse",
8654
+ "labNotebook.signatures": "Signatures",
8655
+ "labNotebook.attachments": "Pièces jointes",
8656
+ "labNotebook.kb": "{name} ({size} Ko)",
8657
+ "labNotebook.newEntry2": "Nouvelle entrée",
8658
+ "labNotebook.type": "Type",
8659
+ "labNotebook.title2": "Titre *",
8660
+ "labNotebook.enterEntryTitle": "Saisissez le titre de l'entrée",
8661
+ "labNotebook.whatIsTheGoalOf": "Quel est l'objectif de cette entrée ?",
8662
+ "labNotebook.createEntry": "Créer l'entrée",
8663
+ "molecularViewer.loadAMoleculePdbMol": "Charger une molécule (PDB, MOL, SDF)",
8664
+ "molecularViewer.atomsBonds": "{atoms} atomes, {bonds} liaisons",
8665
+ "molecularViewer.formula": "Formule : {formula}",
8666
+ "molecularViewer.residue": "Résidu :",
8667
+ "molecularViewer.chain": "Chaîne : {chainId}",
8668
+ "molecularViewer.position": "Position : ({x}, {y}, {z})",
8669
+ "molecularViewer.ballStick": "Boules et bâtonnets",
8670
+ "molecularViewer.spaceFilling": "Remplissage d'espace",
8671
+ "molecularViewer.stick": "Bâtonnets",
8672
+ "molecularViewer.wireframe": "Fil de fer",
8673
+ "molecularViewer.resetView": "Réinitialiser la vue",
8674
+ "phylogeneticTree.loadAPhylogeneticTreeNewick": "Charger un arbre phylogénétique (format Newick)",
8675
+ "phylogeneticTree.nodesLeaves": "{allNodes} nœuds • {leafCount} feuilles",
8676
+ "phylogeneticTree.branchLength": "Longueur de branche : {branchLength}",
8677
+ "phylogeneticTree.bootstrap": "Bootstrap : {bootstrap}",
8678
+ "phylogeneticTree.children": "Descendants : {children}",
8679
+ "phylogeneticTree.rectangular": "Rectangulaire",
8680
+ "phylogeneticTree.radial": "Radial",
8681
+ "phylogeneticTree.diagonal": "Diagonal",
8682
+ "phylogeneticTree.resetView": "Réinitialiser la vue",
8683
+ "phylogeneticTree.expandAll": "Tout développer",
8684
+ "scientificChart.error": "Erreur : ±{error}",
8685
+ "scientificChart.statisticalTests": "Tests statistiques :",
8686
+ "scientificChart.resetZoom": "Réinitialiser le zoom",
8687
+ "scientificChart.export": "Export :",
8688
+ // ── Platform ──
8689
+ "autoStart.startupFailed": "Échec du démarrage",
8690
+ "autoStart.retry": "Réessayer",
8691
+ "autoStart.loading": "Chargement...",
8692
+ "autoStart.recoveryAttemptOf": "Tentative de récupération {recoveryAttempt} sur {recoveryAttempts}",
8693
+ "barcodeScanner.tryAgain": "Réessayer",
8694
+ "barcodeScanner.barcodeScanningIsNotSupported": "La lecture de codes-barres n'est pas prise en charge par ce navigateur.",
8695
+ "batchScanner.cameraOrBarcodedetectorNotAvailable": "Caméra ou BarcodeDetector indisponible",
8696
+ "batchScanner.failedToStartCamera": "Impossible de démarrer la caméra",
8697
+ "batchScanner.tapToStartScanning": "Touchez pour lancer la lecture",
8698
+ "batchScanner.stopScanning": "Arrêter la lecture",
8699
+ "batchScanner.startScanning": "Lancer la lecture",
8700
+ "batchScanner.enterCodeManually": "Saisir le code manuellement...",
8701
+ "batchScanner.add": "Ajouter",
8702
+ "batchScanner.uniqueItems": "articles uniques",
8703
+ "batchScanner.totalQuantity": "quantité totale",
8704
+ "batchScanner.decreaseQuantity": "Diminuer la quantité",
8705
+ "batchScanner.increaseQuantity": "Augmenter la quantité",
8706
+ "batchScanner.removeItem": "Retirer l'article",
8707
+ "batchScanner.noItemsScannedYet": "Aucun article lu pour l'instant",
8708
+ "batchScanner.clearAll": "Tout effacer",
8709
+ "batchScanner.completeBatch": "Terminer le lot ({totalQuantity})",
8710
+ "conflictResolution.id": "ID : {entityId}",
8711
+ "conflictResolution.yourChanges": "Vos modifications",
8712
+ "conflictResolution.serverVersion": "Version du serveur",
8713
+ "conflictResolution.conflictingFields": "Champs en conflit :",
8714
+ "conflictResolution.keepMine": "Garder les miennes",
8715
+ "conflictResolution.useServer": "Utiliser le serveur",
8716
+ "conflictResolution.merge": "Fusionner",
8717
+ "conflictResolution.dismiss": "Ignorer",
8718
+ "conflictResolution.syncConflicts": "Conflits de synchronisation ({pendingConflicts})",
8719
+ "conflictResolution.close": "Fermer",
8720
+ "conflictResolution.keepAllMine": "Tout garder (les miennes)",
8721
+ "conflictResolution.useAllServer": "Tout prendre du serveur",
8722
+ "externalDisplay.displayN": "Écran {n}",
8723
+ "externalDisplay.primary": "Principal",
8724
+ "externalDisplay.primaryDisplay": "Écran principal",
8725
+ "kioskMode.adminMode": "Mode administrateur",
8726
+ "kioskMode.closeAdminPanel": "Fermer le panneau d'administration",
8727
+ "kioskMode.touchToContinue": "Touchez pour continuer",
8728
+ "kioskMode.enterPin": "Saisir le code PIN",
8729
+ "kioskMode.cancel": "Annuler",
8730
+ "kioskMode.unlock": "Déverrouiller",
8731
+ "kioskMode.incorrectPin": "Code PIN incorrect",
8732
+ "kioskMode.kioskLocked": "Borne verrouillée",
8733
+ "lowPowerMode.touchToWake": "Touchez pour réactiver",
8734
+ "offlineForms.submissionFailed": "Échec de l'envoi",
8735
+ "offlineIndicator.offlineFor": "Hors ligne depuis {offlineDuration}",
8736
+ "offlineIndicator.mbps": "{downlink} Mbit/s",
8737
+ "orientationLock.rotateToPortrait": "Veuillez faire pivoter votre appareil en mode portrait",
8738
+ "orientationLock.rotateToLandscape": "Veuillez faire pivoter votre appareil en mode paysage",
8739
+ "qrScanner.tryAgain": "Réessayer",
8740
+ "qrScanner.qrScanningIsNotSupported": "La lecture de codes QR n'est pas prise en charge par ce navigateur.",
8741
+ "serviceWorker.updateAvailable": "Mise à jour disponible",
8742
+ "serviceWorker.aNewVersionIsReady": "Une nouvelle version est prête à être installée",
8743
+ "serviceWorker.updateNow": "Mettre à jour",
8744
+ "serviceWorker.later": "Plus tard",
8745
+ "serviceWorker.youAreOffline": "Vous êtes hors ligne",
8746
+ "symbologyConfig.selectAll": "Tout sélectionner",
8747
+ "symbologyConfig.clear": "Effacer",
8748
+ "symbologyConfig.selected": "{selected} / {filteredSymbologies} sélectionnées",
8749
+ "symbologyConfig.digits": "{fixedLength} chiffres",
8750
+ "symbologyConfig.chars": "{minLength}–{maxLength} caractères",
8751
+ "symbologyConfig.category": "Catégorie",
8752
+ "symbologyConfig.characterSet": "Jeu de caractères",
8753
+ "symbologyConfig.length": "Longueur",
8754
+ "symbologyConfig.fixed": "Fixe : {fixedLength}",
8755
+ "symbologyConfig.checkDigit2": "Chiffre de contrôle",
8756
+ "symbologyConfig.yes": "Oui",
8757
+ "symbologyConfig.no": "Non",
8758
+ "symbologyConfig.standard": "Norme",
8759
+ "symbologyConfig.useCases": "Cas d'usage",
8760
+ "symbologyConfig.validation": "Validation",
8761
+ "symbologyConfig.valid": "Valide",
8762
+ "symbologyConfig.invalid": "Invalide",
8763
+ "symbologyConfig.checkDigit": "Chiffre de contrôle : {checkDigit}",
8764
+ "touchCalibration.touchScreenCalibration": "Calibrage de l'écran tactile",
8765
+ "touchCalibration.touchTheCenterOfEach": "Touchez le centre de chaque cible pour calibrer l'écran.",
8766
+ "touchCalibration.pointOf": "Point {currentPointIndex} sur {totalPoints}",
8767
+ "touchCalibration.cancel": "Annuler",
8768
+ "touchCalibration.calibrationComplete": "Calibrage terminé",
8769
+ "touchCalibration.calibrationFailed": "Échec du calibrage",
8770
+ "touchCalibration.averageErrorPx": "Erreur moyenne : {averageError} px",
8771
+ "touchCalibration.retryCalibration": "Recommencer le calibrage",
8772
+ "touchCalibration.done": "Terminé",
8773
+ "symbologyConfig.categoryName.linear": "Linéaires (1D)",
8774
+ "symbologyConfig.categoryName.2d": "Matriciels 2D",
8775
+ "symbologyConfig.categoryName.postal": "Postaux",
8776
+ "symbologyConfig.categoryName.gs1": "Normes GS1",
8777
+ "symbologyConfig.symbology.code128.description": "Code-barres haute densité pour données alphanumériques. Bascule automatiquement entre les sous-ensembles A/B/C.",
8778
+ "symbologyConfig.symbology.code128.useCase0": "Étiquettes d'expédition",
8779
+ "symbologyConfig.symbology.code128.useCase1": "Inventaire",
8780
+ "symbologyConfig.symbology.code128.useCase2": "Usage général",
8781
+ "symbologyConfig.symbology.code128a.description": "Code 128, sous-ensemble A : majuscules et caractères de contrôle.",
8782
+ "symbologyConfig.symbology.code128a.useCase0": "Systèmes avec caractères de contrôle",
8783
+ "symbologyConfig.symbology.code128a.useCase1": "Intégration de systèmes existants",
8784
+ "symbologyConfig.symbology.code128b.description": "Code 128, sous-ensemble B : majuscules et minuscules.",
8785
+ "symbologyConfig.symbology.code128b.useCase0": "Données alphanumériques",
8786
+ "symbologyConfig.symbology.code128b.useCase1": "Texte en casse mixte",
8787
+ "symbologyConfig.symbology.code128c.description": "Code 128, sous-ensemble C : chiffres uniquement, double densité.",
8788
+ "symbologyConfig.symbology.code128c.useCase0": "Valeurs numériques longues",
8789
+ "symbologyConfig.symbology.code128c.useCase1": "Encodage compact",
8790
+ "symbologyConfig.symbology.code39.description": "Code-barres autovérifiant prenant en charge majuscules et chiffres.",
8791
+ "symbologyConfig.symbology.code39.useCase0": "Militaire (LOGMARS)",
8792
+ "symbologyConfig.symbology.code39.useCase1": "Automobile (AIAG)",
8793
+ "symbologyConfig.symbology.code39.useCase2": "Santé",
8794
+ "symbologyConfig.symbology.code93.description": "Code-barres compact, plus dense que le Code 39.",
8795
+ "symbologyConfig.symbology.code93.useCase0": "Poste canadienne",
8796
+ "symbologyConfig.symbology.code93.useCase1": "Logistique générale",
8797
+ "symbologyConfig.symbology.codabar.description": "Code-barres numérique utilisé dans les bibliothèques et les banques de sang.",
8798
+ "symbologyConfig.symbology.codabar.useCase0": "Banques de sang",
8799
+ "symbologyConfig.symbology.codabar.useCase1": "Bibliothèques",
8800
+ "symbologyConfig.symbology.codabar.useCase2": "FedEx",
8801
+ "symbologyConfig.symbology.ean13.description": "European Article Numbering — norme mondiale du commerce de détail.",
8802
+ "symbologyConfig.symbology.ean13.useCase0": "Commerce de détail mondial",
8803
+ "symbologyConfig.symbology.ean13.useCase1": "ISBN",
8804
+ "symbologyConfig.symbology.ean13.useCase2": "ISSN",
8805
+ "symbologyConfig.symbology.ean8.description": "Version compacte de l'EAN-13 pour les petits produits.",
8806
+ "symbologyConfig.symbology.ean8.useCase0": "Petits produits de détail",
8807
+ "symbologyConfig.symbology.ean8.useCase1": "Emballages à espace limité",
8808
+ "symbologyConfig.symbology.ean5.description": "Extension à 5 chiffres pour périodiques et livres.",
8809
+ "symbologyConfig.symbology.ean5.useCase0": "Prix des livres",
8810
+ "symbologyConfig.symbology.ean5.useCase1": "Numéros de magazines",
8811
+ "symbologyConfig.symbology.ean2.description": "Extension à 2 chiffres pour périodiques.",
8812
+ "symbologyConfig.symbology.ean2.useCase0": "Numéros de parution des magazines",
8813
+ "symbologyConfig.symbology.upc_a.description": "Universal Product Code — norme nord-américaine du commerce de détail.",
8814
+ "symbologyConfig.symbology.upc_a.useCase0": "Commerce de détail États-Unis/Canada",
8815
+ "symbologyConfig.symbology.upc_a.useCase1": "Point de vente",
8816
+ "symbologyConfig.symbology.upc_e.description": "UPC compressé pour les petits emballages.",
8817
+ "symbologyConfig.symbology.upc_e.useCase0": "Petits produits de détail",
8818
+ "symbologyConfig.symbology.upc_e.useCase1": "Emballages compacts",
8819
+ "symbologyConfig.symbology.itf.description": "Paires de chiffres encodées en format entrelacé.",
8820
+ "symbologyConfig.symbology.itf.useCase0": "Distribution en entrepôt",
8821
+ "symbologyConfig.symbology.itf.useCase1": "Emballage",
8822
+ "symbologyConfig.symbology.itf14.description": "Code-barres GTIN-14 pour conteneurs d'expédition.",
8823
+ "symbologyConfig.symbology.itf14.useCase0": "Conteneurs d'expédition",
8824
+ "symbologyConfig.symbology.itf14.useCase1": "Emballages extérieurs",
8825
+ "symbologyConfig.symbology.msi.description": "Code-barres numérique utilisé pour la gestion des stocks.",
8826
+ "symbologyConfig.symbology.msi.useCase0": "Rayons de magasin",
8827
+ "symbologyConfig.symbology.msi.useCase1": "Inventaire",
8828
+ "symbologyConfig.symbology.pharmacode.description": "Identification des emballages pharmaceutiques.",
8829
+ "symbologyConfig.symbology.pharmacode.useCase0": "Emballages pharmaceutiques",
8830
+ "symbologyConfig.symbology.pharmacode.useCase1": "Identification des médicaments",
8831
+ "symbologyConfig.symbology.plessey.description": "Ancien code-barres utilisé dans les bibliothèques britanniques.",
8832
+ "symbologyConfig.symbology.plessey.useCase0": "Bibliothèques britanniques",
8833
+ "symbologyConfig.symbology.plessey.useCase1": "Systèmes existants",
8834
+ "symbologyConfig.symbology.telepen.description": "Code-barres ASCII complet utilisé dans les bibliothèques britanniques.",
8835
+ "symbologyConfig.symbology.telepen.useCase0": "Bibliothèques britanniques",
8836
+ "symbologyConfig.symbology.telepen.useCase1": "Inventaire",
8837
+ "symbologyConfig.symbology.qr_code.description": "Code QR (Quick Response) — code-barres 2D à grande capacité.",
8838
+ "symbologyConfig.symbology.qr_code.useCase0": "Lecture mobile",
8839
+ "symbologyConfig.symbology.qr_code.useCase1": "URL",
8840
+ "symbologyConfig.symbology.qr_code.useCase2": "vCards",
8841
+ "symbologyConfig.symbology.qr_code.useCase3": "Paiements",
8842
+ "symbologyConfig.symbology.data_matrix.description": "Code 2D haute densité pour petits articles.",
8843
+ "symbologyConfig.symbology.data_matrix.useCase0": "Électronique",
8844
+ "symbologyConfig.symbology.data_matrix.useCase1": "Marquage de circuits imprimés",
8845
+ "symbologyConfig.symbology.data_matrix.useCase2": "Dispositifs médicaux",
8846
+ "symbologyConfig.symbology.data_matrix.useCase3": "Aérospatiale",
8847
+ "symbologyConfig.symbology.aztec.description": "Code 2D compact, sans zone de silence.",
8848
+ "symbologyConfig.symbology.aztec.useCase0": "Titres de transport",
8849
+ "symbologyConfig.symbology.aztec.useCase1": "Cartes d'embarquement",
8850
+ "symbologyConfig.symbology.aztec.useCase2": "Pièces d'identité officielles",
8851
+ "symbologyConfig.symbology.pdf417.description": "Code-barres linéaire empilé à grande capacité.",
8852
+ "symbologyConfig.symbology.pdf417.useCase0": "Cartes d'identité",
8853
+ "symbologyConfig.symbology.pdf417.useCase1": "Permis de conduire",
8854
+ "symbologyConfig.symbology.pdf417.useCase2": "Embarquement aérien",
8855
+ "symbologyConfig.symbology.pdf417.useCase3": "Affranchissement",
8856
+ "symbologyConfig.symbology.maxicode.description": "Code 2D de taille fixe utilisé par UPS.",
8857
+ "symbologyConfig.symbology.maxicode.useCase0": "Expéditions UPS",
8858
+ "symbologyConfig.symbology.maxicode.useCase1": "Tri à grande vitesse",
8859
+ "symbologyConfig.symbology.gs1_128.description": "Code-barres de chaîne d'approvisionnement basé sur les identifiants d'application (AI).",
8860
+ "symbologyConfig.symbology.gs1_128.useCase0": "Chaîne d'approvisionnement",
8861
+ "symbologyConfig.symbology.gs1_128.useCase1": "Santé",
8862
+ "symbologyConfig.symbology.gs1_128.useCase2": "Traçabilité alimentaire",
8863
+ "symbologyConfig.symbology.gs1_databar.description": "Code-barres GS1 compact pour produits frais et coupons.",
8864
+ "symbologyConfig.symbology.gs1_databar.useCase0": "Produits frais",
8865
+ "symbologyConfig.symbology.gs1_databar.useCase1": "Pharmacie",
8866
+ "symbologyConfig.symbology.gs1_databar.useCase2": "Coupons",
8867
+ "symbologyConfig.symbology.gs1_databar.useCase3": "Poids variable",
8868
+ // ── Auth ──
8869
+ "captcha.imNotARobot": "Je ne suis pas un robot",
8870
+ "captcha.verificationFailedPleaseTryAgain": "Échec de la vérification. Veuillez réessayer.",
8871
+ "captcha.verificationErrorPleaseTryAgain": "Erreur de vérification. Veuillez réessayer.",
8872
+ "captcha.incorrectPleaseTryAgain": "Incorrect, veuillez réessayer.",
8873
+ "captcha.captcha": "Captcha ({provider})",
8874
+ "captcha.loadTheSdkToActivate": "Chargez le SDK {provider} pour activer la vérification.",
8875
+ "captcha.captchaChallenge": "Défi captcha",
8876
+ "captcha.whatIs": "Combien font {prompt} ?",
8877
+ "captcha.verify": "Vérifier",
8878
+ "captcha.typeTheCharactersShownIn": "Saisissez les caractères affichés sur l'image",
8879
+ "captcha.verified": "Vérifié",
8880
+ "captcha.slideToTheMarker": "Faites glisser jusqu'au repère",
8881
+ "captcha.slideTheHandleToThe": "Faites glisser la poignée jusqu'au repère pour vérifier",
8882
+ "captcha.refreshChallenge": "Actualiser le défi",
8883
+ "changePassword.title": "Changer le mot de passe",
8884
+ "changePassword.currentPassword": "Mot de passe actuel",
8885
+ "changePassword.newPassword": "Nouveau mot de passe",
8886
+ "changePassword.confirmNewPassword": "Confirmer le nouveau mot de passe",
8887
+ "changePassword.passwordsDoNotMatch": "Les mots de passe ne correspondent pas",
8888
+ "changePassword.changePassword": "Changer le mot de passe",
8889
+ "loginForm.title": "Connexion",
8890
+ "loginForm.rememberMe": "Se souvenir de moi",
8891
+ "loginForm.forgotPassword": "Mot de passe oublié ?",
8892
+ "loginForm.dontHaveAnAccount": "Pas encore de compte ?",
8893
+ "loginForm.register": "S'inscrire",
8894
+ "registrationForm.title": "Créer un compte",
8895
+ "registrationForm.firstName": "Prénom *",
8896
+ "registrationForm.lastName": "Nom",
8897
+ "registrationForm.email": "E-mail *",
8898
+ "registrationForm.password": "Mot de passe *",
8899
+ "registrationForm.confirmPassword": "Confirmer le mot de passe *",
8900
+ "registrationForm.passwordsDoNotMatch": "Les mots de passe ne correspondent pas",
8901
+ "registrationForm.iAcceptThe": "J'accepte les",
8902
+ "registrationForm.terms": "Conditions",
8903
+ "registrationForm.and": "et la",
8904
+ "registrationForm.privacyPolicy": "Politique de confidentialité",
8905
+ "registrationForm.register": "S'inscrire",
8906
+ "registrationForm.alreadyHaveAnAccount": "Vous avez déjà un compte ?",
8907
+ "registrationForm.signIn": "Se connecter",
8908
+ "tokenManagement.apiTokens": "Jetons d'API",
8909
+ "tokenManagement.newToken": "+ Nouveau jeton",
8910
+ "tokenManagement.newTokenCreated": "Nouveau jeton créé !",
8911
+ "tokenManagement.copyItNowItWont": "Copiez-le maintenant — il ne sera plus affiché.",
8912
+ "tokenManagement.dismiss": "Fermer",
8913
+ "tokenManagement.name": "Nom",
8914
+ "tokenManagement.myApiToken": "Mon jeton d'API",
8915
+ "tokenManagement.scopes": "Portées",
8916
+ "tokenManagement.expiresInDays": "Expire dans (jours)",
8917
+ "tokenManagement.creating": "Création…",
8918
+ "tokenManagement.createToken": "Créer le jeton",
8919
+ "tokenManagement.cancel": "Annuler",
8920
+ "tokenManagement.noApiTokensYet": "Aucun jeton d'API pour l'instant.",
8921
+ "tokenManagement.prefix": "Préfixe",
8922
+ "tokenManagement.created": "Créé",
8923
+ "tokenManagement.expires": "Expire le",
8924
+ "tokenManagement.lastUsed": "Dernière utilisation",
8925
+ "tokenManagement.never": "Jamais",
8926
+ "tokenManagement.revoking": "Révocation…",
8927
+ "tokenManagement.revoke": "Révoquer",
8928
+ "twoFaSetup.twoFactorAuthentication": "Authentification à deux facteurs",
8929
+ "twoFaSetup.scanThisQrCodeWith": "Scannez ce code QR avec votre application d'authentification (Google Authenticator, Authy, etc.) :",
8930
+ "twoFaSetup.n2faQrCode": "Code QR 2FA",
8931
+ "twoFaSetup.qrCode": "Code QR",
8932
+ "twoFaSetup.orEnterManually": "Ou saisissez-le manuellement :",
8933
+ "twoFaSetup.showSecretKey": "Afficher la clé secrète",
8934
+ "twoFaSetup.nextVerify": "Suivant — Vérifier",
8935
+ "twoFaSetup.enterThe6DigitCode": "Saisissez le code à 6 chiffres de votre application d'authentification :",
8936
+ "twoFaSetup.back": "Retour",
8937
+ "twoFaSetup.verify": "Vérifier",
8938
+ "twoFaSetup.saveTheseRecoveryCodesIn": "Conservez ces codes de récupération en lieu sûr. Chaque code ne peut être utilisé qu'une fois :",
8939
+ "twoFaSetup.copied": "Copié !",
8940
+ "twoFaSetup.copyAllCodes": "Copier tous les codes",
8941
+ "twoFaSetup.done": "Terminé",
8942
+ "twoFaSetup.cancel": "Annuler",
8943
+ "passwordStrength.level.0": "Très faible",
8944
+ "passwordStrength.level.1": "Faible",
8945
+ "passwordStrength.level.2": "Moyen",
8946
+ "passwordStrength.level.3": "Fort",
8947
+ "passwordStrength.level.4": "Très fort",
8948
+ "passwordGenerator.password": "Mot de passe généré",
8949
+ "passwordGenerator.length": "Longueur",
8950
+ "passwordGenerator.lowercase": "Minuscules (a–z)",
8951
+ "passwordGenerator.uppercase": "Majuscules (A–Z)",
8952
+ "passwordGenerator.digits": "Chiffres (0–9)",
8953
+ "passwordGenerator.symbols": "Symboles (!@#…)",
8954
+ "passwordGenerator.excludeAmbiguous": "Éviter les caractères ambigus (0 O 1 l I)",
8955
+ "passwordGenerator.generate": "Générer",
8956
+ "passwordGenerator.copy": "Copier",
8957
+ "passwordGenerator.copied": "Copié",
8958
+ "passwordGenerator.noCharacterSets": "Choisissez au moins un type de caractère.",
8959
+ "loginForm.email": "E-mail",
8960
+ "loginForm.password": "Mot de passe",
8961
+ "loginForm.signIn": "Se connecter",
8962
+ "oAuthButtons.orContinueWith": "ou continuer avec",
8963
+ // ── Mobile ──
8964
+ "bottomSheet.bottomSheet": "Panneau inférieur",
8965
+ "imageGallery.imageGallery": "Galerie d'images",
8966
+ "imageGallery.zoomOut": "Zoom arrière",
8967
+ "imageGallery.zoomIn": "Zoom avant",
8968
+ "imageGallery.close": "Fermer",
8969
+ "imageGallery.previousImage": "Image précédente",
8970
+ "imageGallery.nextImage": "Image suivante",
8971
+ "imageGallery.goToImage": "Aller à l'image {i}",
8972
+ "infiniteScroll.loading": "Chargement...",
8973
+ "infiniteScroll.youveReachedTheEnd": "Vous êtes arrivé à la fin",
8974
+ "infiniteScroll.retryLoading": "Réessayer le chargement",
8975
+ "infiniteScroll.retry": "Réessayer",
8976
+ "infiniteScroll.noItemsToDisplay": "Aucun élément à afficher",
8977
+ "infiniteScroll.scrollToTop": "Remonter en haut",
8978
+ "infiniteScroll.scrollableList": "Liste défilante",
8979
+ "infiniteScroll.failedToLoadData": "Impossible de charger les données",
8980
+ "infiniteScroll.failedToRefreshData": "Impossible d'actualiser les données",
8981
+ "mobileCalendar.today": "Aujourd'hui",
8982
+ "mobileCalendar.previousMonth": "Mois précédent",
8983
+ "mobileCalendar.nextMonth": "Mois suivant",
8984
+ "mobileDrawer.navigationDrawer": "Tiroir de navigation",
8985
+ "mobileDrawer.closeDrawer": "Fermer le tiroir",
8986
+ "mobileDrawer.mainNavigation": "Navigation principale",
8987
+ "mobileModal.closeModal": "Fermer la fenêtre",
8988
+ "mobileModal.cancel": "Annuler",
8989
+ "mobileModal.confirm": "Confirmer",
8990
+ "mobilePicker.am": "AM",
8991
+ "mobilePicker.pm": "PM",
8992
+ "mobileTabs.more": "Plus",
8993
+ "mobileTabs.mainNavigation": "Navigation principale",
8994
+ "pullToRefresh.pullToRefresh": "Tirer pour actualiser",
8995
+ "signaturePad.signHere": "Signez ici",
8996
+ "swipeActions.leftVisible": "Actions de balayage visibles à gauche",
8997
+ "swipeActions.rightVisible": "Actions de balayage visibles à droite",
8998
+ "swipeActions.swipeForActions": "Balayez pour les actions",
8999
+ "touchColorPicker.presets": "Préréglages",
9000
+ "touchColorPicker.selectColor": "Choisir la couleur {color}",
9001
+ "touchDrawing.undo": "Annuler",
9002
+ "touchDrawing.redo": "Rétablir",
9003
+ "touchDrawing.clear": "Effacer",
9004
+ "touchForm.done": "Terminé",
9005
+ "touchForm.previousField": "Champ précédent",
9006
+ "touchForm.nextField": "Champ suivant",
9007
+ "touchKeyboard.typeHere": "Saisissez ici...",
9008
+ "touchKeyboard.space": "Espace",
9009
+ "touchKeyboard.call": "Appeler",
9010
+ "touchKeyboard.language": "Langue",
9011
+ "touchKeyboard.backspace": "Retour arrière",
9012
+ "touchKeyboard.enter": "Entrée",
9013
+ "touchKeyboard.caps": "MAJ",
9014
+ "touchMenu.cancel": "Annuler",
9015
+ "mobileTabs.preset.home": "Accueil",
9016
+ "mobileTabs.preset.search": "Recherche",
9017
+ "mobileTabs.preset.alerts": "Alertes",
9018
+ "mobileTabs.preset.profile": "Profil",
9019
+ "mobileTabs.preset.feed": "Fil",
9020
+ "mobileTabs.preset.discover": "Découvrir",
9021
+ "mobileTabs.preset.create": "Créer",
9022
+ "mobileTabs.preset.activity": "Activité",
9023
+ "mobileTabs.preset.shop": "Boutique",
9024
+ "mobileTabs.preset.cart": "Panier",
9025
+ "mobileTabs.preset.wishlist": "Liste d'envies",
9026
+ "mobileTabs.preset.account": "Compte",
9027
+ "mobileTabs.preset.chats": "Discussions",
9028
+ "mobileTabs.preset.calls": "Appels",
9029
+ "mobileTabs.preset.contacts": "Contacts",
9030
+ "mobileTabs.preset.settings": "Paramètres",
9031
+ "swipeActions.delete": "Supprimer",
9032
+ "swipeActions.edit": "Modifier",
9033
+ "swipeActions.archive": "Archiver",
9034
+ "swipeActions.star": "Favori",
9035
+ "swipeActions.share": "Partager",
9036
+ "swipeActions.pin": "Épingler",
9037
+ "swipeActions.mute": "Mettre en sourdine",
9038
+ "swipeActions.reply": "Répondre",
9039
+ // ── Social ──
9040
+ "activityFeed.clear": "Effacer",
9041
+ "activityFeed.noActivity": "Aucune activité.",
9042
+ "activityFeed.loadMore": "Charger plus",
9043
+ "comments.writeAComment": "Écrire un commentaire…",
9044
+ "comments.edited": "(modifié)",
9045
+ "comments.save": "Enregistrer",
9046
+ "comments.cancel": "Annuler",
9047
+ "comments.commentDeleted": "Commentaire supprimé",
9048
+ "comments.reply": "Répondre",
9049
+ "comments.edit": "Modifier",
9050
+ "comments.delete": "Supprimer",
9051
+ "comments.writeAReply": "Écrire une réponse…",
9052
+ "comments.send": "Envoyer",
9053
+ "comments.post": "Publier",
9054
+ "comments.noCommentsYet": "Aucun commentaire pour l'instant.",
9055
+ "ratings.ratings": "({count} avis)",
9056
+ "socialPanel.like": "J'aime",
9057
+ "socialPanel.share": "Partager",
9058
+ "socialPanel.bookmark": "Enregistrer",
9059
+ "tagCloud.noTags": "Aucune étiquette.",
9060
+ "userList.searchUsers": "Rechercher des utilisateurs…",
9061
+ "userList.noUsersFound": "Aucun utilisateur trouvé.",
9062
+ "wiki.wiki": "Wiki",
9063
+ "wiki.newPage": "Nouvelle page",
9064
+ "wiki.newPageTitle": "Titre de la nouvelle page",
9065
+ "wiki.create": "Créer",
9066
+ "wiki.searchPages": "Rechercher des pages…",
9067
+ "wiki.noPages": "Aucune page.",
9068
+ "wiki.selectAPageFromThe": "Sélectionnez une page dans la barre latérale.",
9069
+ "wiki.save": "Enregistrer",
9070
+ "wiki.cancel": "Annuler",
9071
+ "wiki.editedBy": "Modifié par {lastEditedBy}",
9072
+ "wiki.on": "le {lastEditedAt}",
9073
+ "wiki.edit": "Modifier",
9074
+ "wiki.delete": "Supprimer",
9075
+ "wiki.noContent": "Aucun contenu.",
9076
+ // ── Security (ui-security) ──
9077
+ "security.trust.knownPlatform": "Plateforme connue",
9078
+ "security.trust.knownPlatformHint": "Fonctionne sur une plateforme reconnue",
9079
+ "security.trust.cookiesEnabled": "Cookies activés",
9080
+ "security.trust.cookiesEnabledHint": "Les cookies du navigateur sont activés",
9081
+ "security.trust.standardResolution": "Résolution standard",
9082
+ "security.trust.standardResolutionHint": "Résolution d'écran dans la plage normale",
9083
+ "security.trust.secureContext": "Contexte sécurisé",
9084
+ "security.trust.secureContextHint": "Fonctionne dans un contexte sécurisé HTTPS",
9085
+ "security.trust.languageConfigured": "Langue configurée",
9086
+ "security.trust.languageConfiguredHint": "La langue du navigateur est définie",
9087
+ "security.trust.touchDevice": "Appareil tactile",
9088
+ "security.trust.touchDeviceHint": "La saisie tactile est prise en charge",
9089
+ "security.trust.hardwareGpu": "GPU matériel",
9090
+ "security.trust.hardwareGpuHint": "GPU matériel détecté",
9091
+ "security.trust.credentialApi": "API d'identifiants",
9092
+ "security.trust.credentialApiHint": "API de gestion des identifiants disponible",
9093
+ "security.trust.title": "Confiance de l'appareil",
9094
+ "security.trust.computing": "Analyse de l'appareil…",
9095
+ "security.trust.trusted": "Appareil de confiance",
9096
+ "security.trust.untrusted": "Score de confiance faible",
9097
+ "security.trust.factors": "Facteurs contributifs",
9098
+ "security.face.lookAtCamera": "Regardez la caméra",
9099
+ "security.face.cameraError": "Accès à la caméra refusé",
9100
+ "security.face.scanning": "Numérisation du visage…",
9101
+ "security.face.notLive": "Échec de la détection du vivant — bougez naturellement",
9102
+ "security.face.processing": "Analyse du visage…",
9103
+ "security.face.matchFound": "Correspondance : {percent} %",
9104
+ "security.face.maxAttempts": "Nombre maximal de tentatives atteint",
9105
+ "security.face.noMatch": "Aucune correspondance — réessayez",
9106
+ "security.face.noFaceDetected": "Aucun visage détecté",
9107
+ "security.face.enrolled": "Visage enregistré avec succès",
9108
+ "security.face.verified": "Visage vérifié",
9109
+ "security.face.error": "Erreur — réessayez",
9110
+ "security.face.referenceAlt": "Référence",
9111
+ "security.face.reference": "Référence",
9112
+ "security.face.confidence": "Confiance",
9113
+ "security.face.captureBtn": "Capturer le visage",
9114
+ "security.face.compareBtn": "Comparer",
9115
+ "security.face.verifyBtn": "Vérifier le visage",
9116
+ "security.common.retry": "Réessayer",
9117
+ "security.fingerprint.placeFingerPrompt": "Placez votre doigt sur le lecteur",
9118
+ "security.fingerprint.cameraError": "Accès à la caméra refusé",
9119
+ "security.fingerprint.scanning": "Numérisation…",
9120
+ "security.fingerprint.processing": "Traitement de l'empreinte…",
9121
+ "security.fingerprint.lowQuality": "Qualité insuffisante — réessayez",
9122
+ "security.fingerprint.enrolled": "Empreinte enregistrée avec succès",
9123
+ "security.fingerprint.verified": "Empreinte vérifiée",
9124
+ "security.fingerprint.maxAttempts": "Nombre maximal de tentatives atteint",
9125
+ "security.fingerprint.noMatch": "Aucune correspondance — réessayez",
9126
+ "security.fingerprint.error": "Erreur de numérisation — réessayez",
9127
+ "security.fingerprint.captureBtn": "Capturer l'empreinte",
9128
+ "security.fingerprint.verifyBtn": "Vérifier l'empreinte",
9129
+ "security.iris.alignEyePrompt": "Alignez votre œil avec le cercle",
9130
+ "security.iris.cameraError": "Accès à la caméra refusé",
9131
+ "security.iris.scanning": "Numérisation de l'iris…",
9132
+ "security.iris.notLive": "Échec de la détection du vivant — clignez des yeux ou bougez légèrement",
9133
+ "security.iris.processing": "Traitement du motif de l'iris…",
9134
+ "security.iris.noIrisDetected": "Aucun iris détecté — ajustez votre position",
9135
+ "security.iris.lowQuality": "Qualité insuffisante — rapprochez-vous",
9136
+ "security.iris.enrolled": "Iris enregistré avec succès",
9137
+ "security.iris.verified": "Iris vérifié",
9138
+ "security.iris.maxAttempts": "Nombre maximal de tentatives atteint",
9139
+ "security.iris.noMatch": "Aucune correspondance — réessayez",
9140
+ "security.iris.error": "Erreur de numérisation",
9141
+ "security.iris.bothEyes": "Les deux yeux",
9142
+ "security.iris.leftEye": "Œil gauche",
9143
+ "security.iris.rightEye": "Œil droit",
9144
+ "security.iris.captureBtn": "Capturer l'iris",
9145
+ "security.iris.verifyBtn": "Vérifier l'iris",
9146
+ "security.mfa.progress": "{verified} sur {required} requis vérifiés",
9147
+ "security.mfa.complete": "Tous les facteurs vérifiés",
9148
+ "security.passphrase.tooShort": "{min} caractères minimum",
9149
+ "security.passphrase.tooWeak": "La phrase secrète est trop faible",
9150
+ "security.passphrase.noMatch": "Les phrases secrètes ne correspondent pas",
9151
+ "security.passphrase.incorrect": "Phrase secrète incorrecte",
9152
+ "security.passphrase.placeholder": "Saisissez la phrase secrète",
9153
+ "security.passphrase.hide": "Masquer",
9154
+ "security.passphrase.show": "Afficher",
9155
+ "security.passphrase.confirmPlaceholder": "Confirmez la phrase secrète",
9156
+ "security.passphrase.accepted": "Acceptée",
9157
+ "security.passphrase.setBtn": "Définir la phrase secrète",
9158
+ "security.passphrase.verifyBtn": "Vérifier",
9159
+ "security.passphrase.attempts": "{attempts}/{max} tentatives",
9160
+ "security.passphrase.strength0": "Très faible",
9161
+ "security.passphrase.strength1": "Faible",
9162
+ "security.passphrase.strength2": "Moyenne",
9163
+ "security.passphrase.strength3": "Forte",
9164
+ "security.passphrase.strength4": "Très forte",
9165
+ "security.pattern.success": "Schéma accepté",
9166
+ "security.pattern.wrong": "Schéma incorrect",
9167
+ "security.pattern.confirm": "Dessinez à nouveau le schéma pour confirmer",
9168
+ "security.pattern.setNew": "Dessinez un nouveau schéma",
9169
+ "security.pattern.draw": "Dessinez votre schéma",
9170
+ "security.pattern.attempts": "{attempts}/{max} tentatives",
9171
+ "security.pin.locked": "Verrouillé — réessayez dans {seconds} s",
9172
+ "security.pin.confirm": "Confirmez votre code PIN",
9173
+ "security.pin.setNew": "Saisissez un nouveau code PIN",
9174
+ "security.pin.enter": "Saisissez votre code PIN",
9175
+ "security.pin.backspace": "Retour arrière",
9176
+ "security.pin.clear": "Effacer",
9177
+ "security.pin.biometricFallback": "Utiliser plutôt la biométrie",
9178
+ "security.pin.attempts": "{attempts}/{max} tentatives",
9179
+ "security.audit.title": "Journal d'audit de sécurité",
9180
+ "security.audit.allMethods": "Toutes les méthodes",
9181
+ "security.audit.allStatuses": "Tous les statuts",
9182
+ "security.audit.exportJson": "Exporter en JSON",
9183
+ "security.json": "JSON",
9184
+ "security.audit.time": "Heure",
9185
+ "security.audit.action": "Action",
9186
+ "security.audit.method": "Méthode",
9187
+ "security.audit.status": "Statut",
9188
+ "security.audit.risk": "Risque",
9189
+ "security.audit.device": "Appareil",
9190
+ "security.audit.noEntries": "Aucune entrée à afficher",
9191
+ "security.audit.prev": "Précédent",
9192
+ "security.audit.next": "Suivant",
9193
+ "security.audit.total": "{count} entrées",
9194
+ "security.session.justNow": "À l'instant",
9195
+ "security.session.title": "Sessions actives",
9196
+ "security.session.revokeAll": "Révoquer toutes les autres",
9197
+ "security.session.mobile": "Mobile",
9198
+ "security.session.desktop": "Ordinateur",
9199
+ "security.session.current": "Actuelle",
9200
+ "security.session.trusted": "De confiance",
9201
+ "security.session.lastActive": "Dernière activité",
9202
+ "security.session.untrust": "Retirer la confiance",
9203
+ "security.session.trust": "Faire confiance",
9204
+ "security.session.revoke": "Révoquer",
9205
+ "security.session.noSessions": "Aucune session active",
9206
+ "security.webauthn.registerPasskey": "Enregistrer une clé d'accès",
9207
+ "security.webauthn.register": "Enregistrer une clé de sécurité",
9208
+ "security.webauthn.signInPasskey": "Se connecter avec une clé d'accès",
9209
+ "security.webauthn.signIn": "Se connecter avec une clé de sécurité",
9210
+ "security.webauthn.notAvailable": "WebAuthn n'est pas pris en charge par ce navigateur",
9211
+ "security.webauthn.error": "Échec de l'authentification — réessayez",
9212
+ // ── Keyboard shortcuts, tutorials (data keys) ──
9213
+ "shortcuts.cancel": "Annuler / Fermer",
9214
+ "shortcuts.moveUp": "Vers le haut",
9215
+ "shortcuts.moveDown": "Vers le bas",
9216
+ "shortcuts.moveLeft": "Vers la gauche",
9217
+ "shortcuts.moveRight": "Vers la droite",
9218
+ "shortcuts.first": "Aller au premier",
9219
+ "shortcuts.last": "Aller au dernier",
9220
+ "shortcuts.pageUp": "Page précédente",
9221
+ "shortcuts.pageDown": "Page suivante",
9222
+ "shortcuts.selectAll": "Tout sélectionner",
9223
+ "shortcuts.toggleSelect": "Basculer la sélection",
9224
+ "shortcuts.undo": "Annuler",
9225
+ "shortcuts.redo": "Rétablir",
9226
+ "shortcuts.copy": "Copier",
9227
+ "shortcuts.paste": "Coller",
9228
+ "shortcuts.cut": "Couper",
9229
+ "shortcuts.edit": "Modifier la cellule",
9230
+ "shortcuts.tab": "Cellule suivante",
9231
+ "shortcuts.shiftTab": "Cellule précédente",
9232
+ "shortcuts.open": "Ouvrir la liste",
9233
+ "shortcuts.close": "Fermer la fenêtre contextuelle",
9234
+ "shortcuts.incrementBig": "Augmenter de 10",
9235
+ "shortcuts.decrementBig": "Diminuer de 10",
9236
+ "tutorial.dataSourceBuilder.intro.title": "Générateur de sources de données",
9237
+ "tutorial.dataSourceBuilder.intro.content": "Parcourez le schéma connecté, ajoutez des tables, joignez-les, choisissez colonnes et conditions visuellement — le SQL est généré pour vous. Enregistrez le résultat comme source de données réutilisable pour vos vues ; aucune connaissance de SQL n'est nécessaire.",
9238
+ "tutorial.accessManager.intro.title": "Gestionnaire d'accès",
9239
+ "tutorial.accessManager.intro.content": "Gérez les rôles à gauche et choisissez une ressource dans l'arborescence ; la matrice à droite accorde à chaque rôle ses actions. Basculez des lignes/colonnes entières en bloc, ou appliquez les droits d'une ressource à tous ses descendants.",
9240
+ "tutorial.validationBuilder.intro.title": "Générateur de validation",
9241
+ "tutorial.validationBuilder.intro.content": "Ajoutez des règles de validation par champ — obligatoire, bornes de longueur/nombre, motif, comparaisons entre champs — et limitez éventuellement chaque règle à une condition. Les formulaires générés appliquent ces règles.",
9242
+ // ── Small packages (1.2.2 B) ──
9243
+ "honeyTokenDashboard.active2": "Actifs : {activeCount}/{totalCount}",
9244
+ "honeyTokenDashboard.trips2": "Déclenchements : {totalTrips}",
9245
+ "honeyTokenDashboard.critical2": "Critiques : {criticalEvents}",
9246
+ "honeyTokenDashboard.tokens": "Jetons ({filteredTokens})",
9247
+ "licensing.unknownError": "Erreur inconnue",
9248
+ "a11y.navigatedTo": "Navigation vers : {pageTitle}",
9249
+ "brandColors.unknownError": "Erreur inconnue",
9250
+ "userPreferences.syncing": "Synchronisation...",
9251
+ "userPreferences.sync": "Synchroniser",
9252
+ "userPreferences.fontScale": "Échelle de police :",
9253
+ "userPreferences.controlPreferences": "Préférences des contrôles ({controlIds})",
9254
+ "apiDesigner.newEndpoint": "Nouveau point de terminaison",
9255
+ "apiDesigner.success": "Succès",
9256
+ "apiDesigner.addEndpoint": "+ Ajouter un point de terminaison",
9257
+ "apiDesigner.addSchema": "+ Ajouter un schéma",
9258
+ "apiDesigner.addServer2": "+ Ajouter un serveur",
9259
+ "apiDesigner.in": "Emplacement",
9260
+ "apiDesigner.addParameter": "+ Ajouter un paramètre",
9261
+ "apiDesigner.addResponse": "+ Ajouter une réponse",
9262
+ "apiDesigner.schema": "Schéma :",
9263
+ "apiDesigner.yes": "Oui",
9264
+ "apiDesigner.no": "Non",
9265
+ "apiDesigner.addProperty": "+ Ajouter une propriété",
9266
+ "jsonSchemaToFormItems.invalidJson": "JSON non valide",
9267
+ "formBuilderAI.ai": "IA",
9268
+ "formBuilderAI.options": "{options} options",
9269
+ "logExplorer.stop": "Arrêter",
9270
+ "logExplorer.tail": "Suivre",
9271
+ "logExplorer.levels": "Niveaux :",
9272
+ "logExplorer.logs": "Journaux ({filteredLogs})",
9273
+ "logExplorer.patterns": "Motifs ({patterns})",
9274
+ "logExplorer.occurrences": "{count} occurrences",
9275
+ "logExplorer.sample": "Exemple : {samples}",
9276
+ "metricsDashboard.done": "Terminé",
9277
+ "metricsDashboard.edit": "Modifier",
9278
+ "metricsDashboard.activeAlerts": "Alertes actives ({firingAlerts})",
9279
+ "metricsDashboard.value2": "Valeur : {value}",
9280
+ "metricsDashboard.threshold": "Seuil : {threshold}",
9281
+ "backgroundSync.unknownError": "Erreur inconnue",
9282
+ "backgroundSync.syncFailed": "Échec de la synchronisation",
9283
+ "barcodeGenerator.failedToGenerateBarcode": "Impossible de générer le code-barres",
9284
+ "barcodeScanner.failedToAccessCamera": "Impossible d'accéder à la caméra",
9285
+ "barcodeScanner.failedToInitializeBarcodeDetector": "Impossible d'initialiser le détecteur de codes-barres",
9286
+ "conflictResolution.resolutionFailed": "Échec de la résolution",
9287
+ "offlineIndicator.youreOffline": "Vous êtes hors ligne",
9288
+ "offlineIndicator.backOnline": "De nouveau en ligne",
9289
+ "offlineIndicator.slowConnection": "Connexion lente",
9290
+ "offlineIndicator.reconnecting": "Reconnexion...",
9291
+ "qrGenerator.failedToGenerateQrCode": "Impossible de générer le code QR",
9292
+ "qrScanner.failedToAccessCamera": "Impossible d'accéder à la caméra",
9293
+ "qrScanner.failedToInitializeQrDetector": "Impossible d'initialiser le détecteur QR",
9294
+ "serviceWorker.registrationFailed": "Échec de l'enregistrement",
9295
+ "printing.offline": "(Hors ligne)",
9296
+ "printing.offline2": "Hors ligne",
9297
+ "printing.portrait": "Portrait",
9298
+ "printing.landscape": "Paysage",
9299
+ "templateEditor.barcode": "Code-barres",
9300
+ "templateEditor.copy": "COPIE",
9301
+ "templateEditor.mm": "mm",
9302
+ "templateEditor.widthShort": "L",
9303
+ "templateEditor.heightShort": "H",
9304
+ "templateEditor.greaterThan": "> supérieur à",
9305
+ "templateEditor.lessThan": "< inférieur à",
9306
+ "templateEditor.contains": "contient",
9307
+ // ── Events, video, IoT, ERP, money, API (1.2.2 B) ──
9308
+ "seatListPanel.row": "Rang",
9309
+ "attractionPicker.selected": "{size}/{maxSelections} sélectionnés",
9310
+ "attractionPicker.all": "Toutes",
9311
+ "attractionVoting.votesRemainingMany": "{votesRemaining} votes restants",
9312
+ "attractionVoting.votesRemainingOne": "{votesRemaining} vote restant",
9313
+ "attractionVoting.votingIsClosedFinalResults": "Le vote est clos. Résultats finaux :",
9314
+ "attractionVoting.totalVotes": "Total des votes : {votes}",
9315
+ "eventMedia.media": "Médias ({filtered})",
9316
+ "eventPlanning.end": "Fin",
9317
+ "eventPlanning.responses": "{responses} réponses",
9318
+ "eventPlanning.add": "Ajouter",
9319
+ "eventPlanning.hostCreated": "Hôte : {hostName} · Créé le {createdAt}",
9320
+ "expenseSplit.paidBy": "Payé par {payer}",
9321
+ "expenseSplit.nobody": "personne",
9322
+ "expenseSplit.paid": "payé",
9323
+ "expenseSplit.noPayer": "aucun payeur",
9324
+ "expenseSplit.unknownPayer": "payeur inconnu",
9325
+ "expenseSplit.total": "{amount} au total",
9326
+ "expenseSplit.settledUp": "soldé",
9327
+ "expenseSplit.isOwed": "doit recevoir",
9328
+ "expenseSplit.owes": "doit",
9329
+ "expenseSplit.transfersOne": "{transfers} virement",
9330
+ "expenseSplit.transfersMany": "{transfers} virements",
9331
+ "giftRegistry.bought": "acheté",
9332
+ "giftRegistry.fullyCovered": "entièrement financé",
9333
+ "giftRegistry.illTakeThis": "Je m'en charge",
9334
+ "giftRegistry.amount": "Montant ({currency})",
9335
+ "giftRegistry.add": "Ajouter",
9336
+ "invitationDesigner.insert": "Insérer :",
9337
+ "invitationDesigner.unresolved": "{unresolved} non résolus",
9338
+ "invitationDesigner.noPreviewValueFor": "Aucune valeur d'aperçu pour : {unresolved}",
9339
+ "mediaCollage.itemsOne": "{items} élément · {totalDuration} s",
9340
+ "mediaCollage.itemsMany": "{items} éléments · {totalDuration} s",
9341
+ "participantList.confirmed": "confirmés",
9342
+ "participantList.awaitingReply": "en attente de réponse",
9343
+ "participantList.declined": "ont décliné",
9344
+ "participantList.checkedIn": "enregistrés",
9345
+ "participantList.total": "au total",
9346
+ "roundCard.winners": "Gagnants : {winnerIds}",
9347
+ "roundList.rounds": "Manches ({rounds})",
9348
+ "roundList.end": "Terminer",
9349
+ "seatingChart.seatsOne": "{selected} place · {amount}",
9350
+ "seatingChart.seatsMany": "{selected} places · {amount}",
9351
+ "liveStreaming.kbps": "{bitrate} kbit/s",
9352
+ "liveStreaming.add": "+ Ajouter",
9353
+ "liveStreaming.bitrateKbps": "Débit (kbit/s)",
9354
+ "liveStreaming.keyframeIntervalSec": "Intervalle d'images clés (s)",
9355
+ "liveStreaming.audioBitrateKbps": "Débit audio (kbit/s)",
9356
+ "screenRecorder.marker": "Marqueur {markers}",
9357
+ "screenRecorder.rec": "REC",
9358
+ "screenRecorder.duration": "Durée :",
9359
+ "screenRecorder.size": "Taille :",
9360
+ "screenRecorder.markers2": "Marqueurs :",
9361
+ "screenRecorder.webmBestWeb": "WebM (idéal pour le web)",
9362
+ "screenRecorder.mp4MostCompatible": "MP4 (le plus compatible)",
9363
+ "screenRecorder.mkvLossless": "MKV (sans perte)",
9364
+ "screenRecorder.lowSmallerFile": "Faible (fichier plus petit)",
9365
+ "screenRecorder.highRecommended": "Élevée (recommandée)",
9366
+ "screenRecorder.losslessLargestFile": "Sans perte (fichier le plus lourd)",
9367
+ "videoEditor.exporting": "Exportation {exportProgress} %",
9368
+ "videoEditor.effects": "Effets ({effects})",
9369
+ "videoEditor.pause": "Pause",
9370
+ "videoEditor.play": "Lire",
9371
+ "videoEditor.videoTrack": "+ Piste vidéo",
9372
+ "videoEditor.audioTrack": "+ Piste audio",
9373
+ "videoEditor.textTrack": "+ Piste de texte",
9374
+ "videoEditor.untitled": "Sans titre",
9375
+ "videoEditor.in": "Entrée",
9376
+ "videoEditor.out": "Sortie",
9377
+ "videoEditor.h264BestCompatibility": "H.264 (meilleure compatibilité)",
9378
+ "videoEditor.h265HevcSmallerSize": "H.265/HEVC (taille réduite)",
9379
+ "videoEditor.vp9WebOptimized": "VP9 (optimisé pour le web)",
9380
+ "videoEditor.av1FutureStandard": "AV1 (standard d'avenir)",
9381
+ "videoEditor.videoBitrateMbps": "Débit vidéo (Mbit/s)",
9382
+ "videoEditor.exporting2": "Exportation... {exportProgress} %",
9383
+ "videoEditor.exportVideo": "Exporter la vidéo",
9384
+ "edgeManager.nodes": "Nœuds ({nodes})",
9385
+ "edgeManager.deployModule2": "+ Déployer un module",
9386
+ "edgeManager.mem": "MÉM",
9387
+ "edgeManager.modulesDeployed": "{deployedModules} modules déployés",
9388
+ "edgeManager.cpu": "CPU : {cpuLimit}",
9389
+ "edgeManager.ramMb": "RAM : {memoryLimitMB} Mo",
9390
+ "edgeManager.ports": "Ports : {ports}",
9391
+ "edgeManager.status2": "Statut :",
9392
+ "edgeManager.uptime": "Disponibilité :",
9393
+ "edgeManager.cpu2": "CPU :",
9394
+ "edgeManager.cores": "{cpu} ({cores} cœurs)",
9395
+ "edgeManager.memory2": "Mémoire :",
9396
+ "edgeManager.storage": "Stockage :",
9397
+ "edgeManager.architecture": "Architecture :",
9398
+ "edgeManager.os": "OS :",
9399
+ "edgeManager.runtime": "Environnement d'exécution :",
9400
+ "edgeManager.agent": "Agent :",
9401
+ "edgeManager.cloud": "Cloud :",
9402
+ "edgeManager.connected": "Connecté",
9403
+ "edgeManager.disconnected": "Déconnecté",
9404
+ "edgeManager.network": "Réseau :",
9405
+ "edgeManager.publicIp": "IP publique :",
9406
+ "edgeManager.lastSync": "Dernière synchronisation :",
9407
+ "edgeManager.templateOptional": "Modèle (facultatif)",
9408
+ "ioTDashboard.done": "Terminé",
9409
+ "ioTDashboard.edit": "Modifier",
9410
+ "ioTDashboard.addWidgetsFromThePalette": "Ajoutez des widgets depuis la palette",
9411
+ "ioTDashboard.noWidgetsConfiguredClickEdit": "Aucun widget configuré. Cliquez sur Modifier pour en ajouter.",
9412
+ "ioTDashboard.acknowledged": "Acquitté",
9413
+ "ioTDashboard.active": "Active",
9414
+ "ioTDashboard.devicesWithLocation": "{devices} appareils avec emplacement",
9415
+ "ioTDashboard.type": "Type : {type}",
9416
+ "ioTDashboard.protocol": "Protocole : {protocol}",
9417
+ "ioTDashboard.lastSeen": "Vu pour la dernière fois : {lastSeen}",
9418
+ "ioTDashboard.status2": "Statut :",
9419
+ "ioTDashboard.lastSeen2": "Vu pour la dernière fois :",
9420
+ "ioTDashboard.protocol2": "Protocole :",
9421
+ "ioTDashboard.host": "Hôte :",
9422
+ "ioTDashboard.manufacturer": "Fabricant :",
9423
+ "ioTDashboard.model": "Modèle :",
9424
+ "capacityPlanner.highUtilization": "Utilisation élevée (>={utilizationThreshold} %)",
9425
+ "capacityPlanner.hDay": "{maxCapacity} h/jour",
9426
+ "capacityPlanner.hDay2": "{hoursPerDay} h/jour",
9427
+ "inventoryManager.addItem": "+ Ajouter un article",
9428
+ "inventoryManager.inventory": "Inventaire ({items})",
9429
+ "inventoryManager.transactions": "Transactions ({transactions})",
9430
+ "inventoryManager.newTransaction": "+ Nouvelle transaction",
9431
+ "inventoryManager.ref": "Réf. : {reference}",
9432
+ "inventoryManager.current": "Actuel : {quantity} {unit}",
9433
+ "inventoryManager.reorderAt": "Réapprovisionner à : {reorderLevel}",
9434
+ "inventoryManager.orderQty": "Qté commandée : {reorderQuantity}",
9435
+ "inventoryManager.editItem": "Modifier l'article",
9436
+ "inventoryManager.addNewItem": "Ajouter un nouvel article",
9437
+ "inventoryManager.saveChanges": "Enregistrer les modifications",
9438
+ "inventoryManager.createItem": "Créer l'article",
9439
+ "invoiceView.description": "Description",
9440
+ "jpkExporter.invoicesReady": "{invoices} factures prêtes",
9441
+ "vatTable.label": "Libellé",
9442
+ "vatTable.description": "Description",
9443
+ "warehouseView.low": "faible",
9444
+ "warehouseView.mid": "moyenne",
9445
+ "warehouseView.high": "élevée",
9446
+ "warehouseView.items": "{key} — {occupancy} % ({items} articles)",
9447
+ "warehouseView.itemsFull": "{items} articles · {occupancy} % plein",
9448
+ "creditCardInput.cid": "CID",
9449
+ "creditCardInput.cvc": "CVC",
9450
+ "currencyConverter.to": "Vers",
9451
+ "currencySelector.currency": "Devise",
9452
+ "currencySelector.selectCurrency": "Sélectionner une devise…",
9453
+ "currencySelector.all": "Toutes",
9454
+ "money.convertedTo": "Converti en {currency}",
9455
+ "paymentForm.pay": "Payer",
9456
+ "paymentForm.doesNotAccept": "{provider} n'accepte pas {currency}.",
9457
+ "paymentForm.processing": "Traitement…",
9458
+ "paymentMethodSelector.paymentMethod": "Moyen de paiement",
9459
+ "paymentProviderConfig.testConnection": "Tester la connexion",
9460
+ "paymentProviderConfig.allCurrencies": "Toutes les devises",
9461
+ "paymentProviderConfig.selectProvider": "— sélectionner un fournisseur —",
9462
+ "paymentProviderConfig.hide": "Masquer",
9463
+ "paymentProviderConfig.reveal": "Afficher",
9464
+ "paymentProviderConfig.testing": "Test en cours…",
9465
+ "paymentProviderConfig.ok": "OK",
9466
+ "paymentProviderConfig.failed": "Échec",
9467
+ "priceTag.percentOff": "{pct} pour cent de remise",
9468
+ "taxBreakdown.item": "Article",
9469
+ "apiDesigner.add": "Ajouter",
9470
+ "apiDesigner.remove": "Supprimer {name}",
9471
+ "apiDesigner.remove2": "Supprimer {propName}",
9472
+ "apiTester.cancel": "Annuler",
9473
+ "apiTester.send": "Envoyer",
9474
+ "apiTester.loading": "Chargement...",
9475
+ "apiTester.sendARequestToSee": "Envoyez une requête pour voir la réponse",
9476
+ "apiTester.key": "Clé",
9477
+ "apiTester.add": "+ Ajouter",
9478
+ "apiTester.enterBodyContent": "Saisissez le contenu du corps",
9479
+ "integrationBuilder.running": "Exécution...",
9480
+ "integrationBuilder.run": "Exécuter",
9481
+ "integrationBuilder.durationMs": "Durée (ms)",
9482
+ "integrationBuilder.to": "À",
9483
+ "integrationBuilder.addVariable": "+ Ajouter une variable",
9484
+ "integrationBuilder.retryDelayMs": "Délai avant nouvelle tentative (ms)",
9485
+ "webhookTester.sending": "Envoi…",
9486
+ "webhookTester.send": "Envoyer",
9487
+ "webhookTester.sample": "Exemple :",
9488
+ "webhookTester.chooseASavedPayload": "— choisir une charge enregistrée —",
9489
+ "webhookTester.autoSigns": "· signe automatiquement",
9490
+ "webhookTester.header2": "+ En-tête",
9491
+ // ── Enterprise, AI, buildings, communication, audio (1.2.2 B) ──
9492
+ "accessLog.to": "à",
9493
+ "accessLog.entries": "{filteredEntries} entrées",
9494
+ "accessLog.remaining": "{showMore} ({filteredEntries} restants)",
9495
+ "accessLog.fingerprint": "Empreinte : {fingerprint}",
9496
+ "auditTrail.to": "à",
9497
+ "auditTrail.ip": "IP : {ipAddress}",
9498
+ "auditTrail.fieldS": "{changes} champ(s)",
9499
+ "contractEditor.all": "Toutes",
9500
+ "contractEditor.clauseS": "{clauses} clause(s)",
9501
+ "dataExportCenter.fieldsToExport": "Champs à exporter ({selectedCount}/{fields})",
9502
+ "dataExportCenter.delimiter": "Séparateur :",
9503
+ "dataExportCenter.comma": "Virgule (,)",
9504
+ "dataExportCenter.semicolon": "Point-virgule (;)",
9505
+ "dataExportCenter.tab": "Tabulation",
9506
+ "dataExportCenter.pipe": "Barre verticale (|)",
9507
+ "dataExportCenter.dateFormat": "Format de date :",
9508
+ "dataExportCenter.ddMmYyyy": "JJ/MM/AAAA",
9509
+ "dataExportCenter.mmDdYyyy": "MM/JJ/AAAA",
9510
+ "dataExportCenter.encoding": "Encodage :",
9511
+ "dataExportCenter.passwordProtect": "Protection par mot de passe :",
9512
+ "dataExportCenter.rows": "{rowCount} lignes",
9513
+ "dataExportCenter.templates": "Modèles ({templates})",
9514
+ "dataExportCenter.exporting": "Exportation... {progress} %",
9515
+ "dataExportCenter.exportNow": "Exporter maintenant",
9516
+ "dataExportCenter.use": "Utiliser",
9517
+ "gdprConsent.partners": "Partenaires :",
9518
+ "gdprConsent.days": "{retentionDays} jours",
9519
+ "globalSearch.all": "Tout",
9520
+ "accessibilityAI.aa": "AA :",
9521
+ "accessibilityAI.aaLarge": "AA (grand texte) :",
9522
+ "accessibilityAI.aaa": "AAA :",
9523
+ "accessibilityAI.htmlAccessibilityAnalyzerWcag": "Analyseur d'accessibilité HTML (WCAG {wcagLevel})",
9524
+ "accessibilityAI.fix": "Correctif :",
9525
+ "codeEditorAI.navigateTabAcceptEscDismiss": "naviguer • Tab accepter • Échap ignorer",
9526
+ "codeEditorAI.complexity": "Complexité : {complexity}",
9527
+ "codeEditorAI.before": "Avant :",
9528
+ "codeEditorAI.after": "Après :",
9529
+ "dataLabeler.box": "Cadre",
9530
+ "dataLabeler.item": "Élément {index}",
9531
+ "layoutAI.regions": "Zones :",
9532
+ "modelInference.noInferenceHandlerProvided": "Aucun gestionnaire d'inférence fourni",
9533
+ "modelInference.invalidJsonInput": "Entrée JSON non valide",
9534
+ "modelInference.invalidTabularData": "Données tabulaires non valides",
9535
+ "modelInference.inferenceFailed": "Échec de l'inférence",
9536
+ "modelInference.score": "Score :",
9537
+ "modelInference.box": "Cadre : ({x}, {y}) - {width}×{height}",
9538
+ "modelInference.running": "Exécution...",
9539
+ "modelInference.runInference": "Lancer l'inférence",
9540
+ "modelInference.requestId2": "ID de requête : {requestId}",
9541
+ "modelInference.latency": "Latence : {duration}",
9542
+ "modelInference.model": "Modèle : {modelVersion}",
9543
+ "modelInference.invalidBatchFileFormat": "Format de fichier de lot non valide",
9544
+ "modelInference.results": "Résultats ({batchResults})",
9545
+ "modelInference.requestsSec": "Requêtes/s",
9546
+ "reportBuilderAI.availableData": "Données disponibles :",
9547
+ "reportBuilderAI.sections": "{sections} sections",
9548
+ "reportBuilderAI.reportStructure": "Structure du rapport :",
9549
+ "reportBuilderAI.suggestions": "Suggestions :",
9550
+ "themeGeneratorAI.primaryColor": "Couleur principale :",
9551
+ "themeGeneratorAI.bodyTextTheQuickBrown": "Texte courant : Portez ce vieux whisky au juge blond qui fume.",
9552
+ "workflowDesignerAI.try": "Essayez :",
9553
+ "workflowDesignerAI.nodes": "{nodes} nœuds",
9554
+ "workflowDesignerAI.connections": "{edges} connexions",
9555
+ "workflowDesignerAI.validationIssues": "Problèmes de validation :",
9556
+ "workflowDesignerAI.suggestions": "Suggestions :",
9557
+ "workflowDesignerAI.swimlanes": "Couloirs :",
9558
+ "useNiceAIHint.rateLimitExceededPleaseWait": "Limite de requêtes dépassée. Veuillez patienter avant de demander un autre conseil.",
9559
+ "useNiceAIHint.aiHintRequestFailed": "Échec de la demande de conseil IA",
9560
+ "buildings.streaming": "Diffusion",
9561
+ "buildings.people2": "{occupancy} personnes",
9562
+ "buildings.pts": " ({drawing} points)",
9563
+ "importPreviewDialog.layers": "Calques ({layers})",
9564
+ "importPreviewDialog.more": "+{layers} de plus...",
9565
+ "importPreviewDialog.warnings": "Avertissements ({warnings})",
9566
+ "importPreviewDialog.moreWarnings": "+{warnings} autres avertissements...",
9567
+ "importPreviewDialog.errors": "Erreurs ({nonFatalErrors})",
9568
+ "importPreviewDialog.cannotImportFatalErrors": "Import impossible (erreurs fatales)",
9569
+ "importPreviewDialog.confirmImport": "Confirmer l'import",
9570
+ "layerPanel.hideLayer": "Masquer le calque",
9571
+ "layerPanel.showLayer": "Afficher le calque",
9572
+ "layerPanel.unlockLayer": "Déverrouiller le calque",
9573
+ "layerPanel.lockLayer": "Verrouiller le calque",
9574
+ "layerPanel.opacity": "Opacité : {opacity} %",
9575
+ "buildings.optimal": "Optimal",
9576
+ "buildings.alt": "Alt. {index}",
9577
+ "objectLibrary.noObjectsMatching": "Aucun objet ne correspond à « {searchQuery} »",
9578
+ "objectLibrary.noObjectsAvailableForThis": "Aucun objet disponible pour ce mode",
9579
+ "propertiesPanel.selected": "{selectedObjects} sélectionnés",
9580
+ "buildings.dhcp": "DHCP :",
9581
+ "buildings.unknownImportError": "Erreur d'import inconnue",
9582
+ "buildings.autocadDxfDxf": "AutoCAD DXF (.dxf)",
9583
+ "buildings.svgVectorGraphicsSvg": "Graphique vectoriel SVG (.svg)",
9584
+ "buildings.geojsonGeojson": "GeoJSON (.geojson)",
9585
+ "buildings.ifcBimIfc": "IFC (BIM) (.ifc)",
9586
+ "buildings.nicetodevSpatialPlanNspJson": "Plan spatial NiceToDev (.nsp.json)",
9587
+ "buildings.pngImagePng": "Image PNG (.png)",
9588
+ "buildings.selected2": "{objectIds} sélectionnés",
9589
+ "buildings.drawingPoints": "Dessin : {points} points",
9590
+ "buildings.connectingClickTargetDeviceOr": "Connexion : cliquez sur l'appareil cible ou Échap pour annuler",
9591
+ "buildings.gridSnap": "Grille : {size}px · Magnétisme : {snap}",
9592
+ "buildings.virtualOn": "Virtuel : ACTIVÉ",
9593
+ "buildings.total": "Total : {total}",
9594
+ "buildings.visible": "Visibles : {visible}",
9595
+ "buildings.culled": "Masqués : {culled} ({cullPercentage} %)",
9596
+ "buildings.zoomX": "Zoom : {zoom}x",
9597
+ "buildings.zone": "zone",
9598
+ "buildings.object": "objet",
9599
+ "buildings.referencePoint": "point de référence",
9600
+ "buildings.setAsStart": "Définir comme départ",
9601
+ "buildings.setAsDestination": "Définir comme destination",
9602
+ "callScreen.calling": "Appel…",
9603
+ "callScreen.connecting": "Connexion…",
9604
+ "callScreen.rec": "REC",
9605
+ "callScreen.isMuted": "{name} est en sourdine",
9606
+ "callScreen.exitFullscreen": "Quitter le plein écran",
9607
+ "callScreen.fullscreen": "Plein écran",
9608
+ "callScreen.unmute": "Réactiver le micro",
9609
+ "callScreen.mute": "Couper le micro",
9610
+ "callScreen.turnOnCamera": "Activer la caméra",
9611
+ "callScreen.turnOffCamera": "Désactiver la caméra",
9612
+ "callScreen.stopSharing": "Arrêter le partage",
9613
+ "callScreen.shareScreen": "Partager l'écran",
9614
+ "callScreen.stopRecording": "Arrêter l'enregistrement",
9615
+ "callScreen.startRecording": "Démarrer l'enregistrement",
9616
+ "channelView.unknown": "Inconnu",
9617
+ "channelView.edited": "(modifié)",
9618
+ "channelView.repliesOne": "{threadCount} réponse",
9619
+ "channelView.repliesMany": "{threadCount} réponses",
9620
+ "channelView.online": "{onlineCount} en ligne",
9621
+ "channelView.loading": "Chargement…",
9622
+ "channelView.loadOlderMessages": "Charger les messages plus anciens",
9623
+ "channelView.replyingTo": "Réponse à : {content}",
9624
+ "channelView.message": "Message dans #{name}",
9625
+ "chatWindow.edited": "(modifié)",
9626
+ "chatWindow.repliesOne": "{threadCount} réponse",
9627
+ "chatWindow.repliesMany": "{threadCount} réponses",
9628
+ "chatWindow.unpin": "Désépingler",
9629
+ "chatWindow.pin": "Épingler",
9630
+ "chatWindow.replying": "Réponse : {content}",
9631
+ "chatWindow.chat": "Discussion",
9632
+ "chatWindow.members": "{participantIds} membres",
9633
+ "chatWindow.loading": "Chargement…",
9634
+ "chatWindow.loadOlderMessages": "Charger les messages plus anciens",
9635
+ "collaborativeEditor.editConflictsAutoMergingMany": "{count} conflits de modification — fusion automatique…",
9636
+ "collaborativeEditor.editConflictsAutoMergingOne": "{count} conflit de modification — fusion automatique…",
9637
+ "collaborativeEditor.pending": "{pending} en attente…",
9638
+ "collaborativeEditor.unfollow": "Ne plus suivre",
9639
+ "collaborativeEditor.follow": "Suivre {name}",
9640
+ "collaborativeEditor.vector": "Vecteur",
9641
+ "collaborativeEditor.pixel": "Pixel",
9642
+ "collaborativeEditor.diagram": "Diagramme",
9643
+ "collaborativeEditor.document": "Document",
9644
+ "collaborativeEditor.whiteboard": "Tableau blanc",
9645
+ "collaborativeEditor.online": "{propParticipants} en ligne",
9646
+ "collaborativeEditor.mountPoint": "point de montage.",
9647
+ "collaborativeEditor.viewing": "consulte",
9648
+ "communication.chat": "Discussion",
9649
+ "communication.closeChat": "Fermer la discussion",
9650
+ "communication.openChat": "Ouvrir la discussion",
9651
+ "communication.whiteboard": "Tableau blanc",
9652
+ "recording.conf": "{confidence} % conf.",
9653
+ "recording.recording": "Enregistrement {id}",
9654
+ "recording.participants": "{participants} participants",
9655
+ "recording.total": "{recordings} au total",
9656
+ "storageSettings.configureHowLongEachData": "Définissez la durée de conservation de chaque type de données avant archivage puis suppression. La conservation légale empêche la suppression quelles que soient les règles.",
9657
+ "storageSettings.indexeddbBrowser": "IndexedDB (navigateur)",
9658
+ "storageSettings.localstorageBrowser": "LocalStorage (navigateur)",
9659
+ "storageSettings.add": "Ajouter",
9660
+ "storageSettings.mb0Unlimited": "Mo (0 = illimité)",
9661
+ "storageSettings.configureEncryptionAtRestAnd": "Configurez le chiffrement au repos et en transit. E2E-ECDH garantit que seuls les participants peuvent lire les conversations — le serveur ne voit jamais le texte en clair.",
9662
+ "storageSettings.encryptionEnabled": "Chiffrement activé",
9663
+ "storageSettings.encryptionDisabled": "Chiffrement désactivé",
9664
+ "storageSettings.externalKeyBase64Optional": "Clé externe (base64, facultatif)",
9665
+ "storageSettings.provideAPreSharedKey": "Fournissez une clé pré-partagée pour les algorithmes symétriques. Laissez vide pour une génération automatique.",
9666
+ "storageSettings.storagePrivacy": "Stockage et confidentialité",
9667
+ "teamsWorkspace.teamWhiteboard": "Tableau blanc d'équipe",
9668
+ "teamsWorkspace.search": "Rechercher dans {navSection}…",
9669
+ "teamsWorkspace.conversation": "Conversation",
9670
+ "teamsWorkspace.unread": "— {unreadCount} non lus",
9671
+ "teamsWorkspace.openWhiteboard": "Ouvrir le tableau blanc",
9672
+ "teamsWorkspace.newWhiteboard": "Nouveau tableau blanc",
9673
+ "teamsWorkspace.objects": "{objects} objets",
9674
+ "teamsWorkspace.selectAChannelToGet": "Sélectionnez un canal pour commencer",
9675
+ "teamsWorkspace.selectAConversation": "Sélectionnez une conversation",
9676
+ "teamsWorkspace.startOrJoinACall": "Démarrez ou rejoignez un appel",
9677
+ "teamsWorkspace.clickNewWhiteboardToStart": "Cliquez sur « Nouveau tableau blanc » pour commencer",
9678
+ "teamsWorkspace.nothingSelected": "Rien de sélectionné",
9679
+ "videoConference.you": " (Vous)",
9680
+ "videoConference.unpin": "Désépingler",
9681
+ "videoConference.pin": "Épingler",
9682
+ "videoConference.participants": "Participants ({allParticipants})",
9683
+ "videoConference.unmute": "Réactiver le micro",
9684
+ "videoConference.mute": "Couper le micro",
9685
+ "videoConference.startVideo": "Activer la vidéo",
9686
+ "videoConference.stopVideo": "Désactiver la vidéo",
9687
+ "videoConference.stopShare": "Arrêter le partage",
9688
+ "videoConference.share": "Partager",
9689
+ "videoConference.stopRec": "Arrêter l'enreg.",
9690
+ "videoConference.record": "Enregistrer",
9691
+ "videoConference.stopCaptions": "Désactiver les sous-titres",
9692
+ "videoConference.captions": "Sous-titres",
9693
+ "whiteboard.clickToEdit": "Cliquez pour modifier",
9694
+ "whiteboard.note": "Note...",
9695
+ "whiteboard.note2": "Remarque :",
9696
+ "whiteboard.vectorEditor": "Éditeur vectoriel",
9697
+ "whiteboard.diagramEditor": "Éditeur de diagrammes",
9698
+ "whiteboard.renderTheFullNice2devUi": "Affichez ici le VectorEditor complet de @nice2dev/ui-graphics. Passez la StorageConfig du tableau pour conserver les modifications et onOperation pour diffuser les traits en temps réel.",
9699
+ "whiteboard.renderTheFullNice2devUi2": "Affichez ici le NiceDiagramEditor complet de @nice2dev/ui-diagrams. Passez le YDoc collaborativeDiagram pour permettre l'édition simultanée à plusieurs.",
9700
+ "whiteboard.collaborators": "Collaborateurs :",
9701
+ "whiteboard.unsaved": "non enregistré",
9702
+ "dmxChannelControls.off": "ARRÊT",
9703
+ "dmxEditor.provideAServicePropDmxservice": "Fournissez une prop `service` (DmxService) pour piloter le matériel.",
9704
+ "dmxEditor.mode": "Mode :",
9705
+ "dmxEditor.footprint": ", empreinte :",
9706
+ "ccLane.valTimeS": "Val. : {value}, temps : {time} s",
9707
+ "useAutoSave.projectAutoSavedLocally": "Projet enregistré automatiquement en local",
9708
+ "useRecording.recording": "Enregistrement",
9709
+ "sampleBrowser.stop": "Arrêter",
9710
+ "sampleBrowser.play": "Lire",
9711
+ "sampleBrowser.key2": "Tonalité",
9712
+ "sampleBrowser.durationS": "Durée : {duration} s",
9713
+ "sampleBrowser.sampleRateHz": "Fréquence d'échantillonnage : {sampleRate} Hz",
9714
+ "sampleBrowser.channels": "Canaux : {channels}",
9715
+ "sampleBrowser.bpm": "BPM : {bpm}",
9716
+ "sampleBrowser.key": "Tonalité : {key}",
9717
+ "ccLane.cc2": "{label} (CC{cc})",
9718
+ "audioEffectsRack.disable": "Désactiver",
9719
+ "audioEffectsRack.enable": "Activer",
9720
+ "audioEffectsRack.noEffectsClickToAdd": "Aucun effet. Cliquez sur + pour en ajouter.",
9721
+ "audioEffectsRack.addEffect": "+ Ajouter un effet",
9722
+ "audioPitch.probe": "Sonde :",
9723
+ "audioPitch.perAlgorithmErrors": "Erreurs par algorithme :",
9724
+ "karaokeManager.player": "Joueur {id}",
9725
+ "karaokeTimeline.defaultPlayer": "Joueur",
9726
+ "karaokeTimeline.pitchTimelineFor": "Courbe de hauteur pour {player}. Score : {score}",
9727
+ "padKaraokeOverlay.perfect": "PARFAIT",
9728
+ "padKaraokeOverlay.good": "BIEN",
9729
+ "padKaraokeOverlay.miss": "RATÉ",
9730
+ "padKaraokeOverlay.pad": "PAD — {difficulty}",
9731
+ "vocalReport.hz": "{lowestNote} ({lowestHz} Hz)",
9732
+ "vocalReport.hz2": "{highestNote} ({highestHz} Hz)",
9733
+ "karaokeEditor.pause": "Pause",
9734
+ "karaokeEditor.play": "Lire",
9735
+ "karaokeEditor.notes": "Notes : {notes}",
9736
+ "dmxTimeline.pause": "Pause",
9737
+ "dmxTimeline.play": "Lire",
9738
+ "dmxTimeline.bpm": "BPM :",
9739
+ "dmxTimeline.addTrack": "Ajouter une piste",
9740
+ "useOxygen25.fader": "Fader",
9741
+ "player.off": "Désactivé",
9742
+ "player.all": "Tout",
9743
+ "player.one": "Un",
9744
+ "playlistItem.audio": "Audio",
9745
+ "radioPlayer.failedToLoadStream": "Impossible de charger le flux",
9746
+ "radioPlayer.kbps": "{bitrate} kbit/s",
9747
+ "radioPlayer.pause": "Pause",
9748
+ "radioPlayer.play": "Lire",
9749
+ "voiceChatOverlay.you": "(Vous)",
9750
+ "voiceChatOverlay.unmute": "Réactiver le micro",
9751
+ "voiceChatOverlay.mute": "Couper le micro",
9752
+ // ── 3D and graphics editors (1.2.2 B) ──
9753
+ "modelEditor.trianglesMeshesBonesAnimS": "{polyCount} triangles · {meshCount} maillages · {boneCount} os · {animations} anim.",
9754
+ "modelEditorMenuBar.objectMode": "Mode objet",
9755
+ "modelEditorMenuBar.editMode": "Mode édition",
9756
+ "modelEditorMenuBar.poseMode": "Mode pose",
9757
+ "modelEditorMenuBar.add": "Ajouter",
9758
+ "modelEditorMenuBar.emptyArrows": "Vide (flèches)",
9759
+ "modelEditorMenuBar.bg": "AP",
9760
+ "modelEditorRightPanel.fov": "FOV",
9761
+ "modelEditorRightPanel.far": "Loin",
9762
+ "modelEditorRightPanel.uploadAVideoAndAi": "Importez une vidéo et l'IA extraira les données de pose 3D pour créer un clip d'animation pour le modèle actuel.",
9763
+ "modelEditorRightPanel.processing": "Traitement...",
9764
+ "modelEditorRightPanel.uploadVideo": "Importer une vidéo",
9765
+ "modelEditorRightPanel.noMaterialsOnThisObject": "Aucun matériau sur cet objet",
9766
+ "modelEditorRightPanel.selectAMeshToInspect": "Sélectionnez un maillage à inspecter",
9767
+ "modelEditorRightPanel.fog": "Brouillard",
9768
+ "modelEditorRightPanel.appliedWireframeModifier": "Modificateur fil de fer appliqué",
9769
+ "modelEditorRightPanel.wireframeModifier": "+ Modificateur fil de fer",
9770
+ "modelEditorRightPanel.recomputedNormals": "Normales recalculées",
9771
+ "modelEditorRightPanel.centeredGeometry": "Géométrie centrée",
9772
+ "modelEditorRightPanel.flippedNormals": "Normales inversées",
9773
+ "modelEditorRightPanel.physicsInfo": "Physique (info)",
9774
+ "modelEditorRightPanel.plannedFeatures": "Fonctionnalités prévues :",
9775
+ "modelEditorRightPanel.rigidBodySimulation": "• Simulation de corps rigides",
9776
+ "modelEditorRightPanel.softBodyDynamics": "• Dynamique des corps mous",
9777
+ "modelEditorRightPanel.clothSimulation": "• Simulation de tissus",
9778
+ "modelEditorRightPanel.particleSystems": "• Systèmes de particules",
9779
+ "modelEditorSubComponents.front": "Avant",
9780
+ "modelEditorSubComponents.back": "Arrière",
9781
+ "modelEditorSubComponents.double": "Double",
9782
+ "modelEditorTimeline.animationClipsMany": "Animation ({animations} clips)",
9783
+ "modelEditorTimeline.animationClipsOne": "Animation ({animations} clip)",
9784
+ "modelEditorTimeline.addAnimationFile": "+ Ajouter un fichier d'animation",
9785
+ "modelEditorToolbar.snapToGridState": "Aligner sur la grille ({state})",
9786
+ "modelEditorToolbar.on": "ACTIVÉ",
9787
+ "modelEditorToolbar.off": "DÉSACTIVÉ",
9788
+ "modelEditorToolbar.orientation": "Orientation : {gizmoSpace}",
9789
+ "modelEditorViewport.trisMeshesBones": "{polyCount} tri. · {meshCount} maillages · {boneCount} os",
9790
+ "modelEditorViewport.orientation": "Orientation : {gizmoSpace}",
9791
+ "modelViewer.loadingModel": "Chargement du modèle…",
9792
+ "armatureEditor.add": "+ Ajouter",
9793
+ "armatureEditor.rotationX": "Rotation X : {x}°",
9794
+ "armatureEditor.rotationY": "Rotation Y : {y}°",
9795
+ "armatureEditor.rotationZ": "Rotation Z : {z}°",
9796
+ "morphTargetEditor.add": "+ Ajouter",
9797
+ "morphTargetEditor.stop": "Arrêter",
9798
+ "morphTargetEditor.play": "Lire",
9799
+ "octree.spatialIndexOctree": "Index spatial (octree)",
9800
+ "octree.nodesObjects": "Nœuds : {nodeCount} · Objets : {objectCount}",
9801
+ "physicsSimulation.gravityY": "Gravité Y : {y}",
9802
+ "physicsSimulation.objectPhysics": "{name} — physique",
9803
+ "physicsSimulation.object": "Objet",
9804
+ "physicsSimulation.addRigidBody": "+ Ajouter un corps rigide",
9805
+ "physicsSimulation.type": "Type :",
9806
+ "physicsSimulation.shape": "Forme :",
9807
+ "physicsSimulation.box": "Boîte",
9808
+ "physicsSimulation.mass": "Masse : {mass}",
9809
+ "physicsSimulation.restitution": "Restitution : {restitution}",
9810
+ "physicsSimulation.friction": "Friction : {friction}",
9811
+ "physicsSimulation.sensorTriggerOnly": "Capteur (déclencheur uniquement)",
9812
+ "physicsSimulation.totalBodies": "Corps au total : {bodies}",
9813
+ "proceduralGeometry.height": "Hauteur : {trunkHeight}",
9814
+ "proceduralGeometry.branches": "Branches : {branches}",
9815
+ "proceduralGeometry.depth": "Profondeur : {depth}",
9816
+ "proceduralGeometry.angle": "Angle : {branchAngle}°",
9817
+ "proceduralGeometry.seed": "Graine : {seed}",
9818
+ "proceduralGeometry.radius": "Rayon : {radius}",
9819
+ "proceduralGeometry.detail": "Détail : {detail}",
9820
+ "proceduralGeometry.noise": "Bruit : {noiseAmount}",
9821
+ "proceduralGeometry.width": "Largeur : {width}",
9822
+ "proceduralGeometry.floors": "Étages : {floors}",
9823
+ "proceduralGeometry.windowsFloor": "Fenêtres/étage : {windowsPerFloor}",
9824
+ "proceduralGeometry.roof": "Toit :",
9825
+ "proceduralGeometry.hip": "En croupe",
9826
+ "proceduralGeometry.outerRadius": "Rayon extérieur : {outerRadius}",
9827
+ "proceduralGeometry.teeth": "Dents : {teeth}",
9828
+ "proceduralGeometry.toothDepth": "Profondeur de dent : {toothDepth}",
9829
+ "proceduralGeometry.thickness": "Épaisseur : {thickness}",
9830
+ "terrainEditor.radius": "Rayon : {radius}",
9831
+ "terrainEditor.strength": "Force : {strength}",
9832
+ "terrainEditor.octaves": "Octaves : {noiseOctaves}",
9833
+ "terrainEditor.persistence": "Persistance : {noisePersistence}",
9834
+ "weightPainter.bone": "Os :",
9835
+ "weightPainter.radius": "Rayon : {radius}",
9836
+ "weightPainter.strength": "Force : {strength}",
9837
+ "xrPreview.vr": "VR",
9838
+ "xrPreview.ar": "AR",
9839
+ "xrPreview.controllers": "Manettes : {controllers}",
9840
+ "xrPreview.hit": "Impact : ({x}, {y}, {z})",
9841
+ "useModelEditor.loadedAnimationS": "Chargé : {filename} ({clips} animation(s))",
9842
+ "useModelEditor.loading": "Chargement de {name}...",
9843
+ "useModelEditor.unsupportedFormat": "Format non pris en charge : {ext}",
9844
+ "useModelEditor.errorLoading": "Erreur de chargement de {name} : {err}",
9845
+ "useModelEditor.mergingAnimationsFrom": "Fusion des animations de {name}...",
9846
+ "useModelEditor.noAnimationsFoundIn": "Aucune animation trouvée dans {name}",
9847
+ "useModelEditor.noModelLoadedLoadA": "Aucun modèle chargé — chargez d'abord un modèle de base",
9848
+ "useModelEditor.mergedAnimationSFrom": "{clips} animation(s) fusionnée(s) depuis {name}",
9849
+ "useModelEditor.errorMerging": "Erreur de fusion de {name} : {err}",
9850
+ "useModelEditor.duplicated": "{name} dupliqué",
9851
+ "useModelEditor.nothingToExport": "Rien à exporter",
9852
+ "useModelEditor.exportError": "Erreur d'export : {err}",
9853
+ "useModelEditor.exportedFormat": "Export {format} réussi",
9854
+ "useModelEditor.stlBinary": "STL (binaire)",
9855
+ "useModelEditor.plyBinary": "PLY (binaire)",
9856
+ "useModelEditor.usdzExportError": "Erreur d'export USDZ : {err}",
9857
+ "useModelEditor.sceneCleared": "Scène effacée",
9858
+ "useModelEditor.nothingToSave": "Rien à enregistrer",
9859
+ "useModelEditor.saveError": "Erreur d'enregistrement : {err}",
9860
+ "useModelEditor.added": "{name} ajouté",
9861
+ "useModelEditor.addedCamera": "Caméra ajoutée",
9862
+ "useModelEditor.aiPoseCallbackNotConfigured": "Callback de pose IA non configuré.",
9863
+ "useModelEditor.uploadingVideoForAiPose": "Envoi de la vidéo pour l'estimation de pose IA...",
9864
+ "useModelEditor.gotFramesAtFpsCreating": "{frame_count} images reçues à {fps} i/s. Création du clip d'animation...",
9865
+ "useModelEditor.animationCreatedSuccessfully": "Animation créée avec succès !",
9866
+ "useModelEditor.couldNotCreateAnimationLoad": "Impossible de créer l'animation — chargez d'abord un modèle riggé.",
9867
+ "useModelEditor.error": "Erreur : {err}",
9868
+ "useModelEditor.undo": "Annuler : {label}",
9869
+ "useModelEditor.redo": "Rétablir : {label}",
9870
+ "useModelEditor.noSupportedFilesFound": "Aucun fichier pris en charge trouvé",
9871
+ "useModelEditor.importingFileS": "Import de {fileArray} fichier(s)...",
9872
+ "useModelEditor.imported": "Importé {loaded}/{fileArray} : {name}",
9873
+ "useModelEditor.batchImportCompleteFilesLoaded": "Import par lot terminé : {loaded}/{fileArray} fichiers chargés",
9874
+ "useModelEditor.selectAMeshToApply": "Sélectionnez un maillage pour appliquer le préréglage de matériau",
9875
+ "useModelEditor.applyPreset": "Appliquer le préréglage {name}",
9876
+ "useModelEditor.appliedPreset": "Préréglage {name} appliqué",
9877
+ "useModelEditor.selectAMeshToGenerate": "Sélectionnez un maillage pour générer le LOD",
9878
+ "useModelEditor.generateLodFor": "Générer le LOD pour {name}",
9879
+ "useModelEditor.generatedLodFor4Levels": "LOD généré pour {name} (4 niveaux)",
9880
+ "useModelEditor.noDuplicateMeshesFoundTo": "Aucun maillage en double à instancier",
9881
+ "useModelEditor.createdInstancedMeshesRemovedDuplicates": "{created} maillages instanciés créés, {removed} doublons supprimés",
9882
+ "useModelEditor.environment": "Environnement : {name}",
9883
+ "useModelViewer.loading": "Chargement…",
9884
+ "useModelViewer.loadedTrisMeshes": "Chargé – {polyCount} tri., {meshCount} maillages",
9885
+ "useModelViewer.error": "Erreur : {msg}",
9886
+ "useModelViewer.trianglesMeshesAnimationS": "{polyCount} triangles · {meshCount} maillages · {animNames} animation(s)",
9887
+ "particleEditor.systems": "Systèmes ({systems})",
9888
+ "particleEditor.bursts": "Salves ({bursts})",
9889
+ "cascadedShadows.cascades": "Cascades : {cascadeCount}",
9890
+ "cascadedShadows.maxDistance": "Distance max. : {maxFar}",
9891
+ "cascadedShadows.splitMode": "Mode de découpage :",
9892
+ "cascadedShadows.lambda": "Lambda : {practicalSplitLambda}",
9893
+ "cascadedShadows.shadowMapSize": "Taille de la carte d'ombres : {shadowMapSize}",
9894
+ "cascadedShadows.cascadeSplits": "Découpages des cascades : {cascadeSplits}",
9895
+ "renderExport.format": "Format :",
9896
+ "renderExport.pngLosslessAlpha": "PNG (sans perte + alpha)",
9897
+ "renderExport.jpegLossyNoAlpha": "JPEG (avec perte, sans alpha)",
9898
+ "renderExport.exrHdrFloat": "EXR (HDR flottant)",
9899
+ "renderExport.background": "Arrière-plan :",
9900
+ "renderExport.color": "Couleur :",
9901
+ "renderExport.supersamplingX": "Suréchantillonnage : {samples}x",
9902
+ "renderExport.n1xNone": "1x (aucun)",
9903
+ "renderExport.n4xBestQuality": "4x (meilleure qualité)",
9904
+ "renderExport.rendering": "Rendu en cours…",
9905
+ "ssao.mode": "Mode :",
9906
+ "ssao.samples": "Échantillons : {samples}",
9907
+ "ssao.radius": "Rayon : {radius}",
9908
+ "ssao.intensity": "Intensité : {intensity}",
9909
+ "ssao.bias": "Biais : {bias}",
9910
+ "ssao.resolution": "Résolution : {resolution}",
9911
+ "ssao.bilateralBlurSize": "Flou bilatéral (taille : {blurSize})",
9912
+ "ssr.maxSteps": "Pas max. : {maxSteps}",
9913
+ "ssr.maxDistance": "Distance max. : {maxDistance}",
9914
+ "ssr.intensity": "Intensité : {intensity}",
9915
+ "ssr.thickness": "Épaisseur : {thickness}",
9916
+ "ssr.jitter": "Gigue : {jitter}",
9917
+ "ssr.resolutionScale": "Échelle de résolution : {resolution}",
9918
+ "ssr.fresnel": "Fresnel : {fresnelExponent}",
9919
+ "webGPURenderer.initializing": "Initialisation…",
9920
+ "webGPURenderer.gpu": "GPU : {adapterName}",
9921
+ "webGPURenderer.vendor": "Fabricant : {vendor}",
9922
+ "webGPURenderer.maxTexturePx": "Texture max. : {maxTextureDimension2D}px",
9923
+ "webGPURenderer.features": "Fonctionnalités : {features}",
9924
+ "webGPURenderer.toneMapping": "Mappage des tons :",
9925
+ "webGPURenderer.exposure": "Exposition : {toneMappingExposure}",
9926
+ "webGPURenderer.outputColorSpace": "Espace colorimétrique de sortie :",
9927
+ "webGPURenderer.pixelRatio": "Ratio de pixels : {pixelRatio}",
9928
+ "uvEditor.vertices": "Sommets :",
9929
+ "uvEditor.faces": "Faces :",
9930
+ "uvEditor.islands": "Îlots :",
9931
+ "uvEditor.selected": "Sélection :",
9932
+ "uvEditor.snapSize": "Pas d'aimantation : {snapSize}",
9933
+ "uvEditor.tool": "Outil : {activeTool}",
9934
+ "uvEditor.mode": "Mode : {selectionMode}",
9935
+ "uvEditor.zoom": "Zoom : {zoom} %",
9936
+ "uvEditor.channel": "Canal : {activeChannel}",
9937
+ "animatedPerson.juror": "Juré",
9938
+ "brushEngine.sizePx": "Taille : {size}px",
9939
+ "brushEngine.opacity": "Opacité : {opacity} %",
9940
+ "brushEngine.flow": "Flux : {flow} %",
9941
+ "brushEngine.hardness": "Dureté : {hardness} %",
9942
+ "brushEngine.smoothing": "Lissage : {smoothing} %",
9943
+ "brushEngine.tip": "Pointe :",
9944
+ "brushEngine.roundness": "Rondeur : {roundness} %",
9945
+ "brushEngine.source": "Source :",
9946
+ "brushEngine.off": "Désactivé",
9947
+ "brushEngine.scatter": "Dispersion : {scatter} %",
9948
+ "brushEngine.blend": "Fusion :",
9949
+ "fontEditor.glyphs2": "{glyphs} glyphes",
9950
+ "fontEditor.pen": "Plume",
9951
+ "fontEditor.ascent2": "jambage supérieur",
9952
+ "fontEditor.xHeight2": "hauteur d'x",
9953
+ "fontEditor.cap2": "capitale",
9954
+ "fontEditor.ascent": "Jambage supérieur ({ascent})",
9955
+ "fontEditor.xHeight": "Hauteur d'x ({xHeight})",
9956
+ "fontEditor.cap": "Capitale ({capHeight})",
9957
+ "gameAsset2dEditor.new": "Nouveau",
9958
+ "gameAsset2dEditor.tileMap": "Carte de tuiles",
9959
+ "gameAsset2dEditor.spriteSheet": "Feuille de sprites",
9960
+ "gameAsset2dEditor.animation": "Animation",
9961
+ "gameAsset2dEditor.effects2": "Effets",
9962
+ "gameAsset2dEditor.brush": "Pinceau",
9963
+ "gameAsset2dEditor.eraser": "Gomme",
9964
+ "gameAsset2dEditor.fill": "Remplissage",
9965
+ "gameAsset2dEditor.rectangle": "Rectangle",
9966
+ "gameAsset2dEditor.line": "Ligne",
9967
+ "gameAsset2dEditor.eyedropper": "Pipette",
9968
+ "gameAsset2dEditor.frameSize": "Taille d'image :",
9969
+ "gameAsset2dEditor.add": "+ Ajouter",
9970
+ "gameAsset2dEditor.hideLayer": "Masquer le calque",
9971
+ "gameAsset2dEditor.showLayer": "Afficher le calque",
9972
+ "gameAsset2dEditor.new2": "+ Nouveau",
9973
+ "gameAsset2dEditor.import": "+ Importer",
9974
+ "gameAsset2dEditor.frames": "{frames} images",
9975
+ "gameAsset2dEditor.frames2": "Images ({frames})",
9976
+ "gameAsset2dEditor.states2": "{states} états",
9977
+ "gameAsset2dEditor.selectAnimation": "Sélectionner une animation...",
9978
+ "gameAsset2dEditor.noAnimation": "Aucune animation",
9979
+ "gameAsset2dEditor.addTransitionTo": "Ajouter une transition vers :",
9980
+ "gameAsset2dEditor.selectTargetState": "Sélectionner l'état cible...",
9981
+ "gameAsset2dEditor.brightness": "Luminosité",
9982
+ "gameAsset2dEditor.contrast": "Contraste",
9983
+ "gameAsset2dEditor.saturation": "Saturation",
9984
+ "gameAsset2dEditor.hueShift": "Décalage de teinte",
9985
+ "gameAsset2dEditor.invert": "Inverser",
9986
+ "gameAsset2dEditor.pixelate": "Pixeliser",
9987
+ "gameAsset2dEditor.outline": "Contour",
9988
+ "gameAsset2dEditor.tint": "Teinte",
9989
+ "gameAsset2dEditor.blur": "Flou",
9990
+ "gameAsset2dEditor.glow": "Lueur",
9991
+ "gameAsset2dEditor.shadow": "Ombre",
9992
+ "gameAsset2dEditor.paletteSwap": "Échange de palette",
9993
+ "gameAsset2dEditor.effects": "{effects} effets",
9994
+ "gameAsset2dEditor.mode": "Mode : {mode}",
9995
+ "gameAsset2dEditor.map": "Carte : {name} ({width}×{height})",
9996
+ "gameAsset2dEditor.tilePx": "Tuile : {tileWidth}×{tileHeight}px",
9997
+ "gameAsset2dEditor.sheet": "Feuille : {name}",
9998
+ "gameAsset2dEditor.selectedFrames": "Sélection : {selectedFrameIds} images",
9999
+ "aiTools.intensity": "Intensité : {intensity}",
10000
+ "aiTools.saturation": "Saturation : {saturation}",
10001
+ "aiTools.temperature": "Température :",
10002
+ "aiTools.threshold": "Seuil : {threshold}",
10003
+ "aiTools.iterations": "Itérations : {iterations}",
10004
+ "aiTools.featherPx": "Contour progressif : {featherRadius}px",
10005
+ "aiTools.replaceBg": "Remplacer l'arrière-plan :",
10006
+ "aiTools.scale": "Échelle :",
10007
+ "aiTools.sharpen": "Netteté : {sharpen}",
10008
+ "aiTools.strength": "Force : {strength}",
10009
+ "aiTools.detail": "Détail : {detailPreservation}",
10010
+ "aiTools.processing": "Traitement…",
10011
+ "photoEditor.all": "Tous",
10012
+ "photoEditor.color": "Couleur",
10013
+ "photoEditor.light": "Lumière",
10014
+ "photoEditor.vintage": "Vintage",
10015
+ "photoEditor.artistic": "Artistique",
10016
+ "photoEditor.fun": "Amusant",
10017
+ "photoEditor.rotation2": "Rotation :",
10018
+ "photoEditor.flipH": "Retournement H :",
10019
+ "photoEditor.yes": "Oui",
10020
+ "photoEditor.no": "Non",
10021
+ "photoEditor.flipV": "Retournement V :",
10022
+ "photoEditor.crop": "Recadrage :",
10023
+ "photoEditor.stickersEmoji": "Autocollants / émojis",
10024
+ "photoEditor.layers": "Calques ({overlays})",
10025
+ "photoEditor.emoji": "Émoji",
10026
+ "photoEditor.drawing": "Dessin ({strokes})",
10027
+ "photoEditor.stroke": "Contour :",
10028
+ "photoEditor.fill": "Remplissage :",
10029
+ "photoEditor.off": "Désactivé",
10030
+ "photoEditor.on": "Activé",
10031
+ "photoEditor.width": "Largeur :",
10032
+ "photoEditor.thickness": "Épaisseur :",
10033
+ "photoEditor.color2": "Couleur :",
10034
+ "pixelEditor.widthPx": "Largeur (px)",
10035
+ "pixelEditor.heightPx": "Hauteur (px)",
10036
+ "pixelEditorMenuBar.file": "Fichier",
10037
+ "pixelEditorMenuBar.new": "Nouveau…",
10038
+ "pixelEditorMenuBar.open": "Ouvrir…",
10039
+ "pixelEditorMenuBar.saveAse": "Enregistrer .ase",
10040
+ "pixelEditorMenuBar.exportPng": "Exporter en PNG",
10041
+ "pixelEditorMenuBar.exportJpg": "Exporter en JPG",
10042
+ "pixelEditorMenuBar.exportWebp": "Exporter en WebP",
10043
+ "pixelEditorMenuBar.exportBmp": "Exporter en BMP",
10044
+ "pixelEditorMenuBar.exportSvg": "Exporter en SVG",
10045
+ "pixelEditorMenuBar.exportSpriteSheet": "Exporter la feuille de sprites",
10046
+ "pixelEditorMenuBar.saveToLibrary": "Enregistrer dans la bibliothèque",
10047
+ "pixelEditorMenuBar.edit": "Édition",
10048
+ "pixelEditorMenuBar.undo": "Annuler",
10049
+ "pixelEditorMenuBar.redo": "Rétablir",
10050
+ "pixelEditorMenuBar.copy": "Copier",
10051
+ "pixelEditorMenuBar.cut": "Couper",
10052
+ "pixelEditorMenuBar.paste": "Coller",
10053
+ "pixelEditorMenuBar.selectAll": "Tout sélectionner",
10054
+ "pixelEditorMenuBar.image": "Image",
10055
+ "pixelEditorMenuBar.flipHorizontal": "Retourner horizontalement",
10056
+ "pixelEditorMenuBar.flipVertical": "Retourner verticalement",
10057
+ "pixelEditorMenuBar.rotate90": "Pivoter de 90°",
10058
+ "pixelEditorMenuBar.clearCanvas": "Effacer le canevas",
10059
+ "pixelEditorMenuBar.view": "Affichage",
10060
+ "pixelEditorMenuBar.showGrid": "Afficher la grille",
10061
+ "pixelEditorMenuBar.tools": "Outils",
10062
+ "pixelEditorMenuBar.spriteGenerator": "Générateur de sprites…",
10063
+ "pixelEditorRightPanel.visible": "Visible",
10064
+ "pixelEditorRightPanel.hidden": "Masqué",
10065
+ "pixelEditorRightPanel.locked": "Verrouillé",
10066
+ "pixelEditorRightPanel.unlocked": "Déverrouillé",
10067
+ "pixelEditorRightPanel.opacity2": "Opacité : {opacity} %",
10068
+ "pixelEditorStatusBar.brushPx": "Pinceau : {size}px {shape}",
10069
+ "pixelEditorStatusBar.pressure": "Pression : {pressure} %",
10070
+ "pixelEditorStatusBar.layer": "Calque : {name}",
10071
+ "pixelEditorStatusBar.sym": "Sym. : {symmetry}",
10072
+ "pixelEditorStatusBar.sel": "Sél. : {w}×{h}",
10073
+ "pixelEditorTimeline.frame": "+ Image",
10074
+ "pixelEditorTimeline.dup": "Dupliquer",
10075
+ "pixelEditorTimeline.frame2": "− Image",
10076
+ "pixelEditorTimeline.pause": "Pause",
10077
+ "pixelEditorTimeline.play": "Lire",
10078
+ "pixelEditorTimeline.fps": "I/s :",
10079
+ "pixelEditorTimeline.framesMany": "{fc} images",
10080
+ "pixelEditorTimeline.framesOne": "{fc} image",
10081
+ "pixelEditorTimeline.frame3": "Image {fi}",
10082
+ "pixelEditorToolbar.filledShape": "Forme pleine",
10083
+ "pixelEditorToolbar.outlineShape": "Forme contour",
10084
+ "pixelEditorToolbar.symmetry": "Symétrie : {label}",
10085
+ "spriteGeneratorPanel.skin": "Peau",
10086
+ "spriteGeneratorPanel.hair": "Cheveux",
10087
+ "spriteGeneratorPanel.clothing": "Vêtements",
10088
+ "spriteGeneratorPanel.walls": "Murs",
10089
+ "spriteGeneratorPanel.roof": "Toit",
10090
+ "spriteGeneratorPanel.fur": "Fourrure",
10091
+ "spriteGeneratorPanel.topDown": "Vue de dessus",
10092
+ "spriteGeneratorPanel.sideView": "Vue de côté",
10093
+ "spriteGeneratorPanel.n25dIsometric": "Isométrique 2.5D",
10094
+ "spriteGeneratorPanel.hide": "Masquer",
10095
+ "spriteGeneratorPanel.show": "Afficher",
10096
+ "texturePainter3d.sizePx": "Taille : {size}px",
10097
+ "texturePainter3d.opacity": "Opacité : {opacity} %",
10098
+ "texturePainter3d.hardness": "Dureté : {hardness} %",
10099
+ "texturePainter3d.zoom": "Zoom : {zoom} %",
10100
+ "texturePainter3d.hideLayer": "Masquer le calque",
10101
+ "texturePainter3d.showLayer": "Afficher le calque",
10102
+ "texturePainter3d.addLayer": "+ Ajouter un calque",
10103
+ "svgToCode.svgCode": "SVG → code",
10104
+ "svgToCode.framework": "Framework :",
10105
+ "svgToCode.typescriptUtility": "TypeScript (utilitaire)",
10106
+ "svgToCode.componentName": "Nom du composant :",
10107
+ "svgToCode.colors": "Couleurs :",
10108
+ "vectorEditor.pasteSvgSourceCodeBelow": "Collez le code source SVG ci-dessous :",
10109
+ "vectorEditor.shape": "Forme {i}",
10110
+ "vectorEditor.gradient": "Dégradé {type}",
10111
+ // ── ui: tools (1.2.2 B) ──
10112
+ "actionBuilder.addAction": "+ Ajouter une action",
10113
+ "actionBuilder.dataSource": "— source de données —",
10114
+ "actionBuilder.handler": "— gestionnaire —",
10115
+ "auditLog.collapse": "Réduire",
10116
+ "auditLog.expand": "Développer",
10117
+ "columnChooser.moveUp": "Monter {header}",
10118
+ "columnChooser.moveDown": "Descendre {header}",
10119
+ "columnChooser.visible": "{visibleCount} / {totalCount} visibles",
10120
+ "complianceDashboard.certification2": "Certification {name}",
10121
+ "complianceDashboard.compliant": "Conforme",
10122
+ "complianceDashboard.lastAudit": "Dernier audit : {date}",
10123
+ "complianceDashboard.expires": "Expire le : {date}",
10124
+ "complianceDashboard.search": "Rechercher...",
10125
+ "complianceDashboard.export": "Exporter",
10126
+ "complianceDashboard.nonCompliant": "Non conforme",
10127
+ "complianceDashboard.inProgress": "En cours",
10128
+ "complianceDashboard.priority": "Priorité",
10129
+ "complianceDashboard.owner": "Responsable",
10130
+ "complianceDashboard.dueDate": "Échéance",
10131
+ "complianceDashboard.noEvents": "Aucun événement",
10132
+ "complianceDashboard.gap": "Écart",
10133
+ "complianceDashboard.noChecklistItems": "Aucun élément de liste de contrôle",
10134
+ "complianceDashboard.complianceChecklist": "Liste de contrôle de conformité",
10135
+ "complianceDashboard.completed": "terminés",
10136
+ "complianceDashboard.pending": "en attente",
10137
+ "complianceDashboard.needAtLeast2Certifications": "Au moins 2 certifications sont nécessaires pour l'analyse des recoupements",
10138
+ "complianceDashboard.controlOverlapAnalysis": "Analyse des contrôles communs",
10139
+ "complianceDashboard.certificationA": "Certification A",
10140
+ "complianceDashboard.certificationB": "Certification B",
10141
+ "complianceDashboard.shared": "communs",
10142
+ "complianceDashboard.only": "{name} uniquement",
10143
+ "complianceDashboard.sharedControls": "Contrôles communs",
10144
+ "complianceDashboard.uniqueTo": "Propres à",
10145
+ "complianceDashboard.sharedControls2": "Contrôles communs",
10146
+ "complianceDashboard.more": "+{shared} de plus...",
10147
+ "complianceDashboard.only2": "Uniquement",
10148
+ "complianceDashboard.more2": "+{onlyA} de plus...",
10149
+ "complianceDashboard.more3": "+{onlyB} de plus...",
10150
+ "complianceDashboard.noCostDataAvailable": "Aucune donnée de coût disponible",
10151
+ "complianceDashboard.budgetOverview": "Aperçu du budget",
10152
+ "complianceDashboard.plannedBudget": "Budget prévu",
10153
+ "complianceDashboard.actualSpend": "Dépenses réelles",
10154
+ "complianceDashboard.variance": "Écart",
10155
+ "complianceDashboard.byCertification": "Par certification",
10156
+ "complianceDashboard.byCategory": "Par catégorie",
10157
+ "complianceDashboard.planned": "Prévu",
10158
+ "complianceDashboard.actual": "Réel",
10159
+ "complianceDashboard.under": "En dessous",
10160
+ "complianceDashboard.over": "Au-dessus",
10161
+ "complianceDashboard.onTrack": "Dans les temps",
10162
+ "designTokens.cssVariables": "Variables CSS",
10163
+ "designTokens.jsonFlat": "JSON (plat)",
10164
+ "designTokens.jsonNested": "JSON (imbriqué)",
10165
+ "designTokens.tailwindConfig": "Configuration Tailwind",
10166
+ "designTokens.styleDictionary": "Style Dictionary",
10167
+ "designTokens.figmaTokens": "Jetons Figma",
10168
+ "designTokens.androidXml": "XML Android",
10169
+ "designTokens.iosSwift": "iOS Swift",
10170
+ "designTokens.tokensInCategories": "{tokenCount} jetons dans {categories} catégories",
10171
+ "diagramDesigner.basicShapes": "Formes de base",
10172
+ "diagramDesigner.flowchart": "Organigramme de flux",
10173
+ "diagramDesigner.data": "Données",
10174
+ "diagramDesigner.special": "Spéciales",
10175
+ "diagramDesigner.nodesConnectorsSelected": "{selectedNodes} nœuds, {selectedConnectors} connecteurs sélectionnés",
10176
+ "diagramDesigner.nodesConnectors": "{nodes} nœuds, {connectors} connecteurs",
10177
+ "dms.selected": "{selectedDocIds} sélectionnés",
10178
+ "dms.ascending": "Croissant",
10179
+ "dms.descending": "Décroissant",
10180
+ "dms.versions": "Versions ({versions})",
10181
+ "erpReportDesigner.dropHere": "Déposer ici",
10182
+ "erpReportDesigner.dragElements": "Faites glisser des éléments",
10183
+ "erpReportDesigner.element": "Élément : {type}",
10184
+ "erpReportDesigner.select": "-- Sélectionner --",
10185
+ "erpReportDesigner.band": "Bande : {type}",
10186
+ "erpReportDesigner.heightMm": "Hauteur (mm)",
10187
+ "fileManager.dir": "〈RÉP〉",
10188
+ "fileManager.filePanel": "Panneau de fichiers {panel}",
10189
+ "filterBuilder.expandGroup": "Développer le groupe",
10190
+ "filterBuilder.collapseGroup": "Réduire le groupe",
10191
+ "filterBuilder.condition": "+ Condition",
10192
+ "filterBuilder.group": "+ Groupe",
10193
+ "filterBuilder.matchClickToSwitch": "Correspondre à {mode} — cliquez pour passer à {other}",
10194
+ "filterBuilder.matchAll": "TOUTES",
10195
+ "filterBuilder.matchAny": "UNE",
10196
+ "git.merge2": "fusion",
10197
+ "git.rebase": "rebase",
10198
+ "git.squash": "squash",
10199
+ "git.fastForward": "fast-forward",
10200
+ "git.current": "actuelle",
10201
+ "git.default": "par défaut",
10202
+ "git.protected": "protégée",
10203
+ "git.remote": "distante",
10204
+ "git.annotated": "annoté",
10205
+ "git.lightweight": "léger",
10206
+ "helpdesk.allTickets": "Tous les tickets",
10207
+ "helpdesk.myTickets": "Mes tickets",
10208
+ "helpdesk.pending": "En attente",
10209
+ "helpdesk.escalated": "Escaladés",
10210
+ "helpdesk.priority2": "Priorité : {priority}",
10211
+ "helpdesk.assignedTo": "Attribué à {name}",
10212
+ "helpdesk.comments": "{comments} commentaires",
10213
+ "helpdesk.slaBreached2": "SLA dépassé !",
10214
+ "helpdesk.slaAtRisk2": "SLA menacé -",
10215
+ "helpdesk.overdueBy": "En retard de {duration}",
10216
+ "helpdesk.remaining": "{duration} restant",
10217
+ "integrationHub.connectorNotFound": "Connecteur introuvable",
10218
+ "integrationHub.noConnectionTesterPassOntestconnection": "Aucun testeur de connexion : passez onTestConnection",
10219
+ "integrationHub.connected2": "/ {connectors} connectés",
10220
+ "integrationHub.activeJobs": "tâches actives",
10221
+ "integrationHub.source": "(source)",
10222
+ "integrationHub.target": "(cible)",
10223
+ "integrationHub.fields": "{fields} champs",
10224
+ "integrationHub.records": "{recordsSucceeded}/{recordsProcessed} enregistrements",
10225
+ "loanCalculator.custom": "Personnalisé",
10226
+ "loanCalculator.loanCalculator": "Calculateur de prêt",
10227
+ "loanCalculator.addScenario": "Ajouter un scénario",
10228
+ "loanCalculator.export": "Exporter",
10229
+ "loanCalculator.exportPdf": "Exporter en PDF",
10230
+ "loanCalculator.exportCsv": "Exporter en CSV",
10231
+ "loanCalculator.exportExcel": "Exporter vers Excel",
10232
+ "loanCalculator.loanAmount": "Montant du prêt",
10233
+ "loanCalculator.annualInterestRate": "Taux d'intérêt annuel",
10234
+ "loanCalculator.loanTerm": "Durée du prêt",
10235
+ "loanCalculator.months": "mois",
10236
+ "loanCalculator.years": "ans",
10237
+ "loanCalculator.totalPayment": "Paiement total",
10238
+ "loanCalculator.payment2": "Paiement n° {number}",
10239
+ "loanCalculator.paymentSchedule": "Échéancier",
10240
+ "loanCalculator.showLess": "Afficher moins",
10241
+ "loanCalculator.showAll": "Tout afficher ({schedule})",
10242
+ "loanCalculator.date": "Date",
10243
+ "loanCalculator.balance": "Solde",
10244
+ "loanCalculator.comparison": "Comparaison",
10245
+ "loanCalculator.mo": "{termMonths} mois",
10246
+ "printPreview.of": "sur {totalPages}",
10247
+ "printPreview.orientation": "Orientation :",
10248
+ "printPreview.pageSize": "Format de page :",
10249
+ "printPreview.margins": "Marges :",
10250
+ "printPreview.mm": "mm",
10251
+ "reportBuilder.moveUp": "Monter",
10252
+ "reportBuilder.moveDown": "Descendre",
10253
+ "reportBuilder.removeSection": "Supprimer la section",
10254
+ "rulesEngine.addRule": "+ Ajouter une règle",
10255
+ "rulesEngine.tests": "Tests ({testCases})",
10256
+ "rulesEngine.decisionTreeEditorVisualNode": "Éditeur d'arbre de décision (l'éditeur visuel de nœuds viendrait ici)",
10257
+ "rulesEngine.addTest": "+ Ajouter un test",
10258
+ "rulesEngine.matchedRules": "Règles correspondantes : {matchedRules}",
10259
+ "niceShowcase.componentsZeroDependenciesTypescriptMit": "{totalComponents}+ composants · Zéro dépendance · TypeScript · Licence MIT",
10260
+ "niceShowcase.peerDependencies": "Dépendances pairs :",
10261
+ "niceShowcase.componentCatalogComponents": "Catalogue de composants ({totalComponents}+ composants)",
10262
+ "niceShowcase.mitLicenseBuiltWithReact": "Licence MIT · {packageName} · Construit avec React et TypeScript",
10263
+ "niceShowcase.aliceDeployedV241": "Alice a déployé la v2.4.1",
10264
+ "niceShowcase.bobUpdatedDesignTokens": "Bob a mis à jour les jetons de design",
10265
+ "niceShowcase.carolApprovedPr142": "Carol a approuvé la PR #142",
10266
+ "niceShowcase.daveFixedCiPipeline": "Dave a corrigé le pipeline CI",
10267
+ "niceShowcase.eveAddedIntegrationTests": "Eve a ajouté des tests d'intégration",
10268
+ "niceShowcase.activeOnly": "Actifs uniquement",
10269
+ "niceShowcase.highSalary100k": "Salaire élevé (>100 k$)",
10270
+ "niceShowcase.topPerformers2": "Meilleurs éléments",
10271
+ "niceShowcase.developers": "Développeurs",
10272
+ "niceShowcase.engineering": "Ingénierie",
10273
+ "niceShowcase.rows": "Lignes : {filteredRows}",
10274
+ "niceShowcase.selected": "Sélectionnés : {selectedCount}",
10275
+ "niceShowcase.active": "Actifs : {activeCount}",
10276
+ "niceShowcase.topPerformers": "Meilleurs éléments : {highPerformers}",
10277
+ "niceShowcase.groupsValue": "Groupes : {group}",
10278
+ "niceShowcase.none": "aucun",
10279
+ "niceShowcase.focused": "Focus : {field}",
10280
+ "niceShowcase.batch5Salary": "+5 % de salaire en lot",
10281
+ "niceShowcase.batchDeactivate": "Désactivation en lot",
10282
+ "niceShowcase.groupByDepartment": "Grouper par service",
10283
+ "niceShowcase.groupByRole": "Grouper par rôle",
10284
+ "niceShowcase.noGroup": "Aucun groupement",
10285
+ "niceShowcase.hideAdvancedFilters": "Masquer les filtres avancés",
10286
+ "niceShowcase.showAdvancedFilters": "Afficher les filtres avancés",
10287
+ "niceShowcase.performance": "Performance",
10288
+ "niceShowcase.active2": "Actif",
10289
+ "niceShowcase.actions": "Actions",
10290
+ "niceShowcase.departmentSalaryPerformance": "Service : {department} · Salaire : ${salary} · Performance : {performance} %",
10291
+ "niceShowcase.editRow": "Modifier la ligne",
10292
+ "niceShowcase.duplicateRow": "Dupliquer la ligne",
10293
+ "niceShowcase.flashRow": "Faire clignoter la ligne",
10294
+ "niceShowcase.deleteRow": "Supprimer la ligne",
10295
+ "niceShowcase.proTips": "Astuces :",
10296
+ "niceShowcase.keyboardNavigation": "Navigation au clavier :",
10297
+ "niceShowcase.clickOnACellThen": "Cliquez sur une cellule, puis naviguez avec les flèches, Tab, Début, Fin, Page préc./suiv.",
10298
+ "niceShowcase.quickEdit": "Modification rapide :",
10299
+ "niceShowcase.pressEnterOnAFocused": "Appuyez sur Entrée sur une cellule pour la modifier, Échap pour annuler",
10300
+ "niceShowcase.copySelection": "Copier la sélection :",
10301
+ "niceShowcase.selectRowsWithCheckboxAnd": "Sélectionnez des lignes avec les cases à cocher et appuyez sur Ctrl+C pour copier",
10302
+ "niceShowcase.quickFilters": "Filtres rapides :",
10303
+ "niceShowcase.cellVisualization": "Visualisation des cellules :",
10304
+ "niceShowcase.conditionalFormatting": "Mise en forme conditionnelle :",
10305
+ "niceShowcase.salaryColumnHighlightsHighGreen": "La colonne salaire met en évidence les valeurs élevées (vert) et basses (rouge)",
10306
+ "niceShowcase.batchOperations": "Opérations en lot :",
10307
+ "niceShowcase.statePersistence": "Persistance de l'état :",
10308
+ "niceShowcase.columnWidthsAndSortSettings": "Les largeurs de colonnes et le tri sont enregistrés automatiquement",
10309
+ "niceShowcase.developer": "Développeur",
10310
+ "niceShowcase.designer": "Designer",
10311
+ "niceShowcase.pm": "CP",
10312
+ "niceShowcase.ux": "UX",
10313
+ "niceShowcase.product": "Produit",
10314
+ "niceShowcase.revenue": "Chiffre d'affaires :",
10315
+ "niceShowcase.users": "Utilisateurs :",
10316
+ "niceShowcase.low": "Faible",
10317
+ "niceShowcase.medium": "Moyen",
10318
+ "niceShowcase.high": "Élevé",
10319
+ "niceShowcase.volume": "Volume : {slider} %",
10320
+ "niceShowcase.atLeast2Characters": "Au moins 2 caractères",
10321
+ "niceShowcase.account": "Compte",
10322
+ "niceShowcase.done": "Terminé",
10323
+ "niceShowcase.mountain": "Montagne",
10324
+ "niceShowcase.ocean": "Océan",
10325
+ "niceShowcase.forest": "Forêt",
10326
+ "niceShowcase.edit": "Modifier",
10327
+ "niceShowcase.delete": "Supprimer",
10328
+ "niceShowcase.optionA": "Option A",
10329
+ "niceShowcase.optionB": "Option B",
10330
+ "niceShowcase.overview": "Aperçu",
10331
+ "niceShowcase.details": "Détails",
10332
+ "niceShowcase.disabled": "Désactivé",
10333
+ "niceShowcase.whatIsNice2devUi": "Qu'est-ce que Nice2Dev UI ?",
10334
+ "niceShowcase.home": "Accueil",
10335
+ "niceShowcase.products": "Produits",
10336
+ "niceShowcase.laptops": "Ordinateurs portables",
10337
+ "niceShowcase.name": "Nom",
10338
+ "niceShowcase.role": "Rôle",
10339
+ "niceShowcase.salary": "Salaire",
10340
+ "niceShowcase.data": "Données",
10341
+ "niceShowcase.allComponentsListedClickA": "Les {count} composants. Cliquez sur un nom pour la documentation.",
10342
+ "niceShowcase.iconsComponents": "{subtitle} — {icons} icônes, {totalComponents}+ composants",
10343
+ "theme.background": "Arrière-plan",
10344
+ "theme.hoverBg": "Fond au survol",
10345
+ "theme.activeBg": "Fond actif",
10346
+ "theme.border": "Bordure",
10347
+ "theme.sidebar": "Barre latérale",
10348
+ "theme.menu": "Menu",
10349
+ "theme.tree": "Arborescence",
10350
+ "theme.tintLighterPerLevel": "Teinte (plus clair par niveau)",
10351
+ "theme.shadeDarkerPerLevel": "Nuance (plus sombre par niveau)",
10352
+ "theme.mixWithSurface": "Mélanger avec la surface",
10353
+ "theme.cyclePalette": "Palette cyclique",
10354
+ "themePreview.clickToEdit": "Cliquez pour modifier : {token}",
10355
+ "themePreview.liveDemoOfNestedMenu": "Démo en direct de Menu / Arborescence / Barre latérale imbriqués utilisant les variables",
10356
+ "themePreview.variablesEmittedByThe": "émises par la section",
10357
+ "themePreview.nesting": "imbrication",
10358
+ "themePreview.section": ".",
10359
+ "validationBuilder.field2": "-- champ --",
10360
+ "validationBuilder.predicateWiredInCode": "prédicat câblé dans le code",
10361
+ "validationBuilder.when": "quand…",
10362
+ "validationBuilder.validateOnlyWhen": "Valider uniquement si :",
10363
+ "validationBuilder.rule": "+ Règle",
10364
+ "diagramEditor.modes": "Modes :",
10365
+ // ── ui: devops, data branching (1.2.2 B) ──
10366
+ "branchManager.default": "par défaut",
10367
+ "branchManager.protected": "protégée",
10368
+ "branchManager.local": "{branches} locales",
10369
+ "branchManager.local2": "Locales ({local})",
10370
+ "branchManager.remote": "Distantes ({remote})",
10371
+ "branchManager.ahead": "{ahead} en avance",
10372
+ "branchManager.behind": "{behind} en retard",
10373
+ "branchManager.by": "par {author}",
10374
+ "branchManager.current2": "(actuelle)",
10375
+ "branchManager.into": "dans",
10376
+ "branchManager.mergeIntoCurrent": "Fusionner dans l'actuelle",
10377
+ "branchManager.rename": "Renommer",
10378
+ "gitBlame.parentS": "{parents} parent(s)",
10379
+ "gitBlame.at": "à {revision}",
10380
+ "gitBlame.commitsByAuthorS": "{commits} commits par {authors} auteur(s)",
10381
+ "gitBlame.more": "+{authors} de plus",
10382
+ "gitBlame.age": "Âge :",
10383
+ "gitBlame.n1Week": "<1 semaine",
10384
+ "gitBlame.n1Month": "<1 mois",
10385
+ "gitBlame.n3Months": "<3 mois",
10386
+ "gitBlame.n1Year": "<1 an",
10387
+ "gitBlame.n1Year2": ">1 an",
10388
+ "gitConflictResolver.vs": "VS",
10389
+ "gitConflictResolver.conflictSResolvedRemaining": "{conflicts} conflit(s) • {resolvedCount} résolu(s) • {unresolvedCount} restant(s)",
10390
+ "gitConflictResolver.resolution": "Résolution : {resolution}",
10391
+ "gitDiffViewer.comments": "Commentaires ({fileComments})",
10392
+ "gitGraph.filesChanged": "fichiers modifiés",
10393
+ "gitGraph.additions": "ajouts",
10394
+ "gitGraph.deletions": "suppressions",
10395
+ "gitGraph.selectCommitToCompareWith": "Sélectionnez un commit à comparer avec {compareBase}",
10396
+ "gitGraph.selectFirstCommit": "Sélectionnez le premier commit",
10397
+ "gitGraph.createBranch": "Créer une branche",
10398
+ "gitGraph.createTag": "Créer un tag",
10399
+ "gitGraph.resetSoft": "Reset (soft)",
10400
+ "gitGraph.resetMixed": "Reset (mixed)",
10401
+ "gitGraph.resetHard": "Reset (hard)",
10402
+ "gitHooks.filePatternsCommaSeparated": "Motifs de fichiers (séparés par des virgules)",
10403
+ "gitHooks.scriptPreview": "Aperçu du script : {type}",
10404
+ "gitHooks.actionsMany": "{actionCount} actions",
10405
+ "gitHooks.actionsOne": "{actionCount} action",
10406
+ "gitHooks.files": "Fichiers : {filePatterns}",
10407
+ "gitHooks.failOnError2": "échec en cas d'erreur",
10408
+ "mergeRequestBuilder.pullRequest": "Pull request",
10409
+ "mergeRequestBuilder.mergeRequest": "Merge request",
10410
+ "mergeRequestBuilder.draft": "Brouillon",
10411
+ "mergeRequestBuilder.additions": "+{additions} ajouts",
10412
+ "mergeRequestBuilder.deletions": "-{deletions} suppressions",
10413
+ "mergeRequestBuilder.filesChanged": "{changedFiles} fichiers modifiés",
10414
+ "mergeRequestBuilder.enterATitle": "Saisissez un titre...",
10415
+ "mergeRequestBuilder.useSuggested": "Utiliser la suggestion : « {suggestedTitle} »",
10416
+ "mergeRequestBuilder.changedFiles": "Fichiers modifiés ({changedFiles})",
10417
+ "mergeRequestBuilder.createDraft": "Créer un brouillon",
10418
+ "pipelineEditor.visualEditor": "Éditeur visuel",
10419
+ "pipelineEditor.triggers": "Déclencheurs",
10420
+ "pipelineEditor.variables": "Variables",
10421
+ "pipelineEditor.addStage": "+ Ajouter une étape",
10422
+ "pipelineEditor.jobsMany": "{count} tâches",
10423
+ "pipelineEditor.jobsOne": "{count} tâche",
10424
+ "pipelineEditor.parallel": "En parallèle",
10425
+ "pipelineEditor.sequential": "Séquentiel",
10426
+ "pipelineEditor.stage": "Étape : {name}",
10427
+ "pipelineEditor.addJob": "+ Ajouter une tâche",
10428
+ "pipelineEditor.steps": "{steps} étapes",
10429
+ "pipelineEditor.job": "Tâche : {name}",
10430
+ "pipelineEditor.addStep": "+ Ajouter une étape",
10431
+ "pipelineEditor.protected": " (protégée)",
10432
+ "pipelineEditor.runOnPushToBranch": "Exécuter lors d'un push sur la branche",
10433
+ "pipelineEditor.runOnPrMr": "Exécuter sur PR/MR",
10434
+ "pipelineEditor.runOnScheduleCron": "Exécuter selon un planning (cron)",
10435
+ "pipelineEditor.manualTriggerOnly": "Déclenchement manuel uniquement",
10436
+ "pipelineEditor.runOnTagPush": "Exécuter lors d'un push de tag",
10437
+ "pipelineEditor.apiUiTrigger": "Déclencheur API/UI",
10438
+ "pipelineEditor.variablesSecrets": "Variables et secrets",
10439
+ "pipelineEditor.addVariable": "+ Ajouter une variable",
10440
+ "pipelineEditor.secret": "Secret",
10441
+ "pipelineEditor.variable": "Variable",
10442
+ "pipelineMonitor.started": "Démarré : {time}",
10443
+ "pipelineMonitor.completed2": "Terminé : {time}",
10444
+ "pipelineMonitor.duration": "Durée : {duration}",
10445
+ "dataBranchGraph.snapshots": "{sortedCommits} instantanés",
10446
+ "dataBranchGraph.by": "par {name} •",
10447
+ "dataBranchGraph.snapshot": "Instantané",
10448
+ "dataBranchGraph.merge": "Fusion",
10449
+ "dataBranchGraph.change": "Modification",
10450
+ "dataBranchManager.tenantEnvironments": "Locataire : {tenant} • {branches} environnements",
10451
+ "dataBranchManager.newEnvironment": "+ Nouvel environnement",
10452
+ "dataBranchManager.branchesMany": "{envBranches} branches",
10453
+ "dataBranchManager.branchesOne": "{envBranches} branche",
10454
+ "dataBranchManager.records": "{records} enregistrements • {bytes}",
10455
+ "dataBranchManager.records2": "Enregistrements",
10456
+ "dataBranchManager.size": "Taille",
10457
+ "dataBranchManager.tables": "Tables",
10458
+ "dataBranchManager.status": "Statut",
10459
+ "dataBranchManager.unknown": "Inconnu",
10460
+ "dataBranchManager.includedTables": "Tables incluses ({tables})",
10461
+ "dataBranchManager.production": "Production",
10462
+ "dataBranchManager.selectTablesSelected": "Sélectionner des tables ({selectedTables} sélectionnées)",
10463
+ "dataBranchManager.rows": "{recordCount} lignes",
10464
+ "dataBranchManager.blockDirectChangesRequireMerge": "Bloquer les modifications directes (fusion requise)",
10465
+ "dataConflictResolver.resolved2": "Résolus :",
10466
+ "dataConflictResolver.sourceModifiedBy": "Source modifiée : {sourceModifiedAt} par {sourceModifiedBy}",
10467
+ "dataConflictResolver.targetModifiedBy": "Cible modifiée : {targetModifiedAt} par {targetModifiedBy}",
10468
+ "dataConflictResolver.suggestion": "Suggestion :",
10469
+ "dataConflictResolver.applyToAllFields": "Appliquer à tous les champs :",
10470
+ "dataConflictResolver.customValue": "Valeur personnalisée :",
10471
+ "dataConflictResolver.using": "Utilisé : {value}",
10472
+ "dataConflictResolver.enterCustom": "Saisir une valeur...",
10473
+ "dataConflictResolver.fields": "{fields} champs • {label}",
10474
+ "dataConflictResolver.finishResolved": "Terminer ({resolvedCount} résolus)",
10475
+ "dataDiffViewer.tables2": "Tables :",
10476
+ "dataDiffViewer.added": "+{added} ajoutés",
10477
+ "dataDiffViewer.modified": "~{modified} modifiés",
10478
+ "dataDiffViewer.deleted": "-{deleted} supprimés",
10479
+ "dataDiffViewer.tables": "Tables ({filteredTables})",
10480
+ "dataDiffViewer.fieldsMany": "{fields} champs",
10481
+ "dataDiffViewer.fieldsOne": "{fields} champ",
10482
+ "dataDiffViewer.unknown": "Inconnu",
10483
+ "dataMergeBuilder.records": "{records} enregistrements",
10484
+ "dataMergeBuilder.selectTablesToMerge": "Sélectionner les tables à fusionner ({selectedTables} / {tables})",
10485
+ "dataMergeBuilder.resolveConflictsRemaining": "Résoudre les conflits ({unresolvedConflicts} restants)",
10486
+ "dataMergeBuilder.applyToAllConflicts": "Appliquer à tous les conflits :",
10487
+ "dataMergeBuilder.record": "Enregistrement : {recordId} • {type}",
10488
+ "dataMergeBuilder.source": "Source ({displayName})",
10489
+ "dataMergeBuilder.target": "Cible ({displayName})",
10490
+ "dataMergeBuilder.dryRunPreviewOnly": "Simulation (aperçu uniquement)",
10491
+ "dataMergeBuilder.scheduleMergeOptional": "Planifier la fusion (facultatif)",
10492
+ "dataMergeBuilder.yes": "Oui",
10493
+ "dataMergeBuilder.no": "Non",
10494
+ "dataMergeBuilder.dryRun": "Simulation",
10495
+ "dataMergeBuilder.applyChanges": "Appliquer les modifications",
10496
+ "dataMergeBuilder.targetEnvironmentIsProtectedAnd": "L'environnement cible est protégé et peut nécessiter une approbation.",
10497
+ "dataSnapshot.snapshots2": "instantanés",
10498
+ "dataSnapshot.total": "au total",
10499
+ "dataSnapshot.selected": "{selectedSnapshots} sélectionnés",
10500
+ "dataSnapshot.by": "par {name}",
10501
+ "dataSnapshot.records": "{records} enregistrements",
10502
+ "dataSnapshot.tables": "{tables} tables",
10503
+ "dataSnapshot.expires": "Expire le : {expiresAt}",
10504
+ "dataSnapshot.keepSnapshots": "{cron} • Conserver {retainCount} instantanés",
10505
+ "dataSnapshot.next": "Prochaine : {nextRun}",
10506
+ "dataSnapshot.last": "Dernière : {relativeTime}",
10507
+ "dataSnapshot.addSchedule": "+ Ajouter un planning",
10508
+ "dataSnapshot.maximumAgeDays": "Âge maximal (jours)",
10509
+ "dataSnapshot.snapshot": "Instantané {date}",
10510
+ "dataSnapshot.descriptionOptional": "Description (facultatif)",
10511
+ // ── ui: editors, no-code, data (1.2.2 B) ──
10512
+ "form.submit": "Envoyer",
10513
+ "form.reset": "Réinitialiser",
10514
+ "form.cancel": "Annuler",
10515
+ "invoice.vat": "TVA {rate} % :",
10516
+ "keyValueEditor.key": "Clé",
10517
+ "keyValueEditor.value": "Valeur",
10518
+ "keyValueEditor.add": "Ajouter",
10519
+ "keyValueEditor.duplicateKey": "Clé en double",
10520
+ "keyValueEditor.secretClickToRevealAs": "Secret (cliquez pour afficher en clair)",
10521
+ "keyValueEditor.markAsSecret": "Marquer comme secret",
10522
+ "otpInput.oneTimePasswordDigits": "Mot de passe à usage unique, {value} chiffres",
10523
+ "otpInput.digitOf": "Chiffre {i} sur {value}",
10524
+ "rate.rate": "Note {i}",
10525
+ "shortcuts.previous": "Précédent : {navLabel}",
10526
+ "shortcuts.showMonthPicker": "Afficher le sélecteur de mois",
10527
+ "shortcuts.showYearPicker": "Afficher le sélecteur d'année",
10528
+ "shortcuts.next": "Suivant : {navLabel}",
10529
+ "colorPalette.contrastAnalysisWcag21": "Analyse du contraste (WCAG 2.1)",
10530
+ "colorPalette.vs": "vs",
10531
+ "colorPalette.add": "Ajouter",
10532
+ "colorPalette.tintsShades": "Teintes et nuances",
10533
+ "colorPalette.use": "Utiliser",
10534
+ "colorPalette.delete": "Supprimer {name}",
10535
+ "colorPalette.saveCurrentAsScheme": "+ Enregistrer comme schéma",
10536
+ "colorPalette.presets": "Préréglages",
10537
+ "colorPalette.variations": "Variations",
10538
+ "colorPalette.info": "Infos",
10539
+ "colorPalette.schemes": "Schémas",
10540
+ "colorPalette.distance": "Distance : {dist}°",
10541
+ "controls.angle": "Angle : {angle}°",
10542
+ "controls.shape": "Forme :",
10543
+ "controls.center": "Centre : {positionX} %, {positionY} %",
10544
+ "controls.startAngle": "Angle de départ : {angle}°",
10545
+ "controls.editor": "Éditeur",
10546
+ "controls.presets": "Préréglages",
10547
+ "pickerCommons.flag": "Drapeau {upper}",
10548
+ "pickerCommons.flag2": "Drapeau {code}",
10549
+ "codeEditor.failedToLoadEditor": "Impossible de charger l'éditeur",
10550
+ "codeEditor.lnCol": "Ligne {lineNumber}, col. {column}",
10551
+ "codeEditor.selected": "({selectionText} sélectionnés)",
10552
+ "codeEditor.linesChars": "{lineCount} lignes · {charCount} caractères",
10553
+ "codeEditor.failedToLoadDiffEditor": "Impossible de charger l'éditeur de différences",
10554
+ "codeEditorAI.ai": "IA",
10555
+ "codeEditorAI.tab": "Tab : {accept}",
10556
+ "docEditor.bullets": "Puces",
10557
+ "docEditor.numbers": "Numérotation",
10558
+ "docEditor.checklist": "Liste de contrôle",
10559
+ "docEditor.unlock": "Déverrouiller",
10560
+ "docEditor.lock2": "Verrouiller",
10561
+ "htmlEditor.all": "Tout",
10562
+ "htmlEditor.words": "{wordCount} mots",
10563
+ "htmlEditor.chars": "{charCount} caractères",
10564
+ "htmlEditorAI.ai": "IA",
10565
+ "logConsole.noOutput": "Aucune sortie",
10566
+ "logConsole.clear": "Effacer",
10567
+ "markdownEditor.words": "{words} mots",
10568
+ "markdownEditor.chars": "{chars} caractères",
10569
+ "markdownEditor.lines": "{lines} lignes",
10570
+ "scriptRunner.run": "Exécuter",
10571
+ "scriptRunner.ok": "OK",
10572
+ "scriptRunner.failed": "Échec",
10573
+ "scriptRunner.inputJson": "Entrée (JSON)",
10574
+ "cropEditor.showToolbar": "Afficher la barre d'outils",
10575
+ "cropEditor.hideToolbar": "Masquer la barre d'outils",
10576
+ "imageAnnotator.text": "Texte",
10577
+ "imageEditor.px": "{w}×{h}px · {rotation}°",
10578
+ "apiFlow.success": "Succès",
10579
+ "apiFlow.mockResponse": "Réponse simulée",
10580
+ "apiFlow.endpoints2": "POINTS DE TERMINAISON ({endpoints})",
10581
+ "apiFlow.addEndpoint2": "+ Ajouter un point de terminaison",
10582
+ "apiFlow.required": "obligatoire",
10583
+ "apiFlow.ttlSStrategy": "TTL : {ttl} s • Stratégie : {strategy}",
10584
+ "apiFlow.maxBackoff": "Max : {maxAttempts} • backoff {backoff}",
10585
+ "apiFlow.defaultTtlSeconds": "TTL par défaut (secondes)",
10586
+ "apiFlow.ok": "OK",
10587
+ "apiFlow.error": "Erreur",
10588
+ "apiFlow.selectHttpMethodForNew": "Choisissez la méthode HTTP du nouveau point de terminaison :",
10589
+ "codePreview.copy": "Copier",
10590
+ "codeTemplate.customTemplate": "Modèle personnalisé",
10591
+ "codeTemplate.new": "+ Nouveau",
10592
+ "codeTemplate.if": "(si : {condition})",
10593
+ "codeTemplate.fileSWillBeGenerated": "{generatedFiles} fichier(s) seront générés",
10594
+ "componentDesigner.required": "obligatoire",
10595
+ "dataMapper.source": "Source : {name}",
10596
+ "dataMapper.mappings": "Correspondances ({fieldMappings})",
10597
+ "dataMapper.default": "Par défaut : {defaultValue}",
10598
+ "dataMapper.target": "Cible : {name}",
10599
+ "dataMapper.addTransform": "+ Ajouter une transformation",
10600
+ "dataMapper.formatPattern": "Modèle de format",
10601
+ "dataMapper.separator": "Séparateur",
10602
+ "dataMapper.orYyyyMmDd": "{value} ou AAAA-MM-JJ",
10603
+ "dataMapper.addRule": "+ Ajouter une règle",
10604
+ "dataMapper.min": "Min.",
10605
+ "dataMapper.max": "Max.",
10606
+ "eventOrchestrator.handlersMany": "{handlers} gestionnaires",
10607
+ "eventOrchestrator.handlersOne": "{handlers} gestionnaire",
10608
+ "eventOrchestrator.add": "Ajouter",
10609
+ "pageBuilder.addRow": "+ Ajouter une ligne",
10610
+ "stateDesigner.fieldsActions": "{state} champs • {actions} actions",
10611
+ "stateDesigner.addSlice": "+ Ajouter une tranche",
10612
+ "stateDesigner.stateFields": "CHAMPS D'ÉTAT ({state})",
10613
+ "stateDesigner.add": "+ Ajouter",
10614
+ "stateDesigner.addAction": "+ Ajouter une action",
10615
+ "stateDesigner.reducerSteps": "{reducerSteps} étapes du reducer",
10616
+ "stateDesigner.memoized": "mémoïsé",
10617
+ "stateDesigner.enableImmutableStateUpdates": "Activer les mises à jour immuables de l'état",
10618
+ "stateDesigner.reduxDevtoolsIntegration": "Intégration de Redux DevTools",
10619
+ "stateDesigner.persistStateToStorage": "Conserver l'état dans le stockage",
10620
+ "testBuilder.testsSkipped": "{total} tests • {skipped} ignorés",
10621
+ "testBuilder.testsMany": "{componentName} • {tests} tests",
10622
+ "testBuilder.testsOne": "{componentName} • {tests} test",
10623
+ "testBuilder.add": "Ajouter",
10624
+ "testBuilder.stepsMany": "{steps} étapes",
10625
+ "testBuilder.stepsOne": "{steps} étape",
10626
+ "testBuilder.addTest": "+ Ajouter un test",
10627
+ "datagrid.selectRow": "Sélectionner la ligne {rowKey}",
10628
+ "dataGridAI.ai": "IA",
10629
+ "pagination.outOfStars": "{rating} sur {max} étoiles",
10630
+ "pivotGridFieldChooser.assignToArea": "Affecter {caption} à une zone",
10631
+ "pivotGridFieldChooser.remove": "Retirer {caption}",
10632
+ "reconciliationView.autoMatch": "Rapprochement auto",
10633
+ "reconciliationView.approveAll": "Tout approuver",
10634
+ "reconciliationView.clearAll": "Tout effacer",
10635
+ "reconciliationView.bankStatement": "Relevé bancaire",
10636
+ "reconciliationView.noStatementItems": "Aucune ligne de relevé",
10637
+ "reconciliationView.bookEntries": "Écritures comptables",
10638
+ "reconciliationView.noBookEntries": "Aucune écriture comptable",
10639
+ "reconciliationView.matched": "Rapprochés :",
10640
+ "reconciliationView.matchedAmount": "Montant rapproché :",
10641
+ "reconciliationView.unmatched": "Non rapprochés :",
10642
+ "reconciliationView.difference": "Différence :",
10643
+ "reconciliationView.transactionDetails": "Détails de la transaction",
10644
+ "reconciliationView.entryDetails": "Détails de l'écriture",
10645
+ "reconciliationView.matched2": "Rapproché",
10646
+ "reconciliationView.matchedConfidence": "{label} (confiance {confidence} %)",
10647
+ "reconciliationView.matchedAutomaticallyByAi": "Rapproché automatiquement par l'IA",
10648
+ "reconciliationView.matchedManually": "Rapproché manuellement",
10649
+ "reconciliationView.statement": "Relevé",
10650
+ "reconciliationView.bookEntry": "Écriture comptable",
10651
+ "reconciliationView.difference2": "Différence",
10652
+ "reconciliationView.transactionInformation": "Informations sur la transaction",
10653
+ "reconciliationView.entryInformation": "Informations sur l'écriture",
10654
+ "reconciliationView.date": "Date",
10655
+ "reconciliationView.description": "Description",
10656
+ "reconciliationView.amount": "Montant",
10657
+ "reconciliationView.counterparty": "Contrepartie",
10658
+ "reconciliationView.account": "Compte",
10659
+ "reconciliationView.party": "Partie",
10660
+ "reconciliationView.documentRef": "Réf. du document",
10661
+ "reconciliationView.reference": "Référence",
10662
+ "reconciliationView.matchedEntries": "Écritures rapprochées",
10663
+ "reconciliationView.matchedStatements": "Relevés rapprochés",
10664
+ "table.noData": "Aucune donnée",
10665
+ "controls.selectRow": "Sélectionner la ligne {key}",
10666
+ "controls.collapse": "Réduire",
10667
+ "controls.expand": "Développer",
10668
+ // ── ui: media, display, docs, charts, smart home, … (1.2.2 B) ──
10669
+ "mam.view": "Vue {mode}",
10670
+ "mam.newFolder": "+ Nouveau dossier",
10671
+ "mam.items": "{assetIds} éléments",
10672
+ "mam.newCollection": "+ Nouvelle collection",
10673
+ "mam.photos": "{assetCount} photos",
10674
+ "mam.addPerson": "+ Ajouter une personne",
10675
+ "mam.selected": "{selectedAssetIds} sélectionnés",
10676
+ "stream.rec": "REC",
10677
+ "transcoder.eta": "Temps restant : {duration}",
10678
+ "transcoder.createProfile": "+ Créer un profil",
10679
+ "transcoder.available": "Disponible",
10680
+ "transcoder.notAvailable": "Indisponible",
10681
+ "transcoder.total": "Total : {jobs}",
10682
+ "transcoder.completed": "Terminés : {completedCount}",
10683
+ "transcoder.failed": "Échecs : {failedCount}",
10684
+ "videoEditor.volume": "Volume ({volume} %)",
10685
+ "videoEditor.speedX": "Vitesse ({speed}x)",
10686
+ "videoEditor.opacity2": "Opacité ({opacity} %)",
10687
+ "videoEditor.track": "+ Piste",
10688
+ "videoEditor.preparing": "Préparation...",
10689
+ "videoEditor.encoding": "Encodage...",
10690
+ "videoEditor.exportComplete": "Export terminé !",
10691
+ "videoEditor.exportFailed": "Échec de l'export",
10692
+ "barcodeGenerator.barcode": "Code-barres : {encodedValue}",
10693
+ "deviceTile.fullConfiguration": "Configuration complète",
10694
+ "faq.all": "Toutes",
10695
+ "faq.related": "Associées :",
10696
+ "faq.yes": "Oui",
10697
+ "faq.no": "Non",
10698
+ "faq.thanksForYourFeedback": "Merci pour votre avis !",
10699
+ "faq.searchFrequentlyAskedQuestions": "Rechercher dans la FAQ...",
10700
+ "faq.noQuestionsFoundMatchingYour": "Aucune question ne correspond à votre recherche.",
10701
+ "gallery.goToImage": "Aller à l'image {i}",
10702
+ "gallery.showImage": "Afficher l'image {i}",
10703
+ "gamepad.gamepad": "Manette : {name}",
10704
+ "gamepad.gamepad2": "Manette",
10705
+ "gamepad.assignTo": "Affecter à « {armed} »…",
10706
+ "gamepad.clickAButtonThenA": "Cliquez sur un bouton, puis sur un nœud",
10707
+ "microphone.microphone": "Micro : {name}",
10708
+ "microphone.microphone2": "Micro",
10709
+ "notifications.unread": "{computedUnread} non lues",
10710
+ "qrCode.qrCode": "Code QR : {encodedValue}",
10711
+ "statistic.trendUp": "Hausse de {value} %",
10712
+ "statistic.trendDown": "Baisse de {value} %",
10713
+ "documentationViewer.required": "obligatoire",
10714
+ "documentationViewer.copy": "Copier",
10715
+ "documentationViewer.deprecated": "obsolète",
10716
+ "documentationViewer.default2": "Par défaut :",
10717
+ "documentationViewer.possibleValues": "{options} valeurs possibles",
10718
+ "documentationViewer.parameters": "Paramètres :",
10719
+ "documentationViewer.default": "Par défaut : « {defaultText} »",
10720
+ "documentationViewer.placeholders": "Espaces réservés : {placeholders}",
10721
+ "documentationViewer.preview": "Aperçu",
10722
+ "documentationViewer.edit": "Modifier",
10723
+ "documentationViewer.slotsRenderProps": "Slots / props de rendu",
10724
+ "documentationViewer.renderProps": "Props de rendu :",
10725
+ "documentationViewer.returns": "Renvoie : {returns}",
10726
+ "documentationViewer.overview": "Aperçu",
10727
+ "documentationViewer.props": "Props",
10728
+ "documentationViewer.events": "Événements",
10729
+ "documentationViewer.theming": "Thèmes",
10730
+ "documentationViewer.examples": "Exemples",
10731
+ "documentationViewer.lastUpdated": "Dernière mise à jour : {lastUpdated}",
10732
+ "charts.item": "Élément {i}",
10733
+ "bullet.error": "Erreur",
10734
+ "chartAI.bar": "Barres",
10735
+ "chartAI.line": "Lignes",
10736
+ "chartAI.area": "Aires",
10737
+ "chartAI.pie": "Secteurs",
10738
+ "chartAI.donut": "Anneau",
10739
+ "chartAI.scatter": "Nuage de points",
10740
+ "chartAI.ai": "IA",
10741
+ "forecastChart.noDataAvailable": "Aucune donnée disponible",
10742
+ "forecastChart.cashRunsOut": "Trésorerie épuisée",
10743
+ "forecastChart.ci": "IC",
10744
+ "organizationChart.expand": "Développer",
10745
+ "organizationChart.collapse": "Réduire",
10746
+ "queryBuilder.addTable2": "+ Ajouter une table",
10747
+ "queryBuilder.tablesColumns": "{tables} tables, {selectedColumnCount} colonnes",
10748
+ "queryBuilder.as": "comme {alias}",
10749
+ "queryBuilder.joins": "Jointures ({joins})",
10750
+ "queryBuilder.conditions": "Conditions ({conditions})",
10751
+ "queryBuilder.add": "+ Ajouter",
10752
+ "queryBuilder.orderBy": "Tri ({sorts})",
10753
+ "queryBuilder.columns": "{count} colonnes",
10754
+ "automationRuleEditor.and": "ET",
10755
+ "automationRuleEditor.or": "OU",
10756
+ "automationRuleEditor.scene": "-- scène --",
10757
+ "automationRuleEditor.seconds": "Secondes :",
10758
+ "smartHome.battery": "Batterie : {level} %",
10759
+ "smartHome.open2": "Ouverture : {position} %",
10760
+ "smartHome.online": "En ligne",
10761
+ "smartHome.offline": "Hors ligne",
10762
+ "roomGrid.room": "Pièce : {name}",
10763
+ "presence.isEditing": "{name} modifie",
10764
+ "presence.editing": "{focusedUsers} en modification",
10765
+ "presence.user": "Utilisateur {name}",
10766
+ "presence.editing2": "Modifie : {focusedOn}",
10767
+ "presence.online": "En ligne ({online})",
10768
+ "presence.away": "Absent ({away})",
10769
+ "presence.busy": "Occupé ({busy})",
10770
+ "gantt.task": "Tâche",
10771
+ "recipe.photo": "Photo",
10772
+ "recipe.kcal": "{label} : {value} kcal",
10773
+ "recipe.mg": "{label} : {value} mg",
10774
+ "recipe.min": "{total} min",
10775
+ "planning.status": "Statut :",
10776
+ "service.event": "Événement {title}",
10777
+ "backup.lastRun": "Dernière exécution : {lastRunAt}",
10778
+ "backup.noCompression": "Sans compression",
10779
+ "backup.fastCompression": "Compression rapide",
10780
+ "backup.normalCompression": "Compression normale",
10781
+ "backup.maximumCompression": "Compression maximale",
10782
+ "backup.auto": "auto",
10783
+ "appLayout.openSidebar": "Ouvrir la barre latérale",
10784
+ "appLayout.closeSidebar": "Fermer la barre latérale",
10785
+ "menu.menu": "Menu",
10786
+ "navShell.unpin": "Désépingler",
10787
+ "navShell.pin": "Épingler",
10788
+ "pagination.goTo": "Aller à",
10789
+ "notifications.quietHours2": "Heures calmes",
10790
+ "notifications.from": "De :",
10791
+ "notifications.to": "À :",
10792
+ "controls.exitFullscreen": "Quitter le plein écran",
10793
+ "controls.fullscreen": "Plein écran",
10794
+ "retryPanel.retry": "Réessayer",
10795
+ "networkDiscovery.scanning": "Analyse…",
10796
+ "networkDiscovery.os": "OS",
10797
+ "workflowDesigner.slaHH": "SLA : {warningHours} h / {criticalHours} h",
10798
+ "workflowDesigner.sla": "SLA",
10799
+ "overlays.cancel": "Annuler",
10800
+ "overlays.actions": "Actions",
10801
+ "logo.brand": "Marque",
10802
+ "devTools.quickPreviewOf": "Aperçu rapide de {componentName}",
10803
+ // ── Returned labels (1.2.2 B) ──
10804
+ "presence.justNow": "À l'instant",
10805
+ "dataBranchGraph.today": "Aujourd'hui",
10806
+ "dataBranchGraph.yesterday": "Hier",
10807
+ "branchManager.today": "Aujourd'hui",
10808
+ "branchManager.yesterday": "Hier",
10809
+ "gitGraph.today": "Aujourd'hui",
10810
+ "gitGraph.yesterday": "Hier",
10811
+ "taskManager.tomorrow": "Demain",
10812
+ "audioPitch.unknownError": "Erreur inconnue",
10813
+ "pullToRefresh.pullDownToRefresh": "Tirez vers le bas pour actualiser",
10814
+ "pullToRefresh.releaseToRefresh": "Relâchez pour actualiser",
10815
+ "pullToRefresh.refreshing": "Actualisation...",
10816
+ "pullToRefresh.updated": "Mis à jour !",
10817
+ "pullToRefresh.failedToRefresh": "Échec de l'actualisation",
10818
+ "buildings.connectionStatus.active": "Active",
10819
+ "buildings.connectionStatus.degraded": "Dégradée",
10820
+ "buildings.connectionStatus.inactive": "Inactive",
10821
+ "buildings.connectionStatus.error": "Erreur",
10822
+ "buildings.connectionStatus.unknown": "Inconnu",
10823
+ // ── Keyboard and gamepad input (1.3.0) ──
10824
+ "input.intent.navigate": "Déplacer",
10825
+ "input.intent.activate": "Sélectionner",
10826
+ "input.intent.back": "Retour",
10827
+ "input.intent.secondary": "Options",
10828
+ "input.intent.tertiary": "Plus",
10829
+ "input.intent.menu": "Menu",
10830
+ "input.intent.view": "Changer de zone",
10831
+ "input.intent.sectionPrev": "Section précédente",
10832
+ "input.intent.sectionNext": "Section suivante",
10833
+ "input.intent.pagePrev": "Page précédente",
10834
+ "input.intent.pageNext": "Page suivante",
10835
+ "input.intent.first": "Premier",
10836
+ "input.intent.last": "Dernier",
10837
+ "input.intent.scroll": "Défiler",
10838
+ "input.intent.toggleHints": "Afficher ou masquer les aides",
10839
+ "input.engaged": "Modification",
10840
+ "input.released": "Modification terminée",
10841
+ "input.hint.edit": "Modifier",
10842
+ "input.hint.done": "Terminé",
10843
+ "input.hint.close": "Fermer",
10844
+ "input.prompt.button": "Bouton {name}",
10845
+ "input.remote.ok": "OK",
10846
+ "input.pad.cross": "Croix",
10847
+ "input.pad.circle": "Rond",
10848
+ "input.pad.square": "Carré",
10849
+ "input.pad.triangle": "Triangle",
10850
+ "input.pad.minus": "Moins",
10851
+ "input.pad.plus": "Plus",
10852
+ "input.pad.leftStick": "Stick gauche",
10853
+ "input.pad.rightStick": "Stick droit",
10854
+ "input.pad.bottomButton": "Bouton du bas",
10855
+ "input.pad.rightButton": "Bouton de droite",
10856
+ "input.pad.leftButton": "Bouton de gauche",
10857
+ "input.pad.topButton": "Bouton du haut",
10858
+ "input.pad.leftBumper": "Gâchette haute gauche",
10859
+ "input.pad.rightBumper": "Gâchette haute droite",
10860
+ "input.pad.leftTrigger": "Gâchette gauche",
10861
+ "input.pad.rightTrigger": "Gâchette droite",
10862
+ "input.pad.dpad": "Croix directionnelle",
10863
+ "input.pad.dpadUp": "Croix haut",
10864
+ "input.pad.dpadDown": "Croix bas",
10865
+ "input.pad.dpadLeft": "Croix gauche",
10866
+ "input.pad.dpadRight": "Croix droite",
10867
+ "input.key.enter": "Entrée",
10868
+ "input.key.escape": "Échap",
10869
+ "input.key.space": "Espace",
10870
+ "input.key.tab": "Tab",
10871
+ "input.key.pageUp": "Page préc.",
10872
+ "input.key.pageDown": "Page suiv.",
10873
+ "input.key.home": "Début",
10874
+ "input.key.end": "Fin",
10875
+ "input.key.backspace": "Retour arrière",
10876
+ "input.key.delete": "Suppr",
10877
+ "input.key.contextMenu": "Touche Menu",
10878
+ "input.key.ctrl": "Ctrl",
10879
+ "input.key.alt": "Alt",
10880
+ "input.key.shift": "Maj",
10881
+ "input.key.arrowUp": "Flèche haut",
10882
+ "input.key.arrowDown": "Flèche bas",
10883
+ "input.key.arrowLeft": "Flèche gauche",
10884
+ "input.key.arrowRight": "Flèche droite",
10885
+ "input.key.command": "Commande",
10886
+ "input.key.option": "Option",
10887
+ "a11y.skipToMain": "Aller au contenu principal",
10888
+ "commandPalette.choose": "Choisir",
10889
+ "commandPalette.run": "Exécuter",
10890
+ // ── Input settings (1.3.0) ──
10891
+ "inputSettings.auto": "Automatique",
10892
+ "inputSettings.always": "Toujours",
10893
+ "inputSettings.never": "Jamais",
10894
+ "inputSettings.section.gamepad": "Manette",
10895
+ "inputSettings.section.hints": "Aide des boutons",
10896
+ "inputSettings.section.navigation": "Navigation",
10897
+ "inputSettings.section.bindings": "Boutons et touches",
10898
+ "inputSettings.confirmButton": "Valider avec",
10899
+ "inputSettings.glyphFamily": "Symboles des boutons",
10900
+ "inputSettings.family.generic": "Générique",
10901
+ "inputSettings.stickThreshold": "Inclinaison du stick pour se déplacer",
10902
+ "inputSettings.repeatDelay": "Répéter après (ms)",
10903
+ "inputSettings.repeatInterval": "Répéter toutes les (ms)",
10904
+ "inputSettings.invertScroll": "Inverser le défilement avec le stick droit",
10905
+ "inputSettings.vibration": "Vibration",
10906
+ "inputSettings.hints": "Afficher l'aide",
10907
+ "inputSettings.hints.auto": "Avec clavier ou manette",
10908
+ "inputSettings.hintDensity": "Où",
10909
+ "inputSettings.density.bar": "Barre d'aide",
10910
+ "inputSettings.density.barAndControls": "Barre et contrôles",
10911
+ "inputSettings.arrowNavigation": "Flèches hors des listes",
10912
+ "inputSettings.arrows.auto": "Selon la zone",
10913
+ "inputSettings.arrows.spatial": "Déplacer le focus",
10914
+ "inputSettings.arrows.native": "Défiler",
10915
+ "inputSettings.onScreenKeyboard": "Clavier à l'écran",
10916
+ "inputSettings.osk.auto": "Avec une manette",
10917
+ "inputSettings.actionColumn": "Action",
10918
+ "inputSettings.gamepadColumn": "Manette",
10919
+ "inputSettings.keyboardColumn": "Clavier",
10920
+ "inputSettings.change": "Modifier",
10921
+ "inputSettings.reset": "Réinitialiser",
10922
+ "inputSettings.resetAll": "Réinitialiser toutes les affectations",
10923
+ "inputSettings.pressButton": "Appuyez sur un bouton…",
10924
+ "inputSettings.pressKey": "Appuyez sur une touche…",
10925
+ "inputSettings.cancel": "Annuler",
10926
+ "inputSettings.none": "Aucune",
10927
+ "navShell.region.top": "Barre supérieure",
10928
+ "navShell.region.sidebar": "Navigation",
10929
+ "navShell.region.tabs": "Onglets",
10930
+ "navShell.region.content": "Contenu",
10931
+ "appShell.region.menubar": "Barre de menus",
10932
+ "appShell.region.toolbar": "Barre d'outils",
10933
+ "appShell.region.bottom": "Panneau inférieur",
10934
+ "appShell.region.status": "Barre d'état",
10935
+ "nav.tabMoveLeft": "Déplacer à gauche",
10936
+ "nav.tabMoveRight": "Déplacer à droite",
10937
+ // ── Icon picker (1.3.0) ──
10938
+ "iconPicker.icons": "Icônes",
10939
+ // ── Permission matrix (1.3.0) ──
10940
+ "permissionMatrix.label": "Autorisations",
10941
+ // ── Range slider (1.3.0) ──
10942
+ "rangeSlider.min": "Minimum",
10943
+ "rangeSlider.max": "Maximum",
10944
+ // ── Toolbars (1.3.0) ──
10945
+ "pdfViewer.toolbar": "Outils PDF",
10946
+ "docEditor.toolbar": "Mise en forme",
10947
+ "imageEditor.toolbar": "Outils d'image",
10948
+ "fileManager.toolbar": "Outils du gestionnaire de fichiers",
10949
+ // ── Spatial labels (1.3.0 L5) ──
10950
+ "buildings.spatial.connectionsLabel": "Connexions",
10951
+ // ── Audio editor: project CRUD, auto-save ──
10952
+ "useProjectCRUD.section": "Section",
10953
+ "useProjectCRUD.deleteSectionConfirm": "Supprimer cette section ?",
10954
+ "useProjectCRUD.newLayer": "Nouveau calque",
10955
+ "useProjectCRUD.layerLocked": "Le calque est verrouillé. Déverrouillez-le pour le supprimer.",
10956
+ "useProjectCRUD.deleteLayerConfirm": "Supprimer ce calque ?",
10957
+ "useProjectCRUD.volumeNotNumber": "Le volume doit être un nombre",
10958
+ "useProjectCRUD.projectNameEmpty": "Le nom du projet ne peut pas être vide",
10959
+ "useProjectCRUD.projectSaved": "Projet enregistré",
10960
+ "useProjectCRUD.sectionNameEmpty": "Le nom de la section ne peut pas être vide",
10961
+ "useProjectCRUD.orderNotNumber": "L'ordre doit être un nombre",
10962
+ "useProjectCRUD.sectionSaved": "Section enregistrée",
10963
+ "useAutoSave.autoSaveError": "Erreur d'enregistrement automatique :",
10964
+ // ── Input layer: engaged controls, number fields ──
10965
+ "input.hint.confirm": "Valider",
10966
+ "input.hint.adjust": "Ajuster",
10967
+ "input.hint.cancel": "Annuler",
10968
+ "shortcuts.toMinimum": "Régler au minimum",
10969
+ "shortcuts.toMaximum": "Régler au maximum",
10970
+ // ── Toasts: region and dismissing ──
10971
+ "toast.region": "Notifications",
10972
+ "toast.dismiss": "Ignorer",
10973
+ // ── Composites: accordion, wizard, carousel, gallery, pagination ──
10974
+ "faq.expandGroup": "Déplier",
10975
+ "faq.collapseGroup": "Replier",
10976
+ "wizard.previousStep": "Étape précédente",
10977
+ "wizard.nextStep": "Étape suivante",
10978
+ "wizard.progress": "Progression",
10979
+ "carousel.startRotation": "Démarrer le diaporama automatique",
10980
+ "carousel.stopRotation": "Arrêter le diaporama automatique",
10981
+ "gallery.thumbnails": "Miniatures",
10982
+ "pagination.page": "Page {page}",
10983
+ // ── Composites: colour pickers ──
10984
+ "colorPicker.saturation": "Saturation",
10985
+ "colorPicker.lightness": "Luminosité",
10986
+ "colorPicker.brightness": "Brillance",
10987
+ "colorPicker.red": "Rouge",
10988
+ "colorPicker.green": "Vert",
10989
+ "colorPicker.blue": "Bleu",
10990
+ "colorPicker.presets": "Couleurs prédéfinies",
10991
+ "gradient.angle": "Angle",
10992
+ "gradient.centerX": "Centre horizontal",
10993
+ "gradient.centerY": "Centre vertical",
10994
+ "gradient.startAngle": "Angle de départ",
10995
+ "gradient.stop": "Arrêt {n}",
10996
+ "gradient.stopColor": "Couleur de l'arrêt",
10997
+ "gradient.stopHex": "Couleur de l'arrêt (hex)",
10998
+ "gradient.stopPosition": "Position de l'arrêt",
10999
+ "gradient.importCss": "Dégradé CSS à importer",
11000
+ "colorPalette.baseHue": "Teinte de base",
11001
+ "colorPalette.colorN": "Couleur {n}",
11002
+ "colorPalette.distanceLabel": "Écart",
11003
+ // ── On-screen keyboard (NiceOnScreenKeyboard) ──
11004
+ "osk.label": "Clavier à l'écran",
11005
+ "osk.type": "Saisir",
11006
+ "osk.delete": "Effacer",
11007
+ "osk.cursor": "Curseur",
11008
+ "osk.layout": "Disposition",
11009
+ "osk.done": "Terminé",
11010
+ "osk.close": "Fermer",
11011
+ "osk.newLine": "Nouvelle ligne",
11012
+ "osk.shift": "Maj",
11013
+ "osk.letters": "Lettres",
11014
+ "osk.symbols": "Symboles",
11015
+ "osk.cursorLeft": "Curseur à gauche",
11016
+ "osk.cursorRight": "Curseur à droite",
11017
+ "osk.search": "Rechercher",
11018
+ "osk.send": "Envoyer",
11019
+ "osk.go": "Aller",
11020
+ "osk.next": "Suivant",
11021
+ // ── Timeline events ──
11022
+ "timeline.events": "Événements",
11023
+ // ── MDI workspace: tab menu and switching ──
11024
+ "wm.moveLeft": "Déplacer à gauche",
11025
+ "wm.moveRight": "Déplacer à droite",
11026
+ "wm.previousTab": "Onglet précédent",
11027
+ "wm.nextTab": "Onglet suivant",
11028
+ "wm.tabMenu": "Menu de l'onglet",
11029
+ // ── Editors: leaving with Escape, then Tab ──
11030
+ "input.tabEscapeHint": "Tab indente. Pour quitter l'éditeur, appuyez sur Échap, puis sur Tab.",
11031
+ "docEditor.leaveEditor": "Quitter l'éditeur",
11032
+ // ── Workflow designer ──
11033
+ "workflowDesigner.closeProps": "Fermer les propriétés"
7978
11034
  };
7979
11035
  export {
7980
11036
  e as default