Commit Graph

8 Commits

Author SHA1 Message Date
134f2b78d6 feat(tui): add panic logging and improve event handling
- Integrate `log_panics` for better error tracking in TUI.
- Enhance score interpretation result handling with async task management.
- Improve layout consistency in the UI rendering process.
2025-02-04 14:44:03 -05:00
1877570d7c feat: Add verification of opnsense package installation, fix opnsense-config tests, add log file to tui 2025-02-02 17:06:23 -05:00
0cfd5dc89e fix(tui): handle 'End' key for bottom logs navigation
Update the TUI to handle both 'Shift+G' and 'End' keys for navigating to the bottom of logs. Adjusted the help widget text accordingly to reflect this change.
2025-01-29 15:50:35 -05:00
f1f2c796c4 feat(widget): add help widget and improve score widget
- Introduced a new `Help` widget to display user instructions.
- Improved the `ScoreListWidget` by removing unnecessary execution rendering methods and simplifying state transitions.
- Cleaned up unused imports and refactored code for better readability.
2025-01-29 15:34:16 -05:00
6628e193e0 feat: harmony terminal ui can now browse scores and (almost) launch them 2025-01-28 16:51:58 -05:00
3410751463 feat: add ScoreListWidget with execution confirmation
Implement ScoreListWidget to manage score list rendering and execution confirmation flow. This includes methods for scrolling through scores, launching an execution, confirming/denying the execution, and rendering a popup for user confirmation.
2025-01-27 23:24:21 -05:00
651266d71c fix: update Score trait implementation and TUI initialization
Update the `Score` trait implementations to return a `Box<dyn Interpret>` instead of concrete types or clones where necessary. Additionally, refactor the initialization and cleanup in `HarmonyTUI` to use utility functions provided by `ratatui`.
2025-01-25 12:36:22 -05:00
4bbe8e84d8 feat(harmony_tui): add initial TUI implementation with ratatui and crossterm
Add a new `harmony_tui` crate to initialize and run a text-based user interface (TUI) for the Harmony project using `ratatui` for rendering and `crossterm` for handling input. The `HarmonyTUI` struct initializes the terminal, enters a loop to render updates, and handles basic input events to exit. This commit sets up the foundation for further TUI development.
2025-01-24 11:30:01 -05:00