1use crate::{
2 colors::{GitStatusColors, PlayerColors, StatusColors, SystemColors, ThemeColors, ThemeStyle},
3 default_color_scales, Appearance, SyntaxTheme, ThemeFamily, ThemeVariant,
4};
5
6fn zed_pro_daylight() -> ThemeVariant {
7 ThemeVariant {
8 id: "zed_pro_daylight".to_string(),
9 name: "Zed Pro Daylight".into(),
10 appearance: Appearance::Light,
11 styles: ThemeStyle {
12 system: SystemColors::default(),
13 colors: ThemeColors::default_light(),
14 status: StatusColors::default(),
15 git: GitStatusColors::default(),
16 player: PlayerColors::default(),
17 syntax: SyntaxTheme::default_light(),
18 },
19 }
20}
21
22pub(crate) fn zed_pro_moonlight() -> ThemeVariant {
23 ThemeVariant {
24 id: "zed_pro_moonlight".to_string(),
25 name: "Zed Pro Moonlight".into(),
26 appearance: Appearance::Dark,
27 styles: ThemeStyle {
28 system: SystemColors::default(),
29 colors: ThemeColors::default_dark(),
30 status: StatusColors::default(),
31 git: GitStatusColors::default(),
32 player: PlayerColors::default(),
33 syntax: SyntaxTheme::default_dark(),
34 },
35 }
36}
37
38pub fn zed_pro_family() -> ThemeFamily {
39 ThemeFamily {
40 id: "zed_pro".to_string(),
41 name: "Zed Pro".into(),
42 author: "Zed Team".into(),
43 themes: vec![zed_pro_daylight(), zed_pro_moonlight()],
44 scales: default_color_scales(),
45 }
46}
47
48impl Default for ThemeFamily {
49 fn default() -> Self {
50 zed_pro_family()
51 }
52}
53
54impl Default for ThemeVariant {
55 fn default() -> Self {
56 zed_pro_daylight()
57 }
58}