UNPKG

@agent-labs/ag-ui-server

Version:

AG-UI Node.js server with OpenAI integration

1 lines 3.01 kB
{"version":3,"file":"text-message.handler-AFvULw9J.mjs","names":["encoder: EventEncoder","chunk: OpenAI.Chat.Completions.ChatCompletionChunk","context: StreamContext","event: EventData","EventType"],"sources":["../src/agent/handlers/text-message.handler.ts"],"sourcesContent":["import { EventEncoder } from '@ag-ui/encoder';\nimport { EventType } from '@ag-ui/core';\nimport { StreamHandler, StreamContext, EventData } from '../types';\nimport OpenAI from 'openai';\n\nexport class TextMessageHandler implements StreamHandler {\n constructor(private encoder: EventEncoder) {}\n\n async *handle(chunk: OpenAI.Chat.Completions.ChatCompletionChunk, context: StreamContext): AsyncGenerator<string, void, unknown> {\n if (!context.isMessageStarted) {\n const event: EventData = {\n type: EventType.TEXT_MESSAGE_START,\n messageId: context.messageId,\n role: 'assistant',\n content: '',\n messages: [{\n id: context.messageId,\n role: 'assistant',\n content: ''\n }]\n };\n yield this.encoder.encode(event);\n context.isMessageStarted = true;\n }\n\n const content = chunk.choices[0].delta.content;\n if (content) {\n context.fullResponse += content;\n const event: EventData = {\n type: EventType.TEXT_MESSAGE_CONTENT,\n messageId: context.messageId,\n role: 'assistant',\n delta: content,\n content: context.fullResponse,\n messages: [{\n id: context.messageId,\n role: 'assistant',\n content: context.fullResponse\n }]\n };\n yield this.encoder.encode(event);\n }\n }\n\n async *finalize(context: StreamContext): AsyncGenerator<string, void, unknown> {\n if (context.isMessageStarted) {\n const event: EventData = {\n type: EventType.TEXT_MESSAGE_END,\n messageId: context.messageId,\n role: 'assistant',\n content: context.fullResponse,\n messages: [{\n id: context.messageId,\n role: 'assistant',\n content: context.fullResponse\n }]\n };\n yield this.encoder.encode(event);\n }\n }\n} "],"mappings":";;;;AAKA,IAAa,qBAAb,MAAyD;CACvD,YAAoBA,SAAuB;EAAvB;CAAyB;CAE7C,OAAO,OAAOC,OAAoDC,SAA+D;AAC/H,OAAK,QAAQ,kBAAkB;GAC7B,MAAMC,QAAmB;IACvB,MAAMC,sBAAU;IAChB,WAAW,QAAQ;IACnB,MAAM;IACN,SAAS;IACT,UAAU,CAAC;KACT,IAAI,QAAQ;KACZ,MAAM;KACN,SAAS;IACV,CAAC;GACH;AACD,SAAM,KAAK,QAAQ,OAAO,MAAM;AAChC,WAAQ,mBAAmB;EAC5B;EAED,MAAM,UAAU,MAAM,QAAQ,GAAG,MAAM;AACvC,MAAI,SAAS;AACX,WAAQ,gBAAgB;GACxB,MAAMD,QAAmB;IACvB,MAAMC,sBAAU;IAChB,WAAW,QAAQ;IACnB,MAAM;IACN,OAAO;IACP,SAAS,QAAQ;IACjB,UAAU,CAAC;KACT,IAAI,QAAQ;KACZ,MAAM;KACN,SAAS,QAAQ;IAClB,CAAC;GACH;AACD,SAAM,KAAK,QAAQ,OAAO,MAAM;EACjC;CACF;CAED,OAAO,SAASF,SAA+D;AAC7E,MAAI,QAAQ,kBAAkB;GAC5B,MAAMC,QAAmB;IACvB,MAAMC,sBAAU;IAChB,WAAW,QAAQ;IACnB,MAAM;IACN,SAAS,QAAQ;IACjB,UAAU,CAAC;KACT,IAAI,QAAQ;KACZ,MAAM;KACN,SAAS,QAAQ;IAClB,CAAC;GACH;AACD,SAAM,KAAK,QAAQ,OAAO,MAAM;EACjC;CACF;AACF"}