diff options
Diffstat (limited to 'packages/web/server/api/trpc.ts')
| -rw-r--r-- | packages/web/server/api/trpc.ts | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/packages/web/server/api/trpc.ts b/packages/web/server/api/trpc.ts index 93fc961a..0ba09e94 100644 --- a/packages/web/server/api/trpc.ts +++ b/packages/web/server/api/trpc.ts @@ -43,3 +43,11 @@ export const authedProcedure = procedure.use(function isAuthed(opts) { }, }); }); + +export const adminProcedure = authedProcedure.use(function isAdmin(opts) { + const user = opts.ctx.user; + if (user.role != "admin") { + throw new TRPCError({ code: "FORBIDDEN" }); + } + return opts.next(opts); +}); |
