From ef60ed0f4ab0390d1b07a315526d214b2ac3726c Mon Sep 17 00:00:00 2001 From: Aleksandr Kraiz Date: Thu, 25 Aug 2022 15:13:13 +0400 Subject: [PATCH] networkFeeInFeeAsset / orionFeeInFeeAsset --- README.md | 8 +++++--- package.json | 2 +- src/OrionUnit/Exchange/getSwapInfo.ts | 25 +++++++++++++++++++------ 3 files changed, 25 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index a065649..d7ab1d0 100644 --- a/README.md +++ b/README.md @@ -123,6 +123,7 @@ console.log(swapInfo); console.log(fee); // { +// route: 'pool', // swapInfo: { // id: 'e5d50b8e-ca82-4826-b454-3fa12b693c11', // amountIn: 20, @@ -149,9 +150,10 @@ console.log(fee); // type: 'exactSpend' // }, // fee: { -// assetName: 'ORN', -// assetAddress: '0xf223eca06261145b3287a0fefd8cfad371c7eb34', -// amount: '1.0247136357221697138126003277499197658871168' +// assetName: 'FTM', +// assetAddress: '0x0000000000000000000000000000000000000000', +// networkFeeInFeeAsset: '0.00073929546', +// protocolFeeInFeeAsset: undefined // } // } ``` diff --git a/package.json b/package.json index 059342e..2f6783a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@orionprotocol/sdk", - "version": "0.15.1", + "version": "0.15.2", "description": "Orion Protocol SDK", "main": "./lib/esm/index.js", "module": "./lib/esm/index.js", diff --git a/src/OrionUnit/Exchange/getSwapInfo.ts b/src/OrionUnit/Exchange/getSwapInfo.ts index 2f0e58e..e84c608 100644 --- a/src/OrionUnit/Exchange/getSwapInfo.ts +++ b/src/OrionUnit/Exchange/getSwapInfo.ts @@ -106,13 +106,12 @@ export default async function getSwapInfo({ fee: { assetName: nativeCryptocurrency, assetAddress: ethers.constants.AddressZero, - amount: denormalizedTransactionCost.toString(), + networkFeeInFeeAsset: denormalizedTransactionCost.toString(), + protocolFeeInFeeAsset: undefined, }, }; } - let feeAmount: string | undefined; - if (swapInfo.orderInfo) { const [baseAssetName] = swapInfo.orderInfo.assetPair.split('-'); if (baseAssetName === undefined) throw new Error('Base asset name is undefined'); @@ -129,7 +128,10 @@ export default async function getSwapInfo({ const feePercent = feeAssets?.[feeAsset]; if (!feePercent) throw new Error(`Fee asset ${feeAsset} not available`); - const { totalFeeInFeeAsset } = utils.calculateFeeInFeeAsset( + const { + orionFeeInFeeAsset, + networkFeeInFeeAsset, + } = utils.calculateFeeInFeeAsset( swapInfo.orderInfo.amount, feeAssetPriceInOrn, baseAssetPriceInOrn, @@ -137,7 +139,17 @@ export default async function getSwapInfo({ gasPriceGwei, feePercent, ); - feeAmount = totalFeeInFeeAsset; + + return { + route, + swapInfo, + fee: { + assetName: feeAsset, + assetAddress: feeAssetAddress, + networkFeeInFeeAsset, + protocolFeeInFeeAsset: orionFeeInFeeAsset, + }, + }; } return { @@ -146,7 +158,8 @@ export default async function getSwapInfo({ fee: { assetName: feeAsset, assetAddress: feeAssetAddress, - amount: feeAmount, + networkFeeInFeeAsset: undefined, + protocolFeeInFeeAsset: undefined, }, }; }