use relatedprofiles for reactions/messages

This commit is contained in:
Samuel Newman
2026-06-11 20:54:35 +03:00
parent 91053e3f70
commit d44c9cefd6
@@ -361,9 +361,18 @@ export function ListConvosProviderInner({
return return
} }
// add relatedProfiles to members list, but making sure to dedupe
const relatedProfilesSansMembers = (
logRef.relatedProfiles ?? []
).filter(
profile =>
!foundConvo.members.some(member => member.did === profile.did),
)
// Update the convo // Update the convo
const updatedConvo = { const updatedConvo = {
...foundConvo, ...foundConvo,
members: [...foundConvo.members, ...relatedProfilesSansMembers],
rev: logRef.rev, rev: logRef.rev,
lastMessage: logRef.message, lastMessage: logRef.message,
unreadCount: unreadCount:
@@ -625,15 +634,25 @@ export function ListConvosProviderInner({
old => optimisticDeleteJoinRequest(log.convoId, old), old => optimisticDeleteJoinRequest(log.convoId, old),
) )
} else if (ChatBskyConvoDefs.isLogAddReaction(log)) { } else if (ChatBskyConvoDefs.isLogAddReaction(log)) {
updateConvoInAllLists(log.convoId, convo => ({ updateConvoInAllLists(log.convoId, convo => {
...convo, // add relatedProfiles to members list, but making sure to dedupe
lastReaction: { const relatedProfilesSansMembers = (
$type: 'chat.bsky.convo.defs#messageAndReactionView', log.relatedProfiles ?? []
reaction: log.reaction, ).filter(
message: log.message, profile =>
}, !convo.members.some(member => member.did === profile.did),
rev: log.rev, )
})) return {
...convo,
members: [...convo.members, ...relatedProfilesSansMembers],
lastReaction: {
$type: 'chat.bsky.convo.defs#messageAndReactionView',
reaction: log.reaction,
message: log.message,
},
rev: log.rev,
}
})
} else if (ChatBskyConvoDefs.isLogAddMember(log)) { } else if (ChatBskyConvoDefs.isLogAddMember(log)) {
const data = log.message.data const data = log.message.data
if ( if (