fix: comprehensive i18n — replace hardcoded French/English strings with t() calls
Some checks failed
Deploy to Production / Build and Deploy (push) Failing after 1m7s

Replaced ~100+ hardcoded French and English text strings across 30+ components
with proper i18n t() calls. Added 57 new translation keys to all 15 locale files
(ar, de, en, es, fa, fr, hi, it, ja, ko, nl, pl, pt, ru, zh).

Key changes:
- contextual-ai-chat.tsx: 30 French strings → t() (actions, toasts, labels, placeholders)
- ai-chat.tsx: 15 French/English strings → t() (header, tabs, welcome, insights, history)
- note-inline-editor.tsx: 20 French fallbacks removed (toolbar, save status, checklist)
- lab-skeleton.tsx: French loading text → t()
- admin-header.tsx, header.tsx, editor-connections-section.tsx: French fallbacks removed
- New AI chat component, agent cards, sidebar, settings panel i18n cleanup

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
2026-04-26 21:14:45 +02:00
parent e358171c45
commit 153c921960
60 changed files with 4125 additions and 1677 deletions

View File

@@ -81,7 +81,30 @@
"noModels": "Geen modellen. Klik op ↺",
"modelsAvailable": "{count} model(len) beschikbaar",
"enterUrlToLoad": "Voer URL in en klik op ↺",
"currentProvider": "(Huidig: {provider})"
"currentProvider": "(Huidig: {provider})",
"pageTitle": "AI-beheer",
"pageDescription": "AI-functies bewaken en configureren",
"configure": "Configureren",
"features": "AI-functies",
"providerStatus": "AI-provider status",
"recentRequests": "Recente AI-verzoeken",
"comingSoon": "Binnenkort beschikbaar",
"activeFeatures": "Actieve functies",
"successRate": "Succesrate",
"avgResponseTime": "Gemiddelde responstijd",
"configuredProviders": "Geconfigureerde providers",
"settingUpdated": "Instelling bijgewerkt",
"updateFailedShort": "Bijwerken mislukt",
"titleSuggestions": "Titelsuggesties",
"titleSuggestionsDesc": "Stelt titels voor voor noten na 50+ woorden",
"aiAssistant": "AI-assistent",
"aiAssistantDesc": "AI-chat en tekstverbeteringstools inschakelen",
"memoryEchoFeature": "Ik merkte iets op...",
"memoryEchoFeatureDesc": "Dagelijkse analyse van verbindingen tussen notities",
"languageDetection": "Taaldetectie",
"languageDetectionDesc": "Detecteert automatisch de taal van elke notitie",
"autoLabeling": "Automatisch labelen",
"autoLabelingDesc": "Stelt labels voor en past ze automatisch toe"
},
"aiTest": {
"description": "Test uw AI-providers voor taggeneratie en semantische zoek-embeddings",
@@ -195,7 +218,9 @@
"email": "E-mail",
"name": "Naam",
"role": "Rol"
}
},
"title": "Gebruikers",
"description": "Beheer gebruikers en machtigingen"
},
"chat": "AI Chat",
"lab": "Het Lab",
@@ -231,7 +256,18 @@
"testing": "Testen...",
"testSearch": "Zoekfunctie testen"
},
"settingsDescription": "Toepassingsinstellingen configureren"
"settingsDescription": "Toepassingsinstellingen configureren",
"dashboard": {
"title": "Dashboard",
"description": "Overzicht van applicatiestatistieken",
"recentActivity": "Recente activiteit",
"recentActivityPlaceholder": "Recente activiteit wordt hier weergegeven."
},
"error": {
"title": "Fout in beheerderspaneel",
"description": "Pagina rendering mislukt. Probeer opnieuw.",
"retry": "Opnieuw proberen"
}
},
"ai": {
"analyzing": "AI analyseert...",
@@ -322,7 +358,57 @@
"translationFailed": "Vertaling mislukt",
"undo": "AI ongedaan maken",
"undoAI": "AI-transformatie ongedaan maken",
"undoApplied": "Originele tekst hersteld"
"undoApplied": "Originele tekst hersteld",
"minWordsError": "De notitie moet minimaal 5 woorden bevatten om AI-acties te gebruiken.",
"genericError": "AI-fout",
"actionError": "Fout bij AI-actie",
"appliedToNote": "Toegepast op notitie",
"applyToNote": "Toepassen op notitie",
"undoLastAction": "Laatste AI-actie ongedaan maken",
"selectContext": "Context selecteren...",
"selectNotebook": "Notitieboek selecteren",
"chatPlaceholder": "Vraag AI om te bewerken, samen te vatten of op te stellen...",
"assistantTitle": "AI-assistent",
"currentNote": "Huidige notitie",
"shrinkPanel": "Paneel verkleinen",
"expandPanel": "Paneel vergroten",
"chatTab": "Chat",
"noteActions": "Notitie-acties",
"askToStart": "Stel de assistent een vraag om te beginnen.",
"contextLabel": "Context",
"thisNote": "Deze notitie",
"allMyNotes": "Al mijn notities",
"notebookGeneric": "Notitieboek",
"writingTone": "Schrijfstijl",
"askAboutThisNote": "Vraag AI iets over deze notitie...",
"askAboutYourNotes": "Vraag AI iets over je notities...",
"webSearchLabel": "Webzoekopdracht",
"newLineHint": "Shift+Enter = nieuwe regel",
"resultLabel": "Resultaat",
"discardAction": "Negeren",
"transformationsDesc": "Transformaties — direct toegepast op de notitie",
"writeMinWordsAction": "Schrijf minimaal 5 woorden om AI-acties te activeren.",
"processingAction": "Verwerken...",
"action": {
"clarify": "Verduidelijken",
"shorten": "Inkorten",
"improve": "Verbeteren",
"toMarkdown": "Naar Markdown"
},
"openAssistant": "AI-assistent openen",
"poweredByMomento": "Aangedreven door Momento AI",
"welcomeMsg": "Hallo! Ik ben je AI-assistent. Hoe kan ik je vandaag helpen met je notities? Ik kan de toon verfijnen, berichten uitbreiden of content samenvatten.",
"summaryLast5": "Samenvatting van je laatste 5 notities",
"analyzingProgress": "Analyseren...",
"generateInsightsBtn": "Inzichten genereren",
"newDiscussion": "Nieuwe discussie",
"noRecentConversations": "Geen recente gesprekken.",
"discussionContextLabel": "Discussiecontext",
"webSearchNotConfigured": "Webzoekopdracht (Niet geconfigureerd)",
"historyTab": "Geschiedenis",
"insightsTab": "Inzichten",
"aiCopilot": "AI-copiloot",
"suggestTitle": "AI-titelsuggestie"
},
"aiSettings": {
"description": "Configureer uw AI-aangedreven functies en voorkeuren",
@@ -929,7 +1015,12 @@
"viewModeGroup": "Weergavemodus notities",
"reorderTabs": "Tabblad herschikken",
"modified": "Gewijzigd",
"created": "Aangemaakt"
"created": "Aangemaakt",
"loading": "Laden...",
"exportPDF": "PDF exporteren",
"savedStatus": "Opgeslagen",
"dirtyStatus": "Gewijzigd",
"completedLabel": "Voltooid"
},
"pagination": {
"next": "→",
@@ -1021,7 +1112,8 @@
"searchPlaceholder": "Doorzoek uw notities...",
"searching": "Zoeken...",
"semanticInProgress": "AI-zoeken bezig...",
"semanticTooltip": "AI semantisch zoeken"
"semanticTooltip": "AI semantisch zoeken",
"disabledAdmin": "Zoeken uitgeschakeld in adminmodus"
},
"semanticSearch": {
"exactMatch": "Exacte overeenkomst",
@@ -1462,5 +1554,9 @@
"markUndone": "Markeren als onvoltooid",
"todayAt": "Vandaag om {time}",
"tomorrowAt": "Morgen om {time}"
},
"lab": {
"initializing": "Werkruimte initialiseren",
"loadingIdeas": "Je ideeën laden..."
}
}