Depends on: #100
Migrate the paginated bounty list hooks from REST to GraphQL.
Files to modify
hooks/use-bounties.ts — use useBountiesQuery from generated hooks
hooks/use-infinite-bounties.ts — adapt to GraphQL's PaginatedBounties response shape (bounties[], total, limit, offset) instead of the current PaginatedResponse<Bounty> shape (data[], pagination)
hooks/use-bounty-search.ts — use the bounties query with search variable
Tasks
Acceptance Criteria
- Bounty list, infinite scroll, and search all use GraphQL
- No REST calls remain for listing bounties
Depends on: #100
Migrate the paginated bounty list hooks from REST to GraphQL.
Files to modify
hooks/use-bounties.ts— useuseBountiesQueryfrom generated hookshooks/use-infinite-bounties.ts— adapt to GraphQL'sPaginatedBountiesresponse shape (bounties[],total,limit,offset) instead of the currentPaginatedResponse<Bounty>shape (data[],pagination)hooks/use-bounty-search.ts— use thebountiesquery withsearchvariableTasks
bountiesApi.list(params)with the codegenuseBountiesQuery({ query: params })PaginatedBountiesresponse ({ bounties, total, limit, offset }) to what the UI expectsuseInfiniteBountiesto useuseInfiniteQuerywith the GraphQLbountiesquery, paginating via thepagevariableuseBountySearchto use the GraphQLbountiesquery with{ search }filterAcceptance Criteria