1
0
mirror of https://github.com/kremalicious/metamask-extension.git synced 2024-11-30 16:18:07 +01:00
metamask-extension/ui/app/components/transaction-list-item-icon.js

63 lines
1.3 KiB
JavaScript
Raw Normal View History

const Component = require('react').Component
const h = require('react-hyperscript')
const inherits = require('util').inherits
const Identicon = require('./identicon')
module.exports = TransactionIcon
inherits(TransactionIcon, Component)
2016-06-21 22:18:32 +02:00
function TransactionIcon () {
Component.call(this)
}
2016-06-21 22:18:32 +02:00
TransactionIcon.prototype.render = function () {
2016-06-21 22:56:04 +02:00
const { transaction, txParams, isMsg } = this.props
2017-01-13 19:44:22 +01:00
switch (transaction.status) {
case 'unapproved':
2017-02-24 02:45:37 +01:00
return h( !isMsg ? '.unapproved-tx-icon' : 'i.fa.fa-certificate.fa-lg')
2017-01-13 19:44:22 +01:00
case 'rejected':
return h('i.fa.fa-exclamation-triangle.fa-lg.warning', {
style: {
width: '24px',
},
})
2017-01-13 19:44:22 +01:00
case 'failed':
return h('i.fa.fa-exclamation-triangle.fa-lg.error', {
style: {
width: '24px',
},
})
case 'submitted':
2017-01-13 19:44:22 +01:00
return h('i.fa.fa-ellipsis-h', {
style: {
fontSize: '27px',
},
})
}
if (isMsg) {
return h('i.fa.fa-certificate.fa-lg', {
style: {
width: '24px',
2016-06-21 22:18:32 +02:00
},
})
}
if (txParams.to) {
return h(Identicon, {
diameter: 24,
address: txParams.to || transaction.hash,
})
} else {
return h('i.fa.fa-file-text-o.fa-lg', {
style: {
width: '24px',
2016-06-21 22:18:32 +02:00
},
})
}
}