summaryrefslogtreecommitdiff
path: root/web/source/settings/lib/query
diff options
context:
space:
mode:
authorLibravatar tobi <31960611+tsmethurst@users.noreply.github.com>2024-01-16 18:28:56 +0100
committerLibravatar GitHub <noreply@github.com>2024-01-16 18:28:56 +0100
commit486585890d674ce3e160d2a8f1e6835e181b0b08 (patch)
treea0d954f5a71f71ddfd4a243152dab10f14397f6e /web/source/settings/lib/query
parent[feature] Account alias / move API + db models (#2518) (diff)
downloadgotosocial-486585890d674ce3e160d2a8f1e6835e181b0b08.tar.xz
[feature] Move + alias account via settings panel (#2519)
* [feature] Move + alias account via settings panel * lint * type a bit more diligently
Diffstat (limited to 'web/source/settings/lib/query')
-rw-r--r--web/source/settings/lib/query/user/index.ts30
1 files changed, 30 insertions, 0 deletions
diff --git a/web/source/settings/lib/query/user/index.ts b/web/source/settings/lib/query/user/index.ts
index a7cdad2fd..8cf64197b 100644
--- a/web/source/settings/lib/query/user/index.ts
+++ b/web/source/settings/lib/query/user/index.ts
@@ -19,6 +19,10 @@
import { replaceCacheOnMutation } from "../query-modifiers";
import { gtsApi } from "../gts-api";
+import type {
+ MoveAccountFormData,
+ UpdateAliasesFormData
+} from "../../types/migration";
const extended = gtsApi.injectEndpoints({
endpoints: (build) => ({
@@ -38,6 +42,30 @@ const extended = gtsApi.injectEndpoints({
url: `/api/v1/user/password_change`,
body: data
})
+ }),
+ aliasAccount: build.mutation<any, UpdateAliasesFormData>({
+ async queryFn(formData, _api, _extraOpts, fetchWithBQ) {
+ // Pull entries out from the hooked form.
+ const entries: String[] = [];
+ formData.also_known_as_uris.forEach(entry => {
+ if (entry) {
+ entries.push(entry);
+ }
+ });
+
+ return fetchWithBQ({
+ method: "POST",
+ url: `/api/v1/accounts/alias`,
+ body: { also_known_as_uris: entries },
+ });
+ }
+ }),
+ moveAccount: build.mutation<any, MoveAccountFormData>({
+ query: (data) => ({
+ method: "POST",
+ url: `/api/v1/accounts/move`,
+ body: data
+ })
})
})
});
@@ -45,4 +73,6 @@ const extended = gtsApi.injectEndpoints({
export const {
useUpdateCredentialsMutation,
usePasswordChangeMutation,
+ useAliasAccountMutation,
+ useMoveAccountMutation,
} = extended;