diff --git a/app/soapbox/actions/export_data.ts b/app/soapbox/actions/export_data.ts
index de81215dd..b558c9e6e 100644
--- a/app/soapbox/actions/export_data.ts
+++ b/app/soapbox/actions/export_data.ts
@@ -1,8 +1,8 @@
import { defineMessages } from 'react-intl';
-import api, { getLinks } from '../api';
-
-import snackbar from './snackbar';
+import snackbar from 'soapbox/actions/snackbar';
+import api, { getLinks } from 'soapbox/api';
+import { normalizeAccount } from 'soapbox/normalizers';
import type { SnackbarAction } from './snackbar';
import type { AxiosResponse } from 'axios';
@@ -60,7 +60,7 @@ const listAccounts = (getState: () => RootState) => async(apiResponse: AxiosResp
Array.prototype.push.apply(followings, apiResponse.data);
}
- accounts = followings.map((account: { fqn: string }) => account.fqn);
+ accounts = followings.map((account: any) => normalizeAccount(account).fqn);
return Array.from(new Set(accounts));
};
diff --git a/app/soapbox/features/import_data/index.tsx b/app/soapbox/features/import_data/index.tsx
index b03b20f29..5d26fa0ec 100644
--- a/app/soapbox/features/import_data/index.tsx
+++ b/app/soapbox/features/import_data/index.tsx
@@ -6,8 +6,6 @@ import {
importBlocks,
importMutes,
} from 'soapbox/actions/import_data';
-import { useAppSelector } from 'soapbox/hooks';
-import { getFeatures } from 'soapbox/utils/features';
import Column from '../ui/components/column';
@@ -38,13 +36,12 @@ const muteMessages = defineMessages({
const ImportData = () => {
const intl = useIntl();
- const features = getFeatures(useAppSelector((state) => state.instance));
return (
- {features.importMutes && }
+
);
};
diff --git a/app/soapbox/features/ui/index.tsx b/app/soapbox/features/ui/index.tsx
index 0ebb8f87a..dfdcfeb9f 100644
--- a/app/soapbox/features/ui/index.tsx
+++ b/app/soapbox/features/ui/index.tsx
@@ -84,7 +84,7 @@ import {
EmailConfirmation,
DeleteAccount,
SoapboxConfig,
- ExportData,
+ // ExportData,
ImportData,
// Backups,
MfaForm,
@@ -286,8 +286,9 @@ const SwitchingColumnsArea: React.FC = ({ children }) => {
{features.scheduledStatuses && }
-
-
+ {/* FIXME: this could DDoS our API? :\ */}
+ {/* */}
+ {features.importData && }
{features.accountAliasesAPI && }
{features.accountMoving && }
diff --git a/app/soapbox/utils/features.ts b/app/soapbox/utils/features.ts
index e020456d1..e98b7262c 100644
--- a/app/soapbox/utils/features.ts
+++ b/app/soapbox/utils/features.ts
@@ -307,10 +307,12 @@ const getInstanceFeatures = (instance: Instance) => {
importAPI: v.software === PLEROMA,
/**
- * Pleroma import mutes API.
+ * Pleroma import endpoints.
+ * @see POST /api/pleroma/follow_import
+ * @see POST /api/pleroma/blocks_import
* @see POST /api/pleroma/mutes_import
*/
- importMutes: v.software === PLEROMA && gte(v.version, '2.2.0'),
+ importData: v.software === PLEROMA && gte(v.version, '2.2.0'),
/**
* Can create, view, and manage lists.