diff --git a/app/soapbox/actions/compose.js b/app/soapbox/actions/compose.js
index fe54c843e..c42176fa2 100644
--- a/app/soapbox/actions/compose.js
+++ b/app/soapbox/actions/compose.js
@@ -1,6 +1,6 @@
import { CancelToken, isCancel } from 'axios';
import { OrderedSet as ImmutableOrderedSet } from 'immutable';
-import { throttle } from 'lodash';
+import throttle from 'lodash/throttle';
import { defineMessages } from 'react-intl';
import snackbar from 'soapbox/actions/snackbar';
diff --git a/app/soapbox/actions/instance.ts b/app/soapbox/actions/instance.ts
index cabccdd33..60a6b2e89 100644
--- a/app/soapbox/actions/instance.ts
+++ b/app/soapbox/actions/instance.ts
@@ -1,5 +1,5 @@
import { createAsyncThunk } from '@reduxjs/toolkit';
-import { get } from 'lodash';
+import get from 'lodash/get';
import KVStore from 'soapbox/storage/kv_store';
import { RootState } from 'soapbox/store';
diff --git a/app/soapbox/actions/preload.js b/app/soapbox/actions/preload.js
index d14c6f9fe..abde36da6 100644
--- a/app/soapbox/actions/preload.js
+++ b/app/soapbox/actions/preload.js
@@ -1,4 +1,4 @@
-import { mapValues } from 'lodash';
+import mapValues from 'lodash/mapValues';
import { verifyCredentials } from './auth';
import { importFetchedAccounts } from './importer';
diff --git a/app/soapbox/build_config.js b/app/soapbox/build_config.js
index 6ddb309cb..04b48bf78 100644
--- a/app/soapbox/build_config.js
+++ b/app/soapbox/build_config.js
@@ -4,7 +4,8 @@
* @module soapbox/build_config
*/
-const { trim, trimEnd } = require('lodash');
+const trim = require('lodash/trim');
+const trimEnd = require('lodash/trimEnd');
const {
NODE_ENV,
diff --git a/app/soapbox/components/autosuggest_account_input.tsx b/app/soapbox/components/autosuggest_account_input.tsx
index e103d7722..79d247fd9 100644
--- a/app/soapbox/components/autosuggest_account_input.tsx
+++ b/app/soapbox/components/autosuggest_account_input.tsx
@@ -1,5 +1,5 @@
import { OrderedSet as ImmutableOrderedSet } from 'immutable';
-import { throttle } from 'lodash';
+import throttle from 'lodash/throttle';
import React, { useState, useRef, useCallback, useEffect } from 'react';
import { accountSearch } from 'soapbox/actions/accounts';
diff --git a/app/soapbox/components/filter_bar.js b/app/soapbox/components/filter_bar.js
index 46a7dc748..7b0651d01 100644
--- a/app/soapbox/components/filter_bar.js
+++ b/app/soapbox/components/filter_bar.js
@@ -1,5 +1,5 @@
import classNames from 'classnames';
-import { debounce } from 'lodash';
+import debounce from 'lodash/debounce';
import PropTypes from 'prop-types';
import React from 'react';
import { withRouter } from 'react-router-dom';
diff --git a/app/soapbox/components/hover_ref_wrapper.tsx b/app/soapbox/components/hover_ref_wrapper.tsx
index 2ef2d8372..bf4e253f2 100644
--- a/app/soapbox/components/hover_ref_wrapper.tsx
+++ b/app/soapbox/components/hover_ref_wrapper.tsx
@@ -1,5 +1,5 @@
import classNames from 'classnames';
-import { debounce } from 'lodash';
+import debounce from 'lodash/debounce';
import React, { useRef } from 'react';
import { useDispatch } from 'react-redux';
diff --git a/app/soapbox/components/scroll-top-button.tsx b/app/soapbox/components/scroll-top-button.tsx
index 5de90abb6..f68a22d3f 100644
--- a/app/soapbox/components/scroll-top-button.tsx
+++ b/app/soapbox/components/scroll-top-button.tsx
@@ -1,5 +1,5 @@
import classNames from 'classnames';
-import { throttle } from 'lodash';
+import throttle from 'lodash/throttle';
import React, { useState, useEffect, useCallback } from 'react';
import { useIntl, MessageDescriptor } from 'react-intl';
diff --git a/app/soapbox/components/scrollable_list.tsx b/app/soapbox/components/scrollable_list.tsx
index 8b803be66..31b892e6d 100644
--- a/app/soapbox/components/scrollable_list.tsx
+++ b/app/soapbox/components/scrollable_list.tsx
@@ -1,4 +1,4 @@
-import { debounce } from 'lodash';
+import debounce from 'lodash/debounce';
import React, { useEffect, useRef, useMemo, useCallback } from 'react';
import { useHistory } from 'react-router-dom';
import { Virtuoso, Components, VirtuosoProps, VirtuosoHandle, ListRange, IndexLocationWithAlign } from 'react-virtuoso';
diff --git a/app/soapbox/components/status_list.tsx b/app/soapbox/components/status_list.tsx
index 37e37f59d..6eac9c7b2 100644
--- a/app/soapbox/components/status_list.tsx
+++ b/app/soapbox/components/status_list.tsx
@@ -1,5 +1,5 @@
import classNames from 'classnames';
-import { debounce } from 'lodash';
+import debounce from 'lodash/debounce';
import React, { useRef, useCallback } from 'react';
import { FormattedMessage } from 'react-intl';
diff --git a/app/soapbox/components/sub_navigation.js b/app/soapbox/components/sub_navigation.js
index 0d24dfffb..f75ca802f 100644
--- a/app/soapbox/components/sub_navigation.js
+++ b/app/soapbox/components/sub_navigation.js
@@ -1,4 +1,4 @@
-import { throttle } from 'lodash';
+import throttle from 'lodash/throttle';
import PropTypes from 'prop-types';
import React from 'react';
import { injectIntl, defineMessages } from 'react-intl';
diff --git a/app/soapbox/features/account/components/header.js b/app/soapbox/features/account/components/header.js
index b76a156a5..62cfd2010 100644
--- a/app/soapbox/features/account/components/header.js
+++ b/app/soapbox/features/account/components/header.js
@@ -1,7 +1,7 @@
'use strict';
import { List as ImmutableList, Map as ImmutableMap } from 'immutable';
-import { debounce } from 'lodash';
+import debounce from 'lodash/debounce';
import PropTypes from 'prop-types';
import React from 'react';
import ImmutablePropTypes from 'react-immutable-proptypes';
@@ -476,7 +476,7 @@ class Header extends ImmutablePureComponent {
}
+ title={}
/>,
);
}
diff --git a/app/soapbox/features/admin/user_index.js b/app/soapbox/features/admin/user_index.js
index 7c06609a3..213041f98 100644
--- a/app/soapbox/features/admin/user_index.js
+++ b/app/soapbox/features/admin/user_index.js
@@ -1,5 +1,5 @@
import { Set as ImmutableSet, OrderedSet as ImmutableOrderedSet, is } from 'immutable';
-import { debounce } from 'lodash';
+import debounce from 'lodash/debounce';
import PropTypes from 'prop-types';
import React from 'react';
import ImmutablePureComponent from 'react-immutable-pure-component';
@@ -61,7 +61,7 @@ class UserIndex extends ImmutablePureComponent {
nextLink: next,
});
})
- .catch(() => {});
+ .catch(() => { });
}
componentDidMount() {
diff --git a/app/soapbox/features/audio/index.js b/app/soapbox/features/audio/index.js
index 6fa5418bc..067856abf 100644
--- a/app/soapbox/features/audio/index.js
+++ b/app/soapbox/features/audio/index.js
@@ -1,5 +1,6 @@
import classNames from 'classnames';
-import { debounce, throttle } from 'lodash';
+import debounce from 'lodash/debounce';
+import throttle from 'lodash/throttle';
import PropTypes from 'prop-types';
import React from 'react';
import { defineMessages, injectIntl } from 'react-intl';
diff --git a/app/soapbox/features/auth_login/components/registration_form.tsx b/app/soapbox/features/auth_login/components/registration_form.tsx
index 0c3e048ce..eba70437a 100644
--- a/app/soapbox/features/auth_login/components/registration_form.tsx
+++ b/app/soapbox/features/auth_login/components/registration_form.tsx
@@ -1,6 +1,6 @@
import axios from 'axios';
import { Map as ImmutableMap } from 'immutable';
-import { debounce } from 'lodash';
+import debounce from 'lodash/debounce';
import React, { useState, useRef, useCallback } from 'react';
import { useIntl, FormattedMessage, defineMessages } from 'react-intl';
import { Link, useHistory } from 'react-router-dom';
diff --git a/app/soapbox/features/blocks/index.tsx b/app/soapbox/features/blocks/index.tsx
index 8b56fc262..c3ea6585f 100644
--- a/app/soapbox/features/blocks/index.tsx
+++ b/app/soapbox/features/blocks/index.tsx
@@ -1,4 +1,4 @@
-import { debounce } from 'lodash';
+import debounce from 'lodash/debounce';
import React from 'react';
import { defineMessages, FormattedMessage, useIntl } from 'react-intl';
import { useDispatch } from 'react-redux';
diff --git a/app/soapbox/features/bookmarks/index.tsx b/app/soapbox/features/bookmarks/index.tsx
index 343d7ffc6..c9e3e5de3 100644
--- a/app/soapbox/features/bookmarks/index.tsx
+++ b/app/soapbox/features/bookmarks/index.tsx
@@ -1,4 +1,4 @@
-import { debounce } from 'lodash';
+import debounce from 'lodash/debounce';
import React from 'react';
import { defineMessages, FormattedMessage, useIntl } from 'react-intl';
diff --git a/app/soapbox/features/chats/components/chat_message_list.js b/app/soapbox/features/chats/components/chat_message_list.js
index 7090d7074..7f02219b4 100644
--- a/app/soapbox/features/chats/components/chat_message_list.js
+++ b/app/soapbox/features/chats/components/chat_message_list.js
@@ -1,6 +1,7 @@
import classNames from 'classnames';
import { Map as ImmutableMap, List as ImmutableList } from 'immutable';
-import { escape, throttle } from 'lodash';
+import escape from 'lodash/escape';
+import throttle from 'lodash/throttle';
import PropTypes from 'prop-types';
import React from 'react';
import ImmutablePropTypes from 'react-immutable-proptypes';
diff --git a/app/soapbox/features/compose/components/compose_form.js b/app/soapbox/features/compose/components/compose_form.js
index 15b14fadb..bfce5173b 100644
--- a/app/soapbox/features/compose/components/compose_form.js
+++ b/app/soapbox/features/compose/components/compose_form.js
@@ -1,5 +1,5 @@
import classNames from 'classnames';
-import { get } from 'lodash';
+import get from 'lodash/get';
import PropTypes from 'prop-types';
import React from 'react';
import ImmutablePropTypes from 'react-immutable-proptypes';
diff --git a/app/soapbox/features/conversations/components/conversations_list.tsx b/app/soapbox/features/conversations/components/conversations_list.tsx
index 32fbb3e55..9773b246e 100644
--- a/app/soapbox/features/conversations/components/conversations_list.tsx
+++ b/app/soapbox/features/conversations/components/conversations_list.tsx
@@ -1,4 +1,4 @@
-import { debounce } from 'lodash';
+import debounce from 'lodash/debounce';
import React, { useRef } from 'react';
import { FormattedMessage } from 'react-intl';
diff --git a/app/soapbox/features/domain_blocks/index.tsx b/app/soapbox/features/domain_blocks/index.tsx
index 88ddc1a12..cad165b3b 100644
--- a/app/soapbox/features/domain_blocks/index.tsx
+++ b/app/soapbox/features/domain_blocks/index.tsx
@@ -1,4 +1,4 @@
-import { debounce } from 'lodash';
+import debounce from 'lodash/debounce';
import React from 'react';
import { defineMessages, useIntl, FormattedMessage } from 'react-intl';
import { useDispatch } from 'react-redux';
diff --git a/app/soapbox/features/emoji/__tests__/emoji_index.test.ts b/app/soapbox/features/emoji/__tests__/emoji_index.test.ts
index 90ae0993d..99f46e3b3 100644
--- a/app/soapbox/features/emoji/__tests__/emoji_index.test.ts
+++ b/app/soapbox/features/emoji/__tests__/emoji_index.test.ts
@@ -1,5 +1,5 @@
import { emojiIndex } from 'emoji-mart';
-import { pick } from 'lodash';
+import pick from 'lodash/pick';
import { search } from '../emoji_mart_search_light';
diff --git a/app/soapbox/features/favourited_statuses/index.js b/app/soapbox/features/favourited_statuses/index.js
index 0de3d520d..b4ffb6a8a 100644
--- a/app/soapbox/features/favourited_statuses/index.js
+++ b/app/soapbox/features/favourited_statuses/index.js
@@ -1,4 +1,4 @@
-import { debounce } from 'lodash';
+import debounce from 'lodash/debounce';
import PropTypes from 'prop-types';
import React from 'react';
import ImmutablePropTypes from 'react-immutable-proptypes';
diff --git a/app/soapbox/features/follow_requests/index.tsx b/app/soapbox/features/follow_requests/index.tsx
index ef82d1aef..3c1d647ed 100644
--- a/app/soapbox/features/follow_requests/index.tsx
+++ b/app/soapbox/features/follow_requests/index.tsx
@@ -1,4 +1,4 @@
-import { debounce } from 'lodash';
+import debounce from 'lodash/debounce';
import React from 'react';
import { defineMessages, useIntl, FormattedMessage } from 'react-intl';
import { useDispatch } from 'react-redux';
diff --git a/app/soapbox/features/followers/index.js b/app/soapbox/features/followers/index.js
index a146f4f6f..e728ebddf 100644
--- a/app/soapbox/features/followers/index.js
+++ b/app/soapbox/features/followers/index.js
@@ -1,4 +1,4 @@
-import { debounce } from 'lodash';
+import debounce from 'lodash/debounce';
import PropTypes from 'prop-types';
import React from 'react';
import ImmutablePropTypes from 'react-immutable-proptypes';
diff --git a/app/soapbox/features/following/index.js b/app/soapbox/features/following/index.js
index 447a0ae02..532a7d2c5 100644
--- a/app/soapbox/features/following/index.js
+++ b/app/soapbox/features/following/index.js
@@ -1,4 +1,4 @@
-import { debounce } from 'lodash';
+import debounce from 'lodash/debounce';
import PropTypes from 'prop-types';
import React from 'react';
import ImmutablePropTypes from 'react-immutable-proptypes';
diff --git a/app/soapbox/features/groups/members/index.js b/app/soapbox/features/groups/members/index.js
index 2b7ef8ecd..a7b56aeb1 100644
--- a/app/soapbox/features/groups/members/index.js
+++ b/app/soapbox/features/groups/members/index.js
@@ -1,4 +1,4 @@
-import { debounce } from 'lodash';
+import debounce from 'lodash/debounce';
import PropTypes from 'prop-types';
import React from 'react';
import ImmutablePropTypes from 'react-immutable-proptypes';
diff --git a/app/soapbox/features/groups/removed_accounts/index.js b/app/soapbox/features/groups/removed_accounts/index.js
index 5227e0af0..cc7e1111d 100644
--- a/app/soapbox/features/groups/removed_accounts/index.js
+++ b/app/soapbox/features/groups/removed_accounts/index.js
@@ -1,4 +1,4 @@
-import { debounce } from 'lodash';
+import debounce from 'lodash/debounce';
import PropTypes from 'prop-types';
import React from 'react';
import ImmutablePropTypes from 'react-immutable-proptypes';
diff --git a/app/soapbox/features/hashtag_timeline/index.js b/app/soapbox/features/hashtag_timeline/index.js
index bf050766c..8e40a9b85 100644
--- a/app/soapbox/features/hashtag_timeline/index.js
+++ b/app/soapbox/features/hashtag_timeline/index.js
@@ -1,4 +1,4 @@
-import { isEqual } from 'lodash';
+import isEqual from 'lodash/isEqual';
import PropTypes from 'prop-types';
import React from 'react';
import { FormattedMessage } from 'react-intl';
diff --git a/app/soapbox/features/mutes/index.tsx b/app/soapbox/features/mutes/index.tsx
index adaa390e9..d564c68e7 100644
--- a/app/soapbox/features/mutes/index.tsx
+++ b/app/soapbox/features/mutes/index.tsx
@@ -1,4 +1,4 @@
-import { debounce } from 'lodash';
+import debounce from 'lodash/debounce';
import React from 'react';
import { defineMessages, useIntl, FormattedMessage } from 'react-intl';
import { useDispatch } from 'react-redux';
diff --git a/app/soapbox/features/notifications/index.js b/app/soapbox/features/notifications/index.js
index d3b5cb318..5ac0877d1 100644
--- a/app/soapbox/features/notifications/index.js
+++ b/app/soapbox/features/notifications/index.js
@@ -1,6 +1,6 @@
import classNames from 'classnames';
import { List as ImmutableList } from 'immutable';
-import { debounce } from 'lodash';
+import debounce from 'lodash/debounce';
import PropTypes from 'prop-types';
import React from 'react';
import ImmutablePropTypes from 'react-immutable-proptypes';
diff --git a/app/soapbox/features/scheduled_statuses/index.tsx b/app/soapbox/features/scheduled_statuses/index.tsx
index 148c9c0a4..1bf9b5aee 100644
--- a/app/soapbox/features/scheduled_statuses/index.tsx
+++ b/app/soapbox/features/scheduled_statuses/index.tsx
@@ -1,4 +1,4 @@
-import { debounce } from 'lodash';
+import debounce from 'lodash/debounce';
import React, { useEffect } from 'react';
import { defineMessages, FormattedMessage, useIntl } from 'react-intl';
@@ -47,4 +47,4 @@ const ScheduledStatuses = () => {
);
};
-export default ScheduledStatuses;
\ No newline at end of file
+export default ScheduledStatuses;
diff --git a/app/soapbox/features/ui/components/timeline.tsx b/app/soapbox/features/ui/components/timeline.tsx
index 109fa7dcb..c58d9db79 100644
--- a/app/soapbox/features/ui/components/timeline.tsx
+++ b/app/soapbox/features/ui/components/timeline.tsx
@@ -1,5 +1,5 @@
import { OrderedSet as ImmutableOrderedSet } from 'immutable';
-import { debounce } from 'lodash';
+import debounce from 'lodash/debounce';
import React, { useCallback } from 'react';
import { defineMessages } from 'react-intl';
diff --git a/app/soapbox/features/ui/index.tsx b/app/soapbox/features/ui/index.tsx
index 22037b5ab..9f5bfe503 100644
--- a/app/soapbox/features/ui/index.tsx
+++ b/app/soapbox/features/ui/index.tsx
@@ -1,6 +1,6 @@
'use strict';
-import { debounce } from 'lodash';
+import debounce from 'lodash/debounce';
import React, { useState, useEffect, useRef, useCallback } from 'react';
import { HotKeys } from 'react-hotkeys';
import { defineMessages, useIntl } from 'react-intl';
diff --git a/app/soapbox/features/video/index.js b/app/soapbox/features/video/index.js
index 423468f65..0bcb094d7 100644
--- a/app/soapbox/features/video/index.js
+++ b/app/soapbox/features/video/index.js
@@ -1,6 +1,7 @@
import classNames from 'classnames';
import { fromJS, is } from 'immutable';
-import { throttle, debounce } from 'lodash';
+import debounce from 'lodash/debounce';
+import throttle from 'lodash/throttle';
import PropTypes from 'prop-types';
import React from 'react';
import { defineMessages, injectIntl, FormattedMessage } from 'react-intl';
diff --git a/app/soapbox/normalizers/soapbox/soapbox_config.ts b/app/soapbox/normalizers/soapbox/soapbox_config.ts
index de7324e00..d9860909d 100644
--- a/app/soapbox/normalizers/soapbox/soapbox_config.ts
+++ b/app/soapbox/normalizers/soapbox/soapbox_config.ts
@@ -4,7 +4,7 @@ import {
Record as ImmutableRecord,
fromJS,
} from 'immutable';
-import { trimStart } from 'lodash';
+import trimStart from 'lodash/trimStart';
import { toTailwind } from 'soapbox/utils/tailwind';
import { generateAccent } from 'soapbox/utils/theme';
diff --git a/app/soapbox/reducers/__tests__/notifications-test.js b/app/soapbox/reducers/__tests__/notifications-test.js
index 7061c60bb..1ea296c60 100644
--- a/app/soapbox/reducers/__tests__/notifications-test.js
+++ b/app/soapbox/reducers/__tests__/notifications-test.js
@@ -3,7 +3,7 @@ import {
OrderedMap as ImmutableOrderedMap,
Record as ImmutableRecord,
} from 'immutable';
-import { take } from 'lodash';
+import take from 'lodash/take';
import intlMessages from 'soapbox/__fixtures__/intlMessages.json';
import notification from 'soapbox/__fixtures__/notification.json';
diff --git a/app/soapbox/reducers/auth.js b/app/soapbox/reducers/auth.js
index fb6338120..2f0c773cd 100644
--- a/app/soapbox/reducers/auth.js
+++ b/app/soapbox/reducers/auth.js
@@ -1,5 +1,5 @@
import { Map as ImmutableMap, List as ImmutableList, fromJS } from 'immutable';
-import { trim } from 'lodash';
+import trim from 'lodash/trim';
import { MASTODON_PRELOAD_IMPORT } from 'soapbox/actions/preload';
import { FE_SUBDIRECTORY } from 'soapbox/build_config';
diff --git a/app/soapbox/reducers/relationships.ts b/app/soapbox/reducers/relationships.ts
index aab8a6e7e..9aafa5542 100644
--- a/app/soapbox/reducers/relationships.ts
+++ b/app/soapbox/reducers/relationships.ts
@@ -1,5 +1,5 @@
import { List as ImmutableList, Map as ImmutableMap } from 'immutable';
-import { get } from 'lodash';
+import get from 'lodash/get';
import { STREAMING_FOLLOW_RELATIONSHIPS_UPDATE } from 'soapbox/actions/streaming';
import { normalizeRelationship } from 'soapbox/normalizers/relationship';
diff --git a/app/soapbox/service_worker/web_push_notifications.ts b/app/soapbox/service_worker/web_push_notifications.ts
index 9939f88a2..eefeb2b1b 100644
--- a/app/soapbox/service_worker/web_push_notifications.ts
+++ b/app/soapbox/service_worker/web_push_notifications.ts
@@ -1,6 +1,6 @@
import IntlMessageFormat from 'intl-messageformat';
import 'intl-pluralrules';
-import { unescape } from 'lodash';
+import unescape from 'lodash/unescape';
import locales from './web_push_locales';
diff --git a/app/soapbox/utils/config_db.ts b/app/soapbox/utils/config_db.ts
index 48f3118b5..8eedca515 100644
--- a/app/soapbox/utils/config_db.ts
+++ b/app/soapbox/utils/config_db.ts
@@ -4,7 +4,7 @@ import {
Set as ImmutableSet,
fromJS,
} from 'immutable';
-import { trimStart } from 'lodash';
+import trimStart from 'lodash/trimStart';
export type Config = ImmutableMap;
export type Policy = ImmutableMap;