From 2833f67813fbe8fc22941b6ca4cfa16d17d756a8 Mon Sep 17 00:00:00 2001 From: Blake Byrnes Date: Thu, 5 Sep 2024 08:16:09 -0400 Subject: [PATCH] Add Argon Protocol Testnet (#10871) --- packages/apps-config/src/api/spec/argon.ts | 60 +++++++++++++++++++ packages/apps-config/src/api/spec/index.ts | 2 + packages/apps-config/src/api/typesBundle.ts | 54 +++++++++++++++++ packages/apps-config/src/endpoints/testing.ts | 13 +++- .../apps-config/src/ui/logos/chains/argon.svg | 8 +++ .../src/ui/logos/chains/generated/argonSVG.ts | 6 ++ .../apps-config/src/ui/logos/chains/index.ts | 1 + 7 files changed, 143 insertions(+), 1 deletion(-) create mode 100644 packages/apps-config/src/api/spec/argon.ts create mode 100644 packages/apps-config/src/ui/logos/chains/argon.svg create mode 100644 packages/apps-config/src/ui/logos/chains/generated/argonSVG.ts diff --git a/packages/apps-config/src/api/spec/argon.ts b/packages/apps-config/src/api/spec/argon.ts new file mode 100644 index 000000000000..3fd8ab670d8e --- /dev/null +++ b/packages/apps-config/src/api/spec/argon.ts @@ -0,0 +1,60 @@ +// Copyright 2017-2024 @polkadot/apps-config authors & contributors +// SPDX-License-Identifier: Apache-2.0 + +import type { OverrideBundleDefinition } from '@polkadot/types/types'; + +/* eslint-disable sort-keys */ +const definitions: OverrideBundleDefinition = { + types: [ + { + // on all versions + minmax: [0, undefined], + types: { + Satoshis: 'u64' + } + } + ], + runtime: { + MiningSlotApi: [ + { + methods: { + next_slot_era: { + description: 'Get the next slot block start and end', + params: [], + type: '(BlockNumber, BlockNumber)' + } + }, + version: 1 + } + ], + BitcoinApis: [ + { + methods: { + redemption_rate: { + description: 'Get the current redemption rate for a given number of satoshis', + params: [ + { + name: 'satoshis', + type: 'Satoshis' + } + ], + type: 'Balance' + }, + market_rate: { + description: 'Get the current market rate for a given number of satoshis', + params: [ + { + name: 'satoshis', + type: 'Satoshis' + } + ], + type: 'Balance' + } + }, + version: 1 + } + ] + } +}; + +export default definitions; diff --git a/packages/apps-config/src/api/spec/index.ts b/packages/apps-config/src/api/spec/index.ts index a49740758cdf..6c103acc1e1d 100644 --- a/packages/apps-config/src/api/spec/index.ts +++ b/packages/apps-config/src/api/spec/index.ts @@ -9,6 +9,7 @@ import altair from './altair.js'; import apron from './apron.js'; import aresGladios from './ares-gladios.js'; import aresParachain from './ares-parachain.js'; +import argon from './argon.js'; import astar from './astar.js'; import bajun from './bajun.js'; import basilisk from './basilisk.js'; @@ -153,6 +154,7 @@ const spec: Record = { 'ares-gladios': aresGladios, 'ares-mars': aresParachain, 'ares-odyssey': aresParachain, + argon, asgard: bifrostAsgard, astar, bajun, diff --git a/packages/apps-config/src/api/typesBundle.ts b/packages/apps-config/src/api/typesBundle.ts index 7395cb5c8eaf..30f4640f1633 100644 --- a/packages/apps-config/src/api/typesBundle.ts +++ b/packages/apps-config/src/api/typesBundle.ts @@ -14002,6 +14002,60 @@ export const typesBundle = { } ] }, + "argon": { + "types": [ + { + "minmax": [ + 0, + null + ], + "types": { + "Satoshis": "u64" + } + } + ], + "runtime": { + "MiningSlotApi": [ + { + "methods": { + "next_slot_era": { + "description": "Get the next slot block start and end", + "params": [], + "type": "(BlockNumber, BlockNumber)" + } + }, + "version": 1 + } + ], + "BitcoinApis": [ + { + "methods": { + "redemption_rate": { + "description": "Get the current redemption rate for a given number of satoshis", + "params": [ + { + "name": "satoshis", + "type": "Satoshis" + } + ], + "type": "Balance" + }, + "market_rate": { + "description": "Get the current market rate for a given number of satoshis", + "params": [ + { + "name": "satoshis", + "type": "Satoshis" + } + ], + "type": "Balance" + } + }, + "version": 1 + } + ] + } + }, "ares-gladios": { "types": [ { diff --git a/packages/apps-config/src/endpoints/testing.ts b/packages/apps-config/src/endpoints/testing.ts index 67b53009636a..5a2770457ad0 100644 --- a/packages/apps-config/src/endpoints/testing.ts +++ b/packages/apps-config/src/endpoints/testing.ts @@ -3,7 +3,7 @@ import type { EndpointOption } from './types.js'; -import { chains3dpassSVG, chainsAcalaSVG, chainsAlephSVG, chainsAllfeatSVG, chainsAnalogSVG, chainsBrainstormPNG, chainsChainflipPNG, chainsCreditcoinTestPNG, chainsDebioSVG, chainsEquilibriumSVG, chainsFerrumPNG, chainsFragnovaPNG, chainsJurPNG, chainsKintsugiPNG, chainsLiberlandPNG, chainsLogionPNG, chainsMyriadPNG, chainsShidenPNG, chainsSkyekiwiPNG, chainsTanglePNG, chainsVaraTestnetPNG } from '../ui/logos/chains/index.js'; +import { chains3dpassSVG, chainsAcalaSVG, chainsAlephSVG, chainsAllfeatSVG, chainsAnalogSVG, chainsArgonSVG, chainsBrainstormPNG, chainsChainflipPNG, chainsCreditcoinTestPNG, chainsDebioSVG, chainsEquilibriumSVG, chainsFerrumPNG, chainsFragnovaPNG, chainsJurPNG, chainsKintsugiPNG, chainsLiberlandPNG, chainsLogionPNG, chainsMyriadPNG, chainsShidenPNG, chainsSkyekiwiPNG, chainsTanglePNG, chainsVaraTestnetPNG } from '../ui/logos/chains/index.js'; import { nodesArcticPNG, nodesAresGladiosSVG, nodesBifrostSVG, nodesBitcountryPNG, nodesCereSVG, nodesCessPNG, nodesCloverSVG, nodesCrustMaxwellSVG, nodesCurioSVG, nodesDanceboxSVG, nodesDatahighwayPNG, nodesDockPNG, nodesDolphinSVG, nodesDotmogSVG, nodesEdgewareWhitePNG, nodesEncointerBlueSVG, nodesFantourPNG, nodesGalitalLogoPNG, nodesGamepowerSVG, nodesGeekSVG, nodesInterlaySVG, nodesIpsePNG, nodesJazPNG, nodesJupiterSVG, nodesKarmachainSVG, nodesKhalaSVG, nodesKlugPNG, nodesKylinPNG, nodesLaminarCircleSVG, nodesLitentryPNG, nodesMantaPNG, nodesMathSVG, nodesMinixPNG, nodesMoonbaseAlphaSVG, nodesMybankPNG, nodesNftmartPNG, nodesNodleSVG, nodesOpalLogoPNG, nodesOpportunityPNG, nodesPhalaSVG, nodesPhoenixPNG, nodesPhykenNetworkPNG, nodesPichiuPNG, nodesPolkadexSVG, nodesPolkafoundrySVG, nodesPolymeshSVG, nodesPontemSVG, nodesPrismPNG, nodesRealisPNG, nodesRiochainSVG, nodesSherpaxPNG, nodesSoonsocialPNG, nodesSoraSubstrateSVG, nodesSubdaoPNG, nodesSubgameSVG, nodesSubspacePNG, nodesSubstrateHexagonSVG, nodesTernoaSVG, nodesThebifrostPNG, nodesUniartsPNG, nodesUniqueSVG, nodesUnitnetworkPNG, nodesWeb3gamesSVG, nodesZCloakSVG, nodesZeroSVG } from '../ui/logos/nodes/index.js'; export * from './testingRelayRococo.js'; @@ -86,6 +86,17 @@ export const testChains: Omit[] = [ logo: nodesAresGladiosSVG } }, + { + info: 'Argon', + providers: { + 'Argon Foundation': 'wss://rpc.testnet.argonprotocol.org' + }, + text: 'Argon Testnet', + ui: { + color: '#a428b3', + logo: chainsArgonSVG + } + }, { info: 'jaz', providers: { diff --git a/packages/apps-config/src/ui/logos/chains/argon.svg b/packages/apps-config/src/ui/logos/chains/argon.svg new file mode 100644 index 000000000000..8677393d4119 --- /dev/null +++ b/packages/apps-config/src/ui/logos/chains/argon.svg @@ -0,0 +1,8 @@ + + + logo + + + + + diff --git a/packages/apps-config/src/ui/logos/chains/generated/argonSVG.ts b/packages/apps-config/src/ui/logos/chains/generated/argonSVG.ts new file mode 100644 index 000000000000..079a888e5755 --- /dev/null +++ b/packages/apps-config/src/ui/logos/chains/generated/argonSVG.ts @@ -0,0 +1,6 @@ +// Copyright 2017-2024 @polkadot/apps authors & contributors +// SPDX-License-Identifier: Apache-2.0 + +// Do not edit. Auto-generated via node scripts/imgConvert.mjs + +export const chainsArgonSVG = 'data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyBkYXRhLXYtNGQxZGRmN2I9IiIgdmlld0JveD0iMCAwIDExNSAxMTQiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgY2xhc3M9Im10LTIwIHctWzgwcHhdIG1kOnctWzEwMHB4XSI+CiAgPHRpdGxlPmxvZ288L3RpdGxlPgogIDxnIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPgogICAgPGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTY2MiwgLTEzNCkiIGZpbGw9IiM3ODBmODUiIGZpbGwtcnVsZT0ibm9uemVybyI+PHBhdGggZD0iTTcxOS40NDEwOTEsMTM0IEM3MzQuNjY2MzI1LDEzNCA3NDguOTgwMjI3LDEzOS45MjkxMTMgNzU5Ljc0NjMyNSwxNTAuNjk0NzY2IEM3NzAuNTExOTc3LDE2MS40NjA4NjMgNzc2LjQ0MTA5MSwxNzUuNzc0NzY2IDc3Ni40NDEwOTEsMTkxIEM3NzYuNDQxMDkxLDIwNi4yMjUyMzQgNzcwLjUxMTk3NywyMjAuNTM5MTM3IDc1OS43NDYzMjUsMjMxLjMwNTIzNCBDNzQ4Ljk4MDIyNywyNDIuMDcwODg3IDczNC42NjYzMjUsMjQ4IDcxOS40NDEwOTEsMjQ4IEM3MDQuMjE1ODU2LDI0OCA2ODkuOTAxOTU0LDI0Mi4wNzA4ODcgNjc5LjEzNTg1NiwyMzEuMzA1MjM0IEM2NjguMzcwMjA0LDIyMC41MzkxMzcgNjYyLjQ0MTA5MSwyMDYuMjI1MjM0IDY2Mi40NDEwOTEsMTkxIEM2NjIuNDQxMDkxLDE4MC43MjQ2MzcgNjY1LjIwNTgxMywxNzAuNjUxODkxIDY3MC40MzY2NzYsMTYxLjg3MDc3MyBDNjc1LjUxNTAyLDE1My4zNDQ4MiA2ODIuNzYyMDM2LDE0Ni4yNTQ3NzcgNjkxLjM5NDE5NiwxNDEuMzY2NTgyIEM2OTIuMTk3MDk0LDE0MC45MTI1ODYgNjkzLjIxNTk2OSwxNDEuMTk0NDY5IDY5My42NzAxODgsMTQxLjk5NjkyMiBDNjk0LjEyNDYzLDE0Mi43OTkzNzUgNjkzLjg0MjMwMSwxNDMuODE4NDczIDY5My4wMzk4NDgsMTQ0LjI3MjkxNCBDNjg0LjkxMTc4MiwxNDguODc1NDQxIDY3OC4wODc4MTMsMTU1LjU1MTc4OSA2NzMuMzA1ODI1LDE2My41Nzk4ODMgQzY2OC4zODMxMTgsMTcxLjg0NDIxNSA2NjUuNzgwOTM0LDE4MS4zMjYwMzEgNjY1Ljc4MDkzNCwxOTEgQzY2NS43ODA5MzQsMjA1LjMzMzI3MyA2NzEuMzYyNDgxLDIxOC44MDg0MyA2ODEuNDk3NTcxLDIyOC45NDM1MiBDNjkxLjYzMjY2MSwyMzkuMDc4NjA5IDcwNS4xMDc4MTcsMjQ0LjY2MDE1NiA3MTkuNDQxMDkxLDI0NC42NjAxNTYgQzczMy43NzQzNjQsMjQ0LjY2MDE1NiA3NDcuMjQ5NTIsMjM5LjA3ODYwOSA3NTcuMzg0NjEsMjI4Ljk0MzUyIEM3NjcuNTE5NywyMTguODA4NDMgNzczLjEwMTI0NywyMDUuMzMzMjczIDc3My4xMDEyNDcsMTkxIEM3NzMuMTAxMjQ3LDE3Ni42NjY3MjcgNzY3LjUxOTcsMTYzLjE5MTU3IDc1Ny4zODQ2MSwxNTMuMDU2NDggQzc0Ny4yNDk1MiwxNDIuOTIxMzkxIDczMy43NzQzNjQsMTM3LjMzOTg0NCA3MTkuNDQxMDkxLDEzNy4zMzk4NDQgQzcxMi40MDE1OTEsMTM3LjMzOTg0NCA3MDUuNTU4OTE5LDEzOC42ODE1NyA2OTkuMTAzNDQ2LDE0MS4zMjc4NCBDNjk4LjI1MDAwNSwxNDEuNjc3NDEgNjk3LjI3NDc3LDE0MS4yNjkyODEgNjk2LjkyNDk3NywxNDAuNDE1ODQgQzY5Ni41NzQ5NjIsMTM5LjU2MjM5OCA2OTYuOTgzMzEzLDEzOC41ODcxNjQgNjk3LjgzNjc1NSwxMzguMjM3MzcxIEM3MDQuNjk2MTI2LDEzNS40MjU2NjggNzExLjk2NDk2MiwxMzQgNzE5LjQ0MTA5MSwxMzQgWiBNNzE5LjQ0MTA5MSwxNDEuMTUwNjA1IEM3MzIuNzU2MzgsMTQxLjE1MDYwNSA3NDUuMjc0NTU5LDE0Ni4zMzU4MjQgNzU0LjY5MDAyNCwxNTUuNzUxMDY2IEM3NjQuMTA1MjY2LDE2NS4xNjY1MzEgNzY5LjI5MDQ4NSwxNzcuNjg0NzExIDc2OS4yOTA0ODUsMTkxIEM3NjkuMjkwNDg1LDIwNC4zMTUyODkgNzY0LjEwNTI2NiwyMTYuODMzNDY5IDc1NC42OTAwMjQsMjI2LjI0ODkzNCBDNzQ1LjI3NDU1OSwyMzUuNjY0MTc2IDczMi43NTYzOCwyNDAuODQ5Mzk1IDcxOS40NDEwOTEsMjQwLjg0OTM5NSBDNzEzLjY1MDQ2OSwyNDAuODQ5Mzk1IDcwNy45NzYwNzUsMjM5Ljg2NTAzMSA3MDIuNTc1MzI1LDIzNy45MjM0NjkgQzcwMS43MDc0MTEsMjM3LjYxMTUyNyA3MDEuMjU2NzU1LDIzNi42NTQ5OTYgNzAxLjU2ODY5NiwyMzUuNzg3MzA1IEM3MDEuODgwNjM3LDIzNC45MTkxNjggNzAyLjgzNzE2OSwyMzQuNDY4NzM0IDcwMy43MDUwODMsMjM0Ljc4MDY3NiBDNzA4Ljc0MjQ1OCwyMzYuNTkxMzE2IDcxNC4wMzY3NzgsMjM3LjUwOTU1MSA3MTkuNDQxMDkxLDIzNy41MDk1NTEgQzc0NS4wODY0MTUsMjM3LjUwOTU1MSA3NjUuOTUwNjQxLDIxNi42NDUzMjQgNzY1Ljk1MDY0MSwxOTEgQzc2NS45NTA2NDEsMTY1LjM1NDY3NiA3NDUuMDg2NDE1LDE0NC40OTA0NDkgNzE5LjQ0MTA5MSwxNDQuNDkwNDQ5IEM2OTMuNzk1NzY2LDE0NC40OTA0NDkgNjcyLjkzMTU0LDE2NS4zNTQ2NzYgNjcyLjkzMTU0LDE5MSBDNjcyLjkzMTU0LDIwOC4wNjk5NDEgNjgyLjI1ODYxLDIyMy43NDA3MTEgNjk3LjI3Mjk4OSwyMzEuODk3MDU1IEM2OTguMDgzMjM1LDIzMi4zMzcyNDYgNjk4LjM4MzM3NiwyMzMuMzUxIDY5Ny45NDMxODQsMjM0LjE2MTQ2OSBDNjk3LjUwMjk5MywyMzQuOTcxNzE1IDY5Ni40ODkyMzksMjM1LjI3MTg1NSA2OTUuNjc4NzcsMjM0LjgzMTY2NCBDNjc5LjU4NzYyNiwyMjYuMDkwNjI1IDY2OS41OTE2OTYsMjA5LjI5NTIxOSA2NjkuNTkxNjk2LDE5MSBDNjY5LjU5MTY5NiwxNzcuNjg0NzExIDY3NC43NzY5MTUsMTY1LjE2NjUzMSA2ODQuMTkyMTU3LDE1NS43NTEwNjYgQzY5My42MDc2MjIsMTQ2LjMzNTgyNCA3MDYuMTI1ODAxLDE0MS4xNTA2MDUgNzE5LjQ0MTA5MSwxNDEuMTUwNjA1IFogTTcxNy42Nzg3OSwxNjAuNDcwNDY5IEw3MTguMjk2MTc3LDE2MS4zNTkyMDUgTDczMC43NzQ5NzEsMTc5LjMyMzMyNCBMNzQwLjEyMjk3LDE3Ni44MTg3OTggTDc0Mi4xMTUwMzQsMTg0LjI1MzI4NCBMNzM1LjQ0MDUyNSwxODYuMDQwNjc4IEw3MzcuNjYxNjcsMTg5LjIzNzc0MSBMNzQzLjA2MjkxMSwxODcuNzkwODEgTDc0NS4wNTQ5NzYsMTk1LjIyNTI5NiBMNzQyLjMyODQ0OSwxOTUuOTU1ODAyIEw3NTAuNTYzODMsMjA3LjgwODkxNSBMNzUxLjgxMzEzNCwyMDkuNjA3MzA0IEw3NDAuNDA1ODIxLDIxMi42NjM4ODUgTDczOS43OTE1MzMsMjExLjc1NTM1NiBMNzMxLjEzNTMsMTk4Ljk1NDk5NyBMNzE0LjIxODA3NSwyMDMuNDg3OTU0IEw3MTMuMTI0ODYsMjE4LjkwMDY4MiBMNzEzLjA0NzEyNywyMTkuOTk0NjI0IEw3MDEuNjM5ODIzLDIyMy4wNTEyMDIgTDcwMS44MjI1NTcsMjIwLjg2OTEgTDcwMy4wMjY4NTksMjA2LjQ4NjYzMSBMNzAwLjMwMTU1NiwyMDcuMjE2OTM4IEw2OTguMzA5NDkxLDE5OS43ODI0NTMgTDcwMy43MDkzNzcsMTk4LjMzNTIzIEw3MDQuMDM0NDEzLDE5NC40NTU5MiBMNjk3LjM2MTYxNCwxOTYuMjQ0OTI3IEw2OTUuMzY5NTUsMTg4LjgxMDQ0MSBMNzA0LjcxNjIyNCwxODYuMzA1NzQ0IEw3MDYuNTQyMzEsMTY0LjUwODY0NCBMNzA2LjYzMjYxNSwxNjMuNDMwMjgzIEw3MTcuNjc4NzksMTYwLjQ3MDQ2OSBaIE03MjQuNDAyODkxLDE4OC45OTgyMDMgTDcxNS4wNjkxNSwxOTEuNDk5MTcyIEw3MTQuNzk0MzQyLDE5NS4zNjUwMjMgTDcyNi41NzM4MDcsMTkyLjIwODcyNSBMNzI0LjQwMjg5MSwxODguOTk4MjAzIFogTTcxNi4xMTc5NjksMTc2Ljc0NTUyMyBMNzE1LjY0NjY0MSwxODMuMzc2OTQ4IEw3MTkuODQxNjU3LDE4Mi4yNTI4OTcgTDcxNi4xMTc5NjksMTc2Ljc0NTUyMyBaIiBpZD0ibG9nbyI+PC9wYXRoPjwvZz4KICA8L2c+Cgo8L3N2Zz4K'; diff --git a/packages/apps-config/src/ui/logos/chains/index.ts b/packages/apps-config/src/ui/logos/chains/index.ts index 58423388b67b..4c458a72b87d 100644 --- a/packages/apps-config/src/ui/logos/chains/index.ts +++ b/packages/apps-config/src/ui/logos/chains/index.ts @@ -12,6 +12,7 @@ export { chainsAllfeatSVG } from './generated/allfeatSVG.js'; export { chainsAltairSVG } from './generated/altairSVG.js'; export { chainsAmplitudeSVG } from './generated/amplitudeSVG.js'; export { chainsAnalogSVG } from './generated/analogSVG.js'; +export { chainsArgonSVG } from './generated/argonSVG.js'; export { chainsAssethubKusamaSVG } from './generated/assethub-kusamaSVG.js'; export { chainsBitgreenPNG } from './generated/bitgreenPNG.js'; export { chainsBittensorPNG } from './generated/bittensorPNG.js';