Files
49211b0a-274b-4bce-8f43-2c2…/src/app/contact/page.tsx

136 lines
4.5 KiB
TypeScript

"use client";
import Link from "next/link";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import NavbarLayoutFloatingInline from "@/components/navbar/NavbarLayoutFloatingInline";
import ContactSplitForm from "@/components/sections/contact/ContactSplitForm";
import SplitAbout from "@/components/sections/about/SplitAbout";
import FooterCard from "@/components/sections/footer/FooterCard";
import { MapPin, Phone, Mail } from "lucide-react";
import { Facebook, Instagram } from "lucide-react";
export default function ContactPage() {
const navItems = [
{ name: "Accueil", id: "/" },
{ name: "À Propos", id: "/about" },
{ name: "Menu", id: "/menu" },
{ name: "Avis", id: "/testimonials" },
{ name: "Réservation", id: "/contact" },
];
const handleContactSubmit = (data: Record<string, string>) => {
console.log("Contact form submitted:", data);
};
return (
<ThemeProvider
defaultButtonVariant="elastic-effect"
defaultTextAnimation="background-highlight"
borderRadius="soft"
contentWidth="compact"
sizing="largeSmall"
background="fluid"
cardStyle="outline"
primaryButtonStyle="flat"
secondaryButtonStyle="glass"
headingFontWeight="bold"
>
{/* Navbar */}
<div id="nav" data-section="nav">
<NavbarLayoutFloatingInline
navItems={navItems.map((item) => ({
name: item.name,
id: item.id,
}))}
brandName="Bistro Niçois"
button={{
text: "Réserver",
href: "/contact",
}}
animateOnLoad={true}
/>
</div>
{/* Contact Form Section */}
<div id="contact-form" data-section="contact-form">
<ContactSplitForm
title="Nous Contacter"
description="Vous avez une question ou une demande spéciale ? Contactez-nous directement via le formulaire ci-dessous ou par l'un de nos canaux de communication."
inputs={[
{ name: "name", type: "text", placeholder: "Votre Nom", required: true },
{ name: "email", type: "email", placeholder: "Votre Email", required: true },
]}
textarea={{
name: "message",
placeholder: "Votre Message",
rows: 5,
required: true,
}}
useInvertedBackground={false}
imageSrc="http://img.b2bpic.net/free-photo/table-arrangement-luxury-restaurant_23-2150598334.jpg?_wi=2"
imageAlt="Ambiance du Bistro Niçois"
mediaAnimation="slide-up"
mediaPosition="right"
buttonText="Envoyer"
onSubmit={handleContactSubmit}
/>
</div>
{/* Contact Information Section */}
<div id="contact-info" data-section="contact-info">
<SplitAbout
title="Nos Coordonnées"
description="Trouvez toutes les informations nécessaires pour nous contacter, nous visiter ou faire une réservation."
bulletPoints={[
{
title: "Adresse",
description: "606 Boulevard du Mercantour, 06200 Nice, France",
icon: MapPin,
},
{
title: "Téléphone",
description: "+33 (0)4 23 20 87 56",
icon: Phone,
},
{
title: "Email",
description: "contact@bistro-nicois.fr",
icon: Mail,
},
]}
imageSrc="http://img.b2bpic.net/free-photo/tables-chairs-arranged-empty-coffee-shop_107420-96463.jpg?_wi=2"
imageAlt="Intérieur du Bistro Niçois"
mediaAnimation="slide-up"
imagePosition="right"
textboxLayout="default"
useInvertedBackground={false}
/>
</div>
{/* Footer */}
<div id="footer" data-section="footer">
<FooterCard
logoText="Bistro Niçois"
copyrightText="© 2025 Bistro Niçois. Tous droits réservés. 606 Bd du Mercantour, 06200 Nice."
socialLinks={[
{
icon: Facebook,
href: "https://facebook.com/bistro-nicois",
ariaLabel: "Facebook",
},
{
icon: Instagram,
href: "https://instagram.com/bistro-nicois",
ariaLabel: "Instagram",
},
{
icon: Phone,
href: "tel:+33423208756",
ariaLabel: "Téléphone",
},
]}
/>
</div>
</ThemeProvider>
);
}