1
0
mirror of https://github.com/kremalicious/metamask-extension.git synced 2024-11-24 02:58:09 +01:00
metamask-extension/ui/app/components/app/account-list-item/account-list-item.js

51 lines
1.3 KiB
JavaScript
Raw Normal View History

import React from 'react'
import PropTypes from 'prop-types'
import { checksumAddress } from '../../../helpers/utils/util'
import Identicon from '../../ui/identicon'
import AccountMismatchWarning from '../../ui/account-mismatch-warning/account-mismatch-warning.component'
2020-11-03 00:41:28 +01:00
export default function AccountListItem({
account,
className,
displayAddress = false,
handleClick,
icon = null,
}) {
const { name, address, balance } = account || {}
return (
<div
className={`account-list-item ${className}`}
2020-11-05 16:35:58 +01:00
onClick={() => handleClick?.({ name, address, balance })}
>
<div className="account-list-item__top-row">
<Identicon
address={address}
className="account-list-item__identicon"
diameter={18}
/>
2020-11-03 00:41:28 +01:00
<div className="account-list-item__account-name">{name || address}</div>
2020-11-03 00:41:28 +01:00
{icon && <div className="account-list-item__icon">{icon}</div>}
<AccountMismatchWarning address={address} />
</div>
{displayAddress && name && (
<div className="account-list-item__account-address">
2020-11-03 00:41:28 +01:00
{checksumAddress(address)}
</div>
)}
</div>
)
}
AccountListItem.propTypes = {
account: PropTypes.object,
className: PropTypes.string,
displayAddress: PropTypes.bool,
handleClick: PropTypes.func,
icon: PropTypes.node,
}