UNPKG

file-fragment-upload

Version:

文件分片上传 获取文件hash值 文件分片

3 lines (2 loc) 1.19 kB
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,r=require("react"),t=require("react-dropzone"),n=(e=require("spark-md5"))&&"object"==typeof e&&"default"in e?e.default:e;exports.default=function(e){var n=r.useCallback((function(r){e.uploadFiles(r)}),[]),o=t.useDropzone({onDrop:n}),i=o.getInputProps;return r.createElement("div",Object.assign({},(0,o.getRootProps)()),r.createElement("input",Object.assign({type:"file",style:{display:"none"}},i())),e.children)},exports.getChunk=function(e,r,t){return(File.prototype.slice||File.prototype.mozSlice||File.prototype.webkitSlice).call(e,r,t)},exports.getFileHash=function(e,r){void 0===r&&(r=3145728);var t=File.prototype.slice;return new Promise((function(o,i){var a=Math.ceil(e.size/r),l=0,p=new n.ArrayBuffer,s=new FileReader;function u(){var n=l*r;s.readAsArrayBuffer(t.call(e,n,n+r>=e.size?e.size:n+r))}s.onload=function(r){if(r.target&&r.target.result)if(p.append(r.target.result),(l+=1)<a)u();else{var t=p.end(),i=new n;i.append(t),i.append(e.name);var s=i.end();o(s)}},s.onerror=function(e){i(e)},u()})).catch((function(e){console.error(e)}))}; //# sourceMappingURL=file-fragment-upload.cjs.production.min.js.map