forked from LaconicNetwork/cosmos-explorer
Compare commits
40
Commits
testnet
...
state-sync
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
17fba7d61e | ||
|
|
566ae0a95b | ||
|
|
23baabc026 | ||
|
|
eaa77918ac | ||
|
|
2fc3031f84 | ||
|
|
405cb90667 | ||
|
|
fd132b9e14 | ||
|
|
02b5baf304 | ||
|
|
38c728b7f5 | ||
|
|
6c59bb6f60 | ||
|
|
9b70a55220 | ||
|
|
3327f3a27d | ||
|
|
732c6ee922 | ||
|
|
8bbb3379c2 | ||
|
|
2c5b50549d | ||
|
|
a8acd8e21f | ||
|
|
c2afbe584e | ||
|
|
9cdda905b4 | ||
|
|
3981667455 | ||
|
|
299fcc703b | ||
|
|
74abaa8860 | ||
|
|
69accd8267 | ||
|
|
89ca3d6a42 | ||
|
|
83663b9c18 | ||
|
|
e15918151e | ||
|
|
67d3ab7871 | ||
|
|
4630ce63b1 | ||
|
|
d9ef5e1d98 | ||
|
|
ed54846804 | ||
|
|
62dafec960 | ||
|
|
95e26f6072 | ||
|
|
d4e7e98be3 | ||
|
|
48b350fd87 | ||
|
|
ca35ec4d23 | ||
|
|
fa68f6c0df | ||
|
|
ef2354a9e8 | ||
|
|
4f528bf31c | ||
|
|
3aa8c63fe4 | ||
|
|
e5e296fe99 | ||
|
|
a26765ad4b |
+5
-3
@@ -5,7 +5,8 @@
|
||||
"scripts": {
|
||||
"serve": "vue-cli-service serve",
|
||||
"build": "vue-cli-service build",
|
||||
"lint": "vue-cli-service lint"
|
||||
"lint": "vue-cli-service lint",
|
||||
"analyz": "vue-cli-service build --report"
|
||||
},
|
||||
"dependencies": {
|
||||
"@casl/ability": "4.1.6",
|
||||
@@ -18,7 +19,6 @@
|
||||
"@cosmjs/math": "^0.26.5",
|
||||
"@cosmjs/proto-signing": "^0.26.5",
|
||||
"@cosmjs/stargate": "0.26.5",
|
||||
"@cosmostation/cosmosjs": "^0.10.6",
|
||||
"@intlify/vue-i18n-loader": "^2.1.2",
|
||||
"@ledgerhq/hw-app-cosmos": "^6.3.0",
|
||||
"@ledgerhq/hw-transport-web-ble": "^6.3.0",
|
||||
@@ -92,11 +92,13 @@
|
||||
"@vue/eslint-config-airbnb": "^5.3.0",
|
||||
"@vuepress/plugin-medium-zoom": "^1.7.1",
|
||||
"babel-eslint": "^10.0.3",
|
||||
"compression-webpack-plugin": "6.1.1",
|
||||
"eslint": "6.8.0",
|
||||
"eslint-plugin-import": "^2.22.1",
|
||||
"eslint-plugin-vue": "6.2.2",
|
||||
"sass": "1.32.*",
|
||||
"sass-loader": "^10.1.0",
|
||||
"vue-template-compiler": "2.x"
|
||||
"vue-template-compiler": "2.x",
|
||||
"webpack-bundle-analyzer": "^4.5.0"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -20,4 +20,13 @@ server {
|
||||
root /usr/share/nginx/html;
|
||||
}
|
||||
|
||||
gzip on;
|
||||
gzip_proxied any;
|
||||
gzip_static on;
|
||||
gzip_min_length 1024;
|
||||
gzip_buffers 4 16k;
|
||||
gzip_comp_level 2;
|
||||
gzip_types text/plain application/javascript application/x-javascript text/css application/xml text/javascript application/x-httpd-php application/vnd.ms-fontobject font/ttf font/opentype font/x-woff image/svg+xml;
|
||||
gzip_vary off;
|
||||
gzip_disable "MSIE [1-6]\.";
|
||||
}
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 2.1 KiB |
@@ -0,0 +1,24 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 25.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<svg version="1.1" id="BACKGROUND" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
viewBox="0 0 512 512" style="enable-background:new 0 0 512 512;" xml:space="preserve">
|
||||
<style type="text/css">
|
||||
.st0{fill-rule:evenodd;clip-rule:evenodd;fill:#00D2FF;}
|
||||
</style>
|
||||
<path d="M369.3,459.5H142.7c-49.6,0-90.2-40.6-90.2-90.2V142.7c0-49.6,40.6-90.2,90.2-90.2h226.5c49.6,0,90.2,40.6,90.2,90.2v226.5
|
||||
C459.5,418.9,418.9,459.5,369.3,459.5z"/>
|
||||
<g id="Symbols">
|
||||
<g id="Header-Singed-In-Final" transform="translate(-27.000000, -14.000000)">
|
||||
<g id="ixo-logo" transform="translate(27.000000, 14.000000)">
|
||||
<path id="Fill-2" class="st0" d="M361.3,305.8c-12.4,0-22.5-10.1-22.5-22.5s10.1-22.5,22.5-22.5c12.4,0,22.5,10.1,22.5,22.5
|
||||
S373.7,305.8,361.3,305.8 M361.3,219.6c-35.2,0-63.7,28.5-63.7,63.7c0,35.2,28.5,63.7,63.7,63.7s63.7-28.5,63.7-63.7
|
||||
C425,248.1,396.5,219.6,361.3,219.6"/>
|
||||
<polygon id="Fill-4" class="st0" points="111,219.6 111,347 156.5,347 156.5,219.6 156.4,219.6 "/>
|
||||
<polygon id="Fill-6" class="st0" points="229.3,251.4 197.5,219.6 165.6,219.6 165.6,251.4 197.5,283.3 165.6,315.2 165.6,347
|
||||
197.5,347 229.3,315.2 261.2,347 261.2,347 261.2,347 293,347 293,315.2 261.2,283.3 293,251.4 293,219.6 261.2,219.6 "/>
|
||||
<path id="Fill-8" class="st0" d="M133.8,210.5c-12.6,0-22.8-10.2-22.8-22.8c0-12.6,10.2-22.8,22.8-22.8s22.8,10.2,22.8,22.8
|
||||
C156.5,200.3,146.3,210.5,133.8,210.5"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.6 KiB |
+4
-6
@@ -7,12 +7,10 @@
|
||||
<component :is="layout">
|
||||
<router-view />
|
||||
</component>
|
||||
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
|
||||
// This will be populated in `beforeCreate` hook
|
||||
import { $themeColors, $themeBreakpoints, $themeConfig } from '@themeConfig'
|
||||
import { provideToast } from 'vue-toastification/composition'
|
||||
@@ -29,19 +27,17 @@ const LayoutFull = () => import('@/layouts/full/LayoutFull.vue')
|
||||
|
||||
export default {
|
||||
components: {
|
||||
|
||||
// Layouts
|
||||
LayoutHorizontal,
|
||||
LayoutVertical,
|
||||
LayoutFull,
|
||||
|
||||
},
|
||||
|
||||
// ! We can move this computed: layout & contentLayoutType once we get to use Vue 3
|
||||
// Currently, router.currentRoute is not reactive and doesn't trigger any change
|
||||
computed: {
|
||||
layout() {
|
||||
if (this.$route.meta.layout === 'full') return 'layout-full'
|
||||
if (!this.$route.name || this.$route.meta.layout === 'full') return 'layout-full'
|
||||
return `layout-${this.contentLayoutType}`
|
||||
},
|
||||
contentLayoutType() {
|
||||
@@ -62,7 +58,9 @@ export default {
|
||||
|
||||
// eslint-disable-next-line no-plusplus
|
||||
for (let i = 0, len = breakpoints.length; i < len; i++) {
|
||||
$themeBreakpoints[breakpoints[i]] = Number(useCssVar(`--breakpoint-${breakpoints[i]}`, document.documentElement).value.slice(0, -2))
|
||||
$themeBreakpoints[breakpoints[i]] = Number(
|
||||
useCssVar(`--breakpoint-${breakpoints[i]}`, document.documentElement).value.slice(0, -2),
|
||||
)
|
||||
}
|
||||
|
||||
// Set RTL
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
{
|
||||
"chain_name": "cosmos",
|
||||
"api": ["https://cosmos.api.ping.pub"],
|
||||
"rpc": ["https://cosmos.rpc.ping.pub:443","http://your-host:26657"]
|
||||
"sdk_version": "0.42.6",
|
||||
"coin_type": "118",
|
||||
"min_tx_fee": "800",
|
||||
@@ -28,6 +29,7 @@
|
||||
```
|
||||
- **chain_name** the name to identify the chain on ping.pub
|
||||
- **api** the rest api endpoint.(make sure that CORS is enabled: `Allow-Control-Allow-Origin: *`)
|
||||
- **rpc** the rpc endpoint, make sure that the port is added.
|
||||
- **assets** Native Assets on blockchain.
|
||||
# Test
|
||||
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"chain_name": "agoric",
|
||||
"api": ["https://api.agoric.sgtstake.com", "https://main.api.agoric.net"],
|
||||
"sdk_version": "0.41.3",
|
||||
"coin_type": "564",
|
||||
"min_tx_fee": "8000",
|
||||
"assets": [{
|
||||
"base": "ubld",
|
||||
"symbol": "BLD",
|
||||
"exponent": "6",
|
||||
"coingecko_id": "",
|
||||
"logo": ""
|
||||
},{
|
||||
"base": "urun",
|
||||
"symbol": "RUN",
|
||||
"exponent": "6",
|
||||
"coingecko_id": "",
|
||||
"logo": ""
|
||||
}],
|
||||
"addr_prefix": "agoric",
|
||||
"logo": "https://dl.airtable.com/.attachments/0628c47ad886794451954f517daf254e/adc8afff/Agoric-logo-color1.png"
|
||||
}
|
||||
@@ -1,6 +1,7 @@
|
||||
{
|
||||
"chain_name": "akash-network",
|
||||
"api": ["https://akash.api.ping.pub"],
|
||||
"rpc": ["http://rpc.akash.forbole.com:80", "http://akashsentry01.skynetvalidators.com:26657"],
|
||||
"sdk_version": "0.41.3",
|
||||
"coin_type": "118",
|
||||
"min_tx_fee": "8000",
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
{
|
||||
"chain_name": "celestia",
|
||||
"coingecko": "",
|
||||
"api": "https://celestia-api.skynetvalidators.com",
|
||||
"sdk_version": "0.44.0",
|
||||
"coin_type": "118",
|
||||
"min_tx_fee": "800",
|
||||
"addr_prefix": "celestia",
|
||||
"logo": "https://explorer-images.s3.filebase.com/celestia-logo.png",
|
||||
"assets": [{
|
||||
"base": "celes",
|
||||
"symbol": "CELES",
|
||||
"exponent": "0",
|
||||
"coingecko_id": "",
|
||||
"logo": "https://explorer-images.s3.filebase.com/celestia-logo.png"
|
||||
}]
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
{
|
||||
"chain_name": "cerberus",
|
||||
"coingecko": "",
|
||||
"api": ["https://api.cerberus.zone:1317"],
|
||||
"sdk_version": "0.44.5",
|
||||
"coin_type": "118",
|
||||
"min_tx_fee": "5000",
|
||||
"addr_prefix": "cerberus",
|
||||
"logo": "https://cerberus-chain.s3.us-east-2.amazonaws.com/main/logo.png",
|
||||
"assets": [
|
||||
{
|
||||
"base": "ucrbrus",
|
||||
"symbol": "CRBRUS",
|
||||
"exponent": "6",
|
||||
"coingecko_id": "",
|
||||
"logo": "https://cerberus-chain.s3.us-east-2.amazonaws.com/main/logo.png"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
{
|
||||
"chain_name": "chronic-token",
|
||||
"coingecko": "",
|
||||
"api": "https://chtd-api.skynetvalidators.com",
|
||||
"sdk_version": "0.44.5",
|
||||
"coin_type": "118",
|
||||
"min_tx_fee": "800",
|
||||
"addr_prefix": "chronic",
|
||||
"logo": "https://explorer-images.s3.filebase.com/cht-logo.jpg",
|
||||
"assets": [{
|
||||
"base": "ucgas",
|
||||
"symbol": "CGAS",
|
||||
"exponent": "6",
|
||||
"coingecko_id": "",
|
||||
"logo": "https://explorer-images.s3.filebase.com/cht-logo.jpg"
|
||||
},{
|
||||
"base": "ucht",
|
||||
"symbol": "CHT",
|
||||
"exponent": "6",
|
||||
"coingecko_id": "ion",
|
||||
"logo": "https://explorer-images.s3.filebase.com/cht-logo.jpg"
|
||||
}]
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
{
|
||||
"chain_name": "cosmic-horizon",
|
||||
"api": ["https://coho-api.skynetvalidators.com"],
|
||||
"sdk_version": "0.44.5",
|
||||
"coin_type": "118",
|
||||
"min_tx_fee": "300",
|
||||
"assets": [{
|
||||
"base": "ucoho",
|
||||
"symbol": "COHO",
|
||||
"exponent": "6",
|
||||
"coingecko_id": "",
|
||||
"logo": "https://coho-images.s3.filebase.com/red_logo.png"
|
||||
}],
|
||||
"addr_prefix": "coho",
|
||||
"logo": "https://coho-images.s3.filebase.com/red_logo.png"
|
||||
}
|
||||
@@ -1,7 +1,8 @@
|
||||
{
|
||||
"chain_name": "cosmos",
|
||||
"coingecko": "cosmos",
|
||||
"api": ["https://lcd-cosmoshub.blockapsis.com", "https://cosmos.api.ping.pub", "https://cosmoshub.stakesystems.io"],
|
||||
"api": ["https://cosmos.api.ping.pub", "https://lcd-cosmoshub.blockapsis.com"],
|
||||
"rpc": ["http://cosmos.rpc.ping.pub:26657", "https://cosmoshub.validator.network:443"],
|
||||
"sdk_version": "0.44.3",
|
||||
"coin_type": "118",
|
||||
"min_tx_fee": "800",
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
{
|
||||
"chain_name": "DWS",
|
||||
"coingecko": "",
|
||||
"api": "https://dws-api.skynetvalidators.com",
|
||||
"sdk_version": "0.44.3",
|
||||
"coin_type": "118",
|
||||
"min_tx_fee": "200",
|
||||
"addr_prefix": "deweb",
|
||||
"logo": "https://dws-images.s3.filebase.com/logo.png",
|
||||
"assets": [{
|
||||
"base": "udws",
|
||||
"symbol": "DWS",
|
||||
"exponent": "6",
|
||||
"coingecko_id": "",
|
||||
"logo": "https://dws-images.s3.filebase.com/logo.png"
|
||||
}]
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
{
|
||||
"chain_name": "fetchhub",
|
||||
"api": ["https://rest-fetchhub.fetch.ai"],
|
||||
"sdk_version": "0.45.1",
|
||||
"coin_type": "118",
|
||||
"min_tx_fee": "3000000000000000",
|
||||
"addr_prefix": "fetch",
|
||||
"logo": "https://ping.pub/logos/fetchhub.png",
|
||||
"assets": [{
|
||||
"base": "afet",
|
||||
"symbol": "fet",
|
||||
"exponent": "18",
|
||||
"coingecko_id": "",
|
||||
"logo": "https://ping.pub/logos/fetchhub.png"
|
||||
}]
|
||||
}
|
||||
@@ -1,6 +1,7 @@
|
||||
{
|
||||
"chain_name": "iris-network",
|
||||
"api": "https://iris.api.ping.pub",
|
||||
"rpc": ["http://34.82.96.8:26657","http://34.77.68.145:26657"],
|
||||
"sdk_version": "0.42.4",
|
||||
"coin_type": "118",
|
||||
"min_tx_fee": "40000",
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
{
|
||||
"chain_name": "ixo",
|
||||
"api": ["https://impacthub.ixo.world/rest", "https://proxies.sifchain.finance/api/impacthub-3/rest"],
|
||||
"sdk_version": "0.42.6",
|
||||
"coin_type": "118",
|
||||
"min_tx_fee": "3000",
|
||||
"addr_prefix": "ixo",
|
||||
"logo": "https://ping.pub/logos/ixo.svg",
|
||||
"assets": [{
|
||||
"base": "uixo",
|
||||
"symbol": "IXO",
|
||||
"exponent": "6",
|
||||
"coingecko_id": "ixo",
|
||||
"logo": "https://ping.pub/logos/ixo.svg"
|
||||
}]
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
{
|
||||
"chain_name": "omniflix",
|
||||
"coingecko": "",
|
||||
"api": "https://omniflixhub-api.skynetvalidators.com",
|
||||
"sdk_version": "0.45.1",
|
||||
"coin_type": "118",
|
||||
"min_tx_fee": "3000",
|
||||
"addr_prefix": "omniflix",
|
||||
"logo": "https://explorer-images.s3.filebase.com/omniflix-alpha-logo.png",
|
||||
"assets": [{
|
||||
"base": "uflix",
|
||||
"symbol": "FLIX",
|
||||
"exponent": "6",
|
||||
"coingecko_id": "",
|
||||
"logo": "https://explorer-images.s3.filebase.com/omniflix-alpha-logo.png"
|
||||
}]
|
||||
}
|
||||
@@ -1,6 +1,6 @@
|
||||
|
||||
{
|
||||
"chain_name": "certik",
|
||||
"chain_name": "shentu",
|
||||
"api":"https://azuredragon.noopsbycertik.com",
|
||||
"sdk_version": "0.42.9",
|
||||
"coin_type": "118",
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"chain_name": "sommelier",
|
||||
"api": ["https://lcd-sommelier.keplr.app"],
|
||||
"sdk_version": "0.44.5",
|
||||
"coin_type": "118",
|
||||
"min_tx_fee": "8000",
|
||||
"addr_prefix": "somm",
|
||||
"logo": "https://dl.airtable.com/.attachments/0f37f3aa77836b2db0ed217560264ff1/6f51315b/St07WEsb_400x400.png",
|
||||
"assets": [{
|
||||
"base": "usomm",
|
||||
"symbol": "somm",
|
||||
"exponent": "6",
|
||||
"coingecko_id": "",
|
||||
"logo": "https://dl.airtable.com/.attachments/0f37f3aa77836b2db0ed217560264ff1/6f51315b/St07WEsb_400x400.png"
|
||||
},{
|
||||
"base": "msomm",
|
||||
"symbol": "somm",
|
||||
"exponent": "3",
|
||||
"coingecko_id": "",
|
||||
"logo": "https://dl.airtable.com/.attachments/0f37f3aa77836b2db0ed217560264ff1/6f51315b/St07WEsb_400x400.png"
|
||||
}]
|
||||
}
|
||||
@@ -39,6 +39,7 @@
|
||||
"blocks": "Blocks",
|
||||
"blockchains": "Blockchains",
|
||||
"uptime": "Uptime",
|
||||
"statesync": "State Sync",
|
||||
"trade": "Trade",
|
||||
|
||||
"gravity": "Gravity(WIP)",
|
||||
|
||||
@@ -106,7 +106,7 @@
|
||||
</b-button>
|
||||
</template>
|
||||
|
||||
<b-dropdown-item
|
||||
<!-- <b-dropdown-item
|
||||
:to="{ name: 'portfolio' }"
|
||||
class="d-none"
|
||||
>
|
||||
@@ -115,7 +115,7 @@
|
||||
size="16"
|
||||
/>
|
||||
<span class="align-middle ml-50">Portofolio</span>
|
||||
</b-dropdown-item>
|
||||
</b-dropdown-item> -->
|
||||
|
||||
<b-dropdown-item :to="{ name: 'accounts' }">
|
||||
<feather-icon
|
||||
|
||||
+10
-2
@@ -156,8 +156,16 @@ export default class ChainFetch {
|
||||
})
|
||||
}
|
||||
|
||||
async getValidatorListByHeight(height) {
|
||||
return this.get(`/validatorsets/${height}`).then(data => commonProcess(data))
|
||||
async getValidatorListByStatus(status) {
|
||||
return this.get(`/cosmos/staking/v1beta1/validators?status=${status}&pagination.limit=500`).then(data => {
|
||||
const result = commonProcess(data)
|
||||
const vals = result.validators ? result.validators : result
|
||||
return vals.map(i => new Validator().init(i))
|
||||
})
|
||||
}
|
||||
|
||||
async getValidatorListByHeight(height, offset) {
|
||||
return this.get(`/cosmos/base/tendermint/v1beta1/validatorsets/${height}?pagination.limit=100&pagination.offset=${offset}`).then(data => commonProcess(data))
|
||||
}
|
||||
|
||||
async getStakingValidator(address) {
|
||||
|
||||
+9
-1
@@ -91,10 +91,18 @@ export default class OsmosAPI {
|
||||
|
||||
async get(url) {
|
||||
const chains = getLocalChains()
|
||||
this.host = chains.osmosis.api
|
||||
const conf = chains.osmosis
|
||||
const index = this.getApiIndex(conf)
|
||||
this.host = Array.isArray(conf.api) ? conf.api[index] : conf.api
|
||||
return fetch(`${this.host}${url}`).then(res => res.json())
|
||||
}
|
||||
|
||||
getApiIndex(config = null) {
|
||||
const conf = config || this.config
|
||||
const index = Number(localStorage.getItem(`${conf.chain_name}-api-index`) || 0)
|
||||
return index < conf.api.length ? index : 0
|
||||
}
|
||||
|
||||
async getMarketData(from, to, days = 14) {
|
||||
if (from && to) {
|
||||
this.exe_time = ''
|
||||
|
||||
@@ -28,6 +28,11 @@ const modules = [
|
||||
title: 'uptime',
|
||||
route: 'uptime',
|
||||
},
|
||||
{
|
||||
scope: 'normal',
|
||||
title: 'statesync',
|
||||
route: 'statesync',
|
||||
},
|
||||
{
|
||||
scope: 'cos-mos',
|
||||
title: 'gravity',
|
||||
|
||||
+14
-50
@@ -26,34 +26,6 @@ const router = new VueRouter({
|
||||
],
|
||||
},
|
||||
},
|
||||
{
|
||||
path: '/wallet/setting',
|
||||
name: 'setting',
|
||||
component: () => import('@/views/WalletSetting.vue'),
|
||||
meta: {
|
||||
pageTitle: 'Setting',
|
||||
breadcrumb: [
|
||||
{
|
||||
text: 'Setting',
|
||||
active: true,
|
||||
},
|
||||
],
|
||||
},
|
||||
},
|
||||
{
|
||||
path: '/wallet/portfolio',
|
||||
name: 'portfolio',
|
||||
component: () => import('@/views/WalletPortfolio.vue'),
|
||||
meta: {
|
||||
pageTitle: 'Portfolio',
|
||||
breadcrumb: [
|
||||
{
|
||||
text: 'Portfolio',
|
||||
active: true,
|
||||
},
|
||||
],
|
||||
},
|
||||
},
|
||||
{
|
||||
path: '/coffee',
|
||||
name: 'coffee',
|
||||
@@ -97,20 +69,6 @@ const router = new VueRouter({
|
||||
],
|
||||
},
|
||||
},
|
||||
{
|
||||
path: '/wallet/address',
|
||||
name: 'addresses',
|
||||
component: () => import('@/views/WalletAddressBook.vue'),
|
||||
meta: {
|
||||
pageTitle: 'Address Book',
|
||||
breadcrumb: [
|
||||
{
|
||||
text: 'Address Book',
|
||||
active: true,
|
||||
},
|
||||
],
|
||||
},
|
||||
},
|
||||
{
|
||||
path: '/wallet/delegations',
|
||||
name: 'delegations',
|
||||
@@ -159,6 +117,20 @@ const router = new VueRouter({
|
||||
],
|
||||
},
|
||||
},
|
||||
{
|
||||
path: '/:chain/statesync',
|
||||
name: 'statesync',
|
||||
component: () => import('@/views/StateSync.vue'),
|
||||
meta: {
|
||||
pageTitle: 'State Sync',
|
||||
breadcrumb: [
|
||||
{
|
||||
text: 'State Synchronization',
|
||||
active: true,
|
||||
},
|
||||
],
|
||||
},
|
||||
},
|
||||
{
|
||||
path: '/:chain/uptime',
|
||||
name: 'uptime',
|
||||
@@ -359,14 +331,6 @@ const router = new VueRouter({
|
||||
},
|
||||
},
|
||||
// common modules
|
||||
{
|
||||
path: '/user/login',
|
||||
name: 'login',
|
||||
component: () => import('@/views/Login.vue'),
|
||||
meta: {
|
||||
layout: 'full',
|
||||
},
|
||||
},
|
||||
{
|
||||
path: '/error/error-404',
|
||||
name: 'error-404',
|
||||
|
||||
+30
-28
@@ -40,7 +40,7 @@
|
||||
<b-col
|
||||
v-for="(data,index) in chains"
|
||||
:key="index"
|
||||
md="4"
|
||||
md="3"
|
||||
sm="6"
|
||||
>
|
||||
<router-link :to="data.chain_name">
|
||||
@@ -48,34 +48,36 @@
|
||||
v-if="data"
|
||||
class="earnings-card text-left"
|
||||
>
|
||||
<b-row>
|
||||
<b-col cols="8">
|
||||
<b-card-title class="mb-1 text-uppercase">
|
||||
{{ data.chain_name }} <small class="font-small-2">{{ data.sdk_version }}</small>
|
||||
</b-card-title>
|
||||
<div class="font-small-2">
|
||||
Height
|
||||
<div>
|
||||
<b-card-title class="mb-1 text-uppercase">
|
||||
{{ data.chain_name }} <small class="font-small-2">{{ data.sdk_version }}</small>
|
||||
</b-card-title>
|
||||
|
||||
<div class="d-flex justify-content-between">
|
||||
<div>
|
||||
<div class="font-small-2">
|
||||
Height
|
||||
</div>
|
||||
<h5 class="mb-1">
|
||||
{{ data.height || '0' }}
|
||||
</h5>
|
||||
</div>
|
||||
<h5 class="mb-1">
|
||||
{{ data.height || '0' }}
|
||||
</h5>
|
||||
<b-card-text class="text-muted font-small-2">
|
||||
<span> Updated on </span><span class="font-weight-bolder">{{ data.time || '...' }}</span>
|
||||
</b-card-text>
|
||||
</b-col>
|
||||
<b-col
|
||||
cols="4"
|
||||
>
|
||||
<b-avatar
|
||||
:src="data.logo"
|
||||
class="mt-1 badge-minimal"
|
||||
variant="light-primary"
|
||||
rounded
|
||||
size="82"
|
||||
badge
|
||||
:badge-variant="data.variant"
|
||||
/></b-col>
|
||||
</b-row>
|
||||
<div>
|
||||
<b-avatar
|
||||
:src="data.logo"
|
||||
class="badge-minimal"
|
||||
variant="light-primary"
|
||||
rounded
|
||||
size="md"
|
||||
badge
|
||||
:badge-variant="data.variant"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<b-card-text class="text-muted font-small-2">
|
||||
<span> Updated on </span><span class="font-weight-bolder">{{ data.time || '...' }}</span>
|
||||
</b-card-text>
|
||||
</div>
|
||||
</b-card>
|
||||
</router-link>
|
||||
</b-col>
|
||||
|
||||
@@ -219,7 +219,6 @@ import {
|
||||
extractAccountNumberAndSequence,
|
||||
formatToken, formatTokenDenom, getLocalAccounts, getLocalChains, getUnitAmount, setLocalTxHistory, sign, timeIn,
|
||||
} from '@/libs/utils'
|
||||
import { Cosmos } from '@cosmostation/cosmosjs'
|
||||
import ToastificationContent from '@core/components/toastification/ToastificationContent.vue'
|
||||
import WalletInputVue from './components/WalletInput.vue'
|
||||
|
||||
@@ -371,10 +370,7 @@ export default {
|
||||
format(v) {
|
||||
return formatToken(v, this.IBCDenom)
|
||||
},
|
||||
async sendCosmos() {
|
||||
const cosmos = new Cosmos(this.selectedChain.api, this.chainId)
|
||||
cosmos.getAccounts()
|
||||
},
|
||||
|
||||
async send() {
|
||||
const txMsgs = [
|
||||
{
|
||||
|
||||
+98
-63
@@ -93,22 +93,24 @@
|
||||
no-body
|
||||
>
|
||||
<b-card-header class="d-flex justify-content-between">
|
||||
<small class="d-none d-md-block">
|
||||
<b-badge variant="danger">
|
||||
|
||||
</b-badge>
|
||||
Top 33%
|
||||
<b-badge variant="warning">
|
||||
|
||||
</b-badge>
|
||||
Top 67% of Voting Power
|
||||
</small>
|
||||
<b-card-title>
|
||||
<b-form-group class="mb-0">
|
||||
<b-form-radio-group
|
||||
id="btn-radios-1"
|
||||
v-model="selectedStatus"
|
||||
button-variant="outline-primary"
|
||||
:options="statusOptions"
|
||||
buttons
|
||||
name="radios-btn-default"
|
||||
@change="getValidatorListByStatus"
|
||||
/>
|
||||
</b-form-group>
|
||||
<b-card-title class="d-none d-sm-block">
|
||||
<span>Validators {{ validators.length }}/{{ stakingParameters.max_validators }} </span>
|
||||
</b-card-title>
|
||||
</b-card-header>
|
||||
<b-card-body class="pl-0 pr-0">
|
||||
<b-card-body class="pl-0 pr-0 pb-0">
|
||||
<b-table
|
||||
class="mb-0"
|
||||
:items="list"
|
||||
:fields="validator_fields"
|
||||
:sort-desc="true"
|
||||
@@ -195,6 +197,18 @@
|
||||
</template>
|
||||
</b-table>
|
||||
</b-card-body>
|
||||
<template #footer>
|
||||
<small class="d-none d-md-block">
|
||||
<b-badge variant="danger">
|
||||
|
||||
</b-badge>
|
||||
Top 33%
|
||||
<b-badge variant="warning">
|
||||
|
||||
</b-badge>
|
||||
Top 67% of Voting Power
|
||||
</small>
|
||||
</template>
|
||||
</b-card>
|
||||
<operation-delegate-component :validator-address="validator_address" />
|
||||
</div>
|
||||
@@ -202,10 +216,10 @@
|
||||
|
||||
<script>
|
||||
import {
|
||||
BTable, BMedia, BAvatar, BBadge, BCard, BCardHeader, BCardTitle, VBTooltip, BCardBody, BButton,
|
||||
BTable, BMedia, BAvatar, BBadge, BCard, BCardHeader, BCardTitle, VBTooltip, BCardBody, BButton, BFormRadioGroup, BFormGroup,
|
||||
} from 'bootstrap-vue'
|
||||
import {
|
||||
Validator, percent, StakingParameters, formatToken,
|
||||
percent, StakingParameters, formatToken,
|
||||
} from '@/libs/utils'
|
||||
import { keybase } from '@/libs/fetch'
|
||||
// import { toHex } from '@cosmjs/encoding'
|
||||
@@ -224,6 +238,8 @@ export default {
|
||||
BCardBody,
|
||||
BButton,
|
||||
OperationDelegateComponent,
|
||||
BFormRadioGroup,
|
||||
BFormGroup,
|
||||
},
|
||||
directives: {
|
||||
'b-tooltip': VBTooltip,
|
||||
@@ -252,8 +268,8 @@ export default {
|
||||
mintInflation: 0,
|
||||
stakingPool: 1,
|
||||
stakingParameters: new StakingParameters(),
|
||||
validators: [new Validator()],
|
||||
delegations: [new Validator()],
|
||||
validators: [],
|
||||
delegations: [],
|
||||
changes: {},
|
||||
validator_fields: [
|
||||
{
|
||||
@@ -288,6 +304,11 @@ export default {
|
||||
thClass: 'text-right',
|
||||
},
|
||||
],
|
||||
statusOptions: [
|
||||
{ text: 'Active', value: ['BOND_STATUS_BONDED'] },
|
||||
{ text: 'Inactive', value: ['BOND_STATUS_UNBONDED', 'BOND_STATUS_UNBONDING'] },
|
||||
],
|
||||
selectedStatus: ['BOND_STATUS_BONDED'],
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
@@ -297,7 +318,7 @@ export default {
|
||||
list() {
|
||||
return this.validators.map(x => {
|
||||
const xh = x
|
||||
const change = this.changes[x.consensus_pubkey.value]
|
||||
const change = this.changes[x.consensus_pubkey.key]
|
||||
if (change) {
|
||||
xh.changes = change.latest - change.previous
|
||||
}
|
||||
@@ -306,61 +327,75 @@ export default {
|
||||
},
|
||||
},
|
||||
created() {
|
||||
this.$http.getValidatorListByHeight('latest').then(data => {
|
||||
let height = Number(data.block_height)
|
||||
if (height > 14400) {
|
||||
height -= 14400
|
||||
} else {
|
||||
height = 1
|
||||
}
|
||||
const changes = []
|
||||
data.validators.forEach(x => {
|
||||
changes[x.pub_key.value] = { latest: Number(x.voting_power), previous: 0 }
|
||||
})
|
||||
this.$http.getValidatorListByHeight(height).then(previous => {
|
||||
previous.validators.forEach(x => {
|
||||
if (changes[x.pub_key.value]) {
|
||||
changes[x.pub_key.value].previous = Number(x.voting_power)
|
||||
} else {
|
||||
changes[x.pub_key.value] = { latest: 0, previous: Number(x.voting_power) }
|
||||
}
|
||||
})
|
||||
this.$set(this, 'changes', changes)
|
||||
})
|
||||
this.$http.getStakingPool().then(pool => {
|
||||
this.stakingPool = pool.bondedToken
|
||||
})
|
||||
this.getValidatorListByHeight()
|
||||
this.$http.getStakingParameters().then(res => {
|
||||
this.stakingParameters = res
|
||||
})
|
||||
this.$http.getValidatorList().then(res => {
|
||||
const identities = []
|
||||
const temp = res
|
||||
let total = 0
|
||||
for (let i = 0; i < temp.length; i += 1) {
|
||||
total += temp[i].tokens
|
||||
const { identity } = temp[i].description
|
||||
const url = this.$store.getters['chains/getAvatarById'](identity)
|
||||
if (url) {
|
||||
temp[i].avatar = url
|
||||
} else if (identity && identity !== '') {
|
||||
identities.push(identity)
|
||||
}
|
||||
}
|
||||
this.stakingPool = total
|
||||
this.validators = temp
|
||||
|
||||
// fetch avatar from keybase
|
||||
let promise = Promise.resolve()
|
||||
identities.forEach(item => {
|
||||
promise = promise.then(() => new Promise(resolve => {
|
||||
this.avatar(item, resolve)
|
||||
}))
|
||||
})
|
||||
})
|
||||
this.getValidatorListByStatus(this.selectedStatus)
|
||||
},
|
||||
beforeDestroy() {
|
||||
this.islive = false
|
||||
},
|
||||
methods: {
|
||||
getValidatorListByHeight(offset = 0) {
|
||||
this.$http.getValidatorListByHeight('latest', offset).then(data => {
|
||||
let height = Number(data.block_height)
|
||||
if (height > 14400) {
|
||||
height -= 14400
|
||||
} else {
|
||||
height = 1
|
||||
}
|
||||
const { changes } = this
|
||||
data.validators.forEach(x => {
|
||||
changes[x.pub_key.key] = { latest: Number(x.voting_power), previous: 0 }
|
||||
})
|
||||
this.$http.getValidatorListByHeight(height, offset).then(previous => {
|
||||
previous.validators.forEach(x => {
|
||||
if (changes[x.pub_key.key]) {
|
||||
changes[x.pub_key.key].previous = Number(x.voting_power)
|
||||
} else {
|
||||
changes[x.pub_key.key] = { latest: 0, previous: Number(x.voting_power) }
|
||||
}
|
||||
})
|
||||
this.$set(this, 'changes', changes)
|
||||
})
|
||||
})
|
||||
},
|
||||
getValidatorListByStatus(statusList) {
|
||||
this.validators = []
|
||||
statusList.forEach(status => {
|
||||
this.$http.getValidatorListByStatus(status).then(res => {
|
||||
const identities = []
|
||||
const temp = res
|
||||
let total = 0
|
||||
for (let i = 0; i < temp.length; i += 1) {
|
||||
total += temp[i].tokens
|
||||
const { identity } = temp[i].description
|
||||
const url = this.$store.getters['chains/getAvatarById'](identity)
|
||||
if (url) {
|
||||
temp[i].avatar = url
|
||||
} else if (identity && identity !== '') {
|
||||
identities.push(identity)
|
||||
}
|
||||
}
|
||||
if (total > 100) {
|
||||
this.getValidatorListByHeight(100)
|
||||
}
|
||||
this.validators.push(...temp)
|
||||
|
||||
// fetch avatar from keybase
|
||||
let promise = Promise.resolve()
|
||||
identities.forEach(item => {
|
||||
promise = promise.then(() => new Promise(resolve => {
|
||||
this.avatar(item, resolve)
|
||||
}))
|
||||
})
|
||||
})
|
||||
})
|
||||
},
|
||||
selectValidator(da) {
|
||||
this.validator_address = da
|
||||
},
|
||||
|
||||
@@ -0,0 +1,169 @@
|
||||
<template>
|
||||
<div class="container-md">
|
||||
<b-card>
|
||||
<b-card-title>
|
||||
Starting New Node From State Sync <b-badge variant="danger">
|
||||
WIP
|
||||
</b-badge>
|
||||
</b-card-title>
|
||||
<b class="mt-1">1. What's State Sync? </b><br>
|
||||
The Tendermint Core 0.34 release includes support for state sync, which allows a new node to join a network by fetching a snapshot of the application state at a recent height instead of fetching and replaying all historical blocks. This can reduce the time needed to sync with the network from days to minutes.
|
||||
Click <a href="https://blog.cosmos.network/cosmos-sdk-state-sync-guide-99e4cf43be2f">here</a> for more infomation.
|
||||
<br><br>
|
||||
<b class="mt-1">2. How to use it? </b><br>
|
||||
We can configure Tendermint to use state sync in <code>$DAEMON_HOME/config/config.toml</code>, then start your daemon.
|
||||
<ul class="mt-1">
|
||||
<li
|
||||
v-for="e in error"
|
||||
:key="e"
|
||||
class="text-danger"
|
||||
>
|
||||
{{ e }}
|
||||
</li>
|
||||
</ul>
|
||||
<b-form-textarea
|
||||
id="textarea-state"
|
||||
v-model="state"
|
||||
:state="valid"
|
||||
readonly
|
||||
placeholder="Loading..."
|
||||
rows="7"
|
||||
class="mt-1"
|
||||
@change="check()"
|
||||
/>
|
||||
</b-card>
|
||||
|
||||
<b-card>
|
||||
<b-card-title>
|
||||
Enable Snapshot For State Sync
|
||||
</b-card-title>
|
||||
To make state sync works, We need at least 2 available RPC servers which enabled snapshot. You can configure in <code>$DAEMON_HOME/config/app.toml</code>,
|
||||
and don't forget to share your snapshot server <a href="https://github.com/ping-pub/explorer/discussions">Here</a>
|
||||
<b-form-textarea
|
||||
id="snapshot"
|
||||
v-model="snapshot"
|
||||
readonly
|
||||
rows="8"
|
||||
class="mt-1"
|
||||
/>
|
||||
</b-card>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {
|
||||
BCard, BCardTitle, BFormTextarea, BBadge,
|
||||
} from 'bootstrap-vue'
|
||||
|
||||
export default {
|
||||
components: {
|
||||
BBadge,
|
||||
BCard,
|
||||
BCardTitle,
|
||||
BFormTextarea,
|
||||
},
|
||||
data() {
|
||||
const { rpc } = this.$store.state.chains.selected
|
||||
let servers = ''
|
||||
if (rpc && Array.isArray(rpc)) {
|
||||
servers = rpc.join(',')
|
||||
}
|
||||
return {
|
||||
servers,
|
||||
height: 0,
|
||||
hash: '',
|
||||
error: [],
|
||||
state: '',
|
||||
valid: false,
|
||||
snapshot: `[state-sync]
|
||||
|
||||
# snapshot-interval specifies the block interval at which local state sync snapshots are
|
||||
# taken (0 to disable). Must be a multiple of pruning-keep-every.
|
||||
snapshot-interval = 1000
|
||||
|
||||
# snapshot-keep-recent specifies the number of recent snapshots to keep and serve (0 to keep all). each snapshot is around 500MiB
|
||||
snapshot-keep-recent = 2`,
|
||||
}
|
||||
},
|
||||
// computed: {
|
||||
// state: {
|
||||
// get() {
|
||||
// let servers = ''
|
||||
// const { rpc } = this.$store.state.chains.selected
|
||||
// if (rpc && Array.isArray(rpc)) {
|
||||
// servers = rpc.join(',')
|
||||
// }
|
||||
// return `[statesync]
|
||||
// enable = true
|
||||
// rpc_servers = "${servers}"
|
||||
// trust_height = ${this.height}
|
||||
// trust_hash = "${this.hash}"
|
||||
// trust_period = "168h" # 2/3 of unbonding time`
|
||||
// },
|
||||
// set(text) {
|
||||
// console.log(text)
|
||||
// // this.state = text
|
||||
// },
|
||||
// },
|
||||
// },
|
||||
created() {
|
||||
const interval = 1000
|
||||
this.$http.getLatestBlock().then(l => {
|
||||
const { height } = l.block.header
|
||||
if (height > interval) {
|
||||
this.$http.getBlockByHeight(Math.trunc(height / interval) * interval).then(x => {
|
||||
this.hash = x.block_id.hash
|
||||
this.height = x.block.header.height
|
||||
this.state = `[statesync]
|
||||
enable = true
|
||||
rpc_servers = "${this.servers}"
|
||||
trust_height = ${this.height}
|
||||
trust_hash = "${this.hash}"
|
||||
trust_period = "168h" # 2/3 of unbonding time`
|
||||
this.check()
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
methods: {
|
||||
check() {
|
||||
this.valid = true
|
||||
this.error = []
|
||||
this.state.split('\n').forEach(element => {
|
||||
const v = this.kv(element)
|
||||
if (v[0] === 'trust_height' && Number(v[1]) < 1) {
|
||||
this.valid = false
|
||||
this.error.push('Trust Height should be set.')
|
||||
}
|
||||
if (v[0] === 'trust_hash' && v[1].length < 10) {
|
||||
this.valid = false
|
||||
this.error.push('Trust Hash is invalid.')
|
||||
}
|
||||
if (v[0] === 'rpc_servers') {
|
||||
if (v[1].indexOf(',') > 1) {
|
||||
v[1].replace(/"/g, '').split(',').forEach(host => {
|
||||
const re = /^(.)+:\d+$/g
|
||||
if (!re.test(host)) {
|
||||
this.valid = false
|
||||
this.error.push(`"${host}" is not a valid host. Make sure that the port is added.`)
|
||||
}
|
||||
})
|
||||
// valid = true
|
||||
} else {
|
||||
this.valid = false
|
||||
this.error.push('No RPC serser is configured.')
|
||||
}
|
||||
}
|
||||
})
|
||||
return this.valid
|
||||
},
|
||||
kv(line) {
|
||||
if (line && line.indexOf('=') > 0) {
|
||||
const s = line.split('=')
|
||||
return [s[0].trim(), s[1].trim()]
|
||||
}
|
||||
return []
|
||||
},
|
||||
},
|
||||
}
|
||||
</script>
|
||||
+42
-11
@@ -19,10 +19,20 @@
|
||||
>
|
||||
Browse favorite only
|
||||
</b-button>
|
||||
<b-form-input
|
||||
v-model="query"
|
||||
placeholder="Keywords to filter validators"
|
||||
/>
|
||||
<b-input-group>
|
||||
<b-input-group-prepend is-text>
|
||||
<b-form-checkbox
|
||||
v-model="missedFilter"
|
||||
v-b-tooltip.hover
|
||||
title="Only missed blocks"
|
||||
name="viewMissed"
|
||||
/>
|
||||
</b-input-group-prepend>
|
||||
<b-form-input
|
||||
v-model="query"
|
||||
placeholder="Keywords to filter validators"
|
||||
/>
|
||||
</b-input-group>
|
||||
</b-card>
|
||||
<b-row>
|
||||
<b-col
|
||||
@@ -41,12 +51,25 @@
|
||||
><span class="d-inline-block text-truncate font-weight-bold align-bottom">{{ index+1 }} {{ x.validator.moniker }}</span>
|
||||
</b-form-checkbox>
|
||||
<span
|
||||
v-if="missing[x.address] && missing[x.address].missed_blocks_counter > 0"
|
||||
v-b-tooltip.hover.v-danger
|
||||
:title="`missed blocks:${missing[x.address].missed_blocks_counter}`"
|
||||
class="text-danger text-bolder"
|
||||
v-if="missing[x.address]"
|
||||
>
|
||||
{{ missing[x.address].missed_blocks_counter }}
|
||||
<b-badge
|
||||
v-if="missing[x.address].missed_blocks_counter > 0"
|
||||
v-b-tooltip.hover.v-danger
|
||||
variant="light-danger"
|
||||
:title="`${missing[x.address].missed_blocks_counter} missed blocks`"
|
||||
class="text-danger text-bolder"
|
||||
>
|
||||
{{ missing[x.address].missed_blocks_counter }}
|
||||
</b-badge>
|
||||
<b-badge
|
||||
v-else
|
||||
v-b-tooltip.hover.v-success
|
||||
variant="light-success"
|
||||
title="Perfect! No missed blocks"
|
||||
>
|
||||
0
|
||||
</b-badge>
|
||||
</span>
|
||||
</div>
|
||||
<div class="d-flex justify-content-between align-self-stretch flex-wrap">
|
||||
@@ -72,7 +95,7 @@
|
||||
|
||||
<script>
|
||||
import {
|
||||
BRow, BCol, VBTooltip, BFormInput, BCard, BAlert, BFormCheckbox, BButton,
|
||||
BRow, BCol, VBTooltip, BFormInput, BCard, BAlert, BFormCheckbox, BButton, BBadge, BInputGroup, BInputGroupPrepend,
|
||||
} from 'bootstrap-vue'
|
||||
|
||||
import {
|
||||
@@ -88,7 +111,10 @@ export default {
|
||||
BCard,
|
||||
BAlert,
|
||||
BButton,
|
||||
BBadge,
|
||||
BFormCheckbox,
|
||||
BInputGroup,
|
||||
BInputGroupPrepend,
|
||||
},
|
||||
directives: {
|
||||
'b-tooltip': VBTooltip,
|
||||
@@ -97,6 +123,7 @@ export default {
|
||||
const { chain } = this.$route.params
|
||||
const pinned = localStorage.getItem('pinned') ? localStorage.getItem('pinned').split(',') : ''
|
||||
return {
|
||||
missedFilter: false,
|
||||
pinned,
|
||||
chain,
|
||||
query: '',
|
||||
@@ -111,10 +138,14 @@ export default {
|
||||
uptime() {
|
||||
const vals = this.query ? this.validators.filter(x => String(x.description.moniker).indexOf(this.query) > -1) : this.validators
|
||||
vals.sort((a, b) => b.delegator_shares - a.delegator_shares)
|
||||
return vals.map(x => ({
|
||||
const rets = vals.map(x => ({
|
||||
validator: x.description,
|
||||
address: consensusPubkeyToHexAddress(x.consensus_pubkey),
|
||||
}))
|
||||
if (this.missedFilter) {
|
||||
return rets.filter(x => this.missing[x.address].missed_blocks_counter > 0)
|
||||
}
|
||||
return rets
|
||||
},
|
||||
},
|
||||
created() {
|
||||
|
||||
@@ -33,12 +33,25 @@
|
||||
<span class="d-inline-block text-truncate font-weight-bold align-bottom"> {{ x.validator.moniker }} </span>
|
||||
</b-form-checkbox>
|
||||
<span
|
||||
v-if="missing[x.address] && missing[x.address].missed_blocks_counter > 0"
|
||||
v-b-tooltip.hover.v-danger
|
||||
:title="`missed blocks:${missing[x.address].missed_blocks_counter}`"
|
||||
class="text-danger text-bolder"
|
||||
v-if="missing[x.address]"
|
||||
>
|
||||
{{ missing[x.address].missed_blocks_counter }}
|
||||
<b-badge
|
||||
v-if="missing[x.address].missed_blocks_counter > 0"
|
||||
v-b-tooltip.hover.v-danger
|
||||
variant="light-danger"
|
||||
:title="`${missing[x.address].missed_blocks_counter} missed blocks`"
|
||||
class="text-danger text-bolder"
|
||||
>
|
||||
{{ missing[x.address].missed_blocks_counter }}
|
||||
</b-badge>
|
||||
<b-badge
|
||||
v-else
|
||||
v-b-tooltip.hover.v-success
|
||||
variant="light-success"
|
||||
title="Perfect! No missed blocks"
|
||||
>
|
||||
0
|
||||
</b-badge>
|
||||
</span>
|
||||
</div>
|
||||
<div class="d-flex justify-content-between align-self-stretch flex-wrap">
|
||||
@@ -64,7 +77,7 @@
|
||||
|
||||
<script>
|
||||
import {
|
||||
BRow, BCol, VBTooltip, BCard, BAlert, BCardTitle, BFormCheckbox,
|
||||
BRow, BCol, VBTooltip, BCard, BAlert, BCardTitle, BFormCheckbox, BBadge,
|
||||
} from 'bootstrap-vue'
|
||||
|
||||
import {
|
||||
@@ -75,6 +88,7 @@ import { Bech32, toHex } from '@cosmjs/encoding'
|
||||
export default {
|
||||
name: 'Blocks',
|
||||
components: {
|
||||
BBadge,
|
||||
BRow,
|
||||
BCol,
|
||||
BCard,
|
||||
|
||||
@@ -24,8 +24,8 @@
|
||||
Note
|
||||
</div>
|
||||
<div class="alert-body">
|
||||
There are two ways to monitor your valdiators:
|
||||
<li> Pin a validator on Uptime page.</li>
|
||||
There are two ways to monitor your validators:
|
||||
<li> Pin a validator on Uptime pages.</li>
|
||||
<li> Specify parameters like following: <pre>https://ping.pub/cosmos/uptime/my?validators={"sifchain":["FBADE9A30473BB9ED6DFA16BFB3838E028F33650"],"chain_name":["hexAddress"]}</pre></li>
|
||||
</div>
|
||||
</b-alert>
|
||||
|
||||
@@ -73,22 +73,19 @@ export default {
|
||||
return {
|
||||
title: {
|
||||
text: '',
|
||||
left: '5%',
|
||||
top: '3%',
|
||||
},
|
||||
legend: {
|
||||
right: '10%',
|
||||
top: '3%',
|
||||
scroll: 'scroll',
|
||||
data: assets,
|
||||
textStyle: {
|
||||
color: '#aaa',
|
||||
},
|
||||
top: 'top',
|
||||
},
|
||||
grid: { top: `${assets.length > 30 ? 30 : assets.length + 20}%` }, // */
|
||||
xAxis: {
|
||||
name: 'Qty',
|
||||
nameLocation: 'center',
|
||||
splitLine: {
|
||||
lineStyle: {
|
||||
type: 'dashed',
|
||||
},
|
||||
},
|
||||
axisLabel: {
|
||||
show: false,
|
||||
formatter(param) {
|
||||
@@ -105,41 +102,9 @@ export default {
|
||||
return formatNumber(param, true, 0)
|
||||
},
|
||||
},
|
||||
splitLine: {
|
||||
lineStyle: {
|
||||
type: 'dashed',
|
||||
},
|
||||
},
|
||||
scale: true,
|
||||
},
|
||||
series,
|
||||
// series: [
|
||||
// {
|
||||
// name: '',
|
||||
// data: this.items.filter(x => x[1] > 0),
|
||||
// type: 'scatter',
|
||||
// symbolSize(data) {
|
||||
// const r = Math.log10(data[2])
|
||||
// return r * 5
|
||||
// },
|
||||
// emphasis: {
|
||||
// focus: 'series',
|
||||
// label: {
|
||||
// show: true,
|
||||
// formatter(param) {
|
||||
// return `${param.data[3]}, ${formatNumber(param.data[2], true, 0)}`
|
||||
// },
|
||||
// position: 'top',
|
||||
// },
|
||||
// },
|
||||
// itemStyle: {
|
||||
// shadowBlur: 10,
|
||||
// shadowColor: 'rgba(120, 36, 50, 0.5)',
|
||||
// shadowOffsetY: 5,
|
||||
// color: '#28c76f',
|
||||
// },
|
||||
// },
|
||||
// ],
|
||||
}
|
||||
},
|
||||
},
|
||||
@@ -148,7 +113,7 @@ export default {
|
||||
|
||||
<style scoped>
|
||||
.chart {
|
||||
height: 300px;
|
||||
min-height: 300px;
|
||||
width: 100%;
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -1,4 +1,8 @@
|
||||
const path = require('path')
|
||||
const { BundleAnalyzerPlugin } = require('webpack-bundle-analyzer')
|
||||
const CompressionWebpackPlugin = require('compression-webpack-plugin')
|
||||
|
||||
const productionGzipExtensions = ['js', 'css']
|
||||
|
||||
module.exports = {
|
||||
publicPath: '/',
|
||||
@@ -21,6 +25,17 @@ module.exports = {
|
||||
'@axios': path.resolve(__dirname, 'src/libs/axios'),
|
||||
},
|
||||
},
|
||||
plugins: [
|
||||
new BundleAnalyzerPlugin({
|
||||
analyzerMode: 'static',
|
||||
openAnalyzer: false,
|
||||
}),
|
||||
new CompressionWebpackPlugin({
|
||||
test: new RegExp(`\\.(${productionGzipExtensions.join('|')})$`),
|
||||
threshold: 8192,
|
||||
minRatio: 0.8,
|
||||
}),
|
||||
],
|
||||
},
|
||||
chainWebpack: config => {
|
||||
config.module
|
||||
|
||||
@@ -1068,22 +1068,10 @@
|
||||
resolved "https://registry.npmjs.org/@cosmjs/utils/-/utils-0.26.5.tgz"
|
||||
integrity sha512-VB4Z7lEIXA36q0RON15KexzEosToUtdDyMv7UXSBHSl4mLG/fIZgBIpBEYsaPZ1kh43xyINeKQJiGCp2z5rI+g==
|
||||
|
||||
"@cosmostation/cosmosjs@^0.10.6":
|
||||
version "0.10.8"
|
||||
resolved "https://registry.npmjs.org/@cosmostation/cosmosjs/-/cosmosjs-0.10.8.tgz"
|
||||
integrity sha512-cR8ns+vlyB3i2mvNe5Ur3BHb/zuO3bPDmM4TfgOHSTJT5NtYbBXYiCcgeYto5tPJxKALmjwXXVwTZUy0C/u/aA==
|
||||
dependencies:
|
||||
ansi-regex "^5.0.1"
|
||||
bech32 "^1.1.3"
|
||||
bip32 "^2.0.5"
|
||||
bip39 "^2.5.0"
|
||||
bitcoinjs-lib "^4.0.2"
|
||||
google-protobuf "^3.14.0"
|
||||
lodash "^4.17.21"
|
||||
node-fetch "^2.6.1"
|
||||
protobufjs "^6.10.2"
|
||||
request "^2.88.2"
|
||||
secp256k1 "^3.8.0"
|
||||
"@gar/promisify@^1.0.1":
|
||||
version "1.1.3"
|
||||
resolved "https://registry.npmmirror.com/@gar/promisify/-/promisify-1.1.3.tgz#555193ab2e3bb3b6adc3d551c9c030d9e860daf6"
|
||||
integrity sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==
|
||||
|
||||
"@hapi/address@2.x.x":
|
||||
version "2.1.4"
|
||||
@@ -1311,6 +1299,22 @@
|
||||
resolved "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz"
|
||||
integrity sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==
|
||||
|
||||
"@npmcli/fs@^1.0.0":
|
||||
version "1.1.1"
|
||||
resolved "https://registry.npmmirror.com/@npmcli/fs/-/fs-1.1.1.tgz#72f719fe935e687c56a4faecf3c03d06ba593257"
|
||||
integrity sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ==
|
||||
dependencies:
|
||||
"@gar/promisify" "^1.0.1"
|
||||
semver "^7.3.5"
|
||||
|
||||
"@npmcli/move-file@^1.0.1":
|
||||
version "1.1.2"
|
||||
resolved "https://registry.npmmirror.com/@npmcli/move-file/-/move-file-1.1.2.tgz#1a82c3e372f7cae9253eb66d72543d6b8685c674"
|
||||
integrity sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg==
|
||||
dependencies:
|
||||
mkdirp "^1.0.4"
|
||||
rimraf "^3.0.2"
|
||||
|
||||
"@nuxt/opencollective@^0.3.2":
|
||||
version "0.3.2"
|
||||
resolved "https://registry.npmjs.org/@nuxt/opencollective/-/opencollective-0.3.2.tgz"
|
||||
@@ -1320,6 +1324,11 @@
|
||||
consola "^2.15.0"
|
||||
node-fetch "^2.6.1"
|
||||
|
||||
"@polka/url@^1.0.0-next.20":
|
||||
version "1.0.0-next.21"
|
||||
resolved "https://registry.yarnpkg.com/@polka/url/-/url-1.0.0-next.21.tgz#5de5a2385a35309427f6011992b544514d559aa1"
|
||||
integrity sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==
|
||||
|
||||
"@protobufjs/aspromise@^1.1.1", "@protobufjs/aspromise@^1.1.2":
|
||||
version "1.1.2"
|
||||
resolved "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz"
|
||||
@@ -1475,11 +1484,6 @@
|
||||
resolved "https://registry.npmjs.org/@types/node/-/node-16.3.3.tgz"
|
||||
integrity sha512-8h7k1YgQKxKXWckzFCMfsIwn0Y61UK6tlD6y2lOb3hTOIMlK3t9/QwHOhc81TwU+RMf0As5fj7NPjroERCnejQ==
|
||||
|
||||
"@types/node@10.12.18":
|
||||
version "10.12.18"
|
||||
resolved "https://registry.npmjs.org/@types/node/-/node-10.12.18.tgz"
|
||||
integrity sha512-fh+pAqt4xRzPfqA6eh3Z2y6fyZavRIumvjhaCL753+TVkGKGhpPeyrJG2JftD0T9q4GF00KjefsQ+PQNDdWQaQ==
|
||||
|
||||
"@types/node@11.11.6":
|
||||
version "11.11.6"
|
||||
resolved "https://registry.npmjs.org/@types/node/-/node-11.11.6.tgz"
|
||||
@@ -2060,6 +2064,11 @@ acorn-walk@^7.1.1:
|
||||
resolved "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz"
|
||||
integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==
|
||||
|
||||
acorn-walk@^8.0.0:
|
||||
version "8.2.0"
|
||||
resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.2.0.tgz#741210f2e2426454508853a2f44d0ab83b7f69c1"
|
||||
integrity sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==
|
||||
|
||||
acorn@^3.0.4:
|
||||
version "3.3.0"
|
||||
resolved "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz"
|
||||
@@ -2080,11 +2089,24 @@ acorn@^7.1.1, acorn@^7.4.0:
|
||||
resolved "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz"
|
||||
integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==
|
||||
|
||||
acorn@^8.0.4:
|
||||
version "8.7.0"
|
||||
resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.7.0.tgz#90951fde0f8f09df93549481e5fc141445b791cf"
|
||||
integrity sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ==
|
||||
|
||||
address@^1.1.2:
|
||||
version "1.1.2"
|
||||
resolved "https://registry.npmjs.org/address/-/address-1.1.2.tgz"
|
||||
integrity sha512-aT6camzM4xEA54YVJYSqxz1kv4IHnQZRtThJJHhUMRExaU5spC7jX5ugSwTaTgJliIgs4VhZOk7htClvQ/LmRA==
|
||||
|
||||
aggregate-error@^3.0.0:
|
||||
version "3.1.0"
|
||||
resolved "https://registry.npmmirror.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a"
|
||||
integrity sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==
|
||||
dependencies:
|
||||
clean-stack "^2.0.0"
|
||||
indent-string "^4.0.0"
|
||||
|
||||
ajv-errors@^1.0.0:
|
||||
version "1.0.1"
|
||||
resolved "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz"
|
||||
@@ -2152,11 +2174,6 @@ ansi-regex@^5.0.0:
|
||||
resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz"
|
||||
integrity sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==
|
||||
|
||||
ansi-regex@^5.0.1:
|
||||
version "5.0.1"
|
||||
resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz"
|
||||
integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==
|
||||
|
||||
ansi-styles@^3.2.0, ansi-styles@^3.2.1:
|
||||
version "3.2.1"
|
||||
resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz"
|
||||
@@ -2468,13 +2485,6 @@ balanced-match@^1.0.0:
|
||||
resolved "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz"
|
||||
integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==
|
||||
|
||||
base-x@^3.0.2:
|
||||
version "3.0.8"
|
||||
resolved "https://registry.npmjs.org/base-x/-/base-x-3.0.8.tgz"
|
||||
integrity sha512-Rl/1AWP4J/zRrk54hhlxH4drNxPJXYUaKffODVI53/dAsV4t9fBxyxYKAVPU1XBHxYwOWP9h9H0hM2MVw4YfJA==
|
||||
dependencies:
|
||||
safe-buffer "^5.0.1"
|
||||
|
||||
base64-js@^1.0.2, base64-js@^1.3.0:
|
||||
version "1.5.1"
|
||||
resolved "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz"
|
||||
@@ -2505,7 +2515,7 @@ bcrypt-pbkdf@^1.0.0:
|
||||
dependencies:
|
||||
tweetnacl "^0.14.3"
|
||||
|
||||
bech32@^1.1.2, bech32@^1.1.3, bech32@^1.1.4:
|
||||
bech32@^1.1.4:
|
||||
version "1.1.4"
|
||||
resolved "https://registry.npmjs.org/bech32/-/bech32-1.1.4.tgz"
|
||||
integrity sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ==
|
||||
@@ -2540,7 +2550,7 @@ binary-extensions@^2.0.0:
|
||||
resolved "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz"
|
||||
integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==
|
||||
|
||||
bindings@^1.3.0, bindings@^1.5.0:
|
||||
bindings@^1.5.0:
|
||||
version "1.5.0"
|
||||
resolved "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz"
|
||||
integrity sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==
|
||||
@@ -2552,42 +2562,6 @@ bip32-path@^0.4.2:
|
||||
resolved "https://registry.npmjs.org/bip32-path/-/bip32-path-0.4.2.tgz"
|
||||
integrity sha1-XbBBataCJxLwd4NuJVe4aXwMfJk=
|
||||
|
||||
bip32@^1.0.4:
|
||||
version "1.0.4"
|
||||
resolved "https://registry.npmjs.org/bip32/-/bip32-1.0.4.tgz"
|
||||
integrity sha512-8T21eLWylZETolyqCPgia+MNp+kY37zFr7PTFDTPObHeNi9JlfG4qGIh8WzerIJidtwoK+NsWq2I5i66YfHoIw==
|
||||
dependencies:
|
||||
bs58check "^2.1.1"
|
||||
create-hash "^1.2.0"
|
||||
create-hmac "^1.1.7"
|
||||
tiny-secp256k1 "^1.0.0"
|
||||
typeforce "^1.11.5"
|
||||
wif "^2.0.6"
|
||||
|
||||
bip32@^2.0.5:
|
||||
version "2.0.6"
|
||||
resolved "https://registry.npmjs.org/bip32/-/bip32-2.0.6.tgz"
|
||||
integrity sha512-HpV5OMLLGTjSVblmrtYRfFFKuQB+GArM0+XP8HGWfJ5vxYBqo+DesvJwOdC2WJ3bCkZShGf0QIfoIpeomVzVdA==
|
||||
dependencies:
|
||||
"@types/node" "10.12.18"
|
||||
bs58check "^2.1.1"
|
||||
create-hash "^1.2.0"
|
||||
create-hmac "^1.1.7"
|
||||
tiny-secp256k1 "^1.1.3"
|
||||
typeforce "^1.11.5"
|
||||
wif "^2.0.6"
|
||||
|
||||
bip39@^2.5.0:
|
||||
version "2.6.0"
|
||||
resolved "https://registry.npmjs.org/bip39/-/bip39-2.6.0.tgz"
|
||||
integrity sha512-RrnQRG2EgEoqO24ea+Q/fftuPUZLmrEM3qNhhGsA3PbaXaCW791LTzPuVyx/VprXQcTbPJ3K3UeTna8ZnVl2sg==
|
||||
dependencies:
|
||||
create-hash "^1.1.0"
|
||||
pbkdf2 "^3.0.9"
|
||||
randombytes "^2.0.1"
|
||||
safe-buffer "^5.0.1"
|
||||
unorm "^1.3.3"
|
||||
|
||||
bip39@^3.0.2:
|
||||
version "3.0.4"
|
||||
resolved "https://registry.npmjs.org/bip39/-/bip39-3.0.4.tgz"
|
||||
@@ -2598,39 +2572,6 @@ bip39@^3.0.2:
|
||||
pbkdf2 "^3.0.9"
|
||||
randombytes "^2.0.1"
|
||||
|
||||
bip66@^1.1.0, bip66@^1.1.5:
|
||||
version "1.1.5"
|
||||
resolved "https://registry.npmjs.org/bip66/-/bip66-1.1.5.tgz"
|
||||
integrity sha1-AfqHSHhcpwlV1QESF9GzE5lpyiI=
|
||||
dependencies:
|
||||
safe-buffer "^5.0.1"
|
||||
|
||||
bitcoin-ops@^1.3.0, bitcoin-ops@^1.4.0:
|
||||
version "1.4.1"
|
||||
resolved "https://registry.npmjs.org/bitcoin-ops/-/bitcoin-ops-1.4.1.tgz"
|
||||
integrity sha512-pef6gxZFztEhaE9RY9HmWVmiIHqCb2OyS4HPKkpc6CIiiOa3Qmuoylxc5P2EkU3w+5eTSifI9SEZC88idAIGow==
|
||||
|
||||
bitcoinjs-lib@^4.0.2:
|
||||
version "4.0.5"
|
||||
resolved "https://registry.npmjs.org/bitcoinjs-lib/-/bitcoinjs-lib-4.0.5.tgz"
|
||||
integrity sha512-gYs7K2hiY4Xb96J8AIF+Rx+hqbwjVlp5Zt6L6AnHOdzfe/2tODdmDxsEytnaxVCdhOUg0JnsGpl+KowBpGLxtA==
|
||||
dependencies:
|
||||
bech32 "^1.1.2"
|
||||
bip32 "^1.0.4"
|
||||
bip66 "^1.1.0"
|
||||
bitcoin-ops "^1.4.0"
|
||||
bs58check "^2.0.0"
|
||||
create-hash "^1.1.0"
|
||||
create-hmac "^1.1.3"
|
||||
merkle-lib "^2.0.10"
|
||||
pushdata-bitcoin "^1.0.1"
|
||||
randombytes "^2.0.1"
|
||||
safe-buffer "^5.1.1"
|
||||
tiny-secp256k1 "^1.0.0"
|
||||
typeforce "^1.11.3"
|
||||
varuint-bitcoin "^1.0.4"
|
||||
wif "^2.0.1"
|
||||
|
||||
bluebird@^3.1.1, bluebird@^3.5.5, bluebird@^3.7.2:
|
||||
version "3.7.2"
|
||||
resolved "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz"
|
||||
@@ -2731,7 +2672,7 @@ brorand@^1.0.1, brorand@^1.1.0:
|
||||
resolved "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz"
|
||||
integrity sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=
|
||||
|
||||
browserify-aes@^1.0.0, browserify-aes@^1.0.4, browserify-aes@^1.0.6:
|
||||
browserify-aes@^1.0.0, browserify-aes@^1.0.4:
|
||||
version "1.2.0"
|
||||
resolved "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz"
|
||||
integrity sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==
|
||||
@@ -2803,22 +2744,6 @@ browserslist@^4.0.0, browserslist@^4.12.0, browserslist@^4.16.6:
|
||||
escalade "^3.1.1"
|
||||
node-releases "^1.1.71"
|
||||
|
||||
bs58@^4.0.0:
|
||||
version "4.0.1"
|
||||
resolved "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz"
|
||||
integrity sha1-vhYedsNU9veIrkBx9j806MTwpCo=
|
||||
dependencies:
|
||||
base-x "^3.0.2"
|
||||
|
||||
bs58check@<3.0.0, bs58check@^2.0.0, bs58check@^2.1.1:
|
||||
version "2.1.2"
|
||||
resolved "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz"
|
||||
integrity sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==
|
||||
dependencies:
|
||||
bs58 "^4.0.0"
|
||||
create-hash "^1.1.0"
|
||||
safe-buffer "^5.1.2"
|
||||
|
||||
buffer-from@^1.0.0:
|
||||
version "1.1.1"
|
||||
resolved "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz"
|
||||
@@ -2884,6 +2809,30 @@ cacache@^12.0.2, cacache@^12.0.3:
|
||||
unique-filename "^1.1.1"
|
||||
y18n "^4.0.0"
|
||||
|
||||
cacache@^15.0.5:
|
||||
version "15.3.0"
|
||||
resolved "https://registry.npmmirror.com/cacache/-/cacache-15.3.0.tgz#dc85380fb2f556fe3dda4c719bfa0ec875a7f1eb"
|
||||
integrity sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ==
|
||||
dependencies:
|
||||
"@npmcli/fs" "^1.0.0"
|
||||
"@npmcli/move-file" "^1.0.1"
|
||||
chownr "^2.0.0"
|
||||
fs-minipass "^2.0.0"
|
||||
glob "^7.1.4"
|
||||
infer-owner "^1.0.4"
|
||||
lru-cache "^6.0.0"
|
||||
minipass "^3.1.1"
|
||||
minipass-collect "^1.0.2"
|
||||
minipass-flush "^1.0.5"
|
||||
minipass-pipeline "^1.2.2"
|
||||
mkdirp "^1.0.3"
|
||||
p-map "^4.0.0"
|
||||
promise-inflight "^1.0.1"
|
||||
rimraf "^3.0.2"
|
||||
ssri "^8.0.1"
|
||||
tar "^6.0.2"
|
||||
unique-filename "^1.1.1"
|
||||
|
||||
cache-base@^1.0.1:
|
||||
version "1.0.1"
|
||||
resolved "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz"
|
||||
@@ -3087,6 +3036,11 @@ chownr@^1.1.1:
|
||||
resolved "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz"
|
||||
integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==
|
||||
|
||||
chownr@^2.0.0:
|
||||
version "2.0.0"
|
||||
resolved "https://registry.npmmirror.com/chownr/-/chownr-2.0.0.tgz#15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece"
|
||||
integrity sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==
|
||||
|
||||
chrome-trace-event@^1.0.2:
|
||||
version "1.0.3"
|
||||
resolved "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz"
|
||||
@@ -3122,6 +3076,11 @@ clean-css@4.2.x:
|
||||
dependencies:
|
||||
source-map "~0.6.0"
|
||||
|
||||
clean-stack@^2.0.0:
|
||||
version "2.2.0"
|
||||
resolved "https://registry.npmmirror.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b"
|
||||
integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==
|
||||
|
||||
cleave.js@^1.4.7:
|
||||
version "1.6.0"
|
||||
resolved "https://registry.npmjs.org/cleave.js/-/cleave.js-1.6.0.tgz"
|
||||
@@ -3297,6 +3256,11 @@ commander@^2.18.0, commander@^2.20.0:
|
||||
resolved "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz"
|
||||
integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==
|
||||
|
||||
commander@^7.2.0:
|
||||
version "7.2.0"
|
||||
resolved "https://registry.yarnpkg.com/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7"
|
||||
integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==
|
||||
|
||||
commander@~2.1.0:
|
||||
version "2.1.0"
|
||||
resolved "https://registry.npmjs.org/commander/-/commander-2.1.0.tgz"
|
||||
@@ -3329,6 +3293,17 @@ compressible@~2.0.16:
|
||||
dependencies:
|
||||
mime-db ">= 1.43.0 < 2"
|
||||
|
||||
compression-webpack-plugin@6.1.1:
|
||||
version "6.1.1"
|
||||
resolved "https://registry.npmmirror.com/compression-webpack-plugin/-/compression-webpack-plugin-6.1.1.tgz#ae8e4b2ffdb7396bb776e66918d751a20d8ccf0e"
|
||||
integrity sha512-BEHft9M6lwOqVIQFMS/YJGmeCYXVOakC5KzQk05TFpMBlODByh1qNsZCWjUBxCQhUP9x0WfGidxTbGkjbWO/TQ==
|
||||
dependencies:
|
||||
cacache "^15.0.5"
|
||||
find-cache-dir "^3.3.1"
|
||||
schema-utils "^3.0.0"
|
||||
serialize-javascript "^5.0.1"
|
||||
webpack-sources "^1.4.3"
|
||||
|
||||
compression@^1.7.4:
|
||||
version "1.7.4"
|
||||
resolved "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz"
|
||||
@@ -3513,7 +3488,7 @@ create-hash@^1.1.0, create-hash@^1.1.2, create-hash@^1.2.0:
|
||||
ripemd160 "^2.0.1"
|
||||
sha.js "^2.4.0"
|
||||
|
||||
create-hmac@^1.1.0, create-hmac@^1.1.3, create-hmac@^1.1.4, create-hmac@^1.1.7:
|
||||
create-hmac@^1.1.0, create-hmac@^1.1.4, create-hmac@^1.1.7:
|
||||
version "1.1.7"
|
||||
resolved "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz"
|
||||
integrity sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==
|
||||
@@ -4044,16 +4019,7 @@ dotenv@^8.2.0:
|
||||
resolved "https://registry.npmjs.org/dotenv/-/dotenv-8.6.0.tgz"
|
||||
integrity sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g==
|
||||
|
||||
drbg.js@^1.0.1:
|
||||
version "1.0.1"
|
||||
resolved "https://registry.npmjs.org/drbg.js/-/drbg.js-1.0.1.tgz"
|
||||
integrity sha1-Pja2xCs3BDgjzbwzLVjzHiRFSAs=
|
||||
dependencies:
|
||||
browserify-aes "^1.0.6"
|
||||
create-hash "^1.1.2"
|
||||
create-hmac "^1.1.4"
|
||||
|
||||
duplexer@^0.1.1:
|
||||
duplexer@^0.1.1, duplexer@^0.1.2:
|
||||
version "0.1.2"
|
||||
resolved "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz"
|
||||
integrity sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==
|
||||
@@ -4104,7 +4070,7 @@ electron-to-chromium@^1.3.723:
|
||||
resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.779.tgz"
|
||||
integrity sha512-nreave0y/1Qhmo8XtO6C/LpawNyC6U26+q7d814/e+tIqUK073pM+4xW7WUXyqCRa5K4wdxHmNMBAi8ap9nEew==
|
||||
|
||||
elliptic@^6.4.0, elliptic@^6.5.2, elliptic@^6.5.3:
|
||||
elliptic@^6.5.3:
|
||||
version "6.5.4"
|
||||
resolved "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz"
|
||||
integrity sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==
|
||||
@@ -4927,6 +4893,13 @@ fs-extra@^7.0.1:
|
||||
jsonfile "^4.0.0"
|
||||
universalify "^0.1.0"
|
||||
|
||||
fs-minipass@^2.0.0:
|
||||
version "2.1.0"
|
||||
resolved "https://registry.npmmirror.com/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb"
|
||||
integrity sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==
|
||||
dependencies:
|
||||
minipass "^3.0.0"
|
||||
|
||||
fs-write-stream-atomic@^1.0.8:
|
||||
version "1.0.10"
|
||||
resolved "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz"
|
||||
@@ -5110,11 +5083,6 @@ good-listener@^1.2.2:
|
||||
dependencies:
|
||||
delegate "^3.1.2"
|
||||
|
||||
google-protobuf@^3.14.0:
|
||||
version "3.18.1"
|
||||
resolved "https://registry.npmjs.org/google-protobuf/-/google-protobuf-3.18.1.tgz"
|
||||
integrity sha512-cDqSamZ8rGs+pOzhIsBte7wpezUKg/sggeptDWN5odhnRY/eDLa5VWLeNeQvcfiqjS3yUwgM+6OePCJMB7aWZA==
|
||||
|
||||
graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.1.9:
|
||||
version "4.2.6"
|
||||
resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz"
|
||||
@@ -5128,6 +5096,13 @@ gzip-size@^5.0.0:
|
||||
duplexer "^0.1.1"
|
||||
pify "^4.0.1"
|
||||
|
||||
gzip-size@^6.0.0:
|
||||
version "6.0.0"
|
||||
resolved "https://registry.yarnpkg.com/gzip-size/-/gzip-size-6.0.0.tgz#065367fd50c239c0671cbcbad5be3e2eeb10e462"
|
||||
integrity sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==
|
||||
dependencies:
|
||||
duplexer "^0.1.2"
|
||||
|
||||
hammerjs@^2.0.8:
|
||||
version "2.0.8"
|
||||
resolved "https://registry.npmjs.org/hammerjs/-/hammerjs-2.0.8.tgz"
|
||||
@@ -5514,12 +5489,17 @@ imurmurhash@^0.1.4:
|
||||
resolved "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz"
|
||||
integrity sha1-khi5srkoojixPcT7a21XbyMUU+o=
|
||||
|
||||
indent-string@^4.0.0:
|
||||
version "4.0.0"
|
||||
resolved "https://registry.npmmirror.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251"
|
||||
integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==
|
||||
|
||||
indexes-of@^1.0.1:
|
||||
version "1.0.1"
|
||||
resolved "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz"
|
||||
integrity sha1-8w9xbI4r00bHtn0985FVZqfAVgc=
|
||||
|
||||
infer-owner@^1.0.3:
|
||||
infer-owner@^1.0.3, infer-owner@^1.0.4:
|
||||
version "1.0.4"
|
||||
resolved "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz"
|
||||
integrity sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==
|
||||
@@ -6513,11 +6493,6 @@ merge2@^1.2.3:
|
||||
resolved "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz"
|
||||
integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==
|
||||
|
||||
merkle-lib@^2.0.10:
|
||||
version "2.0.10"
|
||||
resolved "https://registry.npmjs.org/merkle-lib/-/merkle-lib-2.0.10.tgz"
|
||||
integrity sha1-grjbrnXieneFOItz+ddyXQ9vMyY=
|
||||
|
||||
methods@~1.1.2:
|
||||
version "1.1.2"
|
||||
resolved "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz"
|
||||
@@ -6622,6 +6597,34 @@ minimist@^1.2.0, minimist@^1.2.5:
|
||||
resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz"
|
||||
integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==
|
||||
|
||||
minipass-collect@^1.0.2:
|
||||
version "1.0.2"
|
||||
resolved "https://registry.npmmirror.com/minipass-collect/-/minipass-collect-1.0.2.tgz#22b813bf745dc6edba2576b940022ad6edc8c617"
|
||||
integrity sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==
|
||||
dependencies:
|
||||
minipass "^3.0.0"
|
||||
|
||||
minipass-flush@^1.0.5:
|
||||
version "1.0.5"
|
||||
resolved "https://registry.npmmirror.com/minipass-flush/-/minipass-flush-1.0.5.tgz#82e7135d7e89a50ffe64610a787953c4c4cbb373"
|
||||
integrity sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==
|
||||
dependencies:
|
||||
minipass "^3.0.0"
|
||||
|
||||
minipass-pipeline@^1.2.2:
|
||||
version "1.2.4"
|
||||
resolved "https://registry.npmmirror.com/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz#68472f79711c084657c067c5c6ad93cddea8214c"
|
||||
integrity sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==
|
||||
dependencies:
|
||||
minipass "^3.0.0"
|
||||
|
||||
minipass@^3.0.0:
|
||||
version "3.1.6"
|
||||
resolved "https://registry.npmmirror.com/minipass/-/minipass-3.1.6.tgz#3b8150aa688a711a1521af5e8779c1d3bb4f45ee"
|
||||
integrity sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ==
|
||||
dependencies:
|
||||
yallist "^4.0.0"
|
||||
|
||||
minipass@^3.1.1:
|
||||
version "3.1.3"
|
||||
resolved "https://registry.npmjs.org/minipass/-/minipass-3.1.3.tgz"
|
||||
@@ -6629,6 +6632,14 @@ minipass@^3.1.1:
|
||||
dependencies:
|
||||
yallist "^4.0.0"
|
||||
|
||||
minizlib@^2.1.1:
|
||||
version "2.1.2"
|
||||
resolved "https://registry.npmmirror.com/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931"
|
||||
integrity sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==
|
||||
dependencies:
|
||||
minipass "^3.0.0"
|
||||
yallist "^4.0.0"
|
||||
|
||||
mississippi@^3.0.0:
|
||||
version "3.0.0"
|
||||
resolved "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz"
|
||||
@@ -6660,7 +6671,7 @@ mkdirp@^0.5.1, mkdirp@^0.5.3, mkdirp@^0.5.5, mkdirp@~0.5.1:
|
||||
dependencies:
|
||||
minimist "^1.2.5"
|
||||
|
||||
mkdirp@^1.0.4:
|
||||
mkdirp@^1.0.3, mkdirp@^1.0.4:
|
||||
version "1.0.4"
|
||||
resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz"
|
||||
integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==
|
||||
@@ -6682,6 +6693,11 @@ move-concurrently@^1.0.1:
|
||||
rimraf "^2.5.4"
|
||||
run-queue "^1.0.3"
|
||||
|
||||
mrmime@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/mrmime/-/mrmime-1.0.0.tgz#14d387f0585a5233d291baba339b063752a2398b"
|
||||
integrity sha512-a70zx7zFfVO7XpnQ2IX1Myh9yY4UYvfld/dikWRnsXxbyvMcfz+u6UfgNAtH+k2QqtJuzVpv6eLTx1G2+WKZbQ==
|
||||
|
||||
ms@2.0.0:
|
||||
version "2.0.0"
|
||||
resolved "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz"
|
||||
@@ -6729,7 +6745,7 @@ mz@^2.4.0:
|
||||
object-assign "^4.0.1"
|
||||
thenify-all "^1.0.0"
|
||||
|
||||
nan@^2.12.1, nan@^2.13.2, nan@^2.14.0:
|
||||
nan@^2.12.1:
|
||||
version "2.14.2"
|
||||
resolved "https://registry.npmjs.org/nan/-/nan-2.14.2.tgz"
|
||||
integrity sha512-M2ufzIiINKCuDfBSAUr1vWQ+vuVcA9kqx8JJUsbQi6yf1uGRyb7HfpdfUr5qLXf3B/t8dPvcjhKMmlfnP47EzQ==
|
||||
@@ -7051,7 +7067,7 @@ open@^6.3.0:
|
||||
dependencies:
|
||||
is-wsl "^1.1.0"
|
||||
|
||||
opener@^1.5.1:
|
||||
opener@^1.5.1, opener@^1.5.2:
|
||||
version "1.5.2"
|
||||
resolved "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz"
|
||||
integrity sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==
|
||||
@@ -7154,6 +7170,13 @@ p-map@^2.0.0:
|
||||
resolved "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz"
|
||||
integrity sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==
|
||||
|
||||
p-map@^4.0.0:
|
||||
version "4.0.0"
|
||||
resolved "https://registry.npmmirror.com/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b"
|
||||
integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==
|
||||
dependencies:
|
||||
aggregate-error "^3.0.0"
|
||||
|
||||
p-retry@^3.0.1:
|
||||
version "3.0.1"
|
||||
resolved "https://registry.npmjs.org/p-retry/-/p-retry-3.0.1.tgz"
|
||||
@@ -7865,7 +7888,7 @@ protobufjs-dbx@^7.0.0:
|
||||
"@types/node" "^10.1.0"
|
||||
long "^4.0.0"
|
||||
|
||||
protobufjs@^6.10.2, protobufjs@^6.8.8, protobufjs@~6.10.2:
|
||||
protobufjs@^6.8.8, protobufjs@~6.10.2:
|
||||
version "6.10.2"
|
||||
resolved "https://registry.npmjs.org/protobufjs/-/protobufjs-6.10.2.tgz"
|
||||
integrity sha512-27yj+04uF6ya9l+qfpH187aqEzfCF4+Uit0I9ZBQVqK09hk/SQzKa2MUqUpXaVa7LOFRg1TSSr3lVxGOk6c0SQ==
|
||||
@@ -7978,13 +8001,6 @@ punycode@^2.1.0, punycode@^2.1.1:
|
||||
resolved "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz"
|
||||
integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==
|
||||
|
||||
pushdata-bitcoin@^1.0.1:
|
||||
version "1.0.1"
|
||||
resolved "https://registry.npmjs.org/pushdata-bitcoin/-/pushdata-bitcoin-1.0.1.tgz"
|
||||
integrity sha1-FZMdPNlnreUiBvUjqnMxrvfUOvc=
|
||||
dependencies:
|
||||
bitcoin-ops "^1.3.0"
|
||||
|
||||
q@^1.1.2:
|
||||
version "1.5.1"
|
||||
resolved "https://registry.npmjs.org/q/-/q-1.5.1.tgz"
|
||||
@@ -8356,6 +8372,13 @@ rimraf@^2.5.4, rimraf@^2.6.1, rimraf@^2.6.3:
|
||||
dependencies:
|
||||
glob "^7.1.3"
|
||||
|
||||
rimraf@^3.0.2:
|
||||
version "3.0.2"
|
||||
resolved "https://registry.npmmirror.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a"
|
||||
integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==
|
||||
dependencies:
|
||||
glob "^7.1.3"
|
||||
|
||||
ripemd160@^2.0.0, ripemd160@^2.0.1, ripemd160@^2.0.2:
|
||||
version "2.0.2"
|
||||
resolved "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz"
|
||||
@@ -8466,20 +8489,6 @@ schema-utils@^3.0.0:
|
||||
ajv "^6.12.5"
|
||||
ajv-keywords "^3.5.2"
|
||||
|
||||
secp256k1@^3.8.0:
|
||||
version "3.8.0"
|
||||
resolved "https://registry.npmjs.org/secp256k1/-/secp256k1-3.8.0.tgz"
|
||||
integrity sha512-k5ke5avRZbtl9Tqx/SA7CbY3NF6Ro+Sj9cZxezFzuBlLDmyqPiL8hJJ+EmzD8Ig4LUDByHJ3/iPOVoRixs/hmw==
|
||||
dependencies:
|
||||
bindings "^1.5.0"
|
||||
bip66 "^1.1.5"
|
||||
bn.js "^4.11.8"
|
||||
create-hash "^1.2.0"
|
||||
drbg.js "^1.0.1"
|
||||
elliptic "^6.5.2"
|
||||
nan "^2.14.0"
|
||||
safe-buffer "^5.1.2"
|
||||
|
||||
select-hose@^2.0.0:
|
||||
version "2.0.0"
|
||||
resolved "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz"
|
||||
@@ -8545,6 +8554,13 @@ serialize-javascript@^4.0.0:
|
||||
dependencies:
|
||||
randombytes "^2.1.0"
|
||||
|
||||
serialize-javascript@^5.0.1:
|
||||
version "5.0.1"
|
||||
resolved "https://registry.npmmirror.com/serialize-javascript/-/serialize-javascript-5.0.1.tgz#7886ec848049a462467a97d3d918ebb2aaf934f4"
|
||||
integrity sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA==
|
||||
dependencies:
|
||||
randombytes "^2.1.0"
|
||||
|
||||
serve-index@^1.9.1:
|
||||
version "1.9.1"
|
||||
resolved "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz"
|
||||
@@ -8652,6 +8668,15 @@ simple-swizzle@^0.2.2:
|
||||
dependencies:
|
||||
is-arrayish "^0.3.1"
|
||||
|
||||
sirv@^1.0.7:
|
||||
version "1.0.19"
|
||||
resolved "https://registry.yarnpkg.com/sirv/-/sirv-1.0.19.tgz#1d73979b38c7fe91fcba49c85280daa9c2363b49"
|
||||
integrity sha512-JuLThK3TnZG1TAKDwNIqNq6QA2afLOCcm+iE8D1Kj3GA40pSPsxQjjJl0J8X3tsR7T+CP1GavpzLwYkgVLWrZQ==
|
||||
dependencies:
|
||||
"@polka/url" "^1.0.0-next.20"
|
||||
mrmime "^1.0.0"
|
||||
totalist "^1.0.0"
|
||||
|
||||
slash@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz"
|
||||
@@ -9199,6 +9224,18 @@ tapable@^1.0.0, tapable@^1.1.3:
|
||||
resolved "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz"
|
||||
integrity sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==
|
||||
|
||||
tar@^6.0.2:
|
||||
version "6.1.11"
|
||||
resolved "https://registry.npmmirror.com/tar/-/tar-6.1.11.tgz#6760a38f003afa1b2ffd0ffe9e9abbd0eab3d621"
|
||||
integrity sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==
|
||||
dependencies:
|
||||
chownr "^2.0.0"
|
||||
fs-minipass "^2.0.0"
|
||||
minipass "^3.0.0"
|
||||
minizlib "^2.1.1"
|
||||
mkdirp "^1.0.3"
|
||||
yallist "^4.0.0"
|
||||
|
||||
terser-webpack-plugin@^1.4.3, terser-webpack-plugin@^1.4.4:
|
||||
version "1.4.5"
|
||||
resolved "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.5.tgz"
|
||||
@@ -9286,17 +9323,6 @@ tiny-emitter@^2.0.0:
|
||||
resolved "https://registry.npmjs.org/tiny-emitter/-/tiny-emitter-2.1.0.tgz"
|
||||
integrity sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q==
|
||||
|
||||
tiny-secp256k1@^1.0.0, tiny-secp256k1@^1.1.3:
|
||||
version "1.1.6"
|
||||
resolved "https://registry.npmjs.org/tiny-secp256k1/-/tiny-secp256k1-1.1.6.tgz"
|
||||
integrity sha512-FmqJZGduTyvsr2cF3375fqGHUovSwDi/QytexX1Se4BPuPZpTE5Ftp5fg+EFSuEf3lhZqgCRjEG3ydUQ/aNiwA==
|
||||
dependencies:
|
||||
bindings "^1.3.0"
|
||||
bn.js "^4.11.8"
|
||||
create-hmac "^1.1.7"
|
||||
elliptic "^6.4.0"
|
||||
nan "^2.13.2"
|
||||
|
||||
tmp@0.0.31:
|
||||
version "0.0.31"
|
||||
resolved "https://registry.npmjs.org/tmp/-/tmp-0.0.31.tgz"
|
||||
@@ -9363,6 +9389,11 @@ toposort@^1.0.0:
|
||||
resolved "https://registry.npmjs.org/toposort/-/toposort-1.0.7.tgz"
|
||||
integrity sha1-LmhELZ9k7HILjMieZEOsbKqVACk=
|
||||
|
||||
totalist@^1.0.0:
|
||||
version "1.1.0"
|
||||
resolved "https://registry.yarnpkg.com/totalist/-/totalist-1.1.0.tgz#a4d65a3e546517701e3e5c37a47a70ac97fe56df"
|
||||
integrity sha512-gduQwd1rOdDMGxFG1gEvhV88Oirdo2p+KjoYFU7k2g+i7n6AFFbDQ5kMPUsW0pNbfQsB/cwXvT1i4Bue0s9g5g==
|
||||
|
||||
tough-cookie@~2.5.0:
|
||||
version "2.5.0"
|
||||
resolved "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz"
|
||||
@@ -9470,11 +9501,6 @@ typedarray@^0.0.6:
|
||||
resolved "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz"
|
||||
integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=
|
||||
|
||||
typeforce@^1.11.3, typeforce@^1.11.5:
|
||||
version "1.18.0"
|
||||
resolved "https://registry.npmjs.org/typeforce/-/typeforce-1.18.0.tgz"
|
||||
integrity sha512-7uc1O8h1M1g0rArakJdf0uLRSSgFcYexrVoKo+bzJd32gd4gDy2L/Z+8/FjPnU9ydY3pEnVPtr9FyscYY60K1g==
|
||||
|
||||
uc.micro@^1.0.1, uc.micro@^1.0.5:
|
||||
version "1.0.6"
|
||||
resolved "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz"
|
||||
@@ -9565,11 +9591,6 @@ universalify@^0.1.0:
|
||||
resolved "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz"
|
||||
integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==
|
||||
|
||||
unorm@^1.3.3:
|
||||
version "1.6.0"
|
||||
resolved "https://registry.npmjs.org/unorm/-/unorm-1.6.0.tgz"
|
||||
integrity sha512-b2/KCUlYZUeA7JFUuRJZPUtr4gZvBh7tavtv4fvk4+KV9pfGiR6CQAQAWl49ZpR3ts2dk4FYkP7EIgDJoiOLDA==
|
||||
|
||||
unpipe@1.0.0, unpipe@~1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz"
|
||||
@@ -9710,13 +9731,6 @@ validate-npm-package-license@^3.0.1:
|
||||
spdx-correct "^3.0.0"
|
||||
spdx-expression-parse "^3.0.0"
|
||||
|
||||
varuint-bitcoin@^1.0.4:
|
||||
version "1.1.2"
|
||||
resolved "https://registry.npmjs.org/varuint-bitcoin/-/varuint-bitcoin-1.1.2.tgz"
|
||||
integrity sha512-4EVb+w4rx+YfVM32HQX42AbbT7/1f5zwAYhIujKXKk8NQK+JfRVl3pqT3hjNn/L+RstigmGGKVwHA/P0wgITZw==
|
||||
dependencies:
|
||||
safe-buffer "^5.1.1"
|
||||
|
||||
vary@~1.1.2:
|
||||
version "1.1.2"
|
||||
resolved "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz"
|
||||
@@ -10077,6 +10091,21 @@ webpack-bundle-analyzer@^3.8.0:
|
||||
opener "^1.5.1"
|
||||
ws "^6.0.0"
|
||||
|
||||
webpack-bundle-analyzer@^4.5.0:
|
||||
version "4.5.0"
|
||||
resolved "https://registry.yarnpkg.com/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.5.0.tgz#1b0eea2947e73528754a6f9af3e91b2b6e0f79d5"
|
||||
integrity sha512-GUMZlM3SKwS8Z+CKeIFx7CVoHn3dXFcUAjT/dcZQQmfSZGvitPfMob2ipjai7ovFFqPvTqkEZ/leL4O0YOdAYQ==
|
||||
dependencies:
|
||||
acorn "^8.0.4"
|
||||
acorn-walk "^8.0.0"
|
||||
chalk "^4.1.0"
|
||||
commander "^7.2.0"
|
||||
gzip-size "^6.0.0"
|
||||
lodash "^4.17.20"
|
||||
opener "^1.5.2"
|
||||
sirv "^1.0.7"
|
||||
ws "^7.3.1"
|
||||
|
||||
webpack-chain@^6.4.0:
|
||||
version "6.5.1"
|
||||
resolved "https://registry.npmjs.org/webpack-chain/-/webpack-chain-6.5.1.tgz"
|
||||
@@ -10150,7 +10179,7 @@ webpack-merge@^4.2.2:
|
||||
dependencies:
|
||||
lodash "^4.17.15"
|
||||
|
||||
webpack-sources@^1.1.0, webpack-sources@^1.4.0, webpack-sources@^1.4.1:
|
||||
webpack-sources@^1.1.0, webpack-sources@^1.4.0, webpack-sources@^1.4.1, webpack-sources@^1.4.3:
|
||||
version "1.4.3"
|
||||
resolved "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz"
|
||||
integrity sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==
|
||||
@@ -10239,13 +10268,6 @@ which@^2.0.1:
|
||||
dependencies:
|
||||
isexe "^2.0.0"
|
||||
|
||||
wif@^2.0.1, wif@^2.0.6:
|
||||
version "2.0.6"
|
||||
resolved "https://registry.npmjs.org/wif/-/wif-2.0.6.tgz"
|
||||
integrity sha1-CNP1IFbGZnkplyb63g1DKudLRwQ=
|
||||
dependencies:
|
||||
bs58check "<3.0.0"
|
||||
|
||||
word-wrap@~1.2.3:
|
||||
version "1.2.3"
|
||||
resolved "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz"
|
||||
@@ -10309,6 +10331,11 @@ ws@^7:
|
||||
resolved "https://registry.npmjs.org/ws/-/ws-7.5.6.tgz"
|
||||
integrity sha512-6GLgCqo2cy2A2rjCNFlxQS6ZljG/coZfZXclldI8FB/1G3CCI36Zd8xy2HrFVACi8tfk5XrgLQEk+P0Tnz9UcA==
|
||||
|
||||
ws@^7.3.1:
|
||||
version "7.5.7"
|
||||
resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.7.tgz#9e0ac77ee50af70d58326ecff7e85eb3fa375e67"
|
||||
integrity sha512-KMvVuFzpKBuiIXW3E4u3mySRO2/mCHSyZDJQM5NQ9Q9KHWHWh0NHgfbRMLLrceUK5qAL4ytALJbpRMjixFZh8A==
|
||||
|
||||
xmlcreate@^2.0.4:
|
||||
version "2.0.4"
|
||||
resolved "https://registry.npmjs.org/xmlcreate/-/xmlcreate-2.0.4.tgz"
|
||||
|
||||
Reference in New Issue
Block a user