using AIStudio.Provider; using Microsoft.AspNetCore.Components; namespace AIStudio.Components; /// /// Shows a provider icon next to its name. /// /// /// Providers appear in select items, in table cells, and in group headers. All of them need the /// same icon and text pairing, so this component owns that layout once instead of repeating it at /// every call site. /// public partial class ProviderLabel : ComponentBase { /// /// The configured provider whose icon should be shown. Takes precedence over ProviderType. /// [Parameter] public AIStudio.Settings.Provider? ProviderSettings { get; set; } /// /// The LLM provider whose icon should be shown when no ProviderSettings was given. /// [Parameter] public LLMProviders ProviderType { get; set; } = LLMProviders.NONE; /// /// The validated custom icon supplied by a configuration plugin. /// [Parameter] public string CustomIconDataUrl { get; set; } = string.Empty; /// /// The text shown next to the icon. /// [Parameter] public string Text { get; set; } = string.Empty; /// /// Additional CSS class for the text. /// [Parameter] public string TextClass { get; set; } = string.Empty; }