-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #20 from ianmuchyri/fiximageload
NOISSUE - Address requested changes
- Loading branch information
Showing
21 changed files
with
422 additions
and
489 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
import { FooterCompanyInfo } from './footer-company-info'; | ||
import { FooterCopyright } from './footer-copyright'; | ||
import { FooterNewsletter } from './footer-newsletter'; | ||
import { FooterQuickLinks } from './footer-quick-links'; | ||
import { FooterSocialLinks } from './footer-social-links'; | ||
import { Separator } from './ui/separator'; | ||
|
||
export default function Footer() { | ||
return ( | ||
<footer className="bg-blue-200 py-12"> | ||
<div className="container mx-auto"> | ||
{/* Main Footer Content */} | ||
<div className="flex flex-col sm:flex-row justify-between gap-8 mb-8"> | ||
<FooterCompanyInfo /> | ||
<FooterQuickLinks /> | ||
<FooterSocialLinks /> | ||
<FooterNewsletter /> | ||
</div> | ||
|
||
<Separator /> | ||
|
||
{/* Footer Bottom */} | ||
<FooterCopyright /> | ||
</div> | ||
</footer> | ||
); | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,105 @@ | ||
'use client'; | ||
|
||
import { Button } from '@/components/ui/button'; | ||
import { | ||
Sheet, | ||
SheetContent, | ||
SheetHeader, | ||
SheetTitle, | ||
SheetTrigger, | ||
} from '@/components/ui/sheet'; | ||
import { HeaderData } from '@/lib/constants'; | ||
import { getImageUrl } from '@/lib/utils'; | ||
import { Menu } from 'lucide-react'; | ||
import Image from 'next/image'; | ||
import Link from 'next/link'; | ||
import { useState } from 'react'; | ||
import { Separator } from './ui/separator'; | ||
|
||
export default function Header() { | ||
return ( | ||
<header className="sticky top-0 z-50 bg-white shadow-sm"> | ||
<div className="container mx-auto flex items-center justify-between"> | ||
{/* Logo Section */} | ||
<Link href="/"> | ||
<Image | ||
src={ | ||
getImageUrl(HeaderData.Logo.url) || HeaderData.Logo.placeholder | ||
} | ||
alt={HeaderData.Logo.alt} | ||
width={HeaderData.Logo.width} | ||
height={HeaderData.Logo.height} | ||
/> | ||
</Link> | ||
|
||
{/* Desktop Navigation Section */} | ||
<nav className="hidden md:flex flex-1 justify-center"> | ||
<ul className="flex space-x-8 items-center"> | ||
{HeaderData.navigationLinks.map((link) => ( | ||
<li key={link.label}> | ||
<Link | ||
href={link.href} | ||
className="text-xl hover:text-blue-600 transition-colors" | ||
> | ||
{link.label} | ||
</Link> | ||
</li> | ||
))} | ||
</ul> | ||
</nav> | ||
|
||
{/* CTA Button Section */} | ||
<div className="hidden md:flex items-center gap-6"> | ||
<Button aria-label={HeaderData.ctaButton.text} asChild={true}> | ||
<Link href={HeaderData.ctaButton.link}> | ||
{HeaderData.ctaButton.text} | ||
</Link> | ||
</Button> | ||
</div> | ||
|
||
{/* Mobile Menu Button */} | ||
<MobileMenu /> | ||
</div> | ||
</header> | ||
); | ||
} | ||
|
||
function MobileMenu() { | ||
const [open, setOpen] = useState(false); | ||
return ( | ||
<Sheet open={open} onOpenChange={setOpen}> | ||
<SheetTrigger asChild> | ||
<Button className="md:hidden" aria-label="Toggle menu"> | ||
<Menu className="h-6 w-6 text-white" /> | ||
</Button> | ||
</SheetTrigger> | ||
<SheetContent side="top"> | ||
<SheetHeader> | ||
<SheetTitle className="hidden">Menu</SheetTitle> | ||
</SheetHeader> | ||
<Separator className="my-8" /> | ||
<nav className="flex flex-col gap-4"> | ||
<ul className="flex flex-col space-y-4 items-center"> | ||
{HeaderData.navigationLinks.map((link) => ( | ||
<li key={link.label}> | ||
<Link | ||
href={link.href} | ||
className="text-xl hover:text-blue-600 transition-colors" | ||
> | ||
{link.label} | ||
</Link> | ||
</li> | ||
))} | ||
</ul> | ||
<Separator className="mt-4" /> | ||
|
||
<Button aria-label={HeaderData.ctaButton.text} asChild={true}> | ||
<Link href={HeaderData.ctaButton.link}> | ||
{HeaderData.ctaButton.text} | ||
</Link> | ||
</Button> | ||
</nav> | ||
</SheetContent> | ||
</Sheet> | ||
); | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.