UNPKG

laravel-form-validation

Version:
47 lines (46 loc) 1.05 kB
/** * Check if the given data contains any instance of File. * * @param {Object} data * @return {Boolean} */ var hasFile = function (data) { for (var property in data) { if (hasFileDeep(data[property])) { return true; } } return false; }; /** * Determines if object is file. * * @param {Object} item * @returns {boolean} */ var isFile = function (item) { return item instanceof Blob || item instanceof FileList; }; /** * Check if the given item is (or contains) a File. * * @param {Object|Array} item * @return {Boolean} */ var hasFileDeep = function (item) { if (isFile(item)) { return true; } if (typeof item === 'object') { for (var key in item) { if (item.hasOwnProperty(key) && hasFileDeep(item[key])) { return true; } } } if (Array.isArray(item)) { return item.some(function (element) { return hasFileDeep(element); }); } return false; }; export { hasFile, isFile, hasFileDeep };