...
1 package d2themescatalog
2
3 import (
4 "fmt"
5 "strings"
6
7 "oss.terrastruct.com/d2/d2themes"
8 )
9
10 var LightCatalog = []d2themes.Theme{
11 NeutralDefault,
12 NeutralGrey,
13 FlagshipTerrastruct,
14 CoolClassics,
15 MixedBerryBlue,
16 GrapeSoda,
17 Aubergine,
18 ColorblindClear,
19 VanillaNitroCola,
20 OrangeCreamsicle,
21 ShirleyTemple,
22 EarthTones,
23 EvergladeGreen,
24 ButteredToast,
25 Terminal,
26 TerminalGrayscale,
27 Origami,
28 }
29
30 var DarkCatalog = []d2themes.Theme{
31 DarkMauve,
32 DarkFlagshipTerrastruct,
33 }
34
35 func Find(id int64) d2themes.Theme {
36 for _, theme := range LightCatalog {
37 if theme.ID == id {
38 return theme
39 }
40 }
41
42 for _, theme := range DarkCatalog {
43 if theme.ID == id {
44 return theme
45 }
46 }
47
48 return d2themes.Theme{}
49 }
50
51 func CLIString() string {
52 var s strings.Builder
53
54 s.WriteString("Light:\n")
55 for _, t := range LightCatalog {
56 s.WriteString(fmt.Sprintf("- %s: %d\n", t.Name, t.ID))
57 }
58
59 s.WriteString("Dark:\n")
60 for _, t := range DarkCatalog {
61 s.WriteString(fmt.Sprintf("- %s: %d\n", t.Name, t.ID))
62 }
63
64 return s.String()
65 }
66
View as plain text