Files
299320ba-0a6c-450c-a97d-280…/src/components/Layout.tsx
2026-06-14 05:45:28 +00:00

113 lines
2.4 KiB
TypeScript

import FooterBrand from '@/components/sections/footer/FooterBrand';
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": "Features",
"href": "#features"
},
{
"name": "Pricing",
"href": "#pricing"
},
{
"name": "Testimonials",
"href": "#testimonials"
},
{
"name": "Resources",
"href": "#resources"
},
{
"name": "Hero",
"href": "#hero"
},
{
"name": "Metrics",
"href": "#metrics"
},
{
"name": "About",
"href": "#about"
}
];
return (
<StyleProvider buttonVariant="expand" siteBackground="noise" heroBackground="lightRaysCenter">
<SiteBackgroundSlot />
<SectionErrorBoundary name="navbar">
<NavbarCentered
logo="GrowthHub"
ctaButton={{
text: "Start Free Trial",
href: "#contact",
}}
navItems={navItems} />
</SectionErrorBoundary>
<main className="flex-grow">
<Outlet />
</main>
<SectionErrorBoundary name="footer">
<FooterBrand
brand="GrowthHub"
columns={[
{
items: [
{
label: "Product",
href: "#features",
},
{
label: "Pricing",
href: "#pricing",
},
{
label: "Testimonials",
href: "#testimonials",
},
],
},
{
items: [
{
label: "Resources",
href: "#resources",
},
{
label: "Blog",
href: "#",
},
{
label: "Help Center",
href: "#",
},
],
},
{
items: [
{
label: "Privacy Policy",
href: "#",
},
{
label: "Terms of Service",
href: "#",
},
{
label: "Contact",
href: "#contact",
},
],
},
]}
/>
</SectionErrorBoundary>
</StyleProvider>
);
}