UNPKG

trpc-shield

Version:

tRPC permissions as another layer of abstraction!

27 lines (13 loc) 554 B
import * as trpc from "@trpc/server"; import { permissions } from "../../shield/shield"; import type { Context } from '../../../../src/context'; export const t = trpc.initTRPC.context<Context>().create(); export const globalMiddleware = t.middleware(async ({ ctx, next }) => { // Add your middleware logic here return next() }); export const permissionsMiddleware = t.middleware(permissions); export const publicProcedure = t.procedure; export const shieldedProcedure = t.procedure .use(globalMiddleware) .use(permissionsMiddleware)