Skip to content

Commit f57a343

Browse files
committed
fix: permit amount convert to wei
1 parent 4bad33a commit f57a343

File tree

2 files changed

+29
-39
lines changed

2 files changed

+29
-39
lines changed

src/helpers/useTransactionHandler.tsx

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -112,12 +112,9 @@ export const useTransactionHandler = ({
112112
};
113113

114114
const approval = async (approvals?: Approval[]) => {
115-
console.log(approvalTxes, 'approvalTxes', approvals);
116115
if (approvalTxes) {
117-
console.log(approvalTxes, 'approvalTxes');
118116
if (usePermit && approvals && approvals?.length > 0) {
119117
setApprovalTxState({ ...approvalTxState, loading: true });
120-
console.log('loading true', usePermit, approvals, approvalTxes);
121118
try {
122119
// deadline is an hour after signature
123120
const deadline = Math.floor(Date.now() / 1000 + 3600).toString();
@@ -257,6 +254,7 @@ export const useTransactionHandler = ({
257254
action: TxAction.MAIN_ACTION,
258255
});
259256
} catch (error) {
257+
console.log(error, 'error');
260258
const parsedError = getErrorTextFromError(error, TxAction.GAS_ESTIMATION, false);
261259
setTxError(parsedError);
262260
setMainTxState({

src/store/v3MigrationSelectors.ts

Lines changed: 28 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,8 @@ export const selectUserSupplyIncreasedReservesForMigrationPermits = (
3939
) => {
4040
return selectedUserSupplyReservesForMigration(store, timestamp).map((userReserve) => {
4141
const increasedAmount = addPercent(userReserve.underlyingBalance);
42-
return { ...userReserve, increasedAmount };
42+
const valueInWei = valueToWei(increasedAmount, userReserve.reserve.decimals);
43+
return { ...userReserve, increasedAmount: valueInWei };
4344
});
4445
};
4546

@@ -82,7 +83,7 @@ const add1HourBorrowAPY = (amount: string, borrowAPY: string) => {
8283
const convertedAmount = valueToBigNumber(amount);
8384
const convertedBorrowAPY = valueToBigNumber(borrowAPY);
8485
return convertedAmount
85-
.plus(convertedAmount.multipliedBy(convertedBorrowAPY).dividedBy(360 * 24))
86+
.plus(convertedAmount.multipliedBy(convertedBorrowAPY).dividedBy(360 * 48))
8687
.toString();
8788
};
8889

@@ -103,32 +104,22 @@ export const selectUserBorrowReservesForMigration = (store: RootStore, timestamp
103104
userReserve.stableBorrows,
104105
reserve.stableBorrowAPY
105106
);
106-
const increasedScaledBalance = add1HourBorrowAPY(
107-
userReserve.principalStableDebt,
108-
reserve.stableBorrowAPY
109-
);
110107
return {
111108
...userReserve,
112109
reserve,
113110
increasedAmount,
114111
interestRate: InterestRate.Stable,
115-
increasedScaledBalance,
116112
};
117113
}
118114
const increasedAmount = add1HourBorrowAPY(
119115
userReserve.variableBorrows,
120116
reserve.variableBorrowAPY
121117
);
122-
const increasedScaledBalance = add1HourBorrowAPY(
123-
userReserve.scaledVariableDebt,
124-
reserve.variableBorrowAPY
125-
);
126118
return {
127119
...userReserve,
128120
reserve,
129121
increasedAmount,
130122
interestRate: InterestRate.Variable,
131-
increasedScaledBalance,
132123
};
133124
});
134125

@@ -219,51 +210,52 @@ export const selectV3UserSummaryAfterMigration = (store: RootStore, currentTimes
219210
const borrowAsset = borrowsMap[userReserveData.underlyingAsset];
220211
const supplyAsset = suppliesMap[userReserveData.underlyingAsset];
221212

222-
let combinedScaledVariableDebt = userReserveData.scaledVariableDebt;
223-
let combinedScaledATokenBalance = userReserveData.scaledATokenBalance;
224-
if (borrowAsset) {
225-
const scaledVariableDebt = valueToBigNumber(userReserveData.scaledVariableDebt);
226-
const variableBorrowIndex = valueToBigNumber(userReserveData.reserve.variableBorrowIndex);
227-
const scaledDownBalance = rayDiv(scaledVariableDebt, variableBorrowIndex);
228-
const scaledDownV2Balance = rayDiv(
229-
valueToBigNumber(borrowAsset.increasedScaledBalance),
230-
variableBorrowIndex
213+
let combinedScaledDownVariableDebtV3 = userReserveData.scaledVariableDebt;
214+
let combinedScaledDownABalance = userReserveData.scaledATokenBalance;
215+
let usageAsCollateralEnabledOnUser = userReserveData.usageAsCollateralEnabledOnUser;
216+
// TODO: combine stable borrow amount as well
217+
if (borrowAsset && borrowAsset.interestRate == InterestRate.Variable) {
218+
const scaledDownVariableDebtV3 = valueToBigNumber(userReserveData.scaledVariableDebt);
219+
const variableBorrowIndexV3 = valueToBigNumber(userReserveData.reserve.variableBorrowIndex);
220+
const scaledDownVariableDebtV2Balance = rayDiv(
221+
valueToWei(borrowAsset.increasedAmount, userReserveData.reserve.decimals),
222+
variableBorrowIndexV3
231223
);
232-
const combinedScaledDownBalance = scaledDownBalance.plus(scaledDownV2Balance);
233-
combinedScaledVariableDebt = rayMul(
234-
combinedScaledDownBalance,
235-
variableBorrowIndex
236-
).toString();
224+
combinedScaledDownVariableDebtV3 = scaledDownVariableDebtV3
225+
.plus(scaledDownVariableDebtV2Balance)
226+
.toString();
237227
}
238228

239229
if (supplyAsset) {
240-
const scaledATokenBalance = valueToBigNumber(userReserveData.scaledATokenBalance);
241-
const liquidityIndex = valueToBigNumber(userReserveData.reserve.liquidityIndex);
242-
const scaledDownBalance = rayDiv(scaledATokenBalance, liquidityIndex);
230+
const scaledDownATokenBalance = valueToBigNumber(userReserveData.scaledATokenBalance);
231+
const liquidityIndexV3 = valueToBigNumber(userReserveData.reserve.liquidityIndex);
243232
const scaledDownBalanceV2 = rayDiv(
244-
valueToBigNumber(supplyAsset.scaledATokenBalance),
245-
liquidityIndex
233+
valueToWei(supplyAsset.underlyingBalance, userReserveData.reserve.decimals),
234+
liquidityIndexV3
246235
);
247-
const combinedScaledDownBalance = scaledDownBalance.plus(scaledDownBalanceV2);
248-
combinedScaledATokenBalance = rayMul(combinedScaledDownBalance, liquidityIndex).toString();
236+
combinedScaledDownABalance = scaledDownATokenBalance.plus(scaledDownBalanceV2).toString();
237+
usageAsCollateralEnabledOnUser = true;
249238
}
250239

251240
return {
252241
...userReserveData,
253242
id: userReserveData.reserve.id,
254-
scaledVariableDebt: combinedScaledVariableDebt,
255-
scaledATokenBalance: combinedScaledATokenBalance,
243+
scaledVariableDebt: combinedScaledDownVariableDebtV3,
244+
scaledATokenBalance: combinedScaledDownABalance,
245+
usageAsCollateralEnabledOnUser,
256246
};
257247
});
258248

259249
const baseCurrencyData = selectFormatBaseCurrencyData(poolReserveV3);
260250

261-
return selectFormatUserSummaryForMigration(
251+
const formattedUserSummary = selectFormatUserSummaryForMigration(
262252
poolReserveV3?.reserves,
263253
userReserves,
264254
baseCurrencyData,
265255
currentTimestamp
266256
);
257+
258+
return formattedUserSummary;
267259
};
268260

269261
export const selectV3UserSummary = (store: RootStore, timestamp: number) => {

0 commit comments

Comments
 (0)