// @flow /* eslint-disable jsx-a11y/mouse-events-have-key-events */ import * as React from 'react'; import { Cell, Span } from './styled'; type Props = { columnIndex: number, key: string, rowIndex: number, style: CSSStyleDeclaration, columns: React$Element[], onHover: (props: { rowIndex: number, columnIndex: number, }) => mixed, rowStyleObject: CSSStyleDeclaration, rowClass: string, hasHorizontalBorder: boolean, hasVerticalBorder: boolean, isEven: boolean, hoveredColumn: boolean, hoveredRow: boolean, }; const defaultCellRenderer = (data: Object[]) => ({ columnIndex, key, rowIndex, style, columns, onHover, rowStyleObject, rowClass, hasHorizontalBorder, hasVerticalBorder, isEven, hoveredColumn, hoveredRow, }: Props) => ( onHover({ rowIndex, columnIndex })} isEven={isEven} hoveredColumn={hoveredColumn} hoveredRow={hoveredRow} key={key} style={{ ...rowStyleObject, ...style, }} > {data[rowIndex][columns[columnIndex].props.dataKey]} ); export default defaultCellRenderer;