mirror of
https://github.com/andwati/zitadel.git
synced 2026-10-18 05:52:51 +00:00
**Supersedes #12471** by @conblem — same fix, rebased onto current `main` with conflicts resolved and review feedback applied. Original commits are preserved, all credit to @conblem. Closes #12252 ### Problem After an RP-initiated logout (`end_session` with `id_token_hint`), Login V2 redirected straight to `/loginname` instead of showing the account picker like Login V1. The `sessions` cookie still referenced the previous accounts, but their server-side sessions had been terminated, so `listSessions` returned nothing and the flow treated the browser as having no accounts at all. ### Solution - `handleOIDCFlowInitiation` now checks the `sessions` cookie (`hasCookieAccount`) when no live session is eligible for the request's organization. If the cookie still knows an account and the RP passed no `login_hint`, the user is sent to `/accounts` instead of `/loginname`. `prompt=none` is excluded since it must never render UI. - `/accounts` synthesizes an (invalid) `Session` for each cookie entry that has no live counterpart, so the account is still listed and a click re-authenticates via `/loginname` → password in one step. - `clearSession` prunes the cookie entry when the server reports the session as already gone (`NotFound` / `PermissionDenied`), so stale cards can be dismissed. Any other error is rethrown so a still-valid server session is never silently orphaned. - `getAllSessionCookieIds` is now a thin wrapper over `getAllSessions`; `FlowInitiationParams.sessionCookies` is typed as `Cookie[]`. - Tests: new `describe` block covering the cookie fallback, `login_hint` precedence, `prompt=none`, org-scope matching/mismatch, and `SELECT_ACCOUNT` / default prompt with live sessions filtered out by org. - Also adds `.claude/`, `.cursor/`, `.codex/`, `.windsurf/`, `.copilot/`, `.aider*` to `.gitignore`. --------- Co-authored-by: conblem <[email protected]>
464 lines
20 KiB
JSON
464 lines
20 KiB
JSON
{
|
|
"common": {
|
|
"back": "Retour",
|
|
"title": "Connexion avec Zitadel"
|
|
},
|
|
"accounts": {
|
|
"title": "Comptes",
|
|
"description": "Choisissez le compte que vous souhaitez utiliser.",
|
|
"addAnother": "Ajouter un nouveau compte",
|
|
"noResults": "Pas de compte trouvé",
|
|
"verified": "vérifié",
|
|
"expired": "expiré"
|
|
},
|
|
"logout": {
|
|
"title": "Déconnexion",
|
|
"description": "Cliquez sur un compte pour terminer la session",
|
|
"noResults": "Pas de compte trouvé",
|
|
"clear": "Fin de session",
|
|
"verifiedAt": "Dernière connexion: {time}",
|
|
"success": {
|
|
"title": "Déconnexion réussie",
|
|
"description": "Vous vous êtes déconnecté avec succès."
|
|
}
|
|
},
|
|
"loginname": {
|
|
"title": "Bienvenue!",
|
|
"description": "Entrez vos données de connexion.",
|
|
"register": "Enregistrer un nouveau compte",
|
|
"submit": "Continuer",
|
|
"labels": {
|
|
"loginname": "Identifiant",
|
|
"username": "Nom d'utilisateur",
|
|
"usernameOrPhoneNumber": "Nom d'utilisateur ou numéro de téléphone",
|
|
"usernameOrEmail": "Nom d'utilisateur ou e-mail"
|
|
},
|
|
"required": {
|
|
"loginName": "Ce champ est requis"
|
|
},
|
|
"errors": {
|
|
"internalError": "Une erreur interne s'est produite",
|
|
"couldNotGetLoginSettings": "Impossible d'obtenir les paramètres de connexion",
|
|
"couldNotSearchUsers": "Impossible de rechercher des utilisateurs",
|
|
"couldNotGetDomain": "Impossible d'obtenir le domaine",
|
|
"couldNotGetHost": "Impossible d'obtenir l'hôte",
|
|
"couldNotStartIDPFlow": "Impossible de démarrer le flux IDP",
|
|
"moreThanOneUserFound": "Plus d'un utilisateur trouvé. Fournissez un identifiant unique.",
|
|
"userNotFound": "Utilisateur non trouvé dans le système",
|
|
"couldNotCreateSession": "Impossible de créer une session pour l'utilisateur",
|
|
"initialUserNotSupported": "Utilisateur initial non pris en charge",
|
|
"localAuthenticationNotAllowed": "L'authentification locale n'est pas autorisée ! Contactez votre administrateur pour plus d'informations.",
|
|
"passkeysNotAllowed": "Les clés d'accès ne sont pas autorisées ! Contactez votre administrateur pour plus d'informations.",
|
|
"couldNotFindIdentityProvider": "Impossible de trouver le fournisseur d'identité.",
|
|
"userNotActive": "L'utilisateur n'est pas actif. Contactez votre administrateur pour plus d'informations."
|
|
}
|
|
},
|
|
"zitadel": {
|
|
"errors": {
|
|
"errorOccured": "Une erreur s'est produite",
|
|
"multipleUsersFound": "Plusieurs utilisateurs trouvés",
|
|
"userNotFound": "Utilisateur non trouvé dans le système"
|
|
}
|
|
},
|
|
"password": {
|
|
"verify": {
|
|
"title": "Mot de passe",
|
|
"description": "Entrez votre mot de passe.",
|
|
"resetPassword": "Réinitialiser mot de passe",
|
|
"submit": "Continuer",
|
|
"labels": {
|
|
"password": "Mot de passe"
|
|
},
|
|
"required": {
|
|
"password": "Ce champ est requis"
|
|
},
|
|
"errors": {
|
|
"couldNotVerifyPassword": "Impossible de vérifier le mot de passe",
|
|
"couldNotResetPassword": "Impossible de réinitialiser le mot de passe"
|
|
},
|
|
"info": {
|
|
"passwordResetSent": "Le mot de passe a été réinitialisé. Veuillez vérifier vos e-mails."
|
|
}
|
|
},
|
|
"set": {
|
|
"title": "Définir le mot de passe",
|
|
"description": "Définissez le mot de passe de votre compte",
|
|
"codeSent": "Un nouveau code a été envoyé à votre adresse e-mail.",
|
|
"noCodeReceived": "Vous n'avez pas reçu de code ?",
|
|
"resend": "Renvoyer le code",
|
|
"submit": "Continuer",
|
|
"labels": {
|
|
"code": "Code",
|
|
"newPassword": "Nouveau mot de passe",
|
|
"confirmPassword": "Confirmez le mot de passe"
|
|
},
|
|
"required": {
|
|
"code": "Ce champ est requis",
|
|
"newPassword": "Vous devez fournir un mot de passe !",
|
|
"confirmPassword": "Ce champ est requis"
|
|
},
|
|
"errors": {
|
|
"couldNotSetPassword": "Impossible de définir le mot de passe",
|
|
"couldNotResetPassword": "Impossible de réinitialiser le mot de passe",
|
|
"couldNotVerifyPassword": "Impossible de vérifier le mot de passe"
|
|
}
|
|
},
|
|
"change": {
|
|
"title": "Changer le mot de passe",
|
|
"description": "Définissez le mot de passe de votre compte",
|
|
"submit": "Continuer",
|
|
"labels": {
|
|
"currentPassword": "Mot de passe actuel",
|
|
"newPassword": "Nouveau mot de passe",
|
|
"confirmPassword": "Confirmez le mot de passe"
|
|
},
|
|
"required": {
|
|
"currentPassword": "Vous devez fournir votre mot de passe actuel !",
|
|
"newPassword": "Vous devez fournir un nouveau mot de passe !",
|
|
"confirmPassword": "Ce champ est requis"
|
|
},
|
|
"errors": {
|
|
"currentPasswordInvalid": "Le mot de passe actuel est incorrect.",
|
|
"couldNotChangePassword": "Impossible de changer le mot de passe",
|
|
"couldNotVerifyPassword": "Impossible de vérifier le mot de passe",
|
|
"unknownError": "Erreur inconnue"
|
|
}
|
|
},
|
|
"complexity": {
|
|
"length": "Doit contenir au moins {minLength} caractères.",
|
|
"hasSymbol": "Doit inclure un symbole.",
|
|
"hasNumber": "Doit inclure un chiffre.",
|
|
"hasUppercase": "Doit inclure une lettre majuscule.",
|
|
"hasLowercase": "Doit inclure une lettre minuscule.",
|
|
"equals": "La confirmation du mot de passe correspond.",
|
|
"matches": "Correspond",
|
|
"doesNotMatch": "Ne correspond pas"
|
|
},
|
|
"errors": {
|
|
"noHostFound": "Aucun hôte trouvé",
|
|
"couldNotSendResetLink": "Impossible d'envoyer le lien de réinitialisation du mot de passe",
|
|
"couldNotCreateSessionForUser": "Impossible de créer une session pour l'utilisateur",
|
|
"couldNotVerifyPassword": "Impossible de vérifier le mot de passe",
|
|
"failedToAuthenticate": "Échec de l'authentification. Vous avez utilisé {failedAttempts} sur {maxPasswordAttempts} tentatives.{lockoutMessage}",
|
|
"failedToAuthenticateNoLimit": "Échec de l'authentification.",
|
|
"accountLockedContactAdmin": " Contactez votre administrateur pour déverrouiller votre compte",
|
|
"userNotFound": "Utilisateur non trouvé dans le système",
|
|
"initialUserNotSupported": "Utilisateur initial non pris en charge",
|
|
"userInitialStateNotSupported": "État initial de l'utilisateur non pris en charge",
|
|
"codeOrVerificationRequired": "Vous devez fournir un code ou avoir une vérification utilisateur valide",
|
|
"verificationRequired": "Une vérification utilisateur doit être effectuée",
|
|
"couldNotLoadSession": "Impossible de charger la session",
|
|
"couldNotLoadAuthMethods": "Impossible de charger les méthodes d'authentification",
|
|
"failedPrecondition": "Pré-condition non remplie",
|
|
"sessionNotValid": "La session n'est pas valide",
|
|
"passwordVerificationMissing": "La vérification du mot de passe est manquante.",
|
|
"passwordVerificationTooOld": "La vérification du mot de passe est trop ancienne. Veuillez vérifier à nouveau votre mot de passe."
|
|
}
|
|
},
|
|
"idp": {
|
|
"title": "Se connecter avec SSO",
|
|
"description": "Sélectionnez un des fournisseurs suivants pour vous connecter",
|
|
"orSignInWith": "ou connectez-vous avec",
|
|
"signInWithApple": "Se connecter avec Apple",
|
|
"signInWithGoogle": "Se connecter avec Google",
|
|
"signInWithAzureAD": "Se connecter avec AzureAD",
|
|
"signInWithGithub": "Se connecter avec GitHub",
|
|
"signInWithGitlab": "Se connecter avec GitLab",
|
|
"signInWithZitadel": "Se connecter avec Zitadel",
|
|
"loginError": {
|
|
"title": "Échec de la connexion",
|
|
"description": "Une erreur est survenue lors de la tentative de connexion."
|
|
},
|
|
"linkingError": {
|
|
"title": "Échec de la liaison du compte",
|
|
"description": "Une erreur est survenue lors de la tentative de lier votre compte."
|
|
},
|
|
"completeRegister": {
|
|
"title": "Complétez vos informations",
|
|
"description": "Vous devez compléter votre inscription en fournissant votre adresse e-mail et votre nom."
|
|
},
|
|
"accountNotFound": {
|
|
"title": "Compte introuvable",
|
|
"description": "Nous n'avons pas trouvé de compte associé aux identifiants de votre fournisseur d'identité.",
|
|
"info": "Aucun compte existant n'a été trouvé. Veuillez vous connecter avec un compte existant ou contacter votre administrateur pour obtenir de l'aide.",
|
|
"backToLogin": "Retour à la connexion"
|
|
},
|
|
"registrationFailed": {
|
|
"title": "Inscription non disponible",
|
|
"description": "Nous n'avons pas pu terminer le processus d'inscription.",
|
|
"info": "Impossible de déterminer l'organisation pour l'inscription. Veuillez contacter votre administrateur pour obtenir de l'aide.",
|
|
"backToLogin": "Retour à la connexion"
|
|
},
|
|
"processing": {
|
|
"message": "Traitement de l'authentification...",
|
|
"noRedirect": "Aucune redirection ou erreur renvoyée par le serveur",
|
|
"unexpectedError": "Une erreur inattendue s'est produite"
|
|
},
|
|
"errors": {
|
|
"missingParameters": "Paramètres requis manquants",
|
|
"missingIdpInfo": "Informations du fournisseur d'identité manquantes",
|
|
"idpNotFound": "Fournisseur d'identité introuvable",
|
|
"linkingNotAllowed": "La liaison n'est pas autorisée pour ce fournisseur d'identité",
|
|
"linkingFailed": "Échec de la liaison du fournisseur d'identité au compte",
|
|
"autoLinkingFailed": "Échec de la liaison automatique du compte",
|
|
"userCreationFailed": "Échec de la création du compte utilisateur",
|
|
"orgResolutionFailed": "Impossible de déterminer l'organisation pour l'inscription",
|
|
"sessionCreationFailed": "Impossible de créer la session ou de déterminer la redirection",
|
|
"unknownError": "Une erreur inconnue s'est produite"
|
|
}
|
|
},
|
|
"ldap": {
|
|
"title": "Connexion LDAP",
|
|
"description": "Entrez vos identifiants LDAP.",
|
|
"submit": "Continuer",
|
|
"labels": {
|
|
"username": "Nom d'utilisateur",
|
|
"password": "Mot de passe"
|
|
},
|
|
"required": {
|
|
"username": "Ce champ est requis",
|
|
"password": "Ce champ est requis"
|
|
}
|
|
},
|
|
"mfa": {
|
|
"verify": {
|
|
"title": "Vérifiez votre identité",
|
|
"description": "Choisissez l'un des facteurs suivants.",
|
|
"noResults": "Aucun second facteur disponible à configurer."
|
|
},
|
|
"set": {
|
|
"title": "Configurer l'authentification à deux facteurs",
|
|
"description": "Choisissez l'un des seconds facteurs suivants.",
|
|
"skip": "Ignorer"
|
|
}
|
|
},
|
|
"otp": {
|
|
"verify": {
|
|
"title": "Vérification à deux facteurs",
|
|
"totpDescription": "Entrez le code de votre application d'authentification.",
|
|
"smsDescription": "Entrez le code reçu par SMS.",
|
|
"emailDescription": "Entrez le code reçu par e-mail.",
|
|
"noCodeReceived": "Vous n'avez pas reçu de code ?",
|
|
"resendCode": "Renvoyer le code",
|
|
"submit": "Continuer",
|
|
"labels": {
|
|
"code": "Code"
|
|
},
|
|
"required": {
|
|
"code": "Ce champ est requis"
|
|
}
|
|
},
|
|
"set": {
|
|
"title": "Configurer l'authentification à deux facteurs",
|
|
"totpDescription": "Scannez le QR code avec votre application d'authentification.",
|
|
"smsDescription": "Entrez votre numéro de téléphone pour recevoir un code par SMS.",
|
|
"emailDescription": "Entrez votre adresse e-mail pour recevoir un code par e-mail.",
|
|
"totpRegisterDescription": "Scannez le QR code ou saisissez l'URL manuellement.",
|
|
"submit": "Continuer",
|
|
"labels": {
|
|
"code": "Code"
|
|
},
|
|
"required": {
|
|
"code": "Ce champ est requis"
|
|
}
|
|
}
|
|
},
|
|
"passkey": {
|
|
"verify": {
|
|
"title": "S'authentifier avec une clé d'accès",
|
|
"description": "Votre appareil vous demandera votre empreinte digitale, votre visage ou votre verrouillage d'écran",
|
|
"usePassword": "Utiliser un mot de passe",
|
|
"submit": "Continuer",
|
|
"errors": {
|
|
"couldNotRequestChallenge": "Impossible de demander le défi de la clé d'accès",
|
|
"couldNotVerifyPasskey": "Impossible de vérifier la clé d'accès",
|
|
"noResponseReceived": "Échec de la vérification de la clé d'accès - aucune réponse reçue",
|
|
"noRedirectProvided": "La vérification de la clé d'accès est terminée mais aucune redirection n'a été fournie",
|
|
"couldNotRetrievePasskey": "Une erreur s'est produite lors de la récupération de la clé d'accès",
|
|
"verificationCancelled": "La vérification de la clé d'accès a été annulée",
|
|
"verificationFailed": "Une erreur s'est produite lors de la vérification de la clé d'accès",
|
|
"couldNotFindSession": "Session introuvable",
|
|
"couldNotUpdateSession": "Impossible de mettre à jour la session",
|
|
"userNotFound": "Utilisateur introuvable dans le système",
|
|
"couldNotDetermineRedirect": "Impossible de déterminer l'URL de redirection après la vérification de la clé d'accès"
|
|
}
|
|
},
|
|
"set": {
|
|
"title": "Configurer une clé d'accès",
|
|
"description": "Votre appareil vous demandera votre empreinte digitale, votre visage ou votre verrouillage d'écran",
|
|
"info": {
|
|
"description": "Une clé d'accès est une méthode d'authentification sur un appareil, comme votre empreinte digitale, Apple FaceID ou équivalent.",
|
|
"link": "Authentification par clé d'accès"
|
|
},
|
|
"skip": "Ignorer",
|
|
"submit": "Continuer"
|
|
}
|
|
},
|
|
"u2f": {
|
|
"verify": {
|
|
"title": "Vérification à deux facteurs",
|
|
"description": "Vérifiez votre compte avec votre appareil."
|
|
},
|
|
"set": {
|
|
"title": "Configurer la double authentification",
|
|
"description": "Configurez un appareil comme second facteur.",
|
|
"submit": "Continuer"
|
|
}
|
|
},
|
|
"register": {
|
|
"methods": {
|
|
"passkey": "Clé d'accès",
|
|
"password": "Mot de passe"
|
|
},
|
|
"disabled": {
|
|
"title": "Inscription désactivée",
|
|
"description": "L'inscription est désactivée. Veuillez contacter votre administrateur."
|
|
},
|
|
"missingdata": {
|
|
"title": "Données manquantes",
|
|
"description": "Fournissez un e-mail, un prénom et un nom pour vous inscrire."
|
|
},
|
|
"title": "S'inscrire",
|
|
"description": "Créez votre compte Zitadel.",
|
|
"noMethodAvailableWarning": "Aucune méthode d'authentification disponible. Veuillez contacter votre administrateur.",
|
|
"selectMethod": "Sélectionnez la méthode que vous souhaitez utiliser pour vous authentifier",
|
|
"agreeTo": "Pour vous inscrire, vous devez accepter les conditions d'utilisation",
|
|
"termsOfService": "Conditions d'utilisation",
|
|
"privacyPolicy": "Politique de confidentialité",
|
|
"submit": "Continuer",
|
|
"password": {
|
|
"title": "Définir un mot de passe",
|
|
"description": "Définissez le mot de passe de votre compte",
|
|
"submit": "Continuer",
|
|
"labels": {
|
|
"password": "Mot de passe",
|
|
"confirmPassword": "Confirmez le mot de passe"
|
|
},
|
|
"required": {
|
|
"password": "Vous devez fournir un mot de passe !",
|
|
"confirmPassword": "Ce champ est requis"
|
|
}
|
|
},
|
|
"labels": {
|
|
"firstname": "Prénom",
|
|
"lastname": "Nom",
|
|
"email": "E-mail"
|
|
},
|
|
"required": {
|
|
"firstname": "Ce champ est requis",
|
|
"lastname": "Ce champ est requis",
|
|
"email": "Ce champ est requis"
|
|
},
|
|
"errors": {
|
|
"couldNotCreateUser": "Impossible de créer l'utilisateur",
|
|
"couldNotCreateSession": "Impossible de créer la session",
|
|
"userNotFound": "Utilisateur non trouvé dans le système",
|
|
"couldNotLinkIDP": "Impossible de lier le fournisseur d'identité à l'utilisateur",
|
|
"couldNotRegisterUser": "Impossible d'inscrire l'utilisateur"
|
|
}
|
|
},
|
|
"invite": {
|
|
"title": "Inviter un utilisateur",
|
|
"description": "Fournissez l'adresse e-mail et le nom de l'utilisateur que vous souhaitez inviter.",
|
|
"info": "L'utilisateur recevra un e-mail avec de plus amples instructions.",
|
|
"notAllowed": "Vos paramètres ne vous permettent pas d'inviter des utilisateurs.",
|
|
"submit": "Continuer",
|
|
"success": {
|
|
"title": "Utilisateur invité",
|
|
"description": "L'e-mail a été envoyé avec succès.",
|
|
"verified": "L'utilisateur a été invité et a déjà vérifié son e-mail.",
|
|
"notVerifiedYet": "L'utilisateur a été invité. Il recevra un e-mail avec de plus amples instructions.",
|
|
"submit": "Inviter un autre utilisateur"
|
|
}
|
|
},
|
|
"signedin": {
|
|
"title": "Bienvenue {user} !",
|
|
"description": "Vous êtes connecté.",
|
|
"continue": "Continuer",
|
|
"error": {
|
|
"title": "Erreur",
|
|
"description": "Une erreur est survenue lors de la connexion."
|
|
}
|
|
},
|
|
"verify": {
|
|
"userIdMissing": "Aucun identifiant utilisateur fourni !",
|
|
"successTitle": "Utilisateur vérifié",
|
|
"successDescription": "L'utilisateur a été vérifié avec succès.",
|
|
"successContinue": "Continuer",
|
|
"setupAuthenticator": "Configurer l'authentificateur",
|
|
"verify": {
|
|
"title": "Vérifier l'utilisateur",
|
|
"description": "Entrez le code fourni dans l'e-mail de vérification.",
|
|
"noCodeReceived": "Vous n'avez pas reçu de code ?",
|
|
"resendCode": "Renvoyer le code",
|
|
"codeSent": "Un code vient d'être envoyé à votre adresse e-mail.",
|
|
"submit": "Continuer",
|
|
"labels": {
|
|
"code": "Code"
|
|
},
|
|
"required": {
|
|
"code": "Ce champ est requis"
|
|
}
|
|
},
|
|
"errors": {
|
|
"couldNotResendEmail": "Impossible de renvoyer l'e-mail",
|
|
"couldNotVerifyUser": "Impossible de vérifier l'utilisateur",
|
|
"couldNotVerifyInvite": "Impossible de vérifier l'invitation",
|
|
"couldNotVerifyEmail": "Impossible de vérifier l'e-mail",
|
|
"couldNotVerify": "Impossible de vérifier",
|
|
"couldNotLoadUser": "Impossible de charger l'utilisateur",
|
|
"couldNotLoadAuthenticators": "Impossible de charger les authentificateurs disponibles",
|
|
"couldNotCreateSession": "Impossible de créer la session",
|
|
"noHostFound": "Aucun hôte trouvé",
|
|
"userAlreadyVerified": "L'utilisateur est déjà vérifié !",
|
|
"couldNotResendInvite": "Impossible de renvoyer l'invitation",
|
|
"inviteSendFailed": "Échec de l'envoi de l'e-mail d'invitation",
|
|
"emailSendFailed": "Échec de l'envoi de l'e-mail de vérification",
|
|
"contextMissing": "Une erreur s'est produite. Veuillez réessayer."
|
|
}
|
|
},
|
|
"authenticator": {
|
|
"title": "Choisir la méthode d'authentification",
|
|
"description": "Sélectionnez la méthode que vous souhaitez utiliser pour vous authentifier",
|
|
"noMethodsAvailable": "Aucune méthode d'authentification disponible",
|
|
"allSetup": "Vous avez déjà configuré un authentificateur !",
|
|
"linkWithIDP": "ou lier avec un fournisseur d'identité"
|
|
},
|
|
"device": {
|
|
"usercode": {
|
|
"title": "Code de l'appareil",
|
|
"description": "Entrez le code affiché sur votre application ou appareil.",
|
|
"submit": "Continuer",
|
|
"labels": {
|
|
"code": "Code"
|
|
},
|
|
"required": {
|
|
"code": "Ce champ est requis"
|
|
}
|
|
},
|
|
"request": {
|
|
"title": "{appName} souhaite se connecter",
|
|
"description": "{appName} aura accès à :",
|
|
"disclaimer": "En cliquant sur Autoriser, vous permettez à {appName} et à Zitadel d'utiliser vos informations conformément à leurs conditions d'utilisation et politiques de confidentialité respectives. Vous pouvez révoquer cet accès à tout moment.",
|
|
"submit": "Autoriser",
|
|
"deny": "Refuser"
|
|
},
|
|
"scope": {
|
|
"openid": "Vérifiez votre identité.",
|
|
"email": "Afficher votre adresse e-mail.",
|
|
"profile": "Afficher les informations complètes de votre profil.",
|
|
"offline_access": "Autoriser l'accès hors ligne à votre compte."
|
|
}
|
|
},
|
|
"error": {
|
|
"noUserCode": "Aucun code utilisateur fourni !",
|
|
"noDeviceRequest": "Aucune demande d'appareil trouvée.",
|
|
"unknownContext": "Impossible d'obtenir le contexte de l'utilisateur. Assurez-vous d'abord de saisir le nom d'utilisateur ou de fournir un loginName comme paramètre de recherche.",
|
|
"sessionExpired": "Votre session actuelle a expiré. Veuillez vous reconnecter.",
|
|
"failedLoading": "Échec du chargement des données. Veuillez réessayer.",
|
|
"tryagain": "Réessayer",
|
|
"couldNotContinueSession": "Impossible de continuer la session - informations utilisateur manquantes",
|
|
"couldNotClearSession": "La session n'a pas pu être terminée. Veuillez réessayer."
|
|
}
|
|
}
|