Make the contact form take up the full width of the page

Remove the links column and associated imports, and update the layout in `contact.tsx` to display the contact form as a full-width element.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 6f3329ae-2dcc-46cc-bf2e-f58b7a5fa805
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: f505d346-be4d-4267-9827-1b3b0d1a04bb
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/e678fe28-87ab-4437-945b-7a15e872a292/6f3329ae-2dcc-46cc-bf2e-f58b7a5fa805/vRxTy2Z
Replit-Helium-Checkpoint-Created: true
This commit is contained in:
joachimhummel
2026-05-15 16:23:19 +00:00
parent edc225680d
commit dfa571b631
2 changed files with 4 additions and 41 deletions

View File

@@ -1,23 +1,11 @@
import { motion } from "framer-motion";
import { ExternalLink, ArrowRight, Send, CheckCircle, AlertCircle, Loader2 } from "lucide-react";
import { Send, CheckCircle, AlertCircle, Loader2 } from "lucide-react";
import { useState } from "react";
import { useForm } from "react-hook-form";
import { zodResolver } from "@hookform/resolvers/zod";
import { z } from "zod";
import { useSendContactMessage } from "@workspace/api-client-react";
const links = [
{
label: "n8n Automation",
url: "https://n8n.io/creators/jhummel/",
desc: "Workflows & Automatisierungen auf n8n.io",
},
{
label: "Website",
url: "https://joachimhummel.de",
desc: "joachimhummel.de",
},
];
const contactSchema = z.object({
name: z.string().min(1, "Bitte geben Sie Ihren Namen ein").max(100),
@@ -210,35 +198,10 @@ export function Contact() {
</p>
</div>
<div className="grid grid-cols-1 md:grid-cols-2 gap-6">
<div className="flex flex-col gap-3">
{links.map((link) => (
<motion.a
key={link.label}
href={link.url}
target="_blank"
rel="noopener noreferrer"
whileHover={{ scale: 1.01 }}
className="flex items-center gap-4 px-5 py-4 rounded-xl bg-white border border-border card-hover group"
data-testid={`link-contact-${link.label.toLowerCase().replace(/\s/g, '-')}`}
>
<div className="w-9 h-9 rounded-lg bg-secondary flex items-center justify-center shrink-0">
<ExternalLink className="w-4 h-4 text-muted-foreground group-hover:text-primary transition-colors" />
</div>
<div className="flex-grow min-w-0">
<p className="text-sm font-semibold text-foreground">{link.label}</p>
<p className="text-xs text-muted-foreground truncate">{link.desc}</p>
</div>
<ArrowRight className="w-4 h-4 text-muted-foreground/40 group-hover:text-primary group-hover:translate-x-1 transition-all shrink-0" />
</motion.a>
))}
</div>
<div className="rounded-2xl bg-white border border-border p-6 shadow-sm">
<div className="rounded-2xl bg-white border border-border p-6 md:p-8 shadow-sm">
<h3 className="text-lg font-semibold text-foreground mb-5">Direkt schreiben</h3>
<ContactForm />
</div>
</div>
<div className="mt-12 pt-8 border-t border-border text-center text-sm text-muted-foreground">
Joachim Hummel &mdash; Senior IT-Consultant &middot; München

Binary file not shown.

After

Width:  |  Height:  |  Size: 310 KiB