UNPKG

next-rest-framework

Version:

Next REST Framework - Type-safe, self-documenting APIs for Next.js

39 lines (37 loc) 1.07 kB
import "./chunk-SPFPWZVF.mjs"; // src/shared/form-data.ts import { Formidable } from "formidable"; import { readFileSync } from "fs"; var parseMultiPartFormData = async (req) => await new Promise((resolve, reject) => { const form = new Formidable(); setTimeout(() => { reject(new Error("Form parsing timeout.")); }, 1e4); form.parse(req, (err, fields, files) => { if (err) { reject(err); return; } const formData = new FormData(); Object.entries(fields).forEach(([key, value]) => { if (value?.[0]) { formData.append(key, value[0]); } }); Object.entries(files).forEach(([key, fileArray]) => { if (fileArray && fileArray.length > 0) { fileArray.forEach((file) => { const fileContent = readFileSync(file.filepath); const blob = new Blob([fileContent], { type: file.mimetype ?? "" }); formData.append(key, blob, file.originalFilename ?? ""); }); } }); resolve(formData); }); }); export { parseMultiPartFormData };