@moonbeam-network/xcm-sdk 0.0.1-dev.3 → 0.0.1-dev.30

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 (109) hide show
  1. package/README.md +56 -16
  2. package/build/index.cjs +2 -0
  3. package/build/index.cjs.map +1 -0
  4. package/build/index.d.ts +319 -0
  5. package/build/index.mjs +2 -0
  6. package/build/index.mjs.map +1 -0
  7. package/package.json +30 -18
  8. package/build/cjs/examples/simple/package.json +0 -21
  9. package/build/cjs/examples/simple/tsconfig.json +0 -10
  10. package/build/cjs/src/contracts/XTokensContract/XTokensABI.json +0 -94
  11. package/build/cjs/src/contracts/XTokensContract/XTokensContract.d.ts +0 -11
  12. package/build/cjs/src/contracts/XTokensContract/XTokensContract.js +0 -44
  13. package/build/cjs/src/contracts/XTokensContract/XTokensContract.js.map +0 -1
  14. package/build/cjs/src/contracts/XTokensContract/index.d.ts +0 -1
  15. package/build/cjs/src/contracts/XTokensContract/index.js +0 -6
  16. package/build/cjs/src/contracts/XTokensContract/index.js.map +0 -1
  17. package/build/cjs/src/contracts/index.d.ts +0 -1
  18. package/build/cjs/src/contracts/index.js +0 -18
  19. package/build/cjs/src/contracts/index.js.map +0 -1
  20. package/build/cjs/src/index.d.ts +0 -3
  21. package/build/cjs/src/index.js +0 -20
  22. package/build/cjs/src/index.js.map +0 -1
  23. package/build/cjs/src/polkadot/PolkadotService.d.ts +0 -29
  24. package/build/cjs/src/polkadot/PolkadotService.js +0 -126
  25. package/build/cjs/src/polkadot/PolkadotService.js.map +0 -1
  26. package/build/cjs/src/polkadot/index.d.ts +0 -4
  27. package/build/cjs/src/polkadot/index.js +0 -21
  28. package/build/cjs/src/polkadot/index.js.map +0 -1
  29. package/build/cjs/src/polkadot/polkadot.api.d.ts +0 -2
  30. package/build/cjs/src/polkadot/polkadot.api.js +0 -33
  31. package/build/cjs/src/polkadot/polkadot.api.js.map +0 -1
  32. package/build/cjs/src/polkadot/polkadot.factory.d.ts +0 -3
  33. package/build/cjs/src/polkadot/polkadot.factory.js +0 -9
  34. package/build/cjs/src/polkadot/polkadot.factory.js.map +0 -1
  35. package/build/cjs/src/polkadot/polkadot.interfaces.d.ts +0 -7
  36. package/build/cjs/src/polkadot/polkadot.interfaces.js +0 -3
  37. package/build/cjs/src/polkadot/polkadot.interfaces.js.map +0 -1
  38. package/build/cjs/src/polkadot/polkadot.utils.d.ts +0 -1
  39. package/build/cjs/src/polkadot/polkadot.utils.js +0 -9
  40. package/build/cjs/src/polkadot/polkadot.utils.js.map +0 -1
  41. package/build/cjs/src/sdk/index.d.ts +0 -3
  42. package/build/cjs/src/sdk/index.js +0 -24
  43. package/build/cjs/src/sdk/index.js.map +0 -1
  44. package/build/cjs/src/sdk/sdk.d.ts +0 -2
  45. package/build/cjs/src/sdk/sdk.deposit.d.ts +0 -36
  46. package/build/cjs/src/sdk/sdk.deposit.js +0 -123
  47. package/build/cjs/src/sdk/sdk.deposit.js.map +0 -1
  48. package/build/cjs/src/sdk/sdk.interfaces.d.ts +0 -105
  49. package/build/cjs/src/sdk/sdk.interfaces.js +0 -10
  50. package/build/cjs/src/sdk/sdk.interfaces.js.map +0 -1
  51. package/build/cjs/src/sdk/sdk.js +0 -109
  52. package/build/cjs/src/sdk/sdk.js.map +0 -1
  53. package/build/cjs/src/sdk/sdk.utils.d.ts +0 -15
  54. package/build/cjs/src/sdk/sdk.utils.js +0 -69
  55. package/build/cjs/src/sdk/sdk.utils.js.map +0 -1
  56. package/build/cjs/src/sdk/sdk.withdraw.d.ts +0 -21
  57. package/build/cjs/src/sdk/sdk.withdraw.js +0 -77
  58. package/build/cjs/src/sdk/sdk.withdraw.js.map +0 -1
  59. package/build/mjs/examples/simple/package.json +0 -21
  60. package/build/mjs/examples/simple/tsconfig.json +0 -10
  61. package/build/mjs/src/contracts/XTokensContract/XTokensABI.json +0 -94
  62. package/build/mjs/src/contracts/XTokensContract/XTokensContract.d.ts +0 -11
  63. package/build/mjs/src/contracts/XTokensContract/XTokensContract.js +0 -44
  64. package/build/mjs/src/contracts/XTokensContract/XTokensContract.js.map +0 -1
  65. package/build/mjs/src/contracts/XTokensContract/index.d.ts +0 -1
  66. package/build/mjs/src/contracts/XTokensContract/index.js +0 -6
  67. package/build/mjs/src/contracts/XTokensContract/index.js.map +0 -1
  68. package/build/mjs/src/contracts/index.d.ts +0 -1
  69. package/build/mjs/src/contracts/index.js +0 -18
  70. package/build/mjs/src/contracts/index.js.map +0 -1
  71. package/build/mjs/src/index.d.ts +0 -3
  72. package/build/mjs/src/index.js +0 -20
  73. package/build/mjs/src/index.js.map +0 -1
  74. package/build/mjs/src/polkadot/PolkadotService.d.ts +0 -29
  75. package/build/mjs/src/polkadot/PolkadotService.js +0 -126
  76. package/build/mjs/src/polkadot/PolkadotService.js.map +0 -1
  77. package/build/mjs/src/polkadot/index.d.ts +0 -4
  78. package/build/mjs/src/polkadot/index.js +0 -21
  79. package/build/mjs/src/polkadot/index.js.map +0 -1
  80. package/build/mjs/src/polkadot/polkadot.api.d.ts +0 -2
  81. package/build/mjs/src/polkadot/polkadot.api.js +0 -33
  82. package/build/mjs/src/polkadot/polkadot.api.js.map +0 -1
  83. package/build/mjs/src/polkadot/polkadot.factory.d.ts +0 -3
  84. package/build/mjs/src/polkadot/polkadot.factory.js +0 -9
  85. package/build/mjs/src/polkadot/polkadot.factory.js.map +0 -1
  86. package/build/mjs/src/polkadot/polkadot.interfaces.d.ts +0 -7
  87. package/build/mjs/src/polkadot/polkadot.interfaces.js +0 -3
  88. package/build/mjs/src/polkadot/polkadot.interfaces.js.map +0 -1
  89. package/build/mjs/src/polkadot/polkadot.utils.d.ts +0 -1
  90. package/build/mjs/src/polkadot/polkadot.utils.js +0 -9
  91. package/build/mjs/src/polkadot/polkadot.utils.js.map +0 -1
  92. package/build/mjs/src/sdk/index.d.ts +0 -3
  93. package/build/mjs/src/sdk/index.js +0 -24
  94. package/build/mjs/src/sdk/index.js.map +0 -1
  95. package/build/mjs/src/sdk/sdk.d.ts +0 -2
  96. package/build/mjs/src/sdk/sdk.deposit.d.ts +0 -36
  97. package/build/mjs/src/sdk/sdk.deposit.js +0 -123
  98. package/build/mjs/src/sdk/sdk.deposit.js.map +0 -1
  99. package/build/mjs/src/sdk/sdk.interfaces.d.ts +0 -105
  100. package/build/mjs/src/sdk/sdk.interfaces.js +0 -10
  101. package/build/mjs/src/sdk/sdk.interfaces.js.map +0 -1
  102. package/build/mjs/src/sdk/sdk.js +0 -109
  103. package/build/mjs/src/sdk/sdk.js.map +0 -1
  104. package/build/mjs/src/sdk/sdk.utils.d.ts +0 -15
  105. package/build/mjs/src/sdk/sdk.utils.js +0 -69
  106. package/build/mjs/src/sdk/sdk.utils.js.map +0 -1
  107. package/build/mjs/src/sdk/sdk.withdraw.d.ts +0 -21
  108. package/build/mjs/src/sdk/sdk.withdraw.js +0 -77
  109. package/build/mjs/src/sdk/sdk.withdraw.js.map +0 -1
@@ -1,21 +0,0 @@
1
- import { Asset, AssetSymbol, Chain, ChainKey, MoonChain, WithdrawConfig } from '@moonbeam-network/xcm-config';
2
- import { Signer as EthersSigner } from 'ethers';
3
- import { XTokensContract } from '../contracts';
4
- import { PolkadotService } from '../polkadot';
5
- import { ExtrinsicEventsCallback, Hash, WithdrawTransferData } from './sdk.interfaces';
6
- export declare function createTransactionEventHandler(ethersSigner: EthersSigner, txHash: Hash, cb: ExtrinsicEventsCallback, skipSentEvent?: boolean): Promise<void>;
7
- export interface GetWithdrawDataParams<Symbols extends AssetSymbol, ChainKeys extends ChainKey> {
8
- asset: Asset<Symbols>;
9
- config: WithdrawConfig<Symbols>;
10
- contract: XTokensContract;
11
- destinationAccount: string;
12
- destinationPolkadot: PolkadotService<Symbols, ChainKeys>;
13
- ethersSigner: EthersSigner;
14
- moonChain: MoonChain;
15
- nativeAsset: Asset<Symbols>;
16
- origin: MoonChain | Chain<ChainKeys>;
17
- polkadot: PolkadotService<Symbols, ChainKeys>;
18
- }
19
- export declare function getWithdrawData<Symbols extends AssetSymbol, ChainKeys extends ChainKey>({ asset, config, contract, destinationAccount, destinationPolkadot, ethersSigner, moonChain, nativeAsset, origin, polkadot, }: GetWithdrawDataParams<Symbols, ChainKeys>): Promise<WithdrawTransferData<Symbols>>;
20
- export declare function getFee<Symbols extends AssetSymbol>(assetMinBalance: bigint, config: WithdrawConfig<Symbols>): bigint;
21
- export declare function getMin(balanceNeeded: bigint, destinationBalance: bigint, destinationFee: bigint): bigint;
@@ -1,77 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getMin = exports.getFee = exports.getWithdrawData = exports.createTransactionEventHandler = void 0;
4
- const sdk_interfaces_1 = require("./sdk.interfaces");
5
- async function createTransactionEventHandler(ethersSigner, txHash, cb, skipSentEvent = false) {
6
- if (!ethersSigner.provider) {
7
- throw new Error('options.ethersSigner has not provider');
8
- }
9
- if (!skipSentEvent) {
10
- cb({ status: sdk_interfaces_1.ExtrinsicStatus.Sent, txHash });
11
- }
12
- const tx = await ethersSigner.provider.getTransactionReceipt(txHash);
13
- if (!tx) {
14
- setTimeout(() => createTransactionEventHandler(ethersSigner, txHash, cb, true), 2000);
15
- return;
16
- }
17
- if (tx.status === 1) {
18
- cb({
19
- status: sdk_interfaces_1.ExtrinsicStatus.Success,
20
- blockHash: tx.blockHash,
21
- txHash,
22
- });
23
- }
24
- else {
25
- cb({
26
- status: sdk_interfaces_1.ExtrinsicStatus.Failed,
27
- blockHash: tx.blockHash,
28
- txHash,
29
- });
30
- }
31
- }
32
- exports.createTransactionEventHandler = createTransactionEventHandler;
33
- async function getWithdrawData({ asset, config, contract, destinationAccount, destinationPolkadot, ethersSigner, moonChain, nativeAsset, origin, polkadot, }) {
34
- const meta = destinationPolkadot.getMetadata();
35
- const [decimals, destinationBalance, existentialDeposit, assetMinBalance] = await Promise.all([
36
- asset.isNative ? moonChain.decimals : polkadot.getAssetDecimals(asset.id),
37
- destinationPolkadot.getGenericBalance(destinationAccount, config.balance),
38
- destinationPolkadot.getExistentialDeposit(),
39
- config.sourceMinBalance
40
- ? destinationPolkadot.getAssetMinBalance(config.sourceMinBalance)
41
- : 0n,
42
- ]);
43
- const destinationFee = getFee(assetMinBalance, config);
44
- const min = getMin(assetMinBalance || existentialDeposit, destinationBalance, destinationFee);
45
- return {
46
- asset: { ...asset, decimals },
47
- destination: config.destination,
48
- destinationBalance,
49
- destinationFee,
50
- existentialDeposit,
51
- min,
52
- native: { ...nativeAsset, decimals: meta.decimals },
53
- origin,
54
- getFee: async (amount) => contract.getTransferFees(destinationAccount, amount, asset, config),
55
- send: async (amount, cb) => {
56
- const tx = await contract.transfer(destinationAccount, amount, asset, config);
57
- if (cb) {
58
- createTransactionEventHandler(ethersSigner, tx.hash, cb);
59
- }
60
- return tx.hash;
61
- },
62
- };
63
- }
64
- exports.getWithdrawData = getWithdrawData;
65
- function getFee(assetMinBalance, config) {
66
- const calculatedFee = BigInt(config.weight * config.feePerWeight);
67
- return assetMinBalance > calculatedFee ? assetMinBalance : calculatedFee;
68
- }
69
- exports.getFee = getFee;
70
- function getMin(balanceNeeded, destinationBalance, destinationFee) {
71
- const extra = destinationBalance >= balanceNeeded
72
- ? 0n
73
- : balanceNeeded - destinationBalance;
74
- return destinationFee + extra;
75
- }
76
- exports.getMin = getMin;
77
- //# sourceMappingURL=sdk.withdraw.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sdk.withdraw.js","sourceRoot":"","sources":["../../../../src/sdk/sdk.withdraw.ts"],"names":[],"mappings":"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"}