59 lines
2.1 KiB
TypeScript
59 lines
2.1 KiB
TypeScript
import FooterSimpleCard from '@/components/sections/footer/FooterSimpleCard';
|
|
import NavbarDropdown from '@/components/ui/NavbarDropdown';
|
|
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: "About", href: "#about" },
|
|
{ name: "Features", href: "#features" },
|
|
{ name: "Placement", href: "#placement" },
|
|
{ name: "Demo", href: "#demo" },
|
|
{ name: "Schedule", href: "#schedule" },
|
|
{ name: "Register", href: "#register" },
|
|
{ name: "Contact", href: "#contact" }
|
|
];
|
|
|
|
return (
|
|
<StyleProvider buttonVariant="arrow" siteBackground="gridDots" heroBackground="lightRaysCenter">
|
|
<SiteBackgroundSlot />
|
|
<SectionErrorBoundary name="navbar">
|
|
<NavbarDropdown
|
|
logo="Speak Hub Global"
|
|
ctaButton={{
|
|
text: "Login", href: "#login"}}
|
|
navItems={navItems}
|
|
/>
|
|
</SectionErrorBoundary>
|
|
<main className="flex-grow">
|
|
<Outlet />
|
|
</main>
|
|
<SectionErrorBoundary name="footer">
|
|
<FooterSimpleCard
|
|
brand="Speak Hub Global"
|
|
columns={[
|
|
{
|
|
title: "Quick Links", items: [
|
|
{ label: "About Us", href: "#about" },
|
|
{ label: "Features", href: "#features" },
|
|
{ label: "Register", href: "#register" },
|
|
],
|
|
},
|
|
{
|
|
title: "Community", items: [
|
|
{ label: "WhatsApp", href: "https://chat.whatsapp.com/Dn87aph09qiJQ56TSktJfC" },
|
|
{ label: "Instagram", href: "https://www.instagram.com/speakhub_global1?igsh=MW1rOGl3cW42NXRkMA==" },
|
|
],
|
|
},
|
|
]}
|
|
links={[]}
|
|
copyright="2026 Speak Hub Global. All rights reserved."
|
|
/>
|
|
</SectionErrorBoundary>
|
|
</StyleProvider>
|
|
);
|
|
}
|