Merge commit 'd9503a1965a16328b62ea7bf0bb54e87cbe30d29' into glitch-soc/merge-upstream

This commit is contained in:
Claire 2023-10-24 19:21:01 +02:00
commit e6c3d3c744
5 changed files with 51 additions and 8 deletions

View file

@ -3,12 +3,15 @@ import { PureComponent } from 'react';
import { FormattedMessage } from 'react-intl'; import { FormattedMessage } from 'react-intl';
import { withRouter } from 'react-router-dom';
import ImmutablePropTypes from 'react-immutable-proptypes'; import ImmutablePropTypes from 'react-immutable-proptypes';
import { connect } from 'react-redux'; import { connect } from 'react-redux';
import { fetchTrendingLinks } from 'mastodon/actions/trends'; import { fetchTrendingLinks } from 'mastodon/actions/trends';
import { DismissableBanner } from 'mastodon/components/dismissable_banner'; import { DismissableBanner } from 'mastodon/components/dismissable_banner';
import { LoadingIndicator } from 'mastodon/components/loading_indicator'; import { LoadingIndicator } from 'mastodon/components/loading_indicator';
import { WithRouterPropTypes } from 'mastodon/utils/react_router';
import Story from './components/story'; import Story from './components/story';
@ -23,10 +26,17 @@ class Links extends PureComponent {
links: ImmutablePropTypes.list, links: ImmutablePropTypes.list,
isLoading: PropTypes.bool, isLoading: PropTypes.bool,
dispatch: PropTypes.func.isRequired, dispatch: PropTypes.func.isRequired,
...WithRouterPropTypes,
}; };
componentDidMount () { componentDidMount () {
const { dispatch } = this.props; const { dispatch, links, history } = this.props;
// If we're navigating back to the screen, do not trigger a reload
if (history.action === 'POP' && links.size > 0) {
return;
}
dispatch(fetchTrendingLinks()); dispatch(fetchTrendingLinks());
} }
@ -77,4 +87,4 @@ class Links extends PureComponent {
} }
export default connect(mapStateToProps)(Links); export default connect(mapStateToProps)(withRouter(Links));

View file

@ -3,15 +3,19 @@ import { PureComponent } from 'react';
import { FormattedMessage } from 'react-intl'; import { FormattedMessage } from 'react-intl';
import { withRouter } from 'react-router-dom';
import ImmutablePropTypes from 'react-immutable-proptypes'; import ImmutablePropTypes from 'react-immutable-proptypes';
import { connect } from 'react-redux'; import { connect } from 'react-redux';
import { debounce } from 'lodash'; import { debounce } from 'lodash';
import { fetchTrendingStatuses, expandTrendingStatuses } from 'mastodon/actions/trends'; import { fetchTrendingStatuses, expandTrendingStatuses } from 'mastodon/actions/trends';
import { DismissableBanner } from 'mastodon/components/dismissable_banner'; import { DismissableBanner } from 'mastodon/components/dismissable_banner';
import StatusList from 'mastodon/components/status_list'; import StatusList from 'mastodon/components/status_list';
import { getStatusList } from 'mastodon/selectors'; import { getStatusList } from 'mastodon/selectors';
import { WithRouterPropTypes } from 'mastodon/utils/react_router';
const mapStateToProps = state => ({ const mapStateToProps = state => ({
statusIds: getStatusList(state, 'trending'), statusIds: getStatusList(state, 'trending'),
@ -27,10 +31,17 @@ class Statuses extends PureComponent {
hasMore: PropTypes.bool, hasMore: PropTypes.bool,
multiColumn: PropTypes.bool, multiColumn: PropTypes.bool,
dispatch: PropTypes.func.isRequired, dispatch: PropTypes.func.isRequired,
...WithRouterPropTypes,
}; };
componentDidMount () { componentDidMount () {
const { dispatch } = this.props; const { dispatch, statusIds, history } = this.props;
// If we're navigating back to the screen, do not trigger a reload
if (history.action === 'POP' && statusIds.size > 0) {
return;
}
dispatch(fetchTrendingStatuses()); dispatch(fetchTrendingStatuses());
} }
@ -64,4 +75,4 @@ class Statuses extends PureComponent {
} }
export default connect(mapStateToProps)(Statuses); export default connect(mapStateToProps)(withRouter(Statuses));

View file

@ -3,12 +3,15 @@ import { PureComponent } from 'react';
import { FormattedMessage } from 'react-intl'; import { FormattedMessage } from 'react-intl';
import { withRouter } from 'react-router-dom';
import ImmutablePropTypes from 'react-immutable-proptypes'; import ImmutablePropTypes from 'react-immutable-proptypes';
import { connect } from 'react-redux'; import { connect } from 'react-redux';
import { fetchSuggestions } from 'mastodon/actions/suggestions'; import { fetchSuggestions } from 'mastodon/actions/suggestions';
import { LoadingIndicator } from 'mastodon/components/loading_indicator'; import { LoadingIndicator } from 'mastodon/components/loading_indicator';
import AccountCard from 'mastodon/features/directory/components/account_card'; import AccountCard from 'mastodon/features/directory/components/account_card';
import { WithRouterPropTypes } from 'mastodon/utils/react_router';
const mapStateToProps = state => ({ const mapStateToProps = state => ({
suggestions: state.getIn(['suggestions', 'items']), suggestions: state.getIn(['suggestions', 'items']),
@ -21,10 +24,17 @@ class Suggestions extends PureComponent {
isLoading: PropTypes.bool, isLoading: PropTypes.bool,
suggestions: ImmutablePropTypes.list, suggestions: ImmutablePropTypes.list,
dispatch: PropTypes.func.isRequired, dispatch: PropTypes.func.isRequired,
...WithRouterPropTypes,
}; };
componentDidMount () { componentDidMount () {
const { dispatch } = this.props; const { dispatch, suggestions, history } = this.props;
// If we're navigating back to the screen, do not trigger a reload
if (history.action === 'POP' && suggestions.size > 0) {
return;
}
dispatch(fetchSuggestions(true)); dispatch(fetchSuggestions(true));
} }
@ -52,4 +62,4 @@ class Suggestions extends PureComponent {
} }
export default connect(mapStateToProps)(Suggestions); export default connect(mapStateToProps)(withRouter(Suggestions));

View file

@ -3,6 +3,8 @@ import { PureComponent } from 'react';
import { FormattedMessage } from 'react-intl'; import { FormattedMessage } from 'react-intl';
import { withRouter } from 'react-router-dom';
import ImmutablePropTypes from 'react-immutable-proptypes'; import ImmutablePropTypes from 'react-immutable-proptypes';
import { connect } from 'react-redux'; import { connect } from 'react-redux';
@ -10,6 +12,7 @@ import { fetchTrendingHashtags } from 'mastodon/actions/trends';
import { DismissableBanner } from 'mastodon/components/dismissable_banner'; import { DismissableBanner } from 'mastodon/components/dismissable_banner';
import { ImmutableHashtag as Hashtag } from 'mastodon/components/hashtag'; import { ImmutableHashtag as Hashtag } from 'mastodon/components/hashtag';
import { LoadingIndicator } from 'mastodon/components/loading_indicator'; import { LoadingIndicator } from 'mastodon/components/loading_indicator';
import { WithRouterPropTypes } from 'mastodon/utils/react_router';
const mapStateToProps = state => ({ const mapStateToProps = state => ({
hashtags: state.getIn(['trends', 'tags', 'items']), hashtags: state.getIn(['trends', 'tags', 'items']),
@ -22,10 +25,17 @@ class Tags extends PureComponent {
hashtags: ImmutablePropTypes.list, hashtags: ImmutablePropTypes.list,
isLoading: PropTypes.bool, isLoading: PropTypes.bool,
dispatch: PropTypes.func.isRequired, dispatch: PropTypes.func.isRequired,
...WithRouterPropTypes,
}; };
componentDidMount () { componentDidMount () {
const { dispatch } = this.props; const { dispatch, history, hashtags } = this.props;
// If we're navigating back to the screen, do not trigger a reload
if (history.action === 'POP' && hashtags.size > 0) {
return;
}
dispatch(fetchTrendingHashtags()); dispatch(fetchTrendingHashtags());
} }
@ -63,4 +73,4 @@ class Tags extends PureComponent {
} }
export default connect(mapStateToProps)(Tags); export default connect(mapStateToProps)(withRouter(Tags));

View file

@ -142,6 +142,7 @@ namespace :mastodon do
rescue => e rescue => e
prompt.error 'Redis connection could not be established with this configuration, try again.' prompt.error 'Redis connection could not be established with this configuration, try again.'
prompt.error e.message prompt.error e.message
unless prompt.yes?('Try again?') unless prompt.yes?('Try again?')
return prompt.warn 'Nothing saved. Bye!' unless prompt.yes?('Continue anyway?') return prompt.warn 'Nothing saved. Bye!' unless prompt.yes?('Continue anyway?')
@ -432,6 +433,7 @@ namespace :mastodon do
rescue => e rescue => e
prompt.error 'E-mail could not be sent with this configuration, try again.' prompt.error 'E-mail could not be sent with this configuration, try again.'
prompt.error e.message prompt.error e.message
unless prompt.yes?('Try again?') unless prompt.yes?('Try again?')
return prompt.warn 'Nothing saved. Bye!' unless prompt.yes?('Continue anyway?') return prompt.warn 'Nothing saved. Bye!' unless prompt.yes?('Continue anyway?')