diff --git a/src/state/queries/list.ts b/src/state/queries/list.ts index c653d53765..e41fedb9b4 100644 --- a/src/state/queries/list.ts +++ b/src/state/queries/list.ts @@ -4,6 +4,7 @@ import { AppBskyGraphGetList, AppBskyGraphList, AtUri, + BskyAgent, Facet, } from '@atproto/api' import {useMutation, useQuery, useQueryClient} from '@tanstack/react-query' @@ -85,9 +86,13 @@ export function useListCreateMutation() { ) // wait for the appview to update - await whenAppViewReady(res.uri, (v: AppBskyGraphGetList.Response) => { - return typeof v?.data?.list.uri === 'string' - }) + await whenAppViewReady( + getAgent(), + res.uri, + (v: AppBskyGraphGetList.Response) => { + return typeof v?.data?.list.uri === 'string' + }, + ) return res }, onSuccess() { @@ -150,12 +155,16 @@ export function useListMetadataMutation() { ).data // wait for the appview to update - await whenAppViewReady(res.uri, (v: AppBskyGraphGetList.Response) => { - const list = v.data.list - return ( - list.name === record.name && list.description === record.description - ) - }) + await whenAppViewReady( + getAgent(), + res.uri, + (v: AppBskyGraphGetList.Response) => { + const list = v.data.list + return ( + list.name === record.name && list.description === record.description + ) + }, + ) return res }, onSuccess(data, variables) { @@ -220,9 +229,13 @@ export function useListDeleteMutation() { } // wait for the appview to update - await whenAppViewReady(uri, (v: AppBskyGraphGetList.Response) => { - return !v?.success - }) + await whenAppViewReady( + getAgent(), + uri, + (v: AppBskyGraphGetList.Response) => { + return !v?.success + }, + ) }, onSuccess() { invalidateMyLists(queryClient) @@ -244,9 +257,13 @@ export function useListMuteMutation() { await getAgent().unmuteModList(uri) } - await whenAppViewReady(uri, (v: AppBskyGraphGetList.Response) => { - return Boolean(v?.data.list.viewer?.muted) === mute - }) + await whenAppViewReady( + getAgent(), + uri, + (v: AppBskyGraphGetList.Response) => { + return Boolean(v?.data.list.viewer?.muted) === mute + }, + ) }, onSuccess(data, variables) { queryClient.invalidateQueries({ @@ -266,11 +283,15 @@ export function useListBlockMutation() { await getAgent().unblockModList(uri) } - await whenAppViewReady(uri, (v: AppBskyGraphGetList.Response) => { - return block - ? typeof v?.data.list.viewer?.blocked === 'string' - : !v?.data.list.viewer?.blocked - }) + await whenAppViewReady( + getAgent(), + uri, + (v: AppBskyGraphGetList.Response) => { + return block + ? typeof v?.data.list.viewer?.blocked === 'string' + : !v?.data.list.viewer?.blocked + }, + ) }, onSuccess(data, variables) { queryClient.invalidateQueries({ @@ -281,6 +302,7 @@ export function useListBlockMutation() { } async function whenAppViewReady( + agent: BskyAgent, uri: string, fn: (res: AppBskyGraphGetList.Response) => boolean, ) { @@ -289,7 +311,7 @@ async function whenAppViewReady( 1e3, // 1s delay between tries fn, () => - getAgent().app.bsky.graph.getList({ + agent.app.bsky.graph.getList({ list: uri, limit: 1, }), diff --git a/src/state/queries/profile.ts b/src/state/queries/profile.ts index 7842d53d4d..ea39a82541 100644 --- a/src/state/queries/profile.ts +++ b/src/state/queries/profile.ts @@ -8,6 +8,7 @@ import { AppBskyEmbedRecordWithMedia, AppBskyFeedDefs, AtUri, + BskyAgent, } from '@atproto/api' import { QueryClient, @@ -154,6 +155,7 @@ export function useProfileUpdateMutation() { return existing }) await whenAppViewReady( + getAgent(), profile.did, checkCommitted || (res => { @@ -516,6 +518,7 @@ export function precacheThreadPostProfiles( } async function whenAppViewReady( + agent: BskyAgent, actor: string, fn: (res: AppBskyActorGetProfile.Response) => boolean, ) { @@ -523,7 +526,7 @@ async function whenAppViewReady( 5, // 5 tries 1e3, // 1s delay between tries fn, - () => getAgent().app.bsky.actor.getProfile({actor}), + () => agent.app.bsky.actor.getProfile({actor}), ) }