3
3
import { useListItem , useMergeRefs } from '@floating-ui/react' ;
4
4
import { forwardRef , type ComponentProps , type ElementType , type FC , type RefCallback } from 'react' ;
5
5
import { twMerge } from 'tailwind-merge' ;
6
+ import type { PolymorphicComponentPropWithRef , PolymorphicRef } from '../../helpers/generic-as-prop' ;
6
7
import { mergeDeep } from '../../helpers/merge-deep' ;
7
8
import type { DeepPartial } from '../../types' ;
8
9
import { ButtonBase , type ButtonBaseProps } from '../Button/ButtonBase' ;
9
10
import { useDropdownContext } from './DropdownContext' ;
10
- import type { PolymorphicComponentPropWithRef , PolymorphicRef } from '~/src/helpers/generic-as-prop' ;
11
11
12
12
export interface FlowbiteDropdownItemTheme {
13
13
container : string ;
@@ -25,11 +25,11 @@ export type DropdownItemProps<T extends ElementType = 'button'> = PolymorphicCom
25
25
}
26
26
> ;
27
27
28
- type DropdownItemComponentType = ( < C extends React . ElementType = 'button' > (
29
- props : DropdownItemProps < C > ,
30
- ) => React . ReactNode | null ) & { displayName ?: string } ;
28
+ type DropdownItemComponentType = ( < C extends ElementType = 'button' > ( props : DropdownItemProps < C > ) => JSX . Element ) & {
29
+ displayName ?: string ;
30
+ } ;
31
31
32
- export const DropdownItem : DropdownItemComponentType = forwardRef (
32
+ export const DropdownItem = forwardRef (
33
33
< T extends ElementType = 'button' > (
34
34
{ children, className, icon : Icon , onClick, theme : customTheme = { } , ...props } : DropdownItemProps < T > ,
35
35
forwardedRef : PolymorphicRef < T > ,
@@ -62,5 +62,6 @@ export const DropdownItem: DropdownItemComponentType = forwardRef(
62
62
</ li >
63
63
) ;
64
64
} ,
65
- ) ;
65
+ ) as DropdownItemComponentType ;
66
+
66
67
DropdownItem . displayName = 'DropdownItem' ;
0 commit comments