29 lines
691 B
TypeScript
29 lines
691 B
TypeScript
import { NextResponse } from "next/server";
|
|
import { prisma } from "@/lib/db";
|
|
import { getSessionUser } from "@/lib/auth";
|
|
|
|
export async function GET() {
|
|
const session = await getSessionUser();
|
|
if (!session) {
|
|
return NextResponse.json({ error: "Unauthorized" }, { status: 401 });
|
|
}
|
|
|
|
const files = await prisma.file.findMany({
|
|
where: { userId: session.userId },
|
|
orderBy: { createdAt: "desc" },
|
|
});
|
|
|
|
return NextResponse.json({
|
|
files: files.map((f) => ({
|
|
id: f.id,
|
|
key: f.key,
|
|
name: f.name,
|
|
relativePath: f.relativePath,
|
|
contentType: f.contentType,
|
|
sizeBytes: Number(f.sizeBytes),
|
|
createdAt: f.createdAt,
|
|
})),
|
|
});
|
|
}
|
|
|