(req: CursorChatRequest)
| 250 | * 发送非流式请求,收集完整响应及 usage 信息 |
| 251 | */ |
| 252 | export async function sendCursorRequestFull(req: CursorChatRequest): Promise<{ text: string; usage?: { inputTokens?: number; outputTokens?: number; totalTokens?: number } }> { |
| 253 | let fullText = ''; |
| 254 | let usage: { inputTokens?: number; outputTokens?: number; totalTokens?: number } | undefined; |
| 255 | await sendCursorRequest(req, (event) => { |
| 256 | if (event.type === 'text-delta' && event.delta) { |
| 257 | fullText += event.delta; |
| 258 | } |
| 259 | if (event.messageMetadata?.usage) { |
| 260 | usage = event.messageMetadata.usage; |
| 261 | } |
| 262 | }); |
| 263 | return { text: fullText, usage }; |
| 264 | } |
no test coverage detected