Files
1f6a0a65-ffc8-445a-929b-574…/src/components/Layout.tsx
kudinDmitriyUp cf595df699 Initial commit
2026-05-28 10:40:14 +00:00

117 lines
2.5 KiB
TypeScript

import FooterBasic from '@/components/sections/footer/FooterBasic';
import NavbarCentered from '@/components/ui/NavbarCentered';
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": "#hero"
},
{
"name": "Rooms",
"href": "#rooms"
},
{
"name": "Amenities",
"href": "#amenities"
},
{
"name": "Team",
"href": "#team"
},
{
"name": "FAQ",
"href": "#faq"
},
{
"name": "Contact",
"href": "#contact"
},
{
"name": "About",
"href": "#about"
}
];
return (
<StyleProvider buttonVariant="bubble" siteBackground="gridDots" heroBackground="cornerGlow">
<SiteBackgroundSlot />
<SectionErrorBoundary name="navbar">
<NavbarCentered
ctaButton={{
text: "Book Now",
href: "#contact",
}}
logo="Brand"
navItems={navItems} />
</SectionErrorBoundary>
<main className="flex-grow">
<Outlet />
</main>
<SectionErrorBoundary name="footer">
<FooterBasic
columns={[
{
title: "Hotel",
items: [
{
label: "Home",
href: "#hero",
},
{
label: "Rooms",
href: "#rooms",
},
{
label: "Amenities",
href: "#amenities",
},
{
label: "Contact",
href: "#contact",
},
],
},
{
title: "Explore",
items: [
{
label: "About Us",
href: "#about",
},
{
label: "Our Team",
href: "#team",
},
{
label: "FAQ",
href: "#faq",
},
],
},
{
title: "Legal",
items: [
{
label: "Privacy Policy",
href: "#",
},
{
label: "Terms of Service",
href: "#",
},
],
},
]}
leftText="© 2024 The Tallinn Hideaway. All rights reserved."
rightText="Designed for luxury."
/>
</SectionErrorBoundary>
</StyleProvider>
);
}