File: /var/www/api.javaapp.co.uk/node_modules/@smithy/chunked-blob-reader/dist-es/index.js
export function blobReader(blob, onChunk, chunkSize = 1024 * 1024) {
return new Promise((resolve, reject) => {
const fileReader = new FileReader();
fileReader.addEventListener("error", reject);
fileReader.addEventListener("abort", reject);
const size = blob.size;
let totalBytesRead = 0;
function read() {
if (totalBytesRead >= size) {
resolve();
return;
}
fileReader.readAsArrayBuffer(blob.slice(totalBytesRead, Math.min(size, totalBytesRead + chunkSize)));
}
fileReader.addEventListener("load", (event) => {
const result = event.target.result;
onChunk(new Uint8Array(result));
totalBytesRead += result.byteLength;
read();
});
read();
});
}