Add bot icon to bot avatars and migrate to newer version of Font Awesome (#8484)

* Migrate to newer version of Font Awesome

* Add bot icon to bot avatars
This commit is contained in:
Maciek Baron
2018-09-25 04:08:55 +01:00
committed by Eugen Rochko
parent 8864009e8d
commit 4b794e134d
9 changed files with 66 additions and 10 deletions

View File

@ -1,7 +1,8 @@
import Rails from 'rails-ujs';
export function start() {
require('font-awesome/css/font-awesome.css');
require('@fortawesome/fontawesome-free/css/fontawesome.css');
require('@fortawesome/fontawesome-free/css/solid.css');
require.context('../images/', true);
Rails.start();

View File

@ -13,7 +13,11 @@ exports[`<Avatar /> Autoplay renders a animated avatar 1`] = `
"width": "100px",
}
}
/>
>
<i
className="fa fa-fw fa-robot bot-icon"
/>
</div>
`;
exports[`<Avatar /> Still renders a still avatar 1`] = `
@ -29,5 +33,9 @@ exports[`<Avatar /> Still renders a still avatar 1`] = `
"width": "100px",
}
}
/>
>
<i
className="fa fa-fw fa-robot bot-icon"
/>
</div>
`;

View File

@ -10,6 +10,7 @@ describe('<Avatar />', () => {
display_name: 'Alice',
avatar: '/animated/alice.gif',
avatar_static: '/static/alice.jpg',
bot: true,
});
const size = 100;

View File

@ -1,6 +1,7 @@
import React from 'react';
import PropTypes from 'prop-types';
import ImmutablePropTypes from 'react-immutable-proptypes';
import BotIcon from './bot_icon';
import { autoPlayGif } from '../initial_state';
export default class Avatar extends React.PureComponent {
@ -65,7 +66,9 @@ export default class Avatar extends React.PureComponent {
onMouseEnter={this.handleMouseEnter}
onMouseLeave={this.handleMouseLeave}
style={style}
/>
>
<BotIcon account={account} />
</div>
);
}

View File

@ -0,0 +1,23 @@
import React from 'react';
import ImmutablePropTypes from 'react-immutable-proptypes';
import ImmutablePureComponent from 'react-immutable-pure-component';
export default class BotIcon extends ImmutablePureComponent {
static propTypes = {
account: ImmutablePropTypes.map.isRequired,
};
render () {
const { account } = this.props;
if (account.get('bot')) {
return (
<i className='fa fa-fw fa-robot bot-icon' />
);
}
return '';
}
}

View File

@ -3,6 +3,7 @@ import ImmutablePropTypes from 'react-immutable-proptypes';
import PropTypes from 'prop-types';
import { defineMessages, injectIntl, FormattedMessage } from 'react-intl';
import IconButton from '../../../components/icon_button';
import BotIcon from '../../../components/bot_icon';
import Motion from '../../ui/util/optional_motion';
import spring from 'react-motion/lib/spring';
import ImmutablePureComponent from 'react-immutable-pure-component';
@ -67,6 +68,7 @@ class Avatar extends ImmutablePureComponent {
onBlur={this.handleMouseOut}
>
<span style={{ display: 'none' }}>{account.get('acct')}</span>
<BotIcon account={account} />
</a>
)}
</Motion>