diff options
author | Eugen Rochko <eugen@zeonfederated.com> | 2022-05-10 09:44:35 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-05-10 09:44:35 +0200 |
commit | b4d373a3df2752d9f8bdc0d7f02350528f3789b2 (patch) | |
tree | b093d14cf34baa0e729be2376d168a9a3527f320 /app/javascript/mastodon/features/account_timeline/components/limited_account_hint.js | |
parent | 898fe2fa8e886d62de2bd9b15eb758054216d33d (diff) |
Add `limited` attribute to accounts in REST API and a warning in web UI (#18344)
Diffstat (limited to 'app/javascript/mastodon/features/account_timeline/components/limited_account_hint.js')
-rw-r--r-- | app/javascript/mastodon/features/account_timeline/components/limited_account_hint.js | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/app/javascript/mastodon/features/account_timeline/components/limited_account_hint.js b/app/javascript/mastodon/features/account_timeline/components/limited_account_hint.js new file mode 100644 index 000000000..6b025596c --- /dev/null +++ b/app/javascript/mastodon/features/account_timeline/components/limited_account_hint.js @@ -0,0 +1,35 @@ +import React from 'react'; +import PropTypes from 'prop-types'; +import { connect } from 'react-redux'; +import { revealAccount } from 'mastodon/actions/accounts'; +import { FormattedMessage } from 'react-intl'; +import Button from 'mastodon/components/button'; + +const mapDispatchToProps = (dispatch, { accountId }) => ({ + + reveal () { + dispatch(revealAccount(accountId)); + }, + +}); + +export default @connect(() => {}, mapDispatchToProps) +class LimitedAccountHint extends React.PureComponent { + + static propTypes = { + accountId: PropTypes.string.isRequired, + reveal: PropTypes.func, + } + + render () { + const { reveal } = this.props; + + return ( + <div className='limited-account-hint'> + <p><FormattedMessage id='limited_account_hint.title' defaultMessage='This profile has been hidden by the moderators of your server.' /></p> + <Button onClick={reveal}><FormattedMessage id='limited_account_hint.action' defaultMessage='Show profile anyway' /></Button> + </div> + ); + } + +} |