import React, { ReactNode, ReactElement, MouseEvent } from 'react'; import Dropdown from '../Dropdown'; import Button from '../Button'; import { StyledFilterWrapper, StyledFilterTargetWrapper } from './StyledTable'; interface TableFilterProps { 'data-test-id'?: string; hasFilterInput: boolean; renderFilter: (props: { onClose: () => void }) => ReactNode; } const TableFilter = ({ renderFilter, hasFilterInput, 'data-test-id': dataTestId, }: TableFilterProps): ReactElement => { const [open, setOpen] = React.useState(false); const onClose = React.useCallback(() => setOpen(false), [setOpen]); const onOpen = React.useCallback(() => setOpen(true), [setOpen]); const target = ( ); const content = renderFilter({ onClose }); return ( { e.stopPropagation(); }} > ); }; export default TableFilter;