diff --git a/.changeset/slimy-eels-matter.md b/.changeset/slimy-eels-matter.md new file mode 100644 index 00000000..4121d8c5 --- /dev/null +++ b/.changeset/slimy-eels-matter.md @@ -0,0 +1,6 @@ +--- +'@moonbeam-network/xcm-config': patch +'@moonbeam-network/xcm-sdk': patch +--- + +Picasso integration with Moonriver diff --git a/packages/config/src/chains.ts b/packages/config/src/chains.ts index 01065f0e..4112cce5 100644 --- a/packages/config/src/chains.ts +++ b/packages/config/src/chains.ts @@ -92,7 +92,7 @@ export const acala = new Parachain({ name: 'Acala', parachainId: 2000, ss58Format: 10, - ws: 'wss://acala-rpc-0.aca-api.network', + ws: 'wss://acala-rpc.aca-api.network', }); export const alphanetAssetHub = new Parachain({ @@ -980,6 +980,10 @@ export const moonriver = new EvmParachain({ asset: pha, id: '189307976387032586987344677431204943363', }, + { + asset: pica, + id: '167283995827706324502761431814209211090', + }, { asset: rmrk, id: '182365888117048807484804376330534607370', @@ -1153,6 +1157,28 @@ export const phala = new Parachain({ ws: 'wss://api.phala.network/ws', }); +export const picasso = new Parachain({ + assetsData: [ + { + asset: pica, + id: 1, + }, + { + asset: movr, + id: 23, + min: 0.0041, + }, + ], + ecosystem: Ecosystem.Kusama, + genesisHash: + '0x6811a339673c9daa897944dcdac99c6e2939cc88245ed21951a0a3c9a2be75bc', + key: 'picasso', + name: 'Picasso', + parachainId: 2087, + ss58Format: 49, + ws: 'wss://picasso-rpc.dwellir.com', +}); + export const picassoAlphanet = new Parachain({ assetsData: [ { @@ -1366,6 +1392,7 @@ export const chainsList: AnyChain[] = [ parallel, parallelHeiko, phala, + picasso, picassoAlphanet, polkadot, robonomics, diff --git a/packages/config/src/configs/index.ts b/packages/config/src/configs/index.ts index 399f5eb1..6d0fb03a 100644 --- a/packages/config/src/configs/index.ts +++ b/packages/config/src/configs/index.ts @@ -35,6 +35,7 @@ import { originTrailAlphanetConfig } from './originTrailAlphanet'; import { parallelConfig } from './parallel'; import { parallelHeikoConfig } from './parallelHeiko'; import { phalaConfig } from './phala'; +import { picassoConfig } from './picasso'; import { picassoAlphanetConfig } from './picassoAlphanet'; import { polkadotConfig } from './polkadot'; import { polkadotAssetHubConfig } from './polkadotAssetHub'; @@ -79,6 +80,7 @@ export const chainsConfigList: ChainConfig[] = [ parallelConfig, parallelHeikoConfig, phalaConfig, + picassoConfig, picassoAlphanetConfig, polkadotConfig, robonomicsConfig, diff --git a/packages/config/src/configs/moonriver.ts b/packages/config/src/configs/moonriver.ts index 4b556ee6..c9aed0a8 100644 --- a/packages/config/src/configs/moonriver.ts +++ b/packages/config/src/configs/moonriver.ts @@ -14,6 +14,7 @@ import { mgx, movr, pha, + pica, rmrk, sdn, teer, @@ -39,6 +40,7 @@ import { mangataKusama, moonriver, parallelHeiko, + picasso, robonomics, shiden, turing, @@ -147,6 +149,17 @@ export const moonriverConfig = new ChainConfig({ balance: BalanceBuilder().substrate().system().account(), }, }), + new AssetConfig({ + asset: movr, + balance: BalanceBuilder().substrate().system().account(), + contract: ContractBuilder().Xtokens().transfer(), + destination: picasso, + destinationFee: { + amount: 0.001, + asset: movr, + balance: BalanceBuilder().substrate().system().account(), + }, + }), new AssetConfig({ asset: aseed, balance: BalanceBuilder().substrate().assets().account(), @@ -342,6 +355,21 @@ export const moonriverConfig = new ChainConfig({ balance: BalanceBuilder().substrate().system().account(), }, }), + new AssetConfig({ + asset: pica, + balance: BalanceBuilder().substrate().assets().account(), + contract: ContractBuilder().Xtokens().transfer(), + destination: picasso, + destinationFee: { + amount: 0.001, + asset: pica, + balance: BalanceBuilder().substrate().assets().account(), + }, + fee: { + asset: movr, + balance: BalanceBuilder().substrate().system().account(), + }, + }), new AssetConfig({ asset: rmrk, balance: BalanceBuilder().substrate().assets().account(), diff --git a/packages/config/src/configs/picasso.ts b/packages/config/src/configs/picasso.ts new file mode 100644 index 00000000..388ddac0 --- /dev/null +++ b/packages/config/src/configs/picasso.ts @@ -0,0 +1,41 @@ +import { + BalanceBuilder, + ExtrinsicBuilder, + FeeBuilder, +} from '@moonbeam-network/xcm-builder'; +import { movr, pica } from '../assets'; +import { moonriver, picasso } from '../chains'; +import { AssetConfig } from '../types/AssetConfig'; +import { ChainConfig } from '../types/ChainConfig'; + +export const picassoConfig = new ChainConfig({ + assets: [ + new AssetConfig({ + asset: pica, + balance: BalanceBuilder().substrate().system().account(), + destination: moonriver, + destinationFee: { + amount: FeeBuilder().assetManager().assetTypeUnitsPerSecond(), + asset: pica, + balance: BalanceBuilder().substrate().system().account(), + }, + extrinsic: ExtrinsicBuilder().xTokens().transfer(), + }), + new AssetConfig({ + asset: movr, + balance: BalanceBuilder().substrate().tokens().accounts(), + destination: moonriver, + destinationFee: { + amount: 0.0001, + asset: movr, + balance: BalanceBuilder().substrate().tokens().accounts(), + }, + extrinsic: ExtrinsicBuilder().xTokens().transfer(), + fee: { + asset: pica, + balance: BalanceBuilder().substrate().system().account(), + }, + }), + ], + chain: picasso, +});