mirror of
				https://github.com/MindWorkAI/AI-Studio.git
				synced 2025-11-04 04:00:21 +00:00 
			
		
		
		
	Refactored provider dashboard metadata into provider extensions
This commit is contained in:
		
							parent
							
								
									c282c209bd
								
							
						
					
					
						commit
						4a9c2e3a76
					
				@ -52,7 +52,7 @@
 | 
				
			|||||||
                        }
 | 
					                        }
 | 
				
			||||||
                    </MudTd>
 | 
					                    </MudTd>
 | 
				
			||||||
                    <MudTd Style="text-align: left;">
 | 
					                    <MudTd Style="text-align: left;">
 | 
				
			||||||
                        <MudButton Variant="Variant.Filled" Color="Color.Info" StartIcon="@Icons.Material.Filled.OpenInBrowser" Class="ma-2" Href="@this.GetProviderDashboardURL(context.UsedLLMProvider)" Target="_blank" Disabled="@(!this.HasDashboard(context.UsedLLMProvider))">
 | 
					                        <MudButton Variant="Variant.Filled" Color="Color.Info" StartIcon="@Icons.Material.Filled.OpenInBrowser" Class="ma-2" Href="@context.UsedLLMProvider.GetDashboardURL()" Target="_blank" Disabled="@(!context.UsedLLMProvider.HasDashboard())">
 | 
				
			||||||
                            Open Dashboard
 | 
					                            Open Dashboard
 | 
				
			||||||
                        </MudButton>
 | 
					                        </MudButton>
 | 
				
			||||||
                        <MudButton Variant="Variant.Filled" Color="Color.Info" StartIcon="@Icons.Material.Filled.Edit" Class="ma-2" OnClick="() => this.EditProvider(context)">
 | 
					                        <MudButton Variant="Variant.Filled" Color="Color.Info" StartIcon="@Icons.Material.Filled.Edit" Class="ma-2" OnClick="() => this.EditProvider(context)">
 | 
				
			||||||
 | 
				
			|||||||
@ -125,30 +125,6 @@ public partial class Settings : ComponentBase, IMessageBusReceiver, IDisposable
 | 
				
			|||||||
        await this.MessageBus.SendMessage<bool>(this, Event.CONFIGURATION_CHANGED);
 | 
					        await this.MessageBus.SendMessage<bool>(this, Event.CONFIGURATION_CHANGED);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    private bool HasDashboard(LLMProviders llmProvider) => llmProvider switch
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
        LLMProviders.OPEN_AI => true,
 | 
					 | 
				
			||||||
        LLMProviders.MISTRAL => true,
 | 
					 | 
				
			||||||
        LLMProviders.ANTHROPIC => true,
 | 
					 | 
				
			||||||
        LLMProviders.GROQ => true,
 | 
					 | 
				
			||||||
        LLMProviders.FIREWORKS => true,
 | 
					 | 
				
			||||||
        LLMProviders.GOOGLE => true,
 | 
					 | 
				
			||||||
        
 | 
					 | 
				
			||||||
        _ => false,
 | 
					 | 
				
			||||||
    };
 | 
					 | 
				
			||||||
    
 | 
					 | 
				
			||||||
    private string GetProviderDashboardURL(LLMProviders llmProvider) => llmProvider switch
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
        LLMProviders.OPEN_AI => "https://platform.openai.com/usage",
 | 
					 | 
				
			||||||
        LLMProviders.MISTRAL => "https://console.mistral.ai/usage/",
 | 
					 | 
				
			||||||
        LLMProviders.ANTHROPIC => "https://console.anthropic.com/settings/plans",
 | 
					 | 
				
			||||||
        LLMProviders.GROQ => "https://console.groq.com/settings/usage",
 | 
					 | 
				
			||||||
        LLMProviders.GOOGLE => "https://console.cloud.google.com/billing",
 | 
					 | 
				
			||||||
        LLMProviders.FIREWORKS => "https://fireworks.ai/account/billing",
 | 
					 | 
				
			||||||
        
 | 
					 | 
				
			||||||
        _ => string.Empty,
 | 
					 | 
				
			||||||
    };
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    private string GetProviderModelName(AIStudio.Settings.Provider provider)
 | 
					    private string GetProviderModelName(AIStudio.Settings.Provider provider)
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
        const int MAX_LENGTH = 36;
 | 
					        const int MAX_LENGTH = 36;
 | 
				
			||||||
 | 
				
			|||||||
@ -157,6 +157,30 @@ public static class LLMProvidersExtensions
 | 
				
			|||||||
        _ => string.Empty,
 | 
					        _ => string.Empty,
 | 
				
			||||||
    };
 | 
					    };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public static string GetDashboardURL(this LLMProviders provider) => provider switch
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        LLMProviders.OPEN_AI => "https://platform.openai.com/usage",
 | 
				
			||||||
 | 
					        LLMProviders.MISTRAL => "https://console.mistral.ai/usage/",
 | 
				
			||||||
 | 
					        LLMProviders.ANTHROPIC => "https://console.anthropic.com/settings/plans",
 | 
				
			||||||
 | 
					        LLMProviders.GROQ => "https://console.groq.com/settings/usage",
 | 
				
			||||||
 | 
					        LLMProviders.GOOGLE => "https://console.cloud.google.com/billing",
 | 
				
			||||||
 | 
					        LLMProviders.FIREWORKS => "https://fireworks.ai/account/billing",
 | 
				
			||||||
 | 
					        
 | 
				
			||||||
 | 
					        _ => string.Empty,
 | 
				
			||||||
 | 
					    };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public static bool HasDashboard(this LLMProviders provider) => provider switch
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        LLMProviders.OPEN_AI => true,
 | 
				
			||||||
 | 
					        LLMProviders.MISTRAL => true,
 | 
				
			||||||
 | 
					        LLMProviders.ANTHROPIC => true,
 | 
				
			||||||
 | 
					        LLMProviders.GROQ => true,
 | 
				
			||||||
 | 
					        LLMProviders.FIREWORKS => true,
 | 
				
			||||||
 | 
					        LLMProviders.GOOGLE => true,
 | 
				
			||||||
 | 
					        
 | 
				
			||||||
 | 
					        _ => false,
 | 
				
			||||||
 | 
					    };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public static string GetModelsOverviewURL(this LLMProviders provider) => provider switch
 | 
					    public static string GetModelsOverviewURL(this LLMProviders provider) => provider switch
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
        LLMProviders.FIREWORKS => "https://fireworks.ai/models?show=Serverless",
 | 
					        LLMProviders.FIREWORKS => "https://fireworks.ai/models?show=Serverless",
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
		Reference in New Issue
	
	Block a user