Implement the authenticated structured entry viewer #20
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Objective
Implement the authenticated structured entry viewer in the main pane.
Scope
Acceptance criteria
Prerequisites
Sidebar navigation; authentication and relock UI; structured entry document API.
Implemented in
cf7a621.The TUI now loads authenticated entries through EntryDocumentService with the generation-bound authentication handle and renders the storage-owned structured document dynamically. Sensitive fields (including the first password and OTP URIs) are masked by default; Tab/Shift-Tab focus fields, v/V reveal and hide, y copies only the focused structured value through the timed native clipboard lifecycle, j/k and paging scroll wrapped content, and Esc closes the document without changing sidebar selection. Reveal state is cleared on field focus changes, overlays, close, authentication failure, terminal focus loss, manual lock, and lease expiry. OTP kind, issuer, account, algorithm, digits, period/counter metadata is now parsed and supplied by crates/storage rather than inferred by the frontend. Clipboard work is cancellable and joined so process exit cannot skip cleanup.
Verification:
The review also verifies arbitrary field counts and duplicate names remain ID/order based, long values wrap and scroll across responsive layouts, Unicode renders correctly, sidebar selection survives close, and secrets stay redacted from status/help/debug/default render snapshots unless a test explicitly performs reveal.