From a5dfc472d35d6e5afc19e7fce936609493401333 Mon Sep 17 00:00:00 2001 From: zhaoying Date: Tue, 7 Apr 2026 18:41:37 +0800 Subject: [PATCH] fix(web): knowledge base ui --- web/src/views/KnowledgeBase/index.tsx | 155 +++++++++++++------------- 1 file changed, 80 insertions(+), 75 deletions(-) diff --git a/web/src/views/KnowledgeBase/index.tsx b/web/src/views/KnowledgeBase/index.tsx index 9e1a63ce..8c16d7a7 100644 --- a/web/src/views/KnowledgeBase/index.tsx +++ b/web/src/views/KnowledgeBase/index.tsx @@ -562,83 +562,88 @@ const KnowledgeBaseManagement: FC = () => { {data.length === 0 && !loading ? ( ) : ( -
- {data.map((item) => { - const modelInfo = modelMenus[item.id]; - const hasModelInfo = modelInfo && modelInfo.menu.length > 1; - return ( -
- e.stopPropagation()}> - -
e.stopPropagation()} className="rb:cursor-pointer rb:size-5.5 rb:bg-[url('@/assets/images/common/more.svg')] rb:hover:bg-[url('@/assets/images/common/more_hover.svg')]">
-
-
- } - > -
handleToDetail(item)}> -
- {/*
{t('knowledgeBase.description')}
*/} - -
{(item.description && item.description != '') ? item.description : t('knowledgeBase.noDescription')}
-
-
- - {item.descriptionItems?.map((description: Record) => ( -
-
{(description.label as string)}
-
{(description.children as string)}
-
- ))} -
- {hasModelInfo && ( -
e.stopPropagation()}> -
{ - setData(prev => prev.map(d => d.id === item.id ? { ...d, _expanded: !d._expanded } : d)); - }} - > - {/* {t('knowledgeBase.models')}: */} - - {modelInfo.summary[0].split(':')[0]}:{modelInfo.summary[0].split(':').slice(1).join(':')} - - - {item._expanded ? : } - -
- {item._expanded && ( -
- {modelInfo.summary.slice(1).map((text, idx) => { - const [label, value] = text.split(':'); - return ( -
- {label}:{value} -
- ); - })} + + {[0, 1, 2].map(colIdx => ( +
+ {data.filter((_, i) => i % 3 === colIdx).map((item) => { + const modelInfo = modelMenus[item.id]; + const hasModelInfo = modelInfo && modelInfo.menu.length > 1; + return ( +
+ e.stopPropagation()}> + +
e.stopPropagation()} className="rb:cursor-pointer rb:size-5.5 rb:bg-[url('@/assets/images/common/more.svg')] rb:hover:bg-[url('@/assets/images/common/more_hover.svg')]">
+
- )} -
- )} -
- + } + > +
handleToDetail(item)}> +
+ {/*
{t('knowledgeBase.description')}
*/} + +
{(item.description && item.description != '') ? item.description : t('knowledgeBase.noDescription')}
+
+
+ + {item.descriptionItems?.map((description: Record) => ( +
+
{(description.label as string)}
+
{(description.children as string)}
+
+ ))} +
+ {hasModelInfo && ( +
e.stopPropagation()}> +
{ + setData(prev => prev.map(d => d.id === item.id ? { ...d, _expanded: !d._expanded } : d)); + }} + > + {/* {t('knowledgeBase.models')}: */} + + {modelInfo.summary[0].split(':')[0]}:{modelInfo.summary[0].split(':').slice(1).join(':')} + + + {item._expanded ? : } + +
+ {item._expanded && ( +
+ {modelInfo.summary.slice(1).map((text, idx) => { + const [label, value] = text.split(':'); + return ( +
+ {label}:{value} +
+ ); + })} +
+ )} +
+ )} +
+ +
+ ) + })}
- )})} -
+ ))} + )}