[SDK] Migrate the feed api classes to the appview client (#11361)

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Samuel Newman
2026-08-13 22:26:17 +03:00
committed by GitHub
parent 4aae6b2c22
commit 6f696e4b73
14 changed files with 314 additions and 257 deletions
+11 -12
View File
@@ -1,7 +1,5 @@
import {
type AppBskyActorDefs,
type AppBskyFeedGetRepostedBy,
} from '@atproto/api'
import {type AppBskyActorDefs} from '@atproto/api'
import {type AtUriString} from '@atproto/syntax'
import {
type InfiniteData,
type QueryClient,
@@ -9,7 +7,8 @@ import {
useInfiniteQuery,
} from '@tanstack/react-query'
import {useAgent} from '#/state/session'
import {useAppviewClient} from '#/state/session'
import {app} from '#/lexicons'
const PAGE_SIZE = 30
type RQPageParam = string | undefined
@@ -19,22 +18,22 @@ const RQKEY_ROOT = 'post-reposted-by'
export const RQKEY = (resolvedUri: string) => [RQKEY_ROOT, resolvedUri]
export function usePostRepostedByQuery(resolvedUri: string | undefined) {
const agent = useAgent()
const client = useAppviewClient()
return useInfiniteQuery<
AppBskyFeedGetRepostedBy.OutputSchema,
app.bsky.feed.getRepostedBy.$OutputBody,
Error,
InfiniteData<AppBskyFeedGetRepostedBy.OutputSchema>,
InfiniteData<app.bsky.feed.getRepostedBy.$OutputBody>,
QueryKey,
RQPageParam
>({
queryKey: RQKEY(resolvedUri || ''),
async queryFn({pageParam}: {pageParam: RQPageParam}) {
const res = await agent.getRepostedBy({
uri: resolvedUri || '',
return await client.call(app.bsky.feed.getRepostedBy, {
// the enabled flag prevents this from running until resolvedUri is set
uri: (resolvedUri || '') as AtUriString,
limit: PAGE_SIZE,
cursor: pageParam,
})
return res.data
},
initialPageParam: undefined,
getNextPageParam: lastPage => lastPage.cursor,
@@ -47,7 +46,7 @@ export function* findAllProfilesInQueryData(
did: string,
): Generator<AppBskyActorDefs.ProfileView, void> {
const queryDatas = queryClient.getQueriesData<
InfiniteData<AppBskyFeedGetRepostedBy.OutputSchema>
InfiniteData<app.bsky.feed.getRepostedBy.$OutputBody>
>({
queryKey: [RQKEY_ROOT],
})