feat: add workspace member assertion to list router

This commit is contained in:
Henry
2025-05-23 13:43:51 +01:00
parent 2e97e2be53
commit a6c6524749
5 changed files with 116 additions and 37 deletions

View File

@@ -81,18 +81,18 @@ export const boardRouter = createTRPCRouter({
code: "UNAUTHORIZED",
});
const workspaceId = await boardRepo.getWorkspaceIdByBoardPublicId(
const board = await boardRepo.getWorkspaceAndBoardIdByBoardPublicId(
ctx.db,
input.boardPublicId,
);
if (!workspaceId)
if (!board)
throw new TRPCError({
message: `Board with public ID ${input.boardPublicId} not found`,
code: "NOT_FOUND",
});
await assertUserInWorkspace(ctx.db, userId, workspaceId);
await assertUserInWorkspace(ctx.db, userId, board.workspaceId);
const result = await boardRepo.getByPublicId(
ctx.db,
@@ -235,18 +235,18 @@ export const boardRouter = createTRPCRouter({
code: "UNAUTHORIZED",
});
const workspaceId = await boardRepo.getWorkspaceIdByBoardPublicId(
const board = await boardRepo.getWorkspaceAndBoardIdByBoardPublicId(
ctx.db,
input.boardPublicId,
);
if (!workspaceId)
if (!board)
throw new TRPCError({
message: `Board with public ID ${input.boardPublicId} not found`,
code: "NOT_FOUND",
});
await assertUserInWorkspace(ctx.db, userId, workspaceId);
await assertUserInWorkspace(ctx.db, userId, board.workspaceId);
const result = await boardRepo.update(ctx.db, {
name: input.name,