feat: update list name

This commit is contained in:
Henry
2024-01-02 17:38:13 +00:00
parent decbcadb07
commit 20ef0f5ca2
4 changed files with 180 additions and 92 deletions

View File

@@ -1,5 +1,5 @@
import { z } from "zod";
import { desc, eq, sql } from "drizzle-orm";
import { and, desc, eq, sql, isNull } from "drizzle-orm";
import { boards, cards, lists } from "~/server/db/schema";
import { generateUID } from "~/utils/generateUID";
@@ -49,7 +49,7 @@ export const listRouter = createTRPCRouter({
});
})
}),
update: publicProcedure
reorder: publicProcedure
.input(
z.object({
boardId: z.string().min(12),
@@ -104,4 +104,17 @@ export const listRouter = createTRPCRouter({
await tx.execute(sql`UPDATE ${lists} SET ${lists.index} = ${lists.index} - 1 WHERE ${lists.boardId} = ${list.boardId} AND ${lists.index} > ${list.index} AND ${lists.deletedAt} IS NULL;`);
})
}),
update: publicProcedure
.input(
z.object({
listPublicId: z.string().min(12),
name: z.string().min(1),
}))
.mutation(({ ctx, input }) => {
const userId = ctx.session?.user.id;
if (!userId) return;
return ctx.db.update(lists).set({ name: input.name }).where(and(eq(lists.publicId, input.listPublicId), isNull(lists.deletedAt)));
}),
});