diff --git a/src/routes/safe/component/Safe/BalanceInfo.jsx b/src/routes/safe/component/Safe/BalanceInfo.jsx
index 96d9c87c..10054326 100644
--- a/src/routes/safe/component/Safe/BalanceInfo.jsx
+++ b/src/routes/safe/component/Safe/BalanceInfo.jsx
@@ -41,12 +41,14 @@ const BalanceComponent = openHoc(({
-
- {open
- ?
- :
- }
-
+ { balances.count() > 0 &&
+
+ {open
+ ?
+ :
+ }
+
+ }
diff --git a/src/routes/safe/container/index.jsx b/src/routes/safe/container/index.jsx
index f92184c9..5d719293 100644
--- a/src/routes/safe/container/index.jsx
+++ b/src/routes/safe/container/index.jsx
@@ -21,7 +21,7 @@ class SafeView extends React.PureComponent {
const safeAddress = safe.get('address')
fetchBalances(safeAddress)
fetchSafe(safe)
- }, 1500)
+ }, 15000)
}
componentDidUpdate(prevProps) {
diff --git a/src/routes/safe/store/actions/fetchBalances.js b/src/routes/safe/store/actions/fetchBalances.js
index fdba5095..76f2705a 100644
--- a/src/routes/safe/store/actions/fetchBalances.js
+++ b/src/routes/safe/store/actions/fetchBalances.js
@@ -9,7 +9,6 @@ import { makeBalance, type Balance, type BalanceProps } from '~/routes/safe/stor
import logo from '~/assets/icons/icon_etherTokens.svg'
import addBalances from './addBalances'
-
export const getStandardTokenContract = async () => {
const web3 = getWeb3()
const erc20Token = await contract(StandardToken)
@@ -52,15 +51,15 @@ export const fetchBalances = (safeAddress: string) => async (dispatch: ReduxDisp
}
const json = await response.json()
- const balancesRecords = await Promise.all(json.map(async (item: BalanceProps) => {
+ return Promise.all(json.map(async (item: BalanceProps) => {
const funds = await calculateBalanceOf(item.address, safeAddress, item.decimals)
return makeBalance({ ...item, funds })
- }))
+ })).then((balancesRecords) => {
+ const balances: Map = Map().withMutations((map) => {
+ balancesRecords.forEach(record => map.set(record.get('symbol'), record))
+ map.set('ETH', ethBalance)
+ })
- const balances: Map = Map().withMutations((map) => {
- balancesRecords.forEach(record => map.set(record.get('symbol'), record))
- map.set('ETH', ethBalance)
+ return dispatch(addBalances(safeAddress, balances))
})
-
- return dispatch(addBalances(safeAddress, balances))
}