Skip to main content

rgx/ui/
theme.rs

1use ratatui::style::Color;
2
3pub const CAPTURE_COLORS: &[Color] = &[
4    Color::Rgb(166, 227, 161), // green
5    Color::Rgb(249, 226, 175), // yellow
6    Color::Rgb(137, 180, 250), // blue
7    Color::Rgb(245, 194, 231), // pink
8    Color::Rgb(180, 190, 254), // lavender
9    Color::Rgb(148, 226, 213), // teal
10    Color::Rgb(250, 179, 135), // peach
11    Color::Rgb(203, 166, 247), // mauve
12    Color::Rgb(116, 199, 236), // sapphire
13    Color::Rgb(242, 205, 205), // flamingo
14    Color::Rgb(243, 139, 168), // red
15    Color::Rgb(137, 220, 235), // sky
16];
17
18pub const MATCH_BG: Color = Color::Rgb(69, 71, 90);
19pub const MATCH_BG_ALT: Color = Color::Rgb(88, 91, 112);
20
21pub fn match_bg(index: usize) -> Color {
22    if index % 2 == 0 {
23        MATCH_BG
24    } else {
25        MATCH_BG_ALT
26    }
27}
28
29pub const SURFACE0: Color = Color::Rgb(49, 50, 68);
30pub const SURFACE1: Color = Color::Rgb(69, 71, 90);
31pub const TEXT: Color = Color::Rgb(205, 214, 244);
32pub const SUBTEXT: Color = Color::Rgb(166, 173, 200);
33pub const OVERLAY: Color = Color::Rgb(108, 112, 134);
34pub const RED: Color = Color::Rgb(243, 139, 168);
35pub const GREEN: Color = Color::Rgb(166, 227, 161);
36pub const BLUE: Color = Color::Rgb(137, 180, 250);
37pub const YELLOW: Color = Color::Rgb(249, 226, 175);
38pub const TEAL: Color = Color::Rgb(148, 226, 213);
39pub const PEACH: Color = Color::Rgb(250, 179, 135);
40pub const MAUVE: Color = Color::Rgb(203, 166, 247);
41pub const BASE: Color = Color::Rgb(30, 30, 46);
42
43pub fn capture_color(index: usize) -> Color {
44    CAPTURE_COLORS[index % CAPTURE_COLORS.len()]
45}