From db6c5c4a5e47b640d633967257139f0a40dcef2c Mon Sep 17 00:00:00 2001 From: Elmar Kenigs Date: Fri, 3 Feb 2023 11:01:22 +0200 Subject: [PATCH] Added to destination and source chains ss58Format and genesisHash (#56) * Added to destination and source chains ss58Format and genesisHash * Added genesisHash and ss58format to chains * Fixed tests --- .../src/config/moonbase/moonbase.chains.ts | 15 +++++++ .../src/config/moonbeam/moonbeam.chains.ts | 27 ++++++++++++ .../src/config/moonriver/moonriver.chains.ts | 42 +++++++++++++++++++ .../extrinsic/polkadotXcm/polkadotXcm.test.ts | 3 ++ .../src/extrinsic/xTokens/xTokens.test.ts | 3 ++ .../src/extrinsic/xTransfer/xTransfer.test.ts | 3 ++ .../src/extrinsic/xcmPallet/xcmPallet.test.ts | 3 ++ packages/config/src/interfaces.ts | 4 +- packages/sdk/src/sdk/sdk.deposit.ts | 2 - packages/sdk/src/sdk/sdk.withdraw.ts | 2 - 10 files changed, 98 insertions(+), 6 deletions(-) diff --git a/packages/config/src/config/moonbase/moonbase.chains.ts b/packages/config/src/config/moonbase/moonbase.chains.ts index eeff5a07..66841162 100644 --- a/packages/config/src/config/moonbase/moonbase.chains.ts +++ b/packages/config/src/config/moonbase/moonbase.chains.ts @@ -17,6 +17,9 @@ export const MOONBASE_CHAINS_MAP: ChainsMap = { ws: 'wss://frag-moonbase-relay-rpc-ws.g.moonbase.moonbeam.network', weight: 1_000_000_000, parachainId: 0, + ss58Format: 42, + genesisHash: + '0xe1ea3ab1d46ba8f4898b6b4b9c54ffc05282d299f89e84bd0fd08067758c9443', }, [ChainKey.BitCountryPioneer]: { key: ChainKey.BitCountryPioneer, @@ -25,6 +28,9 @@ export const MOONBASE_CHAINS_MAP: ChainsMap = { weight: 1_000_000_000, parachainId: 2096, moonAssetId: 0, + ss58Format: 268, + genesisHash: + '0xb27da7332d3a229f0d5f2a83f711b3f74a70f22b68021e92c37817057de58e74', }, [ChainKey.LitentryAlphanet]: { key: ChainKey.LitentryAlphanet, @@ -32,6 +38,9 @@ export const MOONBASE_CHAINS_MAP: ChainsMap = { ws: 'wss://moonbase-parachain-sg-0.litentry.io', weight: 1_000_000_000, parachainId: 2106, + ss58Format: 131, + genesisHash: + '0x4decfd421755d9008781d00ce40ea4cf47ec24a3717a34ca995126fc4a78c4f8', }, [ChainKey.MoonbaseBeta]: { key: ChainKey.MoonbaseBeta, @@ -41,6 +50,9 @@ export const MOONBASE_CHAINS_MAP: ChainsMap = { palletInstance: 3, parachainId: 888, unitsPerSecond: 50_000_000_000_000_000n, + ss58Format: 0, + genesisHash: + '0xeebb5d05763801e54d6a7a60a4b7998ac125c4d050dcec418dd07ea959a54464', weights: { descendOriginWeight: 9_620_000n, withdrawAssetWeight: 200_000_000n, @@ -55,5 +67,8 @@ export const MOONBASE_CHAINS_MAP: ChainsMap = { weight: 1_000_000_000, parachainId: 1001, palletInstance: 50, + ss58Format: 42, + genesisHash: + '0x2c63baa36880c9cf820d5ccfc4e49841bfd714e93ede2bebc4abc4531dd4e8a0', }, }; diff --git a/packages/config/src/config/moonbeam/moonbeam.chains.ts b/packages/config/src/config/moonbeam/moonbeam.chains.ts index fb6c01f1..8aafb909 100644 --- a/packages/config/src/config/moonbeam/moonbeam.chains.ts +++ b/packages/config/src/config/moonbeam/moonbeam.chains.ts @@ -22,6 +22,9 @@ export const MOONBEAM_CHAINS_MAP: ChainsMap = { weight: 1_000_000_000, parachainId: 2000, moonAssetId: 0, + ss58Format: 10, + genesisHash: + '0xfc41b9bd8ef8fe53d58c7ea67c794c7ec9a73daf05e6d54b14ff6342c99ba64c', }, [ChainKey.Astar]: { key: ChainKey.Astar, @@ -31,6 +34,9 @@ export const MOONBEAM_CHAINS_MAP: ChainsMap = { parachainId: 2006, moonAssetId: 18446744073709551619n, palletInstance: 10, + ss58Format: 5, + genesisHash: + '0x9eb76c5184c4ab8679d2d5d819fdf90b9c001403e9e17da2e14b6d8aec4029c6', }, [ChainKey.BifrostPolkadot]: { key: ChainKey.BifrostPolkadot, @@ -39,6 +45,9 @@ export const MOONBEAM_CHAINS_MAP: ChainsMap = { weight: 1_000_000_000, parachainId: 2030, moonAssetId: 1, + ss58Format: 6, + genesisHash: + '0x262e1b2ad728475fd6fe88e62d34c200abe6fd693931ddad144059b1eb884e5b', }, [ChainKey.Darwinia]: { key: ChainKey.Darwinia, @@ -46,6 +55,9 @@ export const MOONBEAM_CHAINS_MAP: ChainsMap = { ws: 'wss://parachain-rpc.darwinia.network', weight: 1_000_000_000, parachainId: 2046, + ss58Format: 18, + genesisHash: + '0xe71578b37a7c799b0ab4ee87ffa6f059a6b98f71f06fb8c84a8d88013a548ad6', }, [ChainKey.Interlay]: { key: ChainKey.Interlay, @@ -53,6 +65,9 @@ export const MOONBEAM_CHAINS_MAP: ChainsMap = { ws: 'wss://interlay.api.onfinality.io/public-ws', weight: 1_000_000_000, parachainId: 2032, + ss58Format: 2032, + genesisHash: + '0xbf88efe70e9e0e916416e8bed61f2b45717f517d7f3523e33c7b001e5ffcbc72', }, [ChainKey.Parallel]: { key: ChainKey.Parallel, @@ -61,6 +76,9 @@ export const MOONBEAM_CHAINS_MAP: ChainsMap = { weight: 1_000_000_000, parachainId: 2012, moonAssetId: 114, + ss58Format: 172, + genesisHash: + '0xe61a41c53f5dcd0beb09df93b34402aada44cb05117b71059cce40a2723a4e97', }, [ChainKey.Phala]: { key: ChainKey.Phala, @@ -69,6 +87,9 @@ export const MOONBEAM_CHAINS_MAP: ChainsMap = { weight: 1_000_000_000, parachainId: 2035, moonAssetId: 1, + ss58Format: 30, + genesisHash: + '0x1bb969d85965e4bb5a651abbedf21a54b6b31a21f66b5401cc3f1e286268d736', }, [ChainKey.Polkadot]: { key: ChainKey.Polkadot, @@ -76,6 +97,9 @@ export const MOONBEAM_CHAINS_MAP: ChainsMap = { ws: 'wss://rpc.polkadot.io', weight: 1_000_000_000, parachainId: 0, + ss58Format: 42, + genesisHash: + '0x91b171bb158e2d3848fa23a9f1c25182fb8e20313b2c1eb49219da7a70ce90c3', }, [ChainKey.Statemint]: { key: ChainKey.Statemint, @@ -84,5 +108,8 @@ export const MOONBEAM_CHAINS_MAP: ChainsMap = { weight: 1_000_000_000, parachainId: 1000, palletInstance: 50, + ss58Format: 42, + genesisHash: + '0x68d56f15f85d3136970ec16946040bc1752654e906147f7e43e9d539d7c3de2f', }, }; diff --git a/packages/config/src/config/moonriver/moonriver.chains.ts b/packages/config/src/config/moonriver/moonriver.chains.ts index d2f6a769..5edf590c 100644 --- a/packages/config/src/config/moonriver/moonriver.chains.ts +++ b/packages/config/src/config/moonriver/moonriver.chains.ts @@ -26,6 +26,9 @@ export const MOONRIVER_CHAINS_MAP: ChainsMap = { ws: 'wss://bifrost-rpc.liebi.com/ws', weight: 1_000_000_000, parachainId: 2001, + ss58Format: 6, + genesisHash: + '0x9f28c6a68e0fc9646eff64935684f6eeeece527e37bbe1f213d22caa1d9d6bed', }, [ChainKey.Calamari]: { key: ChainKey.Calamari, @@ -34,6 +37,9 @@ export const MOONRIVER_CHAINS_MAP: ChainsMap = { weight: 1_000_000_000, parachainId: 2084, moonAssetId: 11, + ss58Format: 78, + genesisHash: + '0x4ac80c99289841dd946ef92765bf659a307d39189b3ce374a92b5f0415ee17a1', }, [ChainKey.CrustShadow]: { key: ChainKey.CrustShadow, @@ -42,6 +48,9 @@ export const MOONRIVER_CHAINS_MAP: ChainsMap = { weight: 1_000_000_000, parachainId: 2012, moonAssetId: 232263652204149413431520870009560565298n, + ss58Format: 66, + genesisHash: + '0xd4c0c08ca49dc7c680c3dac71a7c0703e5b222f4b6c03fe4c5219bb8f22c18dc', }, [ChainKey.Crab]: { key: ChainKey.Crab, @@ -49,6 +58,9 @@ export const MOONRIVER_CHAINS_MAP: ChainsMap = { ws: 'wss://crab-parachain-rpc.darwinia.network', weight: 1_000_000_000, parachainId: 2105, + ss58Format: 42, + genesisHash: + '0xeac895d7768b17837a9c3a9f0280c01502c3ef40193df923490a0fa9c60ea076', }, [ChainKey.Integritee]: { key: ChainKey.Integritee, @@ -56,6 +68,9 @@ export const MOONRIVER_CHAINS_MAP: ChainsMap = { ws: 'wss://integritee-kusama.api.onfinality.io/public-ws', weight: 1_000_000_000, parachainId: 2015, + ss58Format: 13, + genesisHash: + '0xcdedc8eadbfa209d3f207bba541e57c3c58a667b05a2e1d1e86353c9000758da', }, [ChainKey.Karura]: { key: ChainKey.Karura, @@ -64,6 +79,9 @@ export const MOONRIVER_CHAINS_MAP: ChainsMap = { weight: 1_000_000_000, parachainId: 2000, moonAssetId: 3, + ss58Format: 8, + genesisHash: + '0xbaf5aabe40646d11f0ee8abbdc64f4a4b7674925cba08e4a05ff9ebed6e2126b', }, [ChainKey.Khala]: { key: ChainKey.Khala, @@ -73,6 +91,9 @@ export const MOONRIVER_CHAINS_MAP: ChainsMap = { parachainId: 2004, moonAssetId: 6, palletInstance: 10, + ss58Format: 30, + genesisHash: + '0xd43540ba6d3eb4897c28a77d48cb5b729fea37603cbbfc7a86a73b72adb3be8d', }, [ChainKey.Kintsugi]: { key: ChainKey.Kintsugi, @@ -80,6 +101,9 @@ export const MOONRIVER_CHAINS_MAP: ChainsMap = { ws: 'wss://api-kusama.interlay.io/parachain', weight: 1_000_000_000, parachainId: 2092, + ss58Format: 2092, + genesisHash: + '0x9af9a64e6e4da8e3073901c3ff0cc4c3aad9563786d89daf6ad820b6e14a0b8b', }, [ChainKey.Kusama]: { key: ChainKey.Kusama, @@ -87,6 +111,9 @@ export const MOONRIVER_CHAINS_MAP: ChainsMap = { ws: 'wss://kusama-rpc.polkadot.io', weight: 1_000_000_000, parachainId: 0, + ss58Format: 2, + genesisHash: + '0xb0a8d493285c2df73290dfb7e61f870f17b41801197a149ca93654499ea3dafe', }, [ChainKey.Litmus]: { key: ChainKey.Litmus, @@ -94,6 +121,9 @@ export const MOONRIVER_CHAINS_MAP: ChainsMap = { ws: 'wss://rpc.litmus-parachain.litentry.io', weight: 1_000_000_000, parachainId: 2106, + ss58Format: 131, + genesisHash: + '0xda5831fbc8570e3c6336d0d72b8c08f8738beefec812df21ef2afc2982ede09c', }, [ChainKey.Parallel]: { key: ChainKey.Parallel, @@ -102,6 +132,9 @@ export const MOONRIVER_CHAINS_MAP: ChainsMap = { weight: 1_000_000_000, parachainId: 2085, moonAssetId: 113, + ss58Format: 110, + genesisHash: + '0x64a1c658a48b2e70a7fb1ad4c39eea35022568c20fc44a6e2e3d0a57aee6053b', }, [ChainKey.Robonomics]: { key: ChainKey.Robonomics, @@ -109,6 +142,9 @@ export const MOONRIVER_CHAINS_MAP: ChainsMap = { ws: 'wss://robonomics.api.onfinality.io/public-ws', weight: 1_000_000_000, parachainId: 2048, + ss58Format: 32, + genesisHash: + '0x631ccc82a078481584041656af292834e1ae6daab61d2875b4dd0c14bb9b17bc', }, [ChainKey.Shiden]: { key: ChainKey.Shiden, @@ -118,6 +154,9 @@ export const MOONRIVER_CHAINS_MAP: ChainsMap = { parachainId: 2007, moonAssetId: 18446744073709551620n, palletInstance: 10, + ss58Format: 5, + genesisHash: + '0xf1cf9022c7ebb34b162d5b5e34e705a5a740b2d0ecc1009fb89023e62a488108', }, [ChainKey.Statemine]: { key: ChainKey.Statemine, @@ -126,5 +165,8 @@ export const MOONRIVER_CHAINS_MAP: ChainsMap = { weight: 1_000_000_000, parachainId: 1000, palletInstance: 50, + ss58Format: 2, + genesisHash: + '0x48239ef607d7928874027a43a67689209727dfb3d3dc5e5b03a39bdc2eda771a', }, }; diff --git a/packages/config/src/extrinsic/polkadotXcm/polkadotXcm.test.ts b/packages/config/src/extrinsic/polkadotXcm/polkadotXcm.test.ts index eb3a0b66..b1b3b15c 100644 --- a/packages/config/src/extrinsic/polkadotXcm/polkadotXcm.test.ts +++ b/packages/config/src/extrinsic/polkadotXcm/polkadotXcm.test.ts @@ -21,6 +21,9 @@ describe('polkadotXcm', () => { ws: 'wss://frag-moonbase-relay-rpc-ws.g.moonbase.moonbeam.network', weight: 1_000_000_000, parachainId: 0, + ss58Format: 42, + genesisHash: + '0xe1ea3ab1d46ba8f4898b6b4b9c54ffc05282d299f89e84bd0fd08067758c9443', }; const extrinsic = polkadotXcm(chain); diff --git a/packages/config/src/extrinsic/xTokens/xTokens.test.ts b/packages/config/src/extrinsic/xTokens/xTokens.test.ts index 8e2994db..4e4709b6 100644 --- a/packages/config/src/extrinsic/xTokens/xTokens.test.ts +++ b/packages/config/src/extrinsic/xTokens/xTokens.test.ts @@ -24,6 +24,9 @@ describe('xTokens', () => { ws: 'wss://frag-moonbase-relay-rpc-ws.g.moonbase.moonbeam.network', weight: 1_000_000_000, parachainId: 0, + ss58Format: 42, + genesisHash: + '0xe1ea3ab1d46ba8f4898b6b4b9c54ffc05282d299f89e84bd0fd08067758c9443', }; const asset = { id: '16797826370226091782818345603793389938', diff --git a/packages/config/src/extrinsic/xTransfer/xTransfer.test.ts b/packages/config/src/extrinsic/xTransfer/xTransfer.test.ts index ed752509..ad44c426 100644 --- a/packages/config/src/extrinsic/xTransfer/xTransfer.test.ts +++ b/packages/config/src/extrinsic/xTransfer/xTransfer.test.ts @@ -21,6 +21,9 @@ describe('xTransfer', () => { ws: 'wss://frag-moonbase-relay-rpc-ws.g.moonbase.moonbeam.network', weight: 1_000_000_000, parachainId: 0, + ss58Format: 42, + genesisHash: + '0xe1ea3ab1d46ba8f4898b6b4b9c54ffc05282d299f89e84bd0fd08067758c9443', }; const extrinsic = xTransfer(chain); diff --git a/packages/config/src/extrinsic/xcmPallet/xcmPallet.test.ts b/packages/config/src/extrinsic/xcmPallet/xcmPallet.test.ts index 04293ac1..466cf170 100644 --- a/packages/config/src/extrinsic/xcmPallet/xcmPallet.test.ts +++ b/packages/config/src/extrinsic/xcmPallet/xcmPallet.test.ts @@ -21,6 +21,9 @@ describe('xcmPallet', () => { ws: 'wss://frag-moonbase-relay-rpc-ws.g.moonbase.moonbeam.network', weight: 1_000_000_000, parachainId: 0, + ss58Format: 42, + genesisHash: + '0xe1ea3ab1d46ba8f4898b6b4b9c54ffc05282d299f89e84bd0fd08067758c9443', }; const extrinsic = xcmPallet(chain); diff --git a/packages/config/src/interfaces.ts b/packages/config/src/interfaces.ts index af97b0e6..85493556 100644 --- a/packages/config/src/interfaces.ts +++ b/packages/config/src/interfaces.ts @@ -49,8 +49,8 @@ export interface Chain * unitsPerSecond = weightPerSecond * baseExtrinsicCost / baseExtrinsicWeight */ unitsPerSecond?: bigint; - ss58Format?: number; - genesisHash?: string; + ss58Format: number; + genesisHash: string; } export interface XcmFeeAsset { diff --git a/packages/sdk/src/sdk/sdk.deposit.ts b/packages/sdk/src/sdk/sdk.deposit.ts index 54e605f7..1c846057 100644 --- a/packages/sdk/src/sdk/sdk.deposit.ts +++ b/packages/sdk/src/sdk/sdk.deposit.ts @@ -162,8 +162,6 @@ export async function getDepositData< origin, source: { ...config.source, - ss58Format: meta.ss58Format, - genesisHash: meta.genesisHash, }, sourceBalance, sourceFeeBalance: !isUndefined(sourceFeeBalance) diff --git a/packages/sdk/src/sdk/sdk.withdraw.ts b/packages/sdk/src/sdk/sdk.withdraw.ts index fcd5967d..c7d14472 100644 --- a/packages/sdk/src/sdk/sdk.withdraw.ts +++ b/packages/sdk/src/sdk/sdk.withdraw.ts @@ -113,8 +113,6 @@ export async function getWithdrawData< asset: { ...asset, decimals }, destination: { ...config.destination, - ss58Format: meta.ss58Format, - genesisHash: meta.genesisHash, }, destinationBalance, destinationFee,