From e8cba0ca019da62ef090b84f4e415301f542b84e Mon Sep 17 00:00:00 2001 From: duanyongcheng Date: Fri, 7 Mar 2025 14:56:00 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=F0=9F=8E=B8=20=E5=9C=A8=E9=A1=B6?= =?UTF-8?q?=E9=83=A8=E7=9A=84=E6=A8=A1=E5=9E=8B=E6=90=9C=E7=B4=A2=E6=A1=86?= =?UTF-8?q?=E6=98=BE=E7=A4=BA=E5=9B=BA=E5=AE=9A=E6=A8=A1=E5=9E=8B=E7=9A=84?= =?UTF-8?q?=E4=BE=9B=E5=BA=94=E5=95=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../components/Popups/SelectModelPopup.tsx | 26 +++++++++++++------ 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/src/renderer/src/components/Popups/SelectModelPopup.tsx b/src/renderer/src/components/Popups/SelectModelPopup.tsx index aa8c2e10..e84dd2b7 100644 --- a/src/renderer/src/components/Popups/SelectModelPopup.tsx +++ b/src/renderer/src/components/Popups/SelectModelPopup.tsx @@ -130,19 +130,29 @@ const PopupContainer: React.FC = ({ model, resolve }) => { if (pinnedModels.length > 0 && searchText.length === 0) { const pinnedItems = providers - .flatMap((p) => p.models || []) - .filter((m) => pinnedModels.includes(getModelUniqId(m))) + .flatMap((p) => + p.models + .filter((m) => pinnedModels.includes(getModelUniqId(m))) + .map((m) => ({ + key: getModelUniqId(m), + model: m, + provider: p + })) + ) .map((m) => ({ - key: getModelUniqId(m) + '_pinned', + key: getModelUniqId(m.model) + '_pinned', label: ( - {m?.name} + + {m.model?.name} | {m.provider.isSystem ? t(`provider.${m.provider.id}`) : m.provider.name} + {' '} + { e.stopPropagation() - togglePin(getModelUniqId(m)) + togglePin(getModelUniqId(m.model)) }} isPinned={true}> @@ -150,12 +160,12 @@ const PopupContainer: React.FC = ({ model, resolve }) => { ), icon: ( - - {first(m?.name)} + + {first(m.model?.name)} ), onClick: () => { - resolve(m) + resolve(m.model) setOpen(false) } }))