From a48aea36d1cf4c27a90816113d58938ec690dd10 Mon Sep 17 00:00:00 2001 From: lukaw3d Date: Fri, 5 Apr 2024 04:43:50 +0200 Subject: [PATCH 1/2] Remove unused local layer configs --- src/config.ts | 27 --------------------------- 1 file changed, 27 deletions(-) diff --git a/src/config.ts b/src/config.ts index f162db4f3..61a483cb5 100644 --- a/src/config.ts +++ b/src/config.ts @@ -34,7 +34,6 @@ type LayerNetwork = { type LayerConfig = { mainnet: LayerNetwork testnet: LayerNetwork - local: LayerNetwork decimals: number type: RuntimeTypes } @@ -60,12 +59,6 @@ const emeraldConfig: LayerConfig = { blockGasLimit: 30_000_000, runtimeId: '00000000000000000000000000000000000000000000000072c8215e60d5bca7', }, - local: { - activeNodes: undefined, - address: undefined, - blockGasLimit: undefined, - runtimeId: undefined, - }, decimals: 18, type: RuntimeTypes.Evm, } @@ -83,12 +76,6 @@ const cipherConfig: LayerConfig = { blockGasLimit: undefined, // TODO: provide gas limit runtimeId: '0000000000000000000000000000000000000000000000000000000000000000', }, - local: { - activeNodes: undefined, - address: undefined, - blockGasLimit: undefined, - runtimeId: undefined, - }, decimals: 9, type: RuntimeTypes.Oasis, } @@ -108,13 +95,6 @@ const sapphireConfig: LayerConfig = { blockGasLimit: 15_000_000, runtimeId: '000000000000000000000000000000000000000000000000a6d1e3ebf60dff6c', }, - local: { - activeNodes: undefined, - address: undefined, - blockGasLimit: undefined, - runtimeId: undefined, - }, - decimals: 18, type: RuntimeTypes.Evm, } @@ -135,13 +115,6 @@ const pontusxConfig: LayerConfig = { tokens: [NativeToken.EUROe, NativeToken.TEST], fiatCurrency: 'eur', }, - local: { - activeNodes: undefined, - address: undefined, - blockGasLimit: undefined, - runtimeId: undefined, - }, - decimals: 18, type: RuntimeTypes.Evm, } From 7e67c661a932f760df6ee0e63e2f45dd1066e6d2 Mon Sep 17 00:00:00 2001 From: lukaw3d Date: Fri, 5 Apr 2024 04:53:49 +0200 Subject: [PATCH 2/2] Explicitly define tokens per ParaTime --- .changelog/1376.trivial.md | 1 + src/app/components/logo/SmallTokenLogo.tsx | 4 +-- src/config.ts | 36 +++++++++++++++------- src/types/ticker.ts | 8 ----- 4 files changed, 28 insertions(+), 21 deletions(-) create mode 100644 .changelog/1376.trivial.md diff --git a/.changelog/1376.trivial.md b/.changelog/1376.trivial.md new file mode 100644 index 000000000..67b95ebeb --- /dev/null +++ b/.changelog/1376.trivial.md @@ -0,0 +1 @@ +Remove unused local layer configs and explicitly define tokens per ParaTime diff --git a/src/app/components/logo/SmallTokenLogo.tsx b/src/app/components/logo/SmallTokenLogo.tsx index 43a1add08..67ff2176e 100644 --- a/src/app/components/logo/SmallTokenLogo.tsx +++ b/src/app/components/logo/SmallTokenLogo.tsx @@ -5,9 +5,9 @@ import euroELogo from '../../../../public/euroe.png' export const SmallTokenLogo: FC<{ ticker: Ticker }> = ({ ticker }) => { switch (ticker) { - case 'ROSE': + case Ticker.ROSE: return - case 'EUROe': + case Ticker.EUROe: return {ticker} default: return null diff --git a/src/config.ts b/src/config.ts index 61a483cb5..b6a819c86 100644 --- a/src/config.ts +++ b/src/config.ts @@ -1,7 +1,7 @@ // We get this from the generated code to avoid circular imports // eslint-disable-next-line no-restricted-imports import { Layer } from './oasis-nexus/generated/api' -import { getTokenForNetwork, NativeToken, NativeTokenInfo } from './types/ticker' +import { NativeToken, NativeTokenInfo } from './types/ticker' import { SearchScope } from './types/searchScope' export const consensusDecimals = 9 @@ -19,11 +19,11 @@ type LayerNetwork = { runtimeId: string | undefined /** - * What are the native tokens on this layer? - * - * (If not given, the network's default token will be used.) + * What are the tokens on this layer? + * Note: native token must be the first on the list. Others are just incorrectly named "Native" + * See terminology in https://github.com/oasisprotocol/oasis-sdk/blob/5bec25f/client-sdk/go/config/default.go#L109-L120 */ - tokens?: NativeTokenInfo[] + tokens: [NativeTokenInfo, ...NativeTokenInfo[]] /** * What fiat currency should we use for displaying value? @@ -44,6 +44,15 @@ export enum RuntimeTypes { } // consensusConfig: max_block_size = 22020096, max_block_gas = unlimited right now +export const consensusConfig = { + mainnet: { + tokens: [NativeToken.ROSE], + }, + testnet: { + tokens: [NativeToken.TEST], + }, + decimals: consensusDecimals, +} const emeraldConfig: LayerConfig = { mainnet: { @@ -52,12 +61,14 @@ const emeraldConfig: LayerConfig = { // Match max_batch_gas https://github.com/oasisprotocol/emerald-paratime/blob/5a36a646b989e510fadc0029178fe96a24cad101/src/lib.rs#L112-L112 blockGasLimit: 10_000_000, runtimeId: '000000000000000000000000000000000000000000000000e2eaa99fc008f87f', + tokens: [NativeToken.ROSE], }, testnet: { activeNodes: 32, address: 'oasis1qr629x0tg9gm5fyhedgs9lw5eh3d8ycdnsxf0run', blockGasLimit: 30_000_000, runtimeId: '00000000000000000000000000000000000000000000000072c8215e60d5bca7', + tokens: [NativeToken.TEST], }, decimals: 18, type: RuntimeTypes.Evm, @@ -69,12 +80,14 @@ const cipherConfig: LayerConfig = { address: 'oasis1qrnu9yhwzap7rqh6tdcdcpz0zf86hwhycchkhvt8', blockGasLimit: undefined, // TODO: provide gas limit runtimeId: '000000000000000000000000000000000000000000000000e199119c992377cb', + tokens: [NativeToken.ROSE], }, testnet: { activeNodes: 15, address: 'oasis1qqdn25n5a2jtet2s5amc7gmchsqqgs4j0qcg5k0t', blockGasLimit: undefined, // TODO: provide gas limit runtimeId: '0000000000000000000000000000000000000000000000000000000000000000', + tokens: [NativeToken.TEST], }, decimals: 9, type: RuntimeTypes.Oasis, @@ -87,6 +100,7 @@ const sapphireConfig: LayerConfig = { // See max_batch_gas https://github.com/oasisprotocol/sapphire-paratime/blob/main/runtime/src/lib.rs#L166 blockGasLimit: 15_000_000, runtimeId: '000000000000000000000000000000000000000000000000f80306c9858e7279', + tokens: [NativeToken.ROSE], }, testnet: { activeNodes: 21, @@ -94,6 +108,7 @@ const sapphireConfig: LayerConfig = { // See max_batch_gas https://github.com/oasisprotocol/sapphire-paratime/blob/main/runtime/src/lib.rs#L166 blockGasLimit: 15_000_000, runtimeId: '000000000000000000000000000000000000000000000000a6d1e3ebf60dff6c', + tokens: [NativeToken.TEST], }, decimals: 18, type: RuntimeTypes.Evm, @@ -105,13 +120,13 @@ const pontusxConfig: LayerConfig = { address: undefined, blockGasLimit: undefined, runtimeId: undefined, + tokens: [NativeToken.EUROe], }, testnet: { activeNodes: 1, address: 'oasis1qr02702pr8ecjuff2z3es254pw9xl6z2yg9qcc6c', blockGasLimit: 15_000_000, runtimeId: '0000000000000000000000000000000000000000000000004febe52eb412b421', - // Kindly note, the sequence is important as src/app/utils/rpc-utils.ts will utilize the first token. tokens: [NativeToken.EUROe, NativeToken.TEST], fiatCurrency: 'eur', }, @@ -154,13 +169,12 @@ export const getTokensForScope = (scope: SearchScope | undefined): NativeTokenIn if (!scope) { return [] } - const { network, layer } = scope - const networkDefault = getTokenForNetwork(network) - if (layer !== Layer.consensus) { - return paraTimesConfig[layer][network].tokens ?? [networkDefault] + if (scope.layer !== Layer.consensus) { + return paraTimesConfig[scope.layer][scope.network].tokens + } else { + return consensusConfig[scope.network].tokens } - return [networkDefault] } export const getFiatCurrencyForScope = (scope: SearchScope | undefined) => diff --git a/src/types/ticker.ts b/src/types/ticker.ts index 047d5d888..d9cc66d85 100644 --- a/src/types/ticker.ts +++ b/src/types/ticker.ts @@ -1,4 +1,3 @@ -import { Network } from './network' import { TFunction } from 'i18next' export type Ticker = (typeof Ticker)[keyof typeof Ticker] @@ -31,13 +30,6 @@ export const NativeToken = { }, } as const -export const networkToken: Record = { - [Network.mainnet]: NativeToken.ROSE, - [Network.testnet]: NativeToken.TEST, -} - -export const getTokenForNetwork = (network: Network): NativeTokenInfo => networkToken[network] - export const getNameForTicker = (_t: TFunction, ticker: string): string => { // TODO: how do we translate ticker names? return ticker