All files / src/locales fr.ts

100% Statements 1/1
100% Branches 0/0
100% Functions 0/0
100% Lines 1/1

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354          24x                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
/**
 * French translations for UI
 */
import type { UITranslations } from './en'
 
export const fr: UITranslations = {
  apiKeys: {
    allPublicEntities: 'Toutes les entités publiques',
    allowedEntities: 'Entités autorisées',
    allowedEntitiesHelp:
      "Un ID d'entité par ligne. Laissez vide pour autoriser l'accès à toutes les entités.",
    allowedEntitiesPlaceholder: 'entity-uuid-1\nentity-uuid-2\n...',
    apiKeysDescription:
      "Les clés API permettent aux applications externes d'accéder à vos données de manière programmatique. Gardez-les sécurisées et ne les partagez jamais publiquement.",
    create: 'Créer une clé API',
    createFirstApiKey: 'Créez votre première clé API pour commencer.',
    created: 'Créée',
    createNew: 'Créer une clé API',
    entities: 'entités',
    entity: 'entité',
    expires: 'Expire',
    expiresAt: "Date d'expiration",
    expiresAtHelp: 'Optionnel. Laissez vide pour aucune expiration.',
    importantWarning: 'Important !',
    keyCreated: 'Clé API créée !',
    keyName: 'Nom de la clé',
    name: 'Nom',
    nameHelp: 'Un nom descriptif pour identifier cette clé API.',
    namePlaceholder: 'ex. API Key de Mon Application',
    never: 'Jamais',
    noApiKeys: 'Aucune clé API',
    permissionEntitiesRead: 'Lire les entités',
    permissionItemsRead: 'Lire les items',
    permissions: 'Permissions',
    permissionsHelp: 'Sélectionnez au moins une permission.',
    revoke: 'Révoquer',
    revokeConfirmMessage: 'Êtes-vous sûr de vouloir révoquer la clé API "{name}" ?',
    revokeConfirmTitle: 'Révoquer la clé API',
    revokeError: 'Échec de la révocation de la clé API. Veuillez réessayer.',
    revokeWarning:
      "Cette action est irréversible. Les applications utilisant cette clé perdront l'accès.",
    saveKeyWarning:
      "C'est la seule fois que vous verrez cette clé. Copiez-la maintenant et conservez-la en sécurité.",
    status: 'Statut',
    revoked: 'Révoquée',
    status_active: 'Active',
    status_expired: 'Expirée',
    status_revoked: 'Révoquée',
    usageExample: "Exemple d'utilisation",
    whatAreApiKeys: "Qu'est-ce qu'une clé API ?",
    yourApiKey: 'Votre clé API'
  },
 
  auth: {
    alreadyHaveAccount: 'Vous avez déjà un compte ?',
    alreadyMember: 'Déjà membre ?',
    backToLogin: 'Retour à la connexion',
    confirm: 'Confirmer',
    confirmationCode: 'Code de confirmation',
    confirmNewPassword: 'Confirmer le nouveau mot de passe',
    confirmNewPasswordPlaceholder: 'Confirmez votre nouveau mot de passe',
    createFreeAccount: 'Créer un compte gratuit',
    email: 'Email',
    emailPlaceholder: 'Entrez votre adresse email',
    enterNewPassword: 'Entrer un nouveau mot de passe',
    expiredVerificationCode: 'Le code de vérification a expiré. Veuillez en demander un nouveau.',
    forgotPassword: 'Mot de passe oublié ?',
    forgotPasswordSubtitle: 'Réinitialisez votre mot de passe en toute sécurité',
    forgotPasswordTitle: 'Récupération de mot de passe',
    fullName: 'Nom complet',
    hidePassword: 'Masquer le mot de passe',
    invalidVerificationCode: 'Code de vérification invalide. Veuillez vérifier et réessayer.',
    newPassword: 'Nouveau mot de passe',
    newPasswordPlaceholder: 'Entrez votre nouveau mot de passe',
    newToFlows: 'Nouveau sur Flows ?',
    or: 'Ou',
    password: 'Mot de passe',
    passwordRequirements:
      'Au moins 8 caractères avec majuscule, minuscule, chiffre et caractère spécial',
    passwordRequirementsNotMet: 'Le mot de passe ne respecte pas les exigences de sécurité',
    passwordsDoNotMatch: 'Les mots de passe ne correspondent pas',
    pleaseCheckEmail: 'Veuillez vérifier votre email pour le code de confirmation',
    presentationSubtitleLogin: 'Créez des entités et gérez vos données',
    presentationSubtitleSignup: 'Gérez vos données efficacement',
    presentationTitleLogin: 'Gestion de données simplifiée',
    presentationTitleSignup: "Rejoignez des milliers d'équipes",
    resendCode: 'Renvoyer le code',
    resetCodeError: "Échec de l'envoi du code de réinitialisation. Veuillez réessayer.",
    resetCodeResent: 'Le code de réinitialisation a été renvoyé à votre email.',
    resetCodeSent: 'Code de réinitialisation envoyé ! Veuillez vérifier votre email.',
    resetCodeSentTo: 'Nous avons envoyé un code de vérification à {email}',
    resetPassword: 'Réinitialiser le mot de passe',
    resetPasswordError: 'Échec de la réinitialisation du mot de passe. Veuillez réessayer.',
    resetPasswordInstructions:
      'Entrez votre adresse email et nous vous enverrons un code pour réinitialiser votre mot de passe.',
    resetPasswordSuccess:
      'Votre mot de passe a été réinitialisé avec succès. Vous pouvez maintenant vous connecter avec votre nouveau mot de passe.',
    sendResetCode: 'Envoyer le code de réinitialisation',
    showPassword: 'Afficher le mot de passe',
    signIn: 'Se connecter',
    signInWithFacebook: 'Se connecter avec Facebook',
    signInWithGoogle: 'Se connecter avec Google',
    signUp: "S'inscrire",
    tryItFree: 'Essayer gratuitement',
    verificationCode: 'Code de vérification',
    verificationCodePlaceholder: 'Entrez le code à 6 chiffres'
  },
 
  common: {
    accessDenied: 'Accès refusé',
    actions: 'Actions',
    backTo: 'Retour à {name}',
    backToHome: "Retour à l'accueil",
    cancel: 'Annuler',
    chooseFile: 'Choisir un fichier',
    clickToEdit: 'Cliquez pour modifier',
    close: 'Fermer',
    copied: 'Copié !',
    confirmClearAll:
      'Êtes-vous sûr de vouloir supprimer TOUS les éléments ? Cela supprimera également toutes les images associées du stockage. Cette action ne peut pas être annulée.',
    confirmDecline: 'Êtes-vous sûr de vouloir refuser cette invitation ?',
    confirmDelete: 'Êtes-vous sûr de vouloir supprimer cet(te) {item} ?',
    confirmDeleteEntity: 'Êtes-vous sûr de vouloir supprimer cette entité ?',
    confirmDeleteItem: 'Êtes-vous sûr de vouloir supprimer cet élément ?',
    confirmDeleteRole: 'Êtes-vous sûr de vouloir supprimer le rôle "{name}" ?',
    confirmLeave: 'Êtes-vous sûr de vouloir quitter ce tenant ?',
    confirmRemove: 'Êtes-vous sûr de vouloir retirer {name} ?',
    copy: 'Copier',
    create: 'Créer',
    creating: 'Création...',
    delete: 'Supprimer',
    done: 'Terminé',
    doubleClickToEdit: 'Double-cliquez pour modifier',
    edit: 'Modifier',
    error: 'Erreur',
    filters: 'Filtres',
    loading: 'Chargement...',
    maxImages: 'Max {count} images',
    no: 'Non',
    noFileChosen: 'Aucun fichier choisi',
    noImage: 'Aucune image',
    noResults: 'Aucun résultat',
    readOnlyField: 'Champ en lecture seule',
    save: 'Enregistrer',
    saving: 'Enregistrement...',
    search: 'Rechercher',
    select: 'Sélectionner',
    sending: 'Envoi...',
    success: 'Succès',
    update: 'Mettre à jour',
    uploading: 'Téléchargement...',
    yes: 'Oui'
  },
 
  entity: {
    created: 'Créé',
    createNew: 'Créer une nouvelle entité',
    deleteEntity: "Supprimer l'entité",
    description: 'Description',
    details: 'Détails',
    editEntity: "Modifier l'entité",
    entityName: "Nom de l'entité",
    fields: 'Champs',
    forms: 'Formulaires',
    icon: 'Icône',
    iconOptional: 'Icône (optionnelle)',
    moreFields: '+{count} de plus',
    noEntities: "Aucune entité pour l'instant. Créez-en une ci-dessus !",
    noFieldsDefined: 'Aucun champ défini',
    picture: 'Image',
    pictureOptional: 'Image (optionnelle)',
    placeholderDescription: 'Une brève description de cette entité...',
    placeholderName: 'Produits, Clients, etc.',
    viewItems: 'Voir les éléments',
    visibility: 'Visibilité',
    visibilityAccessibleViaRoles: 'Accessible via les rôles généraux',
    visibilityFlowMembers: 'Membres du flow (par défaut)',
    visibilityMembers: 'Membres',
    visibilityPublic: 'Public',
    visibilityRestricted: 'Restreint',
    visibilityTooltipMembers: 'Membres du flow',
    visibilityTooltipPublic: 'Accessible inter-tenant',
    visibilityTooltipRestricted: 'Nécessite des permissions spécifiques'
  },
 
  field: {
    addField: 'Ajouter un champ',
    boolean: 'Booléen',
    date: 'Date',
    email: 'Email',
    image: 'Image',
    imageSet: 'Images multiples',
    image_set: 'Images multiples',
    mandatory: 'Obligatoire',
    maxLength: 'Longueur max',
    number: 'Nombre',
    optionsCommaSeparated: 'Options (séparées par des virgules)',
    placeholder: 'Espace réservé',
    placeholderFieldName: 'Nom du champ',
    select: 'Sélection',
    seeBelow: 'Voir ci-dessous',
    text: 'Texte',
    textarea: 'Zone de texte',
    workflow: 'Flux de travail'
  },
 
  flow: {
    activeFlow: 'Flow actif',
    createNew: 'Créer un nouveau flow',
    currentFlow: 'Flow actuel',
    currentlyActive: '✓ Actuellement actif',
    editFlow: 'Modifier le flow',
    flowName: 'Nom du flow',
    goToFlows: 'Aller aux flows',
    identifier: 'Identifiant',
    identifierCannotBeChanged: "L'identifiant ne peut pas être modifié",
    identifierForUrl: "Identifiant (pour l'URL)",
    lowercaseOnly: 'Lettres minuscules, chiffres et tirets uniquement',
    noActiveFlow: 'Aucun flow actif',
    noFlows: "Aucun flow pour l'instant. Créez-en un pour commencer !",
    owner: 'Propriétaire',
    placeholderIdentifier: 'acme-company',
    placeholderName: 'Acme Inc.',
    pleaseEnableLanguage: "Veuillez activer au moins une langue d'abord",
    selectFlowFirst: "Vous devez d'abord sélectionner un flow.",
    switchTo: 'Basculer vers',
    switchToThisFlow: 'Basculer vers ce flow'
  },
 
  home: {
    currentFlow: 'Flow actuel',
    quickActions: 'Actions rapides',
    welcome: 'Bienvenue'
  },
 
  invitation: {
    noPending: 'Aucune invitation en attente',
    pending: 'Invitations en attente'
  },
 
  item: {
    clearAll: 'Vider tous les éléments',
    clearAllSuccess:
      'Tous les éléments ont été supprimés avec succès. {deletedItems} éléments et {deletedImages} images supprimés.',
    createItem: "Créer l'élément",
    createNew: 'Créer un nouvel élément',
    deleteItem: "Supprimer l'élément",
    editItem: "Modifier l'élément",
    noItems: "Aucun élément pour l'instant. Créez-en un ci-dessus !",
    updateItem: "Mettre à jour l'élément"
  },
 
  language: {
    defaultLanguage: 'Langue par défaut',
    editingLanguage: "Langue d'édition :",
    enabledLanguages: 'Langues activées'
  },
 
  member: {
    editRoles: 'Modifier les rôles',
    inviteMember: 'Inviter un membre',
    inviteUser: 'Inviter un utilisateur',
    joined: 'Rejoint le',
    label: 'Email',
    noMembers: "Aucun membre pour l'instant. Invitez quelqu'un pour commencer !",
    noRoles: 'Aucun rôle',
    remove: 'Retirer',
    roles: 'Rôles',
    rolesOptional: 'Rôles (optionnel)',
    searchUser: 'Rechercher un utilisateur',
    selected: 'Sélectionné :',
    sendInvitation: "Envoyer l'invitation",
    status: 'Statut',
    typeEmailOrName: 'Tapez un email ou un nom...'
  },
 
  navigation: {
    account: 'Compte',
    apiKeys: 'Clés API',
    dashboard: 'Tableau de bord',
    data: 'Données',
    entities: 'Entités',
    flows: 'Flows',
    flowsManagement: 'Gestion des Flows',
    invitations: 'Invitations',
    members: 'Membres',
    profile: 'Profil',
    roles: 'Rôles',
    signOut: 'Se déconnecter'
  },
 
  notFound: {
    message: "La page que vous recherchez n'existe pas ou a été déplacée.",
    title: 'Page introuvable'
  },
 
  profile: {
    accountInformation: 'Informations du compte',
    addLanguagesToStart: 'Ajoutez des langues pour commencer',
    availableLanguages: 'Langues disponibles',
    clickToAdd: 'Cliquez pour ajouter ou faites glisser vers les préférences',
    contentLanguageDescription:
      "Définissez l'ordre de vos langues préférées pour le contenu. Les données seront affichées dans la première langue disponible selon vos préférences.",
    contentLanguagePreferences: 'Préférences de langue',
    dragToReorder: 'Faites glisser pour réorganiser, cliquez × pour retirer',
    email: 'Email',
    name: 'Nom',
    noPreferencesSet: 'Aucune préférence définie',
    preferencesSaved: 'Préférences de langue enregistrées avec succès !',
    removeFromPreferences: 'Retirer des préférences',
    reset: 'Réinitialiser',
    resetMessage:
      'Réinitialisation aux préférences par défaut. Cliquez sur Enregistrer pour appliquer.',
    savePreferences: 'Enregistrer les préférences',
    title: 'Profil utilisateur',
    yourPreferenceOrder: 'Votre ordre de préférence'
  },
 
  role: {
    assignRoles: 'Assigner des rôles',
    createNew: 'Créer un nouveau rôle',
    editRole: 'Modifier le rôle',
    noRoles: "Aucun rôle pour l'instant. Créez-en un pour commencer !",
    placeholderDescription: 'Que peut faire ce rôle ?',
    placeholderName: 'ex. Éditeur, Lecteur',
    placeholderPermissions: 'entity-specific:read\nitems:custom:write'
  },
 
  schema: {
    alphabeticalSort: 'Tri alphabétique',
    configuration: 'Configuration',
    dragFieldsHere: 'Glissez les types de champs ici pour construire votre schéma',
    fieldName: 'Nom du champ',
    fields: 'Champs du schéma',
    fieldType: 'Type de champ',
    fieldTypes: 'Types de champs',
    maxImages: "Nombre maximum d'images",
    maxValue: 'Valeur maximale',
    minValue: 'Valeur minimale',
    oneOptionPerLine: 'Une option par ligne ou séparées par des virgules',
    selectFieldToConfig: 'Sélectionnez un champ pour le configurer',
    step: 'Pas',
    unnamedField: 'Champ sans nom',
    workflowDefinition: 'Définition du flux de travail'
  },
 
  workflow: {
    addState: 'Ajouter un état',
    deleteTransition: 'Supprimer la transition',
    label: 'Libellé',
    permissionOptional: 'Permission (optionnelle)'
  }
}