feat: file resolvers + pull changes from master

This commit is contained in:
NGPixel
2017-09-04 13:03:15 -04:00
parent 574e4b97f4
commit 35cb56c694
10 changed files with 459 additions and 313 deletions

View File

@@ -53,10 +53,9 @@ module.exports = {
self.onReady = (wiki.IS_MASTER) ? self._initRepo() : Promise.resolve()
// Define signature
if (wiki.config.git) {
self._signature.email = wiki.config.git.serverEmail || 'wiki@example.com'
self._repo.branch = appconfig.git.branch || 'master'
self._signature.email = appconfig.git.serverEmail || 'wiki@example.com'
}
return self

View File

@@ -12,6 +12,7 @@ const typeDefs = fs.readFileSync(path.join(wiki.SERVERPATH, 'schemas/types.graph
const DateScalar = require('../schemas/scalar-date')
const CommentResolvers = require('../schemas/resolvers-comment')
const DocumentResolvers = require('../schemas/resolvers-document')
const FileResolvers = require('../schemas/resolvers-file')
const FolderResolvers = require('../schemas/resolvers-folder')
const GroupResolvers = require('../schemas/resolvers-group')
const SettingResolvers = require('../schemas/resolvers-setting')
@@ -21,6 +22,7 @@ const UserResolvers = require('../schemas/resolvers-user')
const resolvers = _.merge(
CommentResolvers,
DocumentResolvers,
FileResolvers,
FolderResolvers,
GroupResolvers,
SettingResolvers,

View File

@@ -0,0 +1,52 @@
'use strict'
/* global wiki */
const gql = require('graphql')
module.exports = {
Query: {
files(obj, args, context, info) {
return wiki.db.File.findAll({ where: args })
}
},
Mutation: {
uploadFile(obj, args) {
// todo
return wiki.db.File.create(args)
},
deleteFile(obj, args) {
return wiki.db.File.destroy({
where: {
id: args.id
},
limit: 1
})
},
renameFile(obj, args) {
return wiki.db.File.update({
filename: args.filename
}, {
where: { id: args.id }
})
},
moveFile(obj, args) {
return wiki.db.File.findById(args.fileId).then(fl => {
if (!fl) {
throw new gql.GraphQLError('Invalid File ID')
}
return wiki.db.Folder.findById(args.folderId).then(fld => {
if (!fld) {
throw new gql.GraphQLError('Invalid Folder ID')
}
return fl.setFolder(fld)
})
})
}
},
File: {
folder(fl) {
return fl.getFolder()
}
}
}

View File

@@ -206,6 +206,10 @@ type Mutation {
id: Int!
): OperationResult
deleteFile(
id: Int!
): OperationResult
deleteFolder(
id: Int!
): OperationResult
@@ -255,6 +259,16 @@ type Mutation {
path: String!
): OperationResult
moveFile(
id: Int!
folderId: Int!
): OperationResult
renameFile(
id: Int!
name: String!
): OperationResult
renameFolder(
id: Int!
name: String!
@@ -297,4 +311,9 @@ type Mutation {
id: Int!
passwordRaw: String!
): OperationResult
uploadFile(
category: FileType!
filename: String!
): File
}