diff --git a/app/soapbox/features/explore/index.js b/app/soapbox/features/explore/index.js
deleted file mode 100644
index cf28da676..000000000
--- a/app/soapbox/features/explore/index.js
+++ /dev/null
@@ -1,9 +0,0 @@
-import React from 'react';
-
-const Explore = () => (
-
- explore
-
-);
-
-export default Explore;
diff --git a/app/soapbox/features/ui/index.js b/app/soapbox/features/ui/index.js
index d2fd18704..598a9fe04 100644
--- a/app/soapbox/features/ui/index.js
+++ b/app/soapbox/features/ui/index.js
@@ -17,14 +17,14 @@ import { register as registerPushNotifications } from 'soapbox/actions/push_noti
import { getSoapboxConfig } from 'soapbox/actions/soapbox';
import Icon from 'soapbox/components/icon';
import ThumbNavigation from 'soapbox/components/thumb_navigation';
-// import AdminPage from 'soapbox/pages/admin_page';
+import AdminPage from 'soapbox/pages/admin_page';
import DefaultPage from 'soapbox/pages/default_page';
// import GroupsPage from 'soapbox/pages/groups_page';
// import GroupPage from 'soapbox/pages/group_page';
import EmptyPage from 'soapbox/pages/default_page';
import HomePage from 'soapbox/pages/home_page';
import ProfilePage from 'soapbox/pages/profile_page';
-// import RemoteInstancePage from 'soapbox/pages/remote_instance_page';
+import RemoteInstancePage from 'soapbox/pages/remote_instance_page';
import StatusPage from 'soapbox/pages/status_page';
import { isStaff, isAdmin } from 'soapbox/utils/accounts';
import { getAccessToken } from 'soapbox/utils/auth';
@@ -32,7 +32,7 @@ import { getVapidKey } from 'soapbox/utils/auth';
import { getFeatures } from 'soapbox/utils/features';
import SoapboxPropTypes from 'soapbox/utils/soapbox_prop_types';
-// import { fetchFollowRequests } from '../../actions/accounts';
+import { fetchFollowRequests } from '../../actions/accounts';
import { fetchReports, fetchUsers, fetchConfig } from '../../actions/admin';
import { uploadCompose, resetCompose } from '../../actions/compose';
import { fetchFilters } from '../../actions/filters';
@@ -50,9 +50,9 @@ import Navbar from './components/navbar';
import BundleContainer from './containers/bundle_container';
import {
Status,
- // CommunityTimeline,
- // PublicTimeline,
- // RemoteTimeline,
+ CommunityTimeline,
+ PublicTimeline,
+ RemoteTimeline,
AccountTimeline,
AccountGallery,
HomeTimeline,
@@ -62,21 +62,20 @@ import {
Conversations,
HashtagTimeline,
Notifications,
- // FollowRequests,
+ FollowRequests,
GenericNotFound,
FavouritedStatuses,
Blocks,
- // DomainBlocks,
+ DomainBlocks,
Mutes,
- // Filters,
+ Filters,
PinnedStatuses,
Search,
- // Explore,
// Groups,
// GroupTimeline,
- // ListTimeline,
- // Lists,
- // Bookmarks,
+ ListTimeline,
+ Lists,
+ Bookmarks,
// GroupMembers,
// GroupRemovedAccounts,
// GroupCreate,
@@ -94,22 +93,22 @@ import {
// ImportData,
// Backups,
MfaForm,
- // ChatIndex,
- // ChatRoom,
+ ChatIndex,
+ ChatRoom,
ChatPanes,
- // ServerInfo,
- // Dashboard,
- // AwaitingApproval,
- // Reports,
- // ModerationLog,
+ ServerInfo,
+ Dashboard,
+ AwaitingApproval,
+ Reports,
+ ModerationLog,
CryptoDonate,
- // ScheduledStatuses,
- // UserIndex,
- // FederationRestrictions,
- // Aliases,
- // Migration,
+ ScheduledStatuses,
+ UserIndex,
+ FederationRestrictions,
+ Aliases,
+ Migration,
FollowRecommendations,
- // Directory,
+ Directory,
SidebarMenu,
UploadArea,
NotificationsContainer,
@@ -221,6 +220,7 @@ class SwitchingColumnsArea extends React.PureComponent {
render() {
const { children, soapbox, features } = this.props;
const authenticatedProfile = soapbox.get('authenticatedProfile');
+ const hasCrypto = soapbox.get('cryptoAddresses').size > 0;
return (
@@ -229,11 +229,13 @@ class SwitchingColumnsArea extends React.PureComponent {
- {/*
-
-
-
- */}
+
+ // NOTE: we cannot nest routes in a fragment
+ // https://stackoverflow.com/a/68637108
+ {features.federating && }
+ {features.federating && }
+ {features.federating && }
+
@@ -274,28 +276,24 @@ class SwitchingColumnsArea extends React.PureComponent {
- {/*
-
-
-
- */}
+ {features.lists && }
+ {features.lists && }
+ {features.bookmarks && }
-
- {/* */}
+ {features.suggestions && }
+ {features.profileDirectory && }
- {/*
-
-
- */}
+ {features.chats && }
+ {features.chats && }
- {/* */}
+
- {/* */}
+ {features.federating && }
- {/* */}
+ {features.filters && }
@@ -309,7 +307,7 @@ class SwitchingColumnsArea extends React.PureComponent {
- {/* */}
+ {features.scheduledStatuses && }
@@ -322,8 +320,8 @@ class SwitchingColumnsArea extends React.PureComponent {
{/* */}
{/* */}
- {/* */}
- {/* */}
+ {features.accountAliasesAPI && }
+ {features.accountMoving && }
@@ -332,7 +330,6 @@ class SwitchingColumnsArea extends React.PureComponent {
{/* */}
- {/*
@@ -340,17 +337,14 @@ class SwitchingColumnsArea extends React.PureComponent {
- */}
-
- {/*
-
- */}
+ {hasCrypto && }
+ {features.federating && }
@@ -512,9 +506,9 @@ class UI extends React.PureComponent {
setTimeout(() => dispatch(fetchFilters()), 500);
- // if (account.get('locked')) {
- // setTimeout(() => dispatch(fetchFollowRequests()), 700);
- // }
+ if (account.locked) {
+ setTimeout(() => dispatch(fetchFollowRequests()), 700);
+ }
setTimeout(() => dispatch(fetchScheduledStatuses()), 900);
}
diff --git a/app/soapbox/features/ui/util/async-components.js b/app/soapbox/features/ui/util/async-components.js
index 24dc2f256..69d3d401d 100644
--- a/app/soapbox/features/ui/util/async-components.js
+++ b/app/soapbox/features/ui/util/async-components.js
@@ -238,10 +238,6 @@ export function Search() {
return import(/*webpackChunkName: "features/search" */'../../search');
}
-export function Explore() {
- return import(/* webpackChunkName: "features/explore" */'../../explore');
-}
-
export function LoginPage() {
return import(/* webpackChunkName: "features/auth_login" */'../../auth_login/components/login_page');
}