Files
documenso/packages/trpc/server/context.ts
2024-01-30 17:32:20 +11:00

32 lines
618 B
TypeScript

import type { CreateNextContextOptions } from '@trpc/server/adapters/next';
import { getServerSession } from '@documenso/lib/next-auth/get-server-session';
export const createTrpcContext = async ({ req, res }: CreateNextContextOptions) => {
const { session, user } = await getServerSession({ req, res });
if (!session) {
return {
session: null,
user: null,
req,
};
}
if (!user) {
return {
session: null,
user: null,
req,
};
}
return {
session,
user,
req,
};
};
export type TrpcContext = Awaited<ReturnType<typeof createTrpcContext>>;