import React from 'react'; import PropTypes from 'prop-types'; import { domain } from 'mastodon/initial_state'; import { fetchServer } from 'mastodon/actions/server'; import { connect } from 'react-redux'; import Account from 'mastodon/containers/account_container'; import ShortNumber from 'mastodon/components/short_number'; import Skeleton from 'mastodon/components/skeleton'; import { FormattedMessage, injectIntl, defineMessages } from 'react-intl'; const messages = defineMessages({ aboutActiveUsers: { id: 'server_banner.about_active_users', defaultMessage: 'People using this server during the last 30 days (Monthly Active Users)' }, }); const mapStateToProps = state => ({ server: state.get('server'), }); export default @connect(mapStateToProps) @injectIntl class ServerBanner extends React.PureComponent { static propTypes = { server: PropTypes.object, dispatch: PropTypes.func, intl: PropTypes.object, }; componentDidMount () { const { dispatch } = this.props; dispatch(fetchServer()); } render () { const { server, intl } = this.props; const isLoading = server.get('isLoading'); return (
{domain}, mastodon: Mastodon }} />
{server.get('title')}
{isLoading ? ( <>

) : server.get('description')}

{isLoading ? ( <>
) : ( <>
)}

); } }