owltide/server/api/auth/session.get.ts

21 lines
545 B
TypeScript
Raw Normal View History

import { readSubscriptions } from "~/server/database";
import type { ApiSession } from "~/shared/types/api";
export default defineEventHandler(async (event): Promise<ApiSession | undefined> => {
const session = await getServerSession(event);
if (!session)
return;
const subscriptions = await readSubscriptions();
const push = Boolean(
subscriptions.find(sub => sub.type === "push" && sub.sessionId === session.id)
);
await refreshServerSession(event, session);
return {
id: session.id,
account: session.account,
push,
};
})