18 lines
486 B
TypeScript
18 lines
486 B
TypeScript
import type { CreateExpressContextOptions } from "@trpc/server/adapters/express";
|
|
import { getUserFromRequest } from "../auth.js";
|
|
import type { User } from "../schema.js";
|
|
|
|
export async function createContext({ req, res }: CreateExpressContextOptions) {
|
|
const user = await getUserFromRequest(req);
|
|
return {
|
|
req,
|
|
res,
|
|
user,
|
|
};
|
|
}
|
|
|
|
export type TrpcContext = {
|
|
req: CreateExpressContextOptions["req"];
|
|
res: CreateExpressContextOptions["res"];
|
|
user: User | null;
|
|
};
|