chore(repo): initialize planarchy workspace
This commit is contained in:
@@ -0,0 +1,24 @@
|
||||
import { createTRPCContext } from "@planarchy/api";
|
||||
import { appRouter } from "@planarchy/api/router";
|
||||
import { createCallerFactory } from "@planarchy/api/trpc";
|
||||
import { prisma } from "@planarchy/db";
|
||||
import { auth } from "./auth.js";
|
||||
|
||||
/**
|
||||
* Server-side tRPC caller for RSC.
|
||||
* Usage: const trpc = await createCaller(); const result = await trpc.resource.list({});
|
||||
*/
|
||||
export async function createCaller() {
|
||||
const session = await auth();
|
||||
|
||||
const dbUser = session?.user?.email
|
||||
? await prisma.user.findUnique({
|
||||
where: { email: session.user.email },
|
||||
select: { id: true, systemRole: true, permissionOverrides: true },
|
||||
})
|
||||
: null;
|
||||
|
||||
const ctx = createTRPCContext({ session, dbUser });
|
||||
const callerFactory = createCallerFactory(appRouter);
|
||||
return callerFactory(ctx);
|
||||
}
|
||||
Reference in New Issue
Block a user