diff --git a/packages/@headlessui-react/src/components/menu/menu.tsx b/packages/@headlessui-react/src/components/menu/menu.tsx index ef3b8a9..0862bf6 100644 --- a/packages/@headlessui-react/src/components/menu/menu.tsx +++ b/packages/@headlessui-react/src/components/menu/menu.tsx @@ -211,15 +211,6 @@ function useMenuContext(component: string) { return context } -const defaultState: StateDefinition = { - menuState: MenuStates.Closed, - buttonRef: React.createRef(), - itemsRef: React.createRef(), - items: [], - searchQuery: '', - activeItemIndex: null, -} - function stateReducer(state: StateDefinition, action: Actions) { return match(action.type, reducers, state, action) } @@ -234,7 +225,14 @@ export function Menu( props: Props ) { const d = useDisposables() - const reducerBag = React.useReducer(stateReducer, defaultState) + const reducerBag = React.useReducer(stateReducer, { + menuState: MenuStates.Closed, + buttonRef: React.createRef(), + itemsRef: React.createRef(), + items: [], + searchQuery: '', + activeItemIndex: null, + } as StateDefinition) const [{ menuState, itemsRef, buttonRef }, dispatch] = reducerBag React.useEffect(() => {