From fa9b1cab5373926f63460fe570533bcd8a4ec821 Mon Sep 17 00:00:00 2001 From: Xylight Date: Thu, 9 Oct 2025 20:26:11 -0700 Subject: [PATCH] design: round bottom corners of navbar --- src/lib/ui/layout/InvertedCorner.svelte | 18 ++++++++++++++++++ src/lib/ui/layout/Shell.svelte | 16 +++++++++++++--- src/lib/ui/navbar/NavButton.svelte | 2 +- src/lib/ui/navbar/Navbar.svelte | 3 ++- src/lib/ui/shared/button/Button.svelte | 2 -- src/lib/ui/sidebar/SidebarButton.svelte | 4 ++-- 6 files changed, 36 insertions(+), 9 deletions(-) create mode 100644 src/lib/ui/layout/InvertedCorner.svelte diff --git a/src/lib/ui/layout/InvertedCorner.svelte b/src/lib/ui/layout/InvertedCorner.svelte new file mode 100644 index 00000000..b9465eef --- /dev/null +++ b/src/lib/ui/layout/InvertedCorner.svelte @@ -0,0 +1,18 @@ + + + diff --git a/src/lib/ui/layout/Shell.svelte b/src/lib/ui/layout/Shell.svelte index a27be447..ea225c8a 100644 --- a/src/lib/ui/layout/Shell.svelte +++ b/src/lib/ui/layout/Shell.svelte @@ -7,6 +7,7 @@ UIEventHandler, } from 'svelte/elements' import { scrollY } from 'svelte/reactivity/window' + import InvertedCorner from './InvertedCorner.svelte' interface Props extends HTMLAttributes { children?: Snippet @@ -45,10 +46,19 @@ style="transition: bottom .4s cubic-bezier(0.075, 0.82, 0.165, 1);" aria-hidden="true" > +
+ + +
{@render navbar?.({ class: [ - 'bg-slate-100/70 dark:bg-zinc-950/90 border-slate-200/50 dark:border-zinc-900', - 'pointer-events-auto backdrop-blur-xl border md:border-t-0 md:border-x-0', + 'md:bg-slate-100/70 md:dark:bg-zinc-950/90 border-slate-200/50 dark:border-zinc-900', + 'bg-slate-100 dark:bg-zinc-950', + 'pointer-events-auto backdrop-blur-xl border border-t-0 md:border-x-0', ], style: '', })} @@ -59,7 +69,7 @@ style: 'grid-area: sidebar; width: 100% !important;', })} {@render main?.({ - class: `w-full bg-slate-50 dark:bg-zinc-925 justify-self-center border-x border-slate-200 dark:border-zinc-900 max-lg:pb-22 pb-3 lg:pb-6`, + class: `w-full bg-slate-50 dark:bg-zinc-925 max-lg:pb-22 justify-self-center border-x border-slate-200 dark:border-zinc-900 pb-3 lg:pb-6`, style: 'grid-area: main', })} {@render suffix?.({ diff --git a/src/lib/ui/navbar/NavButton.svelte b/src/lib/ui/navbar/NavButton.svelte index 938df4f9..b98678ba 100644 --- a/src/lib/ui/navbar/NavButton.svelte +++ b/src/lib/ui/navbar/NavButton.svelte @@ -75,7 +75,7 @@ display: grid; place-items: center; aspect-ratio: 1 / 1; - border-radius: 100%; + border-radius: var(--radius-xl); } } diff --git a/src/lib/ui/navbar/Navbar.svelte b/src/lib/ui/navbar/Navbar.svelte index 46ecf6f2..8be3709b 100644 --- a/src/lib/ui/navbar/Navbar.svelte +++ b/src/lib/ui/navbar/Navbar.svelte @@ -33,11 +33,12 @@