diff --git a/packages/freesewing.org/components/footer.js b/packages/freesewing.org/components/footer.js index 59b0ca7fd3c..3a03a17a847 100644 --- a/packages/freesewing.org/components/footer.js +++ b/packages/freesewing.org/components/footer.js @@ -24,7 +24,7 @@ const social = { const Footer = ({ app }) => ( ) diff --git a/packages/freesewing.org/components/header.js b/packages/freesewing.org/components/header.js index 54aa8dd9870..c7149d741a9 100644 --- a/packages/freesewing.org/components/header.js +++ b/packages/freesewing.org/components/header.js @@ -46,6 +46,8 @@ const Header = ({ app, setSearch }) => { z-30 transition-transform ${show ? '': 'fixed top-0 left-0 -translate-y-20'} + drop-shadow-xl + ${app.loading ? "theme-gradient loading" : ""} `}>
@@ -55,23 +57,38 @@ const Header = ({ app, setSearch }) => { text-neutral-content bg-transparent border border-transparent hover:bg-transparent hover:border-base-100 - sm:hidden + md:hidden h-12 `} onClick={app.togglePrimaryMenu}> {app.primaryMenu - ? <>swipe - : <>swipe + ? ( + <> + + + + swipe + + + ) : ( + <> + + + + swipe + + + ) } - -
+
-
) } diff --git a/packages/freesewing.org/components/layouts/bare.js b/packages/freesewing.org/components/layouts/bare.js new file mode 100644 index 00000000000..22a17e2be89 --- /dev/null +++ b/packages/freesewing.org/components/layouts/bare.js @@ -0,0 +1,69 @@ +import React from 'react' +import { useRouter } from 'next/router' +import Link from 'next/link' +// Shared components +import Logo from 'shared/components/logos/freesewing.js' +import Aside from 'shared/components/navigation/aside' +import get from 'lodash.get' +import ThemePicker from 'shared/components/theme-picker' + +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 j = parseInt(i)+parseInt(1) + const page = get(app.navigation, chunks.slice(0,j)) + if (page) crumbs.push([page.__linktitle, '/'+chunks.slice(0,j).join('/'), (j < chunks.length)]) + } + + return ( + + ) +} + +const DefaultLayout = ({ app, title=false, children=[] }) => { + const router = useRouter() + const slug = router.asPath.slice(1) + + return ( + <> +