+ )}
+ {filteredDocuments.map((document) => {
+ const canPreview = document.status === "ready";
+ return (
+
{
+ if (canPreview) void previewDocument(document);
+ }}
+ onKeyDown={(event) => {
+ if (
+ canPreview &&
+ (event.key === "Enter" || event.key === " ")
+ ) {
+ event.preventDefault();
+ void previewDocument(document);
+ }
+ }}
+ className={`rounded-xl border border-hairline p-3 transition-colors ${
+ canPreview
+ ? "cursor-pointer hover:bg-surface-strong/40"
+ : ""
+ }`}
+ >
+
+
+
+
+ {document.name}
+
+
+ {statusLabel(document.status)}
+
+
+
+ {document.sourceType === "file" ? "文件" : "文字"} ·{" "}
+ {formatBytes(document.sizeBytes)} ·{" "}
+ {document.chunkCount} 个分块
+
+
+
event.stopPropagation()}
+ onKeyDown={(event) => event.stopPropagation()}
+ >
+ {document.status === "failed" && (
+
+ )}
+ {canPreview && (
+
+ )}
+
+
+
+ {document.status === "processing" && (
+
+
+ 正在抽取、切分并生成向量…
+
+ )}
+ {document.errorMessage && (
+
+ {document.errorMessage}
+
+ )}
+