/** * Validate image * * @param path * @returns Error|true */ validateImage(path) { let buffer = readChunk.sync(path, 0, 12); let type = imageType(buffer); return new Promise((resolve, reject) => { if (this.validExtensions.indexOf(type.ext) === -1) { return reject(new Error(this.errors.url_image_invalid)); } resolve(type.ext); }); }
function loadBinary(image, base64Url) { const type = imageType(image); if (type) { switch (type.mime) { case 'image/png': return loadPNG(image); case 'image/jpeg': return loadJPEG(image); case 'image/tiff': return loadTIFF(image); default: return loadGeneric(getBase64(type.mime)); } } return loadGeneric(getBase64('application/octet-stream')); function getBase64(type) { if (base64Url) { return base64Url; } else { return toBase64URL(image, type); } } }