use ratatui::style::Color;
pub struct Theme {
pub json_null: Color,
pub json_bool: Color,
pub json_number: Color,
pub json_string: Color,
pub json_key: Color,
pub json_punctuation: Color,
pub prompt_editing: Color,
pub prompt_partial_eval: Color,
pub prompt_inactive: Color,
pub filter_error: Color,
pub filter_partial_highlight: Color,
pub filter_dim: Color,
pub status_bar_normal: Color,
pub status_bar_evaluating: Color,
pub status_message: Color,
pub help_key: Color,
pub help_title: Color,
pub scroll_indicator: Color,
pub loading_title: Color,
pub error_title: Color,
pub error_message: Color,
}
impl Default for Theme {
fn default() -> Self {
Self {
json_null: Color::Magenta,
json_bool: Color::Magenta,
json_number: Color::Yellow,
json_string: Color::Green,
json_key: Color::Cyan,
json_punctuation: Color::DarkGray,
prompt_editing: Color::Yellow,
prompt_partial_eval: Color::Magenta,
prompt_inactive: Color::DarkGray,
filter_error: Color::Red,
filter_partial_highlight: Color::Magenta,
filter_dim: Color::Gray,
status_bar_normal: Color::DarkGray,
status_bar_evaluating: Color::Yellow,
status_message: Color::White,
help_key: Color::Cyan,
help_title: Color::Yellow,
scroll_indicator: Color::DarkGray,
loading_title: Color::Yellow,
error_title: Color::Red,
error_message: Color::DarkGray,
}
}
}
pub static THEME: std::sync::LazyLock<Theme> = std::sync::LazyLock::new(Theme::default);