first
This commit is contained in:
81
node_modules/vant/lib/uploader/utils.js
generated
vendored
Normal file
81
node_modules/vant/lib/uploader/utils.js
generated
vendored
Normal file
@ -0,0 +1,81 @@
|
||||
"use strict";
|
||||
|
||||
exports.__esModule = true;
|
||||
exports.toArray = toArray;
|
||||
exports.readFile = readFile;
|
||||
exports.isOversize = isOversize;
|
||||
exports.isImageUrl = isImageUrl;
|
||||
exports.isImageFile = isImageFile;
|
||||
|
||||
var _utils = require("../utils");
|
||||
|
||||
function toArray(item) {
|
||||
if (Array.isArray(item)) {
|
||||
return item;
|
||||
}
|
||||
|
||||
return [item];
|
||||
}
|
||||
|
||||
function readFile(file, resultType) {
|
||||
return new Promise(function (resolve) {
|
||||
if (resultType === 'file') {
|
||||
resolve(null);
|
||||
return;
|
||||
}
|
||||
|
||||
var reader = new FileReader();
|
||||
|
||||
reader.onload = function (event) {
|
||||
resolve(event.target.result);
|
||||
};
|
||||
|
||||
if (resultType === 'dataUrl') {
|
||||
reader.readAsDataURL(file);
|
||||
} else if (resultType === 'text') {
|
||||
reader.readAsText(file);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function isOversize(files, maxSize) {
|
||||
return toArray(files).some(function (file) {
|
||||
if (file) {
|
||||
if ((0, _utils.isFunction)(maxSize)) {
|
||||
return maxSize(file);
|
||||
}
|
||||
|
||||
return file.size > maxSize;
|
||||
}
|
||||
|
||||
return false;
|
||||
});
|
||||
}
|
||||
|
||||
var IMAGE_REGEXP = /\.(jpeg|jpg|gif|png|svg|webp|jfif|bmp|dpg)/i;
|
||||
|
||||
function isImageUrl(url) {
|
||||
return IMAGE_REGEXP.test(url);
|
||||
}
|
||||
|
||||
function isImageFile(item) {
|
||||
// some special urls cannot be recognized
|
||||
// user can add `isImage` flag to mark it as an image url
|
||||
if (item.isImage) {
|
||||
return true;
|
||||
}
|
||||
|
||||
if (item.file && item.file.type) {
|
||||
return item.file.type.indexOf('image') === 0;
|
||||
}
|
||||
|
||||
if (item.url) {
|
||||
return isImageUrl(item.url);
|
||||
}
|
||||
|
||||
if (item.content) {
|
||||
return item.content.indexOf('data:image') === 0;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
Reference in New Issue
Block a user