rubic-sdk 4.30.0-alpha-design.17-fix-gas.0 → 4.30.0-alpha-design.17-fix-gas.1
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/rubic-sdk.min.js +67 -61
- package/dist/rubic-sdk.min.js.map +1 -1
- package/lib/features/cross-chain/calculation-manager/providers/debridge-provider/debridge-cross-chain-provider.js +12 -11
- package/lib/features/cross-chain/calculation-manager/providers/debridge-provider/debridge-cross-chain-provider.js.map +1 -1
- package/lib/features/cross-chain/calculation-manager/providers/debridge-provider/debridge-cross-chain-trade.d.ts +1 -1
- package/lib/features/cross-chain/calculation-manager/providers/debridge-provider/debridge-cross-chain-trade.js +7 -7
- package/lib/features/cross-chain/calculation-manager/providers/debridge-provider/debridge-cross-chain-trade.js.map +1 -1
- package/lib/features/cross-chain/calculation-manager/providers/lifi-provider/lifi-cross-chain-provider.js +1 -1
- package/lib/features/cross-chain/calculation-manager/providers/lifi-provider/lifi-cross-chain-provider.js.map +1 -1
- package/lib/features/cross-chain/calculation-manager/providers/lifi-provider/lifi-cross-chain-trade.d.ts +2 -2
- package/lib/features/cross-chain/calculation-manager/providers/lifi-provider/lifi-cross-chain-trade.js +9 -9
- package/lib/features/cross-chain/calculation-manager/providers/lifi-provider/lifi-cross-chain-trade.js.map +1 -1
- package/lib/features/cross-chain/calculation-manager/providers/squidrouter-provider/squidrouter-cross-chain-provider.js +1 -1
- package/lib/features/cross-chain/calculation-manager/providers/squidrouter-provider/squidrouter-cross-chain-provider.js.map +1 -1
- package/lib/features/cross-chain/calculation-manager/providers/squidrouter-provider/squidrouter-cross-chain-trade.d.ts +2 -2
- package/lib/features/cross-chain/calculation-manager/providers/squidrouter-provider/squidrouter-cross-chain-trade.js +13 -13
- package/lib/features/cross-chain/calculation-manager/providers/squidrouter-provider/squidrouter-cross-chain-trade.js.map +1 -1
- package/lib/features/cross-chain/calculation-manager/providers/symbiosis-provider/symbiosis-cross-chain-provider.js +1 -1
- package/lib/features/cross-chain/calculation-manager/providers/symbiosis-provider/symbiosis-cross-chain-provider.js.map +1 -1
- package/lib/features/cross-chain/calculation-manager/providers/symbiosis-provider/symbiosis-cross-chain-trade.d.ts +2 -2
- package/lib/features/cross-chain/calculation-manager/providers/symbiosis-provider/symbiosis-cross-chain-trade.js +13 -10
- package/lib/features/cross-chain/calculation-manager/providers/symbiosis-provider/symbiosis-cross-chain-trade.js.map +1 -1
- package/lib/features/cross-chain/calculation-manager/providers/xy-provider/xy-cross-chain-provider.js +1 -1
- package/lib/features/cross-chain/calculation-manager/providers/xy-provider/xy-cross-chain-provider.js.map +1 -1
- package/lib/features/cross-chain/calculation-manager/providers/xy-provider/xy-cross-chain-trade.d.ts +2 -2
- package/lib/features/cross-chain/calculation-manager/providers/xy-provider/xy-cross-chain-trade.js +9 -7
- package/lib/features/cross-chain/calculation-manager/providers/xy-provider/xy-cross-chain-trade.js.map +1 -1
- package/package.json +1 -1
package/dist/rubic-sdk.min.js
CHANGED
@@ -184839,9 +184839,6 @@ class DebridgeCrossChainProvider extends cross_chain_provider_1.CrossChainProvid
|
|
184839
184839
|
...toToken.asStruct,
|
184840
184840
|
tokenAmount: web3_pure_1.Web3Pure.fromWei(estimation.dstChainTokenOut.amount, estimation.dstChainTokenOut.decimals)
|
184841
184841
|
});
|
184842
|
-
const gasData = options.gasCalculation === 'enabled'
|
184843
|
-
? await debridge_cross_chain_trade_1.DebridgeCrossChainTrade.getGasData(from, to, requestParams)
|
184844
|
-
: null;
|
184845
184842
|
const transitToken = estimation.srcChainTokenOut || estimation.srcChainTokenIn;
|
184846
184843
|
const web3Public = injector_1.Injector.web3PublicService.getWeb3Public(fromBlockchain);
|
184847
184844
|
const cryptoFeeAmount = await DebridgeCrossChainProvider.getCryptoFeeAmount(web3Public, fromBlockchain);
|
@@ -184850,6 +184847,17 @@ class DebridgeCrossChainProvider extends cross_chain_provider_1.CrossChainProvid
|
|
184850
184847
|
...nativeToken,
|
184851
184848
|
weiAmount: new bignumber_js_1.default(cryptoFeeAmount)
|
184852
184849
|
});
|
184850
|
+
const feeInfo = {
|
184851
|
+
provider: {
|
184852
|
+
cryptoFee: {
|
184853
|
+
amount: web3_pure_1.Web3Pure.fromWei(new bignumber_js_1.default(cryptoFeeAmount)),
|
184854
|
+
token: cryptoFeeToken
|
184855
|
+
}
|
184856
|
+
}
|
184857
|
+
};
|
184858
|
+
const gasData = options.gasCalculation === 'enabled'
|
184859
|
+
? await debridge_cross_chain_trade_1.DebridgeCrossChainTrade.getGasData(from, to, requestParams)
|
184860
|
+
: null;
|
184853
184861
|
return {
|
184854
184862
|
trade: new debridge_cross_chain_trade_1.DebridgeCrossChainTrade({
|
184855
184863
|
from,
|
@@ -184859,14 +184867,7 @@ class DebridgeCrossChainProvider extends cross_chain_provider_1.CrossChainProvid
|
|
184859
184867
|
priceImpact: from.calculatePriceImpactPercent(to),
|
184860
184868
|
allowanceTarget: tx.allowanceTarget,
|
184861
184869
|
slippage: 0,
|
184862
|
-
feeInfo
|
184863
|
-
provider: {
|
184864
|
-
cryptoFee: {
|
184865
|
-
amount: web3_pure_1.Web3Pure.fromWei(new bignumber_js_1.default(cryptoFeeAmount)),
|
184866
|
-
token: cryptoFeeToken
|
184867
|
-
}
|
184868
|
-
}
|
184869
|
-
},
|
184870
|
+
feeInfo,
|
184870
184871
|
transitAmount: web3_pure_1.Web3Pure.fromWei(transitToken.amount, transitToken.decimals),
|
184871
184872
|
cryptoFeeToken,
|
184872
184873
|
onChainTrade: null
|
@@ -185011,7 +185012,7 @@ class DebridgeCrossChainTrade extends evm_cross_chain_trade_1.EvmCrossChainTrade
|
|
185011
185012
|
transitAmount: new bignumber_js_1.default(NaN),
|
185012
185013
|
cryptoFeeToken: from,
|
185013
185014
|
onChainTrade: null
|
185014
|
-
}, evm_web3_pure_1.EvmWeb3Pure.EMPTY_ADDRESS, []).getContractParams({});
|
185015
|
+
}, evm_web3_pure_1.EvmWeb3Pure.EMPTY_ADDRESS, []).getContractParams({}, true);
|
185015
185016
|
const web3Public = injector_1.Injector.web3PublicService.getWeb3Public(fromBlockchain);
|
185016
185017
|
const [gasLimit, gasDetails] = await Promise.all([
|
185017
185018
|
web3Public.getEstimatedGas(contractAbi, contractAddress, methodName, methodArguments, walletAddress, value),
|
@@ -185027,8 +185028,6 @@ class DebridgeCrossChainTrade extends evm_cross_chain_trade_1.EvmCrossChainTrade
|
|
185027
185028
|
};
|
185028
185029
|
}
|
185029
185030
|
catch (_err) {
|
185030
|
-
console.log('Provider: DLN');
|
185031
|
-
console.log('Provider Error: ', _err);
|
185032
185031
|
return null;
|
185033
185032
|
}
|
185034
185033
|
}
|
@@ -185097,8 +185096,8 @@ class DebridgeCrossChainTrade extends evm_cross_chain_trade_1.EvmCrossChainTrade
|
|
185097
185096
|
throw (0, errors_2.parseError)(err);
|
185098
185097
|
}
|
185099
185098
|
}
|
185100
|
-
async getContractParams(options) {
|
185101
|
-
const { data, value: providerValue } = await this.getTransactionRequest(options?.receiverAddress);
|
185099
|
+
async getContractParams(options, skipAmountChangeCheck = false) {
|
185100
|
+
const { data, value: providerValue } = await this.getTransactionRequest(options?.receiverAddress, null, skipAmountChangeCheck);
|
185102
185101
|
const bridgeData = this.getBridgeData(options);
|
185103
185102
|
const swapData = this.onChainTrade && (await this.getSwapData(options));
|
185104
185103
|
const providerData = this.getProviderData(data);
|
@@ -185121,7 +185120,7 @@ class DebridgeCrossChainTrade extends evm_cross_chain_trade_1.EvmCrossChainTrade
|
|
185121
185120
|
const usdCryptoFee = this.cryptoFeeToken.price.multipliedBy(this.cryptoFeeToken.tokenAmount);
|
185122
185121
|
return fromUsd.plus(usdCryptoFee.isNaN() ? 0 : usdCryptoFee).dividedBy(this.to.tokenAmount);
|
185123
185122
|
}
|
185124
|
-
async getTransactionRequest(receiverAddress, transactionConfig) {
|
185123
|
+
async getTransactionRequest(receiverAddress, transactionConfig, skipAmountChangeCheck = false) {
|
185125
185124
|
if (transactionConfig) {
|
185126
185125
|
return {
|
185127
185126
|
data: transactionConfig.data,
|
@@ -185141,7 +185140,9 @@ class DebridgeCrossChainTrade extends evm_cross_chain_trade_1.EvmCrossChainTrade
|
|
185141
185140
|
referralCode: '4350'
|
185142
185141
|
};
|
185143
185142
|
const { tx, estimation } = await injector_1.Injector.httpClient.get(`${debridge_cross_chain_provider_1.DebridgeCrossChainProvider.apiEndpoint}/order/create-tx`, { params });
|
185144
|
-
|
185143
|
+
if (!skipAmountChangeCheck) {
|
185144
|
+
evm_cross_chain_trade_1.EvmCrossChainTrade.checkAmountChange(tx, estimation.dstChainTokenOut.amount, this.to.stringWeiAmount);
|
185145
|
+
}
|
185145
185146
|
return tx;
|
185146
185147
|
}
|
185147
185148
|
getTradeInfo() {
|
@@ -185405,7 +185406,7 @@ class LifiCrossChainProvider extends cross_chain_provider_1.CrossChainProvider {
|
|
185405
185406
|
});
|
185406
185407
|
const priceImpact = from.calculatePriceImpactPercent(to);
|
185407
185408
|
const gasData = options.gasCalculation === 'enabled'
|
185408
|
-
? await lifi_cross_chain_trade_1.LifiCrossChainTrade.getGasData(from, to, bestRoute)
|
185409
|
+
? await lifi_cross_chain_trade_1.LifiCrossChainTrade.getGasData(from, to, bestRoute, feeInfo)
|
185409
185410
|
: null;
|
185410
185411
|
const { onChainType, bridgeType } = this.parseTradeTypes(bestRoute.steps);
|
185411
185412
|
const trade = new lifi_cross_chain_trade_1.LifiCrossChainTrade({
|
@@ -185562,7 +185563,7 @@ const convert_gas_price_1 = __webpack_require__(/*! ../../utils/convert-gas-pric
|
|
185562
185563
|
*/
|
185563
185564
|
class LifiCrossChainTrade extends evm_cross_chain_trade_1.EvmCrossChainTrade {
|
185564
185565
|
/** @internal */
|
185565
|
-
static async getGasData(from, to, route) {
|
185566
|
+
static async getGasData(from, to, route, feeInfo) {
|
185566
185567
|
const fromBlockchain = from.blockchain;
|
185567
185568
|
const walletAddress = injector_1.Injector.web3PrivateService.getWeb3PrivateByBlockchain(fromBlockchain).address;
|
185568
185569
|
if (!walletAddress) {
|
@@ -185575,7 +185576,7 @@ class LifiCrossChainTrade extends evm_cross_chain_trade_1.EvmCrossChainTrade {
|
|
185575
185576
|
route,
|
185576
185577
|
gasData: null,
|
185577
185578
|
toTokenAmountMin: new bignumber_js_1.default(0),
|
185578
|
-
feeInfo
|
185579
|
+
feeInfo,
|
185579
185580
|
priceImpact: from.calculatePriceImpactPercent(to) || 0,
|
185580
185581
|
onChainSubtype: {
|
185581
185582
|
from: undefined,
|
@@ -185583,7 +185584,7 @@ class LifiCrossChainTrade extends evm_cross_chain_trade_1.EvmCrossChainTrade {
|
|
185583
185584
|
},
|
185584
185585
|
bridgeType: bridge_type_1.BRIDGE_TYPE.LIFI,
|
185585
185586
|
slippage: 0
|
185586
|
-
}, evm_web3_pure_1.EvmWeb3Pure.EMPTY_ADDRESS, []).getContractParams({});
|
185587
|
+
}, evm_web3_pure_1.EvmWeb3Pure.EMPTY_ADDRESS, []).getContractParams({}, true);
|
185587
185588
|
const web3Public = injector_1.Injector.web3PublicService.getWeb3Public(fromBlockchain);
|
185588
185589
|
const [gasLimit, gasDetails] = await Promise.all([
|
185589
185590
|
web3Public.getEstimatedGas(contractAbi, contractAddress, methodName, methodArguments, walletAddress, value),
|
@@ -185599,8 +185600,6 @@ class LifiCrossChainTrade extends evm_cross_chain_trade_1.EvmCrossChainTrade {
|
|
185599
185600
|
};
|
185600
185601
|
}
|
185601
185602
|
catch (_err) {
|
185602
|
-
console.log('Provider: LiFi');
|
185603
|
-
console.log('Provider Error: ', _err);
|
185604
185603
|
return null;
|
185605
185604
|
}
|
185606
185605
|
}
|
@@ -185670,8 +185669,8 @@ class LifiCrossChainTrade extends evm_cross_chain_trade_1.EvmCrossChainTrade {
|
|
185670
185669
|
throw err;
|
185671
185670
|
}
|
185672
185671
|
}
|
185673
|
-
async getContractParams(options) {
|
185674
|
-
const { data, value: providerValue, to: providerRouter } = await this.fetchSwapData(options?.receiverAddress);
|
185672
|
+
async getContractParams(options, skipAmountChangeCheck = false) {
|
185673
|
+
const { data, value: providerValue, to: providerRouter } = await this.fetchSwapData(options?.receiverAddress, skipAmountChangeCheck);
|
185675
185674
|
const bridgeData = proxy_cross_chain_evm_trade_1.ProxyCrossChainEvmTrade.getBridgeData(options, {
|
185676
185675
|
walletAddress: this.walletAddress,
|
185677
185676
|
fromTokenAmount: this.from,
|
@@ -185698,7 +185697,7 @@ class LifiCrossChainTrade extends evm_cross_chain_trade_1.EvmCrossChainTrade {
|
|
185698
185697
|
value
|
185699
185698
|
};
|
185700
185699
|
}
|
185701
|
-
async fetchSwapData(receiverAddress) {
|
185700
|
+
async fetchSwapData(receiverAddress, skipAmountChangeCheck = false) {
|
185702
185701
|
const firstStep = this.route.steps[0];
|
185703
185702
|
const step = {
|
185704
185703
|
...firstStep,
|
@@ -185722,7 +185721,9 @@ class LifiCrossChainTrade extends evm_cross_chain_trade_1.EvmCrossChainTrade {
|
|
185722
185721
|
const swapResponse = await this.httpClient.post('https://li.quest/v1/advanced/stepTransaction', {
|
185723
185722
|
...step
|
185724
185723
|
});
|
185725
|
-
|
185724
|
+
if (!skipAmountChangeCheck) {
|
185725
|
+
evm_cross_chain_trade_1.EvmCrossChainTrade.checkAmountChange(swapResponse.transactionRequest, swapResponse.estimate.toAmount, this.to.stringWeiAmount);
|
185726
|
+
}
|
185726
185727
|
return swapResponse.transactionRequest;
|
185727
185728
|
}
|
185728
185729
|
getTradeAmountRatio(fromUsd) {
|
@@ -186531,7 +186532,7 @@ class SquidrouterCrossChainProvider extends cross_chain_provider_1.CrossChainPro
|
|
186531
186532
|
tokenAmount: web3_pure_1.Web3Pure.fromWei(estimate.toAmount, toToken.decimals)
|
186532
186533
|
});
|
186533
186534
|
const gasData = options.gasCalculation === 'enabled'
|
186534
|
-
? await squidrouter_cross_chain_trade_1.SquidrouterCrossChainTrade.getGasData(from, to, requestParams)
|
186535
|
+
? await squidrouter_cross_chain_trade_1.SquidrouterCrossChainTrade.getGasData(from, to, requestParams, feeInfo)
|
186535
186536
|
: null;
|
186536
186537
|
const feeAmount = estimate.feeCosts
|
186537
186538
|
.filter(fee => (0, blockchain_1.compareAddresses)(this.nativeAddress, fee.token.address))
|
@@ -186668,7 +186669,7 @@ const convert_gas_price_1 = __webpack_require__(/*! ../../utils/convert-gas-pric
|
|
186668
186669
|
*/
|
186669
186670
|
class SquidrouterCrossChainTrade extends evm_cross_chain_trade_1.EvmCrossChainTrade {
|
186670
186671
|
/** @internal */
|
186671
|
-
static async getGasData(from, to, transactionRequest) {
|
186672
|
+
static async getGasData(from, to, transactionRequest, feeInfo) {
|
186672
186673
|
const fromBlockchain = from.blockchain;
|
186673
186674
|
const walletAddress = injector_1.Injector.web3PrivateService.getWeb3PrivateByBlockchain(fromBlockchain).address;
|
186674
186675
|
if (!walletAddress) {
|
@@ -186682,13 +186683,13 @@ class SquidrouterCrossChainTrade extends evm_cross_chain_trade_1.EvmCrossChainTr
|
|
186682
186683
|
priceImpact: 0,
|
186683
186684
|
allowanceTarget: '',
|
186684
186685
|
slippage: 0,
|
186685
|
-
feeInfo
|
186686
|
+
feeInfo,
|
186686
186687
|
transitUSDAmount: new bignumber_js_1.default(NaN),
|
186687
186688
|
cryptoFeeToken: from,
|
186688
186689
|
onChainTrade: null,
|
186689
186690
|
onChainSubtype: { from: undefined, to: undefined },
|
186690
186691
|
transactionRequest
|
186691
|
-
}, evm_web3_pure_1.EvmWeb3Pure.EMPTY_ADDRESS, []).getContractParams({});
|
186692
|
+
}, evm_web3_pure_1.EvmWeb3Pure.EMPTY_ADDRESS, []).getContractParams({}, true);
|
186692
186693
|
const web3Public = injector_1.Injector.web3PublicService.getWeb3Public(fromBlockchain);
|
186693
186694
|
const [gasLimit, gasDetails] = await Promise.all([
|
186694
186695
|
web3Public.getEstimatedGas(contractAbi, contractAddress, methodName, methodArguments, walletAddress, value),
|
@@ -186704,8 +186705,6 @@ class SquidrouterCrossChainTrade extends evm_cross_chain_trade_1.EvmCrossChainTr
|
|
186704
186705
|
};
|
186705
186706
|
}
|
186706
186707
|
catch (_err) {
|
186707
|
-
console.log('Provider: Squid');
|
186708
|
-
console.log('Provider Error: ', _err);
|
186709
186708
|
return null;
|
186710
186709
|
}
|
186711
186710
|
}
|
@@ -186773,8 +186772,8 @@ class SquidrouterCrossChainTrade extends evm_cross_chain_trade_1.EvmCrossChainTr
|
|
186773
186772
|
throw (0, errors_2.parseError)(err);
|
186774
186773
|
}
|
186775
186774
|
}
|
186776
|
-
async getContractParams(options) {
|
186777
|
-
const { data, value: providerValue, to } = await this.getTransactionRequest(options?.receiverAddress || this.walletAddress);
|
186775
|
+
async getContractParams(options, skipAmountChangeCheck = false) {
|
186776
|
+
const { data, value: providerValue, to } = await this.getTransactionRequest(options?.receiverAddress || this.walletAddress, null, skipAmountChangeCheck);
|
186778
186777
|
const bridgeData = proxy_cross_chain_evm_trade_1.ProxyCrossChainEvmTrade.getBridgeData(options, {
|
186779
186778
|
walletAddress: this.walletAddress,
|
186780
186779
|
fromTokenAmount: this.from,
|
@@ -186814,7 +186813,7 @@ class SquidrouterCrossChainTrade extends evm_cross_chain_trade_1.EvmCrossChainTr
|
|
186814
186813
|
routePath: this.routePath
|
186815
186814
|
};
|
186816
186815
|
}
|
186817
|
-
async getTransactionRequest(receiverAddress, transactionConfig) {
|
186816
|
+
async getTransactionRequest(receiverAddress, transactionConfig, skipAmountChangeCheck = false) {
|
186818
186817
|
if (transactionConfig) {
|
186819
186818
|
return {
|
186820
186819
|
data: transactionConfig.data,
|
@@ -186832,11 +186831,13 @@ class SquidrouterCrossChainTrade extends evm_cross_chain_trade_1.EvmCrossChainTr
|
|
186832
186831
|
'x-integrator-id': 'rubic-api'
|
186833
186832
|
}
|
186834
186833
|
});
|
186835
|
-
|
186836
|
-
|
186837
|
-
|
186838
|
-
|
186839
|
-
|
186834
|
+
if (!skipAmountChangeCheck) {
|
186835
|
+
evm_cross_chain_trade_1.EvmCrossChainTrade.checkAmountChange({
|
186836
|
+
data: transactionRequest.data,
|
186837
|
+
value: transactionRequest.value,
|
186838
|
+
to: transactionRequest.targetAddress
|
186839
|
+
}, routeEstimate.toAmount, this.to.stringWeiAmount);
|
186840
|
+
}
|
186840
186841
|
return {
|
186841
186842
|
data: transactionRequest.data,
|
186842
186843
|
value: transactionRequest.value,
|
@@ -188559,7 +188560,7 @@ class SymbiosisCrossChainProvider extends cross_chain_provider_1.CrossChainProvi
|
|
188559
188560
|
tokenAmount: new bignumber_js_1.default(web3_pure_1.Web3Pure.fromWei(tokenAmountOut.amount, tokenAmountOut.decimals))
|
188560
188561
|
});
|
188561
188562
|
const gasData = options.gasCalculation === 'enabled'
|
188562
|
-
? await symbiosis_cross_chain_trade_1.SymbiosisCrossChainTrade.getGasData(from, to, swapParams)
|
188563
|
+
? await symbiosis_cross_chain_trade_1.SymbiosisCrossChainTrade.getGasData(from, to, swapParams, feeInfo, approveTo)
|
188563
188564
|
: null;
|
188564
188565
|
return {
|
188565
188566
|
trade: new symbiosis_cross_chain_trade_1.SymbiosisCrossChainTrade({
|
@@ -188712,7 +188713,7 @@ const convert_gas_price_1 = __webpack_require__(/*! ../../utils/convert-gas-pric
|
|
188712
188713
|
*/
|
188713
188714
|
class SymbiosisCrossChainTrade extends evm_cross_chain_trade_1.EvmCrossChainTrade {
|
188714
188715
|
/** @internal */
|
188715
|
-
static async getGasData(from, to, swapParams) {
|
188716
|
+
static async getGasData(from, to, swapParams, feeInfo, providerGateway) {
|
188716
188717
|
const fromBlockchain = from.blockchain;
|
188717
188718
|
const walletAddress = injector_1.Injector.web3PrivateService.getWeb3PrivateByBlockchain(fromBlockchain).address;
|
188718
188719
|
if (!walletAddress) {
|
@@ -188725,12 +188726,15 @@ class SymbiosisCrossChainTrade extends evm_cross_chain_trade_1.EvmCrossChainTrad
|
|
188725
188726
|
gasData: null,
|
188726
188727
|
priceImpact: 0,
|
188727
188728
|
slippage: 0,
|
188728
|
-
feeInfo
|
188729
|
+
feeInfo,
|
188729
188730
|
transitAmount: new bignumber_js_1.default(NaN),
|
188730
188731
|
tradeType: { in: undefined, out: undefined },
|
188731
|
-
contractAddresses: {
|
188732
|
+
contractAddresses: {
|
188733
|
+
providerRouter: '',
|
188734
|
+
providerGateway: providerGateway
|
188735
|
+
},
|
188732
188736
|
swapParams
|
188733
|
-
}, evm_web3_pure_1.EvmWeb3Pure.EMPTY_ADDRESS, []).getContractParams({});
|
188737
|
+
}, evm_web3_pure_1.EvmWeb3Pure.EMPTY_ADDRESS, []).getContractParams({}, true);
|
188734
188738
|
const web3Public = injector_1.Injector.web3PublicService.getWeb3Public(fromBlockchain);
|
188735
188739
|
const [gasLimit, gasDetails] = await Promise.all([
|
188736
188740
|
web3Public.getEstimatedGas(contractAbi, contractAddress, methodName, methodArguments, walletAddress, value),
|
@@ -188746,8 +188750,6 @@ class SymbiosisCrossChainTrade extends evm_cross_chain_trade_1.EvmCrossChainTrad
|
|
188746
188750
|
};
|
188747
188751
|
}
|
188748
188752
|
catch (_err) {
|
188749
|
-
console.log('Provider: Symbiosis');
|
188750
|
-
console.log('Provider Error: ', _err);
|
188751
188753
|
return null;
|
188752
188754
|
}
|
188753
188755
|
}
|
@@ -188785,8 +188787,8 @@ class SymbiosisCrossChainTrade extends evm_cross_chain_trade_1.EvmCrossChainTrad
|
|
188785
188787
|
this.onChainSubtype = SymbiosisCrossChainTrade.getSubtype(crossChainTrade.tradeType, crossChainTrade.to.blockchain);
|
188786
188788
|
this.contractAddresses = crossChainTrade.contractAddresses;
|
188787
188789
|
}
|
188788
|
-
async getContractParams(options) {
|
188789
|
-
const { data, value: providerValue, to } = await this.getTransactionRequest(this.walletAddress, options?.receiverAddress);
|
188790
|
+
async getContractParams(options, skipAmountChangeCheck = false) {
|
188791
|
+
const { data, value: providerValue, to } = await this.getTransactionRequest(this.walletAddress, options?.receiverAddress, null, skipAmountChangeCheck);
|
188790
188792
|
let receiverAddress = options.receiverAddress;
|
188791
188793
|
let toAddress = '';
|
188792
188794
|
if (this.to.blockchain === blockchain_name_1.BLOCKCHAIN_NAME.TRON) {
|
@@ -188882,7 +188884,7 @@ class SymbiosisCrossChainTrade extends evm_cross_chain_trade_1.EvmCrossChainTrad
|
|
188882
188884
|
: mapping?.[tradeType?.out || 'default']
|
188883
188885
|
};
|
188884
188886
|
}
|
188885
|
-
async getTransactionRequest(walletAddress, receiverAddress, transactionConfig) {
|
188887
|
+
async getTransactionRequest(walletAddress, receiverAddress, transactionConfig, skipAmountChangeCheck = false) {
|
188886
188888
|
if (transactionConfig) {
|
188887
188889
|
return {
|
188888
188890
|
data: transactionConfig.data,
|
@@ -188901,7 +188903,9 @@ class SymbiosisCrossChainTrade extends evm_cross_chain_trade_1.EvmCrossChainTrad
|
|
188901
188903
|
value: tradeData.tx.value?.toString() || '0',
|
188902
188904
|
to: tradeData.tx.to
|
188903
188905
|
};
|
188904
|
-
|
188906
|
+
if (!skipAmountChangeCheck) {
|
188907
|
+
evm_cross_chain_trade_1.EvmCrossChainTrade.checkAmountChange(config, tradeData.tokenAmountOut.amount, this.to.stringWeiAmount);
|
188908
|
+
}
|
188905
188909
|
return config;
|
188906
188910
|
}
|
188907
188911
|
}
|
@@ -189590,7 +189594,7 @@ class XyCrossChainProvider extends cross_chain_provider_1.CrossChainProvider {
|
|
189590
189594
|
tokenAmount: web3_pure_1.Web3Pure.fromWei(toTokenAmount, toToken.decimals)
|
189591
189595
|
});
|
189592
189596
|
const gasData = options.gasCalculation === 'enabled'
|
189593
|
-
? await xy_cross_chain_trade_1.XyCrossChainTrade.getGasData(fromToken, to, requestParams)
|
189597
|
+
? await xy_cross_chain_trade_1.XyCrossChainTrade.getGasData(fromToken, to, requestParams, feeInfo)
|
189594
189598
|
: null;
|
189595
189599
|
return {
|
189596
189600
|
trade: new xy_cross_chain_trade_1.XyCrossChainTrade({
|
@@ -189715,7 +189719,7 @@ const convert_gas_price_1 = __webpack_require__(/*! ../../utils/convert-gas-pric
|
|
189715
189719
|
*/
|
189716
189720
|
class XyCrossChainTrade extends evm_cross_chain_trade_1.EvmCrossChainTrade {
|
189717
189721
|
/** @internal */
|
189718
|
-
static async getGasData(from, to, transactionRequest) {
|
189722
|
+
static async getGasData(from, to, transactionRequest, feeInfo) {
|
189719
189723
|
const fromBlockchain = from.blockchain;
|
189720
189724
|
const walletAddress = injector_1.Injector.web3PrivateService.getWeb3PrivateByBlockchain(fromBlockchain).address;
|
189721
189725
|
if (!walletAddress) {
|
@@ -189729,9 +189733,9 @@ class XyCrossChainTrade extends evm_cross_chain_trade_1.EvmCrossChainTrade {
|
|
189729
189733
|
gasData: null,
|
189730
189734
|
priceImpact: 0,
|
189731
189735
|
slippage: 0,
|
189732
|
-
feeInfo
|
189736
|
+
feeInfo,
|
189733
189737
|
onChainTrade: null
|
189734
|
-
}, evm_web3_pure_1.EvmWeb3Pure.EMPTY_ADDRESS, []).getContractParams({});
|
189738
|
+
}, evm_web3_pure_1.EvmWeb3Pure.EMPTY_ADDRESS, []).getContractParams({}, true);
|
189735
189739
|
const web3Public = injector_1.Injector.web3PublicService.getWeb3Public(fromBlockchain);
|
189736
189740
|
const [gasLimit, gasDetails] = await Promise.all([
|
189737
189741
|
web3Public.getEstimatedGas(contractAbi, contractAddress, methodName, methodArguments, walletAddress, value),
|
@@ -189808,9 +189812,9 @@ class XyCrossChainTrade extends evm_cross_chain_trade_1.EvmCrossChainTrade {
|
|
189808
189812
|
throw err;
|
189809
189813
|
}
|
189810
189814
|
}
|
189811
|
-
async getContractParams(options) {
|
189815
|
+
async getContractParams(options, skipAmountChangeCheck = false) {
|
189812
189816
|
const receiverAddress = options?.receiverAddress || this.walletAddress;
|
189813
|
-
const { data, value: providerValue, to: providerRouter } = await this.getTransactionRequest(receiverAddress);
|
189817
|
+
const { data, value: providerValue, to: providerRouter } = await this.getTransactionRequest(receiverAddress, skipAmountChangeCheck);
|
189814
189818
|
const bridgeData = proxy_cross_chain_evm_trade_1.ProxyCrossChainEvmTrade.getBridgeData(options, {
|
189815
189819
|
walletAddress: receiverAddress,
|
189816
189820
|
fromTokenAmount: this.from,
|
@@ -189837,13 +189841,15 @@ class XyCrossChainTrade extends evm_cross_chain_trade_1.EvmCrossChainTrade {
|
|
189837
189841
|
getTradeAmountRatio(fromUsd) {
|
189838
189842
|
return fromUsd.dividedBy(this.to.tokenAmount);
|
189839
189843
|
}
|
189840
|
-
async getTransactionRequest(receiverAddress) {
|
189844
|
+
async getTransactionRequest(receiverAddress, skipAmountChangeCheck = false) {
|
189841
189845
|
const params = {
|
189842
189846
|
...this.transactionRequest,
|
189843
189847
|
...(receiverAddress && { receiveAddress: receiverAddress })
|
189844
189848
|
};
|
189845
189849
|
const { tx, toTokenAmount } = await injector_1.Injector.httpClient.get(`${xy_cross_chain_provider_1.XyCrossChainProvider.apiEndpoint}/swap`, { params: { ...params } });
|
189846
|
-
|
189850
|
+
if (!skipAmountChangeCheck) {
|
189851
|
+
await evm_cross_chain_trade_1.EvmCrossChainTrade.checkAmountChange(tx, toTokenAmount, this.to.stringWeiAmount);
|
189852
|
+
}
|
189847
189853
|
return tx;
|
189848
189854
|
}
|
189849
189855
|
getTradeInfo() {
|