feat(admin): expand/collapse all sidebar groups with scrollable nav
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 2m6s

Co-authored-by: Cursor <[email protected]>
This commit is contained in:
SimoandCursor committed 2026-07-22 18:49:49 +02:00
1 parent e00e9ca2dc
commit 8d28739ca6
6 files changed
+166 -88

No files matched your search

+4 -7
View File
@@ -42,9 +42,7 @@ export default async function AdminLayout({
return (
<>
{csrfToken ? (
<meta name="csrf-token" content={csrfToken} />
) : null}
{csrfToken ? <meta name="csrf-token" content={csrfToken} /> : null}
<AdminMobileWrapper sidebar={<Sidebar staff={staff} />}>
<div
data-admin
@@ -72,9 +70,9 @@ async function Sidebar({
return (
<aside
data-admin
className="max-lg:static sticky top-0 self-start h-full lg:h-screen overflow-y-auto bg-[var(--admin-sidebar-background)] text-[var(--admin-sidebar-text-readable)] shadow-xl flex flex-col"
className="max-lg:static sticky top-0 flex h-full max-h-screen min-h-0 w-full flex-col self-start overflow-hidden bg-[var(--admin-sidebar-background)] text-[var(--admin-sidebar-text-readable)] shadow-xl lg:h-screen"
>
<div className="flex items-center gap-3 px-4 py-5 border-b border-[var(--admin-border)]">
<div className="flex shrink-0 items-center gap-3 border-b border-[var(--admin-border)] px-4 py-5">
<span
className="flex-none w-10 h-10 rounded-xl grid place-items-center font-extrabold text-base text-[var(--admin-accent-foreground)] bg-[var(--admin-accent)] shadow-lg shadow-[var(--admin-accent)]/20"
aria-hidden
@@ -97,7 +95,7 @@ async function Sidebar({
<AdminSidebarNav />
<div className="px-3 py-3 border-t border-[var(--admin-border)]">
<div className="shrink-0 border-t border-[var(--admin-border)] px-3 py-3">
<Link
href="/"
className="flex items-center gap-2.5 px-2.5 py-2 rounded-lg text-[var(--admin-sidebar-muted-readable)] text-xs font-medium hover:text-[var(--admin-sidebar-text-readable)] hover:bg-[var(--admin-accent)]/10 transition-all duration-150 no-underline"
@@ -109,4 +107,3 @@ async function Sidebar({
</aside>
);
}