From eacfaf200975b6d43c65e870afb5061862dc42aa Mon Sep 17 00:00:00 2001 From: Carlo Sala Date: Tue, 3 Sep 2024 14:53:10 +0200 Subject: [PATCH] feat: migrate to `transfer_assets` --- src/api/common.ts | 17 ++++++++++++----- src/api/dot/ah.ts | 4 ++-- src/api/dot/relay.ts | 2 +- src/api/ksm/ah.ts | 4 ++-- src/api/ksm/relay.ts | 2 +- src/api/pas/ah.ts | 2 +- src/api/pas/relay.ts | 2 +- src/api/roc/ah.ts | 6 +++--- src/api/roc/relay.ts | 2 +- src/api/wnd/ah.ts | 6 +++--- src/api/wnd/relay.ts | 2 +- whitelist.ts | 6 ++---- 12 files changed, 30 insertions(+), 25 deletions(-) diff --git a/src/api/common.ts b/src/api/common.ts index c89f5eb..599ff37 100644 --- a/src/api/common.ts +++ b/src/api/common.ts @@ -1,5 +1,7 @@ import { AccountId, PolkadotSigner, TypedApi } from "polkadot-api" import { + DotAhCalls, + DotCalls, XcmV3Junction, XcmV3JunctionNetworkId, XcmV3Junctions, @@ -14,7 +16,9 @@ import { combineLatest, from, map } from "rxjs" const encodeAccount = AccountId().enc -export const getBeneficiary = (address: SS58String | Uint8Array) => +export const getBeneficiary = ( + address: SS58String | Uint8Array, +): XcmVersionedLocation => XcmVersionedLocation.V4({ parents: 0, interior: XcmV3Junctions.X1( @@ -27,7 +31,10 @@ export const getBeneficiary = (address: SS58String | Uint8Array) => ), }) -export const getNativeAsset = (parents: number, amount: bigint) => +export const getNativeAsset = ( + parents: number, + amount: bigint, +): XcmVersionedAssets => XcmVersionedAssets.V4([ { id: { @@ -42,7 +49,7 @@ export const fromRelayToAssetHub = ( from: PolkadotSigner, amount: bigint, to?: SS58String, -) => ({ +): DotCalls["XcmPallet"]["transfer_assets"] => ({ dest: XcmVersionedLocation.V4({ parents: 0, interior: XcmV3Junctions.X1(XcmV3Junction.Parachain(1000)), @@ -57,7 +64,7 @@ export const fromAssetHubToRelay = ( from: PolkadotSigner, amount: bigint, to?: SS58String, -) => ({ +): DotAhCalls["PolkadotXcm"]["transfer_assets"] => ({ dest: XcmVersionedLocation.V4({ parents: 1, interior: XcmV3Junctions.Here(), @@ -74,7 +81,7 @@ export const fromAssetHubToForeign = ( assets: XcmVersionedAssets, from: PolkadotSigner, to?: SS58String, -) => ({ +): DotAhCalls["PolkadotXcm"]["transfer_assets"] => ({ dest: XcmVersionedLocation.V4({ parents: 2, interior: XcmV3Junctions.X2([ diff --git a/src/api/dot/ah.ts b/src/api/dot/ah.ts index a0aa91e..0c0c0c6 100644 --- a/src/api/dot/ah.ts +++ b/src/api/dot/ah.ts @@ -23,9 +23,9 @@ const dot: AssetInChain = { watchFreeBalance: watchAccoutFreeBalance(api), teleport: { dot: (...args) => - api.tx.PolkadotXcm.limited_teleport_assets(fromAssetHubToRelay(...args)), + api.tx.PolkadotXcm.transfer_assets(fromAssetHubToRelay(...args)), ksmAh: (from, amount, to) => - api.tx.PolkadotXcm.limited_reserve_transfer_assets( + api.tx.PolkadotXcm.transfer_assets( fromAssetHubToForeign( XcmV3JunctionNetworkId.Kusama(), 1000, diff --git a/src/api/dot/relay.ts b/src/api/dot/relay.ts index 9b9ce32..399e204 100644 --- a/src/api/dot/relay.ts +++ b/src/api/dot/relay.ts @@ -11,7 +11,7 @@ const dot: AssetInChain = { watchFreeBalance: watchAccoutFreeBalance(api), teleport: { dotAh: (...args) => - api.tx.XcmPallet.limited_teleport_assets(fromRelayToAssetHub(...args)), + api.tx.XcmPallet.transfer_assets(fromRelayToAssetHub(...args)), }, } diff --git a/src/api/ksm/ah.ts b/src/api/ksm/ah.ts index c1550c4..c758046 100644 --- a/src/api/ksm/ah.ts +++ b/src/api/ksm/ah.ts @@ -23,9 +23,9 @@ const ksm: AssetInChain = { watchFreeBalance: watchAccoutFreeBalance(api), teleport: { ksm: (...args) => - api.tx.PolkadotXcm.limited_teleport_assets(fromAssetHubToRelay(...args)), + api.tx.PolkadotXcm.transfer_assets(fromAssetHubToRelay(...args)), dotAh: (from, amount, to) => - api.tx.PolkadotXcm.limited_reserve_transfer_assets( + api.tx.PolkadotXcm.transfer_assets( fromAssetHubToForeign( XcmV3JunctionNetworkId.Polkadot(), 1000, diff --git a/src/api/ksm/relay.ts b/src/api/ksm/relay.ts index 9f3271a..18aefbf 100644 --- a/src/api/ksm/relay.ts +++ b/src/api/ksm/relay.ts @@ -11,7 +11,7 @@ const ksm: AssetInChain = { watchFreeBalance: watchAccoutFreeBalance(api), teleport: { ksmAh: (...args) => - api.tx.XcmPallet.limited_teleport_assets(fromRelayToAssetHub(...args)), + api.tx.XcmPallet.transfer_assets(fromRelayToAssetHub(...args)), }, } diff --git a/src/api/pas/ah.ts b/src/api/pas/ah.ts index 7698cab..eafa2d8 100644 --- a/src/api/pas/ah.ts +++ b/src/api/pas/ah.ts @@ -12,7 +12,7 @@ const pas: AssetInChain = { watchFreeBalance: watchAccoutFreeBalance(api), teleport: { pas: (...args) => - api.tx.PolkadotXcm.limited_teleport_assets(fromAssetHubToRelay(...args)), + api.tx.PolkadotXcm.transfer_assets(fromAssetHubToRelay(...args)), }, } diff --git a/src/api/pas/relay.ts b/src/api/pas/relay.ts index b7f9be2..dd478a6 100644 --- a/src/api/pas/relay.ts +++ b/src/api/pas/relay.ts @@ -11,7 +11,7 @@ const pas: AssetInChain = { watchFreeBalance: watchAccoutFreeBalance(api), teleport: { pasAh: (...args) => - api.tx.XcmPallet.limited_teleport_assets(fromRelayToAssetHub(...args)), + api.tx.XcmPallet.transfer_assets(fromRelayToAssetHub(...args)), }, } diff --git a/src/api/roc/ah.ts b/src/api/roc/ah.ts index b3fd27b..1a384b4 100644 --- a/src/api/roc/ah.ts +++ b/src/api/roc/ah.ts @@ -26,9 +26,9 @@ const roc: AssetInChain = { watchFreeBalance: watchAccoutFreeBalance(api), teleport: { roc: (...args) => - api.tx.PolkadotXcm.limited_teleport_assets(fromAssetHubToRelay(...args)), + api.tx.PolkadotXcm.transfer_assets(fromAssetHubToRelay(...args)), wndAh: (from, amount, to) => - api.tx.PolkadotXcm.limited_reserve_transfer_assets( + api.tx.PolkadotXcm.transfer_assets( fromAssetHubToForeign( XcmV3JunctionNetworkId.Westend(), 1000, @@ -53,7 +53,7 @@ const wnd: AssetInChain = { watchFreeBalance: watchForeingAssetAccoutFreeBalance(api, wndInRocAh), teleport: { wndAh: (from, amount, to) => - api.tx.PolkadotXcm.limited_reserve_transfer_assets( + api.tx.PolkadotXcm.transfer_assets( fromAssetHubToForeign( XcmV3JunctionNetworkId.Westend(), 1000, diff --git a/src/api/roc/relay.ts b/src/api/roc/relay.ts index 0564c0c..47b04a6 100644 --- a/src/api/roc/relay.ts +++ b/src/api/roc/relay.ts @@ -11,7 +11,7 @@ const roc: AssetInChain = { watchFreeBalance: watchAccoutFreeBalance(api), teleport: { rocAh: (...args) => - api.tx.XcmPallet.limited_teleport_assets(fromRelayToAssetHub(...args)), + api.tx.XcmPallet.transfer_assets(fromRelayToAssetHub(...args)), }, } diff --git a/src/api/wnd/ah.ts b/src/api/wnd/ah.ts index 309cffa..eb62db5 100644 --- a/src/api/wnd/ah.ts +++ b/src/api/wnd/ah.ts @@ -25,9 +25,9 @@ const wnd: AssetInChain = { watchFreeBalance: watchAccoutFreeBalance(api), teleport: { wnd: (...args) => - api.tx.PolkadotXcm.limited_teleport_assets(fromAssetHubToRelay(...args)), + api.tx.PolkadotXcm.transfer_assets(fromAssetHubToRelay(...args)), rocAh: (from, amount, to) => - api.tx.PolkadotXcm.limited_reserve_transfer_assets( + api.tx.PolkadotXcm.transfer_assets( fromAssetHubToForeign( XcmV3JunctionNetworkId.Rococo(), 1000, @@ -52,7 +52,7 @@ const roc: AssetInChain = { watchFreeBalance: watchForeingAssetAccoutFreeBalance(api, rocInWndAh), teleport: { rocAh: (from, amount, to) => - api.tx.PolkadotXcm.limited_reserve_transfer_assets( + api.tx.PolkadotXcm.transfer_assets( fromAssetHubToForeign( XcmV3JunctionNetworkId.Rococo(), 1000, diff --git a/src/api/wnd/relay.ts b/src/api/wnd/relay.ts index 7ca8a01..a7b6046 100644 --- a/src/api/wnd/relay.ts +++ b/src/api/wnd/relay.ts @@ -11,7 +11,7 @@ const wnd: AssetInChain = { watchFreeBalance: watchAccoutFreeBalance(api), teleport: { wndAh: (...args) => - api.tx.XcmPallet.limited_teleport_assets(fromRelayToAssetHub(...args)), + api.tx.XcmPallet.transfer_assets(fromRelayToAssetHub(...args)), }, } diff --git a/whitelist.ts b/whitelist.ts index 18a9de1..cdb3d8d 100644 --- a/whitelist.ts +++ b/whitelist.ts @@ -4,15 +4,13 @@ import { } from "@polkadot-api/descriptors" const dotWhitelist: DotWhitelistEntry[] = [ - "tx.XcmPallet.limited_teleport_assets", - "tx.XcmPallet.limited_reserve_transfer_assets", + "tx.XcmPallet.transfer_assets", "query.System.Account", "const.Balances.ExistentialDeposit", ] const ahWhitelist: DotAhWhitelistEntry[] = [ - "tx.PolkadotXcm.limited_teleport_assets", - "tx.PolkadotXcm.limited_reserve_transfer_assets", + "tx.PolkadotXcm.transfer_assets", "query.ForeignAssets.Account", "const.Balances.ExistentialDeposit", ]