2023-03-22 22:17:53 +03:00

25 lines
570 B
TypeScript

import { t } from './server';
import { getUser } from '@/api/user/query';
import getServerConfig from '@/config/server';
import { TRPCError } from '@trpc/server';
const { COOKIE_TOKEN_NAME } = getServerConfig();
export const user = t.middleware(async ({ ctx, next }) => {
if (process.env.NODE_ENV !== 'development' && !ctx.token) {
throw new TRPCError({
code: 'UNAUTHORIZED',
});
}
return next({
ctx: {
user: await getUser({
headers: {
Cookie: `${COOKIE_TOKEN_NAME}=${ctx.token}`,
},
}),
},
});
});