Conversation
Code Review SummaryThis PR implements Internationalization (i18n) across the dashboard. It introduces translation files for multiple languages (EN, FR, DE, ES, PT, IT) and updates UI components to use the 🚀 Key Improvements
💡 Minor Suggestions
🚨 Critical Issues
|
| error.value = ""; | ||
| const normalizedApiKey = apiKey.trim(); | ||
|
|
||
| if (!normalizedApiKey) { |
There was a problem hiding this comment.
The error message 'API key is required' is still hardcoded while the rest of the app has been internationalized. This should use the $t function or be handled in the view layer with a translation key.
| if (!normalizedApiKey) { | |
| if (!normalizedApiKey) { | |
| error.value = "auth.errors.apiKeyRequired"; | |
| loading.value = false; | |
| return false; | |
| } |
| @@ -951,12 +974,18 @@ const deleteCredential = async () => { | |||
| try { | |||
There was a problem hiding this comment.
When calling templatesApi.refresh(), the response potentially contains a count or message that is being ignored in favor of a static notification. It's better to verify if the count needs to be passed to the translation string.
| try { | |
| const response = await templatesApi.refresh(); | |
| notifications.success( | |
| t("settings.general.quickActions.templatesRefreshedTitle"), | |
| t("settings.general.quickActions.templatesRefreshedDesc", { n: response.data.count || 0 }) | |
| ); |
This PR handles a slight setup documentation modification and handles translation to locale languages.
2026-03-04.14-53-11.mp4