UNPKG

whale-plus

Version:

A Component Library for Vue 3

45 lines (42 loc) 1.21 kB
import SparkMD5 from 'spark-md5'; function createChunk(file, index, chunkSize) { const start = index * chunkSize; const end = Math.min(start + chunkSize, file.size); const blob = file.slice(start, end); return { blob, start, end, hash: "", index }; } function calcChunkHash(chunk) { return new Promise((resolve) => { const spark = new SparkMD5.ArrayBuffer(); const fileReader = new FileReader(); fileReader.onload = (e) => { var _a; spark.append((_a = e.target) == null ? void 0 : _a.result); resolve(spark.end()); }; fileReader.readAsArrayBuffer(chunk.blob); }); } function calcChunkHashAndSparkResult(chunk) { return new Promise((resolve) => { const spark = new SparkMD5.ArrayBuffer(); const fileReader = new FileReader(); fileReader.onload = (e) => { var _a, _b; spark.append((_a = e.target) == null ? void 0 : _a.result); resolve({ sparkResult: (_b = e.target) == null ? void 0 : _b.result, hash: spark.end() }); }; fileReader.readAsArrayBuffer(chunk.blob); }); } export { calcChunkHash, calcChunkHashAndSparkResult, createChunk }; //# sourceMappingURL=FileChunk.mjs.map