diff --git a/app/gabsocial/features/lists/components/new_list_form.js b/app/gabsocial/features/lists/components/new_list_form.js
index 4f6ee5f40..999ba29ff 100644
--- a/app/gabsocial/features/lists/components/new_list_form.js
+++ b/app/gabsocial/features/lists/components/new_list_form.js
@@ -50,7 +50,6 @@ class NewListForm extends React.PureComponent {
const { value, disabled, intl } = this.props;
const label = intl.formatMessage(messages.label);
- const title = intl.formatMessage(messages.title);
const create = intl.formatMessage(messages.create);
return (
diff --git a/app/gabsocial/features/pinned_statuses/index.js b/app/gabsocial/features/pinned_statuses/index.js
index 38a52b48b..8328ae616 100644
--- a/app/gabsocial/features/pinned_statuses/index.js
+++ b/app/gabsocial/features/pinned_statuses/index.js
@@ -35,7 +35,7 @@ class PinnedStatuses extends ImmutablePureComponent {
}
render () {
- const { intl, statusIds, hasMore, isMyAccount } = this.props;
+ const { statusIds, hasMore, isMyAccount } = this.props;
if (!isMyAccount) {
return (
diff --git a/app/gabsocial/features/public_timeline/index.js b/app/gabsocial/features/public_timeline/index.js
index bce8c958f..a611f2818 100644
--- a/app/gabsocial/features/public_timeline/index.js
+++ b/app/gabsocial/features/public_timeline/index.js
@@ -7,14 +7,8 @@ import Column from '../../components/column';
import ColumnSettingsContainer from './containers/column_settings_container';
import HomeColumnHeader from '../../components/home_column_header';
import ExplanationBox from '../ui/components/explanation_box';
-import {
- expandCommunityTimeline,
- expandPublicTimeline,
-} from '../../actions/timelines';
-import {
- connectCommunityStream,
- connectPublicStream,
-} from '../../actions/streaming';
+import { expandPublicTimeline } from '../../actions/timelines';
+import { connectPublicStream } from '../../actions/streaming';
import { Link } from 'react-router-dom';
const messages = defineMessages({
diff --git a/app/gabsocial/features/search/components/header.js b/app/gabsocial/features/search/components/header.js
index ebe2d743b..058aad92f 100644
--- a/app/gabsocial/features/search/components/header.js
+++ b/app/gabsocial/features/search/components/header.js
@@ -1,6 +1,5 @@
import React from 'react';
import { connect } from 'react-redux';
-import ImmutablePropTypes from 'react-immutable-proptypes';
import PropTypes from 'prop-types';
import ImmutablePureComponent from 'react-immutable-pure-component';
import { FormattedMessage } from 'react-intl';
diff --git a/app/gabsocial/features/status/components/detailed_status.js b/app/gabsocial/features/status/components/detailed_status.js
index 2e53abfcc..5582e07af 100644
--- a/app/gabsocial/features/status/components/detailed_status.js
+++ b/app/gabsocial/features/status/components/detailed_status.js
@@ -183,7 +183,7 @@ export default class DetailedStatus extends ImmutablePureComponent {
-
+
{status.get('group') && (
diff --git a/app/gabsocial/features/status/index.js b/app/gabsocial/features/status/index.js
index 1f3d1ad86..0f6d68d81 100644
--- a/app/gabsocial/features/status/index.js
+++ b/app/gabsocial/features/status/index.js
@@ -421,7 +421,6 @@ class Status extends ImmutablePureComponent {
render () {
let ancestors, descendants;
const { status, ancestorsIds, descendantsIds, intl, domain, me } = this.props;
- const { fullscreen } = this.state;
if (status === null) {
return (
diff --git a/app/gabsocial/features/ui/components/__tests__/column-test.js b/app/gabsocial/features/ui/components/__tests__/column-test.js
index 49efdfc38..5c371fde5 100644
--- a/app/gabsocial/features/ui/components/__tests__/column-test.js
+++ b/app/gabsocial/features/ui/components/__tests__/column-test.js
@@ -1,7 +1,7 @@
import React from 'react';
import { mount } from 'enzyme';
-// import Column from '../column';
-// import ColumnHeader from '../column_header';
+import Column from '../column';
+import ColumnHeader from '../column_header';
describe('
', () => {
describe('
click handler', () => {
diff --git a/app/gabsocial/features/ui/components/columns_area.js b/app/gabsocial/features/ui/components/columns_area.js
index ab619f9ac..2e1b53595 100644
--- a/app/gabsocial/features/ui/components/columns_area.js
+++ b/app/gabsocial/features/ui/components/columns_area.js
@@ -4,17 +4,6 @@ import { injectIntl } from 'react-intl';
import ImmutablePropTypes from 'react-immutable-proptypes';
import ImmutablePureComponent from 'react-immutable-pure-component';
-import ReactSwipeableViews from 'react-swipeable-views';
-import { links, getIndex, getLink } from './tabs_bar';
-import { Link } from 'react-router-dom';
-
-import BundleContainer from '../containers/bundle_container';
-import ColumnLoading from './column_loading';
-import DrawerLoading from './drawer_loading';
-import BundleColumnError from './bundle_column_error';
-import { Compose, Notifications, HomeTimeline, CommunityTimeline, HashtagTimeline, DirectTimeline, FavouritedStatuses, ListTimeline } from '../../ui/util/async-components';
-import Icon from 'gabsocial/components/icon';
-
export default @(component => injectIntl(component, { withRef: true }))
class ColumnsArea extends ImmutablePureComponent {
@@ -26,7 +15,7 @@ class ColumnsArea extends ImmutablePureComponent {
};
render () {
- const { columns, children, intl } = this.props;
+ const { children } = this.props;
const layout = this.props.layout || { LEFT:null, RIGHT:null };
return (
diff --git a/app/gabsocial/features/ui/components/explanation_box.js b/app/gabsocial/features/ui/components/explanation_box.js
index e611c7432..c7760bcb5 100644
--- a/app/gabsocial/features/ui/components/explanation_box.js
+++ b/app/gabsocial/features/ui/components/explanation_box.js
@@ -1,7 +1,4 @@
import React from 'react';
-import PropTypes from 'prop-types';
-import { FormattedMessage } from 'react-intl';
-import { connect } from 'react-redux';
export default
class ExplanationBox extends React.PureComponent {
diff --git a/app/gabsocial/features/ui/components/funding_panel.js b/app/gabsocial/features/ui/components/funding_panel.js
index 14ea8020d..e62ed3677 100644
--- a/app/gabsocial/features/ui/components/funding_panel.js
+++ b/app/gabsocial/features/ui/components/funding_panel.js
@@ -1,8 +1,6 @@
import React from 'react';
-import PropTypes from 'prop-types';
import { connect } from 'react-redux';
-import { injectIntl, FormattedMessage } from 'react-intl';
-import ImmutablePropTypes from 'react-immutable-proptypes';
+import { injectIntl } from 'react-intl';
import ImmutablePureComponent from 'react-immutable-pure-component';
import ProgressBar from '../../../components/progress_bar';
import { fetchFunding } from 'gabsocial/actions/patron';
diff --git a/app/gabsocial/features/ui/components/profile_info_panel.js b/app/gabsocial/features/ui/components/profile_info_panel.js
index a9edc14d5..c8a4e562c 100644
--- a/app/gabsocial/features/ui/components/profile_info_panel.js
+++ b/app/gabsocial/features/ui/components/profile_info_panel.js
@@ -5,7 +5,6 @@ import ImmutablePropTypes from 'react-immutable-proptypes';
import PropTypes from 'prop-types';
import { connect } from 'react-redux';
import { defineMessages, injectIntl, FormattedMessage } from 'react-intl';
-import Button from 'gabsocial/components/button';
import ImmutablePureComponent from 'react-immutable-pure-component';
import Icon from 'gabsocial/components/icon';
import VerificationBadge from 'gabsocial/components/verification_badge';
@@ -61,7 +60,6 @@ class ProfileInfoPanel extends ImmutablePureComponent {
const badge = account.get('bot') ? (
) : null;
const content = { __html: account.get('note_emojified') };
const fields = account.get('fields');
- const acct = account.get('acct');
const displayNameHtml = { __html: account.get('display_name_html') };
const memberSinceDate = intl.formatDate(account.get('created_at'), { month: 'long', year: 'numeric' });
diff --git a/app/gabsocial/features/ui/components/promo_panel.js b/app/gabsocial/features/ui/components/promo_panel.js
index 18bb65fea..f9d4970ef 100644
--- a/app/gabsocial/features/ui/components/promo_panel.js
+++ b/app/gabsocial/features/ui/components/promo_panel.js
@@ -1,8 +1,5 @@
import React from 'react';
-import PropTypes from 'prop-types';
-import { FormattedMessage } from 'react-intl';
import Icon from 'gabsocial/components/icon';
-import ProBadge from 'gabsocial/components/pro_badge';
import { connect } from 'react-redux';
const mapStateToProps = state => ({
diff --git a/app/gabsocial/features/ui/components/sign_up_panel.js b/app/gabsocial/features/ui/components/sign_up_panel.js
index e35b58e9c..f709341c2 100644
--- a/app/gabsocial/features/ui/components/sign_up_panel.js
+++ b/app/gabsocial/features/ui/components/sign_up_panel.js
@@ -1,7 +1,6 @@
import React from 'react';
import { connect } from 'react-redux';
import { FormattedMessage, injectIntl } from 'react-intl';
-import { NavLink } from 'react-router-dom';
const mapStateToProps = state => {
return {
diff --git a/app/gabsocial/features/ui/components/tabs_bar.js b/app/gabsocial/features/ui/components/tabs_bar.js
index 3c6034647..f2713039f 100644
--- a/app/gabsocial/features/ui/components/tabs_bar.js
+++ b/app/gabsocial/features/ui/components/tabs_bar.js
@@ -115,7 +115,7 @@ class TabsBar extends React.PureComponent {
});
render () {
- const { intl: { formatMessage }, account, onOpenCompose, onOpenSidebar } = this.props;
+ const { account, onOpenCompose, onOpenSidebar } = this.props;
const { collapsed } = this.state;
const classes = classNames('tabs-bar', {
diff --git a/app/gabsocial/features/ui/components/trends_panel.js b/app/gabsocial/features/ui/components/trends_panel.js
index ac4ebe7a7..90d74426a 100644
--- a/app/gabsocial/features/ui/components/trends_panel.js
+++ b/app/gabsocial/features/ui/components/trends_panel.js
@@ -1,6 +1,5 @@
import React from 'react';
import PropTypes from 'prop-types';
-import { NavLink, withRouter } from 'react-router-dom';
import { FormattedMessage, injectIntl } from 'react-intl';
import { connect } from 'react-redux';
import { fetchTrends } from '../../../actions/trends';
diff --git a/app/gabsocial/features/ui/components/unauthorized_modal.js b/app/gabsocial/features/ui/components/unauthorized_modal.js
index 85231836b..ed59fea77 100644
--- a/app/gabsocial/features/ui/components/unauthorized_modal.js
+++ b/app/gabsocial/features/ui/components/unauthorized_modal.js
@@ -1,9 +1,7 @@
import React from 'react';
import PropTypes from 'prop-types';
-import ImmutablePropTypes from 'react-immutable-proptypes';
import { connect } from 'react-redux';
import { defineMessages, injectIntl, FormattedMessage } from 'react-intl';
-import Avatar from '../../../components/avatar';
import ImmutablePureComponent from 'react-immutable-pure-component';
import IconButton from 'gabsocial/components/icon_button';
@@ -31,7 +29,7 @@ class UnauthorizedModal extends ImmutablePureComponent {
};
render () {
- const { intl, onClose, account, siteTitle } = this.props;
+ const { intl, siteTitle } = this.props;
return (
diff --git a/app/gabsocial/features/ui/components/who_to_follow_panel.js b/app/gabsocial/features/ui/components/who_to_follow_panel.js
index 8549d1976..fa2e9b8dc 100644
--- a/app/gabsocial/features/ui/components/who_to_follow_panel.js
+++ b/app/gabsocial/features/ui/components/who_to_follow_panel.js
@@ -1,6 +1,5 @@
import React from 'react';
import PropTypes from 'prop-types';
-import { NavLink, withRouter } from 'react-router-dom';
import { FormattedMessage, defineMessages, injectIntl } from 'react-intl';
import { connect } from 'react-redux';
import { fetchSuggestions, dismissSuggestion } from '../../../actions/suggestions';
diff --git a/app/gabsocial/features/ui/index.js b/app/gabsocial/features/ui/index.js
index c0bbb3130..477968e7b 100644
--- a/app/gabsocial/features/ui/index.js
+++ b/app/gabsocial/features/ui/index.js
@@ -5,7 +5,7 @@ import React from 'react';
import { HotKeys } from 'react-hotkeys';
import { defineMessages, injectIntl } from 'react-intl';
import { connect } from 'react-redux';
-import { Switch, Redirect, withRouter } from 'react-router-dom';
+import { Switch, withRouter } from 'react-router-dom';
import PropTypes from 'prop-types';
import NotificationsContainer from './containers/notifications_container';
import LoadingBarContainer from './containers/loading_bar_container';
@@ -18,24 +18,24 @@ import { initializeNotifications, expandNotifications } from '../../actions/noti
import { fetchFilters } from '../../actions/filters';
import { clearHeight } from '../../actions/height_cache';
import { openModal } from '../../actions/modal';
-import { WrappedSwitch, WrappedRoute } from './util/react_router_helpers';
+import { WrappedRoute } from './util/react_router_helpers';
import UploadArea from './components/upload_area';
import TabsBar from './components/tabs_bar';
// import TrendsPanel from './components/trends_panel';
import WhoToFollowPanel from './components/who_to_follow_panel';
import LinkFooter from './components/link_footer';
import ProfilePage from 'gabsocial/pages/profile_page';
-import GroupsPage from 'gabsocial/pages/groups_page';
-import GroupPage from 'gabsocial/pages/group_page';
+// import GroupsPage from 'gabsocial/pages/groups_page';
+// import GroupPage from 'gabsocial/pages/group_page';
+// import GroupSidebarPanel from '../groups/sidebar_panel';
import SearchPage from 'gabsocial/pages/search_page';
import HomePage from 'gabsocial/pages/home_page';
-import GroupSidebarPanel from '../groups/sidebar_panel';
import SidebarMenu from '../../components/sidebar_menu';
import { connectUserStream } from '../../actions/streaming';
import {
Status,
- GettingStarted,
+ // GettingStarted,
CommunityTimeline,
PublicTimeline,
AccountTimeline,
@@ -44,7 +44,7 @@ import {
Followers,
Following,
Reblogs,
- Favourites,
+ // Favourites,
DirectTimeline,
HashtagTimeline,
Notifications,
@@ -56,25 +56,22 @@ import {
Mutes,
PinnedStatuses,
Search,
- Explore,
- Groups,
- GroupTimeline,
+ // Explore,
+ // Groups,
+ // GroupTimeline,
ListTimeline,
Lists,
- GroupMembers,
- GroupRemovedAccounts,
- GroupCreate,
- GroupEdit,
+ // GroupMembers,
+ // GroupRemovedAccounts,
+ // GroupCreate,
+ // GroupEdit,
LoginPage,
} from './util/async-components';
import { meUsername } from '../../initial_state';
-import { previewState as previewMediaState } from './components/media_modal';
-import { previewState as previewVideoState } from './components/video_modal';
// Dummy import, to make sure that ends up in the application bundle.
// Without this it ends up in ~8 very commonly used bundles.
import '../../components/status';
-import { fetchGroups } from '../../actions/groups';
const messages = defineMessages({
beforeUnload: { id: 'ui.beforeunload', defaultMessage: 'Your draft will be lost if you leave.' },
@@ -184,8 +181,7 @@ class SwitchingColumnsArea extends React.PureComponent {
}
render () {
- const { children, account } = this.props;
- const { mobile } = this.state;
+ const { children } = this.props;
return (
@@ -535,7 +531,7 @@ class UI extends React.PureComponent {
const { draggingOver } = this.state;
const { intl, children, isComposing, location, dropdownMenuIsOpen, me } = this.props;
- if (me == null || !streamingUrl) return null;
+ if (me === null || !streamingUrl) return null;
const handlers = me ? {
help: this.handleHotkeyToggleHelp,
diff --git a/app/gabsocial/features/ui/util/react_router_helpers.js b/app/gabsocial/features/ui/util/react_router_helpers.js
index 3a2e771f9..617460a38 100644
--- a/app/gabsocial/features/ui/util/react_router_helpers.js
+++ b/app/gabsocial/features/ui/util/react_router_helpers.js
@@ -73,7 +73,7 @@ class WrappedRoute extends React.Component {
render () {
const { component: Component, content, publicRoute, me, ...rest } = this.props;
- if (!publicRoute && me == false) {
+ if (!publicRoute && me === false) {
const actualUrl = encodeURIComponent(this.props.computedMatch.url);
return ;
// return {
diff --git a/app/gabsocial/pages/home_page.js b/app/gabsocial/pages/home_page.js
index a31711b83..d663d4a2a 100644
--- a/app/gabsocial/pages/home_page.js
+++ b/app/gabsocial/pages/home_page.js
@@ -1,6 +1,5 @@
import React from 'react';
import { connect } from 'react-redux';
-import PropTypes from 'prop-types';
import ImmutablePureComponent from 'react-immutable-pure-component';
import WhoToFollowPanel from '../features/ui/components/who_to_follow_panel';
import TrendsPanel from '../features/ui/components/trends_panel';
@@ -10,7 +9,7 @@ import UserPanel from '../features/ui/components/user_panel';
import FundingPanel from '../features/ui/components/funding_panel';
import ComposeFormContainer from '../features/compose/containers/compose_form_container';
import Avatar from '../components/avatar';
-import GroupSidebarPanel from '../features/groups/sidebar_panel';
+// import GroupSidebarPanel from '../features/groups/sidebar_panel';
const mapStateToProps = state => {
const me = state.get('me');
diff --git a/app/gabsocial/pages/profile_page.js b/app/gabsocial/pages/profile_page.js
index cea33822b..6387d1ef0 100644
--- a/app/gabsocial/pages/profile_page.js
+++ b/app/gabsocial/pages/profile_page.js
@@ -2,22 +2,17 @@ import React from 'react';
import { connect } from 'react-redux';
import ImmutablePropTypes from 'react-immutable-proptypes';
import PropTypes from 'prop-types';
-import { fetchAccount, fetchAccountByUsername } from '../actions/accounts';
-import { List as ImmutableList } from 'immutable';
import ImmutablePureComponent from 'react-immutable-pure-component';
import HeaderContainer from '../features/account_timeline/containers/header_container';
-import { NavLink } from 'react-router-dom';
import WhoToFollowPanel from '../features/ui/components/who_to_follow_panel';
// import TrendsPanel from '../features/ui/components/trends_panel';
import LinkFooter from '../features/ui/components/link_footer';
import SignUpPanel from '../features/ui/components/sign_up_panel';
import ProfileInfoPanel from '../features/ui/components/profile_info_panel';
-const emptyList = ImmutableList();
-
const mapStateToProps = (state, { params: { username }, withReplies = false }) => {
const accounts = state.getIn(['accounts']);
- const accountFetchError = (state.getIn(['accounts', -1, 'username'], '').toLowerCase() == username.toLowerCase());
+ const accountFetchError = (state.getIn(['accounts', -1, 'username'], '').toLowerCase() === username.toLowerCase());
let accountId = -1;
let account = null;
@@ -25,7 +20,7 @@ const mapStateToProps = (state, { params: { username }, withReplies = false }) =
if (accountFetchError) {
accountId = null;
} else {
- account = accounts.find(acct => username.toLowerCase() == acct.getIn(['acct'], '').toLowerCase());
+ account = accounts.find(acct => username.toLowerCase() === acct.getIn(['acct'], '').toLowerCase());
accountId = account ? account.getIn(['id'], null) : -1;
accountUsername = account ? account.getIn(['acct'], '') : '';
}
diff --git a/app/gabsocial/reducers/auth.js b/app/gabsocial/reducers/auth.js
index 241471a08..b25330518 100644
--- a/app/gabsocial/reducers/auth.js
+++ b/app/gabsocial/reducers/auth.js
@@ -4,7 +4,7 @@ import {
AUTH_APP_AUTHORIZED,
AUTH_LOGGED_OUT,
} from '../actions/auth';
-import { Map as ImmutableMap, fromJS } from 'immutable';
+import { Map as ImmutableMap } from 'immutable';
const initialState = ImmutableMap({
app: ImmutableMap(JSON.parse(localStorage.getItem('soapbox:auth:app'))),
diff --git a/app/gabsocial/reducers/me.js b/app/gabsocial/reducers/me.js
index fa377c3bc..fff385be5 100644
--- a/app/gabsocial/reducers/me.js
+++ b/app/gabsocial/reducers/me.js
@@ -1,6 +1,6 @@
import { ME_FETCH_SUCCESS, ME_FETCH_FAIL, ME_FETCH_SKIP } from '../actions/me';
import { AUTH_LOGGED_OUT } from '../actions/auth';
-import { Map as ImmutableMap, fromJS } from 'immutable';
+import { fromJS } from 'immutable';
const initialState = null;
diff --git a/app/gabsocial/utils/numbers.js b/app/gabsocial/utils/numbers.js
index 619b06f40..9d0d6e33a 100644
--- a/app/gabsocial/utils/numbers.js
+++ b/app/gabsocial/utils/numbers.js
@@ -1,4 +1,4 @@
-import React, { Fragment } from 'react';
+import React from 'react';
import { FormattedNumber } from 'react-intl';
export const shortNumberFormat = number => {
diff --git a/app/packs/admin.js b/app/packs/admin.js
index 1ade551b1..8dc7ca734 100644
--- a/app/packs/admin.js
+++ b/app/packs/admin.js
@@ -102,14 +102,16 @@ delegate(document, '.payform', 'submit', (e) => {
const csrf_token = document.querySelector('meta[name=\'csrf-token\']').content;
const price = Math.floor(document.getElementById('price').value.replace(/[^0-9.]/, '') * 100);
+ // eslint-disable-next-line no-undef
const stripe = Stripe(stripe_pk);
const req = new XMLHttpRequest();
- function checkout () {
+ function checkout() {
stripe.redirectToCheckout({
sessionId: this.responseText,
- }).then(function (result) {
- console.log(result.error.message);
+ }).catch(e => {
+ console.error(e);
+ console.error('Could not connect to Stripe checkout');
});
}
diff --git a/app/packs/public.js b/app/packs/public.js
index 53a7ae732..2c30ba0ab 100644
--- a/app/packs/public.js
+++ b/app/packs/public.js
@@ -25,7 +25,7 @@ window.addEventListener('message', e => {
function main ( ) {
const IntlMessageFormat = require('intl-messageformat').default;
- import('intl-pluralrules');
+ import('intl-pluralrules'); // eslint-disable-line
const { timeAgoString } = require('../gabsocial/components/relative_timestamp');
const { delegate } = require('rails-ujs');
const emojify = require('../gabsocial/features/emoji/emoji').default;
@@ -35,7 +35,7 @@ function main ( ) {
// const React = require('react');
const ReactDOM = require('react-dom');
const Rellax = require('rellax');
- const createHistory = require('history').createBrowserHistory;
+ const createHistory = require('history').createBrowserHistory; // eslint-disable-line
const scrollToDetailedStatus = () => {
const history = createHistory();
diff --git a/package.json b/package.json
index 1e6f2c79e..a8e5149d6 100644
--- a/package.json
+++ b/package.json
@@ -128,7 +128,7 @@
"websocket.js": "^0.1.12"
},
"devDependencies": {
- "babel-eslint": "^10.0.1",
+ "babel-eslint": "^10.1.0",
"babel-jest": "^24.8.0",
"enzyme": "^3.8.0",
"enzyme-adapter-react-16": "^1.7.1",
diff --git a/webpack/development.js b/webpack/development.js
index b714f1bb0..00c3eef33 100644
--- a/webpack/development.js
+++ b/webpack/development.js
@@ -1,10 +1,9 @@
// Note: You must restart bin/webpack-dev-server for changes to take effect
-const { resolve, join } = require('path');
+const { resolve } = require('path');
const merge = require('webpack-merge');
const sharedConfig = require('./shared');
const { settings, output } = require('./configuration');
-const HtmlWebpackPlugin = require('html-webpack-plugin');
const watchOptions = {};
diff --git a/webpack/production.js b/webpack/production.js
index 7ff3100fa..861278a04 100644
--- a/webpack/production.js
+++ b/webpack/production.js
@@ -1,6 +1,5 @@
// Note: You must restart bin/webpack-dev-server for changes to take effect
-const path = require('path');
const { URL } = require('url');
const merge = require('webpack-merge');
const { BundleAnalyzerPlugin } = require('webpack-bundle-analyzer');
@@ -10,6 +9,7 @@ const CompressionPlugin = require('compression-webpack-plugin');
const { output } = require('./configuration');
const sharedConfig = require('./shared');
+// eslint-disable-next-line no-unused-vars
let attachmentHost;
if (process.env.S3_ENABLED === 'true') {
diff --git a/yarn.lock b/yarn.lock
index 51bd41c95..ab082c9ea 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -2,12 +2,12 @@
# yarn lockfile v1
-"@babel/code-frame@^7.0.0":
- version "7.0.0"
- resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.0.0.tgz#06e2ab19bdb535385559aabb5ba59729482800f8"
- integrity sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA==
+"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.8.3.tgz#33e25903d7481181534e12ec0a25f16b6fcf419e"
+ integrity sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==
dependencies:
- "@babel/highlight" "^7.0.0"
+ "@babel/highlight" "^7.8.3"
"@babel/core@^7.1.0", "@babel/core@^7.3.4":
version "7.3.4"
@@ -51,6 +51,16 @@
source-map "^0.5.0"
trim-right "^1.0.1"
+"@babel/generator@^7.9.5":
+ version "7.9.5"
+ resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.9.5.tgz#27f0917741acc41e6eaaced6d68f96c3fa9afaf9"
+ integrity sha512-GbNIxVB3ZJe3tLeDm1HSn2AhuD/mVcyLDpgtLXa5tplmWrJdF/elxB56XNqCuD6szyNkDi6wuoKXln3QeBmCHQ==
+ dependencies:
+ "@babel/types" "^7.9.5"
+ jsesc "^2.5.1"
+ lodash "^4.17.13"
+ source-map "^0.5.0"
+
"@babel/helper-annotate-as-pure@^7.0.0":
version "7.0.0"
resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.0.0.tgz#323d39dd0b50e10c7c06ca7d7638e6864d8c5c32"
@@ -121,6 +131,15 @@
"@babel/template" "^7.1.0"
"@babel/types" "^7.0.0"
+"@babel/helper-function-name@^7.9.5":
+ version "7.9.5"
+ resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.9.5.tgz#2b53820d35275120e1874a82e5aabe1376920a5c"
+ integrity sha512-JVcQZeXM59Cd1qanDUxv9fgJpt3NeKUaqBqUEvfmQ+BCOKq2xUgaWZW2hr0dkbyJgezYuplEoh5knmrnS68efw==
+ dependencies:
+ "@babel/helper-get-function-arity" "^7.8.3"
+ "@babel/template" "^7.8.3"
+ "@babel/types" "^7.9.5"
+
"@babel/helper-get-function-arity@^7.0.0":
version "7.0.0"
resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz#83572d4320e2a4657263734113c42868b64e49c3"
@@ -128,6 +147,13 @@
dependencies:
"@babel/types" "^7.0.0"
+"@babel/helper-get-function-arity@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz#b894b947bd004381ce63ea1db9f08547e920abd5"
+ integrity sha512-FVDR+Gd9iLjUMY1fzE2SR0IuaJToR4RkCDARVfsBBPSP53GEqSFjD8gNyxg246VUyc/ALRxFaAK8rVG7UT7xRA==
+ dependencies:
+ "@babel/types" "^7.8.3"
+
"@babel/helper-hoist-variables@^7.0.0":
version "7.0.0"
resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.0.0.tgz#46adc4c5e758645ae7a45deb92bab0918c23bb88"
@@ -226,6 +252,18 @@
dependencies:
"@babel/types" "^7.0.0"
+"@babel/helper-split-export-declaration@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.8.3.tgz#31a9f30070f91368a7182cf05f831781065fc7a9"
+ integrity sha512-3x3yOeyBhW851hroze7ElzdkeRXQYQbFIb7gLK1WQYsw2GWDay5gAJNw1sWJ0VFP6z5J1whqeXH/WCdCjZv6dA==
+ dependencies:
+ "@babel/types" "^7.8.3"
+
+"@babel/helper-validator-identifier@^7.9.0", "@babel/helper-validator-identifier@^7.9.5":
+ version "7.9.5"
+ resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.9.5.tgz#90977a8e6fbf6b431a7dc31752eee233bf052d80"
+ integrity sha512-/8arLKUFq882w4tWGj9JYzRpAlZgiWUJ+dtteNTDqrRBz9Iguck9Rn3ykuBDoUwh2TO4tSAJlrxDUOXWklJe4g==
+
"@babel/helper-wrap-function@^7.1.0":
version "7.2.0"
resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.2.0.tgz#c4e0012445769e2815b55296ead43a958549f6fa"
@@ -245,13 +283,13 @@
"@babel/traverse" "^7.1.5"
"@babel/types" "^7.2.0"
-"@babel/highlight@^7.0.0":
- version "7.0.0"
- resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.0.0.tgz#f710c38c8d458e6dd9a201afb637fcb781ce99e4"
- integrity sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw==
+"@babel/highlight@^7.8.3":
+ version "7.9.0"
+ resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.9.0.tgz#4e9b45ccb82b79607271b2979ad82c7b68163079"
+ integrity sha512-lJZPilxX7Op3Nv/2cvFdnlepPXDxi29wxteT57Q965oc5R9v86ztx0jfxVrTcBk8C2kcPkkDa2Z4T3ZsPPVWsQ==
dependencies:
+ "@babel/helper-validator-identifier" "^7.9.0"
chalk "^2.0.0"
- esutils "^2.0.2"
js-tokens "^4.0.0"
"@babel/parser@^7.0.0", "@babel/parser@^7.2.2", "@babel/parser@^7.2.3":
@@ -264,6 +302,11 @@
resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.3.4.tgz#a43357e4bbf4b92a437fb9e465c192848287f27c"
integrity sha512-tXZCqWtlOOP4wgCp6RjRvLmfuhnqTLy9VHwRochJBCP2nDm27JnnuFEnXFASVyQNHk36jD1tAammsCEEqgscIQ==
+"@babel/parser@^7.7.0", "@babel/parser@^7.8.6", "@babel/parser@^7.9.0":
+ version "7.9.4"
+ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.9.4.tgz#68a35e6b0319bbc014465be43828300113f2f2e8"
+ integrity sha512-bC49otXX6N0/VYhgOMh4gnP26E9xnDZK3TmbNpxYzzz9BQLBosQwfyOe9/cXUU3txYhTzLCbcqd5c8y/OmCjHA==
+
"@babel/plugin-proposal-async-generator-functions@^7.2.0":
version "7.2.0"
resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.2.0.tgz#b289b306669dce4ad20b0252889a15768c9d417e"
@@ -748,6 +791,15 @@
"@babel/parser" "^7.2.2"
"@babel/types" "^7.2.2"
+"@babel/template@^7.8.3":
+ version "7.8.6"
+ resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.8.6.tgz#86b22af15f828dfb086474f964dcc3e39c43ce2b"
+ integrity sha512-zbMsPMy/v0PWFZEhQJ66bqjhH+z0JgMoBWuikXybgG3Gkd/3t5oQ1Rw2WQhnSrsOmsKXnZOx15tkC4qON/+JPg==
+ dependencies:
+ "@babel/code-frame" "^7.8.3"
+ "@babel/parser" "^7.8.6"
+ "@babel/types" "^7.8.6"
+
"@babel/traverse@^7.0.0", "@babel/traverse@^7.1.0", "@babel/traverse@^7.1.5", "@babel/traverse@^7.2.3":
version "7.2.3"
resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.2.3.tgz#7ff50cefa9c7c0bd2d81231fdac122f3957748d8"
@@ -778,6 +830,21 @@
globals "^11.1.0"
lodash "^4.17.11"
+"@babel/traverse@^7.7.0":
+ version "7.9.5"
+ resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.9.5.tgz#6e7c56b44e2ac7011a948c21e283ddd9d9db97a2"
+ integrity sha512-c4gH3jsvSuGUezlP6rzSJ6jf8fYjLj3hsMZRx/nX0h+fmHN0w+ekubRrHPqnMec0meycA2nwCsJ7dC8IPem2FQ==
+ dependencies:
+ "@babel/code-frame" "^7.8.3"
+ "@babel/generator" "^7.9.5"
+ "@babel/helper-function-name" "^7.9.5"
+ "@babel/helper-split-export-declaration" "^7.8.3"
+ "@babel/parser" "^7.9.0"
+ "@babel/types" "^7.9.5"
+ debug "^4.1.0"
+ globals "^11.1.0"
+ lodash "^4.17.13"
+
"@babel/types@^7.0.0", "@babel/types@^7.0.0-beta.49", "@babel/types@^7.2.0", "@babel/types@^7.2.2":
version "7.2.2"
resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.2.2.tgz#44e10fc24e33af524488b716cdaee5360ea8ed1e"
@@ -796,6 +863,15 @@
lodash "^4.17.11"
to-fast-properties "^2.0.0"
+"@babel/types@^7.7.0", "@babel/types@^7.8.3", "@babel/types@^7.8.6", "@babel/types@^7.9.5":
+ version "7.9.5"
+ resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.9.5.tgz#89231f82915a8a566a703b3b20133f73da6b9444"
+ integrity sha512-XjnvNqenk818r5zMaba+sLQjnbda31UfUURv3ei0qPQw4u+j2jMyJ5b11y8ZHYTRSI3NnInQkkkRT4fLqqPdHg==
+ dependencies:
+ "@babel/helper-validator-identifier" "^7.9.5"
+ lodash "^4.17.13"
+ to-fast-properties "^2.0.0"
+
"@clusterws/cws@^0.16.0":
version "0.16.0"
resolved "https://registry.yarnpkg.com/@clusterws/cws/-/cws-0.16.0.tgz#f6116cbf3a8b7ad0657916616ce5f8248746b797"
@@ -1685,17 +1761,17 @@ axobject-query@^2.0.2:
dependencies:
ast-types-flow "0.0.7"
-babel-eslint@^10.0.1:
- version "10.0.1"
- resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-10.0.1.tgz#919681dc099614cd7d31d45c8908695092a1faed"
- integrity sha512-z7OT1iNV+TjOwHNLLyJk+HN+YVWX+CLE6fPD2SymJZOZQBs+QIexFjhm4keGTm8MW9xr4EC9Q0PbaLB24V5GoQ==
+babel-eslint@^10.1.0:
+ version "10.1.0"
+ resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-10.1.0.tgz#6968e568a910b78fb3779cdd8b6ac2f479943232"
+ integrity sha512-ifWaTHQ0ce+448CYop8AdrQiBsGrnC+bMgfyKFdi6EsPLTAWG+QfyDeM6OH+FmWnKvEq5NnBMLvlBUPKQZoDSg==
dependencies:
"@babel/code-frame" "^7.0.0"
- "@babel/parser" "^7.0.0"
- "@babel/traverse" "^7.0.0"
- "@babel/types" "^7.0.0"
- eslint-scope "3.7.1"
+ "@babel/parser" "^7.7.0"
+ "@babel/traverse" "^7.7.0"
+ "@babel/types" "^7.7.0"
eslint-visitor-keys "^1.0.0"
+ resolve "^1.12.0"
babel-jest@^24.8.0:
version "24.8.0"
@@ -3768,14 +3844,6 @@ eslint-plugin-react@~7.17.0:
prop-types "^15.7.2"
resolve "^1.13.1"
-eslint-scope@3.7.1:
- version "3.7.1"
- resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-3.7.1.tgz#3d63c3edfda02e06e01a452ad88caacc7cdcb6e8"
- integrity sha1-PWPD7f2gLgbgGkUq2IyqzHzctug=
- dependencies:
- esrecurse "^4.1.0"
- estraverse "^4.1.1"
-
eslint-scope@^4.0.3:
version "4.0.3"
resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.3.tgz#ca03833310f6889a3264781aa82e63eb9cfe7848"
@@ -3799,12 +3867,7 @@ eslint-utils@^1.4.2:
dependencies:
eslint-visitor-keys "^1.0.0"
-eslint-visitor-keys@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz#3f3180fb2e291017716acb4c9d6d5b5c34a6a81d"
- integrity sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ==
-
-eslint-visitor-keys@^1.1.0:
+eslint-visitor-keys@^1.0.0, eslint-visitor-keys@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz#e2a82cea84ff246ad6fb57f9bde5b46621459ec2"
integrity sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A==
@@ -3937,11 +4000,16 @@ estraverse@^4.0.0, estraverse@^4.1.0, estraverse@^4.1.1, estraverse@^4.2.0:
resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13"
integrity sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=
-esutils@^2.0.0, esutils@^2.0.2:
+esutils@^2.0.0:
version "2.0.2"
resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b"
integrity sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=
+esutils@^2.0.2:
+ version "2.0.3"
+ resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64"
+ integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==
+
etag@~1.8.1:
version "1.8.1"
resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887"
@@ -4610,7 +4678,12 @@ global-prefix@^1.0.1:
is-windows "^1.0.1"
which "^1.2.14"
-globals@^11.1.0, globals@^11.7.0:
+globals@^11.1.0:
+ version "11.12.0"
+ resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e"
+ integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==
+
+globals@^11.7.0:
version "11.9.0"
resolved "https://registry.yarnpkg.com/globals/-/globals-11.9.0.tgz#bde236808e987f290768a93d065060d78e6ab249"
integrity sha512-5cJVtyXWH8PiJPVLZzzoIizXx944O4OmRro5MWKx5fT4MgcN7OfaMutPeaTdJCCURwbWdhhcCWcKIffPnmTzBg==
@@ -6407,7 +6480,7 @@ lodash.uniq@^4.5.0:
resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773"
integrity sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=
-lodash@^4.0.0, lodash@^4.17.12, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.3.0, lodash@~4.17.12:
+lodash@^4.0.0, lodash@^4.17.12, lodash@^4.17.13, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.3.0, lodash@~4.17.12:
version "4.17.15"
resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548"
integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==
@@ -6760,11 +6833,16 @@ ms@2.0.0:
resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=
-ms@2.1.1, ms@^2.1.1:
+ms@2.1.1:
version "2.1.1"
resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a"
integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==
+ms@^2.1.1:
+ version "2.1.2"
+ resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009"
+ integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==
+
multicast-dns-service-types@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz#899f11d9686e5e05cb91b35d5f0e63b773cfc901"
@@ -9030,7 +9108,14 @@ resolve@^1.10.0:
dependencies:
path-parse "^1.0.6"
-resolve@^1.12.0, resolve@^1.13.1:
+resolve@^1.12.0:
+ version "1.15.1"
+ resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.15.1.tgz#27bdcdeffeaf2d6244b95bb0f9f4b4653451f3e8"
+ integrity sha512-84oo6ZTtoTUpjgNEr5SJyzQhzL72gaRodsSfyxC/AXRvwu0Yse9H8eF9IpGo7b8YetZhlI6v7ZQ6bKBFV/6S7w==
+ dependencies:
+ path-parse "^1.0.6"
+
+resolve@^1.13.1:
version "1.13.1"
resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.13.1.tgz#be0aa4c06acd53083505abb35f4d66932ab35d16"
integrity sha512-CxqObCX8K8YtAhOBRg+lrcdn+LK+WYOS8tSjqSFbjtrI5PnS63QPhZl4+yKfrU9tdsbMu9Anr/amegT87M9Z6w==