UNPKG

@alifd/next

Version:

A configurable component library for web built on React.

47 lines (46 loc) 1.43 kB
var now = +new Date(); export function uid() { return (now++).toString(36); } export function fileToObject(file) { if (!file.uid) { file.uid = uid(); } return { lastModified: file.lastModified, lastModifiedDate: file.lastModifiedDate, name: file.filename || file.name, size: file.size, type: file.type, uid: file.uid, error: file.error, percent: 0, originFileObj: file, }; } export function getFileItem(file, fileList) { if (!file) { return null; } var matchKey = file.uid !== undefined ? 'uid' : 'name'; return fileList.filter(function (item) { return item[matchKey] === file[matchKey]; })[0]; } export function removeFileItem(file, fileList) { var matchKey = file.uid !== undefined ? 'uid' : 'name'; var removed = fileList.filter(function (item) { return item[matchKey] !== file[matchKey]; }); if (removed.length === fileList.length) { return null; } return removed; } // https://developer.mozilla.org/en-US/docs/Web/API/FileReader/readAsDataURL export function previewFile(file, callback) { var reader = new FileReader(); reader.onloadend = function () { return callback(reader.result); }; reader.readAsDataURL(file); } export var errorCode = { EXCEED_LIMIT: 'EXCEED_LIMIT', BEFOREUPLOAD_REJECT: 'BEFOREUPLOAD_REJECT', RESPONSE_FAIL: 'RESPONSE_FAIL', };