@@ -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
269261export const selectV3UserSummary = ( store : RootStore , timestamp : number ) => {
0 commit comments