void-audit-tui 0.0.4

Audit viewer TUI for void — integrity and encryption inspection
Documentation
//! Color theming for the audit TUI.
//!
//! Adapted from void-graph TUI.

use ratatui::style::Color as RatatuiColor;
use smart_default::SmartDefault;

/// Color theme for the TUI.
#[derive(Debug, Clone, PartialEq, Eq, SmartDefault)]
pub struct ColorTheme {
    #[default(RatatuiColor::Reset)]
    pub fg: RatatuiColor,
    #[default(RatatuiColor::Reset)]
    pub bg: RatatuiColor,

    // List colors
    #[default(RatatuiColor::White)]
    pub list_selected_fg: RatatuiColor,
    #[default(RatatuiColor::DarkGray)]
    pub list_selected_bg: RatatuiColor,
    #[default(RatatuiColor::Yellow)]
    pub list_cid_fg: RatatuiColor,
    #[default(RatatuiColor::Cyan)]
    pub list_type_commit_fg: RatatuiColor,
    #[default(RatatuiColor::Green)]
    pub list_type_metadata_fg: RatatuiColor,
    #[default(RatatuiColor::Magenta)]
    pub list_type_shard_fg: RatatuiColor,
    #[default(RatatuiColor::Red)]
    pub list_type_unknown_fg: RatatuiColor,
    #[default(RatatuiColor::Blue)]
    pub list_format_known_fg: RatatuiColor,
    #[default(RatatuiColor::DarkGray)]
    pub list_format_unknown_fg: RatatuiColor,

    // Detail colors
    #[default(RatatuiColor::Cyan)]
    pub detail_label_fg: RatatuiColor,
    #[default(RatatuiColor::Reset)]
    pub detail_value_fg: RatatuiColor,
    #[default(RatatuiColor::Yellow)]
    pub detail_cid_fg: RatatuiColor,
    #[default(RatatuiColor::Green)]
    pub detail_size_fg: RatatuiColor,
    #[default(RatatuiColor::Magenta)]
    pub detail_date_fg: RatatuiColor,

    // Help colors
    #[default(RatatuiColor::Green)]
    pub help_block_title_fg: RatatuiColor,
    #[default(RatatuiColor::Yellow)]
    pub help_key_fg: RatatuiColor,

    // Status colors
    #[default(RatatuiColor::Cyan)]
    pub status_info_fg: RatatuiColor,
    #[default(RatatuiColor::Yellow)]
    pub status_warn_fg: RatatuiColor,
    #[default(RatatuiColor::Red)]
    pub status_error_fg: RatatuiColor,
}