From e1fca9a6046364fa4f83d692a0c597af56c0b179 Mon Sep 17 00:00:00 2001 From: kieran Date: Thu, 6 Feb 2025 22:33:26 +0000 Subject: [PATCH] feat: filter list by mime --- ui_src/src/upload/admin.ts | 4 ++-- ui_src/src/views/upload.tsx | 17 +++++++++++++++-- 2 files changed, 17 insertions(+), 4 deletions(-) diff --git a/ui_src/src/upload/admin.ts b/ui_src/src/upload/admin.ts index 29ff985..a875959 100644 --- a/ui_src/src/upload/admin.ts +++ b/ui_src/src/upload/admin.ts @@ -22,9 +22,9 @@ export class Route96 { return data; } - async listFiles(page = 0, count = 10) { + async listFiles(page = 0, count = 10, mime: string | undefined) { const rsp = await this.#req( - `admin/files?page=${page}&count=${count}`, + `admin/files?page=${page}&count=${count}${mime ? `&mime_type=${mime}` : ""}`, "GET", ); const data = await this.#handleResponse(rsp); diff --git a/ui_src/src/views/upload.tsx b/ui_src/src/views/upload.tsx index 72f4d08..b95c5ca 100644 --- a/ui_src/src/views/upload.tsx +++ b/ui_src/src/views/upload.tsx @@ -23,6 +23,7 @@ export default function Upload() { const [adminListedFiles, setAdminListedFiles] = useState(); const [listedPage, setListedPage] = useState(0); const [adminListedPage, setAdminListedPage] = useState(0); + const [mimeFilter, setMimeFilter] = useState(); const login = useLogin(); const pub = usePublisher(); @@ -85,7 +86,7 @@ export default function Upload() { try { setError(undefined); const uploader = new Route96(url, pub); - const result = await uploader.listFiles(n, 50); + const result = await uploader.listFiles(n, 50, mimeFilter); setAdminListedFiles(result); } catch (e) { if (e instanceof Error) { @@ -135,7 +136,7 @@ export default function Upload() { useEffect(() => { listAllUploads(adminListedPage); - }, [adminListedPage]); + }, [adminListedPage, mimeFilter]); useEffect(() => { if (pub && !self) { @@ -249,6 +250,18 @@ export default function Upload() {

Admin File List:

+
+ +
{adminListedFiles && (