diff --git a/src/FetchRequests.tsx b/src/FetchRequests.tsx index 6287f1d..9a21e6a 100644 --- a/src/FetchRequests.tsx +++ b/src/FetchRequests.tsx @@ -28,6 +28,7 @@ import { import DeleteIcon from "@mui/icons-material/Delete"; import CloudUploadIcon from "@mui/icons-material/CloudUpload"; import RefreshIcon from "@mui/icons-material/Refresh"; +import ContentCopyIcon from "@mui/icons-material/ContentCopy"; import { useFetchRequestsList, useCreateFetchRequest, @@ -256,7 +257,7 @@ export default function FetchRequests() { - ID + Fingerprint Source Account Status @@ -268,7 +269,19 @@ export default function FetchRequests() { {requests.map((req: FetchRequest) => ( - {req.id.slice(0, 8)}... + + {req.fingerprint} + { + navigator.clipboard.writeText(req.fingerprint); + setSnackbar({ message: "Copied!", severity: "success" }); + }} + sx={{ opacity: 0.5, '&:hover': { opacity: 1 } }} + > + + + {"path" in req.source ? "File" : "Email"} diff --git a/src/ReportSnapshots.tsx b/src/ReportSnapshots.tsx index e70bb2f..bd47712 100644 --- a/src/ReportSnapshots.tsx +++ b/src/ReportSnapshots.tsx @@ -28,6 +28,7 @@ import { import DeleteIcon from "@mui/icons-material/Delete"; import AddCircleIcon from "@mui/icons-material/AddCircle"; import RefreshIcon from "@mui/icons-material/Refresh"; +import ContentCopyIcon from "@mui/icons-material/ContentCopy"; import { useReportSnapshotsList, useCreateSnapshot, @@ -41,7 +42,6 @@ function formatDate(iso: string) { } export default function ReportSnapshots() { - const [accounts, setAccounts] = React.useState(""); const [ignoreSelf, setIgnoreSelf] = React.useState(false); const [startDate, setStartDate] = React.useState(""); const [endDate, setEndDate] = React.useState(""); @@ -60,7 +60,6 @@ export default function ReportSnapshots() { const handleCreate = async () => { try { const result = await createMutation.mutateAsync({ - accounts: accounts.trim() ? accounts.split(",").map((s) => s.trim()).filter(Boolean) : null, ignore_self: ignoreSelf || null, start_date: startDate ? new Date(startDate).toISOString() : null, end_date: endDate ? new Date(endDate).toISOString() : null, @@ -81,7 +80,6 @@ export default function ReportSnapshots() { }; const resetForm = () => { - setAccounts(""); setIgnoreSelf(false); setStartDate(""); setEndDate(""); @@ -112,14 +110,6 @@ export default function ReportSnapshots() { - setAccounts(e.target.value)} - size="small" - helperText="Comma-separated account IDs (leave empty for all)" - /> - setIgnoreSelf(e.target.checked)} />} label="Ignore self-transfers" @@ -215,7 +205,19 @@ export default function ReportSnapshots() { {snapshots.map((snap: ReportSnapshot) => ( - {snap.snapshot_id.slice(0, 12)}... + + {snap.snapshot_id} + { + navigator.clipboard.writeText(snap.snapshot_id); + setSnackbar({ message: "Copied!", severity: "success" }); + }} + sx={{ opacity: 0.5, '&:hover': { opacity: 1 } }} + > + + + {formatDate(snap.created_at)}