forked from cerc-io/cosmos-explorer
Compare commits
11 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 9952233e37 | |||
|
|
ca331bff08 | ||
| ee264a069d | |||
| 46124fee36 | |||
| fe96cd224c | |||
| d4a07b8c83 | |||
| 46da12df36 | |||
| c3f93d42ca | |||
| bbc30e04af | |||
| bc8d91c183 | |||
| 91e4b32b9e |
@ -1,74 +0,0 @@
|
||||
{
|
||||
"chain_name": "axelar",
|
||||
"api": [
|
||||
"https://rest.axelar.lava.build/lava-referer-97409c72-1a82-4861-8651-119c15151cbe"
|
||||
],
|
||||
"rpc": [
|
||||
"https://tm.axelar.lava.build/lava-referer-97409c72-1a82-4861-8651-119c15151cbe"
|
||||
],
|
||||
"snapshot_provider": "",
|
||||
"sdk_version": "0.45.6",
|
||||
"coin_type": "118",
|
||||
"min_tx_fee": "800",
|
||||
"addr_prefix": "axelar",
|
||||
"logo": "/logos/axelar.svg",
|
||||
"theme_color": "#161723",
|
||||
"assets": [
|
||||
{
|
||||
"base": "uaxl",
|
||||
"symbol": "AXL",
|
||||
"exponent": "6",
|
||||
"coingecko_id": "axelar",
|
||||
"logo": "/logos/axelar.svg"
|
||||
},
|
||||
{
|
||||
"base": "uusdc",
|
||||
"symbol": "axlUSDC",
|
||||
"exponent": "6",
|
||||
"coingecko_id": "usd-coin",
|
||||
"logo": "/logos/usdc.svg"
|
||||
},
|
||||
{
|
||||
"base": "uusdt",
|
||||
"symbol": "axlUSDT",
|
||||
"exponent": "6",
|
||||
"coingecko_id": "tether",
|
||||
"logo": "/logos/usdt.svg"
|
||||
},
|
||||
{
|
||||
"base": "dai-wei",
|
||||
"symbol": "axlDAI",
|
||||
"exponent": "18",
|
||||
"coingecko_id": "dai",
|
||||
"logo": "/logos/dai.svg"
|
||||
},
|
||||
{
|
||||
"base": "weth-wei",
|
||||
"symbol": "axlWETH",
|
||||
"exponent": "18",
|
||||
"coingecko_id": "ethereum",
|
||||
"logo": "/logos/weth.svg"
|
||||
},
|
||||
{
|
||||
"base": "wmatic-wei",
|
||||
"symbol": "axlWMATIC",
|
||||
"exponent": "18",
|
||||
"coingecko_id": "matic-network",
|
||||
"logo": "/logos/wmatic.svg"
|
||||
},
|
||||
{
|
||||
"base": "wavax-wei",
|
||||
"symbol": "axlWAVAX",
|
||||
"exponent": "18",
|
||||
"coingecko_id": "avalanche-2",
|
||||
"logo": "/logos/wavax.svg"
|
||||
},
|
||||
{
|
||||
"base": "dot-planck",
|
||||
"symbol": "axlDOT",
|
||||
"exponent": "10",
|
||||
"coingecko_id": "polkadot",
|
||||
"logo": "/logos/dot.svg"
|
||||
}
|
||||
]
|
||||
}
|
||||
@ -1,31 +0,0 @@
|
||||
{
|
||||
"chain_name": "cosmos",
|
||||
"registry_name": "cosmoshub",
|
||||
"api": [
|
||||
{"provider": "notional", "address": "https://api-cosmoshub-ia.cosmosia.notional.ventures"},
|
||||
{"provider": "blockapsis", "address": "https://lcd-cosmoshub.blockapsis.com:443"},
|
||||
{"provider": "WhisperNode🤐", "address": "https://lcd-cosmoshub.whispernode.com:443"},
|
||||
{"provider": "pupmos", "address": "https://api-cosmoshub.pupmos.network"},
|
||||
{"provider": "publicnode", "address": "https://cosmos-rest.publicnode.com"},
|
||||
{"provider": "staketab", "address": "https://cosmos-rest.staketab.org"},
|
||||
{"provider": "nodestake", "address": "https://api.cosmos.nodestake.top"},
|
||||
{"provider": "Golden Ratio Staking", "address": "https://rest-cosmoshub.goldenratiostaking.net"}
|
||||
],
|
||||
"rpc": [
|
||||
{"provider": "icycro", "address": "https://cosmos-rpc.icycro.org"},
|
||||
{"provider": "dragonstake", "address": "https://rpc.cosmos.dragonstake.io"},
|
||||
{"provider": "Golden Ratio Staking", "address": "https://rpc-cosmoshub.goldenratiostaking.net"}
|
||||
],
|
||||
"sdk_version": "0.45.1",
|
||||
"coin_type": "118",
|
||||
"min_tx_fee": "800",
|
||||
"addr_prefix": "cosmos",
|
||||
"logo": "/logos/cosmos.svg",
|
||||
"assets": [{
|
||||
"base": "uatom",
|
||||
"symbol": "ATOM",
|
||||
"exponent": "6",
|
||||
"coingecko_id": "cosmos",
|
||||
"logo": "/logos/cosmos.svg"
|
||||
}]
|
||||
}
|
||||
23
chains/mainnet/laconic.json
Normal file
23
chains/mainnet/laconic.json
Normal file
@ -0,0 +1,23 @@
|
||||
{
|
||||
"chain_name": "laconic-mainnet",
|
||||
"registry_name": "laconic-mainnet",
|
||||
"api": [
|
||||
{"provider": "lcn-api", "address": "https://rest-api.laconicd-mainnet-1.laconic.com"}
|
||||
],
|
||||
"rpc": [
|
||||
{"provider": "lcn-rpc", "address": "https://laconicd-mainnet-1.laconic.com"}
|
||||
],
|
||||
"sdk_version": "0.50.10",
|
||||
"coin_type": "118",
|
||||
"min_tx_fee": "800",
|
||||
"addr_prefix": "laconic",
|
||||
"logo": "/logos/cosmos.svg",
|
||||
"assets": [{
|
||||
"base": "alnt",
|
||||
"symbol": "LNT",
|
||||
"exponent": "18",
|
||||
"coingecko_id": "cosmos",
|
||||
"logo": "/logos/cosmos.svg"
|
||||
}]
|
||||
}
|
||||
|
||||
@ -1,30 +0,0 @@
|
||||
{
|
||||
"chain_name": "neutron",
|
||||
"api": [
|
||||
{"provider": "Polkachu", "address": "https://neutron-api.polkachu.com"},
|
||||
{"provider": "NodeStake", "address": "https://api.neutron.nodestake.top"},
|
||||
{"provider": "Allnodes", "address": "https://neutron-rest.publicnode.com"}
|
||||
],
|
||||
"rpc": [
|
||||
{"provider": "Polkachu", "address": "https://neutron-rpc.polkachu.com"},
|
||||
{"provider": "NodeStake", "address": "https://rpc.neutron.nodestake.top"},
|
||||
{"provider": "Allnodes", "address": "https://neutron-rpc.publicnode.com:443"}
|
||||
],
|
||||
"provider_chain": {
|
||||
"api": ["https://api-cosmoshub-ia.cosmosia.notional.ventures"]
|
||||
},
|
||||
"features": ["dashboard", "blocks", "ibc", "cosmwasm", "uptime", "parameters", "state-sync", "consensus", "supply", "widget"],
|
||||
"sdk_version": "0.45.1",
|
||||
"coin_type": "118",
|
||||
"min_tx_fee": "8000",
|
||||
"assets": [{
|
||||
"base": "untrn",
|
||||
"symbol": "NTRN",
|
||||
"exponent": "6",
|
||||
"coingecko_id": "neutron",
|
||||
"logo": "/logos/neutron.svg"
|
||||
}],
|
||||
"addr_prefix": "neutron",
|
||||
"theme_color": "#161723",
|
||||
"logo": "/logos/neutron.svg"
|
||||
}
|
||||
@ -1,27 +0,0 @@
|
||||
{
|
||||
"chain_name": "nolus",
|
||||
"coingecko": "nolus",
|
||||
"api": [
|
||||
{"provider": "Nolus", "address": "https://pirin-cl.nolus.network:1317"},
|
||||
{"provider": "LavenderFive", "address": "https://nolus-api.lavenderfive.com:443"},
|
||||
{"provider": "Allnodes", "address": "https://nolus-rest.publicnode.com"}
|
||||
],
|
||||
"rpc": [
|
||||
{"provider": "Nolus", "address": "https://pirin-cl.nolus.network:26657"},
|
||||
{"provider": "LavenderFive", "address": "https://nolus-rpc.lavenderfive.com:443"},
|
||||
{"provider": "Allnodes", "address": "https://nolus-rpc.publicnode.com:443"}
|
||||
],
|
||||
"snapshot_provider": "",
|
||||
"sdk_version": "v0.47.6",
|
||||
"coin_type": "118",
|
||||
"min_tx_fee": "0",
|
||||
"addr_prefix": "nolus",
|
||||
"logo": "/logos/nolus.svg",
|
||||
"assets": [{
|
||||
"base": "unls",
|
||||
"symbol": "NLS",
|
||||
"exponent": "6",
|
||||
"coingecko_id": "nolus",
|
||||
"logo": "/logos/nolus.svg"
|
||||
}]
|
||||
}
|
||||
@ -1,32 +0,0 @@
|
||||
{
|
||||
"chain_name": "osmosis",
|
||||
"coingecko": "osmosis",
|
||||
"api": ["https://lcd.osmosis.zone","https://api-osmosis-ia.cosmosia.notional.ventures", "https://osmosis-api.polkachu.com", "https://lcd-osmosis.blockapsis.com"],
|
||||
"rpc": ["https://rpc.osmosis.zone", "https://rpc-osmosis-ia.cosmosia.notional.ventures:443", "https://osmosis-rpc.polkachu.com:443", "https://osmosis.validator.network:443", "https://rpc-osmosis.blockapsis.com:443"],
|
||||
"snapshot_provider": "",
|
||||
"sdk_version": "0.46.1",
|
||||
"coin_type": "118",
|
||||
"min_tx_fee": "800",
|
||||
"addr_prefix": "osmo",
|
||||
"logo": "/logos/osmosis.jpg",
|
||||
"theme_color": "#812cd6",
|
||||
"assets": [{
|
||||
"base": "uosmo",
|
||||
"symbol": "OSMO",
|
||||
"exponent": "6",
|
||||
"coingecko_id": "osmosis",
|
||||
"logo": "/logos/osmosis.jpg"
|
||||
},{
|
||||
"base": "uion",
|
||||
"symbol": "ION",
|
||||
"exponent": "6",
|
||||
"coingecko_id": "ion",
|
||||
"logo": "/logos/osmosis.jpg"
|
||||
},{
|
||||
"base": "usomm",
|
||||
"symbol": "SOMM",
|
||||
"exponent": "6",
|
||||
"coingecko_id": "somm",
|
||||
"logo": ""
|
||||
}]
|
||||
}
|
||||
142
deploy-frontend.sh
Executable file
142
deploy-frontend.sh
Executable file
@ -0,0 +1,142 @@
|
||||
#!/bin/bash
|
||||
|
||||
source .env
|
||||
echo "Using REGISTRY_BOND_ID: $REGISTRY_BOND_ID"
|
||||
echo "Using DEPLOYER_LRN: $DEPLOYER_LRN"
|
||||
echo "Using AUTHORITY: $AUTHORITY"
|
||||
|
||||
# Repository URL
|
||||
REPO_URL="https://git.vdb.to/cerc-io/cosmos-explorer"
|
||||
|
||||
# Get the latest commit hash from the repository
|
||||
LATEST_HASH=$(git ls-remote $REPO_URL HEAD | awk '{print $1}')
|
||||
|
||||
PACKAGE_VERSION=0.0.2
|
||||
|
||||
# Current date and time for note
|
||||
CURRENT_DATE_TIME=$(date -u)
|
||||
|
||||
CONFIG_FILE=config.yml
|
||||
|
||||
# Reference: https://git.vdb.to/cerc-io/test-progressive-web-app/src/branch/main/scripts
|
||||
|
||||
# Get latest version from registry and increment application-record version
|
||||
NEW_APPLICATION_VERSION=$(laconic -c $CONFIG_FILE registry record list --type ApplicationRecord --all --name "deploy-frontend" 2>/dev/null | jq -r -s ".[] | sort_by(.createTime) | reverse | [ .[] | select(.bondId == \"$REGISTRY_BOND_ID\") ] | .[0].attributes.version" | awk -F. -v OFS=. '{$NF += 1 ; print}')
|
||||
|
||||
if [ -z "$NEW_APPLICATION_VERSION" ] || [ "1" == "$NEW_APPLICATION_VERSION" ]; then
|
||||
# Set application-record version if no previous records were found
|
||||
NEW_APPLICATION_VERSION=0.0.1
|
||||
fi
|
||||
|
||||
# Generate application-record.yml with incremented version
|
||||
cat >./records/application-record.yml <<EOF
|
||||
record:
|
||||
type: ApplicationRecord
|
||||
version: $NEW_APPLICATION_VERSION
|
||||
repository_ref: $LATEST_HASH
|
||||
repository: ["$REPO_URL"]
|
||||
app_type: webapp
|
||||
name: deploy-frontend
|
||||
app_version: $PACKAGE_VERSION
|
||||
EOF
|
||||
|
||||
echo "Files generated successfully"
|
||||
|
||||
RECORD_FILE=records/application-record.yml
|
||||
|
||||
# Publish ApplicationRecord
|
||||
publish_response=$(laconic -c $CONFIG_FILE registry record publish --filename $RECORD_FILE)
|
||||
rc=$?
|
||||
if [ $rc -ne 0 ]; then
|
||||
echo "FATAL: Failed to publish record"
|
||||
exit $rc
|
||||
fi
|
||||
RECORD_ID=$(echo $publish_response | jq -r '.id')
|
||||
echo "ApplicationRecord published"
|
||||
echo $RECORD_ID
|
||||
|
||||
# Set name to record
|
||||
REGISTRY_APP_LRN="lrn://$AUTHORITY/applications/laconic-explorer"
|
||||
|
||||
sleep 2
|
||||
laconic -c $CONFIG_FILE registry name set "$REGISTRY_APP_LRN@${PACKAGE_VERSION}" "$RECORD_ID"
|
||||
rc=$?
|
||||
if [ $rc -ne 0 ]; then
|
||||
echo "FATAL: Failed to set name: $REGISTRY_APP_LRN@${PACKAGE_VERSION}"
|
||||
exit $rc
|
||||
fi
|
||||
sleep 2
|
||||
laconic -c $CONFIG_FILE registry name set "$REGISTRY_APP_LRN@${LATEST_HASH}" "$RECORD_ID"
|
||||
rc=$?
|
||||
if [ $rc -ne 0 ]; then
|
||||
echo "FATAL: Failed to set hash"
|
||||
exit $rc
|
||||
fi
|
||||
sleep 2
|
||||
# Set name if latest release
|
||||
laconic -c $CONFIG_FILE registry name set "$REGISTRY_APP_LRN" "$RECORD_ID"
|
||||
rc=$?
|
||||
if [ $rc -ne 0 ]; then
|
||||
echo "FATAL: Failed to set release"
|
||||
exit $rc
|
||||
fi
|
||||
echo "$REGISTRY_APP_LRN set for ApplicationRecord"
|
||||
|
||||
# Check if record found for REGISTRY_APP_LRN
|
||||
query_response=$(laconic -c $CONFIG_FILE registry name resolve "$REGISTRY_APP_LRN")
|
||||
rc=$?
|
||||
if [ $rc -ne 0 ]; then
|
||||
echo "FATAL: Failed to query name"
|
||||
exit $rc
|
||||
fi
|
||||
APP_RECORD=$(echo $query_response | jq '.[0]')
|
||||
if [ -z "$APP_RECORD" ] || [ "null" == "$APP_RECORD" ]; then
|
||||
echo "No record found for $REGISTRY_APP_LRN."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Get payment address for deployer
|
||||
paymentAddress=$(laconic -c config.yml registry name resolve "$DEPLOYER_LRN" | jq -r '.[0].attributes.paymentAddress')
|
||||
paymentAmount=$(laconic -c config.yml registry name resolve "$DEPLOYER_LRN" | jq -r '.[0].attributes.minimumPayment' | sed 's/alnt//g')
|
||||
# Pay deployer if paymentAmount is not null
|
||||
if [[ -n "$paymentAmount" && "$paymentAmount" != "null" ]]; then
|
||||
payment=$(laconic -c config.yml registry tokens send --address "$paymentAddress" --type alnt --quantity "$paymentAmount")
|
||||
|
||||
# Extract the transaction hash
|
||||
txHash=$(echo "$payment" | jq -r '.tx.hash')
|
||||
echo "Paid deployer with txHash as $txHash"
|
||||
|
||||
else
|
||||
echo "Payment amount is null; skipping payment."
|
||||
fi
|
||||
|
||||
# Generate application-deployment-request.yml
|
||||
cat >./records/application-deployment-request.yml <<EOF
|
||||
record:
|
||||
type: ApplicationDeploymentRequest
|
||||
version: '1.0.0'
|
||||
name: laconic-explorer@$PACKAGE_VERSION
|
||||
application: lrn://$AUTHORITY/applications/laconic-explorer@$PACKAGE_VERSION
|
||||
deployer: $DEPLOYER_LRN
|
||||
dns: explorer.laconic.com
|
||||
config:
|
||||
env:
|
||||
CERC_SINGLE_PAGE_APP: true
|
||||
meta:
|
||||
note: Added by script @ $CURRENT_DATE_TIME
|
||||
repository: "$REPO_URL"
|
||||
repository_ref: $LATEST_HASH
|
||||
payment: $txHash
|
||||
EOF
|
||||
|
||||
RECORD_FILE=records/application-deployment-request.yml
|
||||
|
||||
sleep 2
|
||||
deployment_response=$(laconic -c $CONFIG_FILE registry record publish --filename $RECORD_FILE)
|
||||
if [ $rc -ne 0 ]; then
|
||||
echo "FATAL: Failed to query deployment request"
|
||||
exit $rc
|
||||
fi
|
||||
DEPLOYMENT_REQUEST_ID=$(echo $deployment_response | jq -r '.id')
|
||||
echo "ApplicationDeploymentRequest published"
|
||||
echo $DEPLOYMENT_REQUEST_ID
|
||||
@ -4,8 +4,8 @@
|
||||
<meta charset="UTF-8">
|
||||
<link rel="icon" href="/favicon.ico">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>Ping Dashboard - Cosmos Blockchain Explorer And Web Wallet</title>
|
||||
<meta name="description" content="Ping Dashboard is a block explorer/web wallet for blockchains built on Cosmos SDK, Cosmoshub, Osmosis, Juno, Evmos, Injective, Canto and 70+ blockchains listed on ping.pub" />
|
||||
<title>Laconic Blockchain Explorer And Web Wallet</title>
|
||||
<meta name="description" content="Laconic Explorer is a block explorer/web wallet for blockchains built on Cosmos SDK, Cosmoshub, Osmosis, Juno, Evmos, Injective, Canto and 70+ blockchains listed on ping.pub" />
|
||||
<link rel="stylesheet" type="text/css" href="/loader.css" />
|
||||
</head>
|
||||
<body>
|
||||
|
||||
@ -83,7 +83,7 @@ dayjs()
|
||||
<RouterLink to="/" class="flex items-center">
|
||||
<img class="w-10 h-10" src="../../assets/logo.svg" />
|
||||
<h1 class="flex-1 ml-3 text-2xl font-semibold dark:text-white">
|
||||
Ping.pub
|
||||
Laconic Explorer
|
||||
</h1>
|
||||
</RouterLink>
|
||||
<div
|
||||
@ -265,7 +265,7 @@ dayjs()
|
||||
<Sponsors />
|
||||
<div class="px-4 text-sm pt-2 text-gray-400 pb-2 uppercase">{{ $t('module.links') }}</div>
|
||||
<a
|
||||
href="https://twitter.com/ping_pub"
|
||||
href="https://x.com/laconicnetwork"
|
||||
target="_blank"
|
||||
class="py-2 px-4 flex items-center cursor-pointer rounded-lg hover:bg-gray-100 dark:hover:bg-[#373f59]"
|
||||
>
|
||||
@ -289,18 +289,6 @@ dayjs()
|
||||
Discord
|
||||
</div>
|
||||
</a>
|
||||
<a
|
||||
href="https://github.com/ping-pub/explorer/discussions"
|
||||
target="_blank"
|
||||
class="py-2 px-4 flex items-center rounded-lg cursor-pointer hover:bg-gray-100 dark:hover:bg-[#373f59]"
|
||||
>
|
||||
<Icon icon="mdi:frequently-asked-questions" class="text-xl mr-2" />
|
||||
<div
|
||||
class="text-base capitalize flex-1 text-gray-600 dark:text-gray-200"
|
||||
>
|
||||
FAQ
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="xl:!ml-64 px-3 pt-4">
|
||||
|
||||
@ -22,15 +22,15 @@
|
||||
>
|
||||
<a
|
||||
class="link link-primary no-underline mr-4"
|
||||
href="https://github.com/ping-pub/explorer/blob/master/LICENSE"
|
||||
href="https://git.vdb.to/cerc-io/cosmos-explorer/src/branch/master/LICENSE"
|
||||
target="noopener noreferrer"
|
||||
>License</a
|
||||
>
|
||||
<a
|
||||
class="link link-primary no-underline"
|
||||
href="https://github.com/ping-pub/explorer"
|
||||
href="https://git.vdb.to/cerc-io/cosmos-explorer"
|
||||
target="noopener noreferrer"
|
||||
>Github</a
|
||||
>Source</a
|
||||
>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
@ -1,24 +1,12 @@
|
||||
<template>
|
||||
<div>
|
||||
<a href="https://cosmos.network" target="_blank"
|
||||
<a href="https://www.laconic.com" target="_blank"
|
||||
class="py-2 px-4 flex items-center cursor-pointer rounded-lg hover:bg-gray-100 dark:hover:bg-[#373f59]">
|
||||
<img src="https://ping.pub/logos/cosmos.svg" class="w-6 h-6 rounded-full mr-3" />
|
||||
<svg width="24" height="24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M4.05 12.623A15.378 15.378 0 0 0 8.57 1.714C8.573 1.136 8.54.564 8.477 0H0v16.287c0 1.974.752 3.949 2.258 5.454A7.69 7.69 0 0 0 7.714 24L24 24v-8.477a15.636 15.636 0 0 0-1.715-.095c-4.258 0-8.115 1.73-10.908 4.523-2.032 1.981-5.291 1.982-7.299-.026-2.006-2.006-2.007-5.266-.029-7.302Zm18.192-10.86a6.004 6.004 0 0 0-8.485 0 6.003 6.003 0 0 0 0 8.484 6.003 6.003 0 0 0 8.485 0 6.002 6.002 0 0 0 0-8.485Z" fill="var(--color-white)"></path>
|
||||
</svg>
|
||||
<div class="text-sm capitalize flex-1 text-gray-600 dark:text-gray-200">
|
||||
Cosmos Hub
|
||||
</div>
|
||||
</a>
|
||||
<a href="https://osmosis.zone" target="_blank"
|
||||
class="py-2 px-4 flex items-center cursor-pointer rounded-lg hover:bg-gray-100 dark:hover:bg-[#373f59]">
|
||||
<img src="https://ping.pub/logos/osmosis.jpg" class="w-6 h-6 rounded-full mr-3" />
|
||||
<div class="text-sm capitalize flex-1 text-gray-600 dark:text-gray-200">
|
||||
Osmosis
|
||||
</div>
|
||||
</a>
|
||||
<a href="https://celestia.org" target="_blank"
|
||||
class="py-2 px-4 flex items-center cursor-pointer rounded-lg hover:bg-gray-100 dark:hover:bg-[#373f59]">
|
||||
<img src="https://ping.pub/logos/celestia.png" class="w-6 h-6 rounded-full mr-3" />
|
||||
<div class="text-sm capitalize flex-1 text-gray-600 dark:text-gray-200">
|
||||
Celestia
|
||||
Laconic Network
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
@ -19,6 +19,12 @@ app.use(LazyLoad, { component: true });
|
||||
// Mount vue app
|
||||
app.mount('#app');
|
||||
|
||||
// fetch new block(s) on this interval, specified in miliseconds
|
||||
// note that the design of the block fetching code is such that it
|
||||
// will MISS BLOCKS if this interval is longer than the block time
|
||||
// TODO: make this configurable
|
||||
const blockFetchInterval = 2 * 1000;
|
||||
|
||||
// fetch latest block every 6s
|
||||
const blockStore = useBaseStore();
|
||||
const requestCounter = ref(0);
|
||||
@ -28,4 +34,4 @@ setInterval(() => {
|
||||
// max allowed request
|
||||
blockStore.fetchLatest().finally(() => (requestCounter.value -= 1));
|
||||
}
|
||||
}, 6000);
|
||||
}, blockFetchInterval);
|
||||
|
||||
@ -22,7 +22,7 @@
|
||||
"links": "链接"
|
||||
},
|
||||
"pages": {
|
||||
"title": "Ping Dashboard",
|
||||
"title": "Laconic Explorer",
|
||||
"slogan": "Ping Dashboard 是一个区块链浏览器,也是一个网页钱包,还有更多 ... 🛠",
|
||||
"description": "Cosmos Ecosystem Blockchains 🚀",
|
||||
"search_placeholder": "搜索区块链",
|
||||
|
||||
@ -23,7 +23,7 @@
|
||||
"links": "Links"
|
||||
},
|
||||
"pages": {
|
||||
"title": "Ping Dashboard",
|
||||
"title": "Laconic Explorer",
|
||||
"title_all": "404",
|
||||
"tag": "Beta",
|
||||
"tag_all": "Page Not Found",
|
||||
|
||||
@ -21,7 +21,7 @@
|
||||
"links": "Tautan"
|
||||
},
|
||||
"pages": {
|
||||
"title": "Ping Dashboard",
|
||||
"title": "Laconic Explorer",
|
||||
"title_all": "404",
|
||||
"tag": "Beta",
|
||||
"tag_all": "Halaman Tidak Ditemukan",
|
||||
|
||||
Loading…
Reference in New Issue
Block a user