feat: real-time sync, notification & social system overhaul
- Add WS events: dm_channel_created, dm_channel_closed, friend_removed, channel_created/updated/deleted, server_updated - Fix first-ever DM: broadcast dm_channel_created to recipient - Add DELETE /api/dm/:id for closing DMs with re-open support - Wire Close DM button in sidebar - Fix dm_message_created for unknown channels (safety net) - Broadcast friend_removed on friend deletion - Sound system: track realtimeMessageEvents separately from API loads, play notification for messages in all channels, not just current - Optimistic updates: send/edit/delete messages appear instantly with rollback on failure, temp message deduplication on WS echo - Channel CRUD broadcasts to all server members - Server update broadcast on PATCH - Server join registers user in connectionManager immediately - Reconnect: only reload current channel, preserve other channel caches - Activity panel, right panel, member list toggle components
This commit is contained in:
@@ -213,6 +213,13 @@ export type ServerEvent =
|
||||
| { type: 'dm_call_rejected'; dmChannelId: string }
|
||||
| { type: 'dm_call_ended'; dmChannelId: string }
|
||||
| { type: 'voice_status_update'; userId: string; channelId: string; isMuted: boolean; isDeafened: boolean }
|
||||
| { type: 'dm_channel_created'; dmChannel: DmChannel }
|
||||
| { type: 'dm_channel_closed'; dmChannelId: string }
|
||||
| { type: 'friend_removed'; userId: string }
|
||||
| { type: 'channel_created'; channel: Channel; serverId: string }
|
||||
| { type: 'channel_updated'; channel: Channel; serverId: string }
|
||||
| { type: 'channel_deleted'; channelId: string; serverId: string }
|
||||
| { type: 'server_updated'; server: Server }
|
||||
| { type: 'error'; message: string };
|
||||
|
||||
// ─── API Request/Response Types ─────────────────────────────────────────────
|
||||
|
||||
Reference in New Issue
Block a user