refactor: rename updateBoard to updateColumns

This commit is contained in:
Dan Anglin 2023-04-24 08:36:22 +01:00
parent 283da856ff
commit 7e5e3dc76c
Signed by: dananglin
GPG key ID: 0C1D44CFBEE68638
2 changed files with 32 additions and 30 deletions

View file

@ -1,6 +1,10 @@
package ui package ui
import ( import (
"fmt"
"codeflow.dananglin.me.uk/apollo/canal/internal/board"
"github.com/gdamore/tcell/v2" "github.com/gdamore/tcell/v2"
"github.com/rivo/tview" "github.com/rivo/tview"
) )
@ -69,3 +73,30 @@ func (u *UI) shiftColumnFocus(s int) {
u.setColumnFocus() u.setColumnFocus()
} }
func (u *UI) updateColumns(statusList []board.Status) error {
u.flex.Clear()
columns := make([]column, len(statusList))
for i := range statusList {
columns[i] = u.newColumn(statusList[i].ID, statusList[i].Name)
if len(statusList[i].CardIds) > 0 {
cards, err := u.board.CardList(statusList[i].CardIds)
if err != nil {
return fmt.Errorf("unable to get the card list. %w", err)
}
for _, c := range cards {
columns[i].cards.AddItem(fmt.Sprintf("[%d] %s", c.Id(), c.Title), "", 0, nil)
}
}
u.flex.AddItem(columns[i].cards, 0, 1, false)
}
u.columns = columns
return nil
}

View file

@ -1,7 +1,5 @@
package ui package ui
// TODO: Update card status (card ID, oldStatus, newStatus)
import ( import (
"fmt" "fmt"
@ -147,7 +145,7 @@ func (u *UI) refresh() error {
return fmt.Errorf("unable to get the status list, %w", err) return fmt.Errorf("unable to get the status list, %w", err)
} }
u.updateBoard(statusList) u.updateColumns(statusList)
u.setColumnFocus() u.setColumnFocus()
@ -159,30 +157,3 @@ func (u *UI) shutdown() {
u.closeBoard() u.closeBoard()
u.Stop() u.Stop()
} }
func (u *UI) updateBoard(statusList []board.Status) error {
u.flex.Clear()
columns := make([]column, len(statusList))
for i := range statusList {
columns[i] = u.newColumn(statusList[i].ID, statusList[i].Name)
if len(statusList[i].CardIds) > 0 {
cards, err := u.board.CardList(statusList[i].CardIds)
if err != nil {
return fmt.Errorf("unable to get the card list. %w", err)
}
for _, c := range cards {
columns[i].cards.AddItem(fmt.Sprintf("[%d] %s", c.Id(), c.Title), "", 0, nil)
}
}
u.flex.AddItem(columns[i].cards, 0, 1, false)
}
u.columns = columns
return nil
}