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
1.5 KiB

  1. import PureRenderMixin from 'react-addons-pure-render-mixin';
  2. import ImmutablePropTypes from 'react-immutable-proptypes';
  3. import Button from '../../../components/button';
  4. const Header = React.createClass({
  5. propTypes: {
  6. account: ImmutablePropTypes.map.isRequired,
  7. onFollow: React.PropTypes.func.isRequired,
  8. onUnfollow: React.PropTypes.func.isRequired
  9. },
  10. mixins: [PureRenderMixin],
  11. render () {
  12. const { account } = this.props;
  13. return (
  14. <div style={{ flex: '0 0 auto', background: '#2f3441', textAlign: 'center', backgroundImage: `url(${account.get('header')})`, backgroundSize: 'cover' }}>
  15. <div style={{ background: 'rgba(47, 52, 65, 0.8)', padding: '30px 10px' }}>
  16. <div style={{ width: '90px', margin: '0 auto', marginBottom: '15px', borderRadius: '90px', overflow: 'hidden' }} className='transparent-background'>
  17. <img src={account.get('avatar')} alt='' style={{ display: 'block', width: '90px', height: '90px', borderRadius: '90px' }} />
  18. </div>
  19. <span style={{ color: '#fff', fontSize: '20px', lineHeight: '27px', fontWeight: '500', display: 'block' }}>{account.get('display_name')}</span>
  20. <span style={{ fontSize: '14px', fontWeight: '400', display: 'block', color: '#2b90d9', marginBottom: '15px' }}>@{account.get('acct')}</span>
  21. <p style={{ color: '#616b86', fontSize: '14px' }}>{account.get('note')}</p>
  22. </div>
  23. </div>
  24. );
  25. }
  26. });
  27. export default Header;