issue_reminder_bot

package module
v0.0.0-...-6ac6fdd Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 4, 2019 License: MIT Imports: 11 Imported by: 0

README

issue-reminder-bot

A bot that reminds you to work on your issues

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 AssignIssue

type AssignIssue struct {
	IssueID string `json:"issueId"`
	UserID  string `json:"userId"`
}

type ComplexityRoot

type ComplexityRoot struct {
	Issue struct {
		Assignee    func(childComplexity int) int
		Description func(childComplexity int) int
		ID          func(childComplexity int) int
	}

	MatterMostIntegration struct {
		Driver        func(childComplexity int) int
		Name          func(childComplexity int) int
		ServerAddress func(childComplexity int) int
	}

	Mutation struct {
		AssignIssue   func(childComplexity int, input AssignIssue) int
		CreateIssues  func(childComplexity int, input NewIssue) int
		CreateUser    func(childComplexity int, input NewUser) int
		UnassignIssue func(childComplexity int, input string) int
		UpdateIssue   func(childComplexity int, input *EditIssue) int
	}

	Query struct {
		Config func(childComplexity int) int
		Issues func(childComplexity int) int
		Users  func(childComplexity int) int
	}

	ServerConfig struct {
		Integrations func(childComplexity int) int
	}

	User struct {
		Email    func(childComplexity int) int
		ID       func(childComplexity int) int
		Issues   func(childComplexity int) int
		Name     func(childComplexity int) int
		Username func(childComplexity int) int
	}
}

type Config

type Config struct {
	Resolvers  ResolverRoot
	Directives DirectiveRoot
	Complexity ComplexityRoot
}

type DirectiveRoot

type DirectiveRoot struct {
}

type EditIssue

type EditIssue struct {
	IssueID     string `json:"issueId"`
	Description string `json:"description"`
}

type Integration

type Integration interface {
	IsIntegration()
}

type Issue

type Issue struct {
	ID          string `json:"id"`
	Description string `json:"description"`
	Assignee    *User  `json:"assignee"`
}

type MatterMostIntegration

type MatterMostIntegration struct {
	Driver        string `json:"driver"`
	ServerAddress string `json:"serverAddress"`
	Name          string `json:"name"`
}

func (MatterMostIntegration) IsIntegration

func (MatterMostIntegration) IsIntegration()

type MutationResolver

type MutationResolver interface {
	CreateIssues(ctx context.Context, input NewIssue) (*Issue, error)
	CreateUser(ctx context.Context, input NewUser) (*User, error)
	AssignIssue(ctx context.Context, input AssignIssue) (*Issue, error)
	UnassignIssue(ctx context.Context, input string) (*Issue, error)
	UpdateIssue(ctx context.Context, input *EditIssue) (*Issue, error)
}

type NewIssue

type NewIssue struct {
	Description string  `json:"description"`
	UserID      *string `json:"userId"`
}

type NewUser

type NewUser struct {
	Name     string  `json:"name"`
	Email    *string `json:"email"`
	Username *string `json:"username"`
}

type QueryResolver

type QueryResolver interface {
	Issues(ctx context.Context) ([]*Issue, error)
	Users(ctx context.Context) ([]*User, error)
	Config(ctx context.Context) (*ServerConfig, error)
}

type Resolver

type Resolver struct {
	// contains filtered or unexported fields
}

func NewResolver

func NewResolver() *Resolver

func (*Resolver) Mutation

func (r *Resolver) Mutation() MutationResolver

func (*Resolver) Query

func (r *Resolver) Query() QueryResolver

type ResolverRoot

type ResolverRoot interface {
	Mutation() MutationResolver
	Query() QueryResolver
}

type ServerConfig

type ServerConfig struct {
	Integrations []Integration `json:"integrations"`
}

type User

type User struct {
	ID       string   `json:"id"`
	Name     string   `json:"name"`
	Email    *string  `json:"email"`
	Username *string  `json:"username"`
	Issues   []*Issue `json:"issues"`
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL