@lifi/sdk 3.8.11 → 3.9.0-beta.1
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 +3 -2
- package/src/_cjs/core/EVM/EVM.js +2 -2
- package/src/_cjs/core/EVM/EVM.js.map +1 -1
- package/src/_cjs/core/EVM/EVMStepExecutor.js +24 -22
- package/src/_cjs/core/EVM/EVMStepExecutor.js.map +1 -1
- package/src/_cjs/core/EVM/publicClient.js +8 -0
- package/src/_cjs/core/EVM/publicClient.js.map +1 -1
- package/src/_cjs/core/EVM/{getENSAddress.js → resolveENSAddress.js} +4 -4
- package/src/_cjs/core/EVM/resolveENSAddress.js.map +1 -0
- package/src/_cjs/core/EVM/resolveEVMAddress.js +11 -0
- package/src/_cjs/core/EVM/resolveEVMAddress.js.map +1 -0
- package/src/_cjs/core/EVM/uns/constants.js +78 -0
- package/src/_cjs/core/EVM/uns/constants.js.map +1 -0
- package/src/_cjs/core/EVM/uns/resolveUNSAddress.js +82 -0
- package/src/_cjs/core/EVM/uns/resolveUNSAddress.js.map +1 -0
- package/src/_cjs/core/Solana/Solana.js +2 -2
- package/src/_cjs/core/Solana/Solana.js.map +1 -1
- package/src/_cjs/core/Solana/resolveSolanaAddress.js +8 -0
- package/src/_cjs/core/Solana/resolveSolanaAddress.js.map +1 -0
- package/src/_cjs/core/Sui/Sui.js +2 -2
- package/src/_cjs/core/Sui/Sui.js.map +1 -1
- package/src/_cjs/core/Sui/resolveSuiAddress.js +8 -0
- package/src/_cjs/core/Sui/resolveSuiAddress.js.map +1 -0
- package/src/_cjs/core/UTXO/UTXO.js +2 -3
- package/src/_cjs/core/UTXO/UTXO.js.map +1 -1
- package/src/_cjs/core/UTXO/UTXOStepExecutor.js +25 -1
- package/src/_cjs/core/UTXO/UTXOStepExecutor.js.map +1 -1
- package/src/_cjs/core/UTXO/resolveUTXOAddress.js +7 -0
- package/src/_cjs/core/UTXO/resolveUTXOAddress.js.map +1 -0
- package/src/_cjs/core/UTXO/utils.js +3 -0
- package/src/_cjs/core/UTXO/utils.js.map +1 -1
- package/src/_cjs/core/prepareRestart.js +1 -1
- package/src/_cjs/core/prepareRestart.js.map +1 -1
- package/src/_cjs/core/waitForDestinationChainTransaction.js +3 -2
- package/src/_cjs/core/waitForDestinationChainTransaction.js.map +1 -1
- package/src/_cjs/index.js.map +1 -1
- package/src/_cjs/version.js +1 -1
- package/src/_cjs/version.js.map +1 -1
- package/src/_esm/core/EVM/EVM.js +2 -2
- package/src/_esm/core/EVM/EVM.js.map +1 -1
- package/src/_esm/core/EVM/EVMStepExecutor.js +28 -24
- package/src/_esm/core/EVM/EVMStepExecutor.js.map +1 -1
- package/src/_esm/core/EVM/publicClient.js +9 -0
- package/src/_esm/core/EVM/publicClient.js.map +1 -1
- package/src/_esm/core/EVM/{getENSAddress.js → resolveENSAddress.js} +2 -2
- package/src/_esm/core/EVM/resolveENSAddress.js.map +1 -0
- package/src/_esm/core/EVM/resolveEVMAddress.js +8 -0
- package/src/_esm/core/EVM/resolveEVMAddress.js.map +1 -0
- package/src/_esm/core/EVM/uns/constants.js +74 -0
- package/src/_esm/core/EVM/uns/constants.js.map +1 -0
- package/src/_esm/core/EVM/uns/resolveUNSAddress.js +80 -0
- package/src/_esm/core/EVM/uns/resolveUNSAddress.js.map +1 -0
- package/src/_esm/core/Solana/Solana.js +2 -2
- package/src/_esm/core/Solana/Solana.js.map +1 -1
- package/src/_esm/core/Solana/resolveSolanaAddress.js +5 -0
- package/src/_esm/core/Solana/resolveSolanaAddress.js.map +1 -0
- package/src/_esm/core/Sui/Sui.js +2 -2
- package/src/_esm/core/Sui/Sui.js.map +1 -1
- package/src/_esm/core/Sui/resolveSuiAddress.js +5 -0
- package/src/_esm/core/Sui/resolveSuiAddress.js.map +1 -0
- package/src/_esm/core/UTXO/UTXO.js +2 -4
- package/src/_esm/core/UTXO/UTXO.js.map +1 -1
- package/src/_esm/core/UTXO/UTXOStepExecutor.js +35 -4
- package/src/_esm/core/UTXO/UTXOStepExecutor.js.map +1 -1
- package/src/_esm/core/UTXO/resolveUTXOAddress.js +5 -0
- package/src/_esm/core/UTXO/resolveUTXOAddress.js.map +1 -0
- package/src/_esm/core/UTXO/utils.js +2 -0
- package/src/_esm/core/UTXO/utils.js.map +1 -1
- package/src/_esm/core/prepareRestart.js +1 -1
- package/src/_esm/core/prepareRestart.js.map +1 -1
- package/src/_esm/core/waitForDestinationChainTransaction.js +5 -2
- package/src/_esm/core/waitForDestinationChainTransaction.js.map +1 -1
- package/src/_esm/index.js.map +1 -1
- package/src/_esm/version.js +1 -1
- package/src/_esm/version.js.map +1 -1
- package/src/_types/core/EVM/EVMStepExecutor.d.ts +3 -5
- package/src/_types/core/EVM/EVMStepExecutor.d.ts.map +1 -1
- package/src/_types/core/EVM/publicClient.d.ts.map +1 -1
- package/src/_types/core/EVM/resolveENSAddress.d.ts +2 -0
- package/src/_types/core/EVM/resolveENSAddress.d.ts.map +1 -0
- package/src/_types/core/EVM/resolveEVMAddress.d.ts +3 -0
- package/src/_types/core/EVM/resolveEVMAddress.d.ts.map +1 -0
- package/src/_types/core/EVM/uns/constants.d.ts +51 -0
- package/src/_types/core/EVM/uns/constants.d.ts.map +1 -0
- package/src/_types/core/EVM/uns/resolveUNSAddress.d.ts +3 -0
- package/src/_types/core/EVM/uns/resolveUNSAddress.d.ts.map +1 -0
- package/src/_types/core/Solana/resolveSolanaAddress.d.ts +2 -0
- package/src/_types/core/Solana/resolveSolanaAddress.d.ts.map +1 -0
- package/src/_types/core/Sui/resolveSuiAddress.d.ts +2 -0
- package/src/_types/core/Sui/resolveSuiAddress.d.ts.map +1 -0
- package/src/_types/core/UTXO/UTXO.d.ts.map +1 -1
- package/src/_types/core/UTXO/UTXOStepExecutor.d.ts.map +1 -1
- package/src/_types/core/UTXO/resolveUTXOAddress.d.ts +2 -0
- package/src/_types/core/UTXO/resolveUTXOAddress.d.ts.map +1 -0
- package/src/_types/core/UTXO/utils.d.ts +1 -0
- package/src/_types/core/UTXO/utils.d.ts.map +1 -1
- package/src/_types/core/prepareRestart.d.ts.map +1 -1
- package/src/_types/core/types.d.ts +4 -3
- package/src/_types/core/types.d.ts.map +1 -1
- package/src/_types/core/waitForDestinationChainTransaction.d.ts.map +1 -1
- package/src/_types/index.d.ts +1 -1
- package/src/_types/index.d.ts.map +1 -1
- package/src/_types/version.d.ts +1 -1
- package/src/_types/version.d.ts.map +1 -1
- package/src/core/EVM/EVM.ts +2 -2
- package/src/core/EVM/EVMStepExecutor.ts +35 -37
- package/src/core/EVM/publicClient.ts +13 -1
- package/src/core/EVM/{getENSAddress.ts → resolveENSAddress.ts} +1 -1
- package/src/core/EVM/resolveEVMAddress.ts +15 -0
- package/src/core/EVM/uns/constants.ts +81 -0
- package/src/core/EVM/uns/resolveUNSAddress.ts +123 -0
- package/src/core/Solana/Solana.ts +2 -2
- package/src/core/Solana/resolveSolanaAddress.ts +7 -0
- package/src/core/Sui/Sui.ts +2 -2
- package/src/core/Sui/resolveSuiAddress.ts +7 -0
- package/src/core/UTXO/UTXO.ts +2 -4
- package/src/core/UTXO/UTXOStepExecutor.ts +48 -4
- package/src/core/UTXO/resolveUTXOAddress.ts +6 -0
- package/src/core/UTXO/utils.ts +4 -0
- package/src/core/prepareRestart.ts +2 -1
- package/src/core/types.ts +9 -2
- package/src/core/waitForDestinationChainTransaction.ts +6 -2
- package/src/index.ts +5 -1
- package/src/version.ts +1 -1
- package/src/_cjs/core/EVM/getENSAddress.js.map +0 -1
- package/src/_esm/core/EVM/getENSAddress.js.map +0 -1
- package/src/_types/core/EVM/getENSAddress.d.ts +0 -2
- package/src/_types/core/EVM/getENSAddress.d.ts.map +0 -1
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { ChainId } from '@lifi/types';
|
|
2
|
+
import { readContract } from 'viem/actions';
|
|
3
|
+
import { namehash } from 'viem/ens';
|
|
4
|
+
import { getAction, trim } from 'viem/utils';
|
|
5
|
+
import { getPublicClient } from '../publicClient.js';
|
|
6
|
+
import { CHAIN_ID_UNS_CHAIN_MAP, CHAIN_TYPE_FAMILY_MAP, CHAIN_TYPE_UNS_CHAIN_MAP, getUNSProxyAddress, UNSProxyReaderABI, } from './constants.js';
|
|
7
|
+
export const resolveUNSAddress = async (name, chainType, chain, token) => {
|
|
8
|
+
try {
|
|
9
|
+
const L1Client = await getPublicClient(ChainId.ETH);
|
|
10
|
+
const L2Client = await getPublicClient(ChainId.POL);
|
|
11
|
+
const nameHash = namehash(name);
|
|
12
|
+
const keys = [];
|
|
13
|
+
// handle token based resolution
|
|
14
|
+
if (chain) {
|
|
15
|
+
const family = CHAIN_TYPE_FAMILY_MAP[chainType];
|
|
16
|
+
const unschain = CHAIN_ID_UNS_CHAIN_MAP[chain];
|
|
17
|
+
if (family) {
|
|
18
|
+
if (token) {
|
|
19
|
+
keys.push(`token.${family}.${unschain}.${token}.address`);
|
|
20
|
+
}
|
|
21
|
+
if (unschain) {
|
|
22
|
+
keys.push(`token.${family}.${unschain}.address`);
|
|
23
|
+
}
|
|
24
|
+
keys.push(`token.${family}.address`);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
// fallback to chain based resolution
|
|
28
|
+
const unschainType = CHAIN_TYPE_UNS_CHAIN_MAP[chainType];
|
|
29
|
+
keys.push(`crypto.${unschainType}.address`);
|
|
30
|
+
for (const key of keys) {
|
|
31
|
+
const address = (await getUnsAddress(L2Client, { name: nameHash, key })) ||
|
|
32
|
+
(await getUnsAddress(L1Client, { name: nameHash, key }));
|
|
33
|
+
if (address) {
|
|
34
|
+
return address;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
return undefined;
|
|
38
|
+
}
|
|
39
|
+
catch {
|
|
40
|
+
return undefined;
|
|
41
|
+
}
|
|
42
|
+
};
|
|
43
|
+
async function getUnsAddress(client, params) {
|
|
44
|
+
const { name, key } = params;
|
|
45
|
+
const chainId = client.chain?.id;
|
|
46
|
+
if (!chainId) {
|
|
47
|
+
throw new Error('Chain ID not available');
|
|
48
|
+
}
|
|
49
|
+
const proxyAddress = getUNSProxyAddress(chainId);
|
|
50
|
+
if (!proxyAddress) {
|
|
51
|
+
throw new Error(`UNS contracts are not deployed on chain ${chainId}`);
|
|
52
|
+
}
|
|
53
|
+
const readContractAction = getAction(client, readContract, 'readContract');
|
|
54
|
+
const existsReadContractParameters = {
|
|
55
|
+
abi: UNSProxyReaderABI,
|
|
56
|
+
address: proxyAddress,
|
|
57
|
+
functionName: 'exists',
|
|
58
|
+
args: [BigInt(name)],
|
|
59
|
+
};
|
|
60
|
+
const exists = await readContractAction(existsReadContractParameters);
|
|
61
|
+
if (!exists) {
|
|
62
|
+
return undefined;
|
|
63
|
+
}
|
|
64
|
+
const readContractParameters = {
|
|
65
|
+
abi: UNSProxyReaderABI,
|
|
66
|
+
address: proxyAddress,
|
|
67
|
+
functionName: 'getData',
|
|
68
|
+
args: [[key], BigInt(name)],
|
|
69
|
+
};
|
|
70
|
+
const res = await readContractAction(readContractParameters);
|
|
71
|
+
const [, , addresses] = res;
|
|
72
|
+
const address = addresses[0];
|
|
73
|
+
if (address === '0x' ||
|
|
74
|
+
address === '' ||
|
|
75
|
+
trim(address) === '0x00') {
|
|
76
|
+
return undefined;
|
|
77
|
+
}
|
|
78
|
+
return address;
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=resolveUNSAddress.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolveUNSAddress.js","sourceRoot":"","sources":["../../../../core/EVM/uns/resolveUNSAddress.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ChainType } from '@lifi/types';
|
|
2
|
-
import { getSNSAddress } from './getSNSAddress.js';
|
|
3
2
|
import { getSolanaBalance } from './getSolanaBalance.js';
|
|
4
3
|
import { isSVMAddress } from './isSVMAddress.js';
|
|
4
|
+
import { resolveSolanaAddress } from './resolveSolanaAddress.js';
|
|
5
5
|
import { SolanaStepExecutor } from './SolanaStepExecutor.js';
|
|
6
6
|
export function Solana(options) {
|
|
7
7
|
const _options = options ?? {};
|
|
@@ -10,7 +10,7 @@ export function Solana(options) {
|
|
|
10
10
|
return ChainType.SVM;
|
|
11
11
|
},
|
|
12
12
|
isAddress: isSVMAddress,
|
|
13
|
-
resolveAddress:
|
|
13
|
+
resolveAddress: resolveSolanaAddress,
|
|
14
14
|
getBalance: getSolanaBalance,
|
|
15
15
|
async getStepExecutor(options) {
|
|
16
16
|
if (!_options.getWalletAdapter) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Solana.js","sourceRoot":"","sources":["../../../core/Solana/Solana.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEvC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"Solana.js","sourceRoot":"","sources":["../../../core/Solana/Solana.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAG5D,MAAM,UAAU,MAAM,CAAC,OAA+B;IACpD,MAAM,QAAQ,GAA0B,OAAO,IAAI,EAAE,CAAA;IACrD,OAAO;QACL,IAAI,IAAI;YACN,OAAO,SAAS,CAAC,GAAG,CAAA;QACtB,CAAC;QACD,SAAS,EAAE,YAAY;QACvB,cAAc,EAAE,oBAAoB;QACpC,UAAU,EAAE,gBAAgB;QAC5B,KAAK,CAAC,eAAe,CACnB,OAA4B;YAE5B,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE,CAAC;gBAC/B,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;YACtD,CAAC;YAED,MAAM,aAAa,GAAG,MAAM,QAAQ,CAAC,gBAAgB,EAAE,CAAA;YAEvD,MAAM,QAAQ,GAAG,IAAI,kBAAkB,CAAC;gBACtC,aAAa;gBACb,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,OAA8B;YACvC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;QAClC,CAAC;KACF,CAAA;AACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolveSolanaAddress.js","sourceRoot":"","sources":["../../../core/Solana/resolveSolanaAddress.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAElD,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,IAAY;IAEZ,OAAO,MAAM,aAAa,CAAC,IAAI,CAAC,CAAA;AAClC,CAAC"}
|
package/src/_esm/core/Sui/Sui.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ChainType } from '@lifi/types';
|
|
2
2
|
import { isValidSuiAddress } from '@mysten/sui/utils';
|
|
3
3
|
import { getSuiBalance } from './getSuiBalance.js';
|
|
4
|
-
import {
|
|
4
|
+
import { resolveSuiAddress } from './resolveSuiAddress.js';
|
|
5
5
|
import { SuiStepExecutor } from './SuiStepExecutor.js';
|
|
6
6
|
export function Sui(options) {
|
|
7
7
|
const _options = options ?? {};
|
|
@@ -10,7 +10,7 @@ export function Sui(options) {
|
|
|
10
10
|
return ChainType.MVM;
|
|
11
11
|
},
|
|
12
12
|
isAddress: isValidSuiAddress,
|
|
13
|
-
resolveAddress:
|
|
13
|
+
resolveAddress: resolveSuiAddress,
|
|
14
14
|
getBalance: getSuiBalance,
|
|
15
15
|
async getStepExecutor(options) {
|
|
16
16
|
if (!_options.getWallet) {
|
|
@@ -1 +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,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,
|
|
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,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,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,iBAAiB;QACjC,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 @@
|
|
|
1
|
+
{"version":3,"file":"resolveSuiAddress.js","sourceRoot":"","sources":["../../../core/Sui/resolveSuiAddress.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAEtD,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,IAAY;IAEZ,OAAO,MAAM,eAAe,CAAC,IAAI,CAAC,CAAA;AACpC,CAAC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { isUTXOAddress } from '@bigmi/core';
|
|
2
2
|
import { ChainType } from '@lifi/types';
|
|
3
3
|
import { getUTXOBalance } from './getUTXOBalance.js';
|
|
4
|
+
import { resolveUTXOAddress } from './resolveUTXOAddress.js';
|
|
4
5
|
import { UTXOStepExecutor } from './UTXOStepExecutor.js';
|
|
5
6
|
export function UTXO(options) {
|
|
6
7
|
const _options = options ?? {};
|
|
@@ -9,10 +10,7 @@ export function UTXO(options) {
|
|
|
9
10
|
return ChainType.UTXO;
|
|
10
11
|
},
|
|
11
12
|
isAddress: isUTXOAddress,
|
|
12
|
-
|
|
13
|
-
// Not supported on UTXO yet
|
|
14
|
-
return name;
|
|
15
|
-
},
|
|
13
|
+
resolveAddress: resolveUTXOAddress,
|
|
16
14
|
getBalance: getUTXOBalance,
|
|
17
15
|
async getStepExecutor(options) {
|
|
18
16
|
if (!_options.getWalletClient) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UTXO.js","sourceRoot":"","sources":["../../../core/UTXO/UTXO.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEvC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"UTXO.js","sourceRoot":"","sources":["../../../core/UTXO/UTXO.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEvC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAE5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AAExD,MAAM,UAAU,IAAI,CAAC,OAA6B;IAChD,MAAM,QAAQ,GAAwB,OAAO,IAAI,EAAE,CAAA;IACnD,OAAO;QACL,IAAI,IAAI;YACN,OAAO,SAAS,CAAC,IAAI,CAAA;QACvB,CAAC;QACD,SAAS,EAAE,aAAa;QACxB,cAAc,EAAE,kBAAkB;QAClC,UAAU,EAAE,cAAc;QAC1B,KAAK,CAAC,eAAe,CACnB,OAA4B;YAE5B,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC;gBAC9B,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;YAC5C,CAAC;YAED,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,eAAe,EAAE,CAAA;YAErD,MAAM,QAAQ,GAAG,IAAI,gBAAgB,CAAC;gBACpC,MAAM,EAAE,YAAY;gBACpB,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,OAA4B;YACrC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;QAClC,CAAC;KACF,CAAA;AACH,CAAC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { signPsbt, waitForTransaction, withTimeout } from '@bigmi/core';
|
|
1
|
+
import { AddressType, getAddressInfo, hexToUnit8Array, signPsbt, waitForTransaction, withTimeout, } from '@bigmi/core';
|
|
2
|
+
import * as ecc from '@bitcoinerlab/secp256k1';
|
|
2
3
|
import { ChainId } from '@lifi/types';
|
|
3
|
-
import { address, networks, Psbt } from 'bitcoinjs-lib';
|
|
4
|
+
import { address, initEccLib, networks, Psbt } from 'bitcoinjs-lib';
|
|
4
5
|
import { config } from '../../config.js';
|
|
5
6
|
import { LiFiErrorCode } from '../../errors/constants.js';
|
|
6
7
|
import { TransactionError } from '../../errors/errors.js';
|
|
@@ -11,7 +12,7 @@ import { stepComparison } from '../stepComparison.js';
|
|
|
11
12
|
import { waitForDestinationChainTransaction } from '../waitForDestinationChainTransaction.js';
|
|
12
13
|
import { getUTXOPublicClient } from './getUTXOPublicClient.js';
|
|
13
14
|
import { parseUTXOErrors } from './parseUTXOErrors.js';
|
|
14
|
-
import { isPsbtFinalized } from './utils.js';
|
|
15
|
+
import { isPsbtFinalized, toXOnly } from './utils.js';
|
|
15
16
|
export class UTXOStepExecutor extends BaseStepExecutor {
|
|
16
17
|
client;
|
|
17
18
|
constructor(options) {
|
|
@@ -88,7 +89,37 @@ export class UTXOStepExecutor extends BaseStepExecutor {
|
|
|
88
89
|
}
|
|
89
90
|
this.checkClient(step);
|
|
90
91
|
const psbtHex = transactionRequest.data;
|
|
92
|
+
// Initialize ECC library required for Taproot operations
|
|
93
|
+
// https://github.com/bitcoinjs/bitcoinjs-lib?tab=readme-ov-file#using-taproot
|
|
94
|
+
initEccLib(ecc);
|
|
91
95
|
const psbt = Psbt.fromHex(psbtHex, { network: networks.bitcoin });
|
|
96
|
+
psbt.data.inputs.forEach((input, index) => {
|
|
97
|
+
const accountAddress = input.witnessUtxo
|
|
98
|
+
? address.fromOutputScript(input.witnessUtxo.script, networks.bitcoin)
|
|
99
|
+
: this.client.account?.address;
|
|
100
|
+
const addressInfo = getAddressInfo(accountAddress);
|
|
101
|
+
if (addressInfo.type === AddressType.p2tr) {
|
|
102
|
+
// Taproot (P2TR) addresses require specific PSBT fields for proper signing
|
|
103
|
+
// tapInternalKey: Required for Taproot key-path spending
|
|
104
|
+
// Most wallets / libraries usually handle this already
|
|
105
|
+
if (!input.tapInternalKey) {
|
|
106
|
+
const pubKey = this.client.account?.publicKey;
|
|
107
|
+
if (pubKey) {
|
|
108
|
+
const tapInternalKey = toXOnly(hexToUnit8Array(pubKey));
|
|
109
|
+
psbt.updateInput(index, {
|
|
110
|
+
tapInternalKey,
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
// sighashType: Required by bitcoinjs-lib even though the bitcoin protocol allows defaults
|
|
115
|
+
// check if sighashType is default (0) or not set (undefined)
|
|
116
|
+
if (!input.sighashType) {
|
|
117
|
+
psbt.updateInput(index, {
|
|
118
|
+
sighashType: 1, // Default to Transaction.SIGHASH_ALL - 1
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
});
|
|
92
123
|
const inputsToSign = Array.from(psbt.data.inputs
|
|
93
124
|
.reduce((map, input, index) => {
|
|
94
125
|
const accountAddress = input.witnessUtxo
|
|
@@ -109,7 +140,7 @@ export class UTXOStepExecutor extends BaseStepExecutor {
|
|
|
109
140
|
.values());
|
|
110
141
|
// We give users 10 minutes to sign the transaction or it should be considered expired
|
|
111
142
|
const signedPsbtHex = await withTimeout(() => signPsbt(this.client, {
|
|
112
|
-
psbt:
|
|
143
|
+
psbt: psbt.toHex(),
|
|
113
144
|
inputsToSign: inputsToSign,
|
|
114
145
|
finalize: false,
|
|
115
146
|
}), {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UTXOStepExecutor.js","sourceRoot":"","sources":["../../../core/UTXO/UTXOStepExecutor.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"UTXOStepExecutor.js","sourceRoot":"","sources":["../../../core/UTXO/UTXOStepExecutor.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolveUTXOAddress.js","sourceRoot":"","sources":["../../../core/UTXO/resolveUTXOAddress.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,IAAY;IAEZ,4BAA4B;IAC5B,OAAO,IAAI,CAAA;AACb,CAAC"}
|
|
@@ -7,4 +7,6 @@ export function isPsbtFinalized(psbt) {
|
|
|
7
7
|
return false;
|
|
8
8
|
}
|
|
9
9
|
}
|
|
10
|
+
// helper function to convert full public key (33 bytes) to x-only compressed format (32 bytes) required after taproot update
|
|
11
|
+
export const toXOnly = (pubKey) => pubKey.length === 32 ? pubKey : pubKey.subarray(1, 33);
|
|
10
12
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../core/UTXO/utils.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,eAAe,CAAC,IAAU;IACxC,IAAI,CAAC;QACH,IAAI,CAAC,kBAAkB,EAAE,CAAA;QACzB,OAAO,IAAI,CAAA;IACb,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../core/UTXO/utils.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,eAAe,CAAC,IAAU;IACxC,IAAI,CAAC;QACH,IAAI,CAAC,kBAAkB,EAAE,CAAA;QACzB,OAAO,IAAI,CAAA;IACb,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC;AAED,6HAA6H;AAC7H,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,MAAkB,EAAE,EAAE,CAC5C,MAAM,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA"}
|
|
@@ -3,7 +3,7 @@ export const prepareRestart = async (route) => {
|
|
|
3
3
|
const step = route.steps[index];
|
|
4
4
|
if (step.execution) {
|
|
5
5
|
// Find the index of the last process that has tx hash
|
|
6
|
-
const lastValidIndex = step.execution.process.findLastIndex((process) => !!process.txHash && process.status !== 'FAILED');
|
|
6
|
+
const lastValidIndex = step.execution.process.findLastIndex((process) => (!!process.txHash || !!process.taskId) && process.status !== 'FAILED');
|
|
7
7
|
// Keep all processes up to the one with tx hash
|
|
8
8
|
if (lastValidIndex >= 0) {
|
|
9
9
|
step.execution.process = step.execution.process.slice(0, lastValidIndex + 1);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prepareRestart.js","sourceRoot":"","sources":["../../core/prepareRestart.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EAAE,KAAoB,EAAE,EAAE;IAC3D,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;QACxD,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAC/B,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,sDAAsD;YACtD,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,aAAa,CACzD,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,KAAK,QAAQ,
|
|
1
|
+
{"version":3,"file":"prepareRestart.js","sourceRoot":"","sources":["../../core/prepareRestart.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EAAE,KAAoB,EAAE,EAAE;IAC3D,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;QACxD,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAC/B,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,sDAAsD;YACtD,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,aAAa,CACzD,CAAC,OAAO,EAAE,EAAE,CACV,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,OAAO,CAAC,MAAM,KAAK,QAAQ,CACxE,CAAA;YAED,gDAAgD;YAChD,IAAI,cAAc,IAAI,CAAC,EAAE,CAAC;gBACxB,IAAI,CAAC,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CACnD,CAAC,EACD,cAAc,GAAG,CAAC,CACnB,CAAA;YACH,CAAC;iBAAM,CAAC;gBACN,gDAAgD;gBAChD,IAAI,CAAC,SAAS,CAAC,OAAO,GAAG,EAAE,CAAA;YAC7B,CAAC;QACH,CAAC;QACD,IAAI,CAAC,kBAAkB,GAAG,SAAS,CAAA;IACrC,CAAC;AACH,CAAC,CAAA"}
|
|
@@ -2,7 +2,9 @@ import { LiFiErrorCode } from '../errors/constants.js';
|
|
|
2
2
|
import { getTransactionFailedMessage } from '../utils/getTransactionMessage.js';
|
|
3
3
|
import { waitForTransactionStatus } from './waitForTransactionStatus.js';
|
|
4
4
|
export async function waitForDestinationChainTransaction(step, process, fromChain, toChain, statusManager, pollingInterval) {
|
|
5
|
-
|
|
5
|
+
// At this point, we should have a txHash or taskId
|
|
6
|
+
// taskId is used for custom integrations that don't use the standard transaction hash
|
|
7
|
+
const transactionHash = process.txHash || process.taskId;
|
|
6
8
|
let processType = process.type;
|
|
7
9
|
try {
|
|
8
10
|
// Wait for the transaction status on the destination chain
|
|
@@ -27,7 +29,8 @@ export async function waitForDestinationChainTransaction(step, process, fromChai
|
|
|
27
29
|
substatus: statusResponse.substatus,
|
|
28
30
|
substatusMessage: statusResponse.substatusMessage,
|
|
29
31
|
txHash: statusReceiving?.txHash,
|
|
30
|
-
txLink:
|
|
32
|
+
txLink: statusReceiving?.txLink ||
|
|
33
|
+
`${toChain.metamask.blockExplorerUrls[0]}tx/${statusReceiving?.txHash}`,
|
|
31
34
|
});
|
|
32
35
|
// Update execution status
|
|
33
36
|
statusManager.updateExecution(step, 'DONE', {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"waitForDestinationChainTransaction.js","sourceRoot":"","sources":["../../core/waitForDestinationChainTransaction.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AACtD,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAA;AAG/E,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAA;AAExE,MAAM,CAAC,KAAK,UAAU,kCAAkC,CACtD,IAAsB,EACtB,OAAgB,EAChB,SAAwB,EACxB,OAAsB,EACtB,aAA4B,EAC5B,eAAwB;IAExB,MAAM,eAAe,GAAG,OAAO,CAAC,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"waitForDestinationChainTransaction.js","sourceRoot":"","sources":["../../core/waitForDestinationChainTransaction.ts"],"names":[],"mappings":"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"}
|
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,kBAAkB,EAAE,MAAM,kCAAkC,CAAA;AACrE,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AACvC,OAAO,EACL,iBAAiB,EACjB,0BAA0B,GAC3B,MAAM,4BAA4B,CAAA;AACnC,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAA;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAA;AACvE,OAAO,EACL,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,4BAA4B,CAAA;AACnC,OAAO,EACL,aAAa,EACb,aAAa,GACd,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,kBAAkB,EAAE,MAAM,kCAAkC,CAAA;AACrE,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AACvC,OAAO,EACL,iBAAiB,EACjB,0BAA0B,GAC3B,MAAM,4BAA4B,CAAA;AACnC,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAA;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAA;AACvE,OAAO,EACL,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,4BAA4B,CAAA;AACnC,OAAO,EACL,aAAa,EACb,aAAa,GACd,MAAM,0BAA0B,CAAA;AAMjC,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAC3C,OAAO,EACL,oBAAoB,EACpB,eAAe,GAChB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EACL,YAAY,EACZ,cAAc,EACd,eAAe,EACf,WAAW,EACX,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,qBAAqB,CAAA;AAC5B,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;AAKhD,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AACvD,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AAEvC,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AA6B3C,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAEjD,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAC9E,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,EACL,SAAS,EACT,cAAc,EACd,qBAAqB,EACrB,oBAAoB,EACpB,QAAQ,EACR,2BAA2B,EAC3B,eAAe,EACf,SAAS,EACT,SAAS,EACT,kBAAkB,EAClB,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,qBAAqB,EACrB,gBAAgB,GACjB,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,mBAAmB,EAAE,MAAM,gCAAgC,CAAA;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAA;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAA"}
|
package/src/_esm/version.js
CHANGED
package/src/_esm/version.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.js","sourceRoot":"","sources":["../version.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,IAAI,GAAG,WAAW,CAAA;AAC/B,MAAM,CAAC,MAAM,OAAO,GAAG,
|
|
1
|
+
{"version":3,"file":"version.js","sourceRoot":"","sources":["../version.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,IAAI,GAAG,WAAW,CAAA;AAC/B,MAAM,CAAC,MAAM,OAAO,GAAG,cAAc,CAAA"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { ExtendedChain } from '@lifi/types';
|
|
2
|
-
import type { Client
|
|
2
|
+
import type { Client } from 'viem';
|
|
3
3
|
import { BaseStepExecutor } from '../BaseStepExecutor.js';
|
|
4
|
-
import type { LiFiStepExtended, Process, StepExecutorOptions
|
|
4
|
+
import type { LiFiStepExtended, Process, StepExecutorOptions } from '../types.js';
|
|
5
5
|
export interface EVMStepExecutorOptions extends StepExecutorOptions {
|
|
6
6
|
client: Client;
|
|
7
7
|
}
|
|
@@ -9,13 +9,11 @@ export declare class EVMStepExecutor extends BaseStepExecutor {
|
|
|
9
9
|
private client;
|
|
10
10
|
constructor(options: EVMStepExecutorOptions);
|
|
11
11
|
checkClient: (step: LiFiStepExtended, process?: Process) => Promise<Client | undefined>;
|
|
12
|
-
waitForTransaction: ({ step, process, fromChain, toChain,
|
|
12
|
+
waitForTransaction: ({ step, process, fromChain, toChain, isBridgeExecution, }: {
|
|
13
13
|
step: LiFiStepExtended;
|
|
14
14
|
process: Process;
|
|
15
15
|
fromChain: ExtendedChain;
|
|
16
16
|
toChain: ExtendedChain;
|
|
17
|
-
txType: TransactionMethodType;
|
|
18
|
-
txHash: Hash;
|
|
19
17
|
isBridgeExecution: boolean;
|
|
20
18
|
}) => Promise<void>;
|
|
21
19
|
private getUpdatedStep;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EVMStepExecutor.d.ts","sourceRoot":"","sources":["../../../core/EVM/EVMStepExecutor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAA6B,MAAM,aAAa,CAAA;AAC3E,OAAO,KAAK,EAEV,MAAM,
|
|
1
|
+
{"version":3,"file":"EVMStepExecutor.d.ts","sourceRoot":"","sources":["../../../core/EVM/EVMStepExecutor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAA6B,MAAM,aAAa,CAAA;AAC3E,OAAO,KAAK,EAEV,MAAM,EAMP,MAAM,MAAM,CAAA;AAkBb,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AAGzD,OAAO,KAAK,EACV,gBAAgB,EAChB,OAAO,EACP,mBAAmB,EAGpB,MAAM,aAAa,CAAA;AAoBpB,MAAM,WAAW,sBAAuB,SAAQ,mBAAmB;IACjE,MAAM,EAAE,MAAM,CAAA;CACf;AAED,qBAAa,eAAgB,SAAQ,gBAAgB;IACnD,OAAO,CAAC,MAAM,CAAQ;gBAEV,OAAO,EAAE,sBAAsB;IAM3C,WAAW,GAAU,MAAM,gBAAgB,EAAE,UAAU,OAAO,iCAoD7D;IAED,kBAAkB,GAAU,2DAMzB;QACD,IAAI,EAAE,gBAAgB,CAAA;QACtB,OAAO,EAAE,OAAO,CAAA;QAChB,SAAS,EAAE,aAAa,CAAA;QACxB,OAAO,EAAE,aAAa,CAAA;QACtB,iBAAiB,EAAE,OAAO,CAAA;KAC3B,mBAmEA;IAED,OAAO,CAAC,cAAc,CAgCrB;IAED,WAAW,GACT,MAAM,gBAAgB,EAEtB,2BAAyB,KACxB,OAAO,CAAC,gBAAgB,CAAC,CA+c3B;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publicClient.d.ts","sourceRoot":"","sources":["../../../core/EVM/publicClient.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"publicClient.d.ts","sourceRoot":"","sources":["../../../core/EVM/publicClient.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAWlC;;;;GAIG;AACH,eAAO,MAAM,eAAe,GAAU,SAAS,MAAM,KAAG,OAAO,CAAC,MAAM,CAwDrE,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolveENSAddress.d.ts","sourceRoot":"","sources":["../../../core/EVM/resolveENSAddress.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,iBAAiB,GAC5B,MAAM,MAAM,KACX,OAAO,CAAC,MAAM,GAAG,SAAS,CAW5B,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolveEVMAddress.d.ts","sourceRoot":"","sources":["../../../core/EVM/resolveEVMAddress.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAKnD,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,OAAO,EACjB,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAK7B"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { ChainId, ChainType } from '@lifi/types';
|
|
2
|
+
import type { Address } from 'viem';
|
|
3
|
+
export declare const UNS_PROXY_READER_ADDRESSES: Record<number, Address>;
|
|
4
|
+
export declare const getUNSProxyAddress: (chainId: number) => Address | undefined;
|
|
5
|
+
export declare const UNSProxyReaderABI: readonly [{
|
|
6
|
+
readonly constant: true;
|
|
7
|
+
readonly inputs: readonly [{
|
|
8
|
+
readonly internalType: "string[]";
|
|
9
|
+
readonly name: "keys";
|
|
10
|
+
readonly type: "string[]";
|
|
11
|
+
}, {
|
|
12
|
+
readonly internalType: "uint256";
|
|
13
|
+
readonly name: "tokenId";
|
|
14
|
+
readonly type: "uint256";
|
|
15
|
+
}];
|
|
16
|
+
readonly name: "getData";
|
|
17
|
+
readonly outputs: readonly [{
|
|
18
|
+
readonly internalType: "address";
|
|
19
|
+
readonly name: "resolver";
|
|
20
|
+
readonly type: "address";
|
|
21
|
+
}, {
|
|
22
|
+
readonly internalType: "address";
|
|
23
|
+
readonly name: "owner";
|
|
24
|
+
readonly type: "address";
|
|
25
|
+
}, {
|
|
26
|
+
readonly internalType: "string[]";
|
|
27
|
+
readonly name: "values";
|
|
28
|
+
readonly type: "string[]";
|
|
29
|
+
}];
|
|
30
|
+
readonly payable: false;
|
|
31
|
+
readonly stateMutability: "view";
|
|
32
|
+
readonly type: "function";
|
|
33
|
+
}, {
|
|
34
|
+
readonly inputs: readonly [{
|
|
35
|
+
readonly internalType: "uint256";
|
|
36
|
+
readonly name: "tokenId";
|
|
37
|
+
readonly type: "uint256";
|
|
38
|
+
}];
|
|
39
|
+
readonly name: "exists";
|
|
40
|
+
readonly outputs: readonly [{
|
|
41
|
+
readonly internalType: "bool";
|
|
42
|
+
readonly name: "";
|
|
43
|
+
readonly type: "bool";
|
|
44
|
+
}];
|
|
45
|
+
readonly stateMutability: "view";
|
|
46
|
+
readonly type: "function";
|
|
47
|
+
}];
|
|
48
|
+
export declare const CHAIN_TYPE_UNS_CHAIN_MAP: Record<ChainType, string>;
|
|
49
|
+
export declare const CHAIN_ID_UNS_CHAIN_MAP: Partial<Record<ChainId, string>>;
|
|
50
|
+
export declare const CHAIN_TYPE_FAMILY_MAP: Record<ChainType, string>;
|
|
51
|
+
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../core/EVM/uns/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAChD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAEnC,eAAO,MAAM,0BAA0B,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAGrD,CAAA;AAEV,eAAO,MAAM,kBAAkB,GAAI,SAAS,MAAM,KAAG,OAAO,GAAG,SAC1B,CAAA;AAErC,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4CpB,CAAA;AAEV,eAAO,MAAM,wBAAwB,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAK9D,CAAA;AAED,eAAO,MAAM,sBAAsB,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,CASnE,CAAA;AAED,eAAO,MAAM,qBAAqB,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAK3D,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolveUNSAddress.d.ts","sourceRoot":"","sources":["../../../../core/EVM/uns/resolveUNSAddress.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,OAAO,EAAE,MAAM,aAAa,CAAA;AAenE,eAAO,MAAM,iBAAiB,GAC5B,MAAM,MAAM,EACZ,WAAW,SAAS,EACpB,QAAQ,OAAO,EACf,QAAQ,OAAO,KACd,OAAO,CAAC,MAAM,GAAG,SAAS,CAyC5B,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolveSolanaAddress.d.ts","sourceRoot":"","sources":["../../../core/Solana/resolveSolanaAddress.ts"],"names":[],"mappings":"AAEA,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAE7B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolveSuiAddress.d.ts","sourceRoot":"","sources":["../../../core/Sui/resolveSuiAddress.ts"],"names":[],"mappings":"AAEA,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAE7B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UTXO.d.ts","sourceRoot":"","sources":["../../../core/UTXO/UTXO.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"UTXO.d.ts","sourceRoot":"","sources":["../../../core/UTXO/UTXO.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAGnE,wBAAgB,IAAI,CAAC,OAAO,CAAC,EAAE,mBAAmB,GAAG,YAAY,CAgChE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UTXOStepExecutor.d.ts","sourceRoot":"","sources":["../../../core/UTXO/UTXOStepExecutor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAqB,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"UTXOStepExecutor.d.ts","sourceRoot":"","sources":["../../../core/UTXO/UTXOStepExecutor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAqB,MAAM,aAAa,CAAA;AAgB5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AAGzD,OAAO,KAAK,EACV,gBAAgB,EAChB,mBAAmB,EAEpB,MAAM,aAAa,CAAA;AAMpB,MAAM,WAAW,uBAAwB,SAAQ,mBAAmB;IAClE,MAAM,EAAE,MAAM,CAAA;CACf;AAED,qBAAa,gBAAiB,SAAQ,gBAAgB;IACpD,OAAO,CAAC,MAAM,CAAQ;gBAEV,OAAO,EAAE,uBAAuB;IAK5C,WAAW,GAAI,MAAM,gBAAgB,UASpC;IAED,WAAW,GAAU,MAAM,gBAAgB,KAAG,OAAO,CAAC,gBAAgB,CAAC,CAiRtE;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolveUTXOAddress.d.ts","sourceRoot":"","sources":["../../../core/UTXO/resolveUTXOAddress.ts"],"names":[],"mappings":"AAAA,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAG7B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../core/UTXO/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,eAAe,CAAA;AAEzC,wBAAgB,eAAe,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAOnD"}
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../core/UTXO/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,eAAe,CAAA;AAEzC,wBAAgB,eAAe,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAOnD;AAGD,eAAO,MAAM,OAAO,GAAI,QAAQ,UAAU,gCACc,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prepareRestart.d.ts","sourceRoot":"","sources":["../../core/prepareRestart.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAE/C,eAAO,MAAM,cAAc,GAAU,OAAO,aAAa,
|
|
1
|
+
{"version":3,"file":"prepareRestart.d.ts","sourceRoot":"","sources":["../../core/prepareRestart.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAE/C,eAAO,MAAM,cAAc,GAAU,OAAO,aAAa,kBAuBxD,CAAA"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import type { ChainType, FeeCost, GasCost, LiFiStep, Route, Step, Substatus, Token, TokenAmount } from '@lifi/types';
|
|
1
|
+
import type { ChainId, ChainType, CoinKey, FeeCost, GasCost, LiFiStep, Route, Step, Substatus, Token, TokenAmount } from '@lifi/types';
|
|
2
2
|
import type { Client } from 'viem';
|
|
3
3
|
export interface SDKProvider {
|
|
4
4
|
readonly type: ChainType;
|
|
5
5
|
isAddress(address: string): boolean;
|
|
6
|
-
resolveAddress(name: string): Promise<string | undefined>;
|
|
6
|
+
resolveAddress(name: string, chainId?: ChainId, token?: CoinKey): Promise<string | undefined>;
|
|
7
7
|
getStepExecutor(options: StepExecutorOptions): Promise<StepExecutor>;
|
|
8
8
|
getBalance(walletAddress: string, tokens: Token[]): Promise<TokenAmount[]>;
|
|
9
9
|
}
|
|
@@ -91,8 +91,9 @@ export type Process = {
|
|
|
91
91
|
substatus?: Substatus;
|
|
92
92
|
chainId?: number;
|
|
93
93
|
txHash?: string;
|
|
94
|
-
|
|
94
|
+
taskId?: string;
|
|
95
95
|
txLink?: string;
|
|
96
|
+
txType?: TransactionMethodType;
|
|
96
97
|
actionRequiredAt?: number;
|
|
97
98
|
doneAt?: number;
|
|
98
99
|
failedAt?: number;
|