Fix TypeScript syntax error in NIP-95 upload proxy endpoint by using interface

This commit is contained in:
Nicolas Cantu 2025-12-29 00:20:26 +01:00
parent 2b57b1d445
commit 970f8761ac

View File

@ -12,6 +12,11 @@ export const config = {
}, },
} }
interface ParseResult {
fields: Record<string, string[]>
files: Record<string, FormidableFile[]>
}
export default async function handler(req: NextApiRequest, res: NextApiResponse) { export default async function handler(req: NextApiRequest, res: NextApiResponse) {
if (req.method !== 'POST') { if (req.method !== 'POST') {
return res.status(405).json({ error: 'Method not allowed' }) return res.status(405).json({ error: 'Method not allowed' })
@ -24,14 +29,14 @@ export default async function handler(req: NextApiRequest, res: NextApiResponse)
keepExtensions: true, keepExtensions: true,
}) })
const [fields, files] = await new Promise<[Record<string, string[]>, Record<string, FormidableFile[]>>>( const parseResult = await new Promise<ParseResult>((resolve, reject) => {
(resolve, reject) => { form.parse(req, (err, fields, files) => {
form.parse(req, (err, fields, files) => { if (err) reject(err)
if (err) reject(err) else resolve({ fields: fields as Record<string, string[]>, files: files as Record<string, FormidableFile[]> })
else resolve([fields as Record<string, string[]>, files as Record<string, FormidableFile[]>]) })
}) })
}
) const { fields, files } = parseResult
// Get the file from the parsed form // Get the file from the parsed form
const fileField = files.file?.[0] const fileField = files.file?.[0]
@ -79,4 +84,3 @@ export default async function handler(req: NextApiRequest, res: NextApiResponse)
}) })
} }
} }