77 lines
2.1 KiB
TypeScript
77 lines
2.1 KiB
TypeScript
import FooterBrand from '@/components/sections/footer/FooterBrand';
|
|
import NavbarFloatingLogo from '@/components/ui/NavbarFloatingLogo';
|
|
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": "Services", "href": "#services"
|
|
},
|
|
{
|
|
"name": "Programs", "href": "#programs"
|
|
},
|
|
{
|
|
"name": "Pricing", "href": "#pricing"
|
|
},
|
|
{
|
|
"name": "Contact", "href": "#contact"
|
|
},
|
|
{
|
|
"name": "Hero", "href": "#hero"
|
|
},
|
|
{
|
|
"name": "About", "href": "#about"
|
|
},
|
|
{
|
|
"name": "Why Choose", "href": "#why-choose"
|
|
}
|
|
];
|
|
|
|
return (
|
|
<StyleProvider buttonVariant="stagger" siteBackground="gridDots" heroBackground="lightRaysCenter">
|
|
<SiteBackgroundSlot />
|
|
<SectionErrorBoundary name="navbar">
|
|
<NavbarFloatingLogo
|
|
logo="Olympia Gym"
|
|
logoImageSrc="http://img.b2bpic.net/free-photo/wellness-health-lifestyle-workout-graphic-word_53876-21386.jpg"
|
|
ctaButton={{
|
|
text: "Join Now", href: "#pricing"}}
|
|
navItems={navItems} />
|
|
</SectionErrorBoundary>
|
|
<main className="flex-grow">
|
|
<Outlet />
|
|
</main>
|
|
<SectionErrorBoundary name="footer">
|
|
<FooterBrand
|
|
brand="Olympia Gym"
|
|
columns={[
|
|
{
|
|
items: [
|
|
{
|
|
label: "Services", href: "#services"},
|
|
{
|
|
label: "Programs", href: "#programs"},
|
|
{
|
|
label: "Pricing", href: "#pricing"},
|
|
],
|
|
},
|
|
{
|
|
items: [
|
|
{
|
|
label: "Contact", href: "#contact"},
|
|
{
|
|
label: "Address: Batala Colony", href: "#"},
|
|
{
|
|
label: "0300 1043366", href: "tel:03001043366"},
|
|
],
|
|
},
|
|
]}
|
|
/>
|
|
</SectionErrorBoundary>
|
|
</StyleProvider>
|
|
);
|
|
}
|