diff --git a/surfsense_web/components/documents/DocumentsFilters.tsx b/surfsense_web/components/documents/DocumentsFilters.tsx index a795b61c7..abd65637c 100644 --- a/surfsense_web/components/documents/DocumentsFilters.tsx +++ b/surfsense_web/components/documents/DocumentsFilters.tsx @@ -1,6 +1,6 @@ "use client"; -import { FolderPlus, ListFilter, Search, Upload, X } from "lucide-react"; +import { Download, FolderPlus, ListFilter, Search, Upload, X } from "lucide-react"; import { useTranslations } from "next-intl"; import React, { useCallback, useMemo, useRef, useState } from "react"; import { useDocumentUploadDialog } from "@/components/assistant-ui/document-upload-popup"; @@ -20,6 +20,7 @@ export function DocumentsFilters({ onToggleType, activeTypes, onCreateFolder, + onExportKB, }: { typeCounts: Partial>; onSearch: (v: string) => void; @@ -27,6 +28,7 @@ export function DocumentsFilters({ onToggleType: (type: DocumentTypeEnum, checked: boolean) => void; activeTypes: DocumentTypeEnum[]; onCreateFolder?: () => void; + onExportKB?: () => void; }) { const t = useTranslations("documents"); const id = React.useId(); @@ -84,6 +86,24 @@ export function DocumentsFilters({ )} + {onExportKB && ( + + + { + e.preventDefault(); + onExportKB(); + }} + > + + + + Export knowledge base + + )} + diff --git a/surfsense_web/components/layout/ui/sidebar/DocumentsSidebar.tsx b/surfsense_web/components/layout/ui/sidebar/DocumentsSidebar.tsx index 8b3a119ae..db80c8d8d 100644 --- a/surfsense_web/components/layout/ui/sidebar/DocumentsSidebar.tsx +++ b/surfsense_web/components/layout/ui/sidebar/DocumentsSidebar.tsx @@ -800,6 +800,7 @@ export function DocumentsSidebar({ onToggleType={onToggleType} activeTypes={activeTypes} onCreateFolder={() => handleCreateFolder(null)} + onExportKB={() => toast("Export KB clicked (placeholder)")} />