Skip to content

Commit 8bf78a8

Browse files
committed
Merge branch 'feat/robot-330' into feat/robot-test
2 parents da7f614 + 13d015a commit 8bf78a8

5 files changed

Lines changed: 19 additions & 5 deletions

File tree

packages/plugins/robot/src/Main.vue

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
:prompt-items="promptItems"
2323
:bubble-renderers="bubbleRenderers"
2424
:allowFiles="isVisualModel && robotSettingState.chatMode === ChatMode.Agent"
25+
:show-aborted="robotSettingState.chatMode !== ChatMode.Agent"
2526
:beforeSubmit="checkApiKey"
2627
:promptClickHandler="promptClickHandler"
2728
@fileSelected="handleFileSelected"

packages/plugins/robot/src/components/chat/RobotChat.vue

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131
class="robot-bubble-list"
3232
>
3333
<template #content-footer="{ messages }">
34-
<div v-if="messages[0]?.aborted" class="aborted">已中止</div>
34+
<div v-if="showAborted && messages[0]?.aborted" class="aborted">已中止</div>
3535
</template>
3636
</tr-bubble-list>
3737
</tr-bubble-provider>
@@ -116,6 +116,10 @@ const props = defineProps({
116116
type: Boolean,
117117
default: false
118118
},
119+
showAborted: {
120+
type: Boolean,
121+
default: true
122+
},
119123
bubbleRenderers: {
120124
type: Object as PropType<Record<string, Component>>,
121125
default: () => ({})

packages/plugins/robot/src/components/renderers/AgentRenderer.vue

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -58,12 +58,12 @@ export default {
5858
reasoning: {
5959
title: '深度思考中,请稍等片刻',
6060
icon: 'loading.webp',
61-
content: '...'
61+
content: () => resolvedContent.value?.slice(-30) || '...'
6262
},
6363
loading: {
6464
title: '页面生成中,请稍等片刻',
6565
icon: 'loading.webp',
66-
content: '...'
66+
content: () => resolvedContent.value?.slice(-30) || '...'
6767
},
6868
fix: {
6969
title: '页面优化中,请稍等片刻',

packages/plugins/robot/src/composables/modes/useChatMode.ts

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -109,9 +109,15 @@ export default function useChatMode(): ModeHooks {
109109
messages: any[],
110110
extraData?: Record<string, unknown>
111111
) => {
112-
if (finishReason === 'aborted' || finishReason === 'error') {
112+
if (finishReason === 'aborted') {
113113
removeLoading(messages)
114-
messages.at(-1)!.renderContent.push({ type: 'text', content: serializeError(extraData?.error) })
114+
return
115+
}
116+
117+
if (finishReason === 'error') {
118+
removeLoading(messages)
119+
const errorContent = serializeError(extraData?.error) || '请求失败'
120+
messages.at(-1)!.renderContent.push({ type: 'text', content: errorContent })
115121
}
116122
}
117123

packages/plugins/robot/src/utils/chat.utils.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,9 @@ export const formatMessages = (messages: LLMMessage[]) => {
1717
}
1818

1919
export const serializeError = (err: unknown): string => {
20+
if (err === undefined || err === null) {
21+
return ''
22+
}
2023
if (err instanceof Error) {
2124
return JSON.stringify({ name: err.name, message: err.message })
2225
}

0 commit comments

Comments
 (0)