support eval again

This commit is contained in:
Julian Freeman
2026-04-05 11:33:14 -04:00
parent bba1123176
commit 9dbce266b4

View File

@@ -4,7 +4,7 @@ import {
Plus, Search, Trash2, Send, User, Type, ChevronDown, Check,
MessageSquare, Loader2, Copy,
X, Sparkles, Languages, Venus, Mars, CircleSlash,
ShieldCheck
ShieldCheck, RotateCcw
} from 'lucide-vue-next';
import {
useSettingsStore,
@@ -218,7 +218,7 @@ const translateMessage = async (sender: 'me' | 'partner') => {
}
};
const evaluateMessage = async (messageId: string) => {
const evaluateMessage = async (messageId: string, force = false) => {
if (!activeSession.value) return;
const msg = activeSession.value.messages.find(m => m.id === messageId);
if (!msg) return;
@@ -229,9 +229,9 @@ const evaluateMessage = async (messageId: string) => {
await nextTick();
isAuditModalOpen.value = true;
if (msg.evaluation || msg.isEvaluating) return;
if (!force && (msg.evaluation || msg.isEvaluating)) return;
settings.updateChatMessage(activeSession.value.id, messageId, { isEvaluating: true });
settings.updateChatMessage(activeSession.value.id, messageId, { isEvaluating: true, evaluation: undefined });
const historyLimit = 10;
const recentMessages = activeSession.value.messages.filter(m => m.id !== messageId).slice(-historyLimit);
@@ -953,6 +953,15 @@ onUnmounted(() => window.removeEventListener('click', handleGlobalClick));
<!-- Footer Action -->
<div class="p-8 border-t dark:border-slate-800 bg-slate-50/50 dark:bg-slate-950/50 flex items-center gap-4 shrink-0">
<button
v-if="activeAuditMessage.evaluation && !activeAuditMessage.isEvaluating"
@click="evaluateMessage(activeAuditMessage.id, true)"
class="p-4 bg-slate-100 dark:bg-slate-800 hover:bg-slate-200 dark:hover:bg-slate-700 text-slate-500 dark:text-slate-400 rounded-2xl font-bold transition-all shrink-0"
title="重新审计"
>
<RotateCcw class="w-5 h-5" />
</button>
<button
@click="isAuditModalOpen = false"
class="flex-1 py-4 bg-slate-200 dark:bg-slate-800 hover:bg-slate-300 dark:hover:bg-slate-700 text-slate-600 dark:text-slate-300 rounded-2xl font-bold transition-all"