mirror of
https://github.com/MindWorkAI/AI-Studio.git
synced 2025-02-05 13:49:07 +00:00
Refactored the "send to" implementation of assistants (#85)
This commit is contained in:
parent
34884859d7
commit
18718a6c47
@ -179,34 +179,19 @@ public abstract partial class AssistantBase : ComponentBase
|
||||
},
|
||||
};
|
||||
|
||||
var (eventItem, path) = destination switch
|
||||
{
|
||||
SendTo.AGENDA_ASSISTANT => (Event.SEND_TO_AGENDA_ASSISTANT, Routes.ASSISTANT_AGENDA),
|
||||
SendTo.CODING_ASSISTANT => (Event.SEND_TO_CODING_ASSISTANT, Routes.ASSISTANT_CODING),
|
||||
SendTo.REWRITE_ASSISTANT => (Event.SEND_TO_REWRITE_ASSISTANT, Routes.ASSISTANT_REWRITE),
|
||||
SendTo.EMAIL_ASSISTANT => (Event.SEND_TO_EMAIL_ASSISTANT, Routes.ASSISTANT_EMAIL),
|
||||
SendTo.TRANSLATION_ASSISTANT => (Event.SEND_TO_TRANSLATION_ASSISTANT, Routes.ASSISTANT_TRANSLATION),
|
||||
SendTo.ICON_FINDER_ASSISTANT => (Event.SEND_TO_ICON_FINDER_ASSISTANT, Routes.ASSISTANT_ICON_FINDER),
|
||||
SendTo.GRAMMAR_SPELLING_ASSISTANT => (Event.SEND_TO_GRAMMAR_SPELLING_ASSISTANT, Routes.ASSISTANT_GRAMMAR_SPELLING),
|
||||
SendTo.TEXT_SUMMARIZER_ASSISTANT => (Event.SEND_TO_TEXT_SUMMARIZER_ASSISTANT, Routes.ASSISTANT_SUMMARIZER),
|
||||
|
||||
SendTo.CHAT => (Event.SEND_TO_CHAT, Routes.CHAT),
|
||||
|
||||
_ => (Event.NONE, Routes.ASSISTANTS),
|
||||
};
|
||||
|
||||
var sendToData = destination.GetData();
|
||||
switch (destination)
|
||||
{
|
||||
case SendTo.CHAT:
|
||||
MessageBus.INSTANCE.DeferMessage(this, eventItem, this.ConvertToChatThread);
|
||||
MessageBus.INSTANCE.DeferMessage(this, sendToData.Event, this.ConvertToChatThread);
|
||||
break;
|
||||
|
||||
default:
|
||||
MessageBus.INSTANCE.DeferMessage(this, eventItem, contentToSend);
|
||||
MessageBus.INSTANCE.DeferMessage(this, sendToData.Event, contentToSend);
|
||||
break;
|
||||
}
|
||||
|
||||
this.NavigationManager.NavigateTo(path);
|
||||
this.NavigationManager.NavigateTo(sendToData.Route);
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
|
||||
|
3
app/MindWork AI Studio/Tools/SendToData.cs
Normal file
3
app/MindWork AI Studio/Tools/SendToData.cs
Normal file
@ -0,0 +1,3 @@
|
||||
namespace AIStudio.Tools;
|
||||
|
||||
public readonly record struct SendToData(Event Event, string Route);
|
@ -2,9 +2,7 @@ namespace AIStudio.Tools;
|
||||
|
||||
public static class SendToExtensions
|
||||
{
|
||||
public static string Name(this SendTo assistant)
|
||||
{
|
||||
return assistant switch
|
||||
public static string Name(this SendTo assistant) => assistant switch
|
||||
{
|
||||
SendTo.GRAMMAR_SPELLING_ASSISTANT => "Grammar & Spelling Assistant",
|
||||
SendTo.TEXT_SUMMARIZER_ASSISTANT => "Text Summarizer Assistant",
|
||||
@ -19,5 +17,20 @@ public static class SendToExtensions
|
||||
|
||||
_ => "Send to ...",
|
||||
};
|
||||
}
|
||||
|
||||
public static SendToData GetData(this SendTo destination) => destination switch
|
||||
{
|
||||
SendTo.AGENDA_ASSISTANT => new(Event.SEND_TO_AGENDA_ASSISTANT, Routes.ASSISTANT_AGENDA),
|
||||
SendTo.CODING_ASSISTANT => new(Event.SEND_TO_CODING_ASSISTANT, Routes.ASSISTANT_CODING),
|
||||
SendTo.REWRITE_ASSISTANT => new(Event.SEND_TO_REWRITE_ASSISTANT, Routes.ASSISTANT_REWRITE),
|
||||
SendTo.EMAIL_ASSISTANT => new(Event.SEND_TO_EMAIL_ASSISTANT, Routes.ASSISTANT_EMAIL),
|
||||
SendTo.TRANSLATION_ASSISTANT => new(Event.SEND_TO_TRANSLATION_ASSISTANT, Routes.ASSISTANT_TRANSLATION),
|
||||
SendTo.ICON_FINDER_ASSISTANT => new(Event.SEND_TO_ICON_FINDER_ASSISTANT, Routes.ASSISTANT_ICON_FINDER),
|
||||
SendTo.GRAMMAR_SPELLING_ASSISTANT => new(Event.SEND_TO_GRAMMAR_SPELLING_ASSISTANT, Routes.ASSISTANT_GRAMMAR_SPELLING),
|
||||
SendTo.TEXT_SUMMARIZER_ASSISTANT => new(Event.SEND_TO_TEXT_SUMMARIZER_ASSISTANT, Routes.ASSISTANT_SUMMARIZER),
|
||||
|
||||
SendTo.CHAT => new(Event.SEND_TO_CHAT, Routes.CHAT),
|
||||
|
||||
_ => new(Event.NONE, Routes.ASSISTANTS),
|
||||
};
|
||||
}
|
@ -3,3 +3,4 @@
|
||||
- Added the possibility to preselect some e-mail writing assistant options.
|
||||
- Improved the content validation for the agenda assistant.
|
||||
- Improved the language handling of the agenda assistant.
|
||||
- Refactored the "send to" implementation of assistants.
|
Loading…
Reference in New Issue
Block a user