diff --git a/app/MindWork AI Studio/Assistants/Dynamic/AssistantDynamic.razor b/app/MindWork AI Studio/Assistants/Dynamic/AssistantDynamic.razor index 91448f52..07fa0f6b 100644 --- a/app/MindWork AI Studio/Assistants/Dynamic/AssistantDynamic.razor +++ b/app/MindWork AI Studio/Assistants/Dynamic/AssistantDynamic.razor @@ -145,6 +145,27 @@ else } break; + case AssistantComponentType.FILE_ATTACHMENTS: + if (component is AssistantFileAttachment fileAttachment) + { + var fileState = this.assistantState.FileAttachments[fileAttachment.Name]; +
+ @if (!string.IsNullOrWhiteSpace(fileAttachment.Heading)) + { + @fileAttachment.Heading + } +
+ +
+
+ } + break; + case AssistantComponentType.DROPDOWN: if (component is AssistantDropdown assistantDropdown) { diff --git a/app/MindWork AI Studio/Assistants/Dynamic/AssistantDynamic.razor.cs b/app/MindWork AI Studio/Assistants/Dynamic/AssistantDynamic.razor.cs index 595836a7..19cd7183 100644 --- a/app/MindWork AI Studio/Assistants/Dynamic/AssistantDynamic.razor.cs +++ b/app/MindWork AI Studio/Assistants/Dynamic/AssistantDynamic.razor.cs @@ -380,6 +380,11 @@ public partial class AssistantDynamic : AssistantBaseCore private static string GetOptionalStyle(string? style) => string.IsNullOrWhiteSpace(style) ? string.Empty : style; + private List CollectFileAttachments() => + this.assistantState.FileAttachments.Values + .SelectMany(static state => state.DocumentPaths) + .ToList(); + private bool IsButtonActionRunning(string buttonName) => this.executingButtonActions.Contains(buttonName); private bool IsSwitchActionRunning(string switchName) => this.executingSwitchActions.Contains(switchName); @@ -568,7 +573,7 @@ public partial class AssistantDynamic : AssistantBaseCore } this.CreateChatThread(); - var time = this.AddUserRequest(await this.CollectUserPromptAsync()); + var time = this.AddUserRequest(await this.CollectUserPromptAsync(), false, this.CollectFileAttachments()); await this.AddAIResponseAsync(time); }