feat(webmail): conversations - list, stacked reader, inline reply, settings switch
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
86a69d1a96
commit
2080489319
14 files changed
+1225
-39
No files matched your search
@@ -1,13 +1,13 @@
|
||||
{
|
||||
"version": 1,
|
||||
"meta": {
|
||||
"lastScanned": "2026-10-22T17:41:17.634Z",
|
||||
"fileCount": 439,
|
||||
"lastScanned": "2026-10-22T19:44:13.602Z",
|
||||
"fileCount": 440,
|
||||
"hits": 0,
|
||||
"misses": 0,
|
||||
"renderedHash": "6ed8dc6b806503f41452e51121e5f78379f1c88655d4934d082d2aa065428b8c",
|
||||
"storeUpdatedAt": "2026-10-22T17:41:17.650Z",
|
||||
"rootHash": "098b934a6205dce4"
|
||||
"renderedHash": "4c74546f856ca02c0dd5eeb8a90c610c161275126dc91d9fc7f169a6424d61d6",
|
||||
"storeUpdatedAt": "2026-10-22T19:44:13.627Z",
|
||||
"rootHash": "d8862ac30fea5b61"
|
||||
},
|
||||
"files": {
|
||||
".github/workflows/ci.yml": {
|
||||
@@ -19624,6 +19624,66 @@
|
||||
"tokens": 36
|
||||
}
|
||||
]
|
||||
},
|
||||
"services/webmail/src/components/ThreadReader.tsx": {
|
||||
"description": "One message as the mail API returns it with its body.",
|
||||
"tokens": 7350,
|
||||
"hash": "54dad9430ffc2edb",
|
||||
"size": 25722,
|
||||
"mtimeMs": 1792698253418.4153,
|
||||
"updatedAt": "2026-10-22T19:44:13.601Z",
|
||||
"source": "hook",
|
||||
"symbols": [
|
||||
{
|
||||
"name": "FullMessage",
|
||||
"kind": "section",
|
||||
"startLine": 39,
|
||||
"endLine": 53,
|
||||
"tokens": 74
|
||||
},
|
||||
{
|
||||
"name": "MoveTarget",
|
||||
"kind": "section",
|
||||
"startLine": 54,
|
||||
"endLine": 58,
|
||||
"tokens": 17
|
||||
},
|
||||
{
|
||||
"name": "Trusted",
|
||||
"kind": "section",
|
||||
"startLine": 59,
|
||||
"endLine": 64,
|
||||
"tokens": 44
|
||||
},
|
||||
{
|
||||
"name": "Props",
|
||||
"kind": "section",
|
||||
"startLine": 65,
|
||||
"endLine": 84,
|
||||
"tokens": 314
|
||||
},
|
||||
{
|
||||
"name": "splitSender",
|
||||
"kind": "fn",
|
||||
"startLine": 85,
|
||||
"endLine": 90,
|
||||
"tokens": 74
|
||||
},
|
||||
{
|
||||
"name": "initialsOf",
|
||||
"kind": "fn",
|
||||
"startLine": 91,
|
||||
"endLine": 96,
|
||||
"tokens": 78
|
||||
},
|
||||
{
|
||||
"name": "ThreadReader",
|
||||
"kind": "fn",
|
||||
"startLine": 97,
|
||||
"endLine": 591,
|
||||
"tokens": 6441
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"preamble": [
|
||||
|
||||
+3
-2
@@ -1,7 +1,7 @@
|
||||
# anatomy.md
|
||||
|
||||
> Auto-maintained by OpenWolf. Last scanned: 2026-10-22T17:41:17.634Z
|
||||
> Files: 439 tracked | Anatomy hits: 0 | Misses: 0
|
||||
> Auto-maintained by OpenWolf. Last scanned: 2026-10-22T19:44:13.602Z
|
||||
> Files: 440 tracked | Anatomy hits: 0 | Misses: 0
|
||||
|
||||
> Project structure index. Auto-maintained by OpenWolf hooks and daemon.
|
||||
> Run `openwolf scan` to generate, or wait for the first Claude Code session.
|
||||
@@ -610,6 +610,7 @@
|
||||
- `AvatarEditor.tsx` — The frame is square; the mask over it is what makes the photo a circle. (~2510 tok)
|
||||
- `MessageReader.tsx` — The document the body frame renders, or null for a text-only message. (~4736 tok)
|
||||
- `RecipientInput.tsx` — Entries as they will be sent: `Name <addr>` or a bare address. (~1486 tok)
|
||||
- `ThreadReader.tsx` — One message as the mail API returns it with its body. (~7350 tok)
|
||||
- `TotpEnrolment.tsx` — The scannable half of TOTP enrolment, shared by the webmail settings page and (~1644 tok)
|
||||
|
||||
## services/webmail/src/components/ui/
|
||||
|
||||
@@ -31,3 +31,4 @@ description: chronological action log per session, consolidated weekly
|
||||
| Time | Action | File(s) | Outcome | ~Tokens |
|
||||
|------|--------|---------|---------|--------|
|
||||
| 14:41 | Created services/auth/src/accounts.ts | — | ~715 |
|
||||
| 16:44 | Created services/webmail/src/components/ThreadReader.tsx | — | ~7350 |
|
||||
Reference in new issue
Block a user