> be fist commit

This commit is contained in:
2020-04-13 23:38:41 +02:00
commit 4cce632708
69 changed files with 7852 additions and 0 deletions
+37
View File
@@ -0,0 +1,37 @@
type Issue {
id: String!
projectId: String!
ownerId: String!
assigneeId: String!
statusStage: Int!
statusName: String!
createdTime: Time!
updatedTime: Time!
dueTime: Time
name: String!
title: String!
description: String!
project: Project
owner: User
assignee: User
}
input IssueFilter {
"Filter by issue IDs (mostly used internally by data loaders)"
issueIds: [String!]
"Filter by project IDs"
projectIds: [String!]
"Filter by owner IDs"
ownerIds: [String!]
"Filter by assignee IDs"
assigneeIds: [String!]
"Text search"
search: String
"Earliest stage (inclusive)"
minStage: Int
"Latest stage (inclusive)"
maxStage: Int
"Limit the result set"
limit: Int
}
+4
View File
@@ -0,0 +1,4 @@
type Mutation {
loginUser(input: UserLoginInput): User!
logoutUser: User!
}
+70
View File
@@ -0,0 +1,70 @@
type Project {
"The ID of the project, which is also the prefix for all its issues."
id: String!
"The name of the project, used in place of the ID in the UI."
name: String!
"Description of the project."
description: String!
"The amount of points given as a bonus towards goals for any activity on a given day."
dailyPoints: Int!
"Get issues within the project."
issues(filter: ProjectIssueFilter): [Issue!]!
"All users' permissions. Only available to administrators and up."
permissions: [ProjectPermissions!]!
"Own permissions to the project. Available to any logged in user."
userPermissions: ProjectPermissions!
}
"The permissions of a user within the project."
type ProjectPermissions {
"User ID."
userId: String!
"Access level."
accessLevel: Int!
"The user whose permissions it is. Can be null if the user no longer exists."
user: User
}
type ProjectStatus {
"The stage of the status. 0=inactive, 1=pending, 2=active, 3=review, 4=completed, 5=failed, 6=postponed"
stage: Int!
"The name of the status."
name: String!
"A description of the status and where it's used."
description: String!
}
"Filter for projects query"
input ProjectFilter {
"Project IDs"
projectIds: [String!]
"Text search"
search: String
"User permission"
permission: ProjectFilterPermission
}
input ProjectFilterPermission {
"User ID"
userId: String!
"Lowest access level to filter by (inclusive)"
minLevel: Int!
"Highest access level to filter by (inclusive)"
maxLevel: Int!
}
"A limited filter for constraining the list of issues within a project."
input ProjectIssueFilter {
"Filter by assignee IDs"
assigneeIds: [String!]
"Text search"
search: String
"Earliest stage (inclusive)"
minStage: Int
"Latest stage (inclusive)"
maxStage: Int
"Limit the result set"
limit: Int
}
+14
View File
@@ -0,0 +1,14 @@
type Query {
"Find issue"
issue(id: String!): Issue!
"List issues"
issues(filter: IssueFilter): [Issue!]!
"Find project"
project(id: String!): Project!
"List projects"
projects(filter: ProjectFilter): [Project!]!
"Session checks the user session."
session: User
}
+1
View File
@@ -0,0 +1 @@
scalar Time
+18
View File
@@ -0,0 +1,18 @@
"User information."
type User {
"User ID, used when logging in."
id: String!
"User's display name, which can differ from the user ID."
name: String!
"Whether the user is active."
active: Boolean!
"Whether the user has general administrator privileges. This does not grant admin rights on any project."
admin: Boolean!
}
"Input for loginUser."
input UserLoginInput {
userId: String!
password: String!
rememberMe: Boolean!
}