Some more work trying to get the contrast of the field types right
This commit is contained in:
parent
4aac153edb
commit
d660608626
|
@ -22,7 +22,7 @@ var (
|
|||
Background(lipgloss.Color("#4479ff"))
|
||||
|
||||
fieldTypeStyle = lipgloss.NewStyle().
|
||||
Foreground(lipgloss.Color("#31e131"))
|
||||
Foreground(lipgloss.AdaptiveColor{Light: "#2B800C", Dark: "#73C653"})
|
||||
metaInfoStyle = lipgloss.NewStyle().
|
||||
Foreground(lipgloss.Color("#888888"))
|
||||
)
|
||||
|
|
|
@ -2,6 +2,7 @@ package dynamotableview
|
|||
|
||||
import (
|
||||
table "github.com/calyptia/go-bubble-table"
|
||||
"github.com/charmbracelet/bubbles/key"
|
||||
tea "github.com/charmbracelet/bubbletea"
|
||||
"github.com/charmbracelet/lipgloss"
|
||||
"github.com/lmika/awstools/internal/dynamo-browse/controllers"
|
||||
|
@ -18,10 +19,22 @@ var (
|
|||
Background(lipgloss.Color("#4479ff"))
|
||||
)
|
||||
|
||||
type KeyBinding struct {
|
||||
MoveUp key.Binding
|
||||
MoveDown key.Binding
|
||||
PageUp key.Binding
|
||||
PageDown key.Binding
|
||||
Home key.Binding
|
||||
End key.Binding
|
||||
ColLeft key.Binding
|
||||
ColRight key.Binding
|
||||
}
|
||||
|
||||
type Model struct {
|
||||
frameTitle frame.FrameTitle
|
||||
table table.Model
|
||||
w, h int
|
||||
keyBinding KeyBinding
|
||||
|
||||
// model state
|
||||
colOffset int
|
||||
|
@ -39,6 +52,16 @@ func New() *Model {
|
|||
return &Model{
|
||||
frameTitle: frameTitle,
|
||||
table: tbl,
|
||||
keyBinding: KeyBinding{
|
||||
MoveUp: key.NewBinding(key.WithKeys("i", "up")),
|
||||
MoveDown: key.NewBinding(key.WithKeys("k", "down")),
|
||||
PageUp: key.NewBinding(key.WithKeys("I", "pgup")),
|
||||
PageDown: key.NewBinding(key.WithKeys("K", "pgdown")),
|
||||
Home: key.NewBinding(key.WithKeys("I", "home")),
|
||||
End: key.NewBinding(key.WithKeys("K", "end")),
|
||||
ColLeft: key.NewBinding(key.WithKeys("j", "left")),
|
||||
ColRight: key.NewBinding(key.WithKeys("l", "right")),
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -53,26 +76,32 @@ func (m *Model) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
|
|||
m.updateTable()
|
||||
return m, m.postSelectedItemChanged
|
||||
case tea.KeyMsg:
|
||||
switch msg.String() {
|
||||
switch {
|
||||
// Table nav
|
||||
case "i", "up":
|
||||
case key.Matches(msg, m.keyBinding.MoveUp):
|
||||
m.table.GoUp()
|
||||
return m, m.postSelectedItemChanged
|
||||
case "k", "down":
|
||||
case key.Matches(msg, m.keyBinding.MoveDown):
|
||||
m.table.GoDown()
|
||||
return m, m.postSelectedItemChanged
|
||||
case "j":
|
||||
m.setLeftmostDisplayedColumn(m.colOffset - 1)
|
||||
return m, nil
|
||||
case "l":
|
||||
m.setLeftmostDisplayedColumn(m.colOffset + 1)
|
||||
return m, nil
|
||||
case "I", "pgup":
|
||||
case key.Matches(msg, m.keyBinding.PageUp):
|
||||
m.table.GoPageUp()
|
||||
return m, m.postSelectedItemChanged
|
||||
case "K", "pgdn":
|
||||
case key.Matches(msg, m.keyBinding.PageDown):
|
||||
m.table.GoPageDown()
|
||||
return m, m.postSelectedItemChanged
|
||||
case key.Matches(msg, m.keyBinding.Home):
|
||||
m.table.GoTop()
|
||||
return m, m.postSelectedItemChanged
|
||||
case key.Matches(msg, m.keyBinding.End):
|
||||
m.table.GoBottom()
|
||||
return m, m.postSelectedItemChanged
|
||||
case key.Matches(msg, m.keyBinding.ColLeft):
|
||||
m.setLeftmostDisplayedColumn(m.colOffset - 1)
|
||||
return m, nil
|
||||
case key.Matches(msg, m.keyBinding.ColRight):
|
||||
m.setLeftmostDisplayedColumn(m.colOffset + 1)
|
||||
return m, nil
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue