mirror of
https://github.com/mastodon/mastodon.git
synced 2024-08-20 21:08:15 -07:00
Use Class and Property Decorators (#3730)
ref https://tc39.github.io/proposal-decorators/
This commit is contained in:
parent
0c44316b22
commit
c1a8e3d1eb
90 changed files with 168 additions and 274 deletions
1
.babelrc
1
.babelrc
|
@ -15,6 +15,7 @@
|
|||
"plugins": [
|
||||
"syntax-dynamic-import",
|
||||
["transform-object-rest-spread", { "useBuiltIns": true }],
|
||||
"transform-decorators-legacy",
|
||||
"transform-class-properties",
|
||||
[
|
||||
"react-intl",
|
||||
|
|
|
@ -16,7 +16,8 @@ const messages = defineMessages({
|
|||
unmute: { id: 'account.unmute', defaultMessage: 'Unmute @{name}' },
|
||||
});
|
||||
|
||||
class Account extends ImmutablePureComponent {
|
||||
@injectIntl
|
||||
export default class Account extends ImmutablePureComponent {
|
||||
|
||||
static propTypes = {
|
||||
account: ImmutablePropTypes.map.isRequired,
|
||||
|
@ -82,5 +83,3 @@ class Account extends ImmutablePureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default injectIntl(Account);
|
||||
|
|
|
@ -4,7 +4,7 @@ import ImmutablePureComponent from 'react-immutable-pure-component';
|
|||
|
||||
const filename = url => url.split('/').pop().split('#')[0].split('?')[0];
|
||||
|
||||
class AttachmentList extends ImmutablePureComponent {
|
||||
export default class AttachmentList extends ImmutablePureComponent {
|
||||
|
||||
static propTypes = {
|
||||
media: ImmutablePropTypes.list.isRequired,
|
||||
|
@ -31,5 +31,3 @@ class AttachmentList extends ImmutablePureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default AttachmentList;
|
||||
|
|
|
@ -31,7 +31,7 @@ const textAtCursorMatchesToken = (str, caretPosition) => {
|
|||
}
|
||||
};
|
||||
|
||||
class AutosuggestTextarea extends ImmutablePureComponent {
|
||||
export default class AutosuggestTextarea extends ImmutablePureComponent {
|
||||
|
||||
static propTypes = {
|
||||
value: PropTypes.string,
|
||||
|
@ -196,5 +196,3 @@ class AutosuggestTextarea extends ImmutablePureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default AutosuggestTextarea;
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
class Avatar extends React.PureComponent {
|
||||
export default class Avatar extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
src: PropTypes.string.isRequired,
|
||||
|
@ -66,5 +66,3 @@ class Avatar extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default Avatar;
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
class AvatarOverlay extends React.PureComponent {
|
||||
export default class AvatarOverlay extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
staticSrc: PropTypes.string.isRequired,
|
||||
|
@ -28,5 +28,3 @@ class AvatarOverlay extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default AvatarOverlay;
|
||||
|
|
|
@ -2,7 +2,7 @@ import React from 'react';
|
|||
import PropTypes from 'prop-types';
|
||||
import classNames from 'classnames';
|
||||
|
||||
class Button extends React.PureComponent {
|
||||
export default class Button extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
text: PropTypes.node,
|
||||
|
@ -61,5 +61,3 @@ class Button extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default Button;
|
||||
|
|
|
@ -2,7 +2,7 @@ import React from 'react';
|
|||
import PropTypes from 'prop-types';
|
||||
import scrollTop from '../scroll';
|
||||
|
||||
class Column extends React.PureComponent {
|
||||
export default class Column extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
children: PropTypes.node,
|
||||
|
@ -41,5 +41,3 @@ class Column extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default Column;
|
||||
|
|
|
@ -2,7 +2,7 @@ import React from 'react';
|
|||
import { FormattedMessage } from 'react-intl';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
class ColumnBackButton extends React.PureComponent {
|
||||
export default class ColumnBackButton extends React.PureComponent {
|
||||
|
||||
static contextTypes = {
|
||||
router: PropTypes.object,
|
||||
|
@ -23,5 +23,3 @@ class ColumnBackButton extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default ColumnBackButton;
|
||||
|
|
|
@ -2,7 +2,7 @@ import React from 'react';
|
|||
import { FormattedMessage } from 'react-intl';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
class ColumnBackButtonSlim extends React.PureComponent {
|
||||
export default class ColumnBackButtonSlim extends React.PureComponent {
|
||||
|
||||
static contextTypes = {
|
||||
router: PropTypes.object,
|
||||
|
@ -25,5 +25,3 @@ class ColumnBackButtonSlim extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default ColumnBackButtonSlim;
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
class ColumnCollapsable extends React.PureComponent {
|
||||
export default class ColumnCollapsable extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
icon: PropTypes.string.isRequired,
|
||||
|
@ -48,5 +48,3 @@ class ColumnCollapsable extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default ColumnCollapsable;
|
||||
|
|
|
@ -3,7 +3,7 @@ import PropTypes from 'prop-types';
|
|||
import classNames from 'classnames';
|
||||
import { FormattedMessage } from 'react-intl';
|
||||
|
||||
class ColumnHeader extends React.PureComponent {
|
||||
export default class ColumnHeader extends React.PureComponent {
|
||||
|
||||
static contextTypes = {
|
||||
router: PropTypes.object,
|
||||
|
@ -141,5 +141,3 @@ class ColumnHeader extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default ColumnHeader;
|
||||
|
|
|
@ -3,7 +3,7 @@ import ImmutablePropTypes from 'react-immutable-proptypes';
|
|||
import escapeTextContentForBrowser from 'escape-html';
|
||||
import emojify from '../emoji';
|
||||
|
||||
class DisplayName extends React.PureComponent {
|
||||
export default class DisplayName extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
account: ImmutablePropTypes.map.isRequired,
|
||||
|
@ -21,5 +21,3 @@ class DisplayName extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default DisplayName;
|
||||
|
|
|
@ -2,7 +2,7 @@ import React from 'react';
|
|||
import Dropdown, { DropdownTrigger, DropdownContent } from 'react-simple-dropdown';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
class DropdownMenu extends React.PureComponent {
|
||||
export default class DropdownMenu extends React.PureComponent {
|
||||
|
||||
static contextTypes = {
|
||||
router: PropTypes.object,
|
||||
|
@ -92,5 +92,3 @@ class DropdownMenu extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default DropdownMenu;
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
class ExtendedVideoPlayer extends React.PureComponent {
|
||||
export default class ExtendedVideoPlayer extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
src: PropTypes.string.isRequired,
|
||||
|
@ -44,5 +44,3 @@ class ExtendedVideoPlayer extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default ExtendedVideoPlayer;
|
||||
|
|
|
@ -3,7 +3,7 @@ import Motion from 'react-motion/lib/Motion';
|
|||
import spring from 'react-motion/lib/spring';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
class IconButton extends React.PureComponent {
|
||||
export default class IconButton extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
className: PropTypes.string,
|
||||
|
@ -86,5 +86,3 @@ class IconButton extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default IconButton;
|
||||
|
|
|
@ -2,7 +2,7 @@ import React from 'react';
|
|||
import { FormattedMessage } from 'react-intl';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
class LoadMore extends React.PureComponent {
|
||||
export default class LoadMore extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
onClick: PropTypes.func,
|
||||
|
@ -17,5 +17,3 @@ class LoadMore extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default LoadMore;
|
||||
|
|
|
@ -123,7 +123,8 @@ class Item extends React.PureComponent {
|
|||
|
||||
}
|
||||
|
||||
class MediaGallery extends React.PureComponent {
|
||||
@injectIntl
|
||||
export default class MediaGallery extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
sensitive: PropTypes.bool,
|
||||
|
@ -183,5 +184,3 @@ class MediaGallery extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default injectIntl(MediaGallery);
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
class Permalink extends React.PureComponent {
|
||||
export default class Permalink extends React.PureComponent {
|
||||
|
||||
static contextTypes = {
|
||||
router: PropTypes.object,
|
||||
|
@ -32,5 +32,3 @@ class Permalink extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default Permalink;
|
||||
|
|
|
@ -11,7 +11,8 @@ const dateFormatOptions = {
|
|||
minute: '2-digit',
|
||||
};
|
||||
|
||||
class RelativeTimestamp extends React.Component {
|
||||
@injectIntl
|
||||
export default class RelativeTimestamp extends React.Component {
|
||||
|
||||
static propTypes = {
|
||||
intl: PropTypes.object.isRequired,
|
||||
|
@ -37,5 +38,3 @@ class RelativeTimestamp extends React.Component {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default injectIntl(RelativeTimestamp);
|
||||
|
|
|
@ -2,7 +2,7 @@ import React from 'react';
|
|||
import PropTypes from 'prop-types';
|
||||
import ImmutablePropTypes from 'react-immutable-proptypes';
|
||||
|
||||
class SettingText extends React.PureComponent {
|
||||
export default class SettingText extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
settings: ImmutablePropTypes.map.isRequired,
|
||||
|
@ -29,5 +29,3 @@ class SettingText extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default SettingText;
|
||||
|
|
|
@ -15,7 +15,7 @@ import escapeTextContentForBrowser from 'escape-html';
|
|||
import ImmutablePureComponent from 'react-immutable-pure-component';
|
||||
import scheduleIdleTask from '../features/ui/util/schedule_idle_task';
|
||||
|
||||
class Status extends ImmutablePureComponent {
|
||||
export default class Status extends ImmutablePureComponent {
|
||||
|
||||
static contextTypes = {
|
||||
router: PropTypes.object,
|
||||
|
@ -233,5 +233,3 @@ class Status extends ImmutablePureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default Status;
|
||||
|
|
|
@ -22,7 +22,8 @@ const messages = defineMessages({
|
|||
unmuteConversation: { id: 'status.unmute_conversation', defaultMessage: 'Unmute conversation' },
|
||||
});
|
||||
|
||||
class StatusActionBar extends ImmutablePureComponent {
|
||||
@injectIntl
|
||||
export default class StatusActionBar extends ImmutablePureComponent {
|
||||
|
||||
static contextTypes = {
|
||||
router: PropTypes.object,
|
||||
|
@ -149,5 +150,3 @@ class StatusActionBar extends ImmutablePureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default injectIntl(StatusActionBar);
|
||||
|
|
|
@ -7,7 +7,7 @@ import { isRtl } from '../rtl';
|
|||
import { FormattedMessage } from 'react-intl';
|
||||
import Permalink from './permalink';
|
||||
|
||||
class StatusContent extends React.PureComponent {
|
||||
export default class StatusContent extends React.PureComponent {
|
||||
|
||||
static contextTypes = {
|
||||
router: PropTypes.object,
|
||||
|
@ -171,5 +171,3 @@ class StatusContent extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default StatusContent;
|
||||
|
|
|
@ -8,7 +8,7 @@ import ImmutablePureComponent from 'react-immutable-pure-component';
|
|||
import IntersectionObserverWrapper from '../features/ui/util/intersection_observer_wrapper';
|
||||
import { debounce } from 'lodash';
|
||||
|
||||
class StatusList extends ImmutablePureComponent {
|
||||
export default class StatusList extends ImmutablePureComponent {
|
||||
|
||||
static propTypes = {
|
||||
scrollKey: PropTypes.string.isRequired,
|
||||
|
@ -142,5 +142,3 @@ class StatusList extends ImmutablePureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default StatusList;
|
||||
|
|
|
@ -11,7 +11,8 @@ const messages = defineMessages({
|
|||
expand_video: { id: 'video_player.expand', defaultMessage: 'Expand video' },
|
||||
});
|
||||
|
||||
class VideoPlayer extends React.PureComponent {
|
||||
@injectIntl
|
||||
export default class VideoPlayer extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
media: ImmutablePropTypes.map.isRequired,
|
||||
|
@ -193,5 +194,3 @@ class VideoPlayer extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default injectIntl(VideoPlayer);
|
||||
|
|
|
@ -26,7 +26,11 @@ const store = configureStore();
|
|||
const initialState = JSON.parse(document.getElementById('initial-state').textContent);
|
||||
store.dispatch(hydrateStore(initialState));
|
||||
|
||||
class Mastodon extends React.PureComponent {
|
||||
export default class Mastodon extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
locale: PropTypes.string.isRequired,
|
||||
};
|
||||
|
||||
componentDidMount() {
|
||||
const { locale } = this.props;
|
||||
|
@ -117,9 +121,3 @@ class Mastodon extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
Mastodon.propTypes = {
|
||||
locale: PropTypes.string.isRequired,
|
||||
};
|
||||
|
||||
export default Mastodon;
|
||||
|
|
|
@ -21,7 +21,8 @@ const messages = defineMessages({
|
|||
unblockDomain: { id: 'account.unblock_domain', defaultMessage: 'Unhide {domain}' },
|
||||
});
|
||||
|
||||
class ActionBar extends React.PureComponent {
|
||||
@injectIntl
|
||||
export default class ActionBar extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
account: ImmutablePropTypes.map.isRequired,
|
||||
|
@ -105,5 +106,3 @@ class ActionBar extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default injectIntl(ActionBar);
|
||||
|
|
|
@ -70,7 +70,9 @@ class Avatar extends ImmutablePureComponent {
|
|||
|
||||
}
|
||||
|
||||
class Header extends ImmutablePureComponent {
|
||||
@connect(makeMapStateToProps)
|
||||
@injectIntl
|
||||
export default class Header extends ImmutablePureComponent {
|
||||
|
||||
static propTypes = {
|
||||
account: ImmutablePropTypes.map,
|
||||
|
@ -140,5 +142,3 @@ class Header extends ImmutablePureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default connect(makeMapStateToProps)(injectIntl(Header));
|
||||
|
|
|
@ -3,7 +3,7 @@ import ImmutablePropTypes from 'react-immutable-proptypes';
|
|||
import ImmutablePureComponent from 'react-immutable-pure-component';
|
||||
import Permalink from '../../../components/permalink';
|
||||
|
||||
class MediaItem extends ImmutablePureComponent {
|
||||
export default class MediaItem extends ImmutablePureComponent {
|
||||
|
||||
static propTypes = {
|
||||
media: ImmutablePropTypes.map.isRequired,
|
||||
|
@ -37,5 +37,3 @@ class MediaItem extends ImmutablePureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default MediaItem;
|
||||
|
|
|
@ -22,7 +22,8 @@ const mapStateToProps = (state, props) => ({
|
|||
autoPlayGif: state.getIn(['meta', 'auto_play_gif']),
|
||||
});
|
||||
|
||||
class AccountGallery extends ImmutablePureComponent {
|
||||
@connect(mapStateToProps)
|
||||
export default class AccountGallery extends ImmutablePureComponent {
|
||||
|
||||
static propTypes = {
|
||||
params: PropTypes.object.isRequired,
|
||||
|
@ -111,5 +112,3 @@ class AccountGallery extends ImmutablePureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default connect(mapStateToProps)(AccountGallery);
|
||||
|
|
|
@ -6,7 +6,7 @@ import ActionBar from '../../account/components/action_bar';
|
|||
import MissingIndicator from '../../../components/missing_indicator';
|
||||
import ImmutablePureComponent from 'react-immutable-pure-component';
|
||||
|
||||
class Header extends ImmutablePureComponent {
|
||||
export default class Header extends ImmutablePureComponent {
|
||||
|
||||
static propTypes = {
|
||||
account: ImmutablePropTypes.map,
|
||||
|
@ -91,5 +91,3 @@ class Header extends ImmutablePureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default Header;
|
||||
|
|
|
@ -19,7 +19,8 @@ const mapStateToProps = (state, props) => ({
|
|||
me: state.getIn(['meta', 'me']),
|
||||
});
|
||||
|
||||
class AccountTimeline extends ImmutablePureComponent {
|
||||
@connect(mapStateToProps)
|
||||
export default class AccountTimeline extends ImmutablePureComponent {
|
||||
|
||||
static propTypes = {
|
||||
params: PropTypes.object.isRequired,
|
||||
|
@ -77,5 +78,3 @@ class AccountTimeline extends ImmutablePureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default connect(mapStateToProps)(AccountTimeline);
|
||||
|
|
|
@ -19,7 +19,9 @@ const mapStateToProps = state => ({
|
|||
accountIds: state.getIn(['user_lists', 'blocks', 'items']),
|
||||
});
|
||||
|
||||
class Blocks extends ImmutablePureComponent {
|
||||
@connect(mapStateToProps)
|
||||
@injectIntl
|
||||
export default class Blocks extends ImmutablePureComponent {
|
||||
|
||||
static propTypes = {
|
||||
params: PropTypes.object.isRequired,
|
||||
|
@ -66,5 +68,3 @@ class Blocks extends ImmutablePureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default connect(mapStateToProps)(injectIntl(Blocks));
|
||||
|
|
|
@ -9,7 +9,8 @@ const messages = defineMessages({
|
|||
settings: { id: 'home.settings', defaultMessage: 'Column settings' },
|
||||
});
|
||||
|
||||
class ColumnSettings extends React.PureComponent {
|
||||
@injectIntl
|
||||
export default class ColumnSettings extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
settings: ImmutablePropTypes.map.isRequired,
|
||||
|
@ -32,5 +33,3 @@ class ColumnSettings extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default injectIntl(ColumnSettings);
|
||||
|
|
|
@ -27,7 +27,9 @@ const mapStateToProps = state => ({
|
|||
accessToken: state.getIn(['meta', 'access_token']),
|
||||
});
|
||||
|
||||
class CommunityTimeline extends React.PureComponent {
|
||||
@connect(mapStateToProps)
|
||||
@injectIntl
|
||||
export default class CommunityTimeline extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
dispatch: PropTypes.func.isRequired,
|
||||
|
@ -141,5 +143,3 @@ class CommunityTimeline extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default connect(mapStateToProps)(injectIntl(CommunityTimeline));
|
||||
|
|
|
@ -4,7 +4,7 @@ import DisplayName from '../../../components/display_name';
|
|||
import ImmutablePropTypes from 'react-immutable-proptypes';
|
||||
import ImmutablePureComponent from 'react-immutable-pure-component';
|
||||
|
||||
class AutosuggestAccount extends ImmutablePureComponent {
|
||||
export default class AutosuggestAccount extends ImmutablePureComponent {
|
||||
|
||||
static propTypes = {
|
||||
account: ImmutablePropTypes.map.isRequired,
|
||||
|
@ -22,5 +22,3 @@ class AutosuggestAccount extends ImmutablePureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default AutosuggestAccount;
|
||||
|
|
|
@ -2,7 +2,7 @@ import React from 'react';
|
|||
import PropTypes from 'prop-types';
|
||||
import { length } from 'stringz';
|
||||
|
||||
class CharacterCounter extends React.PureComponent {
|
||||
export default class CharacterCounter extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
text: PropTypes.string.isRequired,
|
||||
|
@ -23,5 +23,3 @@ class CharacterCounter extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default CharacterCounter;
|
||||
|
|
|
@ -25,7 +25,8 @@ const messages = defineMessages({
|
|||
publishLoud: { id: 'compose_form.publish_loud', defaultMessage: '{publish}!' },
|
||||
});
|
||||
|
||||
class ComposeForm extends ImmutablePureComponent {
|
||||
@injectIntl
|
||||
export default class ComposeForm extends ImmutablePureComponent {
|
||||
|
||||
static propTypes = {
|
||||
intl: PropTypes.object.isRequired,
|
||||
|
@ -199,5 +200,3 @@ class ComposeForm extends ImmutablePureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default injectIntl(ComposeForm);
|
||||
|
|
|
@ -24,7 +24,8 @@ const settings = {
|
|||
|
||||
let EmojiPicker; // load asynchronously
|
||||
|
||||
class EmojiPickerDropdown extends React.PureComponent {
|
||||
@injectIntl
|
||||
export default class EmojiPickerDropdown extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
intl: PropTypes.object.isRequired,
|
||||
|
@ -123,5 +124,3 @@ class EmojiPickerDropdown extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default injectIntl(EmojiPickerDropdown);
|
||||
|
|
|
@ -5,7 +5,7 @@ import Permalink from '../../../components/permalink';
|
|||
import { FormattedMessage } from 'react-intl';
|
||||
import ImmutablePureComponent from 'react-immutable-pure-component';
|
||||
|
||||
class NavigationBar extends ImmutablePureComponent {
|
||||
export default class NavigationBar extends ImmutablePureComponent {
|
||||
|
||||
static propTypes = {
|
||||
account: ImmutablePropTypes.map.isRequired,
|
||||
|
@ -30,5 +30,3 @@ class NavigationBar extends ImmutablePureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default NavigationBar;
|
||||
|
|
|
@ -20,7 +20,8 @@ const iconStyle = {
|
|||
lineHeight: '27px',
|
||||
};
|
||||
|
||||
class PrivacyDropdown extends React.PureComponent {
|
||||
@injectIntl
|
||||
export default class PrivacyDropdown extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
value: PropTypes.string.isRequired,
|
||||
|
@ -95,5 +96,3 @@ class PrivacyDropdown extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default injectIntl(PrivacyDropdown);
|
||||
|
|
|
@ -12,7 +12,8 @@ const messages = defineMessages({
|
|||
cancel: { id: 'reply_indicator.cancel', defaultMessage: 'Cancel' },
|
||||
});
|
||||
|
||||
class ReplyIndicator extends ImmutablePureComponent {
|
||||
@injectIntl
|
||||
export default class ReplyIndicator extends ImmutablePureComponent {
|
||||
|
||||
static contextTypes = {
|
||||
router: PropTypes.object,
|
||||
|
@ -61,5 +62,3 @@ class ReplyIndicator extends ImmutablePureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default injectIntl(ReplyIndicator);
|
||||
|
|
|
@ -6,7 +6,8 @@ const messages = defineMessages({
|
|||
placeholder: { id: 'search.placeholder', defaultMessage: 'Search' },
|
||||
});
|
||||
|
||||
class Search extends React.PureComponent {
|
||||
@injectIntl
|
||||
export default class Search extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
value: PropTypes.string.isRequired,
|
||||
|
@ -70,5 +71,3 @@ class Search extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default injectIntl(Search);
|
||||
|
|
|
@ -6,7 +6,7 @@ import StatusContainer from '../../../containers/status_container';
|
|||
import Link from 'react-router-dom/Link';
|
||||
import ImmutablePureComponent from 'react-immutable-pure-component';
|
||||
|
||||
class SearchResults extends ImmutablePureComponent {
|
||||
export default class SearchResults extends ImmutablePureComponent {
|
||||
|
||||
static propTypes = {
|
||||
results: ImmutablePropTypes.map.isRequired,
|
||||
|
@ -63,5 +63,3 @@ class SearchResults extends ImmutablePureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default SearchResults;
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
class TextIconButton extends React.PureComponent {
|
||||
export default class TextIconButton extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
label: PropTypes.string.isRequired,
|
||||
|
@ -27,5 +27,3 @@ class TextIconButton extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default TextIconButton;
|
||||
|
|
|
@ -23,7 +23,9 @@ const iconStyle = {
|
|||
lineHeight: '27px',
|
||||
};
|
||||
|
||||
class UploadButton extends ImmutablePureComponent {
|
||||
@connect(makeMapStateToProps)
|
||||
@injectIntl
|
||||
export default class UploadButton extends ImmutablePureComponent {
|
||||
|
||||
static propTypes = {
|
||||
disabled: PropTypes.bool,
|
||||
|
@ -70,5 +72,3 @@ class UploadButton extends ImmutablePureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default connect(makeMapStateToProps)(injectIntl(UploadButton));
|
||||
|
|
|
@ -11,7 +11,8 @@ const messages = defineMessages({
|
|||
undo: { id: 'upload_form.undo', defaultMessage: 'Undo' },
|
||||
});
|
||||
|
||||
class UploadForm extends React.PureComponent {
|
||||
@injectIntl
|
||||
export default class UploadForm extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
media: ImmutablePropTypes.list.isRequired,
|
||||
|
@ -48,5 +49,3 @@ class UploadForm extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default injectIntl(UploadForm);
|
||||
|
|
|
@ -4,7 +4,7 @@ import Motion from 'react-motion/lib/Motion';
|
|||
import spring from 'react-motion/lib/spring';
|
||||
import { FormattedMessage } from 'react-intl';
|
||||
|
||||
class UploadProgress extends React.PureComponent {
|
||||
export default class UploadProgress extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
active: PropTypes.bool,
|
||||
|
@ -40,5 +40,3 @@ class UploadProgress extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default UploadProgress;
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
class Warning extends React.PureComponent {
|
||||
export default class Warning extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
message: PropTypes.node.isRequired,
|
||||
|
@ -18,5 +18,3 @@ class Warning extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default Warning;
|
||||
|
|
|
@ -23,7 +23,9 @@ const mapStateToProps = state => ({
|
|||
showSearch: state.getIn(['search', 'submitted']) && !state.getIn(['search', 'hidden']),
|
||||
});
|
||||
|
||||
class Compose extends React.PureComponent {
|
||||
@connect(mapStateToProps)
|
||||
@injectIntl
|
||||
export default class Compose extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
dispatch: PropTypes.func.isRequired,
|
||||
|
@ -82,5 +84,3 @@ class Compose extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default connect(mapStateToProps)(injectIntl(Compose));
|
||||
|
|
|
@ -17,7 +17,9 @@ const mapStateToProps = state => ({
|
|||
loaded: state.getIn(['status_lists', 'favourites', 'loaded']),
|
||||
});
|
||||
|
||||
class Favourites extends ImmutablePureComponent {
|
||||
@connect(mapStateToProps)
|
||||
@injectIntl
|
||||
export default class Favourites extends ImmutablePureComponent {
|
||||
|
||||
static propTypes = {
|
||||
dispatch: PropTypes.func.isRequired,
|
||||
|
@ -53,5 +55,3 @@ class Favourites extends ImmutablePureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default connect(mapStateToProps)(injectIntl(Favourites));
|
||||
|
|
|
@ -14,7 +14,8 @@ const mapStateToProps = (state, props) => ({
|
|||
accountIds: state.getIn(['user_lists', 'favourited_by', Number(props.params.statusId)]),
|
||||
});
|
||||
|
||||
class Favourites extends ImmutablePureComponent {
|
||||
@connect(mapStateToProps)
|
||||
export default class Favourites extends ImmutablePureComponent {
|
||||
|
||||
static propTypes = {
|
||||
params: PropTypes.object.isRequired,
|
||||
|
@ -57,5 +58,3 @@ class Favourites extends ImmutablePureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default connect(mapStateToProps)(Favourites);
|
||||
|
|
|
@ -14,7 +14,8 @@ const messages = defineMessages({
|
|||
reject: { id: 'follow_request.reject', defaultMessage: 'Reject' },
|
||||
});
|
||||
|
||||
class AccountAuthorize extends ImmutablePureComponent {
|
||||
@injectIntl
|
||||
export default class AccountAuthorize extends ImmutablePureComponent {
|
||||
|
||||
static propTypes = {
|
||||
account: ImmutablePropTypes.map.isRequired,
|
||||
|
@ -47,5 +48,3 @@ class AccountAuthorize extends ImmutablePureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default injectIntl(AccountAuthorize);
|
||||
|
|
|
@ -19,7 +19,9 @@ const mapStateToProps = state => ({
|
|||
accountIds: state.getIn(['user_lists', 'follow_requests', 'items']),
|
||||
});
|
||||
|
||||
class FollowRequests extends ImmutablePureComponent {
|
||||
@connect(mapStateToProps)
|
||||
@injectIntl
|
||||
export default class FollowRequests extends ImmutablePureComponent {
|
||||
|
||||
static propTypes = {
|
||||
params: PropTypes.object.isRequired,
|
||||
|
@ -67,5 +69,3 @@ class FollowRequests extends ImmutablePureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default connect(mapStateToProps)(injectIntl(FollowRequests));
|
||||
|
|
|
@ -21,7 +21,8 @@ const mapStateToProps = (state, props) => ({
|
|||
hasMore: !!state.getIn(['user_lists', 'followers', Number(props.params.accountId), 'next']),
|
||||
});
|
||||
|
||||
class Followers extends ImmutablePureComponent {
|
||||
@connect(mapStateToProps)
|
||||
export default class Followers extends ImmutablePureComponent {
|
||||
|
||||
static propTypes = {
|
||||
params: PropTypes.object.isRequired,
|
||||
|
@ -90,5 +91,3 @@ class Followers extends ImmutablePureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default connect(mapStateToProps)(Followers);
|
||||
|
|
|
@ -21,7 +21,8 @@ const mapStateToProps = (state, props) => ({
|
|||
hasMore: !!state.getIn(['user_lists', 'following', Number(props.params.accountId), 'next']),
|
||||
});
|
||||
|
||||
class Following extends ImmutablePureComponent {
|
||||
@connect(mapStateToProps)
|
||||
export default class Following extends ImmutablePureComponent {
|
||||
|
||||
static propTypes = {
|
||||
params: PropTypes.object.isRequired,
|
||||
|
@ -90,5 +91,3 @@ class Following extends ImmutablePureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default connect(mapStateToProps)(Following);
|
||||
|
|
|
@ -30,7 +30,9 @@ const mapStateToProps = state => ({
|
|||
columns: state.getIn(['settings', 'columns']),
|
||||
});
|
||||
|
||||
class GettingStarted extends ImmutablePureComponent {
|
||||
@connect(mapStateToProps)
|
||||
@injectIntl
|
||||
export default class GettingStarted extends ImmutablePureComponent {
|
||||
|
||||
static propTypes = {
|
||||
intl: PropTypes.object.isRequired,
|
||||
|
@ -105,5 +107,3 @@ class GettingStarted extends ImmutablePureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default connect(mapStateToProps)(injectIntl(GettingStarted));
|
||||
|
|
|
@ -20,7 +20,8 @@ const mapStateToProps = state => ({
|
|||
accessToken: state.getIn(['meta', 'access_token']),
|
||||
});
|
||||
|
||||
class HashtagTimeline extends React.PureComponent {
|
||||
@connect(mapStateToProps)
|
||||
export default class HashtagTimeline extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
params: PropTypes.object.isRequired,
|
||||
|
@ -136,5 +137,3 @@ class HashtagTimeline extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default connect(mapStateToProps)(HashtagTimeline);
|
||||
|
|
|
@ -10,7 +10,8 @@ const messages = defineMessages({
|
|||
settings: { id: 'home.settings', defaultMessage: 'Column settings' },
|
||||
});
|
||||
|
||||
class ColumnSettings extends React.PureComponent {
|
||||
@injectIntl
|
||||
export default class ColumnSettings extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
settings: ImmutablePropTypes.map.isRequired,
|
||||
|
@ -43,5 +44,3 @@ class ColumnSettings extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default injectIntl(ColumnSettings);
|
||||
|
|
|
@ -19,7 +19,9 @@ const mapStateToProps = state => ({
|
|||
hasFollows: state.getIn(['accounts_counters', state.getIn(['meta', 'me']), 'following_count']) > 0,
|
||||
});
|
||||
|
||||
class HomeTimeline extends React.PureComponent {
|
||||
@connect(mapStateToProps)
|
||||
@injectIntl
|
||||
export default class HomeTimeline extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
dispatch: PropTypes.func.isRequired,
|
||||
|
@ -96,5 +98,3 @@ class HomeTimeline extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default connect(mapStateToProps)(injectIntl(HomeTimeline));
|
||||
|
|
|
@ -19,7 +19,16 @@ const mapStateToProps = state => ({
|
|||
accountIds: state.getIn(['user_lists', 'mutes', 'items']),
|
||||
});
|
||||
|
||||
class Mutes extends ImmutablePureComponent {
|
||||
@connect(mapStateToProps)
|
||||
@injectIntl
|
||||
export default class Mutes extends ImmutablePureComponent {
|
||||
|
||||
static propTypes = {
|
||||
params: PropTypes.object.isRequired,
|
||||
dispatch: PropTypes.func.isRequired,
|
||||
accountIds: ImmutablePropTypes.list,
|
||||
intl: PropTypes.object.isRequired,
|
||||
};
|
||||
|
||||
componentWillMount () {
|
||||
this.props.dispatch(fetchMutes());
|
||||
|
@ -59,12 +68,3 @@ class Mutes extends ImmutablePureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
Mutes.propTypes = {
|
||||
params: PropTypes.object.isRequired,
|
||||
dispatch: PropTypes.func.isRequired,
|
||||
accountIds: ImmutablePropTypes.list,
|
||||
intl: PropTypes.object.isRequired,
|
||||
};
|
||||
|
||||
export default connect(mapStateToProps)(injectIntl(Mutes));
|
||||
|
|
|
@ -2,7 +2,7 @@ import React from 'react';
|
|||
import PropTypes from 'prop-types';
|
||||
import { FormattedMessage } from 'react-intl';
|
||||
|
||||
class ClearColumnButton extends React.Component {
|
||||
export default class ClearColumnButton extends React.Component {
|
||||
|
||||
static propTypes = {
|
||||
onClick: PropTypes.func.isRequired,
|
||||
|
@ -15,5 +15,3 @@ class ClearColumnButton extends React.Component {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default ClearColumnButton;
|
||||
|
|
|
@ -5,7 +5,7 @@ import { FormattedMessage } from 'react-intl';
|
|||
import ClearColumnButton from './clear_column_button';
|
||||
import SettingToggle from './setting_toggle';
|
||||
|
||||
class ColumnSettings extends React.PureComponent {
|
||||
export default class ColumnSettings extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
settings: ImmutablePropTypes.map.isRequired,
|
||||
|
@ -63,5 +63,3 @@ class ColumnSettings extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default ColumnSettings;
|
||||
|
|
|
@ -8,7 +8,7 @@ import emojify from '../../../emoji';
|
|||
import escapeTextContentForBrowser from 'escape-html';
|
||||
import ImmutablePureComponent from 'react-immutable-pure-component';
|
||||
|
||||
class Notification extends ImmutablePureComponent {
|
||||
export default class Notification extends ImmutablePureComponent {
|
||||
|
||||
static propTypes = {
|
||||
notification: ImmutablePropTypes.map.isRequired,
|
||||
|
@ -86,5 +86,3 @@ class Notification extends ImmutablePureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default Notification;
|
||||
|
|
|
@ -3,7 +3,7 @@ import PropTypes from 'prop-types';
|
|||
import ImmutablePropTypes from 'react-immutable-proptypes';
|
||||
import Toggle from 'react-toggle';
|
||||
|
||||
class SettingToggle extends React.PureComponent {
|
||||
export default class SettingToggle extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
prefix: PropTypes.string,
|
||||
|
@ -30,5 +30,3 @@ class SettingToggle extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default SettingToggle;
|
||||
|
|
|
@ -30,7 +30,9 @@ const mapStateToProps = state => ({
|
|||
hasMore: !!state.getIn(['notifications', 'next']),
|
||||
});
|
||||
|
||||
class Notifications extends React.PureComponent {
|
||||
@connect(mapStateToProps)
|
||||
@injectIntl
|
||||
export default class Notifications extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
columnId: PropTypes.string,
|
||||
|
@ -173,5 +175,3 @@ class Notifications extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default connect(mapStateToProps)(injectIntl(Notifications));
|
||||
|
|
|
@ -27,7 +27,9 @@ const mapStateToProps = state => ({
|
|||
accessToken: state.getIn(['meta', 'access_token']),
|
||||
});
|
||||
|
||||
class PublicTimeline extends React.PureComponent {
|
||||
@connect(mapStateToProps)
|
||||
@injectIntl
|
||||
export default class PublicTimeline extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
dispatch: PropTypes.func.isRequired,
|
||||
|
@ -141,5 +143,3 @@ class PublicTimeline extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default connect(mapStateToProps)(injectIntl(PublicTimeline));
|
||||
|
|
|
@ -14,7 +14,8 @@ const mapStateToProps = (state, props) => ({
|
|||
accountIds: state.getIn(['user_lists', 'reblogged_by', Number(props.params.statusId)]),
|
||||
});
|
||||
|
||||
class Reblogs extends ImmutablePureComponent {
|
||||
@connect(mapStateToProps)
|
||||
export default class Reblogs extends ImmutablePureComponent {
|
||||
|
||||
static propTypes = {
|
||||
params: PropTypes.object.isRequired,
|
||||
|
@ -57,5 +58,3 @@ class Reblogs extends ImmutablePureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default connect(mapStateToProps)(Reblogs);
|
||||
|
|
|
@ -4,7 +4,7 @@ import ImmutablePropTypes from 'react-immutable-proptypes';
|
|||
import emojify from '../../../emoji';
|
||||
import Toggle from 'react-toggle';
|
||||
|
||||
class StatusCheckBox extends React.PureComponent {
|
||||
export default class StatusCheckBox extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
status: ImmutablePropTypes.map.isRequired,
|
||||
|
@ -36,5 +36,3 @@ class StatusCheckBox extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default StatusCheckBox;
|
||||
|
|
|
@ -35,7 +35,9 @@ const makeMapStateToProps = () => {
|
|||
return mapStateToProps;
|
||||
};
|
||||
|
||||
class Report extends React.PureComponent {
|
||||
@connect(makeMapStateToProps)
|
||||
@injectIntl
|
||||
export default class Report extends React.PureComponent {
|
||||
|
||||
static contextTypes = {
|
||||
router: PropTypes.object,
|
||||
|
@ -121,5 +123,3 @@ class Report extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default connect(makeMapStateToProps)(injectIntl(Report));
|
||||
|
|
|
@ -15,7 +15,8 @@ const messages = defineMessages({
|
|||
report: { id: 'status.report', defaultMessage: 'Report @{name}' },
|
||||
});
|
||||
|
||||
class ActionBar extends React.PureComponent {
|
||||
@injectIntl
|
||||
export default class ActionBar extends React.PureComponent {
|
||||
|
||||
static contextTypes = {
|
||||
router: PropTypes.object,
|
||||
|
@ -91,5 +92,3 @@ class ActionBar extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default injectIntl(ActionBar);
|
||||
|
|
|
@ -17,7 +17,7 @@ const getHostname = url => {
|
|||
return parser.hostname;
|
||||
};
|
||||
|
||||
class Card extends React.PureComponent {
|
||||
export default class Card extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
card: ImmutablePropTypes.map,
|
||||
|
@ -97,5 +97,3 @@ class Card extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default Card;
|
||||
|
|
|
@ -12,7 +12,7 @@ import { FormattedDate, FormattedNumber } from 'react-intl';
|
|||
import CardContainer from '../containers/card_container';
|
||||
import ImmutablePureComponent from 'react-immutable-pure-component';
|
||||
|
||||
class DetailedStatus extends ImmutablePureComponent {
|
||||
export default class DetailedStatus extends ImmutablePureComponent {
|
||||
|
||||
static contextTypes = {
|
||||
router: PropTypes.object,
|
||||
|
@ -87,5 +87,3 @@ class DetailedStatus extends ImmutablePureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default DetailedStatus;
|
||||
|
|
|
@ -48,7 +48,9 @@ const makeMapStateToProps = () => {
|
|||
return mapStateToProps;
|
||||
};
|
||||
|
||||
class Status extends ImmutablePureComponent {
|
||||
@injectIntl
|
||||
@connect(makeMapStateToProps)
|
||||
export default class Status extends ImmutablePureComponent {
|
||||
|
||||
static contextTypes = {
|
||||
router: PropTypes.object,
|
||||
|
@ -195,5 +197,3 @@ class Status extends ImmutablePureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default injectIntl(connect(makeMapStateToProps)(Status));
|
||||
|
|
|
@ -13,7 +13,8 @@ const messages = defineMessages({
|
|||
reblog: { id: 'status.reblog', defaultMessage: 'Boost' },
|
||||
});
|
||||
|
||||
class BoostModal extends ImmutablePureComponent {
|
||||
@injectIntl
|
||||
export default class BoostModal extends ImmutablePureComponent {
|
||||
|
||||
static contextTypes = {
|
||||
router: PropTypes.object,
|
||||
|
@ -81,5 +82,3 @@ class BoostModal extends ImmutablePureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default injectIntl(BoostModal);
|
||||
|
|
|
@ -4,7 +4,7 @@ import PropTypes from 'prop-types';
|
|||
import { debounce } from 'lodash';
|
||||
import scrollTop from '../../../scroll';
|
||||
|
||||
class Column extends React.PureComponent {
|
||||
export default class Column extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
heading: PropTypes.string,
|
||||
|
@ -59,5 +59,3 @@ class Column extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default Column;
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
class ColumnHeader extends React.PureComponent {
|
||||
export default class ColumnHeader extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
icon: PropTypes.string,
|
||||
|
@ -34,5 +34,3 @@ class ColumnHeader extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default ColumnHeader;
|
||||
|
|
|
@ -20,7 +20,7 @@ const componentMap = {
|
|||
'HASHTAG': HashtagTimeline,
|
||||
};
|
||||
|
||||
class ColumnsArea extends ImmutablePureComponent {
|
||||
export default class ColumnsArea extends ImmutablePureComponent {
|
||||
|
||||
static contextTypes = {
|
||||
router: PropTypes.object.isRequired,
|
||||
|
@ -73,5 +73,3 @@ class ColumnsArea extends ImmutablePureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default ColumnsArea;
|
||||
|
|
|
@ -3,7 +3,8 @@ import PropTypes from 'prop-types';
|
|||
import { injectIntl, FormattedMessage } from 'react-intl';
|
||||
import Button from '../../../components/button';
|
||||
|
||||
class ConfirmationModal extends React.PureComponent {
|
||||
@injectIntl
|
||||
export default class ConfirmationModal extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
message: PropTypes.node.isRequired,
|
||||
|
@ -50,5 +51,3 @@ class ConfirmationModal extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default injectIntl(ConfirmationModal);
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
class ImageLoader extends React.PureComponent {
|
||||
export default class ImageLoader extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
alt: PropTypes.string,
|
||||
|
@ -65,5 +65,3 @@ class ImageLoader extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default ImageLoader;
|
||||
|
|
|
@ -12,7 +12,8 @@ const messages = defineMessages({
|
|||
close: { id: 'lightbox.close', defaultMessage: 'Close' },
|
||||
});
|
||||
|
||||
class MediaModal extends ImmutablePureComponent {
|
||||
@injectIntl
|
||||
export default class MediaModal extends ImmutablePureComponent {
|
||||
|
||||
static propTypes = {
|
||||
media: ImmutablePropTypes.list.isRequired,
|
||||
|
@ -95,5 +96,3 @@ class MediaModal extends ImmutablePureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default injectIntl(MediaModal);
|
||||
|
|
|
@ -16,7 +16,7 @@ const MODAL_COMPONENTS = {
|
|||
'CONFIRM': ConfirmationModal,
|
||||
};
|
||||
|
||||
class ModalRoot extends React.PureComponent {
|
||||
export default class ModalRoot extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
type: PropTypes.string,
|
||||
|
@ -87,5 +87,3 @@ class ModalRoot extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default ModalRoot;
|
||||
|
|
|
@ -167,7 +167,9 @@ const mapStateToProps = state => ({
|
|||
domain: state.getIn(['meta', 'domain']),
|
||||
});
|
||||
|
||||
class OnboardingModal extends React.PureComponent {
|
||||
@connect(mapStateToProps)
|
||||
@injectIntl
|
||||
export default class OnboardingModal extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
onClose: PropTypes.func.isRequired,
|
||||
|
@ -322,5 +324,3 @@ class OnboardingModal extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default connect(mapStateToProps)(injectIntl(OnboardingModal));
|
||||
|
|
|
@ -33,7 +33,7 @@ export function getNextLink (path) {
|
|||
return null;
|
||||
};
|
||||
|
||||
class TabsBar extends React.Component {
|
||||
export default class TabsBar extends React.Component {
|
||||
|
||||
render () {
|
||||
return (
|
||||
|
@ -44,5 +44,3 @@ class TabsBar extends React.Component {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default TabsBar;
|
||||
|
|
|
@ -4,7 +4,7 @@ import Motion from 'react-motion/lib/Motion';
|
|||
import spring from 'react-motion/lib/spring';
|
||||
import { FormattedMessage } from 'react-intl';
|
||||
|
||||
class UploadArea extends React.PureComponent {
|
||||
export default class UploadArea extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
active: PropTypes.bool,
|
||||
|
@ -51,5 +51,3 @@ class UploadArea extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default UploadArea;
|
||||
|
|
|
@ -10,7 +10,8 @@ const messages = defineMessages({
|
|||
close: { id: 'lightbox.close', defaultMessage: 'Close' },
|
||||
});
|
||||
|
||||
class VideoModal extends ImmutablePureComponent {
|
||||
@injectIntl
|
||||
export default class VideoModal extends ImmutablePureComponent {
|
||||
|
||||
static propTypes = {
|
||||
media: ImmutablePropTypes.map.isRequired,
|
||||
|
@ -35,5 +36,3 @@ class VideoModal extends ImmutablePureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default injectIntl(VideoModal);
|
||||
|
|
|
@ -74,7 +74,8 @@ class WrappedRoute extends React.Component {
|
|||
|
||||
}
|
||||
|
||||
class UI extends React.PureComponent {
|
||||
@connect()
|
||||
export default class UI extends React.PureComponent {
|
||||
|
||||
static propTypes = {
|
||||
dispatch: PropTypes.func.isRequired,
|
||||
|
@ -219,5 +220,3 @@ class UI extends React.PureComponent {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
export default connect()(UI);
|
||||
|
|
|
@ -30,6 +30,7 @@
|
|||
"babel-plugin-react-transform": "^2.0.2",
|
||||
"babel-plugin-syntax-dynamic-import": "^6.18.0",
|
||||
"babel-plugin-transform-class-properties": "^6.24.1",
|
||||
"babel-plugin-transform-decorators-legacy": "^1.3.4",
|
||||
"babel-plugin-transform-es2015-modules-commonjs": "^6.24.1",
|
||||
"babel-plugin-transform-object-rest-spread": "^6.23.0",
|
||||
"babel-plugin-transform-react-jsx-self": "^6.22.0",
|
||||
|
|
12
yarn.lock
12
yarn.lock
|
@ -717,7 +717,7 @@ babel-plugin-syntax-class-properties@^6.8.0:
|
|||
version "6.13.0"
|
||||
resolved "https://registry.yarnpkg.com/babel-plugin-syntax-class-properties/-/babel-plugin-syntax-class-properties-6.13.0.tgz#d7eb23b79a317f8543962c505b827c7d6cac27de"
|
||||
|
||||
babel-plugin-syntax-decorators@^6.13.0:
|
||||
babel-plugin-syntax-decorators@^6.1.18, babel-plugin-syntax-decorators@^6.13.0:
|
||||
version "6.13.0"
|
||||
resolved "https://registry.yarnpkg.com/babel-plugin-syntax-decorators/-/babel-plugin-syntax-decorators-6.13.0.tgz#312563b4dbde3cc806cee3e416cceeaddd11ac0b"
|
||||
|
||||
|
@ -790,6 +790,14 @@ babel-plugin-transform-class-properties@6.24.1, babel-plugin-transform-class-pro
|
|||
babel-runtime "^6.22.0"
|
||||
babel-template "^6.24.1"
|
||||
|
||||
babel-plugin-transform-decorators-legacy@^1.3.4:
|
||||
version "1.3.4"
|
||||
resolved "https://registry.yarnpkg.com/babel-plugin-transform-decorators-legacy/-/babel-plugin-transform-decorators-legacy-1.3.4.tgz#741b58f6c5bce9e6027e0882d9c994f04f366925"
|
||||
dependencies:
|
||||
babel-plugin-syntax-decorators "^6.1.18"
|
||||
babel-runtime "^6.2.0"
|
||||
babel-template "^6.3.0"
|
||||
|
||||
babel-plugin-transform-decorators@^6.24.1:
|
||||
version "6.24.1"
|
||||
resolved "https://registry.yarnpkg.com/babel-plugin-transform-decorators/-/babel-plugin-transform-decorators-6.24.1.tgz#788013d8f8c6b5222bdf7b344390dfd77569e24d"
|
||||
|
@ -1270,7 +1278,7 @@ babel-runtime@6.x.x, babel-runtime@^6.11.6, babel-runtime@^6.18.0, babel-runtime
|
|||
core-js "^2.4.0"
|
||||
regenerator-runtime "^0.10.0"
|
||||
|
||||
babel-template@^6.24.1, babel-template@^6.25.0:
|
||||
babel-template@^6.24.1, babel-template@^6.25.0, babel-template@^6.3.0:
|
||||
version "6.25.0"
|
||||
resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.25.0.tgz#665241166b7c2aa4c619d71e192969552b10c071"
|
||||
dependencies:
|
||||
|
|
Loading…
Reference in a new issue