'use server'; export async function uploadImage(formData: FormData) { try { const file = formData.get('file') as File; if (!file) { return { success: false, error: 'Aucun fichier fourni' }; } // Convert file to buffer const bytes = await file.arrayBuffer(); const buffer = Buffer.from(bytes); // Convert to Base64 const base64 = buffer.toString('base64'); let mimeType = file.type || 'image/jpeg'; // Normalize JPEG mime types if (mimeType === 'image/jpg' || mimeType === 'image/pjpeg') { mimeType = 'image/jpeg'; } const dataUrl = `data:${mimeType};base64,${base64}`; // Return the data URL directly (it will be saved in the database) return { success: true, url: dataUrl }; } catch (error) { console.error('Error during image conversion:', error); return { success: false, error: 'Erreur lors de la conversion de l\'image' }; } }