diff --git a/.changeset/calm-carrots-sleep.md b/.changeset/calm-carrots-sleep.md new file mode 100644 index 00000000..314cb487 --- /dev/null +++ b/.changeset/calm-carrots-sleep.md @@ -0,0 +1,5 @@ +--- +'@moonbeam-network/xcm-config': patch +--- + +Add PEAQ Alphanet configuration diff --git a/packages/config/src/assets.ts b/packages/config/src/assets.ts index 85e6610e..9d7fb875 100644 --- a/packages/config/src/assets.ts +++ b/packages/config/src/assets.ts @@ -5,6 +5,11 @@ export const aca = new Asset({ originSymbol: 'ACA', }); +export const agng = new Asset({ + key: 'agng', + originSymbol: 'AGNG', +}); + export const alan = new Asset({ key: 'alan', originSymbol: 'ALAN', @@ -358,6 +363,7 @@ export const ftmwh = new Asset({ export const assetsList: Asset[] = [ aca, alan, + agng, ampe, aseed, astr, diff --git a/packages/config/src/chains.ts b/packages/config/src/chains.ts index dc15a26e..895d59ad 100644 --- a/packages/config/src/chains.ts +++ b/packages/config/src/chains.ts @@ -6,6 +6,7 @@ import { } from '@moonbeam-network/xcm-types'; import { aca, + agng, alan, ampe, aseed, @@ -1232,6 +1233,34 @@ export const parallelHeiko = new Parachain({ ws: 'wss://heiko-rpc.parallel.fi', }); +export const peaqAlphanet = new Parachain({ + assetsData: [ + { + asset: agng, + id: 0, + }, + { + asset: dev, + decimals: 18, + id: 1000, + }, + { + asset: ftmwh, + decimals: 18, + id: 1001, + }, + ], + ecosystem: Ecosystem.AlphanetRelay, + genesisHash: + '0x2dfcd5c560f6db1667cbc2bc3791dfd337f88f400af6de39b1b8638ee7af6ed4', + isTestChain: true, + key: 'peaq-Alphanet', + name: 'Peaq Alphanet', + parachainId: 3013, + ss58Format: 42, + ws: 'wss://moonbeam.peaq.network', +}); + export const pendulum = new Parachain({ assetsData: [ { @@ -1567,6 +1596,7 @@ export const chainsList: AnyChain[] = [ originTrailAlphanet, parallel, parallelHeiko, + peaqAlphanet, pendulum, pendulumAlphanet, phala, diff --git a/packages/config/src/configs/index.ts b/packages/config/src/configs/index.ts index 68f72700..a1fc56b8 100644 --- a/packages/config/src/configs/index.ts +++ b/packages/config/src/configs/index.ts @@ -33,6 +33,7 @@ import { nodleConfig } from './nodle'; import { originTrailAlphanetConfig } from './originTrailAlphanet'; import { parallelConfig } from './parallel'; import { parallelHeikoConfig } from './parallelHeiko'; +import { peaqAlphanetConfig } from './peaqAlphanet'; import { pendulumConfig } from './pendulum'; import { pendulumAlphanetConfig } from './pendulumAlphanet'; import { phalaConfig } from './phala'; @@ -80,6 +81,7 @@ export const chainsConfigList: ChainConfig[] = [ originTrailAlphanetConfig, parallelConfig, parallelHeikoConfig, + peaqAlphanetConfig, pendulumConfig, pendulumAlphanetConfig, phalaConfig, diff --git a/packages/config/src/configs/moonbaseAlpha.ts b/packages/config/src/configs/moonbaseAlpha.ts index 92277e33..451e932c 100644 --- a/packages/config/src/configs/moonbaseAlpha.ts +++ b/packages/config/src/configs/moonbaseAlpha.ts @@ -20,6 +20,7 @@ import { moonbaseAlpha, moonbaseBeta, originTrailAlphanet, + peaqAlphanet, pendulumAlphanet, picassoAlphanet, turingAlphanet, @@ -238,6 +239,21 @@ export const moonbaseAlphaConfig = new ChainConfig({ balance: BalanceBuilder().substrate().system().account(), }, }), + new AssetConfig({ + asset: ftmwh, + balance: BalanceBuilder().evm().erc20(), + contract: ContractBuilder().Xtokens().transfer(), + destination: peaqAlphanet, + destinationFee: { + amount: 0.01, + asset: ftmwh, + balance: BalanceBuilder().evm().erc20(), + }, + fee: { + asset: dev, + balance: BalanceBuilder().substrate().system().account(), + }, + }), new AssetConfig({ asset: dev, balance: BalanceBuilder().substrate().system().account(), @@ -264,6 +280,32 @@ export const moonbaseAlphaConfig = new ChainConfig({ balance: BalanceBuilder().substrate().system().account(), }, }), + new AssetConfig({ + asset: dev, + balance: BalanceBuilder().substrate().system().account(), + contract: ContractBuilder().Xtokens().transfer(), + destination: peaqAlphanet, + destinationFee: { + amount: 0.00000001, + asset: dev, + balance: BalanceBuilder().substrate().system().account(), + }, + }), + new AssetConfig({ + asset: ftmwh, + balance: BalanceBuilder().evm().erc20(), + contract: ContractBuilder().Xtokens().transfer(), + destination: peaqAlphanet, + destinationFee: { + amount: 0.01, + asset: ftmwh, + balance: BalanceBuilder().evm().erc20(), + }, + fee: { + asset: dev, + balance: BalanceBuilder().substrate().system().account(), + }, + }), ], chain: moonbaseAlpha, }); diff --git a/packages/config/src/configs/peaqAlphanet.ts b/packages/config/src/configs/peaqAlphanet.ts new file mode 100644 index 00000000..d91c091c --- /dev/null +++ b/packages/config/src/configs/peaqAlphanet.ts @@ -0,0 +1,40 @@ +import { + BalanceBuilder, + ExtrinsicBuilder, +} from '@moonbeam-network/xcm-builder'; +import { agng, dev, ftmwh } from '../assets'; +import { moonbaseAlpha, peaqAlphanet } from '../chains'; +import { AssetConfig } from '../types/AssetConfig'; +import { ChainConfig } from '../types/ChainConfig'; + +export const peaqAlphanetConfig = new ChainConfig({ + assets: [ + new AssetConfig({ + asset: dev, + balance: BalanceBuilder().substrate().assets().account(), + destination: moonbaseAlpha, + destinationFee: { + amount: 0.01, + asset: dev, + balance: BalanceBuilder().substrate().assets().account(), + }, + extrinsic: ExtrinsicBuilder().xTokens().transfer(), + }), + new AssetConfig({ + asset: ftmwh, + balance: BalanceBuilder().substrate().assets().account(), + destination: moonbaseAlpha, + destinationFee: { + amount: 0.04, + asset: dev, + balance: BalanceBuilder().substrate().assets().account(), + }, + extrinsic: ExtrinsicBuilder().xTokens().transferMultiCurrencies(), + fee: { + asset: agng, + balance: BalanceBuilder().substrate().system().account(), + }, + }), + ], + chain: peaqAlphanet, +});