diff --git a/components/ComposeEmail.tsx b/components/ComposeEmail.tsx index b730f479..76e7c7d1 100644 --- a/components/ComposeEmail.tsx +++ b/components/ComposeEmail.tsx @@ -101,12 +101,11 @@ export default function ComposeEmail({ }) .then(response => response.json()) .then(parsed => { - // Create the reply/forward structure + // Create a single editable area with the reply/forward structure content = ` -
-
+
${forwardFrom ? ` -
+
---------- Forwarded message ---------
From: ${forwardFrom.from}
Date: ${new Date(forwardFrom.date).toLocaleString()}
@@ -117,10 +116,10 @@ export default function ComposeEmail({ ${parsed.html || parsed.text}
` : ` -
+
On ${new Date(replyTo?.date || '').toLocaleString()}, ${replyTo?.from} wrote:
-
+
${parsed.html || parsed.text}
`} @@ -176,11 +175,7 @@ export default function ComposeEmail({ const composeArea = composeBodyRef.current.querySelector('.compose-area'); if (!composeArea) return; - // Get the quoted content if it exists - const quotedContent = composeBodyRef.current.querySelector('.quoted-content'); - - // Combine compose area and quoted content - const content = composeArea.innerHTML + (quotedContent ? quotedContent.outerHTML : ''); + const content = composeArea.innerHTML; if (!content.trim()) { console.warn('Email content is empty'); @@ -220,16 +215,12 @@ export default function ComposeEmail({ } // Get the current content - const composeContent = composeArea.innerHTML; - if (!composeContent.trim()) { + const content = composeArea.innerHTML; + if (!content.trim()) { console.error('Email content is empty'); return; } - // Get the quoted content if it exists - const quotedContent = composeBodyRef.current.querySelector('.quoted-content'); - const fullContent = composeContent + (quotedContent ? quotedContent.outerHTML : ''); - // Create MIME headers const mimeHeaders = { 'MIME-Version': '1.0', @@ -240,7 +231,7 @@ export default function ComposeEmail({ // Combine headers and content const mimeContent = Object.entries(mimeHeaders) .map(([key, value]) => `${key}: ${value}`) - .join('\n') + '\n\n' + fullContent; + .join('\n') + '\n\n' + content; setComposeBody(mimeContent);