1
0
mirror of https://github.com/jesseduffield/lazygit.git synced 2024-12-14 11:23:09 +02:00
lazygit/pkg/gui/presentation/remotes.go

34 lines
1015 B
Go
Raw Normal View History

2020-02-25 11:55:36 +02:00
package presentation
import (
"github.com/jesseduffield/lazygit/pkg/commands/models"
2022-04-23 04:42:24 +02:00
"github.com/jesseduffield/lazygit/pkg/gui/presentation/icons"
"github.com/jesseduffield/lazygit/pkg/gui/style"
"github.com/jesseduffield/lazygit/pkg/theme"
"github.com/samber/lo"
2020-02-25 11:55:36 +02:00
)
2020-09-29 10:41:06 +02:00
func GetRemoteListDisplayStrings(remotes []*models.Remote, diffName string) [][]string {
return lo.Map(remotes, func(remote *models.Remote, _ int) []string {
2022-03-19 10:12:58 +02:00
diffed := remote.Name == diffName
return getRemoteDisplayStrings(remote, diffed)
})
2020-02-25 11:55:36 +02:00
}
// getRemoteDisplayStrings returns the display string of branch
2020-09-29 10:41:06 +02:00
func getRemoteDisplayStrings(r *models.Remote, diffed bool) []string {
2020-03-27 13:53:50 +02:00
branchCount := len(r.Branches)
2021-08-01 08:02:49 +02:00
textStyle := theme.DefaultTextColor
if diffed {
2021-08-01 08:02:49 +02:00
textStyle = theme.DiffTerminalColor
}
2022-04-23 04:42:24 +02:00
res := make([]string, 0, 3)
if icons.IsIconEnabled() {
res = append(res, textStyle.Sprint(icons.IconForRemote(r)))
}
res = append(res, textStyle.Sprint(r.Name), style.FgBlue.Sprintf("%d branches", branchCount))
return res
2020-02-25 11:55:36 +02:00
}