anatolian2/components/layout/Footer.tsx
Temmuz Aslan 591d878ac6 Initial commit: The Anatolian Edit website
Next.js 14 website with standalone output configured for Docker deployment.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15 22:34:25 +03:00

132 lines
7.4 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import Link from "next/link";
import { SITE_NAME, EMAIL, INSTAGRAM, WHATSAPP_NUMBER, WHATSAPP_MESSAGE } from "@/lib/constants";
import { NewsletterSignup } from "@/components/shared/NewsletterSignup";
const experienceLinks = [
{ href: "/experiences/the-other-side", label: "The Other Side" },
{ href: "/experiences/first-light", label: "First Light" },
{ href: "/experiences/after-dark", label: "After Dark" },
];
const companyLinks = [
{ href: "/about", label: "About Us" },
{ href: "/blog", label: "The Edit (Blog)" },
{ href: "/faq", label: "FAQ" },
{ href: "/contact", label: "Contact" },
];
export function Footer() {
const whatsappUrl = `https://wa.me/${WHATSAPP_NUMBER.replace("+", "")}?text=${encodeURIComponent(WHATSAPP_MESSAGE)}`;
return (
<footer className="bg-deep-nazar text-white">
<div className="max-w-7xl mx-auto px-5 sm:px-8 py-16 md:py-20">
<div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-12 mb-16">
<div className="lg:col-span-1">
<div className="flex items-center gap-2 mb-4">
<div className="w-8 h-8 rounded-full bg-bosphorus flex items-center justify-center">
<div className="w-4 h-4 rounded-full bg-white flex items-center justify-center">
<div className="w-2 h-2 rounded-full bg-bosphorus" />
</div>
</div>
<span className="font-display font-bold text-lg">{SITE_NAME}</span>
</div>
<p className="text-white/60 text-sm mb-6 leading-relaxed">
Istanbul&apos;s Asian Side, Edited for You.
<br />
Based in Kadıköy, Istanbul on the right side of the Bosphorus.
</p>
<div className="flex gap-4">
<a
href={`https://instagram.com/${INSTAGRAM}`}
target="_blank"
rel="noopener noreferrer"
className="w-10 h-10 rounded-full bg-white/10 flex items-center justify-center hover:bg-bosphorus transition-colors"
aria-label="Instagram"
>
<svg className="w-5 h-5" fill="currentColor" viewBox="0 0 24 24">
<path d="M12 2.163c3.204 0 3.584.012 4.85.07 3.252.148 4.771 1.691 4.919 4.919.058 1.265.069 1.645.069 4.849 0 3.205-.012 3.584-.069 4.849-.149 3.225-1.664 4.771-4.919 4.919-1.266.058-1.644.07-4.85.07-3.204 0-3.584-.012-4.849-.07-3.26-.149-4.771-1.699-4.919-4.92-.058-1.265-.07-1.644-.07-4.849 0-3.204.013-3.583.07-4.849.149-3.227 1.664-4.771 4.919-4.919 1.266-.057 1.645-.069 4.849-.069zM12 0C8.741 0 8.333.014 7.053.072 2.695.272.273 2.69.073 7.052.014 8.333 0 8.741 0 12c0 3.259.014 3.668.072 4.948.2 4.358 2.618 6.78 6.98 6.98C8.333 23.986 8.741 24 12 24c3.259 0 3.668-.014 4.948-.072 4.354-.2 6.782-2.618 6.979-6.98.059-1.28.073-1.689.073-4.948 0-3.259-.014-3.667-.072-4.947-.196-4.354-2.617-6.78-6.979-6.98C15.668.014 15.259 0 12 0zm0 5.838a6.162 6.162 0 100 12.324 6.162 6.162 0 000-12.324zM12 16a4 4 0 110-8 4 4 0 010 8zm6.406-11.845a1.44 1.44 0 100 2.881 1.44 1.44 0 000-2.881z" />
</svg>
</a>
<a
href={whatsappUrl}
target="_blank"
rel="noopener noreferrer"
className="w-10 h-10 rounded-full bg-white/10 flex items-center justify-center hover:bg-[#25D366] transition-colors"
aria-label="WhatsApp"
>
<svg className="w-5 h-5" fill="currentColor" viewBox="0 0 24 24">
<path d="M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198 0-.52.074-.792.372-.272.297-1.04 1.016-1.04 2.479 0 1.462 1.065 2.875 1.213 3.074.149.198 2.096 3.2 5.077 4.487.709.306 1.262.489 1.694.625.712.227 1.36.195 1.871.118.571-.085 1.758-.719 2.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347m-5.421 7.403h-.004a9.87 9.87 0 01-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86 9.86 0 01-1.51-5.26c.001-5.45 4.436-9.884 9.888-9.884 2.64 0 5.122 1.03 6.988 2.898a9.825 9.825 0 012.893 6.994c-.003 5.45-4.437 9.884-9.885 9.884m8.413-18.297A11.815 11.815 0 0012.05 0C5.495 0 .16 5.335.157 11.892c0 2.096.547 4.142 1.588 5.945L.057 24l6.305-1.654a11.882 11.882 0 005.683 1.448h.005c6.554 0 11.89-5.335 11.893-11.893a11.821 11.821 0 00-3.48-8.413z" />
</svg>
</a>
<a
href={`mailto:${EMAIL}`}
className="w-10 h-10 rounded-full bg-white/10 flex items-center justify-center hover:bg-bosphorus transition-colors"
aria-label="Email"
>
<svg className="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">
<path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M3 8l7.89 5.26a2 2 0 002.22 0L21 8M5 19h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v10a2 2 0 002 2z" />
</svg>
</a>
</div>
</div>
<div>
<h3 className="font-display font-bold text-sm uppercase tracking-widest mb-4 text-bosphorus">
Experiences
</h3>
<ul className="space-y-3">
{experienceLinks.map((link) => (
<li key={link.href}>
<Link href={link.href} className="text-white/60 hover:text-white text-sm transition-colors">
{link.label}
</Link>
</li>
))}
<li>
<Link href="/contact" className="text-white/60 hover:text-white text-sm transition-colors">
Private Editions
</Link>
</li>
</ul>
</div>
<div>
<h3 className="font-display font-bold text-sm uppercase tracking-widest mb-4 text-bosphorus">
Company
</h3>
<ul className="space-y-3">
{companyLinks.map((link) => (
<li key={link.href}>
<Link href={link.href} className="text-white/60 hover:text-white text-sm transition-colors">
{link.label}
</Link>
</li>
))}
</ul>
</div>
<div>
<h3 className="font-display font-bold text-sm uppercase tracking-widest mb-4 text-bosphorus">
Get the Insider Edit
</h3>
<p className="text-white/60 text-sm mb-4">
Tips, secret spots, and early access to new experiences.
</p>
<NewsletterSignup />
</div>
</div>
<div className="border-t border-white/10 pt-8 flex flex-col md:flex-row justify-between items-center gap-4">
<p className="text-white/40 text-xs">
&copy; {new Date().getFullYear()} {SITE_NAME}. All rights reserved. TURSAB License #14285
</p>
<div className="flex gap-6 text-xs text-white/40">
<Link href="/terms" className="hover:text-white transition-colors">Terms</Link>
<Link href="/privacy" className="hover:text-white transition-colors">Privacy</Link>
</div>
</div>
</div>
</footer>
);
}