feat: 完善图像工作区与创作工具体验
Some checks failed
Electron E2E / Electron E2E (macos-latest) (push) Has been cancelled
Electron E2E / Electron E2E (ubuntu-latest) (push) Has been cancelled
Electron E2E / Electron E2E (windows-latest) (push) Has been cancelled

This commit is contained in:
inman
2026-08-16 14:08:02 +08:00
parent bfcb88cfef
commit 26b52d76e3
92 changed files with 16678 additions and 2975 deletions

View File

@@ -118,7 +118,15 @@ async function getSettingsStore() {
*/
export async function getSetting<K extends keyof AppSettings>(key: K): Promise<AppSettings[K]> {
const store = await getSettingsStore();
return store.get(key);
const value = store.get(key);
if (key === 'language') {
const resolvedLanguage = resolveSupportedLanguage(value as string);
if (value !== resolvedLanguage) {
store.set(key, resolvedLanguage);
}
return resolvedLanguage as AppSettings[K];
}
return value;
}
/**
@@ -129,6 +137,10 @@ export async function setSetting<K extends keyof AppSettings>(
value: AppSettings[K]
): Promise<void> {
const store = await getSettingsStore();
if (key === 'language') {
store.set(key, resolveSupportedLanguage(value as string));
return;
}
store.set(key, value);
}
@@ -170,7 +182,12 @@ export function rotateAgentGatewaySessionClientId(workspaceId: string): Promise<
*/
export async function getAllSettings(): Promise<AppSettings> {
const store = await getSettingsStore();
return store.store;
const settings = store.store;
const language = resolveSupportedLanguage(settings.language);
if (settings.language !== language) {
store.set('language', language);
}
return { ...settings, language };
}
/**