Merge pull request #194 from varasev/RewardByBlock-item

(Feature) Add `RewardByBlock` item to drop-down list on the page `Modify Proxy Contract Ballot` for Sokol network
This commit is contained in:
Vadim Arasev 2019-01-28 09:44:21 +03:00 committed by GitHub
commit 51d663a476
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 24 additions and 26 deletions

View File

@ -87,7 +87,7 @@ class App extends Component {
getNetIdClass() {
const { netId } = this.props.contractsStore
return netId in constants.NETWORKS && constants.NETWORKS[netId].TESTNET ? 'sokol' : ''
return netId in constants.NETWORKS && constants.NETWORKS[netId].TESTNET ? constants.SOKOL : ''
}
isNewBallotPage() {

View File

@ -72,7 +72,7 @@ export class BallotEmissionFundsMetadata extends React.Component {
render() {
const { ballotStore, contractsStore, networkBranch } = this.props
let note, explorerLink
let note
if (this.noActiveBallotExists === true) {
note = (
@ -85,11 +85,8 @@ export class BallotEmissionFundsMetadata extends React.Component {
note = <p>To be able to create a new ballot, the previous ballot of this type must be finalized.</p>
}
if (constants.NETWORKS[contractsStore.netId].NAME.toLowerCase() === 'sokol') {
explorerLink = `https://sokol.poaexplorer.com/address/search/${contractsStore.emissionFunds.address}`
} else {
explorerLink = `https://poaexplorer.com/address/${contractsStore.emissionFunds.address}`
}
const networkName = constants.NETWORKS[contractsStore.netId].NAME.toLowerCase()
const explorerLink = `https://blockscout.com/poa/${networkName}/address/${contractsStore.emissionFunds.address}`
return (
<div className="frm-BallotEmissionFundsMetadata">

View File

@ -2,6 +2,8 @@ import React from 'react'
import { FormInput } from '../FormInput'
import { FormSelect } from '../FormSelect'
import { inject, observer } from 'mobx-react'
import { constants } from '../../utils/constants'
import { getNetworkName } from '../../utils/utils'
@inject('ballotStore', 'contractsStore')
@observer
@ -16,11 +18,12 @@ export class BallotProxyMetadata extends React.Component {
/*4*/ { value: '4', label: ballotStore.ProxyBallotType[4] }, // VotingToChangeProxy
/*5*/ { value: '5', label: ballotStore.ProxyBallotType[5] }, // BallotsStorage
/*6*/ { value: '7', label: ballotStore.ProxyBallotType[7] }, // ValidatorMetadata
/*7*/ { value: '8', label: ballotStore.ProxyBallotType[8] } // ProxyStorage
/*7*/ { value: '8', label: ballotStore.ProxyBallotType[8] }, // ProxyStorage
/*8*/ { value: '9', label: ballotStore.ProxyBallotType[9] } // RewardByBlock
]
if (!contractsStore.proxyStorage || !contractsStore.proxyStorage.doesMethodExist('getValidatorMetadata')) {
options.splice(6) // keep 0-5 and remove 6-... items if ProxyStorage is old
if (getNetworkName(contractsStore.netId).toLowerCase() !== constants.SOKOL) {
options.splice(8) // keep 0-7 items and remove 8th if the network is not Sokol
}
return (

View File

@ -2,15 +2,14 @@ import React from 'react'
import { LogoPOA } from '../LogoPOA'
import { LogoSokol } from '../LogoSokol'
import { LogoDai } from '../LogoDai'
import { constants } from '../../utils/constants'
export const Logo = ({ href = null, extraClass = '', networkBranch = '' }) => {
switch (networkBranch) {
case 'sokol':
case constants.SOKOL:
return <LogoSokol href={href} extraClass={extraClass} />
case 'dai':
case 'dai-test':
case constants.DAI:
return <LogoDai href={href} extraClass={extraClass} />
case 'poa':
default:
return <LogoPOA href={href} extraClass={extraClass} />
}

View File

@ -59,7 +59,7 @@ class AppMainRouter extends Component {
]
const networkName = constants.NETWORKS[web3Config.netId].NAME.toLowerCase()
if (networkName === 'core' || networkName === 'sokol') {
if (networkName === constants.CORE || networkName === constants.SOKOL) {
// if we're in Core or Sokol
promises.push(contractsStore.setEmissionFunds(web3Config))
promises.push(contractsStore.setVotingToManageEmissionFunds(web3Config))

View File

@ -26,7 +26,8 @@ class BallotStore {
4: 'VotingToChangeProxy',
5: 'BallotsStorage',
7: 'ValidatorMetadata',
8: 'ProxyStorage'
8: 'ProxyStorage',
9: 'RewardByBlock'
}
@observable ballotType
@observable keysBallotType

View File

@ -51,29 +51,27 @@ constants.navigationData = [
}
]
constants.SOKOL = 'sokol'
constants.CORE = 'core'
constants.DAI = 'dai'
constants.NETWORKS = {
'77': {
NAME: 'Sokol',
RPC: 'https://sokol.poa.network',
BRANCH: 'sokol',
BRANCH: constants.SOKOL,
TESTNET: true
},
'99': {
NAME: 'Core',
RPC: 'https://core.poa.network',
BRANCH: 'core',
BRANCH: constants.CORE,
TESTNET: false
},
'79': {
NAME: 'Dai-Test',
RPC: 'https://dai-test.poa.network',
BRANCH: 'dai-test',
TESTNET: true
},
'100': {
NAME: 'Dai',
RPC: 'https://dai.poa.network',
BRANCH: 'dai',
BRANCH: constants.DAI,
TESTNET: false
}
}

View File

@ -52,7 +52,7 @@ let getWeb3 = () => {
console.log('No web3 instance injected, using Local web3.')
console.error('Metamask not found')
netId = netIdByName('core')
netId = netIdByName(constants.CORE)
const network = constants.NETWORKS[netId]