diff options
author | Michael Muré <batolettre@gmail.com> | 2019-06-23 21:36:42 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-06-23 21:36:42 +0200 |
commit | 54e95cf36f4e50d4175f78410f3dc504a7e34179 (patch) | |
tree | 356011d5d539d259a696fe00fe6edb174b7ec268 /graphql/resolvers/label.go | |
parent | 5bae915b53ed2bb4f222db2fdc73852099b96fd2 (diff) | |
parent | 17cbe457d2d782bee914680b38fa101c9327b811 (diff) | |
download | git-bug-54e95cf36f4e50d4175f78410f3dc504a7e34179.tar.gz |
Merge pull request #171 from MichaelMure/graphql-mutation-relay
Graphql mutation relay
Diffstat (limited to 'graphql/resolvers/label.go')
-rw-r--r-- | graphql/resolvers/label.go | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/graphql/resolvers/label.go b/graphql/resolvers/label.go index 7619f748..690bf7f6 100644 --- a/graphql/resolvers/label.go +++ b/graphql/resolvers/label.go @@ -2,10 +2,12 @@ package resolvers import ( "context" + "fmt" "image/color" "github.com/MichaelMure/git-bug/bug" "github.com/MichaelMure/git-bug/graphql/graph" + "github.com/MichaelMure/git-bug/graphql/models" ) var _ graph.LabelResolver = &labelResolver{} @@ -20,3 +22,24 @@ func (labelResolver) Color(ctx context.Context, obj *bug.Label) (*color.RGBA, er rgba := obj.RGBA() return &rgba, nil } + +var _ graph.LabelChangeResultResolver = &labelChangeResultResolver{} + +type labelChangeResultResolver struct{} + +func (labelChangeResultResolver) Status(ctx context.Context, obj *bug.LabelChangeResult) (models.LabelChangeStatus, error) { + switch obj.Status { + case bug.LabelChangeAdded: + return models.LabelChangeStatusAdded, nil + case bug.LabelChangeRemoved: + return models.LabelChangeStatusRemoved, nil + case bug.LabelChangeDuplicateInOp: + return models.LabelChangeStatusDuplicateInOp, nil + case bug.LabelChangeAlreadySet: + return models.LabelChangeStatusAlreadyExist, nil + case bug.LabelChangeDoesntExist: + return models.LabelChangeStatusDoesntExist, nil + } + + return "", fmt.Errorf("unknown status") +} |