366 lines
19 KiB
JSON
366 lines
19 KiB
JSON
{
|
|
"common": {
|
|
"appName": "PieCed",
|
|
"tagline": "Plateforme IA",
|
|
"login": "Connexion",
|
|
"logout": "Déconnexion",
|
|
"dashboard": "Tableau de bord",
|
|
"admin": "Admin",
|
|
"loading": "Chargement…",
|
|
"language": "Langue",
|
|
"cancel": "Annuler",
|
|
"save": "Enregistrer",
|
|
"error": "Une erreur est survenue",
|
|
"register": "S'inscrire",
|
|
"team": "Équipe"
|
|
},
|
|
"login": {
|
|
"title": "Portail PieCed",
|
|
"subtitle": "Connectez-vous pour gérer votre assistant IA",
|
|
"button": "Continuer avec ZITADEL",
|
|
"footer": "Hébergé on-premises en Suisse",
|
|
"noAccount": "Pas encore de compte ?",
|
|
"register": "Créer un compte"
|
|
},
|
|
"register": {
|
|
"title": "Créer votre compte",
|
|
"subtitle": "Configurez votre assistant IA hébergé en Suisse",
|
|
"companyName": "Nom de l'entreprise",
|
|
"companyNamePlaceholder": "Exemple SA",
|
|
"givenName": "Prénom",
|
|
"familyName": "Nom",
|
|
"email": "Adresse e-mail",
|
|
"submit": "S'inscrire",
|
|
"hasAccount": "Déjà un compte ?",
|
|
"footer": "Vos données sont hébergées exclusivement on-premises en Suisse.",
|
|
"successTitle": "Inscription reçue",
|
|
"successDescription": "Vous recevrez un e-mail d'invitation avec un lien pour définir votre mot de passe et vérifier votre adresse e-mail. Ensuite, vous pourrez vous connecter et configurer votre assistant IA.",
|
|
"goToLogin": "Aller à la connexion",
|
|
"duplicateDomain": "Un compte pour le domaine de courriel {domain} est déjà enregistré. Veuillez contacter l'administrateur de votre entreprise pour être invité, ou contactez le support PieCed IT si vous pensez qu'il s'agit d'une erreur.",
|
|
"individualToggle": "S'inscrire en tant que particulier",
|
|
"individualHint": "Cochez cette case si vous ne vous inscrivez pas au nom d'une entreprise. Votre compte sera configuré comme espace de travail personnel.",
|
|
"accountTypeLabel": "Type de compte",
|
|
"personalCardTitle": "Particulier",
|
|
"personalCardDescription": "Pour vous.",
|
|
"companyCardTitle": "Entreprise",
|
|
"companyCardDescription": "Pour votre entreprise ou équipe."
|
|
},
|
|
"onboarding": {
|
|
"loading": "Chargement du statut…",
|
|
"welcomeTitle": "Configurer votre assistant IA",
|
|
"welcomeDescription": "En quelques étapes, vous aurez votre propre assistant IA — hébergé exclusivement en Suisse, entièrement sous votre contrôle.",
|
|
"welcomeFeature_swissHosted": "Hébergé on-premises en Suisse — vos données ne quittent jamais le pays",
|
|
"welcomeFeature_privacy": "Aucune donnée partagée avec des tiers — confidentialité totale",
|
|
"welcomeFeature_customizable": "Personnalité, paquets et intégrations entièrement personnalisables",
|
|
"getStarted": "Commencer",
|
|
"configureTitle": "Configurer votre assistant",
|
|
"configureDescription": "Donnez un nom et une personnalité à votre assistant. Vous pouvez toujours les modifier par la suite.",
|
|
"agentName": "Nom de l'agent",
|
|
"soulMd": "Personnalité (SOUL.md)",
|
|
"soulMdHint": "Définit le comportement de votre assistant. Format Markdown. Modifiable ultérieurement.",
|
|
"agentsMd": "Instructions de l'agent (AGENTS.md)",
|
|
"agentsMdHint": "Définit ce que votre assistant fait au démarrage de la session. Optionnel — les paramètres par défaut conviennent à la plupart des configurations.",
|
|
"toolsMd": "Outils disponibles (TOOLS.md)",
|
|
"toolsMdHint": "Généré automatiquement en fonction des paquets sélectionnés. Ce fichier est géré automatiquement.",
|
|
"advancedConfig": "Configuration avancée",
|
|
"packages": "Paquets",
|
|
"packagesHint": "Intégrations optionnelles. Les paquets nécessitant des identifiants les demanderont en ligne. Vous pouvez aussi les activer plus tard.",
|
|
"billingTitle": "Informations de facturation",
|
|
"billingDescription": "Nous avons besoin de votre adresse de facturation. Un prestataire de paiement sera intégré à l'avenir.",
|
|
"billingCompany": "Entreprise",
|
|
"billingStreet": "Rue",
|
|
"billingPostalCode": "Code postal",
|
|
"billingCity": "Ville",
|
|
"billingCountry": "Pays",
|
|
"billingNotes": "Remarques",
|
|
"billingNotesPlaceholder": "Remarques sur la facturation (numéro de commande, numéro de TVA, mode de paiement préféré, etc.)",
|
|
"confirmTitle": "Vérifier et envoyer",
|
|
"confirmDescription": "Veuillez vérifier votre configuration. Votre demande sera examinée par notre équipe avant la mise en service.",
|
|
"confirmNote": "Après l'envoi, notre équipe examinera votre demande et vos informations de facturation. Vous recevrez l'accès après approbation — généralement dans un délai d'un jour ouvrable.",
|
|
"credentialsProvided": "Identifiants fournis",
|
|
"submitRequest": "Envoyer la demande",
|
|
"back": "Retour",
|
|
"next": "Suivant",
|
|
"pendingTitle": "Demande envoyée",
|
|
"pendingDescription": "Votre demande a été envoyée et est en cours d'examen par notre équipe. Vous recevrez l'accès après approbation — généralement dans un délai d'un jour ouvrable.",
|
|
"rejectedTitle": "Demande non approuvée",
|
|
"rejectedDescription": "Malheureusement, votre demande n'a pas été approuvée. Veuillez nous contacter pour plus d'informations.",
|
|
"provisioningTitle": "Configuration de votre instance",
|
|
"provisioningDescription": "Votre assistant IA est en cours de mise en service. Cela prend généralement quelques minutes.",
|
|
"phase": "Phase",
|
|
"readyTitle": "Votre assistant est prêt !",
|
|
"readyDescription": "Votre assistant IA a été mis en service et est actif. Vous pouvez maintenant le gérer depuis le tableau de bord.",
|
|
"goToDashboard": "Aller au tableau de bord",
|
|
"submittedAt": "Soumis",
|
|
"instanceName": "Nom de l'instance",
|
|
"instanceNamePlaceholder": "ex. Production, Dev, Ventes",
|
|
"instanceNameHint": "Nom lisible facultatif pour distinguer cette instance des autres sur votre tableau de bord. Laisser vide pour utiliser le nom de votre entreprise.",
|
|
"validationError": "Veuillez corriger les erreurs avant l'envoi.",
|
|
"validationErrorsTitle": "Certains champs obligatoires manquent ou sont invalides :",
|
|
"reviewInstanceDefault": "(par défaut — utilise le nom de l'entreprise)",
|
|
"reviewNoPackages": "Aucun sélectionné",
|
|
"reviewBillingTo": "Facturer à",
|
|
"reviewContactEmail": "E-mail de contact",
|
|
"editRequestTitle": "Modifier votre demande",
|
|
"editRequestDescription": "Ajustez la configuration avant que notre équipe ne l'examine.",
|
|
"editRequest": "Modifier",
|
|
"cancelRequest": "Annuler la demande",
|
|
"cancelRequestConfirm": "Oui, annuler la demande",
|
|
"cancelConfirmRequestTitle": "Annuler cette demande ?",
|
|
"cancelConfirmRequestDescription": "Votre demande en attente sera marquée comme annulée et retirée de la file. Vous pouvez soumettre une nouvelle demande à tout moment.",
|
|
"cancelFailed": "Impossible d'annuler la demande.",
|
|
"cancelledTitle": "Demande annulée",
|
|
"cancelledDescription": "Vous avez annulé cette demande avant son traitement. Aucune instance n'a été créée.",
|
|
"dismiss": "Masquer",
|
|
"dismissFailed": "Impossible de masquer.",
|
|
"rejectionReason": "Motif indiqué",
|
|
"saveChanges": "Enregistrer les modifications"
|
|
},
|
|
"dashboard": {
|
|
"title": "Tableau de bord",
|
|
"welcome": "Bienvenue, {name}",
|
|
"instanceStatus": "Statut de l'instance",
|
|
"usage": "Utilisation",
|
|
"packages": "Paquets",
|
|
"noInstance": "Aucune instance provisionnée.",
|
|
"comingSoon": "Vue détaillée à venir dans la Session 6.2",
|
|
"noInstanceDescription": "Configurez votre instance d'assistant IA pour commencer avec PieCed IT.",
|
|
"manage": "Gérer l'instance et les paquets",
|
|
"instances": "Vos instances",
|
|
"inflightRequests": "Demandes en cours",
|
|
"createInstance": "Créer une nouvelle instance",
|
|
"createInstanceDescription": "Provisionner une instance supplémentaire d'assistant IA pour votre organisation. La demande sera examinée par un administrateur avant la création de l'instance.",
|
|
"noAccessNoInstances": "Votre organisation n'a pas encore d'instances. Demandez au propriétaire de l'organisation d'en configurer une.",
|
|
"noAssignmentsTitle": "Aucune instance attribuée",
|
|
"noAssignmentsDescription": "Votre organisation possède des instances, mais aucun accès ne vous a été accordé. Demandez au propriétaire de votre organisation de vous attribuer une instance.",
|
|
"noInstancesYetTitle": "Pas encore d'instances",
|
|
"noInstancesYetDescription": "Votre organisation ne possède pas encore d'instances. Demandez au propriétaire de votre organisation d'en configurer une."
|
|
},
|
|
"tenantDetail": {
|
|
"agent": "Agent",
|
|
"packages": "Paquets",
|
|
"workspaceFiles": "Fichiers workspace",
|
|
"notFound": "Locataire non trouvé.",
|
|
"usage": "Utilisation et coûts",
|
|
"provisioned": "Provisionné",
|
|
"assignedUsers": "Utilisateurs attribués",
|
|
"subscriptionTitle": "Abonnement",
|
|
"subscriptionDescriptionActive": "Annulez votre abonnement si vous n'avez plus besoin de cet assistant. Vos données seront conservées et vous pourrez reprendre à tout moment.",
|
|
"subscriptionDescriptionSuspended": "Votre abonnement est annulé. Reprenez pour remettre l'assistant en ligne.",
|
|
"cancelSubscription": "Annuler l'abonnement",
|
|
"cancelSubscriptionConfirm": "Oui, annuler",
|
|
"resumeSubscription": "Reprendre l'abonnement",
|
|
"cancelConfirmTitle": "Annuler cet abonnement ?",
|
|
"cancelConfirmDescription": "Votre assistant sera indisponible. Vous pouvez reprendre à tout moment — vos données sont préservées.",
|
|
"cancelConfirmBullet1": "Les fichiers de l'espace de travail (SOUL.md, AGENTS.md) sont conservés",
|
|
"cancelConfirmBullet2": "Les identifiants des packages restent stockés",
|
|
"cancelConfirmBullet3": "Les informations de facturation sont conservées",
|
|
"subscriptionUpdateFailed": "Impossible de mettre à jour l'abonnement.",
|
|
"suspendedTitle": "Abonnement annulé",
|
|
"suspendedDescription": "Votre assistant est en pause. La configuration et les données sont préservées. Utilisez le contrôle Reprendre en bas de cette page pour le remettre en ligne."
|
|
},
|
|
"usage": {
|
|
"inputTokens": "Tokens d'entrée",
|
|
"outputTokens": "Tokens de sortie",
|
|
"totalSpend": "Dépenses totales",
|
|
"totalCost": "Coût total",
|
|
"budget": "Budget",
|
|
"noLimit": "Pas de limite",
|
|
"last30Days": "30 derniers jours",
|
|
"noData": "Aucune donnée d'utilisation disponible.",
|
|
"dailyBreakdown": "Détail journalier",
|
|
"requests": "requêtes"
|
|
},
|
|
"workspace": {
|
|
"save": "Enregistrer",
|
|
"placeholder": "Saisir le contenu pour {file}…",
|
|
"readonlyNote": "Ce fichier est généré automatiquement et ne peut pas être modifié manuellement.",
|
|
"seedingNote": "Les fichiers workspace sont initialisés au premier démarrage. Une mise à jour sur une instance existante déclenche une mise à jour du ConfigMap et un redémarrage du pod."
|
|
},
|
|
"packages": {
|
|
"categories": {
|
|
"channels": "Canaux",
|
|
"skills": "Compétences"
|
|
},
|
|
"enable": "Activer",
|
|
"disable": "Désactiver",
|
|
"enableAndSave": "Activer et enregistrer",
|
|
"configure": "Configurer",
|
|
"requiresApiKey": "Nécessite une clé API",
|
|
"missingFields": "Veuillez remplir tous les champs obligatoires.",
|
|
"status": {
|
|
"pending": "En attente",
|
|
"active": "Actif",
|
|
"error": "Erreur"
|
|
},
|
|
"telegram": {
|
|
"description": "Connectez votre assistant IA à un bot Telegram.",
|
|
"botTokenLabel": "Token du bot Telegram",
|
|
"botTokenPlaceholder": "123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11",
|
|
"instructions": "1. Ouvrez @BotFather sur Telegram\n2. Envoyez /newbot et suivez les instructions\n3. Copiez le token du bot",
|
|
"disclaimer": "Je confirme que je possède ce bot Telegram et autorise PieCed IT à le connecter à mon assistant IA."
|
|
},
|
|
"discord": {
|
|
"description": "Connectez votre assistant IA à un serveur Discord via un bot.",
|
|
"botTokenLabel": "Token du bot Discord",
|
|
"botTokenPlaceholder": "MTAxNjQ0OTk2NjAz...",
|
|
"instructions": "1. Allez sur discord.com/developers/applications\n2. Créez une nouvelle application et ajoutez un bot\n3. Copiez le token du bot",
|
|
"disclaimer": "Je confirme que je possède ce bot Discord et autorise PieCed IT à le connecter à mon assistant IA."
|
|
},
|
|
"email": {
|
|
"description": "Permettez à votre assistant IA d'envoyer et de recevoir des e-mails.",
|
|
"smtpHostLabel": "Hôte SMTP",
|
|
"smtpHostPlaceholder": "smtp.example.com",
|
|
"smtpUserLabel": "Nom d'utilisateur SMTP",
|
|
"smtpUserPlaceholder": "user@example.com",
|
|
"smtpPasswordLabel": "Mot de passe SMTP",
|
|
"smtpPasswordPlaceholder": "••••••••",
|
|
"imapHostLabel": "Hôte IMAP",
|
|
"imapHostPlaceholder": "imap.example.com",
|
|
"instructions": "Fournissez les identifiants SMTP et IMAP. L'assistant les utilise pour envoyer et surveiller les messages.",
|
|
"disclaimer": "Je confirme que je suis autorisé à utiliser ces identifiants e-mail et que PieCed IT peut accéder à cette boîte mail."
|
|
},
|
|
"webSearch": {
|
|
"description": "Donnez à votre assistant IA la capacité de rechercher sur le web."
|
|
},
|
|
"documentProcessing": {
|
|
"description": "Activez l'analyse, le résumé et l'extraction de documents."
|
|
},
|
|
"statusEnabled": "activé",
|
|
"statusDisabled": "désactivé"
|
|
},
|
|
"admin": {
|
|
"title": "Admin plateforme",
|
|
"subtitle": "Gérer les demandes d'onboarding et le cycle de vie des locataires",
|
|
"allTenants": "Locataires",
|
|
"noTenants": "Aucun locataire provisionné.",
|
|
"noAccess": "Permissions insuffisantes pour cette vue.",
|
|
"name": "Nom",
|
|
"displayName": "Nom d'affichage",
|
|
"phase": "Phase",
|
|
"packages": "Paquets",
|
|
"created": "Créé",
|
|
"manage": "Gérer",
|
|
"requests": "Demandes",
|
|
"pendingRequests": "Demandes en attente",
|
|
"approve": "Approuver",
|
|
"reject": "Rejeter",
|
|
"reApprove": "Réapprouver",
|
|
"company": "Entreprise",
|
|
"contact": "Contact",
|
|
"agentName": "Agent",
|
|
"status": "Statut",
|
|
"submitted": "Soumis",
|
|
"updated": "Mis à jour",
|
|
"actions": "Actions",
|
|
"noRequests": "Aucune demande trouvée.",
|
|
"loadingRequests": "Chargement des demandes…",
|
|
"approveConfirm": "Approuver cette demande et démarrer la mise en service ?",
|
|
"rejectConfirm": "Rejeter cette demande ?",
|
|
"rejectTitle": "Rejeter la demande",
|
|
"adminNotesLabel": "Notes (optionnel)",
|
|
"adminNotesPlaceholder": "Raison du rejet…",
|
|
"cancelAction": "Annuler",
|
|
"confirmReject": "Rejeter",
|
|
"viewTenant": "Voir",
|
|
"filter_all": "Tous",
|
|
"filter_pending": "En attente",
|
|
"filter_provisioning": "Provisionnement",
|
|
"filter_approved": "Approuvé",
|
|
"filter_rejected": "Rejeté",
|
|
"totalTenants": "Total",
|
|
"running": "En cours",
|
|
"provisioning": "Provisionnement",
|
|
"errors": "Erreurs",
|
|
"suspend": "Suspendre",
|
|
"resume": "Reprendre",
|
|
"suspended": "Suspendu",
|
|
"suspendedBadge": "SUSPENDU",
|
|
"deleteTenant": "Supprimer",
|
|
"deleteTitle": "Supprimer le locataire",
|
|
"deleteWarning": "Cela supprimera définitivement le locataire, son namespace, ses secrets et toutes les données associées. Cette action est irréversible.",
|
|
"confirmDelete": "Supprimer définitivement",
|
|
"loadingTenants": "Chargement des locataires…",
|
|
"filter_deleted": "Supprimé",
|
|
"filter_active": "Actif",
|
|
"health": "Santé",
|
|
"serviceHealth": "Santé des services",
|
|
"vllmDescription": "Moteur d'inférence GPU",
|
|
"litellmDescription": "Proxy LLM & suivi des coûts",
|
|
"tenantOverview": "Aperçu des locataires",
|
|
"spendOverview": "Aperçu des coûts",
|
|
"globalSpend": "Coûts globaux (CHF)",
|
|
"activeTenants": "Locataires actifs",
|
|
"tenantsWithSpend": "locataires avec dépenses enregistrées",
|
|
"refresh": "Actualiser",
|
|
"healthUnavailable": "Données de santé indisponibles.",
|
|
"loadingHealth": "Chargement des données de santé…",
|
|
"statusHealthy": "OK",
|
|
"statusDown": "Hors service",
|
|
"spendChf": "Coûts (CHF)"
|
|
},
|
|
"channelUsers": {
|
|
"title": "Utilisateurs autorisés",
|
|
"description": "Gérez les utilisateurs pouvant interagir avec votre assistant sur chaque canal. Ajoutez leur identifiant numérique pour autoriser l'accès.",
|
|
"users": "utilisateurs",
|
|
"placeholder": "Entrez l'identifiant numérique…",
|
|
"add": "Ajouter",
|
|
"remove": "Supprimer",
|
|
"alreadyAdded": "Cet identifiant est déjà autorisé.",
|
|
"telegramIdHelp": "Pour trouver votre identifiant Telegram :\n1. Ouvrez Telegram et envoyez un message à @userinfobot\n2. Il répond instantanément avec votre identifiant numérique\n3. Entrez ce numéro ici",
|
|
"discordIdHelp": "Pour trouver votre identifiant Discord :\n1. Activez le mode développeur dans les paramètres Discord (Avancé)\n2. Clic droit sur votre nom → Copier l'identifiant\n3. Entrez ce numéro ici",
|
|
"emailIdHelp": "Entrez l'adresse e-mail qui doit être autorisée à interagir avec l'assistant."
|
|
},
|
|
"team": {
|
|
"title": "Équipe",
|
|
"description": "Gérez les membres de votre organisation. Invitez des collègues et attribuez-leur des instances.",
|
|
"inviteSectionTitle": "Inviter un membre",
|
|
"membersSectionTitle": "Membres",
|
|
"noMembers": "Aucun membre pour l'instant.",
|
|
"you": "Vous",
|
|
"noRole": "aucun rôle",
|
|
"givenName": "Prénom",
|
|
"familyName": "Nom de famille",
|
|
"email": "E-mail",
|
|
"role": "Rôle",
|
|
"roleUser": "Utilisateur (lecture seule, doit être affecté à des instances)",
|
|
"roleOwner": "Propriétaire (accès complet à toutes les instances)",
|
|
"roleHint": "Les propriétaires peuvent gérer les instances, la facturation et les membres de l'équipe. Les utilisateurs ne peuvent voir que les instances qui leur sont attribuées.",
|
|
"inviteButton": "Envoyer l'invitation",
|
|
"inviteSent": "Invitation envoyée. L'utilisateur recevra un e-mail avec un lien pour définir son mot de passe.",
|
|
"inviteUserExists": "Un utilisateur avec cette adresse e-mail est déjà enregistré.",
|
|
"changeRole": "Modifier le rôle",
|
|
"roleUpdated": "Rôle mis à jour.",
|
|
"roleUpdateFailed": "Impossible de mettre à jour le rôle.",
|
|
"cancel": "Annuler",
|
|
"save": "Enregistrer",
|
|
"selfChangeBlocked": "Vous ne pouvez pas modifier votre propre rôle."
|
|
},
|
|
"assignments": {
|
|
"loading": "Chargement des attributions…",
|
|
"noneAssigned": "Aucun utilisateur n'est encore attribué à cette instance.",
|
|
"noCandidates": "Aucun membre de l'équipe disponible pour l'attribution. Invitez d'abord des utilisateurs depuis la page Équipe.",
|
|
"pickUser": "Sélectionner un utilisateur…",
|
|
"assign": "Attribuer",
|
|
"revoke": "Retirer"
|
|
},
|
|
"countries": {
|
|
"CH": "Suisse",
|
|
"DE": "Allemagne",
|
|
"AT": "Autriche",
|
|
"FR": "France",
|
|
"IT": "Italie",
|
|
"LI": "Liechtenstein"
|
|
},
|
|
"phase": {
|
|
"Pending": "En attente",
|
|
"Provisioning": "Mise en service",
|
|
"Running": "Actif",
|
|
"Ready": "Prêt",
|
|
"Suspended": "Suspendu",
|
|
"Error": "Erreur",
|
|
"Deleting": "Suppression",
|
|
"Reconfiguring": "Reconfiguration"
|
|
}
|
|
}
|