import { PageHeader } from "@/components/admin/form"; import { MEDIA_BUCKET_ID, Q, storage } from "@/lib/appwrite-rest"; import { requireSessionSecret } from "@/lib/auth"; import { Upload } from "lucide-react"; import { DeleteButton } from "@/components/admin/delete-button"; import { uploadMedia, deleteMediaFile } from "@/lib/admin-actions"; async function listFiles() { try { const secret = await requireSessionSecret(); const res = await storage.listFiles( MEDIA_BUCKET_ID, [Q.orderDesc("$createdAt"), Q.limit(100)], secret, ); return res.files; } catch { return []; } } function fileViewUrl(id: string) { return storage.fileViewUrl(MEDIA_BUCKET_ID, id); } export default async function MediaPage() { const files = await listFiles(); async function deleteAction(formData: FormData) { "use server"; const id = String(formData.get("id")); await deleteMediaFile(id); } return (