[Glitch] Add type annotation for DisplayName component
Port 349cae0b57 to glitch-soc
Signed-off-by: Claire <claire.github-309c@sitedethib.com>
			
			
This commit is contained in:
		
				
					committed by
					
						
						Claire
					
				
			
			
				
	
			
			
			
						parent
						
							ea1f9b4223
						
					
				
				
					commit
					7d9b7f28b8
				
			@@ -2,7 +2,7 @@ import React, { Fragment } from 'react';
 | 
				
			|||||||
import ImmutablePropTypes from 'react-immutable-proptypes';
 | 
					import ImmutablePropTypes from 'react-immutable-proptypes';
 | 
				
			||||||
import PropTypes from 'prop-types';
 | 
					import PropTypes from 'prop-types';
 | 
				
			||||||
import { Avatar } from './avatar';
 | 
					import { Avatar } from './avatar';
 | 
				
			||||||
import DisplayName from './display_name';
 | 
					import { DisplayName } from './display_name';
 | 
				
			||||||
import Permalink from './permalink';
 | 
					import Permalink from './permalink';
 | 
				
			||||||
import { IconButton } from './icon_button';
 | 
					import { IconButton } from './icon_button';
 | 
				
			||||||
import { defineMessages, injectIntl } from 'react-intl';
 | 
					import { defineMessages, injectIntl } from 'react-intl';
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,83 +0,0 @@
 | 
				
			|||||||
import React from 'react';
 | 
					 | 
				
			||||||
import ImmutablePropTypes from 'react-immutable-proptypes';
 | 
					 | 
				
			||||||
import PropTypes from 'prop-types';
 | 
					 | 
				
			||||||
import classNames from 'classnames';
 | 
					 | 
				
			||||||
import { autoPlayGif } from 'flavours/glitch/initial_state';
 | 
					 | 
				
			||||||
import Skeleton from 'flavours/glitch/components/skeleton';
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
export default class DisplayName extends React.PureComponent {
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  static propTypes = {
 | 
					 | 
				
			||||||
    account: ImmutablePropTypes.map,
 | 
					 | 
				
			||||||
    others: ImmutablePropTypes.list,
 | 
					 | 
				
			||||||
    localDomain: PropTypes.string,
 | 
					 | 
				
			||||||
    inline: PropTypes.bool,
 | 
					 | 
				
			||||||
  };
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  handleMouseEnter = ({ currentTarget }) => {
 | 
					 | 
				
			||||||
    if (autoPlayGif) {
 | 
					 | 
				
			||||||
      return;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    const emojis = currentTarget.querySelectorAll('.custom-emoji');
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    for (var i = 0; i < emojis.length; i++) {
 | 
					 | 
				
			||||||
      let emoji = emojis[i];
 | 
					 | 
				
			||||||
      emoji.src = emoji.getAttribute('data-original');
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
  };
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  handleMouseLeave = ({ currentTarget }) => {
 | 
					 | 
				
			||||||
    if (autoPlayGif) {
 | 
					 | 
				
			||||||
      return;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    const emojis = currentTarget.querySelectorAll('.custom-emoji');
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    for (var i = 0; i < emojis.length; i++) {
 | 
					 | 
				
			||||||
      let emoji = emojis[i];
 | 
					 | 
				
			||||||
      emoji.src = emoji.getAttribute('data-static');
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
  };
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  render () {
 | 
					 | 
				
			||||||
    const { others, localDomain, inline } = this.props;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    let displayName, suffix, account;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    if (others && others.size > 1) {
 | 
					 | 
				
			||||||
      displayName = others.take(2).map(a => <bdi key={a.get('id')}><strong className='display-name__html' dangerouslySetInnerHTML={{ __html: a.get('display_name_html') }} /></bdi>).reduce((prev, cur) => [prev, ', ', cur]);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      if (others.size - 2 > 0) {
 | 
					 | 
				
			||||||
        suffix = `+${others.size - 2}`;
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    } else if ((others && others.size > 0) || this.props.account) {
 | 
					 | 
				
			||||||
      if (others && others.size > 0) {
 | 
					 | 
				
			||||||
        account = others.first();
 | 
					 | 
				
			||||||
      } else {
 | 
					 | 
				
			||||||
        account = this.props.account;
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      let acct = account.get('acct');
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      if (acct.indexOf('@') === -1 && localDomain) {
 | 
					 | 
				
			||||||
        acct = `${acct}@${localDomain}`;
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      displayName = <bdi><strong className='display-name__html' dangerouslySetInnerHTML={{ __html: account.get('display_name_html') }} /></bdi>;
 | 
					 | 
				
			||||||
      suffix      = <span className='display-name__account'>@{acct}</span>;
 | 
					 | 
				
			||||||
    } else {
 | 
					 | 
				
			||||||
      displayName = <bdi><strong className='display-name__html'><Skeleton width='10ch' /></strong></bdi>;
 | 
					 | 
				
			||||||
      suffix = <span className='display-name__account'><Skeleton width='7ch' /></span>;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    return (
 | 
					 | 
				
			||||||
      <span className={classNames('display-name', { inline })} onMouseEnter={this.handleMouseEnter} onMouseLeave={this.handleMouseLeave}>
 | 
					 | 
				
			||||||
        {displayName}
 | 
					 | 
				
			||||||
        {inline ? ' ' : null}
 | 
					 | 
				
			||||||
        {suffix}
 | 
					 | 
				
			||||||
      </span>
 | 
					 | 
				
			||||||
    );
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										124
									
								
								app/javascript/flavours/glitch/components/display_name.tsx
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										124
									
								
								app/javascript/flavours/glitch/components/display_name.tsx
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,124 @@
 | 
				
			|||||||
 | 
					import React from 'react';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import classNames from 'classnames';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import type { List } from 'immutable';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import type { Account } from 'flavours/glitch/types/resources';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import { autoPlayGif } from '../initial_state';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import Skeleton from './skeleton';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					interface Props {
 | 
				
			||||||
 | 
					  account: Account;
 | 
				
			||||||
 | 
					  others: List<Account>;
 | 
				
			||||||
 | 
					  localDomain: string;
 | 
				
			||||||
 | 
					  inline?: boolean;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					export class DisplayName extends React.PureComponent<Props> {
 | 
				
			||||||
 | 
					  handleMouseEnter: React.ReactEventHandler<HTMLSpanElement> = ({
 | 
				
			||||||
 | 
					    currentTarget,
 | 
				
			||||||
 | 
					  }) => {
 | 
				
			||||||
 | 
					    if (autoPlayGif) {
 | 
				
			||||||
 | 
					      return;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    const emojis =
 | 
				
			||||||
 | 
					      currentTarget.querySelectorAll<HTMLImageElement>('img.custom-emoji');
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    emojis.forEach((emoji) => {
 | 
				
			||||||
 | 
					      const originalSrc = emoji.getAttribute('data-original');
 | 
				
			||||||
 | 
					      if (originalSrc != null) emoji.src = originalSrc;
 | 
				
			||||||
 | 
					    });
 | 
				
			||||||
 | 
					  };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  handleMouseLeave: React.ReactEventHandler<HTMLSpanElement> = ({
 | 
				
			||||||
 | 
					    currentTarget,
 | 
				
			||||||
 | 
					  }) => {
 | 
				
			||||||
 | 
					    if (autoPlayGif) {
 | 
				
			||||||
 | 
					      return;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    const emojis =
 | 
				
			||||||
 | 
					      currentTarget.querySelectorAll<HTMLImageElement>('img.custom-emoji');
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    emojis.forEach((emoji) => {
 | 
				
			||||||
 | 
					      const staticSrc = emoji.getAttribute('data-static');
 | 
				
			||||||
 | 
					      if (staticSrc != null) emoji.src = staticSrc;
 | 
				
			||||||
 | 
					    });
 | 
				
			||||||
 | 
					  };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  render() {
 | 
				
			||||||
 | 
					    const { others, localDomain, inline } = this.props;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    let displayName: React.ReactNode, suffix: React.ReactNode, account: Account;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    if (others && others.size > 1) {
 | 
				
			||||||
 | 
					      displayName = others
 | 
				
			||||||
 | 
					        .take(2)
 | 
				
			||||||
 | 
					        .map((a) => (
 | 
				
			||||||
 | 
					          <bdi key={a.get('id')}>
 | 
				
			||||||
 | 
					            <strong
 | 
				
			||||||
 | 
					              className='display-name__html'
 | 
				
			||||||
 | 
					              dangerouslySetInnerHTML={{ __html: a.get('display_name_html') }}
 | 
				
			||||||
 | 
					            />
 | 
				
			||||||
 | 
					          </bdi>
 | 
				
			||||||
 | 
					        ))
 | 
				
			||||||
 | 
					        .reduce((prev, cur) => [prev, ', ', cur]);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      if (others.size - 2 > 0) {
 | 
				
			||||||
 | 
					        suffix = `+${others.size - 2}`;
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    } else if ((others && others.size > 0) || this.props.account) {
 | 
				
			||||||
 | 
					      if (others && others.size > 0) {
 | 
				
			||||||
 | 
					        account = others.first();
 | 
				
			||||||
 | 
					      } else {
 | 
				
			||||||
 | 
					        account = this.props.account;
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      let acct = account.get('acct');
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      if (acct.indexOf('@') === -1 && localDomain) {
 | 
				
			||||||
 | 
					        acct = `${acct}@${localDomain}`;
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      displayName = (
 | 
				
			||||||
 | 
					        <bdi>
 | 
				
			||||||
 | 
					          <strong
 | 
				
			||||||
 | 
					            className='display-name__html'
 | 
				
			||||||
 | 
					            dangerouslySetInnerHTML={{
 | 
				
			||||||
 | 
					              __html: account.get('display_name_html'),
 | 
				
			||||||
 | 
					            }}
 | 
				
			||||||
 | 
					          />
 | 
				
			||||||
 | 
					        </bdi>
 | 
				
			||||||
 | 
					      );
 | 
				
			||||||
 | 
					      suffix = <span className='display-name__account'>@{acct}</span>;
 | 
				
			||||||
 | 
					    } else {
 | 
				
			||||||
 | 
					      displayName = (
 | 
				
			||||||
 | 
					        <bdi>
 | 
				
			||||||
 | 
					          <strong className='display-name__html'>
 | 
				
			||||||
 | 
					            <Skeleton width='10ch' />
 | 
				
			||||||
 | 
					          </strong>
 | 
				
			||||||
 | 
					        </bdi>
 | 
				
			||||||
 | 
					      );
 | 
				
			||||||
 | 
					      suffix = (
 | 
				
			||||||
 | 
					        <span className='display-name__account'>
 | 
				
			||||||
 | 
					          <Skeleton width='7ch' />
 | 
				
			||||||
 | 
					        </span>
 | 
				
			||||||
 | 
					      );
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    return (
 | 
				
			||||||
 | 
					      <span
 | 
				
			||||||
 | 
					        className={classNames('display-name', { inline })}
 | 
				
			||||||
 | 
					        onMouseEnter={this.handleMouseEnter}
 | 
				
			||||||
 | 
					        onMouseLeave={this.handleMouseLeave}
 | 
				
			||||||
 | 
					      >
 | 
				
			||||||
 | 
					        {displayName}
 | 
				
			||||||
 | 
					        {inline ? ' ' : null}
 | 
				
			||||||
 | 
					        {suffix}
 | 
				
			||||||
 | 
					      </span>
 | 
				
			||||||
 | 
					    );
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@@ -6,7 +6,7 @@ import ImmutablePropTypes from 'react-immutable-proptypes';
 | 
				
			|||||||
//  Mastodon imports.
 | 
					//  Mastodon imports.
 | 
				
			||||||
import { Avatar } from './avatar';
 | 
					import { Avatar } from './avatar';
 | 
				
			||||||
import AvatarOverlay from './avatar_overlay';
 | 
					import AvatarOverlay from './avatar_overlay';
 | 
				
			||||||
import DisplayName from './display_name';
 | 
					import { DisplayName } from './display_name';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export default class StatusHeader extends React.PureComponent {
 | 
					export default class StatusHeader extends React.PureComponent {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -4,7 +4,7 @@ import ImmutablePropTypes from 'react-immutable-proptypes';
 | 
				
			|||||||
import { FormattedMessage } from 'react-intl';
 | 
					import { FormattedMessage } from 'react-intl';
 | 
				
			||||||
import ImmutablePureComponent from 'react-immutable-pure-component';
 | 
					import ImmutablePureComponent from 'react-immutable-pure-component';
 | 
				
			||||||
import AvatarOverlay from '../../../components/avatar_overlay';
 | 
					import AvatarOverlay from '../../../components/avatar_overlay';
 | 
				
			||||||
import DisplayName from '../../../components/display_name';
 | 
					import { DisplayName } from '../../../components/display_name';
 | 
				
			||||||
import { Icon } from 'flavours/glitch/components/icon';
 | 
					import { Icon } from 'flavours/glitch/components/icon';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export default class MovedNote extends ImmutablePureComponent {
 | 
					export default class MovedNote extends ImmutablePureComponent {
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,6 +1,6 @@
 | 
				
			|||||||
import React from 'react';
 | 
					import React from 'react';
 | 
				
			||||||
import { Avatar } from 'flavours/glitch/components/avatar';
 | 
					import { Avatar } from 'flavours/glitch/components/avatar';
 | 
				
			||||||
import DisplayName from 'flavours/glitch/components/display_name';
 | 
					import { DisplayName } from 'flavours/glitch/components/display_name';
 | 
				
			||||||
import ImmutablePropTypes from 'react-immutable-proptypes';
 | 
					import ImmutablePropTypes from 'react-immutable-proptypes';
 | 
				
			||||||
import ImmutablePureComponent from 'react-immutable-pure-component';
 | 
					import ImmutablePureComponent from 'react-immutable-pure-component';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -5,7 +5,7 @@ import PropTypes from 'prop-types';
 | 
				
			|||||||
import { connect } from 'react-redux';
 | 
					import { connect } from 'react-redux';
 | 
				
			||||||
import { makeGetAccount } from 'flavours/glitch/selectors';
 | 
					import { makeGetAccount } from 'flavours/glitch/selectors';
 | 
				
			||||||
import { Avatar } from 'flavours/glitch/components/avatar';
 | 
					import { Avatar } from 'flavours/glitch/components/avatar';
 | 
				
			||||||
import DisplayName from 'flavours/glitch/components/display_name';
 | 
					import { DisplayName } from 'flavours/glitch/components/display_name';
 | 
				
			||||||
import Permalink from 'flavours/glitch/components/permalink';
 | 
					import Permalink from 'flavours/glitch/components/permalink';
 | 
				
			||||||
import { IconButton } from 'flavours/glitch/components/icon_button';
 | 
					import { IconButton } from 'flavours/glitch/components/icon_button';
 | 
				
			||||||
import Button from 'flavours/glitch/components/button';
 | 
					import Button from 'flavours/glitch/components/button';
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -5,7 +5,7 @@ import ImmutablePureComponent from 'react-immutable-pure-component';
 | 
				
			|||||||
import { connect } from 'react-redux';
 | 
					import { connect } from 'react-redux';
 | 
				
			||||||
import { makeGetAccount } from 'flavours/glitch/selectors';
 | 
					import { makeGetAccount } from 'flavours/glitch/selectors';
 | 
				
			||||||
import { Avatar } from 'flavours/glitch/components/avatar';
 | 
					import { Avatar } from 'flavours/glitch/components/avatar';
 | 
				
			||||||
import DisplayName from 'flavours/glitch/components/display_name';
 | 
					import { DisplayName } from 'flavours/glitch/components/display_name';
 | 
				
			||||||
import Permalink from 'flavours/glitch/components/permalink';
 | 
					import Permalink from 'flavours/glitch/components/permalink';
 | 
				
			||||||
import { IconButton } from 'flavours/glitch/components/icon_button';
 | 
					import { IconButton } from 'flavours/glitch/components/icon_button';
 | 
				
			||||||
import { injectIntl, defineMessages } from 'react-intl';
 | 
					import { injectIntl, defineMessages } from 'react-intl';
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -3,7 +3,7 @@ import PropTypes from 'prop-types';
 | 
				
			|||||||
import ImmutablePropTypes from 'react-immutable-proptypes';
 | 
					import ImmutablePropTypes from 'react-immutable-proptypes';
 | 
				
			||||||
import Permalink from 'flavours/glitch/components/permalink';
 | 
					import Permalink from 'flavours/glitch/components/permalink';
 | 
				
			||||||
import { Avatar } from 'flavours/glitch/components/avatar';
 | 
					import { Avatar } from 'flavours/glitch/components/avatar';
 | 
				
			||||||
import DisplayName from 'flavours/glitch/components/display_name';
 | 
					import { DisplayName } from 'flavours/glitch/components/display_name';
 | 
				
			||||||
import { IconButton } from 'flavours/glitch/components/icon_button';
 | 
					import { IconButton } from 'flavours/glitch/components/icon_button';
 | 
				
			||||||
import { defineMessages, injectIntl } from 'react-intl';
 | 
					import { defineMessages, injectIntl } from 'react-intl';
 | 
				
			||||||
import ImmutablePureComponent from 'react-immutable-pure-component';
 | 
					import ImmutablePureComponent from 'react-immutable-pure-component';
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -4,7 +4,7 @@ import { makeGetAccount } from '../../../selectors';
 | 
				
			|||||||
import ImmutablePureComponent from 'react-immutable-pure-component';
 | 
					import ImmutablePureComponent from 'react-immutable-pure-component';
 | 
				
			||||||
import ImmutablePropTypes from 'react-immutable-proptypes';
 | 
					import ImmutablePropTypes from 'react-immutable-proptypes';
 | 
				
			||||||
import { Avatar } from '../../../components/avatar';
 | 
					import { Avatar } from '../../../components/avatar';
 | 
				
			||||||
import DisplayName from '../../../components/display_name';
 | 
					import { DisplayName } from '../../../components/display_name';
 | 
				
			||||||
import { injectIntl } from 'react-intl';
 | 
					import { injectIntl } from 'react-intl';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const makeMapStateToProps = () => {
 | 
					const makeMapStateToProps = () => {
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -3,7 +3,7 @@ import PropTypes from 'prop-types';
 | 
				
			|||||||
import ImmutablePureComponent from 'react-immutable-pure-component';
 | 
					import ImmutablePureComponent from 'react-immutable-pure-component';
 | 
				
			||||||
import ImmutablePropTypes from 'react-immutable-proptypes';
 | 
					import ImmutablePropTypes from 'react-immutable-proptypes';
 | 
				
			||||||
import { Avatar } from 'flavours/glitch/components/avatar';
 | 
					import { Avatar } from 'flavours/glitch/components/avatar';
 | 
				
			||||||
import DisplayName from 'flavours/glitch/components/display_name';
 | 
					import { DisplayName } from 'flavours/glitch/components/display_name';
 | 
				
			||||||
import { IconButton } from 'flavours/glitch/components/icon_button';
 | 
					import { IconButton } from 'flavours/glitch/components/icon_button';
 | 
				
			||||||
import { defineMessages } from 'react-intl';
 | 
					import { defineMessages } from 'react-intl';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -2,7 +2,7 @@ import React, { Fragment } from 'react';
 | 
				
			|||||||
import ImmutablePropTypes from 'react-immutable-proptypes';
 | 
					import ImmutablePropTypes from 'react-immutable-proptypes';
 | 
				
			||||||
import PropTypes from 'prop-types';
 | 
					import PropTypes from 'prop-types';
 | 
				
			||||||
import { Avatar } from 'flavours/glitch/components/avatar';
 | 
					import { Avatar } from 'flavours/glitch/components/avatar';
 | 
				
			||||||
import DisplayName from 'flavours/glitch/components/display_name';
 | 
					import { DisplayName } from 'flavours/glitch/components/display_name';
 | 
				
			||||||
import Permalink from 'flavours/glitch/components/permalink';
 | 
					import Permalink from 'flavours/glitch/components/permalink';
 | 
				
			||||||
import { IconButton } from 'flavours/glitch/components/icon_button';
 | 
					import { IconButton } from 'flavours/glitch/components/icon_button';
 | 
				
			||||||
import { defineMessages, injectIntl, FormattedMessage } from 'react-intl';
 | 
					import { defineMessages, injectIntl, FormattedMessage } from 'react-intl';
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -6,7 +6,7 @@ import PropTypes from 'prop-types';
 | 
				
			|||||||
import { IconButton } from 'flavours/glitch/components/icon_button';
 | 
					import { IconButton } from 'flavours/glitch/components/icon_button';
 | 
				
			||||||
import { Link } from 'react-router-dom';
 | 
					import { Link } from 'react-router-dom';
 | 
				
			||||||
import { Avatar } from 'flavours/glitch/components/avatar';
 | 
					import { Avatar } from 'flavours/glitch/components/avatar';
 | 
				
			||||||
import DisplayName from 'flavours/glitch/components/display_name';
 | 
					import { DisplayName } from 'flavours/glitch/components/display_name';
 | 
				
			||||||
import { defineMessages, injectIntl } from 'react-intl';
 | 
					import { defineMessages, injectIntl } from 'react-intl';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const messages = defineMessages({
 | 
					const messages = defineMessages({
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -3,7 +3,7 @@ import PropTypes from 'prop-types';
 | 
				
			|||||||
import ImmutablePropTypes from 'react-immutable-proptypes';
 | 
					import ImmutablePropTypes from 'react-immutable-proptypes';
 | 
				
			||||||
import StatusContent from 'flavours/glitch/components/status_content';
 | 
					import StatusContent from 'flavours/glitch/components/status_content';
 | 
				
			||||||
import { Avatar } from 'flavours/glitch/components/avatar';
 | 
					import { Avatar } from 'flavours/glitch/components/avatar';
 | 
				
			||||||
import DisplayName from 'flavours/glitch/components/display_name';
 | 
					import { DisplayName } from 'flavours/glitch/components/display_name';
 | 
				
			||||||
import { RelativeTimestamp } from 'flavours/glitch/components/relative_timestamp';
 | 
					import { RelativeTimestamp } from 'flavours/glitch/components/relative_timestamp';
 | 
				
			||||||
import Option from './option';
 | 
					import Option from './option';
 | 
				
			||||||
import MediaAttachments from 'flavours/glitch/components/media_attachments';
 | 
					import MediaAttachments from 'flavours/glitch/components/media_attachments';
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -2,7 +2,7 @@ import React from 'react';
 | 
				
			|||||||
import PropTypes from 'prop-types';
 | 
					import PropTypes from 'prop-types';
 | 
				
			||||||
import ImmutablePropTypes from 'react-immutable-proptypes';
 | 
					import ImmutablePropTypes from 'react-immutable-proptypes';
 | 
				
			||||||
import { Avatar } from 'flavours/glitch/components/avatar';
 | 
					import { Avatar } from 'flavours/glitch/components/avatar';
 | 
				
			||||||
import DisplayName from 'flavours/glitch/components/display_name';
 | 
					import { DisplayName } from 'flavours/glitch/components/display_name';
 | 
				
			||||||
import StatusContent from 'flavours/glitch/components/status_content';
 | 
					import StatusContent from 'flavours/glitch/components/status_content';
 | 
				
			||||||
import MediaGallery from 'flavours/glitch/components/media_gallery';
 | 
					import MediaGallery from 'flavours/glitch/components/media_gallery';
 | 
				
			||||||
import AttachmentList from 'flavours/glitch/components/attachment_list';
 | 
					import AttachmentList from 'flavours/glitch/components/attachment_list';
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -5,7 +5,7 @@ import ImmutablePureComponent from 'react-immutable-pure-component';
 | 
				
			|||||||
import StatusContent from 'flavours/glitch/components/status_content';
 | 
					import StatusContent from 'flavours/glitch/components/status_content';
 | 
				
			||||||
import { Avatar } from 'flavours/glitch/components/avatar';
 | 
					import { Avatar } from 'flavours/glitch/components/avatar';
 | 
				
			||||||
import { RelativeTimestamp } from 'flavours/glitch/components/relative_timestamp';
 | 
					import { RelativeTimestamp } from 'flavours/glitch/components/relative_timestamp';
 | 
				
			||||||
import DisplayName from 'flavours/glitch/components/display_name';
 | 
					import { DisplayName } from 'flavours/glitch/components/display_name';
 | 
				
			||||||
import classNames from 'classnames';
 | 
					import classNames from 'classnames';
 | 
				
			||||||
import { IconButton } from 'flavours/glitch/components/icon_button';
 | 
					import { IconButton } from 'flavours/glitch/components/icon_button';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -7,7 +7,7 @@ import Button from 'flavours/glitch/components/button';
 | 
				
			|||||||
import StatusContent from 'flavours/glitch/components/status_content';
 | 
					import StatusContent from 'flavours/glitch/components/status_content';
 | 
				
			||||||
import { Avatar } from 'flavours/glitch/components/avatar';
 | 
					import { Avatar } from 'flavours/glitch/components/avatar';
 | 
				
			||||||
import { RelativeTimestamp } from 'flavours/glitch/components/relative_timestamp';
 | 
					import { RelativeTimestamp } from 'flavours/glitch/components/relative_timestamp';
 | 
				
			||||||
import DisplayName from 'flavours/glitch/components/display_name';
 | 
					import { DisplayName } from 'flavours/glitch/components/display_name';
 | 
				
			||||||
import AttachmentList from 'flavours/glitch/components/attachment_list';
 | 
					import AttachmentList from 'flavours/glitch/components/attachment_list';
 | 
				
			||||||
import { Icon } from 'flavours/glitch/components/icon';
 | 
					import { Icon } from 'flavours/glitch/components/icon';
 | 
				
			||||||
import ImmutablePureComponent from 'react-immutable-pure-component';
 | 
					import ImmutablePureComponent from 'react-immutable-pure-component';
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -6,7 +6,7 @@ import Button from 'flavours/glitch/components/button';
 | 
				
			|||||||
import StatusContent from 'flavours/glitch/components/status_content';
 | 
					import StatusContent from 'flavours/glitch/components/status_content';
 | 
				
			||||||
import { Avatar } from 'flavours/glitch/components/avatar';
 | 
					import { Avatar } from 'flavours/glitch/components/avatar';
 | 
				
			||||||
import { RelativeTimestamp } from 'flavours/glitch/components/relative_timestamp';
 | 
					import { RelativeTimestamp } from 'flavours/glitch/components/relative_timestamp';
 | 
				
			||||||
import DisplayName from 'flavours/glitch/components/display_name';
 | 
					import { DisplayName } from 'flavours/glitch/components/display_name';
 | 
				
			||||||
import AttachmentList from 'flavours/glitch/components/attachment_list';
 | 
					import AttachmentList from 'flavours/glitch/components/attachment_list';
 | 
				
			||||||
import { Icon } from 'flavours/glitch/components/icon';
 | 
					import { Icon } from 'flavours/glitch/components/icon';
 | 
				
			||||||
import ImmutablePureComponent from 'react-immutable-pure-component';
 | 
					import ImmutablePureComponent from 'react-immutable-pure-component';
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user