'use strict'; import React from 'react'; import TableHeaderItemCarret from './table_header_item_carret'; let TableHeaderItem = React.createClass({ propTypes: { displayElement: React.PropTypes.oneOfType([ React.PropTypes.string, React.PropTypes.element ]).isRequired, columnName: React.PropTypes.string.isRequired, canBeOrdered: React.PropTypes.bool, changeOrder: React.PropTypes.func, orderAsc: React.PropTypes.bool, orderBy: React.PropTypes.string, className: React.PropTypes.string }, changeOrder() { this.props.changeOrder(this.props.columnName, !this.props.orderAsc); }, render() { const { canBeOrdered, changeOrder, className, columnName, displayElement, orderAsc, orderBy } = this.props; if (canBeOrdered && changeOrder && orderAsc != null && orderBy) { if (columnName === orderBy) { return ( {displayElement} ); } else { return ( {displayElement} ); } } else { return ( {displayElement} ); } } }); export default TableHeaderItem;