Skip to content

AnimatedDropdown

Floating dropdown with hover or click activation.

Props

AnimatedDropdownProps

PropTypeDefaultDescription
openOn'hover' | 'click''hover'Activation mode
placementPlacement'bottom-end'Dropdown position
offsetnumber8Distance from trigger
alignEdgebooleanfalseAlign to trigger edge
disabledbooleanfalseDisable dropdown
onOpenChange(open: boolean) => void-Open state callback
childrenReactNodeRequiredTrigger and content

Placement

ts
type Placement = 'bottom-end' | 'bottom-start' | 'top-end' | 'top-start' | 'right' | 'left'

Compound Components

AnimatedDropdownTrigger

Wraps the trigger element.

AnimatedDropdownContent

Contains dropdown content.

Context Hook

ts
const { open, setOpen, placement } = useAnimatedDropdown()

Example

tsx
<AnimatedDropdown openOn="click" placement="bottom-end">
  <AnimatedDropdownTrigger>
    <Button>Menu</Button>
  </AnimatedDropdownTrigger>
  <AnimatedDropdownContent>
    <div className="p-2">
      <button>Option 1</button>
      <button>Option 2</button>
    </div>
  </AnimatedDropdownContent>
</AnimatedDropdown>

See also