Upgrade Babel to version 7.0.0 (#5925)
This commit is contained in:
parent
64a5561b5a
commit
0ddbccf7e6
78 changed files with 2341 additions and 2276 deletions
66
.babelrc
66
.babelrc
|
@ -1,66 +0,0 @@
|
||||||
{
|
|
||||||
"presets": [
|
|
||||||
"react",
|
|
||||||
[
|
|
||||||
"env",
|
|
||||||
{
|
|
||||||
"exclude": ["transform-async-to-generator", "transform-regenerator"],
|
|
||||||
"loose": true,
|
|
||||||
"modules": false,
|
|
||||||
"targets": {
|
|
||||||
"browsers": ["last 2 versions", "IE >= 11", "iOS >= 9"]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
],
|
|
||||||
"plugins": [
|
|
||||||
"syntax-dynamic-import",
|
|
||||||
["transform-object-rest-spread", { "useBuiltIns": true }],
|
|
||||||
"transform-decorators-legacy",
|
|
||||||
"transform-class-properties",
|
|
||||||
[
|
|
||||||
"react-intl",
|
|
||||||
{
|
|
||||||
"messagesDir": "./build/messages"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"preval"
|
|
||||||
],
|
|
||||||
"env": {
|
|
||||||
"development": {
|
|
||||||
"plugins": [
|
|
||||||
"transform-react-jsx-source",
|
|
||||||
"transform-react-jsx-self"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"production": {
|
|
||||||
"plugins": [
|
|
||||||
"lodash",
|
|
||||||
[
|
|
||||||
"transform-react-remove-prop-types",
|
|
||||||
{
|
|
||||||
"mode": "remove",
|
|
||||||
"removeImport": true,
|
|
||||||
"additionalLibraries": [
|
|
||||||
"react-immutable-proptypes"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"transform-react-inline-elements",
|
|
||||||
[
|
|
||||||
"transform-runtime",
|
|
||||||
{
|
|
||||||
"helpers": true,
|
|
||||||
"polyfill": false,
|
|
||||||
"regenerator": false
|
|
||||||
}
|
|
||||||
]
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"test": {
|
|
||||||
"plugins": [
|
|
||||||
"transform-es2015-modules-commonjs"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
2
Gemfile
2
Gemfile
|
@ -87,7 +87,7 @@ gem 'tty-command', '~> 0.8', require: false
|
||||||
gem 'tty-prompt', '~> 0.16', require: false
|
gem 'tty-prompt', '~> 0.16', require: false
|
||||||
gem 'twitter-text', '~> 1.14'
|
gem 'twitter-text', '~> 1.14'
|
||||||
gem 'tzinfo-data', '~> 1.2018'
|
gem 'tzinfo-data', '~> 1.2018'
|
||||||
gem 'webpacker', '~> 3.4'
|
gem 'webpacker', '~> 3.5'
|
||||||
gem 'webpush'
|
gem 'webpush'
|
||||||
|
|
||||||
gem 'json-ld', '~> 2.2'
|
gem 'json-ld', '~> 2.2'
|
||||||
|
|
|
@ -627,7 +627,7 @@ GEM
|
||||||
addressable (>= 2.3.6)
|
addressable (>= 2.3.6)
|
||||||
crack (>= 0.3.2)
|
crack (>= 0.3.2)
|
||||||
hashdiff
|
hashdiff
|
||||||
webpacker (3.4.3)
|
webpacker (3.5.5)
|
||||||
activesupport (>= 4.2)
|
activesupport (>= 4.2)
|
||||||
rack-proxy (>= 0.6.1)
|
rack-proxy (>= 0.6.1)
|
||||||
railties (>= 4.2)
|
railties (>= 4.2)
|
||||||
|
@ -758,7 +758,7 @@ DEPENDENCIES
|
||||||
twitter-text (~> 1.14)
|
twitter-text (~> 1.14)
|
||||||
tzinfo-data (~> 1.2018)
|
tzinfo-data (~> 1.2018)
|
||||||
webmock (~> 3.3)
|
webmock (~> 3.3)
|
||||||
webpacker (~> 3.4)
|
webpacker (~> 3.5)
|
||||||
webpush
|
webpush
|
||||||
|
|
||||||
RUBY VERSION
|
RUBY VERSION
|
||||||
|
|
|
@ -3,7 +3,6 @@
|
||||||
exports[`<Button /> adds class "button-secondary" if props.secondary given 1`] = `
|
exports[`<Button /> adds class "button-secondary" if props.secondary given 1`] = `
|
||||||
<button
|
<button
|
||||||
className="button button-secondary"
|
className="button button-secondary"
|
||||||
disabled={undefined}
|
|
||||||
onClick={[Function]}
|
onClick={[Function]}
|
||||||
style={
|
style={
|
||||||
Object {
|
Object {
|
||||||
|
@ -18,7 +17,6 @@ exports[`<Button /> adds class "button-secondary" if props.secondary given 1`] =
|
||||||
exports[`<Button /> renders a button element 1`] = `
|
exports[`<Button /> renders a button element 1`] = `
|
||||||
<button
|
<button
|
||||||
className="button"
|
className="button"
|
||||||
disabled={undefined}
|
|
||||||
onClick={[Function]}
|
onClick={[Function]}
|
||||||
style={
|
style={
|
||||||
Object {
|
Object {
|
||||||
|
@ -48,7 +46,6 @@ exports[`<Button /> renders a disabled attribute if props.disabled given 1`] = `
|
||||||
exports[`<Button /> renders class="button--block" if props.block given 1`] = `
|
exports[`<Button /> renders class="button--block" if props.block given 1`] = `
|
||||||
<button
|
<button
|
||||||
className="button button--block"
|
className="button button--block"
|
||||||
disabled={undefined}
|
|
||||||
onClick={[Function]}
|
onClick={[Function]}
|
||||||
style={
|
style={
|
||||||
Object {
|
Object {
|
||||||
|
@ -63,7 +60,6 @@ exports[`<Button /> renders class="button--block" if props.block given 1`] = `
|
||||||
exports[`<Button /> renders the children 1`] = `
|
exports[`<Button /> renders the children 1`] = `
|
||||||
<button
|
<button
|
||||||
className="button"
|
className="button"
|
||||||
disabled={undefined}
|
|
||||||
onClick={[Function]}
|
onClick={[Function]}
|
||||||
style={
|
style={
|
||||||
Object {
|
Object {
|
||||||
|
@ -82,7 +78,6 @@ exports[`<Button /> renders the children 1`] = `
|
||||||
exports[`<Button /> renders the given text 1`] = `
|
exports[`<Button /> renders the given text 1`] = `
|
||||||
<button
|
<button
|
||||||
className="button"
|
className="button"
|
||||||
disabled={undefined}
|
|
||||||
onClick={[Function]}
|
onClick={[Function]}
|
||||||
style={
|
style={
|
||||||
Object {
|
Object {
|
||||||
|
@ -99,7 +94,6 @@ exports[`<Button /> renders the given text 1`] = `
|
||||||
exports[`<Button /> renders the props.text instead of children 1`] = `
|
exports[`<Button /> renders the props.text instead of children 1`] = `
|
||||||
<button
|
<button
|
||||||
className="button"
|
className="button"
|
||||||
disabled={undefined}
|
|
||||||
onClick={[Function]}
|
onClick={[Function]}
|
||||||
style={
|
style={
|
||||||
Object {
|
Object {
|
||||||
|
|
|
@ -19,8 +19,8 @@ const messages = defineMessages({
|
||||||
unmute_notifications: { id: 'account.unmute_notifications', defaultMessage: 'Unmute notifications from @{name}' },
|
unmute_notifications: { id: 'account.unmute_notifications', defaultMessage: 'Unmute notifications from @{name}' },
|
||||||
});
|
});
|
||||||
|
|
||||||
@injectIntl
|
export default @injectIntl
|
||||||
export default class Account extends ImmutablePureComponent {
|
class Account extends ImmutablePureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
account: ImmutablePropTypes.map.isRequired,
|
account: ImmutablePropTypes.map.isRequired,
|
||||||
|
|
|
@ -10,8 +10,8 @@ const messages = defineMessages({
|
||||||
moveRight: { id: 'column_header.moveRight_settings', defaultMessage: 'Move column to the right' },
|
moveRight: { id: 'column_header.moveRight_settings', defaultMessage: 'Move column to the right' },
|
||||||
});
|
});
|
||||||
|
|
||||||
@injectIntl
|
export default @injectIntl
|
||||||
export default class ColumnHeader extends React.PureComponent {
|
class ColumnHeader extends React.PureComponent {
|
||||||
|
|
||||||
static contextTypes = {
|
static contextTypes = {
|
||||||
router: PropTypes.object,
|
router: PropTypes.object,
|
||||||
|
|
|
@ -8,8 +8,8 @@ const messages = defineMessages({
|
||||||
unblockDomain: { id: 'account.unblock_domain', defaultMessage: 'Unhide {domain}' },
|
unblockDomain: { id: 'account.unblock_domain', defaultMessage: 'Unhide {domain}' },
|
||||||
});
|
});
|
||||||
|
|
||||||
@injectIntl
|
export default @injectIntl
|
||||||
export default class Account extends ImmutablePureComponent {
|
class Account extends ImmutablePureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
domain: PropTypes.string,
|
domain: PropTypes.string,
|
||||||
|
|
|
@ -6,8 +6,8 @@ const messages = defineMessages({
|
||||||
load_more: { id: 'status.load_more', defaultMessage: 'Load more' },
|
load_more: { id: 'status.load_more', defaultMessage: 'Load more' },
|
||||||
});
|
});
|
||||||
|
|
||||||
@injectIntl
|
export default @injectIntl
|
||||||
export default class LoadGap extends React.PureComponent {
|
class LoadGap extends React.PureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
disabled: PropTypes.bool,
|
disabled: PropTypes.bool,
|
||||||
|
|
|
@ -179,8 +179,8 @@ class Item extends React.PureComponent {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@injectIntl
|
export default @injectIntl
|
||||||
export default class MediaGallery extends React.PureComponent {
|
class MediaGallery extends React.PureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
sensitive: PropTypes.bool,
|
sensitive: PropTypes.bool,
|
||||||
|
|
|
@ -86,8 +86,8 @@ export const timeAgoString = (intl, date, now, year) => {
|
||||||
return relativeTime;
|
return relativeTime;
|
||||||
};
|
};
|
||||||
|
|
||||||
@injectIntl
|
export default @injectIntl
|
||||||
export default class RelativeTimestamp extends React.Component {
|
class RelativeTimestamp extends React.Component {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
intl: PropTypes.object.isRequired,
|
intl: PropTypes.object.isRequired,
|
||||||
|
|
|
@ -35,8 +35,8 @@ export const textForScreenReader = (intl, status, rebloggedByText = false) => {
|
||||||
return values.join(', ');
|
return values.join(', ');
|
||||||
};
|
};
|
||||||
|
|
||||||
@injectIntl
|
export default @injectIntl
|
||||||
export default class Status extends ImmutablePureComponent {
|
class Status extends ImmutablePureComponent {
|
||||||
|
|
||||||
static contextTypes = {
|
static contextTypes = {
|
||||||
router: PropTypes.object,
|
router: PropTypes.object,
|
||||||
|
|
|
@ -42,8 +42,8 @@ const obfuscatedCount = count => {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@injectIntl
|
export default @injectIntl
|
||||||
export default class StatusActionBar extends ImmutablePureComponent {
|
class StatusActionBar extends ImmutablePureComponent {
|
||||||
|
|
||||||
static contextTypes = {
|
static contextTypes = {
|
||||||
router: PropTypes.object,
|
router: PropTypes.object,
|
||||||
|
|
|
@ -36,8 +36,8 @@ const messages = defineMessages({
|
||||||
unendorse: { id: 'account.unendorse', defaultMessage: 'Don\'t feature on profile' },
|
unendorse: { id: 'account.unendorse', defaultMessage: 'Don\'t feature on profile' },
|
||||||
});
|
});
|
||||||
|
|
||||||
@injectIntl
|
export default @injectIntl
|
||||||
export default class ActionBar extends React.PureComponent {
|
class ActionBar extends React.PureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
account: ImmutablePropTypes.map.isRequired,
|
account: ImmutablePropTypes.map.isRequired,
|
||||||
|
|
|
@ -65,8 +65,8 @@ class Avatar extends ImmutablePureComponent {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@injectIntl
|
export default @injectIntl
|
||||||
export default class Header extends ImmutablePureComponent {
|
class Header extends ImmutablePureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
account: ImmutablePropTypes.map,
|
account: ImmutablePropTypes.map,
|
||||||
|
|
|
@ -43,8 +43,8 @@ class LoadMoreMedia extends ImmutablePureComponent {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@connect(mapStateToProps)
|
export default @connect(mapStateToProps)
|
||||||
export default class AccountGallery extends ImmutablePureComponent {
|
class AccountGallery extends ImmutablePureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
params: PropTypes.object.isRequired,
|
params: PropTypes.object.isRequired,
|
||||||
|
|
|
@ -23,8 +23,8 @@ const mapStateToProps = (state, { params: { accountId }, withReplies = false })
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
@connect(mapStateToProps)
|
export default @connect(mapStateToProps)
|
||||||
export default class AccountTimeline extends ImmutablePureComponent {
|
class AccountTimeline extends ImmutablePureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
params: PropTypes.object.isRequired,
|
params: PropTypes.object.isRequired,
|
||||||
|
|
|
@ -20,9 +20,9 @@ const mapStateToProps = state => ({
|
||||||
accountIds: state.getIn(['user_lists', 'blocks', 'items']),
|
accountIds: state.getIn(['user_lists', 'blocks', 'items']),
|
||||||
});
|
});
|
||||||
|
|
||||||
@connect(mapStateToProps)
|
export default @connect(mapStateToProps)
|
||||||
@injectIntl
|
@injectIntl
|
||||||
export default class Blocks extends ImmutablePureComponent {
|
class Blocks extends ImmutablePureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
params: PropTypes.object.isRequired,
|
params: PropTypes.object.isRequired,
|
||||||
|
|
|
@ -4,8 +4,8 @@ import ImmutablePropTypes from 'react-immutable-proptypes';
|
||||||
import { injectIntl, FormattedMessage } from 'react-intl';
|
import { injectIntl, FormattedMessage } from 'react-intl';
|
||||||
import SettingToggle from '../../notifications/components/setting_toggle';
|
import SettingToggle from '../../notifications/components/setting_toggle';
|
||||||
|
|
||||||
@injectIntl
|
export default @injectIntl
|
||||||
export default class ColumnSettings extends React.PureComponent {
|
class ColumnSettings extends React.PureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
settings: ImmutablePropTypes.map.isRequired,
|
settings: ImmutablePropTypes.map.isRequired,
|
||||||
|
|
|
@ -25,9 +25,9 @@ const mapStateToProps = (state, { onlyMedia, columnId }) => {
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
@connect(mapStateToProps)
|
export default @connect(mapStateToProps)
|
||||||
@injectIntl
|
@injectIntl
|
||||||
export default class CommunityTimeline extends React.PureComponent {
|
class CommunityTimeline extends React.PureComponent {
|
||||||
|
|
||||||
static contextTypes = {
|
static contextTypes = {
|
||||||
router: PropTypes.object,
|
router: PropTypes.object,
|
||||||
|
|
|
@ -17,8 +17,8 @@ const messages = defineMessages({
|
||||||
filters: { id: 'navigation_bar.filters', defaultMessage: 'Muted words' },
|
filters: { id: 'navigation_bar.filters', defaultMessage: 'Muted words' },
|
||||||
});
|
});
|
||||||
|
|
||||||
@injectIntl
|
export default @injectIntl
|
||||||
export default class ActionBar extends React.PureComponent {
|
class ActionBar extends React.PureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
account: ImmutablePropTypes.map.isRequired,
|
account: ImmutablePropTypes.map.isRequired,
|
||||||
|
|
|
@ -27,8 +27,8 @@ const messages = defineMessages({
|
||||||
publishLoud: { id: 'compose_form.publish_loud', defaultMessage: '{publish}!' },
|
publishLoud: { id: 'compose_form.publish_loud', defaultMessage: '{publish}!' },
|
||||||
});
|
});
|
||||||
|
|
||||||
@injectIntl
|
export default @injectIntl
|
||||||
export default class ComposeForm extends ImmutablePureComponent {
|
class ComposeForm extends ImmutablePureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
intl: PropTypes.object.isRequired,
|
intl: PropTypes.object.isRequired,
|
||||||
|
|
|
@ -278,8 +278,8 @@ class EmojiPickerMenu extends React.PureComponent {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@injectIntl
|
export default @injectIntl
|
||||||
export default class EmojiPickerDropdown extends React.PureComponent {
|
class EmojiPickerDropdown extends React.PureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
custom_emojis: ImmutablePropTypes.list,
|
custom_emojis: ImmutablePropTypes.list,
|
||||||
|
|
|
@ -149,8 +149,8 @@ class PrivacyDropdownMenu extends React.PureComponent {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@injectIntl
|
export default @injectIntl
|
||||||
export default class PrivacyDropdown extends React.PureComponent {
|
class PrivacyDropdown extends React.PureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
isUserTouching: PropTypes.func,
|
isUserTouching: PropTypes.func,
|
||||||
|
|
|
@ -12,8 +12,8 @@ const messages = defineMessages({
|
||||||
cancel: { id: 'reply_indicator.cancel', defaultMessage: 'Cancel' },
|
cancel: { id: 'reply_indicator.cancel', defaultMessage: 'Cancel' },
|
||||||
});
|
});
|
||||||
|
|
||||||
@injectIntl
|
export default @injectIntl
|
||||||
export default class ReplyIndicator extends ImmutablePureComponent {
|
class ReplyIndicator extends ImmutablePureComponent {
|
||||||
|
|
||||||
static contextTypes = {
|
static contextTypes = {
|
||||||
router: PropTypes.object,
|
router: PropTypes.object,
|
||||||
|
|
|
@ -43,8 +43,8 @@ class SearchPopout extends React.PureComponent {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@injectIntl
|
export default @injectIntl
|
||||||
export default class Search extends React.PureComponent {
|
class Search extends React.PureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
value: PropTypes.string.isRequired,
|
value: PropTypes.string.isRequired,
|
||||||
|
|
|
@ -11,8 +11,8 @@ const messages = defineMessages({
|
||||||
description: { id: 'upload_form.description', defaultMessage: 'Describe for the visually impaired' },
|
description: { id: 'upload_form.description', defaultMessage: 'Describe for the visually impaired' },
|
||||||
});
|
});
|
||||||
|
|
||||||
@injectIntl
|
export default @injectIntl
|
||||||
export default class Upload extends ImmutablePureComponent {
|
class Upload extends ImmutablePureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
media: ImmutablePropTypes.map.isRequired,
|
media: ImmutablePropTypes.map.isRequired,
|
||||||
|
|
|
@ -23,9 +23,9 @@ const iconStyle = {
|
||||||
lineHeight: '27px',
|
lineHeight: '27px',
|
||||||
};
|
};
|
||||||
|
|
||||||
@connect(makeMapStateToProps)
|
export default @connect(makeMapStateToProps)
|
||||||
@injectIntl
|
@injectIntl
|
||||||
export default class UploadButton extends ImmutablePureComponent {
|
class UploadButton extends ImmutablePureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
disabled: PropTypes.bool,
|
disabled: PropTypes.bool,
|
||||||
|
|
|
@ -30,9 +30,9 @@ const mapStateToProps = (state, ownProps) => ({
|
||||||
showSearch: ownProps.multiColumn ? state.getIn(['search', 'submitted']) && !state.getIn(['search', 'hidden']) : ownProps.isSearchPage,
|
showSearch: ownProps.multiColumn ? state.getIn(['search', 'submitted']) && !state.getIn(['search', 'hidden']) : ownProps.isSearchPage,
|
||||||
});
|
});
|
||||||
|
|
||||||
@connect(mapStateToProps)
|
export default @connect(mapStateToProps)
|
||||||
@injectIntl
|
@injectIntl
|
||||||
export default class Compose extends React.PureComponent {
|
class Compose extends React.PureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
dispatch: PropTypes.func.isRequired,
|
dispatch: PropTypes.func.isRequired,
|
||||||
|
|
|
@ -9,8 +9,8 @@ const messages = defineMessages({
|
||||||
settings: { id: 'home.settings', defaultMessage: 'Column settings' },
|
settings: { id: 'home.settings', defaultMessage: 'Column settings' },
|
||||||
});
|
});
|
||||||
|
|
||||||
@injectIntl
|
export default @injectIntl
|
||||||
export default class ColumnSettings extends React.PureComponent {
|
class ColumnSettings extends React.PureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
settings: ImmutablePropTypes.map.isRequired,
|
settings: ImmutablePropTypes.map.isRequired,
|
||||||
|
|
|
@ -17,9 +17,9 @@ const mapStateToProps = state => ({
|
||||||
hasUnread: state.getIn(['timelines', 'direct', 'unread']) > 0,
|
hasUnread: state.getIn(['timelines', 'direct', 'unread']) > 0,
|
||||||
});
|
});
|
||||||
|
|
||||||
@connect(mapStateToProps)
|
export default @connect(mapStateToProps)
|
||||||
@injectIntl
|
@injectIntl
|
||||||
export default class DirectTimeline extends React.PureComponent {
|
class DirectTimeline extends React.PureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
dispatch: PropTypes.func.isRequired,
|
dispatch: PropTypes.func.isRequired,
|
||||||
|
|
|
@ -21,9 +21,9 @@ const mapStateToProps = state => ({
|
||||||
domains: state.getIn(['domain_lists', 'blocks', 'items']),
|
domains: state.getIn(['domain_lists', 'blocks', 'items']),
|
||||||
});
|
});
|
||||||
|
|
||||||
@connect(mapStateToProps)
|
export default @connect(mapStateToProps)
|
||||||
@injectIntl
|
@injectIntl
|
||||||
export default class Blocks extends ImmutablePureComponent {
|
class Blocks extends ImmutablePureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
params: PropTypes.object.isRequired,
|
params: PropTypes.object.isRequired,
|
||||||
|
|
|
@ -21,9 +21,9 @@ const mapStateToProps = state => ({
|
||||||
hasMore: !!state.getIn(['status_lists', 'favourites', 'next']),
|
hasMore: !!state.getIn(['status_lists', 'favourites', 'next']),
|
||||||
});
|
});
|
||||||
|
|
||||||
@connect(mapStateToProps)
|
export default @connect(mapStateToProps)
|
||||||
@injectIntl
|
@injectIntl
|
||||||
export default class Favourites extends ImmutablePureComponent {
|
class Favourites extends ImmutablePureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
dispatch: PropTypes.func.isRequired,
|
dispatch: PropTypes.func.isRequired,
|
||||||
|
|
|
@ -15,8 +15,8 @@ const mapStateToProps = (state, props) => ({
|
||||||
accountIds: state.getIn(['user_lists', 'favourited_by', props.params.statusId]),
|
accountIds: state.getIn(['user_lists', 'favourited_by', props.params.statusId]),
|
||||||
});
|
});
|
||||||
|
|
||||||
@connect(mapStateToProps)
|
export default @connect(mapStateToProps)
|
||||||
export default class Favourites extends ImmutablePureComponent {
|
class Favourites extends ImmutablePureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
params: PropTypes.object.isRequired,
|
params: PropTypes.object.isRequired,
|
||||||
|
|
|
@ -13,8 +13,8 @@ const messages = defineMessages({
|
||||||
reject: { id: 'follow_request.reject', defaultMessage: 'Reject' },
|
reject: { id: 'follow_request.reject', defaultMessage: 'Reject' },
|
||||||
});
|
});
|
||||||
|
|
||||||
@injectIntl
|
export default @injectIntl
|
||||||
export default class AccountAuthorize extends ImmutablePureComponent {
|
class AccountAuthorize extends ImmutablePureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
account: ImmutablePropTypes.map.isRequired,
|
account: ImmutablePropTypes.map.isRequired,
|
||||||
|
|
|
@ -20,9 +20,9 @@ const mapStateToProps = state => ({
|
||||||
accountIds: state.getIn(['user_lists', 'follow_requests', 'items']),
|
accountIds: state.getIn(['user_lists', 'follow_requests', 'items']),
|
||||||
});
|
});
|
||||||
|
|
||||||
@connect(mapStateToProps)
|
export default @connect(mapStateToProps)
|
||||||
@injectIntl
|
@injectIntl
|
||||||
export default class FollowRequests extends ImmutablePureComponent {
|
class FollowRequests extends ImmutablePureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
params: PropTypes.object.isRequired,
|
params: PropTypes.object.isRequired,
|
||||||
|
|
|
@ -22,8 +22,8 @@ const mapStateToProps = (state, props) => ({
|
||||||
hasMore: !!state.getIn(['user_lists', 'followers', props.params.accountId, 'next']),
|
hasMore: !!state.getIn(['user_lists', 'followers', props.params.accountId, 'next']),
|
||||||
});
|
});
|
||||||
|
|
||||||
@connect(mapStateToProps)
|
export default @connect(mapStateToProps)
|
||||||
export default class Followers extends ImmutablePureComponent {
|
class Followers extends ImmutablePureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
params: PropTypes.object.isRequired,
|
params: PropTypes.object.isRequired,
|
||||||
|
|
|
@ -22,8 +22,8 @@ const mapStateToProps = (state, props) => ({
|
||||||
hasMore: !!state.getIn(['user_lists', 'following', props.params.accountId, 'next']),
|
hasMore: !!state.getIn(['user_lists', 'following', props.params.accountId, 'next']),
|
||||||
});
|
});
|
||||||
|
|
||||||
@connect(mapStateToProps)
|
export default @connect(mapStateToProps)
|
||||||
export default class Following extends ImmutablePureComponent {
|
class Following extends ImmutablePureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
params: PropTypes.object.isRequired,
|
params: PropTypes.object.isRequired,
|
||||||
|
|
|
@ -53,9 +53,9 @@ const badgeDisplay = (number, limit) => {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@connect(mapStateToProps, mapDispatchToProps)
|
export default @connect(mapStateToProps, mapDispatchToProps)
|
||||||
@injectIntl
|
@injectIntl
|
||||||
export default class GettingStarted extends ImmutablePureComponent {
|
class GettingStarted extends ImmutablePureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
intl: PropTypes.object.isRequired,
|
intl: PropTypes.object.isRequired,
|
||||||
|
|
|
@ -13,8 +13,8 @@ const mapStateToProps = (state, props) => ({
|
||||||
hasUnread: state.getIn(['timelines', `hashtag:${props.params.id}`, 'unread']) > 0,
|
hasUnread: state.getIn(['timelines', `hashtag:${props.params.id}`, 'unread']) > 0,
|
||||||
});
|
});
|
||||||
|
|
||||||
@connect(mapStateToProps)
|
export default @connect(mapStateToProps)
|
||||||
export default class HashtagTimeline extends React.PureComponent {
|
class HashtagTimeline extends React.PureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
params: PropTypes.object.isRequired,
|
params: PropTypes.object.isRequired,
|
||||||
|
|
|
@ -4,8 +4,8 @@ import ImmutablePropTypes from 'react-immutable-proptypes';
|
||||||
import { injectIntl, FormattedMessage } from 'react-intl';
|
import { injectIntl, FormattedMessage } from 'react-intl';
|
||||||
import SettingToggle from '../../notifications/components/setting_toggle';
|
import SettingToggle from '../../notifications/components/setting_toggle';
|
||||||
|
|
||||||
@injectIntl
|
export default @injectIntl
|
||||||
export default class ColumnSettings extends React.PureComponent {
|
class ColumnSettings extends React.PureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
settings: ImmutablePropTypes.map.isRequired,
|
settings: ImmutablePropTypes.map.isRequired,
|
||||||
|
|
|
@ -19,9 +19,9 @@ const mapStateToProps = state => ({
|
||||||
isPartial: state.getIn(['timelines', 'home', 'items', 0], null) === null,
|
isPartial: state.getIn(['timelines', 'home', 'items', 0], null) === null,
|
||||||
});
|
});
|
||||||
|
|
||||||
@connect(mapStateToProps)
|
export default @connect(mapStateToProps)
|
||||||
@injectIntl
|
@injectIntl
|
||||||
export default class HomeTimeline extends React.PureComponent {
|
class HomeTimeline extends React.PureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
dispatch: PropTypes.func.isRequired,
|
dispatch: PropTypes.func.isRequired,
|
||||||
|
|
|
@ -9,8 +9,8 @@ const messages = defineMessages({
|
||||||
heading: { id: 'keyboard_shortcuts.heading', defaultMessage: 'Keyboard Shortcuts' },
|
heading: { id: 'keyboard_shortcuts.heading', defaultMessage: 'Keyboard Shortcuts' },
|
||||||
});
|
});
|
||||||
|
|
||||||
@injectIntl
|
export default @injectIntl
|
||||||
export default class KeyboardShortcuts extends ImmutablePureComponent {
|
class KeyboardShortcuts extends ImmutablePureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
intl: PropTypes.object.isRequired,
|
intl: PropTypes.object.isRequired,
|
||||||
|
|
|
@ -31,9 +31,9 @@ const mapDispatchToProps = (dispatch, { accountId }) => ({
|
||||||
onAdd: () => dispatch(addToListEditor(accountId)),
|
onAdd: () => dispatch(addToListEditor(accountId)),
|
||||||
});
|
});
|
||||||
|
|
||||||
@connect(makeMapStateToProps, mapDispatchToProps)
|
export default @connect(makeMapStateToProps, mapDispatchToProps)
|
||||||
@injectIntl
|
@injectIntl
|
||||||
export default class Account extends ImmutablePureComponent {
|
class Account extends ImmutablePureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
account: ImmutablePropTypes.map.isRequired,
|
account: ImmutablePropTypes.map.isRequired,
|
||||||
|
|
|
@ -19,9 +19,9 @@ const mapDispatchToProps = dispatch => ({
|
||||||
onChange: value => dispatch(changeListSuggestions(value)),
|
onChange: value => dispatch(changeListSuggestions(value)),
|
||||||
});
|
});
|
||||||
|
|
||||||
@connect(mapStateToProps, mapDispatchToProps)
|
export default @connect(mapStateToProps, mapDispatchToProps)
|
||||||
@injectIntl
|
@injectIntl
|
||||||
export default class Search extends React.PureComponent {
|
class Search extends React.PureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
intl: PropTypes.object.isRequired,
|
intl: PropTypes.object.isRequired,
|
||||||
|
|
|
@ -22,9 +22,9 @@ const mapDispatchToProps = dispatch => ({
|
||||||
onReset: () => dispatch(resetListEditor()),
|
onReset: () => dispatch(resetListEditor()),
|
||||||
});
|
});
|
||||||
|
|
||||||
@connect(mapStateToProps, mapDispatchToProps)
|
export default @connect(mapStateToProps, mapDispatchToProps)
|
||||||
@injectIntl
|
@injectIntl
|
||||||
export default class ListEditor extends ImmutablePureComponent {
|
class ListEditor extends ImmutablePureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
listId: PropTypes.string.isRequired,
|
listId: PropTypes.string.isRequired,
|
||||||
|
|
|
@ -25,9 +25,9 @@ const mapStateToProps = (state, props) => ({
|
||||||
hasUnread: state.getIn(['timelines', `list:${props.params.id}`, 'unread']) > 0,
|
hasUnread: state.getIn(['timelines', `list:${props.params.id}`, 'unread']) > 0,
|
||||||
});
|
});
|
||||||
|
|
||||||
@connect(mapStateToProps)
|
export default @connect(mapStateToProps)
|
||||||
@injectIntl
|
@injectIntl
|
||||||
export default class ListTimeline extends React.PureComponent {
|
class ListTimeline extends React.PureComponent {
|
||||||
|
|
||||||
static contextTypes = {
|
static contextTypes = {
|
||||||
router: PropTypes.object,
|
router: PropTypes.object,
|
||||||
|
|
|
@ -20,9 +20,9 @@ const mapDispatchToProps = dispatch => ({
|
||||||
onSubmit: () => dispatch(submitListEditor(true)),
|
onSubmit: () => dispatch(submitListEditor(true)),
|
||||||
});
|
});
|
||||||
|
|
||||||
@connect(mapStateToProps, mapDispatchToProps)
|
export default @connect(mapStateToProps, mapDispatchToProps)
|
||||||
@injectIntl
|
@injectIntl
|
||||||
export default class NewListForm extends React.PureComponent {
|
class NewListForm extends React.PureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
value: PropTypes.string.isRequired,
|
value: PropTypes.string.isRequired,
|
||||||
|
|
|
@ -31,9 +31,9 @@ const mapStateToProps = state => ({
|
||||||
lists: getOrderedLists(state),
|
lists: getOrderedLists(state),
|
||||||
});
|
});
|
||||||
|
|
||||||
@connect(mapStateToProps)
|
export default @connect(mapStateToProps)
|
||||||
@injectIntl
|
@injectIntl
|
||||||
export default class Lists extends ImmutablePureComponent {
|
class Lists extends ImmutablePureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
params: PropTypes.object.isRequired,
|
params: PropTypes.object.isRequired,
|
||||||
|
|
|
@ -20,9 +20,9 @@ const mapStateToProps = state => ({
|
||||||
accountIds: state.getIn(['user_lists', 'mutes', 'items']),
|
accountIds: state.getIn(['user_lists', 'mutes', 'items']),
|
||||||
});
|
});
|
||||||
|
|
||||||
@connect(mapStateToProps)
|
export default @connect(mapStateToProps)
|
||||||
@injectIntl
|
@injectIntl
|
||||||
export default class Mutes extends ImmutablePureComponent {
|
class Mutes extends ImmutablePureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
params: PropTypes.object.isRequired,
|
params: PropTypes.object.isRequired,
|
||||||
|
|
|
@ -16,8 +16,8 @@ const notificationForScreenReader = (intl, message, timestamp) => {
|
||||||
return output.join(', ');
|
return output.join(', ');
|
||||||
};
|
};
|
||||||
|
|
||||||
@injectIntl
|
export default @injectIntl
|
||||||
export default class Notification extends ImmutablePureComponent {
|
class Notification extends ImmutablePureComponent {
|
||||||
|
|
||||||
static contextTypes = {
|
static contextTypes = {
|
||||||
router: PropTypes.object,
|
router: PropTypes.object,
|
||||||
|
|
|
@ -31,9 +31,9 @@ const mapStateToProps = state => ({
|
||||||
hasMore: state.getIn(['notifications', 'hasMore']),
|
hasMore: state.getIn(['notifications', 'hasMore']),
|
||||||
});
|
});
|
||||||
|
|
||||||
@connect(mapStateToProps)
|
export default @connect(mapStateToProps)
|
||||||
@injectIntl
|
@injectIntl
|
||||||
export default class Notifications extends React.PureComponent {
|
class Notifications extends React.PureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
columnId: PropTypes.string,
|
columnId: PropTypes.string,
|
||||||
|
|
|
@ -18,9 +18,9 @@ const mapStateToProps = state => ({
|
||||||
hasMore: !!state.getIn(['status_lists', 'pins', 'next']),
|
hasMore: !!state.getIn(['status_lists', 'pins', 'next']),
|
||||||
});
|
});
|
||||||
|
|
||||||
@connect(mapStateToProps)
|
export default @connect(mapStateToProps)
|
||||||
@injectIntl
|
@injectIntl
|
||||||
export default class PinnedStatuses extends ImmutablePureComponent {
|
class PinnedStatuses extends ImmutablePureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
dispatch: PropTypes.func.isRequired,
|
dispatch: PropTypes.func.isRequired,
|
||||||
|
|
|
@ -25,9 +25,9 @@ const mapStateToProps = (state, { onlyMedia, columnId }) => {
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
@connect(mapStateToProps)
|
export default @connect(mapStateToProps)
|
||||||
@injectIntl
|
@injectIntl
|
||||||
export default class PublicTimeline extends React.PureComponent {
|
class PublicTimeline extends React.PureComponent {
|
||||||
|
|
||||||
static contextTypes = {
|
static contextTypes = {
|
||||||
router: PropTypes.object,
|
router: PropTypes.object,
|
||||||
|
|
|
@ -15,8 +15,8 @@ const mapStateToProps = (state, props) => ({
|
||||||
accountIds: state.getIn(['user_lists', 'reblogged_by', props.params.statusId]),
|
accountIds: state.getIn(['user_lists', 'reblogged_by', props.params.statusId]),
|
||||||
});
|
});
|
||||||
|
|
||||||
@connect(mapStateToProps)
|
export default @connect(mapStateToProps)
|
||||||
export default class Reblogs extends ImmutablePureComponent {
|
class Reblogs extends ImmutablePureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
params: PropTypes.object.isRequired,
|
params: PropTypes.object.isRequired,
|
||||||
|
|
|
@ -12,9 +12,9 @@ const messages = defineMessages({
|
||||||
title: { id: 'standalone.public_title', defaultMessage: 'A look inside...' },
|
title: { id: 'standalone.public_title', defaultMessage: 'A look inside...' },
|
||||||
});
|
});
|
||||||
|
|
||||||
@connect()
|
export default @connect()
|
||||||
@injectIntl
|
@injectIntl
|
||||||
export default class CommunityTimeline extends React.PureComponent {
|
class CommunityTimeline extends React.PureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
dispatch: PropTypes.func.isRequired,
|
dispatch: PropTypes.func.isRequired,
|
||||||
|
|
|
@ -7,8 +7,8 @@ import Column from '../../../components/column';
|
||||||
import ColumnHeader from '../../../components/column_header';
|
import ColumnHeader from '../../../components/column_header';
|
||||||
import { connectHashtagStream } from '../../../actions/streaming';
|
import { connectHashtagStream } from '../../../actions/streaming';
|
||||||
|
|
||||||
@connect()
|
export default @connect()
|
||||||
export default class HashtagTimeline extends React.PureComponent {
|
class HashtagTimeline extends React.PureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
dispatch: PropTypes.func.isRequired,
|
dispatch: PropTypes.func.isRequired,
|
||||||
|
|
|
@ -12,9 +12,9 @@ const messages = defineMessages({
|
||||||
title: { id: 'standalone.public_title', defaultMessage: 'A look inside...' },
|
title: { id: 'standalone.public_title', defaultMessage: 'A look inside...' },
|
||||||
});
|
});
|
||||||
|
|
||||||
@connect()
|
export default @connect()
|
||||||
@injectIntl
|
@injectIntl
|
||||||
export default class PublicTimeline extends React.PureComponent {
|
class PublicTimeline extends React.PureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
dispatch: PropTypes.func.isRequired,
|
dispatch: PropTypes.func.isRequired,
|
||||||
|
|
|
@ -28,8 +28,8 @@ const messages = defineMessages({
|
||||||
embed: { id: 'status.embed', defaultMessage: 'Embed' },
|
embed: { id: 'status.embed', defaultMessage: 'Embed' },
|
||||||
});
|
});
|
||||||
|
|
||||||
@injectIntl
|
export default @injectIntl
|
||||||
export default class ActionBar extends React.PureComponent {
|
class ActionBar extends React.PureComponent {
|
||||||
|
|
||||||
static contextTypes = {
|
static contextTypes = {
|
||||||
router: PropTypes.object,
|
router: PropTypes.object,
|
||||||
|
|
|
@ -104,9 +104,9 @@ const makeMapStateToProps = () => {
|
||||||
return mapStateToProps;
|
return mapStateToProps;
|
||||||
};
|
};
|
||||||
|
|
||||||
@injectIntl
|
export default @injectIntl
|
||||||
@connect(makeMapStateToProps)
|
@connect(makeMapStateToProps)
|
||||||
export default class Status extends ImmutablePureComponent {
|
class Status extends ImmutablePureComponent {
|
||||||
|
|
||||||
static contextTypes = {
|
static contextTypes = {
|
||||||
router: PropTypes.object,
|
router: PropTypes.object,
|
||||||
|
|
|
@ -13,8 +13,8 @@ const messages = defineMessages({
|
||||||
reblog: { id: 'status.reblog', defaultMessage: 'Boost' },
|
reblog: { id: 'status.reblog', defaultMessage: 'Boost' },
|
||||||
});
|
});
|
||||||
|
|
||||||
@injectIntl
|
export default @injectIntl
|
||||||
export default class BoostModal extends ImmutablePureComponent {
|
class BoostModal extends ImmutablePureComponent {
|
||||||
|
|
||||||
static contextTypes = {
|
static contextTypes = {
|
||||||
router: PropTypes.object,
|
router: PropTypes.object,
|
||||||
|
|
|
@ -35,8 +35,8 @@ const messages = defineMessages({
|
||||||
|
|
||||||
const shouldHideFAB = path => path.match(/^\/statuses\//);
|
const shouldHideFAB = path => path.match(/^\/statuses\//);
|
||||||
|
|
||||||
@component => injectIntl(component, { withRef: true })
|
export default @(component => injectIntl(component, { withRef: true }))
|
||||||
export default class ColumnsArea extends ImmutablePureComponent {
|
class ColumnsArea extends ImmutablePureComponent {
|
||||||
|
|
||||||
static contextTypes = {
|
static contextTypes = {
|
||||||
router: PropTypes.object.isRequired,
|
router: PropTypes.object.isRequired,
|
||||||
|
|
|
@ -3,8 +3,8 @@ import PropTypes from 'prop-types';
|
||||||
import { injectIntl, FormattedMessage } from 'react-intl';
|
import { injectIntl, FormattedMessage } from 'react-intl';
|
||||||
import Button from '../../../components/button';
|
import Button from '../../../components/button';
|
||||||
|
|
||||||
@injectIntl
|
export default @injectIntl
|
||||||
export default class ConfirmationModal extends React.PureComponent {
|
class ConfirmationModal extends React.PureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
message: PropTypes.node.isRequired,
|
message: PropTypes.node.isRequired,
|
||||||
|
|
|
@ -4,8 +4,8 @@ import ImmutablePureComponent from 'react-immutable-pure-component';
|
||||||
import { FormattedMessage, injectIntl } from 'react-intl';
|
import { FormattedMessage, injectIntl } from 'react-intl';
|
||||||
import api from '../../../api';
|
import api from '../../../api';
|
||||||
|
|
||||||
@injectIntl
|
export default @injectIntl
|
||||||
export default class EmbedModal extends ImmutablePureComponent {
|
class EmbedModal extends ImmutablePureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
url: PropTypes.string.isRequired,
|
url: PropTypes.string.isRequired,
|
||||||
|
|
|
@ -19,8 +19,8 @@ const mapDispatchToProps = (dispatch, { id }) => ({
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
@connect(mapStateToProps, mapDispatchToProps)
|
export default @connect(mapStateToProps, mapDispatchToProps)
|
||||||
export default class FocalPointModal extends ImmutablePureComponent {
|
class FocalPointModal extends ImmutablePureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
media: ImmutablePropTypes.map.isRequired,
|
media: ImmutablePropTypes.map.isRequired,
|
||||||
|
|
|
@ -18,8 +18,8 @@ const messages = defineMessages({
|
||||||
|
|
||||||
export const previewState = 'previewMediaModal';
|
export const previewState = 'previewMediaModal';
|
||||||
|
|
||||||
@injectIntl
|
export default @injectIntl
|
||||||
export default class MediaModal extends ImmutablePureComponent {
|
class MediaModal extends ImmutablePureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
media: ImmutablePropTypes.list.isRequired,
|
media: ImmutablePropTypes.list.isRequired,
|
||||||
|
|
|
@ -33,9 +33,9 @@ const mapDispatchToProps = dispatch => {
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
@connect(mapStateToProps, mapDispatchToProps)
|
export default @connect(mapStateToProps, mapDispatchToProps)
|
||||||
@injectIntl
|
@injectIntl
|
||||||
export default class MuteModal extends React.PureComponent {
|
class MuteModal extends React.PureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
isSubmitting: PropTypes.bool.isRequired,
|
isSubmitting: PropTypes.bool.isRequired,
|
||||||
|
|
|
@ -177,9 +177,9 @@ const mapStateToProps = state => ({
|
||||||
domain: state.getIn(['meta', 'domain']),
|
domain: state.getIn(['meta', 'domain']),
|
||||||
});
|
});
|
||||||
|
|
||||||
@connect(mapStateToProps)
|
export default @connect(mapStateToProps)
|
||||||
@injectIntl
|
@injectIntl
|
||||||
export default class OnboardingModal extends React.PureComponent {
|
class OnboardingModal extends React.PureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
onClose: PropTypes.func.isRequired,
|
onClose: PropTypes.func.isRequired,
|
||||||
|
|
|
@ -37,9 +37,9 @@ const makeMapStateToProps = () => {
|
||||||
return mapStateToProps;
|
return mapStateToProps;
|
||||||
};
|
};
|
||||||
|
|
||||||
@connect(makeMapStateToProps)
|
export default @connect(makeMapStateToProps)
|
||||||
@injectIntl
|
@injectIntl
|
||||||
export default class ReportModal extends ImmutablePureComponent {
|
class ReportModal extends ImmutablePureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
isSubmitting: PropTypes.bool,
|
isSubmitting: PropTypes.bool,
|
||||||
|
|
|
@ -24,9 +24,9 @@ export function getLink (index) {
|
||||||
return links[index].props.to;
|
return links[index].props.to;
|
||||||
}
|
}
|
||||||
|
|
||||||
@injectIntl
|
export default @injectIntl
|
||||||
@withRouter
|
@withRouter
|
||||||
export default class TabsBar extends React.PureComponent {
|
class TabsBar extends React.PureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
intl: PropTypes.object.isRequired,
|
intl: PropTypes.object.isRequired,
|
||||||
|
|
|
@ -187,10 +187,10 @@ class SwitchingColumnsArea extends React.PureComponent {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@connect(mapStateToProps)
|
export default @connect(mapStateToProps)
|
||||||
@injectIntl
|
@injectIntl
|
||||||
@withRouter
|
@withRouter
|
||||||
export default class UI extends React.PureComponent {
|
class UI extends React.PureComponent {
|
||||||
|
|
||||||
static contextTypes = {
|
static contextTypes = {
|
||||||
router: PropTypes.object.isRequired,
|
router: PropTypes.object.isRequired,
|
||||||
|
|
|
@ -84,8 +84,8 @@ export const getPointerPosition = (el, event) => {
|
||||||
return position;
|
return position;
|
||||||
};
|
};
|
||||||
|
|
||||||
@injectIntl
|
export default @injectIntl
|
||||||
export default class Video extends React.PureComponent {
|
class Video extends React.PureComponent {
|
||||||
|
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
preview: PropTypes.string,
|
preview: PropTypes.string,
|
||||||
|
|
65
babel.config.js
Normal file
65
babel.config.js
Normal file
|
@ -0,0 +1,65 @@
|
||||||
|
module.exports = (api) => {
|
||||||
|
const env = api.env();
|
||||||
|
|
||||||
|
const envOptions = {
|
||||||
|
debug: false,
|
||||||
|
loose: true,
|
||||||
|
modules: false,
|
||||||
|
};
|
||||||
|
|
||||||
|
const config = {
|
||||||
|
presets: [
|
||||||
|
'@babel/react',
|
||||||
|
['@babel/env', envOptions],
|
||||||
|
],
|
||||||
|
plugins: [
|
||||||
|
'@babel/syntax-dynamic-import',
|
||||||
|
['@babel/proposal-object-rest-spread', { useBuiltIns: true }],
|
||||||
|
['@babel/proposal-decorators', { legacy: true }],
|
||||||
|
'@babel/proposal-class-properties',
|
||||||
|
['react-intl', { messagesDir: './build/messages' }],
|
||||||
|
'preval',
|
||||||
|
],
|
||||||
|
};
|
||||||
|
|
||||||
|
switch (env) {
|
||||||
|
case 'production':
|
||||||
|
envOptions.debug = false;
|
||||||
|
config.plugins.push(...[
|
||||||
|
'lodash',
|
||||||
|
[
|
||||||
|
'transform-react-remove-prop-types',
|
||||||
|
{
|
||||||
|
mode: 'remove',
|
||||||
|
removeImport: true,
|
||||||
|
additionalLibraries: [
|
||||||
|
'react-immutable-proptypes',
|
||||||
|
],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
'@babel/transform-react-inline-elements',
|
||||||
|
[
|
||||||
|
'@babel/transform-runtime',
|
||||||
|
{
|
||||||
|
helpers: true,
|
||||||
|
regenerator: false,
|
||||||
|
useESModules: true,
|
||||||
|
},
|
||||||
|
],
|
||||||
|
]);
|
||||||
|
break;
|
||||||
|
case 'development':
|
||||||
|
envOptions.debug = true;
|
||||||
|
config.plugins.push(...[
|
||||||
|
'@babel/transform-react-jsx-source',
|
||||||
|
'@babel/transform-react-jsx-self',
|
||||||
|
]);
|
||||||
|
break;
|
||||||
|
case 'test':
|
||||||
|
envOptions.modules = 'commonjs';
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
return config;
|
||||||
|
};
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
#!/usr/bin/env ruby
|
#!/usr/bin/env ruby
|
||||||
|
|
||||||
ENV["RAILS_ENV"] ||= ENV["RACK_ENV"] || "development"
|
ENV["RAILS_ENV"] ||= ENV["RACK_ENV"] || "development"
|
||||||
ENV["NODE_ENV"] ||= ENV["NODE_ENV"] || "development"
|
ENV["NODE_ENV"] ||= "development"
|
||||||
|
|
||||||
require "pathname"
|
require "pathname"
|
||||||
ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
|
ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
#!/usr/bin/env ruby
|
#!/usr/bin/env ruby
|
||||||
|
|
||||||
ENV["RAILS_ENV"] ||= ENV["RACK_ENV"] || "development"
|
ENV["RAILS_ENV"] ||= ENV["RACK_ENV"] || "development"
|
||||||
ENV["NODE_ENV"] ||= ENV["NODE_ENV"] || "development"
|
ENV["NODE_ENV"] ||= "development"
|
||||||
|
|
||||||
require "pathname"
|
require "pathname"
|
||||||
ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
|
ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
|
||||||
|
|
|
@ -7,7 +7,6 @@ module.exports = {
|
||||||
exclude: /node_modules/,
|
exclude: /node_modules/,
|
||||||
loader: 'babel-loader',
|
loader: 'babel-loader',
|
||||||
options: {
|
options: {
|
||||||
forceEnv: env,
|
|
||||||
cacheDirectory: env === 'development' ? false : resolve(__dirname, '..', '..', '..', 'tmp', 'cache', 'babel-loader'),
|
cacheDirectory: env === 'development' ? false : resolve(__dirname, '..', '..', '..', 'tmp', 'cache', 'babel-loader'),
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
|
@ -69,7 +69,6 @@ module.exports = merge(sharedConfig, {
|
||||||
|
|
||||||
plugins: [
|
plugins: [
|
||||||
new CompressionPlugin({
|
new CompressionPlugin({
|
||||||
asset: '[path].gz[query]',
|
|
||||||
algorithm: compressionAlgorithm,
|
algorithm: compressionAlgorithm,
|
||||||
test: /\.(js|css|html|json|ico|svg|eot|otf|ttf)$/,
|
test: /\.(js|css|html|json|ico|svg|eot|otf|ttf)$/,
|
||||||
}),
|
}),
|
||||||
|
|
80
package.json
80
package.json
|
@ -6,8 +6,8 @@
|
||||||
},
|
},
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"postversion": "git push --tags",
|
"postversion": "git push --tags",
|
||||||
"build:development": "cross-env RAILS_ENV=development ./bin/webpack",
|
"build:development": "cross-env RAILS_ENV=development NODE_ENV=development ./bin/webpack",
|
||||||
"build:production": "cross-env RAILS_ENV=production ./bin/webpack",
|
"build:production": "cross-env RAILS_ENV=production NODE_ENV=production ./bin/webpack",
|
||||||
"manage:translations": "node ./config/webpack/translationRunner.js",
|
"manage:translations": "node ./config/webpack/translationRunner.js",
|
||||||
"start": "node ./streaming/index.js",
|
"start": "node ./streaming/index.js",
|
||||||
"test": "npm-run-all test:lint test:jest",
|
"test": "npm-run-all test:lint test:jest",
|
||||||
|
@ -18,32 +18,38 @@
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/tootsuite/mastodon.git"
|
"url": "https://github.com/tootsuite/mastodon.git"
|
||||||
},
|
},
|
||||||
|
"browserslist": [
|
||||||
|
"last 2 versions",
|
||||||
|
"IE >= 11",
|
||||||
|
"iOS >= 9"
|
||||||
|
],
|
||||||
"private": true,
|
"private": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
"@babel/core": "^7.0.1",
|
||||||
|
"@babel/plugin-proposal-class-properties": "^7.0.0",
|
||||||
|
"@babel/plugin-proposal-decorators": "^7.0.0",
|
||||||
|
"@babel/plugin-proposal-object-rest-spread": "^7.0.0",
|
||||||
|
"@babel/plugin-syntax-dynamic-import": "^7.0.0",
|
||||||
|
"@babel/plugin-transform-react-inline-elements": "^7.0.0",
|
||||||
|
"@babel/plugin-transform-react-jsx-self": "^7.0.0",
|
||||||
|
"@babel/plugin-transform-react-jsx-source": "^7.0.0",
|
||||||
|
"@babel/plugin-transform-runtime": "^7.0.0",
|
||||||
|
"@babel/preset-env": "^7.0.0",
|
||||||
|
"@babel/preset-react": "^7.0.0",
|
||||||
|
"@babel/runtime": "^7.0.0",
|
||||||
"array-includes": "^3.0.3",
|
"array-includes": "^3.0.3",
|
||||||
"autoprefixer": "^8.6.5",
|
"autoprefixer": "^8.6.5",
|
||||||
"axios": "~0.16.2",
|
"axios": "~0.16.2",
|
||||||
"babel-core": "^6.26.3",
|
"babel-core": "^7.0.0-bridge.0",
|
||||||
"babel-loader": "^7.1.5",
|
"babel-loader": "^8.0.2",
|
||||||
"babel-plugin-lodash": "^3.3.4",
|
"babel-plugin-lodash": "^3.3.4",
|
||||||
"babel-plugin-preval": "^1.6.1",
|
"babel-plugin-preval": "^3.0.1",
|
||||||
"babel-plugin-react-intl": "^2.4.0",
|
"babel-plugin-react-intl": "^3.0.0",
|
||||||
"babel-plugin-syntax-dynamic-import": "^6.18.0",
|
"babel-plugin-transform-react-remove-prop-types": "^0.4.15",
|
||||||
"babel-plugin-transform-class-properties": "^6.24.1",
|
|
||||||
"babel-plugin-transform-decorators-legacy": "^1.3.5",
|
|
||||||
"babel-plugin-transform-es2015-modules-commonjs": "^6.26.2",
|
|
||||||
"babel-plugin-transform-object-rest-spread": "^6.23.0",
|
|
||||||
"babel-plugin-transform-react-inline-elements": "^6.22.0",
|
|
||||||
"babel-plugin-transform-react-jsx-self": "^6.22.0",
|
|
||||||
"babel-plugin-transform-react-jsx-source": "^6.22.0",
|
|
||||||
"babel-plugin-transform-react-remove-prop-types": "^0.4.13",
|
|
||||||
"babel-plugin-transform-runtime": "^6.23.0",
|
|
||||||
"babel-preset-env": "^1.7.0",
|
|
||||||
"babel-preset-react": "^6.24.1",
|
|
||||||
"classnames": "^2.2.5",
|
"classnames": "^2.2.5",
|
||||||
"compression-webpack-plugin": "^1.1.11",
|
"compression-webpack-plugin": "^2.0.0",
|
||||||
"cross-env": "^5.1.4",
|
"cross-env": "^5.1.4",
|
||||||
"css-loader": "^0.28.11",
|
"css-loader": "^1.0.0",
|
||||||
"detect-passive-events": "^1.0.2",
|
"detect-passive-events": "^1.0.2",
|
||||||
"dotenv": "^4.0.0",
|
"dotenv": "^4.0.0",
|
||||||
"emoji-mart": "Gargron/emoji-mart#build",
|
"emoji-mart": "Gargron/emoji-mart#build",
|
||||||
|
@ -51,9 +57,10 @@
|
||||||
"escape-html": "^1.0.3",
|
"escape-html": "^1.0.3",
|
||||||
"exif-js": "^2.3.0",
|
"exif-js": "^2.3.0",
|
||||||
"express": "^4.16.2",
|
"express": "^4.16.2",
|
||||||
"file-loader": "^1.1.11",
|
"file-loader": "^2.0.0",
|
||||||
"font-awesome": "^4.7.0",
|
"font-awesome": "^4.7.0",
|
||||||
"glob": "^7.1.1",
|
"glob": "^7.1.1",
|
||||||
|
"history": "^4.7.2",
|
||||||
"http-link-header": "^0.8.0",
|
"http-link-header": "^0.8.0",
|
||||||
"immutable": "^3.8.2",
|
"immutable": "^3.8.2",
|
||||||
"imports-loader": "^0.8.0",
|
"imports-loader": "^0.8.0",
|
||||||
|
@ -66,7 +73,7 @@
|
||||||
"lodash": "^4.17.5",
|
"lodash": "^4.17.5",
|
||||||
"mark-loader": "^0.1.6",
|
"mark-loader": "^0.1.6",
|
||||||
"marky": "^1.2.0",
|
"marky": "^1.2.0",
|
||||||
"mini-css-extract-plugin": "^0.4.1",
|
"mini-css-extract-plugin": "^0.4.2",
|
||||||
"mkdirp": "^0.5.1",
|
"mkdirp": "^0.5.1",
|
||||||
"node-sass": "^4.9.2",
|
"node-sass": "^4.9.2",
|
||||||
"npm-run-all": "^4.1.2",
|
"npm-run-all": "^4.1.2",
|
||||||
|
@ -77,28 +84,28 @@
|
||||||
"offline-plugin": "^5.0.5",
|
"offline-plugin": "^5.0.5",
|
||||||
"path-complete-extname": "^1.0.0",
|
"path-complete-extname": "^1.0.0",
|
||||||
"pg": "^6.4.0",
|
"pg": "^6.4.0",
|
||||||
"postcss-loader": "^2.1.6",
|
"postcss-loader": "^3.0.0",
|
||||||
"postcss-object-fit-images": "^1.1.2",
|
"postcss-object-fit-images": "^1.1.2",
|
||||||
"postcss-smart-import": "^0.7.6",
|
"postcss-smart-import": "^0.7.6",
|
||||||
"precss": "^3.1.2",
|
"precss": "^3.1.2",
|
||||||
"prop-types": "^15.5.10",
|
"prop-types": "^15.5.10",
|
||||||
"punycode": "^2.1.0",
|
"punycode": "^2.1.0",
|
||||||
"rails-ujs": "^5.2.0",
|
"rails-ujs": "^5.2.0",
|
||||||
"react": "^16.3.0",
|
"react": "^16.5.0",
|
||||||
"react-dom": "^16.3.0",
|
"react-dom": "^16.5.0",
|
||||||
"react-hotkeys": "^0.10.0",
|
"react-hotkeys": "^0.10.0",
|
||||||
"react-immutable-proptypes": "^2.1.0",
|
"react-immutable-proptypes": "^2.1.0",
|
||||||
"react-immutable-pure-component": "^1.1.1",
|
"react-immutable-pure-component": "^1.1.1",
|
||||||
"react-intl": "^2.4.0",
|
"react-intl": "^2.4.0",
|
||||||
"react-motion": "^0.5.2",
|
"react-motion": "^0.5.2",
|
||||||
"react-notification": "^6.8.2",
|
"react-notification": "^6.8.4",
|
||||||
"react-overlays": "^0.8.3",
|
"react-overlays": "^0.8.3",
|
||||||
"react-redux": "^5.0.4",
|
"react-redux": "^5.0.4",
|
||||||
"react-redux-loading-bar": "^2.9.3",
|
"react-redux-loading-bar": "^2.9.3",
|
||||||
"react-router-dom": "^4.1.1",
|
"react-router-dom": "^4.1.1",
|
||||||
"react-router-scroll-4": "^1.0.0-beta.1",
|
"react-router-scroll-4": "^1.0.0-beta.1",
|
||||||
"react-sparklines": "^1.7.0",
|
"react-sparklines": "^1.7.0",
|
||||||
"react-swipeable-views": "0.12.13",
|
"react-swipeable-views": "^0.12.17",
|
||||||
"react-textarea-autosize": "^5.2.1",
|
"react-textarea-autosize": "^5.2.1",
|
||||||
"react-toggle": "^4.0.1",
|
"react-toggle": "^4.0.1",
|
||||||
"redis": "^2.7.1",
|
"redis": "^2.7.1",
|
||||||
|
@ -111,34 +118,35 @@
|
||||||
"rimraf": "^2.6.1",
|
"rimraf": "^2.6.1",
|
||||||
"sass-loader": "^7.0.3",
|
"sass-loader": "^7.0.3",
|
||||||
"stringz": "^0.3.0",
|
"stringz": "^0.3.0",
|
||||||
"style-loader": "^0.21.0",
|
"style-loader": "^0.23.0",
|
||||||
"substring-trie": "^1.0.2",
|
"substring-trie": "^1.0.2",
|
||||||
"throng": "^4.0.0",
|
"throng": "^4.0.0",
|
||||||
"tiny-queue": "^0.2.1",
|
"tiny-queue": "^0.2.1",
|
||||||
"uglifyjs-webpack-plugin": "^1.2.7",
|
"uglifyjs-webpack-plugin": "^1.2.7",
|
||||||
"uuid": "^3.1.0",
|
"uuid": "^3.1.0",
|
||||||
"uws": "10.148.0",
|
"uws": "10.148.0",
|
||||||
"webpack": "^4.16.0",
|
"webpack": "^4.18.0",
|
||||||
"webpack-bundle-analyzer": "^2.13.1",
|
"webpack-bundle-analyzer": "^2.13.1",
|
||||||
"webpack-cli": "^3.0.8",
|
"webpack-cli": "^3.0.8",
|
||||||
"webpack-manifest-plugin": "^2.0.3",
|
"webpack-manifest-plugin": "^2.0.4",
|
||||||
"webpack-merge": "^4.1.3",
|
"webpack-merge": "^4.1.3",
|
||||||
"websocket.js": "^0.1.12"
|
"websocket.js": "^0.1.12"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"babel-eslint": "^8.2.6",
|
"babel-eslint": "^9.0.0",
|
||||||
"enzyme": "^3.2.0",
|
"babel-jest": "^23.6.0",
|
||||||
"enzyme-adapter-react-16": "^1.1.0",
|
"enzyme": "^3.6.0",
|
||||||
|
"enzyme-adapter-react-16": "^1.5.0",
|
||||||
"eslint": "^4.19.1",
|
"eslint": "^4.19.1",
|
||||||
"eslint-plugin-import": "^2.8.0",
|
"eslint-plugin-import": "^2.8.0",
|
||||||
"eslint-plugin-jsx-a11y": "^6.0.3",
|
"eslint-plugin-jsx-a11y": "^6.0.3",
|
||||||
"eslint-plugin-promise": "^3.8.0",
|
"eslint-plugin-promise": "^3.8.0",
|
||||||
"eslint-plugin-react": "^7.8.2",
|
"eslint-plugin-react": "^7.8.2",
|
||||||
"jest": "^21.2.1",
|
"jest": "^23.6.0",
|
||||||
"raf": "^3.4.0",
|
"raf": "^3.4.0",
|
||||||
"react-intl-translations-manager": "^5.0.3",
|
"react-intl-translations-manager": "^5.0.3",
|
||||||
"react-test-renderer": "^16.2.0",
|
"react-test-renderer": "^16.5.0",
|
||||||
"webpack-dev-server": "^3.1.4",
|
"webpack-dev-server": "^3.1.8",
|
||||||
"yargs": "^8.0.2"
|
"yargs": "^8.0.2"
|
||||||
},
|
},
|
||||||
"optionalDependencies": {
|
"optionalDependencies": {
|
||||||
|
|
Loading…
Reference in a new issue