@moonbeam-network/xcm-sdk 0.0.26 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (31) hide show
  1. package/build/cjs/src/polkadot/PolkadotService.d.ts +7 -6
  2. package/build/cjs/src/polkadot/PolkadotService.js +38 -19
  3. package/build/cjs/src/polkadot/PolkadotService.js.map +1 -1
  4. package/build/cjs/src/sdk/sdk.deposit.d.ts +2 -10
  5. package/build/cjs/src/sdk/sdk.deposit.js +41 -37
  6. package/build/cjs/src/sdk/sdk.deposit.js.map +1 -1
  7. package/build/cjs/src/sdk/sdk.interfaces.d.ts +4 -1
  8. package/build/cjs/src/sdk/sdk.interfaces.js.map +1 -1
  9. package/build/cjs/src/sdk/sdk.js +3 -2
  10. package/build/cjs/src/sdk/sdk.js.map +1 -1
  11. package/build/cjs/src/sdk/sdk.utils.d.ts +2 -1
  12. package/build/cjs/src/sdk/sdk.utils.js +9 -1
  13. package/build/cjs/src/sdk/sdk.utils.js.map +1 -1
  14. package/build/cjs/src/sdk/sdk.withdraw.js +2 -2
  15. package/build/cjs/src/sdk/sdk.withdraw.js.map +1 -1
  16. package/build/mjs/src/polkadot/PolkadotService.d.ts +7 -6
  17. package/build/mjs/src/polkadot/PolkadotService.js +38 -19
  18. package/build/mjs/src/polkadot/PolkadotService.js.map +1 -1
  19. package/build/mjs/src/sdk/sdk.deposit.d.ts +2 -10
  20. package/build/mjs/src/sdk/sdk.deposit.js +41 -37
  21. package/build/mjs/src/sdk/sdk.deposit.js.map +1 -1
  22. package/build/mjs/src/sdk/sdk.interfaces.d.ts +4 -1
  23. package/build/mjs/src/sdk/sdk.interfaces.js.map +1 -1
  24. package/build/mjs/src/sdk/sdk.js +3 -2
  25. package/build/mjs/src/sdk/sdk.js.map +1 -1
  26. package/build/mjs/src/sdk/sdk.utils.d.ts +2 -1
  27. package/build/mjs/src/sdk/sdk.utils.js +9 -1
  28. package/build/mjs/src/sdk/sdk.utils.js.map +1 -1
  29. package/build/mjs/src/sdk/sdk.withdraw.js +2 -2
  30. package/build/mjs/src/sdk/sdk.withdraw.js.map +1 -1
  31. package/package.json +4 -4
@@ -1,5 +1,5 @@
1
1
  import '@moonbeam-network/api-augment';
2
- import { AssetSymbol, BalanceConfig, ChainKey, ExtrinsicConfig, MinBalanceConfig, XcmConfigBuilder } from '@moonbeam-network/xcm-config';
2
+ import { Asset, AssetSymbol, BalanceConfig, ChainKey, ExtrinsicConfig, MinBalanceConfig, MoonChain, XcmConfigBuilder } from '@moonbeam-network/xcm-config';
3
3
  import { ApiPromise } from '@polkadot/api';
4
4
  import { SubmittableExtrinsic, UnsubscribePromise } from '@polkadot/api/types';
5
5
  import { AccountInfo } from '@polkadot/types/interfaces';
@@ -9,21 +9,22 @@ export declare class PolkadotService<Symbols extends AssetSymbol = AssetSymbol,
9
9
  #private;
10
10
  constructor(api: ApiPromise);
11
11
  static create<Symbols extends AssetSymbol = AssetSymbol, ChainKeys extends ChainKey = ChainKey>(ws: string): Promise<PolkadotService<Symbols, ChainKeys>>;
12
- static getChainMin(weight: number, unitsPerSecond: bigint): bigint;
13
12
  getMetadata(): {
14
13
  decimals: number;
15
14
  symbol: Symbols;
16
15
  };
17
16
  getExistentialDeposit(): bigint;
18
- getAssetDecimals(assetId: string): Promise<number>;
19
- getAssetMeta(assetId: string): Promise<PalletAssetsAssetMetadata>;
17
+ getAssetDecimals(asset: Asset<Symbols>): Promise<number>;
18
+ getAssetMeta(asset: Asset<Symbols>): Promise<PalletAssetsAssetMetadata>;
20
19
  subscribeToAccountInfo(account: string, callback: (info: AccountInfo) => void): UnsubscribePromise;
21
20
  subscribeToBalance(account: string, callback: (balance: bigint) => void): UnsubscribePromise;
22
21
  getGenericBalance(account: string, { pallet, function: fn, getParams, path, calc }: BalanceConfig<Symbols>): Promise<bigint>;
23
22
  getAssetMinBalance({ pallet, function: fn, params, path, }: MinBalanceConfig): Promise<bigint>;
24
23
  getXcmExtrinsic(account: string, amount: bigint, { pallet, extrinsic, getParams }: ExtrinsicConfig<Symbols>, fee?: bigint, primaryAccount?: string): SubmittableExtrinsic<'promise'>;
25
- getAssetFee(id: string, weight: number): Promise<bigint>;
24
+ getAssetFee(asset: Asset, weight: number, moonChain: MoonChain): Promise<bigint>;
25
+ getUnitsPerSecond(asset: Asset, moonChain: MoonChain): Promise<bigint>;
26
26
  getAssetType(id: string): Promise<MoonbeamRuntimeXcmConfigAssetType | undefined>;
27
27
  subscribeToAssetsBalanceInfo(account: string, config: XcmConfigBuilder<Symbols, ChainKeys>, callback: (data: AssetBalanceInfo<Symbols>[]) => void): UnsubscribePromise;
28
- subscribeToAccountBalances(account: string, ids: string[], callback: (balances: PalletAssetsAssetAccount[]) => void): UnsubscribePromise;
28
+ getAssetsMetadata(assetsArray: Asset<Symbols>[]): Promise<PalletAssetsAssetMetadata[]>;
29
+ subscribeToAccountBalances(account: string, assetsArray: Asset<Symbols>[], callback: (balances: PalletAssetsAssetAccount[]) => void): UnsubscribePromise;
29
30
  }
@@ -25,9 +25,6 @@ class PolkadotService {
25
25
  static async create(ws) {
26
26
  return new PolkadotService(await (0, polkadot_api_1.getPolkadotApi)(ws));
27
27
  }
28
- static getChainMin(weight, unitsPerSecond) {
29
- return (0, polkadot_utils_1.calculateMin)(weight, unitsPerSecond);
30
- }
31
28
  getMetadata() {
32
29
  return {
33
30
  decimals: __classPrivateFieldGet(this, _PolkadotService_api, "f").registry.chainDecimals.at(0) || 12,
@@ -37,12 +34,14 @@ class PolkadotService {
37
34
  getExistentialDeposit() {
38
35
  return __classPrivateFieldGet(this, _PolkadotService_api, "f").consts.balances?.existentialDeposit.toBigInt() || 0n;
39
36
  }
40
- async getAssetDecimals(assetId) {
41
- const meta = await this.getAssetMeta(assetId);
37
+ async getAssetDecimals(asset) {
38
+ const meta = await this.getAssetMeta(asset);
42
39
  return meta.decimals.toNumber();
43
40
  }
44
- async getAssetMeta(assetId) {
45
- return __classPrivateFieldGet(this, _PolkadotService_api, "f").query.assets.metadata(assetId);
41
+ async getAssetMeta(asset) {
42
+ return (asset.isLocalAsset
43
+ ? __classPrivateFieldGet(this, _PolkadotService_api, "f").query.localAssets.metadata
44
+ : __classPrivateFieldGet(this, _PolkadotService_api, "f").query.assets.metadata)(asset.id);
46
45
  }
47
46
  async subscribeToAccountInfo(account, callback) {
48
47
  return __classPrivateFieldGet(this, _PolkadotService_api, "f").query.system.account(account, callback);
@@ -59,7 +58,7 @@ class PolkadotService {
59
58
  return calc(path.length ? (0, lodash_1.get)(unwrapped, path) : unwrapped);
60
59
  }
61
60
  async getAssetMinBalance({ pallet, function: fn, params, path, }) {
62
- const details = await __classPrivateFieldGet(this, _PolkadotService_api, "f").query[pallet][fn](...params);
61
+ const details = (await __classPrivateFieldGet(this, _PolkadotService_api, "f").query[pallet][fn](...params));
63
62
  if (details.isEmpty) {
64
63
  return 0n;
65
64
  }
@@ -75,13 +74,20 @@ class PolkadotService {
75
74
  }
76
75
  return transferExtrinsic;
77
76
  }
78
- async getAssetFee(id, weight) {
79
- const type = await this.getAssetType(id);
77
+ async getAssetFee(asset, weight, moonChain) {
78
+ return (0, polkadot_utils_1.calculateMin)(weight, await this.getUnitsPerSecond(asset, moonChain));
79
+ }
80
+ async getUnitsPerSecond(asset, moonChain) {
81
+ if (asset.isNative) {
82
+ return moonChain.unitsPerSecond;
83
+ }
84
+ const type = await this.getAssetType(asset.id);
80
85
  if (!type) {
81
86
  return 0n;
82
87
  }
83
- const unitsPerSecond = await __classPrivateFieldGet(this, _PolkadotService_api, "f").query.assetManager.assetTypeUnitsPerSecond(type);
84
- return (0, polkadot_utils_1.calculateMin)(weight, unitsPerSecond.unwrapOrDefault().toBigInt());
88
+ return (await __classPrivateFieldGet(this, _PolkadotService_api, "f").query.assetManager.assetTypeUnitsPerSecond(type))
89
+ .unwrapOrDefault()
90
+ .toBigInt();
85
91
  }
86
92
  async getAssetType(id) {
87
93
  const type = await __classPrivateFieldGet(this, _PolkadotService_api, "f").query.assetManager.assetIdType(id);
@@ -89,9 +95,8 @@ class PolkadotService {
89
95
  }
90
96
  async subscribeToAssetsBalanceInfo(account, config, callback) {
91
97
  const assetsArray = Object.values(config.assets);
92
- const ids = assetsArray.map((asset) => asset.id);
93
- const metadata = (await __classPrivateFieldGet(this, _PolkadotService_api, "f").query.assets.metadata.multi(ids));
94
- return this.subscribeToAccountBalances(account, ids, (data) => {
98
+ const metadata = await this.getAssetsMetadata(assetsArray);
99
+ return this.subscribeToAccountBalances(account, assetsArray, (data) => {
95
100
  callback(data.map((balance, index) => {
96
101
  const asset = assetsArray[index];
97
102
  const meta = metadata[index];
@@ -113,10 +118,24 @@ class PolkadotService {
113
118
  }));
114
119
  });
115
120
  }
116
- async subscribeToAccountBalances(account, ids, callback) {
117
- const keys = ids.map((x) => [x, account]);
118
- return __classPrivateFieldGet(this, _PolkadotService_api, "f").query.assets.account.multi(keys, (res) => {
119
- const response = res.map((balance) => balance.unwrapOrDefault());
121
+ async getAssetsMetadata(assetsArray) {
122
+ const queries = assetsArray.map((x) => [
123
+ x.isLocalAsset
124
+ ? __classPrivateFieldGet(this, _PolkadotService_api, "f").query.localAssets.metadata
125
+ : __classPrivateFieldGet(this, _PolkadotService_api, "f").query.assets.metadata,
126
+ [x.id],
127
+ ]);
128
+ return __classPrivateFieldGet(this, _PolkadotService_api, "f").queryMulti(queries);
129
+ }
130
+ async subscribeToAccountBalances(account, assetsArray, callback) {
131
+ const queries = assetsArray.map((x) => [
132
+ x.isLocalAsset
133
+ ? __classPrivateFieldGet(this, _PolkadotService_api, "f").query.localAssets.account
134
+ : __classPrivateFieldGet(this, _PolkadotService_api, "f").query.assets.account,
135
+ [x.id, account],
136
+ ]);
137
+ return __classPrivateFieldGet(this, _PolkadotService_api, "f").queryMulti(queries, (res) => {
138
+ const response = res.map((item) => item.unwrapOrDefault());
120
139
  callback(response);
121
140
  });
122
141
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PolkadotService.js","sourceRoot":"","sources":["../../../../src/polkadot/PolkadotService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PolkadotService.js","sourceRoot":"","sources":["../../../../src/polkadot/PolkadotService.ts"],"names":[],"mappings":"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"}
@@ -7,12 +7,11 @@ export declare function createExtrinsicEventHandler<Symbols extends AssetSymbol>
7
7
  export interface CreateExtrinsicOptions<Symbols extends AssetSymbol, ChainKeys extends ChainKey> {
8
8
  account: string;
9
9
  config: DepositConfig<Symbols>;
10
+ fee?: bigint;
10
11
  foreignPolkadot: PolkadotService<Symbols, ChainKeys>;
11
- nativeAsset: Asset<Symbols>;
12
- polkadot: PolkadotService<Symbols, ChainKeys>;
13
12
  primaryAccount?: string;
14
13
  }
15
- export declare function getCreateExtrinsic<Symbols extends AssetSymbol, ChainKeys extends ChainKey>({ account, config, foreignPolkadot, nativeAsset, polkadot, primaryAccount, }: CreateExtrinsicOptions<Symbols, ChainKeys>): (amount: bigint) => Promise<import("@polkadot/api/types").SubmittableExtrinsic<"promise", ISubmittableResult>>;
14
+ export declare function getCreateExtrinsic<Symbols extends AssetSymbol, ChainKeys extends ChainKey>({ account, config, foreignPolkadot, primaryAccount, fee, }: CreateExtrinsicOptions<Symbols, ChainKeys>): (amount: bigint) => import("@polkadot/api/types").SubmittableExtrinsic<"promise", ISubmittableResult>;
16
15
  export interface GetDepositDataParams<Symbols extends AssetSymbol, ChainKeys extends ChainKey> {
17
16
  account: string;
18
17
  asset: Asset<Symbols>;
@@ -27,10 +26,3 @@ export interface GetDepositDataParams<Symbols extends AssetSymbol, ChainKeys ext
27
26
  sourceAccount: string | IKeyringPair;
28
27
  }
29
28
  export declare function getDepositData<Symbols extends AssetSymbol, ChainKeys extends ChainKey>({ account, asset, config, foreignPolkadot, moonChain, nativeAsset, origin, polkadot, polkadotSigner, primaryAccount, sourceAccount, }: GetDepositDataParams<Symbols, ChainKeys>): Promise<DepositTransferData<Symbols>>;
30
- export interface GetMinParams<Symbols extends AssetSymbol, ChainKeys extends ChainKey> {
31
- asset: Asset<Symbols>;
32
- config: DepositConfig<Symbols>;
33
- moonChain: MoonChain;
34
- polkadot: PolkadotService<Symbols, ChainKeys>;
35
- }
36
- export declare function getMin<Symbols extends AssetSymbol, ChainKeys extends ChainKey>({ asset, config, moonChain, polkadot, }: GetMinParams<Symbols, ChainKeys>): Promise<bigint>;
@@ -1,9 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getMin = exports.getDepositData = exports.getCreateExtrinsic = exports.createExtrinsicEventHandler = void 0;
3
+ exports.getDepositData = exports.getCreateExtrinsic = exports.createExtrinsicEventHandler = void 0;
4
4
  const xcm_config_1 = require("@moonbeam-network/xcm-config");
5
5
  const util_1 = require("@polkadot/util");
6
- const polkadot_1 = require("../polkadot");
7
6
  const sdk_interfaces_1 = require("./sdk.interfaces");
8
7
  function createExtrinsicEventHandler(config, cb) {
9
8
  return ({ events = [], status, txHash }) => {
@@ -47,50 +46,64 @@ function createExtrinsicEventHandler(config, cb) {
47
46
  };
48
47
  }
49
48
  exports.createExtrinsicEventHandler = createExtrinsicEventHandler;
50
- function getCreateExtrinsic({ account, config, foreignPolkadot, nativeAsset, polkadot, primaryAccount, }) {
51
- return async (amount) => {
52
- const fee = (0, xcm_config_1.isMultiCurrency)(config.extrinsic)
53
- ? await polkadot.getAssetFee(nativeAsset.id, config.origin.weight)
54
- : 0n;
55
- return foreignPolkadot.getXcmExtrinsic(account, amount, config.extrinsic, fee, primaryAccount);
56
- };
49
+ function getCreateExtrinsic({ account, config, foreignPolkadot, primaryAccount, fee, }) {
50
+ return (amount) => foreignPolkadot.getXcmExtrinsic(account, amount, config.extrinsic, fee, primaryAccount);
57
51
  }
58
52
  exports.getCreateExtrinsic = getCreateExtrinsic;
59
53
  async function getDepositData({ account, asset, config, foreignPolkadot, moonChain, nativeAsset, origin, polkadot, polkadotSigner, primaryAccount, sourceAccount, }) {
60
54
  const sourceAddress = typeof sourceAccount === 'string' ? sourceAccount : sourceAccount.address;
61
55
  const meta = foreignPolkadot.getMetadata();
62
- const createExtrinsic = getCreateExtrinsic({
63
- account,
64
- config,
65
- foreignPolkadot,
66
- nativeAsset,
67
- polkadot,
68
- primaryAccount,
69
- });
70
- const [decimals, sourceBalance, existentialDeposit, sourceFeeBalance, moonChainFee, sourceMinBalance = 0n, min,] = await Promise.all([
71
- polkadot.getAssetDecimals(asset.id),
72
- foreignPolkadot.getGenericBalance(primaryAccount || sourceAddress, config.balance),
56
+ const xcmFeeAssetConfig = {
57
+ asset: config.xcmFeeAsset?.asset ?? asset,
58
+ balance: config.xcmFeeAsset?.balance ?? config.balance,
59
+ };
60
+ const [assetDecimals, existentialDeposit, sourceBalance, sourceFeeBalance, sourceMinBalance = 0n, xcmFee, xcmFeeBalance, xcmFeeDecimals,] = await Promise.all([
61
+ // assetDecimals
62
+ polkadot.getAssetDecimals(asset),
63
+ // existentialDeposit
73
64
  foreignPolkadot.getExistentialDeposit(),
65
+ // sourceBalance
66
+ foreignPolkadot.getGenericBalance(primaryAccount || sourceAddress, config.balance),
67
+ // sourceFeeBalance
74
68
  config.sourceFeeBalance
75
69
  ? foreignPolkadot.getGenericBalance(sourceAddress, config.sourceFeeBalance)
76
70
  : undefined,
77
- config.isNativeAssetPayingMoonFee
78
- ? polkadot.getAssetFee(nativeAsset.id, config.origin.weight)
79
- : undefined,
71
+ // sourceMinBalance
80
72
  config.sourceMinBalance
81
73
  ? foreignPolkadot.getAssetMinBalance(config.sourceMinBalance)
82
74
  : undefined,
83
- // eslint-disable-next-line @typescript-eslint/no-use-before-define
84
- getMin({ asset, config, moonChain, polkadot }),
75
+ // xcmFee
76
+ polkadot.getAssetFee(xcmFeeAssetConfig.asset, config.source.weight, moonChain),
77
+ // xcmFeeBalance
78
+ foreignPolkadot.getGenericBalance(primaryAccount || sourceAddress, xcmFeeAssetConfig.balance),
79
+ // xcmFeeDecimals
80
+ polkadot.getAssetDecimals(xcmFeeAssetConfig.asset),
85
81
  ]);
82
+ // Min is basically the XCM fee, if it's the same asset. If less is sent then
83
+ // Moon* won't process the message.
84
+ const min = config.xcmFeeAsset ? 0n : xcmFee;
85
+ const createExtrinsic = getCreateExtrinsic({
86
+ account,
87
+ config,
88
+ foreignPolkadot,
89
+ primaryAccount,
90
+ fee: xcmFee,
91
+ });
86
92
  return {
87
- asset: { ...asset, decimals },
93
+ asset: { ...asset, decimals: assetDecimals },
88
94
  existentialDeposit,
89
95
  min,
90
- moonChainFee,
96
+ moonChainFee: {
97
+ balance: xcmFeeBalance,
98
+ decimals: xcmFeeAssetConfig.asset.isNative
99
+ ? meta.decimals
100
+ : xcmFeeDecimals,
101
+ fee: xcmFee,
102
+ symbol: xcmFeeAssetConfig.asset.originSymbol,
103
+ },
91
104
  native: { ...nativeAsset, decimals: meta.decimals },
92
105
  origin,
93
- source: config.origin,
106
+ source: config.source,
94
107
  sourceBalance,
95
108
  sourceFeeBalance: !(0, util_1.isUndefined)(sourceFeeBalance)
96
109
  ? { ...meta, balance: sourceFeeBalance }
@@ -111,13 +124,4 @@ async function getDepositData({ account, asset, config, foreignPolkadot, moonCha
111
124
  };
112
125
  }
113
126
  exports.getDepositData = getDepositData;
114
- async function getMin({ asset, config, moonChain, polkadot, }) {
115
- if (config.sourceFeeBalance && config.isNativeAssetPayingMoonFee) {
116
- return 0n;
117
- }
118
- return asset.isNative
119
- ? polkadot_1.PolkadotService.getChainMin(config.origin.weight, moonChain.unitsPerSecond)
120
- : polkadot.getAssetFee(asset.id, config.origin.weight);
121
- }
122
- exports.getMin = getMin;
123
127
  //# sourceMappingURL=sdk.deposit.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.deposit.js","sourceRoot":"","sources":["../../../../src/sdk/sdk.deposit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sdk.deposit.js","sourceRoot":"","sources":["../../../../src/sdk/sdk.deposit.ts"],"names":[],"mappings":"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"}
@@ -47,7 +47,7 @@ export interface DepositTransferData<Symbols extends AssetSymbol = AssetSymbol,
47
47
  asset: AssetWithDecimals<Symbols>;
48
48
  existentialDeposit: bigint;
49
49
  min: bigint;
50
- moonChainFee?: bigint;
50
+ moonChainFee: XcmFeeWithBalance;
51
51
  native: AssetWithDecimals<Symbols>;
52
52
  origin: MoonChain | Chain<ChainKeys>;
53
53
  source: Chain<ChainKeys>;
@@ -78,6 +78,9 @@ export interface Balance<Symbols extends string | AssetSymbol = AssetSymbol> {
78
78
  decimals: number;
79
79
  symbol: Symbols;
80
80
  }
81
+ export interface XcmFeeWithBalance extends Balance {
82
+ fee: bigint;
83
+ }
81
84
  export interface SdkOptions {
82
85
  ethersSigner?: EthersSigner;
83
86
  polkadotSigner?: PolkadotSigner;
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.interfaces.js","sourceRoot":"","sources":["../../../../src/sdk/sdk.interfaces.ts"],"names":[],"mappings":";;;AA6KA,IAAY,eAIX;AAJD,WAAY,eAAe;IACzB,oCAAiB,CAAA;IACjB,gCAAa,CAAA;IACb,sCAAmB,CAAA;AACrB,CAAC,EAJW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAI1B"}
1
+ {"version":3,"file":"sdk.interfaces.js","sourceRoot":"","sources":["../../../../src/sdk/sdk.interfaces.ts"],"names":[],"mappings":";;;AAiLA,IAAY,eAIX;AAJD,WAAY,eAAe;IACzB,oCAAiB,CAAA;IACjB,gCAAa,CAAA;IACb,sCAAmB,CAAA;AACrB,CAAC,EAJW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAI1B"}
@@ -47,9 +47,10 @@ function initByChain(configBuilder, options) {
47
47
  if ((0, lodash_1.isString)(sourceAccount) && !signer) {
48
48
  throw new Error('Polkadot Signer/KeyringPair are not provided to XCM-SDK');
49
49
  }
50
- const [polkadot, foreignPolkadot] = await (0, polkadot_1.createPolkadotServices)([configBuilder.moonChain.ws, config.origin.ws]);
50
+ const [polkadot, foreignPolkadot] = await (0, polkadot_1.createPolkadotServices)([configBuilder.moonChain.ws, config.source.ws]);
51
51
  const meta = foreignPolkadot.getMetadata();
52
- const nativeAsset = configBuilder.assets[meta.symbol];
52
+ const nativeAsset = configBuilder.assets[meta.symbol] ||
53
+ (0, sdk_utils_1.createDummyAsset)(meta.symbol);
53
54
  return (0, sdk_deposit_1.getDepositData)({
54
55
  account,
55
56
  asset,
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.js","sourceRoot":"","sources":["../../../../src/sdk/sdk.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sdk.js","sourceRoot":"","sources":["../../../../src/sdk/sdk.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { AssetSymbol, ChainKey, XcmConfigBuilder } from '@moonbeam-network/xcm-config';
1
+ import { Asset, AssetSymbol, ChainKey, XcmConfigBuilder } from '@moonbeam-network/xcm-config';
2
2
  import { UnsubscribePromise } from '@polkadot/api/types';
3
3
  import { AssetBalanceInfo, PolkadotService } from '../polkadot';
4
4
  import { XcmSdkDeposit, XcmSdkWithdraw } from './sdk.interfaces';
@@ -13,3 +13,4 @@ export interface SubscribeToAssetsBalanceInfoParams<Symbols extends AssetSymbol,
13
13
  cb: (data: AssetBalanceInfo<Symbols>[]) => void;
14
14
  }
15
15
  export declare function subscribeToAssetsBalanceInfo<Symbols extends AssetSymbol, ChainKeys extends ChainKey>({ account, polkadot, configBuilder, cb, }: SubscribeToAssetsBalanceInfoParams<Symbols, ChainKeys>): UnsubscribePromise;
16
+ export declare function createDummyAsset(symbol: AssetSymbol): Asset<AssetSymbol>;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.subscribeToAssetsBalanceInfo = exports.sortByBalanceAndChainName = exports.toDecimal = exports.isXcmSdkWithdraw = exports.isXcmSdkDeposit = void 0;
3
+ exports.createDummyAsset = exports.subscribeToAssetsBalanceInfo = exports.sortByBalanceAndChainName = exports.toDecimal = exports.isXcmSdkWithdraw = exports.isXcmSdkDeposit = void 0;
4
4
  function isXcmSdkDeposit(config) {
5
5
  return !!config.from;
6
6
  }
@@ -66,4 +66,12 @@ async function subscribeToAssetsBalanceInfo({ account, polkadot, configBuilder,
66
66
  };
67
67
  }
68
68
  exports.subscribeToAssetsBalanceInfo = subscribeToAssetsBalanceInfo;
69
+ function createDummyAsset(symbol) {
70
+ return {
71
+ id: '',
72
+ erc20Id: '',
73
+ originSymbol: symbol,
74
+ };
75
+ }
76
+ exports.createDummyAsset = createDummyAsset;
69
77
  //# sourceMappingURL=sdk.utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.utils.js","sourceRoot":"","sources":["../../../../src/sdk/sdk.utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sdk.utils.js","sourceRoot":"","sources":["../../../../src/sdk/sdk.utils.ts"],"names":[],"mappings":";;;AAUA,SAAgB,eAAe,CAC7B,MAAsC;IAEtC,OAAO,CAAC,CAAE,MAAwB,CAAC,IAAI,CAAC;AAC1C,CAAC;AAJD,0CAIC;AAED,SAAgB,gBAAgB,CAC9B,MAAsC;IAEtC,OAAO,CAAC,CAAE,MAAyB,CAAC,EAAE,CAAC;AACzC,CAAC;AAJD,4CAIC;AAED,SAAgB,SAAS,CACvB,MAAc,EACd,QAAgB,EAChB,UAAU,GAAG,CAAC;IAEd,MAAM,iBAAiB,GAAG,EAAE,IAAI,UAAU,CAAC;IAC3C,MAAM,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC;IACpD,MAAM,OAAO,GAAG,GAAG,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC;IAExC,OAAO,MAAM,CAAC,QAAQ,GAAG,OAAO,CAAC,GAAG,iBAAiB,CAAC;AACxD,CAAC;AAVD,8BAUC;AAED,SAAgB,yBAAyB,CACvC,CAA4B,EAC5B,CAA4B;IAE5B,IAAI,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE;QACpB,OAAO,CAAC,CAAC,CAAC;KACX;IAED,IAAI,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE;QACpB,OAAO,CAAC,CAAC;KACV;IAED,MAAM,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAClE,MAAM,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAElE,IAAI,QAAQ,IAAI,QAAQ,EAAE;QACxB,OAAO,QAAQ,GAAG,QAAQ,CAAC;KAC5B;IAED,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,CAAC;IACnE,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,CAAC;IAEnE,IAAI,KAAK,GAAG,KAAK,EAAE;QACjB,OAAO,CAAC,CAAC,CAAC;KACX;IAED,IAAI,KAAK,GAAG,KAAK,EAAE;QACjB,OAAO,CAAC,CAAC;KACV;IAED,OAAO,CAAC,CAAC;AACX,CAAC;AA/BD,8DA+BC;AAYM,KAAK,UAAU,4BAA4B,CAGhD,EACA,OAAO,EACP,QAAQ,EACR,aAAa,EACb,EAAE,GACqD;IACvD,IAAI,WAAW,GAAG,EAAE,CAAC;IACrB,IAAI,QAAQ,GAAgC,EAAE,CAAC;IAC/C,MAAM,OAAO,GAAG,CAAC,IAA0C,EAAE,EAAE;QAC7D,MAAM,SAAS,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC;QAE3C,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC;QAC7C,QAAQ,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;aACrC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YACZ,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;gBACvB,6CAA6C;gBAC7C,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,WAAW,CAAC;aACpC;YAED,OAAO,IAAI,CAAC;QACd,CAAC,CAAC;aACD,IAAI,CAAC,yBAAyB,CAAC,CAAC;QAEnC,IAAI,QAAQ,CAAC,MAAM,EAAE;YACnB,EAAE,CAAC,QAAQ,CAAC,CAAC;SACd;IACH,CAAC,CAAC;IAEF,MAAM,kBAAkB,GAAG,MAAM,QAAQ,CAAC,kBAAkB,CAC1D,OAAO,EACP,OAAO,CACR,CAAC;IACF,MAAM,eAAe,GAAG,MAAM,QAAQ,CAAC,4BAA4B,CACjE,OAAO,EACP,aAAa,EACb,OAAO,CACR,CAAC;IAEF,OAAO,GAAG,EAAE;QACV,kBAAkB,EAAE,CAAC;QACrB,eAAe,EAAE,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC;AA7CD,oEA6CC;AAED,SAAgB,gBAAgB,CAAC,MAAmB;IAClD,OAAO;QACL,EAAE,EAAE,EAAE;QACN,OAAO,EAAE,EAAE;QACX,YAAY,EAAE,MAAM;KACrB,CAAC;AACJ,CAAC;AAND,4CAMC"}
@@ -33,9 +33,9 @@ exports.createTransactionEventHandler = createTransactionEventHandler;
33
33
  async function getWithdrawData({ asset, config, contract, destinationAccount, destinationPolkadot, ethersSigner, moonChain, nativeAsset, origin, polkadot, }) {
34
34
  const meta = destinationPolkadot.getMetadata();
35
35
  const [decimals, destinationBalance, existentialDeposit, assetMinBalance] = await Promise.all([
36
- asset.isNative ? moonChain.decimals : polkadot.getAssetDecimals(asset.id),
36
+ asset.isNative ? moonChain.decimals : polkadot.getAssetDecimals(asset),
37
37
  destinationPolkadot.getGenericBalance(destinationAccount, config.balance),
38
- destinationPolkadot.getExistentialDeposit(),
38
+ asset.isNative ? 0n : destinationPolkadot.getExistentialDeposit(),
39
39
  config.sourceMinBalance
40
40
  ? destinationPolkadot.getAssetMinBalance(config.sourceMinBalance)
41
41
  : 0n,
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.withdraw.js","sourceRoot":"","sources":["../../../../src/sdk/sdk.withdraw.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sdk.withdraw.js","sourceRoot":"","sources":["../../../../src/sdk/sdk.withdraw.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import '@moonbeam-network/api-augment';
2
- import { AssetSymbol, BalanceConfig, ChainKey, ExtrinsicConfig, MinBalanceConfig, XcmConfigBuilder } from '@moonbeam-network/xcm-config';
2
+ import { Asset, AssetSymbol, BalanceConfig, ChainKey, ExtrinsicConfig, MinBalanceConfig, MoonChain, XcmConfigBuilder } from '@moonbeam-network/xcm-config';
3
3
  import { ApiPromise } from '@polkadot/api';
4
4
  import { SubmittableExtrinsic, UnsubscribePromise } from '@polkadot/api/types';
5
5
  import { AccountInfo } from '@polkadot/types/interfaces';
@@ -9,21 +9,22 @@ export declare class PolkadotService<Symbols extends AssetSymbol = AssetSymbol,
9
9
  #private;
10
10
  constructor(api: ApiPromise);
11
11
  static create<Symbols extends AssetSymbol = AssetSymbol, ChainKeys extends ChainKey = ChainKey>(ws: string): Promise<PolkadotService<Symbols, ChainKeys>>;
12
- static getChainMin(weight: number, unitsPerSecond: bigint): bigint;
13
12
  getMetadata(): {
14
13
  decimals: number;
15
14
  symbol: Symbols;
16
15
  };
17
16
  getExistentialDeposit(): bigint;
18
- getAssetDecimals(assetId: string): Promise<number>;
19
- getAssetMeta(assetId: string): Promise<PalletAssetsAssetMetadata>;
17
+ getAssetDecimals(asset: Asset<Symbols>): Promise<number>;
18
+ getAssetMeta(asset: Asset<Symbols>): Promise<PalletAssetsAssetMetadata>;
20
19
  subscribeToAccountInfo(account: string, callback: (info: AccountInfo) => void): UnsubscribePromise;
21
20
  subscribeToBalance(account: string, callback: (balance: bigint) => void): UnsubscribePromise;
22
21
  getGenericBalance(account: string, { pallet, function: fn, getParams, path, calc }: BalanceConfig<Symbols>): Promise<bigint>;
23
22
  getAssetMinBalance({ pallet, function: fn, params, path, }: MinBalanceConfig): Promise<bigint>;
24
23
  getXcmExtrinsic(account: string, amount: bigint, { pallet, extrinsic, getParams }: ExtrinsicConfig<Symbols>, fee?: bigint, primaryAccount?: string): SubmittableExtrinsic<'promise'>;
25
- getAssetFee(id: string, weight: number): Promise<bigint>;
24
+ getAssetFee(asset: Asset, weight: number, moonChain: MoonChain): Promise<bigint>;
25
+ getUnitsPerSecond(asset: Asset, moonChain: MoonChain): Promise<bigint>;
26
26
  getAssetType(id: string): Promise<MoonbeamRuntimeXcmConfigAssetType | undefined>;
27
27
  subscribeToAssetsBalanceInfo(account: string, config: XcmConfigBuilder<Symbols, ChainKeys>, callback: (data: AssetBalanceInfo<Symbols>[]) => void): UnsubscribePromise;
28
- subscribeToAccountBalances(account: string, ids: string[], callback: (balances: PalletAssetsAssetAccount[]) => void): UnsubscribePromise;
28
+ getAssetsMetadata(assetsArray: Asset<Symbols>[]): Promise<PalletAssetsAssetMetadata[]>;
29
+ subscribeToAccountBalances(account: string, assetsArray: Asset<Symbols>[], callback: (balances: PalletAssetsAssetAccount[]) => void): UnsubscribePromise;
29
30
  }
@@ -25,9 +25,6 @@ class PolkadotService {
25
25
  static async create(ws) {
26
26
  return new PolkadotService(await (0, polkadot_api_1.getPolkadotApi)(ws));
27
27
  }
28
- static getChainMin(weight, unitsPerSecond) {
29
- return (0, polkadot_utils_1.calculateMin)(weight, unitsPerSecond);
30
- }
31
28
  getMetadata() {
32
29
  return {
33
30
  decimals: __classPrivateFieldGet(this, _PolkadotService_api, "f").registry.chainDecimals.at(0) || 12,
@@ -37,12 +34,14 @@ class PolkadotService {
37
34
  getExistentialDeposit() {
38
35
  return __classPrivateFieldGet(this, _PolkadotService_api, "f").consts.balances?.existentialDeposit.toBigInt() || 0n;
39
36
  }
40
- async getAssetDecimals(assetId) {
41
- const meta = await this.getAssetMeta(assetId);
37
+ async getAssetDecimals(asset) {
38
+ const meta = await this.getAssetMeta(asset);
42
39
  return meta.decimals.toNumber();
43
40
  }
44
- async getAssetMeta(assetId) {
45
- return __classPrivateFieldGet(this, _PolkadotService_api, "f").query.assets.metadata(assetId);
41
+ async getAssetMeta(asset) {
42
+ return (asset.isLocalAsset
43
+ ? __classPrivateFieldGet(this, _PolkadotService_api, "f").query.localAssets.metadata
44
+ : __classPrivateFieldGet(this, _PolkadotService_api, "f").query.assets.metadata)(asset.id);
46
45
  }
47
46
  async subscribeToAccountInfo(account, callback) {
48
47
  return __classPrivateFieldGet(this, _PolkadotService_api, "f").query.system.account(account, callback);
@@ -59,7 +58,7 @@ class PolkadotService {
59
58
  return calc(path.length ? (0, lodash_1.get)(unwrapped, path) : unwrapped);
60
59
  }
61
60
  async getAssetMinBalance({ pallet, function: fn, params, path, }) {
62
- const details = await __classPrivateFieldGet(this, _PolkadotService_api, "f").query[pallet][fn](...params);
61
+ const details = (await __classPrivateFieldGet(this, _PolkadotService_api, "f").query[pallet][fn](...params));
63
62
  if (details.isEmpty) {
64
63
  return 0n;
65
64
  }
@@ -75,13 +74,20 @@ class PolkadotService {
75
74
  }
76
75
  return transferExtrinsic;
77
76
  }
78
- async getAssetFee(id, weight) {
79
- const type = await this.getAssetType(id);
77
+ async getAssetFee(asset, weight, moonChain) {
78
+ return (0, polkadot_utils_1.calculateMin)(weight, await this.getUnitsPerSecond(asset, moonChain));
79
+ }
80
+ async getUnitsPerSecond(asset, moonChain) {
81
+ if (asset.isNative) {
82
+ return moonChain.unitsPerSecond;
83
+ }
84
+ const type = await this.getAssetType(asset.id);
80
85
  if (!type) {
81
86
  return 0n;
82
87
  }
83
- const unitsPerSecond = await __classPrivateFieldGet(this, _PolkadotService_api, "f").query.assetManager.assetTypeUnitsPerSecond(type);
84
- return (0, polkadot_utils_1.calculateMin)(weight, unitsPerSecond.unwrapOrDefault().toBigInt());
88
+ return (await __classPrivateFieldGet(this, _PolkadotService_api, "f").query.assetManager.assetTypeUnitsPerSecond(type))
89
+ .unwrapOrDefault()
90
+ .toBigInt();
85
91
  }
86
92
  async getAssetType(id) {
87
93
  const type = await __classPrivateFieldGet(this, _PolkadotService_api, "f").query.assetManager.assetIdType(id);
@@ -89,9 +95,8 @@ class PolkadotService {
89
95
  }
90
96
  async subscribeToAssetsBalanceInfo(account, config, callback) {
91
97
  const assetsArray = Object.values(config.assets);
92
- const ids = assetsArray.map((asset) => asset.id);
93
- const metadata = (await __classPrivateFieldGet(this, _PolkadotService_api, "f").query.assets.metadata.multi(ids));
94
- return this.subscribeToAccountBalances(account, ids, (data) => {
98
+ const metadata = await this.getAssetsMetadata(assetsArray);
99
+ return this.subscribeToAccountBalances(account, assetsArray, (data) => {
95
100
  callback(data.map((balance, index) => {
96
101
  const asset = assetsArray[index];
97
102
  const meta = metadata[index];
@@ -113,10 +118,24 @@ class PolkadotService {
113
118
  }));
114
119
  });
115
120
  }
116
- async subscribeToAccountBalances(account, ids, callback) {
117
- const keys = ids.map((x) => [x, account]);
118
- return __classPrivateFieldGet(this, _PolkadotService_api, "f").query.assets.account.multi(keys, (res) => {
119
- const response = res.map((balance) => balance.unwrapOrDefault());
121
+ async getAssetsMetadata(assetsArray) {
122
+ const queries = assetsArray.map((x) => [
123
+ x.isLocalAsset
124
+ ? __classPrivateFieldGet(this, _PolkadotService_api, "f").query.localAssets.metadata
125
+ : __classPrivateFieldGet(this, _PolkadotService_api, "f").query.assets.metadata,
126
+ [x.id],
127
+ ]);
128
+ return __classPrivateFieldGet(this, _PolkadotService_api, "f").queryMulti(queries);
129
+ }
130
+ async subscribeToAccountBalances(account, assetsArray, callback) {
131
+ const queries = assetsArray.map((x) => [
132
+ x.isLocalAsset
133
+ ? __classPrivateFieldGet(this, _PolkadotService_api, "f").query.localAssets.account
134
+ : __classPrivateFieldGet(this, _PolkadotService_api, "f").query.assets.account,
135
+ [x.id, account],
136
+ ]);
137
+ return __classPrivateFieldGet(this, _PolkadotService_api, "f").queryMulti(queries, (res) => {
138
+ const response = res.map((item) => item.unwrapOrDefault());
120
139
  callback(response);
121
140
  });
122
141
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PolkadotService.js","sourceRoot":"","sources":["../../../../src/polkadot/PolkadotService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PolkadotService.js","sourceRoot":"","sources":["../../../../src/polkadot/PolkadotService.ts"],"names":[],"mappings":"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"}
@@ -7,12 +7,11 @@ export declare function createExtrinsicEventHandler<Symbols extends AssetSymbol>
7
7
  export interface CreateExtrinsicOptions<Symbols extends AssetSymbol, ChainKeys extends ChainKey> {
8
8
  account: string;
9
9
  config: DepositConfig<Symbols>;
10
+ fee?: bigint;
10
11
  foreignPolkadot: PolkadotService<Symbols, ChainKeys>;
11
- nativeAsset: Asset<Symbols>;
12
- polkadot: PolkadotService<Symbols, ChainKeys>;
13
12
  primaryAccount?: string;
14
13
  }
15
- export declare function getCreateExtrinsic<Symbols extends AssetSymbol, ChainKeys extends ChainKey>({ account, config, foreignPolkadot, nativeAsset, polkadot, primaryAccount, }: CreateExtrinsicOptions<Symbols, ChainKeys>): (amount: bigint) => Promise<import("@polkadot/api/types").SubmittableExtrinsic<"promise", ISubmittableResult>>;
14
+ export declare function getCreateExtrinsic<Symbols extends AssetSymbol, ChainKeys extends ChainKey>({ account, config, foreignPolkadot, primaryAccount, fee, }: CreateExtrinsicOptions<Symbols, ChainKeys>): (amount: bigint) => import("@polkadot/api/types").SubmittableExtrinsic<"promise", ISubmittableResult>;
16
15
  export interface GetDepositDataParams<Symbols extends AssetSymbol, ChainKeys extends ChainKey> {
17
16
  account: string;
18
17
  asset: Asset<Symbols>;
@@ -27,10 +26,3 @@ export interface GetDepositDataParams<Symbols extends AssetSymbol, ChainKeys ext
27
26
  sourceAccount: string | IKeyringPair;
28
27
  }
29
28
  export declare function getDepositData<Symbols extends AssetSymbol, ChainKeys extends ChainKey>({ account, asset, config, foreignPolkadot, moonChain, nativeAsset, origin, polkadot, polkadotSigner, primaryAccount, sourceAccount, }: GetDepositDataParams<Symbols, ChainKeys>): Promise<DepositTransferData<Symbols>>;
30
- export interface GetMinParams<Symbols extends AssetSymbol, ChainKeys extends ChainKey> {
31
- asset: Asset<Symbols>;
32
- config: DepositConfig<Symbols>;
33
- moonChain: MoonChain;
34
- polkadot: PolkadotService<Symbols, ChainKeys>;
35
- }
36
- export declare function getMin<Symbols extends AssetSymbol, ChainKeys extends ChainKey>({ asset, config, moonChain, polkadot, }: GetMinParams<Symbols, ChainKeys>): Promise<bigint>;
@@ -1,9 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getMin = exports.getDepositData = exports.getCreateExtrinsic = exports.createExtrinsicEventHandler = void 0;
3
+ exports.getDepositData = exports.getCreateExtrinsic = exports.createExtrinsicEventHandler = void 0;
4
4
  const xcm_config_1 = require("@moonbeam-network/xcm-config");
5
5
  const util_1 = require("@polkadot/util");
6
- const polkadot_1 = require("../polkadot");
7
6
  const sdk_interfaces_1 = require("./sdk.interfaces");
8
7
  function createExtrinsicEventHandler(config, cb) {
9
8
  return ({ events = [], status, txHash }) => {
@@ -47,50 +46,64 @@ function createExtrinsicEventHandler(config, cb) {
47
46
  };
48
47
  }
49
48
  exports.createExtrinsicEventHandler = createExtrinsicEventHandler;
50
- function getCreateExtrinsic({ account, config, foreignPolkadot, nativeAsset, polkadot, primaryAccount, }) {
51
- return async (amount) => {
52
- const fee = (0, xcm_config_1.isMultiCurrency)(config.extrinsic)
53
- ? await polkadot.getAssetFee(nativeAsset.id, config.origin.weight)
54
- : 0n;
55
- return foreignPolkadot.getXcmExtrinsic(account, amount, config.extrinsic, fee, primaryAccount);
56
- };
49
+ function getCreateExtrinsic({ account, config, foreignPolkadot, primaryAccount, fee, }) {
50
+ return (amount) => foreignPolkadot.getXcmExtrinsic(account, amount, config.extrinsic, fee, primaryAccount);
57
51
  }
58
52
  exports.getCreateExtrinsic = getCreateExtrinsic;
59
53
  async function getDepositData({ account, asset, config, foreignPolkadot, moonChain, nativeAsset, origin, polkadot, polkadotSigner, primaryAccount, sourceAccount, }) {
60
54
  const sourceAddress = typeof sourceAccount === 'string' ? sourceAccount : sourceAccount.address;
61
55
  const meta = foreignPolkadot.getMetadata();
62
- const createExtrinsic = getCreateExtrinsic({
63
- account,
64
- config,
65
- foreignPolkadot,
66
- nativeAsset,
67
- polkadot,
68
- primaryAccount,
69
- });
70
- const [decimals, sourceBalance, existentialDeposit, sourceFeeBalance, moonChainFee, sourceMinBalance = 0n, min,] = await Promise.all([
71
- polkadot.getAssetDecimals(asset.id),
72
- foreignPolkadot.getGenericBalance(primaryAccount || sourceAddress, config.balance),
56
+ const xcmFeeAssetConfig = {
57
+ asset: config.xcmFeeAsset?.asset ?? asset,
58
+ balance: config.xcmFeeAsset?.balance ?? config.balance,
59
+ };
60
+ const [assetDecimals, existentialDeposit, sourceBalance, sourceFeeBalance, sourceMinBalance = 0n, xcmFee, xcmFeeBalance, xcmFeeDecimals,] = await Promise.all([
61
+ // assetDecimals
62
+ polkadot.getAssetDecimals(asset),
63
+ // existentialDeposit
73
64
  foreignPolkadot.getExistentialDeposit(),
65
+ // sourceBalance
66
+ foreignPolkadot.getGenericBalance(primaryAccount || sourceAddress, config.balance),
67
+ // sourceFeeBalance
74
68
  config.sourceFeeBalance
75
69
  ? foreignPolkadot.getGenericBalance(sourceAddress, config.sourceFeeBalance)
76
70
  : undefined,
77
- config.isNativeAssetPayingMoonFee
78
- ? polkadot.getAssetFee(nativeAsset.id, config.origin.weight)
79
- : undefined,
71
+ // sourceMinBalance
80
72
  config.sourceMinBalance
81
73
  ? foreignPolkadot.getAssetMinBalance(config.sourceMinBalance)
82
74
  : undefined,
83
- // eslint-disable-next-line @typescript-eslint/no-use-before-define
84
- getMin({ asset, config, moonChain, polkadot }),
75
+ // xcmFee
76
+ polkadot.getAssetFee(xcmFeeAssetConfig.asset, config.source.weight, moonChain),
77
+ // xcmFeeBalance
78
+ foreignPolkadot.getGenericBalance(primaryAccount || sourceAddress, xcmFeeAssetConfig.balance),
79
+ // xcmFeeDecimals
80
+ polkadot.getAssetDecimals(xcmFeeAssetConfig.asset),
85
81
  ]);
82
+ // Min is basically the XCM fee, if it's the same asset. If less is sent then
83
+ // Moon* won't process the message.
84
+ const min = config.xcmFeeAsset ? 0n : xcmFee;
85
+ const createExtrinsic = getCreateExtrinsic({
86
+ account,
87
+ config,
88
+ foreignPolkadot,
89
+ primaryAccount,
90
+ fee: xcmFee,
91
+ });
86
92
  return {
87
- asset: { ...asset, decimals },
93
+ asset: { ...asset, decimals: assetDecimals },
88
94
  existentialDeposit,
89
95
  min,
90
- moonChainFee,
96
+ moonChainFee: {
97
+ balance: xcmFeeBalance,
98
+ decimals: xcmFeeAssetConfig.asset.isNative
99
+ ? meta.decimals
100
+ : xcmFeeDecimals,
101
+ fee: xcmFee,
102
+ symbol: xcmFeeAssetConfig.asset.originSymbol,
103
+ },
91
104
  native: { ...nativeAsset, decimals: meta.decimals },
92
105
  origin,
93
- source: config.origin,
106
+ source: config.source,
94
107
  sourceBalance,
95
108
  sourceFeeBalance: !(0, util_1.isUndefined)(sourceFeeBalance)
96
109
  ? { ...meta, balance: sourceFeeBalance }
@@ -111,13 +124,4 @@ async function getDepositData({ account, asset, config, foreignPolkadot, moonCha
111
124
  };
112
125
  }
113
126
  exports.getDepositData = getDepositData;
114
- async function getMin({ asset, config, moonChain, polkadot, }) {
115
- if (config.sourceFeeBalance && config.isNativeAssetPayingMoonFee) {
116
- return 0n;
117
- }
118
- return asset.isNative
119
- ? polkadot_1.PolkadotService.getChainMin(config.origin.weight, moonChain.unitsPerSecond)
120
- : polkadot.getAssetFee(asset.id, config.origin.weight);
121
- }
122
- exports.getMin = getMin;
123
127
  //# sourceMappingURL=sdk.deposit.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.deposit.js","sourceRoot":"","sources":["../../../../src/sdk/sdk.deposit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sdk.deposit.js","sourceRoot":"","sources":["../../../../src/sdk/sdk.deposit.ts"],"names":[],"mappings":"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"}
@@ -47,7 +47,7 @@ export interface DepositTransferData<Symbols extends AssetSymbol = AssetSymbol,
47
47
  asset: AssetWithDecimals<Symbols>;
48
48
  existentialDeposit: bigint;
49
49
  min: bigint;
50
- moonChainFee?: bigint;
50
+ moonChainFee: XcmFeeWithBalance;
51
51
  native: AssetWithDecimals<Symbols>;
52
52
  origin: MoonChain | Chain<ChainKeys>;
53
53
  source: Chain<ChainKeys>;
@@ -78,6 +78,9 @@ export interface Balance<Symbols extends string | AssetSymbol = AssetSymbol> {
78
78
  decimals: number;
79
79
  symbol: Symbols;
80
80
  }
81
+ export interface XcmFeeWithBalance extends Balance {
82
+ fee: bigint;
83
+ }
81
84
  export interface SdkOptions {
82
85
  ethersSigner?: EthersSigner;
83
86
  polkadotSigner?: PolkadotSigner;
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.interfaces.js","sourceRoot":"","sources":["../../../../src/sdk/sdk.interfaces.ts"],"names":[],"mappings":";;;AA6KA,IAAY,eAIX;AAJD,WAAY,eAAe;IACzB,oCAAiB,CAAA;IACjB,gCAAa,CAAA;IACb,sCAAmB,CAAA;AACrB,CAAC,EAJW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAI1B"}
1
+ {"version":3,"file":"sdk.interfaces.js","sourceRoot":"","sources":["../../../../src/sdk/sdk.interfaces.ts"],"names":[],"mappings":";;;AAiLA,IAAY,eAIX;AAJD,WAAY,eAAe;IACzB,oCAAiB,CAAA;IACjB,gCAAa,CAAA;IACb,sCAAmB,CAAA;AACrB,CAAC,EAJW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAI1B"}
@@ -47,9 +47,10 @@ function initByChain(configBuilder, options) {
47
47
  if ((0, lodash_1.isString)(sourceAccount) && !signer) {
48
48
  throw new Error('Polkadot Signer/KeyringPair are not provided to XCM-SDK');
49
49
  }
50
- const [polkadot, foreignPolkadot] = await (0, polkadot_1.createPolkadotServices)([configBuilder.moonChain.ws, config.origin.ws]);
50
+ const [polkadot, foreignPolkadot] = await (0, polkadot_1.createPolkadotServices)([configBuilder.moonChain.ws, config.source.ws]);
51
51
  const meta = foreignPolkadot.getMetadata();
52
- const nativeAsset = configBuilder.assets[meta.symbol];
52
+ const nativeAsset = configBuilder.assets[meta.symbol] ||
53
+ (0, sdk_utils_1.createDummyAsset)(meta.symbol);
53
54
  return (0, sdk_deposit_1.getDepositData)({
54
55
  account,
55
56
  asset,
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.js","sourceRoot":"","sources":["../../../../src/sdk/sdk.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sdk.js","sourceRoot":"","sources":["../../../../src/sdk/sdk.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { AssetSymbol, ChainKey, XcmConfigBuilder } from '@moonbeam-network/xcm-config';
1
+ import { Asset, AssetSymbol, ChainKey, XcmConfigBuilder } from '@moonbeam-network/xcm-config';
2
2
  import { UnsubscribePromise } from '@polkadot/api/types';
3
3
  import { AssetBalanceInfo, PolkadotService } from '../polkadot';
4
4
  import { XcmSdkDeposit, XcmSdkWithdraw } from './sdk.interfaces';
@@ -13,3 +13,4 @@ export interface SubscribeToAssetsBalanceInfoParams<Symbols extends AssetSymbol,
13
13
  cb: (data: AssetBalanceInfo<Symbols>[]) => void;
14
14
  }
15
15
  export declare function subscribeToAssetsBalanceInfo<Symbols extends AssetSymbol, ChainKeys extends ChainKey>({ account, polkadot, configBuilder, cb, }: SubscribeToAssetsBalanceInfoParams<Symbols, ChainKeys>): UnsubscribePromise;
16
+ export declare function createDummyAsset(symbol: AssetSymbol): Asset<AssetSymbol>;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.subscribeToAssetsBalanceInfo = exports.sortByBalanceAndChainName = exports.toDecimal = exports.isXcmSdkWithdraw = exports.isXcmSdkDeposit = void 0;
3
+ exports.createDummyAsset = exports.subscribeToAssetsBalanceInfo = exports.sortByBalanceAndChainName = exports.toDecimal = exports.isXcmSdkWithdraw = exports.isXcmSdkDeposit = void 0;
4
4
  function isXcmSdkDeposit(config) {
5
5
  return !!config.from;
6
6
  }
@@ -66,4 +66,12 @@ async function subscribeToAssetsBalanceInfo({ account, polkadot, configBuilder,
66
66
  };
67
67
  }
68
68
  exports.subscribeToAssetsBalanceInfo = subscribeToAssetsBalanceInfo;
69
+ function createDummyAsset(symbol) {
70
+ return {
71
+ id: '',
72
+ erc20Id: '',
73
+ originSymbol: symbol,
74
+ };
75
+ }
76
+ exports.createDummyAsset = createDummyAsset;
69
77
  //# sourceMappingURL=sdk.utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.utils.js","sourceRoot":"","sources":["../../../../src/sdk/sdk.utils.ts"],"names":[],"mappings":";;;AASA,SAAgB,eAAe,CAC7B,MAAsC;IAEtC,OAAO,CAAC,CAAE,MAAwB,CAAC,IAAI,CAAC;AAC1C,CAAC;AAJD,0CAIC;AAED,SAAgB,gBAAgB,CAC9B,MAAsC;IAEtC,OAAO,CAAC,CAAE,MAAyB,CAAC,EAAE,CAAC;AACzC,CAAC;AAJD,4CAIC;AAED,SAAgB,SAAS,CACvB,MAAc,EACd,QAAgB,EAChB,UAAU,GAAG,CAAC;IAEd,MAAM,iBAAiB,GAAG,EAAE,IAAI,UAAU,CAAC;IAC3C,MAAM,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC;IACpD,MAAM,OAAO,GAAG,GAAG,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC;IAExC,OAAO,MAAM,CAAC,QAAQ,GAAG,OAAO,CAAC,GAAG,iBAAiB,CAAC;AACxD,CAAC;AAVD,8BAUC;AAED,SAAgB,yBAAyB,CACvC,CAA4B,EAC5B,CAA4B;IAE5B,IAAI,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE;QACpB,OAAO,CAAC,CAAC,CAAC;KACX;IAED,IAAI,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE;QACpB,OAAO,CAAC,CAAC;KACV;IAED,MAAM,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAClE,MAAM,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAElE,IAAI,QAAQ,IAAI,QAAQ,EAAE;QACxB,OAAO,QAAQ,GAAG,QAAQ,CAAC;KAC5B;IAED,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,CAAC;IACnE,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,CAAC;IAEnE,IAAI,KAAK,GAAG,KAAK,EAAE;QACjB,OAAO,CAAC,CAAC,CAAC;KACX;IAED,IAAI,KAAK,GAAG,KAAK,EAAE;QACjB,OAAO,CAAC,CAAC;KACV;IAED,OAAO,CAAC,CAAC;AACX,CAAC;AA/BD,8DA+BC;AAYM,KAAK,UAAU,4BAA4B,CAGhD,EACA,OAAO,EACP,QAAQ,EACR,aAAa,EACb,EAAE,GACqD;IACvD,IAAI,WAAW,GAAG,EAAE,CAAC;IACrB,IAAI,QAAQ,GAAgC,EAAE,CAAC;IAC/C,MAAM,OAAO,GAAG,CAAC,IAA0C,EAAE,EAAE;QAC7D,MAAM,SAAS,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC;QAE3C,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC;QAC7C,QAAQ,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;aACrC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YACZ,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;gBACvB,6CAA6C;gBAC7C,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,WAAW,CAAC;aACpC;YAED,OAAO,IAAI,CAAC;QACd,CAAC,CAAC;aACD,IAAI,CAAC,yBAAyB,CAAC,CAAC;QAEnC,IAAI,QAAQ,CAAC,MAAM,EAAE;YACnB,EAAE,CAAC,QAAQ,CAAC,CAAC;SACd;IACH,CAAC,CAAC;IAEF,MAAM,kBAAkB,GAAG,MAAM,QAAQ,CAAC,kBAAkB,CAC1D,OAAO,EACP,OAAO,CACR,CAAC;IACF,MAAM,eAAe,GAAG,MAAM,QAAQ,CAAC,4BAA4B,CACjE,OAAO,EACP,aAAa,EACb,OAAO,CACR,CAAC;IAEF,OAAO,GAAG,EAAE;QACV,kBAAkB,EAAE,CAAC;QACrB,eAAe,EAAE,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC;AA7CD,oEA6CC"}
1
+ {"version":3,"file":"sdk.utils.js","sourceRoot":"","sources":["../../../../src/sdk/sdk.utils.ts"],"names":[],"mappings":"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"}
@@ -33,9 +33,9 @@ exports.createTransactionEventHandler = createTransactionEventHandler;
33
33
  async function getWithdrawData({ asset, config, contract, destinationAccount, destinationPolkadot, ethersSigner, moonChain, nativeAsset, origin, polkadot, }) {
34
34
  const meta = destinationPolkadot.getMetadata();
35
35
  const [decimals, destinationBalance, existentialDeposit, assetMinBalance] = await Promise.all([
36
- asset.isNative ? moonChain.decimals : polkadot.getAssetDecimals(asset.id),
36
+ asset.isNative ? moonChain.decimals : polkadot.getAssetDecimals(asset),
37
37
  destinationPolkadot.getGenericBalance(destinationAccount, config.balance),
38
- destinationPolkadot.getExistentialDeposit(),
38
+ asset.isNative ? 0n : destinationPolkadot.getExistentialDeposit(),
39
39
  config.sourceMinBalance
40
40
  ? destinationPolkadot.getAssetMinBalance(config.sourceMinBalance)
41
41
  : 0n,
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.withdraw.js","sourceRoot":"","sources":["../../../../src/sdk/sdk.withdraw.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sdk.withdraw.js","sourceRoot":"","sources":["../../../../src/sdk/sdk.withdraw.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@moonbeam-network/xcm-sdk",
3
- "version": "0.0.26",
3
+ "version": "0.1.0",
4
4
  "description": "The Moonbeam XCM SDK enables developers to easily deposit and withdraw assets to Moonbeam/Moonriver from the relay chain and other parachains in the Polkadot/Kusama ecosystem",
5
5
  "author": "PureStake",
6
6
  "license": "MIT",
@@ -39,9 +39,9 @@
39
39
  "dependencies": {
40
40
  "@moonbeam-network/api-augment": "^0.1801.0",
41
41
  "@moonbeam-network/xcm-config": "*",
42
- "@polkadot/api": "^9.4.3",
43
- "@polkadot/types": "^9.4.3",
44
- "@polkadot/util": "^10.1.9",
42
+ "@polkadot/api": "^9.5.2",
43
+ "@polkadot/types": "^9.5.2",
44
+ "@polkadot/util": "^10.1.11",
45
45
  "ethers": "^5.7.1",
46
46
  "lodash": "^4.17.21",
47
47
  "lru-cache": "^7.14.0"