mirror of https://github.com/requarks/wiki
parent
62067caa62
commit
437b88bf58
@ -0,0 +1,14 @@
|
|||||||
|
'use strict'
|
||||||
|
|
||||||
|
/* global wiki */
|
||||||
|
|
||||||
|
module.exports = {
|
||||||
|
Query(obj, args, context, info) {
|
||||||
|
return wiki.db.Group.findAll({ where: args })
|
||||||
|
},
|
||||||
|
Type: {
|
||||||
|
users(grp) {
|
||||||
|
return grp.getUsers()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,14 @@
|
|||||||
|
'use strict'
|
||||||
|
|
||||||
|
/* global wiki */
|
||||||
|
|
||||||
|
module.exports = {
|
||||||
|
Query(obj, args, context, info) {
|
||||||
|
return wiki.db.User.findAll({ where: args })
|
||||||
|
},
|
||||||
|
Type: {
|
||||||
|
groups(usr) {
|
||||||
|
return usr.getGroups()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,136 @@
|
|||||||
|
# SCALARS
|
||||||
|
|
||||||
|
scalar Date
|
||||||
|
|
||||||
|
# ENUMS
|
||||||
|
|
||||||
|
enum UserRole {
|
||||||
|
guest
|
||||||
|
user
|
||||||
|
admin
|
||||||
|
}
|
||||||
|
|
||||||
|
enum FileType {
|
||||||
|
binary
|
||||||
|
image
|
||||||
|
}
|
||||||
|
|
||||||
|
enum RightRole {
|
||||||
|
read
|
||||||
|
write
|
||||||
|
manage
|
||||||
|
}
|
||||||
|
|
||||||
|
# INTERFACES
|
||||||
|
|
||||||
|
interface Base {
|
||||||
|
id: Int!
|
||||||
|
createdOn: Date
|
||||||
|
updatedOn: Date
|
||||||
|
}
|
||||||
|
|
||||||
|
# TYPES
|
||||||
|
|
||||||
|
type Comment implements Base {
|
||||||
|
id: Int!
|
||||||
|
createdOn: Date
|
||||||
|
updatedOn: Date
|
||||||
|
content: String
|
||||||
|
document: Document!
|
||||||
|
author: User!
|
||||||
|
}
|
||||||
|
|
||||||
|
type Document implements Base {
|
||||||
|
id: Int!
|
||||||
|
createdOn: Date
|
||||||
|
updatedOn: Date
|
||||||
|
path: String!
|
||||||
|
title: String!
|
||||||
|
subtitle: String
|
||||||
|
parentPath: String
|
||||||
|
parentTitle: String
|
||||||
|
isDirectory: Boolean!
|
||||||
|
isEntry: Boolean!
|
||||||
|
searchContent: String
|
||||||
|
tags: [Tag]
|
||||||
|
}
|
||||||
|
|
||||||
|
type File implements Base {
|
||||||
|
id: Int!
|
||||||
|
createdOn: Date
|
||||||
|
updatedOn: Date
|
||||||
|
category: FileType!
|
||||||
|
mime: String!
|
||||||
|
extra: String
|
||||||
|
filename: String!
|
||||||
|
basename: String!
|
||||||
|
filesize: Int!
|
||||||
|
folder: Folder
|
||||||
|
}
|
||||||
|
|
||||||
|
type Folder implements Base {
|
||||||
|
id: Int!
|
||||||
|
createdOn: Date
|
||||||
|
updatedOn: Date
|
||||||
|
name: String!
|
||||||
|
}
|
||||||
|
|
||||||
|
type Group implements Base {
|
||||||
|
id: Int!
|
||||||
|
createdOn: Date
|
||||||
|
updatedOn: Date
|
||||||
|
name: String!
|
||||||
|
users: [User]
|
||||||
|
rights: [Right]
|
||||||
|
}
|
||||||
|
|
||||||
|
type Right implements Base {
|
||||||
|
id: Int!
|
||||||
|
createdOn: Date
|
||||||
|
updatedOn: Date
|
||||||
|
path: String!
|
||||||
|
role: RightRole!
|
||||||
|
exact: Boolean!
|
||||||
|
allow: Boolean!
|
||||||
|
}
|
||||||
|
|
||||||
|
type Setting implements Base {
|
||||||
|
id: Int!
|
||||||
|
createdOn: Date
|
||||||
|
updatedOn: Date
|
||||||
|
key: String!
|
||||||
|
config: String!
|
||||||
|
}
|
||||||
|
|
||||||
|
type Tag implements Base {
|
||||||
|
id: Int!
|
||||||
|
createdOn: Date
|
||||||
|
updatedOn: Date
|
||||||
|
key: String!
|
||||||
|
}
|
||||||
|
|
||||||
|
type User implements Base {
|
||||||
|
id: Int!
|
||||||
|
createdOn: Date
|
||||||
|
updatedOn: Date
|
||||||
|
email: String!
|
||||||
|
provider: String
|
||||||
|
providerId: String
|
||||||
|
name: String
|
||||||
|
role: UserRole!
|
||||||
|
groups: [Group]
|
||||||
|
}
|
||||||
|
|
||||||
|
# QUERY
|
||||||
|
|
||||||
|
type Query {
|
||||||
|
comments(id: Int): [Comment]
|
||||||
|
documents(id: Int, path: String): [Document]
|
||||||
|
files(id: Int): [File]
|
||||||
|
folders(id: Int, name: String): [Folder]
|
||||||
|
groups(id: Int, name: String): [Group]
|
||||||
|
rights(id: Int): [Right]
|
||||||
|
settings(key: String): [Setting]
|
||||||
|
tags(key: String): [Tag]
|
||||||
|
users(id: Int, email: String, provider: String, providerId: String, role: UserRole): [User]
|
||||||
|
}
|
Loading…
Reference in new issue