diff options
author | Michael Muré <batolettre@gmail.com> | 2018-12-23 17:55:41 +0100 |
---|---|---|
committer | Michael Muré <batolettre@gmail.com> | 2018-12-23 17:55:41 +0100 |
commit | 0d5bd6b18afde898e610746657a87080235f6222 (patch) | |
tree | be714ae264bcda3aff003c4e4080687e628aeec3 /graphql/schema.graphql | |
parent | 1410a1af75b1ab9ea3f980a7e372728f9a123abf (diff) | |
download | git-bug-0d5bd6b18afde898e610746657a87080235f6222.tar.gz |
graphql: now that it's possible, split the schema for clarity
Diffstat (limited to 'graphql/schema.graphql')
-rw-r--r-- | graphql/schema.graphql | 332 |
1 files changed, 0 insertions, 332 deletions
diff --git a/graphql/schema.graphql b/graphql/schema.graphql deleted file mode 100644 index fefe895b..00000000 --- a/graphql/schema.graphql +++ /dev/null @@ -1,332 +0,0 @@ -scalar Time -scalar Label -scalar Hash - -"""Information about pagination in a connection.""" -type PageInfo { - """When paginating forwards, are there more items?""" - hasNextPage: Boolean! - """When paginating backwards, are there more items?""" - hasPreviousPage: Boolean! - """When paginating backwards, the cursor to continue.""" - startCursor: String! - """When paginating forwards, the cursor to continue.""" - endCursor: String! -} - -"""Represents an person in a git object.""" -type Person { - """The name of the person, if known.""" - name: String - - """The email of the person, if known.""" - email: String - - """The login of the person, if known.""" - login: String - - """A string containing the either the name of the person, its login or both""" - displayName: String! - - """An url to an avatar""" - avatarUrl: String -} - -type CommentConnection { - edges: [CommentEdge!]! - nodes: [Comment!]! - pageInfo: PageInfo! - totalCount: Int! -} - -type CommentEdge { - cursor: String! - node: Comment! -} - -"""Represents a comment on a bug.""" -type Comment implements Authored { - """The author of this comment.""" - author: Person! - - """The message of this comment.""" - message: String! - - """All media's hash referenced in this comment""" - files: [Hash!]! -} - -enum Status { - OPEN - CLOSED -} - -"""An object that has an author.""" -interface Authored { - """The author of this object.""" - author: Person! -} - -type OperationConnection { - edges: [OperationEdge!]! - nodes: [Operation!]! - pageInfo: PageInfo! - totalCount: Int! -} - -type OperationEdge { - cursor: String! - node: Operation! -} - -"""An item in the timeline of events""" -interface TimelineItem { - """The hash of the source operation""" - hash: Hash! -} - -"""An operation applied to a bug.""" -interface Operation { - """The hash of the operation""" - hash: Hash! - """The operations author.""" - author: Person! - """The datetime when this operation was issued.""" - date: Time! -} - -type CreateOperation implements Operation & Authored { - """The hash of the operation""" - hash: Hash! - """The author of this object.""" - author: Person! - """The datetime when this operation was issued.""" - date: Time! - - title: String! - message: String! - files: [Hash!]! -} - -type SetTitleOperation implements Operation & Authored { - """The hash of the operation""" - hash: Hash! - """The author of this object.""" - author: Person! - """The datetime when this operation was issued.""" - date: Time! - - title: String! - was: String! -} - -type AddCommentOperation implements Operation & Authored { - """The hash of the operation""" - hash: Hash! - """The author of this object.""" - author: Person! - """The datetime when this operation was issued.""" - date: Time! - - message: String! - files: [Hash!]! -} - -type EditCommentOperation implements Operation & Authored { - """The hash of the operation""" - hash: Hash! - """The author of this object.""" - author: Person! - """The datetime when this operation was issued.""" - date: Time! - - target: Hash! - message: String! - files: [Hash!]! -} - -type SetStatusOperation implements Operation & Authored { - """The hash of the operation""" - hash: Hash! - """The author of this object.""" - author: Person! - """The datetime when this operation was issued.""" - date: Time! - - status: Status! -} - -type LabelChangeOperation implements Operation & Authored { - """The hash of the operation""" - hash: Hash! - """The author of this object.""" - author: Person! - """The datetime when this operation was issued.""" - date: Time! - - added: [Label!]! - removed: [Label!]! -} - -type TimelineItemConnection { - edges: [TimelineItemEdge!]! - nodes: [TimelineItem!]! - pageInfo: PageInfo! - totalCount: Int! -} - -type TimelineItemEdge { - cursor: String! - node: TimelineItem! -} - -type CommentHistoryStep { - message: String! - date: Time! -} - -type CreateTimelineItem implements TimelineItem { - """The hash of the source operation""" - hash: Hash! - author: Person! - message: String! - files: [Hash!]! - createdAt: Time! - lastEdit: Time! - edited: Boolean! - history: [CommentHistoryStep!]! -} - -type AddCommentTimelineItem implements TimelineItem { - """The hash of the source operation""" - hash: Hash! - author: Person! - message: String! - files: [Hash!]! - createdAt: Time! - lastEdit: Time! - edited: Boolean! - history: [CommentHistoryStep!]! -} - -type LabelChangeTimelineItem implements TimelineItem { - """The hash of the source operation""" - hash: Hash! - author: Person! - date: Time! - added: [Label!]! - removed: [Label!]! -} - -type SetStatusTimelineItem implements TimelineItem { - """The hash of the source operation""" - hash: Hash! - author: Person! - date: Time! - status: Status! -} - -type SetTitleTimelineItem implements TimelineItem { - """The hash of the source operation""" - hash: Hash! - author: Person! - date: Time! - title: String! - was: String! -} - -"""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! -} - -type Bug { - id: String! - humanId: String! - status: Status! - title: String! - labels: [Label!]! - author: Person! - createdAt: Time! - lastEdit: Time! - - 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! -} - -type Repository { - allBugs( - """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 - """A query to select and order bugs""" - query: String - ): BugConnection! - bug(prefix: String!): Bug -} - -type Query { - defaultRepository: Repository - repository(id: String!): Repository -} - -type Mutation { - newBug(repoRef: String, title: String!, message: String!, files: [Hash!]): Bug! - - addComment(repoRef: String, prefix: String!, message: String!, files: [Hash!]): Bug! - changeLabels(repoRef: String, prefix: String!, added: [String!], removed: [String!]): Bug! - open(repoRef: String, prefix: String!): Bug! - close(repoRef: String, prefix: String!): Bug! - setTitle(repoRef: String, prefix: String!, title: String!): Bug! - - commit(repoRef: String, prefix: String!): Bug! -} |