4 releases (2 breaking)
0.3.0 | Apr 3, 2023 |
---|---|
0.2.0 | Jun 18, 2022 |
0.1.3 | Dec 13, 2021 |
0.1.2 | Nov 6, 2021 |
#1334 in Parser implementations
640 downloads per month
Used in nyaa
16KB
311 lines
Color -> TUI
Parse HEX colors to ratatui's Rgb colors.
Example
#C3F111
->Color::Rgb(195,241,17)
#CFB
->Color::Rgb(204,255,187)
142
->Color::Indexed(142)
Usage
#[derive(Serialize, Deserialize, PartialEq)]
sruct ColorStruct {
#[serde(with = "color_to_tui"]
color: ratatui::style::Color,
#[serde(with = "color_to_tui::optional"]
optional_color: Option<ratatui::style::Color>,
}
let color_text = r###"{ "color" : "#12FC1C", "optional_color" : "123" }"###
let t: ColorStruct = serde_json::from_str::<ColorStruct>(color_text).unwrap();
let c = ColorStruct {
color: Color::Rgb(18, 252, 28),
optional_color: Option<Color::Indexed(123)>,
};
assert_eq!(t, c);
Dependencies
~6.5MB
~111K SLoC