File tree Expand file tree Collapse file tree 3 files changed +68
-1
lines changed
Expand file tree Collapse file tree 3 files changed +68
-1
lines changed Original file line number Diff line number Diff line change 11import {
22 type MarketUserReserveBorrowPosition ,
33 type MarketUserReserveSupplyPosition ,
4+ type PaginatedUserTransactionHistoryResult ,
45 UserBorrowsQuery ,
56 type UserBorrowsRequest ,
67 UserSuppliesQuery ,
78 type UserSuppliesRequest ,
9+ UserTransactionHistoryQuery ,
810} from '@aave/graphql' ;
911import type { ResultAsync } from '@aave/types' ;
1012import type { AaveClient } from '../client' ;
@@ -51,3 +53,19 @@ export function userBorrows(
5153) : ResultAsync < MarketUserReserveBorrowPosition [ ] , UnexpectedError > {
5254 return client . query ( UserBorrowsQuery , { request } ) ;
5355}
56+
57+ /**
58+ * Fetches the user's transaction history.
59+ *
60+ * ```ts
61+ * const result = await userTransactionHistory(client);
62+ * ```
63+ *
64+ * @param client - Aave client.
65+ * @returns The user's paginated transaction history.
66+ */
67+ export function userTransactionHistory (
68+ client : AaveClient ,
69+ ) : ResultAsync < PaginatedUserTransactionHistoryResult , UnexpectedError > {
70+ return client . query ( UserTransactionHistoryQuery , { } ) ;
71+ }
Original file line number Diff line number Diff line change 11import {
22 MarketUserReserveBorrowPositionFragment ,
33 MarketUserReserveSupplyPositionFragment ,
4+ PaginatedUserTransactionHistoryResultFragment ,
45} from './fragments' ;
56import { graphql , type RequestOf } from './graphql' ;
67
@@ -12,7 +13,6 @@ export const UserSuppliesQuery = graphql(
1213 }` ,
1314 [ MarketUserReserveSupplyPositionFragment ] ,
1415) ;
15- export type UserSuppliesRequest = RequestOf < typeof UserSuppliesQuery > ;
1616
1717export const UserBorrowsQuery = graphql (
1818 `query UserBorrows($request: UserBorrowsRequest!) {
@@ -23,3 +23,14 @@ export const UserBorrowsQuery = graphql(
2323 [ MarketUserReserveBorrowPositionFragment ] ,
2424) ;
2525export type UserBorrowsRequest = RequestOf < typeof UserBorrowsQuery > ;
26+
27+ export const UserTransactionHistoryQuery = graphql (
28+ `query UserTransactionHistory {
29+ value: userTransactionHistory {
30+ ...PaginatedUserTransactionHistoryResult
31+ }
32+ }` ,
33+ [ PaginatedUserTransactionHistoryResultFragment ] ,
34+ ) ;
35+
36+ export type UserSuppliesRequest = RequestOf < typeof UserSuppliesQuery > ;
Original file line number Diff line number Diff line change @@ -2,6 +2,7 @@ import type {
22 MarketUserReserveBorrowPosition ,
33 MarketUserReserveSupplyPosition ,
44 MarketUserState ,
5+ PaginatedUserTransactionHistoryResult ,
56 UserBorrowsRequest ,
67 UserMarketStateRequest ,
78 UserSuppliesRequest ,
@@ -10,6 +11,7 @@ import {
1011 UserBorrowsQuery ,
1112 UserMarketStateQuery ,
1213 UserSuppliesQuery ,
14+ UserTransactionHistoryQuery ,
1315} from '@aave/graphql' ;
1416import type {
1517 ReadResult ,
@@ -175,3 +177,39 @@ export function useUserMarketState({
175177 suspense,
176178 } ) ;
177179}
180+
181+ /**
182+ * Fetch user transaction history.
183+ *
184+ * This signature supports React Suspense:
185+ *
186+ * ```tsx
187+ * const { data } = useUserTransactionHistory({
188+ * suspense: true,
189+ * });
190+ * ```
191+ */
192+ export function useUserTransactionHistory (
193+ args : Suspendable ,
194+ ) : SuspenseResult < PaginatedUserTransactionHistoryResult > ;
195+
196+ /**
197+ * Fetch user transaction history.
198+ *
199+ * ```tsx
200+ * const { data, loading } = useUserTransactionHistory();
201+ * ```
202+ */
203+ export function useUserTransactionHistory ( ) : ReadResult < PaginatedUserTransactionHistoryResult > ;
204+
205+ export function useUserTransactionHistory ( {
206+ suspense = false ,
207+ } : {
208+ suspense ?: boolean ;
209+ } = { } ) : SuspendableResult < PaginatedUserTransactionHistoryResult > {
210+ return useSuspendableQuery ( {
211+ document : UserTransactionHistoryQuery ,
212+ variables : { } ,
213+ suspense,
214+ } ) ;
215+ }
You can’t perform that action at this time.
0 commit comments