diff --git a/app/MindWork AI Studio/Assistants/Agenda/AssistantAgenda.razor b/app/MindWork AI Studio/Assistants/Agenda/AssistantAgenda.razor
index ca0aca81..018800c6 100644
--- a/app/MindWork AI Studio/Assistants/Agenda/AssistantAgenda.razor
+++ b/app/MindWork AI Studio/Assistants/Agenda/AssistantAgenda.razor
@@ -48,8 +48,4 @@
}
-
-
-
- Create agenda
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/app/MindWork AI Studio/Assistants/Agenda/AssistantAgenda.razor.cs b/app/MindWork AI Studio/Assistants/Agenda/AssistantAgenda.razor.cs
index c104e41d..310f0705 100644
--- a/app/MindWork AI Studio/Assistants/Agenda/AssistantAgenda.razor.cs
+++ b/app/MindWork AI Studio/Assistants/Agenda/AssistantAgenda.razor.cs
@@ -97,6 +97,10 @@ public partial class AssistantAgenda : AssistantBaseCore
protected override IReadOnlyList FooterButtons => [];
+ protected override string SubmitText => "Create Agenda";
+
+ protected override Func SubmitAction => this.CreateAgenda;
+
protected override ChatThread ConvertToChatThread => (this.chatThread ?? new()) with
{
SystemPrompt = SystemPrompts.DEFAULT,
diff --git a/app/MindWork AI Studio/Assistants/AssistantBase.razor b/app/MindWork AI Studio/Assistants/AssistantBase.razor
index ac744a44..398f89ef 100644
--- a/app/MindWork AI Studio/Assistants/AssistantBase.razor
+++ b/app/MindWork AI Studio/Assistants/AssistantBase.razor
@@ -8,12 +8,16 @@
- @(this.Description)
+ @this.Description
@if (this.Body is not null)
{
- @(this.Body)
+ @this.Body
+
+
+ @this.SubmitText
+
}
diff --git a/app/MindWork AI Studio/Assistants/AssistantBase.razor.cs b/app/MindWork AI Studio/Assistants/AssistantBase.razor.cs
index 5bf8425a..b87f788a 100644
--- a/app/MindWork AI Studio/Assistants/AssistantBase.razor.cs
+++ b/app/MindWork AI Studio/Assistants/AssistantBase.razor.cs
@@ -52,6 +52,12 @@ public abstract partial class AssistantBase : ComponentBase
protected abstract bool MightPreselectValues();
+ protected abstract string SubmitText { get; }
+
+ protected abstract Func SubmitAction { get; }
+
+ protected virtual bool SubmitDisabled => false;
+
private protected virtual RenderFragment? Body => null;
protected virtual bool ShowResult => true;
diff --git a/app/MindWork AI Studio/Assistants/Coding/AssistantCoding.razor b/app/MindWork AI Studio/Assistants/Coding/AssistantCoding.razor
index 65fb656b..6af0819d 100644
--- a/app/MindWork AI Studio/Assistants/Coding/AssistantCoding.razor
+++ b/app/MindWork AI Studio/Assistants/Coding/AssistantCoding.razor
@@ -24,8 +24,4 @@
-
-
-
- Get support
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/app/MindWork AI Studio/Assistants/Coding/AssistantCoding.razor.cs b/app/MindWork AI Studio/Assistants/Coding/AssistantCoding.razor.cs
index 34764259..b06a3d40 100644
--- a/app/MindWork AI Studio/Assistants/Coding/AssistantCoding.razor.cs
+++ b/app/MindWork AI Studio/Assistants/Coding/AssistantCoding.razor.cs
@@ -28,6 +28,10 @@ public partial class AssistantCoding : AssistantBaseCore
protected override IReadOnlyList FooterButtons => [];
+ protected override string SubmitText => "Get Support";
+
+ protected override Func SubmitAction => this.GetSupport;
+
protected override void ResetFrom()
{
this.codingContexts.Clear();
diff --git a/app/MindWork AI Studio/Assistants/EMail/AssistantEMail.razor b/app/MindWork AI Studio/Assistants/EMail/AssistantEMail.razor
index e8997aa6..57c57876 100644
--- a/app/MindWork AI Studio/Assistants/EMail/AssistantEMail.razor
+++ b/app/MindWork AI Studio/Assistants/EMail/AssistantEMail.razor
@@ -20,8 +20,4 @@
-
-
-
- Create e-mail
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/app/MindWork AI Studio/Assistants/EMail/AssistantEMail.razor.cs b/app/MindWork AI Studio/Assistants/EMail/AssistantEMail.razor.cs
index a25077df..2f9b6f39 100644
--- a/app/MindWork AI Studio/Assistants/EMail/AssistantEMail.razor.cs
+++ b/app/MindWork AI Studio/Assistants/EMail/AssistantEMail.razor.cs
@@ -24,6 +24,10 @@ public partial class AssistantEMail : AssistantBaseCore
protected override IReadOnlyList FooterButtons => [];
+ protected override string SubmitText => "Create email";
+
+ protected override Func SubmitAction => this.CreateMail;
+
protected override ChatThread ConvertToChatThread => (this.chatThread ?? new()) with
{
SystemPrompt = SystemPrompts.DEFAULT,
diff --git a/app/MindWork AI Studio/Assistants/GrammarSpelling/AssistantGrammarSpelling.razor b/app/MindWork AI Studio/Assistants/GrammarSpelling/AssistantGrammarSpelling.razor
index d09355c8..18a4280f 100644
--- a/app/MindWork AI Studio/Assistants/GrammarSpelling/AssistantGrammarSpelling.razor
+++ b/app/MindWork AI Studio/Assistants/GrammarSpelling/AssistantGrammarSpelling.razor
@@ -3,8 +3,4 @@
-
-
-
- Proofread
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/app/MindWork AI Studio/Assistants/GrammarSpelling/AssistantGrammarSpelling.razor.cs b/app/MindWork AI Studio/Assistants/GrammarSpelling/AssistantGrammarSpelling.razor.cs
index 21227dfb..f90af671 100644
--- a/app/MindWork AI Studio/Assistants/GrammarSpelling/AssistantGrammarSpelling.razor.cs
+++ b/app/MindWork AI Studio/Assistants/GrammarSpelling/AssistantGrammarSpelling.razor.cs
@@ -41,6 +41,10 @@ public partial class AssistantGrammarSpelling : AssistantBaseCore
},
];
+ protected override string SubmitText => "Proofread";
+
+ protected override Func SubmitAction => this.ProofreadText;
+
protected override ChatThread ConvertToChatThread => (this.chatThread ?? new()) with
{
SystemPrompt = SystemPrompts.DEFAULT,
diff --git a/app/MindWork AI Studio/Assistants/IconFinder/AssistantIconFinder.razor b/app/MindWork AI Studio/Assistants/IconFinder/AssistantIconFinder.razor
index de8425e0..af241b87 100644
--- a/app/MindWork AI Studio/Assistants/IconFinder/AssistantIconFinder.razor
+++ b/app/MindWork AI Studio/Assistants/IconFinder/AssistantIconFinder.razor
@@ -15,8 +15,4 @@
Open website
}
-
-
-
- Find icon
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/app/MindWork AI Studio/Assistants/IconFinder/AssistantIconFinder.razor.cs b/app/MindWork AI Studio/Assistants/IconFinder/AssistantIconFinder.razor.cs
index e239c8f6..5123b918 100644
--- a/app/MindWork AI Studio/Assistants/IconFinder/AssistantIconFinder.razor.cs
+++ b/app/MindWork AI Studio/Assistants/IconFinder/AssistantIconFinder.razor.cs
@@ -29,6 +29,10 @@ public partial class AssistantIconFinder : AssistantBaseCore
protected override IReadOnlyList FooterButtons => [];
+ protected override string SubmitText => "Find Icon";
+
+ protected override Func SubmitAction => this.FindIcon;
+
protected override void ResetFrom()
{
this.inputContext = string.Empty;
diff --git a/app/MindWork AI Studio/Assistants/LegalCheck/AssistantLegalCheck.razor b/app/MindWork AI Studio/Assistants/LegalCheck/AssistantLegalCheck.razor
index 0f1328b4..f8494ea6 100644
--- a/app/MindWork AI Studio/Assistants/LegalCheck/AssistantLegalCheck.razor
+++ b/app/MindWork AI Studio/Assistants/LegalCheck/AssistantLegalCheck.razor
@@ -8,8 +8,4 @@
-
-
-
- Ask your questions
-
+
\ No newline at end of file
diff --git a/app/MindWork AI Studio/Assistants/LegalCheck/AssistantLegalCheck.razor.cs b/app/MindWork AI Studio/Assistants/LegalCheck/AssistantLegalCheck.razor.cs
index 05201944..b8dd0efd 100644
--- a/app/MindWork AI Studio/Assistants/LegalCheck/AssistantLegalCheck.razor.cs
+++ b/app/MindWork AI Studio/Assistants/LegalCheck/AssistantLegalCheck.razor.cs
@@ -24,6 +24,12 @@ public partial class AssistantLegalCheck : AssistantBaseCore
protected override IReadOnlyList FooterButtons => [];
+ protected override string SubmitText => "Ask your questions";
+
+ protected override Func SubmitAction => this.AksQuestions;
+
+ protected override bool SubmitDisabled => this.isAgentRunning;
+
protected override void ResetFrom()
{
this.inputLegalDocument = string.Empty;
diff --git a/app/MindWork AI Studio/Assistants/MyTasks/AssistantMyTasks.razor b/app/MindWork AI Studio/Assistants/MyTasks/AssistantMyTasks.razor
index 1b34dba2..23154c8b 100644
--- a/app/MindWork AI Studio/Assistants/MyTasks/AssistantMyTasks.razor
+++ b/app/MindWork AI Studio/Assistants/MyTasks/AssistantMyTasks.razor
@@ -4,8 +4,4 @@
-
-
-
- Analyze text
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/app/MindWork AI Studio/Assistants/MyTasks/AssistantMyTasks.razor.cs b/app/MindWork AI Studio/Assistants/MyTasks/AssistantMyTasks.razor.cs
index 6eba246e..1b3f5bed 100644
--- a/app/MindWork AI Studio/Assistants/MyTasks/AssistantMyTasks.razor.cs
+++ b/app/MindWork AI Studio/Assistants/MyTasks/AssistantMyTasks.razor.cs
@@ -28,6 +28,10 @@ public partial class AssistantMyTasks : AssistantBaseCore
""";
protected override IReadOnlyList FooterButtons => [];
+
+ protected override string SubmitText => "Analyze text";
+
+ protected override Func SubmitAction => this.AnalyzeText;
protected override bool ShowProfileSelection => false;
diff --git a/app/MindWork AI Studio/Assistants/RewriteImprove/AssistantRewriteImprove.razor b/app/MindWork AI Studio/Assistants/RewriteImprove/AssistantRewriteImprove.razor
index c9f8be42..c599ad12 100644
--- a/app/MindWork AI Studio/Assistants/RewriteImprove/AssistantRewriteImprove.razor
+++ b/app/MindWork AI Studio/Assistants/RewriteImprove/AssistantRewriteImprove.razor
@@ -5,8 +5,4 @@
-
-
-
- Improve
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/app/MindWork AI Studio/Assistants/RewriteImprove/AssistantRewriteImprove.razor.cs b/app/MindWork AI Studio/Assistants/RewriteImprove/AssistantRewriteImprove.razor.cs
index 6d8aef6e..0274610e 100644
--- a/app/MindWork AI Studio/Assistants/RewriteImprove/AssistantRewriteImprove.razor.cs
+++ b/app/MindWork AI Studio/Assistants/RewriteImprove/AssistantRewriteImprove.razor.cs
@@ -42,6 +42,10 @@ public partial class AssistantRewriteImprove : AssistantBaseCore
},
];
+ protected override string SubmitText => "Improve";
+
+ protected override Func SubmitAction => this.RewriteText;
+
protected override ChatThread ConvertToChatThread => (this.chatThread ?? new()) with
{
SystemPrompt = SystemPrompts.DEFAULT,
diff --git a/app/MindWork AI Studio/Assistants/Synonym/AssistantSynonyms.razor b/app/MindWork AI Studio/Assistants/Synonym/AssistantSynonyms.razor
index 908972c1..5ce13aab 100644
--- a/app/MindWork AI Studio/Assistants/Synonym/AssistantSynonyms.razor
+++ b/app/MindWork AI Studio/Assistants/Synonym/AssistantSynonyms.razor
@@ -6,7 +6,3 @@
-
-
- Get synonyms
-
diff --git a/app/MindWork AI Studio/Assistants/Synonym/AssistantSynonyms.razor.cs b/app/MindWork AI Studio/Assistants/Synonym/AssistantSynonyms.razor.cs
index c238aacf..444c348b 100644
--- a/app/MindWork AI Studio/Assistants/Synonym/AssistantSynonyms.razor.cs
+++ b/app/MindWork AI Studio/Assistants/Synonym/AssistantSynonyms.razor.cs
@@ -51,6 +51,10 @@ public partial class AssistantSynonyms : AssistantBaseCore
protected override IReadOnlyList FooterButtons => [];
+ protected override string SubmitText => "Find synonyms";
+
+ protected override Func SubmitAction => this.FindSynonyms;
+
protected override ChatThread ConvertToChatThread => (this.chatThread ?? new()) with
{
SystemPrompt = SystemPrompts.DEFAULT,
diff --git a/app/MindWork AI Studio/Assistants/TextSummarizer/AssistantTextSummarizer.razor b/app/MindWork AI Studio/Assistants/TextSummarizer/AssistantTextSummarizer.razor
index 69a7de9f..5302a1aa 100644
--- a/app/MindWork AI Studio/Assistants/TextSummarizer/AssistantTextSummarizer.razor
+++ b/app/MindWork AI Studio/Assistants/TextSummarizer/AssistantTextSummarizer.razor
@@ -9,8 +9,4 @@
-
-
-
- Summarize
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/app/MindWork AI Studio/Assistants/TextSummarizer/AssistantTextSummarizer.razor.cs b/app/MindWork AI Studio/Assistants/TextSummarizer/AssistantTextSummarizer.razor.cs
index 20c03006..8e5b071a 100644
--- a/app/MindWork AI Studio/Assistants/TextSummarizer/AssistantTextSummarizer.razor.cs
+++ b/app/MindWork AI Studio/Assistants/TextSummarizer/AssistantTextSummarizer.razor.cs
@@ -29,6 +29,12 @@ public partial class AssistantTextSummarizer : AssistantBaseCore
protected override IReadOnlyList FooterButtons => [];
+ protected override string SubmitText => "Summarize";
+
+ protected override Func SubmitAction => this.SummarizeText;
+
+ protected override bool SubmitDisabled => this.isAgentRunning;
+
protected override ChatThread ConvertToChatThread => (this.chatThread ?? new()) with
{
SystemPrompt = SystemPrompts.DEFAULT,
diff --git a/app/MindWork AI Studio/Assistants/Translation/AssistantTranslation.razor b/app/MindWork AI Studio/Assistants/Translation/AssistantTranslation.razor
index f05f662c..fa158797 100644
--- a/app/MindWork AI Studio/Assistants/Translation/AssistantTranslation.razor
+++ b/app/MindWork AI Studio/Assistants/Translation/AssistantTranslation.razor
@@ -17,8 +17,4 @@ else
}
-
-
-
- Translate
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/app/MindWork AI Studio/Assistants/Translation/AssistantTranslation.razor.cs b/app/MindWork AI Studio/Assistants/Translation/AssistantTranslation.razor.cs
index 29cc0ef4..3f2c37fa 100644
--- a/app/MindWork AI Studio/Assistants/Translation/AssistantTranslation.razor.cs
+++ b/app/MindWork AI Studio/Assistants/Translation/AssistantTranslation.razor.cs
@@ -25,6 +25,12 @@ public partial class AssistantTranslation : AssistantBaseCore
protected override IReadOnlyList FooterButtons => [];
+ protected override string SubmitText => "Translate";
+
+ protected override Func SubmitAction => () => this.TranslateText(true);
+
+ protected override bool SubmitDisabled => this.isAgentRunning;
+
protected override ChatThread ConvertToChatThread => (this.chatThread ?? new()) with
{
SystemPrompt = SystemPrompts.DEFAULT,