Rewrite `<TimelineHint />` as FC and TS (#25091)
parent
2877c80dbc
commit
9a472efe7c
|
@ -1,18 +0,0 @@
|
||||||
import React from 'react';
|
|
||||||
import PropTypes from 'prop-types';
|
|
||||||
import { FormattedMessage } from 'react-intl';
|
|
||||||
|
|
||||||
const TimelineHint = ({ resource, url }) => (
|
|
||||||
<div className='timeline-hint'>
|
|
||||||
<strong><FormattedMessage id='timeline_hint.remote_resource_not_displayed' defaultMessage='{resource} from other servers are not displayed.' values={{ resource }} /></strong>
|
|
||||||
<br />
|
|
||||||
<a href={url} target='_blank' rel='noopener'><FormattedMessage id='account.browse_more_on_origin_server' defaultMessage='Browse more on the original profile' /></a>
|
|
||||||
</div>
|
|
||||||
);
|
|
||||||
|
|
||||||
TimelineHint.propTypes = {
|
|
||||||
resource: PropTypes.node.isRequired,
|
|
||||||
url: PropTypes.string.isRequired,
|
|
||||||
};
|
|
||||||
|
|
||||||
export default TimelineHint;
|
|
|
@ -0,0 +1,27 @@
|
||||||
|
import React from 'react';
|
||||||
|
|
||||||
|
import { FormattedMessage } from 'react-intl';
|
||||||
|
|
||||||
|
interface Props {
|
||||||
|
resource: JSX.Element;
|
||||||
|
url: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
export const TimelineHint: React.FC<Props> = ({ resource, url }) => (
|
||||||
|
<div className='timeline-hint'>
|
||||||
|
<strong>
|
||||||
|
<FormattedMessage
|
||||||
|
id='timeline_hint.remote_resource_not_displayed'
|
||||||
|
defaultMessage='{resource} from other servers are not displayed.'
|
||||||
|
values={{ resource }}
|
||||||
|
/>
|
||||||
|
</strong>
|
||||||
|
<br />
|
||||||
|
<a href={url} target='_blank' rel='noopener noreferrer'>
|
||||||
|
<FormattedMessage
|
||||||
|
id='account.browse_more_on_origin_server'
|
||||||
|
defaultMessage='Browse more on the original profile'
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
);
|
|
@ -12,7 +12,7 @@ import ColumnBackButton from '../../components/column_back_button';
|
||||||
import { List as ImmutableList } from 'immutable';
|
import { List as ImmutableList } from 'immutable';
|
||||||
import ImmutablePureComponent from 'react-immutable-pure-component';
|
import ImmutablePureComponent from 'react-immutable-pure-component';
|
||||||
import { FormattedMessage } from 'react-intl';
|
import { FormattedMessage } from 'react-intl';
|
||||||
import TimelineHint from 'mastodon/components/timeline_hint';
|
import { TimelineHint } from 'mastodon/components/timeline_hint';
|
||||||
import { me } from 'mastodon/initial_state';
|
import { me } from 'mastodon/initial_state';
|
||||||
import LimitedAccountHint from './components/limited_account_hint';
|
import LimitedAccountHint from './components/limited_account_hint';
|
||||||
import { getAccountHidden } from 'mastodon/selectors';
|
import { getAccountHidden } from 'mastodon/selectors';
|
||||||
|
|
|
@ -17,7 +17,7 @@ import Column from '../ui/components/column';
|
||||||
import HeaderContainer from '../account_timeline/containers/header_container';
|
import HeaderContainer from '../account_timeline/containers/header_container';
|
||||||
import ColumnBackButton from '../../components/column_back_button';
|
import ColumnBackButton from '../../components/column_back_button';
|
||||||
import ScrollableList from '../../components/scrollable_list';
|
import ScrollableList from '../../components/scrollable_list';
|
||||||
import TimelineHint from 'mastodon/components/timeline_hint';
|
import { TimelineHint } from 'mastodon/components/timeline_hint';
|
||||||
import LimitedAccountHint from '../account_timeline/components/limited_account_hint';
|
import LimitedAccountHint from '../account_timeline/components/limited_account_hint';
|
||||||
import { getAccountHidden } from 'mastodon/selectors';
|
import { getAccountHidden } from 'mastodon/selectors';
|
||||||
import { normalizeForLookup } from 'mastodon/reducers/accounts_map';
|
import { normalizeForLookup } from 'mastodon/reducers/accounts_map';
|
||||||
|
|
|
@ -17,7 +17,7 @@ import Column from '../ui/components/column';
|
||||||
import HeaderContainer from '../account_timeline/containers/header_container';
|
import HeaderContainer from '../account_timeline/containers/header_container';
|
||||||
import ColumnBackButton from '../../components/column_back_button';
|
import ColumnBackButton from '../../components/column_back_button';
|
||||||
import ScrollableList from '../../components/scrollable_list';
|
import ScrollableList from '../../components/scrollable_list';
|
||||||
import TimelineHint from 'mastodon/components/timeline_hint';
|
import { TimelineHint } from 'mastodon/components/timeline_hint';
|
||||||
import LimitedAccountHint from '../account_timeline/components/limited_account_hint';
|
import LimitedAccountHint from '../account_timeline/components/limited_account_hint';
|
||||||
import { getAccountHidden } from 'mastodon/selectors';
|
import { getAccountHidden } from 'mastodon/selectors';
|
||||||
import { normalizeForLookup } from 'mastodon/reducers/accounts_map';
|
import { normalizeForLookup } from 'mastodon/reducers/accounts_map';
|
||||||
|
|
Reference in New Issue