From c934e444847fbbda3b3da8f2b1c8c8d6e751aa95 Mon Sep 17 00:00:00 2001 From: Joost De Cock Date: Wed, 25 May 2022 18:35:20 +0200 Subject: [PATCH] wip(org): Work on new site --- packages/freesewing.org/components/footer.js | 15 +-- packages/freesewing.org/components/header.js | 34 ++++-- .../freesewing.org/components/layouts/bare.js | 69 +++++++++++ .../freesewing.org/components/layouts/docs.js | 79 ++++++++++++ .../components/wrappers/layout.js | 115 ++++++++++++++++++ .../components/wrappers/page.js | 68 +++++++++++ packages/freesewing.org/freesewing.config.js | 2 +- packages/freesewing.org/hooks/useApp.js | 40 +++++- packages/freesewing.org/next.config.mjs | 2 +- packages/freesewing.org/package.json | 4 +- .../freesewing.org/pages/docs/[...mdxslug].js | 110 +++++++++++++++++ packages/freesewing.org/pages/index.js | 109 ++++++++++++++--- packages/freesewing.org/public/img/splash.jpg | Bin 0 -> 121264 bytes 13 files changed, 607 insertions(+), 40 deletions(-) create mode 100644 packages/freesewing.org/components/layouts/bare.js create mode 100644 packages/freesewing.org/components/layouts/docs.js create mode 100644 packages/freesewing.org/components/wrappers/layout.js create mode 100644 packages/freesewing.org/components/wrappers/page.js create mode 100644 packages/freesewing.org/pages/docs/[...mdxslug].js create mode 100644 packages/freesewing.org/public/img/splash.jpg 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 ( + <> +