diff --git a/src/app/layout.tsx b/src/app/layout.tsx index d47f88e..4faa016 100644 --- a/src/app/layout.tsx +++ b/src/app/layout.tsx @@ -1,3 +1,4 @@ +import { Footer } from "@/components/footer" import { HEADER_HEIGHT, Header } from "@/components/header" import { Shape } from "@/components/shapes" import { ThemeProvider } from "@/components/theme-provider" @@ -90,6 +91,7 @@ export default function RootLayout({ children }: Readonly<{ children: React.Reac
{children} +
diff --git a/src/app/page.tsx b/src/app/page.tsx index 690408f..92da1eb 100644 --- a/src/app/page.tsx +++ b/src/app/page.tsx @@ -1,8 +1,3 @@ -import Image from "next/image" -import { FiFacebook, FiGithub, FiInstagram, FiLinkedin } from "react-icons/fi" -import discord from "@/assets/icons/discord.svg" -import telegram from "@/assets/icons/telegram.svg" -import { CardMultipleIcons } from "@/components/card-multiple-icons" import { AboutUs } from "@/components/home/about-us" import { Hero } from "@/components/home/hero" import { Materials } from "@/components/home/materials" @@ -13,18 +8,6 @@ export default function Home() { -
- , - , - , - , - Discord, - , - ]} - /> -
) } diff --git a/src/components/card-split/index.tsx b/src/components/card-split/index.tsx index a5c3831..5fa411d 100644 --- a/src/components/card-split/index.tsx +++ b/src/components/card-split/index.tsx @@ -11,11 +11,11 @@ export function CardSplit({ textPrimary, textSecondary, textSecondarySmall, clas return ( -
+
{textPrimary ? : null} {hasSecondaryContent && ( diff --git a/src/components/card-split/primary-content.tsx b/src/components/card-split/primary-content.tsx index 22079f6..e2c7383 100644 --- a/src/components/card-split/primary-content.tsx +++ b/src/components/card-split/primary-content.tsx @@ -1,6 +1,6 @@ export function CardSplitPrimaryContent({ text }: { text: string }) { return ( -

+

{text}

) diff --git a/src/components/card-split/secondary-content.tsx b/src/components/card-split/secondary-content.tsx index f1b44a4..785deaf 100644 --- a/src/components/card-split/secondary-content.tsx +++ b/src/components/card-split/secondary-content.tsx @@ -13,8 +13,10 @@ export function CardSplitSecondaryContent({ }: CardSplitSecondaryContentProps) { return (
- {textSecondary &&

{textSecondary}

} - {textSecondarySmall &&

{textSecondarySmall}

} + {textSecondary &&

{textSecondary}

} + {textSecondarySmall && ( +

{textSecondarySmall}

+ )}
) } diff --git a/src/components/footer.tsx b/src/components/footer.tsx new file mode 100644 index 0000000..a77259c --- /dev/null +++ b/src/components/footer.tsx @@ -0,0 +1,168 @@ +import Image from "next/image" +import { FaGithub } from "react-icons/fa" +import { FiChevronDown, FiFacebook, FiGithub, FiInstagram, FiLinkedin } from "react-icons/fi" +import discord from "@/assets/icons/discord.svg" +import telegram from "@/assets/icons/telegram.svg" +import { CardMultipleIcons } from "./card-multiple-icons" +import { CardSplit } from "./card-split" +import { Button } from "./ui/button" +import { ButtonWithIcon } from "./ui/buttonWithIcon" + +interface FooterLinkProps { + href: string + children: React.ReactNode +} + +function FooterLink({ href, children }: FooterLinkProps) { + return ( + + {children} + + ) +} + +interface FooterAccordionProps { + title: string + links: { label: string; href: string }[] +} + +function FooterAccordion({ title, links }: FooterAccordionProps) { + return ( +
+ + {title} + + +
+ {links.map((link) => ( + + {link.label} + + ))} +
+
+ ) +} + +const sitemapSections = [ + { + type: "accordion" as const, + title: "Resources", + links: [ + { label: "Materials", href: "/" }, + { label: "Guides", href: "/" }, + { label: "Computer recs", href: "/" }, + { label: "FAQs", href: "/" }, + ], + }, + { type: "text" as const, label: "Privacy Policy" }, + { + type: "accordion" as const, + title: "Community", + links: [ + { label: "Groups", href: "/" }, + { label: "Projects", href: "/" }, + { label: "Freshmen", href: "/" }, + { label: "Associations", href: "/" }, + ], + }, + { type: "text" as const, label: "Terms & Conditions" }, + { + type: "accordion" as const, + title: "About", + links: [ + { label: "About us", href: "/" }, + { label: "Join us", href: "/" }, + { label: "Contact us", href: "/" }, + ], + }, + { type: "text" as const, label: "Cookie policy" }, +] + +export function Footer() { + //Icone a riga 11 in futuro per mobile + return ( + + //TODO: dropdowns + ) +}