1
0
Fork 0
mirror of synced 2024-09-27 23:01:51 +12:00
budibase/packages/server/src/utilities/fileProcessor.js

25 lines
520 B
JavaScript
Raw Normal View History

2020-09-18 03:36:39 +12:00
const fs = require("fs")
const sharp = require("sharp")
const fsPromises = fs.promises
2020-09-17 23:45:28 +12:00
const FORMATS = {
IMAGES: ["png", "jpg", "jpeg", "gif", "svg", "tiff", "raw"],
}
function processImage({ path, outputPath }) {
2020-09-18 03:36:39 +12:00
return sharp(path)
2020-09-17 23:45:28 +12:00
.resize(300)
.toFile(outputPath)
}
function process(file) {
if (FORMATS.IMAGES.includes(file.extension.toLowerCase())) {
2020-09-18 03:36:39 +12:00
return processImage(file)
2020-09-17 23:45:28 +12:00
}
// No processing required
2020-09-18 03:36:39 +12:00
return fsPromises.copyFile(file.path, file.outputPath)
2020-09-17 23:45:28 +12:00
}
2020-09-18 03:36:39 +12:00
exports.process = process