1use super::{Color, Theme, lighten_color};
2
3impl Theme {
4 #[allow(dead_code)]
6 pub fn light() -> Self {
7 const FG: Color = Color::Rgb { r: 0x22, g: 0x22, b: 0x22 };
8 const BG: Color = Color::Rgb { r: 0xFA, g: 0xFA, b: 0xFA };
9 const ACCENT: Color = Color::Rgb { r: 0x00, g: 0x66, b: 0xCC };
10 const GREEN: Color = Color::Rgb { r: 0x22, g: 0x88, b: 0x22 };
11 const RED: Color = Color::Rgb { r: 0xCC, g: 0x22, b: 0x22 };
12 const ORANGE: Color = Color::Rgb { r: 0xCC, g: 0x66, b: 0x00 };
13
14 Theme::builder()
15 .fg(FG)
16 .bg(BG)
17 .accent(ACCENT)
18 .highlight_bg(Color::Rgb { r: 0xDD, g: 0xDD, b: 0xDD })
19 .highlight_fg(FG)
20 .text_secondary(Color::Rgb { r: 0x66, g: 0x66, b: 0x66 })
21 .code_fg(Color::Rgb { r: 0x33, g: 0x66, b: 0x33 })
22 .code_bg(Color::Rgb { r: 0xF0, g: 0xF0, b: 0xF0 })
23 .heading(ACCENT)
24 .link(Color::Rgb { r: 0x00, g: 0x44, b: 0xAA })
25 .blockquote(Color::Rgb { r: 0x66, g: 0x44, b: 0x88 })
26 .muted(Color::Rgb { r: 0x88, g: 0x88, b: 0x88 })
27 .success(GREEN)
28 .warning(ORANGE)
29 .error(RED)
30 .info(ACCENT)
31 .secondary(Color::Rgb { r: 0x66, g: 0x33, b: 0x99 })
32 .sidebar_bg(Color::Rgb { r: 0xF4, g: 0xF4, b: 0xF8 })
33 .diff_added_fg(GREEN)
34 .diff_removed_fg(RED)
35 .diff_added_bg(lighten_color(GREEN))
36 .diff_removed_bg(lighten_color(RED))
37 .build()
38 .expect("built-in light theme has all fields")
39 }
40}