fix: update language settings and improve model pricing editor for better clarity and functionality

This commit is contained in:
CaIon
2026-03-06 21:36:51 +08:00
parent 782124510a
commit 8186ed0ea5
23 changed files with 2217 additions and 4422 deletions

View File

@@ -24,6 +24,7 @@ import { UserContext } from '../../context/User';
import { StatusContext } from '../../context/Status';
import { useSetTheme, useTheme, useActualTheme } from '../../context/Theme';
import { getLogo, getSystemName, API, showSuccess } from '../../helpers';
import { normalizeLanguage } from '../../i18n/language';
import { useIsMobile } from './useIsMobile';
import { useSidebarCollapsed } from './useSidebarCollapsed';
import { useMinimumLoadingTime } from './useMinimumLoadingTime';
@@ -36,7 +37,7 @@ export const useHeaderBar = ({ onMobileMenuToggle, drawerOpen }) => {
const [collapsed, toggleCollapsed] = useSidebarCollapsed();
const [logoLoaded, setLogoLoaded] = useState(false);
const navigate = useNavigate();
const [currentLang, setCurrentLang] = useState(i18n.language);
const [currentLang, setCurrentLang] = useState(normalizeLanguage(i18n.language));
const location = useLocation();
const loading = statusState?.status === undefined;
@@ -118,12 +119,13 @@ export const useHeaderBar = ({ onMobileMenuToggle, drawerOpen }) => {
// Language change effect
useEffect(() => {
const handleLanguageChanged = (lng) => {
setCurrentLang(lng);
const normalizedLang = normalizeLanguage(lng);
setCurrentLang(normalizedLang);
try {
const iframe = document.querySelector('iframe');
const cw = iframe && iframe.contentWindow;
if (cw) {
cw.postMessage({ lang: lng }, '*');
cw.postMessage({ lang: normalizedLang }, '*');
}
} catch (e) {
// Silently ignore cross-origin or access errors