2017-09-29 21:03:29 +02:00
|
|
|
const Component = require('react').Component
|
2018-03-29 17:00:44 +02:00
|
|
|
const PropTypes = require('prop-types')
|
2017-09-29 21:03:29 +02:00
|
|
|
const h = require('react-hyperscript')
|
|
|
|
const inherits = require('util').inherits
|
2018-03-29 17:00:44 +02:00
|
|
|
const connect = require('react-redux').connect
|
2017-09-29 21:03:29 +02:00
|
|
|
const actions = require('../../actions')
|
|
|
|
const Identicon = require('../identicon')
|
|
|
|
|
|
|
|
function mapStateToProps (state) {
|
|
|
|
return {
|
|
|
|
network: state.metamask.network,
|
2018-06-05 01:13:32 +02:00
|
|
|
token: state.appState.modal.modalState.props.token,
|
2018-08-21 17:59:42 +02:00
|
|
|
assetImages: state.metamask.assetImages,
|
2017-09-29 21:03:29 +02:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
function mapDispatchToProps (dispatch) {
|
2017-10-03 19:25:52 +02:00
|
|
|
return {
|
|
|
|
hideModal: () => dispatch(actions.hideModal()),
|
|
|
|
hideToken: address => {
|
|
|
|
dispatch(actions.removeToken(address))
|
|
|
|
.then(() => {
|
|
|
|
dispatch(actions.hideModal())
|
|
|
|
})
|
|
|
|
},
|
|
|
|
}
|
2017-09-29 21:03:29 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
inherits(HideTokenConfirmationModal, Component)
|
|
|
|
function HideTokenConfirmationModal () {
|
|
|
|
Component.call(this)
|
|
|
|
|
|
|
|
this.state = {}
|
|
|
|
}
|
|
|
|
|
2018-03-29 17:00:44 +02:00
|
|
|
HideTokenConfirmationModal.contextTypes = {
|
|
|
|
t: PropTypes.func,
|
|
|
|
}
|
|
|
|
|
2017-09-29 21:03:29 +02:00
|
|
|
module.exports = connect(mapStateToProps, mapDispatchToProps)(HideTokenConfirmationModal)
|
|
|
|
|
2018-03-29 17:00:44 +02:00
|
|
|
|
2017-09-29 21:03:29 +02:00
|
|
|
HideTokenConfirmationModal.prototype.render = function () {
|
2018-08-21 17:59:42 +02:00
|
|
|
const { token, network, hideToken, hideModal, assetImages } = this.props
|
2017-09-29 21:03:29 +02:00
|
|
|
const { symbol, address } = token
|
2018-08-23 20:54:40 +02:00
|
|
|
const image = assetImages[address]
|
2017-09-29 21:03:29 +02:00
|
|
|
|
|
|
|
return h('div.hide-token-confirmation', {}, [
|
|
|
|
h('div.hide-token-confirmation__container', {
|
|
|
|
}, [
|
|
|
|
h('div.hide-token-confirmation__title', {}, [
|
2018-03-29 17:00:44 +02:00
|
|
|
this.context.t('hideTokenPrompt'),
|
2017-09-29 21:03:29 +02:00
|
|
|
]),
|
|
|
|
|
|
|
|
h(Identicon, {
|
|
|
|
className: 'hide-token-confirmation__identicon',
|
|
|
|
diameter: 45,
|
|
|
|
address,
|
|
|
|
network,
|
2018-08-23 20:54:40 +02:00
|
|
|
image,
|
2017-09-29 21:03:29 +02:00
|
|
|
}),
|
|
|
|
|
|
|
|
h('div.hide-token-confirmation__symbol', {}, symbol),
|
|
|
|
|
|
|
|
h('div.hide-token-confirmation__copy', {}, [
|
2018-03-29 17:00:44 +02:00
|
|
|
this.context.t('readdToken'),
|
2017-09-29 21:03:29 +02:00
|
|
|
]),
|
|
|
|
|
|
|
|
h('div.hide-token-confirmation__buttons', {}, [
|
2018-01-29 21:29:01 +01:00
|
|
|
h('button.btn-cancel.hide-token-confirmation__button.allcaps', {
|
2017-10-03 19:25:52 +02:00
|
|
|
onClick: () => hideModal(),
|
2017-09-29 21:03:29 +02:00
|
|
|
}, [
|
2018-03-29 17:00:44 +02:00
|
|
|
this.context.t('cancel'),
|
2017-09-29 21:03:29 +02:00
|
|
|
]),
|
2018-01-29 21:29:01 +01:00
|
|
|
h('button.btn-clear.hide-token-confirmation__button.allcaps', {
|
2017-10-03 19:25:52 +02:00
|
|
|
onClick: () => hideToken(address),
|
2017-09-29 21:03:29 +02:00
|
|
|
}, [
|
2018-03-29 17:00:44 +02:00
|
|
|
this.context.t('hide'),
|
2017-09-29 21:03:29 +02:00
|
|
|
]),
|
|
|
|
]),
|
|
|
|
]),
|
|
|
|
])
|
|
|
|
}
|