diff options
| author | Armand Philippot <git@armandphilippot.com> | 2023-10-20 14:06:48 +0200 |
|---|---|---|
| committer | Armand Philippot <git@armandphilippot.com> | 2023-11-11 18:14:41 +0100 |
| commit | c6f6f8f895e68f2d85ca681997ef613d982bac14 (patch) | |
| tree | 50e21f0721781aad231445c4e5af24deadb2d0de /src/components/organisms/layout/site-footer.tsx | |
| parent | c3cde71e60ae22d17c1d162f678f592915ac5398 (diff) | |
refactor(components): rewrite NavList component
* extract NavItem from NavList
* remove `kind` and `listClassName` props (since the consumer has
control over NavList, NavItem and NavLink components these props are
obsolete)
Diffstat (limited to 'src/components/organisms/layout/site-footer.tsx')
| -rw-r--r-- | src/components/organisms/layout/site-footer.tsx | 25 |
1 files changed, 16 insertions, 9 deletions
diff --git a/src/components/organisms/layout/site-footer.tsx b/src/components/organisms/layout/site-footer.tsx index 0866924..b4930d6 100644 --- a/src/components/organisms/layout/site-footer.tsx +++ b/src/components/organisms/layout/site-footer.tsx @@ -5,10 +5,17 @@ import { BackToTop, type BackToTopProps, NavList, - type NavItem, + NavItem, + NavLink, } from '../../molecules'; import styles from './site-footer.module.scss'; +export type FooterLinks = { + id: string; + href: string; + label: string; +}; + export type SiteFooterProps = { /** * Set additional classnames to the back to top button. @@ -25,7 +32,7 @@ export type SiteFooterProps = { /** * The footer nav items. */ - navItems?: NavItem[]; + navItems?: FooterLinks[]; /** * An element id (without hashtag) used as anchor for back to top button. */ @@ -67,13 +74,13 @@ export const SiteFooter: FC<SiteFooterProps> = ({ owner={copyright.owner} /> {navItems ? ( - <NavList - aria-label={ariaLabel} - className={styles.nav} - items={navItems} - // eslint-disable-next-line react/jsx-no-literals -- Kind allowed - kind="footer" - /> + <NavList aria-label={ariaLabel} className={styles.nav} isInline> + {navItems.map(({ id, ...link }) => ( + <NavItem key={id}> + <NavLink {...link} /> + </NavItem> + ))} + </NavList> ) : null} <BackToTop anchor={backToTopAnchor} |
