From f0299805acee7776e72ad8dfe80f076ab5a82a2e Mon Sep 17 00:00:00 2001 From: axtezy Date: Fri, 26 Jul 2024 09:11:45 +0200 Subject: [PATCH] Fix lifi on-chain calcs --- package.json | 2 +- .../calculation-manager/on-chain-manager.ts | 51 ++++++++++--------- 2 files changed, 27 insertions(+), 26 deletions(-) diff --git a/package.json b/package.json index 81f2aedb72..efd9699432 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "rubic-sdk", - "version": "5.32.5", + "version": "5.32.6", "description": "Simplify dApp creation", "main": "lib/index.js", "types": "lib/index.d.ts", diff --git a/src/features/on-chain/calculation-manager/on-chain-manager.ts b/src/features/on-chain/calculation-manager/on-chain-manager.ts index 86a2f590a8..e4dec08f6a 100644 --- a/src/features/on-chain/calculation-manager/on-chain-manager.ts +++ b/src/features/on-chain/calculation-manager/on-chain-manager.ts @@ -20,6 +20,7 @@ import { OnChainTradeError } from 'src/features/on-chain/calculation-manager/mod import { OnChainTypedTradeProviders } from 'src/features/on-chain/calculation-manager/models/on-chain-typed-trade-provider'; import { RequiredOnChainManagerCalculationOptions } from 'src/features/on-chain/calculation-manager/models/required-on-chain-manager-calculation-options'; import { WrappedOnChainTradeOrNull } from 'src/features/on-chain/calculation-manager/models/wrapped-on-chain-trade-or-null'; +import { LifiCalculationOptions } from 'src/features/on-chain/calculation-manager/providers/aggregators/lifi/models/lifi-calculation-options'; import { EvmWrapTrade } from 'src/features/on-chain/calculation-manager/providers/common/evm-wrap-trade/evm-wrap-trade'; import { OnChainCalculationOptions, @@ -278,33 +279,33 @@ export class OnChainManager { } private async calculateLifiTrade( - _from: PriceTokenAmount, - _to: PriceToken, - _options: RequiredOnChainManagerCalculationOptions + from: PriceTokenAmount, + to: PriceToken, + options: RequiredOnChainManagerCalculationOptions ): Promise { try { - throw Error('Lifi has been compromised'); - // const disabledProviders = [ - // ...this.LIFI_DISABLED_PROVIDERS, - // ...options.disabledProviders - // ]; - // - // const calculationOptions: LifiCalculationOptions = { - // ...options, - // slippageTolerance: options?.slippageTolerance!, - // gasCalculation: options.gasCalculation === 'disabled' ? 'disabled' : 'calculate', - // disabledProviders - // }; - // - // const lifiAggregator = new this.AGGREGATORS.LIFI(); - // - // const lifiCalculationCall = lifiAggregator.calculate( - // from as PriceTokenAmount, - // to as PriceTokenAmount, - // calculationOptions - // ); - // - // return pTimeout(lifiCalculationCall, options.timeout); + // throw Error('Lifi has been compromised'); + const disabledProviders = [ + ...this.LIFI_DISABLED_PROVIDERS, + ...options.disabledProviders + ]; + + const calculationOptions: LifiCalculationOptions = { + ...options, + slippageTolerance: options?.slippageTolerance!, + gasCalculation: options.gasCalculation === 'disabled' ? 'disabled' : 'calculate', + disabledProviders + }; + + const lifiAggregator = new this.AGGREGATORS.LIFI(); + + const lifiCalculationCall = lifiAggregator.calculate( + from as PriceTokenAmount, + to as PriceTokenAmount, + calculationOptions + ); + + return pTimeout(lifiCalculationCall, options.timeout); } catch (err) { console.debug('[RUBIC_SDK] Trade calculation error occurred for lifi.', err); return { type: ON_CHAIN_TRADE_TYPE.LIFI, error: err };