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

@@ -152,7 +152,12 @@
"viewModeGroup": "Notes display mode",
"reorderTabs": "Reorder tab",
"modified": "Modified",
"created": "Created"
"created": "Created",
"loading": "Loading...",
"exportPDF": "Export PDF",
"savedStatus": "Saved",
"dirtyStatus": "Modified",
"completedLabel": "Completed"
},
"pagination": {
"previous": "←",
@@ -203,7 +208,8 @@
"noResults": "No results found",
"resultsFound": "{count} notes found",
"exactMatch": "Exact match",
"related": "Related"
"related": "Related",
"disabledAdmin": "Search disabled in admin mode"
},
"collaboration": {
"emailPlaceholder": "Enter email address",
@@ -324,7 +330,57 @@
"translationFailed": "Translation failed",
"undo": "Undo AI",
"undoAI": "Undo AI transformation",
"undoApplied": "Original text restored"
"undoApplied": "Original text restored",
"minWordsError": "Note must contain at least 5 words to use AI actions.",
"genericError": "AI error",
"actionError": "Error during AI action",
"appliedToNote": "Applied to note",
"applyToNote": "Apply to note",
"undoLastAction": "Undo last AI action",
"selectContext": "Select context...",
"selectNotebook": "Select notebook",
"chatPlaceholder": "Ask AI to edit, summarize, or draft...",
"assistantTitle": "AI Assistant",
"currentNote": "Current note",
"shrinkPanel": "Shrink panel",
"expandPanel": "Expand panel",
"chatTab": "Chat",
"noteActions": "Note Actions",
"askToStart": "Ask the Assistant something to get started.",
"contextLabel": "Context",
"thisNote": "This note",
"allMyNotes": "All my notes",
"notebookGeneric": "Notebook",
"writingTone": "Writing Tone",
"askAboutThisNote": "Ask AI something about this note...",
"askAboutYourNotes": "Ask AI something about your notes...",
"webSearchLabel": "Web Search",
"newLineHint": "Shift+Enter = new line",
"resultLabel": "Result",
"discardAction": "Discard",
"transformationsDesc": "Transformations — applied directly to the note",
"writeMinWordsAction": "Write at least 5 words to activate AI actions.",
"processingAction": "Processing...",
"action": {
"clarify": "Clarify",
"shorten": "Shorten",
"improve": "Improve",
"toMarkdown": "To Markdown"
},
"openAssistant": "Open AI Assistant",
"poweredByMomento": "Powered by Momento AI",
"welcomeMsg": "Hello! I'm your AI assistant. How can I help you with your notes today? I can help refine tone, expand messaging, or summarize content.",
"summaryLast5": "Summary of your last 5 notes",
"analyzingProgress": "Analyzing...",
"generateInsightsBtn": "Generate Insights",
"newDiscussion": "New discussion",
"noRecentConversations": "No recent conversations.",
"discussionContextLabel": "Discussion Context",
"webSearchNotConfigured": "Web Search (Not configured)",
"historyTab": "History",
"insightsTab": "Insights",
"aiCopilot": "AI Copilot",
"suggestTitle": "AI title suggestion"
},
"titleSuggestions": {
"available": "Title suggestions",
@@ -733,7 +789,30 @@
"noModels": "No models. Click ↺",
"modelsAvailable": "{count} model(s) available",
"enterUrlToLoad": "Enter URL and click ↺ to load models",
"currentProvider": "(Current: {provider})"
"currentProvider": "(Current: {provider})",
"pageTitle": "AI Management",
"pageDescription": "Monitor and configure AI features",
"configure": "Configure",
"features": "AI Features",
"providerStatus": "AI Provider Status",
"recentRequests": "Recent AI Requests",
"comingSoon": "Coming soon",
"activeFeatures": "Active features",
"successRate": "Success rate",
"avgResponseTime": "Avg response time",
"configuredProviders": "Configured providers",
"settingUpdated": "Setting updated",
"updateFailedShort": "Update failed",
"titleSuggestions": "Title suggestions",
"titleSuggestionsDesc": "Suggests titles for notes after 50+ words",
"aiAssistant": "AI Assistant",
"aiAssistantDesc": "Enable AI chat and text improvement tools",
"memoryEchoFeature": "I noticed something...",
"memoryEchoFeatureDesc": "Daily analysis of connections between your notes",
"languageDetection": "Language detection",
"languageDetectionDesc": "Automatically detects the language of each note",
"autoLabeling": "Auto labeling",
"autoLabelingDesc": "Suggests and applies labels automatically"
},
"resend": {
"title": "Resend (Recommended)",
@@ -804,7 +883,9 @@
"roles": {
"user": "User",
"admin": "Admin"
}
},
"title": "Users",
"description": "Manage application users and permissions"
},
"aiTest": {
"title": "AI Provider Testing",
@@ -875,7 +956,18 @@
"testing": "Testing...",
"testSearch": "Test web search"
},
"settingsDescription": "Configure application-wide settings"
"settingsDescription": "Configure application-wide settings",
"dashboard": {
"title": "Dashboard",
"description": "Overview of your application metrics",
"recentActivity": "Recent Activity",
"recentActivityPlaceholder": "Recent activity will be displayed here."
},
"error": {
"title": "An error occurred in the admin panel",
"description": "This page failed to render. You can retry without reloading.",
"retry": "Retry"
}
},
"about": {
"title": "About",
@@ -1444,5 +1536,9 @@
"deleteSpace": "Delete space",
"deleted": "Space deleted",
"deleteError": "Error deleting"
},
"lab": {
"initializing": "Initializing workspace",
"loadingIdeas": "Loading your ideas..."
}
}