返回 presentation-ai
fetch.ts
根目录 / src / app / _actions / apps / image-studio / fetch.ts
1 "use server";
2
3 import { auth } from "@/server/auth";
4 import { db } from "@/server/db";
5
6 export type Image = Awaited<ReturnType<typeof getUserImages>>[number];
7
8 export async function getUserImages({
9 page = 1,
10 limit = 20,
11 }: {
12 page?: number;
13 limit?: number;
14 } = {}) {
15 const session = await auth();
16 if (!session?.user?.id) {
17 return [];
18 }
19
20 return db.generatedImage.findMany({
21 where: { userId: session.user.id },
22 orderBy: { createdAt: "desc" },
23 skip: Math.max(page - 1, 0) * limit,
24 take: limit,
25 });
26 }
27
28 export async function fetchGeneratedImages() {
29 return getUserImages({ page: 1, limit: 50 });
30 }
31
31 lines TYPESCRIPT