Add ability to add message for participation and improve participation

management interface

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
This commit is contained in:
Thomas Citharel
2020-03-05 19:32:34 +01:00
parent 130a3cf23f
commit c732ec7f87
34 changed files with 736 additions and 368 deletions

View File

@@ -1,5 +1,5 @@
# source: http://localhost:4000/api
# timestamp: Thu Feb 13 2020 11:32:20 GMT+0100 (GMT+01:00)
# timestamp: Wed Mar 04 2020 10:26:53 GMT+0100 (GMT+01:00)
schema {
query: RootQueryType
@@ -839,6 +839,9 @@ type Participant {
"""The participation ID"""
id: ID
"""The datetime this participant was created"""
insertedAt: DateTime
"""The metadata associated to this participant"""
metadata: ParticipantMetadata
@@ -849,6 +852,9 @@ type Participant {
type ParticipantMetadata {
"""The eventual token to leave an event when user is anonymous"""
cancellationToken: String
"""The eventual message the participant left"""
message: String
}
enum ParticipantRoleEnum {
@@ -1082,203 +1088,9 @@ enum ReportStatus {
}
type RootMutationType {
saveAdminSettings(instanceDescription: String, instanceName: String, instanceTerms: String, instanceTermsType: InstanceTermsType, instanceTermsUrl: String, registrationsOpen: Boolean): AdminSettings
changeEmail(email: String!, password: String!): User
"""Create a comment"""
createComment(actorId: ID!, eventId: ID, inReplyToCommentId: ID, text: String!): Comment
"""Create an user"""
createUser(email: String!, locale: String, password: String!): User
"""Update an identity"""
updatePerson(
"""
The avatar for the profile, either as an object or directly the ID of an existing Picture
"""
avatar: PictureInput
"""
The banner for the profile, either as an object or directly the ID of an existing Picture
"""
banner: PictureInput
id: ID!
"""The displayed name for this profile"""
name: String
"""The summary for this profile"""
summary: String
): Person
"""Create an event"""
createEvent(
beginsOn: DateTime!
category: String = "meeting"
description: String!
draft: Boolean = false
endsOn: DateTime
joinOptions: EventJoinOptions = FREE
onlineAddress: String
options: EventOptionsInput
organizerActorId: ID!
phoneAddress: String
physicalAddress: AddressInput
"""
The picture for the event, either as an object or directly the ID of an existing Picture
"""
picture: PictureInput
publishAt: DateTime
status: EventStatus
"""The list of tags associated to the event"""
tags: [String] = [""]
title: String!
visibility: EventVisibility = PUBLIC
): Event
validateEmail(token: String!): User
"""Delete an event"""
deleteEvent(actorId: ID!, eventId: ID!): DeletedObject
"""Accept a participation"""
updateParticipation(id: ID!, moderatorActorId: ID!, role: ParticipantRoleEnum!): Participant
"""Leave an event"""
leaveEvent(actorId: ID!, eventId: ID!, token: String): DeletedParticipant
"""Delete an identity"""
deletePerson(id: ID!): Person
"""Refresh a token"""
refreshToken(refreshToken: String!): RefreshedToken
"""Validate an user after registration"""
validateUser(token: String!): Login
"""Upload a picture"""
uploadPicture(actorId: ID!, alt: String, file: Upload!, name: String!): Picture
"""Delete a feed token"""
deleteFeedToken(token: String!): DeletedFeedToken
"""Create a note on a report"""
createReportNote(content: String, moderatorId: ID!, reportId: ID!): ReportNote
"""Leave an event"""
leaveGroup(actorId: ID!, groupId: ID!): DeletedMember
"""Create a Feed Token"""
createFeedToken(actorId: ID): FeedToken
"""Send a link through email to reset user password"""
sendResetPassword(email: String!, locale: String): String
"""Delete a relay subscription"""
removeRelay(address: String!): Follower
"""Change default actor for user"""
changeDefaultActor(preferredUsername: String!): User
deleteReportNote(moderatorId: ID!, noteId: ID!): DeletedObject
"""Create a report"""
createReport(commentsIds: [ID] = [""], content: String, eventId: ID, forward: Boolean = false, reportedId: ID!, reporterId: ID!): Report
"""Register a first profile on registration"""
registerPerson(
"""
The avatar for the profile, either as an object or directly the ID of an existing Picture
"""
avatar: PictureInput
"""
The banner for the profile, either as an object or directly the ID of an existing Picture
"""
banner: PictureInput
"""The email from the user previously created"""
email: String!
"""The displayed name for the new profile"""
name: String = ""
preferredUsername: String!
"""The summary for the new profile"""
summary: String = ""
): Person
"""Delete a group"""
deleteGroup(actorId: ID!, groupId: ID!): DeletedObject
deleteAccount(password: String!): DeletedObject
"""Add a relay subscription"""
addRelay(address: String!): Follower
"""Reset user password"""
resetPassword(locale: String = "en", password: String!, token: String!): Login
"""Create a group"""
createGroup(
"""
The avatar for the group, either as an object or directly the ID of an existing Picture
"""
avatar: PictureInput
"""
The banner for the group, either as an object or directly the ID of an existing Picture
"""
banner: PictureInput
"""The identity that creates the group"""
creatorActorId: ID!
"""The displayed name for the group"""
name: String
"""The name for the group"""
preferredUsername: String!
"""The summary for the group"""
summary: String = ""
): Group
"""Confirm a participation"""
confirmParticipation(confirmationToken: String!): Participant
deleteComment(actorId: ID!, commentId: ID!): Comment
"""Join an event"""
joinEvent(actorId: ID!, email: String, eventId: ID!): Participant
"""Accept a relay subscription"""
acceptRelay(address: String!): Follower
"""Join a group"""
joinGroup(actorId: ID!, groupId: ID!): Member
"""Reject a relay subscription"""
rejectRelay(address: String!): Follower
"""Create a new person for user"""
createPerson(
"""
The avatar for the profile, either as an object or directly the ID of an existing Picture
"""
avatar: PictureInput
"""
The banner for the profile, either as an object or directly the ID of an existing Picture
"""
banner: PictureInput
"""The displayed name for the new profile"""
name: String = ""
preferredUsername: String!
"""The summary for the new profile"""
summary: String = ""
): Person
"""Update an event"""
updateEvent(
beginsOn: DateTime
@@ -1305,18 +1117,211 @@ type RootMutationType {
title: String
visibility: EventVisibility = PUBLIC
): Event
validateEmail(token: String!): User
"""Change default actor for user"""
changeDefaultActor(preferredUsername: String!): User
"""Leave an event"""
leaveEvent(actorId: ID!, eventId: ID!, token: String): DeletedParticipant
deleteAccount(password: String!): DeletedObject
"""Delete a group"""
deleteGroup(actorId: ID!, groupId: ID!): DeletedObject
"""Create an user"""
createUser(email: String!, locale: String, password: String!): User
"""Add a relay subscription"""
addRelay(address: String!): Follower
"""Delete an identity"""
deletePerson(id: ID!): Person
"""Accept a relay subscription"""
acceptRelay(address: String!): Follower
"""Refresh a token"""
refreshToken(refreshToken: String!): RefreshedToken
"""Update an identity"""
updatePerson(
"""
The avatar for the profile, either as an object or directly the ID of an existing Picture
"""
avatar: PictureInput
"""
The banner for the profile, either as an object or directly the ID of an existing Picture
"""
banner: PictureInput
id: ID!
"""The displayed name for this profile"""
name: String
"""The summary for this profile"""
summary: String
): Person
"""Create a report"""
createReport(commentsIds: [ID] = [""], content: String, eventId: ID, forward: Boolean = false, reportedId: ID!, reporterId: ID!): Report
"""Delete a feed token"""
deleteFeedToken(token: String!): DeletedFeedToken
"""Reset user password"""
resetPassword(locale: String = "en", password: String!, token: String!): Login
"""Login an user"""
login(email: String!, password: String!): Login
"""Leave an event"""
leaveGroup(actorId: ID!, groupId: ID!): DeletedMember
"""Register a first profile on registration"""
registerPerson(
"""
The avatar for the profile, either as an object or directly the ID of an existing Picture
"""
avatar: PictureInput
"""
The banner for the profile, either as an object or directly the ID of an existing Picture
"""
banner: PictureInput
"""The email from the user previously created"""
email: String!
"""The displayed name for the new profile"""
name: String = ""
preferredUsername: String!
"""The summary for the new profile"""
summary: String = ""
): Person
"""Delete a relay subscription"""
removeRelay(address: String!): Follower
"""Change an user password"""
changePassword(newPassword: String!, oldPassword: String!): User
"""Update a report"""
updateReportStatus(moderatorId: ID!, reportId: ID!, status: ReportStatus!): Report
"""Resend registration confirmation token"""
resendConfirmationEmail(email: String!, locale: String): String
"""Login an user"""
login(email: String!, password: String!): Login
"""Confirm a participation"""
confirmParticipation(confirmationToken: String!): Participant
"""Delete an event"""
deleteEvent(actorId: ID!, eventId: ID!): DeletedObject
"""Update a report"""
updateReportStatus(moderatorId: ID!, reportId: ID!, status: ReportStatus!): Report
"""Create a group"""
createGroup(
"""
The avatar for the group, either as an object or directly the ID of an existing Picture
"""
avatar: PictureInput
"""
The banner for the group, either as an object or directly the ID of an existing Picture
"""
banner: PictureInput
"""The identity that creates the group"""
creatorActorId: ID!
"""The displayed name for the group"""
name: String
"""The name for the group"""
preferredUsername: String!
"""The summary for the group"""
summary: String = ""
): Group
"""Validate an user after registration"""
validateUser(token: String!): Login
"""Join an event"""
joinEvent(actorId: ID!, email: String, eventId: ID!, message: String): Participant
deleteReportNote(moderatorId: ID!, noteId: ID!): DeletedObject
deleteComment(actorId: ID!, commentId: ID!): Comment
"""Reject a relay subscription"""
rejectRelay(address: String!): Follower
"""Create a comment"""
createComment(actorId: ID!, eventId: ID, inReplyToCommentId: ID, text: String!): Comment
"""Create a note on a report"""
createReportNote(content: String, moderatorId: ID!, reportId: ID!): ReportNote
"""Accept a participation"""
updateParticipation(id: ID!, moderatorActorId: ID!, role: ParticipantRoleEnum!): Participant
"""Create a Feed Token"""
createFeedToken(actorId: ID): FeedToken
"""Join a group"""
joinGroup(actorId: ID!, groupId: ID!): Member
"""Create a new person for user"""
createPerson(
"""
The avatar for the profile, either as an object or directly the ID of an existing Picture
"""
avatar: PictureInput
"""
The banner for the profile, either as an object or directly the ID of an existing Picture
"""
banner: PictureInput
"""The displayed name for the new profile"""
name: String = ""
preferredUsername: String!
"""The summary for the new profile"""
summary: String = ""
): Person
"""Upload a picture"""
uploadPicture(actorId: ID!, alt: String, file: Upload!, name: String!): Picture
"""Create an event"""
createEvent(
beginsOn: DateTime!
category: String = "meeting"
description: String!
draft: Boolean = false
endsOn: DateTime
joinOptions: EventJoinOptions = FREE
onlineAddress: String
options: EventOptionsInput
organizerActorId: ID!
phoneAddress: String
physicalAddress: AddressInput
"""
The picture for the event, either as an object or directly the ID of an existing Picture
"""
picture: PictureInput
publishAt: DateTime
status: EventStatus
"""The list of tags associated to the event"""
tags: [String] = [""]
title: String!
visibility: EventVisibility = PUBLIC
): Event
saveAdminSettings(instanceDescription: String, instanceName: String, instanceTerms: String, instanceTermsType: InstanceTermsType, instanceTermsUrl: String, registrationsOpen: Boolean): AdminSettings
changeEmail(email: String!, password: String!): User
}
"""