`FormattedMessage` must be used directly (#20982)

* `FormattedMessage` must be used directly

* rollback
local
Yamagishi Kazutoshi 1 year ago committed by GitHub
parent 3a59ffde8d
commit 58200132d0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 32
      app/javascript/mastodon/features/explore/index.js
  2. 16
      app/javascript/mastodon/locales/defaultMessages.json
  3. 4
      app/javascript/mastodon/locales/en.json

@ -24,16 +24,6 @@ const mapStateToProps = state => ({
isSearching: state.getIn(['search', 'submitted']) || !showTrends,
});
// Fix strange bug on Safari where <span> (rendered by FormattedMessage) disappears
// after clicking around Explore top bar (issue #20885).
// Removing width=100% from <a> also fixes it, as well as replacing <span> with <div>
// We're choosing to wrap span with div to keep the changes local only to this tool bar.
const WrapFormattedMessage = ({ children, ...props }) => <div><FormattedMessage {...props}>{children}</FormattedMessage></div>;
WrapFormattedMessage.propTypes = {
children: PropTypes.any,
};
export default @connect(mapStateToProps)
@injectIntl
class Explore extends React.PureComponent {
@ -78,12 +68,22 @@ class Explore extends React.PureComponent {
{isSearching ? (
<SearchResults />
) : (
<React.Fragment>
<>
<div className='account__section-headline'>
<NavLink exact to='/explore'><WrapFormattedMessage id='explore.trending_statuses' defaultMessage='Posts' /></NavLink>
<NavLink exact to='/explore/tags'><WrapFormattedMessage id='explore.trending_tags' defaultMessage='Hashtags' /></NavLink>
<NavLink exact to='/explore/links'><WrapFormattedMessage id='explore.trending_links' defaultMessage='News' /></NavLink>
{signedIn && <NavLink exact to='/explore/suggestions'><WrapFormattedMessage id='explore.suggested_follows' defaultMessage='For you' /></NavLink>}
<NavLink exact to='/explore'>
<FormattedMessage tagName='div' id='explore.trending_statuses' defaultMessage='Posts' />
</NavLink>
<NavLink exact to='/explore/tags'>
<FormattedMessage tagName='div' id='explore.trending_tags' defaultMessage='Hashtags' />
</NavLink>
<NavLink exact to='/explore/links'>
<FormattedMessage tagName='div' id='explore.trending_links' defaultMessage='News' />
</NavLink>
{signedIn && (
<NavLink exact to='/explore/suggestions'>
<FormattedMessage tagName='div' id='explore.suggested_follows' defaultMessage='For you' />
</NavLink>
)}
</div>
<Switch>
@ -97,7 +97,7 @@ class Explore extends React.PureComponent {
<title>{intl.formatMessage(messages.title)}</title>
<meta name='robots' content={isSearching ? 'noindex' : 'all'} />
</Helmet>
</React.Fragment>
</>
)}
</div>
</Column>

@ -2014,6 +2014,22 @@
{
"defaultMessage": "Search results",
"id": "explore.search_results"
},
{
"defaultMessage": "Posts",
"id": "explore.trending_statuses"
},
{
"defaultMessage": "Hashtags",
"id": "explore.trending_tags"
},
{
"defaultMessage": "News",
"id": "explore.trending_links"
},
{
"defaultMessage": "For you",
"id": "explore.suggested_follows"
}
],
"path": "app/javascript/mastodon/features/explore/index.json"

@ -235,7 +235,11 @@
"errors.unexpected_crash.copy_stacktrace": "Copy stacktrace to clipboard",
"errors.unexpected_crash.report_issue": "Report issue",
"explore.search_results": "Search results",
"explore.suggested_follows": "For you",
"explore.title": "Explore",
"explore.trending_links": "News",
"explore.trending_statuses": "Posts",
"explore.trending_tags": "Hashtags",
"filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.",
"filter_modal.added.context_mismatch_title": "Context mismatch!",
"filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.",

Loading…
Cancel
Save