diff --git a/app/MindWork AI Studio/Components/TextInfoLines.razor b/app/MindWork AI Studio/Components/TextInfoLines.razor index 02dadb48..68186316 100644 --- a/app/MindWork AI Studio/Components/TextInfoLines.razor +++ b/app/MindWork AI Studio/Components/TextInfoLines.razor @@ -9,6 +9,7 @@ Lines="3" MaxLines="@this.MaxLines" AutoGrow="@true" + Style="@this.GetColor()" UserAttributes="@USER_INPUT_ATTRIBUTES" /> @if (this.ShowingCopyButton) diff --git a/app/MindWork AI Studio/Components/TextInfoLines.razor.cs b/app/MindWork AI Studio/Components/TextInfoLines.razor.cs index 64d5924d..4d0a9172 100644 --- a/app/MindWork AI Studio/Components/TextInfoLines.razor.cs +++ b/app/MindWork AI Studio/Components/TextInfoLines.razor.cs @@ -20,6 +20,9 @@ public partial class TextInfoLines : ComponentBase [Parameter] public bool ShowingCopyButton { get; set; } = true; + + [Parameter] + public TextColor Color { get; set; } = TextColor.DEFAULT; [Inject] private RustService RustService { get; init; } = null!; @@ -47,4 +50,13 @@ public partial class TextInfoLines : ComponentBase private string ClipboardTooltip => $"Copy {this.ClipboardTooltipSubject} to the clipboard"; private async Task CopyToClipboard(string content) => await this.RustService.CopyText2Clipboard(this.Snackbar, content); + + private string GetColor() + { + var htmlColorCode = this.Color.GetHTMLColor(this.SettingsManager); + if(string.IsNullOrWhiteSpace(htmlColorCode)) + return string.Empty; + + return $"color: {htmlColorCode} !important;"; + } } \ No newline at end of file diff --git a/app/MindWork AI Studio/Tools/TextColor.cs b/app/MindWork AI Studio/Tools/TextColor.cs new file mode 100644 index 00000000..d7531b56 --- /dev/null +++ b/app/MindWork AI Studio/Tools/TextColor.cs @@ -0,0 +1,11 @@ +namespace AIStudio.Tools; + +public enum TextColor +{ + DEFAULT, + + WARN, + ERROR, + SUCCESS, + INFO, +} \ No newline at end of file diff --git a/app/MindWork AI Studio/Tools/TextColorExtensions.cs b/app/MindWork AI Studio/Tools/TextColorExtensions.cs new file mode 100644 index 00000000..eb70213b --- /dev/null +++ b/app/MindWork AI Studio/Tools/TextColorExtensions.cs @@ -0,0 +1,18 @@ +using AIStudio.Settings; + +namespace AIStudio.Tools; + +public static class TextColorExtensions +{ + public static string GetHTMLColor(this TextColor color, SettingsManager settingsManager) => color switch + { + TextColor.DEFAULT => string.Empty, + + TextColor.ERROR => settingsManager.IsDarkMode ? "#ff6c6c" : "#ff0000", + TextColor.WARN => settingsManager.IsDarkMode ? "#c7a009" : "#c7c000", + TextColor.SUCCESS => settingsManager.IsDarkMode ? "#08b342" : "#009933", + TextColor.INFO => settingsManager.IsDarkMode ? "#5279b8" : "#2d67c4", + + _ => string.Empty, + }; +} \ No newline at end of file