charming_fork_zephyr/theme/
mod.rs1pub enum Theme {
2 Default,
3 Dark,
4 Vintage,
5 Westeros,
6 Essos,
7 Wonderland,
8 Walden,
9 Chalk,
10 Infographic,
11 Macarons,
12 Roma,
13 Shine,
14 PurplePassion,
15 Halloween,
16 Custom(&'static str, &'static str),
17}
18
19impl Theme {
20 pub(crate) fn to_str(&self) -> (&'static str, &'static str) {
21 match self {
22 Theme::Default => ("", ""),
23 Theme::Dark => ("dark", ""),
24 Theme::Vintage => ("vintage", include_str!("../asset/theme-vintage.js")),
25 Theme::Westeros => ("westeros", include_str!("../asset/theme-westeros.js")),
26 Theme::Essos => ("essos", include_str!("../asset/theme-essos.js")),
27 Theme::Wonderland => ("wonderland", include_str!("../asset/theme-wonderland.js")),
28 Theme::Walden => ("walden", include_str!("../asset/theme-walden.js")),
29 Theme::Chalk => ("chalk", include_str!("../asset/theme-chalk.js")),
30 Theme::Infographic => ("infographic", include_str!("../asset/theme-infographic.js")),
31 Theme::Macarons => ("macarons", include_str!("../asset/theme-macarons.js")),
32 Theme::Roma => ("roma", include_str!("../asset/theme-roma.js")),
33 Theme::Shine => ("shine", include_str!("../asset/theme-shine.js")),
34 Theme::PurplePassion => (
35 "purple-passion",
36 include_str!("../asset/theme-purple-passion.js"),
37 ),
38 Theme::Halloween => ("halloween", include_str!("../asset/theme-halloween.js")),
39 Theme::Custom(name, content) => (name, content),
40 }
41 }
42}
43
44impl Default for Theme {
45 fn default() -> Self {
46 Theme::Default
47 }
48}