// Copyright 2015-2017 Parity Technologies (UK) Ltd. // This file is part of Parity. // Parity is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation, either version 3 of the License, or // (at your option) any later version. // Parity is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // You should have received a copy of the GNU General Public License // along with Parity. If not, see . import React, { Component } from 'react'; import PropTypes from 'prop-types'; import ListItem, { Header, Row } from '../ListItem'; export default class Contract extends Component { static propTypes = { contract: PropTypes.object.isRequired, disabled: PropTypes.bool } render () { const { contract, disabled } = this.props; const location = contract.id === 'registry' ? 'chain' : 'registry'; return (
{ contract.id } was { contract.address ? 'deployed' : 'not found' }
{ contract.address ? contract.address : 'no address' } { contract.hasLatestCode ? 'has latest available code' : 'does not have latest code' } { contract.isOnChain ? `registered on ${location}` : `not registered on ${location}` } { this.renderBadgeInfo() }
); } renderBadgeInfo () { const { contract } = this.props; if (!contract.isBadge) { return null; } return [ { contract.isBadgeRegistered ? 'found in badgereg' : 'not found in badgereg' } , { contract.badgeImageHash ? `badge imageHash ${contract.badgeImageHash}` : 'has not registered a badge imageHash' } , { contract.badgeImageMatch ? 'has latest badge imageHash' : 'does not have latest badge imageHash' } ]; } }