|
|
|
# ===============================================
|
|
|
|
# PAGES
|
|
|
|
# ===============================================
|
|
|
|
|
|
|
|
extend type Query {
|
|
|
|
pages: PageQuery
|
|
|
|
}
|
|
|
|
|
|
|
|
extend type Mutation {
|
|
|
|
pages: PageMutation
|
|
|
|
}
|
|
|
|
|
|
|
|
# -----------------------------------------------
|
|
|
|
# QUERIES
|
|
|
|
# -----------------------------------------------
|
|
|
|
|
|
|
|
type PageQuery {
|
|
|
|
history(
|
|
|
|
id: Int!
|
|
|
|
offset: Int
|
|
|
|
): [PageHistory]
|
|
|
|
|
|
|
|
list(
|
|
|
|
filter: String
|
|
|
|
orderBy: String
|
|
|
|
): [PageMinimal]
|
|
|
|
|
|
|
|
single(
|
|
|
|
id: Int
|
|
|
|
path: String
|
|
|
|
locale: String
|
|
|
|
isPrivate: Boolean
|
|
|
|
): Page
|
|
|
|
}
|
|
|
|
|
|
|
|
# -----------------------------------------------
|
|
|
|
# MUTATIONS
|
|
|
|
# -----------------------------------------------
|
|
|
|
|
|
|
|
type PageMutation {
|
|
|
|
create(
|
|
|
|
content: String!
|
|
|
|
description: String!
|
|
|
|
editor: String!
|
|
|
|
isPublished: Boolean!
|
|
|
|
isPrivate: Boolean!
|
|
|
|
locale: String!
|
|
|
|
path: String!
|
|
|
|
publishEndDate: Date
|
|
|
|
publishStartDate: Date
|
|
|
|
tags: [String]!
|
|
|
|
title: String!
|
|
|
|
): PageResponse @auth(requires: ["write:pages", "manage:pages", "manage:system"])
|
|
|
|
|
|
|
|
update(
|
|
|
|
id: Int!
|
|
|
|
content: String
|
|
|
|
description: String
|
|
|
|
editor: String
|
|
|
|
isPrivate: Boolean
|
|
|
|
isPublished: Boolean
|
|
|
|
locale: String
|
|
|
|
path: String
|
|
|
|
publishEndDate: Date
|
|
|
|
publishStartDate: Date
|
|
|
|
tags: [String]
|
|
|
|
title: String
|
|
|
|
): PageResponse @auth(requires: ["manage:pages", "manage:system"])
|
|
|
|
|
|
|
|
delete(
|
|
|
|
id: Int!
|
|
|
|
): DefaultResponse @auth(requires: ["delete:pages", "manage:system"])
|
|
|
|
}
|
|
|
|
|
|
|
|
# -----------------------------------------------
|
|
|
|
# TYPES
|
|
|
|
# -----------------------------------------------
|
|
|
|
|
|
|
|
type PageResponse {
|
|
|
|
responseResult: ResponseStatus!
|
|
|
|
page: Page
|
|
|
|
}
|
|
|
|
|
|
|
|
type PageMinimal {
|
|
|
|
id: Int!
|
|
|
|
name: String!
|
|
|
|
userCount: Int
|
|
|
|
createdAt: Date!
|
|
|
|
updatedAt: Date!
|
|
|
|
}
|
|
|
|
|
|
|
|
type Page {
|
|
|
|
id: Int!
|
|
|
|
name: String!
|
|
|
|
rights: [Right]
|
|
|
|
users: [User]
|
|
|
|
createdAt: Date!
|
|
|
|
updatedAt: Date!
|
|
|
|
}
|
|
|
|
|
|
|
|
type PageHistory {
|
|
|
|
versionId: Int!
|
|
|
|
authorId: Int!
|
|
|
|
authorName: String!
|
|
|
|
actionType: String!
|
|
|
|
valueBefore: String
|
|
|
|
valueAfter: String
|
|
|
|
createdAt: Date!
|
|
|
|
}
|