AI-Studio/app/MindWork AI Studio/Provider/ConfidenceLevelExtensions.cs

51 lines
1.9 KiB
C#
Raw Normal View History

using AIStudio.Settings;
using AIStudio.Tools.PluginSystem;
2024-09-11 21:08:02 +00:00
namespace AIStudio.Provider;
public static class ConfidenceLevelExtensions
{
private static string TB(string fallbackEN) => I18N.I.T(fallbackEN, typeof(ConfidenceLevelExtensions).Namespace, nameof(ConfidenceLevelExtensions));
2024-09-11 21:08:02 +00:00
public static string GetName(this ConfidenceLevel level) => level switch
{
ConfidenceLevel.NONE => TB("No provider selected"),
2024-09-11 21:08:02 +00:00
ConfidenceLevel.UNTRUSTED => TB("Untrusted"),
ConfidenceLevel.VERY_LOW => TB("Very Low"),
ConfidenceLevel.LOW => TB("Low"),
ConfidenceLevel.MODERATE => TB("Moderate"),
ConfidenceLevel.MEDIUM => TB("Medium"),
ConfidenceLevel.HIGH => TB("High"),
2024-09-11 21:08:02 +00:00
_ => TB("Unknown confidence level"),
2024-09-11 21:08:02 +00:00
};
public static string GetColor(this ConfidenceLevel level, SettingsManager settingsManager) => (level, settingsManager.IsDarkMode) switch
2024-09-11 21:08:02 +00:00
{
(ConfidenceLevel.NONE, _) => "#cccccc",
(ConfidenceLevel.UNTRUSTED, false) => "#ff0000",
(ConfidenceLevel.UNTRUSTED, true) => "#800000",
(ConfidenceLevel.VERY_LOW, false) => "#ff6600",
(ConfidenceLevel.VERY_LOW, true) => "#803300",
(ConfidenceLevel.LOW, false) => "#ffcc00",
(ConfidenceLevel.LOW, true) => "#806600",
(ConfidenceLevel.MODERATE, false) => "#99cc00",
(ConfidenceLevel.MODERATE, true) => "#4d6600",
(ConfidenceLevel.MEDIUM, false) => "#86b300",
(ConfidenceLevel.MEDIUM, true) => "#394d00",
2024-09-11 21:08:02 +00:00
(ConfidenceLevel.HIGH, false) => "#009933",
(ConfidenceLevel.HIGH, true) => "#004d1a",
2024-09-11 21:08:02 +00:00
(_, false) => "#cc6600",
(_, true) => "#663300",
2024-09-11 21:08:02 +00:00
};
public static string SetColorStyle(this ConfidenceLevel level, SettingsManager settingsManager) => $"--confidence-color: {level.GetColor(settingsManager)};";
2024-09-11 21:08:02 +00:00
}