diff --git a/packages/pl-fe/src/components/dropdown-menu/dropdown-menu.tsx b/packages/pl-fe/src/components/dropdown-menu/dropdown-menu.tsx index 0676b5ee3..3b21ea994 100644 --- a/packages/pl-fe/src/components/dropdown-menu/dropdown-menu.tsx +++ b/packages/pl-fe/src/components/dropdown-menu/dropdown-menu.tsx @@ -317,7 +317,7 @@ const DropdownMenu = (props: IDropdownMenu) => { onKeyPress: handleKeyPress, ref: refs.setReference, }); - }, [children]); + }, [children, !!items?.length, component]); if (items?.length === 0 && !component) { return null; @@ -343,7 +343,7 @@ const DropdownMenu = (props: IDropdownMenu) => { return ( <> - {children ? clonedChildren : ( + {clonedChildren || ( = ({ } }; + const clonedChildren = useMemo(() => children ? ( + React.cloneElement(children, { + onClick: handleClick, + onKeyDown: handleKeyDown, + ref: refs.setReference, + }) + ) : null, [children]); + return (
- {children ? ( - React.cloneElement(children, { - onClick: handleClick, - onKeyDown: handleKeyDown, - ref: refs.setReference, - }) - ) : ( + {clonedChildren || (