git-bug/api/graphql/schema/bug.graphql
Michael Muré 2ab6381a94
Reorganize the webUI and API code
Included in the changes:
- create a new /api root package to hold all API code, migrate /graphql in there
- git API handlers all use the cache instead of the repo directly
- git API handlers are now tested
- git API handlers now require a "repo" mux parameter
- lots of untangling of API/handlers/middleware
- less code in commands/webui.go
2020-06-27 23:03:05 +02:00

119 lines
3.2 KiB
GraphQL

"""Represents a comment on a bug."""
type Comment implements Authored {
"""The author of this comment."""
author: Identity!
"""The message of this comment."""
message: String!
"""All media's hash referenced in this comment"""
files: [Hash!]!
}
type CommentConnection {
edges: [CommentEdge!]!
nodes: [Comment!]!
pageInfo: PageInfo!
totalCount: Int!
}
type CommentEdge {
cursor: String!
node: Comment!
}
enum Status {
OPEN
CLOSED
}
type Bug implements Authored {
"""The identifier for this bug"""
id: String!
"""The human version (truncated) identifier for this bug"""
humanId: String!
status: Status!
title: String!
labels: [Label!]!
author: Identity!
createdAt: Time!
lastEdit: Time!
"""The actors of the bug. Actors are Identity that have interacted with the bug."""
actors(
"""Returns the elements in the list that come after the specified cursor."""
after: String
"""Returns the elements in the list that come before the specified cursor."""
before: String
"""Returns the first _n_ elements from the list."""
first: Int
"""Returns the last _n_ elements from the list."""
last: Int
): IdentityConnection!
"""The participants of the bug. Participants are Identity that have created or
added a comment on the bug."""
participants(
"""Returns the elements in the list that come after the specified cursor."""
after: String
"""Returns the elements in the list that come before the specified cursor."""
before: String
"""Returns the first _n_ elements from the list."""
first: Int
"""Returns the last _n_ elements from the list."""
last: Int
): IdentityConnection!
comments(
"""Returns the elements in the list that come after the specified cursor."""
after: String
"""Returns the elements in the list that come before the specified cursor."""
before: String
"""Returns the first _n_ elements from the list."""
first: Int
"""Returns the last _n_ elements from the list."""
last: Int
): CommentConnection!
timeline(
"""Returns the elements in the list that come after the specified cursor."""
after: String
"""Returns the elements in the list that come before the specified cursor."""
before: String
"""Returns the first _n_ elements from the list."""
first: Int
"""Returns the last _n_ elements from the list."""
last: Int
): TimelineItemConnection!
operations(
"""Returns the elements in the list that come after the specified cursor."""
after: String
"""Returns the elements in the list that come before the specified cursor."""
before: String
"""Returns the first _n_ elements from the list."""
first: Int
"""Returns the last _n_ elements from the list."""
last: Int
): OperationConnection!
}
"""The connection type for Bug."""
type BugConnection {
"""A list of edges."""
edges: [BugEdge!]!
nodes: [Bug!]!
"""Information to aid in pagination."""
pageInfo: PageInfo!
"""Identifies the total count of items in the connection."""
totalCount: Int!
}
"""An edge in a connection."""
type BugEdge {
"""A cursor for use in pagination."""
cursor: String!
"""The item at the end of the edge."""
node: Bug!
}