feat(mail): complete mailbox display states

This commit is contained in:
2026-08-19 23:03:46 +02:00
parent e0e00d7000
commit 9ac8847559
9 changed files with 130 additions and 9 deletions
+11 -1
View File
@@ -185,7 +185,17 @@ ordinary consumers to bypass reusable profiles.
The current mailbox UI and API are read-only. An authorized user can list IMAP
folders, page through messages, and inspect a bounded full message. Folder
names are parsed and quoted defensively; Sent-folder discovery uses provider
flags and common names.
flags and common names. The list exposes the provider's `Seen` flag as a
read/unread indicator without changing it. It also labels whether the current
page came directly from the provider, from the bounded mailbox index, or from
an index while a refresh is in progress, including the index timestamp when
available.
Message HTML is displayed only in the shared sandboxed message component.
Remote URLs and active markup are removed, embedded `data:`/`cid:` image
references remain isolated, and plain text is always available when supplied.
Attachments and provider/content failures remain explicit rather than being
silently interpreted as an empty message.
Mailbox access requires both `mail:mailbox:read` and `mail:profile:use`. It must
not mutate read/unread, delete, move, or reply state. Message responses are