aboutsummaryrefslogtreecommitdiff
path: root/components/root/statusbar.go
diff options
context:
space:
mode:
Diffstat (limited to 'components/root/statusbar.go')
-rw-r--r--components/root/statusbar.go41
1 files changed, 41 insertions, 0 deletions
diff --git a/components/root/statusbar.go b/components/root/statusbar.go
new file mode 100644
index 0000000..dd2992f
--- /dev/null
+++ b/components/root/statusbar.go
@@ -0,0 +1,41 @@
+package root
+
+import (
+ "nectar/styles"
+ "nectar/types"
+
+ "github.com/charmbracelet/lipgloss"
+)
+
+func StatusBar(globals *types.Globals) string {
+ w := lipgloss.Width
+
+ helpText := lipgloss.JoinHorizontal(
+ lipgloss.Top,
+ styles.PaddedHorizontal.Render("↑/k: up"),
+ styles.PaddedHorizontal.Render("↓/j: down"),
+ styles.PaddedHorizontal.Render("↹: next"),
+ styles.PaddedHorizontal.Render("^n: new"),
+ styles.PaddedHorizontal.Render("^↵: connect"),
+ styles.PaddedHorizontal.Render("^s: save"),
+ styles.PaddedHorizontal.Render("^t: test"),
+ styles.PaddedHorizontal.Render("^d: delete"),
+ styles.PaddedHorizontal.Render("^c: quit"),
+ )
+
+ versionText := lipgloss.JoinHorizontal(
+ lipgloss.Top,
+ styles.PaddedHorizontal.Render("Nectar "+globals.Version+" ("+globals.BuildDate+")"),
+ )
+
+ separator := styles.BaseStyle.Width(globals.Width - w(helpText) - w(versionText)).Render("")
+
+ return styles.StatusBar.Render(
+ lipgloss.JoinHorizontal(
+ lipgloss.Top,
+ helpText,
+ separator,
+ versionText,
+ ),
+ )
+}