1
0
mirror of https://github.com/kremalicious/metamask-extension.git synced 2024-12-03 22:54:29 +01:00
metamask-extension/ui/components/app/wallet-overview/wallet-overview.js

43 lines
1.3 KiB
JavaScript

import React from 'react';
import PropTypes from 'prop-types';
import classnames from 'classnames';
import { useSelector } from 'react-redux';
import { toChecksumHexAddress } from '../../../../shared/modules/hexstring-utils';
import { getSelectedIdentity } from '../../../selectors';
import { AddressCopyButton } from '../../multichain';
import Box from '../../ui/box/box';
const WalletOverview = ({ balance, buttons, className, icon, loading }) => {
const selectedIdentity = useSelector(getSelectedIdentity);
const checksummedAddress = toChecksumHexAddress(selectedIdentity?.address);
return (
<div className={classnames('wallet-overview', className)}>
<div className="wallet-overview__balance">
{process.env.MULTICHAIN ? (
<Box marginTop={2}>
<AddressCopyButton address={checksummedAddress} shorten />
</Box>
) : (
<>{loading ? null : icon}</>
)}
{balance}
</div>
<div className="wallet-overview__buttons">{buttons}</div>
</div>
);
};
WalletOverview.propTypes = {
balance: PropTypes.element.isRequired,
buttons: PropTypes.element.isRequired,
className: PropTypes.string,
icon: PropTypes.element.isRequired,
loading: PropTypes.bool,
};
WalletOverview.defaultProps = {
className: undefined,
};
export default WalletOverview;