2020-04-10 04:40:22 +02:00
|
|
|
scalar Time
|
|
|
|
scalar UUID
|
2020-06-13 00:21:58 +02:00
|
|
|
scalar Upload
|
2020-04-10 04:40:22 +02:00
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
enum RoleCode {
|
|
|
|
owner
|
|
|
|
admin
|
|
|
|
member
|
|
|
|
observer
|
|
|
|
}
|
|
|
|
|
2020-04-21 01:04:27 +02:00
|
|
|
type ProjectLabel {
|
2020-05-27 02:53:31 +02:00
|
|
|
id: ID!
|
2020-04-21 01:04:27 +02:00
|
|
|
createdDate: Time!
|
2020-05-27 23:18:50 +02:00
|
|
|
labelColor: LabelColor!
|
2020-04-21 01:04:27 +02:00
|
|
|
name: String
|
|
|
|
}
|
|
|
|
|
2020-05-27 23:18:50 +02:00
|
|
|
type LabelColor {
|
|
|
|
id: ID!
|
|
|
|
name: String!
|
|
|
|
position: Float!
|
|
|
|
colorHex: String!
|
|
|
|
}
|
|
|
|
|
2020-04-20 05:02:55 +02:00
|
|
|
type TaskLabel {
|
2020-05-27 02:53:31 +02:00
|
|
|
id: ID!
|
2020-05-31 06:11:19 +02:00
|
|
|
projectLabel: ProjectLabel!
|
2020-04-21 01:04:27 +02:00
|
|
|
assignedDate: Time!
|
2020-04-20 05:02:55 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
type ProfileIcon {
|
|
|
|
url: String
|
|
|
|
initials: String
|
2020-04-21 01:04:27 +02:00
|
|
|
bgColor: String
|
2020-04-20 05:02:55 +02:00
|
|
|
}
|
|
|
|
|
2020-07-12 09:06:11 +02:00
|
|
|
type OwnersList {
|
|
|
|
projects: [UUID!]!
|
|
|
|
teams: [UUID!]!
|
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
type Member {
|
2020-05-27 02:53:31 +02:00
|
|
|
id: ID!
|
2020-07-05 01:02:57 +02:00
|
|
|
role: Role!
|
2020-06-13 00:21:58 +02:00
|
|
|
fullName: String!
|
2020-07-05 01:02:57 +02:00
|
|
|
username: String!
|
2020-04-20 05:02:55 +02:00
|
|
|
profileIcon: ProfileIcon!
|
2020-07-18 02:40:05 +02:00
|
|
|
owned: OwnedList!
|
|
|
|
member: MemberList!
|
2020-04-20 05:02:55 +02:00
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
type Role {
|
|
|
|
code: String!
|
|
|
|
name: String!
|
|
|
|
}
|
|
|
|
|
2020-07-18 02:40:05 +02:00
|
|
|
type OwnedList {
|
|
|
|
teams: [Team!]!
|
|
|
|
projects: [Project!]!
|
|
|
|
}
|
|
|
|
|
|
|
|
type MemberList {
|
|
|
|
teams: [Team!]!
|
|
|
|
projects: [Project!]!
|
|
|
|
}
|
|
|
|
|
2020-04-10 04:40:22 +02:00
|
|
|
type UserAccount {
|
2020-05-27 02:53:31 +02:00
|
|
|
id: ID!
|
2020-04-10 04:40:22 +02:00
|
|
|
email: String!
|
|
|
|
createdAt: Time!
|
2020-06-13 00:21:58 +02:00
|
|
|
fullName: String!
|
|
|
|
initials: String!
|
2020-09-11 20:54:43 +02:00
|
|
|
bio: String!
|
2020-07-05 01:02:57 +02:00
|
|
|
role: Role!
|
2020-04-10 04:40:22 +02:00
|
|
|
username: String!
|
2020-04-20 05:02:55 +02:00
|
|
|
profileIcon: ProfileIcon!
|
2020-07-18 02:40:05 +02:00
|
|
|
owned: OwnedList!
|
|
|
|
member: MemberList!
|
2020-04-10 04:40:22 +02:00
|
|
|
}
|
|
|
|
|
2020-10-21 01:52:09 +02:00
|
|
|
type InvitedUserAccount {
|
|
|
|
id: ID!
|
|
|
|
email: String!
|
|
|
|
invitedOn: Time!
|
|
|
|
member: MemberList!
|
|
|
|
}
|
|
|
|
|
2020-04-10 04:40:22 +02:00
|
|
|
type Team {
|
2020-05-27 02:53:31 +02:00
|
|
|
id: ID!
|
2020-04-10 04:40:22 +02:00
|
|
|
createdAt: Time!
|
|
|
|
name: String!
|
2021-04-29 04:32:19 +02:00
|
|
|
permission: TeamPermission!
|
2020-07-05 01:02:57 +02:00
|
|
|
members: [Member!]!
|
2020-04-10 04:40:22 +02:00
|
|
|
}
|
|
|
|
|
2020-10-21 01:52:09 +02:00
|
|
|
|
|
|
|
type InvitedMember {
|
|
|
|
email: String!
|
|
|
|
invitedOn: Time!
|
|
|
|
}
|
|
|
|
|
2021-04-29 04:32:19 +02:00
|
|
|
type TeamPermission {
|
|
|
|
team: RoleCode!
|
|
|
|
org: RoleCode!
|
|
|
|
}
|
|
|
|
|
|
|
|
type ProjectPermission {
|
|
|
|
team: RoleCode!
|
|
|
|
project: RoleCode!
|
|
|
|
org: RoleCode!
|
|
|
|
}
|
|
|
|
|
2020-04-10 04:40:22 +02:00
|
|
|
type Project {
|
2020-05-27 02:53:31 +02:00
|
|
|
id: ID!
|
2020-04-10 04:40:22 +02:00
|
|
|
createdAt: Time!
|
|
|
|
name: String!
|
2020-09-20 03:20:36 +02:00
|
|
|
team: Team
|
2020-04-10 04:40:22 +02:00
|
|
|
taskGroups: [TaskGroup!]!
|
2020-07-05 01:02:57 +02:00
|
|
|
members: [Member!]!
|
2020-10-21 01:52:09 +02:00
|
|
|
invitedMembers: [InvitedMember!]!
|
2021-04-29 04:32:19 +02:00
|
|
|
permission: ProjectPermission!
|
2020-04-21 01:04:27 +02:00
|
|
|
labels: [ProjectLabel!]!
|
2020-04-10 04:40:22 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
type TaskGroup {
|
2020-05-27 02:53:31 +02:00
|
|
|
id: ID!
|
2020-04-10 04:40:22 +02:00
|
|
|
projectID: String!
|
|
|
|
createdAt: Time!
|
|
|
|
name: String!
|
|
|
|
position: Float!
|
|
|
|
tasks: [Task!]!
|
|
|
|
}
|
|
|
|
|
2020-06-19 01:12:15 +02:00
|
|
|
type ChecklistBadge {
|
|
|
|
complete: Int!
|
|
|
|
total: Int!
|
|
|
|
}
|
|
|
|
|
|
|
|
type TaskBadges {
|
|
|
|
checklist: ChecklistBadge
|
|
|
|
}
|
|
|
|
|
2020-12-19 03:34:35 +01:00
|
|
|
type CausedBy {
|
|
|
|
id: ID!
|
|
|
|
fullName: String!
|
|
|
|
profileIcon: ProfileIcon
|
|
|
|
}
|
|
|
|
|
|
|
|
type TaskActivityData {
|
|
|
|
name: String!
|
|
|
|
value: String!
|
|
|
|
}
|
|
|
|
|
|
|
|
enum ActivityType {
|
|
|
|
TASK_ADDED
|
|
|
|
TASK_MOVED
|
|
|
|
TASK_MARKED_COMPLETE
|
|
|
|
TASK_MARKED_INCOMPLETE
|
|
|
|
TASK_DUE_DATE_CHANGED
|
|
|
|
TASK_DUE_DATE_ADDED
|
|
|
|
TASK_DUE_DATE_REMOVED
|
|
|
|
TASK_CHECKLIST_CHANGED
|
|
|
|
TASK_CHECKLIST_ADDED
|
|
|
|
TASK_CHECKLIST_REMOVED
|
|
|
|
}
|
|
|
|
|
|
|
|
type TaskActivity {
|
|
|
|
id: ID!
|
|
|
|
type: ActivityType!
|
|
|
|
data: [TaskActivityData!]!
|
|
|
|
causedBy: CausedBy!
|
|
|
|
createdAt: Time!
|
|
|
|
}
|
|
|
|
|
2020-04-10 04:40:22 +02:00
|
|
|
type Task {
|
2020-05-27 02:53:31 +02:00
|
|
|
id: ID!
|
2020-04-11 04:22:22 +02:00
|
|
|
taskGroup: TaskGroup!
|
2020-04-10 04:40:22 +02:00
|
|
|
createdAt: Time!
|
|
|
|
name: String!
|
|
|
|
position: Float!
|
2020-04-20 05:02:55 +02:00
|
|
|
description: String
|
2020-06-16 00:36:59 +02:00
|
|
|
dueDate: Time
|
2021-01-01 21:51:40 +01:00
|
|
|
hasTime: Boolean!
|
2020-06-19 01:12:15 +02:00
|
|
|
complete: Boolean!
|
2020-08-28 01:57:23 +02:00
|
|
|
completedAt: Time
|
2020-07-05 01:02:57 +02:00
|
|
|
assigned: [Member!]!
|
2020-04-20 05:02:55 +02:00
|
|
|
labels: [TaskLabel!]!
|
2020-06-19 01:12:15 +02:00
|
|
|
checklists: [TaskChecklist!]!
|
|
|
|
badges: TaskBadges!
|
2020-12-19 03:34:35 +01:00
|
|
|
activity: [TaskActivity!]!
|
|
|
|
comments: [TaskComment!]!
|
|
|
|
}
|
|
|
|
|
|
|
|
type CreatedBy {
|
|
|
|
id: ID!
|
|
|
|
fullName: String!
|
|
|
|
profileIcon: ProfileIcon!
|
|
|
|
}
|
|
|
|
|
|
|
|
type TaskComment {
|
|
|
|
id: ID!
|
|
|
|
createdAt: Time!
|
|
|
|
updatedAt: Time
|
|
|
|
message: String!
|
|
|
|
createdBy: CreatedBy!
|
|
|
|
pinned: Boolean!
|
2020-04-10 04:40:22 +02:00
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
type Organization {
|
|
|
|
id: ID!
|
|
|
|
name: String!
|
2020-04-20 05:02:55 +02:00
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
type TaskChecklistItem {
|
2020-06-21 00:49:11 +02:00
|
|
|
id: ID!
|
|
|
|
name: String!
|
2020-07-05 01:02:57 +02:00
|
|
|
taskChecklistID: UUID!
|
|
|
|
complete: Boolean!
|
|
|
|
position: Float!
|
|
|
|
dueDate: Time!
|
2020-06-21 00:49:11 +02:00
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
type TaskChecklist {
|
|
|
|
id: ID!
|
|
|
|
name: String!
|
|
|
|
position: Float!
|
|
|
|
items: [TaskChecklistItem!]!
|
2020-06-23 22:20:53 +02:00
|
|
|
}
|
|
|
|
|
2020-10-21 01:52:09 +02:00
|
|
|
enum ShareStatus {
|
|
|
|
INVITED
|
|
|
|
JOINED
|
|
|
|
}
|
|
|
|
|
2020-08-01 03:01:14 +02:00
|
|
|
enum RoleLevel {
|
|
|
|
ADMIN
|
|
|
|
MEMBER
|
|
|
|
}
|
|
|
|
|
|
|
|
enum ActionLevel {
|
|
|
|
ORG
|
|
|
|
TEAM
|
|
|
|
PROJECT
|
|
|
|
}
|
|
|
|
|
|
|
|
enum ObjectType {
|
|
|
|
ORG
|
|
|
|
TEAM
|
|
|
|
PROJECT
|
|
|
|
TASK
|
2020-09-20 00:26:02 +02:00
|
|
|
TASK_GROUP
|
|
|
|
TASK_CHECKLIST
|
|
|
|
TASK_CHECKLIST_ITEM
|
2020-08-01 03:01:14 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
directive @hasRole(roles: [RoleLevel!]!, level: ActionLevel!, type: ObjectType!) on FIELD_DEFINITION
|
|
|
|
|
2020-04-10 04:40:22 +02:00
|
|
|
type Query {
|
2020-06-21 00:49:11 +02:00
|
|
|
organizations: [Organization!]!
|
2020-04-10 04:40:22 +02:00
|
|
|
users: [UserAccount!]!
|
2020-10-21 01:52:09 +02:00
|
|
|
invitedUsers: [InvitedUserAccount!]!
|
2020-04-10 04:40:22 +02:00
|
|
|
findUser(input: FindUser!): UserAccount!
|
2020-09-20 03:20:36 +02:00
|
|
|
findProject(input: FindProject!):
|
|
|
|
Project! @hasRole(roles: [ADMIN, MEMBER], level: PROJECT, type: PROJECT)
|
2020-04-20 05:02:55 +02:00
|
|
|
findTask(input: FindTask!): Task!
|
2020-04-10 04:40:22 +02:00
|
|
|
projects(input: ProjectsFilter): [Project!]!
|
2020-06-23 22:20:53 +02:00
|
|
|
findTeam(input: FindTeam!): Team!
|
2020-06-01 04:20:03 +02:00
|
|
|
teams: [Team!]!
|
2020-12-31 03:56:59 +01:00
|
|
|
myTasks(input: MyTasks!): MyTasksPayload!
|
2020-05-27 23:18:50 +02:00
|
|
|
labelColors: [LabelColor!]!
|
2020-04-10 04:40:22 +02:00
|
|
|
taskGroups: [TaskGroup!]!
|
2020-08-21 01:11:24 +02:00
|
|
|
me: MePayload!
|
2020-04-10 04:40:22 +02:00
|
|
|
}
|
|
|
|
|
2020-12-31 03:56:59 +01:00
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
type Mutation
|
|
|
|
|
2020-12-31 03:56:59 +01:00
|
|
|
enum MyTasksStatus {
|
|
|
|
ALL
|
|
|
|
INCOMPLETE
|
|
|
|
COMPLETE_ALL
|
|
|
|
COMPLETE_TODAY
|
|
|
|
COMPLETE_YESTERDAY
|
|
|
|
COMPLETE_ONE_WEEK
|
|
|
|
COMPLETE_TWO_WEEK
|
|
|
|
COMPLETE_THREE_WEEK
|
|
|
|
}
|
|
|
|
|
|
|
|
enum MyTasksSort {
|
|
|
|
NONE
|
|
|
|
PROJECT
|
|
|
|
DUE_DATE
|
|
|
|
}
|
|
|
|
|
|
|
|
input MyTasks {
|
|
|
|
status: MyTasksStatus!
|
|
|
|
sort: MyTasksSort!
|
|
|
|
}
|
|
|
|
|
|
|
|
type ProjectTaskMapping {
|
|
|
|
projectID: UUID!
|
|
|
|
taskID: UUID!
|
|
|
|
}
|
|
|
|
|
|
|
|
type MyTasksPayload {
|
|
|
|
tasks: [Task!]!
|
|
|
|
projects: [ProjectTaskMapping!]!
|
|
|
|
}
|
|
|
|
|
2020-08-01 03:01:14 +02:00
|
|
|
type TeamRole {
|
|
|
|
teamID: UUID!
|
|
|
|
roleCode: RoleCode!
|
|
|
|
}
|
|
|
|
|
|
|
|
type ProjectRole {
|
|
|
|
projectID: UUID!
|
|
|
|
roleCode: RoleCode!
|
|
|
|
}
|
|
|
|
|
|
|
|
type MePayload {
|
|
|
|
user: UserAccount!
|
2021-04-29 04:32:19 +02:00
|
|
|
organization: RoleCode
|
2020-08-01 03:01:14 +02:00
|
|
|
teamRoles: [TeamRole!]!
|
|
|
|
projectRoles: [ProjectRole!]!
|
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
input ProjectsFilter {
|
|
|
|
teamID: UUID
|
|
|
|
}
|
|
|
|
|
|
|
|
input FindUser {
|
2020-09-20 00:26:02 +02:00
|
|
|
userID: UUID!
|
2020-04-10 04:40:22 +02:00
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
input FindProject {
|
2020-08-01 03:01:14 +02:00
|
|
|
projectID: UUID!
|
2020-04-10 04:40:22 +02:00
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
input FindTask {
|
|
|
|
taskID: UUID!
|
2020-04-10 04:40:22 +02:00
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
input FindTeam {
|
2020-04-20 05:02:55 +02:00
|
|
|
teamID: UUID!
|
2020-04-10 04:40:22 +02:00
|
|
|
}
|
|
|
|
|
2020-08-13 03:54:14 +02:00
|
|
|
extend type Query {
|
|
|
|
notifications: [Notification!]!
|
|
|
|
}
|
|
|
|
|
|
|
|
enum EntityType {
|
|
|
|
TASK
|
|
|
|
}
|
|
|
|
|
|
|
|
enum ActorType {
|
|
|
|
USER
|
|
|
|
}
|
|
|
|
|
|
|
|
enum ActionType {
|
|
|
|
TASK_MEMBER_ADDED
|
|
|
|
}
|
|
|
|
|
|
|
|
type NotificationActor {
|
|
|
|
id: UUID!
|
|
|
|
type: ActorType!
|
|
|
|
name: String!
|
|
|
|
}
|
|
|
|
|
|
|
|
type NotificationEntity {
|
|
|
|
id: UUID!
|
|
|
|
type: EntityType!
|
|
|
|
name: String!
|
|
|
|
}
|
|
|
|
|
|
|
|
type Notification {
|
|
|
|
id: ID!
|
|
|
|
entity: NotificationEntity!
|
|
|
|
actionType: ActionType!
|
|
|
|
actor: NotificationActor!
|
|
|
|
read: Boolean!
|
|
|
|
createdAt: Time!
|
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
extend type Mutation {
|
2020-08-01 03:01:14 +02:00
|
|
|
createProject(input: NewProject!): Project! @hasRole(roles: [ADMIN], level: TEAM, type: TEAM)
|
|
|
|
deleteProject(input: DeleteProject!):
|
|
|
|
DeleteProjectPayload! @hasRole(roles: [ADMIN], level: PROJECT, type: PROJECT)
|
|
|
|
updateProjectName(input: UpdateProjectName):
|
|
|
|
Project! @hasRole(roles: [ADMIN], level: PROJECT, type: PROJECT)
|
2020-04-10 04:40:22 +02:00
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
input NewProject {
|
2020-09-20 03:20:36 +02:00
|
|
|
teamID: UUID
|
2020-04-10 04:40:22 +02:00
|
|
|
name: String!
|
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
input UpdateProjectName {
|
|
|
|
projectID: UUID!
|
|
|
|
name: String!
|
2020-04-10 04:40:22 +02:00
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
input DeleteProject {
|
|
|
|
projectID: UUID!
|
2020-04-10 04:40:22 +02:00
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
type DeleteProjectPayload {
|
|
|
|
ok: Boolean!
|
|
|
|
project: Project!
|
2020-04-10 04:40:22 +02:00
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
extend type Mutation {
|
2020-08-01 03:01:14 +02:00
|
|
|
createProjectLabel(input: NewProjectLabel!):
|
2020-09-20 00:26:02 +02:00
|
|
|
ProjectLabel! @hasRole(roles: [ADMIN, MEMBER], level: PROJECT, type: PROJECT)
|
2020-08-01 03:01:14 +02:00
|
|
|
deleteProjectLabel(input: DeleteProjectLabel!):
|
2020-09-20 00:26:02 +02:00
|
|
|
ProjectLabel! @hasRole(roles: [ADMIN, MEMBER], level: PROJECT, type: PROJECT)
|
2020-08-01 03:01:14 +02:00
|
|
|
updateProjectLabel(input: UpdateProjectLabel!):
|
2020-09-20 00:26:02 +02:00
|
|
|
ProjectLabel! @hasRole(roles: [ADMIN, MEMBER], level: PROJECT, type: PROJECT)
|
2020-08-01 03:01:14 +02:00
|
|
|
updateProjectLabelName(input: UpdateProjectLabelName!):
|
2020-09-20 00:26:02 +02:00
|
|
|
ProjectLabel! @hasRole(roles: [ADMIN, MEMBER], level: PROJECT, type: PROJECT)
|
2020-08-01 03:01:14 +02:00
|
|
|
updateProjectLabelColor(input: UpdateProjectLabelColor!):
|
2020-09-20 00:26:02 +02:00
|
|
|
ProjectLabel! @hasRole(roles: [ADMIN, MEMBER], level: PROJECT, type: PROJECT)
|
2020-04-11 21:24:45 +02:00
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
input NewProjectLabel {
|
|
|
|
projectID: UUID!
|
|
|
|
labelColorID: UUID!
|
|
|
|
name: String
|
2020-04-11 21:24:45 +02:00
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
input DeleteProjectLabel {
|
|
|
|
projectLabelID: UUID!
|
2020-06-19 01:12:15 +02:00
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
input UpdateProjectLabelName {
|
|
|
|
projectLabelID: UUID!
|
2020-06-19 01:12:15 +02:00
|
|
|
name: String!
|
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
input UpdateProjectLabel {
|
|
|
|
projectLabelID: UUID!
|
|
|
|
labelColorID: UUID!
|
2020-06-19 01:12:15 +02:00
|
|
|
name: String!
|
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
input UpdateProjectLabelColor {
|
|
|
|
projectLabelID: UUID!
|
|
|
|
labelColorID: UUID!
|
2020-04-20 05:02:55 +02:00
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
extend type Mutation {
|
2020-10-21 01:52:09 +02:00
|
|
|
inviteProjectMembers(input: InviteProjectMembers!):
|
|
|
|
InviteProjectMembersPayload! @hasRole(roles: [ADMIN], level: PROJECT, type: PROJECT)
|
2020-08-01 03:01:14 +02:00
|
|
|
deleteProjectMember(input: DeleteProjectMember!):
|
|
|
|
DeleteProjectMemberPayload! @hasRole(roles: [ADMIN], level: PROJECT, type: PROJECT)
|
|
|
|
updateProjectMemberRole(input: UpdateProjectMemberRole!):
|
|
|
|
UpdateProjectMemberRolePayload! @hasRole(roles: [ADMIN], level: PROJECT, type: PROJECT)
|
2020-10-21 01:52:09 +02:00
|
|
|
|
|
|
|
deleteInvitedProjectMember(input: DeleteInvitedProjectMember!):
|
|
|
|
DeleteInvitedProjectMemberPayload! @hasRole(roles: [ADMIN], level: PROJECT, type: PROJECT)
|
2020-07-05 01:02:57 +02:00
|
|
|
}
|
|
|
|
|
2020-10-21 01:52:09 +02:00
|
|
|
input DeleteInvitedProjectMember {
|
2020-07-05 01:02:57 +02:00
|
|
|
projectID: UUID!
|
2020-10-21 01:52:09 +02:00
|
|
|
email: String!
|
2020-04-21 01:04:27 +02:00
|
|
|
}
|
2020-07-05 01:02:57 +02:00
|
|
|
|
2020-10-21 01:52:09 +02:00
|
|
|
type DeleteInvitedProjectMemberPayload {
|
|
|
|
invitedMember: InvitedMember!
|
|
|
|
}
|
|
|
|
|
|
|
|
input MemberInvite {
|
|
|
|
userID: UUID
|
|
|
|
email: String
|
|
|
|
}
|
|
|
|
|
|
|
|
input InviteProjectMembers {
|
|
|
|
projectID: UUID!
|
|
|
|
members: [MemberInvite!]!
|
|
|
|
}
|
|
|
|
|
|
|
|
type InviteProjectMembersPayload {
|
2020-07-05 01:02:57 +02:00
|
|
|
ok: Boolean!
|
2020-10-21 01:52:09 +02:00
|
|
|
projectID: UUID!
|
|
|
|
members: [Member!]!
|
|
|
|
invitedMembers: [InvitedMember!]!
|
2020-04-20 05:02:55 +02:00
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
input DeleteProjectMember {
|
|
|
|
projectID: UUID!
|
|
|
|
userID: UUID!
|
2020-04-20 05:02:55 +02:00
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
type DeleteProjectMemberPayload {
|
|
|
|
ok: Boolean!
|
|
|
|
member: Member!
|
|
|
|
projectID: UUID!
|
2020-04-20 05:02:55 +02:00
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
input UpdateProjectMemberRole {
|
2020-04-21 01:04:27 +02:00
|
|
|
projectID: UUID!
|
2020-07-05 01:02:57 +02:00
|
|
|
userID: UUID!
|
|
|
|
roleCode: RoleCode!
|
2020-04-21 01:04:27 +02:00
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
type UpdateProjectMemberRolePayload {
|
|
|
|
ok: Boolean!
|
|
|
|
member: Member!
|
2020-05-28 03:12:50 +02:00
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
extend type Mutation {
|
2020-08-28 01:57:23 +02:00
|
|
|
createTask(input: NewTask!):
|
2020-09-20 00:26:02 +02:00
|
|
|
Task! @hasRole(roles: [ADMIN, MEMBER], level: PROJECT, type: TASK_GROUP)
|
2020-08-28 01:57:23 +02:00
|
|
|
deleteTask(input: DeleteTaskInput!):
|
2020-09-20 00:26:02 +02:00
|
|
|
DeleteTaskPayload! @hasRole(roles: [ADMIN, MEMBER], level: PROJECT, type: TASK)
|
2020-08-28 01:57:23 +02:00
|
|
|
|
|
|
|
updateTaskDescription(input: UpdateTaskDescriptionInput!):
|
2020-09-20 00:26:02 +02:00
|
|
|
Task! @hasRole(roles: [ADMIN, MEMBER], level: PROJECT, type: TASK)
|
2020-08-28 01:57:23 +02:00
|
|
|
updateTaskLocation(input: NewTaskLocation!):
|
2020-09-20 00:26:02 +02:00
|
|
|
UpdateTaskLocationPayload! @hasRole(roles: [ADMIN, MEMBER], level: PROJECT, type: TASK)
|
2020-08-28 01:57:23 +02:00
|
|
|
updateTaskName(input: UpdateTaskName!):
|
2020-09-20 00:26:02 +02:00
|
|
|
Task! @hasRole(roles: [ADMIN, MEMBER], level: PROJECT, type: TASK)
|
2020-08-28 01:57:23 +02:00
|
|
|
setTaskComplete(input: SetTaskComplete!):
|
2020-09-20 00:26:02 +02:00
|
|
|
Task! @hasRole(roles: [ADMIN, MEMBER], level: PROJECT, type: TASK)
|
2020-08-28 01:57:23 +02:00
|
|
|
updateTaskDueDate(input: UpdateTaskDueDate!):
|
2020-09-20 00:26:02 +02:00
|
|
|
Task! @hasRole(roles: [ADMIN, MEMBER], level: PROJECT, type: TASK)
|
2020-08-28 01:57:23 +02:00
|
|
|
|
|
|
|
assignTask(input: AssignTaskInput):
|
2020-09-20 00:26:02 +02:00
|
|
|
Task! @hasRole(roles: [ADMIN, MEMBER], level: PROJECT, type: TASK)
|
2020-08-28 01:57:23 +02:00
|
|
|
unassignTask(input: UnassignTaskInput):
|
2020-09-20 00:26:02 +02:00
|
|
|
Task! @hasRole(roles: [ADMIN, MEMBER], level: PROJECT, type: TASK)
|
2020-05-28 03:12:50 +02:00
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
input NewTask {
|
2020-09-20 00:26:02 +02:00
|
|
|
taskGroupID: UUID!
|
2020-07-05 01:02:57 +02:00
|
|
|
name: String!
|
|
|
|
position: Float!
|
2020-12-31 03:56:59 +01:00
|
|
|
assigned: [UUID!]
|
2020-05-28 03:12:50 +02:00
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
input AssignTaskInput {
|
2020-05-31 06:11:19 +02:00
|
|
|
taskID: UUID!
|
2020-07-05 01:02:57 +02:00
|
|
|
userID: UUID!
|
2020-05-31 06:11:19 +02:00
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
input UnassignTaskInput {
|
|
|
|
taskID: UUID!
|
|
|
|
userID: UUID!
|
2020-05-31 06:11:19 +02:00
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
input UpdateTaskDescriptionInput {
|
|
|
|
taskID: UUID!
|
|
|
|
description: String!
|
2020-05-31 06:11:19 +02:00
|
|
|
}
|
|
|
|
|
2020-06-01 04:20:03 +02:00
|
|
|
type UpdateTaskLocationPayload {
|
|
|
|
previousTaskGroupID: UUID!
|
|
|
|
task: Task!
|
|
|
|
}
|
2020-06-13 00:21:58 +02:00
|
|
|
|
2020-06-16 00:36:59 +02:00
|
|
|
input UpdateTaskDueDate {
|
|
|
|
taskID: UUID!
|
2021-01-01 21:51:40 +01:00
|
|
|
hasTime: Boolean!
|
2020-06-16 00:36:59 +02:00
|
|
|
dueDate: Time
|
|
|
|
}
|
|
|
|
|
2020-06-19 01:12:15 +02:00
|
|
|
input SetTaskComplete {
|
|
|
|
taskID: UUID!
|
|
|
|
complete: Boolean!
|
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
input NewTaskLocation {
|
|
|
|
taskID: UUID!
|
|
|
|
taskGroupID: UUID!
|
|
|
|
position: Float!
|
|
|
|
}
|
|
|
|
|
|
|
|
input DeleteTaskInput {
|
2020-09-20 00:26:02 +02:00
|
|
|
taskID: UUID!
|
2020-07-05 01:02:57 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
type DeleteTaskPayload {
|
2020-09-20 00:26:02 +02:00
|
|
|
taskID: UUID!
|
2020-07-05 01:02:57 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
input UpdateTaskName {
|
2020-09-20 00:26:02 +02:00
|
|
|
taskID: UUID!
|
2020-07-05 01:02:57 +02:00
|
|
|
name: String!
|
|
|
|
}
|
|
|
|
|
|
|
|
extend type Mutation {
|
2020-08-28 01:57:23 +02:00
|
|
|
createTaskChecklist(input: CreateTaskChecklist!):
|
2020-09-20 00:26:02 +02:00
|
|
|
TaskChecklist! @hasRole(roles: [ADMIN, MEMBER], level: PROJECT, type: TASK)
|
2020-08-28 01:57:23 +02:00
|
|
|
deleteTaskChecklist(input: DeleteTaskChecklist!):
|
2020-09-20 00:26:02 +02:00
|
|
|
DeleteTaskChecklistPayload! @hasRole(roles: [ADMIN, MEMBER], level: PROJECT, type: TASK_CHECKLIST)
|
2020-08-28 01:57:23 +02:00
|
|
|
updateTaskChecklistName(input: UpdateTaskChecklistName!):
|
2020-09-20 00:26:02 +02:00
|
|
|
TaskChecklist! @hasRole(roles: [ADMIN, MEMBER], level: PROJECT, type: TASK_CHECKLIST)
|
2020-08-28 01:57:23 +02:00
|
|
|
createTaskChecklistItem(input: CreateTaskChecklistItem!):
|
2020-09-20 00:26:02 +02:00
|
|
|
TaskChecklistItem! @hasRole(roles: [ADMIN, MEMBER], level: PROJECT, type: TASK_CHECKLIST)
|
|
|
|
updateTaskChecklistLocation(input: UpdateTaskChecklistLocation!):
|
|
|
|
UpdateTaskChecklistLocationPayload! @hasRole(roles: [ADMIN, MEMBER], level: PROJECT, type: TASK_CHECKLIST)
|
|
|
|
|
2020-08-28 01:57:23 +02:00
|
|
|
updateTaskChecklistItemName(input: UpdateTaskChecklistItemName!):
|
2020-09-20 00:26:02 +02:00
|
|
|
TaskChecklistItem! @hasRole(roles: [ADMIN, MEMBER], level: PROJECT, type: TASK_CHECKLIST_ITEM)
|
2020-08-28 01:57:23 +02:00
|
|
|
setTaskChecklistItemComplete(input: SetTaskChecklistItemComplete!):
|
2020-09-20 00:26:02 +02:00
|
|
|
TaskChecklistItem! @hasRole(roles: [ADMIN, MEMBER], level: PROJECT, type: TASK_CHECKLIST_ITEM)
|
2020-08-28 01:57:23 +02:00
|
|
|
deleteTaskChecklistItem(input: DeleteTaskChecklistItem!):
|
2020-09-20 00:26:02 +02:00
|
|
|
DeleteTaskChecklistItemPayload! @hasRole(roles: [ADMIN, MEMBER], level: PROJECT, type: TASK_CHECKLIST_ITEM)
|
2020-08-28 01:57:23 +02:00
|
|
|
updateTaskChecklistItemLocation(input: UpdateTaskChecklistItemLocation!):
|
2020-09-20 00:26:02 +02:00
|
|
|
UpdateTaskChecklistItemLocationPayload! @hasRole(roles: [ADMIN, MEMBER], level: PROJECT, type: TASK_CHECKLIST_ITEM)
|
2020-07-12 09:06:11 +02:00
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
input UpdateTaskChecklistItemLocation {
|
2020-09-20 00:26:02 +02:00
|
|
|
taskChecklistID: UUID!
|
|
|
|
taskChecklistItemID: UUID!
|
2020-07-12 09:06:11 +02:00
|
|
|
position: Float!
|
|
|
|
}
|
|
|
|
|
|
|
|
type UpdateTaskChecklistItemLocationPayload {
|
2020-09-20 00:26:02 +02:00
|
|
|
taskChecklistID: UUID!
|
2020-07-12 09:06:11 +02:00
|
|
|
prevChecklistID: UUID!
|
|
|
|
checklistItem: TaskChecklistItem!
|
|
|
|
}
|
|
|
|
|
|
|
|
input UpdateTaskChecklistLocation {
|
2020-09-20 00:26:02 +02:00
|
|
|
taskChecklistID: UUID!
|
2020-07-12 09:06:11 +02:00
|
|
|
position: Float!
|
|
|
|
}
|
|
|
|
|
|
|
|
type UpdateTaskChecklistLocationPayload {
|
|
|
|
checklist: TaskChecklist!
|
2020-07-05 01:02:57 +02:00
|
|
|
}
|
|
|
|
|
2020-06-19 01:12:15 +02:00
|
|
|
input CreateTaskChecklist {
|
|
|
|
taskID: UUID!
|
|
|
|
name: String!
|
|
|
|
position: Float!
|
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
type DeleteTaskChecklistItemPayload {
|
|
|
|
ok: Boolean!
|
|
|
|
taskChecklistItem: TaskChecklistItem!
|
|
|
|
}
|
|
|
|
|
2020-06-19 01:12:15 +02:00
|
|
|
input CreateTaskChecklistItem {
|
|
|
|
taskChecklistID: UUID!
|
|
|
|
name: String!
|
|
|
|
position: Float!
|
|
|
|
}
|
|
|
|
|
|
|
|
input SetTaskChecklistItemComplete {
|
|
|
|
taskChecklistItemID: UUID!
|
|
|
|
complete: Boolean!
|
|
|
|
}
|
2020-07-05 01:02:57 +02:00
|
|
|
|
2020-06-19 01:12:15 +02:00
|
|
|
input DeleteTaskChecklistItem {
|
|
|
|
taskChecklistItemID: UUID!
|
|
|
|
}
|
|
|
|
|
|
|
|
input UpdateTaskChecklistItemName {
|
|
|
|
taskChecklistItemID: UUID!
|
|
|
|
name: String!
|
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
input UpdateTaskChecklistName {
|
|
|
|
taskChecklistID: UUID!
|
|
|
|
name: String!
|
|
|
|
}
|
|
|
|
input DeleteTaskChecklist {
|
|
|
|
taskChecklistID: UUID!
|
|
|
|
}
|
|
|
|
type DeleteTaskChecklistPayload {
|
|
|
|
ok: Boolean!
|
|
|
|
taskChecklist: TaskChecklist!
|
2020-06-21 00:49:11 +02:00
|
|
|
}
|
|
|
|
|
2020-12-19 03:34:35 +01:00
|
|
|
extend type Mutation {
|
|
|
|
createTaskComment(input: CreateTaskComment):
|
|
|
|
CreateTaskCommentPayload! @hasRole(roles: [ADMIN, MEMBER], level: PROJECT, type: TASK)
|
|
|
|
deleteTaskComment(input: DeleteTaskComment):
|
|
|
|
DeleteTaskCommentPayload! @hasRole(roles: [ADMIN, MEMBER], level: PROJECT, type: TASK)
|
|
|
|
updateTaskComment(input: UpdateTaskComment):
|
|
|
|
UpdateTaskCommentPayload! @hasRole(roles: [ADMIN, MEMBER], level: PROJECT, type: TASK)
|
|
|
|
}
|
|
|
|
|
|
|
|
input CreateTaskComment {
|
|
|
|
taskID: UUID!
|
|
|
|
message: String!
|
|
|
|
}
|
|
|
|
|
|
|
|
type CreateTaskCommentPayload {
|
|
|
|
taskID: UUID!
|
|
|
|
comment: TaskComment!
|
|
|
|
}
|
|
|
|
|
|
|
|
input UpdateTaskComment {
|
|
|
|
commentID: UUID!
|
|
|
|
message: String!
|
|
|
|
}
|
|
|
|
|
|
|
|
type UpdateTaskCommentPayload {
|
|
|
|
taskID: UUID!
|
|
|
|
comment: TaskComment!
|
|
|
|
}
|
|
|
|
|
|
|
|
input DeleteTaskComment {
|
|
|
|
commentID: UUID!
|
|
|
|
}
|
|
|
|
|
|
|
|
type DeleteTaskCommentPayload {
|
|
|
|
taskID: UUID!
|
|
|
|
commentID: UUID!
|
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
extend type Mutation {
|
2020-08-28 01:57:23 +02:00
|
|
|
createTaskGroup(input: NewTaskGroup!):
|
2020-09-20 00:26:02 +02:00
|
|
|
TaskGroup! @hasRole(roles: [ADMIN, MEMBER], level: PROJECT, type: PROJECT)
|
2020-08-28 01:57:23 +02:00
|
|
|
updateTaskGroupLocation(input: NewTaskGroupLocation!):
|
2020-09-20 00:26:02 +02:00
|
|
|
TaskGroup! @hasRole(roles: [ADMIN, MEMBER], level: PROJECT, type: TASK_GROUP)
|
2020-08-28 01:57:23 +02:00
|
|
|
updateTaskGroupName(input: UpdateTaskGroupName!):
|
2020-09-20 00:26:02 +02:00
|
|
|
TaskGroup! @hasRole(roles: [ADMIN, MEMBER], level: PROJECT, type: TASK_GROUP)
|
2020-08-28 01:57:23 +02:00
|
|
|
deleteTaskGroup(input: DeleteTaskGroupInput!):
|
2020-09-20 00:26:02 +02:00
|
|
|
DeleteTaskGroupPayload! @hasRole(roles: [ADMIN, MEMBER], level: PROJECT, type: TASK_GROUP)
|
2020-09-11 01:15:06 +02:00
|
|
|
duplicateTaskGroup(input: DuplicateTaskGroup!):
|
2020-09-20 00:26:02 +02:00
|
|
|
DuplicateTaskGroupPayload! @hasRole(roles: [ADMIN, MEMBER], level: PROJECT, type: TASK_GROUP)
|
2020-09-11 01:15:06 +02:00
|
|
|
sortTaskGroup(input: SortTaskGroup!):
|
2020-09-20 00:26:02 +02:00
|
|
|
SortTaskGroupPayload! @hasRole(roles: [ADMIN, MEMBER], level: PROJECT, type: TASK_GROUP)
|
2020-09-11 01:15:06 +02:00
|
|
|
deleteTaskGroupTasks(input: DeleteTaskGroupTasks!):
|
2020-09-20 00:26:02 +02:00
|
|
|
DeleteTaskGroupTasksPayload! @hasRole(roles: [ADMIN, MEMBER], level: PROJECT, type: TASK_GROUP)
|
2020-09-11 01:15:06 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
input DeleteTaskGroupTasks {
|
|
|
|
taskGroupID: UUID!
|
|
|
|
}
|
|
|
|
|
|
|
|
type DeleteTaskGroupTasksPayload {
|
|
|
|
taskGroupID: UUID!
|
|
|
|
tasks: [UUID!]!
|
|
|
|
}
|
|
|
|
|
|
|
|
input TaskPositionUpdate {
|
|
|
|
taskID: UUID!
|
|
|
|
position: Float!
|
|
|
|
}
|
|
|
|
|
|
|
|
type SortTaskGroupPayload {
|
|
|
|
taskGroupID: UUID!
|
|
|
|
tasks: [Task!]!
|
|
|
|
}
|
|
|
|
|
|
|
|
input SortTaskGroup {
|
|
|
|
taskGroupID: UUID!
|
|
|
|
tasks: [TaskPositionUpdate!]!
|
|
|
|
}
|
|
|
|
|
|
|
|
input DuplicateTaskGroup {
|
|
|
|
projectID: UUID!
|
|
|
|
taskGroupID: UUID!
|
|
|
|
name: String!
|
|
|
|
position: Float!
|
|
|
|
}
|
|
|
|
|
|
|
|
type DuplicateTaskGroupPayload {
|
|
|
|
taskGroup: TaskGroup!
|
2020-06-21 00:49:11 +02:00
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
input NewTaskGroupLocation {
|
|
|
|
taskGroupID: UUID!
|
|
|
|
position: Float!
|
2020-06-21 00:49:11 +02:00
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
input UpdateTaskGroupName {
|
|
|
|
taskGroupID: UUID!
|
|
|
|
name: String!
|
|
|
|
}
|
|
|
|
|
|
|
|
input DeleteTaskGroupInput {
|
|
|
|
taskGroupID: UUID!
|
|
|
|
}
|
|
|
|
|
|
|
|
type DeleteTaskGroupPayload {
|
2020-06-21 00:49:11 +02:00
|
|
|
ok: Boolean!
|
2020-07-05 01:02:57 +02:00
|
|
|
affectedRows: Int!
|
|
|
|
taskGroup: TaskGroup!
|
|
|
|
}
|
|
|
|
|
|
|
|
input NewTaskGroup {
|
2020-09-20 00:26:02 +02:00
|
|
|
projectID: UUID!
|
2020-07-05 01:02:57 +02:00
|
|
|
name: String!
|
|
|
|
position: Float!
|
|
|
|
}
|
|
|
|
|
2020-09-20 00:26:02 +02:00
|
|
|
extend type Mutation {
|
|
|
|
addTaskLabel(input: AddTaskLabelInput):
|
|
|
|
Task! @hasRole(roles: [ADMIN, MEMBER], level: PROJECT, type: TASK)
|
|
|
|
removeTaskLabel(input: RemoveTaskLabelInput):
|
|
|
|
Task! @hasRole(roles: [ADMIN, MEMBER], level: PROJECT, type: TASK)
|
|
|
|
toggleTaskLabel(input: ToggleTaskLabelInput!):
|
|
|
|
ToggleTaskLabelPayload! @hasRole(roles: [ADMIN, MEMBER], level: PROJECT, type: TASK)
|
|
|
|
|
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
input AddTaskLabelInput {
|
|
|
|
taskID: UUID!
|
|
|
|
projectLabelID: UUID!
|
|
|
|
}
|
|
|
|
|
|
|
|
input RemoveTaskLabelInput {
|
2020-09-20 00:26:02 +02:00
|
|
|
taskID: UUID!
|
2020-07-05 01:02:57 +02:00
|
|
|
taskLabelID: UUID!
|
|
|
|
}
|
2020-09-20 00:26:02 +02:00
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
input ToggleTaskLabelInput {
|
|
|
|
taskID: UUID!
|
|
|
|
projectLabelID: UUID!
|
|
|
|
}
|
|
|
|
|
|
|
|
type ToggleTaskLabelPayload {
|
|
|
|
active: Boolean!
|
|
|
|
task: Task!
|
|
|
|
}
|
|
|
|
|
|
|
|
extend type Mutation {
|
2020-08-01 03:01:14 +02:00
|
|
|
deleteTeam(input: DeleteTeam!):
|
|
|
|
DeleteTeamPayload! @hasRole(roles:[ ADMIN], level: TEAM, type: TEAM)
|
|
|
|
createTeam(input: NewTeam!):
|
|
|
|
Team! @hasRole(roles: [ADMIN], level: ORG, type: ORG)
|
2020-07-05 01:02:57 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
input NewTeam {
|
|
|
|
name: String!
|
|
|
|
organizationID: UUID!
|
2020-06-21 00:49:11 +02:00
|
|
|
}
|
|
|
|
|
2020-06-23 22:20:53 +02:00
|
|
|
input DeleteTeam {
|
|
|
|
teamID: UUID!
|
|
|
|
}
|
|
|
|
|
|
|
|
type DeleteTeamPayload {
|
|
|
|
ok: Boolean!
|
|
|
|
team: Team!
|
|
|
|
projects: [Project!]!
|
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
extend type Mutation {
|
2020-08-28 01:57:23 +02:00
|
|
|
createTeamMember(input: CreateTeamMember!):
|
|
|
|
CreateTeamMemberPayload! @hasRole(roles: [ADMIN], level: TEAM, type: TEAM)
|
2020-08-01 03:01:14 +02:00
|
|
|
updateTeamMemberRole(input: UpdateTeamMemberRole!):
|
|
|
|
UpdateTeamMemberRolePayload! @hasRole(roles: [ADMIN], level: TEAM, type: TEAM)
|
2020-08-28 01:57:23 +02:00
|
|
|
deleteTeamMember(input: DeleteTeamMember!):
|
|
|
|
DeleteTeamMemberPayload! @hasRole(roles: [ADMIN], level: TEAM, type: TEAM)
|
2020-08-01 03:01:14 +02:00
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
input DeleteTeamMember {
|
|
|
|
teamID: UUID!
|
2020-06-23 22:20:53 +02:00
|
|
|
userID: UUID!
|
2020-07-12 09:06:11 +02:00
|
|
|
newOwnerID: UUID
|
2020-06-23 22:20:53 +02:00
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
type DeleteTeamMemberPayload {
|
|
|
|
teamID: UUID!
|
|
|
|
userID: UUID!
|
2020-07-12 09:06:11 +02:00
|
|
|
affectedProjects: [Project!]!
|
2020-06-23 22:20:53 +02:00
|
|
|
}
|
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
input CreateTeamMember {
|
|
|
|
userID: UUID!
|
|
|
|
teamID: UUID!
|
2020-06-23 22:20:53 +02:00
|
|
|
}
|
2020-07-05 01:02:57 +02:00
|
|
|
|
|
|
|
type CreateTeamMemberPayload {
|
|
|
|
team: Team!
|
|
|
|
teamMember: Member!
|
2020-06-23 22:20:53 +02:00
|
|
|
}
|
2020-07-05 01:02:57 +02:00
|
|
|
|
|
|
|
input UpdateTeamMemberRole {
|
|
|
|
teamID: UUID!
|
|
|
|
userID: UUID!
|
|
|
|
roleCode: RoleCode!
|
|
|
|
}
|
|
|
|
|
|
|
|
type UpdateTeamMemberRolePayload {
|
2020-06-23 22:20:53 +02:00
|
|
|
ok: Boolean!
|
2020-07-05 01:02:57 +02:00
|
|
|
teamID: UUID!
|
2020-08-01 03:01:14 +02:00
|
|
|
member: Member!
|
2020-07-05 01:02:57 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
extend type Mutation {
|
2020-08-01 03:01:14 +02:00
|
|
|
createUserAccount(input: NewUserAccount!):
|
|
|
|
UserAccount! @hasRole(roles: [ADMIN], level: ORG, type: ORG)
|
|
|
|
deleteUserAccount(input: DeleteUserAccount!):
|
|
|
|
DeleteUserAccountPayload! @hasRole(roles: [ADMIN], level: ORG, type: ORG)
|
2020-10-21 01:52:09 +02:00
|
|
|
deleteInvitedUserAccount(input: DeleteInvitedUserAccount!):
|
|
|
|
DeleteInvitedUserAccountPayload! @hasRole(roles: [ADMIN], level: ORG, type: ORG)
|
2020-08-01 03:01:14 +02:00
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
logoutUser(input: LogoutUser!): Boolean!
|
2020-06-13 00:21:58 +02:00
|
|
|
clearProfileAvatar: UserAccount!
|
2020-07-12 09:06:11 +02:00
|
|
|
|
2020-07-16 01:20:08 +02:00
|
|
|
updateUserPassword(input: UpdateUserPassword!): UpdateUserPasswordPayload!
|
2020-08-01 03:01:14 +02:00
|
|
|
updateUserRole(input: UpdateUserRole!):
|
|
|
|
UpdateUserRolePayload! @hasRole(roles: [ADMIN], level: ORG, type: ORG)
|
2020-09-11 20:54:43 +02:00
|
|
|
updateUserInfo(input: UpdateUserInfo!):
|
|
|
|
UpdateUserInfoPayload! @hasRole(roles: [ADMIN], level: ORG, type: ORG)
|
|
|
|
}
|
|
|
|
|
2020-10-21 01:52:09 +02:00
|
|
|
extend type Query {
|
|
|
|
searchMembers(input: MemberSearchFilter!): [MemberSearchResult!]!
|
|
|
|
}
|
|
|
|
|
|
|
|
input DeleteInvitedUserAccount {
|
|
|
|
invitedUserID: UUID!
|
|
|
|
}
|
|
|
|
|
|
|
|
type DeleteInvitedUserAccountPayload {
|
|
|
|
invitedUser: InvitedUserAccount!
|
|
|
|
}
|
|
|
|
|
|
|
|
input MemberSearchFilter {
|
|
|
|
searchFilter: String!
|
|
|
|
projectID: UUID
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
type MemberSearchResult {
|
|
|
|
similarity: Int!
|
|
|
|
id: String!
|
|
|
|
user: UserAccount
|
|
|
|
status: ShareStatus!
|
|
|
|
}
|
|
|
|
|
2020-09-11 20:54:43 +02:00
|
|
|
type UpdateUserInfoPayload {
|
|
|
|
user: UserAccount!
|
|
|
|
}
|
|
|
|
|
|
|
|
input UpdateUserInfo {
|
|
|
|
name: String!
|
|
|
|
initials: String!
|
|
|
|
email: String!
|
|
|
|
bio: String!
|
2020-07-12 09:06:11 +02:00
|
|
|
}
|
|
|
|
|
2020-07-16 01:20:08 +02:00
|
|
|
input UpdateUserPassword {
|
|
|
|
userID: UUID!
|
|
|
|
password: String!
|
|
|
|
}
|
|
|
|
|
|
|
|
type UpdateUserPasswordPayload {
|
|
|
|
ok: Boolean!
|
|
|
|
user: UserAccount!
|
|
|
|
}
|
|
|
|
|
2020-07-12 09:06:11 +02:00
|
|
|
input UpdateUserRole {
|
|
|
|
userID: UUID!
|
|
|
|
roleCode: RoleCode!
|
|
|
|
}
|
|
|
|
|
|
|
|
type UpdateUserRolePayload {
|
|
|
|
user: UserAccount!
|
2020-07-05 01:02:57 +02:00
|
|
|
}
|
2020-04-11 21:24:45 +02:00
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
input NewUserAccount {
|
|
|
|
username: String!
|
|
|
|
email: String!
|
|
|
|
fullName: String!
|
|
|
|
initials: String!
|
|
|
|
password: String!
|
|
|
|
roleCode: String!
|
|
|
|
}
|
2020-04-20 05:02:55 +02:00
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
input LogoutUser {
|
2020-09-20 00:26:02 +02:00
|
|
|
userID: UUID!
|
2020-07-05 01:02:57 +02:00
|
|
|
}
|
2020-06-19 01:12:15 +02:00
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
input DeleteUserAccount {
|
|
|
|
userID: UUID!
|
2020-07-18 04:55:38 +02:00
|
|
|
newOwnerID: UUID
|
2020-07-05 01:02:57 +02:00
|
|
|
}
|
2020-04-11 21:24:45 +02:00
|
|
|
|
2020-07-05 01:02:57 +02:00
|
|
|
type DeleteUserAccountPayload {
|
|
|
|
ok: Boolean!
|
|
|
|
userAccount: UserAccount!
|
2020-04-10 04:40:22 +02:00
|
|
|
}
|