74 lines
2.1 KiB
TypeScript
74 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": "/"
|
|
},
|
|
{
|
|
"name": "Assessment", "href": "/assessment"
|
|
},
|
|
{
|
|
"name": "Evidence", "href": "/evidence"
|
|
},
|
|
{
|
|
"name": "Reflections", "href": "/reflections"
|
|
},
|
|
{
|
|
"name": "Retrospection", "href": "/retrospection"
|
|
}
|
|
];
|
|
|
|
return (
|
|
<StyleProvider buttonVariant="magnetic" siteBackground="floatingGradient" heroBackground="lightRaysCenter">
|
|
<SiteBackgroundSlot />
|
|
<SectionErrorBoundary name="navbar">
|
|
<NavbarDropdown
|
|
logo="E-Portfolio"
|
|
ctaButton={{
|
|
text: "Contact", href: "/contact"}}
|
|
navItems={navItems} />
|
|
</SectionErrorBoundary>
|
|
<main className="flex-grow">
|
|
<Outlet />
|
|
</main>
|
|
<SectionErrorBoundary name="footer">
|
|
<FooterSimpleCard
|
|
brand="Pre-Service E-Portfolio"
|
|
columns={[
|
|
{
|
|
title: "Navigation", items: [
|
|
{
|
|
label: "Home", href: "/"},
|
|
{
|
|
label: "Assessment", href: "/assessment"},
|
|
],
|
|
},
|
|
{
|
|
title: "Links", items: [
|
|
{
|
|
label: "Evidence", href: "/evidence"},
|
|
{
|
|
label: "Retrospection", href: "/retrospection"},
|
|
],
|
|
},
|
|
]}
|
|
copyright="© 2024 Pre-Service Educator."
|
|
links={[
|
|
{ label: "Home", href: "/" },
|
|
{ label: "Assessment", href: "/assessment" },
|
|
{ label: "Evidence", href: "/evidence" },
|
|
{ label: "Reflections", href: "/reflections" },
|
|
{ label: "Retrospection", href: "/retrospection" }
|
|
]}
|
|
/>
|
|
</SectionErrorBoundary>
|
|
</StyleProvider>
|
|
);
|
|
}
|