upload-apollo-client/api/resolvers.mjs
2017-10-02 16:50:25 +11:00

23 lines
484 B
JavaScript

import low from 'lowdb'
import FileSync from 'lowdb/adapters/FileSync'
const db = low(new FileSync('db.json'))
db.defaults({ uploads: [] }).write()
const saveFile = file =>
db
.get('uploads')
.push({ id: file.path, ...file })
.last()
.write()
export default {
Query: {
uploads: () => db.get('uploads').value()
},
Mutation: {
singleUpload: (_, { file }) => saveFile(file),
multipleUpload: (_, { files }) => Promise.all(files.map(saveFile))
}
}