From 85729ccb6a54467d4785afaa42b9b34465b9cc20 Mon Sep 17 00:00:00 2001 From: Bruno Eidam Guerios Date: Tue, 30 Jul 2024 16:43:49 -0300 Subject: [PATCH] Update removeLiquidityRecovery to use bptAmount from input --- .../removeLiquidityComposableStable.ts | 11 +++++------ .../removeLiquidityV2/stable/removeLiquidityStable.ts | 11 +++++------ .../weighted/removeLiquidityWeighted.ts | 11 +++++------ 3 files changed, 15 insertions(+), 18 deletions(-) diff --git a/src/entities/removeLiquidity/removeLiquidityV2/composableStable/removeLiquidityComposableStable.ts b/src/entities/removeLiquidity/removeLiquidityV2/composableStable/removeLiquidityComposableStable.ts index 0b14add3..377b6d5e 100644 --- a/src/entities/removeLiquidity/removeLiquidityV2/composableStable/removeLiquidityComposableStable.ts +++ b/src/entities/removeLiquidity/removeLiquidityV2/composableStable/removeLiquidityComposableStable.ts @@ -110,16 +110,15 @@ export class RemoveLiquidityComposableStable implements RemoveLiquidityBase { totalShares: formatEther(totalShares) as HumanAmount, }; - const { tokenAmounts, bptAmount } = calculateProportionalAmounts( + const { tokenAmounts } = calculateProportionalAmounts( poolStateWithBalances, input.bptIn, ); - const bptToken = new Token( - input.chainId, - bptAmount.address, - bptAmount.decimals, + const bptToken = new Token(input.chainId, poolState.address, 18); + const bptIn = TokenAmount.fromRawAmount( + bptToken, + input.bptIn.rawAmount, ); - const bptIn = TokenAmount.fromRawAmount(bptToken, bptAmount.rawAmount); const bptIndex = poolState.tokens.findIndex( (t) => t.address === poolState.address, ); diff --git a/src/entities/removeLiquidity/removeLiquidityV2/stable/removeLiquidityStable.ts b/src/entities/removeLiquidity/removeLiquidityV2/stable/removeLiquidityStable.ts index cfbd715a..47057982 100644 --- a/src/entities/removeLiquidity/removeLiquidityV2/stable/removeLiquidityStable.ts +++ b/src/entities/removeLiquidity/removeLiquidityV2/stable/removeLiquidityStable.ts @@ -101,16 +101,15 @@ export class RemoveLiquidityStable implements RemoveLiquidityBase { totalShares: formatEther(totalShares) as HumanAmount, }; - const { tokenAmounts, bptAmount } = calculateProportionalAmounts( + const { tokenAmounts } = calculateProportionalAmounts( poolStateWithBalances, input.bptIn, ); - const bptToken = new Token( - input.chainId, - bptAmount.address, - bptAmount.decimals, + const bptToken = new Token(input.chainId, poolState.address, 18); + const bptIn = TokenAmount.fromRawAmount( + bptToken, + input.bptIn.rawAmount, ); - const bptIn = TokenAmount.fromRawAmount(bptToken, bptAmount.rawAmount); const amountsOut = tokenAmounts.map((amountIn) => TokenAmount.fromRawAmount( new Token(input.chainId, amountIn.address, amountIn.decimals), diff --git a/src/entities/removeLiquidity/removeLiquidityV2/weighted/removeLiquidityWeighted.ts b/src/entities/removeLiquidity/removeLiquidityV2/weighted/removeLiquidityWeighted.ts index 4a2041c2..aeb93921 100644 --- a/src/entities/removeLiquidity/removeLiquidityV2/weighted/removeLiquidityWeighted.ts +++ b/src/entities/removeLiquidity/removeLiquidityV2/weighted/removeLiquidityWeighted.ts @@ -101,16 +101,15 @@ export class RemoveLiquidityWeighted implements RemoveLiquidityBase { totalShares: formatEther(totalShares) as HumanAmount, }; - const { tokenAmounts, bptAmount } = calculateProportionalAmounts( + const { tokenAmounts } = calculateProportionalAmounts( poolStateWithBalances, input.bptIn, ); - const bptToken = new Token( - input.chainId, - bptAmount.address, - bptAmount.decimals, + const bptToken = new Token(input.chainId, poolState.address, 18); + const bptIn = TokenAmount.fromRawAmount( + bptToken, + input.bptIn.rawAmount, ); - const bptIn = TokenAmount.fromRawAmount(bptToken, bptAmount.rawAmount); const amountsOut = tokenAmounts.map((amount, i) => TokenAmount.fromRawAmount(sortedTokens[i], amount.rawAmount), );