upload-apollo-client/api/resolvers.js
2017-04-25 15:50:09 +10:00

36 lines
612 B
JavaScript

import low from 'lowdb'
import storage from 'lowdb/lib/storages/file-async'
const db = low('db.json', {
storage
})
db.defaults({
uploads: []
}).write()
const saveFile = file => {
return db.get('uploads')
.push({
id: file.path,
...file
})
.last()
.write()
.then(result => result)
}
export default {
Query: {
uploads () {
return db.get('uploads').value()
}
},
Mutation: {
singleUpload: (_, {file}) => saveFile(file),
multipleUpload (_, {files}) {
return Promise.all(files.map(file => saveFile(file))).then(results => results)
}
}
}