Add Support for Attaching Additional Contents to Specified Prompt Message when Converting to Chat Message, Specified For File Support ...

This commit is contained in:
2026-09-30 23:12:39 +03:30
parent 47b2cbc0d2
commit 755eafa7d2
+24 -5
View File
@@ -352,22 +352,42 @@ namespace xAiModels.Extensions
return result; return result;
} }
/// <summary>
/// Converts a Message Dto to ChatMessage ...
/// </summary>
/// <param name="source"></param>
/// <param name="additionalContents"></param>
/// <returns></returns>
public static ChatMessage ToChatMessages( public static ChatMessage ToChatMessages(
this XAiMessageDto source this XAiMessageDto source,
IList<AIContent> additionalContents = null
) )
{ {
//
// TODO: Handle Files Attached here ...
// //
ChatMessage result = null; ChatMessage result = null;
// //
if (!source.IsNullOrDefault()) if (!source.IsNullOrDefault())
{ {
//
var contents = new List<AIContent>
{
//
// Add Source Content ...
new TextContent(source.Content)
};
//
// Add Additional Content ...
if (additionalContents.HasChild())
{
contents.AddRange(additionalContents);
}
// //
result = new ChatMessage result = new ChatMessage
{ {
Contents = contents,
AuthorName = AuthorName =
source.Role == XAiChatRole.User && source.Role == XAiChatRole.User &&
!source.Owner.IsNullOrDefault() !source.Owner.IsNullOrDefault()
@@ -375,7 +395,6 @@ namespace xAiModels.Extensions
: string.Empty, : string.Empty,
Role = source.Role.ToChatRole(), Role = source.Role.ToChatRole(),
MessageId = source.Id.ToString(), MessageId = source.Id.ToString(),
Contents = [new TextContent(source.Content)]
}; };
} }