diff --git a/app/courrier/page.tsx b/app/courrier/page.tsx
index c0efc0be..5f25efce 100644
--- a/app/courrier/page.tsx
+++ b/app/courrier/page.tsx
@@ -1671,6 +1671,8 @@ export default function CourrierPage() {
attachments={attachments}
setAttachments={setAttachments}
handleSend={handleSend}
+ replyTo={selectedEmail || undefined}
+ forwardFrom={selectedEmail || undefined}
onSend={(email) => {
// Handle the sent email
console.log('Email sent:', email);
diff --git a/components/ComposeEmail.tsx b/components/ComposeEmail.tsx
index 28d74f50..cd019c19 100644
--- a/components/ComposeEmail.tsx
+++ b/components/ComposeEmail.tsx
@@ -41,8 +41,8 @@ interface ComposeEmailProps {
initialBody?: string;
initialCc?: string;
initialBcc?: string;
- replyTo?: Email;
- forwardFrom?: Email;
+ replyTo?: Email | null;
+ forwardFrom?: Email | null;
}
export default function ComposeEmail({
@@ -83,13 +83,14 @@ export default function ComposeEmail({
useEffect(() => {
if (composeBodyRef.current) {
// Initialize the content structure
- const originalContent = originalEmail?.content || '';
- composeBodyRef.current.innerHTML = `
+ const originalContent = replyTo || forwardFrom ? `
- ${originalContent}
+ ${composeBody}
- `;
+ ` : composeBody;
+
+ composeBodyRef.current.innerHTML = originalContent;
// Place cursor at the beginning of new reply area
const newReplyArea = composeBodyRef.current.querySelector('#new-reply-area');
@@ -102,8 +103,8 @@ export default function ComposeEmail({
sel?.addRange(range);
}
}
- }, [originalEmail]); // Run when originalEmail changes
-
+ }, [composeBody, replyTo, forwardFrom]);
+
// Modified input handler to prevent nested structures
const handleInput = (e: React.FormEvent) => {
if (!composeBodyRef.current) return;
@@ -188,23 +189,13 @@ export default function ComposeEmail({
{/* Modal Header */}
- {composeSubject.startsWith('Re:') ? 'Reply' :
- composeSubject.startsWith('Fwd:') ? 'Forward' : 'New Message'}
+ {replyTo ? 'Reply' : forwardFrom ? 'Forward' : 'New Message'}
@@ -284,16 +275,16 @@ export default function ComposeEmail({
{/* Original Email Content Preview */}
- {originalEmail && (
+ {(replyTo || forwardFrom) && (
- {originalEmail.type === 'forward' ? 'Forwarded Message' : 'Original Message'}
+ {forwardFrom ? 'Forwarded Message' : 'Original Message'}
)}
@@ -346,7 +337,7 @@ export default function ComposeEmail({