From d7a405eea18c84481cd34e8c074050e1a959c23b Mon Sep 17 00:00:00 2001 From: "Jip J. Dekker" Date: Mon, 26 Jun 2023 14:24:05 +1000 Subject: [PATCH] Update ThemeSelector to include system option --- src/components/ArticleLayout.jsx | 4 +- src/components/Card.jsx | 2 +- src/components/Header.jsx | 48 +++------------- src/components/SVGIcons.jsx | 12 ++++ src/components/ThemeSelector.jsx | 96 ++++++++++++++++++++++++++++++++ src/pages/_document.jsx | 43 +++++++------- src/pages/index.jsx | 7 +-- src/pages/projects.jsx | 2 +- 8 files changed, 145 insertions(+), 69 deletions(-) create mode 100644 src/components/ThemeSelector.jsx diff --git a/src/components/ArticleLayout.jsx b/src/components/ArticleLayout.jsx index 6fb9f82..a6dc640 100644 --- a/src/components/ArticleLayout.jsx +++ b/src/components/ArticleLayout.jsx @@ -32,7 +32,7 @@ export function ArticleLayout({ type="button" onClick={() => router.back()} aria-label="Go back to articles" - className="group mb-8 flex h-10 w-10 items-center justify-center rounded-full bg-white shadow-md shadow-zinc-800/5 ring-1 ring-zinc-900/5 transition dark:border dark:border-zinc-700/50 dark:bg-zinc-800 dark:ring-0 dark:ring-white/10 dark:hover:border-zinc-700 dark:hover:ring-white/20 lg:absolute lg:-left-5 lg:-mt-2 lg:mb-0 xl:-top-1.5 xl:left-0 xl:mt-0" + className="group mb-8 flex h-10 w-10 items-center justify-center rounded-xl bg-white shadow-md shadow-zinc-800/5 ring-1 ring-zinc-900/5 transition dark:border dark:border-zinc-700/50 dark:bg-zinc-800 dark:ring-0 dark:ring-white/10 dark:hover:border-zinc-700 dark:hover:ring-white/20 lg:absolute lg:-left-5 lg:-mt-2 lg:mb-0 xl:-top-1.5 xl:left-0 xl:mt-0" > @@ -46,7 +46,7 @@ export function ArticleLayout({ dateTime={meta.date} className="order-first flex items-center text-base text-zinc-400 dark:text-zinc-500" > - + {formatDate(meta.date)} diff --git a/src/components/Card.jsx b/src/components/Card.jsx index a748a9f..a57a920 100644 --- a/src/components/Card.jsx +++ b/src/components/Card.jsx @@ -74,7 +74,7 @@ Card.Eyebrow = function CardEyebrow({ className="absolute inset-y-0 left-0 flex items-center" aria-hidden="true" > - + )} {children} diff --git a/src/components/Header.jsx b/src/components/Header.jsx index 60f9bdb..7d6cb9a 100644 --- a/src/components/Header.jsx +++ b/src/components/Header.jsx @@ -7,7 +7,8 @@ import clsx from 'clsx' import { Container } from '@/components/Container' import avatarImage from '@/images/avatar.jpg' -import { ChevronDownIcon, CloseIcon, MoonIcon, SunIcon } from '@/components/SVGIcons' +import { ChevronDownIcon, CloseIcon } from '@/components/SVGIcons' +import { ThemeSelector } from './ThemeSelector' function MobileNavItem({ href, children }) { return ( @@ -22,7 +23,7 @@ function MobileNavItem({ href, children }) { function MobileNavigation(props) { return ( - + Menu @@ -101,7 +102,7 @@ function NavItem({ href, children }) { function DesktopNavigation(props) { return (