import { PageHeader } from "@/components/admin/form"; import { adminStorage, MEDIA_BUCKET_ID } from "@/lib/appwrite-server"; import { Query } from "node-appwrite"; import { Upload } from "lucide-react"; import { DeleteButton } from "@/components/admin/delete-button"; import { uploadMedia, deleteMediaFile } from "@/lib/admin-actions"; async function listFiles() { try { const res = await adminStorage.listFiles({ bucketId: MEDIA_BUCKET_ID, queries: [Query.orderDesc("$createdAt"), Query.limit(100)], }); return res.files; } catch { return []; } } function fileViewUrl(id: string) { return `${process.env.NEXT_PUBLIC_APPWRITE_ENDPOINT}/storage/buckets/${MEDIA_BUCKET_ID}/files/${id}/view?project=${process.env.NEXT_PUBLIC_APPWRITE_PROJECT_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 (