aboutsummaryrefslogtreecommitdiff
path: root/worker/types/messages.go
diff options
context:
space:
mode:
authorBen Burwell <ben@benburwell.com>2019-07-07 22:43:56 -0400
committerDrew DeVault <sir@cmpwn.com>2019-07-08 16:06:23 -0400
commitcce7cb48081ca090ac2d3a0e781dfbc25d581946 (patch)
tree0709eff3daf75ac975bc9e12f068d7951aeaefe6 /worker/types/messages.go
parentc79577d37675c8d9ed3355c532a215377e76d3b2 (diff)
Factor UI models out of the worker message package
Before, the information needed to display different parts of the UI was tightly coupled to the specific messages being sent back and forth to the backend worker. Separating out a models package allows us to be more specific about exactly what a backend is able to and required to provide for the UI.
Diffstat (limited to 'worker/types/messages.go')
-rw-r--r--worker/types/messages.go25
1 files changed, 6 insertions, 19 deletions
diff --git a/worker/types/messages.go b/worker/types/messages.go
index d9e911f..bb2505a 100644
--- a/worker/types/messages.go
+++ b/worker/types/messages.go
@@ -5,9 +5,9 @@ import (
"time"
"github.com/emersion/go-imap"
- "github.com/emersion/go-message/mail"
"git.sr.ht/~sircmpwn/aerc/config"
+ "git.sr.ht/~sircmpwn/aerc/models"
)
type WorkerMessage interface {
@@ -139,17 +139,12 @@ type AppendMessage struct {
type Directory struct {
Message
- Attributes []string
- Name string
+ Dir *models.Directory
}
type DirectoryInfo struct {
Message
- Flags []string
- Name string
- ReadOnly bool
-
- Exists, Recent, Unseen int
+ Info *models.DirectoryInfo
}
type DirectoryContents struct {
@@ -164,25 +159,17 @@ type SearchResults struct {
type MessageInfo struct {
Message
- BodyStructure *imap.BodyStructure
- Envelope *imap.Envelope
- Flags []string
- InternalDate time.Time
- RFC822Headers *mail.Header
- Size uint32
- Uid uint32
+ Info *models.MessageInfo
}
type FullMessage struct {
Message
- Reader io.Reader
- Uid uint32
+ Content *models.FullMessage
}
type MessageBodyPart struct {
Message
- Reader io.Reader
- Uid uint32
+ Part *models.MessageBodyPart
}
type MessagesDeleted struct {