feat: add Screen interface and Context for UI architecture
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
11
ui/screen.go
Normal file
11
ui/screen.go
Normal file
@@ -0,0 +1,11 @@
|
||||
package ui
|
||||
|
||||
import tea "github.com/charmbracelet/bubbletea"
|
||||
|
||||
// Screen represents an independent screen with its own Update and View logic.
|
||||
// Update returns the next Screen (can return itself or a different screen for transitions)
|
||||
// plus a tea.Cmd for async operations.
|
||||
type Screen interface {
|
||||
Update(msg tea.Msg, ctx *Context) (Screen, tea.Cmd)
|
||||
View(ctx *Context) string
|
||||
}
|
||||
Reference in New Issue
Block a user