adding in resolvers and todos store
This commit is contained in:
+28
-1
@@ -1,7 +1,34 @@
|
|||||||
package graph
|
package graph
|
||||||
|
|
||||||
|
import "github.com/talksik/graphql-golang/graph/model"
|
||||||
|
|
||||||
// This file will not be regenerated automatically.
|
// This file will not be regenerated automatically.
|
||||||
//
|
//
|
||||||
// It serves as dependency injection for your app, add any dependencies you require here.
|
// It serves as dependency injection for your app, add any dependencies you require here.
|
||||||
|
|
||||||
type Resolver struct{}
|
|
||||||
|
var todos = []*model.Todo{
|
||||||
|
{
|
||||||
|
ID: "1",
|
||||||
|
Text: "laundry",
|
||||||
|
Done: false,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
ID: "2",
|
||||||
|
Text: "woah",
|
||||||
|
Done: false,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
ID: "3",
|
||||||
|
Text: "Hello",
|
||||||
|
Done: false,
|
||||||
|
User: &model.User{
|
||||||
|
ID: "1",
|
||||||
|
Name: "Talksik",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
type Resolver struct{
|
||||||
|
Todos []*model.Todo
|
||||||
|
}
|
||||||
|
|||||||
+10
-12
@@ -13,22 +13,20 @@ import (
|
|||||||
|
|
||||||
// CreateTodo is the resolver for the createTodo field.
|
// CreateTodo is the resolver for the createTodo field.
|
||||||
func (r *mutationResolver) CreateTodo(ctx context.Context, input model.NewTodo) (*model.Todo, error) {
|
func (r *mutationResolver) CreateTodo(ctx context.Context, input model.NewTodo) (*model.Todo, error) {
|
||||||
panic(fmt.Errorf("not implemented: CreateTodo - createTodo"))
|
newTodo := &model.Todo{
|
||||||
|
ID: fmt.Sprintf("T%d", len(r.Todos)+1),
|
||||||
|
Text: input.Text,
|
||||||
|
Done: false,
|
||||||
|
}
|
||||||
|
|
||||||
|
r.Resolver.Todos = append(r.Resolver.Todos, newTodo)
|
||||||
|
|
||||||
|
return newTodo, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// Todos is the resolver for the todos field.
|
// Todos is the resolver for the todos field.
|
||||||
func (r *queryResolver) Todos(ctx context.Context) ([]*model.Todo, error) {
|
func (r *queryResolver) Todos(ctx context.Context) ([]*model.Todo, error) {
|
||||||
return []*model.Todo{
|
return r.Resolver.Todos, nil
|
||||||
{
|
|
||||||
ID: "1",
|
|
||||||
Text: "Hello",
|
|
||||||
Done: false,
|
|
||||||
User: &model.User{
|
|
||||||
ID: "1",
|
|
||||||
Name: "Talksik",
|
|
||||||
},
|
|
||||||
},
|
|
||||||
}, nil
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Mutation returns MutationResolver implementation.
|
// Mutation returns MutationResolver implementation.
|
||||||
|
|||||||
Reference in New Issue
Block a user