feat: system messages, group DM welcome header, and dm_owner_updated event
- Render system messages (member_added, member_removed, owner_changed) inline in MessageList with icon + human-readable text; system messages never group with adjacent user messages - Rewrite WelcomeHeader to branch on ownerId: group DMs show overlapping avatars, group name, creator attribution, federated privacy note, and a Leave Group button - Add dm_owner_updated ServerEvent; broadcast from dm.ts leave handler and federation processOwnershipTransferEvent so all clients update ownerId in real-time - Add updateDmOwner action to spaceStore and handle dm_owner_updated in useWebSocket - Add leaveGroup alias to API client dm namespace
This commit is contained in:
@@ -814,6 +814,12 @@ function handleEvent(origin: string, event: ServerEvent): void {
|
||||
break;
|
||||
}
|
||||
|
||||
case 'dm_owner_updated': {
|
||||
const { updateDmOwner } = useSpaceStore.getState();
|
||||
updateDmOwner(event.dmChannelId, event.newOwnerId);
|
||||
break;
|
||||
}
|
||||
|
||||
// ─── Channel/space events (all origins) ─────────────────────────────────
|
||||
|
||||
case 'channel_created': {
|
||||
|
||||
Reference in New Issue
Block a user