From 5a13f11a947cc40a0af549896bee3264a0837948 Mon Sep 17 00:00:00 2001 From: Michael Pierce Date: Fri, 6 Nov 2020 20:54:33 -0600 Subject: [PATCH 01/24] server/methods.js: set null as genesis does not define --- imports/api/chain/server/methods.js | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/imports/api/chain/server/methods.js b/imports/api/chain/server/methods.js index e8a9cfe73..f2f6e63af 100644 --- a/imports/api/chain/server/methods.js +++ b/imports/api/chain/server/methods.js @@ -193,10 +193,10 @@ Meteor.methods({ }, mint: genesis.app_state.mint, distr: { - communityTax: distr.community_tax, - baseProposerReward: distr.base_proposer_reward, - bonusProposerReward: distr.bonus_proposer_reward, - withdrawAddrEnabled: distr.withdraw_addr_enabled + communityTax: null, // distr.community_tax, + baseProposerReward: null, // distr.base_proposer_reward, + bonusProposerReward: null, // distr.bonus_proposer_reward, + withdrawAddrEnabled: null, // distr.withdraw_addr_enabled }, gov: { startingProposalId: 0, @@ -205,7 +205,7 @@ Meteor.methods({ tallyParams: {} }, slashing:{ - params: genesis.app_state.slashing.params + params: null // }, supply: genesis.app_state.supply, crisis: genesis.app_state.crisis From 8db10c2d70c33f2ee6e96acd269387b1b9bbce0f Mon Sep 17 00:00:00 2001 From: Michael Pierce Date: Fri, 6 Nov 2020 20:57:33 -0600 Subject: [PATCH 02/24] client/styles: sif gold --- client/styles.scss | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client/styles.scss b/client/styles.scss index 014de2206..1f4d75646 100644 --- a/client/styles.scss +++ b/client/styles.scss @@ -1,4 +1,4 @@ -$forbole-red: #bd081c; +$forbole-red: #CAA93A; $primary: $forbole-red !default; @import "materia/variables"; From 81f2479ffe7aafe2c86a2ba47b75910e6a37c612 Mon Sep 17 00:00:00 2001 From: Michael Pierce Date: Fri, 6 Nov 2020 20:57:45 -0600 Subject: [PATCH 03/24] .meteor: update some versions --- .meteor/packages | 2 +- .meteor/release | 2 +- .meteor/versions | 20 ++++++++++---------- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/.meteor/packages b/.meteor/packages index 233789e98..6bb8758b3 100644 --- a/.meteor/packages +++ b/.meteor/packages @@ -10,7 +10,7 @@ mongo@1.10.0 # The database Meteor supports right now reactive-var@1.0.11 # Reactive variable for tracker tracker@1.2.0 # Meteor's client-side reactive programming library -standard-minifier-css@1.6.0 # CSS minifier run for production mode +standard-minifier-css@1.6.1 # CSS minifier run for production mode standard-minifier-js@2.6.0 # JS minifier run for production mode es5-shim@4.8.0 # ECMAScript 5 compatibility for older browsers ecmascript@0.14.3 # Enable ECMAScript2015+ syntax in app code diff --git a/.meteor/release b/.meteor/release index 3ea26528c..019e3aefb 100644 --- a/.meteor/release +++ b/.meteor/release @@ -1 +1 @@ -METEOR@1.10.2 +METEOR@1.11.1 diff --git a/.meteor/versions b/.meteor/versions index c5765ea1b..a86eaa1ad 100644 --- a/.meteor/versions +++ b/.meteor/versions @@ -6,7 +6,7 @@ base64@1.0.12 binary-heap@1.0.11 bkruse:pace@0.5.1 blaze-tools@1.0.10 -boilerplate-generator@1.7.0 +boilerplate-generator@1.7.1 caching-compiler@1.2.2 caching-html-compiler@1.1.3 callback-hook@1.3.0 @@ -18,11 +18,11 @@ ddp-common@1.4.0 ddp-server@2.3.2 deps@1.0.12 diff-sequence@1.1.1 -dynamic-import@0.5.2 +dynamic-import@0.5.3 ecmascript@0.14.3 ecmascript-runtime@0.7.0 -ecmascript-runtime-client@0.10.0 -ecmascript-runtime-server@0.9.0 +ecmascript-runtime-client@0.11.0 +ecmascript-runtime-server@0.10.0 ejson@1.1.1 es5-shim@4.8.0 fetch@0.1.1 @@ -45,8 +45,8 @@ meteor@1.9.3 meteor-base@1.4.0 meteortesting:browser-tests@1.3.4 meteortesting:mocha@1.1.5 -meteortesting:mocha-core@7.0.1 -minifier-css@1.5.2 +meteortesting:mocha-core@7.2.0 +minifier-css@1.5.3 minifier-js@2.6.0 minimongo@1.6.0 mobile-experience@1.1.0 @@ -58,11 +58,11 @@ mongo@1.10.0 mongo-decimal@0.1.1 mongo-dev-server@1.1.0 mongo-id@1.0.7 -npm-mongo@3.7.1 +npm-mongo@3.8.1 ordered-dict@1.1.0 promise@0.11.2 random@1.2.0 -react-meteor-data@2.1.1 +react-meteor-data@2.1.2 reactive-var@1.0.11 reload@1.3.0 retry@1.1.0 @@ -72,14 +72,14 @@ server-render@0.3.1 shell-server@0.5.0 socket-stream-client@0.3.1 spacebars-compiler@1.1.3 -standard-minifier-css@1.6.0 +standard-minifier-css@1.6.1 standard-minifier-js@2.6.0 static-html@1.2.2 templating-tools@1.1.2 tracker@1.2.0 typescript@3.7.6 underscore@1.0.10 -universe:i18n@1.30.0 +universe:i18n@1.31.0 url@1.3.1 webapp@1.9.1 webapp-hashing@1.0.9 From c6f1db564b78512ef1c9599279ea2174a07c89fd Mon Sep 17 00:00:00 2001 From: Michael Pierce Date: Fri, 6 Nov 2020 21:32:10 -0600 Subject: [PATCH 04/24] sif-testnet-settings.json --- sif-testnet-settings.json | 76 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 sif-testnet-settings.json diff --git a/sif-testnet-settings.json b/sif-testnet-settings.json new file mode 100644 index 000000000..a1f5e7b45 --- /dev/null +++ b/sif-testnet-settings.json @@ -0,0 +1,76 @@ +{ + "public":{ + "chainName": "Sifnode", + "chainId": "monkey-bars", + "gtm": "{Add your Google Tag Manager ID here}", + "slashingWindow": 10000, + "uptimeWindow": 250, + "initialPageSize": 30, + "secp256k1": false, + "bech32PrefixAccAddr": "sif", + "bech32PrefixAccPub": "sifpub", + "bech32PrefixValAddr": "sifvaloper", + "bech32PrefixValPub": "sifvaloperpub", + "bech32PrefixConsAddr": "sifvalcons", + "bech32PrefixConsPub": "sifvalconspub", + "bondDenom": "trwn", + "powerReduction": 1000000, + "coins": [ + { + "denom": "trwn", + "displayName": "TRWN", + "displayNamePlural": "TRWNS", + "fraction": 1000000 + }, + { + "denom": "cusdt", + "displayName": "CUSDT", + "displayNamePlural": "CUSDTS", + "fraction": 1000000 + }, + { + "denom": "cusdc", + "displayName": "CUSDC", + "displayNamePlural": "CUSDC", + "fraction": 1000000 + }, + { + "denom": "clink", + "displayName": "CLINK", + "displayNamePlural": "CLINKS", + "fraction": 1000000 + }, + { + "denom": "chot", + "displayName": "CHOT", + "displayNamePlural": "CHOTS", + "fraction": 1000000 + } + + ], + "gasPrice": 0.02, + "coingeckoId": "sif" + }, + "genesisFile": "https://raw.githubusercontent.com/Sifchain/networks/feature/genesis/testnet/monkey-bars-testnet-3/genesis.json", + "remote":{ + "rpc":"http://35.166.247.98:26657", + "lcd":"http://35.166.247.98:1317" + }, + "debug": { + "startTimer": true, + "readGenesis": true + }, + "params":{ + "startHeight": 0, + "defaultBlockTime": 5000, + "blockInterval": 15000, + "consensusInterval": 1000, + "statusInterval":7500, + "signingInfoInterval": 1800000, + "proposalInterval": 5000, + "missedBlocksInterval": 60000, + "delegationInterval": 900000 + } +} + + From 6733a35962bae0433eb81d111ac331d39263bd5c Mon Sep 17 00:00:00 2001 From: 59023g Date: Wed, 11 Nov 2020 09:40:22 -0600 Subject: [PATCH 05/24] Update CHANGELOG.md --- CHANGELOG.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 09a0d3bfc..9495d54bb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +* Sif gold color style client/styles +* server/methods.js fix for missing Sif (monkey-bars) genesis values +* testnet-settings + ## [Unreleased] * Bump Meteor to v1.10.2 and update some dependency pcakges with security issues From 8a7f427c62d8649bee6d816cd59264be02f27870 Mon Sep 17 00:00:00 2001 From: Ilche Bedelovski Date: Tue, 17 Nov 2020 20:19:58 +0100 Subject: [PATCH 06/24] Github Actions workflow --- .github/workflows/testnet.yml | 25 +++++++++++++++++++++++++ Dockerfile | 4 +++- 2 files changed, 28 insertions(+), 1 deletion(-) create mode 100644 .github/workflows/testnet.yml diff --git a/.github/workflows/testnet.yml b/.github/workflows/testnet.yml new file mode 100644 index 000000000..21972ccf2 --- /dev/null +++ b/.github/workflows/testnet.yml @@ -0,0 +1,25 @@ +name: Publish Testnet Image for block-explorer + +on: + push: + branches: develop + +jobs: + testnet: + name: testnet + runs-on: ubuntu-latest + steps: + - name: Check out the repo + uses: actions/checkout@v2 + + - name: Login to Docker Hub + run: | + docker login -u ${{ secrets.DOCKERHUB_USERNAME }} -p ${{ secrets.DOCKERHUB_TOKEN }} + + - name: Build images + run: | + docker build -t sifchain/block-explorer:testnet . + + - name: Push images + run: | + docker push sifchain/block-explorer:testnet diff --git a/Dockerfile b/Dockerfile index 540dbf910..f782d6621 100644 --- a/Dockerfile +++ b/Dockerfile @@ -32,7 +32,9 @@ ENV SCRIPTS_FOLDER /docker RUN apk --no-cache add \ bash \ - ca-certificates + ca-certificates \ + curl \ + jq COPY --from=1 $SCRIPTS_FOLDER $SCRIPTS_FOLDER/ From eabe8cfdc39698afd04baa6c7dde90fdc67f681c Mon Sep 17 00:00:00 2001 From: Ilche Bedelovski Date: Thu, 19 Nov 2020 09:56:40 +0100 Subject: [PATCH 07/24] Feature branch added as a trigger --- .github/workflows/testnet.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/testnet.yml b/.github/workflows/testnet.yml index 21972ccf2..6395a6487 100644 --- a/.github/workflows/testnet.yml +++ b/.github/workflows/testnet.yml @@ -2,7 +2,7 @@ name: Publish Testnet Image for block-explorer on: push: - branches: develop + branches: feature/github-actions jobs: testnet: From 47b4b02228ba71ef6debc4b00e3af159abdda139 Mon Sep 17 00:00:00 2001 From: Ilche Bedelovski Date: Thu, 19 Nov 2020 10:11:23 +0100 Subject: [PATCH 08/24] develop branch as a trigger --- .github/workflows/testnet.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/testnet.yml b/.github/workflows/testnet.yml index 6395a6487..21972ccf2 100644 --- a/.github/workflows/testnet.yml +++ b/.github/workflows/testnet.yml @@ -2,7 +2,7 @@ name: Publish Testnet Image for block-explorer on: push: - branches: feature/github-actions + branches: develop jobs: testnet: From 2ced3832115c930f685e62ca24313266cecfced1 Mon Sep 17 00:00:00 2001 From: Brent McDowell Date: Thu, 18 Mar 2021 11:58:10 +0800 Subject: [PATCH 09/24] Updated release workflow. --- .github/workflows/release.yml | 36 +++++++++++++++++++++++++++++++++++ .github/workflows/testnet.yml | 25 ------------------------ 2 files changed, 36 insertions(+), 25 deletions(-) create mode 100644 .github/workflows/release.yml delete mode 100644 .github/workflows/testnet.yml diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 000000000..dbdff2a97 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,36 @@ +name: Release + +on: + release: + types: [published] + +jobs: + release: + name: Release + runs-on: ubuntu-latest + steps: + - name: Check out the repo + uses: actions/checkout@v2 + + - name: Login to Docker Hub + run: docker login -u ${{ secrets.DOCKERHUB_USERNAME }} -p ${{ secrets.DOCKERHUB_TOKEN }} + + - name: Inject slug/short variables + uses: rlespinasse/github-slug-action@v2.x + + - if: contains(github.ref, 'testnet') + run: | + echo "CHAINNET=testnet" >> "$GITHUB_ENV" + + - if: contains(github.ref, 'mainnet') + run: | + echo "CHAINNET=mainnet" >> "$GITHUB_ENV" + + - name: Build docker image + run: | + echo ${{ env.CHAINNET }} + docker build -t sifchain/block-explorer:${{ env.CHAINNET }} . + + - name: Push docker images + run: | + docker push sifchain/block-explorer:${{ env.CHAINNET }} diff --git a/.github/workflows/testnet.yml b/.github/workflows/testnet.yml deleted file mode 100644 index 21972ccf2..000000000 --- a/.github/workflows/testnet.yml +++ /dev/null @@ -1,25 +0,0 @@ -name: Publish Testnet Image for block-explorer - -on: - push: - branches: develop - -jobs: - testnet: - name: testnet - runs-on: ubuntu-latest - steps: - - name: Check out the repo - uses: actions/checkout@v2 - - - name: Login to Docker Hub - run: | - docker login -u ${{ secrets.DOCKERHUB_USERNAME }} -p ${{ secrets.DOCKERHUB_TOKEN }} - - - name: Build images - run: | - docker build -t sifchain/block-explorer:testnet . - - - name: Push images - run: | - docker push sifchain/block-explorer:testnet From e143dbd42385402eff4e68ab8f4c1fd1a74b91f9 Mon Sep 17 00:00:00 2001 From: intl-man Date: Thu, 18 Mar 2021 12:00:46 +0800 Subject: [PATCH 10/24] Removed the slug actions. --- .github/workflows/release.yml | 3 --- 1 file changed, 3 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index dbdff2a97..b7974a377 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -15,9 +15,6 @@ jobs: - name: Login to Docker Hub run: docker login -u ${{ secrets.DOCKERHUB_USERNAME }} -p ${{ secrets.DOCKERHUB_TOKEN }} - - name: Inject slug/short variables - uses: rlespinasse/github-slug-action@v2.x - - if: contains(github.ref, 'testnet') run: | echo "CHAINNET=testnet" >> "$GITHUB_ENV" From ace39ba36e987f34ec8e41924e1bed6919e0ce74 Mon Sep 17 00:00:00 2001 From: 59023g <5235538+59023g@users.noreply.github.com> Date: Mon, 22 Mar 2021 17:05:01 -0500 Subject: [PATCH 11/24] ui/{Block, Transactions, TransactionTabs}: include clpTxs, pegTxs --- imports/ui/blocks/Block.jsx | 12 ++++- imports/ui/components/Transactions.jsx | 8 +++- imports/ui/transactions/TransactionTabs.jsx | 52 ++++++++++++++++++++- 3 files changed, 67 insertions(+), 5 deletions(-) diff --git a/imports/ui/blocks/Block.jsx b/imports/ui/blocks/Block.jsx index c018139a0..d910b193d 100644 --- a/imports/ui/blocks/Block.jsx +++ b/imports/ui/blocks/Block.jsx @@ -20,19 +20,25 @@ export default class Block extends Component{ distributionTxs: {}, governanceTxs: {}, slashingTxs: {}, + clpTxs: {}, + pegTxs: {}, + }; } componentDidUpdate(prevProps){ if (this.props != prevProps){ if (this.props.transactionsExist){ - // console.log("have txs."); + // console.log("have txs.", this.props); this.setState({ transferTxs: this.props.transferTxs, stakingTxs: this.props.stakingTxs, distributionTxs: this.props.distributionTxs, governanceTxs: this.props.governanceTxs, - slashingTxs: this.props.slashingTxs + slashingTxs: this.props.slashingTxs, + clpTxs: this.props.clpTxs, + pegTxs: this.props.pegTxs + }) } } @@ -79,6 +85,8 @@ export default class Block extends Component{ distributionTxs={this.state.distributionTxs} governanceTxs={this.state.governanceTxs} slashingTxs={this.state.slashingTxs} + clpTxs={this.state.clpTxs} + pegTxs={this.state.pegTxs} /> } diff --git a/imports/ui/components/Transactions.jsx b/imports/ui/components/Transactions.jsx index 2e8ced6c8..2b4ead365 100644 --- a/imports/ui/components/Transactions.jsx +++ b/imports/ui/components/Transactions.jsx @@ -14,6 +14,8 @@ export default class ValidatorTransactions extends Component{ distributionTxs: {}, governanceTxs: {}, slashingTxs: {}, + clpTxs: {}, + pegTxs: {} }; } @@ -26,7 +28,9 @@ export default class ValidatorTransactions extends Component{ stakingTxs: this.props.stakingTxs, distributionTxs: this.props.distributionTxs, governanceTxs: this.props.governanceTxs, - slashingTxs: this.props.slashingTxs + slashingTxs: this.props.slashingTxs, + clpTxs: this.props.clpTxs, + pegTxs: this.props.pegTxs }) } } @@ -43,6 +47,8 @@ export default class ValidatorTransactions extends Component{ distributionTxs={this.state.distributionTxs} governanceTxs={this.state.governanceTxs} slashingTxs={this.state.slashingTxs} + clpTxs={this.state.clpTxs} + pegTxs={this.state.pegTxs} /> } else { diff --git a/imports/ui/transactions/TransactionTabs.jsx b/imports/ui/transactions/TransactionTabs.jsx index 712b667cc..2ef5d2230 100644 --- a/imports/ui/transactions/TransactionTabs.jsx +++ b/imports/ui/transactions/TransactionTabs.jsx @@ -16,7 +16,9 @@ export default class TransactionTabs extends Component{ stakingTxs: {}, distributionTxs: {}, governanceTxs: {}, - slashingTxs: {} + slashingTxs: {}, + clpTxs: {}, + pegTxs: {} } } @@ -35,7 +37,9 @@ export default class TransactionTabs extends Component{ stakingTxs: this.props.stakingTxs, distributionTxs: this.props.distributionTxs, governanceTxs: this.props.governanceTxs, - slashingTxs: this.props.slashingTxs + slashingTxs: this.props.slashingTxs, + clpTxs: this.props.clpTxs, + pegTxs: this.props.pegTxs }) } } @@ -85,6 +89,22 @@ export default class TransactionTabs extends Component{ transactions.slashing ({numbro(this.state.slashingTxs.length).format("0,0")}) + + { this.toggle('tx-clp'); }} + > + transactions.clp ({numbro(this.state.clpTxs.length).format("0,0")}) + + + + { this.toggle('tx-peg'); }} + > + transactions.peg ({numbro(this.state.pegTxs.length).format("0,0")}) + + @@ -157,6 +177,34 @@ export default class TransactionTabs extends Component{ + + + + {(this.state.clpTxs.length > 0)?this.state.clpTxs.map((tx, i) => { + return + }):''} + + + + + + + {(this.state.pegTxs.length > 0)?this.state.pegTxs.map((tx, i) => { + return + }):''} + + + From 6e6719bffd7c5bb7d04688f28ec6f54db0a2dfc8 Mon Sep 17 00:00:00 2001 From: 59023g <5235538+59023g@users.noreply.github.com> Date: Mon, 22 Mar 2021 17:05:36 -0500 Subject: [PATCH 12/24] ui/{block,Transaction}Container: query mongo for more --- imports/ui/blocks/BlockContainer.js | 14 ++++++++++++++ imports/ui/components/TransactionsContainer.js | 14 ++++++++++++++ 2 files changed, 28 insertions(+) diff --git a/imports/ui/blocks/BlockContainer.js b/imports/ui/blocks/BlockContainer.js index 9e895e802..737f30356 100644 --- a/imports/ui/blocks/BlockContainer.js +++ b/imports/ui/blocks/BlockContainer.js @@ -37,6 +37,20 @@ export default BlockContainer = withTracker((props) => { blockExist, transactionsExist, block: blockExist ? block : {}, + clpTxs: transactionsExist ? Transactions.find({ + $or: [ + {"tx.value.msg.type":"clp/Swap"}, + {"tx.value.msg.type":"clp/AddLiquidity"}, + {"tx.value.msg.type":"clp/CreatePool"}, + {"tx.value.msg.type":"clp/RemoveLiquidity"} + ] + }).fetch() : {}, + pegTxs: transactionsExist ? Transactions.find({ + $or: [ + {"tx.value.msg.type":"ethbridge/MsgLock"}, // unpeg? + {"tx.value.msg.type":"ethbridge/MsgCreateEthBridgeClaim"}, // peg: non-rowan (lock), rowan (burn) + ] + }).fetch() : {}, transferTxs: transactionsExist ? Transactions.find({ $or: [ {"tx.value.msg.type":"cosmos-sdk/MsgSend"}, diff --git a/imports/ui/components/TransactionsContainer.js b/imports/ui/components/TransactionsContainer.js index 0122e6445..bba4c8fae 100644 --- a/imports/ui/components/TransactionsContainer.js +++ b/imports/ui/components/TransactionsContainer.js @@ -27,6 +27,20 @@ export default TransactionsContainer = withTracker((props) => { return { loading, transactionsExist, + clpTxs: transactionsExist ? Transactions.find({ + $or: [ + {"tx.value.msg.type":"clp/Swap"}, + {"tx.value.msg.type":"clp/AddLiquidity"}, + {"tx.value.msg.type":"clp/CreatePool"}, + {"tx.value.msg.type":"clp/RemoveLiquidity"} + ] + }).fetch() : {}, + pegTxs: transactionsExist ? Transactions.find({ + $or: [ + {"tx.value.msg.type":"ethbridge/MsgLock"}, // unpeg? + {"tx.value.msg.type":"ethbridge/MsgCreateEthBridgeClaim"}, // peg: non-rowan (lock), rowan (burn) + ] + }).fetch() : {}, transferTxs: transactionsExist ? Transactions.find({ $or: [ {"tx.value.msg.type":"cosmos-sdk/MsgSend"}, From 266da18d7bbb25f3e554cc796a0dce087eb72b31 Mon Sep 17 00:00:00 2001 From: 59023g <5235538+59023g@users.noreply.github.com> Date: Mon, 22 Mar 2021 17:06:32 -0500 Subject: [PATCH 13/24] ui/{Activities,MsgType,Transaction,TransactionRow}: transaction display --- imports/ui/components/Activities.jsx | 402 ++++++++++++++++----- imports/ui/components/MsgType.jsx | 4 +- imports/ui/transactions/Transaction.jsx | 254 +++++++++---- imports/ui/transactions/TransactionRow.jsx | 183 +++++++--- 4 files changed, 638 insertions(+), 205 deletions(-) diff --git a/imports/ui/components/Activities.jsx b/imports/ui/components/Activities.jsx index 5173432ca..30900eba6 100644 --- a/imports/ui/components/Activities.jsx +++ b/imports/ui/components/Activities.jsx @@ -1,102 +1,338 @@ -import React, {Component } from 'react'; -import { MsgType } from './MsgType.jsx'; -import { Link } from 'react-router-dom'; -import Account from '../components/Account.jsx'; -import i18n from 'meteor/universe:i18n'; -import Coin from '/both/utils/coins.js' -import JSONPretty from 'react-json-pretty'; -import _ from 'lodash'; +import React, { Component } from "react"; +import { MsgType } from "./MsgType.jsx"; +import { Link } from "react-router-dom"; +import Account from "../components/Account.jsx"; +import i18n from "meteor/universe:i18n"; +import Coin from "/both/utils/coins.js"; +import JSONPretty from "react-json-pretty"; +import _ from "lodash"; const T = i18n.createComponent(); MultiSend = (props) => { - return
-

activities.single activities.happened

-

activities.senders -

    - {props.msg.value.inputs.map((data,i) =>{ - return
  • activities.sent {data.coins.map((coin, j) =>{ - return {new Coin(coin.amount, coin.denom).toString()} - })} -
  • + return ( +
    +

    + activities.single {" "} + activities.happened +

    +

    + activities.senders +

      + {props.msg.value.inputs.map((data, i) => { + return ( +
    • + activities.sent{" "} + {data.coins.map((coin, j) => { + return ( + + {new Coin(coin.amount, coin.denom).toString()} + + ); })} -
    - activities.receivers -
      - {props.msg.value.outputs.map((data,i) =>{ - return
    • activities.received {data.coins.map((coin,j) =>{ - return {new Coin(coin.amount, coin.denom).toString()} - })}
    • + + ); + })} +
    + activities.receivers +
      + {props.msg.value.outputs.map((data, i) => { + return ( +
    • + activities.received{" "} + {data.coins.map((coin, j) => { + return ( + + {new Coin(coin.amount, coin.denom).toString()} + + ); })} -
    -

    + + ); + })} +
+

-} + ); +}; +function getCoinDecimals (symbol) { + // console.log(Meteor.settings.public.coins) + const coin = Meteor.settings.public.coins.find((item) => { + return item.denom === symbol + }) + return coin.fraction.toString().length - 1 +} export default class Activites extends Component { - constructor(props){ - super(props); + constructor(props) { + super(props); + } + + render() { + // console.log(this.props); + const msg = this.props.msg; + const events = []; + for (let i in this.props.events) { + events[this.props.events[i].type] = this.props.events[i].attributes; } - render(){ - // console.log(this.props); - const msg = this.props.msg; - const events = []; - for (let i in this.props.events){ - events[this.props.events[i].type] = this.props.events[i].attributes - } - - switch (msg.type){ - // bank - case "cosmos-sdk/MsgSend": - let amount = ''; - amount = msg.value.amount.map((coin) => new Coin(coin.amount, coin.denom).toString()).join(', ') - return

{(this.props.invalid)?activities.failedTo:''} {amount} activities.to common.fullStop

- case "cosmos-sdk/MsgMultiSend": - return + switch (msg.type) { + // bank + case "cosmos-sdk/MsgSend": + let amount = ""; + amount = msg.value.amount + .map((coin) => new Coin(coin.amount, coin.denom).toString()) + .join(", "); + return ( +

+ {" "} + {this.props.invalid ? activities.failedTo : ""} + {" "} + {amount} activities.to{" "} + + + + common.fullStop +

+ ); + case "cosmos-sdk/MsgMultiSend": + return ; + + // staking + case "cosmos-sdk/MsgCreateValidator": + return ( +

+ {" "} + {this.props.invalid ? activities.failedTo : ""} + activities.operatingAt{" "} + + + {" "} + activities.withMoniker{" "} + {msg.value.description.moniker} + common.fullStop +

+ ); + case "cosmos-sdk/MsgEditValidator": + return ( +

+ {" "} + {this.props.invalid ? activities.failedTo : ""} + +

+ ); + case "cosmos-sdk/MsgDelegate": + return ( +

+ {" "} + {this.props.invalid ? activities.failedTo : ""} + {" "} + + {new Coin( + msg.value.amount.amount, + msg.value.amount.denom + ).toString(6)} + {" "} + activities.to{" "} + + common.fullStop +

+ ); + case "cosmos-sdk/MsgUndelegate": + return ( +

+ {" "} + {this.props.invalid ? activities.failedTo : ""} + {" "} + + {new Coin( + msg.value.amount.amount, + msg.value.amount.denom + ).toString(6)} + {" "} + activities.from{" "} + + common.fullStop +

+ ); + case "cosmos-sdk/MsgBeginRedelegate": + return ( +

+ {" "} + {this.props.invalid ? activities.failedTo : ""} + {" "} + + {new Coin( + msg.value.amount.amount, + msg.value.amount.denom + ).toString(6)} + {" "} + activities.from{" "} + {" "} + activities.to{" "} + + common.fullStop +

+ ); + + // gov + case "cosmos-sdk/MsgSubmitProposal": + const proposalId = _.get( + this.props, + "events[2].attributes[0].value", + null + ); + const proposalLink = proposalId ? `/proposals/${proposalId}` : "#"; + return ( +

+ {" "} + activities.withTitle{" "} + {msg.value.content.value.title} + common.fullStop +

+ ); + case "cosmos-sdk/MsgDeposit": + return ( +

+ {" "} + {this.props.invalid ? activities.failedTo : ""} + {" "} + + {msg.value.amount + .map((amount, i) => + new Coin(amount.amount, amount.denom).toString(6) + ) + .join(", ")} + {" "} + activities.to{" "} + + proposals.proposal {msg.value.proposal_id} + + common.fullStop +

+ ); + case "cosmos-sdk/MsgVote": + return ( +

+ {" "} + {this.props.invalid ? activities.failedTo : ""} + {" "} + + proposals.proposal {msg.value.proposal_id} + {" "} + activities.withA{" "} + {msg.value.option} + common.fullStop +

+ ); - // staking - case "cosmos-sdk/MsgCreateValidator": - return

{(this.props.invalid)?activities.failedTo:''} activities.operatingAt activities.withMoniker {msg.value.description.moniker}common.fullStop

- case "cosmos-sdk/MsgEditValidator": - return

{(this.props.invalid)?activities.failedTo:''}

- case "cosmos-sdk/MsgDelegate": - return

{(this.props.invalid)?activities.failedTo:''} {new Coin(msg.value.amount.amount, msg.value.amount.denom).toString(6)} activities.to common.fullStop

- case "cosmos-sdk/MsgUndelegate": - return

{(this.props.invalid)?activities.failedTo:''} {new Coin(msg.value.amount.amount, msg.value.amount.denom).toString(6)} activities.from common.fullStop

- case "cosmos-sdk/MsgBeginRedelegate": - return

{(this.props.invalid)?activities.failedTo:''} {new Coin(msg.value.amount.amount, msg.value.amount.denom).toString(6)} activities.from activities.to common.fullStop

+ // distribution + case "cosmos-sdk/MsgWithdrawValidatorCommission": + return ( +

+ {" "} + {this.props.invalid ? activities.failedTo : ""} + + + {" "} + {!this.props.invalid ? ( + + activities.withAmount + + ) : ( + "" + )} + common.fullStop + +

+ ); + case "cosmos-sdk/MsgWithdrawDelegationReward": + return ( +

+ {" "} + {this.props.invalid ? activities.failedTo : ""} + {" "} + {!this.props.invalid ? ( + + activities.withAmount + + ) : ( + "" + )}{" "} + activities.from{" "} + + common.fullStop +

+ ); + case "cosmos-sdk/MsgModifyWithdrawAddress": + return ( +

+ {" "} + {this.props.invalid ? activities.failedTo : ""} + +

+ ); - // gov - case "cosmos-sdk/MsgSubmitProposal": - const proposalId = _.get(this.props, 'events[2].attributes[0].value', null) - const proposalLink = proposalId ? `/proposals/${proposalId}` : "#"; - return

activities.withTitle {msg.value.content.value.title}common.fullStop

- case "cosmos-sdk/MsgDeposit": - return

{(this.props.invalid)?activities.failedTo:''} {msg.value.amount.map((amount,i) =>new Coin(amount.amount, amount.denom).toString(6)).join(', ')} activities.to proposals.proposal {msg.value.proposal_id}common.fullStop

- case "cosmos-sdk/MsgVote": - return

{(this.props.invalid)?activities.failedTo:''} proposals.proposal {msg.value.proposal_id} activities.withA {msg.value.option}common.fullStop

+ // slashing + case "cosmos-sdk/MsgUnjail": + return ( +

+ {" "} + {this.props.invalid ? activities.failedTo : ""} + + common.fullStop +

+ ); - // distribution - case "cosmos-sdk/MsgWithdrawValidatorCommission": - return

{(this.props.invalid)?activities.failedTo:''} {(!this.props.invalid)?activities.withAmount:''}common.fullStop

- case "cosmos-sdk/MsgWithdrawDelegationReward": - return

{(this.props.invalid)?activities.failedTo:''} {(!this.props.invalid)?activities.withAmount:''} activities.from common.fullStop

- case "cosmos-sdk/MsgModifyWithdrawAddress": - return

{(this.props.invalid)?activities.failedTo:''}

+ // ibc + case "cosmos-sdk/IBCTransferMsg": + return ; + case "cosmos-sdk/IBCReceiveMsg": + return ; - // slashing - case "cosmos-sdk/MsgUnjail": - return

{(this.props.invalid)?activities.failedTo:''}common.fullStop

+ // clp + case "clp/Swap": + console.log(getCoinDecimals(msg.value.SentAsset.symbol)) + return ( +

+ {/*{" "} +   + + {new Coin( + msg.value.SentAmount, + msg.value.SentAsset.symbol + ).toString(6)} + {" "} - // ibc - case "cosmos-sdk/IBCTransferMsg": - return - case "cosmos-sdk/IBCReceiveMsg": - return + for + + {new Coin( + msg.value.MinReceivingAmount, + msg.value.ReceivedAsset.symbol + ).toString(6)} + {" "}*/} + +

+ ) - default: - return
- } + default: + return ( +
+ +
+ ); } + } } diff --git a/imports/ui/components/MsgType.jsx b/imports/ui/components/MsgType.jsx index 999f57570..eacbebf8d 100644 --- a/imports/ui/components/MsgType.jsx +++ b/imports/ui/components/MsgType.jsx @@ -49,7 +49,9 @@ export const MsgType = (props) => { return messageTypes.IBCTransfer; case "cosmos-sdk/IBCReceiveMsg": return messageTypes.IBCReceive; - + // clp + case "clp/Swap": + return Swap; default: return {props.type}; } diff --git a/imports/ui/transactions/Transaction.jsx b/imports/ui/transactions/Transaction.jsx index 30b3dbcbd..46462c41a 100644 --- a/imports/ui/transactions/Transaction.jsx +++ b/imports/ui/transactions/Transaction.jsx @@ -1,85 +1,179 @@ -import React, { Component } from 'react'; -import { Container, Row, Col, Card, CardBody, Alert, Spinner } from 'reactstrap'; -import { TxIcon } from '../components/Icons.jsx'; -import Activities from '../components/Activities.jsx'; -import CosmosErrors from '../components/CosmosErrors.jsx'; -import { Link } from 'react-router-dom'; -import { Markdown } from 'react-showdown'; -import numbro from 'numbro'; -import { Helmet } from 'react-helmet'; -import i18n from 'meteor/universe:i18n'; -import Coin from '/both/utils/coins.js'; -import TimeStamp from '../components/TimeStamp.jsx'; +import React, { Component } from "react"; +import { + Container, + Row, + Col, + Card, + CardBody, + Alert, + Spinner, +} from "reactstrap"; +import { TxIcon } from "../components/Icons.jsx"; +import Activities from "../components/Activities.jsx"; +import CosmosErrors from "../components/CosmosErrors.jsx"; +import { Link } from "react-router-dom"; +import { Markdown } from "react-showdown"; +import numbro from "numbro"; +import { Helmet } from "react-helmet"; +import i18n from "meteor/universe:i18n"; +import Coin from "/both/utils/coins.js"; +import TimeStamp from "../components/TimeStamp.jsx"; const T = i18n.createComponent(); -export default class Transaction extends Component{ - constructor(props){ - super(props); - let showdown = require('showdown'); - showdown.setFlavor('github'); - let denom = this.props.denom; - } +export default class Transaction extends Component { + constructor(props) { + super(props); + let showdown = require("showdown"); + showdown.setFlavor("github"); + let denom = this.props.denom; + } - render(){ - - - if (this.props.loading){ - return - - - } - else{ - if (this.props.transactionExist){ - let tx = this.props.transaction; - return - - Transaction {tx.txhash} on Cosmos Hub | The Big Dipper - - -

transactions.transaction {(!tx.code)?:}

- {(tx.code)? - - - - :''} - -
common.information
- - - common.hash - {tx.txhash} - common.height - - {numbro(tx.height).format("0,0")} - {tx.block()? :null} - - transactions.fee - {(tx.tx.value.fee.amount.length > 0)?tx.tx.value.fee.amount.map((fee,i) => { - return {((fee.amount/Meteor.settings.public.stakingFraction)>=1)?(new Coin(parseFloat(fee.amount), fee.denom)).stakeString():(new Coin(parseFloat(fee.amount), fee.denom)).mintString()} - }):transactions.noFee} - transactions.gasUsedWanted - {numbro(tx.gas_used).format("0,0")} / {numbro(tx.gas_wanted).format("0,0")} - transactions.memo - - - - -
- -
transactions.activities
+ render() { + if (this.props.loading) { + return ( + + + + ); + } else { + if (this.props.transactionExist) { + let tx = this.props.transaction; + return ( + + + + Transaction {tx.txhash} on Cosmos Hub | The Big Dipper + + + +

+ transactions.transaction{" "} + {!tx.code ? : } +

+ {tx.code ? ( + + + + + + + + ) : ( + "" + )} + +
+ common.information +
+ + + + common.hash + + + {tx.txhash} + + + common.height + + + + {numbro(tx.height).format("0,0")} + + {tx.block() ? ( + + {" "} + + + ) : null} + + + transactions.fee + + + {tx.tx.value.fee.amount.length > 0 ? ( + tx.tx.value.fee.amount.map((fee, i) => { + return ( + + {" "} + {fee.amount / + Meteor.settings.public.stakingFraction >= + 1 + ? new Coin( + parseFloat(fee.amount), + fee.denom + ).stakeString() + : new Coin( + parseFloat(fee.amount), + fee.denom + ).mintString()}{" "} + + ); + }) + ) : ( + + transactions.noFee + + )} + + + transactions.gasUsedWanted + + + {numbro(tx.gas_used).format("0,0")} /{" "} + {numbro(tx.gas_wanted).format("0,0")} + + + transactions.memo + + + + + + +
+ +
+ transactions.activities +
+
+ {tx.tx.value.msg && tx.tx.value.msg.length > 0 + ? tx.tx.value.msg.map((msg, i) => { + return ( + + - {(tx.tx.value.msg && tx.tx.value.msg.length >0)?tx.tx.value.msg.map((msg,i) => { - return - }):''} -
- } - else{ - return
transactions.noTxFound
- } - } + ); + }) + : ""} +
+ ); + } else { + return ( + +
+ transactions.noTxFound +
+
+ ); + } } -} \ No newline at end of file + } +} diff --git a/imports/ui/transactions/TransactionRow.jsx b/imports/ui/transactions/TransactionRow.jsx index 8e92dd4d0..a14d36a25 100644 --- a/imports/ui/transactions/TransactionRow.jsx +++ b/imports/ui/transactions/TransactionRow.jsx @@ -1,46 +1,147 @@ +import React, { Component } from "react"; +import { Link } from "react-router-dom"; +import { + Row, + Col, + Card, + Alert, + UncontrolledPopover, + PopoverHeader, + PopoverBody, +} from "reactstrap"; +import { TxIcon } from "../components/Icons.jsx"; +import Activities from "../components/Activities.jsx"; +import CosmosErrors from "../components/CosmosErrors.jsx"; +import TimeAgo from "../components/TimeAgo.jsx"; +import numbro from "numbro"; +import Coin from "/both/utils/coins.js"; +import SentryBoundary from "../components/SentryBoundary.jsx"; +import { Markdown } from "react-showdown"; -import React, { Component } from 'react'; -import { Link } from 'react-router-dom'; -import { Row, Col, Card, Alert, UncontrolledPopover, PopoverHeader, PopoverBody } from 'reactstrap'; -import { TxIcon } from '../components/Icons.jsx'; -import Activities from '../components/Activities.jsx'; -import CosmosErrors from '../components/CosmosErrors.jsx'; -import TimeAgo from '../components/TimeAgo.jsx'; -import numbro from 'numbro'; -import Coin from '/both/utils/coins.js' -import SentryBoundary from '../components/SentryBoundary.jsx'; -import { Markdown } from 'react-showdown'; - -let showdown = require('showdown'); -showdown.setFlavor('github'); +let showdown = require("showdown"); +showdown.setFlavor("github"); export const TransactionRow = (props) => { - let tx = props.tx; - - return - {(tx.tx.value.msg && tx.tx.value.msg.length >0)?tx.tx.value.msg.map((msg,i) => { - return - }):''} - {tx.txhash} - schedule {tx.block()?:''}{(tx.tx.value.memo && tx.tx.value.memo != "")? - message - - - - :""} - {(!props.blockList)? {numbro(tx.height).format("0,0")}:''} - {(!tx.code)?:} - monetization_on {(tx.tx.value.fee.amount.length > 0)?tx.tx.value.fee.amount.map((fee,i) => { - return {(new Coin(parseFloat(fee.amount), (fee)?fee.denom:null)).stakeString()} - }):No fee} - {(tx.code)? + let tx = props.tx; + + return ( + + + + {tx.tx.value.msg && tx.tx.value.msg.length > 0 + ? tx.tx.value.msg.map((msg, i) => { + return ( + + + + ); + }) + : ""} + + + {" "} + {tx.txhash} + + + schedule{" "} + {tx.block() ? : ""} + {tx.tx.value.memo && tx.tx.value.memo != "" ? ( + + + message + + + + + + + + ) : ( + "" + )} + + {!props.blockList ? ( + + {" "} + + {numbro(tx.height).format("0,0")} + + + ) : ( + "" + )} + + {!tx.code ? : } + + + monetization_on{" "} + {tx.tx.value.fee.amount.length > 0 ? ( + tx.tx.value.fee.amount.map((fee, i) => { + return ( + + {new Coin( + parseFloat(fee.amount), + fee ? fee.denom : null + ).stakeString()} + + ); + }) + ) : ( + No fee + )} + + {tx.code ? ( + - + - :''} - -} + + ) : ( + "" + )} + + + ); +}; From 9b2b9fd26b679cba75e335066d3054d382af99ed Mon Sep 17 00:00:00 2001 From: 59023g <5235538+59023g@users.noreply.github.com> Date: Mon, 22 Mar 2021 17:06:53 -0500 Subject: [PATCH 14/24] i18n/en-us: words --- both/i18n/en-us.i18n.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/both/i18n/en-us.i18n.yml b/both/i18n/en-us.i18n.yml index a565b91da..f4f889649 100644 --- a/both/i18n/en-us.i18n.yml +++ b/both/i18n/en-us.i18n.yml @@ -143,6 +143,8 @@ transactions: distribution: 'Distribution' governance: 'Governance' slashing: 'Slashing' + clp: "CLP" + peg: "Peg" proposals: notFound: 'No proposal found.' listOfProposals: 'Here is a list of governance proposals.' From eacd7b4e01debd961e2985bfd09a07d97ee0c707 Mon Sep 17 00:00:00 2001 From: intl-man Date: Tue, 6 Apr 2021 11:22:37 +0800 Subject: [PATCH 15/24] Workflow updates. --- .github/workflows/release.yml | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index b7974a377..96399f18b 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -15,18 +15,9 @@ jobs: - name: Login to Docker Hub run: docker login -u ${{ secrets.DOCKERHUB_USERNAME }} -p ${{ secrets.DOCKERHUB_TOKEN }} - - if: contains(github.ref, 'testnet') - run: | - echo "CHAINNET=testnet" >> "$GITHUB_ENV" - - - if: contains(github.ref, 'mainnet') - run: | - echo "CHAINNET=mainnet" >> "$GITHUB_ENV" - - name: Build docker image run: | - echo ${{ env.CHAINNET }} - docker build -t sifchain/block-explorer:${{ env.CHAINNET }} . + docker build -t sifchain/block-explorer:${{ github.ref }} . - name: Push docker images run: | From 24bfe8f1e5c5bf53006bbda427c604e9e37b27f7 Mon Sep 17 00:00:00 2001 From: intl-man Date: Tue, 6 Apr 2021 11:37:25 +0800 Subject: [PATCH 16/24] Release fixes. --- .github/workflows/release.yml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 96399f18b..c617a9b40 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -15,10 +15,13 @@ jobs: - name: Login to Docker Hub run: docker login -u ${{ secrets.DOCKERHUB_USERNAME }} -p ${{ secrets.DOCKERHUB_TOKEN }} + - name: Inject slug/short variables + uses: rlespinasse/github-slug-action@v2.x + - name: Build docker image run: | - docker build -t sifchain/block-explorer:${{ github.ref }} . + docker build -t sifchain/block-explorer:${{ env.GITHUB_REF_SLUG }} . - name: Push docker images run: | - docker push sifchain/block-explorer:${{ env.CHAINNET }} + docker push sifchain/block-explorer:${{ env.GITHUB_REF_SLUG }} From a8e3ca040a55665d69af9125a130fe6f7ed5a6d2 Mon Sep 17 00:00:00 2001 From: 59023g <5235538+59023g@users.noreply.github.com> Date: Tue, 6 Apr 2021 13:26:50 -0500 Subject: [PATCH 17/24] sifTxs, look --- both/document.html | 6 +- both/i18n/en-us.i18n.yml | 2 +- both/utils/coins.js | 1 + client/styles.scss | 45 ++++++++ imports/ui/accounts/Account.jsx | 2 +- imports/ui/blocks/Block.jsx | 2 +- imports/ui/blocks/BlocksTable.jsx | 4 +- imports/ui/components/Activities.jsx | 47 +++++++- imports/ui/components/Header.jsx | 10 +- .../ui/components/TransactionsContainer.js | 5 +- imports/ui/home/Home.jsx | 2 +- imports/ui/proposals/Proposals.jsx | 14 +-- imports/ui/transactions/TransactionsList.jsx | 40 +++---- imports/ui/validators/Validator.jsx | 4 +- imports/ui/validators/ValidatorsList.jsx | 100 +++++++++--------- public/img/sifchain.svg | 3 + 16 files changed, 197 insertions(+), 90 deletions(-) create mode 100644 public/img/sifchain.svg diff --git a/both/document.html b/both/document.html index 36e534fd7..837670415 100644 --- a/both/document.html +++ b/both/document.html @@ -1,11 +1,11 @@ - Big Dipper | Block Explorer by Forbole + Sifchain - Block Explorer - - + + diff --git a/both/i18n/en-us.i18n.yml b/both/i18n/en-us.i18n.yml index f4f889649..b3a91237f 100644 --- a/both/i18n/en-us.i18n.yml +++ b/both/i18n/en-us.i18n.yml @@ -19,7 +19,7 @@ common: hash: 'Hash' more: 'More' fullStop: '.' - searchPlaceholder: 'Search with tx hash / block height / address' + searchPlaceholder: 'Search with Tx Hash / Block Height / Address' cancel: 'Cancel' retry: 'Retry' rewards: 'Rewards' diff --git a/both/utils/coins.js b/both/utils/coins.js index 46f5fd76b..4cd96fe19 100644 --- a/both/utils/coins.js +++ b/both/utils/coins.js @@ -58,6 +58,7 @@ export default class Coin { toString (precision) { // default to display in mint denom if it has more than 4 decimal places let minStake = Coin.StakingCoin.fraction/(precision?Math.pow(10, precision):10000) + // console.log('minStake', this.amount, minStake) if (this.amount < minStake) { return `${numbro(this.amount).format('0,0.0000' )} ${this._coin.denom}`; } else { diff --git a/client/styles.scss b/client/styles.scss index f9e125bec..f88159e68 100644 --- a/client/styles.scss +++ b/client/styles.scss @@ -5,8 +5,53 @@ $primary: $forbole-red !default; @import "bootstrap"; @import "materia/bootswatch"; +@import url('https://fonts.googleapis.com/css2?family=PT+Serif:ital,wght@0,400;0,700;1,400&display=swap'); + +.nav-item { cursor: pointer } +.quick-note { font-weight: 900; + width: 100%; + border-top: 1px solid; + display: block;} + +.card { + box-shadow: none; + border: 1px solid rgba(0,0,0,.5); +} + +.navbar { + box-shadow: none; +} + +.navbar-dark .navbar-nav .nav-link { + color: rgba(255, 255, 255, 1); + font-weight: 900; +} + +#account > div:nth-child(2) > div > h3 > span > span > a { + color: white +} +#queryString {box-shadow: inset 0 -2px 0 #fff} +h1 { color: white } +#footer { display: none !important} + +.bgw { background: white} + +#validator-list > .card { border: none} +#validator-list > div.validator-list.row > div > div:nth-child(1) {} +#validator-list > div.bgw.mt15 > div > div > div{border: none} +.mt15 { margin-top: 15px} +.p15 { padding: 15px} + +#main > div:nth-child(3) > div:nth-child(2) > div > div > div.col-md-8 > ul.nav-pills { background: white; padding: 15px} +#account > div:nth-child(2) > div > h3 > span > i { color: #343434 !important } +#account > div:nth-child(2) > div > h3 > span > span {overflow: hidden !important} + + +::placeholder { color: white !important; opacity: 1} body { font-size: inherit !important; + font-family: "PT Serif"; + background: #caa93a; } .no-select { diff --git a/imports/ui/accounts/Account.jsx b/imports/ui/accounts/Account.jsx index 3b1c91c38..e61af2c9e 100644 --- a/imports/ui/accounts/Account.jsx +++ b/imports/ui/accounts/Account.jsx @@ -282,7 +282,7 @@ export default class AccountDetails extends Component{ else if (this.state.accountExists){ return
- Account Details of {this.state.address} on Cosmos Hub | The Big Dipper + Account Details of {this.state.address} on Sifchain | The Big Dipper diff --git a/imports/ui/blocks/Block.jsx b/imports/ui/blocks/Block.jsx index d910b193d..909f85d68 100644 --- a/imports/ui/blocks/Block.jsx +++ b/imports/ui/blocks/Block.jsx @@ -60,7 +60,7 @@ export default class Block extends Component{ return - Block {numbro(block.height).format("0,0")} on Cosmos Hub | The Big Dipper + Block {numbro(block.height).format("0,0")} on Sifchain | The Big Dipper

blocks.block {numbro(block.height).format("0,0")}

diff --git a/imports/ui/blocks/BlocksTable.jsx b/imports/ui/blocks/BlocksTable.jsx index 975167fb4..27be91706 100644 --- a/imports/ui/blocks/BlocksTable.jsx +++ b/imports/ui/blocks/BlocksTable.jsx @@ -77,13 +77,14 @@ export default class BlocksTable extends Component { render(){ return
- Latest Blocks on Cosmos Hub | The Big Dipper + Latest Blocks on Sifchain | The Big Dipper

blocks.latestBlocks

+
} @@ -105,6 +106,7 @@ export default class BlocksTable extends Component { +
} } diff --git a/imports/ui/components/Activities.jsx b/imports/ui/components/Activities.jsx index 30900eba6..f0e1193dd 100644 --- a/imports/ui/components/Activities.jsx +++ b/imports/ui/components/Activities.jsx @@ -304,7 +304,7 @@ export default class Activites extends Component { // clp case "clp/Swap": - console.log(getCoinDecimals(msg.value.SentAsset.symbol)) + // console.log(getCoinDecimals(msg.value.SentAsset.symbol)) return (

{/*{" "} @@ -324,13 +324,58 @@ export default class Activites extends Component { ).toString(6)} {" "}*/} + Swap

) + case "ethbridge/MsgLock": + return ( +

+ + Unpeg +

+ ) + + case "ethbridge/MsgBurn": + return ( +

+ + Unpeg +

+ ) + + case "ethbridge/MsgCreateEthBridgeClaim": + return ( +

+ + Peg +

+ ) + + case "clp/AddLiquidity": + return ( +

+ + Add Liquidity +

+ ) + + case "clp/RemoveLiquidity": + return ( +

+ + Remove Liquidity +

+ ) + + + default: return (
+ {msg.type} +
); } diff --git a/imports/ui/components/Header.jsx b/imports/ui/components/Header.jsx index 565cdf1fb..a60546154 100644 --- a/imports/ui/components/Header.jsx +++ b/imports/ui/components/Header.jsx @@ -169,11 +169,15 @@ export default class Header extends Component { let signedInAddress = getUser(); return ( - navbar.siteName {this.state.version} - + + +{/* navbar.siteName  + {this.state.version} */} + +{/* {Meteor.settings.public.chainId} {this.state.networks} - + */} diff --git a/imports/ui/components/TransactionsContainer.js b/imports/ui/components/TransactionsContainer.js index bba4c8fae..c293903ea 100644 --- a/imports/ui/components/TransactionsContainer.js +++ b/imports/ui/components/TransactionsContainer.js @@ -37,8 +37,9 @@ export default TransactionsContainer = withTracker((props) => { }).fetch() : {}, pegTxs: transactionsExist ? Transactions.find({ $or: [ - {"tx.value.msg.type":"ethbridge/MsgLock"}, // unpeg? - {"tx.value.msg.type":"ethbridge/MsgCreateEthBridgeClaim"}, // peg: non-rowan (lock), rowan (burn) + {"tx.value.msg.type":"ethbridge/MsgLock"}, + {"tx.value.msg.type":"ethbridge/MsgBurn"}, + {"tx.value.msg.type":"ethbridge/MsgCreateEthBridgeClaim"}, ] }).fetch() : {}, transferTxs: transactionsExist ? Transactions.find({ diff --git a/imports/ui/home/Home.jsx b/imports/ui/home/Home.jsx index 42d5ba55e..5fe38d984 100644 --- a/imports/ui/home/Home.jsx +++ b/imports/ui/home/Home.jsx @@ -16,7 +16,7 @@ export default class Home extends Component{ render() { return
- The Big Dipper | Cosmos Explorer by Forbole + Sifchain Explorer by Forbole diff --git a/imports/ui/proposals/Proposals.jsx b/imports/ui/proposals/Proposals.jsx index 1fc3ab395..d482d62f9 100644 --- a/imports/ui/proposals/Proposals.jsx +++ b/imports/ui/proposals/Proposals.jsx @@ -11,7 +11,7 @@ const T = i18n.createComponent(); const ProposalList = (props) => { return
-

proposals.listOfProposals

+ {/*

proposals.listOfProposals

*/} @@ -27,17 +27,19 @@ export default class Proposals extends Component{ render() { return
- Governance Proposals on Cosmos Hub | The Big Dipper + Governance Proposals on Sifchain | The Big Dipper

proposals.proposals

- - - - +
+ + + + +
} diff --git a/imports/ui/transactions/TransactionsList.jsx b/imports/ui/transactions/TransactionsList.jsx index fae5057f8..58bb7139c 100644 --- a/imports/ui/transactions/TransactionsList.jsx +++ b/imports/ui/transactions/TransactionsList.jsx @@ -85,31 +85,33 @@ export default class Transactions extends Component{ render(){ return
- Latest Transactions on Cosmos Hub | The Big Dipper + Latest Transactions on Sifchain | The Big Dipper

transactions.transactions

- - } - open={this.state.sidebarOpen} - onSetOpen={this.onSetSidebarOpen} - styles={{ sidebar: { - background: "white", - position: "fixed", - width: '85%', - zIndex: 4 - },overlay: { - zIndex: 3 - } }} - > - } /> - - - +
+ + } + open={this.state.sidebarOpen} + onSetOpen={this.onSetSidebarOpen} + styles={{ sidebar: { + background: "white", + position: "fixed", + width: '85%', + zIndex: 4 + },overlay: { + zIndex: 3 + } }} + > + } /> + + + +
} } \ No newline at end of file diff --git a/imports/ui/validators/Validator.jsx b/imports/ui/validators/Validator.jsx index a0ecf77bd..246cdb443 100644 --- a/imports/ui/validators/Validator.jsx +++ b/imports/ui/validators/Validator.jsx @@ -190,7 +190,7 @@ export default class Validator extends Component{ return - { moniker } - Cosmos Validator | The Big Dipper + { moniker } - Sifchain Validator | The Big Dipper @@ -264,7 +264,7 @@ export default class Validator extends Component{ -