@andrewkimjoseph/celina-sdk 0.27.5 → 0.27.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/abis/aave-data-provider.d.ts +17 -0
- package/build/abis/aave-data-provider.js +14 -0
- package/build/abis/aave-data-provider.js.map +1 -0
- package/build/config/aave.d.ts +2 -0
- package/build/config/aave.js +2 -0
- package/build/config/aave.js.map +1 -1
- package/build/services/aave.service.d.ts +7 -0
- package/build/services/aave.service.js +31 -1
- package/build/services/aave.service.js.map +1 -1
- package/build/src/abis/aave-data-provider.d.ts +17 -0
- package/build/src/abis/aave-data-provider.js +14 -0
- package/build/src/abis/aave-data-provider.js.map +1 -0
- package/build/src/config/aave.d.ts +2 -0
- package/build/src/config/aave.js +2 -0
- package/build/src/config/aave.js.map +1 -1
- package/build/src/services/aave.service.d.ts +7 -0
- package/build/src/services/aave.service.js +31 -1
- package/build/src/services/aave.service.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/** Minimal Aave V3 AaveProtocolDataProvider ABI — reserve supply/borrow cap reads. */
|
|
2
|
+
export declare const aaveDataProviderAbi: readonly [{
|
|
3
|
+
readonly type: "function";
|
|
4
|
+
readonly name: "getReserveCaps";
|
|
5
|
+
readonly inputs: readonly [{
|
|
6
|
+
readonly name: "asset";
|
|
7
|
+
readonly type: "address";
|
|
8
|
+
}];
|
|
9
|
+
readonly outputs: readonly [{
|
|
10
|
+
readonly name: "borrowCap";
|
|
11
|
+
readonly type: "uint256";
|
|
12
|
+
}, {
|
|
13
|
+
readonly name: "supplyCap";
|
|
14
|
+
readonly type: "uint256";
|
|
15
|
+
}];
|
|
16
|
+
readonly stateMutability: "view";
|
|
17
|
+
}];
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/** Minimal Aave V3 AaveProtocolDataProvider ABI — reserve supply/borrow cap reads. */
|
|
2
|
+
export const aaveDataProviderAbi = [
|
|
3
|
+
{
|
|
4
|
+
type: "function",
|
|
5
|
+
name: "getReserveCaps",
|
|
6
|
+
inputs: [{ name: "asset", type: "address" }],
|
|
7
|
+
outputs: [
|
|
8
|
+
{ name: "borrowCap", type: "uint256" },
|
|
9
|
+
{ name: "supplyCap", type: "uint256" },
|
|
10
|
+
],
|
|
11
|
+
stateMutability: "view",
|
|
12
|
+
},
|
|
13
|
+
];
|
|
14
|
+
//# sourceMappingURL=aave-data-provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aave-data-provider.js","sourceRoot":"","sources":["../../src/abis/aave-data-provider.ts"],"names":[],"mappings":"AAAA,sFAAsF;AACtF,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,gBAAgB;QACtB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC5C,OAAO,EAAE;YACP,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE;YACtC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE;SACvC;QACD,eAAe,EAAE,MAAM;KACxB;CACO,CAAC"}
|
package/build/config/aave.d.ts
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
/** Aave V3 on Celo mainnet — from bgd-labs/aave-address-book AaveV3Celo */
|
|
2
2
|
export declare const AAVE_POOL: "0x3E59A31363E2ad014dcbc521c4a0d5757d9f3402";
|
|
3
3
|
export declare const AAVE_CHAIN_ID = 42220;
|
|
4
|
+
/** Aave V3 Celo protocol data provider — exposes per-reserve supply/borrow caps. */
|
|
5
|
+
export declare const AAVE_PROTOCOL_DATA_PROVIDER: "0x2e0f8D3B1631296cC7c56538D6Eb6032601E15ED";
|
|
4
6
|
/** Underlying and aToken addresses for one Aave V3 market on Celo. */
|
|
5
7
|
export type AaveAsset = {
|
|
6
8
|
symbol: string;
|
package/build/config/aave.js
CHANGED
|
@@ -6,6 +6,8 @@ const HEX_ADDRESS_RE = /^0x[a-fA-F0-9]{40}$/;
|
|
|
6
6
|
/** Aave V3 on Celo mainnet — from bgd-labs/aave-address-book AaveV3Celo */
|
|
7
7
|
export const AAVE_POOL = "0x3E59A31363E2ad014dcbc521c4a0d5757d9f3402";
|
|
8
8
|
export const AAVE_CHAIN_ID = 42220;
|
|
9
|
+
/** Aave V3 Celo protocol data provider — exposes per-reserve supply/borrow caps. */
|
|
10
|
+
export const AAVE_PROTOCOL_DATA_PROVIDER = "0x2e0f8D3B1631296cC7c56538D6Eb6032601E15ED";
|
|
9
11
|
export const AAVE_ASSETS = {
|
|
10
12
|
USDT: {
|
|
11
13
|
symbol: "USDT",
|
package/build/config/aave.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aave.js","sourceRoot":"","sources":["../../src/config/aave.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,MAAM,cAAc,GAAG,qBAAqB,CAAC;AAE7C,2EAA2E;AAC3E,MAAM,CAAC,MAAM,SAAS,GAAG,4CAAqD,CAAC;AAC/E,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"aave.js","sourceRoot":"","sources":["../../src/config/aave.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,MAAM,cAAc,GAAG,qBAAqB,CAAC;AAE7C,2EAA2E;AAC3E,MAAM,CAAC,MAAM,SAAS,GAAG,4CAAqD,CAAC;AAC/E,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,CAAC;AAEnC,oFAAoF;AACpF,MAAM,CAAC,MAAM,2BAA2B,GACtC,4CAAqD,CAAC;AASxD,MAAM,CAAC,MAAM,WAAW,GAA8B;IACpD,IAAI,EAAE;QACJ,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,4CAA4C;QACxD,MAAM,EAAE,4CAA4C;KACrD;IACD,IAAI,EAAE;QACJ,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,4CAA4C;QACxD,MAAM,EAAE,4CAA4C;KACrD;IACD,IAAI,EAAE;QACJ,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,4CAA4C;QACxD,MAAM,EAAE,4CAA4C;KACrD;IACD,IAAI,EAAE;QACJ,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,4CAA4C;QACxD,MAAM,EAAE,4CAA4C;KACrD;IACD,IAAI,EAAE;QACJ,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,4CAA4C;QACxD,MAAM,EAAE,4CAA4C;KACrD;IACD,IAAI,EAAE;QACJ,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,4CAA4C;QACxD,MAAM,EAAE,4CAA4C;KACrD;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;CACE,CAAC;AAEX;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa;IAC5C,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAChC,MAAM,KAAK,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC;IAEzC,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,aAAa,GAAG,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAChD,IAAI,aAAa,EAAE,CAAC;YAClB,OAAO,aAAa,CAAC;QACvB,CAAC;IACH,CAAC;IAED,IAAI,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QACpC,MAAM,KAAK,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC;QACvC,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAC/C,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,UAAU,CAAC,WAAW,EAAE,KAAK,KAAK;YACxC,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,KAAK,CACvC,CAAC;QACF,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAC9C,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,UAAU,CAAC,WAAW,EAAE,CACnE,CAAC;IACF,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,MAAM,IAAI,KAAK,CACb,UAAU,KAAK,kDAAkD,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CACtG,CAAC;AACJ,CAAC"}
|
|
@@ -8,6 +8,13 @@ export declare class AaveService {
|
|
|
8
8
|
constructor(clientFactory: CeloClientFactory);
|
|
9
9
|
private getPublicClient;
|
|
10
10
|
private assertUnderlyingBalance;
|
|
11
|
+
/**
|
|
12
|
+
* Reject early when the Aave reserve's supply cap would be exceeded.
|
|
13
|
+
* Checked before any approve/supply step is built, so the error surfaces
|
|
14
|
+
* before the user ever signs a transaction. A `supplyCap` of 0 means
|
|
15
|
+
* Aave has no cap configured for this reserve.
|
|
16
|
+
*/
|
|
17
|
+
private assertSupplyCapAvailable;
|
|
11
18
|
private readATokenBalance;
|
|
12
19
|
private assertATokenBalance;
|
|
13
20
|
/**
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
/** Aave V3 on Celo: prepareSupply and prepareWithdraw return multi-step flows (approve + pool call). */
|
|
2
2
|
import { encodeFunctionData, erc20Abi, formatUnits } from "viem";
|
|
3
|
+
import { aaveDataProviderAbi } from "../abis/aave-data-provider.js";
|
|
3
4
|
import { aavePoolAbi } from "../abis/aave-pool.js";
|
|
4
|
-
import { AAVE_ASSETS, AAVE_POOL, resolveAaveAsset, } from "../config/aave.js";
|
|
5
|
+
import { AAVE_ASSETS, AAVE_POOL, AAVE_PROTOCOL_DATA_PROVIDER, resolveAaveAsset, } from "../config/aave.js";
|
|
5
6
|
import { appendCelinaCalldataTag } from "../config/celina-tag.js";
|
|
6
7
|
import { serializePreparedFlow, } from "../types/prepared.js";
|
|
7
8
|
import { CHAIN } from "../config/chains.js";
|
|
@@ -35,6 +36,34 @@ export class AaveService {
|
|
|
35
36
|
throw new Error(`Insufficient ${asset.symbol} balance. Required ${amount} ${asset.symbol}, available ${balance.toString()} raw units.${celoHint}`);
|
|
36
37
|
}
|
|
37
38
|
}
|
|
39
|
+
/**
|
|
40
|
+
* Reject early when the Aave reserve's supply cap would be exceeded.
|
|
41
|
+
* Checked before any approve/supply step is built, so the error surfaces
|
|
42
|
+
* before the user ever signs a transaction. A `supplyCap` of 0 means
|
|
43
|
+
* Aave has no cap configured for this reserve.
|
|
44
|
+
*/
|
|
45
|
+
async assertSupplyCapAvailable(asset, publicClient, amountWei, decimals) {
|
|
46
|
+
const [, supplyCap] = await publicClient.readContract({
|
|
47
|
+
address: AAVE_PROTOCOL_DATA_PROVIDER,
|
|
48
|
+
abi: aaveDataProviderAbi,
|
|
49
|
+
functionName: "getReserveCaps",
|
|
50
|
+
args: [asset.underlying],
|
|
51
|
+
});
|
|
52
|
+
if (supplyCap === 0n) {
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
const supplyCapWei = supplyCap * 10n ** BigInt(decimals);
|
|
56
|
+
const totalSupply = await publicClient.readContract({
|
|
57
|
+
address: asset.aToken,
|
|
58
|
+
abi: erc20Abi,
|
|
59
|
+
functionName: "totalSupply",
|
|
60
|
+
});
|
|
61
|
+
if (totalSupply + amountWei > supplyCapWei) {
|
|
62
|
+
const available = supplyCapWei > totalSupply ? supplyCapWei - totalSupply : 0n;
|
|
63
|
+
const availableFormatted = formatUnits(available, decimals);
|
|
64
|
+
throw new Error(`Aave ${asset.symbol} supply cap reached. Only ${availableFormatted} ${asset.symbol} can still be supplied to this market.`);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
38
67
|
async readATokenBalance(asset, publicClient, owner) {
|
|
39
68
|
return publicClient.readContract({
|
|
40
69
|
address: asset.aToken,
|
|
@@ -125,6 +154,7 @@ export class AaveService {
|
|
|
125
154
|
await this.assertUnderlyingBalance(asset, publicClient, from, amount);
|
|
126
155
|
const resolved = this.tokenService.resolveToken(asset.symbol);
|
|
127
156
|
const amountWei = this.tokenService.parseAmount(amount, resolved.decimals);
|
|
157
|
+
await this.assertSupplyCapAvailable(asset, publicClient, amountWei, resolved.decimals);
|
|
128
158
|
const steps = [];
|
|
129
159
|
if (await this.needsApproval(asset.underlying, from, amountWei)) {
|
|
130
160
|
const approveData = appendCelinaCalldataTag(encodeFunctionData({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aave.service.js","sourceRoot":"","sources":["../../src/services/aave.service.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"aave.service.js","sourceRoot":"","sources":["../../src/services/aave.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/** Minimal Aave V3 AaveProtocolDataProvider ABI — reserve supply/borrow cap reads. */
|
|
2
|
+
export declare const aaveDataProviderAbi: readonly [{
|
|
3
|
+
readonly type: "function";
|
|
4
|
+
readonly name: "getReserveCaps";
|
|
5
|
+
readonly inputs: readonly [{
|
|
6
|
+
readonly name: "asset";
|
|
7
|
+
readonly type: "address";
|
|
8
|
+
}];
|
|
9
|
+
readonly outputs: readonly [{
|
|
10
|
+
readonly name: "borrowCap";
|
|
11
|
+
readonly type: "uint256";
|
|
12
|
+
}, {
|
|
13
|
+
readonly name: "supplyCap";
|
|
14
|
+
readonly type: "uint256";
|
|
15
|
+
}];
|
|
16
|
+
readonly stateMutability: "view";
|
|
17
|
+
}];
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/** Minimal Aave V3 AaveProtocolDataProvider ABI — reserve supply/borrow cap reads. */
|
|
2
|
+
export const aaveDataProviderAbi = [
|
|
3
|
+
{
|
|
4
|
+
type: "function",
|
|
5
|
+
name: "getReserveCaps",
|
|
6
|
+
inputs: [{ name: "asset", type: "address" }],
|
|
7
|
+
outputs: [
|
|
8
|
+
{ name: "borrowCap", type: "uint256" },
|
|
9
|
+
{ name: "supplyCap", type: "uint256" },
|
|
10
|
+
],
|
|
11
|
+
stateMutability: "view",
|
|
12
|
+
},
|
|
13
|
+
];
|
|
14
|
+
//# sourceMappingURL=aave-data-provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aave-data-provider.js","sourceRoot":"","sources":["../../../src/abis/aave-data-provider.ts"],"names":[],"mappings":"AAAA,sFAAsF;AACtF,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,gBAAgB;QACtB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC5C,OAAO,EAAE;YACP,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE;YACtC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE;SACvC;QACD,eAAe,EAAE,MAAM;KACxB;CACO,CAAC"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
/** Aave V3 on Celo mainnet — from bgd-labs/aave-address-book AaveV3Celo */
|
|
2
2
|
export declare const AAVE_POOL: "0x3E59A31363E2ad014dcbc521c4a0d5757d9f3402";
|
|
3
3
|
export declare const AAVE_CHAIN_ID = 42220;
|
|
4
|
+
/** Aave V3 Celo protocol data provider — exposes per-reserve supply/borrow caps. */
|
|
5
|
+
export declare const AAVE_PROTOCOL_DATA_PROVIDER: "0x2e0f8D3B1631296cC7c56538D6Eb6032601E15ED";
|
|
4
6
|
/** Underlying and aToken addresses for one Aave V3 market on Celo. */
|
|
5
7
|
export type AaveAsset = {
|
|
6
8
|
symbol: string;
|
package/build/src/config/aave.js
CHANGED
|
@@ -6,6 +6,8 @@ const HEX_ADDRESS_RE = /^0x[a-fA-F0-9]{40}$/;
|
|
|
6
6
|
/** Aave V3 on Celo mainnet — from bgd-labs/aave-address-book AaveV3Celo */
|
|
7
7
|
export const AAVE_POOL = "0x3E59A31363E2ad014dcbc521c4a0d5757d9f3402";
|
|
8
8
|
export const AAVE_CHAIN_ID = 42220;
|
|
9
|
+
/** Aave V3 Celo protocol data provider — exposes per-reserve supply/borrow caps. */
|
|
10
|
+
export const AAVE_PROTOCOL_DATA_PROVIDER = "0x2e0f8D3B1631296cC7c56538D6Eb6032601E15ED";
|
|
9
11
|
export const AAVE_ASSETS = {
|
|
10
12
|
USDT: {
|
|
11
13
|
symbol: "USDT",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aave.js","sourceRoot":"","sources":["../../../src/config/aave.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,MAAM,cAAc,GAAG,qBAAqB,CAAC;AAE7C,2EAA2E;AAC3E,MAAM,CAAC,MAAM,SAAS,GAAG,4CAAqD,CAAC;AAC/E,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"aave.js","sourceRoot":"","sources":["../../../src/config/aave.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,MAAM,cAAc,GAAG,qBAAqB,CAAC;AAE7C,2EAA2E;AAC3E,MAAM,CAAC,MAAM,SAAS,GAAG,4CAAqD,CAAC;AAC/E,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,CAAC;AAEnC,oFAAoF;AACpF,MAAM,CAAC,MAAM,2BAA2B,GACtC,4CAAqD,CAAC;AASxD,MAAM,CAAC,MAAM,WAAW,GAA8B;IACpD,IAAI,EAAE;QACJ,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,4CAA4C;QACxD,MAAM,EAAE,4CAA4C;KACrD;IACD,IAAI,EAAE;QACJ,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,4CAA4C;QACxD,MAAM,EAAE,4CAA4C;KACrD;IACD,IAAI,EAAE;QACJ,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,4CAA4C;QACxD,MAAM,EAAE,4CAA4C;KACrD;IACD,IAAI,EAAE;QACJ,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,4CAA4C;QACxD,MAAM,EAAE,4CAA4C;KACrD;IACD,IAAI,EAAE;QACJ,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,4CAA4C;QACxD,MAAM,EAAE,4CAA4C;KACrD;IACD,IAAI,EAAE;QACJ,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,4CAA4C;QACxD,MAAM,EAAE,4CAA4C;KACrD;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;CACE,CAAC;AAEX;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa;IAC5C,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAChC,MAAM,KAAK,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC;IAEzC,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,aAAa,GAAG,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAChD,IAAI,aAAa,EAAE,CAAC;YAClB,OAAO,aAAa,CAAC;QACvB,CAAC;IACH,CAAC;IAED,IAAI,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QACpC,MAAM,KAAK,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC;QACvC,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAC/C,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,UAAU,CAAC,WAAW,EAAE,KAAK,KAAK;YACxC,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,KAAK,CACvC,CAAC;QACF,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAC9C,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,UAAU,CAAC,WAAW,EAAE,CACnE,CAAC;IACF,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,MAAM,IAAI,KAAK,CACb,UAAU,KAAK,kDAAkD,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CACtG,CAAC;AACJ,CAAC"}
|
|
@@ -8,6 +8,13 @@ export declare class AaveService {
|
|
|
8
8
|
constructor(clientFactory: CeloClientFactory);
|
|
9
9
|
private getPublicClient;
|
|
10
10
|
private assertUnderlyingBalance;
|
|
11
|
+
/**
|
|
12
|
+
* Reject early when the Aave reserve's supply cap would be exceeded.
|
|
13
|
+
* Checked before any approve/supply step is built, so the error surfaces
|
|
14
|
+
* before the user ever signs a transaction. A `supplyCap` of 0 means
|
|
15
|
+
* Aave has no cap configured for this reserve.
|
|
16
|
+
*/
|
|
17
|
+
private assertSupplyCapAvailable;
|
|
11
18
|
private readATokenBalance;
|
|
12
19
|
private assertATokenBalance;
|
|
13
20
|
/**
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
/** Aave V3 on Celo: prepareSupply and prepareWithdraw return multi-step flows (approve + pool call). */
|
|
2
2
|
import { encodeFunctionData, erc20Abi, formatUnits } from "viem";
|
|
3
|
+
import { aaveDataProviderAbi } from "../abis/aave-data-provider.js";
|
|
3
4
|
import { aavePoolAbi } from "../abis/aave-pool.js";
|
|
4
|
-
import { AAVE_ASSETS, AAVE_POOL, resolveAaveAsset, } from "../config/aave.js";
|
|
5
|
+
import { AAVE_ASSETS, AAVE_POOL, AAVE_PROTOCOL_DATA_PROVIDER, resolveAaveAsset, } from "../config/aave.js";
|
|
5
6
|
import { appendCelinaCalldataTag } from "../config/celina-tag.js";
|
|
6
7
|
import { serializePreparedFlow, } from "../types/prepared.js";
|
|
7
8
|
import { CHAIN } from "../config/chains.js";
|
|
@@ -35,6 +36,34 @@ export class AaveService {
|
|
|
35
36
|
throw new Error(`Insufficient ${asset.symbol} balance. Required ${amount} ${asset.symbol}, available ${balance.toString()} raw units.${celoHint}`);
|
|
36
37
|
}
|
|
37
38
|
}
|
|
39
|
+
/**
|
|
40
|
+
* Reject early when the Aave reserve's supply cap would be exceeded.
|
|
41
|
+
* Checked before any approve/supply step is built, so the error surfaces
|
|
42
|
+
* before the user ever signs a transaction. A `supplyCap` of 0 means
|
|
43
|
+
* Aave has no cap configured for this reserve.
|
|
44
|
+
*/
|
|
45
|
+
async assertSupplyCapAvailable(asset, publicClient, amountWei, decimals) {
|
|
46
|
+
const [, supplyCap] = await publicClient.readContract({
|
|
47
|
+
address: AAVE_PROTOCOL_DATA_PROVIDER,
|
|
48
|
+
abi: aaveDataProviderAbi,
|
|
49
|
+
functionName: "getReserveCaps",
|
|
50
|
+
args: [asset.underlying],
|
|
51
|
+
});
|
|
52
|
+
if (supplyCap === 0n) {
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
const supplyCapWei = supplyCap * 10n ** BigInt(decimals);
|
|
56
|
+
const totalSupply = await publicClient.readContract({
|
|
57
|
+
address: asset.aToken,
|
|
58
|
+
abi: erc20Abi,
|
|
59
|
+
functionName: "totalSupply",
|
|
60
|
+
});
|
|
61
|
+
if (totalSupply + amountWei > supplyCapWei) {
|
|
62
|
+
const available = supplyCapWei > totalSupply ? supplyCapWei - totalSupply : 0n;
|
|
63
|
+
const availableFormatted = formatUnits(available, decimals);
|
|
64
|
+
throw new Error(`Aave ${asset.symbol} supply cap reached. Only ${availableFormatted} ${asset.symbol} can still be supplied to this market.`);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
38
67
|
async readATokenBalance(asset, publicClient, owner) {
|
|
39
68
|
return publicClient.readContract({
|
|
40
69
|
address: asset.aToken,
|
|
@@ -125,6 +154,7 @@ export class AaveService {
|
|
|
125
154
|
await this.assertUnderlyingBalance(asset, publicClient, from, amount);
|
|
126
155
|
const resolved = this.tokenService.resolveToken(asset.symbol);
|
|
127
156
|
const amountWei = this.tokenService.parseAmount(amount, resolved.decimals);
|
|
157
|
+
await this.assertSupplyCapAvailable(asset, publicClient, amountWei, resolved.decimals);
|
|
128
158
|
const steps = [];
|
|
129
159
|
if (await this.needsApproval(asset.underlying, from, amountWei)) {
|
|
130
160
|
const approveData = appendCelinaCalldataTag(encodeFunctionData({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aave.service.js","sourceRoot":"","sources":["../../../src/services/aave.service.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"aave.service.js","sourceRoot":"","sources":["../../../src/services/aave.service.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@andrewkimjoseph/celina-sdk",
|
|
3
|
-
"version": "0.27.
|
|
3
|
+
"version": "0.27.6",
|
|
4
4
|
"description": "Celina SDK — Celo mainnet reads, unsigned transaction preparation, and ERC-4337 createAAClient for sponsored UserOps.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"sideEffects": false,
|