1 import React from 'react'
2 import { connect } from 'react-redux'
3 import navStyles from '../Navigation/Navigation.scss'
4 import styles from './Sync.scss'
6 class Sync extends React.Component {
8 const coreData = this.props.coreData
12 const networkID = coreData.networkId
13 const syncing = coreData.syncing
14 const peerCount = coreData.peerCount
15 const currentBlock = coreData.currentBlock
16 const highestBlock = coreData.highestBlock
17 const lang = this.props.lang
20 return <ul className={`${navStyles.navigation} ${styles.main}`}>
21 <li key='sync-networkID' className={navStyles.navigationTitle}>{ networkID }</li>
22 <li key='sync-title' className={navStyles.navigationTitle}>{ lang === 'zh' ? '网络同步状态' : 'Network Sync Status'}</li>
23 <li key='sync-status'>{lang === 'zh' ? '同步中: ' : 'Synchronizing: '} {currentBlock}/{highestBlock}</li>
24 <li key='sync-peer-count'>{lang === 'zh' ? '节点数' : 'Peer Count'}: {peerCount}</li>
30 elems.push(<li key='sync-networkID' className={navStyles.navigationTitle}>{ networkID }</li>)
31 elems.push(<li key='sync-title' className={navStyles.navigationTitle}>{ lang === 'zh' ? '网络同步状态' : 'Network Sync Status' }</li>)
33 if(!syncing && currentBlock == highestBlock){
34 elems.push(<li key='sync-done'>{lang === 'zh' ? '同步完成: ' : 'Fully synced: ' } <span className={styles.blockHightlight}>{currentBlock}/{highestBlock}</span></li>)
37 if(!syncing && currentBlock < highestBlock){
38 elems.push(<li key='sync-disconnect'>{lang === 'zh' ? '同步中断' : 'Disconnect'}</li>)
41 elems.push(<li key='sync-peer-count'>{lang === 'zh' ? '节点数' : 'Peer Count'}: {peerCount}</li>)
43 return <ul className={`${navStyles.navigation} ${styles.main}`}>{elems}</ul>
47 export default connect(
49 coreData:state.core.coreData