Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewExecutableSchema ¶
func NewExecutableSchema(cfg Config) graphql.ExecutableSchema
NewExecutableSchema creates an ExecutableSchema from the ResolverRoot interface.
Types ¶
type ComplexityRoot ¶
type ComplexityRoot struct {
Attachment struct {
ContentType func(childComplexity int) int
Filename func(childComplexity int) int
ID func(childComplexity int) int
URL func(childComplexity int) int
}
EmailMessage struct {
AttachmentCount func(childComplexity int) int
Bcc func(childComplexity int) int
Body func(childComplexity int) int
Cc func(childComplexity int) int
Direction func(childComplexity int) int
From func(childComplexity int) int
FromName func(childComplexity int) int
ID func(childComplexity int) int
MailboxID func(childComplexity int) int
ReceivedAt func(childComplexity int) int
Subject func(childComplexity int) int
ThreadID func(childComplexity int) int
To func(childComplexity int) int
}
EmailResult struct {
EmailID func(childComplexity int) int
Error func(childComplexity int) int
Status func(childComplexity int) int
}
EmailThread struct {
ID func(childComplexity int) int
IsDone func(childComplexity int) int
IsViewed func(childComplexity int) int
LastMessageAt func(childComplexity int) int
LastSender func(childComplexity int) int
LastSenderDomain func(childComplexity int) int
MailboxID func(childComplexity int) int
Subject func(childComplexity int) int
Summary func(childComplexity int) int
UserID func(childComplexity int) int
}
EmailThreadConnection struct {
Edges func(childComplexity int) int
PageInfo func(childComplexity int) int
TotalCount func(childComplexity int) int
}
ImapConfig struct {
ImapPassword func(childComplexity int) int
ImapPort func(childComplexity int) int
ImapSecurity func(childComplexity int) int
ImapServer func(childComplexity int) int
ImapUsername func(childComplexity int) int
}
Mailbox struct {
ConnectionErrorMessage func(childComplexity int) int
ConnectionStatus func(childComplexity int) int
EmailAddress func(childComplexity int) int
ID func(childComplexity int) int
InboundEnabled func(childComplexity int) int
LastConnectionCheck func(childComplexity int) int
OutboundEnabled func(childComplexity int) int
Provider func(childComplexity int) int
ReplyToAddress func(childComplexity int) int
SenderID func(childComplexity int) int
}
Mutation struct {
AddMailbox func(childComplexity int, input graphql_model.MailboxInput) int
SendEmail func(childComplexity int, input graphql_model.EmailInput) int
UpdateMailbox func(childComplexity int, id string, input graphql_model.MailboxInput) int
}
PageInfo struct {
EndCursor func(childComplexity int) int
HasNextPage func(childComplexity int) int
HasPreviousPage func(childComplexity int) int
StartCursor func(childComplexity int) int
}
Query struct {
GetAllEmailsInThread func(childComplexity int, threadID string) int
GetAllThreads func(childComplexity int, userID string, pagination *graphql_model.PaginationInput) int
GetThreadMetadata func(childComplexity int, threadID string) int
}
SmtpConfig struct {
SMTPPassword func(childComplexity int) int
SMTPPort func(childComplexity int) int
SMTPSecurity func(childComplexity int) int
SMTPServer func(childComplexity int) int
SMTPUsername func(childComplexity int) int
}
ThreadMetadata struct {
Attachments func(childComplexity int) int
HasAttachments func(childComplexity int) int
ID func(childComplexity int) int
Participants func(childComplexity int) int
Summary func(childComplexity int) int
}
}
type Config ¶
type Config struct {
Schema *ast.Schema
Resolvers ResolverRoot
Directives DirectiveRoot
Complexity ComplexityRoot
}
type DirectiveRoot ¶
type DirectiveRoot struct {
}
type MutationResolver ¶ added in v0.1.3
type MutationResolver interface {
SendEmail(ctx context.Context, input graphql_model.EmailInput) (*graphql_model.EmailResult, error)
AddMailbox(ctx context.Context, input graphql_model.MailboxInput) (*graphql_model.Mailbox, error)
UpdateMailbox(ctx context.Context, id string, input graphql_model.MailboxInput) (*graphql_model.Mailbox, error)
}
type QueryResolver ¶
type QueryResolver interface {
GetAllEmailsInThread(ctx context.Context, threadID string) ([]*graphql_model.EmailMessage, error)
GetThreadMetadata(ctx context.Context, threadID string) (*graphql_model.ThreadMetadata, error)
GetAllThreads(ctx context.Context, userID string, pagination *graphql_model.PaginationInput) (*graphql_model.EmailThreadConnection, error)
}
type ResolverRoot ¶
type ResolverRoot interface {
Mutation() MutationResolver
Query() QueryResolver
}
Click to show internal directories.
Click to hide internal directories.