Files
grungnet/src/helpers/blobToBuffer.js
2020-05-08 19:28:15 +10:00

25 lines
631 B
JavaScript

async function blobToBuffer(blob) {
if (blob.arrayBuffer) {
const arrayBuffer = await blob.arrayBuffer();
return new Uint8Array(arrayBuffer);
} else {
return new Promise((resolve, reject) => {
const reader = new FileReader();
function onLoadEnd(event) {
reader.removeEventListener("loadend", onLoadEnd, false);
if (event.error) {
reject(event.error);
} else {
resolve(Buffer.from(reader.result));
}
}
reader.addEventListener("loadend", onLoadEnd, false);
reader.readAsArrayBuffer(blob);
});
}
}
export default blobToBuffer;