11'use client' ;
22
3- import type { ExtendedRefs , useInteractions } from '@floating-ui/react' ;
3+ import type { ExtendedRefs } from '@floating-ui/react' ;
44import { FloatingFocusManager , FloatingList , useListNavigation , useTypeahead } from '@floating-ui/react' ;
55import type {
66 ComponentProps ,
@@ -14,22 +14,19 @@ import type {
1414 RefCallback ,
1515 SetStateAction ,
1616} from 'react' ;
17- import { cloneElement , createContext , useCallback , useEffect , useMemo , useRef , useState } from 'react' ;
17+ import { cloneElement , useCallback , useEffect , useMemo , useRef , useState } from 'react' ;
1818import { HiOutlineChevronDown , HiOutlineChevronLeft , HiOutlineChevronRight , HiOutlineChevronUp } from 'react-icons/hi' ;
1919import { twMerge } from 'tailwind-merge' ;
2020import { mergeDeep } from '../../helpers/merge-deep' ;
2121import { useBaseFLoating , useFloatingInteractions } from '../../helpers/use-floating' ;
2222import { getTheme } from '../../theme-store' ;
2323import type { DeepPartial } from '../../types' ;
24- import type { ButtonProps } from '../Button' ;
25- import { Button } from '../Button' ;
24+ import { Button , type ButtonProps } from '../Button' ;
2625import type { FloatingProps , FlowbiteFloatingTheme } from '../Floating' ;
27- import type { FlowbiteDropdownDividerTheme } from './DropdownDivider' ;
28- import { DropdownDivider } from './DropdownDivider' ;
29- import type { FlowbiteDropdownHeaderTheme } from './DropdownHeader' ;
30- import { DropdownHeader } from './DropdownHeader' ;
31- import type { FlowbiteDropdownItemTheme } from './DropdownItem' ;
32- import { DropdownItem } from './DropdownItem' ;
26+ import { DropdownContext } from './DropdownContext' ;
27+ import { DropdownDivider , type FlowbiteDropdownDividerTheme } from './DropdownDivider' ;
28+ import { DropdownHeader , type FlowbiteDropdownHeaderTheme } from './DropdownHeader' ;
29+ import { DropdownItem , type FlowbiteDropdownItemTheme } from './DropdownItem' ;
3330
3431export interface FlowbiteDropdownFloatingTheme
3532 extends FlowbiteFloatingTheme ,
@@ -117,15 +114,6 @@ const Trigger = ({
117114 ) ;
118115} ;
119116
120- interface DropdownContextValue {
121- activeIndex : number | null ;
122- dismissOnClick ?: boolean ;
123- getItemProps : ReturnType < typeof useInteractions > [ 'getItemProps' ] ;
124- handleSelect : ( index : number | null ) => void ;
125- }
126-
127- export const DropdownContext = createContext < DropdownContextValue > ( { } as DropdownContextValue ) ;
128-
129117const DropdownComponent : FC < DropdownProps > = ( {
130118 children,
131119 className,
@@ -219,6 +207,7 @@ const DropdownComponent: FC<DropdownProps> = ({
219207 </ Trigger >
220208 < DropdownContext . Provider
221209 value = { {
210+ theme,
222211 activeIndex,
223212 dismissOnClick,
224213 getItemProps,
0 commit comments