@dabapps/django-s3-file-upload
Version:
Upload files from the browser to S3 - client side implementation
30 lines • 1.11 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var upload_file_to_s3_1 = require("./upload-file-to-s3");
exports.uploadFileWithLoading = function (actionSet, file, dispatch) {
dispatch({ type: actionSet.REQUEST });
return upload_file_to_s3_1.uploadFileToS3(file)
.then(function (data) {
dispatch({ type: actionSet.SUCCESS, payload: data });
return data;
})
.catch(function (error) {
dispatch({ type: actionSet.FAILURE, payload: error });
throw error;
});
};
exports.createFileUploadAction = function (actionSet, options) { return function (files) { return function (dispatch) {
dispatch({
type: actionSet.BEGIN,
payload: files.length,
});
var promises = files.map(function (file) {
return exports.uploadFileWithLoading(actionSet, file, dispatch);
});
return Promise.all(promises).catch(function (error) {
if (options && options.shouldRethrow && options.shouldRethrow(error)) {
throw error;
}
});
}; }; };
//# sourceMappingURL=actions.js.map