@synapsestudios/react-drop-n-crop
Version:
A combined implementation of react-dropzone and react-cropper
27 lines (22 loc) • 688 B
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = dataUrlToFile;
function dataUrlToFile(dataUrl, filename) {
var byteString = void 0;
if (dataUrl.split(',')[0].indexOf('base64') >= 0) {
byteString = atob(dataUrl.split(',')[1]);
} else {
byteString = unescape(dataUrl.split(',')[1]);
}
var mimeString = dataUrl.split(',')[0].split(':')[1].split(';')[0];
var ia = new Uint8Array(byteString.length);
for (var i = 0; i < byteString.length; i++) {
ia[i] = byteString.charCodeAt(i);
}
var file = new Blob([ia], { type: mimeString });
file.name = filename;
file.lastModifiedDate = new Date();
return file;
}