redesign: 2-col layout, peers in sidebar, IRC-style messages, NAT dot

- Peers moved from right panel into sidebar below Rooms
- Messages left-aligned IRC style: time · alias · text
- Per-peer colored dot: green=direct/NAT-punched, amber=relay/connecting, red=failed
- Hover title on peer row shows full ID, connection type, remote address, last seen
- Removed right PeerList panel

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Fredrik Johansson
2026-06-25 13:28:40 +02:00
parent cb80040ddb
commit bb53357bc8
7 changed files with 191 additions and 50 deletions

View File

@@ -40,6 +40,9 @@ export interface FileOffer {
// ── IPC message types ─────────────────────────────────────────────────────────
export type CandidateType = 'host' | 'srflx' | 'relay' | 'unknown'
export type PeerConnState = 'new' | 'connecting' | 'connected' | 'disconnected' | 'failed' | 'closed'
export type IpcMsgType =
// commands
| 'send_message'
@@ -67,6 +70,7 @@ export type IpcMsgType =
| 'invite_generated'
| 'identity_exported'
| 'identity_imported'
| 'peer_status'
| 'error'
export interface IpcMessage {
@@ -104,4 +108,8 @@ export interface IpcMessage {
error_message?: string
invite?: string
files?: FileEntry[]
// peer_status
conn_state?: PeerConnState
candidate_type?: CandidateType
remote_address?: string
}