diff --git a/packages/ai/src/ui/chat.ts b/packages/ai/src/ui/chat.ts index 6dbd3c661c8f..990d2d8ab27b 100644 --- a/packages/ai/src/ui/chat.ts +++ b/packages/ai/src/ui/chat.ts @@ -172,7 +172,7 @@ export type ChatOnDataCallback = ( * @param finishReason The reason why the generation finished. */ export type ChatOnFinishCallback = (options: { - message: UI_MESSAGE; + message: UI_MESSAGE | undefined; messages: UI_MESSAGE[]; isAbort: boolean; isDisconnect: boolean; @@ -758,12 +758,12 @@ export abstract class AbstractChat { } finally { try { this.onFinish?.({ - message: this.activeResponse!.state.message, + message: this.activeResponse?.state?.message, messages: this.state.messages, isAbort, isDisconnect, isError, - finishReason: this.activeResponse?.state.finishReason, + finishReason: this.activeResponse?.state?.finishReason, }); } catch (err) { console.error(err);