import { useState } from 'react' import { useRouter } from 'next/router' import Link from 'next/link' // Shared components import Logo from 'shared/components/logos/freesewing.js' import PrimaryNavigation from 'shared/components/navigation/primary' import get from 'lodash.get' const iconSize= 48 const PageTitle = ({ app, slug, title }) => { if (title) return

{title}

if (slug) return

{get(app.navigation, slug.split('/')).__title}

return

FIXME: This page has no title

} const Breadcrumbs = ({ app, slug=false, title }) => { if (!slug) return null const crumbs = [] const chunks = slug.split('/') for (const i in chunks) { const page = get(app.navigation, chunks.slice(0,i+1)) crumbs.push([page.__linktitle, '/'+chunks.slice(0,i+1).join('/'), (i+1 < chunks.length)]) } return ( ) } const DefaultLayout = ({ app, title=false, children=[]}) => { const router = useRouter() const slug = router.asPath.slice(1) const [leftNav, setLeftNav] = useState(false) const toggleLeftNav = () => setLeftNav(!leftNav) return (
header
{title && ( <> )} {children}
) } export default DefaultLayout