0
0
Fork 0

Use Class and Property Decorators (#3730)

ref https://tc39.github.io/proposal-decorators/
This commit is contained in:
Yamagishi Kazutoshi 2017-06-24 02:36:54 +09:00 committed by Eugen Rochko
parent 0c44316b22
commit c1a8e3d1eb
90 changed files with 168 additions and 274 deletions

View file

@ -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);

View file

@ -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;

View file

@ -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;

View file

@ -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;

View file

@ -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;

View file

@ -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;

View file

@ -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;

View file

@ -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;

View file

@ -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;

View file

@ -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;

View file

@ -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;

View file

@ -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;

View file

@ -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;

View file

@ -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;

View file

@ -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;

View file

@ -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;

View file

@ -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);

View file

@ -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;

View file

@ -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);

View file

@ -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;

View file

@ -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;

View file

@ -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);

View file

@ -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;

View file

@ -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;

View file

@ -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);