From 19603698f8249b01cda314276e1d382036804e9f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kov=C3=A1cs=20Zsombor?= <125221225+KoZsombat@users.noreply.github.com> Date: Wed, 20 May 2026 19:28:55 +0200 Subject: [PATCH 1/2] navbar admin dash access for all roles that need it --- apps/iris/src/components/navbar.tsx | 11 +++++--- apps/iris/src/routes/_private/admin/route.tsx | 3 ++- apps/iris/src/utils/admin-access.ts | 27 +++++++++++++++++++ 3 files changed, 36 insertions(+), 5 deletions(-) create mode 100644 apps/iris/src/utils/admin-access.ts diff --git a/apps/iris/src/components/navbar.tsx b/apps/iris/src/components/navbar.tsx index 1967a8b2..b0829947 100644 --- a/apps/iris/src/components/navbar.tsx +++ b/apps/iris/src/components/navbar.tsx @@ -27,6 +27,7 @@ import { } from '@/components/ui/dropdown-menu'; import { Spinner } from '@/components/ui/spinner'; import { LanguageSelector } from '@/components/util/language-selector'; +import { canAccessAdminUi } from '@/utils/admin-access'; import { authClient } from '@/utils/authentication'; type NavbarProps = { @@ -64,7 +65,9 @@ export function Navbar({ {data && showLinks && ( - + )}
@@ -188,11 +191,11 @@ export function Navbar({ ); } -function NavLinks({ userRoles }: { userRoles?: string[] }) { +function NavLinks({ userPermissions }: { userPermissions?: string[] }) { const navigate = useNavigate(); const { t } = useTranslation(); - const isAdmin = userRoles?.includes('admin'); + const canSeeAdminUi = canAccessAdminUi(userPermissions); return (
@@ -214,7 +217,7 @@ function NavLinks({ userRoles }: { userRoles?: string[] }) { {t('substitutions')} - {isAdmin && ( + {canSeeAdminUi && (