1package tui
2
3import (
4 "github.com/charmbracelet/lipgloss"
5)
6
7var activeBorderColor = lipgloss.Color("62")
8var inactiveBorderColor = lipgloss.Color("236")
9
10var viewportTitleBorder = lipgloss.Border{
11 Top: "─",
12 Bottom: "─",
13 Left: "│",
14 Right: "│",
15 TopLeft: "╭",
16 TopRight: "┬",
17 BottomLeft: "├",
18 BottomRight: "┴",
19}
20
21var viewportNoteBorder = lipgloss.Border{
22 Top: "─",
23 Bottom: "─",
24 Left: "",
25 Right: "│",
26 TopLeft: "",
27 TopRight: "╮",
28 BottomLeft: "",
29 BottomRight: "┤",
30}
31
32var viewportBodyBorder = lipgloss.Border{
33 Top: "",
34 Bottom: "─",
35 Left: "│",
36 Right: "│",
37 TopLeft: "",
38 TopRight: "",
39 BottomLeft: "╰",
40 BottomRight: "╯",
41}
42
43var appBoxStyle = lipgloss.NewStyle().
44 Margin(1, 2)
45
46var headerStyle = lipgloss.NewStyle().
47 Foreground(lipgloss.Color("62")).
48 Align(lipgloss.Right).
49 PaddingRight(1).
50 Bold(true)
51
52var menuStyle = lipgloss.NewStyle().
53 BorderStyle(lipgloss.RoundedBorder()).
54 BorderForeground(inactiveBorderColor).
55 Padding(1, 2).
56 MarginRight(1).
57 Width(24)
58
59var menuActiveStyle = menuStyle.Copy().
60 BorderStyle(lipgloss.RoundedBorder()).
61 BorderForeground(activeBorderColor)
62
63var menuCursor = lipgloss.NewStyle().
64 Foreground(lipgloss.Color("213")).
65 SetString(">")
66
67var contentBoxTitleStyle = lipgloss.NewStyle().
68 Border(viewportTitleBorder).
69 BorderForeground(inactiveBorderColor).
70 Padding(0, 2)
71
72var contentBoxNoteStyle = lipgloss.NewStyle().
73 Border(viewportNoteBorder, true, true, true, false).
74 BorderForeground(inactiveBorderColor).
75 Padding(0, 2)
76
77var contentBoxStyle = lipgloss.NewStyle().
78 BorderStyle(viewportBodyBorder).
79 BorderForeground(inactiveBorderColor).
80 PaddingRight(1)
81
82var menuItemStyle = lipgloss.NewStyle().
83 Foreground(lipgloss.Color("252")).
84 PaddingLeft(2)
85
86var selectedMenuItemStyle = lipgloss.NewStyle().
87 Foreground(lipgloss.Color("207")).
88 PaddingLeft(1)
89
90var footerStyle = lipgloss.NewStyle().
91 MarginTop(1)
92
93var helpKeyStyle = lipgloss.NewStyle().
94 Foreground(lipgloss.Color("241"))
95
96var helpValueStyle = lipgloss.NewStyle().
97 Foreground(lipgloss.Color("239"))
98
99var errorStyle = lipgloss.NewStyle().
100 Padding(1)
101
102var errorHeaderStyle = lipgloss.NewStyle().
103 Foreground(lipgloss.Color("230")).
104 Background(lipgloss.Color("204")).
105 Bold(true).
106 Padding(0, 1)
107
108var errorBodyStyle = lipgloss.NewStyle().
109 Foreground(lipgloss.Color("252")).
110 MarginLeft(2).
111 Width(52) // for now
112
113var helpDivider = lipgloss.NewStyle().
114 Foreground(lipgloss.Color("237")).
115 SetString(" • ")