generated

package
v0.0.0-...-6e18e7f Latest Latest
Warning

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

Go to latest
Published: Jan 6, 2020 License: MIT Imports: 11 Imported by: 0

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 {
	Mutation struct {
		AddTodo func(childComplexity int, input NewTodo) int
		Signin  func(childComplexity int, email string, token string) int
		Signup  func(childComplexity int, email string, password string) int
	}

	Query struct {
		Todos func(childComplexity int, userID string) int
	}

	Todo struct {
		Done func(childComplexity int) int
		ID   func(childComplexity int) int
		Text func(childComplexity int) int
	}

	User struct {
		CreatedAt func(childComplexity int) int
		Email     func(childComplexity int) int
		ID        func(childComplexity int) int
		Name      func(childComplexity int) int
		Role      func(childComplexity int) int
		Todos     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 MutationResolver

type MutationResolver interface {
	Signup(ctx context.Context, email string, password string) (*User, error)
	Signin(ctx context.Context, email string, token string) (*User, error)
	AddTodo(ctx context.Context, input NewTodo) (bool, error)
}

type NewTodo

type NewTodo struct {
	Text   string `json:"text"`
	UserID string `json:"userId"`
}

type QueryResolver

type QueryResolver interface {
	Todos(ctx context.Context, userID string) ([]*Todo, error)
}

type ResolverRoot

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

type Todo

type Todo struct {
	ID   string `json:"id"`
	Text string `json:"text"`
	Done bool   `json:"done"`
}

type User

type User struct {
	ID        string     `json:"id"`
	Name      string     `json:"name"`
	CreatedAt time.Time  `json:"createdAt"`
	UpdatedAt *time.Time `json:"updatedAt"`
	Email     string     `json:"email"`
	Role      string     `json:"role"`
	Todos     []*Todo    `json:"todos"`
}

Jump to

Keyboard shortcuts

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