The code powering m.abunchtell.com https://m.abunchtell.com
Não pode escolher mais do que 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.
 
 
 
 

43 linhas
1.6 KiB

  1. import React from 'react';
  2. import PropTypes from 'prop-types';
  3. import ImmutablePropTypes from 'react-immutable-proptypes';
  4. import ActionBar from './action_bar';
  5. import Avatar from '../../../components/avatar';
  6. import Permalink from '../../../components/permalink';
  7. import IconButton from '../../../components/icon_button';
  8. import { FormattedMessage } from 'react-intl';
  9. import ImmutablePureComponent from 'react-immutable-pure-component';
  10. export default class NavigationBar extends ImmutablePureComponent {
  11. static propTypes = {
  12. account: ImmutablePropTypes.map.isRequired,
  13. onClose: PropTypes.func,
  14. };
  15. render () {
  16. return (
  17. <div className='navigation-bar'>
  18. <Permalink href={this.props.account.get('url')} to={`/accounts/${this.props.account.get('id')}`}>
  19. <span style={{ display: 'none' }}>{this.props.account.get('acct')}</span>
  20. <Avatar account={this.props.account} size={40} />
  21. </Permalink>
  22. <div className='navigation-bar__profile'>
  23. <Permalink href={this.props.account.get('url')} to={`/accounts/${this.props.account.get('id')}`}>
  24. <strong className='navigation-bar__profile-account'>@{this.props.account.get('acct')}</strong>
  25. </Permalink>
  26. <a href='/settings/profile' className='navigation-bar__profile-edit'><FormattedMessage id='navigation_bar.edit_profile' defaultMessage='Edit profile' /></a>
  27. </div>
  28. <div className='navigation-bar__actions'>
  29. <IconButton className='close' title='' icon='close' onClick={this.props.onClose} />
  30. <ActionBar account={this.props.account} />
  31. </div>
  32. </div>
  33. );
  34. }
  35. }