nzediegwu1/EventManager

View on GitHub
client/src/components/table.js

Summary

Maintainability
A
0 mins
Test Coverage
import React from 'react';
import PropTypes from 'prop-types';

const tableColumns = (columnArray, type) => {
  const colNumber = columnArray.length;
  const columns = columnArray.map(item => {
    const key = Math.floor(Math.random() * 10906) + 5;
    return type === 'header' ? (
      <th key={key} className={colNumber === 3 ? 'col-sm-4' : undefined}>
        {item}
      </th>
    ) : (
      <td key={key} className={colNumber === 3 ? 'col-sm-4' : undefined}>
        {item}
      </td>
    );
  }); // comumns return will be an array of column cells
  return columns;
};

export const TableHead = props => (
  <thead className={props.class}>
    <tr>{tableColumns(props.columns, 'header')}</tr>
  </thead>
);
export const TableRow = props => <tr className={props.class}>{tableColumns(props.columns)}</tr>;
TableHead.propTypes = {
  class: PropTypes.string,
  columns: PropTypes.array,
};
TableRow.propTypes = {
  class: PropTypes.string,
  columns: PropTypes.array,
};