summaryrefslogtreecommitdiffhomepage
path: root/internal/tui/components
diff options
context:
space:
mode:
authoradamdottv <[email protected]>2025-05-12 09:44:56 -0500
committeradamdottv <[email protected]>2025-05-12 09:44:56 -0500
commitdfe5fd8d970f76af9db0a7bf9a1e6f0bc01a291c (patch)
treeebf8123a492626a31b7767b18a60594879cd70b0 /internal/tui/components
parented9fba99c9e230094ed5d468c88f81469d60c911 (diff)
downloadopencode-dfe5fd8d970f76af9db0a7bf9a1e6f0bc01a291c.tar.gz
opencode-dfe5fd8d970f76af9db0a7bf9a1e6f0bc01a291c.zip
wip: refactoring
Diffstat (limited to 'internal/tui/components')
-rw-r--r--internal/tui/components/chat/list.go8
-rw-r--r--internal/tui/components/chat/sidebar.go2
-rw-r--r--internal/tui/components/core/status.go5
-rw-r--r--internal/tui/components/dialog/session.go4
-rw-r--r--internal/tui/components/logs/table.go7
5 files changed, 12 insertions, 14 deletions
diff --git a/internal/tui/components/chat/list.go b/internal/tui/components/chat/list.go
index 55f76c342..f749f6b05 100644
--- a/internal/tui/components/chat/list.go
+++ b/internal/tui/components/chat/list.go
@@ -110,7 +110,7 @@ func (m *messagesCmp) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
m.viewport.GotoBottom()
case pubsub.Event[message.Message]:
needsRerender := false
- if msg.Type == pubsub.CreatedEvent {
+ if msg.Type == message.EventMessageCreated {
if msg.Payload.SessionID == m.session.ID {
messageExists := false
@@ -142,7 +142,7 @@ func (m *messagesCmp) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
}
}
}
- } else if msg.Type == pubsub.UpdatedEvent && msg.Payload.SessionID == m.session.ID {
+ } else if msg.Type == message.EventMessageUpdated && msg.Payload.SessionID == m.session.ID {
for i, v := range m.messages {
if v.ID == msg.Payload.ID {
m.messages[i] = msg.Payload
@@ -155,8 +155,8 @@ func (m *messagesCmp) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
if needsRerender {
m.renderView()
if len(m.messages) > 0 {
- if (msg.Type == pubsub.CreatedEvent) ||
- (msg.Type == pubsub.UpdatedEvent && msg.Payload.ID == m.messages[len(m.messages)-1].ID) {
+ if (msg.Type == message.EventMessageCreated) ||
+ (msg.Type == message.EventMessageUpdated && msg.Payload.ID == m.messages[len(m.messages)-1].ID) {
m.viewport.GotoBottom()
}
}
diff --git a/internal/tui/components/chat/sidebar.go b/internal/tui/components/chat/sidebar.go
index a66249b36..50c9ee567 100644
--- a/internal/tui/components/chat/sidebar.go
+++ b/internal/tui/components/chat/sidebar.go
@@ -59,7 +59,7 @@ func (m *sidebarCmp) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
m.loadModifiedFiles(ctx)
}
case pubsub.Event[session.Session]:
- if msg.Type == pubsub.UpdatedEvent {
+ if msg.Type == session.EventSessionUpdated {
if m.session.ID == msg.Payload.ID {
m.session = msg.Payload
}
diff --git a/internal/tui/components/core/status.go b/internal/tui/components/core/status.go
index 84e0be42b..5de0b852e 100644
--- a/internal/tui/components/core/status.go
+++ b/internal/tui/components/core/status.go
@@ -65,13 +65,13 @@ func (m statusCmp) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
case chat.SessionClearedMsg:
m.session = session.Session{}
case pubsub.Event[session.Session]:
- if msg.Type == pubsub.UpdatedEvent {
+ if msg.Type == session.EventSessionUpdated {
if m.session.ID == msg.Payload.ID {
m.session = msg.Payload
}
}
case pubsub.Event[status.StatusMessage]:
- if msg.Type == pubsub.CreatedEvent {
+ if msg.Type == status.EventStatusPublished {
statusMsg := statusMessage{
Level: msg.Payload.Level,
Message: msg.Payload.Message,
@@ -308,4 +308,3 @@ func NewStatusCmp(lspClients map[string]*lsp.Client) StatusCmp {
return statusComponent
}
-
diff --git a/internal/tui/components/dialog/session.go b/internal/tui/components/dialog/session.go
index 174e4bed9..d49af82f8 100644
--- a/internal/tui/components/dialog/session.go
+++ b/internal/tui/components/dialog/session.go
@@ -93,7 +93,7 @@ func (s *sessionDialogCmp) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
if len(s.sessions) > 0 {
selectedSession := s.sessions[s.selectedIdx]
// Update the session manager with the selected session
- session.SetCurrentSession(selectedSession.ID)
+ // session.SetCurrentSession(selectedSession.ID)
return s, util.CmdHandler(SessionSelectedMsg{
Session: selectedSession,
})
@@ -111,7 +111,7 @@ func (s *sessionDialogCmp) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
func (s *sessionDialogCmp) View() string {
t := theme.CurrentTheme()
baseStyle := styles.BaseStyle()
-
+
if len(s.sessions) == 0 {
return baseStyle.Padding(1, 2).
Border(lipgloss.RoundedBorder()).
diff --git a/internal/tui/components/logs/table.go b/internal/tui/components/logs/table.go
index e7fc4ea70..4a9eb06a4 100644
--- a/internal/tui/components/logs/table.go
+++ b/internal/tui/components/logs/table.go
@@ -9,7 +9,6 @@ import (
tea "github.com/charmbracelet/bubbletea"
"github.com/opencode-ai/opencode/internal/logging"
"github.com/opencode-ai/opencode/internal/pubsub"
- "github.com/opencode-ai/opencode/internal/session"
"github.com/opencode-ai/opencode/internal/tui/components/chat"
"github.com/opencode-ai/opencode/internal/tui/layout"
"github.com/opencode-ai/opencode/internal/tui/theme"
@@ -49,7 +48,7 @@ func (i *tableCmp) fetchLogs() tea.Cmd {
var logs []logging.Log
var err error
- sessionId := session.CurrentSessionID()
+ sessionId := "" //session.CurrentSessionID()
// Limit the number of logs to improve performance
const logLimit = 100
@@ -85,7 +84,7 @@ func (i *tableCmp) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
case pubsub.Event[logging.Log]:
// Only handle created events
- if msg.Type == pubsub.CreatedEvent {
+ if msg.Type == logging.EventLogCreated {
// Add the new log to our list
i.logs = append([]logging.Log{msg.Payload}, i.logs...)
// Keep the list at a reasonable size
@@ -105,7 +104,7 @@ func (i *tableCmp) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
t, cmd := i.table.Update(msg)
cmds = append(cmds, cmd)
i.table = t
-
+
// Only send selected log message when selection changes
selectedRow := i.table.SelectedRow()
if selectedRow != nil {