diff --git a/web/frontend/src/components/app-sidebar.tsx b/web/frontend/src/components/app-sidebar.tsx index 28e990a0e..42be60555 100644 --- a/web/frontend/src/components/app-sidebar.tsx +++ b/web/frontend/src/components/app-sidebar.tsx @@ -1,7 +1,6 @@ import { IconChevronRight } from "@tabler/icons-react" import { IconAtom, - IconCloud, IconKey, IconListDetails, IconMessageCircle, @@ -39,7 +38,6 @@ const navGroups = [ label: "navigation.model_group", defaultOpen: true, items: [ - { title: "navigation.providers", url: "/providers", icon: IconCloud }, { title: "navigation.models", url: "/models", icon: IconAtom }, { title: "navigation.credentials", url: "/credentials", icon: IconKey }, ], diff --git a/web/frontend/src/components/chat/chat-composer.tsx b/web/frontend/src/components/chat/chat-composer.tsx index ecebcb8cb..0433c256c 100644 --- a/web/frontend/src/components/chat/chat-composer.tsx +++ b/web/frontend/src/components/chat/chat-composer.tsx @@ -1,14 +1,9 @@ -import { IconArrowUp, IconMicrophone, IconPaperclip } from "@tabler/icons-react" +import { IconArrowUp } from "@tabler/icons-react" import type { KeyboardEvent } from "react" import { useTranslation } from "react-i18next" import TextareaAutosize from "react-textarea-autosize" import { Button } from "@/components/ui/button" -import { - Tooltip, - TooltipContent, - TooltipTrigger, -} from "@/components/ui/tooltip" interface ChatComposerProps { input: string @@ -50,35 +45,7 @@ export function ChatComposer({ />
-
- - - - - {t("chat.attach")} - - - - - - - {t("chat.voice")} - -
+
{/* action buttons */}
- - + - diff --git a/web/frontend/src/components/credentials/openai-credential-card.tsx b/web/frontend/src/components/credentials/openai-credential-card.tsx index a8f643f45..00d93dec6 100644 --- a/web/frontend/src/components/credentials/openai-credential-card.tsx +++ b/web/frontend/src/components/credentials/openai-credential-card.tsx @@ -45,7 +45,14 @@ export function OpenAICredentialCard({ return ( + + + + OpenAI + + } description={t( "credentials.providers.openai.description", "Supports browser OAuth, device code, and token login.", diff --git a/web/frontend/src/components/models/edit-model-sheet.tsx b/web/frontend/src/components/models/edit-model-sheet.tsx index 2c19bfb1e..543e300bc 100644 --- a/web/frontend/src/components/models/edit-model-sheet.tsx +++ b/web/frontend/src/components/models/edit-model-sheet.tsx @@ -126,7 +126,7 @@ export function EditModelSheet({ side="right" className="flex flex-col gap-0 p-0 data-[side=right]:!w-full data-[side=right]:sm:!w-[560px] data-[side=right]:sm:!max-w-[560px]" > - + {t("models.edit.title", { name: model?.model_name })} @@ -286,7 +286,7 @@ export function EditModelSheet({ - + diff --git a/web/frontend/src/components/models/model-card.tsx b/web/frontend/src/components/models/model-card.tsx index 78821fbb0..316e05e4d 100644 --- a/web/frontend/src/components/models/model-card.tsx +++ b/web/frontend/src/components/models/model-card.tsx @@ -28,6 +28,7 @@ export function ModelCard({ }: ModelCardProps) { const { t } = useTranslation() const isOAuth = model.auth_method === "oauth" + const canSetDefault = model.configured && !model.is_default return (
onSetDefault(model)} - disabled={settingDefault} + disabled={settingDefault || !canSetDefault} title={t("models.action.setDefault")} > {settingDefault ? ( diff --git a/web/frontend/src/components/models/models-page.tsx b/web/frontend/src/components/models/models-page.tsx index 5d971c2b1..839212d0f 100644 --- a/web/frontend/src/components/models/models-page.tsx +++ b/web/frontend/src/components/models/models-page.tsx @@ -13,12 +13,12 @@ import { getProviderKey, getProviderLabel } from "./provider-label" import { ProviderSection } from "./provider-section" const PROVIDER_PRIORITY: Record = { - openai: 0, - gemini: 1, - anthropic: 2, - zhipu: 3, - deepseek: 4, - volcengine: 5, + volcengine: 0, + openai: 1, + gemini: 2, + anthropic: 3, + zhipu: 4, + deepseek: 5, openrouter: 6, qwen: 7, moonshot: 8, diff --git a/web/frontend/src/i18n/locales/en.json b/web/frontend/src/i18n/locales/en.json index ae7349fae..57eeacebe 100644 --- a/web/frontend/src/i18n/locales/en.json +++ b/web/frontend/src/i18n/locales/en.json @@ -2,7 +2,6 @@ "navigation": { "chat": "Chat", "model_group": "Models", - "providers": "Providers", "models": "Models", "credentials": "Credentials", "services": "Services", diff --git a/web/frontend/src/i18n/locales/zh.json b/web/frontend/src/i18n/locales/zh.json index 723a70af3..3897b48fe 100644 --- a/web/frontend/src/i18n/locales/zh.json +++ b/web/frontend/src/i18n/locales/zh.json @@ -2,7 +2,6 @@ "navigation": { "chat": "对话", "model_group": "模型", - "providers": "服务商", "models": "模型", "credentials": "凭据", "services": "服务",