{ "auth": { "signIn": "Connexion", "signUp": "S'inscrire", "email": "Courriel", "password": "Mot de passe", "name": "Nom", "emailPlaceholder": "Entrez votre adresse email", "passwordPlaceholder": "Entrez votre mot de passe", "namePlaceholder": "Entrez votre nom", "passwordMinChars": "Entrez votre mot de passe (min 6 caractères)", "resetPassword": "Réinitialiser le mot de passe", "resetPasswordInstructions": "Entrez votre email pour réinitialiser votre mot de passe", "forgotPassword": "Mot de passe oublié ?", "noAccount": "Pas de compte ?", "hasAccount": "Déjà un compte ?", "signInToAccount": "Connectez-vous à votre compte", "createAccount": "Créez votre compte", "rememberMe": "Se souvenir de moi", "orContinueWith": "Ou continuer avec", "continueWithGoogle": "Continuer avec Google", "sessionExpired": "Votre session a expiré. Connectez-vous à nouveau.", "oauthAccountNotLinked": "Ce compte Google ne correspond pas à votre compte existant. Utilisez le même e-mail ou connectez-vous par mot de passe.", "checkYourEmail": "Vérifiez votre email", "resetEmailSent": "Nous avons envoyé un lien de réinitialisation à votre adresse email si elle existe dans notre système.", "returnToLogin": "Retour à la connexion", "forgotPasswordTitle": "Mot de passe oublié", "forgotPasswordDescription": "Entrez votre adresse email et nous vous enverrons un lien pour réinitialiser votre mot de passe.", "sending": "Envoi en cours...", "sendResetLink": "Envoyer le lien de réinitialisation", "backToLogin": "Retour à la connexion", "signOut": "Déconnexion", "confirmPassword": "Confirmer le mot de passe", "confirmPasswordPlaceholder": "Confirmez votre mot de passe", "welcomeBack": "Bon retour parmi nous", "welcomeBackSubtitle": "Entrez vos identifiants pour accéder à vos notes.", "createYourSpace": "Créer votre espace", "createYourSpaceSubtitle": "Rejoignez la nouvelle ère de la prise de notes intelligente.", "forgot": "Oublié ?", "backToSite": "Retour", "privacyTerms": "© 2025 Momento Labs — Confidentialité · Conditions" }, "sidebar": { "notes": "Notes", "recent": "Récent", "quickNav": "Navigation rapide", "reminders": "Rappels", "labels": "Étiquettes", "editLabels": "Modifier les étiquettes", "newNoteTabs": "Nouvelle note", "newNoteTabsHint": "Créer une note dans ce carnet", "noLabelsInNotebook": "Aucune étiquette dans ce carnet", "archive": "Archives", "trash": "Corbeille", "clearFilter": "Retirer le filtre", "inbox": "Boîte de réception", "sharedWithMe": "Partagées avec moi", "sortNewest": "Plus récentes", "sortOldest": "Plus anciennes", "sortAlpha": "Tri A → Z", "accountMenu": "Menu du compte", "profile": "Profil", "signOut": "Se déconnecter", "sortOrder": "Ordre de tri", "freezePinnedNotebook": "Figer l'état du carnet", "unfreezePinnedNotebook": "Défiger l'état du carnet", "newSubNotebook": "Nouveau sous-carnet", "renameNotebook": "Renommer", "sharedNotebookBadge": "· partagé", "sortManual": "Ordre libre", "moveFailed": "Échec du déplacement du carnet", "dropToRoot": "Déposez ici pour déplacer à la racine", "noReminders": "Aucun rappel actif." }, "notes": { "title": "Notes", "newNote": "Nouvelle note", "reorganize": "Réorganiser les notes", "untitled": "Sans titre", "placeholder": "Prenez une note...", "markdownPlaceholder": "Prenez une note... (Markdown supporté)", "titlePlaceholder": "Titre", "noteTypes": { "richtext": "Texte enrichi", "markdown": "Markdown", "text": "Texte brut", "checklist": "Liste de tâches" }, "listItem": "Élément de liste", "addListItem": "+ Élément de liste", "newChecklist": "Nouvelle checklist", "add": "Ajouter", "adding": "Ajout...", "close": "Fermer", "confirmDelete": "Voulez-vous vraiment supprimer cette note ?", "confirmLeaveShare": "Êtes-vous sûr de vouloir quitter cette note partagée ?", "sharedBy": "Partagé par", "sharedShort": "Partagé", "leaveShare": "Quitter", "delete": "Supprimer", "archive": "Archiver", "unarchive": "Désarchiver", "pin": "Épingler", "unpin": "Désépingler", "color": "Couleur", "changeColor": "Changer la couleur", "setReminder": "Définir un rappel", "setReminderButton": "Définir un rappel", "date": "Date", "time": "Heure", "reminderDateTimeRequired": "Veuillez entrer la date et l'heure", "invalidDateTime": "Date ou heure invalide", "reminderMustBeFuture": "Le rappel doit être dans le futur", "reminderSet": "Rappel défini pour {datetime}", "reminderPastError": "Le rappel doit être dans le futur", "reminderRemoved": "Rappel supprimé", "addImage": "Ajouter une image", "addLink": "Ajouter un lien", "linkAdded": "Lien ajouté", "linkMetadataFailed": "Impossible de récupérer les métadonnées du lien", "linkAddFailed": "Échec de l'ajout du lien", "invalidFileType": "Type de fichier invalide : {fileName}. Seuls JPEG, PNG, GIF et WebP sont autorisés.", "fileTooLarge": "Fichier trop volumineux : {fileName}. Taille maximale : {maxSize}.", "uploadFailed": "Échec du téléchargement", "contentOrMediaRequired": "Veuillez entrer du contenu ou ajouter un lien/image", "itemOrMediaRequired": "Veuillez ajouter au moins un élément ou média", "noteCreated": "Note créée avec succès", "noteCreateFailed": "Échec de la création de la note", "deleted": "Note supprimée", "deleteFailed": "Échec de la suppression de la note", "aiAssistant": "IA Note", "changeSize": "Changer la taille", "backgroundOptions": "Options d'arrière-plan", "moreOptions": "Plus d'options", "remindMe": "Me rappeler", "markdownMode": "Markdown", "addCollaborators": "Ajouter des collaborateurs", "duplicate": "Dupliquer", "share": "Partager", "showCollaborators": "Voir les collaborateurs", "pinned": "Épinglées", "others": "Autres", "noNotes": "Aucune note", "noNotesFound": "Aucune note trouvée", "createFirstNote": "Créez votre première note", "size": "Taille", "small": "Petite", "medium": "Moyenne", "large": "Grande", "shareWithCollaborators": "Partager avec les collaborateurs", "view": "Voir la note", "edit": "Éditer", "readOnly": "Lecture seule", "preview": "Aperçu", "noContent": "Pas de contenu", "takeNote": "Prenez une note...", "takeNoteMarkdown": "Prenez une note... (Markdown supporté)", "addItem": "Ajouter un élément", "sharedReadOnly": "Cette note est partagée avec vous en lecture seule", "makeCopy": "Faire une copie", "saving": "Enregistrement...", "copySuccess": "Note copiée avec succès !", "copyFailed": "Échec de la copie de la note", "copy": "Copier", "markdownOn": "Markdown ACTIVÉ", "markdownOff": "Markdown DÉSACTIVÉ", "undo": "Annuler (Ctrl+Z)", "redo": "Rétablir (Ctrl+Y)", "pinnedNotes": "Notes épinglées", "recent": "Récent", "addNote": "Ajouter une note", "readMore": "Lire la suite", "remove": "Supprimer", "dragToReorder": "Glisser pour réorganiser", "more": "Plus d'options", "emptyState": "Aucune note encore. Créez votre première note !", "metadataPanel": "Métadonnées", "metadataNotebook": "Carnet", "emptyStateTabs": "Aucune note dans cette vue. Utilisez « Nouvelle note » dans la barre latérale pour en ajouter une (titres suggérés par l’IA disponibles dans le compositeur).", "inNotebook": "Dans le carnet", "moveFailed": "Échec du déplacement de la note. Veuillez réessayer.", "clarifyFailed": "Échec de la clarification du texte", "shortenFailed": "Échec du raccourcissement du texte", "improveFailed": "Échec de l'amélioration du texte", "transformFailed": "Échec de la transformation du texte", "markdown": "Markdown", "unpinned": "Désépinglées", "redoShortcut": "Rétablir (Ctrl+Y)", "undoShortcut": "Annuler (Ctrl+Z)", "reorderTabs": "Réordonner l'onglet", "modified": "Modifiée", "created": "Créée", "loading": "Chargement...", "exportPDF": "Exporter en PDF", "savedStatus": "Enregistré", "dirtyStatus": "Modifié", "completedLabel": "Terminé", "notes": { "emptyNotebook": "Carnet vide", "emptyNotebookDesc": "Ce carnet n'a pas de notes. Cliquez sur + pour en créer une.", "noNoteSelected": "Aucune note sélectionnée", "selectOrCreateNote": "Sélectionnez une note dans la liste ou créez-en une nouvelle." }, "commitVersion": "Enregistrer la version", "versionSaved": "Version enregistrée", "deleteVersion": "Supprimer cette version", "versionDeleted": "Version supprimée", "deleteVersionConfirm": "Supprimer cette version ?", "deleteVersionDesc": "Cette action est irréversible. La version sera définitivement supprimée de l'historique.", "historyMode": "Mode d'historique", "historyModeManual": "Manuel (bouton commit)", "historyModeAuto": "Automatique (intelligent)", "historyModeManualDesc": "Créer des snapshots manuellement avec le bouton commit", "historyModeAutoDesc": "Snapshots automatiques avec détection intelligente", "history": "Historique", "historyRestored": "Version restaurée", "historyEnabled": "Historique activé", "historyDisabledTitle": "Historique des versions", "historyDisabledDesc": "Suivez les modifications de cette note au fil du temps. Activez l'historique pour commencer à enregistrer des versions.", "historyEnabledTitle": "Historique activé !", "historyEnabledDesc": "Les versions de cette note seront désormais enregistrées.", "enableHistory": "Activer l'historique", "historyEmpty": "Aucune version disponible", "historySelectVersion": "Sélectionnez une version pour prévisualiser son contenu", "currentVersion": "actuelle", "compareVersions": "Comparer", "diffTitle": "Comparaison", "diffSelectHint": "Cliquez sur 2 versions dans la liste pour les comparer", "sortBy": "Trier par", "sortDateDesc": "Date (récent)", "sortDateAsc": "Date (ancien)", "sortTitleAsc": "Titre A → Z", "sortTitleDesc": "Titre Z → A", "suggestTitle": "Titre IA", "generateTitleFromImage": "Générer un titre à partir de l'image", "titleGenerated": "Titre généré", "content": "Contenu", "restore": "Restaurer", "createFailed": "Impossible de créer la note", "updateFailed": "Mise à jour échouée", "archived": "Note archivée", "unarchivedSuccess": "Note désarchivée", "archiveFailed": "Échec de l'archivage", "sort": "Trier", "confirmDeleteTitle": "Supprimer la note", "leftShare": "Partage retiré", "ideaOrigin": "Origine de l'idée", "noNoteLink": "Idée purement générative", "dismiss": "Pas pertinent", "dismissed": "Note retirée des récentes", "generalNotes": "Notes générales", "noteType": "Type de note", "typeText": "Texte", "typeMarkdown": "Markdown", "typeRichText": "Texte riche", "typeChecklist": "Liste de tâches", "convertedToRichText": "Converti en texte enrichi", "conversionFailed": "Échec de la conversion, reste en Markdown", "richTextPlaceholder": "Prenez une note...", "switchTypeTitle": "Changer le type de note ?", "switchTypeWarning": "Certaines mises en forme peuvent être perdues lors du passage en {type}.", "switchTypeContentPreserved": "Votre contenu sera préservé en texte brut.", "switchType": "Passer en {type}", "saveNow": "Enregistrer maintenant", "backToCollection": "Retour à la collection", "markdownEditingTitle": "Revenir à l'édition", "markdownPreviewTitle": "Aperçu", "brainstormThisIdea": "Brainstormer cette idée", "brainstormThisIdeaAria": "Brainstormer cette idée", "shareNoteTitle": "Partager la note", "shareNoteAria": "Partager la note", "saveNoteAria": "Enregistrer la note", "noChangesToSaveAria": "Aucune modification à enregistrer", "optionsMenuAria": "Menu des options", "deleteNoteConfirmItem": "Supprimer la note", "noteDeletedToast": "Note supprimée.", "deleteNoteFailedToast": "Impossible de supprimer.", "documentInfoAria": "Informations du document", "noModification": "Aucune modification", "notes.emptyNotebook": "Empty notebook", "notes.emptyNotebookDesc": "This notebook has no notes. Click + to create one.", "notes.noNoteSelected": "No note selected", "notes.selectOrCreateNote": "Select a note from the list or create a new one." }, "pagination": { "previous": "←", "pageInfo": "Page {currentPage} sur {totalPages}", "next": "→" }, "labels": { "title": "Étiquettes", "filter": "Filtrer par étiquette", "manage": "Gérer les étiquettes", "manageTooltip": "Gérer les étiquettes", "changeColor": "Changer la couleur", "changeColorTooltip": "Changer la couleur", "delete": "Supprimer", "deleteTooltip": "Supprimer l'étiquette", "confirmDelete": "Êtes-vous sûr de vouloir supprimer cette étiquette ?", "newLabelPlaceholder": "Créer une nouvelle étiquette", "namePlaceholder": "Entrez le nom de l'étiquette", "addLabel": "Ajouter une étiquette", "createLabel": "Créer une étiquette", "labelName": "Nom de l'étiquette", "labelColor": "Couleur de l'étiquette", "manageLabels": "Gérer les étiquettes", "manageLabelsDescription": "Ajouter ou supprimer des étiquettes pour cette note. Cliquez sur une étiquette pour changer sa couleur.", "selectedLabels": "Étiquettes sélectionnées", "allLabels": "Toutes les étiquettes", "clearAll": "Tout effacer", "filterByLabel": "Filtrer par étiquette", "tagAdded": "Étiquette \"{tag}\" ajoutée", "showLess": "Voir moins", "showMore": "Voir plus", "editLabels": "Modifier les étiquettes", "editLabelsDescription": "Créer, modifier les couleurs ou supprimer des étiquettes.", "noLabelsFound": "Aucune étiquette trouvée.", "loading": "Chargement...", "notebookRequired": "⚠️ Les étiquettes sont uniquement disponibles dans les carnets. Déplacez cette note dans un carnet d'abord.", "count": "{count} étiquettes", "noLabels": "Aucune étiquette", "confirmDeleteShort": "Confirmer ?", "labelRemoved": "Étiquette \"{label}\" supprimée" }, "search": { "placeholder": "Rechercher", "searchPlaceholder": "Rechercher dans vos notes...", "semanticInProgress": "Recherche IA en cours...", "semanticTooltip": "Recherche sémantique IA", "searching": "Recherche en cours...", "noResults": "Aucun résultat trouvé", "resultsFound": "{count} notes trouvées", "exactMatch": "Correspondance exacte", "related": "Connexe", "disabledAdmin": "Recherche désactivée en mode admin" }, "collaboration": { "emailPlaceholder": "Entrez l'adresse email", "addCollaborator": "Ajouter un collaborateur", "removeCollaborator": "Supprimer le collaborateur", "owner": "Propriétaire", "canEdit": "Peut modifier", "canView": "Peut voir", "shareNote": "Partager la note", "shareWithCollaborators": "Partager avec les collaborateurs", "addCollaboratorDescription": "Ajoutez des personnes pour collaborer à cette note par leur adresse email.", "viewerDescription": "Vous avez accès à cette note. Seul le propriétaire peut gérer les collaborateurs.", "emailAddress": "Adresse email", "enterEmailAddress": "Entrez l'adresse email", "invite": "Inviter", "peopleWithAccess": "Personnes ayant accès", "noCollaborators": "Aucun collaborateur encore. Ajoutez quelqu'un ci-dessus !", "noCollaboratorsViewer": "Aucun collaborateur encore.", "pendingInvite": "Invitation en attente", "pending": "En attente", "remove": "Supprimer", "unnamedUser": "Utilisateur sans nom", "done": "Terminé", "willBeAdded": "{email} sera ajouté comme collaborateur lorsque la note sera créée", "alreadyInList": "Cet email est déjà dans la liste", "nowHasAccess": "{name} a maintenant accès à cette note", "accessRevoked": "L'accès a été révoqué", "errorLoading": "Erreur lors du chargement des collaborateurs", "failedToAdd": "Échec de l'ajout du collaborateur", "failedToRemove": "Échec de la suppression du collaborateur", "shareCompactTitle": "Partager", "inviteByEmailLabel": "Inviter par e-mail", "accessReadCompact": "Lire", "accessEditCompact": "Éditer", "sendInvitation": "Envoyer l'invitation", "invitationSentBadge": "Invitation envoyée", "sharedAccessLabel": "Accès partagé", "noCollaboratorsEmpty": "Aucun collaborateur pour l'instant.", "removeAccessTitle": "Retirer l'accès", "toastInviteSentTo": "Invitation envoyée à {email}", "toastAccessRemoved": "Accès retiré pour {target}", "toastUserFallback": "l'utilisateur", "toastSharingError": "Erreur lors du partage", "toastEmailNotFound": "Aucun compte trouvé avec cet e-mail.", "toastAlreadySharedUser": "Cette note est déjà partagée avec cet utilisateur.", "toastRemoveAccessFailed": "Impossible de retirer l'accès.", "userFallback": "Utilisateur" }, "ai": { "analyzing": "Analyse IA en cours...", "clickToAddTag": "Cliquer pour ajouter cette étiquette", "ignoreSuggestion": "Ignorer cette suggestion", "generatingTitles": "Génération de titres...", "generateTitlesTooltip": "Générer des titres avec l'IA", "poweredByAI": "Propulsé par l'IA", "languageDetected": "Langue détectée", "processing": "Traitement en cours...", "tagAdded": "Étiquette \"{tag}\" ajoutée", "titleGenerating": "Génération...", "titleGenerateWithAI": "Générer des titres avec l'IA", "titleGenerationMinWords": "Le contenu doit avoir au moins 10 mots pour générer des titres (actuel : {count} mots)", "titleGenerationError": "Erreur lors de la génération des titres", "titlesGenerated": "💡 {count} titres générés !", "titleGenerationFailed": "Échec de la génération des titres", "titleApplied": "Titre appliqué !", "reformulationNoText": "Veuillez sélectionner du texte ou ajouter du contenu", "reformulationSelectionTooShort": "Sélection trop courte, utilisation du contenu complet", "reformulationMinWords": "Le texte doit avoir au moins 10 mots (actuel : {count} mots)", "reformulationMaxWords": "Le texte doit avoir au maximum 500 mots", "reformulationError": "Erreur lors de la reformulation", "reformulationFailed": "Échec de la reformulation du texte", "reformulationApplied": "Texte reformulé appliqué !", "transformMarkdown": "Transformer en Markdown", "transforming": "Transformation...", "transformSuccess": "Texte transformé en Markdown avec succès !", "transformError": "Erreur lors de la transformation", "convertToRichtext": "Convertir en texte enrichi", "convertingToRichtext": "Conversion...", "assistant": "IA Note", "generating": "Génération...", "generateTitles": "Générer des titres", "reformulateText": "Reformuler le texte", "reformulating": "Reformulation...", "clarify": "Clarifier", "shorten": "Raccourcir", "improveStyle": "Améliorer le style", "reformulationComparison": "Comparaison de reformulation", "original": "Original", "reformulated": "Reformulé", "autoLabels": { "error": "Échec de la récupération des suggestions d'étiquettes", "noLabelsSelected": "Aucune étiquette sélectionnée", "created": "{count} étiquettes créées avec succès", "analyzing": "Analyse de vos notes pour les suggestions d'étiquettes...", "title": "Suggestions d'étiquettes", "description": "J'ai détecté des thèmes récurrents dans \"{notebookName}\" ({totalNotes} notes). Créer des étiquettes pour eux ?", "note": "note", "notes": "notes", "typeContent": "Tapez du contenu pour obtenir des suggestions d'étiquettes...", "createNewLabel": "Créer cette nouvelle étiquette et l'ajouter", "new": "(nouveau)", "create": "Créer", "creating": "Création des étiquettes...", "notesCount": "{count} notes", "typeForSuggestions": "Tapez du contenu pour obtenir des suggestions d'étiquettes..." }, "batchOrganization": { "title": "Organiser avec l'IA", "description": "L'IA analysera vos notes et suggérera de les organiser dans des carnets.", "analyzing": "Analyse de vos notes...", "noNotebooks": "Aucun carnet disponible. Créez d'abord des carnets pour organiser vos notes.", "noSuggestions": "L'IA n'a pas trouvé de bonne manière d'organiser ces notes.", "apply": "Appliquer", "applying": "Application...", "success": "{count} notes déplacées avec succès", "error": "Échec de la création du plan d'organisation", "noNotesSelected": "Aucune note sélectionnée", "applyFailed": "Échec de l'application du plan d'organisation", "selectAllIn": "Sélectionner toutes les notes dans {notebook}", "selectNote": "Sélectionner la note : {title}" }, "notebookSummary": { "regenerate": "Régénérer le résumé", "regenerating": "Régénération du résumé...", "exportPDF": "Exporter en PDF" }, "clarifyDesc": "Rendre le propos plus clair et compréhensible", "shortenDesc": "Résumer le texte et aller à l'essentiel", "improve": "Améliorer la rédaction", "improveDesc": "Corriger les fautes et le style", "toMarkdown": "Formater en Markdown", "toMarkdownDesc": "Ajouter des titres, des puces et structurer le texte", "translate": "Traduire", "translateDesc": "Changer la langue du texte", "translateBack": "Retour", "translationApplied": "Traduction appliquée", "translationFailed": "Traduction échouée", "undo": "Annuler IA", "undoAI": "Annuler la transformation IA", "undoApplied": "Texte original restauré", "minWordsError": "La note doit contenir au moins 5 mots pour utiliser les actions IA.", "wordCountMin": "Minimum {min} mots requis ({current} actuels)", "wordCountMax": "Maximum {max} mots autorisés ({current} actuels)", "genericError": "Erreur IA", "actionError": "Erreur lors de l'action IA", "appliedToNote": "Appliqué à la note", "applyToNote": "Appliquer à la note", "undoLastAction": "Annuler la dernière action IA", "selectContext": "Sélectionner le contexte...", "selectNotebook": "Sélectionner un carnet", "chatPlaceholder": "Demandez à l'IA de modifier, résumer ou rédiger...", "assistantTitle": "IA Note", "currentNote": "Note actuelle", "shrinkPanel": "Réduire le panneau", "expandPanel": "Agrandir le panneau", "chatTab": "Discussion", "noteActions": "Actions sur la note", "askToStart": "Posez une question à l'Assistant pour commencer.", "chatPanelContext": "Contexte", "chatPanelNotebookPlus": "+ Carnet", "chatPanelWritingTone": "Ton d'écriture", "scopeAutoBadge": "Auto", "chatNoteQuestionPlaceholder": "Posez votre question sur cette note...", "chatNotebookSelectPlaceholder": "Inclure un carnet...", "assistantTabActions": "Actions", "resourcePreviewAiTitle": "Aperçu IA", "resourcePreviewInjectFromChat": "Injecter depuis Discussion", "contextLabel": "Contexte", "thisNote": "Cette note", "contextSourceHeading": "Source du contexte", "tones": { "professional": "Professionnel", "creative": "Créatif", "academic": "Académique", "casual": "Décontracté" }, "allMyNotes": "Toutes mes notes", "notebookGeneric": "Carnet", "writingTone": "Ton d'écriture", "askAboutThisNote": "Posez une question sur cette note...", "askAboutYourNotes": "Posez une question sur vos notes...", "webSearchLabel": "Recherche web", "newLineHint": "Maj+Entrée = nouvelle ligne", "resultLabel": "Résultat", "discardAction": "Ignorer", "organization": "Organisation", "transformationsDesc": "Transformations — appliquées directement à la note", "writeMinWordsAction": "Écrivez au moins 5 mots pour activer les actions IA.", "processingAction": "Traitement en cours...", "noImagesError": "Aucune image dans cette note", "overview": "Résumé", "action": { "clarify": "Clarifier", "shorten": "Raccourcir", "improve": "Améliorer", "toMarkdown": "Convertir en Markdown", "describeImages": "Décrire les images", "fixGrammar": "Corriger les fautes", "translate": "Traduire", "explain": "Expliquer", "toRichText": "Convertir en texte enrichi" }, "generate": { "slides": "Générer Slides", "sectionLabel": "Outils de Génération", "theme": "Thème", "themeAuto": "Automatique (IA choisit)", "themeArchitecturalMono": "Architectural Mono", "themeVibrantTech": "Tech vibrant", "themeMinimalSilk": "Soie minimaliste", "style": "Style", "styleProfessional": "Professionnel", "styleCreative": "Créatif", "styleBrutalist": "Brutaliste", "template": "Gabarit", "templateAuto": "Auto (l'IA décide)", "templateBoard": "Mise à jour direction", "templateProject": "Statut de projet", "templateStrategy": "Revue stratégique", "templateQuarterly": "Résultats trimestriels", "diagram": "Générer Diagramme", "diagramReadyHint": "Convertir en flux visuel", "diagramType": "Type de Diagramme", "typeAuto": "Détection Auto", "typeFlowchart": "Logigramme", "typeMindMap": "Carte Mentale", "typeTimeline": "Chronologie", "typeOrgChart": "Organigramme", "typeArchitecture": "Architecture", "typeProcessMap": "Processus", "styleSketchy": "Esquisse", "styleSoft": "Doux", "styleMinimal": "Minimaliste", "styleDraft": "Brouillon", "stylePolished": "Poli", "styleHandwritten": "Manuscrit", "diagramReady": "Diagramme prêt !", "openInExcalidraw": "Ouvrir dans le Lab Excalidraw", "insertDiagramInNote": "Insérer PNG dans la note", "diagramImageAlt": "Diagramme généré par IA", "insertedInNote": "Diagramme inséré dans la note", "insertExportError": "Erreur lors de l'export/upload du diagramme" }, "openAssistant": "Ouvrir IA Note", "poweredByMomento": "Propulsé par Momento AI", "welcomeMsg": "Bonjour ! Je suis votre assistant IA. Comment puis-je vous aider avec vos notes ? Je peux affiner le ton, développer un message ou résumer le contenu.", "summaryLast5": "Résumé de vos 5 dernières notes", "analyzingProgress": "Analyse en cours...", "generateInsightsBtn": "Générer des insights", "newDiscussion": "Nouvelle discussion", "noRecentConversations": "Aucune conversation récente.", "discussionContextLabel": "Contexte de discussion", "webSearchNotConfigured": "Recherche web (non configurée)", "historyTab": "Historique", "insightsTab": "Synthèses", "aiCopilot": "Copilote IA", "suggestTitle": "Suggestion de titre IA", "generateTitleFromImage": "Générer un titre à partir de l'image", "titleGenerated": "Titre généré à partir de l'image", "resourceTab": "Ressource", "aiNoteTitle": "IA Note", "injectReplace": "Remplacer", "injectReplaceTitle": "Remplacer le contenu de la note par ce message", "injectComplete": "Compléter", "injectCompleteTitle": "Compléter la note avec ce message (IA)", "injectMerge": "Fusionner", "injectMergeTitle": "Fusionner avec la note (IA)", "imagesCount": "{count} images", "resource": { "failedToLoadUrl": "Impossible de charger cette URL", "pageLoaded": "Page chargée : {title}", "pageLoadError": "Erreur lors du chargement de la page", "pasteOrUrlFirst": "Collez du texte ou chargez une URL d'abord", "enrichError": "Erreur lors de l'enrichissement", "enrichErrorShort": "Erreur enrichissement", "contentApplied": "Contenu appliqué à la note ✓", "fromChat": "💬 Depuis le chat", "replacement": "↓ Remplacement", "completedByAI": "✦ Complété par IA", "mergedByAI": "⟳ Fusionné par IA", "rendered": "Rendu", "cancel": "Annuler", "applyToNote": "Appliquer à la note", "urlLabel": "URL (optionnel)", "resourceText": "Texte de la ressource", "resourcePlaceholder": "Collez votre texte ici (markdown, HTML, texte brut…)", "words": "mots", "integrationMode": "Mode d'intégration", "modeReplace": "Remplacer", "modeReplaceDesc": "Direct, sans IA", "modeComplete": "Compléter", "modeCompleteDesc": "Ajoute sans réécrire", "modeMerge": "Fusionner", "modeMergeDesc": "Réécrit et intègre", "aiProcessing": "IA en cours…", "preview": "Aperçu", "generatePreview": "Générer l'aperçu", "emptyNoteHint": "💡 La note est vide — le contenu de la ressource sera intégré directement." }, "cancel": "Annuler", "copied": "Copié", "copy": "Copier", "transformations": "Transformations", "otherLanguage": "Autre langue", "translateNow": "Traduire maintenant", "generationTools": "Outils de génération", "generateSlidesLoading": "⏳ Génération de la présentation...", "generateDiagramLoading": "⏳ Génération du diagramme...", "generateChartLoading": "⏳ Génération du graphique...", "chart": { "title": "Graphique", "generate": "Générer un graphique", "generateDesc": "Créer une visualisation à partir des données", "type": "Type de graphique", "typeBar": "Barres", "typeBarH": "Barres horizontales", "typeLine": "Ligne", "typeArea": "Aire", "typePie": "Circulaire", "typeRadar": "Radar", "typeFunnel": "Entonnoir", "typeGauge": "Jauge", "autoDetect": "Détection auto", "insertInNote": "Insérer dans la note", "chartReady": "Graphique prêt !", "insertedMessage": "Graphique inséré dans la note", "noDataError": "Aucune donnée trouvée pour créer un graphique", "invalidFormat": "Format de données invalide" }, "errorShort": "Erreur", "readyToast": "Prêt !", "downloadFailedToast": "Échec du téléchargement", "pptxDownloadButton": "Télécharger .pptx", "viewSlidesButton": "Voir la présentation", "presentationReadyBadge": "Présentation prête", "openInLabTitle": "Ouvrir dans le Lab", "inlineSummaryMarkdown": "**Résumé :**", "networkErrorShort": "Erreur réseau.", "featureLocked": "Cette fonctionnalité nécessite le plan PRO ou supérieur.", "quotaExceeded": "Limite mensuelle atteinte. Se réinitialise le mois prochain." }, "titleSuggestions": { "available": "Suggestions de titre", "title": "Suggestions IA", "generating": "Génération en cours...", "selectTitle": "Sélectionnez un titre", "dismiss": "Ignorer" }, "semanticSearch": { "exactMatch": "Correspondance exacte", "related": "Connexe", "searching": "Recherche en cours..." }, "paragraphRefactor": { "title": "Amélioration du texte", "shorten": "Raccourcir", "expand": "Développer", "improve": "Améliorer", "formal": "Formel", "casual": "Décontracté" }, "memoryEcho": { "title": "💡 J'ai remarqué quelque chose...", "description": "Connexions proactives entre vos notes", "dailyInsight": "Aperçu quotidien de vos notes", "insightReady": "Votre aperçu est prêt !", "viewConnection": "Voir la connexion", "helpful": "Utile", "notHelpful": "Pas utile", "dismiss": "Ignorer pour l'instant", "thanksFeedback": "Merci pour votre retour !", "thanksFeedbackImproving": "Merci ! Nous l'utiliserons pour nous améliorer.", "connections": "Connexions", "connection": "connexion", "connectionsBadge": "{count} connexion{plural}", "match": "{percentage}% correspondance", "fused": "Fusionné", "clickToView": "Cliquer pour voir la note →", "overlay": { "title": "Notes connectées", "searchPlaceholder": "Rechercher des connexions...", "sortBy": "Trier par :", "sortSimilarity": "Similarité", "sortRecent": "Récent", "sortOldest": "Plus ancien", "viewAll": "Tout voir côte à côte", "loading": "Chargement...", "noConnections": "Aucune connexion trouvée", "error": "Échec du chargement des connexions" }, "comparison": { "title": "💡 Comparaison de notes", "similarityInfo": "Ces notes sont connectées par {similarity}% de similarité", "highSimilarityInsight": "Ces notes traitent du même sujet avec un fort degré de similarité. Elles pourraient être fusionnées ou consolidées.", "untitled": "Sans titre", "clickToView": "Cliquer pour voir la note", "helpfulQuestion": "Cette comparaison est-elle utile ?", "helpful": "Utile", "notHelpful": "Pas utile" }, "editorSection": { "title": "⚡ Notes connectées ({count})", "loading": "Chargement...", "view": "Voir", "compare": "Comparer", "merge": "Fusionner", "compareAll": "Tout comparer", "mergeAll": "Tout fusionner", "close": "Fermer" }, "fusion": { "title": "🔗 Fusion intelligente", "mergeNotes": "Fusionner {count} note(s)", "notesToMerge": "📝 Notes à fusionner", "optionalPrompt": "💬 Prompt de fusion (optionnel)", "promptPlaceholder": "Instructions optionnelles pour l'IA (ex. : 'Garder le style formel de la note 1')...", "generateFusion": "Générer la fusion", "generating": "Génération...", "previewTitle": "📝 Aperçu de la note fusionnée", "edit": "Modifier", "modify": "Modifier", "finishEditing": "Terminer l'édition", "optionsTitle": "Options de fusion", "archiveOriginals": "Archiver les notes originales", "keepAllTags": "Conserver toutes les étiquettes", "useLatestTitle": "Utiliser la note la plus récente comme titre", "createBacklinks": "Créer un lien vers les notes originales", "cancel": "Annuler", "confirmFusion": "Confirmer la fusion", "success": "Notes fusionnées avec succès !", "error": "Échec de la fusion des notes", "generateError": "Échec de la génération de la fusion", "noContentReturned": "Aucun contenu de fusion retourné par l'API", "unknownDate": "Date inconnue" } }, "notification": { "accept": "Accepter", "accepted": "Partage accepté", "decline": "Refuser", "noNotifications": "Aucune notification", "shared": "a partagé « {title} »", "untitled": "Sans titre", "notifications": "Notifications", "declined": "Partage refusé", "removed": "Note retirée de la liste", "slidesReady": "Présentation prête", "openSlides": "Ouvrir la présentation", "canvasReady": "Diagramme prêt", "pptxReady": "Slides prêts", "downloadPptx": "Télécharger .pptx", "markAllRead": "Tout marquer comme lu", "agentSuccess": "Agent terminé", "agentFailed": "Agent en échec", "brainstormInvite": "Brainstorm", "brainstormJoined": "Brainstorm", "systemNotification": "Système", "downloadFailed": "Échec du téléchargement" }, "nav": { "home": "Accueil", "notes": "Notes", "notebooks": "CARNETS", "generalNotes": "Notes générales", "archive": "Archives", "settings": "Paramètres", "profile": "Profil", "aiSettings": "Paramètres IA", "logout": "Déconnexion", "login": "Connexion", "adminDashboard": "Administration", "diagnostics": "Diagnostics", "trash": "Corbeille", "support": "Soutenir Memento ☕", "reminders": "Rappels", "userManagement": "Gestion des utilisateurs", "accountSettings": "Paramètres du compte", "manageAISettings": "Gérer les paramètres IA", "configureAI": "Configurez vos fonctionnalités IA, votre fournisseur et vos préférences", "supportDevelopment": "Supporter le développement de Memento ☕", "supportDescription": "Memento est 100% gratuit et open-source. Votre soutien aide à le garder ainsi.", "buyMeACoffee": "Offrez-moi un café", "donationDescription": "Faites un don ponctuel ou devenez supporter mensuel.", "donateOnKofi": "Faire un don sur Ko-fi", "donationNote": "Sans frais de plateforme • Paiements instantanés • Sécurisé", "sponsorOnGithub": "Sponsoriser sur GitHub", "sponsorDescription": "Devenez sponsor mensuel et obtenez une reconnaissance.", "workspace": "Espace de travail", "quickAccess": "Accès rapide", "myLibrary": "Ma bibliothèque", "favorites": "Favoris", "recent": "Récent", "proPlan": "Plan Pro", "chat": "Chat IA", "lab": "L'Atelier", "agents": "Agents", "sharedWithMe": "Partagé avec moi" }, "settings": { "title": "Paramètres", "description": "Gérez vos paramètres et préférences", "account": "Compte", "appearance": "Apparence", "theme": "Thème", "themeLight": "Clair", "themeDark": "Sombre", "themeSystem": "Système", "themeBaseGroup": "Affichage", "themePalettesGroup": "Palettes de couleur", "themeSepia": "Sépia", "themeMidnight": "Minuit", "themeRose": "Rose", "themeGreen": "Vert", "themeLavender": "Lavande", "themeSand": "Sable", "themeOcean": "Océan", "themeSunset": "Coucher de soleil", "themeBlue": "Bleu", "notifications": "Notifications", "language": "Langue", "selectLanguage": "Sélectionner une langue", "security": "Sécurité", "about": "À propos", "version": "Version", "settingsSaved": "Paramètres enregistrés avec succès", "cardSizeMode": "Taille des notes", "cardSizeModeDescription": "Choisir entre des notes de tailles différentes ou uniformes", "selectCardSizeMode": "Sélectionner le mode d'affichage", "cardSizeVariable": "Tailles variables (small/medium/large)", "cardSizeUniform": "Taille uniforme", "settingsError": "Erreur lors de la sauvegarde des paramètres", "maintenance": "Maintenance", "maintenanceDescription": "Outils pour maintenir la santé de votre base de données", "cleanTags": "Nettoyer les étiquettes orphelines", "cleanTagsDescription": "Supprimer les étiquettes qui ne sont plus utilisées par aucune note", "cleanupDone": "{created} étiquette(s) synchronisée(s), {deleted} orpheline(s) supprimée(s)", "cleanupNothing": "Aucune action nécessaire — les étiquettes sont déjà alignées avec vos notes", "cleanupWithErrors": "certaines opérations ont échoué", "cleanupError": "Impossible de nettoyer les étiquettes", "indexingComplete": "Indexation terminée : {count} note(s) traitée(s)", "indexingError": "Erreur pendant l’indexation", "semanticIndexing": "Indexation sémantique", "semanticIndexingDescription": "Générer des vecteurs pour toutes les notes afin de permettre la recherche par intention", "profile": "Profil", "searchNoResults": "Aucun paramètre trouvé", "languageAuto": "Langue définie sur Auto", "emailNotifications": "Notifications par email", "emailNotificationsDesc": "Recevoir des notifications importantes par email", "desktopNotifications": "Notifications de bureau", "desktopNotificationsDesc": "Recevoir des alertes sur votre bureau", "notificationsDesc": "Gérez vos préférences de notifications", "autoSave": "Auto-enregistrement", "autoSaveDesc": "Enregistrer automatiquement les modifications pendant la frappe" }, "profile": { "title": "Profil", "description": "Mettez à jour vos informations personnelles", "displayName": "Nom d'affichage", "email": "Courriel", "changePassword": "Changer le mot de passe", "changePasswordDescription": "Mettez à jour votre mot de passe. Vous aurez besoin de votre mot de passe actuel.", "currentPassword": "Mot de passe actuel", "newPassword": "Nouveau mot de passe", "confirmPassword": "Confirmer le mot de passe", "updatePassword": "Mettre à jour le mot de passe", "passwordChangeSuccess": "Mot de passe changé avec succès", "passwordChangeFailed": "Échec du changement de mot de passe", "passwordUpdated": "Mot de passe mis à jour", "passwordError": "Erreur lors de la mise à jour du mot de passe", "languagePreferences": "Préférences linguistiques", "languagePreferencesDescription": "Choisissez votre langue préférée pour les fonctionnalités IA et l'interface.", "preferredLanguage": "Langue préférée", "selectLanguage": "Sélectionner une langue", "languageDescription": "Cette langue sera utilisée pour les fonctionnalités IA, l'analyse de contenu et le texte de l'interface.", "autoDetect": "Détection automatique", "updateSuccess": "Profil mis à jour", "updateFailed": "Échec de la mise à jour du profil", "languageUpdateSuccess": "Langue mise à jour avec succès", "languageUpdateFailed": "Échec de la mise à jour de la langue", "profileUpdated": "Profil mis à jour", "profileError": "Erreur lors de la mise à jour du profil", "accountSettings": "Paramètres du compte", "manageAISettings": "Gérer les paramètres IA", "displaySettings": "Paramètres d'affichage", "displaySettingsDescription": "Personnalisez l'apparence et la taille de la police.", "fontSize": "Taille de la police", "selectFontSize": "Sélectionner la taille de la police", "fontSizeSmall": "Petite", "fontSizeMedium": "Moyenne", "fontSizeLarge": "Grande", "fontSizeExtraLarge": "Très grande", "fontSizeDescription": "Ajustez la taille de la police pour une meilleure lisibilité. Cela s'applique à tout le texte de l'interface.", "fontSizeUpdateSuccess": "Taille de police mise à jour avec succès", "fontSizeUpdateFailed": "Échec de la mise à jour de la taille de police", "showRecentNotes": "Afficher la section Récent", "showRecentNotesDescription": "Afficher les notes récentes (7 derniers jours) sur la page principale", "recentNotesUpdateSuccess": "Paramètre des notes récentes mis à jour avec succès", "recentNotesUpdateFailed": "Échec de la mise à jour du paramètre des notes récentes", "tab": "Profil", "preferences": "Préférences de compte", "desktopNotifications": "Notification bureau", "desktopNotificationsDesc": "Recevez des alertes pour vos rappels et activités IA." }, "aiSettings": { "title": "IA", "description": "Configurez vos fonctionnalités IA et préférences", "features": "Fonctionnalités IA", "provider": "Fournisseur IA", "providerAuto": "Auto (Recommandé)", "providerOllama": "Ollama (local)", "providerOpenAI": "OpenAI (cloud)", "frequency": "Fréquence", "frequencyDaily": "Quotidienne", "frequencyWeekly": "Hebdomadaire", "saving": "Enregistrement...", "saved": "Paramètre mis à jour", "error": "Échec de la mise à jour", "titleSuggestionsDesc": "Suggérer des titres pour les notes sans titre après 50+ mots", "paragraphRefactorDesc": "Options d'amélioration de texte propulsées par l'IA", "frequencyDesc": "Fréquence d'analyse des connexions entre notes", "providerDesc": "Choisissez votre fournisseur IA préféré", "providerAutoDesc": "Ollama si disponible, sinon OpenAI", "providerOllamaDesc": "100% privé, fonctionne localement sur votre machine", "providerOpenAIDesc": "Plus précis, nécessite une clé API", "aiNote": "IA Note", "aiNoteDesc": "Active le bouton de chat IA et les outils d'amélioration du texte", "languageDetection": "Détection de langue", "languageDetectionDesc": "Détecte automatiquement la langue de vos notes", "autoLabeling": "Suggestion des labels", "autoLabelingDesc": "Suggère et applique des étiquettes automatiquement à vos notes", "noteHistory": "Historique des notes", "noteHistoryDesc": "Active les snapshots de versions et la restauration depuis History", "titleSuggestions": "Suggestion de titres" }, "general": { "loading": "Chargement...", "save": "Enregistrer", "cancel": "Annuler", "add": "Ajouter", "edit": "Modifier", "confirm": "Confirmer", "close": "Fermer", "back": "Retour", "next": "Suivant", "previous": "Précédent", "submit": "Soumettre", "reset": "Réinitialiser", "apply": "Appliquer", "clear": "Effacer", "select": "Sélectionner", "tryAgain": "Veuillez réessayer", "error": "Une erreur est survenue", "operationSuccess": "Opération réussie", "operationFailed": "Opération échouée", "testConnection": "Tester la connexion", "clean": "Nettoyer", "indexAll": "Tout indexer", "preview": "Aperçu" }, "colors": { "default": "Défaut", "red": "Rouge", "blue": "Bleu", "green": "Vert", "yellow": "Jaune", "purple": "Violet", "pink": "Rose", "orange": "Orange", "gray": "Gris" }, "reminder": { "title": "Rappel", "setReminder": "Définir un rappel", "removeReminder": "Supprimer le rappel", "reminderDate": "Date du rappel", "reminderTime": "Heure du rappel", "save": "Définir", "cancel": "Annuler" }, "reminders": { "title": "Rappels", "empty": "Aucun rappel", "emptyDescription": "Ajoutez un rappel à une note pour le retrouver ici.", "upcoming": "À venir", "overdue": "En retard", "done": "Terminés", "markDone": "Marquer comme terminé", "markUndone": "Marquer comme non terminé", "todayAt": "Aujourd'hui à {time}", "tomorrowAt": "Demain à {time}", "clearCompleted": "Effacer les terminés", "viewAll": "Voir tous les rappels" }, "notebook": { "create": "Créer un carnet", "createNew": "Créer un nouveau carnet", "createDescription": "Commencez une nouvelle collection pour organiser vos notes, idées et projets efficacement.", "name": "Nom du carnet", "namePlaceholder": "Nom du carnet", "myNotebook": "Mon carnet", "saving": "Enregistrement...", "selectIcon": "Icône", "selectColor": "Couleur", "cancel": "Annuler", "creating": "Création...", "edit": "Modifier le carnet", "editDescription": "Changer le nom, l'icône et la couleur de votre carnet.", "delete": "Supprimer", "deleteWarning": "Êtes-vous sûr de vouloir supprimer ce carnet ? Les notes seront déplacées dans les Notes générales.", "deleteConfirm": "Supprimer", "summary": "Résumé du carnet", "summaryDescription": "Générer un résumé alimenté par l'IA de toutes les notes de ce carnet.", "generating": "Génération du résumé...", "summaryError": "Erreur lors de la génération du résumé", "labels": "Étiquettes :", "noLabels": "Aucune étiquette", "pdfTitle": "Résumé — {name}", "pdfNotesLabel": "Notes :", "pdfGeneratedOn": "Généré le :", "confidence": "confiance", "savingReminder": "Erreur lors de la sauvegarde du rappel", "removingReminder": "Erreur lors de la suppression du rappel", "generatingDescription": "Veuillez patienter...", "pinnedFrozenTooltip": "Carnet figé (ordre des sous-carnets verrouillé)", "organizeNotebookWithAITooltip": "Organiser ce carnet avec l'IA", "assistantRequiredForSummarize": "Activez l'assistant IA dans les paramètres pour résumer", "createSubnotebook": "Ajouter un sous-carnet", "createSubNotebook": "Nouveau sous-carnet…", "rename": "Renommer", "confirmRename": "Renommer" }, "notebookSuggestion": { "title": "Déplacer vers {name} ?", "description": "Cette note semble appartenir à ce carnet", "move": "Déplacer", "dismiss": "Rejeter", "dismissIn": "Rejeter (ferme dans {timeLeft}s)", "moveToNotebook": "Déplacer vers un carnet", "generalNotes": "Notes générales" }, "admin": { "title": "Tableau de bord Admin", "adminConsole": "Console d’administration", "navSection": "Navigation", "backToApp": "Retour à Memento", "userManagement": "Gestion des utilisateurs", "chat": "Chat IA", "lab": "Le Lab", "agents": "Agents", "workspace": "Espace de travail", "settings": "Paramètres administrateur", "security": { "title": "Paramètres de sécurité", "description": "Gérez le contrôle d'accès et les politiques d'inscription.", "allowPublicRegistration": "Autoriser l'inscription publique", "allowPublicRegistrationDescription": "Si désactivé, les nouveaux utilisateurs ne peuvent être ajoutés que par un administrateur via la page de gestion des utilisateurs.", "updateSuccess": "Paramètres de sécurité mis à jour", "updateFailed": "Échec de la mise à jour des paramètres de sécurité" }, "ai": { "title": "Configuration IA", "description": "Configurez les fournisseurs IA pour l'étiquetage auto et la recherche sémantique. Utilisez différents fournisseurs pour des performances optimales.", "tagsGenerationProvider": "Fournisseur de génération d'étiquettes", "tagsGenerationDescription": "Fournisseur IA pour les suggestions d'étiquettes. Recommandé : Ollama (gratuit, local).", "embeddingsProvider": "Fournisseur d'embeddings", "embeddingsDescription": "Fournisseur IA pour la recherche sémantique. Recommandé : OpenAI (meilleure qualité).", "chatProvider": "Fournisseur de chat", "chatDescription": "Fournisseur IA pour l'assistant chat. Utilise le fournisseur d'étiquettes si non configuré.", "provider": "Fournisseur", "baseUrl": "URL de base", "model": "Modèle", "apiKey": "Clé API", "selectOllamaModel": "Sélectionnez un modèle Ollama installé localement", "openAIKeyDescription": "Votre clé API OpenAI depuis platform.openai.com", "modelRecommendations": "gpt-4o-mini = Meilleur rapport qualité/prix • gpt-4o = Meilleure qualité", "commonModelsDescription": "Modèles courants pour API compatibles OpenAI", "selectEmbeddingModel": "Sélectionnez un modèle d'embedding installé localement", "commonEmbeddingModels": "Modèles d'embeddings courants pour API compatibles OpenAI", "saving": "Enregistrement...", "saveSettings": "Enregistrer les paramètres IA", "openTestPanel": "Ouvrir le panneau de test IA", "updateSuccess": "Paramètres IA mis à jour avec succès", "updateFailed": "Échec de la mise à jour des paramètres IA", "providerTagsRequired": "AI_PROVIDER_TAGS est requis", "providerEmbeddingRequired": "AI_PROVIDER_EMBEDDING est requis", "providerOllamaOption": "🦙 Ollama (Local & Gratuit)", "providerOpenAIOption": "🤖 OpenAI (GPT-5, GPT-4)", "providerAnthropicOption": "🧠 Anthropic (API Claude)", "providerAnthropicCustomOption": "🧩 Anthropic personnalisé (API Messages — MiniMax, etc.)", "anthropicModelHint": "Choisissez un identifiant Claude parmi les suggestions ou saisissez-en un (pas de liste distante pour l’API officielle).", "anthropicCustomModelHint": "API Messages compatible Anthropic (ex. MiniMax) : URL de base https://api.minimax.io/anthropic (Chine : https://api.minimaxi.com/anthropic), modèle MiniMax-M2.7. Pour les embeddings, utilisez le fournisseur « Personnalisé » avec l’URL OpenAI https://api.minimax.io/v1.", "anthropicCustomNoModelList": "Cette passerelle n’expose pas de liste /models style OpenAI — choisissez le modèle dans les suggestions ou saisissez-le (ex. MiniMax-M2.7).", "providerCustomOption": "🔧 Custom Compatible OpenAI", "providerDeepSeekOption": "🔍 DeepSeek", "providerOpenRouterOption": "🌐 OpenRouter", "providerMistralOption": "🌀 Mistral AI", "providerZAIOption": "✨ Z.AI", "providerLMStudioOption": "🖥️ LM Studio (local)", "bestValue": "Meilleur rapport qualité/prix", "bestQuality": "Meilleure qualité", "fallbackSectionTitle": "Fournisseur de secours (optionnel)", "fallbackSectionDescription": "Utilisé automatiquement en cas d'erreur fournisseur (429, 5xx). Un seul nouvel essai sous 1,5 s.", "fallbackProvider": "Fournisseur de secours", "fallbackModel": "Modèle de secours", "fallbackNone": "Aucun (désactivé)", "fallbackModelPlaceholder": "ex. gpt-4o-mini", "saved": "(Enregistré)", "fetchModelsFailed": "Échec du chargement des modèles", "refreshModels": "Rafraîchir les modèles", "configured": "Configuré", "fetchingModels": "Chargement des modèles...", "clickToLoadModels": "Cliquez ↺ pour charger les modèles", "searchModel": "Rechercher un modèle...", "noModels": "Aucun modèle. Cliquez ↺", "modelsAvailable": "{count} modèle(s) disponible(s)", "enterUrlToLoad": "Entrez l'URL et cliquez ↺ pour charger les modèles", "currentProvider": "(Actuel : {provider})", "pageTitle": "Gestion IA", "pageDescription": "Surveillez et configurez les fonctionnalités IA", "configure": "Configurer", "features": "Fonctionnalités IA", "providerStatus": "État des fournisseurs IA", "recentRequests": "Requêtes IA récentes", "comingSoon": "Bientôt disponible", "activeFeatures": "Fonctionnalités actives", "successRate": "Taux de réussite", "avgResponseTime": "Temps de réponse moyen", "configuredProviders": "Fournisseurs configurés", "settingUpdated": "Paramètre mis à jour", "updateFailedShort": "Échec de la mise à jour", "titleSuggestions": "Suggestions de titre", "titleSuggestionsDesc": "Suggère des titres pour les notes après 50+ mots", "aiAssistant": "IA Note", "aiAssistantDesc": "Activer le chat IA et les outils d'amélioration de texte", "memoryEchoFeature": "J'ai remarqué quelque chose...", "memoryEchoFeatureDesc": "Analyse quotidienne des connexions entre vos notes", "languageDetection": "Détection de langue", "languageDetectionDesc": "Détecte automatiquement la langue de chaque note", "autoLabeling": "Étiquetage automatique", "autoLabelingDesc": "Suggère et applique des étiquettes automatiquement", "dimensionMismatch": "Incompatibilité de dimensions d'embedding détectée", "dimensionMismatchDetail": "Colonne base de données : vector({{dbDimension}}) — Le modèle produit : {{modelDimension}} dimensions", "dimensionMismatchAction": "Les embeddings ne fonctionneront pas tant que vous ne migrez pas la colonne. Cela effacera tous les embeddings existants et les ré-indexera.", "migrateButton": "Migrer & Ré-indexer", "migrating": "Migration en cours..." }, "resend": { "title": "Resend (Recommandé)", "description": "Envoyez des emails via l'API Resend. Prioritaire sur SMTP si configuré.", "apiKey": "Clé API Resend", "apiKeyHint": "Obtenez votre clé API sur resend.com. Utilisée pour les notifications d'agents et les réinitialisations de mot de passe.", "saveSettings": "Enregistrer les paramètres Resend", "updateSuccess": "Paramètres Resend mis à jour", "updateFailed": "Échec de la mise à jour des paramètres Resend", "configured": "Resend est configuré et actif" }, "email": { "title": "Configuration Email", "description": "Configurez l'envoi d'emails pour les notifications d'agents et les réinitialisations de mot de passe.", "provider": "Fournisseur Email", "saveSettings": "Enregistrer les paramètres", "status": "État des services", "keySet": "clé configurée", "activeAuto": "Mode auto : Resend sera utilisé en priorité, SMTP en secours.", "activeSmtp": "Mode auto : SMTP sera utilisé (Resend non configuré).", "noneConfigured": "Aucun service email configuré. Configurez Resend ou SMTP.", "activeProvider": "Fournisseur actif", "testOk": "test réussi", "testFail": "test échoué" }, "smtp": { "title": "Configuration SMTP", "description": "Configurez le serveur email pour les réinitialisations de mot de passe. Utilisé si Resend n'est pas configuré.", "host": "Hôte", "port": "Port", "username": "Nom d'utilisateur", "password": "Mot de passe", "fromEmail": "Email d'expédition", "forceSSL": "Forcer SSL/TLS (généralement pour le port 465)", "ignoreCertErrors": "Ignorer les erreurs de certificat (Auto-hébergé/Dev uniquement)", "saveSettings": "Enregistrer les paramètres SMTP", "sending": "Envoi en cours...", "testEmail": "Email de test", "updateSuccess": "Paramètres SMTP mis à jour", "updateFailed": "Échec de la mise à jour des paramètres SMTP", "testSuccess": "Email de test envoyé avec succès !", "testFailed": "Échec : {error}" }, "users": { "createUser": "Créer un utilisateur", "addUser": "Ajouter un utilisateur", "createUserDescription": "Ajouter un nouvel utilisateur au système.", "name": "Nom", "email": "Courriel", "password": "Mot de passe", "role": "Rôle", "createSuccess": "Utilisateur créé avec succès", "createFailed": "Échec de la création de l'utilisateur", "deleteSuccess": "Utilisateur supprimé", "deleteFailed": "Échec de la suppression", "roleUpdateSuccess": "Rôle de l'utilisateur mis à jour à {role}", "roleUpdateFailed": "Échec de la mise à jour du rôle", "tierUpdateSuccess": "Abonnement mis à jour à {tier}", "tierUpdateFailed": "Échec de la mise à jour de l'abonnement", "demote": "Rétrograder en utilisateur", "promote": "Promouvoir en admin", "confirmDelete": "Êtes-vous sûr ? Cette action est irréversible.", "table": { "name": "Nom", "email": "Courriel", "role": "Rôle", "subscription": "Abonnement", "createdAt": "Créé le", "actions": "Actions" }, "roles": { "user": "Utilisateur", "admin": "Administrateur" }, "title": "Utilisateurs", "description": "Gérer les utilisateurs et les permissions" }, "aiTest": { "title": "Test des fournisseurs IA", "description": "Testez vos fournisseurs IA pour la génération d'étiquettes et les embeddings de recherche sémantique", "tagsTestTitle": "Test de génération d'étiquettes", "tagsTestDescription": "Testez le fournisseur IA responsable des suggestions d'étiquettes automatiques", "embeddingsTestTitle": "Test d'embeddings", "embeddingsTestDescription": "Testez le fournisseur IA responsable des embeddings de recherche sémantique", "howItWorksTitle": "Fonctionnement des tests", "tagsGenerationTest": "🏷️ Test de génération d'étiquettes :", "tagsStep1": "Envoie une note exemple au fournisseur IA", "tagsStep2": "Demande 3-5 étiquettes pertinentes basées sur le contenu", "tagsStep3": "Affiche les étiquettes générées avec les scores de confiance", "tagsStep4": "Mesure le temps de réponse", "embeddingsTestLabel": "🔍 Test d'embeddings :", "embeddingsStep1": "Envoie un texte exemple au fournisseur d'embeddings", "embeddingsStep2": "Génère une représentation vectorielle (liste de nombres)", "embeddingsStep3": "Affiche les dimensions de l'embedding et des exemples de valeurs", "embeddingsStep4": "Vérifie que le vecteur est valide et correctement formaté", "tipContent": "Vous pouvez utiliser différents fournisseurs pour les étiquettes et les embeddings ! Par exemple, utilisez Ollama (gratuit) pour les étiquettes et OpenAI (meilleure qualité) pour les embeddings afin d'optimiser les coûts et les performances.", "provider": "Fournisseur :", "model": "Modèle :", "testing": "Test en cours...", "runTest": "Lancer le test", "testPassed": "Test réussi", "testFailed": "Test échoué", "testSuccessToast": "Test {type} réussi !", "testFailedToast": "Test {type} échoué", "testingType": "Test de {type} en cours...", "technicalDetails": "Détails techniques", "responseTime": "Temps de réponse : {time}ms", "generatedTags": "Étiquettes générées :", "embeddingDimensions": "Dimensions de l'embedding :", "vectorDimensions": "dimensions vectorielles", "first5Values": "5 premières valeurs :", "error": "Erreur :", "testError": "Erreur de test : {error}", "tipTitle": "Astuce :", "tipDescription": "Utilisez le panneau de test IA pour diagnostiquer les problèmes de configuration avant de tester.", "chatTestTitle": "Test de chat assistant", "chatTestDescription": "Testez le fournisseur IA responsable de l'assistant de discussion", "chatGenerationTest": "💬 Test de chat assistant :", "chatStep1": "Envoie un message de test à l'assistant", "chatStep2": "Demande une réponse concise sur le rôle de l'IA", "chatStep3": "Affiche la réponse générée par le modèle", "chatStep4": "Vérifie la fluidité et le temps de réponse" }, "sidebar": { "dashboard": "Tableau de bord", "users": "Utilisateurs", "aiManagement": "Gestion IA", "chat": "Chat IA", "lab": "Le Lab (Idées)", "agents": "Agents", "settings": "Paramètres" }, "metrics": { "vsLastPeriod": "vs période précédente" }, "tools": { "title": "Outils Agents", "description": "Configurer les outils externes pour le tool-use des agents : recherche web, scraping et accès API.", "searchProvider": "Fournisseur de recherche web", "searxng": "SearXNG (Auto-hébergé)", "brave": "API Brave Search", "both": "Les deux (SearXNG principal, Brave secours)", "searxngUrl": "URL SearXNG", "braveKey": "Clé API Brave Search", "jinaKey": "Clé API Jina Reader", "jinaKeyOptional": "Optionnel — fonctionne sans mais avec des limites", "jinaKeyDescription": "Utilisée pour le scraping web. Fonctionne sans clé mais avec des limites de débit.", "saveSettings": "Enregistrer les paramètres outils", "updateSuccess": "Paramètres outils mis à jour avec succès", "updateFailed": "Échec de la mise à jour des paramètres outils", "testing": "Test en cours...", "testSearch": "Test recherche web" }, "settingsDescription": "Configurer les paramètres de l'application", "dashboard": { "title": "Tableau de bord", "description": "Vue d'ensemble des métriques de l'application", "recentActivity": "Activité récente", "recentActivityPlaceholder": "L'activité récente sera affichée ici." }, "error": { "title": "Une erreur s'est produite dans le panneau d'administration", "description": "Cette page n'a pas pu être affichée. Vous pouvez réessayer sans recharger.", "retry": "Réessayer" } }, "about": { "title": "À propos", "description": "Informations sur l'application", "appName": "Memento", "appDescription": "Une application de prise de notes puissante avec des fonctionnalités IA", "version": "Version", "buildDate": "Date de build", "platform": "Plateforme", "platformWeb": "Web", "features": { "title": "Fonctionnalités", "description": "Capacités alimentées par l'IA", "titleSuggestions": "Suggestions de titre alimentées par l'IA", "semanticSearch": "Recherche sémantique avec embeddings", "paragraphReformulation": "Reformulation de paragraphes", "memoryEcho": "Perspectives quotidiennes Memory Echo", "notebookOrganization": "Organisation en carnets", "dragDrop": "Gestion des notes par glisser-déposer", "labelSystem": "Système d'étiquettes", "multipleProviders": "Plusieurs fournisseurs IA (OpenAI, Ollama)" }, "technology": { "title": "Stack technologique", "description": "Construit avec des technologies modernes", "frontend": "Front-end", "backend": "Back-end", "database": "Base de données", "authentication": "Authentification", "ai": "IA", "ui": "Interface", "testing": "Tests" }, "support": { "title": "Soutien", "description": "Obtenez de l'aide et donnez votre avis", "documentation": "Documentation", "reportIssues": "Signaler des problèmes", "feedback": "Commentaires" }, "tab": "À propos" }, "support": { "title": "Supporter le développement de Memento", "description": "Memento est 100% gratuit et open-source. Votre soutien aide à le garder ainsi.", "buyMeACoffee": "Offrez-moi un café", "donationDescription": "Faites un don ponctuel ou devenez supporter mensuel.", "donateOnKofi": "Faire un don sur Ko-fi", "kofiDescription": "Sans frais de plateforme • Paiements instantanés • Sécurisé", "sponsorOnGithub": "Sponsoriser sur GitHub", "sponsorDescription": "Devenez sponsor mensuel et obtenez une reconnaissance.", "githubDescription": "Support récurrent • Reconnaissance publique • Axé développeurs", "howSupportHelps": "Comment votre soutien aide", "directImpact": "Impact direct", "sponsorPerks": "Avantages sponsors", "transparency": "Transparence", "transparencyDescription": "Je crois en une transparence totale. Voici comment les dons sont utilisés :", "hostingServers": "Hébergement et serveurs :", "domainSSL": "Domaine et SSL :", "aiApiCosts": "Coûts API IA :", "totalExpenses": "Total des dépenses :", "otherWaysTitle": "Autres façons de soutenir", "starGithub": "Étoiler sur GitHub", "reportBug": "Signaler un bug", "contributeCode": "Contribuer au code", "shareTwitter": "Partager sur Twitter" }, "demoMode": { "title": "Mode Démo", "activated": "Mode Démo activé ! Memory Echo fonctionnera maintenant instantanément.", "deactivated": "Mode Démo désactivé. Paramètres normaux restaurés.", "toggleFailed": "Échec du basculement du mode démo", "description": "Accélère Memory Echo pour les tests. Les connexions apparaissent instantanément.", "parametersActive": "Paramètres démo actifs :", "similarityThreshold": "Seuil de similarité de 50% (normalement 75%)", "delayBetweenNotes": "Délai de 0 jour entre les notes (normalement 7 jours)", "unlimitedInsights": "Perspectives illimitées (pas de limites de fréquence)", "createNotesTip": "Créez 2+ notes similaires et voyez Memory Echo en action !" }, "resetPassword": { "title": "Réinitialiser le mot de passe", "description": "Entrez votre nouveau mot de passe ci-dessous.", "invalidLinkTitle": "Lien invalide", "invalidLinkDescription": "Ce lien de réinitialisation de mot de passe est invalide ou a expiré.", "requestNewLink": "Demander un nouveau lien", "newPassword": "Nouveau mot de passe", "confirmNewPassword": "Confirmer le nouveau mot de passe", "resetting": "Réinitialisation...", "resetPassword": "Réinitialiser le mot de passe", "passwordMismatch": "Les mots de passe ne correspondent pas", "success": "Mot de passe réinitialisé avec succès. Vous pouvez maintenant vous connecter.", "loading": "Chargement..." }, "dataManagement": { "title": "Données", "toolsDescription": "Outils pour maintenir la santé de votre base de données", "exporting": "Exportation...", "importing": "Importation...", "deleting": "Suppression...", "dangerZone": "Zone de danger", "dangerZoneDescription": "Supprimer définitivement vos données", "indexingComplete": "Indexation terminée : {count} notes traitées", "indexingError": "Erreur lors de l'indexation", "cleanupComplete": "Nettoyage terminé : {created} créés, {deleted} supprimés", "cleanupError": "Erreur lors du nettoyage", "export": { "title": "Exporter toutes les notes", "description": "Télécharger toutes vos notes au format JSON. Inclut tout le contenu, les étiquettes et les métadonnées.", "button": "Exporter les notes", "success": "Notes exportées avec succès", "failed": "Échec de l'exportation des notes" }, "import": { "title": "Importer des notes", "description": "Téléchargez un fichier JSON pour importer des notes. Les notes seront ajoutées aux existantes, pas remplacées.", "button": "Importer des notes", "success": "{count} notes importées", "failed": "Échec de l'importation des notes" }, "delete": { "title": "Supprimer toutes les notes", "description": "Supprimer définitivement toutes vos notes. Cette action est irréversible.", "button": "Supprimer toutes les notes", "confirm": "Êtes-vous sûr ? Cette action supprimera définitivement toutes vos notes.", "success": "Toutes les notes ont été supprimées", "failed": "Échec de la suppression des notes" }, "indexing": { "title": "Reconstruire l'index de recherche", "description": "Régénérer les embeddings pour toutes les notes afin d'améliorer la recherche sémantique.", "button": "Reconstruire l'index", "success": "Indexation terminée : {count} notes traitées", "failed": "Erreur lors de l'indexation" }, "cleanup": { "title": "Nettoyer les données orphelines", "description": "Supprimer les étiquettes et connexions qui référencent des notes supprimées.", "button": "Nettoyer", "failed": "Erreur lors du nettoyage" } }, "appearance": { "title": "Apparence", "description": "Personnalisez l'interface", "notesViewDescription": "Choisissez comment afficher les notes sur l'accueil et dans les carnets.", "notesViewLabel": "Affichage des notes", "notesViewTabs": "Onglets (type OneNote)", "notesViewMasonry": "Cartes (grille)", "notesViewList": "Liste (magazine)", "selectTheme": "Choisissez votre thème", "fontFamilyLabel": "Police", "fontFamilyDescription": "Choisissez la police de l'application", "selectFontFamily": "Inter est optimisé pour la lisibilité, Système utilise la police native de votre système d'exploitation", "fontSystem": "Système", "fontInterDefault": "Inter (par défaut)", "fontPlayfairDisplay": "Playfair Display", "fontJetBrainsMono": "JetBrains Mono", "tab": "Apparence", "accentColorTitle": "Couleur d'activation", "accentColorDescription": "Définissez la couleur principale de votre espace de travail" }, "usageMeter": { "packName": "Pack découverte IA", "featureSearch": "Recherche", "featureTags": "Étiquettes", "featureTitles": "Titres", "unlimited": "Illimité", "remaining": "{count} restants", "upgradeTitle": "Passer à Pro", "upgradeDescription": "Vous avez utilisé tous les crédits du pack découverte IA. Passez à Pro pour des plafonds plus élevés et des fonctionnalités supplémentaires.", "proIncludes": "Pro inclut :", "proSearch": "100 recherches sémantiques / mois", "proTags": "200 étiquettes auto / mois", "proTitles": "200 titres auto / mois", "proReformulate": "50 reformulations / mois", "proChat": "100 messages de chat / mois", "later": "Plus tard", "upgradePricing": "Passer à Pro", "addApiKey": "Utiliser votre propre clé API (BYOK)", "featureReformulate": "Reformulations", "featureChat": "Messages IA", "featureBrainstormCreate": "Créations brainstorm", "featureBrainstormExpand": "Extensions brainstorm", "featureBrainstormEnrich": "Enrichissements brainstorm" }, "generalSettings": { "title": "Généraux", "description": "Paramètres généraux de l'application" }, "toast": { "saved": "Paramètre enregistré", "saveFailed": "Échec de l'enregistrement du paramètre", "operationSuccess": "Opération réussie", "operationFailed": "Opération échouée", "openingConnection": "Ouverture de la connexion...", "openConnectionFailed": "Échec de l'ouverture de la connexion", "thanksFeedback": "Merci pour votre feedback !", "thanksFeedbackImproving": "Merci ! Nous l'utiliserons pour nous améliorer.", "feedbackFailed": "Échec de l'envoi du feedback", "notesFusionSuccess": "Notes fusionnées avec succès !" }, "testPages": { "titleSuggestions": { "title": "Test des suggestions de titre", "contentLabel": "Contenu (besoin de 50+ mots) :", "placeholder": "Tapez au moins 50 mots ici...", "wordCount": "Nombre de mots :", "status": "Statut :", "analyzing": "Analyse...", "idle": "Inactif", "error": "Erreur :", "suggestions": "Suggestions ({count}) :", "noSuggestions": "Pas encore de suggestions. Tapez 50+ mots et attendez 2 secondes." } }, "trash": { "title": "Corbeille", "empty": "La corbeille est vide", "emptyDescription": "Les éléments supprimés apparaîtront ici. Ils sont conservés pendant 30 jours avant suppression définitive.", "restore": "Restaurer", "deletePermanently": "Supprimer définitivement", "noteTrashed": "Note déplacée dans la corbeille", "noteRestored": "Note restaurée", "notePermanentlyDeleted": "Note supprimée définitivement", "emptyTrash": "Vider la corbeille", "emptyTrashConfirm": "Vider la corbeille ? Cette action est irréversible.", "emptyTrashSuccess": "Corbeille vidée", "permanentDelete": "Supprimer définitivement", "permanentDeleteConfirm": "Cette note sera supprimée définitivement. Cette action est irréversible.", "restoreSuccess": "Restauration réussie", "restoreError": "Échec de la restauration", "permanentDeleteSuccess": "Suppression définitive", "deleteError": "Échec de la suppression", "daysRemaining": "JOURS RESTANTS", "notebookContentPreserved": "Contenu du carnet préservé", "notebookRestoreHint": "La restauration d'un carnet restaure également toutes ses notes.", "filterAll": "Tous" }, "footer": { "privacy": "Confidentialité", "terms": "Conditions", "openSource": "Clone Open Source" }, "connection": { "similarityInfo": "Ces notes sont connectées par {similarity}% de similarité", "clickToView": "Cliquer pour voir la note", "isHelpful": "Cette connexion est-elle utile ?", "helpful": "Utile", "notHelpful": "Pas utile", "memoryEchoDiscovery": "Découverte Memory Echo" }, "diagnostics": { "title": "Diagnostics", "description": "Vérifiez l'état de la connexion de votre fournisseur IA", "configuredProvider": "Fournisseur configuré", "apiStatus": "Statut de l'API", "operational": "Opérationnel", "errorStatus": "Erreur", "checking": "Vérification...", "testDetails": "Détails du test :", "troubleshootingTitle": "Conseils de dépannage :", "tip1": "Assurez-vous qu'Ollama fonctionne (ollama serve)", "tip2": "Vérifiez que le modèle est installé (ollama pull llama3)", "tip3": "Vérifiez votre clé API pour OpenAI", "tip4": "Vérifiez la connectivité réseau" }, "batch": { "organizeWithAI": "Organiser avec l'IA", "organize": "Organiser" }, "organizeNotebook": { "title": "Organiser le carnet", "unknownError": "Erreur inconnue", "toastSuccess": "Carnet organisé — {created} sous-carnet(s) créé(s), {moved} note(s) déplacée(s)", "intro": "L'IA va analyser les notes de ce carnet et vous proposer un plan de réorganisation en sous-carnets thématiques.", "bulletThemes": "Regroupement par sujet ou thème", "bulletSubfolders": "Création de sous-carnets manquants", "bulletPreview": "Aperçu complet avant modification", "analyzingTitle": "Analyse en cours…", "analyzingSubtitle": "L'IA lit vos notes et identifie les thèmes", "previewSummary": "{groups} groupe(s) · {notes} note(s) · {newSubs} nouveau(x) sous-carnet(s)", "badgeNew": "Nouveau", "untitledNote": "Note sans titre", "notesInGroup": "{count} note(s)", "executingTitle": "Organisation en cours…", "executingSubtitle": "Création des sous-carnets et déplacement des notes", "doneTitle": "Carnet organisé !", "doneStats": "{created} sous-carnet(s) créé(s) · {moved} note(s) déplacée(s)", "analyzeButton": "Analyser avec l'IA", "restart": "Recommencer", "confirm": "Valider", "closeButton": "Fermer" }, "documentInfo": { "tabInfo": "Infos", "tabVersions": "Versions", "wordsLabel": "mots", "charactersLabel": "caractères", "notebookLabel": "Carnet", "typeLabel": "Type", "createdLabel": "Créée le", "modifiedLabel": "Modifiée", "labelsSection": "Étiquettes", "idLabel": "ID", "historyDisabled": "L'historique n'est pas activé pour cette note.", "enableHistory": "Activer l'historique", "savedVersions": "Versions sauvegardées", "savingEllipsis": "Sauvegarde…", "versionSaved": "Version sauvegardée !", "saveThisVersion": "Sauvegarder cette version", "loading": "Chargement...", "noVersion": "Aucune version", "restoreTooltip": "Restaurer", "deleteTooltip": "Supprimer", "comparisonMode": "Mode comparaison", "comparisonSubtitle": "Comparer les versions côte à côte", "deleteVersionConfirm": "Supprimer cette version ?", "latestBadge": "Récent" }, "languages": { "targets": { "french": "Français", "english": "Anglais", "spanish": "Espagnol", "german": "Allemand", "persian": "Persan", "portuguese": "Portugais", "italian": "Italien", "chinese": "Chinois", "japanese": "Japonais" }, "customPlaceholder": "ex. : Arabe, Russe…", "autoDetect": "Détection auto", "en": "English", "fr": "Français", "es": "Español", "de": "Deutsch", "fa": "فارسی", "it": "Italiano", "pt": "Português", "ru": "Русский", "zh": "中文", "ja": "日本語", "ko": "한국어", "ar": "العربية", "hi": "हिन्दी", "nl": "Nederlands", "pl": "Polski" }, "common": { "unknown": "Inconnu", "notAvailable": "N/D", "loading": "Chargement...", "error": "Erreur", "success": "Succès", "confirm": "Confirmer", "cancel": "Annuler", "close": "Fermer", "save": "Enregistrer", "delete": "Supprimer", "edit": "Modifier", "add": "Ajouter", "remove": "Supprimer", "search": "Rechercher...", "noResults": "Aucune note trouvée", "required": "Requis", "optional": "Optionnel" }, "time": { "justNow": "à l'instant", "minutesAgo": "il y a {count}m", "hoursAgo": "il y a {count}h", "daysAgo": "il y a {count}j", "yesterday": "Hier", "today": "Aujourd'hui", "tomorrow": "Demain" }, "favorites": { "title": "Favoris", "toggleSection": "Basculer la section des notes épinglées", "noFavorites": "Aucune note épinglée encore", "pinToFavorite": "Épinglez une note pour l'ajouter aux favoris" }, "notebooks": { "create": "Créer un carnet", "allNotebooks": "Tous les carnets", "noNotebooks": "Aucun carnet encore", "createFirst": "Créez votre premier carnet" }, "ui": { "close": "Fermer", "open": "Ouvrir", "expand": "Développer", "collapse": "Réduire" }, "mcpSettings": { "title": "MCP", "description": "Gérez vos clés API et configurez les outils externes", "whatIsMcp": { "title": "Qu'est-ce que MCP ?", "description": "Le Model Context Protocol (MCP) est un protocole ouvert qui permet aux modèles IA d'interagir de manière sécurisée avec des outils et sources de données externes. Avec MCP, vous pouvez connecter des outils comme Claude Code, Cursor ou N8N à votre instance Memento pour lire, créer et organiser vos notes par programmation.", "learnMore": "En savoir plus sur MCP" }, "serverStatus": { "title": "État du serveur", "running": "En cours", "stopped": "Arrêté", "mode": "Mode", "url": "URL" }, "apiKeys": { "title": "Clés API", "description": "Les clés API permettent aux outils externes d'accéder à vos notes via MCP. Gardez vos clés secrètes.", "generate": "Générer une nouvelle clé", "empty": "Aucune clé API. Générez-en une pour commencer.", "active": "Actif", "revoked": "Révoquée", "revoke": "Révoquer", "delete": "Supprimer", "createdAt": "Créée le", "lastUsed": "Dernière utilisation", "never": "Jamais", "confirmRevoke": "Êtes-vous sûr de vouloir révoquer cette clé ? Les outils qui l'utilisent perdront leur accès.", "confirmDelete": "Êtes-vous sûr de vouloir supprimer définitivement cette clé ?" }, "createDialog": { "title": "Générer une clé API", "description": "Créez une nouvelle clé API pour connecter des outils externes à vos notes.", "nameLabel": "Nom de la clé", "namePlaceholder": "ex. Claude Code, Cursor, N8N", "generating": "Génération...", "generate": "Générer", "successTitle": "Clé API générée", "successDescription": "Copiez votre clé API maintenant. Vous ne pourrez plus la voir ensuite.", "copy": "Copier", "copied": "Copiée !", "done": "Terminé" }, "configInstructions": { "title": "Instructions de configuration", "description": "Utilisez votre clé API pour configurer ces outils.", "claudeCode": { "title": "Claude Code", "description": "Ajoutez ceci à votre fichier de configuration MCP de Claude Code :" }, "cursor": { "title": "Cursor", "description": "Ajoutez ceci à vos paramètres MCP de Cursor :" }, "n8n": { "title": "N8N", "description": "Utilisez ces identifiants dans votre nœud MCP N8N :" } } }, "agents": { "title": "Agents", "subtitle": "Automatisez vos tâches de veille et de recherche", "newAgent": "Nouvel Agent", "myAgents": "Mes Agents", "searchPlaceholder": "Rechercher un agent...", "filterAll": "Tous", "newBadge": "Nouveau", "noResults": "Aucun agent ne correspond à votre recherche.", "noAgents": "Aucun agent", "noAgentsDescription": "Créez votre premier agent ou installez un template ci-dessous pour automatiser vos tâches de veille.", "types": { "scraper": "Veilleur", "researcher": "Chercheur", "monitor": "Surveillant", "slideGenerator": "Diaporamas", "excalidrawGenerator": "Diagramme", "custom": "Personnalisé" }, "typeDescriptions": { "scraper": "Scrape plusieurs sites et crée un résumé", "researcher": "Recherche des informations sur un sujet", "monitor": "Surveille un carnet et analyse les notes", "slideGenerator": "Crée une présentation PowerPoint à partir de notes", "excalidrawGenerator": "Crée un diagramme Excalidraw à partir de notes", "custom": "Agent libre avec votre propre prompt" }, "form": { "agentType": "Type d'agent", "name": "Nom", "namePlaceholder": "Ex : Veille IA du mardi", "description": "Description (optionnel)", "descriptionPlaceholder": "Résumé hebdo des actus IA", "urlsLabel": "URLs à scraper", "urlsOptional": "(optionnel)", "sourceNotebook": "Carnet à surveiller", "selectNotebook": "Sélectionner un carnet...", "selectNotes": "Notes à analyser", "notesSelected": "{{count}} note(s) sélectionnée(s)", "slideTheme": "Thème de la présentation", "slideThemeDefault": "Automatique", "slideThemes": { "modern_wellness": "Moderne & bien-être", "business_authority": "Affaires & autorité", "nature_outdoors": "Nature & plein air", "vintage_academic": "Vintage & académique", "soft_creative": "Doux & créatif", "bohemian": "Bohème", "vibrant_tech": "Éclat & tech", "craft_artisan": "Artisan & fait main", "tech_night": "Tech & nuit (sombre)", "education_charts": "Éducation & graphiques", "forest_eco": "Forêt & éco", "elegant_fashion": "Élégance & mode", "art_food": "Art & gastronomie", "luxury_mystery": "Luxe & mystère", "pure_tech_blue": "Bleu tech pur", "coastal_coral": "Corail côtier", "vibrant_orange_mint": "Orange vif & menthe", "platinum_white_gold": "Platine blanc & or" }, "slideStyle": "Style visuel", "slideStyleSoft": "Doux (recommandé)", "slideStyleSharp": "Net & dense", "slideStyleRounded": "Arrondi & aéré", "slideStylePill": "Premium / Pilule", "excalidrawDiagramType": "Type de diagramme", "excalidrawDiagramTypeAuto": "Auto (détection métier)", "excalidrawDiagramTypeFlowchart": "Flowchart (processus)", "excalidrawDiagramTypeMindmap": "Mindmap (idées)", "excalidrawDiagramTypeOrgChart": "Organigramme (équipes)", "excalidrawDiagramTypeTimeline": "Chronologie / feuille de route", "excalidrawDiagramTypeProcessMap": "Process map (opérations)", "excalidrawDiagramTypeArchitectureCloud": "Architecture cloud (zones/RG)", "excalidrawDiagramStyle": "Style du diagramme Excalidraw", "excalidrawDiagramStyleDefault": "Coloré (Excalidraw)", "excalidrawDiagramStyleSketchPlus": "Sketch+ (Excalidraw accentué)", "excalidrawDiagramStyleAustere": "Austère (sobre)", "targetNotebook": "Carnet cible", "inbox": "Boîte de réception", "instructions": "Instructions IA", "instructionsPlaceholder": "Décrivez le comportement de l'agent...", "frequency": "Fréquence", "cancel": "Annuler", "saving": "Sauvegarde...", "save": "Sauvegarder", "create": "Créer l'agent", "editTitle": "Modifier l'agent", "createTitle": "Nouvel agent", "nameRequired": "Le nom est requis", "addUrl": "Ajouter une URL", "advancedMode": "Mode avancé", "instructionsHint": "remplace le prompt automatique", "researchTopic": "Sujet de recherche", "researchTopicPlaceholder": "ex: Les dernières avancées en intelligence artificielle", "notifyEmail": "Notification par email", "notifyEmailHint": "Recevez un email avec les résultats de l'agent après chaque exécution", "includeImages": "Inclure les images", "includeImagesHint": "Extraire les images des pages scrapées et les joindre à la note générée", "back": "Retour", "configuration": "Configuration", "options": "Options" }, "frequencies": { "manual": "Manuel", "hourly": "Toutes les heures", "daily": "Quotidien", "weekly": "Hebdomadaire", "monthly": "Mensuel" }, "schedule": { "nextRun": "Prochaine exécution", "pending": "En attente de déclenchement", "time": "Heure", "dayOfWeek": "Jour de la semaine", "dayOfMonth": "Jour du mois", "days": { "mon": "Lundi", "tue": "Mardi", "wed": "Mercredi", "thu": "Jeudi", "fri": "Vendredi", "sat": "Samedi", "sun": "Dimanche" } }, "status": { "success": "Réussi", "failure": "Échoué", "running": "En cours", "pending": "En attente", "nextRun": "Prochaine exécution", "lastStatus": "Dernier statut" }, "actions": { "edit": "Modifier", "run": "Exécuter", "delete": "Supprimer", "deleteConfirm": "Supprimer l'agent \"{name}\" ?", "toggleOn": "Agent activé", "toggleOff": "Agent désactivé" }, "toasts": { "created": "Agent créé", "updated": "Agent mis à jour", "deleted": "\"{name}\" supprimé", "deleteError": "Erreur lors de la suppression", "running": "Génération en cours…", "runningDesc": "La génération peut prendre quelques minutes. Vous pouvez naviguer.", "runSuccess": "\"{name}\" exécuté avec succès", "runError": "Erreur : {error}", "runFailed": "Exécution échouée", "runGenericError": "Erreur lors de l'exécution", "toggleError": "Erreur lors du changement", "installSuccess": "\"{name}\" installé", "installError": "Erreur lors de l'installation", "saveError": "Erreur lors de la sauvegarde", "autoRunSuccess": "L'agent \"{name}\" s'est exécuté automatiquement avec succès", "autoRunError": "L'agent \"{name}\" a échoué lors de l'exécution automatique" }, "templates": { "title": "Modèles", "install": "Installer", "installing": "Installation...", "veilleAI": { "name": "Veille IA", "description": "Scrape les flux RSS de 6 sites IA (The Verge, TechCrunch, Ars Technica, MIT Tech Review, WIRED, Korben) et génère un résumé hebdomadaire." }, "veilleTech": { "name": "Veille Tech", "description": "Scrape les flux RSS tech (Hacker News, DEV, Product Hunt) et crée un résumé quotidien." }, "veilleDev": { "name": "Veille Dev", "description": "Scrape les flux RSS dev (JavaScript, TypeScript, React) et résume les nouvelles techs." }, "surveillant": { "name": "Surveillant de Notes", "description": "Analyse les notes récentes d'un carnet et suggère des compléments, références et liens." }, "chercheur": { "name": "Chercheur de Sujet", "description": "Recherche des informations approfondies sur un sujet et crée une note structurée avec références." }, "slideGenerator": { "name": "Générateur de Slides", "description": "Lit les notes d'un carnet et génère une présentation structurée automatiquement." }, "excalidrawGenerator": { "name": "Générateur de Diagrammes", "description": "Lit une note et génère un diagramme visuel dans le Lab Excalidraw." } }, "runLog": { "title": "Historique", "noHistory": "Aucune exécution pour le moment", "toolTrace": "{count} appels d'outils", "step": "Étape {num}", "clearConfirm": "Voulez-vous vraiment supprimer tout l'historique de cet agent ?", "cleared": "Historique supprimé", "clearHistory": "Supprimer l'historique" }, "tools": { "title": "Outils de l'agent", "webSearch": "Recherche web", "webScrape": "Scraping web", "noteSearch": "Recherche notes", "noteRead": "Lire une note", "noteCreate": "Créer une note", "urlFetch": "Requête URL", "memorySearch": "Mémoire", "generatePptx": "Slides PPTX", "generateSlides": "Slides HTML", "generateExcalidraw": "Diagramme Excalidraw", "configNeeded": "Configuration requise", "selected": "{count} sélectionné(s)", "maxSteps": "Itérations max" }, "metadata": { "executions": "{count} exéc." }, "defaultRoles": { "scraper": "Tu es un assistant de veille. Ton rôle est de synthétiser des articles provenant de différents sites web en un résumé clair, structuré et utile en français. Utilise des titres de section, des listes à puces et des phrases concises.", "researcher": "Tu es un chercheur rigoureux. Pour le sujet demandé, produit une note de recherche avec : contexte, points clés, débats, références. Réponds en français.", "monitor": "Tu es un assistant analytique. Analyse les notes fournies et pour chaque thème détecté, propose : des pistes d'approfondissement, des références ou articles à lire, des connexions entre les notes. Réponds en français.", "custom": "Tu es un assistant utile. Réponds en français.", "slideGenerator": "Tu es un créateur de présentations. Lis le contenu fourni et crée des slides structurées avec titres, points clés et résumés. Réponds en français.", "excalidrawGenerator": "Tu es un créateur de diagrammes. Analyse le contenu fourni et crée un diagramme visuel clair et organisé. Réponds en français." }, "help": { "title": "Guide des Agents", "btnLabel": "Aide", "close": "Fermer", "whatIsAgent": "Qu'est-ce qu'un agent ?", "whatIsAgentContent": "Un **agent** est un assistant IA qui travaille automatiquement pour vous. Il dispose d'**outils** (recherche web, scraping de pages, lecture de notes...) et produit une **note** avec ses résultats.\n\nImaginez-le comme un petit travailleur autonome : vous lui confiez une mission, il recherche ou extrait des informations, puis rédige une note structurée que vous pourrez lire ensuite.\n\nLes agents répondent dans votre langue (français ou anglais) en fonction de vos paramètres.", "howToUse": "Comment utiliser un agent ?", "howToUseContent": "1. Cliquez sur **\"Nouvel Agent\"** (ou commencez par un **Template** en bas de page)\n2. Choisissez un **type d'agent** (Chercheur, Veilleur, Surveillant, Personnalise)\n3. Donnez-lui un **nom** et remplissez les champs specifiques au type\n4. Choisissez optionnellement un **carnet cible** ou sauvegarder les resultats\n5. Selectionnez une **frequence** (Manuel = vous le lancez vous-meme)\n6. Cliquez sur **Creer**, puis appuyez sur le bouton **Executer** sur la carte de l'agent\n7. Une fois termine, une nouvelle note apparait dans votre carnet cible", "types": "Types d'agents", "typesContent": "### Chercheur\nRecherche le web sur un **sujet que vous definissez** et cree une note structuree avec des sources et references.\n\n- **Champs :** nom, sujet de recherche (ex : \"Dernieres avancees en intelligence artificielle\")\n- **Outils par defaut :** recherche web, scraping web, recherche de notes, creation de note\n- **Prerequis :** un fournisseur de recherche web doit etre configure (SearXNG ou Brave Search)\n\n### Veilleur (Scraper)\nScrape une **liste d'URLs** que vous spécifiez et produit un résumé de leur contenu.\n\n- **Champs :** nom, liste d'URLs (sites web ou flux RSS)\n- **Outils par défaut :** scraping web, création de note\n- **Astuce RSS :** Utilisez des URLs de flux RSS (ex: `site.com/feed`) pour scraper automatiquement les articles individuels au lieu des pages de liste\n- **Cas d'usage :** veille hebdomadaire tech, surveillance de concurrents, revue de blogs\n\n### Surveillant (Observateur de carnet)\nLit les notes d'un **carnet que vous selectionnez** et produit une analyse, des connexions et des suggestions.\n\n- **Champs :** nom, carnet source (celui a analyser)\n- **Outils par defaut :** recherche de notes, lecture de note, creation de note\n- **Cas d'usage :** trouver des connexions entre vos notes, obtenir des suggestions de lecture, detecter des themes recurrents\n\n### Personnalise\nUne toile vierge : vous ecrivez votre propre **prompt** et choisissez vos **outils**.\n\n- **Champs :** nom, description, instructions personnalisees (en mode avance)\n- **Aucun outil par defaut** — vous choisissez exactement ce dont l'agent a besoin\n- **Cas d'usage :** tout projet creatif ou specifique qui ne rentre pas dans les autres types", "advanced": "Mode avance (Instructions IA, Iterations max)", "advancedContent": "Cliquez sur **\"Mode avance\"** en bas du formulaire pour acceder aux reglages supplementaires.\n\n### Instructions IA\n\nCe champ vous permet de **remplacer le prompt systeme par defaut** de l'agent. Si vous le laissez vide, l'agent utilise un prompt automatique adapte a son type.\n\n**Pourquoi l'utiliser ?** Vous voulez controler exactement le comportement de l'agent. Par exemple :\n- \"Redige le resume en anglais, meme si les sources sont en francais\"\n- \"Structure la note avec les sections : Contexte, Points cles, Opinion personnelle\"\n- \"Ignore les articles de plus de 30 jours et concentre-toi sur l'actualite recente\"\n- \"Pour chaque theme detecte, propose 3 pistes d'approfondissement avec des liens\"\n\n> **Note :** Vos instructions remplacent celles par defaut, pas qu'elles s'y ajoutent.\n\n### Iterations max\n\nC'est le **nombre maximum de cycles** que l'agent peut effectuer. Un cycle = l'agent reflechit, appelle un outil, lit le resultat, puis decide de la prochaine action.\n\n- **3-5 iterations :** pour des taches simples (scraping d'une seule page)\n- **10 iterations (defaut) :** bon equilibre pour la plupart des cas\n- **15-25 iterations :** pour des recherches profondes ou l'agent doit explorer plusieurs pistes\n\n> **Attention :** Plus d'iterations = plus de temps et potentiellement plus de couts API.", "tools": "Outils disponibles (detail complet)", "toolsContent": "Quand le mode avance est active, vous pouvez choisir precisement quels outils l'agent peut utiliser.\n\n### Recherche web\nPermet a l'agent de **lancer des recherches sur internet** via SearXNG ou Brave Search.\n\n- **Ce que ca fait :** L'agent formule une requete, obtient des resultats de recherche, et peut ensuite scraper les pages les plus pertinentes.\n- **Quand l'activer :** Quand l'agent doit trouver des informations sur un sujet (type Chercheur ou Personnalise).\n- **Configuration requise :** SearXNG (avec format JSON active) ou une cle API Brave Search. Configurable dans **Admin > Outils Agents**.\n- **Exemple :** L'agent cherche \"React Server Components best practices 2025\" et obtient 10 resultats, puis scrape les 3 plus pertinents.\n\n### Scraping web\nPermet à l'agent d'**extraire le contenu texte d'une page web** à partir de son URL.\n\n- **Ce que ça fait :** L'agent visite une URL et récupère le texte structuré de la page (titres, paragraphes, listes). Les publicités, menus et pieds de page sont généralement filtrés.\n- **Support RSS/Atom :** Si l'URL est un flux RSS, l'outil détecte automatiquement le flux, parse les articles et scrape les 5 derniers individuellement. Utilisez des URLs de flux RSS pour un contenu beaucoup plus riche que les pages de listing.\n- **Quand l'activer :** Pour le type Veilleur (obligatoire), ou tout agent qui doit lire des pages web.\n- **Configuration :** Fonctionne sans configuration, mais une **clé API Jina Reader** améliore la qualité et supprime les limites de débit. Configurable dans **Admin > Outils Agents**.\n- **Exemple :** L'agent scrape le flux RSS de `techcrunch.com/feed/` et récupère les 5 derniers articles complets.\n\n### Recherche de notes\nPermet a l'agent de **chercher dans vos notes existantes**.\n\n- **Ce que ca fait :** L'agent effectue une recherche textuelle dans toutes vos notes (ou celles d'un carnet specifique).\n- **Quand l'activer :** Pour les agents de type Surveillant, ou tout agent qui doit croiser des informations avec vos notes.\n- **Configuration :** Aucune — fonctionne immediatement.\n- **Exemple :** L'agent cherche toutes les notes contenant \"machine learning\" pour voir ce que vous avez deja ecrit sur le sujet.\n\n### Lire une note\nPermet a l'agent de **lire le contenu complet d'une note** specifique.\n\n- **Ce que ca fait :** Apres avoir trouve une note (via Recherche de notes), l'agent peut lire son contenu integral pour l'analyser ou l'utiliser.\n- **Quand l'activer :** En complement de Recherche de notes. Activer les deux ensemble permet a l'agent de chercher PUIS lire.\n- **Configuration :** Aucune.\n- **Exemple :** L'agent trouve 5 notes sur \"productivite\", les lit toutes, et redige une synthese.\n\n### Creer une note\nPermet a l'agent d'**ecrire une nouvelle note** dans votre carnet cible.\n\n- **Ce que ca fait :** L'agent cree une note avec un titre et du contenu. C'est ainsi que les resultats arrivent dans vos carnets.\n- **Quand l'activer :** Presque toujours — sans cet outil, l'agent ne peut pas sauvegarder ses resultats. **Laissez-le active par defaut.**\n- **Configuration :** Aucune.\n- **Exemple :** L'agent cree une note \"Veille Tech - Semaine 16\" avec un resume de 5 articles.\n\n### Fetch URL\nPermet a l'agent de **telecharger le contenu brut d'une URL** (HTML, JSON, texte...).\n\n- **Ce que ca fait :** Contrairement au scraping qui extrait le texte proprement, Fetch URL recupere le contenu brut. Utile pour les API, les fichiers JSON, ou les pages non standard.\n- **Quand l'activer :** Quand l'agent doit interroger des API REST, lire des flux RSS, ou acceder a des donnees brutes.\n- **Configuration :** Aucune.\n- **Exemple :** L'agent interroge l'API GitHub pour lister les derniers commits d'un projet.\n\n### Memoire\nPermet a l'agent d'**acceder a l'historique de ses executions precedentes**.\n\n- **Ce que ca fait :** L'agent peut rechercher dans les resultats de ses runs passes. Cela lui permet de comparer, de suivre des evolutions, ou de ne pas repeter les memes informations.\n- **Quand l'activer :** Pour les agents qui s'executent regulierement et doivent maintenir une continuite entre les executions.\n- **Configuration :** Aucune.\n- **Exemple :** L'agent compare les actus de cette semaine avec celles de la semaine derniere et met en evidence les nouveautes.", "frequency": "Frequence & planification", "frequencyContent": "| Frequence | Comportement\n|-----------|------------\n| **Manuel** | Vous cliquez sur \"Executer\" — aucune planification automatique\n| **Toutes les heures** | S'execute toutes les heures\n| **Quotidien** | S'execute une fois par jour\n| **Hebdomadaire** | S'execute une fois par semaine\n| **Mensuel** | S'execute une fois par mois\n\n> **Astuce :** Commencez par \"Manuel\" pour tester votre agent, puis passez a une frequence automatique une fois satisfait.", "targetNotebook": "Carnet cible", "targetNotebookContent": "Quand un agent termine sa tache, il **cree une note**. Le **carnet cible** determine ou elle va :\n\n- **Boite de reception** (defaut) — la note va dans vos notes generales\n- **Carnet specifique** — choisissez un carnet pour garder les resultats organises\n\n> **Astuce :** Creez un carnet dedie comme \"Rapports d'agents\" pour centraliser tout le contenu automatise.", "templates": "Modèles", "templatesContent": "Les templates sont des agents pré-configurés installables en un clic. Vous les trouvez en **bas de la page Agents**.\n\nTemplates disponibles :\n\n- **Veille IA** — revue hebdomadaire via les flux RSS de 6 sites IA (The Verge, TechCrunch, Ars Technica, MIT Tech Review, WIRED, Korben)\n- **Veille Tech** — résumé quotidien via les flux RSS de Hacker News, DEV Community, Product Hunt\n- **Veille Dev** — nouvelles technos via les flux RSS de DEV (JavaScript, TypeScript, React)\n- **Surveillant de Notes** — analyse un carnet et suggère des connexions\n- **Chercheur de Sujet** — recherche approfondie sur un sujet spécifique\n\nLes templates sont installés avec les outils adaptés à leur type. Vous pouvez les modifier après installation.", "tips": "Conseils & depannage", "tipsContent": "- **Commencez par un template** et personnalisez-le — c'est le moyen le plus rapide d'obtenir un agent fonctionnel\n- **Testez en \"Manuel\"** avant d'activer la planification automatique\n- **Utilisez des URLs de flux RSS** au lieu des pages de liste pour un contenu beaucoup plus riche (ex: `techcrunch.com/feed/` au lieu de `techcrunch.com/category/ai/`)\n- **Un agent \"Chercheur\" nécessite un fournisseur de recherche web** — configurez SearXNG (format JSON) ou Brave Search dans **Admin > Outils Agents**\n- **Si un agent échoue**, cliquez sur sa carte puis **Historique** pour voir le journal d'exécution et les traces d'outils\n- **Le bouton Activer/Désactiver** permet de mettre en pause un agent sans le supprimer\n- **La qualité du scraping web** s'améliore avec une clé API Jina Reader (optionnel, dans Admin > Outils Agents)\n- **Combinez \"Recherche de notes\" + \"Lire une note\"** pour que l'agent puisse chercher ET analyser le contenu de vos notes\n- **Activez \"Mémoire\"** si votre agent tourne régulièrement — il évitera de répéter les mêmes informations d'une exécution à l'autre\n- **Les agents répondent dans votre langue** — basculez entre français et anglais dans les paramètres", "tooltips": { "agentType": "Choisissez le type de tâche que l'agent effectuera. Chaque type a des capacités et des champs différents.", "researchTopic": "Le sujet que l'agent recherchera sur le web. Soyez précis pour de meilleurs résultats.", "description": "Une courte description de ce que fait cet agent. Vous aide à vous souvenir de son objectif.", "urls": "Liste des URLs à scraper. Supporte les flux RSS — utilisez les URLs de flux pour un contenu plus riche (ex: site.com/feed).", "sourceNotebook": "Le carnet que l'agent analysera. Il lit les notes de ce carnet pour trouver des connexions et des thèmes.", "targetNotebook": "Où la note résultat de l'agent sera sauvegardée. Choisissez Boîte de réception ou un carnet spécifique.", "frequency": "À quelle fréquence l'agent s'exécute automatiquement. Commencez par Manuel pour tester.", "instructions": "Instructions personnalisées qui remplacent le prompt IA par défaut. Laissez vide pour utiliser le prompt automatique.", "tools": "Sélectionnez les outils que l'agent peut utiliser. Chaque outil donne une capacité spécifique à l'agent.", "maxSteps": "Nombre maximum de cycles de raisonnement. Plus d'étapes = analyse plus approfondie mais plus long.", "selectNotes": "Sélectionnez les notes spécifiques à analyser. Si aucune n'est sélectionnée, l'agent utilisera toutes les notes du carnet.", "slideTheme": "Choisissez une palette de couleurs pour la présentation. Automatique laisse l'IA choisir.", "slideStyle": "Le style visuel affecte les coins arrondis, l'espacement et la densité d'information." } } }, "chat": { "title": "Chat IA", "subtitle": "Discutez avec vos notes et vos agents IA", "newConversation": "Nouvelle discussion", "noHistory": "Aucun historique", "untitled": "Discussion sans titre", "deleteConfirm": "Supprimer cette discussion ?", "yes": "Oui", "placeholder": "Envoyez un message à l'assistant...", "allNotebooks": "Tous les carnets", "inAllNotebooks": "Dans tous les carnets", "active": "ACTIF", "disclaimer": "L'IA peut faire des erreurs. Vérifiez les informations importantes.", "assistantError": "Erreur assistant", "loadError": "Erreur lors du chargement de la discussion", "createError": "Erreur lors de la création de la conversation", "deleteError": "Erreur lors de la suppression", "renamed": "Discussion renommée", "renameError": "Erreur lors du renommage", "welcome": "Je suis à votre écoute pour synthétiser vos notes, générer de nouvelles idées ou discuter de vos carnets.", "searching": "Recherche en cours...", "noNotesFoundForContext": "Aucune note pertinente trouvée pour cette question. Réponds avec tes connaissances générales.", "webSearch": "Recherche web", "timeoutWarning": "La réponse met plus de temps que prévu...", "quotaExceededBasic": "Le chat IA est réservé au plan PRO et supérieur.", "quotaExceededTier": "Limite mensuelle atteinte pour le plan {tier}. Elle se réinitialise le mois prochain." }, "labHeader": { "title": "L'Atelier", "live": "Direct", "currentProject": "Projet Actuel", "choose": "Choisir...", "yourSpaces": "Vos Espaces", "updated": "Mis à jour", "newSpace": "Nouvel Espace de Pensée", "new": "Nouveau", "renamed": "Espace renommé", "renameError": "Erreur lors du renommage", "created": "Nouvel espace créé", "createFailed": "Échec de la création", "deleteSpace": "Supprimer l'espace", "deleted": "Espace supprimé", "deleteError": "Erreur lors de la suppression", "rename": "Renommer" }, "lab": { "initializing": "Initialisation de l'espace de travail", "loadingIdeas": "Chargement de vos idées..." }, "richTextEditor": { "slashHint": "↑↓ naviguer · Entrée insérer · Tab changer de section", "slashLoading": "IA Note réfléchit...", "slashTabAll": "Tout", "slashCatBasic": "Blocs de base", "slashCatMedia": "Médias", "slashCatFormatting": "Mise en forme", "slashCatAi": "IA Note", "insertImage": "Insérer une image", "imageUrlPlaceholder": "https://exemple.com/image.png", "preview": "Aperçu", "cancel": "Annuler", "insert": "Insérer", "slashText": "Texte", "slashTextDesc": "Paragraphe simple", "slashH1": "Titre 1", "slashH1Desc": "Grand titre de section", "slashH2": "Titre 2", "slashH2Desc": "Titre de section moyen", "slashH3": "Titre 3", "slashH3Desc": "Petit titre de section", "slashBullet": "Liste à puces", "slashBulletDesc": "Liste non ordonnée", "slashNumbered": "Liste numérotée", "slashNumberedDesc": "Liste ordonnée numérotée", "slashTodo": "Liste de tâches", "slashTodoDesc": "Cases à cocher pour les tâches", "slashQuote": "Citation", "slashQuoteDesc": "Capturer une citation", "slashCode": "Bloc de code", "slashCodeDesc": "Extrait de code", "slashDivider": "Séparateur", "slashDividerDesc": "Séparateur horizontal", "slashTable": "Tableau", "slashTableDesc": "Insérer un tableau simple", "slashDiagram": "Diagramme", "slashDiagramDesc": "Générer un flux ou une carte mentale", "slashSlides": "Présentation", "slashSlidesDesc": "Générer un jeu de diapositives", "slashImage": "Image", "slashImageDesc": "Intégrer une image depuis une URL", "slashAlignLeft": "Aligner à gauche", "slashAlignLeftDesc": "Aligner le texte à gauche", "slashAlignCenter": "Centrer", "slashAlignCenterDesc": "Centrer le texte", "slashAlignRight": "Aligner à droite", "slashAlignRightDesc": "Aligner le texte à droite", "slashSuperscript": "Exposant", "slashSuperscriptDesc": "Sélectionner du texte d'abord", "slashSubscript": "Indice", "slashSubscriptDesc": "Sélectionner du texte d'abord", "slashClarify": "Clarifier", "slashClarifyDesc": "Rendre le texte plus clair", "slashShorten": "Raccourcir", "slashShortenDesc": "Condenser le texte", "slashImprove": "Améliorer", "slashImproveDesc": "Améliorer le style", "slashExpand": "Développer", "slashExpandDesc": "Élaborer et enrichir le texte", "imageModalTitle": "Insérer une image", "imageModalPreview": "Aperçu", "imageModalCancel": "Annuler", "imageModalInsert": "Insérer", "imageModalInvalidUrl": "Veuillez entrer une URL valide", "imageModalLoadFailed": "Échec du chargement de l'image", "linkPlaceholder": "Collez ou tapez un lien...", "bold": "Gras", "italic": "Italique", "underline": "Souligné", "strike": "Barré", "code": "Code", "highlight": "Surligner", "superscript": "Exposant", "subscript": "Indice", "addBlock": "Ajouter un bloc", "placeholder": "Tapez '/' pour voir les commandes...", "aiReformulateFailed": "L'assistant IA n'a pas pu traiter ce texte. Réessayez.", "translateTargets": { "Francais": "Français", "English": "Anglais", "Espanol": "Espagnol", "Deutsch": "Allemand", "Persan": "Persan", "Portugais": "Portugais", "Italiano": "Italien", "Chinois": "Chinois", "Japonais": "Japonais" } }, "brainstorm": { "title": "Vagues de pensée", "subtitle": "Déployer les dimensions du potentiel", "placeholder": "Entrez un concept à explorer...", "generating": "L'IA récolte des graines de pensée...", "newBrainstorm": "Nouveau brainstorm", "noSessions": "Pas encore de brainstorms", "startOne": "Commencer", "sessions": "Sessions de brainstorming", "seedLabel": "Idée source", "ideaPromptDetailed": "Saisissez votre idée, question ou sujet pour le brainstorming...", "brainstormThisIdea": "Brainstormer cette idée", "startBrainstorm": "Lancer le brainstorm", "spatialMode": "Mode exploration spatiale", "wave1": "Vague 1", "wave2": "Vague 2", "wave3": "Vague 3", "export": "Exporter", "exporting": "Export...", "wave": "Vague", "novelty": "Originalité", "originConnection": "Lien avec l'origine", "linkedNotes": "Notes liées", "deepen": "Creuser", "deepening": "Génération...", "extract": "Créer une note", "converting": "Conversion...", "dismiss": "Pas pertinent", "noteCreated": "Note créée", "ideas": "idées", "cancel": "Annuler", "delete": "Supprimer", "ideaOrigin": "Origine de l'idée", "noNoteLink": "Idée purement générative", "derived_from": "Dérivé de", "opposes": "En opposition avec", "extends": "Étend", "synthesizes": "Synthétise", "transposes": "Transpose", "none_found": "Aucun lien", "viewNote": "Voir la note", "addIdea": "Ajouter une idée", "manualIdeaPrompt": "Titre de votre idée :", "invite": "Inviter", "linkCopied": "Lien d'invitation copié !", "activityTitle": "Activité", "noActivity": "Pas encore d'activité", "justNow": "à l'instant", "humanIdea": "Humain", "aiIdea": "IA", "respondsTo": "Répond à", "adding": "Ajout...", "manualIdeaDesc": "Partagez votre idée sur le canvas", "manualIdeaTitle": "Titre", "manualIdeaTitlePlaceholder": "Votre idée en quelques mots...", "manualIdeaDescLabel": "Description (optionnel)", "manualIdeaDescPlaceholder": "Développez votre idée...", "activity": { "manual_idea": "a ajouté une idée", "wave_generated": "a généré une vague", "joined": "a rejoint la session", "idea_dismissed": "a écarté une idée", "invite_created": "a créé une invitation" }, "shareDialogTitle": "Partager le brainstorm", "shareSearchLabel": "Rechercher une personne", "shareNameOrEmailPlaceholder": "Nom ou email…", "shareSubmit": "Partager", "shareSubmitting": "Envoi…", "shareFooterHint": "La personne recevra une notification pour accepter ou refuser.", "sharePublicLink": "Lien public", "shareGuestsCanEdit": "Autoriser les invités à modifier", "feedbackInviteSent": "Invitation envoyée !", "feedbackInviteResent": "Invitation renvoyée !", "feedbackAlreadyShared": "Cette personne a déjà accès à ce brainstorm.", "feedbackAlreadyPending": "Une invitation est déjà en attente pour cette personne.", "feedbackGenericError": "Erreur", "unnamedPerson": "Sans nom", "canvasEditTitleReply": "Réponse", "canvasEditTitleNewIdea": "Nouvelle idée", "canvasPlaceholderReply": "Votre réponse…", "canvasPlaceholderIdea": "Votre idée…", "canvasShortcutSave": "enregistrer", "canvasShortcutCancel": "annuler", "canvasChildBranch": "enfant", "canvasDoubleClickHint": "Double-clic pour ajouter une idée", "ideaDetailDescription": "Description", "ideaDetailConnection": "Connexion", "ideaDetailNovelty": "Originalité", "ideaDetailWave": "Vague", "waveFlavorVariation": "Variation", "waveFlavorAnalogy": "Analogie", "waveFlavorDisruption": "Disruption", "liveCollaborationTitle": "Collaboration en direct", "liveStatus": "En direct", "liveYouMarker": "(vous)", "liveOtherParticipants": "{count} autres participants", "guestReadOnlyNotice": "Vous consultez ce brainstorm en tant qu'invité. Connectez-vous pour modifier.", "impactNotesEnriched": "{count} note(s) enrichie(s)", "impactNotesMarkedDry": "{count} note(s) marquée(s) sèche(s)", "impactSeparator": " · ", "exportNotebookPrefix": "Carnet :", "playbackStep": "Étape {current}/{total}", "playbackStepsCount": "{count} étapes", "playbackReturnToLive": "Revenir au direct", "canvasWaitingHint": "Le canevas attend votre étincelle…", "seedNodeBadge": "GRAINE", "originalSeedDescription": "Idée source initiale", "convertedToNoteStatus": "Convertie en note", "quotaGuest": "L'hôte de la session a atteint sa limite d'IA. Demandez-lui de mettre à niveau son forfait.", "quotaHost": "Vous avez atteint votre limite d'IA pour ce brainstorm. Passez à un forfait supérieur pour continuer.", "toastExpandSuccess": "Idées élargies !", "toastExpandFailed": "Échec de l'élargissement", "toastDismissSuccess": "Idée écartée", "toastDismissFailed": "Échec de l'écartement", "toastConvertSuccess": "Idée convertie en note !", "toastConvertFailed": "Échec de la conversion", "toastExportNoteSuccess": "Exportée en note !", "toastExportFailed": "Échec de l'export", "legendSeed": "Graine", "legendVariations": "Variations", "legendAnalogies": "Analogies", "legendDisruptions": "Ruptures", "exportFailedMessage": "Échec de l'export", "exportDefaultNotebookName": "Brainstorm", "exportDefaultNoteTitle": "Synthèse", "exportOpening": "Ouverture…", "ownerBadge": "Propriétaire", "waveBadge": "Vague {wave}", "exampleSeed1": "Comment simplifier ma routine matinale ?", "exampleSeed2": "Idées pour un projet créatif ce weekend", "exampleSeed3": "Systèmes pour mieux gérer mon énergie", "exampleSeed4": "Ce que j'ai appris cette semaine", "summarize": "Synthèse IA", "summaryError": "Impossible de générer la synthèse", "regenerateSummary": "Regénérer", "exportAsNote": "Exporter en note", "exportModalTitle": "Bilan de session", "viewCanvas": "Canevas", "viewList": "Liste", "ideasCount": "idées", "star": "Mettre en favori", "unstar": "Retirer des favoris", "renameSession": "Renommer la session" }, "byokSettings": { "title": "Vos clés API (BYOK)", "description": "Connectez vos propres clés fournisseur pour contourner les quotas du pack Découverte. Les clés sont chiffrées au repos.", "badgeActive": "BYOK actif", "tierRequired": "Le BYOK nécessite un abonnement Pro ou supérieur.", "provider": "Fournisseur", "providerPlaceholder": "Choisir un fournisseur", "alias": "Libellé (optionnel)", "aliasPlaceholder": "ex. OpenAI pro", "apiKey": "Clé API", "apiKeyPlaceholder": "sk-...", "save": "Enregistrer la clé", "saved": "Clé API enregistrée", "deleted": "Clé API supprimée", "error": "Impossible d'enregistrer la clé", "loadError": "Impossible de charger les clés", "loading": "Chargement...", "empty": "Aucune clé API configurée.", "confirmDelete": "Supprimer définitivement cette clé API ?", "toggleActive": "Active", "providers": { "openai": "OpenAI", "anthropic": "Anthropic", "deepseek": "DeepSeek", "openrouter": "OpenRouter", "minimax": "MiniMax", "zai": "Z.ai", "google": "Google", "mistral": "Mistral", "glm": "GLM" } }, "billing": { "title": "Facturation", "currentPlan": "Plan actuel", "upgradePlan": "Changer de plan", "manageBilling": "Gérer la facturation", "manageDescription": "Mettre à jour le moyen de paiement, consulter les factures ou annuler.", "openPortal": "Ouvrir le portail de facturation", "renewsOn": "Renouvellement le", "expiresOn": "Expire le", "canceledAt": "Annulé — accès jusqu'au", "freePlan": "Plan gratuit", "proPlan": "Plan Pro", "businessPlan": "Plan Business", "enterprisePlan": "Plan Entreprise", "perMonth": "/mois", "perYear": "/an", "monthly": "Mensuel", "annual": "Annuel", "save": "Économiser", "upgradeTitle": "Choisir un plan", "proPrice": "9,90 €", "businessPrice": "29,90 €", "proAnnualPrice": "99 €", "businessAnnualPrice": "299 €", "proFeature1": "100 recherches sémantiques / mois", "proFeature2": "200 tags automatiques / mois", "proFeature3": "50 reformulations / mois", "proFeature4": "100 messages de chat / mois", "businessFeature1": "1 000 recherches sémantiques / mois", "businessFeature2": "1 000 tags automatiques / mois", "businessFeature3": "500 reformulations / mois", "businessFeature4": "1 000 messages de chat / mois", "enterpriseTitle": "Entreprise", "enterpriseDescription": "Quotas personnalisés, SSO, support prioritaire.", "contactSales": "Contacter les ventes", "startCheckout": "Commencer", "checkoutLoading": "Chargement du paiement…", "checkoutSuccess": "Abonnement activé ! Bienvenue dans {tier}.", "checkoutCanceled": "Paiement annulé.", "active": "Actif", "trialing": "Essai", "pastDue": "En retard", "canceled": "Annulé", "inactive": "Inactif", "billingEnabled": "Facturation activée", "billingDisabled": "La facturation n'est pas activée sur cette instance.", "usageThisPeriod": "Utilisation sur cette période", "periodRange": "Période", "unlimited": "Illimité", "noUsage": "Aucune donnée d'utilisation", "billingHistory": "Historique de facturation", "viewInvoices": "Gérer les factures dans le portail", "nextBillingDate": "Prochaine date de facturation", "billingPeriod": "Période de facturation", "planSince": "Membre depuis", "checkoutSuccessTitle": "Abonnement activé !", "checkoutSuccessBody": "Bienvenue sur {tier}. Vos fonctionnalités sont maintenant débloquées.", "subscriptionType": "subscriptionType", "renewalDate": "renewalDate", "noRenewalDate": "—", "tab": "Facturation", "currentUsage": "Utilisation actuelle", "currentPeriod": "Période en cours", "aiCredits": "Crédits IA", "used": "utilisés", "billing": "Facturation", "renewal": "Renouvellement", "paidPlanDesc": "Votre abonnement se renouvelle automatiquement.", "businessDescription": "Pour les équipes et chefs de produit.", "enterpriseFeature1": "Quotas illimités", "enterpriseFeature2": "SSO / SAML", "enterpriseFeature3": "Support dédié", "enterpriseFeature4": "Facturation personnalisée", "enterpriseFeature5": "SLA garanti" }, "landing": { "nav": { "features": "Fonctionnalités", "agents": "Agents IA", "brainstorm": "Brainstorm", "pricing": "Tarifs", "tech": "Architecture", "login": "Se connecter", "cta": "Commencez" }, "hero": { "badge": "Augmenté par l'Intelligence Artificielle", "title1": "Votre second cerveau,", "title2": "enfin amplifié.", "subtitle": "Momento n'est pas qu'une simple application de notes. C'est un écosystème intelligent qui connecte, analyse et développe vos idées en temps réel grâce à 6 types d'agents IA et une recherche sémantique de pointe.", "cta": "S'inscrire maintenant", "secondary": "Voir les fonctionnalités", "memoryEcho": "Memory Echo", "memoryEchoText": "\"Connexion détectée avec votre projet de design durable de Mars 2024...\"", "brainstormLive": "Brainstorm Live", "ideasGenerated": "+12 idées générées" }, "features": { "label": "Capacités IA", "title": "Une intelligence fluide,", "title2": "intégrée à chaque mot.", "desc": "Momento orchestre vos idées grâce à une architecture multi-fournisseurs.", "f1Title": "Recherche Sémantique", "f1Desc": "Ne cherchez plus par mots-clés. Trouvez par concept. Notre moteur hybride Vector + FTS comprend l'intention derrière vos notes.", "f2Title": "Chat RAG Contextuel", "f2Desc": "Discutez avec votre savoir. Nos agents lisent vos notes, explorent le web et analysent vos documents pour répondre avec précision.", "f3Title": "Écriture Augmentée", "f3Desc": "Reformulation, suggestions de titres, tagging automatique et résumés. L'IA travaille en arrière-plan pour structurer votre pensée." }, "agents": { "label": "Agents Spécialisés", "title": "Déléguez le travail complexe.", "desc": "6 types d'agents IA autonomes pour automatiser vos recherches, vos résumés et vos présentations.", "scraper": { "title": "Scraper", "desc": "Scrape des URLs, parse les flux RSS et synthétise l'info avec placement d'images intelligent." }, "researcher": { "title": "Researcher", "desc": "Génère des requêtes complexes, explore les sources web et rédige des notes de recherche structurées." }, "slideGen": { "title": "Slide Gen", "desc": "Transforme vos notes en présentations PowerPoint professionnelles ou Slides HTML Interactives." }, "monitor": { "title": "Monitor", "desc": "Analyse continuellement vos carnets pour détecter les tendances et les nouveaux insights." }, "diagramGen": { "title": "Diagram Gen", "desc": "Convertit vos idées en diagrammes Excalidraw fluides (Mindmaps, Flowcharts) avec auto-layout." }, "custom": { "title": "Custom", "desc": "Définissez vos propres agents avec des rôles et des sources de données spécifiques." } }, "brainstorm": { "label": "Vagues de Pensée", "title": "Brainstorming radial en temps réel.", "waveGeneration": { "title": "Génération par Vagues", "desc": "Variations, Analogies, puis Disruptions. L'IA pousse votre concept initial dans ses retranchements." }, "collaboration": { "title": "Collaboration Native", "desc": "Curseurs fantômes IA, avatars synchronisés et déplacement de nœuds en temps réel." }, "export": { "title": "Export Sémantique", "desc": "Convertissez tout votre brainstorm en notes structurées d'un seul clic." }, "disruptionLabel": "DISRUPTION", "disruptionText": "Architecture Modulaire 2.0", "analogyLabel": "ANALOGIE", "analogyText": "Le cycle des marées" }, "tech": { "label": "Architecture & Fournisseurs", "title": "Connectez votre propre intelligence.", "tags": { "title": "Tags", "desc": "Indépendamment configurable avec n'importe quel modèle." }, "embeddings": { "title": "Embeddings", "desc": "Indépendamment configurable avec n'importe quel modèle." }, "chatRag": { "title": "Chat RAG", "desc": "Indépendamment configurable avec n'importe quel modèle." } }, "pricing": { "label": "Plans & Tarification", "title": "Choisissez votre niveau d'amplification.", "desc": "Des options flexibles pour les esprits créatifs, de l'usage individuel aux grandes organisations.", "monthly": "Mensuel", "annual": "Annuel", "perMonth": "/mois", "perMonthAnnual": "/mois, facturé annuellement", "perUser": "+ 3,90€/user", "perUserAnnual": "+ 2,90€/user, facturé annuellement", "popular": "Le plus populaire", "basic": { "name": "Basic", "desc": "Pour découvrir la magie de Momento.", "cta": "Commencer", "feature0": "100 Notes max", "feature1": "3 Carnets", "feature2": "50 crédits IA (Lifetime)", "feature3": "Recherche sémantique", "feature4": "Historique 7 jours" }, "pro": { "name": "Pro", "desc": "Pour les consultants et créateurs exigeants.", "cta": "Passer Pro", "feature0": "Notes illimitées", "feature1": "BYOK (OpenAI/Anthropic)", "feature2": "200 recherches sémantiques", "feature3": "Agents (12 runs/mois)", "feature4": "Historique 30 jours", "feature5": "Support Email" }, "business": { "name": "Business", "desc": "Pour les équipes et chefs de produit.", "cta": "Choisir Business", "feature0": "10 Collaborateurs inclus", "feature1": "BYOK (13 fournisseurs)", "feature2": "1000 recherches sémantiques", "feature3": "Agents (60 runs/mois)", "feature4": "Brainstorm illimité", "feature5": "Accès API" }, "enterprise": { "name": "Enterprise", "desc": "Mémoire organisationnelle sécurisée.", "cta": "Contacter Ventes", "feature0": "Tout Business", "feature1": "Agents illimités", "feature2": "SSO / SAML", "feature3": "Audit Logs & SLA", "feature4": "Support Dédié", "feature5": "Onboarding Live" } }, "byok": { "label": "Technologie Cloud Ouverte", "title": "La stratégie BYOK", "desc": "Vous possédez déjà des clés API OpenAI, Anthropic ou Google ? Connectez-les directement à Momento. Utilisez l'IA sans limites de crédits imposées, en payant uniquement ce que vous consommez chez votre fournisseur favori.", "noLockin": "Pas de lock-in", "noLockinDesc": "Changez de fournisseur en 1 clic.", "cost": "Coûts optimisés", "costDesc": "Payez le prix direct API.", "configLabel": "Config Multi-Fournisseurs" }, "cta": { "title1": "Prêt à libérer votre", "title2": "plein potentiel ?", "desc": "Rejoignez des milliers de chercheurs, designers et penseurs qui utilisent déjà Momento pour construire leur futur.", "button": "Lancer Momento" }, "footer": { "desc": "Le second cerveau amplifié par l'IA. Pensé pour les esprits créatifs.", "product": { "title": "Produit", "link0": "Changelog", "link1": "Documentation", "link2": "Roadmap", "link0Href": "#", "link1Href": "#", "link2Href": "#" }, "community": { "title": "Communauté", "link0": "Discord", "link1": "Twitter / X", "link2": "LinkedIn", "link0Href": "#", "link1Href": "#", "link2Href": "#" }, "legal": { "title": "Légal", "link0": "Politique de confidentialité", "link1": "Conditions d'utilisation", "link2": "Cookies", "link0Href": "#", "link1Href": "#", "link2Href": "#" } } }, "noteHistory": { "title": "Titre", "content": "Contenu", "untitled": "Sans titre", "emptyState": "Aucune version disponible", "selectVersion": "Sélectionnez une version pour prévisualiser son contenu", "currentVersion": "actuelle" } }