Documentation
¶
Index ¶
- func NewExecutableSchema(cfg Config) graphql.ExecutableSchema
- type ChatResolver
- type CommentResolver
- type ComplexityRoot
- type Config
- type DirectiveRoot
- type MessageResolver
- type MutationResolver
- type NewChatResolver
- type NewCommentResolver
- type NewMessageResolver
- type NewPostResolver
- type PostResolver
- type QueryResolver
- type Resolver
- func (r *Resolver) Chat() ChatResolver
- func (r *Resolver) Comment() CommentResolver
- func (r *Resolver) Message() MessageResolver
- func (r *Resolver) Mutation() MutationResolver
- func (r *Resolver) NewChat() NewChatResolver
- func (r *Resolver) NewComment() NewCommentResolver
- func (r *Resolver) NewMessage() NewMessageResolver
- func (r *Resolver) NewPost() NewPostResolver
- func (r *Resolver) Post() PostResolver
- func (r *Resolver) Query() QueryResolver
- func (r *Resolver) User() UserResolver
- type ResolverRoot
- type UserResolver
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 ChatResolver ¶
type ChatResolver interface { ID(ctx context.Context, obj *models.Chat) (string, error) Messages(ctx context.Context, obj *models.Chat) ([]*models.Message, error) Participants(ctx context.Context, obj *models.Chat) ([]*models.User, error) CreatedAt(ctx context.Context, obj *models.Chat) (string, error) UpdatedAt(ctx context.Context, obj *models.Chat) (*string, error) DeletedAt(ctx context.Context, obj *models.Chat) (*string, error) }
type CommentResolver ¶
type CommentResolver interface { ID(ctx context.Context, obj *models.Comment) (string, error) UserID(ctx context.Context, obj *models.Comment) (string, error) PostID(ctx context.Context, obj *models.Comment) (string, error) CreatedAt(ctx context.Context, obj *models.Comment) (string, error) UpdatedAt(ctx context.Context, obj *models.Comment) (*string, error) DeletedAt(ctx context.Context, obj *models.Comment) (*string, error) }
type ComplexityRoot ¶
type ComplexityRoot struct { Chat struct { CreatedAt func(childComplexity int) int DeletedAt func(childComplexity int) int ID func(childComplexity int) int Messages func(childComplexity int) int Participants func(childComplexity int) int UpdatedAt func(childComplexity int) int } Comment struct { Content func(childComplexity int) int CreatedAt func(childComplexity int) int DeletedAt func(childComplexity int) int ID func(childComplexity int) int PostID func(childComplexity int) int UpdatedAt func(childComplexity int) int UserID func(childComplexity int) int } Deletion struct { ID func(childComplexity int) int Msg func(childComplexity int) int } Message struct { ChatID func(childComplexity int) int Content func(childComplexity int) int CreatedAt func(childComplexity int) int DeletedAt func(childComplexity int) int ID func(childComplexity int) int UpdatedAt func(childComplexity int) int UserID func(childComplexity int) int } Mutation struct { AddUsersToChat func(childComplexity int, chatID string, userIds []string) int CreateChat func(childComplexity int, input model.NewChat) int CreateComment func(childComplexity int, input model.NewComment) int CreateMessage func(childComplexity int, input model.NewMessage) int CreatePost func(childComplexity int, input model.NewPost) int CreateRedisRecord func(childComplexity int, input model.NewRedisRecord) int CreateUser func(childComplexity int, input model.NewUser) int DeleteChat func(childComplexity int, id string) int DeleteComment func(childComplexity int, id string) int DeleteMessage func(childComplexity int, id string) int DeletePost func(childComplexity int, id string) int DeleteUser func(childComplexity int, id string) int UpdateComment func(childComplexity int, id string, input model.UpdateComment) int UpdateMessage func(childComplexity int, id string, input model.UpdateMessage) int UpdatePost func(childComplexity int, id string, input model.UpdatePost) int UpdateRedisRecord func(childComplexity int, key string, value string) int UpdateUser func(childComplexity int, id string, input model.UpdateUser) int } Post struct { Comments func(childComplexity int) int Content func(childComplexity int) int CreatedAt func(childComplexity int) int DeletedAt func(childComplexity int) int ID func(childComplexity int) int Title func(childComplexity int) int UpdatedAt func(childComplexity int) int UserID func(childComplexity int) int } Query struct { Chat func(childComplexity int, id string) int Chats func(childComplexity int) int Comment func(childComplexity int, id string) int Comments func(childComplexity int) int CommentsByPost func(childComplexity int, postID string) int CommentsByUser func(childComplexity int, userID string) int Message func(childComplexity int, id string) int Messages func(childComplexity int) int MessagesByChat func(childComplexity int, chatID string) int MessagesByChatAndUser func(childComplexity int, chatID string, userID string) int MessagesByUser func(childComplexity int, userID string) int Post func(childComplexity int, id string) int Posts func(childComplexity int) int PostsByUser func(childComplexity int, userID string) int RedisRecord func(childComplexity int, key string) int User func(childComplexity int, id string) int UserByEmail func(childComplexity int, email string) int Users func(childComplexity int) int } RedisRecord struct { Key func(childComplexity int) int Value func(childComplexity int) int } User struct { Chats func(childComplexity int) int Comments func(childComplexity int) int CreatedAt func(childComplexity int) int DeletedAt func(childComplexity int) int Email func(childComplexity int) int ID func(childComplexity int) int Messages func(childComplexity int) int Name func(childComplexity int) int Posts func(childComplexity int) int UpdatedAt func(childComplexity int) int } }
type Config ¶
type Config struct { Resolvers ResolverRoot Directives DirectiveRoot Complexity ComplexityRoot }
type DirectiveRoot ¶
type DirectiveRoot struct { }
type MessageResolver ¶
type MessageResolver interface { ID(ctx context.Context, obj *models.Message) (string, error) UserID(ctx context.Context, obj *models.Message) (string, error) ChatID(ctx context.Context, obj *models.Message) (string, error) CreatedAt(ctx context.Context, obj *models.Message) (string, error) UpdatedAt(ctx context.Context, obj *models.Message) (*string, error) DeletedAt(ctx context.Context, obj *models.Message) (*string, error) }
type MutationResolver ¶
type MutationResolver interface { CreateUser(ctx context.Context, input model.NewUser) (*models.User, error) CreatePost(ctx context.Context, input model.NewPost) (*models.Post, error) CreateComment(ctx context.Context, input model.NewComment) (*models.Comment, error) CreateMessage(ctx context.Context, input model.NewMessage) (*models.Message, error) CreateChat(ctx context.Context, input model.NewChat) (*models.Chat, error) CreateRedisRecord(ctx context.Context, input model.NewRedisRecord) (*models.RedisRecord, error) UpdateUser(ctx context.Context, id string, input model.UpdateUser) (*models.User, error) UpdatePost(ctx context.Context, id string, input model.UpdatePost) (*models.Post, error) UpdateComment(ctx context.Context, id string, input model.UpdateComment) (*models.Comment, error) UpdateMessage(ctx context.Context, id string, input model.UpdateMessage) (*models.Message, error) UpdateRedisRecord(ctx context.Context, key string, value string) (*models.RedisRecord, error) AddUsersToChat(ctx context.Context, chatID string, userIds []string) (*models.Chat, error) DeleteUser(ctx context.Context, id string) (*model.Deletion, error) DeletePost(ctx context.Context, id string) (*model.Deletion, error) DeleteComment(ctx context.Context, id string) (*model.Deletion, error) DeleteMessage(ctx context.Context, id string) (*model.Deletion, error) DeleteChat(ctx context.Context, id string) (*model.Deletion, error) }
type NewChatResolver ¶
type NewCommentResolver ¶
type NewMessageResolver ¶
type NewPostResolver ¶
type PostResolver ¶
type PostResolver interface { ID(ctx context.Context, obj *models.Post) (string, error) Comments(ctx context.Context, obj *models.Post) ([]*models.Comment, error) UserID(ctx context.Context, obj *models.Post) (string, error) CreatedAt(ctx context.Context, obj *models.Post) (string, error) UpdatedAt(ctx context.Context, obj *models.Post) (*string, error) DeletedAt(ctx context.Context, obj *models.Post) (*string, error) }
type QueryResolver ¶
type QueryResolver interface { Users(ctx context.Context) ([]*models.User, error) User(ctx context.Context, id string) (*models.User, error) UserByEmail(ctx context.Context, email string) (*models.User, error) Posts(ctx context.Context) ([]*models.Post, error) Post(ctx context.Context, id string) (*models.Post, error) PostsByUser(ctx context.Context, userID string) ([]*models.Post, error) Comments(ctx context.Context) ([]*models.Comment, error) Comment(ctx context.Context, id string) (*models.Comment, error) CommentsByUser(ctx context.Context, userID string) ([]*models.Comment, error) CommentsByPost(ctx context.Context, postID string) ([]*models.Comment, error) Messages(ctx context.Context) ([]*models.Message, error) Message(ctx context.Context, id string) (*models.Message, error) MessagesByUser(ctx context.Context, userID string) ([]*models.Message, error) MessagesByChat(ctx context.Context, chatID string) ([]*models.Message, error) MessagesByChatAndUser(ctx context.Context, chatID string, userID string) ([]*models.Message, error) Chats(ctx context.Context) ([]*models.Chat, error) Chat(ctx context.Context, id string) (*models.Chat, error) RedisRecord(ctx context.Context, key string) (*models.RedisRecord, error) }
type Resolver ¶
type Resolver struct { }
func (*Resolver) Chat ¶
func (r *Resolver) Chat() ChatResolver
Chat returns ChatResolver implementation.
func (*Resolver) Comment ¶
func (r *Resolver) Comment() CommentResolver
Comment returns CommentResolver implementation.
func (*Resolver) Message ¶
func (r *Resolver) Message() MessageResolver
Message returns MessageResolver implementation.
func (*Resolver) Mutation ¶
func (r *Resolver) Mutation() MutationResolver
Mutation returns MutationResolver implementation.
func (*Resolver) NewChat ¶
func (r *Resolver) NewChat() NewChatResolver
NewChat returns NewChatResolver implementation.
func (*Resolver) NewComment ¶
func (r *Resolver) NewComment() NewCommentResolver
NewComment returns NewCommentResolver implementation.
func (*Resolver) NewMessage ¶
func (r *Resolver) NewMessage() NewMessageResolver
NewMessage returns NewMessageResolver implementation.
func (*Resolver) NewPost ¶
func (r *Resolver) NewPost() NewPostResolver
NewPost returns NewPostResolver implementation.
func (*Resolver) Post ¶
func (r *Resolver) Post() PostResolver
Post returns PostResolver implementation.
func (*Resolver) Query ¶
func (r *Resolver) Query() QueryResolver
Query returns QueryResolver implementation.
func (*Resolver) User ¶
func (r *Resolver) User() UserResolver
User returns UserResolver implementation.
type ResolverRoot ¶
type ResolverRoot interface { Chat() ChatResolver Comment() CommentResolver Message() MessageResolver Mutation() MutationResolver Post() PostResolver Query() QueryResolver User() UserResolver NewChat() NewChatResolver NewComment() NewCommentResolver NewMessage() NewMessageResolver NewPost() NewPostResolver }
type UserResolver ¶
type UserResolver interface { ID(ctx context.Context, obj *models.User) (string, error) Posts(ctx context.Context, obj *models.User) ([]*models.Post, error) Messages(ctx context.Context, obj *models.User) ([]*models.Message, error) Comments(ctx context.Context, obj *models.User) ([]*models.Comment, error) Chats(ctx context.Context, obj *models.User) ([]*models.Chat, error) CreatedAt(ctx context.Context, obj *models.User) (string, error) UpdatedAt(ctx context.Context, obj *models.User) (*string, error) DeletedAt(ctx context.Context, obj *models.User) (*string, error) }
Click to show internal directories.
Click to hide internal directories.