-
-
+
@@ -23,37 +10,16 @@ import type { IChatMessage } from '@/api/types'
import AssistantText from './AssistantText.vue'
interface Props {
- name: string
- avatar?: string
- color?: string
- round?: number
- role?: 'moderator' | 'expert' | 'summary'
content: string
}
-const props = withDefaults(defineProps
(), {
- avatar: '',
- role: 'expert',
-})
-
-const roleTag = computed(() => {
- const tags: Record = {
- moderator: '主持',
- expert: '专家',
- summary: '小结',
- }
- return tags[props.role] || ''
-})
-
-const avatarStyle = computed(() => {
- if (props.color) {
- return { background: props.color }
- }
- return { background: 'var(--accent-board)' }
-})
+const props = defineProps()
+// 方案B: BoardRoundCard 仅作为 Board 发言的纯内容容器,
+// 渲染 AssistantText 的流式文本。头像/名字/轮次/角色标签等元信息
+// 全部由外层 MessageShell 的 header 负责,避免重复渲染。
const textMessage = computed(() => ({
- id: `board-${props.name}-${props.round || 0}`,
+ id: `board-${Date.now()}-${Math.random().toString(36).slice(2, 8)}`,
role: 'assistant',
content: props.content,
timestamp: new Date().toISOString(),
@@ -64,63 +30,5 @@ const textMessage = computed(() => ({
diff --git a/src/agentkit/server/frontend/src/components/chat/messages/MessageShell.vue b/src/agentkit/server/frontend/src/components/chat/messages/MessageShell.vue
index 3975165..0a692a4 100644
--- a/src/agentkit/server/frontend/src/components/chat/messages/MessageShell.vue
+++ b/src/agentkit/server/frontend/src/components/chat/messages/MessageShell.vue
@@ -20,13 +20,13 @@