Skip to content

Commit 37bc255

Browse files
committed
feat: markets example
1 parent 02572ca commit 37bc255

File tree

4 files changed

+21
-23
lines changed

4 files changed

+21
-23
lines changed

examples/create-app/package.json

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,15 @@
99
},
1010
"dependencies": {
1111
"@aave/react": "workspace:*",
12-
"react": "^18.3.1",
13-
"react-dom": "^18.3.1"
12+
"@aave/types": "workspace:*",
13+
"@aave/env": "workspace:*",
14+
"@aave/client": "workspace:*",
15+
"react": "^19.1.0",
16+
"react-dom": "^19.1.0"
1417
},
1518
"devDependencies": {
16-
"@types/react": "^18.3.12",
17-
"@types/react-dom": "^18.3.1",
19+
"@types/react": "^19.1.8",
20+
"@types/react-dom": "^19.1.6",
1821
"@vitejs/plugin-react-swc": "^3.7.2",
1922
"typescript": "^5.6.3",
2023
"vite": "^5.4.9"

examples/create-app/src/App.tsx

Lines changed: 8 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2,24 +2,21 @@ import { AaveProvider, useAaveChains, useAaveMarkets } from '@aave/react';
22
import { chainId } from '@aave/types';
33
import { client } from './client';
44

5-
console.log("client", client);
65

76
function MarketDisplay() {
87
const { data: markets, loading, error } = useAaveMarkets({
9-
chainIds: [chainId(1)], // Mainnet
8+
chainIds: [chainId(1)]
109
});
1110

12-
const { data: chains, loading: chainsLoading, error: chainsError } = useAaveChains();
13-
14-
console.log("chains", chains);
15-
console.log("markets", markets);
1611
if (loading) return <div>Loading mainnet market...</div>;
17-
console.error("error", error);
1812

1913
if (error) return <div>Error loading market</div>;
2014
if (!markets || markets.length === 0) return <div>No markets found</div>;
2115

22-
const mainnetMarket = markets[0];
16+
17+
const mainnetMarket = markets.find((market: any) => market.name === "AaveV3Ethereum");
18+
19+
if (!mainnetMarket) return <div>Mainnet market not found</div>;
2320

2421
return (
2522
<div>
@@ -36,9 +33,9 @@ function MarketDisplay() {
3633

3734
{mainnetMarket.supplyReserves && mainnetMarket.supplyReserves.length > 0 && (
3835
<div>
39-
<h3>First few supply reserves:</h3>
36+
<h3>Supply Reserves:</h3>
4037
<ul>
41-
{mainnetMarket.supplyReserves.slice(0, 3).map((reserve: any, index: number) => (
38+
{mainnetMarket.supplyReserves.map((reserve: any, index: number) => (
4239
<li key={index}>
4340
{reserve.underlyingToken.name} ({reserve.underlyingToken.symbol})
4441
</li>
@@ -55,12 +52,9 @@ export function App() {
5552
return (
5653
<AaveProvider client={client}>
5754
<header>
58-
<h1>example-create-app</h1>
55+
<h1>Fetching Aave Markets</h1>
5956
</header>
6057
<div>
61-
<p>
62-
Edit <code>src/App.tsx</code>.
63-
</p>
6458
<MarketDisplay />
6559
</div>
6660
</AaveProvider>

packages/client/src/actions/markets.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ import type { ChainId, EvmAddress, ResultAsync } from '@aave/types';
1212
import type { AaveClient } from '../client';
1313
import type { UnexpectedError } from '../errors';
1414

15-
const defaultMarketReservesRequestOrderBy: MarketReservesRequestOrderBy = {
15+
export const defaultMarketReservesRequestOrderBy: MarketReservesRequestOrderBy = {
1616
tokenName: OrderDirection.Asc,
1717
};
1818

packages/react/src/markets.ts

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import type { MarketRequest, MarketsRequest } from '@aave/client/actions';
2+
import { defaultMarketReservesRequestOrderBy } from '@aave/client/actions';
23
import { type Market, MarketQuery, MarketsQuery } from '@aave/graphql';
34
import type {
45
ReadResult,
@@ -46,8 +47,8 @@ export function useAaveMarket({
4647
address,
4748
chainId,
4849
user,
49-
borrowsOrderBy,
50-
suppliesOrderBy,
50+
borrowsOrderBy = defaultMarketReservesRequestOrderBy,
51+
suppliesOrderBy = defaultMarketReservesRequestOrderBy,
5152
}: UseAaveMarketArgs & {
5253
suspense?: boolean;
5354
}): SuspendableResult<Market | null> {
@@ -97,8 +98,8 @@ export function useAaveMarkets({
9798
suspense = false,
9899
chainIds,
99100
user,
100-
borrowsOrderBy,
101-
suppliesOrderBy,
101+
borrowsOrderBy = defaultMarketReservesRequestOrderBy,
102+
suppliesOrderBy = defaultMarketReservesRequestOrderBy,
102103
}: UseAaveMarketsArgs & {
103104
suspense?: boolean;
104105
}): SuspendableResult<Market[]> {

0 commit comments

Comments
 (0)