interface CreateInnerContextOptions
extends Partial<trpcNext.CreateNextContextOptions> {
session: Session | null;
}
export async function createContextInner(opts: CreateInnerContextOptions) {
return {
// db,
session: opts.session,
};
}
// for RSC(app router) we need to send only authOptions for getting server session
export async function createContext({
req,
res,
}: trpcNext.CreateNextContextOptions) {
const session = await getServerSession(authOptions);
// const session = null;
const contextInner = await createContextInner({ session });
return {
...contextInner,
req,
res,
};
}
interface CreateInnerContextOptions
extends Partial<trpcNext.CreateNextContextOptions> {
session: Session | null;
}
export async function createContextInner(opts: CreateInnerContextOptions) {
return {
// db,
session: opts.session,
};
}
// for RSC(app router) we need to send only authOptions for getting server session
export async function createContext({
req,
res,
}: trpcNext.CreateNextContextOptions) {
const session = await getServerSession(authOptions);
// const session = null;
const contextInner = await createContextInner({ session });
return {
...contextInner,
req,
res,
};
}