Some checks failed
Build & Deploy / 🔍 Prepare (push) Successful in 6s
Build & Deploy / 🧪 QA (push) Failing after 1m24s
Build & Deploy / 🏗️ Build (push) Failing after 4m3s
Build & Deploy / 🚀 Deploy (push) Has been skipped
Build & Deploy / 🩺 Health Check (push) Has been skipped
Build & Deploy / 🔔 Notify (push) Successful in 5s
- Refined hero sections for About, Blog, Websites, and Case Studies for a bespoke industrial entry point. - Redesigned Marker component using layered SVG paths for an organic, hand-drawn highlighter effect. - Restored technical precision in ArchitectureVisualizer with refined line thickness. - Streamlined contact page by removing generic headers and prioritizing the configurator/gateway. - Updated technical references to reflect self-hosted Gitea infrastructure. - Cleaned up unused imports and addressed linting warnings across modified pages.
97 lines
3.8 KiB
TypeScript
97 lines
3.8 KiB
TypeScript
import * as React from "react";
|
|
|
|
export const getInquiryEmailHtml = (data: any) => `
|
|
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<style>
|
|
body { font-family: 'Courier New', Courier, monospace; background-color: #0f172a; color: #f8fafc; margin: 0; padding: 20px; }
|
|
.container { max-width: 600px; margin: 0 auto; background-color: #1e293b; border: 1px solid #334155; padding: 40px; border-radius: 8px; }
|
|
.header { border-bottom: 2px solid #22c55e; padding-bottom: 20px; margin-bottom: 30px; }
|
|
.title { font-size: 24px; font-weight: bold; letter-spacing: 2px; color: #f8fafc; }
|
|
.label { color: #94a3b8; font-size: 12px; text-transform: uppercase; letter-spacing: 1px; margin-bottom: 4px; }
|
|
.value { font-size: 16px; margin-bottom: 20px; color: #22c55e; }
|
|
.section { margin-bottom: 30px; }
|
|
.footer { font-size: 10px; color: #64748b; margin-top: 40px; border-top: 1px solid #334155; padding-top: 20px; }
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<div class="container">
|
|
<div class="header">
|
|
<div class="title">NEUE_ANFRAGE_INPUT</div>
|
|
</div>
|
|
|
|
<div class="section">
|
|
<div class="label">ABSENDER</div>
|
|
<div class="value">${data.name} (${data.email})</div>
|
|
|
|
<div class="label">UNTERNEHMEN</div>
|
|
<div class="value">${data.companyName || "N/A"}</div>
|
|
|
|
<div class="label">PROJEKT_TYP</div>
|
|
<div class="value">${data.projectType}</div>
|
|
</div>
|
|
|
|
${
|
|
data.isFreeText
|
|
? `
|
|
<div class="section">
|
|
<div class="label">NACHRICHT (FREITEXT)</div>
|
|
<div class="value" style="white-space: pre-wrap; color: #f8fafc;">${data.message}</div>
|
|
</div>
|
|
`
|
|
: `
|
|
<div class="section">
|
|
<div class="label">KONFIGURATION</div>
|
|
<div class="value" style="font-size: 12px; color: #94a3b8; background: #0f172a; padding: 15px; border-radius: 4px;">
|
|
${JSON.stringify(data.config, null, 2)}
|
|
</div>
|
|
</div>
|
|
`
|
|
}
|
|
|
|
<div class="footer">
|
|
SISTEM_STATUS: VALIDATED<br>
|
|
TIMESTAMP: ${new Date().toISOString()}
|
|
</div>
|
|
</div>
|
|
</body>
|
|
</html>
|
|
`;
|
|
|
|
export const getConfirmationEmailHtml = (data: any) => `
|
|
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<style>
|
|
body { font-family: 'Courier New', Courier, monospace; background-color: #f8fafc; color: #0f172a; margin: 0; padding: 20px; }
|
|
.container { max-width: 600px; margin: 0 auto; background-color: #ffffff; border: 1px solid #e2e8f0; padding: 40px; border-radius: 12px; box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1); }
|
|
.header { text-align: center; margin-bottom: 40px; }
|
|
.status-badge { display: inline-block; padding: 4px 12px; background-color: #22c55e; color: #0f172a; font-size: 10px; font-weight: bold; border-radius: 9999px; margin-bottom: 16px; }
|
|
.title { font-size: 28px; font-weight: bold; letter-spacing: -0.02em; margin-bottom: 8px; }
|
|
.subtitle { color: #64748b; font-size: 16px; line-height: 1.5; }
|
|
.content { line-height: 1.6; color: #334155; margin-bottom: 40px; }
|
|
.footer { text-align: center; font-size: 12px; color: #94a3b8; border-top: 1px solid #f1f5f9; padding-top: 30px; }
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<div class="container">
|
|
<div class="header">
|
|
<div class="status-badge">SEQUENZ_INITIIERT</div>
|
|
<div class="title">Hallo ${data.name.split(" ")[0]},</div>
|
|
<div class="subtitle">vielen Dank für deine Anfrage.</div>
|
|
</div>
|
|
|
|
<div class="content">
|
|
<p>Ich habe deine Nachricht erhalten und schaue mir die Details zu <strong>${data.companyName || "deinem Projekt"}</strong> umgehend an.</p>
|
|
<p>Normalerweise melde ich mich innerhalb von 24 Stunden bei dir zurück, um die nächsten Schritte zu besprechen.</p>
|
|
</div>
|
|
|
|
<div class="footer">
|
|
© ${new Date().getFullYear()} mintel.me — Technical Problem Solving
|
|
</div>
|
|
</div>
|
|
</body>
|
|
</html>
|
|
`;
|