diff --git a/new-lamassu-admin/src/pages/Assets/Assets.js b/new-lamassu-admin/src/pages/Assets/Assets.js
index 0f908652..d29427c3 100644
--- a/new-lamassu-admin/src/pages/Assets/Assets.js
+++ b/new-lamassu-admin/src/pages/Assets/Assets.js
@@ -1,30 +1,208 @@
import Grid from '@material-ui/core/Grid'
-import { makeStyles } from '@material-ui/core/styles'
+import Table from '@material-ui/core/Table'
+import TableBody from '@material-ui/core/TableBody'
+import TableCell from '@material-ui/core/TableCell'
+import TableContainer from '@material-ui/core/TableContainer'
+import TableHead from '@material-ui/core/TableHead'
+import TableRow from '@material-ui/core/TableRow'
+import { makeStyles, withStyles } from '@material-ui/core/styles'
+import * as R from 'ramda'
+import React from 'react'
-// import moment from 'moment'
-// import React from 'react'
-// import { Tooltip } from 'src/components/Tooltip'
import TitleSection from 'src/components/layout/TitleSection'
-// import DataTable from 'src/components/tables/DataTable'
-import { H4 } from 'src/components/typography'
+import { H4, Label2, P, Info2 } from 'src/components/typography'
import styles from './Assets.styles'
const useStyles = makeStyles(styles)
+const StyledCell = withStyles({
+ root: {
+ borderBottom: '4px solid white',
+ padding: 0,
+ paddingLeft: 20,
+ paddingRight: 20
+ }
+})(TableCell)
+
+const HeaderCell = withStyles({
+ root: {
+ borderBottom: '4px solid white',
+ padding: 0,
+ paddingLeft: 20,
+ paddingRight: 20,
+ backgroundColor: 'white'
+ }
+})(TableCell)
+
+const AssetsAmountTable = ({ title, data = [], numToRender }) => {
+ const classes = useStyles()
+
+ const totalAmount = R.compose(R.sum, R.map(R.path(['amount'])))(data) ?? 0
+ const currency = data[0]?.currency ?? ''
+ const selectAmountPrefix = it =>
+ it.direction === 'in' ? '+' : R.isNil(it.direction) ? '' : '-'
+
+ return (
+ <>
+
+ {title}
+
+
+
+
+
+
+ Asset
+
+
+
+
+ Amount
+
+
+
+
+
+ {data?.map((asset, idx) => {
+ if (idx < numToRender) {
+ return (
+
+
+ {asset.display}
+
+
+ {`${selectAmountPrefix(asset)}
+ ${formatCurrency(Math.abs(asset.amount))} ${
+ asset.currency
+ }`}
+
+
+ )
+ }
+ return null
+ })}
+
+
+ {`Total ${R.toLower(title)}`}
+
+
+ {`${formatCurrency(totalAmount)} ${currency}`}
+
+
+
+
+
+
+ >
+ )
+}
+
+const formatCurrency = amount =>
+ amount.toLocaleString('en-US', { maximumFractionDigits: 2 })
+
const Assets = () => {
const classes = useStyles()
+ const mockData = [
+ {
+ id: 'fiatBalance',
+ display: 'Fiat balance',
+ amount: 10438,
+ currency: 'USD',
+ class: 'Available balance'
+ },
+ {
+ id: 'hedgingReserve',
+ display: 'Hedging reserve',
+ amount: -1486,
+ currency: 'USD',
+ class: 'Available balance',
+ direction: 'out'
+ },
+ {
+ id: 'hedgedWalletAssets',
+ display: 'Hedged wallet assets',
+ amount: 96446,
+ currency: 'USD',
+ class: 'Wallet assets',
+ direction: 'in'
+ },
+ {
+ id: 'unhedgedWalletAssets',
+ display: 'Unhedged wallet assets',
+ amount: 3978,
+ currency: 'USD',
+ class: 'Wallet assets',
+ direction: 'in'
+ }
+ ]
+
+ const mockDataTotal = [
+ {
+ id: 'fiatBalance',
+ display: 'Fiat balance',
+ amount: 10438,
+ currency: 'USD'
+ },
+ {
+ id: 'hedgingReserve',
+ display: 'Hedging reserve',
+ amount: -1486,
+ currency: 'USD',
+ direction: 'out'
+ },
+ {
+ id: 'hedgedWalletAssets',
+ display: 'Market value of hedged wallet assets',
+ amount: 94980,
+ currency: 'USD',
+ direction: 'in'
+ },
+ {
+ id: 'unhedgedWalletAssets',
+ display: 'Unhedged wallet assets',
+ amount: 3978,
+ currency: 'USD',
+ direction: 'in'
+ }
+ ]
+
+ const filterByClass = x =>
+ R.filter(it => R.path(['class'])(it) === x)(mockData)
+
return (
<>
-
{'future page'}
-
- {/* */}
+
+
+
+
+
-
- {/* */}
+
+
+
+
diff --git a/new-lamassu-admin/src/pages/Assets/Assets.styles.js b/new-lamassu-admin/src/pages/Assets/Assets.styles.js
index e69de29b..eea2e084 100644
--- a/new-lamassu-admin/src/pages/Assets/Assets.styles.js
+++ b/new-lamassu-admin/src/pages/Assets/Assets.styles.js
@@ -0,0 +1,45 @@
+import {
+ white,
+ offColor,
+ backgroundColor,
+ subheaderColor
+} from 'src/styling/variables'
+
+const styles = () => ({
+ card: {
+ wordWrap: 'break-word',
+ boxShadow: '0 0 4px 0 rgba(0, 0, 0, 0.08)',
+ borderRadius: 12,
+ padding: 24,
+ backgroundColor: white
+ },
+ h4: {
+ marginTop: 0
+ },
+ label: {
+ margin: 0,
+ color: offColor
+ },
+ asset: {
+ float: 'left'
+ },
+ amount: {
+ float: 'right'
+ },
+ row: {
+ backgroundColor: backgroundColor,
+ borderBottom: 'none'
+ },
+ totalRow: {
+ backgroundColor: subheaderColor,
+ borderBottom: 'none'
+ },
+ leftSide: {
+ margin: [[0, 10, 20, 0]]
+ },
+ rightSide: {
+ margin: [[0, 0, 0, 10]]
+ }
+})
+
+export default styles