refactor: 重构消息路由模块,添加个人规则管理功能

- 拆分消息处理逻辑到独立的 helper 模块
   - 新增个人规则的增删改查路由处理
   - 优化代码结构,提升可维护性
This commit is contained in:
Roe-xin
2026-03-17 15:39:02 +08:00
parent 9d273fff83
commit 6acec9fcb5

View File

@ -22,6 +22,12 @@ import {
handleOpenFileDiff, handleOpenFileDiff,
startChangeSession, startChangeSession,
} from "../../utils/messageHandler"; } from "../../utils/messageHandler";
import {
loadPersonalRules,
savePersonalRule,
updatePersonalRule,
deletePersonalRule,
} from "../../utils/personalRulesManager";
import { compactDialog } from "../../services/apiClient"; import { compactDialog } from "../../services/apiClient";
import { ChatHistoryManager } from "../../utils/chatHistoryManager"; import { ChatHistoryManager } from "../../utils/chatHistoryManager";
import { getCachedUserInfo } from "../../services/userService"; import { getCachedUserInfo } from "../../services/userService";
@ -392,5 +398,63 @@ export async function handleWebviewMessage(
vscode.env.openExternal(vscode.Uri.parse(message.url)); vscode.env.openExternal(vscode.Uri.parse(message.url));
} }
break; break;
case "loadPersonalRules":
{
const data = loadPersonalRules();
panel.webview.postMessage({
command: "personalRulesLoaded",
data: data,
});
}
break;
case "savePersonalRule":
{
const success = await savePersonalRule(
message.name,
message.content,
message.enabled,
);
if (success) {
const data = loadPersonalRules();
panel.webview.postMessage({
command: "personalRulesLoaded",
data: data,
});
}
}
break;
case "updatePersonalRule":
{
const success = await updatePersonalRule(
message.filename,
message.name,
message.content,
message.enabled,
);
if (success) {
const data = loadPersonalRules();
panel.webview.postMessage({
command: "personalRulesLoaded",
data: data,
});
}
}
break;
case "deletePersonalRule":
{
const success = await deletePersonalRule(message.filename);
if (success) {
const data = loadPersonalRules();
panel.webview.postMessage({
command: "personalRulesLoaded",
data: data,
});
}
}
break;
} }
} }