diff --git a/packages/api/src/routers/board.ts b/packages/api/src/routers/board.ts index fd300312..31796a83 100644 --- a/packages/api/src/routers/board.ts +++ b/packages/api/src/routers/board.ts @@ -173,8 +173,31 @@ export const boardRouter = createTRPCRouter({ } : result.workspace; + // Generate presigned URLs for card member avatars + const listsWithAvatarUrls = await Promise.all( + result.lists.map(async (list) => ({ + ...list, + cards: await Promise.all( + list.cards.map(async (card) => ({ + ...card, + members: await Promise.all( + card.members.map(async (member) => { + if (!member.user?.image) return member; + const avatarUrl = await generateAvatarUrl(member.user.image); + return { + ...member, + user: { ...member.user, image: avatarUrl }, + }; + }), + ), + })), + ), + })), + ); + return { ...result, + lists: listsWithAvatarUrls, workspace: workspaceWithAvatarUrls, }; }),