@@ -2,10 +2,10 @@ import { Button } from "@/components/ui/Button";
22import { DropdownMenu , DropdownMenuContent , DropdownMenuItem , DropdownMenuTrigger } from "@/components/ui/DropdownMenu" ;
33import { Link } from "@/lib/navigation" ;
44import { ChevronLeft , LogOut , User } from "lucide-react" ;
5- import { USER_LINKS } from "./constant" ;
65import { useTranslations } from "next-intl" ;
76import { useAuthUser } from "@/components/hooks/UseAuthUser" ;
87import { useAuthService } from "@/features/auth/hooks/useAuth" ;
8+ import { getUserLinks } from "./constant" ;
99
1010const DesktopUserMenu = ( ) => {
1111 const t = useTranslations ( "Layout" ) ;
@@ -41,16 +41,12 @@ const DesktopUserMenu = () => {
4141 </ div >
4242 </ Link >
4343 </ DropdownMenuItem >
44- { user ?. role === "admin" && (
45- < DropdownMenuItem asChild >
46- < Link href = "/admin/events" > Dashboard</ Link >
47- </ DropdownMenuItem >
48- ) }
49- { USER_LINKS . map ( ( { id, href } ) => (
50- < DropdownMenuItem key = { id } asChild >
51- < Link href = { href } > { t ( `navbar.user.${ id } ` ) } </ Link >
52- </ DropdownMenuItem >
53- ) ) }
44+ { user &&
45+ getUserLinks ( user . role ) . map ( ( { id, href } ) => (
46+ < DropdownMenuItem key = { id } asChild >
47+ < Link href = { href } > { t ( `navbar.user.${ id } ` ) } </ Link >
48+ </ DropdownMenuItem >
49+ ) ) }
5450 < DropdownMenuItem onClick = { logout } >
5551 < span className = "text-destructive hover:text-destructive/80 flex cursor-pointer items-center gap-2" >
5652 < LogOut size = { 16 } />
@@ -84,13 +80,14 @@ const MobileUserMenu = () => {
8480 < p className = "text-muted-foreground text-xs" > { user ?. email } </ p >
8581 </ div >
8682 </ Link >
87- { USER_LINKS . map ( ( { id, href } ) => (
88- < Link key = { id } href = { href } >
89- < Button variant = "outline" size = "sm" className = "w-full cursor-pointer justify-start" >
90- { t ( `navbar.user.${ id } ` ) }
91- </ Button >
92- </ Link >
93- ) ) }
83+ { user &&
84+ getUserLinks ( user . role ) . map ( ( { id, href } ) => (
85+ < Link key = { id } href = { href } >
86+ < Button variant = "outline" size = "sm" className = "w-full cursor-pointer justify-start" >
87+ { t ( `navbar.user.${ id } ` ) }
88+ </ Button >
89+ </ Link >
90+ ) ) }
9491 < Button
9592 variant = "outline"
9693 size = "sm"
0 commit comments