2020-02-25 11:55:36 +02:00
|
|
|
package presentation
|
|
|
|
|
|
|
|
import (
|
2022-03-19 10:12:58 +02:00
|
|
|
"github.com/jesseduffield/generics/slices"
|
2020-09-29 12:28:39 +02:00
|
|
|
"github.com/jesseduffield/lazygit/pkg/commands/models"
|
2022-04-23 03:57:51 +02:00
|
|
|
"github.com/jesseduffield/lazygit/pkg/gui/presentation/icons"
|
2020-03-29 05:34:17 +02:00
|
|
|
"github.com/jesseduffield/lazygit/pkg/theme"
|
2020-02-25 11:55:36 +02:00
|
|
|
)
|
|
|
|
|
2020-09-29 10:41:06 +02:00
|
|
|
func GetRemoteBranchListDisplayStrings(branches []*models.RemoteBranch, diffName string) [][]string {
|
2022-03-19 10:12:58 +02:00
|
|
|
return slices.Map(branches, func(branch *models.RemoteBranch) []string {
|
|
|
|
diffed := branch.FullName() == diffName
|
|
|
|
return getRemoteBranchDisplayStrings(branch, diffed)
|
|
|
|
})
|
2020-02-25 11:55:36 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
// getRemoteBranchDisplayStrings returns the display string of branch
|
2020-09-29 10:41:06 +02:00
|
|
|
func getRemoteBranchDisplayStrings(b *models.RemoteBranch, diffed bool) []string {
|
2021-08-01 08:02:49 +02:00
|
|
|
textStyle := GetBranchTextStyle(b.Name)
|
2020-03-29 05:34:17 +02:00
|
|
|
if diffed {
|
2021-08-01 08:02:49 +02:00
|
|
|
textStyle = theme.DiffTerminalColor
|
2020-03-29 05:34:17 +02:00
|
|
|
}
|
|
|
|
|
2022-04-23 03:57:51 +02:00
|
|
|
res := make([]string, 0, 2)
|
|
|
|
if icons.IsIconEnabled() {
|
|
|
|
res = append(res, textStyle.Sprint(icons.IconForRemoteBranch(b)))
|
|
|
|
}
|
|
|
|
res = append(res, textStyle.Sprint(b.Name))
|
|
|
|
return res
|
2020-02-25 11:55:36 +02:00
|
|
|
}
|