From c1a8e3d1ebaa6d69e1ae23369a5dedd93ba7226f Mon Sep 17 00:00:00 2001 From: Yamagishi Kazutoshi Date: Sat, 24 Jun 2017 02:36:54 +0900 Subject: Use Class and Property Decorators (#3730) ref https://tc39.github.io/proposal-decorators/ --- app/javascript/mastodon/components/account.js | 5 ++--- app/javascript/mastodon/components/attachment_list.js | 4 +--- app/javascript/mastodon/components/autosuggest_textarea.js | 4 +--- app/javascript/mastodon/components/avatar.js | 4 +--- app/javascript/mastodon/components/avatar_overlay.js | 4 +--- app/javascript/mastodon/components/button.js | 4 +--- app/javascript/mastodon/components/column.js | 4 +--- app/javascript/mastodon/components/column_back_button.js | 4 +--- app/javascript/mastodon/components/column_back_button_slim.js | 4 +--- app/javascript/mastodon/components/column_collapsable.js | 4 +--- app/javascript/mastodon/components/column_header.js | 4 +--- app/javascript/mastodon/components/display_name.js | 4 +--- app/javascript/mastodon/components/dropdown_menu.js | 4 +--- app/javascript/mastodon/components/extended_video_player.js | 4 +--- app/javascript/mastodon/components/icon_button.js | 4 +--- app/javascript/mastodon/components/load_more.js | 4 +--- app/javascript/mastodon/components/media_gallery.js | 5 ++--- app/javascript/mastodon/components/permalink.js | 4 +--- app/javascript/mastodon/components/relative_timestamp.js | 5 ++--- app/javascript/mastodon/components/setting_text.js | 4 +--- app/javascript/mastodon/components/status.js | 4 +--- app/javascript/mastodon/components/status_action_bar.js | 5 ++--- app/javascript/mastodon/components/status_content.js | 4 +--- app/javascript/mastodon/components/status_list.js | 4 +--- app/javascript/mastodon/components/video_player.js | 5 ++--- 25 files changed, 30 insertions(+), 75 deletions(-) (limited to 'app/javascript/mastodon/components') diff --git a/app/javascript/mastodon/components/account.js b/app/javascript/mastodon/components/account.js index 960d136d3..b6ca0661f 100644 --- a/app/javascript/mastodon/components/account.js +++ b/app/javascript/mastodon/components/account.js @@ -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); diff --git a/app/javascript/mastodon/components/attachment_list.js b/app/javascript/mastodon/components/attachment_list.js index a57c25ad0..b3d00b335 100644 --- a/app/javascript/mastodon/components/attachment_list.js +++ b/app/javascript/mastodon/components/attachment_list.js @@ -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; diff --git a/app/javascript/mastodon/components/autosuggest_textarea.js b/app/javascript/mastodon/components/autosuggest_textarea.js index 9a5760a2c..fa41e59e1 100644 --- a/app/javascript/mastodon/components/autosuggest_textarea.js +++ b/app/javascript/mastodon/components/autosuggest_textarea.js @@ -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; diff --git a/app/javascript/mastodon/components/avatar.js b/app/javascript/mastodon/components/avatar.js index 3531a42b5..4f8170657 100644 --- a/app/javascript/mastodon/components/avatar.js +++ b/app/javascript/mastodon/components/avatar.js @@ -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; diff --git a/app/javascript/mastodon/components/avatar_overlay.js b/app/javascript/mastodon/components/avatar_overlay.js index c82c89637..de43e0ef5 100644 --- a/app/javascript/mastodon/components/avatar_overlay.js +++ b/app/javascript/mastodon/components/avatar_overlay.js @@ -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; diff --git a/app/javascript/mastodon/components/button.js b/app/javascript/mastodon/components/button.js index 52af193e7..51e2e6a7a 100644 --- a/app/javascript/mastodon/components/button.js +++ b/app/javascript/mastodon/components/button.js @@ -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; diff --git a/app/javascript/mastodon/components/column.js b/app/javascript/mastodon/components/column.js index 157a89c0e..3cbb745c5 100644 --- a/app/javascript/mastodon/components/column.js +++ b/app/javascript/mastodon/components/column.js @@ -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; diff --git a/app/javascript/mastodon/components/column_back_button.js b/app/javascript/mastodon/components/column_back_button.js index 191c0f597..ba2736d7a 100644 --- a/app/javascript/mastodon/components/column_back_button.js +++ b/app/javascript/mastodon/components/column_back_button.js @@ -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; diff --git a/app/javascript/mastodon/components/column_back_button_slim.js b/app/javascript/mastodon/components/column_back_button_slim.js index ffb05fa02..3b4f46d99 100644 --- a/app/javascript/mastodon/components/column_back_button_slim.js +++ b/app/javascript/mastodon/components/column_back_button_slim.js @@ -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; diff --git a/app/javascript/mastodon/components/column_collapsable.js b/app/javascript/mastodon/components/column_collapsable.js index c7c953acd..d6b4edb9f 100644 --- a/app/javascript/mastodon/components/column_collapsable.js +++ b/app/javascript/mastodon/components/column_collapsable.js @@ -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; diff --git a/app/javascript/mastodon/components/column_header.js b/app/javascript/mastodon/components/column_header.js index 076f1cdad..a309f74e8 100644 --- a/app/javascript/mastodon/components/column_header.js +++ b/app/javascript/mastodon/components/column_header.js @@ -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; diff --git a/app/javascript/mastodon/components/display_name.js b/app/javascript/mastodon/components/display_name.js index 6fbc1dfc0..dc3665a2b 100644 --- a/app/javascript/mastodon/components/display_name.js +++ b/app/javascript/mastodon/components/display_name.js @@ -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; diff --git a/app/javascript/mastodon/components/dropdown_menu.js b/app/javascript/mastodon/components/dropdown_menu.js index deaab938e..12e1b44fa 100644 --- a/app/javascript/mastodon/components/dropdown_menu.js +++ b/app/javascript/mastodon/components/dropdown_menu.js @@ -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; diff --git a/app/javascript/mastodon/components/extended_video_player.js b/app/javascript/mastodon/components/extended_video_player.js index 4d92bd779..4c62fa7b3 100644 --- a/app/javascript/mastodon/components/extended_video_player.js +++ b/app/javascript/mastodon/components/extended_video_player.js @@ -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; diff --git a/app/javascript/mastodon/components/icon_button.js b/app/javascript/mastodon/components/icon_button.js index 302e63df5..ac734f5ad 100644 --- a/app/javascript/mastodon/components/icon_button.js +++ b/app/javascript/mastodon/components/icon_button.js @@ -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; diff --git a/app/javascript/mastodon/components/load_more.js b/app/javascript/mastodon/components/load_more.js index fa0caaae9..2996d4dc8 100644 --- a/app/javascript/mastodon/components/load_more.js +++ b/app/javascript/mastodon/components/load_more.js @@ -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; diff --git a/app/javascript/mastodon/components/media_gallery.js b/app/javascript/mastodon/components/media_gallery.js index cbed90f82..78ff35130 100644 --- a/app/javascript/mastodon/components/media_gallery.js +++ b/app/javascript/mastodon/components/media_gallery.js @@ -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); diff --git a/app/javascript/mastodon/components/permalink.js b/app/javascript/mastodon/components/permalink.js index 7149e8380..5d3e4738d 100644 --- a/app/javascript/mastodon/components/permalink.js +++ b/app/javascript/mastodon/components/permalink.js @@ -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; diff --git a/app/javascript/mastodon/components/relative_timestamp.js b/app/javascript/mastodon/components/relative_timestamp.js index 3eed88df8..2717d2326 100644 --- a/app/javascript/mastodon/components/relative_timestamp.js +++ b/app/javascript/mastodon/components/relative_timestamp.js @@ -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); diff --git a/app/javascript/mastodon/components/setting_text.js b/app/javascript/mastodon/components/setting_text.js index d4f177f8a..dd975bc99 100644 --- a/app/javascript/mastodon/components/setting_text.js +++ b/app/javascript/mastodon/components/setting_text.js @@ -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; diff --git a/app/javascript/mastodon/components/status.js b/app/javascript/mastodon/components/status.js index 3be3685ec..81196c82a 100644 --- a/app/javascript/mastodon/components/status.js +++ b/app/javascript/mastodon/components/status.js @@ -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; diff --git a/app/javascript/mastodon/components/status_action_bar.js b/app/javascript/mastodon/components/status_action_bar.js index 800f0d0fb..edb2d6eb0 100644 --- a/app/javascript/mastodon/components/status_action_bar.js +++ b/app/javascript/mastodon/components/status_action_bar.js @@ -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); diff --git a/app/javascript/mastodon/components/status_content.js b/app/javascript/mastodon/components/status_content.js index 605d42138..0acea033c 100644 --- a/app/javascript/mastodon/components/status_content.js +++ b/app/javascript/mastodon/components/status_content.js @@ -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; diff --git a/app/javascript/mastodon/components/status_list.js b/app/javascript/mastodon/components/status_list.js index 40e9d38c1..5bc46e8ee 100644 --- a/app/javascript/mastodon/components/status_list.js +++ b/app/javascript/mastodon/components/status_list.js @@ -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; diff --git a/app/javascript/mastodon/components/video_player.js b/app/javascript/mastodon/components/video_player.js index 66c3a64bc..452a84319 100644 --- a/app/javascript/mastodon/components/video_player.js +++ b/app/javascript/mastodon/components/video_player.js @@ -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); -- cgit