mail page rest

This commit is contained in:
alma 2025-04-21 14:05:05 +02:00
parent 35b5a442dd
commit 38a507d51e

View File

@ -532,11 +532,31 @@ function renderEmailContent(email: Email) {
));
return (
<div className="prose max-w-none">
<div className="prose max-w-none dark:prose-invert">
{isHtml ? (
<div dangerouslySetInnerHTML={{ __html: content }} />
<div
className="prose prose-sm sm:prose lg:prose-lg xl:prose-xl dark:prose-invert max-w-none"
dangerouslySetInnerHTML={{
__html: content
.replace(/<style[^>]*>[\s\S]*?<\/style>/gi, '')
.replace(/<script[^>]*>[\s\S]*?<\/script>/gi, '')
.replace(/<base[^>]*>/gi, '')
.replace(/<meta[^>]*>/gi, '')
.replace(/<link[^>]*>/gi, '')
.replace(/<title[^>]*>[\s\S]*?<\/title>/gi, '')
.replace(/<head[^>]*>[\s\S]*?<\/head>/gi, '')
.replace(/<body[^>]*>/gi, '')
.replace(/<\/body>/gi, '')
.replace(/<html[^>]*>/gi, '')
.replace(/<\/html>/gi, '')
}}
/>
) : (
<div className="whitespace-pre-wrap">{content}</div>
<div className="whitespace-pre-wrap font-sans text-base leading-relaxed">
{content.split('\n').map((line, i) => (
<p key={i} className="mb-2">{line}</p>
))}
</div>
)}
{attachmentElements}
</div>