From 79170e9f56a4b9e6f23539c70f461ad591cc5456 Mon Sep 17 00:00:00 2001 From: soumyaRouterP Date: Fri, 27 Dec 2024 14:48:07 +0530 Subject: [PATCH 1/8] add: shido mainnet --- packages/react/src/chains/evm/index.ts | 1 + packages/react/src/chains/evm/shido.ts | 23 +++++++++++++++++++ packages/react/src/constants/index.ts | 2 ++ .../src/utils/getDefaultSupportedChains.ts | 1 + 4 files changed, 27 insertions(+) create mode 100644 packages/react/src/chains/evm/shido.ts diff --git a/packages/react/src/chains/evm/index.ts b/packages/react/src/chains/evm/index.ts index 97003058..b8483c03 100644 --- a/packages/react/src/chains/evm/index.ts +++ b/packages/react/src/chains/evm/index.ts @@ -57,4 +57,5 @@ export const zkSync: EVMChain = { ...vZkSync, type: 'evm' } as const; export * from './arthera.js'; export * from './oasisSapphire.js'; export * from './router-evm.js'; +export * from './shido.js'; export * from './tangle.js'; diff --git a/packages/react/src/chains/evm/shido.ts b/packages/react/src/chains/evm/shido.ts new file mode 100644 index 00000000..d6738a2d --- /dev/null +++ b/packages/react/src/chains/evm/shido.ts @@ -0,0 +1,23 @@ +import { EVMChain } from '../../types/index.js'; + +export const shido: EVMChain = { + id: 9008, + name: 'Shido', + type: 'evm', + nativeCurrency: { + decimals: 18, + name: 'Shido', + symbol: 'SHIDO', + }, + rpcUrls: { + default: { + http: ['https://rpc-delta-nodes.shidoscan.com'], + }, + }, + blockExplorers: { + default: { + name: 'Shido Explorer', + url: 'https://shidoscan.com', + }, + }, +}; diff --git a/packages/react/src/constants/index.ts b/packages/react/src/constants/index.ts index f6495681..68c3cef1 100644 --- a/packages/react/src/constants/index.ts +++ b/packages/react/src/constants/index.ts @@ -30,6 +30,7 @@ export const CHAIN_ID = { routerEvm: '9600', saakuru: '7225878', scroll: '534352', + shido: '9008', taiko: '167000', tangle: '5845', vanar: '2040', @@ -108,6 +109,7 @@ export const CHAIN_DATA: Record = { [CHAIN_ID.routerEvm]: chains.routerEvm, [CHAIN_ID.saakuru]: chains.saakuru, [CHAIN_ID.scroll]: chains.scroll, + [CHAIN_ID.shido]: chains.shido, [CHAIN_ID.taiko]: chains.taiko, [CHAIN_ID.tangle]: chains.tangle, [CHAIN_ID.vanar]: chains.vanar, diff --git a/packages/react/src/utils/getDefaultSupportedChains.ts b/packages/react/src/utils/getDefaultSupportedChains.ts index 36ae3295..07d6d17a 100644 --- a/packages/react/src/utils/getDefaultSupportedChains.ts +++ b/packages/react/src/utils/getDefaultSupportedChains.ts @@ -56,6 +56,7 @@ const getDefaultSupportedChains = (testnet?: boolean): SupportedChainsByType => evm.rootstock, evm.saakuru, evm.scroll, + evm.shido, evm.taiko, evm.tangle, evm.vanar, From 456b67561164cd63cb16ebf9fb3bb92295c5691f Mon Sep 17 00:00:00 2001 From: soumyaRouterP Date: Fri, 27 Dec 2024 15:00:32 +0530 Subject: [PATCH 2/8] add: odyssey mainnet --- packages/react/src/chains/evm/index.ts | 1 + packages/react/src/chains/evm/odyssey.ts | 23 +++++++++++++++++++ packages/react/src/constants/index.ts | 2 ++ .../src/utils/getDefaultSupportedChains.ts | 1 + 4 files changed, 27 insertions(+) create mode 100644 packages/react/src/chains/evm/odyssey.ts diff --git a/packages/react/src/chains/evm/index.ts b/packages/react/src/chains/evm/index.ts index b8483c03..0dbf2486 100644 --- a/packages/react/src/chains/evm/index.ts +++ b/packages/react/src/chains/evm/index.ts @@ -56,6 +56,7 @@ export const xLayer: EVMChain = { ...vxLayer, type: 'evm' } as const; export const zkSync: EVMChain = { ...vZkSync, type: 'evm' } as const; export * from './arthera.js'; export * from './oasisSapphire.js'; +export * from './odyssey.js'; export * from './router-evm.js'; export * from './shido.js'; export * from './tangle.js'; diff --git a/packages/react/src/chains/evm/odyssey.ts b/packages/react/src/chains/evm/odyssey.ts new file mode 100644 index 00000000..3369f851 --- /dev/null +++ b/packages/react/src/chains/evm/odyssey.ts @@ -0,0 +1,23 @@ +import { EVMChain } from '../../types/index.js'; + +export const odyssey: EVMChain = { + id: 153153, + name: 'Odyssey', + type: 'evm', + nativeCurrency: { + decimals: 18, + name: 'Dione token', + symbol: 'DIONE', + }, + rpcUrls: { + default: { + http: ['https://node.dioneprotocol.com/ext/bc/D/rpc'], + }, + }, + blockExplorers: { + default: { + name: 'Odyssey Explorer', + url: 'https://odyssey-explorer.ithaca.xyz', + }, + }, +}; diff --git a/packages/react/src/constants/index.ts b/packages/react/src/constants/index.ts index 68c3cef1..c65fc50e 100644 --- a/packages/react/src/constants/index.ts +++ b/packages/react/src/constants/index.ts @@ -22,6 +22,7 @@ export const CHAIN_ID = { metis: '1088', mode: '34443', oasisSapphire: '23294', + odyssey: '153153', optimism: '10', polygon: '137', polygon_zkevm: '1101', @@ -101,6 +102,7 @@ export const CHAIN_DATA: Record = { [CHAIN_ID.metis]: chains.metis, [CHAIN_ID.mode]: chains.mode, [CHAIN_ID.oasisSapphire]: chains.oasisSapphire, + [CHAIN_ID.odyssey]: chains.odyssey, [CHAIN_ID.optimism]: chains.optimism, [CHAIN_ID.polygon]: chains.polygon, [CHAIN_ID.polygon_zkevm]: chains.polygonZkEvm, diff --git a/packages/react/src/utils/getDefaultSupportedChains.ts b/packages/react/src/utils/getDefaultSupportedChains.ts index 07d6d17a..ff180568 100644 --- a/packages/react/src/utils/getDefaultSupportedChains.ts +++ b/packages/react/src/utils/getDefaultSupportedChains.ts @@ -48,6 +48,7 @@ const getDefaultSupportedChains = (testnet?: boolean): SupportedChainsByType => evm.metis, evm.mode, evm.oasisSapphire, + evm.odyssey, evm.optimism, evm.polygon, evm.polygonZkEvm, From c7013d01e12172f06418b5e2fa3a4ac6af834320 Mon Sep 17 00:00:00 2001 From: soumyaRouterP Date: Fri, 27 Dec 2024 15:11:04 +0530 Subject: [PATCH 3/8] add: nahmii mainnet --- packages/react/src/chains/evm/index.ts | 1 + packages/react/src/chains/evm/nahmii.ts | 23 +++++++++++++++++++ packages/react/src/constants/index.ts | 2 ++ .../src/utils/getDefaultSupportedChains.ts | 1 + 4 files changed, 27 insertions(+) create mode 100644 packages/react/src/chains/evm/nahmii.ts diff --git a/packages/react/src/chains/evm/index.ts b/packages/react/src/chains/evm/index.ts index 0dbf2486..ac7b3fb6 100644 --- a/packages/react/src/chains/evm/index.ts +++ b/packages/react/src/chains/evm/index.ts @@ -55,6 +55,7 @@ export const vanar: EVMChain = { ...vVanar, type: 'evm' } as const; export const xLayer: EVMChain = { ...vxLayer, type: 'evm' } as const; export const zkSync: EVMChain = { ...vZkSync, type: 'evm' } as const; export * from './arthera.js'; +export * from './nahmii.js'; export * from './oasisSapphire.js'; export * from './odyssey.js'; export * from './router-evm.js'; diff --git a/packages/react/src/chains/evm/nahmii.ts b/packages/react/src/chains/evm/nahmii.ts new file mode 100644 index 00000000..192d93c7 --- /dev/null +++ b/packages/react/src/chains/evm/nahmii.ts @@ -0,0 +1,23 @@ +import { EVMChain } from '../../types/index.js'; + +export const nahmii: EVMChain = { + id: 4061, + name: 'Nahmii', + type: 'evm', + nativeCurrency: { + decimals: 18, + name: 'Ether', + symbol: 'ETH', + }, + rpcUrls: { + default: { + http: ['https://rpc.n3.nahmii.io'], + }, + }, + blockExplorers: { + default: { + name: 'Nahmii Explorer', + url: 'https://explorer.nahmii.io', + }, + }, +}; diff --git a/packages/react/src/constants/index.ts b/packages/react/src/constants/index.ts index c65fc50e..9bf76cb5 100644 --- a/packages/react/src/constants/index.ts +++ b/packages/react/src/constants/index.ts @@ -21,6 +21,7 @@ export const CHAIN_ID = { matchain: '698', metis: '1088', mode: '34443', + nahmii: '4061', oasisSapphire: '23294', odyssey: '153153', optimism: '10', @@ -101,6 +102,7 @@ export const CHAIN_DATA: Record = { [CHAIN_ID.matchain]: chains.matchain, [CHAIN_ID.metis]: chains.metis, [CHAIN_ID.mode]: chains.mode, + [CHAIN_ID.nahmii]: chains.nahmii, [CHAIN_ID.oasisSapphire]: chains.oasisSapphire, [CHAIN_ID.odyssey]: chains.odyssey, [CHAIN_ID.optimism]: chains.optimism, diff --git a/packages/react/src/utils/getDefaultSupportedChains.ts b/packages/react/src/utils/getDefaultSupportedChains.ts index ff180568..4a31897b 100644 --- a/packages/react/src/utils/getDefaultSupportedChains.ts +++ b/packages/react/src/utils/getDefaultSupportedChains.ts @@ -47,6 +47,7 @@ const getDefaultSupportedChains = (testnet?: boolean): SupportedChainsByType => evm.matchain, evm.metis, evm.mode, + evm.nahmii, evm.oasisSapphire, evm.odyssey, evm.optimism, From 6c4114c670228db685d42e6f12ef9506173df1d8 Mon Sep 17 00:00:00 2001 From: soumyaRouterP Date: Fri, 27 Dec 2024 15:16:48 +0530 Subject: [PATCH 4/8] add: nero mainnet --- packages/react/src/chains/evm/index.ts | 1 + packages/react/src/chains/evm/nero.ts | 23 +++++++++++++++++++ packages/react/src/constants/index.ts | 2 ++ .../src/utils/getDefaultSupportedChains.ts | 1 + 4 files changed, 27 insertions(+) create mode 100644 packages/react/src/chains/evm/nero.ts diff --git a/packages/react/src/chains/evm/index.ts b/packages/react/src/chains/evm/index.ts index ac7b3fb6..9d467bd0 100644 --- a/packages/react/src/chains/evm/index.ts +++ b/packages/react/src/chains/evm/index.ts @@ -56,6 +56,7 @@ export const xLayer: EVMChain = { ...vxLayer, type: 'evm' } as const; export const zkSync: EVMChain = { ...vZkSync, type: 'evm' } as const; export * from './arthera.js'; export * from './nahmii.js'; +export * from './nero.js'; export * from './oasisSapphire.js'; export * from './odyssey.js'; export * from './router-evm.js'; diff --git a/packages/react/src/chains/evm/nero.ts b/packages/react/src/chains/evm/nero.ts new file mode 100644 index 00000000..68d3a7fd --- /dev/null +++ b/packages/react/src/chains/evm/nero.ts @@ -0,0 +1,23 @@ +import { EVMChain } from '../../types/index.js'; + +export const nero: EVMChain = { + id: 1689, + name: 'Nero', + type: 'evm', + nativeCurrency: { + decimals: 18, + name: 'Nero Token', + symbol: 'NERO', + }, + rpcUrls: { + default: { + http: ['https://rpc.nerochain.io'], + }, + }, + blockExplorers: { + default: { + name: 'Nero Explorer', + url: 'https://neroscan.io', + }, + }, +}; diff --git a/packages/react/src/constants/index.ts b/packages/react/src/constants/index.ts index 9bf76cb5..5af74d4f 100644 --- a/packages/react/src/constants/index.ts +++ b/packages/react/src/constants/index.ts @@ -22,6 +22,7 @@ export const CHAIN_ID = { metis: '1088', mode: '34443', nahmii: '4061', + nero: '1689', oasisSapphire: '23294', odyssey: '153153', optimism: '10', @@ -103,6 +104,7 @@ export const CHAIN_DATA: Record = { [CHAIN_ID.metis]: chains.metis, [CHAIN_ID.mode]: chains.mode, [CHAIN_ID.nahmii]: chains.nahmii, + [CHAIN_ID.nero]: chains.nero, [CHAIN_ID.oasisSapphire]: chains.oasisSapphire, [CHAIN_ID.odyssey]: chains.odyssey, [CHAIN_ID.optimism]: chains.optimism, diff --git a/packages/react/src/utils/getDefaultSupportedChains.ts b/packages/react/src/utils/getDefaultSupportedChains.ts index 4a31897b..fcd08b29 100644 --- a/packages/react/src/utils/getDefaultSupportedChains.ts +++ b/packages/react/src/utils/getDefaultSupportedChains.ts @@ -48,6 +48,7 @@ const getDefaultSupportedChains = (testnet?: boolean): SupportedChainsByType => evm.metis, evm.mode, evm.nahmii, + evm.nero, evm.oasisSapphire, evm.odyssey, evm.optimism, From 8b410a4621acffc758988544c6cc10c1a8a36262 Mon Sep 17 00:00:00 2001 From: soumyaRouterP Date: Fri, 27 Dec 2024 15:21:30 +0530 Subject: [PATCH 5/8] add: redbelly network mainnet --- packages/react/src/chains/evm/index.ts | 1 + packages/react/src/chains/evm/redbelly.ts | 23 +++++++++++++++++++ packages/react/src/constants/index.ts | 2 ++ .../src/utils/getDefaultSupportedChains.ts | 1 + 4 files changed, 27 insertions(+) create mode 100644 packages/react/src/chains/evm/redbelly.ts diff --git a/packages/react/src/chains/evm/index.ts b/packages/react/src/chains/evm/index.ts index 9d467bd0..9be9fab6 100644 --- a/packages/react/src/chains/evm/index.ts +++ b/packages/react/src/chains/evm/index.ts @@ -59,6 +59,7 @@ export * from './nahmii.js'; export * from './nero.js'; export * from './oasisSapphire.js'; export * from './odyssey.js'; +export * from './redbelly.js'; export * from './router-evm.js'; export * from './shido.js'; export * from './tangle.js'; diff --git a/packages/react/src/chains/evm/redbelly.ts b/packages/react/src/chains/evm/redbelly.ts new file mode 100644 index 00000000..a5ce355b --- /dev/null +++ b/packages/react/src/chains/evm/redbelly.ts @@ -0,0 +1,23 @@ +import { EVMChain } from '../../types/index.js'; + +export const redbelly: EVMChain = { + id: 151, + name: 'RedBelly Network', + type: 'evm', + nativeCurrency: { + decimals: 18, + name: 'RedBelly Network Token', + symbol: 'RBNT', + }, + rpcUrls: { + default: { + http: ['https://governors.mainnet.redbelly.network'], + }, + }, + blockExplorers: { + default: { + name: 'RedBelly Explorer', + url: 'https://redbelly.routescan.io', + }, + }, +}; diff --git a/packages/react/src/constants/index.ts b/packages/react/src/constants/index.ts index 5af74d4f..234366bf 100644 --- a/packages/react/src/constants/index.ts +++ b/packages/react/src/constants/index.ts @@ -28,6 +28,7 @@ export const CHAIN_ID = { optimism: '10', polygon: '137', polygon_zkevm: '1101', + redbelly: '151', rollux: '570', rootstock: '30', routerEvm: '9600', @@ -110,6 +111,7 @@ export const CHAIN_DATA: Record = { [CHAIN_ID.optimism]: chains.optimism, [CHAIN_ID.polygon]: chains.polygon, [CHAIN_ID.polygon_zkevm]: chains.polygonZkEvm, + [CHAIN_ID.redbelly]: chains.redbelly, [CHAIN_ID.rollux]: chains.rollux, [CHAIN_ID.rootstock]: chains.rootstock, [CHAIN_ID.routerEvm]: chains.routerEvm, diff --git a/packages/react/src/utils/getDefaultSupportedChains.ts b/packages/react/src/utils/getDefaultSupportedChains.ts index fcd08b29..6195c521 100644 --- a/packages/react/src/utils/getDefaultSupportedChains.ts +++ b/packages/react/src/utils/getDefaultSupportedChains.ts @@ -54,6 +54,7 @@ const getDefaultSupportedChains = (testnet?: boolean): SupportedChainsByType => evm.optimism, evm.polygon, evm.polygonZkEvm, + evm.redbelly, evm.routerEvm, evm.rollux, evm.rootstock, From 21b979af944f6006517211374680b8a483229248 Mon Sep 17 00:00:00 2001 From: soumyaRouterP Date: Fri, 27 Dec 2024 15:40:59 +0530 Subject: [PATCH 6/8] update: overrideChainConfig type --- packages/react/src/utils/createChainConfigs.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/react/src/utils/createChainConfigs.ts b/packages/react/src/utils/createChainConfigs.ts index 8b7143c7..c3c79f6d 100644 --- a/packages/react/src/utils/createChainConfigs.ts +++ b/packages/react/src/utils/createChainConfigs.ts @@ -33,7 +33,7 @@ const createChainConfigs = ( const overrideChainConfig = ( chainsByType: SupportedChainsByType, - overrides: Partial> | undefined, + overrides: Partial>> | undefined, ) => { const supportedChains: SupportedChainsByType = { bitcoin: [], From 830ae9d8464ef4de30bf18c89958bc26803fcdc7 Mon Sep 17 00:00:00 2001 From: soumyaRouterP Date: Fri, 27 Dec 2024 15:44:38 +0530 Subject: [PATCH 7/8] update: TangledConfig type --- packages/react/src/types/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/react/src/types/index.ts b/packages/react/src/types/index.ts index 2c94ff9a..d641e04a 100644 --- a/packages/react/src/types/index.ts +++ b/packages/react/src/types/index.ts @@ -82,7 +82,7 @@ export interface TangledConfig { // Override default supported chains chains?: SupportedChainsByType; // Override default chain configs. TODO: Add chain config type - chainConfigs: Partial>; + chainConfigs: Partial>>; // Enable testnets. Defaults to false. If true, only testnet chains will be provided in the context. // testnet?: boolean; From 242b1cc53e13a8148663fe4b190bc707538bded4 Mon Sep 17 00:00:00 2001 From: soumyaRouterP Date: Fri, 27 Dec 2024 15:47:37 +0530 Subject: [PATCH 8/8] update: createChainConfigs args type --- packages/react/src/utils/createChainConfigs.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/react/src/utils/createChainConfigs.ts b/packages/react/src/utils/createChainConfigs.ts index c3c79f6d..70a4e42d 100644 --- a/packages/react/src/utils/createChainConfigs.ts +++ b/packages/react/src/utils/createChainConfigs.ts @@ -4,7 +4,7 @@ import getDefaultSupportedChains from './getDefaultSupportedChains.js'; const createChainConfigs = ( chains: SupportedChainsByType | undefined, - overrides?: Partial>, + overrides?: Partial>>, testnet?: boolean, ): SupportedChainsByType => { let supportedChains: SupportedChainsByType = {