Components
Message delivery and original source
Inspect message-level identity and delivery status separately from conversation lifecycle.
On this page
Purpose and composition
Inspect message-level identity and delivery status separately from conversation lifecycle.
Use to diagnose delivery context; do not treat UI fallback delivered as provider confirmation.
Anatomy
| Part | Responsibility |
|---|---|
| Metadata | From, sent, To, optional copies, Message-ID |
| Delivery | Labeled status badge |
| Original | Toggle for synthesized plain-text header/body view |
Configuration and variants
| Input / variant | Contract |
|---|---|
| message | Message record |
| status fallback | Outbound without status defaults to delivered |
| To fallback | Uses recipient if to array absent |
| open/onClose | Controlled dialog |
States and feedback
| State | Visible / behavioral result |
|---|---|
| Sending/deferred | Amber |
| Sent | Blue |
| Delivered | Green |
| Failed/blocked | Red |
| Original visible | Monospace scrollable source |
Interaction and responsive behavior
- View original toggles local content.
- Source builds headers from record fields.
- Original pre wraps and scrolls at max-height.
Accessibility contract
- Metadata uses definition list.
- Source toggle is named.
- Status has text as well as color.
Known implementation limits
Original is reconstructed, not raw MIME. An unspecified outbound status appears delivered by default; production DTOs must provide truthful status.
Composition example
<MessageDetailsDialog message={message} open={open} onClose={close} />Source references
| File | Responsibility |
|---|---|
| components/inbox/message-details-dialog.tsx | MessageDetailsDialog |
Examples from the app
Actual Sonarist components with fictional conversations, people, example.com addresses and simulated operational states. Captured at 2× resolution or higher. Select an image to inspect it full size.
Related topics
Source audit: 2026-10-08 · Revision 10f45d1377b5 · Documentation v1.0.0