qpa-client/schema.graphql

315 lines
5.7 KiB
GraphQL

# This file was generated based on ".graphqlconfig". Do not edit manually.
schema {
query: Query
mutation: Mutation
}
type CalendarEvent {
id: ID!
images: EventImages
info(lang: String!): EventInformation
infos: [EventInformation]!
location: Location!
occurrences: [EventOccurrence]
owner: User!
publishedState: EventPublishedState!
revisionState: EventEventRevisionState!
revisions: [EventRevision]
status: EventStatus!
tags: [EventTag]
time: EventTime!
}
type Error {
message: String!
path: String!
}
type EventImage {
url: String!
}
type EventImages {
cover: EventImage
event: CalendarEvent
gallery: [EventImage!]
poster: EventImage
thumb: EventImage
}
type EventInformation {
description: String
id: ID!
language: String!
title: String!
}
type EventOccurrence {
end: String!
event: CalendarEvent!
id: ID!
start: String!
}
type EventRevision {
author: User!
comment: String
conclusion: String
createdAt: Date!
dismissedBy: User
event: CalendarEvent!
id: ID!
lastChangedAt: Date!
submittedAt: Date
}
type EventTag {
id: ID!
name: String!
translation(language: String!): EventTagTranslation
translations: [EventTagTranslation!]!
}
type EventTagTranslation {
id: ID!
language: String!
text: String!
}
type EventTime {
end: Timestamp
exceptions: String
recurrence: String
start: Timestamp
timeZone: TimeZone
}
type Location {
address: String
name: String
}
type Mutation {
addEventGalleryImages(input: EventImagesUploadInput!): CalendarEvent
createEvent(input: CreateEventInput!): CalendarEvent
createEventTag(input: CreateEventTagInput!): EventTag
deleteEvent(id: ID!): User!
deleteEventTag(input: DeleteEventTagInput!): [EventTag]
dismissOpenEventRevision(input: EventRevisionInput!): CalendarEvent
grantRole(input: GrantRoleInput!): User!
removeEventGalleryImages(input: EventGalleryImagesInput!): CalendarEvent
requestEventRevision(input: RequestRevisionInput!): CalendarEvent
requestInvite(input: RequestInviteInput!): Boolean!
revokeRole(input: GrantRoleInput!): User!
setEventImage(input: EventImageUploadInput!): CalendarEvent
signin(input: SigninInput!): UserSession!
signup(input: SignupInput!): [Error]
startEventRevision(input: StartEventRevisionInput!): CalendarEvent
submitEventRevision(input: ReviseEventInput!): CalendarEvent
unsetEventImage(id: UnsetEventImageInput!): CalendarEvent
updateEvent(input: UpdateEventInput!): CalendarEvent
updateEventTag(input: UpdateEventTagInput!): EventTag
}
type Query {
event(id: ID!): CalendarEvent
events(filter: EventsQueryFilter!): [CalendarEvent]
me: User
occurrence(id: ID!): EventOccurrence
occurrences(filter: OccurrencesQueryFilter!): [EventOccurrence]
revisions(filter: RevisionsQueryFilter!): [EventRevision]
tags: [EventTag]
user(id: ID!): User
}
type User {
email: String!
events: [CalendarEvent]!
id: ID!
name: String!
roles: [UserRole!]
username: String
}
type UserRole {
type: RoleType!
user: User!
}
type UserSession {
ctime: Date!
hash: String!
isValid: Boolean!
user: User!
}
enum CacheControlScope {
PRIVATE
PUBLIC
}
input CreateEventInput {
infos: [EventInformationInput]!
location: EventLocationInput!
publishedState: EventPublishedState!
tagNames: [String!]!
time: EventTimeInput!
}
input CreateEventTagInput {
name: String!
translations: [CreateModifyEventTagTranslationInput!]!
}
input CreateModifyEventTagTranslationInput {
language: String!
text: String!
}
input DeleteEventTagInput {
id: ID!
}
input EventGalleryImagesInput {
eventId: ID!
imageIds: [ID!]!
}
input EventImageUploadInput {
eventId: ID!
file: Upload!
imageType: EventImageType
}
input EventImagesUploadInput {
files: [Upload!]!
id: ID!
}
input EventInformationInput {
description: String
language: String!
title: String!
}
input EventLocationInput {
address: String
name: String
}
input EventRevisionInput {
revisionId: ID!
}
input EventTimeInput {
end: Timestamp!
exceptions: String
recurrence: String
start: Timestamp!
timeZone: TimeZone!
}
input EventsQueryFilter {
limit: Int
owner: ID
pendingRevision: Boolean
}
input GrantRoleInput {
roleType: RoleType!
userId: ID!
}
input OccurrencesQueryFilter {
categories: [Category]
from: Timestamp
limit: Int
timeZone: TimeZone
to: Timestamp
}
input RequestInviteInput {
email: String!
}
input RequestRevisionInput {
eventId: ID!
}
input ReviseEventInput {
comment: String
conclusion: String!
revisionId: ID!
}
input RevisionsQueryFilter {
limit: Int
}
input RevokeRoleInput {
roleType: RoleType!
userId: ID!
}
input SigninInput {
hash: String!
}
input SignupInput {
email: String!
name: String!
username: String!
}
input StartEventRevisionInput {
eventId: ID!
}
input UnsetEventImageInput {
eventId: ID!
imageType: EventImageType
}
input UpdateEventInput {
id: ID!
infos: [EventInformationInput!]
location: EventLocationInput
publishedState: EventPublishedState!
status: String
tagNames: [String!]!
time: EventTimeInput
}
input UpdateEventTagInput {
id: ID!
name: String!
translations: [CreateModifyEventTagTranslationInput!]!
}
scalar TimeZone
scalar Timestamp
scalar EventStatus
scalar EventPublishedState
scalar EventEventRevisionState
scalar Date
scalar RoleType
scalar Category
scalar EventImageType
"The `Upload` scalar type represents a file upload."
scalar Upload
scalar Translations
scalar Language