From d9f5f1f050a8a0c9eabaf279f89ef4b702aa54dc Mon Sep 17 00:00:00 2001 From: ccnetcore Date: Sun, 11 Jan 2026 21:00:02 +0800 Subject: [PATCH] =?UTF-8?q?style:=20=E4=BF=AE=E6=94=B9=E6=A8=A1=E5=9E=8B?= =?UTF-8?q?=E9=80=89=E6=8B=A9=E5=88=97=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/components/ModelSelect/index.vue | 83 +++++++++++++++---- 1 file changed, 67 insertions(+), 16 deletions(-) diff --git a/Yi.Ai.Vue3/src/components/ModelSelect/index.vue b/Yi.Ai.Vue3/src/components/ModelSelect/index.vue index d70b15b2..ef8e2e69 100644 --- a/Yi.Ai.Vue3/src/components/ModelSelect/index.vue +++ b/Yi.Ai.Vue3/src/components/ModelSelect/index.vue @@ -17,6 +17,7 @@ const scrollbarRef = ref(); const activeProviderGroup = ref(''); const activeApiGroup = ref(''); const isScrolling = ref(false); +const filterPremiumOnly = ref(false); // 是否只显示尊享模型 // 检查模型是否可用 function isModelAvailable(item: GetSessionListVO) { @@ -95,18 +96,18 @@ const currentModelName = computed( () => modelStore.currentModelInfo && modelStore.currentModelInfo.modelName, ); -// API 类型映射 -const apiTypeNameMap: Record = { - Completions: 'OpenAI Chat Completion', - Responses: 'OpenAI Responses API', - Messages: 'Anthropic Claude API', - GenerateContent: 'Google Gemini API', -}; +// 过滤后的模型列表 +const filteredModelList = computed(() => { + if (filterPremiumOnly.value) { + return modelStore.modelList.filter(model => model.isPremiumPackage); + } + return modelStore.modelList; +}); // 按 API 类型分组 const groupedByApiType = computed(() => { const groups: Record = {}; - modelStore.modelList.forEach((model) => { + filteredModelList.value.forEach((model) => { const apiType = model.modelApiType || 'Completions'; if (!groups[apiType]) { groups[apiType] = []; @@ -119,7 +120,7 @@ const groupedByApiType = computed(() => { // 按 厂商 (Provider) 分组 const groupedByProvider = computed(() => { const groups: Record = {}; - modelStore.modelList.forEach((model) => { + filteredModelList.value.forEach((model) => { const provider = model.providerName || 'Other'; if (!groups[provider]) { groups[provider] = []; @@ -311,8 +312,17 @@ function getWrapperClass(item: GetSessionListVO) { align-center >
- -
+ +
+ +
+ 仅看尊享模型 +
+ 前往模型库 @@ -330,7 +340,7 @@ function getWrapperClass(item: GetSessionListVO) {
@@ -402,11 +412,11 @@ function getWrapperClass(item: GetSessionListVO) {
-
+
@@ -415,7 +425,7 @@ function getWrapperClass(item: GetSessionListVO) {