@@ -3,7 +3,6 @@ import { useState } from 'react';
33import { cn } from '@venusprotocol/ui' ;
44import { useBreakpointUp } from 'hooks/responsive' ;
55
6- import { useTranslation } from 'libs/translations' ;
76import { Modal } from '../Modal' ;
87import type { DropdownProps } from './types' ;
98
@@ -23,9 +22,8 @@ export const Dropdown = ({
2322 menuPosition = 'left' ,
2423 triggerOnHover = false ,
2524} : DropdownProps ) => {
26- const { t } = useTranslation ( ) ;
27- const [ isDropdownOpened , setIsDropdownOpened ] = useState ( false ) ;
28- const handleToggleDropdown = ( ) => setIsDropdownOpened ( ! isDropdownOpened ) ;
25+ const [ isDropdownOpen , setIsDropdownOpen ] = useState ( false ) ;
26+ const handleToggleDropdown = ( ) => setIsDropdownOpen ( ! isDropdownOpen ) ;
2927
3028 const isMdOrUp = useBreakpointUp ( 'md' ) ;
3129
@@ -40,28 +38,28 @@ export const Dropdown = ({
4038
4139 < div
4240 className = "relative w-full"
43- onMouseEnter = { triggerOnHover ? ( ) => setIsDropdownOpened ( true ) : undefined }
44- onMouseLeave = { triggerOnHover ? ( ) => setIsDropdownOpened ( false ) : undefined }
41+ onMouseEnter = { triggerOnHover && isMdOrUp ? ( ) => setIsDropdownOpen ( true ) : undefined }
42+ onMouseLeave = { triggerOnHover && isMdOrUp ? ( ) => setIsDropdownOpen ( false ) : undefined }
4543 >
4644 { /* MD and up backdrop — click mode only */ }
47- { isDropdownOpened && ! triggerOnHover && (
45+ { isDropdownOpen && ! triggerOnHover && (
4846 < div
4947 className = "fixed bottom-0 left-0 right-0 top-0 hidden md:block z-50"
50- onClick = { ( ) => setIsDropdownOpened ( false ) }
48+ onClick = { ( ) => setIsDropdownOpen ( false ) }
5149 />
5250 ) }
5351
54- { children ( { isDropdownOpened , handleToggleDropdown } ) }
52+ { children ( { isDropdownOpen , handleToggleDropdown } ) }
5553
5654 { /* XS to MD menu */ }
57- { isDropdownOpened && (
55+ { isDropdownOpen && (
5856 < div className = "relative z-50 hidden min-w-full md:block" >
5957 < div
6058 className = { cn ( 'pt-2 absolute min-w-full' , menuPosition === 'right' && 'right-0' ) }
6159 >
6260 < div
6361 className = { cn (
64- 'border-lightGrey bg-cards overflow-hidden border shadow' ,
62+ 'border-lightGrey bg-cards overflow-visible border shadow' ,
6563 variant === 'quaternary' ? 'rounded-xl' : 'rounded-lg' ,
6664 menuClassName ,
6765 ) }
@@ -77,7 +75,7 @@ export const Dropdown = ({
7775 </ div >
7876 ) }
7977
80- { optionsDom ( { setIsDropdownOpened , optionClassName } ) }
78+ { optionsDom ( { setIsDropdownOpen , optionClassName } ) }
8179 </ div >
8280 </ div >
8381 </ div >
@@ -87,13 +85,13 @@ export const Dropdown = ({
8785
8886 { /* XS to MD menu */ }
8987 < Modal
90- isOpen = { isDropdownOpened && ! isMdOrUp }
88+ isOpen = { isDropdownOpen && ! isMdOrUp }
9189 handleClose = { handleToggleDropdown }
9290 noHorizontalPadding
9391 onBlur = { onBlur }
94- title = { menuTitle || t ( 'select.defaultLabel' ) }
92+ title = { menuTitle }
9593 >
96- { optionsDom ( { setIsDropdownOpened , optionClassName } ) }
94+ { optionsDom ( { setIsDropdownOpen , optionClassName } ) }
9795 </ Modal >
9896 </ >
9997 ) ;
0 commit comments