'use strict'; import React from 'react'; import TableHeaderItem from './table_header_item'; import { ColumnModel } from './models/table_models'; let TableHeader = React.createClass({ propTypes: { columnList: React.PropTypes.arrayOf(React.PropTypes.instanceOf(ColumnModel)), itemList: React.PropTypes.array.isRequired, changeOrder: React.PropTypes.func, orderAsc: React.PropTypes.bool, orderBy: React.PropTypes.string }, render() { return ( <thead> <tr> {this.props.columnList.map((column, i) => { let columnName = column.columnName; let canBeOrdered = column.canBeOrdered; return ( <TableHeaderItem className={column.className} key={i} displayName={column.displayName} columnName={columnName} canBeOrdered={canBeOrdered} orderAsc={this.props.orderAsc} orderBy={this.props.orderBy} changeOrder={this.props.changeOrder} /> ); })} </tr> </thead> ); } }); export default TableHeader;