diff --git a/Extensions/XAiModelsExtensions.cs b/Extensions/XAiModelsExtensions.cs index 0be37c5..ab16409 100644 --- a/Extensions/XAiModelsExtensions.cs +++ b/Extensions/XAiModelsExtensions.cs @@ -352,22 +352,42 @@ namespace xAiModels.Extensions return result; } + /// + /// Converts a Message Dto to ChatMessage ... + /// + /// + /// + /// public static ChatMessage ToChatMessages( - this XAiMessageDto source + this XAiMessageDto source, + IList additionalContents = null ) { - // - // TODO: Handle Files Attached here ... - // ChatMessage result = null; // if (!source.IsNullOrDefault()) { + // + var contents = new List + { + // + // Add Source Content ... + new TextContent(source.Content) + }; + + // + // Add Additional Content ... + if (additionalContents.HasChild()) + { + contents.AddRange(additionalContents); + } + // result = new ChatMessage { + Contents = contents, AuthorName = source.Role == XAiChatRole.User && !source.Owner.IsNullOrDefault() @@ -375,7 +395,6 @@ namespace xAiModels.Extensions : string.Empty, Role = source.Role.ToChatRole(), MessageId = source.Id.ToString(), - Contents = [new TextContent(source.Content)] }; }