Skip to content

Commit 6084117

Browse files
committed
✨ Add confirmation modal for deleting DataMate knowledge bases and update UI for delete button in KnowledgeBaseList.
1 parent 1a47ba3 commit 6084117

4 files changed

Lines changed: 29 additions & 11 deletions

File tree

frontend/app/[locale]/knowledges/KnowledgeBaseConfiguration.tsx

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -591,6 +591,22 @@ function DataConfig({ isActive }: DataConfigProps) {
591591
// Handle knowledge base deletion
592592
const handleDelete = (id: string) => {
593593
hasUserInteractedRef.current = true; // Mark user interaction
594+
595+
// Find the knowledge base to check its source
596+
const kb = kbState.knowledgeBases.find((kb) => kb.id === id);
597+
598+
if (kb?.source === "datamate") {
599+
// Show informational message for DataMate knowledge bases
600+
Modal.info({
601+
title: t("knowledgeBase.modal.deleteDataMate.title", { name: kb.name }),
602+
content: t("knowledgeBase.modal.deleteDataMate.content"),
603+
okText: t("common.confirm"),
604+
centered: true,
605+
});
606+
return;
607+
}
608+
609+
// Normal delete confirmation for local knowledge bases
594610
confirm({
595611
title: t("knowledgeBase.modal.deleteConfirm.title"),
596612
content: t("knowledgeBase.modal.deleteConfirm.content"),

frontend/app/[locale]/knowledges/components/knowledge/KnowledgeBaseList.tsx

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -335,17 +335,15 @@ const KnowledgeBaseList: React.FC<KnowledgeBaseListProps> = ({
335335
>
336336
{kb.name}
337337
</p>
338-
{kb.source !== "datamate" && (
339-
<button
340-
className="text-red-500 hover:text-red-700 text-xs font-medium ml-2"
341-
onClick={(e) => {
342-
e.stopPropagation();
343-
onDelete(kb.id);
344-
}}
345-
>
346-
{t("common.delete")}
347-
</button>
348-
)}
338+
<button
339+
className="text-red-500 hover:text-red-700 text-xs font-medium ml-2"
340+
onClick={(e) => {
341+
e.stopPropagation();
342+
onDelete(kb.id);
343+
}}
344+
>
345+
{t("common.delete")}
346+
</button>
349347
</div>
350348
<div
351349
className={`flex flex-wrap items-center ${KB_LAYOUT.TAG_MARGIN} ${KB_LAYOUT.TAG_SPACING}`}

frontend/public/locales/en/common.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -466,6 +466,8 @@
466466
"knowledgeBase.list.empty": "No knowledge bases yet, please create one first",
467467
"knowledgeBase.modal.deleteConfirm.title": "Confirm Delete Knowledge Base",
468468
"knowledgeBase.modal.deleteConfirm.content": "Are you sure you want to delete this knowledge base? This action cannot be undone.",
469+
"knowledgeBase.modal.deleteDataMate.title": "Cannot Delete DataMate Knowledge Base",
470+
"knowledgeBase.modal.deleteDataMate.content": "Nexent cannot delete DataMate knowledge bases. Please go to the DataMate page to perform the operation.",
469471
"knowledgeBase.message.deleteSuccess": "Knowledge base deleted successfully",
470472
"knowledgeBase.message.deleteError": "Failed to delete knowledge base",
471473
"knowledgeBase.message.syncSuccess": "Knowledge base synchronized successfully",

frontend/public/locales/zh/common.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -467,6 +467,8 @@
467467
"knowledgeBase.list.empty": "暂无知识库,请先创建知识库",
468468
"knowledgeBase.modal.deleteConfirm.title": "确认删除知识库",
469469
"knowledgeBase.modal.deleteConfirm.content": "确定要删除这个知识库吗?删除后无法恢复。",
470+
"knowledgeBase.modal.deleteDataMate.title": "无法删除DataMate知识库",
471+
"knowledgeBase.modal.deleteDataMate.content": "Nexent无法删除DataMate知识库,请前往DataMate页面进行操作。",
470472
"knowledgeBase.message.deleteSuccess": "删除知识库成功",
471473
"knowledgeBase.message.deleteError": "删除知识库失败",
472474
"knowledgeBase.message.syncSuccess": "同步知识库成功",

0 commit comments

Comments
 (0)