summaryrefslogtreecommitdiff
path: root/internal/tui/export
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2026-03-06 17:32:24 +0200
committerPaul Buetow <paul@buetow.org>2026-03-06 17:32:24 +0200
commit1561987330cb898f5ff64383a9c78e7e6559f118 (patch)
tree69a823e8f98dce572566c97e6879c11c9d591bda /internal/tui/export
parent96225fb6159212a8851043a08d781aba721b4e78 (diff)
parent110a193e04b81abb8d8e159abd73f9f6ed1acd7e (diff)
Merge branch 'feat/bubbletea-v2-migration'
Diffstat (limited to 'internal/tui/export')
-rw-r--r--internal/tui/export/doc.go2
-rw-r--r--internal/tui/export/model.go6
-rw-r--r--internal/tui/export/model_test.go6
3 files changed, 8 insertions, 6 deletions
diff --git a/internal/tui/export/doc.go b/internal/tui/export/doc.go
new file mode 100644
index 0000000..356b800
--- /dev/null
+++ b/internal/tui/export/doc.go
@@ -0,0 +1,2 @@
+// Package export implements the TUI snapshot export modal and option handling.
+package export
diff --git a/internal/tui/export/model.go b/internal/tui/export/model.go
index 57612db..179754d 100644
--- a/internal/tui/export/model.go
+++ b/internal/tui/export/model.go
@@ -5,8 +5,8 @@ import (
"fmt"
"strings"
- tea "github.com/charmbracelet/bubbletea"
- "github.com/charmbracelet/lipgloss"
+ tea "charm.land/bubbletea/v2"
+ "charm.land/lipgloss/v2"
)
// Option is a selectable export target.
@@ -75,7 +75,7 @@ func (m Model) Close() Model {
// Update handles modal key navigation and export completion messages.
func (m Model) Update(msg tea.Msg) (Model, tea.Cmd) {
switch msg := msg.(type) {
- case tea.KeyMsg:
+ case tea.KeyPressMsg:
if !m.visible {
return m, nil
}
diff --git a/internal/tui/export/model_test.go b/internal/tui/export/model_test.go
index a97cd8b..2d47435 100644
--- a/internal/tui/export/model_test.go
+++ b/internal/tui/export/model_test.go
@@ -5,7 +5,7 @@ import (
"strings"
"testing"
- tea "github.com/charmbracelet/bubbletea"
+ tea "charm.land/bubbletea/v2"
)
func TestOpenAndClose(t *testing.T) {
@@ -21,7 +21,7 @@ func TestOpenAndClose(t *testing.T) {
func TestEnterEmitsRequest(t *testing.T) {
m := NewModel().Open()
- next, cmd := m.Update(tea.KeyMsg{Type: tea.KeyEnter})
+ next, cmd := m.Update(tea.KeyPressMsg{Code: tea.KeyEnter})
if cmd == nil {
t.Fatalf("expected request command on enter")
}
@@ -40,7 +40,7 @@ func TestEnterEmitsRequest(t *testing.T) {
func TestCancelOptionCloses(t *testing.T) {
m := NewModel().Open()
m.selected = len(optionValues) - 1
- next, cmd := m.Update(tea.KeyMsg{Type: tea.KeyEnter})
+ next, cmd := m.Update(tea.KeyPressMsg{Code: tea.KeyEnter})
if cmd != nil {
t.Fatalf("expected no command when selecting cancel")
}