UNPKG

payload

Version:

Node, React, Headless CMS and Application Framework built on Next.js

24 lines (23 loc) 876 B
// @ts-strict-ignore import fs from 'fs/promises'; import { imageSize } from 'image-size'; import { imageSizeFromFile } from 'image-size/fromFile'; import { temporaryFileTask } from './tempFile.js'; export async function getImageSize(file) { if (file.tempFilePath) { return imageSizeFromFile(file.tempFilePath); } // Tiff file do not support buffers or streams, so we must write to file first // then retrieve dimensions. https://github.com/image-size/image-size/issues/103 if (file.mimetype === 'image/tiff') { const dimensions = await temporaryFileTask(async (filepath)=>{ await fs.writeFile(filepath, file.data); return imageSizeFromFile(filepath); }, { extension: 'tiff' }); return dimensions; } return imageSize(file.data); } //# sourceMappingURL=getImageSize.js.map