Files
sign/packages/trpc/server/context.ts

32 lines
618 B
TypeScript
Raw Normal View History

2024-01-30 17:31:27 +11:00
import type { CreateNextContextOptions } from '@trpc/server/adapters/next';
2023-06-09 18:21:18 +10:00
import { getServerSession } from '@documenso/lib/next-auth/get-server-session';
export const createTrpcContext = async ({ req, res }: CreateNextContextOptions) => {
const { session, user } = await getServerSession({ req, res });
2023-06-09 18:21:18 +10:00
if (!session) {
return {
session: null,
user: null,
2024-01-30 17:31:27 +11:00
req,
2023-06-09 18:21:18 +10:00
};
}
if (!user) {
return {
session: null,
user: null,
2024-01-30 17:31:27 +11:00
req,
};
}
2023-06-09 18:21:18 +10:00
return {
session,
user,
2024-01-30 17:31:27 +11:00
req,
2023-06-09 18:21:18 +10:00
};
};
export type TrpcContext = Awaited<ReturnType<typeof createTrpcContext>>;