22 lines
671 B
TypeScript
22 lines
671 B
TypeScript
import { eq } from 'drizzle-orm';
|
|
import useDatabase from '~/composables/useDatabase';
|
|
|
|
export default defineEventHandler(async (e) => {
|
|
const db = useDatabase();
|
|
|
|
const session = await getUserSession(e);
|
|
|
|
if(!session || !session.user)
|
|
{
|
|
setResponseStatus(e, 401);
|
|
return;
|
|
}
|
|
|
|
return db.query.campaignTable.findMany({
|
|
with: {
|
|
members: { with: { member: { columns: { username: true, id: true } } }, columns: { } },
|
|
characters: { where: ({ id }) => eq(id, session.user!.id), columns: { character: true } },
|
|
owner: { columns: { username: true, id: true } }
|
|
},
|
|
}).sync();
|
|
}); |