import { AlertCircle, ChevronsUpDown } from 'lucide-react'
import Link from 'next/link'
import { forwardRef, type ReactNode } from 'react'
import { Button, cn, Popover, PopoverContent, PopoverTrigger } from 'ui'
interface AppLayoutDropdownErrorProps {
message: string
}
export function AppLayoutDropdownError({ message }: AppLayoutDropdownErrorProps) {
return (
)
}
interface AppLayoutDropdownTriggerButtonProps extends React.ButtonHTMLAttributes {
className?: string
}
export const AppLayoutDropdownTriggerButton = forwardRef<
HTMLButtonElement,
AppLayoutDropdownTriggerButtonProps
>(({ className, ...props }, ref) => (
}
{...props}
type="text"
/>
))
AppLayoutDropdownTriggerButton.displayName = 'AppLayoutDropdownTriggerButton'
export interface AppLayoutDropdownWithPopoverProps {
linkHref: string
linkContent: ReactNode
linkClassName?: string
commandContent: ReactNode
open: boolean
onOpenChange: (open: boolean) => void
triggerButtonClassName?: string
}
export function AppLayoutDropdownWithPopover({
linkHref,
linkContent,
linkClassName = 'flex items-center gap-2 shrink-0 text-sm',
commandContent,
open,
onOpenChange,
triggerButtonClassName,
}: AppLayoutDropdownWithPopoverProps) {
return (
{commandContent}
)
}