feat: brainstorm sessions, PDF document Q&A, embedding fixes, and UI improvements
All checks were successful
Deploy to Production / Build and Deploy (push) Successful in 7s

- Add brainstorm feature with collaborative canvas, AI idea generation, live cursors, playback, and export
- Add PDF upload/extraction/ingestion pipeline with pgvector document search (RAG)
- Add document Q&A overlay with streaming chat and PDF preview
- Add note attachments UI with status polling, grid layout, and auto-scroll
- Add task extraction AI tool and agent executor improvements
- Fix NoteEmbedding missing updatedAt column, re-index 66 notes with 1536-dim embeddings
- Fix brainstorm 'Create Note' button: add success toast and redirect to created note
- Fix memory echo notification infinite polling
- Fix chat route to always include document_search tool
- Add brainstorm i18n keys across all 14 locales
- Add socket server for real-time brainstorm collaboration
- Add hierarchical notebook selector and organize notebook dialog improvements
- Add sidebar brainstorm section with session management
- Update prisma schema with brainstorm tables, attachments, and document chunks
This commit is contained in:
Antigravity
2026-05-14 17:43:21 +00:00
parent 195e845f0a
commit 1fcea6ed7d
228 changed files with 57656 additions and 1059 deletions

View File

@@ -2,7 +2,7 @@
"auth": {
"signIn": "Connexion",
"signUp": "S'inscrire",
"email": "Email",
"email": "Courriel",
"password": "Mot de passe",
"name": "Nom",
"emailPlaceholder": "Entrez votre adresse email",
@@ -47,11 +47,15 @@
"sharedWithMe": "Partagées avec moi",
"sortNewest": "Plus récentes",
"sortOldest": "Plus anciennes",
"sortAlpha": "A → Z",
"sortAlpha": "Tri A → Z",
"accountMenu": "Menu du compte",
"profile": "Profil",
"signOut": "Se déconnecter",
"sortOrder": "Ordre de tri"
"sortOrder": "Ordre de tri",
"freezePinnedNotebook": "Figer l'état du carnet",
"unfreezePinnedNotebook": "Défiger l'état du carnet",
"newSubNotebook": "Nouveau sous-carnet",
"renameNotebook": "Renommer"
},
"notes": {
"title": "Notes",
@@ -61,6 +65,12 @@
"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",
@@ -170,10 +180,12 @@
"savedStatus": "Enregistré",
"dirtyStatus": "Modifié",
"completedLabel": "Terminé",
"notes.emptyNotebook": "Carnet vide",
"notes.emptyNotebookDesc": "Ce carnet n'a pas de notes. Cliquez sur + pour en créer une.",
"notes.noNoteSelected": "Aucune note sélectionnée",
"notes.selectOrCreateNote": "Sélectionnez une note dans la liste ou créez-en une nouvelle.",
"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",
@@ -217,6 +229,9 @@
"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",
@@ -231,11 +246,26 @@
"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"
"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"
},
"pagination": {
"previous": "←",
"pageInfo": "Page {currentPage} / {totalPages}",
"pageInfo": "Page {currentPage} sur {totalPages}",
"next": "→"
},
"labels": {
@@ -313,7 +343,24 @@
"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"
"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...",
@@ -415,10 +462,6 @@
"appliedToNote": "Appliqué à la note",
"applyToNote": "Appliquer à la note",
"undoLastAction": "Annuler la dernière action IA",
"transformations": "Transformations",
"otherLanguage": "Autre langue",
"translateNow": "Traduire maintenant",
"generationTools": "Outils de génération",
"selectContext": "Sélectionner le contexte...",
"selectNotebook": "Sélectionner un carnet",
"chatPlaceholder": "Demandez à l'IA de modifier, résumer ou rédiger...",
@@ -429,6 +472,15 @@
"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",
"allMyNotes": "Toutes mes notes",
@@ -440,6 +492,7 @@
"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...",
@@ -450,21 +503,23 @@
"shorten": "Raccourcir",
"improve": "Améliorer",
"toMarkdown": "Convertir en Markdown",
"toRichText": "Convertir en texte enrichi",
"describeImages": "Décrire les images",
"fixGrammar": "Corriger les fautes",
"translate": "Traduire",
"explain": "Expliquer"
"explain": "Expliquer",
"toRichText": "Convertir en texte enrichi"
},
"generate": {
"slides": "Générer Slides",
"sectionLabel": "Outils de Génération",
"theme": "Thème",
"themeArchitecturalMono": "Architectural Mono",
"themeVibrantTech": "Vibrant Tech",
"themeMinimalSilk": "Minimal Silk",
"themeVibrantTech": "Tech vibrant",
"themeMinimalSilk": "Soie minimaliste",
"style": "Style",
"styleProfessional": "Professionnel",
"styleCreative": "Créatif",
"styleBrutalist": "Brutaliste",
"diagram": "Générer Diagramme",
"diagramReadyHint": "Convertir en flux visuel",
"diagramType": "Type de Diagramme",
@@ -499,7 +554,7 @@
"discussionContextLabel": "Contexte de discussion",
"webSearchNotConfigured": "Recherche web (non configurée)",
"historyTab": "Historique",
"insightsTab": "Insights",
"insightsTab": "Synthèses",
"aiCopilot": "Copilote IA",
"suggestTitle": "Suggestion de titre IA",
"generateTitleFromImage": "Générer un titre à partir de l'image",
@@ -546,84 +601,21 @@
},
"cancel": "Annuler",
"copied": "Copié",
"copy": "Copier"
},
"richTextEditor": {
"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...",
"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..."
"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...",
"errorShort": "Erreur",
"readyToast": "Prêt !",
"downloadFailedToast": "Échec du téléchargement",
"pptxDownloadButton": "Télécharger .pptx",
"presentationReadyBadge": "Présentation prête",
"openInLabTitle": "Ouvrir dans le Lab",
"inlineSummaryMarkdown": "**Résumé :**",
"networkErrorShort": "Erreur réseau."
},
"titleSuggestions": {
"available": "Suggestions de titre",
@@ -734,7 +726,14 @@
"openSlides": "Ouvrir la présentation",
"canvasReady": "Diagramme prêt",
"pptxReady": "Slides prêts",
"downloadPptx": "Télécharger .pptx"
"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",
@@ -750,7 +749,7 @@
"adminDashboard": "Tableau de bord Admin",
"diagnostics": "Diagnostics",
"trash": "Corbeille",
"support": "Support Memento ☕",
"support": "Soutenir Memento ☕",
"reminders": "Rappels",
"userManagement": "Gestion des utilisateurs",
"accountSettings": "Paramètres du compte",
@@ -769,7 +768,7 @@
"myLibrary": "Ma bibliothèque",
"favorites": "Favoris",
"recent": "Récent",
"proPlan": "Pro Plan",
"proPlan": "Plan Pro",
"chat": "Chat IA",
"lab": "L'Atelier",
"agents": "Agents"
@@ -834,7 +833,7 @@
"title": "Profil",
"description": "Mettez à jour vos informations personnelles",
"displayName": "Nom d'affichage",
"email": "Email",
"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",
@@ -881,8 +880,8 @@
"features": "Fonctionnalités IA",
"provider": "Fournisseur IA",
"providerAuto": "Auto (Recommandé)",
"providerOllama": "Ollama (Local)",
"providerOpenAI": "OpenAI (Cloud)",
"providerOllama": "Ollama (local)",
"providerOpenAI": "OpenAI (cloud)",
"frequency": "Fréquence",
"frequencyDaily": "Quotidienne",
"frequencyWeekly": "Hebdomadaire",
@@ -993,7 +992,11 @@
"confidence": "confiance",
"savingReminder": "Erreur lors de la sauvegarde du rappel",
"removingReminder": "Erreur lors de la suppression du rappel",
"generatingDescription": "Veuillez patienter..."
"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"
},
"notebookSuggestion": {
"title": "Déplacer vers {name} ?",
@@ -1061,7 +1064,7 @@
"providerOpenRouterOption": "🌐 OpenRouter",
"providerMistralOption": "🌀 Mistral AI",
"providerZAIOption": "✨ Z.AI",
"providerLMStudioOption": "🖥️ LM Studio (Local)",
"providerLMStudioOption": "🖥️ LM Studio (local)",
"bestValue": "Meilleur rapport qualité/prix",
"bestQuality": "Meilleure qualité",
"saved": "(Enregistré)",
@@ -1146,7 +1149,7 @@
"addUser": "Ajouter un utilisateur",
"createUserDescription": "Ajouter un nouvel utilisateur au système.",
"name": "Nom",
"email": "Email",
"email": "Courriel",
"password": "Mot de passe",
"role": "Rôle",
"createSuccess": "Utilisateur créé avec succès",
@@ -1160,14 +1163,14 @@
"confirmDelete": "Êtes-vous sûr ? Cette action est irréversible.",
"table": {
"name": "Nom",
"email": "Email",
"email": "Courriel",
"role": "Rôle",
"createdAt": "Créé le",
"actions": "Actions"
},
"roles": {
"user": "Utilisateur",
"admin": "Admin"
"admin": "Administrateur"
},
"title": "Utilisateurs",
"description": "Gérer les utilisateurs et les permissions"
@@ -1179,8 +1182,6 @@
"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",
"chatTestTitle": "Test de chat assistant",
"chatTestDescription": "Testez le fournisseur IA responsable de l'assistant de discussion",
"howItWorksTitle": "Fonctionnement des tests",
"tagsGenerationTest": "🏷️ Test de génération d'étiquettes :",
"tagsStep1": "Envoie une note exemple au fournisseur IA",
@@ -1192,11 +1193,6 @@
"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é",
"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",
"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 :",
@@ -1216,7 +1212,14 @@
"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."
"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",
@@ -1235,7 +1238,7 @@
"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": "Brave Search API",
"brave": "API Brave Search",
"both": "Les deux (SearXNG principal, Brave secours)",
"searxngUrl": "URL SearXNG",
"braveKey": "Clé API Brave Search",
@@ -1285,16 +1288,16 @@
"technology": {
"title": "Stack technologique",
"description": "Construit avec des technologies modernes",
"frontend": "Frontend",
"backend": "Backend",
"frontend": "Front-end",
"backend": "Back-end",
"database": "Base de données",
"authentication": "Authentification",
"ai": "IA",
"ui": "UI",
"ui": "Interface",
"testing": "Tests"
},
"support": {
"title": "Support",
"title": "Soutien",
"description": "Obtenez de l'aide et donnez votre avis",
"documentation": "Documentation",
"reportIssues": "Signaler des problèmes",
@@ -1491,9 +1494,72 @@
"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…"
},
"common": {
"unknown": "Inconnu",
"notAvailable": "N/A",
"notAvailable": "N/D",
"loading": "Chargement...",
"error": "Erreur",
"success": "Succès",
@@ -1557,7 +1623,7 @@
"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": "Active",
"active": "Actif",
"revoked": "Révoquée",
"revoke": "Révoquer",
"delete": "Supprimer",
@@ -1612,7 +1678,7 @@
"scraper": "Veilleur",
"researcher": "Chercheur",
"monitor": "Surveillant",
"slideGenerator": "Slides",
"slideGenerator": "Diaporamas",
"excalidrawGenerator": "Diagramme",
"custom": "Personnalisé"
},
@@ -1648,7 +1714,7 @@
"excalidrawDiagramTypeFlowchart": "Flowchart (processus)",
"excalidrawDiagramTypeMindmap": "Mindmap (idées)",
"excalidrawDiagramTypeOrgChart": "Organigramme (équipes)",
"excalidrawDiagramTypeTimeline": "Timeline / roadmap",
"excalidrawDiagramTypeTimeline": "Chronologie / feuille de route",
"excalidrawDiagramTypeProcessMap": "Process map (opérations)",
"excalidrawDiagramTypeArchitectureCloud": "Architecture cloud (zones/RG)",
"excalidrawDiagramStyle": "Style du diagramme Excalidraw",
@@ -1786,12 +1852,12 @@
"noteSearch": "Recherche notes",
"noteRead": "Lire une note",
"noteCreate": "Créer une note",
"urlFetch": "Récupérer URL",
"urlFetch": "Requête URL",
"memorySearch": "Mémoire",
"generatePptx": "Slides PPTX",
"generateSlides": "Slides HTML",
"generateExcalidraw": "Diagramme Excalidraw",
"configNeeded": "config",
"configNeeded": "Configuration requise",
"selected": "{count} sélectionné(s)",
"maxSteps": "Itérations max"
},
@@ -1872,7 +1938,7 @@
},
"labHeader": {
"title": "L'Atelier",
"live": "Live",
"live": "Direct",
"currentProject": "Projet Actuel",
"choose": "Choisir...",
"yourSpaces": "Vos Espaces",
@@ -1891,5 +1957,147 @@
"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..."
},
"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"
}
}
}
}