MCPcopy Create free account
hub / github.com/TanStack/ai / uiMessageToModelMessages

Function uiMessageToModelMessages

packages/ai/src/activities/chat/messages.ts:156–172  ·  view source on GitHub ↗
(
  uiMessage: UIMessage,
)

Source from the content-addressed store, hash-verified

154 * @returns An array of ModelMessages preserving part ordering
155 */
156export function uiMessageToModelMessages(
157 uiMessage: UIMessage,
158): Array<ModelMessage> {
159 // Skip system messages - they're handled via systemPrompts, not ModelMessages
160 if (uiMessage.role === 'system') {
161 return []
162 }
163
164 // For non-assistant messages (user), use the simpler path since they
165 // don't have tool calls or tool results to interleave
166 if (uiMessage.role !== 'assistant') {
167 return [buildUserOrToolMessage(uiMessage)]
168 }
169
170 // For assistant messages, walk parts in order to preserve interleaving
171 return buildAssistantMessages(uiMessage)
172}
173
174/**
175 * Build a single ModelMessage for user messages (simple path).

Callers 4

convertToModelMessageFunction · 0.90
toModelMessagesMethod · 0.85

Calls 2

buildUserOrToolMessageFunction · 0.85
buildAssistantMessagesFunction · 0.85

Tested by

no test coverage detected