@lifi/sdk 3.6.14-beta.0 → 3.7.0-alpha.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.
- package/package.json +6 -4
- package/src/_cjs/core/EVM/isBatchingSupported.js +2 -19
- package/src/_cjs/core/EVM/isBatchingSupported.js.map +1 -1
- package/src/_cjs/core/Solana/SolanaStepExecutor.js.map +1 -1
- package/src/_cjs/core/Solana/types.js.map +1 -1
- package/src/_cjs/core/Sui/Sui.js +37 -0
- package/src/_cjs/core/Sui/Sui.js.map +1 -0
- package/src/_cjs/core/Sui/SuiStepExecutor.js +117 -0
- package/src/_cjs/core/Sui/SuiStepExecutor.js.map +1 -0
- package/src/_cjs/core/Sui/getSuiBalance.js +54 -0
- package/src/_cjs/core/Sui/getSuiBalance.js.map +1 -0
- package/src/_cjs/core/Sui/getSuiNSAddress.js +32 -0
- package/src/_cjs/core/Sui/getSuiNSAddress.js.map +1 -0
- package/src/_cjs/core/Sui/parseSuiErrors.js +38 -0
- package/src/_cjs/core/Sui/parseSuiErrors.js.map +1 -0
- package/src/_cjs/core/Sui/suiClient.js +38 -0
- package/src/_cjs/core/Sui/suiClient.js.map +1 -0
- package/src/_cjs/core/Sui/types.js +11 -0
- package/src/_cjs/core/Sui/types.js.map +1 -0
- package/src/_cjs/core/checkBalance.js +2 -2
- package/src/_cjs/core/checkBalance.js.map +1 -1
- package/src/_cjs/core/rpc.js +1 -1
- package/src/_cjs/core/rpc.js.map +1 -1
- package/src/_cjs/createConfig.js +1 -1
- package/src/_cjs/createConfig.js.map +1 -1
- package/src/_cjs/index.js +5 -1
- package/src/_cjs/index.js.map +1 -1
- package/src/_cjs/services/balance.js +1 -5
- package/src/_cjs/services/balance.js.map +1 -1
- package/src/_cjs/version.js +1 -1
- package/src/_esm/core/EVM/isBatchingSupported.js +1 -17
- package/src/_esm/core/EVM/isBatchingSupported.js.map +1 -1
- package/src/_esm/core/Solana/SolanaStepExecutor.js.map +1 -1
- package/src/_esm/core/Solana/types.js.map +1 -1
- package/src/_esm/core/StatusManager.js +1 -1
- package/src/_esm/core/Sui/Sui.js +34 -0
- package/src/_esm/core/Sui/Sui.js.map +1 -0
- package/src/_esm/core/Sui/SuiStepExecutor.js +118 -0
- package/src/_esm/core/Sui/SuiStepExecutor.js.map +1 -0
- package/src/_esm/core/Sui/getSuiBalance.js +51 -0
- package/src/_esm/core/Sui/getSuiBalance.js.map +1 -0
- package/src/_esm/core/Sui/getSuiNSAddress.js +29 -0
- package/src/_esm/core/Sui/getSuiNSAddress.js.map +1 -0
- package/src/_esm/core/Sui/parseSuiErrors.js +34 -0
- package/src/_esm/core/Sui/parseSuiErrors.js.map +1 -0
- package/src/_esm/core/Sui/suiClient.js +47 -0
- package/src/_esm/core/Sui/suiClient.js.map +1 -0
- package/src/_esm/core/Sui/types.js +7 -0
- package/src/_esm/core/Sui/types.js.map +1 -0
- package/src/_esm/core/checkBalance.js +2 -2
- package/src/_esm/core/checkBalance.js.map +1 -1
- package/src/_esm/core/rpc.js +1 -1
- package/src/_esm/core/rpc.js.map +1 -1
- package/src/_esm/createConfig.js +1 -1
- package/src/_esm/createConfig.js.map +1 -1
- package/src/_esm/index.js +3 -1
- package/src/_esm/index.js.map +1 -1
- package/src/_esm/services/balance.js +1 -5
- package/src/_esm/services/balance.js.map +1 -1
- package/src/_esm/version.js +1 -1
- package/src/_types/core/EVM/isBatchingSupported.d.ts +1 -3
- package/src/_types/core/EVM/isBatchingSupported.d.ts.map +1 -1
- package/src/_types/core/Solana/SolanaStepExecutor.d.ts +2 -5
- package/src/_types/core/Solana/SolanaStepExecutor.d.ts.map +1 -1
- package/src/_types/core/Solana/types.d.ts +4 -1
- package/src/_types/core/Solana/types.d.ts.map +1 -1
- package/src/_types/core/StatusManager.d.ts +1 -1
- package/src/_types/core/Sui/Sui.d.ts +3 -0
- package/src/_types/core/Sui/Sui.d.ts.map +1 -0
- package/src/_types/core/Sui/SuiStepExecutor.d.ts +10 -0
- package/src/_types/core/Sui/SuiStepExecutor.d.ts.map +1 -0
- package/src/_types/core/Sui/getSuiBalance.d.ts +3 -0
- package/src/_types/core/Sui/getSuiBalance.d.ts.map +1 -0
- package/src/_types/core/Sui/getSuiNSAddress.d.ts +2 -0
- package/src/_types/core/Sui/getSuiNSAddress.d.ts.map +1 -0
- package/src/_types/core/Sui/parseSuiErrors.d.ts +5 -0
- package/src/_types/core/Sui/parseSuiErrors.d.ts.map +1 -0
- package/src/_types/core/Sui/suiClient.d.ts +18 -0
- package/src/_types/core/Sui/suiClient.d.ts.map +1 -0
- package/src/_types/core/Sui/types.d.ts +15 -0
- package/src/_types/core/Sui/types.d.ts.map +1 -0
- package/src/_types/index.d.ts +5 -2
- package/src/_types/index.d.ts.map +1 -1
- package/src/_types/services/balance.d.ts +1 -1
- package/src/_types/services/balance.d.ts.map +1 -1
- package/src/_types/version.d.ts +1 -1
- package/src/core/EVM/isBatchingSupported.ts +2 -41
- package/src/core/Solana/SolanaStepExecutor.ts +2 -10
- package/src/core/Solana/types.ts +5 -1
- package/src/core/StatusManager.ts +1 -1
- package/src/core/Sui/Sui.ts +41 -0
- package/src/core/Sui/SuiStepExecutor.ts +203 -0
- package/src/core/Sui/getSuiBalance.ts +86 -0
- package/src/core/Sui/getSuiNSAddress.ts +40 -0
- package/src/core/Sui/parseSuiErrors.ts +55 -0
- package/src/core/Sui/suiClient.ts +51 -0
- package/src/core/Sui/types.ts +23 -0
- package/src/core/checkBalance.ts +2 -2
- package/src/core/rpc.ts +1 -1
- package/src/createConfig.ts +1 -1
- package/src/index.ts +5 -9
- package/src/services/balance.ts +2 -7
- package/src/version.ts +1 -1
|
@@ -1,24 +1,8 @@
|
|
|
1
1
|
import { ChainType } from '@lifi/types';
|
|
2
|
-
import {
|
|
2
|
+
import { getCapabilities } from 'viem/actions';
|
|
3
3
|
import { getAction } from 'viem/utils';
|
|
4
4
|
import { config } from '../../config.js';
|
|
5
5
|
import { sleep } from '../../utils/sleep.js';
|
|
6
|
-
export async function getCapabilities(client, parameters = {}) {
|
|
7
|
-
const { account = client.account, chainId } = parameters;
|
|
8
|
-
const account_ = account ? parseAccount(account) : undefined;
|
|
9
|
-
const capabilities_raw = await client.request({
|
|
10
|
-
method: 'wallet_getCapabilities',
|
|
11
|
-
params: [account_?.address],
|
|
12
|
-
}, {
|
|
13
|
-
dedupe: true,
|
|
14
|
-
retryCount: 0,
|
|
15
|
-
});
|
|
16
|
-
const capabilities = {};
|
|
17
|
-
for (const [key, value] of Object.entries(capabilities_raw)) {
|
|
18
|
-
capabilities[Number(key)] = value;
|
|
19
|
-
}
|
|
20
|
-
return (typeof chainId === 'number' ? capabilities[chainId] : capabilities);
|
|
21
|
-
}
|
|
22
6
|
export async function isBatchingSupported({ client, chainId, }) {
|
|
23
7
|
const _client = client ??
|
|
24
8
|
(await config.getProvider(ChainType.EVM)?.getWalletClient?.());
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isBatchingSupported.js","sourceRoot":"","sources":["../../../core/EVM/isBatchingSupported.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"isBatchingSupported.js","sourceRoot":"","sources":["../../../core/EVM/isBatchingSupported.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEvC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AACxC,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAG5C,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,EACxC,MAAM,EACN,OAAO,GAIR;IACC,MAAM,OAAO,GACX,MAAM;QACN,CAAC,MACC,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,GAAG,CACjC,EAAE,eAAe,EAAE,EAAE,CAAC,CAAA;IAEzB,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAA;IAClD,CAAC;IAED,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC;YACtC,SAAS,CAAC,OAAO,EAAE,eAAe,EAAE,iBAAiB,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC;YACnE,KAAK,CAAC,KAAK,CAAC;SACb,CAAC,CAAA;QACF,OAAO,CACL,YAAY,EAAE,WAAW,EAAE,SAAS;YACpC,YAAY,EAAE,MAAM,EAAE,MAAM,KAAK,WAAW;YAC5C,YAAY,EAAE,MAAM,EAAE,MAAM,KAAK,OAAO;YACxC,KAAK,CACN,CAAA;IACH,CAAC;IAAC,MAAM,CAAC;QACP,oEAAoE;QACpE,+CAA+C;QAC/C,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolanaStepExecutor.js","sourceRoot":"","sources":["../../../core/Solana/SolanaStepExecutor.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SolanaStepExecutor.js","sourceRoot":"","sources":["../../../core/Solana/SolanaStepExecutor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../core/Solana/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAYvC,MAAM,UAAU,QAAQ,CAAC,QAAqB;IAC5C,OAAO,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC,GAAG,CAAA;AACxC,CAAC;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../core/Solana/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAYvC,MAAM,UAAU,QAAQ,CAAC,QAAqB;IAC5C,OAAO,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC,GAAG,CAAA;AACxC,CAAC;AAMD,MAAM,CAAC,MAAM,mBAAmB,GAAG,6CAA6C,CAAA"}
|
|
@@ -80,7 +80,7 @@ export class StatusManager {
|
|
|
80
80
|
* @param step The step that should contain the new process.
|
|
81
81
|
* @param type Type of the process. Used to identify already existing processes.
|
|
82
82
|
* @param chainId Chain Id of the process.
|
|
83
|
-
* @param status By default created
|
|
83
|
+
* @param status By default created process is set to the STARTED status. We can override new process with the needed status.
|
|
84
84
|
* @returns Returns process.
|
|
85
85
|
*/
|
|
86
86
|
findOrCreateProcess = ({ step, type, chainId, status, startedAt, }) => {
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { ChainType } from '@lifi/types';
|
|
2
|
+
import { isValidSuiAddress } from '@mysten/sui/utils';
|
|
3
|
+
import { SuiStepExecutor } from './SuiStepExecutor.js';
|
|
4
|
+
import { getSuiBalance } from './getSuiBalance.js';
|
|
5
|
+
import { getSuiNSAddress } from './getSuiNSAddress.js';
|
|
6
|
+
export function Sui(options) {
|
|
7
|
+
const _options = options ?? {};
|
|
8
|
+
return {
|
|
9
|
+
get type() {
|
|
10
|
+
return ChainType.MVM;
|
|
11
|
+
},
|
|
12
|
+
isAddress: isValidSuiAddress,
|
|
13
|
+
resolveAddress: getSuiNSAddress,
|
|
14
|
+
getBalance: getSuiBalance,
|
|
15
|
+
async getStepExecutor(options) {
|
|
16
|
+
if (!_options.getWallet) {
|
|
17
|
+
throw new Error('getWallet is not provided.');
|
|
18
|
+
}
|
|
19
|
+
const wallet = await _options.getWallet();
|
|
20
|
+
const executor = new SuiStepExecutor({
|
|
21
|
+
wallet,
|
|
22
|
+
routeId: options.routeId,
|
|
23
|
+
executionOptions: {
|
|
24
|
+
...options.executionOptions,
|
|
25
|
+
},
|
|
26
|
+
});
|
|
27
|
+
return executor;
|
|
28
|
+
},
|
|
29
|
+
setOptions(options) {
|
|
30
|
+
Object.assign(_options, options);
|
|
31
|
+
},
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=Sui.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Sui.js","sourceRoot":"","sources":["../../../core/Sui/Sui.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAErD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAGtD,MAAM,UAAU,GAAG,CAAC,OAA4B;IAC9C,MAAM,QAAQ,GAAuB,OAAO,IAAI,EAAE,CAAA;IAClD,OAAO;QACL,IAAI,IAAI;YACN,OAAO,SAAS,CAAC,GAAG,CAAA;QACtB,CAAC;QACD,SAAS,EAAE,iBAAiB;QAC5B,cAAc,EAAE,eAAe;QAC/B,UAAU,EAAE,aAAa;QACzB,KAAK,CAAC,eAAe,CACnB,OAA4B;YAE5B,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;gBACxB,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAA;YAC/C,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,SAAS,EAAE,CAAA;YAEzC,MAAM,QAAQ,GAAG,IAAI,eAAe,CAAC;gBACnC,MAAM;gBACN,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,gBAAgB,EAAE;oBAChB,GAAG,OAAO,CAAC,gBAAgB;iBAC5B;aACF,CAAC,CAAA;YAEF,OAAO,QAAQ,CAAA;QACjB,CAAC;QACD,UAAU,CAAC,OAA2B;YACpC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;QAClC,CAAC;KACF,CAAA;AACH,CAAC"}
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
import { signAndExecuteTransaction, } from '@mysten/wallet-standard';
|
|
2
|
+
import { config } from '../../config.js';
|
|
3
|
+
import { LiFiErrorCode } from '../../errors/constants.js';
|
|
4
|
+
import { TransactionError } from '../../errors/errors.js';
|
|
5
|
+
import { getStepTransaction } from '../../services/api.js';
|
|
6
|
+
import { BaseStepExecutor } from '../BaseStepExecutor.js';
|
|
7
|
+
import { checkBalance } from '../checkBalance.js';
|
|
8
|
+
import { stepComparison } from '../stepComparison.js';
|
|
9
|
+
import { waitForDestinationChainTransaction } from '../waitForDestinationChainTransaction.js';
|
|
10
|
+
import { parseSuiErrors } from './parseSuiErrors.js';
|
|
11
|
+
import { callSuiWithRetry } from './suiClient.js';
|
|
12
|
+
export class SuiStepExecutor extends BaseStepExecutor {
|
|
13
|
+
wallet;
|
|
14
|
+
constructor(options) {
|
|
15
|
+
super(options);
|
|
16
|
+
this.wallet = options.wallet;
|
|
17
|
+
}
|
|
18
|
+
checkWallet = (step) => {
|
|
19
|
+
// Prevent execution of the quote by wallet different from the one which requested the quote
|
|
20
|
+
if (!this.wallet.accounts?.some?.((account) => account.address === step.action.fromAddress)) {
|
|
21
|
+
throw new TransactionError(LiFiErrorCode.WalletChangedDuringExecution, 'The wallet address that requested the quote does not match the wallet address attempting to sign the transaction.');
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
executeStep = async (step) => {
|
|
25
|
+
step.execution = this.statusManager.initExecutionObject(step);
|
|
26
|
+
const fromChain = await config.getChainById(step.action.fromChainId);
|
|
27
|
+
const toChain = await config.getChainById(step.action.toChainId);
|
|
28
|
+
const isBridgeExecution = fromChain.id !== toChain.id;
|
|
29
|
+
const currentProcessType = isBridgeExecution ? 'CROSS_CHAIN' : 'SWAP';
|
|
30
|
+
let process = this.statusManager.findOrCreateProcess({
|
|
31
|
+
step,
|
|
32
|
+
type: currentProcessType,
|
|
33
|
+
chainId: fromChain.id,
|
|
34
|
+
});
|
|
35
|
+
if (process.status !== 'DONE') {
|
|
36
|
+
try {
|
|
37
|
+
process = this.statusManager.updateProcess(step, process.type, 'STARTED');
|
|
38
|
+
// Check balance
|
|
39
|
+
await checkBalance(step.action.fromAddress, step);
|
|
40
|
+
// Create new transaction
|
|
41
|
+
if (!step.transactionRequest) {
|
|
42
|
+
const { execution, ...stepBase } = step;
|
|
43
|
+
const updatedStep = await getStepTransaction(stepBase);
|
|
44
|
+
const comparedStep = await stepComparison(this.statusManager, step, updatedStep, this.allowUserInteraction, this.executionOptions);
|
|
45
|
+
Object.assign(step, {
|
|
46
|
+
...comparedStep,
|
|
47
|
+
execution: step.execution,
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
if (!step.transactionRequest?.data) {
|
|
51
|
+
throw new TransactionError(LiFiErrorCode.TransactionUnprepared, 'Unable to prepare transaction.');
|
|
52
|
+
}
|
|
53
|
+
process = this.statusManager.updateProcess(step, process.type, 'ACTION_REQUIRED');
|
|
54
|
+
if (!this.allowUserInteraction) {
|
|
55
|
+
return step;
|
|
56
|
+
}
|
|
57
|
+
let transactionRequest = {
|
|
58
|
+
data: step.transactionRequest.data,
|
|
59
|
+
};
|
|
60
|
+
if (this.executionOptions?.updateTransactionRequestHook) {
|
|
61
|
+
const customizedTransactionRequest = await this.executionOptions.updateTransactionRequestHook({
|
|
62
|
+
requestType: 'transaction',
|
|
63
|
+
...transactionRequest,
|
|
64
|
+
});
|
|
65
|
+
transactionRequest = {
|
|
66
|
+
...transactionRequest,
|
|
67
|
+
...customizedTransactionRequest,
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
const transactionRequestData = transactionRequest.data;
|
|
71
|
+
if (!transactionRequestData) {
|
|
72
|
+
throw new TransactionError(LiFiErrorCode.TransactionUnprepared, 'Unable to prepare transaction.');
|
|
73
|
+
}
|
|
74
|
+
this.checkWallet(step);
|
|
75
|
+
// We give users 2 minutes to sign the transaction
|
|
76
|
+
const signedTx = await signAndExecuteTransaction(this.wallet, {
|
|
77
|
+
account: this.wallet.accounts.find((account) => account.address === step.action.fromAddress),
|
|
78
|
+
chain: 'sui:mainnet',
|
|
79
|
+
transaction: {
|
|
80
|
+
toJSON: async () => transactionRequestData,
|
|
81
|
+
},
|
|
82
|
+
});
|
|
83
|
+
process = this.statusManager.updateProcess(step, process.type, 'PENDING');
|
|
84
|
+
const result = await callSuiWithRetry((client) => client.waitForTransaction({
|
|
85
|
+
digest: signedTx.digest,
|
|
86
|
+
options: {
|
|
87
|
+
showEffects: true,
|
|
88
|
+
},
|
|
89
|
+
}));
|
|
90
|
+
if (result.effects?.status.status !== 'success') {
|
|
91
|
+
throw new TransactionError(LiFiErrorCode.TransactionFailed, `Transaction failed: ${result.effects?.status.error}`);
|
|
92
|
+
}
|
|
93
|
+
// Transaction has been confirmed and we can update the process
|
|
94
|
+
process = this.statusManager.updateProcess(step, process.type, 'PENDING', {
|
|
95
|
+
txHash: result.digest,
|
|
96
|
+
txLink: `${fromChain.metamask.blockExplorerUrls[0]}txblock/${result.digest}`,
|
|
97
|
+
});
|
|
98
|
+
if (isBridgeExecution) {
|
|
99
|
+
process = this.statusManager.updateProcess(step, process.type, 'DONE');
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
catch (e) {
|
|
103
|
+
const error = await parseSuiErrors(e, step, process);
|
|
104
|
+
process = this.statusManager.updateProcess(step, process.type, 'FAILED', {
|
|
105
|
+
error: {
|
|
106
|
+
message: error.cause.message,
|
|
107
|
+
code: error.code,
|
|
108
|
+
},
|
|
109
|
+
});
|
|
110
|
+
this.statusManager.updateExecution(step, 'FAILED');
|
|
111
|
+
throw error;
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
await waitForDestinationChainTransaction(step, process, fromChain, toChain, this.statusManager);
|
|
115
|
+
return step;
|
|
116
|
+
};
|
|
117
|
+
}
|
|
118
|
+
//# sourceMappingURL=SuiStepExecutor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SuiStepExecutor.js","sourceRoot":"","sources":["../../../core/Sui/SuiStepExecutor.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { withDedupe } from '../../utils/withDedupe.js';
|
|
2
|
+
import { callSuiWithRetry } from './suiClient.js';
|
|
3
|
+
import { SuiTokenLongAddress, SuiTokenShortAddress } from './types.js';
|
|
4
|
+
export async function getSuiBalance(walletAddress, tokens) {
|
|
5
|
+
if (tokens.length === 0) {
|
|
6
|
+
return [];
|
|
7
|
+
}
|
|
8
|
+
const { chainId } = tokens[0];
|
|
9
|
+
for (const token of tokens) {
|
|
10
|
+
if (token.chainId !== chainId) {
|
|
11
|
+
console.warn('Requested tokens have to be on the same chain.');
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
return getSuiBalanceDefault(chainId, tokens, walletAddress);
|
|
15
|
+
}
|
|
16
|
+
const getSuiBalanceDefault = async (_chainId, tokens, walletAddress) => {
|
|
17
|
+
const [coins, checkpoint] = await Promise.allSettled([
|
|
18
|
+
withDedupe(() => callSuiWithRetry((client) => client.getAllBalances({
|
|
19
|
+
owner: walletAddress,
|
|
20
|
+
})), { id: `${getSuiBalanceDefault.name}.getAllBalances` }),
|
|
21
|
+
withDedupe(() => callSuiWithRetry((client) => client.getLatestCheckpointSequenceNumber()), { id: `${getSuiBalanceDefault.name}.getLatestCheckpointSequenceNumber` }),
|
|
22
|
+
]);
|
|
23
|
+
const coinsResult = coins.status === 'fulfilled' ? coins.value : [];
|
|
24
|
+
const blockNumber = checkpoint.status === 'fulfilled' ? BigInt(checkpoint.value) : 0n;
|
|
25
|
+
const walletTokenAmounts = coinsResult.reduce((tokenAmounts, coin) => {
|
|
26
|
+
const amount = BigInt(coin.totalBalance);
|
|
27
|
+
if (amount > 0n) {
|
|
28
|
+
tokenAmounts[coin.coinType] = amount;
|
|
29
|
+
}
|
|
30
|
+
return tokenAmounts;
|
|
31
|
+
}, {});
|
|
32
|
+
const suiTokenBalance = coinsResult.find((coin) => coin.coinType === SuiTokenShortAddress);
|
|
33
|
+
if (suiTokenBalance?.totalBalance) {
|
|
34
|
+
walletTokenAmounts[SuiTokenLongAddress] = BigInt(suiTokenBalance.totalBalance);
|
|
35
|
+
}
|
|
36
|
+
const tokenAmounts = tokens.map((token) => {
|
|
37
|
+
if (walletTokenAmounts[token.address]) {
|
|
38
|
+
return {
|
|
39
|
+
...token,
|
|
40
|
+
amount: walletTokenAmounts[token.address],
|
|
41
|
+
blockNumber,
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
return {
|
|
45
|
+
...token,
|
|
46
|
+
blockNumber,
|
|
47
|
+
};
|
|
48
|
+
});
|
|
49
|
+
return tokenAmounts;
|
|
50
|
+
};
|
|
51
|
+
//# sourceMappingURL=getSuiBalance.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getSuiBalance.js","sourceRoot":"","sources":["../../../core/Sui/getSuiBalance.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { SuiClient } from '@mysten/sui/client';
|
|
2
|
+
const SNS_REGISTRY_ID = '0x6e0ddefc0ad3ed64f53f5f91b7023077b2f7c131d7e6d5e0d1a0e4e6f1a2c3b4';
|
|
3
|
+
export async function getSuiNSAddress(name, rpcUrl) {
|
|
4
|
+
const client = new SuiClient({
|
|
5
|
+
url: rpcUrl || 'https://fullnode.mainnet.sui.io:443',
|
|
6
|
+
});
|
|
7
|
+
try {
|
|
8
|
+
const result = await client.getObject({
|
|
9
|
+
id: SNS_REGISTRY_ID,
|
|
10
|
+
options: {
|
|
11
|
+
showContent: true,
|
|
12
|
+
},
|
|
13
|
+
});
|
|
14
|
+
if (!result.data?.content) {
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
const registry = result.data.content;
|
|
18
|
+
const nameRecord = registry.fields.records.find((record) => record.fields.name === name);
|
|
19
|
+
if (!nameRecord) {
|
|
20
|
+
return;
|
|
21
|
+
}
|
|
22
|
+
return nameRecord.fields.address;
|
|
23
|
+
}
|
|
24
|
+
catch (error) {
|
|
25
|
+
console.error('Error resolving SuiNS address:', error);
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=getSuiNSAddress.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getSuiNSAddress.js","sourceRoot":"","sources":["../../../core/Sui/getSuiNSAddress.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAE9C,MAAM,eAAe,GACnB,oEAAoE,CAAA;AAEtE,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,IAAY,EACZ,MAAe;IAEf,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC;QAC3B,GAAG,EAAE,MAAM,IAAI,qCAAqC;KACrD,CAAC,CAAA;IAEF,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC;YACpC,EAAE,EAAE,eAAe;YACnB,OAAO,EAAE;gBACP,WAAW,EAAE,IAAI;aAClB;SACF,CAAC,CAAA;QAEF,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC;YAC1B,OAAM;QACR,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,OAAc,CAAA;QAC3C,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAC7C,CAAC,MAAW,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,IAAI,CAC7C,CAAA;QAED,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAM;QACR,CAAC;QAED,OAAO,UAAU,CAAC,MAAM,CAAC,OAAO,CAAA;IAClC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,KAAK,CAAC,CAAA;QACtD,OAAM;IACR,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { SDKError } from '../../errors/SDKError.js';
|
|
2
|
+
import { BaseError } from '../../errors/baseError.js';
|
|
3
|
+
import { ErrorMessage, LiFiErrorCode } from '../../errors/constants.js';
|
|
4
|
+
import { TransactionError, UnknownError } from '../../errors/errors.js';
|
|
5
|
+
export const parseSuiErrors = async (e, step, process) => {
|
|
6
|
+
if (e instanceof SDKError) {
|
|
7
|
+
e.step = e.step ?? step;
|
|
8
|
+
e.process = e.process ?? process;
|
|
9
|
+
return e;
|
|
10
|
+
}
|
|
11
|
+
const baseError = handleSpecificErrors(e);
|
|
12
|
+
return new SDKError(baseError, step, process);
|
|
13
|
+
};
|
|
14
|
+
const handleSpecificErrors = (e) => {
|
|
15
|
+
const isRejection = typeof e === 'string'
|
|
16
|
+
? e.toLowerCase().includes('reject')
|
|
17
|
+
: e.message?.toLowerCase().includes('reject');
|
|
18
|
+
if (isRejection) {
|
|
19
|
+
return new TransactionError(LiFiErrorCode.SignatureRejected, e.message, e);
|
|
20
|
+
}
|
|
21
|
+
if (e.message?.toLowerCase().includes('transaction') &&
|
|
22
|
+
(e.message?.toLowerCase().includes('failed') ||
|
|
23
|
+
e.message?.toLowerCase().includes('error'))) {
|
|
24
|
+
return new TransactionError(LiFiErrorCode.TransactionFailed, e.message, e);
|
|
25
|
+
}
|
|
26
|
+
if (e.message?.includes('simulate') || e.message?.includes('simulation')) {
|
|
27
|
+
return new TransactionError(LiFiErrorCode.TransactionSimulationFailed, e.message, e);
|
|
28
|
+
}
|
|
29
|
+
if (e instanceof BaseError) {
|
|
30
|
+
return e;
|
|
31
|
+
}
|
|
32
|
+
return new UnknownError(e.message || ErrorMessage.UnknownError, e);
|
|
33
|
+
};
|
|
34
|
+
//# sourceMappingURL=parseSuiErrors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parseSuiErrors.js","sourceRoot":"","sources":["../../../core/Sui/parseSuiErrors.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AACrD,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AACvE,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAGvE,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EACjC,CAAQ,EACR,IAAe,EACf,OAAiB,EACE,EAAE;IACrB,IAAI,CAAC,YAAY,QAAQ,EAAE,CAAC;QAC1B,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,IAAI,IAAI,CAAA;QACvB,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,IAAI,OAAO,CAAA;QAChC,OAAO,CAAC,CAAA;IACV,CAAC;IAED,MAAM,SAAS,GAAG,oBAAoB,CAAC,CAAC,CAAC,CAAA;IAEzC,OAAO,IAAI,QAAQ,CAAC,SAAS,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;AAC/C,CAAC,CAAA;AAED,MAAM,oBAAoB,GAAG,CAAC,CAAM,EAAE,EAAE;IACtC,MAAM,WAAW,GACf,OAAO,CAAC,KAAK,QAAQ;QACnB,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACpC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,WAAW,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;IAEjD,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO,IAAI,gBAAgB,CAAC,aAAa,CAAC,iBAAiB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAA;IAC5E,CAAC;IAED,IACE,CAAC,CAAC,OAAO,EAAE,WAAW,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC;QAChD,CAAC,CAAC,CAAC,OAAO,EAAE,WAAW,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAC1C,CAAC,CAAC,OAAO,EAAE,WAAW,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,EAC7C,CAAC;QACD,OAAO,IAAI,gBAAgB,CAAC,aAAa,CAAC,iBAAiB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAA;IAC5E,CAAC;IAED,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;QACzE,OAAO,IAAI,gBAAgB,CACzB,aAAa,CAAC,2BAA2B,EACzC,CAAC,CAAC,OAAO,EACT,CAAC,CACF,CAAA;IACH,CAAC;IAED,IAAI,CAAC,YAAY,SAAS,EAAE,CAAC;QAC3B,OAAO,CAAC,CAAA;IACV,CAAC;IAED,OAAO,IAAI,YAAY,CAAC,CAAC,CAAC,OAAO,IAAI,YAAY,CAAC,YAAY,EAAE,CAAC,CAAC,CAAA;AACpE,CAAC,CAAA"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { ChainId } from '@lifi/types';
|
|
2
|
+
import { SuiClient } from '@mysten/sui/client';
|
|
3
|
+
import { getRpcUrls } from '../rpc.js';
|
|
4
|
+
const clients = new Map();
|
|
5
|
+
/**
|
|
6
|
+
* Initializes the Sui clients if they haven't been initialized yet.
|
|
7
|
+
* @returns - Promise that resolves when clients are initialized.
|
|
8
|
+
*/
|
|
9
|
+
export const ensureClients = async () => {
|
|
10
|
+
const rpcUrls = await getRpcUrls(ChainId.SUI);
|
|
11
|
+
for (const rpcUrl of rpcUrls) {
|
|
12
|
+
if (!clients.get(rpcUrl)) {
|
|
13
|
+
const client = new SuiClient({ url: rpcUrl });
|
|
14
|
+
clients.set(rpcUrl, client);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
/**
|
|
19
|
+
* Wrapper around getting the client (RPC provider) for Sui
|
|
20
|
+
* @returns - Sui RPC clients
|
|
21
|
+
*/
|
|
22
|
+
export const getSuiClients = async () => {
|
|
23
|
+
await ensureClients();
|
|
24
|
+
return Array.from(clients.values());
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* Calls a function on the SuiClient instances with retry logic.
|
|
28
|
+
* @param fn - The function to call, which receives a SuiClient instance.
|
|
29
|
+
* @returns - The result of the function call.
|
|
30
|
+
*/
|
|
31
|
+
export async function callSuiWithRetry(fn) {
|
|
32
|
+
// Ensure clients are initialized
|
|
33
|
+
await ensureClients();
|
|
34
|
+
let lastError = null;
|
|
35
|
+
for (const client of clients.values()) {
|
|
36
|
+
try {
|
|
37
|
+
const result = await fn(client);
|
|
38
|
+
return result;
|
|
39
|
+
}
|
|
40
|
+
catch (error) {
|
|
41
|
+
lastError = error;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
// Throw the last encountered error
|
|
45
|
+
throw lastError;
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=suiClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"suiClient.js","sourceRoot":"","sources":["../../../core/Sui/suiClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAEtC,MAAM,OAAO,GAAG,IAAI,GAAG,EAAqB,CAAA;AAE5C;;;GAGG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,IAAmB,EAAE;IACrD,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;IAC7C,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YACzB,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAA;YAC7C,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QAC7B,CAAC;IACH,CAAC;AACH,CAAC,CAAA;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,IAA0B,EAAE;IAC5D,MAAM,aAAa,EAAE,CAAA;IACrB,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA;AACrC,CAAC,CAAA;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,EAAqC;IAErC,iCAAiC;IACjC,MAAM,aAAa,EAAE,CAAA;IACrB,IAAI,SAAS,GAAQ,IAAI,CAAA;IACzB,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;QACtC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,CAAA;YAC/B,OAAO,MAAM,CAAA;QACf,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,SAAS,GAAG,KAAK,CAAA;QACnB,CAAC;IACH,CAAC;IACD,mCAAmC;IACnC,MAAM,SAAS,CAAA;AACjB,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { ChainType } from '@lifi/types';
|
|
2
|
+
export function isSui(provider) {
|
|
3
|
+
return provider.type === ChainType.MVM;
|
|
4
|
+
}
|
|
5
|
+
export const SuiTokenShortAddress = '0x2::sui::SUI';
|
|
6
|
+
export const SuiTokenLongAddress = '0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI';
|
|
7
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../core/Sui/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAYvC,MAAM,UAAU,KAAK,CAAC,QAAqB;IACzC,OAAO,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC,GAAG,CAAA;AACxC,CAAC;AAMD,MAAM,CAAC,MAAM,oBAAoB,GAAG,eAAe,CAAA;AACnD,MAAM,CAAC,MAAM,mBAAmB,GAC9B,8EAA8E,CAAA"}
|
|
@@ -20,9 +20,9 @@ export const checkBalance = async (walletAddress, step, depth = 0) => {
|
|
|
20
20
|
step.action.fromAmount = currentBalance.toString();
|
|
21
21
|
}
|
|
22
22
|
else {
|
|
23
|
-
const
|
|
23
|
+
const needed = formatUnits(neededBalance, token.decimals);
|
|
24
24
|
const current = formatUnits(currentBalance, token.decimals);
|
|
25
|
-
let errorMessage = `Your ${token.symbol} balance is too low, you try to transfer ${
|
|
25
|
+
let errorMessage = `Your ${token.symbol} balance is too low, you try to transfer ${needed} ${token.symbol}, but your wallet only holds ${current} ${token.symbol}. No funds have been sent.`;
|
|
26
26
|
if (currentBalance !== 0n) {
|
|
27
27
|
errorMessage += `If the problem consists, please delete this transfer and start a new one with a maximum of ${current} ${token.symbol}.`;
|
|
28
28
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkBalance.js","sourceRoot":"","sources":["../../core/checkBalance.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,MAAM,CAAA;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAEzC,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAC/B,aAAqB,EACrB,IAAc,EACd,KAAK,GAAG,CAAC,EACM,EAAE;IACjB,MAAM,KAAK,GAAG,MAAM,eAAe,CAAC,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;IACzE,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,cAAc,GAAG,KAAK,CAAC,MAAM,IAAI,EAAE,CAAA;QACzC,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;QAEpD,IAAI,cAAc,GAAG,aAAa,EAAE,CAAC;YACnC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;gBACf,MAAM,KAAK,CAAC,GAAG,CAAC,CAAA;gBAChB,MAAM,YAAY,CAAC,aAAa,EAAE,IAAI,EAAE,KAAK,GAAG,CAAC,CAAC,CAAA;YACpD,CAAC;iBAAM,IACL,CAAC,aAAa;gBACZ,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC;gBAC1D,WAAc;gBAChB,cAAc,EACd,CAAC;gBACD,mCAAmC;gBACnC,IAAI,CAAC,MAAM,CAAC,UAAU,GAAG,cAAc,CAAC,QAAQ,EAAE,CAAA;YACpD,CAAC;iBAAM,CAAC;gBACN,MAAM,
|
|
1
|
+
{"version":3,"file":"checkBalance.js","sourceRoot":"","sources":["../../core/checkBalance.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,MAAM,CAAA;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAEzC,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAC/B,aAAqB,EACrB,IAAc,EACd,KAAK,GAAG,CAAC,EACM,EAAE;IACjB,MAAM,KAAK,GAAG,MAAM,eAAe,CAAC,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;IACzE,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,cAAc,GAAG,KAAK,CAAC,MAAM,IAAI,EAAE,CAAA;QACzC,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;QAEpD,IAAI,cAAc,GAAG,aAAa,EAAE,CAAC;YACnC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;gBACf,MAAM,KAAK,CAAC,GAAG,CAAC,CAAA;gBAChB,MAAM,YAAY,CAAC,aAAa,EAAE,IAAI,EAAE,KAAK,GAAG,CAAC,CAAC,CAAA;YACpD,CAAC;iBAAM,IACL,CAAC,aAAa;gBACZ,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC;gBAC1D,WAAc;gBAChB,cAAc,EACd,CAAC;gBACD,mCAAmC;gBACnC,IAAI,CAAC,MAAM,CAAC,UAAU,GAAG,cAAc,CAAC,QAAQ,EAAE,CAAA;YACpD,CAAC;iBAAM,CAAC;gBACN,MAAM,MAAM,GAAG,WAAW,CAAC,aAAa,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAA;gBACzD,MAAM,OAAO,GAAG,WAAW,CAAC,cAAc,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAA;gBAC3D,IAAI,YAAY,GAAG,QAAQ,KAAK,CAAC,MAAM,4CAA4C,MAAM,IAAI,KAAK,CAAC,MAAM,gCAAgC,OAAO,IAAI,KAAK,CAAC,MAAM,4BAA4B,CAAA;gBAE5L,IAAI,cAAc,KAAK,EAAE,EAAE,CAAC;oBAC1B,YAAY,IAAI,8FAA8F,OAAO,IAAI,KAAK,CAAC,MAAM,GAAG,CAAA;gBAC1I,CAAC;gBAED,MAAM,IAAI,YAAY,CACpB,yBAAyB,EACzB,IAAI,KAAK,CAAC,YAAY,CAAC,CACxB,CAAA;YACH,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC,CAAA"}
|
package/src/_esm/core/rpc.js
CHANGED
|
@@ -6,7 +6,7 @@ export const getRpcUrl = async (chainId) => {
|
|
|
6
6
|
export const getRpcUrls = async (chainId) => {
|
|
7
7
|
const rpcUrls = (await config.getRPCUrls())[chainId];
|
|
8
8
|
if (!rpcUrls?.length) {
|
|
9
|
-
throw new Error(
|
|
9
|
+
throw new Error(`RPC URL not found for chainId: ${chainId}`);
|
|
10
10
|
}
|
|
11
11
|
return rpcUrls;
|
|
12
12
|
};
|
package/src/_esm/core/rpc.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rpc.js","sourceRoot":"","sources":["../../core/rpc.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAErC,MAAM,CAAC,MAAM,SAAS,GAAG,KAAK,EAAE,OAAgB,EAAmB,EAAE;IACnE,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,CAAA;IACzC,OAAO,OAAO,CAAC,CAAC,CAAC,CAAA;AACnB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,EAAE,OAAgB,EAAqB,EAAE;IACtE,MAAM,OAAO,GAAG,CAAC,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC,CAAA;IACpD,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"rpc.js","sourceRoot":"","sources":["../../core/rpc.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAErC,MAAM,CAAC,MAAM,SAAS,GAAG,KAAK,EAAE,OAAgB,EAAmB,EAAE;IACnE,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,CAAA;IACzC,OAAO,OAAO,CAAC,CAAC,CAAC,CAAA;AACnB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,EAAE,OAAgB,EAAqB,EAAE;IACtE,MAAM,OAAO,GAAG,CAAC,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC,CAAA;IACpD,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,kCAAkC,OAAO,EAAE,CAAC,CAAA;IAC9D,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA"}
|
package/src/_esm/createConfig.js
CHANGED
|
@@ -15,7 +15,7 @@ function createBaseConfig(options) {
|
|
|
15
15
|
}
|
|
16
16
|
export async function createChainsConfig() {
|
|
17
17
|
config.loading = getChains({
|
|
18
|
-
chainTypes: [ChainType.EVM, ChainType.SVM, ChainType.UTXO],
|
|
18
|
+
chainTypes: [ChainType.EVM, ChainType.SVM, ChainType.UTXO, ChainType.MVM],
|
|
19
19
|
})
|
|
20
20
|
.then((chains) => config.setChains(chains))
|
|
21
21
|
.catch();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createConfig.js","sourceRoot":"","sources":["../createConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAE7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAA;AACpE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAE5C,SAAS,gBAAgB,CAAC,OAAkB;IAC1C,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CACb,yGAAyG,CAC1G,CAAA;IACH,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;IACnC,IAAI,CAAC,OAAO,CAAC,mBAAmB,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa,EAAE,CAAC;QAC3E,mBAAmB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IACpC,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB;IACtC,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC;QACzB,UAAU,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,SAAS,CAAC,GAAG,EAAE,SAAS,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"createConfig.js","sourceRoot":"","sources":["../createConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAE7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAA;AACpE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAE5C,SAAS,gBAAgB,CAAC,OAAkB;IAC1C,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CACb,yGAAyG,CAC1G,CAAA;IACH,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;IACnC,IAAI,CAAC,OAAO,CAAC,mBAAmB,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa,EAAE,CAAC;QAC3E,mBAAmB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IACpC,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB;IACtC,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC;QACzB,UAAU,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,SAAS,CAAC,GAAG,EAAE,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,GAAG,CAAC;KAC1E,CAAC;SACC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;SAC1C,KAAK,EAAE,CAAA;IACV,MAAM,MAAM,CAAC,OAAO,CAAA;AACtB,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,OAAkB;IAC7C,MAAM,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAA;IACzC,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;QAC1B,kBAAkB,EAAE,CAAA;IACtB,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC"}
|
package/src/_esm/index.js
CHANGED
|
@@ -25,8 +25,10 @@ export { getChains, getConnections, getContractCallsQuote, getGasRecommendation,
|
|
|
25
25
|
export { getTokenBalance, getTokenBalances, getTokenBalancesByChain, } from './services/balance.js';
|
|
26
26
|
export { getNameServiceAddress } from './services/getNameServiceAddress.js';
|
|
27
27
|
export { BaseError } from './errors/baseError.js';
|
|
28
|
-
export { ErrorMessage, ErrorName, LiFiErrorCode
|
|
28
|
+
export { ErrorMessage, ErrorName, LiFiErrorCode } from './errors/constants.js';
|
|
29
29
|
export { BalanceError, ProviderError, RPCError, ServerError, TransactionError, UnknownError, ValidationError, } from './errors/errors.js';
|
|
30
30
|
export { HTTPError } from './errors/httpError.js';
|
|
31
31
|
export { SDKError } from './errors/SDKError.js';
|
|
32
|
+
export { Sui } from './core/Sui/Sui.js';
|
|
33
|
+
export { isSui } from './core/Sui/types.js';
|
|
32
34
|
//# sourceMappingURL=index.js.map
|
package/src/_esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,qDAAqD;AACrD,cAAc,aAAa,CAAA;AAC3B,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AACvC,OAAO,EACL,iBAAiB,EACjB,0BAA0B,GAC3B,MAAM,4BAA4B,CAAA;AACnC,OAAO,EACL,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,4BAA4B,CAAA;AACnC,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAA;AACvE,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAC3E,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,qDAAqD;AACrD,cAAc,aAAa,CAAA;AAC3B,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AACvC,OAAO,EACL,iBAAiB,EACjB,0BAA0B,GAC3B,MAAM,4BAA4B,CAAA;AACnC,OAAO,EACL,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,4BAA4B,CAAA;AACnC,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAA;AACvE,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAC3E,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAEvE,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AACvD,OAAO,EACL,YAAY,EACZ,cAAc,EACd,eAAe,EACf,WAAW,EACX,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,qBAAqB,CAAA;AA4B5B,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAA;AAC5D,OAAO,EACL,oBAAoB,EACpB,iBAAiB,GAClB,MAAM,uCAAuC,CAAA;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AAKjD,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAE7C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAA;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAA;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAA;AACpE,OAAO,EACL,SAAS,EACT,cAAc,EACd,qBAAqB,EACrB,oBAAoB,EACpB,QAAQ,EACR,eAAe,EACf,SAAS,EACT,SAAS,EACT,kBAAkB,EAClB,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,qBAAqB,GACtB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,uBAAuB,GACxB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAA;AAE3E,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACjD,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAE9E,OAAO,EACL,YAAY,EACZ,aAAa,EACb,QAAQ,EACR,WAAW,EACX,gBAAgB,EAChB,YAAY,EACZ,eAAe,GAChB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AACvC,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { ChainType } from '@lifi/types';
|
|
2
1
|
import { config } from '../config.js';
|
|
3
2
|
import { ValidationError } from '../errors/errors.js';
|
|
4
3
|
import { isToken } from '../typeguards.js';
|
|
@@ -52,12 +51,9 @@ export const getTokenBalancesByChain = async (walletAddress, tokensByChain) => {
|
|
|
52
51
|
const tokenAmountsSettled = await Promise.allSettled(Object.keys(tokensByChain).map(async (chainIdStr) => {
|
|
53
52
|
const chainId = Number.parseInt(chainIdStr);
|
|
54
53
|
const chain = await config.getChainById(chainId);
|
|
55
|
-
const tokenAddress = tokensByChain[chainId][0].address;
|
|
56
54
|
const provider = config
|
|
57
55
|
.get()
|
|
58
|
-
.providers.find((provider) =>
|
|
59
|
-
? provider.isAddress(walletAddress)
|
|
60
|
-
: provider.isAddress(tokenAddress));
|
|
56
|
+
.providers.find((provider) => provider.isAddress(walletAddress));
|
|
61
57
|
if (!provider) {
|
|
62
58
|
throw new Error(`SDK Token Provider for ${chain.chainType} is not found.`);
|
|
63
59
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"balance.js","sourceRoot":"","sources":["../../services/balance.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"balance.js","sourceRoot":"","sources":["../../services/balance.ts"],"names":[],"mappings":"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"}
|
package/src/_esm/version.js
CHANGED
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
import type { Client
|
|
2
|
-
import type { GetCapabilitiesParameters, GetCapabilitiesReturnType } from 'viem';
|
|
3
|
-
export declare function getCapabilities<chainId extends number | undefined = undefined>(client: Client<Transport>, parameters?: GetCapabilitiesParameters<chainId>): Promise<GetCapabilitiesReturnType<chainId>>;
|
|
1
|
+
import type { Client } from 'viem';
|
|
4
2
|
export declare function isBatchingSupported({ client, chainId, }: {
|
|
5
3
|
client?: Client;
|
|
6
4
|
chainId: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isBatchingSupported.d.ts","sourceRoot":"","sources":["../../../core/EVM/isBatchingSupported.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"isBatchingSupported.d.ts","sourceRoot":"","sources":["../../../core/EVM/isBatchingSupported.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAOlC,wBAAsB,mBAAmB,CAAC,EACxC,MAAM,EACN,OAAO,GACR,EAAE;IACD,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;CAChB,GAAG,OAAO,CAAC,OAAO,CAAC,CA2BnB"}
|
|
@@ -1,9 +1,6 @@
|
|
|
1
|
-
import type { SignerWalletAdapter } from '@solana/wallet-adapter-base';
|
|
2
1
|
import { BaseStepExecutor } from '../BaseStepExecutor.js';
|
|
3
|
-
import type { LiFiStepExtended
|
|
4
|
-
|
|
5
|
-
walletAdapter: SignerWalletAdapter;
|
|
6
|
-
}
|
|
2
|
+
import type { LiFiStepExtended } from '../types.js';
|
|
3
|
+
import type { SolanaStepExecutorOptions } from './types.js';
|
|
7
4
|
export declare class SolanaStepExecutor extends BaseStepExecutor {
|
|
8
5
|
private walletAdapter;
|
|
9
6
|
constructor(options: SolanaStepExecutorOptions);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolanaStepExecutor.d.ts","sourceRoot":"","sources":["../../../core/Solana/SolanaStepExecutor.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SolanaStepExecutor.d.ts","sourceRoot":"","sources":["../../../core/Solana/SolanaStepExecutor.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AAGzD,OAAO,KAAK,EAAE,gBAAgB,EAAyB,MAAM,aAAa,CAAA;AAK1E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAA;AAE3D,qBAAa,kBAAmB,SAAQ,gBAAgB;IACtD,OAAO,CAAC,aAAa,CAAqB;gBAE9B,OAAO,EAAE,yBAAyB;IAK9C,kBAAkB,GAAI,MAAM,gBAAgB,UAQ3C;IAED,WAAW,GAAU,MAAM,gBAAgB,KAAG,OAAO,CAAC,gBAAgB,CAAC,CA0LtE;CACF"}
|