+ {/* Type filter chips — horizontal scroll */}
+
+
+ {DOC_TYPES.map((dt) => {
+ const cfg = DOC_TYPE_CONFIG[dt] ?? DEFAULT_CONFIG;
+ const active = docType === dt;
+ return (
+
+ );
+ })}
+ {total}
+
+
+ {/* Search input */}
+
+ {searching
+ ?
+ :
+ }
+ handleQueryChange(e.target.value)}
+ placeholder={t("searchPlaceholder")}
+ className="w-full rounded-md border bg-background pl-7 pr-7 py-1 text-base md:text-xs placeholder:text-muted-foreground focus:outline-none focus:ring-1 focus:ring-ring"
+ />
+ {query && (
+
+ )}
+
- {loading && documents.length === 0 ? (
+ {(loading || searching) && displayDocs.length === 0 ? (
Array.from({ length: 6 }).map((_, i) => (
@@ -111,13 +217,13 @@ export function VaultDocumentSidebar({
))
- ) : documents.length === 0 ? (
+ ) : displayDocs.length === 0 ? (
) : (
- documents.map((doc) => (
+ displayDocs.map((doc) => (
- {/* Pagination footer */}
- {totalPages > 1 && (
+ {/* Pagination footer — hidden during search */}
+ {!isSearchMode && totalPages > 1 && (
@@ -136,13 +143,11 @@ export function VaultPage() {
-
-
-
+
- {!selectedAgent ? t("selectAgentFirst", "Select an agent first") : t("rescanTooltip", "Rescan workspace")}
+ {t("rescanTooltip", "Rescan workspace")}