// License: LGPL-3.0-or-later const flyd = require('flyd') const R = require('ramda') const activestorage = require('../../common/activestorage') // Pass in a stream of Input Nodes with type file // Make a post request to our server to start the import // Will create a backgrounded job and email the user when // completed // Returns a stream of {uri: 'uri of uploaded file on s3', formData: 'original form data'} const uploadFile = (controllerUrl) => { return R.curry(input => { const $stream = flyd.stream() activestorage.uploadFile(controllerUrl, input.files[0]).then((blob) => $stream(blob)) return $stream; }) } module.exports = uploadFile