mirror of
https://github.com/MindWorkAI/AI-Studio.git
synced 2026-10-11 09:53:48 +00:00
Refactor components (#80)
This commit is contained in:
1 parent
a18cb22263
commit
1d1af91f3e
137 files changed
+220
-220
No files matched your search
@@ -1,4 +1,4 @@
|
||||
using AIStudio.Components;
|
||||
using AIStudio.Assistants;
|
||||
|
||||
namespace AIStudio.Tools;
|
||||
|
||||
@@ -6,7 +6,7 @@ public static class JsRuntimeExtensions
|
||||
{
|
||||
public static async Task GenerateAndShowDiff(this IJSRuntime jsRuntime, string text1, string text2)
|
||||
{
|
||||
await jsRuntime.InvokeVoidAsync("generateDiff", text1, text2, AssistantBase.ASSISTANT_RESULT_DIV_ID, AssistantBase.AFTER_RESULT_DIV_ID);
|
||||
await jsRuntime.InvokeVoidAsync("generateDiff", text1, text2, AssistantBase.RESULT_DIV_ID, AssistantBase.AFTER_RESULT_DIV_ID);
|
||||
}
|
||||
|
||||
public static async Task ClearDiv(this IJSRuntime jsRuntime, string divId)
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
namespace AIStudio.Tools;
|
||||
|
||||
public enum SendTo
|
||||
{
|
||||
NONE = 0,
|
||||
|
||||
GRAMMAR_SPELLING_ASSISTANT,
|
||||
ICON_FINDER_ASSISTANT,
|
||||
REWRITE_ASSISTANT,
|
||||
TRANSLATION_ASSISTANT,
|
||||
AGENDA_ASSISTANT,
|
||||
CODING_ASSISTANT,
|
||||
TEXT_SUMMARIZER_ASSISTANT,
|
||||
|
||||
CHAT,
|
||||
}
|
||||
@@ -1,5 +1,3 @@
|
||||
using AIStudio.Components.Pages;
|
||||
|
||||
namespace AIStudio.Tools;
|
||||
|
||||
public readonly record struct SendToButton() : IButtonData
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
namespace AIStudio.Tools;
|
||||
|
||||
public static class SendToExtensions
|
||||
{
|
||||
public static string Name(this SendTo assistant)
|
||||
{
|
||||
return assistant switch
|
||||
{
|
||||
SendTo.GRAMMAR_SPELLING_ASSISTANT => "Grammar & Spelling Assistant",
|
||||
SendTo.TEXT_SUMMARIZER_ASSISTANT => "Text Summarizer Assistant",
|
||||
SendTo.ICON_FINDER_ASSISTANT => "Icon Finder Assistant",
|
||||
SendTo.TRANSLATION_ASSISTANT => "Translation Assistant",
|
||||
SendTo.REWRITE_ASSISTANT => "Rewrite Assistant",
|
||||
SendTo.AGENDA_ASSISTANT => "Agenda Assistant",
|
||||
SendTo.CODING_ASSISTANT => "Coding Assistant",
|
||||
|
||||
SendTo.CHAT => "New Chat",
|
||||
|
||||
_ => "Send to ...",
|
||||
};
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
// ReSharper disable ClassNeverInstantiated.Global
|
||||
|
||||
namespace AIStudio.Tools.Services;
|
||||
|
||||
/// <summary>
|
||||
/// Wire up the clipboard service to copy Markdown to the clipboard.
|
||||
/// We use our own Rust-based clipboard service for this.
|
||||
/// </summary>
|
||||
public sealed class MarkdownClipboardService(Rust rust, IJSRuntime jsRuntime, ISnackbar snackbar) : IMudMarkdownClipboardService
|
||||
{
|
||||
private IJSRuntime JsRuntime { get; } = jsRuntime;
|
||||
|
||||
private ISnackbar Snackbar { get; } = snackbar;
|
||||
|
||||
private Rust Rust { get; } = rust;
|
||||
|
||||
/// <summary>
|
||||
/// Gets called when the user wants to copy the markdown to the clipboard.
|
||||
/// </summary>
|
||||
/// <param name="text">The Markdown text to copy.</param>
|
||||
public async ValueTask CopyToClipboardAsync(string text) => await this.Rust.CopyText2Clipboard(this.JsRuntime, this.Snackbar, text);
|
||||
}
|
||||
+1
-1
@@ -1,7 +1,7 @@
|
||||
using AIStudio.Settings;
|
||||
using AIStudio.Settings.DataModel;
|
||||
|
||||
namespace AIStudio.Tools;
|
||||
namespace AIStudio.Tools.Services;
|
||||
|
||||
public class TemporaryChatService(SettingsManager settingsManager) : BackgroundService
|
||||
{
|
||||
+1
-1
@@ -3,7 +3,7 @@ using AIStudio.Settings.DataModel;
|
||||
|
||||
using Microsoft.AspNetCore.Components;
|
||||
|
||||
namespace AIStudio.Tools;
|
||||
namespace AIStudio.Tools.Services;
|
||||
|
||||
public sealed class UpdateService : BackgroundService, IMessageBusReceiver
|
||||
{
|
||||
Reference in new issue
Block a user