From 53298c88a21d1283f6a66e65da996ead72375a65 Mon Sep 17 00:00:00 2001 From: DIYgod Date: Thu, 9 Oct 2025 12:41:40 +0800 Subject: [PATCH] feat: simplify provider types and update default handling --- .../components/layouts/AIModelIndicator.tsx | 21 ++++++++----------- 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/apps/desktop/layer/renderer/src/modules/ai-chat/components/layouts/AIModelIndicator.tsx b/apps/desktop/layer/renderer/src/modules/ai-chat/components/layouts/AIModelIndicator.tsx index e6e3641b2..f19651a4a 100644 --- a/apps/desktop/layer/renderer/src/modules/ai-chat/components/layouts/AIModelIndicator.tsx +++ b/apps/desktop/layer/renderer/src/modules/ai-chat/components/layouts/AIModelIndicator.tsx @@ -15,34 +15,31 @@ interface AIModelIndicatorProps { onModelChange?: (model: string) => void } -type ProviderType = "openai" | "anthropic" | "google" | "meta" +type ProviderType = "openai" | "google" | "auto" const providerIcons: Record = { openai: "i-simple-icons-openai", - anthropic: "i-simple-icons-anthropic", - google: "i-simple-icons-google", - meta: "i-simple-icons-meta", + google: "i-simple-icons-googlegemini", + auto: "i-simple-icons-folo", } const AIModelNameMapping = { - "gpt-4o": "GPT-4o", - "gpt-4o-mini": "GPT-4o mini", - "gpt-4": "GPT-4", + auto: "Auto", "gpt-5": "GPT-5", "gpt-5-mini": "GPT-5 mini", "gpt-5-nano": "GPT-5 nano", } const parseModelString = (modelString: string) => { - if (!modelString || !modelString.includes("/")) { - return { provider: "openai" as ProviderType, modelName: modelString || "Unknown" } + if (!modelString || !modelString.includes("/") || modelString === "auto") { + return { provider: "auto" as ProviderType, modelName: modelString || "Unknown" } } const [provider, ...modelParts] = modelString.split("/") const modelName = modelParts.join("/") return { - provider: (provider as ProviderType) || "openai", + provider: (provider as ProviderType) || "auto", modelName: modelName || "Unknown", } } @@ -55,7 +52,7 @@ export const AIModelIndicator = memo(({ className, onModelChange }: AIModelIndic return parseModelString(currentModel || defaultModel || "") }, [currentModel, defaultModel]) - const iconClass = providerIcons[provider] || providerIcons.openai + const iconClass = providerIcons[provider] || providerIcons.auto const hasMultipleModels = availableModels && availableModels.length > 1 const modelContent = ( @@ -92,7 +89,7 @@ export const AIModelIndicator = memo(({ className, onModelChange }: AIModelIndic {availableModels.map((model) => { const { provider: itemProvider, modelName: itemModelName } = parseModelString(model) - const itemIconClass = providerIcons[itemProvider] || providerIcons.openai + const itemIconClass = providerIcons[itemProvider] || providerIcons.auto const isSelected = model === (currentModel || defaultModel) const handleModelSelect = () => {