Skip to content

Commit dfadc78

Browse files
committed
fix: group listing
1 parent 27e52b1 commit dfadc78

File tree

1 file changed

+20
-18
lines changed
  • platforms/pictique/src/routes/(protected)/messages

1 file changed

+20
-18
lines changed

platforms/pictique/src/routes/(protected)/messages/+page.svelte

Lines changed: 20 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -23,26 +23,28 @@
2323
const { data: userData } = await apiClient.get('/api/users');
2424
currentUserId = userData.id;
2525
26-
// Filter out group chats, only show direct messages
27-
messages = data.chats
28-
.filter((c) => c.participants.length === 2) // Only direct messages (2 participants: user + other person)
29-
.map((c) => {
30-
const members = c.participants.filter((u) => u.id !== userData.id);
31-
const memberNames = members.map((m) => m.name ?? m.handle ?? m.ename);
32-
const avatar =
33-
members[0]?.avatarUrl ||
26+
// Show all chats (direct messages and groups) in one unified list
27+
messages = data.chats.map((c) => {
28+
const members = c.participants.filter((u) => u.id !== userData.id);
29+
const memberNames = members.map((m) => m.name ?? m.handle ?? m.ename);
30+
const isGroup = members.length > 1;
31+
32+
// Use group avatar for groups, user avatar for direct messages
33+
const avatar = isGroup
34+
? '/images/group.png'
35+
: members[0]?.avatarUrl ||
3436
'https://cdn.jsdelivr.net/npm/[email protected]/icons/people-fill.svg';
3537
36-
return {
37-
id: c.id,
38-
avatar,
39-
username: c.handle ?? memberNames.join(', '),
40-
unread: c.latestMessage ? !c.latestMessage.isRead : false,
41-
text: c.latestMessage?.text ?? 'No message yet',
42-
handle: c.handle ?? memberNames.join(', '),
43-
name: c.handle ?? memberNames.join(', ')
44-
};
45-
});
38+
return {
39+
id: c.id,
40+
avatar,
41+
username: c.handle ?? memberNames.join(', '),
42+
unread: c.latestMessage ? !c.latestMessage.isRead : false,
43+
text: c.latestMessage?.text ?? 'No message yet',
44+
handle: c.handle ?? memberNames.join(', '),
45+
name: c.handle ?? memberNames.join(', ')
46+
};
47+
});
4648
} catch (error) {
4749
console.error('Failed to load messages:', error);
4850
}

0 commit comments

Comments
 (0)