123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081 |
- "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;
- }
|