1
0
mirror of https://github.com/jesseduffield/lazygit.git synced 2025-02-11 13:53:25 +02:00
lazygit/pkg/utils/search.go
2023-07-03 12:54:13 +10:00

30 lines
496 B
Go

package utils
import (
"sort"
"strings"
"github.com/jesseduffield/generics/slices"
"github.com/sahilm/fuzzy"
)
func FuzzySearch(needle string, haystack []string) []string {
if needle == "" {
return []string{}
}
matches := fuzzy.Find(needle, haystack)
sort.Sort(matches)
return slices.Map(matches, func(match fuzzy.Match) string {
return match.Str
})
}
func CaseInsensitiveContains(a, b string) bool {
return strings.Contains(
strings.ToLower(a),
strings.ToLower(b),
)
}