Skip to content

Commit

Permalink
Merge pull request #11 from soramitsu/adar-dev
Browse files Browse the repository at this point in the history
Adar dev
  • Loading branch information
timofeytrepalin authored Mar 9, 2023
2 parents f7eb66e + b0fd4b3 commit dc793f7
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 2 deletions.
2 changes: 2 additions & 0 deletions src/modules/ADAR/consts/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -39,3 +39,5 @@ function createStage(title: string, componentName: string): Stage {
component: componentName,
};
}

export const slippageMultiplier = 1.05;
6 changes: 4 additions & 2 deletions src/store/routeAssets/actions.ts
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ import { findLast, groupBy, sumBy } from 'lodash';
import { NumberLike } from '@sora-substrate/math';
import { Messages } from '@sora-substrate/util/build/logger';
import { assert } from '@polkadot/util';
import { slippageMultiplier } from '@/modules/ADAR/consts';

const actions = defineActions({
processingNextStage(context) {
Expand Down Expand Up @@ -392,10 +393,12 @@ async function executeBatchSwapAndSend(context, data: Array<any>): Promise<any>
const findAsset = (assetName: string) => {
return assetsTable.find((item: Asset) => item.address === assetName);
};
let inputTokenAmount: FPNumber = FPNumber.ZERO;
const swapTransferData = groupedData.map((entry) => {
const [outcomeAssetId, receivers] = entry;
const approxSum = sumBy(receivers, (receiver) => receiver.usd);
const dexIdData = getAmountAndDexId(context, inputAsset, findAsset(outcomeAssetId) as Asset, approxSum);
inputTokenAmount = inputTokenAmount.add(FPNumber.fromCodecValue(dexIdData?.amountFrom as string));
const dexId = dexIdData?.bestDexId;
return {
outcomeAssetId,
Expand All @@ -404,8 +407,7 @@ async function executeBatchSwapAndSend(context, data: Array<any>): Promise<any>
};
});

// const formattedToAddress = receiver.slice(0, 2) === 'cn' ? receiver : this.root.formatAddress(receiver);
const maxInputAmount = getAssetBalance(inputAsset);
const maxInputAmount = inputTokenAmount.mul(new FPNumber(slippageMultiplier)).toCodecString();
const params = calcTxParams(inputAsset, maxInputAmount, undefined);
await withLoading(async () => {
try {
Expand Down

0 comments on commit dc793f7

Please sign in to comment.