Spaces:
Sleeping
Sleeping
import * as React from 'react'; | |
import Link from 'next/link'; | |
import { auth, authEmail } from '@/auth'; | |
import { Button } from '@/components/ui/Button'; | |
import { UserMenu } from '@/components/UserMenu'; | |
import { | |
Tooltip, | |
TooltipContent, | |
TooltipTrigger, | |
} from '@/components/ui/Tooltip'; | |
import { IconPlus, IconSeparator } from '@/components/ui/Icons'; | |
import { LoginMenu } from './LoginMenu'; | |
import { redirect } from 'next/navigation'; | |
export async function Header() { | |
const session = await auth(); | |
const { isAdmin } = await authEmail(); | |
return ( | |
<header className="sticky top-0 z-50 flex items-center justify-end w-full h-16 px-8 border-b shrink-0 bg-gradient-to-b from-background/10 via-background/50 to-background/80 backdrop-blur-xl"> | |
{/* <Tooltip> | |
<TooltipTrigger asChild> | |
<Button variant="link" asChild className="mr-2"> | |
<Link href="/chat"> | |
<IconPlus /> | |
</Link> | |
</Button> | |
</TooltipTrigger> | |
<TooltipContent>New chat</TooltipContent> | |
</Tooltip> */} | |
{isAdmin && ( | |
<Button variant="link" asChild className="mr-2"> | |
<Link href="/project">Projects (Internal)</Link> | |
</Button> | |
)} | |
<Button variant="link" asChild className="mr-2"> | |
<Link href="/chat">Chat</Link> | |
</Button> | |
<IconSeparator className="size-6 text-muted-foreground/50" /> | |
<div className="flex items-center"> | |
{session?.user ? <UserMenu user={session!.user} /> : <LoginMenu />} | |
</div> | |
</header> | |
); | |
} | |