]> git.giacomolli.uk - onechat/blobdiff - whatsapp_find.go
Separate commands from the entry point
[onechat] / whatsapp_find.go
index 545e01c9d63e8127d2a6dbc2f7496a654ad70f57..9e3cbf8d9c75c6f4c4d8cd07dc87406eedd20cdd 100644 (file)
@@ -61,6 +61,7 @@ func whatsappFind(ctx context.Context, link WhatsAppLink, groups *WhatsAppGroups
        }
 
        var matches []WhatsAppMatch
+
        for jid, contact := range contacts {
                names := []string{contact.FullName, contact.FirstName, contact.BusinessName, contact.PushName}
                shown := slices.IndexFunc(names, func(name string) bool {
@@ -111,14 +112,15 @@ func whatsappFold(text string) string {
        return strings.ToLower(strings.TrimSpace(folded))
 }
 
-// whatsappFindAnswer returns the answer of whatsappFind for name with matches. Without
-// groups, the answer says that it has no groups.
+// whatsappFindAnswer returns the answer of whatsappFind for name with matches.
+// Without groups, the answer says that it has no groups.
 func whatsappFindAnswer(name string, matches []WhatsAppMatch, groups bool) string {
        slices.SortFunc(matches, func(a, b WhatsAppMatch) int {
                return cmp.Or(strings.Compare(whatsappFold(a.name), whatsappFold(b.name)), strings.Compare(a.id, b.id))
        })
 
        var lines []string
+
        for _, match := range matches[:min(len(matches), whatsappFindMatches)] {
                lines = append(lines, match.id+" | "+match.name+" | "+match.kind)
        }