* wip * wip * Ok * Deleted unused code * Fixed lint * Minor fixes * Minor fixes * Minor Fixes * Minor merge fixes * Ok * Fix storybook tests * Removed console.log * Fix login * asd * Fixed storybook * Added await * Fixed await * Added sleep for failing test * Fix sleep * Fix test * Fix tests --------- Co-authored-by: Charles Bochet <charles@twenty.com>
40 lines
912 B
TypeScript
40 lines
912 B
TypeScript
import styled from '@emotion/styled';
|
|
|
|
import { TableColumn } from '@/people/table/components/peopleColumns';
|
|
|
|
import { CheckboxCell } from './CheckboxCell';
|
|
import { EntityTableCell } from './EntityTableCell';
|
|
|
|
const StyledRow = styled.tr<{ selected: boolean }>`
|
|
background: ${(props) =>
|
|
props.selected ? props.theme.background.secondary : 'none'};
|
|
`;
|
|
|
|
export function EntityTableRow({
|
|
columns,
|
|
rowId,
|
|
}: {
|
|
columns: TableColumn[];
|
|
rowId: string;
|
|
}) {
|
|
return (
|
|
<StyledRow data-testid={`row-id-${rowId}`} selected={false}>
|
|
<td>
|
|
<CheckboxCell />
|
|
</td>
|
|
{columns.map((column, columnIndex) => {
|
|
return (
|
|
<EntityTableCell
|
|
key={column.id}
|
|
size={column.size}
|
|
cellIndex={columnIndex}
|
|
>
|
|
{column.cellComponent}
|
|
</EntityTableCell>
|
|
);
|
|
})}
|
|
<td></td>
|
|
</StyledRow>
|
|
);
|
|
}
|