From c1e28224aa2e1450031669d9a7e359b63e04687d Mon Sep 17 00:00:00 2001 From: Volpeon Date: Wed, 22 Jul 2026 19:40:59 +0200 Subject: Init --- src/ui/components/SiteNav.tsx | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 src/ui/components/SiteNav.tsx (limited to 'src/ui/components/SiteNav.tsx') diff --git a/src/ui/components/SiteNav.tsx b/src/ui/components/SiteNav.tsx new file mode 100644 index 0000000..7518e3c --- /dev/null +++ b/src/ui/components/SiteNav.tsx @@ -0,0 +1,38 @@ +import { Icon } from "$/ui/objects/Icon.tsx"; + +import { nav } from "../../data/nav.ts"; +import { Navbar } from "../objects/Navbar.tsx"; +import { NavbarItem } from "../objects/NavbarItem.tsx"; + +export interface Props { + url: string; +} + +export const SiteNav = ({ url }: Props) => { + const navItems = nav + .filter((item) => !item.hidden) + .map((item) => ({ + ...item, + selected: item.url === "/" ? item.url === url : new RegExp(`^${item.url}`).test(url), + })); + + return ( + <> +
+ + + + ); +}; -- cgit v1.3.1