juntekim.com/stripe_to_invoice/lib/auth/get-user.ts
2026-02-01 20:03:08 +00:00

28 lines
617 B
TypeScript

import { cookies } from "next/headers";
import { eq } from "drizzle-orm";
import { db } from "@/lib/db";
import { users } from "@/lib/schema";
export async function getUserFromSession() {
const cookieStore = await cookies();
const session = cookieStore.get("session");
if (!session) {
return null;
}
// Assumption: session cookie value === users.id
const userId = session.value;
const [user] = await db
.select({
id: users.id,
email: users.email,
createdAt: users.createdAt,
})
.from(users)
.where(eq(users.id, userId))
.limit(1);
return user ?? null;
}