Skip to content

Commit

Permalink
TW-1646 Remake fix
Browse files Browse the repository at this point in the history
  • Loading branch information
keshan3262 committed Jan 16, 2025
1 parent 9b9be25 commit 009c35e
Show file tree
Hide file tree
Showing 3 changed files with 25 additions and 19 deletions.
9 changes: 6 additions & 3 deletions src/apis/kord-fi/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -106,11 +106,14 @@ export const getKordFiUserDeposits$ = (
);

function safeDiv(a: BigNumber.Value, b: BigNumber.Value) {
try {
return new BigNumber(a).div(b);
} catch (e) {
const castA = new BigNumber(a);
const castB = new BigNumber(b);

if (castA.isNaN() || castB.isNaN()) {
return new BigNumber(NaN);
}

return castA.div(castB);
}

export const getKordFiItems$ = (rates: ExchangeRateRecord): Observable<Array<SavingsItem>> =>
Expand Down
17 changes: 10 additions & 7 deletions src/utils/swap.utils.ts
Original file line number Diff line number Diff line change
Expand Up @@ -146,8 +146,11 @@ export const getSwapTransferParams = async (
approvesParams = approve;
revokesParams = revoke;
} else if (fromRoute3Token.id === THREE_ROUTE_SIRS_TOKEN.id) {
const xtzFromBurnAmount = tzToMutez(chains.xtzTree.tokenInAmount, THREE_ROUTE_XTZ_TOKEN.decimals);
const tzbtcFromBurnAmount = tzToMutez(chains.tzbtcTree.tokenInAmount, THREE_ROUTE_TZBTC_TOKEN.decimals);
const xtzFromBurnAmount = tzToMutez(new BigNumber(chains.xtzTree.tokenInAmount), THREE_ROUTE_XTZ_TOKEN.decimals);
const tzbtcFromBurnAmount = tzToMutez(
new BigNumber(chains.tzbtcTree.tokenInAmount),
THREE_ROUTE_TZBTC_TOKEN.decimals
);
burnSirsParams = [
lbDexContract.methodsObject
.removeLiquidity({
Expand All @@ -170,8 +173,8 @@ export const getSwapTransferParams = async (
approvesParams = approveTzbtc;
revokesParams = revokeTzbtc;
swapParams = [];
const xtzSwapOut = tzToMutez(chains.xtzTree.tokenOutAmount, toRoute3Token.decimals);
const tzbtcSwapOut = tzToMutez(chains.tzbtcTree.tokenOutAmount, toRoute3Token.decimals);
const xtzSwapOut = tzToMutez(new BigNumber(chains.xtzTree.tokenOutAmount), toRoute3Token.decimals);
const tzbtcSwapOut = tzToMutez(new BigNumber(chains.tzbtcTree.tokenOutAmount), toRoute3Token.decimals);
if (chains.tzbtcHops.length > 0) {
const tzbtcSwapMethod = swapContract.methodsObject.execute({
token_in_id: THREE_ROUTE_TZBTC_TOKEN.id,
Expand Down Expand Up @@ -205,8 +208,8 @@ export const getSwapTransferParams = async (
approvesParams = approveInputToken;
revokesParams = revokeInputToken;
swapParams = [];
const xtzSwapOut = tzToMutez(chains.xtzTree.tokenOutAmount, THREE_ROUTE_XTZ_TOKEN.decimals);
const tzbtcSwapOut = tzToMutez(chains.tzbtcTree.tokenOutAmount, THREE_ROUTE_TZBTC_TOKEN.decimals);
const xtzSwapOut = tzToMutez(new BigNumber(chains.xtzTree.tokenOutAmount), THREE_ROUTE_XTZ_TOKEN.decimals);
const tzbtcSwapOut = tzToMutez(new BigNumber(chains.tzbtcTree.tokenOutAmount), THREE_ROUTE_TZBTC_TOKEN.decimals);
const xtzIsSwapped = chains.xtzHops.length > 0;
const tzbtcIsSwapped = chains.tzbtcHops.length > 0;
const xtzSwapMinOut = xtzIsSwapped
Expand Down Expand Up @@ -292,7 +295,7 @@ export const calculateOutputAmounts = (
BigNumber.ROUND_FLOOR
);
const outputFeeAtomicAmount = calculateOutputFeeAtomic(
tzToMutez(inputAmount ?? ZERO, inputAssetDecimals),
tzToMutez(new BigNumber(inputAmount ?? ZERO), inputAssetDecimals),
minOutputAtomicBeforeFee
);
const expectedReceivedAtomic = outputAtomicAmountBeforeFee.minus(outputFeeAtomicAmount);
Expand Down
18 changes: 9 additions & 9 deletions src/utils/tezos.util.ts
Original file line number Diff line number Diff line change
Expand Up @@ -16,19 +16,19 @@ export const RPC_RETRY_OPTIONS = {
};

export const mutezToTz = (x: BigNumber, decimals: number) => {
try {
return new BigNumber(x).integerValue().shiftedBy(-decimals);
} catch (e) {
return new BigNumber(NaN);
if (x.isNaN()) {
return x;
}

return x.integerValue().div(new BigNumber(10).pow(decimals));
};

export const tzToMutez = (x: BigNumber.Value, decimals: number) => {
try {
return new BigNumber(x).shiftedBy(decimals).integerValue();
} catch (e) {
return new BigNumber(NaN);
export const tzToMutez = (x: BigNumber, decimals: number) => {
if (x.isNaN()) {
return x;
}

return x.decimalPlaces(decimals).times(new BigNumber(10).pow(decimals));
};

export const isCollectible = <T extends TokenMetadataInterface>(asset: T) => isDefined(asset.artifactUri);
Expand Down

0 comments on commit 009c35e

Please sign in to comment.