import { ScrollWrapper } from '@/ui/utilities/scroll/components/ScrollWrapper';
import styled from '@emotion/styled';
import { useId } from 'react';
const StyledDropdownMenuItemsExternalContainer = styled.div<{
hasMaxHeight?: boolean;
}>`
--padding: ${({ theme }) => theme.spacing(1)};
align-items: flex-start;
display: flex;
flex-direction: column;
max-height: ${({ hasMaxHeight }) => (hasMaxHeight ? '188px' : 'none')};
padding: var(--padding);
width: calc(100% - 2 * var(--padding));
`;
const StyledDropdownMenuItemsInternalContainer = styled.div`
align-items: stretch;
display: flex;
flex-direction: column;
gap: 2px;
height: 100%;
width: 100%;
`;
const StyledScrollWrapper = styled(ScrollWrapper)`
width: 100%;
`;
// TODO: refactor this, the dropdown should handle the max height behavior + scroll with the size middleware
// We should instead create a DropdownMenuItemsContainerScrollable or take for granted that it is the default behavior
export const DropdownMenuItemsContainer = ({
children,
hasMaxHeight,
className,
scrollable = true,
}: {
children: React.ReactNode;
hasMaxHeight?: boolean;
className?: string;
scrollable?: boolean;
}) => {
const id = useId();
return scrollable !== true ? (
{hasMaxHeight ? (
{children}
) : (
{children}
)}
) : (
{children}
);
};