pollo/src/server/api/routers/session.ts
Atridad Lahiji e4e7841109
1.2.2
2023-06-29 16:52:23 -06:00

35 lines
885 B
TypeScript

import { z } from "zod";
import { createTRPCRouter, protectedProcedure } from "~/server/api/trpc";
import { env } from "~/env.mjs";
import { redis } from "~/server/redis";
export const sessionRouter = createTRPCRouter({
deleteAllByUserId: protectedProcedure
.input(
z.object({
userId: z.string(),
})
)
.mutation(async ({ ctx, input }) => {
const sessions = await ctx.prisma.session.deleteMany({
where: {
userId: input.userId,
},
});
if (!!sessions) {
await redis.del(`${env.APP_ENV}_kv_userlist_admin`);
}
return !!sessions;
}),
deleteAll: protectedProcedure.mutation(async ({ ctx, input }) => {
const sessions = await ctx.prisma.session.deleteMany();
if (!!sessions) {
await redis.del(`${env.APP_ENV}_kv_userlist_admin`);
}
return !!sessions;
}),
});