Files
0da759d0-4ed7-4cb3-acb9-2ae…/src/components/Layout.tsx
2026-06-23 13:12:42 +00:00

102 lines
2.2 KiB
TypeScript

import FooterSimple from '@/components/sections/footer/FooterSimple';
import NavbarFloating from '@/components/ui/NavbarFloating';
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
import SiteBackgroundSlot from "@/components/ui/SiteBackgroundSlot";
import { Outlet } from 'react-router-dom';
import { StyleProvider } from "@/components/ui/StyleProvider";
export default function Layout() {
const navItems = [
{
"name": "Home",
"href": "#"
},
{
"name": "Menu",
"href": "#menu"
},
{
"name": "About",
"href": "#about"
},
{
"name": "Contact",
"href": "#contact"
},
{
"name": "Hero",
"href": "#hero"
},
{
"name": "Features",
"href": "#features"
},
{
"name": "Testimonials",
"href": "#testimonials"
}
];
return (
<StyleProvider buttonVariant="default" siteBackground="noiseGradient" heroBackground="lightRaysCorner">
<SiteBackgroundSlot />
<SectionErrorBoundary name="navbar">
<NavbarFloating
logo="Le Tire-Bouchon"
ctaButton={{
text: "Reserve Now",
href: "#contact",
}}
navItems={navItems} />
</SectionErrorBoundary>
<main className="flex-grow">
<Outlet />
</main>
<SectionErrorBoundary name="footer">
<FooterSimple
brand="Le Tire-Bouchon Valence"
columns={[
{
title: "Menu",
items: [
{
label: "Déjeuner",
href: "#menu",
},
{
label: "Dîner",
href: "#menu",
},
],
},
{
title: "Contact",
items: [
{
label: "Nous appeler",
href: "tel:+33400000000",
},
{
label: "Email",
href: "mailto:contact@tirebouchon.fr",
},
],
},
]}
copyright="© 2024 Le Tire-Bouchon. Tous droits réservés."
links={[
{
label: "Mentions Légales",
href: "#",
},
{
label: "RGPD",
href: "#",
},
]}
/>
</SectionErrorBoundary>
</StyleProvider>
);
}