// Copyright 2015, 2016 Ethcore (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, PropTypes } from 'react'; import formatNumber from 'format-number'; import { ContainerTitle, Input } from '~/ui'; import { numberFromString } from './numberFromString'; import { decodeExtraData } from './decodeExtraData'; const toNiceNumber = formatNumber(); export default class MiningSettings extends Component { static contextTypes = { api: PropTypes.object } static propTypes = { nodeStatus: PropTypes.object } render () { const { nodeStatus } = this.props; const { coinbase, defaultExtraData, extraData, gasFloorTarget, minGasPrice } = nodeStatus; return (
); } onMinGasPriceChange = (newVal) => { const { api } = this.context; api.parity.setMinGasPrice(numberFromString(newVal)); }; onExtraDataChange = (newVal, isResetToDefault) => { const { api } = this.context; const { nodeStatus } = this.props; // In case of resetting to default we are just using raw bytes from defaultExtraData // When user sets new value we can safely send a string that will be converted to hex by formatter. const val = isResetToDefault ? nodeStatus.defaultExtraData : newVal; api.parity.setExtraData(val); }; onAuthorChange = (newVal) => { const { api } = this.context; api.parity.setAuthor(newVal); }; onGasFloorTargetChange = (newVal) => { const { api } = this.context; api.parity.setGasFloorTarget(numberFromString(newVal)); }; }