blowfish/src/components/Total.jsx

43 lines
1.0 KiB
JavaScript

import React from 'react'
import { Consumer } from '../store/createContext'
import Balance from './Balance'
const calculateTotalBalance = (accounts, currency) => {
const balanceTotalArray = []
for (const account of accounts) {
balanceTotalArray.push(account.balance[currency])
}
// Convert array to numbers and add numbers together
const balanceTotal = balanceTotalArray.reduce(
(a, b) => Number(a) + Number(b),
0
)
return balanceTotal
}
const Total = () => (
<div className="number-unit number-unit--main">
<Consumer>
{({ accounts }) => {
const totalOcean = calculateTotalBalance(accounts, 'ocean')
const totalEur = calculateTotalBalance(accounts, 'eur')
const totalUsd = calculateTotalBalance(accounts, 'usd')
const balance = {
ocean: totalOcean,
eur: totalEur,
usd: totalUsd
}
return <Balance balance={balance} />
}}
</Consumer>
<span className="label">Total balance</span>
</div>
)
export default Total