fibx 0.2.4 → 0.3.0
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/README.md +38 -164
- package/dist/commands/auth/login.d.ts.map +1 -1
- package/dist/commands/auth/login.js +2 -21
- package/dist/commands/auth/login.js.map +1 -1
- package/dist/commands/auth/verify.d.ts.map +1 -1
- package/dist/commands/auth/verify.js +11 -44
- package/dist/commands/auth/verify.js.map +1 -1
- package/dist/commands/defi/aave.d.ts.map +1 -1
- package/dist/commands/defi/aave.js +7 -9
- package/dist/commands/defi/aave.js.map +1 -1
- package/dist/commands/trade/swap.d.ts.map +1 -1
- package/dist/commands/trade/swap.js +20 -9
- package/dist/commands/trade/swap.js.map +1 -1
- package/dist/commands/wallet/balance.js +1 -1
- package/dist/commands/wallet/balance.js.map +1 -1
- package/dist/commands/wallet/list.d.ts +1 -1
- package/dist/commands/wallet/list.d.ts.map +1 -1
- package/dist/commands/wallet/list.js +18 -26
- package/dist/commands/wallet/list.js.map +1 -1
- package/dist/commands/wallet/send.d.ts.map +1 -1
- package/dist/commands/wallet/send.js +6 -7
- package/dist/commands/wallet/send.js.map +1 -1
- package/dist/index.js +10 -6
- package/dist/index.js.map +1 -1
- package/dist/lib/config.d.ts +1 -0
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/config.js +3 -0
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/errors.d.ts +6 -2
- package/dist/lib/errors.d.ts.map +1 -1
- package/dist/lib/errors.js +4 -2
- package/dist/lib/errors.js.map +1 -1
- package/dist/services/api/client.d.ts +34 -0
- package/dist/services/api/client.d.ts.map +1 -0
- package/dist/services/api/client.js +68 -0
- package/dist/services/api/client.js.map +1 -0
- package/dist/services/chain/client.d.ts +17 -18
- package/dist/services/chain/client.d.ts.map +1 -1
- package/dist/services/chain/client.js +6 -6
- package/dist/services/chain/client.js.map +1 -1
- package/dist/services/chain/constants.d.ts +7 -8
- package/dist/services/chain/constants.d.ts.map +1 -1
- package/dist/services/chain/constants.js +11 -8
- package/dist/services/chain/constants.js.map +1 -1
- package/dist/services/chain/nonceManager.d.ts +0 -1
- package/dist/services/chain/nonceManager.d.ts.map +1 -1
- package/dist/services/chain/nonceManager.js +2 -4
- package/dist/services/chain/nonceManager.js.map +1 -1
- package/dist/services/defi/aave.d.ts +6 -1
- package/dist/services/defi/aave.d.ts.map +1 -1
- package/dist/services/defi/aave.js +192 -73
- package/dist/services/defi/aave.js.map +1 -1
- package/dist/services/defi/abi/aave.d.ts +60 -0
- package/dist/services/defi/abi/aave.d.ts.map +1 -1
- package/dist/services/defi/abi/aave.js +41 -0
- package/dist/services/defi/abi/aave.js.map +1 -1
- package/dist/services/defi/constants.d.ts +1 -2
- package/dist/services/defi/constants.d.ts.map +1 -1
- package/dist/services/defi/constants.js +2 -2
- package/dist/services/defi/constants.js.map +1 -1
- package/dist/services/fibrous/abi/citrea.d.ts +772 -63
- package/dist/services/fibrous/abi/citrea.d.ts.map +1 -1
- package/dist/services/fibrous/abi/citrea.js.map +1 -1
- package/dist/services/fibrous/abi/hyperevm.d.ts +772 -63
- package/dist/services/fibrous/abi/hyperevm.d.ts.map +1 -1
- package/dist/services/fibrous/abi/hyperevm.js.map +1 -1
- package/dist/services/fibrous/abi/monad.d.ts +772 -63
- package/dist/services/fibrous/abi/monad.d.ts.map +1 -1
- package/dist/services/fibrous/abi/monad.js.map +1 -1
- package/dist/services/privy/account.d.ts +5 -2
- package/dist/services/privy/account.d.ts.map +1 -1
- package/dist/services/privy/account.js +19 -21
- package/dist/services/privy/account.js.map +1 -1
- package/dist/services/privy/client.d.ts +1 -14
- package/dist/services/privy/client.d.ts.map +1 -1
- package/dist/services/privy/client.js +6 -62
- package/dist/services/privy/client.js.map +1 -1
- package/package.json +1 -2
- package/dist/chain/chains.d.ts +0 -14
- package/dist/chain/chains.d.ts.map +0 -1
- package/dist/chain/chains.js +0 -21
- package/dist/chain/chains.js.map +0 -1
- package/dist/chain/erc20.d.ts +0 -6
- package/dist/chain/erc20.d.ts.map +0 -1
- package/dist/chain/erc20.js +0 -72
- package/dist/chain/erc20.js.map +0 -1
- package/dist/chain/viem.d.ts +0 -24029
- package/dist/chain/viem.d.ts.map +0 -1
- package/dist/chain/viem.js +0 -74
- package/dist/chain/viem.js.map +0 -1
- package/dist/cli.d.ts +0 -3
- package/dist/cli.d.ts.map +0 -1
- package/dist/cli.js +0 -85
- package/dist/cli.js.map +0 -1
- package/dist/commands/address.d.ts +0 -3
- package/dist/commands/address.d.ts.map +0 -1
- package/dist/commands/address.js +0 -15
- package/dist/commands/address.js.map +0 -1
- package/dist/commands/auth-login.d.ts +0 -3
- package/dist/commands/auth-login.d.ts.map +0 -1
- package/dist/commands/auth-login.js +0 -34
- package/dist/commands/auth-login.js.map +0 -1
- package/dist/commands/auth-verify.d.ts +0 -3
- package/dist/commands/auth-verify.d.ts.map +0 -1
- package/dist/commands/auth-verify.js +0 -64
- package/dist/commands/auth-verify.js.map +0 -1
- package/dist/commands/balance.d.ts +0 -3
- package/dist/commands/balance.d.ts.map +0 -1
- package/dist/commands/balance.js +0 -55
- package/dist/commands/balance.js.map +0 -1
- package/dist/commands/send.d.ts +0 -3
- package/dist/commands/send.d.ts.map +0 -1
- package/dist/commands/send.js +0 -58
- package/dist/commands/send.js.map +0 -1
- package/dist/commands/status.d.ts +0 -3
- package/dist/commands/status.d.ts.map +0 -1
- package/dist/commands/status.js +0 -31
- package/dist/commands/status.js.map +0 -1
- package/dist/commands/trade.d.ts +0 -7
- package/dist/commands/trade.d.ts.map +0 -1
- package/dist/commands/trade.js +0 -69
- package/dist/commands/trade.js.map +0 -1
- package/dist/commands/wallets.d.ts +0 -3
- package/dist/commands/wallets.d.ts.map +0 -1
- package/dist/commands/wallets.js +0 -39
- package/dist/commands/wallets.js.map +0 -1
- package/dist/fibrous/abi/base.d.ts +0 -768
- package/dist/fibrous/abi/base.d.ts.map +0 -1
- package/dist/fibrous/abi/base.js +0 -984
- package/dist/fibrous/abi/base.js.map +0 -1
- package/dist/fibrous/balances.d.ts +0 -14
- package/dist/fibrous/balances.d.ts.map +0 -1
- package/dist/fibrous/balances.js +0 -26
- package/dist/fibrous/balances.js.map +0 -1
- package/dist/fibrous/health.d.ts +0 -11
- package/dist/fibrous/health.d.ts.map +0 -1
- package/dist/fibrous/health.js +0 -18
- package/dist/fibrous/health.js.map +0 -1
- package/dist/fibrous/route.d.ts +0 -47
- package/dist/fibrous/route.d.ts.map +0 -1
- package/dist/fibrous/route.js +0 -60
- package/dist/fibrous/route.js.map +0 -1
- package/dist/fibrous/tokens.d.ts +0 -10
- package/dist/fibrous/tokens.d.ts.map +0 -1
- package/dist/fibrous/tokens.js +0 -37
- package/dist/fibrous/tokens.js.map +0 -1
- package/dist/format/output.d.ts +0 -8
- package/dist/format/output.d.ts.map +0 -1
- package/dist/format/output.js +0 -69
- package/dist/format/output.js.map +0 -1
- package/dist/utils/cache.d.ts +0 -3
- package/dist/utils/cache.d.ts.map +0 -1
- package/dist/utils/cache.js +0 -23
- package/dist/utils/cache.js.map +0 -1
- package/dist/utils/config.d.ts +0 -7
- package/dist/utils/config.d.ts.map +0 -1
- package/dist/utils/config.js +0 -8
- package/dist/utils/config.js.map +0 -1
- package/dist/utils/errors.d.ts +0 -22
- package/dist/utils/errors.d.ts.map +0 -1
- package/dist/utils/errors.js +0 -29
- package/dist/utils/errors.js.map +0 -1
- package/dist/utils/parseAmount.d.ts +0 -3
- package/dist/utils/parseAmount.d.ts.map +0 -1
- package/dist/utils/parseAmount.js +0 -10
- package/dist/utils/parseAmount.js.map +0 -1
- package/dist/utils/validation.d.ts +0 -6
- package/dist/utils/validation.d.ts.map +0 -1
- package/dist/utils/validation.js +0 -24
- package/dist/utils/validation.js.map +0 -1
- package/dist/wallet/policy.d.ts +0 -2
- package/dist/wallet/policy.d.ts.map +0 -1
- package/dist/wallet/policy.js +0 -3
- package/dist/wallet/policy.js.map +0 -1
- package/dist/wallet/privy.d.ts +0 -15
- package/dist/wallet/privy.d.ts.map +0 -1
- package/dist/wallet/privy.js +0 -63
- package/dist/wallet/privy.js.map +0 -1
- package/dist/wallet/session.d.ts +0 -15
- package/dist/wallet/session.d.ts.map +0 -1
- package/dist/wallet/session.js +0 -47
- package/dist/wallet/session.js.map +0 -1
|
@@ -1,18 +1,19 @@
|
|
|
1
|
-
import { createPublicClient, http, parseUnits, formatUnits, erc20Abi, } from "viem";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { POOL_ADDRESSES_PROVIDER_ABI, POOL_ABI, WETH_ABI } from "./abi/aave.js";
|
|
5
|
-
import { AAVE_V3_POOL_ADDRESSES_PROVIDER, InterestRateMode, WETH_BASE_ADDRESS, MAX_UINT256, } from "./constants.js";
|
|
1
|
+
import { createPublicClient, http, parseUnits, formatUnits, maxUint256, erc20Abi, } from "viem";
|
|
2
|
+
import { POOL_ADDRESSES_PROVIDER_ABI, POOL_ABI, POOL_DATA_PROVIDER_ABI, WETH_ABI, } from "./abi/aave.js";
|
|
3
|
+
import { AAVE_V3_POOL_ADDRESSES_PROVIDER, AAVE_V3_POOL_DATA_PROVIDER, InterestRateMode, } from "./constants.js";
|
|
6
4
|
import { NonceManager } from "../chain/nonceManager.js";
|
|
5
|
+
import { ErrorCode, FibxError } from "../../lib/errors.js";
|
|
7
6
|
export class AaveService {
|
|
8
7
|
publicClient;
|
|
9
8
|
walletClient;
|
|
10
9
|
account;
|
|
11
10
|
userAddress;
|
|
12
|
-
|
|
11
|
+
chainConfig;
|
|
12
|
+
constructor(chainConfig, walletClient) {
|
|
13
|
+
this.chainConfig = chainConfig;
|
|
13
14
|
this.publicClient = createPublicClient({
|
|
14
|
-
chain:
|
|
15
|
-
transport: http(
|
|
15
|
+
chain: chainConfig.viemChain,
|
|
16
|
+
transport: http(chainConfig.rpcUrl),
|
|
16
17
|
});
|
|
17
18
|
if (walletClient) {
|
|
18
19
|
this.setWalletClient(walletClient);
|
|
@@ -62,7 +63,6 @@ export class AaveService {
|
|
|
62
63
|
const poolAddress = await this.getPoolAddress();
|
|
63
64
|
const decimals = await this.getTokenDecimals(tokenAddress);
|
|
64
65
|
const amount = parseUnits(amountStr, decimals);
|
|
65
|
-
// Check Allowance & Approve if necessary
|
|
66
66
|
const allowance = await this.publicClient.readContract({
|
|
67
67
|
address: tokenAddress,
|
|
68
68
|
abi: erc20Abi,
|
|
@@ -76,22 +76,21 @@ export class AaveService {
|
|
|
76
76
|
abi: erc20Abi,
|
|
77
77
|
functionName: "approve",
|
|
78
78
|
args: [poolAddress, amount],
|
|
79
|
-
chain:
|
|
79
|
+
chain: this.chainConfig.viemChain,
|
|
80
80
|
account: this.account,
|
|
81
81
|
nonce: nonceApprove,
|
|
82
82
|
});
|
|
83
83
|
await this.publicClient.waitForTransactionReceipt({ hash: txApprove });
|
|
84
|
+
await this.waitForAllowance(tokenAddress, poolAddress, amount);
|
|
84
85
|
}
|
|
85
|
-
// Simulate Supply
|
|
86
86
|
const { request: supplyRequest } = await this.publicClient.simulateContract({
|
|
87
87
|
address: poolAddress,
|
|
88
88
|
abi: POOL_ABI,
|
|
89
89
|
functionName: "supply",
|
|
90
90
|
args: [tokenAddress, amount, this.account.address, 0],
|
|
91
91
|
account: this.account,
|
|
92
|
-
chain:
|
|
92
|
+
chain: this.chainConfig.viemChain,
|
|
93
93
|
});
|
|
94
|
-
// Execute Supply
|
|
95
94
|
const nonceSupply = await NonceManager.getInstance().getNextNonce();
|
|
96
95
|
const txSupply = await this.walletClient.writeContract({
|
|
97
96
|
...supplyRequest,
|
|
@@ -102,16 +101,15 @@ export class AaveService {
|
|
|
102
101
|
}
|
|
103
102
|
async wrapETH(amountStr) {
|
|
104
103
|
this.ensureWalletConnection();
|
|
105
|
-
const amount = parseUnits(amountStr, 18);
|
|
106
|
-
// Simulate Deposit
|
|
104
|
+
const amount = parseUnits(amountStr, 18);
|
|
107
105
|
const { request } = await this.publicClient.simulateContract({
|
|
108
|
-
address:
|
|
106
|
+
address: this.chainConfig.wrappedNativeAddress,
|
|
109
107
|
abi: WETH_ABI,
|
|
110
108
|
functionName: "deposit",
|
|
111
109
|
args: [],
|
|
112
110
|
value: amount,
|
|
113
111
|
account: this.account,
|
|
114
|
-
chain:
|
|
112
|
+
chain: this.chainConfig.viemChain,
|
|
115
113
|
});
|
|
116
114
|
const nonce = await NonceManager.getInstance().getNextNonce();
|
|
117
115
|
const txWrap = await this.walletClient.writeContract({
|
|
@@ -124,14 +122,13 @@ export class AaveService {
|
|
|
124
122
|
async unwrapWETH(amountStr) {
|
|
125
123
|
this.ensureWalletConnection();
|
|
126
124
|
const amount = parseUnits(amountStr, 18);
|
|
127
|
-
// Simulate Withdraw
|
|
128
125
|
const { request } = await this.publicClient.simulateContract({
|
|
129
|
-
address:
|
|
126
|
+
address: this.chainConfig.wrappedNativeAddress,
|
|
130
127
|
abi: WETH_ABI,
|
|
131
128
|
functionName: "withdraw",
|
|
132
129
|
args: [amount],
|
|
133
130
|
account: this.account,
|
|
134
|
-
chain:
|
|
131
|
+
chain: this.chainConfig.viemChain,
|
|
135
132
|
});
|
|
136
133
|
const nonce = await NonceManager.getInstance().getNextNonce();
|
|
137
134
|
const txUnwrap = await this.walletClient.writeContract({
|
|
@@ -147,16 +144,13 @@ export class AaveService {
|
|
|
147
144
|
const userAddress = this.account.address;
|
|
148
145
|
let amount;
|
|
149
146
|
if (amountStr.toLowerCase() === "max" || amountStr === "-1") {
|
|
150
|
-
amount =
|
|
147
|
+
amount = maxUint256;
|
|
151
148
|
}
|
|
152
149
|
else {
|
|
153
150
|
const decimals = await this.getTokenDecimals(tokenAddress);
|
|
154
151
|
amount = parseUnits(amountStr, decimals);
|
|
155
152
|
}
|
|
156
|
-
const nonce = await NonceManager.getInstance().getNextNonce();
|
|
157
|
-
// Simulate first to catch errors
|
|
158
153
|
let request;
|
|
159
|
-
// Simulate first to catch errors
|
|
160
154
|
try {
|
|
161
155
|
const result = await this.publicClient.simulateContract({
|
|
162
156
|
address: poolAddress,
|
|
@@ -164,34 +158,15 @@ export class AaveService {
|
|
|
164
158
|
functionName: "withdraw",
|
|
165
159
|
args: [tokenAddress, amount, userAddress],
|
|
166
160
|
account: userAddress,
|
|
167
|
-
chain:
|
|
161
|
+
chain: this.chainConfig.viemChain,
|
|
168
162
|
});
|
|
169
163
|
request = result.request;
|
|
170
164
|
}
|
|
171
165
|
catch (error) {
|
|
172
|
-
|
|
173
|
-
//
|
|
174
|
-
const userData = await this.getUserAccountData(userAddress);
|
|
175
|
-
const totalDebt = parseFloat(userData.totalDebtUSD);
|
|
176
|
-
if (err.message?.includes("HealthFactorLowerThanLiquidationThreshold") ||
|
|
177
|
-
err.cause?.message?.includes("0x6679996d")) {
|
|
178
|
-
let details = "This amount would lower your Health Factor below 1.0.";
|
|
179
|
-
if (totalDebt > 0 && totalDebt < 0.01) {
|
|
180
|
-
details = `You have tiny "dust" debt ($${totalDebt.toFixed(6)}) preventing full withdrawal.`;
|
|
181
|
-
}
|
|
182
|
-
const totalCollateral = parseFloat(userData.totalCollateralUSD);
|
|
183
|
-
const lt = parseFloat(userData.currentLiquidationThreshold) / 10000;
|
|
184
|
-
if (lt > 0) {
|
|
185
|
-
const requiredCollateral = totalDebt / lt;
|
|
186
|
-
const maxSafeUSD = Math.max(0, totalCollateral - requiredCollateral);
|
|
187
|
-
if (maxSafeUSD < totalCollateral) {
|
|
188
|
-
details += ` You need keep ~$${requiredCollateral.toFixed(2)} collateral to cover your debt. Max safe withdraw is approx $${maxSafeUSD.toFixed(2)}.`;
|
|
189
|
-
}
|
|
190
|
-
}
|
|
191
|
-
throw new Error(`Cannot withdraw: ${details} (Try repaying all debt first)`);
|
|
192
|
-
}
|
|
193
|
-
throw error;
|
|
166
|
+
await this.handleLiquidationError(error, userAddress);
|
|
167
|
+
throw error; // detailed error thrown by handleLiquidationError, but needed for TS control flow
|
|
194
168
|
}
|
|
169
|
+
const nonce = await NonceManager.getInstance().getNextNonce();
|
|
195
170
|
const txWithdraw = await this.walletClient.writeContract({
|
|
196
171
|
...request,
|
|
197
172
|
nonce,
|
|
@@ -204,10 +179,7 @@ export class AaveService {
|
|
|
204
179
|
const poolAddress = await this.getPoolAddress();
|
|
205
180
|
const decimals = await this.getTokenDecimals(tokenAddress);
|
|
206
181
|
const amount = parseUnits(amountStr, decimals);
|
|
207
|
-
const nonce = await NonceManager.getInstance().getNextNonce();
|
|
208
|
-
// Simulate first to catch errors
|
|
209
182
|
let request;
|
|
210
|
-
// Simulate first to catch errors
|
|
211
183
|
try {
|
|
212
184
|
const result = await this.publicClient.simulateContract({
|
|
213
185
|
address: poolAddress,
|
|
@@ -220,7 +192,7 @@ export class AaveService {
|
|
|
220
192
|
0,
|
|
221
193
|
this.account.address,
|
|
222
194
|
],
|
|
223
|
-
chain:
|
|
195
|
+
chain: this.chainConfig.viemChain,
|
|
224
196
|
account: this.account,
|
|
225
197
|
});
|
|
226
198
|
request = result.request;
|
|
@@ -229,10 +201,11 @@ export class AaveService {
|
|
|
229
201
|
const err = error;
|
|
230
202
|
if (err.message?.includes("HealthFactorLowerThanLiquidationThreshold") ||
|
|
231
203
|
err.cause?.message?.includes("0x6679996d")) {
|
|
232
|
-
throw new
|
|
204
|
+
throw new FibxError(ErrorCode.WALLET_ERROR, "Cannot borrow: This amount would lower your Health Factor below 1.0 (Liquidation Threshold). Try borrowing a smaller amount or adding more collateral first.");
|
|
233
205
|
}
|
|
234
206
|
throw error;
|
|
235
207
|
}
|
|
208
|
+
const nonce = await NonceManager.getInstance().getNextNonce();
|
|
236
209
|
const txBorrow = await this.walletClient.writeContract({
|
|
237
210
|
...request,
|
|
238
211
|
nonce,
|
|
@@ -245,7 +218,7 @@ export class AaveService {
|
|
|
245
218
|
const poolAddress = await this.getPoolAddress();
|
|
246
219
|
let amount;
|
|
247
220
|
if (amountStr.toLowerCase() === "max" || amountStr === "-1") {
|
|
248
|
-
amount =
|
|
221
|
+
amount = maxUint256;
|
|
249
222
|
}
|
|
250
223
|
else {
|
|
251
224
|
const decimals = await this.getTokenDecimals(tokenAddress);
|
|
@@ -264,34 +237,50 @@ export class AaveService {
|
|
|
264
237
|
address: tokenAddress,
|
|
265
238
|
abi: erc20Abi,
|
|
266
239
|
functionName: "approve",
|
|
267
|
-
args: [poolAddress, amount],
|
|
268
|
-
chain:
|
|
240
|
+
args: [poolAddress, amount],
|
|
241
|
+
chain: this.chainConfig.viemChain,
|
|
269
242
|
account: this.account,
|
|
270
243
|
nonce: nonceApprove,
|
|
271
244
|
});
|
|
272
245
|
await this.publicClient.waitForTransactionReceipt({ hash: txApprove });
|
|
246
|
+
await this.waitForAllowance(tokenAddress, poolAddress, amount);
|
|
247
|
+
}
|
|
248
|
+
try {
|
|
249
|
+
const { request: repayRequest } = await this.publicClient.simulateContract({
|
|
250
|
+
address: poolAddress,
|
|
251
|
+
abi: POOL_ABI,
|
|
252
|
+
functionName: "repay",
|
|
253
|
+
args: [
|
|
254
|
+
tokenAddress,
|
|
255
|
+
amount,
|
|
256
|
+
BigInt(InterestRateMode.Variable),
|
|
257
|
+
this.account.address,
|
|
258
|
+
],
|
|
259
|
+
account: this.account,
|
|
260
|
+
chain: this.chainConfig.viemChain,
|
|
261
|
+
});
|
|
262
|
+
const nonceRepay = await NonceManager.getInstance().getNextNonce();
|
|
263
|
+
const txRepay = await this.walletClient.writeContract({
|
|
264
|
+
...repayRequest,
|
|
265
|
+
nonce: nonceRepay,
|
|
266
|
+
});
|
|
267
|
+
await this.publicClient.waitForTransactionReceipt({ hash: txRepay });
|
|
268
|
+
return txRepay;
|
|
269
|
+
}
|
|
270
|
+
catch (error) {
|
|
271
|
+
const err = error;
|
|
272
|
+
// Check for NoDebtOfSelectedType (0xf0788fb2)
|
|
273
|
+
if (err.message?.includes("NoDebtOfSelectedType") ||
|
|
274
|
+
err.cause?.message?.includes("0xf0788fb2")) {
|
|
275
|
+
// This is actually a success state for "repay max" - we are already debt free
|
|
276
|
+
return "0x0"; // Return dummy hash to indicate success without tx
|
|
277
|
+
}
|
|
278
|
+
throw error;
|
|
273
279
|
}
|
|
274
|
-
// Simulate Repay
|
|
275
|
-
const { request: repayRequest } = await this.publicClient.simulateContract({
|
|
276
|
-
address: poolAddress,
|
|
277
|
-
abi: POOL_ABI,
|
|
278
|
-
functionName: "repay",
|
|
279
|
-
args: [tokenAddress, amount, BigInt(InterestRateMode.Variable), this.account.address],
|
|
280
|
-
account: this.account,
|
|
281
|
-
chain: base,
|
|
282
|
-
});
|
|
283
|
-
// Execute Repay
|
|
284
|
-
const nonceRepay = await NonceManager.getInstance().getNextNonce();
|
|
285
|
-
const txRepay = await this.walletClient.writeContract({
|
|
286
|
-
...repayRequest,
|
|
287
|
-
nonce: nonceRepay,
|
|
288
|
-
});
|
|
289
|
-
await this.publicClient.waitForTransactionReceipt({ hash: txRepay });
|
|
290
|
-
return txRepay;
|
|
291
280
|
}
|
|
292
281
|
ensureWalletConnection() {
|
|
293
282
|
if (!this.walletClient || !this.account) {
|
|
294
|
-
throw new
|
|
283
|
+
throw new FibxError(ErrorCode.WALLET_ERROR, "Wallet not connected. Please login or provide a PRIVATE_KEY.");
|
|
295
284
|
}
|
|
296
285
|
}
|
|
297
286
|
async getTokenDecimals(tokenAddress) {
|
|
@@ -301,5 +290,135 @@ export class AaveService {
|
|
|
301
290
|
functionName: "decimals",
|
|
302
291
|
});
|
|
303
292
|
}
|
|
293
|
+
async waitForAllowance(tokenAddress, spender, targetAmount) {
|
|
294
|
+
let retries = 0;
|
|
295
|
+
const maxRetries = 15; // 30 seconds
|
|
296
|
+
while (retries < maxRetries) {
|
|
297
|
+
const allowance = await this.publicClient.readContract({
|
|
298
|
+
address: tokenAddress,
|
|
299
|
+
abi: erc20Abi,
|
|
300
|
+
functionName: "allowance",
|
|
301
|
+
args: [this.account.address, spender],
|
|
302
|
+
});
|
|
303
|
+
if (allowance >= targetAmount) {
|
|
304
|
+
break;
|
|
305
|
+
}
|
|
306
|
+
await new Promise((resolve) => setTimeout(resolve, 2000));
|
|
307
|
+
retries++;
|
|
308
|
+
}
|
|
309
|
+
}
|
|
310
|
+
async getDebts(dataProviderAddress, reserves) {
|
|
311
|
+
const debtDetails = [];
|
|
312
|
+
// 1. Batch fetch all reserve data using multicall
|
|
313
|
+
const reserveDataCalls = reserves.map((asset) => ({
|
|
314
|
+
address: dataProviderAddress,
|
|
315
|
+
abi: POOL_DATA_PROVIDER_ABI,
|
|
316
|
+
functionName: "getUserReserveData",
|
|
317
|
+
args: [asset, this.account.address],
|
|
318
|
+
}));
|
|
319
|
+
const results = await this.publicClient.multicall({
|
|
320
|
+
contracts: reserveDataCalls,
|
|
321
|
+
allowFailure: true, // Continue even if some fail
|
|
322
|
+
});
|
|
323
|
+
// 2. Identify assets with debt
|
|
324
|
+
const assetsWithDebt = [];
|
|
325
|
+
const debts = [];
|
|
326
|
+
results.forEach((result, index) => {
|
|
327
|
+
if (result.status === "success" && result.result) {
|
|
328
|
+
const data = result.result;
|
|
329
|
+
const stableDebt = data[1];
|
|
330
|
+
const variableDebt = data[2];
|
|
331
|
+
if (stableDebt > 0n || variableDebt > 0n) {
|
|
332
|
+
assetsWithDebt.push(reserves[index]);
|
|
333
|
+
debts.push(stableDebt + variableDebt);
|
|
334
|
+
}
|
|
335
|
+
}
|
|
336
|
+
});
|
|
337
|
+
// 3. Fetch symbol/decimals for assets with debt using multicall
|
|
338
|
+
if (assetsWithDebt.length > 0) {
|
|
339
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
340
|
+
const detailCalls = [];
|
|
341
|
+
assetsWithDebt.forEach((asset) => {
|
|
342
|
+
detailCalls.push({
|
|
343
|
+
address: asset,
|
|
344
|
+
abi: erc20Abi,
|
|
345
|
+
functionName: "symbol",
|
|
346
|
+
});
|
|
347
|
+
detailCalls.push({
|
|
348
|
+
address: asset,
|
|
349
|
+
abi: erc20Abi,
|
|
350
|
+
functionName: "decimals",
|
|
351
|
+
});
|
|
352
|
+
});
|
|
353
|
+
try {
|
|
354
|
+
const detailResults = await this.publicClient.multicall({
|
|
355
|
+
contracts: detailCalls,
|
|
356
|
+
allowFailure: false, // If these fail, we can't display details properly
|
|
357
|
+
});
|
|
358
|
+
for (let i = 0; i < assetsWithDebt.length; i++) {
|
|
359
|
+
const symbol = detailResults[i * 2];
|
|
360
|
+
const decimals = detailResults[i * 2 + 1];
|
|
361
|
+
const debt = debts[i];
|
|
362
|
+
debtDetails.push(`${symbol}: $${formatUnits(debt, decimals)}`);
|
|
363
|
+
}
|
|
364
|
+
}
|
|
365
|
+
catch (e) {
|
|
366
|
+
console.warn("Failed to fetch debt token details via multicall:", e);
|
|
367
|
+
// Fallback: just list addresses and raw amounts if metadata fails
|
|
368
|
+
assetsWithDebt.forEach((asset, i) => {
|
|
369
|
+
debtDetails.push(`${asset}: raw units ${debts[i]}`);
|
|
370
|
+
});
|
|
371
|
+
}
|
|
372
|
+
}
|
|
373
|
+
return debtDetails;
|
|
374
|
+
}
|
|
375
|
+
async handleLiquidationError(error, userAddress) {
|
|
376
|
+
const err = error;
|
|
377
|
+
const userData = await this.getUserAccountData(userAddress);
|
|
378
|
+
const totalDebt = parseFloat(userData.totalDebtUSD);
|
|
379
|
+
if (err.message?.includes("HealthFactorLowerThanLiquidationThreshold") ||
|
|
380
|
+
err.cause?.message?.includes("0x6679996d")) {
|
|
381
|
+
let details = "This amount would lower your Health Factor below 1.0.";
|
|
382
|
+
// Check for cross-asset dust debt
|
|
383
|
+
if (totalDebt > 0) {
|
|
384
|
+
try {
|
|
385
|
+
const poolContract = {
|
|
386
|
+
address: await this.getPoolAddress(),
|
|
387
|
+
abi: POOL_ABI,
|
|
388
|
+
};
|
|
389
|
+
const reserves = await this.publicClient.readContract({
|
|
390
|
+
...poolContract,
|
|
391
|
+
functionName: "getReservesList",
|
|
392
|
+
});
|
|
393
|
+
const debts = await this.getDebts(AAVE_V3_POOL_DATA_PROVIDER, reserves);
|
|
394
|
+
if (debts.length > 0) {
|
|
395
|
+
details = `You have remaining debt in other assets: ${debts.join(", ")}. You must repay these debts first to withdraw max collateral.`;
|
|
396
|
+
}
|
|
397
|
+
else if (totalDebt < 0.01) {
|
|
398
|
+
// If scanning returned nothing but we have dust debt, show generic message
|
|
399
|
+
details = `You have tiny "dust" debt ($${totalDebt.toFixed(6)}) in an asset (scan failed to identify) preventing full withdrawal.`;
|
|
400
|
+
}
|
|
401
|
+
}
|
|
402
|
+
catch (e) {
|
|
403
|
+
console.error("Error scanning debts:", e);
|
|
404
|
+
// Fallback if scanning fails
|
|
405
|
+
if (totalDebt < 0.01) {
|
|
406
|
+
details = `You have tiny "dust" debt ($${totalDebt.toFixed(6)}) in an asset preventing full withdrawal.`;
|
|
407
|
+
}
|
|
408
|
+
}
|
|
409
|
+
}
|
|
410
|
+
const totalCollateral = parseFloat(userData.totalCollateralUSD);
|
|
411
|
+
const lt = parseFloat(userData.currentLiquidationThreshold) / 10000;
|
|
412
|
+
if (lt > 0) {
|
|
413
|
+
const requiredCollateral = totalDebt / lt;
|
|
414
|
+
const maxSafeUSD = Math.max(0, totalCollateral - requiredCollateral);
|
|
415
|
+
if (maxSafeUSD < totalCollateral) {
|
|
416
|
+
details += ` You need keep ~$${requiredCollateral.toFixed(2)} collateral to cover your debt. Max safe withdraw is approx $${maxSafeUSD.toFixed(2)}.`;
|
|
417
|
+
}
|
|
418
|
+
}
|
|
419
|
+
throw new FibxError(ErrorCode.WALLET_ERROR, `Cannot withdraw: ${details}`);
|
|
420
|
+
}
|
|
421
|
+
throw error;
|
|
422
|
+
}
|
|
304
423
|
}
|
|
305
424
|
//# sourceMappingURL=aave.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aave.js","sourceRoot":"","sources":["../../../src/services/defi/aave.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"aave.js","sourceRoot":"","sources":["../../../src/services/defi/aave.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,54 @@ export declare const POOL_ADDRESSES_PROVIDER_ABI: readonly [{
|
|
|
6
6
|
readonly outputs: readonly [{
|
|
7
7
|
readonly type: "address";
|
|
8
8
|
}];
|
|
9
|
+
}, {
|
|
10
|
+
readonly name: "getPoolDataProvider";
|
|
11
|
+
readonly type: "function";
|
|
12
|
+
readonly stateMutability: "view";
|
|
13
|
+
readonly inputs: readonly [];
|
|
14
|
+
readonly outputs: readonly [{
|
|
15
|
+
readonly type: "address";
|
|
16
|
+
}];
|
|
17
|
+
}];
|
|
18
|
+
export declare const POOL_DATA_PROVIDER_ABI: readonly [{
|
|
19
|
+
readonly name: "getUserReserveData";
|
|
20
|
+
readonly type: "function";
|
|
21
|
+
readonly stateMutability: "view";
|
|
22
|
+
readonly inputs: readonly [{
|
|
23
|
+
readonly name: "asset";
|
|
24
|
+
readonly type: "address";
|
|
25
|
+
}, {
|
|
26
|
+
readonly name: "user";
|
|
27
|
+
readonly type: "address";
|
|
28
|
+
}];
|
|
29
|
+
readonly outputs: readonly [{
|
|
30
|
+
readonly name: "currentATokenBalance";
|
|
31
|
+
readonly type: "uint256";
|
|
32
|
+
}, {
|
|
33
|
+
readonly name: "currentStableDebt";
|
|
34
|
+
readonly type: "uint256";
|
|
35
|
+
}, {
|
|
36
|
+
readonly name: "currentVariableDebt";
|
|
37
|
+
readonly type: "uint256";
|
|
38
|
+
}, {
|
|
39
|
+
readonly name: "principalStableDebt";
|
|
40
|
+
readonly type: "uint256";
|
|
41
|
+
}, {
|
|
42
|
+
readonly name: "scaledVariableDebt";
|
|
43
|
+
readonly type: "uint256";
|
|
44
|
+
}, {
|
|
45
|
+
readonly name: "stableBorrowRate";
|
|
46
|
+
readonly type: "uint256";
|
|
47
|
+
}, {
|
|
48
|
+
readonly name: "liquidityRate";
|
|
49
|
+
readonly type: "uint256";
|
|
50
|
+
}, {
|
|
51
|
+
readonly name: "stableRateLastUpdated";
|
|
52
|
+
readonly type: "uint40";
|
|
53
|
+
}, {
|
|
54
|
+
readonly name: "usageAsCollateralEnabled";
|
|
55
|
+
readonly type: "bool";
|
|
56
|
+
}];
|
|
9
57
|
}];
|
|
10
58
|
export declare const POOL_ABI: readonly [{
|
|
11
59
|
readonly name: "supply";
|
|
@@ -125,6 +173,18 @@ export declare const POOL_ABI: readonly [{
|
|
|
125
173
|
readonly inputs: readonly [];
|
|
126
174
|
readonly name: "HealthFactorLowerThanLiquidationThreshold";
|
|
127
175
|
readonly type: "error";
|
|
176
|
+
}, {
|
|
177
|
+
readonly inputs: readonly [];
|
|
178
|
+
readonly name: "NoDebtOfSelectedType";
|
|
179
|
+
readonly type: "error";
|
|
180
|
+
}, {
|
|
181
|
+
readonly name: "getReservesList";
|
|
182
|
+
readonly type: "function";
|
|
183
|
+
readonly stateMutability: "view";
|
|
184
|
+
readonly inputs: readonly [];
|
|
185
|
+
readonly outputs: readonly [{
|
|
186
|
+
readonly type: "address[]";
|
|
187
|
+
}];
|
|
128
188
|
}];
|
|
129
189
|
export declare const WETH_ABI: readonly [{
|
|
130
190
|
readonly name: "deposit";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aave.d.ts","sourceRoot":"","sources":["../../../../src/services/defi/abi/aave.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,2BAA2B
|
|
1
|
+
{"version":3,"file":"aave.d.ts","sourceRoot":"","sources":["../../../../src/services/defi/abi/aave.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;EAe9B,CAAC;AAEX,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqBzB,CAAC;AAEX,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqFX,CAAC;AAEX,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;EAeX,CAAC"}
|
|
@@ -6,6 +6,35 @@ export const POOL_ADDRESSES_PROVIDER_ABI = [
|
|
|
6
6
|
inputs: [],
|
|
7
7
|
outputs: [{ type: "address" }],
|
|
8
8
|
},
|
|
9
|
+
{
|
|
10
|
+
name: "getPoolDataProvider",
|
|
11
|
+
type: "function",
|
|
12
|
+
stateMutability: "view",
|
|
13
|
+
inputs: [],
|
|
14
|
+
outputs: [{ type: "address" }],
|
|
15
|
+
},
|
|
16
|
+
];
|
|
17
|
+
export const POOL_DATA_PROVIDER_ABI = [
|
|
18
|
+
{
|
|
19
|
+
name: "getUserReserveData",
|
|
20
|
+
type: "function",
|
|
21
|
+
stateMutability: "view",
|
|
22
|
+
inputs: [
|
|
23
|
+
{ name: "asset", type: "address" },
|
|
24
|
+
{ name: "user", type: "address" },
|
|
25
|
+
],
|
|
26
|
+
outputs: [
|
|
27
|
+
{ name: "currentATokenBalance", type: "uint256" },
|
|
28
|
+
{ name: "currentStableDebt", type: "uint256" },
|
|
29
|
+
{ name: "currentVariableDebt", type: "uint256" },
|
|
30
|
+
{ name: "principalStableDebt", type: "uint256" },
|
|
31
|
+
{ name: "scaledVariableDebt", type: "uint256" },
|
|
32
|
+
{ name: "stableBorrowRate", type: "uint256" },
|
|
33
|
+
{ name: "liquidityRate", type: "uint256" },
|
|
34
|
+
{ name: "stableRateLastUpdated", type: "uint40" },
|
|
35
|
+
{ name: "usageAsCollateralEnabled", type: "bool" },
|
|
36
|
+
],
|
|
37
|
+
},
|
|
9
38
|
];
|
|
10
39
|
export const POOL_ABI = [
|
|
11
40
|
{
|
|
@@ -80,6 +109,18 @@ export const POOL_ABI = [
|
|
|
80
109
|
name: "HealthFactorLowerThanLiquidationThreshold",
|
|
81
110
|
type: "error",
|
|
82
111
|
},
|
|
112
|
+
{
|
|
113
|
+
inputs: [],
|
|
114
|
+
name: "NoDebtOfSelectedType",
|
|
115
|
+
type: "error",
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
name: "getReservesList",
|
|
119
|
+
type: "function",
|
|
120
|
+
stateMutability: "view",
|
|
121
|
+
inputs: [],
|
|
122
|
+
outputs: [{ type: "address[]" }],
|
|
123
|
+
},
|
|
83
124
|
];
|
|
84
125
|
export const WETH_ABI = [
|
|
85
126
|
{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aave.js","sourceRoot":"","sources":["../../../../src/services/defi/abi/aave.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"aave.js","sourceRoot":"","sources":["../../../../src/services/defi/abi/aave.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,13 +4,12 @@ import type { Address } from "viem";
|
|
|
4
4
|
* @see https://docs.aave.com/developers/deployed-contracts/v3-mainnet/base
|
|
5
5
|
*/
|
|
6
6
|
export declare const AAVE_V3_POOL_ADDRESSES_PROVIDER: Address;
|
|
7
|
+
export declare const AAVE_V3_POOL_DATA_PROVIDER: Address;
|
|
7
8
|
export declare const HEALTH_FACTOR_WARNING_THRESHOLD = 1.5;
|
|
8
9
|
export declare const HEALTH_FACTOR_CRITICAL_THRESHOLD = 1.1;
|
|
9
|
-
export declare const WETH_BASE_ADDRESS: Address;
|
|
10
10
|
export declare enum InterestRateMode {
|
|
11
11
|
None = 0,
|
|
12
12
|
Stable = 1,
|
|
13
13
|
Variable = 2
|
|
14
14
|
}
|
|
15
|
-
export declare const MAX_UINT256 = 115792089237316195423570985008687907853269984665640564039457584007913129639935n;
|
|
16
15
|
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/services/defi/constants.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAEpC;;;GAGG;AACH,eAAO,MAAM,+BAA+B,EACK,OAAO,CAAC;AAGzD,eAAO,MAAM,+BAA+B,MAAM,CAAC;AACnD,eAAO,MAAM,gCAAgC,MAAM,CAAC;AAEpD,
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/services/defi/constants.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAEpC;;;GAGG;AACH,eAAO,MAAM,+BAA+B,EACK,OAAO,CAAC;AAGzD,eAAO,MAAM,0BAA0B,EAAmD,OAAO,CAAC;AAGlG,eAAO,MAAM,+BAA+B,MAAM,CAAC;AACnD,eAAO,MAAM,gCAAgC,MAAM,CAAC;AAEpD,oBAAY,gBAAgB;IAC3B,IAAI,IAAI;IACR,MAAM,IAAI;IACV,QAAQ,IAAI;CACZ"}
|
|
@@ -3,15 +3,15 @@
|
|
|
3
3
|
* @see https://docs.aave.com/developers/deployed-contracts/v3-mainnet/base
|
|
4
4
|
*/
|
|
5
5
|
export const AAVE_V3_POOL_ADDRESSES_PROVIDER = "0xe20fCBdBfFC4Dd138cE8b2E6FBb6CB49777ad64D";
|
|
6
|
+
// Pool Data Provider
|
|
7
|
+
export const AAVE_V3_POOL_DATA_PROVIDER = "0x0F43731EB8d45A581f4a36DD74F5f358bc90C73A";
|
|
6
8
|
// Health Factor Thresholds for risk assessment.
|
|
7
9
|
export const HEALTH_FACTOR_WARNING_THRESHOLD = 1.5;
|
|
8
10
|
export const HEALTH_FACTOR_CRITICAL_THRESHOLD = 1.1;
|
|
9
|
-
export const WETH_BASE_ADDRESS = "0x4200000000000000000000000000000000000006";
|
|
10
11
|
export var InterestRateMode;
|
|
11
12
|
(function (InterestRateMode) {
|
|
12
13
|
InterestRateMode[InterestRateMode["None"] = 0] = "None";
|
|
13
14
|
InterestRateMode[InterestRateMode["Stable"] = 1] = "Stable";
|
|
14
15
|
InterestRateMode[InterestRateMode["Variable"] = 2] = "Variable";
|
|
15
16
|
})(InterestRateMode || (InterestRateMode = {}));
|
|
16
|
-
export const MAX_UINT256 = 115792089237316195423570985008687907853269984665640564039457584007913129639935n;
|
|
17
17
|
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/services/defi/constants.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAC3C,4CAAuD,CAAC;AAEzD,
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/services/defi/constants.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAC3C,4CAAuD,CAAC;AAEzD,qBAAqB;AACrB,MAAM,CAAC,MAAM,0BAA0B,GAAG,4CAAuD,CAAC;AAElG,gDAAgD;AAChD,MAAM,CAAC,MAAM,+BAA+B,GAAG,GAAG,CAAC;AACnD,MAAM,CAAC,MAAM,gCAAgC,GAAG,GAAG,CAAC;AAEpD,MAAM,CAAN,IAAY,gBAIX;AAJD,WAAY,gBAAgB;IAC3B,uDAAQ,CAAA;IACR,2DAAU,CAAA;IACV,+DAAY,CAAA;AACb,CAAC,EAJW,gBAAgB,KAAhB,gBAAgB,QAI3B"}
|