You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

35 lines
852 B

  1. import ColumnHeader from './column_header';
  2. import PureRenderMixin from 'react-addons-pure-render-mixin';
  3. const Column = React.createClass({
  4. propTypes: {
  5. heading: React.PropTypes.string,
  6. icon: React.PropTypes.string
  7. },
  8. mixins: [PureRenderMixin],
  9. handleHeaderClick () {
  10. let node = ReactDOM.findDOMNode(this);
  11. node.querySelector('.scrollable').scrollTo(0, 0);
  12. },
  13. render () {
  14. let header = '';
  15. if (this.props.heading) {
  16. header = <ColumnHeader icon={this.props.icon} type={this.props.heading} onClick={this.handleHeaderClick} />;
  17. }
  18. return (
  19. <div style={{ width: '380px', flex: '0 0 auto', background: '#282c37', margin: '10px', marginRight: '0', display: 'flex', flexDirection: 'column' }}>
  20. {header}
  21. {this.props.children}
  22. </div>
  23. );
  24. }
  25. });
  26. export default Column;