@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.
- package/README.md +56 -16
- package/build/index.cjs +2 -0
- package/build/index.cjs.map +1 -0
- package/build/index.d.ts +319 -0
- package/build/index.mjs +2 -0
- package/build/index.mjs.map +1 -0
- package/package.json +30 -18
- package/build/cjs/examples/simple/package.json +0 -21
- package/build/cjs/examples/simple/tsconfig.json +0 -10
- package/build/cjs/src/contracts/XTokensContract/XTokensABI.json +0 -94
- package/build/cjs/src/contracts/XTokensContract/XTokensContract.d.ts +0 -11
- package/build/cjs/src/contracts/XTokensContract/XTokensContract.js +0 -44
- package/build/cjs/src/contracts/XTokensContract/XTokensContract.js.map +0 -1
- package/build/cjs/src/contracts/XTokensContract/index.d.ts +0 -1
- package/build/cjs/src/contracts/XTokensContract/index.js +0 -6
- package/build/cjs/src/contracts/XTokensContract/index.js.map +0 -1
- package/build/cjs/src/contracts/index.d.ts +0 -1
- package/build/cjs/src/contracts/index.js +0 -18
- package/build/cjs/src/contracts/index.js.map +0 -1
- package/build/cjs/src/index.d.ts +0 -3
- package/build/cjs/src/index.js +0 -20
- package/build/cjs/src/index.js.map +0 -1
- package/build/cjs/src/polkadot/PolkadotService.d.ts +0 -29
- package/build/cjs/src/polkadot/PolkadotService.js +0 -126
- package/build/cjs/src/polkadot/PolkadotService.js.map +0 -1
- package/build/cjs/src/polkadot/index.d.ts +0 -4
- package/build/cjs/src/polkadot/index.js +0 -21
- package/build/cjs/src/polkadot/index.js.map +0 -1
- package/build/cjs/src/polkadot/polkadot.api.d.ts +0 -2
- package/build/cjs/src/polkadot/polkadot.api.js +0 -33
- package/build/cjs/src/polkadot/polkadot.api.js.map +0 -1
- package/build/cjs/src/polkadot/polkadot.factory.d.ts +0 -3
- package/build/cjs/src/polkadot/polkadot.factory.js +0 -9
- package/build/cjs/src/polkadot/polkadot.factory.js.map +0 -1
- package/build/cjs/src/polkadot/polkadot.interfaces.d.ts +0 -7
- package/build/cjs/src/polkadot/polkadot.interfaces.js +0 -3
- package/build/cjs/src/polkadot/polkadot.interfaces.js.map +0 -1
- package/build/cjs/src/polkadot/polkadot.utils.d.ts +0 -1
- package/build/cjs/src/polkadot/polkadot.utils.js +0 -9
- package/build/cjs/src/polkadot/polkadot.utils.js.map +0 -1
- package/build/cjs/src/sdk/index.d.ts +0 -3
- package/build/cjs/src/sdk/index.js +0 -24
- package/build/cjs/src/sdk/index.js.map +0 -1
- package/build/cjs/src/sdk/sdk.d.ts +0 -2
- package/build/cjs/src/sdk/sdk.deposit.d.ts +0 -36
- package/build/cjs/src/sdk/sdk.deposit.js +0 -123
- package/build/cjs/src/sdk/sdk.deposit.js.map +0 -1
- package/build/cjs/src/sdk/sdk.interfaces.d.ts +0 -105
- package/build/cjs/src/sdk/sdk.interfaces.js +0 -10
- package/build/cjs/src/sdk/sdk.interfaces.js.map +0 -1
- package/build/cjs/src/sdk/sdk.js +0 -109
- package/build/cjs/src/sdk/sdk.js.map +0 -1
- package/build/cjs/src/sdk/sdk.utils.d.ts +0 -15
- package/build/cjs/src/sdk/sdk.utils.js +0 -69
- package/build/cjs/src/sdk/sdk.utils.js.map +0 -1
- package/build/cjs/src/sdk/sdk.withdraw.d.ts +0 -21
- package/build/cjs/src/sdk/sdk.withdraw.js +0 -77
- package/build/cjs/src/sdk/sdk.withdraw.js.map +0 -1
- package/build/mjs/examples/simple/package.json +0 -21
- package/build/mjs/examples/simple/tsconfig.json +0 -10
- package/build/mjs/src/contracts/XTokensContract/XTokensABI.json +0 -94
- package/build/mjs/src/contracts/XTokensContract/XTokensContract.d.ts +0 -11
- package/build/mjs/src/contracts/XTokensContract/XTokensContract.js +0 -44
- package/build/mjs/src/contracts/XTokensContract/XTokensContract.js.map +0 -1
- package/build/mjs/src/contracts/XTokensContract/index.d.ts +0 -1
- package/build/mjs/src/contracts/XTokensContract/index.js +0 -6
- package/build/mjs/src/contracts/XTokensContract/index.js.map +0 -1
- package/build/mjs/src/contracts/index.d.ts +0 -1
- package/build/mjs/src/contracts/index.js +0 -18
- package/build/mjs/src/contracts/index.js.map +0 -1
- package/build/mjs/src/index.d.ts +0 -3
- package/build/mjs/src/index.js +0 -20
- package/build/mjs/src/index.js.map +0 -1
- package/build/mjs/src/polkadot/PolkadotService.d.ts +0 -29
- package/build/mjs/src/polkadot/PolkadotService.js +0 -126
- package/build/mjs/src/polkadot/PolkadotService.js.map +0 -1
- package/build/mjs/src/polkadot/index.d.ts +0 -4
- package/build/mjs/src/polkadot/index.js +0 -21
- package/build/mjs/src/polkadot/index.js.map +0 -1
- package/build/mjs/src/polkadot/polkadot.api.d.ts +0 -2
- package/build/mjs/src/polkadot/polkadot.api.js +0 -33
- package/build/mjs/src/polkadot/polkadot.api.js.map +0 -1
- package/build/mjs/src/polkadot/polkadot.factory.d.ts +0 -3
- package/build/mjs/src/polkadot/polkadot.factory.js +0 -9
- package/build/mjs/src/polkadot/polkadot.factory.js.map +0 -1
- package/build/mjs/src/polkadot/polkadot.interfaces.d.ts +0 -7
- package/build/mjs/src/polkadot/polkadot.interfaces.js +0 -3
- package/build/mjs/src/polkadot/polkadot.interfaces.js.map +0 -1
- package/build/mjs/src/polkadot/polkadot.utils.d.ts +0 -1
- package/build/mjs/src/polkadot/polkadot.utils.js +0 -9
- package/build/mjs/src/polkadot/polkadot.utils.js.map +0 -1
- package/build/mjs/src/sdk/index.d.ts +0 -3
- package/build/mjs/src/sdk/index.js +0 -24
- package/build/mjs/src/sdk/index.js.map +0 -1
- package/build/mjs/src/sdk/sdk.d.ts +0 -2
- package/build/mjs/src/sdk/sdk.deposit.d.ts +0 -36
- package/build/mjs/src/sdk/sdk.deposit.js +0 -123
- package/build/mjs/src/sdk/sdk.deposit.js.map +0 -1
- package/build/mjs/src/sdk/sdk.interfaces.d.ts +0 -105
- package/build/mjs/src/sdk/sdk.interfaces.js +0 -10
- package/build/mjs/src/sdk/sdk.interfaces.js.map +0 -1
- package/build/mjs/src/sdk/sdk.js +0 -109
- package/build/mjs/src/sdk/sdk.js.map +0 -1
- package/build/mjs/src/sdk/sdk.utils.d.ts +0 -15
- package/build/mjs/src/sdk/sdk.utils.js +0 -69
- package/build/mjs/src/sdk/sdk.utils.js.map +0 -1
- package/build/mjs/src/sdk/sdk.withdraw.d.ts +0 -21
- package/build/mjs/src/sdk/sdk.withdraw.js +0 -77
- 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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"}
|