feat(i18n): integrate internationalization into sidebar, title bar, and settings components
- Added useI18n hook to Sidebar and TitleBar components for translation support. - Updated sidebar navigation items to use translation keys instead of hardcoded labels. - Enhanced TitleBar buttons with localized titles for minimize, maximize, and close actions. - Expanded i18n constants to include new namespaces for sidebar and login. - Implemented translation messages for sidebar, settings, and login components in English, Chinese, and Japanese. - Refactored Knowledge and Skills pages to utilize useLocale for locale management. - Updated Login page to display localized text for form labels, placeholders, and error messages. - Enhanced Account and General settings panels with localized titles and descriptions. - Modified SettingMenu to use translation keys for menu items.
This commit is contained in:
@@ -1,5 +1,4 @@
|
||||
import { useEffect, useState } from 'react';
|
||||
import { getLocale, i18n } from '../../i18n';
|
||||
import { useLocale } from '../../i18n';
|
||||
import type { LanguageCode } from '../../types/runtime';
|
||||
|
||||
type Primitive = string | number;
|
||||
@@ -216,9 +215,7 @@ function createKnowledgeTranslate(locale: LanguageCode): KnowledgeTranslate {
|
||||
}
|
||||
|
||||
export function useKnowledgeCopy(): KnowledgeTranslate {
|
||||
const [locale, setLocale] = useState<LanguageCode>(getLocale());
|
||||
|
||||
useEffect(() => i18n.subscribe(setLocale), []);
|
||||
const locale = useLocale();
|
||||
|
||||
return createKnowledgeTranslate(locale);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user