From 9495ca24e1e22cdacb8ac11f013c03384f077e6a Mon Sep 17 00:00:00 2001 From: Noisekit <28145325+noisekit@users.noreply.github.com> Date: Fri, 10 Jan 2025 16:04:28 +0800 Subject: [PATCH] Fix stata deposit for new account (#141) --- .../DepositModal/StataDepositModal.tsx | 19 ++++++++----------- .../useDepositBaseAndromeda.tsx | 4 +--- 2 files changed, 9 insertions(+), 14 deletions(-) diff --git a/liquidity/components/DepositModal/StataDepositModal.tsx b/liquidity/components/DepositModal/StataDepositModal.tsx index 4bae3c8b8..e52c8b53f 100644 --- a/liquidity/components/DepositModal/StataDepositModal.tsx +++ b/liquidity/components/DepositModal/StataDepositModal.tsx @@ -115,10 +115,11 @@ export function StataDepositModal({ //Preparing stataUSDC Done //Stata Approval - const stataApprovalNeeded = - liquidityPosition && liquidityPosition.availableCollateral.lt(collateralChange) + const stataApprovalNeeded = liquidityPosition + ? liquidityPosition.availableCollateral.lt(collateralChange) ? collateralChange.sub(liquidityPosition.availableCollateral) - : wei(0); + : wei(0) + : collateralChange; const { approve: approveStata, requireApproval: requireApprovalStata } = useApprove({ contractAddress: synthToken?.token?.address, amount: @@ -144,8 +145,8 @@ export function StataDepositModal({ newAccountId, collateralTypeAddress: synthToken?.token?.address, collateralChange, - currentCollateral: liquidityPosition?.collateralAmount, - availableCollateral: liquidityPosition?.availableCollateral, + currentCollateral: liquidityPosition ? liquidityPosition.collateralAmount : wei(0), + availableCollateral: liquidityPosition ? liquidityPosition.availableCollateral : wei(0), collateralSymbol: params.collateralSymbol, }); //Deposit done @@ -257,10 +258,6 @@ export function StataDepositModal({ [ServiceNames.executeDeposit]: async () => { try { - if (!liquidityPosition) { - throw Error('Deposit failed: not ready'); - } - toast.closeAll(); toast({ title: Boolean(params.accountId) @@ -271,8 +268,8 @@ export function StataDepositModal({ }); setTxSummary({ - currentCollateral: liquidityPosition.collateralAmount, - currentDebt: liquidityPosition.debt, + currentCollateral: liquidityPosition ? liquidityPosition.collateralAmount : wei(0), + currentDebt: liquidityPosition ? liquidityPosition.debt : wei(0), collateralChange, }); diff --git a/liquidity/lib/useDepositBaseAndromeda/useDepositBaseAndromeda.tsx b/liquidity/lib/useDepositBaseAndromeda/useDepositBaseAndromeda.tsx index 9af9bdb09..f1c76f531 100644 --- a/liquidity/lib/useDepositBaseAndromeda/useDepositBaseAndromeda.tsx +++ b/liquidity/lib/useDepositBaseAndromeda/useDepositBaseAndromeda.tsx @@ -149,12 +149,10 @@ export const useDepositBaseAndromeda = ({ ethers.utils.parseEther('1') ); - const callsPromise = Promise.all( + const calls = await Promise.all( [wrap, synthApproval, createAccount, deposit, delegate].filter(notNil) ); - const [calls] = await Promise.all([callsPromise]); - if (priceUpdateTx) { calls.unshift(priceUpdateTx as any); }