diff --git a/widgets/common.go b/widgets/common.go new file mode 100644 index 0000000..e1cee05 --- /dev/null +++ b/widgets/common.go @@ -0,0 +1,20 @@ +package widgets + +import ( + "fmt" + + "git.sr.ht/~sircmpwn/aerc/lib" + "git.sr.ht/~sircmpwn/aerc/models" +) + +func msgInfoFromUids(store *lib.MessageStore, uids []uint32) ([]*models.MessageInfo, error) { + infos := make([]*models.MessageInfo, len(uids)) + for i, uid := range uids { + var ok bool + infos[i], ok = store.Messages[uid] + if !ok { + return nil, fmt.Errorf("uid not found") + } + } + return infos, nil +}