diff --git a/.env.jungle b/.env.jungle
index 2f1045a0..c18efb68 100644
--- a/.env.jungle
+++ b/.env.jungle
@@ -50,7 +50,7 @@ PORT=3000
REACT_APP_TAG=dev
REACT_APP_NAME=$npm_package_name
REACT_APP_TITLE=EOS Jungle Testnet Network Dashboard
-REACT_APP_DEFAULT_PRODUCER_LOGO=https://bloks.io/img/eosio.png
+REACT_APP_DEFAULT_PRODUCER_LOGO=https://jungle.eosio.online/jungle.png
REACT_APP_FOOTER_LINKS=[{"text":"Website","src":"https://jungletestnet.io/"},{"text":"Block Explorer","src":"https://jungle3.bloks.io"},{"text":"Developer Guidelines","src":"https://guide.eoscostarica.io"},{"text":"GitHub","src":"https://github.com/eoscostarica/eosio-dashboard"}]
REACT_APP_EOS_RATE_LINK=https://jungle.eosrate.io:8080
REACT_APP_USE_REWARDS=true
@@ -60,7 +60,7 @@ REACT_APP_USE_BLOCK_PRODUCER_AGREEMENT_CONTRACT=true
REACT_APP_HASURA_URL=http://localhost:8585/v1/graphql
REACT_APP_EOS_API_NETWORK_NAME=jungle
REACT_APP_EOS_API_NETWORK_LABEL=Jungle
-REACT_APP_EOS_API_NETWORK_LOGO=https://jungletestnet.io/assets/jungle-testnet-logo.png
+REACT_APP_EOS_API_NETWORK_LOGO=https://jungle.eosio.online/jungle.png
REACT_APP_EOS_API_HOST=jungle.eosio.cr
REACT_APP_EOS_API_PORT=443
REACT_APP_EOS_API_PROTOCOL=https
diff --git a/.github/workflows/push-dev-environment.yaml b/.github/workflows/push-dev-environment.yaml
index 6e22f481..eb44368f 100644
--- a/.github/workflows/push-dev-environment.yaml
+++ b/.github/workflows/push-dev-environment.yaml
@@ -34,7 +34,7 @@ jobs:
PORT: 80
REACT_APP_TITLE: EOS Jungle Testnet Network Dashboard
REACT_APP_TAG: ${{ github.ref }}
- REACT_APP_DEFAULT_PRODUCER_LOGO: https://bloks.io/img/eosio.png
+ REACT_APP_DEFAULT_PRODUCER_LOGO: https://jungle.eosio.online/jungle.png
REACT_APP_FOOTER_LINKS: '[{"text":"Website","src":"https://jungletestnet.io/"},{"text":"Block Explorer","src":"https://jungle3.bloks.io"},{"text":"Developer Guidelines","src":"https://guide.eoscostarica.io"},{"text":"GitHub","src":"https://github.com/eoscostarica/eosio-dashboard"}]'
REACT_APP_EOS_RATE_LINK: https://jungle.eosrate.io:8080
REACT_APP_USE_REWARDS: true
@@ -44,7 +44,7 @@ jobs:
REACT_APP_HASURA_URL: https://graphql-jungle.eosio.online/v1/graphql
REACT_APP_EOS_API_NETWORK_NAME: jungle
REACT_APP_EOS_API_NETWORK_LABEL: Jungle
- REACT_APP_EOS_API_NETWORK_LOGO: https://jungletestnet.io/assets/jungle-testnet-logo.png
+ REACT_APP_EOS_API_NETWORK_LOGO: https://jungle.eosio.online/jungle.png
REACT_APP_EOS_API_HOST: jungle.eosio.cr
REACT_APP_EOS_API_PORT: 443
REACT_APP_EOS_API_PROTOCOL: https
diff --git a/webapp/public/jungle.png b/webapp/public/jungle.png
new file mode 100644
index 00000000..5d6f00ea
Binary files /dev/null and b/webapp/public/jungle.png differ
diff --git a/webapp/src/components/InformationCard/Stats.js b/webapp/src/components/InformationCard/Stats.js
index ae881445..cb7aac1d 100644
--- a/webapp/src/components/InformationCard/Stats.js
+++ b/webapp/src/components/InformationCard/Stats.js
@@ -13,15 +13,13 @@ const Stats = ({ missedBlocks, t, classes, votes, rewards, type }) => {
{t('stats')}
- {`${t(
- 'votes'
- )}: ${votes}eos`}
+ {`${t('votes')}: ${votes}`}
{`${t(
'rewards'
- )}: ${rewards}`}
+ )}: ${rewards} EOS`}
diff --git a/webapp/src/components/InformationCard/index.js b/webapp/src/components/InformationCard/index.js
index cdb458ef..3cc3b3f5 100644
--- a/webapp/src/components/InformationCard/index.js
+++ b/webapp/src/components/InformationCard/index.js
@@ -40,6 +40,24 @@ const InformationCard = ({ producer, rank, onNodeClick, type }) => {
setExpanded(!expanded)
}
+ const missedBlock = (producer, nodeType, type) => {
+ if (eosConfig.networkName !== 'lacchain') return <>>
+
+ if (type !== 'node' || nodeType !== 'validator') return <>>
+
+ return (
+
+
+ {`${t('missedBlocks')}: `}
+ {(producer.missed_blocks || []).reduce(
+ (result, current) => result + current.value,
+ 0
+ )}
+
+
+ )
+ }
+
useEffect(() => {
setProducerOrg(
formatData(
@@ -91,11 +109,11 @@ const InformationCard = ({ producer, rank, onNodeClick, type }) => {
missedBlocks={producer.missed_blocks || []}
votes={formatWithThousandSeparator(
producer.total_votes_eos || '0',
- 2
+ 0
)}
rewards={formatWithThousandSeparator(
producer.total_rewards || '0',
- 2
+ 0
)}
/>
{
{t('health')}
- {eosConfig.networkName === 'lacchain' && (
-
-
- {`${t('missedBlocks')}: `}
- {(producer.missed_blocks || []).reduce(
- (result, current) => result + current.value,
- 0
- )}
-
-
- )}
-
+ {missedBlock(producer, producerOrg?.media?.account, type)}
{
{nodes &&
- Object.keys(nodes).map((type) => (
-
-
-
- {t(type)}
-
-
-
-
- ))}
+ Object.keys(nodes).map((type) => {
+ let label = type
+
+ if (type[0] === '[' && type[type.length - 1] === ']') {
+ label = type
+ .replace(/\[/g, '')
+ .replace(/\]/g, '')
+ .replace(/['"]+/g, '')
+ }
+
+ return (
+
+
+
+ {t(label)}
+
+
+
+
+ )
+ })}
>
)
}
diff --git a/webapp/src/components/TransactionsHistory.js b/webapp/src/components/TransactionsHistory.js
index fd99f6ef..5f43a0a4 100644
--- a/webapp/src/components/TransactionsHistory.js
+++ b/webapp/src/components/TransactionsHistory.js
@@ -49,29 +49,27 @@ const TransactionsHistory = ({ t, classes }) => {
if (data?.stats?.[0]?.tps_all_time_high?.blocks?.length) {
const result = data.stats[0].tps_all_time_high.blocks.reduce(
(prev, current) => {
+ const isTpsLinkValid =
+ prev.tps.link && prev.tps.value > current.transactions_count
+ const isCpuLinkValid =
+ prev.cpu.link && prev.cpu.value > current.transactions_count
+
return {
tps: {
- value:
- prev.value > current.transactions_count
- ? prev.value
- : current.transactions_count,
+ value: data.stats[0].tps_all_time_high.transactions_count,
link: getBlockNumUrl(
- prev.value > current.transactions_count
- ? prev.link
- : current.block_num
+ isTpsLinkValid ? prev.tps.link : current.block_num
)
},
cpu: {
value: formatWithThousandSeparator(
- prev.value > current.cpu_usage_percent
- ? prev.value
+ prev.cpu.value > current.cpu_usage_percent
+ ? prev.cpu.value
: current.cpu_usage_percent * 100,
1
),
link: getBlockNumUrl(
- prev.value > current.cpu_usage_percent
- ? prev.link
- : current.block_num
+ isCpuLinkValid ? prev.cpu.link : current.block_num
)
}
}
@@ -79,11 +77,11 @@ const TransactionsHistory = ({ t, classes }) => {
{
tps: {
value: 0,
- link: ''
+ link: null
},
cpu: {
value: 0,
- link: ''
+ link: null
}
}
)
@@ -173,7 +171,8 @@ const TransactionsHistory = ({ t, classes }) => {
)}`}
diff --git a/webapp/src/language/en.lacchain.json b/webapp/src/language/en.lacchain.json
index eb438757..d009f81f 100644
--- a/webapp/src/language/en.lacchain.json
+++ b/webapp/src/language/en.lacchain.json
@@ -33,10 +33,10 @@
"producerName": "Entity name",
"producers": "Entities",
"producer": "Entity",
- "boot": "Boot",
- "writer": "Writer",
- "observer": "Observer",
- "validator": "Validator",
+ "boot": "Boot Nodes",
+ "writer": "Writer Nodes",
+ "observer": "Observer Nodes",
+ "validator": "Validator Nodes",
"partner": "Partner",
"nonPartner": "Non-Partner"
},
diff --git a/webapp/src/language/es.lacchain.json b/webapp/src/language/es.lacchain.json
index cb228b8a..b9a3d412 100644
--- a/webapp/src/language/es.lacchain.json
+++ b/webapp/src/language/es.lacchain.json
@@ -32,10 +32,10 @@
"producerName": "Nombre de la entidad",
"producers": "Entidades",
"producer": "Entidad",
- "boot": "Boot",
- "writer": "Escritor",
- "observer": "Observador",
- "validator": "Validador",
+ "boot": "Nodos Boot",
+ "writer": "Nodos Escritores",
+ "observer": "Nodos Observadores",
+ "validator": "Nodos Validadores",
"partner": "Partner",
"nonPartner": "Non-Partner"
},
diff --git a/webapp/src/routes/Home/styles.js b/webapp/src/routes/Home/styles.js
index 5266e442..4335091c 100644
--- a/webapp/src/routes/Home/styles.js
+++ b/webapp/src/routes/Home/styles.js
@@ -71,7 +71,8 @@ export default (theme) => ({
marginBottom: 2
},
svgLink: {
- fontSize: 20
+ fontSize: 18,
+ marginLeft: theme.spacing(2)
},
lowercase: {
textTransform: 'lowercase !important'