]> cat aescling's git repositories - mastodon.git/blob - app/javascript/mastodon/components/display_name.js
Redesign public hashtag page to use a masonry layout (#9822)
[mastodon.git] / app / javascript / mastodon / components / display_name.js
1 import React from 'react';
2 import ImmutablePropTypes from 'react-immutable-proptypes';
3 import PropTypes from 'prop-types';
4
5 export default class DisplayName extends React.PureComponent {
6
7 static propTypes = {
8 account: ImmutablePropTypes.map.isRequired,
9 others: ImmutablePropTypes.list,
10 localDomain: PropTypes.string,
11 };
12
13 render () {
14 const { account, others, localDomain } = this.props;
15 const displayNameHtml = { __html: account.get('display_name_html') };
16
17 let suffix;
18
19 if (others && others.size > 1) {
20 suffix = `+${others.size}`;
21 } else {
22 let acct = account.get('acct');
23
24 if (acct.indexOf('@') === -1 && localDomain) {
25 acct = `${acct}@${localDomain}`;
26 }
27
28 suffix = <span className='display-name__account'>@{acct}</span>;
29 }
30
31 return (
32 <span className='display-name'>
33 <bdi><strong className='display-name__html' dangerouslySetInnerHTML={displayNameHtml} /></bdi> {suffix}
34 </span>
35 );
36 }
37
38 }
This page took 0.076597 seconds and 5 git commands to generate.