dashboard / erock/pico / feat(tui): tuns #53 rss

open · opened on 2025-03-17T16:22:05Z by erock
Help
# checkout latest patchset
ssh pr.pico.sh print pr-53 | git am -3
# checkout any patchset in a patch request
ssh pr.pico.sh print ps-X | git am -3
# add changes to patch request
git format-patch main --stdout | ssh pr.pico.sh pr add 53
# add review to patch request
git format-patch main --stdout | ssh pr.pico.sh pr add --review 53
# accept PR
ssh pr.pico.sh pr accept 53
# close PR
ssh pr.pico.sh pr close 53

Logs

erock created pr with ps-111 on 2025-03-17T16:22:05Z

Patchsets

ps-111 by erock on 2025-03-17T16:22:05Z

Patchset ps-111

feat(tui): tuns

Eric Bower
2025-03-17T16:21:46Z
Back to top

feat(tui): tuns

pkg/tui/menu.go link
+1 -0
 1diff --git a/pkg/tui/menu.go b/pkg/tui/menu.go
 2index 9121c65..90b9ad1 100644
 3--- a/pkg/tui/menu.go
 4+++ b/pkg/tui/menu.go
 5@@ -13,6 +13,7 @@ var menuChoices = []string{
 6 	"tokens",
 7 	"logs",
 8 	"analytics",
 9+	"tuns",
10 	"pico+",
11 	"chat",
12 }
pkg/tui/tuns.go link
+25 -0
 1diff --git a/pkg/tui/tuns.go b/pkg/tui/tuns.go
 2new file mode 100644
 3index 0000000..dd9552a
 4--- /dev/null
 5+++ b/pkg/tui/tuns.go
 6@@ -0,0 +1,25 @@
 7+package tui
 8+
 9+import (
10+	"git.sr.ht/~rockorager/vaxis"
11+	"git.sr.ht/~rockorager/vaxis/vxfw"
12+)
13+
14+type TunsPage struct {
15+	shared *SharedModel
16+}
17+
18+func NewTunsPage(shrd *SharedModel) *TunsPage {
19+	return &TunsPage{
20+		shared: shrd,
21+	}
22+}
23+
24+func (m *TunsPage) HandleEvent(ev vaxis.Event, ph vxfw.EventPhase) (vxfw.Command, error) {
25+	return nil, nil
26+}
27+
28+func (m *TunsPage) Draw(ctx vxfw.DrawContext) (vxfw.Surface, error) {
29+	root := vxfw.NewSurface(ctx.Max.Width, ctx.Max.Height, m)
30+	return root, nil
31+}
pkg/tui/ui.go link
+1 -0
 1diff --git a/pkg/tui/ui.go b/pkg/tui/ui.go
 2index b2f2bec..bb962de 100644
 3--- a/pkg/tui/ui.go
 4+++ b/pkg/tui/ui.go
 5@@ -337,6 +337,7 @@ func NewTui(opts vaxis.Options, shrd *SharedModel) {
 6 		"logs":       NewLogsPage(shrd),
 7 		"analytics":  NewAnalyticsPage(shrd),
 8 		"chat":       NewChatPage(shrd),
 9+		"tuns":       NewTunsPage(shrd),
10 	}
11 	root := &App{
12 		shared: shrd,