UNPKG

react-native-surveys

Version:

Build your own forms, surveys and polls for your React Native apps.

27 lines (23 loc) 832 B
import "core-js/fn/array/some"; import "core-js/fn/string/ends-with"; export default function(file, acceptedFiles) { if (file && acceptedFiles) { const acceptedFilesArray = Array.isArray(acceptedFiles) ? acceptedFiles : acceptedFiles.split(","); const fileName = file.name || ""; const mimeType = file.type || ""; const baseMimeType = mimeType.replace(/\/.*$/, ""); return acceptedFilesArray.some(type => { const validType = type.trim(); if (validType.charAt(0) === ".") { return fileName.toLowerCase().endsWith(validType.toLowerCase()); } else if (validType.endsWith("/*")) { // This is something like a image/* mime type return baseMimeType === validType.replace(/\/.*$/, ""); } return mimeType === validType; }); } return true; }