import { useState } from 'react'; import { nanoid } from 'nanoid'; import classNames from 'classnames'; import Link from 'next/link'; import { useRouter } from 'next/router'; import { Button, Icon, useMobileMedia } from './jambonz-ui'; function NaviItem({obj}) { const router = useRouter(); const rSlash = /^\/|\/$/g; const cleanLink = obj.link.replace(rSlash, ''); const cleanPath = router.asPath.replace(rSlash, '').split('/')[0]; const classes = { navi__link: true, active: cleanLink && cleanLink === cleanPath, }; return (
  • {obj.label}
  • ); } function NaviMobile({ active, handler, siteData }) { const classes = { 'bg-jambonz': true, 'wrap': true, 'navi__mobile': true, 'active': active, }; return (
    ); } export default function Navi({ siteData }) { const [active, setActive] = useState(false); const mobile = useMobileMedia(); const classes = { navi: true, mobile, active, }; const handleNavi = () => { setActive(!active); }; // Make sure mobile navi is closed on resizes... if (!mobile && active) { setActive(false); } return ( ); }