diff --git a/components/sidebar/context/aaveV2/SidebarAaveV2Borrow.vue b/components/sidebar/context/aaveV2/SidebarAaveV2Borrow.vue
index 2c32f5e..6d07c7e 100644
--- a/components/sidebar/context/aaveV2/SidebarAaveV2Borrow.vue
+++ b/components/sidebar/context/aaveV2/SidebarAaveV2Borrow.vue
@@ -98,8 +98,10 @@ export default defineComponent({
const { formatNumber, formatUsdMax, formatUsd } = useFormatting()
const { isZero, gt, plus } = useBigNumber()
const { parseSafeFloat } = useParsing()
- const { showPendingTransaction, showWarning } = useNotification()
- const { status, displayPositions, liquidation, maxLiquidation, liquidationPrice, liquidationMaxPrice, annualPercentageRateTypes } = useAaveV2Position({
+ const { showPendingTransaction, showWarning, showConfirmedTransaction } = useNotification()
+ const { fetchBalances } = useBalances();
+
+ const { status, displayPositions, liquidation, maxLiquidation, liquidationPrice, liquidationMaxPrice, annualPercentageRateTypes, refreshPosition } = useAaveV2Position({
overridePosition: (position) => {
if (rootTokenKey.value !== position.key) return position
@@ -176,6 +178,12 @@ export default defineComponent({
const txHash = await dsa.value.cast({
spells,
from: account.value,
+ onReceipt: async receipt => {
+ showConfirmedTransaction(receipt.transactionHash);
+
+ await fetchBalances(true);
+ await refreshPosition();
+ }
})
showPendingTransaction(txHash)
diff --git a/components/sidebar/context/aaveV2/SidebarAaveV2Payback.vue b/components/sidebar/context/aaveV2/SidebarAaveV2Payback.vue
index 68344d8..94b063a 100644
--- a/components/sidebar/context/aaveV2/SidebarAaveV2Payback.vue
+++ b/components/sidebar/context/aaveV2/SidebarAaveV2Payback.vue
@@ -122,8 +122,8 @@ export default defineComponent({
const { formatNumber, formatUsdMax, formatUsd } = useFormatting()
const { isZero, gt, plus, max, minus } = useBigNumber()
const { parseSafeFloat } = useParsing()
- const { showPendingTransaction, showWarning } = useNotification()
- const { status, displayPositions, liquidation, maxLiquidation, liquidationPrice, liquidationMaxPrice, annualPercentageRateTypes } = useAaveV2Position({
+ const { showPendingTransaction, showWarning, showConfirmedTransaction } = useNotification()
+ const { status, displayPositions, liquidation, maxLiquidation, liquidationPrice, liquidationMaxPrice, annualPercentageRateTypes, refreshPosition } = useAaveV2Position({
overridePosition: (position) => {
if (rootTokenKey.value !== position.key) return position
@@ -213,6 +213,12 @@ export default defineComponent({
const txHash = await dsa.value.cast({
spells,
from: account.value,
+ onReceipt: async receipt => {
+ showConfirmedTransaction(receipt.transactionHash);
+
+ await fetchBalances(true);
+ await refreshPosition();
+ }
})
showPendingTransaction(txHash)
diff --git a/components/sidebar/context/aaveV2/SidebarAaveV2Withdraw.vue b/components/sidebar/context/aaveV2/SidebarAaveV2Withdraw.vue
index 278deff..678c41a 100644
--- a/components/sidebar/context/aaveV2/SidebarAaveV2Withdraw.vue
+++ b/components/sidebar/context/aaveV2/SidebarAaveV2Withdraw.vue
@@ -103,9 +103,11 @@ export default defineComponent({
const { formatNumber, formatUsdMax, formatUsd } = useFormatting()
const { isZero, gt, plus, max, minus } = useBigNumber()
const { parseSafeFloat } = useParsing()
- const { showPendingTransaction, showWarning } = useNotification()
+ const { showPendingTransaction, showConfirmedTransaction, showWarning } = useNotification()
+ const { fetchBalances } = useBalances();
+
const originalBalance = ref('0')
- const { stats, status, displayPositions, maxLiquidation, liquidationPrice, liquidationMaxPrice } = useAaveV2Position({
+ const { stats, status, displayPositions, maxLiquidation, liquidationPrice, liquidationMaxPrice, refreshPosition } = useAaveV2Position({
overridePosition: (position) => {
if (rootTokenKey.value !== position.key) return position
@@ -182,6 +184,12 @@ export default defineComponent({
const txHash = await dsa.value.cast({
spells,
from: account.value,
+ onReceipt: async receipt => {
+ showConfirmedTransaction(receipt.transactionHash);
+
+ await fetchBalances(true);
+ await refreshPosition();
+ }
})
showPendingTransaction(txHash)
diff --git a/components/sidebar/context/compound/SidebarCompoundBorrow.vue b/components/sidebar/context/compound/SidebarCompoundBorrow.vue
index be39e8f..251c487 100644
--- a/components/sidebar/context/compound/SidebarCompoundBorrow.vue
+++ b/components/sidebar/context/compound/SidebarCompoundBorrow.vue
@@ -75,6 +75,7 @@ import { useSidebar } from '~/composables/useSidebar'
import { useCompoundPosition } from '~/composables/protocols/useCompoundPosition'
import ctokens from '~/constant/ctokens'
import tokenIdMapping from '~/constant/tokenIdMapping'
+import { useBalances } from '~/composables/useBalances'
export default defineComponent({
components: { InputNumeric, ToggleButton, ButtonCTA, Button },
@@ -86,17 +87,18 @@ export default defineComponent({
const { networkName, account } = useWeb3()
const { dsa } = useDSA()
const { getTokenByKey, valInt } = useToken()
+ const { fetchBalances } = useBalances()
const { formatNumber, formatUsdMax, formatUsd } = useFormatting()
const { isZero, gt, div, plus } = useBigNumber()
const { parseSafeFloat } = useParsing()
- const { showPendingTransaction, showWarning } = useNotification()
+ const { showPendingTransaction, showConfirmedTransaction, showWarning } = useNotification()
const tokenId = computed(() => props.tokenId)
const tokenKey = computed(() => tokenIdMapping.idToToken[tokenId.value])
const rootTokenKey = computed(() => ctokens[networkName.value].rootTokens.includes(tokenKey.value) ? tokenKey.value : 'eth')
- const { stats, status: initialStatus, position, displayPositions, liquidation, liquidationPrice, liquidationMaxPrice } = useCompoundPosition({
+ const { stats, status: initialStatus, position, displayPositions, liquidation, liquidationPrice, liquidationMaxPrice, refreshPosition } = useCompoundPosition({
overridePosition: (position) => {
if (tokenId.value !== position.cTokenId) return position
@@ -158,6 +160,12 @@ export default defineComponent({
const txHash = await dsa.value.cast({
spells,
from: account.value,
+ onReceipt: async receipt => {
+ showConfirmedTransaction(receipt.transactionHash);
+
+ await fetchBalances(true);
+ await refreshPosition();
+ }
})
showPendingTransaction(txHash)
diff --git a/components/sidebar/context/compound/SidebarCompoundPayback.vue b/components/sidebar/context/compound/SidebarCompoundPayback.vue
index c9c8a59..af7d811 100644
--- a/components/sidebar/context/compound/SidebarCompoundPayback.vue
+++ b/components/sidebar/context/compound/SidebarCompoundPayback.vue
@@ -115,14 +115,14 @@ export default defineComponent({
const { formatNumber, formatUsdMax, formatUsd } = useFormatting()
const { isZero, gte, plus, max, minus, min } = useBigNumber()
const { parseSafeFloat } = useParsing()
- const { showPendingTransaction, showWarning} = useNotification()
+ const { showPendingTransaction, showConfirmedTransaction, showWarning } = useNotification()
const tokenId = computed(() => props.tokenId)
const tokenKey = computed(() => tokenIdMapping.idToToken[tokenId.value])
const rootTokenKey = computed(() => ctokens[networkName.value].rootTokens.includes(tokenKey.value) ? tokenKey.value : 'eth')
- const { status, position, displayPositions, liquidation, liquidationPrice, liquidationMaxPrice } = useCompoundPosition({
+ const { status, position, displayPositions, liquidation, liquidationPrice, liquidationMaxPrice, refreshPosition } = useCompoundPosition({
overridePosition: (position) => {
if (tokenId.value !== position.cTokenId) return position
@@ -188,10 +188,16 @@ export default defineComponent({
args: [tokenId.value, amount, 0, 0],
})
- try {
+ try {
const txHash = await dsa.value.cast({
spells,
from: account.value,
+ onReceipt: async receipt => {
+ showConfirmedTransaction(receipt.transactionHash);
+
+ await fetchBalances(true);
+ await refreshPosition();
+ }
})
showPendingTransaction(txHash)
diff --git a/components/sidebar/context/compound/SidebarCompoundSupply.vue b/components/sidebar/context/compound/SidebarCompoundSupply.vue
index 5e4b59f..d62f1f8 100644
--- a/components/sidebar/context/compound/SidebarCompoundSupply.vue
+++ b/components/sidebar/context/compound/SidebarCompoundSupply.vue
@@ -103,14 +103,14 @@ export default defineComponent({
const { formatNumber, formatUsdMax, formatUsd } = useFormatting()
const { isZero, gt, plus } = useBigNumber()
const { parseSafeFloat } = useParsing()
- const { showPendingTransaction, showWarning } = useNotification()
+ const { showPendingTransaction, showConfirmedTransaction, showWarning } = useNotification()
const tokenId = computed(() => props.tokenId)
const tokenKey = computed(() => tokenIdMapping.idToToken[tokenId.value])
const rootTokenKey = computed(() => ctokens[networkName.value].rootTokens.includes(tokenKey.value) ? tokenKey.value : 'eth')
- const { status, position, displayPositions, liquidation, liquidationPrice, liquidationMaxPrice } = useCompoundPosition({
+ const { status, position, displayPositions, liquidation, liquidationPrice, liquidationMaxPrice, refreshPosition } = useCompoundPosition({
overridePosition: (position) => {
if (tokenId.value !== position.cTokenId) return position
@@ -173,6 +173,12 @@ export default defineComponent({
const txHash = await dsa.value.cast({
spells,
from: account.value,
+ onReceipt: async receipt => {
+ showConfirmedTransaction(receipt.transactionHash);
+
+ await fetchBalances(true);
+ await refreshPosition();
+ }
})
showPendingTransaction(txHash)
diff --git a/components/sidebar/context/compound/SidebarCompoundWithdraw.vue b/components/sidebar/context/compound/SidebarCompoundWithdraw.vue
index 719729b..c49e3d4 100644
--- a/components/sidebar/context/compound/SidebarCompoundWithdraw.vue
+++ b/components/sidebar/context/compound/SidebarCompoundWithdraw.vue
@@ -89,6 +89,7 @@ import { useSidebar } from '~/composables/useSidebar'
import tokenIdMapping from '~/constant/tokenIdMapping'
import ctokens from '~/constant/ctokens'
import { useCompoundPosition } from '~/composables/protocols/useCompoundPosition'
+import { useBalances } from '~/composables/useBalances'
export default defineComponent({
components: { InputNumeric, ToggleButton, ButtonCTA, Button },
@@ -99,11 +100,12 @@ export default defineComponent({
const { close } = useSidebar()
const { networkName, account } = useWeb3()
const { dsa } = useDSA()
+ const { fetchBalances } = useBalances()
const { getTokenByKey, valInt } = useToken()
const { formatNumber, formatUsdMax, formatUsd } = useFormatting()
const { isZero, gt, plus, max, minus } = useBigNumber()
const { parseSafeFloat } = useParsing()
- const { showPendingTransaction, showWarning } = useNotification()
+ const { showPendingTransaction, showConfirmedTransaction, showWarning } = useNotification()
const originalBalance = ref('0')
const tokenId = computed(() => props.tokenId)
const tokenKey = computed(() => tokenIdMapping.idToToken[tokenId.value])
@@ -111,7 +113,7 @@ export default defineComponent({
const rootTokenKey = computed(() => ctokens[networkName.value].rootTokens.includes(tokenKey.value) ? tokenKey.value : 'eth')
- const { stats, status, position, displayPositions, liquidation, liquidationPrice, liquidationMaxPrice } = useCompoundPosition({
+ const { stats, status, position, displayPositions, liquidation, liquidationPrice, liquidationMaxPrice, refreshPosition } = useCompoundPosition({
overridePosition: (position) => {
if (tokenId.value !== position.cTokenId) return position
originalBalance.value = position.supply
@@ -176,6 +178,12 @@ export default defineComponent({
const txHash = await dsa.value.cast({
spells,
from: account.value,
+ onReceipt: async receipt => {
+ showConfirmedTransaction(receipt.transactionHash);
+
+ await fetchBalances(true);
+ await refreshPosition();
+ }
})
showPendingTransaction(txHash)
diff --git a/components/sidebar/context/liquity/SidebarLiquityTroveBorrow.vue b/components/sidebar/context/liquity/SidebarLiquityTroveBorrow.vue
index 5c1dbba..6876d90 100644
--- a/components/sidebar/context/liquity/SidebarLiquityTroveBorrow.vue
+++ b/components/sidebar/context/liquity/SidebarLiquityTroveBorrow.vue
@@ -115,9 +115,9 @@ export default defineComponent({
const { formatPercent, formatNumber, formatDecimal, formatUsdMax, formatUsd } = useFormatting()
const { plus, times, isZero, max, min } = useBigNumber()
const { parseSafeFloat } = useParsing()
- const { getBalanceByKey } = useBalances()
+ const { getBalanceByKey, fetchBalances } = useBalances()
const { valInt } = useToken()
- const { showPendingTransaction, showWarning } = useNotification()
+ const { showPendingTransaction, showConfirmedTransaction, showWarning } = useNotification()
const { dsa } = useDSA()
const amount = ref('')
@@ -134,6 +134,7 @@ export default defineComponent({
maxFeePercentageInWei,
getTrovePositionHints,
borrowFee,
+ fetchPosition,
} = useLiquityPosition()
const balance = computed(() => getBalanceByKey(debtToken.value.key))
@@ -184,6 +185,12 @@ export default defineComponent({
const txHash = await dsa.value.cast({
spells,
from: account.value,
+ onReceipt: async receipt => {
+ showConfirmedTransaction(receipt.transactionHash);
+
+ await fetchBalances(true);
+ await fetchPosition();
+ }
})
showPendingTransaction(txHash)
diff --git a/components/sidebar/context/liquity/SidebarLiquityTroveOpenNew.vue b/components/sidebar/context/liquity/SidebarLiquityTroveOpenNew.vue
index f63a1cc..89418ef 100644
--- a/components/sidebar/context/liquity/SidebarLiquityTroveOpenNew.vue
+++ b/components/sidebar/context/liquity/SidebarLiquityTroveOpenNew.vue
@@ -126,9 +126,9 @@ export default defineComponent({
const { formatPercent, formatNumber, formatDecimal, formatUsdMax, formatUsd } = useFormatting()
const { plus, times, isZero } = useBigNumber()
const { parseSafeFloat } = useParsing()
- const { getBalanceByKey } = useBalances()
+ const { getBalanceByKey, fetchBalances } = useBalances()
const { valInt } = useToken()
- const { showPendingTransaction, showWarning } = useNotification()
+ const { showPendingTransaction, showConfirmedTransaction, showWarning } = useNotification()
const { dsa } = useDSA()
const {
@@ -140,6 +140,7 @@ export default defineComponent({
borrowFee,
maxFeePercentageInWei,
getTrovePositionHints,
+ fetchPosition,
} = useLiquityPosition()
const collateralAmount = ref('')
@@ -214,6 +215,12 @@ export default defineComponent({
const txHash = await dsa.value.cast({
spells,
from: account.value,
+ onReceipt: async receipt => {
+ showConfirmedTransaction(receipt.transactionHash);
+
+ await fetchBalances(true);
+ await fetchPosition();
+ }
})
showPendingTransaction(txHash)
diff --git a/components/sidebar/context/liquity/SidebarLiquityTrovePayback.vue b/components/sidebar/context/liquity/SidebarLiquityTrovePayback.vue
index dd9fdf4..60687c5 100644
--- a/components/sidebar/context/liquity/SidebarLiquityTrovePayback.vue
+++ b/components/sidebar/context/liquity/SidebarLiquityTrovePayback.vue
@@ -7,7 +7,9 @@
- {{ formatDecimal(changedDebt) }} {{ debtToken.symbol }}
+ {{ formatDecimal(changedDebt) }} {{ debtToken.symbol }}
@@ -15,7 +17,9 @@
>
- {{ formatDecimal(changedBalance) }} {{ debtToken.symbol }}
+ {{ formatDecimal(changedBalance) }} {{ debtToken.symbol }}
@@ -107,11 +111,11 @@ export default defineComponent({
const { networkName, account } = useWeb3()
const { dsa } = useDSA()
const { valInt } = useToken()
- const { getBalanceByKey } = useBalances()
+ const { getBalanceByKey, fetchBalances } = useBalances()
const { formatDecimal, formatUsdMax, formatUsd } = useFormatting()
const { isZero, gte, plus, max, minus, min } = useBigNumber()
const { parseSafeFloat } = useParsing()
- const { showPendingTransaction, showWarning } = useNotification()
+ const { showPendingTransaction, showConfirmedTransaction, showWarning } = useNotification()
const amount = ref('')
const amountParsed = computed(() => parseSafeFloat(amount.value))
@@ -125,6 +129,7 @@ export default defineComponent({
debtToken,
collateralToken,
getTrovePositionHints,
+ fetchPosition,
} = useLiquityPosition()
const balance = computed(() => getBalanceByKey(debtToken.value.key))
@@ -175,6 +180,12 @@ export default defineComponent({
const txHash = await dsa.value.cast({
spells,
from: account.value,
+ onReceipt: async receipt => {
+ showConfirmedTransaction(receipt.transactionHash);
+
+ await fetchBalances(true);
+ await fetchPosition();
+ }
})
showPendingTransaction(txHash)
diff --git a/components/sidebar/context/liquity/SidebarLiquityTroveSupply.vue b/components/sidebar/context/liquity/SidebarLiquityTroveSupply.vue
index d23d9a9..78b4a4e 100644
--- a/components/sidebar/context/liquity/SidebarLiquityTroveSupply.vue
+++ b/components/sidebar/context/liquity/SidebarLiquityTroveSupply.vue
@@ -99,11 +99,11 @@ export default defineComponent({
const { account } = useWeb3()
const { dsa } = useDSA()
const { valInt } = useToken()
- const { getBalanceByKey } = useBalances()
+ const { getBalanceByKey, fetchBalances } = useBalances()
const { formatDecimal, formatUsdMax, formatUsd } = useFormatting()
const { isZero, gt, plus, max, minus } = useBigNumber()
const { parseSafeFloat } = useParsing()
- const { showPendingTransaction, showWarning } = useNotification()
+ const { showPendingTransaction, showConfirmedTransaction, showWarning } = useNotification()
const amount = ref('')
const amountParsed = computed(() => parseSafeFloat(amount.value))
@@ -117,6 +117,7 @@ export default defineComponent({
liquidation,
liquidationMaxPrice,
getTrovePositionHints,
+ fetchPosition,
} = useLiquityPosition()
const changedCollateral = computed(() => max(plus(collateral.value, amountParsed.value), '0').toFixed())
@@ -147,7 +148,7 @@ export default defineComponent({
pending.value = true
try {
const inputAmountInWei = valInt(amountParsed.value, collateralToken.value.decimals)
- console.log(inputAmountInWei);
+
const totalDepositAmountInWei = plus(inputAmountInWei, collateralInWei.value).toFixed()
const { upperHint, lowerHint } = await getTrovePositionHints(totalDepositAmountInWei, debtInWei.value)
@@ -166,6 +167,12 @@ export default defineComponent({
const txHash = await dsa.value.cast({
spells,
from: account.value,
+ onReceipt: async receipt => {
+ showConfirmedTransaction(receipt.transactionHash);
+
+ await fetchBalances(true);
+ await fetchPosition();
+ }
})
showPendingTransaction(txHash)
diff --git a/components/sidebar/context/liquity/SidebarLiquityTroveWithdraw.vue b/components/sidebar/context/liquity/SidebarLiquityTroveWithdraw.vue
index 94fcfc6..05951aa 100644
--- a/components/sidebar/context/liquity/SidebarLiquityTroveWithdraw.vue
+++ b/components/sidebar/context/liquity/SidebarLiquityTroveWithdraw.vue
@@ -104,6 +104,7 @@ import { useNotification } from '~/composables/useNotification'
import Button from '~/components/Button.vue'
import { useSidebar } from '~/composables/useSidebar'
import { useLiquityPosition } from '~/composables/protocols/useLiquityPosition'
+import { useBalances } from '~/composables/useBalances'
export default defineComponent({
components: { InputNumeric, ToggleButton, ButtonCTA, Button },
@@ -112,7 +113,8 @@ export default defineComponent({
const { account } = useWeb3()
const { dsa } = useDSA()
const { valInt } = useToken()
- const { showPendingTransaction, showWarning } = useNotification()
+ const { fetchBalances } = useBalances()
+ const { showPendingTransaction, showConfirmedTransaction, showWarning } = useNotification()
const { formatUsd, formatUsdMax, formatDecimal, formatNumber } = useFormatting()
const { parseSafeFloat } = useParsing()
const { isZero, minus, max, plus } = useBigNumber()
@@ -129,6 +131,7 @@ export default defineComponent({
liquidation,
liquidationMaxPrice,
getTrovePositionHints,
+ fetchPosition,
} = useLiquityPosition()
const changedCollateral = computed(() => max(minus(collateral.value, amountParsed.value), '0').toFixed())
@@ -159,7 +162,7 @@ export default defineComponent({
async function cast() {
pending.value = true
- const inputAmountInWei = valInt(amountParsed.value,collateralToken.value.decimals)
+ const inputAmountInWei = valInt(amountParsed.value, collateralToken.value.decimals)
const totalDepositAmountInWei = minus(collateralInWei.value, inputAmountInWei).toFixed()
const { upperHint, lowerHint } = await getTrovePositionHints(totalDepositAmountInWei, debtInWei.value)
@@ -167,7 +170,7 @@ export default defineComponent({
const setId = 0
const spells = dsa.value.Spell()
-
+
spells.add({
connector: 'LIQUITY-A',
method: 'withdraw',
@@ -178,6 +181,12 @@ export default defineComponent({
const txHash = await dsa.value.cast({
spells,
from: account.value,
+ onReceipt: async receipt => {
+ showConfirmedTransaction(receipt.transactionHash);
+
+ await fetchBalances(true);
+ await fetchPosition();
+ }
})
showPendingTransaction(txHash)
diff --git a/components/sidebar/context/makerdao/SidebarMakerdaoBorrow.vue b/components/sidebar/context/makerdao/SidebarMakerdaoBorrow.vue
index 7ae7eee..f0aacb9 100644
--- a/components/sidebar/context/makerdao/SidebarMakerdaoBorrow.vue
+++ b/components/sidebar/context/makerdao/SidebarMakerdaoBorrow.vue
@@ -78,6 +78,7 @@ import Button from '~/components/Button.vue'
import { useSidebar } from '~/composables/useSidebar'
import ctokens from '~/constant/ctokens'
import { useMakerdaoPosition } from '~/composables/protocols/useMakerdaoPosition'
+import { useBalances } from '~/composables/useBalances'
export default defineComponent({
components: { InputNumeric, ToggleButton, ButtonCTA, Button },
@@ -89,16 +90,17 @@ export default defineComponent({
const { networkName, account } = useWeb3()
const { dsa } = useDSA()
const { getTokenByKey, valInt } = useToken()
+ const { fetchBalances } = useBalances()
const { formatNumber, formatUsdMax, formatUsd } = useFormatting()
const { isZero, gt, div, plus } = useBigNumber()
const { parseSafeFloat } = useParsing()
- const { showPendingTransaction, showWarning } = useNotification()
+ const { showPendingTransaction, showConfirmedTransaction , showWarning } = useNotification()
const amount = ref('')
const amountParsed = computed(() => parseSafeFloat(amount.value))
- const { debt, collateral, liquidation, liquidationMaxPrice, vault, vaultId, symbol: tokenSymbol } = useMakerdaoPosition({
+ const { debt, collateral, liquidation, liquidationMaxPrice, vault, vaultId, symbol: tokenSymbol, fetchPosition } = useMakerdaoPosition({
overridePosition: (position) => {
return position;
},
@@ -148,10 +150,16 @@ export default defineComponent({
args: [vaultId.value, amount, 0, 0],
})
- try {
+ try {
const txHash = await dsa.value.cast({
spells,
from: account.value,
+ onReceipt: async receipt => {
+ showConfirmedTransaction(receipt.transactionHash);
+
+ await fetchBalances(true);
+ await fetchPosition();
+ }
})
showPendingTransaction(txHash)
diff --git a/components/sidebar/context/makerdao/SidebarMakerdaoPayback.vue b/components/sidebar/context/makerdao/SidebarMakerdaoPayback.vue
index 2af01c7..08f1330 100644
--- a/components/sidebar/context/makerdao/SidebarMakerdaoPayback.vue
+++ b/components/sidebar/context/makerdao/SidebarMakerdaoPayback.vue
@@ -15,9 +15,7 @@
>
- {{ formatNumber(balance) }} {{ symbol }}
+ {{ formatNumber(balance) }} {{ symbol }}
@@ -54,7 +52,10 @@
:status="status"
/>
-
+
{{ formatUsdMax(liquidationPrice, liquidationMaxPrice) }}
parseSafeFloat(amount.value))
@@ -129,7 +130,7 @@ export default defineComponent({
const balance = computed(() => getBalanceByKey(tokenKey.value))
const balanceRaw = computed(() => getBalanceRawByKey(tokenKey.value))
- const changedDebt = computed(() => plus(debt.value, amountParsed.value).toFixed())
+ const changedDebt = computed(() => max(minus(debt.value, amountParsed.value), '0').toFixed())
const { liquidationPrice, status } = useMakerdaoPosition(collateral, changedDebt)
const maxBalance = computed(() => min(balance.value, debt.value).toFixed())
@@ -156,7 +157,7 @@ export default defineComponent({
const amount = isMaxAmount.value
? gte(balance.value, balance.value)
- ? $dsa().maxValue
+ ? dsa.value.maxValue
: balanceRaw.value
: valInt(amountParsed.value, decimals.value)
@@ -172,10 +173,17 @@ export default defineComponent({
const txHash = await dsa.value.cast({
spells,
from: account.value,
+ onReceipt: async receipt => {
+ showConfirmedTransaction(receipt.transactionHash);
+
+ await fetchBalances(true);
+ await fetchPosition();
+ }
})
showPendingTransaction(txHash)
} catch (error) {
+ console.log(error);
showWarning(error.message)
}
@@ -205,6 +213,7 @@ export default defineComponent({
pending,
toggle,
tokenSymbol,
+ minDebt,
}
},
})
diff --git a/components/sidebar/context/makerdao/SidebarMakerdaoSupply.vue b/components/sidebar/context/makerdao/SidebarMakerdaoSupply.vue
index 1209362..277eda0 100644
--- a/components/sidebar/context/makerdao/SidebarMakerdaoSupply.vue
+++ b/components/sidebar/context/makerdao/SidebarMakerdaoSupply.vue
@@ -94,17 +94,17 @@ export default defineComponent({
const { account } = useWeb3()
const { dsa } = useDSA()
const { valInt } = useToken()
- const { getBalanceByKey } = useBalances()
+ const { getBalanceByKey, fetchBalances } = useBalances()
const { formatUsdMax, formatUsd, formatDecimal } = useFormatting()
const { plus, isZero } = useBigNumber()
const { parseSafeFloat } = useParsing()
- const { showPendingTransaction, showWarning } = useNotification()
+ const { showPendingTransaction, showConfirmedTransaction, showWarning } = useNotification()
const amount = ref('')
const amountParsed = computed(() => parseSafeFloat(amount.value))
- const { tokenKey, token, debt, collateral, liquidation, liquidationMaxPrice, isNewVault, vaultId, vaultType } = useMakerdaoPosition()
+ const { tokenKey, token, debt, collateral, liquidation, liquidationMaxPrice, isNewVault, vaultId, vaultType, fetchPosition} = useMakerdaoPosition()
const symbol = computed(() => token.value?.symbol)
const decimals = computed(() => token.value?.decimals)
@@ -161,6 +161,12 @@ export default defineComponent({
const txHash = await dsa.value.cast({
spells,
from: account.value,
+ onReceipt: async receipt => {
+ showConfirmedTransaction(receipt.transactionHash);
+
+ await fetchBalances(true);
+ await fetchPosition();
+ }
})
showPendingTransaction(txHash)
diff --git a/components/sidebar/context/makerdao/SidebarMakerdaoWithdraw.vue b/components/sidebar/context/makerdao/SidebarMakerdaoWithdraw.vue
index afa9e56..553dde0 100644
--- a/components/sidebar/context/makerdao/SidebarMakerdaoWithdraw.vue
+++ b/components/sidebar/context/makerdao/SidebarMakerdaoWithdraw.vue
@@ -85,6 +85,7 @@ import { useNotification } from '~/composables/useNotification'
import Button from '~/components/Button.vue'
import { useSidebar } from '~/composables/useSidebar'
import { useMakerdaoPosition } from '~/composables/protocols/useMakerdaoPosition'
+import { useBalances } from '~/composables/useBalances'
export default defineComponent({
components: { InputNumeric, ToggleButton, ButtonCTA, Button },
@@ -93,15 +94,16 @@ export default defineComponent({
const { account } = useWeb3()
const { dsa } = useDSA()
const { valInt } = useToken()
+ const { fetchBalances } = useBalances()
const { formatNumber, formatUsdMax, formatUsd } = useFormatting()
const { isZero, gt, plus, max, minus } = useBigNumber()
const { parseSafeFloat } = useParsing()
- const { showPendingTransaction, showWarning } = useNotification()
+ const { showPendingTransaction, showConfirmedTransaction, showWarning } = useNotification()
const amount = ref('')
const amountParsed = computed(() => parseSafeFloat(amount.value))
- const { tokenKey, token, debt, collateral, liquidation, liquidationMaxPrice, vaultId } = useMakerdaoPosition()
+ const { tokenKey, token, debt, collateral, liquidation, liquidationMaxPrice, vaultId, fetchPosition } = useMakerdaoPosition()
const symbol = computed(() => token.value?.symbol)
const decimals = computed(() => token.value?.decimals)
@@ -142,10 +144,16 @@ export default defineComponent({
args: [vaultId.value, amount, 0, 0],
})
- try {
+ try {
const txHash = await dsa.value.cast({
spells,
from: account.value,
+ onReceipt: async receipt => {
+ showConfirmedTransaction(receipt.transactionHash);
+
+ await fetchBalances(true);
+ await fetchPosition();
+ }
})
showPendingTransaction(txHash)
diff --git a/composables/protocols/useLiquityPosition.ts b/composables/protocols/useLiquityPosition.ts
index b6a1d06..87d3258 100644
--- a/composables/protocols/useLiquityPosition.ts
+++ b/composables/protocols/useLiquityPosition.ts
@@ -199,6 +199,7 @@ export function useLiquityPosition(
);
return {
+ fetchPosition,
troveOpened,
netValue,
borrowFee,
diff --git a/composables/protocols/useMakerdaoPosition.ts b/composables/protocols/useMakerdaoPosition.ts
index 2ce0339..b6da639 100644
--- a/composables/protocols/useMakerdaoPosition.ts
+++ b/composables/protocols/useMakerdaoPosition.ts
@@ -109,7 +109,7 @@ export function useMakerdaoPosition(
});
const debt = computed(() => ensureValue(vault.value.debt).toFixed());
- const minDebt = computed(() => vaultTypes.value[0]?.totalFloor || "5000");
+ const minDebt = computed(() => vaultTypes.value[0]?.totalFloor.toString() || "5000");
const debtCeilingReached = computed(() =>
vaultTypes.value?.some(v =>
gt(v.overallTotalDebt, v.overallTotalDebtCeiling)
diff --git a/pages/1inch.vue b/pages/1inch.vue
index 3402fc1..b942015 100644
--- a/pages/1inch.vue
+++ b/pages/1inch.vue
@@ -58,6 +58,7 @@ import { useDSA } from "~/composables/useDSA";
import { use1InchSwap } from "~/composables/swap/use1InchSwap";
import { useWeb3 } from "~/composables/useWeb3";
import { useNotification } from "~/composables/useNotification";
+import { useBalances } from "~/composables/useBalances";
export default defineComponent({
components: {
@@ -71,7 +72,8 @@ export default defineComponent({
const { dsa } = useDSA();
const { getSellSpell } = use1InchSwap();
const { account } = useWeb3();
- const { showPendingTransaction, showWarning } = useNotification();
+ const { fetchBalances } = useBalances();
+ const { showPendingTransaction, showConfirmedTransaction, showWarning } = useNotification();
const { valInt } = useToken();
const sellToken = ref();
const buyToken = ref();
@@ -96,7 +98,7 @@ export default defineComponent({
getSellSpell({
buyAddr: buyToken.value.address,
sellAddr: sellToken.value.address,
- sellAmt: valInt(sellToken.value.amount, sellToken.value.decimals),
+ sellAmt: valInt(sellToken.value.amount, sellToken.value.decimals),
unitAmt: caculateUnitAmt(),
calldata: result.tx.data,
setId: 0
@@ -106,7 +108,12 @@ export default defineComponent({
try {
const txHash = await dsa.value.cast({
spells,
- from: account.value
+ from: account.value,
+ onReceipt: async receipt => {
+ showConfirmedTransaction(receipt.transactionHash);
+
+ await fetchBalances(true);
+ }
});
showPendingTransaction(txHash);