# Chanora Material 3 Component Catalog

**Document status:** DV meeting baseline candidate  
**Date:** 2026-05-29

## 1. Component Catalogue

| Component area | Source files | Purpose |
|---|---|---|
| Connect and bookmarks | `connect_widgets.dart`, `input_dialogs.dart` | Server input, bookmarks, connect actions |
| Channel and client view | `snapshot_view.dart`, `client_info_sheet.dart`, `channel_spacer.dart` | Channel tree, clients, client details |
| Chat | `chat_views.dart`, `bbcode_text.dart` | Channel text and BBCode rendering |
| Voice controls | `voice_bar.dart`, `voice_compact.dart`, `voice_settings*.dart` | Mute, deaf, PTT, levels, processing controls |
| Platform/permission indicators | `permission_state_banner.dart`, `ptt_capability_badge.dart`, `talk_power_warning.dart` | Platform readiness and safety warnings |
| Diagnostics | `audio_debug_stats_panel.dart` and diagnostics surfaces in app shell | Runtime/debug evidence and export support |

## 2. Acceptance Criteria

| Component area | DV acceptance criterion |
|---|---|
| Connect and bookmarks | User can enter server details, save/reuse bookmarks, and receive user-safe errors |
| Channel and client view | Channel tree and online clients remain visible after snapshot updates |
| Chat | Channel text renders without corrupting Unicode or unsafe BBCode display |
| Voice controls | Mute, deaf, PTT, metering, and processing controls expose current state clearly |
| Platform/permission indicators | Permission and capability limitations are visible and not color-only |
| Diagnostics | Diagnostic/debug surfaces do not expose unredacted secrets in release evidence |

## 3. Evidence Required Before Release

| Evidence | Purpose |
|---|---|
| Flutter widget test run | Confirms component behavior remains stable |
| Accessibility review | Confirms critical states are not color-only and controls are reachable |
| Candidate screenshots or demo notes | Supports DV review and release readiness |

## 4. DV Conclusion

The component catalog is sufficient for DV navigation. Final UI audit should attach screenshots or test evidence for each critical component.
