1
0
Fork 0
mirror of https://github.com/pawelmalak/flame.git synced 2025-07-19 03:29:37 +02:00
flame/middleware/multer.js
2022-02-06 08:21:01 -05:00

40 lines
761 B
JavaScript

const fs = require('fs');
const multer = require('multer');
if (!fs.existsSync('data/uploads')) {
fs.mkdirSync('data/uploads', { recursive: true });
}
const storage = multer.diskStorage({
destination: (req, file, cb) => {
cb(null, './data/uploads');
},
filename: (req, file, cb) => {
cb(null, Date.now() + '--' + file.originalname);
},
});
const supportedTypes = [
'jpg',
'jpeg',
'png',
'svg',
'svg+xml',
'x-icon',
'html',
];
const fileFilter = (req, file, cb) => {
if (supportedTypes.includes(file.mimetype.split('/')[1])) {
cb(null, true);
} else {
cb(null, false);
}
};
const upload = multer({ storage, fileFilter });
module.exports = {
icon: upload.single('icon'),
bookmark: upload.single('file'),
};